@reddb-io/ui 0.3.5 → 0.3.6
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/build/_app/immutable/chunks/1hmJRUuc.js +35 -0
- package/build/_app/immutable/chunks/B1QR04ZE.js +1 -0
- package/build/_app/immutable/chunks/{BVwWA3xx.js → CgeUbXx3.js} +6 -6
- package/build/_app/immutable/chunks/{zWSbcoVP.js → Cznn1SM_.js} +1 -1
- package/build/_app/immutable/chunks/{CqNT6kY9.js → DXJnbMgi.js} +5 -5
- package/build/_app/immutable/chunks/{B0VvmBoI.js → bWMB_8ZZ.js} +1 -1
- package/build/_app/immutable/entry/{app.CaFS7aa2.js → app.CnZytEwL.js} +2 -2
- package/build/_app/immutable/entry/start.Br592ucD.js +1 -0
- package/build/_app/immutable/nodes/{0.BbSvq8nk.js → 0.IUeUbFYR.js} +2 -2
- package/build/_app/immutable/nodes/{1.CRP48TvS.js → 1.ppCNgQoG.js} +1 -1
- package/build/_app/immutable/nodes/{10.CXsR87Il.js → 10.PFTL9me3.js} +1 -1
- package/build/_app/immutable/nodes/{15.C0aUvI2r.js → 15.CveXa_3e.js} +1 -1
- package/build/_app/version.json +1 -1
- package/build/index.html +10 -10
- package/dist/embed/{AnalyticsView-CZV8ntM5.js → AnalyticsView-Bwa627Xe.js} +4 -4
- package/dist/embed/{AnalyticsView-CZV8ntM5.js.map → AnalyticsView-Bwa627Xe.js.map} +1 -1
- package/dist/embed/{RedUiEmbedRoot-Cn7wCgaP.js → RedUiEmbedRoot-DWA6FS7Q.js} +3304 -3284
- package/dist/embed/RedUiEmbedRoot-DWA6FS7Q.js.map +1 -0
- package/dist/embed/{index-BEbHY5Se.js → index-W_9pCMZk.js} +4 -4
- package/dist/embed/{index-BEbHY5Se.js.map → index-W_9pCMZk.js.map} +1 -1
- package/dist/embed/{index-client-DxIHaYUc.js → index-client-CXG6tBhB.js} +2 -2
- package/dist/embed/{index-client-DxIHaYUc.js.map → index-client-CXG6tBhB.js.map} +1 -1
- package/dist/embed/index.js +1 -1
- package/dist/embed/{sigma.esm-BXKPmNCu.js → sigma.esm-BtRwWMN5.js} +2 -2
- package/dist/embed/{sigma.esm-BXKPmNCu.js.map → sigma.esm-BtRwWMN5.js.map} +1 -1
- package/package.json +3 -3
- package/src/lib/ConnectDropdown.svelte +23 -9
- package/src/lib/connections.svelte.ts +41 -16
- package/build/_app/immutable/chunks/BW1DXKuJ.js +0 -1
- package/build/_app/immutable/chunks/Bl--JRJL.js +0 -35
- package/build/_app/immutable/entry/start.CHBGG1k_.js +0 -1
- package/dist/embed/RedUiEmbedRoot-Cn7wCgaP.js.map +0 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./CHvQYbpl.js","./DhEqZVGG.js","./D02PB2u7.js","./
|
|
2
|
-
var Nf=Object.defineProperty;var Ks=t=>{throw TypeError(t)};var Tf=(t,e,n)=>e in t?Nf(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n;var qt=(t,e,n)=>Tf(t,typeof e!="symbol"?e+"":e,n),ui=(t,e,n)=>e.has(t)||Ks("Cannot "+n);var pe=(t,e,n)=>(ui(t,e,"read from private field"),n?n.call(t):e.get(t)),je=(t,e,n)=>e.has(t)?Ks("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(t):e.set(t,n),$n=(t,e,n,a)=>(ui(t,e,"write to private field"),a?a.call(t,n):e.set(t,n),n),js=(t,e,n)=>(ui(t,e,"access private method"),n);import{p as Re,s as st,r as Je,b as ln,c as ba,_ as co}from"./CN4cKZHK.js";import"./Bzak7iHL.js";import{a as vn,o as Zo}from"./Btd6PFkC.js";import{aO as If,aA as Af,b4 as Lf,aF as Dn,aD as Vi,aU as Of,a2 as Pf,aT as Bs,s as Df,br as Hi,bx as Rf,bs as Us,ba as Vf,aK as fi,ac as Ws,e as Hf,bJ as Ff,aR as qf,as as Kf,by as Gs,X as jf,b0 as Ys,a4 as Bf,bG as N,ay as _a,Y as Uf,bd as Wf,aE as $s,f as Gf,az as Yf,aH as $f,q as Xf,aa as Zf,x as Qf,w as Jf,al as ps,bK as on,bf as ev,ad as kc,bk as tv,a8 as rv,bP as Sc,bO as Lt,bi as nv,bj as Xs,at as r,ag as av,b9 as nt,bm as m,aq as ze,b6 as at,bz as me,a6 as c,bw as u,bg as s,bN as y,b8 as jt,b2 as Se,b3 as Zr,bn as hs,av as Qo,bI as Qr,be as Da,aC as ov,am as Cc,ap as Rr,a as Kr,ao as iv}from"./CGFL56WJ.js";import{b as vi,e as _t,a as g,k as x,v as S,h as nr,i as _e,f as sv,r as Fi,t as lv,x as bt,j as Sn,l as Cr}from"./nuKvOE41.js";import{B as cv,i as V}from"./DCJ0QyYH.js";import{j as Pe,k as yr,a as zr,g as Ne,S as no,e as Ve,r as Xt,d as Sr,i as ea,h as Ma,s as ta,c as qi,b as dv,l as Xr,C as bs}from"./BRBZjpE2.js";import{u as uv,n as $e,q as Zs,I as vt,m as fv,X as Ar,h as St,D as Jr,B as tr,a as Ec,t as gr,o as xs,k as Be,d as cn,w as vv,H as gv,v as Mc,i as pv,N as hv,S as Gr,z as xr,g as zc,l as za,e as Jo,f as bv,G as xv,s as mv,T as _v,b as gi,C as yv,L as wv,P as kv,R as Sv,E as Hr,F as Cv,c as Ev,A as Mv,y as zv}from"./Bl--JRJL.js";import"./69_IOA4Y.js";const Nv=[];function Nc(t,e=!1,n=!1){return So(t,new Map,"",Nv,null,n)}function So(t,e,n,a,o=null,i=!1){if(typeof t=="object"&&t!==null){var l=e.get(t);if(l!==void 0)return l;if(t instanceof Map)return new Map(t);if(t instanceof Set)return new Set(t);if(If(t)){var d=Array(t.length);e.set(t,d),o!==null&&e.set(o,d);for(var f=0;f<t.length;f+=1){var v=t[f];f in t&&(d[f]=So(v,e,n,a,null,i))}return d}if(Af(t)===Lf){d={},e.set(t,d),o!==null&&e.set(o,d);for(var p of Object.keys(t))d[p]=So(t[p],e,n,a,null,i);return d}if(t instanceof Date)return structuredClone(t);if(typeof t.toJSON=="function"&&!i)return So(t.toJSON(),e,n,a,t)}if(t instanceof EventTarget)return t;try{return structuredClone(t)}catch{return t}}const Qs=0,Js=1,Tv=2;function Iv(t,e,n,a,o){Dn&&Vi();var i=Of(),l=jf,d=i?Gs(l):Ys(l,!1,!1),f=i?Gs(l):Ys(l,!1,!1),v=new cv(t);Pf(()=>{var p=Ws,b=e(),h=!1;let w=Dn&&Bs(b)===(t.data===Df);if(w&&(Hi(Rf()),Us(!1)),Bs(b)){var k=Bf(),C=!1;const P=Y=>{if(!h){C=!0,k(!1),Ws===p&&p.deactivate(),Hf.ensure();try{Y()}finally{Ff(!1),qf||Kf()}}};b.then(Y=>{P(()=>{fi(d,Y),v.ensure(Js,a&&(O=>a(O,d)))})},Y=>{P(()=>{if(fi(f,Y),v.ensure(Tv,o&&(O=>o(O,f))),!o)throw f.v})}),Dn?v.ensure(Qs,n):Vf(()=>{C||P(()=>{v.ensure(Qs,n)})})}else fi(d,b),v.ensure(Js,a&&(P=>a(P,d)));return w&&Us(!0),()=>{h=!0}})}function Av(t,e,n=!1,a=!1,o=!1,i=!1){var l=t,d="";if(n){var f=t;Dn&&(l=Hi(_a(f)))}N(()=>{var v=Uf;if(d===(d=e()??"")){Dn&&Vi();return}if(n&&!Dn){v.nodes=null,f.innerHTML=d,d!==""&&vi(_a(f),f.lastChild);return}if(v.nodes!==null&&(Wf(v.nodes.start,v.nodes.end),v.nodes=null),d!==""){if(Dn){$s.data;for(var p=Vi(),b=p;p!==null&&(p.nodeType!==Gf||p.data!=="");)b=p,p=Yf(p);if(p===null)throw $f(),Xf;vi($s,b),l=Hi(p);return}var h=a?Qf:o?Jf:void 0,w=Zf(a?"svg":o?"math":"template",h);w.innerHTML=d;var k=a||o?w:w.content;if(vi(_a(k),k.lastChild),a||o)for(;_a(k);)l.before(_a(k));else l.before(k)}})}function Vr(t,e,n){ps(()=>{var a=on(()=>e(t,n==null?void 0:n())||{});if(n&&(a!=null&&a.update)){var o=!1,i={};ev(()=>{var l=n();kc(l),o&&tv(i,l)&&(i=l,a.update(l))}),o=!0}if(a!=null&&a.destroy)return()=>a.destroy()})}var zn,la,Ua,$o,Tc;const Xo=class Xo{constructor(e){je(this,$o);je(this,zn,new WeakMap);je(this,la);je(this,Ua);$n(this,Ua,e)}observe(e,n){var a=pe(this,zn).get(e)||new Set;return a.add(n),pe(this,zn).set(e,a),js(this,$o,Tc).call(this).observe(e,pe(this,Ua)),()=>{var o=pe(this,zn).get(e);o.delete(n),o.size===0&&(pe(this,zn).delete(e),pe(this,la).unobserve(e))}}};zn=new WeakMap,la=new WeakMap,Ua=new WeakMap,$o=new WeakSet,Tc=function(){return pe(this,la)??$n(this,la,new ResizeObserver(e=>{for(var n of e){Xo.entries.set(n.target,n);for(var a of pe(this,zn).get(n.target)||[])a(n)}}))},qt(Xo,"entries",new WeakMap);let Ki=Xo;var Lv=new Ki({box:"border-box"});function el(t,e,n){var a=Lv.observe(t,()=>n(t[e]));ps(()=>(on(()=>n(t[e])),a))}function Ic(t=!1){const e=rv,n=e.l.u;if(!n)return;let a=()=>kc(e.s);if(t){let o=0,i={};const l=av(()=>{let d=!1;const f=e.s;for(const v in f)f[v]!==i[v]&&(i[v]=f[v],d=!0);return d&&o++,o});a=()=>r(l)}n.b.length&&Sc(()=>{tl(e,a),Xs(n.b)}),Lt(()=>{const o=on(()=>n.m.map(nv));return()=>{for(const i of o)typeof i=="function"&&i()}}),n.a.length&&Lt(()=>{tl(e,a),Xs(n.a)})}function tl(t,e){if(t.l.s)for(const n of t.l.s)r(n);e()}var Ov=x('<div><div class="flex items-center gap-2 svelte-1js76h4"><div class="w-2 h-2 rounded-full bg-accent shadow-[0_0_12px_var(--color-accent-glow)] svelte-1js76h4"></div> <span class="font-mono font-semibold text-fg-0 text-[15px] tracking-tight">red<span class="text-primary-text mx-px">·</span>ui</span></div></div>');function Pv(t,e){nt(e,!0);let n=me(!0),a=me(0);vn(()=>{const d=setTimeout(()=>m(a,1),20),f=setTimeout(()=>m(a,2),800),v=setTimeout(()=>{var p;m(n,!1),(p=e.onDone)==null||p.call(e)},1e3);return()=>{clearTimeout(d),clearTimeout(f),clearTimeout(v)}});var o=_t(),i=ze(o);{var l=d=>{var f=Ov();let v,p;N(()=>{v=Pe(f,1,"fixed inset-0 z-[9999] grid place-items-center bg-bg-0 transition-opacity duration-200 ease-out svelte-1js76h4",null,v,{"opacity-0":r(a)===2,"opacity-100":r(a)===1,"pointer-events-none":r(a)===2}),p=yr(f,"",p,{opacity:r(a)===0?0:void 0})}),g(d,f)};V(i,d=>{r(n)&&d(l)})}g(t,o),at()}var Dv=x('<span class="ml-1 text-fg-3"> </span>'),Rv=x('<span class="ml-1 text-danger"> </span>'),Vv=x('<li class="flex items-start gap-2 font-mono text-[12px]" data-testid="loading-step"><span aria-hidden="true"></span> <span class="min-w-0 flex-1"><span> </span> <!> <!></span> <span class="shrink-0 tabular-nums text-fg-3" data-testid="loading-step-elapsed"> </span></li>'),Hv=x('<div class="fixed inset-0 z-[9998] grid place-items-center bg-bg-0/85 backdrop-blur-sm" role="status" aria-live="polite" aria-busy="true" data-testid="loading-overlay"><div class="w-[min(460px,90vw)] rounded-lg border border-line-2 bg-bg-1 p-5 shadow-2xl"><div class="flex items-center justify-between gap-3"><div class="flex items-center gap-2 min-w-0"><span class="h-2 w-2 shrink-0 animate-pulse rounded-full bg-accent shadow-[0_0_12px_var(--color-accent-glow)] motion-reduce:animate-none"></span> <span class="truncate font-mono text-[13px] font-semibold text-fg-0"> </span></div> <span class="shrink-0 rounded bg-bg-2 px-1.5 py-0.5 font-mono text-[12px] tabular-nums text-fg-2" data-testid="loading-elapsed"> </span></div> <ol class="mt-4 max-h-[220px] space-y-1.5 overflow-y-auto" data-testid="loading-steps"></ol></div></div>');function Fv(t,e){nt(e,!0);let n=Re(e,"store",3,uv),a=Re(e,"revealAfterMs",3,400),o=me(!1),i=me(0);Lt(()=>{if(!n().active){m(o,!1);return}m(i,Date.now(),!0);const b=setTimeout(()=>m(o,!0),a()),h=setInterval(()=>m(i,Date.now(),!0),100);return()=>{clearTimeout(b),clearInterval(h)}});const l=y(()=>n().active?n().elapsedMs(r(i)):0);function d(b){return b.durationMs!==null?b.durationMs:Math.max(0,r(i)-b.startedAt)}var f=_t(),v=ze(f);{var p=b=>{var h=Hv(),w=c(h),k=c(w),C=c(k),P=u(c(C),2),Y=c(P,!0);s(P),s(C);var O=u(C,2),Z=c(O,!0);s(O),s(k);var G=u(k,2);$e(G,21,()=>n().steps,T=>T.id,(T,q)=>{var ne=Vv(),oe=c(ne);let Q;var ue=u(oe,2),U=c(ue);let E;var I=c(U,!0);s(U);var _=u(U,2);{var A=ee=>{var L=Dv(),H=c(L,!0);s(L),N(()=>S(H,r(q).detail)),g(ee,L)};V(_,ee=>{r(q).detail&&ee(A)})}var R=u(_,2);{var te=ee=>{var L=Rv(),H=c(L);s(L),N(()=>S(H,`— ${r(q).error??""}`)),g(ee,L)};V(R,ee=>{r(q).error&&ee(te)})}s(ue);var F=u(ue,2),$=c(F,!0);s(F),s(ne),N(ee=>{Q=Pe(oe,1,"mt-[3px] h-1.5 w-1.5 shrink-0 rounded-full",null,Q,{"bg-accent":r(q).status==="active","animate-pulse":r(q).status==="active","motion-reduce:animate-none":r(q).status==="active","bg-ok":r(q).status==="done","bg-danger":r(q).status==="error"}),E=Pe(U,1,"text-fg-1",null,E,{"text-fg-0":r(q).status==="active","text-danger":r(q).status==="error"}),S(I,r(q).label),S($,ee)},[()=>Zs(d(r(q)))]),g(T,ne)}),s(G),s(w),s(h),N(T=>{S(Y,n().label??"Opening connection"),S(Z,T)},[()=>Zs(r(l))]),g(b,h)};V(v,b=>{n().active&&r(o)&&b(p)})}g(t,f),at()}function ms(t){return!!t&&typeof t=="object"&&t.available===!1}function jr(t){if(!(t==null||ms(t)))return t}function qv(t){return ms(t)?t.reason:void 0}function Kv(t,e,n){var i,l,d;const a=jr((i=t==null?void 0:t.deployment)==null?void 0:i.process_role)??jr((l=t==null?void 0:t.replication)==null?void 0:l.role)??(e==null?void 0:e.role);if(a==="primary"||a==="replica")return"replicated";const o=jr((d=t==null?void 0:t.deployment)==null?void 0:d.shape);return o==="serverless"?"serverless":o==="embedded"||o==="file"?"embedded":o==="server"?"server":n==="primary"||n==="replica"?"replicated":n==="embedded"?"embedded":n==="standalone"||n==="server"?"server":"unknown"}function jv(t){const e=t==null?void 0:t.started_at_unix_ms,n=t==null?void 0:t.ready_at_unix_ms;if(e===void 0||n===void 0)return null;const a=n-e;return a>=0?a:null}function Bv(t){const e=t==null?void 0:t.replicas;if(!e||e.length===0)return null;let n=0,a=!1;for(const o of e)typeof o.lag_seconds=="number"&&Number.isFinite(o.lag_seconds)&&(n=Math.max(n,o.lag_seconds),a=!0);return a?n:null}function Uv(t){if(!t)return[];const e=[],n=(a,o,i)=>{if(ms(a)){e.push({path:o,reason:a.reason});return}if(!(i>=4||!a||typeof a!="object"||Array.isArray(a)))for(const[l,d]of Object.entries(a))n(d,o?`${o}.${l}`:l,i+1)};return n(t,"",0),e}const rl=/\[\^(\d+)\]/g;function Wv(t){const e=[],n=[],a=/```[\s\S]*?```|`[^`\n]*`/g;let o;for(;(o=a.exec(t))!==null;)n.push([o.index,o.index+o[0].length]);const i=f=>n.some(([v,p])=>f>=v&&f<p);let l=0,d;for(rl.lastIndex=0;(d=rl.exec(t))!==null;){const f=d.index;f>0&&t[f-1]==="\\"||i(f)||(f>l&&e.push({type:"text",value:t.slice(l,f)}),e.push({type:"cite",marker:Number(d[1])}),l=f+d[0].length)}return l<t.length&&e.push({type:"text",value:t.slice(l)}),e.map(f=>f.type==="text"?{type:"text",value:f.value.replace(/\\([[\]])/g,"$1")}:f)}function Gv(t){const e=/^reddb:([^/]+)\/(.+?)(?:#.*)?$/.exec(t);return e?{collection:e[1],id:e[2]}:null}const Yv=[1e3,2e3,4e3,8e3,3e4];class $v{constructor(e){this.opts=e}subscribe(e={}){return new Xv(this,e)}buildSseUrl(e,n){const a=this.opts.client.baseUrl??"",o=new URLSearchParams;n>0&&o.set("since",String(n)),e&&o.set("collection",e);const i=o.toString();return`${a}/changes/stream${i?`?${i}`:""}`}}class Xv{constructor(e,n){qt(this,"events");qt(this,"controller");qt(this,"closed",!1);qt(this,"lastSeenLsn");qt(this,"currentSse",null);qt(this,"pollTimer",null);qt(this,"reconnectTimer",null);qt(this,"backoffIdx",0);qt(this,"transport",null);this.parent=e,this.opts=n,this.lastSeenLsn=n.sinceLsn??0,this.events=new ReadableStream({start:a=>{this.controller=a},cancel:()=>this.close()}),this.connect()}timers(){return this.parent.opts.timers??{setTimeout:(e,n)=>globalThis.setTimeout(e,n),clearTimeout:e=>globalThis.clearTimeout(e)}}async connect(){if(!this.closed){if(this.transport===null){const e=this.parent.opts.sseFactory;if(e==null)this.transport="rest";else{const n=this.parent.opts.sseProbe??(async()=>!0);let a=!1;try{a=await n()}catch{a=!1}if(this.closed)return;this.transport=a?"sse":"rest"}}this.transport==="sse"?this.startSse():this.startRest()}}startSse(){const e=this.parent.opts.sseFactory;if(!e){this.transport="rest",this.startRest();return}const n=this.parent.buildSseUrl(this.opts.collection,this.lastSeenLsn);let a;try{a=e(n)}catch{this.scheduleReconnect();return}this.currentSse=a,a.onopen=()=>{this.backoffIdx=0},a.onmessage=o=>{try{const i=JSON.parse(o.data);this.emit(i)}catch{}},a.onerror=()=>{if(!this.closed){try{a.close()}catch{}this.currentSse===a&&(this.currentSse=null),this.scheduleReconnect()}}}startRest(){const e=async()=>{if(!this.closed)try{const n=this.opts.collection?await this.parent.opts.client.changes(this.lastSeenLsn,{collection:this.opts.collection}):await this.parent.opts.client.changes(this.lastSeenLsn);if(this.closed)return;for(const o of n)this.emit(o);this.backoffIdx=0;const a=this.parent.opts.pollIntervalMs??1e3;this.pollTimer=this.timers().setTimeout(()=>{this.pollTimer=null,e()},a)}catch{if(this.closed)return;this.scheduleReconnect()}};e()}emit(e){if(!this.closed&&!(e.lsn<=this.lastSeenLsn)){this.lastSeenLsn=e.lsn;try{this.controller.enqueue(e)}catch{this.close()}}}scheduleReconnect(){if(this.closed)return;const e=this.parent.opts.backoffMs??Yv,n=e[Math.min(this.backoffIdx,e.length-1)];this.backoffIdx++,this.reconnectTimer=this.timers().setTimeout(()=>{this.reconnectTimer=null,this.transport==="sse"?this.startSse():this.startRest()},n)}close(){if(this.closed)return;if(this.closed=!0,this.currentSse){try{this.currentSse.close()}catch{}this.currentSse=null}const{clearTimeout:e}=this.timers();this.pollTimer&&(e(this.pollTimer),this.pollTimer=null),this.reconnectTimer&&(e(this.reconnectTimer),this.reconnectTimer=null);try{this.controller.close()}catch{}}}const Ac={name:"copy",size:24,node:[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"}]]};Ac.node;function Zv(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Ac}}))}const Lc={name:"trash",size:24,node:[["path",{d:"M10 11v6"}],["path",{d:"M14 11v6"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"}],["path",{d:"M3 6h18"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"}]],aliases:["trash-2"]};Lc.node;function Ra(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Lc}}))}const Oc={name:"check",size:24,node:[["path",{d:"M20 6 9 17l-5-5"}]]};Oc.node;function Pc(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Oc}}))}var Qv=x(`<div class="grid h-24 place-items-center font-mono text-[12px] text-fg-3">No calls yet — the client hasn't asked the database anything.</div>`),Jv=x('<span class="ml-1 text-fg-3 break-all"> </span>'),eg=x('<span class="ml-1 text-danger break-all"> </span>'),tg=x('<span class="shrink-0 tabular-nums text-fg-3" title="rows returned"> </span>'),rg=x('<li class="group flex items-start gap-2 px-3 py-1.5 font-mono text-[11px] hover:bg-bg-2/40" data-testid="dev-console-entry"><span aria-hidden="true"></span> <span class="w-11 shrink-0 uppercase text-fg-2"> </span> <span class="min-w-0 flex-1"><span class="text-fg-1"> </span> <!> <!></span> <!> <span class="w-12 shrink-0 text-right tabular-nums text-fg-2" title="duration"> </span> <button type="button" title="Copy entry" aria-label="Copy entry" class="shrink-0 rounded p-0.5 text-fg-3 opacity-0 transition-opacity hover:bg-bg-3/60 hover:text-fg-1 group-hover:opacity-100 focus:opacity-100"><!></button></li>'),ng=x('<ul class="divide-y divide-line-1/60"></ul>'),ag=x('<div class="fixed inset-x-0 bottom-0 z-[9990] flex max-h-[45vh] flex-col border-t border-line-2 bg-bg-1 shadow-2xl" role="log" aria-label="Developer console" data-testid="dev-console"><div class="flex items-center justify-between gap-3 border-b border-line-1 bg-bg-2/60 px-3 py-1.5"><div class="flex items-center gap-2 font-mono text-[11px] text-fg-2"><span class="uppercase tracking-wider text-fg-1">Console</span> <span class="text-fg-3" data-testid="dev-console-count"> </span></div> <div class="flex items-center gap-1"><button type="button" title="Clear console" aria-label="Clear console" class="inline-flex items-center gap-1 rounded px-1.5 py-0.5 font-mono text-[11px] text-fg-3 hover:bg-bg-3/60 hover:text-fg-1 transition-colors"><!> Clear</button> <button type="button" title="Close console" aria-label="Close console" class="inline-flex items-center rounded p-0.5 text-fg-3 hover:bg-bg-3/60 hover:text-fg-1 transition-colors"><!></button></div></div> <div class="min-h-0 flex-1 overflow-y-auto"><!></div></div>');function og(t,e){nt(e,!0);let n=Re(e,"store",3,fv),a=Re(e,"open",3,!1),o=me(jt(a())),i=me(jt([])),l=me(null);Lt(()=>n().subscribe(k=>m(i,k,!0))),Lt(()=>{const k=()=>m(o,!r(o));return window.addEventListener("red:toggle-dev-console",k),()=>window.removeEventListener("red:toggle-dev-console",k)});const d=y(()=>[...r(i)].reverse());async function f(k,C){var P;try{await((P=navigator.clipboard)==null?void 0:P.writeText(k)),m(l,C,!0),setTimeout(()=>{r(l)===C&&m(l,null)},1200)}catch{}}function v(k){const P=[`${k.verb} ${k.target} → ${k.ok?k.status??"ok":"error"} · ${k.durationMs}ms${k.rowCount===void 0?"":` · ${k.rowCount} rows`}`];return k.payload&&P.push(k.payload),k.error&&P.push(k.error),P.join(`
|
|
3
|
-
`)}function p(k){return k>=1e3?`${(k/1e3).toFixed(1)}s`:`${k}ms`}var b=_t(),h=ze(b);{var w=k=>{var C=ag(),P=c(C),Y=c(P),O=u(c(Y),2),Z=c(O);s(O),s(Y);var G=u(Y,2),T=c(G),q=c(T);Ra(q,{class:"size-3"}),Se(),s(T);var ne=u(T,2),oe=c(ne);Ar(oe,{class:"size-3.5"}),s(ne),s(G),s(P);var Q=u(P,2),ue=c(Q);{var U=I=>{var _=Qv();g(I,_)},E=I=>{var _=ng();$e(_,21,()=>r(d),A=>A.id,(A,R)=>{var te=rg(),F=c(te);let $;var ee=u(F,2),L=c(ee,!0);s(ee);var H=u(ee,2),j=c(H),le=c(j,!0);s(j);var he=u(j,2);{var ie=be=>{var fe=Jv(),Ce=c(fe,!0);s(fe),N(ke=>S(Ce,ke),[()=>r(R).payload.replace(/\s+/g," ").slice(0,120)]),g(be,fe)};V(he,be=>{r(R).payload&&be(ie)})}var J=u(he,2);{var W=be=>{var fe=eg(),Ce=c(fe);s(fe),N(()=>S(Ce,`— ${r(R).error??""}`)),g(be,fe)};V(J,be=>{r(R).error&&be(W)})}s(H);var X=u(H,2);{var M=be=>{var fe=tg(),Ce=c(fe);s(fe),N(()=>S(Ce,`${r(R).rowCount??""}r`)),g(be,fe)};V(X,be=>{r(R).rowCount!==void 0&&be(M)})}var K=u(X,2),D=c(K,!0);s(K);var z=u(K,2),B=c(z);{var re=be=>{Pc(be,{class:"size-3 text-ok"})},de=be=>{Zv(be,{class:"size-3"})};V(B,be=>{r(l)===r(R).id?be(re):be(de,-1)})}s(z),s(te),N(be=>{$=Pe(F,1,"mt-[5px] h-1.5 w-1.5 shrink-0 rounded-full",null,$,{"bg-ok":r(R).ok,"bg-danger":!r(R).ok}),S(L,r(R).verb),S(le,r(R).target),S(D,be)},[()=>p(r(R).durationMs)]),_e("click",z,()=>f(v(r(R)),r(R).id)),g(A,te)}),s(_),g(I,_)};V(ue,I=>{r(d).length===0?I(U):I(E,-1)})}s(Q),s(C),N(()=>S(Z,`${r(i).length??""} calls`)),_e("click",T,()=>n().clear()),_e("click",ne,()=>m(o,!1)),g(k,C)};V(h,k=>{r(o)&&k(w)})}g(t,b),at()}nr(["click"]);var ig=x('<div class="global-progress" role="progressbar" aria-label="reddb activity" aria-valuetext="Loading"><div class="global-progress__bar"></div></div>');function sg(t,e){nt(e,!1),Ic();var n=_t(),a=ze(n);{var o=i=>{var l=ig();g(i,l)};V(a,i=>{St.active&&i(o)})}g(t,n),at()}var Wa,Ga;class lg{constructor(e,n){je(this,Wa);je(this,Ga);$n(this,Wa,e),$n(this,Ga,sv(n))}get current(){return pe(this,Ga).call(this),pe(this,Wa).call(this)}}Wa=new WeakMap,Ga=new WeakMap;const cg=/\(.+\)/,dg=new Set(["all","print","screen","and","or","not","only"]);class ug extends lg{constructor(e,n){let a=cg.test(e)||e.split(/[\s,]+/).some(i=>dg.has(i.trim()))?e:`(${e})`;const o=window.matchMedia(a);super(()=>o.matches,i=>Fi(o,"change",i))}}const fg=["display","title","heading","body","caption","eyebrow"],Dc={twMergeConfig:{extend:{classGroups:{"font-size":[{text:[...fg,"editable-sm","editable-md","editable-lg"]}]}}}},vg="hover:bg-foreground/8",gg="active:bg-foreground/12",pg="[&[aria-haspopup][aria-expanded=true]]:bg-foreground/10",hg="focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-focus",bg="disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50",xg={muted:"text-ink-muted hover:text-foreground",foreground:"text-foreground",inherit:""},mg={offset:hg,inset:"focus-visible:outline-2 focus-visible:-outline-offset-2 focus-visible:outline-focus"},_g={true:"bg-foreground/10 hover:bg-foreground/10 font-medium text-foreground hover:text-foreground",false:""},_s=Jr({base:["bg-transparent",vg,gg,pg,bg].join(" "),variants:{ink:xg,focus:mg,selected:_g},defaultVariants:{ink:"muted",focus:"offset",selected:!1}},Dc);const nl={tinted:{neutral:"border-transparent bg-muted text-foreground",info:"border-transparent bg-feedback-info-surface text-feedback-info-foreground",success:"border-transparent bg-feedback-success-surface text-feedback-success-foreground",warning:"border-transparent bg-feedback-warning-surface text-feedback-warning-foreground",danger:"border-transparent bg-feedback-danger-surface text-feedback-danger-foreground"},filled:{neutral:"border-transparent bg-foreground text-background",info:"border-transparent bg-feedback-info-foreground text-on-feedback",success:"border-transparent bg-feedback-success-foreground text-on-feedback",warning:"border-transparent bg-feedback-warning-foreground text-on-feedback",danger:"border-transparent bg-feedback-danger-foreground text-on-feedback"},outline:{neutral:"border-muted bg-transparent text-foreground",info:"border-feedback-info-border bg-transparent text-feedback-info-foreground",success:"border-feedback-success-border bg-transparent text-feedback-success-foreground",warning:"border-feedback-warning-border bg-transparent text-feedback-warning-foreground",danger:"border-feedback-danger-border bg-transparent text-feedback-danger-foreground"}},yg="border-transparent bg-primary text-on-primary",wg={neutral:"",info:"",success:"",warning:"",danger:""},kg={tinted:"",filled:"",outline:"",neutral:"",primary:""},Sg=Jr({base:["inline-flex items-center gap-[var(--reddb-spatial-gap-sm)] rounded-md border px-2 py-0.5","text-xs font-medium leading-tight whitespace-nowrap"].join(" "),variants:{tone:wg,variant:kg},compoundVariants:[...Object.entries(nl).flatMap(([t,e])=>Object.entries(e).map(([n,a])=>({variant:t,tone:n,class:a}))),...Object.entries(nl.tinted).map(([t,e])=>({variant:"neutral",tone:t,class:e})),{variant:"primary",class:yg}],defaultVariants:{tone:"neutral",variant:"tinted"}});var Cg=x("<span><!></span>");function Fr(t,e){nt(e,!0);const n=Re(e,"tone",3,"neutral"),a=Re(e,"variant",3,"tinted"),o=Je(e,["$$slots","$$events","$$legacy","tone","variant","class","children"]);Lt(()=>{a(),a()});var i=Cg();zr(i,d=>({...o,class:d,"data-badge":!0,"data-tone":n(),"data-variant":a()}),[()=>Sg({tone:n(),variant:a(),class:e.class})]);var l=c(i);tr(l,()=>e.children),s(i),g(t,i),at()}const Eg=Jr({base:"block h-auto max-w-full",variants:{fit:{cover:"object-cover",contain:"object-contain"},position:{center:"object-center",top:"object-top",bottom:"object-bottom",start:"object-left",end:"object-right"}},defaultVariants:{fit:"cover",position:"center"}});function Mg(t){if(t.decorative){if(t.alt)throw new Error(`Image: a decorative image renders alt="", so its alt ${JSON.stringify(t.alt)} would be dropped; drop decorative or the alt.`)}else if(typeof t.alt!="string"||t.alt.trim()==="")throw new Error('Image: alt is required; pass decorative to mean the image carries no information (alt="").');if(!(Co(t.width)&&Co(t.height))&&!Co(t.ratio))throw new Error("Image: pass width and height (the intrinsic size) or ratio, so the image reserves its box before it loads.")}function Co(t){return typeof t=="number"&&Number.isFinite(t)&&t>0}function zg(t){return Co(t.ratio)?t.ratio:t.width/t.height}var Ng=x("<img/>"),Tg=x("<source/>"),Ig=x('<picture data-image-picture="" class="contents"><!> <!></picture>');function Ag(t,e){nt(e,!0);const n=C=>{var P=Ng();zr(P,Y=>({...f,src:e.src,alt:a()?"":e.alt,width:e.width,height:e.height,srcset:e.srcset,sizes:e.sizes,loading:e.loading??(i()?"eager":"lazy"),decoding:i()?"sync":"async",fetchpriority:i()?"high":void 0,"data-image":!0,"data-image-priority":i()||void 0,class:r(p),[no]:Y}),[()=>({"aspect-ratio":String(r(v))})]),lv(P),g(C,P)},a=Re(e,"decorative",3,!1),o=Re(e,"sources",19,()=>[]),i=Re(e,"priority",3,!1),l=Re(e,"fit",3,"cover"),d=Re(e,"position",3,"center"),f=Je(e,["$$slots","$$events","$$legacy","src","alt","decorative","width","height","ratio","srcset","sizes","sources","priority","loading","fit","position","class"]),v=y(()=>(Mg({alt:e.alt,decorative:a(),width:e.width,height:e.height,ratio:e.ratio}),zg({width:e.width,height:e.height,ratio:e.ratio}))),p=y(()=>Eg({fit:l(),position:d(),class:e.class}));var b=_t(),h=ze(b);{var w=C=>{var P=Ig(),Y=c(P);$e(Y,17,o,Z=>Z.srcset,(Z,G)=>{var T=Tg();N(()=>{Ne(T,"srcset",r(G).srcset),Ne(T,"type",r(G).type),Ne(T,"media",r(G).media),Ne(T,"sizes",r(G).sizes??e.sizes)}),g(Z,T)});var O=u(Y,2);n(O),s(P),g(C,P)},k=C=>{n(C)};V(h,C=>{o().length>0?C(w):C(k,-1)})}g(t,b),at()}const Lg={sm:{spinner:"size-[var(--reddb-spatial-icon-size-sm)]",label:"text-xs"},md:{spinner:"size-[var(--reddb-spatial-icon-size-md)]",label:"text-sm"},lg:{spinner:"size-[var(--reddb-spatial-icon-size-lg)]",label:"text-base"}},Og=Jr({slots:{root:"inline-flex items-center justify-center gap-[var(--reddb-spatial-gap-md)] text-ink-muted",spinner:"motion-safe:animate-spin motion-reduce:animate-pulse text-primary-text",track:"fill-none stroke-current opacity-25 motion-reduce:opacity-50",head:"fill-none stroke-current",label:"leading-tight"},variants:{size:Lg,labelHidden:{true:{label:"sr-only"},false:{label:""}}},defaultVariants:{size:"md",labelHidden:!1}});var Pg=x('<div><svg viewBox="0 0 24 24" aria-hidden="true"><circle cx="12" cy="12" r="9" stroke-width="3"></circle><path d="M21 12a9 9 0 0 0-9-9" stroke-width="3" stroke-linecap="round"></path></svg> <span> </span></div>');function Dg(t,e){nt(e,!0);const n=Re(e,"label",3,"Loading…"),a=Re(e,"size",3,"md"),o=Re(e,"labelHidden",3,!1),i=Je(e,["$$slots","$$events","$$legacy","label","size","labelHidden","class"]),l=y(()=>Og({size:a(),labelHidden:o()}));var d=Pg();zr(d,w=>({...i,"data-loading-indicator":!0,class:w,role:"status","aria-live":"polite","aria-busy":"true"}),[()=>r(l).root({class:e.class})]);var f=c(d),v=c(f),p=u(v);s(f);var b=u(f,2),h=c(b,!0);s(b),s(d),N((w,k,C,P)=>{Pe(f,0,w),Pe(v,0,k),Pe(p,0,C),Pe(b,1,P),S(h,n())},[()=>Ve(r(l).spinner()),()=>Ve(r(l).track()),()=>Ve(r(l).head()),()=>Ve(r(l).label())]),g(t,d),at()}const Rg={outline:{},plain:{root:"border-transparent",header:"border-transparent",footer:"border-transparent"}},Vg={false:{},true:{root:"shadow-elevation-raised"}},Hg={neutral:{root:"bg-elevation-raised-surface text-foreground",header:"text-foreground",title:"text-foreground",description:"text-ink-muted",body:"text-foreground",footer:"text-foreground"},success:{root:"bg-[var(--reddb-color-feedback-success-surface)] text-[var(--reddb-color-feedback-success-foreground)]",header:"text-[var(--reddb-color-feedback-success-foreground)]",title:"text-[var(--reddb-color-feedback-success-foreground)]",description:"text-[var(--reddb-color-feedback-success-foreground)]",body:"text-[var(--reddb-color-feedback-success-foreground)]",footer:"text-[var(--reddb-color-feedback-success-foreground)]"},warning:{root:"bg-[var(--reddb-color-feedback-warning-surface)] text-[var(--reddb-color-feedback-warning-foreground)]",header:"text-[var(--reddb-color-feedback-warning-foreground)]",title:"text-[var(--reddb-color-feedback-warning-foreground)]",description:"text-[var(--reddb-color-feedback-warning-foreground)]",body:"text-[var(--reddb-color-feedback-warning-foreground)]",footer:"text-[var(--reddb-color-feedback-warning-foreground)]"},danger:{root:"bg-[var(--reddb-color-feedback-danger-surface)] text-[var(--reddb-color-feedback-danger-foreground)]",header:"text-[var(--reddb-color-feedback-danger-foreground)]",title:"text-[var(--reddb-color-feedback-danger-foreground)]",description:"text-[var(--reddb-color-feedback-danger-foreground)]",body:"text-[var(--reddb-color-feedback-danger-foreground)]",footer:"text-[var(--reddb-color-feedback-danger-foreground)]"},info:{root:"bg-[var(--reddb-color-feedback-info-surface)] text-[var(--reddb-color-feedback-info-foreground)]",header:"text-[var(--reddb-color-feedback-info-foreground)]",title:"text-[var(--reddb-color-feedback-info-foreground)]",description:"text-[var(--reddb-color-feedback-info-foreground)]",body:"text-[var(--reddb-color-feedback-info-foreground)]",footer:"text-[var(--reddb-color-feedback-info-foreground)]"},brand:{root:"bg-[var(--reddb-color-primary)] text-[var(--reddb-color-on-primary)]",header:"text-[var(--reddb-color-on-primary)]",title:"text-[var(--reddb-color-on-primary)]",description:"text-[var(--reddb-color-on-primary)]",body:"text-[var(--reddb-color-on-primary)]",footer:"text-[var(--reddb-color-on-primary)]"}},Fg={none:{header:"p-0",body:"p-0",footer:"p-0"},sm:{header:"p-[var(--reddb-spatial-inset-sm)]",body:"p-[var(--reddb-spatial-inset-sm)]",footer:"p-[var(--reddb-spatial-inset-sm)]"},md:{header:"p-[var(--reddb-spatial-inset-md)]",body:"p-[var(--reddb-spatial-inset-md)]",footer:"p-[var(--reddb-spatial-inset-md)]"}},qg={start:{footer:"justify-start"},center:{footer:"justify-center"},end:{footer:"justify-end"},between:{footer:"justify-between"}},Kg={vertical:{root:"flex flex-col",layout:"flex min-w-0 flex-1 flex-col",media:"w-full",content:"flex min-w-0 flex-1 flex-col"},horizontal:{root:"",layout:"flex min-w-0 flex-1 flex-col @sm/card:flex-row",content:"flex min-w-0 flex-1 flex-col"}},jg={cover:{media:"[&>*]:object-cover"},contain:{media:"[&>*]:object-contain"}},Bg={center:{media:"[&>*]:object-center"},top:{media:"[&>*]:object-top"},bottom:{media:"[&>*]:object-bottom"},start:{media:"[&>*]:object-left"},end:{media:"[&>*]:object-right"}},Ug={"16/9":{media:"aspect-video [&>*]:h-full"},"4/3":{media:"aspect-[4/3] [&>*]:h-full"},"1/1":{media:"aspect-square [&>*]:h-full"},auto:{media:"aspect-auto [&>*]:h-auto"}},Wg={third:{},"two-fifths":{},half:{},background:{root:"relative isolate",media:"absolute inset-0 size-full",content:"relative z-10"}},Gg=Jr({slots:{root:"@container/card w-full overflow-hidden rounded-lg border",layout:"",media:"relative shrink-0 overflow-hidden [&>*]:block [&>*]:w-full",content:"",header:"flex flex-col gap-[var(--reddb-spatial-gap-sm)] border-b",titleRow:"flex items-center gap-[var(--reddb-spatial-gap-sm)]",icon:"shrink-0",title:"text-base font-medium leading-tight",description:"max-w-prose text-sm",body:"flow-root flex-1 space-y-[var(--reddb-spatial-layout-gap-sm)]",footer:"flex flex-wrap items-center gap-[var(--reddb-spatial-gap-md)] border-t"},variants:{variant:Rg,raised:Vg,tone:Hg,padding:Fg,actionsAlign:qg,orientation:Kg,fit:jg,position:Bg,ratio:Ug,span:Wg},compoundVariants:[{variant:"outline",tone:"neutral",class:{root:"border-muted",header:"border-muted",footer:"border-muted"}},{variant:"outline",tone:"brand",class:{root:"border-[var(--reddb-color-primary)]",header:"border-[var(--reddb-color-primary)]",footer:"border-[var(--reddb-color-primary)]"}},{variant:"outline",tone:"success",class:{root:"border-[var(--reddb-color-feedback-success-border)]",header:"border-[var(--reddb-color-feedback-success-border)]",footer:"border-[var(--reddb-color-feedback-success-border)]"}},{variant:"outline",tone:"warning",class:{root:"border-[var(--reddb-color-feedback-warning-border)]",header:"border-[var(--reddb-color-feedback-warning-border)]",footer:"border-[var(--reddb-color-feedback-warning-border)]"}},{variant:"outline",tone:"danger",class:{root:"border-[var(--reddb-color-feedback-danger-border)]",header:"border-[var(--reddb-color-feedback-danger-border)]",footer:"border-[var(--reddb-color-feedback-danger-border)]"}},{variant:"outline",tone:"info",class:{root:"border-[var(--reddb-color-feedback-info-border)]",header:"border-[var(--reddb-color-feedback-info-border)]",footer:"border-[var(--reddb-color-feedback-info-border)]"}},{raised:!0,tone:"neutral",class:{root:"bg-elevation-raised-surface"}},{raised:!0,variant:"outline",tone:"neutral",class:{root:"border-elevation-raised-border"}},{orientation:"horizontal",span:"third",class:{media:"@sm/card:w-1/3"}},{orientation:"horizontal",span:"two-fifths",class:{media:"@sm/card:w-2/5"}},{orientation:"horizontal",span:"half",class:{media:"@sm/card:w-1/2"}}],defaultVariants:{variant:"outline",raised:!1,tone:"neutral",padding:"md",actionsAlign:"start",orientation:"vertical",fit:"cover",position:"center",ratio:"16/9",span:"two-fifths"}}),Yg={"16/9":16/9,"4/3":4/3,"1/1":1};var $g=x('<p data-card-title=""> </p>'),Xg=x('<div data-card-title-row=""><!> <!></div>'),Zg=x('<p data-card-title=""> </p>'),Qg=x('<p data-card-description=""> </p>'),Jg=x("<!> <!>",1),ep=x('<div data-card-header=""><!></div>'),tp=x('<div data-card-footer=""><!></div>'),rp=x('<!> <div data-card-body=""><!> <!></div> <!>',1),np=x('<span data-background-media-scrim="strong" aria-hidden="true" class="pointer-events-none absolute inset-0 bg-background/80"></span>'),ap=x('<div data-card-media=""><!> <!></div>'),op=x('<!> <div data-card-content=""><!></div>',1),ip=x('<div data-card-layout=""><!> <div data-card-content=""><!></div></div>'),sp=x("<div><!></div>");function En(t,e){nt(e,!0);const n=U=>{var E=rp(),I=ze(E);{var _=L=>{var H=ep(),j=c(H);{var le=ie=>{var J=_t(),W=ze(J);tr(W,()=>e.header),g(ie,J)},he=ie=>{var J=Jg(),W=ze(J);{var X=z=>{var B=Xg(),re=c(B);{let fe=y(()=>r(Z).icon());Ec(re,{get icon(){return e.icon},"aria-hidden":"true",get class(){return r(fe)}})}var de=u(re,2);{var be=fe=>{var Ce=$g(),ke=c(Ce,!0);s(Ce),N(xe=>{Pe(Ce,1,xe),S(ke,e.title)},[()=>Ve(r(Z).title())]),g(fe,Ce)};V(de,fe=>{e.title&&fe(be)})}s(B),N(fe=>Pe(B,1,fe),[()=>Ve(r(Z).titleRow())]),g(z,B)},M=z=>{var B=Zg(),re=c(B,!0);s(B),N(de=>{Pe(B,1,de),S(re,e.title)},[()=>Ve(r(Z).title())]),g(z,B)};V(W,z=>{e.icon?z(X):e.title&&z(M,1)})}var K=u(W,2);{var D=z=>{var B=Qg(),re=c(B,!0);s(B),N(de=>{Pe(B,1,de),S(re,e.description)},[()=>Ve(r(Z).description())]),g(z,B)};V(K,z=>{e.description&&z(D)})}g(ie,J)};V(j,ie=>{e.header?ie(le):ie(he,-1)})}s(H),N(ie=>Pe(H,1,ie),[()=>Ve(r(Z).header())]),g(L,H)};V(I,L=>{r(T)&&L(_)})}var A=u(I,2),R=c(A);{var te=L=>{Dg(L,{get label(){return d()},get labelHidden(){return f()},size:"sm",class:"mb-[var(--reddb-spatial-gap-sm)]","data-card-busy":!0})};V(R,L=>{l()&&L(te)})}var F=u(R,2);tr(F,()=>e.children??Zr),s(A);var $=u(A,2);{var ee=L=>{var H=tp(),j=c(H);tr(j,()=>e.footer),s(H),N(le=>Pe(H,1,le),[()=>Ve(r(Z).footer())]),g(L,H)};V($,L=>{e.footer&&L(ee)})}N(L=>Pe(A,1,L),[()=>Ve(r(Z).body())]),g(U,E)},a=U=>{var E=ap(),I=c(E);{var _=F=>{var $=_t(),ee=ze($);tr(ee,()=>e.media),g(F,$)},A=F=>{{let $=y(()=>e.image.ratio??(C()==="auto"?void 0:Yg[C()]));Ag(F,st(()=>e.image,{get ratio(){return r($)},get fit(){return w()},get position(){return k()},get priority(){return Y()},class:"size-full"}))}};V(I,F=>{e.media?F(_):e.image&&F(A,1)})}var R=u(I,2);{var te=F=>{var $=np();g(F,$)};V(R,F=>{P()==="background"&&F(te)})}s(E),N(F=>{Ne(E,"data-card-media-fit",w()),Ne(E,"data-card-media-position",k()),Ne(E,"data-card-media-ratio",C()),Ne(E,"data-card-media-span",P()),Pe(E,1,F)},[()=>Ve(r(Z).media())]),g(U,E)},o=Re(e,"variant",3,"outline"),i=Re(e,"raised",3,!1),l=Re(e,"busy",3,!1),d=Re(e,"busyLabel",3,"Loading card content"),f=Re(e,"busyLabelHidden",3,!1),v=Re(e,"tone",3,"neutral"),p=Re(e,"padding",3,"md"),b=Re(e,"actionsAlign",3,"start"),h=Re(e,"orientation",3,"vertical"),w=Re(e,"fit",3,"cover"),k=Re(e,"position",3,"center"),C=Re(e,"ratio",3,"16/9"),P=Re(e,"span",3,"two-fifths"),Y=Re(e,"priority",3,!1),O=Je(e,["$$slots","$$events","$$legacy","variant","raised","busy","busyLabel","busyLabelHidden","tone","padding","actionsAlign","orientation","fit","position","ratio","span","title","icon","description","header","media","image","priority","footer","class","children"]),Z=y(()=>Gg({variant:o(),raised:i(),tone:v(),padding:p(),actionsAlign:b(),orientation:h(),fit:w(),position:k(),ratio:C(),span:P()})),G=y(()=>!!(e.media??e.image)),T=y(()=>!!(e.header??e.icon??e.title??e.description));Lt(()=>{v()});var q=sp();zr(q,U=>({...O,"data-card":!0,"data-raised":i()||void 0,"data-tone":v(),"data-card-orientation":h(),"aria-busy":l()||void 0,class:U}),[()=>r(Z).root({class:e.class})]);var ne=c(q);{var oe=U=>{var E=op(),I=ze(E);a(I);var _=u(I,2),A=c(_);n(A),s(_),N(R=>Pe(_,1,R),[()=>Ve(r(Z).content())]),g(U,E)},Q=U=>{var E=ip(),I=c(E);a(I);var _=u(I,2),A=c(_);n(A),s(_),s(E),N((R,te)=>{Pe(E,1,R),Pe(_,1,te)},[()=>Ve(r(Z).layout()),()=>Ve(r(Z).content())]),g(U,E)},ue=U=>{n(U)};V(ne,U=>{r(G)&&P()==="background"?U(oe):r(G)?U(Q,1):U(ue,-1)})}s(q),g(t,q),at()}const lp={sm:"h-4 min-w-4 px-1 text-xs",md:"h-5 min-w-5 px-1.5 text-xs"},al=Jr({base:"inline-flex items-center justify-center rounded-sm border border-muted bg-transparent font-mono leading-tight text-foreground whitespace-nowrap",variants:{size:lp},defaultVariants:{size:"md"}}),cp=Jr({slots:{root:"inline-flex items-center gap-[var(--reddb-spatial-gap-sm)] whitespace-nowrap",separator:"text-ink-muted text-xs"}});var dp=x("<kbd><!></kbd>"),up=x('<span aria-hidden="true"> </span>'),fp=x("<!> <kbd> </kbd>",1),vp=x("<kbd></kbd>");function Br(t,e){nt(e,!0);const n=Re(e,"keys",19,()=>[]),a=Re(e,"separator",3,"+"),o=Re(e,"size",3,"md"),i=Je(e,["$$slots","$$events","$$legacy","keys","separator","size","class","children"]),l=cp();var d=_t(),f=ze(d);{var v=b=>{var h=dp();zr(h,k=>({...i,"data-kbd":!0,class:k}),[()=>al({size:o(),class:e.class})]);var w=c(h);tr(w,()=>e.children),s(h),g(b,h)},p=b=>{var h=vp();zr(h,w=>({...i,"data-kbd":!0,class:w}),[()=>l.root()]),$e(h,21,n,gr,(w,k,C)=>{var P=fp(),Y=ze(P);{var O=T=>{var q=up(),ne=c(q,!0);s(q),N(oe=>{Pe(q,1,oe),S(ne,a())},[()=>Ve(l.separator())]),g(T,q)};V(Y,T=>{C>0&&T(O)})}var Z=u(Y,2),G=c(Z,!0);s(Z),N(T=>{Pe(Z,1,T),S(G,r(k))},[()=>Ve(al({size:o(),class:e.class}))]),g(w,P)}),s(h),g(b,h)};V(f,b=>{e.children?b(v):b(p,-1)})}g(t,d),at()}const gp={sm:{title:"text-base font-medium leading-tight"},md:{title:"text-lg font-medium leading-tight"},lg:{title:"text-2xl font-medium leading-tight"},display:{title:"text-display",description:"text-lg"}},pp={true:{root:"border-b border-muted pb-[var(--reddb-spatial-inset-sm)]"},false:{root:"border-b border-transparent pb-0"}},hp=Jr({slots:{root:"@container/section-heading flex flex-wrap items-end justify-between gap-[var(--reddb-spatial-gap-lg)]",text:"flex flex-col gap-[var(--reddb-spatial-gap-sm)]",title:"text-foreground",description:"max-w-prose text-sm text-ink-muted",actions:"flex flex-wrap items-center gap-[var(--reddb-spatial-gap-md)]"},variants:{size:gp,rule:pp},defaultVariants:{size:"md",rule:!0}},Dc);var bp=x('<p data-section-heading-description=""> </p>'),xp=x("<div><!></div>"),mp=x("<div><div><!> <!></div> <!></div>");function _p(t,e){nt(e,!0);const n=Re(e,"level",3,2),a=Re(e,"size",3,"md"),o=Re(e,"rule",3,!0),i=Je(e,["$$slots","$$events","$$legacy","title","description","titleId","level","size","rule","actions","class"]),l=y(()=>hp({size:a(),rule:o()}));var d=mp();zr(d,k=>({...i,"data-section-heading":!0,class:k}),[()=>r(l).root({class:e.class})]);var f=c(d),v=c(f);xs(v,()=>`h${n()}`,!1,(k,C)=>{zr(k,Y=>({id:e.titleId,"data-section-heading-title":!0,class:Y}),[()=>r(l).title()]);var P=bt();N(()=>S(P,e.title)),g(C,P)});var p=u(v,2);{var b=k=>{var C=bp(),P=c(C,!0);s(C),N(Y=>{Pe(C,1,Y),S(P,e.description)},[()=>Ve(r(l).description())]),g(k,C)};V(p,k=>{e.description&&k(b)})}s(f);var h=u(f,2);{var w=k=>{var C=xp(),P=c(C);tr(P,()=>e.actions),s(C),N(Y=>Pe(C,1,Y),[()=>Ve(r(l).actions())]),g(k,C)};V(h,k=>{e.actions&&k(w)})}s(d),N(k=>Pe(f,1,k),[()=>Ve(r(l).text())]),g(t,d),at()}const Rc={name:"zap",size:24,node:[["path",{d:"M15.914 4a1.5 1.5 0 00-2.474-1.561l-9 9A1.5 1.5 0 005.5 14h4.002a.5.5 0 01.471.666L8.086 20a1.5 1.5 0 002.475 1.56l9-9A1.5 1.5 0 0018.5 10h-3.997a.5.5 0 01-.472-.667z"}]]};Rc.node;function yp(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Rc}}))}const Vc={name:"circle-alert",size:24,node:[["circle",{cx:"12",cy:"12",r:"10"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16"}]],aliases:["alert-circle"]};Vc.node;function ra(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Vc}}))}const Hc={name:"circle-check",size:24,node:[["circle",{cx:"12",cy:"12",r:"10"}],["path",{d:"m16 9-5.5 5.5L8 12"}]],aliases:["check-circle-2"]};Hc.node;function ys(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Hc}}))}const Fc={name:"clock",size:24,node:[["circle",{cx:"12",cy:"12",r:"10"}],["path",{d:"M12 6v6l4 2"}]]};Fc.node;function wp(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Fc}}))}const qc={name:"plug",size:24,node:[["path",{d:"M12 22v-5"}],["path",{d:"M15 8V2"}],["path",{d:"M17 8a1 1 0 0 1 1 1v4a4 4 0 0 1-4 4h-4a4 4 0 0 1-4-4V9a1 1 0 0 1 1-1z"}],["path",{d:"M9 8V2"}]]};qc.node;function Kc(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return qc}}))}const jc={name:"chevron-down",size:24,node:[["path",{d:"m6 9 6 6 6-6"}]]};jc.node;function kp(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return jc}}))}const Bc={name:"folder-open",size:24,node:[["path",{d:"m6 14 1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2"}]]};Bc.node;function Sp(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Bc}}))}var Cp=x("<!> Connecting…",1),Ep=x("<!> Connect",1),Mp=x('<!> <span class="text-ok"> </span>',1),zp=x('<!> <span class="text-danger break-words"> </span>',1),Np=x('<button type="button" title="Open a local .rdb database file" class="mt-1 w-full h-9 bg-bg-2 border border-line-2 text-fg-1 font-medium rounded-md cursor-pointer transition-colors hover:border-line-3 hover:text-fg-0 disabled:opacity-40 disabled:cursor-not-allowed flex items-center justify-center gap-2 text-[13px]"><!> Open database file…</button>'),Tp=x("<span> </span>"),Ip=x('<div class="group flex items-center gap-1 rounded hover:bg-bg-2 transition-colors"><button type="button" class="flex-1 flex items-center justify-between gap-3 px-2 py-1.5 text-left cursor-pointer bg-transparent border-0 disabled:cursor-not-allowed disabled:opacity-50 min-w-0"><code class="font-mono text-[11px] text-fg-1 truncate"> </code> <span class="font-mono text-[10px] text-fg-3 shrink-0 flex items-center gap-1.5"><!> <span> </span></span></button> <button type="button" title="Remove from history" class="opacity-0 group-hover:opacity-100 p-1 mr-0.5 text-fg-3 hover:text-danger transition-all cursor-pointer bg-transparent border-0"><!></button></div>'),Ap=x('<div class="mt-3 pt-3 border-t border-line-1"><div class="flex items-center gap-1.5 mb-2"><!> <span class="type-label">Recent</span></div> <div class="grid gap-0.5 max-h-[180px] overflow-y-auto"></div></div>'),Lp=x('<div class="fixed inset-0 z-40" role="presentation"></div> <div class="absolute top-[calc(100%+6px)] left-0 z-50 w-[380px] max-w-[calc(100vw-2rem)] bg-bg-1 border border-line-2 rounded-lg shadow-2xl p-4" role="dialog" aria-label="Connect to reddb"><form><label for="connect-url" class="type-label block mb-1.5">Instance URL</label> <input id="connect-url" spellcheck="false" placeholder="red://localhost" class="w-full h-9 px-3 mb-1 bg-bg-0 border border-line-2 rounded-md font-mono text-[13px] text-fg-0 outline-none transition-colors focus:border-accent placeholder:text-fg-3"/> <div class="mb-2 text-[10px] font-mono text-fg-3"> </div> <details class="mb-3"><summary class="cursor-pointer text-xs text-fg-2">Sign in to the database</summary> <div class="grid gap-2 mt-2"><label class="text-xs text-fg-2" for="connect-username">Username</label> <input id="connect-username" autocomplete="username" class="w-full h-9 px-3 bg-bg-0 border border-line-2 rounded-md text-fg-0 outline-none focus:border-accent"/> <label class="text-xs text-fg-2" for="connect-password">Password</label> <input id="connect-password" type="password" autocomplete="current-password" class="w-full h-9 px-3 bg-bg-0 border border-line-2 rounded-md text-fg-0 outline-none focus:border-accent"/> <p class="text-[11px] text-fg-3">Credentials go directly to this database. The session stays in this tab.</p></div></details> <button type="submit" class="w-full h-9 bg-primary text-on-primary font-medium rounded-md cursor-pointer transition-colors hover:bg-primary-active disabled:opacity-40 disabled:cursor-not-allowed flex items-center justify-center gap-2 text-[13px]"><!></button> <div aria-live="polite" class="min-h-5 mt-2 flex items-center gap-1.5 text-[11px] font-mono"><!></div></form> <!> <!></div>',1),Op=x('<div class="relative"><button type="button" aria-haspopup="dialog" class="inline-flex items-center gap-2 h-7 pl-2 pr-1.5 bg-bg-2 border border-line-2 rounded-md text-fg-1 cursor-pointer text-xs transition-colors hover:border-line-3 hover:text-fg-0"><span></span> <!> <span class="font-mono"> </span> <span class="font-mono text-[10px] text-fg-3"> </span> <!></button> <!></div>');function Pp(t,e){nt(e,!0);const n="red://localhost";function a(){var L,H;return(L=Be.history[0])!=null&&L.url?Be.history[0].url:(H=Be.history[0])!=null&&H.label?Be.history[0].label:Be.active.url?Be.active.url:n}let o=me(!1),i=me(jt(a())),l=me(""),d=me(""),f=me("idle"),v=me(null),p=me(null),b=me(void 0),h=me(void 0);async function w(L,H=!1){const j=L.trim().replace(/\/$/,"");if(!j)return;if(m(i,j,!0),!Be.canReach(j)){m(f,"error"),m(v,gv(j)??`This app can't reach that transport here — supported: ${r(q)}`,!0);return}m(f,"probing"),m(v,null),m(p,null);const le=Mc(j),he=r(d);m(d,""),(H?await Be.login(le,r(l).trim(),he):await Be.tryConnect(le))?(m(f,"ok"),m(p,Be.probe.rtt_ms??null,!0),setTimeout(()=>m(o,!1),350)):(m(f,"error"),m(v,Be.probe.error??"unreachable",!0))}function k(L){L.preventDefault(),w(r(i),!!(r(l).trim()&&r(d)))}async function C(){m(f,"probing"),m(v,null),m(p,null);const L=await vv();L.ok?(m(f,"ok"),m(p,Be.probe.rtt_ms??null,!0),m(i,Be.active.url,!0),setTimeout(()=>m(o,!1),350)):L.cancelled?m(f,"idle"):(m(f,"error"),m(v,L.reason??"unreachable",!0))}function P(L){const H=Date.now()-L;return H<6e4?"just now":H<36e5?`${Math.round(H/6e4)}m ago`:H<864e5?`${Math.round(H/36e5)}h ago`:`${Math.round(H/864e5)}d ago`}function Y(L,H){L.stopPropagation(),Be.forgetById(H)}function O(){m(o,!r(o)),r(o)&&setTimeout(()=>{var L;return(L=r(h))==null?void 0:L.focus()},0)}vn(()=>{const L=()=>{m(o,!0),setTimeout(()=>{var H;return(H=r(h))==null?void 0:H.focus()},0)};return window.addEventListener("red:open-connect",L),()=>window.removeEventListener("red:open-connect",L)}),Lt(()=>{!Be.connected&&Be.probe.error&&(m(i,Be.active.url,!0),m(v,Be.probe.error,!0),m(f,"error"),m(o,!0))});const Z=y(()=>Be.connected?"bg-ok":r(f)==="error"?"bg-danger":"bg-fg-3"),G=y(()=>Be.connected?Be.active.label:"Connect"),T=y(()=>Be.connected&&Be.probe.rtt_ms!==void 0?`${Be.probe.rtt_ms}ms`:Be.connected?"live":"no connection"),q=y(()=>{const L=Be.supportedTransports,H=[];return(L.includes("http")||L.includes("https"))&&H.push("http(s)://"),L.includes("unix")&&H.push("file://"),H.join(" · ")}),ne=y(()=>Be.history.filter(L=>!L.url||Be.canReach(L.url))),oe=y(()=>Be.supportedTransports.includes("unix"));var Q=Op(),ue=c(Q),U=c(ue),E=u(U,2);{var I=L=>{Kc(L,{class:"size-3 text-fg-3"})};V(E,L=>{Be.connected||L(I)})}var _=u(E,2),A=c(_,!0);s(_);var R=u(_,2),te=c(R,!0);s(R);var F=u(R,2);kp(F,{class:"size-3 text-fg-3"}),s(ue);var $=u(ue,2);{var ee=L=>{var H=Lp(),j=ze(H),le=u(j,2),he=c(le),ie=u(c(he),2);Xt(ie),ln(ie,se=>m(h,se),()=>r(h));var J=u(ie,2),W=c(J);s(J);var X=u(J,2),M=u(c(X),2),K=u(c(M),2);Xt(K);var D=u(K,4);Xt(D),Se(2),s(M),s(X);var z=u(X,2),B=c(z);{var re=se=>{var ve=Cp(),Ae=ze(ve);cn(Ae,{class:"size-3.5 animate-spin"}),Se(),g(se,ve)},de=se=>{var ve=Ep(),Ae=ze(ve);yp(Ae,{class:"size-3.5"}),Se(),g(se,ve)};V(B,se=>{r(f)==="probing"?se(re):se(de,-1)})}s(z);var be=u(z,2),fe=c(be);{var Ce=se=>{var ve=Mp(),Ae=ze(ve);ys(Ae,{class:"size-3 text-ok"});var Le=u(Ae,2),we=c(Le);s(Le),N(()=>S(we,`Connected${r(p)!==null?` · ${r(p)}ms`:""}`)),g(se,ve)},ke=se=>{var ve=zp(),Ae=ze(ve);ra(Ae,{class:"size-3 text-danger"});var Le=u(Ae,2),we=c(Le,!0);s(Le),N(()=>S(we,r(v))),g(se,ve)};V(fe,se=>{r(f)==="ok"?se(Ce):r(f)==="error"&&se(ke,1)})}s(be),s(he);var xe=u(he,2);{var ge=se=>{var ve=Np(),Ae=c(ve);Sp(Ae,{class:"size-3.5 text-fg-3"}),Se(),s(ve),N(()=>ve.disabled=r(f)==="probing"),_e("click",ve,C),g(se,ve)};V(xe,se=>{r(oe)&&se(ge)})}var De=u(xe,2);{var ce=se=>{var ve=Ap(),Ae=c(ve),Le=c(Ae);wp(Le,{class:"size-3 text-fg-3"}),Se(2),s(Ae);var we=u(Ae,2);$e(we,21,()=>r(ne),gr,(Ie,Ee)=>{var Me=Ip(),Te=c(Me),Xe=c(Te),Fe=c(Xe,!0);s(Xe);var Qe=u(Xe,2),lt=c(Qe);{var ct=ae=>{var tt=Tp(),Ze=c(tt);s(tt),N(()=>S(Ze,`${r(Ee).rtt_ms??""}ms`)),g(ae,tt)};V(lt,ae=>{r(Ee).rtt_ms!==void 0&&ae(ct)})}var Ke=u(lt,2),He=c(Ke,!0);s(Ke),s(Qe),s(Te);var Ue=u(Te,2),ot=c(Ue);Ar(ot,{class:"size-3"}),s(Ue),s(Me),N(ae=>{Te.disabled=r(f)==="probing",Ne(Te,"title",r(Ee).url?void 0:"Enter credentials to reconnect"),S(Fe,r(Ee).url??r(Ee).label),S(He,ae)},[()=>P(r(Ee).last_used)]),_e("click",Te,()=>{r(Ee).url?w(r(Ee).url):(m(i,r(Ee).label,!0),setTimeout(()=>{var ae;return(ae=r(h))==null?void 0:ae.focus()},0))}),_e("click",Ue,ae=>Y(ae,r(Ee).id)),g(Ie,Me)}),s(we),s(ve),g(se,ve)};V(De,se=>{r(ne).length>0&&se(ce)})}s(le),ln(le,se=>m(b,se),()=>r(b)),N(se=>{ie.disabled=r(f)==="probing",S(W,`reachable here: ${r(q)??""}`),K.disabled=r(f)==="probing",D.disabled=r(f)==="probing",z.disabled=se},[()=>r(f)==="probing"||!r(i).trim()||!!r(l).trim()!=!!r(d)]),_e("click",j,()=>m(o,!1)),Sn("submit",he,k),_e("input",ie,()=>{m(d,"")}),Sr(ie,()=>r(i),se=>m(i,se)),Sr(K,()=>r(l),se=>m(l,se)),Sr(D,()=>r(d),se=>m(d,se)),g(L,H)};V($,L=>{r(o)&&L(ee)})}s(Q),N(L=>{Ne(ue,"aria-expanded",r(o)),Ne(ue,"title",Be.connected?"Switch connection":"Connect to reddb"),Pe(U,1,L),S(A,r(G)),S(te,r(T))},[()=>Ve(["w-1.5 h-1.5 rounded-full shrink-0",r(Z)].join(" "))]),_e("click",ue,O),g(t,Q),at()}nr(["click","input"]);const Uc={name:"activity",size:24,node:[["path",{d:"M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2"}]]};Uc.node;function Va(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Uc}}))}var Dp=x("<!> <span> </span>",1),Rp=x('<!> <span class="text-fg-3">idle</span>',1),Vp=x('<button type="button" title="Force-clear the in-flight counter (use when a request hangs)" class="px-1.5 py-0.5 rounded border border-line-1 text-fg-3 hover:text-fg-1 hover:border-line-2 cursor-pointer text-[10px]">reset</button>'),Hp=x('<div class="px-3 py-3 text-fg-3">No activity yet.</div>'),Fp=x('<div class="text-danger text-[10px] truncate"> </div>'),qp=x('<div class="px-3 py-1.5 border-b border-line-1/50 last:border-0 grid grid-cols-[16px_1fr_auto] items-center gap-2"><span aria-hidden="true"><!></span> <div class="min-w-0"><div class="text-fg-1 truncate"> </div> <!></div> <div class="text-fg-3 text-[10px] tabular-nums whitespace-nowrap"><!></div></div>'),Kp=x('<div class="fixed inset-0 z-40" role="presentation"></div> <div role="dialog" aria-label="Activity log" class="absolute top-[calc(100%+6px)] right-0 z-50 w-[360px] bg-bg-1 border border-line-2 rounded-lg shadow-2xl text-[11px] font-mono"><header class="flex items-center justify-between px-3 py-2 border-b border-line-1"><span class="type-label">Recent reddb requests</span> <div class="flex items-center gap-2"><span class="text-fg-3"> </span> <!></div></header> <div class="max-h-[320px] overflow-y-auto py-1"><!></div></div>',1),jp=x('<div class="relative"><button type="button" title="reddb activity"><!></button> <!></div>');function Bp(t,e){nt(e,!0);let n=me(!1);function a(h){return h===null?"…":h<1e3?`${h}ms`:`${(h/1e3).toFixed(1)}s`}function o(h){const w=Date.now()-h;return w<1e3?"just now":w<6e4?`${Math.round(w/1e3)}s ago`:`${Math.round(w/6e4)}m ago`}var i=jp(),l=c(i),d=c(l);{var f=h=>{var w=Dp(),k=ze(w);cn(k,{class:"size-3.5 animate-spin"});var C=u(k,2),P=c(C,!0);s(C),N(()=>S(P,St.inflight)),g(h,w)},v=h=>{var w=Rp(),k=ze(w);Va(k,{class:"size-3.5"}),Se(2),g(h,w)};V(d,h=>{St.inflight>0?h(f):h(v,-1)})}s(l);var p=u(l,2);{var b=h=>{var w=Kp(),k=ze(w),C=u(k,2),P=c(C),Y=u(c(P),2),O=c(Y),Z=c(O);s(O);var G=u(O,2);{var T=ue=>{var U=Vp();_e("click",U,()=>St.reset()),g(ue,U)};V(G,ue=>{St.inflight>0&&ue(T)})}s(Y),s(P);var q=u(P,2),ne=c(q);{var oe=ue=>{var U=Hp();g(ue,U)},Q=ue=>{var U=_t(),E=ze(U);$e(E,17,()=>St.log,I=>I.id,(I,_)=>{var A=qp(),R=c(A),te=c(R);{var F=M=>{cn(M,{class:"size-3 animate-spin text-primary-text"})},$=M=>{ys(M,{class:"size-3 text-ok"})},ee=M=>{ra(M,{class:"size-3 text-danger"})};V(te,M=>{r(_).status==="pending"?M(F):r(_).status==="ok"?M($,1):M(ee,-1)})}s(R);var L=u(R,2),H=c(L),j=c(H,!0);s(H);var le=u(H,2);{var he=M=>{var K=Fp(),D=c(K,!0);s(K),N(()=>S(D,r(_).error)),g(M,K)};V(le,M=>{r(_).status==="error"&&r(_).error&&M(he)})}s(L);var ie=u(L,2),J=c(ie);{var W=M=>{var K=bt();N(D=>S(K,D),[()=>o(r(_).startedAt)]),g(M,K)},X=M=>{var K=bt();N(D=>S(K,D),[()=>a(r(_).durationMs)]),g(M,K)};V(J,M=>{r(_).status==="pending"?M(W):M(X,-1)})}s(ie),s(A),N(()=>S(j,r(_).label)),g(I,A)}),g(ue,U)};V(ne,ue=>{St.log.length===0?ue(oe):ue(Q,-1)})}s(q),s(C),N(()=>S(Z,`${St.inflight??""} active`)),_e("click",k,()=>m(n,!1)),g(h,w)};V(p,h=>{r(n)&&h(b)})}s(i),N(h=>{Ne(l,"aria-pressed",r(n)),Pe(l,1,h)},[()=>Ve(["inline-flex items-center gap-1.5 h-7 px-2 rounded-md border text-xs font-mono transition-colors cursor-pointer",St.inflight>0?"border-accent/40 bg-accent/10 text-primary-text":"border-line-2 bg-bg-2 text-fg-3 hover:text-fg-1"].join(" "))]),_e("click",l,()=>m(n,!r(n))),g(t,i),at()}nr(["click"]);const Wc={name:"sun",size:24,node:[["circle",{cx:"12",cy:"12",r:"4"}],["path",{d:"M12 2v2"}],["path",{d:"M12 20v2"}],["path",{d:"m4.93 4.93 1.41 1.41"}],["path",{d:"m17.66 17.66 1.41 1.41"}],["path",{d:"M2 12h2"}],["path",{d:"M20 12h2"}],["path",{d:"m6.34 17.66-1.41 1.41"}],["path",{d:"m19.07 4.93-1.41 1.41"}]]};Wc.node;function Up(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Wc}}))}const Gc={name:"moon",size:24,node:[["path",{d:"M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401"}]]};Gc.node;function Wp(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Gc}}))}const Yc={name:"database",size:24,node:[["ellipse",{cx:"12",cy:"5",rx:"9",ry:"3"}],["path",{d:"M3 5V19A9 3 0 0 0 21 19V5"}],["path",{d:"M3 12A9 3 0 0 0 21 12"}]]};Yc.node;function Po(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Yc}}))}const $c={name:"file-code-corner",size:24,node:[["path",{d:"M4 12.15V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.706.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2h-3.35"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5"}],["path",{d:"m5 16-3 3 3 3"}],["path",{d:"m9 22 3-3-3-3"}]],aliases:["file-code-2"]};$c.node;function Xc(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return $c}}))}const Zc={name:"shield",size:24,node:[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"}]]};Zc.node;function Gp(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Zc}}))}const Qc={name:"settings-2",size:24,node:[["path",{d:"M14 17H5"}],["path",{d:"M19 7h-9"}],["circle",{cx:"17",cy:"17",r:"3"}],["circle",{cx:"7",cy:"7",r:"3"}]]};Qc.node;function ji(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Qc}}))}const Jc={name:"chart-line",size:24,node:[["path",{d:"M3 3v16a2 2 0 0 0 2 2h16"}],["path",{d:"m19 9-5 5-4-4-3 3"}]],aliases:["line-chart"]};Jc.node;function ed(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Jc}}))}const td={name:"sparkles",size:24,node:[["path",{d:"M11.017 2.814a1 1 0 0 1 1.966 0l1.051 5.558a2 2 0 0 0 1.594 1.594l5.558 1.051a1 1 0 0 1 0 1.966l-5.558 1.051a2 2 0 0 0-1.594 1.594l-1.051 5.558a1 1 0 0 1-1.966 0l-1.051-5.558a2 2 0 0 0-1.594-1.594l-5.558-1.051a1 1 0 0 1 0-1.966l5.558-1.051a2 2 0 0 0 1.594-1.594z"}],["path",{d:"M20 2v4"}],["path",{d:"M22 4h-4"}],["circle",{cx:"4",cy:"20",r:"2"}]],aliases:["stars"]};td.node;function Eo(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return td}}))}const Yp="application";function ol(t,e){var n;t.dataset.theme=Yp,(n=t.dataset).density||(n.density="compact"),t.dataset.colorScheme=e}const rd="red-ui-theme",Mo="light";function $p(t,e,n){const a=t==null?void 0:t.dataset.colorScheme;if(a==="dark"||a==="light")return a;if(!e||typeof localStorage>"u")return n??Mo;const o=localStorage.getItem(rd);return o==="dark"||o==="light"?o:n??Mo}function il(t,e){if(e){ol(e,t);return}typeof document<"u"&&ol(document.documentElement,t)}function Xp(t,e){e&&(typeof localStorage>"u"||localStorage.setItem(rd,t))}var Ya;class Zp{constructor(){je(this,Ya,me(Mo));qt(this,"target",null);qt(this,"persistTheme",!0)}get current(){return r(pe(this,Ya))}set current(e){m(pe(this,Ya),e,!0)}init(e={}){this.target=e.target??null,this.persistTheme=e.persist??!0,this.current=$p(this.target,this.persistTheme,e.initial),il(this.current,this.target)}set(e){this.current=e,il(e,this.target),Xp(e,this.persistTheme)}toggle(){this.set(this.current==="dark"?"light":"dark")}}Ya=new WeakMap;const Rn=new Zp;function sl(t){switch(t.view){case"ask":return"/ask";case"query":return"/query";case"collections":return"/collections";case"cluster":return"/cluster";case"security":return"/security";case"analytics":return"/analytics";case"settings":return"/settings";case"appearance":return"/appearance";case"collection":return pv(t.collection,t.subpage)}}function Qp(t){return t.view==="collection"?{view:"collections",collection:t.collection,subpage:t.subpage}:{view:t.view,collection:null,subpage:null}}function Jp(t){if(t.startsWith("/ask"))return{view:"ask",collection:null,subpage:null};if(t.startsWith("/query"))return{view:"query",collection:null,subpage:null};if(t.startsWith("/cluster"))return{view:"cluster",collection:null,subpage:null};if(t.startsWith("/security"))return{view:"security",collection:null,subpage:null};if(t.startsWith("/analytics"))return{view:"analytics",collection:null,subpage:null};if(t.startsWith("/settings"))return{view:"settings",collection:null,subpage:null};if(t.startsWith("/appearance"))return{view:"appearance",collection:null,subpage:null};const e=t.match(/^\/c\/([^/]+)(?:\/p\/([^/]+))?/);return e?{view:"collections",collection:decodeURIComponent(e[1]),subpage:e[2]?decodeURIComponent(e[2]):null}:{view:"collections",collection:null,subpage:null}}function nd(t){let e=me(jt({view:"collections",collection:null,subpage:null}));return{get view(){return r(e).view},get collection(){return r(e).collection},get subpage(){return r(e).subpage},get path(){return sl(r(e).collection?{view:"collection",collection:r(e).collection,subpage:r(e).subpage??"table"}:{view:r(e).view})},href:n=>sl(n),go:(n,a)=>{a==null||a.preventDefault(),m(e,Qp(n),!0)}}}const ad=Symbol("red-ui-router");let pi=null;function eh(t){return hs(ad,t),t}function xa(){const t=Qo(ad);return t||(pi||(pi=nd()),pi)}var th=x('<div class="w-px h-[18px] bg-line-2"></div> <!> <div class="w-px h-[18px] bg-line-2 ml-1"></div>',1),rh=x('<div class="w-px h-[18px] bg-line-2"></div>'),nh=x('<header class="h-11 flex items-center justify-between px-3.5 bg-bg-1/80 backdrop-blur-md border-b border-line-1 relative z-10"><div class="flex items-center gap-2.5"><a class="font-mono font-semibold text-[13px] tracking-tight text-fg-0 no-underline hover:text-primary-text transition-colors">red<span class="text-primary-text mx-px">·</span>ui</a> <!> <nav class="flex items-center gap-0.5"><a title="Ask — grounded natural-language query"><!> <span>Ask</span></a> <a title="Query"><!> <span>Query</span></a> <a title="Collections"><!> <span>Collections</span></a> <a title="Cluster topology"><!> <span>Cluster</span></a> <a title="Security"><!> <span>Security</span></a> <a title="Analytics"><!> <span>Analytics</span></a> <a title="Settings"><!> <span>Settings</span></a></nav></div> <div class="flex items-center gap-2.5"><!> <button type="button" class="inline-flex items-center justify-center size-7 bg-bg-2 border border-line-2 rounded-md text-fg-2 cursor-pointer transition-colors hover:border-line-3 hover:text-fg-0"><!></button> <button class="inline-flex items-center gap-2 h-7 pl-2.5 pr-2 bg-bg-2 border border-line-2 rounded-md text-fg-2 cursor-pointer text-xs transition-colors hover:border-line-3 hover:text-fg-1"><!> <span>Search or run</span> <span class="inline-flex gap-0.5 ml-1"><!><!></span></button></div></header>');function ah(t,e){nt(e,!0);let n=Re(e,"showConnect",3,!0);const a=xa();function o(){window.dispatchEvent(new KeyboardEvent("keydown",{key:"k",metaKey:!0,ctrlKey:!0,bubbles:!0}))}const i=y(()=>a.view==="ask"),l=y(()=>a.view==="query"),d=y(()=>a.view==="collections"),f=y(()=>a.view==="cluster"),v=y(()=>a.view==="security"),p=y(()=>a.view==="analytics"),b=y(()=>a.view==="settings");var h=nh(),w=c(h),k=c(w),C=u(k,2);{var P=W=>{var X=th(),M=u(ze(X),2);Pp(M,{}),Se(2),g(W,X)},Y=W=>{var X=rh();g(W,X)};V(C,W=>{n()?W(P):W(Y,-1)})}var O=u(C,2),Z=c(O),G=c(Z);Eo(G,{class:"size-3.5"}),Se(2),s(Z);var T=u(Z,2),q=c(T);Xc(q,{class:"size-3.5"}),Se(2),s(T);var ne=u(T,2),oe=c(ne);Po(oe,{class:"size-3.5"}),Se(2),s(ne);var Q=u(ne,2),ue=c(Q);hv(ue,{class:"size-3.5"}),Se(2),s(Q);var U=u(Q,2),E=c(U);Gp(E,{class:"size-3.5"}),Se(2),s(U);var I=u(U,2),_=c(I);ed(_,{class:"size-3.5"}),Se(2),s(I);var A=u(I,2),R=c(A);ji(R,{class:"size-3.5"}),Se(2),s(A),s(O),s(w);var te=u(w,2),F=c(te);Bp(F,{});var $=u(F,2),ee=c($);{var L=W=>{Up(W,{class:"size-3.5"})},H=W=>{Wp(W,{class:"size-3.5"})};V(ee,W=>{Rn.current==="dark"?W(L):W(H,-1)})}s($);var j=u($,2),le=c(j);Gr(le,{class:"size-3.5 text-fg-3"});var he=u(le,4),ie=c(he);Br(ie,{children:(W,X)=>{Se();var M=bt("⌘");g(W,M)},$$slots:{default:!0}});var J=u(ie);Br(J,{children:(W,X)=>{Se();var M=bt("K");g(W,M)},$$slots:{default:!0}}),s(he),s(j),s(te),s(h),N((W,X,M,K,D,z,B,re,de,be,fe,Ce,ke,xe,ge)=>{Ne(k,"href",W),Ne(Z,"href",X),Ne(Z,"aria-current",r(i)?"page":void 0),Pe(Z,1,M),Ne(T,"href",K),Ne(T,"aria-current",r(l)?"page":void 0),Pe(T,1,D),Ne(ne,"href",z),Ne(ne,"aria-current",r(d)?"page":void 0),Pe(ne,1,B),Ne(Q,"href",re),Ne(Q,"aria-current",r(f)?"page":void 0),Pe(Q,1,de),Ne(U,"href",be),Ne(U,"aria-current",r(v)?"page":void 0),Pe(U,1,fe),Ne(I,"href",Ce),Ne(I,"aria-current",r(p)?"page":void 0),Pe(I,1,ke),Ne(A,"href",xe),Ne(A,"aria-current",r(b)?"page":void 0),Pe(A,1,ge),Ne($,"title",Rn.current==="dark"?"Switch to light theme":"Switch to dark theme"),Ne($,"aria-label",Rn.current==="dark"?"Switch to light theme":"Switch to dark theme")},[()=>a.href({view:"collections"}),()=>a.href({view:"ask"}),()=>Ve(["inline-flex items-center gap-1.5 h-7 px-2 rounded-md text-xs no-underline transition-colors",r(i)?"bg-bg-2 text-primary-text":"text-fg-2 hover:text-fg-0 hover:bg-bg-2"].join(" ")),()=>a.href({view:"query"}),()=>Ve(["inline-flex items-center gap-1.5 h-7 px-2 rounded-md text-xs no-underline transition-colors",r(l)?"bg-bg-2 text-fg-0":"text-fg-2 hover:text-fg-0 hover:bg-bg-2"].join(" ")),()=>a.href({view:"collections"}),()=>Ve(["inline-flex items-center gap-1.5 h-7 px-2 rounded-md text-xs no-underline transition-colors",r(d)?"bg-bg-2 text-fg-0":"text-fg-2 hover:text-fg-0 hover:bg-bg-2"].join(" ")),()=>a.href({view:"cluster"}),()=>Ve(["inline-flex items-center gap-1.5 h-7 px-2 rounded-md text-xs no-underline transition-colors",r(f)?"bg-bg-2 text-fg-0":"text-fg-2 hover:text-fg-0 hover:bg-bg-2"].join(" ")),()=>a.href({view:"security"}),()=>Ve(["inline-flex items-center gap-1.5 h-7 px-2 rounded-md text-xs no-underline transition-colors",r(v)?"bg-bg-2 text-fg-0":"text-fg-2 hover:text-fg-0 hover:bg-bg-2"].join(" ")),()=>a.href({view:"analytics"}),()=>Ve(["inline-flex items-center gap-1.5 h-7 px-2 rounded-md text-xs no-underline transition-colors",r(p)?"bg-bg-2 text-fg-0":"text-fg-2 hover:text-fg-0 hover:bg-bg-2"].join(" ")),()=>a.href({view:"settings"}),()=>Ve(["inline-flex items-center gap-1.5 h-7 px-2 rounded-md text-xs no-underline transition-colors",r(b)?"bg-bg-2 text-fg-0":"text-fg-2 hover:text-fg-0 hover:bg-bg-2"].join(" "))]),_e("click",k,W=>a.go({view:"collections"},W)),_e("click",Z,W=>a.go({view:"ask"},W)),_e("click",T,W=>a.go({view:"query"},W)),_e("click",ne,W=>a.go({view:"collections"},W)),_e("click",Q,W=>a.go({view:"cluster"},W)),_e("click",U,W=>a.go({view:"security"},W)),_e("click",I,W=>a.go({view:"analytics"},W)),_e("click",A,W=>a.go({view:"settings"},W)),_e("click",$,()=>Rn.toggle()),_e("click",j,o),g(t,h),at()}nr(["click"]);function oh(t){return`'${t.replace(/'/g,"''")}'`}function ih(){return Math.random().toString(36).slice(2,10)}function ws(t){return`UPDATE ${t.table} SET ${t.col} = ${oh(t.newValue)} WHERE rid = ${t.row};`}var $a,Xa;class sh{constructor(){je(this,$a,me(jt([])));je(this,Xa,y(()=>this.changes.length));qt(this,"executor",null)}get changes(){return r(pe(this,$a))}set changes(e){m(pe(this,$a),e,!0)}get count(){return r(pe(this,Xa))}set count(e){m(pe(this,Xa),e)}setExecutor(e){this.executor=e}stage(e,n,a,o,i){const l=this.changes.findIndex(f=>f.table===e&&f.row===n&&f.col===a);if(l>=0){const f=this.changes[l],v={...f,oldValue:f.oldValue,newValue:i,error:void 0},p=this.changes.slice();return p[l]=v,this.changes=p,f.id}const d=ih();return this.changes=[...this.changes,{id:d,table:e,row:n,col:a,oldValue:o,newValue:i}],d}unstage(e){this.changes=this.changes.filter(n=>n.id!==e)}find(e,n,a){return this.changes.find(o=>o.table===e&&o.row===n&&o.col===a)}previewSql(){return this.changes.map(ws)}async commitAll(){if(this.changes.length===0)return{applied:0,failed:[]};if(!this.executor)throw new Error("PendingChanges: no commit executor configured");const e=this.changes.slice(),n=await this.executor(e),a=new Map(n.map(v=>[v.id,v])),o=[];let i=0;for(const v of e){const p=a.get(v.id);p!=null&&p.ok?i+=1:o.push({...v,error:(p==null?void 0:p.error)??"commit failed"})}const l=new Set(o.map(v=>v.id)),d=this.changes.filter(v=>!e.some(p=>p.id===v.id)),f=new Map(o.map(v=>[v.id,v]));return this.changes=[...this.changes.filter(v=>l.has(v.id)).map(v=>f.get(v.id)??v),...d],{applied:i,failed:o}}discardAll(){this.changes=[]}clear(){this.changes=[]}}$a=new WeakMap,Xa=new WeakMap;const Pr=new sh,od={name:"arrow-right",size:24,node:[["path",{d:"M5 12h14"}],["path",{d:"m12 5 7 7-7 7"}]]};od.node;function lh(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return od}}))}const id={name:"file-pen-line",size:24,node:[["path",{d:"M14.364 13.634a2 2 0 0 0-.506.854l-.837 2.87a.5.5 0 0 0 .62.62l2.87-.837a2 2 0 0 0 .854-.506l4.013-4.009a1 1 0 0 0-3.004-3.004z"}],["path",{d:"M14.487 7.858A1 1 0 0 1 14 7V2"}],["path",{d:"M20 19.645V20a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l2.516 2.516"}],["path",{d:"M8 18h1"}]],aliases:["file-signature"]};id.node;function ch(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return id}}))}const sd={name:"lock",size:24,node:[["rect",{width:"18",height:"11",x:"3",y:"11",rx:"2",ry:"2"}],["path",{d:"M7 11V7a5 5 0 0 1 10 0v4"}]]};sd.node;function Un(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return sd}}))}const ld={name:"terminal",size:24,node:[["path",{d:"M12 19h8"}],["path",{d:"m4 17 6-6-6-6"}]]};ld.node;function dh(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return ld}}))}function hi(t){try{const e=t();return typeof e=="string"&&e.length>0?e:void 0}catch{return}}function uh(t){return t.startsWith("v")?t.slice(1):t}function cd(){return{version:uh(hi(()=>"0.3.5")??"0.0.0-dev"),gitSha:hi(()=>"unknown")??"unknown",buildTime:hi(()=>"unknown")??"unknown"}}cd().version;var fh=x('<span class="text-fg-3">·</span> <span class="text-fg-2"><span class="text-fg-3">rtt</span> <span class="text-fg-1 tabular-nums"> </span><span class="text-fg-3">ms</span></span>',1),vh=x('<span class="text-fg-3">·</span> <span class="text-fg-2"><span class="text-fg-3">lag</span> <span> </span></span>',1),gh=x('<span class="text-fg-3">·</span> <span class="text-fg-2"><span class="text-fg-3">lsn</span> <span class="text-fg-1 tabular-nums"> </span></span>',1),ph=x('<span class="text-fg-3">·</span> <span class="inline-flex items-center gap-1 shrink-0 text-warn"><!> <span class="uppercase tracking-wider text-[10px]">read-only — file in use</span></span>',1),hh=x('<span class="inline-flex items-center gap-1.5 shrink-0"><span class="w-1.5 h-1.5 rounded-full"></span> <span class="text-fg-1 uppercase tracking-wider text-[10px]"> </span></span> <span class="text-fg-3">·</span> <span class="text-fg-1 truncate"> </span> <!> <!> <!> <!>',1),bh=x('<span class="inline-flex items-center gap-1.5 shrink-0"><span class="w-1.5 h-1.5 rounded-full bg-fg-3"></span> <span class="text-fg-3">Not connected</span></span>'),xh=x('<button type="button" data-no-nav="" class="inline-flex items-center gap-1.5 px-3 text-primary-text hover:bg-bg-2/60 transition-colors cursor-pointer bg-transparent border-0 border-l border-line-1"><!> <span class="tabular-nums"> </span></button>'),mh=x('<button type="button" data-no-nav="" class="inline-flex items-center gap-1 px-3 text-fg-2 hover:text-fg-0 hover:bg-bg-2/60 transition-colors cursor-pointer bg-transparent border-0 border-l border-line-1"><span>Connect</span> <!></button>'),_h=x('<div class="h-8 flex items-stretch border-b border-line-1 bg-bg-1/60 text-[11px] font-mono select-none" role="status" aria-label="Connection status"><div role="button" tabindex="0" title="Open cluster overview" class="flex-1 flex items-center gap-3 px-3 cursor-pointer hover:bg-bg-2/40 transition-colors min-w-0"><!></div> <!> <!> <button type="button" data-no-nav="" aria-label="Toggle developer console" title="Developer console — every query and HTTP call, with timing and row counts" class="inline-flex items-center gap-1 px-3 text-fg-3 hover:text-fg-1 hover:bg-bg-2/60 transition-colors cursor-pointer bg-transparent border-0 border-l border-line-1"><!> <span>Console</span></button> <span class="inline-flex items-center px-3 shrink-0 font-mono text-fg-3 border-l border-line-1 select-none"> </span></div>');function yh(t,e){nt(e,!0);const n=cd(),a=xa(),o=y(()=>Pr.count),i=y(()=>Be.readOnly),l=y(()=>Be.readOnlyReason);function d(){window.dispatchEvent(new CustomEvent("red:open-pending-changes"))}const f=y(()=>Be.connected),v=y(()=>{var _,A;return((_=Be.probe.replication)==null?void 0:_.role)??((A=Be.active)==null?void 0:A.role)??"standalone"}),p=y(()=>r(v)==="primary"?"var(--color-role-primary)":r(v)==="replica"?"var(--color-role-replica)":r(v)==="embedded"?"var(--color-role-embedded)":"var(--color-fg-3)"),b=y(()=>{var _,A;return((_=Be.probe.replication)==null?void 0:_.wal_lsn)??((A=Be.probe.replication)==null?void 0:A.last_applied_lsn)}),h=y(()=>{const _=Be.probe.replication;if(!(!_||r(v)!=="replica")&&!(_.last_seen_primary_lsn===void 0||_.last_applied_lsn===void 0))return Math.max(0,_.last_seen_primary_lsn-_.last_applied_lsn)});function w(){window.dispatchEvent(new CustomEvent("red:open-connect"))}function k(){window.dispatchEvent(new CustomEvent("red:toggle-dev-console"))}function C(_){const A=_.target;A!=null&&A.closest("button, a, [data-no-nav]")||a.go({view:"cluster"})}function P(_){(_.key==="Enter"||_.key===" ")&&(_.preventDefault(),a.go({view:"cluster"}))}var Y=_h(),O=c(Y),Z=c(O);{var G=_=>{var A=hh(),R=ze(A),te=c(R);let F;var $=u(te,2),ee=c($,!0);s($),s(R);var L=u(R,4),H=c(L,!0);s(L);var j=u(L,2);{var le=K=>{var D=fh(),z=u(ze(D),2),B=u(c(z),2),re=c(B,!0);s(B),Se(),s(z),N(()=>S(re,Be.probe.rtt_ms)),g(K,D)};V(j,K=>{Be.probe.rtt_ms!==void 0&&K(le)})}var he=u(j,2);{var ie=K=>{var D=vh(),z=u(ze(D),2),B=u(c(z),2);let re;var de=c(B,!0);s(B),s(z),N(()=>{re=Pe(B,1,"text-fg-1 tabular-nums",null,re,{"text-warn":(r(h)??0)>0}),S(de,r(h))}),g(K,D)};V(he,K=>{r(v)==="replica"&&r(h)!==void 0&&K(ie)})}var J=u(he,2);{var W=K=>{var D=gh(),z=u(ze(D),2),B=u(c(z),2),re=c(B,!0);s(B),s(z),N(()=>S(re,r(b))),g(K,D)};V(J,K=>{r(b)!==void 0&&K(W)})}var X=u(J,2);{var M=K=>{var D=ph(),z=u(ze(D),2),B=c(z);Un(B,{class:"size-3"}),Se(2),s(z),N(()=>Ne(z,"title",r(l)??"The server is open read-only — mutations are disabled.")),g(K,D)};V(X,K=>{r(i)&&K(M)})}N(()=>{F=yr(te,"",F,{"background-color":r(p)}),S(ee,r(v)),S(H,Be.active.label)}),g(_,A)},T=_=>{var A=bh();g(_,A)};V(Z,_=>{r(f)?_(G):_(T,-1)})}s(O);var q=u(O,2);{var ne=_=>{var A=xh(),R=c(A);ch(R,{class:"size-3"});var te=u(R,2),F=c(te);s(te),s(A),N(()=>{Ne(A,"aria-label",`${r(o)} pending changes`),S(F,`Pending changes (${r(o)??""})`)}),_e("click",A,d),g(_,A)};V(q,_=>{r(o)>0&&_(ne)})}var oe=u(q,2);{var Q=_=>{var A=mh(),R=u(c(A),2);lh(R,{class:"size-3"}),s(A),_e("click",A,w),g(_,A)};V(oe,_=>{r(f)||_(Q)})}var ue=u(oe,2),U=c(ue);dh(U,{class:"size-3"}),Se(2),s(ue);var E=u(ue,2),I=c(E);s(E),s(Y),N(()=>{Ne(E,"title",`red-ui ${n.version} · ${n.gitSha} · built ${n.buildTime}`),S(I,`v${n.version??""}`)}),_e("click",O,C),_e("keydown",O,P),_e("click",ue,k),g(t,Y),at()}nr(["click","keydown"]);var wh=x('<span class="hint svelte-1yq04zr"> </span>'),kh=x('<button><span class="label svelte-1yq04zr"> </span> <!> <!></button>'),Sh=x('<div class="group-label svelte-1yq04zr"> </div> <!>',1),Ch=x('<div class="empty svelte-1yq04zr"> </div>'),Eh=x('<div class="scrim svelte-1yq04zr" role="presentation"></div> <div class="palette svelte-1yq04zr" role="dialog" aria-modal="true"><div class="input-wrap svelte-1yq04zr"><span class="search-icon svelte-1yq04zr">⌕</span> <input placeholder="Search or run a command…" spellcheck="false" class="svelte-1yq04zr"/> <!></div> <div class="list svelte-1yq04zr"><!> <!></div> <footer class="svelte-1yq04zr"><span><!> <!> navigate</span> <span><!> run</span> <span><!><!> toggle</span></footer></div>',1);function Mh(t,e){nt(e,!0);const n=xa();let a=me(!1),o=me(""),i=me(0),l=me(void 0);function d(Z){window.dispatchEvent(new CustomEvent(Z))}const f=[{id:"ask",group:"navigate",label:"Open ask",hint:"/ask",run:()=>p({view:"ask"})},{id:"query",group:"navigate",label:"Open query",hint:"/query",run:()=>p({view:"query"})},{id:"collections",group:"navigate",label:"Open collections",hint:"/collections",run:()=>p({view:"collections"})},{id:"topology",group:"navigate",label:"Open cluster",hint:"/cluster",run:()=>p({view:"cluster"})},{id:"security",group:"navigate",label:"Open security",hint:"/security",run:()=>p({view:"security"})},{id:"analytics",group:"navigate",label:"Open analytics",hint:"/analytics",run:()=>p({view:"analytics"})},{id:"settings",group:"navigate",label:"Open settings",hint:"/settings",run:()=>p({view:"settings"})},{id:"appearance",group:"navigate",label:"Open appearance",hint:"/appearance",run:()=>p({view:"appearance"})},{id:"new-query",group:"data",label:"New query",shortcut:"⌘T",run:()=>{d("red:new-query"),b()}},{id:"open-connect",group:"actions",label:"Open Connect dropdown",shortcut:"⌘⇧C",run:()=>{d("red:open-connect"),b()}},{id:"apply-pending",group:"actions",label:"Apply pending changes",run:()=>{d("red:apply-pending"),b()}},{id:"discard-pending",group:"actions",label:"Discard pending changes",run:()=>{d("red:discard-pending"),b()}},{id:"toggle-theme",group:"view",label:"Toggle theme (light / dark)",hint:"theme",run:()=>{Rn.toggle(),b()}},{id:"show-shortcuts",group:"view",label:"Show keyboard shortcuts",shortcut:"?",run:()=>{b(),d("red:open-shortcuts")}}],v=y(()=>r(o).trim()===""?f:f.filter(Z=>Z.label.toLowerCase().includes(r(o).toLowerCase())));function p(Z){n.go(Z),b()}function b(){m(a,!1),m(o,""),m(i,0)}function h(Z){if(!(Z instanceof HTMLElement))return!1;if(Z.isContentEditable)return!0;const G=Z.tagName;return G==="INPUT"||G==="TEXTAREA"||G==="SELECT"}function w(Z){var q;const G=Z.metaKey||Z.ctrlKey,T=Z.key.toLowerCase();if(G&&T==="k"){Z.preventDefault(),m(a,!r(a)),r(a)&&setTimeout(()=>{var ne;return(ne=r(l))==null?void 0:ne.focus()},0);return}if(G&&Z.shiftKey&&T==="c"){Z.preventDefault(),d("red:open-connect");return}if(G&&!Z.shiftKey&&T==="t"&&!h(Z.target)){Z.preventDefault(),d("red:new-query");return}if(r(a)){if(Z.key==="Escape"){b();return}Z.key==="ArrowDown"&&(Z.preventDefault(),m(i,Math.min(r(i)+1,r(v).length-1),!0)),Z.key==="ArrowUp"&&(Z.preventDefault(),m(i,Math.max(r(i)-1,0),!0)),Z.key==="Enter"&&(Z.preventDefault(),(q=r(v)[r(i)])==null||q.run())}}vn(()=>{window.addEventListener("keydown",w);const Z=()=>{m(a,!0),setTimeout(()=>{var G;return(G=r(l))==null?void 0:G.focus()},0)};return window.addEventListener("red:open-palette",Z),()=>{window.removeEventListener("keydown",w),window.removeEventListener("red:open-palette",Z)}});const k=["navigate","data","actions","view"],C={navigate:"Navigate",data:"Data",actions:"Actions",view:"View"};var P=_t(),Y=ze(P);{var O=Z=>{var G=Eh(),T=ze(G),q=u(T,2),ne=c(q),oe=u(c(ne),2);Xt(oe),ln(oe,j=>m(l,j),()=>r(l));var Q=u(oe,2);Br(Q,{children:(j,le)=>{Se();var he=bt("esc");g(j,he)},$$slots:{default:!0}}),s(ne);var ue=u(ne,2),U=c(ue);$e(U,17,()=>k,gr,(j,le)=>{const he=y(()=>r(v).filter(X=>X.group===r(le)));var ie=_t(),J=ze(ie);{var W=X=>{var M=Sh(),K=ze(M),D=c(K,!0);s(K);var z=u(K,2);$e(z,17,()=>r(he),gr,(B,re)=>{const de=y(()=>r(v).indexOf(r(re)));var be=kh();let fe;var Ce=c(be),ke=c(Ce,!0);s(Ce);var xe=u(Ce,2);{var ge=se=>{var ve=wh(),Ae=c(ve,!0);s(ve),N(()=>S(Ae,r(re).hint)),g(se,ve)};V(xe,se=>{r(re).hint&&se(ge)})}var De=u(xe,2);{var ce=se=>{Br(se,{children:(ve,Ae)=>{Se();var Le=bt();N(()=>S(Le,r(re).shortcut)),g(ve,Le)},$$slots:{default:!0}})};V(De,se=>{r(re).shortcut&&se(ce)})}s(be),N(()=>{fe=Pe(be,1,"row svelte-1yq04zr",null,fe,{active:r(de)===r(i)}),S(ke,r(re).label)}),Sn("mouseenter",be,()=>m(i,r(de),!0)),_e("click",be,()=>r(re).run()),g(B,be)}),N(()=>S(D,C[r(le)])),g(X,M)};V(J,X=>{r(he).length&&X(W)})}g(j,ie)});var E=u(U,2);{var I=j=>{var le=Ch(),he=c(le);s(le),N(()=>S(he,`No commands match "${r(o)??""}"`)),g(j,le)};V(E,j=>{r(v).length===0&&j(I)})}s(ue);var _=u(ue,2),A=c(_),R=c(A);Br(R,{children:(j,le)=>{Se();var he=bt("↑");g(j,he)},$$slots:{default:!0}});var te=u(R,2);Br(te,{children:(j,le)=>{Se();var he=bt("↓");g(j,he)},$$slots:{default:!0}}),Se(),s(A);var F=u(A,2),$=c(F);Br($,{children:(j,le)=>{Se();var he=bt("↵");g(j,he)},$$slots:{default:!0}}),Se(),s(F);var ee=u(F,2),L=c(ee);Br(L,{children:(j,le)=>{Se();var he=bt("⌘");g(j,he)},$$slots:{default:!0}});var H=u(L);Br(H,{children:(j,le)=>{Se();var he=bt("K");g(j,he)},$$slots:{default:!0}}),Se(),s(ee),s(_),s(q),_e("click",T,b),_e("keydown",T,function(...j){}),_e("input",oe,()=>m(i,0)),Sr(oe,()=>r(o),j=>m(o,j)),g(Z,G)};V(Y,Z=>{r(a)&&Z(O)})}g(t,P),at()}nr(["click","keydown","input"]);const zh=[{id:"palette",context:"Global",keys:["⌘","K"],label:"Open command palette"},{id:"shortcuts",context:"Global",keys:["?"],label:"Show keyboard shortcuts"},{id:"new-query",context:"Global",keys:["⌘","T"],label:"New query"},{id:"open-connect",context:"Connection",keys:["⌘","⇧","C"],label:"Open Connect dropdown"},{id:"dismiss",context:"Editing",keys:["Esc"],label:"Cancel / dismiss overlay or palette"}],Nh=["Global","Connection","Workspace","Editing"];var Th=x('<li class="flex items-center justify-between gap-3 px-2 py-1.5 rounded hover:bg-bg-2"><span class="text-fg-1 text-[13px]"> </span> <span class="inline-flex gap-1 shrink-0"></span></li>'),Ih=x('<section><div class="flex items-baseline justify-between mb-2"><h3 class="type-label m-0"> </h3> <span class="text-fg-3 text-[11px]"> </span></div> <ul class="grid gap-1 m-0 p-0 list-none"></ul></section>'),Ah=x('<div class="fixed inset-0 z-[200] bg-bg-0/70 backdrop-blur-md flex items-center justify-center p-6" role="presentation"><div class="w-full max-w-[640px] max-h-[80vh] overflow-y-auto bg-bg-1 border border-line-2 rounded-lg shadow-2xl" role="dialog" aria-modal="true" aria-label="Keyboard shortcuts" tabindex="-1"><header class="flex items-center justify-between px-5 py-3 border-b border-line-1"><div class="flex items-center gap-2"><span class="type-label">Keyboard shortcuts</span></div> <div class="flex items-center gap-1.5 text-fg-3 text-[11px]"><!> close</div></header> <div class="p-5 grid gap-5"></div></div></div>');function Lh(t,e){nt(e,!0);let n=me(!1);function a(){m(n,!1)}function o(b){if(!(b instanceof HTMLElement))return!1;if(b.isContentEditable)return!0;const h=b.tagName;return h==="INPUT"||h==="TEXTAREA"||h==="SELECT"}function i(b){if(b.key==="Escape"&&r(n)){b.preventDefault(),a();return}if(b.key==="?"&&!b.metaKey&&!b.ctrlKey&&!b.altKey){if(o(b.target))return;b.preventDefault(),m(n,!r(n))}}vn(()=>{window.addEventListener("keydown",i);const b=()=>{m(n,!0)};return window.addEventListener("red:open-shortcuts",b),()=>{window.removeEventListener("keydown",i),window.removeEventListener("red:open-shortcuts",b)}});const l=y(()=>Nh.map(b=>({ctx:b,items:zh.filter(h=>h.context===b)})).filter(b=>b.items.length>0)),d={Global:"Available anywhere in the app",Connection:"Manage which reddb you talk to",Workspace:"Move between tabs and panes",Editing:"While editing data or running queries"};var f=_t(),v=ze(f);{var p=b=>{var h=Ah(),w=c(h),k=c(w),C=u(c(k),2),P=c(C);Br(P,{children:(O,Z)=>{Se();var G=bt("Esc");g(O,G)},$$slots:{default:!0}}),Se(),s(C),s(k);var Y=u(k,2);$e(Y,21,()=>r(l),gr,(O,Z)=>{var G=Ih(),T=c(G),q=c(T),ne=c(q,!0);s(q);var oe=u(q,2),Q=c(oe,!0);s(oe),s(T);var ue=u(T,2);$e(ue,21,()=>r(Z).items,gr,(U,E)=>{var I=Th(),_=c(I),A=c(_,!0);s(_);var R=u(_,2);$e(R,21,()=>r(E).keys,gr,(te,F)=>{Br(te,{children:($,ee)=>{Se();var L=bt();N(()=>S(L,r(F))),g($,L)},$$slots:{default:!0}})}),s(R),s(I),N(()=>S(A,r(E).label)),g(U,I)}),s(ue),s(G),N(()=>{S(ne,r(Z).ctx),S(Q,d[r(Z).ctx])}),g(O,G)}),s(Y),s(w),s(h),_e("click",h,a),_e("click",w,O=>O.stopPropagation()),_e("keydown",w,function(...O){}),g(b,h)};V(v,b=>{r(n)&&b(p)})}g(t,f),at()}nr(["click","keydown"]);const dd={name:"key-round",size:24,node:[["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"}]]};dd.node;function Sa(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return dd}}))}var Oh=x('<label for="mp-confirm" class="type-label block mb-1">Confirm</label> <input id="mp-confirm" type="password" autocomplete="new-password" spellcheck="false" class="w-full h-9 px-3 mb-2 bg-bg-0 border border-line-2 rounded-md font-mono text-[13px] text-fg-0 outline-none transition-colors focus:border-accent"/>',1),Ph=x("<!> ",1),Dh=x('<!> <span class="text-danger truncate"> </span>',1),Rh=x('<button type="button" class="inline-flex items-center gap-1.5 text-fg-3 hover:text-danger transition-colors cursor-pointer bg-transparent border-0 p-0"><!> <span>Start fresh — wipe this browser</span></button>'),Vh=x('<div class="flex items-center justify-between gap-2"><span class="text-danger">Erase the encrypted store and all saved connections?</span></div> <div class="flex items-center gap-2 mt-1.5"><button type="button" class="inline-flex items-center gap-1.5 px-2 py-1 rounded border border-danger/40 bg-danger/10 text-danger hover:bg-danger/20 cursor-pointer"><!> Yes, wipe</button> <button type="button" class="px-2 py-1 rounded border border-line-2 text-fg-2 hover:text-fg-0 cursor-pointer">Cancel</button></div>',1),Hh=x('<div class="fixed inset-0 z-[100] flex items-center justify-center bg-bg-0/70 backdrop-blur-sm motion-reduce:backdrop-blur-none" role="dialog" aria-modal="true" aria-labelledby="mp-title"><form class="w-[380px] bg-bg-1 border border-line-2 rounded-lg shadow-2xl p-5"><div class="flex items-center gap-2 mb-1.5 text-fg-0"><!> <h2 id="mp-title" class="type-h2 m-0"> </h2></div> <p class="text-fg-3 text-[12px] leading-relaxed m-0 mb-3"> </p> <label for="mp-pwd" class="type-label block mb-1">Master password</label> <input id="mp-pwd" type="password" spellcheck="false" class="w-full h-9 px-3 mb-2 bg-bg-0 border border-line-2 rounded-md font-mono text-[13px] text-fg-0 outline-none transition-colors focus:border-accent"/> <!> <button type="submit" class="w-full h-9 mt-1 bg-primary text-on-primary font-medium rounded-md cursor-pointer transition-colors hover:bg-primary-active disabled:opacity-40 disabled:cursor-not-allowed flex items-center justify-center gap-2 text-[13px]"><!></button> <div class="h-5 mt-2 flex items-center gap-1.5 text-[11px] font-mono"><!></div> <div class="mt-3 pt-3 border-t border-line-1 text-[11px] font-mono"><!></div></form></div>');function Fh(t,e){nt(e,!0);let n=me(""),a=me(""),o=me(!1),i=me(!1),l=me(void 0);function d(){xr.error=null,m(i,!0)}function f(){m(i,!1)}function v(){xr.wipe(),m(n,""),m(a,""),m(i,!1),setTimeout(()=>{var O;return(O=r(l))==null?void 0:O.focus()},0)}const p=y(()=>xr.needsSetup),b=y(()=>xr.error),h=y(()=>r(p)?"Set a master password":"Unlock credentials"),w=y(()=>r(p)?"Picks a key that encrypts your connection history at rest. The password lives in this browser session only — there is no recovery.":"Enter the master password used to encrypt your saved connections.");Lt(()=>{xr.locked&&setTimeout(()=>{var O;return(O=r(l))==null?void 0:O.focus()},0)});async function k(O){if(O.preventDefault(),r(o)||!r(n))return;if(r(p)&&r(n)!==r(a)){xr.error="Passwords don't match";return}m(o,!0);const Z=await xr.unlock(r(n));m(o,!1),Z&&(m(n,""),m(a,""),Be.refresh())}var C=_t(),P=ze(C);{var Y=O=>{var Z=Hh(),G=c(Z),T=c(G),q=c(T);{var ne=J=>{Sa(J,{class:"size-4 text-primary-text"})},oe=J=>{Un(J,{class:"size-4 text-primary-text"})};V(q,J=>{r(p)?J(ne):J(oe,-1)})}var Q=u(q,2),ue=c(Q,!0);s(Q),s(T);var U=u(T,2),E=c(U,!0);s(U);var I=u(U,4);Xt(I),ln(I,J=>m(l,J),()=>r(l));var _=u(I,2);{var A=J=>{var W=Oh(),X=u(ze(W),2);Xt(X),Sr(X,()=>r(a),M=>m(a,M)),g(J,W)};V(_,J=>{r(p)&&J(A)})}var R=u(_,2),te=c(R);{var F=J=>{var W=Ph(),X=ze(W);cn(X,{class:"size-3.5 animate-spin"});var M=u(X);N(()=>S(M,` ${r(p)?"Setting up…":"Unlocking…"}`)),g(J,W)},$=J=>{var W=bt();N(()=>S(W,r(p)?"Set password":"Unlock")),g(J,W)};V(te,J=>{r(o)?J(F):J($,-1)})}s(R);var ee=u(R,2),L=c(ee);{var H=J=>{var W=Dh(),X=ze(W);ra(X,{class:"size-3 text-danger"});var M=u(X,2),K=c(M,!0);s(M),N(()=>S(K,r(b))),g(J,W)};V(L,J=>{r(b)&&J(H)})}s(ee);var j=u(ee,2),le=c(j);{var he=J=>{var W=Rh(),X=c(W);Ra(X,{class:"size-3"}),Se(2),s(W),_e("click",W,d),g(J,W)},ie=J=>{var W=Vh(),X=u(ze(W),2),M=c(X),K=c(M);Ra(K,{class:"size-3"}),Se(),s(M);var D=u(M,2);s(X),_e("click",M,v),_e("click",D,f),g(J,W)};V(le,J=>{r(i)?J(ie,-1):J(he)})}s(j),s(G),s(Z),N(()=>{S(ue,r(h)),S(E,r(w)),Ne(I,"autocomplete",r(p)?"new-password":"current-password"),R.disabled=r(o)||!r(n)||r(p)&&!r(a)}),Sn("submit",G,k),Sr(I,()=>r(n),J=>m(n,J)),g(O,Z)};V(P,O=>{xr.backend==="web"&&xr.locked&&O(Y)})}g(t,C),at()}nr(["click"]);var qh=x('<div class="text-fg-3 text-[12px] font-mono py-6 text-center">No staged changes.</div>'),Kh=x('<div class="text-warn text-[11px] mt-1 inline-flex items-center gap-1"><!> </div>'),jh=x('<li class="border border-line-1 rounded px-2 py-1.5 bg-bg-2/30"><div class="flex items-center justify-between gap-2 mb-1"><span class="text-fg-2"><span class="text-fg-1"> </span> <span class="text-fg-3">· rid</span> <span class="text-fg-1 tabular-nums"> </span> <span class="text-fg-3">·</span> <span class="text-fg-1"> </span></span> <button type="button" class="text-fg-3 hover:text-fg-1 text-[11px]">Unstage</button></div> <div class="text-[11px] grid grid-cols-[auto_1fr] gap-x-2 gap-y-0.5"><span class="text-fg-3">old</span> <span class="text-fg-2 truncate"> </span> <span class="text-fg-3">new</span> <span class="text-primary-text truncate"> </span></div> <div class="text-fg-3 text-[10.5px] mt-1 truncate"> </div> <!></li>'),Bh=x('<ul class="space-y-2 text-[12px] font-mono"></ul>'),Uh=x('<div class="text-warn text-[11px] font-mono mt-2"> </div>'),Wh=x('<div class="flex items-center gap-1.5 px-4 py-2 text-warn text-[11px] font-mono border-t border-line-1 bg-warn/5"><!> <span> </span></div>'),Gh=x('<div class="fixed inset-0 z-50 grid place-items-center bg-bg-0/70 backdrop-blur-sm motion-reduce:backdrop-blur-none" role="dialog" aria-modal="true" aria-label="Pending changes"><div class="w-full max-w-2xl mx-4 bg-bg-1 border border-line-1 rounded-md shadow-lg overflow-hidden"><div class="flex items-center justify-between px-4 py-3 border-b border-line-1"><div><h2 class="type-h3 m-0">Pending changes</h2> <p class="text-fg-3 text-[11px] font-mono m-0 mt-0.5"> </p></div> <button type="button" class="p-1 text-fg-3 hover:text-fg-1" aria-label="Close"><!></button></div> <div class="max-h-[50vh] overflow-auto px-4 py-3"><!> <!></div> <!> <div class="flex items-center justify-end gap-2 px-4 py-3 border-t border-line-1 bg-bg-1/60"><button type="button" class="text-[12px] font-mono px-3 py-1 text-fg-3 hover:text-fg-1">Cancel</button> <button type="button" class="text-[12px] font-mono px-3 py-1 text-fg-1 border border-line-1 rounded hover:bg-bg-2">Discard all</button> <button type="button" class="text-[12px] font-mono px-3 py-1 bg-primary text-on-primary rounded disabled:opacity-50"> </button></div></div></div>');function Yh(t,e){nt(e,!0);const n=y(()=>Be.readOnly),a=y(()=>Be.readOnlyReason);let o=me(!1),i=me(null);async function l(){if(!r(o)){m(o,!0),m(i,null);try{(await Pr.commitAll()).failed.length===0&&e.onClose()}catch(b){m(i,b.message,!0)}finally{m(o,!1)}}}function d(){Pr.discardAll(),e.onClose()}var f=_t(),v=ze(f);{var p=b=>{var h=Gh(),w=c(h),k=c(w),C=c(k),P=u(c(C),2),Y=c(P);s(P),s(C);var O=u(C,2),Z=c(O);Ar(Z,{class:"size-4"}),s(O),s(k);var G=u(k,2),T=c(G);{var q=te=>{var F=qh();g(te,F)},ne=te=>{var F=Bh();$e(F,21,()=>Pr.changes,$=>$.id,($,ee)=>{var L=jh(),H=c(L),j=c(H),le=c(j),he=c(le,!0);s(le);var ie=u(le,4),J=c(ie,!0);s(ie);var W=u(ie,4),X=c(W,!0);s(W),s(j);var M=u(j,2);s(H);var K=u(H,2),D=u(c(K),2),z=c(D,!0);s(D);var B=u(D,4),re=c(B,!0);s(B),s(K);var de=u(K,2),be=c(de,!0);s(de);var fe=u(de,2);{var Ce=ke=>{var xe=Kh(),ge=c(xe);zc(ge,{class:"size-3"});var De=u(ge);s(xe),N(()=>S(De,` ${r(ee).error??""}`)),g(ke,xe)};V(fe,ke=>{r(ee).error&&ke(Ce)})}s(L),N((ke,xe)=>{S(he,r(ee).table),S(J,r(ee).row),S(X,r(ee).col),S(z,ke),S(re,r(ee).newValue),S(be,xe)},[()=>String(r(ee).oldValue??"NULL"),()=>ws(r(ee))]),_e("click",M,()=>Pr.unstage(r(ee).id)),g($,L)}),s(F),g(te,F)};V(T,te=>{Pr.count===0?te(q):te(ne,-1)})}var oe=u(T,2);{var Q=te=>{var F=Uh(),$=c(F,!0);s(F),N(()=>S($,r(i))),g(te,F)};V(oe,te=>{r(i)&&te(Q)})}s(G);var ue=u(G,2);{var U=te=>{var F=Wh(),$=c(F);Un($,{class:"size-3 shrink-0"});var ee=u($,2),L=c(ee,!0);s(ee),s(F),N(()=>S(L,r(a)??"Server is read-only (file in use) — changes can’t be applied.")),g(te,F)};V(ue,te=>{r(n)&&te(U)})}var E=u(ue,2),I=c(E),_=u(I,2),A=u(_,2),R=c(A,!0);s(A),s(E),s(w),s(h),N(()=>{S(Y,`${Pr.count??""} staged · review before applying`),_.disabled=Pr.count===0,A.disabled=Pr.count===0||r(o)||r(n),Ne(A,"title",r(n)?r(a)??"Server is read-only — mutations are disabled.":void 0),S(R,r(o)?"Applying…":"Apply all")}),_e("click",O,function(...te){var F;(F=e.onClose)==null||F.apply(this,te)}),_e("click",I,function(...te){var F;(F=e.onClose)==null||F.apply(this,te)}),_e("click",_,d),_e("click",A,l),g(b,h)};V(v,b=>{e.open&&b(p)})}g(t,f),at()}nr(["click"]);const $h=["vector","queue","stats","diff","hypertable","graph","kv","document","table"],ud={table:"table",structured:"table",graph:"graph",node:"graph",edge:"graph",hypertable:"hypertable",timeseries:"hypertable","time-series":"hypertable",kv:"kv","key-value":"kv",vector:"vector",embedding:"vector",queue:"queue",stream:"queue",message:"queue",stats:"stats",statistic:"stats",statistics:"stats",metric:"stats",metrics:"stats",document:"document",doc:"document",time_series:"hypertable",key_value:"kv",mixed:"table",hll:"stats",sketch:"stats",filter:"stats",cuckoo_filter:"stats",diff:"diff",vcs_diff:"diff"};function Xh(t){return`'${t.replace(/'/g,"''")}'`}function ll(t){if(!t||t.length===0)return"table";const e=new Set;for(const n of t){const a=String(n).toLowerCase(),o=ud[a];o&&e.add(o)}for(const n of $h)if(e.has(n))return n;return"table"}function Zh(t){var o,i;const e=[];if(t.kind&&e.push(t.kind),t.capability&&e.push(t.capability),Array.isArray(t.capabilities))for(const l of t.capabilities)typeof l=="string"&&e.push(l);const n=(o=t.schema)==null?void 0:o.kind;typeof n=="string"&&e.push(n);const a=(i=t.schema)==null?void 0:i.capability;return typeof a=="string"&&e.push(a),e}function Qh(t){return typeof t!="string"?null:ud[t.toLowerCase()]??null}async function cl(t,e){const n=e.replace(/[^A-Za-z0-9_./-]/g,"");for(const a of[`HLL INFO ${n}`,`SKETCH INFO ${n}`,`FILTER INFO ${n}`])try{if((await t.query(a)).ok)return"stats"}catch{}return null}function Jh(t){var a,o,i,l;const e=new Set((((a=t.result)==null?void 0:a.columns)??[]).map(d=>d.toLowerCase())),n=(l=(i=(o=t.result)==null?void 0:o.records)==null?void 0:i[0])==null?void 0:l.values;if(n)for(const d of Object.keys(n))e.add(d.toLowerCase());return[...e]}function eb(t){var l,d,f;const e=Jh(t),n=v=>e.includes(v),a=v=>v.some(n),o=(f=(d=(l=t.result)==null?void 0:l.records)==null?void 0:d[0])==null?void 0:f.values,i=(o==null?void 0:o.kind)??(o==null?void 0:o.red_kind)??(o==null?void 0:o.red_entity_type);return i==="node"||i==="edge"||i==="graph"?"graph":i==="document"?"document":i==="kv"||n("key")&&n("value")?"kv":a(["message","payload","body"])&&a(["message_id","state","status","consumer","delivery_state"])?"queue":a(["timestamp","time","ts","event_time","bucket"])&&a(["value","count","metric"])?"hypertable":a(["metric","stat","name","table"])&&a(["value","count","total","avg","rate","row_count","page_count","cardinality","memory_bytes"])?"stats":null}async function fd(t,e,n={}){var a,o,i,l,d,f,v;if(n.useMetadata)try{const p=await t.collection(e),b=Zh(p);if(b.length>0)return ll(b)}catch{}try{const b=(l=(i=(o=(a=(await t.query(`SELECT model FROM red.collections WHERE name = ${Xh(e)} LIMIT 1`)).result)==null?void 0:a.records)==null?void 0:o[0])==null?void 0:i.values)==null?void 0:l.model,h=Qh(b);if(h&&h!=="table")return h;if(typeof b=="string"&&b.toLowerCase()==="mixed"){const w=await cl(t,e);if(w)return w}}catch{}try{const p=e.replace(/[^A-Za-z0-9_./-]/g,""),b=await t.query(`SELECT * FROM ${p} LIMIT 1`),h=[];b.capability&&h.push(b.capability);const w=(v=(f=(d=b.result)==null?void 0:d.records)==null?void 0:f[0])==null?void 0:v.values,k=w?w.red_capabilities:void 0;if(Array.isArray(k))for(const P of k)typeof P=="string"&&h.push(P);else if(typeof k=="string")for(const P of k.split(/[,\s]+/))P&&h.push(P);const C=ll(h);return C!=="table"?C:eb(b)??"table"}catch{return await cl(t,e)??"table"}}const bi={table:{glyph:"▦",label:"Table"},graph:{glyph:"◇",label:"Graph"},hypertable:{glyph:"⊞",label:"Hypertable"},kv:{glyph:"⋮",label:"Key-value"},vector:{glyph:"→",label:"Vector"},queue:{glyph:"≡",label:"Queue"},stats:{glyph:"◔",label:"Stats"},diff:{glyph:"⇄",label:"Diff"},document:{glyph:"¶",label:"Document"}},tb=/^red[._]/i;function rb(t){return tb.test(t)}var nb=x('<span class="font-mono text-[10px] text-fg-3"> </span>'),ab=x('<div class="p-3 flex flex-col items-start gap-2 text-[12px] text-fg-3 font-mono leading-relaxed"><!> <span class="text-fg-1">Locked.</span> <span>Enter your master password to load the schema.</span></div>'),ob=x('<div class="p-3 flex flex-col items-start gap-2 text-[12px] text-fg-3 font-mono leading-relaxed"><!> <span>No schema to show.</span> <span>Connect to a reddb instance to inspect collections.</span></div>'),ib=x(`<div class="p-3 text-[12px] text-fg-3 font-mono leading-relaxed"><div class="text-fg-2">Couldn't load collections.</div> <div class="mt-1 break-words"> </div></div>`),sb=x('<div class="h-5 rounded border border-line-1 bg-bg-1 px-1.5 motion-safe:animate-pulse"></div>'),lb=x('<li class="flex h-7 items-center gap-2 px-3"><div class="h-4 w-4 rounded bg-bg-2 motion-safe:animate-pulse"></div> <div class="h-3 rounded bg-bg-2 motion-safe:animate-pulse"></div></li>'),cb=x('<div class="schema-skeleton" aria-busy="true" aria-label="Loading schema"><div class="p-2 border-b border-line-1 grid gap-2"><div class="flex items-center gap-1.5 h-7 rounded border border-line-1 bg-bg-0 px-2"><!> <div class="h-3 w-32 rounded bg-bg-2 motion-safe:animate-pulse"></div></div> <div class="flex flex-wrap gap-1"></div></div> <ul class="py-1" role="presentation"></ul></div>'),db=x('<div class="p-3 flex flex-col items-start gap-2 text-[12px] text-fg-3 font-mono leading-relaxed"><span class="text-fg-2">No user collections.</span> <span>Seed the instance to populate the schema.</span> <code class="px-2 py-1 bg-bg-2 border border-line-1 rounded text-[11px]"> </code></div>'),ub=x('<button type="button" class="text-fg-3 hover:text-fg-1 cursor-pointer" aria-label="Clear collection search"><!></button>'),fb=x('<button type="button"> </button>'),vb=x('<li class="px-3 py-2 font-mono text-[12px] text-fg-3">No matching collections.</li>'),gb=x('<li><a><span class="inline-block w-4 text-center text-fg-3" aria-hidden="true"> </span> <span class="truncate"> </span> <span class="sr-only"> </span></a></li>'),pb=x('<div class="p-2 border-b border-line-1 grid gap-2"><div class="flex items-center gap-1.5 h-7 rounded border border-line-1 bg-bg-0 px-2 text-[11px] font-mono"><!> <input type="text" placeholder="search collections…" class="min-w-0 flex-1 bg-transparent text-fg-1 outline-none placeholder:text-fg-3"/> <!></div> <div class="flex flex-wrap gap-1"><button type="button"> </button> <!></div></div> <ul class="py-1" role="list"><!> <!></ul>',1),hb=x('<div class="px-3 py-2 border-b border-line-1 flex items-center justify-between text-fg-3"><div class="flex items-center gap-2"><!> <span class="type-label">Schema</span></div> <!></div> <!>',1);function bb(t,e){nt(e,!0);const n=xa(),a=y(()=>n.collection);let o=me(jt([])),i=me(!1),l=me(null),d=me(""),f=me("all");const v=Array.from({length:10},(I,_)=>_),p=Array.from({length:4},(I,_)=>_),b=y(()=>Be.connected),h=y(()=>Be.active.url),w=y(()=>{const I=new Map;for(const _ of r(o))I.set(_.capability,(I.get(_.capability)??0)+1);return[...I.entries()].sort((_,A)=>_[0].localeCompare(A[0]))}),k=y(()=>{const I=r(d).trim().toLowerCase();return r(o).filter(_=>{if(r(f)!=="all"&&_.capability!==r(f))return!1;if(!I)return!0;const A=bi[_.capability];return _.name.toLowerCase().includes(I)||A.label.toLowerCase().includes(I)})});async function C(){const I=Be.client;if(!I||!r(b)){m(o,[],!0);return}m(i,!0),m(l,null);const _=r(h);try{const R=(await St.track("schema · list collections",()=>I.collections())).filter(F=>!rb(F)).sort();m(o,R.map(F=>({name:F,capability:"table"})),!0);const te=R.map(F=>St.track(`schema · probe ${F}`,async()=>{const $=await fd(I,F);_===r(h)&&m(o,r(o).map(ee=>ee.name===F?{...ee,capability:$}:ee),!0)}));await Promise.all(te)}catch(A){m(l,A.message,!0),m(o,[],!0)}finally{m(i,!1)}}Lt(()=>{xr.locked||(r(b),r(h),C())});var P=hb(),Y=ze(P),O=c(Y),Z=c(O);Po(Z,{class:"size-3.5"}),Se(2),s(O);var G=u(O,2);{var T=I=>{var _=nb(),A=c(_,!0);s(_),N(()=>S(A,r(o).length)),g(I,_)};V(G,I=>{r(b)&&r(o).length>0&&I(T)})}s(Y);var q=u(Y,2);{var ne=I=>{var _=ab(),A=c(_);Un(A,{class:"size-4 text-primary-text"}),Se(4),s(_),g(I,_)},oe=I=>{var _=ob(),A=c(_);Kc(A,{class:"size-4 text-fg-3"}),Se(4),s(_),g(I,_)},Q=I=>{var _=ib(),A=u(c(_),2),R=c(A,!0);s(A),s(_),N(()=>S(R,r(l))),g(I,_)},ue=I=>{var _=cb(),A=c(_),R=c(A),te=c(R);Gr(te,{class:"size-3 text-fg-3"}),Se(2),s(R);var F=u(R,2);$e(F,20,()=>p,ee=>ee,(ee,L)=>{var H=sb();N(()=>yr(H,`width: ${L===0?42:28+L*8}px`)),g(ee,H)}),s(F),s(A);var $=u(A,2);$e($,20,()=>v,ee=>ee,(ee,L)=>{var H=lb(),j=u(c(H),2);s(H),N(()=>yr(j,`width: ${L%3===0?132:L%3===1?96:164}px`)),g(ee,H)}),s($),s(_),g(I,_)},U=I=>{var _=db(),A=u(c(_),4),R=c(A);s(A),s(_),N(()=>S(R,`./scripts/seed.sh ${r(h)??""}`)),g(I,_)},E=I=>{var _=pb(),A=ze(_),R=c(A),te=c(R);Gr(te,{class:"size-3 text-fg-3"});var F=u(te,2);Xt(F);var $=u(F,2);{var ee=X=>{var M=ub(),K=c(M);Ar(K,{class:"size-3"}),s(M),_e("click",M,()=>m(d,"")),g(X,M)};V($,X=>{r(d)&&X(ee)})}s(R);var L=u(R,2),H=c(L),j=c(H);s(H);var le=u(H,2);$e(le,17,()=>r(w),([X,M])=>X,(X,M)=>{var K=y(()=>Qr(r(M),2));let D=()=>r(K)[0],z=()=>r(K)[1];const B=y(()=>bi[D()]);var re=fb(),de=c(re);s(re),N(be=>{Ne(re,"title",r(B).label),Pe(re,1,be),S(de,`${r(B).glyph??""} ${z()??""}`)},[()=>Ve(["h-5 rounded border px-1.5 font-mono text-[10px] cursor-pointer transition-colors",r(f)===D()?"border-accent/40 bg-accent/10 text-primary-text":"border-line-1 text-fg-3 hover:text-fg-1 hover:border-line-2"].join(" "))]),_e("click",re,()=>m(f,D(),!0)),g(X,re)}),s(L),s(A);var he=u(A,2),ie=c(he);{var J=X=>{var M=vb();g(X,M)};V(ie,X=>{r(k).length===0&&X(J)})}var W=u(ie,2);$e(W,17,()=>r(k),X=>X.name,(X,M)=>{const K=y(()=>bi[r(M).capability]),D=y(()=>r(M).name===r(a)),z=y(()=>({view:"collection",collection:r(M).name,subpage:za(r(M).capability)}));var B=gb(),re=c(B),de=c(re),be=c(de,!0);s(de);var fe=u(de,2),Ce=c(fe,!0);s(fe);var ke=u(fe,2),xe=c(ke,!0);s(ke),s(re),s(B),N((ge,De)=>{Ne(re,"href",ge),Ne(re,"aria-current",r(D)?"page":void 0),Ne(re,"title",`${r(K).label} · ${r(M).name}`),Pe(re,1,De),S(be,r(K).glyph),S(Ce,r(M).name),S(xe,r(K).label)},[()=>n.href(r(z)),()=>Ve(["w-full flex items-center gap-2 px-3 py-1 font-mono text-[12px] no-underline transition-colors",r(D)?"bg-bg-1 text-fg-0":"text-fg-2 hover:bg-bg-1 hover:text-fg-0"].join(" "))]),_e("click",re,ge=>n.go(r(z),ge)),g(X,B)}),s(he),N(X=>{Pe(H,1,X),S(j,`all ${r(o).length??""}`)},[()=>Ve(["h-5 rounded border px-1.5 font-mono text-[10px] cursor-pointer transition-colors",r(f)==="all"?"border-accent/40 bg-accent/10 text-primary-text":"border-line-1 text-fg-3 hover:text-fg-1 hover:border-line-2"].join(" "))]),Sr(F,()=>r(d),X=>m(d,X)),_e("click",H,()=>m(f,"all")),g(I,_)};V(q,I=>{xr.locked?I(ne):r(b)?r(l)?I(Q,2):r(i)&&r(o).length===0?I(ue,3):r(o).length===0?I(U,4):I(E,-1):I(oe,1)})}g(t,P),at()}nr(["click"]);function xb(){return Math.random().toString(36).slice(2,10)}var Za,Qa,Ja;class mb{constructor(){je(this,Za,me(jt([])));je(this,Qa,me(null));je(this,Ja,y(()=>this.tabs.find(e=>e.id===this.activeId)??null))}get tabs(){return r(pe(this,Za))}set tabs(e){m(pe(this,Za),e,!0)}get activeId(){return r(pe(this,Qa))}set activeId(e){m(pe(this,Qa),e,!0)}get active(){return r(pe(this,Ja))}set active(e){m(pe(this,Ja),e)}open(e,n=!1){if(!n){const o=this.tabs.find(i=>i.kind===e.kind&&i.key===e.key);if(o){const i={...o,...e,id:o.id};return this.tabs=this.tabs.map(l=>l===o?i:l),this.activeId=o.id,i}}const a={...e,id:xb()};return this.tabs=[...this.tabs,a],this.activeId=a.id,a}focus(e){this.tabs.some(n=>n.id===e)&&(this.activeId=e)}close(e,n){const a=this.tabs.findIndex(i=>i.id===e);if(a<0)return;const o=this.activeId===e;if(this.tabs=this.tabs.filter(i=>i.id!==e),o)if(n&&this.tabs.some(i=>i.id===n))this.activeId=n;else if(this.tabs.length===0)this.activeId=null;else{const i=this.tabs[Math.max(0,a-1)];this.activeId=(i==null?void 0:i.id)??null}}rename(e,n){this.tabs=this.tabs.map(a=>a.id===e?{...a,label:n}:a)}setOverride(e,n){this.tabs=this.tabs.map(a=>a.id===e?{...a,overrideCapability:n}:a)}setShowSystem(e,n){this.tabs=this.tabs.map(a=>a.id===e?{...a,showSystemColumns:n}:a)}hydrate(e,n){this.tabs=e,this.activeId=n}clear(){this.tabs=[],this.activeId=null}}Za=new WeakMap,Qa=new WeakMap,Ja=new WeakMap;const Kt=new mb;function _b(){return{sql:"",result:null,error:null,running:!1,runningStartedAt:null}}function yb(t){const e=t.replace(/\s+/g," ").trim();return e.length<=80?`query · ${e}`:`query · ${e.slice(0,79).trimEnd()}…`}function wb(t){return t instanceof DOMException&&t.name==="AbortError"||t instanceof Error&&t.name==="AbortError"}function kb(t){if(t<1e3)return`${t}ms`;if(t<6e4)return`${(t/1e3).toFixed(1)}s`;const e=Math.floor(t/6e4),n=Math.floor(t%6e4/1e3);return`${e}m ${n.toString().padStart(2,"0")}s`}var eo;class Sb{constructor(){je(this,eo,me(jt({})));qt(this,"counter",0);qt(this,"executor",null);qt(this,"runSeq",0);qt(this,"inFlight",new Map)}get states(){return r(pe(this,eo))}set states(e){m(pe(this,eo),e,!0)}setExecutor(e){this.executor=e}nextLabel(){return this.counter+=1,`Query ${this.counter}`}ensure(e){return this.states[e]||(this.states[e]=_b()),this.states[e]}setSql(e,n){const a=this.ensure(e);a.sql=n}get(e){return this.states[e]}has(e){return this.states[e]!==void 0}remove(e){this.cancel(e),delete this.states[e]}isDirty(e){const n=this.states[e];return n?n.sql.trim().length>0:!1}async run(e){var l,d,f;const n=this.ensure(e);if(n.running)return;if(!this.executor){n.error="No connection — connect to a reddb instance first.",n.result=null;return}const a=n.sql.trim();if(!a){n.error="Empty query.",n.result=null;return}const o=new AbortController,i=++this.runSeq;this.inFlight.set(e,{token:i,controller:o}),n.running=!0,n.runningStartedAt=Date.now(),n.error=null;try{const v=await St.track(yb(a),()=>this.executor(a,{signal:o.signal}));if(((l=this.inFlight.get(e))==null?void 0:l.token)!==i)return;n.result=v,n.error=v.ok?null:v.error??"Query failed."}catch(v){if(((d=this.inFlight.get(e))==null?void 0:d.token)!==i)return;if(o.signal.aborted||wb(v)){n.error=null;return}n.error=v.message,n.result=null}finally{((f=this.inFlight.get(e))==null?void 0:f.token)===i&&(this.inFlight.delete(e),n.running=!1,n.runningStartedAt=null)}}cancel(e){const n=this.inFlight.get(e);if(!n)return!1;this.inFlight.delete(e),n.controller.abort();const a=this.states[e];return a&&(a.running=!1,a.runningStartedAt=null,a.error=null),!0}clear(){for(const e of this.inFlight.values())e.controller.abort();this.inFlight.clear(),this.states={},this.counter=0,this.executor=null,this.runSeq=0}}eo=new WeakMap;const Ur=new Sb;function Cb(t,e,n=24){const a=t.trim();if(!a)return e;const o=a.match(/^\s*select\s+([\s\S]+?)\s+from\b/i);if(!o)return e;const i=o[1].replace(/\s+/g," ").trim();return!i||i==="*"?e:i.length<=n?i:i.slice(0,n-1).trimEnd()+"…"}function Bi(t){return t.replace(/[^A-Za-z0-9_./-]/g,"")}function dl(t,e){const n=Bi(t);return e==="kv"?`LIST KV ${n} LIMIT 200`:`SELECT * FROM ${n} LIMIT 200`}function Eb(t){return`'${t.replace(/'/g,"''")}'`}function Mb(t){return["SELECT name, model, schema_mode, entities, segments, indices,","in_memory_bytes, on_disk_bytes, internal, tenant_id, queue_mode,","dimension, metric, session_key, session_gap_ms","FROM red.collections",`WHERE name = ${Eb(t)}`,"LIMIT 1"].join(" ")}function In(t){return typeof t=="string"&&t.length>0?t:void 0}function An(t){if(typeof t=="number"&&Number.isFinite(t))return t;if(typeof t=="string"&&t.trim()!==""){const e=Number(t);if(Number.isFinite(e))return e}}function zb(t){if(typeof t=="boolean")return t;if(typeof t=="string"){if(t.toLowerCase()==="true")return!0;if(t.toLowerCase()==="false")return!1}}function Nb(t){if(!t)return null;const e=t.values,n=In(e.name);return n?{name:n,model:In(e.model),schemaMode:In(e.schema_mode),entities:An(e.entities),segments:An(e.segments),indices:An(e.indices),inMemoryBytes:An(e.in_memory_bytes),onDiskBytes:An(e.on_disk_bytes),internal:zb(e.internal),tenantId:In(e.tenant_id),queueMode:In(e.queue_mode),dimension:An(e.dimension),metric:In(e.metric),sessionKey:In(e.session_key),sessionGapMs:An(e.session_gap_ms)}:null}function zo(t){return t===void 0?"n/a":new Intl.NumberFormat("en-US").format(t)}function ul(t){if(t===void 0)return"n/a";if(t===0)return"0 B";const e=["B","KiB","MiB","GiB","TiB"],n=Math.min(Math.floor(Math.log(t)/Math.log(1024)),e.length-1),a=t/1024**n,o=a>=100||n===0?0:1;return`${a.toFixed(o)} ${e[n]}`}function Tb(t){return t===void 0?null:t<1e3?`${t} ms`:t<6e4?`${(t/1e3).toFixed(t>=1e4?0:1)} s`:t<36e5?`${(t/6e4).toFixed(t>=6e5?0:1)} min`:`${(t/36e5).toFixed(t>=36e6?0:1)} h`}function fl(t){const e=[];t.schemaMode&&e.push(t.schemaMode),t.dimension!==void 0&&e.push(`${zo(t.dimension)}d`),t.metric&&e.push(t.metric),t.queueMode&&e.push(t.queueMode),t.sessionKey&&e.push(`session: ${t.sessionKey}`);const n=Tb(t.sessionGapMs);return n&&e.push(`gap ${n}`),t.internal&&e.push("internal"),e}class Ib{constructor(){qt(this,"renderers",[])}register(e){const n=this.renderers.findIndex(a=>a.capability===e.capability);n>=0?this.renderers[n]=e:this.renderers.push(e)}unregister(e){this.renderers=this.renderers.filter(n=>n.capability!==e)}list(){return this.renderers}has(e){return this.renderers.some(n=>n.capability===e)}pick(e,n,a){if(a){const l=this.renderers.find(d=>d.capability===a);if(l)return l}if(e){const l=this.renderers.find(d=>d.capability===e);if(l&&l.renders(n))return l}const o=this.renderers.find(l=>l.renders(n));if(o)return o;const i=this.renderers.find(l=>l.capability==="table");if(!i)throw new Error("No renderer matched and no table fallback is registered");return i}}const en=new Ib,vd={name:"columns-3",size:24,node:[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2"}],["path",{d:"M9 3v18"}],["path",{d:"M15 3v18"}]],aliases:["panels-left-right"]};vd.node;function Ab(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return vd}}))}const gd={name:"funnel",size:24,node:[["path",{d:"M10 20a1 1 0 0 0 .553.895l2 1A1 1 0 0 0 14 21v-7a2 2 0 0 1 .517-1.341L21.74 4.67A1 1 0 0 0 21 3H3a1 1 0 0 0-.742 1.67l7.225 7.989A2 2 0 0 1 10 14z"}]],aliases:["filter"]};gd.node;function pd(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return gd}}))}const Lb=80,hd=["rid","collection","kind","tenant","created_at","updated_at"],Ob=new Set(hd);function Ui(t){return Ob.has(t.toLowerCase())}function Pb(t,e={}){const n=t.result.columns,a=n.filter(v=>!v.startsWith("red_")&&v!=="body"),o=a.filter(v=>!Ui(v)),i=o.find(v=>v.toLowerCase()==="id"),l=o.filter(v=>v!==i),d=[i,...l].filter(v=>!!v);return e.showSystem?[...hd.filter(v=>a.includes(v)),...d]:d.length>0?d:n}function vl(t){const e=t.toLowerCase();return e==="rid"?"rid":e==="id"?"id":null}function Db(t){return t.find(e=>e.toLowerCase()==="rid")??t.find(e=>e.toLowerCase()==="id")??t.find(e=>e.toLowerCase().endsWith("_id"))??t[0]??null}function Rb(t){return t==null?"":typeof t=="object"?JSON.stringify(t):String(t)}function Vb(t){return t==null}function Hb(t,e=Lb){return t.result.records.slice(0,e).map(n=>n.values)}var Fb=x('<div class="flex-1 grid place-items-center text-fg-3 text-[12px] font-mono p-6"> </div>'),qb=x('<button type="button" class="inline-flex items-center gap-1 h-6 px-2 rounded border border-line-1 text-fg-3 hover:text-fg-1 hover:border-line-2 cursor-pointer" title="Return to the original result"><!> reset</button>'),Kb=x('<button type="button" title="Build a SELECT for this collection"><!> <span>select</span></button> <button type="button" class="inline-flex items-center gap-1 h-6 px-2 rounded border border-line-1 text-fg-3 hover:text-fg-1 hover:border-line-2 cursor-pointer disabled:opacity-40 disabled:cursor-not-allowed" title="Run the current SELECT against reddb"><!> run</button> <!> <div class="h-4 w-px bg-line-1"></div>',1),jb=x('<span class="text-[9px] px-1 rounded bg-primary text-on-primary"> </span>'),Bb=x('<button type="button" class="inline-flex items-center gap-1 h-6 px-2 rounded border border-line-1 text-fg-3 hover:text-fg-1 hover:border-line-2 cursor-pointer" title="Clear all filters"><!> clear</button>'),Ub=x('<label><input type="checkbox" class="sr-only"/> </label>'),Wb=x('<span class="text-warn"> </span>'),Gb=x('<div class="border-b border-line-1 bg-bg-1/20 px-3 py-2 text-[11px] font-mono"><div class="mb-2 flex items-center gap-2"><span class="text-fg-3">columns:</span> <button type="button" class="rounded border border-line-1 px-1.5 py-0.5 text-fg-3 hover:text-fg-1 hover:border-line-2">all</button> <button type="button" class="rounded border border-line-1 px-1.5 py-0.5 text-fg-3 hover:text-fg-1 hover:border-line-2">none</button> <label class="ml-auto inline-flex items-center gap-1.5 text-fg-3">limit <select class="bg-bg-1 text-fg-1 border border-line-1 rounded px-1 py-0.5"><option>50</option><option>100</option><option>200</option><option>500</option><option>1k</option></select></label></div> <div class="flex flex-wrap gap-1"></div> <div class="mt-2 flex items-center gap-2 text-fg-3"><code class="min-w-0 flex-1 truncate rounded border border-line-1 bg-bg-0 px-2 py-1 text-fg-1"> </code> <!></div></div>'),Yb=x('<div class="flex-1 grid place-items-center text-fg-3 text-[12px] font-mono p-6">Empty result.</div>'),$b=x(`<span class="ml-1 text-[9px] px-1 py-0.5 rounded bg-primary text-on-primary uppercase tracking-wider font-semibold" title="System-assigned row id — reddb's canonical address">sys</span>`),Xb=x('<span class="ml-1 text-[9px] px-1 py-0.5 rounded border border-line-2 text-fg-3 uppercase tracking-wider" title="Reserved system field — written by reddb">sys</span>'),Zb=x('<span class="ml-1 text-[9px] px-1 py-0.5 rounded border border-line-2 text-fg-2 uppercase tracking-wider" title="User-defined identifier">pk</span>'),Qb=x('<span class="ml-1 text-[10px] text-fg-3 uppercase tracking-wide" title="Inferred primary key">pk</span>'),Jb=x("<th><span> </span> <!></th>"),e1=x('<button type="button" class="absolute right-1 top-1/2 -translate-y-1/2 text-fg-3 hover:text-fg-1 cursor-pointer"><!></button>'),t1=x('<th class="px-1 py-1"><div class="relative"><input type="text" class="w-full h-6 pl-2 pr-5 bg-bg-1 text-fg-1 border border-line-1 rounded text-[11px] font-mono outline-none focus:border-accent placeholder:text-fg-3"/> <!></div></th>'),r1=x('<tr class="border-b border-line-1 bg-bg-0"><th class="px-2 py-1"></th><!></tr>'),n1=x('<input class="w-full bg-bg-2 text-fg-1 border border-accent/60 rounded px-1 py-0.5 outline-none"/>'),a1=x('<span class="text-fg-3 italic">NULL</span>'),o1=x('<span class="block truncate"> </span>'),i1=x("<td><!></td>"),s1=x('<tr class="border-b border-line-1/60 hover:bg-bg-1/40"><td class="px-2 py-1 text-right text-fg-3 select-none"></td><!></tr>'),l1=x('· <span class="text-fg-2"> </span>',1),c1=x('<span>· pk <code class="text-fg-2"> </code></span>'),d1=x('<div class="flex-1 overflow-auto"><table class="w-full border-collapse text-[12px] font-mono"><thead class="sticky top-0 bg-bg-1 z-10"><tr class="border-b border-line-1 text-fg-3"><th class="px-2 py-1.5 text-right w-10 font-normal">#</th><!></tr><!></thead><tbody></tbody></table></div> <div class="border-t border-line-1 px-3 py-1.5 text-[11px] font-mono text-fg-3 flex items-center gap-3"><span> <!> <!></span> <span>· double-click a cell to stage edit</span> <!></div>',1),u1=x('<div class="border-b border-line-1 px-3 py-1.5 flex items-center gap-2 text-[11px] font-mono bg-bg-1/40"><!> <button type="button"><!> <span>filters</span> <!></button> <!> <div class="ml-auto text-fg-3"> <!> rows</div></div> <!> <!>',1),f1=x('<div class="flex h-full flex-col text-fg-1"><!></div>');function v1(t,e){nt(e,!0);let n=Re(e,"showSystem",3,!1),a=me(null);const o=y(()=>r(a)??e.result),i=y(()=>Hb(r(o))),l=y(()=>Pb(r(o),{showSystem:n()})),d=y(()=>Db(r(l))),f=y(()=>r(l).filter(L=>/^[A-Za-z_][A-Za-z0-9_]*$/.test(L)));let v=me(!1),p=me(jt({})),b=me(200),h=me(!1),w=me(null);Lt(()=>{const L={...r(p)};let H=!1;for(const j of r(f))L[j]===void 0&&(L[j]=!0,H=!0);for(const j of Object.keys(L))r(f).includes(j)||(delete L[j],H=!0);H&&m(p,L,!0)});let k=me(jt({})),C=me(!1);const P=y(()=>{const L=Object.entries(r(k)).filter(([,H])=>H.trim().length>0);return L.length===0?r(i):r(i).filter(H=>L.every(([j,le])=>{const he=H[j];return he==null?!1:String(he).toLowerCase().includes(le.toLowerCase())}))}),Y=y(()=>r(P)),O=y(()=>Object.values(r(k)).filter(L=>L.trim().length>0).length);function Z(L){const H={...r(k)};delete H[L],m(k,H,!0)}function G(){m(k,{},!0)}function T(){if(!e.collection)return null;const L=e.collection.replace(/[^A-Za-z0-9_./-]/g,"");return L.length>0?L:null}function q(){const L=r(f).filter(H=>r(p)[H]);return L.length===0||L.length===r(f).length?"*":L.join(", ")}function ne(){const L=T();return L?`SELECT ${q()} FROM ${L} LIMIT ${r(b)}`:null}async function oe(){const L=Be.client,H=ne();if(!(!L||!H)){m(h,!0),m(w,null);try{const j=await St.track(`${e.collection} · ${H}`,()=>L.query(H));if(!j.ok){m(w,j.error??"query failed",!0);return}m(a,j,!0),m(k,{},!0),m(ue,null)}catch(j){m(w,j.message,!0)}finally{m(h,!1)}}}function Q(){m(a,null),m(k,{},!0),m(w,null)}let ue=me(null),U=me("");function E(L,H,j){if(r(ue)||!e.collection||Be.readOnly)return;m(ue,{row:L,col:H},!0);const le=Pr.find(e.collection,L,H);m(U,le?le.newValue:String(j??""),!0)}function I(){var he;if(!r(ue)||!e.collection)return;const{row:L,col:H}=r(ue),j=(he=r(Y)[L])==null?void 0:he[H],le=r(U);if(String(j??"")!==le)Pr.stage(e.collection,L,H,j,le);else{const ie=Pr.find(e.collection,L,H);ie&&Pr.unstage(ie.id)}m(ue,null)}function _(){m(ue,null)}function A(L){L.focus(),L.select()}function R(L,H,j){if(!e.collection)return{value:j,staged:!1};const le=Pr.find(e.collection,L,H);return le?{value:le.newValue,staged:!0}:{value:j,staged:!1}}var te=f1(),F=c(te);{var $=L=>{var H=Fb(),j=c(H,!0);s(H),N(()=>S(j,r(o).error??"Query failed.")),g(L,H)},ee=L=>{var H=u1(),j=ze(H),le=c(j);{var he=xe=>{var ge=Kb(),De=ze(ge),ce=c(De);Ab(ce,{class:"size-3"}),Se(2),s(De);var se=u(De,2),ve=c(se);{var Ae=Ee=>{cn(Ee,{class:"size-3 animate-spin"})},Le=Ee=>{Jo(Ee,{class:"size-3"})};V(ve,Ee=>{r(h)?Ee(Ae):Ee(Le,-1)})}Se(),s(se);var we=u(se,2);{var Ie=Ee=>{var Me=qb(),Te=c(Me);bv(Te,{class:"size-3"}),Se(),s(Me),_e("click",Me,Q),g(Ee,Me)};V(we,Ee=>{r(a)&&Ee(Ie)})}Se(2),N(Ee=>{Ne(De,"aria-pressed",r(v)),Pe(De,1,Ee),se.disabled=r(h)||!Be.connected},[()=>Ve(["inline-flex items-center gap-1.5 h-6 px-2 rounded border transition-colors cursor-pointer",r(v)?"border-accent/40 bg-accent/10 text-primary-text":"border-line-1 text-fg-3 hover:text-fg-1 hover:border-line-2"].join(" "))]),_e("click",De,()=>m(v,!r(v))),_e("click",se,oe),g(xe,ge)};V(le,xe=>{e.collection&&xe(he)})}var ie=u(le,2),J=c(ie);pd(J,{class:"size-3"});var W=u(J,4);{var X=xe=>{var ge=jb(),De=c(ge,!0);s(ge),N(()=>S(De,r(O))),g(xe,ge)};V(W,xe=>{r(O)>0&&xe(X)})}s(ie);var M=u(ie,2);{var K=xe=>{var ge=Bb(),De=c(ge);Ar(De,{class:"size-3"}),Se(),s(ge),_e("click",ge,G),g(xe,ge)};V(M,xe=>{r(O)>0&&xe(K)})}var D=u(M,2),z=c(D,!0),B=u(z);{var re=xe=>{var ge=bt();N(De=>S(ge,`of ${De??""}`),[()=>r(i).length.toLocaleString()]),g(xe,ge)};V(B,xe=>{r(O)>0&&xe(re)})}Se(),s(D),s(j);var de=u(j,2);{var be=xe=>{var ge=Gb(),De=c(ge),ce=u(c(De),2),se=u(ce,2),ve=u(se,2),Ae=u(c(ve)),Le=c(Ae);Le.value=Le.__value=50;var we=u(Le);we.value=we.__value=100;var Ie=u(we);Ie.value=Ie.__value=200;var Ee=u(Ie);Ee.value=Ee.__value=500;var Me=u(Ee);Me.value=Me.__value=1e3,s(Ae);var Te;ea(Ae),s(ve),s(De);var Xe=u(De,2);$e(Xe,20,()=>r(f),He=>He,(He,Ue)=>{var ot=Ub(),ae=c(ot);Xt(ae);var tt=u(ae);s(ot),N(Ze=>{Pe(ot,1,Ze),Ma(ae,r(p)[Ue]??!1),S(tt,` ${Ue??""}`)},[()=>Ve(["inline-flex h-5 items-center gap-1 rounded border px-1.5 cursor-pointer",r(p)[Ue]?"border-accent/40 bg-accent/10 text-primary-text":"border-line-1 text-fg-3 hover:text-fg-1"].join(" "))]),_e("change",ae,Ze=>m(p,{...r(p),[Ue]:Ze.currentTarget.checked},!0)),g(He,ot)}),s(Xe);var Fe=u(Xe,2),Qe=c(Fe),lt=c(Qe,!0);s(Qe);var ct=u(Qe,2);{var Ke=He=>{var Ue=Wb(),ot=c(Ue,!0);s(Ue),N(()=>S(ot,r(w))),g(He,Ue)};V(ct,He=>{r(w)&&He(Ke)})}s(Fe),s(ge),N(He=>{Te!==(Te=r(b))&&(Ae.value=(Ae.__value=r(b))??"",ta(Ae,r(b))),S(lt,He)},[()=>ne()??"No collection selected"]),_e("click",ce,()=>{const He={};for(const Ue of r(f))He[Ue]=!0;m(p,He,!0)}),_e("click",se,()=>m(p,{},!0)),_e("change",Ae,He=>m(b,Number(He.currentTarget.value),!0)),g(xe,ge)};V(de,xe=>{r(v)&&e.collection&&xe(be)})}var fe=u(de,2);{var Ce=xe=>{var ge=Yb();g(xe,ge)},ke=xe=>{var ge=d1(),De=ze(ge),ce=c(De),se=c(ce),ve=c(se),Ae=u(c(ve));$e(Ae,17,()=>r(l),gr,(He,Ue)=>{const ot=y(()=>vl(r(Ue))),ae=y(()=>Ui(r(Ue)));var tt=Jb(),Ze=c(tt),We=c(Ze,!0);s(Ze);var ut=u(Ze,2);{var Et=xt=>{var mt=$b();g(xt,mt)},Tt=xt=>{var mt=Xb();g(xt,mt)},Mt=xt=>{var mt=Zb();g(xt,mt)},Ct=xt=>{var mt=Qb();g(xt,mt)};V(ut,xt=>{r(ot)==="rid"?xt(Et):r(ae)?xt(Tt,1):r(ot)==="id"?xt(Mt,2):r(Ue)===r(d)&&xt(Ct,3)})}s(tt),N(xt=>{Pe(tt,1,xt),Pe(Ze,1,Ve(r(ot)||r(ae)?"font-semibold":"")),S(We,r(Ue))},[()=>Ve(["px-2 py-1.5 text-left font-normal whitespace-nowrap",r(ot)==="rid"?"bg-accent/5 text-fg-0":r(ae)?"bg-bg-1 text-fg-2":r(ot)==="id"?"text-fg-1":""].join(" "))]),g(He,tt)}),s(ve);var Le=u(ve);{var we=He=>{var Ue=r1(),ot=u(c(Ue));$e(ot,17,()=>r(l),gr,(ae,tt)=>{var Ze=t1(),We=c(Ze),ut=c(We);Xt(ut);var Et=u(ut,2);{var Tt=Mt=>{var Ct=e1(),xt=c(Ct);Ar(xt,{class:"size-3"}),s(Ct),N(()=>Ne(Ct,"aria-label",`Clear filter for ${r(tt)??""}`)),_e("click",Ct,()=>Z(r(tt))),g(Mt,Ct)};V(Et,Mt=>{var Ct;(Ct=r(k)[r(tt)])!=null&&Ct.length&&Mt(Tt)})}s(We),s(Ze),N(()=>Ne(ut,"placeholder",`filter ${r(tt)??""}…`)),Sr(ut,()=>r(k)[r(tt)],Mt=>r(k)[r(tt)]=Mt),g(ae,Ze)}),s(Ue),g(He,Ue)};V(Le,He=>{r(C)&&He(we)})}s(se);var Ie=u(se);$e(Ie,21,()=>r(Y),gr,(He,Ue,ot)=>{var ae=s1(),tt=c(ae);tt.textContent=ot+1;var Ze=u(tt);$e(Ze,17,()=>r(l),gr,(We,ut)=>{const Et=y(()=>r(Ue)[r(ut)]),Tt=y(()=>R(ot,r(ut),r(Et))),Mt=y(()=>{var it;return((it=r(ue))==null?void 0:it.row)===ot&&r(ue).col===r(ut)}),Ct=y(()=>vl(r(ut))),xt=y(()=>Ui(r(ut)));var mt=i1(),wt=c(mt);{var Ot=it=>{var dt=n1();Xt(dt),ps(()=>Sr(dt,()=>r(U),It=>m(U,It))),Vr(dt,It=>A==null?void 0:A(It)),Sn("blur",dt,I),_e("keydown",dt,It=>{It.key==="Enter"?I():It.key==="Escape"&&_()}),g(it,dt)},Zt=it=>{var dt=a1();g(it,dt)},pr=y(()=>Vb(r(Tt).value)),hr=it=>{var dt=o1(),It=c(dt,!0);s(dt),N(Bt=>S(It,Bt),[()=>Rb(r(Tt).value)]),g(it,dt)};V(wt,it=>{r(Mt)?it(Ot):r(pr)?it(Zt,1):it(hr,-1)})}s(mt),N(it=>{Pe(mt,1,it),Ne(mt,"title",r(Tt).staged?"Staged change — open Pending Changes to commit":void 0)},[()=>Ve(["px-2 py-1 max-w-[260px] truncate align-top",r(Ct)==="rid"?"bg-accent/5 text-primary-text font-semibold":r(xt)?"bg-bg-1 text-fg-2 font-mono":r(Ct)==="id"?"text-fg-0":"",r(Tt).staged&&!r(Mt)?"bg-warn/15 text-fg-1":""].join(" "))]),_e("dblclick",mt,()=>E(ot,r(ut),r(Et))),g(We,mt)}),s(ae),g(He,ae)}),s(Ie),s(ce),s(De);var Ee=u(De,2),Me=c(Ee),Te=c(Me),Xe=u(Te);{var Fe=He=>{var Ue=bt("· filtered");g(He,Ue)};V(Xe,He=>{r(O)>0&&He(Fe)})}var Qe=u(Xe,2);{var lt=He=>{var Ue=l1(),ot=u(ze(Ue)),ae=c(ot,!0);s(ot),N(()=>S(ae,e.collection)),g(He,Ue)};V(Qe,He=>{e.collection&&He(lt)})}s(Me);var ct=u(Me,4);{var Ke=He=>{var Ue=c1(),ot=u(c(Ue)),ae=c(ot,!0);s(ot),s(Ue),N(()=>S(ae,r(d))),g(He,Ue)};V(ct,He=>{r(d)&&He(Ke)})}s(Ee),N(()=>S(Te,`${r(Y).length??""} of ${r(o).record_count??""} rows `)),g(xe,ge)};V(fe,xe=>{r(o).result.records.length?xe(ke,-1):xe(Ce)})}N((xe,ge)=>{Ne(ie,"aria-pressed",r(C)),Ne(ie,"title",r(C)?"Hide column filters":"Show column filters"),Pe(ie,1,xe),S(z,ge)},[()=>Ve(["inline-flex items-center gap-1.5 h-6 px-2 rounded border transition-colors cursor-pointer",r(C)?"border-accent/40 bg-accent/10 text-primary-text":"border-line-1 text-fg-3 hover:text-fg-1 hover:border-line-2"].join(" ")),()=>r(Y).length.toLocaleString()]),_e("click",ie,()=>m(C,!r(C))),g(L,H)};V(F,L=>{r(o).ok?L(ee,-1):L($)})}s(te),g(t,te),at()}nr(["click","change","dblclick","keydown"]);const g1={capability:"table",renders:t=>!!(t!=null&&t.result)&&Array.isArray(t.result.columns),component:v1},p1={capability:"graph",renders:t=>mv(t),component:xv};function bd(t){return t.find(e=>e.toLowerCase()==="key")??t.find(e=>e.toLowerCase()==="k")??t.find(e=>/(^|_)key$/i.test(e))??null}function xd(t){return t.find(e=>e.toLowerCase()==="value")??t.find(e=>e.toLowerCase()==="v")??t.find(e=>/(^|_)value$/i.test(e))??null}function h1(t){const e=t.result.columns,n=bd(e),a=xd(e);return!n||!a?[]:t.result.records.map(o=>({key:String(o.values[n]??""),value:o.values[a]}))}function b1(t){var n;const e=((n=t.result)==null?void 0:n.columns)??[];return bd(e)!==null&&xd(e)!==null}function x1(t,e){const n={};for(const a of t){if(!a.key.startsWith(e))continue;const i=a.key.slice(e.length).replace(/^\/+/,"").split("/").filter(Boolean);if(i.length===0){n.$value=a.value;continue}let l=n;for(let d=0;d<i.length;d+=1){const f=i[d];if(d===i.length-1){const p=l[f];p&&typeof p=="object"&&!Array.isArray(p)?p.$value=a.value:l[f]=a.value;continue}const v=l[f];if(!v||typeof v!="object"||Array.isArray(v)){const p={};v!==void 0&&(p.$value=v),l[f]=p,l=p}else l=v}}return n}function m1(t){const e={name:"",fullKey:null,value:void 0,children:[]};for(const n of t){const a=n.key.split("/").filter(i=>i.length>0);if(a.length===0)continue;let o=e;a.forEach((i,l)=>{let d=o.children.find(f=>f.name===i);if(!d){d={name:i,fullKey:null,value:void 0,children:[]};const f=o.children.findIndex(v=>v.name>i);f<0?o.children.push(d):o.children.splice(f,0,d)}l===a.length-1&&(d.fullKey=n.key,d.value=n.value),o=d})}return e}function gl(t){return t==null?"null":typeof t=="object"?JSON.stringify(t):String(t)}const md={name:"braces",size:24,node:[["path",{d:"M8 3H7a2 2 0 0 0-2 2v5a2 2 0 0 1-2 2 2 2 0 0 1 2 2v5c0 1.1.9 2 2 2h1"}],["path",{d:"M16 21h1a2 2 0 0 0 2-2v-5c0-1.1.9-2 2-2a2 2 0 0 1-2-2V5a2 2 0 0 0-2-2h-1"}]],aliases:["curly-braces"]};md.node;function ca(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return md}}))}const _d={name:"list-tree",size:24,node:[["path",{d:"M8 5h13"}],["path",{d:"M13 12h8"}],["path",{d:"M13 19h8"}],["path",{d:"M3 10a2 2 0 0 0 2 2h3"}],["path",{d:"M3 5v12a2 2 0 0 0 2 2h3"}]]};_d.node;function _1(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return _d}}))}var y1=x('<span class="text-fg-3 ml-2"> </span>'),w1=x("<ul></ul>"),k1=x('<li><button type="button"><span class="text-fg-1"> </span> <!></button> <!></li>'),S1=x(`<div class="flex-1 grid place-items-center text-fg-3 text-[12px] font-mono p-6">No KV shape — expected <code>key</code> and <code>value</code> columns
|
|
4
|
-
(also accepts <code>*_key</code>/<code>*_value</code>).</div>`),C1=x('<button type="button" class="text-fg-3 hover:text-fg-1 cursor-pointer" aria-label="Clear prefix"><!></button>'),E1=x('· <span class="text-fg-2"> </span>',1),M1=x('<li class="px-3 py-2 text-fg-3">No keys match prefix.</li>'),z1=x('<div class="text-fg-3 mb-2"> </div> <pre class="text-fg-1 whitespace-pre-wrap break-all"> </pre>',1),N1=x('<div class="text-fg-3">Click a key to inspect.</div>'),T1=x('<div class="flex-1 grid grid-cols-[280px_1fr] min-h-0"><ul class="overflow-auto border-r border-line-1 text-[12px] font-mono py-1"><!></ul> <div class="overflow-auto p-3 text-[12px] font-mono"><!></div></div>'),I1=x('<div class="text-fg-3">No keys match prefix.</div>'),A1=x('<pre class="whitespace-pre text-fg-1"> </pre>'),L1=x('<div class="flex-1 overflow-auto p-3 text-[12px] font-mono"><!></div>'),O1=x('<div class="border-b border-line-1 px-3 py-1.5 flex items-center gap-2 text-[11px] font-mono bg-bg-1/40"><div class="inline-flex border border-line-2 rounded overflow-hidden"><button type="button"><!> Tree</button> <button type="button"><!> JSON</button></div> <div class="inline-flex items-center gap-1.5 border border-line-1 rounded px-2 py-1 bg-bg-0"><!> <input type="text" placeholder="key prefix…" class="bg-transparent text-fg-1 outline-none w-[220px] placeholder:text-fg-3"/> <!></div> <div class="ml-auto text-fg-3"> <!> keys <!></div></div> <!>',1),P1=x('<div class="flex h-full flex-col text-fg-1"><!></div>');function D1(t,e){nt(e,!0);const n=(C,P=Zr,Y=Zr)=>{var O=k1(),Z=c(O);let G,T;var q=c(Z),ne=c(q,!0);s(q);var oe=u(q,2);{var Q=E=>{var I=y1(),_=c(I,!0);s(I),N(A=>S(_,A),[()=>p(P().value)]),g(E,I)};V(oe,E=>{P().fullKey!==null&&E(Q)})}s(Z);var ue=u(Z,2);{var U=E=>{var I=w1();$e(I,21,()=>P().children,_=>_.name,(_,A)=>{n(_,()=>r(A),()=>Y()+1)}),s(I),g(E,I)};V(ue,E=>{P().children.length>0&&E(U)})}s(O),N(()=>{G=Pe(Z,1,"w-full text-left px-2 py-0.5 hover:bg-bg-1/60",null,G,{"text-primary-text":r(i)===P()}),T=yr(Z,"",T,{"padding-left":`${8+Y()*12}px`}),S(ne,P().name)}),_e("click",Z,()=>m(i,P(),!0)),g(C,O)};let a=me(""),o=me("tree"),i=me(null);const l=y(()=>h1(e.result)),d=y(()=>r(a).trim()?r(l).filter(C=>C.key.startsWith(r(a).trim())):r(l)),f=y(()=>m1(r(d))),v=y(()=>x1(r(l),r(a).trim()));function p(C){const P=gl(C);return P.length>60?P.slice(0,59)+"…":P}var b=P1(),h=c(b);{var w=C=>{var P=S1();g(C,P)},k=C=>{var P=O1(),Y=ze(P),O=c(Y),Z=c(O),G=c(Z);_1(G,{class:"size-3"}),Se(),s(Z);var T=u(Z,2),q=c(T);ca(q,{class:"size-3"}),Se(),s(T),s(O);var ne=u(O,2),oe=c(ne);Gr(oe,{class:"size-3 text-fg-3"});var Q=u(oe,2);Xt(Q);var ue=u(Q,2);{var U=L=>{var H=C1(),j=c(H);Ar(j,{class:"size-3"}),s(H),_e("click",H,()=>m(a,"")),g(L,H)};V(ue,L=>{r(a)&&L(U)})}s(ne);var E=u(ne,2),I=c(E,!0),_=u(I);{var A=L=>{var H=bt();N(j=>S(H,`of ${j??""}`),[()=>r(l).length.toLocaleString()]),g(L,H)};V(_,L=>{r(a)&&L(A)})}var R=u(_,2);{var te=L=>{var H=E1(),j=u(ze(H)),le=c(j,!0);s(j),N(()=>S(le,e.collection)),g(L,H)};V(R,L=>{e.collection&&L(te)})}s(E),s(Y);var F=u(Y,2);{var $=L=>{var H=T1(),j=c(H),le=c(j);{var he=K=>{var D=M1();g(K,D)},ie=K=>{var D=_t(),z=ze(D);$e(z,17,()=>r(f).children,B=>B.name,(B,re)=>{n(B,()=>r(re),()=>0)}),g(K,D)};V(le,K=>{r(f).children.length===0?K(he):K(ie,-1)})}s(j);var J=u(j,2),W=c(J);{var X=K=>{var D=z1(),z=ze(D),B=c(z,!0);s(z);var re=u(z,2),de=c(re,!0);s(re),N(be=>{S(B,r(i).fullKey??r(i).name),S(de,be)},[()=>gl(r(i).value)]),g(K,D)},M=K=>{var D=N1();g(K,D)};V(W,K=>{r(i)?K(X):K(M,-1)})}s(J),s(H),g(L,H)},ee=L=>{var H=L1(),j=c(H);{var le=J=>{var W=I1();g(J,W)},he=y(()=>Object.keys(r(v)).length===0),ie=J=>{var W=A1(),X=c(W,!0);s(W),N(M=>S(X,M),[()=>JSON.stringify(r(v),null,2)]),g(J,W)};V(j,J=>{r(he)?J(le):J(ie,-1)})}s(H),g(L,H)};V(F,L=>{r(o)==="tree"?L($):L(ee,-1)})}N((L,H,j)=>{Pe(Z,1,L),Ne(Z,"aria-pressed",r(o)==="tree"),Pe(T,1,H),Ne(T,"aria-pressed",r(o)==="json"),S(I,j)},[()=>Ve(["inline-flex items-center gap-1 px-2 py-1 cursor-pointer transition-colors",r(o)==="tree"?"bg-primary text-on-primary":"bg-bg-1 text-fg-2 hover:text-fg-0"].join(" ")),()=>Ve(["inline-flex items-center gap-1 px-2 py-1 cursor-pointer transition-colors border-l border-line-2",r(o)==="json"?"bg-primary text-on-primary":"bg-bg-1 text-fg-2 hover:text-fg-0"].join(" ")),()=>r(d).length.toLocaleString()]),_e("click",Z,()=>m(o,"tree")),_e("click",T,()=>m(o,"json")),Sr(Q,()=>r(a),L=>m(a,L)),g(C,P)};V(h,C=>{r(l).length===0?C(w):C(k,-1)})}s(b),g(t,b),at()}nr(["click"]);const R1={capability:"kv",renders:t=>b1(t),component:D1},na="__all__",V1=["time","timestamp","ts","event_time","bucket","created_at"],H1=new Set(["created_at","updated_at","time","timestamp","timestamp_ns","rid","tenant"]),yd=640,wd=180,kd=16;function Na(t){if(typeof t=="number")return Number.isFinite(t);if(typeof t=="string"&&t.trim()!==""){const e=Number(t);return Number.isFinite(e)}return!1}function xi(t){return typeof t=="number"?t:Number(t)}function No(t){if(t==null)return null;if(typeof t=="number")return Number.isFinite(t)?t:null;if(t instanceof Date)return t.getTime();if(typeof t=="string"){const e=Number(t);if(Number.isFinite(e))return e;const n=Date.parse(t);return Number.isNaN(n)?null:n}return null}function Sd(t){var a,o;const e=((a=t.result)==null?void 0:a.columns)??[];for(const i of V1){const l=e.find(d=>d.toLowerCase()===i);if(l)return l}const n=((o=t.result)==null?void 0:o.records)??[];if(n.length===0)return null;for(const i of e){const l=n.find(d=>d.values[i]!==null&&d.values[i]!==void 0);if(l&&No(l.values[i])!==null&&!Na(l.values[i]))return i}return null}function Cd(t,e){var i,l;const n=((i=t.result)==null?void 0:i.columns)??[],a=((l=t.result)==null?void 0:l.records)??[];if(a.length===0)return[];const o=[];for(const d of n){if(d===e||d.startsWith("red_")||H1.has(d.toLowerCase()))continue;const f=a.find(v=>v.values[d]!==null&&v.values[d]!==void 0);f&&Na(f.values[d])&&o.push(d)}return o}function F1(t){const e=Sd(t);return e?Cd(t,e).length>0:!1}function q1(t,e){const n=Sd(t);if(!n)return null;const a=t.result.columns.find(f=>f.toLowerCase()==="metric")??null,o=t.result.columns.find(f=>f.toLowerCase()==="value")??null;if(a&&o){const f=new Set,v=[];for(const b of t.result.records){const h=b.values[a],w=b.values[o];if((typeof h=="string"||typeof h=="number")&&Na(w)){f.add(String(h));const k=No(b.values[n]);k!==null&&v.push({t:k,v:xi(w),raw:b.values})}}const p=[...f].sort();if(p.length>0){if(!e||e===na)return v.sort((w,k)=>w.t-k.t),{timeColumn:n,metricColumn:o,metrics:[na,...p],points:v,metricNameColumn:a};const b=p.includes(e)?e:p[0],h=[];for(const w of t.result.records){if(String(w.values[a])!==b)continue;const k=No(w.values[n]);if(k===null)continue;const C=w.values[o];Na(C)&&h.push({t:k,v:xi(C),raw:w.values})}return h.sort((w,k)=>w.t-k.t),{timeColumn:n,metricColumn:o,metrics:[na,...p],points:h,metricNameColumn:a}}}const i=Cd(t,n);if(i.length===0)return null;const l=e&&i.includes(e)?e:i[0],d=[];for(const f of t.result.records){const v=f.values[n],p=f.values[l],b=No(v);b!==null&&Na(p)&&d.push({t:b,v:xi(p),raw:f.values})}return d.sort((f,v)=>f.t-v.t),{timeColumn:n,metricColumn:l,metrics:i,points:d,metricNameColumn:null}}function K1(t,e=yd,n=wd,a=kd){const o=t.points;if(o.length===0)return null;const i=o[0].t,l=o[o.length-1].t;let d=1/0,f=-1/0;for(const k of o)k.v<d&&(d=k.v),k.v>f&&(f=k.v);if(!Number.isFinite(d)||!Number.isFinite(f))return null;const v=l-i||1,p=f-d||1,b=e-a*2,h=n-a*2,w=[];return o.forEach((k,C)=>{const P=a+(k.t-i)/v*b,Y=a+h-(k.v-d)/p*h;w.push(`${C===0?"M":"L"}${P.toFixed(2)},${Y.toFixed(2)}`)}),{width:e,height:n,padding:a,path:w.join(" "),minT:i,maxT:l,minV:d,maxV:f}}function j1(t,e=6e4){if(t.points.length===0)return[];const n=t.points[0].t,a=t.points[t.points.length-1].t,o=Math.floor(n/e)*e,i=Math.floor(a/e)*e,l=new Map;for(let d=o;d<=i;d+=e)l.set(d,{t:d,count:0,sum:0});for(const d of t.points){const f=Math.floor(d.t/e)*e,v=l.get(f);v&&(v.count+=1,v.sum+=d.v)}return[...l.values()].sort((d,f)=>d.t-f.t)}function B1(t,e=yd,n=wd,a=kd){if(t.length===0)return null;const o=t.reduce((p,b)=>Math.max(p,b.count),0);if(o===0)return null;const i=e-a*2,l=n-a*2,d=i/t.length,f=Math.max(1,d-1),v=t.map((p,b)=>{const w=p.count/o*l;return{x:a+b*d,y:a+l-w,w:f,h:w,bucket:p}});return{width:e,height:n,padding:a,bars:v,maxCount:o}}const Ed={name:"chart-column",size:24,node:[["path",{d:"M3 3v16a2 2 0 0 0 2 2h16"}],["path",{d:"M18 17V9"}],["path",{d:"M13 17V5"}],["path",{d:"M8 17v-3"}]],aliases:["bar-chart-3"]};Ed.node;function U1(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Ed}}))}var W1=x('<div class="flex-1 grid place-items-center text-fg-3 text-[12px] font-mono p-6">No timeseries shape (need a time column and a numeric metric).</div>'),G1=x("<option> </option>"),Y1=x('<label class="inline-flex items-center gap-1.5 text-fg-3">bucket: <select class="bg-bg-1 text-fg-1 border border-line-1 rounded px-1.5 py-0.5"><option>1s</option><option>10s</option><option>1min</option><option>5min</option><option>10min</option><option>1hr</option></select></label>'),$1=x('<button type="button" class="inline-flex items-center gap-1 px-2 py-1 rounded border border-line-1 text-fg-3 hover:text-fg-1 cursor-pointer" title="Show all rows again"><!> clear bucket</button>'),X1=x('· <span class="text-fg-2"> </span>',1),Z1=Cr('<rect class="cursor-pointer transition-opacity" fill="var(--color-accent)" role="button" tabindex="0"><title> </title></rect>'),Q1=Cr('<svg class="block w-full h-[180px]" aria-label="Writes per bucket"><!><text class="text-[9px] fill-fg-3 font-mono"> </text><text text-anchor="end" class="text-[9px] fill-fg-3 font-mono"> </text></svg>'),J1=Cr('<svg class="block w-full h-[180px] text-primary-text" aria-label="Timeseries chart"><path fill="none" stroke="currentColor" stroke-width="1.5"></path></svg>'),ex=x('<th class="px-2 py-1.5 text-left font-normal">metric</th>'),tx=x('<td class="px-2 py-1 text-fg-2"> </td>'),rx=x('<tr class="border-b border-line-1/60 hover:bg-bg-1/40"><td class="px-2 py-1"> </td><!><td class="px-2 py-1 text-right text-primary-text"> </td><td class="px-2 py-1 text-fg-2"> </td></tr>'),nx=x('<div class="border-b border-line-1 px-3 py-1.5 flex items-center gap-2 text-[11px] font-mono bg-bg-1/40"><div class="inline-flex border border-line-2 rounded overflow-hidden"><button type="button"><!> </button> <button type="button"><!> Value</button></div> <label class="inline-flex items-center gap-1.5 text-fg-3"><!> metric: <select class="bg-bg-1 text-fg-1 border border-line-1 rounded px-1.5 py-0.5"></select></label> <!> <!> <div class="ml-auto text-fg-3"><span class="text-fg-2"> </span> <!> inserts <!></div></div> <div class="px-3 pt-2"><!></div> <div class="flex-1 min-h-0 overflow-auto"><table class="w-full border-collapse text-[12px] font-mono"><thead class="sticky top-0 bg-bg-1 z-10"><tr class="border-b border-line-1 text-fg-3"><th class="px-2 py-1.5 text-left font-normal">time</th><!><th class="px-2 py-1.5 text-right font-normal">value</th><th class="px-2 py-1.5 text-left font-normal">log</th></tr></thead><tbody></tbody></table></div> <div class="border-t border-line-1 px-3 py-1.5 text-[11px] font-mono text-fg-3"> <!></div>',1),ax=x('<div class="flex h-full flex-col text-fg-1"><!></div>');function ox(t,e){nt(e,!0);let n=me(jt(na)),a=me("rate"),o=me(6e4),i=me(null);const l=y(()=>q1(e.result,r(n))),d=y(()=>r(l)&&r(a)==="line"?K1(r(l)):null),f=y(()=>r(l)?j1(r(l),r(o)):[]),v=y(()=>r(l)&&r(a)==="rate"?B1(r(f)):null),p=y(()=>{if(!r(l))return[];if(!r(i))return r(l).points;const T=r(i).t,q=T+r(o);return r(l).points.filter(ne=>ne.t>=T&&ne.t<q)});function b(T){try{return new Date(T).toISOString().replace("T"," ").slice(0,19)}catch{return String(T)}}function h(T){return T==null?"":typeof T=="object"?JSON.stringify(T):String(T)}function w(T){var ue;const q=[],ne=(ue=r(l))!=null&&ue.metricNameColumn?T.raw[r(l).metricNameColumn]:void 0;ne!==void 0&&q.push(String(ne));const oe=T.raw.tags;if(oe&&typeof oe=="object"){const U=Object.entries(oe).map(([E,I])=>`${E}=${h(I)}`).join(" ");U&&q.push(U)}const Q=T.raw.event??T.raw.action??T.raw.message??T.raw.payload;return Q!==void 0&&q.push(h(Q)),q.join(" · ")}function k(T){return T===1e3?"1s":T===1e4?"10s":T===6e4?"1min":T===3e5?"5min":T===6e5?"10min":T===36e5?"1hr":`${T}ms`}function C(T){return T===na?"all writes":T}function P(){return r(l)?!r(n)||r(n)===na?"all writes":r(n):""}var Y=ax(),O=c(Y);{var Z=T=>{var q=W1();g(T,q)},G=T=>{var q=nx(),ne=ze(q),oe=c(ne),Q=c(oe),ue=c(Q);U1(ue,{class:"size-3"});var U=u(ue);s(Q);var E=u(Q,2),I=c(E);ed(I,{class:"size-3"}),Se(),s(E),s(oe);var _=u(oe,2),A=c(_);Va(A,{class:"size-3"});var R=u(A,2);$e(R,20,()=>r(l).metrics,ce=>ce,(ce,se)=>{var ve=G1(),Ae=c(ve,!0);s(ve);var Le={};N(we=>{S(Ae,we),Le!==(Le=se)&&(ve.value=(ve.__value=se)??"")},[()=>C(se)]),g(ce,ve)}),s(R),s(_);var te=u(_,2);{var F=ce=>{var se=Y1(),ve=u(c(se)),Ae=c(ve);Ae.value=Ae.__value=1e3;var Le=u(Ae);Le.value=Le.__value=1e4;var we=u(Le);we.value=we.__value=6e4;var Ie=u(we);Ie.value=Ie.__value=3e5;var Ee=u(Ie);Ee.value=Ee.__value=6e5;var Me=u(Ee);Me.value=Me.__value=36e5,s(ve);var Te;ea(ve),s(se),N(()=>{Te!==(Te=r(o))&&(ve.value=(ve.__value=r(o))??"",ta(ve,r(o)))}),_e("change",ve,Xe=>{m(o,Number(Xe.currentTarget.value),!0),m(i,null)}),g(ce,se)};V(te,ce=>{r(a)==="rate"&&ce(F)})}var $=u(te,2);{var ee=ce=>{var se=$1(),ve=c(se);Ar(ve,{class:"size-3"}),Se(),s(se),_e("click",se,()=>m(i,null)),g(ce,se)};V($,ce=>{r(i)&&ce(ee)})}var L=u($,2),H=c(L),j=c(H,!0);s(H);var le=u(H),he=u(le);{var ie=ce=>{var se=bt();N(ve=>S(se,`of ${ve??""}`),[()=>r(l).points.length.toLocaleString()]),g(ce,se)};V(he,ce=>{r(i)&&ce(ie)})}var J=u(he,2);{var W=ce=>{var se=X1(),ve=u(ze(se)),Ae=c(ve,!0);s(ve),N(()=>S(Ae,e.collection)),g(ce,se)};V(J,ce=>{e.collection&&ce(W)})}s(L),s(ne);var X=u(ne,2),M=c(X);{var K=ce=>{var se=Q1(),ve=c(se);$e(ve,17,()=>r(v).bars,Ee=>Ee.bucket.t,(Ee,Me)=>{var Te=Z1(),Xe=c(Te),Fe=c(Xe);s(Xe),s(Te),N((Qe,lt,ct)=>{Ne(Te,"x",r(Me).x),Ne(Te,"y",r(Me).y),Ne(Te,"width",r(Me).w),Ne(Te,"height",r(Me).h),Ne(Te,"opacity",!r(i)||r(i).t===r(Me).bucket.t?.9:.3),Ne(Te,"aria-label",`Bucket starting at ${Qe??""} with ${r(Me).bucket.count??""} writes`),S(Fe,`${lt??""} — ${r(Me).bucket.count??""} writes (sum ${ct??""})`)},[()=>b(r(Me).bucket.t),()=>b(r(Me).bucket.t),()=>r(Me).bucket.sum.toFixed(2)]),_e("click",Te,()=>{var Qe;return m(i,((Qe=r(i))==null?void 0:Qe.t)===r(Me).bucket.t?null:r(Me).bucket,!0)}),_e("keydown",Te,Qe=>{var lt;(Qe.key==="Enter"||Qe.key===" ")&&(Qe.preventDefault(),m(i,((lt=r(i))==null?void 0:lt.t)===r(Me).bucket.t?null:r(Me).bucket,!0))}),g(Ee,Te)});var Ae=u(ve),Le=c(Ae,!0);s(Ae);var we=u(Ae),Ie=c(we);s(we),s(se),N((Ee,Me)=>{Ne(se,"viewBox",`0 0 ${r(v).width} ${r(v).height}`),Ne(Ae,"x",r(v).padding),Ne(Ae,"y",r(v).height-2),S(Le,Ee),Ne(we,"x",r(v).width-r(v).padding),Ne(we,"y",r(v).height-2),S(Ie,`peak ${r(v).maxCount??""}/${Me??""}`)},[()=>{var Ee;return b(((Ee=r(v).bars[0])==null?void 0:Ee.bucket.t)??0)},()=>k(r(o))]),g(ce,se)},D=ce=>{var se=J1(),ve=c(se);s(se),N(()=>{Ne(se,"viewBox",`0 0 ${r(d).width} ${r(d).height}`),Ne(ve,"d",r(d).path)}),g(ce,se)};V(M,ce=>{r(a)==="rate"&&r(v)?ce(K):r(d)&&ce(D,1)})}s(X);var z=u(X,2),B=c(z),re=c(B),de=c(re),be=u(c(de));{var fe=ce=>{var se=ex();g(ce,se)};V(be,ce=>{r(l).metricNameColumn&&ce(fe)})}Se(2),s(de),s(re);var Ce=u(re);$e(Ce,21,()=>r(p),gr,(ce,se)=>{var ve=rx(),Ae=c(ve),Le=c(Ae,!0);s(Ae);var we=u(Ae);{var Ie=Fe=>{var Qe=tx(),lt=c(Qe,!0);s(Qe),N(ct=>S(lt,ct),[()=>String(r(se).raw[r(l).metricNameColumn]??"")]),g(Fe,Qe)};V(we,Fe=>{r(l).metricNameColumn&&Fe(Ie)})}var Ee=u(we),Me=c(Ee,!0);s(Ee);var Te=u(Ee),Xe=c(Te,!0);s(Te),s(ve),N((Fe,Qe)=>{S(Le,Fe),S(Me,r(se).v),S(Xe,Qe)},[()=>b(r(se).t),()=>w(r(se))]),g(ce,ve)}),s(Ce),s(B),s(z);var ke=u(z,2),xe=c(ke),ge=u(xe);{var De=ce=>{var se=bt();N((ve,Ae)=>S(se,`· bucket ${ve??""} (+${Ae??""})`),[()=>b(r(i).t),()=>k(r(o))]),g(ce,se)};V(ge,ce=>{r(i)&&ce(De)})}s(ke),N((ce,se,ve,Ae,Le)=>{Pe(Q,1,ce),Ne(Q,"aria-pressed",r(a)==="rate"),S(U,` Writes/${se??""}`),Pe(E,1,ve),Ne(E,"aria-pressed",r(a)==="line"),S(j,Ae),S(le,` · ${Le??""}`),S(xe,`${r(p).length??""} inserts${e.collection?" · ":""}${e.collection??""??""} `)},[()=>Ve(["inline-flex items-center gap-1 px-2 py-1 cursor-pointer transition-colors",r(a)==="rate"?"bg-primary text-on-primary":"bg-bg-1 text-fg-2 hover:text-fg-0"].join(" ")),()=>k(r(o)),()=>Ve(["inline-flex items-center gap-1 px-2 py-1 cursor-pointer transition-colors border-l border-line-2",r(a)==="line"?"bg-primary text-on-primary":"bg-bg-1 text-fg-2 hover:text-fg-0"].join(" ")),()=>P(),()=>r(p).length.toLocaleString()]),_e("click",Q,()=>m(a,"rate")),_e("click",E,()=>m(a,"line")),qi(R,()=>r(n),ce=>m(n,ce)),g(T,q)};V(O,T=>{r(l)?T(G,-1):T(Z)})}s(Y),g(t,Y),at()}nr(["click","change","keydown"]);const ix={capability:"hypertable",renders:t=>F1(t),component:ox};function sx(t){return{query:t.query,capability:t.capability,record_count:t.record_count,records:t.result.records}}function lx(t){return JSON.stringify(t,null,2)}function cx(t){let e="",n=0;const a=t.length;for(;n<a;){const o=t[n];if(o==='"'){let i=n+1;for(;i<a;){if(t[i]==="\\"){i+=2;continue}if(t[i]==='"')break;i+=1}const l=t.slice(n,i+1);let d=i+1;for(;d<a&&(t[d]===" "||t[d]===" ");)d+=1;const f=t[d]===":";e+=`<span class="${f?"k":"s"}">${mi(l)}</span>`,n=i+1;continue}if(o>="0"&&o<="9"||o==="-"&&t[n+1]>="0"&&t[n+1]<="9"){let i=n+1;for(;i<a&&/[0-9eE+\-.]/.test(t[i]);)i+=1;e+=`<span class="n">${mi(t.slice(n,i))}</span>`,n=i;continue}if(t.startsWith("true",n)||t.startsWith("false",n)){const i=t[n]==="t"?4:5;e+=`<span class="b">${t.slice(n,n+i)}</span>`,n+=i;continue}if(t.startsWith("null",n)){e+='<span class="z">null</span>',n+=4;continue}e+=mi(o),n+=1}return e}function mi(t){return t.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">")}var dx=x('<div class="flex h-full flex-col text-fg-1"><div class="flex-1 min-h-0 overflow-auto"><pre class="json text-[12px] font-mono p-3 leading-relaxed svelte-1h2o46f"></pre></div> <div class="border-t border-line-1 px-3 py-1.5 text-[11px] font-mono text-fg-3"> </div></div>');function ux(t,e){nt(e,!0);const n=y(()=>lx(sx(e.result))),a=y(()=>cx(r(n)));var o=dx(),i=c(o),l=c(i);Av(l,()=>r(a),!0),s(l),s(i);var d=u(i,2),f=c(d);s(d),s(o),N(()=>S(f,`${e.result.record_count??""} records · raw shape${e.collection?" · ":""}${e.collection??""??""}`)),g(t,o),at()}const fx={capability:"json",renders:()=>!1,component:ux},vx=/(^|_)(vector|embedding|embeddings|turbovec)($|_)/i,gx=/(^|_)(scalar|score|distance|similarity|magnitude|norm)($|_)/i,px=new Set(["rid","entity_id","red_entity_id","red_entity_type","red_kind","red_collection","red_sequence_id","collection","kind","tenant","created_at","updated_at","dimension"]);function Wi(t){return Array.isArray(t)&&t.length>0&&t.every(e=>typeof e=="number"&&Number.isFinite(e))}function hx(t){const e=Object.entries(t).find(([a,o])=>vx.test(a)&&Wi(o));if(e)return e;const n=Object.entries(t).find(([,a])=>Wi(a));return n||null}function bx(t,e){const n=Object.entries(t).find(([a,o])=>a!==e&&gx.test(a)&&typeof o=="number"&&Number.isFinite(o));return n||null}function pl(t){return typeof t=="number"&&Number.isFinite(t)&&t>0?Math.floor(t):null}function Gi(t){return t.result.records.map((e,n)=>{var v;const a=e.values??{},o=((v=e.vector_results)==null?void 0:v.find(p=>Wi(p.vector)))??null,i=o!=null&&o.vector?["vector_results.vector",o.vector]:hx(a),l=bx(a,(i==null?void 0:i[0])??null),d=(i==null?void 0:i[1].length)??pl(a.dimension)??pl(a.vector_dimension)??0,f={};for(const[p,b]of Object.entries(a))p===(i==null?void 0:i[0])||p===(l==null?void 0:l[0])||px.has(p)||(f[p]=b);return{index:n,id:String(a.id??a.entity_id??a.red_entity_id??a.rid??n+1),vectorColumn:(i==null?void 0:i[0])??null,vector:(i==null?void 0:i[1])??[],dimension:d,scalarColumn:(l==null?void 0:l[0])??null,scalar:(l==null?void 0:l[1])??null,metadata:f}})}function xx(t){return t.capability==="vector"||t.result.records.some(e=>{var n;return(((n=e.vector_results)==null?void 0:n.length)??0)>0})?!0:Gi(t).some(e=>e.vector.length>0||e.dimension>0||e.scalar!==null)}function uo(t){return Math.sqrt(t.reduce((e,n)=>e+n*n,0))}function _i(t){return t.scalarColumn?/distance/i.test(t.scalarColumn)?`search distance · ${t.scalarColumn}`:/similarity/i.test(t.scalarColumn)?`similarity score · ${t.scalarColumn}`:/score/i.test(t.scalarColumn)?`score · ${t.scalarColumn}`:/turbovec|scalar/i.test(t.scalarColumn)?`scalar projection · ${t.scalarColumn}`:/magnitude|norm/i.test(t.scalarColumn)?`vector magnitude · ${t.scalarColumn}`:`ranking metric · ${t.scalarColumn}`:"ranking metric"}function yi(t){return t==null?"NULL":typeof t=="object"?JSON.stringify(t):String(t)}function mx(t){return/^VECTOR\s+SEARCH\s+\S+\s+SIMILAR\s+TO\s+\[1(?:\.0)?,\s*0(?:\.0)?/i.test(t.query.trim())}function _x(t){return/^VECTOR\s+SEARCH\s+/i.test(t.query.trim())}function yx(t){const e=t.replace(/[\[\]]/g," ").split(/[,\s]+/).map(a=>a.trim()).filter(Boolean).map(Number);if(e.length===0)throw new Error("Paste a numeric vector first.");if(e.find(a=>!Number.isFinite(a))!==void 0)throw new Error("Vector contains a non-numeric value.");return e}function wx(t){return`[${t.map(e=>Number(e.toPrecision(8))).join(", ")}]`}function kx(t){return`'${t.replace(/'/g,"''")}'`}function Sx(t){return t.replace(/[^A-Za-z0-9_./-]/g,"")}function hl(t,e,n){const a=Math.max(1,Math.min(200,Math.floor(Number(n)||20))),o=e.kind==="text"?kx(e.text):wx(e.vector);return`VECTOR SEARCH ${Sx(t)} SIMILAR TO ${o} INCLUDE VECTORS LIMIT ${a}`}const Md={name:"gauge",size:24,node:[["path",{d:"m12 14 4-4"}],["path",{d:"M3.34 19a10 10 0 1 1 17.32 0"}]]};Md.node;function zd(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Md}}))}const Nd={name:"list-filter",size:24,node:[["path",{d:"M2 5h20"}],["path",{d:"M6 12h12"}],["path",{d:"M9 19h6"}]]};Nd.node;function Cx(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Nd}}))}const Td={name:"rows-3",size:24,node:[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2"}],["path",{d:"M21 9H3"}],["path",{d:"M21 15H3"}]],aliases:["panels-top-bottom"]};Td.node;function Yi(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Td}}))}var Ex=x('<input type="text" placeholder="text query…" class="h-7 w-full rounded border border-line-1 bg-bg-0 px-2 text-fg-1 outline-none placeholder:text-fg-3 focus:border-line-3"/>'),Mx=x('<input type="text" placeholder="[0.12, -0.04, 0.91, …]" class="h-7 w-full rounded border border-line-1 bg-bg-0 px-2 text-fg-1 outline-none placeholder:text-fg-3 focus:border-line-3"/>'),zx=x('<div class="inline-flex shrink-0 overflow-hidden rounded border border-line-2"><button type="button">text</button> <button type="button">vector</button></div> <div class="min-w-[260px] flex-1"><!></div> <label class="inline-flex h-7 items-center gap-1 rounded border border-line-1 bg-bg-0 px-2 text-fg-3"><span>limit</span> <input type="number" min="1" max="200" class="w-12 bg-transparent text-right text-fg-1 outline-none"/></label> <button type="button"><!> search</button>',1),Nx=x('<button type="button" class="text-fg-3 hover:text-fg-1 cursor-pointer" aria-label="Clear vector row filter"><!></button>'),Tx=x('<div class="inline-flex items-center gap-1.5 border border-line-1 rounded px-2 py-1 bg-bg-0"><!> <input type="text" placeholder="filter rows…" class="bg-transparent text-fg-1 outline-none w-[180px] placeholder:text-fg-3"/> <!></div>'),Ix=x("<span> </span>"),Ax=x('<div class="mt-1.5 text-warn"> </div>'),Lx=x('<div class="border-b border-line-1 bg-bg-1/30 px-3 py-1.5 text-[11px] font-mono text-fg-3">Preview search: distances and scores are computed against the synthetic basis vector <span class="text-fg-1">[1, 0, 0, …]</span>.</div>'),Ox=x('<div class="flex-1 grid place-items-center p-6 text-center font-mono text-[12px] text-fg-3"><div><!> <div class="text-fg-1"> </div> <div class="mt-1">Text queries are embedded by RedDB.</div></div></div>'),Px=x('<div class="flex-1 grid place-items-center p-6 text-center font-mono text-[12px] text-fg-3"><div><!> <div class="text-fg-1">No vector rows returned.</div></div></div>'),Dx=x('<button type="button" class="text-fg-3 hover:text-fg-1 cursor-pointer" aria-label="Clear vector result filter"><!></button>'),Rx=x('<div class="inline-flex items-center gap-1.5 border border-line-1 rounded px-2 py-1 bg-bg-0"><!> <input type="text" placeholder="filter results…" class="bg-transparent text-fg-1 outline-none w-[180px] placeholder:text-fg-3"/> <!></div>'),Vx=x('<span class="ml-auto text-fg-1"> </span>'),Hx=x('<div class="mt-0.5 truncate text-fg-3"> </div>'),Fx=x('<button type="button"><div class="flex items-baseline gap-2"><span class="text-primary-text"> </span> <span class="text-fg-3"> </span> <!></div> <!></button>'),qx=x('<div class="text-fg-3">No vector selected.</div>'),Kx=x('<div class="text-fg-3">vector column</div> <div class="text-fg-0"> </div>',1),jx=x('<div class="text-fg-3">ranking metric</div> <div class="text-fg-0"> </div>',1),Bx=x('<div class="text-fg-3 truncate"> </div> <div class="text-fg-1 break-words"> </div>',1),Ux=x('<div class="grid grid-cols-[160px_1fr] gap-x-3 gap-y-1.5"><div class="text-fg-3">id</div> <div class="text-fg-0"> </div> <div class="text-fg-3">dimension</div> <div class="text-fg-0"> </div> <div class="text-fg-3">magnitude</div> <div class="text-fg-0"> </div> <div class="text-fg-3">coordinates</div> <div class="text-fg-0"> </div> <!> <!> <!></div>'),Wx=x('<div class="border border-line-1 bg-bg-1/40 px-3 py-2 text-fg-3"> </div>'),Gx=x('<div class="grid grid-cols-[52px_1fr_90px] items-center gap-2"><span class="text-fg-3 text-right"></span> <div class="h-2 bg-bg-2 rounded overflow-hidden"><div class="h-full bg-accent/80"></div></div> <span> </span></div>'),Yx=x('<div class="mt-2 text-fg-3">Showing first 256 dimensions.</div>'),$x=x('<div class="mb-2 flex items-center justify-between text-fg-3"><span> </span> <span> </span></div> <div class="grid gap-1"></div> <!>',1),Xx=x('<tr class="border-b border-line-1/60 hover:bg-bg-1/40 cursor-pointer"><td class="px-2 py-1 text-primary-text"> </td><td class="px-2 py-1 text-right"> </td><td class="px-2 py-1 text-right"> </td></tr>'),Zx=x('<table class="w-full border-collapse"><thead class="sticky top-0 bg-bg-0"><tr class="border-b border-line-1 text-fg-3"><th class="px-2 py-1.5 text-left font-normal">id</th><th class="px-2 py-1.5 text-right font-normal">ranking metric</th><th class="px-2 py-1.5 text-right font-normal">magnitude</th></tr></thead><tbody></tbody></table>'),Qx=x('<div class="border-b border-line-1 px-3 py-1.5 flex items-center gap-2 text-[11px] font-mono bg-bg-0"><div class="inline-flex border border-line-2 rounded overflow-hidden"><button type="button"><!> metadata</button> <button type="button"><!> vector</button> <button type="button"><!> scores</button></div> <!> <div class="ml-auto text-fg-3"> <!> </div></div> <div class="flex-1 min-h-0 grid grid-cols-[320px_1fr]"><div class="overflow-auto border-r border-line-1 text-[12px] font-mono"></div> <div class="overflow-auto p-3 text-[12px] font-mono"><!></div></div>',1),Jx=x('<div class="flex h-full flex-col text-fg-1"><div class="border-b border-line-1 bg-bg-1/40 px-3 py-2 font-mono text-[11px]"><div class="flex flex-wrap items-center gap-2"><div class="inline-flex shrink-0 overflow-hidden rounded border border-line-2"><button type="button"><!> browse</button> <button type="button"><!> search</button></div> <!> <div class="ml-auto flex items-center gap-2 text-fg-3"><span> </span> <!></div></div> <!></div> <!> <!></div>');function em(t,e){nt(e,!0);let n=me("browse"),a=me("metadata"),o=me("text"),i=me(""),l=me(""),d=me(20),f=me(""),v=me(null),p=me(null),b=me(!1),h=me(null);const w=y(()=>Gi(e.result)),k=y(()=>{var B;return((B=r(w).find(re=>re.dimension>0))==null?void 0:B.dimension)??null}),C=y(()=>r(p)??(_x(e.result)?e.result:null)),P=y(()=>r(C)?Gi(r(C)):[]),Y=y(()=>r(n)==="search"?r(P):r(w)),O=y(()=>r(C)?mx(r(C)):!1),Z=y(()=>{const B=r(f).trim().toLowerCase();return B?r(Y).filter(re=>re.id.toLowerCase().includes(B)||Object.values(re.metadata).some(de=>yi(de).toLowerCase().includes(B))):r(Y)}),G=y(()=>r(v)??r(Z)[0]??null),T=y(()=>Math.max(1,...r(Z).map(B=>uo(B.vector)))),q=y(()=>r(C)!==null);function ne(B){const re=Object.entries(B.metadata).slice(0,3);return re.length===0?"":re.map(([de,be])=>`${de}=${yi(be)}`).join(" · ")}function oe(B,re){const de=Math.max(1,...re.map(be=>Math.abs(be)));return Math.max(2,Math.abs(B)/de*100)}async function Q(){if(!e.client||!e.collection){m(h,"No active RedDB connection for vector search.");return}m(h,null),m(b,!0);try{const B=r(i).trim();if(r(o)==="text"&&B.length===0)throw new Error("Enter text for RedDB to embed.");const re=r(o)==="text"?hl(e.collection,{kind:"text",text:B},r(d)):hl(e.collection,{kind:"vector",vector:yx(r(l))},r(d)),de=await e.client.query(re);m(p,de,!0),m(v,null),m(n,"search"),m(a,"metadata")}catch(B){m(h,B.message,!0)}finally{m(b,!1)}}var ue=Jx(),U=c(ue),E=c(U),I=c(E),_=c(I),A=c(_);Yi(A,{class:"size-3"}),Se(),s(_);var R=u(_,2),te=c(R);Gr(te,{class:"size-3"}),Se(),s(R),s(I);var F=u(I,2);{var $=B=>{var re=zx(),de=ze(re),be=c(de),fe=u(be,2);s(de);var Ce=u(de,2),ke=c(Ce);{var xe=we=>{var Ie=Ex();Xt(Ie),_e("keydown",Ie,Ee=>{Ee.key==="Enter"&&Q()}),Sr(Ie,()=>r(i),Ee=>m(i,Ee)),g(we,Ie)},ge=we=>{var Ie=Mx();Xt(Ie),_e("keydown",Ie,Ee=>{Ee.key==="Enter"&&Q()}),Sr(Ie,()=>r(l),Ee=>m(l,Ee)),g(we,Ie)};V(ke,we=>{r(o)==="text"?we(xe):we(ge,-1)})}s(Ce);var De=u(Ce,2),ce=u(c(De),2);Xt(ce),s(De);var se=u(De,2),ve=c(se);{var Ae=we=>{cn(we,{class:"size-3 animate-spin"})},Le=we=>{Jo(we,{class:"size-3"})};V(ve,we=>{r(b)?we(Ae):we(Le,-1)})}Se(),s(se),N((we,Ie,Ee)=>{Pe(be,1,we),Ne(be,"aria-pressed",r(o)==="text"),Pe(fe,1,Ie),Ne(fe,"aria-pressed",r(o)==="vector"),Pe(se,1,Ee),se.disabled=r(b)},[()=>Ve(["inline-flex h-7 items-center gap-1 px-2 transition-colors",r(o)==="text"?"bg-bg-3 text-fg-0":"bg-bg-1 text-fg-2 hover:text-fg-0"].join(" ")),()=>Ve(["inline-flex h-7 items-center gap-1 border-l border-line-2 px-2 transition-colors",r(o)==="vector"?"bg-bg-3 text-fg-0":"bg-bg-1 text-fg-2 hover:text-fg-0"].join(" ")),()=>Ve(["inline-flex h-7 items-center gap-1 rounded border px-2 transition-colors",r(b)?"border-line-1 bg-bg-2 text-fg-3":"border-accent/40 bg-primary text-on-primary hover:bg-accent/90"].join(" "))]),_e("click",be,()=>m(o,"text")),_e("click",fe,()=>m(o,"vector")),Sr(ce,()=>r(d),we=>m(d,we)),_e("click",se,()=>void Q()),g(B,re)},ee=B=>{var re=Tx(),de=c(re);Gr(de,{class:"size-3 text-fg-3"});var be=u(de,2);Xt(be);var fe=u(be,2);{var Ce=ke=>{var xe=Nx(),ge=c(xe);Ar(ge,{class:"size-3"}),s(xe),_e("click",xe,()=>m(f,"")),g(ke,xe)};V(fe,ke=>{r(f)&&ke(Ce)})}s(re),Sr(be,()=>r(f),ke=>m(f,ke)),g(B,re)};V(F,B=>{r(n)==="search"?B($):B(ee,-1)})}var L=u(F,2),H=c(L),j=c(H,!0);s(H);var le=u(H,2);{var he=B=>{var re=Ix(),de=c(re,!0);s(re),N(()=>S(de,e.collection)),g(B,re)};V(le,B=>{e.collection&&B(he)})}s(L),s(E);var ie=u(E,2);{var J=B=>{var re=Ax(),de=c(re,!0);s(re),N(()=>S(de,r(h))),g(B,re)};V(ie,B=>{r(h)&&B(J)})}s(U);var W=u(U,2);{var X=B=>{var re=Lx();g(B,re)};V(W,B=>{r(n)==="search"&&r(O)&&B(X)})}var M=u(W,2);{var K=B=>{var re=Ox(),de=c(re),be=c(de);Gr(be,{class:"mx-auto mb-3 size-7 text-fg-3",strokeWidth:1.4});var fe=u(be,2),Ce=c(fe,!0);s(fe),Se(2),s(de),s(re),N(()=>S(Ce,r(q)?"No search results.":"No vector search has been run.")),g(B,re)},D=B=>{var re=Px(),de=c(re),be=c(de);Yi(be,{class:"mx-auto mb-3 size-7 text-fg-3",strokeWidth:1.4}),Se(2),s(de),s(re),g(B,re)},z=B=>{var re=Qx(),de=ze(re),be=c(de),fe=c(be),Ce=c(fe);ca(Ce,{class:"size-3"}),Se(),s(fe);var ke=u(fe,2),xe=c(ke);Cx(xe,{class:"size-3"}),Se(),s(ke);var ge=u(ke,2),De=c(ge);zd(De,{class:"size-3"}),Se(),s(ge),s(be);var ce=u(be,2);{var se=Ke=>{var He=Rx(),Ue=c(He);Gr(Ue,{class:"size-3 text-fg-3"});var ot=u(Ue,2);Xt(ot);var ae=u(ot,2);{var tt=Ze=>{var We=Dx(),ut=c(We);Ar(ut,{class:"size-3"}),s(We),_e("click",We,()=>m(f,"")),g(Ze,We)};V(ae,Ze=>{r(f)&&Ze(tt)})}s(He),Sr(ot,()=>r(f),Ze=>m(f,Ze)),g(Ke,He)};V(ce,Ke=>{r(n)==="search"&&Ke(se)})}var ve=u(ce,2),Ae=c(ve,!0),Le=u(Ae);{var we=Ke=>{var He=bt();N(Ue=>S(He,`of ${Ue??""}`),[()=>r(Y).length.toLocaleString()]),g(Ke,He)};V(Le,Ke=>{r(f)&&Ke(we)})}var Ie=u(Le);s(ve),s(de);var Ee=u(de,2),Me=c(Ee);$e(Me,21,()=>r(Z),Ke=>Ke.id,(Ke,He)=>{var Ue=Fx(),ot=c(Ue),ae=c(ot),tt=c(ae,!0);s(ae);var Ze=u(ae,2),We=c(Ze);s(Ze);var ut=u(Ze,2);{var Et=xt=>{var mt=Vx(),wt=c(mt,!0);s(mt),N((Ot,Zt)=>{Ne(mt,"title",Ot),S(wt,Zt)},[()=>_i(r(He)),()=>r(He).scalar.toFixed(4)]),g(xt,mt)};V(ut,xt=>{r(n)==="search"&&r(He).scalar!==null&&xt(Et)})}s(ot);var Tt=u(ot,2);{var Mt=xt=>{var mt=Hx(),wt=c(mt,!0);s(mt),N(Ot=>S(wt,Ot),[()=>ne(r(He))]),g(xt,mt)},Ct=y(()=>ne(r(He)));V(Tt,xt=>{r(Ct)&&xt(Mt)})}s(Ue),N(xt=>{Pe(Ue,1,xt),S(tt,r(He).id),S(We,`${r(He).dimension??""}d`)},[()=>Ve(["w-full text-left px-3 py-2 border-b border-line-1/60 hover:bg-bg-1/50 cursor-pointer",r(G)===r(He)?"bg-bg-1 text-fg-0":"text-fg-2"].join(" "))]),_e("click",Ue,()=>m(v,r(He),!0)),g(Ke,Ue)}),s(Me);var Te=u(Me,2),Xe=c(Te);{var Fe=Ke=>{var He=qx();g(Ke,He)},Qe=Ke=>{var He=Ux(),Ue=u(c(He),2),ot=c(Ue,!0);s(Ue);var ae=u(Ue,4),tt=c(ae,!0);s(ae);var Ze=u(ae,4),We=c(Ze,!0);s(Ze);var ut=u(Ze,4),Et=c(ut,!0);s(ut);var Tt=u(ut,2);{var Mt=wt=>{var Ot=Kx(),Zt=u(ze(Ot),2),pr=c(Zt,!0);s(Zt),N(()=>S(pr,r(G).vectorColumn)),g(wt,Ot)};V(Tt,wt=>{r(G).vectorColumn&&wt(Mt)})}var Ct=u(Tt,2);{var xt=wt=>{var Ot=jx(),Zt=u(ze(Ot),2),pr=c(Zt,!0);s(Zt),N(hr=>S(pr,hr),[()=>_i(r(G))]),g(wt,Ot)};V(Ct,wt=>{r(n)==="search"&&r(G).scalarColumn&&wt(xt)})}var mt=u(Ct,2);$e(mt,17,()=>Object.entries(r(G).metadata),gr,(wt,Ot)=>{var Zt=y(()=>Qr(r(Ot),2));let pr=()=>r(Zt)[0],hr=()=>r(Zt)[1];var it=Bx(),dt=ze(it),It=c(dt,!0);s(dt);var Bt=u(dt,2),or=c(Bt,!0);s(Bt),N(ir=>{S(It,pr()),S(or,ir)},[()=>yi(hr())]),g(wt,it)}),s(He),N(wt=>{S(ot,r(G).id),S(tt,r(G).dimension),S(We,wt),S(Et,r(G).vector.length>0?"returned":"not returned")},[()=>r(G).vector.length>0?uo(r(G).vector).toFixed(6):"n/a"]),g(Ke,He)},lt=Ke=>{var He=_t(),Ue=ze(He);{var ot=tt=>{var Ze=Wx(),We=c(Ze);s(Ze),N(()=>S(We,`This result reports a ${r(G).dimension??""}d vector, but the coordinate array was not returned by RedDB.`)),g(tt,Ze)},ae=tt=>{var Ze=$x(),We=ze(Ze),ut=c(We),Et=c(ut);s(ut);var Tt=u(ut,2),Mt=c(Tt);s(Tt),s(We);var Ct=u(We,2);$e(Ct,21,()=>r(G).vector.slice(0,256),gr,(wt,Ot,Zt)=>{var pr=Gx(),hr=c(pr);hr.textContent=Zt;var it=u(hr,2),dt=c(it);let It;s(it);var Bt=u(it,2),or=c(Bt,!0);s(Bt),s(pr),N((ir,sr)=>{It=yr(dt,"",It,ir),Pe(Bt,1,Ve(r(Ot)<0?"text-warn text-right":"text-fg-1 text-right")),S(or,sr)},[()=>({width:`${oe(r(Ot),r(G).vector)}%`}),()=>r(Ot).toFixed(5)]),g(wt,pr)}),s(Ct);var xt=u(Ct,2);{var mt=wt=>{var Ot=Yx();g(wt,Ot)};V(xt,wt=>{r(G).vector.length>256&&wt(mt)})}N((wt,Ot)=>{S(Et,`${r(G).vector.length??""} dimensions`),S(Mt,`|v| ${wt??""} / max visible ${Ot??""}`)},[()=>uo(r(G).vector).toFixed(6),()=>r(T).toFixed(2)]),g(tt,Ze)};V(Ue,tt=>{r(G).vector.length===0?tt(ot):tt(ae,-1)})}g(Ke,He)},ct=Ke=>{var He=Zx(),Ue=u(c(He));$e(Ue,21,()=>r(Z),ot=>ot.id,(ot,ae)=>{var tt=Xx(),Ze=c(tt),We=c(Ze,!0);s(Ze);var ut=u(Ze),Et=c(ut,!0);s(ut);var Tt=u(ut),Mt=c(Tt,!0);s(Tt),s(tt),N((Ct,xt,mt)=>{S(We,r(ae).id),Ne(ut,"title",Ct),S(Et,xt),S(Mt,mt)},[()=>_i(r(ae)),()=>r(ae).scalar===null?"n/a":r(ae).scalar.toFixed(6),()=>uo(r(ae).vector).toFixed(6)]),_e("click",tt,()=>m(v,r(ae),!0)),g(ot,tt)}),s(Ue),s(He),g(Ke,He)};V(Xe,Ke=>{r(G)?r(a)==="metadata"?Ke(Qe,1):r(a)==="vector"?Ke(lt,2):Ke(ct,-1):Ke(Fe)})}s(Te),s(Ee),N((Ke,He,Ue,ot)=>{Pe(fe,1,Ke),Ne(fe,"aria-pressed",r(a)==="metadata"),Pe(ke,1,He),Ne(ke,"aria-pressed",r(a)==="vector"),Pe(ge,1,Ue),Ne(ge,"aria-pressed",r(a)==="scalar"),S(Ae,ot),S(Ie,` ${r(n)==="search"?" results":" rows"}`)},[()=>Ve(["inline-flex items-center gap-1 px-2 py-1 cursor-pointer transition-colors",r(a)==="metadata"?"bg-primary text-on-primary":"bg-bg-1 text-fg-2 hover:text-fg-0"].join(" ")),()=>Ve(["inline-flex items-center gap-1 px-2 py-1 cursor-pointer transition-colors border-l border-line-2",r(a)==="vector"?"bg-primary text-on-primary":"bg-bg-1 text-fg-2 hover:text-fg-0"].join(" ")),()=>Ve(["inline-flex items-center gap-1 px-2 py-1 cursor-pointer transition-colors border-l border-line-2",r(a)==="scalar"?"bg-primary text-on-primary":"bg-bg-1 text-fg-2 hover:text-fg-0"].join(" ")),()=>r(Z).length.toLocaleString()]),_e("click",fe,()=>m(a,"metadata")),_e("click",ke,()=>m(a,"vector")),_e("click",ge,()=>m(a,"scalar")),g(B,re)};V(M,B=>{r(n)==="search"&&r(P).length===0?B(K):r(Y).length===0?B(D,1):B(z,-1)})}s(ue),N((B,re)=>{Pe(_,1,B),Ne(_,"aria-pressed",r(n)==="browse"),Pe(R,1,re),Ne(R,"aria-pressed",r(n)==="search"),S(j,r(k)?`${r(k)}d`:"dimension n/a")},[()=>Ve(["inline-flex h-7 items-center gap-1 px-2 transition-colors",r(n)==="browse"?"bg-primary text-on-primary":"bg-bg-1 text-fg-2 hover:text-fg-0"].join(" ")),()=>Ve(["inline-flex h-7 items-center gap-1 border-l border-line-2 px-2 transition-colors",r(n)==="search"?"bg-primary text-on-primary":"bg-bg-1 text-fg-2 hover:text-fg-0"].join(" "))]),_e("click",_,()=>{m(n,"browse"),m(v,null)}),_e("click",R,()=>{m(n,"search"),m(v,null)}),g(t,ue),at()}nr(["click","keydown"]);const tm={capability:"vector",renders:t=>xx(t),component:em},$i=["message","payload","body","value","data"],Id=["state","status","delivery_state"],Ad=["consumer","consumer_id","worker","lease_owner"],Ld=["dlc","dlq","dead_letter_collection","dead_letter_queue"];function fo(t,e){for(const a of e)if(a in t)return[a,t[a]];return Object.entries(t).find(([a])=>e.includes(a.toLowerCase()))??null}function rm(t){return t.result.records.map((e,n)=>{const a=e.values??{},o=fo(a,$i),i=fo(a,Id),l=fo(a,Ad),d=fo(a,Ld);return{index:n,id:String(a.message_id??a.id??a.rid??n+1),messageColumn:(o==null?void 0:o[0])??null,message:(o==null?void 0:o[1])??a,state:String((i==null?void 0:i[1])??"ready"),consumer:(l==null?void 0:l[1])===void 0||(l==null?void 0:l[1])===null?null:String(l[1]),dlc:(d==null?void 0:d[1])===void 0||(d==null?void 0:d[1])===null?null:String(d[1]),values:a}})}function nm(t){return t.capability==="queue"?!0:t.result.records.some(e=>{const n=Object.keys(e.values??{}).map(a=>a.toLowerCase());return n.includes("message_id")&&$i.some(a=>n.includes(a))?!0:$i.some(a=>n.includes(a))&&(Id.some(a=>n.includes(a))||Ad.some(a=>n.includes(a))||Ld.some(a=>n.includes(a)))})}function am(t){const e=new Set,n=new Map,a=new Set,o=new Map,i=new Set;for(const l of t)if(n.set(l.state,(n.get(l.state)??0)+1),l.consumer&&/active|leased|processing|running/i.test(l.state)&&e.add(l.consumer),l.dlc&&a.add(l.dlc),l.message&&typeof l.message=="object"&&!Array.isArray(l.message)){const d=l.message,f=d.op,v=d.collection;typeof f=="string"&&o.set(f,(o.get(f)??0)+1),typeof v=="string"&&i.add(v)}return{activeConsumers:e.size,states:[...n.entries()],dlcs:[...a],operations:[...o.entries()].sort((l,d)=>l[0].localeCompare(d[0])),sources:[...i].sort()}}function bl(t){if(typeof t=="number"&&Number.isFinite(t))return t;if(typeof t=="string"){const e=Number(t);if(Number.isFinite(e))return e}return null}function om(t){const e=[];for(const n of t){if(!n.message||typeof n.message!="object"||Array.isArray(n.message))continue;const a=n.message,o=a.collection,i=a.op;if(typeof o!="string"||typeof i!="string")continue;const l=a.id??(a.after&&typeof a.after=="object"&&!Array.isArray(a.after)?a.after.id:void 0);e.push({messageId:n.id,collection:o,op:i,entityId:l==null?String(a.rid??n.id):String(l),lsn:bl(a.lsn),ts:bl(a.ts),before:a.before,after:a.after,payload:a})}return e}function im(t){const e=t.replace(/[^A-Za-z0-9_./-]/g,""),n="red-ui-preview",a="showcase";return[{label:"Backlog depth",query:`QUEUE LEN ${e}`,mutates:!1,note:"Read-only count of messages currently stored in the queue."},{label:"Peek messages",query:`QUEUE PEEK ${e} 25`,mutates:!1,note:"Read-only inspection. Does not lease, ack, or remove messages."},{label:"Read as fanout consumer",query:`QUEUE READ ${e} CONSUMER ${n} COUNT 5`,mutates:!0,note:"Leases messages for this consumer. ACK/NACK decides what happens next."},{label:"Read through explicit group",query:`QUEUE READ ${e} GROUP ${a} CONSUMER worker-a COUNT 5`,mutates:!0,note:"Creates/uses consumer group delivery state for an application tier."},{label:"Inspect pending group messages",query:`QUEUE PENDING ${e} GROUP ${a}`,mutates:!1,note:"Shows leased-but-unacked messages for a group."},{label:"Ack a delivered message",query:`QUEUE ACK ${e} GROUP ${a} 'message-id'`,mutates:!0,note:"Removes a successfully processed message for that group."},{label:"Nack a delivered message",query:`QUEUE NACK ${e} GROUP ${a} 'message-id'`,mutates:!0,note:"Returns or retries a failed message according to queue policy."}]}function sm(t,e){const n=t.replace(/[^A-Za-z0-9_./-]/g,""),a=typeof e=="string"?`'${e.replace(/'/g,"''")}'`:JSON.stringify(e??null);return`QUEUE PUSH ${n} ${a}`}const Od={name:"clipboard-list",size:24,node:[["rect",{width:"8",height:"4",x:"8",y:"2",rx:"1",ry:"1"}],["path",{d:"M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2"}],["path",{d:"M12 11h4"}],["path",{d:"M12 16h4"}],["path",{d:"M8 11h.01"}],["path",{d:"M8 16h.01"}]]};Od.node;function lm(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Od}}))}const Pd={name:"plus",size:24,node:[["path",{d:"M5 12h14"}],["path",{d:"M12 5v14"}]]};Pd.node;function Ta(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Pd}}))}const Dd={name:"radio",size:24,node:[["path",{d:"M16.247 7.761a6 6 0 0 1 0 8.478"}],["path",{d:"M19.075 4.933a10 10 0 0 1 0 14.134"}],["path",{d:"M4.925 19.067a10 10 0 0 1 0-14.134"}],["path",{d:"M7.753 16.239a6 6 0 0 1 0-8.478"}],["circle",{cx:"12",cy:"12",r:"2"}]]};Dd.node;function cm(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Dd}}))}const Rd={name:"send",size:24,node:[["path",{d:"M14.536 21.686a.5.5 0 0 0 .937-.024l6.5-19a.496.496 0 0 0-.635-.635l-19 6.5a.5.5 0 0 0-.024.937l7.93 3.18a2 2 0 0 1 1.112 1.11z"}],["path",{d:"m21.854 2.147-10.94 10.939"}]]};Rd.node;function xl(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Rd}}))}var dm=x('<button type="button" class="text-fg-3 hover:text-fg-1 cursor-pointer" aria-label="Clear queue filter"><!></button>'),um=x("<span> </span>"),fm=x('<span>from <span class="text-fg-2"> </span></span>'),vm=x('<span>dlc <span class="text-fg-2"> </span></span>'),gm=x('<span class="text-fg-2"> </span>'),pm=x('<div class="mt-1.5 text-warn"> </div>'),hm=x('<div class="mt-1.5 text-ok"> </div>'),bm=x('<div class="border-b border-line-1 bg-bg-1/20 px-3 py-2 text-[11px] font-mono"><div class="flex gap-2"><textarea rows="3" class="flex-1 resize-none rounded border border-line-1 bg-bg-0 px-2 py-1 text-[12px] text-fg-1 outline-none placeholder:text-fg-3 focus:border-accent"></textarea> <button type="button" class="inline-flex h-7 items-center gap-1.5 rounded bg-accent px-3 text-white disabled:opacity-40 disabled:cursor-not-allowed"><!> insert</button></div> <!></div>'),xm=x('<div class="p-3 text-[12px] font-mono text-fg-3">No WITH EVENTS envelopes detected in this queue result.</div>'),mm=x('<tr class="border-b border-line-1/60 hover:bg-bg-1/40"><td class="px-2 py-1 text-fg-2"> </td><td class="px-2 py-1 text-fg-0"> </td><td class="px-2 py-1"><span class="rounded border border-accent/30 bg-accent/10 px-1.5 py-0.5 text-primary-text"> </span></td><td class="px-2 py-1 text-fg-1"> </td><td class="px-2 py-1 text-right text-fg-3"> </td><td class="px-2 py-1 text-fg-2 truncate max-w-[520px]"> </td></tr>'),_m=x('<table class="w-full border-collapse text-[12px] font-mono"><thead class="sticky top-0 bg-bg-1 z-10"><tr class="border-b border-line-1 text-fg-3"><th class="px-2 py-1.5 text-left font-normal">time</th><th class="px-2 py-1.5 text-left font-normal">source</th><th class="px-2 py-1.5 text-left font-normal">op</th><th class="px-2 py-1.5 text-left font-normal">entity</th><th class="px-2 py-1.5 text-right font-normal">lsn</th><th class="px-2 py-1.5 text-left font-normal">after</th></tr></thead><tbody></tbody></table>'),ym=x('<div class="flex-1 min-h-0 overflow-auto"><!></div>'),wm=x('<div class="rounded border border-line-1 bg-bg-1 px-3 py-2"><div class="mb-1 flex items-center gap-2"><span class="text-fg-0"> </span> <span> </span></div> <pre class="m-0 overflow-x-auto rounded bg-bg-0 px-2 py-1 text-fg-1"> </pre> <div class="mt-1 text-fg-3"> </div></div>'),km=x('<div class="flex-1 min-h-0 overflow-auto p-3 text-[12px] font-mono"><div class="grid gap-2"></div></div>'),Sm=x('<div class="p-3 text-fg-3">No queue messages in this result.</div>'),Cm=x('<span class="ml-auto text-fg-3"> </span>'),Em=x('<button type="button"><div class="flex items-center gap-2"><span class="text-primary-text"> </span> <span class="rounded border border-line-1 px-1 py-0.5 text-[10px] text-fg-3"> </span> <!></div> <div class="mt-1 truncate text-fg-1"> </div></button>'),Mm=x('<pre class="whitespace-pre-wrap text-fg-1"> </pre>'),zm=x('<div class="grid grid-cols-[120px_1fr] gap-x-3 gap-y-1.5"><span class="text-fg-3">id</span><span class="text-fg-0"> </span> <span class="text-fg-3">state</span><span class="text-fg-0"> </span> <span class="text-fg-3">consumer</span><span class="text-fg-0"> </span> <span class="text-fg-3">dlc</span><span class="text-fg-0"> </span> <span class="text-fg-3">message</span><pre class="m-0 whitespace-pre-wrap text-fg-1"> </pre></div>'),Nm=x('<div class="text-fg-3">Select a message to inspect payload, delivery state, consumer, and DLC link.</div>'),Tm=x('<div class="flex-1 min-h-0 grid grid-cols-[minmax(360px,0.9fr)_1.1fr]"><div class="overflow-auto border-r border-line-1 text-[12px] font-mono"><!></div> <div class="overflow-auto p-3 text-[12px] font-mono"><!></div></div>'),Im=x('<span><span class="text-fg-2"> </span> </span>'),Am=x('<span><span class="text-fg-2"> </span> </span>'),Lm=x('<div class="flex h-full flex-col text-fg-1"><div class="border-b border-line-1 px-3 py-1.5 flex items-center gap-2 text-[11px] font-mono bg-bg-1/40"><div class="inline-flex border border-line-2 rounded overflow-hidden"><button type="button"><!> events</button> <button type="button"><!> messages</button> <button type="button"><!> commands</button> <button type="button"><!> json</button></div> <button type="button"><!> insert</button> <div class="inline-flex items-center gap-1.5 border border-line-1 rounded px-2 py-1 bg-bg-0"><!> <input type="text" placeholder="message/state…" class="bg-transparent text-fg-1 outline-none w-[180px] placeholder:text-fg-3"/> <!></div> <div class="ml-auto flex items-center gap-3 text-fg-3"><span> </span> <!> <span> </span> <!> <!> <!></div></div> <!> <!> <div class="border-t border-line-1 px-3 py-1.5 text-[10px] font-mono text-fg-3 flex items-center gap-3"><!> <!></div></div>');function Om(t,e){nt(e,!0);let n=me("events"),a=me(""),o=me(null),i=me(!1),l=me(""),d=me(!1),f=me(null),v=me(0);const p='{"type":"email","to":"ops@example.com"}',b=y(()=>rm(e.result)),h=y(()=>am(r(b))),w=y(()=>om(r(b))),k=y(()=>e.collection?im(e.collection):[]),C=y(()=>{const ce=r(a).trim().toLowerCase();return ce?r(b).filter(se=>se.id.toLowerCase().includes(ce)||se.state.toLowerCase().includes(ce)||JSON.stringify(se.message).toLowerCase().includes(ce)):r(b)});function P(ce){return typeof ce=="string"?ce:JSON.stringify(ce)}function Y(ce){if(ce===null)return"-";try{return new Date(ce).toISOString().replace("T"," ").slice(0,19)}catch{return String(ce)}}function O(){const ce=r(l).trim();if(!ce)return"";try{return JSON.parse(ce)}catch{return ce}}async function Z(){const ce=Be.client;if(!(!ce||!e.collection||!r(l).trim())){m(d,!0),m(f,null);try{await St.track(`${e.collection} · enqueue message`,()=>ce.query(sm(e.collection,O()))),m(l,""),m(v,r(v)+1)}catch(se){m(f,se.message,!0)}finally{m(d,!1)}}}var G=Lm(),T=c(G),q=c(T),ne=c(q),oe=c(ne);cm(oe,{class:"size-3"}),Se(),s(ne);var Q=u(ne,2),ue=c(Q);xl(ue,{class:"size-3"}),Se(),s(Q);var U=u(Q,2),E=c(U);lm(E,{class:"size-3"}),Se(),s(U);var I=u(U,2),_=c(I);ca(_,{class:"size-3"}),Se(),s(I),s(q);var A=u(q,2),R=c(A);Ta(R,{class:"size-3"}),Se(),s(A);var te=u(A,2),F=c(te);Gr(F,{class:"size-3 text-fg-3"});var $=u(F,2);Xt($);var ee=u($,2);{var L=ce=>{var se=dm(),ve=c(se);Ar(ve,{class:"size-3"}),s(se),_e("click",se,()=>m(a,"")),g(ce,se)};V(ee,ce=>{r(a)&&ce(L)})}s(te);var H=u(te,2),j=c(H),le=c(j);s(j);var he=u(j,2);{var ie=ce=>{var se=um(),ve=c(se);s(se),N(Ae=>S(ve,`${Ae??""} events`),[()=>r(w).length.toLocaleString()]),g(ce,se)};V(he,ce=>{r(w).length&&ce(ie)})}var J=u(he,2),W=c(J);s(J);var X=u(J,2);{var M=ce=>{var se=fm(),ve=u(c(se)),Ae=c(ve,!0);s(ve),s(se),N(Le=>S(Ae,Le),[()=>r(h).sources.join(", ")]),g(ce,se)};V(X,ce=>{r(h).sources.length&&ce(M)})}var K=u(X,2);{var D=ce=>{var se=vm(),ve=u(c(se)),Ae=c(ve,!0);s(ve),s(se),N(Le=>S(Ae,Le),[()=>r(h).dlcs.join(", ")]),g(ce,se)};V(K,ce=>{r(h).dlcs.length&&ce(D)})}var z=u(K,2);{var B=ce=>{var se=gm(),ve=c(se,!0);s(se),N(()=>S(ve,e.collection)),g(ce,se)};V(z,ce=>{e.collection&&ce(B)})}s(H),s(T);var re=u(T,2);{var de=ce=>{var se=bm(),ve=c(se),Ae=c(ve);Da(Ae),Ne(Ae,"placeholder",p);var Le=u(Ae,2),we=c(Le);{var Ie=Fe=>{cn(Fe,{class:"size-3 animate-spin"})},Ee=Fe=>{xl(Fe,{class:"size-3"})};V(we,Fe=>{r(d)?Fe(Ie):Fe(Ee,-1)})}Se(),s(Le),s(ve);var Me=u(ve,2);{var Te=Fe=>{var Qe=pm(),lt=c(Qe,!0);s(Qe),N(()=>S(lt,r(f))),g(Fe,Qe)},Xe=Fe=>{var Qe=hm(),lt=c(Qe);s(Qe),N(()=>S(lt,`${r(v)??""} inserted. Refresh the collection to reload from reddb.`)),g(Fe,Qe)};V(Me,Fe=>{r(f)?Fe(Te):r(v)>0&&Fe(Xe,1)})}s(se),N(Fe=>Le.disabled=Fe,[()=>r(d)||!r(l).trim()||!e.collection]),Sr(Ae,()=>r(l),Fe=>m(l,Fe)),_e("click",Le,Z),g(ce,se)};V(re,ce=>{r(i)&&ce(de)})}var be=u(re,2);{var fe=ce=>{var se=ym(),ve=c(se);{var Ae=we=>{var Ie=xm();g(we,Ie)},Le=we=>{var Ie=_m(),Ee=u(c(Ie));$e(Ee,21,()=>r(w),Me=>`${Me.messageId}-${Me.lsn??Me.entityId}`,(Me,Te)=>{var Xe=mm(),Fe=c(Xe),Qe=c(Fe,!0);s(Fe);var lt=u(Fe),ct=c(lt,!0);s(lt);var Ke=u(lt),He=c(Ke),Ue=c(He,!0);s(He),s(Ke);var ot=u(Ke),ae=c(ot,!0);s(ot);var tt=u(ot),Ze=c(tt,!0);s(tt);var We=u(tt),ut=c(We,!0);s(We),s(Xe),N((Et,Tt)=>{S(Qe,Et),S(ct,r(Te).collection),S(Ue,r(Te).op),S(ae,r(Te).entityId),S(Ze,r(Te).lsn??"-"),S(ut,Tt)},[()=>Y(r(Te).ts),()=>P(r(Te).after)]),g(Me,Xe)}),s(Ee),s(Ie),g(we,Ie)};V(ve,we=>{r(w).length===0?we(Ae):we(Le,-1)})}s(se),g(ce,se)},Ce=ce=>{var se=km(),ve=c(se);$e(ve,21,()=>r(k),Ae=>Ae.query,(Ae,Le)=>{var we=wm(),Ie=c(we),Ee=c(Ie),Me=c(Ee,!0);s(Ee);var Te=u(Ee,2),Xe=c(Te,!0);s(Te),s(Ie);var Fe=u(Ie,2),Qe=c(Fe,!0);s(Fe);var lt=u(Fe,2),ct=c(lt,!0);s(lt),s(we),N(Ke=>{S(Me,r(Le).label),Pe(Te,1,Ke),S(Xe,r(Le).mutates?"mutates":"read-only"),S(Qe,r(Le).query),S(ct,r(Le).note)},[()=>Ve(["rounded border px-1.5 py-0.5 text-[10px]",r(Le).mutates?"border-warn/30 bg-warn/10 text-warn":"border-ok/30 bg-ok/10 text-ok"].join(" "))]),g(Ae,we)}),s(ve),s(se),g(ce,se)},ke=ce=>{var se=Tm(),ve=c(se),Ae=c(ve);{var Le=Fe=>{var Qe=Sm();g(Fe,Qe)},we=Fe=>{var Qe=_t(),lt=ze(Qe);$e(lt,17,()=>r(C),ct=>ct.id,(ct,Ke)=>{var He=Em(),Ue=c(He),ot=c(Ue),ae=c(ot,!0);s(ot);var tt=u(ot,2),Ze=c(tt,!0);s(tt);var We=u(tt,2);{var ut=Mt=>{var Ct=Cm(),xt=c(Ct,!0);s(Ct),N(()=>S(xt,r(Ke).consumer)),g(Mt,Ct)};V(We,Mt=>{r(Ke).consumer&&Mt(ut)})}s(Ue);var Et=u(Ue,2),Tt=c(Et,!0);s(Et),s(He),N((Mt,Ct)=>{Pe(He,1,Mt),S(ae,r(Ke).id),S(Ze,r(Ke).state),S(Tt,Ct)},[()=>Ve(["w-full text-left px-3 py-2 border-b border-line-1/60 hover:bg-bg-1/50 cursor-pointer",r(o)===r(Ke)?"bg-bg-1 text-fg-0":"text-fg-2"].join(" ")),()=>P(r(Ke).message)]),_e("click",He,()=>m(o,r(Ke),!0)),g(ct,He)}),g(Fe,Qe)};V(Ae,Fe=>{r(C).length===0?Fe(Le):Fe(we,-1)})}s(ve);var Ie=u(ve,2),Ee=c(Ie);{var Me=Fe=>{var Qe=Mm(),lt=c(Qe,!0);s(Qe),N(ct=>S(lt,ct),[()=>JSON.stringify(r(C).map(ct=>ct.values),null,2)]),g(Fe,Qe)},Te=Fe=>{var Qe=zm(),lt=u(c(Qe)),ct=c(lt,!0);s(lt);var Ke=u(lt,3),He=c(Ke,!0);s(Ke);var Ue=u(Ke,3),ot=c(Ue,!0);s(Ue);var ae=u(Ue,3),tt=c(ae,!0);s(ae);var Ze=u(ae,3),We=c(Ze,!0);s(Ze),s(Qe),N(ut=>{S(ct,r(o).id),S(He,r(o).state),S(ot,r(o).consumer??"none"),S(tt,r(o).dlc??"none"),S(We,ut)},[()=>P(r(o).message)]),g(Fe,Qe)},Xe=Fe=>{var Qe=Nm();g(Fe,Qe)};V(Ee,Fe=>{r(n)==="json"?Fe(Me):r(o)?Fe(Te,1):Fe(Xe,-1)})}s(Ie),s(se),g(ce,se)};V(be,ce=>{r(n)==="events"?ce(fe):r(n)==="commands"?ce(Ce,1):ce(ke,-1)})}var xe=u(be,2),ge=c(xe);$e(ge,17,()=>r(h).states,([ce,se])=>ce,(ce,se)=>{var ve=y(()=>Qr(r(se),2));let Ae=()=>r(ve)[0],Le=()=>r(ve)[1];var we=Im(),Ie=c(we),Ee=c(Ie,!0);s(Ie);var Me=u(Ie);s(we),N(Te=>{S(Ee,Ae()),S(Me,` ${Te??""}`)},[()=>Le().toLocaleString()]),g(ce,we)});var De=u(ge,2);$e(De,17,()=>r(h).operations,([ce,se])=>ce,(ce,se)=>{var ve=y(()=>Qr(r(se),2));let Ae=()=>r(ve)[0],Le=()=>r(ve)[1];var we=Am(),Ie=c(we),Ee=c(Ie,!0);s(Ie);var Me=u(Ie);s(we),N(Te=>{S(Ee,Ae()),S(Me,` ${Te??""}`)},[()=>Le().toLocaleString()]),g(ce,we)}),s(xe),s(G),N((ce,se,ve,Ae,Le,we)=>{Pe(ne,1,ce),Ne(ne,"aria-pressed",r(n)==="events"),Pe(Q,1,se),Ne(Q,"aria-pressed",r(n)==="messages"),Pe(U,1,ve),Ne(U,"aria-pressed",r(n)==="commands"),Pe(I,1,Ae),Ne(I,"aria-pressed",r(n)==="json"),A.disabled=!e.collection,Pe(A,1,Le),Ne(A,"aria-pressed",r(i)),Ne(A,"title",e.collection?"Insert a queue message":"Open this as a collection to insert messages"),S(le,`${we??""} messages`),S(W,`${r(h).activeConsumers??""} active consumers`)},[()=>Ve(["inline-flex items-center gap-1 px-2 py-1 cursor-pointer transition-colors",r(n)==="events"?"bg-primary text-on-primary":"bg-bg-1 text-fg-2 hover:text-fg-0"].join(" ")),()=>Ve(["inline-flex items-center gap-1 px-2 py-1 cursor-pointer transition-colors border-l border-line-2",r(n)==="messages"?"bg-primary text-on-primary":"bg-bg-1 text-fg-2 hover:text-fg-0"].join(" ")),()=>Ve(["inline-flex items-center gap-1 px-2 py-1 cursor-pointer transition-colors border-l border-line-2",r(n)==="commands"?"bg-primary text-on-primary":"bg-bg-1 text-fg-2 hover:text-fg-0"].join(" ")),()=>Ve(["inline-flex items-center gap-1 px-2 py-1 cursor-pointer transition-colors border-l border-line-2",r(n)==="json"?"bg-primary text-on-primary":"bg-bg-1 text-fg-2 hover:text-fg-0"].join(" ")),()=>Ve(["inline-flex items-center gap-1 h-6 px-2 rounded border cursor-pointer transition-colors disabled:opacity-40 disabled:cursor-not-allowed",r(i)?"border-accent/40 bg-accent/10 text-primary-text":"border-line-1 text-fg-3 hover:text-fg-1 hover:border-line-2"].join(" ")),()=>r(C).length.toLocaleString()]),_e("click",ne,()=>m(n,"events")),_e("click",Q,()=>m(n,"messages")),_e("click",U,()=>m(n,"commands")),_e("click",I,()=>m(n,"json")),_e("click",A,()=>m(i,!r(i))),Sr($,()=>r(a),ce=>m(a,ce)),g(t,G),at()}nr(["click"]);const Pm={capability:"queue",renders:t=>nm(t),component:Om},Dm=["metric","stat","name","key"],Rm=["value","count","total","avg","rate","p50","p95","p99"],ml=["unit","units"];function _l(t){return/bytes?|memory|storage|wal/i.test(t)?"bytes":/rps|rate|requests?_per_second|writes?_per_second|reads?_per_second/i.test(t)?"/s":/ms|latency|response/i.test(t)?"ms":/percent|ratio|usage/i.test(t)?"%":""}function Vm(t){for(const n of ml){const a=t[n];if(typeof a=="string"&&a.trim())return a.trim()}const e=Object.entries(t).find(([n,a])=>ml.includes(n.toLowerCase())&&typeof a=="string"&&a.trim());return e?String(e[1]).trim():null}function Vd(t){const e=[];for(const n of t.result.records){const a=n.values??{},o=Object.entries(a).find(([l,d])=>Dm.includes(l.toLowerCase())&&(typeof d=="string"||typeof d=="number")),i=Object.entries(a).find(([l,d])=>Rm.includes(l.toLowerCase())&&typeof d=="number"&&Number.isFinite(d));if(o&&i){const l=String(o[1]);e.push({key:l,label:l,value:i[1],unit:Vm(a)??_l(l),source:a});continue}for(const[l,d]of Object.entries(a))typeof d!="number"||!Number.isFinite(d)||e.push({key:l,label:l,value:d,unit:_l(l),source:a})}return e}function Hm(t){if(t.capability==="stats")return!0;const e=Vd(t);return e.length>0&&e.length>=t.result.records.length}function yl(t,e){if(e==="bytes"){const n=Math.abs(t);return n>=1024**3?`${(t/1024**3).toFixed(1)} GiB`:n>=1024**2?`${(t/1024**2).toFixed(1)} MiB`:n>=1024?`${(t/1024).toFixed(1)} KiB`:`${t} B`}return e==="%"||e==="ms"||e==="/s"?`${t.toLocaleString()}${e}`:t.toLocaleString()}const Hd={name:"list",size:24,node:[["path",{d:"M3 5h.01"}],["path",{d:"M3 12h.01"}],["path",{d:"M3 19h.01"}],["path",{d:"M8 5h13"}],["path",{d:"M8 12h13"}],["path",{d:"M8 19h13"}]]};Hd.node;function Fm(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Hd}}))}var qm=x('<div class="flex-1 grid place-items-center text-fg-3 text-[12px] font-mono p-6">No numeric statistics in this result.</div>'),Km=x('· <span class="text-fg-2"> </span>',1),jm=x('<div class="rounded border border-line-1 bg-bg-1 px-3 py-2"><div class="type-label truncate"> </div> <div class="mt-1 font-mono text-[20px] font-semibold text-fg-0"> </div></div>'),Bm=x('<div class="flex-1 overflow-auto p-3"><div class="grid grid-cols-[repeat(auto-fill,minmax(220px,1fr))] gap-2"></div></div>'),Um=x('<div class="rounded border border-line-1 bg-bg-1 px-3 py-3 text-center"><svg viewBox="0 0 120 70" class="mx-auto h-[82px] w-[150px]"><path d="M 15 60 A 45 45 0 0 1 105 60" fill="none" stroke="var(--color-line-2)" stroke-width="10" stroke-linecap="round"></path><path d="M 15 60 A 45 45 0 0 1 105 60" fill="none" stroke="var(--color-accent)" stroke-width="10" stroke-linecap="round" pathLength="100"></path><text x="60" y="58" text-anchor="middle" class="fill-fg-0 font-mono text-[13px] font-semibold"> </text></svg> <div class="mt-1 truncate font-mono text-[11px] text-fg-2"> </div></div>'),Wm=x('<div class="flex-1 overflow-auto p-3"><div class="grid grid-cols-[repeat(auto-fill,minmax(180px,1fr))] gap-2"></div></div>'),Gm=x('<tr class="border-b border-line-1/60 hover:bg-bg-1/40"><td class="px-2 py-1 text-fg-0"> </td><td class="px-2 py-1 text-right text-primary-text"> </td><td class="px-2 py-1 text-fg-3"> </td></tr>'),Ym=x('<div class="flex-1 overflow-auto"><table class="w-full border-collapse text-[12px] font-mono"><thead class="sticky top-0 bg-bg-1 z-10"><tr class="border-b border-line-1 text-fg-3"><th class="px-2 py-1.5 text-left font-normal">metric</th><th class="px-2 py-1.5 text-right font-normal">value</th><th class="px-2 py-1.5 text-left font-normal">unit</th></tr></thead><tbody></tbody></table></div>'),$m=x('<div class="border-b border-line-1 px-3 py-1.5 flex items-center gap-2 text-[11px] font-mono bg-bg-1/40"><div class="inline-flex border border-line-2 rounded overflow-hidden"><button type="button"><!> kpis</button> <button type="button"><!> gauges</button> <button type="button"><!> table</button></div> <div class="ml-auto text-fg-3"> <!></div></div> <!>',1),Xm=x('<div class="flex h-full flex-col text-fg-1"><!></div>');function Zm(t,e){nt(e,!0);let n=me("kpi");const a=y(()=>Vd(e.result)),o=y(()=>Math.max(1,...r(a).map(p=>Math.abs(p.value))));function i(p){return p>=0&&p<=100?p:Math.min(100,Math.abs(p)/r(o)*100)}var l=Xm(),d=c(l);{var f=p=>{var b=qm();g(p,b)},v=p=>{var b=$m(),h=ze(b),w=c(h),k=c(w),C=c(k);Fm(C,{class:"size-3"}),Se(),s(k);var P=u(k,2),Y=c(P);zd(Y,{class:"size-3"}),Se(),s(P);var O=u(P,2),Z=c(O);_v(Z,{class:"size-3"}),Se(),s(O),s(w);var G=u(w,2),T=c(G),q=u(T);{var ne=E=>{var I=Km(),_=u(ze(I)),A=c(_,!0);s(_),N(()=>S(A,e.collection)),g(E,I)};V(q,E=>{e.collection&&E(ne)})}s(G),s(h);var oe=u(h,2);{var Q=E=>{var I=Bm(),_=c(I);$e(_,23,()=>r(a),(A,R)=>`${A.key}-${R}`,(A,R)=>{var te=jm(),F=c(te),$=c(F,!0);s(F);var ee=u(F,2),L=c(ee,!0);s(ee),s(te),N(H=>{S($,r(R).label),S(L,H)},[()=>yl(r(R).value,r(R).unit)]),g(A,te)}),s(_),s(I),g(E,I)},ue=E=>{var I=Wm(),_=c(I);$e(_,23,()=>r(a),(A,R)=>`${A.key}-${R}`,(A,R)=>{const te=y(()=>i(r(R).value));var F=Um(),$=c(F),ee=u(c($)),L=u(ee),H=c(L,!0);s(L),s($);var j=u($,2),le=c(j,!0);s(j),s(F),N(he=>{Ne($,"aria-label",`${r(R).label??""} gauge`),Ne(ee,"stroke-dasharray",`${r(te)} 100`),S(H,he),S(le,r(R).label)},[()=>yl(r(R).value,r(R).unit)]),g(A,F)}),s(_),s(I),g(E,I)},U=E=>{var I=Ym(),_=c(I),A=u(c(_));$e(A,23,()=>r(a),(R,te)=>`${R.key}-${te}`,(R,te)=>{var F=Gm(),$=c(F),ee=c($,!0);s($);var L=u($),H=c(L,!0);s(L);var j=u(L),le=c(j,!0);s(j),s(F),N(he=>{S(ee,r(te).label),S(H,he),S(le,r(te).unit||"-")},[()=>r(te).value.toLocaleString()]),g(R,F)}),s(A),s(_),s(I),g(E,I)};V(oe,E=>{r(n)==="kpi"?E(Q):r(n)==="gauge"?E(ue,1):E(U,-1)})}N((E,I,_,A)=>{Pe(k,1,E),Ne(k,"aria-pressed",r(n)==="kpi"),Pe(P,1,I),Ne(P,"aria-pressed",r(n)==="gauge"),Pe(O,1,_),Ne(O,"aria-pressed",r(n)==="table"),S(T,`${A??""} metrics `)},[()=>Ve(["inline-flex items-center gap-1 px-2 py-1 cursor-pointer transition-colors",r(n)==="kpi"?"bg-primary text-on-primary":"bg-bg-1 text-fg-2 hover:text-fg-0"].join(" ")),()=>Ve(["inline-flex items-center gap-1 px-2 py-1 cursor-pointer transition-colors border-l border-line-2",r(n)==="gauge"?"bg-primary text-on-primary":"bg-bg-1 text-fg-2 hover:text-fg-0"].join(" ")),()=>Ve(["inline-flex items-center gap-1 px-2 py-1 cursor-pointer transition-colors border-l border-line-2",r(n)==="table"?"bg-primary text-on-primary":"bg-bg-1 text-fg-2 hover:text-fg-0"].join(" ")),()=>r(a).length.toLocaleString()]),_e("click",k,()=>m(n,"kpi")),_e("click",P,()=>m(n,"gauge")),_e("click",O,()=>m(n,"table")),g(p,b)};V(d,p=>{r(a).length===0?p(f):p(v,-1)})}s(l),g(t,l),at()}nr(["click"]);const Qm={capability:"stats",renders:t=>Hm(t),component:Zm},Fd={name:"git-compare-arrows",size:24,node:[["circle",{cx:"5",cy:"6",r:"3"}],["path",{d:"M12 6h5a2 2 0 0 1 2 2v7"}],["path",{d:"m15 9-3-3 3-3"}],["circle",{cx:"19",cy:"18",r:"3"}],["path",{d:"M12 18H7a2 2 0 0 1-2-2V9"}],["path",{d:"m9 15 3 3-3 3"}]]};Fd.node;function Xi(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Fd}}))}const qd=["change","change_type","operation","op"],Jm=["target_collection","collection_name","diff_collection"],e_=["entity_id","row_id","rid","id"],Kd=["before_state","before_row","before"],jd=["after_state","after_row","after"],t_=["note","summary","message"];function Xn(t,e){for(const n of e)if(n in t)return[n,t[n]];return Object.entries(t).find(([n])=>e.includes(n.toLowerCase()))??null}function wl(t){if(typeof t!="string")return t;const e=t.trim();if(!e||!/^[{[]/.test(e))return t;try{return JSON.parse(e)}catch{return t}}function r_(t){return t.result.records.map((e,n)=>{const a=e.values??{},o=Xn(a,qd),i=Xn(a,Jm),l=Xn(a,e_),d=Xn(a,Kd),f=Xn(a,jd),v=Xn(a,t_);return{index:n,id:String(a.id??a.diff_id??(l==null?void 0:l[1])??n+1),change:String((o==null?void 0:o[1])??"modified"),collection:(i==null?void 0:i[1])===void 0||(i==null?void 0:i[1])===null?null:String(i[1]),entityId:(l==null?void 0:l[1])===void 0||(l==null?void 0:l[1])===null?null:String(l[1]),before:wl((d==null?void 0:d[1])??null),after:wl((f==null?void 0:f[1])??null),note:(v==null?void 0:v[1])===void 0||(v==null?void 0:v[1])===null?null:String(v[1]),values:a}})}function n_(t){return t.capability==="diff"?!0:t.result.records.some(e=>{const n=Object.keys(e.values??{}).map(a=>a.toLowerCase());return qd.some(a=>n.includes(a))&&(Kd.some(a=>n.includes(a))||jd.some(a=>n.includes(a)))})}function a_(t){const e=new Map;for(const n of t)e.set(n.change,(e.get(n.change)??0)+1);return[...e.entries()].sort(([n],[a])=>n.localeCompare(a))}function Zi(t){return!!t&&typeof t=="object"&&!Array.isArray(t)}function kl(t){return t===void 0?"__red_ui_undefined__":Zi(t)?JSON.stringify(Object.fromEntries(Object.entries(t).sort(([e],[n])=>e.localeCompare(n)))):JSON.stringify(t)}function o_(t){const e=Zi(t.before)?t.before:{},n=Zi(t.after)?t.after:{};return[...new Set([...Object.keys(e),...Object.keys(n)])].sort((o,i)=>o.localeCompare(i)).map(o=>{const i=Object.prototype.hasOwnProperty.call(e,o),l=Object.prototype.hasOwnProperty.call(n,o),d=e[o],f=n[o],v=!i&&l?"added":i&&!l?"removed":kl(d)===kl(f)?"unchanged":"modified";return{field:o,before:d,after:f,status:v}})}function Zn(t){return t==null||t===""?"-":typeof t=="object"?JSON.stringify(t,null,2):String(t)}var i_=x('<div class="flex-1 grid place-items-center text-fg-3 text-[12px] font-mono p-6">No diff shape in this result.</div>'),s_=x('<button type="button" class="text-fg-3 hover:text-fg-1 cursor-pointer" aria-label="Clear diff filter"><!></button>'),l_=x('<span><span class="text-fg-2"> </span> </span>'),c_=x('<span class="text-fg-2"> </span>'),d_=x('<div class="flex-1 overflow-auto p-3 text-[12px] font-mono"><pre class="whitespace-pre-wrap text-fg-1"> </pre></div>'),u_=x('<span class="ml-auto text-fg-3"> </span>'),f_=x('<div class="mt-1 truncate text-fg-1"> </div>'),v_=x('<button type="button"><div class="flex items-center gap-2"><span class="text-primary-text"> </span> <span class="text-fg-3 truncate"> </span> <!></div> <!></button>'),g_=x('<span class="text-fg-3">note</span><span class="text-fg-1"> </span>',1),p_=x('<div class="px-2 py-2 text-fg-3">No changed fields in this row.</div>'),h_=x('<tr class="border-b border-line-1/60 last:border-b-0"><td> </td><td class="px-2 py-1 align-top text-fg-0"> </td><td class="max-w-[260px] px-2 py-1 align-top text-fg-2"><pre class="whitespace-pre-wrap break-words"> </pre></td><td class="max-w-[260px] px-2 py-1 align-top text-fg-2"><pre class="whitespace-pre-wrap break-words"> </pre></td></tr>'),b_=x('<table class="w-full border-collapse"><thead class="bg-bg-0 text-fg-3"><tr class="border-b border-line-1"><th class="w-[110px] px-2 py-1 text-left font-normal">status</th><th class="w-[150px] px-2 py-1 text-left font-normal">field</th><th class="px-2 py-1 text-left font-normal">before</th><th class="px-2 py-1 text-left font-normal">after</th></tr></thead><tbody></tbody></table>'),x_=x('<div class="mb-3 border border-line-1"><div class="flex items-center gap-2 border-b border-line-1 bg-bg-1 px-2 py-1.5"><span class="text-fg-0">field diff</span> <span class="text-fg-3"> </span> <label class="ml-auto inline-flex items-center gap-1 text-fg-3"><input type="checkbox" class="size-3 accent-current"/> unchanged</label></div> <!></div>'),m_=x('<div class="mb-3 grid grid-cols-[100px_1fr] gap-x-3 gap-y-1"><span class="text-fg-3">change</span><span class="text-primary-text"> </span> <span class="text-fg-3">entity</span><span class="text-fg-0"> </span> <span class="text-fg-3">collection</span><span class="text-fg-0"> </span> <!></div> <!> <div class="grid grid-cols-2 gap-3"><section class="min-w-0"><div class="type-label mb-1">full before</div> <pre class="min-h-[160px] whitespace-pre-wrap break-words rounded border border-line-1 bg-bg-1 p-2 text-fg-1"> </pre></section> <section class="min-w-0"><div class="type-label mb-1">full after</div> <pre class="min-h-[160px] whitespace-pre-wrap break-words rounded border border-line-1 bg-bg-1 p-2 text-fg-1"> </pre></section></div>',1),__=x('<div class="text-fg-3">No diff entry selected.</div>'),y_=x('<div class="flex-1 min-h-0 grid grid-cols-[minmax(320px,0.9fr)_1.1fr]"><div class="overflow-auto border-r border-line-1 text-[12px] font-mono"></div> <div class="overflow-auto p-3 text-[12px] font-mono"><!></div></div>'),w_=x('<div class="border-b border-line-1 px-3 py-1.5 flex items-center gap-2 text-[11px] font-mono bg-bg-1/40"><div class="inline-flex border border-line-2 rounded overflow-hidden"><button type="button"><!> diff</button> <button type="button"><!> raw</button></div> <div class="inline-flex items-center gap-1.5 border border-line-1 rounded px-2 py-1 bg-bg-0"><!> <input type="text" placeholder="change, id, value…" class="bg-transparent text-fg-1 outline-none w-[190px] placeholder:text-fg-3"/> <!></div> <div class="ml-auto flex items-center gap-3 text-fg-3"><!> <!></div></div> <!>',1),k_=x('<div class="flex h-full flex-col text-fg-1"><!></div>');function Bd(t,e){nt(e,!0);let n=me("summary"),a=me(""),o=me(null),i=me(!1);const l=y(()=>r_(e.result)),d=y(()=>a_(r(l))),f=y(()=>{const Y=r(a).trim().toLowerCase();return Y?r(l).filter(O=>O.id.toLowerCase().includes(Y)||O.change.toLowerCase().includes(Y)||(O.collection??"").toLowerCase().includes(Y)||(O.entityId??"").toLowerCase().includes(Y)||Zn(O.before).toLowerCase().includes(Y)||Zn(O.after).toLowerCase().includes(Y)):r(l)}),v=y(()=>r(o)??r(f)[0]??null),p=y(()=>r(v)?o_(r(v)):[]),b=y(()=>r(i)?r(p):r(p).filter(Y=>Y.status!=="unchanged"));function h(Y){return Y==="added"?"text-ok":Y==="removed"?"text-danger":Y==="modified"?"text-primary-text":"text-fg-3"}var w=k_(),k=c(w);{var C=Y=>{var O=i_();g(Y,O)},P=Y=>{var O=w_(),Z=ze(O),G=c(Z),T=c(G),q=c(T);Xi(q,{class:"size-3"}),Se(),s(T);var ne=u(T,2),oe=c(ne);ca(oe,{class:"size-3"}),Se(),s(ne),s(G);var Q=u(G,2),ue=c(Q);Gr(ue,{class:"size-3 text-fg-3"});var U=u(ue,2);Xt(U);var E=u(U,2);{var I=L=>{var H=s_(),j=c(H);Ar(j,{class:"size-3"}),s(H),_e("click",H,()=>m(a,"")),g(L,H)};V(E,L=>{r(a)&&L(I)})}s(Q);var _=u(Q,2),A=c(_);$e(A,17,()=>r(d),([L,H])=>L,(L,H)=>{var j=y(()=>Qr(r(H),2));let le=()=>r(j)[0],he=()=>r(j)[1];var ie=l_(),J=c(ie),W=c(J,!0);s(J);var X=u(J);s(ie),N(()=>{S(W,le()),S(X,` ${he()??""}`)}),g(L,ie)});var R=u(A,2);{var te=L=>{var H=c_(),j=c(H,!0);s(H),N(()=>S(j,e.collection)),g(L,H)};V(R,L=>{e.collection&&L(te)})}s(_),s(Z);var F=u(Z,2);{var $=L=>{var H=d_(),j=c(H),le=c(j,!0);s(j),s(H),N(he=>S(le,he),[()=>JSON.stringify(r(f).map(he=>he.values),null,2)]),g(L,H)},ee=L=>{var H=y_(),j=c(H);$e(j,21,()=>r(f),W=>W.id,(W,X)=>{var M=v_(),K=c(M),D=c(K),z=c(D,!0);s(D);var B=u(D,2),re=c(B,!0);s(B);var de=u(B,2);{var be=ke=>{var xe=u_(),ge=c(xe,!0);s(xe),N(()=>S(ge,r(X).collection)),g(ke,xe)};V(de,ke=>{r(X).collection&&ke(be)})}s(K);var fe=u(K,2);{var Ce=ke=>{var xe=f_(),ge=c(xe,!0);s(xe),N(()=>S(ge,r(X).note)),g(ke,xe)};V(fe,ke=>{r(X).note&&ke(Ce)})}s(M),N(ke=>{Pe(M,1,ke),S(z,r(X).change),S(re,r(X).entityId??r(X).id)},[()=>Ve(["w-full text-left px-3 py-2 border-b border-line-1/60 hover:bg-bg-1/50 cursor-pointer",r(v)===r(X)?"bg-bg-1 text-fg-0":"text-fg-2"].join(" "))]),_e("click",M,()=>m(o,r(X),!0)),g(W,M)}),s(j);var le=u(j,2),he=c(le);{var ie=W=>{var X=m_(),M=ze(X),K=u(c(M)),D=c(K,!0);s(K);var z=u(K,3),B=c(z,!0);s(z);var re=u(z,3),de=c(re,!0);s(re);var be=u(re,2);{var fe=Le=>{var we=g_(),Ie=u(ze(we)),Ee=c(Ie,!0);s(Ie),N(()=>S(Ee,r(v).note)),g(Le,we)};V(be,Le=>{r(v).note&&Le(fe)})}s(M);var Ce=u(M,2);{var ke=Le=>{var we=x_(),Ie=c(we),Ee=u(c(Ie),2),Me=c(Ee);s(Ee);var Te=u(Ee,2),Xe=c(Te);Xt(Xe),Se(),s(Te),s(Ie);var Fe=u(Ie,2);{var Qe=ct=>{var Ke=p_();g(ct,Ke)},lt=ct=>{var Ke=b_(),He=u(c(Ke));$e(He,21,()=>r(b),Ue=>Ue.field,(Ue,ot)=>{var ae=h_(),tt=c(ae),Ze=c(tt,!0);s(tt);var We=u(tt),ut=c(We,!0);s(We);var Et=u(We),Tt=c(Et),Mt=c(Tt,!0);s(Tt),s(Et);var Ct=u(Et),xt=c(Ct),mt=c(xt,!0);s(xt),s(Ct),s(ae),N((wt,Ot,Zt)=>{Pe(tt,1,wt),S(Ze,r(ot).status),S(ut,r(ot).field),S(Mt,Ot),S(mt,Zt)},[()=>Ve(["px-2 py-1 align-top",h(r(ot).status)].join(" ")),()=>Zn(r(ot).before),()=>Zn(r(ot).after)]),g(Ue,ae)}),s(He),s(Ke),g(ct,Ke)};V(Fe,ct=>{r(b).length===0?ct(Qe):ct(lt,-1)})}s(we),N(()=>S(Me,`${r(b).length??""}/${r(p).length??""} fields`)),dv(Xe,()=>r(i),ct=>m(i,ct)),g(Le,we)};V(Ce,Le=>{r(p).length>0&&Le(ke)})}var xe=u(Ce,2),ge=c(xe),De=u(c(ge),2),ce=c(De,!0);s(De),s(ge);var se=u(ge,2),ve=u(c(se),2),Ae=c(ve,!0);s(ve),s(se),s(xe),N((Le,we)=>{S(D,r(v).change),S(B,r(v).entityId??r(v).id),S(de,r(v).collection??"-"),S(ce,Le),S(Ae,we)},[()=>Zn(r(v).before),()=>Zn(r(v).after)]),g(W,X)},J=W=>{var X=__();g(W,X)};V(he,W=>{r(v)?W(ie):W(J,-1)})}s(le),s(H),g(L,H)};V(F,L=>{r(n)==="raw"?L($):L(ee,-1)})}N((L,H)=>{Pe(T,1,L),Ne(T,"aria-pressed",r(n)==="summary"),Pe(ne,1,H),Ne(ne,"aria-pressed",r(n)==="raw")},[()=>Ve(["inline-flex items-center gap-1 px-2 py-1 cursor-pointer transition-colors",r(n)==="summary"?"bg-primary text-on-primary":"bg-bg-1 text-fg-2 hover:text-fg-0"].join(" ")),()=>Ve(["inline-flex items-center gap-1 px-2 py-1 cursor-pointer transition-colors border-l border-line-2",r(n)==="raw"?"bg-primary text-on-primary":"bg-bg-1 text-fg-2 hover:text-fg-0"].join(" "))]),_e("click",T,()=>m(n,"summary")),_e("click",ne,()=>m(n,"raw")),Sr(U,()=>r(a),L=>m(a,L)),g(Y,O)};V(k,Y=>{r(l).length===0?Y(C):Y(P,-1)})}s(w),g(t,w),at()}nr(["click"]);const S_={capability:"diff",renders:n_,component:Bd},Ud={name:"file-text",size:24,node:[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5"}],["path",{d:"M10 9H8"}],["path",{d:"M16 13H8"}],["path",{d:"M16 17H8"}]]};Ud.node;function C_(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Ud}}))}const E_=new Set(["rid","collection","kind","tenant","created_at","updated_at","body"]);function M_(t,e,n){const a=e&&typeof e=="object"&&!Array.isArray(e)?e:{};for(const i of["title","name","slug","id","event_type","type"]){const l=t[i]??a[i];if(typeof l=="string"&&l.trim())return l;if(typeof l=="number")return String(l)}const o=t.rid;return typeof o=="string"||typeof o=="number"?`document ${o}`:`document ${n+1}`}function z_(t,e){const n=e&&typeof e=="object"&&!Array.isArray(e)?e:{},a=[];for(const i of["category","source","status","collection"]){const l=t[i]??n[i];typeof l=="string"&&l.trim()&&a.push(l)}const o=t.updated_at??t.created_at;return(typeof o=="string"||typeof o=="number")&&a.push(String(o)),a.join(" · ")}function Wd(t){const e=[];for(const[n,a]of t.result.records.entries()){const o=a.values??{},i=o.body;if(o.kind!=="document"&&(i===null||typeof i!="object"))continue;const l={};for(const[d,f]of Object.entries(o))E_.has(d.toLowerCase())||(l[d]=f);e.push({rid:String(o.rid??n+1),title:M_(o,i,n),subtitle:z_(o,i),body:i,fields:l,values:o})}return e}function N_(t){return t.capability==="document"?!0:Wd(t).length>0}var T_=x('<div class="flex-1 grid place-items-center text-fg-3 text-[12px] font-mono p-6">No document shape in this result.</div>'),I_=x('<button type="button" class="text-fg-3 hover:text-fg-1 cursor-pointer" aria-label="Clear document filter"><!></button>'),A_=x('· <span class="text-fg-2"> </span>',1),L_=x('<div class="mt-1 truncate text-fg-3"> </div>'),O_=x('<button type="button"><div class="flex items-center gap-2"><span class="text-primary-text truncate"> </span> <span class="ml-auto text-fg-3"> </span></div> <!></button>'),P_=x('<pre class="m-0 whitespace-pre-wrap text-fg-1"> </pre>'),D_=x('<tr class="border-b border-line-1/60"><td class="w-[180px] px-2 py-1 text-fg-3 align-top"> </td><td class="px-2 py-1 text-fg-1 align-top"><pre class="m-0 whitespace-pre-wrap"> </pre></td></tr>'),R_=x('<table class="w-full border-collapse"><tbody></tbody></table>'),V_=x('<pre class="m-0 whitespace-pre-wrap text-fg-1"> </pre>'),H_=x('<div class="text-fg-3">No documents match the current filter.</div>'),F_=x('<div class="border-b border-line-1 px-3 py-1.5 flex items-center gap-2 text-[11px] font-mono bg-bg-1/40"><div class="inline-flex border border-line-2 rounded overflow-hidden"><button type="button"><!> body</button> <button type="button"><!> fields</button> <button type="button"><!> raw</button></div> <div class="inline-flex items-center gap-1.5 border border-line-1 rounded px-2 py-1 bg-bg-0"><!> <input type="text" placeholder="document search…" class="bg-transparent text-fg-1 outline-none w-[200px] placeholder:text-fg-3"/> <!></div> <div class="ml-auto text-fg-3"> <!> documents <!></div></div> <div class="flex-1 min-h-0 grid grid-cols-[minmax(280px,0.75fr)_1.25fr]"><div class="overflow-auto border-r border-line-1 text-[12px] font-mono"></div> <div class="min-h-0 overflow-auto p-3 text-[12px] font-mono"><!></div></div> <div class="border-t border-line-1 px-3 py-1.5 text-[10px] font-mono text-fg-3"> </div>',1),q_=x('<div class="flex h-full flex-col text-fg-1"><!></div>');function K_(t,e){nt(e,!0);let n=me("body"),a=me(""),o=me(null);const i=y(()=>Wd(e.result)),l=y(()=>{const w=r(a).trim().toLowerCase();return w?r(i).filter(k=>k.title.toLowerCase().includes(w)||k.subtitle.toLowerCase().includes(w)||JSON.stringify(k.body).toLowerCase().includes(w)):r(i)}),d=y(()=>r(o)&&r(l).includes(r(o))?r(o):r(l)[0]??null);function f(w){return JSON.stringify(w??null,null,2)}var v=q_(),p=c(v);{var b=w=>{var k=T_();g(w,k)},h=w=>{var k=F_(),C=ze(k),P=c(C),Y=c(P),O=c(Y);ca(O,{class:"size-3"}),Se(),s(Y);var Z=u(Y,2),G=c(Z);C_(G,{class:"size-3"}),Se(),s(Z);var T=u(Z,2),q=c(T);ca(q,{class:"size-3"}),Se(),s(T),s(P);var ne=u(P,2),oe=c(ne);Gr(oe,{class:"size-3 text-fg-3"});var Q=u(oe,2);Xt(Q);var ue=u(Q,2);{var U=ie=>{var J=I_(),W=c(J);Ar(W,{class:"size-3"}),s(J),_e("click",J,()=>m(a,"")),g(ie,J)};V(ue,ie=>{r(a)&&ie(U)})}s(ne);var E=u(ne,2),I=c(E,!0),_=u(I);{var A=ie=>{var J=bt();N(W=>S(J,`of ${W??""}`),[()=>r(i).length.toLocaleString()]),g(ie,J)};V(_,ie=>{r(a)&&ie(A)})}var R=u(_,2);{var te=ie=>{var J=A_(),W=u(ze(J)),X=c(W,!0);s(W),N(()=>S(X,e.collection)),g(ie,J)};V(R,ie=>{e.collection&&ie(te)})}s(E),s(C);var F=u(C,2),$=c(F);$e($,21,()=>r(l),ie=>ie.rid,(ie,J)=>{var W=O_(),X=c(W),M=c(X),K=c(M,!0);s(M);var D=u(M,2),z=c(D);s(D),s(X);var B=u(X,2);{var re=de=>{var be=L_(),fe=c(be,!0);s(be),N(()=>S(fe,r(J).subtitle)),g(de,be)};V(B,de=>{r(J).subtitle&&de(re)})}s(W),N(de=>{Pe(W,1,de),S(K,r(J).title),S(z,`#${r(J).rid??""}`)},[()=>Ve(["w-full text-left px-3 py-2 border-b border-line-1/60 hover:bg-bg-1/50 cursor-pointer",r(d)===r(J)?"bg-bg-1 text-fg-0":"text-fg-2"].join(" "))]),_e("click",W,()=>m(o,r(J),!0)),g(ie,W)}),s($);var ee=u($,2),L=c(ee);{var H=ie=>{var J=_t(),W=ze(J);{var X=D=>{var z=P_(),B=c(z,!0);s(z),N(re=>S(B,re),[()=>f(r(d).body)]),g(D,z)},M=D=>{var z=R_(),B=c(z);$e(B,21,()=>Object.entries(r(d).fields),([re,de])=>re,(re,de)=>{var be=y(()=>Qr(r(de),2));let fe=()=>r(be)[0],Ce=()=>r(be)[1];var ke=D_(),xe=c(ke),ge=c(xe,!0);s(xe);var De=u(xe),ce=c(De),se=c(ce,!0);s(ce),s(De),s(ke),N(ve=>{S(ge,fe()),S(se,ve)},[()=>f(Ce())]),g(re,ke)}),s(B),s(z),g(D,z)},K=D=>{var z=V_(),B=c(z,!0);s(z),N(re=>S(B,re),[()=>f(r(d).values)]),g(D,z)};V(W,D=>{r(n)==="body"?D(X):r(n)==="fields"?D(M,1):D(K,-1)})}g(ie,J)},j=ie=>{var J=H_();g(ie,J)};V(L,ie=>{r(d)?ie(H):ie(j,-1)})}s(ee),s(F);var le=u(F,2),he=c(le);s(le),N((ie,J,W,X)=>{Pe(Y,1,ie),Ne(Y,"aria-pressed",r(n)==="body"),Pe(Z,1,J),Ne(Z,"aria-pressed",r(n)==="fields"),Pe(T,1,W),Ne(T,"aria-pressed",r(n)==="raw"),S(I,X),S(he,`${r(i).length??""} documents${e.collection?" · ":""}${e.collection??""??""}`)},[()=>Ve(["inline-flex items-center gap-1 px-2 py-1 cursor-pointer transition-colors",r(n)==="body"?"bg-primary text-on-primary":"bg-bg-1 text-fg-2 hover:text-fg-0"].join(" ")),()=>Ve(["inline-flex items-center gap-1 px-2 py-1 cursor-pointer transition-colors border-l border-line-2",r(n)==="fields"?"bg-primary text-on-primary":"bg-bg-1 text-fg-2 hover:text-fg-0"].join(" ")),()=>Ve(["inline-flex items-center gap-1 px-2 py-1 cursor-pointer transition-colors border-l border-line-2",r(n)==="raw"?"bg-primary text-on-primary":"bg-bg-1 text-fg-2 hover:text-fg-0"].join(" ")),()=>r(l).length.toLocaleString()]),_e("click",Y,()=>m(n,"body")),_e("click",Z,()=>m(n,"fields")),_e("click",T,()=>m(n,"raw")),Sr(Q,()=>r(a),ie=>m(a,ie)),g(w,k)};V(p,w=>{r(i).length===0?w(b):w(h,-1)})}s(v),g(t,v),at()}nr(["click"]);const j_={capability:"document",renders:N_,component:K_};en.register(g1);en.register(p1);en.register(R1);en.register(ix);en.register(tm);en.register(Pm);en.register(Qm);en.register(S_);en.register(j_);en.register(fx);const Gd={name:"git-commit-horizontal",size:24,node:[["circle",{cx:"12",cy:"12",r:"3"}],["line",{x1:"3",x2:"9",y1:"12",y2:"12"}],["line",{x1:"15",x2:"21",y1:"12",y2:"12"}]],aliases:["git-commit"]};Gd.node;function B_(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Gd}}))}const Yd={name:"radio-tower",size:24,node:[["path",{d:"M4.9 16.1C1 12.2 1 5.8 4.9 1.9"}],["path",{d:"M7.8 4.7a6.14 6.14 0 0 0-.8 7.5"}],["circle",{cx:"12",cy:"9",r:"2"}],["path",{d:"M16.2 4.8c2 2 2.26 5.11.8 7.47"}],["path",{d:"M19.1 1.9a9.96 9.96 0 0 1 0 14.1"}],["path",{d:"M9.5 18h5"}],["path",{d:"m8 22 4-11 4 11"}]]};Yd.node;function U_(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Yd}}))}const $d={name:"refresh-cw",size:24,node:[["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"}]]};$d.node;function ks(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return $d}}))}const Xd={name:"shield-check",size:24,node:[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"}],["path",{d:"m9 12 2 2 4-4"}]]};Xd.node;function W_(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Xd}}))}const Zd={name:"pause",size:24,node:[["rect",{x:"14",y:"3",width:"5",height:"18",rx:"1"}],["rect",{x:"5",y:"3",width:"5",height:"18",rx:"1"}]]};Zd.node;function G_(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Zd}}))}var Y_=x("<!> resume",1),$_=x("<!> pause",1),X_=x('<label class="inline-flex items-center gap-1 cursor-pointer"><input type="checkbox" class="accent-accent size-3"/> <span> </span></label>'),Z_=x('<button type="button" class="inline-flex items-center gap-1 px-2 py-1 text-[11px] font-mono rounded border border-line-1 hover:bg-bg-2 text-fg-3" title="Clear buffer"><!> clear</button>'),Q_=x('<div class="p-6 text-[12px] font-mono text-fg-3"><span class="text-primary-text">error:</span> </div>'),J_=x('<div class="p-6 text-[12px] font-mono text-fg-3">Not connected. Use the topbar Connect button to open a stream.</div>'),e0=x('<div class="p-6 text-[12px] font-mono text-fg-3"> </div>'),t0=x('<span class="text-fg-3 ml-auto"> </span>'),r0=x('<li class="px-3 py-1.5 flex items-center gap-3 hover:bg-bg-1"><span class="text-fg-3 w-16 shrink-0"> </span> <span class="text-fg-3 w-16 shrink-0"> </span> <span> </span> <span class="text-fg-2 truncate"> </span> <span class="text-fg-3">·</span> <span class="text-fg-3 truncate"> </span> <!></li>'),n0=x('<ul class="divide-y divide-line-1 font-mono text-[12px]"></ul>'),a0=x('<div class="h-full flex flex-col bg-bg-0"><header class="px-3 py-2 border-b border-line-1 flex items-center gap-3 text-fg-3"><!> <span class="type-label">Live changes</span> <span class="text-[11px] font-mono text-fg-3"> </span> <div class="ml-auto flex items-center gap-1"><button type="button" class="inline-flex items-center gap-1 px-2 py-1 text-[11px] font-mono rounded border border-line-1 hover:bg-bg-2 text-fg-2"><!></button> <div class="inline-flex items-center gap-1 px-2 py-1 text-[11px] font-mono rounded border border-line-1 text-fg-3"><!> <!></div> <!></div></header> <div class="flex-1 overflow-auto"><!></div></div>');function Qd(t,e){nt(e,!0);const n=["insert","update","delete"];let a=me(jt([])),o=me(!1),i=me(jt({insert:!0,update:!0,delete:!0})),l=me(null),d=null,f=null;const v=500;function p(){h(),m(l,null),m(a,[],!0);const H=Be.client;if(!H){m(l,"No active connection.");return}d=new $v({client:H,sseFactory:null}).subscribe({collection:e.collection}),f=d.events.getReader(),b()}async function b(){if(f)try{for(;;){const{value:H,done:j}=await f.read();if(j)return;r(o)||H&&m(a,[H,...r(a)].slice(0,v),!0)}}catch(H){m(l,H.message,!0)}}function h(){if(f){try{f.cancel()}catch{}f=null}d&&(d.close(),d=null)}Lt(()=>{Be.connected,e.collection,Be.connected?p():h()}),Zo(h);function w(H){const j=Date.now()-H;return j<1e3?"now":j<6e4?`${Math.floor(j/1e3)}s ago`:j<36e5?`${Math.floor(j/6e4)}m ago`:`${Math.floor(j/36e5)}h ago`}function k(H){return new Date(H).toISOString().replace("T"," ").replace("Z","")}const C=y(()=>r(a).filter(H=>r(i)[H.operation]??!0)),P=y(()=>e.collection?`collection: ${e.collection}`:"global");var Y=a0(),O=c(Y),Z=c(O);Va(Z,{class:"size-3.5"});var G=u(Z,4),T=c(G);s(G);var q=u(G,2),ne=c(q),oe=c(ne);{var Q=H=>{var j=Y_(),le=ze(j);Jo(le,{class:"size-3"}),Se(),g(H,j)},ue=H=>{var j=$_(),le=ze(j);G_(le,{class:"size-3"}),Se(),g(H,j)};V(oe,H=>{r(o)?H(Q):H(ue,-1)})}s(ne);var U=u(ne,2),E=c(U);pd(E,{class:"size-3"});var I=u(E,2);$e(I,16,()=>n,H=>H,(H,j)=>{var le=X_(),he=c(le);Xt(he);var ie=u(he,2),J=c(ie,!0);s(ie),s(le),N(()=>{Ma(he,r(i)[j]),Pe(ie,1,Ve(r(i)[j]?"text-fg-1":"text-fg-3")),S(J,j)}),_e("change",he,W=>m(i,{...r(i),[j]:W.currentTarget.checked},!0)),g(H,le)}),s(U);var _=u(U,2);{var A=H=>{var j=Z_(),le=c(j);Ar(le,{class:"size-3"}),Se(),s(j),_e("click",j,()=>m(a,[],!0)),g(H,j)};V(_,H=>{r(a).length>0&&H(A)})}s(q),s(O);var R=u(O,2),te=c(R);{var F=H=>{var j=Q_(),le=u(c(j));s(j),N(()=>S(le,` ${r(l)??""}`)),g(H,j)},$=H=>{var j=J_();g(H,j)},ee=H=>{var j=e0(),le=c(j,!0);s(j),N(()=>S(le,r(o)?"Paused — no events captured.":"Listening for changes…")),g(H,j)},L=H=>{var j=n0();$e(j,21,()=>r(C),le=>le.lsn,(le,he)=>{var ie=r0(),J=c(ie),W=c(J,!0);s(J);var X=u(J,2),M=c(X);s(X);var K=u(X,2),D=c(K,!0);s(K);var z=u(K,2),B=c(z,!0);s(z);var re=u(z,4),de=c(re,!0);s(re);var be=u(re,2);{var fe=Ce=>{var ke=t0(),xe=c(ke);s(ke),N(()=>S(xe,`rid ${r(he).rid??""}`)),g(Ce,ke)};V(be,Ce=>{r(he).rid!==void 0&&Ce(fe)})}s(ie),N((Ce,ke,xe)=>{Ne(J,"title",Ce),S(W,ke),S(M,`lsn ${r(he).lsn??""}`),Pe(K,1,xe),S(D,r(he).operation),S(B,r(he).collection),S(de,r(he).kind)},[()=>k(r(he).timestamp),()=>w(r(he).timestamp),()=>Ve(["inline-block w-14 text-center text-[10px] uppercase rounded px-1 py-0.5 shrink-0 border",r(he).operation==="insert"&&"border-ok/40 text-ok",r(he).operation==="update"&&"border-warn/40 text-warn",r(he).operation==="delete"&&"border-accent/40 text-primary-text"].filter(Boolean).join(" "))]),g(le,ie)}),s(j),g(H,j)};V(te,H=>{r(l)?H(F):Be.connected?r(C).length===0?H(ee,2):H(L,-1):H($,1)})}s(R),s(Y),N(()=>{S(T,`· ${r(P)??""}`),Ne(ne,"title",r(o)?"Resume stream":"Pause stream")}),_e("click",ne,()=>m(o,!r(o))),g(t,Y),at()}nr(["click","change"]);var o0=x('<div class="border-b border-line-1 px-3 py-1.5 font-mono text-[11px] text-warn"> </div>'),i0=x('<div class="p-4 font-mono text-[12px] text-fg-3">No active RedDB connection.</div>'),s0=x('<div class="p-4 font-mono text-[12px] text-fg-3">Loading version history…</div>'),l0=x('<div class="p-4 font-mono text-[12px] text-fg-3"><div class="mb-2 text-fg-1">This collection is a normal collection with versioning disabled.</div> <button type="button" class="inline-flex h-7 items-center gap-1 rounded border border-accent/40 bg-accent px-2 text-white hover:bg-accent/90"><!> enable versioning</button></div>'),c0=x('<div class="flex-1 min-h-0"><!></div>'),d0=x("<option> </option>"),u0=x("<option> </option>"),f0=x('<span class="ml-auto text-fg-3"> </span>'),v0=x('<div class="p-4 font-mono text-[12px] text-fg-3">Choose two commits to compare this collection.</div>'),g0=x('<div class="border-b border-line-1 px-3 py-1.5 flex flex-wrap items-center gap-2 font-mono text-[11px]"><label class="inline-flex items-center gap-1 text-fg-3"><span>from</span> <select class="h-7 rounded border border-line-1 bg-bg-0 px-2 text-fg-1"><option>select commit</option><!></select></label> <label class="inline-flex items-center gap-1 text-fg-3"><span>to</span> <select class="h-7 rounded border border-line-1 bg-bg-0 px-2 text-fg-1"><option>select commit</option><!></select></label> <button type="button" class="inline-flex h-7 items-center gap-1 rounded border border-line-1 px-2 text-fg-2 hover:bg-bg-2 disabled:text-fg-3"><!> run diff</button> <!></div> <div class="flex-1 min-h-0"><!></div>',1),p0=x('<div class="p-4 font-mono text-[12px] text-fg-3">No commits yet.</div>'),h0=x('<tr class="border-b border-line-1/60 hover:bg-bg-1/50"><td class="px-3 py-1.5 text-primary-text"> </td><td class="px-3 py-1.5 text-fg-1"> </td><td class="px-3 py-1.5 text-fg-3"> </td><td class="px-3 py-1.5 text-fg-3"> </td></tr>'),b0=x('<table class="w-full border-collapse font-mono text-[12px]"><thead class="sticky top-0 bg-bg-0 text-fg-3"><tr class="border-b border-line-1"><th class="px-3 py-1.5 text-left font-normal">commit</th><th class="px-3 py-1.5 text-left font-normal">message</th><th class="px-3 py-1.5 text-left font-normal">author</th><th class="px-3 py-1.5 text-left font-normal">time</th></tr></thead><tbody></tbody></table>'),x0=x('<div class="flex-1 overflow-auto"><!></div>'),m0=x('<div class="h-full min-h-0 flex flex-col bg-bg-0"><div class="border-b border-line-1 px-3 py-1.5 flex items-center gap-2 font-mono text-[11px]"><div class="inline-flex overflow-hidden rounded border border-line-2"><button type="button"><!> commits</button> <button type="button"><!> diff</button> <button type="button"><!> live</button></div> <span> </span> <span class="text-fg-3"> </span> <button type="button" class="ml-auto inline-flex h-7 items-center gap-1 rounded border border-line-1 px-2 text-fg-3 hover:bg-bg-2 hover:text-fg-1"><!> refresh</button></div> <!> <!></div>');function _0(t,e){nt(e,!0);let n=me("commits"),a=me(null),o=me(jt([])),i=me(""),l=me(""),d=me(null),f=me(!1),v=me(!1),p=me(null),b="";const h=y(()=>r(i).length>0&&r(l).length>0&&r(i)!==r(l));function w(X){return X.slice(0,10)}function k(X){return X?new Date(X).toISOString().replace("T"," ").replace("Z",""):"-"}function C(X){return{ok:!0,query:`/repo/commits/${X.from}/diff/${X.to}?collection=${e.collection}`,capability:"diff",record_count:X.entries.length,result:{columns:["collection","entity_id","change","before","after"],records:X.entries.map((M,K)=>({values:{id:`${M.collection}:${M.entity_id}:${K}`,collection:M.collection,entity_id:M.entity_id,change:M.change,before:M.before??null,after:M.after??null}}))}}}async function P(){if(e.client){m(f,!0),m(p,null),m(d,null);try{const[X,M]=await Promise.all([e.client.collectionVcs(e.collection),e.client.commits({limit:40})]);m(a,X,!0),m(o,M,!0),M.length>=2?(m(l,M[0].hash,!0),m(i,M[1].hash,!0)):M.length===1?(m(l,M[0].hash,!0),m(i,"")):(m(l,""),m(i,""))}catch(X){m(p,X.message,!0)}finally{m(f,!1)}}}async function Y(){if(e.client){m(f,!0),m(p,null);try{m(a,await e.client.setCollectionVcs(e.collection,!0),!0),m(o,await e.client.commits({limit:40}),!0)}catch(X){m(p,X.message,!0)}finally{m(f,!1)}}}async function O(){if(!(!e.client||!r(h))){m(v,!0),m(p,null);try{m(d,await e.client.commitDiff(r(i),r(l),{collection:e.collection}),!0),m(n,"diff")}catch(X){m(p,X.message,!0)}finally{m(v,!1)}}}Lt(()=>{var M;const X=`${((M=e.client)==null?void 0:M.baseUrl)??"none"}:${e.collection}`;X!==b&&(b=X,P())});var Z=m0(),G=c(Z),T=c(G),q=c(T),ne=c(q);B_(ne,{class:"size-3"}),Se(),s(q);var oe=u(q,2),Q=c(oe);Xi(Q,{class:"size-3"}),Se(),s(oe);var ue=u(oe,2),U=c(ue);U_(U,{class:"size-3"}),Se(),s(ue),s(T);var E=u(T,2),I=c(E,!0);s(E);var _=u(E,2),A=c(_,!0);s(_);var R=u(_,2),te=c(R);{var F=X=>{cn(X,{class:"size-3 animate-spin"})},$=X=>{ks(X,{class:"size-3"})};V(te,X=>{r(f)?X(F):X($,-1)})}Se(),s(R),s(G);var ee=u(G,2);{var L=X=>{var M=o0(),K=c(M,!0);s(M),N(()=>S(K,r(p))),g(X,M)};V(ee,X=>{r(p)&&X(L)})}var H=u(ee,2);{var j=X=>{var M=i0();g(X,M)},le=X=>{var M=s0();g(X,M)},he=X=>{var M=l0(),K=u(c(M),2),D=c(K);W_(D,{class:"size-3"}),Se(),s(K),s(M),_e("click",K,()=>void Y()),g(X,M)},ie=X=>{var M=c0(),K=c(M);Qd(K,{get collection(){return e.collection}}),s(M),g(X,M)},J=X=>{var M=g0(),K=ze(M),D=c(K),z=u(c(D),2),B=c(z);B.value=B.__value="";var re=u(B);$e(re,17,()=>r(o),Ie=>Ie.hash,(Ie,Ee)=>{var Me=d0(),Te=c(Me);s(Me);var Xe={};N(Fe=>{S(Te,`${Fe??""} · ${r(Ee).message??""}`),Xe!==(Xe=r(Ee).hash)&&(Me.value=(Me.__value=r(Ee).hash)??"")},[()=>w(r(Ee).hash)]),g(Ie,Me)}),s(z),s(D);var de=u(D,2),be=u(c(de),2),fe=c(be);fe.value=fe.__value="";var Ce=u(fe);$e(Ce,17,()=>r(o),Ie=>Ie.hash,(Ie,Ee)=>{var Me=u0(),Te=c(Me);s(Me);var Xe={};N(Fe=>{S(Te,`${Fe??""} · ${r(Ee).message??""}`),Xe!==(Xe=r(Ee).hash)&&(Me.value=(Me.__value=r(Ee).hash)??"")},[()=>w(r(Ee).hash)]),g(Ie,Me)}),s(be),s(de);var ke=u(de,2),xe=c(ke);{var ge=Ie=>{cn(Ie,{class:"size-3 animate-spin"})},De=Ie=>{Xi(Ie,{class:"size-3"})};V(xe,Ie=>{r(v)?Ie(ge):Ie(De,-1)})}Se(),s(ke);var ce=u(ke,2);{var se=Ie=>{var Ee=f0(),Me=c(Ee);s(Ee),N(()=>S(Me,`+${r(d).added??""} -${r(d).removed??""} ~${r(d).modified??""}`)),g(Ie,Ee)};V(ce,Ie=>{r(d)&&Ie(se)})}s(K);var ve=u(K,2),Ae=c(ve);{var Le=Ie=>{{let Ee=y(()=>C(r(d)));Bd(Ie,{get result(){return r(Ee)},get collection(){return e.collection}})}},we=Ie=>{var Ee=v0();g(Ie,Ee)};V(Ae,Ie=>{r(d)?Ie(Le):Ie(we,-1)})}s(ve),N(()=>ke.disabled=!r(h)||r(v)),qi(z,()=>r(i),Ie=>m(i,Ie)),qi(be,()=>r(l),Ie=>m(l,Ie)),_e("click",ke,()=>void O()),g(X,M)},W=X=>{var M=x0(),K=c(M);{var D=B=>{var re=p0();g(B,re)},z=B=>{var re=b0(),de=u(c(re));$e(de,21,()=>r(o),be=>be.hash,(be,fe)=>{var Ce=h0(),ke=c(Ce),xe=c(ke,!0);s(ke);var ge=u(ke),De=c(ge,!0);s(ge);var ce=u(ge),se=c(ce,!0);s(ce);var ve=u(ce),Ae=c(ve,!0);s(ve),s(Ce),N((Le,we)=>{var Ie;S(xe,Le),S(De,r(fe).message),S(se,((Ie=r(fe).author)==null?void 0:Ie.name)??"-"),S(Ae,we)},[()=>w(r(fe).hash),()=>k(r(fe).timestamp_ms)]),g(be,Ce)}),s(de),s(re),g(B,re)};V(K,B=>{r(o).length===0?B(D):B(z,-1)})}s(M),g(X,M)};V(H,X=>{e.client?r(f)&&!r(a)?X(le,1):r(a)&&!r(a).versioned?X(he,2):r(n)==="live"?X(ie,3):r(n)==="diff"?X(J,4):X(W,-1):X(j)})}s(Z),N((X,M,K)=>{var D,z;Pe(q,1,X),Pe(oe,1,M),Pe(ue,1,K),Pe(E,1,Ve((D=r(a))!=null&&D.versioned?"text-ok":"text-fg-3")),S(I,(z=r(a))!=null&&z.versioned?"versioned":"not versioned"),S(A,e.collection),R.disabled=r(f)},[()=>Ve(["inline-flex h-7 items-center gap-1 px-2",r(n)==="commits"?"bg-primary text-on-primary":"bg-bg-1 text-fg-2 hover:text-fg-0"].join(" ")),()=>Ve(["inline-flex h-7 items-center gap-1 border-l border-line-2 px-2",r(n)==="diff"?"bg-primary text-on-primary":"bg-bg-1 text-fg-2 hover:text-fg-0"].join(" ")),()=>Ve(["inline-flex h-7 items-center gap-1 border-l border-line-2 px-2",r(n)==="live"?"bg-primary text-on-primary":"bg-bg-1 text-fg-2 hover:text-fg-0"].join(" "))]),_e("click",q,()=>m(n,"commits")),_e("click",oe,()=>m(n,"diff")),_e("click",ue,()=>m(n,"live")),_e("click",R,()=>void P()),g(t,Z),at()}nr(["click"]);var y0=x('<span class="text-fg-3">·</span> <span class="text-fg-2 font-mono text-[11px] truncate max-w-[280px]"> </span>',1),w0=x('<span class="text-warn font-mono text-[11px]">disconnected</span>'),k0=x("<!> <span>Running…</span>",1),S0=x("<!> <span>Run</span>",1),C0=x('<div class="h-full grid place-items-center p-6" aria-live="polite" aria-busy="true"><div class="w-full max-w-md rounded border border-line-1 bg-bg-1 p-4 font-mono"><div class="flex items-start justify-between gap-4"><div class="min-w-0"><div class="flex items-center gap-2 text-fg-1 text-[13px]"><!> <span>Running query</span></div> <div class="mt-2 text-[11px] text-fg-3">elapsed <span class="tabular-nums text-fg-2"> </span></div></div> <button type="button" class="inline-flex h-7 items-center gap-1 rounded border border-line-2 px-2 text-[11px] text-fg-2 hover:border-danger/50 hover:text-danger cursor-pointer" aria-label="Cancel running query"><!> <span>Cancel</span></button></div> <div class="mt-3 max-h-24 overflow-hidden rounded bg-bg-0 px-2 py-1.5 text-[11px] text-fg-3"><pre class="m-0 whitespace-pre-wrap break-words"> </pre></div></div></div>'),E0=x('<div class="p-4 text-[12px] font-mono text-warn"><div class="font-semibold mb-1">Query failed</div> <pre class="whitespace-pre-wrap"> </pre></div>'),M0=x('<div class="h-full grid place-items-center text-fg-3 text-[12px] font-mono">Run a query to see results here.</div>'),z0=x('<div class="px-3 py-1.5 border-b border-line-1 bg-bg-1 text-[11px] font-mono text-fg-3"> <span class="text-fg-2">LIMIT</span> to narrow.</div>'),N0=x("<!> <!>",1),T0=x('<div class="flex h-full flex-col"><div class="flex flex-col border-b border-line-1 bg-bg-0" style="height: 40%;"><div class="flex items-center justify-between px-3 py-1.5 border-b border-line-1"><div class="flex items-center gap-2 text-fg-3 type-label"><span>SQL</span> <!></div> <div class="flex items-center gap-2"><span class="text-fg-3 font-mono text-[11px] hidden sm:inline">Run with <!><!></span> <button type="button" class="inline-flex items-center gap-1 rounded border border-accent/60 bg-accent/10 px-2 py-1 text-[12px] font-mono text-primary-text hover:bg-accent/20 disabled:opacity-50 disabled:cursor-not-allowed" aria-label="Run query"><!></button></div></div> <textarea class="flex-1 resize-none bg-bg-0 px-3 py-2 font-mono text-[13px] text-fg-1 outline-none placeholder:text-fg-3" spellcheck="false" autocapitalize="off"></textarea></div> <div class="flex-1 overflow-hidden bg-bg-0"><!></div></div>');function I0(t,e){nt(e,!0),Lt(()=>{Ur.ensure(e.tabId)});const n=y(()=>Ur.states[e.tabId]),a=y(()=>Kt.tabs.find(F=>F.id===e.tabId));let o=me(void 0),i=me(jt(Date.now()));const l=y(()=>{var F;return(F=r(n))!=null&&F.runningStartedAt?kb(Math.max(0,r(i)-r(n).runningStartedAt)):"0ms"});Lt(()=>{var $;if(!(($=r(n))!=null&&$.running))return;m(i,Date.now(),!0);const F=setInterval(()=>{m(i,Date.now(),!0)},100);return()=>clearInterval(F)});function d(F){Ur.setSql(e.tabId,F);const $=Cb(F,e.fallbackLabel),ee=Kt.tabs.find(L=>L.id===e.tabId);ee&&ee.label!==$&&Kt.rename(e.tabId,$)}async function f(){await Ur.run(e.tabId)}function v(){Ur.cancel(e.tabId)}function p(F){(F.metaKey||F.ctrlKey)&&F.key==="Enter"&&(F.preventDefault(),f())}function b(){var F,$;return(F=r(n))!=null&&F.result?en.pick(r(n).result.capability,r(n).result,($=r(a))==null?void 0:$.overrideCapability):null}var h=T0(),w=c(h),k=c(w),C=c(k),P=u(c(C),2);{var Y=F=>{var $=y0(),ee=u(ze($),2),L=c(ee,!0);s(ee),N(()=>S(L,Be.active.url)),g(F,$)},O=F=>{var $=w0();g(F,$)};V(P,F=>{Be.connected?F(Y):F(O,-1)})}s(C);var Z=u(C,2),G=c(Z),T=u(c(G));Br(T,{children:(F,$)=>{Se();var ee=bt("⌘");g(F,ee)},$$slots:{default:!0}});var q=u(T);Br(q,{children:(F,$)=>{Se();var ee=bt("↵");g(F,ee)},$$slots:{default:!0}}),s(G);var ne=u(G,2),oe=c(ne);{var Q=F=>{var $=k0(),ee=ze($);cn(ee,{class:"size-3.5 animate-spin"}),Se(2),g(F,$)},ue=F=>{var $=S0(),ee=ze($);Jo(ee,{class:"size-3.5"}),Se(2),g(F,$)};V(oe,F=>{var $;($=r(n))!=null&&$.running?F(Q):F(ue,-1)})}s(ne),s(Z),s(k);var U=u(k,2);Da(U),Ne(U,"placeholder","SELECT * FROM users LIMIT 100"),ln(U,F=>m(o,F),()=>r(o)),s(w);var E=u(w,2),I=c(E);{var _=F=>{var $=C0(),ee=c($),L=c(ee),H=c(L),j=c(H),le=c(j);cn(le,{class:"size-4 animate-spin text-primary-text"}),Se(2),s(j);var he=u(j,2),ie=u(c(he)),J=c(ie,!0);s(ie),s(he),s(H);var W=u(H,2),X=c(W);Ar(X,{class:"size-3.5"}),Se(2),s(W),s(L);var M=u(L,2),K=c(M),D=c(K,!0);s(K),s(M),s(ee),s($),N(z=>{S(J,r(l)),S(D,z)},[()=>r(n).sql.trim()]),_e("click",W,v),g(F,$)},A=F=>{var $=E0(),ee=u(c($),2),L=c(ee,!0);s(ee),s($),N(()=>S(L,r(n).error)),g(F,$)},R=F=>{var $=M0();g(F,$)},te=F=>{const $=y(b);var ee=N0(),L=ze(ee);{var H=he=>{var ie=z0(),J=c(ie);Se(2),s(ie),N(W=>S(J,`Streamed first ${W??""} rows — more remain on the server. Add a `),[()=>r(n).result.record_count.toLocaleString()]),g(he,ie)};V(L,he=>{r(n).result.truncated&&he(H)})}var j=u(L,2);{var le=he=>{const ie=y(()=>r($).component);var J=_t(),W=ze(J);{let X=y(()=>{var M;return((M=r(a))==null?void 0:M.showSystemColumns)??!1});ba(W,()=>r(ie),(M,K)=>{K(M,{get result(){return r(n).result},get showSystem(){return r(X)}})})}g(he,J)};V(j,he=>{r($)&&he(le)})}g(F,ee)};V(I,F=>{var $,ee,L;($=r(n))!=null&&$.running?F(_):(ee=r(n))!=null&&ee.error?F(A,1):(L=r(n))!=null&&L.result?F(te,-1):F(R,2)})}s(E),s(h),N(()=>{var F,$;ne.disabled=((F=r(n))==null?void 0:F.running)||!Be.connected,Xr(U,(($=r(n))==null?void 0:$.sql)??"")}),_e("click",ne,f),_e("input",U,F=>d(F.currentTarget.value)),_e("keydown",U,p),g(t,h),at()}nr(["click","input","keydown"]);const Jd={name:"eye-off",size:24,node:[["path",{d:"M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575 1 1 0 0 1 0 .696 10.747 10.747 0 0 1-1.444 2.49"}],["path",{d:"M14.084 14.158a3 3 0 0 1-4.242-4.242"}],["path",{d:"M17.479 17.499a10.75 10.75 0 0 1-15.417-5.151 1 1 0 0 1 0-.696 10.75 10.75 0 0 1 4.446-5.143"}],["path",{d:"m2 2 20 20"}]]};Jd.node;function eu(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Jd}}))}const tu={name:"eye",size:24,node:[["path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0"}],["circle",{cx:"12",cy:"12",r:"3"}]]};tu.node;function ru(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return tu}}))}const nu={name:"hard-drive",size:24,node:[["path",{d:"M10 16h.01"}],["path",{d:"M2.212 11.577a2 2 0 0 0-.212.896V18a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-5.527a2 2 0 0 0-.212-.896L18.55 5.11A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z"}],["path",{d:"M21.946 12.013H2.054"}],["path",{d:"M6 16h.01"}]]};nu.node;function A0(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return nu}}))}const au={name:"scan-line",size:24,node:[["path",{d:"M3 7V5a2 2 0 0 1 2-2h2"}],["path",{d:"M17 3h2a2 2 0 0 1 2 2v2"}],["path",{d:"M21 17v2a2 2 0 0 1-2 2h-2"}],["path",{d:"M7 21H5a2 2 0 0 1-2-2v-2"}],["path",{d:"M7 12h10"}]]};au.node;function L0(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return au}}))}const ou={name:"git-branch",size:24,node:[["path",{d:"M15 6a9 9 0 0 0-9 9V3"}],["circle",{cx:"18",cy:"6",r:"3"}],["circle",{cx:"6",cy:"18",r:"3"}]]};ou.node;function O0(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return ou}}))}var P0=x('<div class="px-3 py-2 flex items-center gap-2 text-fg-3"><!> <span class="type-label">Results</span></div>'),D0=x('<a><span class="truncate max-w-[180px]"> </span> <span class="opacity-60 group-hover:opacity-100 hover:bg-bg-2 rounded p-0.5" role="button" tabindex="-1" aria-label="Close tab"><!></span></a>'),R0=x('<button type="button"><span class="truncate max-w-[180px]"> </span> <span class="opacity-60 group-hover:opacity-100 hover:bg-bg-2 rounded p-0.5" role="button" tabindex="-1" aria-label="Close tab"><!></span></button>'),V0=x('<div class="flex items-stretch overflow-x-auto"></div>'),H0=x('<button type="button"><!> <span>history</span></button>'),F0=x('<button type="button"><!> <span>meta</span></button> <!>',1),q0=x("<option> </option>"),K0=x('<div class="ml-auto flex items-center gap-2 px-2 text-[11px] font-mono text-fg-3"><!> <button type="button"><!> <span>sys</span></button> <span> </span> <span class="text-fg-3">· override:</span> <select class="bg-bg-1 text-fg-1 border border-line-1 rounded px-1 py-0.5" aria-label="Renderer override"></select></div>'),j0=x('<div role="menu" class="absolute right-0 top-full mt-1 z-10 min-w-[220px] rounded border border-line-1 bg-bg-1 shadow-lg p-1 text-[12px] font-mono"><button type="button" class="w-full text-left px-2 py-1 rounded hover:bg-bg-2 text-fg-1 flex items-center gap-2"><!> <span class="flex-1">New query</span> <span class="text-fg-3 text-[10px]">⌘T</span></button> <button type="button" class="w-full text-left px-2 py-1 rounded hover:bg-bg-2 text-fg-1">Live changes (global)</button></div>'),B0=x('<div class="text-center text-fg-3 text-[12px] font-mono">Connected to <span class="text-fg-1"> </span>. <br/> Pick a collection from the left to open a tab.</div>'),U0=x(`<div class="text-center max-w-md"><!> <h2 class="type-h2 m-0 mb-2">Workspace</h2> <p class="text-fg-2 text-[13px] m-0">Connect to a reddb instance from the topbar to start browsing
|
|
5
|
-
collections and running queries.</p></div>`),W0=x('<div class="h-full grid place-items-center p-6"><!></div>'),G0=x('<div class="h-full grid place-items-center text-fg-3 text-[12px] font-mono">Workspace</div>'),Y0=x('<div class="p-4 text-[12px] font-mono text-warn"><div class="font-semibold mb-1">Query failed</div> <pre class="whitespace-pre-wrap"> </pre></div>'),$0=x('<div class="px-2 py-2"><div class="h-3 rounded bg-bg-2 motion-safe:animate-pulse"></div></div>'),X0=x('<div class="px-2 py-2"><div class="h-3 rounded bg-bg-2 motion-safe:animate-pulse"></div></div>'),Z0=x('<div class="grid h-[29px] grid-cols-[40px_repeat(6,minmax(96px,1fr))] border-b border-line-1/60"><div class="px-2 py-2"><div class="ml-auto h-3 w-4 rounded bg-bg-2 motion-safe:animate-pulse"></div></div> <!></div>'),Q0=x('<div class="h-full flex flex-col" aria-busy="true"><div class="border-b border-line-1 bg-bg-1/35 px-3 py-2"><div class="flex flex-wrap items-center gap-x-4 gap-y-2"><div class="min-w-[180px] flex-1"><div class="flex items-center gap-2"><div class="h-[21px] w-[78px] rounded border border-line-1 bg-bg-2 motion-safe:animate-pulse"></div> <div class="h-4 w-44 max-w-[45vw] rounded bg-bg-2 motion-safe:animate-pulse"></div></div> <div class="mt-1 flex flex-wrap gap-1"><div class="h-[21px] w-24 rounded border border-line-1 bg-bg-0/70 motion-safe:animate-pulse"></div> <div class="h-[21px] w-32 rounded border border-line-1 bg-bg-0/70 motion-safe:animate-pulse"></div> <div class="h-[21px] w-20 rounded border border-line-1 bg-bg-0/70 motion-safe:animate-pulse"></div></div></div> <div class="flex flex-wrap items-center gap-2"><div class="h-[30px] w-[94px] rounded border border-line-1 bg-bg-0/70 motion-safe:animate-pulse"></div> <div class="h-[30px] w-[92px] rounded border border-line-1 bg-bg-0/70 motion-safe:animate-pulse"></div> <div class="h-[30px] w-[92px] rounded border border-line-1 bg-bg-0/70 motion-safe:animate-pulse"></div> <div class="h-[30px] w-[78px] rounded border border-line-1 bg-bg-0/70 motion-safe:animate-pulse"></div> <div class="h-[30px] w-[78px] rounded border border-line-1 bg-bg-0/70 motion-safe:animate-pulse"></div></div></div></div> <div class="border-b border-line-1 px-3 py-1.5 flex items-center gap-2 bg-bg-1/40"><div class="h-6 w-[70px] rounded border border-line-1 bg-bg-2 motion-safe:animate-pulse"></div> <div class="h-6 w-[54px] rounded border border-line-1 bg-bg-2 motion-safe:animate-pulse"></div> <div class="h-4 w-px bg-line-1"></div> <div class="h-6 w-[76px] rounded border border-line-1 bg-bg-2 motion-safe:animate-pulse"></div> <div class="ml-auto h-3 w-[58px] rounded bg-bg-2 motion-safe:animate-pulse"></div></div> <div class="flex-1 overflow-hidden"><div class="min-w-[760px]"><div class="grid h-8 grid-cols-[40px_repeat(6,minmax(96px,1fr))] border-b border-line-1 bg-bg-1"><div class="px-2 py-2"><div class="ml-auto h-3 w-4 rounded bg-bg-2 motion-safe:animate-pulse"></div></div> <!></div> <!></div></div> <div class="border-t border-line-1 px-3 py-1.5 flex items-center gap-3"><div class="h-3 w-28 rounded bg-bg-2 motion-safe:animate-pulse"></div> <div class="h-3 w-44 rounded bg-bg-2 motion-safe:animate-pulse"></div> <div class="h-3 w-20 rounded bg-bg-2 motion-safe:animate-pulse"></div></div></div>'),J0=x('<div class="flex items-center gap-2 text-[11px] font-mono text-fg-3"><!> <span>Catalog metadata unavailable.</span> <span class="truncate"> </span></div>'),ey=x('<div class="flex items-center gap-2 text-[11px] font-mono text-fg-3"><!> <span>Loading collection catalog…</span></div>'),ty=x('<span class="rounded border border-line-1 bg-bg-0/70 px-1.5 py-0.5 font-mono text-[10px] text-fg-2"> </span>'),ry=x('<span class="font-mono text-[10px] text-fg-3">No type-specific catalog fields.</span>'),ny=x('<div class="flex flex-wrap items-center gap-x-4 gap-y-2"><div class="min-w-[180px] flex-1"><div class="flex items-center gap-2"><span class="rounded border border-accent/30 bg-accent/10 px-1.5 py-0.5 font-mono text-[10px] uppercase tracking-[0.08em] text-primary-text"> </span> <span class="truncate font-mono text-[12px] text-fg-0"> </span></div> <div class="mt-1 flex flex-wrap gap-1"><!> <!></div></div> <div class="flex flex-wrap items-center gap-2 font-mono text-[11px]"><div class="inline-flex min-w-[94px] items-center gap-1.5 rounded border border-line-1 bg-bg-0/70 px-2 py-1"><!> <span class="text-fg-0"> </span> <span class="text-fg-3">entities</span></div> <div class="inline-flex min-w-[92px] items-center gap-1.5 rounded border border-line-1 bg-bg-0/70 px-2 py-1"><!> <span class="text-fg-0"> </span> <span class="text-fg-3">disk</span></div> <div class="inline-flex min-w-[92px] items-center gap-1.5 rounded border border-line-1 bg-bg-0/70 px-2 py-1"><!> <span class="text-fg-0"> </span> <span class="text-fg-3">mem</span></div> <div class="inline-flex min-w-[78px] items-center gap-1.5 rounded border border-line-1 bg-bg-0/70 px-2 py-1"><!> <span class="text-fg-0"> </span> <span class="text-fg-3">seg</span></div> <div class="inline-flex min-w-[78px] items-center gap-1.5 rounded border border-line-1 bg-bg-0/70 px-2 py-1"><!> <span class="text-fg-0"> </span> <span class="text-fg-3">idx</span></div></div></div>'),ay=x('<div class="flex items-start gap-2 text-fg-3"><!> <div><div class="text-warn">Collection metadata unavailable.</div> <div class="mt-0.5 break-words"> </div></div></div>'),oy=x('<div class="text-fg-3">Loading metadata…</div>'),iy=x('<span class="rounded border border-accent/30 bg-accent/10 px-1.5 py-0.5 text-primary-text"> </span>'),sy=x('<span class="rounded border border-line-1 px-1.5 py-0.5 text-fg-2"> </span>'),ly=x('<span class="rounded border border-line-1 px-1.5 py-0.5 text-fg-2"> </span>'),cy=x('<span class="rounded border border-line-1 px-1.5 py-0.5 text-fg-2">retention</span>'),dy=x("<span> </span>"),uy=x('<div class="mt-1 flex flex-wrap gap-1"></div>'),fy=x('<div class="mt-1 text-fg-3">Action grants not exposed.</div>'),vy=x('<div class="grid grid-cols-[minmax(160px,0.8fr)_1.2fr] gap-3"><div class="grid grid-cols-[78px_1fr] gap-x-2 gap-y-1"><span class="text-fg-3">name</span> <span class="text-fg-0 truncate"> </span> <span class="text-fg-3">kind</span> <span class="text-primary-text"> </span> <span class="text-fg-3">tenant</span> <span class="text-fg-1"> </span> <span class="text-fg-3">indexes</span> <span class="text-fg-1"> </span></div> <div class="grid gap-1"><div class="flex flex-wrap gap-1"><!> <!> <!> <!></div> <!></div></div>'),gy=x('<div class="border-b border-line-1 bg-bg-1/30 px-3 py-2 text-[11px] font-mono"><!></div>'),py=x('<div class="h-[320px] min-h-[240px] border-b border-line-1"><!></div>'),hy=x('<div class="h-full flex flex-col"><div class="border-b border-line-1 bg-bg-1/35 px-3 py-2"><!></div> <!> <!> <div class="flex-1 min-h-0"><!></div></div>'),by=x('<div class="h-full flex flex-col"><div class="border-b border-line-1 flex items-stretch min-h-[36px] bg-bg-0"><!> <!> <div><button type="button" class="px-2 inline-flex items-center text-fg-3 hover:text-fg-1" aria-label="Open tab menu"><!></button> <!></div></div> <div class="flex-1 overflow-hidden bg-bg-0"><!></div></div>');function xy(t,e){nt(e,!0);const n=xa(),a=[{value:"",label:"Auto"},{value:"table",label:"Table"},{value:"graph",label:"Graph"},{value:"hypertable",label:"Chart"},{value:"kv",label:"KV"},{value:"vector",label:"Vector"},{value:"queue",label:"Queue"},{value:"stats",label:"Stats"},{value:"diff",label:"Diff"},{value:"document",label:"Document"},{value:"json",label:"JSON"}],o=Array.from({length:14},(D,z)=>z),i=Array.from({length:6},(D,z)=>z);let l=jt({}),d=jt({}),f=jt({}),v=jt({}),p=jt({}),b=jt({}),h=jt({}),w=me(jt({})),k=me(null),C=null,P=me(!1),Y=me(!1);Lt(()=>{const D=Kt.activeId;D!==C&&(m(k,C,!0),C=D)});async function O(D,z){const[fe,Ce]=await Promise.all([St.track(`${z} · edges (LIMIT 50000)`,()=>D.query(`SELECT * FROM ${z} WHERE from_rid IS NOT NULL LIMIT 50000`)),St.track(`${z} · centrality (LIMIT 100)`,()=>D.query("GRAPH CENTRALITY LIMIT 100")).catch(()=>null)]),ke=new Map;Ce!=null&&Ce.ok&&Ce.result.records.forEach((we,Ie)=>{const Ee=we.values.node_id??we.values.rid??we.values.id,Me=we.values.score??we.values.centrality_score??we.values.centrality,Te=typeof Ee=="number"?Ee:typeof Ee=="string"?Number(Ee):NaN,Xe=typeof Me=="number"?Me:typeof Me=="string"?Number(Me):NaN;!Number.isFinite(Te)||!Number.isFinite(Xe)||ke.set(Te,{score:Xe,rank:Ie+1,label:typeof we.values.label=="string"?we.values.label:void 0})});const xe=new Set;for(const we of fe.result.records){const Ie=we.values.from_rid,Ee=we.values.to_rid;typeof Ie=="number"&&xe.add(Ie),typeof Ee=="number"&&xe.add(Ee)}for(const we of ke.keys())xe.add(we);const ge=[...xe],De=Math.ceil(ge.length/5),ce=[];for(let we=0;we<ge.length;we+=5)ce.push({idx:Math.floor(we/5)+1,ids:ge.slice(we,we+5).join(",")});const se=[];let ve=fe,Ae=0;async function Le(){for(;Ae<ce.length;){const we=ce[Ae++],Ie=await St.track(`${z} · nodes ${we.idx}/${De}`,()=>D.query(`SELECT * FROM ${z} WHERE rid IN (${we.ids})`));se.push(...Ie.result.records.map(Ee=>{const Me=Ee.values.rid,Te=typeof Me=="number"?ke.get(Me):void 0;return Te?{...Ee,values:{...Ee.values,centrality_score:Te.score,centrality_rank:Te.rank,centrality_label:Te.label}}:Ee})),ve=Ie}}return await Promise.all(Array.from({length:8},Le)),{...ve,record_count:se.length+fe.result.records.length,result:{...ve.result,records:[...se,...fe.result.records]}}}function Z(D){return`'${D.replace(/'/g,"''")}'`}async function G(D,z){const B=await D.query(Mb(z)),re=Nb(B.result.records[0]);if(!re)throw new Error(`${z} was not found in red.collections`);return re}async function T(D,z){var B;try{const de=(B=(await D.query(`SELECT model FROM red.collections WHERE name = ${Z(z)} LIMIT 1`)).result.records[0])==null?void 0:B.values.model;return typeof de=="string"?de:null}catch{return null}}async function q(D,z){const B=Bi(z),re=await T(D,z);if(re==="hll")return D.query(`HLL INFO ${B}`);if(re==="sketch")return D.query(`SKETCH INFO ${B}`);if(re==="filter")return D.query(`FILTER INFO ${B}`);if(re==="mixed")for(const de of[`HLL INFO ${B}`,`SKETCH INFO ${B}`,`FILTER INFO ${B}`])try{return await D.query(de)}catch{}try{return await D.query(`SELECT * FROM ${B} LIMIT 200`)}catch{for(const de of[`HLL INFO ${B}`,`SKETCH INFO ${B}`,`FILTER INFO ${B}`])try{return await D.query(de)}catch{}throw new Error(`No stats read form worked for ${z}`)}}async function ne(D,z){const B=Bi(z),re=await D.query(`SELECT * FROM ${B} LIMIT 200`);return{...re,capability:re.capability??"vector"}}Lt(()=>{if(xr.locked)return;const D=Be.client;if(D)for(const z of Kt.tabs){if(z.kind!=="collection")continue;const B=z.subpage??za(z.capability),re=B==="graph"||B==="svg",de=B==="queue"||z.capability==="queue",be=B==="vector"||z.capability==="vector",fe=B==="stats"||z.capability==="stats",Ce=B==="kv"||z.capability==="kv",ke=re?"graph-subgraph":de?"queue-peek":be?"vector-inspector":fe?"stats-info":Ce?"kv-list":z.capability??"unknown",xe=`${z.key}:${B}:${ke}`;if(f[z.id]&&f[z.id]!==xe&&(delete l[z.id],delete d[z.id]),l[z.id]!==void 0||d[z.id])continue;l[z.id]=null,f[z.id]=xe;const ge=z.key;(re?O(D,ge):de?St.track(`${ge} · QUEUE PEEK (LIMIT 200)`,()=>D.query(`QUEUE PEEK ${ge} 200`)):be?St.track(`${ge} · vector inspector seed`,()=>ne(D,ge)):fe?St.track(`${ge} · stats preview`,()=>q(D,ge)):Ce?St.track(`${ge} · LIST KV (LIMIT 200)`,()=>D.query(dl(ge,"kv"))):St.track(`${ge} · SELECT * (LIMIT 200)`,()=>D.query(dl(ge,z.capability)))).then(ce=>{l[z.id]=ce}).catch(ce=>{d[z.id]=ce.message})}}),Lt(()=>{if(xr.locked)return;const D=Be.client;if(D)for(const z of Kt.tabs)z.kind==="collection"&&(v[z.id]!==void 0||p[z.id]||(v[z.id]=null,St.track(`catalog · ${z.key}`,()=>G(D,z.key)).then(B=>{v[z.id]=B}).catch(B=>{p[z.id]=B.message})))}),Lt(()=>{if(!r(Y)||xr.locked)return;const D=Be.client;if(D)for(const z of Kt.tabs)z.kind==="collection"&&(b[z.id]!==void 0||h[z.id]||(b[z.id]=null,St.track(`metadata · ${z.key}`,()=>D.collection(z.key)).then(B=>{b[z.id]=B}).catch(B=>{h[z.id]=B.message})))});function oe(D,z){D.stopPropagation();const B=Kt.tabs.find(de=>de.id===z);if((B==null?void 0:B.kind)==="query"&&Ur.isDirty(z)&&!(typeof window<"u"?window.confirm("Discard unsaved query in this tab?"):!0))return;const re=(B==null?void 0:B.kind)==="collection"&&B.key===n.collection;if(Kt.close(z,r(k)),Ur.remove(z),delete l[z],delete d[z],delete f[z],delete v[z],delete p[z],delete b[z],delete h[z],delete r(w)[z],re){const de=Kt.tabs.find(be=>be.kind==="collection");n.go(de?{view:"collection",collection:de.key,subpage:de.subpage??za(de.capability)}:{view:"collections"},void 0,!0)}}function Q(){const D=Ur.nextLabel(),z=Kt.open({kind:"query",label:D,key:D},!0);Ur.ensure(z.id),m(P,!1)}vn(()=>{const D=()=>Q();return window.addEventListener("red:new-query",D),()=>window.removeEventListener("red:new-query",D)});function ue(D,z){const B=yv(D.subpage,D.capability??z.capability);return en.pick(B,z,D.overrideCapability)}function U(){Kt.open({kind:"live-changes",label:"live · global",key:"global"}),m(P,!1)}function E(D,z){const B=z.currentTarget.value;Kt.setOverride(D.id,B===""?void 0:B)}function I(D,z){return D.subpage?D.subpage:D.capability?D.capability:z!=null&&z.capability?z.capability:"auto"}function _(D){return typeof D=="boolean"?{allowed:D}:{allowed:D.allowed,reason:D.reason}}function A(D){return D&&typeof D=="object"&&!Array.isArray(D)?Object.keys(D):[]}var R=by(),te=c(R),F=c(te);{var $=D=>{var z=P0(),B=c(z);Va(B,{class:"size-3.5"}),Se(2),s(z),g(D,z)},ee=D=>{var z=V0();$e(z,21,()=>Kt.tabs,B=>B.id,(B,re)=>{const de=y(()=>r(re).id===Kt.activeId),be=y(()=>["group flex items-center gap-2 px-3 py-1.5 text-[12px] font-mono border-r border-line-1 whitespace-nowrap no-underline",r(de)?"bg-bg-1 text-fg-1 border-b-2 border-b-accent -mb-px":"text-fg-3 hover:text-fg-1 hover:bg-bg-1/40"].join(" "));var fe=_t(),Ce=ze(fe);{var ke=ge=>{const De=y(()=>({view:"collection",collection:r(re).key,subpage:r(re).subpage??za(r(re).capability)}));var ce=D0(),se=c(ce),ve=c(se,!0);s(se);var Ae=u(se,2),Le=c(Ae);Ar(Le,{class:"size-3"}),s(Ae),s(ce),N(we=>{Ne(ce,"href",we),Pe(ce,1,Ve(r(be))),Ne(ce,"title",r(re).label),S(ve,r(re).label)},[()=>n.href(r(De))]),_e("click",ce,we=>n.go(r(De),we)),_e("click",Ae,we=>oe(we,r(re).id)),_e("keydown",Ae,we=>{we.key==="Enter"&&oe(we,r(re).id)}),g(ge,ce)},xe=ge=>{var De=R0(),ce=c(De),se=c(ce,!0);s(ce);var ve=u(ce,2),Ae=c(ve);Ar(Ae,{class:"size-3"}),s(ve),s(De),N(()=>{Pe(De,1,Ve(r(be))),Ne(De,"title",r(re).label),S(se,r(re).label)}),_e("click",De,()=>Kt.focus(r(re).id)),_e("click",ve,Le=>oe(Le,r(re).id)),_e("keydown",ve,Le=>{Le.key==="Enter"&&oe(Le,r(re).id)}),g(ge,De)};V(Ce,ge=>{r(re).kind==="collection"?ge(ke):ge(xe,-1)})}g(B,fe)}),s(z),g(D,z)};V(F,D=>{Kt.tabs.length===0?D($):D(ee,-1)})}var L=u(F,2);{var H=D=>{const z=y(()=>Kt.active),B=y(()=>l[r(z).id]);var re=K0(),de=c(re);{var be=ve=>{var Ae=F0(),Le=ze(Ae),we=c(Le);gi(we,{class:"size-3"}),Se(2),s(Le);var Ie=u(Le,2);{var Ee=Me=>{var Te=H0(),Xe=c(Te);O0(Xe,{class:"size-3"}),Se(2),s(Te),N(Fe=>{Ne(Te,"title",r(w)[r(z).id]?"Hide version history":"Show version history and diffs"),Ne(Te,"aria-pressed",r(w)[r(z).id]??!1),Pe(Te,1,Fe)},[()=>Ve(["inline-flex items-center gap-1 h-6 px-1.5 rounded border transition-colors cursor-pointer",r(w)[r(z).id]?"border-accent/40 bg-accent/10 text-primary-text":"border-line-1 text-fg-3 hover:text-fg-1 hover:border-line-2"].join(" "))]),_e("click",Te,()=>m(w,{...r(w),[r(z).id]:!(r(w)[r(z).id]??!1)},!0)),g(Me,Te)};V(Ie,Me=>{Be.capabilities.vcs&&Me(Ee)})}N(Me=>{Ne(Le,"title",r(Y)?"Hide collection metadata":"Show collection metadata"),Ne(Le,"aria-pressed",r(Y)),Pe(Le,1,Me)},[()=>Ve(["inline-flex items-center gap-1 h-6 px-1.5 rounded border transition-colors cursor-pointer",r(Y)?"border-accent/40 bg-accent/10 text-primary-text":"border-line-1 text-fg-3 hover:text-fg-1 hover:border-line-2"].join(" "))]),_e("click",Le,()=>m(Y,!r(Y))),g(ve,Ae)};V(de,ve=>{r(z).kind==="collection"&&ve(be)})}var fe=u(de,2),Ce=c(fe);{var ke=ve=>{ru(ve,{class:"size-3"})},xe=ve=>{eu(ve,{class:"size-3"})};V(Ce,ve=>{r(z).showSystemColumns?ve(ke):ve(xe,-1)})}Se(2),s(fe);var ge=u(fe,2),De=c(ge,!0);s(ge);var ce=u(ge,4);$e(ce,21,()=>a,ve=>ve.value,(ve,Ae)=>{var Le=q0(),we=c(Le,!0);s(Le);var Ie={};N(()=>{S(we,r(Ae).label),Ie!==(Ie=r(Ae).value)&&(Le.value=(Le.__value=r(Ae).value)??"")}),g(ve,Le)}),s(ce);var se;ea(ce),s(re),N((ve,Ae)=>{Ne(fe,"title",r(z).showSystemColumns?"Hide reddb system columns (rid, collection, kind, tenant, created_at, updated_at)":"Show reddb system columns"),Ne(fe,"aria-pressed",r(z).showSystemColumns??!1),Pe(fe,1,ve),S(De,Ae),se!==(se=r(z).overrideCapability??"")&&(ce.value=(ce.__value=r(z).overrideCapability??"")??"",ta(ce,r(z).overrideCapability??""))},[()=>Ve(["inline-flex items-center gap-1 h-6 px-1.5 rounded border transition-colors cursor-pointer",r(z).showSystemColumns?"border-accent/40 bg-accent/10 text-primary-text":"border-line-1 text-fg-3 hover:text-fg-1 hover:border-line-2"].join(" ")),()=>I(r(z),r(B))]),_e("click",fe,()=>Kt.setShowSystem(r(z).id,!r(z).showSystemColumns)),_e("change",ce,ve=>E(r(z),ve)),g(D,re)};V(L,D=>{Kt.active&&(Kt.active.kind==="collection"||Kt.active.kind==="query")&&D(H)})}var j=u(L,2),le=c(j),he=c(le);Ta(he,{class:"size-3.5"}),s(le);var ie=u(le,2);{var J=D=>{var z=j0(),B=c(z),re=c(B);Xc(re,{class:"size-3.5 text-fg-3"}),Se(4),s(B);var de=u(B,2);s(z),_e("click",B,Q),_e("click",de,U),g(D,z)};V(ie,D=>{r(P)&&D(J)})}s(j),s(te);var W=u(te,2),X=c(W);{var M=D=>{var z=W0(),B=c(z);{var re=be=>{var fe=B0(),Ce=u(c(fe)),ke=c(Ce,!0);s(Ce),Se(3),s(fe),N(()=>S(ke,Be.active.url)),g(be,fe)},de=be=>{var fe=U0(),Ce=c(fe);Po(Ce,{class:"size-8 text-fg-3 mx-auto mb-3",strokeWidth:1.4}),Se(4),s(fe),g(be,fe)};V(B,be=>{Be.connected?be(re):be(de,-1)})}s(z),g(D,z)},K=D=>{const z=y(()=>Kt.active);var B=_t(),re=ze(B);{var de=ke=>{Qd(ke,{collection:void 0})},be=ke=>{I0(ke,{get tabId(){return r(z).id},get fallbackLabel(){return r(z).key}})},fe=ke=>{var xe=G0();g(ke,xe)},Ce=ke=>{const xe=y(()=>l[r(z).id]),ge=y(()=>d[r(z).id]);var De=_t(),ce=ze(De);{var se=Le=>{var we=Y0(),Ie=u(c(we),2),Ee=c(Ie,!0);s(Ie),s(we),N(()=>S(Ee,r(ge))),g(Le,we)},ve=Le=>{var we=Q0(),Ie=u(c(we),4),Ee=c(Ie),Me=c(Ee),Te=u(c(Me),2);$e(Te,16,()=>i,Fe=>Fe,(Fe,Qe)=>{var lt=$0(),ct=c(lt);s(lt),N(()=>yr(ct,`width: ${Qe%3===0?72:Qe%3===1?104:56}px`)),g(Fe,lt)}),s(Me);var Xe=u(Me,2);$e(Xe,16,()=>o,Fe=>Fe,(Fe,Qe)=>{var lt=Z0(),ct=u(c(lt),2);$e(ct,16,()=>i,Ke=>Ke,(Ke,He)=>{var Ue=X0(),ot=c(Ue);s(Ue),N(()=>yr(ot,`width: ${He===0?48:64+(Qe+He)%4*18}px`)),g(Ke,Ue)}),s(lt),g(Fe,lt)}),s(Ee),s(Ie),Se(2),s(we),N(()=>Ne(we,"aria-label",`Loading ${r(z).label} results`)),g(Le,we)},Ae=Le=>{const we=y(()=>ue(r(z),r(xe))),Ie=y(()=>r(we).component),Ee=y(()=>v[r(z).id]),Me=y(()=>p[r(z).id]);var Te=hy(),Xe=c(Te),Fe=c(Xe);{var Qe=Ze=>{var We=J0(),ut=c(We);gi(ut,{class:"size-3.5 text-warn"});var Et=u(ut,4),Tt=c(Et,!0);s(Et),s(We),N(()=>S(Tt,r(Me))),g(Ze,We)},lt=Ze=>{var We=ey(),ut=c(We);Po(ut,{class:"size-3.5"}),Se(2),s(We),g(Ze,We)},ct=Ze=>{var We=ny(),ut=c(We),Et=c(ut),Tt=c(Et),Mt=c(Tt,!0);s(Tt);var Ct=u(Tt,2),xt=c(Ct,!0);s(Ct),s(Et);var mt=u(Et,2),wt=c(mt);$e(wt,17,()=>fl(r(Ee)),gr,(Ge,yt)=>{var ft=ty(),pt=c(ft,!0);s(ft),N(()=>S(pt,r(yt))),g(Ge,ft)});var Ot=u(wt,2);{var Zt=Ge=>{var yt=ry();g(Ge,yt)},pr=y(()=>fl(r(Ee)).length===0);V(Ot,Ge=>{r(pr)&&Ge(Zt)})}s(mt),s(ut);var hr=u(ut,2),it=c(hr),dt=c(it);Yi(dt,{class:"size-3.5 text-fg-3"});var It=u(dt,2),Bt=c(It,!0);s(It),Se(2),s(it);var or=u(it,2),ir=c(or);A0(ir,{class:"size-3.5 text-fg-3"});var sr=u(ir,2),wr=c(sr,!0);s(sr),Se(2),s(or);var lr=u(or,2),mr=c(lr);Va(mr,{class:"size-3.5 text-fg-3"});var Er=u(mr,2),Tr=c(Er,!0);s(Er),Se(2),s(lr);var kr=u(lr,2),Ir=c(kr);wv(Ir,{class:"size-3.5 text-fg-3"});var ye=u(Ir,2),Oe=c(ye,!0);s(ye),Se(2),s(kr);var qe=u(kr,2),Ye=c(qe);L0(Ye,{class:"size-3.5 text-fg-3"});var et=u(Ye,2),rt=c(et,!0);s(et),Se(2),s(qe),s(hr),s(We),N((Ge,yt,ft,pt,At)=>{S(Mt,r(Ee).model??"collection"),S(xt,r(Ee).name),S(Bt,Ge),S(wr,yt),S(Tr,ft),S(Oe,pt),S(rt,At)},[()=>zo(r(Ee).entities),()=>ul(r(Ee).onDiskBytes),()=>ul(r(Ee).inMemoryBytes),()=>zo(r(Ee).segments),()=>zo(r(Ee).indices)]),g(Ze,We)};V(Fe,Ze=>{r(Me)?Ze(Qe):r(Ee)?Ze(ct,-1):Ze(lt,1)})}s(Xe);var Ke=u(Xe,2);{var He=Ze=>{const We=y(()=>b[r(z).id]),ut=y(()=>h[r(z).id]);var Et=gy(),Tt=c(Et);{var Mt=mt=>{var wt=ay(),Ot=c(wt);gi(Ot,{class:"mt-0.5 size-3.5 text-warn"});var Zt=u(Ot,2),pr=u(c(Zt),2),hr=c(pr,!0);s(pr),s(Zt),s(wt),N(()=>S(hr,r(ut))),g(mt,wt)},Ct=mt=>{var wt=oy();g(mt,wt)},xt=mt=>{var wt=vy(),Ot=c(wt),Zt=u(c(Ot),2),pr=c(Zt,!0);s(Zt);var hr=u(Zt,4),it=c(hr,!0);s(hr);var dt=u(hr,4),It=c(dt,!0);s(dt);var Bt=u(dt,4),or=c(Bt,!0);s(Bt),s(Ot);var ir=u(Ot,2),sr=c(ir),wr=c(sr);{var lr=Ge=>{var yt=iy(),ft=c(yt,!0);s(yt),N(()=>S(ft,r(We).capability)),g(Ge,yt)};V(wr,Ge=>{r(We).capability&&Ge(lr)})}var mr=u(wr,2);$e(mr,17,()=>r(We).capabilities??[],gr,(Ge,yt)=>{var ft=sy(),pt=c(ft,!0);s(ft),N(()=>S(pt,r(yt))),g(Ge,ft)});var Er=u(mr,2);{var Tr=Ge=>{var yt=ly(),ft=c(yt);s(yt),N(pt=>S(ft,`schema ${pt??""}`),[()=>A(r(We).schema).length]),g(Ge,yt)},kr=y(()=>A(r(We).schema).length>0);V(Er,Ge=>{r(kr)&&Ge(Tr)})}var Ir=u(Er,2);{var ye=Ge=>{var yt=cy();g(Ge,yt)},Oe=y(()=>A(r(We).retention).length>0);V(Ir,Ge=>{r(Oe)&&Ge(ye)})}s(sr);var qe=u(sr,2);{var Ye=Ge=>{var yt=uy();$e(yt,21,()=>Object.entries(r(We).actions),gr,(ft,pt)=>{var At=y(()=>Qr(r(pt),2));let Pt=()=>r(At)[0],er=()=>r(At)[1];const ur=y(()=>_(er()));var Vt=dy(),Dt=c(Vt);s(Vt),N(Gt=>{Pe(Vt,1,Gt),Ne(Vt,"title",r(ur).reason),S(Dt,`${Pt()??""}: ${r(ur).allowed?"allow":"deny"}`)},[()=>Ve(["rounded border px-1.5 py-0.5",r(ur).allowed?"border-ok/30 bg-ok/10 text-ok":"border-danger/30 bg-danger/10 text-danger"].join(" "))]),g(ft,Vt)}),s(yt),g(Ge,yt)},et=y(()=>r(We).actions&&A(r(We).actions).length>0),rt=Ge=>{var yt=fy();g(Ge,yt)};V(qe,Ge=>{r(et)?Ge(Ye):Ge(rt,-1)})}s(ir),s(wt),N(()=>{var Ge;S(pr,r(We).name??r(z).key),S(it,r(We).kind??r(We).capability??r(z).capability??"unknown"),S(It,r(We).tenant??"not exposed"),S(or,((Ge=r(We).indexes)==null?void 0:Ge.length)??0)}),g(mt,wt)};V(Tt,mt=>{r(ut)?mt(Mt):r(We)?mt(xt,-1):mt(Ct,1)})}s(Et),g(Ze,Et)};V(Ke,Ze=>{r(Y)&&Ze(He)})}var Ue=u(Ke,2);{var ot=Ze=>{var We=py(),ut=c(We);{let Et=y(()=>Be.client??void 0);_0(ut,{get client(){return r(Et)},get collection(){return r(z).key}})}s(We),g(Ze,We)};V(Ue,Ze=>{r(w)[r(z).id]&&Ze(ot)})}var ae=u(Ue,2),tt=c(ae);{let Ze=y(()=>r(z).kind==="collection"?r(z).key:void 0),We=y(()=>Be.client??void 0),ut=y(()=>r(z).kind==="collection"?r(z).subpage:void 0),Et=y(()=>r(z).showSystemColumns??!1);ba(tt,()=>r(Ie),(Tt,Mt)=>{Mt(Tt,{get result(){return r(xe)},get collection(){return r(Ze)},get client(){return r(We)},get subpage(){return r(ut)},get showSystem(){return r(Et)}})})}s(ae),s(Te),g(Le,Te)};V(ce,Le=>{r(ge)?Le(se):r(xe)?Le(Ae,-1):Le(ve,1)})}g(ke,De)};V(re,ke=>{r(z).kind==="live-changes"?ke(de):r(z).kind==="query"?ke(be,1):r(z).kind==="welcome"?ke(fe,2):ke(Ce,-1)})}g(D,B)};V(X,D=>{Kt.active?D(K,-1):D(M)})}s(W),s(R),N(()=>Pe(j,1,`relative ${Kt.active&&(Kt.active.kind==="collection"||Kt.active.kind==="query")?"":"ml-auto"} flex items-stretch`)),_e("click",le,()=>m(P,!r(P))),g(t,R),at()}nr(["click","keydown","change"]);var my=x('<div class="h-full grid grid-cols-[260px_1fr] bg-bg-0 text-fg-1"><aside class="row-start-1 col-start-1 border-r border-line-1 bg-bg-0 overflow-y-auto"><!></aside> <section class="row-start-1 col-start-2 bg-bg-0 overflow-hidden"><!></section></div>');function _y(t){var e=my(),n=c(e),a=c(n);bb(a,{}),s(n);var o=u(n,2),i=c(o);xy(i,{}),s(o),s(e),g(t,e)}var yy={value:()=>{}};function ei(){for(var t=0,e=arguments.length,n={},a;t<e;++t){if(!(a=arguments[t]+"")||a in n||/[\s.]/.test(a))throw new Error("illegal type: "+a);n[a]=[]}return new To(n)}function To(t){this._=t}function wy(t,e){return t.trim().split(/^|\s+/).map(function(n){var a="",o=n.indexOf(".");if(o>=0&&(a=n.slice(o+1),n=n.slice(0,o)),n&&!e.hasOwnProperty(n))throw new Error("unknown type: "+n);return{type:n,name:a}})}To.prototype=ei.prototype={constructor:To,on:function(t,e){var n=this._,a=wy(t+"",n),o,i=-1,l=a.length;if(arguments.length<2){for(;++i<l;)if((o=(t=a[i]).type)&&(o=ky(n[o],t.name)))return o;return}if(e!=null&&typeof e!="function")throw new Error("invalid callback: "+e);for(;++i<l;)if(o=(t=a[i]).type)n[o]=Sl(n[o],t.name,e);else if(e==null)for(o in n)n[o]=Sl(n[o],t.name,null);return this},copy:function(){var t={},e=this._;for(var n in e)t[n]=e[n].slice();return new To(t)},call:function(t,e){if((o=arguments.length-2)>0)for(var n=new Array(o),a=0,o,i;a<o;++a)n[a]=arguments[a+2];if(!this._.hasOwnProperty(t))throw new Error("unknown type: "+t);for(i=this._[t],a=0,o=i.length;a<o;++a)i[a].value.apply(e,n)},apply:function(t,e,n){if(!this._.hasOwnProperty(t))throw new Error("unknown type: "+t);for(var a=this._[t],o=0,i=a.length;o<i;++o)a[o].value.apply(e,n)}};function ky(t,e){for(var n=0,a=t.length,o;n<a;++n)if((o=t[n]).name===e)return o.value}function Sl(t,e,n){for(var a=0,o=t.length;a<o;++a)if(t[a].name===e){t[a]=yy,t=t.slice(0,a).concat(t.slice(a+1));break}return n!=null&&t.push({name:e,value:n}),t}var Qi="http://www.w3.org/1999/xhtml";const Cl={svg:"http://www.w3.org/2000/svg",xhtml:Qi,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function ti(t){var e=t+="",n=e.indexOf(":");return n>=0&&(e=t.slice(0,n))!=="xmlns"&&(t=t.slice(n+1)),Cl.hasOwnProperty(e)?{space:Cl[e],local:t}:t}function Sy(t){return function(){var e=this.ownerDocument,n=this.namespaceURI;return n===Qi&&e.documentElement.namespaceURI===Qi?e.createElement(t):e.createElementNS(n,t)}}function Cy(t){return function(){return this.ownerDocument.createElementNS(t.space,t.local)}}function iu(t){var e=ti(t);return(e.local?Cy:Sy)(e)}function Ey(){}function Ss(t){return t==null?Ey:function(){return this.querySelector(t)}}function My(t){typeof t!="function"&&(t=Ss(t));for(var e=this._groups,n=e.length,a=new Array(n),o=0;o<n;++o)for(var i=e[o],l=i.length,d=a[o]=new Array(l),f,v,p=0;p<l;++p)(f=i[p])&&(v=t.call(f,f.__data__,p,i))&&("__data__"in f&&(v.__data__=f.__data__),d[p]=v);return new Yr(a,this._parents)}function zy(t){return t==null?[]:Array.isArray(t)?t:Array.from(t)}function Ny(){return[]}function su(t){return t==null?Ny:function(){return this.querySelectorAll(t)}}function Ty(t){return function(){return zy(t.apply(this,arguments))}}function Iy(t){typeof t=="function"?t=Ty(t):t=su(t);for(var e=this._groups,n=e.length,a=[],o=[],i=0;i<n;++i)for(var l=e[i],d=l.length,f,v=0;v<d;++v)(f=l[v])&&(a.push(t.call(f,f.__data__,v,l)),o.push(f));return new Yr(a,o)}function lu(t){return function(){return this.matches(t)}}function cu(t){return function(e){return e.matches(t)}}var Ay=Array.prototype.find;function Ly(t){return function(){return Ay.call(this.children,t)}}function Oy(){return this.firstElementChild}function Py(t){return this.select(t==null?Oy:Ly(typeof t=="function"?t:cu(t)))}var Dy=Array.prototype.filter;function Ry(){return Array.from(this.children)}function Vy(t){return function(){return Dy.call(this.children,t)}}function Hy(t){return this.selectAll(t==null?Ry:Vy(typeof t=="function"?t:cu(t)))}function Fy(t){typeof t!="function"&&(t=lu(t));for(var e=this._groups,n=e.length,a=new Array(n),o=0;o<n;++o)for(var i=e[o],l=i.length,d=a[o]=[],f,v=0;v<l;++v)(f=i[v])&&t.call(f,f.__data__,v,i)&&d.push(f);return new Yr(a,this._parents)}function du(t){return new Array(t.length)}function qy(){return new Yr(this._enter||this._groups.map(du),this._parents)}function Do(t,e){this.ownerDocument=t.ownerDocument,this.namespaceURI=t.namespaceURI,this._next=null,this._parent=t,this.__data__=e}Do.prototype={constructor:Do,appendChild:function(t){return this._parent.insertBefore(t,this._next)},insertBefore:function(t,e){return this._parent.insertBefore(t,e)},querySelector:function(t){return this._parent.querySelector(t)},querySelectorAll:function(t){return this._parent.querySelectorAll(t)}};function Ky(t){return function(){return t}}function jy(t,e,n,a,o,i){for(var l=0,d,f=e.length,v=i.length;l<v;++l)(d=e[l])?(d.__data__=i[l],a[l]=d):n[l]=new Do(t,i[l]);for(;l<f;++l)(d=e[l])&&(o[l]=d)}function By(t,e,n,a,o,i,l){var d,f,v=new Map,p=e.length,b=i.length,h=new Array(p),w;for(d=0;d<p;++d)(f=e[d])&&(h[d]=w=l.call(f,f.__data__,d,e)+"",v.has(w)?o[d]=f:v.set(w,f));for(d=0;d<b;++d)w=l.call(t,i[d],d,i)+"",(f=v.get(w))?(a[d]=f,f.__data__=i[d],v.delete(w)):n[d]=new Do(t,i[d]);for(d=0;d<p;++d)(f=e[d])&&v.get(h[d])===f&&(o[d]=f)}function Uy(t){return t.__data__}function Wy(t,e){if(!arguments.length)return Array.from(this,Uy);var n=e?By:jy,a=this._parents,o=this._groups;typeof t!="function"&&(t=Ky(t));for(var i=o.length,l=new Array(i),d=new Array(i),f=new Array(i),v=0;v<i;++v){var p=a[v],b=o[v],h=b.length,w=Gy(t.call(p,p&&p.__data__,v,a)),k=w.length,C=d[v]=new Array(k),P=l[v]=new Array(k),Y=f[v]=new Array(h);n(p,b,C,P,Y,w,e);for(var O=0,Z=0,G,T;O<k;++O)if(G=C[O]){for(O>=Z&&(Z=O+1);!(T=P[Z])&&++Z<k;);G._next=T||null}}return l=new Yr(l,a),l._enter=d,l._exit=f,l}function Gy(t){return typeof t=="object"&&"length"in t?t:Array.from(t)}function Yy(){return new Yr(this._exit||this._groups.map(du),this._parents)}function $y(t,e,n){var a=this.enter(),o=this,i=this.exit();return typeof t=="function"?(a=t(a),a&&(a=a.selection())):a=a.append(t+""),e!=null&&(o=e(o),o&&(o=o.selection())),n==null?i.remove():n(i),a&&o?a.merge(o).order():o}function Xy(t){for(var e=t.selection?t.selection():t,n=this._groups,a=e._groups,o=n.length,i=a.length,l=Math.min(o,i),d=new Array(o),f=0;f<l;++f)for(var v=n[f],p=a[f],b=v.length,h=d[f]=new Array(b),w,k=0;k<b;++k)(w=v[k]||p[k])&&(h[k]=w);for(;f<o;++f)d[f]=n[f];return new Yr(d,this._parents)}function Zy(){for(var t=this._groups,e=-1,n=t.length;++e<n;)for(var a=t[e],o=a.length-1,i=a[o],l;--o>=0;)(l=a[o])&&(i&&l.compareDocumentPosition(i)^4&&i.parentNode.insertBefore(l,i),i=l);return this}function Qy(t){t||(t=Jy);function e(b,h){return b&&h?t(b.__data__,h.__data__):!b-!h}for(var n=this._groups,a=n.length,o=new Array(a),i=0;i<a;++i){for(var l=n[i],d=l.length,f=o[i]=new Array(d),v,p=0;p<d;++p)(v=l[p])&&(f[p]=v);f.sort(e)}return new Yr(o,this._parents).order()}function Jy(t,e){return t<e?-1:t>e?1:t>=e?0:NaN}function e2(){var t=arguments[0];return arguments[0]=this,t.apply(null,arguments),this}function t2(){return Array.from(this)}function r2(){for(var t=this._groups,e=0,n=t.length;e<n;++e)for(var a=t[e],o=0,i=a.length;o<i;++o){var l=a[o];if(l)return l}return null}function n2(){let t=0;for(const e of this)++t;return t}function a2(){return!this.node()}function o2(t){for(var e=this._groups,n=0,a=e.length;n<a;++n)for(var o=e[n],i=0,l=o.length,d;i<l;++i)(d=o[i])&&t.call(d,d.__data__,i,o);return this}function i2(t){return function(){this.removeAttribute(t)}}function s2(t){return function(){this.removeAttributeNS(t.space,t.local)}}function l2(t,e){return function(){this.setAttribute(t,e)}}function c2(t,e){return function(){this.setAttributeNS(t.space,t.local,e)}}function d2(t,e){return function(){var n=e.apply(this,arguments);n==null?this.removeAttribute(t):this.setAttribute(t,n)}}function u2(t,e){return function(){var n=e.apply(this,arguments);n==null?this.removeAttributeNS(t.space,t.local):this.setAttributeNS(t.space,t.local,n)}}function f2(t,e){var n=ti(t);if(arguments.length<2){var a=this.node();return n.local?a.getAttributeNS(n.space,n.local):a.getAttribute(n)}return this.each((e==null?n.local?s2:i2:typeof e=="function"?n.local?u2:d2:n.local?c2:l2)(n,e))}function uu(t){return t.ownerDocument&&t.ownerDocument.defaultView||t.document&&t||t.defaultView}function v2(t){return function(){this.style.removeProperty(t)}}function g2(t,e,n){return function(){this.style.setProperty(t,e,n)}}function p2(t,e,n){return function(){var a=e.apply(this,arguments);a==null?this.style.removeProperty(t):this.style.setProperty(t,a,n)}}function h2(t,e,n){return arguments.length>1?this.each((e==null?v2:typeof e=="function"?p2:g2)(t,e,n??"")):da(this.node(),t)}function da(t,e){return t.style.getPropertyValue(e)||uu(t).getComputedStyle(t,null).getPropertyValue(e)}function b2(t){return function(){delete this[t]}}function x2(t,e){return function(){this[t]=e}}function m2(t,e){return function(){var n=e.apply(this,arguments);n==null?delete this[t]:this[t]=n}}function _2(t,e){return arguments.length>1?this.each((e==null?b2:typeof e=="function"?m2:x2)(t,e)):this.node()[t]}function fu(t){return t.trim().split(/^|\s+/)}function Cs(t){return t.classList||new vu(t)}function vu(t){this._node=t,this._names=fu(t.getAttribute("class")||"")}vu.prototype={add:function(t){var e=this._names.indexOf(t);e<0&&(this._names.push(t),this._node.setAttribute("class",this._names.join(" ")))},remove:function(t){var e=this._names.indexOf(t);e>=0&&(this._names.splice(e,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(t){return this._names.indexOf(t)>=0}};function gu(t,e){for(var n=Cs(t),a=-1,o=e.length;++a<o;)n.add(e[a])}function pu(t,e){for(var n=Cs(t),a=-1,o=e.length;++a<o;)n.remove(e[a])}function y2(t){return function(){gu(this,t)}}function w2(t){return function(){pu(this,t)}}function k2(t,e){return function(){(e.apply(this,arguments)?gu:pu)(this,t)}}function S2(t,e){var n=fu(t+"");if(arguments.length<2){for(var a=Cs(this.node()),o=-1,i=n.length;++o<i;)if(!a.contains(n[o]))return!1;return!0}return this.each((typeof e=="function"?k2:e?y2:w2)(n,e))}function C2(){this.textContent=""}function E2(t){return function(){this.textContent=t}}function M2(t){return function(){var e=t.apply(this,arguments);this.textContent=e??""}}function z2(t){return arguments.length?this.each(t==null?C2:(typeof t=="function"?M2:E2)(t)):this.node().textContent}function N2(){this.innerHTML=""}function T2(t){return function(){this.innerHTML=t}}function I2(t){return function(){var e=t.apply(this,arguments);this.innerHTML=e??""}}function A2(t){return arguments.length?this.each(t==null?N2:(typeof t=="function"?I2:T2)(t)):this.node().innerHTML}function L2(){this.nextSibling&&this.parentNode.appendChild(this)}function O2(){return this.each(L2)}function P2(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function D2(){return this.each(P2)}function R2(t){var e=typeof t=="function"?t:iu(t);return this.select(function(){return this.appendChild(e.apply(this,arguments))})}function V2(){return null}function H2(t,e){var n=typeof t=="function"?t:iu(t),a=e==null?V2:typeof e=="function"?e:Ss(e);return this.select(function(){return this.insertBefore(n.apply(this,arguments),a.apply(this,arguments)||null)})}function F2(){var t=this.parentNode;t&&t.removeChild(this)}function q2(){return this.each(F2)}function K2(){var t=this.cloneNode(!1),e=this.parentNode;return e?e.insertBefore(t,this.nextSibling):t}function j2(){var t=this.cloneNode(!0),e=this.parentNode;return e?e.insertBefore(t,this.nextSibling):t}function B2(t){return this.select(t?j2:K2)}function U2(t){return arguments.length?this.property("__data__",t):this.node().__data__}function W2(t){return function(e){t.call(this,e,this.__data__)}}function G2(t){return t.trim().split(/^|\s+/).map(function(e){var n="",a=e.indexOf(".");return a>=0&&(n=e.slice(a+1),e=e.slice(0,a)),{type:e,name:n}})}function Y2(t){return function(){var e=this.__on;if(e){for(var n=0,a=-1,o=e.length,i;n<o;++n)i=e[n],(!t.type||i.type===t.type)&&i.name===t.name?this.removeEventListener(i.type,i.listener,i.options):e[++a]=i;++a?e.length=a:delete this.__on}}}function $2(t,e,n){return function(){var a=this.__on,o,i=W2(e);if(a){for(var l=0,d=a.length;l<d;++l)if((o=a[l]).type===t.type&&o.name===t.name){this.removeEventListener(o.type,o.listener,o.options),this.addEventListener(o.type,o.listener=i,o.options=n),o.value=e;return}}this.addEventListener(t.type,i,n),o={type:t.type,name:t.name,value:e,listener:i,options:n},a?a.push(o):this.__on=[o]}}function X2(t,e,n){var a=G2(t+""),o,i=a.length,l;if(arguments.length<2){var d=this.node().__on;if(d){for(var f=0,v=d.length,p;f<v;++f)for(o=0,p=d[f];o<i;++o)if((l=a[o]).type===p.type&&l.name===p.name)return p.value}return}for(d=e?$2:Y2,o=0;o<i;++o)this.each(d(a[o],e,n));return this}function hu(t,e,n){var a=uu(t),o=a.CustomEvent;typeof o=="function"?o=new o(e,n):(o=a.document.createEvent("Event"),n?(o.initEvent(e,n.bubbles,n.cancelable),o.detail=n.detail):o.initEvent(e,!1,!1)),t.dispatchEvent(o)}function Z2(t,e){return function(){return hu(this,t,e)}}function Q2(t,e){return function(){return hu(this,t,e.apply(this,arguments))}}function J2(t,e){return this.each((typeof e=="function"?Q2:Z2)(t,e))}function*ew(){for(var t=this._groups,e=0,n=t.length;e<n;++e)for(var a=t[e],o=0,i=a.length,l;o<i;++o)(l=a[o])&&(yield l)}var bu=[null];function Yr(t,e){this._groups=t,this._parents=e}function ao(){return new Yr([[document.documentElement]],bu)}function tw(){return this}Yr.prototype=ao.prototype={constructor:Yr,select:My,selectAll:Iy,selectChild:Py,selectChildren:Hy,filter:Fy,data:Wy,enter:qy,exit:Yy,join:$y,merge:Xy,selection:tw,order:Zy,sort:Qy,call:e2,nodes:t2,node:r2,size:n2,empty:a2,each:o2,attr:f2,style:h2,property:_2,classed:S2,text:z2,html:A2,raise:O2,lower:D2,append:R2,insert:H2,remove:q2,clone:B2,datum:U2,on:X2,dispatch:J2,[Symbol.iterator]:ew};function nn(t){return typeof t=="string"?new Yr([[document.querySelector(t)]],[document.documentElement]):new Yr([[t]],bu)}function rw(t){let e;for(;e=t.sourceEvent;)t=e;return t}function un(t,e){if(t=rw(t),e===void 0&&(e=t.currentTarget),e){var n=e.ownerSVGElement||e;if(n.createSVGPoint){var a=n.createSVGPoint();return a.x=t.clientX,a.y=t.clientY,a=a.matrixTransform(e.getScreenCTM().inverse()),[a.x,a.y]}if(e.getBoundingClientRect){var o=e.getBoundingClientRect();return[t.clientX-o.left-e.clientLeft,t.clientY-o.top-e.clientTop]}}return[t.pageX,t.pageY]}const nw={passive:!1},Ha={capture:!0,passive:!1};function wi(t){t.stopImmediatePropagation()}function aa(t){t.preventDefault(),t.stopImmediatePropagation()}function xu(t){var e=t.document.documentElement,n=nn(t).on("dragstart.drag",aa,Ha);"onselectstart"in e?n.on("selectstart.drag",aa,Ha):(e.__noselect=e.style.MozUserSelect,e.style.MozUserSelect="none")}function mu(t,e){var n=t.document.documentElement,a=nn(t).on("dragstart.drag",null);e&&(a.on("click.drag",aa,Ha),setTimeout(function(){a.on("click.drag",null)},0)),"onselectstart"in n?a.on("selectstart.drag",null):(n.style.MozUserSelect=n.__noselect,delete n.__noselect)}const vo=t=>()=>t;function Ji(t,{sourceEvent:e,subject:n,target:a,identifier:o,active:i,x:l,y:d,dx:f,dy:v,dispatch:p}){Object.defineProperties(this,{type:{value:t,enumerable:!0,configurable:!0},sourceEvent:{value:e,enumerable:!0,configurable:!0},subject:{value:n,enumerable:!0,configurable:!0},target:{value:a,enumerable:!0,configurable:!0},identifier:{value:o,enumerable:!0,configurable:!0},active:{value:i,enumerable:!0,configurable:!0},x:{value:l,enumerable:!0,configurable:!0},y:{value:d,enumerable:!0,configurable:!0},dx:{value:f,enumerable:!0,configurable:!0},dy:{value:v,enumerable:!0,configurable:!0},_:{value:p}})}Ji.prototype.on=function(){var t=this._.on.apply(this._,arguments);return t===this._?this:t};function aw(t){return!t.ctrlKey&&!t.button}function ow(){return this.parentNode}function iw(t,e){return e??{x:t.x,y:t.y}}function sw(){return navigator.maxTouchPoints||"ontouchstart"in this}function lw(){var t=aw,e=ow,n=iw,a=sw,o={},i=ei("start","drag","end"),l=0,d,f,v,p,b=0;function h(G){G.on("mousedown.drag",w).filter(a).on("touchstart.drag",P).on("touchmove.drag",Y,nw).on("touchend.drag touchcancel.drag",O).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function w(G,T){if(!(p||!t.call(this,G,T))){var q=Z(this,e.call(this,G,T),G,T,"mouse");q&&(nn(G.view).on("mousemove.drag",k,Ha).on("mouseup.drag",C,Ha),xu(G.view),wi(G),v=!1,d=G.clientX,f=G.clientY,q("start",G))}}function k(G){if(aa(G),!v){var T=G.clientX-d,q=G.clientY-f;v=T*T+q*q>b}o.mouse("drag",G)}function C(G){nn(G.view).on("mousemove.drag mouseup.drag",null),mu(G.view,v),aa(G),o.mouse("end",G)}function P(G,T){if(t.call(this,G,T)){var q=G.changedTouches,ne=e.call(this,G,T),oe=q.length,Q,ue;for(Q=0;Q<oe;++Q)(ue=Z(this,ne,G,T,q[Q].identifier,q[Q]))&&(wi(G),ue("start",G,q[Q]))}}function Y(G){var T=G.changedTouches,q=T.length,ne,oe;for(ne=0;ne<q;++ne)(oe=o[T[ne].identifier])&&(aa(G),oe("drag",G,T[ne]))}function O(G){var T=G.changedTouches,q=T.length,ne,oe;for(p&&clearTimeout(p),p=setTimeout(function(){p=null},500),ne=0;ne<q;++ne)(oe=o[T[ne].identifier])&&(wi(G),oe("end",G,T[ne]))}function Z(G,T,q,ne,oe,Q){var ue=i.copy(),U=un(Q||q,T),E,I,_;if((_=n.call(G,new Ji("beforestart",{sourceEvent:q,target:h,identifier:oe,active:l,x:U[0],y:U[1],dx:0,dy:0,dispatch:ue}),ne))!=null)return E=_.x-U[0]||0,I=_.y-U[1]||0,function A(R,te,F){var $=U,ee;switch(R){case"start":o[oe]=A,ee=l++;break;case"end":delete o[oe],--l;case"drag":U=un(F||te,T),ee=l;break}ue.call(R,G,new Ji(R,{sourceEvent:te,subject:_,target:h,identifier:oe,active:ee,x:U[0]+E,y:U[1]+I,dx:U[0]-$[0],dy:U[1]-$[1],dispatch:ue}),ne)}}return h.filter=function(G){return arguments.length?(t=typeof G=="function"?G:vo(!!G),h):t},h.container=function(G){return arguments.length?(e=typeof G=="function"?G:vo(G),h):e},h.subject=function(G){return arguments.length?(n=typeof G=="function"?G:vo(G),h):n},h.touchable=function(G){return arguments.length?(a=typeof G=="function"?G:vo(!!G),h):a},h.on=function(){var G=i.on.apply(i,arguments);return G===i?h:G},h.clickDistance=function(G){return arguments.length?(b=(G=+G)*G,h):Math.sqrt(b)},h}function Es(t,e,n){t.prototype=e.prototype=n,n.constructor=t}function _u(t,e){var n=Object.create(t.prototype);for(var a in e)n[a]=e[a];return n}function oo(){}var Fa=.7,Ro=1/Fa,oa="\\s*([+-]?\\d+)\\s*",qa="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",gn="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",cw=/^#([0-9a-f]{3,8})$/,dw=new RegExp(`^rgb\\(${oa},${oa},${oa}\\)$`),uw=new RegExp(`^rgb\\(${gn},${gn},${gn}\\)$`),fw=new RegExp(`^rgba\\(${oa},${oa},${oa},${qa}\\)$`),vw=new RegExp(`^rgba\\(${gn},${gn},${gn},${qa}\\)$`),gw=new RegExp(`^hsl\\(${qa},${gn},${gn}\\)$`),pw=new RegExp(`^hsla\\(${qa},${gn},${gn},${qa}\\)$`),El={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};Es(oo,qn,{copy(t){return Object.assign(new this.constructor,this,t)},displayable(){return this.rgb().displayable()},hex:Ml,formatHex:Ml,formatHex8:hw,formatHsl:bw,formatRgb:zl,toString:zl});function Ml(){return this.rgb().formatHex()}function hw(){return this.rgb().formatHex8()}function bw(){return yu(this).formatHsl()}function zl(){return this.rgb().formatRgb()}function qn(t){var e,n;return t=(t+"").trim().toLowerCase(),(e=cw.exec(t))?(n=e[1].length,e=parseInt(e[1],16),n===6?Nl(e):n===3?new qr(e>>8&15|e>>4&240,e>>4&15|e&240,(e&15)<<4|e&15,1):n===8?go(e>>24&255,e>>16&255,e>>8&255,(e&255)/255):n===4?go(e>>12&15|e>>8&240,e>>8&15|e>>4&240,e>>4&15|e&240,((e&15)<<4|e&15)/255):null):(e=dw.exec(t))?new qr(e[1],e[2],e[3],1):(e=uw.exec(t))?new qr(e[1]*255/100,e[2]*255/100,e[3]*255/100,1):(e=fw.exec(t))?go(e[1],e[2],e[3],e[4]):(e=vw.exec(t))?go(e[1]*255/100,e[2]*255/100,e[3]*255/100,e[4]):(e=gw.exec(t))?Al(e[1],e[2]/100,e[3]/100,1):(e=pw.exec(t))?Al(e[1],e[2]/100,e[3]/100,e[4]):El.hasOwnProperty(t)?Nl(El[t]):t==="transparent"?new qr(NaN,NaN,NaN,0):null}function Nl(t){return new qr(t>>16&255,t>>8&255,t&255,1)}function go(t,e,n,a){return a<=0&&(t=e=n=NaN),new qr(t,e,n,a)}function xw(t){return t instanceof oo||(t=qn(t)),t?(t=t.rgb(),new qr(t.r,t.g,t.b,t.opacity)):new qr}function es(t,e,n,a){return arguments.length===1?xw(t):new qr(t,e,n,a??1)}function qr(t,e,n,a){this.r=+t,this.g=+e,this.b=+n,this.opacity=+a}Es(qr,es,_u(oo,{brighter(t){return t=t==null?Ro:Math.pow(Ro,t),new qr(this.r*t,this.g*t,this.b*t,this.opacity)},darker(t){return t=t==null?Fa:Math.pow(Fa,t),new qr(this.r*t,this.g*t,this.b*t,this.opacity)},rgb(){return this},clamp(){return new qr(Fn(this.r),Fn(this.g),Fn(this.b),Vo(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:Tl,formatHex:Tl,formatHex8:mw,formatRgb:Il,toString:Il}));function Tl(){return`#${Vn(this.r)}${Vn(this.g)}${Vn(this.b)}`}function mw(){return`#${Vn(this.r)}${Vn(this.g)}${Vn(this.b)}${Vn((isNaN(this.opacity)?1:this.opacity)*255)}`}function Il(){const t=Vo(this.opacity);return`${t===1?"rgb(":"rgba("}${Fn(this.r)}, ${Fn(this.g)}, ${Fn(this.b)}${t===1?")":`, ${t})`}`}function Vo(t){return isNaN(t)?1:Math.max(0,Math.min(1,t))}function Fn(t){return Math.max(0,Math.min(255,Math.round(t)||0))}function Vn(t){return t=Fn(t),(t<16?"0":"")+t.toString(16)}function Al(t,e,n,a){return a<=0?t=e=n=NaN:n<=0||n>=1?t=e=NaN:e<=0&&(t=NaN),new an(t,e,n,a)}function yu(t){if(t instanceof an)return new an(t.h,t.s,t.l,t.opacity);if(t instanceof oo||(t=qn(t)),!t)return new an;if(t instanceof an)return t;t=t.rgb();var e=t.r/255,n=t.g/255,a=t.b/255,o=Math.min(e,n,a),i=Math.max(e,n,a),l=NaN,d=i-o,f=(i+o)/2;return d?(e===i?l=(n-a)/d+(n<a)*6:n===i?l=(a-e)/d+2:l=(e-n)/d+4,d/=f<.5?i+o:2-i-o,l*=60):d=f>0&&f<1?0:l,new an(l,d,f,t.opacity)}function _w(t,e,n,a){return arguments.length===1?yu(t):new an(t,e,n,a??1)}function an(t,e,n,a){this.h=+t,this.s=+e,this.l=+n,this.opacity=+a}Es(an,_w,_u(oo,{brighter(t){return t=t==null?Ro:Math.pow(Ro,t),new an(this.h,this.s,this.l*t,this.opacity)},darker(t){return t=t==null?Fa:Math.pow(Fa,t),new an(this.h,this.s,this.l*t,this.opacity)},rgb(){var t=this.h%360+(this.h<0)*360,e=isNaN(t)||isNaN(this.s)?0:this.s,n=this.l,a=n+(n<.5?n:1-n)*e,o=2*n-a;return new qr(ki(t>=240?t-240:t+120,o,a),ki(t,o,a),ki(t<120?t+240:t-120,o,a),this.opacity)},clamp(){return new an(Ll(this.h),po(this.s),po(this.l),Vo(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const t=Vo(this.opacity);return`${t===1?"hsl(":"hsla("}${Ll(this.h)}, ${po(this.s)*100}%, ${po(this.l)*100}%${t===1?")":`, ${t})`}`}}));function Ll(t){return t=(t||0)%360,t<0?t+360:t}function po(t){return Math.max(0,Math.min(1,t||0))}function ki(t,e,n){return(t<60?e+(n-e)*t/60:t<180?n:t<240?e+(n-e)*(240-t)/60:e)*255}const Ms=t=>()=>t;function yw(t,e){return function(n){return t+n*e}}function ww(t,e,n){return t=Math.pow(t,n),e=Math.pow(e,n)-t,n=1/n,function(a){return Math.pow(t+a*e,n)}}function kw(t){return(t=+t)==1?wu:function(e,n){return n-e?ww(e,n,t):Ms(isNaN(e)?n:e)}}function wu(t,e){var n=e-t;return n?yw(t,n):Ms(isNaN(t)?e:t)}const Ho=(function t(e){var n=kw(e);function a(o,i){var l=n((o=es(o)).r,(i=es(i)).r),d=n(o.g,i.g),f=n(o.b,i.b),v=wu(o.opacity,i.opacity);return function(p){return o.r=l(p),o.g=d(p),o.b=f(p),o.opacity=v(p),o+""}}return a.gamma=t,a})(1);function Sw(t,e){e||(e=[]);var n=t?Math.min(e.length,t.length):0,a=e.slice(),o;return function(i){for(o=0;o<n;++o)a[o]=t[o]*(1-i)+e[o]*i;return a}}function Cw(t){return ArrayBuffer.isView(t)&&!(t instanceof DataView)}function Ew(t,e){var n=e?e.length:0,a=t?Math.min(n,t.length):0,o=new Array(a),i=new Array(n),l;for(l=0;l<a;++l)o[l]=Ia(t[l],e[l]);for(;l<n;++l)i[l]=e[l];return function(d){for(l=0;l<a;++l)i[l]=o[l](d);return i}}function Mw(t,e){var n=new Date;return t=+t,e=+e,function(a){return n.setTime(t*(1-a)+e*a),n}}function fn(t,e){return t=+t,e=+e,function(n){return t*(1-n)+e*n}}function zw(t,e){var n={},a={},o;(t===null||typeof t!="object")&&(t={}),(e===null||typeof e!="object")&&(e={});for(o in e)o in t?n[o]=Ia(t[o],e[o]):a[o]=e[o];return function(i){for(o in n)a[o]=n[o](i);return a}}var ts=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,Si=new RegExp(ts.source,"g");function Nw(t){return function(){return t}}function Tw(t){return function(e){return t(e)+""}}function ku(t,e){var n=ts.lastIndex=Si.lastIndex=0,a,o,i,l=-1,d=[],f=[];for(t=t+"",e=e+"";(a=ts.exec(t))&&(o=Si.exec(e));)(i=o.index)>n&&(i=e.slice(n,i),d[l]?d[l]+=i:d[++l]=i),(a=a[0])===(o=o[0])?d[l]?d[l]+=o:d[++l]=o:(d[++l]=null,f.push({i:l,x:fn(a,o)})),n=Si.lastIndex;return n<e.length&&(i=e.slice(n),d[l]?d[l]+=i:d[++l]=i),d.length<2?f[0]?Tw(f[0].x):Nw(e):(e=f.length,function(v){for(var p=0,b;p<e;++p)d[(b=f[p]).i]=b.x(v);return d.join("")})}function Ia(t,e){var n=typeof e,a;return e==null||n==="boolean"?Ms(e):(n==="number"?fn:n==="string"?(a=qn(e))?(e=a,Ho):ku:e instanceof qn?Ho:e instanceof Date?Mw:Cw(e)?Sw:Array.isArray(e)?Ew:typeof e.valueOf!="function"&&typeof e.toString!="function"||isNaN(e)?zw:fn)(t,e)}var Ol=180/Math.PI,rs={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function Su(t,e,n,a,o,i){var l,d,f;return(l=Math.sqrt(t*t+e*e))&&(t/=l,e/=l),(f=t*n+e*a)&&(n-=t*f,a-=e*f),(d=Math.sqrt(n*n+a*a))&&(n/=d,a/=d,f/=d),t*a<e*n&&(t=-t,e=-e,f=-f,l=-l),{translateX:o,translateY:i,rotate:Math.atan2(e,t)*Ol,skewX:Math.atan(f)*Ol,scaleX:l,scaleY:d}}var ho;function Iw(t){const e=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(t+"");return e.isIdentity?rs:Su(e.a,e.b,e.c,e.d,e.e,e.f)}function Aw(t){return t==null||(ho||(ho=document.createElementNS("http://www.w3.org/2000/svg","g")),ho.setAttribute("transform",t),!(t=ho.transform.baseVal.consolidate()))?rs:(t=t.matrix,Su(t.a,t.b,t.c,t.d,t.e,t.f))}function Cu(t,e,n,a){function o(v){return v.length?v.pop()+" ":""}function i(v,p,b,h,w,k){if(v!==b||p!==h){var C=w.push("translate(",null,e,null,n);k.push({i:C-4,x:fn(v,b)},{i:C-2,x:fn(p,h)})}else(b||h)&&w.push("translate("+b+e+h+n)}function l(v,p,b,h){v!==p?(v-p>180?p+=360:p-v>180&&(v+=360),h.push({i:b.push(o(b)+"rotate(",null,a)-2,x:fn(v,p)})):p&&b.push(o(b)+"rotate("+p+a)}function d(v,p,b,h){v!==p?h.push({i:b.push(o(b)+"skewX(",null,a)-2,x:fn(v,p)}):p&&b.push(o(b)+"skewX("+p+a)}function f(v,p,b,h,w,k){if(v!==b||p!==h){var C=w.push(o(w)+"scale(",null,",",null,")");k.push({i:C-4,x:fn(v,b)},{i:C-2,x:fn(p,h)})}else(b!==1||h!==1)&&w.push(o(w)+"scale("+b+","+h+")")}return function(v,p){var b=[],h=[];return v=t(v),p=t(p),i(v.translateX,v.translateY,p.translateX,p.translateY,b,h),l(v.rotate,p.rotate,b,h),d(v.skewX,p.skewX,b,h),f(v.scaleX,v.scaleY,p.scaleX,p.scaleY,b,h),v=p=null,function(w){for(var k=-1,C=h.length,P;++k<C;)b[(P=h[k]).i]=P.x(w);return b.join("")}}}var Lw=Cu(Iw,"px, ","px)","deg)"),Ow=Cu(Aw,", ",")",")"),Pw=1e-12;function Pl(t){return((t=Math.exp(t))+1/t)/2}function Dw(t){return((t=Math.exp(t))-1/t)/2}function Rw(t){return((t=Math.exp(2*t))-1)/(t+1)}const Io=(function t(e,n,a){function o(i,l){var d=i[0],f=i[1],v=i[2],p=l[0],b=l[1],h=l[2],w=p-d,k=b-f,C=w*w+k*k,P,Y;if(C<Pw)Y=Math.log(h/v)/e,P=function(ne){return[d+ne*w,f+ne*k,v*Math.exp(e*ne*Y)]};else{var O=Math.sqrt(C),Z=(h*h-v*v+a*C)/(2*v*n*O),G=(h*h-v*v-a*C)/(2*h*n*O),T=Math.log(Math.sqrt(Z*Z+1)-Z),q=Math.log(Math.sqrt(G*G+1)-G);Y=(q-T)/e,P=function(ne){var oe=ne*Y,Q=Pl(T),ue=v/(n*O)*(Q*Rw(e*oe+T)-Dw(T));return[d+ue*w,f+ue*k,v*Q/Pl(e*oe+T)]}}return P.duration=Y*1e3*e/Math.SQRT2,P}return o.rho=function(i){var l=Math.max(.001,+i),d=l*l,f=d*d;return t(l,d,f)},o})(Math.SQRT2,2,4);var ua=0,Ca=0,ya=0,Eu=1e3,Fo,Ea,qo=0,Kn=0,ri=0,Ka=typeof performance=="object"&&performance.now?performance:Date,Mu=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(t){setTimeout(t,17)};function zs(){return Kn||(Mu(Vw),Kn=Ka.now()+ri)}function Vw(){Kn=0}function Ko(){this._call=this._time=this._next=null}Ko.prototype=zu.prototype={constructor:Ko,restart:function(t,e,n){if(typeof t!="function")throw new TypeError("callback is not a function");n=(n==null?zs():+n)+(e==null?0:+e),!this._next&&Ea!==this&&(Ea?Ea._next=this:Fo=this,Ea=this),this._call=t,this._time=n,ns()},stop:function(){this._call&&(this._call=null,this._time=1/0,ns())}};function zu(t,e,n){var a=new Ko;return a.restart(t,e,n),a}function Hw(){zs(),++ua;for(var t=Fo,e;t;)(e=Kn-t._time)>=0&&t._call.call(void 0,e),t=t._next;--ua}function Dl(){Kn=(qo=Ka.now())+ri,ua=Ca=0;try{Hw()}finally{ua=0,qw(),Kn=0}}function Fw(){var t=Ka.now(),e=t-qo;e>Eu&&(ri-=e,qo=t)}function qw(){for(var t,e=Fo,n,a=1/0;e;)e._call?(a>e._time&&(a=e._time),t=e,e=e._next):(n=e._next,e._next=null,e=t?t._next=n:Fo=n);Ea=t,ns(a)}function ns(t){if(!ua){Ca&&(Ca=clearTimeout(Ca));var e=t-Kn;e>24?(t<1/0&&(Ca=setTimeout(Dl,t-Ka.now()-ri)),ya&&(ya=clearInterval(ya))):(ya||(qo=Ka.now(),ya=setInterval(Fw,Eu)),ua=1,Mu(Dl))}}function Rl(t,e,n){var a=new Ko;return e=e==null?0:+e,a.restart(o=>{a.stop(),t(o+e)},e,n),a}var Kw=ei("start","end","cancel","interrupt"),jw=[],Nu=0,Vl=1,as=2,Ao=3,Hl=4,os=5,Lo=6;function ni(t,e,n,a,o,i){var l=t.__transition;if(!l)t.__transition={};else if(n in l)return;Bw(t,n,{name:e,index:a,group:o,on:Kw,tween:jw,time:i.time,delay:i.delay,duration:i.duration,ease:i.ease,timer:null,state:Nu})}function Ns(t,e){var n=dn(t,e);if(n.state>Nu)throw new Error("too late; already scheduled");return n}function hn(t,e){var n=dn(t,e);if(n.state>Ao)throw new Error("too late; already running");return n}function dn(t,e){var n=t.__transition;if(!n||!(n=n[e]))throw new Error("transition not found");return n}function Bw(t,e,n){var a=t.__transition,o;a[e]=n,n.timer=zu(i,0,n.time);function i(v){n.state=Vl,n.timer.restart(l,n.delay,n.time),n.delay<=v&&l(v-n.delay)}function l(v){var p,b,h,w;if(n.state!==Vl)return f();for(p in a)if(w=a[p],w.name===n.name){if(w.state===Ao)return Rl(l);w.state===Hl?(w.state=Lo,w.timer.stop(),w.on.call("interrupt",t,t.__data__,w.index,w.group),delete a[p]):+p<e&&(w.state=Lo,w.timer.stop(),w.on.call("cancel",t,t.__data__,w.index,w.group),delete a[p])}if(Rl(function(){n.state===Ao&&(n.state=Hl,n.timer.restart(d,n.delay,n.time),d(v))}),n.state=as,n.on.call("start",t,t.__data__,n.index,n.group),n.state===as){for(n.state=Ao,o=new Array(h=n.tween.length),p=0,b=-1;p<h;++p)(w=n.tween[p].value.call(t,t.__data__,n.index,n.group))&&(o[++b]=w);o.length=b+1}}function d(v){for(var p=v<n.duration?n.ease.call(null,v/n.duration):(n.timer.restart(f),n.state=os,1),b=-1,h=o.length;++b<h;)o[b].call(t,p);n.state===os&&(n.on.call("end",t,t.__data__,n.index,n.group),f())}function f(){n.state=Lo,n.timer.stop(),delete a[e];for(var v in a)return;delete t.__transition}}function Oo(t,e){var n=t.__transition,a,o,i=!0,l;if(n){e=e==null?null:e+"";for(l in n){if((a=n[l]).name!==e){i=!1;continue}o=a.state>as&&a.state<os,a.state=Lo,a.timer.stop(),a.on.call(o?"interrupt":"cancel",t,t.__data__,a.index,a.group),delete n[l]}i&&delete t.__transition}}function Uw(t){return this.each(function(){Oo(this,t)})}function Ww(t,e){var n,a;return function(){var o=hn(this,t),i=o.tween;if(i!==n){a=n=i;for(var l=0,d=a.length;l<d;++l)if(a[l].name===e){a=a.slice(),a.splice(l,1);break}}o.tween=a}}function Gw(t,e,n){var a,o;if(typeof n!="function")throw new Error;return function(){var i=hn(this,t),l=i.tween;if(l!==a){o=(a=l).slice();for(var d={name:e,value:n},f=0,v=o.length;f<v;++f)if(o[f].name===e){o[f]=d;break}f===v&&o.push(d)}i.tween=o}}function Yw(t,e){var n=this._id;if(t+="",arguments.length<2){for(var a=dn(this.node(),n).tween,o=0,i=a.length,l;o<i;++o)if((l=a[o]).name===t)return l.value;return null}return this.each((e==null?Ww:Gw)(n,t,e))}function Ts(t,e,n){var a=t._id;return t.each(function(){var o=hn(this,a);(o.value||(o.value={}))[e]=n.apply(this,arguments)}),function(o){return dn(o,a).value[e]}}function Tu(t,e){var n;return(typeof e=="number"?fn:e instanceof qn?Ho:(n=qn(e))?(e=n,Ho):ku)(t,e)}function $w(t){return function(){this.removeAttribute(t)}}function Xw(t){return function(){this.removeAttributeNS(t.space,t.local)}}function Zw(t,e,n){var a,o=n+"",i;return function(){var l=this.getAttribute(t);return l===o?null:l===a?i:i=e(a=l,n)}}function Qw(t,e,n){var a,o=n+"",i;return function(){var l=this.getAttributeNS(t.space,t.local);return l===o?null:l===a?i:i=e(a=l,n)}}function Jw(t,e,n){var a,o,i;return function(){var l,d=n(this),f;return d==null?void this.removeAttribute(t):(l=this.getAttribute(t),f=d+"",l===f?null:l===a&&f===o?i:(o=f,i=e(a=l,d)))}}function e3(t,e,n){var a,o,i;return function(){var l,d=n(this),f;return d==null?void this.removeAttributeNS(t.space,t.local):(l=this.getAttributeNS(t.space,t.local),f=d+"",l===f?null:l===a&&f===o?i:(o=f,i=e(a=l,d)))}}function t3(t,e){var n=ti(t),a=n==="transform"?Ow:Tu;return this.attrTween(t,typeof e=="function"?(n.local?e3:Jw)(n,a,Ts(this,"attr."+t,e)):e==null?(n.local?Xw:$w)(n):(n.local?Qw:Zw)(n,a,e))}function r3(t,e){return function(n){this.setAttribute(t,e.call(this,n))}}function n3(t,e){return function(n){this.setAttributeNS(t.space,t.local,e.call(this,n))}}function a3(t,e){var n,a;function o(){var i=e.apply(this,arguments);return i!==a&&(n=(a=i)&&n3(t,i)),n}return o._value=e,o}function o3(t,e){var n,a;function o(){var i=e.apply(this,arguments);return i!==a&&(n=(a=i)&&r3(t,i)),n}return o._value=e,o}function i3(t,e){var n="attr."+t;if(arguments.length<2)return(n=this.tween(n))&&n._value;if(e==null)return this.tween(n,null);if(typeof e!="function")throw new Error;var a=ti(t);return this.tween(n,(a.local?a3:o3)(a,e))}function s3(t,e){return function(){Ns(this,t).delay=+e.apply(this,arguments)}}function l3(t,e){return e=+e,function(){Ns(this,t).delay=e}}function c3(t){var e=this._id;return arguments.length?this.each((typeof t=="function"?s3:l3)(e,t)):dn(this.node(),e).delay}function d3(t,e){return function(){hn(this,t).duration=+e.apply(this,arguments)}}function u3(t,e){return e=+e,function(){hn(this,t).duration=e}}function f3(t){var e=this._id;return arguments.length?this.each((typeof t=="function"?d3:u3)(e,t)):dn(this.node(),e).duration}function v3(t,e){if(typeof e!="function")throw new Error;return function(){hn(this,t).ease=e}}function g3(t){var e=this._id;return arguments.length?this.each(v3(e,t)):dn(this.node(),e).ease}function p3(t,e){return function(){var n=e.apply(this,arguments);if(typeof n!="function")throw new Error;hn(this,t).ease=n}}function h3(t){if(typeof t!="function")throw new Error;return this.each(p3(this._id,t))}function b3(t){typeof t!="function"&&(t=lu(t));for(var e=this._groups,n=e.length,a=new Array(n),o=0;o<n;++o)for(var i=e[o],l=i.length,d=a[o]=[],f,v=0;v<l;++v)(f=i[v])&&t.call(f,f.__data__,v,i)&&d.push(f);return new Cn(a,this._parents,this._name,this._id)}function x3(t){if(t._id!==this._id)throw new Error;for(var e=this._groups,n=t._groups,a=e.length,o=n.length,i=Math.min(a,o),l=new Array(a),d=0;d<i;++d)for(var f=e[d],v=n[d],p=f.length,b=l[d]=new Array(p),h,w=0;w<p;++w)(h=f[w]||v[w])&&(b[w]=h);for(;d<a;++d)l[d]=e[d];return new Cn(l,this._parents,this._name,this._id)}function m3(t){return(t+"").trim().split(/^|\s+/).every(function(e){var n=e.indexOf(".");return n>=0&&(e=e.slice(0,n)),!e||e==="start"})}function _3(t,e,n){var a,o,i=m3(e)?Ns:hn;return function(){var l=i(this,t),d=l.on;d!==a&&(o=(a=d).copy()).on(e,n),l.on=o}}function y3(t,e){var n=this._id;return arguments.length<2?dn(this.node(),n).on.on(t):this.each(_3(n,t,e))}function w3(t){return function(){var e=this.parentNode;for(var n in this.__transition)if(+n!==t)return;e&&e.removeChild(this)}}function k3(){return this.on("end.remove",w3(this._id))}function S3(t){var e=this._name,n=this._id;typeof t!="function"&&(t=Ss(t));for(var a=this._groups,o=a.length,i=new Array(o),l=0;l<o;++l)for(var d=a[l],f=d.length,v=i[l]=new Array(f),p,b,h=0;h<f;++h)(p=d[h])&&(b=t.call(p,p.__data__,h,d))&&("__data__"in p&&(b.__data__=p.__data__),v[h]=b,ni(v[h],e,n,h,v,dn(p,n)));return new Cn(i,this._parents,e,n)}function C3(t){var e=this._name,n=this._id;typeof t!="function"&&(t=su(t));for(var a=this._groups,o=a.length,i=[],l=[],d=0;d<o;++d)for(var f=a[d],v=f.length,p,b=0;b<v;++b)if(p=f[b]){for(var h=t.call(p,p.__data__,b,f),w,k=dn(p,n),C=0,P=h.length;C<P;++C)(w=h[C])&&ni(w,e,n,C,h,k);i.push(h),l.push(p)}return new Cn(i,l,e,n)}var E3=ao.prototype.constructor;function M3(){return new E3(this._groups,this._parents)}function z3(t,e){var n,a,o;return function(){var i=da(this,t),l=(this.style.removeProperty(t),da(this,t));return i===l?null:i===n&&l===a?o:o=e(n=i,a=l)}}function Iu(t){return function(){this.style.removeProperty(t)}}function N3(t,e,n){var a,o=n+"",i;return function(){var l=da(this,t);return l===o?null:l===a?i:i=e(a=l,n)}}function T3(t,e,n){var a,o,i;return function(){var l=da(this,t),d=n(this),f=d+"";return d==null&&(f=d=(this.style.removeProperty(t),da(this,t))),l===f?null:l===a&&f===o?i:(o=f,i=e(a=l,d))}}function I3(t,e){var n,a,o,i="style."+e,l="end."+i,d;return function(){var f=hn(this,t),v=f.on,p=f.value[i]==null?d||(d=Iu(e)):void 0;(v!==n||o!==p)&&(a=(n=v).copy()).on(l,o=p),f.on=a}}function A3(t,e,n){var a=(t+="")=="transform"?Lw:Tu;return e==null?this.styleTween(t,z3(t,a)).on("end.style."+t,Iu(t)):typeof e=="function"?this.styleTween(t,T3(t,a,Ts(this,"style."+t,e))).each(I3(this._id,t)):this.styleTween(t,N3(t,a,e),n).on("end.style."+t,null)}function L3(t,e,n){return function(a){this.style.setProperty(t,e.call(this,a),n)}}function O3(t,e,n){var a,o;function i(){var l=e.apply(this,arguments);return l!==o&&(a=(o=l)&&L3(t,l,n)),a}return i._value=e,i}function P3(t,e,n){var a="style."+(t+="");if(arguments.length<2)return(a=this.tween(a))&&a._value;if(e==null)return this.tween(a,null);if(typeof e!="function")throw new Error;return this.tween(a,O3(t,e,n??""))}function D3(t){return function(){this.textContent=t}}function R3(t){return function(){var e=t(this);this.textContent=e??""}}function V3(t){return this.tween("text",typeof t=="function"?R3(Ts(this,"text",t)):D3(t==null?"":t+""))}function H3(t){return function(e){this.textContent=t.call(this,e)}}function F3(t){var e,n;function a(){var o=t.apply(this,arguments);return o!==n&&(e=(n=o)&&H3(o)),e}return a._value=t,a}function q3(t){var e="text";if(arguments.length<1)return(e=this.tween(e))&&e._value;if(t==null)return this.tween(e,null);if(typeof t!="function")throw new Error;return this.tween(e,F3(t))}function K3(){for(var t=this._name,e=this._id,n=Au(),a=this._groups,o=a.length,i=0;i<o;++i)for(var l=a[i],d=l.length,f,v=0;v<d;++v)if(f=l[v]){var p=dn(f,e);ni(f,t,n,v,l,{time:p.time+p.delay+p.duration,delay:0,duration:p.duration,ease:p.ease})}return new Cn(a,this._parents,t,n)}function j3(){var t,e,n=this,a=n._id,o=n.size();return new Promise(function(i,l){var d={value:l},f={value:function(){--o===0&&i()}};n.each(function(){var v=hn(this,a),p=v.on;p!==t&&(e=(t=p).copy(),e._.cancel.push(d),e._.interrupt.push(d),e._.end.push(f)),v.on=e}),o===0&&i()})}var B3=0;function Cn(t,e,n,a){this._groups=t,this._parents=e,this._name=n,this._id=a}function Au(){return++B3}var bn=ao.prototype;Cn.prototype={constructor:Cn,select:S3,selectAll:C3,selectChild:bn.selectChild,selectChildren:bn.selectChildren,filter:b3,merge:x3,selection:M3,transition:K3,call:bn.call,nodes:bn.nodes,node:bn.node,size:bn.size,empty:bn.empty,each:bn.each,on:y3,attr:t3,attrTween:i3,style:A3,styleTween:P3,text:V3,textTween:q3,remove:k3,tween:Yw,delay:c3,duration:f3,ease:g3,easeVarying:h3,end:j3,[Symbol.iterator]:bn[Symbol.iterator]};function U3(t){return((t*=2)<=1?t*t*t:(t-=2)*t*t+2)/2}var W3={time:null,delay:0,duration:250,ease:U3};function G3(t,e){for(var n;!(n=t.__transition)||!(n=n[e]);)if(!(t=t.parentNode))throw new Error(`transition ${e} not found`);return n}function Y3(t){var e,n;t instanceof Cn?(e=t._id,t=t._name):(e=Au(),(n=W3).time=zs(),t=t==null?null:t+"");for(var a=this._groups,o=a.length,i=0;i<o;++i)for(var l=a[i],d=l.length,f,v=0;v<d;++v)(f=l[v])&&ni(f,t,e,v,l,n||G3(f,e));return new Cn(a,this._parents,t,e)}ao.prototype.interrupt=Uw;ao.prototype.transition=Y3;const bo=t=>()=>t;function $3(t,{sourceEvent:e,target:n,transform:a,dispatch:o}){Object.defineProperties(this,{type:{value:t,enumerable:!0,configurable:!0},sourceEvent:{value:e,enumerable:!0,configurable:!0},target:{value:n,enumerable:!0,configurable:!0},transform:{value:a,enumerable:!0,configurable:!0},_:{value:o}})}function yn(t,e,n){this.k=t,this.x=e,this.y=n}yn.prototype={constructor:yn,scale:function(t){return t===1?this:new yn(this.k*t,this.x,this.y)},translate:function(t,e){return t===0&e===0?this:new yn(this.k,this.x+this.k*t,this.y+this.k*e)},apply:function(t){return[t[0]*this.k+this.x,t[1]*this.k+this.y]},applyX:function(t){return t*this.k+this.x},applyY:function(t){return t*this.k+this.y},invert:function(t){return[(t[0]-this.x)/this.k,(t[1]-this.y)/this.k]},invertX:function(t){return(t-this.x)/this.k},invertY:function(t){return(t-this.y)/this.k},rescaleX:function(t){return t.copy().domain(t.range().map(this.invertX,this).map(t.invert,t))},rescaleY:function(t){return t.copy().domain(t.range().map(this.invertY,this).map(t.invert,t))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}};var ai=new yn(1,0,0);Lu.prototype=yn.prototype;function Lu(t){for(;!t.__zoom;)if(!(t=t.parentNode))return ai;return t.__zoom}function Ci(t){t.stopImmediatePropagation()}function wa(t){t.preventDefault(),t.stopImmediatePropagation()}function X3(t){return(!t.ctrlKey||t.type==="wheel")&&!t.button}function Z3(){var t=this;return t instanceof SVGElement?(t=t.ownerSVGElement||t,t.hasAttribute("viewBox")?(t=t.viewBox.baseVal,[[t.x,t.y],[t.x+t.width,t.y+t.height]]):[[0,0],[t.width.baseVal.value,t.height.baseVal.value]]):[[0,0],[t.clientWidth,t.clientHeight]]}function Fl(){return this.__zoom||ai}function Q3(t){return-t.deltaY*(t.deltaMode===1?.05:t.deltaMode?1:.002)*(t.ctrlKey?10:1)}function J3(){return navigator.maxTouchPoints||"ontouchstart"in this}function ek(t,e,n){var a=t.invertX(e[0][0])-n[0][0],o=t.invertX(e[1][0])-n[1][0],i=t.invertY(e[0][1])-n[0][1],l=t.invertY(e[1][1])-n[1][1];return t.translate(o>a?(a+o)/2:Math.min(0,a)||Math.max(0,o),l>i?(i+l)/2:Math.min(0,i)||Math.max(0,l))}function tk(){var t=X3,e=Z3,n=ek,a=Q3,o=J3,i=[0,1/0],l=[[-1/0,-1/0],[1/0,1/0]],d=250,f=Io,v=ei("start","zoom","end"),p,b,h,w=500,k=150,C=0,P=10;function Y(_){_.property("__zoom",Fl).on("wheel.zoom",oe,{passive:!1}).on("mousedown.zoom",Q).on("dblclick.zoom",ue).filter(o).on("touchstart.zoom",U).on("touchmove.zoom",E).on("touchend.zoom touchcancel.zoom",I).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}Y.transform=function(_,A,R,te){var F=_.selection?_.selection():_;F.property("__zoom",Fl),_!==F?T(_,A,R,te):F.interrupt().each(function(){q(this,arguments).event(te).start().zoom(null,typeof A=="function"?A.apply(this,arguments):A).end()})},Y.scaleBy=function(_,A,R,te){Y.scaleTo(_,function(){var F=this.__zoom.k,$=typeof A=="function"?A.apply(this,arguments):A;return F*$},R,te)},Y.scaleTo=function(_,A,R,te){Y.transform(_,function(){var F=e.apply(this,arguments),$=this.__zoom,ee=R==null?G(F):typeof R=="function"?R.apply(this,arguments):R,L=$.invert(ee),H=typeof A=="function"?A.apply(this,arguments):A;return n(Z(O($,H),ee,L),F,l)},R,te)},Y.translateBy=function(_,A,R,te){Y.transform(_,function(){return n(this.__zoom.translate(typeof A=="function"?A.apply(this,arguments):A,typeof R=="function"?R.apply(this,arguments):R),e.apply(this,arguments),l)},null,te)},Y.translateTo=function(_,A,R,te,F){Y.transform(_,function(){var $=e.apply(this,arguments),ee=this.__zoom,L=te==null?G($):typeof te=="function"?te.apply(this,arguments):te;return n(ai.translate(L[0],L[1]).scale(ee.k).translate(typeof A=="function"?-A.apply(this,arguments):-A,typeof R=="function"?-R.apply(this,arguments):-R),$,l)},te,F)};function O(_,A){return A=Math.max(i[0],Math.min(i[1],A)),A===_.k?_:new yn(A,_.x,_.y)}function Z(_,A,R){var te=A[0]-R[0]*_.k,F=A[1]-R[1]*_.k;return te===_.x&&F===_.y?_:new yn(_.k,te,F)}function G(_){return[(+_[0][0]+ +_[1][0])/2,(+_[0][1]+ +_[1][1])/2]}function T(_,A,R,te){_.on("start.zoom",function(){q(this,arguments).event(te).start()}).on("interrupt.zoom end.zoom",function(){q(this,arguments).event(te).end()}).tween("zoom",function(){var F=this,$=arguments,ee=q(F,$).event(te),L=e.apply(F,$),H=R==null?G(L):typeof R=="function"?R.apply(F,$):R,j=Math.max(L[1][0]-L[0][0],L[1][1]-L[0][1]),le=F.__zoom,he=typeof A=="function"?A.apply(F,$):A,ie=f(le.invert(H).concat(j/le.k),he.invert(H).concat(j/he.k));return function(J){if(J===1)J=he;else{var W=ie(J),X=j/W[2];J=new yn(X,H[0]-W[0]*X,H[1]-W[1]*X)}ee.zoom(null,J)}})}function q(_,A,R){return!R&&_.__zooming||new ne(_,A)}function ne(_,A){this.that=_,this.args=A,this.active=0,this.sourceEvent=null,this.extent=e.apply(_,A),this.taps=0}ne.prototype={event:function(_){return _&&(this.sourceEvent=_),this},start:function(){return++this.active===1&&(this.that.__zooming=this,this.emit("start")),this},zoom:function(_,A){return this.mouse&&_!=="mouse"&&(this.mouse[1]=A.invert(this.mouse[0])),this.touch0&&_!=="touch"&&(this.touch0[1]=A.invert(this.touch0[0])),this.touch1&&_!=="touch"&&(this.touch1[1]=A.invert(this.touch1[0])),this.that.__zoom=A,this.emit("zoom"),this},end:function(){return--this.active===0&&(delete this.that.__zooming,this.emit("end")),this},emit:function(_){var A=nn(this.that).datum();v.call(_,this.that,new $3(_,{sourceEvent:this.sourceEvent,target:Y,transform:this.that.__zoom,dispatch:v}),A)}};function oe(_,...A){if(!t.apply(this,arguments))return;var R=q(this,A).event(_),te=this.__zoom,F=Math.max(i[0],Math.min(i[1],te.k*Math.pow(2,a.apply(this,arguments)))),$=un(_);if(R.wheel)(R.mouse[0][0]!==$[0]||R.mouse[0][1]!==$[1])&&(R.mouse[1]=te.invert(R.mouse[0]=$)),clearTimeout(R.wheel);else{if(te.k===F)return;R.mouse=[$,te.invert($)],Oo(this),R.start()}wa(_),R.wheel=setTimeout(ee,k),R.zoom("mouse",n(Z(O(te,F),R.mouse[0],R.mouse[1]),R.extent,l));function ee(){R.wheel=null,R.end()}}function Q(_,...A){if(h||!t.apply(this,arguments))return;var R=_.currentTarget,te=q(this,A,!0).event(_),F=nn(_.view).on("mousemove.zoom",H,!0).on("mouseup.zoom",j,!0),$=un(_,R),ee=_.clientX,L=_.clientY;xu(_.view),Ci(_),te.mouse=[$,this.__zoom.invert($)],Oo(this),te.start();function H(le){if(wa(le),!te.moved){var he=le.clientX-ee,ie=le.clientY-L;te.moved=he*he+ie*ie>C}te.event(le).zoom("mouse",n(Z(te.that.__zoom,te.mouse[0]=un(le,R),te.mouse[1]),te.extent,l))}function j(le){F.on("mousemove.zoom mouseup.zoom",null),mu(le.view,te.moved),wa(le),te.event(le).end()}}function ue(_,...A){if(t.apply(this,arguments)){var R=this.__zoom,te=un(_.changedTouches?_.changedTouches[0]:_,this),F=R.invert(te),$=R.k*(_.shiftKey?.5:2),ee=n(Z(O(R,$),te,F),e.apply(this,A),l);wa(_),d>0?nn(this).transition().duration(d).call(T,ee,te,_):nn(this).call(Y.transform,ee,te,_)}}function U(_,...A){if(t.apply(this,arguments)){var R=_.touches,te=R.length,F=q(this,A,_.changedTouches.length===te).event(_),$,ee,L,H;for(Ci(_),ee=0;ee<te;++ee)L=R[ee],H=un(L,this),H=[H,this.__zoom.invert(H),L.identifier],F.touch0?!F.touch1&&F.touch0[2]!==H[2]&&(F.touch1=H,F.taps=0):(F.touch0=H,$=!0,F.taps=1+!!p);p&&(p=clearTimeout(p)),$&&(F.taps<2&&(b=H[0],p=setTimeout(function(){p=null},w)),Oo(this),F.start())}}function E(_,...A){if(this.__zooming){var R=q(this,A).event(_),te=_.changedTouches,F=te.length,$,ee,L,H;for(wa(_),$=0;$<F;++$)ee=te[$],L=un(ee,this),R.touch0&&R.touch0[2]===ee.identifier?R.touch0[0]=L:R.touch1&&R.touch1[2]===ee.identifier&&(R.touch1[0]=L);if(ee=R.that.__zoom,R.touch1){var j=R.touch0[0],le=R.touch0[1],he=R.touch1[0],ie=R.touch1[1],J=(J=he[0]-j[0])*J+(J=he[1]-j[1])*J,W=(W=ie[0]-le[0])*W+(W=ie[1]-le[1])*W;ee=O(ee,Math.sqrt(J/W)),L=[(j[0]+he[0])/2,(j[1]+he[1])/2],H=[(le[0]+ie[0])/2,(le[1]+ie[1])/2]}else if(R.touch0)L=R.touch0[0],H=R.touch0[1];else return;R.zoom("touch",n(Z(ee,L,H),R.extent,l))}}function I(_,...A){if(this.__zooming){var R=q(this,A).event(_),te=_.changedTouches,F=te.length,$,ee;for(Ci(_),h&&clearTimeout(h),h=setTimeout(function(){h=null},w),$=0;$<F;++$)ee=te[$],R.touch0&&R.touch0[2]===ee.identifier?delete R.touch0:R.touch1&&R.touch1[2]===ee.identifier&&delete R.touch1;if(R.touch1&&!R.touch0&&(R.touch0=R.touch1,delete R.touch1),R.touch0)R.touch0[1]=this.__zoom.invert(R.touch0[0]);else if(R.end(),R.taps===2&&(ee=un(ee,this),Math.hypot(b[0]-ee[0],b[1]-ee[1])<P)){var L=nn(this).on("dblclick.zoom");L&&L.apply(this,arguments)}}}return Y.wheelDelta=function(_){return arguments.length?(a=typeof _=="function"?_:bo(+_),Y):a},Y.filter=function(_){return arguments.length?(t=typeof _=="function"?_:bo(!!_),Y):t},Y.touchable=function(_){return arguments.length?(o=typeof _=="function"?_:bo(!!_),Y):o},Y.extent=function(_){return arguments.length?(e=typeof _=="function"?_:bo([[+_[0][0],+_[0][1]],[+_[1][0],+_[1][1]]]),Y):e},Y.scaleExtent=function(_){return arguments.length?(i[0]=+_[0],i[1]=+_[1],Y):[i[0],i[1]]},Y.translateExtent=function(_){return arguments.length?(l[0][0]=+_[0][0],l[1][0]=+_[1][0],l[0][1]=+_[0][1],l[1][1]=+_[1][1],Y):[[l[0][0],l[0][1]],[l[1][0],l[1][1]]]},Y.constrain=function(_){return arguments.length?(n=_,Y):n},Y.duration=function(_){return arguments.length?(d=+_,Y):d},Y.interpolate=function(_){return arguments.length?(f=_,Y):f},Y.on=function(){var _=v.on.apply(v,arguments);return _===v?Y:_},Y.clickDistance=function(_){return arguments.length?(C=(_=+_)*_,Y):Math.sqrt(C)},Y.tapDistance=function(_){return arguments.length?(P=+_,Y):P},Y}const ja={error001:()=>"[React Flow]: Seems like you have not used zustand provider as an ancestor. Help: https://reactflow.dev/error#001",error002:()=>"It looks like you've created a new nodeTypes or edgeTypes object. If this wasn't on purpose please define the nodeTypes/edgeTypes outside of the component or memoize them.",error003:t=>`Node type "${t}" not found. Using fallback type "default".`,error004:()=>"The React Flow parent container needs a width and a height to render the graph.",error005:()=>"Only child nodes can use a parent extent.",error006:()=>"Can't create edge. An edge needs a source and a target.",error007:t=>`The old edge with id=${t} does not exist.`,error009:t=>`Marker type "${t}" doesn't exist.`,error008:(t,{id:e,sourceHandle:n,targetHandle:a})=>`Couldn't create edge for ${t} handle id: "${t==="source"?n:a}", edge id: ${e}.`,error010:()=>"Handle: No node id found. Make sure to only use a Handle inside a custom Node.",error011:t=>`Edge type "${t}" not found. Using fallback type "default".`,error012:t=>`Node with id "${t}" does not exist, it may have been removed. This can happen when a node is deleted before the "onNodeClick" handler is called.`,error013:(t="react")=>`It seems that you haven't loaded the styles. Please import '@xyflow/${t}/dist/style.css' or base.css to make sure everything is working properly.`,error014:()=>"useNodeConnections: No node ID found. Call useNodeConnections inside a custom Node or provide a node ID.",error015:()=>"It seems that you are trying to drag a node that is not initialized. Please use onNodesChange as explained in the docs."},is=[[Number.NEGATIVE_INFINITY,Number.NEGATIVE_INFINITY],[Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY]],Ou=["Enter"," ","Escape"],rk={"node.a11yDescription.default":"Press enter or space to select a node. Press delete to remove it and escape to cancel.","node.a11yDescription.keyboardDisabled":"Press enter or space to select a node. You can then use the arrow keys to move the node around. Press delete to remove it and escape to cancel.","node.a11yDescription.ariaLiveMessage":({direction:t,x:e,y:n})=>`Moved selected node ${t}. New position, x: ${e}, y: ${n}`,"edge.a11yDescription.default":"Press enter or space to select an edge. You can then press delete to remove it or escape to cancel.","controls.ariaLabel":"Control Panel","controls.zoomIn.ariaLabel":"Zoom In","controls.zoomOut.ariaLabel":"Zoom Out","controls.fitView.ariaLabel":"Fit View","controls.interactive.ariaLabel":"Toggle Interactivity","minimap.ariaLabel":"Mini Map","handle.ariaLabel":"Handle"};var fa;(function(t){t.Strict="strict",t.Loose="loose"})(fa||(fa={}));var ia;(function(t){t.Free="free",t.Vertical="vertical",t.Horizontal="horizontal"})(ia||(ia={}));var jo;(function(t){t.Partial="partial",t.Full="full"})(jo||(jo={}));const ss={inProgress:!1,isValid:null,from:null,fromHandle:null,fromPosition:null,fromNode:null,to:null,toHandle:null,toPosition:null,toNode:null,pointer:null};var Mn;(function(t){t.Bezier="default",t.Straight="straight",t.Step="step",t.SmoothStep="smoothstep",t.SimpleBezier="simplebezier"})(Mn||(Mn={}));var Bo;(function(t){t.Arrow="arrow",t.ArrowClosed="arrowclosed"})(Bo||(Bo={}));var Nt;(function(t){t.Left="left",t.Top="top",t.Right="right",t.Bottom="bottom"})(Nt||(Nt={}));const ql={[Nt.Left]:Nt.Right,[Nt.Right]:Nt.Left,[Nt.Top]:Nt.Bottom,[Nt.Bottom]:Nt.Top};function nk(t,e){if(!t&&!e)return!0;if(!t||!e||t.size!==e.size)return!1;if(!t.size&&!e.size)return!0;for(const n of t.keys())if(!e.has(n))return!1;return!0}function Kl(t,e,n){if(!n)return;const a=[];t.forEach((o,i)=>{e!=null&&e.has(i)||a.push(o)}),a.length&&n(a)}function ak(t){return t===null?null:t?"valid":"invalid"}const Pu=t=>"id"in t&&"source"in t&&"target"in t,ok=t=>"id"in t&&"position"in t&&!("source"in t)&&!("target"in t),Is=t=>"id"in t&&"internals"in t&&!("source"in t)&&!("target"in t),io=(t,e=[0,0])=>{const{width:n,height:a}=Wn(t),o=t.origin??e,i=n*o[0],l=a*o[1];return{x:t.position.x-i,y:t.position.y-l}},ik=(t,e={nodeOrigin:[0,0]})=>{if(t.length===0)return{x:0,y:0,width:0,height:0};const n=t.reduce((a,o)=>{const i=typeof o=="string";let l=!e.nodeLookup&&!i?o:void 0;e.nodeLookup&&(l=i?e.nodeLookup.get(o):Is(o)?o:e.nodeLookup.get(o.id));const d=l?Uo(l,e.nodeOrigin):{x:0,y:0,x2:0,y2:0};return ii(a,d)},{x:1/0,y:1/0,x2:-1/0,y2:-1/0});return si(n)},oi=(t,e={})=>{let n={x:1/0,y:1/0,x2:-1/0,y2:-1/0},a=!1;return t.forEach(o=>{(e.filter===void 0||e.filter(o))&&(n=ii(n,Uo(o)),a=!0)}),a?si(n):{x:0,y:0,width:0,height:0}},As=(t,e,[n,a,o]=[0,0,1],i=!1,l=!1)=>{const d={...lo(e,[n,a,o]),width:e.width/o,height:e.height/o},f=[];for(const v of t.values()){const{measured:p,selectable:b=!0,hidden:h=!1}=v;if(l&&!b||h)continue;const w=p.width??v.width??v.initialWidth??null,k=p.height??v.height??v.initialHeight??null,C=Ba(d,ga(v)),P=(w??0)*(k??0),Y=i&&C>0;(!v.internals.handleBounds||Y||C>=P||v.dragging)&&f.push(v)}return f},sk=(t,e)=>{const n=new Set;return t.forEach(a=>{n.add(a.id)}),e.filter(a=>n.has(a.source)||n.has(a.target))};function lk(t,e){const n=new Map,a=e!=null&&e.nodes?new Set(e.nodes.map(o=>o.id)):null;return t.forEach(o=>{o.measured.width&&o.measured.height&&((e==null?void 0:e.includeHiddenNodes)||!o.hidden)&&(!a||a.has(o.id))&&n.set(o.id,o)}),n}async function ck({nodes:t,width:e,height:n,panZoom:a,minZoom:o,maxZoom:i},l){if(t.size===0)return Promise.resolve(!0);const d=lk(t,l),f=oi(d),v=Ls(f,e,n,(l==null?void 0:l.minZoom)??o,(l==null?void 0:l.maxZoom)??i,(l==null?void 0:l.padding)??.1);return await a.setViewport(v,{duration:l==null?void 0:l.duration,ease:l==null?void 0:l.ease,interpolate:l==null?void 0:l.interpolate}),Promise.resolve(!0)}function Du({nodeId:t,nextPosition:e,nodeLookup:n,nodeOrigin:a=[0,0],nodeExtent:o,onError:i}){const l=n.get(t),d=l.parentId?n.get(l.parentId):void 0,{x:f,y:v}=d?d.internals.positionAbsolute:{x:0,y:0},p=l.origin??a;let b=l.extent||o;if(l.extent==="parent"&&!l.expandParent)if(!d)i==null||i("005",ja.error005());else{const w=d.measured.width,k=d.measured.height;w&&k&&(b=[[f,v],[f+w,v+k]])}else d&&pa(l.extent)&&(b=[[l.extent[0][0]+f,l.extent[0][1]+v],[l.extent[1][0]+f,l.extent[1][1]+v]]);const h=pa(b)?jn(e,b,l.measured):e;return(l.measured.width===void 0||l.measured.height===void 0)&&(i==null||i("015",ja.error015())),{position:{x:h.x-f+(l.measured.width??0)*p[0],y:h.y-v+(l.measured.height??0)*p[1]},positionAbsolute:h}}async function dk({nodesToRemove:t=[],edgesToRemove:e=[],nodes:n,edges:a,onBeforeDelete:o}){const i=new Set(t.map(h=>h.id)),l=[];for(const h of n){if(h.deletable===!1)continue;const w=i.has(h.id),k=!w&&h.parentId&&l.find(C=>C.id===h.parentId);(w||k)&&l.push(h)}const d=new Set(e.map(h=>h.id)),f=a.filter(h=>h.deletable!==!1),p=sk(l,f);for(const h of f)d.has(h.id)&&!p.find(k=>k.id===h.id)&&p.push(h);if(!o)return{edges:p,nodes:l};const b=await o({nodes:l,edges:p});return typeof b=="boolean"?b?{edges:p,nodes:l}:{edges:[],nodes:[]}:b}const va=(t,e=0,n=1)=>Math.min(Math.max(t,e),n),jn=(t={x:0,y:0},e,n)=>({x:va(t.x,e[0][0],e[1][0]-((n==null?void 0:n.width)??0)),y:va(t.y,e[0][1],e[1][1]-((n==null?void 0:n.height)??0))});function Ru(t,e,n){const{width:a,height:o}=Wn(n),{x:i,y:l}=n.internals.positionAbsolute;return jn(t,[[i,l],[i+a,l+o]],e)}const jl=(t,e,n)=>t<e?va(Math.abs(t-e),1,e)/e:t>n?-va(Math.abs(t-n),1,e)/e:0,Vu=(t,e,n=15,a=40)=>{const o=jl(t.x,a,e.width-a)*n,i=jl(t.y,a,e.height-a)*n;return[o,i]},ii=(t,e)=>({x:Math.min(t.x,e.x),y:Math.min(t.y,e.y),x2:Math.max(t.x2,e.x2),y2:Math.max(t.y2,e.y2)}),ls=({x:t,y:e,width:n,height:a})=>({x:t,y:e,x2:t+n,y2:e+a}),si=({x:t,y:e,x2:n,y2:a})=>({x:t,y:e,width:n-t,height:a-e}),ga=(t,e=[0,0])=>{var o,i;const{x:n,y:a}=Is(t)?t.internals.positionAbsolute:io(t,e);return{x:n,y:a,width:((o=t.measured)==null?void 0:o.width)??t.width??t.initialWidth??0,height:((i=t.measured)==null?void 0:i.height)??t.height??t.initialHeight??0}},Uo=(t,e=[0,0])=>{var o,i;const{x:n,y:a}=Is(t)?t.internals.positionAbsolute:io(t,e);return{x:n,y:a,x2:n+(((o=t.measured)==null?void 0:o.width)??t.width??t.initialWidth??0),y2:a+(((i=t.measured)==null?void 0:i.height)??t.height??t.initialHeight??0)}},uk=(t,e)=>si(ii(ls(t),ls(e))),Ba=(t,e)=>{const n=Math.max(0,Math.min(t.x+t.width,e.x+e.width)-Math.max(t.x,e.x)),a=Math.max(0,Math.min(t.y+t.height,e.y+e.height)-Math.max(t.y,e.y));return Math.ceil(n*a)},Bl=t=>wn(t.width)&&wn(t.height)&&wn(t.x)&&wn(t.y),wn=t=>!isNaN(t)&&isFinite(t),fk=(t,e)=>{},so=(t,e=[1,1])=>({x:e[0]*Math.round(t.x/e[0]),y:e[1]*Math.round(t.y/e[1])}),lo=({x:t,y:e},[n,a,o],i=!1,l=[1,1])=>{const d={x:(t-n)/o,y:(e-a)/o};return i?so(d,l):d},Wo=({x:t,y:e},[n,a,o])=>({x:t*o+n,y:e*o+a});function Qn(t,e){if(typeof t=="number")return Math.floor((e-e/(1+t))*.5);if(typeof t=="string"&&t.endsWith("px")){const n=parseFloat(t);if(!Number.isNaN(n))return Math.floor(n)}if(typeof t=="string"&&t.endsWith("%")){const n=parseFloat(t);if(!Number.isNaN(n))return Math.floor(e*n*.01)}return console.error(`[React Flow] The padding value "${t}" is invalid. Please provide a number or a string with a valid unit (px or %).`),0}function vk(t,e,n){if(typeof t=="string"||typeof t=="number"){const a=Qn(t,n),o=Qn(t,e);return{top:a,right:o,bottom:a,left:o,x:o*2,y:a*2}}if(typeof t=="object"){const a=Qn(t.top??t.y??0,n),o=Qn(t.bottom??t.y??0,n),i=Qn(t.left??t.x??0,e),l=Qn(t.right??t.x??0,e);return{top:a,right:l,bottom:o,left:i,x:i+l,y:a+o}}return{top:0,right:0,bottom:0,left:0,x:0,y:0}}function gk(t,e,n,a,o,i){const{x:l,y:d}=Wo(t,[e,n,a]),{x:f,y:v}=Wo({x:t.x+t.width,y:t.y+t.height},[e,n,a]),p=o-f,b=i-v;return{left:Math.floor(l),top:Math.floor(d),right:Math.floor(p),bottom:Math.floor(b)}}const Ls=(t,e,n,a,o,i)=>{const l=vk(i,e,n),d=(e-l.x)/t.width,f=(n-l.y)/t.height,v=Math.min(d,f),p=va(v,a,o),b=t.x+t.width/2,h=t.y+t.height/2,w=e/2-b*p,k=n/2-h*p,C=gk(t,w,k,p,e,n),P={left:Math.min(C.left-l.left,0),top:Math.min(C.top-l.top,0),right:Math.min(C.right-l.right,0),bottom:Math.min(C.bottom-l.bottom,0)};return{x:w-P.left+P.right,y:k-P.top+P.bottom,zoom:p}},Go=()=>{var t;return typeof navigator<"u"&&((t=navigator==null?void 0:navigator.userAgent)==null?void 0:t.indexOf("Mac"))>=0};function pa(t){return t!=null&&t!=="parent"}function Wn(t){var e,n;return{width:((e=t.measured)==null?void 0:e.width)??t.width??t.initialWidth??0,height:((n=t.measured)==null?void 0:n.height)??t.height??t.initialHeight??0}}function pk(t){var e,n;return(((e=t.measured)==null?void 0:e.width)??t.width??t.initialWidth)!==void 0&&(((n=t.measured)==null?void 0:n.height)??t.height??t.initialHeight)!==void 0}function hk(t,e={width:0,height:0},n,a,o){const i={...t},l=a.get(n);if(l){const d=l.origin||o;i.x+=l.internals.positionAbsolute.x-(e.width??0)*d[0],i.y+=l.internals.positionAbsolute.y-(e.height??0)*d[1]}return i}function bk(t){return{...rk,...t||{}}}function Ei(t,{snapGrid:e=[0,0],snapToGrid:n=!1,transform:a,containerBounds:o}){const{x:i,y:l}=sn(t),d=lo({x:i-((o==null?void 0:o.left)??0),y:l-((o==null?void 0:o.top)??0)},a),{x:f,y:v}=n?so(d,e):d;return{xSnapped:f,ySnapped:v,...d}}const Hu=t=>({width:t.offsetWidth,height:t.offsetHeight}),Fu=t=>{var e;return((e=t==null?void 0:t.getRootNode)==null?void 0:e.call(t))||(window==null?void 0:window.document)},xk=["INPUT","SELECT","TEXTAREA"];function qu(t){var a,o;const e=((o=(a=t.composedPath)==null?void 0:a.call(t))==null?void 0:o[0])||t.target;return(e==null?void 0:e.nodeType)!==1?!1:xk.includes(e.nodeName)||e.hasAttribute("contenteditable")||!!e.closest(".nokey")}const Ku=t=>"clientX"in t,sn=(t,e)=>{var i,l;const n=Ku(t),a=n?t.clientX:(i=t.touches)==null?void 0:i[0].clientX,o=n?t.clientY:(l=t.touches)==null?void 0:l[0].clientY;return{x:a-((e==null?void 0:e.left)??0),y:o-((e==null?void 0:e.top)??0)}},Ul=(t,e,n,a,o)=>{const i=e.querySelectorAll(`.${t}`);return!i||!i.length?null:Array.from(i).map(l=>{const d=l.getBoundingClientRect();return{id:l.getAttribute("data-handleid"),type:t,nodeId:o,position:l.getAttribute("data-handlepos"),x:(d.left-n.left)/a,y:(d.top-n.top)/a,...Hu(l)}})};function mk({sourceX:t,sourceY:e,targetX:n,targetY:a,sourceControlX:o,sourceControlY:i,targetControlX:l,targetControlY:d}){const f=t*.125+o*.375+l*.375+n*.125,v=e*.125+i*.375+d*.375+a*.125,p=Math.abs(f-t),b=Math.abs(v-e);return[f,v,p,b]}function xo(t,e){return t>=0?.5*t:e*25*Math.sqrt(-t)}function Wl({pos:t,x1:e,y1:n,x2:a,y2:o,c:i}){switch(t){case Nt.Left:return[e-xo(e-a,i),n];case Nt.Right:return[e+xo(a-e,i),n];case Nt.Top:return[e,n-xo(n-o,i)];case Nt.Bottom:return[e,n+xo(o-n,i)]}}function ju({sourceX:t,sourceY:e,sourcePosition:n=Nt.Bottom,targetX:a,targetY:o,targetPosition:i=Nt.Top,curvature:l=.25}){const[d,f]=Wl({pos:n,x1:t,y1:e,x2:a,y2:o,c:l}),[v,p]=Wl({pos:i,x1:a,y1:o,x2:t,y2:e,c:l}),[b,h,w,k]=mk({sourceX:t,sourceY:e,targetX:a,targetY:o,sourceControlX:d,sourceControlY:f,targetControlX:v,targetControlY:p});return[`M${t},${e} C${d},${f} ${v},${p} ${a},${o}`,b,h,w,k]}function Bu({sourceX:t,sourceY:e,targetX:n,targetY:a}){const o=Math.abs(n-t)/2,i=n<t?n+o:n-o,l=Math.abs(a-e)/2,d=a<e?a+l:a-l;return[i,d,o,l]}function _k({sourceNode:t,targetNode:e,selected:n=!1,zIndex:a=0,elevateOnSelect:o=!1,zIndexMode:i="basic"}){if(i==="manual")return a;const l=o&&n?a+1e3:a,d=Math.max(t.parentId||o&&t.selected?t.internals.z:0,e.parentId||o&&e.selected?e.internals.z:0);return l+d}function yk({sourceNode:t,targetNode:e,width:n,height:a,transform:o}){const i=ii(Uo(t),Uo(e));i.x===i.x2&&(i.x2+=1),i.y===i.y2&&(i.y2+=1);const l={x:-o[0]/o[2],y:-o[1]/o[2],width:n/o[2],height:a/o[2]};return Ba(l,si(i))>0}const wk=({source:t,sourceHandle:e,target:n,targetHandle:a})=>`xy-edge__${t}${e||""}-${n}${a||""}`,kk=(t,e)=>e.some(n=>n.source===t.source&&n.target===t.target&&(n.sourceHandle===t.sourceHandle||!n.sourceHandle&&!t.sourceHandle)&&(n.targetHandle===t.targetHandle||!n.targetHandle&&!t.targetHandle)),Sk=(t,e,n={})=>{if(!t.source||!t.target)return e;const a=n.getEdgeId||wk;let o;return Pu(t)?o={...t}:o={...t,id:a(t)},kk(o,e)?e:(o.sourceHandle===null&&delete o.sourceHandle,o.targetHandle===null&&delete o.targetHandle,e.concat(o))};function Uu({sourceX:t,sourceY:e,targetX:n,targetY:a}){const[o,i,l,d]=Bu({sourceX:t,sourceY:e,targetX:n,targetY:a});return[`M ${t},${e}L ${n},${a}`,o,i,l,d]}const Gl={[Nt.Left]:{x:-1,y:0},[Nt.Right]:{x:1,y:0},[Nt.Top]:{x:0,y:-1},[Nt.Bottom]:{x:0,y:1}},Ck=({source:t,sourcePosition:e=Nt.Bottom,target:n})=>e===Nt.Left||e===Nt.Right?t.x<n.x?{x:1,y:0}:{x:-1,y:0}:t.y<n.y?{x:0,y:1}:{x:0,y:-1},Yl=(t,e)=>Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2));function Ek({source:t,sourcePosition:e=Nt.Bottom,target:n,targetPosition:a=Nt.Top,center:o,offset:i,stepPosition:l}){const d=Gl[e],f=Gl[a],v={x:t.x+d.x*i,y:t.y+d.y*i},p={x:n.x+f.x*i,y:n.y+f.y*i},b=Ck({source:v,sourcePosition:e,target:p}),h=b.x!==0?"x":"y",w=b[h];let k=[],C,P;const Y={x:0,y:0},O={x:0,y:0},[,,Z,G]=Bu({sourceX:t.x,sourceY:t.y,targetX:n.x,targetY:n.y});if(d[h]*f[h]===-1){h==="x"?(C=o.x??v.x+(p.x-v.x)*l,P=o.y??(v.y+p.y)/2):(C=o.x??(v.x+p.x)/2,P=o.y??v.y+(p.y-v.y)*l);const oe=[{x:C,y:v.y},{x:C,y:p.y}],Q=[{x:v.x,y:P},{x:p.x,y:P}];d[h]===w?k=h==="x"?oe:Q:k=h==="x"?Q:oe}else{const oe=[{x:v.x,y:p.y}],Q=[{x:p.x,y:v.y}];if(h==="x"?k=d.x===w?Q:oe:k=d.y===w?oe:Q,e===a){const _=Math.abs(t[h]-n[h]);if(_<=i){const A=Math.min(i-1,i-_);d[h]===w?Y[h]=(v[h]>t[h]?-1:1)*A:O[h]=(p[h]>n[h]?-1:1)*A}}if(e!==a){const _=h==="x"?"y":"x",A=d[h]===f[_],R=v[_]>p[_],te=v[_]<p[_];(d[h]===1&&(!A&&R||A&&te)||d[h]!==1&&(!A&&te||A&&R))&&(k=h==="x"?oe:Q)}const ue={x:v.x+Y.x,y:v.y+Y.y},U={x:p.x+O.x,y:p.y+O.y},E=Math.max(Math.abs(ue.x-k[0].x),Math.abs(U.x-k[0].x)),I=Math.max(Math.abs(ue.y-k[0].y),Math.abs(U.y-k[0].y));E>=I?(C=(ue.x+U.x)/2,P=k[0].y):(C=k[0].x,P=(ue.y+U.y)/2)}const T={x:v.x+Y.x,y:v.y+Y.y},q={x:p.x+O.x,y:p.y+O.y};return[[t,...T.x!==k[0].x||T.y!==k[0].y?[T]:[],...k,...q.x!==k[k.length-1].x||q.y!==k[k.length-1].y?[q]:[],n],C,P,Z,G]}function Mk(t,e,n,a){const o=Math.min(Yl(t,e)/2,Yl(e,n)/2,a),{x:i,y:l}=e;if(t.x===i&&i===n.x||t.y===l&&l===n.y)return`L${i} ${l}`;if(t.y===l){const v=t.x<n.x?-1:1,p=t.y<n.y?1:-1;return`L ${i+o*v},${l}Q ${i},${l} ${i},${l+o*p}`}const d=t.x<n.x?1:-1,f=t.y<n.y?-1:1;return`L ${i},${l+o*f}Q ${i},${l} ${i+o*d},${l}`}function Os({sourceX:t,sourceY:e,sourcePosition:n=Nt.Bottom,targetX:a,targetY:o,targetPosition:i=Nt.Top,borderRadius:l=5,centerX:d,centerY:f,offset:v=20,stepPosition:p=.5}){const[b,h,w,k,C]=Ek({source:{x:t,y:e},sourcePosition:n,target:{x:a,y:o},targetPosition:i,center:{x:d,y:f},offset:v,stepPosition:p});let P=`M${b[0].x} ${b[0].y}`;for(let Y=1;Y<b.length-1;Y++)P+=Mk(b[Y-1],b[Y],b[Y+1],l);return P+=`L${b[b.length-1].x} ${b[b.length-1].y}`,[P,h,w,k,C]}function $l(t){var e;return t&&!!(t.internals.handleBounds||(e=t.handles)!=null&&e.length)&&!!(t.measured.width||t.width||t.initialWidth)}function zk(t){var b;const{sourceNode:e,targetNode:n}=t;if(!$l(e)||!$l(n))return null;const a=e.internals.handleBounds||Xl(e.handles),o=n.internals.handleBounds||Xl(n.handles),i=Zl((a==null?void 0:a.source)??[],t.sourceHandle),l=Zl(t.connectionMode===fa.Strict?(o==null?void 0:o.target)??[]:((o==null?void 0:o.target)??[]).concat((o==null?void 0:o.source)??[]),t.targetHandle);if(!i||!l)return(b=t.onError)==null||b.call(t,"008",ja.error008(i?"target":"source",{id:t.id,sourceHandle:t.sourceHandle,targetHandle:t.targetHandle})),null;const d=(i==null?void 0:i.position)||Nt.Bottom,f=(l==null?void 0:l.position)||Nt.Top,v=Bn(e,i,d),p=Bn(n,l,f);return{sourceX:v.x,sourceY:v.y,targetX:p.x,targetY:p.y,sourcePosition:d,targetPosition:f}}function Xl(t){if(!t)return null;const e=[],n=[];for(const a of t)a.width=a.width??1,a.height=a.height??1,a.type==="source"?e.push(a):a.type==="target"&&n.push(a);return{source:e,target:n}}function Bn(t,e,n=Nt.Left,a=!1){const o=((e==null?void 0:e.x)??0)+t.internals.positionAbsolute.x,i=((e==null?void 0:e.y)??0)+t.internals.positionAbsolute.y,{width:l,height:d}=e??Wn(t);if(a)return{x:o+l/2,y:i+d/2};switch((e==null?void 0:e.position)??n){case Nt.Top:return{x:o+l/2,y:i};case Nt.Right:return{x:o+l,y:i+d/2};case Nt.Bottom:return{x:o+l/2,y:i+d};case Nt.Left:return{x:o,y:i+d/2}}}function Zl(t,e){return t&&(e?t.find(n=>n.id===e):t[0])||null}function cs(t,e){return t?typeof t=="string"?t:`${e?`${e}__`:""}${Object.keys(t).sort().map(a=>`${a}=${t[a]}`).join("&")}`:""}function Nk(t,{id:e,defaultColor:n,defaultMarkerStart:a,defaultMarkerEnd:o}){const i=new Set;return t.reduce((l,d)=>([d.markerStart||a,d.markerEnd||o].forEach(f=>{if(f&&typeof f=="object"){const v=cs(f,e);i.has(v)||(l.push({id:v,color:f.color||n,...f}),i.add(v))}}),l),[]).sort((l,d)=>l.id.localeCompare(d.id))}const Wu=1e3,Tk=10,Ps={nodeOrigin:[0,0],nodeExtent:is,elevateNodesOnSelect:!0,zIndexMode:"basic",defaults:{}},Ik={...Ps,checkEquality:!0};function Ds(t,e){const n={...t};for(const a in e)e[a]!==void 0&&(n[a]=e[a]);return n}function Ak(t,e,n){const a=Ds(Ps,n);for(const o of t.values())if(o.parentId)Vs(o,t,e,a);else{const i=io(o,a.nodeOrigin),l=pa(o.extent)?o.extent:a.nodeExtent,d=jn(i,l,Wn(o));o.internals.positionAbsolute=d}}function Lk(t,e){if(!t.handles)return t.measured?e==null?void 0:e.internals.handleBounds:void 0;const n=[],a=[];for(const o of t.handles){const i={id:o.id,width:o.width??1,height:o.height??1,nodeId:t.id,x:o.x,y:o.y,position:o.position,type:o.type};o.type==="source"?n.push(i):o.type==="target"&&a.push(i)}return{source:n,target:a}}function Rs(t){return t==="manual"}function Ok(t,e,n,a={}){var p,b;const o=Ds(Ik,a),i={i:0},l=new Map(e),d=o!=null&&o.elevateNodesOnSelect&&!Rs(o.zIndexMode)?Wu:0;let f=t.length>0,v=!1;e.clear(),n.clear();for(const h of t){let w=l.get(h.id);if(o.checkEquality&&h===(w==null?void 0:w.internals.userNode))e.set(h.id,w);else{const k=io(h,o.nodeOrigin),C=pa(h.extent)?h.extent:o.nodeExtent,P=jn(k,C,Wn(h));w={...o.defaults,...h,measured:{width:(p=h.measured)==null?void 0:p.width,height:(b=h.measured)==null?void 0:b.height},internals:{positionAbsolute:P,handleBounds:Lk(h,w),z:Gu(h,d,o.zIndexMode),userNode:h}},e.set(h.id,w)}(w.measured===void 0||w.measured.width===void 0||w.measured.height===void 0)&&!w.hidden&&(f=!1),h.parentId&&Vs(w,e,n,a,i),v||(v=h.selected??!1)}return{nodesInitialized:f,hasSelectedNodes:v}}function Pk(t,e){if(!t.parentId)return;const n=e.get(t.parentId);n?n.set(t.id,t):e.set(t.parentId,new Map([[t.id,t]]))}function Vs(t,e,n,a,o){const{elevateNodesOnSelect:i,nodeOrigin:l,nodeExtent:d,zIndexMode:f}=Ds(Ps,a),v=t.parentId,p=e.get(v);if(!p){console.warn(`Parent node ${v} not found. Please make sure that parent nodes are in front of their child nodes in the nodes array.`);return}Pk(t,n),o&&!p.parentId&&p.internals.rootParentIndex===void 0&&f==="auto"&&(p.internals.rootParentIndex=++o.i,p.internals.z=p.internals.z+o.i*Tk),o&&p.internals.rootParentIndex!==void 0&&(o.i=p.internals.rootParentIndex);const b=i&&!Rs(f)?Wu:0,{x:h,y:w,z:k}=Dk(t,p,l,d,b,f),{positionAbsolute:C}=t.internals,P=h!==C.x||w!==C.y;(P||k!==t.internals.z)&&e.set(t.id,{...t,internals:{...t.internals,positionAbsolute:P?{x:h,y:w}:C,z:k}})}function Gu(t,e,n){const a=wn(t.zIndex)?t.zIndex:0;return Rs(n)?a:a+(t.selected?e:0)}function Dk(t,e,n,a,o,i){const{x:l,y:d}=e.internals.positionAbsolute,f=Wn(t),v=io(t,n),p=pa(t.extent)?jn(v,t.extent,f):v;let b=jn({x:l+p.x,y:d+p.y},a,f);t.extent==="parent"&&(b=Ru(b,f,e));const h=Gu(t,o,i),w=e.internals.z??0;return{x:b.x,y:b.y,z:w>=h?w+1:h}}function Rk(t,e,n,a=[0,0]){var l;const o=[],i=new Map;for(const d of t){const f=e.get(d.parentId);if(!f)continue;const v=((l=i.get(d.parentId))==null?void 0:l.expandedRect)??ga(f),p=uk(v,d.rect);i.set(d.parentId,{expandedRect:p,parent:f})}return i.size>0&&i.forEach(({expandedRect:d,parent:f},v)=>{var Z;const p=f.internals.positionAbsolute,b=Wn(f),h=f.origin??a,w=d.x<p.x?Math.round(Math.abs(p.x-d.x)):0,k=d.y<p.y?Math.round(Math.abs(p.y-d.y)):0,C=Math.max(b.width,Math.round(d.width)),P=Math.max(b.height,Math.round(d.height)),Y=(C-b.width)*h[0],O=(P-b.height)*h[1];(w>0||k>0||Y||O)&&(o.push({id:v,type:"position",position:{x:f.position.x-w+Y,y:f.position.y-k+O}}),(Z=n.get(v))==null||Z.forEach(G=>{t.some(T=>T.id===G.id)||o.push({id:G.id,type:"position",position:{x:G.position.x+w,y:G.position.y+k}})})),(b.width<d.width||b.height<d.height||w||k)&&o.push({id:v,type:"dimensions",setAttributes:!0,dimensions:{width:C+(w?h[0]*w-Y:0),height:P+(k?h[1]*k-O:0)}})}),o}function Vk(t,e,n,a,o,i,l){const d=a==null?void 0:a.querySelector(".xyflow__viewport");let f=!1;if(!d)return{changes:[],updatedInternals:f};const v=[],p=window.getComputedStyle(d),{m22:b}=new window.DOMMatrixReadOnly(p.transform),h=[];for(const w of t.values()){const k=e.get(w.id);if(!k)continue;if(k.hidden){e.set(k.id,{...k,internals:{...k.internals,handleBounds:void 0}}),f=!0;continue}const C=Hu(w.nodeElement),P=k.measured.width!==C.width||k.measured.height!==C.height;if(!!(C.width&&C.height&&(P||!k.internals.handleBounds||w.force))){const O=w.nodeElement.getBoundingClientRect(),Z=pa(k.extent)?k.extent:i;let{positionAbsolute:G}=k.internals;k.parentId&&k.extent==="parent"?G=Ru(G,C,e.get(k.parentId)):Z&&(G=jn(G,Z,C));const T={...k,measured:C,internals:{...k.internals,positionAbsolute:G,handleBounds:{source:Ul("source",w.nodeElement,O,b,k.id),target:Ul("target",w.nodeElement,O,b,k.id)}}};e.set(k.id,T),k.parentId&&Vs(T,e,n,{nodeOrigin:o,zIndexMode:l}),f=!0,P&&(v.push({id:k.id,type:"dimensions",dimensions:C}),k.expandParent&&k.parentId&&h.push({id:k.id,parentId:k.parentId,rect:ga(T,o)}))}}if(h.length>0){const w=Rk(h,e,n,o);v.push(...w)}return{changes:v,updatedInternals:f}}async function Hk({delta:t,panZoom:e,transform:n,translateExtent:a,width:o,height:i}){if(!e||!t.x&&!t.y)return Promise.resolve(!1);const l=await e.setViewportConstrained({x:n[0]+t.x,y:n[1]+t.y,zoom:n[2]},[[0,0],[o,i]],a),d=!!l&&(l.x!==n[0]||l.y!==n[1]||l.k!==n[2]);return Promise.resolve(d)}function Ql(t,e,n,a,o,i){let l=o;const d=a.get(l)||new Map;a.set(l,d.set(n,e)),l=`${o}-${t}`;const f=a.get(l)||new Map;if(a.set(l,f.set(n,e)),i){l=`${o}-${t}-${i}`;const v=a.get(l)||new Map;a.set(l,v.set(n,e))}}function Fk(t,e,n){t.clear(),e.clear();for(const a of n){const{source:o,target:i,sourceHandle:l=null,targetHandle:d=null}=a,f={edgeId:a.id,source:o,target:i,sourceHandle:l,targetHandle:d},v=`${o}-${l}--${i}-${d}`,p=`${i}-${d}--${o}-${l}`;Ql("source",f,p,t,o,l),Ql("target",f,v,t,i,d),e.set(a.id,a)}}function Yu(t,e){if(!t.parentId)return!1;const n=e.get(t.parentId);return n?n.selected?!0:Yu(n,e):!1}function Jl(t,e,n){var o;let a=t;do{if((o=a==null?void 0:a.matches)!=null&&o.call(a,e))return!0;if(a===n)return!1;a=a==null?void 0:a.parentElement}while(a);return!1}function qk(t,e,n,a){const o=new Map;for(const[i,l]of t)if((l.selected||l.id===a)&&(!l.parentId||!Yu(l,t))&&(l.draggable||e&&typeof l.draggable>"u")){const d=t.get(i);d&&o.set(i,{id:i,position:d.position||{x:0,y:0},distance:{x:n.x-d.internals.positionAbsolute.x,y:n.y-d.internals.positionAbsolute.y},extent:d.extent,parentId:d.parentId,origin:d.origin,expandParent:d.expandParent,internals:{positionAbsolute:d.internals.positionAbsolute||{x:0,y:0}},measured:{width:d.measured.width??0,height:d.measured.height??0}})}return o}function Mi({nodeId:t,dragItems:e,nodeLookup:n,dragging:a=!0}){var l,d,f;const o=[];for(const[v,p]of e){const b=(l=n.get(v))==null?void 0:l.internals.userNode;b&&o.push({...b,position:p.position,dragging:a})}if(!t)return[o[0],o];const i=(d=n.get(t))==null?void 0:d.internals.userNode;return[i?{...i,position:((f=e.get(t))==null?void 0:f.position)||i.position,dragging:a}:o[0],o]}function Kk({dragItems:t,snapGrid:e,x:n,y:a}){const o=t.values().next().value;if(!o)return null;const i={x:n-o.distance.x,y:a-o.distance.y},l=so(i,e);return{x:l.x-i.x,y:l.y-i.y}}function jk({onNodeMouseDown:t,getStoreItems:e,onDragStart:n,onDrag:a,onDragStop:o}){let i={x:null,y:null},l=0,d=new Map,f=!1,v={x:0,y:0},p=null,b=!1,h=null,w=!1,k=!1,C=null;function P({noDragClassName:O,handleSelector:Z,domNode:G,isSelectable:T,nodeId:q,nodeClickDistance:ne=0}){h=nn(G);function oe({x:E,y:I}){const{nodeLookup:_,nodeExtent:A,snapGrid:R,snapToGrid:te,nodeOrigin:F,onNodeDrag:$,onSelectionDrag:ee,onError:L,updateNodePositions:H}=e();i={x:E,y:I};let j=!1;const le=d.size>1,he=le&&A?ls(oi(d)):null,ie=le&&te?Kk({dragItems:d,snapGrid:R,x:E,y:I}):null;for(const[J,W]of d){if(!_.has(J))continue;let X={x:E-W.distance.x,y:I-W.distance.y};te&&(X=ie?{x:Math.round(X.x+ie.x),y:Math.round(X.y+ie.y)}:so(X,R));let M=null;if(le&&A&&!W.extent&&he){const{positionAbsolute:z}=W.internals,B=z.x-he.x+A[0][0],re=z.x+W.measured.width-he.x2+A[1][0],de=z.y-he.y+A[0][1],be=z.y+W.measured.height-he.y2+A[1][1];M=[[B,de],[re,be]]}const{position:K,positionAbsolute:D}=Du({nodeId:J,nextPosition:X,nodeLookup:_,nodeExtent:M||A,nodeOrigin:F,onError:L});j=j||W.position.x!==K.x||W.position.y!==K.y,W.position=K,W.internals.positionAbsolute=D}if(k=k||j,!!j&&(H(d,!0),C&&(a||$||!q&&ee))){const[J,W]=Mi({nodeId:q,dragItems:d,nodeLookup:_});a==null||a(C,d,J,W),$==null||$(C,J,W),q||ee==null||ee(C,W)}}async function Q(){if(!p)return;const{transform:E,panBy:I,autoPanSpeed:_,autoPanOnNodeDrag:A}=e();if(!A){f=!1,cancelAnimationFrame(l);return}const[R,te]=Vu(v,p,_);(R!==0||te!==0)&&(i.x=(i.x??0)-R/E[2],i.y=(i.y??0)-te/E[2],await I({x:R,y:te})&&oe(i)),l=requestAnimationFrame(Q)}function ue(E){var le;const{nodeLookup:I,multiSelectionActive:_,nodesDraggable:A,transform:R,snapGrid:te,snapToGrid:F,selectNodesOnDrag:$,onNodeDragStart:ee,onSelectionDragStart:L,unselectNodesAndEdges:H}=e();b=!0,(!$||!T)&&!_&&q&&((le=I.get(q))!=null&&le.selected||H()),T&&$&&q&&(t==null||t(q));const j=Ei(E.sourceEvent,{transform:R,snapGrid:te,snapToGrid:F,containerBounds:p});if(i=j,d=qk(I,A,j,q),d.size>0&&(n||ee||!q&&L)){const[he,ie]=Mi({nodeId:q,dragItems:d,nodeLookup:I});n==null||n(E.sourceEvent,d,he,ie),ee==null||ee(E.sourceEvent,he,ie),q||L==null||L(E.sourceEvent,ie)}}const U=lw().clickDistance(ne).on("start",E=>{const{domNode:I,nodeDragThreshold:_,transform:A,snapGrid:R,snapToGrid:te}=e();p=(I==null?void 0:I.getBoundingClientRect())||null,w=!1,k=!1,C=E.sourceEvent,_===0&&ue(E),i=Ei(E.sourceEvent,{transform:A,snapGrid:R,snapToGrid:te,containerBounds:p}),v=sn(E.sourceEvent,p)}).on("drag",E=>{const{autoPanOnNodeDrag:I,transform:_,snapGrid:A,snapToGrid:R,nodeDragThreshold:te,nodeLookup:F}=e(),$=Ei(E.sourceEvent,{transform:_,snapGrid:A,snapToGrid:R,containerBounds:p});if(C=E.sourceEvent,(E.sourceEvent.type==="touchmove"&&E.sourceEvent.touches.length>1||q&&!F.has(q))&&(w=!0),!w){if(!f&&I&&b&&(f=!0,Q()),!b){const ee=sn(E.sourceEvent,p),L=ee.x-v.x,H=ee.y-v.y;Math.sqrt(L*L+H*H)>te&&ue(E)}(i.x!==$.xSnapped||i.y!==$.ySnapped)&&d&&b&&(v=sn(E.sourceEvent,p),oe($))}}).on("end",E=>{if(!(!b||w)&&(f=!1,b=!1,cancelAnimationFrame(l),d.size>0)){const{nodeLookup:I,updateNodePositions:_,onNodeDragStop:A,onSelectionDragStop:R}=e();if(k&&(_(d,!1),k=!1),o||A||!q&&R){const[te,F]=Mi({nodeId:q,dragItems:d,nodeLookup:I,dragging:!1});o==null||o(E.sourceEvent,d,te,F),A==null||A(E.sourceEvent,te,F),q||R==null||R(E.sourceEvent,F)}}}).filter(E=>{const I=E.target;return!E.button&&(!O||!Jl(I,`.${O}`,G))&&(!Z||Jl(I,Z,G))});h.call(U)}function Y(){h==null||h.on(".drag",null)}return{update:P,destroy:Y}}function Bk(t,e,n){const a=[],o={x:t.x-n,y:t.y-n,width:n*2,height:n*2};for(const i of e.values())Ba(o,ga(i))>0&&a.push(i);return a}const Uk=250;function Wk(t,e,n,a){var d,f;let o=[],i=1/0;const l=Bk(t,n,e+Uk);for(const v of l){const p=[...((d=v.internals.handleBounds)==null?void 0:d.source)??[],...((f=v.internals.handleBounds)==null?void 0:f.target)??[]];for(const b of p){if(a.nodeId===b.nodeId&&a.type===b.type&&a.id===b.id)continue;const{x:h,y:w}=Bn(v,b,b.position,!0),k=Math.sqrt(Math.pow(h-t.x,2)+Math.pow(w-t.y,2));k>e||(k<i?(o=[{...b,x:h,y:w}],i=k):k===i&&o.push({...b,x:h,y:w}))}}if(!o.length)return null;if(o.length>1){const v=a.type==="source"?"target":"source";return o.find(p=>p.type===v)??o[0]}return o[0]}function $u(t,e,n,a,o,i=!1){var v,p,b;const l=a.get(t);if(!l)return null;const d=o==="strict"?(v=l.internals.handleBounds)==null?void 0:v[e]:[...((p=l.internals.handleBounds)==null?void 0:p.source)??[],...((b=l.internals.handleBounds)==null?void 0:b.target)??[]],f=(n?d==null?void 0:d.find(h=>h.id===n):d==null?void 0:d[0])??null;return f&&i?{...f,...Bn(l,f,f.position,!0)}:f}function Xu(t,e){return t||(e!=null&&e.classList.contains("target")?"target":e!=null&&e.classList.contains("source")?"source":null)}function Gk(t,e){let n=null;return e?n=!0:t&&!e&&(n=!1),n}const Zu=()=>!0;function Yk(t,{connectionMode:e,connectionRadius:n,handleId:a,nodeId:o,edgeUpdaterType:i,isTarget:l,domNode:d,nodeLookup:f,lib:v,autoPanOnConnect:p,flowId:b,panBy:h,cancelConnection:w,onConnectStart:k,onConnect:C,onConnectEnd:P,isValidConnection:Y=Zu,onReconnectEnd:O,updateConnection:Z,getTransform:G,getFromHandle:T,autoPanSpeed:q,dragThreshold:ne=1,handleDomNode:oe}){const Q=Fu(t.target);let ue=0,U;const{x:E,y:I}=sn(t),_=Xu(i,oe),A=d==null?void 0:d.getBoundingClientRect();let R=!1;if(!A||!_)return;const te=$u(o,_,a,f,e);if(!te)return;let F=sn(t,A),$=!1,ee=null,L=!1,H=null;function j(){if(!p||!A)return;const[K,D]=Vu(F,A,q);h({x:K,y:D}),ue=requestAnimationFrame(j)}const le={...te,nodeId:o,type:_,position:te.position},he=f.get(o);let J={inProgress:!0,isValid:null,from:Bn(he,le,Nt.Left,!0),fromHandle:le,fromPosition:le.position,fromNode:he,to:F,toHandle:null,toPosition:ql[le.position],toNode:null,pointer:F};function W(){R=!0,Z(J),k==null||k(t,{nodeId:o,handleId:a,handleType:_})}ne===0&&W();function X(K){if(!R){const{x:be,y:fe}=sn(K),Ce=be-E,ke=fe-I;if(!(Ce*Ce+ke*ke>ne*ne))return;W()}if(!T()||!le){M(K);return}const D=G();F=sn(K,A),U=Wk(lo(F,D,!1,[1,1]),n,f,le),$||(j(),$=!0);const z=Qu(K,{handle:U,connectionMode:e,fromNodeId:o,fromHandleId:a,fromType:l?"target":"source",isValidConnection:Y,doc:Q,lib:v,flowId:b,nodeLookup:f});H=z.handleDomNode,ee=z.connection,L=Gk(!!U,z.isValid);const B=f.get(o),re=B?Bn(B,le,Nt.Left,!0):J.from,de={...J,from:re,isValid:L,to:z.toHandle&&L?Wo({x:z.toHandle.x,y:z.toHandle.y},D):F,toHandle:z.toHandle,toPosition:L&&z.toHandle?z.toHandle.position:ql[le.position],toNode:z.toHandle?f.get(z.toHandle.nodeId):null,pointer:F};Z(de),J=de}function M(K){if(!("touches"in K&&K.touches.length>0)){if(R){(U||H)&&ee&&L&&(C==null||C(ee));const{inProgress:D,...z}=J,B={...z,toPosition:J.toHandle?J.toPosition:null};P==null||P(K,B),i&&(O==null||O(K,B))}w(),cancelAnimationFrame(ue),$=!1,L=!1,ee=null,H=null,Q.removeEventListener("mousemove",X),Q.removeEventListener("mouseup",M),Q.removeEventListener("touchmove",X),Q.removeEventListener("touchend",M)}}Q.addEventListener("mousemove",X),Q.addEventListener("mouseup",M),Q.addEventListener("touchmove",X),Q.addEventListener("touchend",M)}function Qu(t,{handle:e,connectionMode:n,fromNodeId:a,fromHandleId:o,fromType:i,doc:l,lib:d,flowId:f,isValidConnection:v=Zu,nodeLookup:p}){const b=i==="target",h=e?l.querySelector(`.${d}-flow__handle[data-id="${f}-${e==null?void 0:e.nodeId}-${e==null?void 0:e.id}-${e==null?void 0:e.type}"]`):null,{x:w,y:k}=sn(t),C=l.elementFromPoint(w,k),P=C!=null&&C.classList.contains(`${d}-flow__handle`)?C:h,Y={handleDomNode:P,isValid:!1,connection:null,toHandle:null};if(P){const O=Xu(void 0,P),Z=P.getAttribute("data-nodeid"),G=P.getAttribute("data-handleid"),T=P.classList.contains("connectable"),q=P.classList.contains("connectableend");if(!Z||!O)return Y;const ne={source:b?Z:a,sourceHandle:b?G:o,target:b?a:Z,targetHandle:b?o:G};Y.connection=ne;const Q=T&&q&&(n===fa.Strict?b&&O==="source"||!b&&O==="target":Z!==a||G!==o);Y.isValid=Q&&v(ne),Y.toHandle=$u(Z,O,G,p,n,!0)}return Y}const ec={onPointerDown:Yk,isValid:Qu},li=t=>({x:t.x,y:t.y,zoom:t.k}),zi=({x:t,y:e,zoom:n})=>ai.translate(t,e).scale(n),Jn=(t,e)=>t.target.closest(`.${e}`),Ju=(t,e)=>e===2&&Array.isArray(t)&&t.includes(2),$k=t=>((t*=2)<=1?t*t*t:(t-=2)*t*t+2)/2,Ni=(t,e=0,n=$k,a=()=>{})=>{const o=typeof e=="number"&&e>0;return o||a(),o?t.transition().duration(e).ease(n).on("end",a):t},ef=t=>{const e=t.ctrlKey&&Go()?10:1;return-t.deltaY*(t.deltaMode===1?.05:t.deltaMode?1:.002)*e};function Xk({zoomPanValues:t,noWheelClassName:e,d3Selection:n,d3Zoom:a,panOnScrollMode:o,panOnScrollSpeed:i,zoomOnPinch:l,onPanZoomStart:d,onPanZoom:f,onPanZoomEnd:v}){return p=>{if(Jn(p,e))return p.ctrlKey&&p.preventDefault(),!1;p.preventDefault(),p.stopImmediatePropagation();const b=n.property("__zoom").k||1;if(p.ctrlKey&&l){const P=un(p),Y=ef(p),O=b*Math.pow(2,Y);a.scaleTo(n,O,P,p);return}const h=p.deltaMode===1?20:1;let w=o===ia.Vertical?0:p.deltaX*h,k=o===ia.Horizontal?0:p.deltaY*h;!Go()&&p.shiftKey&&o!==ia.Vertical&&(w=p.deltaY*h,k=0),a.translateBy(n,-(w/b)*i,-(k/b)*i,{internal:!0});const C=li(n.property("__zoom"));clearTimeout(t.panScrollTimeout),t.isPanScrolling?(f==null||f(p,C),t.panScrollTimeout=setTimeout(()=>{v==null||v(p,C),t.isPanScrolling=!1},150)):(t.isPanScrolling=!0,d==null||d(p,C))}}function Zk({noWheelClassName:t,preventScrolling:e,d3ZoomHandler:n}){return function(a,o){const i=a.type==="wheel",l=!e&&i&&!a.ctrlKey,d=Jn(a,t);if(a.ctrlKey&&i&&d&&a.preventDefault(),l||d)return null;a.preventDefault(),n.call(this,a,o)}}function Qk({zoomPanValues:t,onDraggingChange:e,onPanZoomStart:n}){return a=>{var i,l,d;if((i=a.sourceEvent)!=null&&i.internal)return;const o=li(a.transform);t.mouseButton=((l=a.sourceEvent)==null?void 0:l.button)||0,t.isZoomingOrPanning=!0,t.prevViewport=o,((d=a.sourceEvent)==null?void 0:d.type)==="mousedown"&&e(!0),n&&(n==null||n(a.sourceEvent,o))}}function Jk({zoomPanValues:t,panOnDrag:e,onPaneContextMenu:n,onTransformChange:a,onPanZoom:o}){return i=>{var l,d;t.usedRightMouseButton=!!(n&&Ju(e,t.mouseButton??0)),(l=i.sourceEvent)!=null&&l.sync||a([i.transform.x,i.transform.y,i.transform.k]),o&&!((d=i.sourceEvent)!=null&&d.internal)&&(o==null||o(i.sourceEvent,li(i.transform)))}}function e5({zoomPanValues:t,panOnDrag:e,panOnScroll:n,onDraggingChange:a,onPanZoomEnd:o,onPaneContextMenu:i}){return l=>{var d;if(!((d=l.sourceEvent)!=null&&d.internal)&&(t.isZoomingOrPanning=!1,i&&Ju(e,t.mouseButton??0)&&!t.usedRightMouseButton&&l.sourceEvent&&i(l.sourceEvent),t.usedRightMouseButton=!1,a(!1),o)){const f=li(l.transform);t.prevViewport=f,clearTimeout(t.timerId),t.timerId=setTimeout(()=>{o==null||o(l.sourceEvent,f)},n?150:0)}}}function t5({zoomActivationKeyPressed:t,zoomOnScroll:e,zoomOnPinch:n,panOnDrag:a,panOnScroll:o,zoomOnDoubleClick:i,userSelectionActive:l,noWheelClassName:d,noPanClassName:f,lib:v,connectionInProgress:p}){return b=>{var P;const h=t||e,w=n&&b.ctrlKey,k=b.type==="wheel";if(b.button===1&&b.type==="mousedown"&&(Jn(b,`${v}-flow__node`)||Jn(b,`${v}-flow__edge`)))return!0;if(!a&&!h&&!o&&!i&&!n||l||p&&!k||Jn(b,d)&&k||Jn(b,f)&&(!k||o&&k&&!t)||!n&&b.ctrlKey&&k)return!1;if(!n&&b.type==="touchstart"&&((P=b.touches)==null?void 0:P.length)>1)return b.preventDefault(),!1;if(!h&&!o&&!w&&k||!a&&(b.type==="mousedown"||b.type==="touchstart")||Array.isArray(a)&&!a.includes(b.button)&&b.type==="mousedown")return!1;const C=Array.isArray(a)&&a.includes(b.button)||!b.button||b.button<=1;return(!b.ctrlKey||k)&&C}}function r5({domNode:t,minZoom:e,maxZoom:n,translateExtent:a,viewport:o,onPanZoom:i,onPanZoomStart:l,onPanZoomEnd:d,onDraggingChange:f}){const v={isZoomingOrPanning:!1,usedRightMouseButton:!1,prevViewport:{},mouseButton:0,timerId:void 0,panScrollTimeout:void 0,isPanScrolling:!1},p=t.getBoundingClientRect(),b=tk().scaleExtent([e,n]).translateExtent(a),h=nn(t).call(b);O({x:o.x,y:o.y,zoom:va(o.zoom,e,n)},[[0,0],[p.width,p.height]],a);const w=h.on("wheel.zoom"),k=h.on("dblclick.zoom");b.wheelDelta(ef);function C(U,E){return h?new Promise(I=>{b==null||b.interpolate((E==null?void 0:E.interpolate)==="linear"?Ia:Io).transform(Ni(h,E==null?void 0:E.duration,E==null?void 0:E.ease,()=>I(!0)),U)}):Promise.resolve(!1)}function P({noWheelClassName:U,noPanClassName:E,onPaneContextMenu:I,userSelectionActive:_,panOnScroll:A,panOnDrag:R,panOnScrollMode:te,panOnScrollSpeed:F,preventScrolling:$,zoomOnPinch:ee,zoomOnScroll:L,zoomOnDoubleClick:H,zoomActivationKeyPressed:j,lib:le,onTransformChange:he,connectionInProgress:ie,paneClickDistance:J,selectionOnDrag:W}){_&&!v.isZoomingOrPanning&&Y();const X=A&&!j&&!_;b.clickDistance(W?1/0:!wn(J)||J<0?0:J);const M=X?Xk({zoomPanValues:v,noWheelClassName:U,d3Selection:h,d3Zoom:b,panOnScrollMode:te,panOnScrollSpeed:F,zoomOnPinch:ee,onPanZoomStart:l,onPanZoom:i,onPanZoomEnd:d}):Zk({noWheelClassName:U,preventScrolling:$,d3ZoomHandler:w});if(h.on("wheel.zoom",M,{passive:!1}),!_){const D=Qk({zoomPanValues:v,onDraggingChange:f,onPanZoomStart:l});b.on("start",D);const z=Jk({zoomPanValues:v,panOnDrag:R,onPaneContextMenu:!!I,onPanZoom:i,onTransformChange:he});b.on("zoom",z);const B=e5({zoomPanValues:v,panOnDrag:R,panOnScroll:A,onPaneContextMenu:I,onPanZoomEnd:d,onDraggingChange:f});b.on("end",B)}const K=t5({zoomActivationKeyPressed:j,panOnDrag:R,zoomOnScroll:L,panOnScroll:A,zoomOnDoubleClick:H,zoomOnPinch:ee,userSelectionActive:_,noPanClassName:E,noWheelClassName:U,lib:le,connectionInProgress:ie});b.filter(K),H?h.on("dblclick.zoom",k):h.on("dblclick.zoom",null)}function Y(){b.on("zoom",null)}async function O(U,E,I){const _=zi(U),A=b==null?void 0:b.constrain()(_,E,I);return A&&await C(A),new Promise(R=>R(A))}async function Z(U,E){const I=zi(U);return await C(I,E),new Promise(_=>_(I))}function G(U){if(h){const E=zi(U),I=h.property("__zoom");(I.k!==U.zoom||I.x!==U.x||I.y!==U.y)&&(b==null||b.transform(h,E,null,{sync:!0}))}}function T(){const U=h?Lu(h.node()):{x:0,y:0,k:1};return{x:U.x,y:U.y,zoom:U.k}}function q(U,E){return h?new Promise(I=>{b==null||b.interpolate((E==null?void 0:E.interpolate)==="linear"?Ia:Io).scaleTo(Ni(h,E==null?void 0:E.duration,E==null?void 0:E.ease,()=>I(!0)),U)}):Promise.resolve(!1)}function ne(U,E){return h?new Promise(I=>{b==null||b.interpolate((E==null?void 0:E.interpolate)==="linear"?Ia:Io).scaleBy(Ni(h,E==null?void 0:E.duration,E==null?void 0:E.ease,()=>I(!0)),U)}):Promise.resolve(!1)}function oe(U){b==null||b.scaleExtent(U)}function Q(U){b==null||b.translateExtent(U)}function ue(U){const E=!wn(U)||U<0?0:U;b==null||b.clickDistance(E)}return{update:P,destroy:Y,setViewport:Z,setViewportConstrained:O,getViewport:T,scaleTo:q,scaleBy:ne,setScaleExtent:oe,setTranslateExtent:Q,syncViewport:G,setClickDistance:ue}}var tc;(function(t){t.Line="line",t.Handle="handle"})(tc||(tc={}));function Hs(){const t={};return[e=>{if(e&&!ov(t))throw new Error(e);return Qo(t)},e=>hs(t,e)]}const[n5,a5]=Hs(),[o5,i5]=Hs(),[s5,l5]=Hs();var c5=x("<div><!></div>");function ha(t,e){nt(e,!0);let n=Re(e,"id",3,null),a=Re(e,"type",3,"source"),o=Re(e,"position",19,()=>Nt.Top),i=Re(e,"isConnectableStart",3,!0),l=Re(e,"isConnectableEnd",3,!0),d=Je(e,["$$slots","$$events","$$legacy","id","type","position","style","class","isConnectable","isConnectableStart","isConnectableEnd","isValidConnection","onconnect","ondisconnect","children"]);const f=n5("Handle must be used within a Custom Node component"),v=o5("Handle must be used within a Custom Node component");let p=y(()=>a()==="target"),b=y(()=>e.isConnectable!==void 0?e.isConnectable:v.value),h=Gn(),w=y(()=>h.ariaLabelConfig),k=null;Sc(()=>{if(e.onconnect||e.ondisconnect){h.edges;let E=h.connectionLookup.get(`${f}-${a()}${n()?`-${n()}`:""}`);if(k&&!nk(E,k)){const I=E??new Map;Kl(k,I,e.ondisconnect),Kl(I,k,e.onconnect)}k=new Map(E)}});let C=y(()=>{if(!h.connection.inProgress)return[!1,!1,!1,!1,null];const{fromHandle:E,toHandle:I,isValid:_}=h.connection,A=E&&E.nodeId===f&&E.type===a()&&E.id===n(),R=I&&I.nodeId===f&&I.type===a()&&I.id===n(),te=h.connectionMode===fa.Strict?(E==null?void 0:E.type)!==a():f!==(E==null?void 0:E.nodeId)||n()!==(E==null?void 0:E.id);return[!0,A,R,te,R&&_]}),P=y(()=>Qr(r(C),5)),Y=y(()=>r(P)[0]),O=y(()=>r(P)[1]),Z=y(()=>r(P)[2]),G=y(()=>r(P)[3]),T=y(()=>r(P)[4]);function q(E){var _;const I=h.onbeforeconnect?h.onbeforeconnect(E):E;I&&(h.addEdge(I),(_=h.onconnect)==null||_.call(h,E))}function ne(E){const I=Ku(E);E.currentTarget&&(I&&E.button===0||!I)&&ec.onPointerDown(E,{handleId:n(),nodeId:f,isTarget:r(p),connectionRadius:h.connectionRadius,domNode:h.domNode,nodeLookup:h.nodeLookup,connectionMode:h.connectionMode,lib:"svelte",autoPanOnConnect:h.autoPanOnConnect,autoPanSpeed:h.autoPanSpeed,flowId:h.flowId,isValidConnection:e.isValidConnection||((..._)=>{var A;return((A=h.isValidConnection)==null?void 0:A.call(h,..._))??!0}),updateConnection:h.updateConnection,cancelConnection:h.cancelConnection,panBy:h.panBy,onConnect:q,onConnectStart:h.onconnectstart,onConnectEnd:(..._)=>{var A;return(A=h.onconnectend)==null?void 0:A.call(h,..._)},getTransform:()=>[h.viewport.x,h.viewport.y,h.viewport.zoom],getFromHandle:()=>h.connection.fromHandle,dragThreshold:h.connectionDragThreshold,handleDomNode:E.currentTarget})}function oe(E){var H,j;if(!f||!h.clickConnectStartHandle&&!i())return;if(!h.clickConnectStartHandle){(H=h.onclickconnectstart)==null||H.call(h,E,{nodeId:f,handleId:n(),handleType:a()}),h.clickConnectStartHandle={nodeId:f,type:a(),id:n()};return}const I=Fu(E.target),_=e.isValidConnection??h.isValidConnection,{connectionMode:A,clickConnectStartHandle:R,flowId:te,nodeLookup:F}=h,{connection:$,isValid:ee}=ec.isValid(E,{handle:{nodeId:f,id:n(),type:a()},connectionMode:A,fromNodeId:R.nodeId,fromHandleId:R.id??null,fromType:R.type,isValidConnection:_,flowId:te,doc:I,lib:"svelte",nodeLookup:F});ee&&$&&q($);const L=structuredClone(Nc(h.connection));delete L.inProgress,L.toPosition=L.toHandle?L.toHandle.position:null,(j=h.onclickconnectend)==null||j.call(h,E,L),h.clickConnectStartHandle=null}var Q=c5(),ue=()=>{};zr(Q,()=>({"data-handleid":n(),"data-nodeid":f,"data-handlepos":o(),"data-id":`${h.flowId??""}-${f??""}-${n()??"null"??""}-${a()??""}`,class:["svelte-flow__handle",`svelte-flow__handle-${o()}`,h.noDragClass,h.noPanClass,o(),e.class],onmousedown:ne,ontouchstart:ne,onclick:h.clickConnect?oe:void 0,onkeypress:ue,style:e.style,role:"button","aria-label":r(w)["handle.ariaLabel"],tabindex:"-1",...d,[bs]:{valid:r(T),connectingto:r(Z),connectingfrom:r(O),source:!r(p),target:r(p),connectablestart:i(),connectableend:l(),connectable:r(b),connectionindicator:r(b)&&(!r(Y)||r(G))&&(r(Y)||h.clickConnectStartHandle?l():i())}}));var U=c(Q);tr(U,()=>e.children??Zr),s(Q),g(t,Q),at()}var d5=x("<!> <!>",1);function tf(t,e){nt(e,!0);let n=Re(e,"targetPosition",19,()=>Nt.Top),a=Re(e,"sourcePosition",19,()=>Nt.Bottom);var o=d5(),i=ze(o);ha(i,{type:"target",get position(){return n()}});var l=u(i),d=u(l);ha(d,{type:"source",get position(){return a()}}),N(()=>{var f;return S(l,` ${((f=e.data)==null?void 0:f.label)??""} `)}),g(t,o),at()}var u5=x(" <!>",1);function f5(t,e){nt(e,!0);let n=Re(e,"data",19,()=>({label:"Node"})),a=Re(e,"sourcePosition",19,()=>Nt.Bottom);Se();var o=u5(),i=ze(o),l=u(i);ha(l,{type:"source",get position(){return a()}}),N(()=>{var d;return S(i,`${((d=n())==null?void 0:d.label)??""} `)}),g(t,o),at()}var v5=x(" <!>",1);function g5(t,e){nt(e,!0);let n=Re(e,"data",19,()=>({label:"Node"})),a=Re(e,"targetPosition",19,()=>Nt.Top);Se();var o=v5(),i=ze(o),l=u(i);ha(l,{type:"target",get position(){return a()}}),N(()=>{var d;return S(i,`${((d=n())==null?void 0:d.label)??""} `)}),g(t,o),at()}function p5(t,e){}function Ti(t,e,n){if(!n||!e)return;const a=n==="root"?e:e.querySelector(`.svelte-flow__${n}`);a&&a.appendChild(t)}function Ii(t,e){const n=y(Gn),a=y(()=>r(n).domNode);let o;return r(a)?Ti(t,r(a),e):o=Cc(()=>{Lt(()=>{Ti(t,r(a),e),o==null||o()})}),{async update(i){Ti(t,r(a),i)},destroy(){t.parentNode&&t.parentNode.removeChild(t),o==null||o()}}}function h5(){let t=me(typeof window>"u");if(r(t)){const e=Cc(()=>{Lt(()=>{m(t,!1),e==null||e()})})}return{get value(){return r(t)}}}const rc=t=>ok(t),b5=t=>Pu(t);function pn(t){return t===void 0?void 0:`${t}px`}const Yo={ArrowUp:{x:0,y:-1},ArrowDown:{x:0,y:1},ArrowLeft:{x:-1,y:0},ArrowRight:{x:1,y:0}};var x5=x("<div><!></div>");function m5(t,e){nt(e,!0);let n=Re(e,"x",3,0),a=Re(e,"y",3,0),o=Re(e,"selectEdgeOnClick",3,!1),i=Re(e,"transparent",3,!1),l=Je(e,["$$slots","$$events","$$legacy","x","y","width","height","selectEdgeOnClick","transparent","class","children"]);const d=Gn(),f=s5("EdgeLabel must be used within a Custom Edge component");let v=y(()=>{var w;return(w=d.visible.edges.get(f))==null?void 0:w.zIndex});var p=x5(),b=()=>{o()&&f&&d.handleEdgeSelection(f)};zr(p,w=>({class:["svelte-flow__edge-label",{transparent:i()},e.class],tabindex:"-1",onclick:b,...l,[no]:w}),[()=>({display:h5().value?"none":void 0,cursor:o()?"pointer":void 0,transform:`translate(-50%, -50%) translate(${n()??""}px,${a()??""}px)`,"pointer-events":"all",width:pn(e.width),height:pn(e.height),"z-index":r(v)})],void 0,void 0,"svelte-168dld1");var h=c(p);tr(h,()=>e.children??Zr),s(p),Vr(p,(w,k)=>Ii==null?void 0:Ii(w,k),()=>"edge-labels"),g(t,p),at()}var _5=Cr("<path></path>"),y5=Cr('<path fill="none"></path><!><!>',1);function ci(t,e){let n=Re(e,"interactionWidth",3,20),a=Je(e,["$$slots","$$events","$$legacy","id","path","label","labelX","labelY","labelStyle","markerStart","markerEnd","style","interactionWidth","class"]);var o=y5(),i=ze(o),l=u(i);{var d=p=>{var b=_5();zr(b,()=>({d:e.path,"stroke-opacity":0,"stroke-width":n(),fill:"none",class:"svelte-flow__edge-interaction",...a})),g(p,b)};V(l,p=>{n()>0&&p(d)})}var f=u(l);{var v=p=>{m5(p,{get x(){return e.labelX},get y(){return e.labelY},get style(){return e.labelStyle},selectEdgeOnClick:!0,children:(b,h)=>{Se();var w=bt();N(()=>S(w,e.label)),g(b,w)},$$slots:{default:!0}})};V(f,p=>{e.label&&p(v)})}N(()=>{Ne(i,"id",e.id),Ne(i,"d",e.path),Pe(i,0,Ve(["svelte-flow__edge-path",e.class])),Ne(i,"marker-start",e.markerStart),Ne(i,"marker-end",e.markerEnd),yr(i,e.style)}),g(t,o)}function rf(t,e){nt(e,!0);let n=y(()=>{var d;return ju({sourceX:e.sourceX,sourceY:e.sourceY,targetX:e.targetX,targetY:e.targetY,sourcePosition:e.sourcePosition,targetPosition:e.targetPosition,curvature:(d=e.pathOptions)==null?void 0:d.curvature})}),a=y(()=>Qr(r(n),3)),o=y(()=>r(a)[0]),i=y(()=>r(a)[1]),l=y(()=>r(a)[2]);ci(t,{get id(){return e.id},get path(){return r(o)},get labelX(){return r(i)},get labelY(){return r(l)},get label(){return e.label},get labelStyle(){return e.labelStyle},get markerStart(){return e.markerStart},get markerEnd(){return e.markerEnd},get interactionWidth(){return e.interactionWidth},get style(){return e.style}}),at()}function w5(t,e){nt(e,!0);let n=y(()=>Os({sourceX:e.sourceX,sourceY:e.sourceY,targetX:e.targetX,targetY:e.targetY,sourcePosition:e.sourcePosition,targetPosition:e.targetPosition})),a=y(()=>Qr(r(n),3)),o=y(()=>r(a)[0]),i=y(()=>r(a)[1]),l=y(()=>r(a)[2]);ci(t,{get path(){return r(o)},get labelX(){return r(i)},get labelY(){return r(l)},get label(){return e.label},get labelStyle(){return e.labelStyle},get markerStart(){return e.markerStart},get markerEnd(){return e.markerEnd},get interactionWidth(){return e.interactionWidth},get style(){return e.style}}),at()}function k5(t,e){nt(e,!0);let n=y(()=>Uu({sourceX:e.sourceX,sourceY:e.sourceY,targetX:e.targetX,targetY:e.targetY})),a=y(()=>Qr(r(n),3)),o=y(()=>r(a)[0]),i=y(()=>r(a)[1]),l=y(()=>r(a)[2]);ci(t,{get path(){return r(o)},get labelX(){return r(i)},get labelY(){return r(l)},get label(){return e.label},get labelStyle(){return e.labelStyle},get markerStart(){return e.markerStart},get markerEnd(){return e.markerEnd},get interactionWidth(){return e.interactionWidth},get style(){return e.style}}),at()}function S5(t,e){nt(e,!0);let n=y(()=>Os({sourceX:e.sourceX,sourceY:e.sourceY,targetX:e.targetX,targetY:e.targetY,sourcePosition:e.sourcePosition,targetPosition:e.targetPosition,borderRadius:0})),a=y(()=>Qr(r(n),3)),o=y(()=>r(a)[0]),i=y(()=>r(a)[1]),l=y(()=>r(a)[2]);ci(t,{get path(){return r(o)},get labelX(){return r(i)},get labelY(){return r(l)},get label(){return e.label},get labelStyle(){return e.labelStyle},get markerStart(){return e.markerStart},get markerEnd(){return e.markerEnd},get interactionWidth(){return e.interactionWidth},get style(){return e.style}}),at()}function C5(t,e,n,a){const o=new Map;return As(t,{x:0,y:0,width:n,height:a},e,!0).forEach(i=>{o.set(i.id,i)}),o}function nc(t){const{edges:e,defaultEdgeOptions:n,nodeLookup:a,previousEdges:o,connectionMode:i,onerror:l,onlyRenderVisible:d,elevateEdgesOnSelect:f,zIndexMode:v}=t,p=new Map;for(const b of e){const h=a.get(b.source),w=a.get(b.target);if(!h||!w)continue;if(d){const{visibleNodes:P,transform:Y,width:O,height:Z}=t;if(yk({sourceNode:h,targetNode:w,width:O,height:Z,transform:Y}))P.set(h.id,h),P.set(w.id,w);else continue}const k=o.get(b.id);if(k&&b===k.edge&&h==k.sourceNode&&w==k.targetNode){p.set(b.id,k);continue}const C=zk({id:b.id,sourceNode:h,targetNode:w,sourceHandle:b.sourceHandle||null,targetHandle:b.targetHandle||null,connectionMode:i,onError:l});C&&p.set(b.id,{...n,...b,...C,zIndex:_k({selected:b.selected,zIndex:b.zIndex??n.zIndex,sourceNode:h,targetNode:w,elevateOnSelect:f,zIndexMode:v}),sourceNode:h,targetNode:w,edge:b})}return p}const nf={input:f5,output:g5,default:tf,group:p5},af={straight:k5,smoothstep:w5,default:rf,step:S5};function E5(t,e,n,a,o,i){if(e&&!n&&a&&o){const l=oi(i,{filter:d=>!!((d.width||d.initialWidth)&&(d.height||d.initialHeight))});return Ls(l,a,o,.5,2,.1)}else return n??{x:0,y:0,zoom:1}}function M5(t){var n,a,o,i,l,d,f,v,p,b,h,w,k,C,P,Y,O,Z,G,T,q,ne,oe,Q,ue,U,E,I,_,A,R,te,F,$,ee,L,H,j,le,he,ie,J,W,X,M,K,D,z,B,re,de,be,fe,Ce,ke,xe,ge,De,ce,se,ve,Ae,Le,we,Ie,Ee,Me,Te,Xe,Fe,Qe,lt,ct,Ke,He,Ue;class e{constructor(){je(this,n,y(()=>t.props.id??"1"));je(this,a,me(null));je(this,o,me(null));je(this,i,me(t.width??0));je(this,l,me(t.height??0));je(this,d,me(t.props.zIndexMode??"basic"));je(this,f,y(()=>{var tt;const{nodesInitialized:ae}=Ok(t.nodes,this.nodeLookup,this.parentLookup,{nodeExtent:this.nodeExtent,nodeOrigin:this.nodeOrigin,elevateNodesOnSelect:t.props.elevateNodesOnSelect??!0,checkEquality:!0,zIndexMode:this.zIndexMode});return this.fitViewQueued&&ae&&((tt=this.fitViewOptions)!=null&&tt.duration?this.resolveFitView():queueMicrotask(()=>{this.resolveFitView()})),ae}));je(this,v,y(()=>this.panZoom!==null));je(this,p,y(()=>(Fk(this.connectionLookup,this.edgeLookup,t.edges),t.edges)));qt(this,"_prevSelectedNodes",[]);qt(this,"_prevSelectedNodeIds",new Set);je(this,b,y(()=>{const ae=this._prevSelectedNodeIds.size,tt=new Set,Ze=this.nodes.filter(We=>(We.selected&&(tt.add(We.id),this._prevSelectedNodeIds.delete(We.id)),We.selected));return(ae!==tt.size||this._prevSelectedNodeIds.size>0)&&(this._prevSelectedNodes=Ze),this._prevSelectedNodeIds=tt,this._prevSelectedNodes}));qt(this,"_prevSelectedEdges",[]);qt(this,"_prevSelectedEdgeIds",new Set);je(this,h,y(()=>{const ae=this._prevSelectedEdgeIds.size,tt=new Set,Ze=this.edges.filter(We=>(We.selected&&(tt.add(We.id),this._prevSelectedEdgeIds.delete(We.id)),We.selected));return(ae!==tt.size||this._prevSelectedEdgeIds.size>0)&&(this._prevSelectedEdges=Ze),this._prevSelectedEdgeIds=tt,this._prevSelectedEdges}));qt(this,"selectionChangeHandlers",new Map);qt(this,"nodeLookup",new Map);qt(this,"parentLookup",new Map);qt(this,"connectionLookup",new Map);qt(this,"edgeLookup",new Map);qt(this,"_prevVisibleEdges",new Map);je(this,w,y(()=>{const{nodes:ae,_edges:tt,_prevVisibleEdges:Ze,nodeLookup:We,connectionMode:ut,onerror:Et,onlyRenderVisibleElements:Tt,defaultEdgeOptions:Mt,zIndexMode:Ct}=this;let xt,mt;const wt={edges:tt,defaultEdgeOptions:Mt,previousEdges:Ze,nodeLookup:We,connectionMode:ut,elevateEdgesOnSelect:t.props.elevateEdgesOnSelect??!0,zIndexMode:Ct,onerror:Et};if(Tt){const{viewport:Ot,width:Zt,height:pr}=this,hr=[Ot.x,Ot.y,Ot.zoom];xt=C5(We,hr,Zt,pr),mt=nc({...wt,onlyRenderVisible:!0,visibleNodes:xt,transform:hr,width:Zt,height:pr})}else xt=this.nodeLookup,mt=nc(wt);return{nodes:xt,edges:mt}}));je(this,k,y(()=>t.props.nodesDraggable??!0));je(this,C,y(()=>t.props.nodesConnectable??!0));je(this,P,y(()=>t.props.elementsSelectable??!0));je(this,Y,y(()=>t.props.nodesFocusable??!0));je(this,O,y(()=>t.props.edgesFocusable??!0));je(this,Z,y(()=>t.props.disableKeyboardA11y??!1));je(this,G,y(()=>t.props.minZoom??.5));je(this,T,y(()=>t.props.maxZoom??2));je(this,q,y(()=>t.props.nodeOrigin??[0,0]));je(this,ne,y(()=>t.props.nodeExtent??is));je(this,oe,y(()=>t.props.translateExtent??is));je(this,Q,y(()=>t.props.defaultEdgeOptions??{}));je(this,ue,y(()=>t.props.nodeDragThreshold??1));je(this,U,y(()=>t.props.autoPanOnNodeDrag??!0));je(this,E,y(()=>t.props.autoPanOnConnect??!0));je(this,I,y(()=>t.props.autoPanOnNodeFocus??!0));je(this,_,y(()=>t.props.autoPanSpeed??15));je(this,A,y(()=>t.props.connectionDragThreshold??1));qt(this,"fitViewQueued",t.props.fitView??!1);qt(this,"fitViewOptions",t.props.fitViewOptions);qt(this,"fitViewResolver",null);je(this,R,y(()=>t.props.snapGrid??null));je(this,te,me(!1));je(this,F,me(null));je(this,$,me(!1));je(this,ee,me(!1));je(this,L,me(!1));je(this,H,me(!1));je(this,j,me(!1));je(this,le,me(null));je(this,he,me(""));je(this,ie,y(()=>t.props.selectionMode??jo.Partial));je(this,J,y(()=>({...nf,...t.props.nodeTypes})));je(this,W,y(()=>({...af,...t.props.edgeTypes})));je(this,X,y(()=>t.props.noPanClass??"nopan"));je(this,M,y(()=>t.props.noDragClass??"nodrag"));je(this,K,y(()=>t.props.noWheelClass??"nowheel"));je(this,D,y(()=>bk(t.props.ariaLabelConfig)));je(this,z,me(E5(this.nodesInitialized,t.props.fitView,t.props.initialViewport,this.width,this.height,this.nodeLookup)));je(this,B,me(ss));je(this,re,y(()=>this._connection.inProgress?{...this._connection,to:lo(this._connection.to,[this.viewport.x,this.viewport.y,this.viewport.zoom])}:this._connection));je(this,de,y(()=>t.props.connectionMode??fa.Strict));je(this,be,y(()=>t.props.connectionRadius??20));je(this,fe,y(()=>t.props.isValidConnection??(()=>!0)));je(this,Ce,y(()=>t.props.selectNodesOnDrag??!0));je(this,ke,y(()=>t.props.defaultMarkerColor===void 0?"#b1b1b7":t.props.defaultMarkerColor));je(this,xe,y(()=>Nk(t.edges,{defaultColor:this.defaultMarkerColor,id:this.flowId,defaultMarkerStart:this.defaultEdgeOptions.markerStart,defaultMarkerEnd:this.defaultEdgeOptions.markerEnd})));je(this,ge,y(()=>t.props.onlyRenderVisibleElements??!1));je(this,De,y(()=>t.props.onflowerror??fk));je(this,ce,y(()=>t.props.ondelete));je(this,se,y(()=>t.props.onbeforedelete));je(this,ve,y(()=>t.props.onbeforeconnect));je(this,Ae,y(()=>t.props.onconnect));je(this,Le,y(()=>t.props.onconnectstart));je(this,we,y(()=>t.props.onconnectend));je(this,Ie,y(()=>t.props.onbeforereconnect));je(this,Ee,y(()=>t.props.onreconnect));je(this,Me,y(()=>t.props.onreconnectstart));je(this,Te,y(()=>t.props.onreconnectend));je(this,Xe,y(()=>t.props.clickConnect??!0));je(this,Fe,y(()=>t.props.onclickconnectstart));je(this,Qe,y(()=>t.props.onclickconnectend));je(this,lt,me(null));je(this,ct,y(()=>t.props.onselectiondrag));je(this,Ke,y(()=>t.props.onselectiondragstart));je(this,He,y(()=>t.props.onselectiondragstop));qt(this,"resolveFitView",async()=>{var ae;this.panZoom&&(await ck({nodes:this.nodeLookup,width:this.width,height:this.height,panZoom:this.panZoom,minZoom:this.minZoom,maxZoom:this.maxZoom},this.fitViewOptions),(ae=this.fitViewResolver)==null||ae.resolve(!0),this.fitViewQueued=!1,this.fitViewOptions=void 0,this.fitViewResolver=null)});qt(this,"_prefersDark",new ug("(prefers-color-scheme: dark)",t.props.colorModeSSR==="dark"));je(this,Ue,y(()=>t.props.colorMode==="system"?this._prefersDark.current?"dark":"light":t.props.colorMode??"light"))}get flowId(){return r(pe(this,n))}set flowId(ae){m(pe(this,n),ae)}get domNode(){return r(pe(this,a))}set domNode(ae){m(pe(this,a),ae)}get panZoom(){return r(pe(this,o))}set panZoom(ae){m(pe(this,o),ae)}get width(){return r(pe(this,i))}set width(ae){m(pe(this,i),ae)}get height(){return r(pe(this,l))}set height(ae){m(pe(this,l),ae)}get zIndexMode(){return r(pe(this,d))}set zIndexMode(ae){m(pe(this,d),ae)}get nodesInitialized(){return r(pe(this,f))}set nodesInitialized(ae){m(pe(this,f),ae)}get viewportInitialized(){return r(pe(this,v))}set viewportInitialized(ae){m(pe(this,v),ae)}get _edges(){return r(pe(this,p))}set _edges(ae){m(pe(this,p),ae)}get nodes(){return this.nodesInitialized,t.nodes}set nodes(ae){t.nodes=ae}get edges(){return this._edges}set edges(ae){t.edges=ae}get selectedNodes(){return r(pe(this,b))}set selectedNodes(ae){m(pe(this,b),ae)}get selectedEdges(){return r(pe(this,h))}set selectedEdges(ae){m(pe(this,h),ae)}get visible(){return r(pe(this,w))}set visible(ae){m(pe(this,w),ae)}get nodesDraggable(){return r(pe(this,k))}set nodesDraggable(ae){m(pe(this,k),ae)}get nodesConnectable(){return r(pe(this,C))}set nodesConnectable(ae){m(pe(this,C),ae)}get elementsSelectable(){return r(pe(this,P))}set elementsSelectable(ae){m(pe(this,P),ae)}get nodesFocusable(){return r(pe(this,Y))}set nodesFocusable(ae){m(pe(this,Y),ae)}get edgesFocusable(){return r(pe(this,O))}set edgesFocusable(ae){m(pe(this,O),ae)}get disableKeyboardA11y(){return r(pe(this,Z))}set disableKeyboardA11y(ae){m(pe(this,Z),ae)}get minZoom(){return r(pe(this,G))}set minZoom(ae){m(pe(this,G),ae)}get maxZoom(){return r(pe(this,T))}set maxZoom(ae){m(pe(this,T),ae)}get nodeOrigin(){return r(pe(this,q))}set nodeOrigin(ae){m(pe(this,q),ae)}get nodeExtent(){return r(pe(this,ne))}set nodeExtent(ae){m(pe(this,ne),ae)}get translateExtent(){return r(pe(this,oe))}set translateExtent(ae){m(pe(this,oe),ae)}get defaultEdgeOptions(){return r(pe(this,Q))}set defaultEdgeOptions(ae){m(pe(this,Q),ae)}get nodeDragThreshold(){return r(pe(this,ue))}set nodeDragThreshold(ae){m(pe(this,ue),ae)}get autoPanOnNodeDrag(){return r(pe(this,U))}set autoPanOnNodeDrag(ae){m(pe(this,U),ae)}get autoPanOnConnect(){return r(pe(this,E))}set autoPanOnConnect(ae){m(pe(this,E),ae)}get autoPanOnNodeFocus(){return r(pe(this,I))}set autoPanOnNodeFocus(ae){m(pe(this,I),ae)}get autoPanSpeed(){return r(pe(this,_))}set autoPanSpeed(ae){m(pe(this,_),ae)}get connectionDragThreshold(){return r(pe(this,A))}set connectionDragThreshold(ae){m(pe(this,A),ae)}get snapGrid(){return r(pe(this,R))}set snapGrid(ae){m(pe(this,R),ae)}get dragging(){return r(pe(this,te))}set dragging(ae){m(pe(this,te),ae)}get selectionRect(){return r(pe(this,F))}set selectionRect(ae){m(pe(this,F),ae)}get selectionKeyPressed(){return r(pe(this,$))}set selectionKeyPressed(ae){m(pe(this,$),ae)}get multiselectionKeyPressed(){return r(pe(this,ee))}set multiselectionKeyPressed(ae){m(pe(this,ee),ae)}get deleteKeyPressed(){return r(pe(this,L))}set deleteKeyPressed(ae){m(pe(this,L),ae)}get panActivationKeyPressed(){return r(pe(this,H))}set panActivationKeyPressed(ae){m(pe(this,H),ae)}get zoomActivationKeyPressed(){return r(pe(this,j))}set zoomActivationKeyPressed(ae){m(pe(this,j),ae)}get selectionRectMode(){return r(pe(this,le))}set selectionRectMode(ae){m(pe(this,le),ae)}get ariaLiveMessage(){return r(pe(this,he))}set ariaLiveMessage(ae){m(pe(this,he),ae)}get selectionMode(){return r(pe(this,ie))}set selectionMode(ae){m(pe(this,ie),ae)}get nodeTypes(){return r(pe(this,J))}set nodeTypes(ae){m(pe(this,J),ae)}get edgeTypes(){return r(pe(this,W))}set edgeTypes(ae){m(pe(this,W),ae)}get noPanClass(){return r(pe(this,X))}set noPanClass(ae){m(pe(this,X),ae)}get noDragClass(){return r(pe(this,M))}set noDragClass(ae){m(pe(this,M),ae)}get noWheelClass(){return r(pe(this,K))}set noWheelClass(ae){m(pe(this,K),ae)}get ariaLabelConfig(){return r(pe(this,D))}set ariaLabelConfig(ae){m(pe(this,D),ae)}get _viewport(){return r(pe(this,z))}set _viewport(ae){m(pe(this,z),ae)}get viewport(){return t.viewport??this._viewport}set viewport(ae){t.viewport&&(t.viewport=ae),this._viewport=ae}get _connection(){return r(pe(this,B))}set _connection(ae){m(pe(this,B),ae)}get connection(){return r(pe(this,re))}set connection(ae){m(pe(this,re),ae)}get connectionMode(){return r(pe(this,de))}set connectionMode(ae){m(pe(this,de),ae)}get connectionRadius(){return r(pe(this,be))}set connectionRadius(ae){m(pe(this,be),ae)}get isValidConnection(){return r(pe(this,fe))}set isValidConnection(ae){m(pe(this,fe),ae)}get selectNodesOnDrag(){return r(pe(this,Ce))}set selectNodesOnDrag(ae){m(pe(this,Ce),ae)}get defaultMarkerColor(){return r(pe(this,ke))}set defaultMarkerColor(ae){m(pe(this,ke),ae)}get markers(){return r(pe(this,xe))}set markers(ae){m(pe(this,xe),ae)}get onlyRenderVisibleElements(){return r(pe(this,ge))}set onlyRenderVisibleElements(ae){m(pe(this,ge),ae)}get onerror(){return r(pe(this,De))}set onerror(ae){m(pe(this,De),ae)}get ondelete(){return r(pe(this,ce))}set ondelete(ae){m(pe(this,ce),ae)}get onbeforedelete(){return r(pe(this,se))}set onbeforedelete(ae){m(pe(this,se),ae)}get onbeforeconnect(){return r(pe(this,ve))}set onbeforeconnect(ae){m(pe(this,ve),ae)}get onconnect(){return r(pe(this,Ae))}set onconnect(ae){m(pe(this,Ae),ae)}get onconnectstart(){return r(pe(this,Le))}set onconnectstart(ae){m(pe(this,Le),ae)}get onconnectend(){return r(pe(this,we))}set onconnectend(ae){m(pe(this,we),ae)}get onbeforereconnect(){return r(pe(this,Ie))}set onbeforereconnect(ae){m(pe(this,Ie),ae)}get onreconnect(){return r(pe(this,Ee))}set onreconnect(ae){m(pe(this,Ee),ae)}get onreconnectstart(){return r(pe(this,Me))}set onreconnectstart(ae){m(pe(this,Me),ae)}get onreconnectend(){return r(pe(this,Te))}set onreconnectend(ae){m(pe(this,Te),ae)}get clickConnect(){return r(pe(this,Xe))}set clickConnect(ae){m(pe(this,Xe),ae)}get onclickconnectstart(){return r(pe(this,Fe))}set onclickconnectstart(ae){m(pe(this,Fe),ae)}get onclickconnectend(){return r(pe(this,Qe))}set onclickconnectend(ae){m(pe(this,Qe),ae)}get clickConnectStartHandle(){return r(pe(this,lt))}set clickConnectStartHandle(ae){m(pe(this,lt),ae)}get onselectiondrag(){return r(pe(this,ct))}set onselectiondrag(ae){m(pe(this,ct),ae)}get onselectiondragstart(){return r(pe(this,Ke))}set onselectiondragstart(ae){m(pe(this,Ke),ae)}get onselectiondragstop(){return r(pe(this,He))}set onselectiondragstop(ae){m(pe(this,He),ae)}get colorMode(){return r(pe(this,Ue))}set colorMode(ae){m(pe(this,Ue),ae)}resetStoreValues(){this.dragging=!1,this.selectionRect=null,this.selectionRectMode=null,this.selectionKeyPressed=!1,this.multiselectionKeyPressed=!1,this.deleteKeyPressed=!1,this.panActivationKeyPressed=!1,this.zoomActivationKeyPressed=!1,this._connection=ss,this.clickConnectStartHandle=null,this.viewport=t.props.initialViewport??{x:0,y:0,zoom:1},this.ariaLiveMessage=""}}return n=new WeakMap,a=new WeakMap,o=new WeakMap,i=new WeakMap,l=new WeakMap,d=new WeakMap,f=new WeakMap,v=new WeakMap,p=new WeakMap,b=new WeakMap,h=new WeakMap,w=new WeakMap,k=new WeakMap,C=new WeakMap,P=new WeakMap,Y=new WeakMap,O=new WeakMap,Z=new WeakMap,G=new WeakMap,T=new WeakMap,q=new WeakMap,ne=new WeakMap,oe=new WeakMap,Q=new WeakMap,ue=new WeakMap,U=new WeakMap,E=new WeakMap,I=new WeakMap,_=new WeakMap,A=new WeakMap,R=new WeakMap,te=new WeakMap,F=new WeakMap,$=new WeakMap,ee=new WeakMap,L=new WeakMap,H=new WeakMap,j=new WeakMap,le=new WeakMap,he=new WeakMap,ie=new WeakMap,J=new WeakMap,W=new WeakMap,X=new WeakMap,M=new WeakMap,K=new WeakMap,D=new WeakMap,z=new WeakMap,B=new WeakMap,re=new WeakMap,de=new WeakMap,be=new WeakMap,fe=new WeakMap,Ce=new WeakMap,ke=new WeakMap,xe=new WeakMap,ge=new WeakMap,De=new WeakMap,ce=new WeakMap,se=new WeakMap,ve=new WeakMap,Ae=new WeakMap,Le=new WeakMap,we=new WeakMap,Ie=new WeakMap,Ee=new WeakMap,Me=new WeakMap,Te=new WeakMap,Xe=new WeakMap,Fe=new WeakMap,Qe=new WeakMap,lt=new WeakMap,ct=new WeakMap,Ke=new WeakMap,He=new WeakMap,Ue=new WeakMap,new e}function Gn(){const t=Qo(ds);if(!t)throw new Error("To call useStore outside of <SvelteFlow /> you need to wrap your component in a <SvelteFlowProvider />");return t.getStore()}const ds=Symbol();function z5(t){const e=M5(t);function n(U){e.nodeTypes={...nf,...U}}function a(U){e.edgeTypes={...af,...U}}function o(U){e.edges=Sk(U,e.edges)}const i=(U,E=!1)=>{e.nodes=e.nodes.map(I=>{if(e.connection.inProgress&&e.connection.fromNode.id===I.id){const A=e.nodeLookup.get(I.id);A&&(e.connection={...e.connection,from:Bn(A,e.connection.fromHandle,Nt.Left,!0)})}const _=U.get(I.id);return _?{...I,position:_.position,dragging:E}:I})};function l(U){var A,R,te;const{changes:E,updatedInternals:I}=Vk(U,e.nodeLookup,e.parentLookup,e.domNode,e.nodeOrigin,e.nodeExtent,e.zIndexMode);if(!I)return;Ak(e.nodeLookup,e.parentLookup,{nodeOrigin:e.nodeOrigin,nodeExtent:e.nodeExtent,zIndexMode:e.zIndexMode}),e.fitViewQueued&&e.resolveFitView();const _=new Map;for(const F of E){const $=(A=e.nodeLookup.get(F.id))==null?void 0:A.internals.userNode;if(!$)continue;const ee={...$};switch(F.type){case"dimensions":{const L={...ee.measured,...F.dimensions};F.setAttributes&&(ee.width=((R=F.dimensions)==null?void 0:R.width)??ee.width,ee.height=((te=F.dimensions)==null?void 0:te.height)??ee.height),ee.measured=L;break}case"position":ee.position=F.position??ee.position;break}_.set(F.id,ee)}e.nodes=e.nodes.map(F=>_.get(F.id)??F)}function d(U){const E=e.fitViewResolver??Promise.withResolvers();return e.fitViewQueued=!0,e.fitViewOptions=U,e.fitViewResolver=E,e.nodes=[...e.nodes],E.promise}async function f(U,E,I){const _=typeof(I==null?void 0:I.zoom)<"u"?I.zoom:e.maxZoom,A=e.panZoom;return A?(await A.setViewport({x:e.width/2-U*_,y:e.height/2-E*_,zoom:_},{duration:I==null?void 0:I.duration,ease:I==null?void 0:I.ease,interpolate:I==null?void 0:I.interpolate}),Promise.resolve(!0)):Promise.resolve(!1)}function v(U,E){const I=e.panZoom;return I?I.scaleBy(U,E):Promise.resolve(!1)}function p(U){return v(1.2,U)}function b(U){return v(1/1.2,U)}function h(U){const E=e.panZoom;E&&(E.setScaleExtent([U,e.maxZoom]),e.minZoom=U)}function w(U){const E=e.panZoom;E&&(E.setScaleExtent([e.minZoom,U]),e.maxZoom=U)}function k(U){const E=e.panZoom;E&&(E.setTranslateExtent(U),e.translateExtent=U)}function C(U,E=null){let I=!1;const _=U.map(A=>(E?E.has(A.id):!0)&&A.selected?(I=!0,{...A,selected:!1}):A);return[I,_]}function P(U){const E=U!=null&&U.nodes?new Set(U.nodes.map(F=>F.id)):null,[I,_]=C(e.nodes,E);I&&(e.nodes=_);const A=U!=null&&U.edges?new Set(U.edges.map(F=>F.id)):null,[R,te]=C(e.edges,A);R&&(e.edges=te)}function Y(U){const E=e.multiselectionKeyPressed;e.nodes=e.nodes.map(I=>{const _=U.includes(I.id),A=E&&I.selected||_;return!!I.selected!==A?{...I,selected:A}:I}),E||P({nodes:[]})}function O(U){const E=e.multiselectionKeyPressed;e.edges=e.edges.map(I=>{const _=U.includes(I.id),A=E&&I.selected||_;return!!I.selected!==A?{...I,selected:A}:I}),E||P({edges:[]})}function Z(U,E,I){const _=e.nodeLookup.get(U);if(!_){console.warn("012",ja.error012(U));return}e.selectionRect=null,e.selectionRectMode=null,_.selected?(E||_.selected&&e.multiselectionKeyPressed)&&(P({nodes:[_],edges:[]}),requestAnimationFrame(()=>I==null?void 0:I.blur())):Y([U])}function G(U){const E=e.edgeLookup.get(U);if(!E){console.warn("012",ja.error012(U));return}(E.selectable||e.elementsSelectable&&typeof E.selectable>"u")&&(e.selectionRect=null,e.selectionRectMode=null,E.selected?E.selected&&e.multiselectionKeyPressed&&P({nodes:[],edges:[E]}):O([U]))}function T(U,E){const{nodeExtent:I,snapGrid:_,nodeOrigin:A,nodeLookup:R,nodesDraggable:te,onerror:F}=e,$=new Map,ee=(_==null?void 0:_[0])??5,L=(_==null?void 0:_[1])??5,H=U.x*ee*E,j=U.y*L*E;for(const le of R.values()){if(!(le.selected&&(le.draggable||te&&typeof le.draggable>"u")))continue;let ie={x:le.internals.positionAbsolute.x+H,y:le.internals.positionAbsolute.y+j};_&&(ie=so(ie,_));const{position:J,positionAbsolute:W}=Du({nodeId:le.id,nextPosition:ie,nodeLookup:R,nodeExtent:I,nodeOrigin:A,onError:F});le.position=J,le.internals.positionAbsolute=W,$.set(le.id,le)}i($)}function q(U){return Hk({delta:U,panZoom:e.panZoom,transform:[e.viewport.x,e.viewport.y,e.viewport.zoom],translateExtent:e.translateExtent,width:e.width,height:e.height})}const ne=U=>{e._connection={...U}};function oe(){e._connection=ss}function Q(){e.resetStoreValues(),P()}return Object.assign(e,{setNodeTypes:n,setEdgeTypes:a,addEdge:o,updateNodePositions:i,updateNodeInternals:l,zoomIn:p,zoomOut:b,fitView:d,setCenter:f,setMinZoom:h,setMaxZoom:w,setTranslateExtent:k,unselectNodesAndEdges:P,addSelectedNodes:Y,addSelectedEdges:O,handleNodeSelection:Z,handleEdgeSelection:G,moveSelectedNodes:T,panBy:q,updateConnection:ne,cancelConnection:oe,reset:Q})}function Ai(t,e){const{minZoom:n,maxZoom:a,initialViewport:o,onPanZoomStart:i,onPanZoom:l,onPanZoomEnd:d,translateExtent:f,setPanZoomInstance:v,onDraggingChange:p,onTransformChange:b}=e,h=r5({domNode:t,minZoom:n,maxZoom:a,translateExtent:f,viewport:o,onPanZoom:l,onPanZoomStart:i,onPanZoomEnd:d,onDraggingChange:p}),w=h.getViewport();return(o.x!==w.x||o.y!==w.y||o.zoom!==w.zoom)&&b([w.x,w.y,w.zoom]),v(h),h.update(e),{update(k){h.update(k)}}}var N5=x('<div class="svelte-flow__zoom svelte-flow__container"><!></div>');function T5(t,e){nt(e,!0);let n=Re(e,"store",15),a=y(()=>n().panActivationKeyPressed||e.panOnDrag),o=y(()=>n().panActivationKeyPressed||e.panOnScroll);const{viewport:i}=n();let l=!1;Lt(()=>{var v;!l&&n().viewportInitialized&&((v=e.oninit)==null||v.call(e),l=!0)});var d=N5(),f=c(d);tr(f,()=>e.children),s(d),Vr(d,(v,p)=>Ai==null?void 0:Ai(v,p),()=>({viewport:n().viewport,minZoom:n().minZoom,maxZoom:n().maxZoom,initialViewport:i,onDraggingChange:v=>{n(n().dragging=v,!0)},setPanZoomInstance:v=>{n(n().panZoom=v,!0)},onPanZoomStart:e.onmovestart,onPanZoom:e.onmove,onPanZoomEnd:e.onmoveend,zoomOnScroll:e.zoomOnScroll,zoomOnDoubleClick:e.zoomOnDoubleClick,zoomOnPinch:e.zoomOnPinch,panOnScroll:r(o),panOnDrag:r(a),panOnScrollSpeed:e.panOnScrollSpeed,panOnScrollMode:e.panOnScrollMode,zoomActivationKeyPressed:n().zoomActivationKeyPressed,preventScrolling:typeof e.preventScrolling=="boolean"?e.preventScrolling:!0,noPanClassName:n().noPanClass,noWheelClassName:n().noWheelClass,userSelectionActive:!!n().selectionRect,translateExtent:n().translateExtent,lib:"svelte",paneClickDistance:e.paneClickDistance,selectionOnDrag:e.selectionOnDrag,onTransformChange:v=>{n(n().viewport={x:v[0],y:v[1],zoom:v[2]},!0)},connectionInProgress:n().connection.inProgress})),g(t,d),at()}function ac(t,e){return n=>{n.target===e&&(t==null||t(n))}}function oc(t){return e=>{const n=t.has(e.id);return!!e.selected!==n?{...e,selected:n}:e}}function ic(t,e){if(t.size!==e.size)return!1;for(const n of t)if(!e.has(n))return!1;return!0}var I5=x("<div><!></div>");function A5(t,e){nt(e,!0);let n=Re(e,"store",15),a=Re(e,"panOnDrag",3,!0),o=Re(e,"paneClickDistance",3,1),i,l=null,d=new Set,f=new Set,v=y(()=>n().panActivationKeyPressed||a()),p=y(()=>n().selectionKeyPressed||!!n().selectionRect||e.selectionOnDrag&&r(v)!==!0),b=y(()=>n().elementsSelectable&&(r(p)||n().selectionRectMode==="user")),h=!1;function w(oe){var _,A;if(l=i==null?void 0:i.getBoundingClientRect(),!l)return;const Q=oe.target===i,ue=!Q&&!!oe.target.closest(".nokey"),U=e.selectionOnDrag&&Q||n().selectionKeyPressed;if(ue||!r(p)||!U||oe.button!==0||!oe.isPrimary)return;(A=(_=oe.target)==null?void 0:_.setPointerCapture)==null||A.call(_,oe.pointerId),h=!1;const{x:E,y:I}=sn(oe,l);n(n().selectionRect={width:0,height:0,startX:E,startY:I,x:E,y:I},!0),Q||(oe.stopPropagation(),oe.preventDefault())}function k(oe){var R;if(!r(p)||!l||!n().selectionRect)return;const Q=sn(oe,l),{startX:ue=0,startY:U=0}=n().selectionRect;if(!h){const te=n().selectionKeyPressed?0:o();if(Math.hypot(Q.x-ue,Q.y-U)<=te)return;n().unselectNodesAndEdges(),(R=e.onselectionstart)==null||R.call(e,oe)}h=!0;const E={...n().selectionRect,x:Q.x<ue?Q.x:ue,y:Q.y<U?Q.y:U,width:Math.abs(Q.x-ue),height:Math.abs(Q.y-U)},I=d,_=f;d=new Set(As(n().nodeLookup,E,[n().viewport.x,n().viewport.y,n().viewport.zoom],n().selectionMode===jo.Partial,!0).map(te=>te.id));const A=n().defaultEdgeOptions.selectable??!0;f=new Set;for(const te of d){const F=n().connectionLookup.get(te);if(F)for(const{edgeId:$}of F.values()){const ee=n().edgeLookup.get($);ee&&(ee.selectable??A)&&f.add($)}}ic(I,d)||n(n().nodes=n().nodes.map(oc(d)),!0),ic(_,f)||n(n().edges=n().edges.map(oc(f)),!0),n(n().selectionRectMode="user",!0),n(n().selectionRect=E,!0)}function C(oe){var Q,ue,U;oe.button===0&&((ue=(Q=oe.target)==null?void 0:Q.releasePointerCapture)==null||ue.call(Q,oe.pointerId),!h&&oe.target===i&&(O==null||O(oe)),n(n().selectionRect=null,!0),h&&n(n().selectionRectMode=d.size>0?"nodes":null,!0),h&&((U=e.onselectionend)==null||U.call(e,oe)))}const P=oe=>{var Q;if(Array.isArray(r(v))&&r(v).includes(2)){oe.preventDefault();return}(Q=e.onpanecontextmenu)==null||Q.call(e,{event:oe})},Y=oe=>{h&&(oe.stopPropagation(),h=!1)};function O(oe){var Q;if(h||n().connection.inProgress){h=!1;return}(Q=e.onpaneclick)==null||Q.call(e,{event:oe}),n().unselectNodesAndEdges(),n(n().selectionRectMode=null,!0),n(n().selectionRect=null,!0)}var Z=I5();let G;var T=y(()=>r(b)?void 0:ac(O,i)),q=y(()=>ac(P,i)),ne=c(Z);tr(ne,()=>e.children),s(Z),ln(Z,oe=>i=oe,()=>i),N(oe=>G=Pe(Z,1,"svelte-flow__pane svelte-flow__container",null,G,oe),[()=>({draggable:a()===!0||Array.isArray(a())&&a().includes(0),dragging:n().dragging,selection:r(p)})]),_e("click",Z,function(...oe){var Q;(Q=r(T))==null||Q.apply(this,oe)}),Sn("pointerdown",Z,function(...oe){var Q;(Q=r(b)?w:void 0)==null||Q.apply(this,oe)},!0),_e("pointermove",Z,function(...oe){var Q;(Q=r(b)?k:void 0)==null||Q.apply(this,oe)}),_e("pointerup",Z,function(...oe){var Q;(Q=r(b)?C:void 0)==null||Q.apply(this,oe)}),_e("contextmenu",Z,function(...oe){var Q;(Q=r(q))==null||Q.apply(this,oe)}),Sn("click",Z,function(...oe){var Q;(Q=r(b)?Y:void 0)==null||Q.apply(this,oe)},!0),g(t,Z),at()}nr(["click","pointermove","pointerup","contextmenu"]);var L5=x('<div class="svelte-flow__viewport xyflow__viewport svelte-flow__container"><!></div>');function O5(t,e){nt(e,!0);var n=L5();let a;var o=c(n);tr(o,()=>e.children),s(n),N(()=>a=yr(n,"",a,{transform:`translate(${e.store.viewport.x??""}px, ${e.store.viewport.y??""}px) scale(${e.store.viewport.zoom??""})`})),g(t,n),at()}function sa(t,e){const{store:n,onDrag:a,onDragStart:o,onDragStop:i,onNodeMouseDown:l}=e,d=jk({onDrag:a,onDragStart:o,onDragStop:i,onNodeMouseDown:l,getStoreItems:()=>{const{snapGrid:v,viewport:p}=n;return{nodes:n.nodes,nodeLookup:n.nodeLookup,edges:n.edges,nodeExtent:n.nodeExtent,snapGrid:v||[0,0],snapToGrid:!!v,nodeOrigin:n.nodeOrigin,multiSelectionActive:n.multiselectionKeyPressed,domNode:n.domNode,transform:[p.x,p.y,p.zoom],autoPanOnNodeDrag:n.autoPanOnNodeDrag,nodesDraggable:n.nodesDraggable,selectNodesOnDrag:n.selectNodesOnDrag,nodeDragThreshold:n.nodeDragThreshold,unselectNodesAndEdges:n.unselectNodesAndEdges,updateNodePositions:n.updateNodePositions,onSelectionDrag:n.onselectiondrag,onSelectionDragStart:n.onselectiondragstart,onSelectionDragStop:n.onselectiondragstop,panBy:n.panBy}}});function f(v,p){if(p.disabled){d.destroy();return}d.update({domNode:v,noDragClassName:p.noDragClass,handleSelector:p.handleSelector,nodeId:p.nodeId,isSelectable:p.isSelectable,nodeClickDistance:p.nodeClickDistance})}return f(t,e),{update(v){f(t,v)},destroy(){d.destroy()}}}var P5=x('<div aria-live="assertive" aria-atomic="true" class="a11y-live-msg svelte-1r7ybe1"> </div>'),D5=x('<div class="a11y-hidden svelte-1r7ybe1"> </div> <div class="a11y-hidden svelte-1r7ybe1"> </div> <!>',1);function R5(t,e){nt(e,!0);var n=D5(),a=ze(n),o=c(a,!0);s(a);var i=u(a,2),l=c(i,!0);s(i);var d=u(i,2);{var f=v=>{var p=P5(),b=c(p,!0);s(p),N(()=>{Ne(p,"id",`${V5}-${e.store.flowId}`),S(b,e.store.ariaLiveMessage)}),g(v,p)};V(d,v=>{e.store.disableKeyboardA11y||v(f)})}N(()=>{Ne(a,"id",`${of}-${e.store.flowId}`),S(o,e.store.disableKeyboardA11y?e.store.ariaLabelConfig["node.a11yDescription.default"]:e.store.ariaLabelConfig["node.a11yDescription.keyboardDisabled"]),Ne(i,"id",`${sf}-${e.store.flowId}`),S(l,e.store.ariaLabelConfig["edge.a11yDescription.default"])}),g(t,n),at()}const of="svelte-flow__node-desc",sf="svelte-flow__edge-desc",V5="svelte-flow__aria-live";var H5=x("<div><!></div>");function F5(t,e){nt(e,!0);let n=Re(e,"store",15),a=y(()=>Rr(e.node.data,()=>({}),!0)),o=y(()=>Rr(e.node.selected,!1)),i=y(()=>e.node.draggable),l=y(()=>e.node.selectable),d=y(()=>Rr(e.node.deletable,!0)),f=y(()=>e.node.connectable),v=y(()=>e.node.focusable),p=y(()=>Rr(e.node.hidden,!1)),b=y(()=>Rr(e.node.dragging,!1)),h=y(()=>Rr(e.node.style,"")),w=y(()=>e.node.class),k=y(()=>Rr(e.node.type,"default")),C=y(()=>e.node.parentId),P=y(()=>e.node.sourcePosition),Y=y(()=>e.node.targetPosition),O=y(()=>Rr(e.node.measured,()=>({width:0,height:0}),!0).width),Z=y(()=>Rr(e.node.measured,()=>({width:0,height:0}),!0).height),G=y(()=>e.node.initialWidth),T=y(()=>e.node.initialHeight),q=y(()=>e.node.width),ne=y(()=>e.node.height),oe=y(()=>e.node.dragHandle),Q=y(()=>Rr(e.node.internals.z,0)),ue=y(()=>e.node.internals.positionAbsolute.x),U=y(()=>e.node.internals.positionAbsolute.y),E=y(()=>e.node.internals.userNode),{id:I}=e.node,_=y(()=>r(i)??n().nodesDraggable),A=y(()=>r(l)??n().elementsSelectable),R=y(()=>r(f)??n().nodesConnectable),te=y(()=>pk(e.node)),F=y(()=>!!e.node.internals.handleBounds),$=y(()=>r(te)&&r(F)),ee=y(()=>r(v)??n().nodesFocusable);function L(fe){return n().parentLookup.has(fe)}let H=y(()=>L(I)),j=me(null),le=null,he=r(k),ie=r(P),J=r(Y),W=y(()=>n().nodeTypes[r(k)]??tf),X=y(()=>n().ariaLabelConfig),M={get value(){return r(R)}};a5(I),i5(M);let K=y(()=>{const fe=r(O)===void 0?r(q)??r(G):r(q),Ce=r(Z)===void 0?r(ne)??r(T):r(ne);if(!(fe===void 0&&Ce===void 0&&r(h)===void 0))return`${r(h)};${fe?`width:${pn(fe)};`:""}${Ce?`height:${pn(Ce)};`:""}`});Lt(()=>{(r(k)!==he||r(P)!==ie||r(Y)!==J)&&r(j)!==null&&requestAnimationFrame(()=>{r(j)!==null&&n().updateNodeInternals(new Map([[I,{id:I,nodeElement:r(j),force:!0}]]))}),he=r(k),ie=r(P),J=r(Y)}),Lt(()=>{e.resizeObserver&&(!r($)||r(j)!==le)&&(le&&e.resizeObserver.unobserve(le),r(j)&&e.resizeObserver.observe(r(j)),le=r(j))}),Zo(()=>{var fe;le&&((fe=e.resizeObserver)==null||fe.unobserve(le))});function D(fe){var Ce;r(A)&&(!n().selectNodesOnDrag||!r(_)||n().nodeDragThreshold>0)&&n().handleNodeSelection(I),(Ce=e.onnodeclick)==null||Ce.call(e,{node:r(E),event:fe})}function z(fe){if(!(qu(fe)||n().disableKeyboardA11y))if(Ou.includes(fe.key)&&r(A)){const Ce=fe.key==="Escape";n().handleNodeSelection(I,Ce,r(j))}else r(_)&&e.node.selected&&Object.prototype.hasOwnProperty.call(Yo,fe.key)&&(fe.preventDefault(),n(n().ariaLiveMessage=r(X)["node.a11yDescription.ariaLiveMessage"]({direction:fe.key.replace("Arrow","").toLowerCase(),x:~~e.node.internals.positionAbsolute.x,y:~~e.node.internals.positionAbsolute.y}),!0),n().moveSelectedNodes(Yo[fe.key],fe.shiftKey?4:1))}const B=()=>{var ge;if(n().disableKeyboardA11y||!n().autoPanOnNodeFocus||!((ge=r(j))!=null&&ge.matches(":focus-visible")))return;const{width:fe,height:Ce,viewport:ke}=n();As(new Map([[I,e.node]]),{x:0,y:0,width:fe,height:Ce},[ke.x,ke.y,ke.zoom],!0).length>0||n().setCenter(e.node.position.x+(e.node.measured.width??0)/2,e.node.position.y+(e.node.measured.height??0)/2,{zoom:ke.zoom})};var re=_t(),de=ze(re);{var be=fe=>{var Ce=H5();zr(Ce,()=>({"data-id":I,class:["svelte-flow__node",`svelte-flow__node-${r(k)}`,r(w)],style:r(K),onclick:D,onpointerenter:e.onnodepointerenter?xe=>e.onnodepointerenter({node:r(E),event:xe}):void 0,onpointerleave:e.onnodepointerleave?xe=>e.onnodepointerleave({node:r(E),event:xe}):void 0,onpointermove:e.onnodepointermove?xe=>e.onnodepointermove({node:r(E),event:xe}):void 0,oncontextmenu:e.onnodecontextmenu?xe=>e.onnodecontextmenu({node:r(E),event:xe}):void 0,onkeydown:r(ee)?z:void 0,onfocus:r(ee)?B:void 0,tabIndex:r(ee)?0:void 0,role:e.node.ariaRole??(r(ee)?"group":void 0),"aria-roledescription":"node","aria-describedby":n().disableKeyboardA11y?void 0:`${of}-${n().flowId}`,...e.node.domAttributes,[bs]:{dragging:r(b),selected:r(o),draggable:r(_),connectable:r(R),selectable:r(A),nopan:r(_),parent:r(H)},[no]:{"z-index":r(Q),transform:`translate(${r(ue)??""}px, ${r(U)??""}px)`,visibility:r(te)?"visible":"hidden"}}));var ke=c(Ce);ba(ke,()=>r(W),(xe,ge)=>{ge(xe,{get data(){return r(a)},get id(){return I},get selected(){return r(o)},get selectable(){return r(A)},get deletable(){return r(d)},get sourcePosition(){return r(P)},get targetPosition(){return r(Y)},get zIndex(){return r(Q)},get dragging(){return r(b)},get draggable(){return r(_)},get dragHandle(){return r(oe)},get parentId(){return r(C)},get type(){return r(k)},get isConnectable(){return r(R)},get positionAbsoluteX(){return r(ue)},get positionAbsoluteY(){return r(U)},get width(){return r(q)},get height(){return r(ne)}})}),s(Ce),Vr(Ce,(xe,ge)=>sa==null?void 0:sa(xe,ge),()=>({nodeId:I,isSelectable:r(A),disabled:!r(_),handleSelector:r(oe),noDragClass:n().noDragClass,nodeClickDistance:e.nodeClickDistance,onNodeMouseDown:n().handleNodeSelection,onDrag:(xe,ge,De,ce)=>{var se;(se=e.onnodedrag)==null||se.call(e,{event:xe,targetNode:De,nodes:ce})},onDragStart:(xe,ge,De,ce)=>{var se;(se=e.onnodedragstart)==null||se.call(e,{event:xe,targetNode:De,nodes:ce})},onDragStop:(xe,ge,De,ce)=>{var se;(se=e.onnodedragstop)==null||se.call(e,{event:xe,targetNode:De,nodes:ce})},store:n()})),ln(Ce,xe=>m(j,xe),()=>r(j)),g(fe,Ce)};V(de,fe=>{r(p)||fe(be)})}g(t,re),at()}var q5=x('<div class="svelte-flow__nodes"></div>');function K5(t,e){nt(e,!0);let n=Re(e,"store",15);const a=typeof ResizeObserver>"u"?null:new ResizeObserver(i=>{const l=new Map;i.forEach(d=>{const f=d.target.getAttribute("data-id");l.set(f,{id:f,nodeElement:d.target,force:!0})}),n().updateNodeInternals(l)});Zo(()=>{a==null||a.disconnect()});var o=q5();$e(o,21,()=>n().visible.nodes.values(),i=>i.id,(i,l)=>{F5(i,{get node(){return r(l)},get resizeObserver(){return a},get nodeClickDistance(){return e.nodeClickDistance},get onnodeclick(){return e.onnodeclick},get onnodepointerenter(){return e.onnodepointerenter},get onnodepointermove(){return e.onnodepointermove},get onnodepointerleave(){return e.onnodepointerleave},get onnodedrag(){return e.onnodedrag},get onnodedragstart(){return e.onnodedragstart},get onnodedragstop(){return e.onnodedragstop},get onnodecontextmenu(){return e.onnodecontextmenu},get store(){return n()},set store(d){n(d)}})}),s(o),g(t,o),at()}var j5=Cr('<svg class="svelte-flow__edge-wrapper"><g><!></g></svg>');function B5(t,e){nt(e,!0);let n=y(()=>e.edge.id),a=y(()=>e.edge.source),o=y(()=>e.edge.target),i=y(()=>e.edge.sourceX),l=y(()=>e.edge.sourceY),d=y(()=>e.edge.targetX),f=y(()=>e.edge.targetY),v=y(()=>e.edge.sourcePosition),p=y(()=>e.edge.targetPosition),b=y(()=>Rr(e.edge.animated,!1)),h=y(()=>Rr(e.edge.selected,!1)),w=y(()=>e.edge.label),k=y(()=>e.edge.labelStyle),C=y(()=>Rr(e.edge.data,()=>({}),!0)),P=y(()=>e.edge.style),Y=y(()=>e.edge.interactionWidth),O=y(()=>Rr(e.edge.type,"default")),Z=y(()=>e.edge.sourceHandle),G=y(()=>e.edge.targetHandle),T=y(()=>e.edge.markerStart),q=y(()=>e.edge.markerEnd),ne=y(()=>e.edge.selectable),oe=y(()=>e.edge.focusable),Q=y(()=>Rr(e.edge.deletable,!0)),ue=y(()=>e.edge.hidden),U=y(()=>e.edge.zIndex),E=y(()=>e.edge.class),I=y(()=>e.edge.ariaLabel);l5(r(n));let _=null,A=y(()=>r(ne)??e.store.elementsSelectable),R=y(()=>r(oe)??e.store.edgesFocusable),te=y(()=>e.store.edgeTypes[r(O)]??rf),F=y(()=>r(T)?`url('#${cs(r(T),e.store.flowId)}')`:void 0),$=y(()=>r(q)?`url('#${cs(r(q),e.store.flowId)}')`:void 0);function ee(ie){var W;const J=e.store.edgeLookup.get(r(n));J&&(r(A)&&e.store.handleEdgeSelection(r(n)),(W=e.onedgeclick)==null||W.call(e,{event:ie,edge:J}))}function L(ie,J){const W=e.store.edgeLookup.get(r(n));W&&J({event:ie,edge:W})}function H(ie){if(!e.store.disableKeyboardA11y&&Ou.includes(ie.key)&&r(A)){const{unselectNodesAndEdges:J,addSelectedEdges:W}=e.store;ie.key==="Escape"?(_==null||_.blur(),J({edges:[e.edge]})):W([r(n)])}}var j=_t(),le=ze(j);{var he=ie=>{var J=j5();let W;var X=c(J);zr(X,()=>({class:["svelte-flow__edge",r(E)],"data-id":r(n),onclick:ee,oncontextmenu:e.onedgecontextmenu?K=>{L(K,e.onedgecontextmenu)}:void 0,onpointerenter:e.onedgepointerenter?K=>{L(K,e.onedgepointerenter)}:void 0,onpointerleave:e.onedgepointerleave?K=>{L(K,e.onedgepointerleave)}:void 0,"aria-label":r(I)===null?void 0:r(I)?r(I):`Edge from ${r(a)} to ${r(o)}`,"aria-describedby":r(R)?`${sf}-${e.store.flowId}`:void 0,role:e.edge.ariaRole??(r(R)?"group":"img"),"aria-roledescription":"edge",onkeydown:r(R)?H:void 0,tabindex:r(R)?0:void 0,...e.edge.domAttributes,[bs]:{animated:r(b),selected:r(h),selectable:r(A)}}));var M=c(X);ba(M,()=>r(te),(K,D)=>{D(K,{get id(){return r(n)},get source(){return r(a)},get target(){return r(o)},get sourceX(){return r(i)},get sourceY(){return r(l)},get targetX(){return r(d)},get targetY(){return r(f)},get sourcePosition(){return r(v)},get targetPosition(){return r(p)},get animated(){return r(b)},get selected(){return r(h)},get label(){return r(w)},get labelStyle(){return r(k)},get data(){return r(C)},get style(){return r(P)},get interactionWidth(){return r(Y)},get selectable(){return r(A)},get deletable(){return r(Q)},get type(){return r(O)},get sourceHandleId(){return r(Z)},get targetHandleId(){return r(G)},get markerStart(){return r(F)},get markerEnd(){return r($)}})}),s(X),ln(X,K=>_=K,()=>_),s(J),N(()=>W=yr(J,"",W,{"z-index":r(U)})),g(ie,J)};V(le,ie=>{r(ue)||ie(he)})}g(t,j),at()}var U5=Cr("<defs></defs>");function W5(t,e){nt(e,!1);const n=Gn();Ic();var a=U5();$e(a,5,()=>n.markers,o=>o.id,(o,i)=>{X5(o,st(()=>r(i)))}),s(a),g(t,a),at()}var G5=Cr('<polyline class="arrow" fill="none" stroke-linecap="round" stroke-linejoin="round" points="-5,-4 0,0 -5,4"></polyline>'),Y5=Cr('<polyline class="arrowclosed" stroke-linecap="round" stroke-linejoin="round" points="-5,-4 0,0 -5,4 -5,-4"></polyline>'),$5=Cr('<marker class="svelte-flow__arrowhead" viewBox="-10 -10 20 20" refX="0" refY="0"><!></marker>');function X5(t,e){nt(e,!0);let n=Re(e,"width",3,12.5),a=Re(e,"height",3,12.5),o=Re(e,"markerUnits",3,"strokeWidth"),i=Re(e,"orient",3,"auto-start-reverse"),l=Re(e,"color",3,"none");var d=$5(),f=c(d);{var v=b=>{var h=G5();let w;N(()=>{Ne(h,"stroke-width",e.strokeWidth),w=yr(h,"",w,{stroke:l()})}),g(b,h)},p=b=>{var h=Y5();let w;N(()=>{Ne(h,"stroke-width",e.strokeWidth),w=yr(h,"",w,{stroke:l(),fill:l()})}),g(b,h)};V(f,b=>{e.type===Bo.Arrow?b(v):e.type===Bo.ArrowClosed&&b(p,1)})}s(d),N(()=>{Ne(d,"id",e.id),Ne(d,"markerWidth",`${n()}`),Ne(d,"markerHeight",`${a()}`),Ne(d,"markerUnits",o()),Ne(d,"orient",i())}),g(t,d),at()}var Z5=x('<div class="svelte-flow__edges"><svg class="svelte-flow__marker"><!></svg> <!></div>');function Q5(t,e){nt(e,!0);let n=Re(e,"store",15);var a=Z5(),o=c(a),i=c(o);W5(i,{}),s(o);var l=u(o,2);$e(l,17,()=>n().visible.edges.values(),d=>d.id,(d,f)=>{B5(d,{get edge(){return r(f)},get onedgeclick(){return e.onedgeclick},get onedgecontextmenu(){return e.onedgecontextmenu},get onedgepointerenter(){return e.onedgepointerenter},get onedgepointerleave(){return e.onedgepointerleave},get store(){return n()},set store(v){n(v)}})}),s(a),g(t,a),at()}var J5=x('<div class="svelte-flow__selection svelte-3lfgml"></div>');function lf(t,e){nt(e,!0);let n=Re(e,"x",3,0),a=Re(e,"y",3,0),o=Re(e,"width",3,0),i=Re(e,"height",3,0),l=Re(e,"isVisible",3,!0);var d=_t(),f=ze(d);{var v=p=>{var b=J5();let h;N(w=>h=yr(b,"",h,w),[()=>({width:typeof o()=="string"?o():pn(o()),height:typeof i()=="string"?i():pn(i()),transform:`translate(${n()}px, ${a()}px)`})]),g(p,b)};V(f,p=>{l()&&p(v)})}g(t,d),at()}var e4=x("<div><!></div>");function t4(t,e){nt(e,!0);let n=me(void 0);Lt(()=>{var b;e.store.disableKeyboardA11y||(b=r(n))==null||b.focus({preventScroll:!0})});let a=y(()=>{if(e.store.selectionRectMode==="nodes"){e.store.nodes;const b=oi(e.store.nodeLookup,{filter:h=>!!h.selected});if(b.width>0&&b.height>0)return b}return null});function o(b){var w;const h=e.store.nodes.filter(k=>k.selected);(w=e.onselectioncontextmenu)==null||w.call(e,{nodes:h,event:b})}function i(b){var w;const h=e.store.nodes.filter(k=>k.selected);(w=e.onselectionclick)==null||w.call(e,{nodes:h,event:b})}function l(b){Object.prototype.hasOwnProperty.call(Yo,b.key)&&(b.preventDefault(),e.store.moveSelectedNodes(Yo[b.key],b.shiftKey?4:1))}var d=_t(),f=ze(d);{var v=b=>{var h=e4();let w;var k=c(h);lf(k,{width:"100%",height:"100%",x:0,y:0}),s(h),Vr(h,(C,P)=>sa==null?void 0:sa(C,P),()=>({disabled:!1,store:e.store,onDrag:(C,P,Y,O)=>{var Z;(Z=e.onnodedrag)==null||Z.call(e,{event:C,targetNode:null,nodes:O})},onDragStart:(C,P,Y,O)=>{var Z;(Z=e.onnodedragstart)==null||Z.call(e,{event:C,targetNode:null,nodes:O})},onDragStop:(C,P,Y,O)=>{var Z;(Z=e.onnodedragstop)==null||Z.call(e,{event:C,targetNode:null,nodes:O})}})),ln(h,C=>m(n,C),()=>r(n)),N(C=>{Pe(h,1,Ve(["svelte-flow__selection-wrapper",e.store.noPanClass]),"svelte-148ck9l"),Ne(h,"role",e.store.disableKeyboardA11y?void 0:"button"),Ne(h,"tabindex",e.store.disableKeyboardA11y?void 0:-1),w=yr(h,"",w,C)},[()=>({width:pn(r(a).width),height:pn(r(a).height),transform:`translate(${r(a).x??""}px, ${r(a).y??""}px)`})]),_e("contextmenu",h,o),_e("click",h,i),_e("keydown",h,function(...C){var P;(P=e.store.disableKeyboardA11y?void 0:l)==null||P.apply(this,C)}),g(b,h)},p=y(()=>e.store.selectionRectMode==="nodes"&&r(a)&&wn(r(a).x)&&wn(r(a).y));V(f,b=>{r(p)&&b(v)})}g(t,d),at()}nr(["contextmenu","click","keydown"]);function r4(t){switch(t){case"ctrl":return 8;case"shift":return 4;case"alt":return 2;case"meta":return 1}}function rr(t,e){let{enabled:n=!0,trigger:a,type:o="keydown"}=e;function i(d){var p;const f=Array.isArray(a)?a:[a],v=[d.metaKey,d.altKey,d.shiftKey,d.ctrlKey].reduce((b,h,w)=>h?b|1<<w:b,0);for(const b of f){const h={preventDefault:!1,enabled:!0,...b},{modifier:w,key:k,callback:C,preventDefault:P,enabled:Y}=h;if(Y){if(d.key!==k)continue;if(w===null||w===!1){if(v!==0)continue}else if(w!==void 0&&((p=w==null?void 0:w[0])==null?void 0:p.length)>0){const Z=Array.isArray(w)?w:[w];let G=!1;for(const T of Z)if((Array.isArray(T)?T:[T]).reduce((ne,oe)=>ne|r4(oe),0)===v){G=!0;break}if(!G)continue}P&&d.preventDefault();const O={node:t,trigger:h,originalEvent:d};t.dispatchEvent(new CustomEvent("shortcut",{detail:O})),C==null||C(O)}}}let l;return n&&(l=Fi(t,o,i)),{update:d=>{const{enabled:f=!0,type:v="keydown"}=d;n&&(!f||o!==v)?l==null||l():!n&&f&&(l=Fi(t,v,i)),n=f,o=v,a=d.trigger},destroy:()=>{l==null||l()}}}function n4(){const t=y(Gn),e=i=>{var v,p;const l=rc(i)?i:r(t).nodeLookup.get(i.id),d=l.parentId?hk(l.position,l.measured,l.parentId,r(t).nodeLookup,r(t).nodeOrigin):l.position,f={...l,position:d,width:((v=l.measured)==null?void 0:v.width)??l.width,height:((p=l.measured)==null?void 0:p.height)??l.height};return ga(f)};function n(i,l,d={replace:!1}){r(t).nodes=on(()=>r(t).nodes).map(f=>{if(f.id===i){const v=typeof l=="function"?l(f):l;return d!=null&&d.replace&&rc(v)?v:{...f,...v}}return f})}function a(i,l,d={replace:!1}){r(t).edges=on(()=>r(t).edges).map(f=>{if(f.id===i){const v=typeof l=="function"?l(f):l;return d.replace&&b5(v)?v:{...f,...v}}return f})}const o=i=>r(t).nodeLookup.get(i);return{zoomIn:r(t).zoomIn,zoomOut:r(t).zoomOut,getInternalNode:o,getNode:i=>{var l;return(l=o(i))==null?void 0:l.internals.userNode},getNodes:i=>i===void 0?r(t).nodes:sc(r(t).nodeLookup,i),getEdge:i=>r(t).edgeLookup.get(i),getEdges:i=>i===void 0?r(t).edges:sc(r(t).edgeLookup,i),setZoom:(i,l)=>{const d=r(t).panZoom;return d?d.scaleTo(i,l):Promise.resolve(!1)},getZoom:()=>r(t).viewport.zoom,setViewport:async(i,l)=>{const d=r(t).viewport;return r(t).panZoom?(await r(t).panZoom.setViewport({x:i.x??d.x,y:i.y??d.y,zoom:i.zoom??d.zoom},l),Promise.resolve(!0)):Promise.resolve(!1)},getViewport:()=>Nc(r(t).viewport),setCenter:async(i,l,d)=>r(t).setCenter(i,l,d),fitView:i=>r(t).fitView(i),fitBounds:async(i,l)=>{if(!r(t).panZoom)return Promise.resolve(!1);const d=Ls(i,r(t).width,r(t).height,r(t).minZoom,r(t).maxZoom,(l==null?void 0:l.padding)??.1);return await r(t).panZoom.setViewport(d,{duration:l==null?void 0:l.duration,ease:l==null?void 0:l.ease,interpolate:l==null?void 0:l.interpolate}),Promise.resolve(!0)},getIntersectingNodes:(i,l=!0,d)=>{const f=Bl(i),v=f?i:e(i);return v?(d||r(t).nodes).filter(p=>{const b=r(t).nodeLookup.get(p.id);if(!b||!f&&p.id===i.id)return!1;const h=ga(b),w=Ba(h,v);return l&&w>0||w>=h.width*h.height||w>=v.width*v.height}):[]},isNodeIntersecting:(i,l,d=!0)=>{const v=Bl(i)?i:e(i);if(!v)return!1;const p=Ba(v,l);return d&&p>0||p>=l.width*l.height||p>=v.width*v.height},deleteElements:async({nodes:i=[],edges:l=[]})=>{var v,p;const{nodes:d,edges:f}=await dk({nodesToRemove:i,edgesToRemove:l,nodes:r(t).nodes,edges:r(t).edges,onBeforeDelete:r(t).onbeforedelete});return d&&(r(t).nodes=on(()=>r(t).nodes).filter(b=>!d.some(({id:h})=>h===b.id))),f&&(r(t).edges=on(()=>r(t).edges).filter(b=>!f.some(({id:h})=>h===b.id))),(d.length>0||f.length>0)&&((p=(v=r(t)).ondelete)==null||p.call(v,{nodes:d,edges:f})),{deletedNodes:d,deletedEdges:f}},screenToFlowPosition:(i,l={snapToGrid:!0})=>{if(!r(t).domNode)return i;const d=l.snapToGrid?r(t).snapGrid:!1,{x:f,y:v,zoom:p}=r(t).viewport,{x:b,y:h}=r(t).domNode.getBoundingClientRect(),w={x:i.x-b,y:i.y-h};return lo(w,[f,v,p],d!==null,d||[1,1])},flowToScreenPosition:i=>{if(!r(t).domNode)return i;const{x:l,y:d,zoom:f}=r(t).viewport,{x:v,y:p}=r(t).domNode.getBoundingClientRect(),b=Wo(i,[l,d,f]);return{x:b.x+v,y:b.y+p}},toObject:()=>structuredClone({nodes:[...r(t).nodes],edges:[...r(t).edges],viewport:{...r(t).viewport}}),updateNode:n,updateNodeData:(i,l,d)=>{var p;const f=(p=r(t).nodeLookup.get(i))==null?void 0:p.internals.userNode;if(!f)return;const v=typeof l=="function"?l(f):l;n(i,b=>({...b,data:d!=null&&d.replace?v:{...b.data,...v}}))},updateEdge:a,getNodesBounds:i=>ik(i,{nodeLookup:r(t).nodeLookup,nodeOrigin:r(t).nodeOrigin}),getHandleConnections:({type:i,id:l,nodeId:d})=>{var f;return Array.from(((f=r(t).connectionLookup.get(`${d}-${i}-${l??null}`))==null?void 0:f.values())??[])}}}function sc(t,e){var a;const n=[];for(const o of e){const i=t.get(o);if(i){const l="internals"in i?(a=i.internals)==null?void 0:a.userNode:i;n.push(l)}}return n}function a4(t,e){nt(e,!0);let n=Re(e,"store",15),a=Re(e,"selectionKey",3,"Shift"),o=Re(e,"multiSelectionKey",19,()=>Go()?"Meta":"Control"),i=Re(e,"deleteKey",3,"Backspace"),l=Re(e,"panActivationKey",3," "),d=Re(e,"zoomActivationKey",19,()=>Go()?"Meta":"Control"),{deleteElements:f}=n4();function v(C){return C!==null&&typeof C=="object"}function p(C){return v(C)?C.modifier||[]:[]}function b(C){return C==null?"":v(C)?C.key:C}function h(C,P){return(Array.isArray(C)?C:[C]).map(O=>{const Z=b(O);return{key:Z,modifier:p(O),enabled:Z!==null,callback:P}})}function w(){n(n().selectionRect=null,!0),n(n().selectionKeyPressed=!1,!0),n(n().multiselectionKeyPressed=!1,!0),n(n().deleteKeyPressed=!1,!0),n(n().panActivationKeyPressed=!1,!0),n(n().zoomActivationKeyPressed=!1,!0)}function k(){const C=n().nodes.filter(Y=>Y.selected),P=n().edges.filter(Y=>Y.selected);f({nodes:C,edges:P})}Sn("blur",Kr,w),Sn("contextmenu",Kr,w),Vr(Kr,(C,P)=>rr==null?void 0:rr(C,P),()=>({trigger:h(a(),()=>n(n().selectionKeyPressed=!0,!0)),type:"keydown"})),Vr(Kr,(C,P)=>rr==null?void 0:rr(C,P),()=>({trigger:h(a(),()=>n(n().selectionKeyPressed=!1,!0)),type:"keyup"})),Vr(Kr,(C,P)=>rr==null?void 0:rr(C,P),()=>({trigger:h(o(),()=>{n(n().multiselectionKeyPressed=!0,!0)}),type:"keydown"})),Vr(Kr,(C,P)=>rr==null?void 0:rr(C,P),()=>({trigger:h(o(),()=>n(n().multiselectionKeyPressed=!1,!0)),type:"keyup"})),Vr(Kr,(C,P)=>rr==null?void 0:rr(C,P),()=>({trigger:h(i(),C=>{!(C.originalEvent.ctrlKey||C.originalEvent.metaKey||C.originalEvent.shiftKey)&&!qu(C.originalEvent)&&(n(n().deleteKeyPressed=!0,!0),k())}),type:"keydown"})),Vr(Kr,(C,P)=>rr==null?void 0:rr(C,P),()=>({trigger:h(i(),()=>n(n().deleteKeyPressed=!1,!0)),type:"keyup"})),Vr(Kr,(C,P)=>rr==null?void 0:rr(C,P),()=>({trigger:h(l(),()=>n(n().panActivationKeyPressed=!0,!0)),type:"keydown"})),Vr(Kr,(C,P)=>rr==null?void 0:rr(C,P),()=>({trigger:h(l(),()=>n(n().panActivationKeyPressed=!1,!0)),type:"keyup"})),Vr(Kr,(C,P)=>rr==null?void 0:rr(C,P),()=>({trigger:h(d(),()=>n(n().zoomActivationKeyPressed=!0,!0)),type:"keydown"})),Vr(Kr,(C,P)=>rr==null?void 0:rr(C,P),()=>({trigger:h(d(),()=>n(n().zoomActivationKeyPressed=!1,!0)),type:"keyup"})),at()}var o4=Cr('<path fill="none" class="svelte-flow__connection-path"></path>'),i4=Cr('<svg class="svelte-flow__connectionline"><g><!></g></svg>');function s4(t,e){nt(e,!0);let n=y(()=>{if(!e.store.connection.inProgress)return"";const l={sourceX:e.store.connection.from.x,sourceY:e.store.connection.from.y,sourcePosition:e.store.connection.fromPosition,targetX:e.store.connection.to.x,targetY:e.store.connection.to.y,targetPosition:e.store.connection.toPosition};switch(e.type){case Mn.Bezier:{const[d]=ju(l);return d}case Mn.Straight:{const[d]=Uu(l);return d}case Mn.Step:case Mn.SmoothStep:{const[d]=Os({...l,borderRadius:e.type===Mn.Step?0:void 0});return d}}});var a=_t(),o=ze(a);{var i=l=>{var d=i4(),f=c(d),v=c(f);{var p=h=>{var w=_t(),k=ze(w);ba(k,()=>e.LineComponent,(C,P)=>{P(C,{})}),g(h,w)},b=h=>{var w=o4();N(()=>{Ne(w,"d",r(n)),yr(w,e.style)}),g(h,w)};V(v,h=>{e.LineComponent?h(p):h(b,-1)})}s(f),s(d),N(h=>{Ne(d,"width",e.store.width),Ne(d,"height",e.store.height),yr(d,e.containerStyle),Pe(f,0,h)},[()=>Ve(["svelte-flow__connection",ak(e.store.connection.isValid)])]),g(l,d)};V(o,l=>{e.store.connection.inProgress&&l(i)})}g(t,a),at()}var l4=x("<div><!></div>");function cf(t,e){nt(e,!0);let n=Re(e,"position",3,"top-right"),a=Je(e,["$$slots","$$events","$$legacy","position","style","class","children"]),o=y(()=>`${n()}`.split("-"));var i=l4();zr(i,d=>({class:d,style:e.style,...a}),[()=>["svelte-flow__panel",e.class,...r(o)]]);var l=c(i);tr(l,()=>e.children??Zr),s(i),g(t,i),at()}var c4=x('<a href="https://svelteflow.dev" target="_blank" rel="noopener noreferrer" aria-label="Svelte Flow attribution">Svelte Flow</a>');function d4(t,e){nt(e,!0);let n=Re(e,"position",3,"bottom-right");var a=_t(),o=ze(a);{var i=l=>{cf(l,{get position(){return n()},class:"svelte-flow__attribution","data-message":"Feel free to remove the attribution or check out how you could support us: https://svelteflow.dev/support-us",children:(d,f)=>{var v=c4();g(d,v)},$$slots:{default:!0}})};V(o,l=>{var d;(d=e.proOptions)!=null&&d.hideAttribution||l(i)})}g(t,a),at()}var u4=x("<div><!></div>");function f4(t,e){nt(e,!0);let n=Re(e,"domNode",15),a=Re(e,"clientWidth",15),o=Re(e,"clientHeight",15),i=y(()=>e.rest.class),l=y(()=>iv(e.rest,["id","class","nodeTypes","edgeTypes","colorMode","isValidConnection","onmove","onmovestart","onmoveend","onflowerror","ondelete","onbeforedelete","onbeforeconnect","onconnect","onconnectstart","onconnectend","onbeforereconnect","onreconnect","onreconnectstart","onreconnectend","onclickconnectstart","onclickconnectend","oninit","onselectionchange","onselectiondragstart","onselectiondrag","onselectiondragstop","onselectionstart","onselectionend","clickConnect","fitView","fitViewOptions","nodeOrigin","nodeDragThreshold","connectionDragThreshold","minZoom","maxZoom","initialViewport","connectionRadius","connectionMode","selectionMode","selectNodesOnDrag","snapGrid","defaultMarkerColor","translateExtent","nodeExtent","onlyRenderVisibleElements","autoPanOnConnect","autoPanOnNodeDrag","colorModeSSR","defaultEdgeOptions","elevateNodesOnSelect","elevateEdgesOnSelect","nodesDraggable","autoPanOnNodeFocus","nodesConnectable","elementsSelectable","nodesFocusable","edgesFocusable","disableKeyboardA11y","noDragClass","noPanClass","noWheelClass","ariaLabelConfig","autoPanSpeed","panOnScrollSpeed","zIndexMode"]));function d(p){p.currentTarget.scrollTo({top:0,left:0,behavior:"auto"}),e.rest.onscroll&&e.rest.onscroll(p)}var f=u4();zr(f,p=>({class:["svelte-flow","svelte-flow__container",r(i),e.colorMode],"data-testid":"svelte-flow__wrapper",role:"application",onscroll:d,...r(l),[no]:p}),[()=>({width:pn(e.width),height:pn(e.height)})],void 0,void 0,"svelte-1ywk9tc");var v=c(f);tr(v,()=>e.children??Zr),s(f),ln(f,p=>n(p),()=>n()),el(f,"clientHeight",o),el(f,"clientWidth",a),g(t,f),at()}var v4=x('<div class="svelte-flow__viewport-back svelte-flow__container"></div> <!> <div class="svelte-flow__edge-labels svelte-flow__container"></div> <!> <!> <!> <div class="svelte-flow__viewport-front svelte-flow__container"></div>',1),g4=x("<!> <!>",1),p4=x("<!> <!> <!> <!> <!>",1);function h4(t,e){nt(e,!0);let n=Re(e,"paneClickDistance",3,1),a=Re(e,"nodeClickDistance",3,1),o=Re(e,"panOnScrollMode",19,()=>ia.Free),i=Re(e,"preventScrolling",3,!0),l=Re(e,"zoomOnScroll",3,!0),d=Re(e,"zoomOnDoubleClick",3,!0),f=Re(e,"zoomOnPinch",3,!0),v=Re(e,"panOnScroll",3,!1),p=Re(e,"panOnScrollSpeed",3,.5),b=Re(e,"panOnDrag",3,!0),h=Re(e,"selectionOnDrag",3,!1),w=Re(e,"connectionLineType",19,()=>Mn.Bezier),k=Re(e,"nodes",31,()=>jt([])),C=Re(e,"edges",31,()=>jt([])),P=Re(e,"viewport",15,void 0),Y=Je(e,["$$slots","$$events","$$legacy","width","height","proOptions","selectionKey","deleteKey","panActivationKey","multiSelectionKey","zoomActivationKey","paneClickDistance","nodeClickDistance","onmovestart","onmoveend","onmove","oninit","onnodeclick","onnodecontextmenu","onnodedrag","onnodedragstart","onnodedragstop","onnodepointerenter","onnodepointermove","onnodepointerleave","onselectionclick","onselectioncontextmenu","onselectionstart","onselectionend","onedgeclick","onedgecontextmenu","onedgepointerenter","onedgepointerleave","onpaneclick","onpanecontextmenu","panOnScrollMode","preventScrolling","zoomOnScroll","zoomOnDoubleClick","zoomOnPinch","panOnScroll","panOnScrollSpeed","panOnDrag","selectionOnDrag","connectionLineComponent","connectionLineStyle","connectionLineContainerStyle","connectionLineType","attributionPosition","children","nodes","edges","viewport"]),O=z5({props:Y,width:e.width,height:e.height,get nodes(){return k()},set nodes(G){k(G)},get edges(){return C()},set edges(G){C(G)},get viewport(){return P()},set viewport(G){P(G)}});const Z=Qo(ds);Z&&Z.setStore&&Z.setStore(O),hs(ds,{provider:!1,getStore(){return O}}),Lt(()=>{var T;const G={nodes:O.selectedNodes,edges:O.selectedEdges};(T=on(()=>e.onselectionchange))==null||T(G);for(const q of O.selectionChangeHandlers.values())q(G)}),Zo(()=>{O.reset()}),f4(t,{get colorMode(){return O.colorMode},get width(){return e.width},get height(){return e.height},get rest(){return Y},get domNode(){return O.domNode},set domNode(G){O.domNode=G},get clientWidth(){return O.width},set clientWidth(G){O.width=G},get clientHeight(){return O.height},set clientHeight(G){O.height=G},children:(G,T)=>{var q=p4(),ne=ze(q);a4(ne,{get selectionKey(){return e.selectionKey},get deleteKey(){return e.deleteKey},get panActivationKey(){return e.panActivationKey},get multiSelectionKey(){return e.multiSelectionKey},get zoomActivationKey(){return e.zoomActivationKey},get store(){return O},set store(E){O=E}});var oe=u(ne,2);T5(oe,{get panOnScrollMode(){return o()},get preventScrolling(){return i()},get zoomOnScroll(){return l()},get zoomOnDoubleClick(){return d()},get zoomOnPinch(){return f()},get panOnScroll(){return v()},get panOnScrollSpeed(){return p()},get panOnDrag(){return b()},get paneClickDistance(){return n()},get selectionOnDrag(){return h()},get onmovestart(){return e.onmovestart},get onmove(){return e.onmove},get onmoveend(){return e.onmoveend},get oninit(){return e.oninit},get store(){return O},set store(E){O=E},children:(E,I)=>{A5(E,{get onpaneclick(){return e.onpaneclick},get onpanecontextmenu(){return e.onpanecontextmenu},get onselectionstart(){return e.onselectionstart},get onselectionend(){return e.onselectionend},get panOnDrag(){return b()},get paneClickDistance(){return n()},get selectionOnDrag(){return h()},get store(){return O},set store(_){O=_},children:(_,A)=>{var R=g4(),te=ze(R);O5(te,{get store(){return O},set store($){O=$},children:($,ee)=>{var L=v4(),H=u(ze(L),2);Q5(H,{get onedgeclick(){return e.onedgeclick},get onedgecontextmenu(){return e.onedgecontextmenu},get onedgepointerenter(){return e.onedgepointerenter},get onedgepointerleave(){return e.onedgepointerleave},get store(){return O},set store(ie){O=ie}});var j=u(H,4);s4(j,{get type(){return w()},get LineComponent(){return e.connectionLineComponent},get containerStyle(){return e.connectionLineContainerStyle},get style(){return e.connectionLineStyle},get store(){return O},set store(ie){O=ie}});var le=u(j,2);K5(le,{get nodeClickDistance(){return a()},get onnodeclick(){return e.onnodeclick},get onnodecontextmenu(){return e.onnodecontextmenu},get onnodepointerenter(){return e.onnodepointerenter},get onnodepointermove(){return e.onnodepointermove},get onnodepointerleave(){return e.onnodepointerleave},get onnodedrag(){return e.onnodedrag},get onnodedragstart(){return e.onnodedragstart},get onnodedragstop(){return e.onnodedragstop},get store(){return O},set store(ie){O=ie}});var he=u(le,2);t4(he,{get onselectionclick(){return e.onselectionclick},get onselectioncontextmenu(){return e.onselectioncontextmenu},get onnodedrag(){return e.onnodedrag},get onnodedragstart(){return e.onnodedragstart},get onnodedragstop(){return e.onnodedragstop},get store(){return O},set store(ie){O=ie}}),Se(2),g($,L)},$$slots:{default:!0}});var F=u(te,2);{let $=y(()=>!!(O.selectionRect&&O.selectionRectMode==="user")),ee=y(()=>{var le;return(le=O.selectionRect)==null?void 0:le.width}),L=y(()=>{var le;return(le=O.selectionRect)==null?void 0:le.height}),H=y(()=>{var le;return(le=O.selectionRect)==null?void 0:le.x}),j=y(()=>{var le;return(le=O.selectionRect)==null?void 0:le.y});lf(F,{get isVisible(){return r($)},get width(){return r(ee)},get height(){return r(L)},get x(){return r(H)},get y(){return r(j)}})}g(_,R)},$$slots:{default:!0}})},$$slots:{default:!0}});var Q=u(oe,2);d4(Q,{get proOptions(){return e.proOptions},get position(){return e.attributionPosition}});var ue=u(Q,2);R5(ue,{get store(){return O}});var U=u(ue,2);tr(U,()=>e.children??Zr),g(G,q)},$$slots:{default:!0}}),at()}var b4=x("<button><!></button>");function mo(t,e){let n=Je(e,["$$slots","$$events","$$legacy","class","bgColor","bgColorHover","color","colorHover","borderColor","onclick","children"]);var a=b4();zr(a,()=>({type:"button",onclick:e.onclick,class:["svelte-flow__controls-button",e.class],...n,[no]:{"--xy-controls-button-background-color-props":e.bgColor,"--xy-controls-button-background-color-hover-props":e.bgColorHover,"--xy-controls-button-color-props":e.color,"--xy-controls-button-color-hover-props":e.colorHover,"--xy-controls-button-border-color-props":e.borderColor}}));var o=c(a);tr(o,()=>e.children??Zr),s(a),g(t,a)}var x4=Cr('<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><path d="M32 18.133H18.133V32h-4.266V18.133H0v-4.266h13.867V0h4.266v13.867H32z"></path></svg>');function m4(t){var e=x4();g(t,e)}var _4=Cr('<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 5"><path d="M0 0h32v4.2H0z"></path></svg>');function y4(t){var e=_4();g(t,e)}var w4=Cr('<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 30"><path d="M3.692 4.63c0-.53.4-.938.939-.938h5.215V0H4.708C2.13 0 0 2.054 0 4.63v5.216h3.692V4.631zM27.354 0h-5.2v3.692h5.17c.53 0 .984.4.984.939v5.215H32V4.631A4.624 4.624 0 0027.354 0zm.954 24.83c0 .532-.4.94-.939.94h-5.215v3.768h5.215c2.577 0 4.631-2.13 4.631-4.707v-5.139h-3.692v5.139zm-23.677.94c-.531 0-.939-.4-.939-.94v-5.138H0v5.139c0 2.577 2.13 4.707 4.708 4.707h5.138V25.77H4.631z"></path></svg>');function k4(t){var e=w4();g(t,e)}var S4=Cr('<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 25 32"><path d="M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0 8 0 4.571 3.429 4.571 7.619v3.048H3.048A3.056 3.056 0 000 13.714v15.238A3.056 3.056 0 003.048 32h18.285a3.056 3.056 0 003.048-3.048V13.714a3.056 3.056 0 00-3.048-3.047zM12.19 24.533a3.056 3.056 0 01-3.047-3.047 3.056 3.056 0 013.047-3.048 3.056 3.056 0 013.048 3.048 3.056 3.056 0 01-3.048 3.047zm4.724-13.866H7.467V7.619c0-2.59 2.133-4.724 4.723-4.724 2.591 0 4.724 2.133 4.724 4.724v3.048z"></path></svg>');function C4(t){var e=S4();g(t,e)}var E4=Cr('<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 25 32"><path d="M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0c-4.114 1.828-1.37 2.133.305 2.438 1.676.305 4.42 2.59 4.42 5.181v3.048H3.047A3.056 3.056 0 000 13.714v15.238A3.056 3.056 0 003.048 32h18.285a3.056 3.056 0 003.048-3.048V13.714a3.056 3.056 0 00-3.048-3.047zM12.19 24.533a3.056 3.056 0 01-3.047-3.047 3.056 3.056 0 013.047-3.048 3.056 3.056 0 013.048 3.048 3.056 3.056 0 01-3.048 3.047z"></path></svg>');function M4(t){var e=E4();g(t,e)}var z4=x("<!> <!>",1),N4=x("<!> <!> <!> <!> <!> <!>",1);function T4(t,e){nt(e,!0);let n=Re(e,"position",3,"bottom-left"),a=Re(e,"orientation",3,"vertical"),o=Re(e,"showZoom",3,!0),i=Re(e,"showFitView",3,!0),l=Re(e,"showLock",3,!0),d=Je(e,["$$slots","$$events","$$legacy","position","orientation","showZoom","showFitView","showLock","style","class","buttonBgColor","buttonBgColorHover","buttonColor","buttonColorHover","buttonBorderColor","fitViewOptions","children","before","after"]),f=y(Gn);const v={bgColor:e.buttonBgColor,bgColorHover:e.buttonBgColorHover,color:e.buttonColor,colorHover:e.buttonColorHover,borderColor:e.buttonBorderColor};let p=y(()=>r(f).nodesDraggable||r(f).nodesConnectable||r(f).elementsSelectable),b=y(()=>r(f).viewport.zoom<=r(f).minZoom),h=y(()=>r(f).viewport.zoom>=r(f).maxZoom),w=y(()=>r(f).ariaLabelConfig),k=y(()=>a()==="horizontal"?"horizontal":"vertical");const C=()=>{r(f).zoomIn()},P=()=>{r(f).zoomOut()},Y=()=>{r(f).fitView(e.fitViewOptions)},O=()=>{let Z=!r(p);r(f).nodesDraggable=Z,r(f).nodesConnectable=Z,r(f).elementsSelectable=Z};{let Z=y(()=>["svelte-flow__controls",r(k),e.class]);cf(t,st({get class(){return r(Z)},get position(){return n()},"data-testid":"svelte-flow__controls",get"aria-label"(){return r(w)["controls.ariaLabel"]},get style(){return e.style}},()=>d,{children:(G,T)=>{var q=N4(),ne=ze(q);{var oe=$=>{var ee=_t(),L=ze(ee);tr(L,()=>e.before),g($,ee)};V(ne,$=>{e.before&&$(oe)})}var Q=u(ne,2);{var ue=$=>{var ee=z4(),L=ze(ee);mo(L,st({onclick:C,class:"svelte-flow__controls-zoomin",get title(){return r(w)["controls.zoomIn.ariaLabel"]},get"aria-label"(){return r(w)["controls.zoomIn.ariaLabel"]},get disabled(){return r(h)}},()=>v,{children:(j,le)=>{m4(j)},$$slots:{default:!0}}));var H=u(L,2);mo(H,st({onclick:P,class:"svelte-flow__controls-zoomout",get title(){return r(w)["controls.zoomOut.ariaLabel"]},get"aria-label"(){return r(w)["controls.zoomOut.ariaLabel"]},get disabled(){return r(b)}},()=>v,{children:(j,le)=>{y4(j)},$$slots:{default:!0}})),g($,ee)};V(Q,$=>{o()&&$(ue)})}var U=u(Q,2);{var E=$=>{mo($,st({class:"svelte-flow__controls-fitview",onclick:Y,get title(){return r(w)["controls.fitView.ariaLabel"]},get"aria-label"(){return r(w)["controls.fitView.ariaLabel"]}},()=>v,{children:(ee,L)=>{k4(ee)},$$slots:{default:!0}}))};V(U,$=>{i()&&$(E)})}var I=u(U,2);{var _=$=>{mo($,st({class:"svelte-flow__controls-interactive",onclick:O,get title(){return r(w)["controls.interactive.ariaLabel"]},get"aria-label"(){return r(w)["controls.interactive.ariaLabel"]}},()=>v,{children:(ee,L)=>{var H=_t(),j=ze(H);{var le=ie=>{M4(ie)},he=ie=>{C4(ie)};V(j,ie=>{r(p)?ie(le):ie(he,-1)})}g(ee,H)},$$slots:{default:!0}}))};V(I,$=>{l()&&$(_)})}var A=u(I,2);{var R=$=>{var ee=_t(),L=ze(ee);tr(L,()=>e.children),g($,ee)};V(A,$=>{e.children&&$(R)})}var te=u(A,2);{var F=$=>{var ee=_t(),L=ze(ee);tr(L,()=>e.after),g($,ee)};V(te,$=>{e.after&&$(F)})}g(G,q)},$$slots:{default:!0}}))}at()}var kn;(function(t){t.Lines="lines",t.Dots="dots",t.Cross="cross"})(kn||(kn={}));var I4=Cr("<circle></circle>");function A4(t,e){var n=I4();N(()=>{Ne(n,"cx",e.radius),Ne(n,"cy",e.radius),Ne(n,"r",e.radius),Pe(n,0,Ve(["svelte-flow__background-pattern","dots",e.class]))}),g(t,n)}var L4=Cr("<path></path>");function O4(t,e){nt(e,!0);var n=L4();N(()=>{Ne(n,"stroke-width",e.lineWidth),Ne(n,"d",`M${e.dimensions[0]/2} 0 V${e.dimensions[1]} M0 ${e.dimensions[1]/2} H${e.dimensions[0]}`),Pe(n,0,Ve(["svelte-flow__background-pattern",e.variant,e.class]))}),g(t,n),at()}const P4={[kn.Dots]:1,[kn.Lines]:1,[kn.Cross]:6};var D4=Cr('<svg data-testid="svelte-flow__background"><pattern patternUnits="userSpaceOnUse"><!></pattern><rect x="0" y="0" width="100%" height="100%"></rect></svg>');function R4(t,e){nt(e,!0);let n=Re(e,"variant",19,()=>kn.Dots),a=Re(e,"gap",3,20),o=Re(e,"lineWidth",3,1),i=y(Gn),l=y(()=>n()===kn.Dots),d=y(()=>n()===kn.Cross),f=y(()=>Array.isArray(a())?a():[a(),a()]),v=y(()=>`background-pattern-${r(i).flowId}-${e.id??""}`),p=y(()=>[r(f)[0]*r(i).viewport.zoom||1,r(f)[1]*r(i).viewport.zoom||1]),b=y(()=>(e.size??P4[n()])*r(i).viewport.zoom),h=y(()=>r(d)?[r(b),r(b)]:r(p)),w=y(()=>r(l)?[r(b)/2,r(b)/2]:[r(h)[0]/2,r(h)[1]/2]);var k=D4();let C;var P=c(k),Y=c(P);{var O=T=>{{let q=y(()=>r(b)/2);A4(T,{get radius(){return r(q)},get class(){return e.patternClass}})}},Z=T=>{O4(T,{get dimensions(){return r(h)},get variant(){return n()},get lineWidth(){return o()},get class(){return e.patternClass}})};V(Y,T=>{r(l)?T(O):T(Z,-1)})}s(P);var G=u(P);s(k),N(()=>{Pe(k,0,Ve(["svelte-flow__background","svelte-flow__container",e.class])),C=yr(k,"",C,{"--xy-background-color-props":e.bgColor,"--xy-background-pattern-color-props":e.patternColor}),Ne(P,"id",r(v)),Ne(P,"x",r(i).viewport.x%r(p)[0]),Ne(P,"y",r(i).viewport.y%r(p)[1]),Ne(P,"width",r(p)[0]),Ne(P,"height",r(p)[1]),Ne(P,"patternTransform",`translate(-${r(w)[0]},-${r(w)[1]})`),Ne(G,"fill",`url(#${r(v)})`)}),g(t,k),at()}const V4={md:{root:"gap-[var(--reddb-spatial-gap-lg)] px-[var(--reddb-spatial-inset-md)] py-[var(--reddb-spatial-inset-sm)]"},sm:{root:"min-h-[var(--reddb-spatial-control-height-md)] gap-[var(--reddb-spatial-gap-md)] px-[var(--reddb-spatial-inset-sm)] py-[var(--reddb-spatial-gap-md)]"}},lc={comfortable:"md",compact:"sm"},H4={true:{root:"cursor-pointer"},false:{root:""}},F4={true:{root:"bg-foreground/10",title:"font-medium text-foreground"},false:{root:""}},q4=Jr({slots:{root:"flex w-full items-center border-b border-muted text-start",leading:"flex shrink-0 items-center",text:"flex min-w-0 flex-col gap-0.5",title:"truncate text-sm font-medium text-foreground",description:"truncate text-xs text-ink-muted",trailing:"ms-auto flex shrink-0 items-center gap-[var(--reddb-spatial-gap-md)]"},variants:{size:V4,interactive:H4,selected:F4},defaultVariants:{size:"md",interactive:!1,selected:!1}});var K4=x("<span><!></span>"),j4=x("<span> </span>"),B4=x("<span> </span>"),U4=x("<!> <!>",1),W4=x("<span><!></span>"),G4=x("<!> <span><!></span> <!>",1);function Y4(t,e){nt(e,!0);const n=Re(e,"selected",3,!1),a=Je(e,["$$slots","$$events","$$legacy","title","description","href","size","density","selected","leading","trailing","children","class"]),o=y(()=>e.href!==void 0?"a":e.onclick?"button":"div"),i=y(()=>r(o)!=="div"),l=y(()=>r(o)==="a"?{href:e.href}:r(o)==="button"?{type:"button"}:{}),d=y(()=>e.size??(e.density!==void 0?lc[e.density]:"md")),f=y(()=>q4({size:r(d),interactive:r(i),selected:n()}));Lt(()=>{e.density!==void 0&&(`${e.density}`,`${lc[e.density]}`,void 0)});var v=_t(),p=ze(v);xs(p,()=>r(o),!1,(b,h)=>{zr(b,q=>({...a,...r(l),class:q,"data-size":r(d),"aria-current":n()&&r(o)==="a"?"true":void 0}),[()=>r(i)?_s({ink:"inherit",selected:n(),class:r(f).root({class:e.class})}):r(f).root({class:e.class})]);var w=G4(),k=ze(w);{var C=q=>{var ne=K4(),oe=c(ne);tr(oe,()=>e.leading),s(ne),N(Q=>Pe(ne,1,Q),[()=>Ve(r(f).leading())]),g(q,ne)};V(k,q=>{e.leading&&q(C)})}var P=u(k,2),Y=c(P);{var O=q=>{var ne=_t(),oe=ze(ne);tr(oe,()=>e.children),g(q,ne)},Z=q=>{var ne=U4(),oe=ze(ne);{var Q=E=>{var I=j4(),_=c(I,!0);s(I),N(A=>{Pe(I,1,A),S(_,e.title)},[()=>Ve(r(f).title())]),g(E,I)};V(oe,E=>{e.title&&E(Q)})}var ue=u(oe,2);{var U=E=>{var I=B4(),_=c(I,!0);s(I),N(A=>{Pe(I,1,A),S(_,e.description)},[()=>Ve(r(f).description())]),g(E,I)};V(ue,E=>{e.description&&E(U)})}g(q,ne)};V(Y,q=>{e.children?q(O):q(Z,-1)})}s(P);var G=u(P,2);{var T=q=>{var ne=W4(),oe=c(ne);tr(oe,()=>e.trailing),s(ne),N(Q=>Pe(ne,1,Q),[()=>Ve(r(f).trailing())]),g(q,ne)};V(G,q=>{e.trailing&&q(T)})}N(q=>Pe(P,1,q),[()=>Ve(r(f).text())]),g(h,w)}),g(t,v),at()}const cc={true:{root:"border-foreground bg-foreground/10 font-medium text-foreground"},false:{root:"border-transparent bg-transparent text-ink-muted"}},$4={true:{root:"pointer-events-none opacity-50"},false:{root:""}},_o=Jr({slots:{root:"inline-flex w-full items-center gap-[var(--reddb-spatial-gap-md)] rounded-s-none rounded-e-md border-s-2 min-h-[var(--reddb-spatial-control-height-md)] px-[var(--reddb-spatial-inset-sm)] text-sm leading-tight focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-focus",icon:"order-first shrink-0",label:"truncate",trailing:"ms-auto shrink-0"},variants:{current:cc,active:{true:cc.true,false:{}},disabled:$4},defaultVariants:{current:!1,disabled:!1}});var X4=x('<span aria-hidden="true"><!></span>'),Z4=x("<span><!></span>"),Q4=x("<span><!></span> <!> <!>",1);function J4(t,e){nt(e,!0);const n=Re(e,"current",3,!1),a=Re(e,"disabled",3,!1),o=Je(e,["$$slots","$$events","$$legacy","label","href","current","active","disabled","icon","trailing","children","class"]),i=y(()=>e.active!==void 0?e.active:n()!==!1),l=y(()=>typeof n()=="string"?n():"page");Lt(()=>{e.active});const d=y(()=>e.href!==void 0?"a":"button"),f=y(()=>r(d)==="a"?{href:a()?void 0:e.href,tabindex:a()?-1:void 0}:{type:"button",disabled:a()});var v=_t(),p=ze(v);xs(p,()=>r(d),!1,(b,h)=>{zr(b,q=>({...o,...r(f),"data-nav-item":!0,class:q,"aria-current":r(i)?r(l):void 0,"aria-disabled":a()?"true":void 0}),[()=>_s({selected:r(i),class:_o({current:r(i),disabled:a()}).root({class:e.class})})]);var w=Q4(),k=ze(w),C=c(k);{var P=q=>{var ne=_t(),oe=ze(ne);tr(oe,()=>e.children),g(q,ne)},Y=q=>{var ne=bt();N(()=>S(ne,e.label??"")),g(q,ne)};V(C,q=>{e.children?q(P):q(Y,-1)})}s(k);var O=u(k,2);{var Z=q=>{var ne=X4(),oe=c(ne);tr(oe,()=>e.icon),s(ne),N(Q=>Pe(ne,1,Q),[()=>Ve(_o().icon())]),g(q,ne)};V(O,q=>{e.icon&&q(Z)})}var G=u(O,2);{var T=q=>{var ne=Z4(),oe=c(ne);tr(oe,()=>e.trailing),s(ne),N(Q=>Pe(ne,1,Q),[()=>Ve(_o().trailing())]),g(q,ne)};V(G,q=>{e.trailing&&q(T)})}N(q=>Pe(k,1,q),[()=>Ve(_o().label())]),g(h,w)}),g(t,v),at()}const dc={tinted:{neutral:"border-transparent bg-muted text-foreground",info:"border-transparent bg-feedback-info-surface text-feedback-info-foreground",success:"border-transparent bg-feedback-success-surface text-feedback-success-foreground",warning:"border-transparent bg-feedback-warning-surface text-feedback-warning-foreground",danger:"border-transparent bg-feedback-danger-surface text-feedback-danger-foreground"},filled:{neutral:"border-transparent bg-foreground text-background",info:"border-transparent bg-feedback-info-foreground text-on-feedback",success:"border-transparent bg-feedback-success-foreground text-on-feedback",warning:"border-transparent bg-feedback-warning-foreground text-on-feedback",danger:"border-transparent bg-feedback-danger-foreground text-on-feedback"},outline:{neutral:"border-muted bg-transparent text-foreground",info:"border-feedback-info-border bg-transparent text-feedback-info-foreground",success:"border-feedback-success-border bg-transparent text-feedback-success-foreground",warning:"border-feedback-warning-border bg-transparent text-feedback-warning-foreground",danger:"border-feedback-danger-border bg-transparent text-feedback-danger-foreground"}},eS="border-transparent bg-primary text-on-primary",tS={neutral:"",info:"",success:"",warning:"",danger:""},rS={tinted:"",filled:"",outline:"",neutral:"",primary:""},nS={sm:"px-2.5 py-0.5 text-xs",md:"px-[var(--reddb-spatial-inset-sm)] py-1 text-sm"},aS=Jr({base:"inline-flex items-center gap-1.5 rounded-full border leading-tight whitespace-nowrap",variants:{tone:tS,variant:rS,size:nS},compoundVariants:[...Object.entries(dc).flatMap(([t,e])=>Object.entries(e).map(([n,a])=>({variant:t,tone:n,class:a}))),...Object.entries(dc.tinted).map(([t,e])=>({variant:"neutral",tone:t,class:e})),{variant:"primary",class:eS}],defaultVariants:{tone:"neutral",variant:"tinted",size:"md"}}),oS=Jr({base:["relative -me-1 inline-flex items-center justify-center rounded-full border border-transparent bg-transparent p-0.5 leading-tight","before:absolute before:left-1/2 before:top-1/2 before:size-[var(--reddb-spatial-control-height-sm)] before:-translate-x-1/2 before:-translate-y-1/2 before:content-['']"].join(" ")});var iS=x('<button type="button" data-pill-dismiss=""><span aria-hidden="true">×</span></button>'),sS=x("<span><!> <!></span>");function Ln(t,e){nt(e,!0);const n=Re(e,"tone",3,"neutral"),a=Re(e,"variant",3,"tinted"),o=Re(e,"size",3,"md"),i=Re(e,"dismissLabel",3,"Remove"),l=Je(e,["$$slots","$$events","$$legacy","tone","variant","size","ondismiss","onDismiss","dismissLabel","class","children"]),d=y(()=>e.ondismiss??e.onDismiss);Lt(()=>{e.onDismiss,a(),a()});var f=sS();zr(f,h=>({...l,class:h,"data-pill":!0,"data-tone":n(),"data-variant":a()}),[()=>aS({tone:n(),variant:a(),size:o(),class:e.class})]);var v=c(f);tr(v,()=>e.children??Zr);var p=u(v,2);{var b=h=>{var w=iS();N(k=>{Pe(w,1,k),Ne(w,"aria-label",i())},[()=>Ve(_s({ink:"inherit",class:oS()}))]),_e("click",w,()=>r(d)()),g(h,w)};V(p,h=>{r(d)&&h(b)})}s(f),g(t,f),at()}nr(["click"]);function lS(t,e){Fr(t,{tone:"neutral",children:(n,a)=>{Se();var o=bt();N(()=>S(o,e.label??e.role)),g(n,o)},$$slots:{default:!0}})}var cS=x('<span class="font-mono text-sm text-ink-muted"> </span>'),dS=x('<span class="text-sm text-ink-muted"> </span>'),uS=x('<span class="flex items-baseline gap-[var(--reddb-spatial-gap-md)]"><span> </span> <!></span> <!>',1),fS=x('<div class="flex flex-col px-[var(--reddb-spatial-inset-md)] pb-[var(--reddb-spatial-inset-md)]"><!></div>'),vS=x('<div class="w-full px-[var(--reddb-spatial-inset-md)] pb-[var(--reddb-spatial-inset-md)]"><!></div>'),gS=x("<div><!> <!> <!></div>");function xn(t,e){let n=Re(e,"wide",3,!1),a=Re(e,"class",3,"");var o=gS(),i=c(o);{let p=y(()=>n()?void 0:e.action);Y4(i,{get trailing(){return r(p)},children:(b,h)=>{var w=uS(),k=ze(w),C=c(k),P=c(C,!0);s(C);var Y=u(C,2);{var O=T=>{var q=cS(),ne=c(q,!0);s(q),N(()=>S(ne,e.hint)),g(T,q)};V(Y,T=>{e.hint&&T(O)})}s(k);var Z=u(k,2);{var G=T=>{var q=dS(),ne=c(q,!0);s(q),N(()=>S(ne,e.description)),g(T,q)};V(Z,T=>{e.description&&T(G)})}N(()=>S(P,e.title)),g(b,w)},$$slots:{default:!0}})}var l=u(i,2);{var d=p=>{var b=fS(),h=c(b);tr(h,()=>e.action),s(b),g(p,b)};V(l,p=>{n()&&e.action&&p(d)})}var f=u(l,2);{var v=p=>{var b=vS(),h=c(b);tr(h,()=>e.below),s(b),g(p,b)};V(f,p=>{e.below&&p(v)})}s(o),N(()=>{Ne(o,"data-wide",n()?"":void 0),Pe(o,1,Ve(a()))}),g(t,o)}var pS=x('<span aria-hidden="true" class="text-ink-muted"><!></span>'),hS=x("<div><!> <!></div>");function yo(t,e){let n=Re(e,"actions",19,()=>e.meta),a=Re(e,"rule",3,!1),o=Re(e,"size",3,"sm"),i=Je(e,["$$slots","$$events","$$legacy","icon","meta","actions","rule","size","class"]);var l=hS(),d=c(l);{var f=p=>{var b=pS(),h=c(b);tr(h,()=>e.icon),s(b),g(p,b)};V(d,p=>{e.icon&&p(f)})}var v=u(d,2);_p(v,st(()=>i,{get actions(){return n()},get rule(){return a()},get size(){return o()},class:"min-w-0 flex-1"})),s(l),N(()=>Pe(l,1,`flex items-center gap-[var(--reddb-spatial-gap-md)] ${e.class??""??""}`)),g(t,l)}var bS=x('<!> <!> <div><div class="stripe svelte-hw5n61"></div> <div class="body svelte-hw5n61"><div class="head svelte-hw5n61"><span class="role svelte-hw5n61"> </span> <span class="dot svelte-hw5n61"></span></div> <div class="label svelte-hw5n61"> </div> <div class="meta svelte-hw5n61"><span class="metric svelte-hw5n61"><span class="n svelte-hw5n61"> </span><span class="u svelte-hw5n61">colls</span></span> <span class="sep svelte-hw5n61">·</span> <span class="metric svelte-hw5n61"><span class="n svelte-hw5n61"> </span><span class="u svelte-hw5n61">entities</span></span></div></div></div>',1);function xS(t,e){nt(e,!0);const n=y(()=>e.data.role==="primary"?"role-primary":e.data.role==="replica"?"role-replica":"role-embedded");var a=bS(),o=ze(a);ha(o,{type:"target",get position(){return Nt.Left},style:"opacity:0;pointer-events:none"});var i=u(o,2);ha(i,{type:"source",get position(){return Nt.Right},style:"opacity:0;pointer-events:none"});var l=u(i,2);let d;var f=u(c(l),2),v=c(f),p=c(v),b=c(p,!0);s(p),Se(2),s(v);var h=u(v,2),w=c(h,!0);s(h);var k=u(h,2),C=c(k),P=c(C),Y=c(P,!0);s(P),Se(),s(C);var O=u(C,4),Z=c(O),G=c(Z,!0);s(Z),Se(),s(O),s(k),s(f),s(l),N(T=>{d=Pe(l,1,`card ${r(n)??""}`,"svelte-hw5n61",d,{selected:e.selected}),S(b,e.data.role),S(w,e.data.label),S(Y,e.data.collections),S(G,T)},[()=>e.data.entities.toLocaleString()]),g(t,a),at()}const Aa={action:"policy:read",resource:{kind:"policy",name:"*"}};function Pn(t){return[t.action,t.resource.kind,t.resource.name,t.resource.tenant??"",t.current_tenant??""].join("")}function mS(t){const e=`${t.kind}:${t.name}`;return t.tenant?`${e} @ ${t.tenant}`:e}function df(t,e){const n=t==null?void 0:t.trim();if(!n||n==="*")return{kind:"resource",name:"*",tenant:e};const a=n.includes(":")?":":n.includes("/")?"/":null;if(!a)return{kind:"resource",name:n,tenant:e};const[o,...i]=n.split(a),l=i.join(a)||"*";return{kind:o||"resource",name:l,tenant:e}}function uf(t){var a;const e=[Aa],n=new Set(e.map(Pn));for(const o of t){const i={action:((a=o.action)==null?void 0:a.trim())||"*",resource:df(o.resource,o.tenant)},l=Pn(i);n.has(l)||(n.add(l),e.push(i))}return e}function _S(t,e){const n=uf(t),a=new Map(e.map(o=>[Pn(o),o]));return n.map(o=>{const i=a.get(Pn(o)),l=t.filter(d=>{var v;const f={action:((v=d.action)==null?void 0:v.trim())||"*",resource:df(d.resource,d.tenant)};return Pn(f)===Pn(o)});return{id:Pn(o),action:o.action,resource:o.resource,resourceLabel:mS(o.resource),allowed:(i==null?void 0:i.allowed)===!0,reason:i==null?void 0:i.reason,effects:[...new Set(l.map(d=>d.effect).filter(d=>!!d))],principals:[...new Set(l.map(d=>d.principal).filter(d=>!!d))],policies:[...new Set(l.map((d,f)=>d.name??d.id??`policy ${f+1}`).filter(d=>!!d))]}})}const ff={name:"server-crash",size:24,node:[["path",{d:"M6 10H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v4a2 2 0 0 1-2 2h-2"}],["path",{d:"M6 14H4a2 2 0 0 0-2 2v4a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-4a2 2 0 0 0-2-2h-2"}],["path",{d:"M6 6h.01"}],["path",{d:"M6 18h.01"}],["path",{d:"m13 6-4 6h6l-4 6"}]]};ff.node;function yS(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return ff}}))}var wS=x('<div class="absolute w-[220px] rounded border border-line-2 bg-bg-1 p-3 shadow-md motion-safe:animate-pulse"><div class="mb-3 flex items-center gap-2"><div></div> <div class="h-3 rounded bg-bg-3"></div></div> <div class="grid grid-cols-2 gap-2"><div class="h-9 rounded border border-line-1 bg-bg-2"></div> <div class="h-9 rounded border border-line-1 bg-bg-2"></div></div></div>'),kS=x('<div class="flex h-[30px] items-center gap-2.5 rounded px-2"><div class="h-1.5 w-1.5 rounded-full bg-bg-2 motion-safe:animate-pulse"></div> <div class="h-3 flex-1 rounded bg-bg-2 motion-safe:animate-pulse"></div> <div class="h-3 rounded bg-bg-2 motion-safe:animate-pulse"></div></div>'),SS=x('<div class="absolute inset-0 overflow-hidden bg-bg-0" aria-busy="true" aria-label="Loading cluster topology"><div class="absolute inset-0 cluster-skeleton-grid svelte-gcvueu"></div> <svg class="absolute inset-0 h-full w-full" aria-hidden="true"><line x1="50%" y1="38%" x2="32%" y2="54%" class="cluster-skeleton-edge motion-safe:animate-pulse svelte-gcvueu"></line><line x1="50%" y1="38%" x2="68%" y2="54%" class="cluster-skeleton-edge motion-safe:animate-pulse svelte-gcvueu"></line></svg> <!> <div class="absolute top-4 left-4 z-10 w-64 rounded border border-line-2 bg-bg-1 p-3 shadow-md"><div class="mb-3 h-3 w-16 rounded bg-bg-2 motion-safe:animate-pulse"></div> <div class="mb-3 grid grid-cols-2 gap-3 border-b border-line-1 pb-3"><div><div class="mb-2 h-3 w-16 rounded bg-bg-2 motion-safe:animate-pulse"></div> <div class="h-6 w-12 rounded bg-bg-2 motion-safe:animate-pulse"></div></div> <div><div class="mb-2 h-3 w-14 rounded bg-bg-2 motion-safe:animate-pulse"></div> <div class="h-6 w-20 rounded bg-bg-2 motion-safe:animate-pulse"></div></div></div> <div class="grid gap-1"></div></div></div>'),CS=x('<div class="p-6"><!></div>'),ES=x('<div class="p-6"><!></div>'),MS=x("<!> <!>",1),zS=x('<button><span></span> <span class="font-mono text-[11px] text-fg-1 flex-1 truncate"> </span> <span class="font-mono text-[10px] text-fg-3"> </span></button>'),NS=x('<div class="grid grid-cols-2 gap-3 mb-3 pb-3 border-b border-line-1"><div><div class="type-label">reachable</div> <div class="font-mono text-fg-0 text-[18px] font-semibold mt-0.5"> <span class="text-fg-3 text-[11px] font-normal ml-1"> </span></div></div> <div><div class="type-label">entities</div> <div class="font-mono text-primary-text text-[18px] font-semibold mt-0.5"> </div></div></div> <div class="grid gap-1"></div>',1),TS=x('<div class="text-[10px] text-fg-3 mt-1"> </div>'),IS=x('<div class="mb-1 rounded border border-line-1 bg-bg-2 p-3"><div class="type-label"> </div> <div> </div> <!></div>'),AS=x('<span class="text-fg-3"> </span>'),LS=x('<span class="text-fg-3">· usage not exposed</span>'),OS=x(' <span class="text-fg-3"> </span>',1),PS=x('<span class="text-fg-3">not sampled</span>'),DS=x('<div class="pt-2 mt-1 border-t border-line-1"></div> <div class="grid grid-cols-[120px_1fr] gap-3 items-baseline"><span class="text-fg-3">host</span> <span class="text-fg-0"> </span></div> <div class="grid grid-cols-[120px_1fr] gap-3 items-baseline"><span class="text-fg-3">process</span> <span class="text-fg-0"> </span></div> <div class="grid grid-cols-[120px_1fr] gap-3 items-baseline"><span class="text-fg-3">connections</span> <span class="text-fg-0"> <span class="text-fg-3"> </span></span></div> <div class="grid grid-cols-[120px_1fr] gap-3 items-baseline"><span class="text-fg-3">collections</span> <span class="text-fg-0"> </span></div> <div class="grid grid-cols-[120px_1fr] gap-3 items-baseline"><span class="text-fg-3">entities</span> <span class="text-primary-text"> </span></div> <div class="grid grid-cols-[120px_1fr] gap-3 items-baseline"><span class="text-fg-3">cross refs</span> <span class="text-fg-0"> </span></div> <div class="grid grid-cols-[120px_1fr] gap-3 items-baseline"><span class="text-fg-3">store memory</span> <span class="text-fg-0"> </span></div> <div class="grid grid-cols-[120px_1fr] gap-3 items-baseline"><span class="text-fg-3">storage</span> <span class="text-fg-0"> </span></div> <div class="grid grid-cols-[120px_1fr] gap-3 items-baseline"><span class="text-fg-3">ram</span> <span class="text-fg-0"> <span class="text-fg-3"> </span></span></div> <div class="grid grid-cols-[120px_1fr] gap-3 items-baseline"><span class="text-fg-3">cpu</span> <span class="text-fg-0"> <!></span></div> <div class="grid grid-cols-[120px_1fr] gap-3 items-baseline"><span class="text-fg-3">throughput</span> <span class="text-fg-0"><!></span></div> <div class="grid grid-cols-[120px_1fr] gap-3 items-baseline"><span class="text-fg-3">avg response</span> <span class="text-fg-0"> </span></div> <div class="grid grid-cols-[120px_1fr] gap-3 items-baseline"><span class="text-fg-3">uptime</span> <span class="text-fg-0"> </span></div>',1),RS=x('<div class="grid grid-cols-[120px_1fr] gap-3 items-baseline"><span class="text-fg-3">commit mark</span> <span class="text-fg-0"> <span class="text-fg-3"> </span></span></div>'),VS=x('<div class="grid grid-cols-[120px_1fr] gap-3 items-baseline"><span class="text-fg-3">resyncs</span> <span class="text-fg-0"> <span class="text-fg-3"> </span></span></div>'),HS=x('<span class="text-amber-400">↻</span>'),FS=x('<div class="flex items-center gap-2 text-[10px]"><span></span> <span class="text-fg-1 flex-1 truncate"> <!></span> <span class="text-fg-3"> </span> <span> </span></div>'),qS=x('<div class="grid gap-1 pl-1"></div>'),KS=x('<div class="grid grid-cols-[120px_1fr] gap-3 items-baseline"><span class="text-fg-3">wal lsn</span> <span class="text-fg-0"> </span></div> <!> <div class="grid grid-cols-[120px_1fr] gap-3 items-baseline"><span class="text-fg-3">archive lag</span> <span class="text-fg-0"> <span class="text-fg-3">records</span></span></div> <!> <div class="grid grid-cols-[120px_1fr] gap-3 items-baseline"><span class="text-fg-3">replicas</span> <span class="text-fg-0"> </span></div> <!>',1),jS=x('<span class="text-fg-3 ml-1"> </span>'),BS=x('<div class="grid grid-cols-[120px_1fr] gap-3 items-baseline"><span class="text-fg-3">lag</span> <span><!> <!></span></div>'),US=x('<div class="grid grid-cols-[120px_1fr] gap-3 items-baseline"><span class="text-fg-3">last error</span> <span class="text-primary-text break-all"> </span></div>'),WS=x('<div class="grid grid-cols-[120px_1fr] gap-3 items-baseline"><span class="text-fg-3">primary</span> <span class="text-fg-0 break-all"> </span></div> <div class="grid grid-cols-[120px_1fr] gap-3 items-baseline"><span class="text-fg-3">applied</span> <span class="text-fg-0"> <span class="text-fg-3"> </span></span></div> <!> <!>',1),GS=x('<div class="pt-2 mt-1 border-t border-line-1"></div> <!>',1),YS=x('you are <span class="text-primary-text"> </span> <span class="text-fg-3"> </span>',1),$S=x('<span class="text-fg-3"> </span>'),XS=x('<span class="text-fg-3">…</span>'),ZS=x('<span class="rounded border border-line-1 px-1.5 py-0.5 text-[10px] text-fg-1"> </span>'),QS=x('<span class="rounded border border-line-1 px-1.5 py-0.5 text-[10px] text-fg-1"> </span>'),JS=x('<span class="rounded border border-line-1 px-1.5 py-0.5 text-[10px] text-fg-1"> </span>'),eC=x('<span class="rounded border border-line-1 px-1.5 py-0.5 text-[10px] text-fg-3" title="reddb did not grant policy:read to this principal">policies · no grant</span>'),tC=x('<div class="grid grid-cols-[120px_1fr] gap-3 items-baseline"><span class="text-fg-3">metalanguage</span> <span class="text-fg-0"><!></span></div> <div class="grid grid-cols-[120px_1fr] gap-3 items-start"><span class="text-fg-3"></span> <span class="flex flex-wrap items-center gap-1.5"><!> <!> <!> <button type="button" class="rounded border border-line-2 bg-bg-2 px-1.5 py-0.5 text-[10px] text-fg-1 hover:border-line-3 hover:text-fg-0">Security →</button></span></div>',1),rC=x('<div class="grid grid-cols-[120px_1fr] gap-3 items-baseline"><span class="text-fg-3">metalanguage</span> <span class="text-fg-3">connect to this node to inspect users · tenants · policies</span></div>'),nC=x('<span class="rounded border border-line-1 px-1.5 py-0.5 text-[10px] text-fg-3"> </span>'),aC=x('<div class="pt-2 mt-1 border-t border-line-1"></div> <div class="grid grid-cols-[120px_1fr] gap-3 items-start"><span class="text-fg-3">not exposed</span> <span class="flex flex-wrap gap-1"></span></div>',1),oC=x('<div class="grid gap-2 font-mono text-[11px]"><!> <div class="grid grid-cols-[120px_1fr] gap-3 items-baseline"><span class="text-fg-3">topology</span> <span><!></span></div> <div class="grid grid-cols-[120px_1fr] gap-3 items-baseline"><span class="text-fg-3">label</span> <span class="text-fg-0"> </span></div> <div class="grid grid-cols-[120px_1fr] gap-3 items-baseline"><span class="text-fg-3">url</span> <code class="text-fg-0 break-all"> </code></div> <div class="grid grid-cols-[120px_1fr] gap-3 items-baseline"><span class="text-fg-3">deployment</span> <span><!></span></div> <div class="grid grid-cols-[120px_1fr] gap-3 items-baseline"><span class="text-fg-3">evidence</span> <span class="text-fg-1"> </span></div> <div class="grid grid-cols-[120px_1fr] gap-3 items-baseline"><span class="text-fg-3">role</span> <span><!></span></div> <div class="grid grid-cols-[120px_1fr] gap-3 items-baseline"><span class="text-fg-3">replicas</span> <span class="text-fg-0"><!></span></div> <!> <!> <div class="pt-2 mt-1 border-t border-line-1"></div> <!> <!></div>'),iC=x('<div class="absolute top-4 right-4 z-10 w-[420px] max-h-[calc(100vh-96px)] overflow-auto"><!></div>'),sC=x('<div class="absolute inset-0"><!></div> <div class="absolute top-4 left-4 z-10 w-64"><!></div> <!>',1);function lC(t,e){nt(e,!0);function n(M){return Kv(M.cluster,M.replication,M.preset.role)}const a={embedded:"embedded · standalone",serverless:"serverless",replicated:"primary / replica",server:"server · standalone",unknown:"unknown"};let o=me(jt([])),i=me(!0),l=me(null);const d=[{id:"primary",x:"50%",y:"38%",role:"primary",label:92},{id:"replica",x:"68%",y:"54%",role:"replica",label:112},{id:"embedded",x:"32%",y:"54%",role:"embedded",label:104}],f=Array.from({length:3},(M,K)=>K),v=new Map,p=new Map,b=6e4,h={cluster:xS},w=y(()=>{const M=Rn.current==="dark";return{ok:M?"#4ade80":"#16a34a",warn:M?"#fbbf24":"#b45309",pattern:M?"#1c2027":"#d4d4d8",labelBg:M?"#0d0f13":"#fafafa",labelStroke:M?"#2a2e36":"#d4d4d8"}});async function k(){const M=Date.now(),K=await Promise.all(kv.map(async D=>{const z=v.get(D.id)??0,B=p.get(D.id)??0;if(z>=2&&M-B<b)return r(o).find(de=>de.id===D.id)??{id:D.id,preset:D,reachable:!1,role:"standalone"};p.set(D.id,M);const re=new Sv(D.url);try{const[de,be,fe]=await Promise.all([St.track(`cluster · ${D.label} stats`,()=>re.stats()),St.track(`cluster · ${D.label} replication`,()=>re.replication()).catch(()=>{}),St.track(`cluster · ${D.label} status`,()=>re.clusterStatus()).catch(()=>{})]);return v.set(D.id,0),{id:D.id,preset:D,reachable:!0,role:(be==null?void 0:be.role)??"standalone",stats:de,replication:be,cluster:fe}}catch{return v.set(D.id,z+1),{id:D.id,preset:D,reachable:!1,role:"standalone"}}}));m(o,K,!0),m(i,!1)}Lt(()=>{if(xr.locked){m(i,!1);return}m(i,!0),k();const M=setInterval(k,5e3);return()=>clearInterval(M)});const C=y(()=>r(o).filter(M=>M.reachable)),P=y(()=>r(C).map(M=>{var D,z;const K=M.role==="primary"?0:M.role==="replica"?1:-1;return{id:M.id,type:"cluster",position:{x:320+K*320,y:200},data:{label:M.preset.label,role:M.role,collections:((D=M.stats)==null?void 0:D.store.collection_count)??0,entities:((z=M.stats)==null?void 0:z.store.total_entities)??0,url:M.preset.url}}})),Y=y(()=>r(C).filter(M=>M.role==="replica").map(M=>{var re,de;const K=r(C).find(be=>be.role==="primary");if(!K)return null;const D=((re=M.replication)==null?void 0:re.last_applied_lsn)!==void 0&&((de=M.replication)==null?void 0:de.last_seen_primary_lsn)!==void 0?M.replication.last_seen_primary_lsn-M.replication.last_applied_lsn:null,z=D===0,B=z?r(w).ok:r(w).warn;return{id:`${K.id}-${M.id}`,source:K.id,target:M.id,type:"smoothstep",animated:!0,style:`stroke:${B};stroke-width:1.5;opacity:0.7`,label:D===null?"":z?"✓ in sync":`lag ${D}`,labelStyle:`fill:${B};font-family:JetBrains Mono Variable;font-size:10px;font-weight:500`,labelBgStyle:`fill:${r(w).labelBg};stroke:${r(w).labelStroke};stroke-width:1`,labelBgPadding:[6,4],labelBgBorderRadius:4}}).filter(M=>M!==null)),O=y(()=>r(o).find(M=>M.id===r(l))),Z=y(()=>r(O)?R(r(O)):null),G=y(()=>r(O)?n(r(O)):"unknown"),T=y(()=>r(O)?j(r(O)):[]),q=y(()=>r(C).reduce((M,K)=>{var D;return M+(((D=K.stats)==null?void 0:D.store.total_entities)??0)},0)),ne=xa(),oe=y(()=>{var M;return!!r(O)&&Be.connected&&!xr.locked&&((M=Be.active)==null?void 0:M.url)===r(O).preset.url});let Q=me(null);Lt(()=>{const M=r(O);if(r(l),!M||!r(oe)){m(Q,null);return}const K=Be.client;if(!K){m(Q,null);return}let D=!1;return(async()=>{const z={};try{const B=await St.track("cluster · whoami",()=>K.whoami());z.username=B.username,z.role=B.role}catch(B){z.error=B.message}try{z.users=(await St.track("cluster · users",()=>K.users())).length}catch{}try{z.tenants=(await St.track("cluster · tenants",()=>K.tenants())).length}catch{}try{const[B]=await St.track("cluster · auth.can policy read",()=>K.authCan([Aa]));if(z.policyAllowed=(B==null?void 0:B.allowed)===!0,z.policyAllowed)try{z.policies=(await St.track("cluster · policies",()=>K.policies())).length}catch{}}catch{z.policyAllowed=!1}D||m(Q,z,!0)})(),()=>{D=!0}});function ue(M){var D,z;const K=jr((z=(D=M.cluster)==null?void 0:D.deployment)==null?void 0:z.shape);return K||(M.preset.id==="embedded"?"embedded":M.preset.id.startsWith("docker-")?"server · docker preset":"server")}function U(M){var z,B,re,de,be;const K=(re=(B=(z=M.cluster)==null?void 0:z.transports)==null?void 0:B.active)==null?void 0:re[0];if(K)return`${K.transport} · ${K.bind_addr}`;const D=(be=(de=M.cluster)==null?void 0:de.storage)==null?void 0:be.remote_backend;return D?`remote backend · ${D}`:M.preset.description}function E(M){switch(n(M)){case"replicated":return"neutral";case"embedded":return"success";case"serverless":return"info";default:return"neutral"}}function I(M){return M==null||!Number.isFinite(M)?"not exposed":M<1e3?`${Math.round(M)} ms`:M<6e4?`${(M/1e3).toFixed(M<1e4?2:1)} s`:`${Math.floor(M/6e4)}m ${Math.round(M%6e4/1e3)}s`}function _(M){return M==null||!Number.isFinite(M)?"not exposed":M<1?`${Math.round(M*1e3)} ms`:M<60?`${M.toFixed(1)}s`:`${Math.floor(M/60)}m ${Math.round(M%60)}s`}function A(M){const K=M.replication;return(K==null?void 0:K.last_applied_lsn)===void 0||K.last_seen_primary_lsn===void 0?null:K.last_seen_primary_lsn-K.last_applied_lsn}function R(M){var z,B,re,de,be,fe,Ce,ke,xe;const K=n(M);if(K==="replicated"){if(M.role==="primary"){const De=((z=M.replication)==null?void 0:z.replicas)??[],ce=Bv(M.replication);return De.length===0?{label:"replication lag",value:"no replicas",tone:"neutral"}:ce===null?{label:"replication lag",value:"not exposed",tone:"neutral"}:{label:"replication lag",value:ce===0?"✓ in sync":_(ce),tone:ce===0?"success":ce<5?"warning":"danger",sub:`${De.length} replica${De.length===1?"":"s"} · worst case`}}const ge=A(M);return{label:"replica lag",value:ge===null?"not exposed":ge===0?"✓ in sync":`${ge.toLocaleString()} lsn`,tone:ge===null?"neutral":ge===0?"success":"warning",sub:(B=M.replication)==null?void 0:B.state}}if(K==="serverless"){const ge=jv(M.cluster);return{label:"boot time",value:I(ge),tone:ge===null?"neutral":ge<1e3?"success":ge<5e3?"info":"warning",sub:(re=M.cluster)!=null&&re.phase?`phase · ${M.cluster.phase}`:void 0}}if(K==="embedded"){const ge=jr((be=(de=M.cluster)==null?void 0:de.storage)==null?void 0:be.db_size_bytes);return{label:"on-disk size",value:ge===void 0?"not exposed":te(ge),tone:ge===void 0?"neutral":"success",sub:`${(((fe=M.stats)==null?void 0:fe.store.total_entities)??0).toLocaleString()} entities`}}const D=jr((ke=(Ce=M.cluster)==null?void 0:Ce.storage)==null?void 0:ke.db_size_bytes);return{label:"entities",value:(((xe=M.stats)==null?void 0:xe.store.total_entities)??0).toLocaleString(),tone:"neutral",sub:D===void 0?void 0:`${te(D)} on disk`}}function te(M){return M===void 0||!Number.isFinite(M)?"not exposed":M>=1024**3?`${(M/1024**3).toFixed(1)} GiB`:M>=1024**2?`${(M/1024**2).toFixed(1)} MiB`:M>=1024?`${(M/1024).toFixed(1)} KiB`:`${M} B`}function F(M,K){return K<=0?"n/a":`${Math.round(M/K*100)}%`}function $(M){const K=Math.max(0,Math.round((Date.now()-M)/1e3));return K>=86400?`${Math.floor(K/86400)}d ${Math.floor(K%86400/3600)}h`:K>=3600?`${Math.floor(K/3600)}h ${Math.floor(K%3600/60)}m`:K>=60?`${Math.floor(K/60)}m ${K%60}s`:`${K}s`}function ee(M){return M===void 0||!Number.isFinite(M)?"not exposed":`${M.toLocaleString(void 0,{maximumFractionDigits:1})}/s`}function L(M){return M===void 0||!Number.isFinite(M)?"not exposed":`${M.toLocaleString(void 0,{maximumFractionDigits:1})} ms`}function H(M){var B,re,de,be,fe,Ce;const K=jr((re=(B=M.cluster)==null?void 0:B.storage)==null?void 0:re.db_size_bytes),D=(be=(de=M.cluster)==null?void 0:de.storage)==null?void 0:be.remote_backend;if(K!==void 0)return D?`${te(K)} · ${D}`:te(K);if(D)return`remote · ${D}`;const z=qv((Ce=(fe=M.cluster)==null?void 0:fe.storage)==null?void 0:Ce.db_size_bytes);return z?`not exposed (${z})`:"not exposed"}function j(M){return Uv(M.cluster).map(K=>K.path.replace(/_/g," "))}var le=_t(),he=ze(le);{var ie=M=>{var K=SS(),D=u(c(K),4);$e(D,17,()=>d,re=>re.id,(re,de)=>{var be=wS(),fe=c(be),Ce=c(fe),ke=u(Ce,2);s(fe),Se(2),s(be),N(xe=>{yr(be,`left: ${r(de).x}; top: ${r(de).y}; transform: translate(-50%, -50%);`),Pe(Ce,1,xe,"svelte-gcvueu"),yr(ke,`width: ${r(de).label}px`)},[()=>Ve(["h-2 w-2 rounded-full",r(de).role==="primary"?"bg-role-primary":r(de).role==="replica"?"bg-role-replica":"bg-role-embedded"].join(" "))]),g(re,be)});var z=u(D,2),B=u(c(z),4);$e(B,20,()=>f,re=>re,(re,de)=>{var be=kS(),fe=u(c(be),4);s(be),N(()=>yr(fe,`width: ${de===0?36:24}px`)),g(re,be)}),s(B),s(z),s(K),g(M,K)},J=M=>{var K=CS(),D=c(K);Hr(D,{get icon(){return Un},title:"Locked",message:"Unlock the secure store to probe configured nodes. Automatic probes are paused until you authenticate this session."}),s(K),g(M,K)},W=M=>{var K=ES(),D=c(K);Hr(D,{get icon(){return yS},title:"No reachable nodes",message:"None of the configured reddb endpoints responded. Start one and the topology will populate automatically.",hint:"docker compose -f docker/compose.yml up -d"}),s(K),g(M,K)},X=M=>{var K=sC(),D=ze(K),z=c(D);h4(z,{get nodes(){return r(P)},get edges(){return r(Y)},get nodeTypes(){return h},fitView:!0,fitViewOptions:{padding:.25,maxZoom:1},proOptions:{hideAttribution:!0},nodesDraggable:!1,nodesConnectable:!1,onnodeclick:fe=>m(l,fe.node.id,!0),children:(fe,Ce)=>{var ke=MS(),xe=ze(ke);R4(xe,{get variant(){return kn.Dots},bgColor:"transparent",get patternColor(){return r(w).pattern},gap:32,size:1});var ge=u(xe,2);T4(ge,{position:"bottom-right"}),g(fe,ke)},$$slots:{default:!0}}),s(D);var B=u(D,2),re=c(B);En(re,{title:"cluster",children:(fe,Ce)=>{var ke=NS(),xe=ze(ke),ge=c(xe),De=u(c(ge),2),ce=c(De,!0),se=u(ce),ve=c(se);s(se),s(De),s(ge);var Ae=u(ge,2),Le=u(c(Ae),2),we=c(Le,!0);s(Le),s(Ae),s(xe);var Ie=u(xe,2);$e(Ie,21,()=>r(C),gr,(Ee,Me)=>{var Te=zS(),Xe=c(Te),Fe=u(Xe,2),Qe=c(Fe,!0);s(Fe);var lt=u(Fe,2),ct=c(lt,!0);s(lt),s(Te),N((Ke,He,Ue)=>{Pe(Te,1,Ke,"svelte-gcvueu"),Pe(Xe,1,He,"svelte-gcvueu"),S(Qe,r(Me).preset.label),S(ct,Ue)},[()=>Ve(["flex items-center gap-2.5 px-2 py-1.5 rounded text-left bg-transparent border-0 cursor-pointer transition-colors",r(l)===r(Me).id?"bg-bg-2":"hover:bg-bg-2"].join(" ")),()=>Ve(["w-1.5 h-1.5 rounded-full shrink-0",r(Me).role==="primary"?"bg-role-primary":r(Me).role==="replica"?"bg-role-replica":"bg-role-embedded"].join(" ")),()=>{var Ke;return((Ke=r(Me).stats)==null?void 0:Ke.store.total_entities.toLocaleString())??0}]),_e("click",Te,()=>m(l,r(Me).id,!0)),g(Ee,Te)}),s(Ie),N(Ee=>{S(ce,r(C).length),S(ve,`of ${r(o).length??""}`),S(we,Ee)},[()=>r(q).toLocaleString()]),g(fe,ke)},$$slots:{default:!0}}),s(B);var de=u(B,2);{var be=fe=>{var Ce=iC(),ke=c(Ce);En(ke,{get title(){return`node · ${r(O).id??""}`},raised:!0,children:(xe,ge)=>{var De=oC(),ce=c(De);{var se=it=>{var dt=IS(),It=c(dt),Bt=c(It,!0);s(It);var or=u(It,2),ir=c(or,!0);s(or);var sr=u(or,2);{var wr=lr=>{var mr=TS(),Er=c(mr,!0);s(mr),N(()=>S(Er,r(Z).sub)),g(lr,mr)};V(sr,lr=>{r(Z).sub&&lr(wr)})}s(dt),N(lr=>{S(Bt,r(Z).label),Pe(or,1,lr,"svelte-gcvueu"),S(ir,r(Z).value)},[()=>Ve(["font-mono text-[22px] font-semibold mt-0.5 leading-none",r(Z).tone==="success"?"text-feedback-success-foreground":r(Z).tone==="warning"?"text-feedback-warning-foreground":r(Z).tone==="danger"?"text-feedback-danger-foreground":"text-fg-0"].join(" "))]),g(it,dt)};V(ce,it=>{r(Z)&&it(se)})}var ve=u(ce,2),Ae=u(c(ve),2),Le=c(Ae);{let it=y(()=>E(r(O)));Fr(Le,{get tone(){return r(it)},children:(dt,It)=>{Se();var Bt=bt();N(()=>S(Bt,a[r(G)])),g(dt,Bt)},$$slots:{default:!0}})}s(Ae),s(ve);var we=u(ve,2),Ie=u(c(we),2),Ee=c(Ie,!0);s(Ie),s(we);var Me=u(we,2),Te=u(c(Me),2),Xe=c(Te,!0);s(Te),s(Me);var Fe=u(Me,2),Qe=u(c(Fe),2),lt=c(Qe);{let it=y(()=>E(r(O)));Fr(lt,{get tone(){return r(it)},children:(dt,It)=>{Se();var Bt=bt();N(or=>S(Bt,or),[()=>ue(r(O))]),g(dt,Bt)},$$slots:{default:!0}})}s(Qe),s(Fe);var ct=u(Fe,2),Ke=u(c(ct),2),He=c(Ke,!0);s(Ke),s(ct);var Ue=u(ct,2),ot=u(c(Ue),2),ae=c(ot);{let it=y(()=>r(O).role==="primary"?"primary":r(O).role==="replica"?"replica":"embedded");lS(ae,{get role(){return r(it)},get label(){return r(O).role}})}s(ot),s(Ue);var tt=u(Ue,2),Ze=u(c(tt),2),We=c(Ze);{var ut=it=>{var dt=bt();N(()=>S(dt,r(O).replication.replica_count??0)),g(it,dt)},Et=it=>{var dt=bt();N(()=>S(dt,`connected to ${r(O).replication.primary_addr??"primary"??""}`)),g(it,dt)},Tt=it=>{var dt=bt("none exposed");g(it,dt)};V(We,it=>{var dt,It;((dt=r(O).replication)==null?void 0:dt.role)==="primary"?it(ut):((It=r(O).replication)==null?void 0:It.role)==="replica"?it(Et,1):it(Tt,-1)})}s(Ze),s(tt);var Mt=u(tt,2);{var Ct=it=>{const dt=y(()=>{var Ft,zt;return jr((zt=(Ft=r(O).cluster)==null?void 0:Ft.system)==null?void 0:zt.total_memory_bytes)??r(O).stats.system.total_memory_bytes}),It=y(()=>{var Ft,zt;return jr((zt=(Ft=r(O).cluster)==null?void 0:Ft.system)==null?void 0:zt.available_memory_bytes)??r(O).stats.system.available_memory_bytes}),Bt=y(()=>{var Ft;return jr((Ft=r(O).cluster)==null?void 0:Ft.throughput)});var or=DS(),ir=u(ze(or),2),sr=u(c(ir),2),wr=c(sr);s(sr),s(ir);var lr=u(ir,2),mr=u(c(lr),2),Er=c(mr);s(mr),s(lr);var Tr=u(lr,2),kr=u(c(Tr),2),Ir=c(kr),ye=u(Ir),Oe=c(ye);s(ye),s(kr),s(Tr);var qe=u(Tr,2),Ye=u(c(qe),2),et=c(Ye,!0);s(Ye),s(qe);var rt=u(qe,2),Ge=u(c(rt),2),yt=c(Ge,!0);s(Ge),s(rt);var ft=u(rt,2),pt=u(c(ft),2),At=c(pt,!0);s(pt),s(ft);var Pt=u(ft,2),er=u(c(Pt),2),ur=c(er,!0);s(er),s(Pt);var Vt=u(Pt,2),Dt=u(c(Vt),2),Gt=c(Dt,!0);s(Dt),s(Vt);var Ut=u(Vt,2),ar=u(c(Ut),2),fr=c(ar),vr=u(fr),Yt=c(vr);s(vr),s(ar),s(Ut);var kt=u(Ut,2),Ht=u(c(kt),2),Wt=c(Ht),cr=u(Wt);{var Qt=Ft=>{var zt=AS(),$t=c(zt);s(zt),N(_r=>S($t,`· ${_r??""}%`),[()=>{var _r,rn;return jr((rn=(_r=r(O).cluster)==null?void 0:_r.system)==null?void 0:rn.cpu_usage)}]),g(Ft,zt)},Mr=y(()=>{var Ft,zt;return jr((zt=(Ft=r(O).cluster)==null?void 0:Ft.system)==null?void 0:zt.cpu_usage)!==void 0}),Rt=Ft=>{var zt=LS();g(Ft,zt)};V(cr,Ft=>{r(Mr)?Ft(Qt):Ft(Rt,-1)})}s(Ht),s(kt);var gt=u(kt,2),ht=u(c(gt),2),dr=c(ht);{var Nr=Ft=>{var zt=OS(),$t=ze(zt),_r=u($t),rn=c(_r);s(_r),N((Tn,ma,di)=>{S($t,`${Tn??""} `),S(rn,`· r ${ma??""} / w ${di??""}`)},[()=>ee(r(Bt).requests_per_second),()=>ee(r(Bt).reads_per_second),()=>ee(r(Bt).writes_per_second)]),g(Ft,zt)},Lr=Ft=>{var zt=PS();g(Ft,zt)};V(dr,Ft=>{r(Bt)?Ft(Nr):Ft(Lr,-1)})}s(ht),s(gt);var Dr=u(gt,2),Jt=u(c(Dr),2),br=c(Jt,!0);s(Jt),s(Dr);var Or=u(Dr,2),$r=u(c(Or),2),tn=c($r,!0);s($r),s(Or),N((Ft,zt,$t,_r,rn,Tn,ma,di,zf)=>{S(wr,`${r(O).stats.system.hostname??""} · ${r(O).stats.system.os??""}/${r(O).stats.system.arch??""}`),S(Er,`pid ${r(O).stats.system.pid??""}`),S(Ir,`${r(O).stats.active_connections??""} active `),S(Oe,`/ ${r(O).stats.idle_connections??""} idle`),S(et,r(O).stats.store.collection_count),S(yt,Ft),S(At,zt),S(ur,$t),S(Gt,_r),S(fr,`${rn??""} used `),S(Yt,`/ ${Tn??""} (${ma??""})`),S(Wt,`${r(O).stats.system.cpu_cores??""} cores `),S(br,di),S(tn,zf)},[()=>r(O).stats.store.total_entities.toLocaleString(),()=>r(O).stats.store.cross_ref_count.toLocaleString(),()=>te(r(O).stats.store.total_memory_bytes),()=>H(r(O)),()=>te(r(dt)-r(It)),()=>te(r(dt)),()=>F(r(dt)-r(It),r(dt)),()=>{var Ft,zt;return L((zt=jr((Ft=r(O).cluster)==null?void 0:Ft.latency))==null?void 0:zt.avg_response_ms)},()=>{var Ft;return((Ft=r(O).cluster)==null?void 0:Ft.uptime_secs)!==void 0?$(Date.now()-r(O).cluster.uptime_secs*1e3):$(r(O).stats.started_at_unix_ms)}]),g(it,or)};V(Mt,it=>{r(O).stats&&it(Ct)})}var xt=u(Mt,2);{var mt=it=>{var dt=GS(),It=u(ze(dt),2);{var Bt=ir=>{var sr=KS(),wr=ze(sr),lr=u(c(wr),2),mr=c(lr,!0);s(lr),s(wr);var Er=u(wr,2);{var Tr=ft=>{var pt=RS(),At=u(c(pt),2),Pt=c(At),er=u(Pt),ur=c(er);s(er),s(At),s(pt),N(()=>{var Vt,Dt;S(Pt,`${r(O).replication.commit_watermark??""} `),S(ur,`· ${((Dt=(Vt=r(O).cluster)==null?void 0:Vt.replication)==null?void 0:Dt.commit_policy)??""??""}`)}),g(ft,pt)};V(Er,ft=>{r(O).replication.commit_watermark!==void 0&&ft(Tr)})}var kr=u(Er,2),Ir=u(c(kr),2),ye=c(Ir);Se(),s(Ir),s(kr);var Oe=u(kr,2);{var qe=ft=>{var pt=VS(),At=u(c(pt),2),Pt=c(At),er=u(Pt),ur=c(er);s(er),s(At),s(pt),N(()=>{S(Pt,`${r(O).replication.full_resync_count??0??""} full `),S(ur,`/ ${r(O).replication.partial_resync_count??0??""} partial`)}),g(ft,pt)};V(Oe,ft=>{((r(O).replication.full_resync_count??0)>0||(r(O).replication.partial_resync_count??0)>0)&&ft(qe)})}var Ye=u(Oe,2),et=u(c(Ye),2),rt=c(et,!0);s(et),s(Ye);var Ge=u(Ye,2);{var yt=ft=>{var pt=qS();$e(pt,21,()=>r(O).replication.replicas,At=>At.id,(At,Pt)=>{var er=FS(),ur=c(er),Vt=u(ur,2),Dt=c(Vt,!0),Gt=u(Dt);{var Ut=kt=>{var Ht=HS();g(kt,Ht)};V(Gt,kt=>{r(Pt).rebootstrapping&&kt(Ut)})}s(Vt);var ar=u(Vt,2),fr=c(ar);s(ar);var vr=u(ar,2),Yt=c(vr,!0);s(vr),s(er),N((kt,Ht)=>{Pe(ur,1,kt,"svelte-gcvueu"),S(Dt,r(Pt).id),S(fr,`${r(Pt).lag_lsn??""} lsn`),Pe(vr,1,Ve(r(Pt).lag_seconds===0?"text-role-replica":"text-fg-0")),S(Yt,Ht)},[()=>Ve(["w-1.5 h-1.5 rounded-full shrink-0",r(Pt).lag_seconds===0?"bg-role-replica":r(Pt).lag_seconds<5?"bg-amber-400":"bg-accent"].join(" ")),()=>r(Pt).lag_seconds===0?"✓ sync":_(r(Pt).lag_seconds)]),g(At,er)}),s(pt),g(ft,pt)};V(Ge,ft=>{var pt;(pt=r(O).replication.replicas)!=null&&pt.length&&ft(yt)})}N(()=>{var ft,pt,At,Pt,er,ur;S(mr,((pt=(ft=r(O).cluster)==null?void 0:ft.wal)==null?void 0:pt.current_lsn)??r(O).replication.wal_lsn??"not exposed"),S(ye,`${((Pt=(At=r(O).cluster)==null?void 0:At.wal)==null?void 0:Pt.archive_lag_records)??"not exposed"??""} `),S(rt,r(O).replication.replica_count??((ur=(er=r(O).cluster)==null?void 0:er.replication)==null?void 0:ur.replica_count)??0)}),g(ir,sr)},or=ir=>{const sr=y(()=>A(r(O)));var wr=WS(),lr=ze(wr),mr=u(c(lr),2),Er=c(mr,!0);s(mr),s(lr);var Tr=u(lr,2),kr=u(c(Tr),2),Ir=c(kr),ye=u(Ir),Oe=c(ye);s(ye),s(kr),s(Tr);var qe=u(Tr,2);{var Ye=Ge=>{var yt=BS(),ft=u(c(yt),2),pt=c(ft);{var At=Vt=>{Fr(Vt,{tone:"success",children:(Dt,Gt)=>{Se();var Ut=bt("in sync");g(Dt,Ut)},$$slots:{default:!0}})},Pt=Vt=>{Fr(Vt,{tone:"warning",children:(Dt,Gt)=>{Se();var Ut=bt();N(ar=>S(Ut,`${ar??""} lsn`),[()=>r(sr).toLocaleString()]),g(Dt,Ut)},$$slots:{default:!0}})};V(pt,Vt=>{r(sr)===0?Vt(At):Vt(Pt,-1)})}var er=u(pt,2);{var ur=Vt=>{var Dt=jS(),Gt=c(Dt,!0);s(Dt),N(()=>S(Gt,r(O).replication.state)),g(Vt,Dt)};V(er,Vt=>{r(O).replication.state&&Vt(ur)})}s(ft),s(yt),g(Ge,yt)};V(qe,Ge=>{r(sr)!==null&&Ge(Ye)})}var et=u(qe,2);{var rt=Ge=>{var yt=US(),ft=u(c(yt),2),pt=c(ft,!0);s(ft),s(yt),N(()=>S(pt,r(O).replication.last_error)),g(Ge,yt)};V(et,Ge=>{r(O).replication.last_error&&Ge(rt)})}N(()=>{S(Er,r(O).replication.primary_addr??r(O).replication.leader??"unknown"),S(Ir,`${r(O).replication.last_applied_lsn??""} `),S(Oe,`/ ${r(O).replication.last_seen_primary_lsn??""}`)}),g(ir,wr)};V(It,ir=>{r(O).replication.role==="primary"?ir(Bt):r(O).replication.role==="replica"&&ir(or,1)})}g(it,dt)};V(xt,it=>{r(O).replication&&it(mt)})}var wt=u(xt,4);{var Ot=it=>{var dt=tC(),It=ze(dt),Bt=u(c(It),2),or=c(Bt);{var ir=et=>{var rt=YS(),Ge=u(ze(rt)),yt=c(Ge,!0);s(Ge);var ft=u(Ge,2),pt=c(ft);s(ft),N(()=>{S(yt,r(Q).username),S(pt,`· ${r(Q).role??""}`)}),g(et,rt)},sr=et=>{var rt=$S(),Ge=c(rt,!0);s(rt),N(()=>S(Ge,r(Q).error)),g(et,rt)},wr=et=>{var rt=XS();g(et,rt)};V(or,et=>{var rt,Ge;(rt=r(Q))!=null&&rt.username?et(ir):(Ge=r(Q))!=null&&Ge.error?et(sr,1):et(wr,-1)})}s(Bt),s(It);var lr=u(It,2),mr=u(c(lr),2),Er=c(mr);{var Tr=et=>{var rt=ZS(),Ge=c(rt);s(rt),N(()=>S(Ge,`${r(Q).users??""} users`)),g(et,rt)};V(Er,et=>{var rt;((rt=r(Q))==null?void 0:rt.users)!==void 0&&et(Tr)})}var kr=u(Er,2);{var Ir=et=>{var rt=QS(),Ge=c(rt);s(rt),N(()=>S(Ge,`${r(Q).tenants??""} tenants`)),g(et,rt)};V(kr,et=>{var rt;((rt=r(Q))==null?void 0:rt.tenants)!==void 0&&et(Ir)})}var ye=u(kr,2);{var Oe=et=>{var rt=JS(),Ge=c(rt);s(rt),N(()=>S(Ge,`${r(Q).policies??""} policies`)),g(et,rt)},qe=et=>{var rt=eC();g(et,rt)};V(ye,et=>{var rt,Ge;(rt=r(Q))!=null&&rt.policyAllowed&&((Ge=r(Q))==null?void 0:Ge.policies)!==void 0?et(Oe):r(Q)&&r(Q).policyAllowed===!1&&et(qe,1)})}var Ye=u(ye,2);s(mr),s(lr),_e("click",Ye,et=>ne.go({view:"security"},et)),g(it,dt)},Zt=it=>{var dt=rC();g(it,dt)};V(wt,it=>{r(oe)?it(Ot):it(Zt,-1)})}var pr=u(wt,2);{var hr=it=>{var dt=aC(),It=u(ze(dt),2),Bt=u(c(It),2);$e(Bt,21,()=>r(T),gr,(or,ir)=>{var sr=nC(),wr=c(sr,!0);s(sr),N(()=>S(wr,r(ir))),g(or,sr)}),s(Bt),s(It),g(it,dt)};V(pr,it=>{r(T).length&&it(hr)})}s(De),N(it=>{S(Ee,r(O).preset.label),S(Xe,r(O).preset.url),S(He,it)},[()=>U(r(O))]),g(xe,De)},$$slots:{default:!0}}),s(Ce),g(fe,Ce)};V(de,fe=>{r(O)&&fe(be)})}g(M,K)};V(he,M=>{r(i)?M(ie):xr.locked?M(J,1):r(C).length===0?M(W,2):M(X,-1)})}g(t,le),at()}nr(["click"]);const vf={name:"corner-down-left",size:24,node:[["path",{d:"M20 4v7a4 4 0 0 1-4 4H4"}],["path",{d:"m9 10-5 5 5 5"}]]};vf.node;function cC(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return vf}}))}var dC=x('<button type="button" class="rounded-full border border-line-2 bg-bg-1 px-3 py-1.5 text-[11px] text-fg-2 hover:border-line-3 hover:text-fg-0 disabled:cursor-not-allowed disabled:opacity-40"> </button>'),uC=x('<div class="flex flex-col items-center gap-4 py-16 text-center"><div class="flex size-12 items-center justify-center rounded-full border border-line-2 bg-bg-1"><!></div> <div><div class="font-mono text-[15px] text-fg-0">Ask your database</div> <div class="mt-1 text-[12px] text-fg-3">Grounded answers with citations to the rows, docs, and vectors behind them.</div></div> <div class="flex flex-wrap justify-center gap-1.5"></div></div>'),fC=x('<div class="flex justify-end"><div class="max-w-[85%] rounded-lg rounded-br-sm border border-line-2 bg-bg-2 px-3 py-2 font-mono text-[12px] text-fg-0"> </div></div>'),vC=x('<div class="flex items-center gap-2 text-[12px] text-fg-3"><!> thinking…</div>'),gC=x('<div class="flex items-start gap-2 rounded-lg border border-accent/30 bg-accent/5 px-3 py-2 text-[12px] text-fg-1"><!> <span> </span></div>'),pC=x('<button type="button" class="mx-0.5 inline-flex h-4 min-w-4 items-center justify-center rounded bg-accent/15 px-1 align-super text-[9px] font-semibold text-primary-text hover:bg-accent/25"> </button>'),hC=x('<button type="button" class="rounded border border-line-1 px-1.5 py-0.5 hover:border-line-3 hover:text-fg-1"> </button>'),bC=x('<span class="font-mono"> </span>'),xC=x("<span>cached</span>"),mC=x('<span class="font-mono"> </span>'),_C=x('<div class="text-[13px] leading-relaxed text-fg-1"></div> <div class="flex flex-wrap items-center gap-1.5 text-[10px] text-fg-3"><!> <!> <!> <!> <!></div>',1),yC=x('<div class="flex flex-col gap-1.5"><!></div>'),wC=x('<div class="flex h-full flex-col"><div class="flex-1 overflow-auto"><div><!> <!></div></div> <div class="border-t border-line-1 bg-bg-0/80 p-3 backdrop-blur"><div><textarea rows="1" class="max-h-32 min-h-9 flex-1 resize-none rounded-lg border border-line-2 bg-bg-1 px-3 py-2 font-mono text-[12px] text-fg-0 placeholder:text-fg-3 focus:border-line-3 focus:outline-none disabled:opacity-50"></textarea> <button type="button" class="inline-flex h-9 items-center gap-1.5 rounded-lg bg-accent px-3 text-[12px] font-medium text-white hover:bg-accent/90 disabled:cursor-not-allowed disabled:opacity-40"><!> Ask</button></div></div></div>'),kC=x('<span class="font-mono text-[10px] text-fg-2"> <span class="text-fg-3"> </span></span>'),SC=x('<span class="ml-auto font-mono text-[10px] text-fg-3"> </span>'),CC=x('<div><div class="mb-1.5 flex items-center gap-2"><span class="inline-flex size-4 items-center justify-center rounded bg-accent/15 text-[9px] font-semibold text-primary-text"> </span> <!> <!> <!></div> <pre class="max-h-48 overflow-auto whitespace-pre-wrap break-words font-mono text-[10px] leading-relaxed text-fg-1"> </pre></div>'),EC=x('<div class="flex items-center justify-between border-b border-line-1 px-4 py-2.5"><span class="type-label"> </span> <span class="font-mono text-[10px] text-fg-3"> </span></div> <div class="flex-1 overflow-auto p-3"><div class="grid gap-2"></div></div>',1),MC=x('<div class="flex h-full items-center justify-center font-mono text-[12px] text-fg-3">no grounding to show</div>'),zC=x('<div class="flex h-full flex-col overflow-hidden bg-bg-1"><!></div>'),NC=x('<div class="p-6"><!></div>'),TC=x('<div class="p-6"><!></div>'),IC=x('<div class="grid h-full grid-cols-[minmax(340px,42%)_1fr] overflow-hidden"><div class="min-h-0 border-r border-line-1"><!></div> <div class="min-h-0"><!></div></div>'),AC=x('<div class="h-full overflow-hidden bg-bg-0 text-fg-1"><!></div>');function LC(t,e){nt(e,!0);const n=(E,I=Zr)=>{var _=wC(),A=c(_),R=c(A),te=c(R);{var F=he=>{var ie=uC(),J=c(ie),W=c(J);Eo(W,{class:"size-5 text-primary-text"}),s(J);var X=u(J,4);$e(X,21,()=>C,gr,(M,K)=>{var D=dC(),z=c(D,!0);s(D),N(()=>{D.disabled=!r(p)||r(b),S(z,r(K))}),_e("click",D,()=>{m(i,r(K),!0),r(h)&&P()}),g(M,D)}),s(X),s(ie),g(he,ie)};V(te,he=>{r(o).length===0&&he(F)})}var $=u(te,2);$e($,19,()=>r(o),he=>he.id,(he,ie,J)=>{var W=_t(),X=ze(W);{var M=D=>{var z=fC(),B=c(z),re=c(B,!0);s(B),s(z),N(()=>S(re,r(ie).text)),g(D,z)},K=D=>{var z=yC(),B=c(z);{var re=fe=>{var Ce=vC(),ke=c(Ce);Eo(ke,{class:"size-3.5 animate-pulse text-primary-text"}),Se(),s(Ce),g(fe,Ce)},de=fe=>{var Ce=gC(),ke=c(Ce);zc(ke,{class:"mt-0.5 size-3.5 shrink-0 text-primary-text"});var xe=u(ke,2),ge=c(xe,!0);s(xe),s(Ce),N(De=>S(ge,De),[()=>r(ie).error.includes("404")||r(ie).error.includes("route not found")?"This reddb has no AI endpoint (/ai/ask). Configure a provider to enable Ask.":r(ie).error]),g(fe,Ce)},be=fe=>{var Ce=_C(),ke=ze(Ce);$e(ke,21,()=>Wv(r(ie).response.answer),gr,(Me,Te)=>{var Xe=_t(),Fe=ze(Xe);{var Qe=ct=>{var Ke=bt();N(()=>S(Ke,r(Te).value)),g(ct,Ke)},lt=ct=>{var Ke=pC(),He=c(Ke,!0);s(Ke),N(()=>{Ne(Ke,"title",`Jump to source ${r(Te).marker??""}`),S(He,r(Te).marker)}),_e("click",Ke,()=>O(r(J),r(Te).marker)),g(ct,Ke)};V(Fe,ct=>{r(Te).type==="text"?ct(Qe):ct(lt,-1)})}g(Me,Xe)}),s(ke);var xe=u(ke,2),ge=c(xe);{var De=Me=>{Fr(Me,{tone:"warning",children:(Te,Xe)=>{Se();var Fe=bt("unverified citations");g(Te,Fe)},$$slots:{default:!0}})};V(ge,Me=>{r(ie).response.validation&&!r(ie).response.validation.ok&&Me(De)})}var ce=u(ge,2);{var se=Me=>{var Te=hC(),Xe=c(Te);s(Te),N(()=>S(Xe,`${r(ie).response.sources_flat.length??""} source${r(ie).response.sources_flat.length===1?"":"s"}`)),_e("click",Te,()=>{m(d,r(J),!0),m(f,null)}),g(Me,Te)};V(ce,Me=>{var Te;(Te=r(ie).response.sources_flat)!=null&&Te.length&&Me(se)})}var ve=u(ce,2);{var Ae=Me=>{var Te=bC(),Xe=c(Te);s(Te),N(()=>S(Xe,`${r(ie).response.provider??""}${r(ie).response.model?`·${r(ie).response.model}`:""}`)),g(Me,Te)};V(ve,Me=>{r(ie).response.provider&&Me(Ae)})}var Le=u(ve,2);{var we=Me=>{var Te=xC();g(Me,Te)};V(Le,Me=>{r(ie).response.cache_hit&&Me(we)})}var Ie=u(Le,2);{var Ee=Me=>{var Te=mC(),Xe=c(Te,!0);s(Te),N(Fe=>S(Xe,Fe),[()=>G(r(ie).response.cost_usd)]),g(Me,Te)};V(Ie,Me=>{r(ie).response.cost_usd!==void 0&&Me(Ee)})}s(xe),g(fe,Ce)};V(B,fe=>{r(ie).pending?fe(re):r(ie).error?fe(de,1):r(ie).response&&fe(be,2)})}s(z),g(D,z)};V(X,D=>{r(ie).role==="user"?D(M):D(K,-1)})}g(he,W)}),s(R),s(A);var ee=u(A,2),L=c(ee),H=c(L);Da(H);var j=u(H,2),le=c(j);cC(le,{class:"size-3.5"}),Se(),s(j),s(L),s(ee),s(_),N((he,ie)=>{Pe(R,1,he),Pe(L,1,ie),Ne(H,"placeholder",r(p)?"Ask anything about this database…":"Connect to ask"),H.disabled=!r(p)||r(b),j.disabled=!r(h)},[()=>Ve(["mx-auto flex flex-col gap-4 p-4",I()?"max-w-none":"max-w-2xl"].join(" ")),()=>Ve(["mx-auto flex items-end gap-2",I()?"max-w-none":"max-w-2xl"].join(" "))]),_e("keydown",H,Y),Sr(H,()=>r(i),he=>m(i,he)),_e("click",j,P),g(E,_)},a=E=>{var I=zC(),_=c(I);{var A=te=>{const F=y(()=>r(k).response);var $=EC(),ee=ze($),L=c(ee),H=c(L);s(L);var j=u(L,2),le=c(j);s(j),s(ee);var he=u(ee,2),ie=c(he);$e(ie,23,()=>r(F).sources_flat,(J,W)=>J.urn+W,(J,W,X)=>{const M=y(()=>Gv(r(W).urn));var K=CC(),D=c(K),z=c(D),B=c(z,!0);s(z);var re=u(z,2);{let ge=y(()=>T[r(W).kind]??"neutral");Fr(re,{get tone(){return r(ge)},children:(De,ce)=>{Se();var se=bt();N(()=>S(se,r(W).kind)),g(De,se)},$$slots:{default:!0}})}var de=u(re,2);{var be=ge=>{var De=kC(),ce=c(De,!0),se=u(ce),ve=c(se);s(se),s(De),N(()=>{S(ce,r(M).collection),S(ve,`/${r(M).id??""}`)}),g(ge,De)};V(de,ge=>{r(M)&&ge(be)})}var fe=u(de,2);{var Ce=ge=>{var De=SC(),ce=c(De);s(De),N(se=>S(ce,`score ${se??""}`),[()=>r(W).score.toFixed(2)]),g(ge,De)};V(fe,ge=>{r(W).score!==void 0&&ge(Ce)})}s(D);var ke=u(D,2),xe=c(ke,!0);s(ke),s(K),N((ge,De)=>{Pe(K,1,ge),S(B,r(X)+1),S(xe,De)},[()=>Ve(["rounded border bg-bg-0 p-2.5 transition-colors",r(f)===r(X)+1?"border-accent":"border-line-1"].join(" ")),()=>Z(r(W).content)]),g(J,K)}),s(ie),s(he),N(()=>{S(H,`grounding · ${r(F).sources_flat.length??""} source${r(F).sources_flat.length===1?"":"s"}`),S(le,`${r(F).provider??""??""}${r(F).model?` · ${r(F).model}`:""}`)}),g(te,$)},R=te=>{var F=MC();g(te,F)};V(_,te=>{var F;(F=r(k))!=null&&F.response?te(A):te(R,-1)})}s(I),g(E,I)};let o=me(jt([])),i=me(""),l=me(!1),d=me(null),f=me(null),v=0;const p=y(()=>Be.connected),b=y(()=>xr.locked),h=y(()=>r(p)&&!r(b)&&!r(l)&&r(i).trim().length>0),w=y(()=>r(o).some(E=>{var I,_;return E.role==="assistant"&&(((_=(I=E.response)==null?void 0:I.sources_flat)==null?void 0:_.length)??0)>0})),k=y(()=>r(d)!==null?r(o)[r(d)]:[...r(o)].reverse().find(E=>{var I,_;return(((_=(I=E.response)==null?void 0:I.sources_flat)==null?void 0:_.length)??0)>0})),C=["What changed in the last hour?","Which collections hold the most rows?","Summarize the most recent errors."];async function P(){var R;const E=r(i).trim(),I=Be.client;if(!E||!I||r(l))return;m(i,"");const _={id:v++,role:"user",text:E},A={id:v++,role:"assistant",text:"",pending:!0};m(o,[...r(o),_,A],!0),m(l,!0);try{const te=await St.track("ask",()=>I.ask(E)),F=r(o).findIndex($=>$.id===A.id);F!==-1&&(r(o)[F]={...A,pending:!1,text:te.answer,response:te},(((R=te.sources_flat)==null?void 0:R.length)??0)>0&&m(d,F,!0))}catch(te){const F=r(o).findIndex($=>$.id===A.id);F!==-1&&(r(o)[F]={...A,pending:!1,error:te.message})}finally{m(l,!1)}}function Y(E){E.key==="Enter"&&!E.shiftKey&&(E.preventDefault(),r(h)&&P())}function O(E,I){m(d,E,!0),m(f,I,!0)}function Z(E){try{return JSON.stringify(JSON.parse(E),null,2)}catch{return E}}function G(E){return E===void 0?"":E<.01?`$${E.toFixed(4)}`:`$${E.toFixed(2)}`}const T={table:"info",document:"success",vector:"neutral",graph_node:"warning",graph_edge:"warning",kv:"neutral"};var q=AC(),ne=c(q);{var oe=E=>{var I=NC(),_=c(I);Hr(_,{get icon(){return Un},title:"Locked",message:"Unlock the secure store to ask."}),s(I),g(E,I)},Q=E=>{var I=TC(),_=c(I);Hr(_,{get icon(){return Eo},title:"Not connected",message:"Connect to a reddb instance to ask grounded questions."}),s(I),g(E,I)},ue=E=>{var I=IC(),_=c(I),A=c(_);n(A,()=>!0),s(_);var R=u(_,2),te=c(R);a(te),s(R),s(I),g(E,I)},U=E=>{n(E,()=>!1)};V(ne,E=>{r(b)?E(oe):r(p)?r(w)?E(ue,2):E(U,-1):E(Q,1)})}s(q),g(t,q),at()}nr(["click","keydown"]);var OC=x('<div class="type-label mb-1.5"> </div>'),PC=x('<p class="type-caption m-0 mt-1.5"> </p>'),DC=x('<div class="flex items-center gap-2 shrink-0"><!></div>'),RC=x('<header class="flex items-end justify-between gap-4 pb-4 mb-4 border-b border-line-1"><div class="min-w-0"><!> <div class="flex items-baseline gap-3 flex-wrap"><h1 class="type-h1 m-0"> </h1> <!></div> <!></div> <!></header>');function La(t,e){var n=RC(),a=c(n),o=c(a);{var i=k=>{var C=OC(),P=c(C,!0);s(C),N(()=>S(P,e.eyebrow)),g(k,C)};V(o,k=>{e.eyebrow&&k(i)})}var l=u(o,2),d=c(l),f=c(d,!0);s(d);var v=u(d,2);tr(v,()=>e.children??Zr),s(l);var p=u(l,2);{var b=k=>{var C=PC(),P=c(C,!0);s(C),N(()=>S(P,e.subtitle)),g(k,C)};V(p,k=>{e.subtitle&&k(b)})}s(a);var h=u(a,2);{var w=k=>{var C=DC(),P=c(C);tr(P,()=>e.actions),s(C),g(k,C)};V(h,k=>{e.actions&&k(w)})}s(n),N(()=>S(f,e.title)),g(t,n)}const gf={name:"building-complex",size:24,node:[["path",{d:"M10 12h4"}],["path",{d:"M10 8h4"}],["path",{d:"M14 21v-3a2 2 0 0 0-4 0v3"}],["path",{d:"M6 10H4a2 2 0 0 0-2 2v7a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V9a2 2 0 0 0-2-2h-2"}],["path",{d:"M6 21V5a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v16"}]],aliases:["building-2"]};gf.node;function VC(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return gf}}))}const pf={name:"scroll-text",size:24,node:[["path",{d:"M15 12h-5"}],["path",{d:"M15 8h-5"}],["path",{d:"M19 17V5a2 2 0 0 0-2-2H4"}],["path",{d:"M8 21h12a2 2 0 0 0 2-2v-1a1 1 0 0 0-1-1H11a1 1 0 0 0-1 1v1a2 2 0 1 1-4 0V5a2 2 0 1 0-4 0v2a1 1 0 0 0 1 1h3"}]]};pf.node;function HC(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return pf}}))}const hf={name:"shield-alert",size:24,node:[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"}],["path",{d:"M12 8v4"}],["path",{d:"M12 16h.01"}]]};hf.node;function ka(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return hf}}))}const bf={name:"users",size:24,node:[["path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2"}],["path",{d:"M16 3.128a4 4 0 0 1 0 7.744"}],["path",{d:"M22 21v-2a4 4 0 0 0-3-3.87"}],["circle",{cx:"9",cy:"7",r:"4"}]]};bf.node;function FC(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return bf}}))}const xf={name:"circle-x",size:24,node:[["circle",{cx:"12",cy:"12",r:"10"}],["path",{d:"m15 9-6 6"}],["path",{d:"m9 9 6 6"}]],aliases:["x-circle"]};xf.node;function qC(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return xf}}))}var KC=x('<button type="button" class="inline-flex h-7 items-center gap-1.5 rounded-md border border-line-2 bg-bg-2 px-2.5 text-[11px] font-mono text-fg-1 hover:border-line-3 hover:text-fg-0 disabled:cursor-not-allowed disabled:opacity-40"><!> refresh</button>'),jC=x('<div class="text-[12px] font-mono text-warn break-words"> </div>'),BC=x('<span class="text-fg-3">note</span> <span class="text-fg-1"> </span>',1),UC=x('<div class="grid grid-cols-[110px_1fr] gap-x-3 gap-y-2 text-[12px] font-mono"><span class="text-fg-3">authenticated</span> <span><!></span> <span class="text-fg-3">username</span> <span class="text-fg-0"> </span> <span class="text-fg-3">role</span> <span class="text-primary-text"> </span> <!></div>'),WC=x('<div class="text-[12px] font-mono text-fg-3">Loading session…</div>'),GC=x('<div class="mb-2 inline-flex items-center gap-1.5 rounded border border-warn/40 bg-bg-0 px-2 py-1 text-[11px] font-mono text-warn"><!> tenants endpoint denied or unavailable</div> <pre class="whitespace-pre-wrap break-words text-[12px] font-mono text-fg-3"> </pre>',1),YC=x('<div class="flex items-center gap-2 text-[12px] font-mono text-fg-3"><!> <span>No tenants returned for this principal.</span></div>'),$C=x('<div class="rounded border border-line-1 bg-bg-0 px-2 py-1.5"><div class="flex items-center gap-2"><span class="text-fg-0"> </span> <!></div> <div class="mt-1 text-fg-3"> <!></div></div>'),XC=x('<div class="grid gap-1 text-[12px] font-mono"></div>'),ZC=x('<div class="mb-2 inline-flex items-center gap-1.5 rounded border border-warn/40 bg-bg-0 px-2 py-1 text-[11px] font-mono text-warn"><!> policies endpoint denied or unavailable</div> <pre class="whitespace-pre-wrap break-words text-[12px] font-mono text-fg-3"> </pre>',1),QC=x('<div class="flex items-center gap-2 text-[12px] font-mono text-fg-3"><!> <span>No policies returned for this principal.</span></div>'),JC=x('<div class="rounded border border-line-1 bg-bg-0 px-2 py-1.5"><div class="flex items-center gap-2"><span class="text-fg-0"> </span> <!></div> <div class="mt-1 text-fg-3"> <!></div></div>'),eE=x('<div class="text-[11px] text-fg-3"> </div>'),tE=x('<div class="grid gap-1 text-[12px] font-mono"><!> <!></div>'),rE=x('<div class="mb-3 inline-flex items-center gap-1.5 rounded border border-warn/40 bg-bg-0 px-2 py-1 text-[11px] font-mono text-warn"><!> users endpoint denied or unavailable</div> <pre class="whitespace-pre-wrap break-words text-[12px] font-mono text-fg-3"> </pre>',1),nE=x('<div class="flex items-center gap-2 text-[12px] font-mono text-fg-3"><!> <span>No users returned for this principal.</span></div>'),aE=x('<span class="text-fg-3">-</span>'),oE=x('<tr class="border-b border-line-1/60 hover:bg-bg-1/40"><td class="px-2 py-1 text-fg-0"> </td><td class="px-2 py-1 text-primary-text"> </td><td class="px-2 py-1"><!></td><td class="px-2 py-1 text-fg-2"> </td><td class="px-2 py-1 text-fg-2"> </td></tr>'),iE=x('<div class="overflow-auto"><table class="w-full border-collapse text-[12px] font-mono"><thead class="sticky top-0 bg-bg-1"><tr class="border-b border-line-1 text-fg-3"><th class="px-2 py-1.5 text-left font-normal">user</th><th class="px-2 py-1.5 text-left font-normal">role</th><th class="px-2 py-1.5 text-left font-normal">mfa</th><th class="px-2 py-1.5 text-left font-normal">created</th><th class="px-2 py-1.5 text-left font-normal">last active</th></tr></thead><tbody></tbody></table></div>'),sE=x('<div class="text-[12px] font-mono text-fg-3">Policy table unavailable for this principal.</div>'),lE=x('<div class="text-[12px] font-mono text-fg-3">No policies to tabulate.</div>'),cE=x('<span class="text-fg-3">-</span>'),dE=x('<tr class="border-b border-line-1/60 hover:bg-bg-1/40"><td class="px-2 py-1"><!></td><td class="px-2 py-1 text-fg-1"> </td><td class="px-2 py-1 text-primary-text"> </td><td class="px-2 py-1 text-fg-1"> </td><td class="px-2 py-1 text-fg-2"> </td></tr>'),uE=x('<div class="overflow-auto"><table class="w-full border-collapse text-[12px] font-mono"><thead class="sticky top-0 bg-bg-1"><tr class="border-b border-line-1 text-fg-3"><th class="px-2 py-1.5 text-left font-normal">effect</th><th class="px-2 py-1.5 text-left font-normal">principal</th><th class="px-2 py-1.5 text-left font-normal">action</th><th class="px-2 py-1.5 text-left font-normal">resource</th><th class="px-2 py-1.5 text-left font-normal">tenant</th></tr></thead><tbody></tbody></table></div>'),fE=x('<div class="mb-2 inline-flex items-center gap-1.5 rounded border border-warn/40 bg-bg-0 px-2 py-1 text-[11px] font-mono text-warn"><!> capability matrix unavailable</div> <pre class="whitespace-pre-wrap break-words text-[12px] font-mono text-fg-3"> </pre>',1),vE=x('<div class="text-[12px] font-mono text-fg-3">No capability checks returned.</div>'),gE=x('<span class="inline-flex items-center gap-1 text-ok"><!> yes</span>'),pE=x('<span class="inline-flex items-center gap-1 text-danger"><!> no</span>'),hE=x('<span class="text-fg-3">-</span>'),bE=x('<span class="inline-flex flex-wrap gap-1"></span>'),xE=x('<tr class="border-b border-line-1/60 hover:bg-bg-1/40"><td class="px-2 py-1"><!></td><td class="px-2 py-1 text-primary-text"> </td><td class="px-2 py-1 text-fg-1"> </td><td class="px-2 py-1"><!></td><td class="max-w-[320px] px-2 py-1 text-fg-3"> </td></tr>'),mE=x('<div class="overflow-auto"><table class="w-full border-collapse text-[12px] font-mono"><thead class="sticky top-0 bg-bg-1"><tr class="border-b border-line-1 text-fg-3"><th class="px-2 py-1.5 text-left font-normal">can</th><th class="px-2 py-1.5 text-left font-normal">action</th><th class="px-2 py-1.5 text-left font-normal">resource</th><th class="px-2 py-1.5 text-left font-normal">policy effect</th><th class="px-2 py-1.5 text-left font-normal">reason</th></tr></thead><tbody></tbody></table></div>'),_E=x("<!> <!>",1),yE=x('<div class="grid grid-cols-[minmax(280px,0.75fr)_1.25fr] gap-3"><div class="grid gap-3 content-start"><!> <!> <!></div> <div class="grid gap-3 content-start"><!> <!></div></div>'),wE=x('<div class="h-full overflow-auto bg-bg-0 p-6 text-fg-1"><!> <!></div>');function kE(t,e){nt(e,!0);let n=me(null),a=me(jt([])),o=me(jt([])),i=me(jt([])),l=me(null),d=me(jt([])),f=me(!1),v=me(null),p=me(null),b=me(null),h=me(null),w=me(null);const k=y(()=>Be.active.url),C=y(()=>Be.connected),P=y(()=>{var Q;return((Q=r(l))==null?void 0:Q.allowed)===!0});function Y(Q){if(!Q)return"-";const ue=Q>1e10?Q:Q*1e3;return new Date(ue).toISOString().replace("T"," ").slice(0,19)}async function O(){const Q=Be.client;if(!Q||xr.locked||!r(C)){m(n,null),m(a,[],!0),m(o,[],!0),m(i,[],!0),m(l,null),m(d,[],!0);return}m(f,!0),m(v,null),m(p,null),m(b,null),m(h,null),m(w,null),m(l,null),m(d,[],!0);try{m(n,await St.track("security · whoami",()=>Q.whoami()),!0)}catch(ue){m(v,ue.message,!0),m(n,null)}try{m(a,await St.track("security · tenants",()=>Q.tenants()),!0)}catch(ue){m(p,ue.message,!0),m(a,[],!0)}try{m(o,await St.track("security · users",()=>Q.users()),!0)}catch(ue){m(b,ue.message,!0),m(o,[],!0)}try{const[ue]=await St.track("security · auth.can policy read",()=>Q.authCan([Aa]));m(l,ue??{...Aa,allowed:!1,reason:"auth.can omitted policy-read decision"},!0)}catch(ue){m(l,{...Aa,allowed:!1,reason:ue.message||"auth.can failed"},!0)}if(r(l).allowed){try{m(i,await St.track("security · policies",()=>Q.policies()),!0)}catch(ue){m(h,ue.message,!0),m(i,[],!0)}try{const ue=uf(r(i)),U=await St.track("security · auth.can capability matrix",()=>Q.authCan(ue));m(d,_S(r(i),U),!0)}catch(ue){m(w,ue.message,!0),m(d,[],!0)}}else m(i,[],!0),m(d,[],!0);m(f,!1)}Lt(()=>{xr.locked||(r(k),r(C),O())});var Z=wE(),G=c(Z);La(G,{eyebrow:"Admin",title:"Security",subtitle:"Tenants, users, and policy surfaces are permission-aware. Controls only appear when reddb exposes the grant.",actions:ue=>{var U=KC(),E=c(U);{let I=y(()=>r(f)?"size-3.5 animate-spin":"size-3.5");ks(E,{get class(){return r(I)}})}Se(),s(U),N(()=>U.disabled=r(f)||xr.locked||!r(C)),_e("click",U,O),g(ue,U)}});var T=u(G,2);{var q=Q=>{Hr(Q,{get icon(){return Un},title:"Security locked",message:"Enter the master password before red-ui loads auth data."})},ne=Q=>{Hr(Q,{get icon(){return ka},title:"No active connection",message:"Connect to a reddb instance to inspect security posture."})},oe=Q=>{var ue=yE(),U=c(ue),E=c(U);En(E,{title:"session",children:(ee,L)=>{var H=_t(),j=ze(H);{var le=J=>{var W=jC(),X=c(W,!0);s(W),N(()=>S(X,r(v))),g(J,W)},he=J=>{var W=UC(),X=u(c(W),2),M=c(X);{var K=Ce=>{Fr(Ce,{tone:"success",children:(ke,xe)=>{Se();var ge=bt("yes");g(ke,ge)},$$slots:{default:!0}})},D=Ce=>{Fr(Ce,{tone:"warning",children:(ke,xe)=>{Se();var ge=bt("no");g(ke,ge)},$$slots:{default:!0}})};V(M,Ce=>{r(n).authenticated?Ce(K):Ce(D,-1)})}s(X);var z=u(X,4),B=c(z,!0);s(z);var re=u(z,4),de=c(re,!0);s(re);var be=u(re,2);{var fe=Ce=>{var ke=BC(),xe=u(ze(ke),2),ge=c(xe,!0);s(xe),N(()=>S(ge,r(n).note)),g(Ce,ke)};V(be,Ce=>{r(n).note&&Ce(fe)})}s(W),N(()=>{S(B,r(n).username),S(de,r(n).role)}),g(J,W)},ie=J=>{var W=WC();g(J,W)};V(j,J=>{r(v)?J(le):r(n)?J(he,1):J(ie,-1)})}g(ee,H)},$$slots:{default:!0}});var I=u(E,2);En(I,{title:"tenants",children:(ee,L)=>{var H=_t(),j=ze(H);{var le=J=>{var W=GC(),X=ze(W),M=c(X);ka(M,{class:"size-3.5"}),Se(),s(X);var K=u(X,2),D=c(K,!0);s(K),N(()=>S(D,r(p))),g(J,W)},he=J=>{var W=YC(),X=c(W);VC(X,{class:"size-4"}),Se(2),s(W),g(J,W)},ie=J=>{var W=XC();$e(W,23,()=>r(a),(X,M)=>`${X.id??X.slug??X.name??M}`,(X,M)=>{var K=$C(),D=c(K),z=c(D),B=c(z,!0);s(z);var re=u(z,2);{var de=xe=>{Fr(xe,{tone:"neutral",children:(ge,De)=>{Se();var ce=bt();N(()=>S(ce,r(M).role)),g(ge,ce)},$$slots:{default:!0}})};V(re,xe=>{r(M).role&&xe(de)})}s(D);var be=u(D,2),fe=c(be),Ce=u(fe);{var ke=xe=>{var ge=bt();N(De=>S(ge,`· ${De??""}`),[()=>r(M).grants.join(", ")]),g(xe,ge)};V(Ce,xe=>{var ge;(ge=r(M).grants)!=null&&ge.length&&xe(ke)})}s(be),s(K),N(()=>{S(B,r(M).name??r(M).slug??r(M).id??"tenant"),S(fe,`${r(M).id??r(M).slug??"-"??""} `)}),g(X,K)}),s(W),g(J,W)};V(j,J=>{r(p)?J(le):r(a).length===0?J(he,1):J(ie,-1)})}g(ee,H)},$$slots:{default:!0}});var _=u(I,2);{var A=ee=>{En(ee,{title:"policies",children:(L,H)=>{var j=_t(),le=ze(j);{var he=W=>{var X=ZC(),M=ze(X),K=c(M);ka(K,{class:"size-3.5"}),Se(),s(M);var D=u(M,2),z=c(D,!0);s(D),N(()=>S(z,r(h))),g(W,X)},ie=W=>{var X=QC(),M=c(X);HC(M,{class:"size-4"}),Se(2),s(X),g(W,X)},J=W=>{var X=tE(),M=c(X);$e(M,19,()=>r(i).slice(0,6),(z,B)=>`${z.id??z.name??B}`,(z,B)=>{var re=JC(),de=c(re),be=c(de),fe=c(be,!0);s(be);var Ce=u(be,2);{var ke=se=>{{let ve=y(()=>r(B).effect==="deny"?"danger":"success");Fr(se,{get tone(){return r(ve)},children:(Ae,Le)=>{Se();var we=bt();N(()=>S(we,r(B).effect)),g(Ae,we)},$$slots:{default:!0}})}};V(Ce,se=>{r(B).effect&&se(ke)})}s(de);var xe=u(de,2),ge=c(xe),De=u(ge);{var ce=se=>{var ve=bt();N(()=>S(ve,`· tenant ${r(B).tenant??""}`)),g(se,ve)};V(De,se=>{r(B).tenant&&se(ce)})}s(xe),s(re),N(()=>{S(fe,r(B).name??r(B).id??"policy"),S(ge,`${r(B).action??"*"??""} · ${r(B).resource??"*"??""} `)}),g(z,re)});var K=u(M,2);{var D=z=>{var B=eE(),re=c(B);s(B),N(()=>S(re,`${r(i).length-6} more policies in the table.`)),g(z,B)};V(K,z=>{r(i).length>6&&z(D)})}s(X),g(W,X)};V(le,W=>{r(h)?W(he):r(i).length===0?W(ie,1):W(J,-1)})}g(L,j)},$$slots:{default:!0}})};V(_,ee=>{r(P)&&ee(A)})}s(U);var R=u(U,2),te=c(R);En(te,{title:"users",children:(ee,L)=>{var H=_t(),j=ze(H);{var le=J=>{var W=rE(),X=ze(W),M=c(X);ka(M,{class:"size-3.5"}),Se(),s(X);var K=u(X,2),D=c(K,!0);s(K),N(()=>S(D,r(b))),g(J,W)},he=J=>{var W=nE(),X=c(W);FC(X,{class:"size-4"}),Se(2),s(W),g(J,W)},ie=J=>{var W=iE(),X=c(W),M=u(c(X));$e(M,21,()=>r(o),K=>K.username,(K,D)=>{var z=oE(),B=c(z),re=c(B,!0);s(B);var de=u(B),be=c(de,!0);s(de);var fe=u(de),Ce=c(fe);{var ke=ve=>{Fr(ve,{tone:"success",children:(Ae,Le)=>{Se();var we=bt("on");g(Ae,we)},$$slots:{default:!0}})},xe=ve=>{var Ae=aE();g(ve,Ae)};V(Ce,ve=>{r(D).mfa?ve(ke):ve(xe,-1)})}s(fe);var ge=u(fe),De=c(ge,!0);s(ge);var ce=u(ge),se=c(ce,!0);s(ce),s(z),N((ve,Ae)=>{S(re,r(D).username),S(be,r(D).role??"-"),S(De,ve),S(se,Ae)},[()=>Y(r(D).created_at),()=>Y(r(D).last_active)]),g(K,z)}),s(M),s(X),s(W),g(J,W)};V(j,J=>{r(b)?J(le):r(o).length===0?J(he,1):J(ie,-1)})}g(ee,H)},$$slots:{default:!0}});var F=u(te,2);{var $=ee=>{var L=_E(),H=ze(L);En(H,{title:"policy table",children:(le,he)=>{var ie=_t(),J=ze(ie);{var W=K=>{var D=sE();g(K,D)},X=K=>{var D=lE();g(K,D)},M=K=>{var D=uE(),z=c(D),B=u(c(z));$e(B,23,()=>r(i),(re,de)=>`${re.id??re.name??de}`,(re,de)=>{var be=dE(),fe=c(be),Ce=c(fe);{var ke=Ie=>{{let Ee=y(()=>r(de).effect==="deny"?"danger":"success");Fr(Ie,{get tone(){return r(Ee)},children:(Me,Te)=>{Se();var Xe=bt();N(()=>S(Xe,r(de).effect)),g(Me,Xe)},$$slots:{default:!0}})}},xe=Ie=>{var Ee=cE();g(Ie,Ee)};V(Ce,Ie=>{r(de).effect?Ie(ke):Ie(xe,-1)})}s(fe);var ge=u(fe),De=c(ge,!0);s(ge);var ce=u(ge),se=c(ce,!0);s(ce);var ve=u(ce),Ae=c(ve,!0);s(ve);var Le=u(ve),we=c(Le,!0);s(Le),s(be),N(()=>{S(De,r(de).principal??"-"),S(se,r(de).action??"*"),S(Ae,r(de).resource??"*"),S(we,r(de).tenant??"-")}),g(re,be)}),s(B),s(z),s(D),g(K,D)};V(J,K=>{r(h)?K(W):r(i).length===0?K(X,1):K(M,-1)})}g(le,ie)},$$slots:{default:!0}});var j=u(H,2);En(j,{title:"my capabilities",children:(le,he)=>{var ie=_t(),J=ze(ie);{var W=K=>{var D=fE(),z=ze(D),B=c(z);ka(B,{class:"size-3.5"}),Se(),s(z);var re=u(z,2),de=c(re,!0);s(re),N(()=>S(de,r(w))),g(K,D)},X=K=>{var D=vE();g(K,D)},M=K=>{var D=mE(),z=c(D),B=u(c(z));$e(B,21,()=>r(d),re=>re.id,(re,de)=>{var be=xE(),fe=c(be),Ce=c(fe);{var ke=Me=>{var Te=gE(),Xe=c(Te);ys(Xe,{class:"size-3.5"}),Se(),s(Te),g(Me,Te)},xe=Me=>{var Te=pE(),Xe=c(Te);qC(Xe,{class:"size-3.5"}),Se(),s(Te),g(Me,Te)};V(Ce,Me=>{r(de).allowed?Me(ke):Me(xe,-1)})}s(fe);var ge=u(fe),De=c(ge,!0);s(ge);var ce=u(ge),se=c(ce,!0);s(ce);var ve=u(ce),Ae=c(ve);{var Le=Me=>{var Te=hE();g(Me,Te)},we=Me=>{var Te=bE();$e(Te,21,()=>r(de).effects,gr,(Xe,Fe)=>{{let Qe=y(()=>r(Fe)==="deny"?"danger":"success");Fr(Xe,{get tone(){return r(Qe)},children:(lt,ct)=>{Se();var Ke=bt();N(()=>S(Ke,r(Fe))),g(lt,Ke)},$$slots:{default:!0}})}}),s(Te),g(Me,Te)};V(Ae,Me=>{r(de).effects.length===0?Me(Le):Me(we,-1)})}s(ve);var Ie=u(ve),Ee=c(Ie,!0);s(Ie),s(be),N(()=>{S(De,r(de).action),S(se,r(de).resourceLabel),S(Ee,r(de).reason??"-")}),g(re,be)}),s(B),s(z),s(D),g(K,D)};V(J,K=>{r(w)?K(W):r(d).length===0?K(X,1):K(M,-1)})}g(le,ie)},$$slots:{default:!0}}),g(ee,L)};V(F,ee=>{r(P)&&ee($)})}s(R),s(ue),g(Q,ue)};V(T,Q=>{xr.locked?Q(q):r(C)?Q(oe,-1):Q(ne,1)})}s(Z),g(t,Z),at()}nr(["click"]);const mf={name:"download",size:24,node:[["path",{d:"M12 15V3"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"}],["path",{d:"m7 10 5 5 5-5"}]]};mf.node;function SE(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return mf}}))}const _f={name:"save",size:24,node:[["path",{d:"M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z"}],["path",{d:"M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7"}],["path",{d:"M7 3v4a1 1 0 0 0 1 1h7"}]]};_f.node;function uc(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return _f}}))}const yf={name:"shield-off",size:24,node:[["path",{d:"m2 2 20 20"}],["path",{d:"M5 5a1 1 0 0 0-1 1v7c0 5 3.5 7.5 7.67 8.94a1 1 0 0 0 .67.01c2.35-.82 4.48-1.97 5.9-3.71"}],["path",{d:"M9.309 3.652A12.252 12.252 0 0 0 11.24 2.28a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1v7a9.784 9.784 0 0 1-.08 1.264"}]]};yf.node;function Li(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return yf}}))}const wf={name:"sliders-horizontal",size:24,node:[["path",{d:"M10 5H3"}],["path",{d:"M12 19H3"}],["path",{d:"M14 3v4"}],["path",{d:"M16 17v4"}],["path",{d:"M21 12h-9"}],["path",{d:"M21 19h-5"}],["path",{d:"M21 5h-7"}],["path",{d:"M8 10v4"}],["path",{d:"M8 12H3"}]]};wf.node;function CE(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return wf}}))}const kf={name:"unplug",size:24,node:[["path",{d:"m19 5 3-3"}],["path",{d:"m2 22 3-3"}],["path",{d:"M6.3 20.3a2.4 2.4 0 0 0 3.4 0L12 18l-6-6-2.3 2.3a2.4 2.4 0 0 0 0 3.4Z"}],["path",{d:"M7.5 13.5 10 11"}],["path",{d:"M10.5 16.5 13 14"}],["path",{d:"m12 6 6 6 2.3-2.3a2.4 2.4 0 0 0 0-3.4l-2.6-2.6a2.4 2.4 0 0 0-3.4 0Z"}]]};kf.node;function fc(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return kf}}))}function mn(t){const e=t.resource.tenant??"",n=t.current_tenant??"";return[t.action,t.resource.kind,t.resource.name,e,n].join("")}function wo(t,e){return{...t,allowed:!1,reason:e}}var to,Nn,Hn;class EE{constructor(e){je(this,to);je(this,Nn,new Map);je(this,Hn,new Map);$n(this,to,e)}cachedDecision(e){return pe(this,Nn).get(mn(e))??null}cachedCan(e){var n;return((n=this.cachedDecision(e))==null?void 0:n.allowed)===!0}async decision(e){return await this.preload([e]),this.cachedDecision(e)??wo(e,"auth.can did not return a decision")}async can(e){return(await this.decision(e)).allowed}async preload(e){const n=e.filter(o=>!pe(this,Nn).has(mn(o)));if(n.length===0)return;const a=new Map;for(const o of n){const i=mn(o);pe(this,Hn).has(i)||a.set(i,o)}if(a.size>0){const o=[...a.values()],i=pe(this,to).authCan(o).then(l=>{const d=new Map(l.map(f=>[mn(f),f]));for(const f of o){const v=mn(f);pe(this,Nn).set(v,d.get(v)??wo(f,"auth.can omitted this check"))}}).catch(l=>{const d=l.message||"auth.can failed";for(const f of o)pe(this,Nn).set(mn(f),wo(f,d))}).finally(()=>{for(const l of o)pe(this,Hn).delete(mn(l))});for(const l of o){const d=mn(l);pe(this,Hn).set(d,i.then(()=>pe(this,Nn).get(d)??wo(l,"auth.can did not return a decision")))}}await Promise.all(n.map(o=>pe(this,Hn).get(mn(o))))}}to=new WeakMap,Nn=new WeakMap,Hn=new WeakMap;function Wr(t){return typeof t=="string"&&t.trim()?t:void 0}function Oa(t){return typeof t=="number"&&Number.isFinite(t)?t:void 0}function ME(t){const e=Wr(t.value_type)??Wr(t.valueType)??Wr(t["value-type"]);return e==null?void 0:e.toLowerCase()}function zE(t){return Oa(t.schema_version)??Oa(t.schemaVersion)??Oa(t["schema-version"])}function NE(t){if(typeof t=="string"){const l=t.trim();return l==="&***"?{type:"secret_ref",key:"***",masked:!0}:/^&[A-Za-z0-9_.-]+$/.test(l)?{type:"secret_ref",key:l.slice(1)}:void 0}if(!t||typeof t!="object"||Array.isArray(t))return;const e=t;if(e.type!=="secret_ref")return;const n=Wr(e.key)??Wr(e.path)??Wr(e.name);if(!n)return;const a={type:"secret_ref",key:n},o=Wr(e.store),i=Wr(e.collection);return o&&(a.store=o),i&&(a.collection=i),n==="***"&&(a.masked=!0),a}function vc(t){const e=t==null?void 0:t.trim();if(e)return Yn(e,"SHOW CONFIG prefix")}function Yn(t,e){const n=t.trim();if(!/^[A-Za-z_][A-Za-z0-9_]*(\.[A-Za-z_][A-Za-z0-9_]*)*$/.test(n))throw new Error(`${e} must be a dotted identifier path`);return n}function Sf(t){return`'${t.replace(/'/g,"''")}'`}function TE(t){if(t===null)return"NULL";if(typeof t=="boolean")return t?"true":"false";if(typeof t=="number"){if(!Number.isFinite(t))throw new Error("Config number value must be finite");return String(t)}return typeof t=="string"?Sf(t):JSON.stringify(t)}function IE(t,e){return`SET CONFIG ${Yn(t,"SET CONFIG key")} = ${TE(e)}`}function AE(t){const e=Yn(t,"DELETE CONFIG key"),n=e.lastIndexOf(".");if(n<=0||n===e.length-1)throw new Error("DELETE CONFIG key must include a collection and key");return`DELETE CONFIG ${e.slice(0,n)} ${e.slice(n+1)}`}function LE(t,e){return`SET SECRET ${Yn(t,"SET SECRET key")} = ${Sf(e)}`}function OE(t){return`DELETE SECRET ${Yn(t,"DELETE SECRET key")}`}function PE(t){return`UNSEAL VAULT ${Yn(t,"UNSEAL VAULT key")}`}function gc(t,e){if(!t.ok)throw new Error(t.error??`${e} failed`);return t}function pc(t,e){if(!t.ok)throw new Error(t.error??`${e} failed`);return{...t,query:e,record_count:0,result:{columns:[],records:[]}}}function DE(t,e){if(!t.ok)throw new Error(t.error??"UNSEAL VAULT failed");for(const n of t.result.records){const a=n.values,o=Wr(a.key);if(o&&o!==e)continue;const i=a.value??a.plaintext??a.secret;if(typeof i=="string")return{key:e,value:i}}throw new Error("UNSEAL VAULT returned no plaintext value")}function RE(t){if(!t.ok)throw new Error(t.error??"SHOW CONFIG failed");const e=[];for(const n of t.result.records){const a=n.values,o=Wr(a.key);if(!o||a.tombstone===!0)continue;const i={key:o,value:NE(a.value)??a.value},l=Wr(a.collection),d=Oa(a.version),f=ME(a),v=zE(a);l&&(i.collection=l),d!==void 0&&(i.version=d),f&&(i.valueType=f),v!==void 0&&(i.schemaVersion=v),"tags"in a&&(i.tags=a.tags),e.push(i)}return e.sort((n,a)=>n.key.localeCompare(a.key))}function VE(t){if(!t.ok)throw new Error(t.error??"SHOW SECRETS failed");const e=[];for(const n of t.result.records){const a=n.values,o=Wr(a.key);if(!o)continue;if(a.value!=="***")throw new Error("SHOW SECRETS returned an unmasked secret value");const l={key:o,value:"***"},d=Wr(a.status),f=Oa(a.version);d&&(l.status=d),f!==void 0&&(l.version=f),e.push(l)}return e.sort((n,a)=>n.key.localeCompare(a.key))}class On{constructor(e){this.transport=e}async showConfig(e){const n=vc(e),a=await this.transport.query(n?`SHOW CONFIG ${n}`:"SHOW CONFIG");return RE(a)}async showSecrets(e){const n=vc(e),a=await this.transport.query(n?`SHOW SECRETS ${n}`:"SHOW SECRETS");return VE(a)}async setConfig(e,n){const a=await this.transport.query(IE(e,n));return gc(a,"SET CONFIG")}async unsetConfig(e){const n=await this.transport.query(AE(e));return gc(n,"DELETE CONFIG")}async setSecret(e,n){const a=await this.transport.query(LE(e,n));return pc(a,"SET SECRET")}async deleteSecret(e){const n=await this.transport.query(OE(e));return pc(n,"DELETE SECRET")}async revealSecret(e){const n=Yn(e,"UNSEAL VAULT key"),a=await this.transport.query(PE(n));return DE(a,n)}}const Pa=[{id:"config",label:"Config",blurb:"Live non-secret configuration from SHOW CONFIG.",icon:"settings",readGrant:{action:"config:read",resource:{kind:"config",name:"*"}},writeGrant:{action:"config:write",resource:{kind:"config",name:"*"}}},{id:"secrets",label:"Secrets",blurb:"Vault inventory from SHOW SECRETS with values masked.",icon:"key",readGrant:{action:"vault:read_metadata",resource:{kind:"vault",name:"*"}},writeGrant:{action:"vault:write",resource:{kind:"vault",name:"*"}},revealGrant:{action:"vault:read",resource:{kind:"vault",name:"*"}}}],HE={"durability.mode":"Durability mode","concurrency.locking.enabled":"Locking","cache.blob.l1_bytes_max":"Blob L1 cache","cache.blob.l2_bytes_max":"Blob L2 cache","red.auth.enabled":"Authentication","red.auth.require_auth":"Require authentication","red.auth.session_ttl_secs":"Session TTL","red.backup.backend":"Backup backend","red.backup.enabled":"Backups","red.backup.interval_secs":"Backup interval","red.cdc.enabled":"Change data capture","red.config.secret.auto_decrypt":"Auto-decrypt config secrets","red.config.secret.auto_encrypt":"Auto-encrypt config secrets","red.server.max_body_size":"Max request body","red.server.max_scan_limit":"Max scan limit","red.server.read_timeout_ms":"Read timeout","red.server.write_timeout_ms":"Write timeout","red.storage.page_size":"Page size","red.storage.page_cache_capacity":"Page cache capacity","red.storage.verify_checksums":"Verify checksums","red.system.os":"Operating system","red.system.arch":"Architecture","red.system.hostname":"Hostname","red.system.cpu_cores":"CPU cores","red.system.total_memory_bytes":"System memory","red.vcs.default_branch":"Default branch","red.vcs.protected_branches":"Protected branches","runtime.result_cache.backend":"Result cache backend","runtime.result_cache.enabled":"Result cache","storage.bgwriter.delay_ms":"Background writer delay","storage.btree.lehman_yao":"Lehman-Yao B-tree","storage.wal.max_interval_ms":"WAL max interval","system.bootstrap.completed":"Bootstrap completed","system.bootstrap.preset":"Bootstrap preset"},FE={"durability.mode":"Write durability policy currently reported by reddb.","red.auth.enabled":"Whether reddb authentication is enabled for this instance.","red.auth.require_auth":"Whether unauthenticated requests are rejected.","red.backup.backend":"The selected backup storage backend.","red.backup.enabled":"Whether scheduled backups are enabled.","red.cdc.enabled":"Whether the change stream subsystem is enabled.","red.server.max_body_size":"Maximum accepted HTTP request body size, in bytes.","red.server.max_scan_limit":"Default cap for scan-heavy API paths.","red.storage.page_size":"On-disk page size used by the storage engine.","red.storage.verify_checksums":"Whether page checksums are verified on read.","red.vcs.default_branch":"Branch name used when VCS features need a default.","red.vcs.protected_branches":"Branches protected from destructive operations.","runtime.result_cache.enabled":"Whether query result caching is enabled.","system.bootstrap.preset":"The bootstrap profile that initialized defaults."},qE={"durability.mode":["sync","async","none"],"red.backup.backend":["local","s3","gcs"],"runtime.result_cache.backend":["legacy","blob_cache"]};function Cf(t){const n=(t.split(".").pop()??t).replace(/[_-]+/g," ").trim();return n?n.charAt(0).toUpperCase()+n.slice(1):t}function KE(t){switch(t){case"bool":case"boolean":return"boolean";case"int":case"integer":case"float":case"number":case"count":return"number";case"array":case"list":return"list";case"object":case"string":case"text":case"url":return"text";default:return null}}function jE(t){return typeof t=="boolean"?"boolean":typeof t=="number"?"number":Array.isArray(t)?"list":"text"}function Ef(t){return!!t&&typeof t=="object"&&!Array.isArray(t)&&t.type==="secret_ref"&&typeof t.key=="string"}function us(t){const e=qE[t.key],n=Ef(t.value)?t.value:void 0,a=n?"secret-reference":e?"enum":KE(t.valueType)??jE(t.value),o={key:t.key,label:HE[t.key]??Cf(t.key),kind:a},i=FE[t.key];return i&&(o.description=i),e&&(o.options=e),t.valueType&&(o.valueType=t.valueType),t.schemaVersion!==void 0&&(o.schemaVersion=t.schemaVersion),n&&(o.secretReference=n),o}function fs(t){return{key:t.key,label:Cf(t.key),kind:"text",masked:!0}}function BE(t,e=Pa){return e.find(n=>n.id===t)??e[0]??Pa[0]}function UE(t,e){return t.filter(n=>e.cachedCan(n.readGrant))}function WE(t,e){const n=e.trim().toLowerCase();return n?t.filter(a=>a.key.toLowerCase().includes(n)||us(a).label.toLowerCase().includes(n)||Ef(a.value)&&a.value.key.toLowerCase().includes(n)):[...t]}function GE(t,e){const n=e.trim().toLowerCase();return n?t.filter(a=>{var o;return a.key.toLowerCase().includes(n)||fs(a).label.toLowerCase().includes(n)||((o=a.status)==null?void 0:o.toLowerCase().includes(n))}):[...t]}function YE(t){return Array.isArray(t.value)||t.value&&typeof t.value=="object"?JSON.stringify(t.value,null,2):t.value===null||t.value===void 0?"":String(t.value)}function hc(t,e){var a;const n=e.trim();switch(t.kind){case"boolean":return n==="true"?{ok:!0,value:!0}:n==="false"?{ok:!0,value:!1}:{ok:!1,error:"Boolean config values must be true or false."};case"number":{if(!n)return{ok:!1,error:"Number config values cannot be empty."};const o=Number(n);return Number.isFinite(o)?{ok:!0,value:o}:{ok:!1,error:"Number config values must be finite."}}case"enum":return(a=t.options)!=null&&a.includes(e)?{ok:!0,value:e}:{ok:!1,error:"Choose one of the allowed config values."};case"list":try{const o=JSON.parse(e);return Array.isArray(o)?{ok:!0,value:o}:{ok:!1,error:"List config values must be a JSON array."}}catch{return{ok:!1,error:"List config values must be valid JSON."}}case"secret-reference":return{ok:!1,error:"Secret references can be unset, but not edited as plaintext config."};case"text":default:return{ok:!0,value:e}}}var $E=x('<span class="font-mono text-fg-2"> </span> live rows',1),XE=x('<div class="h-12 rounded-md bg-bg-2 motion-safe:animate-pulse"></div>'),ZE=x('<div class="grid gap-1 p-2"></div>'),QE=x('<div class="h-12 rounded-md bg-bg-2 motion-safe:animate-pulse"></div>'),JE=x('<div class="grid gap-1 p-2"></div>'),e6=x('<div><button type="button" class="min-w-0 text-left"><span class="block truncate text-[13px]"> </span> <span class="block truncate font-mono text-[11px] text-fg-3"> </span></button> <div class="inline-flex h-6 items-center gap-1.5 rounded border border-line-2 bg-bg-2 px-1.5 font-mono text-[11px] text-fg-2"><!> </div></div>'),t6=x('<div class="grid gap-1 p-2"></div>'),r6=x('<label class="inline-flex h-6 items-center gap-1.5 rounded border border-line-2 bg-bg-2 px-1.5 font-mono text-[11px] text-fg-2"><input type="checkbox" disabled="" tabindex="-1" class="size-3 accent-current"/> </label>'),n6=x("<option> </option>"),a6=x("<option> </option>"),o6=x('<select disabled="" tabindex="-1" class="h-6 w-28 rounded border border-line-2 bg-bg-2 px-1.5 font-mono text-[11px] text-primary-text disabled:opacity-100"><!><!></select>'),i6=x('<input readonly="" tabindex="-1" class="h-6 w-28 rounded border border-line-2 bg-bg-2 px-1.5 font-mono text-[11px] text-fg-2 outline-none"/>'),s6=x('<div><button type="button" class="min-w-0 text-left"><span class="block truncate text-[13px]"> </span> <span class="block truncate font-mono text-[11px] text-fg-3"> </span></button> <!></div>'),l6=x('<div class="grid gap-1 p-2"></div>'),c6=x('<button type="button" class="inline-flex h-7 items-center justify-center gap-1.5 rounded-md border border-line-2 bg-bg-2 px-2.5 text-[11px] font-mono text-fg-1 transition-colors hover:border-line-3 hover:text-fg-0 disabled:cursor-not-allowed disabled:opacity-40"><!> export config</button>'),d6=x('Live from <span class="font-mono text-fg-2"> </span>.',1),u6=x("<!> <!>",1),f6=x("<!> <!>",1),v6=x('<button type="button" class="inline-flex h-7 items-center gap-1.5 rounded-md border border-line-2 bg-bg-2 px-2.5 text-[11px] font-mono text-fg-1 hover:border-line-3 hover:text-fg-0 disabled:cursor-not-allowed disabled:opacity-40"><!> refresh</button>'),g6=x('<input readonly="" class="h-8 w-full rounded-md border border-line-2 bg-bg-2 px-2.5 font-mono text-[12px] text-fg-1 outline-none"/>'),p6=x('<span class="font-mono text-[12px] text-fg-1"> </span>'),h6=x('<div class="flex flex-wrap justify-end gap-1.5"><!> <!></div>'),b6=x('<button type="button" class="inline-flex h-8 items-center gap-1.5 rounded-md border border-line-2 bg-bg-2 px-2.5 text-[11px] font-mono text-fg-1 hover:border-line-3 hover:text-fg-0"><!> hide</button>'),x6=x('<button type="button" class="inline-flex h-8 items-center gap-1.5 rounded-md border border-warn/40 bg-warn/5 px-2.5 text-[11px] font-mono text-warn hover:border-warn/70 disabled:cursor-not-allowed disabled:opacity-40"><!> reveal</button>'),m6=x('<button type="button" class="inline-flex h-8 items-center gap-1.5 rounded-md border border-danger/30 bg-danger/5 px-2.5 text-[11px] font-mono text-danger hover:border-danger/60 disabled:cursor-not-allowed disabled:opacity-40"><!> delete</button>'),_6=x('<section><!> <div class="divide-y divide-line-1 overflow-hidden rounded-lg border border-line-1 bg-bg-1"><!> <!> <!> <!> <!></div></section>'),y6=x('<div role="status"><!> <span class="truncate"> </span></div>'),w6=x('<div role="status"><!> <span class="truncate"> </span></div>'),k6=x('<!> <section><!> <div class="grid gap-2 rounded-lg border border-line-1 bg-bg-1 p-3"><input type="text" placeholder="mycompany.payments.key" aria-label="Secret key" class="h-8 rounded-md border border-line-2 bg-bg-2 px-2.5 font-mono text-[12px] text-fg-1 outline-none placeholder:text-fg-3 disabled:cursor-not-allowed disabled:opacity-50"/> <input type="password" placeholder="New secret value" autocomplete="new-password" aria-label="New secret value" class="h-8 rounded-md border border-line-2 bg-bg-2 px-2.5 font-mono text-[12px] text-fg-1 outline-none placeholder:text-fg-3 disabled:cursor-not-allowed disabled:opacity-50"/> <div class="flex justify-end"><button type="button" class="inline-flex h-8 shrink-0 items-center gap-1.5 rounded-md border border-line-2 bg-bg-2 px-2.5 text-[11px] font-mono text-fg-1 hover:border-line-3 hover:text-fg-0 disabled:cursor-not-allowed disabled:opacity-40"><!> set</button></div></div></section>',1),S6=x('<section class="grid gap-4"><!> <!> <!></section>'),C6=x('<label class="inline-flex h-8 items-center gap-2 rounded-md border border-line-2 bg-bg-2 px-2.5 font-mono text-[12px] text-fg-1"><input type="checkbox" class="size-3 accent-current"/> </label>'),E6=x("<option> </option>"),M6=x("<option> </option>"),z6=x('<select class="h-8 min-w-[12rem] rounded-md border border-line-2 bg-bg-2 px-2.5 font-mono text-[12px] text-fg-1 disabled:opacity-100"><!><!></select>'),N6=x('<textarea rows="5" class="min-h-24 w-full resize-y rounded-md border border-line-2 bg-bg-2 px-2.5 py-2 font-mono text-[12px] text-fg-1 outline-none"></textarea>'),T6=x('<input readonly="" type="text" class="h-8 w-full rounded-md border border-line-2 bg-bg-2 px-2.5 font-mono text-[12px] text-fg-1 outline-none"/>'),I6=x('<input class="h-8 w-full rounded-md border border-line-2 bg-bg-2 px-2.5 font-mono text-[12px] text-fg-1 outline-none"/>'),A6=x('<span class="font-mono text-[12px] text-fg-1"> </span>'),L6=x('<div class="flex flex-wrap justify-end gap-1.5"><!> <!></div>'),O6=x('<div class="flex flex-wrap justify-end gap-2"><button type="button" class="inline-flex h-8 items-center gap-1.5 rounded-md border border-line-2 bg-bg-2 px-2.5 text-[11px] font-mono text-fg-1 hover:border-line-3 hover:text-fg-0 disabled:cursor-not-allowed disabled:opacity-40"><!> save</button> <button type="button" class="inline-flex h-8 items-center gap-1.5 rounded-md border border-danger/30 bg-danger/5 px-2.5 text-[11px] font-mono text-danger hover:border-danger/60 disabled:cursor-not-allowed disabled:opacity-40"><!> unset</button></div>'),P6=x('<div role="status"><!> <span class="truncate"> </span></div>'),D6=x('<label class="inline-flex h-8 w-fit items-center gap-2 rounded-md border border-line-2 bg-bg-2 px-2.5 font-mono text-[12px] text-fg-1"><input type="checkbox" class="size-3 accent-current"/> </label>'),R6=x('<textarea rows="4" placeholder="["main", "release"]" aria-label="New config value" class="min-h-20 resize-y rounded-md border border-line-2 bg-bg-2 px-2.5 py-2 font-mono text-[12px] text-fg-1 outline-none placeholder:text-fg-3 disabled:cursor-not-allowed disabled:opacity-50"></textarea>'),V6=x('<input type="text" aria-label="New config value" class="h-8 rounded-md border border-line-2 bg-bg-2 px-2.5 font-mono text-[12px] text-fg-1 outline-none placeholder:text-fg-3 disabled:cursor-not-allowed disabled:opacity-50"/>'),H6=x('<!> <section class="mt-4 border-t border-line-1 pt-4"><!> <div class="grid gap-2 rounded-lg border border-line-1 bg-bg-1 p-3"><div class="grid gap-2 @min-[42rem]:grid-cols-[minmax(0,1fr)_8rem]"><input type="text" placeholder="red.example.key" aria-label="New config key" class="h-8 rounded-md border border-line-2 bg-bg-2 px-2.5 font-mono text-[12px] text-fg-1 outline-none placeholder:text-fg-3 disabled:cursor-not-allowed disabled:opacity-50"/> <select aria-label="New config value type" class="h-8 rounded-md border border-line-2 bg-bg-2 px-2.5 font-mono text-[12px] text-fg-1 outline-none disabled:cursor-not-allowed disabled:opacity-50"><option>text</option><option>number</option><option>boolean</option><option>list</option></select></div> <!> <div class="flex justify-end"><button type="button" class="inline-flex h-8 shrink-0 items-center gap-1.5 rounded-md border border-line-2 bg-bg-2 px-2.5 text-[11px] font-mono text-fg-1 hover:border-line-3 hover:text-fg-0 disabled:cursor-not-allowed disabled:opacity-40"><!> set</button></div></div></section>',1),F6=x('<section><!> <div class="divide-y divide-line-1 overflow-hidden rounded-lg border border-line-1 bg-bg-1"><!> <!> <!> <!></div> <!></section>'),q6=x("<!> <!>",1),K6=x('<div class="@container h-full min-h-0 bg-bg-0"><div class="grid h-full min-h-0 grid-cols-1 @min-[62rem]:grid-cols-[13rem_minmax(18rem,24rem)_minmax(0,1fr)]"><aside class="flex min-h-0 flex-col border-b border-line-1 bg-bg-1 @min-[62rem]:border-b-0 @min-[62rem]:border-r"><div class="border-b border-line-1 px-3 py-3"><div class="type-label">Settings</div> <div class="mt-1 text-[13px] text-fg-1">Governance surface</div></div> <nav class="grid gap-0.5 p-2"></nav> <div class="mt-auto border-t border-line-1 px-3 py-2.5 text-[11px] text-fg-3"><!></div></aside> <section class="flex min-h-0 flex-col border-b border-line-1 bg-bg-1 @min-[62rem]:border-b-0 @min-[62rem]:border-r"><div class="border-b border-line-1 p-2"><div class="relative"><!> <input type="text" class="h-7 w-full rounded-md border border-line-2 bg-bg-2 pl-8 pr-2.5 text-xs text-fg-1 placeholder:text-fg-3 outline-none transition-colors focus:border-line-3 disabled:cursor-not-allowed disabled:opacity-50"/></div></div> <div class="min-h-0 flex-1 overflow-y-auto"><!></div> <div class="grid gap-2 border-t border-line-1 px-3 py-2.5"><!> <div class="truncate text-[11px] text-fg-3"><!></div></div></section> <main class="min-h-0 min-w-0 overflow-auto bg-bg-0"><div class="p-6"><!></div></main></div></div>');function j6(t,e){nt(e,!0);const n={key:Sa,settings:ji};let a=me(jt(Pa[0].id)),o=me(jt([])),i=me(null),l=me(!1),d=me(null),f=0;const v=y(()=>r(o).length>0),p=y(()=>BE(r(a),r(o)));let b=me(jt({})),h=me(null);const w=y(()=>r(v)?r(b)[r(p).id]??"":"");let k=me(jt([])),C=me(jt([])),P=me(null),Y=me(null),O=me(!1),Z=me(null),G=me(null),T=me(!1),q=me(null),ne=me(null),oe=me(""),Q=me(""),ue=me("text"),U=me(""),E=me(null),I=me(""),_=me(""),A=me(!1),R=me(null),te=me(null),F=null;const $=y(()=>Be.connected),ee=y(()=>Be.active.url),L=y(()=>r(p).id==="secrets"?r(G):r(Z)),H=y(()=>!r($)||r(L)!==null),j=y(()=>WE(r(k),r(w))),le=y(()=>GE(r(C),r(w))),he=y(()=>r(p).id==="secrets"?r(le).length:r(j).length),ie=y(()=>r(p).id==="secrets"?r(C).length:r(k).length),J=y(()=>r(j).find(ye=>ye.key===r(P))??r(j)[0]??null),W=y(()=>r(le).find(ye=>ye.key===r(Y))??r(le)[0]??null),X=y(()=>r(J)?us(r(J)):null),M=y(()=>r(W)?fs(r(W)):null),K=y(()=>{var ye;return r(p).id==="config"&&!!r(p).writeGrant&&((ye=r(i))==null?void 0:ye.cachedCan(r(p).writeGrant))===!0}),D=y(()=>{var ye;return r(p).id==="secrets"&&!!r(p).writeGrant&&((ye=r(i))==null?void 0:ye.cachedCan(r(p).writeGrant))===!0}),z=y(()=>{var ye;return r(p).id==="secrets"&&!!r(p).revealGrant&&((ye=r(i))==null?void 0:ye.cachedCan(r(p).revealGrant))===!0}),B=y(()=>{var ye;return r(W)&&((ye=r(te))==null?void 0:ye.key)===r(W).key?r(te).value:null});function re(ye){r(v)&&m(b,{...r(b),[r(p).id]:ye},!0)}function de(ye,Oe,qe){m(q,{paneId:ye,tone:Oe,message:qe},!0)}function be(){F&&(clearTimeout(F),F=null),m(te,null)}function fe(ye,Oe){be(),m(te,{key:ye,value:Oe},!0),F=setTimeout(()=>{m(te,null),F=null},3e4)}function Ce(ye){r(Y)!==ye&&be(),m(Y,ye,!0)}function ke(ye){var Oe,qe;(ye.metaKey||ye.ctrlKey)&&ye.key.toLowerCase()==="k"&&(ye.preventDefault(),(Oe=r(h))==null||Oe.focus(),(qe=r(h))==null||qe.select())}async function xe(){const ye=Be.client,Oe=++f;if(m(i,null),m(o,[],!0),m(d,null),m(k,[],!0),m(C,[],!0),m(P,null),m(Y,null),m(q,null),m(ne,null),m(E,null),m(I,""),m(_,""),m(R,null),be(),!ye||!r($)){m(l,!1);return}m(l,!0);const qe=new EE(ye);try{if(await St.track("settings · auth.can panes",()=>qe.preload(Pa.flatMap(et=>[et.readGrant,et.writeGrant,et.revealGrant].filter(rt=>!!rt)))),Oe!==f)return;m(i,qe,!0);const Ye=UE(Pa,qe);m(o,Ye,!0),Ye.length>0&&!Ye.some(et=>et.id===r(a))&&m(a,Ye[0].id,!0)}catch(Ye){if(Oe!==f)return;m(o,[],!0),m(i,null),m(d,Ye.message,!0)}finally{Oe===f&&m(l,!1)}}async function ge(){var qe,Ye;const ye=Be.client,Oe=r(i);if(!ye||!r($)||!Oe||!r(v)||!Oe.cachedCan(r(p).readGrant)){m(k,[],!0),m(C,[],!0),m(P,null),m(Y,null),m(Z,null),m(G,null);return}m(O,!0),r(p).id==="secrets"?(m(G,null),m(R,null),be()):m(Z,null);try{const et=new On(ye);if(r(p).id==="secrets"){const rt=await St.track("settings · show secrets",()=>et.showSecrets());m(C,rt,!0),(!r(Y)||!rt.some(Ge=>Ge.key===r(Y)))&&m(Y,((qe=rt[0])==null?void 0:qe.key)??null,!0)}else{const rt=await St.track("settings · show config",()=>et.showConfig());m(k,rt,!0),(!r(P)||!rt.some(Ge=>Ge.key===r(P)))&&m(P,((Ye=rt[0])==null?void 0:Ye.key)??null,!0)}}catch(et){r(p).id==="secrets"?(m(C,[],!0),m(Y,null),m(G,et.message,!0)):(m(k,[],!0),m(P,null),m(Z,et.message,!0))}finally{m(O,!1)}}function De(){return hc({key:r(Q),label:r(Q),kind:r(ue)},r(ue)==="boolean"&&!r(U).trim()?"false":r(U))}async function ce(){const ye=Be.client;if(!ye||!r(J)||!r(X)||!r(K)||r(T))return;const Oe=hc(r(X),r(oe));if(!Oe.ok){de("config","error",Oe.error??"Invalid config value.");return}m(T,!0),m(q,null);try{const qe=new On(ye);await St.track("settings · set config",()=>qe.setConfig(r(J).key,Oe.value??null)),m(P,r(J).key,!0),de("config","ok",`${r(J).key} saved.`),await ge()}catch(qe){de("config","error",qe.message)}finally{m(T,!1)}}async function se(){const ye=Be.client;if(!ye||!r(J)||!r(K)||r(T)||!window.confirm(`Unset ${r(J).key}?`))return;const Oe=r(J).key;m(T,!0),m(q,null);try{const qe=new On(ye);await St.track("settings · delete config",()=>qe.unsetConfig(Oe)),m(P,Oe,!0),de("config","ok",`${Oe} unset.`),await ge()}catch(qe){de("config","error",qe.message)}finally{m(T,!1)}}async function ve(){const ye=Be.client;if(!ye||!r(K)||r(T))return;const Oe=De();if(!Oe.ok){de("config","error",Oe.error??"Invalid config value.");return}const qe=r(Q).trim();m(T,!0),m(q,null);try{const Ye=new On(ye);await St.track("settings · set config",()=>Ye.setConfig(qe,Oe.value??null)),m(P,qe,!0),m(Q,""),m(U,""),de("config","ok",`${qe} set.`),await ge()}catch(Ye){de("config","error",Ye.message)}finally{m(T,!1)}}async function Ae(){const ye=Be.client;if(!ye||!r(D)||r(T))return;const Oe=r(I).trim(),qe=r(_);if(!Oe){de("secrets","error","Secret key is required.");return}if(!qe){de("secrets","error","Secret value is required.");return}m(T,!0),m(q,null);try{const Ye=new On(ye);await St.track("settings · set secret",()=>Ye.setSecret(Oe,qe)),m(Y,Oe,!0),m(_,""),de("secrets","ok",`${Oe} set.`),await ge()}catch(Ye){m(_,""),de("secrets","error",Ye.message)}finally{m(T,!1)}}async function Le(){const ye=Be.client;if(!ye||!r(W)||!r(D)||r(T)||!window.confirm(`Delete secret ${r(W).key}?`))return;const Oe=r(W).key;m(T,!0),m(q,null);try{const qe=new On(ye);await St.track("settings · delete secret",()=>qe.deleteSecret(Oe)),m(_,""),m(Y,Oe,!0),de("secrets","ok",`${Oe} deleted.`),await ge()}catch(qe){m(_,""),de("secrets","error",qe.message)}finally{m(T,!1)}}async function we(){const ye=Be.client;if(!ye||!r(W)||!r(z)||r(A))return;const Oe=r(W).key;m(A,!0),m(R,null),be();try{const qe=new On(ye),Ye=await St.track("settings · reveal secret",()=>qe.revealSecret(Oe));fe(Ye.key,Ye.value),m(R,{tone:"ok",key:Oe,message:"Plaintext revealed temporarily."},!0)}catch(qe){m(R,{tone:"error",key:Oe,message:qe.message},!0)}finally{m(A,!1)}}Lt(()=>{r(ee),r($),xe()}),Lt(()=>{r(ee),r($),r(a),r(i),r(o),ge()}),Lt(()=>{if(!r(J)){m(ne,null),m(oe,"");return}r(ne)!==r(J).key&&(m(ne,r(J).key,!0),m(oe,YE(r(J)),!0),m(q,null))}),Lt(()=>{r(p).id!=="secrets"||!r(W)||r(E)!==r(W).key&&(!r(I).trim()||r(I)===r(E))&&(m(I,r(W).key,!0),m(E,r(W).key,!0),m(q,null))});function Ie(ye){if(!Number.isFinite(ye))return String(ye);const Oe=["B","KB","MB","GB","TB"];let qe=ye,Ye=0;for(;qe>=1024&&Ye<Oe.length-1;)qe/=1024,Ye++;return`${Ye===0?qe:qe.toFixed(1)} ${Oe[Ye]}`}function Ee(ye){return ye.masked?"&***":`&${ye.collection?`${ye.collection}.`:""}${ye.key}`}function Me(ye){return!!ye&&typeof ye=="object"&&!Array.isArray(ye)&&"type"in ye&&ye.type==="secret_ref"}function Te(ye){const Oe=ye.value;return Me(Oe)?Ee(Oe):typeof Oe=="number"&&ye.key.endsWith("_bytes")?Ie(Oe):Array.isArray(Oe)?`${Oe.length} item${Oe.length===1?"":"s"}`:Oe&&typeof Oe=="object"?JSON.stringify(Oe):Oe==null?"null":String(Oe)}function Xe(ye){return Array.isArray(ye)||ye&&typeof ye=="object"?JSON.stringify(ye,null,2):ye==null?"null":String(ye)}function Fe(){const ye={url:r(ee),exportedAt:new Date().toISOString(),projection:"SHOW CONFIG",config:r(k).map(et=>({key:et.key,value:et.value,value_type:et.valueType??null,schema_version:et.schemaVersion??null}))},Oe=new Blob([JSON.stringify(ye,null,2)],{type:"application/json"}),qe=URL.createObjectURL(Oe),Ye=document.createElement("a");Ye.href=qe,Ye.download=`reddb-config-${new Date().toISOString().slice(0,10)}.json`,Ye.click(),URL.revokeObjectURL(qe)}function Qe(ye){return ye.id==="secrets"?r(C).length:r(k).length}var lt=K6();Sn("keydown",Kr,ke);var ct=c(lt),Ke=c(ct),He=u(c(Ke),2);$e(He,21,()=>r(o),ye=>ye.id,(ye,Oe)=>{const qe=y(()=>n[r(Oe).icon]??ji);{const Ye=Ge=>{Ec(Ge,{get icon(){return r(qe)},size:"sm"})},et=Ge=>{Ln(Ge,{children:(yt,ft)=>{Se();var pt=bt();N(At=>S(pt,At),[()=>Qe(r(Oe))]),g(yt,pt)},$$slots:{default:!0}})};let rt=y(()=>r(Oe).id===r(p).id);J4(ye,{get label(){return r(Oe).label},get current(){return r(rt)},onclick:()=>m(a,r(Oe).id,!0),icon:Ye,trailing:et,$$slots:{icon:!0,trailing:!0}})}}),s(He);var Ue=u(He,2),ot=c(Ue);{var ae=ye=>{var Oe=bt("checking grants");g(ye,Oe)},tt=ye=>{var Oe=$E(),qe=ze(Oe),Ye=c(qe,!0);s(qe),Se(),N(()=>S(Ye,r(ie))),g(ye,Oe)},Ze=ye=>{var Oe=bt("no readable panes");g(ye,Oe)};V(ot,ye=>{r(l)?ye(ae):r(v)?ye(tt,1):ye(Ze,-1)})}s(Ue),s(Ke);var We=u(Ke,2),ut=c(We),Et=c(ut),Tt=c(Et);Gr(Tt,{class:"pointer-events-none absolute left-2.5 top-1/2 size-3.5 -translate-y-1/2 text-fg-3"});var Mt=u(Tt,2);Xt(Mt),ln(Mt,ye=>m(h,ye),()=>r(h)),s(Et),s(ut);var Ct=u(ut,2),xt=c(Ct);{var mt=ye=>{var Oe=ZE();$e(Oe,20,()=>Array(4),gr,(qe,Ye)=>{var et=XE();g(qe,et)}),s(Oe),g(ye,Oe)},wt=ye=>{{let Oe=y(()=>r($)?"No readable settings panes":"No active connection"),qe=y(()=>r($)?"The current principal has no Settings read grant.":"Connect to a reddb instance to inspect its live configuration."),Ye=y(()=>r(d)??(r($)?"auth.can denied settings reads":"red serve"));Hr(ye,{get icon(){return Li},get title(){return r(Oe)},get message(){return r(qe)},get hint(){return r(Ye)}})}},Ot=ye=>{{let Oe=y(()=>r($)?`${r(p).label} is unreachable`:"No active connection"),qe=y(()=>r($)?`red-ui could not read ${r(p).id==="secrets"?"SHOW SECRETS":"SHOW CONFIG"} from the active target.`:"Connect to a reddb instance to inspect its live configuration."),Ye=y(()=>r($)?r(L)??r(ee):"red serve");Hr(ye,{get icon(){return fc},get title(){return r(Oe)},get message(){return r(qe)},get hint(){return r(Ye)}})}},Zt=ye=>{var Oe=JE();$e(Oe,20,()=>Array(8),gr,(qe,Ye)=>{var et=QE();g(qe,et)}),s(Oe),g(ye,Oe)},pr=ye=>{{let Oe=y(()=>r(w)?`No ${r(p).label.toLowerCase()} match`:`No ${r(p).label.toLowerCase()} reported`),qe=y(()=>r(w)?`Search checks the ${r(p).label.toLowerCase()} key and metadata.`:`${r(p).id==="secrets"?"SHOW SECRETS":"SHOW CONFIG"} returned no rows for this connection.`);Hr(ye,{get icon(){return Gr},get title(){return r(Oe)},get message(){return r(qe)}})}},hr=ye=>{var Oe=t6();$e(Oe,21,()=>r(le),qe=>qe.key,(qe,Ye)=>{const et=y(()=>fs(r(Ye)));var rt=e6(),Ge=c(rt),yt=c(Ge),ft=c(yt,!0);s(yt);var pt=u(yt,2),At=c(pt,!0);s(pt),s(Ge);var Pt=u(Ge,2),er=c(Pt);Sa(er,{class:"size-3"});var ur=u(er);s(Pt),s(rt),N(Vt=>{var Dt;Pe(rt,1,Vt),Ne(Ge,"aria-current",((Dt=r(W))==null?void 0:Dt.key)===r(Ye).key?"page":void 0),S(ft,r(et).label),S(At,r(Ye).key),S(ur,` ${r(Ye).value??""}`)},[()=>{var Vt;return Ve(["grid grid-cols-[minmax(0,1fr)_auto] items-center gap-2 rounded-md px-2.5 py-2 transition-colors",((Vt=r(W))==null?void 0:Vt.key)===r(Ye).key?"bg-bg-3 text-fg-0":"text-fg-1 hover:bg-bg-2"].join(" "))}]),_e("click",Ge,()=>Ce(r(Ye).key)),g(qe,rt)}),s(Oe),g(ye,Oe)},it=ye=>{var Oe=l6();$e(Oe,21,()=>r(j),qe=>qe.key,(qe,Ye)=>{const et=y(()=>us(r(Ye)));var rt=s6(),Ge=c(rt),yt=c(Ge),ft=c(yt,!0);s(yt);var pt=u(yt,2),At=c(pt,!0);s(pt),s(Ge);var Pt=u(Ge,2);{var er=Dt=>{var Gt=r6(),Ut=c(Gt);Xt(Ut);var ar=u(Ut);s(Gt),N(()=>{Ma(Ut,r(Ye).value===!0),S(ar,` ${r(Ye).value?"true":"false"}`)}),g(Dt,Gt)},ur=Dt=>{var Gt=o6(),Ut=c(Gt);{var ar=kt=>{var Ht=n6(),Wt=c(Ht,!0);s(Ht);var cr={};N((Qt,Mr)=>{S(Wt,Qt),cr!==(cr=Mr)&&(Ht.value=(Ht.__value=Mr)??"")},[()=>Te(r(Ye)),()=>String(r(Ye).value)]),g(kt,Ht)},fr=y(()=>{var kt;return!((kt=r(et).options)!=null&&kt.includes(String(r(Ye).value)))});V(Ut,kt=>{r(fr)&&kt(ar)})}var vr=u(Ut);$e(vr,17,()=>r(et).options??[],gr,(kt,Ht)=>{var Wt=a6(),cr=c(Wt,!0);s(Wt);var Qt={};N(()=>{S(cr,r(Ht)),Qt!==(Qt=r(Ht))&&(Wt.value=(Wt.__value=r(Ht))??"")}),g(kt,Wt)}),s(Gt);var Yt;ea(Gt),N(kt=>{Ne(Gt,"aria-label",r(et).label),Yt!==(Yt=kt)&&(Gt.value=(Gt.__value=kt)??"",ta(Gt,kt))},[()=>String(r(Ye).value)]),g(Dt,Gt)},Vt=Dt=>{var Gt=i6();Xt(Gt),N(Ut=>{Ne(Gt,"aria-label",r(et).label),Xr(Gt,Ut)},[()=>Te(r(Ye))]),g(Dt,Gt)};V(Pt,Dt=>{r(et).kind==="boolean"?Dt(er):r(et).kind==="enum"?Dt(ur,1):Dt(Vt,-1)})}s(rt),N(Dt=>{var Gt;Pe(rt,1,Dt),Ne(Ge,"aria-current",((Gt=r(J))==null?void 0:Gt.key)===r(Ye).key?"page":void 0),S(ft,r(et).label),S(At,r(Ye).key)},[()=>{var Dt;return Ve(["grid grid-cols-[minmax(0,1fr)_auto] items-center gap-2 rounded-md px-2.5 py-2 transition-colors",((Dt=r(J))==null?void 0:Dt.key)===r(Ye).key?"bg-bg-3 text-fg-0":"text-fg-1 hover:bg-bg-2"].join(" "))}]),_e("click",Ge,()=>m(P,r(Ye).key,!0)),g(qe,rt)}),s(Oe),g(ye,Oe)};V(xt,ye=>{r(l)?ye(mt):r(v)?r(H)?ye(Ot,2):r(O)&&r(he)===0?ye(Zt,3):r(he)===0?ye(pr,4):r(p).id==="secrets"?ye(hr,5):ye(it,-1):ye(wt,1)})}s(Ct);var dt=u(Ct,2),It=c(dt);{var Bt=ye=>{var Oe=c6(),qe=c(Oe);SE(qe,{class:"size-3.5"}),Se(),s(Oe),N(()=>Oe.disabled=r(l)||!r(v)||r(O)||r(k).length===0),_e("click",Oe,Fe),g(ye,Oe)};V(It,ye=>{r(p).id==="config"&&ye(Bt)})}var or=u(It,2),ir=c(or);{var sr=ye=>{var Oe=d6(),qe=u(ze(Oe)),Ye=c(qe,!0);s(qe),Se(),N(()=>S(Ye,r(ee))),g(ye,Oe)},wr=ye=>{var Oe=bt("Requires a Settings read grant.");g(ye,Oe)};V(ir,ye=>{r(v)?ye(sr):ye(wr,-1)})}s(or),s(dt),s(We);var lr=u(We,2),mr=c(lr),Er=c(mr);{var Tr=ye=>{var Oe=u6(),qe=ze(Oe);La(qe,{eyebrow:"Settings",title:"Settings",subtitle:"Checking Settings grants."});var Ye=u(qe,2);Hr(Ye,{get icon(){return Li},title:"Checking settings grants",message:"red-ui is asking reddb which Settings panes this principal can read.",hint:"POST /auth/can"}),g(ye,Oe)},kr=ye=>{var Oe=f6(),qe=ze(Oe);La(qe,{eyebrow:"Settings",title:"Settings",subtitle:"No readable governance surface."});var Ye=u(qe,2);{let et=y(()=>r($)?"No readable settings panes":"No active connection"),rt=y(()=>r($)?"Missing Settings read grant for this principal.":"Start or select a reddb target, then return here to inspect live config."),Ge=y(()=>r(d)??(r($)?"missing Settings read grant":"docker compose -f docker/compose.yml up -d"));Hr(Ye,{get icon(){return Li},get title(){return r(et)},get message(){return r(rt)},get hint(){return r(Ge)}})}g(ye,Oe)},Ir=ye=>{var Oe=q6(),qe=ze(Oe);La(qe,{eyebrow:"Settings",get title(){return r(p).label},get subtitle(){return r(p).blurb},actions:pt=>{var At=v6(),Pt=c(At);{let er=y(()=>r(O)?"size-3.5 animate-spin":"size-3.5");ks(Pt,{get class(){return r(er)}})}Se(),s(At),N(()=>At.disabled=r(O)||!r($)),_e("click",At,ge),g(pt,At)}});var Ye=u(qe,2);{var et=ft=>{{let pt=y(()=>r($)?`Unable to read ${r(p).label.toLowerCase()}`:"No active connection"),At=y(()=>r($)?`The ${r(p).label} pane is intentionally empty because ${r(p).id==="secrets"?"SHOW SECRETS":"SHOW CONFIG"} did not complete.`:"Start or select a reddb target, then return here to inspect live config."),Pt=y(()=>r($)?r(L)??r(ee):"docker compose -f docker/compose.yml up -d");Hr(ft,{get icon(){return fc},get title(){return r(pt)},get message(){return r(At)},get hint(){return r(Pt)}})}},rt=ft=>{var pt=S6(),At=c(pt);{var Pt=Ut=>{Hr(Ut,{get icon(){return Sa},title:"No secret selected",message:"Select a live SHOW SECRETS row to inspect its masked metadata."})},er=Ut=>{var ar=_6(),fr=c(ar);yo(fr,{get title(){return r(M).label},class:"mb-2",icon:ht=>{Sa(ht,{class:"size-3.5"})},meta:ht=>{Ln(ht,{children:(dr,Nr)=>{Se();var Lr=bt("masked");g(dr,Lr)},$$slots:{default:!0}})},$$slots:{icon:!0,meta:!0}});var vr=u(fr,2),Yt=c(vr);xn(Yt,{get title(){return r(M).label},description:"Vault metadata row; plaintext is masked unless break-glass reveal is granted.",get hint(){return r(W).key},wide:!0,action:gt=>{var ht=g6();Xt(ht),N(()=>{Xr(ht,r(B)??r(W).value),Ne(ht,"aria-label",r(M).label)}),g(gt,ht)},$$slots:{action:!0}});var kt=u(Yt,2);xn(kt,{title:"Key",get hint(){return r(W).key},action:gt=>{var ht=p6(),dr=c(ht,!0);s(ht),N(()=>S(dr,r(W).key)),g(gt,ht)},$$slots:{action:!0}});var Ht=u(kt,2);xn(Ht,{title:"Metadata",action:gt=>{var ht=h6(),dr=c(ht);Ln(dr,{children:(Lr,Dr)=>{Se();var Jt=bt();N(()=>S(Jt,r(W).status??"status unknown")),g(Lr,Jt)},$$slots:{default:!0}});var Nr=u(dr,2);Ln(Nr,{children:(Lr,Dr)=>{Se();var Jt=bt();N(()=>S(Jt,`version ${(r(W).version===void 0?"unknown":r(W).version)??""}`)),g(Lr,Jt)},$$slots:{default:!0}}),s(ht),g(gt,ht)},$$slots:{action:!0}});var Wt=u(Ht,2);{var cr=Rt=>{xn(Rt,{title:"Break-glass reveal",description:"Calls reddb's audited UNSEAL VAULT path and clears plaintext after 30 seconds.",action:ht=>{var dr=_t(),Nr=ze(dr);{var Lr=Jt=>{var br=b6(),Or=c(br);eu(Or,{class:"size-3.5"}),Se(),s(br),_e("click",br,be),g(Jt,br)},Dr=Jt=>{var br=x6(),Or=c(br);{let $r=y(()=>r(A)?"size-3.5 animate-pulse":"size-3.5");ru(Or,{get class(){return r($r)}})}Se(),s(br),N(()=>br.disabled=r(A)),_e("click",br,we),g(Jt,br)};V(Nr,Jt=>{r(B)!==null?Jt(Lr):Jt(Dr,-1)})}g(ht,dr)},$$slots:{action:!0}})};V(Wt,Rt=>{r(z)&&Rt(cr)})}var Qt=u(Wt,2);{var Mr=Rt=>{xn(Rt,{title:"Authoring",description:"Delete the selected vault secret through DELETE SECRET.",action:ht=>{var dr=m6(),Nr=c(dr);Ra(Nr,{class:"size-3.5"}),Se(),s(dr),N(()=>dr.disabled=r(T)),_e("click",dr,Le),g(ht,dr)},$$slots:{action:!0}})};V(Qt,Rt=>{r(D)&&Rt(Mr)})}s(vr),s(ar),g(Ut,ar)};V(At,Ut=>{!r(W)||!r(M)?Ut(Pt):Ut(er,-1)})}var ur=u(At,2);{var Vt=Ut=>{var ar=y6(),fr=c(ar);ra(fr,{class:"size-3 shrink-0"});var vr=u(fr,2),Yt=c(vr,!0);s(vr),s(ar),N(kt=>{Pe(ar,1,kt),S(Yt,r(R).message)},[()=>Ve(["inline-flex max-w-full items-center gap-1.5 rounded-md border px-2.5 py-1.5 font-mono text-[11px]",r(R).tone==="ok"?"border-ok/30 bg-ok/5 text-ok":"border-danger/30 bg-danger/5 text-danger"].join(" "))]),g(Ut,ar)};V(ur,Ut=>{var ar;r(R)&&r(R).key===((ar=r(W))==null?void 0:ar.key)&&Ut(Vt)})}var Dt=u(ur,2);{var Gt=Ut=>{var ar=k6(),fr=ze(ar);{var vr=gt=>{var ht=w6(),dr=c(ht);ra(dr,{class:"size-3 shrink-0"});var Nr=u(dr,2),Lr=c(Nr,!0);s(Nr),s(ht),N(Dr=>{Pe(ht,1,Dr),S(Lr,r(q).message)},[()=>Ve(["inline-flex max-w-full items-center gap-1.5 rounded-md border px-2.5 py-1.5 font-mono text-[11px]",r(q).tone==="ok"?"border-ok/30 bg-ok/5 text-ok":"border-danger/30 bg-danger/5 text-danger"].join(" "))]),g(gt,ht)};V(fr,gt=>{var ht;((ht=r(q))==null?void 0:ht.paneId)==="secrets"&>(vr)})}var Yt=u(fr,2),kt=c(Yt);yo(kt,{title:"Set secret",class:"mb-2",icon:ht=>{Ta(ht,{class:"size-3.5"})},$$slots:{icon:!0}});var Ht=u(kt,2),Wt=c(Ht);Xt(Wt);var cr=u(Wt,2);Xt(cr);var Qt=u(cr,2),Mr=c(Qt),Rt=c(Mr);uc(Rt,{class:"size-3.5"}),Se(),s(Mr),s(Qt),s(Ht),s(Yt),N(gt=>{Xr(Wt,r(I)),Wt.disabled=r(T),Xr(cr,r(_)),cr.disabled=r(T),Mr.disabled=gt},[()=>r(T)||!r(I).trim()||!r(_)]),_e("input",Wt,gt=>m(I,gt.currentTarget.value,!0)),_e("input",cr,gt=>m(_,gt.currentTarget.value,!0)),_e("click",Mr,Ae),g(Ut,ar)};V(Dt,Ut=>{r(D)&&Ut(Gt)})}s(pt),g(ft,pt)},Ge=ft=>{Hr(ft,{get icon(){return Cv},title:"No config entry selected",message:"Select a live SHOW CONFIG row to inspect its read-only control."})},yt=ft=>{var pt=F6(),At=c(pt);yo(At,{get title(){return r(X).label},class:"mb-2",icon:Yt=>{var kt=_t(),Ht=ze(kt);{var Wt=Qt=>{Ev(Qt,{class:"size-3.5"})},cr=Qt=>{CE(Qt,{class:"size-3.5"})};V(Ht,Qt=>{r(X).kind==="secret-reference"?Qt(Wt):Qt(cr,-1)})}g(Yt,kt)},meta:Yt=>{Ln(Yt,{children:(kt,Ht)=>{Se();var Wt=bt();N(()=>S(Wt,r(X).kind)),g(kt,Wt)},$$slots:{default:!0}})},$$slots:{icon:!0,meta:!0}});var Pt=u(At,2),er=c(Pt);xn(er,{get title(){return r(X).label},get description(){return r(X).description},get hint(){return r(J).key},wide:!0,action:vr=>{var Yt=_t(),kt=ze(Yt);{var Ht=Rt=>{var gt=C6(),ht=c(gt);Xt(ht);var dr=u(ht);s(gt),N(()=>{Ma(ht,r(K)?r(oe)==="true":r(J).value===!0),ht.disabled=!r(K)||r(T),S(dr,` ${(r(K)?r(oe):r(J).value?"true":"false")??""}`)}),_e("change",ht,Nr=>m(oe,Nr.currentTarget.checked?"true":"false",!0)),g(Rt,gt)},Wt=Rt=>{var gt=z6(),ht=c(gt);{var dr=Jt=>{var br=E6(),Or=c(br,!0);s(br);var $r={};N((tn,Ft)=>{S(Or,tn),$r!==($r=Ft)&&(br.value=(br.__value=Ft)??"")},[()=>Te(r(J)),()=>String(r(J).value)]),g(Jt,br)},Nr=y(()=>{var Jt;return!((Jt=r(X).options)!=null&&Jt.includes(String(r(J).value)))});V(ht,Jt=>{r(Nr)&&Jt(dr)})}var Lr=u(ht);$e(Lr,17,()=>r(X).options??[],gr,(Jt,br)=>{var Or=M6(),$r=c(Or,!0);s(Or);var tn={};N(()=>{S($r,r(br)),tn!==(tn=r(br))&&(Or.value=(Or.__value=r(br))??"")}),g(Jt,Or)}),s(gt);var Dr;ea(gt),N(Jt=>{gt.disabled=!r(K)||r(T),Dr!==(Dr=Jt)&&(gt.value=(gt.__value=Jt)??"",ta(gt,Jt))},[()=>r(K)?r(oe):String(r(J).value)]),_e("change",gt,Jt=>m(oe,Jt.currentTarget.value,!0)),g(Rt,gt)},cr=Rt=>{var gt=N6();Da(gt),N(ht=>{gt.readOnly=!r(K),gt.disabled=r(T),Xr(gt,ht)},[()=>r(K)?r(oe):Xe(r(J).value)]),_e("input",gt,ht=>m(oe,ht.currentTarget.value,!0)),g(Rt,gt)},Qt=Rt=>{var gt=T6();Xt(gt),N(ht=>Xr(gt,ht),[()=>Te(r(J))]),g(Rt,gt)},Mr=Rt=>{var gt=I6();Xt(gt),N(ht=>{gt.readOnly=!r(K),gt.disabled=r(T),Ne(gt,"type",(r(X).kind==="number","text")),Xr(gt,ht)},[()=>r(K)?r(oe):Te(r(J))]),_e("input",gt,ht=>m(oe,ht.currentTarget.value,!0)),g(Rt,gt)};V(kt,Rt=>{r(X).kind==="boolean"?Rt(Ht):r(X).kind==="enum"?Rt(Wt,1):r(X).kind==="list"?Rt(cr,2):r(X).kind==="secret-reference"?Rt(Qt,3):Rt(Mr,-1)})}g(vr,Yt)},$$slots:{action:!0}});var ur=u(er,2);xn(ur,{title:"Key",get hint(){return r(J).key},action:vr=>{var Yt=A6(),kt=c(Yt,!0);s(Yt),N(()=>S(kt,r(J).key)),g(vr,Yt)},$$slots:{action:!0}});var Vt=u(ur,2);xn(Vt,{title:"Schema",action:vr=>{var Yt=L6(),kt=c(Yt);Ln(kt,{children:(Wt,cr)=>{Se();var Qt=bt();N(()=>S(Qt,r(X).valueType??"runtime type")),g(Wt,Qt)},$$slots:{default:!0}});var Ht=u(kt,2);Ln(Ht,{children:(Wt,cr)=>{Se();var Qt=bt();N(()=>S(Qt,`schema ${(r(X).schemaVersion===void 0?"unknown":r(X).schemaVersion)??""}`)),g(Wt,Qt)},$$slots:{default:!0}}),s(Yt),g(vr,Yt)},$$slots:{action:!0}});var Dt=u(Vt,2);{var Gt=fr=>{xn(fr,{title:"Authoring",description:"Submit changes through SET CONFIG or unset through DELETE CONFIG.",action:Yt=>{var kt=O6(),Ht=c(kt),Wt=c(Ht);uc(Wt,{class:"size-3.5"}),Se(),s(Ht);var cr=u(Ht,2),Qt=c(cr);Ra(Qt,{class:"size-3.5"}),Se(),s(cr),s(kt),N(()=>{Ht.disabled=r(T)||r(X).kind==="secret-reference",Ne(Ht,"title",r(X).kind==="secret-reference"?"Secret references can be unset, but not edited as plaintext config.":"Save config value"),cr.disabled=r(T)}),_e("click",Ht,ce),_e("click",cr,se),g(Yt,kt)},$$slots:{action:!0}})};V(Dt,fr=>{r(K)&&fr(Gt)})}s(Pt);var Ut=u(Pt,2);{var ar=fr=>{var vr=H6(),Yt=ze(vr);{var kt=zt=>{var $t=P6(),_r=c($t);ra(_r,{class:"size-3 shrink-0"});var rn=u(_r,2),Tn=c(rn,!0);s(rn),s($t),N(ma=>{Pe($t,1,ma),S(Tn,r(q).message)},[()=>Ve(["mt-3 inline-flex max-w-full items-center gap-1.5 rounded-md border px-2.5 py-1.5 font-mono text-[11px]",r(q).tone==="ok"?"border-ok/30 bg-ok/5 text-ok":"border-danger/30 bg-danger/5 text-danger"].join(" "))]),g(zt,$t)};V(Yt,zt=>{var $t;(($t=r(q))==null?void 0:$t.paneId)==="config"&&zt(kt)})}var Ht=u(Yt,2),Wt=c(Ht);yo(Wt,{title:"Set config key",class:"mb-2",icon:$t=>{Ta($t,{class:"size-3.5"})},$$slots:{icon:!0}});var cr=u(Wt,2),Qt=c(cr),Mr=c(Qt);Xt(Mr);var Rt=u(Mr,2),gt=c(Rt);gt.value=gt.__value="text";var ht=u(gt);ht.value=ht.__value="number";var dr=u(ht);dr.value=dr.__value="boolean";var Nr=u(dr);Nr.value=Nr.__value="list",s(Rt);var Lr;ea(Rt),s(Qt);var Dr=u(Qt,2);{var Jt=zt=>{var $t=D6(),_r=c($t);Xt(_r);var rn=u(_r);s($t),N(()=>{Ma(_r,r(U)==="true"),_r.disabled=r(T),S(rn,` ${r(U)==="true"?"true":"false"}`)}),_e("change",_r,Tn=>m(U,Tn.currentTarget.checked?"true":"false",!0)),g(zt,$t)},br=zt=>{var $t=R6();Da($t),N(()=>{Xr($t,r(U)),$t.disabled=r(T)}),_e("input",$t,_r=>m(U,_r.currentTarget.value,!0)),g(zt,$t)},Or=zt=>{var $t=V6();Xt($t),N(()=>{Xr($t,r(U)),Ne($t,"placeholder",r(ue)==="number"?"1000":"value"),$t.disabled=r(T)}),_e("input",$t,_r=>m(U,_r.currentTarget.value,!0)),g(zt,$t)};V(Dr,zt=>{r(ue)==="boolean"?zt(Jt):r(ue)==="list"?zt(br,1):zt(Or,-1)})}var $r=u(Dr,2),tn=c($r),Ft=c(tn);Ta(Ft,{class:"size-3.5"}),Se(),s(tn),s($r),s(cr),s(Ht),N(zt=>{Xr(Mr,r(Q)),Mr.disabled=r(T),Rt.disabled=r(T),Lr!==(Lr=r(ue))&&(Rt.value=(Rt.__value=r(ue))??"",ta(Rt,r(ue))),tn.disabled=zt},[()=>r(T)||!r(Q).trim()]),_e("input",Mr,zt=>m(Q,zt.currentTarget.value,!0)),_e("change",Rt,zt=>m(ue,zt.currentTarget.value,!0)),_e("click",tn,ve),g(fr,vr)};V(Ut,fr=>{r(K)&&fr(ar)})}s(pt),g(ft,pt)};V(Ye,ft=>{r(H)?ft(et):r(p).id==="secrets"?ft(rt,1):!r(J)||!r(X)?ft(Ge,2):ft(yt,-1)})}g(ye,Oe)};V(Er,ye=>{r(l)?ye(Tr):r(v)?ye(Ir,-1):ye(kr,1)})}s(mr),s(lr),s(ct),s(lt),N(ye=>{Ne(We,"aria-label",`${r(p).label} entries`),Ne(Mt,"placeholder",ye),Xr(Mt,r(w)),Mt.disabled=r(l)||!r(v)||r(H)},[()=>`Search ${r(p).label.toLowerCase()} ⌘K`]),_e("input",Mt,ye=>re(ye.currentTarget.value)),_e("keydown",Mt,ye=>{ye.key==="Escape"&&(re(""),ye.currentTarget.blur())}),g(t,lt),at()}nr(["input","keydown","click","change"]);const bc="var(--reddb-font-family-sans)",xc="var(--reddb-font-family-mono)",Fs=[{name:"reddb",label:"Reddb",description:"The canonical Design System application appearance.",colors:{bg:"var(--reddb-color-background)",accent:"var(--reddb-color-primary)",fg:"var(--reddb-color-foreground)"},typography:{sans:bc,mono:xc}},{name:"nocturne",label:"Nocturne",description:"Indigo-tinted midnight with a violet accent.",colors:{bg:"#0a0b14",accent:"#7c5cff",fg:"#f5f6fb"},typography:{sans:bc,mono:xc}}],qs=Fs[0],Mf="red-ui-skin";function mc(t){return Fs.find(e=>e.name===t)??qs}function _n(t,e,n){return`color-mix(in srgb, ${t} ${e}%, ${n})`}function Oi(t,e){return`color-mix(in srgb, ${t} ${e}%, transparent)`}const Pi=[0,4,9,15],Di=[6,13,22],Ri=[100,78,58,45];function vs(t){const{bg:e,accent:n,fg:a}=t.colors,o="#ffffff";return{"--color-bg-0":e,"--color-bg-1":_n(o,Pi[1],e),"--color-bg-2":_n(o,Pi[2],e),"--color-bg-3":_n(o,Pi[3],e),"--color-fg-0":a,"--color-fg-1":_n(a,Ri[1],e),"--color-fg-2":_n(a,Ri[2],e),"--color-fg-3":_n(a,Ri[3],e),"--color-line-1":_n(o,Di[0],e),"--color-line-2":_n(o,Di[1],e),"--color-line-3":_n(o,Di[2],e),"--color-accent":n,"--color-accent-soft":Oi(n,12),"--color-accent-glow":Oi(n,45),"--color-ambient-glow":Oi(n,6),"--color-role-primary":n,"--color-role-replica":"var(--reddb-color-feedback-info-foreground)","--color-role-embedded":"var(--reddb-color-feedback-success-foreground)","--color-ok":"var(--reddb-color-feedback-success-foreground)","--color-warn":"var(--reddb-color-feedback-warning-foreground)","--color-danger":"var(--reddb-color-feedback-danger-foreground)","--color-info":"var(--reddb-color-feedback-info-foreground)","--font-sans":t.typography.sans,"--font-mono":t.typography.mono}}function _c(t,e){const n={background:"--color-bg-0","elevation-base-surface":"--color-bg-1",muted:"--color-bg-2","elevation-raised-surface":"--color-bg-3",foreground:"--color-fg-0","ink-muted":"--color-fg-2","border-subtle":"--color-line-1","control-edge":"--color-line-2","border-strong":"--color-line-3",primary:"--color-accent","primary-text":"--color-accent"};for(const a of Object.keys(vs(t)))e.style.removeProperty(a);for(const a of Object.keys(n))e.style.removeProperty(`--reddb-color-${a}`);if(t.name!==qs.name){const a=vs(t);for(const[o,i]of Object.entries(a))e.style.setProperty(o,i);for(const[o,i]of Object.entries(n))e.style.setProperty(`--reddb-color-${o}`,a[i])}e.dataset.theme="application",e.dataset.colorScheme="dark"}function B6(){return typeof localStorage>"u"?null:localStorage.getItem(Mf)}function U6(t){typeof localStorage>"u"||localStorage.setItem(Mf,t)}function yc(t){return t??(typeof document<"u"?document.documentElement:null)}var ro;class W6{constructor(){je(this,ro,me(jt(qs)));qt(this,"target",null)}get current(){return r(pe(this,ro))}set current(e){m(pe(this,ro),e,!0)}init(e){this.target=yc(e);const n=B6();n&&(this.current=mc(n),this.target&&_c(this.current,this.target))}select(e){const n=mc(e);this.current=n;const a=yc(this.target);a&&(this.target=a,_c(n,a)),U6(n.name)}}ro=new WeakMap;const gs=new W6;var G6=x('<span class="inline-flex items-center gap-1 rounded-full bg-accent-soft px-2 py-0.5 text-[10px] font-mono uppercase tracking-wider text-primary-text"><!> Active</span>'),Y6=x('<button type="button"><div class="rounded-md overflow-hidden border border-line-1"><div class="bg-bg-0 p-3"><div class="flex items-center gap-1.5 mb-2.5"><span class="size-2 rounded-full" style="background: var(--color-accent)"></span> <span class="h-1.5 w-12 rounded-full bg-bg-3"></span> <span class="ml-auto h-1.5 w-6 rounded-full bg-bg-2"></span></div> <div class="rounded-md bg-bg-1 border border-line-2 p-2.5"><div class="h-1.5 w-2/3 rounded-full bg-fg-2 mb-2"></div> <div class="h-1.5 w-full rounded-full bg-bg-3 mb-1.5"></div> <div class="h-1.5 w-4/5 rounded-full bg-bg-3 mb-2.5"></div> <div class="flex items-center gap-1.5"><span class="h-4 w-12 rounded" style="background: var(--color-accent)"></span> <span class="h-4 w-8 rounded bg-bg-2 border border-line-2"></span></div></div></div> <div class="flex h-2.5"><span class="flex-1 bg-bg-0"></span> <span class="flex-1 bg-bg-1"></span> <span class="flex-1 bg-bg-2"></span> <span class="flex-1 bg-bg-3"></span></div></div> <div class="flex items-center gap-2 mt-3"><span class="type-h2 text-fg-0"> </span> <!></div> <p class="type-caption m-0 mt-1"> </p></button>'),$6=x('<div class="h-full overflow-auto bg-bg-0 p-6 text-fg-1"><!> <div class="grid grid-cols-[repeat(auto-fill,minmax(260px,1fr))] gap-4 max-w-4xl"></div></div>');function X6(t,e){nt(e,!0);function n(d){return Object.entries(vs(d)).map(([f,v])=>`${f}: ${v}`).join("; ")}const a=y(()=>gs.current.name);var o=$6(),i=c(o);La(i,{eyebrow:"Settings",title:"Appearance",subtitle:"Pick a skin. Surfaces are derived from a single seed; the accent stays surgical. Dark only."});var l=u(i,2);$e(l,21,()=>Fs,d=>d.name,(d,f)=>{const v=y(()=>r(f).name===r(a));var p=Y6(),b=c(p),h=u(b,2),w=c(h),k=c(w,!0);s(w);var C=u(w,2);{var P=Z=>{var G=G6(),T=c(G);Pc(T,{class:"size-3"}),Se(),s(G),g(Z,G)};V(C,Z=>{r(v)&&Z(P)})}s(h);var Y=u(h,2),O=c(Y,!0);s(Y),s(p),N(Z=>{Ne(p,"aria-pressed",r(v)),Pe(p,1,`group text-left rounded-lg border bg-bg-1 p-3 transition-colors ${r(v)?"border-accent":"border-line-2 hover:border-line-3"}`),yr(b,Z),S(k,r(f).label),S(O,r(f).description)},[()=>n(r(f))]),_e("click",p,()=>gs.select(r(f).name)),g(d,p)}),s(l),s(o),g(t,o),at()}nr(["click"]);const wc="red-ui-workspace-session";class Z6{constructor(e=1e3,n=null){qt(this,"_timer",null);qt(this,"debounceMs");qt(this,"_storage");this.debounceMs=e,this._storage=n}_store(){return this._storage?this._storage:typeof localStorage<"u"?localStorage:null}_write(e){var n;try{(n=this._store())==null||n.setItem(wc,JSON.stringify(e))}catch{}}schedule(e){this._timer!==null&&clearTimeout(this._timer),this._timer=setTimeout(()=>{this._timer=null,this._write(e)},this.debounceMs)}flush(e){this._timer!==null&&(clearTimeout(this._timer),this._timer=null),this._write(e)}restore(){var e;try{const n=(e=this._store())==null?void 0:e.getItem(wc);if(!n)return null;const a=JSON.parse(n);return typeof a.view!="string"?null:a}catch{return null}}}const ko=new Z6;var Q6=x('<div class="flex h-full items-center justify-center font-mono text-[12px] text-fg-3">loading analytics…</div>'),J6=x('<div class="app relative grid grid-rows-[44px_32px_1fr] h-screen"><!> <!> <!> <main class="relative overflow-hidden z-[1]"><!></main> <!> <!> <!> <!></div>'),eM=x("<!> <!> <!>",1);function uM(t,e){nt(e,!0);let n=Re(e,"showConnect",3,!0),a=Re(e,"persistTheme",3,!0);const o=eh(e.router??nd());e.connectionProvider&&Mv(e.connectionProvider);function i(T){const q=T;if(q==="query"||q==="collections"||q==="cluster"||q==="security"||q==="settings"||q==="appearance"){o.go({view:q},void 0,!0);return}const ne=Jp(T.startsWith("/")?T:`/${T}`);ne.collection?o.go({view:"collection",collection:ne.collection,subpage:ne.subpage??"table"},void 0,!0):o.go({view:ne.view},void 0,!0)}function l(){return{view:o.view,collection:o.collection,subpage:o.subpage,tabs:Kt.tabs,activeTabId:Kt.activeId}}function d(T){T.tabs.length>0&&Kt.hydrate(T.tabs,T.activeTabId),o.go(T.collection?{view:"collection",collection:T.collection,subpage:T.subpage??"table"}:{view:T.view},void 0,!0)}vn(()=>{e.connectionProvider?Be.adoptInjected().then(()=>{e.initialRoute&&i(e.initialRoute)}):Be.bootstrap().then(T=>{if(T)i(T);else{const q=ko.restore();q&&d(q)}})});let f=me(!1),v=me(!1);vn(()=>{const T=()=>m(v,!0);return window.addEventListener("red:open-pending-changes",T),()=>window.removeEventListener("red:open-pending-changes",T)}),vn(()=>{if(typeof window>"u"||!("__TAURI_INTERNALS__"in window||"__TAURI__"in window))return;let T;return co(async()=>{const{listen:q}=await import("./CHvQYbpl.js");return{listen:q}},__vite__mapDeps([0,1]),import.meta.url).then(({listen:q})=>q("deep-link",async ne=>{var U;const oe=(U=ne.payload)==null?void 0:U[0];if(!oe)return;let Q=oe,ue=null;try{const E=oe.replace(/^reds?(\+[a-z]+)?:\/\//,"http://");ue=new URL(E).searchParams.get("to"),ue&&(Q=oe.split("?")[0])}catch{}await Be.tryConnect(Mc(Q)),ue&&i(ue)})).then(q=>{T=q}),()=>{T==null||T()}}),Lt(()=>{const T=Be.client;if(!T){Pr.setExecutor(null),Ur.setExecutor(null);return}Ur.setExecutor((q,ne)=>zv(T,q,ne)),Pr.setExecutor(async q=>Promise.all(q.map(async ne=>{try{const oe=await T.query(ws(ne));return oe.ok?{id:ne.id,ok:!0}:{id:ne.id,ok:!1,error:oe.error??"query failed"}}catch(oe){return{id:ne.id,ok:!1,error:oe.message}}})))});const p=5e3;Rn.init({target:e.themeTarget??null,persist:a(),initial:e.initialTheme}),gs.init(e.themeTarget??null),Lt(()=>{if(xr.locked||!Be.targetResolved)return;const T=()=>{Be.client&&Be.refresh()};on(T);const q=setInterval(T,p);return()=>clearInterval(q)}),Lt(()=>{xr.store&&Be.hydrateUrls()}),Lt(()=>{if(!r(f))return;const T=l();ko.schedule(T)}),vn(()=>{const T=()=>{r(f)&&ko.flush(l())};return document.addEventListener("visibilitychange",T),window.addEventListener("blur",T),()=>{document.removeEventListener("visibilitychange",T),window.removeEventListener("blur",T)}}),vn(()=>{if(typeof window>"u"||!("__TAURI_INTERNALS__"in window||"__TAURI__"in window))return;let T;return co(async()=>{const{listen:q}=await import("./CHvQYbpl.js");return{listen:q}},__vite__mapDeps([0,1]),import.meta.url).then(({listen:q})=>q("close-request",async()=>{ko.flush(l());const{getCurrentWindow:ne}=await co(async()=>{const{getCurrentWindow:oe}=await import("./D02PB2u7.js");return{getCurrentWindow:oe}},__vite__mapDeps([2,1,0]),import.meta.url);await ne().destroy()})).then(q=>{T=q}),()=>{T==null||T()}});function b(){const T=Ur.nextLabel(),q=Kt.open({kind:"query",label:T,key:T},!0);Ur.ensure(q.id)}async function h(T,q){const ne=Kt.tabs.find(Q=>Q.kind==="collection"&&Q.key===T);ne?Kt.open({kind:"collection",label:T,key:T,capability:ne.capability,overrideCapability:ne.overrideCapability,showSystemColumns:ne.showSystemColumns,subpage:q??ne.subpage}):Kt.open({kind:"collection",label:T,key:T,capability:"table",subpage:q??void 0});const oe=Be.client;if(!oe){q||o.go({view:"collection",collection:T,subpage:"table"},void 0,!0);return}try{const Q=await fd(oe,T),ue=Kt.tabs.find(E=>E.kind==="collection"&&E.key===T),U=q??za(Q);ue&&(Kt.tabs=Kt.tabs.map(E=>E===ue?{...E,capability:Q,subpage:U}:E)),q||o.go({view:"collection",collection:T,subpage:U},void 0,!0)}catch{q||o.go({view:"collection",collection:T,subpage:"table"},void 0,!0)}}let w=null,k=null;Lt(()=>{const T=o.view,q=o.collection,ne=o.subpage;if(T==="collections"&&q){const oe=`${q}::${ne??""}`;oe!==k&&(k=oe,on(()=>void h(q,ne)))}else k=null;T==="query"&&w!=="query"&&on(()=>b()),w=T});var C=eM(),P=ze(C);{var Y=T=>{Pv(T,{onDone:()=>m(f,!0)})},O=T=>{var q=J6(),ne=c(q);sg(ne,{});var oe=u(ne,2);ah(oe,{get showConnect(){return n()}});var Q=u(oe,2);yh(Q,{});var ue=u(Q,2),U=c(ue);{var E=j=>{LC(j,{})},I=j=>{lC(j,{})},_=j=>{kE(j,{})},A=j=>{var le=_t(),he=ze(le);Iv(he,()=>co(()=>import("./BVwWA3xx.js"),__vite__mapDeps([3,4,5,6,7,8,9,10,11,12,13,14,15,16]),import.meta.url),ie=>{var J=Q6();g(ie,J)},(ie,J)=>{var W=y(()=>{var{default:D}=r(J);return{AnalyticsView:D}}),X=y(()=>r(W).AnalyticsView),M=_t(),K=ze(M);ba(K,()=>r(X),(D,z)=>{z(D,{})}),g(ie,M)}),g(j,le)},R=j=>{j6(j,{})},te=j=>{X6(j,{})},F=j=>{_y(j)};V(U,j=>{o.view==="ask"?j(E):o.view==="cluster"?j(I,1):o.view==="security"?j(_,2):o.view==="analytics"?j(A,3):o.view==="settings"?j(R,4):o.view==="appearance"?j(te,5):j(F,-1)})}s(ue);var $=u(ue,2);Mh($,{});var ee=u($,2);Lh(ee,{});var L=u(ee,2);Fh(L,{});var H=u(L,2);Yh(H,{get open(){return r(v)},onClose:()=>m(v,!1)}),s(q),g(T,q)};V(P,T=>{r(f)?T(O,-1):T(Y)})}var Z=u(P,2);Fv(Z,{});var G=u(Z,2);og(G,{}),g(t,C),at()}export{Fr as B,ed as C,Un as L,La as P,ks as R,uM as W,Ia as a,el as b,fn as c,Ic as i,Jp as p,es as r,sl as t};
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./CHvQYbpl.js","./DhEqZVGG.js","./D02PB2u7.js","./CgeUbXx3.js","./Bzak7iHL.js","./CGFL56WJ.js","./DIeogL5L.js","./nuKvOE41.js","./DCJ0QyYH.js","./1hmJRUuc.js","./CN4cKZHK.js","./Btd6PFkC.js","./BRBZjpE2.js","../assets/link-2.RXcH7ryE.css","./69_IOA4Y.js","./DRlh90Cv.js","../assets/AnalyticsView.BLAJezw4.css"])))=>i.map(i=>d[i]);
|
|
2
|
+
var Nf=Object.defineProperty;var Ks=t=>{throw TypeError(t)};var Tf=(t,e,n)=>e in t?Nf(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n;var qt=(t,e,n)=>Tf(t,typeof e!="symbol"?e+"":e,n),ui=(t,e,n)=>e.has(t)||Ks("Cannot "+n);var pe=(t,e,n)=>(ui(t,e,"read from private field"),n?n.call(t):e.get(t)),je=(t,e,n)=>e.has(t)?Ks("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(t):e.set(t,n),$n=(t,e,n,a)=>(ui(t,e,"write to private field"),a?a.call(t,n):e.set(t,n),n),js=(t,e,n)=>(ui(t,e,"access private method"),n);import{p as Re,s as st,r as Je,b as ln,c as ba,_ as co}from"./CN4cKZHK.js";import"./Bzak7iHL.js";import{a as vn,o as Zo}from"./Btd6PFkC.js";import{aO as If,aA as Af,b4 as Lf,aF as Dn,aD as Vi,aU as Of,a2 as Pf,aT as Bs,s as Df,br as Hi,bx as Rf,bs as Us,ba as Vf,aK as fi,ac as Ws,e as Hf,bJ as Ff,aR as qf,as as Kf,by as Gs,X as jf,b0 as Ys,a4 as Bf,bG as N,ay as _a,Y as Uf,bd as Wf,aE as $s,f as Gf,az as Yf,aH as $f,q as Xf,aa as Zf,x as Qf,w as Jf,al as ps,bK as on,bf as ev,ad as kc,bk as tv,a8 as rv,bP as Sc,bO as Lt,bi as nv,bj as Xs,at as r,ag as av,b9 as nt,bm as m,aq as ze,b6 as at,bz as me,a6 as c,bw as u,bg as s,bN as y,b8 as jt,b2 as Se,b3 as Zr,bn as hs,av as Qo,bI as Qr,be as Da,aC as ov,am as Cc,ap as Rr,a as Kr,ao as iv}from"./CGFL56WJ.js";import{b as vi,e as _t,a as g,k as x,v as S,h as nr,i as _e,f as sv,r as Fi,t as lv,x as bt,j as Sn,l as Cr}from"./nuKvOE41.js";import{B as cv,i as V}from"./DCJ0QyYH.js";import{j as Pe,k as yr,a as zr,g as Ne,S as no,e as Ve,r as Xt,d as Sr,i as ea,h as Ma,s as ta,c as qi,b as dv,l as Xr,C as bs}from"./BRBZjpE2.js";import{u as uv,n as $e,q as Zs,I as vt,m as fv,X as Ar,h as St,H as Jr,C as tr,a as Ec,t as gr,o as xs,k as Be,d as cn,w as vv,x as gv,J as pv,v as Mc,i as hv,N as bv,S as Gr,A as xr,g as zc,l as za,e as Jo,f as xv,G as mv,s as _v,T as yv,b as gi,D as wv,L as kv,P as Sv,R as Cv,E as Hr,F as Ev,c as Mv,B as zv,z as Nv}from"./1hmJRUuc.js";import"./69_IOA4Y.js";const Tv=[];function Nc(t,e=!1,n=!1){return So(t,new Map,"",Tv,null,n)}function So(t,e,n,a,o=null,i=!1){if(typeof t=="object"&&t!==null){var l=e.get(t);if(l!==void 0)return l;if(t instanceof Map)return new Map(t);if(t instanceof Set)return new Set(t);if(If(t)){var d=Array(t.length);e.set(t,d),o!==null&&e.set(o,d);for(var f=0;f<t.length;f+=1){var v=t[f];f in t&&(d[f]=So(v,e,n,a,null,i))}return d}if(Af(t)===Lf){d={},e.set(t,d),o!==null&&e.set(o,d);for(var p of Object.keys(t))d[p]=So(t[p],e,n,a,null,i);return d}if(t instanceof Date)return structuredClone(t);if(typeof t.toJSON=="function"&&!i)return So(t.toJSON(),e,n,a,t)}if(t instanceof EventTarget)return t;try{return structuredClone(t)}catch{return t}}const Qs=0,Js=1,Iv=2;function Av(t,e,n,a,o){Dn&&Vi();var i=Of(),l=jf,d=i?Gs(l):Ys(l,!1,!1),f=i?Gs(l):Ys(l,!1,!1),v=new cv(t);Pf(()=>{var p=Ws,b=e(),h=!1;let w=Dn&&Bs(b)===(t.data===Df);if(w&&(Hi(Rf()),Us(!1)),Bs(b)){var k=Bf(),C=!1;const P=$=>{if(!h){C=!0,k(!1),Ws===p&&p.deactivate(),Hf.ensure();try{$()}finally{Ff(!1),qf||Kf()}}};b.then($=>{P(()=>{fi(d,$),v.ensure(Js,a&&(O=>a(O,d)))})},$=>{P(()=>{if(fi(f,$),v.ensure(Iv,o&&(O=>o(O,f))),!o)throw f.v})}),Dn?v.ensure(Qs,n):Vf(()=>{C||P(()=>{v.ensure(Qs,n)})})}else fi(d,b),v.ensure(Js,a&&(P=>a(P,d)));return w&&Us(!0),()=>{h=!0}})}function Lv(t,e,n=!1,a=!1,o=!1,i=!1){var l=t,d="";if(n){var f=t;Dn&&(l=Hi(_a(f)))}N(()=>{var v=Uf;if(d===(d=e()??"")){Dn&&Vi();return}if(n&&!Dn){v.nodes=null,f.innerHTML=d,d!==""&&vi(_a(f),f.lastChild);return}if(v.nodes!==null&&(Wf(v.nodes.start,v.nodes.end),v.nodes=null),d!==""){if(Dn){$s.data;for(var p=Vi(),b=p;p!==null&&(p.nodeType!==Gf||p.data!=="");)b=p,p=Yf(p);if(p===null)throw $f(),Xf;vi($s,b),l=Hi(p);return}var h=a?Qf:o?Jf:void 0,w=Zf(a?"svg":o?"math":"template",h);w.innerHTML=d;var k=a||o?w:w.content;if(vi(_a(k),k.lastChild),a||o)for(;_a(k);)l.before(_a(k));else l.before(k)}})}function Vr(t,e,n){ps(()=>{var a=on(()=>e(t,n==null?void 0:n())||{});if(n&&(a!=null&&a.update)){var o=!1,i={};ev(()=>{var l=n();kc(l),o&&tv(i,l)&&(i=l,a.update(l))}),o=!0}if(a!=null&&a.destroy)return()=>a.destroy()})}var zn,la,Ua,$o,Tc;const Xo=class Xo{constructor(e){je(this,$o);je(this,zn,new WeakMap);je(this,la);je(this,Ua);$n(this,Ua,e)}observe(e,n){var a=pe(this,zn).get(e)||new Set;return a.add(n),pe(this,zn).set(e,a),js(this,$o,Tc).call(this).observe(e,pe(this,Ua)),()=>{var o=pe(this,zn).get(e);o.delete(n),o.size===0&&(pe(this,zn).delete(e),pe(this,la).unobserve(e))}}};zn=new WeakMap,la=new WeakMap,Ua=new WeakMap,$o=new WeakSet,Tc=function(){return pe(this,la)??$n(this,la,new ResizeObserver(e=>{for(var n of e){Xo.entries.set(n.target,n);for(var a of pe(this,zn).get(n.target)||[])a(n)}}))},qt(Xo,"entries",new WeakMap);let Ki=Xo;var Ov=new Ki({box:"border-box"});function el(t,e,n){var a=Ov.observe(t,()=>n(t[e]));ps(()=>(on(()=>n(t[e])),a))}function Ic(t=!1){const e=rv,n=e.l.u;if(!n)return;let a=()=>kc(e.s);if(t){let o=0,i={};const l=av(()=>{let d=!1;const f=e.s;for(const v in f)f[v]!==i[v]&&(i[v]=f[v],d=!0);return d&&o++,o});a=()=>r(l)}n.b.length&&Sc(()=>{tl(e,a),Xs(n.b)}),Lt(()=>{const o=on(()=>n.m.map(nv));return()=>{for(const i of o)typeof i=="function"&&i()}}),n.a.length&&Lt(()=>{tl(e,a),Xs(n.a)})}function tl(t,e){if(t.l.s)for(const n of t.l.s)r(n);e()}var Pv=x('<div><div class="flex items-center gap-2 svelte-1js76h4"><div class="w-2 h-2 rounded-full bg-accent shadow-[0_0_12px_var(--color-accent-glow)] svelte-1js76h4"></div> <span class="font-mono font-semibold text-fg-0 text-[15px] tracking-tight">red<span class="text-primary-text mx-px">·</span>ui</span></div></div>');function Dv(t,e){nt(e,!0);let n=me(!0),a=me(0);vn(()=>{const d=setTimeout(()=>m(a,1),20),f=setTimeout(()=>m(a,2),800),v=setTimeout(()=>{var p;m(n,!1),(p=e.onDone)==null||p.call(e)},1e3);return()=>{clearTimeout(d),clearTimeout(f),clearTimeout(v)}});var o=_t(),i=ze(o);{var l=d=>{var f=Pv();let v,p;N(()=>{v=Pe(f,1,"fixed inset-0 z-[9999] grid place-items-center bg-bg-0 transition-opacity duration-200 ease-out svelte-1js76h4",null,v,{"opacity-0":r(a)===2,"opacity-100":r(a)===1,"pointer-events-none":r(a)===2}),p=yr(f,"",p,{opacity:r(a)===0?0:void 0})}),g(d,f)};V(i,d=>{r(n)&&d(l)})}g(t,o),at()}var Rv=x('<span class="ml-1 text-fg-3"> </span>'),Vv=x('<span class="ml-1 text-danger"> </span>'),Hv=x('<li class="flex items-start gap-2 font-mono text-[12px]" data-testid="loading-step"><span aria-hidden="true"></span> <span class="min-w-0 flex-1"><span> </span> <!> <!></span> <span class="shrink-0 tabular-nums text-fg-3" data-testid="loading-step-elapsed"> </span></li>'),Fv=x('<div class="fixed inset-0 z-[9998] grid place-items-center bg-bg-0/85 backdrop-blur-sm" role="status" aria-live="polite" aria-busy="true" data-testid="loading-overlay"><div class="w-[min(460px,90vw)] rounded-lg border border-line-2 bg-bg-1 p-5 shadow-2xl"><div class="flex items-center justify-between gap-3"><div class="flex items-center gap-2 min-w-0"><span class="h-2 w-2 shrink-0 animate-pulse rounded-full bg-accent shadow-[0_0_12px_var(--color-accent-glow)] motion-reduce:animate-none"></span> <span class="truncate font-mono text-[13px] font-semibold text-fg-0"> </span></div> <span class="shrink-0 rounded bg-bg-2 px-1.5 py-0.5 font-mono text-[12px] tabular-nums text-fg-2" data-testid="loading-elapsed"> </span></div> <ol class="mt-4 max-h-[220px] space-y-1.5 overflow-y-auto" data-testid="loading-steps"></ol></div></div>');function qv(t,e){nt(e,!0);let n=Re(e,"store",3,uv),a=Re(e,"revealAfterMs",3,400),o=me(!1),i=me(0);Lt(()=>{if(!n().active){m(o,!1);return}m(i,Date.now(),!0);const b=setTimeout(()=>m(o,!0),a()),h=setInterval(()=>m(i,Date.now(),!0),100);return()=>{clearTimeout(b),clearInterval(h)}});const l=y(()=>n().active?n().elapsedMs(r(i)):0);function d(b){return b.durationMs!==null?b.durationMs:Math.max(0,r(i)-b.startedAt)}var f=_t(),v=ze(f);{var p=b=>{var h=Fv(),w=c(h),k=c(w),C=c(k),P=u(c(C),2),$=c(P,!0);s(P),s(C);var O=u(C,2),Z=c(O,!0);s(O),s(k);var Y=u(k,2);$e(Y,21,()=>n().steps,T=>T.id,(T,q)=>{var ne=Hv(),ie=c(ne);let J;var ue=u(ie,2),U=c(ue);let E;var I=c(U,!0);s(U);var _=u(U,2);{var A=ee=>{var L=Rv(),H=c(L,!0);s(L),N(()=>S(H,r(q).detail)),g(ee,L)};V(_,ee=>{r(q).detail&&ee(A)})}var R=u(_,2);{var te=ee=>{var L=Vv(),H=c(L);s(L),N(()=>S(H,`— ${r(q).error??""}`)),g(ee,L)};V(R,ee=>{r(q).error&&ee(te)})}s(ue);var F=u(ue,2),X=c(F,!0);s(F),s(ne),N(ee=>{J=Pe(ie,1,"mt-[3px] h-1.5 w-1.5 shrink-0 rounded-full",null,J,{"bg-accent":r(q).status==="active","animate-pulse":r(q).status==="active","motion-reduce:animate-none":r(q).status==="active","bg-ok":r(q).status==="done","bg-danger":r(q).status==="error"}),E=Pe(U,1,"text-fg-1",null,E,{"text-fg-0":r(q).status==="active","text-danger":r(q).status==="error"}),S(I,r(q).label),S(X,ee)},[()=>Zs(d(r(q)))]),g(T,ne)}),s(Y),s(w),s(h),N(T=>{S($,n().label??"Opening connection"),S(Z,T)},[()=>Zs(r(l))]),g(b,h)};V(v,b=>{n().active&&r(o)&&b(p)})}g(t,f),at()}function ms(t){return!!t&&typeof t=="object"&&t.available===!1}function jr(t){if(!(t==null||ms(t)))return t}function Kv(t){return ms(t)?t.reason:void 0}function jv(t,e,n){var i,l,d;const a=jr((i=t==null?void 0:t.deployment)==null?void 0:i.process_role)??jr((l=t==null?void 0:t.replication)==null?void 0:l.role)??(e==null?void 0:e.role);if(a==="primary"||a==="replica")return"replicated";const o=jr((d=t==null?void 0:t.deployment)==null?void 0:d.shape);return o==="serverless"?"serverless":o==="embedded"||o==="file"?"embedded":o==="server"?"server":n==="primary"||n==="replica"?"replicated":n==="embedded"?"embedded":n==="standalone"||n==="server"?"server":"unknown"}function Bv(t){const e=t==null?void 0:t.started_at_unix_ms,n=t==null?void 0:t.ready_at_unix_ms;if(e===void 0||n===void 0)return null;const a=n-e;return a>=0?a:null}function Uv(t){const e=t==null?void 0:t.replicas;if(!e||e.length===0)return null;let n=0,a=!1;for(const o of e)typeof o.lag_seconds=="number"&&Number.isFinite(o.lag_seconds)&&(n=Math.max(n,o.lag_seconds),a=!0);return a?n:null}function Wv(t){if(!t)return[];const e=[],n=(a,o,i)=>{if(ms(a)){e.push({path:o,reason:a.reason});return}if(!(i>=4||!a||typeof a!="object"||Array.isArray(a)))for(const[l,d]of Object.entries(a))n(d,o?`${o}.${l}`:l,i+1)};return n(t,"",0),e}const rl=/\[\^(\d+)\]/g;function Gv(t){const e=[],n=[],a=/```[\s\S]*?```|`[^`\n]*`/g;let o;for(;(o=a.exec(t))!==null;)n.push([o.index,o.index+o[0].length]);const i=f=>n.some(([v,p])=>f>=v&&f<p);let l=0,d;for(rl.lastIndex=0;(d=rl.exec(t))!==null;){const f=d.index;f>0&&t[f-1]==="\\"||i(f)||(f>l&&e.push({type:"text",value:t.slice(l,f)}),e.push({type:"cite",marker:Number(d[1])}),l=f+d[0].length)}return l<t.length&&e.push({type:"text",value:t.slice(l)}),e.map(f=>f.type==="text"?{type:"text",value:f.value.replace(/\\([[\]])/g,"$1")}:f)}function Yv(t){const e=/^reddb:([^/]+)\/(.+?)(?:#.*)?$/.exec(t);return e?{collection:e[1],id:e[2]}:null}const $v=[1e3,2e3,4e3,8e3,3e4];class Xv{constructor(e){this.opts=e}subscribe(e={}){return new Zv(this,e)}buildSseUrl(e,n){const a=this.opts.client.baseUrl??"",o=new URLSearchParams;n>0&&o.set("since",String(n)),e&&o.set("collection",e);const i=o.toString();return`${a}/changes/stream${i?`?${i}`:""}`}}class Zv{constructor(e,n){qt(this,"events");qt(this,"controller");qt(this,"closed",!1);qt(this,"lastSeenLsn");qt(this,"currentSse",null);qt(this,"pollTimer",null);qt(this,"reconnectTimer",null);qt(this,"backoffIdx",0);qt(this,"transport",null);this.parent=e,this.opts=n,this.lastSeenLsn=n.sinceLsn??0,this.events=new ReadableStream({start:a=>{this.controller=a},cancel:()=>this.close()}),this.connect()}timers(){return this.parent.opts.timers??{setTimeout:(e,n)=>globalThis.setTimeout(e,n),clearTimeout:e=>globalThis.clearTimeout(e)}}async connect(){if(!this.closed){if(this.transport===null){const e=this.parent.opts.sseFactory;if(e==null)this.transport="rest";else{const n=this.parent.opts.sseProbe??(async()=>!0);let a=!1;try{a=await n()}catch{a=!1}if(this.closed)return;this.transport=a?"sse":"rest"}}this.transport==="sse"?this.startSse():this.startRest()}}startSse(){const e=this.parent.opts.sseFactory;if(!e){this.transport="rest",this.startRest();return}const n=this.parent.buildSseUrl(this.opts.collection,this.lastSeenLsn);let a;try{a=e(n)}catch{this.scheduleReconnect();return}this.currentSse=a,a.onopen=()=>{this.backoffIdx=0},a.onmessage=o=>{try{const i=JSON.parse(o.data);this.emit(i)}catch{}},a.onerror=()=>{if(!this.closed){try{a.close()}catch{}this.currentSse===a&&(this.currentSse=null),this.scheduleReconnect()}}}startRest(){const e=async()=>{if(!this.closed)try{const n=this.opts.collection?await this.parent.opts.client.changes(this.lastSeenLsn,{collection:this.opts.collection}):await this.parent.opts.client.changes(this.lastSeenLsn);if(this.closed)return;for(const o of n)this.emit(o);this.backoffIdx=0;const a=this.parent.opts.pollIntervalMs??1e3;this.pollTimer=this.timers().setTimeout(()=>{this.pollTimer=null,e()},a)}catch{if(this.closed)return;this.scheduleReconnect()}};e()}emit(e){if(!this.closed&&!(e.lsn<=this.lastSeenLsn)){this.lastSeenLsn=e.lsn;try{this.controller.enqueue(e)}catch{this.close()}}}scheduleReconnect(){if(this.closed)return;const e=this.parent.opts.backoffMs??$v,n=e[Math.min(this.backoffIdx,e.length-1)];this.backoffIdx++,this.reconnectTimer=this.timers().setTimeout(()=>{this.reconnectTimer=null,this.transport==="sse"?this.startSse():this.startRest()},n)}close(){if(this.closed)return;if(this.closed=!0,this.currentSse){try{this.currentSse.close()}catch{}this.currentSse=null}const{clearTimeout:e}=this.timers();this.pollTimer&&(e(this.pollTimer),this.pollTimer=null),this.reconnectTimer&&(e(this.reconnectTimer),this.reconnectTimer=null);try{this.controller.close()}catch{}}}const Ac={name:"copy",size:24,node:[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"}]]};Ac.node;function Qv(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Ac}}))}const Lc={name:"trash",size:24,node:[["path",{d:"M10 11v6"}],["path",{d:"M14 11v6"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"}],["path",{d:"M3 6h18"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"}]],aliases:["trash-2"]};Lc.node;function Ra(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Lc}}))}const Oc={name:"check",size:24,node:[["path",{d:"M20 6 9 17l-5-5"}]]};Oc.node;function Pc(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Oc}}))}var Jv=x(`<div class="grid h-24 place-items-center font-mono text-[12px] text-fg-3">No calls yet — the client hasn't asked the database anything.</div>`),eg=x('<span class="ml-1 text-fg-3 break-all"> </span>'),tg=x('<span class="ml-1 text-danger break-all"> </span>'),rg=x('<span class="shrink-0 tabular-nums text-fg-3" title="rows returned"> </span>'),ng=x('<li class="group flex items-start gap-2 px-3 py-1.5 font-mono text-[11px] hover:bg-bg-2/40" data-testid="dev-console-entry"><span aria-hidden="true"></span> <span class="w-11 shrink-0 uppercase text-fg-2"> </span> <span class="min-w-0 flex-1"><span class="text-fg-1"> </span> <!> <!></span> <!> <span class="w-12 shrink-0 text-right tabular-nums text-fg-2" title="duration"> </span> <button type="button" title="Copy entry" aria-label="Copy entry" class="shrink-0 rounded p-0.5 text-fg-3 opacity-0 transition-opacity hover:bg-bg-3/60 hover:text-fg-1 group-hover:opacity-100 focus:opacity-100"><!></button></li>'),ag=x('<ul class="divide-y divide-line-1/60"></ul>'),og=x('<div class="fixed inset-x-0 bottom-0 z-[9990] flex max-h-[45vh] flex-col border-t border-line-2 bg-bg-1 shadow-2xl" role="log" aria-label="Developer console" data-testid="dev-console"><div class="flex items-center justify-between gap-3 border-b border-line-1 bg-bg-2/60 px-3 py-1.5"><div class="flex items-center gap-2 font-mono text-[11px] text-fg-2"><span class="uppercase tracking-wider text-fg-1">Console</span> <span class="text-fg-3" data-testid="dev-console-count"> </span></div> <div class="flex items-center gap-1"><button type="button" title="Clear console" aria-label="Clear console" class="inline-flex items-center gap-1 rounded px-1.5 py-0.5 font-mono text-[11px] text-fg-3 hover:bg-bg-3/60 hover:text-fg-1 transition-colors"><!> Clear</button> <button type="button" title="Close console" aria-label="Close console" class="inline-flex items-center rounded p-0.5 text-fg-3 hover:bg-bg-3/60 hover:text-fg-1 transition-colors"><!></button></div></div> <div class="min-h-0 flex-1 overflow-y-auto"><!></div></div>');function ig(t,e){nt(e,!0);let n=Re(e,"store",3,fv),a=Re(e,"open",3,!1),o=me(jt(a())),i=me(jt([])),l=me(null);Lt(()=>n().subscribe(k=>m(i,k,!0))),Lt(()=>{const k=()=>m(o,!r(o));return window.addEventListener("red:toggle-dev-console",k),()=>window.removeEventListener("red:toggle-dev-console",k)});const d=y(()=>[...r(i)].reverse());async function f(k,C){var P;try{await((P=navigator.clipboard)==null?void 0:P.writeText(k)),m(l,C,!0),setTimeout(()=>{r(l)===C&&m(l,null)},1200)}catch{}}function v(k){const P=[`${k.verb} ${k.target} → ${k.ok?k.status??"ok":"error"} · ${k.durationMs}ms${k.rowCount===void 0?"":` · ${k.rowCount} rows`}`];return k.payload&&P.push(k.payload),k.error&&P.push(k.error),P.join(`
|
|
3
|
+
`)}function p(k){return k>=1e3?`${(k/1e3).toFixed(1)}s`:`${k}ms`}var b=_t(),h=ze(b);{var w=k=>{var C=og(),P=c(C),$=c(P),O=u(c($),2),Z=c(O);s(O),s($);var Y=u($,2),T=c(Y),q=c(T);Ra(q,{class:"size-3"}),Se(),s(T);var ne=u(T,2),ie=c(ne);Ar(ie,{class:"size-3.5"}),s(ne),s(Y),s(P);var J=u(P,2),ue=c(J);{var U=I=>{var _=Jv();g(I,_)},E=I=>{var _=ag();$e(_,21,()=>r(d),A=>A.id,(A,R)=>{var te=ng(),F=c(te);let X;var ee=u(F,2),L=c(ee,!0);s(ee);var H=u(ee,2),j=c(H),le=c(j,!0);s(j);var he=u(j,2);{var oe=be=>{var fe=eg(),Ce=c(fe,!0);s(fe),N(ke=>S(Ce,ke),[()=>r(R).payload.replace(/\s+/g," ").slice(0,120)]),g(be,fe)};V(he,be=>{r(R).payload&&be(oe)})}var Q=u(he,2);{var W=be=>{var fe=tg(),Ce=c(fe);s(fe),N(()=>S(Ce,`— ${r(R).error??""}`)),g(be,fe)};V(Q,be=>{r(R).error&&be(W)})}s(H);var G=u(H,2);{var M=be=>{var fe=rg(),Ce=c(fe);s(fe),N(()=>S(Ce,`${r(R).rowCount??""}r`)),g(be,fe)};V(G,be=>{r(R).rowCount!==void 0&&be(M)})}var K=u(G,2),D=c(K,!0);s(K);var z=u(K,2),B=c(z);{var re=be=>{Pc(be,{class:"size-3 text-ok"})},de=be=>{Qv(be,{class:"size-3"})};V(B,be=>{r(l)===r(R).id?be(re):be(de,-1)})}s(z),s(te),N(be=>{X=Pe(F,1,"mt-[5px] h-1.5 w-1.5 shrink-0 rounded-full",null,X,{"bg-ok":r(R).ok,"bg-danger":!r(R).ok}),S(L,r(R).verb),S(le,r(R).target),S(D,be)},[()=>p(r(R).durationMs)]),_e("click",z,()=>f(v(r(R)),r(R).id)),g(A,te)}),s(_),g(I,_)};V(ue,I=>{r(d).length===0?I(U):I(E,-1)})}s(J),s(C),N(()=>S(Z,`${r(i).length??""} calls`)),_e("click",T,()=>n().clear()),_e("click",ne,()=>m(o,!1)),g(k,C)};V(h,k=>{r(o)&&k(w)})}g(t,b),at()}nr(["click"]);var sg=x('<div class="global-progress" role="progressbar" aria-label="reddb activity" aria-valuetext="Loading"><div class="global-progress__bar"></div></div>');function lg(t,e){nt(e,!1),Ic();var n=_t(),a=ze(n);{var o=i=>{var l=sg();g(i,l)};V(a,i=>{St.active&&i(o)})}g(t,n),at()}var Wa,Ga;class cg{constructor(e,n){je(this,Wa);je(this,Ga);$n(this,Wa,e),$n(this,Ga,sv(n))}get current(){return pe(this,Ga).call(this),pe(this,Wa).call(this)}}Wa=new WeakMap,Ga=new WeakMap;const dg=/\(.+\)/,ug=new Set(["all","print","screen","and","or","not","only"]);class fg extends cg{constructor(e,n){let a=dg.test(e)||e.split(/[\s,]+/).some(i=>ug.has(i.trim()))?e:`(${e})`;const o=window.matchMedia(a);super(()=>o.matches,i=>Fi(o,"change",i))}}const vg=["display","title","heading","body","caption","eyebrow"],Dc={twMergeConfig:{extend:{classGroups:{"font-size":[{text:[...vg,"editable-sm","editable-md","editable-lg"]}]}}}},gg="hover:bg-foreground/8",pg="active:bg-foreground/12",hg="[&[aria-haspopup][aria-expanded=true]]:bg-foreground/10",bg="focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-focus",xg="disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50",mg={muted:"text-ink-muted hover:text-foreground",foreground:"text-foreground",inherit:""},_g={offset:bg,inset:"focus-visible:outline-2 focus-visible:-outline-offset-2 focus-visible:outline-focus"},yg={true:"bg-foreground/10 hover:bg-foreground/10 font-medium text-foreground hover:text-foreground",false:""},_s=Jr({base:["bg-transparent",gg,pg,hg,xg].join(" "),variants:{ink:mg,focus:_g,selected:yg},defaultVariants:{ink:"muted",focus:"offset",selected:!1}},Dc);const nl={tinted:{neutral:"border-transparent bg-muted text-foreground",info:"border-transparent bg-feedback-info-surface text-feedback-info-foreground",success:"border-transparent bg-feedback-success-surface text-feedback-success-foreground",warning:"border-transparent bg-feedback-warning-surface text-feedback-warning-foreground",danger:"border-transparent bg-feedback-danger-surface text-feedback-danger-foreground"},filled:{neutral:"border-transparent bg-foreground text-background",info:"border-transparent bg-feedback-info-foreground text-on-feedback",success:"border-transparent bg-feedback-success-foreground text-on-feedback",warning:"border-transparent bg-feedback-warning-foreground text-on-feedback",danger:"border-transparent bg-feedback-danger-foreground text-on-feedback"},outline:{neutral:"border-muted bg-transparent text-foreground",info:"border-feedback-info-border bg-transparent text-feedback-info-foreground",success:"border-feedback-success-border bg-transparent text-feedback-success-foreground",warning:"border-feedback-warning-border bg-transparent text-feedback-warning-foreground",danger:"border-feedback-danger-border bg-transparent text-feedback-danger-foreground"}},wg="border-transparent bg-primary text-on-primary",kg={neutral:"",info:"",success:"",warning:"",danger:""},Sg={tinted:"",filled:"",outline:"",neutral:"",primary:""},Cg=Jr({base:["inline-flex items-center gap-[var(--reddb-spatial-gap-sm)] rounded-md border px-2 py-0.5","text-xs font-medium leading-tight whitespace-nowrap"].join(" "),variants:{tone:kg,variant:Sg},compoundVariants:[...Object.entries(nl).flatMap(([t,e])=>Object.entries(e).map(([n,a])=>({variant:t,tone:n,class:a}))),...Object.entries(nl.tinted).map(([t,e])=>({variant:"neutral",tone:t,class:e})),{variant:"primary",class:wg}],defaultVariants:{tone:"neutral",variant:"tinted"}});var Eg=x("<span><!></span>");function Fr(t,e){nt(e,!0);const n=Re(e,"tone",3,"neutral"),a=Re(e,"variant",3,"tinted"),o=Je(e,["$$slots","$$events","$$legacy","tone","variant","class","children"]);Lt(()=>{a(),a()});var i=Eg();zr(i,d=>({...o,class:d,"data-badge":!0,"data-tone":n(),"data-variant":a()}),[()=>Cg({tone:n(),variant:a(),class:e.class})]);var l=c(i);tr(l,()=>e.children),s(i),g(t,i),at()}const Mg=Jr({base:"block h-auto max-w-full",variants:{fit:{cover:"object-cover",contain:"object-contain"},position:{center:"object-center",top:"object-top",bottom:"object-bottom",start:"object-left",end:"object-right"}},defaultVariants:{fit:"cover",position:"center"}});function zg(t){if(t.decorative){if(t.alt)throw new Error(`Image: a decorative image renders alt="", so its alt ${JSON.stringify(t.alt)} would be dropped; drop decorative or the alt.`)}else if(typeof t.alt!="string"||t.alt.trim()==="")throw new Error('Image: alt is required; pass decorative to mean the image carries no information (alt="").');if(!(Co(t.width)&&Co(t.height))&&!Co(t.ratio))throw new Error("Image: pass width and height (the intrinsic size) or ratio, so the image reserves its box before it loads.")}function Co(t){return typeof t=="number"&&Number.isFinite(t)&&t>0}function Ng(t){return Co(t.ratio)?t.ratio:t.width/t.height}var Tg=x("<img/>"),Ig=x("<source/>"),Ag=x('<picture data-image-picture="" class="contents"><!> <!></picture>');function Lg(t,e){nt(e,!0);const n=C=>{var P=Tg();zr(P,$=>({...f,src:e.src,alt:a()?"":e.alt,width:e.width,height:e.height,srcset:e.srcset,sizes:e.sizes,loading:e.loading??(i()?"eager":"lazy"),decoding:i()?"sync":"async",fetchpriority:i()?"high":void 0,"data-image":!0,"data-image-priority":i()||void 0,class:r(p),[no]:$}),[()=>({"aspect-ratio":String(r(v))})]),lv(P),g(C,P)},a=Re(e,"decorative",3,!1),o=Re(e,"sources",19,()=>[]),i=Re(e,"priority",3,!1),l=Re(e,"fit",3,"cover"),d=Re(e,"position",3,"center"),f=Je(e,["$$slots","$$events","$$legacy","src","alt","decorative","width","height","ratio","srcset","sizes","sources","priority","loading","fit","position","class"]),v=y(()=>(zg({alt:e.alt,decorative:a(),width:e.width,height:e.height,ratio:e.ratio}),Ng({width:e.width,height:e.height,ratio:e.ratio}))),p=y(()=>Mg({fit:l(),position:d(),class:e.class}));var b=_t(),h=ze(b);{var w=C=>{var P=Ag(),$=c(P);$e($,17,o,Z=>Z.srcset,(Z,Y)=>{var T=Ig();N(()=>{Ne(T,"srcset",r(Y).srcset),Ne(T,"type",r(Y).type),Ne(T,"media",r(Y).media),Ne(T,"sizes",r(Y).sizes??e.sizes)}),g(Z,T)});var O=u($,2);n(O),s(P),g(C,P)},k=C=>{n(C)};V(h,C=>{o().length>0?C(w):C(k,-1)})}g(t,b),at()}const Og={sm:{spinner:"size-[var(--reddb-spatial-icon-size-sm)]",label:"text-xs"},md:{spinner:"size-[var(--reddb-spatial-icon-size-md)]",label:"text-sm"},lg:{spinner:"size-[var(--reddb-spatial-icon-size-lg)]",label:"text-base"}},Pg=Jr({slots:{root:"inline-flex items-center justify-center gap-[var(--reddb-spatial-gap-md)] text-ink-muted",spinner:"motion-safe:animate-spin motion-reduce:animate-pulse text-primary-text",track:"fill-none stroke-current opacity-25 motion-reduce:opacity-50",head:"fill-none stroke-current",label:"leading-tight"},variants:{size:Og,labelHidden:{true:{label:"sr-only"},false:{label:""}}},defaultVariants:{size:"md",labelHidden:!1}});var Dg=x('<div><svg viewBox="0 0 24 24" aria-hidden="true"><circle cx="12" cy="12" r="9" stroke-width="3"></circle><path d="M21 12a9 9 0 0 0-9-9" stroke-width="3" stroke-linecap="round"></path></svg> <span> </span></div>');function Rg(t,e){nt(e,!0);const n=Re(e,"label",3,"Loading…"),a=Re(e,"size",3,"md"),o=Re(e,"labelHidden",3,!1),i=Je(e,["$$slots","$$events","$$legacy","label","size","labelHidden","class"]),l=y(()=>Pg({size:a(),labelHidden:o()}));var d=Dg();zr(d,w=>({...i,"data-loading-indicator":!0,class:w,role:"status","aria-live":"polite","aria-busy":"true"}),[()=>r(l).root({class:e.class})]);var f=c(d),v=c(f),p=u(v);s(f);var b=u(f,2),h=c(b,!0);s(b),s(d),N((w,k,C,P)=>{Pe(f,0,w),Pe(v,0,k),Pe(p,0,C),Pe(b,1,P),S(h,n())},[()=>Ve(r(l).spinner()),()=>Ve(r(l).track()),()=>Ve(r(l).head()),()=>Ve(r(l).label())]),g(t,d),at()}const Vg={outline:{},plain:{root:"border-transparent",header:"border-transparent",footer:"border-transparent"}},Hg={false:{},true:{root:"shadow-elevation-raised"}},Fg={neutral:{root:"bg-elevation-raised-surface text-foreground",header:"text-foreground",title:"text-foreground",description:"text-ink-muted",body:"text-foreground",footer:"text-foreground"},success:{root:"bg-[var(--reddb-color-feedback-success-surface)] text-[var(--reddb-color-feedback-success-foreground)]",header:"text-[var(--reddb-color-feedback-success-foreground)]",title:"text-[var(--reddb-color-feedback-success-foreground)]",description:"text-[var(--reddb-color-feedback-success-foreground)]",body:"text-[var(--reddb-color-feedback-success-foreground)]",footer:"text-[var(--reddb-color-feedback-success-foreground)]"},warning:{root:"bg-[var(--reddb-color-feedback-warning-surface)] text-[var(--reddb-color-feedback-warning-foreground)]",header:"text-[var(--reddb-color-feedback-warning-foreground)]",title:"text-[var(--reddb-color-feedback-warning-foreground)]",description:"text-[var(--reddb-color-feedback-warning-foreground)]",body:"text-[var(--reddb-color-feedback-warning-foreground)]",footer:"text-[var(--reddb-color-feedback-warning-foreground)]"},danger:{root:"bg-[var(--reddb-color-feedback-danger-surface)] text-[var(--reddb-color-feedback-danger-foreground)]",header:"text-[var(--reddb-color-feedback-danger-foreground)]",title:"text-[var(--reddb-color-feedback-danger-foreground)]",description:"text-[var(--reddb-color-feedback-danger-foreground)]",body:"text-[var(--reddb-color-feedback-danger-foreground)]",footer:"text-[var(--reddb-color-feedback-danger-foreground)]"},info:{root:"bg-[var(--reddb-color-feedback-info-surface)] text-[var(--reddb-color-feedback-info-foreground)]",header:"text-[var(--reddb-color-feedback-info-foreground)]",title:"text-[var(--reddb-color-feedback-info-foreground)]",description:"text-[var(--reddb-color-feedback-info-foreground)]",body:"text-[var(--reddb-color-feedback-info-foreground)]",footer:"text-[var(--reddb-color-feedback-info-foreground)]"},brand:{root:"bg-[var(--reddb-color-primary)] text-[var(--reddb-color-on-primary)]",header:"text-[var(--reddb-color-on-primary)]",title:"text-[var(--reddb-color-on-primary)]",description:"text-[var(--reddb-color-on-primary)]",body:"text-[var(--reddb-color-on-primary)]",footer:"text-[var(--reddb-color-on-primary)]"}},qg={none:{header:"p-0",body:"p-0",footer:"p-0"},sm:{header:"p-[var(--reddb-spatial-inset-sm)]",body:"p-[var(--reddb-spatial-inset-sm)]",footer:"p-[var(--reddb-spatial-inset-sm)]"},md:{header:"p-[var(--reddb-spatial-inset-md)]",body:"p-[var(--reddb-spatial-inset-md)]",footer:"p-[var(--reddb-spatial-inset-md)]"}},Kg={start:{footer:"justify-start"},center:{footer:"justify-center"},end:{footer:"justify-end"},between:{footer:"justify-between"}},jg={vertical:{root:"flex flex-col",layout:"flex min-w-0 flex-1 flex-col",media:"w-full",content:"flex min-w-0 flex-1 flex-col"},horizontal:{root:"",layout:"flex min-w-0 flex-1 flex-col @sm/card:flex-row",content:"flex min-w-0 flex-1 flex-col"}},Bg={cover:{media:"[&>*]:object-cover"},contain:{media:"[&>*]:object-contain"}},Ug={center:{media:"[&>*]:object-center"},top:{media:"[&>*]:object-top"},bottom:{media:"[&>*]:object-bottom"},start:{media:"[&>*]:object-left"},end:{media:"[&>*]:object-right"}},Wg={"16/9":{media:"aspect-video [&>*]:h-full"},"4/3":{media:"aspect-[4/3] [&>*]:h-full"},"1/1":{media:"aspect-square [&>*]:h-full"},auto:{media:"aspect-auto [&>*]:h-auto"}},Gg={third:{},"two-fifths":{},half:{},background:{root:"relative isolate",media:"absolute inset-0 size-full",content:"relative z-10"}},Yg=Jr({slots:{root:"@container/card w-full overflow-hidden rounded-lg border",layout:"",media:"relative shrink-0 overflow-hidden [&>*]:block [&>*]:w-full",content:"",header:"flex flex-col gap-[var(--reddb-spatial-gap-sm)] border-b",titleRow:"flex items-center gap-[var(--reddb-spatial-gap-sm)]",icon:"shrink-0",title:"text-base font-medium leading-tight",description:"max-w-prose text-sm",body:"flow-root flex-1 space-y-[var(--reddb-spatial-layout-gap-sm)]",footer:"flex flex-wrap items-center gap-[var(--reddb-spatial-gap-md)] border-t"},variants:{variant:Vg,raised:Hg,tone:Fg,padding:qg,actionsAlign:Kg,orientation:jg,fit:Bg,position:Ug,ratio:Wg,span:Gg},compoundVariants:[{variant:"outline",tone:"neutral",class:{root:"border-muted",header:"border-muted",footer:"border-muted"}},{variant:"outline",tone:"brand",class:{root:"border-[var(--reddb-color-primary)]",header:"border-[var(--reddb-color-primary)]",footer:"border-[var(--reddb-color-primary)]"}},{variant:"outline",tone:"success",class:{root:"border-[var(--reddb-color-feedback-success-border)]",header:"border-[var(--reddb-color-feedback-success-border)]",footer:"border-[var(--reddb-color-feedback-success-border)]"}},{variant:"outline",tone:"warning",class:{root:"border-[var(--reddb-color-feedback-warning-border)]",header:"border-[var(--reddb-color-feedback-warning-border)]",footer:"border-[var(--reddb-color-feedback-warning-border)]"}},{variant:"outline",tone:"danger",class:{root:"border-[var(--reddb-color-feedback-danger-border)]",header:"border-[var(--reddb-color-feedback-danger-border)]",footer:"border-[var(--reddb-color-feedback-danger-border)]"}},{variant:"outline",tone:"info",class:{root:"border-[var(--reddb-color-feedback-info-border)]",header:"border-[var(--reddb-color-feedback-info-border)]",footer:"border-[var(--reddb-color-feedback-info-border)]"}},{raised:!0,tone:"neutral",class:{root:"bg-elevation-raised-surface"}},{raised:!0,variant:"outline",tone:"neutral",class:{root:"border-elevation-raised-border"}},{orientation:"horizontal",span:"third",class:{media:"@sm/card:w-1/3"}},{orientation:"horizontal",span:"two-fifths",class:{media:"@sm/card:w-2/5"}},{orientation:"horizontal",span:"half",class:{media:"@sm/card:w-1/2"}}],defaultVariants:{variant:"outline",raised:!1,tone:"neutral",padding:"md",actionsAlign:"start",orientation:"vertical",fit:"cover",position:"center",ratio:"16/9",span:"two-fifths"}}),$g={"16/9":16/9,"4/3":4/3,"1/1":1};var Xg=x('<p data-card-title=""> </p>'),Zg=x('<div data-card-title-row=""><!> <!></div>'),Qg=x('<p data-card-title=""> </p>'),Jg=x('<p data-card-description=""> </p>'),ep=x("<!> <!>",1),tp=x('<div data-card-header=""><!></div>'),rp=x('<div data-card-footer=""><!></div>'),np=x('<!> <div data-card-body=""><!> <!></div> <!>',1),ap=x('<span data-background-media-scrim="strong" aria-hidden="true" class="pointer-events-none absolute inset-0 bg-background/80"></span>'),op=x('<div data-card-media=""><!> <!></div>'),ip=x('<!> <div data-card-content=""><!></div>',1),sp=x('<div data-card-layout=""><!> <div data-card-content=""><!></div></div>'),lp=x("<div><!></div>");function En(t,e){nt(e,!0);const n=U=>{var E=np(),I=ze(E);{var _=L=>{var H=tp(),j=c(H);{var le=oe=>{var Q=_t(),W=ze(Q);tr(W,()=>e.header),g(oe,Q)},he=oe=>{var Q=ep(),W=ze(Q);{var G=z=>{var B=Zg(),re=c(B);{let fe=y(()=>r(Z).icon());Ec(re,{get icon(){return e.icon},"aria-hidden":"true",get class(){return r(fe)}})}var de=u(re,2);{var be=fe=>{var Ce=Xg(),ke=c(Ce,!0);s(Ce),N(xe=>{Pe(Ce,1,xe),S(ke,e.title)},[()=>Ve(r(Z).title())]),g(fe,Ce)};V(de,fe=>{e.title&&fe(be)})}s(B),N(fe=>Pe(B,1,fe),[()=>Ve(r(Z).titleRow())]),g(z,B)},M=z=>{var B=Qg(),re=c(B,!0);s(B),N(de=>{Pe(B,1,de),S(re,e.title)},[()=>Ve(r(Z).title())]),g(z,B)};V(W,z=>{e.icon?z(G):e.title&&z(M,1)})}var K=u(W,2);{var D=z=>{var B=Jg(),re=c(B,!0);s(B),N(de=>{Pe(B,1,de),S(re,e.description)},[()=>Ve(r(Z).description())]),g(z,B)};V(K,z=>{e.description&&z(D)})}g(oe,Q)};V(j,oe=>{e.header?oe(le):oe(he,-1)})}s(H),N(oe=>Pe(H,1,oe),[()=>Ve(r(Z).header())]),g(L,H)};V(I,L=>{r(T)&&L(_)})}var A=u(I,2),R=c(A);{var te=L=>{Rg(L,{get label(){return d()},get labelHidden(){return f()},size:"sm",class:"mb-[var(--reddb-spatial-gap-sm)]","data-card-busy":!0})};V(R,L=>{l()&&L(te)})}var F=u(R,2);tr(F,()=>e.children??Zr),s(A);var X=u(A,2);{var ee=L=>{var H=rp(),j=c(H);tr(j,()=>e.footer),s(H),N(le=>Pe(H,1,le),[()=>Ve(r(Z).footer())]),g(L,H)};V(X,L=>{e.footer&&L(ee)})}N(L=>Pe(A,1,L),[()=>Ve(r(Z).body())]),g(U,E)},a=U=>{var E=op(),I=c(E);{var _=F=>{var X=_t(),ee=ze(X);tr(ee,()=>e.media),g(F,X)},A=F=>{{let X=y(()=>e.image.ratio??(C()==="auto"?void 0:$g[C()]));Lg(F,st(()=>e.image,{get ratio(){return r(X)},get fit(){return w()},get position(){return k()},get priority(){return $()},class:"size-full"}))}};V(I,F=>{e.media?F(_):e.image&&F(A,1)})}var R=u(I,2);{var te=F=>{var X=ap();g(F,X)};V(R,F=>{P()==="background"&&F(te)})}s(E),N(F=>{Ne(E,"data-card-media-fit",w()),Ne(E,"data-card-media-position",k()),Ne(E,"data-card-media-ratio",C()),Ne(E,"data-card-media-span",P()),Pe(E,1,F)},[()=>Ve(r(Z).media())]),g(U,E)},o=Re(e,"variant",3,"outline"),i=Re(e,"raised",3,!1),l=Re(e,"busy",3,!1),d=Re(e,"busyLabel",3,"Loading card content"),f=Re(e,"busyLabelHidden",3,!1),v=Re(e,"tone",3,"neutral"),p=Re(e,"padding",3,"md"),b=Re(e,"actionsAlign",3,"start"),h=Re(e,"orientation",3,"vertical"),w=Re(e,"fit",3,"cover"),k=Re(e,"position",3,"center"),C=Re(e,"ratio",3,"16/9"),P=Re(e,"span",3,"two-fifths"),$=Re(e,"priority",3,!1),O=Je(e,["$$slots","$$events","$$legacy","variant","raised","busy","busyLabel","busyLabelHidden","tone","padding","actionsAlign","orientation","fit","position","ratio","span","title","icon","description","header","media","image","priority","footer","class","children"]),Z=y(()=>Yg({variant:o(),raised:i(),tone:v(),padding:p(),actionsAlign:b(),orientation:h(),fit:w(),position:k(),ratio:C(),span:P()})),Y=y(()=>!!(e.media??e.image)),T=y(()=>!!(e.header??e.icon??e.title??e.description));Lt(()=>{v()});var q=lp();zr(q,U=>({...O,"data-card":!0,"data-raised":i()||void 0,"data-tone":v(),"data-card-orientation":h(),"aria-busy":l()||void 0,class:U}),[()=>r(Z).root({class:e.class})]);var ne=c(q);{var ie=U=>{var E=ip(),I=ze(E);a(I);var _=u(I,2),A=c(_);n(A),s(_),N(R=>Pe(_,1,R),[()=>Ve(r(Z).content())]),g(U,E)},J=U=>{var E=sp(),I=c(E);a(I);var _=u(I,2),A=c(_);n(A),s(_),s(E),N((R,te)=>{Pe(E,1,R),Pe(_,1,te)},[()=>Ve(r(Z).layout()),()=>Ve(r(Z).content())]),g(U,E)},ue=U=>{n(U)};V(ne,U=>{r(Y)&&P()==="background"?U(ie):r(Y)?U(J,1):U(ue,-1)})}s(q),g(t,q),at()}const cp={sm:"h-4 min-w-4 px-1 text-xs",md:"h-5 min-w-5 px-1.5 text-xs"},al=Jr({base:"inline-flex items-center justify-center rounded-sm border border-muted bg-transparent font-mono leading-tight text-foreground whitespace-nowrap",variants:{size:cp},defaultVariants:{size:"md"}}),dp=Jr({slots:{root:"inline-flex items-center gap-[var(--reddb-spatial-gap-sm)] whitespace-nowrap",separator:"text-ink-muted text-xs"}});var up=x("<kbd><!></kbd>"),fp=x('<span aria-hidden="true"> </span>'),vp=x("<!> <kbd> </kbd>",1),gp=x("<kbd></kbd>");function Br(t,e){nt(e,!0);const n=Re(e,"keys",19,()=>[]),a=Re(e,"separator",3,"+"),o=Re(e,"size",3,"md"),i=Je(e,["$$slots","$$events","$$legacy","keys","separator","size","class","children"]),l=dp();var d=_t(),f=ze(d);{var v=b=>{var h=up();zr(h,k=>({...i,"data-kbd":!0,class:k}),[()=>al({size:o(),class:e.class})]);var w=c(h);tr(w,()=>e.children),s(h),g(b,h)},p=b=>{var h=gp();zr(h,w=>({...i,"data-kbd":!0,class:w}),[()=>l.root()]),$e(h,21,n,gr,(w,k,C)=>{var P=vp(),$=ze(P);{var O=T=>{var q=fp(),ne=c(q,!0);s(q),N(ie=>{Pe(q,1,ie),S(ne,a())},[()=>Ve(l.separator())]),g(T,q)};V($,T=>{C>0&&T(O)})}var Z=u($,2),Y=c(Z,!0);s(Z),N(T=>{Pe(Z,1,T),S(Y,r(k))},[()=>Ve(al({size:o(),class:e.class}))]),g(w,P)}),s(h),g(b,h)};V(f,b=>{e.children?b(v):b(p,-1)})}g(t,d),at()}const pp={sm:{title:"text-base font-medium leading-tight"},md:{title:"text-lg font-medium leading-tight"},lg:{title:"text-2xl font-medium leading-tight"},display:{title:"text-display",description:"text-lg"}},hp={true:{root:"border-b border-muted pb-[var(--reddb-spatial-inset-sm)]"},false:{root:"border-b border-transparent pb-0"}},bp=Jr({slots:{root:"@container/section-heading flex flex-wrap items-end justify-between gap-[var(--reddb-spatial-gap-lg)]",text:"flex flex-col gap-[var(--reddb-spatial-gap-sm)]",title:"text-foreground",description:"max-w-prose text-sm text-ink-muted",actions:"flex flex-wrap items-center gap-[var(--reddb-spatial-gap-md)]"},variants:{size:pp,rule:hp},defaultVariants:{size:"md",rule:!0}},Dc);var xp=x('<p data-section-heading-description=""> </p>'),mp=x("<div><!></div>"),_p=x("<div><div><!> <!></div> <!></div>");function yp(t,e){nt(e,!0);const n=Re(e,"level",3,2),a=Re(e,"size",3,"md"),o=Re(e,"rule",3,!0),i=Je(e,["$$slots","$$events","$$legacy","title","description","titleId","level","size","rule","actions","class"]),l=y(()=>bp({size:a(),rule:o()}));var d=_p();zr(d,k=>({...i,"data-section-heading":!0,class:k}),[()=>r(l).root({class:e.class})]);var f=c(d),v=c(f);xs(v,()=>`h${n()}`,!1,(k,C)=>{zr(k,$=>({id:e.titleId,"data-section-heading-title":!0,class:$}),[()=>r(l).title()]);var P=bt();N(()=>S(P,e.title)),g(C,P)});var p=u(v,2);{var b=k=>{var C=xp(),P=c(C,!0);s(C),N($=>{Pe(C,1,$),S(P,e.description)},[()=>Ve(r(l).description())]),g(k,C)};V(p,k=>{e.description&&k(b)})}s(f);var h=u(f,2);{var w=k=>{var C=mp(),P=c(C);tr(P,()=>e.actions),s(C),N($=>Pe(C,1,$),[()=>Ve(r(l).actions())]),g(k,C)};V(h,k=>{e.actions&&k(w)})}s(d),N(k=>Pe(f,1,k),[()=>Ve(r(l).text())]),g(t,d),at()}const Rc={name:"zap",size:24,node:[["path",{d:"M15.914 4a1.5 1.5 0 00-2.474-1.561l-9 9A1.5 1.5 0 005.5 14h4.002a.5.5 0 01.471.666L8.086 20a1.5 1.5 0 002.475 1.56l9-9A1.5 1.5 0 0018.5 10h-3.997a.5.5 0 01-.472-.667z"}]]};Rc.node;function wp(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Rc}}))}const Vc={name:"circle-alert",size:24,node:[["circle",{cx:"12",cy:"12",r:"10"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16"}]],aliases:["alert-circle"]};Vc.node;function ra(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Vc}}))}const Hc={name:"circle-check",size:24,node:[["circle",{cx:"12",cy:"12",r:"10"}],["path",{d:"m16 9-5.5 5.5L8 12"}]],aliases:["check-circle-2"]};Hc.node;function ys(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Hc}}))}const Fc={name:"clock",size:24,node:[["circle",{cx:"12",cy:"12",r:"10"}],["path",{d:"M12 6v6l4 2"}]]};Fc.node;function kp(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Fc}}))}const qc={name:"plug",size:24,node:[["path",{d:"M12 22v-5"}],["path",{d:"M15 8V2"}],["path",{d:"M17 8a1 1 0 0 1 1 1v4a4 4 0 0 1-4 4h-4a4 4 0 0 1-4-4V9a1 1 0 0 1 1-1z"}],["path",{d:"M9 8V2"}]]};qc.node;function Kc(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return qc}}))}const jc={name:"chevron-down",size:24,node:[["path",{d:"m6 9 6 6 6-6"}]]};jc.node;function Sp(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return jc}}))}const Bc={name:"folder-open",size:24,node:[["path",{d:"m6 14 1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2"}]]};Bc.node;function Cp(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Bc}}))}var Ep=x("<!> Connecting…",1),Mp=x("<!> Connect",1),zp=x('<!> <span class="text-ok"> </span>',1),Np=x('<!> <span class="text-danger break-words"> </span>',1),Tp=x('<button type="button" title="Open a local .rdb database file" class="mt-1 w-full h-9 bg-bg-2 border border-line-2 text-fg-1 font-medium rounded-md cursor-pointer transition-colors hover:border-line-3 hover:text-fg-0 disabled:opacity-40 disabled:cursor-not-allowed flex items-center justify-center gap-2 text-[13px]"><!> Open database file…</button>'),Ip=x("<span> </span>"),Ap=x('<div class="group flex items-center gap-1 rounded hover:bg-bg-2 transition-colors"><button type="button" class="flex-1 flex items-center justify-between gap-3 px-2 py-1.5 text-left cursor-pointer bg-transparent border-0 disabled:cursor-not-allowed disabled:opacity-50 min-w-0"><code class="font-mono text-[11px] text-fg-1 truncate"> </code> <span class="font-mono text-[10px] text-fg-3 shrink-0 flex items-center gap-1.5"><!> <span> </span></span></button> <button type="button" title="Remove from history" class="opacity-0 group-hover:opacity-100 p-1 mr-0.5 text-fg-3 hover:text-danger transition-all cursor-pointer bg-transparent border-0"><!></button></div>'),Lp=x('<div class="mt-3 pt-3 border-t border-line-1"><div class="flex items-center gap-1.5 mb-2"><!> <span class="type-label">Recent</span></div> <div class="grid gap-0.5 max-h-[180px] overflow-y-auto"></div></div>'),Op=x('<div class="fixed inset-0 z-40" role="presentation"></div> <div class="absolute top-[calc(100%+6px)] left-0 z-50 w-[380px] max-w-[calc(100vw-2rem)] bg-bg-1 border border-line-2 rounded-lg shadow-2xl p-4" role="dialog" aria-label="Connect to reddb"><form><label for="connect-url" class="type-label block mb-1.5">Instance URL</label> <input id="connect-url" spellcheck="false" placeholder="red://localhost" class="w-full h-9 px-3 mb-1 bg-bg-0 border border-line-2 rounded-md font-mono text-[13px] text-fg-0 outline-none transition-colors focus:border-accent placeholder:text-fg-3"/> <div class="mb-2 text-[10px] font-mono text-fg-3"> </div> <details class="mb-3"><summary class="cursor-pointer text-xs text-fg-2">Sign in to the database</summary> <div class="grid gap-2 mt-2"><label class="text-xs text-fg-2" for="connect-username">Username</label> <input id="connect-username" autocomplete="username" class="w-full h-9 px-3 bg-bg-0 border border-line-2 rounded-md text-fg-0 outline-none focus:border-accent"/> <label class="text-xs text-fg-2" for="connect-password">Password</label> <input id="connect-password" type="password" autocomplete="current-password" class="w-full h-9 px-3 bg-bg-0 border border-line-2 rounded-md text-fg-0 outline-none focus:border-accent"/> <p class="text-[11px] text-fg-3">Credentials go directly to this database. The session stays in this tab.</p></div></details> <button type="submit" class="w-full h-9 bg-primary text-on-primary font-medium rounded-md cursor-pointer transition-colors hover:bg-primary-active disabled:opacity-40 disabled:cursor-not-allowed flex items-center justify-center gap-2 text-[13px]"><!></button> <div aria-live="polite" class="min-h-5 mt-2 flex items-center gap-1.5 text-[11px] font-mono"><!></div></form> <!> <!></div>',1),Pp=x('<div class="relative"><button type="button" aria-haspopup="dialog" class="inline-flex items-center gap-2 h-7 pl-2 pr-1.5 bg-bg-2 border border-line-2 rounded-md text-fg-1 cursor-pointer text-xs transition-colors hover:border-line-3 hover:text-fg-0"><span></span> <!> <span class="font-mono"> </span> <span class="font-mono text-[10px] text-fg-3"> </span> <!></button> <!></div>');function Dp(t,e){nt(e,!0);const n="red://localhost";function a(){var L,H;return(L=Be.history[0])!=null&&L.url?Be.history[0].url:(H=Be.history[0])!=null&&H.label?Be.history[0].label:Be.active.url?Be.active.url:n}let o=me(!1),i=me(jt(a())),l=me(""),d=me(""),f=me("idle"),v=me(null),p=me(null),b=me(void 0),h=me(void 0);async function w(L,H=!1){const j=L.trim().replace(/\/$/,"");if(!j)return;let le;const he=r(d);m(d,"");try{if(le=gv(j),m(i,le.url,!0),le.credentials&&H)throw new Error("Use credentials in either the connection string or the sign-in fields.")}catch(G){m(i,""),m(f,"error"),m(v,G instanceof Error?G.message:"Invalid connection string.",!0);return}if(!Be.canReach(le.url)){m(f,"error"),m(v,pv(le.url)??`This app can't reach that transport here — supported: ${r(q)}`,!0);return}m(f,"probing"),m(v,null),m(p,null);const oe=Mc(le.url),Q=le.credentials??(H?{username:r(l).trim(),password:he}:void 0);(Q?await Be.login(oe,Q.username,Q.password):await Be.tryConnect(oe))?(m(f,"ok"),m(p,Be.probe.rtt_ms??null,!0),setTimeout(()=>m(o,!1),350)):(m(f,"error"),m(v,Be.probe.error??"unreachable",!0))}function k(L){L.preventDefault(),w(r(i),!!(r(l).trim()&&r(d)))}async function C(){m(f,"probing"),m(v,null),m(p,null);const L=await vv();L.ok?(m(f,"ok"),m(p,Be.probe.rtt_ms??null,!0),m(i,Be.active.url,!0),setTimeout(()=>m(o,!1),350)):L.cancelled?m(f,"idle"):(m(f,"error"),m(v,L.reason??"unreachable",!0))}function P(L){const H=Date.now()-L;return H<6e4?"just now":H<36e5?`${Math.round(H/6e4)}m ago`:H<864e5?`${Math.round(H/36e5)}h ago`:`${Math.round(H/864e5)}d ago`}function $(L,H){L.stopPropagation(),Be.forgetById(H)}function O(){m(o,!r(o)),r(o)&&setTimeout(()=>{var L;return(L=r(h))==null?void 0:L.focus()},0)}vn(()=>{const L=()=>{m(o,!0),setTimeout(()=>{var H;return(H=r(h))==null?void 0:H.focus()},0)};return window.addEventListener("red:open-connect",L),()=>window.removeEventListener("red:open-connect",L)}),Lt(()=>{!Be.connected&&Be.probe.error&&(m(i,Be.active.url,!0),m(v,Be.probe.error,!0),m(f,"error"),m(o,!0))});const Z=y(()=>Be.connected?"bg-ok":r(f)==="error"?"bg-danger":"bg-fg-3"),Y=y(()=>Be.connected?Be.active.label:"Connect"),T=y(()=>Be.connected&&Be.probe.rtt_ms!==void 0?`${Be.probe.rtt_ms}ms`:Be.connected?"live":"no connection"),q=y(()=>{const L=Be.supportedTransports,H=[];return(L.includes("http")||L.includes("https"))&&H.push("http(s)://"),L.includes("unix")&&H.push("file://"),H.join(" · ")}),ne=y(()=>Be.history.filter(L=>!L.url||Be.canReach(L.url))),ie=y(()=>Be.supportedTransports.includes("unix"));var J=Pp(),ue=c(J),U=c(ue),E=u(U,2);{var I=L=>{Kc(L,{class:"size-3 text-fg-3"})};V(E,L=>{Be.connected||L(I)})}var _=u(E,2),A=c(_,!0);s(_);var R=u(_,2),te=c(R,!0);s(R);var F=u(R,2);Sp(F,{class:"size-3 text-fg-3"}),s(ue);var X=u(ue,2);{var ee=L=>{var H=Op(),j=ze(H),le=u(j,2),he=c(le),oe=u(c(he),2);Xt(oe),ln(oe,se=>m(h,se),()=>r(h));var Q=u(oe,2),W=c(Q);s(Q);var G=u(Q,2),M=u(c(G),2),K=u(c(M),2);Xt(K);var D=u(K,4);Xt(D),Se(2),s(M),s(G);var z=u(G,2),B=c(z);{var re=se=>{var ve=Ep(),Ae=ze(ve);cn(Ae,{class:"size-3.5 animate-spin"}),Se(),g(se,ve)},de=se=>{var ve=Mp(),Ae=ze(ve);wp(Ae,{class:"size-3.5"}),Se(),g(se,ve)};V(B,se=>{r(f)==="probing"?se(re):se(de,-1)})}s(z);var be=u(z,2),fe=c(be);{var Ce=se=>{var ve=zp(),Ae=ze(ve);ys(Ae,{class:"size-3 text-ok"});var Le=u(Ae,2),we=c(Le);s(Le),N(()=>S(we,`Connected${r(p)!==null?` · ${r(p)}ms`:""}`)),g(se,ve)},ke=se=>{var ve=Np(),Ae=ze(ve);ra(Ae,{class:"size-3 text-danger"});var Le=u(Ae,2),we=c(Le,!0);s(Le),N(()=>S(we,r(v))),g(se,ve)};V(fe,se=>{r(f)==="ok"?se(Ce):r(f)==="error"&&se(ke,1)})}s(be),s(he);var xe=u(he,2);{var ge=se=>{var ve=Tp(),Ae=c(ve);Cp(Ae,{class:"size-3.5 text-fg-3"}),Se(),s(ve),N(()=>ve.disabled=r(f)==="probing"),_e("click",ve,C),g(se,ve)};V(xe,se=>{r(ie)&&se(ge)})}var De=u(xe,2);{var ce=se=>{var ve=Lp(),Ae=c(ve),Le=c(Ae);kp(Le,{class:"size-3 text-fg-3"}),Se(2),s(Ae);var we=u(Ae,2);$e(we,21,()=>r(ne),gr,(Ie,Ee)=>{var Me=Ap(),Te=c(Me),Xe=c(Te),Fe=c(Xe,!0);s(Xe);var Qe=u(Xe,2),lt=c(Qe);{var ct=ae=>{var tt=Ip(),Ze=c(tt);s(tt),N(()=>S(Ze,`${r(Ee).rtt_ms??""}ms`)),g(ae,tt)};V(lt,ae=>{r(Ee).rtt_ms!==void 0&&ae(ct)})}var Ke=u(lt,2),He=c(Ke,!0);s(Ke),s(Qe),s(Te);var Ue=u(Te,2),ot=c(Ue);Ar(ot,{class:"size-3"}),s(Ue),s(Me),N(ae=>{Te.disabled=r(f)==="probing",Ne(Te,"title",r(Ee).url?void 0:"Enter credentials to reconnect"),S(Fe,r(Ee).url??r(Ee).label),S(He,ae)},[()=>P(r(Ee).last_used)]),_e("click",Te,()=>{r(Ee).url?w(r(Ee).url):(m(i,r(Ee).label,!0),setTimeout(()=>{var ae;return(ae=r(h))==null?void 0:ae.focus()},0))}),_e("click",Ue,ae=>$(ae,r(Ee).id)),g(Ie,Me)}),s(we),s(ve),g(se,ve)};V(De,se=>{r(ne).length>0&&se(ce)})}s(le),ln(le,se=>m(b,se),()=>r(b)),N(se=>{oe.disabled=r(f)==="probing",S(W,`reachable here: ${r(q)??""}`),K.disabled=r(f)==="probing",D.disabled=r(f)==="probing",z.disabled=se},[()=>r(f)==="probing"||!r(i).trim()||!!r(l).trim()!=!!r(d)]),_e("click",j,()=>m(o,!1)),Sn("submit",he,k),_e("input",oe,()=>{m(l,""),m(d,"")}),Sr(oe,()=>r(i),se=>m(i,se)),Sr(K,()=>r(l),se=>m(l,se)),Sr(D,()=>r(d),se=>m(d,se)),g(L,H)};V(X,L=>{r(o)&&L(ee)})}s(J),N(L=>{Ne(ue,"aria-expanded",r(o)),Ne(ue,"title",Be.connected?"Switch connection":"Connect to reddb"),Pe(U,1,L),S(A,r(Y)),S(te,r(T))},[()=>Ve(["w-1.5 h-1.5 rounded-full shrink-0",r(Z)].join(" "))]),_e("click",ue,O),g(t,J),at()}nr(["click","input"]);const Uc={name:"activity",size:24,node:[["path",{d:"M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2"}]]};Uc.node;function Va(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Uc}}))}var Rp=x("<!> <span> </span>",1),Vp=x('<!> <span class="text-fg-3">idle</span>',1),Hp=x('<button type="button" title="Force-clear the in-flight counter (use when a request hangs)" class="px-1.5 py-0.5 rounded border border-line-1 text-fg-3 hover:text-fg-1 hover:border-line-2 cursor-pointer text-[10px]">reset</button>'),Fp=x('<div class="px-3 py-3 text-fg-3">No activity yet.</div>'),qp=x('<div class="text-danger text-[10px] truncate"> </div>'),Kp=x('<div class="px-3 py-1.5 border-b border-line-1/50 last:border-0 grid grid-cols-[16px_1fr_auto] items-center gap-2"><span aria-hidden="true"><!></span> <div class="min-w-0"><div class="text-fg-1 truncate"> </div> <!></div> <div class="text-fg-3 text-[10px] tabular-nums whitespace-nowrap"><!></div></div>'),jp=x('<div class="fixed inset-0 z-40" role="presentation"></div> <div role="dialog" aria-label="Activity log" class="absolute top-[calc(100%+6px)] right-0 z-50 w-[360px] bg-bg-1 border border-line-2 rounded-lg shadow-2xl text-[11px] font-mono"><header class="flex items-center justify-between px-3 py-2 border-b border-line-1"><span class="type-label">Recent reddb requests</span> <div class="flex items-center gap-2"><span class="text-fg-3"> </span> <!></div></header> <div class="max-h-[320px] overflow-y-auto py-1"><!></div></div>',1),Bp=x('<div class="relative"><button type="button" title="reddb activity"><!></button> <!></div>');function Up(t,e){nt(e,!0);let n=me(!1);function a(h){return h===null?"…":h<1e3?`${h}ms`:`${(h/1e3).toFixed(1)}s`}function o(h){const w=Date.now()-h;return w<1e3?"just now":w<6e4?`${Math.round(w/1e3)}s ago`:`${Math.round(w/6e4)}m ago`}var i=Bp(),l=c(i),d=c(l);{var f=h=>{var w=Rp(),k=ze(w);cn(k,{class:"size-3.5 animate-spin"});var C=u(k,2),P=c(C,!0);s(C),N(()=>S(P,St.inflight)),g(h,w)},v=h=>{var w=Vp(),k=ze(w);Va(k,{class:"size-3.5"}),Se(2),g(h,w)};V(d,h=>{St.inflight>0?h(f):h(v,-1)})}s(l);var p=u(l,2);{var b=h=>{var w=jp(),k=ze(w),C=u(k,2),P=c(C),$=u(c(P),2),O=c($),Z=c(O);s(O);var Y=u(O,2);{var T=ue=>{var U=Hp();_e("click",U,()=>St.reset()),g(ue,U)};V(Y,ue=>{St.inflight>0&&ue(T)})}s($),s(P);var q=u(P,2),ne=c(q);{var ie=ue=>{var U=Fp();g(ue,U)},J=ue=>{var U=_t(),E=ze(U);$e(E,17,()=>St.log,I=>I.id,(I,_)=>{var A=Kp(),R=c(A),te=c(R);{var F=M=>{cn(M,{class:"size-3 animate-spin text-primary-text"})},X=M=>{ys(M,{class:"size-3 text-ok"})},ee=M=>{ra(M,{class:"size-3 text-danger"})};V(te,M=>{r(_).status==="pending"?M(F):r(_).status==="ok"?M(X,1):M(ee,-1)})}s(R);var L=u(R,2),H=c(L),j=c(H,!0);s(H);var le=u(H,2);{var he=M=>{var K=qp(),D=c(K,!0);s(K),N(()=>S(D,r(_).error)),g(M,K)};V(le,M=>{r(_).status==="error"&&r(_).error&&M(he)})}s(L);var oe=u(L,2),Q=c(oe);{var W=M=>{var K=bt();N(D=>S(K,D),[()=>o(r(_).startedAt)]),g(M,K)},G=M=>{var K=bt();N(D=>S(K,D),[()=>a(r(_).durationMs)]),g(M,K)};V(Q,M=>{r(_).status==="pending"?M(W):M(G,-1)})}s(oe),s(A),N(()=>S(j,r(_).label)),g(I,A)}),g(ue,U)};V(ne,ue=>{St.log.length===0?ue(ie):ue(J,-1)})}s(q),s(C),N(()=>S(Z,`${St.inflight??""} active`)),_e("click",k,()=>m(n,!1)),g(h,w)};V(p,h=>{r(n)&&h(b)})}s(i),N(h=>{Ne(l,"aria-pressed",r(n)),Pe(l,1,h)},[()=>Ve(["inline-flex items-center gap-1.5 h-7 px-2 rounded-md border text-xs font-mono transition-colors cursor-pointer",St.inflight>0?"border-accent/40 bg-accent/10 text-primary-text":"border-line-2 bg-bg-2 text-fg-3 hover:text-fg-1"].join(" "))]),_e("click",l,()=>m(n,!r(n))),g(t,i),at()}nr(["click"]);const Wc={name:"sun",size:24,node:[["circle",{cx:"12",cy:"12",r:"4"}],["path",{d:"M12 2v2"}],["path",{d:"M12 20v2"}],["path",{d:"m4.93 4.93 1.41 1.41"}],["path",{d:"m17.66 17.66 1.41 1.41"}],["path",{d:"M2 12h2"}],["path",{d:"M20 12h2"}],["path",{d:"m6.34 17.66-1.41 1.41"}],["path",{d:"m19.07 4.93-1.41 1.41"}]]};Wc.node;function Wp(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Wc}}))}const Gc={name:"moon",size:24,node:[["path",{d:"M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401"}]]};Gc.node;function Gp(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Gc}}))}const Yc={name:"database",size:24,node:[["ellipse",{cx:"12",cy:"5",rx:"9",ry:"3"}],["path",{d:"M3 5V19A9 3 0 0 0 21 19V5"}],["path",{d:"M3 12A9 3 0 0 0 21 12"}]]};Yc.node;function Po(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Yc}}))}const $c={name:"file-code-corner",size:24,node:[["path",{d:"M4 12.15V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.706.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2h-3.35"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5"}],["path",{d:"m5 16-3 3 3 3"}],["path",{d:"m9 22 3-3-3-3"}]],aliases:["file-code-2"]};$c.node;function Xc(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return $c}}))}const Zc={name:"shield",size:24,node:[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"}]]};Zc.node;function Yp(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Zc}}))}const Qc={name:"settings-2",size:24,node:[["path",{d:"M14 17H5"}],["path",{d:"M19 7h-9"}],["circle",{cx:"17",cy:"17",r:"3"}],["circle",{cx:"7",cy:"7",r:"3"}]]};Qc.node;function ji(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Qc}}))}const Jc={name:"chart-line",size:24,node:[["path",{d:"M3 3v16a2 2 0 0 0 2 2h16"}],["path",{d:"m19 9-5 5-4-4-3 3"}]],aliases:["line-chart"]};Jc.node;function ed(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Jc}}))}const td={name:"sparkles",size:24,node:[["path",{d:"M11.017 2.814a1 1 0 0 1 1.966 0l1.051 5.558a2 2 0 0 0 1.594 1.594l5.558 1.051a1 1 0 0 1 0 1.966l-5.558 1.051a2 2 0 0 0-1.594 1.594l-1.051 5.558a1 1 0 0 1-1.966 0l-1.051-5.558a2 2 0 0 0-1.594-1.594l-5.558-1.051a1 1 0 0 1 0-1.966l5.558-1.051a2 2 0 0 0 1.594-1.594z"}],["path",{d:"M20 2v4"}],["path",{d:"M22 4h-4"}],["circle",{cx:"4",cy:"20",r:"2"}]],aliases:["stars"]};td.node;function Eo(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return td}}))}const $p="application";function ol(t,e){var n;t.dataset.theme=$p,(n=t.dataset).density||(n.density="compact"),t.dataset.colorScheme=e}const rd="red-ui-theme",Mo="light";function Xp(t,e,n){const a=t==null?void 0:t.dataset.colorScheme;if(a==="dark"||a==="light")return a;if(!e||typeof localStorage>"u")return n??Mo;const o=localStorage.getItem(rd);return o==="dark"||o==="light"?o:n??Mo}function il(t,e){if(e){ol(e,t);return}typeof document<"u"&&ol(document.documentElement,t)}function Zp(t,e){e&&(typeof localStorage>"u"||localStorage.setItem(rd,t))}var Ya;class Qp{constructor(){je(this,Ya,me(Mo));qt(this,"target",null);qt(this,"persistTheme",!0)}get current(){return r(pe(this,Ya))}set current(e){m(pe(this,Ya),e,!0)}init(e={}){this.target=e.target??null,this.persistTheme=e.persist??!0,this.current=Xp(this.target,this.persistTheme,e.initial),il(this.current,this.target)}set(e){this.current=e,il(e,this.target),Zp(e,this.persistTheme)}toggle(){this.set(this.current==="dark"?"light":"dark")}}Ya=new WeakMap;const Rn=new Qp;function sl(t){switch(t.view){case"ask":return"/ask";case"query":return"/query";case"collections":return"/collections";case"cluster":return"/cluster";case"security":return"/security";case"analytics":return"/analytics";case"settings":return"/settings";case"appearance":return"/appearance";case"collection":return hv(t.collection,t.subpage)}}function Jp(t){return t.view==="collection"?{view:"collections",collection:t.collection,subpage:t.subpage}:{view:t.view,collection:null,subpage:null}}function eh(t){if(t.startsWith("/ask"))return{view:"ask",collection:null,subpage:null};if(t.startsWith("/query"))return{view:"query",collection:null,subpage:null};if(t.startsWith("/cluster"))return{view:"cluster",collection:null,subpage:null};if(t.startsWith("/security"))return{view:"security",collection:null,subpage:null};if(t.startsWith("/analytics"))return{view:"analytics",collection:null,subpage:null};if(t.startsWith("/settings"))return{view:"settings",collection:null,subpage:null};if(t.startsWith("/appearance"))return{view:"appearance",collection:null,subpage:null};const e=t.match(/^\/c\/([^/]+)(?:\/p\/([^/]+))?/);return e?{view:"collections",collection:decodeURIComponent(e[1]),subpage:e[2]?decodeURIComponent(e[2]):null}:{view:"collections",collection:null,subpage:null}}function nd(t){let e=me(jt({view:"collections",collection:null,subpage:null}));return{get view(){return r(e).view},get collection(){return r(e).collection},get subpage(){return r(e).subpage},get path(){return sl(r(e).collection?{view:"collection",collection:r(e).collection,subpage:r(e).subpage??"table"}:{view:r(e).view})},href:n=>sl(n),go:(n,a)=>{a==null||a.preventDefault(),m(e,Jp(n),!0)}}}const ad=Symbol("red-ui-router");let pi=null;function th(t){return hs(ad,t),t}function xa(){const t=Qo(ad);return t||(pi||(pi=nd()),pi)}var rh=x('<div class="w-px h-[18px] bg-line-2"></div> <!> <div class="w-px h-[18px] bg-line-2 ml-1"></div>',1),nh=x('<div class="w-px h-[18px] bg-line-2"></div>'),ah=x('<header class="h-11 flex items-center justify-between px-3.5 bg-bg-1/80 backdrop-blur-md border-b border-line-1 relative z-10"><div class="flex items-center gap-2.5"><a class="font-mono font-semibold text-[13px] tracking-tight text-fg-0 no-underline hover:text-primary-text transition-colors">red<span class="text-primary-text mx-px">·</span>ui</a> <!> <nav class="flex items-center gap-0.5"><a title="Ask — grounded natural-language query"><!> <span>Ask</span></a> <a title="Query"><!> <span>Query</span></a> <a title="Collections"><!> <span>Collections</span></a> <a title="Cluster topology"><!> <span>Cluster</span></a> <a title="Security"><!> <span>Security</span></a> <a title="Analytics"><!> <span>Analytics</span></a> <a title="Settings"><!> <span>Settings</span></a></nav></div> <div class="flex items-center gap-2.5"><!> <button type="button" class="inline-flex items-center justify-center size-7 bg-bg-2 border border-line-2 rounded-md text-fg-2 cursor-pointer transition-colors hover:border-line-3 hover:text-fg-0"><!></button> <button class="inline-flex items-center gap-2 h-7 pl-2.5 pr-2 bg-bg-2 border border-line-2 rounded-md text-fg-2 cursor-pointer text-xs transition-colors hover:border-line-3 hover:text-fg-1"><!> <span>Search or run</span> <span class="inline-flex gap-0.5 ml-1"><!><!></span></button></div></header>');function oh(t,e){nt(e,!0);let n=Re(e,"showConnect",3,!0);const a=xa();function o(){window.dispatchEvent(new KeyboardEvent("keydown",{key:"k",metaKey:!0,ctrlKey:!0,bubbles:!0}))}const i=y(()=>a.view==="ask"),l=y(()=>a.view==="query"),d=y(()=>a.view==="collections"),f=y(()=>a.view==="cluster"),v=y(()=>a.view==="security"),p=y(()=>a.view==="analytics"),b=y(()=>a.view==="settings");var h=ah(),w=c(h),k=c(w),C=u(k,2);{var P=W=>{var G=rh(),M=u(ze(G),2);Dp(M,{}),Se(2),g(W,G)},$=W=>{var G=nh();g(W,G)};V(C,W=>{n()?W(P):W($,-1)})}var O=u(C,2),Z=c(O),Y=c(Z);Eo(Y,{class:"size-3.5"}),Se(2),s(Z);var T=u(Z,2),q=c(T);Xc(q,{class:"size-3.5"}),Se(2),s(T);var ne=u(T,2),ie=c(ne);Po(ie,{class:"size-3.5"}),Se(2),s(ne);var J=u(ne,2),ue=c(J);bv(ue,{class:"size-3.5"}),Se(2),s(J);var U=u(J,2),E=c(U);Yp(E,{class:"size-3.5"}),Se(2),s(U);var I=u(U,2),_=c(I);ed(_,{class:"size-3.5"}),Se(2),s(I);var A=u(I,2),R=c(A);ji(R,{class:"size-3.5"}),Se(2),s(A),s(O),s(w);var te=u(w,2),F=c(te);Up(F,{});var X=u(F,2),ee=c(X);{var L=W=>{Wp(W,{class:"size-3.5"})},H=W=>{Gp(W,{class:"size-3.5"})};V(ee,W=>{Rn.current==="dark"?W(L):W(H,-1)})}s(X);var j=u(X,2),le=c(j);Gr(le,{class:"size-3.5 text-fg-3"});var he=u(le,4),oe=c(he);Br(oe,{children:(W,G)=>{Se();var M=bt("⌘");g(W,M)},$$slots:{default:!0}});var Q=u(oe);Br(Q,{children:(W,G)=>{Se();var M=bt("K");g(W,M)},$$slots:{default:!0}}),s(he),s(j),s(te),s(h),N((W,G,M,K,D,z,B,re,de,be,fe,Ce,ke,xe,ge)=>{Ne(k,"href",W),Ne(Z,"href",G),Ne(Z,"aria-current",r(i)?"page":void 0),Pe(Z,1,M),Ne(T,"href",K),Ne(T,"aria-current",r(l)?"page":void 0),Pe(T,1,D),Ne(ne,"href",z),Ne(ne,"aria-current",r(d)?"page":void 0),Pe(ne,1,B),Ne(J,"href",re),Ne(J,"aria-current",r(f)?"page":void 0),Pe(J,1,de),Ne(U,"href",be),Ne(U,"aria-current",r(v)?"page":void 0),Pe(U,1,fe),Ne(I,"href",Ce),Ne(I,"aria-current",r(p)?"page":void 0),Pe(I,1,ke),Ne(A,"href",xe),Ne(A,"aria-current",r(b)?"page":void 0),Pe(A,1,ge),Ne(X,"title",Rn.current==="dark"?"Switch to light theme":"Switch to dark theme"),Ne(X,"aria-label",Rn.current==="dark"?"Switch to light theme":"Switch to dark theme")},[()=>a.href({view:"collections"}),()=>a.href({view:"ask"}),()=>Ve(["inline-flex items-center gap-1.5 h-7 px-2 rounded-md text-xs no-underline transition-colors",r(i)?"bg-bg-2 text-primary-text":"text-fg-2 hover:text-fg-0 hover:bg-bg-2"].join(" ")),()=>a.href({view:"query"}),()=>Ve(["inline-flex items-center gap-1.5 h-7 px-2 rounded-md text-xs no-underline transition-colors",r(l)?"bg-bg-2 text-fg-0":"text-fg-2 hover:text-fg-0 hover:bg-bg-2"].join(" ")),()=>a.href({view:"collections"}),()=>Ve(["inline-flex items-center gap-1.5 h-7 px-2 rounded-md text-xs no-underline transition-colors",r(d)?"bg-bg-2 text-fg-0":"text-fg-2 hover:text-fg-0 hover:bg-bg-2"].join(" ")),()=>a.href({view:"cluster"}),()=>Ve(["inline-flex items-center gap-1.5 h-7 px-2 rounded-md text-xs no-underline transition-colors",r(f)?"bg-bg-2 text-fg-0":"text-fg-2 hover:text-fg-0 hover:bg-bg-2"].join(" ")),()=>a.href({view:"security"}),()=>Ve(["inline-flex items-center gap-1.5 h-7 px-2 rounded-md text-xs no-underline transition-colors",r(v)?"bg-bg-2 text-fg-0":"text-fg-2 hover:text-fg-0 hover:bg-bg-2"].join(" ")),()=>a.href({view:"analytics"}),()=>Ve(["inline-flex items-center gap-1.5 h-7 px-2 rounded-md text-xs no-underline transition-colors",r(p)?"bg-bg-2 text-fg-0":"text-fg-2 hover:text-fg-0 hover:bg-bg-2"].join(" ")),()=>a.href({view:"settings"}),()=>Ve(["inline-flex items-center gap-1.5 h-7 px-2 rounded-md text-xs no-underline transition-colors",r(b)?"bg-bg-2 text-fg-0":"text-fg-2 hover:text-fg-0 hover:bg-bg-2"].join(" "))]),_e("click",k,W=>a.go({view:"collections"},W)),_e("click",Z,W=>a.go({view:"ask"},W)),_e("click",T,W=>a.go({view:"query"},W)),_e("click",ne,W=>a.go({view:"collections"},W)),_e("click",J,W=>a.go({view:"cluster"},W)),_e("click",U,W=>a.go({view:"security"},W)),_e("click",I,W=>a.go({view:"analytics"},W)),_e("click",A,W=>a.go({view:"settings"},W)),_e("click",X,()=>Rn.toggle()),_e("click",j,o),g(t,h),at()}nr(["click"]);function ih(t){return`'${t.replace(/'/g,"''")}'`}function sh(){return Math.random().toString(36).slice(2,10)}function ws(t){return`UPDATE ${t.table} SET ${t.col} = ${ih(t.newValue)} WHERE rid = ${t.row};`}var $a,Xa;class lh{constructor(){je(this,$a,me(jt([])));je(this,Xa,y(()=>this.changes.length));qt(this,"executor",null)}get changes(){return r(pe(this,$a))}set changes(e){m(pe(this,$a),e,!0)}get count(){return r(pe(this,Xa))}set count(e){m(pe(this,Xa),e)}setExecutor(e){this.executor=e}stage(e,n,a,o,i){const l=this.changes.findIndex(f=>f.table===e&&f.row===n&&f.col===a);if(l>=0){const f=this.changes[l],v={...f,oldValue:f.oldValue,newValue:i,error:void 0},p=this.changes.slice();return p[l]=v,this.changes=p,f.id}const d=sh();return this.changes=[...this.changes,{id:d,table:e,row:n,col:a,oldValue:o,newValue:i}],d}unstage(e){this.changes=this.changes.filter(n=>n.id!==e)}find(e,n,a){return this.changes.find(o=>o.table===e&&o.row===n&&o.col===a)}previewSql(){return this.changes.map(ws)}async commitAll(){if(this.changes.length===0)return{applied:0,failed:[]};if(!this.executor)throw new Error("PendingChanges: no commit executor configured");const e=this.changes.slice(),n=await this.executor(e),a=new Map(n.map(v=>[v.id,v])),o=[];let i=0;for(const v of e){const p=a.get(v.id);p!=null&&p.ok?i+=1:o.push({...v,error:(p==null?void 0:p.error)??"commit failed"})}const l=new Set(o.map(v=>v.id)),d=this.changes.filter(v=>!e.some(p=>p.id===v.id)),f=new Map(o.map(v=>[v.id,v]));return this.changes=[...this.changes.filter(v=>l.has(v.id)).map(v=>f.get(v.id)??v),...d],{applied:i,failed:o}}discardAll(){this.changes=[]}clear(){this.changes=[]}}$a=new WeakMap,Xa=new WeakMap;const Pr=new lh,od={name:"arrow-right",size:24,node:[["path",{d:"M5 12h14"}],["path",{d:"m12 5 7 7-7 7"}]]};od.node;function ch(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return od}}))}const id={name:"file-pen-line",size:24,node:[["path",{d:"M14.364 13.634a2 2 0 0 0-.506.854l-.837 2.87a.5.5 0 0 0 .62.62l2.87-.837a2 2 0 0 0 .854-.506l4.013-4.009a1 1 0 0 0-3.004-3.004z"}],["path",{d:"M14.487 7.858A1 1 0 0 1 14 7V2"}],["path",{d:"M20 19.645V20a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l2.516 2.516"}],["path",{d:"M8 18h1"}]],aliases:["file-signature"]};id.node;function dh(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return id}}))}const sd={name:"lock",size:24,node:[["rect",{width:"18",height:"11",x:"3",y:"11",rx:"2",ry:"2"}],["path",{d:"M7 11V7a5 5 0 0 1 10 0v4"}]]};sd.node;function Un(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return sd}}))}const ld={name:"terminal",size:24,node:[["path",{d:"M12 19h8"}],["path",{d:"m4 17 6-6-6-6"}]]};ld.node;function uh(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return ld}}))}function hi(t){try{const e=t();return typeof e=="string"&&e.length>0?e:void 0}catch{return}}function fh(t){return t.startsWith("v")?t.slice(1):t}function cd(){return{version:fh(hi(()=>"0.3.6")??"0.0.0-dev"),gitSha:hi(()=>"unknown")??"unknown",buildTime:hi(()=>"unknown")??"unknown"}}cd().version;var vh=x('<span class="text-fg-3">·</span> <span class="text-fg-2"><span class="text-fg-3">rtt</span> <span class="text-fg-1 tabular-nums"> </span><span class="text-fg-3">ms</span></span>',1),gh=x('<span class="text-fg-3">·</span> <span class="text-fg-2"><span class="text-fg-3">lag</span> <span> </span></span>',1),ph=x('<span class="text-fg-3">·</span> <span class="text-fg-2"><span class="text-fg-3">lsn</span> <span class="text-fg-1 tabular-nums"> </span></span>',1),hh=x('<span class="text-fg-3">·</span> <span class="inline-flex items-center gap-1 shrink-0 text-warn"><!> <span class="uppercase tracking-wider text-[10px]">read-only — file in use</span></span>',1),bh=x('<span class="inline-flex items-center gap-1.5 shrink-0"><span class="w-1.5 h-1.5 rounded-full"></span> <span class="text-fg-1 uppercase tracking-wider text-[10px]"> </span></span> <span class="text-fg-3">·</span> <span class="text-fg-1 truncate"> </span> <!> <!> <!> <!>',1),xh=x('<span class="inline-flex items-center gap-1.5 shrink-0"><span class="w-1.5 h-1.5 rounded-full bg-fg-3"></span> <span class="text-fg-3">Not connected</span></span>'),mh=x('<button type="button" data-no-nav="" class="inline-flex items-center gap-1.5 px-3 text-primary-text hover:bg-bg-2/60 transition-colors cursor-pointer bg-transparent border-0 border-l border-line-1"><!> <span class="tabular-nums"> </span></button>'),_h=x('<button type="button" data-no-nav="" class="inline-flex items-center gap-1 px-3 text-fg-2 hover:text-fg-0 hover:bg-bg-2/60 transition-colors cursor-pointer bg-transparent border-0 border-l border-line-1"><span>Connect</span> <!></button>'),yh=x('<div class="h-8 flex items-stretch border-b border-line-1 bg-bg-1/60 text-[11px] font-mono select-none" role="status" aria-label="Connection status"><div role="button" tabindex="0" title="Open cluster overview" class="flex-1 flex items-center gap-3 px-3 cursor-pointer hover:bg-bg-2/40 transition-colors min-w-0"><!></div> <!> <!> <button type="button" data-no-nav="" aria-label="Toggle developer console" title="Developer console — every query and HTTP call, with timing and row counts" class="inline-flex items-center gap-1 px-3 text-fg-3 hover:text-fg-1 hover:bg-bg-2/60 transition-colors cursor-pointer bg-transparent border-0 border-l border-line-1"><!> <span>Console</span></button> <span class="inline-flex items-center px-3 shrink-0 font-mono text-fg-3 border-l border-line-1 select-none"> </span></div>');function wh(t,e){nt(e,!0);const n=cd(),a=xa(),o=y(()=>Pr.count),i=y(()=>Be.readOnly),l=y(()=>Be.readOnlyReason);function d(){window.dispatchEvent(new CustomEvent("red:open-pending-changes"))}const f=y(()=>Be.connected),v=y(()=>{var _,A;return((_=Be.probe.replication)==null?void 0:_.role)??((A=Be.active)==null?void 0:A.role)??"standalone"}),p=y(()=>r(v)==="primary"?"var(--color-role-primary)":r(v)==="replica"?"var(--color-role-replica)":r(v)==="embedded"?"var(--color-role-embedded)":"var(--color-fg-3)"),b=y(()=>{var _,A;return((_=Be.probe.replication)==null?void 0:_.wal_lsn)??((A=Be.probe.replication)==null?void 0:A.last_applied_lsn)}),h=y(()=>{const _=Be.probe.replication;if(!(!_||r(v)!=="replica")&&!(_.last_seen_primary_lsn===void 0||_.last_applied_lsn===void 0))return Math.max(0,_.last_seen_primary_lsn-_.last_applied_lsn)});function w(){window.dispatchEvent(new CustomEvent("red:open-connect"))}function k(){window.dispatchEvent(new CustomEvent("red:toggle-dev-console"))}function C(_){const A=_.target;A!=null&&A.closest("button, a, [data-no-nav]")||a.go({view:"cluster"})}function P(_){(_.key==="Enter"||_.key===" ")&&(_.preventDefault(),a.go({view:"cluster"}))}var $=yh(),O=c($),Z=c(O);{var Y=_=>{var A=bh(),R=ze(A),te=c(R);let F;var X=u(te,2),ee=c(X,!0);s(X),s(R);var L=u(R,4),H=c(L,!0);s(L);var j=u(L,2);{var le=K=>{var D=vh(),z=u(ze(D),2),B=u(c(z),2),re=c(B,!0);s(B),Se(),s(z),N(()=>S(re,Be.probe.rtt_ms)),g(K,D)};V(j,K=>{Be.probe.rtt_ms!==void 0&&K(le)})}var he=u(j,2);{var oe=K=>{var D=gh(),z=u(ze(D),2),B=u(c(z),2);let re;var de=c(B,!0);s(B),s(z),N(()=>{re=Pe(B,1,"text-fg-1 tabular-nums",null,re,{"text-warn":(r(h)??0)>0}),S(de,r(h))}),g(K,D)};V(he,K=>{r(v)==="replica"&&r(h)!==void 0&&K(oe)})}var Q=u(he,2);{var W=K=>{var D=ph(),z=u(ze(D),2),B=u(c(z),2),re=c(B,!0);s(B),s(z),N(()=>S(re,r(b))),g(K,D)};V(Q,K=>{r(b)!==void 0&&K(W)})}var G=u(Q,2);{var M=K=>{var D=hh(),z=u(ze(D),2),B=c(z);Un(B,{class:"size-3"}),Se(2),s(z),N(()=>Ne(z,"title",r(l)??"The server is open read-only — mutations are disabled.")),g(K,D)};V(G,K=>{r(i)&&K(M)})}N(()=>{F=yr(te,"",F,{"background-color":r(p)}),S(ee,r(v)),S(H,Be.active.label)}),g(_,A)},T=_=>{var A=xh();g(_,A)};V(Z,_=>{r(f)?_(Y):_(T,-1)})}s(O);var q=u(O,2);{var ne=_=>{var A=mh(),R=c(A);dh(R,{class:"size-3"});var te=u(R,2),F=c(te);s(te),s(A),N(()=>{Ne(A,"aria-label",`${r(o)} pending changes`),S(F,`Pending changes (${r(o)??""})`)}),_e("click",A,d),g(_,A)};V(q,_=>{r(o)>0&&_(ne)})}var ie=u(q,2);{var J=_=>{var A=_h(),R=u(c(A),2);ch(R,{class:"size-3"}),s(A),_e("click",A,w),g(_,A)};V(ie,_=>{r(f)||_(J)})}var ue=u(ie,2),U=c(ue);uh(U,{class:"size-3"}),Se(2),s(ue);var E=u(ue,2),I=c(E);s(E),s($),N(()=>{Ne(E,"title",`red-ui ${n.version} · ${n.gitSha} · built ${n.buildTime}`),S(I,`v${n.version??""}`)}),_e("click",O,C),_e("keydown",O,P),_e("click",ue,k),g(t,$),at()}nr(["click","keydown"]);var kh=x('<span class="hint svelte-1yq04zr"> </span>'),Sh=x('<button><span class="label svelte-1yq04zr"> </span> <!> <!></button>'),Ch=x('<div class="group-label svelte-1yq04zr"> </div> <!>',1),Eh=x('<div class="empty svelte-1yq04zr"> </div>'),Mh=x('<div class="scrim svelte-1yq04zr" role="presentation"></div> <div class="palette svelte-1yq04zr" role="dialog" aria-modal="true"><div class="input-wrap svelte-1yq04zr"><span class="search-icon svelte-1yq04zr">⌕</span> <input placeholder="Search or run a command…" spellcheck="false" class="svelte-1yq04zr"/> <!></div> <div class="list svelte-1yq04zr"><!> <!></div> <footer class="svelte-1yq04zr"><span><!> <!> navigate</span> <span><!> run</span> <span><!><!> toggle</span></footer></div>',1);function zh(t,e){nt(e,!0);const n=xa();let a=me(!1),o=me(""),i=me(0),l=me(void 0);function d(Z){window.dispatchEvent(new CustomEvent(Z))}const f=[{id:"ask",group:"navigate",label:"Open ask",hint:"/ask",run:()=>p({view:"ask"})},{id:"query",group:"navigate",label:"Open query",hint:"/query",run:()=>p({view:"query"})},{id:"collections",group:"navigate",label:"Open collections",hint:"/collections",run:()=>p({view:"collections"})},{id:"topology",group:"navigate",label:"Open cluster",hint:"/cluster",run:()=>p({view:"cluster"})},{id:"security",group:"navigate",label:"Open security",hint:"/security",run:()=>p({view:"security"})},{id:"analytics",group:"navigate",label:"Open analytics",hint:"/analytics",run:()=>p({view:"analytics"})},{id:"settings",group:"navigate",label:"Open settings",hint:"/settings",run:()=>p({view:"settings"})},{id:"appearance",group:"navigate",label:"Open appearance",hint:"/appearance",run:()=>p({view:"appearance"})},{id:"new-query",group:"data",label:"New query",shortcut:"⌘T",run:()=>{d("red:new-query"),b()}},{id:"open-connect",group:"actions",label:"Open Connect dropdown",shortcut:"⌘⇧C",run:()=>{d("red:open-connect"),b()}},{id:"apply-pending",group:"actions",label:"Apply pending changes",run:()=>{d("red:apply-pending"),b()}},{id:"discard-pending",group:"actions",label:"Discard pending changes",run:()=>{d("red:discard-pending"),b()}},{id:"toggle-theme",group:"view",label:"Toggle theme (light / dark)",hint:"theme",run:()=>{Rn.toggle(),b()}},{id:"show-shortcuts",group:"view",label:"Show keyboard shortcuts",shortcut:"?",run:()=>{b(),d("red:open-shortcuts")}}],v=y(()=>r(o).trim()===""?f:f.filter(Z=>Z.label.toLowerCase().includes(r(o).toLowerCase())));function p(Z){n.go(Z),b()}function b(){m(a,!1),m(o,""),m(i,0)}function h(Z){if(!(Z instanceof HTMLElement))return!1;if(Z.isContentEditable)return!0;const Y=Z.tagName;return Y==="INPUT"||Y==="TEXTAREA"||Y==="SELECT"}function w(Z){var q;const Y=Z.metaKey||Z.ctrlKey,T=Z.key.toLowerCase();if(Y&&T==="k"){Z.preventDefault(),m(a,!r(a)),r(a)&&setTimeout(()=>{var ne;return(ne=r(l))==null?void 0:ne.focus()},0);return}if(Y&&Z.shiftKey&&T==="c"){Z.preventDefault(),d("red:open-connect");return}if(Y&&!Z.shiftKey&&T==="t"&&!h(Z.target)){Z.preventDefault(),d("red:new-query");return}if(r(a)){if(Z.key==="Escape"){b();return}Z.key==="ArrowDown"&&(Z.preventDefault(),m(i,Math.min(r(i)+1,r(v).length-1),!0)),Z.key==="ArrowUp"&&(Z.preventDefault(),m(i,Math.max(r(i)-1,0),!0)),Z.key==="Enter"&&(Z.preventDefault(),(q=r(v)[r(i)])==null||q.run())}}vn(()=>{window.addEventListener("keydown",w);const Z=()=>{m(a,!0),setTimeout(()=>{var Y;return(Y=r(l))==null?void 0:Y.focus()},0)};return window.addEventListener("red:open-palette",Z),()=>{window.removeEventListener("keydown",w),window.removeEventListener("red:open-palette",Z)}});const k=["navigate","data","actions","view"],C={navigate:"Navigate",data:"Data",actions:"Actions",view:"View"};var P=_t(),$=ze(P);{var O=Z=>{var Y=Mh(),T=ze(Y),q=u(T,2),ne=c(q),ie=u(c(ne),2);Xt(ie),ln(ie,j=>m(l,j),()=>r(l));var J=u(ie,2);Br(J,{children:(j,le)=>{Se();var he=bt("esc");g(j,he)},$$slots:{default:!0}}),s(ne);var ue=u(ne,2),U=c(ue);$e(U,17,()=>k,gr,(j,le)=>{const he=y(()=>r(v).filter(G=>G.group===r(le)));var oe=_t(),Q=ze(oe);{var W=G=>{var M=Ch(),K=ze(M),D=c(K,!0);s(K);var z=u(K,2);$e(z,17,()=>r(he),gr,(B,re)=>{const de=y(()=>r(v).indexOf(r(re)));var be=Sh();let fe;var Ce=c(be),ke=c(Ce,!0);s(Ce);var xe=u(Ce,2);{var ge=se=>{var ve=kh(),Ae=c(ve,!0);s(ve),N(()=>S(Ae,r(re).hint)),g(se,ve)};V(xe,se=>{r(re).hint&&se(ge)})}var De=u(xe,2);{var ce=se=>{Br(se,{children:(ve,Ae)=>{Se();var Le=bt();N(()=>S(Le,r(re).shortcut)),g(ve,Le)},$$slots:{default:!0}})};V(De,se=>{r(re).shortcut&&se(ce)})}s(be),N(()=>{fe=Pe(be,1,"row svelte-1yq04zr",null,fe,{active:r(de)===r(i)}),S(ke,r(re).label)}),Sn("mouseenter",be,()=>m(i,r(de),!0)),_e("click",be,()=>r(re).run()),g(B,be)}),N(()=>S(D,C[r(le)])),g(G,M)};V(Q,G=>{r(he).length&&G(W)})}g(j,oe)});var E=u(U,2);{var I=j=>{var le=Eh(),he=c(le);s(le),N(()=>S(he,`No commands match "${r(o)??""}"`)),g(j,le)};V(E,j=>{r(v).length===0&&j(I)})}s(ue);var _=u(ue,2),A=c(_),R=c(A);Br(R,{children:(j,le)=>{Se();var he=bt("↑");g(j,he)},$$slots:{default:!0}});var te=u(R,2);Br(te,{children:(j,le)=>{Se();var he=bt("↓");g(j,he)},$$slots:{default:!0}}),Se(),s(A);var F=u(A,2),X=c(F);Br(X,{children:(j,le)=>{Se();var he=bt("↵");g(j,he)},$$slots:{default:!0}}),Se(),s(F);var ee=u(F,2),L=c(ee);Br(L,{children:(j,le)=>{Se();var he=bt("⌘");g(j,he)},$$slots:{default:!0}});var H=u(L);Br(H,{children:(j,le)=>{Se();var he=bt("K");g(j,he)},$$slots:{default:!0}}),Se(),s(ee),s(_),s(q),_e("click",T,b),_e("keydown",T,function(...j){}),_e("input",ie,()=>m(i,0)),Sr(ie,()=>r(o),j=>m(o,j)),g(Z,Y)};V($,Z=>{r(a)&&Z(O)})}g(t,P),at()}nr(["click","keydown","input"]);const Nh=[{id:"palette",context:"Global",keys:["⌘","K"],label:"Open command palette"},{id:"shortcuts",context:"Global",keys:["?"],label:"Show keyboard shortcuts"},{id:"new-query",context:"Global",keys:["⌘","T"],label:"New query"},{id:"open-connect",context:"Connection",keys:["⌘","⇧","C"],label:"Open Connect dropdown"},{id:"dismiss",context:"Editing",keys:["Esc"],label:"Cancel / dismiss overlay or palette"}],Th=["Global","Connection","Workspace","Editing"];var Ih=x('<li class="flex items-center justify-between gap-3 px-2 py-1.5 rounded hover:bg-bg-2"><span class="text-fg-1 text-[13px]"> </span> <span class="inline-flex gap-1 shrink-0"></span></li>'),Ah=x('<section><div class="flex items-baseline justify-between mb-2"><h3 class="type-label m-0"> </h3> <span class="text-fg-3 text-[11px]"> </span></div> <ul class="grid gap-1 m-0 p-0 list-none"></ul></section>'),Lh=x('<div class="fixed inset-0 z-[200] bg-bg-0/70 backdrop-blur-md flex items-center justify-center p-6" role="presentation"><div class="w-full max-w-[640px] max-h-[80vh] overflow-y-auto bg-bg-1 border border-line-2 rounded-lg shadow-2xl" role="dialog" aria-modal="true" aria-label="Keyboard shortcuts" tabindex="-1"><header class="flex items-center justify-between px-5 py-3 border-b border-line-1"><div class="flex items-center gap-2"><span class="type-label">Keyboard shortcuts</span></div> <div class="flex items-center gap-1.5 text-fg-3 text-[11px]"><!> close</div></header> <div class="p-5 grid gap-5"></div></div></div>');function Oh(t,e){nt(e,!0);let n=me(!1);function a(){m(n,!1)}function o(b){if(!(b instanceof HTMLElement))return!1;if(b.isContentEditable)return!0;const h=b.tagName;return h==="INPUT"||h==="TEXTAREA"||h==="SELECT"}function i(b){if(b.key==="Escape"&&r(n)){b.preventDefault(),a();return}if(b.key==="?"&&!b.metaKey&&!b.ctrlKey&&!b.altKey){if(o(b.target))return;b.preventDefault(),m(n,!r(n))}}vn(()=>{window.addEventListener("keydown",i);const b=()=>{m(n,!0)};return window.addEventListener("red:open-shortcuts",b),()=>{window.removeEventListener("keydown",i),window.removeEventListener("red:open-shortcuts",b)}});const l=y(()=>Th.map(b=>({ctx:b,items:Nh.filter(h=>h.context===b)})).filter(b=>b.items.length>0)),d={Global:"Available anywhere in the app",Connection:"Manage which reddb you talk to",Workspace:"Move between tabs and panes",Editing:"While editing data or running queries"};var f=_t(),v=ze(f);{var p=b=>{var h=Lh(),w=c(h),k=c(w),C=u(c(k),2),P=c(C);Br(P,{children:(O,Z)=>{Se();var Y=bt("Esc");g(O,Y)},$$slots:{default:!0}}),Se(),s(C),s(k);var $=u(k,2);$e($,21,()=>r(l),gr,(O,Z)=>{var Y=Ah(),T=c(Y),q=c(T),ne=c(q,!0);s(q);var ie=u(q,2),J=c(ie,!0);s(ie),s(T);var ue=u(T,2);$e(ue,21,()=>r(Z).items,gr,(U,E)=>{var I=Ih(),_=c(I),A=c(_,!0);s(_);var R=u(_,2);$e(R,21,()=>r(E).keys,gr,(te,F)=>{Br(te,{children:(X,ee)=>{Se();var L=bt();N(()=>S(L,r(F))),g(X,L)},$$slots:{default:!0}})}),s(R),s(I),N(()=>S(A,r(E).label)),g(U,I)}),s(ue),s(Y),N(()=>{S(ne,r(Z).ctx),S(J,d[r(Z).ctx])}),g(O,Y)}),s($),s(w),s(h),_e("click",h,a),_e("click",w,O=>O.stopPropagation()),_e("keydown",w,function(...O){}),g(b,h)};V(v,b=>{r(n)&&b(p)})}g(t,f),at()}nr(["click","keydown"]);const dd={name:"key-round",size:24,node:[["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"}]]};dd.node;function Sa(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return dd}}))}var Ph=x('<label for="mp-confirm" class="type-label block mb-1">Confirm</label> <input id="mp-confirm" type="password" autocomplete="new-password" spellcheck="false" class="w-full h-9 px-3 mb-2 bg-bg-0 border border-line-2 rounded-md font-mono text-[13px] text-fg-0 outline-none transition-colors focus:border-accent"/>',1),Dh=x("<!> ",1),Rh=x('<!> <span class="text-danger truncate"> </span>',1),Vh=x('<button type="button" class="inline-flex items-center gap-1.5 text-fg-3 hover:text-danger transition-colors cursor-pointer bg-transparent border-0 p-0"><!> <span>Start fresh — wipe this browser</span></button>'),Hh=x('<div class="flex items-center justify-between gap-2"><span class="text-danger">Erase the encrypted store and all saved connections?</span></div> <div class="flex items-center gap-2 mt-1.5"><button type="button" class="inline-flex items-center gap-1.5 px-2 py-1 rounded border border-danger/40 bg-danger/10 text-danger hover:bg-danger/20 cursor-pointer"><!> Yes, wipe</button> <button type="button" class="px-2 py-1 rounded border border-line-2 text-fg-2 hover:text-fg-0 cursor-pointer">Cancel</button></div>',1),Fh=x('<div class="fixed inset-0 z-[100] flex items-center justify-center bg-bg-0/70 backdrop-blur-sm motion-reduce:backdrop-blur-none" role="dialog" aria-modal="true" aria-labelledby="mp-title"><form class="w-[380px] bg-bg-1 border border-line-2 rounded-lg shadow-2xl p-5"><div class="flex items-center gap-2 mb-1.5 text-fg-0"><!> <h2 id="mp-title" class="type-h2 m-0"> </h2></div> <p class="text-fg-3 text-[12px] leading-relaxed m-0 mb-3"> </p> <label for="mp-pwd" class="type-label block mb-1">Master password</label> <input id="mp-pwd" type="password" spellcheck="false" class="w-full h-9 px-3 mb-2 bg-bg-0 border border-line-2 rounded-md font-mono text-[13px] text-fg-0 outline-none transition-colors focus:border-accent"/> <!> <button type="submit" class="w-full h-9 mt-1 bg-primary text-on-primary font-medium rounded-md cursor-pointer transition-colors hover:bg-primary-active disabled:opacity-40 disabled:cursor-not-allowed flex items-center justify-center gap-2 text-[13px]"><!></button> <div class="h-5 mt-2 flex items-center gap-1.5 text-[11px] font-mono"><!></div> <div class="mt-3 pt-3 border-t border-line-1 text-[11px] font-mono"><!></div></form></div>');function qh(t,e){nt(e,!0);let n=me(""),a=me(""),o=me(!1),i=me(!1),l=me(void 0);function d(){xr.error=null,m(i,!0)}function f(){m(i,!1)}function v(){xr.wipe(),m(n,""),m(a,""),m(i,!1),setTimeout(()=>{var O;return(O=r(l))==null?void 0:O.focus()},0)}const p=y(()=>xr.needsSetup),b=y(()=>xr.error),h=y(()=>r(p)?"Set a master password":"Unlock credentials"),w=y(()=>r(p)?"Picks a key that encrypts your connection history at rest. The password lives in this browser session only — there is no recovery.":"Enter the master password used to encrypt your saved connections.");Lt(()=>{xr.locked&&setTimeout(()=>{var O;return(O=r(l))==null?void 0:O.focus()},0)});async function k(O){if(O.preventDefault(),r(o)||!r(n))return;if(r(p)&&r(n)!==r(a)){xr.error="Passwords don't match";return}m(o,!0);const Z=await xr.unlock(r(n));m(o,!1),Z&&(m(n,""),m(a,""),Be.refresh())}var C=_t(),P=ze(C);{var $=O=>{var Z=Fh(),Y=c(Z),T=c(Y),q=c(T);{var ne=Q=>{Sa(Q,{class:"size-4 text-primary-text"})},ie=Q=>{Un(Q,{class:"size-4 text-primary-text"})};V(q,Q=>{r(p)?Q(ne):Q(ie,-1)})}var J=u(q,2),ue=c(J,!0);s(J),s(T);var U=u(T,2),E=c(U,!0);s(U);var I=u(U,4);Xt(I),ln(I,Q=>m(l,Q),()=>r(l));var _=u(I,2);{var A=Q=>{var W=Ph(),G=u(ze(W),2);Xt(G),Sr(G,()=>r(a),M=>m(a,M)),g(Q,W)};V(_,Q=>{r(p)&&Q(A)})}var R=u(_,2),te=c(R);{var F=Q=>{var W=Dh(),G=ze(W);cn(G,{class:"size-3.5 animate-spin"});var M=u(G);N(()=>S(M,` ${r(p)?"Setting up…":"Unlocking…"}`)),g(Q,W)},X=Q=>{var W=bt();N(()=>S(W,r(p)?"Set password":"Unlock")),g(Q,W)};V(te,Q=>{r(o)?Q(F):Q(X,-1)})}s(R);var ee=u(R,2),L=c(ee);{var H=Q=>{var W=Rh(),G=ze(W);ra(G,{class:"size-3 text-danger"});var M=u(G,2),K=c(M,!0);s(M),N(()=>S(K,r(b))),g(Q,W)};V(L,Q=>{r(b)&&Q(H)})}s(ee);var j=u(ee,2),le=c(j);{var he=Q=>{var W=Vh(),G=c(W);Ra(G,{class:"size-3"}),Se(2),s(W),_e("click",W,d),g(Q,W)},oe=Q=>{var W=Hh(),G=u(ze(W),2),M=c(G),K=c(M);Ra(K,{class:"size-3"}),Se(),s(M);var D=u(M,2);s(G),_e("click",M,v),_e("click",D,f),g(Q,W)};V(le,Q=>{r(i)?Q(oe,-1):Q(he)})}s(j),s(Y),s(Z),N(()=>{S(ue,r(h)),S(E,r(w)),Ne(I,"autocomplete",r(p)?"new-password":"current-password"),R.disabled=r(o)||!r(n)||r(p)&&!r(a)}),Sn("submit",Y,k),Sr(I,()=>r(n),Q=>m(n,Q)),g(O,Z)};V(P,O=>{xr.backend==="web"&&xr.locked&&O($)})}g(t,C),at()}nr(["click"]);var Kh=x('<div class="text-fg-3 text-[12px] font-mono py-6 text-center">No staged changes.</div>'),jh=x('<div class="text-warn text-[11px] mt-1 inline-flex items-center gap-1"><!> </div>'),Bh=x('<li class="border border-line-1 rounded px-2 py-1.5 bg-bg-2/30"><div class="flex items-center justify-between gap-2 mb-1"><span class="text-fg-2"><span class="text-fg-1"> </span> <span class="text-fg-3">· rid</span> <span class="text-fg-1 tabular-nums"> </span> <span class="text-fg-3">·</span> <span class="text-fg-1"> </span></span> <button type="button" class="text-fg-3 hover:text-fg-1 text-[11px]">Unstage</button></div> <div class="text-[11px] grid grid-cols-[auto_1fr] gap-x-2 gap-y-0.5"><span class="text-fg-3">old</span> <span class="text-fg-2 truncate"> </span> <span class="text-fg-3">new</span> <span class="text-primary-text truncate"> </span></div> <div class="text-fg-3 text-[10.5px] mt-1 truncate"> </div> <!></li>'),Uh=x('<ul class="space-y-2 text-[12px] font-mono"></ul>'),Wh=x('<div class="text-warn text-[11px] font-mono mt-2"> </div>'),Gh=x('<div class="flex items-center gap-1.5 px-4 py-2 text-warn text-[11px] font-mono border-t border-line-1 bg-warn/5"><!> <span> </span></div>'),Yh=x('<div class="fixed inset-0 z-50 grid place-items-center bg-bg-0/70 backdrop-blur-sm motion-reduce:backdrop-blur-none" role="dialog" aria-modal="true" aria-label="Pending changes"><div class="w-full max-w-2xl mx-4 bg-bg-1 border border-line-1 rounded-md shadow-lg overflow-hidden"><div class="flex items-center justify-between px-4 py-3 border-b border-line-1"><div><h2 class="type-h3 m-0">Pending changes</h2> <p class="text-fg-3 text-[11px] font-mono m-0 mt-0.5"> </p></div> <button type="button" class="p-1 text-fg-3 hover:text-fg-1" aria-label="Close"><!></button></div> <div class="max-h-[50vh] overflow-auto px-4 py-3"><!> <!></div> <!> <div class="flex items-center justify-end gap-2 px-4 py-3 border-t border-line-1 bg-bg-1/60"><button type="button" class="text-[12px] font-mono px-3 py-1 text-fg-3 hover:text-fg-1">Cancel</button> <button type="button" class="text-[12px] font-mono px-3 py-1 text-fg-1 border border-line-1 rounded hover:bg-bg-2">Discard all</button> <button type="button" class="text-[12px] font-mono px-3 py-1 bg-primary text-on-primary rounded disabled:opacity-50"> </button></div></div></div>');function $h(t,e){nt(e,!0);const n=y(()=>Be.readOnly),a=y(()=>Be.readOnlyReason);let o=me(!1),i=me(null);async function l(){if(!r(o)){m(o,!0),m(i,null);try{(await Pr.commitAll()).failed.length===0&&e.onClose()}catch(b){m(i,b.message,!0)}finally{m(o,!1)}}}function d(){Pr.discardAll(),e.onClose()}var f=_t(),v=ze(f);{var p=b=>{var h=Yh(),w=c(h),k=c(w),C=c(k),P=u(c(C),2),$=c(P);s(P),s(C);var O=u(C,2),Z=c(O);Ar(Z,{class:"size-4"}),s(O),s(k);var Y=u(k,2),T=c(Y);{var q=te=>{var F=Kh();g(te,F)},ne=te=>{var F=Uh();$e(F,21,()=>Pr.changes,X=>X.id,(X,ee)=>{var L=Bh(),H=c(L),j=c(H),le=c(j),he=c(le,!0);s(le);var oe=u(le,4),Q=c(oe,!0);s(oe);var W=u(oe,4),G=c(W,!0);s(W),s(j);var M=u(j,2);s(H);var K=u(H,2),D=u(c(K),2),z=c(D,!0);s(D);var B=u(D,4),re=c(B,!0);s(B),s(K);var de=u(K,2),be=c(de,!0);s(de);var fe=u(de,2);{var Ce=ke=>{var xe=jh(),ge=c(xe);zc(ge,{class:"size-3"});var De=u(ge);s(xe),N(()=>S(De,` ${r(ee).error??""}`)),g(ke,xe)};V(fe,ke=>{r(ee).error&&ke(Ce)})}s(L),N((ke,xe)=>{S(he,r(ee).table),S(Q,r(ee).row),S(G,r(ee).col),S(z,ke),S(re,r(ee).newValue),S(be,xe)},[()=>String(r(ee).oldValue??"NULL"),()=>ws(r(ee))]),_e("click",M,()=>Pr.unstage(r(ee).id)),g(X,L)}),s(F),g(te,F)};V(T,te=>{Pr.count===0?te(q):te(ne,-1)})}var ie=u(T,2);{var J=te=>{var F=Wh(),X=c(F,!0);s(F),N(()=>S(X,r(i))),g(te,F)};V(ie,te=>{r(i)&&te(J)})}s(Y);var ue=u(Y,2);{var U=te=>{var F=Gh(),X=c(F);Un(X,{class:"size-3 shrink-0"});var ee=u(X,2),L=c(ee,!0);s(ee),s(F),N(()=>S(L,r(a)??"Server is read-only (file in use) — changes can’t be applied.")),g(te,F)};V(ue,te=>{r(n)&&te(U)})}var E=u(ue,2),I=c(E),_=u(I,2),A=u(_,2),R=c(A,!0);s(A),s(E),s(w),s(h),N(()=>{S($,`${Pr.count??""} staged · review before applying`),_.disabled=Pr.count===0,A.disabled=Pr.count===0||r(o)||r(n),Ne(A,"title",r(n)?r(a)??"Server is read-only — mutations are disabled.":void 0),S(R,r(o)?"Applying…":"Apply all")}),_e("click",O,function(...te){var F;(F=e.onClose)==null||F.apply(this,te)}),_e("click",I,function(...te){var F;(F=e.onClose)==null||F.apply(this,te)}),_e("click",_,d),_e("click",A,l),g(b,h)};V(v,b=>{e.open&&b(p)})}g(t,f),at()}nr(["click"]);const Xh=["vector","queue","stats","diff","hypertable","graph","kv","document","table"],ud={table:"table",structured:"table",graph:"graph",node:"graph",edge:"graph",hypertable:"hypertable",timeseries:"hypertable","time-series":"hypertable",kv:"kv","key-value":"kv",vector:"vector",embedding:"vector",queue:"queue",stream:"queue",message:"queue",stats:"stats",statistic:"stats",statistics:"stats",metric:"stats",metrics:"stats",document:"document",doc:"document",time_series:"hypertable",key_value:"kv",mixed:"table",hll:"stats",sketch:"stats",filter:"stats",cuckoo_filter:"stats",diff:"diff",vcs_diff:"diff"};function Zh(t){return`'${t.replace(/'/g,"''")}'`}function ll(t){if(!t||t.length===0)return"table";const e=new Set;for(const n of t){const a=String(n).toLowerCase(),o=ud[a];o&&e.add(o)}for(const n of Xh)if(e.has(n))return n;return"table"}function Qh(t){var o,i;const e=[];if(t.kind&&e.push(t.kind),t.capability&&e.push(t.capability),Array.isArray(t.capabilities))for(const l of t.capabilities)typeof l=="string"&&e.push(l);const n=(o=t.schema)==null?void 0:o.kind;typeof n=="string"&&e.push(n);const a=(i=t.schema)==null?void 0:i.capability;return typeof a=="string"&&e.push(a),e}function Jh(t){return typeof t!="string"?null:ud[t.toLowerCase()]??null}async function cl(t,e){const n=e.replace(/[^A-Za-z0-9_./-]/g,"");for(const a of[`HLL INFO ${n}`,`SKETCH INFO ${n}`,`FILTER INFO ${n}`])try{if((await t.query(a)).ok)return"stats"}catch{}return null}function eb(t){var a,o,i,l;const e=new Set((((a=t.result)==null?void 0:a.columns)??[]).map(d=>d.toLowerCase())),n=(l=(i=(o=t.result)==null?void 0:o.records)==null?void 0:i[0])==null?void 0:l.values;if(n)for(const d of Object.keys(n))e.add(d.toLowerCase());return[...e]}function tb(t){var l,d,f;const e=eb(t),n=v=>e.includes(v),a=v=>v.some(n),o=(f=(d=(l=t.result)==null?void 0:l.records)==null?void 0:d[0])==null?void 0:f.values,i=(o==null?void 0:o.kind)??(o==null?void 0:o.red_kind)??(o==null?void 0:o.red_entity_type);return i==="node"||i==="edge"||i==="graph"?"graph":i==="document"?"document":i==="kv"||n("key")&&n("value")?"kv":a(["message","payload","body"])&&a(["message_id","state","status","consumer","delivery_state"])?"queue":a(["timestamp","time","ts","event_time","bucket"])&&a(["value","count","metric"])?"hypertable":a(["metric","stat","name","table"])&&a(["value","count","total","avg","rate","row_count","page_count","cardinality","memory_bytes"])?"stats":null}async function fd(t,e,n={}){var a,o,i,l,d,f,v;if(n.useMetadata)try{const p=await t.collection(e),b=Qh(p);if(b.length>0)return ll(b)}catch{}try{const b=(l=(i=(o=(a=(await t.query(`SELECT model FROM red.collections WHERE name = ${Zh(e)} LIMIT 1`)).result)==null?void 0:a.records)==null?void 0:o[0])==null?void 0:i.values)==null?void 0:l.model,h=Jh(b);if(h&&h!=="table")return h;if(typeof b=="string"&&b.toLowerCase()==="mixed"){const w=await cl(t,e);if(w)return w}}catch{}try{const p=e.replace(/[^A-Za-z0-9_./-]/g,""),b=await t.query(`SELECT * FROM ${p} LIMIT 1`),h=[];b.capability&&h.push(b.capability);const w=(v=(f=(d=b.result)==null?void 0:d.records)==null?void 0:f[0])==null?void 0:v.values,k=w?w.red_capabilities:void 0;if(Array.isArray(k))for(const P of k)typeof P=="string"&&h.push(P);else if(typeof k=="string")for(const P of k.split(/[,\s]+/))P&&h.push(P);const C=ll(h);return C!=="table"?C:tb(b)??"table"}catch{return await cl(t,e)??"table"}}const bi={table:{glyph:"▦",label:"Table"},graph:{glyph:"◇",label:"Graph"},hypertable:{glyph:"⊞",label:"Hypertable"},kv:{glyph:"⋮",label:"Key-value"},vector:{glyph:"→",label:"Vector"},queue:{glyph:"≡",label:"Queue"},stats:{glyph:"◔",label:"Stats"},diff:{glyph:"⇄",label:"Diff"},document:{glyph:"¶",label:"Document"}},rb=/^red[._]/i;function nb(t){return rb.test(t)}var ab=x('<span class="font-mono text-[10px] text-fg-3"> </span>'),ob=x('<div class="p-3 flex flex-col items-start gap-2 text-[12px] text-fg-3 font-mono leading-relaxed"><!> <span class="text-fg-1">Locked.</span> <span>Enter your master password to load the schema.</span></div>'),ib=x('<div class="p-3 flex flex-col items-start gap-2 text-[12px] text-fg-3 font-mono leading-relaxed"><!> <span>No schema to show.</span> <span>Connect to a reddb instance to inspect collections.</span></div>'),sb=x(`<div class="p-3 text-[12px] text-fg-3 font-mono leading-relaxed"><div class="text-fg-2">Couldn't load collections.</div> <div class="mt-1 break-words"> </div></div>`),lb=x('<div class="h-5 rounded border border-line-1 bg-bg-1 px-1.5 motion-safe:animate-pulse"></div>'),cb=x('<li class="flex h-7 items-center gap-2 px-3"><div class="h-4 w-4 rounded bg-bg-2 motion-safe:animate-pulse"></div> <div class="h-3 rounded bg-bg-2 motion-safe:animate-pulse"></div></li>'),db=x('<div class="schema-skeleton" aria-busy="true" aria-label="Loading schema"><div class="p-2 border-b border-line-1 grid gap-2"><div class="flex items-center gap-1.5 h-7 rounded border border-line-1 bg-bg-0 px-2"><!> <div class="h-3 w-32 rounded bg-bg-2 motion-safe:animate-pulse"></div></div> <div class="flex flex-wrap gap-1"></div></div> <ul class="py-1" role="presentation"></ul></div>'),ub=x('<div class="p-3 flex flex-col items-start gap-2 text-[12px] text-fg-3 font-mono leading-relaxed"><span class="text-fg-2">No user collections.</span> <span>Seed the instance to populate the schema.</span> <code class="px-2 py-1 bg-bg-2 border border-line-1 rounded text-[11px]"> </code></div>'),fb=x('<button type="button" class="text-fg-3 hover:text-fg-1 cursor-pointer" aria-label="Clear collection search"><!></button>'),vb=x('<button type="button"> </button>'),gb=x('<li class="px-3 py-2 font-mono text-[12px] text-fg-3">No matching collections.</li>'),pb=x('<li><a><span class="inline-block w-4 text-center text-fg-3" aria-hidden="true"> </span> <span class="truncate"> </span> <span class="sr-only"> </span></a></li>'),hb=x('<div class="p-2 border-b border-line-1 grid gap-2"><div class="flex items-center gap-1.5 h-7 rounded border border-line-1 bg-bg-0 px-2 text-[11px] font-mono"><!> <input type="text" placeholder="search collections…" class="min-w-0 flex-1 bg-transparent text-fg-1 outline-none placeholder:text-fg-3"/> <!></div> <div class="flex flex-wrap gap-1"><button type="button"> </button> <!></div></div> <ul class="py-1" role="list"><!> <!></ul>',1),bb=x('<div class="px-3 py-2 border-b border-line-1 flex items-center justify-between text-fg-3"><div class="flex items-center gap-2"><!> <span class="type-label">Schema</span></div> <!></div> <!>',1);function xb(t,e){nt(e,!0);const n=xa(),a=y(()=>n.collection);let o=me(jt([])),i=me(!1),l=me(null),d=me(""),f=me("all");const v=Array.from({length:10},(I,_)=>_),p=Array.from({length:4},(I,_)=>_),b=y(()=>Be.connected),h=y(()=>Be.active.url),w=y(()=>{const I=new Map;for(const _ of r(o))I.set(_.capability,(I.get(_.capability)??0)+1);return[...I.entries()].sort((_,A)=>_[0].localeCompare(A[0]))}),k=y(()=>{const I=r(d).trim().toLowerCase();return r(o).filter(_=>{if(r(f)!=="all"&&_.capability!==r(f))return!1;if(!I)return!0;const A=bi[_.capability];return _.name.toLowerCase().includes(I)||A.label.toLowerCase().includes(I)})});async function C(){const I=Be.client;if(!I||!r(b)){m(o,[],!0);return}m(i,!0),m(l,null);const _=r(h);try{const R=(await St.track("schema · list collections",()=>I.collections())).filter(F=>!nb(F)).sort();m(o,R.map(F=>({name:F,capability:"table"})),!0);const te=R.map(F=>St.track(`schema · probe ${F}`,async()=>{const X=await fd(I,F);_===r(h)&&m(o,r(o).map(ee=>ee.name===F?{...ee,capability:X}:ee),!0)}));await Promise.all(te)}catch(A){m(l,A.message,!0),m(o,[],!0)}finally{m(i,!1)}}Lt(()=>{xr.locked||(r(b),r(h),C())});var P=bb(),$=ze(P),O=c($),Z=c(O);Po(Z,{class:"size-3.5"}),Se(2),s(O);var Y=u(O,2);{var T=I=>{var _=ab(),A=c(_,!0);s(_),N(()=>S(A,r(o).length)),g(I,_)};V(Y,I=>{r(b)&&r(o).length>0&&I(T)})}s($);var q=u($,2);{var ne=I=>{var _=ob(),A=c(_);Un(A,{class:"size-4 text-primary-text"}),Se(4),s(_),g(I,_)},ie=I=>{var _=ib(),A=c(_);Kc(A,{class:"size-4 text-fg-3"}),Se(4),s(_),g(I,_)},J=I=>{var _=sb(),A=u(c(_),2),R=c(A,!0);s(A),s(_),N(()=>S(R,r(l))),g(I,_)},ue=I=>{var _=db(),A=c(_),R=c(A),te=c(R);Gr(te,{class:"size-3 text-fg-3"}),Se(2),s(R);var F=u(R,2);$e(F,20,()=>p,ee=>ee,(ee,L)=>{var H=lb();N(()=>yr(H,`width: ${L===0?42:28+L*8}px`)),g(ee,H)}),s(F),s(A);var X=u(A,2);$e(X,20,()=>v,ee=>ee,(ee,L)=>{var H=cb(),j=u(c(H),2);s(H),N(()=>yr(j,`width: ${L%3===0?132:L%3===1?96:164}px`)),g(ee,H)}),s(X),s(_),g(I,_)},U=I=>{var _=ub(),A=u(c(_),4),R=c(A);s(A),s(_),N(()=>S(R,`./scripts/seed.sh ${r(h)??""}`)),g(I,_)},E=I=>{var _=hb(),A=ze(_),R=c(A),te=c(R);Gr(te,{class:"size-3 text-fg-3"});var F=u(te,2);Xt(F);var X=u(F,2);{var ee=G=>{var M=fb(),K=c(M);Ar(K,{class:"size-3"}),s(M),_e("click",M,()=>m(d,"")),g(G,M)};V(X,G=>{r(d)&&G(ee)})}s(R);var L=u(R,2),H=c(L),j=c(H);s(H);var le=u(H,2);$e(le,17,()=>r(w),([G,M])=>G,(G,M)=>{var K=y(()=>Qr(r(M),2));let D=()=>r(K)[0],z=()=>r(K)[1];const B=y(()=>bi[D()]);var re=vb(),de=c(re);s(re),N(be=>{Ne(re,"title",r(B).label),Pe(re,1,be),S(de,`${r(B).glyph??""} ${z()??""}`)},[()=>Ve(["h-5 rounded border px-1.5 font-mono text-[10px] cursor-pointer transition-colors",r(f)===D()?"border-accent/40 bg-accent/10 text-primary-text":"border-line-1 text-fg-3 hover:text-fg-1 hover:border-line-2"].join(" "))]),_e("click",re,()=>m(f,D(),!0)),g(G,re)}),s(L),s(A);var he=u(A,2),oe=c(he);{var Q=G=>{var M=gb();g(G,M)};V(oe,G=>{r(k).length===0&&G(Q)})}var W=u(oe,2);$e(W,17,()=>r(k),G=>G.name,(G,M)=>{const K=y(()=>bi[r(M).capability]),D=y(()=>r(M).name===r(a)),z=y(()=>({view:"collection",collection:r(M).name,subpage:za(r(M).capability)}));var B=pb(),re=c(B),de=c(re),be=c(de,!0);s(de);var fe=u(de,2),Ce=c(fe,!0);s(fe);var ke=u(fe,2),xe=c(ke,!0);s(ke),s(re),s(B),N((ge,De)=>{Ne(re,"href",ge),Ne(re,"aria-current",r(D)?"page":void 0),Ne(re,"title",`${r(K).label} · ${r(M).name}`),Pe(re,1,De),S(be,r(K).glyph),S(Ce,r(M).name),S(xe,r(K).label)},[()=>n.href(r(z)),()=>Ve(["w-full flex items-center gap-2 px-3 py-1 font-mono text-[12px] no-underline transition-colors",r(D)?"bg-bg-1 text-fg-0":"text-fg-2 hover:bg-bg-1 hover:text-fg-0"].join(" "))]),_e("click",re,ge=>n.go(r(z),ge)),g(G,B)}),s(he),N(G=>{Pe(H,1,G),S(j,`all ${r(o).length??""}`)},[()=>Ve(["h-5 rounded border px-1.5 font-mono text-[10px] cursor-pointer transition-colors",r(f)==="all"?"border-accent/40 bg-accent/10 text-primary-text":"border-line-1 text-fg-3 hover:text-fg-1 hover:border-line-2"].join(" "))]),Sr(F,()=>r(d),G=>m(d,G)),_e("click",H,()=>m(f,"all")),g(I,_)};V(q,I=>{xr.locked?I(ne):r(b)?r(l)?I(J,2):r(i)&&r(o).length===0?I(ue,3):r(o).length===0?I(U,4):I(E,-1):I(ie,1)})}g(t,P),at()}nr(["click"]);function mb(){return Math.random().toString(36).slice(2,10)}var Za,Qa,Ja;class _b{constructor(){je(this,Za,me(jt([])));je(this,Qa,me(null));je(this,Ja,y(()=>this.tabs.find(e=>e.id===this.activeId)??null))}get tabs(){return r(pe(this,Za))}set tabs(e){m(pe(this,Za),e,!0)}get activeId(){return r(pe(this,Qa))}set activeId(e){m(pe(this,Qa),e,!0)}get active(){return r(pe(this,Ja))}set active(e){m(pe(this,Ja),e)}open(e,n=!1){if(!n){const o=this.tabs.find(i=>i.kind===e.kind&&i.key===e.key);if(o){const i={...o,...e,id:o.id};return this.tabs=this.tabs.map(l=>l===o?i:l),this.activeId=o.id,i}}const a={...e,id:mb()};return this.tabs=[...this.tabs,a],this.activeId=a.id,a}focus(e){this.tabs.some(n=>n.id===e)&&(this.activeId=e)}close(e,n){const a=this.tabs.findIndex(i=>i.id===e);if(a<0)return;const o=this.activeId===e;if(this.tabs=this.tabs.filter(i=>i.id!==e),o)if(n&&this.tabs.some(i=>i.id===n))this.activeId=n;else if(this.tabs.length===0)this.activeId=null;else{const i=this.tabs[Math.max(0,a-1)];this.activeId=(i==null?void 0:i.id)??null}}rename(e,n){this.tabs=this.tabs.map(a=>a.id===e?{...a,label:n}:a)}setOverride(e,n){this.tabs=this.tabs.map(a=>a.id===e?{...a,overrideCapability:n}:a)}setShowSystem(e,n){this.tabs=this.tabs.map(a=>a.id===e?{...a,showSystemColumns:n}:a)}hydrate(e,n){this.tabs=e,this.activeId=n}clear(){this.tabs=[],this.activeId=null}}Za=new WeakMap,Qa=new WeakMap,Ja=new WeakMap;const Kt=new _b;function yb(){return{sql:"",result:null,error:null,running:!1,runningStartedAt:null}}function wb(t){const e=t.replace(/\s+/g," ").trim();return e.length<=80?`query · ${e}`:`query · ${e.slice(0,79).trimEnd()}…`}function kb(t){return t instanceof DOMException&&t.name==="AbortError"||t instanceof Error&&t.name==="AbortError"}function Sb(t){if(t<1e3)return`${t}ms`;if(t<6e4)return`${(t/1e3).toFixed(1)}s`;const e=Math.floor(t/6e4),n=Math.floor(t%6e4/1e3);return`${e}m ${n.toString().padStart(2,"0")}s`}var eo;class Cb{constructor(){je(this,eo,me(jt({})));qt(this,"counter",0);qt(this,"executor",null);qt(this,"runSeq",0);qt(this,"inFlight",new Map)}get states(){return r(pe(this,eo))}set states(e){m(pe(this,eo),e,!0)}setExecutor(e){this.executor=e}nextLabel(){return this.counter+=1,`Query ${this.counter}`}ensure(e){return this.states[e]||(this.states[e]=yb()),this.states[e]}setSql(e,n){const a=this.ensure(e);a.sql=n}get(e){return this.states[e]}has(e){return this.states[e]!==void 0}remove(e){this.cancel(e),delete this.states[e]}isDirty(e){const n=this.states[e];return n?n.sql.trim().length>0:!1}async run(e){var l,d,f;const n=this.ensure(e);if(n.running)return;if(!this.executor){n.error="No connection — connect to a reddb instance first.",n.result=null;return}const a=n.sql.trim();if(!a){n.error="Empty query.",n.result=null;return}const o=new AbortController,i=++this.runSeq;this.inFlight.set(e,{token:i,controller:o}),n.running=!0,n.runningStartedAt=Date.now(),n.error=null;try{const v=await St.track(wb(a),()=>this.executor(a,{signal:o.signal}));if(((l=this.inFlight.get(e))==null?void 0:l.token)!==i)return;n.result=v,n.error=v.ok?null:v.error??"Query failed."}catch(v){if(((d=this.inFlight.get(e))==null?void 0:d.token)!==i)return;if(o.signal.aborted||kb(v)){n.error=null;return}n.error=v.message,n.result=null}finally{((f=this.inFlight.get(e))==null?void 0:f.token)===i&&(this.inFlight.delete(e),n.running=!1,n.runningStartedAt=null)}}cancel(e){const n=this.inFlight.get(e);if(!n)return!1;this.inFlight.delete(e),n.controller.abort();const a=this.states[e];return a&&(a.running=!1,a.runningStartedAt=null,a.error=null),!0}clear(){for(const e of this.inFlight.values())e.controller.abort();this.inFlight.clear(),this.states={},this.counter=0,this.executor=null,this.runSeq=0}}eo=new WeakMap;const Ur=new Cb;function Eb(t,e,n=24){const a=t.trim();if(!a)return e;const o=a.match(/^\s*select\s+([\s\S]+?)\s+from\b/i);if(!o)return e;const i=o[1].replace(/\s+/g," ").trim();return!i||i==="*"?e:i.length<=n?i:i.slice(0,n-1).trimEnd()+"…"}function Bi(t){return t.replace(/[^A-Za-z0-9_./-]/g,"")}function dl(t,e){const n=Bi(t);return e==="kv"?`LIST KV ${n} LIMIT 200`:`SELECT * FROM ${n} LIMIT 200`}function Mb(t){return`'${t.replace(/'/g,"''")}'`}function zb(t){return["SELECT name, model, schema_mode, entities, segments, indices,","in_memory_bytes, on_disk_bytes, internal, tenant_id, queue_mode,","dimension, metric, session_key, session_gap_ms","FROM red.collections",`WHERE name = ${Mb(t)}`,"LIMIT 1"].join(" ")}function In(t){return typeof t=="string"&&t.length>0?t:void 0}function An(t){if(typeof t=="number"&&Number.isFinite(t))return t;if(typeof t=="string"&&t.trim()!==""){const e=Number(t);if(Number.isFinite(e))return e}}function Nb(t){if(typeof t=="boolean")return t;if(typeof t=="string"){if(t.toLowerCase()==="true")return!0;if(t.toLowerCase()==="false")return!1}}function Tb(t){if(!t)return null;const e=t.values,n=In(e.name);return n?{name:n,model:In(e.model),schemaMode:In(e.schema_mode),entities:An(e.entities),segments:An(e.segments),indices:An(e.indices),inMemoryBytes:An(e.in_memory_bytes),onDiskBytes:An(e.on_disk_bytes),internal:Nb(e.internal),tenantId:In(e.tenant_id),queueMode:In(e.queue_mode),dimension:An(e.dimension),metric:In(e.metric),sessionKey:In(e.session_key),sessionGapMs:An(e.session_gap_ms)}:null}function zo(t){return t===void 0?"n/a":new Intl.NumberFormat("en-US").format(t)}function ul(t){if(t===void 0)return"n/a";if(t===0)return"0 B";const e=["B","KiB","MiB","GiB","TiB"],n=Math.min(Math.floor(Math.log(t)/Math.log(1024)),e.length-1),a=t/1024**n,o=a>=100||n===0?0:1;return`${a.toFixed(o)} ${e[n]}`}function Ib(t){return t===void 0?null:t<1e3?`${t} ms`:t<6e4?`${(t/1e3).toFixed(t>=1e4?0:1)} s`:t<36e5?`${(t/6e4).toFixed(t>=6e5?0:1)} min`:`${(t/36e5).toFixed(t>=36e6?0:1)} h`}function fl(t){const e=[];t.schemaMode&&e.push(t.schemaMode),t.dimension!==void 0&&e.push(`${zo(t.dimension)}d`),t.metric&&e.push(t.metric),t.queueMode&&e.push(t.queueMode),t.sessionKey&&e.push(`session: ${t.sessionKey}`);const n=Ib(t.sessionGapMs);return n&&e.push(`gap ${n}`),t.internal&&e.push("internal"),e}class Ab{constructor(){qt(this,"renderers",[])}register(e){const n=this.renderers.findIndex(a=>a.capability===e.capability);n>=0?this.renderers[n]=e:this.renderers.push(e)}unregister(e){this.renderers=this.renderers.filter(n=>n.capability!==e)}list(){return this.renderers}has(e){return this.renderers.some(n=>n.capability===e)}pick(e,n,a){if(a){const l=this.renderers.find(d=>d.capability===a);if(l)return l}if(e){const l=this.renderers.find(d=>d.capability===e);if(l&&l.renders(n))return l}const o=this.renderers.find(l=>l.renders(n));if(o)return o;const i=this.renderers.find(l=>l.capability==="table");if(!i)throw new Error("No renderer matched and no table fallback is registered");return i}}const en=new Ab,vd={name:"columns-3",size:24,node:[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2"}],["path",{d:"M9 3v18"}],["path",{d:"M15 3v18"}]],aliases:["panels-left-right"]};vd.node;function Lb(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return vd}}))}const gd={name:"funnel",size:24,node:[["path",{d:"M10 20a1 1 0 0 0 .553.895l2 1A1 1 0 0 0 14 21v-7a2 2 0 0 1 .517-1.341L21.74 4.67A1 1 0 0 0 21 3H3a1 1 0 0 0-.742 1.67l7.225 7.989A2 2 0 0 1 10 14z"}]],aliases:["filter"]};gd.node;function pd(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return gd}}))}const Ob=80,hd=["rid","collection","kind","tenant","created_at","updated_at"],Pb=new Set(hd);function Ui(t){return Pb.has(t.toLowerCase())}function Db(t,e={}){const n=t.result.columns,a=n.filter(v=>!v.startsWith("red_")&&v!=="body"),o=a.filter(v=>!Ui(v)),i=o.find(v=>v.toLowerCase()==="id"),l=o.filter(v=>v!==i),d=[i,...l].filter(v=>!!v);return e.showSystem?[...hd.filter(v=>a.includes(v)),...d]:d.length>0?d:n}function vl(t){const e=t.toLowerCase();return e==="rid"?"rid":e==="id"?"id":null}function Rb(t){return t.find(e=>e.toLowerCase()==="rid")??t.find(e=>e.toLowerCase()==="id")??t.find(e=>e.toLowerCase().endsWith("_id"))??t[0]??null}function Vb(t){return t==null?"":typeof t=="object"?JSON.stringify(t):String(t)}function Hb(t){return t==null}function Fb(t,e=Ob){return t.result.records.slice(0,e).map(n=>n.values)}var qb=x('<div class="flex-1 grid place-items-center text-fg-3 text-[12px] font-mono p-6"> </div>'),Kb=x('<button type="button" class="inline-flex items-center gap-1 h-6 px-2 rounded border border-line-1 text-fg-3 hover:text-fg-1 hover:border-line-2 cursor-pointer" title="Return to the original result"><!> reset</button>'),jb=x('<button type="button" title="Build a SELECT for this collection"><!> <span>select</span></button> <button type="button" class="inline-flex items-center gap-1 h-6 px-2 rounded border border-line-1 text-fg-3 hover:text-fg-1 hover:border-line-2 cursor-pointer disabled:opacity-40 disabled:cursor-not-allowed" title="Run the current SELECT against reddb"><!> run</button> <!> <div class="h-4 w-px bg-line-1"></div>',1),Bb=x('<span class="text-[9px] px-1 rounded bg-primary text-on-primary"> </span>'),Ub=x('<button type="button" class="inline-flex items-center gap-1 h-6 px-2 rounded border border-line-1 text-fg-3 hover:text-fg-1 hover:border-line-2 cursor-pointer" title="Clear all filters"><!> clear</button>'),Wb=x('<label><input type="checkbox" class="sr-only"/> </label>'),Gb=x('<span class="text-warn"> </span>'),Yb=x('<div class="border-b border-line-1 bg-bg-1/20 px-3 py-2 text-[11px] font-mono"><div class="mb-2 flex items-center gap-2"><span class="text-fg-3">columns:</span> <button type="button" class="rounded border border-line-1 px-1.5 py-0.5 text-fg-3 hover:text-fg-1 hover:border-line-2">all</button> <button type="button" class="rounded border border-line-1 px-1.5 py-0.5 text-fg-3 hover:text-fg-1 hover:border-line-2">none</button> <label class="ml-auto inline-flex items-center gap-1.5 text-fg-3">limit <select class="bg-bg-1 text-fg-1 border border-line-1 rounded px-1 py-0.5"><option>50</option><option>100</option><option>200</option><option>500</option><option>1k</option></select></label></div> <div class="flex flex-wrap gap-1"></div> <div class="mt-2 flex items-center gap-2 text-fg-3"><code class="min-w-0 flex-1 truncate rounded border border-line-1 bg-bg-0 px-2 py-1 text-fg-1"> </code> <!></div></div>'),$b=x('<div class="flex-1 grid place-items-center text-fg-3 text-[12px] font-mono p-6">Empty result.</div>'),Xb=x(`<span class="ml-1 text-[9px] px-1 py-0.5 rounded bg-primary text-on-primary uppercase tracking-wider font-semibold" title="System-assigned row id — reddb's canonical address">sys</span>`),Zb=x('<span class="ml-1 text-[9px] px-1 py-0.5 rounded border border-line-2 text-fg-3 uppercase tracking-wider" title="Reserved system field — written by reddb">sys</span>'),Qb=x('<span class="ml-1 text-[9px] px-1 py-0.5 rounded border border-line-2 text-fg-2 uppercase tracking-wider" title="User-defined identifier">pk</span>'),Jb=x('<span class="ml-1 text-[10px] text-fg-3 uppercase tracking-wide" title="Inferred primary key">pk</span>'),e1=x("<th><span> </span> <!></th>"),t1=x('<button type="button" class="absolute right-1 top-1/2 -translate-y-1/2 text-fg-3 hover:text-fg-1 cursor-pointer"><!></button>'),r1=x('<th class="px-1 py-1"><div class="relative"><input type="text" class="w-full h-6 pl-2 pr-5 bg-bg-1 text-fg-1 border border-line-1 rounded text-[11px] font-mono outline-none focus:border-accent placeholder:text-fg-3"/> <!></div></th>'),n1=x('<tr class="border-b border-line-1 bg-bg-0"><th class="px-2 py-1"></th><!></tr>'),a1=x('<input class="w-full bg-bg-2 text-fg-1 border border-accent/60 rounded px-1 py-0.5 outline-none"/>'),o1=x('<span class="text-fg-3 italic">NULL</span>'),i1=x('<span class="block truncate"> </span>'),s1=x("<td><!></td>"),l1=x('<tr class="border-b border-line-1/60 hover:bg-bg-1/40"><td class="px-2 py-1 text-right text-fg-3 select-none"></td><!></tr>'),c1=x('· <span class="text-fg-2"> </span>',1),d1=x('<span>· pk <code class="text-fg-2"> </code></span>'),u1=x('<div class="flex-1 overflow-auto"><table class="w-full border-collapse text-[12px] font-mono"><thead class="sticky top-0 bg-bg-1 z-10"><tr class="border-b border-line-1 text-fg-3"><th class="px-2 py-1.5 text-right w-10 font-normal">#</th><!></tr><!></thead><tbody></tbody></table></div> <div class="border-t border-line-1 px-3 py-1.5 text-[11px] font-mono text-fg-3 flex items-center gap-3"><span> <!> <!></span> <span>· double-click a cell to stage edit</span> <!></div>',1),f1=x('<div class="border-b border-line-1 px-3 py-1.5 flex items-center gap-2 text-[11px] font-mono bg-bg-1/40"><!> <button type="button"><!> <span>filters</span> <!></button> <!> <div class="ml-auto text-fg-3"> <!> rows</div></div> <!> <!>',1),v1=x('<div class="flex h-full flex-col text-fg-1"><!></div>');function g1(t,e){nt(e,!0);let n=Re(e,"showSystem",3,!1),a=me(null);const o=y(()=>r(a)??e.result),i=y(()=>Fb(r(o))),l=y(()=>Db(r(o),{showSystem:n()})),d=y(()=>Rb(r(l))),f=y(()=>r(l).filter(L=>/^[A-Za-z_][A-Za-z0-9_]*$/.test(L)));let v=me(!1),p=me(jt({})),b=me(200),h=me(!1),w=me(null);Lt(()=>{const L={...r(p)};let H=!1;for(const j of r(f))L[j]===void 0&&(L[j]=!0,H=!0);for(const j of Object.keys(L))r(f).includes(j)||(delete L[j],H=!0);H&&m(p,L,!0)});let k=me(jt({})),C=me(!1);const P=y(()=>{const L=Object.entries(r(k)).filter(([,H])=>H.trim().length>0);return L.length===0?r(i):r(i).filter(H=>L.every(([j,le])=>{const he=H[j];return he==null?!1:String(he).toLowerCase().includes(le.toLowerCase())}))}),$=y(()=>r(P)),O=y(()=>Object.values(r(k)).filter(L=>L.trim().length>0).length);function Z(L){const H={...r(k)};delete H[L],m(k,H,!0)}function Y(){m(k,{},!0)}function T(){if(!e.collection)return null;const L=e.collection.replace(/[^A-Za-z0-9_./-]/g,"");return L.length>0?L:null}function q(){const L=r(f).filter(H=>r(p)[H]);return L.length===0||L.length===r(f).length?"*":L.join(", ")}function ne(){const L=T();return L?`SELECT ${q()} FROM ${L} LIMIT ${r(b)}`:null}async function ie(){const L=Be.client,H=ne();if(!(!L||!H)){m(h,!0),m(w,null);try{const j=await St.track(`${e.collection} · ${H}`,()=>L.query(H));if(!j.ok){m(w,j.error??"query failed",!0);return}m(a,j,!0),m(k,{},!0),m(ue,null)}catch(j){m(w,j.message,!0)}finally{m(h,!1)}}}function J(){m(a,null),m(k,{},!0),m(w,null)}let ue=me(null),U=me("");function E(L,H,j){if(r(ue)||!e.collection||Be.readOnly)return;m(ue,{row:L,col:H},!0);const le=Pr.find(e.collection,L,H);m(U,le?le.newValue:String(j??""),!0)}function I(){var he;if(!r(ue)||!e.collection)return;const{row:L,col:H}=r(ue),j=(he=r($)[L])==null?void 0:he[H],le=r(U);if(String(j??"")!==le)Pr.stage(e.collection,L,H,j,le);else{const oe=Pr.find(e.collection,L,H);oe&&Pr.unstage(oe.id)}m(ue,null)}function _(){m(ue,null)}function A(L){L.focus(),L.select()}function R(L,H,j){if(!e.collection)return{value:j,staged:!1};const le=Pr.find(e.collection,L,H);return le?{value:le.newValue,staged:!0}:{value:j,staged:!1}}var te=v1(),F=c(te);{var X=L=>{var H=qb(),j=c(H,!0);s(H),N(()=>S(j,r(o).error??"Query failed.")),g(L,H)},ee=L=>{var H=f1(),j=ze(H),le=c(j);{var he=xe=>{var ge=jb(),De=ze(ge),ce=c(De);Lb(ce,{class:"size-3"}),Se(2),s(De);var se=u(De,2),ve=c(se);{var Ae=Ee=>{cn(Ee,{class:"size-3 animate-spin"})},Le=Ee=>{Jo(Ee,{class:"size-3"})};V(ve,Ee=>{r(h)?Ee(Ae):Ee(Le,-1)})}Se(),s(se);var we=u(se,2);{var Ie=Ee=>{var Me=Kb(),Te=c(Me);xv(Te,{class:"size-3"}),Se(),s(Me),_e("click",Me,J),g(Ee,Me)};V(we,Ee=>{r(a)&&Ee(Ie)})}Se(2),N(Ee=>{Ne(De,"aria-pressed",r(v)),Pe(De,1,Ee),se.disabled=r(h)||!Be.connected},[()=>Ve(["inline-flex items-center gap-1.5 h-6 px-2 rounded border transition-colors cursor-pointer",r(v)?"border-accent/40 bg-accent/10 text-primary-text":"border-line-1 text-fg-3 hover:text-fg-1 hover:border-line-2"].join(" "))]),_e("click",De,()=>m(v,!r(v))),_e("click",se,ie),g(xe,ge)};V(le,xe=>{e.collection&&xe(he)})}var oe=u(le,2),Q=c(oe);pd(Q,{class:"size-3"});var W=u(Q,4);{var G=xe=>{var ge=Bb(),De=c(ge,!0);s(ge),N(()=>S(De,r(O))),g(xe,ge)};V(W,xe=>{r(O)>0&&xe(G)})}s(oe);var M=u(oe,2);{var K=xe=>{var ge=Ub(),De=c(ge);Ar(De,{class:"size-3"}),Se(),s(ge),_e("click",ge,Y),g(xe,ge)};V(M,xe=>{r(O)>0&&xe(K)})}var D=u(M,2),z=c(D,!0),B=u(z);{var re=xe=>{var ge=bt();N(De=>S(ge,`of ${De??""}`),[()=>r(i).length.toLocaleString()]),g(xe,ge)};V(B,xe=>{r(O)>0&&xe(re)})}Se(),s(D),s(j);var de=u(j,2);{var be=xe=>{var ge=Yb(),De=c(ge),ce=u(c(De),2),se=u(ce,2),ve=u(se,2),Ae=u(c(ve)),Le=c(Ae);Le.value=Le.__value=50;var we=u(Le);we.value=we.__value=100;var Ie=u(we);Ie.value=Ie.__value=200;var Ee=u(Ie);Ee.value=Ee.__value=500;var Me=u(Ee);Me.value=Me.__value=1e3,s(Ae);var Te;ea(Ae),s(ve),s(De);var Xe=u(De,2);$e(Xe,20,()=>r(f),He=>He,(He,Ue)=>{var ot=Wb(),ae=c(ot);Xt(ae);var tt=u(ae);s(ot),N(Ze=>{Pe(ot,1,Ze),Ma(ae,r(p)[Ue]??!1),S(tt,` ${Ue??""}`)},[()=>Ve(["inline-flex h-5 items-center gap-1 rounded border px-1.5 cursor-pointer",r(p)[Ue]?"border-accent/40 bg-accent/10 text-primary-text":"border-line-1 text-fg-3 hover:text-fg-1"].join(" "))]),_e("change",ae,Ze=>m(p,{...r(p),[Ue]:Ze.currentTarget.checked},!0)),g(He,ot)}),s(Xe);var Fe=u(Xe,2),Qe=c(Fe),lt=c(Qe,!0);s(Qe);var ct=u(Qe,2);{var Ke=He=>{var Ue=Gb(),ot=c(Ue,!0);s(Ue),N(()=>S(ot,r(w))),g(He,Ue)};V(ct,He=>{r(w)&&He(Ke)})}s(Fe),s(ge),N(He=>{Te!==(Te=r(b))&&(Ae.value=(Ae.__value=r(b))??"",ta(Ae,r(b))),S(lt,He)},[()=>ne()??"No collection selected"]),_e("click",ce,()=>{const He={};for(const Ue of r(f))He[Ue]=!0;m(p,He,!0)}),_e("click",se,()=>m(p,{},!0)),_e("change",Ae,He=>m(b,Number(He.currentTarget.value),!0)),g(xe,ge)};V(de,xe=>{r(v)&&e.collection&&xe(be)})}var fe=u(de,2);{var Ce=xe=>{var ge=$b();g(xe,ge)},ke=xe=>{var ge=u1(),De=ze(ge),ce=c(De),se=c(ce),ve=c(se),Ae=u(c(ve));$e(Ae,17,()=>r(l),gr,(He,Ue)=>{const ot=y(()=>vl(r(Ue))),ae=y(()=>Ui(r(Ue)));var tt=e1(),Ze=c(tt),We=c(Ze,!0);s(Ze);var ut=u(Ze,2);{var Et=xt=>{var mt=Xb();g(xt,mt)},Tt=xt=>{var mt=Zb();g(xt,mt)},Mt=xt=>{var mt=Qb();g(xt,mt)},Ct=xt=>{var mt=Jb();g(xt,mt)};V(ut,xt=>{r(ot)==="rid"?xt(Et):r(ae)?xt(Tt,1):r(ot)==="id"?xt(Mt,2):r(Ue)===r(d)&&xt(Ct,3)})}s(tt),N(xt=>{Pe(tt,1,xt),Pe(Ze,1,Ve(r(ot)||r(ae)?"font-semibold":"")),S(We,r(Ue))},[()=>Ve(["px-2 py-1.5 text-left font-normal whitespace-nowrap",r(ot)==="rid"?"bg-accent/5 text-fg-0":r(ae)?"bg-bg-1 text-fg-2":r(ot)==="id"?"text-fg-1":""].join(" "))]),g(He,tt)}),s(ve);var Le=u(ve);{var we=He=>{var Ue=n1(),ot=u(c(Ue));$e(ot,17,()=>r(l),gr,(ae,tt)=>{var Ze=r1(),We=c(Ze),ut=c(We);Xt(ut);var Et=u(ut,2);{var Tt=Mt=>{var Ct=t1(),xt=c(Ct);Ar(xt,{class:"size-3"}),s(Ct),N(()=>Ne(Ct,"aria-label",`Clear filter for ${r(tt)??""}`)),_e("click",Ct,()=>Z(r(tt))),g(Mt,Ct)};V(Et,Mt=>{var Ct;(Ct=r(k)[r(tt)])!=null&&Ct.length&&Mt(Tt)})}s(We),s(Ze),N(()=>Ne(ut,"placeholder",`filter ${r(tt)??""}…`)),Sr(ut,()=>r(k)[r(tt)],Mt=>r(k)[r(tt)]=Mt),g(ae,Ze)}),s(Ue),g(He,Ue)};V(Le,He=>{r(C)&&He(we)})}s(se);var Ie=u(se);$e(Ie,21,()=>r($),gr,(He,Ue,ot)=>{var ae=l1(),tt=c(ae);tt.textContent=ot+1;var Ze=u(tt);$e(Ze,17,()=>r(l),gr,(We,ut)=>{const Et=y(()=>r(Ue)[r(ut)]),Tt=y(()=>R(ot,r(ut),r(Et))),Mt=y(()=>{var it;return((it=r(ue))==null?void 0:it.row)===ot&&r(ue).col===r(ut)}),Ct=y(()=>vl(r(ut))),xt=y(()=>Ui(r(ut)));var mt=s1(),wt=c(mt);{var Ot=it=>{var dt=a1();Xt(dt),ps(()=>Sr(dt,()=>r(U),It=>m(U,It))),Vr(dt,It=>A==null?void 0:A(It)),Sn("blur",dt,I),_e("keydown",dt,It=>{It.key==="Enter"?I():It.key==="Escape"&&_()}),g(it,dt)},Zt=it=>{var dt=o1();g(it,dt)},pr=y(()=>Hb(r(Tt).value)),hr=it=>{var dt=i1(),It=c(dt,!0);s(dt),N(Bt=>S(It,Bt),[()=>Vb(r(Tt).value)]),g(it,dt)};V(wt,it=>{r(Mt)?it(Ot):r(pr)?it(Zt,1):it(hr,-1)})}s(mt),N(it=>{Pe(mt,1,it),Ne(mt,"title",r(Tt).staged?"Staged change — open Pending Changes to commit":void 0)},[()=>Ve(["px-2 py-1 max-w-[260px] truncate align-top",r(Ct)==="rid"?"bg-accent/5 text-primary-text font-semibold":r(xt)?"bg-bg-1 text-fg-2 font-mono":r(Ct)==="id"?"text-fg-0":"",r(Tt).staged&&!r(Mt)?"bg-warn/15 text-fg-1":""].join(" "))]),_e("dblclick",mt,()=>E(ot,r(ut),r(Et))),g(We,mt)}),s(ae),g(He,ae)}),s(Ie),s(ce),s(De);var Ee=u(De,2),Me=c(Ee),Te=c(Me),Xe=u(Te);{var Fe=He=>{var Ue=bt("· filtered");g(He,Ue)};V(Xe,He=>{r(O)>0&&He(Fe)})}var Qe=u(Xe,2);{var lt=He=>{var Ue=c1(),ot=u(ze(Ue)),ae=c(ot,!0);s(ot),N(()=>S(ae,e.collection)),g(He,Ue)};V(Qe,He=>{e.collection&&He(lt)})}s(Me);var ct=u(Me,4);{var Ke=He=>{var Ue=d1(),ot=u(c(Ue)),ae=c(ot,!0);s(ot),s(Ue),N(()=>S(ae,r(d))),g(He,Ue)};V(ct,He=>{r(d)&&He(Ke)})}s(Ee),N(()=>S(Te,`${r($).length??""} of ${r(o).record_count??""} rows `)),g(xe,ge)};V(fe,xe=>{r(o).result.records.length?xe(ke,-1):xe(Ce)})}N((xe,ge)=>{Ne(oe,"aria-pressed",r(C)),Ne(oe,"title",r(C)?"Hide column filters":"Show column filters"),Pe(oe,1,xe),S(z,ge)},[()=>Ve(["inline-flex items-center gap-1.5 h-6 px-2 rounded border transition-colors cursor-pointer",r(C)?"border-accent/40 bg-accent/10 text-primary-text":"border-line-1 text-fg-3 hover:text-fg-1 hover:border-line-2"].join(" ")),()=>r($).length.toLocaleString()]),_e("click",oe,()=>m(C,!r(C))),g(L,H)};V(F,L=>{r(o).ok?L(ee,-1):L(X)})}s(te),g(t,te),at()}nr(["click","change","dblclick","keydown"]);const p1={capability:"table",renders:t=>!!(t!=null&&t.result)&&Array.isArray(t.result.columns),component:g1},h1={capability:"graph",renders:t=>_v(t),component:mv};function bd(t){return t.find(e=>e.toLowerCase()==="key")??t.find(e=>e.toLowerCase()==="k")??t.find(e=>/(^|_)key$/i.test(e))??null}function xd(t){return t.find(e=>e.toLowerCase()==="value")??t.find(e=>e.toLowerCase()==="v")??t.find(e=>/(^|_)value$/i.test(e))??null}function b1(t){const e=t.result.columns,n=bd(e),a=xd(e);return!n||!a?[]:t.result.records.map(o=>({key:String(o.values[n]??""),value:o.values[a]}))}function x1(t){var n;const e=((n=t.result)==null?void 0:n.columns)??[];return bd(e)!==null&&xd(e)!==null}function m1(t,e){const n={};for(const a of t){if(!a.key.startsWith(e))continue;const i=a.key.slice(e.length).replace(/^\/+/,"").split("/").filter(Boolean);if(i.length===0){n.$value=a.value;continue}let l=n;for(let d=0;d<i.length;d+=1){const f=i[d];if(d===i.length-1){const p=l[f];p&&typeof p=="object"&&!Array.isArray(p)?p.$value=a.value:l[f]=a.value;continue}const v=l[f];if(!v||typeof v!="object"||Array.isArray(v)){const p={};v!==void 0&&(p.$value=v),l[f]=p,l=p}else l=v}}return n}function _1(t){const e={name:"",fullKey:null,value:void 0,children:[]};for(const n of t){const a=n.key.split("/").filter(i=>i.length>0);if(a.length===0)continue;let o=e;a.forEach((i,l)=>{let d=o.children.find(f=>f.name===i);if(!d){d={name:i,fullKey:null,value:void 0,children:[]};const f=o.children.findIndex(v=>v.name>i);f<0?o.children.push(d):o.children.splice(f,0,d)}l===a.length-1&&(d.fullKey=n.key,d.value=n.value),o=d})}return e}function gl(t){return t==null?"null":typeof t=="object"?JSON.stringify(t):String(t)}const md={name:"braces",size:24,node:[["path",{d:"M8 3H7a2 2 0 0 0-2 2v5a2 2 0 0 1-2 2 2 2 0 0 1 2 2v5c0 1.1.9 2 2 2h1"}],["path",{d:"M16 21h1a2 2 0 0 0 2-2v-5c0-1.1.9-2 2-2a2 2 0 0 1-2-2V5a2 2 0 0 0-2-2h-1"}]],aliases:["curly-braces"]};md.node;function ca(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return md}}))}const _d={name:"list-tree",size:24,node:[["path",{d:"M8 5h13"}],["path",{d:"M13 12h8"}],["path",{d:"M13 19h8"}],["path",{d:"M3 10a2 2 0 0 0 2 2h3"}],["path",{d:"M3 5v12a2 2 0 0 0 2 2h3"}]]};_d.node;function y1(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return _d}}))}var w1=x('<span class="text-fg-3 ml-2"> </span>'),k1=x("<ul></ul>"),S1=x('<li><button type="button"><span class="text-fg-1"> </span> <!></button> <!></li>'),C1=x(`<div class="flex-1 grid place-items-center text-fg-3 text-[12px] font-mono p-6">No KV shape — expected <code>key</code> and <code>value</code> columns
|
|
4
|
+
(also accepts <code>*_key</code>/<code>*_value</code>).</div>`),E1=x('<button type="button" class="text-fg-3 hover:text-fg-1 cursor-pointer" aria-label="Clear prefix"><!></button>'),M1=x('· <span class="text-fg-2"> </span>',1),z1=x('<li class="px-3 py-2 text-fg-3">No keys match prefix.</li>'),N1=x('<div class="text-fg-3 mb-2"> </div> <pre class="text-fg-1 whitespace-pre-wrap break-all"> </pre>',1),T1=x('<div class="text-fg-3">Click a key to inspect.</div>'),I1=x('<div class="flex-1 grid grid-cols-[280px_1fr] min-h-0"><ul class="overflow-auto border-r border-line-1 text-[12px] font-mono py-1"><!></ul> <div class="overflow-auto p-3 text-[12px] font-mono"><!></div></div>'),A1=x('<div class="text-fg-3">No keys match prefix.</div>'),L1=x('<pre class="whitespace-pre text-fg-1"> </pre>'),O1=x('<div class="flex-1 overflow-auto p-3 text-[12px] font-mono"><!></div>'),P1=x('<div class="border-b border-line-1 px-3 py-1.5 flex items-center gap-2 text-[11px] font-mono bg-bg-1/40"><div class="inline-flex border border-line-2 rounded overflow-hidden"><button type="button"><!> Tree</button> <button type="button"><!> JSON</button></div> <div class="inline-flex items-center gap-1.5 border border-line-1 rounded px-2 py-1 bg-bg-0"><!> <input type="text" placeholder="key prefix…" class="bg-transparent text-fg-1 outline-none w-[220px] placeholder:text-fg-3"/> <!></div> <div class="ml-auto text-fg-3"> <!> keys <!></div></div> <!>',1),D1=x('<div class="flex h-full flex-col text-fg-1"><!></div>');function R1(t,e){nt(e,!0);const n=(C,P=Zr,$=Zr)=>{var O=S1(),Z=c(O);let Y,T;var q=c(Z),ne=c(q,!0);s(q);var ie=u(q,2);{var J=E=>{var I=w1(),_=c(I,!0);s(I),N(A=>S(_,A),[()=>p(P().value)]),g(E,I)};V(ie,E=>{P().fullKey!==null&&E(J)})}s(Z);var ue=u(Z,2);{var U=E=>{var I=k1();$e(I,21,()=>P().children,_=>_.name,(_,A)=>{n(_,()=>r(A),()=>$()+1)}),s(I),g(E,I)};V(ue,E=>{P().children.length>0&&E(U)})}s(O),N(()=>{Y=Pe(Z,1,"w-full text-left px-2 py-0.5 hover:bg-bg-1/60",null,Y,{"text-primary-text":r(i)===P()}),T=yr(Z,"",T,{"padding-left":`${8+$()*12}px`}),S(ne,P().name)}),_e("click",Z,()=>m(i,P(),!0)),g(C,O)};let a=me(""),o=me("tree"),i=me(null);const l=y(()=>b1(e.result)),d=y(()=>r(a).trim()?r(l).filter(C=>C.key.startsWith(r(a).trim())):r(l)),f=y(()=>_1(r(d))),v=y(()=>m1(r(l),r(a).trim()));function p(C){const P=gl(C);return P.length>60?P.slice(0,59)+"…":P}var b=D1(),h=c(b);{var w=C=>{var P=C1();g(C,P)},k=C=>{var P=P1(),$=ze(P),O=c($),Z=c(O),Y=c(Z);y1(Y,{class:"size-3"}),Se(),s(Z);var T=u(Z,2),q=c(T);ca(q,{class:"size-3"}),Se(),s(T),s(O);var ne=u(O,2),ie=c(ne);Gr(ie,{class:"size-3 text-fg-3"});var J=u(ie,2);Xt(J);var ue=u(J,2);{var U=L=>{var H=E1(),j=c(H);Ar(j,{class:"size-3"}),s(H),_e("click",H,()=>m(a,"")),g(L,H)};V(ue,L=>{r(a)&&L(U)})}s(ne);var E=u(ne,2),I=c(E,!0),_=u(I);{var A=L=>{var H=bt();N(j=>S(H,`of ${j??""}`),[()=>r(l).length.toLocaleString()]),g(L,H)};V(_,L=>{r(a)&&L(A)})}var R=u(_,2);{var te=L=>{var H=M1(),j=u(ze(H)),le=c(j,!0);s(j),N(()=>S(le,e.collection)),g(L,H)};V(R,L=>{e.collection&&L(te)})}s(E),s($);var F=u($,2);{var X=L=>{var H=I1(),j=c(H),le=c(j);{var he=K=>{var D=z1();g(K,D)},oe=K=>{var D=_t(),z=ze(D);$e(z,17,()=>r(f).children,B=>B.name,(B,re)=>{n(B,()=>r(re),()=>0)}),g(K,D)};V(le,K=>{r(f).children.length===0?K(he):K(oe,-1)})}s(j);var Q=u(j,2),W=c(Q);{var G=K=>{var D=N1(),z=ze(D),B=c(z,!0);s(z);var re=u(z,2),de=c(re,!0);s(re),N(be=>{S(B,r(i).fullKey??r(i).name),S(de,be)},[()=>gl(r(i).value)]),g(K,D)},M=K=>{var D=T1();g(K,D)};V(W,K=>{r(i)?K(G):K(M,-1)})}s(Q),s(H),g(L,H)},ee=L=>{var H=O1(),j=c(H);{var le=Q=>{var W=A1();g(Q,W)},he=y(()=>Object.keys(r(v)).length===0),oe=Q=>{var W=L1(),G=c(W,!0);s(W),N(M=>S(G,M),[()=>JSON.stringify(r(v),null,2)]),g(Q,W)};V(j,Q=>{r(he)?Q(le):Q(oe,-1)})}s(H),g(L,H)};V(F,L=>{r(o)==="tree"?L(X):L(ee,-1)})}N((L,H,j)=>{Pe(Z,1,L),Ne(Z,"aria-pressed",r(o)==="tree"),Pe(T,1,H),Ne(T,"aria-pressed",r(o)==="json"),S(I,j)},[()=>Ve(["inline-flex items-center gap-1 px-2 py-1 cursor-pointer transition-colors",r(o)==="tree"?"bg-primary text-on-primary":"bg-bg-1 text-fg-2 hover:text-fg-0"].join(" ")),()=>Ve(["inline-flex items-center gap-1 px-2 py-1 cursor-pointer transition-colors border-l border-line-2",r(o)==="json"?"bg-primary text-on-primary":"bg-bg-1 text-fg-2 hover:text-fg-0"].join(" ")),()=>r(d).length.toLocaleString()]),_e("click",Z,()=>m(o,"tree")),_e("click",T,()=>m(o,"json")),Sr(J,()=>r(a),L=>m(a,L)),g(C,P)};V(h,C=>{r(l).length===0?C(w):C(k,-1)})}s(b),g(t,b),at()}nr(["click"]);const V1={capability:"kv",renders:t=>x1(t),component:R1},na="__all__",H1=["time","timestamp","ts","event_time","bucket","created_at"],F1=new Set(["created_at","updated_at","time","timestamp","timestamp_ns","rid","tenant"]),yd=640,wd=180,kd=16;function Na(t){if(typeof t=="number")return Number.isFinite(t);if(typeof t=="string"&&t.trim()!==""){const e=Number(t);return Number.isFinite(e)}return!1}function xi(t){return typeof t=="number"?t:Number(t)}function No(t){if(t==null)return null;if(typeof t=="number")return Number.isFinite(t)?t:null;if(t instanceof Date)return t.getTime();if(typeof t=="string"){const e=Number(t);if(Number.isFinite(e))return e;const n=Date.parse(t);return Number.isNaN(n)?null:n}return null}function Sd(t){var a,o;const e=((a=t.result)==null?void 0:a.columns)??[];for(const i of H1){const l=e.find(d=>d.toLowerCase()===i);if(l)return l}const n=((o=t.result)==null?void 0:o.records)??[];if(n.length===0)return null;for(const i of e){const l=n.find(d=>d.values[i]!==null&&d.values[i]!==void 0);if(l&&No(l.values[i])!==null&&!Na(l.values[i]))return i}return null}function Cd(t,e){var i,l;const n=((i=t.result)==null?void 0:i.columns)??[],a=((l=t.result)==null?void 0:l.records)??[];if(a.length===0)return[];const o=[];for(const d of n){if(d===e||d.startsWith("red_")||F1.has(d.toLowerCase()))continue;const f=a.find(v=>v.values[d]!==null&&v.values[d]!==void 0);f&&Na(f.values[d])&&o.push(d)}return o}function q1(t){const e=Sd(t);return e?Cd(t,e).length>0:!1}function K1(t,e){const n=Sd(t);if(!n)return null;const a=t.result.columns.find(f=>f.toLowerCase()==="metric")??null,o=t.result.columns.find(f=>f.toLowerCase()==="value")??null;if(a&&o){const f=new Set,v=[];for(const b of t.result.records){const h=b.values[a],w=b.values[o];if((typeof h=="string"||typeof h=="number")&&Na(w)){f.add(String(h));const k=No(b.values[n]);k!==null&&v.push({t:k,v:xi(w),raw:b.values})}}const p=[...f].sort();if(p.length>0){if(!e||e===na)return v.sort((w,k)=>w.t-k.t),{timeColumn:n,metricColumn:o,metrics:[na,...p],points:v,metricNameColumn:a};const b=p.includes(e)?e:p[0],h=[];for(const w of t.result.records){if(String(w.values[a])!==b)continue;const k=No(w.values[n]);if(k===null)continue;const C=w.values[o];Na(C)&&h.push({t:k,v:xi(C),raw:w.values})}return h.sort((w,k)=>w.t-k.t),{timeColumn:n,metricColumn:o,metrics:[na,...p],points:h,metricNameColumn:a}}}const i=Cd(t,n);if(i.length===0)return null;const l=e&&i.includes(e)?e:i[0],d=[];for(const f of t.result.records){const v=f.values[n],p=f.values[l],b=No(v);b!==null&&Na(p)&&d.push({t:b,v:xi(p),raw:f.values})}return d.sort((f,v)=>f.t-v.t),{timeColumn:n,metricColumn:l,metrics:i,points:d,metricNameColumn:null}}function j1(t,e=yd,n=wd,a=kd){const o=t.points;if(o.length===0)return null;const i=o[0].t,l=o[o.length-1].t;let d=1/0,f=-1/0;for(const k of o)k.v<d&&(d=k.v),k.v>f&&(f=k.v);if(!Number.isFinite(d)||!Number.isFinite(f))return null;const v=l-i||1,p=f-d||1,b=e-a*2,h=n-a*2,w=[];return o.forEach((k,C)=>{const P=a+(k.t-i)/v*b,$=a+h-(k.v-d)/p*h;w.push(`${C===0?"M":"L"}${P.toFixed(2)},${$.toFixed(2)}`)}),{width:e,height:n,padding:a,path:w.join(" "),minT:i,maxT:l,minV:d,maxV:f}}function B1(t,e=6e4){if(t.points.length===0)return[];const n=t.points[0].t,a=t.points[t.points.length-1].t,o=Math.floor(n/e)*e,i=Math.floor(a/e)*e,l=new Map;for(let d=o;d<=i;d+=e)l.set(d,{t:d,count:0,sum:0});for(const d of t.points){const f=Math.floor(d.t/e)*e,v=l.get(f);v&&(v.count+=1,v.sum+=d.v)}return[...l.values()].sort((d,f)=>d.t-f.t)}function U1(t,e=yd,n=wd,a=kd){if(t.length===0)return null;const o=t.reduce((p,b)=>Math.max(p,b.count),0);if(o===0)return null;const i=e-a*2,l=n-a*2,d=i/t.length,f=Math.max(1,d-1),v=t.map((p,b)=>{const w=p.count/o*l;return{x:a+b*d,y:a+l-w,w:f,h:w,bucket:p}});return{width:e,height:n,padding:a,bars:v,maxCount:o}}const Ed={name:"chart-column",size:24,node:[["path",{d:"M3 3v16a2 2 0 0 0 2 2h16"}],["path",{d:"M18 17V9"}],["path",{d:"M13 17V5"}],["path",{d:"M8 17v-3"}]],aliases:["bar-chart-3"]};Ed.node;function W1(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Ed}}))}var G1=x('<div class="flex-1 grid place-items-center text-fg-3 text-[12px] font-mono p-6">No timeseries shape (need a time column and a numeric metric).</div>'),Y1=x("<option> </option>"),$1=x('<label class="inline-flex items-center gap-1.5 text-fg-3">bucket: <select class="bg-bg-1 text-fg-1 border border-line-1 rounded px-1.5 py-0.5"><option>1s</option><option>10s</option><option>1min</option><option>5min</option><option>10min</option><option>1hr</option></select></label>'),X1=x('<button type="button" class="inline-flex items-center gap-1 px-2 py-1 rounded border border-line-1 text-fg-3 hover:text-fg-1 cursor-pointer" title="Show all rows again"><!> clear bucket</button>'),Z1=x('· <span class="text-fg-2"> </span>',1),Q1=Cr('<rect class="cursor-pointer transition-opacity" fill="var(--color-accent)" role="button" tabindex="0"><title> </title></rect>'),J1=Cr('<svg class="block w-full h-[180px]" aria-label="Writes per bucket"><!><text class="text-[9px] fill-fg-3 font-mono"> </text><text text-anchor="end" class="text-[9px] fill-fg-3 font-mono"> </text></svg>'),ex=Cr('<svg class="block w-full h-[180px] text-primary-text" aria-label="Timeseries chart"><path fill="none" stroke="currentColor" stroke-width="1.5"></path></svg>'),tx=x('<th class="px-2 py-1.5 text-left font-normal">metric</th>'),rx=x('<td class="px-2 py-1 text-fg-2"> </td>'),nx=x('<tr class="border-b border-line-1/60 hover:bg-bg-1/40"><td class="px-2 py-1"> </td><!><td class="px-2 py-1 text-right text-primary-text"> </td><td class="px-2 py-1 text-fg-2"> </td></tr>'),ax=x('<div class="border-b border-line-1 px-3 py-1.5 flex items-center gap-2 text-[11px] font-mono bg-bg-1/40"><div class="inline-flex border border-line-2 rounded overflow-hidden"><button type="button"><!> </button> <button type="button"><!> Value</button></div> <label class="inline-flex items-center gap-1.5 text-fg-3"><!> metric: <select class="bg-bg-1 text-fg-1 border border-line-1 rounded px-1.5 py-0.5"></select></label> <!> <!> <div class="ml-auto text-fg-3"><span class="text-fg-2"> </span> <!> inserts <!></div></div> <div class="px-3 pt-2"><!></div> <div class="flex-1 min-h-0 overflow-auto"><table class="w-full border-collapse text-[12px] font-mono"><thead class="sticky top-0 bg-bg-1 z-10"><tr class="border-b border-line-1 text-fg-3"><th class="px-2 py-1.5 text-left font-normal">time</th><!><th class="px-2 py-1.5 text-right font-normal">value</th><th class="px-2 py-1.5 text-left font-normal">log</th></tr></thead><tbody></tbody></table></div> <div class="border-t border-line-1 px-3 py-1.5 text-[11px] font-mono text-fg-3"> <!></div>',1),ox=x('<div class="flex h-full flex-col text-fg-1"><!></div>');function ix(t,e){nt(e,!0);let n=me(jt(na)),a=me("rate"),o=me(6e4),i=me(null);const l=y(()=>K1(e.result,r(n))),d=y(()=>r(l)&&r(a)==="line"?j1(r(l)):null),f=y(()=>r(l)?B1(r(l),r(o)):[]),v=y(()=>r(l)&&r(a)==="rate"?U1(r(f)):null),p=y(()=>{if(!r(l))return[];if(!r(i))return r(l).points;const T=r(i).t,q=T+r(o);return r(l).points.filter(ne=>ne.t>=T&&ne.t<q)});function b(T){try{return new Date(T).toISOString().replace("T"," ").slice(0,19)}catch{return String(T)}}function h(T){return T==null?"":typeof T=="object"?JSON.stringify(T):String(T)}function w(T){var ue;const q=[],ne=(ue=r(l))!=null&&ue.metricNameColumn?T.raw[r(l).metricNameColumn]:void 0;ne!==void 0&&q.push(String(ne));const ie=T.raw.tags;if(ie&&typeof ie=="object"){const U=Object.entries(ie).map(([E,I])=>`${E}=${h(I)}`).join(" ");U&&q.push(U)}const J=T.raw.event??T.raw.action??T.raw.message??T.raw.payload;return J!==void 0&&q.push(h(J)),q.join(" · ")}function k(T){return T===1e3?"1s":T===1e4?"10s":T===6e4?"1min":T===3e5?"5min":T===6e5?"10min":T===36e5?"1hr":`${T}ms`}function C(T){return T===na?"all writes":T}function P(){return r(l)?!r(n)||r(n)===na?"all writes":r(n):""}var $=ox(),O=c($);{var Z=T=>{var q=G1();g(T,q)},Y=T=>{var q=ax(),ne=ze(q),ie=c(ne),J=c(ie),ue=c(J);W1(ue,{class:"size-3"});var U=u(ue);s(J);var E=u(J,2),I=c(E);ed(I,{class:"size-3"}),Se(),s(E),s(ie);var _=u(ie,2),A=c(_);Va(A,{class:"size-3"});var R=u(A,2);$e(R,20,()=>r(l).metrics,ce=>ce,(ce,se)=>{var ve=Y1(),Ae=c(ve,!0);s(ve);var Le={};N(we=>{S(Ae,we),Le!==(Le=se)&&(ve.value=(ve.__value=se)??"")},[()=>C(se)]),g(ce,ve)}),s(R),s(_);var te=u(_,2);{var F=ce=>{var se=$1(),ve=u(c(se)),Ae=c(ve);Ae.value=Ae.__value=1e3;var Le=u(Ae);Le.value=Le.__value=1e4;var we=u(Le);we.value=we.__value=6e4;var Ie=u(we);Ie.value=Ie.__value=3e5;var Ee=u(Ie);Ee.value=Ee.__value=6e5;var Me=u(Ee);Me.value=Me.__value=36e5,s(ve);var Te;ea(ve),s(se),N(()=>{Te!==(Te=r(o))&&(ve.value=(ve.__value=r(o))??"",ta(ve,r(o)))}),_e("change",ve,Xe=>{m(o,Number(Xe.currentTarget.value),!0),m(i,null)}),g(ce,se)};V(te,ce=>{r(a)==="rate"&&ce(F)})}var X=u(te,2);{var ee=ce=>{var se=X1(),ve=c(se);Ar(ve,{class:"size-3"}),Se(),s(se),_e("click",se,()=>m(i,null)),g(ce,se)};V(X,ce=>{r(i)&&ce(ee)})}var L=u(X,2),H=c(L),j=c(H,!0);s(H);var le=u(H),he=u(le);{var oe=ce=>{var se=bt();N(ve=>S(se,`of ${ve??""}`),[()=>r(l).points.length.toLocaleString()]),g(ce,se)};V(he,ce=>{r(i)&&ce(oe)})}var Q=u(he,2);{var W=ce=>{var se=Z1(),ve=u(ze(se)),Ae=c(ve,!0);s(ve),N(()=>S(Ae,e.collection)),g(ce,se)};V(Q,ce=>{e.collection&&ce(W)})}s(L),s(ne);var G=u(ne,2),M=c(G);{var K=ce=>{var se=J1(),ve=c(se);$e(ve,17,()=>r(v).bars,Ee=>Ee.bucket.t,(Ee,Me)=>{var Te=Q1(),Xe=c(Te),Fe=c(Xe);s(Xe),s(Te),N((Qe,lt,ct)=>{Ne(Te,"x",r(Me).x),Ne(Te,"y",r(Me).y),Ne(Te,"width",r(Me).w),Ne(Te,"height",r(Me).h),Ne(Te,"opacity",!r(i)||r(i).t===r(Me).bucket.t?.9:.3),Ne(Te,"aria-label",`Bucket starting at ${Qe??""} with ${r(Me).bucket.count??""} writes`),S(Fe,`${lt??""} — ${r(Me).bucket.count??""} writes (sum ${ct??""})`)},[()=>b(r(Me).bucket.t),()=>b(r(Me).bucket.t),()=>r(Me).bucket.sum.toFixed(2)]),_e("click",Te,()=>{var Qe;return m(i,((Qe=r(i))==null?void 0:Qe.t)===r(Me).bucket.t?null:r(Me).bucket,!0)}),_e("keydown",Te,Qe=>{var lt;(Qe.key==="Enter"||Qe.key===" ")&&(Qe.preventDefault(),m(i,((lt=r(i))==null?void 0:lt.t)===r(Me).bucket.t?null:r(Me).bucket,!0))}),g(Ee,Te)});var Ae=u(ve),Le=c(Ae,!0);s(Ae);var we=u(Ae),Ie=c(we);s(we),s(se),N((Ee,Me)=>{Ne(se,"viewBox",`0 0 ${r(v).width} ${r(v).height}`),Ne(Ae,"x",r(v).padding),Ne(Ae,"y",r(v).height-2),S(Le,Ee),Ne(we,"x",r(v).width-r(v).padding),Ne(we,"y",r(v).height-2),S(Ie,`peak ${r(v).maxCount??""}/${Me??""}`)},[()=>{var Ee;return b(((Ee=r(v).bars[0])==null?void 0:Ee.bucket.t)??0)},()=>k(r(o))]),g(ce,se)},D=ce=>{var se=ex(),ve=c(se);s(se),N(()=>{Ne(se,"viewBox",`0 0 ${r(d).width} ${r(d).height}`),Ne(ve,"d",r(d).path)}),g(ce,se)};V(M,ce=>{r(a)==="rate"&&r(v)?ce(K):r(d)&&ce(D,1)})}s(G);var z=u(G,2),B=c(z),re=c(B),de=c(re),be=u(c(de));{var fe=ce=>{var se=tx();g(ce,se)};V(be,ce=>{r(l).metricNameColumn&&ce(fe)})}Se(2),s(de),s(re);var Ce=u(re);$e(Ce,21,()=>r(p),gr,(ce,se)=>{var ve=nx(),Ae=c(ve),Le=c(Ae,!0);s(Ae);var we=u(Ae);{var Ie=Fe=>{var Qe=rx(),lt=c(Qe,!0);s(Qe),N(ct=>S(lt,ct),[()=>String(r(se).raw[r(l).metricNameColumn]??"")]),g(Fe,Qe)};V(we,Fe=>{r(l).metricNameColumn&&Fe(Ie)})}var Ee=u(we),Me=c(Ee,!0);s(Ee);var Te=u(Ee),Xe=c(Te,!0);s(Te),s(ve),N((Fe,Qe)=>{S(Le,Fe),S(Me,r(se).v),S(Xe,Qe)},[()=>b(r(se).t),()=>w(r(se))]),g(ce,ve)}),s(Ce),s(B),s(z);var ke=u(z,2),xe=c(ke),ge=u(xe);{var De=ce=>{var se=bt();N((ve,Ae)=>S(se,`· bucket ${ve??""} (+${Ae??""})`),[()=>b(r(i).t),()=>k(r(o))]),g(ce,se)};V(ge,ce=>{r(i)&&ce(De)})}s(ke),N((ce,se,ve,Ae,Le)=>{Pe(J,1,ce),Ne(J,"aria-pressed",r(a)==="rate"),S(U,` Writes/${se??""}`),Pe(E,1,ve),Ne(E,"aria-pressed",r(a)==="line"),S(j,Ae),S(le,` · ${Le??""}`),S(xe,`${r(p).length??""} inserts${e.collection?" · ":""}${e.collection??""??""} `)},[()=>Ve(["inline-flex items-center gap-1 px-2 py-1 cursor-pointer transition-colors",r(a)==="rate"?"bg-primary text-on-primary":"bg-bg-1 text-fg-2 hover:text-fg-0"].join(" ")),()=>k(r(o)),()=>Ve(["inline-flex items-center gap-1 px-2 py-1 cursor-pointer transition-colors border-l border-line-2",r(a)==="line"?"bg-primary text-on-primary":"bg-bg-1 text-fg-2 hover:text-fg-0"].join(" ")),()=>P(),()=>r(p).length.toLocaleString()]),_e("click",J,()=>m(a,"rate")),_e("click",E,()=>m(a,"line")),qi(R,()=>r(n),ce=>m(n,ce)),g(T,q)};V(O,T=>{r(l)?T(Y,-1):T(Z)})}s($),g(t,$),at()}nr(["click","change","keydown"]);const sx={capability:"hypertable",renders:t=>q1(t),component:ix};function lx(t){return{query:t.query,capability:t.capability,record_count:t.record_count,records:t.result.records}}function cx(t){return JSON.stringify(t,null,2)}function dx(t){let e="",n=0;const a=t.length;for(;n<a;){const o=t[n];if(o==='"'){let i=n+1;for(;i<a;){if(t[i]==="\\"){i+=2;continue}if(t[i]==='"')break;i+=1}const l=t.slice(n,i+1);let d=i+1;for(;d<a&&(t[d]===" "||t[d]===" ");)d+=1;const f=t[d]===":";e+=`<span class="${f?"k":"s"}">${mi(l)}</span>`,n=i+1;continue}if(o>="0"&&o<="9"||o==="-"&&t[n+1]>="0"&&t[n+1]<="9"){let i=n+1;for(;i<a&&/[0-9eE+\-.]/.test(t[i]);)i+=1;e+=`<span class="n">${mi(t.slice(n,i))}</span>`,n=i;continue}if(t.startsWith("true",n)||t.startsWith("false",n)){const i=t[n]==="t"?4:5;e+=`<span class="b">${t.slice(n,n+i)}</span>`,n+=i;continue}if(t.startsWith("null",n)){e+='<span class="z">null</span>',n+=4;continue}e+=mi(o),n+=1}return e}function mi(t){return t.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">")}var ux=x('<div class="flex h-full flex-col text-fg-1"><div class="flex-1 min-h-0 overflow-auto"><pre class="json text-[12px] font-mono p-3 leading-relaxed svelte-1h2o46f"></pre></div> <div class="border-t border-line-1 px-3 py-1.5 text-[11px] font-mono text-fg-3"> </div></div>');function fx(t,e){nt(e,!0);const n=y(()=>cx(lx(e.result))),a=y(()=>dx(r(n)));var o=ux(),i=c(o),l=c(i);Lv(l,()=>r(a),!0),s(l),s(i);var d=u(i,2),f=c(d);s(d),s(o),N(()=>S(f,`${e.result.record_count??""} records · raw shape${e.collection?" · ":""}${e.collection??""??""}`)),g(t,o),at()}const vx={capability:"json",renders:()=>!1,component:fx},gx=/(^|_)(vector|embedding|embeddings|turbovec)($|_)/i,px=/(^|_)(scalar|score|distance|similarity|magnitude|norm)($|_)/i,hx=new Set(["rid","entity_id","red_entity_id","red_entity_type","red_kind","red_collection","red_sequence_id","collection","kind","tenant","created_at","updated_at","dimension"]);function Wi(t){return Array.isArray(t)&&t.length>0&&t.every(e=>typeof e=="number"&&Number.isFinite(e))}function bx(t){const e=Object.entries(t).find(([a,o])=>gx.test(a)&&Wi(o));if(e)return e;const n=Object.entries(t).find(([,a])=>Wi(a));return n||null}function xx(t,e){const n=Object.entries(t).find(([a,o])=>a!==e&&px.test(a)&&typeof o=="number"&&Number.isFinite(o));return n||null}function pl(t){return typeof t=="number"&&Number.isFinite(t)&&t>0?Math.floor(t):null}function Gi(t){return t.result.records.map((e,n)=>{var v;const a=e.values??{},o=((v=e.vector_results)==null?void 0:v.find(p=>Wi(p.vector)))??null,i=o!=null&&o.vector?["vector_results.vector",o.vector]:bx(a),l=xx(a,(i==null?void 0:i[0])??null),d=(i==null?void 0:i[1].length)??pl(a.dimension)??pl(a.vector_dimension)??0,f={};for(const[p,b]of Object.entries(a))p===(i==null?void 0:i[0])||p===(l==null?void 0:l[0])||hx.has(p)||(f[p]=b);return{index:n,id:String(a.id??a.entity_id??a.red_entity_id??a.rid??n+1),vectorColumn:(i==null?void 0:i[0])??null,vector:(i==null?void 0:i[1])??[],dimension:d,scalarColumn:(l==null?void 0:l[0])??null,scalar:(l==null?void 0:l[1])??null,metadata:f}})}function mx(t){return t.capability==="vector"||t.result.records.some(e=>{var n;return(((n=e.vector_results)==null?void 0:n.length)??0)>0})?!0:Gi(t).some(e=>e.vector.length>0||e.dimension>0||e.scalar!==null)}function uo(t){return Math.sqrt(t.reduce((e,n)=>e+n*n,0))}function _i(t){return t.scalarColumn?/distance/i.test(t.scalarColumn)?`search distance · ${t.scalarColumn}`:/similarity/i.test(t.scalarColumn)?`similarity score · ${t.scalarColumn}`:/score/i.test(t.scalarColumn)?`score · ${t.scalarColumn}`:/turbovec|scalar/i.test(t.scalarColumn)?`scalar projection · ${t.scalarColumn}`:/magnitude|norm/i.test(t.scalarColumn)?`vector magnitude · ${t.scalarColumn}`:`ranking metric · ${t.scalarColumn}`:"ranking metric"}function yi(t){return t==null?"NULL":typeof t=="object"?JSON.stringify(t):String(t)}function _x(t){return/^VECTOR\s+SEARCH\s+\S+\s+SIMILAR\s+TO\s+\[1(?:\.0)?,\s*0(?:\.0)?/i.test(t.query.trim())}function yx(t){return/^VECTOR\s+SEARCH\s+/i.test(t.query.trim())}function wx(t){const e=t.replace(/[\[\]]/g," ").split(/[,\s]+/).map(a=>a.trim()).filter(Boolean).map(Number);if(e.length===0)throw new Error("Paste a numeric vector first.");if(e.find(a=>!Number.isFinite(a))!==void 0)throw new Error("Vector contains a non-numeric value.");return e}function kx(t){return`[${t.map(e=>Number(e.toPrecision(8))).join(", ")}]`}function Sx(t){return`'${t.replace(/'/g,"''")}'`}function Cx(t){return t.replace(/[^A-Za-z0-9_./-]/g,"")}function hl(t,e,n){const a=Math.max(1,Math.min(200,Math.floor(Number(n)||20))),o=e.kind==="text"?Sx(e.text):kx(e.vector);return`VECTOR SEARCH ${Cx(t)} SIMILAR TO ${o} INCLUDE VECTORS LIMIT ${a}`}const Md={name:"gauge",size:24,node:[["path",{d:"m12 14 4-4"}],["path",{d:"M3.34 19a10 10 0 1 1 17.32 0"}]]};Md.node;function zd(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Md}}))}const Nd={name:"list-filter",size:24,node:[["path",{d:"M2 5h20"}],["path",{d:"M6 12h12"}],["path",{d:"M9 19h6"}]]};Nd.node;function Ex(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Nd}}))}const Td={name:"rows-3",size:24,node:[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2"}],["path",{d:"M21 9H3"}],["path",{d:"M21 15H3"}]],aliases:["panels-top-bottom"]};Td.node;function Yi(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Td}}))}var Mx=x('<input type="text" placeholder="text query…" class="h-7 w-full rounded border border-line-1 bg-bg-0 px-2 text-fg-1 outline-none placeholder:text-fg-3 focus:border-line-3"/>'),zx=x('<input type="text" placeholder="[0.12, -0.04, 0.91, …]" class="h-7 w-full rounded border border-line-1 bg-bg-0 px-2 text-fg-1 outline-none placeholder:text-fg-3 focus:border-line-3"/>'),Nx=x('<div class="inline-flex shrink-0 overflow-hidden rounded border border-line-2"><button type="button">text</button> <button type="button">vector</button></div> <div class="min-w-[260px] flex-1"><!></div> <label class="inline-flex h-7 items-center gap-1 rounded border border-line-1 bg-bg-0 px-2 text-fg-3"><span>limit</span> <input type="number" min="1" max="200" class="w-12 bg-transparent text-right text-fg-1 outline-none"/></label> <button type="button"><!> search</button>',1),Tx=x('<button type="button" class="text-fg-3 hover:text-fg-1 cursor-pointer" aria-label="Clear vector row filter"><!></button>'),Ix=x('<div class="inline-flex items-center gap-1.5 border border-line-1 rounded px-2 py-1 bg-bg-0"><!> <input type="text" placeholder="filter rows…" class="bg-transparent text-fg-1 outline-none w-[180px] placeholder:text-fg-3"/> <!></div>'),Ax=x("<span> </span>"),Lx=x('<div class="mt-1.5 text-warn"> </div>'),Ox=x('<div class="border-b border-line-1 bg-bg-1/30 px-3 py-1.5 text-[11px] font-mono text-fg-3">Preview search: distances and scores are computed against the synthetic basis vector <span class="text-fg-1">[1, 0, 0, …]</span>.</div>'),Px=x('<div class="flex-1 grid place-items-center p-6 text-center font-mono text-[12px] text-fg-3"><div><!> <div class="text-fg-1"> </div> <div class="mt-1">Text queries are embedded by RedDB.</div></div></div>'),Dx=x('<div class="flex-1 grid place-items-center p-6 text-center font-mono text-[12px] text-fg-3"><div><!> <div class="text-fg-1">No vector rows returned.</div></div></div>'),Rx=x('<button type="button" class="text-fg-3 hover:text-fg-1 cursor-pointer" aria-label="Clear vector result filter"><!></button>'),Vx=x('<div class="inline-flex items-center gap-1.5 border border-line-1 rounded px-2 py-1 bg-bg-0"><!> <input type="text" placeholder="filter results…" class="bg-transparent text-fg-1 outline-none w-[180px] placeholder:text-fg-3"/> <!></div>'),Hx=x('<span class="ml-auto text-fg-1"> </span>'),Fx=x('<div class="mt-0.5 truncate text-fg-3"> </div>'),qx=x('<button type="button"><div class="flex items-baseline gap-2"><span class="text-primary-text"> </span> <span class="text-fg-3"> </span> <!></div> <!></button>'),Kx=x('<div class="text-fg-3">No vector selected.</div>'),jx=x('<div class="text-fg-3">vector column</div> <div class="text-fg-0"> </div>',1),Bx=x('<div class="text-fg-3">ranking metric</div> <div class="text-fg-0"> </div>',1),Ux=x('<div class="text-fg-3 truncate"> </div> <div class="text-fg-1 break-words"> </div>',1),Wx=x('<div class="grid grid-cols-[160px_1fr] gap-x-3 gap-y-1.5"><div class="text-fg-3">id</div> <div class="text-fg-0"> </div> <div class="text-fg-3">dimension</div> <div class="text-fg-0"> </div> <div class="text-fg-3">magnitude</div> <div class="text-fg-0"> </div> <div class="text-fg-3">coordinates</div> <div class="text-fg-0"> </div> <!> <!> <!></div>'),Gx=x('<div class="border border-line-1 bg-bg-1/40 px-3 py-2 text-fg-3"> </div>'),Yx=x('<div class="grid grid-cols-[52px_1fr_90px] items-center gap-2"><span class="text-fg-3 text-right"></span> <div class="h-2 bg-bg-2 rounded overflow-hidden"><div class="h-full bg-accent/80"></div></div> <span> </span></div>'),$x=x('<div class="mt-2 text-fg-3">Showing first 256 dimensions.</div>'),Xx=x('<div class="mb-2 flex items-center justify-between text-fg-3"><span> </span> <span> </span></div> <div class="grid gap-1"></div> <!>',1),Zx=x('<tr class="border-b border-line-1/60 hover:bg-bg-1/40 cursor-pointer"><td class="px-2 py-1 text-primary-text"> </td><td class="px-2 py-1 text-right"> </td><td class="px-2 py-1 text-right"> </td></tr>'),Qx=x('<table class="w-full border-collapse"><thead class="sticky top-0 bg-bg-0"><tr class="border-b border-line-1 text-fg-3"><th class="px-2 py-1.5 text-left font-normal">id</th><th class="px-2 py-1.5 text-right font-normal">ranking metric</th><th class="px-2 py-1.5 text-right font-normal">magnitude</th></tr></thead><tbody></tbody></table>'),Jx=x('<div class="border-b border-line-1 px-3 py-1.5 flex items-center gap-2 text-[11px] font-mono bg-bg-0"><div class="inline-flex border border-line-2 rounded overflow-hidden"><button type="button"><!> metadata</button> <button type="button"><!> vector</button> <button type="button"><!> scores</button></div> <!> <div class="ml-auto text-fg-3"> <!> </div></div> <div class="flex-1 min-h-0 grid grid-cols-[320px_1fr]"><div class="overflow-auto border-r border-line-1 text-[12px] font-mono"></div> <div class="overflow-auto p-3 text-[12px] font-mono"><!></div></div>',1),em=x('<div class="flex h-full flex-col text-fg-1"><div class="border-b border-line-1 bg-bg-1/40 px-3 py-2 font-mono text-[11px]"><div class="flex flex-wrap items-center gap-2"><div class="inline-flex shrink-0 overflow-hidden rounded border border-line-2"><button type="button"><!> browse</button> <button type="button"><!> search</button></div> <!> <div class="ml-auto flex items-center gap-2 text-fg-3"><span> </span> <!></div></div> <!></div> <!> <!></div>');function tm(t,e){nt(e,!0);let n=me("browse"),a=me("metadata"),o=me("text"),i=me(""),l=me(""),d=me(20),f=me(""),v=me(null),p=me(null),b=me(!1),h=me(null);const w=y(()=>Gi(e.result)),k=y(()=>{var B;return((B=r(w).find(re=>re.dimension>0))==null?void 0:B.dimension)??null}),C=y(()=>r(p)??(yx(e.result)?e.result:null)),P=y(()=>r(C)?Gi(r(C)):[]),$=y(()=>r(n)==="search"?r(P):r(w)),O=y(()=>r(C)?_x(r(C)):!1),Z=y(()=>{const B=r(f).trim().toLowerCase();return B?r($).filter(re=>re.id.toLowerCase().includes(B)||Object.values(re.metadata).some(de=>yi(de).toLowerCase().includes(B))):r($)}),Y=y(()=>r(v)??r(Z)[0]??null),T=y(()=>Math.max(1,...r(Z).map(B=>uo(B.vector)))),q=y(()=>r(C)!==null);function ne(B){const re=Object.entries(B.metadata).slice(0,3);return re.length===0?"":re.map(([de,be])=>`${de}=${yi(be)}`).join(" · ")}function ie(B,re){const de=Math.max(1,...re.map(be=>Math.abs(be)));return Math.max(2,Math.abs(B)/de*100)}async function J(){if(!e.client||!e.collection){m(h,"No active RedDB connection for vector search.");return}m(h,null),m(b,!0);try{const B=r(i).trim();if(r(o)==="text"&&B.length===0)throw new Error("Enter text for RedDB to embed.");const re=r(o)==="text"?hl(e.collection,{kind:"text",text:B},r(d)):hl(e.collection,{kind:"vector",vector:wx(r(l))},r(d)),de=await e.client.query(re);m(p,de,!0),m(v,null),m(n,"search"),m(a,"metadata")}catch(B){m(h,B.message,!0)}finally{m(b,!1)}}var ue=em(),U=c(ue),E=c(U),I=c(E),_=c(I),A=c(_);Yi(A,{class:"size-3"}),Se(),s(_);var R=u(_,2),te=c(R);Gr(te,{class:"size-3"}),Se(),s(R),s(I);var F=u(I,2);{var X=B=>{var re=Nx(),de=ze(re),be=c(de),fe=u(be,2);s(de);var Ce=u(de,2),ke=c(Ce);{var xe=we=>{var Ie=Mx();Xt(Ie),_e("keydown",Ie,Ee=>{Ee.key==="Enter"&&J()}),Sr(Ie,()=>r(i),Ee=>m(i,Ee)),g(we,Ie)},ge=we=>{var Ie=zx();Xt(Ie),_e("keydown",Ie,Ee=>{Ee.key==="Enter"&&J()}),Sr(Ie,()=>r(l),Ee=>m(l,Ee)),g(we,Ie)};V(ke,we=>{r(o)==="text"?we(xe):we(ge,-1)})}s(Ce);var De=u(Ce,2),ce=u(c(De),2);Xt(ce),s(De);var se=u(De,2),ve=c(se);{var Ae=we=>{cn(we,{class:"size-3 animate-spin"})},Le=we=>{Jo(we,{class:"size-3"})};V(ve,we=>{r(b)?we(Ae):we(Le,-1)})}Se(),s(se),N((we,Ie,Ee)=>{Pe(be,1,we),Ne(be,"aria-pressed",r(o)==="text"),Pe(fe,1,Ie),Ne(fe,"aria-pressed",r(o)==="vector"),Pe(se,1,Ee),se.disabled=r(b)},[()=>Ve(["inline-flex h-7 items-center gap-1 px-2 transition-colors",r(o)==="text"?"bg-bg-3 text-fg-0":"bg-bg-1 text-fg-2 hover:text-fg-0"].join(" ")),()=>Ve(["inline-flex h-7 items-center gap-1 border-l border-line-2 px-2 transition-colors",r(o)==="vector"?"bg-bg-3 text-fg-0":"bg-bg-1 text-fg-2 hover:text-fg-0"].join(" ")),()=>Ve(["inline-flex h-7 items-center gap-1 rounded border px-2 transition-colors",r(b)?"border-line-1 bg-bg-2 text-fg-3":"border-accent/40 bg-primary text-on-primary hover:bg-accent/90"].join(" "))]),_e("click",be,()=>m(o,"text")),_e("click",fe,()=>m(o,"vector")),Sr(ce,()=>r(d),we=>m(d,we)),_e("click",se,()=>void J()),g(B,re)},ee=B=>{var re=Ix(),de=c(re);Gr(de,{class:"size-3 text-fg-3"});var be=u(de,2);Xt(be);var fe=u(be,2);{var Ce=ke=>{var xe=Tx(),ge=c(xe);Ar(ge,{class:"size-3"}),s(xe),_e("click",xe,()=>m(f,"")),g(ke,xe)};V(fe,ke=>{r(f)&&ke(Ce)})}s(re),Sr(be,()=>r(f),ke=>m(f,ke)),g(B,re)};V(F,B=>{r(n)==="search"?B(X):B(ee,-1)})}var L=u(F,2),H=c(L),j=c(H,!0);s(H);var le=u(H,2);{var he=B=>{var re=Ax(),de=c(re,!0);s(re),N(()=>S(de,e.collection)),g(B,re)};V(le,B=>{e.collection&&B(he)})}s(L),s(E);var oe=u(E,2);{var Q=B=>{var re=Lx(),de=c(re,!0);s(re),N(()=>S(de,r(h))),g(B,re)};V(oe,B=>{r(h)&&B(Q)})}s(U);var W=u(U,2);{var G=B=>{var re=Ox();g(B,re)};V(W,B=>{r(n)==="search"&&r(O)&&B(G)})}var M=u(W,2);{var K=B=>{var re=Px(),de=c(re),be=c(de);Gr(be,{class:"mx-auto mb-3 size-7 text-fg-3",strokeWidth:1.4});var fe=u(be,2),Ce=c(fe,!0);s(fe),Se(2),s(de),s(re),N(()=>S(Ce,r(q)?"No search results.":"No vector search has been run.")),g(B,re)},D=B=>{var re=Dx(),de=c(re),be=c(de);Yi(be,{class:"mx-auto mb-3 size-7 text-fg-3",strokeWidth:1.4}),Se(2),s(de),s(re),g(B,re)},z=B=>{var re=Jx(),de=ze(re),be=c(de),fe=c(be),Ce=c(fe);ca(Ce,{class:"size-3"}),Se(),s(fe);var ke=u(fe,2),xe=c(ke);Ex(xe,{class:"size-3"}),Se(),s(ke);var ge=u(ke,2),De=c(ge);zd(De,{class:"size-3"}),Se(),s(ge),s(be);var ce=u(be,2);{var se=Ke=>{var He=Vx(),Ue=c(He);Gr(Ue,{class:"size-3 text-fg-3"});var ot=u(Ue,2);Xt(ot);var ae=u(ot,2);{var tt=Ze=>{var We=Rx(),ut=c(We);Ar(ut,{class:"size-3"}),s(We),_e("click",We,()=>m(f,"")),g(Ze,We)};V(ae,Ze=>{r(f)&&Ze(tt)})}s(He),Sr(ot,()=>r(f),Ze=>m(f,Ze)),g(Ke,He)};V(ce,Ke=>{r(n)==="search"&&Ke(se)})}var ve=u(ce,2),Ae=c(ve,!0),Le=u(Ae);{var we=Ke=>{var He=bt();N(Ue=>S(He,`of ${Ue??""}`),[()=>r($).length.toLocaleString()]),g(Ke,He)};V(Le,Ke=>{r(f)&&Ke(we)})}var Ie=u(Le);s(ve),s(de);var Ee=u(de,2),Me=c(Ee);$e(Me,21,()=>r(Z),Ke=>Ke.id,(Ke,He)=>{var Ue=qx(),ot=c(Ue),ae=c(ot),tt=c(ae,!0);s(ae);var Ze=u(ae,2),We=c(Ze);s(Ze);var ut=u(Ze,2);{var Et=xt=>{var mt=Hx(),wt=c(mt,!0);s(mt),N((Ot,Zt)=>{Ne(mt,"title",Ot),S(wt,Zt)},[()=>_i(r(He)),()=>r(He).scalar.toFixed(4)]),g(xt,mt)};V(ut,xt=>{r(n)==="search"&&r(He).scalar!==null&&xt(Et)})}s(ot);var Tt=u(ot,2);{var Mt=xt=>{var mt=Fx(),wt=c(mt,!0);s(mt),N(Ot=>S(wt,Ot),[()=>ne(r(He))]),g(xt,mt)},Ct=y(()=>ne(r(He)));V(Tt,xt=>{r(Ct)&&xt(Mt)})}s(Ue),N(xt=>{Pe(Ue,1,xt),S(tt,r(He).id),S(We,`${r(He).dimension??""}d`)},[()=>Ve(["w-full text-left px-3 py-2 border-b border-line-1/60 hover:bg-bg-1/50 cursor-pointer",r(Y)===r(He)?"bg-bg-1 text-fg-0":"text-fg-2"].join(" "))]),_e("click",Ue,()=>m(v,r(He),!0)),g(Ke,Ue)}),s(Me);var Te=u(Me,2),Xe=c(Te);{var Fe=Ke=>{var He=Kx();g(Ke,He)},Qe=Ke=>{var He=Wx(),Ue=u(c(He),2),ot=c(Ue,!0);s(Ue);var ae=u(Ue,4),tt=c(ae,!0);s(ae);var Ze=u(ae,4),We=c(Ze,!0);s(Ze);var ut=u(Ze,4),Et=c(ut,!0);s(ut);var Tt=u(ut,2);{var Mt=wt=>{var Ot=jx(),Zt=u(ze(Ot),2),pr=c(Zt,!0);s(Zt),N(()=>S(pr,r(Y).vectorColumn)),g(wt,Ot)};V(Tt,wt=>{r(Y).vectorColumn&&wt(Mt)})}var Ct=u(Tt,2);{var xt=wt=>{var Ot=Bx(),Zt=u(ze(Ot),2),pr=c(Zt,!0);s(Zt),N(hr=>S(pr,hr),[()=>_i(r(Y))]),g(wt,Ot)};V(Ct,wt=>{r(n)==="search"&&r(Y).scalarColumn&&wt(xt)})}var mt=u(Ct,2);$e(mt,17,()=>Object.entries(r(Y).metadata),gr,(wt,Ot)=>{var Zt=y(()=>Qr(r(Ot),2));let pr=()=>r(Zt)[0],hr=()=>r(Zt)[1];var it=Ux(),dt=ze(it),It=c(dt,!0);s(dt);var Bt=u(dt,2),or=c(Bt,!0);s(Bt),N(ir=>{S(It,pr()),S(or,ir)},[()=>yi(hr())]),g(wt,it)}),s(He),N(wt=>{S(ot,r(Y).id),S(tt,r(Y).dimension),S(We,wt),S(Et,r(Y).vector.length>0?"returned":"not returned")},[()=>r(Y).vector.length>0?uo(r(Y).vector).toFixed(6):"n/a"]),g(Ke,He)},lt=Ke=>{var He=_t(),Ue=ze(He);{var ot=tt=>{var Ze=Gx(),We=c(Ze);s(Ze),N(()=>S(We,`This result reports a ${r(Y).dimension??""}d vector, but the coordinate array was not returned by RedDB.`)),g(tt,Ze)},ae=tt=>{var Ze=Xx(),We=ze(Ze),ut=c(We),Et=c(ut);s(ut);var Tt=u(ut,2),Mt=c(Tt);s(Tt),s(We);var Ct=u(We,2);$e(Ct,21,()=>r(Y).vector.slice(0,256),gr,(wt,Ot,Zt)=>{var pr=Yx(),hr=c(pr);hr.textContent=Zt;var it=u(hr,2),dt=c(it);let It;s(it);var Bt=u(it,2),or=c(Bt,!0);s(Bt),s(pr),N((ir,sr)=>{It=yr(dt,"",It,ir),Pe(Bt,1,Ve(r(Ot)<0?"text-warn text-right":"text-fg-1 text-right")),S(or,sr)},[()=>({width:`${ie(r(Ot),r(Y).vector)}%`}),()=>r(Ot).toFixed(5)]),g(wt,pr)}),s(Ct);var xt=u(Ct,2);{var mt=wt=>{var Ot=$x();g(wt,Ot)};V(xt,wt=>{r(Y).vector.length>256&&wt(mt)})}N((wt,Ot)=>{S(Et,`${r(Y).vector.length??""} dimensions`),S(Mt,`|v| ${wt??""} / max visible ${Ot??""}`)},[()=>uo(r(Y).vector).toFixed(6),()=>r(T).toFixed(2)]),g(tt,Ze)};V(Ue,tt=>{r(Y).vector.length===0?tt(ot):tt(ae,-1)})}g(Ke,He)},ct=Ke=>{var He=Qx(),Ue=u(c(He));$e(Ue,21,()=>r(Z),ot=>ot.id,(ot,ae)=>{var tt=Zx(),Ze=c(tt),We=c(Ze,!0);s(Ze);var ut=u(Ze),Et=c(ut,!0);s(ut);var Tt=u(ut),Mt=c(Tt,!0);s(Tt),s(tt),N((Ct,xt,mt)=>{S(We,r(ae).id),Ne(ut,"title",Ct),S(Et,xt),S(Mt,mt)},[()=>_i(r(ae)),()=>r(ae).scalar===null?"n/a":r(ae).scalar.toFixed(6),()=>uo(r(ae).vector).toFixed(6)]),_e("click",tt,()=>m(v,r(ae),!0)),g(ot,tt)}),s(Ue),s(He),g(Ke,He)};V(Xe,Ke=>{r(Y)?r(a)==="metadata"?Ke(Qe,1):r(a)==="vector"?Ke(lt,2):Ke(ct,-1):Ke(Fe)})}s(Te),s(Ee),N((Ke,He,Ue,ot)=>{Pe(fe,1,Ke),Ne(fe,"aria-pressed",r(a)==="metadata"),Pe(ke,1,He),Ne(ke,"aria-pressed",r(a)==="vector"),Pe(ge,1,Ue),Ne(ge,"aria-pressed",r(a)==="scalar"),S(Ae,ot),S(Ie,` ${r(n)==="search"?" results":" rows"}`)},[()=>Ve(["inline-flex items-center gap-1 px-2 py-1 cursor-pointer transition-colors",r(a)==="metadata"?"bg-primary text-on-primary":"bg-bg-1 text-fg-2 hover:text-fg-0"].join(" ")),()=>Ve(["inline-flex items-center gap-1 px-2 py-1 cursor-pointer transition-colors border-l border-line-2",r(a)==="vector"?"bg-primary text-on-primary":"bg-bg-1 text-fg-2 hover:text-fg-0"].join(" ")),()=>Ve(["inline-flex items-center gap-1 px-2 py-1 cursor-pointer transition-colors border-l border-line-2",r(a)==="scalar"?"bg-primary text-on-primary":"bg-bg-1 text-fg-2 hover:text-fg-0"].join(" ")),()=>r(Z).length.toLocaleString()]),_e("click",fe,()=>m(a,"metadata")),_e("click",ke,()=>m(a,"vector")),_e("click",ge,()=>m(a,"scalar")),g(B,re)};V(M,B=>{r(n)==="search"&&r(P).length===0?B(K):r($).length===0?B(D,1):B(z,-1)})}s(ue),N((B,re)=>{Pe(_,1,B),Ne(_,"aria-pressed",r(n)==="browse"),Pe(R,1,re),Ne(R,"aria-pressed",r(n)==="search"),S(j,r(k)?`${r(k)}d`:"dimension n/a")},[()=>Ve(["inline-flex h-7 items-center gap-1 px-2 transition-colors",r(n)==="browse"?"bg-primary text-on-primary":"bg-bg-1 text-fg-2 hover:text-fg-0"].join(" ")),()=>Ve(["inline-flex h-7 items-center gap-1 border-l border-line-2 px-2 transition-colors",r(n)==="search"?"bg-primary text-on-primary":"bg-bg-1 text-fg-2 hover:text-fg-0"].join(" "))]),_e("click",_,()=>{m(n,"browse"),m(v,null)}),_e("click",R,()=>{m(n,"search"),m(v,null)}),g(t,ue),at()}nr(["click","keydown"]);const rm={capability:"vector",renders:t=>mx(t),component:tm},$i=["message","payload","body","value","data"],Id=["state","status","delivery_state"],Ad=["consumer","consumer_id","worker","lease_owner"],Ld=["dlc","dlq","dead_letter_collection","dead_letter_queue"];function fo(t,e){for(const a of e)if(a in t)return[a,t[a]];return Object.entries(t).find(([a])=>e.includes(a.toLowerCase()))??null}function nm(t){return t.result.records.map((e,n)=>{const a=e.values??{},o=fo(a,$i),i=fo(a,Id),l=fo(a,Ad),d=fo(a,Ld);return{index:n,id:String(a.message_id??a.id??a.rid??n+1),messageColumn:(o==null?void 0:o[0])??null,message:(o==null?void 0:o[1])??a,state:String((i==null?void 0:i[1])??"ready"),consumer:(l==null?void 0:l[1])===void 0||(l==null?void 0:l[1])===null?null:String(l[1]),dlc:(d==null?void 0:d[1])===void 0||(d==null?void 0:d[1])===null?null:String(d[1]),values:a}})}function am(t){return t.capability==="queue"?!0:t.result.records.some(e=>{const n=Object.keys(e.values??{}).map(a=>a.toLowerCase());return n.includes("message_id")&&$i.some(a=>n.includes(a))?!0:$i.some(a=>n.includes(a))&&(Id.some(a=>n.includes(a))||Ad.some(a=>n.includes(a))||Ld.some(a=>n.includes(a)))})}function om(t){const e=new Set,n=new Map,a=new Set,o=new Map,i=new Set;for(const l of t)if(n.set(l.state,(n.get(l.state)??0)+1),l.consumer&&/active|leased|processing|running/i.test(l.state)&&e.add(l.consumer),l.dlc&&a.add(l.dlc),l.message&&typeof l.message=="object"&&!Array.isArray(l.message)){const d=l.message,f=d.op,v=d.collection;typeof f=="string"&&o.set(f,(o.get(f)??0)+1),typeof v=="string"&&i.add(v)}return{activeConsumers:e.size,states:[...n.entries()],dlcs:[...a],operations:[...o.entries()].sort((l,d)=>l[0].localeCompare(d[0])),sources:[...i].sort()}}function bl(t){if(typeof t=="number"&&Number.isFinite(t))return t;if(typeof t=="string"){const e=Number(t);if(Number.isFinite(e))return e}return null}function im(t){const e=[];for(const n of t){if(!n.message||typeof n.message!="object"||Array.isArray(n.message))continue;const a=n.message,o=a.collection,i=a.op;if(typeof o!="string"||typeof i!="string")continue;const l=a.id??(a.after&&typeof a.after=="object"&&!Array.isArray(a.after)?a.after.id:void 0);e.push({messageId:n.id,collection:o,op:i,entityId:l==null?String(a.rid??n.id):String(l),lsn:bl(a.lsn),ts:bl(a.ts),before:a.before,after:a.after,payload:a})}return e}function sm(t){const e=t.replace(/[^A-Za-z0-9_./-]/g,""),n="red-ui-preview",a="showcase";return[{label:"Backlog depth",query:`QUEUE LEN ${e}`,mutates:!1,note:"Read-only count of messages currently stored in the queue."},{label:"Peek messages",query:`QUEUE PEEK ${e} 25`,mutates:!1,note:"Read-only inspection. Does not lease, ack, or remove messages."},{label:"Read as fanout consumer",query:`QUEUE READ ${e} CONSUMER ${n} COUNT 5`,mutates:!0,note:"Leases messages for this consumer. ACK/NACK decides what happens next."},{label:"Read through explicit group",query:`QUEUE READ ${e} GROUP ${a} CONSUMER worker-a COUNT 5`,mutates:!0,note:"Creates/uses consumer group delivery state for an application tier."},{label:"Inspect pending group messages",query:`QUEUE PENDING ${e} GROUP ${a}`,mutates:!1,note:"Shows leased-but-unacked messages for a group."},{label:"Ack a delivered message",query:`QUEUE ACK ${e} GROUP ${a} 'message-id'`,mutates:!0,note:"Removes a successfully processed message for that group."},{label:"Nack a delivered message",query:`QUEUE NACK ${e} GROUP ${a} 'message-id'`,mutates:!0,note:"Returns or retries a failed message according to queue policy."}]}function lm(t,e){const n=t.replace(/[^A-Za-z0-9_./-]/g,""),a=typeof e=="string"?`'${e.replace(/'/g,"''")}'`:JSON.stringify(e??null);return`QUEUE PUSH ${n} ${a}`}const Od={name:"clipboard-list",size:24,node:[["rect",{width:"8",height:"4",x:"8",y:"2",rx:"1",ry:"1"}],["path",{d:"M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2"}],["path",{d:"M12 11h4"}],["path",{d:"M12 16h4"}],["path",{d:"M8 11h.01"}],["path",{d:"M8 16h.01"}]]};Od.node;function cm(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Od}}))}const Pd={name:"plus",size:24,node:[["path",{d:"M5 12h14"}],["path",{d:"M12 5v14"}]]};Pd.node;function Ta(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Pd}}))}const Dd={name:"radio",size:24,node:[["path",{d:"M16.247 7.761a6 6 0 0 1 0 8.478"}],["path",{d:"M19.075 4.933a10 10 0 0 1 0 14.134"}],["path",{d:"M4.925 19.067a10 10 0 0 1 0-14.134"}],["path",{d:"M7.753 16.239a6 6 0 0 1 0-8.478"}],["circle",{cx:"12",cy:"12",r:"2"}]]};Dd.node;function dm(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Dd}}))}const Rd={name:"send",size:24,node:[["path",{d:"M14.536 21.686a.5.5 0 0 0 .937-.024l6.5-19a.496.496 0 0 0-.635-.635l-19 6.5a.5.5 0 0 0-.024.937l7.93 3.18a2 2 0 0 1 1.112 1.11z"}],["path",{d:"m21.854 2.147-10.94 10.939"}]]};Rd.node;function xl(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Rd}}))}var um=x('<button type="button" class="text-fg-3 hover:text-fg-1 cursor-pointer" aria-label="Clear queue filter"><!></button>'),fm=x("<span> </span>"),vm=x('<span>from <span class="text-fg-2"> </span></span>'),gm=x('<span>dlc <span class="text-fg-2"> </span></span>'),pm=x('<span class="text-fg-2"> </span>'),hm=x('<div class="mt-1.5 text-warn"> </div>'),bm=x('<div class="mt-1.5 text-ok"> </div>'),xm=x('<div class="border-b border-line-1 bg-bg-1/20 px-3 py-2 text-[11px] font-mono"><div class="flex gap-2"><textarea rows="3" class="flex-1 resize-none rounded border border-line-1 bg-bg-0 px-2 py-1 text-[12px] text-fg-1 outline-none placeholder:text-fg-3 focus:border-accent"></textarea> <button type="button" class="inline-flex h-7 items-center gap-1.5 rounded bg-accent px-3 text-white disabled:opacity-40 disabled:cursor-not-allowed"><!> insert</button></div> <!></div>'),mm=x('<div class="p-3 text-[12px] font-mono text-fg-3">No WITH EVENTS envelopes detected in this queue result.</div>'),_m=x('<tr class="border-b border-line-1/60 hover:bg-bg-1/40"><td class="px-2 py-1 text-fg-2"> </td><td class="px-2 py-1 text-fg-0"> </td><td class="px-2 py-1"><span class="rounded border border-accent/30 bg-accent/10 px-1.5 py-0.5 text-primary-text"> </span></td><td class="px-2 py-1 text-fg-1"> </td><td class="px-2 py-1 text-right text-fg-3"> </td><td class="px-2 py-1 text-fg-2 truncate max-w-[520px]"> </td></tr>'),ym=x('<table class="w-full border-collapse text-[12px] font-mono"><thead class="sticky top-0 bg-bg-1 z-10"><tr class="border-b border-line-1 text-fg-3"><th class="px-2 py-1.5 text-left font-normal">time</th><th class="px-2 py-1.5 text-left font-normal">source</th><th class="px-2 py-1.5 text-left font-normal">op</th><th class="px-2 py-1.5 text-left font-normal">entity</th><th class="px-2 py-1.5 text-right font-normal">lsn</th><th class="px-2 py-1.5 text-left font-normal">after</th></tr></thead><tbody></tbody></table>'),wm=x('<div class="flex-1 min-h-0 overflow-auto"><!></div>'),km=x('<div class="rounded border border-line-1 bg-bg-1 px-3 py-2"><div class="mb-1 flex items-center gap-2"><span class="text-fg-0"> </span> <span> </span></div> <pre class="m-0 overflow-x-auto rounded bg-bg-0 px-2 py-1 text-fg-1"> </pre> <div class="mt-1 text-fg-3"> </div></div>'),Sm=x('<div class="flex-1 min-h-0 overflow-auto p-3 text-[12px] font-mono"><div class="grid gap-2"></div></div>'),Cm=x('<div class="p-3 text-fg-3">No queue messages in this result.</div>'),Em=x('<span class="ml-auto text-fg-3"> </span>'),Mm=x('<button type="button"><div class="flex items-center gap-2"><span class="text-primary-text"> </span> <span class="rounded border border-line-1 px-1 py-0.5 text-[10px] text-fg-3"> </span> <!></div> <div class="mt-1 truncate text-fg-1"> </div></button>'),zm=x('<pre class="whitespace-pre-wrap text-fg-1"> </pre>'),Nm=x('<div class="grid grid-cols-[120px_1fr] gap-x-3 gap-y-1.5"><span class="text-fg-3">id</span><span class="text-fg-0"> </span> <span class="text-fg-3">state</span><span class="text-fg-0"> </span> <span class="text-fg-3">consumer</span><span class="text-fg-0"> </span> <span class="text-fg-3">dlc</span><span class="text-fg-0"> </span> <span class="text-fg-3">message</span><pre class="m-0 whitespace-pre-wrap text-fg-1"> </pre></div>'),Tm=x('<div class="text-fg-3">Select a message to inspect payload, delivery state, consumer, and DLC link.</div>'),Im=x('<div class="flex-1 min-h-0 grid grid-cols-[minmax(360px,0.9fr)_1.1fr]"><div class="overflow-auto border-r border-line-1 text-[12px] font-mono"><!></div> <div class="overflow-auto p-3 text-[12px] font-mono"><!></div></div>'),Am=x('<span><span class="text-fg-2"> </span> </span>'),Lm=x('<span><span class="text-fg-2"> </span> </span>'),Om=x('<div class="flex h-full flex-col text-fg-1"><div class="border-b border-line-1 px-3 py-1.5 flex items-center gap-2 text-[11px] font-mono bg-bg-1/40"><div class="inline-flex border border-line-2 rounded overflow-hidden"><button type="button"><!> events</button> <button type="button"><!> messages</button> <button type="button"><!> commands</button> <button type="button"><!> json</button></div> <button type="button"><!> insert</button> <div class="inline-flex items-center gap-1.5 border border-line-1 rounded px-2 py-1 bg-bg-0"><!> <input type="text" placeholder="message/state…" class="bg-transparent text-fg-1 outline-none w-[180px] placeholder:text-fg-3"/> <!></div> <div class="ml-auto flex items-center gap-3 text-fg-3"><span> </span> <!> <span> </span> <!> <!> <!></div></div> <!> <!> <div class="border-t border-line-1 px-3 py-1.5 text-[10px] font-mono text-fg-3 flex items-center gap-3"><!> <!></div></div>');function Pm(t,e){nt(e,!0);let n=me("events"),a=me(""),o=me(null),i=me(!1),l=me(""),d=me(!1),f=me(null),v=me(0);const p='{"type":"email","to":"ops@example.com"}',b=y(()=>nm(e.result)),h=y(()=>om(r(b))),w=y(()=>im(r(b))),k=y(()=>e.collection?sm(e.collection):[]),C=y(()=>{const ce=r(a).trim().toLowerCase();return ce?r(b).filter(se=>se.id.toLowerCase().includes(ce)||se.state.toLowerCase().includes(ce)||JSON.stringify(se.message).toLowerCase().includes(ce)):r(b)});function P(ce){return typeof ce=="string"?ce:JSON.stringify(ce)}function $(ce){if(ce===null)return"-";try{return new Date(ce).toISOString().replace("T"," ").slice(0,19)}catch{return String(ce)}}function O(){const ce=r(l).trim();if(!ce)return"";try{return JSON.parse(ce)}catch{return ce}}async function Z(){const ce=Be.client;if(!(!ce||!e.collection||!r(l).trim())){m(d,!0),m(f,null);try{await St.track(`${e.collection} · enqueue message`,()=>ce.query(lm(e.collection,O()))),m(l,""),m(v,r(v)+1)}catch(se){m(f,se.message,!0)}finally{m(d,!1)}}}var Y=Om(),T=c(Y),q=c(T),ne=c(q),ie=c(ne);dm(ie,{class:"size-3"}),Se(),s(ne);var J=u(ne,2),ue=c(J);xl(ue,{class:"size-3"}),Se(),s(J);var U=u(J,2),E=c(U);cm(E,{class:"size-3"}),Se(),s(U);var I=u(U,2),_=c(I);ca(_,{class:"size-3"}),Se(),s(I),s(q);var A=u(q,2),R=c(A);Ta(R,{class:"size-3"}),Se(),s(A);var te=u(A,2),F=c(te);Gr(F,{class:"size-3 text-fg-3"});var X=u(F,2);Xt(X);var ee=u(X,2);{var L=ce=>{var se=um(),ve=c(se);Ar(ve,{class:"size-3"}),s(se),_e("click",se,()=>m(a,"")),g(ce,se)};V(ee,ce=>{r(a)&&ce(L)})}s(te);var H=u(te,2),j=c(H),le=c(j);s(j);var he=u(j,2);{var oe=ce=>{var se=fm(),ve=c(se);s(se),N(Ae=>S(ve,`${Ae??""} events`),[()=>r(w).length.toLocaleString()]),g(ce,se)};V(he,ce=>{r(w).length&&ce(oe)})}var Q=u(he,2),W=c(Q);s(Q);var G=u(Q,2);{var M=ce=>{var se=vm(),ve=u(c(se)),Ae=c(ve,!0);s(ve),s(se),N(Le=>S(Ae,Le),[()=>r(h).sources.join(", ")]),g(ce,se)};V(G,ce=>{r(h).sources.length&&ce(M)})}var K=u(G,2);{var D=ce=>{var se=gm(),ve=u(c(se)),Ae=c(ve,!0);s(ve),s(se),N(Le=>S(Ae,Le),[()=>r(h).dlcs.join(", ")]),g(ce,se)};V(K,ce=>{r(h).dlcs.length&&ce(D)})}var z=u(K,2);{var B=ce=>{var se=pm(),ve=c(se,!0);s(se),N(()=>S(ve,e.collection)),g(ce,se)};V(z,ce=>{e.collection&&ce(B)})}s(H),s(T);var re=u(T,2);{var de=ce=>{var se=xm(),ve=c(se),Ae=c(ve);Da(Ae),Ne(Ae,"placeholder",p);var Le=u(Ae,2),we=c(Le);{var Ie=Fe=>{cn(Fe,{class:"size-3 animate-spin"})},Ee=Fe=>{xl(Fe,{class:"size-3"})};V(we,Fe=>{r(d)?Fe(Ie):Fe(Ee,-1)})}Se(),s(Le),s(ve);var Me=u(ve,2);{var Te=Fe=>{var Qe=hm(),lt=c(Qe,!0);s(Qe),N(()=>S(lt,r(f))),g(Fe,Qe)},Xe=Fe=>{var Qe=bm(),lt=c(Qe);s(Qe),N(()=>S(lt,`${r(v)??""} inserted. Refresh the collection to reload from reddb.`)),g(Fe,Qe)};V(Me,Fe=>{r(f)?Fe(Te):r(v)>0&&Fe(Xe,1)})}s(se),N(Fe=>Le.disabled=Fe,[()=>r(d)||!r(l).trim()||!e.collection]),Sr(Ae,()=>r(l),Fe=>m(l,Fe)),_e("click",Le,Z),g(ce,se)};V(re,ce=>{r(i)&&ce(de)})}var be=u(re,2);{var fe=ce=>{var se=wm(),ve=c(se);{var Ae=we=>{var Ie=mm();g(we,Ie)},Le=we=>{var Ie=ym(),Ee=u(c(Ie));$e(Ee,21,()=>r(w),Me=>`${Me.messageId}-${Me.lsn??Me.entityId}`,(Me,Te)=>{var Xe=_m(),Fe=c(Xe),Qe=c(Fe,!0);s(Fe);var lt=u(Fe),ct=c(lt,!0);s(lt);var Ke=u(lt),He=c(Ke),Ue=c(He,!0);s(He),s(Ke);var ot=u(Ke),ae=c(ot,!0);s(ot);var tt=u(ot),Ze=c(tt,!0);s(tt);var We=u(tt),ut=c(We,!0);s(We),s(Xe),N((Et,Tt)=>{S(Qe,Et),S(ct,r(Te).collection),S(Ue,r(Te).op),S(ae,r(Te).entityId),S(Ze,r(Te).lsn??"-"),S(ut,Tt)},[()=>$(r(Te).ts),()=>P(r(Te).after)]),g(Me,Xe)}),s(Ee),s(Ie),g(we,Ie)};V(ve,we=>{r(w).length===0?we(Ae):we(Le,-1)})}s(se),g(ce,se)},Ce=ce=>{var se=Sm(),ve=c(se);$e(ve,21,()=>r(k),Ae=>Ae.query,(Ae,Le)=>{var we=km(),Ie=c(we),Ee=c(Ie),Me=c(Ee,!0);s(Ee);var Te=u(Ee,2),Xe=c(Te,!0);s(Te),s(Ie);var Fe=u(Ie,2),Qe=c(Fe,!0);s(Fe);var lt=u(Fe,2),ct=c(lt,!0);s(lt),s(we),N(Ke=>{S(Me,r(Le).label),Pe(Te,1,Ke),S(Xe,r(Le).mutates?"mutates":"read-only"),S(Qe,r(Le).query),S(ct,r(Le).note)},[()=>Ve(["rounded border px-1.5 py-0.5 text-[10px]",r(Le).mutates?"border-warn/30 bg-warn/10 text-warn":"border-ok/30 bg-ok/10 text-ok"].join(" "))]),g(Ae,we)}),s(ve),s(se),g(ce,se)},ke=ce=>{var se=Im(),ve=c(se),Ae=c(ve);{var Le=Fe=>{var Qe=Cm();g(Fe,Qe)},we=Fe=>{var Qe=_t(),lt=ze(Qe);$e(lt,17,()=>r(C),ct=>ct.id,(ct,Ke)=>{var He=Mm(),Ue=c(He),ot=c(Ue),ae=c(ot,!0);s(ot);var tt=u(ot,2),Ze=c(tt,!0);s(tt);var We=u(tt,2);{var ut=Mt=>{var Ct=Em(),xt=c(Ct,!0);s(Ct),N(()=>S(xt,r(Ke).consumer)),g(Mt,Ct)};V(We,Mt=>{r(Ke).consumer&&Mt(ut)})}s(Ue);var Et=u(Ue,2),Tt=c(Et,!0);s(Et),s(He),N((Mt,Ct)=>{Pe(He,1,Mt),S(ae,r(Ke).id),S(Ze,r(Ke).state),S(Tt,Ct)},[()=>Ve(["w-full text-left px-3 py-2 border-b border-line-1/60 hover:bg-bg-1/50 cursor-pointer",r(o)===r(Ke)?"bg-bg-1 text-fg-0":"text-fg-2"].join(" ")),()=>P(r(Ke).message)]),_e("click",He,()=>m(o,r(Ke),!0)),g(ct,He)}),g(Fe,Qe)};V(Ae,Fe=>{r(C).length===0?Fe(Le):Fe(we,-1)})}s(ve);var Ie=u(ve,2),Ee=c(Ie);{var Me=Fe=>{var Qe=zm(),lt=c(Qe,!0);s(Qe),N(ct=>S(lt,ct),[()=>JSON.stringify(r(C).map(ct=>ct.values),null,2)]),g(Fe,Qe)},Te=Fe=>{var Qe=Nm(),lt=u(c(Qe)),ct=c(lt,!0);s(lt);var Ke=u(lt,3),He=c(Ke,!0);s(Ke);var Ue=u(Ke,3),ot=c(Ue,!0);s(Ue);var ae=u(Ue,3),tt=c(ae,!0);s(ae);var Ze=u(ae,3),We=c(Ze,!0);s(Ze),s(Qe),N(ut=>{S(ct,r(o).id),S(He,r(o).state),S(ot,r(o).consumer??"none"),S(tt,r(o).dlc??"none"),S(We,ut)},[()=>P(r(o).message)]),g(Fe,Qe)},Xe=Fe=>{var Qe=Tm();g(Fe,Qe)};V(Ee,Fe=>{r(n)==="json"?Fe(Me):r(o)?Fe(Te,1):Fe(Xe,-1)})}s(Ie),s(se),g(ce,se)};V(be,ce=>{r(n)==="events"?ce(fe):r(n)==="commands"?ce(Ce,1):ce(ke,-1)})}var xe=u(be,2),ge=c(xe);$e(ge,17,()=>r(h).states,([ce,se])=>ce,(ce,se)=>{var ve=y(()=>Qr(r(se),2));let Ae=()=>r(ve)[0],Le=()=>r(ve)[1];var we=Am(),Ie=c(we),Ee=c(Ie,!0);s(Ie);var Me=u(Ie);s(we),N(Te=>{S(Ee,Ae()),S(Me,` ${Te??""}`)},[()=>Le().toLocaleString()]),g(ce,we)});var De=u(ge,2);$e(De,17,()=>r(h).operations,([ce,se])=>ce,(ce,se)=>{var ve=y(()=>Qr(r(se),2));let Ae=()=>r(ve)[0],Le=()=>r(ve)[1];var we=Lm(),Ie=c(we),Ee=c(Ie,!0);s(Ie);var Me=u(Ie);s(we),N(Te=>{S(Ee,Ae()),S(Me,` ${Te??""}`)},[()=>Le().toLocaleString()]),g(ce,we)}),s(xe),s(Y),N((ce,se,ve,Ae,Le,we)=>{Pe(ne,1,ce),Ne(ne,"aria-pressed",r(n)==="events"),Pe(J,1,se),Ne(J,"aria-pressed",r(n)==="messages"),Pe(U,1,ve),Ne(U,"aria-pressed",r(n)==="commands"),Pe(I,1,Ae),Ne(I,"aria-pressed",r(n)==="json"),A.disabled=!e.collection,Pe(A,1,Le),Ne(A,"aria-pressed",r(i)),Ne(A,"title",e.collection?"Insert a queue message":"Open this as a collection to insert messages"),S(le,`${we??""} messages`),S(W,`${r(h).activeConsumers??""} active consumers`)},[()=>Ve(["inline-flex items-center gap-1 px-2 py-1 cursor-pointer transition-colors",r(n)==="events"?"bg-primary text-on-primary":"bg-bg-1 text-fg-2 hover:text-fg-0"].join(" ")),()=>Ve(["inline-flex items-center gap-1 px-2 py-1 cursor-pointer transition-colors border-l border-line-2",r(n)==="messages"?"bg-primary text-on-primary":"bg-bg-1 text-fg-2 hover:text-fg-0"].join(" ")),()=>Ve(["inline-flex items-center gap-1 px-2 py-1 cursor-pointer transition-colors border-l border-line-2",r(n)==="commands"?"bg-primary text-on-primary":"bg-bg-1 text-fg-2 hover:text-fg-0"].join(" ")),()=>Ve(["inline-flex items-center gap-1 px-2 py-1 cursor-pointer transition-colors border-l border-line-2",r(n)==="json"?"bg-primary text-on-primary":"bg-bg-1 text-fg-2 hover:text-fg-0"].join(" ")),()=>Ve(["inline-flex items-center gap-1 h-6 px-2 rounded border cursor-pointer transition-colors disabled:opacity-40 disabled:cursor-not-allowed",r(i)?"border-accent/40 bg-accent/10 text-primary-text":"border-line-1 text-fg-3 hover:text-fg-1 hover:border-line-2"].join(" ")),()=>r(C).length.toLocaleString()]),_e("click",ne,()=>m(n,"events")),_e("click",J,()=>m(n,"messages")),_e("click",U,()=>m(n,"commands")),_e("click",I,()=>m(n,"json")),_e("click",A,()=>m(i,!r(i))),Sr(X,()=>r(a),ce=>m(a,ce)),g(t,Y),at()}nr(["click"]);const Dm={capability:"queue",renders:t=>am(t),component:Pm},Rm=["metric","stat","name","key"],Vm=["value","count","total","avg","rate","p50","p95","p99"],ml=["unit","units"];function _l(t){return/bytes?|memory|storage|wal/i.test(t)?"bytes":/rps|rate|requests?_per_second|writes?_per_second|reads?_per_second/i.test(t)?"/s":/ms|latency|response/i.test(t)?"ms":/percent|ratio|usage/i.test(t)?"%":""}function Hm(t){for(const n of ml){const a=t[n];if(typeof a=="string"&&a.trim())return a.trim()}const e=Object.entries(t).find(([n,a])=>ml.includes(n.toLowerCase())&&typeof a=="string"&&a.trim());return e?String(e[1]).trim():null}function Vd(t){const e=[];for(const n of t.result.records){const a=n.values??{},o=Object.entries(a).find(([l,d])=>Rm.includes(l.toLowerCase())&&(typeof d=="string"||typeof d=="number")),i=Object.entries(a).find(([l,d])=>Vm.includes(l.toLowerCase())&&typeof d=="number"&&Number.isFinite(d));if(o&&i){const l=String(o[1]);e.push({key:l,label:l,value:i[1],unit:Hm(a)??_l(l),source:a});continue}for(const[l,d]of Object.entries(a))typeof d!="number"||!Number.isFinite(d)||e.push({key:l,label:l,value:d,unit:_l(l),source:a})}return e}function Fm(t){if(t.capability==="stats")return!0;const e=Vd(t);return e.length>0&&e.length>=t.result.records.length}function yl(t,e){if(e==="bytes"){const n=Math.abs(t);return n>=1024**3?`${(t/1024**3).toFixed(1)} GiB`:n>=1024**2?`${(t/1024**2).toFixed(1)} MiB`:n>=1024?`${(t/1024).toFixed(1)} KiB`:`${t} B`}return e==="%"||e==="ms"||e==="/s"?`${t.toLocaleString()}${e}`:t.toLocaleString()}const Hd={name:"list",size:24,node:[["path",{d:"M3 5h.01"}],["path",{d:"M3 12h.01"}],["path",{d:"M3 19h.01"}],["path",{d:"M8 5h13"}],["path",{d:"M8 12h13"}],["path",{d:"M8 19h13"}]]};Hd.node;function qm(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Hd}}))}var Km=x('<div class="flex-1 grid place-items-center text-fg-3 text-[12px] font-mono p-6">No numeric statistics in this result.</div>'),jm=x('· <span class="text-fg-2"> </span>',1),Bm=x('<div class="rounded border border-line-1 bg-bg-1 px-3 py-2"><div class="type-label truncate"> </div> <div class="mt-1 font-mono text-[20px] font-semibold text-fg-0"> </div></div>'),Um=x('<div class="flex-1 overflow-auto p-3"><div class="grid grid-cols-[repeat(auto-fill,minmax(220px,1fr))] gap-2"></div></div>'),Wm=x('<div class="rounded border border-line-1 bg-bg-1 px-3 py-3 text-center"><svg viewBox="0 0 120 70" class="mx-auto h-[82px] w-[150px]"><path d="M 15 60 A 45 45 0 0 1 105 60" fill="none" stroke="var(--color-line-2)" stroke-width="10" stroke-linecap="round"></path><path d="M 15 60 A 45 45 0 0 1 105 60" fill="none" stroke="var(--color-accent)" stroke-width="10" stroke-linecap="round" pathLength="100"></path><text x="60" y="58" text-anchor="middle" class="fill-fg-0 font-mono text-[13px] font-semibold"> </text></svg> <div class="mt-1 truncate font-mono text-[11px] text-fg-2"> </div></div>'),Gm=x('<div class="flex-1 overflow-auto p-3"><div class="grid grid-cols-[repeat(auto-fill,minmax(180px,1fr))] gap-2"></div></div>'),Ym=x('<tr class="border-b border-line-1/60 hover:bg-bg-1/40"><td class="px-2 py-1 text-fg-0"> </td><td class="px-2 py-1 text-right text-primary-text"> </td><td class="px-2 py-1 text-fg-3"> </td></tr>'),$m=x('<div class="flex-1 overflow-auto"><table class="w-full border-collapse text-[12px] font-mono"><thead class="sticky top-0 bg-bg-1 z-10"><tr class="border-b border-line-1 text-fg-3"><th class="px-2 py-1.5 text-left font-normal">metric</th><th class="px-2 py-1.5 text-right font-normal">value</th><th class="px-2 py-1.5 text-left font-normal">unit</th></tr></thead><tbody></tbody></table></div>'),Xm=x('<div class="border-b border-line-1 px-3 py-1.5 flex items-center gap-2 text-[11px] font-mono bg-bg-1/40"><div class="inline-flex border border-line-2 rounded overflow-hidden"><button type="button"><!> kpis</button> <button type="button"><!> gauges</button> <button type="button"><!> table</button></div> <div class="ml-auto text-fg-3"> <!></div></div> <!>',1),Zm=x('<div class="flex h-full flex-col text-fg-1"><!></div>');function Qm(t,e){nt(e,!0);let n=me("kpi");const a=y(()=>Vd(e.result)),o=y(()=>Math.max(1,...r(a).map(p=>Math.abs(p.value))));function i(p){return p>=0&&p<=100?p:Math.min(100,Math.abs(p)/r(o)*100)}var l=Zm(),d=c(l);{var f=p=>{var b=Km();g(p,b)},v=p=>{var b=Xm(),h=ze(b),w=c(h),k=c(w),C=c(k);qm(C,{class:"size-3"}),Se(),s(k);var P=u(k,2),$=c(P);zd($,{class:"size-3"}),Se(),s(P);var O=u(P,2),Z=c(O);yv(Z,{class:"size-3"}),Se(),s(O),s(w);var Y=u(w,2),T=c(Y),q=u(T);{var ne=E=>{var I=jm(),_=u(ze(I)),A=c(_,!0);s(_),N(()=>S(A,e.collection)),g(E,I)};V(q,E=>{e.collection&&E(ne)})}s(Y),s(h);var ie=u(h,2);{var J=E=>{var I=Um(),_=c(I);$e(_,23,()=>r(a),(A,R)=>`${A.key}-${R}`,(A,R)=>{var te=Bm(),F=c(te),X=c(F,!0);s(F);var ee=u(F,2),L=c(ee,!0);s(ee),s(te),N(H=>{S(X,r(R).label),S(L,H)},[()=>yl(r(R).value,r(R).unit)]),g(A,te)}),s(_),s(I),g(E,I)},ue=E=>{var I=Gm(),_=c(I);$e(_,23,()=>r(a),(A,R)=>`${A.key}-${R}`,(A,R)=>{const te=y(()=>i(r(R).value));var F=Wm(),X=c(F),ee=u(c(X)),L=u(ee),H=c(L,!0);s(L),s(X);var j=u(X,2),le=c(j,!0);s(j),s(F),N(he=>{Ne(X,"aria-label",`${r(R).label??""} gauge`),Ne(ee,"stroke-dasharray",`${r(te)} 100`),S(H,he),S(le,r(R).label)},[()=>yl(r(R).value,r(R).unit)]),g(A,F)}),s(_),s(I),g(E,I)},U=E=>{var I=$m(),_=c(I),A=u(c(_));$e(A,23,()=>r(a),(R,te)=>`${R.key}-${te}`,(R,te)=>{var F=Ym(),X=c(F),ee=c(X,!0);s(X);var L=u(X),H=c(L,!0);s(L);var j=u(L),le=c(j,!0);s(j),s(F),N(he=>{S(ee,r(te).label),S(H,he),S(le,r(te).unit||"-")},[()=>r(te).value.toLocaleString()]),g(R,F)}),s(A),s(_),s(I),g(E,I)};V(ie,E=>{r(n)==="kpi"?E(J):r(n)==="gauge"?E(ue,1):E(U,-1)})}N((E,I,_,A)=>{Pe(k,1,E),Ne(k,"aria-pressed",r(n)==="kpi"),Pe(P,1,I),Ne(P,"aria-pressed",r(n)==="gauge"),Pe(O,1,_),Ne(O,"aria-pressed",r(n)==="table"),S(T,`${A??""} metrics `)},[()=>Ve(["inline-flex items-center gap-1 px-2 py-1 cursor-pointer transition-colors",r(n)==="kpi"?"bg-primary text-on-primary":"bg-bg-1 text-fg-2 hover:text-fg-0"].join(" ")),()=>Ve(["inline-flex items-center gap-1 px-2 py-1 cursor-pointer transition-colors border-l border-line-2",r(n)==="gauge"?"bg-primary text-on-primary":"bg-bg-1 text-fg-2 hover:text-fg-0"].join(" ")),()=>Ve(["inline-flex items-center gap-1 px-2 py-1 cursor-pointer transition-colors border-l border-line-2",r(n)==="table"?"bg-primary text-on-primary":"bg-bg-1 text-fg-2 hover:text-fg-0"].join(" ")),()=>r(a).length.toLocaleString()]),_e("click",k,()=>m(n,"kpi")),_e("click",P,()=>m(n,"gauge")),_e("click",O,()=>m(n,"table")),g(p,b)};V(d,p=>{r(a).length===0?p(f):p(v,-1)})}s(l),g(t,l),at()}nr(["click"]);const Jm={capability:"stats",renders:t=>Fm(t),component:Qm},Fd={name:"git-compare-arrows",size:24,node:[["circle",{cx:"5",cy:"6",r:"3"}],["path",{d:"M12 6h5a2 2 0 0 1 2 2v7"}],["path",{d:"m15 9-3-3 3-3"}],["circle",{cx:"19",cy:"18",r:"3"}],["path",{d:"M12 18H7a2 2 0 0 1-2-2V9"}],["path",{d:"m9 15 3 3-3 3"}]]};Fd.node;function Xi(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Fd}}))}const qd=["change","change_type","operation","op"],e_=["target_collection","collection_name","diff_collection"],t_=["entity_id","row_id","rid","id"],Kd=["before_state","before_row","before"],jd=["after_state","after_row","after"],r_=["note","summary","message"];function Xn(t,e){for(const n of e)if(n in t)return[n,t[n]];return Object.entries(t).find(([n])=>e.includes(n.toLowerCase()))??null}function wl(t){if(typeof t!="string")return t;const e=t.trim();if(!e||!/^[{[]/.test(e))return t;try{return JSON.parse(e)}catch{return t}}function n_(t){return t.result.records.map((e,n)=>{const a=e.values??{},o=Xn(a,qd),i=Xn(a,e_),l=Xn(a,t_),d=Xn(a,Kd),f=Xn(a,jd),v=Xn(a,r_);return{index:n,id:String(a.id??a.diff_id??(l==null?void 0:l[1])??n+1),change:String((o==null?void 0:o[1])??"modified"),collection:(i==null?void 0:i[1])===void 0||(i==null?void 0:i[1])===null?null:String(i[1]),entityId:(l==null?void 0:l[1])===void 0||(l==null?void 0:l[1])===null?null:String(l[1]),before:wl((d==null?void 0:d[1])??null),after:wl((f==null?void 0:f[1])??null),note:(v==null?void 0:v[1])===void 0||(v==null?void 0:v[1])===null?null:String(v[1]),values:a}})}function a_(t){return t.capability==="diff"?!0:t.result.records.some(e=>{const n=Object.keys(e.values??{}).map(a=>a.toLowerCase());return qd.some(a=>n.includes(a))&&(Kd.some(a=>n.includes(a))||jd.some(a=>n.includes(a)))})}function o_(t){const e=new Map;for(const n of t)e.set(n.change,(e.get(n.change)??0)+1);return[...e.entries()].sort(([n],[a])=>n.localeCompare(a))}function Zi(t){return!!t&&typeof t=="object"&&!Array.isArray(t)}function kl(t){return t===void 0?"__red_ui_undefined__":Zi(t)?JSON.stringify(Object.fromEntries(Object.entries(t).sort(([e],[n])=>e.localeCompare(n)))):JSON.stringify(t)}function i_(t){const e=Zi(t.before)?t.before:{},n=Zi(t.after)?t.after:{};return[...new Set([...Object.keys(e),...Object.keys(n)])].sort((o,i)=>o.localeCompare(i)).map(o=>{const i=Object.prototype.hasOwnProperty.call(e,o),l=Object.prototype.hasOwnProperty.call(n,o),d=e[o],f=n[o],v=!i&&l?"added":i&&!l?"removed":kl(d)===kl(f)?"unchanged":"modified";return{field:o,before:d,after:f,status:v}})}function Zn(t){return t==null||t===""?"-":typeof t=="object"?JSON.stringify(t,null,2):String(t)}var s_=x('<div class="flex-1 grid place-items-center text-fg-3 text-[12px] font-mono p-6">No diff shape in this result.</div>'),l_=x('<button type="button" class="text-fg-3 hover:text-fg-1 cursor-pointer" aria-label="Clear diff filter"><!></button>'),c_=x('<span><span class="text-fg-2"> </span> </span>'),d_=x('<span class="text-fg-2"> </span>'),u_=x('<div class="flex-1 overflow-auto p-3 text-[12px] font-mono"><pre class="whitespace-pre-wrap text-fg-1"> </pre></div>'),f_=x('<span class="ml-auto text-fg-3"> </span>'),v_=x('<div class="mt-1 truncate text-fg-1"> </div>'),g_=x('<button type="button"><div class="flex items-center gap-2"><span class="text-primary-text"> </span> <span class="text-fg-3 truncate"> </span> <!></div> <!></button>'),p_=x('<span class="text-fg-3">note</span><span class="text-fg-1"> </span>',1),h_=x('<div class="px-2 py-2 text-fg-3">No changed fields in this row.</div>'),b_=x('<tr class="border-b border-line-1/60 last:border-b-0"><td> </td><td class="px-2 py-1 align-top text-fg-0"> </td><td class="max-w-[260px] px-2 py-1 align-top text-fg-2"><pre class="whitespace-pre-wrap break-words"> </pre></td><td class="max-w-[260px] px-2 py-1 align-top text-fg-2"><pre class="whitespace-pre-wrap break-words"> </pre></td></tr>'),x_=x('<table class="w-full border-collapse"><thead class="bg-bg-0 text-fg-3"><tr class="border-b border-line-1"><th class="w-[110px] px-2 py-1 text-left font-normal">status</th><th class="w-[150px] px-2 py-1 text-left font-normal">field</th><th class="px-2 py-1 text-left font-normal">before</th><th class="px-2 py-1 text-left font-normal">after</th></tr></thead><tbody></tbody></table>'),m_=x('<div class="mb-3 border border-line-1"><div class="flex items-center gap-2 border-b border-line-1 bg-bg-1 px-2 py-1.5"><span class="text-fg-0">field diff</span> <span class="text-fg-3"> </span> <label class="ml-auto inline-flex items-center gap-1 text-fg-3"><input type="checkbox" class="size-3 accent-current"/> unchanged</label></div> <!></div>'),__=x('<div class="mb-3 grid grid-cols-[100px_1fr] gap-x-3 gap-y-1"><span class="text-fg-3">change</span><span class="text-primary-text"> </span> <span class="text-fg-3">entity</span><span class="text-fg-0"> </span> <span class="text-fg-3">collection</span><span class="text-fg-0"> </span> <!></div> <!> <div class="grid grid-cols-2 gap-3"><section class="min-w-0"><div class="type-label mb-1">full before</div> <pre class="min-h-[160px] whitespace-pre-wrap break-words rounded border border-line-1 bg-bg-1 p-2 text-fg-1"> </pre></section> <section class="min-w-0"><div class="type-label mb-1">full after</div> <pre class="min-h-[160px] whitespace-pre-wrap break-words rounded border border-line-1 bg-bg-1 p-2 text-fg-1"> </pre></section></div>',1),y_=x('<div class="text-fg-3">No diff entry selected.</div>'),w_=x('<div class="flex-1 min-h-0 grid grid-cols-[minmax(320px,0.9fr)_1.1fr]"><div class="overflow-auto border-r border-line-1 text-[12px] font-mono"></div> <div class="overflow-auto p-3 text-[12px] font-mono"><!></div></div>'),k_=x('<div class="border-b border-line-1 px-3 py-1.5 flex items-center gap-2 text-[11px] font-mono bg-bg-1/40"><div class="inline-flex border border-line-2 rounded overflow-hidden"><button type="button"><!> diff</button> <button type="button"><!> raw</button></div> <div class="inline-flex items-center gap-1.5 border border-line-1 rounded px-2 py-1 bg-bg-0"><!> <input type="text" placeholder="change, id, value…" class="bg-transparent text-fg-1 outline-none w-[190px] placeholder:text-fg-3"/> <!></div> <div class="ml-auto flex items-center gap-3 text-fg-3"><!> <!></div></div> <!>',1),S_=x('<div class="flex h-full flex-col text-fg-1"><!></div>');function Bd(t,e){nt(e,!0);let n=me("summary"),a=me(""),o=me(null),i=me(!1);const l=y(()=>n_(e.result)),d=y(()=>o_(r(l))),f=y(()=>{const $=r(a).trim().toLowerCase();return $?r(l).filter(O=>O.id.toLowerCase().includes($)||O.change.toLowerCase().includes($)||(O.collection??"").toLowerCase().includes($)||(O.entityId??"").toLowerCase().includes($)||Zn(O.before).toLowerCase().includes($)||Zn(O.after).toLowerCase().includes($)):r(l)}),v=y(()=>r(o)??r(f)[0]??null),p=y(()=>r(v)?i_(r(v)):[]),b=y(()=>r(i)?r(p):r(p).filter($=>$.status!=="unchanged"));function h($){return $==="added"?"text-ok":$==="removed"?"text-danger":$==="modified"?"text-primary-text":"text-fg-3"}var w=S_(),k=c(w);{var C=$=>{var O=s_();g($,O)},P=$=>{var O=k_(),Z=ze(O),Y=c(Z),T=c(Y),q=c(T);Xi(q,{class:"size-3"}),Se(),s(T);var ne=u(T,2),ie=c(ne);ca(ie,{class:"size-3"}),Se(),s(ne),s(Y);var J=u(Y,2),ue=c(J);Gr(ue,{class:"size-3 text-fg-3"});var U=u(ue,2);Xt(U);var E=u(U,2);{var I=L=>{var H=l_(),j=c(H);Ar(j,{class:"size-3"}),s(H),_e("click",H,()=>m(a,"")),g(L,H)};V(E,L=>{r(a)&&L(I)})}s(J);var _=u(J,2),A=c(_);$e(A,17,()=>r(d),([L,H])=>L,(L,H)=>{var j=y(()=>Qr(r(H),2));let le=()=>r(j)[0],he=()=>r(j)[1];var oe=c_(),Q=c(oe),W=c(Q,!0);s(Q);var G=u(Q);s(oe),N(()=>{S(W,le()),S(G,` ${he()??""}`)}),g(L,oe)});var R=u(A,2);{var te=L=>{var H=d_(),j=c(H,!0);s(H),N(()=>S(j,e.collection)),g(L,H)};V(R,L=>{e.collection&&L(te)})}s(_),s(Z);var F=u(Z,2);{var X=L=>{var H=u_(),j=c(H),le=c(j,!0);s(j),s(H),N(he=>S(le,he),[()=>JSON.stringify(r(f).map(he=>he.values),null,2)]),g(L,H)},ee=L=>{var H=w_(),j=c(H);$e(j,21,()=>r(f),W=>W.id,(W,G)=>{var M=g_(),K=c(M),D=c(K),z=c(D,!0);s(D);var B=u(D,2),re=c(B,!0);s(B);var de=u(B,2);{var be=ke=>{var xe=f_(),ge=c(xe,!0);s(xe),N(()=>S(ge,r(G).collection)),g(ke,xe)};V(de,ke=>{r(G).collection&&ke(be)})}s(K);var fe=u(K,2);{var Ce=ke=>{var xe=v_(),ge=c(xe,!0);s(xe),N(()=>S(ge,r(G).note)),g(ke,xe)};V(fe,ke=>{r(G).note&&ke(Ce)})}s(M),N(ke=>{Pe(M,1,ke),S(z,r(G).change),S(re,r(G).entityId??r(G).id)},[()=>Ve(["w-full text-left px-3 py-2 border-b border-line-1/60 hover:bg-bg-1/50 cursor-pointer",r(v)===r(G)?"bg-bg-1 text-fg-0":"text-fg-2"].join(" "))]),_e("click",M,()=>m(o,r(G),!0)),g(W,M)}),s(j);var le=u(j,2),he=c(le);{var oe=W=>{var G=__(),M=ze(G),K=u(c(M)),D=c(K,!0);s(K);var z=u(K,3),B=c(z,!0);s(z);var re=u(z,3),de=c(re,!0);s(re);var be=u(re,2);{var fe=Le=>{var we=p_(),Ie=u(ze(we)),Ee=c(Ie,!0);s(Ie),N(()=>S(Ee,r(v).note)),g(Le,we)};V(be,Le=>{r(v).note&&Le(fe)})}s(M);var Ce=u(M,2);{var ke=Le=>{var we=m_(),Ie=c(we),Ee=u(c(Ie),2),Me=c(Ee);s(Ee);var Te=u(Ee,2),Xe=c(Te);Xt(Xe),Se(),s(Te),s(Ie);var Fe=u(Ie,2);{var Qe=ct=>{var Ke=h_();g(ct,Ke)},lt=ct=>{var Ke=x_(),He=u(c(Ke));$e(He,21,()=>r(b),Ue=>Ue.field,(Ue,ot)=>{var ae=b_(),tt=c(ae),Ze=c(tt,!0);s(tt);var We=u(tt),ut=c(We,!0);s(We);var Et=u(We),Tt=c(Et),Mt=c(Tt,!0);s(Tt),s(Et);var Ct=u(Et),xt=c(Ct),mt=c(xt,!0);s(xt),s(Ct),s(ae),N((wt,Ot,Zt)=>{Pe(tt,1,wt),S(Ze,r(ot).status),S(ut,r(ot).field),S(Mt,Ot),S(mt,Zt)},[()=>Ve(["px-2 py-1 align-top",h(r(ot).status)].join(" ")),()=>Zn(r(ot).before),()=>Zn(r(ot).after)]),g(Ue,ae)}),s(He),s(Ke),g(ct,Ke)};V(Fe,ct=>{r(b).length===0?ct(Qe):ct(lt,-1)})}s(we),N(()=>S(Me,`${r(b).length??""}/${r(p).length??""} fields`)),dv(Xe,()=>r(i),ct=>m(i,ct)),g(Le,we)};V(Ce,Le=>{r(p).length>0&&Le(ke)})}var xe=u(Ce,2),ge=c(xe),De=u(c(ge),2),ce=c(De,!0);s(De),s(ge);var se=u(ge,2),ve=u(c(se),2),Ae=c(ve,!0);s(ve),s(se),s(xe),N((Le,we)=>{S(D,r(v).change),S(B,r(v).entityId??r(v).id),S(de,r(v).collection??"-"),S(ce,Le),S(Ae,we)},[()=>Zn(r(v).before),()=>Zn(r(v).after)]),g(W,G)},Q=W=>{var G=y_();g(W,G)};V(he,W=>{r(v)?W(oe):W(Q,-1)})}s(le),s(H),g(L,H)};V(F,L=>{r(n)==="raw"?L(X):L(ee,-1)})}N((L,H)=>{Pe(T,1,L),Ne(T,"aria-pressed",r(n)==="summary"),Pe(ne,1,H),Ne(ne,"aria-pressed",r(n)==="raw")},[()=>Ve(["inline-flex items-center gap-1 px-2 py-1 cursor-pointer transition-colors",r(n)==="summary"?"bg-primary text-on-primary":"bg-bg-1 text-fg-2 hover:text-fg-0"].join(" ")),()=>Ve(["inline-flex items-center gap-1 px-2 py-1 cursor-pointer transition-colors border-l border-line-2",r(n)==="raw"?"bg-primary text-on-primary":"bg-bg-1 text-fg-2 hover:text-fg-0"].join(" "))]),_e("click",T,()=>m(n,"summary")),_e("click",ne,()=>m(n,"raw")),Sr(U,()=>r(a),L=>m(a,L)),g($,O)};V(k,$=>{r(l).length===0?$(C):$(P,-1)})}s(w),g(t,w),at()}nr(["click"]);const C_={capability:"diff",renders:a_,component:Bd},Ud={name:"file-text",size:24,node:[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5"}],["path",{d:"M10 9H8"}],["path",{d:"M16 13H8"}],["path",{d:"M16 17H8"}]]};Ud.node;function E_(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Ud}}))}const M_=new Set(["rid","collection","kind","tenant","created_at","updated_at","body"]);function z_(t,e,n){const a=e&&typeof e=="object"&&!Array.isArray(e)?e:{};for(const i of["title","name","slug","id","event_type","type"]){const l=t[i]??a[i];if(typeof l=="string"&&l.trim())return l;if(typeof l=="number")return String(l)}const o=t.rid;return typeof o=="string"||typeof o=="number"?`document ${o}`:`document ${n+1}`}function N_(t,e){const n=e&&typeof e=="object"&&!Array.isArray(e)?e:{},a=[];for(const i of["category","source","status","collection"]){const l=t[i]??n[i];typeof l=="string"&&l.trim()&&a.push(l)}const o=t.updated_at??t.created_at;return(typeof o=="string"||typeof o=="number")&&a.push(String(o)),a.join(" · ")}function Wd(t){const e=[];for(const[n,a]of t.result.records.entries()){const o=a.values??{},i=o.body;if(o.kind!=="document"&&(i===null||typeof i!="object"))continue;const l={};for(const[d,f]of Object.entries(o))M_.has(d.toLowerCase())||(l[d]=f);e.push({rid:String(o.rid??n+1),title:z_(o,i,n),subtitle:N_(o,i),body:i,fields:l,values:o})}return e}function T_(t){return t.capability==="document"?!0:Wd(t).length>0}var I_=x('<div class="flex-1 grid place-items-center text-fg-3 text-[12px] font-mono p-6">No document shape in this result.</div>'),A_=x('<button type="button" class="text-fg-3 hover:text-fg-1 cursor-pointer" aria-label="Clear document filter"><!></button>'),L_=x('· <span class="text-fg-2"> </span>',1),O_=x('<div class="mt-1 truncate text-fg-3"> </div>'),P_=x('<button type="button"><div class="flex items-center gap-2"><span class="text-primary-text truncate"> </span> <span class="ml-auto text-fg-3"> </span></div> <!></button>'),D_=x('<pre class="m-0 whitespace-pre-wrap text-fg-1"> </pre>'),R_=x('<tr class="border-b border-line-1/60"><td class="w-[180px] px-2 py-1 text-fg-3 align-top"> </td><td class="px-2 py-1 text-fg-1 align-top"><pre class="m-0 whitespace-pre-wrap"> </pre></td></tr>'),V_=x('<table class="w-full border-collapse"><tbody></tbody></table>'),H_=x('<pre class="m-0 whitespace-pre-wrap text-fg-1"> </pre>'),F_=x('<div class="text-fg-3">No documents match the current filter.</div>'),q_=x('<div class="border-b border-line-1 px-3 py-1.5 flex items-center gap-2 text-[11px] font-mono bg-bg-1/40"><div class="inline-flex border border-line-2 rounded overflow-hidden"><button type="button"><!> body</button> <button type="button"><!> fields</button> <button type="button"><!> raw</button></div> <div class="inline-flex items-center gap-1.5 border border-line-1 rounded px-2 py-1 bg-bg-0"><!> <input type="text" placeholder="document search…" class="bg-transparent text-fg-1 outline-none w-[200px] placeholder:text-fg-3"/> <!></div> <div class="ml-auto text-fg-3"> <!> documents <!></div></div> <div class="flex-1 min-h-0 grid grid-cols-[minmax(280px,0.75fr)_1.25fr]"><div class="overflow-auto border-r border-line-1 text-[12px] font-mono"></div> <div class="min-h-0 overflow-auto p-3 text-[12px] font-mono"><!></div></div> <div class="border-t border-line-1 px-3 py-1.5 text-[10px] font-mono text-fg-3"> </div>',1),K_=x('<div class="flex h-full flex-col text-fg-1"><!></div>');function j_(t,e){nt(e,!0);let n=me("body"),a=me(""),o=me(null);const i=y(()=>Wd(e.result)),l=y(()=>{const w=r(a).trim().toLowerCase();return w?r(i).filter(k=>k.title.toLowerCase().includes(w)||k.subtitle.toLowerCase().includes(w)||JSON.stringify(k.body).toLowerCase().includes(w)):r(i)}),d=y(()=>r(o)&&r(l).includes(r(o))?r(o):r(l)[0]??null);function f(w){return JSON.stringify(w??null,null,2)}var v=K_(),p=c(v);{var b=w=>{var k=I_();g(w,k)},h=w=>{var k=q_(),C=ze(k),P=c(C),$=c(P),O=c($);ca(O,{class:"size-3"}),Se(),s($);var Z=u($,2),Y=c(Z);E_(Y,{class:"size-3"}),Se(),s(Z);var T=u(Z,2),q=c(T);ca(q,{class:"size-3"}),Se(),s(T),s(P);var ne=u(P,2),ie=c(ne);Gr(ie,{class:"size-3 text-fg-3"});var J=u(ie,2);Xt(J);var ue=u(J,2);{var U=oe=>{var Q=A_(),W=c(Q);Ar(W,{class:"size-3"}),s(Q),_e("click",Q,()=>m(a,"")),g(oe,Q)};V(ue,oe=>{r(a)&&oe(U)})}s(ne);var E=u(ne,2),I=c(E,!0),_=u(I);{var A=oe=>{var Q=bt();N(W=>S(Q,`of ${W??""}`),[()=>r(i).length.toLocaleString()]),g(oe,Q)};V(_,oe=>{r(a)&&oe(A)})}var R=u(_,2);{var te=oe=>{var Q=L_(),W=u(ze(Q)),G=c(W,!0);s(W),N(()=>S(G,e.collection)),g(oe,Q)};V(R,oe=>{e.collection&&oe(te)})}s(E),s(C);var F=u(C,2),X=c(F);$e(X,21,()=>r(l),oe=>oe.rid,(oe,Q)=>{var W=P_(),G=c(W),M=c(G),K=c(M,!0);s(M);var D=u(M,2),z=c(D);s(D),s(G);var B=u(G,2);{var re=de=>{var be=O_(),fe=c(be,!0);s(be),N(()=>S(fe,r(Q).subtitle)),g(de,be)};V(B,de=>{r(Q).subtitle&&de(re)})}s(W),N(de=>{Pe(W,1,de),S(K,r(Q).title),S(z,`#${r(Q).rid??""}`)},[()=>Ve(["w-full text-left px-3 py-2 border-b border-line-1/60 hover:bg-bg-1/50 cursor-pointer",r(d)===r(Q)?"bg-bg-1 text-fg-0":"text-fg-2"].join(" "))]),_e("click",W,()=>m(o,r(Q),!0)),g(oe,W)}),s(X);var ee=u(X,2),L=c(ee);{var H=oe=>{var Q=_t(),W=ze(Q);{var G=D=>{var z=D_(),B=c(z,!0);s(z),N(re=>S(B,re),[()=>f(r(d).body)]),g(D,z)},M=D=>{var z=V_(),B=c(z);$e(B,21,()=>Object.entries(r(d).fields),([re,de])=>re,(re,de)=>{var be=y(()=>Qr(r(de),2));let fe=()=>r(be)[0],Ce=()=>r(be)[1];var ke=R_(),xe=c(ke),ge=c(xe,!0);s(xe);var De=u(xe),ce=c(De),se=c(ce,!0);s(ce),s(De),s(ke),N(ve=>{S(ge,fe()),S(se,ve)},[()=>f(Ce())]),g(re,ke)}),s(B),s(z),g(D,z)},K=D=>{var z=H_(),B=c(z,!0);s(z),N(re=>S(B,re),[()=>f(r(d).values)]),g(D,z)};V(W,D=>{r(n)==="body"?D(G):r(n)==="fields"?D(M,1):D(K,-1)})}g(oe,Q)},j=oe=>{var Q=F_();g(oe,Q)};V(L,oe=>{r(d)?oe(H):oe(j,-1)})}s(ee),s(F);var le=u(F,2),he=c(le);s(le),N((oe,Q,W,G)=>{Pe($,1,oe),Ne($,"aria-pressed",r(n)==="body"),Pe(Z,1,Q),Ne(Z,"aria-pressed",r(n)==="fields"),Pe(T,1,W),Ne(T,"aria-pressed",r(n)==="raw"),S(I,G),S(he,`${r(i).length??""} documents${e.collection?" · ":""}${e.collection??""??""}`)},[()=>Ve(["inline-flex items-center gap-1 px-2 py-1 cursor-pointer transition-colors",r(n)==="body"?"bg-primary text-on-primary":"bg-bg-1 text-fg-2 hover:text-fg-0"].join(" ")),()=>Ve(["inline-flex items-center gap-1 px-2 py-1 cursor-pointer transition-colors border-l border-line-2",r(n)==="fields"?"bg-primary text-on-primary":"bg-bg-1 text-fg-2 hover:text-fg-0"].join(" ")),()=>Ve(["inline-flex items-center gap-1 px-2 py-1 cursor-pointer transition-colors border-l border-line-2",r(n)==="raw"?"bg-primary text-on-primary":"bg-bg-1 text-fg-2 hover:text-fg-0"].join(" ")),()=>r(l).length.toLocaleString()]),_e("click",$,()=>m(n,"body")),_e("click",Z,()=>m(n,"fields")),_e("click",T,()=>m(n,"raw")),Sr(J,()=>r(a),oe=>m(a,oe)),g(w,k)};V(p,w=>{r(i).length===0?w(b):w(h,-1)})}s(v),g(t,v),at()}nr(["click"]);const B_={capability:"document",renders:T_,component:j_};en.register(p1);en.register(h1);en.register(V1);en.register(sx);en.register(rm);en.register(Dm);en.register(Jm);en.register(C_);en.register(B_);en.register(vx);const Gd={name:"git-commit-horizontal",size:24,node:[["circle",{cx:"12",cy:"12",r:"3"}],["line",{x1:"3",x2:"9",y1:"12",y2:"12"}],["line",{x1:"15",x2:"21",y1:"12",y2:"12"}]],aliases:["git-commit"]};Gd.node;function U_(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Gd}}))}const Yd={name:"radio-tower",size:24,node:[["path",{d:"M4.9 16.1C1 12.2 1 5.8 4.9 1.9"}],["path",{d:"M7.8 4.7a6.14 6.14 0 0 0-.8 7.5"}],["circle",{cx:"12",cy:"9",r:"2"}],["path",{d:"M16.2 4.8c2 2 2.26 5.11.8 7.47"}],["path",{d:"M19.1 1.9a9.96 9.96 0 0 1 0 14.1"}],["path",{d:"M9.5 18h5"}],["path",{d:"m8 22 4-11 4 11"}]]};Yd.node;function W_(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Yd}}))}const $d={name:"refresh-cw",size:24,node:[["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"}]]};$d.node;function ks(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return $d}}))}const Xd={name:"shield-check",size:24,node:[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"}],["path",{d:"m9 12 2 2 4-4"}]]};Xd.node;function G_(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Xd}}))}const Zd={name:"pause",size:24,node:[["rect",{x:"14",y:"3",width:"5",height:"18",rx:"1"}],["rect",{x:"5",y:"3",width:"5",height:"18",rx:"1"}]]};Zd.node;function Y_(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Zd}}))}var $_=x("<!> resume",1),X_=x("<!> pause",1),Z_=x('<label class="inline-flex items-center gap-1 cursor-pointer"><input type="checkbox" class="accent-accent size-3"/> <span> </span></label>'),Q_=x('<button type="button" class="inline-flex items-center gap-1 px-2 py-1 text-[11px] font-mono rounded border border-line-1 hover:bg-bg-2 text-fg-3" title="Clear buffer"><!> clear</button>'),J_=x('<div class="p-6 text-[12px] font-mono text-fg-3"><span class="text-primary-text">error:</span> </div>'),e0=x('<div class="p-6 text-[12px] font-mono text-fg-3">Not connected. Use the topbar Connect button to open a stream.</div>'),t0=x('<div class="p-6 text-[12px] font-mono text-fg-3"> </div>'),r0=x('<span class="text-fg-3 ml-auto"> </span>'),n0=x('<li class="px-3 py-1.5 flex items-center gap-3 hover:bg-bg-1"><span class="text-fg-3 w-16 shrink-0"> </span> <span class="text-fg-3 w-16 shrink-0"> </span> <span> </span> <span class="text-fg-2 truncate"> </span> <span class="text-fg-3">·</span> <span class="text-fg-3 truncate"> </span> <!></li>'),a0=x('<ul class="divide-y divide-line-1 font-mono text-[12px]"></ul>'),o0=x('<div class="h-full flex flex-col bg-bg-0"><header class="px-3 py-2 border-b border-line-1 flex items-center gap-3 text-fg-3"><!> <span class="type-label">Live changes</span> <span class="text-[11px] font-mono text-fg-3"> </span> <div class="ml-auto flex items-center gap-1"><button type="button" class="inline-flex items-center gap-1 px-2 py-1 text-[11px] font-mono rounded border border-line-1 hover:bg-bg-2 text-fg-2"><!></button> <div class="inline-flex items-center gap-1 px-2 py-1 text-[11px] font-mono rounded border border-line-1 text-fg-3"><!> <!></div> <!></div></header> <div class="flex-1 overflow-auto"><!></div></div>');function Qd(t,e){nt(e,!0);const n=["insert","update","delete"];let a=me(jt([])),o=me(!1),i=me(jt({insert:!0,update:!0,delete:!0})),l=me(null),d=null,f=null;const v=500;function p(){h(),m(l,null),m(a,[],!0);const H=Be.client;if(!H){m(l,"No active connection.");return}d=new Xv({client:H,sseFactory:null}).subscribe({collection:e.collection}),f=d.events.getReader(),b()}async function b(){if(f)try{for(;;){const{value:H,done:j}=await f.read();if(j)return;r(o)||H&&m(a,[H,...r(a)].slice(0,v),!0)}}catch(H){m(l,H.message,!0)}}function h(){if(f){try{f.cancel()}catch{}f=null}d&&(d.close(),d=null)}Lt(()=>{Be.connected,e.collection,Be.connected?p():h()}),Zo(h);function w(H){const j=Date.now()-H;return j<1e3?"now":j<6e4?`${Math.floor(j/1e3)}s ago`:j<36e5?`${Math.floor(j/6e4)}m ago`:`${Math.floor(j/36e5)}h ago`}function k(H){return new Date(H).toISOString().replace("T"," ").replace("Z","")}const C=y(()=>r(a).filter(H=>r(i)[H.operation]??!0)),P=y(()=>e.collection?`collection: ${e.collection}`:"global");var $=o0(),O=c($),Z=c(O);Va(Z,{class:"size-3.5"});var Y=u(Z,4),T=c(Y);s(Y);var q=u(Y,2),ne=c(q),ie=c(ne);{var J=H=>{var j=$_(),le=ze(j);Jo(le,{class:"size-3"}),Se(),g(H,j)},ue=H=>{var j=X_(),le=ze(j);Y_(le,{class:"size-3"}),Se(),g(H,j)};V(ie,H=>{r(o)?H(J):H(ue,-1)})}s(ne);var U=u(ne,2),E=c(U);pd(E,{class:"size-3"});var I=u(E,2);$e(I,16,()=>n,H=>H,(H,j)=>{var le=Z_(),he=c(le);Xt(he);var oe=u(he,2),Q=c(oe,!0);s(oe),s(le),N(()=>{Ma(he,r(i)[j]),Pe(oe,1,Ve(r(i)[j]?"text-fg-1":"text-fg-3")),S(Q,j)}),_e("change",he,W=>m(i,{...r(i),[j]:W.currentTarget.checked},!0)),g(H,le)}),s(U);var _=u(U,2);{var A=H=>{var j=Q_(),le=c(j);Ar(le,{class:"size-3"}),Se(),s(j),_e("click",j,()=>m(a,[],!0)),g(H,j)};V(_,H=>{r(a).length>0&&H(A)})}s(q),s(O);var R=u(O,2),te=c(R);{var F=H=>{var j=J_(),le=u(c(j));s(j),N(()=>S(le,` ${r(l)??""}`)),g(H,j)},X=H=>{var j=e0();g(H,j)},ee=H=>{var j=t0(),le=c(j,!0);s(j),N(()=>S(le,r(o)?"Paused — no events captured.":"Listening for changes…")),g(H,j)},L=H=>{var j=a0();$e(j,21,()=>r(C),le=>le.lsn,(le,he)=>{var oe=n0(),Q=c(oe),W=c(Q,!0);s(Q);var G=u(Q,2),M=c(G);s(G);var K=u(G,2),D=c(K,!0);s(K);var z=u(K,2),B=c(z,!0);s(z);var re=u(z,4),de=c(re,!0);s(re);var be=u(re,2);{var fe=Ce=>{var ke=r0(),xe=c(ke);s(ke),N(()=>S(xe,`rid ${r(he).rid??""}`)),g(Ce,ke)};V(be,Ce=>{r(he).rid!==void 0&&Ce(fe)})}s(oe),N((Ce,ke,xe)=>{Ne(Q,"title",Ce),S(W,ke),S(M,`lsn ${r(he).lsn??""}`),Pe(K,1,xe),S(D,r(he).operation),S(B,r(he).collection),S(de,r(he).kind)},[()=>k(r(he).timestamp),()=>w(r(he).timestamp),()=>Ve(["inline-block w-14 text-center text-[10px] uppercase rounded px-1 py-0.5 shrink-0 border",r(he).operation==="insert"&&"border-ok/40 text-ok",r(he).operation==="update"&&"border-warn/40 text-warn",r(he).operation==="delete"&&"border-accent/40 text-primary-text"].filter(Boolean).join(" "))]),g(le,oe)}),s(j),g(H,j)};V(te,H=>{r(l)?H(F):Be.connected?r(C).length===0?H(ee,2):H(L,-1):H(X,1)})}s(R),s($),N(()=>{S(T,`· ${r(P)??""}`),Ne(ne,"title",r(o)?"Resume stream":"Pause stream")}),_e("click",ne,()=>m(o,!r(o))),g(t,$),at()}nr(["click","change"]);var i0=x('<div class="border-b border-line-1 px-3 py-1.5 font-mono text-[11px] text-warn"> </div>'),s0=x('<div class="p-4 font-mono text-[12px] text-fg-3">No active RedDB connection.</div>'),l0=x('<div class="p-4 font-mono text-[12px] text-fg-3">Loading version history…</div>'),c0=x('<div class="p-4 font-mono text-[12px] text-fg-3"><div class="mb-2 text-fg-1">This collection is a normal collection with versioning disabled.</div> <button type="button" class="inline-flex h-7 items-center gap-1 rounded border border-accent/40 bg-accent px-2 text-white hover:bg-accent/90"><!> enable versioning</button></div>'),d0=x('<div class="flex-1 min-h-0"><!></div>'),u0=x("<option> </option>"),f0=x("<option> </option>"),v0=x('<span class="ml-auto text-fg-3"> </span>'),g0=x('<div class="p-4 font-mono text-[12px] text-fg-3">Choose two commits to compare this collection.</div>'),p0=x('<div class="border-b border-line-1 px-3 py-1.5 flex flex-wrap items-center gap-2 font-mono text-[11px]"><label class="inline-flex items-center gap-1 text-fg-3"><span>from</span> <select class="h-7 rounded border border-line-1 bg-bg-0 px-2 text-fg-1"><option>select commit</option><!></select></label> <label class="inline-flex items-center gap-1 text-fg-3"><span>to</span> <select class="h-7 rounded border border-line-1 bg-bg-0 px-2 text-fg-1"><option>select commit</option><!></select></label> <button type="button" class="inline-flex h-7 items-center gap-1 rounded border border-line-1 px-2 text-fg-2 hover:bg-bg-2 disabled:text-fg-3"><!> run diff</button> <!></div> <div class="flex-1 min-h-0"><!></div>',1),h0=x('<div class="p-4 font-mono text-[12px] text-fg-3">No commits yet.</div>'),b0=x('<tr class="border-b border-line-1/60 hover:bg-bg-1/50"><td class="px-3 py-1.5 text-primary-text"> </td><td class="px-3 py-1.5 text-fg-1"> </td><td class="px-3 py-1.5 text-fg-3"> </td><td class="px-3 py-1.5 text-fg-3"> </td></tr>'),x0=x('<table class="w-full border-collapse font-mono text-[12px]"><thead class="sticky top-0 bg-bg-0 text-fg-3"><tr class="border-b border-line-1"><th class="px-3 py-1.5 text-left font-normal">commit</th><th class="px-3 py-1.5 text-left font-normal">message</th><th class="px-3 py-1.5 text-left font-normal">author</th><th class="px-3 py-1.5 text-left font-normal">time</th></tr></thead><tbody></tbody></table>'),m0=x('<div class="flex-1 overflow-auto"><!></div>'),_0=x('<div class="h-full min-h-0 flex flex-col bg-bg-0"><div class="border-b border-line-1 px-3 py-1.5 flex items-center gap-2 font-mono text-[11px]"><div class="inline-flex overflow-hidden rounded border border-line-2"><button type="button"><!> commits</button> <button type="button"><!> diff</button> <button type="button"><!> live</button></div> <span> </span> <span class="text-fg-3"> </span> <button type="button" class="ml-auto inline-flex h-7 items-center gap-1 rounded border border-line-1 px-2 text-fg-3 hover:bg-bg-2 hover:text-fg-1"><!> refresh</button></div> <!> <!></div>');function y0(t,e){nt(e,!0);let n=me("commits"),a=me(null),o=me(jt([])),i=me(""),l=me(""),d=me(null),f=me(!1),v=me(!1),p=me(null),b="";const h=y(()=>r(i).length>0&&r(l).length>0&&r(i)!==r(l));function w(G){return G.slice(0,10)}function k(G){return G?new Date(G).toISOString().replace("T"," ").replace("Z",""):"-"}function C(G){return{ok:!0,query:`/repo/commits/${G.from}/diff/${G.to}?collection=${e.collection}`,capability:"diff",record_count:G.entries.length,result:{columns:["collection","entity_id","change","before","after"],records:G.entries.map((M,K)=>({values:{id:`${M.collection}:${M.entity_id}:${K}`,collection:M.collection,entity_id:M.entity_id,change:M.change,before:M.before??null,after:M.after??null}}))}}}async function P(){if(e.client){m(f,!0),m(p,null),m(d,null);try{const[G,M]=await Promise.all([e.client.collectionVcs(e.collection),e.client.commits({limit:40})]);m(a,G,!0),m(o,M,!0),M.length>=2?(m(l,M[0].hash,!0),m(i,M[1].hash,!0)):M.length===1?(m(l,M[0].hash,!0),m(i,"")):(m(l,""),m(i,""))}catch(G){m(p,G.message,!0)}finally{m(f,!1)}}}async function $(){if(e.client){m(f,!0),m(p,null);try{m(a,await e.client.setCollectionVcs(e.collection,!0),!0),m(o,await e.client.commits({limit:40}),!0)}catch(G){m(p,G.message,!0)}finally{m(f,!1)}}}async function O(){if(!(!e.client||!r(h))){m(v,!0),m(p,null);try{m(d,await e.client.commitDiff(r(i),r(l),{collection:e.collection}),!0),m(n,"diff")}catch(G){m(p,G.message,!0)}finally{m(v,!1)}}}Lt(()=>{var M;const G=`${((M=e.client)==null?void 0:M.baseUrl)??"none"}:${e.collection}`;G!==b&&(b=G,P())});var Z=_0(),Y=c(Z),T=c(Y),q=c(T),ne=c(q);U_(ne,{class:"size-3"}),Se(),s(q);var ie=u(q,2),J=c(ie);Xi(J,{class:"size-3"}),Se(),s(ie);var ue=u(ie,2),U=c(ue);W_(U,{class:"size-3"}),Se(),s(ue),s(T);var E=u(T,2),I=c(E,!0);s(E);var _=u(E,2),A=c(_,!0);s(_);var R=u(_,2),te=c(R);{var F=G=>{cn(G,{class:"size-3 animate-spin"})},X=G=>{ks(G,{class:"size-3"})};V(te,G=>{r(f)?G(F):G(X,-1)})}Se(),s(R),s(Y);var ee=u(Y,2);{var L=G=>{var M=i0(),K=c(M,!0);s(M),N(()=>S(K,r(p))),g(G,M)};V(ee,G=>{r(p)&&G(L)})}var H=u(ee,2);{var j=G=>{var M=s0();g(G,M)},le=G=>{var M=l0();g(G,M)},he=G=>{var M=c0(),K=u(c(M),2),D=c(K);G_(D,{class:"size-3"}),Se(),s(K),s(M),_e("click",K,()=>void $()),g(G,M)},oe=G=>{var M=d0(),K=c(M);Qd(K,{get collection(){return e.collection}}),s(M),g(G,M)},Q=G=>{var M=p0(),K=ze(M),D=c(K),z=u(c(D),2),B=c(z);B.value=B.__value="";var re=u(B);$e(re,17,()=>r(o),Ie=>Ie.hash,(Ie,Ee)=>{var Me=u0(),Te=c(Me);s(Me);var Xe={};N(Fe=>{S(Te,`${Fe??""} · ${r(Ee).message??""}`),Xe!==(Xe=r(Ee).hash)&&(Me.value=(Me.__value=r(Ee).hash)??"")},[()=>w(r(Ee).hash)]),g(Ie,Me)}),s(z),s(D);var de=u(D,2),be=u(c(de),2),fe=c(be);fe.value=fe.__value="";var Ce=u(fe);$e(Ce,17,()=>r(o),Ie=>Ie.hash,(Ie,Ee)=>{var Me=f0(),Te=c(Me);s(Me);var Xe={};N(Fe=>{S(Te,`${Fe??""} · ${r(Ee).message??""}`),Xe!==(Xe=r(Ee).hash)&&(Me.value=(Me.__value=r(Ee).hash)??"")},[()=>w(r(Ee).hash)]),g(Ie,Me)}),s(be),s(de);var ke=u(de,2),xe=c(ke);{var ge=Ie=>{cn(Ie,{class:"size-3 animate-spin"})},De=Ie=>{Xi(Ie,{class:"size-3"})};V(xe,Ie=>{r(v)?Ie(ge):Ie(De,-1)})}Se(),s(ke);var ce=u(ke,2);{var se=Ie=>{var Ee=v0(),Me=c(Ee);s(Ee),N(()=>S(Me,`+${r(d).added??""} -${r(d).removed??""} ~${r(d).modified??""}`)),g(Ie,Ee)};V(ce,Ie=>{r(d)&&Ie(se)})}s(K);var ve=u(K,2),Ae=c(ve);{var Le=Ie=>{{let Ee=y(()=>C(r(d)));Bd(Ie,{get result(){return r(Ee)},get collection(){return e.collection}})}},we=Ie=>{var Ee=g0();g(Ie,Ee)};V(Ae,Ie=>{r(d)?Ie(Le):Ie(we,-1)})}s(ve),N(()=>ke.disabled=!r(h)||r(v)),qi(z,()=>r(i),Ie=>m(i,Ie)),qi(be,()=>r(l),Ie=>m(l,Ie)),_e("click",ke,()=>void O()),g(G,M)},W=G=>{var M=m0(),K=c(M);{var D=B=>{var re=h0();g(B,re)},z=B=>{var re=x0(),de=u(c(re));$e(de,21,()=>r(o),be=>be.hash,(be,fe)=>{var Ce=b0(),ke=c(Ce),xe=c(ke,!0);s(ke);var ge=u(ke),De=c(ge,!0);s(ge);var ce=u(ge),se=c(ce,!0);s(ce);var ve=u(ce),Ae=c(ve,!0);s(ve),s(Ce),N((Le,we)=>{var Ie;S(xe,Le),S(De,r(fe).message),S(se,((Ie=r(fe).author)==null?void 0:Ie.name)??"-"),S(Ae,we)},[()=>w(r(fe).hash),()=>k(r(fe).timestamp_ms)]),g(be,Ce)}),s(de),s(re),g(B,re)};V(K,B=>{r(o).length===0?B(D):B(z,-1)})}s(M),g(G,M)};V(H,G=>{e.client?r(f)&&!r(a)?G(le,1):r(a)&&!r(a).versioned?G(he,2):r(n)==="live"?G(oe,3):r(n)==="diff"?G(Q,4):G(W,-1):G(j)})}s(Z),N((G,M,K)=>{var D,z;Pe(q,1,G),Pe(ie,1,M),Pe(ue,1,K),Pe(E,1,Ve((D=r(a))!=null&&D.versioned?"text-ok":"text-fg-3")),S(I,(z=r(a))!=null&&z.versioned?"versioned":"not versioned"),S(A,e.collection),R.disabled=r(f)},[()=>Ve(["inline-flex h-7 items-center gap-1 px-2",r(n)==="commits"?"bg-primary text-on-primary":"bg-bg-1 text-fg-2 hover:text-fg-0"].join(" ")),()=>Ve(["inline-flex h-7 items-center gap-1 border-l border-line-2 px-2",r(n)==="diff"?"bg-primary text-on-primary":"bg-bg-1 text-fg-2 hover:text-fg-0"].join(" ")),()=>Ve(["inline-flex h-7 items-center gap-1 border-l border-line-2 px-2",r(n)==="live"?"bg-primary text-on-primary":"bg-bg-1 text-fg-2 hover:text-fg-0"].join(" "))]),_e("click",q,()=>m(n,"commits")),_e("click",ie,()=>m(n,"diff")),_e("click",ue,()=>m(n,"live")),_e("click",R,()=>void P()),g(t,Z),at()}nr(["click"]);var w0=x('<span class="text-fg-3">·</span> <span class="text-fg-2 font-mono text-[11px] truncate max-w-[280px]"> </span>',1),k0=x('<span class="text-warn font-mono text-[11px]">disconnected</span>'),S0=x("<!> <span>Running…</span>",1),C0=x("<!> <span>Run</span>",1),E0=x('<div class="h-full grid place-items-center p-6" aria-live="polite" aria-busy="true"><div class="w-full max-w-md rounded border border-line-1 bg-bg-1 p-4 font-mono"><div class="flex items-start justify-between gap-4"><div class="min-w-0"><div class="flex items-center gap-2 text-fg-1 text-[13px]"><!> <span>Running query</span></div> <div class="mt-2 text-[11px] text-fg-3">elapsed <span class="tabular-nums text-fg-2"> </span></div></div> <button type="button" class="inline-flex h-7 items-center gap-1 rounded border border-line-2 px-2 text-[11px] text-fg-2 hover:border-danger/50 hover:text-danger cursor-pointer" aria-label="Cancel running query"><!> <span>Cancel</span></button></div> <div class="mt-3 max-h-24 overflow-hidden rounded bg-bg-0 px-2 py-1.5 text-[11px] text-fg-3"><pre class="m-0 whitespace-pre-wrap break-words"> </pre></div></div></div>'),M0=x('<div class="p-4 text-[12px] font-mono text-warn"><div class="font-semibold mb-1">Query failed</div> <pre class="whitespace-pre-wrap"> </pre></div>'),z0=x('<div class="h-full grid place-items-center text-fg-3 text-[12px] font-mono">Run a query to see results here.</div>'),N0=x('<div class="px-3 py-1.5 border-b border-line-1 bg-bg-1 text-[11px] font-mono text-fg-3"> <span class="text-fg-2">LIMIT</span> to narrow.</div>'),T0=x("<!> <!>",1),I0=x('<div class="flex h-full flex-col"><div class="flex flex-col border-b border-line-1 bg-bg-0" style="height: 40%;"><div class="flex items-center justify-between px-3 py-1.5 border-b border-line-1"><div class="flex items-center gap-2 text-fg-3 type-label"><span>SQL</span> <!></div> <div class="flex items-center gap-2"><span class="text-fg-3 font-mono text-[11px] hidden sm:inline">Run with <!><!></span> <button type="button" class="inline-flex items-center gap-1 rounded border border-accent/60 bg-accent/10 px-2 py-1 text-[12px] font-mono text-primary-text hover:bg-accent/20 disabled:opacity-50 disabled:cursor-not-allowed" aria-label="Run query"><!></button></div></div> <textarea class="flex-1 resize-none bg-bg-0 px-3 py-2 font-mono text-[13px] text-fg-1 outline-none placeholder:text-fg-3" spellcheck="false" autocapitalize="off"></textarea></div> <div class="flex-1 overflow-hidden bg-bg-0"><!></div></div>');function A0(t,e){nt(e,!0),Lt(()=>{Ur.ensure(e.tabId)});const n=y(()=>Ur.states[e.tabId]),a=y(()=>Kt.tabs.find(F=>F.id===e.tabId));let o=me(void 0),i=me(jt(Date.now()));const l=y(()=>{var F;return(F=r(n))!=null&&F.runningStartedAt?Sb(Math.max(0,r(i)-r(n).runningStartedAt)):"0ms"});Lt(()=>{var X;if(!((X=r(n))!=null&&X.running))return;m(i,Date.now(),!0);const F=setInterval(()=>{m(i,Date.now(),!0)},100);return()=>clearInterval(F)});function d(F){Ur.setSql(e.tabId,F);const X=Eb(F,e.fallbackLabel),ee=Kt.tabs.find(L=>L.id===e.tabId);ee&&ee.label!==X&&Kt.rename(e.tabId,X)}async function f(){await Ur.run(e.tabId)}function v(){Ur.cancel(e.tabId)}function p(F){(F.metaKey||F.ctrlKey)&&F.key==="Enter"&&(F.preventDefault(),f())}function b(){var F,X;return(F=r(n))!=null&&F.result?en.pick(r(n).result.capability,r(n).result,(X=r(a))==null?void 0:X.overrideCapability):null}var h=I0(),w=c(h),k=c(w),C=c(k),P=u(c(C),2);{var $=F=>{var X=w0(),ee=u(ze(X),2),L=c(ee,!0);s(ee),N(()=>S(L,Be.active.url)),g(F,X)},O=F=>{var X=k0();g(F,X)};V(P,F=>{Be.connected?F($):F(O,-1)})}s(C);var Z=u(C,2),Y=c(Z),T=u(c(Y));Br(T,{children:(F,X)=>{Se();var ee=bt("⌘");g(F,ee)},$$slots:{default:!0}});var q=u(T);Br(q,{children:(F,X)=>{Se();var ee=bt("↵");g(F,ee)},$$slots:{default:!0}}),s(Y);var ne=u(Y,2),ie=c(ne);{var J=F=>{var X=S0(),ee=ze(X);cn(ee,{class:"size-3.5 animate-spin"}),Se(2),g(F,X)},ue=F=>{var X=C0(),ee=ze(X);Jo(ee,{class:"size-3.5"}),Se(2),g(F,X)};V(ie,F=>{var X;(X=r(n))!=null&&X.running?F(J):F(ue,-1)})}s(ne),s(Z),s(k);var U=u(k,2);Da(U),Ne(U,"placeholder","SELECT * FROM users LIMIT 100"),ln(U,F=>m(o,F),()=>r(o)),s(w);var E=u(w,2),I=c(E);{var _=F=>{var X=E0(),ee=c(X),L=c(ee),H=c(L),j=c(H),le=c(j);cn(le,{class:"size-4 animate-spin text-primary-text"}),Se(2),s(j);var he=u(j,2),oe=u(c(he)),Q=c(oe,!0);s(oe),s(he),s(H);var W=u(H,2),G=c(W);Ar(G,{class:"size-3.5"}),Se(2),s(W),s(L);var M=u(L,2),K=c(M),D=c(K,!0);s(K),s(M),s(ee),s(X),N(z=>{S(Q,r(l)),S(D,z)},[()=>r(n).sql.trim()]),_e("click",W,v),g(F,X)},A=F=>{var X=M0(),ee=u(c(X),2),L=c(ee,!0);s(ee),s(X),N(()=>S(L,r(n).error)),g(F,X)},R=F=>{var X=z0();g(F,X)},te=F=>{const X=y(b);var ee=T0(),L=ze(ee);{var H=he=>{var oe=N0(),Q=c(oe);Se(2),s(oe),N(W=>S(Q,`Streamed first ${W??""} rows — more remain on the server. Add a `),[()=>r(n).result.record_count.toLocaleString()]),g(he,oe)};V(L,he=>{r(n).result.truncated&&he(H)})}var j=u(L,2);{var le=he=>{const oe=y(()=>r(X).component);var Q=_t(),W=ze(Q);{let G=y(()=>{var M;return((M=r(a))==null?void 0:M.showSystemColumns)??!1});ba(W,()=>r(oe),(M,K)=>{K(M,{get result(){return r(n).result},get showSystem(){return r(G)}})})}g(he,Q)};V(j,he=>{r(X)&&he(le)})}g(F,ee)};V(I,F=>{var X,ee,L;(X=r(n))!=null&&X.running?F(_):(ee=r(n))!=null&&ee.error?F(A,1):(L=r(n))!=null&&L.result?F(te,-1):F(R,2)})}s(E),s(h),N(()=>{var F,X;ne.disabled=((F=r(n))==null?void 0:F.running)||!Be.connected,Xr(U,((X=r(n))==null?void 0:X.sql)??"")}),_e("click",ne,f),_e("input",U,F=>d(F.currentTarget.value)),_e("keydown",U,p),g(t,h),at()}nr(["click","input","keydown"]);const Jd={name:"eye-off",size:24,node:[["path",{d:"M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575 1 1 0 0 1 0 .696 10.747 10.747 0 0 1-1.444 2.49"}],["path",{d:"M14.084 14.158a3 3 0 0 1-4.242-4.242"}],["path",{d:"M17.479 17.499a10.75 10.75 0 0 1-15.417-5.151 1 1 0 0 1 0-.696 10.75 10.75 0 0 1 4.446-5.143"}],["path",{d:"m2 2 20 20"}]]};Jd.node;function eu(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Jd}}))}const tu={name:"eye",size:24,node:[["path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0"}],["circle",{cx:"12",cy:"12",r:"3"}]]};tu.node;function ru(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return tu}}))}const nu={name:"hard-drive",size:24,node:[["path",{d:"M10 16h.01"}],["path",{d:"M2.212 11.577a2 2 0 0 0-.212.896V18a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-5.527a2 2 0 0 0-.212-.896L18.55 5.11A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z"}],["path",{d:"M21.946 12.013H2.054"}],["path",{d:"M6 16h.01"}]]};nu.node;function L0(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return nu}}))}const au={name:"scan-line",size:24,node:[["path",{d:"M3 7V5a2 2 0 0 1 2-2h2"}],["path",{d:"M17 3h2a2 2 0 0 1 2 2v2"}],["path",{d:"M21 17v2a2 2 0 0 1-2 2h-2"}],["path",{d:"M7 21H5a2 2 0 0 1-2-2v-2"}],["path",{d:"M7 12h10"}]]};au.node;function O0(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return au}}))}const ou={name:"git-branch",size:24,node:[["path",{d:"M15 6a9 9 0 0 0-9 9V3"}],["circle",{cx:"18",cy:"6",r:"3"}],["circle",{cx:"6",cy:"18",r:"3"}]]};ou.node;function P0(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return ou}}))}var D0=x('<div class="px-3 py-2 flex items-center gap-2 text-fg-3"><!> <span class="type-label">Results</span></div>'),R0=x('<a><span class="truncate max-w-[180px]"> </span> <span class="opacity-60 group-hover:opacity-100 hover:bg-bg-2 rounded p-0.5" role="button" tabindex="-1" aria-label="Close tab"><!></span></a>'),V0=x('<button type="button"><span class="truncate max-w-[180px]"> </span> <span class="opacity-60 group-hover:opacity-100 hover:bg-bg-2 rounded p-0.5" role="button" tabindex="-1" aria-label="Close tab"><!></span></button>'),H0=x('<div class="flex items-stretch overflow-x-auto"></div>'),F0=x('<button type="button"><!> <span>history</span></button>'),q0=x('<button type="button"><!> <span>meta</span></button> <!>',1),K0=x("<option> </option>"),j0=x('<div class="ml-auto flex items-center gap-2 px-2 text-[11px] font-mono text-fg-3"><!> <button type="button"><!> <span>sys</span></button> <span> </span> <span class="text-fg-3">· override:</span> <select class="bg-bg-1 text-fg-1 border border-line-1 rounded px-1 py-0.5" aria-label="Renderer override"></select></div>'),B0=x('<div role="menu" class="absolute right-0 top-full mt-1 z-10 min-w-[220px] rounded border border-line-1 bg-bg-1 shadow-lg p-1 text-[12px] font-mono"><button type="button" class="w-full text-left px-2 py-1 rounded hover:bg-bg-2 text-fg-1 flex items-center gap-2"><!> <span class="flex-1">New query</span> <span class="text-fg-3 text-[10px]">⌘T</span></button> <button type="button" class="w-full text-left px-2 py-1 rounded hover:bg-bg-2 text-fg-1">Live changes (global)</button></div>'),U0=x('<div class="text-center text-fg-3 text-[12px] font-mono">Connected to <span class="text-fg-1"> </span>. <br/> Pick a collection from the left to open a tab.</div>'),W0=x(`<div class="text-center max-w-md"><!> <h2 class="type-h2 m-0 mb-2">Workspace</h2> <p class="text-fg-2 text-[13px] m-0">Connect to a reddb instance from the topbar to start browsing
|
|
5
|
+
collections and running queries.</p></div>`),G0=x('<div class="h-full grid place-items-center p-6"><!></div>'),Y0=x('<div class="h-full grid place-items-center text-fg-3 text-[12px] font-mono">Workspace</div>'),$0=x('<div class="p-4 text-[12px] font-mono text-warn"><div class="font-semibold mb-1">Query failed</div> <pre class="whitespace-pre-wrap"> </pre></div>'),X0=x('<div class="px-2 py-2"><div class="h-3 rounded bg-bg-2 motion-safe:animate-pulse"></div></div>'),Z0=x('<div class="px-2 py-2"><div class="h-3 rounded bg-bg-2 motion-safe:animate-pulse"></div></div>'),Q0=x('<div class="grid h-[29px] grid-cols-[40px_repeat(6,minmax(96px,1fr))] border-b border-line-1/60"><div class="px-2 py-2"><div class="ml-auto h-3 w-4 rounded bg-bg-2 motion-safe:animate-pulse"></div></div> <!></div>'),J0=x('<div class="h-full flex flex-col" aria-busy="true"><div class="border-b border-line-1 bg-bg-1/35 px-3 py-2"><div class="flex flex-wrap items-center gap-x-4 gap-y-2"><div class="min-w-[180px] flex-1"><div class="flex items-center gap-2"><div class="h-[21px] w-[78px] rounded border border-line-1 bg-bg-2 motion-safe:animate-pulse"></div> <div class="h-4 w-44 max-w-[45vw] rounded bg-bg-2 motion-safe:animate-pulse"></div></div> <div class="mt-1 flex flex-wrap gap-1"><div class="h-[21px] w-24 rounded border border-line-1 bg-bg-0/70 motion-safe:animate-pulse"></div> <div class="h-[21px] w-32 rounded border border-line-1 bg-bg-0/70 motion-safe:animate-pulse"></div> <div class="h-[21px] w-20 rounded border border-line-1 bg-bg-0/70 motion-safe:animate-pulse"></div></div></div> <div class="flex flex-wrap items-center gap-2"><div class="h-[30px] w-[94px] rounded border border-line-1 bg-bg-0/70 motion-safe:animate-pulse"></div> <div class="h-[30px] w-[92px] rounded border border-line-1 bg-bg-0/70 motion-safe:animate-pulse"></div> <div class="h-[30px] w-[92px] rounded border border-line-1 bg-bg-0/70 motion-safe:animate-pulse"></div> <div class="h-[30px] w-[78px] rounded border border-line-1 bg-bg-0/70 motion-safe:animate-pulse"></div> <div class="h-[30px] w-[78px] rounded border border-line-1 bg-bg-0/70 motion-safe:animate-pulse"></div></div></div></div> <div class="border-b border-line-1 px-3 py-1.5 flex items-center gap-2 bg-bg-1/40"><div class="h-6 w-[70px] rounded border border-line-1 bg-bg-2 motion-safe:animate-pulse"></div> <div class="h-6 w-[54px] rounded border border-line-1 bg-bg-2 motion-safe:animate-pulse"></div> <div class="h-4 w-px bg-line-1"></div> <div class="h-6 w-[76px] rounded border border-line-1 bg-bg-2 motion-safe:animate-pulse"></div> <div class="ml-auto h-3 w-[58px] rounded bg-bg-2 motion-safe:animate-pulse"></div></div> <div class="flex-1 overflow-hidden"><div class="min-w-[760px]"><div class="grid h-8 grid-cols-[40px_repeat(6,minmax(96px,1fr))] border-b border-line-1 bg-bg-1"><div class="px-2 py-2"><div class="ml-auto h-3 w-4 rounded bg-bg-2 motion-safe:animate-pulse"></div></div> <!></div> <!></div></div> <div class="border-t border-line-1 px-3 py-1.5 flex items-center gap-3"><div class="h-3 w-28 rounded bg-bg-2 motion-safe:animate-pulse"></div> <div class="h-3 w-44 rounded bg-bg-2 motion-safe:animate-pulse"></div> <div class="h-3 w-20 rounded bg-bg-2 motion-safe:animate-pulse"></div></div></div>'),ey=x('<div class="flex items-center gap-2 text-[11px] font-mono text-fg-3"><!> <span>Catalog metadata unavailable.</span> <span class="truncate"> </span></div>'),ty=x('<div class="flex items-center gap-2 text-[11px] font-mono text-fg-3"><!> <span>Loading collection catalog…</span></div>'),ry=x('<span class="rounded border border-line-1 bg-bg-0/70 px-1.5 py-0.5 font-mono text-[10px] text-fg-2"> </span>'),ny=x('<span class="font-mono text-[10px] text-fg-3">No type-specific catalog fields.</span>'),ay=x('<div class="flex flex-wrap items-center gap-x-4 gap-y-2"><div class="min-w-[180px] flex-1"><div class="flex items-center gap-2"><span class="rounded border border-accent/30 bg-accent/10 px-1.5 py-0.5 font-mono text-[10px] uppercase tracking-[0.08em] text-primary-text"> </span> <span class="truncate font-mono text-[12px] text-fg-0"> </span></div> <div class="mt-1 flex flex-wrap gap-1"><!> <!></div></div> <div class="flex flex-wrap items-center gap-2 font-mono text-[11px]"><div class="inline-flex min-w-[94px] items-center gap-1.5 rounded border border-line-1 bg-bg-0/70 px-2 py-1"><!> <span class="text-fg-0"> </span> <span class="text-fg-3">entities</span></div> <div class="inline-flex min-w-[92px] items-center gap-1.5 rounded border border-line-1 bg-bg-0/70 px-2 py-1"><!> <span class="text-fg-0"> </span> <span class="text-fg-3">disk</span></div> <div class="inline-flex min-w-[92px] items-center gap-1.5 rounded border border-line-1 bg-bg-0/70 px-2 py-1"><!> <span class="text-fg-0"> </span> <span class="text-fg-3">mem</span></div> <div class="inline-flex min-w-[78px] items-center gap-1.5 rounded border border-line-1 bg-bg-0/70 px-2 py-1"><!> <span class="text-fg-0"> </span> <span class="text-fg-3">seg</span></div> <div class="inline-flex min-w-[78px] items-center gap-1.5 rounded border border-line-1 bg-bg-0/70 px-2 py-1"><!> <span class="text-fg-0"> </span> <span class="text-fg-3">idx</span></div></div></div>'),oy=x('<div class="flex items-start gap-2 text-fg-3"><!> <div><div class="text-warn">Collection metadata unavailable.</div> <div class="mt-0.5 break-words"> </div></div></div>'),iy=x('<div class="text-fg-3">Loading metadata…</div>'),sy=x('<span class="rounded border border-accent/30 bg-accent/10 px-1.5 py-0.5 text-primary-text"> </span>'),ly=x('<span class="rounded border border-line-1 px-1.5 py-0.5 text-fg-2"> </span>'),cy=x('<span class="rounded border border-line-1 px-1.5 py-0.5 text-fg-2"> </span>'),dy=x('<span class="rounded border border-line-1 px-1.5 py-0.5 text-fg-2">retention</span>'),uy=x("<span> </span>"),fy=x('<div class="mt-1 flex flex-wrap gap-1"></div>'),vy=x('<div class="mt-1 text-fg-3">Action grants not exposed.</div>'),gy=x('<div class="grid grid-cols-[minmax(160px,0.8fr)_1.2fr] gap-3"><div class="grid grid-cols-[78px_1fr] gap-x-2 gap-y-1"><span class="text-fg-3">name</span> <span class="text-fg-0 truncate"> </span> <span class="text-fg-3">kind</span> <span class="text-primary-text"> </span> <span class="text-fg-3">tenant</span> <span class="text-fg-1"> </span> <span class="text-fg-3">indexes</span> <span class="text-fg-1"> </span></div> <div class="grid gap-1"><div class="flex flex-wrap gap-1"><!> <!> <!> <!></div> <!></div></div>'),py=x('<div class="border-b border-line-1 bg-bg-1/30 px-3 py-2 text-[11px] font-mono"><!></div>'),hy=x('<div class="h-[320px] min-h-[240px] border-b border-line-1"><!></div>'),by=x('<div class="h-full flex flex-col"><div class="border-b border-line-1 bg-bg-1/35 px-3 py-2"><!></div> <!> <!> <div class="flex-1 min-h-0"><!></div></div>'),xy=x('<div class="h-full flex flex-col"><div class="border-b border-line-1 flex items-stretch min-h-[36px] bg-bg-0"><!> <!> <div><button type="button" class="px-2 inline-flex items-center text-fg-3 hover:text-fg-1" aria-label="Open tab menu"><!></button> <!></div></div> <div class="flex-1 overflow-hidden bg-bg-0"><!></div></div>');function my(t,e){nt(e,!0);const n=xa(),a=[{value:"",label:"Auto"},{value:"table",label:"Table"},{value:"graph",label:"Graph"},{value:"hypertable",label:"Chart"},{value:"kv",label:"KV"},{value:"vector",label:"Vector"},{value:"queue",label:"Queue"},{value:"stats",label:"Stats"},{value:"diff",label:"Diff"},{value:"document",label:"Document"},{value:"json",label:"JSON"}],o=Array.from({length:14},(D,z)=>z),i=Array.from({length:6},(D,z)=>z);let l=jt({}),d=jt({}),f=jt({}),v=jt({}),p=jt({}),b=jt({}),h=jt({}),w=me(jt({})),k=me(null),C=null,P=me(!1),$=me(!1);Lt(()=>{const D=Kt.activeId;D!==C&&(m(k,C,!0),C=D)});async function O(D,z){const[fe,Ce]=await Promise.all([St.track(`${z} · edges (LIMIT 50000)`,()=>D.query(`SELECT * FROM ${z} WHERE from_rid IS NOT NULL LIMIT 50000`)),St.track(`${z} · centrality (LIMIT 100)`,()=>D.query("GRAPH CENTRALITY LIMIT 100")).catch(()=>null)]),ke=new Map;Ce!=null&&Ce.ok&&Ce.result.records.forEach((we,Ie)=>{const Ee=we.values.node_id??we.values.rid??we.values.id,Me=we.values.score??we.values.centrality_score??we.values.centrality,Te=typeof Ee=="number"?Ee:typeof Ee=="string"?Number(Ee):NaN,Xe=typeof Me=="number"?Me:typeof Me=="string"?Number(Me):NaN;!Number.isFinite(Te)||!Number.isFinite(Xe)||ke.set(Te,{score:Xe,rank:Ie+1,label:typeof we.values.label=="string"?we.values.label:void 0})});const xe=new Set;for(const we of fe.result.records){const Ie=we.values.from_rid,Ee=we.values.to_rid;typeof Ie=="number"&&xe.add(Ie),typeof Ee=="number"&&xe.add(Ee)}for(const we of ke.keys())xe.add(we);const ge=[...xe],De=Math.ceil(ge.length/5),ce=[];for(let we=0;we<ge.length;we+=5)ce.push({idx:Math.floor(we/5)+1,ids:ge.slice(we,we+5).join(",")});const se=[];let ve=fe,Ae=0;async function Le(){for(;Ae<ce.length;){const we=ce[Ae++],Ie=await St.track(`${z} · nodes ${we.idx}/${De}`,()=>D.query(`SELECT * FROM ${z} WHERE rid IN (${we.ids})`));se.push(...Ie.result.records.map(Ee=>{const Me=Ee.values.rid,Te=typeof Me=="number"?ke.get(Me):void 0;return Te?{...Ee,values:{...Ee.values,centrality_score:Te.score,centrality_rank:Te.rank,centrality_label:Te.label}}:Ee})),ve=Ie}}return await Promise.all(Array.from({length:8},Le)),{...ve,record_count:se.length+fe.result.records.length,result:{...ve.result,records:[...se,...fe.result.records]}}}function Z(D){return`'${D.replace(/'/g,"''")}'`}async function Y(D,z){const B=await D.query(zb(z)),re=Tb(B.result.records[0]);if(!re)throw new Error(`${z} was not found in red.collections`);return re}async function T(D,z){var B;try{const de=(B=(await D.query(`SELECT model FROM red.collections WHERE name = ${Z(z)} LIMIT 1`)).result.records[0])==null?void 0:B.values.model;return typeof de=="string"?de:null}catch{return null}}async function q(D,z){const B=Bi(z),re=await T(D,z);if(re==="hll")return D.query(`HLL INFO ${B}`);if(re==="sketch")return D.query(`SKETCH INFO ${B}`);if(re==="filter")return D.query(`FILTER INFO ${B}`);if(re==="mixed")for(const de of[`HLL INFO ${B}`,`SKETCH INFO ${B}`,`FILTER INFO ${B}`])try{return await D.query(de)}catch{}try{return await D.query(`SELECT * FROM ${B} LIMIT 200`)}catch{for(const de of[`HLL INFO ${B}`,`SKETCH INFO ${B}`,`FILTER INFO ${B}`])try{return await D.query(de)}catch{}throw new Error(`No stats read form worked for ${z}`)}}async function ne(D,z){const B=Bi(z),re=await D.query(`SELECT * FROM ${B} LIMIT 200`);return{...re,capability:re.capability??"vector"}}Lt(()=>{if(xr.locked)return;const D=Be.client;if(D)for(const z of Kt.tabs){if(z.kind!=="collection")continue;const B=z.subpage??za(z.capability),re=B==="graph"||B==="svg",de=B==="queue"||z.capability==="queue",be=B==="vector"||z.capability==="vector",fe=B==="stats"||z.capability==="stats",Ce=B==="kv"||z.capability==="kv",ke=re?"graph-subgraph":de?"queue-peek":be?"vector-inspector":fe?"stats-info":Ce?"kv-list":z.capability??"unknown",xe=`${z.key}:${B}:${ke}`;if(f[z.id]&&f[z.id]!==xe&&(delete l[z.id],delete d[z.id]),l[z.id]!==void 0||d[z.id])continue;l[z.id]=null,f[z.id]=xe;const ge=z.key;(re?O(D,ge):de?St.track(`${ge} · QUEUE PEEK (LIMIT 200)`,()=>D.query(`QUEUE PEEK ${ge} 200`)):be?St.track(`${ge} · vector inspector seed`,()=>ne(D,ge)):fe?St.track(`${ge} · stats preview`,()=>q(D,ge)):Ce?St.track(`${ge} · LIST KV (LIMIT 200)`,()=>D.query(dl(ge,"kv"))):St.track(`${ge} · SELECT * (LIMIT 200)`,()=>D.query(dl(ge,z.capability)))).then(ce=>{l[z.id]=ce}).catch(ce=>{d[z.id]=ce.message})}}),Lt(()=>{if(xr.locked)return;const D=Be.client;if(D)for(const z of Kt.tabs)z.kind==="collection"&&(v[z.id]!==void 0||p[z.id]||(v[z.id]=null,St.track(`catalog · ${z.key}`,()=>Y(D,z.key)).then(B=>{v[z.id]=B}).catch(B=>{p[z.id]=B.message})))}),Lt(()=>{if(!r($)||xr.locked)return;const D=Be.client;if(D)for(const z of Kt.tabs)z.kind==="collection"&&(b[z.id]!==void 0||h[z.id]||(b[z.id]=null,St.track(`metadata · ${z.key}`,()=>D.collection(z.key)).then(B=>{b[z.id]=B}).catch(B=>{h[z.id]=B.message})))});function ie(D,z){D.stopPropagation();const B=Kt.tabs.find(de=>de.id===z);if((B==null?void 0:B.kind)==="query"&&Ur.isDirty(z)&&!(typeof window<"u"?window.confirm("Discard unsaved query in this tab?"):!0))return;const re=(B==null?void 0:B.kind)==="collection"&&B.key===n.collection;if(Kt.close(z,r(k)),Ur.remove(z),delete l[z],delete d[z],delete f[z],delete v[z],delete p[z],delete b[z],delete h[z],delete r(w)[z],re){const de=Kt.tabs.find(be=>be.kind==="collection");n.go(de?{view:"collection",collection:de.key,subpage:de.subpage??za(de.capability)}:{view:"collections"},void 0,!0)}}function J(){const D=Ur.nextLabel(),z=Kt.open({kind:"query",label:D,key:D},!0);Ur.ensure(z.id),m(P,!1)}vn(()=>{const D=()=>J();return window.addEventListener("red:new-query",D),()=>window.removeEventListener("red:new-query",D)});function ue(D,z){const B=wv(D.subpage,D.capability??z.capability);return en.pick(B,z,D.overrideCapability)}function U(){Kt.open({kind:"live-changes",label:"live · global",key:"global"}),m(P,!1)}function E(D,z){const B=z.currentTarget.value;Kt.setOverride(D.id,B===""?void 0:B)}function I(D,z){return D.subpage?D.subpage:D.capability?D.capability:z!=null&&z.capability?z.capability:"auto"}function _(D){return typeof D=="boolean"?{allowed:D}:{allowed:D.allowed,reason:D.reason}}function A(D){return D&&typeof D=="object"&&!Array.isArray(D)?Object.keys(D):[]}var R=xy(),te=c(R),F=c(te);{var X=D=>{var z=D0(),B=c(z);Va(B,{class:"size-3.5"}),Se(2),s(z),g(D,z)},ee=D=>{var z=H0();$e(z,21,()=>Kt.tabs,B=>B.id,(B,re)=>{const de=y(()=>r(re).id===Kt.activeId),be=y(()=>["group flex items-center gap-2 px-3 py-1.5 text-[12px] font-mono border-r border-line-1 whitespace-nowrap no-underline",r(de)?"bg-bg-1 text-fg-1 border-b-2 border-b-accent -mb-px":"text-fg-3 hover:text-fg-1 hover:bg-bg-1/40"].join(" "));var fe=_t(),Ce=ze(fe);{var ke=ge=>{const De=y(()=>({view:"collection",collection:r(re).key,subpage:r(re).subpage??za(r(re).capability)}));var ce=R0(),se=c(ce),ve=c(se,!0);s(se);var Ae=u(se,2),Le=c(Ae);Ar(Le,{class:"size-3"}),s(Ae),s(ce),N(we=>{Ne(ce,"href",we),Pe(ce,1,Ve(r(be))),Ne(ce,"title",r(re).label),S(ve,r(re).label)},[()=>n.href(r(De))]),_e("click",ce,we=>n.go(r(De),we)),_e("click",Ae,we=>ie(we,r(re).id)),_e("keydown",Ae,we=>{we.key==="Enter"&&ie(we,r(re).id)}),g(ge,ce)},xe=ge=>{var De=V0(),ce=c(De),se=c(ce,!0);s(ce);var ve=u(ce,2),Ae=c(ve);Ar(Ae,{class:"size-3"}),s(ve),s(De),N(()=>{Pe(De,1,Ve(r(be))),Ne(De,"title",r(re).label),S(se,r(re).label)}),_e("click",De,()=>Kt.focus(r(re).id)),_e("click",ve,Le=>ie(Le,r(re).id)),_e("keydown",ve,Le=>{Le.key==="Enter"&&ie(Le,r(re).id)}),g(ge,De)};V(Ce,ge=>{r(re).kind==="collection"?ge(ke):ge(xe,-1)})}g(B,fe)}),s(z),g(D,z)};V(F,D=>{Kt.tabs.length===0?D(X):D(ee,-1)})}var L=u(F,2);{var H=D=>{const z=y(()=>Kt.active),B=y(()=>l[r(z).id]);var re=j0(),de=c(re);{var be=ve=>{var Ae=q0(),Le=ze(Ae),we=c(Le);gi(we,{class:"size-3"}),Se(2),s(Le);var Ie=u(Le,2);{var Ee=Me=>{var Te=F0(),Xe=c(Te);P0(Xe,{class:"size-3"}),Se(2),s(Te),N(Fe=>{Ne(Te,"title",r(w)[r(z).id]?"Hide version history":"Show version history and diffs"),Ne(Te,"aria-pressed",r(w)[r(z).id]??!1),Pe(Te,1,Fe)},[()=>Ve(["inline-flex items-center gap-1 h-6 px-1.5 rounded border transition-colors cursor-pointer",r(w)[r(z).id]?"border-accent/40 bg-accent/10 text-primary-text":"border-line-1 text-fg-3 hover:text-fg-1 hover:border-line-2"].join(" "))]),_e("click",Te,()=>m(w,{...r(w),[r(z).id]:!(r(w)[r(z).id]??!1)},!0)),g(Me,Te)};V(Ie,Me=>{Be.capabilities.vcs&&Me(Ee)})}N(Me=>{Ne(Le,"title",r($)?"Hide collection metadata":"Show collection metadata"),Ne(Le,"aria-pressed",r($)),Pe(Le,1,Me)},[()=>Ve(["inline-flex items-center gap-1 h-6 px-1.5 rounded border transition-colors cursor-pointer",r($)?"border-accent/40 bg-accent/10 text-primary-text":"border-line-1 text-fg-3 hover:text-fg-1 hover:border-line-2"].join(" "))]),_e("click",Le,()=>m($,!r($))),g(ve,Ae)};V(de,ve=>{r(z).kind==="collection"&&ve(be)})}var fe=u(de,2),Ce=c(fe);{var ke=ve=>{ru(ve,{class:"size-3"})},xe=ve=>{eu(ve,{class:"size-3"})};V(Ce,ve=>{r(z).showSystemColumns?ve(ke):ve(xe,-1)})}Se(2),s(fe);var ge=u(fe,2),De=c(ge,!0);s(ge);var ce=u(ge,4);$e(ce,21,()=>a,ve=>ve.value,(ve,Ae)=>{var Le=K0(),we=c(Le,!0);s(Le);var Ie={};N(()=>{S(we,r(Ae).label),Ie!==(Ie=r(Ae).value)&&(Le.value=(Le.__value=r(Ae).value)??"")}),g(ve,Le)}),s(ce);var se;ea(ce),s(re),N((ve,Ae)=>{Ne(fe,"title",r(z).showSystemColumns?"Hide reddb system columns (rid, collection, kind, tenant, created_at, updated_at)":"Show reddb system columns"),Ne(fe,"aria-pressed",r(z).showSystemColumns??!1),Pe(fe,1,ve),S(De,Ae),se!==(se=r(z).overrideCapability??"")&&(ce.value=(ce.__value=r(z).overrideCapability??"")??"",ta(ce,r(z).overrideCapability??""))},[()=>Ve(["inline-flex items-center gap-1 h-6 px-1.5 rounded border transition-colors cursor-pointer",r(z).showSystemColumns?"border-accent/40 bg-accent/10 text-primary-text":"border-line-1 text-fg-3 hover:text-fg-1 hover:border-line-2"].join(" ")),()=>I(r(z),r(B))]),_e("click",fe,()=>Kt.setShowSystem(r(z).id,!r(z).showSystemColumns)),_e("change",ce,ve=>E(r(z),ve)),g(D,re)};V(L,D=>{Kt.active&&(Kt.active.kind==="collection"||Kt.active.kind==="query")&&D(H)})}var j=u(L,2),le=c(j),he=c(le);Ta(he,{class:"size-3.5"}),s(le);var oe=u(le,2);{var Q=D=>{var z=B0(),B=c(z),re=c(B);Xc(re,{class:"size-3.5 text-fg-3"}),Se(4),s(B);var de=u(B,2);s(z),_e("click",B,J),_e("click",de,U),g(D,z)};V(oe,D=>{r(P)&&D(Q)})}s(j),s(te);var W=u(te,2),G=c(W);{var M=D=>{var z=G0(),B=c(z);{var re=be=>{var fe=U0(),Ce=u(c(fe)),ke=c(Ce,!0);s(Ce),Se(3),s(fe),N(()=>S(ke,Be.active.url)),g(be,fe)},de=be=>{var fe=W0(),Ce=c(fe);Po(Ce,{class:"size-8 text-fg-3 mx-auto mb-3",strokeWidth:1.4}),Se(4),s(fe),g(be,fe)};V(B,be=>{Be.connected?be(re):be(de,-1)})}s(z),g(D,z)},K=D=>{const z=y(()=>Kt.active);var B=_t(),re=ze(B);{var de=ke=>{Qd(ke,{collection:void 0})},be=ke=>{A0(ke,{get tabId(){return r(z).id},get fallbackLabel(){return r(z).key}})},fe=ke=>{var xe=Y0();g(ke,xe)},Ce=ke=>{const xe=y(()=>l[r(z).id]),ge=y(()=>d[r(z).id]);var De=_t(),ce=ze(De);{var se=Le=>{var we=$0(),Ie=u(c(we),2),Ee=c(Ie,!0);s(Ie),s(we),N(()=>S(Ee,r(ge))),g(Le,we)},ve=Le=>{var we=J0(),Ie=u(c(we),4),Ee=c(Ie),Me=c(Ee),Te=u(c(Me),2);$e(Te,16,()=>i,Fe=>Fe,(Fe,Qe)=>{var lt=X0(),ct=c(lt);s(lt),N(()=>yr(ct,`width: ${Qe%3===0?72:Qe%3===1?104:56}px`)),g(Fe,lt)}),s(Me);var Xe=u(Me,2);$e(Xe,16,()=>o,Fe=>Fe,(Fe,Qe)=>{var lt=Q0(),ct=u(c(lt),2);$e(ct,16,()=>i,Ke=>Ke,(Ke,He)=>{var Ue=Z0(),ot=c(Ue);s(Ue),N(()=>yr(ot,`width: ${He===0?48:64+(Qe+He)%4*18}px`)),g(Ke,Ue)}),s(lt),g(Fe,lt)}),s(Ee),s(Ie),Se(2),s(we),N(()=>Ne(we,"aria-label",`Loading ${r(z).label} results`)),g(Le,we)},Ae=Le=>{const we=y(()=>ue(r(z),r(xe))),Ie=y(()=>r(we).component),Ee=y(()=>v[r(z).id]),Me=y(()=>p[r(z).id]);var Te=by(),Xe=c(Te),Fe=c(Xe);{var Qe=Ze=>{var We=ey(),ut=c(We);gi(ut,{class:"size-3.5 text-warn"});var Et=u(ut,4),Tt=c(Et,!0);s(Et),s(We),N(()=>S(Tt,r(Me))),g(Ze,We)},lt=Ze=>{var We=ty(),ut=c(We);Po(ut,{class:"size-3.5"}),Se(2),s(We),g(Ze,We)},ct=Ze=>{var We=ay(),ut=c(We),Et=c(ut),Tt=c(Et),Mt=c(Tt,!0);s(Tt);var Ct=u(Tt,2),xt=c(Ct,!0);s(Ct),s(Et);var mt=u(Et,2),wt=c(mt);$e(wt,17,()=>fl(r(Ee)),gr,(Ge,yt)=>{var ft=ry(),pt=c(ft,!0);s(ft),N(()=>S(pt,r(yt))),g(Ge,ft)});var Ot=u(wt,2);{var Zt=Ge=>{var yt=ny();g(Ge,yt)},pr=y(()=>fl(r(Ee)).length===0);V(Ot,Ge=>{r(pr)&&Ge(Zt)})}s(mt),s(ut);var hr=u(ut,2),it=c(hr),dt=c(it);Yi(dt,{class:"size-3.5 text-fg-3"});var It=u(dt,2),Bt=c(It,!0);s(It),Se(2),s(it);var or=u(it,2),ir=c(or);L0(ir,{class:"size-3.5 text-fg-3"});var sr=u(ir,2),wr=c(sr,!0);s(sr),Se(2),s(or);var lr=u(or,2),mr=c(lr);Va(mr,{class:"size-3.5 text-fg-3"});var Er=u(mr,2),Tr=c(Er,!0);s(Er),Se(2),s(lr);var kr=u(lr,2),Ir=c(kr);kv(Ir,{class:"size-3.5 text-fg-3"});var ye=u(Ir,2),Oe=c(ye,!0);s(ye),Se(2),s(kr);var qe=u(kr,2),Ye=c(qe);O0(Ye,{class:"size-3.5 text-fg-3"});var et=u(Ye,2),rt=c(et,!0);s(et),Se(2),s(qe),s(hr),s(We),N((Ge,yt,ft,pt,At)=>{S(Mt,r(Ee).model??"collection"),S(xt,r(Ee).name),S(Bt,Ge),S(wr,yt),S(Tr,ft),S(Oe,pt),S(rt,At)},[()=>zo(r(Ee).entities),()=>ul(r(Ee).onDiskBytes),()=>ul(r(Ee).inMemoryBytes),()=>zo(r(Ee).segments),()=>zo(r(Ee).indices)]),g(Ze,We)};V(Fe,Ze=>{r(Me)?Ze(Qe):r(Ee)?Ze(ct,-1):Ze(lt,1)})}s(Xe);var Ke=u(Xe,2);{var He=Ze=>{const We=y(()=>b[r(z).id]),ut=y(()=>h[r(z).id]);var Et=py(),Tt=c(Et);{var Mt=mt=>{var wt=oy(),Ot=c(wt);gi(Ot,{class:"mt-0.5 size-3.5 text-warn"});var Zt=u(Ot,2),pr=u(c(Zt),2),hr=c(pr,!0);s(pr),s(Zt),s(wt),N(()=>S(hr,r(ut))),g(mt,wt)},Ct=mt=>{var wt=iy();g(mt,wt)},xt=mt=>{var wt=gy(),Ot=c(wt),Zt=u(c(Ot),2),pr=c(Zt,!0);s(Zt);var hr=u(Zt,4),it=c(hr,!0);s(hr);var dt=u(hr,4),It=c(dt,!0);s(dt);var Bt=u(dt,4),or=c(Bt,!0);s(Bt),s(Ot);var ir=u(Ot,2),sr=c(ir),wr=c(sr);{var lr=Ge=>{var yt=sy(),ft=c(yt,!0);s(yt),N(()=>S(ft,r(We).capability)),g(Ge,yt)};V(wr,Ge=>{r(We).capability&&Ge(lr)})}var mr=u(wr,2);$e(mr,17,()=>r(We).capabilities??[],gr,(Ge,yt)=>{var ft=ly(),pt=c(ft,!0);s(ft),N(()=>S(pt,r(yt))),g(Ge,ft)});var Er=u(mr,2);{var Tr=Ge=>{var yt=cy(),ft=c(yt);s(yt),N(pt=>S(ft,`schema ${pt??""}`),[()=>A(r(We).schema).length]),g(Ge,yt)},kr=y(()=>A(r(We).schema).length>0);V(Er,Ge=>{r(kr)&&Ge(Tr)})}var Ir=u(Er,2);{var ye=Ge=>{var yt=dy();g(Ge,yt)},Oe=y(()=>A(r(We).retention).length>0);V(Ir,Ge=>{r(Oe)&&Ge(ye)})}s(sr);var qe=u(sr,2);{var Ye=Ge=>{var yt=fy();$e(yt,21,()=>Object.entries(r(We).actions),gr,(ft,pt)=>{var At=y(()=>Qr(r(pt),2));let Pt=()=>r(At)[0],er=()=>r(At)[1];const ur=y(()=>_(er()));var Vt=uy(),Dt=c(Vt);s(Vt),N(Gt=>{Pe(Vt,1,Gt),Ne(Vt,"title",r(ur).reason),S(Dt,`${Pt()??""}: ${r(ur).allowed?"allow":"deny"}`)},[()=>Ve(["rounded border px-1.5 py-0.5",r(ur).allowed?"border-ok/30 bg-ok/10 text-ok":"border-danger/30 bg-danger/10 text-danger"].join(" "))]),g(ft,Vt)}),s(yt),g(Ge,yt)},et=y(()=>r(We).actions&&A(r(We).actions).length>0),rt=Ge=>{var yt=vy();g(Ge,yt)};V(qe,Ge=>{r(et)?Ge(Ye):Ge(rt,-1)})}s(ir),s(wt),N(()=>{var Ge;S(pr,r(We).name??r(z).key),S(it,r(We).kind??r(We).capability??r(z).capability??"unknown"),S(It,r(We).tenant??"not exposed"),S(or,((Ge=r(We).indexes)==null?void 0:Ge.length)??0)}),g(mt,wt)};V(Tt,mt=>{r(ut)?mt(Mt):r(We)?mt(xt,-1):mt(Ct,1)})}s(Et),g(Ze,Et)};V(Ke,Ze=>{r($)&&Ze(He)})}var Ue=u(Ke,2);{var ot=Ze=>{var We=hy(),ut=c(We);{let Et=y(()=>Be.client??void 0);y0(ut,{get client(){return r(Et)},get collection(){return r(z).key}})}s(We),g(Ze,We)};V(Ue,Ze=>{r(w)[r(z).id]&&Ze(ot)})}var ae=u(Ue,2),tt=c(ae);{let Ze=y(()=>r(z).kind==="collection"?r(z).key:void 0),We=y(()=>Be.client??void 0),ut=y(()=>r(z).kind==="collection"?r(z).subpage:void 0),Et=y(()=>r(z).showSystemColumns??!1);ba(tt,()=>r(Ie),(Tt,Mt)=>{Mt(Tt,{get result(){return r(xe)},get collection(){return r(Ze)},get client(){return r(We)},get subpage(){return r(ut)},get showSystem(){return r(Et)}})})}s(ae),s(Te),g(Le,Te)};V(ce,Le=>{r(ge)?Le(se):r(xe)?Le(Ae,-1):Le(ve,1)})}g(ke,De)};V(re,ke=>{r(z).kind==="live-changes"?ke(de):r(z).kind==="query"?ke(be,1):r(z).kind==="welcome"?ke(fe,2):ke(Ce,-1)})}g(D,B)};V(G,D=>{Kt.active?D(K,-1):D(M)})}s(W),s(R),N(()=>Pe(j,1,`relative ${Kt.active&&(Kt.active.kind==="collection"||Kt.active.kind==="query")?"":"ml-auto"} flex items-stretch`)),_e("click",le,()=>m(P,!r(P))),g(t,R),at()}nr(["click","keydown","change"]);var _y=x('<div class="h-full grid grid-cols-[260px_1fr] bg-bg-0 text-fg-1"><aside class="row-start-1 col-start-1 border-r border-line-1 bg-bg-0 overflow-y-auto"><!></aside> <section class="row-start-1 col-start-2 bg-bg-0 overflow-hidden"><!></section></div>');function yy(t){var e=_y(),n=c(e),a=c(n);xb(a,{}),s(n);var o=u(n,2),i=c(o);my(i,{}),s(o),s(e),g(t,e)}var wy={value:()=>{}};function ei(){for(var t=0,e=arguments.length,n={},a;t<e;++t){if(!(a=arguments[t]+"")||a in n||/[\s.]/.test(a))throw new Error("illegal type: "+a);n[a]=[]}return new To(n)}function To(t){this._=t}function ky(t,e){return t.trim().split(/^|\s+/).map(function(n){var a="",o=n.indexOf(".");if(o>=0&&(a=n.slice(o+1),n=n.slice(0,o)),n&&!e.hasOwnProperty(n))throw new Error("unknown type: "+n);return{type:n,name:a}})}To.prototype=ei.prototype={constructor:To,on:function(t,e){var n=this._,a=ky(t+"",n),o,i=-1,l=a.length;if(arguments.length<2){for(;++i<l;)if((o=(t=a[i]).type)&&(o=Sy(n[o],t.name)))return o;return}if(e!=null&&typeof e!="function")throw new Error("invalid callback: "+e);for(;++i<l;)if(o=(t=a[i]).type)n[o]=Sl(n[o],t.name,e);else if(e==null)for(o in n)n[o]=Sl(n[o],t.name,null);return this},copy:function(){var t={},e=this._;for(var n in e)t[n]=e[n].slice();return new To(t)},call:function(t,e){if((o=arguments.length-2)>0)for(var n=new Array(o),a=0,o,i;a<o;++a)n[a]=arguments[a+2];if(!this._.hasOwnProperty(t))throw new Error("unknown type: "+t);for(i=this._[t],a=0,o=i.length;a<o;++a)i[a].value.apply(e,n)},apply:function(t,e,n){if(!this._.hasOwnProperty(t))throw new Error("unknown type: "+t);for(var a=this._[t],o=0,i=a.length;o<i;++o)a[o].value.apply(e,n)}};function Sy(t,e){for(var n=0,a=t.length,o;n<a;++n)if((o=t[n]).name===e)return o.value}function Sl(t,e,n){for(var a=0,o=t.length;a<o;++a)if(t[a].name===e){t[a]=wy,t=t.slice(0,a).concat(t.slice(a+1));break}return n!=null&&t.push({name:e,value:n}),t}var Qi="http://www.w3.org/1999/xhtml";const Cl={svg:"http://www.w3.org/2000/svg",xhtml:Qi,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function ti(t){var e=t+="",n=e.indexOf(":");return n>=0&&(e=t.slice(0,n))!=="xmlns"&&(t=t.slice(n+1)),Cl.hasOwnProperty(e)?{space:Cl[e],local:t}:t}function Cy(t){return function(){var e=this.ownerDocument,n=this.namespaceURI;return n===Qi&&e.documentElement.namespaceURI===Qi?e.createElement(t):e.createElementNS(n,t)}}function Ey(t){return function(){return this.ownerDocument.createElementNS(t.space,t.local)}}function iu(t){var e=ti(t);return(e.local?Ey:Cy)(e)}function My(){}function Ss(t){return t==null?My:function(){return this.querySelector(t)}}function zy(t){typeof t!="function"&&(t=Ss(t));for(var e=this._groups,n=e.length,a=new Array(n),o=0;o<n;++o)for(var i=e[o],l=i.length,d=a[o]=new Array(l),f,v,p=0;p<l;++p)(f=i[p])&&(v=t.call(f,f.__data__,p,i))&&("__data__"in f&&(v.__data__=f.__data__),d[p]=v);return new Yr(a,this._parents)}function Ny(t){return t==null?[]:Array.isArray(t)?t:Array.from(t)}function Ty(){return[]}function su(t){return t==null?Ty:function(){return this.querySelectorAll(t)}}function Iy(t){return function(){return Ny(t.apply(this,arguments))}}function Ay(t){typeof t=="function"?t=Iy(t):t=su(t);for(var e=this._groups,n=e.length,a=[],o=[],i=0;i<n;++i)for(var l=e[i],d=l.length,f,v=0;v<d;++v)(f=l[v])&&(a.push(t.call(f,f.__data__,v,l)),o.push(f));return new Yr(a,o)}function lu(t){return function(){return this.matches(t)}}function cu(t){return function(e){return e.matches(t)}}var Ly=Array.prototype.find;function Oy(t){return function(){return Ly.call(this.children,t)}}function Py(){return this.firstElementChild}function Dy(t){return this.select(t==null?Py:Oy(typeof t=="function"?t:cu(t)))}var Ry=Array.prototype.filter;function Vy(){return Array.from(this.children)}function Hy(t){return function(){return Ry.call(this.children,t)}}function Fy(t){return this.selectAll(t==null?Vy:Hy(typeof t=="function"?t:cu(t)))}function qy(t){typeof t!="function"&&(t=lu(t));for(var e=this._groups,n=e.length,a=new Array(n),o=0;o<n;++o)for(var i=e[o],l=i.length,d=a[o]=[],f,v=0;v<l;++v)(f=i[v])&&t.call(f,f.__data__,v,i)&&d.push(f);return new Yr(a,this._parents)}function du(t){return new Array(t.length)}function Ky(){return new Yr(this._enter||this._groups.map(du),this._parents)}function Do(t,e){this.ownerDocument=t.ownerDocument,this.namespaceURI=t.namespaceURI,this._next=null,this._parent=t,this.__data__=e}Do.prototype={constructor:Do,appendChild:function(t){return this._parent.insertBefore(t,this._next)},insertBefore:function(t,e){return this._parent.insertBefore(t,e)},querySelector:function(t){return this._parent.querySelector(t)},querySelectorAll:function(t){return this._parent.querySelectorAll(t)}};function jy(t){return function(){return t}}function By(t,e,n,a,o,i){for(var l=0,d,f=e.length,v=i.length;l<v;++l)(d=e[l])?(d.__data__=i[l],a[l]=d):n[l]=new Do(t,i[l]);for(;l<f;++l)(d=e[l])&&(o[l]=d)}function Uy(t,e,n,a,o,i,l){var d,f,v=new Map,p=e.length,b=i.length,h=new Array(p),w;for(d=0;d<p;++d)(f=e[d])&&(h[d]=w=l.call(f,f.__data__,d,e)+"",v.has(w)?o[d]=f:v.set(w,f));for(d=0;d<b;++d)w=l.call(t,i[d],d,i)+"",(f=v.get(w))?(a[d]=f,f.__data__=i[d],v.delete(w)):n[d]=new Do(t,i[d]);for(d=0;d<p;++d)(f=e[d])&&v.get(h[d])===f&&(o[d]=f)}function Wy(t){return t.__data__}function Gy(t,e){if(!arguments.length)return Array.from(this,Wy);var n=e?Uy:By,a=this._parents,o=this._groups;typeof t!="function"&&(t=jy(t));for(var i=o.length,l=new Array(i),d=new Array(i),f=new Array(i),v=0;v<i;++v){var p=a[v],b=o[v],h=b.length,w=Yy(t.call(p,p&&p.__data__,v,a)),k=w.length,C=d[v]=new Array(k),P=l[v]=new Array(k),$=f[v]=new Array(h);n(p,b,C,P,$,w,e);for(var O=0,Z=0,Y,T;O<k;++O)if(Y=C[O]){for(O>=Z&&(Z=O+1);!(T=P[Z])&&++Z<k;);Y._next=T||null}}return l=new Yr(l,a),l._enter=d,l._exit=f,l}function Yy(t){return typeof t=="object"&&"length"in t?t:Array.from(t)}function $y(){return new Yr(this._exit||this._groups.map(du),this._parents)}function Xy(t,e,n){var a=this.enter(),o=this,i=this.exit();return typeof t=="function"?(a=t(a),a&&(a=a.selection())):a=a.append(t+""),e!=null&&(o=e(o),o&&(o=o.selection())),n==null?i.remove():n(i),a&&o?a.merge(o).order():o}function Zy(t){for(var e=t.selection?t.selection():t,n=this._groups,a=e._groups,o=n.length,i=a.length,l=Math.min(o,i),d=new Array(o),f=0;f<l;++f)for(var v=n[f],p=a[f],b=v.length,h=d[f]=new Array(b),w,k=0;k<b;++k)(w=v[k]||p[k])&&(h[k]=w);for(;f<o;++f)d[f]=n[f];return new Yr(d,this._parents)}function Qy(){for(var t=this._groups,e=-1,n=t.length;++e<n;)for(var a=t[e],o=a.length-1,i=a[o],l;--o>=0;)(l=a[o])&&(i&&l.compareDocumentPosition(i)^4&&i.parentNode.insertBefore(l,i),i=l);return this}function Jy(t){t||(t=e2);function e(b,h){return b&&h?t(b.__data__,h.__data__):!b-!h}for(var n=this._groups,a=n.length,o=new Array(a),i=0;i<a;++i){for(var l=n[i],d=l.length,f=o[i]=new Array(d),v,p=0;p<d;++p)(v=l[p])&&(f[p]=v);f.sort(e)}return new Yr(o,this._parents).order()}function e2(t,e){return t<e?-1:t>e?1:t>=e?0:NaN}function t2(){var t=arguments[0];return arguments[0]=this,t.apply(null,arguments),this}function r2(){return Array.from(this)}function n2(){for(var t=this._groups,e=0,n=t.length;e<n;++e)for(var a=t[e],o=0,i=a.length;o<i;++o){var l=a[o];if(l)return l}return null}function a2(){let t=0;for(const e of this)++t;return t}function o2(){return!this.node()}function i2(t){for(var e=this._groups,n=0,a=e.length;n<a;++n)for(var o=e[n],i=0,l=o.length,d;i<l;++i)(d=o[i])&&t.call(d,d.__data__,i,o);return this}function s2(t){return function(){this.removeAttribute(t)}}function l2(t){return function(){this.removeAttributeNS(t.space,t.local)}}function c2(t,e){return function(){this.setAttribute(t,e)}}function d2(t,e){return function(){this.setAttributeNS(t.space,t.local,e)}}function u2(t,e){return function(){var n=e.apply(this,arguments);n==null?this.removeAttribute(t):this.setAttribute(t,n)}}function f2(t,e){return function(){var n=e.apply(this,arguments);n==null?this.removeAttributeNS(t.space,t.local):this.setAttributeNS(t.space,t.local,n)}}function v2(t,e){var n=ti(t);if(arguments.length<2){var a=this.node();return n.local?a.getAttributeNS(n.space,n.local):a.getAttribute(n)}return this.each((e==null?n.local?l2:s2:typeof e=="function"?n.local?f2:u2:n.local?d2:c2)(n,e))}function uu(t){return t.ownerDocument&&t.ownerDocument.defaultView||t.document&&t||t.defaultView}function g2(t){return function(){this.style.removeProperty(t)}}function p2(t,e,n){return function(){this.style.setProperty(t,e,n)}}function h2(t,e,n){return function(){var a=e.apply(this,arguments);a==null?this.style.removeProperty(t):this.style.setProperty(t,a,n)}}function b2(t,e,n){return arguments.length>1?this.each((e==null?g2:typeof e=="function"?h2:p2)(t,e,n??"")):da(this.node(),t)}function da(t,e){return t.style.getPropertyValue(e)||uu(t).getComputedStyle(t,null).getPropertyValue(e)}function x2(t){return function(){delete this[t]}}function m2(t,e){return function(){this[t]=e}}function _2(t,e){return function(){var n=e.apply(this,arguments);n==null?delete this[t]:this[t]=n}}function y2(t,e){return arguments.length>1?this.each((e==null?x2:typeof e=="function"?_2:m2)(t,e)):this.node()[t]}function fu(t){return t.trim().split(/^|\s+/)}function Cs(t){return t.classList||new vu(t)}function vu(t){this._node=t,this._names=fu(t.getAttribute("class")||"")}vu.prototype={add:function(t){var e=this._names.indexOf(t);e<0&&(this._names.push(t),this._node.setAttribute("class",this._names.join(" ")))},remove:function(t){var e=this._names.indexOf(t);e>=0&&(this._names.splice(e,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(t){return this._names.indexOf(t)>=0}};function gu(t,e){for(var n=Cs(t),a=-1,o=e.length;++a<o;)n.add(e[a])}function pu(t,e){for(var n=Cs(t),a=-1,o=e.length;++a<o;)n.remove(e[a])}function w2(t){return function(){gu(this,t)}}function k2(t){return function(){pu(this,t)}}function S2(t,e){return function(){(e.apply(this,arguments)?gu:pu)(this,t)}}function C2(t,e){var n=fu(t+"");if(arguments.length<2){for(var a=Cs(this.node()),o=-1,i=n.length;++o<i;)if(!a.contains(n[o]))return!1;return!0}return this.each((typeof e=="function"?S2:e?w2:k2)(n,e))}function E2(){this.textContent=""}function M2(t){return function(){this.textContent=t}}function z2(t){return function(){var e=t.apply(this,arguments);this.textContent=e??""}}function N2(t){return arguments.length?this.each(t==null?E2:(typeof t=="function"?z2:M2)(t)):this.node().textContent}function T2(){this.innerHTML=""}function I2(t){return function(){this.innerHTML=t}}function A2(t){return function(){var e=t.apply(this,arguments);this.innerHTML=e??""}}function L2(t){return arguments.length?this.each(t==null?T2:(typeof t=="function"?A2:I2)(t)):this.node().innerHTML}function O2(){this.nextSibling&&this.parentNode.appendChild(this)}function P2(){return this.each(O2)}function D2(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function R2(){return this.each(D2)}function V2(t){var e=typeof t=="function"?t:iu(t);return this.select(function(){return this.appendChild(e.apply(this,arguments))})}function H2(){return null}function F2(t,e){var n=typeof t=="function"?t:iu(t),a=e==null?H2:typeof e=="function"?e:Ss(e);return this.select(function(){return this.insertBefore(n.apply(this,arguments),a.apply(this,arguments)||null)})}function q2(){var t=this.parentNode;t&&t.removeChild(this)}function K2(){return this.each(q2)}function j2(){var t=this.cloneNode(!1),e=this.parentNode;return e?e.insertBefore(t,this.nextSibling):t}function B2(){var t=this.cloneNode(!0),e=this.parentNode;return e?e.insertBefore(t,this.nextSibling):t}function U2(t){return this.select(t?B2:j2)}function W2(t){return arguments.length?this.property("__data__",t):this.node().__data__}function G2(t){return function(e){t.call(this,e,this.__data__)}}function Y2(t){return t.trim().split(/^|\s+/).map(function(e){var n="",a=e.indexOf(".");return a>=0&&(n=e.slice(a+1),e=e.slice(0,a)),{type:e,name:n}})}function $2(t){return function(){var e=this.__on;if(e){for(var n=0,a=-1,o=e.length,i;n<o;++n)i=e[n],(!t.type||i.type===t.type)&&i.name===t.name?this.removeEventListener(i.type,i.listener,i.options):e[++a]=i;++a?e.length=a:delete this.__on}}}function X2(t,e,n){return function(){var a=this.__on,o,i=G2(e);if(a){for(var l=0,d=a.length;l<d;++l)if((o=a[l]).type===t.type&&o.name===t.name){this.removeEventListener(o.type,o.listener,o.options),this.addEventListener(o.type,o.listener=i,o.options=n),o.value=e;return}}this.addEventListener(t.type,i,n),o={type:t.type,name:t.name,value:e,listener:i,options:n},a?a.push(o):this.__on=[o]}}function Z2(t,e,n){var a=Y2(t+""),o,i=a.length,l;if(arguments.length<2){var d=this.node().__on;if(d){for(var f=0,v=d.length,p;f<v;++f)for(o=0,p=d[f];o<i;++o)if((l=a[o]).type===p.type&&l.name===p.name)return p.value}return}for(d=e?X2:$2,o=0;o<i;++o)this.each(d(a[o],e,n));return this}function hu(t,e,n){var a=uu(t),o=a.CustomEvent;typeof o=="function"?o=new o(e,n):(o=a.document.createEvent("Event"),n?(o.initEvent(e,n.bubbles,n.cancelable),o.detail=n.detail):o.initEvent(e,!1,!1)),t.dispatchEvent(o)}function Q2(t,e){return function(){return hu(this,t,e)}}function J2(t,e){return function(){return hu(this,t,e.apply(this,arguments))}}function ew(t,e){return this.each((typeof e=="function"?J2:Q2)(t,e))}function*tw(){for(var t=this._groups,e=0,n=t.length;e<n;++e)for(var a=t[e],o=0,i=a.length,l;o<i;++o)(l=a[o])&&(yield l)}var bu=[null];function Yr(t,e){this._groups=t,this._parents=e}function ao(){return new Yr([[document.documentElement]],bu)}function rw(){return this}Yr.prototype=ao.prototype={constructor:Yr,select:zy,selectAll:Ay,selectChild:Dy,selectChildren:Fy,filter:qy,data:Gy,enter:Ky,exit:$y,join:Xy,merge:Zy,selection:rw,order:Qy,sort:Jy,call:t2,nodes:r2,node:n2,size:a2,empty:o2,each:i2,attr:v2,style:b2,property:y2,classed:C2,text:N2,html:L2,raise:P2,lower:R2,append:V2,insert:F2,remove:K2,clone:U2,datum:W2,on:Z2,dispatch:ew,[Symbol.iterator]:tw};function nn(t){return typeof t=="string"?new Yr([[document.querySelector(t)]],[document.documentElement]):new Yr([[t]],bu)}function nw(t){let e;for(;e=t.sourceEvent;)t=e;return t}function un(t,e){if(t=nw(t),e===void 0&&(e=t.currentTarget),e){var n=e.ownerSVGElement||e;if(n.createSVGPoint){var a=n.createSVGPoint();return a.x=t.clientX,a.y=t.clientY,a=a.matrixTransform(e.getScreenCTM().inverse()),[a.x,a.y]}if(e.getBoundingClientRect){var o=e.getBoundingClientRect();return[t.clientX-o.left-e.clientLeft,t.clientY-o.top-e.clientTop]}}return[t.pageX,t.pageY]}const aw={passive:!1},Ha={capture:!0,passive:!1};function wi(t){t.stopImmediatePropagation()}function aa(t){t.preventDefault(),t.stopImmediatePropagation()}function xu(t){var e=t.document.documentElement,n=nn(t).on("dragstart.drag",aa,Ha);"onselectstart"in e?n.on("selectstart.drag",aa,Ha):(e.__noselect=e.style.MozUserSelect,e.style.MozUserSelect="none")}function mu(t,e){var n=t.document.documentElement,a=nn(t).on("dragstart.drag",null);e&&(a.on("click.drag",aa,Ha),setTimeout(function(){a.on("click.drag",null)},0)),"onselectstart"in n?a.on("selectstart.drag",null):(n.style.MozUserSelect=n.__noselect,delete n.__noselect)}const vo=t=>()=>t;function Ji(t,{sourceEvent:e,subject:n,target:a,identifier:o,active:i,x:l,y:d,dx:f,dy:v,dispatch:p}){Object.defineProperties(this,{type:{value:t,enumerable:!0,configurable:!0},sourceEvent:{value:e,enumerable:!0,configurable:!0},subject:{value:n,enumerable:!0,configurable:!0},target:{value:a,enumerable:!0,configurable:!0},identifier:{value:o,enumerable:!0,configurable:!0},active:{value:i,enumerable:!0,configurable:!0},x:{value:l,enumerable:!0,configurable:!0},y:{value:d,enumerable:!0,configurable:!0},dx:{value:f,enumerable:!0,configurable:!0},dy:{value:v,enumerable:!0,configurable:!0},_:{value:p}})}Ji.prototype.on=function(){var t=this._.on.apply(this._,arguments);return t===this._?this:t};function ow(t){return!t.ctrlKey&&!t.button}function iw(){return this.parentNode}function sw(t,e){return e??{x:t.x,y:t.y}}function lw(){return navigator.maxTouchPoints||"ontouchstart"in this}function cw(){var t=ow,e=iw,n=sw,a=lw,o={},i=ei("start","drag","end"),l=0,d,f,v,p,b=0;function h(Y){Y.on("mousedown.drag",w).filter(a).on("touchstart.drag",P).on("touchmove.drag",$,aw).on("touchend.drag touchcancel.drag",O).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function w(Y,T){if(!(p||!t.call(this,Y,T))){var q=Z(this,e.call(this,Y,T),Y,T,"mouse");q&&(nn(Y.view).on("mousemove.drag",k,Ha).on("mouseup.drag",C,Ha),xu(Y.view),wi(Y),v=!1,d=Y.clientX,f=Y.clientY,q("start",Y))}}function k(Y){if(aa(Y),!v){var T=Y.clientX-d,q=Y.clientY-f;v=T*T+q*q>b}o.mouse("drag",Y)}function C(Y){nn(Y.view).on("mousemove.drag mouseup.drag",null),mu(Y.view,v),aa(Y),o.mouse("end",Y)}function P(Y,T){if(t.call(this,Y,T)){var q=Y.changedTouches,ne=e.call(this,Y,T),ie=q.length,J,ue;for(J=0;J<ie;++J)(ue=Z(this,ne,Y,T,q[J].identifier,q[J]))&&(wi(Y),ue("start",Y,q[J]))}}function $(Y){var T=Y.changedTouches,q=T.length,ne,ie;for(ne=0;ne<q;++ne)(ie=o[T[ne].identifier])&&(aa(Y),ie("drag",Y,T[ne]))}function O(Y){var T=Y.changedTouches,q=T.length,ne,ie;for(p&&clearTimeout(p),p=setTimeout(function(){p=null},500),ne=0;ne<q;++ne)(ie=o[T[ne].identifier])&&(wi(Y),ie("end",Y,T[ne]))}function Z(Y,T,q,ne,ie,J){var ue=i.copy(),U=un(J||q,T),E,I,_;if((_=n.call(Y,new Ji("beforestart",{sourceEvent:q,target:h,identifier:ie,active:l,x:U[0],y:U[1],dx:0,dy:0,dispatch:ue}),ne))!=null)return E=_.x-U[0]||0,I=_.y-U[1]||0,function A(R,te,F){var X=U,ee;switch(R){case"start":o[ie]=A,ee=l++;break;case"end":delete o[ie],--l;case"drag":U=un(F||te,T),ee=l;break}ue.call(R,Y,new Ji(R,{sourceEvent:te,subject:_,target:h,identifier:ie,active:ee,x:U[0]+E,y:U[1]+I,dx:U[0]-X[0],dy:U[1]-X[1],dispatch:ue}),ne)}}return h.filter=function(Y){return arguments.length?(t=typeof Y=="function"?Y:vo(!!Y),h):t},h.container=function(Y){return arguments.length?(e=typeof Y=="function"?Y:vo(Y),h):e},h.subject=function(Y){return arguments.length?(n=typeof Y=="function"?Y:vo(Y),h):n},h.touchable=function(Y){return arguments.length?(a=typeof Y=="function"?Y:vo(!!Y),h):a},h.on=function(){var Y=i.on.apply(i,arguments);return Y===i?h:Y},h.clickDistance=function(Y){return arguments.length?(b=(Y=+Y)*Y,h):Math.sqrt(b)},h}function Es(t,e,n){t.prototype=e.prototype=n,n.constructor=t}function _u(t,e){var n=Object.create(t.prototype);for(var a in e)n[a]=e[a];return n}function oo(){}var Fa=.7,Ro=1/Fa,oa="\\s*([+-]?\\d+)\\s*",qa="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",gn="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",dw=/^#([0-9a-f]{3,8})$/,uw=new RegExp(`^rgb\\(${oa},${oa},${oa}\\)$`),fw=new RegExp(`^rgb\\(${gn},${gn},${gn}\\)$`),vw=new RegExp(`^rgba\\(${oa},${oa},${oa},${qa}\\)$`),gw=new RegExp(`^rgba\\(${gn},${gn},${gn},${qa}\\)$`),pw=new RegExp(`^hsl\\(${qa},${gn},${gn}\\)$`),hw=new RegExp(`^hsla\\(${qa},${gn},${gn},${qa}\\)$`),El={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};Es(oo,qn,{copy(t){return Object.assign(new this.constructor,this,t)},displayable(){return this.rgb().displayable()},hex:Ml,formatHex:Ml,formatHex8:bw,formatHsl:xw,formatRgb:zl,toString:zl});function Ml(){return this.rgb().formatHex()}function bw(){return this.rgb().formatHex8()}function xw(){return yu(this).formatHsl()}function zl(){return this.rgb().formatRgb()}function qn(t){var e,n;return t=(t+"").trim().toLowerCase(),(e=dw.exec(t))?(n=e[1].length,e=parseInt(e[1],16),n===6?Nl(e):n===3?new qr(e>>8&15|e>>4&240,e>>4&15|e&240,(e&15)<<4|e&15,1):n===8?go(e>>24&255,e>>16&255,e>>8&255,(e&255)/255):n===4?go(e>>12&15|e>>8&240,e>>8&15|e>>4&240,e>>4&15|e&240,((e&15)<<4|e&15)/255):null):(e=uw.exec(t))?new qr(e[1],e[2],e[3],1):(e=fw.exec(t))?new qr(e[1]*255/100,e[2]*255/100,e[3]*255/100,1):(e=vw.exec(t))?go(e[1],e[2],e[3],e[4]):(e=gw.exec(t))?go(e[1]*255/100,e[2]*255/100,e[3]*255/100,e[4]):(e=pw.exec(t))?Al(e[1],e[2]/100,e[3]/100,1):(e=hw.exec(t))?Al(e[1],e[2]/100,e[3]/100,e[4]):El.hasOwnProperty(t)?Nl(El[t]):t==="transparent"?new qr(NaN,NaN,NaN,0):null}function Nl(t){return new qr(t>>16&255,t>>8&255,t&255,1)}function go(t,e,n,a){return a<=0&&(t=e=n=NaN),new qr(t,e,n,a)}function mw(t){return t instanceof oo||(t=qn(t)),t?(t=t.rgb(),new qr(t.r,t.g,t.b,t.opacity)):new qr}function es(t,e,n,a){return arguments.length===1?mw(t):new qr(t,e,n,a??1)}function qr(t,e,n,a){this.r=+t,this.g=+e,this.b=+n,this.opacity=+a}Es(qr,es,_u(oo,{brighter(t){return t=t==null?Ro:Math.pow(Ro,t),new qr(this.r*t,this.g*t,this.b*t,this.opacity)},darker(t){return t=t==null?Fa:Math.pow(Fa,t),new qr(this.r*t,this.g*t,this.b*t,this.opacity)},rgb(){return this},clamp(){return new qr(Fn(this.r),Fn(this.g),Fn(this.b),Vo(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:Tl,formatHex:Tl,formatHex8:_w,formatRgb:Il,toString:Il}));function Tl(){return`#${Vn(this.r)}${Vn(this.g)}${Vn(this.b)}`}function _w(){return`#${Vn(this.r)}${Vn(this.g)}${Vn(this.b)}${Vn((isNaN(this.opacity)?1:this.opacity)*255)}`}function Il(){const t=Vo(this.opacity);return`${t===1?"rgb(":"rgba("}${Fn(this.r)}, ${Fn(this.g)}, ${Fn(this.b)}${t===1?")":`, ${t})`}`}function Vo(t){return isNaN(t)?1:Math.max(0,Math.min(1,t))}function Fn(t){return Math.max(0,Math.min(255,Math.round(t)||0))}function Vn(t){return t=Fn(t),(t<16?"0":"")+t.toString(16)}function Al(t,e,n,a){return a<=0?t=e=n=NaN:n<=0||n>=1?t=e=NaN:e<=0&&(t=NaN),new an(t,e,n,a)}function yu(t){if(t instanceof an)return new an(t.h,t.s,t.l,t.opacity);if(t instanceof oo||(t=qn(t)),!t)return new an;if(t instanceof an)return t;t=t.rgb();var e=t.r/255,n=t.g/255,a=t.b/255,o=Math.min(e,n,a),i=Math.max(e,n,a),l=NaN,d=i-o,f=(i+o)/2;return d?(e===i?l=(n-a)/d+(n<a)*6:n===i?l=(a-e)/d+2:l=(e-n)/d+4,d/=f<.5?i+o:2-i-o,l*=60):d=f>0&&f<1?0:l,new an(l,d,f,t.opacity)}function yw(t,e,n,a){return arguments.length===1?yu(t):new an(t,e,n,a??1)}function an(t,e,n,a){this.h=+t,this.s=+e,this.l=+n,this.opacity=+a}Es(an,yw,_u(oo,{brighter(t){return t=t==null?Ro:Math.pow(Ro,t),new an(this.h,this.s,this.l*t,this.opacity)},darker(t){return t=t==null?Fa:Math.pow(Fa,t),new an(this.h,this.s,this.l*t,this.opacity)},rgb(){var t=this.h%360+(this.h<0)*360,e=isNaN(t)||isNaN(this.s)?0:this.s,n=this.l,a=n+(n<.5?n:1-n)*e,o=2*n-a;return new qr(ki(t>=240?t-240:t+120,o,a),ki(t,o,a),ki(t<120?t+240:t-120,o,a),this.opacity)},clamp(){return new an(Ll(this.h),po(this.s),po(this.l),Vo(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const t=Vo(this.opacity);return`${t===1?"hsl(":"hsla("}${Ll(this.h)}, ${po(this.s)*100}%, ${po(this.l)*100}%${t===1?")":`, ${t})`}`}}));function Ll(t){return t=(t||0)%360,t<0?t+360:t}function po(t){return Math.max(0,Math.min(1,t||0))}function ki(t,e,n){return(t<60?e+(n-e)*t/60:t<180?n:t<240?e+(n-e)*(240-t)/60:e)*255}const Ms=t=>()=>t;function ww(t,e){return function(n){return t+n*e}}function kw(t,e,n){return t=Math.pow(t,n),e=Math.pow(e,n)-t,n=1/n,function(a){return Math.pow(t+a*e,n)}}function Sw(t){return(t=+t)==1?wu:function(e,n){return n-e?kw(e,n,t):Ms(isNaN(e)?n:e)}}function wu(t,e){var n=e-t;return n?ww(t,n):Ms(isNaN(t)?e:t)}const Ho=(function t(e){var n=Sw(e);function a(o,i){var l=n((o=es(o)).r,(i=es(i)).r),d=n(o.g,i.g),f=n(o.b,i.b),v=wu(o.opacity,i.opacity);return function(p){return o.r=l(p),o.g=d(p),o.b=f(p),o.opacity=v(p),o+""}}return a.gamma=t,a})(1);function Cw(t,e){e||(e=[]);var n=t?Math.min(e.length,t.length):0,a=e.slice(),o;return function(i){for(o=0;o<n;++o)a[o]=t[o]*(1-i)+e[o]*i;return a}}function Ew(t){return ArrayBuffer.isView(t)&&!(t instanceof DataView)}function Mw(t,e){var n=e?e.length:0,a=t?Math.min(n,t.length):0,o=new Array(a),i=new Array(n),l;for(l=0;l<a;++l)o[l]=Ia(t[l],e[l]);for(;l<n;++l)i[l]=e[l];return function(d){for(l=0;l<a;++l)i[l]=o[l](d);return i}}function zw(t,e){var n=new Date;return t=+t,e=+e,function(a){return n.setTime(t*(1-a)+e*a),n}}function fn(t,e){return t=+t,e=+e,function(n){return t*(1-n)+e*n}}function Nw(t,e){var n={},a={},o;(t===null||typeof t!="object")&&(t={}),(e===null||typeof e!="object")&&(e={});for(o in e)o in t?n[o]=Ia(t[o],e[o]):a[o]=e[o];return function(i){for(o in n)a[o]=n[o](i);return a}}var ts=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,Si=new RegExp(ts.source,"g");function Tw(t){return function(){return t}}function Iw(t){return function(e){return t(e)+""}}function ku(t,e){var n=ts.lastIndex=Si.lastIndex=0,a,o,i,l=-1,d=[],f=[];for(t=t+"",e=e+"";(a=ts.exec(t))&&(o=Si.exec(e));)(i=o.index)>n&&(i=e.slice(n,i),d[l]?d[l]+=i:d[++l]=i),(a=a[0])===(o=o[0])?d[l]?d[l]+=o:d[++l]=o:(d[++l]=null,f.push({i:l,x:fn(a,o)})),n=Si.lastIndex;return n<e.length&&(i=e.slice(n),d[l]?d[l]+=i:d[++l]=i),d.length<2?f[0]?Iw(f[0].x):Tw(e):(e=f.length,function(v){for(var p=0,b;p<e;++p)d[(b=f[p]).i]=b.x(v);return d.join("")})}function Ia(t,e){var n=typeof e,a;return e==null||n==="boolean"?Ms(e):(n==="number"?fn:n==="string"?(a=qn(e))?(e=a,Ho):ku:e instanceof qn?Ho:e instanceof Date?zw:Ew(e)?Cw:Array.isArray(e)?Mw:typeof e.valueOf!="function"&&typeof e.toString!="function"||isNaN(e)?Nw:fn)(t,e)}var Ol=180/Math.PI,rs={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function Su(t,e,n,a,o,i){var l,d,f;return(l=Math.sqrt(t*t+e*e))&&(t/=l,e/=l),(f=t*n+e*a)&&(n-=t*f,a-=e*f),(d=Math.sqrt(n*n+a*a))&&(n/=d,a/=d,f/=d),t*a<e*n&&(t=-t,e=-e,f=-f,l=-l),{translateX:o,translateY:i,rotate:Math.atan2(e,t)*Ol,skewX:Math.atan(f)*Ol,scaleX:l,scaleY:d}}var ho;function Aw(t){const e=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(t+"");return e.isIdentity?rs:Su(e.a,e.b,e.c,e.d,e.e,e.f)}function Lw(t){return t==null||(ho||(ho=document.createElementNS("http://www.w3.org/2000/svg","g")),ho.setAttribute("transform",t),!(t=ho.transform.baseVal.consolidate()))?rs:(t=t.matrix,Su(t.a,t.b,t.c,t.d,t.e,t.f))}function Cu(t,e,n,a){function o(v){return v.length?v.pop()+" ":""}function i(v,p,b,h,w,k){if(v!==b||p!==h){var C=w.push("translate(",null,e,null,n);k.push({i:C-4,x:fn(v,b)},{i:C-2,x:fn(p,h)})}else(b||h)&&w.push("translate("+b+e+h+n)}function l(v,p,b,h){v!==p?(v-p>180?p+=360:p-v>180&&(v+=360),h.push({i:b.push(o(b)+"rotate(",null,a)-2,x:fn(v,p)})):p&&b.push(o(b)+"rotate("+p+a)}function d(v,p,b,h){v!==p?h.push({i:b.push(o(b)+"skewX(",null,a)-2,x:fn(v,p)}):p&&b.push(o(b)+"skewX("+p+a)}function f(v,p,b,h,w,k){if(v!==b||p!==h){var C=w.push(o(w)+"scale(",null,",",null,")");k.push({i:C-4,x:fn(v,b)},{i:C-2,x:fn(p,h)})}else(b!==1||h!==1)&&w.push(o(w)+"scale("+b+","+h+")")}return function(v,p){var b=[],h=[];return v=t(v),p=t(p),i(v.translateX,v.translateY,p.translateX,p.translateY,b,h),l(v.rotate,p.rotate,b,h),d(v.skewX,p.skewX,b,h),f(v.scaleX,v.scaleY,p.scaleX,p.scaleY,b,h),v=p=null,function(w){for(var k=-1,C=h.length,P;++k<C;)b[(P=h[k]).i]=P.x(w);return b.join("")}}}var Ow=Cu(Aw,"px, ","px)","deg)"),Pw=Cu(Lw,", ",")",")"),Dw=1e-12;function Pl(t){return((t=Math.exp(t))+1/t)/2}function Rw(t){return((t=Math.exp(t))-1/t)/2}function Vw(t){return((t=Math.exp(2*t))-1)/(t+1)}const Io=(function t(e,n,a){function o(i,l){var d=i[0],f=i[1],v=i[2],p=l[0],b=l[1],h=l[2],w=p-d,k=b-f,C=w*w+k*k,P,$;if(C<Dw)$=Math.log(h/v)/e,P=function(ne){return[d+ne*w,f+ne*k,v*Math.exp(e*ne*$)]};else{var O=Math.sqrt(C),Z=(h*h-v*v+a*C)/(2*v*n*O),Y=(h*h-v*v-a*C)/(2*h*n*O),T=Math.log(Math.sqrt(Z*Z+1)-Z),q=Math.log(Math.sqrt(Y*Y+1)-Y);$=(q-T)/e,P=function(ne){var ie=ne*$,J=Pl(T),ue=v/(n*O)*(J*Vw(e*ie+T)-Rw(T));return[d+ue*w,f+ue*k,v*J/Pl(e*ie+T)]}}return P.duration=$*1e3*e/Math.SQRT2,P}return o.rho=function(i){var l=Math.max(.001,+i),d=l*l,f=d*d;return t(l,d,f)},o})(Math.SQRT2,2,4);var ua=0,Ca=0,ya=0,Eu=1e3,Fo,Ea,qo=0,Kn=0,ri=0,Ka=typeof performance=="object"&&performance.now?performance:Date,Mu=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(t){setTimeout(t,17)};function zs(){return Kn||(Mu(Hw),Kn=Ka.now()+ri)}function Hw(){Kn=0}function Ko(){this._call=this._time=this._next=null}Ko.prototype=zu.prototype={constructor:Ko,restart:function(t,e,n){if(typeof t!="function")throw new TypeError("callback is not a function");n=(n==null?zs():+n)+(e==null?0:+e),!this._next&&Ea!==this&&(Ea?Ea._next=this:Fo=this,Ea=this),this._call=t,this._time=n,ns()},stop:function(){this._call&&(this._call=null,this._time=1/0,ns())}};function zu(t,e,n){var a=new Ko;return a.restart(t,e,n),a}function Fw(){zs(),++ua;for(var t=Fo,e;t;)(e=Kn-t._time)>=0&&t._call.call(void 0,e),t=t._next;--ua}function Dl(){Kn=(qo=Ka.now())+ri,ua=Ca=0;try{Fw()}finally{ua=0,Kw(),Kn=0}}function qw(){var t=Ka.now(),e=t-qo;e>Eu&&(ri-=e,qo=t)}function Kw(){for(var t,e=Fo,n,a=1/0;e;)e._call?(a>e._time&&(a=e._time),t=e,e=e._next):(n=e._next,e._next=null,e=t?t._next=n:Fo=n);Ea=t,ns(a)}function ns(t){if(!ua){Ca&&(Ca=clearTimeout(Ca));var e=t-Kn;e>24?(t<1/0&&(Ca=setTimeout(Dl,t-Ka.now()-ri)),ya&&(ya=clearInterval(ya))):(ya||(qo=Ka.now(),ya=setInterval(qw,Eu)),ua=1,Mu(Dl))}}function Rl(t,e,n){var a=new Ko;return e=e==null?0:+e,a.restart(o=>{a.stop(),t(o+e)},e,n),a}var jw=ei("start","end","cancel","interrupt"),Bw=[],Nu=0,Vl=1,as=2,Ao=3,Hl=4,os=5,Lo=6;function ni(t,e,n,a,o,i){var l=t.__transition;if(!l)t.__transition={};else if(n in l)return;Uw(t,n,{name:e,index:a,group:o,on:jw,tween:Bw,time:i.time,delay:i.delay,duration:i.duration,ease:i.ease,timer:null,state:Nu})}function Ns(t,e){var n=dn(t,e);if(n.state>Nu)throw new Error("too late; already scheduled");return n}function hn(t,e){var n=dn(t,e);if(n.state>Ao)throw new Error("too late; already running");return n}function dn(t,e){var n=t.__transition;if(!n||!(n=n[e]))throw new Error("transition not found");return n}function Uw(t,e,n){var a=t.__transition,o;a[e]=n,n.timer=zu(i,0,n.time);function i(v){n.state=Vl,n.timer.restart(l,n.delay,n.time),n.delay<=v&&l(v-n.delay)}function l(v){var p,b,h,w;if(n.state!==Vl)return f();for(p in a)if(w=a[p],w.name===n.name){if(w.state===Ao)return Rl(l);w.state===Hl?(w.state=Lo,w.timer.stop(),w.on.call("interrupt",t,t.__data__,w.index,w.group),delete a[p]):+p<e&&(w.state=Lo,w.timer.stop(),w.on.call("cancel",t,t.__data__,w.index,w.group),delete a[p])}if(Rl(function(){n.state===Ao&&(n.state=Hl,n.timer.restart(d,n.delay,n.time),d(v))}),n.state=as,n.on.call("start",t,t.__data__,n.index,n.group),n.state===as){for(n.state=Ao,o=new Array(h=n.tween.length),p=0,b=-1;p<h;++p)(w=n.tween[p].value.call(t,t.__data__,n.index,n.group))&&(o[++b]=w);o.length=b+1}}function d(v){for(var p=v<n.duration?n.ease.call(null,v/n.duration):(n.timer.restart(f),n.state=os,1),b=-1,h=o.length;++b<h;)o[b].call(t,p);n.state===os&&(n.on.call("end",t,t.__data__,n.index,n.group),f())}function f(){n.state=Lo,n.timer.stop(),delete a[e];for(var v in a)return;delete t.__transition}}function Oo(t,e){var n=t.__transition,a,o,i=!0,l;if(n){e=e==null?null:e+"";for(l in n){if((a=n[l]).name!==e){i=!1;continue}o=a.state>as&&a.state<os,a.state=Lo,a.timer.stop(),a.on.call(o?"interrupt":"cancel",t,t.__data__,a.index,a.group),delete n[l]}i&&delete t.__transition}}function Ww(t){return this.each(function(){Oo(this,t)})}function Gw(t,e){var n,a;return function(){var o=hn(this,t),i=o.tween;if(i!==n){a=n=i;for(var l=0,d=a.length;l<d;++l)if(a[l].name===e){a=a.slice(),a.splice(l,1);break}}o.tween=a}}function Yw(t,e,n){var a,o;if(typeof n!="function")throw new Error;return function(){var i=hn(this,t),l=i.tween;if(l!==a){o=(a=l).slice();for(var d={name:e,value:n},f=0,v=o.length;f<v;++f)if(o[f].name===e){o[f]=d;break}f===v&&o.push(d)}i.tween=o}}function $w(t,e){var n=this._id;if(t+="",arguments.length<2){for(var a=dn(this.node(),n).tween,o=0,i=a.length,l;o<i;++o)if((l=a[o]).name===t)return l.value;return null}return this.each((e==null?Gw:Yw)(n,t,e))}function Ts(t,e,n){var a=t._id;return t.each(function(){var o=hn(this,a);(o.value||(o.value={}))[e]=n.apply(this,arguments)}),function(o){return dn(o,a).value[e]}}function Tu(t,e){var n;return(typeof e=="number"?fn:e instanceof qn?Ho:(n=qn(e))?(e=n,Ho):ku)(t,e)}function Xw(t){return function(){this.removeAttribute(t)}}function Zw(t){return function(){this.removeAttributeNS(t.space,t.local)}}function Qw(t,e,n){var a,o=n+"",i;return function(){var l=this.getAttribute(t);return l===o?null:l===a?i:i=e(a=l,n)}}function Jw(t,e,n){var a,o=n+"",i;return function(){var l=this.getAttributeNS(t.space,t.local);return l===o?null:l===a?i:i=e(a=l,n)}}function e3(t,e,n){var a,o,i;return function(){var l,d=n(this),f;return d==null?void this.removeAttribute(t):(l=this.getAttribute(t),f=d+"",l===f?null:l===a&&f===o?i:(o=f,i=e(a=l,d)))}}function t3(t,e,n){var a,o,i;return function(){var l,d=n(this),f;return d==null?void this.removeAttributeNS(t.space,t.local):(l=this.getAttributeNS(t.space,t.local),f=d+"",l===f?null:l===a&&f===o?i:(o=f,i=e(a=l,d)))}}function r3(t,e){var n=ti(t),a=n==="transform"?Pw:Tu;return this.attrTween(t,typeof e=="function"?(n.local?t3:e3)(n,a,Ts(this,"attr."+t,e)):e==null?(n.local?Zw:Xw)(n):(n.local?Jw:Qw)(n,a,e))}function n3(t,e){return function(n){this.setAttribute(t,e.call(this,n))}}function a3(t,e){return function(n){this.setAttributeNS(t.space,t.local,e.call(this,n))}}function o3(t,e){var n,a;function o(){var i=e.apply(this,arguments);return i!==a&&(n=(a=i)&&a3(t,i)),n}return o._value=e,o}function i3(t,e){var n,a;function o(){var i=e.apply(this,arguments);return i!==a&&(n=(a=i)&&n3(t,i)),n}return o._value=e,o}function s3(t,e){var n="attr."+t;if(arguments.length<2)return(n=this.tween(n))&&n._value;if(e==null)return this.tween(n,null);if(typeof e!="function")throw new Error;var a=ti(t);return this.tween(n,(a.local?o3:i3)(a,e))}function l3(t,e){return function(){Ns(this,t).delay=+e.apply(this,arguments)}}function c3(t,e){return e=+e,function(){Ns(this,t).delay=e}}function d3(t){var e=this._id;return arguments.length?this.each((typeof t=="function"?l3:c3)(e,t)):dn(this.node(),e).delay}function u3(t,e){return function(){hn(this,t).duration=+e.apply(this,arguments)}}function f3(t,e){return e=+e,function(){hn(this,t).duration=e}}function v3(t){var e=this._id;return arguments.length?this.each((typeof t=="function"?u3:f3)(e,t)):dn(this.node(),e).duration}function g3(t,e){if(typeof e!="function")throw new Error;return function(){hn(this,t).ease=e}}function p3(t){var e=this._id;return arguments.length?this.each(g3(e,t)):dn(this.node(),e).ease}function h3(t,e){return function(){var n=e.apply(this,arguments);if(typeof n!="function")throw new Error;hn(this,t).ease=n}}function b3(t){if(typeof t!="function")throw new Error;return this.each(h3(this._id,t))}function x3(t){typeof t!="function"&&(t=lu(t));for(var e=this._groups,n=e.length,a=new Array(n),o=0;o<n;++o)for(var i=e[o],l=i.length,d=a[o]=[],f,v=0;v<l;++v)(f=i[v])&&t.call(f,f.__data__,v,i)&&d.push(f);return new Cn(a,this._parents,this._name,this._id)}function m3(t){if(t._id!==this._id)throw new Error;for(var e=this._groups,n=t._groups,a=e.length,o=n.length,i=Math.min(a,o),l=new Array(a),d=0;d<i;++d)for(var f=e[d],v=n[d],p=f.length,b=l[d]=new Array(p),h,w=0;w<p;++w)(h=f[w]||v[w])&&(b[w]=h);for(;d<a;++d)l[d]=e[d];return new Cn(l,this._parents,this._name,this._id)}function _3(t){return(t+"").trim().split(/^|\s+/).every(function(e){var n=e.indexOf(".");return n>=0&&(e=e.slice(0,n)),!e||e==="start"})}function y3(t,e,n){var a,o,i=_3(e)?Ns:hn;return function(){var l=i(this,t),d=l.on;d!==a&&(o=(a=d).copy()).on(e,n),l.on=o}}function w3(t,e){var n=this._id;return arguments.length<2?dn(this.node(),n).on.on(t):this.each(y3(n,t,e))}function k3(t){return function(){var e=this.parentNode;for(var n in this.__transition)if(+n!==t)return;e&&e.removeChild(this)}}function S3(){return this.on("end.remove",k3(this._id))}function C3(t){var e=this._name,n=this._id;typeof t!="function"&&(t=Ss(t));for(var a=this._groups,o=a.length,i=new Array(o),l=0;l<o;++l)for(var d=a[l],f=d.length,v=i[l]=new Array(f),p,b,h=0;h<f;++h)(p=d[h])&&(b=t.call(p,p.__data__,h,d))&&("__data__"in p&&(b.__data__=p.__data__),v[h]=b,ni(v[h],e,n,h,v,dn(p,n)));return new Cn(i,this._parents,e,n)}function E3(t){var e=this._name,n=this._id;typeof t!="function"&&(t=su(t));for(var a=this._groups,o=a.length,i=[],l=[],d=0;d<o;++d)for(var f=a[d],v=f.length,p,b=0;b<v;++b)if(p=f[b]){for(var h=t.call(p,p.__data__,b,f),w,k=dn(p,n),C=0,P=h.length;C<P;++C)(w=h[C])&&ni(w,e,n,C,h,k);i.push(h),l.push(p)}return new Cn(i,l,e,n)}var M3=ao.prototype.constructor;function z3(){return new M3(this._groups,this._parents)}function N3(t,e){var n,a,o;return function(){var i=da(this,t),l=(this.style.removeProperty(t),da(this,t));return i===l?null:i===n&&l===a?o:o=e(n=i,a=l)}}function Iu(t){return function(){this.style.removeProperty(t)}}function T3(t,e,n){var a,o=n+"",i;return function(){var l=da(this,t);return l===o?null:l===a?i:i=e(a=l,n)}}function I3(t,e,n){var a,o,i;return function(){var l=da(this,t),d=n(this),f=d+"";return d==null&&(f=d=(this.style.removeProperty(t),da(this,t))),l===f?null:l===a&&f===o?i:(o=f,i=e(a=l,d))}}function A3(t,e){var n,a,o,i="style."+e,l="end."+i,d;return function(){var f=hn(this,t),v=f.on,p=f.value[i]==null?d||(d=Iu(e)):void 0;(v!==n||o!==p)&&(a=(n=v).copy()).on(l,o=p),f.on=a}}function L3(t,e,n){var a=(t+="")=="transform"?Ow:Tu;return e==null?this.styleTween(t,N3(t,a)).on("end.style."+t,Iu(t)):typeof e=="function"?this.styleTween(t,I3(t,a,Ts(this,"style."+t,e))).each(A3(this._id,t)):this.styleTween(t,T3(t,a,e),n).on("end.style."+t,null)}function O3(t,e,n){return function(a){this.style.setProperty(t,e.call(this,a),n)}}function P3(t,e,n){var a,o;function i(){var l=e.apply(this,arguments);return l!==o&&(a=(o=l)&&O3(t,l,n)),a}return i._value=e,i}function D3(t,e,n){var a="style."+(t+="");if(arguments.length<2)return(a=this.tween(a))&&a._value;if(e==null)return this.tween(a,null);if(typeof e!="function")throw new Error;return this.tween(a,P3(t,e,n??""))}function R3(t){return function(){this.textContent=t}}function V3(t){return function(){var e=t(this);this.textContent=e??""}}function H3(t){return this.tween("text",typeof t=="function"?V3(Ts(this,"text",t)):R3(t==null?"":t+""))}function F3(t){return function(e){this.textContent=t.call(this,e)}}function q3(t){var e,n;function a(){var o=t.apply(this,arguments);return o!==n&&(e=(n=o)&&F3(o)),e}return a._value=t,a}function K3(t){var e="text";if(arguments.length<1)return(e=this.tween(e))&&e._value;if(t==null)return this.tween(e,null);if(typeof t!="function")throw new Error;return this.tween(e,q3(t))}function j3(){for(var t=this._name,e=this._id,n=Au(),a=this._groups,o=a.length,i=0;i<o;++i)for(var l=a[i],d=l.length,f,v=0;v<d;++v)if(f=l[v]){var p=dn(f,e);ni(f,t,n,v,l,{time:p.time+p.delay+p.duration,delay:0,duration:p.duration,ease:p.ease})}return new Cn(a,this._parents,t,n)}function B3(){var t,e,n=this,a=n._id,o=n.size();return new Promise(function(i,l){var d={value:l},f={value:function(){--o===0&&i()}};n.each(function(){var v=hn(this,a),p=v.on;p!==t&&(e=(t=p).copy(),e._.cancel.push(d),e._.interrupt.push(d),e._.end.push(f)),v.on=e}),o===0&&i()})}var U3=0;function Cn(t,e,n,a){this._groups=t,this._parents=e,this._name=n,this._id=a}function Au(){return++U3}var bn=ao.prototype;Cn.prototype={constructor:Cn,select:C3,selectAll:E3,selectChild:bn.selectChild,selectChildren:bn.selectChildren,filter:x3,merge:m3,selection:z3,transition:j3,call:bn.call,nodes:bn.nodes,node:bn.node,size:bn.size,empty:bn.empty,each:bn.each,on:w3,attr:r3,attrTween:s3,style:L3,styleTween:D3,text:H3,textTween:K3,remove:S3,tween:$w,delay:d3,duration:v3,ease:p3,easeVarying:b3,end:B3,[Symbol.iterator]:bn[Symbol.iterator]};function W3(t){return((t*=2)<=1?t*t*t:(t-=2)*t*t+2)/2}var G3={time:null,delay:0,duration:250,ease:W3};function Y3(t,e){for(var n;!(n=t.__transition)||!(n=n[e]);)if(!(t=t.parentNode))throw new Error(`transition ${e} not found`);return n}function $3(t){var e,n;t instanceof Cn?(e=t._id,t=t._name):(e=Au(),(n=G3).time=zs(),t=t==null?null:t+"");for(var a=this._groups,o=a.length,i=0;i<o;++i)for(var l=a[i],d=l.length,f,v=0;v<d;++v)(f=l[v])&&ni(f,t,e,v,l,n||Y3(f,e));return new Cn(a,this._parents,t,e)}ao.prototype.interrupt=Ww;ao.prototype.transition=$3;const bo=t=>()=>t;function X3(t,{sourceEvent:e,target:n,transform:a,dispatch:o}){Object.defineProperties(this,{type:{value:t,enumerable:!0,configurable:!0},sourceEvent:{value:e,enumerable:!0,configurable:!0},target:{value:n,enumerable:!0,configurable:!0},transform:{value:a,enumerable:!0,configurable:!0},_:{value:o}})}function yn(t,e,n){this.k=t,this.x=e,this.y=n}yn.prototype={constructor:yn,scale:function(t){return t===1?this:new yn(this.k*t,this.x,this.y)},translate:function(t,e){return t===0&e===0?this:new yn(this.k,this.x+this.k*t,this.y+this.k*e)},apply:function(t){return[t[0]*this.k+this.x,t[1]*this.k+this.y]},applyX:function(t){return t*this.k+this.x},applyY:function(t){return t*this.k+this.y},invert:function(t){return[(t[0]-this.x)/this.k,(t[1]-this.y)/this.k]},invertX:function(t){return(t-this.x)/this.k},invertY:function(t){return(t-this.y)/this.k},rescaleX:function(t){return t.copy().domain(t.range().map(this.invertX,this).map(t.invert,t))},rescaleY:function(t){return t.copy().domain(t.range().map(this.invertY,this).map(t.invert,t))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}};var ai=new yn(1,0,0);Lu.prototype=yn.prototype;function Lu(t){for(;!t.__zoom;)if(!(t=t.parentNode))return ai;return t.__zoom}function Ci(t){t.stopImmediatePropagation()}function wa(t){t.preventDefault(),t.stopImmediatePropagation()}function Z3(t){return(!t.ctrlKey||t.type==="wheel")&&!t.button}function Q3(){var t=this;return t instanceof SVGElement?(t=t.ownerSVGElement||t,t.hasAttribute("viewBox")?(t=t.viewBox.baseVal,[[t.x,t.y],[t.x+t.width,t.y+t.height]]):[[0,0],[t.width.baseVal.value,t.height.baseVal.value]]):[[0,0],[t.clientWidth,t.clientHeight]]}function Fl(){return this.__zoom||ai}function J3(t){return-t.deltaY*(t.deltaMode===1?.05:t.deltaMode?1:.002)*(t.ctrlKey?10:1)}function ek(){return navigator.maxTouchPoints||"ontouchstart"in this}function tk(t,e,n){var a=t.invertX(e[0][0])-n[0][0],o=t.invertX(e[1][0])-n[1][0],i=t.invertY(e[0][1])-n[0][1],l=t.invertY(e[1][1])-n[1][1];return t.translate(o>a?(a+o)/2:Math.min(0,a)||Math.max(0,o),l>i?(i+l)/2:Math.min(0,i)||Math.max(0,l))}function rk(){var t=Z3,e=Q3,n=tk,a=J3,o=ek,i=[0,1/0],l=[[-1/0,-1/0],[1/0,1/0]],d=250,f=Io,v=ei("start","zoom","end"),p,b,h,w=500,k=150,C=0,P=10;function $(_){_.property("__zoom",Fl).on("wheel.zoom",ie,{passive:!1}).on("mousedown.zoom",J).on("dblclick.zoom",ue).filter(o).on("touchstart.zoom",U).on("touchmove.zoom",E).on("touchend.zoom touchcancel.zoom",I).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}$.transform=function(_,A,R,te){var F=_.selection?_.selection():_;F.property("__zoom",Fl),_!==F?T(_,A,R,te):F.interrupt().each(function(){q(this,arguments).event(te).start().zoom(null,typeof A=="function"?A.apply(this,arguments):A).end()})},$.scaleBy=function(_,A,R,te){$.scaleTo(_,function(){var F=this.__zoom.k,X=typeof A=="function"?A.apply(this,arguments):A;return F*X},R,te)},$.scaleTo=function(_,A,R,te){$.transform(_,function(){var F=e.apply(this,arguments),X=this.__zoom,ee=R==null?Y(F):typeof R=="function"?R.apply(this,arguments):R,L=X.invert(ee),H=typeof A=="function"?A.apply(this,arguments):A;return n(Z(O(X,H),ee,L),F,l)},R,te)},$.translateBy=function(_,A,R,te){$.transform(_,function(){return n(this.__zoom.translate(typeof A=="function"?A.apply(this,arguments):A,typeof R=="function"?R.apply(this,arguments):R),e.apply(this,arguments),l)},null,te)},$.translateTo=function(_,A,R,te,F){$.transform(_,function(){var X=e.apply(this,arguments),ee=this.__zoom,L=te==null?Y(X):typeof te=="function"?te.apply(this,arguments):te;return n(ai.translate(L[0],L[1]).scale(ee.k).translate(typeof A=="function"?-A.apply(this,arguments):-A,typeof R=="function"?-R.apply(this,arguments):-R),X,l)},te,F)};function O(_,A){return A=Math.max(i[0],Math.min(i[1],A)),A===_.k?_:new yn(A,_.x,_.y)}function Z(_,A,R){var te=A[0]-R[0]*_.k,F=A[1]-R[1]*_.k;return te===_.x&&F===_.y?_:new yn(_.k,te,F)}function Y(_){return[(+_[0][0]+ +_[1][0])/2,(+_[0][1]+ +_[1][1])/2]}function T(_,A,R,te){_.on("start.zoom",function(){q(this,arguments).event(te).start()}).on("interrupt.zoom end.zoom",function(){q(this,arguments).event(te).end()}).tween("zoom",function(){var F=this,X=arguments,ee=q(F,X).event(te),L=e.apply(F,X),H=R==null?Y(L):typeof R=="function"?R.apply(F,X):R,j=Math.max(L[1][0]-L[0][0],L[1][1]-L[0][1]),le=F.__zoom,he=typeof A=="function"?A.apply(F,X):A,oe=f(le.invert(H).concat(j/le.k),he.invert(H).concat(j/he.k));return function(Q){if(Q===1)Q=he;else{var W=oe(Q),G=j/W[2];Q=new yn(G,H[0]-W[0]*G,H[1]-W[1]*G)}ee.zoom(null,Q)}})}function q(_,A,R){return!R&&_.__zooming||new ne(_,A)}function ne(_,A){this.that=_,this.args=A,this.active=0,this.sourceEvent=null,this.extent=e.apply(_,A),this.taps=0}ne.prototype={event:function(_){return _&&(this.sourceEvent=_),this},start:function(){return++this.active===1&&(this.that.__zooming=this,this.emit("start")),this},zoom:function(_,A){return this.mouse&&_!=="mouse"&&(this.mouse[1]=A.invert(this.mouse[0])),this.touch0&&_!=="touch"&&(this.touch0[1]=A.invert(this.touch0[0])),this.touch1&&_!=="touch"&&(this.touch1[1]=A.invert(this.touch1[0])),this.that.__zoom=A,this.emit("zoom"),this},end:function(){return--this.active===0&&(delete this.that.__zooming,this.emit("end")),this},emit:function(_){var A=nn(this.that).datum();v.call(_,this.that,new X3(_,{sourceEvent:this.sourceEvent,target:$,transform:this.that.__zoom,dispatch:v}),A)}};function ie(_,...A){if(!t.apply(this,arguments))return;var R=q(this,A).event(_),te=this.__zoom,F=Math.max(i[0],Math.min(i[1],te.k*Math.pow(2,a.apply(this,arguments)))),X=un(_);if(R.wheel)(R.mouse[0][0]!==X[0]||R.mouse[0][1]!==X[1])&&(R.mouse[1]=te.invert(R.mouse[0]=X)),clearTimeout(R.wheel);else{if(te.k===F)return;R.mouse=[X,te.invert(X)],Oo(this),R.start()}wa(_),R.wheel=setTimeout(ee,k),R.zoom("mouse",n(Z(O(te,F),R.mouse[0],R.mouse[1]),R.extent,l));function ee(){R.wheel=null,R.end()}}function J(_,...A){if(h||!t.apply(this,arguments))return;var R=_.currentTarget,te=q(this,A,!0).event(_),F=nn(_.view).on("mousemove.zoom",H,!0).on("mouseup.zoom",j,!0),X=un(_,R),ee=_.clientX,L=_.clientY;xu(_.view),Ci(_),te.mouse=[X,this.__zoom.invert(X)],Oo(this),te.start();function H(le){if(wa(le),!te.moved){var he=le.clientX-ee,oe=le.clientY-L;te.moved=he*he+oe*oe>C}te.event(le).zoom("mouse",n(Z(te.that.__zoom,te.mouse[0]=un(le,R),te.mouse[1]),te.extent,l))}function j(le){F.on("mousemove.zoom mouseup.zoom",null),mu(le.view,te.moved),wa(le),te.event(le).end()}}function ue(_,...A){if(t.apply(this,arguments)){var R=this.__zoom,te=un(_.changedTouches?_.changedTouches[0]:_,this),F=R.invert(te),X=R.k*(_.shiftKey?.5:2),ee=n(Z(O(R,X),te,F),e.apply(this,A),l);wa(_),d>0?nn(this).transition().duration(d).call(T,ee,te,_):nn(this).call($.transform,ee,te,_)}}function U(_,...A){if(t.apply(this,arguments)){var R=_.touches,te=R.length,F=q(this,A,_.changedTouches.length===te).event(_),X,ee,L,H;for(Ci(_),ee=0;ee<te;++ee)L=R[ee],H=un(L,this),H=[H,this.__zoom.invert(H),L.identifier],F.touch0?!F.touch1&&F.touch0[2]!==H[2]&&(F.touch1=H,F.taps=0):(F.touch0=H,X=!0,F.taps=1+!!p);p&&(p=clearTimeout(p)),X&&(F.taps<2&&(b=H[0],p=setTimeout(function(){p=null},w)),Oo(this),F.start())}}function E(_,...A){if(this.__zooming){var R=q(this,A).event(_),te=_.changedTouches,F=te.length,X,ee,L,H;for(wa(_),X=0;X<F;++X)ee=te[X],L=un(ee,this),R.touch0&&R.touch0[2]===ee.identifier?R.touch0[0]=L:R.touch1&&R.touch1[2]===ee.identifier&&(R.touch1[0]=L);if(ee=R.that.__zoom,R.touch1){var j=R.touch0[0],le=R.touch0[1],he=R.touch1[0],oe=R.touch1[1],Q=(Q=he[0]-j[0])*Q+(Q=he[1]-j[1])*Q,W=(W=oe[0]-le[0])*W+(W=oe[1]-le[1])*W;ee=O(ee,Math.sqrt(Q/W)),L=[(j[0]+he[0])/2,(j[1]+he[1])/2],H=[(le[0]+oe[0])/2,(le[1]+oe[1])/2]}else if(R.touch0)L=R.touch0[0],H=R.touch0[1];else return;R.zoom("touch",n(Z(ee,L,H),R.extent,l))}}function I(_,...A){if(this.__zooming){var R=q(this,A).event(_),te=_.changedTouches,F=te.length,X,ee;for(Ci(_),h&&clearTimeout(h),h=setTimeout(function(){h=null},w),X=0;X<F;++X)ee=te[X],R.touch0&&R.touch0[2]===ee.identifier?delete R.touch0:R.touch1&&R.touch1[2]===ee.identifier&&delete R.touch1;if(R.touch1&&!R.touch0&&(R.touch0=R.touch1,delete R.touch1),R.touch0)R.touch0[1]=this.__zoom.invert(R.touch0[0]);else if(R.end(),R.taps===2&&(ee=un(ee,this),Math.hypot(b[0]-ee[0],b[1]-ee[1])<P)){var L=nn(this).on("dblclick.zoom");L&&L.apply(this,arguments)}}}return $.wheelDelta=function(_){return arguments.length?(a=typeof _=="function"?_:bo(+_),$):a},$.filter=function(_){return arguments.length?(t=typeof _=="function"?_:bo(!!_),$):t},$.touchable=function(_){return arguments.length?(o=typeof _=="function"?_:bo(!!_),$):o},$.extent=function(_){return arguments.length?(e=typeof _=="function"?_:bo([[+_[0][0],+_[0][1]],[+_[1][0],+_[1][1]]]),$):e},$.scaleExtent=function(_){return arguments.length?(i[0]=+_[0],i[1]=+_[1],$):[i[0],i[1]]},$.translateExtent=function(_){return arguments.length?(l[0][0]=+_[0][0],l[1][0]=+_[1][0],l[0][1]=+_[0][1],l[1][1]=+_[1][1],$):[[l[0][0],l[0][1]],[l[1][0],l[1][1]]]},$.constrain=function(_){return arguments.length?(n=_,$):n},$.duration=function(_){return arguments.length?(d=+_,$):d},$.interpolate=function(_){return arguments.length?(f=_,$):f},$.on=function(){var _=v.on.apply(v,arguments);return _===v?$:_},$.clickDistance=function(_){return arguments.length?(C=(_=+_)*_,$):Math.sqrt(C)},$.tapDistance=function(_){return arguments.length?(P=+_,$):P},$}const ja={error001:()=>"[React Flow]: Seems like you have not used zustand provider as an ancestor. Help: https://reactflow.dev/error#001",error002:()=>"It looks like you've created a new nodeTypes or edgeTypes object. If this wasn't on purpose please define the nodeTypes/edgeTypes outside of the component or memoize them.",error003:t=>`Node type "${t}" not found. Using fallback type "default".`,error004:()=>"The React Flow parent container needs a width and a height to render the graph.",error005:()=>"Only child nodes can use a parent extent.",error006:()=>"Can't create edge. An edge needs a source and a target.",error007:t=>`The old edge with id=${t} does not exist.`,error009:t=>`Marker type "${t}" doesn't exist.`,error008:(t,{id:e,sourceHandle:n,targetHandle:a})=>`Couldn't create edge for ${t} handle id: "${t==="source"?n:a}", edge id: ${e}.`,error010:()=>"Handle: No node id found. Make sure to only use a Handle inside a custom Node.",error011:t=>`Edge type "${t}" not found. Using fallback type "default".`,error012:t=>`Node with id "${t}" does not exist, it may have been removed. This can happen when a node is deleted before the "onNodeClick" handler is called.`,error013:(t="react")=>`It seems that you haven't loaded the styles. Please import '@xyflow/${t}/dist/style.css' or base.css to make sure everything is working properly.`,error014:()=>"useNodeConnections: No node ID found. Call useNodeConnections inside a custom Node or provide a node ID.",error015:()=>"It seems that you are trying to drag a node that is not initialized. Please use onNodesChange as explained in the docs."},is=[[Number.NEGATIVE_INFINITY,Number.NEGATIVE_INFINITY],[Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY]],Ou=["Enter"," ","Escape"],nk={"node.a11yDescription.default":"Press enter or space to select a node. Press delete to remove it and escape to cancel.","node.a11yDescription.keyboardDisabled":"Press enter or space to select a node. You can then use the arrow keys to move the node around. Press delete to remove it and escape to cancel.","node.a11yDescription.ariaLiveMessage":({direction:t,x:e,y:n})=>`Moved selected node ${t}. New position, x: ${e}, y: ${n}`,"edge.a11yDescription.default":"Press enter or space to select an edge. You can then press delete to remove it or escape to cancel.","controls.ariaLabel":"Control Panel","controls.zoomIn.ariaLabel":"Zoom In","controls.zoomOut.ariaLabel":"Zoom Out","controls.fitView.ariaLabel":"Fit View","controls.interactive.ariaLabel":"Toggle Interactivity","minimap.ariaLabel":"Mini Map","handle.ariaLabel":"Handle"};var fa;(function(t){t.Strict="strict",t.Loose="loose"})(fa||(fa={}));var ia;(function(t){t.Free="free",t.Vertical="vertical",t.Horizontal="horizontal"})(ia||(ia={}));var jo;(function(t){t.Partial="partial",t.Full="full"})(jo||(jo={}));const ss={inProgress:!1,isValid:null,from:null,fromHandle:null,fromPosition:null,fromNode:null,to:null,toHandle:null,toPosition:null,toNode:null,pointer:null};var Mn;(function(t){t.Bezier="default",t.Straight="straight",t.Step="step",t.SmoothStep="smoothstep",t.SimpleBezier="simplebezier"})(Mn||(Mn={}));var Bo;(function(t){t.Arrow="arrow",t.ArrowClosed="arrowclosed"})(Bo||(Bo={}));var Nt;(function(t){t.Left="left",t.Top="top",t.Right="right",t.Bottom="bottom"})(Nt||(Nt={}));const ql={[Nt.Left]:Nt.Right,[Nt.Right]:Nt.Left,[Nt.Top]:Nt.Bottom,[Nt.Bottom]:Nt.Top};function ak(t,e){if(!t&&!e)return!0;if(!t||!e||t.size!==e.size)return!1;if(!t.size&&!e.size)return!0;for(const n of t.keys())if(!e.has(n))return!1;return!0}function Kl(t,e,n){if(!n)return;const a=[];t.forEach((o,i)=>{e!=null&&e.has(i)||a.push(o)}),a.length&&n(a)}function ok(t){return t===null?null:t?"valid":"invalid"}const Pu=t=>"id"in t&&"source"in t&&"target"in t,ik=t=>"id"in t&&"position"in t&&!("source"in t)&&!("target"in t),Is=t=>"id"in t&&"internals"in t&&!("source"in t)&&!("target"in t),io=(t,e=[0,0])=>{const{width:n,height:a}=Wn(t),o=t.origin??e,i=n*o[0],l=a*o[1];return{x:t.position.x-i,y:t.position.y-l}},sk=(t,e={nodeOrigin:[0,0]})=>{if(t.length===0)return{x:0,y:0,width:0,height:0};const n=t.reduce((a,o)=>{const i=typeof o=="string";let l=!e.nodeLookup&&!i?o:void 0;e.nodeLookup&&(l=i?e.nodeLookup.get(o):Is(o)?o:e.nodeLookup.get(o.id));const d=l?Uo(l,e.nodeOrigin):{x:0,y:0,x2:0,y2:0};return ii(a,d)},{x:1/0,y:1/0,x2:-1/0,y2:-1/0});return si(n)},oi=(t,e={})=>{let n={x:1/0,y:1/0,x2:-1/0,y2:-1/0},a=!1;return t.forEach(o=>{(e.filter===void 0||e.filter(o))&&(n=ii(n,Uo(o)),a=!0)}),a?si(n):{x:0,y:0,width:0,height:0}},As=(t,e,[n,a,o]=[0,0,1],i=!1,l=!1)=>{const d={...lo(e,[n,a,o]),width:e.width/o,height:e.height/o},f=[];for(const v of t.values()){const{measured:p,selectable:b=!0,hidden:h=!1}=v;if(l&&!b||h)continue;const w=p.width??v.width??v.initialWidth??null,k=p.height??v.height??v.initialHeight??null,C=Ba(d,ga(v)),P=(w??0)*(k??0),$=i&&C>0;(!v.internals.handleBounds||$||C>=P||v.dragging)&&f.push(v)}return f},lk=(t,e)=>{const n=new Set;return t.forEach(a=>{n.add(a.id)}),e.filter(a=>n.has(a.source)||n.has(a.target))};function ck(t,e){const n=new Map,a=e!=null&&e.nodes?new Set(e.nodes.map(o=>o.id)):null;return t.forEach(o=>{o.measured.width&&o.measured.height&&((e==null?void 0:e.includeHiddenNodes)||!o.hidden)&&(!a||a.has(o.id))&&n.set(o.id,o)}),n}async function dk({nodes:t,width:e,height:n,panZoom:a,minZoom:o,maxZoom:i},l){if(t.size===0)return Promise.resolve(!0);const d=ck(t,l),f=oi(d),v=Ls(f,e,n,(l==null?void 0:l.minZoom)??o,(l==null?void 0:l.maxZoom)??i,(l==null?void 0:l.padding)??.1);return await a.setViewport(v,{duration:l==null?void 0:l.duration,ease:l==null?void 0:l.ease,interpolate:l==null?void 0:l.interpolate}),Promise.resolve(!0)}function Du({nodeId:t,nextPosition:e,nodeLookup:n,nodeOrigin:a=[0,0],nodeExtent:o,onError:i}){const l=n.get(t),d=l.parentId?n.get(l.parentId):void 0,{x:f,y:v}=d?d.internals.positionAbsolute:{x:0,y:0},p=l.origin??a;let b=l.extent||o;if(l.extent==="parent"&&!l.expandParent)if(!d)i==null||i("005",ja.error005());else{const w=d.measured.width,k=d.measured.height;w&&k&&(b=[[f,v],[f+w,v+k]])}else d&&pa(l.extent)&&(b=[[l.extent[0][0]+f,l.extent[0][1]+v],[l.extent[1][0]+f,l.extent[1][1]+v]]);const h=pa(b)?jn(e,b,l.measured):e;return(l.measured.width===void 0||l.measured.height===void 0)&&(i==null||i("015",ja.error015())),{position:{x:h.x-f+(l.measured.width??0)*p[0],y:h.y-v+(l.measured.height??0)*p[1]},positionAbsolute:h}}async function uk({nodesToRemove:t=[],edgesToRemove:e=[],nodes:n,edges:a,onBeforeDelete:o}){const i=new Set(t.map(h=>h.id)),l=[];for(const h of n){if(h.deletable===!1)continue;const w=i.has(h.id),k=!w&&h.parentId&&l.find(C=>C.id===h.parentId);(w||k)&&l.push(h)}const d=new Set(e.map(h=>h.id)),f=a.filter(h=>h.deletable!==!1),p=lk(l,f);for(const h of f)d.has(h.id)&&!p.find(k=>k.id===h.id)&&p.push(h);if(!o)return{edges:p,nodes:l};const b=await o({nodes:l,edges:p});return typeof b=="boolean"?b?{edges:p,nodes:l}:{edges:[],nodes:[]}:b}const va=(t,e=0,n=1)=>Math.min(Math.max(t,e),n),jn=(t={x:0,y:0},e,n)=>({x:va(t.x,e[0][0],e[1][0]-((n==null?void 0:n.width)??0)),y:va(t.y,e[0][1],e[1][1]-((n==null?void 0:n.height)??0))});function Ru(t,e,n){const{width:a,height:o}=Wn(n),{x:i,y:l}=n.internals.positionAbsolute;return jn(t,[[i,l],[i+a,l+o]],e)}const jl=(t,e,n)=>t<e?va(Math.abs(t-e),1,e)/e:t>n?-va(Math.abs(t-n),1,e)/e:0,Vu=(t,e,n=15,a=40)=>{const o=jl(t.x,a,e.width-a)*n,i=jl(t.y,a,e.height-a)*n;return[o,i]},ii=(t,e)=>({x:Math.min(t.x,e.x),y:Math.min(t.y,e.y),x2:Math.max(t.x2,e.x2),y2:Math.max(t.y2,e.y2)}),ls=({x:t,y:e,width:n,height:a})=>({x:t,y:e,x2:t+n,y2:e+a}),si=({x:t,y:e,x2:n,y2:a})=>({x:t,y:e,width:n-t,height:a-e}),ga=(t,e=[0,0])=>{var o,i;const{x:n,y:a}=Is(t)?t.internals.positionAbsolute:io(t,e);return{x:n,y:a,width:((o=t.measured)==null?void 0:o.width)??t.width??t.initialWidth??0,height:((i=t.measured)==null?void 0:i.height)??t.height??t.initialHeight??0}},Uo=(t,e=[0,0])=>{var o,i;const{x:n,y:a}=Is(t)?t.internals.positionAbsolute:io(t,e);return{x:n,y:a,x2:n+(((o=t.measured)==null?void 0:o.width)??t.width??t.initialWidth??0),y2:a+(((i=t.measured)==null?void 0:i.height)??t.height??t.initialHeight??0)}},fk=(t,e)=>si(ii(ls(t),ls(e))),Ba=(t,e)=>{const n=Math.max(0,Math.min(t.x+t.width,e.x+e.width)-Math.max(t.x,e.x)),a=Math.max(0,Math.min(t.y+t.height,e.y+e.height)-Math.max(t.y,e.y));return Math.ceil(n*a)},Bl=t=>wn(t.width)&&wn(t.height)&&wn(t.x)&&wn(t.y),wn=t=>!isNaN(t)&&isFinite(t),vk=(t,e)=>{},so=(t,e=[1,1])=>({x:e[0]*Math.round(t.x/e[0]),y:e[1]*Math.round(t.y/e[1])}),lo=({x:t,y:e},[n,a,o],i=!1,l=[1,1])=>{const d={x:(t-n)/o,y:(e-a)/o};return i?so(d,l):d},Wo=({x:t,y:e},[n,a,o])=>({x:t*o+n,y:e*o+a});function Qn(t,e){if(typeof t=="number")return Math.floor((e-e/(1+t))*.5);if(typeof t=="string"&&t.endsWith("px")){const n=parseFloat(t);if(!Number.isNaN(n))return Math.floor(n)}if(typeof t=="string"&&t.endsWith("%")){const n=parseFloat(t);if(!Number.isNaN(n))return Math.floor(e*n*.01)}return console.error(`[React Flow] The padding value "${t}" is invalid. Please provide a number or a string with a valid unit (px or %).`),0}function gk(t,e,n){if(typeof t=="string"||typeof t=="number"){const a=Qn(t,n),o=Qn(t,e);return{top:a,right:o,bottom:a,left:o,x:o*2,y:a*2}}if(typeof t=="object"){const a=Qn(t.top??t.y??0,n),o=Qn(t.bottom??t.y??0,n),i=Qn(t.left??t.x??0,e),l=Qn(t.right??t.x??0,e);return{top:a,right:l,bottom:o,left:i,x:i+l,y:a+o}}return{top:0,right:0,bottom:0,left:0,x:0,y:0}}function pk(t,e,n,a,o,i){const{x:l,y:d}=Wo(t,[e,n,a]),{x:f,y:v}=Wo({x:t.x+t.width,y:t.y+t.height},[e,n,a]),p=o-f,b=i-v;return{left:Math.floor(l),top:Math.floor(d),right:Math.floor(p),bottom:Math.floor(b)}}const Ls=(t,e,n,a,o,i)=>{const l=gk(i,e,n),d=(e-l.x)/t.width,f=(n-l.y)/t.height,v=Math.min(d,f),p=va(v,a,o),b=t.x+t.width/2,h=t.y+t.height/2,w=e/2-b*p,k=n/2-h*p,C=pk(t,w,k,p,e,n),P={left:Math.min(C.left-l.left,0),top:Math.min(C.top-l.top,0),right:Math.min(C.right-l.right,0),bottom:Math.min(C.bottom-l.bottom,0)};return{x:w-P.left+P.right,y:k-P.top+P.bottom,zoom:p}},Go=()=>{var t;return typeof navigator<"u"&&((t=navigator==null?void 0:navigator.userAgent)==null?void 0:t.indexOf("Mac"))>=0};function pa(t){return t!=null&&t!=="parent"}function Wn(t){var e,n;return{width:((e=t.measured)==null?void 0:e.width)??t.width??t.initialWidth??0,height:((n=t.measured)==null?void 0:n.height)??t.height??t.initialHeight??0}}function hk(t){var e,n;return(((e=t.measured)==null?void 0:e.width)??t.width??t.initialWidth)!==void 0&&(((n=t.measured)==null?void 0:n.height)??t.height??t.initialHeight)!==void 0}function bk(t,e={width:0,height:0},n,a,o){const i={...t},l=a.get(n);if(l){const d=l.origin||o;i.x+=l.internals.positionAbsolute.x-(e.width??0)*d[0],i.y+=l.internals.positionAbsolute.y-(e.height??0)*d[1]}return i}function xk(t){return{...nk,...t||{}}}function Ei(t,{snapGrid:e=[0,0],snapToGrid:n=!1,transform:a,containerBounds:o}){const{x:i,y:l}=sn(t),d=lo({x:i-((o==null?void 0:o.left)??0),y:l-((o==null?void 0:o.top)??0)},a),{x:f,y:v}=n?so(d,e):d;return{xSnapped:f,ySnapped:v,...d}}const Hu=t=>({width:t.offsetWidth,height:t.offsetHeight}),Fu=t=>{var e;return((e=t==null?void 0:t.getRootNode)==null?void 0:e.call(t))||(window==null?void 0:window.document)},mk=["INPUT","SELECT","TEXTAREA"];function qu(t){var a,o;const e=((o=(a=t.composedPath)==null?void 0:a.call(t))==null?void 0:o[0])||t.target;return(e==null?void 0:e.nodeType)!==1?!1:mk.includes(e.nodeName)||e.hasAttribute("contenteditable")||!!e.closest(".nokey")}const Ku=t=>"clientX"in t,sn=(t,e)=>{var i,l;const n=Ku(t),a=n?t.clientX:(i=t.touches)==null?void 0:i[0].clientX,o=n?t.clientY:(l=t.touches)==null?void 0:l[0].clientY;return{x:a-((e==null?void 0:e.left)??0),y:o-((e==null?void 0:e.top)??0)}},Ul=(t,e,n,a,o)=>{const i=e.querySelectorAll(`.${t}`);return!i||!i.length?null:Array.from(i).map(l=>{const d=l.getBoundingClientRect();return{id:l.getAttribute("data-handleid"),type:t,nodeId:o,position:l.getAttribute("data-handlepos"),x:(d.left-n.left)/a,y:(d.top-n.top)/a,...Hu(l)}})};function _k({sourceX:t,sourceY:e,targetX:n,targetY:a,sourceControlX:o,sourceControlY:i,targetControlX:l,targetControlY:d}){const f=t*.125+o*.375+l*.375+n*.125,v=e*.125+i*.375+d*.375+a*.125,p=Math.abs(f-t),b=Math.abs(v-e);return[f,v,p,b]}function xo(t,e){return t>=0?.5*t:e*25*Math.sqrt(-t)}function Wl({pos:t,x1:e,y1:n,x2:a,y2:o,c:i}){switch(t){case Nt.Left:return[e-xo(e-a,i),n];case Nt.Right:return[e+xo(a-e,i),n];case Nt.Top:return[e,n-xo(n-o,i)];case Nt.Bottom:return[e,n+xo(o-n,i)]}}function ju({sourceX:t,sourceY:e,sourcePosition:n=Nt.Bottom,targetX:a,targetY:o,targetPosition:i=Nt.Top,curvature:l=.25}){const[d,f]=Wl({pos:n,x1:t,y1:e,x2:a,y2:o,c:l}),[v,p]=Wl({pos:i,x1:a,y1:o,x2:t,y2:e,c:l}),[b,h,w,k]=_k({sourceX:t,sourceY:e,targetX:a,targetY:o,sourceControlX:d,sourceControlY:f,targetControlX:v,targetControlY:p});return[`M${t},${e} C${d},${f} ${v},${p} ${a},${o}`,b,h,w,k]}function Bu({sourceX:t,sourceY:e,targetX:n,targetY:a}){const o=Math.abs(n-t)/2,i=n<t?n+o:n-o,l=Math.abs(a-e)/2,d=a<e?a+l:a-l;return[i,d,o,l]}function yk({sourceNode:t,targetNode:e,selected:n=!1,zIndex:a=0,elevateOnSelect:o=!1,zIndexMode:i="basic"}){if(i==="manual")return a;const l=o&&n?a+1e3:a,d=Math.max(t.parentId||o&&t.selected?t.internals.z:0,e.parentId||o&&e.selected?e.internals.z:0);return l+d}function wk({sourceNode:t,targetNode:e,width:n,height:a,transform:o}){const i=ii(Uo(t),Uo(e));i.x===i.x2&&(i.x2+=1),i.y===i.y2&&(i.y2+=1);const l={x:-o[0]/o[2],y:-o[1]/o[2],width:n/o[2],height:a/o[2]};return Ba(l,si(i))>0}const kk=({source:t,sourceHandle:e,target:n,targetHandle:a})=>`xy-edge__${t}${e||""}-${n}${a||""}`,Sk=(t,e)=>e.some(n=>n.source===t.source&&n.target===t.target&&(n.sourceHandle===t.sourceHandle||!n.sourceHandle&&!t.sourceHandle)&&(n.targetHandle===t.targetHandle||!n.targetHandle&&!t.targetHandle)),Ck=(t,e,n={})=>{if(!t.source||!t.target)return e;const a=n.getEdgeId||kk;let o;return Pu(t)?o={...t}:o={...t,id:a(t)},Sk(o,e)?e:(o.sourceHandle===null&&delete o.sourceHandle,o.targetHandle===null&&delete o.targetHandle,e.concat(o))};function Uu({sourceX:t,sourceY:e,targetX:n,targetY:a}){const[o,i,l,d]=Bu({sourceX:t,sourceY:e,targetX:n,targetY:a});return[`M ${t},${e}L ${n},${a}`,o,i,l,d]}const Gl={[Nt.Left]:{x:-1,y:0},[Nt.Right]:{x:1,y:0},[Nt.Top]:{x:0,y:-1},[Nt.Bottom]:{x:0,y:1}},Ek=({source:t,sourcePosition:e=Nt.Bottom,target:n})=>e===Nt.Left||e===Nt.Right?t.x<n.x?{x:1,y:0}:{x:-1,y:0}:t.y<n.y?{x:0,y:1}:{x:0,y:-1},Yl=(t,e)=>Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2));function Mk({source:t,sourcePosition:e=Nt.Bottom,target:n,targetPosition:a=Nt.Top,center:o,offset:i,stepPosition:l}){const d=Gl[e],f=Gl[a],v={x:t.x+d.x*i,y:t.y+d.y*i},p={x:n.x+f.x*i,y:n.y+f.y*i},b=Ek({source:v,sourcePosition:e,target:p}),h=b.x!==0?"x":"y",w=b[h];let k=[],C,P;const $={x:0,y:0},O={x:0,y:0},[,,Z,Y]=Bu({sourceX:t.x,sourceY:t.y,targetX:n.x,targetY:n.y});if(d[h]*f[h]===-1){h==="x"?(C=o.x??v.x+(p.x-v.x)*l,P=o.y??(v.y+p.y)/2):(C=o.x??(v.x+p.x)/2,P=o.y??v.y+(p.y-v.y)*l);const ie=[{x:C,y:v.y},{x:C,y:p.y}],J=[{x:v.x,y:P},{x:p.x,y:P}];d[h]===w?k=h==="x"?ie:J:k=h==="x"?J:ie}else{const ie=[{x:v.x,y:p.y}],J=[{x:p.x,y:v.y}];if(h==="x"?k=d.x===w?J:ie:k=d.y===w?ie:J,e===a){const _=Math.abs(t[h]-n[h]);if(_<=i){const A=Math.min(i-1,i-_);d[h]===w?$[h]=(v[h]>t[h]?-1:1)*A:O[h]=(p[h]>n[h]?-1:1)*A}}if(e!==a){const _=h==="x"?"y":"x",A=d[h]===f[_],R=v[_]>p[_],te=v[_]<p[_];(d[h]===1&&(!A&&R||A&&te)||d[h]!==1&&(!A&&te||A&&R))&&(k=h==="x"?ie:J)}const ue={x:v.x+$.x,y:v.y+$.y},U={x:p.x+O.x,y:p.y+O.y},E=Math.max(Math.abs(ue.x-k[0].x),Math.abs(U.x-k[0].x)),I=Math.max(Math.abs(ue.y-k[0].y),Math.abs(U.y-k[0].y));E>=I?(C=(ue.x+U.x)/2,P=k[0].y):(C=k[0].x,P=(ue.y+U.y)/2)}const T={x:v.x+$.x,y:v.y+$.y},q={x:p.x+O.x,y:p.y+O.y};return[[t,...T.x!==k[0].x||T.y!==k[0].y?[T]:[],...k,...q.x!==k[k.length-1].x||q.y!==k[k.length-1].y?[q]:[],n],C,P,Z,Y]}function zk(t,e,n,a){const o=Math.min(Yl(t,e)/2,Yl(e,n)/2,a),{x:i,y:l}=e;if(t.x===i&&i===n.x||t.y===l&&l===n.y)return`L${i} ${l}`;if(t.y===l){const v=t.x<n.x?-1:1,p=t.y<n.y?1:-1;return`L ${i+o*v},${l}Q ${i},${l} ${i},${l+o*p}`}const d=t.x<n.x?1:-1,f=t.y<n.y?-1:1;return`L ${i},${l+o*f}Q ${i},${l} ${i+o*d},${l}`}function Os({sourceX:t,sourceY:e,sourcePosition:n=Nt.Bottom,targetX:a,targetY:o,targetPosition:i=Nt.Top,borderRadius:l=5,centerX:d,centerY:f,offset:v=20,stepPosition:p=.5}){const[b,h,w,k,C]=Mk({source:{x:t,y:e},sourcePosition:n,target:{x:a,y:o},targetPosition:i,center:{x:d,y:f},offset:v,stepPosition:p});let P=`M${b[0].x} ${b[0].y}`;for(let $=1;$<b.length-1;$++)P+=zk(b[$-1],b[$],b[$+1],l);return P+=`L${b[b.length-1].x} ${b[b.length-1].y}`,[P,h,w,k,C]}function $l(t){var e;return t&&!!(t.internals.handleBounds||(e=t.handles)!=null&&e.length)&&!!(t.measured.width||t.width||t.initialWidth)}function Nk(t){var b;const{sourceNode:e,targetNode:n}=t;if(!$l(e)||!$l(n))return null;const a=e.internals.handleBounds||Xl(e.handles),o=n.internals.handleBounds||Xl(n.handles),i=Zl((a==null?void 0:a.source)??[],t.sourceHandle),l=Zl(t.connectionMode===fa.Strict?(o==null?void 0:o.target)??[]:((o==null?void 0:o.target)??[]).concat((o==null?void 0:o.source)??[]),t.targetHandle);if(!i||!l)return(b=t.onError)==null||b.call(t,"008",ja.error008(i?"target":"source",{id:t.id,sourceHandle:t.sourceHandle,targetHandle:t.targetHandle})),null;const d=(i==null?void 0:i.position)||Nt.Bottom,f=(l==null?void 0:l.position)||Nt.Top,v=Bn(e,i,d),p=Bn(n,l,f);return{sourceX:v.x,sourceY:v.y,targetX:p.x,targetY:p.y,sourcePosition:d,targetPosition:f}}function Xl(t){if(!t)return null;const e=[],n=[];for(const a of t)a.width=a.width??1,a.height=a.height??1,a.type==="source"?e.push(a):a.type==="target"&&n.push(a);return{source:e,target:n}}function Bn(t,e,n=Nt.Left,a=!1){const o=((e==null?void 0:e.x)??0)+t.internals.positionAbsolute.x,i=((e==null?void 0:e.y)??0)+t.internals.positionAbsolute.y,{width:l,height:d}=e??Wn(t);if(a)return{x:o+l/2,y:i+d/2};switch((e==null?void 0:e.position)??n){case Nt.Top:return{x:o+l/2,y:i};case Nt.Right:return{x:o+l,y:i+d/2};case Nt.Bottom:return{x:o+l/2,y:i+d};case Nt.Left:return{x:o,y:i+d/2}}}function Zl(t,e){return t&&(e?t.find(n=>n.id===e):t[0])||null}function cs(t,e){return t?typeof t=="string"?t:`${e?`${e}__`:""}${Object.keys(t).sort().map(a=>`${a}=${t[a]}`).join("&")}`:""}function Tk(t,{id:e,defaultColor:n,defaultMarkerStart:a,defaultMarkerEnd:o}){const i=new Set;return t.reduce((l,d)=>([d.markerStart||a,d.markerEnd||o].forEach(f=>{if(f&&typeof f=="object"){const v=cs(f,e);i.has(v)||(l.push({id:v,color:f.color||n,...f}),i.add(v))}}),l),[]).sort((l,d)=>l.id.localeCompare(d.id))}const Wu=1e3,Ik=10,Ps={nodeOrigin:[0,0],nodeExtent:is,elevateNodesOnSelect:!0,zIndexMode:"basic",defaults:{}},Ak={...Ps,checkEquality:!0};function Ds(t,e){const n={...t};for(const a in e)e[a]!==void 0&&(n[a]=e[a]);return n}function Lk(t,e,n){const a=Ds(Ps,n);for(const o of t.values())if(o.parentId)Vs(o,t,e,a);else{const i=io(o,a.nodeOrigin),l=pa(o.extent)?o.extent:a.nodeExtent,d=jn(i,l,Wn(o));o.internals.positionAbsolute=d}}function Ok(t,e){if(!t.handles)return t.measured?e==null?void 0:e.internals.handleBounds:void 0;const n=[],a=[];for(const o of t.handles){const i={id:o.id,width:o.width??1,height:o.height??1,nodeId:t.id,x:o.x,y:o.y,position:o.position,type:o.type};o.type==="source"?n.push(i):o.type==="target"&&a.push(i)}return{source:n,target:a}}function Rs(t){return t==="manual"}function Pk(t,e,n,a={}){var p,b;const o=Ds(Ak,a),i={i:0},l=new Map(e),d=o!=null&&o.elevateNodesOnSelect&&!Rs(o.zIndexMode)?Wu:0;let f=t.length>0,v=!1;e.clear(),n.clear();for(const h of t){let w=l.get(h.id);if(o.checkEquality&&h===(w==null?void 0:w.internals.userNode))e.set(h.id,w);else{const k=io(h,o.nodeOrigin),C=pa(h.extent)?h.extent:o.nodeExtent,P=jn(k,C,Wn(h));w={...o.defaults,...h,measured:{width:(p=h.measured)==null?void 0:p.width,height:(b=h.measured)==null?void 0:b.height},internals:{positionAbsolute:P,handleBounds:Ok(h,w),z:Gu(h,d,o.zIndexMode),userNode:h}},e.set(h.id,w)}(w.measured===void 0||w.measured.width===void 0||w.measured.height===void 0)&&!w.hidden&&(f=!1),h.parentId&&Vs(w,e,n,a,i),v||(v=h.selected??!1)}return{nodesInitialized:f,hasSelectedNodes:v}}function Dk(t,e){if(!t.parentId)return;const n=e.get(t.parentId);n?n.set(t.id,t):e.set(t.parentId,new Map([[t.id,t]]))}function Vs(t,e,n,a,o){const{elevateNodesOnSelect:i,nodeOrigin:l,nodeExtent:d,zIndexMode:f}=Ds(Ps,a),v=t.parentId,p=e.get(v);if(!p){console.warn(`Parent node ${v} not found. Please make sure that parent nodes are in front of their child nodes in the nodes array.`);return}Dk(t,n),o&&!p.parentId&&p.internals.rootParentIndex===void 0&&f==="auto"&&(p.internals.rootParentIndex=++o.i,p.internals.z=p.internals.z+o.i*Ik),o&&p.internals.rootParentIndex!==void 0&&(o.i=p.internals.rootParentIndex);const b=i&&!Rs(f)?Wu:0,{x:h,y:w,z:k}=Rk(t,p,l,d,b,f),{positionAbsolute:C}=t.internals,P=h!==C.x||w!==C.y;(P||k!==t.internals.z)&&e.set(t.id,{...t,internals:{...t.internals,positionAbsolute:P?{x:h,y:w}:C,z:k}})}function Gu(t,e,n){const a=wn(t.zIndex)?t.zIndex:0;return Rs(n)?a:a+(t.selected?e:0)}function Rk(t,e,n,a,o,i){const{x:l,y:d}=e.internals.positionAbsolute,f=Wn(t),v=io(t,n),p=pa(t.extent)?jn(v,t.extent,f):v;let b=jn({x:l+p.x,y:d+p.y},a,f);t.extent==="parent"&&(b=Ru(b,f,e));const h=Gu(t,o,i),w=e.internals.z??0;return{x:b.x,y:b.y,z:w>=h?w+1:h}}function Vk(t,e,n,a=[0,0]){var l;const o=[],i=new Map;for(const d of t){const f=e.get(d.parentId);if(!f)continue;const v=((l=i.get(d.parentId))==null?void 0:l.expandedRect)??ga(f),p=fk(v,d.rect);i.set(d.parentId,{expandedRect:p,parent:f})}return i.size>0&&i.forEach(({expandedRect:d,parent:f},v)=>{var Z;const p=f.internals.positionAbsolute,b=Wn(f),h=f.origin??a,w=d.x<p.x?Math.round(Math.abs(p.x-d.x)):0,k=d.y<p.y?Math.round(Math.abs(p.y-d.y)):0,C=Math.max(b.width,Math.round(d.width)),P=Math.max(b.height,Math.round(d.height)),$=(C-b.width)*h[0],O=(P-b.height)*h[1];(w>0||k>0||$||O)&&(o.push({id:v,type:"position",position:{x:f.position.x-w+$,y:f.position.y-k+O}}),(Z=n.get(v))==null||Z.forEach(Y=>{t.some(T=>T.id===Y.id)||o.push({id:Y.id,type:"position",position:{x:Y.position.x+w,y:Y.position.y+k}})})),(b.width<d.width||b.height<d.height||w||k)&&o.push({id:v,type:"dimensions",setAttributes:!0,dimensions:{width:C+(w?h[0]*w-$:0),height:P+(k?h[1]*k-O:0)}})}),o}function Hk(t,e,n,a,o,i,l){const d=a==null?void 0:a.querySelector(".xyflow__viewport");let f=!1;if(!d)return{changes:[],updatedInternals:f};const v=[],p=window.getComputedStyle(d),{m22:b}=new window.DOMMatrixReadOnly(p.transform),h=[];for(const w of t.values()){const k=e.get(w.id);if(!k)continue;if(k.hidden){e.set(k.id,{...k,internals:{...k.internals,handleBounds:void 0}}),f=!0;continue}const C=Hu(w.nodeElement),P=k.measured.width!==C.width||k.measured.height!==C.height;if(!!(C.width&&C.height&&(P||!k.internals.handleBounds||w.force))){const O=w.nodeElement.getBoundingClientRect(),Z=pa(k.extent)?k.extent:i;let{positionAbsolute:Y}=k.internals;k.parentId&&k.extent==="parent"?Y=Ru(Y,C,e.get(k.parentId)):Z&&(Y=jn(Y,Z,C));const T={...k,measured:C,internals:{...k.internals,positionAbsolute:Y,handleBounds:{source:Ul("source",w.nodeElement,O,b,k.id),target:Ul("target",w.nodeElement,O,b,k.id)}}};e.set(k.id,T),k.parentId&&Vs(T,e,n,{nodeOrigin:o,zIndexMode:l}),f=!0,P&&(v.push({id:k.id,type:"dimensions",dimensions:C}),k.expandParent&&k.parentId&&h.push({id:k.id,parentId:k.parentId,rect:ga(T,o)}))}}if(h.length>0){const w=Vk(h,e,n,o);v.push(...w)}return{changes:v,updatedInternals:f}}async function Fk({delta:t,panZoom:e,transform:n,translateExtent:a,width:o,height:i}){if(!e||!t.x&&!t.y)return Promise.resolve(!1);const l=await e.setViewportConstrained({x:n[0]+t.x,y:n[1]+t.y,zoom:n[2]},[[0,0],[o,i]],a),d=!!l&&(l.x!==n[0]||l.y!==n[1]||l.k!==n[2]);return Promise.resolve(d)}function Ql(t,e,n,a,o,i){let l=o;const d=a.get(l)||new Map;a.set(l,d.set(n,e)),l=`${o}-${t}`;const f=a.get(l)||new Map;if(a.set(l,f.set(n,e)),i){l=`${o}-${t}-${i}`;const v=a.get(l)||new Map;a.set(l,v.set(n,e))}}function qk(t,e,n){t.clear(),e.clear();for(const a of n){const{source:o,target:i,sourceHandle:l=null,targetHandle:d=null}=a,f={edgeId:a.id,source:o,target:i,sourceHandle:l,targetHandle:d},v=`${o}-${l}--${i}-${d}`,p=`${i}-${d}--${o}-${l}`;Ql("source",f,p,t,o,l),Ql("target",f,v,t,i,d),e.set(a.id,a)}}function Yu(t,e){if(!t.parentId)return!1;const n=e.get(t.parentId);return n?n.selected?!0:Yu(n,e):!1}function Jl(t,e,n){var o;let a=t;do{if((o=a==null?void 0:a.matches)!=null&&o.call(a,e))return!0;if(a===n)return!1;a=a==null?void 0:a.parentElement}while(a);return!1}function Kk(t,e,n,a){const o=new Map;for(const[i,l]of t)if((l.selected||l.id===a)&&(!l.parentId||!Yu(l,t))&&(l.draggable||e&&typeof l.draggable>"u")){const d=t.get(i);d&&o.set(i,{id:i,position:d.position||{x:0,y:0},distance:{x:n.x-d.internals.positionAbsolute.x,y:n.y-d.internals.positionAbsolute.y},extent:d.extent,parentId:d.parentId,origin:d.origin,expandParent:d.expandParent,internals:{positionAbsolute:d.internals.positionAbsolute||{x:0,y:0}},measured:{width:d.measured.width??0,height:d.measured.height??0}})}return o}function Mi({nodeId:t,dragItems:e,nodeLookup:n,dragging:a=!0}){var l,d,f;const o=[];for(const[v,p]of e){const b=(l=n.get(v))==null?void 0:l.internals.userNode;b&&o.push({...b,position:p.position,dragging:a})}if(!t)return[o[0],o];const i=(d=n.get(t))==null?void 0:d.internals.userNode;return[i?{...i,position:((f=e.get(t))==null?void 0:f.position)||i.position,dragging:a}:o[0],o]}function jk({dragItems:t,snapGrid:e,x:n,y:a}){const o=t.values().next().value;if(!o)return null;const i={x:n-o.distance.x,y:a-o.distance.y},l=so(i,e);return{x:l.x-i.x,y:l.y-i.y}}function Bk({onNodeMouseDown:t,getStoreItems:e,onDragStart:n,onDrag:a,onDragStop:o}){let i={x:null,y:null},l=0,d=new Map,f=!1,v={x:0,y:0},p=null,b=!1,h=null,w=!1,k=!1,C=null;function P({noDragClassName:O,handleSelector:Z,domNode:Y,isSelectable:T,nodeId:q,nodeClickDistance:ne=0}){h=nn(Y);function ie({x:E,y:I}){const{nodeLookup:_,nodeExtent:A,snapGrid:R,snapToGrid:te,nodeOrigin:F,onNodeDrag:X,onSelectionDrag:ee,onError:L,updateNodePositions:H}=e();i={x:E,y:I};let j=!1;const le=d.size>1,he=le&&A?ls(oi(d)):null,oe=le&&te?jk({dragItems:d,snapGrid:R,x:E,y:I}):null;for(const[Q,W]of d){if(!_.has(Q))continue;let G={x:E-W.distance.x,y:I-W.distance.y};te&&(G=oe?{x:Math.round(G.x+oe.x),y:Math.round(G.y+oe.y)}:so(G,R));let M=null;if(le&&A&&!W.extent&&he){const{positionAbsolute:z}=W.internals,B=z.x-he.x+A[0][0],re=z.x+W.measured.width-he.x2+A[1][0],de=z.y-he.y+A[0][1],be=z.y+W.measured.height-he.y2+A[1][1];M=[[B,de],[re,be]]}const{position:K,positionAbsolute:D}=Du({nodeId:Q,nextPosition:G,nodeLookup:_,nodeExtent:M||A,nodeOrigin:F,onError:L});j=j||W.position.x!==K.x||W.position.y!==K.y,W.position=K,W.internals.positionAbsolute=D}if(k=k||j,!!j&&(H(d,!0),C&&(a||X||!q&&ee))){const[Q,W]=Mi({nodeId:q,dragItems:d,nodeLookup:_});a==null||a(C,d,Q,W),X==null||X(C,Q,W),q||ee==null||ee(C,W)}}async function J(){if(!p)return;const{transform:E,panBy:I,autoPanSpeed:_,autoPanOnNodeDrag:A}=e();if(!A){f=!1,cancelAnimationFrame(l);return}const[R,te]=Vu(v,p,_);(R!==0||te!==0)&&(i.x=(i.x??0)-R/E[2],i.y=(i.y??0)-te/E[2],await I({x:R,y:te})&&ie(i)),l=requestAnimationFrame(J)}function ue(E){var le;const{nodeLookup:I,multiSelectionActive:_,nodesDraggable:A,transform:R,snapGrid:te,snapToGrid:F,selectNodesOnDrag:X,onNodeDragStart:ee,onSelectionDragStart:L,unselectNodesAndEdges:H}=e();b=!0,(!X||!T)&&!_&&q&&((le=I.get(q))!=null&&le.selected||H()),T&&X&&q&&(t==null||t(q));const j=Ei(E.sourceEvent,{transform:R,snapGrid:te,snapToGrid:F,containerBounds:p});if(i=j,d=Kk(I,A,j,q),d.size>0&&(n||ee||!q&&L)){const[he,oe]=Mi({nodeId:q,dragItems:d,nodeLookup:I});n==null||n(E.sourceEvent,d,he,oe),ee==null||ee(E.sourceEvent,he,oe),q||L==null||L(E.sourceEvent,oe)}}const U=cw().clickDistance(ne).on("start",E=>{const{domNode:I,nodeDragThreshold:_,transform:A,snapGrid:R,snapToGrid:te}=e();p=(I==null?void 0:I.getBoundingClientRect())||null,w=!1,k=!1,C=E.sourceEvent,_===0&&ue(E),i=Ei(E.sourceEvent,{transform:A,snapGrid:R,snapToGrid:te,containerBounds:p}),v=sn(E.sourceEvent,p)}).on("drag",E=>{const{autoPanOnNodeDrag:I,transform:_,snapGrid:A,snapToGrid:R,nodeDragThreshold:te,nodeLookup:F}=e(),X=Ei(E.sourceEvent,{transform:_,snapGrid:A,snapToGrid:R,containerBounds:p});if(C=E.sourceEvent,(E.sourceEvent.type==="touchmove"&&E.sourceEvent.touches.length>1||q&&!F.has(q))&&(w=!0),!w){if(!f&&I&&b&&(f=!0,J()),!b){const ee=sn(E.sourceEvent,p),L=ee.x-v.x,H=ee.y-v.y;Math.sqrt(L*L+H*H)>te&&ue(E)}(i.x!==X.xSnapped||i.y!==X.ySnapped)&&d&&b&&(v=sn(E.sourceEvent,p),ie(X))}}).on("end",E=>{if(!(!b||w)&&(f=!1,b=!1,cancelAnimationFrame(l),d.size>0)){const{nodeLookup:I,updateNodePositions:_,onNodeDragStop:A,onSelectionDragStop:R}=e();if(k&&(_(d,!1),k=!1),o||A||!q&&R){const[te,F]=Mi({nodeId:q,dragItems:d,nodeLookup:I,dragging:!1});o==null||o(E.sourceEvent,d,te,F),A==null||A(E.sourceEvent,te,F),q||R==null||R(E.sourceEvent,F)}}}).filter(E=>{const I=E.target;return!E.button&&(!O||!Jl(I,`.${O}`,Y))&&(!Z||Jl(I,Z,Y))});h.call(U)}function $(){h==null||h.on(".drag",null)}return{update:P,destroy:$}}function Uk(t,e,n){const a=[],o={x:t.x-n,y:t.y-n,width:n*2,height:n*2};for(const i of e.values())Ba(o,ga(i))>0&&a.push(i);return a}const Wk=250;function Gk(t,e,n,a){var d,f;let o=[],i=1/0;const l=Uk(t,n,e+Wk);for(const v of l){const p=[...((d=v.internals.handleBounds)==null?void 0:d.source)??[],...((f=v.internals.handleBounds)==null?void 0:f.target)??[]];for(const b of p){if(a.nodeId===b.nodeId&&a.type===b.type&&a.id===b.id)continue;const{x:h,y:w}=Bn(v,b,b.position,!0),k=Math.sqrt(Math.pow(h-t.x,2)+Math.pow(w-t.y,2));k>e||(k<i?(o=[{...b,x:h,y:w}],i=k):k===i&&o.push({...b,x:h,y:w}))}}if(!o.length)return null;if(o.length>1){const v=a.type==="source"?"target":"source";return o.find(p=>p.type===v)??o[0]}return o[0]}function $u(t,e,n,a,o,i=!1){var v,p,b;const l=a.get(t);if(!l)return null;const d=o==="strict"?(v=l.internals.handleBounds)==null?void 0:v[e]:[...((p=l.internals.handleBounds)==null?void 0:p.source)??[],...((b=l.internals.handleBounds)==null?void 0:b.target)??[]],f=(n?d==null?void 0:d.find(h=>h.id===n):d==null?void 0:d[0])??null;return f&&i?{...f,...Bn(l,f,f.position,!0)}:f}function Xu(t,e){return t||(e!=null&&e.classList.contains("target")?"target":e!=null&&e.classList.contains("source")?"source":null)}function Yk(t,e){let n=null;return e?n=!0:t&&!e&&(n=!1),n}const Zu=()=>!0;function $k(t,{connectionMode:e,connectionRadius:n,handleId:a,nodeId:o,edgeUpdaterType:i,isTarget:l,domNode:d,nodeLookup:f,lib:v,autoPanOnConnect:p,flowId:b,panBy:h,cancelConnection:w,onConnectStart:k,onConnect:C,onConnectEnd:P,isValidConnection:$=Zu,onReconnectEnd:O,updateConnection:Z,getTransform:Y,getFromHandle:T,autoPanSpeed:q,dragThreshold:ne=1,handleDomNode:ie}){const J=Fu(t.target);let ue=0,U;const{x:E,y:I}=sn(t),_=Xu(i,ie),A=d==null?void 0:d.getBoundingClientRect();let R=!1;if(!A||!_)return;const te=$u(o,_,a,f,e);if(!te)return;let F=sn(t,A),X=!1,ee=null,L=!1,H=null;function j(){if(!p||!A)return;const[K,D]=Vu(F,A,q);h({x:K,y:D}),ue=requestAnimationFrame(j)}const le={...te,nodeId:o,type:_,position:te.position},he=f.get(o);let Q={inProgress:!0,isValid:null,from:Bn(he,le,Nt.Left,!0),fromHandle:le,fromPosition:le.position,fromNode:he,to:F,toHandle:null,toPosition:ql[le.position],toNode:null,pointer:F};function W(){R=!0,Z(Q),k==null||k(t,{nodeId:o,handleId:a,handleType:_})}ne===0&&W();function G(K){if(!R){const{x:be,y:fe}=sn(K),Ce=be-E,ke=fe-I;if(!(Ce*Ce+ke*ke>ne*ne))return;W()}if(!T()||!le){M(K);return}const D=Y();F=sn(K,A),U=Gk(lo(F,D,!1,[1,1]),n,f,le),X||(j(),X=!0);const z=Qu(K,{handle:U,connectionMode:e,fromNodeId:o,fromHandleId:a,fromType:l?"target":"source",isValidConnection:$,doc:J,lib:v,flowId:b,nodeLookup:f});H=z.handleDomNode,ee=z.connection,L=Yk(!!U,z.isValid);const B=f.get(o),re=B?Bn(B,le,Nt.Left,!0):Q.from,de={...Q,from:re,isValid:L,to:z.toHandle&&L?Wo({x:z.toHandle.x,y:z.toHandle.y},D):F,toHandle:z.toHandle,toPosition:L&&z.toHandle?z.toHandle.position:ql[le.position],toNode:z.toHandle?f.get(z.toHandle.nodeId):null,pointer:F};Z(de),Q=de}function M(K){if(!("touches"in K&&K.touches.length>0)){if(R){(U||H)&&ee&&L&&(C==null||C(ee));const{inProgress:D,...z}=Q,B={...z,toPosition:Q.toHandle?Q.toPosition:null};P==null||P(K,B),i&&(O==null||O(K,B))}w(),cancelAnimationFrame(ue),X=!1,L=!1,ee=null,H=null,J.removeEventListener("mousemove",G),J.removeEventListener("mouseup",M),J.removeEventListener("touchmove",G),J.removeEventListener("touchend",M)}}J.addEventListener("mousemove",G),J.addEventListener("mouseup",M),J.addEventListener("touchmove",G),J.addEventListener("touchend",M)}function Qu(t,{handle:e,connectionMode:n,fromNodeId:a,fromHandleId:o,fromType:i,doc:l,lib:d,flowId:f,isValidConnection:v=Zu,nodeLookup:p}){const b=i==="target",h=e?l.querySelector(`.${d}-flow__handle[data-id="${f}-${e==null?void 0:e.nodeId}-${e==null?void 0:e.id}-${e==null?void 0:e.type}"]`):null,{x:w,y:k}=sn(t),C=l.elementFromPoint(w,k),P=C!=null&&C.classList.contains(`${d}-flow__handle`)?C:h,$={handleDomNode:P,isValid:!1,connection:null,toHandle:null};if(P){const O=Xu(void 0,P),Z=P.getAttribute("data-nodeid"),Y=P.getAttribute("data-handleid"),T=P.classList.contains("connectable"),q=P.classList.contains("connectableend");if(!Z||!O)return $;const ne={source:b?Z:a,sourceHandle:b?Y:o,target:b?a:Z,targetHandle:b?o:Y};$.connection=ne;const J=T&&q&&(n===fa.Strict?b&&O==="source"||!b&&O==="target":Z!==a||Y!==o);$.isValid=J&&v(ne),$.toHandle=$u(Z,O,Y,p,n,!0)}return $}const ec={onPointerDown:$k,isValid:Qu},li=t=>({x:t.x,y:t.y,zoom:t.k}),zi=({x:t,y:e,zoom:n})=>ai.translate(t,e).scale(n),Jn=(t,e)=>t.target.closest(`.${e}`),Ju=(t,e)=>e===2&&Array.isArray(t)&&t.includes(2),Xk=t=>((t*=2)<=1?t*t*t:(t-=2)*t*t+2)/2,Ni=(t,e=0,n=Xk,a=()=>{})=>{const o=typeof e=="number"&&e>0;return o||a(),o?t.transition().duration(e).ease(n).on("end",a):t},ef=t=>{const e=t.ctrlKey&&Go()?10:1;return-t.deltaY*(t.deltaMode===1?.05:t.deltaMode?1:.002)*e};function Zk({zoomPanValues:t,noWheelClassName:e,d3Selection:n,d3Zoom:a,panOnScrollMode:o,panOnScrollSpeed:i,zoomOnPinch:l,onPanZoomStart:d,onPanZoom:f,onPanZoomEnd:v}){return p=>{if(Jn(p,e))return p.ctrlKey&&p.preventDefault(),!1;p.preventDefault(),p.stopImmediatePropagation();const b=n.property("__zoom").k||1;if(p.ctrlKey&&l){const P=un(p),$=ef(p),O=b*Math.pow(2,$);a.scaleTo(n,O,P,p);return}const h=p.deltaMode===1?20:1;let w=o===ia.Vertical?0:p.deltaX*h,k=o===ia.Horizontal?0:p.deltaY*h;!Go()&&p.shiftKey&&o!==ia.Vertical&&(w=p.deltaY*h,k=0),a.translateBy(n,-(w/b)*i,-(k/b)*i,{internal:!0});const C=li(n.property("__zoom"));clearTimeout(t.panScrollTimeout),t.isPanScrolling?(f==null||f(p,C),t.panScrollTimeout=setTimeout(()=>{v==null||v(p,C),t.isPanScrolling=!1},150)):(t.isPanScrolling=!0,d==null||d(p,C))}}function Qk({noWheelClassName:t,preventScrolling:e,d3ZoomHandler:n}){return function(a,o){const i=a.type==="wheel",l=!e&&i&&!a.ctrlKey,d=Jn(a,t);if(a.ctrlKey&&i&&d&&a.preventDefault(),l||d)return null;a.preventDefault(),n.call(this,a,o)}}function Jk({zoomPanValues:t,onDraggingChange:e,onPanZoomStart:n}){return a=>{var i,l,d;if((i=a.sourceEvent)!=null&&i.internal)return;const o=li(a.transform);t.mouseButton=((l=a.sourceEvent)==null?void 0:l.button)||0,t.isZoomingOrPanning=!0,t.prevViewport=o,((d=a.sourceEvent)==null?void 0:d.type)==="mousedown"&&e(!0),n&&(n==null||n(a.sourceEvent,o))}}function e5({zoomPanValues:t,panOnDrag:e,onPaneContextMenu:n,onTransformChange:a,onPanZoom:o}){return i=>{var l,d;t.usedRightMouseButton=!!(n&&Ju(e,t.mouseButton??0)),(l=i.sourceEvent)!=null&&l.sync||a([i.transform.x,i.transform.y,i.transform.k]),o&&!((d=i.sourceEvent)!=null&&d.internal)&&(o==null||o(i.sourceEvent,li(i.transform)))}}function t5({zoomPanValues:t,panOnDrag:e,panOnScroll:n,onDraggingChange:a,onPanZoomEnd:o,onPaneContextMenu:i}){return l=>{var d;if(!((d=l.sourceEvent)!=null&&d.internal)&&(t.isZoomingOrPanning=!1,i&&Ju(e,t.mouseButton??0)&&!t.usedRightMouseButton&&l.sourceEvent&&i(l.sourceEvent),t.usedRightMouseButton=!1,a(!1),o)){const f=li(l.transform);t.prevViewport=f,clearTimeout(t.timerId),t.timerId=setTimeout(()=>{o==null||o(l.sourceEvent,f)},n?150:0)}}}function r5({zoomActivationKeyPressed:t,zoomOnScroll:e,zoomOnPinch:n,panOnDrag:a,panOnScroll:o,zoomOnDoubleClick:i,userSelectionActive:l,noWheelClassName:d,noPanClassName:f,lib:v,connectionInProgress:p}){return b=>{var P;const h=t||e,w=n&&b.ctrlKey,k=b.type==="wheel";if(b.button===1&&b.type==="mousedown"&&(Jn(b,`${v}-flow__node`)||Jn(b,`${v}-flow__edge`)))return!0;if(!a&&!h&&!o&&!i&&!n||l||p&&!k||Jn(b,d)&&k||Jn(b,f)&&(!k||o&&k&&!t)||!n&&b.ctrlKey&&k)return!1;if(!n&&b.type==="touchstart"&&((P=b.touches)==null?void 0:P.length)>1)return b.preventDefault(),!1;if(!h&&!o&&!w&&k||!a&&(b.type==="mousedown"||b.type==="touchstart")||Array.isArray(a)&&!a.includes(b.button)&&b.type==="mousedown")return!1;const C=Array.isArray(a)&&a.includes(b.button)||!b.button||b.button<=1;return(!b.ctrlKey||k)&&C}}function n5({domNode:t,minZoom:e,maxZoom:n,translateExtent:a,viewport:o,onPanZoom:i,onPanZoomStart:l,onPanZoomEnd:d,onDraggingChange:f}){const v={isZoomingOrPanning:!1,usedRightMouseButton:!1,prevViewport:{},mouseButton:0,timerId:void 0,panScrollTimeout:void 0,isPanScrolling:!1},p=t.getBoundingClientRect(),b=rk().scaleExtent([e,n]).translateExtent(a),h=nn(t).call(b);O({x:o.x,y:o.y,zoom:va(o.zoom,e,n)},[[0,0],[p.width,p.height]],a);const w=h.on("wheel.zoom"),k=h.on("dblclick.zoom");b.wheelDelta(ef);function C(U,E){return h?new Promise(I=>{b==null||b.interpolate((E==null?void 0:E.interpolate)==="linear"?Ia:Io).transform(Ni(h,E==null?void 0:E.duration,E==null?void 0:E.ease,()=>I(!0)),U)}):Promise.resolve(!1)}function P({noWheelClassName:U,noPanClassName:E,onPaneContextMenu:I,userSelectionActive:_,panOnScroll:A,panOnDrag:R,panOnScrollMode:te,panOnScrollSpeed:F,preventScrolling:X,zoomOnPinch:ee,zoomOnScroll:L,zoomOnDoubleClick:H,zoomActivationKeyPressed:j,lib:le,onTransformChange:he,connectionInProgress:oe,paneClickDistance:Q,selectionOnDrag:W}){_&&!v.isZoomingOrPanning&&$();const G=A&&!j&&!_;b.clickDistance(W?1/0:!wn(Q)||Q<0?0:Q);const M=G?Zk({zoomPanValues:v,noWheelClassName:U,d3Selection:h,d3Zoom:b,panOnScrollMode:te,panOnScrollSpeed:F,zoomOnPinch:ee,onPanZoomStart:l,onPanZoom:i,onPanZoomEnd:d}):Qk({noWheelClassName:U,preventScrolling:X,d3ZoomHandler:w});if(h.on("wheel.zoom",M,{passive:!1}),!_){const D=Jk({zoomPanValues:v,onDraggingChange:f,onPanZoomStart:l});b.on("start",D);const z=e5({zoomPanValues:v,panOnDrag:R,onPaneContextMenu:!!I,onPanZoom:i,onTransformChange:he});b.on("zoom",z);const B=t5({zoomPanValues:v,panOnDrag:R,panOnScroll:A,onPaneContextMenu:I,onPanZoomEnd:d,onDraggingChange:f});b.on("end",B)}const K=r5({zoomActivationKeyPressed:j,panOnDrag:R,zoomOnScroll:L,panOnScroll:A,zoomOnDoubleClick:H,zoomOnPinch:ee,userSelectionActive:_,noPanClassName:E,noWheelClassName:U,lib:le,connectionInProgress:oe});b.filter(K),H?h.on("dblclick.zoom",k):h.on("dblclick.zoom",null)}function $(){b.on("zoom",null)}async function O(U,E,I){const _=zi(U),A=b==null?void 0:b.constrain()(_,E,I);return A&&await C(A),new Promise(R=>R(A))}async function Z(U,E){const I=zi(U);return await C(I,E),new Promise(_=>_(I))}function Y(U){if(h){const E=zi(U),I=h.property("__zoom");(I.k!==U.zoom||I.x!==U.x||I.y!==U.y)&&(b==null||b.transform(h,E,null,{sync:!0}))}}function T(){const U=h?Lu(h.node()):{x:0,y:0,k:1};return{x:U.x,y:U.y,zoom:U.k}}function q(U,E){return h?new Promise(I=>{b==null||b.interpolate((E==null?void 0:E.interpolate)==="linear"?Ia:Io).scaleTo(Ni(h,E==null?void 0:E.duration,E==null?void 0:E.ease,()=>I(!0)),U)}):Promise.resolve(!1)}function ne(U,E){return h?new Promise(I=>{b==null||b.interpolate((E==null?void 0:E.interpolate)==="linear"?Ia:Io).scaleBy(Ni(h,E==null?void 0:E.duration,E==null?void 0:E.ease,()=>I(!0)),U)}):Promise.resolve(!1)}function ie(U){b==null||b.scaleExtent(U)}function J(U){b==null||b.translateExtent(U)}function ue(U){const E=!wn(U)||U<0?0:U;b==null||b.clickDistance(E)}return{update:P,destroy:$,setViewport:Z,setViewportConstrained:O,getViewport:T,scaleTo:q,scaleBy:ne,setScaleExtent:ie,setTranslateExtent:J,syncViewport:Y,setClickDistance:ue}}var tc;(function(t){t.Line="line",t.Handle="handle"})(tc||(tc={}));function Hs(){const t={};return[e=>{if(e&&!ov(t))throw new Error(e);return Qo(t)},e=>hs(t,e)]}const[a5,o5]=Hs(),[i5,s5]=Hs(),[l5,c5]=Hs();var d5=x("<div><!></div>");function ha(t,e){nt(e,!0);let n=Re(e,"id",3,null),a=Re(e,"type",3,"source"),o=Re(e,"position",19,()=>Nt.Top),i=Re(e,"isConnectableStart",3,!0),l=Re(e,"isConnectableEnd",3,!0),d=Je(e,["$$slots","$$events","$$legacy","id","type","position","style","class","isConnectable","isConnectableStart","isConnectableEnd","isValidConnection","onconnect","ondisconnect","children"]);const f=a5("Handle must be used within a Custom Node component"),v=i5("Handle must be used within a Custom Node component");let p=y(()=>a()==="target"),b=y(()=>e.isConnectable!==void 0?e.isConnectable:v.value),h=Gn(),w=y(()=>h.ariaLabelConfig),k=null;Sc(()=>{if(e.onconnect||e.ondisconnect){h.edges;let E=h.connectionLookup.get(`${f}-${a()}${n()?`-${n()}`:""}`);if(k&&!ak(E,k)){const I=E??new Map;Kl(k,I,e.ondisconnect),Kl(I,k,e.onconnect)}k=new Map(E)}});let C=y(()=>{if(!h.connection.inProgress)return[!1,!1,!1,!1,null];const{fromHandle:E,toHandle:I,isValid:_}=h.connection,A=E&&E.nodeId===f&&E.type===a()&&E.id===n(),R=I&&I.nodeId===f&&I.type===a()&&I.id===n(),te=h.connectionMode===fa.Strict?(E==null?void 0:E.type)!==a():f!==(E==null?void 0:E.nodeId)||n()!==(E==null?void 0:E.id);return[!0,A,R,te,R&&_]}),P=y(()=>Qr(r(C),5)),$=y(()=>r(P)[0]),O=y(()=>r(P)[1]),Z=y(()=>r(P)[2]),Y=y(()=>r(P)[3]),T=y(()=>r(P)[4]);function q(E){var _;const I=h.onbeforeconnect?h.onbeforeconnect(E):E;I&&(h.addEdge(I),(_=h.onconnect)==null||_.call(h,E))}function ne(E){const I=Ku(E);E.currentTarget&&(I&&E.button===0||!I)&&ec.onPointerDown(E,{handleId:n(),nodeId:f,isTarget:r(p),connectionRadius:h.connectionRadius,domNode:h.domNode,nodeLookup:h.nodeLookup,connectionMode:h.connectionMode,lib:"svelte",autoPanOnConnect:h.autoPanOnConnect,autoPanSpeed:h.autoPanSpeed,flowId:h.flowId,isValidConnection:e.isValidConnection||((..._)=>{var A;return((A=h.isValidConnection)==null?void 0:A.call(h,..._))??!0}),updateConnection:h.updateConnection,cancelConnection:h.cancelConnection,panBy:h.panBy,onConnect:q,onConnectStart:h.onconnectstart,onConnectEnd:(..._)=>{var A;return(A=h.onconnectend)==null?void 0:A.call(h,..._)},getTransform:()=>[h.viewport.x,h.viewport.y,h.viewport.zoom],getFromHandle:()=>h.connection.fromHandle,dragThreshold:h.connectionDragThreshold,handleDomNode:E.currentTarget})}function ie(E){var H,j;if(!f||!h.clickConnectStartHandle&&!i())return;if(!h.clickConnectStartHandle){(H=h.onclickconnectstart)==null||H.call(h,E,{nodeId:f,handleId:n(),handleType:a()}),h.clickConnectStartHandle={nodeId:f,type:a(),id:n()};return}const I=Fu(E.target),_=e.isValidConnection??h.isValidConnection,{connectionMode:A,clickConnectStartHandle:R,flowId:te,nodeLookup:F}=h,{connection:X,isValid:ee}=ec.isValid(E,{handle:{nodeId:f,id:n(),type:a()},connectionMode:A,fromNodeId:R.nodeId,fromHandleId:R.id??null,fromType:R.type,isValidConnection:_,flowId:te,doc:I,lib:"svelte",nodeLookup:F});ee&&X&&q(X);const L=structuredClone(Nc(h.connection));delete L.inProgress,L.toPosition=L.toHandle?L.toHandle.position:null,(j=h.onclickconnectend)==null||j.call(h,E,L),h.clickConnectStartHandle=null}var J=d5(),ue=()=>{};zr(J,()=>({"data-handleid":n(),"data-nodeid":f,"data-handlepos":o(),"data-id":`${h.flowId??""}-${f??""}-${n()??"null"??""}-${a()??""}`,class:["svelte-flow__handle",`svelte-flow__handle-${o()}`,h.noDragClass,h.noPanClass,o(),e.class],onmousedown:ne,ontouchstart:ne,onclick:h.clickConnect?ie:void 0,onkeypress:ue,style:e.style,role:"button","aria-label":r(w)["handle.ariaLabel"],tabindex:"-1",...d,[bs]:{valid:r(T),connectingto:r(Z),connectingfrom:r(O),source:!r(p),target:r(p),connectablestart:i(),connectableend:l(),connectable:r(b),connectionindicator:r(b)&&(!r($)||r(Y))&&(r($)||h.clickConnectStartHandle?l():i())}}));var U=c(J);tr(U,()=>e.children??Zr),s(J),g(t,J),at()}var u5=x("<!> <!>",1);function tf(t,e){nt(e,!0);let n=Re(e,"targetPosition",19,()=>Nt.Top),a=Re(e,"sourcePosition",19,()=>Nt.Bottom);var o=u5(),i=ze(o);ha(i,{type:"target",get position(){return n()}});var l=u(i),d=u(l);ha(d,{type:"source",get position(){return a()}}),N(()=>{var f;return S(l,` ${((f=e.data)==null?void 0:f.label)??""} `)}),g(t,o),at()}var f5=x(" <!>",1);function v5(t,e){nt(e,!0);let n=Re(e,"data",19,()=>({label:"Node"})),a=Re(e,"sourcePosition",19,()=>Nt.Bottom);Se();var o=f5(),i=ze(o),l=u(i);ha(l,{type:"source",get position(){return a()}}),N(()=>{var d;return S(i,`${((d=n())==null?void 0:d.label)??""} `)}),g(t,o),at()}var g5=x(" <!>",1);function p5(t,e){nt(e,!0);let n=Re(e,"data",19,()=>({label:"Node"})),a=Re(e,"targetPosition",19,()=>Nt.Top);Se();var o=g5(),i=ze(o),l=u(i);ha(l,{type:"target",get position(){return a()}}),N(()=>{var d;return S(i,`${((d=n())==null?void 0:d.label)??""} `)}),g(t,o),at()}function h5(t,e){}function Ti(t,e,n){if(!n||!e)return;const a=n==="root"?e:e.querySelector(`.svelte-flow__${n}`);a&&a.appendChild(t)}function Ii(t,e){const n=y(Gn),a=y(()=>r(n).domNode);let o;return r(a)?Ti(t,r(a),e):o=Cc(()=>{Lt(()=>{Ti(t,r(a),e),o==null||o()})}),{async update(i){Ti(t,r(a),i)},destroy(){t.parentNode&&t.parentNode.removeChild(t),o==null||o()}}}function b5(){let t=me(typeof window>"u");if(r(t)){const e=Cc(()=>{Lt(()=>{m(t,!1),e==null||e()})})}return{get value(){return r(t)}}}const rc=t=>ik(t),x5=t=>Pu(t);function pn(t){return t===void 0?void 0:`${t}px`}const Yo={ArrowUp:{x:0,y:-1},ArrowDown:{x:0,y:1},ArrowLeft:{x:-1,y:0},ArrowRight:{x:1,y:0}};var m5=x("<div><!></div>");function _5(t,e){nt(e,!0);let n=Re(e,"x",3,0),a=Re(e,"y",3,0),o=Re(e,"selectEdgeOnClick",3,!1),i=Re(e,"transparent",3,!1),l=Je(e,["$$slots","$$events","$$legacy","x","y","width","height","selectEdgeOnClick","transparent","class","children"]);const d=Gn(),f=l5("EdgeLabel must be used within a Custom Edge component");let v=y(()=>{var w;return(w=d.visible.edges.get(f))==null?void 0:w.zIndex});var p=m5(),b=()=>{o()&&f&&d.handleEdgeSelection(f)};zr(p,w=>({class:["svelte-flow__edge-label",{transparent:i()},e.class],tabindex:"-1",onclick:b,...l,[no]:w}),[()=>({display:b5().value?"none":void 0,cursor:o()?"pointer":void 0,transform:`translate(-50%, -50%) translate(${n()??""}px,${a()??""}px)`,"pointer-events":"all",width:pn(e.width),height:pn(e.height),"z-index":r(v)})],void 0,void 0,"svelte-168dld1");var h=c(p);tr(h,()=>e.children??Zr),s(p),Vr(p,(w,k)=>Ii==null?void 0:Ii(w,k),()=>"edge-labels"),g(t,p),at()}var y5=Cr("<path></path>"),w5=Cr('<path fill="none"></path><!><!>',1);function ci(t,e){let n=Re(e,"interactionWidth",3,20),a=Je(e,["$$slots","$$events","$$legacy","id","path","label","labelX","labelY","labelStyle","markerStart","markerEnd","style","interactionWidth","class"]);var o=w5(),i=ze(o),l=u(i);{var d=p=>{var b=y5();zr(b,()=>({d:e.path,"stroke-opacity":0,"stroke-width":n(),fill:"none",class:"svelte-flow__edge-interaction",...a})),g(p,b)};V(l,p=>{n()>0&&p(d)})}var f=u(l);{var v=p=>{_5(p,{get x(){return e.labelX},get y(){return e.labelY},get style(){return e.labelStyle},selectEdgeOnClick:!0,children:(b,h)=>{Se();var w=bt();N(()=>S(w,e.label)),g(b,w)},$$slots:{default:!0}})};V(f,p=>{e.label&&p(v)})}N(()=>{Ne(i,"id",e.id),Ne(i,"d",e.path),Pe(i,0,Ve(["svelte-flow__edge-path",e.class])),Ne(i,"marker-start",e.markerStart),Ne(i,"marker-end",e.markerEnd),yr(i,e.style)}),g(t,o)}function rf(t,e){nt(e,!0);let n=y(()=>{var d;return ju({sourceX:e.sourceX,sourceY:e.sourceY,targetX:e.targetX,targetY:e.targetY,sourcePosition:e.sourcePosition,targetPosition:e.targetPosition,curvature:(d=e.pathOptions)==null?void 0:d.curvature})}),a=y(()=>Qr(r(n),3)),o=y(()=>r(a)[0]),i=y(()=>r(a)[1]),l=y(()=>r(a)[2]);ci(t,{get id(){return e.id},get path(){return r(o)},get labelX(){return r(i)},get labelY(){return r(l)},get label(){return e.label},get labelStyle(){return e.labelStyle},get markerStart(){return e.markerStart},get markerEnd(){return e.markerEnd},get interactionWidth(){return e.interactionWidth},get style(){return e.style}}),at()}function k5(t,e){nt(e,!0);let n=y(()=>Os({sourceX:e.sourceX,sourceY:e.sourceY,targetX:e.targetX,targetY:e.targetY,sourcePosition:e.sourcePosition,targetPosition:e.targetPosition})),a=y(()=>Qr(r(n),3)),o=y(()=>r(a)[0]),i=y(()=>r(a)[1]),l=y(()=>r(a)[2]);ci(t,{get path(){return r(o)},get labelX(){return r(i)},get labelY(){return r(l)},get label(){return e.label},get labelStyle(){return e.labelStyle},get markerStart(){return e.markerStart},get markerEnd(){return e.markerEnd},get interactionWidth(){return e.interactionWidth},get style(){return e.style}}),at()}function S5(t,e){nt(e,!0);let n=y(()=>Uu({sourceX:e.sourceX,sourceY:e.sourceY,targetX:e.targetX,targetY:e.targetY})),a=y(()=>Qr(r(n),3)),o=y(()=>r(a)[0]),i=y(()=>r(a)[1]),l=y(()=>r(a)[2]);ci(t,{get path(){return r(o)},get labelX(){return r(i)},get labelY(){return r(l)},get label(){return e.label},get labelStyle(){return e.labelStyle},get markerStart(){return e.markerStart},get markerEnd(){return e.markerEnd},get interactionWidth(){return e.interactionWidth},get style(){return e.style}}),at()}function C5(t,e){nt(e,!0);let n=y(()=>Os({sourceX:e.sourceX,sourceY:e.sourceY,targetX:e.targetX,targetY:e.targetY,sourcePosition:e.sourcePosition,targetPosition:e.targetPosition,borderRadius:0})),a=y(()=>Qr(r(n),3)),o=y(()=>r(a)[0]),i=y(()=>r(a)[1]),l=y(()=>r(a)[2]);ci(t,{get path(){return r(o)},get labelX(){return r(i)},get labelY(){return r(l)},get label(){return e.label},get labelStyle(){return e.labelStyle},get markerStart(){return e.markerStart},get markerEnd(){return e.markerEnd},get interactionWidth(){return e.interactionWidth},get style(){return e.style}}),at()}function E5(t,e,n,a){const o=new Map;return As(t,{x:0,y:0,width:n,height:a},e,!0).forEach(i=>{o.set(i.id,i)}),o}function nc(t){const{edges:e,defaultEdgeOptions:n,nodeLookup:a,previousEdges:o,connectionMode:i,onerror:l,onlyRenderVisible:d,elevateEdgesOnSelect:f,zIndexMode:v}=t,p=new Map;for(const b of e){const h=a.get(b.source),w=a.get(b.target);if(!h||!w)continue;if(d){const{visibleNodes:P,transform:$,width:O,height:Z}=t;if(wk({sourceNode:h,targetNode:w,width:O,height:Z,transform:$}))P.set(h.id,h),P.set(w.id,w);else continue}const k=o.get(b.id);if(k&&b===k.edge&&h==k.sourceNode&&w==k.targetNode){p.set(b.id,k);continue}const C=Nk({id:b.id,sourceNode:h,targetNode:w,sourceHandle:b.sourceHandle||null,targetHandle:b.targetHandle||null,connectionMode:i,onError:l});C&&p.set(b.id,{...n,...b,...C,zIndex:yk({selected:b.selected,zIndex:b.zIndex??n.zIndex,sourceNode:h,targetNode:w,elevateOnSelect:f,zIndexMode:v}),sourceNode:h,targetNode:w,edge:b})}return p}const nf={input:v5,output:p5,default:tf,group:h5},af={straight:S5,smoothstep:k5,default:rf,step:C5};function M5(t,e,n,a,o,i){if(e&&!n&&a&&o){const l=oi(i,{filter:d=>!!((d.width||d.initialWidth)&&(d.height||d.initialHeight))});return Ls(l,a,o,.5,2,.1)}else return n??{x:0,y:0,zoom:1}}function z5(t){var n,a,o,i,l,d,f,v,p,b,h,w,k,C,P,$,O,Z,Y,T,q,ne,ie,J,ue,U,E,I,_,A,R,te,F,X,ee,L,H,j,le,he,oe,Q,W,G,M,K,D,z,B,re,de,be,fe,Ce,ke,xe,ge,De,ce,se,ve,Ae,Le,we,Ie,Ee,Me,Te,Xe,Fe,Qe,lt,ct,Ke,He,Ue;class e{constructor(){je(this,n,y(()=>t.props.id??"1"));je(this,a,me(null));je(this,o,me(null));je(this,i,me(t.width??0));je(this,l,me(t.height??0));je(this,d,me(t.props.zIndexMode??"basic"));je(this,f,y(()=>{var tt;const{nodesInitialized:ae}=Pk(t.nodes,this.nodeLookup,this.parentLookup,{nodeExtent:this.nodeExtent,nodeOrigin:this.nodeOrigin,elevateNodesOnSelect:t.props.elevateNodesOnSelect??!0,checkEquality:!0,zIndexMode:this.zIndexMode});return this.fitViewQueued&&ae&&((tt=this.fitViewOptions)!=null&&tt.duration?this.resolveFitView():queueMicrotask(()=>{this.resolveFitView()})),ae}));je(this,v,y(()=>this.panZoom!==null));je(this,p,y(()=>(qk(this.connectionLookup,this.edgeLookup,t.edges),t.edges)));qt(this,"_prevSelectedNodes",[]);qt(this,"_prevSelectedNodeIds",new Set);je(this,b,y(()=>{const ae=this._prevSelectedNodeIds.size,tt=new Set,Ze=this.nodes.filter(We=>(We.selected&&(tt.add(We.id),this._prevSelectedNodeIds.delete(We.id)),We.selected));return(ae!==tt.size||this._prevSelectedNodeIds.size>0)&&(this._prevSelectedNodes=Ze),this._prevSelectedNodeIds=tt,this._prevSelectedNodes}));qt(this,"_prevSelectedEdges",[]);qt(this,"_prevSelectedEdgeIds",new Set);je(this,h,y(()=>{const ae=this._prevSelectedEdgeIds.size,tt=new Set,Ze=this.edges.filter(We=>(We.selected&&(tt.add(We.id),this._prevSelectedEdgeIds.delete(We.id)),We.selected));return(ae!==tt.size||this._prevSelectedEdgeIds.size>0)&&(this._prevSelectedEdges=Ze),this._prevSelectedEdgeIds=tt,this._prevSelectedEdges}));qt(this,"selectionChangeHandlers",new Map);qt(this,"nodeLookup",new Map);qt(this,"parentLookup",new Map);qt(this,"connectionLookup",new Map);qt(this,"edgeLookup",new Map);qt(this,"_prevVisibleEdges",new Map);je(this,w,y(()=>{const{nodes:ae,_edges:tt,_prevVisibleEdges:Ze,nodeLookup:We,connectionMode:ut,onerror:Et,onlyRenderVisibleElements:Tt,defaultEdgeOptions:Mt,zIndexMode:Ct}=this;let xt,mt;const wt={edges:tt,defaultEdgeOptions:Mt,previousEdges:Ze,nodeLookup:We,connectionMode:ut,elevateEdgesOnSelect:t.props.elevateEdgesOnSelect??!0,zIndexMode:Ct,onerror:Et};if(Tt){const{viewport:Ot,width:Zt,height:pr}=this,hr=[Ot.x,Ot.y,Ot.zoom];xt=E5(We,hr,Zt,pr),mt=nc({...wt,onlyRenderVisible:!0,visibleNodes:xt,transform:hr,width:Zt,height:pr})}else xt=this.nodeLookup,mt=nc(wt);return{nodes:xt,edges:mt}}));je(this,k,y(()=>t.props.nodesDraggable??!0));je(this,C,y(()=>t.props.nodesConnectable??!0));je(this,P,y(()=>t.props.elementsSelectable??!0));je(this,$,y(()=>t.props.nodesFocusable??!0));je(this,O,y(()=>t.props.edgesFocusable??!0));je(this,Z,y(()=>t.props.disableKeyboardA11y??!1));je(this,Y,y(()=>t.props.minZoom??.5));je(this,T,y(()=>t.props.maxZoom??2));je(this,q,y(()=>t.props.nodeOrigin??[0,0]));je(this,ne,y(()=>t.props.nodeExtent??is));je(this,ie,y(()=>t.props.translateExtent??is));je(this,J,y(()=>t.props.defaultEdgeOptions??{}));je(this,ue,y(()=>t.props.nodeDragThreshold??1));je(this,U,y(()=>t.props.autoPanOnNodeDrag??!0));je(this,E,y(()=>t.props.autoPanOnConnect??!0));je(this,I,y(()=>t.props.autoPanOnNodeFocus??!0));je(this,_,y(()=>t.props.autoPanSpeed??15));je(this,A,y(()=>t.props.connectionDragThreshold??1));qt(this,"fitViewQueued",t.props.fitView??!1);qt(this,"fitViewOptions",t.props.fitViewOptions);qt(this,"fitViewResolver",null);je(this,R,y(()=>t.props.snapGrid??null));je(this,te,me(!1));je(this,F,me(null));je(this,X,me(!1));je(this,ee,me(!1));je(this,L,me(!1));je(this,H,me(!1));je(this,j,me(!1));je(this,le,me(null));je(this,he,me(""));je(this,oe,y(()=>t.props.selectionMode??jo.Partial));je(this,Q,y(()=>({...nf,...t.props.nodeTypes})));je(this,W,y(()=>({...af,...t.props.edgeTypes})));je(this,G,y(()=>t.props.noPanClass??"nopan"));je(this,M,y(()=>t.props.noDragClass??"nodrag"));je(this,K,y(()=>t.props.noWheelClass??"nowheel"));je(this,D,y(()=>xk(t.props.ariaLabelConfig)));je(this,z,me(M5(this.nodesInitialized,t.props.fitView,t.props.initialViewport,this.width,this.height,this.nodeLookup)));je(this,B,me(ss));je(this,re,y(()=>this._connection.inProgress?{...this._connection,to:lo(this._connection.to,[this.viewport.x,this.viewport.y,this.viewport.zoom])}:this._connection));je(this,de,y(()=>t.props.connectionMode??fa.Strict));je(this,be,y(()=>t.props.connectionRadius??20));je(this,fe,y(()=>t.props.isValidConnection??(()=>!0)));je(this,Ce,y(()=>t.props.selectNodesOnDrag??!0));je(this,ke,y(()=>t.props.defaultMarkerColor===void 0?"#b1b1b7":t.props.defaultMarkerColor));je(this,xe,y(()=>Tk(t.edges,{defaultColor:this.defaultMarkerColor,id:this.flowId,defaultMarkerStart:this.defaultEdgeOptions.markerStart,defaultMarkerEnd:this.defaultEdgeOptions.markerEnd})));je(this,ge,y(()=>t.props.onlyRenderVisibleElements??!1));je(this,De,y(()=>t.props.onflowerror??vk));je(this,ce,y(()=>t.props.ondelete));je(this,se,y(()=>t.props.onbeforedelete));je(this,ve,y(()=>t.props.onbeforeconnect));je(this,Ae,y(()=>t.props.onconnect));je(this,Le,y(()=>t.props.onconnectstart));je(this,we,y(()=>t.props.onconnectend));je(this,Ie,y(()=>t.props.onbeforereconnect));je(this,Ee,y(()=>t.props.onreconnect));je(this,Me,y(()=>t.props.onreconnectstart));je(this,Te,y(()=>t.props.onreconnectend));je(this,Xe,y(()=>t.props.clickConnect??!0));je(this,Fe,y(()=>t.props.onclickconnectstart));je(this,Qe,y(()=>t.props.onclickconnectend));je(this,lt,me(null));je(this,ct,y(()=>t.props.onselectiondrag));je(this,Ke,y(()=>t.props.onselectiondragstart));je(this,He,y(()=>t.props.onselectiondragstop));qt(this,"resolveFitView",async()=>{var ae;this.panZoom&&(await dk({nodes:this.nodeLookup,width:this.width,height:this.height,panZoom:this.panZoom,minZoom:this.minZoom,maxZoom:this.maxZoom},this.fitViewOptions),(ae=this.fitViewResolver)==null||ae.resolve(!0),this.fitViewQueued=!1,this.fitViewOptions=void 0,this.fitViewResolver=null)});qt(this,"_prefersDark",new fg("(prefers-color-scheme: dark)",t.props.colorModeSSR==="dark"));je(this,Ue,y(()=>t.props.colorMode==="system"?this._prefersDark.current?"dark":"light":t.props.colorMode??"light"))}get flowId(){return r(pe(this,n))}set flowId(ae){m(pe(this,n),ae)}get domNode(){return r(pe(this,a))}set domNode(ae){m(pe(this,a),ae)}get panZoom(){return r(pe(this,o))}set panZoom(ae){m(pe(this,o),ae)}get width(){return r(pe(this,i))}set width(ae){m(pe(this,i),ae)}get height(){return r(pe(this,l))}set height(ae){m(pe(this,l),ae)}get zIndexMode(){return r(pe(this,d))}set zIndexMode(ae){m(pe(this,d),ae)}get nodesInitialized(){return r(pe(this,f))}set nodesInitialized(ae){m(pe(this,f),ae)}get viewportInitialized(){return r(pe(this,v))}set viewportInitialized(ae){m(pe(this,v),ae)}get _edges(){return r(pe(this,p))}set _edges(ae){m(pe(this,p),ae)}get nodes(){return this.nodesInitialized,t.nodes}set nodes(ae){t.nodes=ae}get edges(){return this._edges}set edges(ae){t.edges=ae}get selectedNodes(){return r(pe(this,b))}set selectedNodes(ae){m(pe(this,b),ae)}get selectedEdges(){return r(pe(this,h))}set selectedEdges(ae){m(pe(this,h),ae)}get visible(){return r(pe(this,w))}set visible(ae){m(pe(this,w),ae)}get nodesDraggable(){return r(pe(this,k))}set nodesDraggable(ae){m(pe(this,k),ae)}get nodesConnectable(){return r(pe(this,C))}set nodesConnectable(ae){m(pe(this,C),ae)}get elementsSelectable(){return r(pe(this,P))}set elementsSelectable(ae){m(pe(this,P),ae)}get nodesFocusable(){return r(pe(this,$))}set nodesFocusable(ae){m(pe(this,$),ae)}get edgesFocusable(){return r(pe(this,O))}set edgesFocusable(ae){m(pe(this,O),ae)}get disableKeyboardA11y(){return r(pe(this,Z))}set disableKeyboardA11y(ae){m(pe(this,Z),ae)}get minZoom(){return r(pe(this,Y))}set minZoom(ae){m(pe(this,Y),ae)}get maxZoom(){return r(pe(this,T))}set maxZoom(ae){m(pe(this,T),ae)}get nodeOrigin(){return r(pe(this,q))}set nodeOrigin(ae){m(pe(this,q),ae)}get nodeExtent(){return r(pe(this,ne))}set nodeExtent(ae){m(pe(this,ne),ae)}get translateExtent(){return r(pe(this,ie))}set translateExtent(ae){m(pe(this,ie),ae)}get defaultEdgeOptions(){return r(pe(this,J))}set defaultEdgeOptions(ae){m(pe(this,J),ae)}get nodeDragThreshold(){return r(pe(this,ue))}set nodeDragThreshold(ae){m(pe(this,ue),ae)}get autoPanOnNodeDrag(){return r(pe(this,U))}set autoPanOnNodeDrag(ae){m(pe(this,U),ae)}get autoPanOnConnect(){return r(pe(this,E))}set autoPanOnConnect(ae){m(pe(this,E),ae)}get autoPanOnNodeFocus(){return r(pe(this,I))}set autoPanOnNodeFocus(ae){m(pe(this,I),ae)}get autoPanSpeed(){return r(pe(this,_))}set autoPanSpeed(ae){m(pe(this,_),ae)}get connectionDragThreshold(){return r(pe(this,A))}set connectionDragThreshold(ae){m(pe(this,A),ae)}get snapGrid(){return r(pe(this,R))}set snapGrid(ae){m(pe(this,R),ae)}get dragging(){return r(pe(this,te))}set dragging(ae){m(pe(this,te),ae)}get selectionRect(){return r(pe(this,F))}set selectionRect(ae){m(pe(this,F),ae)}get selectionKeyPressed(){return r(pe(this,X))}set selectionKeyPressed(ae){m(pe(this,X),ae)}get multiselectionKeyPressed(){return r(pe(this,ee))}set multiselectionKeyPressed(ae){m(pe(this,ee),ae)}get deleteKeyPressed(){return r(pe(this,L))}set deleteKeyPressed(ae){m(pe(this,L),ae)}get panActivationKeyPressed(){return r(pe(this,H))}set panActivationKeyPressed(ae){m(pe(this,H),ae)}get zoomActivationKeyPressed(){return r(pe(this,j))}set zoomActivationKeyPressed(ae){m(pe(this,j),ae)}get selectionRectMode(){return r(pe(this,le))}set selectionRectMode(ae){m(pe(this,le),ae)}get ariaLiveMessage(){return r(pe(this,he))}set ariaLiveMessage(ae){m(pe(this,he),ae)}get selectionMode(){return r(pe(this,oe))}set selectionMode(ae){m(pe(this,oe),ae)}get nodeTypes(){return r(pe(this,Q))}set nodeTypes(ae){m(pe(this,Q),ae)}get edgeTypes(){return r(pe(this,W))}set edgeTypes(ae){m(pe(this,W),ae)}get noPanClass(){return r(pe(this,G))}set noPanClass(ae){m(pe(this,G),ae)}get noDragClass(){return r(pe(this,M))}set noDragClass(ae){m(pe(this,M),ae)}get noWheelClass(){return r(pe(this,K))}set noWheelClass(ae){m(pe(this,K),ae)}get ariaLabelConfig(){return r(pe(this,D))}set ariaLabelConfig(ae){m(pe(this,D),ae)}get _viewport(){return r(pe(this,z))}set _viewport(ae){m(pe(this,z),ae)}get viewport(){return t.viewport??this._viewport}set viewport(ae){t.viewport&&(t.viewport=ae),this._viewport=ae}get _connection(){return r(pe(this,B))}set _connection(ae){m(pe(this,B),ae)}get connection(){return r(pe(this,re))}set connection(ae){m(pe(this,re),ae)}get connectionMode(){return r(pe(this,de))}set connectionMode(ae){m(pe(this,de),ae)}get connectionRadius(){return r(pe(this,be))}set connectionRadius(ae){m(pe(this,be),ae)}get isValidConnection(){return r(pe(this,fe))}set isValidConnection(ae){m(pe(this,fe),ae)}get selectNodesOnDrag(){return r(pe(this,Ce))}set selectNodesOnDrag(ae){m(pe(this,Ce),ae)}get defaultMarkerColor(){return r(pe(this,ke))}set defaultMarkerColor(ae){m(pe(this,ke),ae)}get markers(){return r(pe(this,xe))}set markers(ae){m(pe(this,xe),ae)}get onlyRenderVisibleElements(){return r(pe(this,ge))}set onlyRenderVisibleElements(ae){m(pe(this,ge),ae)}get onerror(){return r(pe(this,De))}set onerror(ae){m(pe(this,De),ae)}get ondelete(){return r(pe(this,ce))}set ondelete(ae){m(pe(this,ce),ae)}get onbeforedelete(){return r(pe(this,se))}set onbeforedelete(ae){m(pe(this,se),ae)}get onbeforeconnect(){return r(pe(this,ve))}set onbeforeconnect(ae){m(pe(this,ve),ae)}get onconnect(){return r(pe(this,Ae))}set onconnect(ae){m(pe(this,Ae),ae)}get onconnectstart(){return r(pe(this,Le))}set onconnectstart(ae){m(pe(this,Le),ae)}get onconnectend(){return r(pe(this,we))}set onconnectend(ae){m(pe(this,we),ae)}get onbeforereconnect(){return r(pe(this,Ie))}set onbeforereconnect(ae){m(pe(this,Ie),ae)}get onreconnect(){return r(pe(this,Ee))}set onreconnect(ae){m(pe(this,Ee),ae)}get onreconnectstart(){return r(pe(this,Me))}set onreconnectstart(ae){m(pe(this,Me),ae)}get onreconnectend(){return r(pe(this,Te))}set onreconnectend(ae){m(pe(this,Te),ae)}get clickConnect(){return r(pe(this,Xe))}set clickConnect(ae){m(pe(this,Xe),ae)}get onclickconnectstart(){return r(pe(this,Fe))}set onclickconnectstart(ae){m(pe(this,Fe),ae)}get onclickconnectend(){return r(pe(this,Qe))}set onclickconnectend(ae){m(pe(this,Qe),ae)}get clickConnectStartHandle(){return r(pe(this,lt))}set clickConnectStartHandle(ae){m(pe(this,lt),ae)}get onselectiondrag(){return r(pe(this,ct))}set onselectiondrag(ae){m(pe(this,ct),ae)}get onselectiondragstart(){return r(pe(this,Ke))}set onselectiondragstart(ae){m(pe(this,Ke),ae)}get onselectiondragstop(){return r(pe(this,He))}set onselectiondragstop(ae){m(pe(this,He),ae)}get colorMode(){return r(pe(this,Ue))}set colorMode(ae){m(pe(this,Ue),ae)}resetStoreValues(){this.dragging=!1,this.selectionRect=null,this.selectionRectMode=null,this.selectionKeyPressed=!1,this.multiselectionKeyPressed=!1,this.deleteKeyPressed=!1,this.panActivationKeyPressed=!1,this.zoomActivationKeyPressed=!1,this._connection=ss,this.clickConnectStartHandle=null,this.viewport=t.props.initialViewport??{x:0,y:0,zoom:1},this.ariaLiveMessage=""}}return n=new WeakMap,a=new WeakMap,o=new WeakMap,i=new WeakMap,l=new WeakMap,d=new WeakMap,f=new WeakMap,v=new WeakMap,p=new WeakMap,b=new WeakMap,h=new WeakMap,w=new WeakMap,k=new WeakMap,C=new WeakMap,P=new WeakMap,$=new WeakMap,O=new WeakMap,Z=new WeakMap,Y=new WeakMap,T=new WeakMap,q=new WeakMap,ne=new WeakMap,ie=new WeakMap,J=new WeakMap,ue=new WeakMap,U=new WeakMap,E=new WeakMap,I=new WeakMap,_=new WeakMap,A=new WeakMap,R=new WeakMap,te=new WeakMap,F=new WeakMap,X=new WeakMap,ee=new WeakMap,L=new WeakMap,H=new WeakMap,j=new WeakMap,le=new WeakMap,he=new WeakMap,oe=new WeakMap,Q=new WeakMap,W=new WeakMap,G=new WeakMap,M=new WeakMap,K=new WeakMap,D=new WeakMap,z=new WeakMap,B=new WeakMap,re=new WeakMap,de=new WeakMap,be=new WeakMap,fe=new WeakMap,Ce=new WeakMap,ke=new WeakMap,xe=new WeakMap,ge=new WeakMap,De=new WeakMap,ce=new WeakMap,se=new WeakMap,ve=new WeakMap,Ae=new WeakMap,Le=new WeakMap,we=new WeakMap,Ie=new WeakMap,Ee=new WeakMap,Me=new WeakMap,Te=new WeakMap,Xe=new WeakMap,Fe=new WeakMap,Qe=new WeakMap,lt=new WeakMap,ct=new WeakMap,Ke=new WeakMap,He=new WeakMap,Ue=new WeakMap,new e}function Gn(){const t=Qo(ds);if(!t)throw new Error("To call useStore outside of <SvelteFlow /> you need to wrap your component in a <SvelteFlowProvider />");return t.getStore()}const ds=Symbol();function N5(t){const e=z5(t);function n(U){e.nodeTypes={...nf,...U}}function a(U){e.edgeTypes={...af,...U}}function o(U){e.edges=Ck(U,e.edges)}const i=(U,E=!1)=>{e.nodes=e.nodes.map(I=>{if(e.connection.inProgress&&e.connection.fromNode.id===I.id){const A=e.nodeLookup.get(I.id);A&&(e.connection={...e.connection,from:Bn(A,e.connection.fromHandle,Nt.Left,!0)})}const _=U.get(I.id);return _?{...I,position:_.position,dragging:E}:I})};function l(U){var A,R,te;const{changes:E,updatedInternals:I}=Hk(U,e.nodeLookup,e.parentLookup,e.domNode,e.nodeOrigin,e.nodeExtent,e.zIndexMode);if(!I)return;Lk(e.nodeLookup,e.parentLookup,{nodeOrigin:e.nodeOrigin,nodeExtent:e.nodeExtent,zIndexMode:e.zIndexMode}),e.fitViewQueued&&e.resolveFitView();const _=new Map;for(const F of E){const X=(A=e.nodeLookup.get(F.id))==null?void 0:A.internals.userNode;if(!X)continue;const ee={...X};switch(F.type){case"dimensions":{const L={...ee.measured,...F.dimensions};F.setAttributes&&(ee.width=((R=F.dimensions)==null?void 0:R.width)??ee.width,ee.height=((te=F.dimensions)==null?void 0:te.height)??ee.height),ee.measured=L;break}case"position":ee.position=F.position??ee.position;break}_.set(F.id,ee)}e.nodes=e.nodes.map(F=>_.get(F.id)??F)}function d(U){const E=e.fitViewResolver??Promise.withResolvers();return e.fitViewQueued=!0,e.fitViewOptions=U,e.fitViewResolver=E,e.nodes=[...e.nodes],E.promise}async function f(U,E,I){const _=typeof(I==null?void 0:I.zoom)<"u"?I.zoom:e.maxZoom,A=e.panZoom;return A?(await A.setViewport({x:e.width/2-U*_,y:e.height/2-E*_,zoom:_},{duration:I==null?void 0:I.duration,ease:I==null?void 0:I.ease,interpolate:I==null?void 0:I.interpolate}),Promise.resolve(!0)):Promise.resolve(!1)}function v(U,E){const I=e.panZoom;return I?I.scaleBy(U,E):Promise.resolve(!1)}function p(U){return v(1.2,U)}function b(U){return v(1/1.2,U)}function h(U){const E=e.panZoom;E&&(E.setScaleExtent([U,e.maxZoom]),e.minZoom=U)}function w(U){const E=e.panZoom;E&&(E.setScaleExtent([e.minZoom,U]),e.maxZoom=U)}function k(U){const E=e.panZoom;E&&(E.setTranslateExtent(U),e.translateExtent=U)}function C(U,E=null){let I=!1;const _=U.map(A=>(E?E.has(A.id):!0)&&A.selected?(I=!0,{...A,selected:!1}):A);return[I,_]}function P(U){const E=U!=null&&U.nodes?new Set(U.nodes.map(F=>F.id)):null,[I,_]=C(e.nodes,E);I&&(e.nodes=_);const A=U!=null&&U.edges?new Set(U.edges.map(F=>F.id)):null,[R,te]=C(e.edges,A);R&&(e.edges=te)}function $(U){const E=e.multiselectionKeyPressed;e.nodes=e.nodes.map(I=>{const _=U.includes(I.id),A=E&&I.selected||_;return!!I.selected!==A?{...I,selected:A}:I}),E||P({nodes:[]})}function O(U){const E=e.multiselectionKeyPressed;e.edges=e.edges.map(I=>{const _=U.includes(I.id),A=E&&I.selected||_;return!!I.selected!==A?{...I,selected:A}:I}),E||P({edges:[]})}function Z(U,E,I){const _=e.nodeLookup.get(U);if(!_){console.warn("012",ja.error012(U));return}e.selectionRect=null,e.selectionRectMode=null,_.selected?(E||_.selected&&e.multiselectionKeyPressed)&&(P({nodes:[_],edges:[]}),requestAnimationFrame(()=>I==null?void 0:I.blur())):$([U])}function Y(U){const E=e.edgeLookup.get(U);if(!E){console.warn("012",ja.error012(U));return}(E.selectable||e.elementsSelectable&&typeof E.selectable>"u")&&(e.selectionRect=null,e.selectionRectMode=null,E.selected?E.selected&&e.multiselectionKeyPressed&&P({nodes:[],edges:[E]}):O([U]))}function T(U,E){const{nodeExtent:I,snapGrid:_,nodeOrigin:A,nodeLookup:R,nodesDraggable:te,onerror:F}=e,X=new Map,ee=(_==null?void 0:_[0])??5,L=(_==null?void 0:_[1])??5,H=U.x*ee*E,j=U.y*L*E;for(const le of R.values()){if(!(le.selected&&(le.draggable||te&&typeof le.draggable>"u")))continue;let oe={x:le.internals.positionAbsolute.x+H,y:le.internals.positionAbsolute.y+j};_&&(oe=so(oe,_));const{position:Q,positionAbsolute:W}=Du({nodeId:le.id,nextPosition:oe,nodeLookup:R,nodeExtent:I,nodeOrigin:A,onError:F});le.position=Q,le.internals.positionAbsolute=W,X.set(le.id,le)}i(X)}function q(U){return Fk({delta:U,panZoom:e.panZoom,transform:[e.viewport.x,e.viewport.y,e.viewport.zoom],translateExtent:e.translateExtent,width:e.width,height:e.height})}const ne=U=>{e._connection={...U}};function ie(){e._connection=ss}function J(){e.resetStoreValues(),P()}return Object.assign(e,{setNodeTypes:n,setEdgeTypes:a,addEdge:o,updateNodePositions:i,updateNodeInternals:l,zoomIn:p,zoomOut:b,fitView:d,setCenter:f,setMinZoom:h,setMaxZoom:w,setTranslateExtent:k,unselectNodesAndEdges:P,addSelectedNodes:$,addSelectedEdges:O,handleNodeSelection:Z,handleEdgeSelection:Y,moveSelectedNodes:T,panBy:q,updateConnection:ne,cancelConnection:ie,reset:J})}function Ai(t,e){const{minZoom:n,maxZoom:a,initialViewport:o,onPanZoomStart:i,onPanZoom:l,onPanZoomEnd:d,translateExtent:f,setPanZoomInstance:v,onDraggingChange:p,onTransformChange:b}=e,h=n5({domNode:t,minZoom:n,maxZoom:a,translateExtent:f,viewport:o,onPanZoom:l,onPanZoomStart:i,onPanZoomEnd:d,onDraggingChange:p}),w=h.getViewport();return(o.x!==w.x||o.y!==w.y||o.zoom!==w.zoom)&&b([w.x,w.y,w.zoom]),v(h),h.update(e),{update(k){h.update(k)}}}var T5=x('<div class="svelte-flow__zoom svelte-flow__container"><!></div>');function I5(t,e){nt(e,!0);let n=Re(e,"store",15),a=y(()=>n().panActivationKeyPressed||e.panOnDrag),o=y(()=>n().panActivationKeyPressed||e.panOnScroll);const{viewport:i}=n();let l=!1;Lt(()=>{var v;!l&&n().viewportInitialized&&((v=e.oninit)==null||v.call(e),l=!0)});var d=T5(),f=c(d);tr(f,()=>e.children),s(d),Vr(d,(v,p)=>Ai==null?void 0:Ai(v,p),()=>({viewport:n().viewport,minZoom:n().minZoom,maxZoom:n().maxZoom,initialViewport:i,onDraggingChange:v=>{n(n().dragging=v,!0)},setPanZoomInstance:v=>{n(n().panZoom=v,!0)},onPanZoomStart:e.onmovestart,onPanZoom:e.onmove,onPanZoomEnd:e.onmoveend,zoomOnScroll:e.zoomOnScroll,zoomOnDoubleClick:e.zoomOnDoubleClick,zoomOnPinch:e.zoomOnPinch,panOnScroll:r(o),panOnDrag:r(a),panOnScrollSpeed:e.panOnScrollSpeed,panOnScrollMode:e.panOnScrollMode,zoomActivationKeyPressed:n().zoomActivationKeyPressed,preventScrolling:typeof e.preventScrolling=="boolean"?e.preventScrolling:!0,noPanClassName:n().noPanClass,noWheelClassName:n().noWheelClass,userSelectionActive:!!n().selectionRect,translateExtent:n().translateExtent,lib:"svelte",paneClickDistance:e.paneClickDistance,selectionOnDrag:e.selectionOnDrag,onTransformChange:v=>{n(n().viewport={x:v[0],y:v[1],zoom:v[2]},!0)},connectionInProgress:n().connection.inProgress})),g(t,d),at()}function ac(t,e){return n=>{n.target===e&&(t==null||t(n))}}function oc(t){return e=>{const n=t.has(e.id);return!!e.selected!==n?{...e,selected:n}:e}}function ic(t,e){if(t.size!==e.size)return!1;for(const n of t)if(!e.has(n))return!1;return!0}var A5=x("<div><!></div>");function L5(t,e){nt(e,!0);let n=Re(e,"store",15),a=Re(e,"panOnDrag",3,!0),o=Re(e,"paneClickDistance",3,1),i,l=null,d=new Set,f=new Set,v=y(()=>n().panActivationKeyPressed||a()),p=y(()=>n().selectionKeyPressed||!!n().selectionRect||e.selectionOnDrag&&r(v)!==!0),b=y(()=>n().elementsSelectable&&(r(p)||n().selectionRectMode==="user")),h=!1;function w(ie){var _,A;if(l=i==null?void 0:i.getBoundingClientRect(),!l)return;const J=ie.target===i,ue=!J&&!!ie.target.closest(".nokey"),U=e.selectionOnDrag&&J||n().selectionKeyPressed;if(ue||!r(p)||!U||ie.button!==0||!ie.isPrimary)return;(A=(_=ie.target)==null?void 0:_.setPointerCapture)==null||A.call(_,ie.pointerId),h=!1;const{x:E,y:I}=sn(ie,l);n(n().selectionRect={width:0,height:0,startX:E,startY:I,x:E,y:I},!0),J||(ie.stopPropagation(),ie.preventDefault())}function k(ie){var R;if(!r(p)||!l||!n().selectionRect)return;const J=sn(ie,l),{startX:ue=0,startY:U=0}=n().selectionRect;if(!h){const te=n().selectionKeyPressed?0:o();if(Math.hypot(J.x-ue,J.y-U)<=te)return;n().unselectNodesAndEdges(),(R=e.onselectionstart)==null||R.call(e,ie)}h=!0;const E={...n().selectionRect,x:J.x<ue?J.x:ue,y:J.y<U?J.y:U,width:Math.abs(J.x-ue),height:Math.abs(J.y-U)},I=d,_=f;d=new Set(As(n().nodeLookup,E,[n().viewport.x,n().viewport.y,n().viewport.zoom],n().selectionMode===jo.Partial,!0).map(te=>te.id));const A=n().defaultEdgeOptions.selectable??!0;f=new Set;for(const te of d){const F=n().connectionLookup.get(te);if(F)for(const{edgeId:X}of F.values()){const ee=n().edgeLookup.get(X);ee&&(ee.selectable??A)&&f.add(X)}}ic(I,d)||n(n().nodes=n().nodes.map(oc(d)),!0),ic(_,f)||n(n().edges=n().edges.map(oc(f)),!0),n(n().selectionRectMode="user",!0),n(n().selectionRect=E,!0)}function C(ie){var J,ue,U;ie.button===0&&((ue=(J=ie.target)==null?void 0:J.releasePointerCapture)==null||ue.call(J,ie.pointerId),!h&&ie.target===i&&(O==null||O(ie)),n(n().selectionRect=null,!0),h&&n(n().selectionRectMode=d.size>0?"nodes":null,!0),h&&((U=e.onselectionend)==null||U.call(e,ie)))}const P=ie=>{var J;if(Array.isArray(r(v))&&r(v).includes(2)){ie.preventDefault();return}(J=e.onpanecontextmenu)==null||J.call(e,{event:ie})},$=ie=>{h&&(ie.stopPropagation(),h=!1)};function O(ie){var J;if(h||n().connection.inProgress){h=!1;return}(J=e.onpaneclick)==null||J.call(e,{event:ie}),n().unselectNodesAndEdges(),n(n().selectionRectMode=null,!0),n(n().selectionRect=null,!0)}var Z=A5();let Y;var T=y(()=>r(b)?void 0:ac(O,i)),q=y(()=>ac(P,i)),ne=c(Z);tr(ne,()=>e.children),s(Z),ln(Z,ie=>i=ie,()=>i),N(ie=>Y=Pe(Z,1,"svelte-flow__pane svelte-flow__container",null,Y,ie),[()=>({draggable:a()===!0||Array.isArray(a())&&a().includes(0),dragging:n().dragging,selection:r(p)})]),_e("click",Z,function(...ie){var J;(J=r(T))==null||J.apply(this,ie)}),Sn("pointerdown",Z,function(...ie){var J;(J=r(b)?w:void 0)==null||J.apply(this,ie)},!0),_e("pointermove",Z,function(...ie){var J;(J=r(b)?k:void 0)==null||J.apply(this,ie)}),_e("pointerup",Z,function(...ie){var J;(J=r(b)?C:void 0)==null||J.apply(this,ie)}),_e("contextmenu",Z,function(...ie){var J;(J=r(q))==null||J.apply(this,ie)}),Sn("click",Z,function(...ie){var J;(J=r(b)?$:void 0)==null||J.apply(this,ie)},!0),g(t,Z),at()}nr(["click","pointermove","pointerup","contextmenu"]);var O5=x('<div class="svelte-flow__viewport xyflow__viewport svelte-flow__container"><!></div>');function P5(t,e){nt(e,!0);var n=O5();let a;var o=c(n);tr(o,()=>e.children),s(n),N(()=>a=yr(n,"",a,{transform:`translate(${e.store.viewport.x??""}px, ${e.store.viewport.y??""}px) scale(${e.store.viewport.zoom??""})`})),g(t,n),at()}function sa(t,e){const{store:n,onDrag:a,onDragStart:o,onDragStop:i,onNodeMouseDown:l}=e,d=Bk({onDrag:a,onDragStart:o,onDragStop:i,onNodeMouseDown:l,getStoreItems:()=>{const{snapGrid:v,viewport:p}=n;return{nodes:n.nodes,nodeLookup:n.nodeLookup,edges:n.edges,nodeExtent:n.nodeExtent,snapGrid:v||[0,0],snapToGrid:!!v,nodeOrigin:n.nodeOrigin,multiSelectionActive:n.multiselectionKeyPressed,domNode:n.domNode,transform:[p.x,p.y,p.zoom],autoPanOnNodeDrag:n.autoPanOnNodeDrag,nodesDraggable:n.nodesDraggable,selectNodesOnDrag:n.selectNodesOnDrag,nodeDragThreshold:n.nodeDragThreshold,unselectNodesAndEdges:n.unselectNodesAndEdges,updateNodePositions:n.updateNodePositions,onSelectionDrag:n.onselectiondrag,onSelectionDragStart:n.onselectiondragstart,onSelectionDragStop:n.onselectiondragstop,panBy:n.panBy}}});function f(v,p){if(p.disabled){d.destroy();return}d.update({domNode:v,noDragClassName:p.noDragClass,handleSelector:p.handleSelector,nodeId:p.nodeId,isSelectable:p.isSelectable,nodeClickDistance:p.nodeClickDistance})}return f(t,e),{update(v){f(t,v)},destroy(){d.destroy()}}}var D5=x('<div aria-live="assertive" aria-atomic="true" class="a11y-live-msg svelte-1r7ybe1"> </div>'),R5=x('<div class="a11y-hidden svelte-1r7ybe1"> </div> <div class="a11y-hidden svelte-1r7ybe1"> </div> <!>',1);function V5(t,e){nt(e,!0);var n=R5(),a=ze(n),o=c(a,!0);s(a);var i=u(a,2),l=c(i,!0);s(i);var d=u(i,2);{var f=v=>{var p=D5(),b=c(p,!0);s(p),N(()=>{Ne(p,"id",`${H5}-${e.store.flowId}`),S(b,e.store.ariaLiveMessage)}),g(v,p)};V(d,v=>{e.store.disableKeyboardA11y||v(f)})}N(()=>{Ne(a,"id",`${of}-${e.store.flowId}`),S(o,e.store.disableKeyboardA11y?e.store.ariaLabelConfig["node.a11yDescription.default"]:e.store.ariaLabelConfig["node.a11yDescription.keyboardDisabled"]),Ne(i,"id",`${sf}-${e.store.flowId}`),S(l,e.store.ariaLabelConfig["edge.a11yDescription.default"])}),g(t,n),at()}const of="svelte-flow__node-desc",sf="svelte-flow__edge-desc",H5="svelte-flow__aria-live";var F5=x("<div><!></div>");function q5(t,e){nt(e,!0);let n=Re(e,"store",15),a=y(()=>Rr(e.node.data,()=>({}),!0)),o=y(()=>Rr(e.node.selected,!1)),i=y(()=>e.node.draggable),l=y(()=>e.node.selectable),d=y(()=>Rr(e.node.deletable,!0)),f=y(()=>e.node.connectable),v=y(()=>e.node.focusable),p=y(()=>Rr(e.node.hidden,!1)),b=y(()=>Rr(e.node.dragging,!1)),h=y(()=>Rr(e.node.style,"")),w=y(()=>e.node.class),k=y(()=>Rr(e.node.type,"default")),C=y(()=>e.node.parentId),P=y(()=>e.node.sourcePosition),$=y(()=>e.node.targetPosition),O=y(()=>Rr(e.node.measured,()=>({width:0,height:0}),!0).width),Z=y(()=>Rr(e.node.measured,()=>({width:0,height:0}),!0).height),Y=y(()=>e.node.initialWidth),T=y(()=>e.node.initialHeight),q=y(()=>e.node.width),ne=y(()=>e.node.height),ie=y(()=>e.node.dragHandle),J=y(()=>Rr(e.node.internals.z,0)),ue=y(()=>e.node.internals.positionAbsolute.x),U=y(()=>e.node.internals.positionAbsolute.y),E=y(()=>e.node.internals.userNode),{id:I}=e.node,_=y(()=>r(i)??n().nodesDraggable),A=y(()=>r(l)??n().elementsSelectable),R=y(()=>r(f)??n().nodesConnectable),te=y(()=>hk(e.node)),F=y(()=>!!e.node.internals.handleBounds),X=y(()=>r(te)&&r(F)),ee=y(()=>r(v)??n().nodesFocusable);function L(fe){return n().parentLookup.has(fe)}let H=y(()=>L(I)),j=me(null),le=null,he=r(k),oe=r(P),Q=r($),W=y(()=>n().nodeTypes[r(k)]??tf),G=y(()=>n().ariaLabelConfig),M={get value(){return r(R)}};o5(I),s5(M);let K=y(()=>{const fe=r(O)===void 0?r(q)??r(Y):r(q),Ce=r(Z)===void 0?r(ne)??r(T):r(ne);if(!(fe===void 0&&Ce===void 0&&r(h)===void 0))return`${r(h)};${fe?`width:${pn(fe)};`:""}${Ce?`height:${pn(Ce)};`:""}`});Lt(()=>{(r(k)!==he||r(P)!==oe||r($)!==Q)&&r(j)!==null&&requestAnimationFrame(()=>{r(j)!==null&&n().updateNodeInternals(new Map([[I,{id:I,nodeElement:r(j),force:!0}]]))}),he=r(k),oe=r(P),Q=r($)}),Lt(()=>{e.resizeObserver&&(!r(X)||r(j)!==le)&&(le&&e.resizeObserver.unobserve(le),r(j)&&e.resizeObserver.observe(r(j)),le=r(j))}),Zo(()=>{var fe;le&&((fe=e.resizeObserver)==null||fe.unobserve(le))});function D(fe){var Ce;r(A)&&(!n().selectNodesOnDrag||!r(_)||n().nodeDragThreshold>0)&&n().handleNodeSelection(I),(Ce=e.onnodeclick)==null||Ce.call(e,{node:r(E),event:fe})}function z(fe){if(!(qu(fe)||n().disableKeyboardA11y))if(Ou.includes(fe.key)&&r(A)){const Ce=fe.key==="Escape";n().handleNodeSelection(I,Ce,r(j))}else r(_)&&e.node.selected&&Object.prototype.hasOwnProperty.call(Yo,fe.key)&&(fe.preventDefault(),n(n().ariaLiveMessage=r(G)["node.a11yDescription.ariaLiveMessage"]({direction:fe.key.replace("Arrow","").toLowerCase(),x:~~e.node.internals.positionAbsolute.x,y:~~e.node.internals.positionAbsolute.y}),!0),n().moveSelectedNodes(Yo[fe.key],fe.shiftKey?4:1))}const B=()=>{var ge;if(n().disableKeyboardA11y||!n().autoPanOnNodeFocus||!((ge=r(j))!=null&&ge.matches(":focus-visible")))return;const{width:fe,height:Ce,viewport:ke}=n();As(new Map([[I,e.node]]),{x:0,y:0,width:fe,height:Ce},[ke.x,ke.y,ke.zoom],!0).length>0||n().setCenter(e.node.position.x+(e.node.measured.width??0)/2,e.node.position.y+(e.node.measured.height??0)/2,{zoom:ke.zoom})};var re=_t(),de=ze(re);{var be=fe=>{var Ce=F5();zr(Ce,()=>({"data-id":I,class:["svelte-flow__node",`svelte-flow__node-${r(k)}`,r(w)],style:r(K),onclick:D,onpointerenter:e.onnodepointerenter?xe=>e.onnodepointerenter({node:r(E),event:xe}):void 0,onpointerleave:e.onnodepointerleave?xe=>e.onnodepointerleave({node:r(E),event:xe}):void 0,onpointermove:e.onnodepointermove?xe=>e.onnodepointermove({node:r(E),event:xe}):void 0,oncontextmenu:e.onnodecontextmenu?xe=>e.onnodecontextmenu({node:r(E),event:xe}):void 0,onkeydown:r(ee)?z:void 0,onfocus:r(ee)?B:void 0,tabIndex:r(ee)?0:void 0,role:e.node.ariaRole??(r(ee)?"group":void 0),"aria-roledescription":"node","aria-describedby":n().disableKeyboardA11y?void 0:`${of}-${n().flowId}`,...e.node.domAttributes,[bs]:{dragging:r(b),selected:r(o),draggable:r(_),connectable:r(R),selectable:r(A),nopan:r(_),parent:r(H)},[no]:{"z-index":r(J),transform:`translate(${r(ue)??""}px, ${r(U)??""}px)`,visibility:r(te)?"visible":"hidden"}}));var ke=c(Ce);ba(ke,()=>r(W),(xe,ge)=>{ge(xe,{get data(){return r(a)},get id(){return I},get selected(){return r(o)},get selectable(){return r(A)},get deletable(){return r(d)},get sourcePosition(){return r(P)},get targetPosition(){return r($)},get zIndex(){return r(J)},get dragging(){return r(b)},get draggable(){return r(_)},get dragHandle(){return r(ie)},get parentId(){return r(C)},get type(){return r(k)},get isConnectable(){return r(R)},get positionAbsoluteX(){return r(ue)},get positionAbsoluteY(){return r(U)},get width(){return r(q)},get height(){return r(ne)}})}),s(Ce),Vr(Ce,(xe,ge)=>sa==null?void 0:sa(xe,ge),()=>({nodeId:I,isSelectable:r(A),disabled:!r(_),handleSelector:r(ie),noDragClass:n().noDragClass,nodeClickDistance:e.nodeClickDistance,onNodeMouseDown:n().handleNodeSelection,onDrag:(xe,ge,De,ce)=>{var se;(se=e.onnodedrag)==null||se.call(e,{event:xe,targetNode:De,nodes:ce})},onDragStart:(xe,ge,De,ce)=>{var se;(se=e.onnodedragstart)==null||se.call(e,{event:xe,targetNode:De,nodes:ce})},onDragStop:(xe,ge,De,ce)=>{var se;(se=e.onnodedragstop)==null||se.call(e,{event:xe,targetNode:De,nodes:ce})},store:n()})),ln(Ce,xe=>m(j,xe),()=>r(j)),g(fe,Ce)};V(de,fe=>{r(p)||fe(be)})}g(t,re),at()}var K5=x('<div class="svelte-flow__nodes"></div>');function j5(t,e){nt(e,!0);let n=Re(e,"store",15);const a=typeof ResizeObserver>"u"?null:new ResizeObserver(i=>{const l=new Map;i.forEach(d=>{const f=d.target.getAttribute("data-id");l.set(f,{id:f,nodeElement:d.target,force:!0})}),n().updateNodeInternals(l)});Zo(()=>{a==null||a.disconnect()});var o=K5();$e(o,21,()=>n().visible.nodes.values(),i=>i.id,(i,l)=>{q5(i,{get node(){return r(l)},get resizeObserver(){return a},get nodeClickDistance(){return e.nodeClickDistance},get onnodeclick(){return e.onnodeclick},get onnodepointerenter(){return e.onnodepointerenter},get onnodepointermove(){return e.onnodepointermove},get onnodepointerleave(){return e.onnodepointerleave},get onnodedrag(){return e.onnodedrag},get onnodedragstart(){return e.onnodedragstart},get onnodedragstop(){return e.onnodedragstop},get onnodecontextmenu(){return e.onnodecontextmenu},get store(){return n()},set store(d){n(d)}})}),s(o),g(t,o),at()}var B5=Cr('<svg class="svelte-flow__edge-wrapper"><g><!></g></svg>');function U5(t,e){nt(e,!0);let n=y(()=>e.edge.id),a=y(()=>e.edge.source),o=y(()=>e.edge.target),i=y(()=>e.edge.sourceX),l=y(()=>e.edge.sourceY),d=y(()=>e.edge.targetX),f=y(()=>e.edge.targetY),v=y(()=>e.edge.sourcePosition),p=y(()=>e.edge.targetPosition),b=y(()=>Rr(e.edge.animated,!1)),h=y(()=>Rr(e.edge.selected,!1)),w=y(()=>e.edge.label),k=y(()=>e.edge.labelStyle),C=y(()=>Rr(e.edge.data,()=>({}),!0)),P=y(()=>e.edge.style),$=y(()=>e.edge.interactionWidth),O=y(()=>Rr(e.edge.type,"default")),Z=y(()=>e.edge.sourceHandle),Y=y(()=>e.edge.targetHandle),T=y(()=>e.edge.markerStart),q=y(()=>e.edge.markerEnd),ne=y(()=>e.edge.selectable),ie=y(()=>e.edge.focusable),J=y(()=>Rr(e.edge.deletable,!0)),ue=y(()=>e.edge.hidden),U=y(()=>e.edge.zIndex),E=y(()=>e.edge.class),I=y(()=>e.edge.ariaLabel);c5(r(n));let _=null,A=y(()=>r(ne)??e.store.elementsSelectable),R=y(()=>r(ie)??e.store.edgesFocusable),te=y(()=>e.store.edgeTypes[r(O)]??rf),F=y(()=>r(T)?`url('#${cs(r(T),e.store.flowId)}')`:void 0),X=y(()=>r(q)?`url('#${cs(r(q),e.store.flowId)}')`:void 0);function ee(oe){var W;const Q=e.store.edgeLookup.get(r(n));Q&&(r(A)&&e.store.handleEdgeSelection(r(n)),(W=e.onedgeclick)==null||W.call(e,{event:oe,edge:Q}))}function L(oe,Q){const W=e.store.edgeLookup.get(r(n));W&&Q({event:oe,edge:W})}function H(oe){if(!e.store.disableKeyboardA11y&&Ou.includes(oe.key)&&r(A)){const{unselectNodesAndEdges:Q,addSelectedEdges:W}=e.store;oe.key==="Escape"?(_==null||_.blur(),Q({edges:[e.edge]})):W([r(n)])}}var j=_t(),le=ze(j);{var he=oe=>{var Q=B5();let W;var G=c(Q);zr(G,()=>({class:["svelte-flow__edge",r(E)],"data-id":r(n),onclick:ee,oncontextmenu:e.onedgecontextmenu?K=>{L(K,e.onedgecontextmenu)}:void 0,onpointerenter:e.onedgepointerenter?K=>{L(K,e.onedgepointerenter)}:void 0,onpointerleave:e.onedgepointerleave?K=>{L(K,e.onedgepointerleave)}:void 0,"aria-label":r(I)===null?void 0:r(I)?r(I):`Edge from ${r(a)} to ${r(o)}`,"aria-describedby":r(R)?`${sf}-${e.store.flowId}`:void 0,role:e.edge.ariaRole??(r(R)?"group":"img"),"aria-roledescription":"edge",onkeydown:r(R)?H:void 0,tabindex:r(R)?0:void 0,...e.edge.domAttributes,[bs]:{animated:r(b),selected:r(h),selectable:r(A)}}));var M=c(G);ba(M,()=>r(te),(K,D)=>{D(K,{get id(){return r(n)},get source(){return r(a)},get target(){return r(o)},get sourceX(){return r(i)},get sourceY(){return r(l)},get targetX(){return r(d)},get targetY(){return r(f)},get sourcePosition(){return r(v)},get targetPosition(){return r(p)},get animated(){return r(b)},get selected(){return r(h)},get label(){return r(w)},get labelStyle(){return r(k)},get data(){return r(C)},get style(){return r(P)},get interactionWidth(){return r($)},get selectable(){return r(A)},get deletable(){return r(J)},get type(){return r(O)},get sourceHandleId(){return r(Z)},get targetHandleId(){return r(Y)},get markerStart(){return r(F)},get markerEnd(){return r(X)}})}),s(G),ln(G,K=>_=K,()=>_),s(Q),N(()=>W=yr(Q,"",W,{"z-index":r(U)})),g(oe,Q)};V(le,oe=>{r(ue)||oe(he)})}g(t,j),at()}var W5=Cr("<defs></defs>");function G5(t,e){nt(e,!1);const n=Gn();Ic();var a=W5();$e(a,5,()=>n.markers,o=>o.id,(o,i)=>{Z5(o,st(()=>r(i)))}),s(a),g(t,a),at()}var Y5=Cr('<polyline class="arrow" fill="none" stroke-linecap="round" stroke-linejoin="round" points="-5,-4 0,0 -5,4"></polyline>'),$5=Cr('<polyline class="arrowclosed" stroke-linecap="round" stroke-linejoin="round" points="-5,-4 0,0 -5,4 -5,-4"></polyline>'),X5=Cr('<marker class="svelte-flow__arrowhead" viewBox="-10 -10 20 20" refX="0" refY="0"><!></marker>');function Z5(t,e){nt(e,!0);let n=Re(e,"width",3,12.5),a=Re(e,"height",3,12.5),o=Re(e,"markerUnits",3,"strokeWidth"),i=Re(e,"orient",3,"auto-start-reverse"),l=Re(e,"color",3,"none");var d=X5(),f=c(d);{var v=b=>{var h=Y5();let w;N(()=>{Ne(h,"stroke-width",e.strokeWidth),w=yr(h,"",w,{stroke:l()})}),g(b,h)},p=b=>{var h=$5();let w;N(()=>{Ne(h,"stroke-width",e.strokeWidth),w=yr(h,"",w,{stroke:l(),fill:l()})}),g(b,h)};V(f,b=>{e.type===Bo.Arrow?b(v):e.type===Bo.ArrowClosed&&b(p,1)})}s(d),N(()=>{Ne(d,"id",e.id),Ne(d,"markerWidth",`${n()}`),Ne(d,"markerHeight",`${a()}`),Ne(d,"markerUnits",o()),Ne(d,"orient",i())}),g(t,d),at()}var Q5=x('<div class="svelte-flow__edges"><svg class="svelte-flow__marker"><!></svg> <!></div>');function J5(t,e){nt(e,!0);let n=Re(e,"store",15);var a=Q5(),o=c(a),i=c(o);G5(i,{}),s(o);var l=u(o,2);$e(l,17,()=>n().visible.edges.values(),d=>d.id,(d,f)=>{U5(d,{get edge(){return r(f)},get onedgeclick(){return e.onedgeclick},get onedgecontextmenu(){return e.onedgecontextmenu},get onedgepointerenter(){return e.onedgepointerenter},get onedgepointerleave(){return e.onedgepointerleave},get store(){return n()},set store(v){n(v)}})}),s(a),g(t,a),at()}var e4=x('<div class="svelte-flow__selection svelte-3lfgml"></div>');function lf(t,e){nt(e,!0);let n=Re(e,"x",3,0),a=Re(e,"y",3,0),o=Re(e,"width",3,0),i=Re(e,"height",3,0),l=Re(e,"isVisible",3,!0);var d=_t(),f=ze(d);{var v=p=>{var b=e4();let h;N(w=>h=yr(b,"",h,w),[()=>({width:typeof o()=="string"?o():pn(o()),height:typeof i()=="string"?i():pn(i()),transform:`translate(${n()}px, ${a()}px)`})]),g(p,b)};V(f,p=>{l()&&p(v)})}g(t,d),at()}var t4=x("<div><!></div>");function r4(t,e){nt(e,!0);let n=me(void 0);Lt(()=>{var b;e.store.disableKeyboardA11y||(b=r(n))==null||b.focus({preventScroll:!0})});let a=y(()=>{if(e.store.selectionRectMode==="nodes"){e.store.nodes;const b=oi(e.store.nodeLookup,{filter:h=>!!h.selected});if(b.width>0&&b.height>0)return b}return null});function o(b){var w;const h=e.store.nodes.filter(k=>k.selected);(w=e.onselectioncontextmenu)==null||w.call(e,{nodes:h,event:b})}function i(b){var w;const h=e.store.nodes.filter(k=>k.selected);(w=e.onselectionclick)==null||w.call(e,{nodes:h,event:b})}function l(b){Object.prototype.hasOwnProperty.call(Yo,b.key)&&(b.preventDefault(),e.store.moveSelectedNodes(Yo[b.key],b.shiftKey?4:1))}var d=_t(),f=ze(d);{var v=b=>{var h=t4();let w;var k=c(h);lf(k,{width:"100%",height:"100%",x:0,y:0}),s(h),Vr(h,(C,P)=>sa==null?void 0:sa(C,P),()=>({disabled:!1,store:e.store,onDrag:(C,P,$,O)=>{var Z;(Z=e.onnodedrag)==null||Z.call(e,{event:C,targetNode:null,nodes:O})},onDragStart:(C,P,$,O)=>{var Z;(Z=e.onnodedragstart)==null||Z.call(e,{event:C,targetNode:null,nodes:O})},onDragStop:(C,P,$,O)=>{var Z;(Z=e.onnodedragstop)==null||Z.call(e,{event:C,targetNode:null,nodes:O})}})),ln(h,C=>m(n,C),()=>r(n)),N(C=>{Pe(h,1,Ve(["svelte-flow__selection-wrapper",e.store.noPanClass]),"svelte-148ck9l"),Ne(h,"role",e.store.disableKeyboardA11y?void 0:"button"),Ne(h,"tabindex",e.store.disableKeyboardA11y?void 0:-1),w=yr(h,"",w,C)},[()=>({width:pn(r(a).width),height:pn(r(a).height),transform:`translate(${r(a).x??""}px, ${r(a).y??""}px)`})]),_e("contextmenu",h,o),_e("click",h,i),_e("keydown",h,function(...C){var P;(P=e.store.disableKeyboardA11y?void 0:l)==null||P.apply(this,C)}),g(b,h)},p=y(()=>e.store.selectionRectMode==="nodes"&&r(a)&&wn(r(a).x)&&wn(r(a).y));V(f,b=>{r(p)&&b(v)})}g(t,d),at()}nr(["contextmenu","click","keydown"]);function n4(t){switch(t){case"ctrl":return 8;case"shift":return 4;case"alt":return 2;case"meta":return 1}}function rr(t,e){let{enabled:n=!0,trigger:a,type:o="keydown"}=e;function i(d){var p;const f=Array.isArray(a)?a:[a],v=[d.metaKey,d.altKey,d.shiftKey,d.ctrlKey].reduce((b,h,w)=>h?b|1<<w:b,0);for(const b of f){const h={preventDefault:!1,enabled:!0,...b},{modifier:w,key:k,callback:C,preventDefault:P,enabled:$}=h;if($){if(d.key!==k)continue;if(w===null||w===!1){if(v!==0)continue}else if(w!==void 0&&((p=w==null?void 0:w[0])==null?void 0:p.length)>0){const Z=Array.isArray(w)?w:[w];let Y=!1;for(const T of Z)if((Array.isArray(T)?T:[T]).reduce((ne,ie)=>ne|n4(ie),0)===v){Y=!0;break}if(!Y)continue}P&&d.preventDefault();const O={node:t,trigger:h,originalEvent:d};t.dispatchEvent(new CustomEvent("shortcut",{detail:O})),C==null||C(O)}}}let l;return n&&(l=Fi(t,o,i)),{update:d=>{const{enabled:f=!0,type:v="keydown"}=d;n&&(!f||o!==v)?l==null||l():!n&&f&&(l=Fi(t,v,i)),n=f,o=v,a=d.trigger},destroy:()=>{l==null||l()}}}function a4(){const t=y(Gn),e=i=>{var v,p;const l=rc(i)?i:r(t).nodeLookup.get(i.id),d=l.parentId?bk(l.position,l.measured,l.parentId,r(t).nodeLookup,r(t).nodeOrigin):l.position,f={...l,position:d,width:((v=l.measured)==null?void 0:v.width)??l.width,height:((p=l.measured)==null?void 0:p.height)??l.height};return ga(f)};function n(i,l,d={replace:!1}){r(t).nodes=on(()=>r(t).nodes).map(f=>{if(f.id===i){const v=typeof l=="function"?l(f):l;return d!=null&&d.replace&&rc(v)?v:{...f,...v}}return f})}function a(i,l,d={replace:!1}){r(t).edges=on(()=>r(t).edges).map(f=>{if(f.id===i){const v=typeof l=="function"?l(f):l;return d.replace&&x5(v)?v:{...f,...v}}return f})}const o=i=>r(t).nodeLookup.get(i);return{zoomIn:r(t).zoomIn,zoomOut:r(t).zoomOut,getInternalNode:o,getNode:i=>{var l;return(l=o(i))==null?void 0:l.internals.userNode},getNodes:i=>i===void 0?r(t).nodes:sc(r(t).nodeLookup,i),getEdge:i=>r(t).edgeLookup.get(i),getEdges:i=>i===void 0?r(t).edges:sc(r(t).edgeLookup,i),setZoom:(i,l)=>{const d=r(t).panZoom;return d?d.scaleTo(i,l):Promise.resolve(!1)},getZoom:()=>r(t).viewport.zoom,setViewport:async(i,l)=>{const d=r(t).viewport;return r(t).panZoom?(await r(t).panZoom.setViewport({x:i.x??d.x,y:i.y??d.y,zoom:i.zoom??d.zoom},l),Promise.resolve(!0)):Promise.resolve(!1)},getViewport:()=>Nc(r(t).viewport),setCenter:async(i,l,d)=>r(t).setCenter(i,l,d),fitView:i=>r(t).fitView(i),fitBounds:async(i,l)=>{if(!r(t).panZoom)return Promise.resolve(!1);const d=Ls(i,r(t).width,r(t).height,r(t).minZoom,r(t).maxZoom,(l==null?void 0:l.padding)??.1);return await r(t).panZoom.setViewport(d,{duration:l==null?void 0:l.duration,ease:l==null?void 0:l.ease,interpolate:l==null?void 0:l.interpolate}),Promise.resolve(!0)},getIntersectingNodes:(i,l=!0,d)=>{const f=Bl(i),v=f?i:e(i);return v?(d||r(t).nodes).filter(p=>{const b=r(t).nodeLookup.get(p.id);if(!b||!f&&p.id===i.id)return!1;const h=ga(b),w=Ba(h,v);return l&&w>0||w>=h.width*h.height||w>=v.width*v.height}):[]},isNodeIntersecting:(i,l,d=!0)=>{const v=Bl(i)?i:e(i);if(!v)return!1;const p=Ba(v,l);return d&&p>0||p>=l.width*l.height||p>=v.width*v.height},deleteElements:async({nodes:i=[],edges:l=[]})=>{var v,p;const{nodes:d,edges:f}=await uk({nodesToRemove:i,edgesToRemove:l,nodes:r(t).nodes,edges:r(t).edges,onBeforeDelete:r(t).onbeforedelete});return d&&(r(t).nodes=on(()=>r(t).nodes).filter(b=>!d.some(({id:h})=>h===b.id))),f&&(r(t).edges=on(()=>r(t).edges).filter(b=>!f.some(({id:h})=>h===b.id))),(d.length>0||f.length>0)&&((p=(v=r(t)).ondelete)==null||p.call(v,{nodes:d,edges:f})),{deletedNodes:d,deletedEdges:f}},screenToFlowPosition:(i,l={snapToGrid:!0})=>{if(!r(t).domNode)return i;const d=l.snapToGrid?r(t).snapGrid:!1,{x:f,y:v,zoom:p}=r(t).viewport,{x:b,y:h}=r(t).domNode.getBoundingClientRect(),w={x:i.x-b,y:i.y-h};return lo(w,[f,v,p],d!==null,d||[1,1])},flowToScreenPosition:i=>{if(!r(t).domNode)return i;const{x:l,y:d,zoom:f}=r(t).viewport,{x:v,y:p}=r(t).domNode.getBoundingClientRect(),b=Wo(i,[l,d,f]);return{x:b.x+v,y:b.y+p}},toObject:()=>structuredClone({nodes:[...r(t).nodes],edges:[...r(t).edges],viewport:{...r(t).viewport}}),updateNode:n,updateNodeData:(i,l,d)=>{var p;const f=(p=r(t).nodeLookup.get(i))==null?void 0:p.internals.userNode;if(!f)return;const v=typeof l=="function"?l(f):l;n(i,b=>({...b,data:d!=null&&d.replace?v:{...b.data,...v}}))},updateEdge:a,getNodesBounds:i=>sk(i,{nodeLookup:r(t).nodeLookup,nodeOrigin:r(t).nodeOrigin}),getHandleConnections:({type:i,id:l,nodeId:d})=>{var f;return Array.from(((f=r(t).connectionLookup.get(`${d}-${i}-${l??null}`))==null?void 0:f.values())??[])}}}function sc(t,e){var a;const n=[];for(const o of e){const i=t.get(o);if(i){const l="internals"in i?(a=i.internals)==null?void 0:a.userNode:i;n.push(l)}}return n}function o4(t,e){nt(e,!0);let n=Re(e,"store",15),a=Re(e,"selectionKey",3,"Shift"),o=Re(e,"multiSelectionKey",19,()=>Go()?"Meta":"Control"),i=Re(e,"deleteKey",3,"Backspace"),l=Re(e,"panActivationKey",3," "),d=Re(e,"zoomActivationKey",19,()=>Go()?"Meta":"Control"),{deleteElements:f}=a4();function v(C){return C!==null&&typeof C=="object"}function p(C){return v(C)?C.modifier||[]:[]}function b(C){return C==null?"":v(C)?C.key:C}function h(C,P){return(Array.isArray(C)?C:[C]).map(O=>{const Z=b(O);return{key:Z,modifier:p(O),enabled:Z!==null,callback:P}})}function w(){n(n().selectionRect=null,!0),n(n().selectionKeyPressed=!1,!0),n(n().multiselectionKeyPressed=!1,!0),n(n().deleteKeyPressed=!1,!0),n(n().panActivationKeyPressed=!1,!0),n(n().zoomActivationKeyPressed=!1,!0)}function k(){const C=n().nodes.filter($=>$.selected),P=n().edges.filter($=>$.selected);f({nodes:C,edges:P})}Sn("blur",Kr,w),Sn("contextmenu",Kr,w),Vr(Kr,(C,P)=>rr==null?void 0:rr(C,P),()=>({trigger:h(a(),()=>n(n().selectionKeyPressed=!0,!0)),type:"keydown"})),Vr(Kr,(C,P)=>rr==null?void 0:rr(C,P),()=>({trigger:h(a(),()=>n(n().selectionKeyPressed=!1,!0)),type:"keyup"})),Vr(Kr,(C,P)=>rr==null?void 0:rr(C,P),()=>({trigger:h(o(),()=>{n(n().multiselectionKeyPressed=!0,!0)}),type:"keydown"})),Vr(Kr,(C,P)=>rr==null?void 0:rr(C,P),()=>({trigger:h(o(),()=>n(n().multiselectionKeyPressed=!1,!0)),type:"keyup"})),Vr(Kr,(C,P)=>rr==null?void 0:rr(C,P),()=>({trigger:h(i(),C=>{!(C.originalEvent.ctrlKey||C.originalEvent.metaKey||C.originalEvent.shiftKey)&&!qu(C.originalEvent)&&(n(n().deleteKeyPressed=!0,!0),k())}),type:"keydown"})),Vr(Kr,(C,P)=>rr==null?void 0:rr(C,P),()=>({trigger:h(i(),()=>n(n().deleteKeyPressed=!1,!0)),type:"keyup"})),Vr(Kr,(C,P)=>rr==null?void 0:rr(C,P),()=>({trigger:h(l(),()=>n(n().panActivationKeyPressed=!0,!0)),type:"keydown"})),Vr(Kr,(C,P)=>rr==null?void 0:rr(C,P),()=>({trigger:h(l(),()=>n(n().panActivationKeyPressed=!1,!0)),type:"keyup"})),Vr(Kr,(C,P)=>rr==null?void 0:rr(C,P),()=>({trigger:h(d(),()=>n(n().zoomActivationKeyPressed=!0,!0)),type:"keydown"})),Vr(Kr,(C,P)=>rr==null?void 0:rr(C,P),()=>({trigger:h(d(),()=>n(n().zoomActivationKeyPressed=!1,!0)),type:"keyup"})),at()}var i4=Cr('<path fill="none" class="svelte-flow__connection-path"></path>'),s4=Cr('<svg class="svelte-flow__connectionline"><g><!></g></svg>');function l4(t,e){nt(e,!0);let n=y(()=>{if(!e.store.connection.inProgress)return"";const l={sourceX:e.store.connection.from.x,sourceY:e.store.connection.from.y,sourcePosition:e.store.connection.fromPosition,targetX:e.store.connection.to.x,targetY:e.store.connection.to.y,targetPosition:e.store.connection.toPosition};switch(e.type){case Mn.Bezier:{const[d]=ju(l);return d}case Mn.Straight:{const[d]=Uu(l);return d}case Mn.Step:case Mn.SmoothStep:{const[d]=Os({...l,borderRadius:e.type===Mn.Step?0:void 0});return d}}});var a=_t(),o=ze(a);{var i=l=>{var d=s4(),f=c(d),v=c(f);{var p=h=>{var w=_t(),k=ze(w);ba(k,()=>e.LineComponent,(C,P)=>{P(C,{})}),g(h,w)},b=h=>{var w=i4();N(()=>{Ne(w,"d",r(n)),yr(w,e.style)}),g(h,w)};V(v,h=>{e.LineComponent?h(p):h(b,-1)})}s(f),s(d),N(h=>{Ne(d,"width",e.store.width),Ne(d,"height",e.store.height),yr(d,e.containerStyle),Pe(f,0,h)},[()=>Ve(["svelte-flow__connection",ok(e.store.connection.isValid)])]),g(l,d)};V(o,l=>{e.store.connection.inProgress&&l(i)})}g(t,a),at()}var c4=x("<div><!></div>");function cf(t,e){nt(e,!0);let n=Re(e,"position",3,"top-right"),a=Je(e,["$$slots","$$events","$$legacy","position","style","class","children"]),o=y(()=>`${n()}`.split("-"));var i=c4();zr(i,d=>({class:d,style:e.style,...a}),[()=>["svelte-flow__panel",e.class,...r(o)]]);var l=c(i);tr(l,()=>e.children??Zr),s(i),g(t,i),at()}var d4=x('<a href="https://svelteflow.dev" target="_blank" rel="noopener noreferrer" aria-label="Svelte Flow attribution">Svelte Flow</a>');function u4(t,e){nt(e,!0);let n=Re(e,"position",3,"bottom-right");var a=_t(),o=ze(a);{var i=l=>{cf(l,{get position(){return n()},class:"svelte-flow__attribution","data-message":"Feel free to remove the attribution or check out how you could support us: https://svelteflow.dev/support-us",children:(d,f)=>{var v=d4();g(d,v)},$$slots:{default:!0}})};V(o,l=>{var d;(d=e.proOptions)!=null&&d.hideAttribution||l(i)})}g(t,a),at()}var f4=x("<div><!></div>");function v4(t,e){nt(e,!0);let n=Re(e,"domNode",15),a=Re(e,"clientWidth",15),o=Re(e,"clientHeight",15),i=y(()=>e.rest.class),l=y(()=>iv(e.rest,["id","class","nodeTypes","edgeTypes","colorMode","isValidConnection","onmove","onmovestart","onmoveend","onflowerror","ondelete","onbeforedelete","onbeforeconnect","onconnect","onconnectstart","onconnectend","onbeforereconnect","onreconnect","onreconnectstart","onreconnectend","onclickconnectstart","onclickconnectend","oninit","onselectionchange","onselectiondragstart","onselectiondrag","onselectiondragstop","onselectionstart","onselectionend","clickConnect","fitView","fitViewOptions","nodeOrigin","nodeDragThreshold","connectionDragThreshold","minZoom","maxZoom","initialViewport","connectionRadius","connectionMode","selectionMode","selectNodesOnDrag","snapGrid","defaultMarkerColor","translateExtent","nodeExtent","onlyRenderVisibleElements","autoPanOnConnect","autoPanOnNodeDrag","colorModeSSR","defaultEdgeOptions","elevateNodesOnSelect","elevateEdgesOnSelect","nodesDraggable","autoPanOnNodeFocus","nodesConnectable","elementsSelectable","nodesFocusable","edgesFocusable","disableKeyboardA11y","noDragClass","noPanClass","noWheelClass","ariaLabelConfig","autoPanSpeed","panOnScrollSpeed","zIndexMode"]));function d(p){p.currentTarget.scrollTo({top:0,left:0,behavior:"auto"}),e.rest.onscroll&&e.rest.onscroll(p)}var f=f4();zr(f,p=>({class:["svelte-flow","svelte-flow__container",r(i),e.colorMode],"data-testid":"svelte-flow__wrapper",role:"application",onscroll:d,...r(l),[no]:p}),[()=>({width:pn(e.width),height:pn(e.height)})],void 0,void 0,"svelte-1ywk9tc");var v=c(f);tr(v,()=>e.children??Zr),s(f),ln(f,p=>n(p),()=>n()),el(f,"clientHeight",o),el(f,"clientWidth",a),g(t,f),at()}var g4=x('<div class="svelte-flow__viewport-back svelte-flow__container"></div> <!> <div class="svelte-flow__edge-labels svelte-flow__container"></div> <!> <!> <!> <div class="svelte-flow__viewport-front svelte-flow__container"></div>',1),p4=x("<!> <!>",1),h4=x("<!> <!> <!> <!> <!>",1);function b4(t,e){nt(e,!0);let n=Re(e,"paneClickDistance",3,1),a=Re(e,"nodeClickDistance",3,1),o=Re(e,"panOnScrollMode",19,()=>ia.Free),i=Re(e,"preventScrolling",3,!0),l=Re(e,"zoomOnScroll",3,!0),d=Re(e,"zoomOnDoubleClick",3,!0),f=Re(e,"zoomOnPinch",3,!0),v=Re(e,"panOnScroll",3,!1),p=Re(e,"panOnScrollSpeed",3,.5),b=Re(e,"panOnDrag",3,!0),h=Re(e,"selectionOnDrag",3,!1),w=Re(e,"connectionLineType",19,()=>Mn.Bezier),k=Re(e,"nodes",31,()=>jt([])),C=Re(e,"edges",31,()=>jt([])),P=Re(e,"viewport",15,void 0),$=Je(e,["$$slots","$$events","$$legacy","width","height","proOptions","selectionKey","deleteKey","panActivationKey","multiSelectionKey","zoomActivationKey","paneClickDistance","nodeClickDistance","onmovestart","onmoveend","onmove","oninit","onnodeclick","onnodecontextmenu","onnodedrag","onnodedragstart","onnodedragstop","onnodepointerenter","onnodepointermove","onnodepointerleave","onselectionclick","onselectioncontextmenu","onselectionstart","onselectionend","onedgeclick","onedgecontextmenu","onedgepointerenter","onedgepointerleave","onpaneclick","onpanecontextmenu","panOnScrollMode","preventScrolling","zoomOnScroll","zoomOnDoubleClick","zoomOnPinch","panOnScroll","panOnScrollSpeed","panOnDrag","selectionOnDrag","connectionLineComponent","connectionLineStyle","connectionLineContainerStyle","connectionLineType","attributionPosition","children","nodes","edges","viewport"]),O=N5({props:$,width:e.width,height:e.height,get nodes(){return k()},set nodes(Y){k(Y)},get edges(){return C()},set edges(Y){C(Y)},get viewport(){return P()},set viewport(Y){P(Y)}});const Z=Qo(ds);Z&&Z.setStore&&Z.setStore(O),hs(ds,{provider:!1,getStore(){return O}}),Lt(()=>{var T;const Y={nodes:O.selectedNodes,edges:O.selectedEdges};(T=on(()=>e.onselectionchange))==null||T(Y);for(const q of O.selectionChangeHandlers.values())q(Y)}),Zo(()=>{O.reset()}),v4(t,{get colorMode(){return O.colorMode},get width(){return e.width},get height(){return e.height},get rest(){return $},get domNode(){return O.domNode},set domNode(Y){O.domNode=Y},get clientWidth(){return O.width},set clientWidth(Y){O.width=Y},get clientHeight(){return O.height},set clientHeight(Y){O.height=Y},children:(Y,T)=>{var q=h4(),ne=ze(q);o4(ne,{get selectionKey(){return e.selectionKey},get deleteKey(){return e.deleteKey},get panActivationKey(){return e.panActivationKey},get multiSelectionKey(){return e.multiSelectionKey},get zoomActivationKey(){return e.zoomActivationKey},get store(){return O},set store(E){O=E}});var ie=u(ne,2);I5(ie,{get panOnScrollMode(){return o()},get preventScrolling(){return i()},get zoomOnScroll(){return l()},get zoomOnDoubleClick(){return d()},get zoomOnPinch(){return f()},get panOnScroll(){return v()},get panOnScrollSpeed(){return p()},get panOnDrag(){return b()},get paneClickDistance(){return n()},get selectionOnDrag(){return h()},get onmovestart(){return e.onmovestart},get onmove(){return e.onmove},get onmoveend(){return e.onmoveend},get oninit(){return e.oninit},get store(){return O},set store(E){O=E},children:(E,I)=>{L5(E,{get onpaneclick(){return e.onpaneclick},get onpanecontextmenu(){return e.onpanecontextmenu},get onselectionstart(){return e.onselectionstart},get onselectionend(){return e.onselectionend},get panOnDrag(){return b()},get paneClickDistance(){return n()},get selectionOnDrag(){return h()},get store(){return O},set store(_){O=_},children:(_,A)=>{var R=p4(),te=ze(R);P5(te,{get store(){return O},set store(X){O=X},children:(X,ee)=>{var L=g4(),H=u(ze(L),2);J5(H,{get onedgeclick(){return e.onedgeclick},get onedgecontextmenu(){return e.onedgecontextmenu},get onedgepointerenter(){return e.onedgepointerenter},get onedgepointerleave(){return e.onedgepointerleave},get store(){return O},set store(oe){O=oe}});var j=u(H,4);l4(j,{get type(){return w()},get LineComponent(){return e.connectionLineComponent},get containerStyle(){return e.connectionLineContainerStyle},get style(){return e.connectionLineStyle},get store(){return O},set store(oe){O=oe}});var le=u(j,2);j5(le,{get nodeClickDistance(){return a()},get onnodeclick(){return e.onnodeclick},get onnodecontextmenu(){return e.onnodecontextmenu},get onnodepointerenter(){return e.onnodepointerenter},get onnodepointermove(){return e.onnodepointermove},get onnodepointerleave(){return e.onnodepointerleave},get onnodedrag(){return e.onnodedrag},get onnodedragstart(){return e.onnodedragstart},get onnodedragstop(){return e.onnodedragstop},get store(){return O},set store(oe){O=oe}});var he=u(le,2);r4(he,{get onselectionclick(){return e.onselectionclick},get onselectioncontextmenu(){return e.onselectioncontextmenu},get onnodedrag(){return e.onnodedrag},get onnodedragstart(){return e.onnodedragstart},get onnodedragstop(){return e.onnodedragstop},get store(){return O},set store(oe){O=oe}}),Se(2),g(X,L)},$$slots:{default:!0}});var F=u(te,2);{let X=y(()=>!!(O.selectionRect&&O.selectionRectMode==="user")),ee=y(()=>{var le;return(le=O.selectionRect)==null?void 0:le.width}),L=y(()=>{var le;return(le=O.selectionRect)==null?void 0:le.height}),H=y(()=>{var le;return(le=O.selectionRect)==null?void 0:le.x}),j=y(()=>{var le;return(le=O.selectionRect)==null?void 0:le.y});lf(F,{get isVisible(){return r(X)},get width(){return r(ee)},get height(){return r(L)},get x(){return r(H)},get y(){return r(j)}})}g(_,R)},$$slots:{default:!0}})},$$slots:{default:!0}});var J=u(ie,2);u4(J,{get proOptions(){return e.proOptions},get position(){return e.attributionPosition}});var ue=u(J,2);V5(ue,{get store(){return O}});var U=u(ue,2);tr(U,()=>e.children??Zr),g(Y,q)},$$slots:{default:!0}}),at()}var x4=x("<button><!></button>");function mo(t,e){let n=Je(e,["$$slots","$$events","$$legacy","class","bgColor","bgColorHover","color","colorHover","borderColor","onclick","children"]);var a=x4();zr(a,()=>({type:"button",onclick:e.onclick,class:["svelte-flow__controls-button",e.class],...n,[no]:{"--xy-controls-button-background-color-props":e.bgColor,"--xy-controls-button-background-color-hover-props":e.bgColorHover,"--xy-controls-button-color-props":e.color,"--xy-controls-button-color-hover-props":e.colorHover,"--xy-controls-button-border-color-props":e.borderColor}}));var o=c(a);tr(o,()=>e.children??Zr),s(a),g(t,a)}var m4=Cr('<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><path d="M32 18.133H18.133V32h-4.266V18.133H0v-4.266h13.867V0h4.266v13.867H32z"></path></svg>');function _4(t){var e=m4();g(t,e)}var y4=Cr('<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 5"><path d="M0 0h32v4.2H0z"></path></svg>');function w4(t){var e=y4();g(t,e)}var k4=Cr('<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 30"><path d="M3.692 4.63c0-.53.4-.938.939-.938h5.215V0H4.708C2.13 0 0 2.054 0 4.63v5.216h3.692V4.631zM27.354 0h-5.2v3.692h5.17c.53 0 .984.4.984.939v5.215H32V4.631A4.624 4.624 0 0027.354 0zm.954 24.83c0 .532-.4.94-.939.94h-5.215v3.768h5.215c2.577 0 4.631-2.13 4.631-4.707v-5.139h-3.692v5.139zm-23.677.94c-.531 0-.939-.4-.939-.94v-5.138H0v5.139c0 2.577 2.13 4.707 4.708 4.707h5.138V25.77H4.631z"></path></svg>');function S4(t){var e=k4();g(t,e)}var C4=Cr('<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 25 32"><path d="M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0 8 0 4.571 3.429 4.571 7.619v3.048H3.048A3.056 3.056 0 000 13.714v15.238A3.056 3.056 0 003.048 32h18.285a3.056 3.056 0 003.048-3.048V13.714a3.056 3.056 0 00-3.048-3.047zM12.19 24.533a3.056 3.056 0 01-3.047-3.047 3.056 3.056 0 013.047-3.048 3.056 3.056 0 013.048 3.048 3.056 3.056 0 01-3.048 3.047zm4.724-13.866H7.467V7.619c0-2.59 2.133-4.724 4.723-4.724 2.591 0 4.724 2.133 4.724 4.724v3.048z"></path></svg>');function E4(t){var e=C4();g(t,e)}var M4=Cr('<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 25 32"><path d="M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0c-4.114 1.828-1.37 2.133.305 2.438 1.676.305 4.42 2.59 4.42 5.181v3.048H3.047A3.056 3.056 0 000 13.714v15.238A3.056 3.056 0 003.048 32h18.285a3.056 3.056 0 003.048-3.048V13.714a3.056 3.056 0 00-3.048-3.047zM12.19 24.533a3.056 3.056 0 01-3.047-3.047 3.056 3.056 0 013.047-3.048 3.056 3.056 0 013.048 3.048 3.056 3.056 0 01-3.048 3.047z"></path></svg>');function z4(t){var e=M4();g(t,e)}var N4=x("<!> <!>",1),T4=x("<!> <!> <!> <!> <!> <!>",1);function I4(t,e){nt(e,!0);let n=Re(e,"position",3,"bottom-left"),a=Re(e,"orientation",3,"vertical"),o=Re(e,"showZoom",3,!0),i=Re(e,"showFitView",3,!0),l=Re(e,"showLock",3,!0),d=Je(e,["$$slots","$$events","$$legacy","position","orientation","showZoom","showFitView","showLock","style","class","buttonBgColor","buttonBgColorHover","buttonColor","buttonColorHover","buttonBorderColor","fitViewOptions","children","before","after"]),f=y(Gn);const v={bgColor:e.buttonBgColor,bgColorHover:e.buttonBgColorHover,color:e.buttonColor,colorHover:e.buttonColorHover,borderColor:e.buttonBorderColor};let p=y(()=>r(f).nodesDraggable||r(f).nodesConnectable||r(f).elementsSelectable),b=y(()=>r(f).viewport.zoom<=r(f).minZoom),h=y(()=>r(f).viewport.zoom>=r(f).maxZoom),w=y(()=>r(f).ariaLabelConfig),k=y(()=>a()==="horizontal"?"horizontal":"vertical");const C=()=>{r(f).zoomIn()},P=()=>{r(f).zoomOut()},$=()=>{r(f).fitView(e.fitViewOptions)},O=()=>{let Z=!r(p);r(f).nodesDraggable=Z,r(f).nodesConnectable=Z,r(f).elementsSelectable=Z};{let Z=y(()=>["svelte-flow__controls",r(k),e.class]);cf(t,st({get class(){return r(Z)},get position(){return n()},"data-testid":"svelte-flow__controls",get"aria-label"(){return r(w)["controls.ariaLabel"]},get style(){return e.style}},()=>d,{children:(Y,T)=>{var q=T4(),ne=ze(q);{var ie=X=>{var ee=_t(),L=ze(ee);tr(L,()=>e.before),g(X,ee)};V(ne,X=>{e.before&&X(ie)})}var J=u(ne,2);{var ue=X=>{var ee=N4(),L=ze(ee);mo(L,st({onclick:C,class:"svelte-flow__controls-zoomin",get title(){return r(w)["controls.zoomIn.ariaLabel"]},get"aria-label"(){return r(w)["controls.zoomIn.ariaLabel"]},get disabled(){return r(h)}},()=>v,{children:(j,le)=>{_4(j)},$$slots:{default:!0}}));var H=u(L,2);mo(H,st({onclick:P,class:"svelte-flow__controls-zoomout",get title(){return r(w)["controls.zoomOut.ariaLabel"]},get"aria-label"(){return r(w)["controls.zoomOut.ariaLabel"]},get disabled(){return r(b)}},()=>v,{children:(j,le)=>{w4(j)},$$slots:{default:!0}})),g(X,ee)};V(J,X=>{o()&&X(ue)})}var U=u(J,2);{var E=X=>{mo(X,st({class:"svelte-flow__controls-fitview",onclick:$,get title(){return r(w)["controls.fitView.ariaLabel"]},get"aria-label"(){return r(w)["controls.fitView.ariaLabel"]}},()=>v,{children:(ee,L)=>{S4(ee)},$$slots:{default:!0}}))};V(U,X=>{i()&&X(E)})}var I=u(U,2);{var _=X=>{mo(X,st({class:"svelte-flow__controls-interactive",onclick:O,get title(){return r(w)["controls.interactive.ariaLabel"]},get"aria-label"(){return r(w)["controls.interactive.ariaLabel"]}},()=>v,{children:(ee,L)=>{var H=_t(),j=ze(H);{var le=oe=>{z4(oe)},he=oe=>{E4(oe)};V(j,oe=>{r(p)?oe(le):oe(he,-1)})}g(ee,H)},$$slots:{default:!0}}))};V(I,X=>{l()&&X(_)})}var A=u(I,2);{var R=X=>{var ee=_t(),L=ze(ee);tr(L,()=>e.children),g(X,ee)};V(A,X=>{e.children&&X(R)})}var te=u(A,2);{var F=X=>{var ee=_t(),L=ze(ee);tr(L,()=>e.after),g(X,ee)};V(te,X=>{e.after&&X(F)})}g(Y,q)},$$slots:{default:!0}}))}at()}var kn;(function(t){t.Lines="lines",t.Dots="dots",t.Cross="cross"})(kn||(kn={}));var A4=Cr("<circle></circle>");function L4(t,e){var n=A4();N(()=>{Ne(n,"cx",e.radius),Ne(n,"cy",e.radius),Ne(n,"r",e.radius),Pe(n,0,Ve(["svelte-flow__background-pattern","dots",e.class]))}),g(t,n)}var O4=Cr("<path></path>");function P4(t,e){nt(e,!0);var n=O4();N(()=>{Ne(n,"stroke-width",e.lineWidth),Ne(n,"d",`M${e.dimensions[0]/2} 0 V${e.dimensions[1]} M0 ${e.dimensions[1]/2} H${e.dimensions[0]}`),Pe(n,0,Ve(["svelte-flow__background-pattern",e.variant,e.class]))}),g(t,n),at()}const D4={[kn.Dots]:1,[kn.Lines]:1,[kn.Cross]:6};var R4=Cr('<svg data-testid="svelte-flow__background"><pattern patternUnits="userSpaceOnUse"><!></pattern><rect x="0" y="0" width="100%" height="100%"></rect></svg>');function V4(t,e){nt(e,!0);let n=Re(e,"variant",19,()=>kn.Dots),a=Re(e,"gap",3,20),o=Re(e,"lineWidth",3,1),i=y(Gn),l=y(()=>n()===kn.Dots),d=y(()=>n()===kn.Cross),f=y(()=>Array.isArray(a())?a():[a(),a()]),v=y(()=>`background-pattern-${r(i).flowId}-${e.id??""}`),p=y(()=>[r(f)[0]*r(i).viewport.zoom||1,r(f)[1]*r(i).viewport.zoom||1]),b=y(()=>(e.size??D4[n()])*r(i).viewport.zoom),h=y(()=>r(d)?[r(b),r(b)]:r(p)),w=y(()=>r(l)?[r(b)/2,r(b)/2]:[r(h)[0]/2,r(h)[1]/2]);var k=R4();let C;var P=c(k),$=c(P);{var O=T=>{{let q=y(()=>r(b)/2);L4(T,{get radius(){return r(q)},get class(){return e.patternClass}})}},Z=T=>{P4(T,{get dimensions(){return r(h)},get variant(){return n()},get lineWidth(){return o()},get class(){return e.patternClass}})};V($,T=>{r(l)?T(O):T(Z,-1)})}s(P);var Y=u(P);s(k),N(()=>{Pe(k,0,Ve(["svelte-flow__background","svelte-flow__container",e.class])),C=yr(k,"",C,{"--xy-background-color-props":e.bgColor,"--xy-background-pattern-color-props":e.patternColor}),Ne(P,"id",r(v)),Ne(P,"x",r(i).viewport.x%r(p)[0]),Ne(P,"y",r(i).viewport.y%r(p)[1]),Ne(P,"width",r(p)[0]),Ne(P,"height",r(p)[1]),Ne(P,"patternTransform",`translate(-${r(w)[0]},-${r(w)[1]})`),Ne(Y,"fill",`url(#${r(v)})`)}),g(t,k),at()}const H4={md:{root:"gap-[var(--reddb-spatial-gap-lg)] px-[var(--reddb-spatial-inset-md)] py-[var(--reddb-spatial-inset-sm)]"},sm:{root:"min-h-[var(--reddb-spatial-control-height-md)] gap-[var(--reddb-spatial-gap-md)] px-[var(--reddb-spatial-inset-sm)] py-[var(--reddb-spatial-gap-md)]"}},lc={comfortable:"md",compact:"sm"},F4={true:{root:"cursor-pointer"},false:{root:""}},q4={true:{root:"bg-foreground/10",title:"font-medium text-foreground"},false:{root:""}},K4=Jr({slots:{root:"flex w-full items-center border-b border-muted text-start",leading:"flex shrink-0 items-center",text:"flex min-w-0 flex-col gap-0.5",title:"truncate text-sm font-medium text-foreground",description:"truncate text-xs text-ink-muted",trailing:"ms-auto flex shrink-0 items-center gap-[var(--reddb-spatial-gap-md)]"},variants:{size:H4,interactive:F4,selected:q4},defaultVariants:{size:"md",interactive:!1,selected:!1}});var j4=x("<span><!></span>"),B4=x("<span> </span>"),U4=x("<span> </span>"),W4=x("<!> <!>",1),G4=x("<span><!></span>"),Y4=x("<!> <span><!></span> <!>",1);function $4(t,e){nt(e,!0);const n=Re(e,"selected",3,!1),a=Je(e,["$$slots","$$events","$$legacy","title","description","href","size","density","selected","leading","trailing","children","class"]),o=y(()=>e.href!==void 0?"a":e.onclick?"button":"div"),i=y(()=>r(o)!=="div"),l=y(()=>r(o)==="a"?{href:e.href}:r(o)==="button"?{type:"button"}:{}),d=y(()=>e.size??(e.density!==void 0?lc[e.density]:"md")),f=y(()=>K4({size:r(d),interactive:r(i),selected:n()}));Lt(()=>{e.density!==void 0&&(`${e.density}`,`${lc[e.density]}`,void 0)});var v=_t(),p=ze(v);xs(p,()=>r(o),!1,(b,h)=>{zr(b,q=>({...a,...r(l),class:q,"data-size":r(d),"aria-current":n()&&r(o)==="a"?"true":void 0}),[()=>r(i)?_s({ink:"inherit",selected:n(),class:r(f).root({class:e.class})}):r(f).root({class:e.class})]);var w=Y4(),k=ze(w);{var C=q=>{var ne=j4(),ie=c(ne);tr(ie,()=>e.leading),s(ne),N(J=>Pe(ne,1,J),[()=>Ve(r(f).leading())]),g(q,ne)};V(k,q=>{e.leading&&q(C)})}var P=u(k,2),$=c(P);{var O=q=>{var ne=_t(),ie=ze(ne);tr(ie,()=>e.children),g(q,ne)},Z=q=>{var ne=W4(),ie=ze(ne);{var J=E=>{var I=B4(),_=c(I,!0);s(I),N(A=>{Pe(I,1,A),S(_,e.title)},[()=>Ve(r(f).title())]),g(E,I)};V(ie,E=>{e.title&&E(J)})}var ue=u(ie,2);{var U=E=>{var I=U4(),_=c(I,!0);s(I),N(A=>{Pe(I,1,A),S(_,e.description)},[()=>Ve(r(f).description())]),g(E,I)};V(ue,E=>{e.description&&E(U)})}g(q,ne)};V($,q=>{e.children?q(O):q(Z,-1)})}s(P);var Y=u(P,2);{var T=q=>{var ne=G4(),ie=c(ne);tr(ie,()=>e.trailing),s(ne),N(J=>Pe(ne,1,J),[()=>Ve(r(f).trailing())]),g(q,ne)};V(Y,q=>{e.trailing&&q(T)})}N(q=>Pe(P,1,q),[()=>Ve(r(f).text())]),g(h,w)}),g(t,v),at()}const cc={true:{root:"border-foreground bg-foreground/10 font-medium text-foreground"},false:{root:"border-transparent bg-transparent text-ink-muted"}},X4={true:{root:"pointer-events-none opacity-50"},false:{root:""}},_o=Jr({slots:{root:"inline-flex w-full items-center gap-[var(--reddb-spatial-gap-md)] rounded-s-none rounded-e-md border-s-2 min-h-[var(--reddb-spatial-control-height-md)] px-[var(--reddb-spatial-inset-sm)] text-sm leading-tight focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-focus",icon:"order-first shrink-0",label:"truncate",trailing:"ms-auto shrink-0"},variants:{current:cc,active:{true:cc.true,false:{}},disabled:X4},defaultVariants:{current:!1,disabled:!1}});var Z4=x('<span aria-hidden="true"><!></span>'),Q4=x("<span><!></span>"),J4=x("<span><!></span> <!> <!>",1);function eS(t,e){nt(e,!0);const n=Re(e,"current",3,!1),a=Re(e,"disabled",3,!1),o=Je(e,["$$slots","$$events","$$legacy","label","href","current","active","disabled","icon","trailing","children","class"]),i=y(()=>e.active!==void 0?e.active:n()!==!1),l=y(()=>typeof n()=="string"?n():"page");Lt(()=>{e.active});const d=y(()=>e.href!==void 0?"a":"button"),f=y(()=>r(d)==="a"?{href:a()?void 0:e.href,tabindex:a()?-1:void 0}:{type:"button",disabled:a()});var v=_t(),p=ze(v);xs(p,()=>r(d),!1,(b,h)=>{zr(b,q=>({...o,...r(f),"data-nav-item":!0,class:q,"aria-current":r(i)?r(l):void 0,"aria-disabled":a()?"true":void 0}),[()=>_s({selected:r(i),class:_o({current:r(i),disabled:a()}).root({class:e.class})})]);var w=J4(),k=ze(w),C=c(k);{var P=q=>{var ne=_t(),ie=ze(ne);tr(ie,()=>e.children),g(q,ne)},$=q=>{var ne=bt();N(()=>S(ne,e.label??"")),g(q,ne)};V(C,q=>{e.children?q(P):q($,-1)})}s(k);var O=u(k,2);{var Z=q=>{var ne=Z4(),ie=c(ne);tr(ie,()=>e.icon),s(ne),N(J=>Pe(ne,1,J),[()=>Ve(_o().icon())]),g(q,ne)};V(O,q=>{e.icon&&q(Z)})}var Y=u(O,2);{var T=q=>{var ne=Q4(),ie=c(ne);tr(ie,()=>e.trailing),s(ne),N(J=>Pe(ne,1,J),[()=>Ve(_o().trailing())]),g(q,ne)};V(Y,q=>{e.trailing&&q(T)})}N(q=>Pe(k,1,q),[()=>Ve(_o().label())]),g(h,w)}),g(t,v),at()}const dc={tinted:{neutral:"border-transparent bg-muted text-foreground",info:"border-transparent bg-feedback-info-surface text-feedback-info-foreground",success:"border-transparent bg-feedback-success-surface text-feedback-success-foreground",warning:"border-transparent bg-feedback-warning-surface text-feedback-warning-foreground",danger:"border-transparent bg-feedback-danger-surface text-feedback-danger-foreground"},filled:{neutral:"border-transparent bg-foreground text-background",info:"border-transparent bg-feedback-info-foreground text-on-feedback",success:"border-transparent bg-feedback-success-foreground text-on-feedback",warning:"border-transparent bg-feedback-warning-foreground text-on-feedback",danger:"border-transparent bg-feedback-danger-foreground text-on-feedback"},outline:{neutral:"border-muted bg-transparent text-foreground",info:"border-feedback-info-border bg-transparent text-feedback-info-foreground",success:"border-feedback-success-border bg-transparent text-feedback-success-foreground",warning:"border-feedback-warning-border bg-transparent text-feedback-warning-foreground",danger:"border-feedback-danger-border bg-transparent text-feedback-danger-foreground"}},tS="border-transparent bg-primary text-on-primary",rS={neutral:"",info:"",success:"",warning:"",danger:""},nS={tinted:"",filled:"",outline:"",neutral:"",primary:""},aS={sm:"px-2.5 py-0.5 text-xs",md:"px-[var(--reddb-spatial-inset-sm)] py-1 text-sm"},oS=Jr({base:"inline-flex items-center gap-1.5 rounded-full border leading-tight whitespace-nowrap",variants:{tone:rS,variant:nS,size:aS},compoundVariants:[...Object.entries(dc).flatMap(([t,e])=>Object.entries(e).map(([n,a])=>({variant:t,tone:n,class:a}))),...Object.entries(dc.tinted).map(([t,e])=>({variant:"neutral",tone:t,class:e})),{variant:"primary",class:tS}],defaultVariants:{tone:"neutral",variant:"tinted",size:"md"}}),iS=Jr({base:["relative -me-1 inline-flex items-center justify-center rounded-full border border-transparent bg-transparent p-0.5 leading-tight","before:absolute before:left-1/2 before:top-1/2 before:size-[var(--reddb-spatial-control-height-sm)] before:-translate-x-1/2 before:-translate-y-1/2 before:content-['']"].join(" ")});var sS=x('<button type="button" data-pill-dismiss=""><span aria-hidden="true">×</span></button>'),lS=x("<span><!> <!></span>");function Ln(t,e){nt(e,!0);const n=Re(e,"tone",3,"neutral"),a=Re(e,"variant",3,"tinted"),o=Re(e,"size",3,"md"),i=Re(e,"dismissLabel",3,"Remove"),l=Je(e,["$$slots","$$events","$$legacy","tone","variant","size","ondismiss","onDismiss","dismissLabel","class","children"]),d=y(()=>e.ondismiss??e.onDismiss);Lt(()=>{e.onDismiss,a(),a()});var f=lS();zr(f,h=>({...l,class:h,"data-pill":!0,"data-tone":n(),"data-variant":a()}),[()=>oS({tone:n(),variant:a(),size:o(),class:e.class})]);var v=c(f);tr(v,()=>e.children??Zr);var p=u(v,2);{var b=h=>{var w=sS();N(k=>{Pe(w,1,k),Ne(w,"aria-label",i())},[()=>Ve(_s({ink:"inherit",class:iS()}))]),_e("click",w,()=>r(d)()),g(h,w)};V(p,h=>{r(d)&&h(b)})}s(f),g(t,f),at()}nr(["click"]);function cS(t,e){Fr(t,{tone:"neutral",children:(n,a)=>{Se();var o=bt();N(()=>S(o,e.label??e.role)),g(n,o)},$$slots:{default:!0}})}var dS=x('<span class="font-mono text-sm text-ink-muted"> </span>'),uS=x('<span class="text-sm text-ink-muted"> </span>'),fS=x('<span class="flex items-baseline gap-[var(--reddb-spatial-gap-md)]"><span> </span> <!></span> <!>',1),vS=x('<div class="flex flex-col px-[var(--reddb-spatial-inset-md)] pb-[var(--reddb-spatial-inset-md)]"><!></div>'),gS=x('<div class="w-full px-[var(--reddb-spatial-inset-md)] pb-[var(--reddb-spatial-inset-md)]"><!></div>'),pS=x("<div><!> <!> <!></div>");function xn(t,e){let n=Re(e,"wide",3,!1),a=Re(e,"class",3,"");var o=pS(),i=c(o);{let p=y(()=>n()?void 0:e.action);$4(i,{get trailing(){return r(p)},children:(b,h)=>{var w=fS(),k=ze(w),C=c(k),P=c(C,!0);s(C);var $=u(C,2);{var O=T=>{var q=dS(),ne=c(q,!0);s(q),N(()=>S(ne,e.hint)),g(T,q)};V($,T=>{e.hint&&T(O)})}s(k);var Z=u(k,2);{var Y=T=>{var q=uS(),ne=c(q,!0);s(q),N(()=>S(ne,e.description)),g(T,q)};V(Z,T=>{e.description&&T(Y)})}N(()=>S(P,e.title)),g(b,w)},$$slots:{default:!0}})}var l=u(i,2);{var d=p=>{var b=vS(),h=c(b);tr(h,()=>e.action),s(b),g(p,b)};V(l,p=>{n()&&e.action&&p(d)})}var f=u(l,2);{var v=p=>{var b=gS(),h=c(b);tr(h,()=>e.below),s(b),g(p,b)};V(f,p=>{e.below&&p(v)})}s(o),N(()=>{Ne(o,"data-wide",n()?"":void 0),Pe(o,1,Ve(a()))}),g(t,o)}var hS=x('<span aria-hidden="true" class="text-ink-muted"><!></span>'),bS=x("<div><!> <!></div>");function yo(t,e){let n=Re(e,"actions",19,()=>e.meta),a=Re(e,"rule",3,!1),o=Re(e,"size",3,"sm"),i=Je(e,["$$slots","$$events","$$legacy","icon","meta","actions","rule","size","class"]);var l=bS(),d=c(l);{var f=p=>{var b=hS(),h=c(b);tr(h,()=>e.icon),s(b),g(p,b)};V(d,p=>{e.icon&&p(f)})}var v=u(d,2);yp(v,st(()=>i,{get actions(){return n()},get rule(){return a()},get size(){return o()},class:"min-w-0 flex-1"})),s(l),N(()=>Pe(l,1,`flex items-center gap-[var(--reddb-spatial-gap-md)] ${e.class??""??""}`)),g(t,l)}var xS=x('<!> <!> <div><div class="stripe svelte-hw5n61"></div> <div class="body svelte-hw5n61"><div class="head svelte-hw5n61"><span class="role svelte-hw5n61"> </span> <span class="dot svelte-hw5n61"></span></div> <div class="label svelte-hw5n61"> </div> <div class="meta svelte-hw5n61"><span class="metric svelte-hw5n61"><span class="n svelte-hw5n61"> </span><span class="u svelte-hw5n61">colls</span></span> <span class="sep svelte-hw5n61">·</span> <span class="metric svelte-hw5n61"><span class="n svelte-hw5n61"> </span><span class="u svelte-hw5n61">entities</span></span></div></div></div>',1);function mS(t,e){nt(e,!0);const n=y(()=>e.data.role==="primary"?"role-primary":e.data.role==="replica"?"role-replica":"role-embedded");var a=xS(),o=ze(a);ha(o,{type:"target",get position(){return Nt.Left},style:"opacity:0;pointer-events:none"});var i=u(o,2);ha(i,{type:"source",get position(){return Nt.Right},style:"opacity:0;pointer-events:none"});var l=u(i,2);let d;var f=u(c(l),2),v=c(f),p=c(v),b=c(p,!0);s(p),Se(2),s(v);var h=u(v,2),w=c(h,!0);s(h);var k=u(h,2),C=c(k),P=c(C),$=c(P,!0);s(P),Se(),s(C);var O=u(C,4),Z=c(O),Y=c(Z,!0);s(Z),Se(),s(O),s(k),s(f),s(l),N(T=>{d=Pe(l,1,`card ${r(n)??""}`,"svelte-hw5n61",d,{selected:e.selected}),S(b,e.data.role),S(w,e.data.label),S($,e.data.collections),S(Y,T)},[()=>e.data.entities.toLocaleString()]),g(t,a),at()}const Aa={action:"policy:read",resource:{kind:"policy",name:"*"}};function Pn(t){return[t.action,t.resource.kind,t.resource.name,t.resource.tenant??"",t.current_tenant??""].join("")}function _S(t){const e=`${t.kind}:${t.name}`;return t.tenant?`${e} @ ${t.tenant}`:e}function df(t,e){const n=t==null?void 0:t.trim();if(!n||n==="*")return{kind:"resource",name:"*",tenant:e};const a=n.includes(":")?":":n.includes("/")?"/":null;if(!a)return{kind:"resource",name:n,tenant:e};const[o,...i]=n.split(a),l=i.join(a)||"*";return{kind:o||"resource",name:l,tenant:e}}function uf(t){var a;const e=[Aa],n=new Set(e.map(Pn));for(const o of t){const i={action:((a=o.action)==null?void 0:a.trim())||"*",resource:df(o.resource,o.tenant)},l=Pn(i);n.has(l)||(n.add(l),e.push(i))}return e}function yS(t,e){const n=uf(t),a=new Map(e.map(o=>[Pn(o),o]));return n.map(o=>{const i=a.get(Pn(o)),l=t.filter(d=>{var v;const f={action:((v=d.action)==null?void 0:v.trim())||"*",resource:df(d.resource,d.tenant)};return Pn(f)===Pn(o)});return{id:Pn(o),action:o.action,resource:o.resource,resourceLabel:_S(o.resource),allowed:(i==null?void 0:i.allowed)===!0,reason:i==null?void 0:i.reason,effects:[...new Set(l.map(d=>d.effect).filter(d=>!!d))],principals:[...new Set(l.map(d=>d.principal).filter(d=>!!d))],policies:[...new Set(l.map((d,f)=>d.name??d.id??`policy ${f+1}`).filter(d=>!!d))]}})}const ff={name:"server-crash",size:24,node:[["path",{d:"M6 10H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v4a2 2 0 0 1-2 2h-2"}],["path",{d:"M6 14H4a2 2 0 0 0-2 2v4a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-4a2 2 0 0 0-2-2h-2"}],["path",{d:"M6 6h.01"}],["path",{d:"M6 18h.01"}],["path",{d:"m13 6-4 6h6l-4 6"}]]};ff.node;function wS(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return ff}}))}var kS=x('<div class="absolute w-[220px] rounded border border-line-2 bg-bg-1 p-3 shadow-md motion-safe:animate-pulse"><div class="mb-3 flex items-center gap-2"><div></div> <div class="h-3 rounded bg-bg-3"></div></div> <div class="grid grid-cols-2 gap-2"><div class="h-9 rounded border border-line-1 bg-bg-2"></div> <div class="h-9 rounded border border-line-1 bg-bg-2"></div></div></div>'),SS=x('<div class="flex h-[30px] items-center gap-2.5 rounded px-2"><div class="h-1.5 w-1.5 rounded-full bg-bg-2 motion-safe:animate-pulse"></div> <div class="h-3 flex-1 rounded bg-bg-2 motion-safe:animate-pulse"></div> <div class="h-3 rounded bg-bg-2 motion-safe:animate-pulse"></div></div>'),CS=x('<div class="absolute inset-0 overflow-hidden bg-bg-0" aria-busy="true" aria-label="Loading cluster topology"><div class="absolute inset-0 cluster-skeleton-grid svelte-gcvueu"></div> <svg class="absolute inset-0 h-full w-full" aria-hidden="true"><line x1="50%" y1="38%" x2="32%" y2="54%" class="cluster-skeleton-edge motion-safe:animate-pulse svelte-gcvueu"></line><line x1="50%" y1="38%" x2="68%" y2="54%" class="cluster-skeleton-edge motion-safe:animate-pulse svelte-gcvueu"></line></svg> <!> <div class="absolute top-4 left-4 z-10 w-64 rounded border border-line-2 bg-bg-1 p-3 shadow-md"><div class="mb-3 h-3 w-16 rounded bg-bg-2 motion-safe:animate-pulse"></div> <div class="mb-3 grid grid-cols-2 gap-3 border-b border-line-1 pb-3"><div><div class="mb-2 h-3 w-16 rounded bg-bg-2 motion-safe:animate-pulse"></div> <div class="h-6 w-12 rounded bg-bg-2 motion-safe:animate-pulse"></div></div> <div><div class="mb-2 h-3 w-14 rounded bg-bg-2 motion-safe:animate-pulse"></div> <div class="h-6 w-20 rounded bg-bg-2 motion-safe:animate-pulse"></div></div></div> <div class="grid gap-1"></div></div></div>'),ES=x('<div class="p-6"><!></div>'),MS=x('<div class="p-6"><!></div>'),zS=x("<!> <!>",1),NS=x('<button><span></span> <span class="font-mono text-[11px] text-fg-1 flex-1 truncate"> </span> <span class="font-mono text-[10px] text-fg-3"> </span></button>'),TS=x('<div class="grid grid-cols-2 gap-3 mb-3 pb-3 border-b border-line-1"><div><div class="type-label">reachable</div> <div class="font-mono text-fg-0 text-[18px] font-semibold mt-0.5"> <span class="text-fg-3 text-[11px] font-normal ml-1"> </span></div></div> <div><div class="type-label">entities</div> <div class="font-mono text-primary-text text-[18px] font-semibold mt-0.5"> </div></div></div> <div class="grid gap-1"></div>',1),IS=x('<div class="text-[10px] text-fg-3 mt-1"> </div>'),AS=x('<div class="mb-1 rounded border border-line-1 bg-bg-2 p-3"><div class="type-label"> </div> <div> </div> <!></div>'),LS=x('<span class="text-fg-3"> </span>'),OS=x('<span class="text-fg-3">· usage not exposed</span>'),PS=x(' <span class="text-fg-3"> </span>',1),DS=x('<span class="text-fg-3">not sampled</span>'),RS=x('<div class="pt-2 mt-1 border-t border-line-1"></div> <div class="grid grid-cols-[120px_1fr] gap-3 items-baseline"><span class="text-fg-3">host</span> <span class="text-fg-0"> </span></div> <div class="grid grid-cols-[120px_1fr] gap-3 items-baseline"><span class="text-fg-3">process</span> <span class="text-fg-0"> </span></div> <div class="grid grid-cols-[120px_1fr] gap-3 items-baseline"><span class="text-fg-3">connections</span> <span class="text-fg-0"> <span class="text-fg-3"> </span></span></div> <div class="grid grid-cols-[120px_1fr] gap-3 items-baseline"><span class="text-fg-3">collections</span> <span class="text-fg-0"> </span></div> <div class="grid grid-cols-[120px_1fr] gap-3 items-baseline"><span class="text-fg-3">entities</span> <span class="text-primary-text"> </span></div> <div class="grid grid-cols-[120px_1fr] gap-3 items-baseline"><span class="text-fg-3">cross refs</span> <span class="text-fg-0"> </span></div> <div class="grid grid-cols-[120px_1fr] gap-3 items-baseline"><span class="text-fg-3">store memory</span> <span class="text-fg-0"> </span></div> <div class="grid grid-cols-[120px_1fr] gap-3 items-baseline"><span class="text-fg-3">storage</span> <span class="text-fg-0"> </span></div> <div class="grid grid-cols-[120px_1fr] gap-3 items-baseline"><span class="text-fg-3">ram</span> <span class="text-fg-0"> <span class="text-fg-3"> </span></span></div> <div class="grid grid-cols-[120px_1fr] gap-3 items-baseline"><span class="text-fg-3">cpu</span> <span class="text-fg-0"> <!></span></div> <div class="grid grid-cols-[120px_1fr] gap-3 items-baseline"><span class="text-fg-3">throughput</span> <span class="text-fg-0"><!></span></div> <div class="grid grid-cols-[120px_1fr] gap-3 items-baseline"><span class="text-fg-3">avg response</span> <span class="text-fg-0"> </span></div> <div class="grid grid-cols-[120px_1fr] gap-3 items-baseline"><span class="text-fg-3">uptime</span> <span class="text-fg-0"> </span></div>',1),VS=x('<div class="grid grid-cols-[120px_1fr] gap-3 items-baseline"><span class="text-fg-3">commit mark</span> <span class="text-fg-0"> <span class="text-fg-3"> </span></span></div>'),HS=x('<div class="grid grid-cols-[120px_1fr] gap-3 items-baseline"><span class="text-fg-3">resyncs</span> <span class="text-fg-0"> <span class="text-fg-3"> </span></span></div>'),FS=x('<span class="text-amber-400">↻</span>'),qS=x('<div class="flex items-center gap-2 text-[10px]"><span></span> <span class="text-fg-1 flex-1 truncate"> <!></span> <span class="text-fg-3"> </span> <span> </span></div>'),KS=x('<div class="grid gap-1 pl-1"></div>'),jS=x('<div class="grid grid-cols-[120px_1fr] gap-3 items-baseline"><span class="text-fg-3">wal lsn</span> <span class="text-fg-0"> </span></div> <!> <div class="grid grid-cols-[120px_1fr] gap-3 items-baseline"><span class="text-fg-3">archive lag</span> <span class="text-fg-0"> <span class="text-fg-3">records</span></span></div> <!> <div class="grid grid-cols-[120px_1fr] gap-3 items-baseline"><span class="text-fg-3">replicas</span> <span class="text-fg-0"> </span></div> <!>',1),BS=x('<span class="text-fg-3 ml-1"> </span>'),US=x('<div class="grid grid-cols-[120px_1fr] gap-3 items-baseline"><span class="text-fg-3">lag</span> <span><!> <!></span></div>'),WS=x('<div class="grid grid-cols-[120px_1fr] gap-3 items-baseline"><span class="text-fg-3">last error</span> <span class="text-primary-text break-all"> </span></div>'),GS=x('<div class="grid grid-cols-[120px_1fr] gap-3 items-baseline"><span class="text-fg-3">primary</span> <span class="text-fg-0 break-all"> </span></div> <div class="grid grid-cols-[120px_1fr] gap-3 items-baseline"><span class="text-fg-3">applied</span> <span class="text-fg-0"> <span class="text-fg-3"> </span></span></div> <!> <!>',1),YS=x('<div class="pt-2 mt-1 border-t border-line-1"></div> <!>',1),$S=x('you are <span class="text-primary-text"> </span> <span class="text-fg-3"> </span>',1),XS=x('<span class="text-fg-3"> </span>'),ZS=x('<span class="text-fg-3">…</span>'),QS=x('<span class="rounded border border-line-1 px-1.5 py-0.5 text-[10px] text-fg-1"> </span>'),JS=x('<span class="rounded border border-line-1 px-1.5 py-0.5 text-[10px] text-fg-1"> </span>'),eC=x('<span class="rounded border border-line-1 px-1.5 py-0.5 text-[10px] text-fg-1"> </span>'),tC=x('<span class="rounded border border-line-1 px-1.5 py-0.5 text-[10px] text-fg-3" title="reddb did not grant policy:read to this principal">policies · no grant</span>'),rC=x('<div class="grid grid-cols-[120px_1fr] gap-3 items-baseline"><span class="text-fg-3">metalanguage</span> <span class="text-fg-0"><!></span></div> <div class="grid grid-cols-[120px_1fr] gap-3 items-start"><span class="text-fg-3"></span> <span class="flex flex-wrap items-center gap-1.5"><!> <!> <!> <button type="button" class="rounded border border-line-2 bg-bg-2 px-1.5 py-0.5 text-[10px] text-fg-1 hover:border-line-3 hover:text-fg-0">Security →</button></span></div>',1),nC=x('<div class="grid grid-cols-[120px_1fr] gap-3 items-baseline"><span class="text-fg-3">metalanguage</span> <span class="text-fg-3">connect to this node to inspect users · tenants · policies</span></div>'),aC=x('<span class="rounded border border-line-1 px-1.5 py-0.5 text-[10px] text-fg-3"> </span>'),oC=x('<div class="pt-2 mt-1 border-t border-line-1"></div> <div class="grid grid-cols-[120px_1fr] gap-3 items-start"><span class="text-fg-3">not exposed</span> <span class="flex flex-wrap gap-1"></span></div>',1),iC=x('<div class="grid gap-2 font-mono text-[11px]"><!> <div class="grid grid-cols-[120px_1fr] gap-3 items-baseline"><span class="text-fg-3">topology</span> <span><!></span></div> <div class="grid grid-cols-[120px_1fr] gap-3 items-baseline"><span class="text-fg-3">label</span> <span class="text-fg-0"> </span></div> <div class="grid grid-cols-[120px_1fr] gap-3 items-baseline"><span class="text-fg-3">url</span> <code class="text-fg-0 break-all"> </code></div> <div class="grid grid-cols-[120px_1fr] gap-3 items-baseline"><span class="text-fg-3">deployment</span> <span><!></span></div> <div class="grid grid-cols-[120px_1fr] gap-3 items-baseline"><span class="text-fg-3">evidence</span> <span class="text-fg-1"> </span></div> <div class="grid grid-cols-[120px_1fr] gap-3 items-baseline"><span class="text-fg-3">role</span> <span><!></span></div> <div class="grid grid-cols-[120px_1fr] gap-3 items-baseline"><span class="text-fg-3">replicas</span> <span class="text-fg-0"><!></span></div> <!> <!> <div class="pt-2 mt-1 border-t border-line-1"></div> <!> <!></div>'),sC=x('<div class="absolute top-4 right-4 z-10 w-[420px] max-h-[calc(100vh-96px)] overflow-auto"><!></div>'),lC=x('<div class="absolute inset-0"><!></div> <div class="absolute top-4 left-4 z-10 w-64"><!></div> <!>',1);function cC(t,e){nt(e,!0);function n(M){return jv(M.cluster,M.replication,M.preset.role)}const a={embedded:"embedded · standalone",serverless:"serverless",replicated:"primary / replica",server:"server · standalone",unknown:"unknown"};let o=me(jt([])),i=me(!0),l=me(null);const d=[{id:"primary",x:"50%",y:"38%",role:"primary",label:92},{id:"replica",x:"68%",y:"54%",role:"replica",label:112},{id:"embedded",x:"32%",y:"54%",role:"embedded",label:104}],f=Array.from({length:3},(M,K)=>K),v=new Map,p=new Map,b=6e4,h={cluster:mS},w=y(()=>{const M=Rn.current==="dark";return{ok:M?"#4ade80":"#16a34a",warn:M?"#fbbf24":"#b45309",pattern:M?"#1c2027":"#d4d4d8",labelBg:M?"#0d0f13":"#fafafa",labelStroke:M?"#2a2e36":"#d4d4d8"}});async function k(){const M=Date.now(),K=await Promise.all(Sv.map(async D=>{const z=v.get(D.id)??0,B=p.get(D.id)??0;if(z>=2&&M-B<b)return r(o).find(de=>de.id===D.id)??{id:D.id,preset:D,reachable:!1,role:"standalone"};p.set(D.id,M);const re=new Cv(D.url);try{const[de,be,fe]=await Promise.all([St.track(`cluster · ${D.label} stats`,()=>re.stats()),St.track(`cluster · ${D.label} replication`,()=>re.replication()).catch(()=>{}),St.track(`cluster · ${D.label} status`,()=>re.clusterStatus()).catch(()=>{})]);return v.set(D.id,0),{id:D.id,preset:D,reachable:!0,role:(be==null?void 0:be.role)??"standalone",stats:de,replication:be,cluster:fe}}catch{return v.set(D.id,z+1),{id:D.id,preset:D,reachable:!1,role:"standalone"}}}));m(o,K,!0),m(i,!1)}Lt(()=>{if(xr.locked){m(i,!1);return}m(i,!0),k();const M=setInterval(k,5e3);return()=>clearInterval(M)});const C=y(()=>r(o).filter(M=>M.reachable)),P=y(()=>r(C).map(M=>{var D,z;const K=M.role==="primary"?0:M.role==="replica"?1:-1;return{id:M.id,type:"cluster",position:{x:320+K*320,y:200},data:{label:M.preset.label,role:M.role,collections:((D=M.stats)==null?void 0:D.store.collection_count)??0,entities:((z=M.stats)==null?void 0:z.store.total_entities)??0,url:M.preset.url}}})),$=y(()=>r(C).filter(M=>M.role==="replica").map(M=>{var re,de;const K=r(C).find(be=>be.role==="primary");if(!K)return null;const D=((re=M.replication)==null?void 0:re.last_applied_lsn)!==void 0&&((de=M.replication)==null?void 0:de.last_seen_primary_lsn)!==void 0?M.replication.last_seen_primary_lsn-M.replication.last_applied_lsn:null,z=D===0,B=z?r(w).ok:r(w).warn;return{id:`${K.id}-${M.id}`,source:K.id,target:M.id,type:"smoothstep",animated:!0,style:`stroke:${B};stroke-width:1.5;opacity:0.7`,label:D===null?"":z?"✓ in sync":`lag ${D}`,labelStyle:`fill:${B};font-family:JetBrains Mono Variable;font-size:10px;font-weight:500`,labelBgStyle:`fill:${r(w).labelBg};stroke:${r(w).labelStroke};stroke-width:1`,labelBgPadding:[6,4],labelBgBorderRadius:4}}).filter(M=>M!==null)),O=y(()=>r(o).find(M=>M.id===r(l))),Z=y(()=>r(O)?R(r(O)):null),Y=y(()=>r(O)?n(r(O)):"unknown"),T=y(()=>r(O)?j(r(O)):[]),q=y(()=>r(C).reduce((M,K)=>{var D;return M+(((D=K.stats)==null?void 0:D.store.total_entities)??0)},0)),ne=xa(),ie=y(()=>{var M;return!!r(O)&&Be.connected&&!xr.locked&&((M=Be.active)==null?void 0:M.url)===r(O).preset.url});let J=me(null);Lt(()=>{const M=r(O);if(r(l),!M||!r(ie)){m(J,null);return}const K=Be.client;if(!K){m(J,null);return}let D=!1;return(async()=>{const z={};try{const B=await St.track("cluster · whoami",()=>K.whoami());z.username=B.username,z.role=B.role}catch(B){z.error=B.message}try{z.users=(await St.track("cluster · users",()=>K.users())).length}catch{}try{z.tenants=(await St.track("cluster · tenants",()=>K.tenants())).length}catch{}try{const[B]=await St.track("cluster · auth.can policy read",()=>K.authCan([Aa]));if(z.policyAllowed=(B==null?void 0:B.allowed)===!0,z.policyAllowed)try{z.policies=(await St.track("cluster · policies",()=>K.policies())).length}catch{}}catch{z.policyAllowed=!1}D||m(J,z,!0)})(),()=>{D=!0}});function ue(M){var D,z;const K=jr((z=(D=M.cluster)==null?void 0:D.deployment)==null?void 0:z.shape);return K||(M.preset.id==="embedded"?"embedded":M.preset.id.startsWith("docker-")?"server · docker preset":"server")}function U(M){var z,B,re,de,be;const K=(re=(B=(z=M.cluster)==null?void 0:z.transports)==null?void 0:B.active)==null?void 0:re[0];if(K)return`${K.transport} · ${K.bind_addr}`;const D=(be=(de=M.cluster)==null?void 0:de.storage)==null?void 0:be.remote_backend;return D?`remote backend · ${D}`:M.preset.description}function E(M){switch(n(M)){case"replicated":return"neutral";case"embedded":return"success";case"serverless":return"info";default:return"neutral"}}function I(M){return M==null||!Number.isFinite(M)?"not exposed":M<1e3?`${Math.round(M)} ms`:M<6e4?`${(M/1e3).toFixed(M<1e4?2:1)} s`:`${Math.floor(M/6e4)}m ${Math.round(M%6e4/1e3)}s`}function _(M){return M==null||!Number.isFinite(M)?"not exposed":M<1?`${Math.round(M*1e3)} ms`:M<60?`${M.toFixed(1)}s`:`${Math.floor(M/60)}m ${Math.round(M%60)}s`}function A(M){const K=M.replication;return(K==null?void 0:K.last_applied_lsn)===void 0||K.last_seen_primary_lsn===void 0?null:K.last_seen_primary_lsn-K.last_applied_lsn}function R(M){var z,B,re,de,be,fe,Ce,ke,xe;const K=n(M);if(K==="replicated"){if(M.role==="primary"){const De=((z=M.replication)==null?void 0:z.replicas)??[],ce=Uv(M.replication);return De.length===0?{label:"replication lag",value:"no replicas",tone:"neutral"}:ce===null?{label:"replication lag",value:"not exposed",tone:"neutral"}:{label:"replication lag",value:ce===0?"✓ in sync":_(ce),tone:ce===0?"success":ce<5?"warning":"danger",sub:`${De.length} replica${De.length===1?"":"s"} · worst case`}}const ge=A(M);return{label:"replica lag",value:ge===null?"not exposed":ge===0?"✓ in sync":`${ge.toLocaleString()} lsn`,tone:ge===null?"neutral":ge===0?"success":"warning",sub:(B=M.replication)==null?void 0:B.state}}if(K==="serverless"){const ge=Bv(M.cluster);return{label:"boot time",value:I(ge),tone:ge===null?"neutral":ge<1e3?"success":ge<5e3?"info":"warning",sub:(re=M.cluster)!=null&&re.phase?`phase · ${M.cluster.phase}`:void 0}}if(K==="embedded"){const ge=jr((be=(de=M.cluster)==null?void 0:de.storage)==null?void 0:be.db_size_bytes);return{label:"on-disk size",value:ge===void 0?"not exposed":te(ge),tone:ge===void 0?"neutral":"success",sub:`${(((fe=M.stats)==null?void 0:fe.store.total_entities)??0).toLocaleString()} entities`}}const D=jr((ke=(Ce=M.cluster)==null?void 0:Ce.storage)==null?void 0:ke.db_size_bytes);return{label:"entities",value:(((xe=M.stats)==null?void 0:xe.store.total_entities)??0).toLocaleString(),tone:"neutral",sub:D===void 0?void 0:`${te(D)} on disk`}}function te(M){return M===void 0||!Number.isFinite(M)?"not exposed":M>=1024**3?`${(M/1024**3).toFixed(1)} GiB`:M>=1024**2?`${(M/1024**2).toFixed(1)} MiB`:M>=1024?`${(M/1024).toFixed(1)} KiB`:`${M} B`}function F(M,K){return K<=0?"n/a":`${Math.round(M/K*100)}%`}function X(M){const K=Math.max(0,Math.round((Date.now()-M)/1e3));return K>=86400?`${Math.floor(K/86400)}d ${Math.floor(K%86400/3600)}h`:K>=3600?`${Math.floor(K/3600)}h ${Math.floor(K%3600/60)}m`:K>=60?`${Math.floor(K/60)}m ${K%60}s`:`${K}s`}function ee(M){return M===void 0||!Number.isFinite(M)?"not exposed":`${M.toLocaleString(void 0,{maximumFractionDigits:1})}/s`}function L(M){return M===void 0||!Number.isFinite(M)?"not exposed":`${M.toLocaleString(void 0,{maximumFractionDigits:1})} ms`}function H(M){var B,re,de,be,fe,Ce;const K=jr((re=(B=M.cluster)==null?void 0:B.storage)==null?void 0:re.db_size_bytes),D=(be=(de=M.cluster)==null?void 0:de.storage)==null?void 0:be.remote_backend;if(K!==void 0)return D?`${te(K)} · ${D}`:te(K);if(D)return`remote · ${D}`;const z=Kv((Ce=(fe=M.cluster)==null?void 0:fe.storage)==null?void 0:Ce.db_size_bytes);return z?`not exposed (${z})`:"not exposed"}function j(M){return Wv(M.cluster).map(K=>K.path.replace(/_/g," "))}var le=_t(),he=ze(le);{var oe=M=>{var K=CS(),D=u(c(K),4);$e(D,17,()=>d,re=>re.id,(re,de)=>{var be=kS(),fe=c(be),Ce=c(fe),ke=u(Ce,2);s(fe),Se(2),s(be),N(xe=>{yr(be,`left: ${r(de).x}; top: ${r(de).y}; transform: translate(-50%, -50%);`),Pe(Ce,1,xe,"svelte-gcvueu"),yr(ke,`width: ${r(de).label}px`)},[()=>Ve(["h-2 w-2 rounded-full",r(de).role==="primary"?"bg-role-primary":r(de).role==="replica"?"bg-role-replica":"bg-role-embedded"].join(" "))]),g(re,be)});var z=u(D,2),B=u(c(z),4);$e(B,20,()=>f,re=>re,(re,de)=>{var be=SS(),fe=u(c(be),4);s(be),N(()=>yr(fe,`width: ${de===0?36:24}px`)),g(re,be)}),s(B),s(z),s(K),g(M,K)},Q=M=>{var K=ES(),D=c(K);Hr(D,{get icon(){return Un},title:"Locked",message:"Unlock the secure store to probe configured nodes. Automatic probes are paused until you authenticate this session."}),s(K),g(M,K)},W=M=>{var K=MS(),D=c(K);Hr(D,{get icon(){return wS},title:"No reachable nodes",message:"None of the configured reddb endpoints responded. Start one and the topology will populate automatically.",hint:"docker compose -f docker/compose.yml up -d"}),s(K),g(M,K)},G=M=>{var K=lC(),D=ze(K),z=c(D);b4(z,{get nodes(){return r(P)},get edges(){return r($)},get nodeTypes(){return h},fitView:!0,fitViewOptions:{padding:.25,maxZoom:1},proOptions:{hideAttribution:!0},nodesDraggable:!1,nodesConnectable:!1,onnodeclick:fe=>m(l,fe.node.id,!0),children:(fe,Ce)=>{var ke=zS(),xe=ze(ke);V4(xe,{get variant(){return kn.Dots},bgColor:"transparent",get patternColor(){return r(w).pattern},gap:32,size:1});var ge=u(xe,2);I4(ge,{position:"bottom-right"}),g(fe,ke)},$$slots:{default:!0}}),s(D);var B=u(D,2),re=c(B);En(re,{title:"cluster",children:(fe,Ce)=>{var ke=TS(),xe=ze(ke),ge=c(xe),De=u(c(ge),2),ce=c(De,!0),se=u(ce),ve=c(se);s(se),s(De),s(ge);var Ae=u(ge,2),Le=u(c(Ae),2),we=c(Le,!0);s(Le),s(Ae),s(xe);var Ie=u(xe,2);$e(Ie,21,()=>r(C),gr,(Ee,Me)=>{var Te=NS(),Xe=c(Te),Fe=u(Xe,2),Qe=c(Fe,!0);s(Fe);var lt=u(Fe,2),ct=c(lt,!0);s(lt),s(Te),N((Ke,He,Ue)=>{Pe(Te,1,Ke,"svelte-gcvueu"),Pe(Xe,1,He,"svelte-gcvueu"),S(Qe,r(Me).preset.label),S(ct,Ue)},[()=>Ve(["flex items-center gap-2.5 px-2 py-1.5 rounded text-left bg-transparent border-0 cursor-pointer transition-colors",r(l)===r(Me).id?"bg-bg-2":"hover:bg-bg-2"].join(" ")),()=>Ve(["w-1.5 h-1.5 rounded-full shrink-0",r(Me).role==="primary"?"bg-role-primary":r(Me).role==="replica"?"bg-role-replica":"bg-role-embedded"].join(" ")),()=>{var Ke;return((Ke=r(Me).stats)==null?void 0:Ke.store.total_entities.toLocaleString())??0}]),_e("click",Te,()=>m(l,r(Me).id,!0)),g(Ee,Te)}),s(Ie),N(Ee=>{S(ce,r(C).length),S(ve,`of ${r(o).length??""}`),S(we,Ee)},[()=>r(q).toLocaleString()]),g(fe,ke)},$$slots:{default:!0}}),s(B);var de=u(B,2);{var be=fe=>{var Ce=sC(),ke=c(Ce);En(ke,{get title(){return`node · ${r(O).id??""}`},raised:!0,children:(xe,ge)=>{var De=iC(),ce=c(De);{var se=it=>{var dt=AS(),It=c(dt),Bt=c(It,!0);s(It);var or=u(It,2),ir=c(or,!0);s(or);var sr=u(or,2);{var wr=lr=>{var mr=IS(),Er=c(mr,!0);s(mr),N(()=>S(Er,r(Z).sub)),g(lr,mr)};V(sr,lr=>{r(Z).sub&&lr(wr)})}s(dt),N(lr=>{S(Bt,r(Z).label),Pe(or,1,lr,"svelte-gcvueu"),S(ir,r(Z).value)},[()=>Ve(["font-mono text-[22px] font-semibold mt-0.5 leading-none",r(Z).tone==="success"?"text-feedback-success-foreground":r(Z).tone==="warning"?"text-feedback-warning-foreground":r(Z).tone==="danger"?"text-feedback-danger-foreground":"text-fg-0"].join(" "))]),g(it,dt)};V(ce,it=>{r(Z)&&it(se)})}var ve=u(ce,2),Ae=u(c(ve),2),Le=c(Ae);{let it=y(()=>E(r(O)));Fr(Le,{get tone(){return r(it)},children:(dt,It)=>{Se();var Bt=bt();N(()=>S(Bt,a[r(Y)])),g(dt,Bt)},$$slots:{default:!0}})}s(Ae),s(ve);var we=u(ve,2),Ie=u(c(we),2),Ee=c(Ie,!0);s(Ie),s(we);var Me=u(we,2),Te=u(c(Me),2),Xe=c(Te,!0);s(Te),s(Me);var Fe=u(Me,2),Qe=u(c(Fe),2),lt=c(Qe);{let it=y(()=>E(r(O)));Fr(lt,{get tone(){return r(it)},children:(dt,It)=>{Se();var Bt=bt();N(or=>S(Bt,or),[()=>ue(r(O))]),g(dt,Bt)},$$slots:{default:!0}})}s(Qe),s(Fe);var ct=u(Fe,2),Ke=u(c(ct),2),He=c(Ke,!0);s(Ke),s(ct);var Ue=u(ct,2),ot=u(c(Ue),2),ae=c(ot);{let it=y(()=>r(O).role==="primary"?"primary":r(O).role==="replica"?"replica":"embedded");cS(ae,{get role(){return r(it)},get label(){return r(O).role}})}s(ot),s(Ue);var tt=u(Ue,2),Ze=u(c(tt),2),We=c(Ze);{var ut=it=>{var dt=bt();N(()=>S(dt,r(O).replication.replica_count??0)),g(it,dt)},Et=it=>{var dt=bt();N(()=>S(dt,`connected to ${r(O).replication.primary_addr??"primary"??""}`)),g(it,dt)},Tt=it=>{var dt=bt("none exposed");g(it,dt)};V(We,it=>{var dt,It;((dt=r(O).replication)==null?void 0:dt.role)==="primary"?it(ut):((It=r(O).replication)==null?void 0:It.role)==="replica"?it(Et,1):it(Tt,-1)})}s(Ze),s(tt);var Mt=u(tt,2);{var Ct=it=>{const dt=y(()=>{var Ft,zt;return jr((zt=(Ft=r(O).cluster)==null?void 0:Ft.system)==null?void 0:zt.total_memory_bytes)??r(O).stats.system.total_memory_bytes}),It=y(()=>{var Ft,zt;return jr((zt=(Ft=r(O).cluster)==null?void 0:Ft.system)==null?void 0:zt.available_memory_bytes)??r(O).stats.system.available_memory_bytes}),Bt=y(()=>{var Ft;return jr((Ft=r(O).cluster)==null?void 0:Ft.throughput)});var or=RS(),ir=u(ze(or),2),sr=u(c(ir),2),wr=c(sr);s(sr),s(ir);var lr=u(ir,2),mr=u(c(lr),2),Er=c(mr);s(mr),s(lr);var Tr=u(lr,2),kr=u(c(Tr),2),Ir=c(kr),ye=u(Ir),Oe=c(ye);s(ye),s(kr),s(Tr);var qe=u(Tr,2),Ye=u(c(qe),2),et=c(Ye,!0);s(Ye),s(qe);var rt=u(qe,2),Ge=u(c(rt),2),yt=c(Ge,!0);s(Ge),s(rt);var ft=u(rt,2),pt=u(c(ft),2),At=c(pt,!0);s(pt),s(ft);var Pt=u(ft,2),er=u(c(Pt),2),ur=c(er,!0);s(er),s(Pt);var Vt=u(Pt,2),Dt=u(c(Vt),2),Gt=c(Dt,!0);s(Dt),s(Vt);var Ut=u(Vt,2),ar=u(c(Ut),2),fr=c(ar),vr=u(fr),Yt=c(vr);s(vr),s(ar),s(Ut);var kt=u(Ut,2),Ht=u(c(kt),2),Wt=c(Ht),cr=u(Wt);{var Qt=Ft=>{var zt=LS(),$t=c(zt);s(zt),N(_r=>S($t,`· ${_r??""}%`),[()=>{var _r,rn;return jr((rn=(_r=r(O).cluster)==null?void 0:_r.system)==null?void 0:rn.cpu_usage)}]),g(Ft,zt)},Mr=y(()=>{var Ft,zt;return jr((zt=(Ft=r(O).cluster)==null?void 0:Ft.system)==null?void 0:zt.cpu_usage)!==void 0}),Rt=Ft=>{var zt=OS();g(Ft,zt)};V(cr,Ft=>{r(Mr)?Ft(Qt):Ft(Rt,-1)})}s(Ht),s(kt);var gt=u(kt,2),ht=u(c(gt),2),dr=c(ht);{var Nr=Ft=>{var zt=PS(),$t=ze(zt),_r=u($t),rn=c(_r);s(_r),N((Tn,ma,di)=>{S($t,`${Tn??""} `),S(rn,`· r ${ma??""} / w ${di??""}`)},[()=>ee(r(Bt).requests_per_second),()=>ee(r(Bt).reads_per_second),()=>ee(r(Bt).writes_per_second)]),g(Ft,zt)},Lr=Ft=>{var zt=DS();g(Ft,zt)};V(dr,Ft=>{r(Bt)?Ft(Nr):Ft(Lr,-1)})}s(ht),s(gt);var Dr=u(gt,2),Jt=u(c(Dr),2),br=c(Jt,!0);s(Jt),s(Dr);var Or=u(Dr,2),$r=u(c(Or),2),tn=c($r,!0);s($r),s(Or),N((Ft,zt,$t,_r,rn,Tn,ma,di,zf)=>{S(wr,`${r(O).stats.system.hostname??""} · ${r(O).stats.system.os??""}/${r(O).stats.system.arch??""}`),S(Er,`pid ${r(O).stats.system.pid??""}`),S(Ir,`${r(O).stats.active_connections??""} active `),S(Oe,`/ ${r(O).stats.idle_connections??""} idle`),S(et,r(O).stats.store.collection_count),S(yt,Ft),S(At,zt),S(ur,$t),S(Gt,_r),S(fr,`${rn??""} used `),S(Yt,`/ ${Tn??""} (${ma??""})`),S(Wt,`${r(O).stats.system.cpu_cores??""} cores `),S(br,di),S(tn,zf)},[()=>r(O).stats.store.total_entities.toLocaleString(),()=>r(O).stats.store.cross_ref_count.toLocaleString(),()=>te(r(O).stats.store.total_memory_bytes),()=>H(r(O)),()=>te(r(dt)-r(It)),()=>te(r(dt)),()=>F(r(dt)-r(It),r(dt)),()=>{var Ft,zt;return L((zt=jr((Ft=r(O).cluster)==null?void 0:Ft.latency))==null?void 0:zt.avg_response_ms)},()=>{var Ft;return((Ft=r(O).cluster)==null?void 0:Ft.uptime_secs)!==void 0?X(Date.now()-r(O).cluster.uptime_secs*1e3):X(r(O).stats.started_at_unix_ms)}]),g(it,or)};V(Mt,it=>{r(O).stats&&it(Ct)})}var xt=u(Mt,2);{var mt=it=>{var dt=YS(),It=u(ze(dt),2);{var Bt=ir=>{var sr=jS(),wr=ze(sr),lr=u(c(wr),2),mr=c(lr,!0);s(lr),s(wr);var Er=u(wr,2);{var Tr=ft=>{var pt=VS(),At=u(c(pt),2),Pt=c(At),er=u(Pt),ur=c(er);s(er),s(At),s(pt),N(()=>{var Vt,Dt;S(Pt,`${r(O).replication.commit_watermark??""} `),S(ur,`· ${((Dt=(Vt=r(O).cluster)==null?void 0:Vt.replication)==null?void 0:Dt.commit_policy)??""??""}`)}),g(ft,pt)};V(Er,ft=>{r(O).replication.commit_watermark!==void 0&&ft(Tr)})}var kr=u(Er,2),Ir=u(c(kr),2),ye=c(Ir);Se(),s(Ir),s(kr);var Oe=u(kr,2);{var qe=ft=>{var pt=HS(),At=u(c(pt),2),Pt=c(At),er=u(Pt),ur=c(er);s(er),s(At),s(pt),N(()=>{S(Pt,`${r(O).replication.full_resync_count??0??""} full `),S(ur,`/ ${r(O).replication.partial_resync_count??0??""} partial`)}),g(ft,pt)};V(Oe,ft=>{((r(O).replication.full_resync_count??0)>0||(r(O).replication.partial_resync_count??0)>0)&&ft(qe)})}var Ye=u(Oe,2),et=u(c(Ye),2),rt=c(et,!0);s(et),s(Ye);var Ge=u(Ye,2);{var yt=ft=>{var pt=KS();$e(pt,21,()=>r(O).replication.replicas,At=>At.id,(At,Pt)=>{var er=qS(),ur=c(er),Vt=u(ur,2),Dt=c(Vt,!0),Gt=u(Dt);{var Ut=kt=>{var Ht=FS();g(kt,Ht)};V(Gt,kt=>{r(Pt).rebootstrapping&&kt(Ut)})}s(Vt);var ar=u(Vt,2),fr=c(ar);s(ar);var vr=u(ar,2),Yt=c(vr,!0);s(vr),s(er),N((kt,Ht)=>{Pe(ur,1,kt,"svelte-gcvueu"),S(Dt,r(Pt).id),S(fr,`${r(Pt).lag_lsn??""} lsn`),Pe(vr,1,Ve(r(Pt).lag_seconds===0?"text-role-replica":"text-fg-0")),S(Yt,Ht)},[()=>Ve(["w-1.5 h-1.5 rounded-full shrink-0",r(Pt).lag_seconds===0?"bg-role-replica":r(Pt).lag_seconds<5?"bg-amber-400":"bg-accent"].join(" ")),()=>r(Pt).lag_seconds===0?"✓ sync":_(r(Pt).lag_seconds)]),g(At,er)}),s(pt),g(ft,pt)};V(Ge,ft=>{var pt;(pt=r(O).replication.replicas)!=null&&pt.length&&ft(yt)})}N(()=>{var ft,pt,At,Pt,er,ur;S(mr,((pt=(ft=r(O).cluster)==null?void 0:ft.wal)==null?void 0:pt.current_lsn)??r(O).replication.wal_lsn??"not exposed"),S(ye,`${((Pt=(At=r(O).cluster)==null?void 0:At.wal)==null?void 0:Pt.archive_lag_records)??"not exposed"??""} `),S(rt,r(O).replication.replica_count??((ur=(er=r(O).cluster)==null?void 0:er.replication)==null?void 0:ur.replica_count)??0)}),g(ir,sr)},or=ir=>{const sr=y(()=>A(r(O)));var wr=GS(),lr=ze(wr),mr=u(c(lr),2),Er=c(mr,!0);s(mr),s(lr);var Tr=u(lr,2),kr=u(c(Tr),2),Ir=c(kr),ye=u(Ir),Oe=c(ye);s(ye),s(kr),s(Tr);var qe=u(Tr,2);{var Ye=Ge=>{var yt=US(),ft=u(c(yt),2),pt=c(ft);{var At=Vt=>{Fr(Vt,{tone:"success",children:(Dt,Gt)=>{Se();var Ut=bt("in sync");g(Dt,Ut)},$$slots:{default:!0}})},Pt=Vt=>{Fr(Vt,{tone:"warning",children:(Dt,Gt)=>{Se();var Ut=bt();N(ar=>S(Ut,`${ar??""} lsn`),[()=>r(sr).toLocaleString()]),g(Dt,Ut)},$$slots:{default:!0}})};V(pt,Vt=>{r(sr)===0?Vt(At):Vt(Pt,-1)})}var er=u(pt,2);{var ur=Vt=>{var Dt=BS(),Gt=c(Dt,!0);s(Dt),N(()=>S(Gt,r(O).replication.state)),g(Vt,Dt)};V(er,Vt=>{r(O).replication.state&&Vt(ur)})}s(ft),s(yt),g(Ge,yt)};V(qe,Ge=>{r(sr)!==null&&Ge(Ye)})}var et=u(qe,2);{var rt=Ge=>{var yt=WS(),ft=u(c(yt),2),pt=c(ft,!0);s(ft),s(yt),N(()=>S(pt,r(O).replication.last_error)),g(Ge,yt)};V(et,Ge=>{r(O).replication.last_error&&Ge(rt)})}N(()=>{S(Er,r(O).replication.primary_addr??r(O).replication.leader??"unknown"),S(Ir,`${r(O).replication.last_applied_lsn??""} `),S(Oe,`/ ${r(O).replication.last_seen_primary_lsn??""}`)}),g(ir,wr)};V(It,ir=>{r(O).replication.role==="primary"?ir(Bt):r(O).replication.role==="replica"&&ir(or,1)})}g(it,dt)};V(xt,it=>{r(O).replication&&it(mt)})}var wt=u(xt,4);{var Ot=it=>{var dt=rC(),It=ze(dt),Bt=u(c(It),2),or=c(Bt);{var ir=et=>{var rt=$S(),Ge=u(ze(rt)),yt=c(Ge,!0);s(Ge);var ft=u(Ge,2),pt=c(ft);s(ft),N(()=>{S(yt,r(J).username),S(pt,`· ${r(J).role??""}`)}),g(et,rt)},sr=et=>{var rt=XS(),Ge=c(rt,!0);s(rt),N(()=>S(Ge,r(J).error)),g(et,rt)},wr=et=>{var rt=ZS();g(et,rt)};V(or,et=>{var rt,Ge;(rt=r(J))!=null&&rt.username?et(ir):(Ge=r(J))!=null&&Ge.error?et(sr,1):et(wr,-1)})}s(Bt),s(It);var lr=u(It,2),mr=u(c(lr),2),Er=c(mr);{var Tr=et=>{var rt=QS(),Ge=c(rt);s(rt),N(()=>S(Ge,`${r(J).users??""} users`)),g(et,rt)};V(Er,et=>{var rt;((rt=r(J))==null?void 0:rt.users)!==void 0&&et(Tr)})}var kr=u(Er,2);{var Ir=et=>{var rt=JS(),Ge=c(rt);s(rt),N(()=>S(Ge,`${r(J).tenants??""} tenants`)),g(et,rt)};V(kr,et=>{var rt;((rt=r(J))==null?void 0:rt.tenants)!==void 0&&et(Ir)})}var ye=u(kr,2);{var Oe=et=>{var rt=eC(),Ge=c(rt);s(rt),N(()=>S(Ge,`${r(J).policies??""} policies`)),g(et,rt)},qe=et=>{var rt=tC();g(et,rt)};V(ye,et=>{var rt,Ge;(rt=r(J))!=null&&rt.policyAllowed&&((Ge=r(J))==null?void 0:Ge.policies)!==void 0?et(Oe):r(J)&&r(J).policyAllowed===!1&&et(qe,1)})}var Ye=u(ye,2);s(mr),s(lr),_e("click",Ye,et=>ne.go({view:"security"},et)),g(it,dt)},Zt=it=>{var dt=nC();g(it,dt)};V(wt,it=>{r(ie)?it(Ot):it(Zt,-1)})}var pr=u(wt,2);{var hr=it=>{var dt=oC(),It=u(ze(dt),2),Bt=u(c(It),2);$e(Bt,21,()=>r(T),gr,(or,ir)=>{var sr=aC(),wr=c(sr,!0);s(sr),N(()=>S(wr,r(ir))),g(or,sr)}),s(Bt),s(It),g(it,dt)};V(pr,it=>{r(T).length&&it(hr)})}s(De),N(it=>{S(Ee,r(O).preset.label),S(Xe,r(O).preset.url),S(He,it)},[()=>U(r(O))]),g(xe,De)},$$slots:{default:!0}}),s(Ce),g(fe,Ce)};V(de,fe=>{r(O)&&fe(be)})}g(M,K)};V(he,M=>{r(i)?M(oe):xr.locked?M(Q,1):r(C).length===0?M(W,2):M(G,-1)})}g(t,le),at()}nr(["click"]);const vf={name:"corner-down-left",size:24,node:[["path",{d:"M20 4v7a4 4 0 0 1-4 4H4"}],["path",{d:"m9 10-5 5 5 5"}]]};vf.node;function dC(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return vf}}))}var uC=x('<button type="button" class="rounded-full border border-line-2 bg-bg-1 px-3 py-1.5 text-[11px] text-fg-2 hover:border-line-3 hover:text-fg-0 disabled:cursor-not-allowed disabled:opacity-40"> </button>'),fC=x('<div class="flex flex-col items-center gap-4 py-16 text-center"><div class="flex size-12 items-center justify-center rounded-full border border-line-2 bg-bg-1"><!></div> <div><div class="font-mono text-[15px] text-fg-0">Ask your database</div> <div class="mt-1 text-[12px] text-fg-3">Grounded answers with citations to the rows, docs, and vectors behind them.</div></div> <div class="flex flex-wrap justify-center gap-1.5"></div></div>'),vC=x('<div class="flex justify-end"><div class="max-w-[85%] rounded-lg rounded-br-sm border border-line-2 bg-bg-2 px-3 py-2 font-mono text-[12px] text-fg-0"> </div></div>'),gC=x('<div class="flex items-center gap-2 text-[12px] text-fg-3"><!> thinking…</div>'),pC=x('<div class="flex items-start gap-2 rounded-lg border border-accent/30 bg-accent/5 px-3 py-2 text-[12px] text-fg-1"><!> <span> </span></div>'),hC=x('<button type="button" class="mx-0.5 inline-flex h-4 min-w-4 items-center justify-center rounded bg-accent/15 px-1 align-super text-[9px] font-semibold text-primary-text hover:bg-accent/25"> </button>'),bC=x('<button type="button" class="rounded border border-line-1 px-1.5 py-0.5 hover:border-line-3 hover:text-fg-1"> </button>'),xC=x('<span class="font-mono"> </span>'),mC=x("<span>cached</span>"),_C=x('<span class="font-mono"> </span>'),yC=x('<div class="text-[13px] leading-relaxed text-fg-1"></div> <div class="flex flex-wrap items-center gap-1.5 text-[10px] text-fg-3"><!> <!> <!> <!> <!></div>',1),wC=x('<div class="flex flex-col gap-1.5"><!></div>'),kC=x('<div class="flex h-full flex-col"><div class="flex-1 overflow-auto"><div><!> <!></div></div> <div class="border-t border-line-1 bg-bg-0/80 p-3 backdrop-blur"><div><textarea rows="1" class="max-h-32 min-h-9 flex-1 resize-none rounded-lg border border-line-2 bg-bg-1 px-3 py-2 font-mono text-[12px] text-fg-0 placeholder:text-fg-3 focus:border-line-3 focus:outline-none disabled:opacity-50"></textarea> <button type="button" class="inline-flex h-9 items-center gap-1.5 rounded-lg bg-accent px-3 text-[12px] font-medium text-white hover:bg-accent/90 disabled:cursor-not-allowed disabled:opacity-40"><!> Ask</button></div></div></div>'),SC=x('<span class="font-mono text-[10px] text-fg-2"> <span class="text-fg-3"> </span></span>'),CC=x('<span class="ml-auto font-mono text-[10px] text-fg-3"> </span>'),EC=x('<div><div class="mb-1.5 flex items-center gap-2"><span class="inline-flex size-4 items-center justify-center rounded bg-accent/15 text-[9px] font-semibold text-primary-text"> </span> <!> <!> <!></div> <pre class="max-h-48 overflow-auto whitespace-pre-wrap break-words font-mono text-[10px] leading-relaxed text-fg-1"> </pre></div>'),MC=x('<div class="flex items-center justify-between border-b border-line-1 px-4 py-2.5"><span class="type-label"> </span> <span class="font-mono text-[10px] text-fg-3"> </span></div> <div class="flex-1 overflow-auto p-3"><div class="grid gap-2"></div></div>',1),zC=x('<div class="flex h-full items-center justify-center font-mono text-[12px] text-fg-3">no grounding to show</div>'),NC=x('<div class="flex h-full flex-col overflow-hidden bg-bg-1"><!></div>'),TC=x('<div class="p-6"><!></div>'),IC=x('<div class="p-6"><!></div>'),AC=x('<div class="grid h-full grid-cols-[minmax(340px,42%)_1fr] overflow-hidden"><div class="min-h-0 border-r border-line-1"><!></div> <div class="min-h-0"><!></div></div>'),LC=x('<div class="h-full overflow-hidden bg-bg-0 text-fg-1"><!></div>');function OC(t,e){nt(e,!0);const n=(E,I=Zr)=>{var _=kC(),A=c(_),R=c(A),te=c(R);{var F=he=>{var oe=fC(),Q=c(oe),W=c(Q);Eo(W,{class:"size-5 text-primary-text"}),s(Q);var G=u(Q,4);$e(G,21,()=>C,gr,(M,K)=>{var D=uC(),z=c(D,!0);s(D),N(()=>{D.disabled=!r(p)||r(b),S(z,r(K))}),_e("click",D,()=>{m(i,r(K),!0),r(h)&&P()}),g(M,D)}),s(G),s(oe),g(he,oe)};V(te,he=>{r(o).length===0&&he(F)})}var X=u(te,2);$e(X,19,()=>r(o),he=>he.id,(he,oe,Q)=>{var W=_t(),G=ze(W);{var M=D=>{var z=vC(),B=c(z),re=c(B,!0);s(B),s(z),N(()=>S(re,r(oe).text)),g(D,z)},K=D=>{var z=wC(),B=c(z);{var re=fe=>{var Ce=gC(),ke=c(Ce);Eo(ke,{class:"size-3.5 animate-pulse text-primary-text"}),Se(),s(Ce),g(fe,Ce)},de=fe=>{var Ce=pC(),ke=c(Ce);zc(ke,{class:"mt-0.5 size-3.5 shrink-0 text-primary-text"});var xe=u(ke,2),ge=c(xe,!0);s(xe),s(Ce),N(De=>S(ge,De),[()=>r(oe).error.includes("404")||r(oe).error.includes("route not found")?"This reddb has no AI endpoint (/ai/ask). Configure a provider to enable Ask.":r(oe).error]),g(fe,Ce)},be=fe=>{var Ce=yC(),ke=ze(Ce);$e(ke,21,()=>Gv(r(oe).response.answer),gr,(Me,Te)=>{var Xe=_t(),Fe=ze(Xe);{var Qe=ct=>{var Ke=bt();N(()=>S(Ke,r(Te).value)),g(ct,Ke)},lt=ct=>{var Ke=hC(),He=c(Ke,!0);s(Ke),N(()=>{Ne(Ke,"title",`Jump to source ${r(Te).marker??""}`),S(He,r(Te).marker)}),_e("click",Ke,()=>O(r(Q),r(Te).marker)),g(ct,Ke)};V(Fe,ct=>{r(Te).type==="text"?ct(Qe):ct(lt,-1)})}g(Me,Xe)}),s(ke);var xe=u(ke,2),ge=c(xe);{var De=Me=>{Fr(Me,{tone:"warning",children:(Te,Xe)=>{Se();var Fe=bt("unverified citations");g(Te,Fe)},$$slots:{default:!0}})};V(ge,Me=>{r(oe).response.validation&&!r(oe).response.validation.ok&&Me(De)})}var ce=u(ge,2);{var se=Me=>{var Te=bC(),Xe=c(Te);s(Te),N(()=>S(Xe,`${r(oe).response.sources_flat.length??""} source${r(oe).response.sources_flat.length===1?"":"s"}`)),_e("click",Te,()=>{m(d,r(Q),!0),m(f,null)}),g(Me,Te)};V(ce,Me=>{var Te;(Te=r(oe).response.sources_flat)!=null&&Te.length&&Me(se)})}var ve=u(ce,2);{var Ae=Me=>{var Te=xC(),Xe=c(Te);s(Te),N(()=>S(Xe,`${r(oe).response.provider??""}${r(oe).response.model?`·${r(oe).response.model}`:""}`)),g(Me,Te)};V(ve,Me=>{r(oe).response.provider&&Me(Ae)})}var Le=u(ve,2);{var we=Me=>{var Te=mC();g(Me,Te)};V(Le,Me=>{r(oe).response.cache_hit&&Me(we)})}var Ie=u(Le,2);{var Ee=Me=>{var Te=_C(),Xe=c(Te,!0);s(Te),N(Fe=>S(Xe,Fe),[()=>Y(r(oe).response.cost_usd)]),g(Me,Te)};V(Ie,Me=>{r(oe).response.cost_usd!==void 0&&Me(Ee)})}s(xe),g(fe,Ce)};V(B,fe=>{r(oe).pending?fe(re):r(oe).error?fe(de,1):r(oe).response&&fe(be,2)})}s(z),g(D,z)};V(G,D=>{r(oe).role==="user"?D(M):D(K,-1)})}g(he,W)}),s(R),s(A);var ee=u(A,2),L=c(ee),H=c(L);Da(H);var j=u(H,2),le=c(j);dC(le,{class:"size-3.5"}),Se(),s(j),s(L),s(ee),s(_),N((he,oe)=>{Pe(R,1,he),Pe(L,1,oe),Ne(H,"placeholder",r(p)?"Ask anything about this database…":"Connect to ask"),H.disabled=!r(p)||r(b),j.disabled=!r(h)},[()=>Ve(["mx-auto flex flex-col gap-4 p-4",I()?"max-w-none":"max-w-2xl"].join(" ")),()=>Ve(["mx-auto flex items-end gap-2",I()?"max-w-none":"max-w-2xl"].join(" "))]),_e("keydown",H,$),Sr(H,()=>r(i),he=>m(i,he)),_e("click",j,P),g(E,_)},a=E=>{var I=NC(),_=c(I);{var A=te=>{const F=y(()=>r(k).response);var X=MC(),ee=ze(X),L=c(ee),H=c(L);s(L);var j=u(L,2),le=c(j);s(j),s(ee);var he=u(ee,2),oe=c(he);$e(oe,23,()=>r(F).sources_flat,(Q,W)=>Q.urn+W,(Q,W,G)=>{const M=y(()=>Yv(r(W).urn));var K=EC(),D=c(K),z=c(D),B=c(z,!0);s(z);var re=u(z,2);{let ge=y(()=>T[r(W).kind]??"neutral");Fr(re,{get tone(){return r(ge)},children:(De,ce)=>{Se();var se=bt();N(()=>S(se,r(W).kind)),g(De,se)},$$slots:{default:!0}})}var de=u(re,2);{var be=ge=>{var De=SC(),ce=c(De,!0),se=u(ce),ve=c(se);s(se),s(De),N(()=>{S(ce,r(M).collection),S(ve,`/${r(M).id??""}`)}),g(ge,De)};V(de,ge=>{r(M)&&ge(be)})}var fe=u(de,2);{var Ce=ge=>{var De=CC(),ce=c(De);s(De),N(se=>S(ce,`score ${se??""}`),[()=>r(W).score.toFixed(2)]),g(ge,De)};V(fe,ge=>{r(W).score!==void 0&&ge(Ce)})}s(D);var ke=u(D,2),xe=c(ke,!0);s(ke),s(K),N((ge,De)=>{Pe(K,1,ge),S(B,r(G)+1),S(xe,De)},[()=>Ve(["rounded border bg-bg-0 p-2.5 transition-colors",r(f)===r(G)+1?"border-accent":"border-line-1"].join(" ")),()=>Z(r(W).content)]),g(Q,K)}),s(oe),s(he),N(()=>{S(H,`grounding · ${r(F).sources_flat.length??""} source${r(F).sources_flat.length===1?"":"s"}`),S(le,`${r(F).provider??""??""}${r(F).model?` · ${r(F).model}`:""}`)}),g(te,X)},R=te=>{var F=zC();g(te,F)};V(_,te=>{var F;(F=r(k))!=null&&F.response?te(A):te(R,-1)})}s(I),g(E,I)};let o=me(jt([])),i=me(""),l=me(!1),d=me(null),f=me(null),v=0;const p=y(()=>Be.connected),b=y(()=>xr.locked),h=y(()=>r(p)&&!r(b)&&!r(l)&&r(i).trim().length>0),w=y(()=>r(o).some(E=>{var I,_;return E.role==="assistant"&&(((_=(I=E.response)==null?void 0:I.sources_flat)==null?void 0:_.length)??0)>0})),k=y(()=>r(d)!==null?r(o)[r(d)]:[...r(o)].reverse().find(E=>{var I,_;return(((_=(I=E.response)==null?void 0:I.sources_flat)==null?void 0:_.length)??0)>0})),C=["What changed in the last hour?","Which collections hold the most rows?","Summarize the most recent errors."];async function P(){var R;const E=r(i).trim(),I=Be.client;if(!E||!I||r(l))return;m(i,"");const _={id:v++,role:"user",text:E},A={id:v++,role:"assistant",text:"",pending:!0};m(o,[...r(o),_,A],!0),m(l,!0);try{const te=await St.track("ask",()=>I.ask(E)),F=r(o).findIndex(X=>X.id===A.id);F!==-1&&(r(o)[F]={...A,pending:!1,text:te.answer,response:te},(((R=te.sources_flat)==null?void 0:R.length)??0)>0&&m(d,F,!0))}catch(te){const F=r(o).findIndex(X=>X.id===A.id);F!==-1&&(r(o)[F]={...A,pending:!1,error:te.message})}finally{m(l,!1)}}function $(E){E.key==="Enter"&&!E.shiftKey&&(E.preventDefault(),r(h)&&P())}function O(E,I){m(d,E,!0),m(f,I,!0)}function Z(E){try{return JSON.stringify(JSON.parse(E),null,2)}catch{return E}}function Y(E){return E===void 0?"":E<.01?`$${E.toFixed(4)}`:`$${E.toFixed(2)}`}const T={table:"info",document:"success",vector:"neutral",graph_node:"warning",graph_edge:"warning",kv:"neutral"};var q=LC(),ne=c(q);{var ie=E=>{var I=TC(),_=c(I);Hr(_,{get icon(){return Un},title:"Locked",message:"Unlock the secure store to ask."}),s(I),g(E,I)},J=E=>{var I=IC(),_=c(I);Hr(_,{get icon(){return Eo},title:"Not connected",message:"Connect to a reddb instance to ask grounded questions."}),s(I),g(E,I)},ue=E=>{var I=AC(),_=c(I),A=c(_);n(A,()=>!0),s(_);var R=u(_,2),te=c(R);a(te),s(R),s(I),g(E,I)},U=E=>{n(E,()=>!1)};V(ne,E=>{r(b)?E(ie):r(p)?r(w)?E(ue,2):E(U,-1):E(J,1)})}s(q),g(t,q),at()}nr(["click","keydown"]);var PC=x('<div class="type-label mb-1.5"> </div>'),DC=x('<p class="type-caption m-0 mt-1.5"> </p>'),RC=x('<div class="flex items-center gap-2 shrink-0"><!></div>'),VC=x('<header class="flex items-end justify-between gap-4 pb-4 mb-4 border-b border-line-1"><div class="min-w-0"><!> <div class="flex items-baseline gap-3 flex-wrap"><h1 class="type-h1 m-0"> </h1> <!></div> <!></div> <!></header>');function La(t,e){var n=VC(),a=c(n),o=c(a);{var i=k=>{var C=PC(),P=c(C,!0);s(C),N(()=>S(P,e.eyebrow)),g(k,C)};V(o,k=>{e.eyebrow&&k(i)})}var l=u(o,2),d=c(l),f=c(d,!0);s(d);var v=u(d,2);tr(v,()=>e.children??Zr),s(l);var p=u(l,2);{var b=k=>{var C=DC(),P=c(C,!0);s(C),N(()=>S(P,e.subtitle)),g(k,C)};V(p,k=>{e.subtitle&&k(b)})}s(a);var h=u(a,2);{var w=k=>{var C=RC(),P=c(C);tr(P,()=>e.actions),s(C),g(k,C)};V(h,k=>{e.actions&&k(w)})}s(n),N(()=>S(f,e.title)),g(t,n)}const gf={name:"building-complex",size:24,node:[["path",{d:"M10 12h4"}],["path",{d:"M10 8h4"}],["path",{d:"M14 21v-3a2 2 0 0 0-4 0v3"}],["path",{d:"M6 10H4a2 2 0 0 0-2 2v7a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V9a2 2 0 0 0-2-2h-2"}],["path",{d:"M6 21V5a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v16"}]],aliases:["building-2"]};gf.node;function HC(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return gf}}))}const pf={name:"scroll-text",size:24,node:[["path",{d:"M15 12h-5"}],["path",{d:"M15 8h-5"}],["path",{d:"M19 17V5a2 2 0 0 0-2-2H4"}],["path",{d:"M8 21h12a2 2 0 0 0 2-2v-1a1 1 0 0 0-1-1H11a1 1 0 0 0-1 1v1a2 2 0 1 1-4 0V5a2 2 0 1 0-4 0v2a1 1 0 0 0 1 1h3"}]]};pf.node;function FC(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return pf}}))}const hf={name:"shield-alert",size:24,node:[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"}],["path",{d:"M12 8v4"}],["path",{d:"M12 16h.01"}]]};hf.node;function ka(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return hf}}))}const bf={name:"users",size:24,node:[["path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2"}],["path",{d:"M16 3.128a4 4 0 0 1 0 7.744"}],["path",{d:"M22 21v-2a4 4 0 0 0-3-3.87"}],["circle",{cx:"9",cy:"7",r:"4"}]]};bf.node;function qC(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return bf}}))}const xf={name:"circle-x",size:24,node:[["circle",{cx:"12",cy:"12",r:"10"}],["path",{d:"m15 9-6 6"}],["path",{d:"m9 9 6 6"}]],aliases:["x-circle"]};xf.node;function KC(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return xf}}))}var jC=x('<button type="button" class="inline-flex h-7 items-center gap-1.5 rounded-md border border-line-2 bg-bg-2 px-2.5 text-[11px] font-mono text-fg-1 hover:border-line-3 hover:text-fg-0 disabled:cursor-not-allowed disabled:opacity-40"><!> refresh</button>'),BC=x('<div class="text-[12px] font-mono text-warn break-words"> </div>'),UC=x('<span class="text-fg-3">note</span> <span class="text-fg-1"> </span>',1),WC=x('<div class="grid grid-cols-[110px_1fr] gap-x-3 gap-y-2 text-[12px] font-mono"><span class="text-fg-3">authenticated</span> <span><!></span> <span class="text-fg-3">username</span> <span class="text-fg-0"> </span> <span class="text-fg-3">role</span> <span class="text-primary-text"> </span> <!></div>'),GC=x('<div class="text-[12px] font-mono text-fg-3">Loading session…</div>'),YC=x('<div class="mb-2 inline-flex items-center gap-1.5 rounded border border-warn/40 bg-bg-0 px-2 py-1 text-[11px] font-mono text-warn"><!> tenants endpoint denied or unavailable</div> <pre class="whitespace-pre-wrap break-words text-[12px] font-mono text-fg-3"> </pre>',1),$C=x('<div class="flex items-center gap-2 text-[12px] font-mono text-fg-3"><!> <span>No tenants returned for this principal.</span></div>'),XC=x('<div class="rounded border border-line-1 bg-bg-0 px-2 py-1.5"><div class="flex items-center gap-2"><span class="text-fg-0"> </span> <!></div> <div class="mt-1 text-fg-3"> <!></div></div>'),ZC=x('<div class="grid gap-1 text-[12px] font-mono"></div>'),QC=x('<div class="mb-2 inline-flex items-center gap-1.5 rounded border border-warn/40 bg-bg-0 px-2 py-1 text-[11px] font-mono text-warn"><!> policies endpoint denied or unavailable</div> <pre class="whitespace-pre-wrap break-words text-[12px] font-mono text-fg-3"> </pre>',1),JC=x('<div class="flex items-center gap-2 text-[12px] font-mono text-fg-3"><!> <span>No policies returned for this principal.</span></div>'),eE=x('<div class="rounded border border-line-1 bg-bg-0 px-2 py-1.5"><div class="flex items-center gap-2"><span class="text-fg-0"> </span> <!></div> <div class="mt-1 text-fg-3"> <!></div></div>'),tE=x('<div class="text-[11px] text-fg-3"> </div>'),rE=x('<div class="grid gap-1 text-[12px] font-mono"><!> <!></div>'),nE=x('<div class="mb-3 inline-flex items-center gap-1.5 rounded border border-warn/40 bg-bg-0 px-2 py-1 text-[11px] font-mono text-warn"><!> users endpoint denied or unavailable</div> <pre class="whitespace-pre-wrap break-words text-[12px] font-mono text-fg-3"> </pre>',1),aE=x('<div class="flex items-center gap-2 text-[12px] font-mono text-fg-3"><!> <span>No users returned for this principal.</span></div>'),oE=x('<span class="text-fg-3">-</span>'),iE=x('<tr class="border-b border-line-1/60 hover:bg-bg-1/40"><td class="px-2 py-1 text-fg-0"> </td><td class="px-2 py-1 text-primary-text"> </td><td class="px-2 py-1"><!></td><td class="px-2 py-1 text-fg-2"> </td><td class="px-2 py-1 text-fg-2"> </td></tr>'),sE=x('<div class="overflow-auto"><table class="w-full border-collapse text-[12px] font-mono"><thead class="sticky top-0 bg-bg-1"><tr class="border-b border-line-1 text-fg-3"><th class="px-2 py-1.5 text-left font-normal">user</th><th class="px-2 py-1.5 text-left font-normal">role</th><th class="px-2 py-1.5 text-left font-normal">mfa</th><th class="px-2 py-1.5 text-left font-normal">created</th><th class="px-2 py-1.5 text-left font-normal">last active</th></tr></thead><tbody></tbody></table></div>'),lE=x('<div class="text-[12px] font-mono text-fg-3">Policy table unavailable for this principal.</div>'),cE=x('<div class="text-[12px] font-mono text-fg-3">No policies to tabulate.</div>'),dE=x('<span class="text-fg-3">-</span>'),uE=x('<tr class="border-b border-line-1/60 hover:bg-bg-1/40"><td class="px-2 py-1"><!></td><td class="px-2 py-1 text-fg-1"> </td><td class="px-2 py-1 text-primary-text"> </td><td class="px-2 py-1 text-fg-1"> </td><td class="px-2 py-1 text-fg-2"> </td></tr>'),fE=x('<div class="overflow-auto"><table class="w-full border-collapse text-[12px] font-mono"><thead class="sticky top-0 bg-bg-1"><tr class="border-b border-line-1 text-fg-3"><th class="px-2 py-1.5 text-left font-normal">effect</th><th class="px-2 py-1.5 text-left font-normal">principal</th><th class="px-2 py-1.5 text-left font-normal">action</th><th class="px-2 py-1.5 text-left font-normal">resource</th><th class="px-2 py-1.5 text-left font-normal">tenant</th></tr></thead><tbody></tbody></table></div>'),vE=x('<div class="mb-2 inline-flex items-center gap-1.5 rounded border border-warn/40 bg-bg-0 px-2 py-1 text-[11px] font-mono text-warn"><!> capability matrix unavailable</div> <pre class="whitespace-pre-wrap break-words text-[12px] font-mono text-fg-3"> </pre>',1),gE=x('<div class="text-[12px] font-mono text-fg-3">No capability checks returned.</div>'),pE=x('<span class="inline-flex items-center gap-1 text-ok"><!> yes</span>'),hE=x('<span class="inline-flex items-center gap-1 text-danger"><!> no</span>'),bE=x('<span class="text-fg-3">-</span>'),xE=x('<span class="inline-flex flex-wrap gap-1"></span>'),mE=x('<tr class="border-b border-line-1/60 hover:bg-bg-1/40"><td class="px-2 py-1"><!></td><td class="px-2 py-1 text-primary-text"> </td><td class="px-2 py-1 text-fg-1"> </td><td class="px-2 py-1"><!></td><td class="max-w-[320px] px-2 py-1 text-fg-3"> </td></tr>'),_E=x('<div class="overflow-auto"><table class="w-full border-collapse text-[12px] font-mono"><thead class="sticky top-0 bg-bg-1"><tr class="border-b border-line-1 text-fg-3"><th class="px-2 py-1.5 text-left font-normal">can</th><th class="px-2 py-1.5 text-left font-normal">action</th><th class="px-2 py-1.5 text-left font-normal">resource</th><th class="px-2 py-1.5 text-left font-normal">policy effect</th><th class="px-2 py-1.5 text-left font-normal">reason</th></tr></thead><tbody></tbody></table></div>'),yE=x("<!> <!>",1),wE=x('<div class="grid grid-cols-[minmax(280px,0.75fr)_1.25fr] gap-3"><div class="grid gap-3 content-start"><!> <!> <!></div> <div class="grid gap-3 content-start"><!> <!></div></div>'),kE=x('<div class="h-full overflow-auto bg-bg-0 p-6 text-fg-1"><!> <!></div>');function SE(t,e){nt(e,!0);let n=me(null),a=me(jt([])),o=me(jt([])),i=me(jt([])),l=me(null),d=me(jt([])),f=me(!1),v=me(null),p=me(null),b=me(null),h=me(null),w=me(null);const k=y(()=>Be.active.url),C=y(()=>Be.connected),P=y(()=>{var J;return((J=r(l))==null?void 0:J.allowed)===!0});function $(J){if(!J)return"-";const ue=J>1e10?J:J*1e3;return new Date(ue).toISOString().replace("T"," ").slice(0,19)}async function O(){const J=Be.client;if(!J||xr.locked||!r(C)){m(n,null),m(a,[],!0),m(o,[],!0),m(i,[],!0),m(l,null),m(d,[],!0);return}m(f,!0),m(v,null),m(p,null),m(b,null),m(h,null),m(w,null),m(l,null),m(d,[],!0);try{m(n,await St.track("security · whoami",()=>J.whoami()),!0)}catch(ue){m(v,ue.message,!0),m(n,null)}try{m(a,await St.track("security · tenants",()=>J.tenants()),!0)}catch(ue){m(p,ue.message,!0),m(a,[],!0)}try{m(o,await St.track("security · users",()=>J.users()),!0)}catch(ue){m(b,ue.message,!0),m(o,[],!0)}try{const[ue]=await St.track("security · auth.can policy read",()=>J.authCan([Aa]));m(l,ue??{...Aa,allowed:!1,reason:"auth.can omitted policy-read decision"},!0)}catch(ue){m(l,{...Aa,allowed:!1,reason:ue.message||"auth.can failed"},!0)}if(r(l).allowed){try{m(i,await St.track("security · policies",()=>J.policies()),!0)}catch(ue){m(h,ue.message,!0),m(i,[],!0)}try{const ue=uf(r(i)),U=await St.track("security · auth.can capability matrix",()=>J.authCan(ue));m(d,yS(r(i),U),!0)}catch(ue){m(w,ue.message,!0),m(d,[],!0)}}else m(i,[],!0),m(d,[],!0);m(f,!1)}Lt(()=>{xr.locked||(r(k),r(C),O())});var Z=kE(),Y=c(Z);La(Y,{eyebrow:"Admin",title:"Security",subtitle:"Tenants, users, and policy surfaces are permission-aware. Controls only appear when reddb exposes the grant.",actions:ue=>{var U=jC(),E=c(U);{let I=y(()=>r(f)?"size-3.5 animate-spin":"size-3.5");ks(E,{get class(){return r(I)}})}Se(),s(U),N(()=>U.disabled=r(f)||xr.locked||!r(C)),_e("click",U,O),g(ue,U)}});var T=u(Y,2);{var q=J=>{Hr(J,{get icon(){return Un},title:"Security locked",message:"Enter the master password before red-ui loads auth data."})},ne=J=>{Hr(J,{get icon(){return ka},title:"No active connection",message:"Connect to a reddb instance to inspect security posture."})},ie=J=>{var ue=wE(),U=c(ue),E=c(U);En(E,{title:"session",children:(ee,L)=>{var H=_t(),j=ze(H);{var le=Q=>{var W=BC(),G=c(W,!0);s(W),N(()=>S(G,r(v))),g(Q,W)},he=Q=>{var W=WC(),G=u(c(W),2),M=c(G);{var K=Ce=>{Fr(Ce,{tone:"success",children:(ke,xe)=>{Se();var ge=bt("yes");g(ke,ge)},$$slots:{default:!0}})},D=Ce=>{Fr(Ce,{tone:"warning",children:(ke,xe)=>{Se();var ge=bt("no");g(ke,ge)},$$slots:{default:!0}})};V(M,Ce=>{r(n).authenticated?Ce(K):Ce(D,-1)})}s(G);var z=u(G,4),B=c(z,!0);s(z);var re=u(z,4),de=c(re,!0);s(re);var be=u(re,2);{var fe=Ce=>{var ke=UC(),xe=u(ze(ke),2),ge=c(xe,!0);s(xe),N(()=>S(ge,r(n).note)),g(Ce,ke)};V(be,Ce=>{r(n).note&&Ce(fe)})}s(W),N(()=>{S(B,r(n).username),S(de,r(n).role)}),g(Q,W)},oe=Q=>{var W=GC();g(Q,W)};V(j,Q=>{r(v)?Q(le):r(n)?Q(he,1):Q(oe,-1)})}g(ee,H)},$$slots:{default:!0}});var I=u(E,2);En(I,{title:"tenants",children:(ee,L)=>{var H=_t(),j=ze(H);{var le=Q=>{var W=YC(),G=ze(W),M=c(G);ka(M,{class:"size-3.5"}),Se(),s(G);var K=u(G,2),D=c(K,!0);s(K),N(()=>S(D,r(p))),g(Q,W)},he=Q=>{var W=$C(),G=c(W);HC(G,{class:"size-4"}),Se(2),s(W),g(Q,W)},oe=Q=>{var W=ZC();$e(W,23,()=>r(a),(G,M)=>`${G.id??G.slug??G.name??M}`,(G,M)=>{var K=XC(),D=c(K),z=c(D),B=c(z,!0);s(z);var re=u(z,2);{var de=xe=>{Fr(xe,{tone:"neutral",children:(ge,De)=>{Se();var ce=bt();N(()=>S(ce,r(M).role)),g(ge,ce)},$$slots:{default:!0}})};V(re,xe=>{r(M).role&&xe(de)})}s(D);var be=u(D,2),fe=c(be),Ce=u(fe);{var ke=xe=>{var ge=bt();N(De=>S(ge,`· ${De??""}`),[()=>r(M).grants.join(", ")]),g(xe,ge)};V(Ce,xe=>{var ge;(ge=r(M).grants)!=null&&ge.length&&xe(ke)})}s(be),s(K),N(()=>{S(B,r(M).name??r(M).slug??r(M).id??"tenant"),S(fe,`${r(M).id??r(M).slug??"-"??""} `)}),g(G,K)}),s(W),g(Q,W)};V(j,Q=>{r(p)?Q(le):r(a).length===0?Q(he,1):Q(oe,-1)})}g(ee,H)},$$slots:{default:!0}});var _=u(I,2);{var A=ee=>{En(ee,{title:"policies",children:(L,H)=>{var j=_t(),le=ze(j);{var he=W=>{var G=QC(),M=ze(G),K=c(M);ka(K,{class:"size-3.5"}),Se(),s(M);var D=u(M,2),z=c(D,!0);s(D),N(()=>S(z,r(h))),g(W,G)},oe=W=>{var G=JC(),M=c(G);FC(M,{class:"size-4"}),Se(2),s(G),g(W,G)},Q=W=>{var G=rE(),M=c(G);$e(M,19,()=>r(i).slice(0,6),(z,B)=>`${z.id??z.name??B}`,(z,B)=>{var re=eE(),de=c(re),be=c(de),fe=c(be,!0);s(be);var Ce=u(be,2);{var ke=se=>{{let ve=y(()=>r(B).effect==="deny"?"danger":"success");Fr(se,{get tone(){return r(ve)},children:(Ae,Le)=>{Se();var we=bt();N(()=>S(we,r(B).effect)),g(Ae,we)},$$slots:{default:!0}})}};V(Ce,se=>{r(B).effect&&se(ke)})}s(de);var xe=u(de,2),ge=c(xe),De=u(ge);{var ce=se=>{var ve=bt();N(()=>S(ve,`· tenant ${r(B).tenant??""}`)),g(se,ve)};V(De,se=>{r(B).tenant&&se(ce)})}s(xe),s(re),N(()=>{S(fe,r(B).name??r(B).id??"policy"),S(ge,`${r(B).action??"*"??""} · ${r(B).resource??"*"??""} `)}),g(z,re)});var K=u(M,2);{var D=z=>{var B=tE(),re=c(B);s(B),N(()=>S(re,`${r(i).length-6} more policies in the table.`)),g(z,B)};V(K,z=>{r(i).length>6&&z(D)})}s(G),g(W,G)};V(le,W=>{r(h)?W(he):r(i).length===0?W(oe,1):W(Q,-1)})}g(L,j)},$$slots:{default:!0}})};V(_,ee=>{r(P)&&ee(A)})}s(U);var R=u(U,2),te=c(R);En(te,{title:"users",children:(ee,L)=>{var H=_t(),j=ze(H);{var le=Q=>{var W=nE(),G=ze(W),M=c(G);ka(M,{class:"size-3.5"}),Se(),s(G);var K=u(G,2),D=c(K,!0);s(K),N(()=>S(D,r(b))),g(Q,W)},he=Q=>{var W=aE(),G=c(W);qC(G,{class:"size-4"}),Se(2),s(W),g(Q,W)},oe=Q=>{var W=sE(),G=c(W),M=u(c(G));$e(M,21,()=>r(o),K=>K.username,(K,D)=>{var z=iE(),B=c(z),re=c(B,!0);s(B);var de=u(B),be=c(de,!0);s(de);var fe=u(de),Ce=c(fe);{var ke=ve=>{Fr(ve,{tone:"success",children:(Ae,Le)=>{Se();var we=bt("on");g(Ae,we)},$$slots:{default:!0}})},xe=ve=>{var Ae=oE();g(ve,Ae)};V(Ce,ve=>{r(D).mfa?ve(ke):ve(xe,-1)})}s(fe);var ge=u(fe),De=c(ge,!0);s(ge);var ce=u(ge),se=c(ce,!0);s(ce),s(z),N((ve,Ae)=>{S(re,r(D).username),S(be,r(D).role??"-"),S(De,ve),S(se,Ae)},[()=>$(r(D).created_at),()=>$(r(D).last_active)]),g(K,z)}),s(M),s(G),s(W),g(Q,W)};V(j,Q=>{r(b)?Q(le):r(o).length===0?Q(he,1):Q(oe,-1)})}g(ee,H)},$$slots:{default:!0}});var F=u(te,2);{var X=ee=>{var L=yE(),H=ze(L);En(H,{title:"policy table",children:(le,he)=>{var oe=_t(),Q=ze(oe);{var W=K=>{var D=lE();g(K,D)},G=K=>{var D=cE();g(K,D)},M=K=>{var D=fE(),z=c(D),B=u(c(z));$e(B,23,()=>r(i),(re,de)=>`${re.id??re.name??de}`,(re,de)=>{var be=uE(),fe=c(be),Ce=c(fe);{var ke=Ie=>{{let Ee=y(()=>r(de).effect==="deny"?"danger":"success");Fr(Ie,{get tone(){return r(Ee)},children:(Me,Te)=>{Se();var Xe=bt();N(()=>S(Xe,r(de).effect)),g(Me,Xe)},$$slots:{default:!0}})}},xe=Ie=>{var Ee=dE();g(Ie,Ee)};V(Ce,Ie=>{r(de).effect?Ie(ke):Ie(xe,-1)})}s(fe);var ge=u(fe),De=c(ge,!0);s(ge);var ce=u(ge),se=c(ce,!0);s(ce);var ve=u(ce),Ae=c(ve,!0);s(ve);var Le=u(ve),we=c(Le,!0);s(Le),s(be),N(()=>{S(De,r(de).principal??"-"),S(se,r(de).action??"*"),S(Ae,r(de).resource??"*"),S(we,r(de).tenant??"-")}),g(re,be)}),s(B),s(z),s(D),g(K,D)};V(Q,K=>{r(h)?K(W):r(i).length===0?K(G,1):K(M,-1)})}g(le,oe)},$$slots:{default:!0}});var j=u(H,2);En(j,{title:"my capabilities",children:(le,he)=>{var oe=_t(),Q=ze(oe);{var W=K=>{var D=vE(),z=ze(D),B=c(z);ka(B,{class:"size-3.5"}),Se(),s(z);var re=u(z,2),de=c(re,!0);s(re),N(()=>S(de,r(w))),g(K,D)},G=K=>{var D=gE();g(K,D)},M=K=>{var D=_E(),z=c(D),B=u(c(z));$e(B,21,()=>r(d),re=>re.id,(re,de)=>{var be=mE(),fe=c(be),Ce=c(fe);{var ke=Me=>{var Te=pE(),Xe=c(Te);ys(Xe,{class:"size-3.5"}),Se(),s(Te),g(Me,Te)},xe=Me=>{var Te=hE(),Xe=c(Te);KC(Xe,{class:"size-3.5"}),Se(),s(Te),g(Me,Te)};V(Ce,Me=>{r(de).allowed?Me(ke):Me(xe,-1)})}s(fe);var ge=u(fe),De=c(ge,!0);s(ge);var ce=u(ge),se=c(ce,!0);s(ce);var ve=u(ce),Ae=c(ve);{var Le=Me=>{var Te=bE();g(Me,Te)},we=Me=>{var Te=xE();$e(Te,21,()=>r(de).effects,gr,(Xe,Fe)=>{{let Qe=y(()=>r(Fe)==="deny"?"danger":"success");Fr(Xe,{get tone(){return r(Qe)},children:(lt,ct)=>{Se();var Ke=bt();N(()=>S(Ke,r(Fe))),g(lt,Ke)},$$slots:{default:!0}})}}),s(Te),g(Me,Te)};V(Ae,Me=>{r(de).effects.length===0?Me(Le):Me(we,-1)})}s(ve);var Ie=u(ve),Ee=c(Ie,!0);s(Ie),s(be),N(()=>{S(De,r(de).action),S(se,r(de).resourceLabel),S(Ee,r(de).reason??"-")}),g(re,be)}),s(B),s(z),s(D),g(K,D)};V(Q,K=>{r(w)?K(W):r(d).length===0?K(G,1):K(M,-1)})}g(le,oe)},$$slots:{default:!0}}),g(ee,L)};V(F,ee=>{r(P)&&ee(X)})}s(R),s(ue),g(J,ue)};V(T,J=>{xr.locked?J(q):r(C)?J(ie,-1):J(ne,1)})}s(Z),g(t,Z),at()}nr(["click"]);const mf={name:"download",size:24,node:[["path",{d:"M12 15V3"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"}],["path",{d:"m7 10 5 5 5-5"}]]};mf.node;function CE(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return mf}}))}const _f={name:"save",size:24,node:[["path",{d:"M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z"}],["path",{d:"M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7"}],["path",{d:"M7 3v4a1 1 0 0 0 1 1h7"}]]};_f.node;function uc(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return _f}}))}const yf={name:"shield-off",size:24,node:[["path",{d:"m2 2 20 20"}],["path",{d:"M5 5a1 1 0 0 0-1 1v7c0 5 3.5 7.5 7.67 8.94a1 1 0 0 0 .67.01c2.35-.82 4.48-1.97 5.9-3.71"}],["path",{d:"M9.309 3.652A12.252 12.252 0 0 0 11.24 2.28a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1v7a9.784 9.784 0 0 1-.08 1.264"}]]};yf.node;function Li(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return yf}}))}const wf={name:"sliders-horizontal",size:24,node:[["path",{d:"M10 5H3"}],["path",{d:"M12 19H3"}],["path",{d:"M14 3v4"}],["path",{d:"M16 17v4"}],["path",{d:"M21 12h-9"}],["path",{d:"M21 19h-5"}],["path",{d:"M21 5h-7"}],["path",{d:"M8 10v4"}],["path",{d:"M8 12H3"}]]};wf.node;function EE(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return wf}}))}const kf={name:"unplug",size:24,node:[["path",{d:"m19 5 3-3"}],["path",{d:"m2 22 3-3"}],["path",{d:"M6.3 20.3a2.4 2.4 0 0 0 3.4 0L12 18l-6-6-2.3 2.3a2.4 2.4 0 0 0 0 3.4Z"}],["path",{d:"M7.5 13.5 10 11"}],["path",{d:"M10.5 16.5 13 14"}],["path",{d:"m12 6 6 6 2.3-2.3a2.4 2.4 0 0 0 0-3.4l-2.6-2.6a2.4 2.4 0 0 0-3.4 0Z"}]]};kf.node;function fc(t,e){let n=Je(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return kf}}))}function mn(t){const e=t.resource.tenant??"",n=t.current_tenant??"";return[t.action,t.resource.kind,t.resource.name,e,n].join("")}function wo(t,e){return{...t,allowed:!1,reason:e}}var to,Nn,Hn;class ME{constructor(e){je(this,to);je(this,Nn,new Map);je(this,Hn,new Map);$n(this,to,e)}cachedDecision(e){return pe(this,Nn).get(mn(e))??null}cachedCan(e){var n;return((n=this.cachedDecision(e))==null?void 0:n.allowed)===!0}async decision(e){return await this.preload([e]),this.cachedDecision(e)??wo(e,"auth.can did not return a decision")}async can(e){return(await this.decision(e)).allowed}async preload(e){const n=e.filter(o=>!pe(this,Nn).has(mn(o)));if(n.length===0)return;const a=new Map;for(const o of n){const i=mn(o);pe(this,Hn).has(i)||a.set(i,o)}if(a.size>0){const o=[...a.values()],i=pe(this,to).authCan(o).then(l=>{const d=new Map(l.map(f=>[mn(f),f]));for(const f of o){const v=mn(f);pe(this,Nn).set(v,d.get(v)??wo(f,"auth.can omitted this check"))}}).catch(l=>{const d=l.message||"auth.can failed";for(const f of o)pe(this,Nn).set(mn(f),wo(f,d))}).finally(()=>{for(const l of o)pe(this,Hn).delete(mn(l))});for(const l of o){const d=mn(l);pe(this,Hn).set(d,i.then(()=>pe(this,Nn).get(d)??wo(l,"auth.can did not return a decision")))}}await Promise.all(n.map(o=>pe(this,Hn).get(mn(o))))}}to=new WeakMap,Nn=new WeakMap,Hn=new WeakMap;function Wr(t){return typeof t=="string"&&t.trim()?t:void 0}function Oa(t){return typeof t=="number"&&Number.isFinite(t)?t:void 0}function zE(t){const e=Wr(t.value_type)??Wr(t.valueType)??Wr(t["value-type"]);return e==null?void 0:e.toLowerCase()}function NE(t){return Oa(t.schema_version)??Oa(t.schemaVersion)??Oa(t["schema-version"])}function TE(t){if(typeof t=="string"){const l=t.trim();return l==="&***"?{type:"secret_ref",key:"***",masked:!0}:/^&[A-Za-z0-9_.-]+$/.test(l)?{type:"secret_ref",key:l.slice(1)}:void 0}if(!t||typeof t!="object"||Array.isArray(t))return;const e=t;if(e.type!=="secret_ref")return;const n=Wr(e.key)??Wr(e.path)??Wr(e.name);if(!n)return;const a={type:"secret_ref",key:n},o=Wr(e.store),i=Wr(e.collection);return o&&(a.store=o),i&&(a.collection=i),n==="***"&&(a.masked=!0),a}function vc(t){const e=t==null?void 0:t.trim();if(e)return Yn(e,"SHOW CONFIG prefix")}function Yn(t,e){const n=t.trim();if(!/^[A-Za-z_][A-Za-z0-9_]*(\.[A-Za-z_][A-Za-z0-9_]*)*$/.test(n))throw new Error(`${e} must be a dotted identifier path`);return n}function Sf(t){return`'${t.replace(/'/g,"''")}'`}function IE(t){if(t===null)return"NULL";if(typeof t=="boolean")return t?"true":"false";if(typeof t=="number"){if(!Number.isFinite(t))throw new Error("Config number value must be finite");return String(t)}return typeof t=="string"?Sf(t):JSON.stringify(t)}function AE(t,e){return`SET CONFIG ${Yn(t,"SET CONFIG key")} = ${IE(e)}`}function LE(t){const e=Yn(t,"DELETE CONFIG key"),n=e.lastIndexOf(".");if(n<=0||n===e.length-1)throw new Error("DELETE CONFIG key must include a collection and key");return`DELETE CONFIG ${e.slice(0,n)} ${e.slice(n+1)}`}function OE(t,e){return`SET SECRET ${Yn(t,"SET SECRET key")} = ${Sf(e)}`}function PE(t){return`DELETE SECRET ${Yn(t,"DELETE SECRET key")}`}function DE(t){return`UNSEAL VAULT ${Yn(t,"UNSEAL VAULT key")}`}function gc(t,e){if(!t.ok)throw new Error(t.error??`${e} failed`);return t}function pc(t,e){if(!t.ok)throw new Error(t.error??`${e} failed`);return{...t,query:e,record_count:0,result:{columns:[],records:[]}}}function RE(t,e){if(!t.ok)throw new Error(t.error??"UNSEAL VAULT failed");for(const n of t.result.records){const a=n.values,o=Wr(a.key);if(o&&o!==e)continue;const i=a.value??a.plaintext??a.secret;if(typeof i=="string")return{key:e,value:i}}throw new Error("UNSEAL VAULT returned no plaintext value")}function VE(t){if(!t.ok)throw new Error(t.error??"SHOW CONFIG failed");const e=[];for(const n of t.result.records){const a=n.values,o=Wr(a.key);if(!o||a.tombstone===!0)continue;const i={key:o,value:TE(a.value)??a.value},l=Wr(a.collection),d=Oa(a.version),f=zE(a),v=NE(a);l&&(i.collection=l),d!==void 0&&(i.version=d),f&&(i.valueType=f),v!==void 0&&(i.schemaVersion=v),"tags"in a&&(i.tags=a.tags),e.push(i)}return e.sort((n,a)=>n.key.localeCompare(a.key))}function HE(t){if(!t.ok)throw new Error(t.error??"SHOW SECRETS failed");const e=[];for(const n of t.result.records){const a=n.values,o=Wr(a.key);if(!o)continue;if(a.value!=="***")throw new Error("SHOW SECRETS returned an unmasked secret value");const l={key:o,value:"***"},d=Wr(a.status),f=Oa(a.version);d&&(l.status=d),f!==void 0&&(l.version=f),e.push(l)}return e.sort((n,a)=>n.key.localeCompare(a.key))}class On{constructor(e){this.transport=e}async showConfig(e){const n=vc(e),a=await this.transport.query(n?`SHOW CONFIG ${n}`:"SHOW CONFIG");return VE(a)}async showSecrets(e){const n=vc(e),a=await this.transport.query(n?`SHOW SECRETS ${n}`:"SHOW SECRETS");return HE(a)}async setConfig(e,n){const a=await this.transport.query(AE(e,n));return gc(a,"SET CONFIG")}async unsetConfig(e){const n=await this.transport.query(LE(e));return gc(n,"DELETE CONFIG")}async setSecret(e,n){const a=await this.transport.query(OE(e,n));return pc(a,"SET SECRET")}async deleteSecret(e){const n=await this.transport.query(PE(e));return pc(n,"DELETE SECRET")}async revealSecret(e){const n=Yn(e,"UNSEAL VAULT key"),a=await this.transport.query(DE(n));return RE(a,n)}}const Pa=[{id:"config",label:"Config",blurb:"Live non-secret configuration from SHOW CONFIG.",icon:"settings",readGrant:{action:"config:read",resource:{kind:"config",name:"*"}},writeGrant:{action:"config:write",resource:{kind:"config",name:"*"}}},{id:"secrets",label:"Secrets",blurb:"Vault inventory from SHOW SECRETS with values masked.",icon:"key",readGrant:{action:"vault:read_metadata",resource:{kind:"vault",name:"*"}},writeGrant:{action:"vault:write",resource:{kind:"vault",name:"*"}},revealGrant:{action:"vault:read",resource:{kind:"vault",name:"*"}}}],FE={"durability.mode":"Durability mode","concurrency.locking.enabled":"Locking","cache.blob.l1_bytes_max":"Blob L1 cache","cache.blob.l2_bytes_max":"Blob L2 cache","red.auth.enabled":"Authentication","red.auth.require_auth":"Require authentication","red.auth.session_ttl_secs":"Session TTL","red.backup.backend":"Backup backend","red.backup.enabled":"Backups","red.backup.interval_secs":"Backup interval","red.cdc.enabled":"Change data capture","red.config.secret.auto_decrypt":"Auto-decrypt config secrets","red.config.secret.auto_encrypt":"Auto-encrypt config secrets","red.server.max_body_size":"Max request body","red.server.max_scan_limit":"Max scan limit","red.server.read_timeout_ms":"Read timeout","red.server.write_timeout_ms":"Write timeout","red.storage.page_size":"Page size","red.storage.page_cache_capacity":"Page cache capacity","red.storage.verify_checksums":"Verify checksums","red.system.os":"Operating system","red.system.arch":"Architecture","red.system.hostname":"Hostname","red.system.cpu_cores":"CPU cores","red.system.total_memory_bytes":"System memory","red.vcs.default_branch":"Default branch","red.vcs.protected_branches":"Protected branches","runtime.result_cache.backend":"Result cache backend","runtime.result_cache.enabled":"Result cache","storage.bgwriter.delay_ms":"Background writer delay","storage.btree.lehman_yao":"Lehman-Yao B-tree","storage.wal.max_interval_ms":"WAL max interval","system.bootstrap.completed":"Bootstrap completed","system.bootstrap.preset":"Bootstrap preset"},qE={"durability.mode":"Write durability policy currently reported by reddb.","red.auth.enabled":"Whether reddb authentication is enabled for this instance.","red.auth.require_auth":"Whether unauthenticated requests are rejected.","red.backup.backend":"The selected backup storage backend.","red.backup.enabled":"Whether scheduled backups are enabled.","red.cdc.enabled":"Whether the change stream subsystem is enabled.","red.server.max_body_size":"Maximum accepted HTTP request body size, in bytes.","red.server.max_scan_limit":"Default cap for scan-heavy API paths.","red.storage.page_size":"On-disk page size used by the storage engine.","red.storage.verify_checksums":"Whether page checksums are verified on read.","red.vcs.default_branch":"Branch name used when VCS features need a default.","red.vcs.protected_branches":"Branches protected from destructive operations.","runtime.result_cache.enabled":"Whether query result caching is enabled.","system.bootstrap.preset":"The bootstrap profile that initialized defaults."},KE={"durability.mode":["sync","async","none"],"red.backup.backend":["local","s3","gcs"],"runtime.result_cache.backend":["legacy","blob_cache"]};function Cf(t){const n=(t.split(".").pop()??t).replace(/[_-]+/g," ").trim();return n?n.charAt(0).toUpperCase()+n.slice(1):t}function jE(t){switch(t){case"bool":case"boolean":return"boolean";case"int":case"integer":case"float":case"number":case"count":return"number";case"array":case"list":return"list";case"object":case"string":case"text":case"url":return"text";default:return null}}function BE(t){return typeof t=="boolean"?"boolean":typeof t=="number"?"number":Array.isArray(t)?"list":"text"}function Ef(t){return!!t&&typeof t=="object"&&!Array.isArray(t)&&t.type==="secret_ref"&&typeof t.key=="string"}function us(t){const e=KE[t.key],n=Ef(t.value)?t.value:void 0,a=n?"secret-reference":e?"enum":jE(t.valueType)??BE(t.value),o={key:t.key,label:FE[t.key]??Cf(t.key),kind:a},i=qE[t.key];return i&&(o.description=i),e&&(o.options=e),t.valueType&&(o.valueType=t.valueType),t.schemaVersion!==void 0&&(o.schemaVersion=t.schemaVersion),n&&(o.secretReference=n),o}function fs(t){return{key:t.key,label:Cf(t.key),kind:"text",masked:!0}}function UE(t,e=Pa){return e.find(n=>n.id===t)??e[0]??Pa[0]}function WE(t,e){return t.filter(n=>e.cachedCan(n.readGrant))}function GE(t,e){const n=e.trim().toLowerCase();return n?t.filter(a=>a.key.toLowerCase().includes(n)||us(a).label.toLowerCase().includes(n)||Ef(a.value)&&a.value.key.toLowerCase().includes(n)):[...t]}function YE(t,e){const n=e.trim().toLowerCase();return n?t.filter(a=>{var o;return a.key.toLowerCase().includes(n)||fs(a).label.toLowerCase().includes(n)||((o=a.status)==null?void 0:o.toLowerCase().includes(n))}):[...t]}function $E(t){return Array.isArray(t.value)||t.value&&typeof t.value=="object"?JSON.stringify(t.value,null,2):t.value===null||t.value===void 0?"":String(t.value)}function hc(t,e){var a;const n=e.trim();switch(t.kind){case"boolean":return n==="true"?{ok:!0,value:!0}:n==="false"?{ok:!0,value:!1}:{ok:!1,error:"Boolean config values must be true or false."};case"number":{if(!n)return{ok:!1,error:"Number config values cannot be empty."};const o=Number(n);return Number.isFinite(o)?{ok:!0,value:o}:{ok:!1,error:"Number config values must be finite."}}case"enum":return(a=t.options)!=null&&a.includes(e)?{ok:!0,value:e}:{ok:!1,error:"Choose one of the allowed config values."};case"list":try{const o=JSON.parse(e);return Array.isArray(o)?{ok:!0,value:o}:{ok:!1,error:"List config values must be a JSON array."}}catch{return{ok:!1,error:"List config values must be valid JSON."}}case"secret-reference":return{ok:!1,error:"Secret references can be unset, but not edited as plaintext config."};case"text":default:return{ok:!0,value:e}}}var XE=x('<span class="font-mono text-fg-2"> </span> live rows',1),ZE=x('<div class="h-12 rounded-md bg-bg-2 motion-safe:animate-pulse"></div>'),QE=x('<div class="grid gap-1 p-2"></div>'),JE=x('<div class="h-12 rounded-md bg-bg-2 motion-safe:animate-pulse"></div>'),e6=x('<div class="grid gap-1 p-2"></div>'),t6=x('<div><button type="button" class="min-w-0 text-left"><span class="block truncate text-[13px]"> </span> <span class="block truncate font-mono text-[11px] text-fg-3"> </span></button> <div class="inline-flex h-6 items-center gap-1.5 rounded border border-line-2 bg-bg-2 px-1.5 font-mono text-[11px] text-fg-2"><!> </div></div>'),r6=x('<div class="grid gap-1 p-2"></div>'),n6=x('<label class="inline-flex h-6 items-center gap-1.5 rounded border border-line-2 bg-bg-2 px-1.5 font-mono text-[11px] text-fg-2"><input type="checkbox" disabled="" tabindex="-1" class="size-3 accent-current"/> </label>'),a6=x("<option> </option>"),o6=x("<option> </option>"),i6=x('<select disabled="" tabindex="-1" class="h-6 w-28 rounded border border-line-2 bg-bg-2 px-1.5 font-mono text-[11px] text-primary-text disabled:opacity-100"><!><!></select>'),s6=x('<input readonly="" tabindex="-1" class="h-6 w-28 rounded border border-line-2 bg-bg-2 px-1.5 font-mono text-[11px] text-fg-2 outline-none"/>'),l6=x('<div><button type="button" class="min-w-0 text-left"><span class="block truncate text-[13px]"> </span> <span class="block truncate font-mono text-[11px] text-fg-3"> </span></button> <!></div>'),c6=x('<div class="grid gap-1 p-2"></div>'),d6=x('<button type="button" class="inline-flex h-7 items-center justify-center gap-1.5 rounded-md border border-line-2 bg-bg-2 px-2.5 text-[11px] font-mono text-fg-1 transition-colors hover:border-line-3 hover:text-fg-0 disabled:cursor-not-allowed disabled:opacity-40"><!> export config</button>'),u6=x('Live from <span class="font-mono text-fg-2"> </span>.',1),f6=x("<!> <!>",1),v6=x("<!> <!>",1),g6=x('<button type="button" class="inline-flex h-7 items-center gap-1.5 rounded-md border border-line-2 bg-bg-2 px-2.5 text-[11px] font-mono text-fg-1 hover:border-line-3 hover:text-fg-0 disabled:cursor-not-allowed disabled:opacity-40"><!> refresh</button>'),p6=x('<input readonly="" class="h-8 w-full rounded-md border border-line-2 bg-bg-2 px-2.5 font-mono text-[12px] text-fg-1 outline-none"/>'),h6=x('<span class="font-mono text-[12px] text-fg-1"> </span>'),b6=x('<div class="flex flex-wrap justify-end gap-1.5"><!> <!></div>'),x6=x('<button type="button" class="inline-flex h-8 items-center gap-1.5 rounded-md border border-line-2 bg-bg-2 px-2.5 text-[11px] font-mono text-fg-1 hover:border-line-3 hover:text-fg-0"><!> hide</button>'),m6=x('<button type="button" class="inline-flex h-8 items-center gap-1.5 rounded-md border border-warn/40 bg-warn/5 px-2.5 text-[11px] font-mono text-warn hover:border-warn/70 disabled:cursor-not-allowed disabled:opacity-40"><!> reveal</button>'),_6=x('<button type="button" class="inline-flex h-8 items-center gap-1.5 rounded-md border border-danger/30 bg-danger/5 px-2.5 text-[11px] font-mono text-danger hover:border-danger/60 disabled:cursor-not-allowed disabled:opacity-40"><!> delete</button>'),y6=x('<section><!> <div class="divide-y divide-line-1 overflow-hidden rounded-lg border border-line-1 bg-bg-1"><!> <!> <!> <!> <!></div></section>'),w6=x('<div role="status"><!> <span class="truncate"> </span></div>'),k6=x('<div role="status"><!> <span class="truncate"> </span></div>'),S6=x('<!> <section><!> <div class="grid gap-2 rounded-lg border border-line-1 bg-bg-1 p-3"><input type="text" placeholder="mycompany.payments.key" aria-label="Secret key" class="h-8 rounded-md border border-line-2 bg-bg-2 px-2.5 font-mono text-[12px] text-fg-1 outline-none placeholder:text-fg-3 disabled:cursor-not-allowed disabled:opacity-50"/> <input type="password" placeholder="New secret value" autocomplete="new-password" aria-label="New secret value" class="h-8 rounded-md border border-line-2 bg-bg-2 px-2.5 font-mono text-[12px] text-fg-1 outline-none placeholder:text-fg-3 disabled:cursor-not-allowed disabled:opacity-50"/> <div class="flex justify-end"><button type="button" class="inline-flex h-8 shrink-0 items-center gap-1.5 rounded-md border border-line-2 bg-bg-2 px-2.5 text-[11px] font-mono text-fg-1 hover:border-line-3 hover:text-fg-0 disabled:cursor-not-allowed disabled:opacity-40"><!> set</button></div></div></section>',1),C6=x('<section class="grid gap-4"><!> <!> <!></section>'),E6=x('<label class="inline-flex h-8 items-center gap-2 rounded-md border border-line-2 bg-bg-2 px-2.5 font-mono text-[12px] text-fg-1"><input type="checkbox" class="size-3 accent-current"/> </label>'),M6=x("<option> </option>"),z6=x("<option> </option>"),N6=x('<select class="h-8 min-w-[12rem] rounded-md border border-line-2 bg-bg-2 px-2.5 font-mono text-[12px] text-fg-1 disabled:opacity-100"><!><!></select>'),T6=x('<textarea rows="5" class="min-h-24 w-full resize-y rounded-md border border-line-2 bg-bg-2 px-2.5 py-2 font-mono text-[12px] text-fg-1 outline-none"></textarea>'),I6=x('<input readonly="" type="text" class="h-8 w-full rounded-md border border-line-2 bg-bg-2 px-2.5 font-mono text-[12px] text-fg-1 outline-none"/>'),A6=x('<input class="h-8 w-full rounded-md border border-line-2 bg-bg-2 px-2.5 font-mono text-[12px] text-fg-1 outline-none"/>'),L6=x('<span class="font-mono text-[12px] text-fg-1"> </span>'),O6=x('<div class="flex flex-wrap justify-end gap-1.5"><!> <!></div>'),P6=x('<div class="flex flex-wrap justify-end gap-2"><button type="button" class="inline-flex h-8 items-center gap-1.5 rounded-md border border-line-2 bg-bg-2 px-2.5 text-[11px] font-mono text-fg-1 hover:border-line-3 hover:text-fg-0 disabled:cursor-not-allowed disabled:opacity-40"><!> save</button> <button type="button" class="inline-flex h-8 items-center gap-1.5 rounded-md border border-danger/30 bg-danger/5 px-2.5 text-[11px] font-mono text-danger hover:border-danger/60 disabled:cursor-not-allowed disabled:opacity-40"><!> unset</button></div>'),D6=x('<div role="status"><!> <span class="truncate"> </span></div>'),R6=x('<label class="inline-flex h-8 w-fit items-center gap-2 rounded-md border border-line-2 bg-bg-2 px-2.5 font-mono text-[12px] text-fg-1"><input type="checkbox" class="size-3 accent-current"/> </label>'),V6=x('<textarea rows="4" placeholder="["main", "release"]" aria-label="New config value" class="min-h-20 resize-y rounded-md border border-line-2 bg-bg-2 px-2.5 py-2 font-mono text-[12px] text-fg-1 outline-none placeholder:text-fg-3 disabled:cursor-not-allowed disabled:opacity-50"></textarea>'),H6=x('<input type="text" aria-label="New config value" class="h-8 rounded-md border border-line-2 bg-bg-2 px-2.5 font-mono text-[12px] text-fg-1 outline-none placeholder:text-fg-3 disabled:cursor-not-allowed disabled:opacity-50"/>'),F6=x('<!> <section class="mt-4 border-t border-line-1 pt-4"><!> <div class="grid gap-2 rounded-lg border border-line-1 bg-bg-1 p-3"><div class="grid gap-2 @min-[42rem]:grid-cols-[minmax(0,1fr)_8rem]"><input type="text" placeholder="red.example.key" aria-label="New config key" class="h-8 rounded-md border border-line-2 bg-bg-2 px-2.5 font-mono text-[12px] text-fg-1 outline-none placeholder:text-fg-3 disabled:cursor-not-allowed disabled:opacity-50"/> <select aria-label="New config value type" class="h-8 rounded-md border border-line-2 bg-bg-2 px-2.5 font-mono text-[12px] text-fg-1 outline-none disabled:cursor-not-allowed disabled:opacity-50"><option>text</option><option>number</option><option>boolean</option><option>list</option></select></div> <!> <div class="flex justify-end"><button type="button" class="inline-flex h-8 shrink-0 items-center gap-1.5 rounded-md border border-line-2 bg-bg-2 px-2.5 text-[11px] font-mono text-fg-1 hover:border-line-3 hover:text-fg-0 disabled:cursor-not-allowed disabled:opacity-40"><!> set</button></div></div></section>',1),q6=x('<section><!> <div class="divide-y divide-line-1 overflow-hidden rounded-lg border border-line-1 bg-bg-1"><!> <!> <!> <!></div> <!></section>'),K6=x("<!> <!>",1),j6=x('<div class="@container h-full min-h-0 bg-bg-0"><div class="grid h-full min-h-0 grid-cols-1 @min-[62rem]:grid-cols-[13rem_minmax(18rem,24rem)_minmax(0,1fr)]"><aside class="flex min-h-0 flex-col border-b border-line-1 bg-bg-1 @min-[62rem]:border-b-0 @min-[62rem]:border-r"><div class="border-b border-line-1 px-3 py-3"><div class="type-label">Settings</div> <div class="mt-1 text-[13px] text-fg-1">Governance surface</div></div> <nav class="grid gap-0.5 p-2"></nav> <div class="mt-auto border-t border-line-1 px-3 py-2.5 text-[11px] text-fg-3"><!></div></aside> <section class="flex min-h-0 flex-col border-b border-line-1 bg-bg-1 @min-[62rem]:border-b-0 @min-[62rem]:border-r"><div class="border-b border-line-1 p-2"><div class="relative"><!> <input type="text" class="h-7 w-full rounded-md border border-line-2 bg-bg-2 pl-8 pr-2.5 text-xs text-fg-1 placeholder:text-fg-3 outline-none transition-colors focus:border-line-3 disabled:cursor-not-allowed disabled:opacity-50"/></div></div> <div class="min-h-0 flex-1 overflow-y-auto"><!></div> <div class="grid gap-2 border-t border-line-1 px-3 py-2.5"><!> <div class="truncate text-[11px] text-fg-3"><!></div></div></section> <main class="min-h-0 min-w-0 overflow-auto bg-bg-0"><div class="p-6"><!></div></main></div></div>');function B6(t,e){nt(e,!0);const n={key:Sa,settings:ji};let a=me(jt(Pa[0].id)),o=me(jt([])),i=me(null),l=me(!1),d=me(null),f=0;const v=y(()=>r(o).length>0),p=y(()=>UE(r(a),r(o)));let b=me(jt({})),h=me(null);const w=y(()=>r(v)?r(b)[r(p).id]??"":"");let k=me(jt([])),C=me(jt([])),P=me(null),$=me(null),O=me(!1),Z=me(null),Y=me(null),T=me(!1),q=me(null),ne=me(null),ie=me(""),J=me(""),ue=me("text"),U=me(""),E=me(null),I=me(""),_=me(""),A=me(!1),R=me(null),te=me(null),F=null;const X=y(()=>Be.connected),ee=y(()=>Be.active.url),L=y(()=>r(p).id==="secrets"?r(Y):r(Z)),H=y(()=>!r(X)||r(L)!==null),j=y(()=>GE(r(k),r(w))),le=y(()=>YE(r(C),r(w))),he=y(()=>r(p).id==="secrets"?r(le).length:r(j).length),oe=y(()=>r(p).id==="secrets"?r(C).length:r(k).length),Q=y(()=>r(j).find(ye=>ye.key===r(P))??r(j)[0]??null),W=y(()=>r(le).find(ye=>ye.key===r($))??r(le)[0]??null),G=y(()=>r(Q)?us(r(Q)):null),M=y(()=>r(W)?fs(r(W)):null),K=y(()=>{var ye;return r(p).id==="config"&&!!r(p).writeGrant&&((ye=r(i))==null?void 0:ye.cachedCan(r(p).writeGrant))===!0}),D=y(()=>{var ye;return r(p).id==="secrets"&&!!r(p).writeGrant&&((ye=r(i))==null?void 0:ye.cachedCan(r(p).writeGrant))===!0}),z=y(()=>{var ye;return r(p).id==="secrets"&&!!r(p).revealGrant&&((ye=r(i))==null?void 0:ye.cachedCan(r(p).revealGrant))===!0}),B=y(()=>{var ye;return r(W)&&((ye=r(te))==null?void 0:ye.key)===r(W).key?r(te).value:null});function re(ye){r(v)&&m(b,{...r(b),[r(p).id]:ye},!0)}function de(ye,Oe,qe){m(q,{paneId:ye,tone:Oe,message:qe},!0)}function be(){F&&(clearTimeout(F),F=null),m(te,null)}function fe(ye,Oe){be(),m(te,{key:ye,value:Oe},!0),F=setTimeout(()=>{m(te,null),F=null},3e4)}function Ce(ye){r($)!==ye&&be(),m($,ye,!0)}function ke(ye){var Oe,qe;(ye.metaKey||ye.ctrlKey)&&ye.key.toLowerCase()==="k"&&(ye.preventDefault(),(Oe=r(h))==null||Oe.focus(),(qe=r(h))==null||qe.select())}async function xe(){const ye=Be.client,Oe=++f;if(m(i,null),m(o,[],!0),m(d,null),m(k,[],!0),m(C,[],!0),m(P,null),m($,null),m(q,null),m(ne,null),m(E,null),m(I,""),m(_,""),m(R,null),be(),!ye||!r(X)){m(l,!1);return}m(l,!0);const qe=new ME(ye);try{if(await St.track("settings · auth.can panes",()=>qe.preload(Pa.flatMap(et=>[et.readGrant,et.writeGrant,et.revealGrant].filter(rt=>!!rt)))),Oe!==f)return;m(i,qe,!0);const Ye=WE(Pa,qe);m(o,Ye,!0),Ye.length>0&&!Ye.some(et=>et.id===r(a))&&m(a,Ye[0].id,!0)}catch(Ye){if(Oe!==f)return;m(o,[],!0),m(i,null),m(d,Ye.message,!0)}finally{Oe===f&&m(l,!1)}}async function ge(){var qe,Ye;const ye=Be.client,Oe=r(i);if(!ye||!r(X)||!Oe||!r(v)||!Oe.cachedCan(r(p).readGrant)){m(k,[],!0),m(C,[],!0),m(P,null),m($,null),m(Z,null),m(Y,null);return}m(O,!0),r(p).id==="secrets"?(m(Y,null),m(R,null),be()):m(Z,null);try{const et=new On(ye);if(r(p).id==="secrets"){const rt=await St.track("settings · show secrets",()=>et.showSecrets());m(C,rt,!0),(!r($)||!rt.some(Ge=>Ge.key===r($)))&&m($,((qe=rt[0])==null?void 0:qe.key)??null,!0)}else{const rt=await St.track("settings · show config",()=>et.showConfig());m(k,rt,!0),(!r(P)||!rt.some(Ge=>Ge.key===r(P)))&&m(P,((Ye=rt[0])==null?void 0:Ye.key)??null,!0)}}catch(et){r(p).id==="secrets"?(m(C,[],!0),m($,null),m(Y,et.message,!0)):(m(k,[],!0),m(P,null),m(Z,et.message,!0))}finally{m(O,!1)}}function De(){return hc({key:r(J),label:r(J),kind:r(ue)},r(ue)==="boolean"&&!r(U).trim()?"false":r(U))}async function ce(){const ye=Be.client;if(!ye||!r(Q)||!r(G)||!r(K)||r(T))return;const Oe=hc(r(G),r(ie));if(!Oe.ok){de("config","error",Oe.error??"Invalid config value.");return}m(T,!0),m(q,null);try{const qe=new On(ye);await St.track("settings · set config",()=>qe.setConfig(r(Q).key,Oe.value??null)),m(P,r(Q).key,!0),de("config","ok",`${r(Q).key} saved.`),await ge()}catch(qe){de("config","error",qe.message)}finally{m(T,!1)}}async function se(){const ye=Be.client;if(!ye||!r(Q)||!r(K)||r(T)||!window.confirm(`Unset ${r(Q).key}?`))return;const Oe=r(Q).key;m(T,!0),m(q,null);try{const qe=new On(ye);await St.track("settings · delete config",()=>qe.unsetConfig(Oe)),m(P,Oe,!0),de("config","ok",`${Oe} unset.`),await ge()}catch(qe){de("config","error",qe.message)}finally{m(T,!1)}}async function ve(){const ye=Be.client;if(!ye||!r(K)||r(T))return;const Oe=De();if(!Oe.ok){de("config","error",Oe.error??"Invalid config value.");return}const qe=r(J).trim();m(T,!0),m(q,null);try{const Ye=new On(ye);await St.track("settings · set config",()=>Ye.setConfig(qe,Oe.value??null)),m(P,qe,!0),m(J,""),m(U,""),de("config","ok",`${qe} set.`),await ge()}catch(Ye){de("config","error",Ye.message)}finally{m(T,!1)}}async function Ae(){const ye=Be.client;if(!ye||!r(D)||r(T))return;const Oe=r(I).trim(),qe=r(_);if(!Oe){de("secrets","error","Secret key is required.");return}if(!qe){de("secrets","error","Secret value is required.");return}m(T,!0),m(q,null);try{const Ye=new On(ye);await St.track("settings · set secret",()=>Ye.setSecret(Oe,qe)),m($,Oe,!0),m(_,""),de("secrets","ok",`${Oe} set.`),await ge()}catch(Ye){m(_,""),de("secrets","error",Ye.message)}finally{m(T,!1)}}async function Le(){const ye=Be.client;if(!ye||!r(W)||!r(D)||r(T)||!window.confirm(`Delete secret ${r(W).key}?`))return;const Oe=r(W).key;m(T,!0),m(q,null);try{const qe=new On(ye);await St.track("settings · delete secret",()=>qe.deleteSecret(Oe)),m(_,""),m($,Oe,!0),de("secrets","ok",`${Oe} deleted.`),await ge()}catch(qe){m(_,""),de("secrets","error",qe.message)}finally{m(T,!1)}}async function we(){const ye=Be.client;if(!ye||!r(W)||!r(z)||r(A))return;const Oe=r(W).key;m(A,!0),m(R,null),be();try{const qe=new On(ye),Ye=await St.track("settings · reveal secret",()=>qe.revealSecret(Oe));fe(Ye.key,Ye.value),m(R,{tone:"ok",key:Oe,message:"Plaintext revealed temporarily."},!0)}catch(qe){m(R,{tone:"error",key:Oe,message:qe.message},!0)}finally{m(A,!1)}}Lt(()=>{r(ee),r(X),xe()}),Lt(()=>{r(ee),r(X),r(a),r(i),r(o),ge()}),Lt(()=>{if(!r(Q)){m(ne,null),m(ie,"");return}r(ne)!==r(Q).key&&(m(ne,r(Q).key,!0),m(ie,$E(r(Q)),!0),m(q,null))}),Lt(()=>{r(p).id!=="secrets"||!r(W)||r(E)!==r(W).key&&(!r(I).trim()||r(I)===r(E))&&(m(I,r(W).key,!0),m(E,r(W).key,!0),m(q,null))});function Ie(ye){if(!Number.isFinite(ye))return String(ye);const Oe=["B","KB","MB","GB","TB"];let qe=ye,Ye=0;for(;qe>=1024&&Ye<Oe.length-1;)qe/=1024,Ye++;return`${Ye===0?qe:qe.toFixed(1)} ${Oe[Ye]}`}function Ee(ye){return ye.masked?"&***":`&${ye.collection?`${ye.collection}.`:""}${ye.key}`}function Me(ye){return!!ye&&typeof ye=="object"&&!Array.isArray(ye)&&"type"in ye&&ye.type==="secret_ref"}function Te(ye){const Oe=ye.value;return Me(Oe)?Ee(Oe):typeof Oe=="number"&&ye.key.endsWith("_bytes")?Ie(Oe):Array.isArray(Oe)?`${Oe.length} item${Oe.length===1?"":"s"}`:Oe&&typeof Oe=="object"?JSON.stringify(Oe):Oe==null?"null":String(Oe)}function Xe(ye){return Array.isArray(ye)||ye&&typeof ye=="object"?JSON.stringify(ye,null,2):ye==null?"null":String(ye)}function Fe(){const ye={url:r(ee),exportedAt:new Date().toISOString(),projection:"SHOW CONFIG",config:r(k).map(et=>({key:et.key,value:et.value,value_type:et.valueType??null,schema_version:et.schemaVersion??null}))},Oe=new Blob([JSON.stringify(ye,null,2)],{type:"application/json"}),qe=URL.createObjectURL(Oe),Ye=document.createElement("a");Ye.href=qe,Ye.download=`reddb-config-${new Date().toISOString().slice(0,10)}.json`,Ye.click(),URL.revokeObjectURL(qe)}function Qe(ye){return ye.id==="secrets"?r(C).length:r(k).length}var lt=j6();Sn("keydown",Kr,ke);var ct=c(lt),Ke=c(ct),He=u(c(Ke),2);$e(He,21,()=>r(o),ye=>ye.id,(ye,Oe)=>{const qe=y(()=>n[r(Oe).icon]??ji);{const Ye=Ge=>{Ec(Ge,{get icon(){return r(qe)},size:"sm"})},et=Ge=>{Ln(Ge,{children:(yt,ft)=>{Se();var pt=bt();N(At=>S(pt,At),[()=>Qe(r(Oe))]),g(yt,pt)},$$slots:{default:!0}})};let rt=y(()=>r(Oe).id===r(p).id);eS(ye,{get label(){return r(Oe).label},get current(){return r(rt)},onclick:()=>m(a,r(Oe).id,!0),icon:Ye,trailing:et,$$slots:{icon:!0,trailing:!0}})}}),s(He);var Ue=u(He,2),ot=c(Ue);{var ae=ye=>{var Oe=bt("checking grants");g(ye,Oe)},tt=ye=>{var Oe=XE(),qe=ze(Oe),Ye=c(qe,!0);s(qe),Se(),N(()=>S(Ye,r(oe))),g(ye,Oe)},Ze=ye=>{var Oe=bt("no readable panes");g(ye,Oe)};V(ot,ye=>{r(l)?ye(ae):r(v)?ye(tt,1):ye(Ze,-1)})}s(Ue),s(Ke);var We=u(Ke,2),ut=c(We),Et=c(ut),Tt=c(Et);Gr(Tt,{class:"pointer-events-none absolute left-2.5 top-1/2 size-3.5 -translate-y-1/2 text-fg-3"});var Mt=u(Tt,2);Xt(Mt),ln(Mt,ye=>m(h,ye),()=>r(h)),s(Et),s(ut);var Ct=u(ut,2),xt=c(Ct);{var mt=ye=>{var Oe=QE();$e(Oe,20,()=>Array(4),gr,(qe,Ye)=>{var et=ZE();g(qe,et)}),s(Oe),g(ye,Oe)},wt=ye=>{{let Oe=y(()=>r(X)?"No readable settings panes":"No active connection"),qe=y(()=>r(X)?"The current principal has no Settings read grant.":"Connect to a reddb instance to inspect its live configuration."),Ye=y(()=>r(d)??(r(X)?"auth.can denied settings reads":"red serve"));Hr(ye,{get icon(){return Li},get title(){return r(Oe)},get message(){return r(qe)},get hint(){return r(Ye)}})}},Ot=ye=>{{let Oe=y(()=>r(X)?`${r(p).label} is unreachable`:"No active connection"),qe=y(()=>r(X)?`red-ui could not read ${r(p).id==="secrets"?"SHOW SECRETS":"SHOW CONFIG"} from the active target.`:"Connect to a reddb instance to inspect its live configuration."),Ye=y(()=>r(X)?r(L)??r(ee):"red serve");Hr(ye,{get icon(){return fc},get title(){return r(Oe)},get message(){return r(qe)},get hint(){return r(Ye)}})}},Zt=ye=>{var Oe=e6();$e(Oe,20,()=>Array(8),gr,(qe,Ye)=>{var et=JE();g(qe,et)}),s(Oe),g(ye,Oe)},pr=ye=>{{let Oe=y(()=>r(w)?`No ${r(p).label.toLowerCase()} match`:`No ${r(p).label.toLowerCase()} reported`),qe=y(()=>r(w)?`Search checks the ${r(p).label.toLowerCase()} key and metadata.`:`${r(p).id==="secrets"?"SHOW SECRETS":"SHOW CONFIG"} returned no rows for this connection.`);Hr(ye,{get icon(){return Gr},get title(){return r(Oe)},get message(){return r(qe)}})}},hr=ye=>{var Oe=r6();$e(Oe,21,()=>r(le),qe=>qe.key,(qe,Ye)=>{const et=y(()=>fs(r(Ye)));var rt=t6(),Ge=c(rt),yt=c(Ge),ft=c(yt,!0);s(yt);var pt=u(yt,2),At=c(pt,!0);s(pt),s(Ge);var Pt=u(Ge,2),er=c(Pt);Sa(er,{class:"size-3"});var ur=u(er);s(Pt),s(rt),N(Vt=>{var Dt;Pe(rt,1,Vt),Ne(Ge,"aria-current",((Dt=r(W))==null?void 0:Dt.key)===r(Ye).key?"page":void 0),S(ft,r(et).label),S(At,r(Ye).key),S(ur,` ${r(Ye).value??""}`)},[()=>{var Vt;return Ve(["grid grid-cols-[minmax(0,1fr)_auto] items-center gap-2 rounded-md px-2.5 py-2 transition-colors",((Vt=r(W))==null?void 0:Vt.key)===r(Ye).key?"bg-bg-3 text-fg-0":"text-fg-1 hover:bg-bg-2"].join(" "))}]),_e("click",Ge,()=>Ce(r(Ye).key)),g(qe,rt)}),s(Oe),g(ye,Oe)},it=ye=>{var Oe=c6();$e(Oe,21,()=>r(j),qe=>qe.key,(qe,Ye)=>{const et=y(()=>us(r(Ye)));var rt=l6(),Ge=c(rt),yt=c(Ge),ft=c(yt,!0);s(yt);var pt=u(yt,2),At=c(pt,!0);s(pt),s(Ge);var Pt=u(Ge,2);{var er=Dt=>{var Gt=n6(),Ut=c(Gt);Xt(Ut);var ar=u(Ut);s(Gt),N(()=>{Ma(Ut,r(Ye).value===!0),S(ar,` ${r(Ye).value?"true":"false"}`)}),g(Dt,Gt)},ur=Dt=>{var Gt=i6(),Ut=c(Gt);{var ar=kt=>{var Ht=a6(),Wt=c(Ht,!0);s(Ht);var cr={};N((Qt,Mr)=>{S(Wt,Qt),cr!==(cr=Mr)&&(Ht.value=(Ht.__value=Mr)??"")},[()=>Te(r(Ye)),()=>String(r(Ye).value)]),g(kt,Ht)},fr=y(()=>{var kt;return!((kt=r(et).options)!=null&&kt.includes(String(r(Ye).value)))});V(Ut,kt=>{r(fr)&&kt(ar)})}var vr=u(Ut);$e(vr,17,()=>r(et).options??[],gr,(kt,Ht)=>{var Wt=o6(),cr=c(Wt,!0);s(Wt);var Qt={};N(()=>{S(cr,r(Ht)),Qt!==(Qt=r(Ht))&&(Wt.value=(Wt.__value=r(Ht))??"")}),g(kt,Wt)}),s(Gt);var Yt;ea(Gt),N(kt=>{Ne(Gt,"aria-label",r(et).label),Yt!==(Yt=kt)&&(Gt.value=(Gt.__value=kt)??"",ta(Gt,kt))},[()=>String(r(Ye).value)]),g(Dt,Gt)},Vt=Dt=>{var Gt=s6();Xt(Gt),N(Ut=>{Ne(Gt,"aria-label",r(et).label),Xr(Gt,Ut)},[()=>Te(r(Ye))]),g(Dt,Gt)};V(Pt,Dt=>{r(et).kind==="boolean"?Dt(er):r(et).kind==="enum"?Dt(ur,1):Dt(Vt,-1)})}s(rt),N(Dt=>{var Gt;Pe(rt,1,Dt),Ne(Ge,"aria-current",((Gt=r(Q))==null?void 0:Gt.key)===r(Ye).key?"page":void 0),S(ft,r(et).label),S(At,r(Ye).key)},[()=>{var Dt;return Ve(["grid grid-cols-[minmax(0,1fr)_auto] items-center gap-2 rounded-md px-2.5 py-2 transition-colors",((Dt=r(Q))==null?void 0:Dt.key)===r(Ye).key?"bg-bg-3 text-fg-0":"text-fg-1 hover:bg-bg-2"].join(" "))}]),_e("click",Ge,()=>m(P,r(Ye).key,!0)),g(qe,rt)}),s(Oe),g(ye,Oe)};V(xt,ye=>{r(l)?ye(mt):r(v)?r(H)?ye(Ot,2):r(O)&&r(he)===0?ye(Zt,3):r(he)===0?ye(pr,4):r(p).id==="secrets"?ye(hr,5):ye(it,-1):ye(wt,1)})}s(Ct);var dt=u(Ct,2),It=c(dt);{var Bt=ye=>{var Oe=d6(),qe=c(Oe);CE(qe,{class:"size-3.5"}),Se(),s(Oe),N(()=>Oe.disabled=r(l)||!r(v)||r(O)||r(k).length===0),_e("click",Oe,Fe),g(ye,Oe)};V(It,ye=>{r(p).id==="config"&&ye(Bt)})}var or=u(It,2),ir=c(or);{var sr=ye=>{var Oe=u6(),qe=u(ze(Oe)),Ye=c(qe,!0);s(qe),Se(),N(()=>S(Ye,r(ee))),g(ye,Oe)},wr=ye=>{var Oe=bt("Requires a Settings read grant.");g(ye,Oe)};V(ir,ye=>{r(v)?ye(sr):ye(wr,-1)})}s(or),s(dt),s(We);var lr=u(We,2),mr=c(lr),Er=c(mr);{var Tr=ye=>{var Oe=f6(),qe=ze(Oe);La(qe,{eyebrow:"Settings",title:"Settings",subtitle:"Checking Settings grants."});var Ye=u(qe,2);Hr(Ye,{get icon(){return Li},title:"Checking settings grants",message:"red-ui is asking reddb which Settings panes this principal can read.",hint:"POST /auth/can"}),g(ye,Oe)},kr=ye=>{var Oe=v6(),qe=ze(Oe);La(qe,{eyebrow:"Settings",title:"Settings",subtitle:"No readable governance surface."});var Ye=u(qe,2);{let et=y(()=>r(X)?"No readable settings panes":"No active connection"),rt=y(()=>r(X)?"Missing Settings read grant for this principal.":"Start or select a reddb target, then return here to inspect live config."),Ge=y(()=>r(d)??(r(X)?"missing Settings read grant":"docker compose -f docker/compose.yml up -d"));Hr(Ye,{get icon(){return Li},get title(){return r(et)},get message(){return r(rt)},get hint(){return r(Ge)}})}g(ye,Oe)},Ir=ye=>{var Oe=K6(),qe=ze(Oe);La(qe,{eyebrow:"Settings",get title(){return r(p).label},get subtitle(){return r(p).blurb},actions:pt=>{var At=g6(),Pt=c(At);{let er=y(()=>r(O)?"size-3.5 animate-spin":"size-3.5");ks(Pt,{get class(){return r(er)}})}Se(),s(At),N(()=>At.disabled=r(O)||!r(X)),_e("click",At,ge),g(pt,At)}});var Ye=u(qe,2);{var et=ft=>{{let pt=y(()=>r(X)?`Unable to read ${r(p).label.toLowerCase()}`:"No active connection"),At=y(()=>r(X)?`The ${r(p).label} pane is intentionally empty because ${r(p).id==="secrets"?"SHOW SECRETS":"SHOW CONFIG"} did not complete.`:"Start or select a reddb target, then return here to inspect live config."),Pt=y(()=>r(X)?r(L)??r(ee):"docker compose -f docker/compose.yml up -d");Hr(ft,{get icon(){return fc},get title(){return r(pt)},get message(){return r(At)},get hint(){return r(Pt)}})}},rt=ft=>{var pt=C6(),At=c(pt);{var Pt=Ut=>{Hr(Ut,{get icon(){return Sa},title:"No secret selected",message:"Select a live SHOW SECRETS row to inspect its masked metadata."})},er=Ut=>{var ar=y6(),fr=c(ar);yo(fr,{get title(){return r(M).label},class:"mb-2",icon:ht=>{Sa(ht,{class:"size-3.5"})},meta:ht=>{Ln(ht,{children:(dr,Nr)=>{Se();var Lr=bt("masked");g(dr,Lr)},$$slots:{default:!0}})},$$slots:{icon:!0,meta:!0}});var vr=u(fr,2),Yt=c(vr);xn(Yt,{get title(){return r(M).label},description:"Vault metadata row; plaintext is masked unless break-glass reveal is granted.",get hint(){return r(W).key},wide:!0,action:gt=>{var ht=p6();Xt(ht),N(()=>{Xr(ht,r(B)??r(W).value),Ne(ht,"aria-label",r(M).label)}),g(gt,ht)},$$slots:{action:!0}});var kt=u(Yt,2);xn(kt,{title:"Key",get hint(){return r(W).key},action:gt=>{var ht=h6(),dr=c(ht,!0);s(ht),N(()=>S(dr,r(W).key)),g(gt,ht)},$$slots:{action:!0}});var Ht=u(kt,2);xn(Ht,{title:"Metadata",action:gt=>{var ht=b6(),dr=c(ht);Ln(dr,{children:(Lr,Dr)=>{Se();var Jt=bt();N(()=>S(Jt,r(W).status??"status unknown")),g(Lr,Jt)},$$slots:{default:!0}});var Nr=u(dr,2);Ln(Nr,{children:(Lr,Dr)=>{Se();var Jt=bt();N(()=>S(Jt,`version ${(r(W).version===void 0?"unknown":r(W).version)??""}`)),g(Lr,Jt)},$$slots:{default:!0}}),s(ht),g(gt,ht)},$$slots:{action:!0}});var Wt=u(Ht,2);{var cr=Rt=>{xn(Rt,{title:"Break-glass reveal",description:"Calls reddb's audited UNSEAL VAULT path and clears plaintext after 30 seconds.",action:ht=>{var dr=_t(),Nr=ze(dr);{var Lr=Jt=>{var br=x6(),Or=c(br);eu(Or,{class:"size-3.5"}),Se(),s(br),_e("click",br,be),g(Jt,br)},Dr=Jt=>{var br=m6(),Or=c(br);{let $r=y(()=>r(A)?"size-3.5 animate-pulse":"size-3.5");ru(Or,{get class(){return r($r)}})}Se(),s(br),N(()=>br.disabled=r(A)),_e("click",br,we),g(Jt,br)};V(Nr,Jt=>{r(B)!==null?Jt(Lr):Jt(Dr,-1)})}g(ht,dr)},$$slots:{action:!0}})};V(Wt,Rt=>{r(z)&&Rt(cr)})}var Qt=u(Wt,2);{var Mr=Rt=>{xn(Rt,{title:"Authoring",description:"Delete the selected vault secret through DELETE SECRET.",action:ht=>{var dr=_6(),Nr=c(dr);Ra(Nr,{class:"size-3.5"}),Se(),s(dr),N(()=>dr.disabled=r(T)),_e("click",dr,Le),g(ht,dr)},$$slots:{action:!0}})};V(Qt,Rt=>{r(D)&&Rt(Mr)})}s(vr),s(ar),g(Ut,ar)};V(At,Ut=>{!r(W)||!r(M)?Ut(Pt):Ut(er,-1)})}var ur=u(At,2);{var Vt=Ut=>{var ar=w6(),fr=c(ar);ra(fr,{class:"size-3 shrink-0"});var vr=u(fr,2),Yt=c(vr,!0);s(vr),s(ar),N(kt=>{Pe(ar,1,kt),S(Yt,r(R).message)},[()=>Ve(["inline-flex max-w-full items-center gap-1.5 rounded-md border px-2.5 py-1.5 font-mono text-[11px]",r(R).tone==="ok"?"border-ok/30 bg-ok/5 text-ok":"border-danger/30 bg-danger/5 text-danger"].join(" "))]),g(Ut,ar)};V(ur,Ut=>{var ar;r(R)&&r(R).key===((ar=r(W))==null?void 0:ar.key)&&Ut(Vt)})}var Dt=u(ur,2);{var Gt=Ut=>{var ar=S6(),fr=ze(ar);{var vr=gt=>{var ht=k6(),dr=c(ht);ra(dr,{class:"size-3 shrink-0"});var Nr=u(dr,2),Lr=c(Nr,!0);s(Nr),s(ht),N(Dr=>{Pe(ht,1,Dr),S(Lr,r(q).message)},[()=>Ve(["inline-flex max-w-full items-center gap-1.5 rounded-md border px-2.5 py-1.5 font-mono text-[11px]",r(q).tone==="ok"?"border-ok/30 bg-ok/5 text-ok":"border-danger/30 bg-danger/5 text-danger"].join(" "))]),g(gt,ht)};V(fr,gt=>{var ht;((ht=r(q))==null?void 0:ht.paneId)==="secrets"&>(vr)})}var Yt=u(fr,2),kt=c(Yt);yo(kt,{title:"Set secret",class:"mb-2",icon:ht=>{Ta(ht,{class:"size-3.5"})},$$slots:{icon:!0}});var Ht=u(kt,2),Wt=c(Ht);Xt(Wt);var cr=u(Wt,2);Xt(cr);var Qt=u(cr,2),Mr=c(Qt),Rt=c(Mr);uc(Rt,{class:"size-3.5"}),Se(),s(Mr),s(Qt),s(Ht),s(Yt),N(gt=>{Xr(Wt,r(I)),Wt.disabled=r(T),Xr(cr,r(_)),cr.disabled=r(T),Mr.disabled=gt},[()=>r(T)||!r(I).trim()||!r(_)]),_e("input",Wt,gt=>m(I,gt.currentTarget.value,!0)),_e("input",cr,gt=>m(_,gt.currentTarget.value,!0)),_e("click",Mr,Ae),g(Ut,ar)};V(Dt,Ut=>{r(D)&&Ut(Gt)})}s(pt),g(ft,pt)},Ge=ft=>{Hr(ft,{get icon(){return Ev},title:"No config entry selected",message:"Select a live SHOW CONFIG row to inspect its read-only control."})},yt=ft=>{var pt=q6(),At=c(pt);yo(At,{get title(){return r(G).label},class:"mb-2",icon:Yt=>{var kt=_t(),Ht=ze(kt);{var Wt=Qt=>{Mv(Qt,{class:"size-3.5"})},cr=Qt=>{EE(Qt,{class:"size-3.5"})};V(Ht,Qt=>{r(G).kind==="secret-reference"?Qt(Wt):Qt(cr,-1)})}g(Yt,kt)},meta:Yt=>{Ln(Yt,{children:(kt,Ht)=>{Se();var Wt=bt();N(()=>S(Wt,r(G).kind)),g(kt,Wt)},$$slots:{default:!0}})},$$slots:{icon:!0,meta:!0}});var Pt=u(At,2),er=c(Pt);xn(er,{get title(){return r(G).label},get description(){return r(G).description},get hint(){return r(Q).key},wide:!0,action:vr=>{var Yt=_t(),kt=ze(Yt);{var Ht=Rt=>{var gt=E6(),ht=c(gt);Xt(ht);var dr=u(ht);s(gt),N(()=>{Ma(ht,r(K)?r(ie)==="true":r(Q).value===!0),ht.disabled=!r(K)||r(T),S(dr,` ${(r(K)?r(ie):r(Q).value?"true":"false")??""}`)}),_e("change",ht,Nr=>m(ie,Nr.currentTarget.checked?"true":"false",!0)),g(Rt,gt)},Wt=Rt=>{var gt=N6(),ht=c(gt);{var dr=Jt=>{var br=M6(),Or=c(br,!0);s(br);var $r={};N((tn,Ft)=>{S(Or,tn),$r!==($r=Ft)&&(br.value=(br.__value=Ft)??"")},[()=>Te(r(Q)),()=>String(r(Q).value)]),g(Jt,br)},Nr=y(()=>{var Jt;return!((Jt=r(G).options)!=null&&Jt.includes(String(r(Q).value)))});V(ht,Jt=>{r(Nr)&&Jt(dr)})}var Lr=u(ht);$e(Lr,17,()=>r(G).options??[],gr,(Jt,br)=>{var Or=z6(),$r=c(Or,!0);s(Or);var tn={};N(()=>{S($r,r(br)),tn!==(tn=r(br))&&(Or.value=(Or.__value=r(br))??"")}),g(Jt,Or)}),s(gt);var Dr;ea(gt),N(Jt=>{gt.disabled=!r(K)||r(T),Dr!==(Dr=Jt)&&(gt.value=(gt.__value=Jt)??"",ta(gt,Jt))},[()=>r(K)?r(ie):String(r(Q).value)]),_e("change",gt,Jt=>m(ie,Jt.currentTarget.value,!0)),g(Rt,gt)},cr=Rt=>{var gt=T6();Da(gt),N(ht=>{gt.readOnly=!r(K),gt.disabled=r(T),Xr(gt,ht)},[()=>r(K)?r(ie):Xe(r(Q).value)]),_e("input",gt,ht=>m(ie,ht.currentTarget.value,!0)),g(Rt,gt)},Qt=Rt=>{var gt=I6();Xt(gt),N(ht=>Xr(gt,ht),[()=>Te(r(Q))]),g(Rt,gt)},Mr=Rt=>{var gt=A6();Xt(gt),N(ht=>{gt.readOnly=!r(K),gt.disabled=r(T),Ne(gt,"type",(r(G).kind==="number","text")),Xr(gt,ht)},[()=>r(K)?r(ie):Te(r(Q))]),_e("input",gt,ht=>m(ie,ht.currentTarget.value,!0)),g(Rt,gt)};V(kt,Rt=>{r(G).kind==="boolean"?Rt(Ht):r(G).kind==="enum"?Rt(Wt,1):r(G).kind==="list"?Rt(cr,2):r(G).kind==="secret-reference"?Rt(Qt,3):Rt(Mr,-1)})}g(vr,Yt)},$$slots:{action:!0}});var ur=u(er,2);xn(ur,{title:"Key",get hint(){return r(Q).key},action:vr=>{var Yt=L6(),kt=c(Yt,!0);s(Yt),N(()=>S(kt,r(Q).key)),g(vr,Yt)},$$slots:{action:!0}});var Vt=u(ur,2);xn(Vt,{title:"Schema",action:vr=>{var Yt=O6(),kt=c(Yt);Ln(kt,{children:(Wt,cr)=>{Se();var Qt=bt();N(()=>S(Qt,r(G).valueType??"runtime type")),g(Wt,Qt)},$$slots:{default:!0}});var Ht=u(kt,2);Ln(Ht,{children:(Wt,cr)=>{Se();var Qt=bt();N(()=>S(Qt,`schema ${(r(G).schemaVersion===void 0?"unknown":r(G).schemaVersion)??""}`)),g(Wt,Qt)},$$slots:{default:!0}}),s(Yt),g(vr,Yt)},$$slots:{action:!0}});var Dt=u(Vt,2);{var Gt=fr=>{xn(fr,{title:"Authoring",description:"Submit changes through SET CONFIG or unset through DELETE CONFIG.",action:Yt=>{var kt=P6(),Ht=c(kt),Wt=c(Ht);uc(Wt,{class:"size-3.5"}),Se(),s(Ht);var cr=u(Ht,2),Qt=c(cr);Ra(Qt,{class:"size-3.5"}),Se(),s(cr),s(kt),N(()=>{Ht.disabled=r(T)||r(G).kind==="secret-reference",Ne(Ht,"title",r(G).kind==="secret-reference"?"Secret references can be unset, but not edited as plaintext config.":"Save config value"),cr.disabled=r(T)}),_e("click",Ht,ce),_e("click",cr,se),g(Yt,kt)},$$slots:{action:!0}})};V(Dt,fr=>{r(K)&&fr(Gt)})}s(Pt);var Ut=u(Pt,2);{var ar=fr=>{var vr=F6(),Yt=ze(vr);{var kt=zt=>{var $t=D6(),_r=c($t);ra(_r,{class:"size-3 shrink-0"});var rn=u(_r,2),Tn=c(rn,!0);s(rn),s($t),N(ma=>{Pe($t,1,ma),S(Tn,r(q).message)},[()=>Ve(["mt-3 inline-flex max-w-full items-center gap-1.5 rounded-md border px-2.5 py-1.5 font-mono text-[11px]",r(q).tone==="ok"?"border-ok/30 bg-ok/5 text-ok":"border-danger/30 bg-danger/5 text-danger"].join(" "))]),g(zt,$t)};V(Yt,zt=>{var $t;(($t=r(q))==null?void 0:$t.paneId)==="config"&&zt(kt)})}var Ht=u(Yt,2),Wt=c(Ht);yo(Wt,{title:"Set config key",class:"mb-2",icon:$t=>{Ta($t,{class:"size-3.5"})},$$slots:{icon:!0}});var cr=u(Wt,2),Qt=c(cr),Mr=c(Qt);Xt(Mr);var Rt=u(Mr,2),gt=c(Rt);gt.value=gt.__value="text";var ht=u(gt);ht.value=ht.__value="number";var dr=u(ht);dr.value=dr.__value="boolean";var Nr=u(dr);Nr.value=Nr.__value="list",s(Rt);var Lr;ea(Rt),s(Qt);var Dr=u(Qt,2);{var Jt=zt=>{var $t=R6(),_r=c($t);Xt(_r);var rn=u(_r);s($t),N(()=>{Ma(_r,r(U)==="true"),_r.disabled=r(T),S(rn,` ${r(U)==="true"?"true":"false"}`)}),_e("change",_r,Tn=>m(U,Tn.currentTarget.checked?"true":"false",!0)),g(zt,$t)},br=zt=>{var $t=V6();Da($t),N(()=>{Xr($t,r(U)),$t.disabled=r(T)}),_e("input",$t,_r=>m(U,_r.currentTarget.value,!0)),g(zt,$t)},Or=zt=>{var $t=H6();Xt($t),N(()=>{Xr($t,r(U)),Ne($t,"placeholder",r(ue)==="number"?"1000":"value"),$t.disabled=r(T)}),_e("input",$t,_r=>m(U,_r.currentTarget.value,!0)),g(zt,$t)};V(Dr,zt=>{r(ue)==="boolean"?zt(Jt):r(ue)==="list"?zt(br,1):zt(Or,-1)})}var $r=u(Dr,2),tn=c($r),Ft=c(tn);Ta(Ft,{class:"size-3.5"}),Se(),s(tn),s($r),s(cr),s(Ht),N(zt=>{Xr(Mr,r(J)),Mr.disabled=r(T),Rt.disabled=r(T),Lr!==(Lr=r(ue))&&(Rt.value=(Rt.__value=r(ue))??"",ta(Rt,r(ue))),tn.disabled=zt},[()=>r(T)||!r(J).trim()]),_e("input",Mr,zt=>m(J,zt.currentTarget.value,!0)),_e("change",Rt,zt=>m(ue,zt.currentTarget.value,!0)),_e("click",tn,ve),g(fr,vr)};V(Ut,fr=>{r(K)&&fr(ar)})}s(pt),g(ft,pt)};V(Ye,ft=>{r(H)?ft(et):r(p).id==="secrets"?ft(rt,1):!r(Q)||!r(G)?ft(Ge,2):ft(yt,-1)})}g(ye,Oe)};V(Er,ye=>{r(l)?ye(Tr):r(v)?ye(Ir,-1):ye(kr,1)})}s(mr),s(lr),s(ct),s(lt),N(ye=>{Ne(We,"aria-label",`${r(p).label} entries`),Ne(Mt,"placeholder",ye),Xr(Mt,r(w)),Mt.disabled=r(l)||!r(v)||r(H)},[()=>`Search ${r(p).label.toLowerCase()} ⌘K`]),_e("input",Mt,ye=>re(ye.currentTarget.value)),_e("keydown",Mt,ye=>{ye.key==="Escape"&&(re(""),ye.currentTarget.blur())}),g(t,lt),at()}nr(["input","keydown","click","change"]);const bc="var(--reddb-font-family-sans)",xc="var(--reddb-font-family-mono)",Fs=[{name:"reddb",label:"Reddb",description:"The canonical Design System application appearance.",colors:{bg:"var(--reddb-color-background)",accent:"var(--reddb-color-primary)",fg:"var(--reddb-color-foreground)"},typography:{sans:bc,mono:xc}},{name:"nocturne",label:"Nocturne",description:"Indigo-tinted midnight with a violet accent.",colors:{bg:"#0a0b14",accent:"#7c5cff",fg:"#f5f6fb"},typography:{sans:bc,mono:xc}}],qs=Fs[0],Mf="red-ui-skin";function mc(t){return Fs.find(e=>e.name===t)??qs}function _n(t,e,n){return`color-mix(in srgb, ${t} ${e}%, ${n})`}function Oi(t,e){return`color-mix(in srgb, ${t} ${e}%, transparent)`}const Pi=[0,4,9,15],Di=[6,13,22],Ri=[100,78,58,45];function vs(t){const{bg:e,accent:n,fg:a}=t.colors,o="#ffffff";return{"--color-bg-0":e,"--color-bg-1":_n(o,Pi[1],e),"--color-bg-2":_n(o,Pi[2],e),"--color-bg-3":_n(o,Pi[3],e),"--color-fg-0":a,"--color-fg-1":_n(a,Ri[1],e),"--color-fg-2":_n(a,Ri[2],e),"--color-fg-3":_n(a,Ri[3],e),"--color-line-1":_n(o,Di[0],e),"--color-line-2":_n(o,Di[1],e),"--color-line-3":_n(o,Di[2],e),"--color-accent":n,"--color-accent-soft":Oi(n,12),"--color-accent-glow":Oi(n,45),"--color-ambient-glow":Oi(n,6),"--color-role-primary":n,"--color-role-replica":"var(--reddb-color-feedback-info-foreground)","--color-role-embedded":"var(--reddb-color-feedback-success-foreground)","--color-ok":"var(--reddb-color-feedback-success-foreground)","--color-warn":"var(--reddb-color-feedback-warning-foreground)","--color-danger":"var(--reddb-color-feedback-danger-foreground)","--color-info":"var(--reddb-color-feedback-info-foreground)","--font-sans":t.typography.sans,"--font-mono":t.typography.mono}}function _c(t,e){const n={background:"--color-bg-0","elevation-base-surface":"--color-bg-1",muted:"--color-bg-2","elevation-raised-surface":"--color-bg-3",foreground:"--color-fg-0","ink-muted":"--color-fg-2","border-subtle":"--color-line-1","control-edge":"--color-line-2","border-strong":"--color-line-3",primary:"--color-accent","primary-text":"--color-accent"};for(const a of Object.keys(vs(t)))e.style.removeProperty(a);for(const a of Object.keys(n))e.style.removeProperty(`--reddb-color-${a}`);if(t.name!==qs.name){const a=vs(t);for(const[o,i]of Object.entries(a))e.style.setProperty(o,i);for(const[o,i]of Object.entries(n))e.style.setProperty(`--reddb-color-${o}`,a[i])}e.dataset.theme="application",e.dataset.colorScheme="dark"}function U6(){return typeof localStorage>"u"?null:localStorage.getItem(Mf)}function W6(t){typeof localStorage>"u"||localStorage.setItem(Mf,t)}function yc(t){return t??(typeof document<"u"?document.documentElement:null)}var ro;class G6{constructor(){je(this,ro,me(jt(qs)));qt(this,"target",null)}get current(){return r(pe(this,ro))}set current(e){m(pe(this,ro),e,!0)}init(e){this.target=yc(e);const n=U6();n&&(this.current=mc(n),this.target&&_c(this.current,this.target))}select(e){const n=mc(e);this.current=n;const a=yc(this.target);a&&(this.target=a,_c(n,a)),W6(n.name)}}ro=new WeakMap;const gs=new G6;var Y6=x('<span class="inline-flex items-center gap-1 rounded-full bg-accent-soft px-2 py-0.5 text-[10px] font-mono uppercase tracking-wider text-primary-text"><!> Active</span>'),$6=x('<button type="button"><div class="rounded-md overflow-hidden border border-line-1"><div class="bg-bg-0 p-3"><div class="flex items-center gap-1.5 mb-2.5"><span class="size-2 rounded-full" style="background: var(--color-accent)"></span> <span class="h-1.5 w-12 rounded-full bg-bg-3"></span> <span class="ml-auto h-1.5 w-6 rounded-full bg-bg-2"></span></div> <div class="rounded-md bg-bg-1 border border-line-2 p-2.5"><div class="h-1.5 w-2/3 rounded-full bg-fg-2 mb-2"></div> <div class="h-1.5 w-full rounded-full bg-bg-3 mb-1.5"></div> <div class="h-1.5 w-4/5 rounded-full bg-bg-3 mb-2.5"></div> <div class="flex items-center gap-1.5"><span class="h-4 w-12 rounded" style="background: var(--color-accent)"></span> <span class="h-4 w-8 rounded bg-bg-2 border border-line-2"></span></div></div></div> <div class="flex h-2.5"><span class="flex-1 bg-bg-0"></span> <span class="flex-1 bg-bg-1"></span> <span class="flex-1 bg-bg-2"></span> <span class="flex-1 bg-bg-3"></span></div></div> <div class="flex items-center gap-2 mt-3"><span class="type-h2 text-fg-0"> </span> <!></div> <p class="type-caption m-0 mt-1"> </p></button>'),X6=x('<div class="h-full overflow-auto bg-bg-0 p-6 text-fg-1"><!> <div class="grid grid-cols-[repeat(auto-fill,minmax(260px,1fr))] gap-4 max-w-4xl"></div></div>');function Z6(t,e){nt(e,!0);function n(d){return Object.entries(vs(d)).map(([f,v])=>`${f}: ${v}`).join("; ")}const a=y(()=>gs.current.name);var o=X6(),i=c(o);La(i,{eyebrow:"Settings",title:"Appearance",subtitle:"Pick a skin. Surfaces are derived from a single seed; the accent stays surgical. Dark only."});var l=u(i,2);$e(l,21,()=>Fs,d=>d.name,(d,f)=>{const v=y(()=>r(f).name===r(a));var p=$6(),b=c(p),h=u(b,2),w=c(h),k=c(w,!0);s(w);var C=u(w,2);{var P=Z=>{var Y=Y6(),T=c(Y);Pc(T,{class:"size-3"}),Se(),s(Y),g(Z,Y)};V(C,Z=>{r(v)&&Z(P)})}s(h);var $=u(h,2),O=c($,!0);s($),s(p),N(Z=>{Ne(p,"aria-pressed",r(v)),Pe(p,1,`group text-left rounded-lg border bg-bg-1 p-3 transition-colors ${r(v)?"border-accent":"border-line-2 hover:border-line-3"}`),yr(b,Z),S(k,r(f).label),S(O,r(f).description)},[()=>n(r(f))]),_e("click",p,()=>gs.select(r(f).name)),g(d,p)}),s(l),s(o),g(t,o),at()}nr(["click"]);const wc="red-ui-workspace-session";class Q6{constructor(e=1e3,n=null){qt(this,"_timer",null);qt(this,"debounceMs");qt(this,"_storage");this.debounceMs=e,this._storage=n}_store(){return this._storage?this._storage:typeof localStorage<"u"?localStorage:null}_write(e){var n;try{(n=this._store())==null||n.setItem(wc,JSON.stringify(e))}catch{}}schedule(e){this._timer!==null&&clearTimeout(this._timer),this._timer=setTimeout(()=>{this._timer=null,this._write(e)},this.debounceMs)}flush(e){this._timer!==null&&(clearTimeout(this._timer),this._timer=null),this._write(e)}restore(){var e;try{const n=(e=this._store())==null?void 0:e.getItem(wc);if(!n)return null;const a=JSON.parse(n);return typeof a.view!="string"?null:a}catch{return null}}}const ko=new Q6;var J6=x('<div class="flex h-full items-center justify-center font-mono text-[12px] text-fg-3">loading analytics…</div>'),eM=x('<div class="app relative grid grid-rows-[44px_32px_1fr] h-screen"><!> <!> <!> <main class="relative overflow-hidden z-[1]"><!></main> <!> <!> <!> <!></div>'),tM=x("<!> <!> <!>",1);function fM(t,e){nt(e,!0);let n=Re(e,"showConnect",3,!0),a=Re(e,"persistTheme",3,!0);const o=th(e.router??nd());e.connectionProvider&&zv(e.connectionProvider);function i(T){const q=T;if(q==="query"||q==="collections"||q==="cluster"||q==="security"||q==="settings"||q==="appearance"){o.go({view:q},void 0,!0);return}const ne=eh(T.startsWith("/")?T:`/${T}`);ne.collection?o.go({view:"collection",collection:ne.collection,subpage:ne.subpage??"table"},void 0,!0):o.go({view:ne.view},void 0,!0)}function l(){return{view:o.view,collection:o.collection,subpage:o.subpage,tabs:Kt.tabs,activeTabId:Kt.activeId}}function d(T){T.tabs.length>0&&Kt.hydrate(T.tabs,T.activeTabId),o.go(T.collection?{view:"collection",collection:T.collection,subpage:T.subpage??"table"}:{view:T.view},void 0,!0)}vn(()=>{e.connectionProvider?Be.adoptInjected().then(()=>{e.initialRoute&&i(e.initialRoute)}):Be.bootstrap().then(T=>{if(T)i(T);else{const q=ko.restore();q&&d(q)}})});let f=me(!1),v=me(!1);vn(()=>{const T=()=>m(v,!0);return window.addEventListener("red:open-pending-changes",T),()=>window.removeEventListener("red:open-pending-changes",T)}),vn(()=>{if(typeof window>"u"||!("__TAURI_INTERNALS__"in window||"__TAURI__"in window))return;let T;return co(async()=>{const{listen:q}=await import("./CHvQYbpl.js");return{listen:q}},__vite__mapDeps([0,1]),import.meta.url).then(({listen:q})=>q("deep-link",async ne=>{var U;const ie=(U=ne.payload)==null?void 0:U[0];if(!ie)return;let J=ie,ue=null;try{const E=ie.replace(/^reds?(\+[a-z]+)?:\/\//,"http://");ue=new URL(E).searchParams.get("to"),ue&&(J=ie.split("?")[0])}catch{}await Be.tryConnect(Mc(J)),ue&&i(ue)})).then(q=>{T=q}),()=>{T==null||T()}}),Lt(()=>{const T=Be.client;if(!T){Pr.setExecutor(null),Ur.setExecutor(null);return}Ur.setExecutor((q,ne)=>Nv(T,q,ne)),Pr.setExecutor(async q=>Promise.all(q.map(async ne=>{try{const ie=await T.query(ws(ne));return ie.ok?{id:ne.id,ok:!0}:{id:ne.id,ok:!1,error:ie.error??"query failed"}}catch(ie){return{id:ne.id,ok:!1,error:ie.message}}})))});const p=5e3;Rn.init({target:e.themeTarget??null,persist:a(),initial:e.initialTheme}),gs.init(e.themeTarget??null),Lt(()=>{if(xr.locked||!Be.targetResolved)return;const T=()=>{Be.client&&Be.refresh()};on(T);const q=setInterval(T,p);return()=>clearInterval(q)}),Lt(()=>{xr.store&&Be.hydrateUrls()}),Lt(()=>{if(!r(f))return;const T=l();ko.schedule(T)}),vn(()=>{const T=()=>{r(f)&&ko.flush(l())};return document.addEventListener("visibilitychange",T),window.addEventListener("blur",T),()=>{document.removeEventListener("visibilitychange",T),window.removeEventListener("blur",T)}}),vn(()=>{if(typeof window>"u"||!("__TAURI_INTERNALS__"in window||"__TAURI__"in window))return;let T;return co(async()=>{const{listen:q}=await import("./CHvQYbpl.js");return{listen:q}},__vite__mapDeps([0,1]),import.meta.url).then(({listen:q})=>q("close-request",async()=>{ko.flush(l());const{getCurrentWindow:ne}=await co(async()=>{const{getCurrentWindow:ie}=await import("./D02PB2u7.js");return{getCurrentWindow:ie}},__vite__mapDeps([2,1,0]),import.meta.url);await ne().destroy()})).then(q=>{T=q}),()=>{T==null||T()}});function b(){const T=Ur.nextLabel(),q=Kt.open({kind:"query",label:T,key:T},!0);Ur.ensure(q.id)}async function h(T,q){const ne=Kt.tabs.find(J=>J.kind==="collection"&&J.key===T);ne?Kt.open({kind:"collection",label:T,key:T,capability:ne.capability,overrideCapability:ne.overrideCapability,showSystemColumns:ne.showSystemColumns,subpage:q??ne.subpage}):Kt.open({kind:"collection",label:T,key:T,capability:"table",subpage:q??void 0});const ie=Be.client;if(!ie){q||o.go({view:"collection",collection:T,subpage:"table"},void 0,!0);return}try{const J=await fd(ie,T),ue=Kt.tabs.find(E=>E.kind==="collection"&&E.key===T),U=q??za(J);ue&&(Kt.tabs=Kt.tabs.map(E=>E===ue?{...E,capability:J,subpage:U}:E)),q||o.go({view:"collection",collection:T,subpage:U},void 0,!0)}catch{q||o.go({view:"collection",collection:T,subpage:"table"},void 0,!0)}}let w=null,k=null;Lt(()=>{const T=o.view,q=o.collection,ne=o.subpage;if(T==="collections"&&q){const ie=`${q}::${ne??""}`;ie!==k&&(k=ie,on(()=>void h(q,ne)))}else k=null;T==="query"&&w!=="query"&&on(()=>b()),w=T});var C=tM(),P=ze(C);{var $=T=>{Dv(T,{onDone:()=>m(f,!0)})},O=T=>{var q=eM(),ne=c(q);lg(ne,{});var ie=u(ne,2);oh(ie,{get showConnect(){return n()}});var J=u(ie,2);wh(J,{});var ue=u(J,2),U=c(ue);{var E=j=>{OC(j,{})},I=j=>{cC(j,{})},_=j=>{SE(j,{})},A=j=>{var le=_t(),he=ze(le);Av(he,()=>co(()=>import("./CgeUbXx3.js"),__vite__mapDeps([3,4,5,6,7,8,9,10,11,12,13,14,15,16]),import.meta.url),oe=>{var Q=J6();g(oe,Q)},(oe,Q)=>{var W=y(()=>{var{default:D}=r(Q);return{AnalyticsView:D}}),G=y(()=>r(W).AnalyticsView),M=_t(),K=ze(M);ba(K,()=>r(G),(D,z)=>{z(D,{})}),g(oe,M)}),g(j,le)},R=j=>{B6(j,{})},te=j=>{Z6(j,{})},F=j=>{yy(j)};V(U,j=>{o.view==="ask"?j(E):o.view==="cluster"?j(I,1):o.view==="security"?j(_,2):o.view==="analytics"?j(A,3):o.view==="settings"?j(R,4):o.view==="appearance"?j(te,5):j(F,-1)})}s(ue);var X=u(ue,2);zh(X,{});var ee=u(X,2);Oh(ee,{});var L=u(ee,2);qh(L,{});var H=u(L,2);$h(H,{get open(){return r(v)},onClose:()=>m(v,!1)}),s(q),g(T,q)};V(P,T=>{r(f)?T(O,-1):T($)})}var Z=u(P,2);qv(Z,{});var Y=u(Z,2);ig(Y,{}),g(t,C),at()}export{Fr as B,ed as C,Un as L,La as P,ks as R,fM as W,Ia as a,el as b,fn as c,Ic as i,eh as p,es as r,sl as t};
|