@reddb-io/ui 0.4.2 → 0.4.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (45) hide show
  1. package/build/404.html +72 -0
  2. package/build/_app/immutable/chunks/{Bg2aBORB.js → C3QbliX6.js} +6 -6
  3. package/build/_app/immutable/chunks/{VaQj2UQI.js → CRcUHjOC.js} +1 -1
  4. package/build/_app/immutable/chunks/{kV8hsQzl.js → Dblyp_YC.js} +1 -1
  5. package/build/_app/immutable/chunks/{mhMQ-ayQ.js → QTZ_pxoY.js} +1 -1
  6. package/build/_app/immutable/chunks/{Dc8lKBnh.js → RBJGFHIL.js} +8 -8
  7. package/build/_app/immutable/chunks/Uan23_-U.js +9 -0
  8. package/build/_app/immutable/entry/{app.DtscMa2D.js → app.DyPXqkIP.js} +2 -2
  9. package/build/_app/immutable/entry/start.BBR6s3gw.js +1 -0
  10. package/build/_app/immutable/nodes/{0.DoZdQbvH.js → 0.jHk_xbql.js} +2 -2
  11. package/build/_app/immutable/nodes/{1.DSd6_zVJ.js → 1.DG6cNRZC.js} +1 -1
  12. package/build/_app/immutable/nodes/10.Cf1044jB.js +1 -0
  13. package/build/_app/immutable/nodes/{15.BRAG9k6m.js → 15.B_-RXVqx.js} +4 -4
  14. package/build/_app/version.json +1 -1
  15. package/build/analytics.html +73 -0
  16. package/build/appearance.html +73 -0
  17. package/build/ask.html +73 -0
  18. package/build/cluster.html +73 -0
  19. package/build/collections.html +73 -0
  20. package/build/graph.html +74 -0
  21. package/build/index.html +25 -24
  22. package/build/query.html +73 -0
  23. package/build/redwire-ws-spike.html +74 -0
  24. package/build/security.html +73 -0
  25. package/build/settings.html +73 -0
  26. package/build/shadow-dom-spike.html +75 -0
  27. package/dist/embed/{AnalyticsView-ClS9XXRu.js → AnalyticsView-Bc4NYbS5.js} +2405 -2416
  28. package/dist/embed/AnalyticsView-Bc4NYbS5.js.map +1 -0
  29. package/dist/embed/{RedUiEmbedRoot-MOdYaz6g.js → RedUiEmbedRoot-BUcz7vnW.js} +11899 -11620
  30. package/dist/embed/RedUiEmbedRoot-BUcz7vnW.js.map +1 -0
  31. package/dist/embed/{index-EW_M_YFX.js → index-C3zysLt8.js} +4 -4
  32. package/dist/embed/{index-EW_M_YFX.js.map → index-C3zysLt8.js.map} +1 -1
  33. package/dist/embed/{index-client-6cYPkViG.js → index-client-esdlRozF.js} +2 -2
  34. package/dist/embed/{index-client-6cYPkViG.js.map → index-client-esdlRozF.js.map} +1 -1
  35. package/dist/embed/index.js +1 -1
  36. package/dist/embed/{sigma.esm-Dfzi-wY0.js → sigma.esm-Ds5a5Bdj.js} +2 -2
  37. package/dist/embed/{sigma.esm-Dfzi-wY0.js.map → sigma.esm-Ds5a5Bdj.js.map} +1 -1
  38. package/package.json +3 -3
  39. package/src/lib/Topbar.svelte +7 -6
  40. package/build/_app/immutable/chunks/DRlh90Cv.js +0 -1
  41. package/build/_app/immutable/chunks/DWeEt273.js +0 -5
  42. package/build/_app/immutable/entry/start.SL1PrWY_.js +0 -1
  43. package/build/_app/immutable/nodes/10.BlwKpXKq.js +0 -1
  44. package/dist/embed/AnalyticsView-ClS9XXRu.js.map +0 -1
  45. package/dist/embed/RedUiEmbedRoot-MOdYaz6g.js.map +0 -1
@@ -0,0 +1,9 @@
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./CHvQYbpl.js","./DhEqZVGG.js","./D02PB2u7.js","./C3QbliX6.js","./Bzak7iHL.js","./CGFL56WJ.js","./DIeogL5L.js","./nuKvOE41.js","./DCJ0QyYH.js","./RBJGFHIL.js","./CN4cKZHK.js","./Btd6PFkC.js","./BRBZjpE2.js","../assets/link-2.RXcH7ryE.css","./69_IOA4Y.js","../assets/AnalyticsView.BLAJezw4.css"])))=>i.map(i=>d[i]);
2
+ var Pf=Object.defineProperty;var js=t=>{throw TypeError(t)};var Df=(t,e,n)=>e in t?Pf(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n;var Nt=(t,e,n)=>Df(t,typeof e!="symbol"?e+"":e,n),fi=(t,e,n)=>e.has(t)||js("Cannot "+n);var pe=(t,e,n)=>(fi(t,e,"read from private field"),n?n.call(t):e.get(t)),Be=(t,e,n)=>e.has(t)?js("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(t):e.set(t,n),Gn=(t,e,n,a)=>(fi(t,e,"write to private field"),a?a.call(t,n):e.set(t,n),n),Zs=(t,e,n)=>(fi(t,e,"access private method"),n);import{p as Pe,s as st,r as Xe,b as Xr,c as ba,_ as co}from"./CN4cKZHK.js";import"./Bzak7iHL.js";import{a as vn,o as $o}from"./Btd6PFkC.js";import{aO as Rf,aA as Hf,b4 as Vf,aF as Dn,aD as Vi,aU as Ff,a2 as qf,aT as Us,s as Bf,br as Fi,bx as Kf,bs as Ws,ba as jf,aK as vi,ac as Gs,e as Zf,bJ as Uf,aR as Wf,as as Gf,by as Ys,X as Yf,b0 as $s,a4 as $f,bG as Q,ay as _a,Y as Xf,bd as Jf,aE as Xs,f as e0,az as t0,aH as r0,q as n0,aa as a0,x as o0,w as i0,al as ms,bK as sn,bf as s0,ad as Ec,bk as l0,a8 as c0,bP as Mc,bO as Tt,bi as d0,bj as Js,at as r,ag as u0,b9 as rt,bm as x,aq as ze,b6 as nt,bz as xe,a6 as c,bw as u,bg as s,bN as y,b8 as qt,b2 as Se,b3 as Jr,bn as xs,av as Xo,bI as en,be as Pa,aC as f0,am as zc,ap as Dr,a as Br,ao as v0}from"./CGFL56WJ.js";import{b as gi,e as xt,a as g,k as m,v as S,h as nr,i as _e,f as g0,r as qi,t as p0,x as bt,j as Sn,l as Cr}from"./nuKvOE41.js";import{B as h0,i as R}from"./DCJ0QyYH.js";import{j as Oe,k as _r,a as Lr,g as Ce,S as no,e as Re,r as Yt,d as Sr,i as ea,h as Ea,s as ta,c as Bi,b as b0,l as $r,C as _s}from"./BRBZjpE2.js";import{v as m0,n as Ge,q as el,I as vt,m as x0,X as Tr,h as St,J as qr,D as tr,a as Qc,t as gr,o as Jo,u as _0,k as Ke,d as cn,x as y0,y as w0,K as k0,w as S0,i as L0,N as C0,S as Wr,B as mr,g as Nc,l as Ma,e as ei,f as E0,G as M0,s as z0,T as Q0,b as pi,H as N0,L as T0,P as A0,R as I0,E as Hr,F as O0,c as P0,C as D0,A as R0}from"./RBJGFHIL.js";import"./69_IOA4Y.js";const H0=[];function Tc(t,e=!1,n=!1){return So(t,new Map,"",H0,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(Rf(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(Hf(t)===Vf){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 tl=0,rl=1,V0=2;function F0(t,e,n,a,o){Dn&&Vi();var i=Ff(),l=Yf,d=i?Ys(l):$s(l,!1,!1),f=i?Ys(l):$s(l,!1,!1),v=new h0(t);qf(()=>{var p=Gs,b=e(),h=!1;let w=Dn&&Us(b)===(t.data===Bf);if(w&&(Fi(Kf()),Ws(!1)),Us(b)){var k=$f(),L=!1;const O=G=>{if(!h){L=!0,k(!1),Gs===p&&p.deactivate(),Zf.ensure();try{G()}finally{Uf(!1),Wf||Gf()}}};b.then(G=>{O(()=>{vi(d,G),v.ensure(rl,a&&(I=>a(I,d)))})},G=>{O(()=>{if(vi(f,G),v.ensure(V0,o&&(I=>o(I,f))),!o)throw f.v})}),Dn?v.ensure(tl,n):jf(()=>{L||O(()=>{v.ensure(tl,n)})})}else vi(d,b),v.ensure(rl,a&&(O=>a(O,d)));return w&&Ws(!0),()=>{h=!0}})}function q0(t,e,n=!1,a=!1,o=!1,i=!1){var l=t,d="";if(n){var f=t;Dn&&(l=Fi(_a(f)))}Q(()=>{var v=Xf;if(d===(d=e()??"")){Dn&&Vi();return}if(n&&!Dn){v.nodes=null,f.innerHTML=d,d!==""&&gi(_a(f),f.lastChild);return}if(v.nodes!==null&&(Jf(v.nodes.start,v.nodes.end),v.nodes=null),d!==""){if(Dn){Xs.data;for(var p=Vi(),b=p;p!==null&&(p.nodeType!==e0||p.data!=="");)b=p,p=t0(p);if(p===null)throw r0(),n0;gi(Xs,b),l=Fi(p);return}var h=a?o0:o?i0:void 0,w=a0(a?"svg":o?"math":"template",h);w.innerHTML=d;var k=a||o?w:w.content;if(gi(_a(k),k.lastChild),a||o)for(;_a(k);)l.before(_a(k));else l.before(k)}})}function Rr(t,e,n){ms(()=>{var a=sn(()=>e(t,n==null?void 0:n())||{});if(n&&(a!=null&&a.update)){var o=!1,i={};s0(()=>{var l=n();Ec(l),o&&l0(i,l)&&(i=l,a.update(l))}),o=!0}if(a!=null&&a.destroy)return()=>a.destroy()})}var zn,la,ja,Go,Ac;const Yo=class Yo{constructor(e){Be(this,Go);Be(this,zn,new WeakMap);Be(this,la);Be(this,ja);Gn(this,ja,e)}observe(e,n){var a=pe(this,zn).get(e)||new Set;return a.add(n),pe(this,zn).set(e,a),Zs(this,Go,Ac).call(this).observe(e,pe(this,ja)),()=>{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,ja=new WeakMap,Go=new WeakSet,Ac=function(){return pe(this,la)??Gn(this,la,new ResizeObserver(e=>{for(var n of e){Yo.entries.set(n.target,n);for(var a of pe(this,zn).get(n.target)||[])a(n)}}))},Nt(Yo,"entries",new WeakMap);let Ki=Yo;var B0=new Ki({box:"border-box"});function nl(t,e,n){var a=B0.observe(t,()=>n(t[e]));ms(()=>(sn(()=>n(t[e])),a))}function Ic(t=!1){const e=c0,n=e.l.u;if(!n)return;let a=()=>Ec(e.s);if(t){let o=0,i={};const l=u0(()=>{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&&Mc(()=>{al(e,a),Js(n.b)}),Tt(()=>{const o=sn(()=>n.m.map(d0));return()=>{for(const i of o)typeof i=="function"&&i()}}),n.a.length&&Tt(()=>{al(e,a),Js(n.a)})}function al(t,e){if(t.l.s)for(const n of t.l.s)r(n);e()}var K0=m('<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 j0(t,e){rt(e,!0);let n=xe(!0),a=xe(0);vn(()=>{const d=setTimeout(()=>x(a,1),20),f=setTimeout(()=>x(a,2),800),v=setTimeout(()=>{var p;x(n,!1),(p=e.onDone)==null||p.call(e)},1e3);return()=>{clearTimeout(d),clearTimeout(f),clearTimeout(v)}});var o=xt(),i=ze(o);{var l=d=>{var f=K0();let v,p;Q(()=>{v=Oe(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=_r(f,"",p,{opacity:r(a)===0?0:void 0})}),g(d,f)};R(i,d=>{r(n)&&d(l)})}g(t,o),nt()}var Z0=m('<span class="ml-1 text-fg-3"> </span>'),U0=m('<span class="ml-1 text-danger"> </span>'),W0=m('<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>'),G0=m('<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 Y0(t,e){rt(e,!0);let n=Pe(e,"store",3,m0),a=Pe(e,"revealAfterMs",3,400),o=xe(!1),i=xe(0);Tt(()=>{if(!n().active){x(o,!1);return}x(i,Date.now(),!0);const b=setTimeout(()=>x(o,!0),a()),h=setInterval(()=>x(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=xt(),v=ze(f);{var p=b=>{var h=G0(),w=c(h),k=c(w),L=c(k),O=u(c(L),2),G=c(O,!0);s(O),s(L);var I=u(L,2),Y=c(I,!0);s(I),s(k);var K=u(k,2);Ge(K,21,()=>n().steps,z=>z.id,(z,F)=>{var ne=W0(),oe=c(ne);let J;var ue=u(oe,2),Z=c(ue);let C;var N=c(Z,!0);s(Z);var _=u(Z,2);{var T=ee=>{var A=Z0(),H=c(A,!0);s(A),Q(()=>S(H,r(F).detail)),g(ee,A)};R(_,ee=>{r(F).detail&&ee(T)})}var D=u(_,2);{var te=ee=>{var A=U0(),H=c(A);s(A),Q(()=>S(H,`— ${r(F).error??""}`)),g(ee,A)};R(D,ee=>{r(F).error&&ee(te)})}s(ue);var V=u(ue,2),$=c(V,!0);s(V),s(ne),Q(ee=>{J=Oe(oe,1,"mt-[3px] h-1.5 w-1.5 shrink-0 rounded-full",null,J,{"bg-accent":r(F).status==="active","animate-pulse":r(F).status==="active","motion-reduce:animate-none":r(F).status==="active","bg-ok":r(F).status==="done","bg-danger":r(F).status==="error"}),C=Oe(Z,1,"text-fg-1",null,C,{"text-fg-0":r(F).status==="active","text-danger":r(F).status==="error"}),S(N,r(F).label),S($,ee)},[()=>el(d(r(F)))]),g(z,ne)}),s(K),s(w),s(h),Q(z=>{S(G,n().label??"Opening connection"),S(Y,z)},[()=>el(r(l))]),g(b,h)};R(v,b=>{n().active&&r(o)&&b(p)})}g(t,f),nt()}function ys(t){return!!t&&typeof t=="object"&&t.available===!1}function Kr(t){if(!(t==null||ys(t)))return t}function $0(t){return ys(t)?t.reason:void 0}function X0(t,e,n){var i,l,d;const a=Kr((i=t==null?void 0:t.deployment)==null?void 0:i.process_role)??Kr((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=Kr((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 J0(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 ev(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 tv(t){if(!t)return[];const e=[],n=(a,o,i)=>{if(ys(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 ol=/\[\^(\d+)\]/g;function rv(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(ol.lastIndex=0;(d=ol.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 nv(t){const e=/^reddb:([^/]+)\/(.+?)(?:#.*)?$/.exec(t);return e?{collection:e[1],id:e[2]}:null}const av=[1e3,2e3,4e3,8e3,3e4];class ov{constructor(e){this.opts=e}subscribe(e={}){return new iv(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 iv{constructor(e,n){Nt(this,"events");Nt(this,"controller");Nt(this,"closed",!1);Nt(this,"lastSeenLsn");Nt(this,"currentSse",null);Nt(this,"pollTimer",null);Nt(this,"reconnectTimer",null);Nt(this,"backoffIdx",0);Nt(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??av,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 Oc={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"}]]};Oc.node;function sv(t,e){let n=Xe(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Oc}}))}const Pc={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"]};Pc.node;function Da(t,e){let n=Xe(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Pc}}))}const Dc={name:"check",size:24,node:[["path",{d:"M20 6 9 17l-5-5"}]]};Dc.node;function Rc(t,e){let n=Xe(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Dc}}))}var lv=m(`<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>`),cv=m('<span class="ml-1 text-fg-3 break-all"> </span>'),dv=m('<span class="ml-1 text-danger break-all"> </span>'),uv=m('<span class="shrink-0 tabular-nums text-fg-3" title="rows returned"> </span>'),fv=m('<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>'),vv=m('<ul class="divide-y divide-line-1/60"></ul>'),gv=m('<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 pv(t,e){rt(e,!0);let n=Pe(e,"store",3,x0),a=Pe(e,"open",3,!1),o=xe(qt(a())),i=xe(qt([])),l=xe(null);Tt(()=>n().subscribe(k=>x(i,k,!0))),Tt(()=>{const k=()=>x(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,L){var O;try{await((O=navigator.clipboard)==null?void 0:O.writeText(k)),x(l,L,!0),setTimeout(()=>{r(l)===L&&x(l,null)},1200)}catch{}}function v(k){const O=[`${k.verb} ${k.target} → ${k.ok?k.status??"ok":"error"} · ${k.durationMs}ms${k.rowCount===void 0?"":` · ${k.rowCount} rows`}`];return k.payload&&O.push(k.payload),k.error&&O.push(k.error),O.join(`
3
+ `)}function p(k){return k>=1e3?`${(k/1e3).toFixed(1)}s`:`${k}ms`}var b=xt(),h=ze(b);{var w=k=>{var L=gv(),O=c(L),G=c(O),I=u(c(G),2),Y=c(I);s(I),s(G);var K=u(G,2),z=c(K),F=c(z);Da(F,{class:"size-3"}),Se(),s(z);var ne=u(z,2),oe=c(ne);Tr(oe,{class:"size-3.5"}),s(ne),s(K),s(O);var J=u(O,2),ue=c(J);{var Z=N=>{var _=lv();g(N,_)},C=N=>{var _=vv();Ge(_,21,()=>r(d),T=>T.id,(T,D)=>{var te=fv(),V=c(te);let $;var ee=u(V,2),A=c(ee,!0);s(ee);var H=u(ee,2),B=c(H),le=c(B,!0);s(B);var he=u(B,2);{var ie=be=>{var fe=cv(),Le=c(fe,!0);s(fe),Q(ke=>S(Le,ke),[()=>r(D).payload.replace(/\s+/g," ").slice(0,120)]),g(be,fe)};R(he,be=>{r(D).payload&&be(ie)})}var X=u(he,2);{var U=be=>{var fe=dv(),Le=c(fe);s(fe),Q(()=>S(Le,`— ${r(D).error??""}`)),g(be,fe)};R(X,be=>{r(D).error&&be(U)})}s(H);var W=u(H,2);{var E=be=>{var fe=uv(),Le=c(fe);s(fe),Q(()=>S(Le,`${r(D).rowCount??""}r`)),g(be,fe)};R(W,be=>{r(D).rowCount!==void 0&&be(E)})}var q=u(W,2),P=c(q,!0);s(q);var M=u(q,2),j=c(M);{var re=be=>{Rc(be,{class:"size-3 text-ok"})},de=be=>{sv(be,{class:"size-3"})};R(j,be=>{r(l)===r(D).id?be(re):be(de,-1)})}s(M),s(te),Q(be=>{$=Oe(V,1,"mt-[5px] h-1.5 w-1.5 shrink-0 rounded-full",null,$,{"bg-ok":r(D).ok,"bg-danger":!r(D).ok}),S(A,r(D).verb),S(le,r(D).target),S(P,be)},[()=>p(r(D).durationMs)]),_e("click",M,()=>f(v(r(D)),r(D).id)),g(T,te)}),s(_),g(N,_)};R(ue,N=>{r(d).length===0?N(Z):N(C,-1)})}s(J),s(L),Q(()=>S(Y,`${r(i).length??""} calls`)),_e("click",z,()=>n().clear()),_e("click",ne,()=>x(o,!1)),g(k,L)};R(h,k=>{r(o)&&k(w)})}g(t,b),nt()}nr(["click"]);var hv=m('<div class="global-progress" role="progressbar" aria-label="reddb activity" aria-valuetext="Loading"><div class="global-progress__bar"></div></div>');function bv(t,e){rt(e,!1),Ic();var n=xt(),a=ze(n);{var o=i=>{var l=hv();g(i,l)};R(a,i=>{St.active&&i(o)})}g(t,n),nt()}var Za,Ua;class mv{constructor(e,n){Be(this,Za);Be(this,Ua);Gn(this,Za,e),Gn(this,Ua,g0(n))}get current(){return pe(this,Ua).call(this),pe(this,Za).call(this)}}Za=new WeakMap,Ua=new WeakMap;const xv=/\(.+\)/,_v=new Set(["all","print","screen","and","or","not","only"]);class yv extends mv{constructor(e,n){let a=xv.test(e)||e.split(/[\s,]+/).some(i=>_v.has(i.trim()))?e:`(${e})`;const o=window.matchMedia(a);super(()=>o.matches,i=>qi(o,"change",i))}}const wv=["display","title","heading","body","caption","eyebrow"],Hc={twMergeConfig:{extend:{classGroups:{"font-size":[{text:[...wv,"editable-sm","editable-md","editable-lg"]}]}}}},kv="hover:bg-foreground/8",Sv="active:bg-foreground/12",Lv="[&[aria-haspopup][aria-expanded=true]]:bg-foreground/10",Cv="focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-focus",Ev="disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50",Mv={muted:"text-ink-muted hover:text-foreground",foreground:"text-foreground",inherit:""},zv={offset:Cv,inset:"focus-visible:outline-2 focus-visible:-outline-offset-2 focus-visible:outline-focus"},Qv={true:"bg-foreground/10 hover:bg-foreground/10 font-medium text-foreground hover:text-foreground",false:""},ws=qr({base:["bg-transparent",kv,Sv,Lv,Ev].join(" "),variants:{ink:Mv,focus:zv,selected:Qv},defaultVariants:{ink:"muted",focus:"offset",selected:!1}},Hc);const il={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"}},Nv="border-transparent bg-primary text-on-primary",Tv={neutral:"",info:"",success:"",warning:"",danger:""},Av={tinted:"",filled:"",outline:"",neutral:"",primary:""},Iv=qr({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:Tv,variant:Av},compoundVariants:[...Object.entries(il).flatMap(([t,e])=>Object.entries(e).map(([n,a])=>({variant:t,tone:n,class:a}))),...Object.entries(il.tinted).map(([t,e])=>({variant:"neutral",tone:t,class:e})),{variant:"primary",class:Nv}],defaultVariants:{tone:"neutral",variant:"tinted"}});var Ov=m("<span><!></span>");function Vr(t,e){rt(e,!0);const n=Pe(e,"tone",3,"neutral"),a=Pe(e,"variant",3,"tinted"),o=Xe(e,["$$slots","$$events","$$legacy","tone","variant","class","children"]);Tt(()=>{a(),a()});var i=Ov();Lr(i,d=>({...o,class:d,"data-badge":!0,"data-tone":n(),"data-variant":a()}),[()=>Iv({tone:n(),variant:a(),class:e.class})]);var l=c(i);tr(l,()=>e.children),s(i),g(t,i),nt()}const Pv=qr({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 Dv(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(!(Lo(t.width)&&Lo(t.height))&&!Lo(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 Lo(t){return typeof t=="number"&&Number.isFinite(t)&&t>0}function Rv(t){return Lo(t.ratio)?t.ratio:t.width/t.height}var Hv=m("<img/>"),Vv=m("<source/>"),Fv=m('<picture data-image-picture="" class="contents"><!> <!></picture>');function qv(t,e){rt(e,!0);const n=L=>{var O=Hv();Lr(O,G=>({...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]:G}),[()=>({"aspect-ratio":String(r(v))})]),p0(O),g(L,O)},a=Pe(e,"decorative",3,!1),o=Pe(e,"sources",19,()=>[]),i=Pe(e,"priority",3,!1),l=Pe(e,"fit",3,"cover"),d=Pe(e,"position",3,"center"),f=Xe(e,["$$slots","$$events","$$legacy","src","alt","decorative","width","height","ratio","srcset","sizes","sources","priority","loading","fit","position","class"]),v=y(()=>(Dv({alt:e.alt,decorative:a(),width:e.width,height:e.height,ratio:e.ratio}),Rv({width:e.width,height:e.height,ratio:e.ratio}))),p=y(()=>Pv({fit:l(),position:d(),class:e.class}));var b=xt(),h=ze(b);{var w=L=>{var O=Fv(),G=c(O);Ge(G,17,o,Y=>Y.srcset,(Y,K)=>{var z=Vv();Q(()=>{Ce(z,"srcset",r(K).srcset),Ce(z,"type",r(K).type),Ce(z,"media",r(K).media),Ce(z,"sizes",r(K).sizes??e.sizes)}),g(Y,z)});var I=u(G,2);n(I),s(O),g(L,O)},k=L=>{n(L)};R(h,L=>{o().length>0?L(w):L(k,-1)})}g(t,b),nt()}const Bv={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"}},Kv=qr({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:Bv,labelHidden:{true:{label:"sr-only"},false:{label:""}}},defaultVariants:{size:"md",labelHidden:!1}});var jv=m('<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 Zv(t,e){rt(e,!0);const n=Pe(e,"label",3,"Loading…"),a=Pe(e,"size",3,"md"),o=Pe(e,"labelHidden",3,!1),i=Xe(e,["$$slots","$$events","$$legacy","label","size","labelHidden","class"]),l=y(()=>Kv({size:a(),labelHidden:o()}));var d=jv();Lr(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),Q((w,k,L,O)=>{Oe(f,0,w),Oe(v,0,k),Oe(p,0,L),Oe(b,1,O),S(h,n())},[()=>Re(r(l).spinner()),()=>Re(r(l).track()),()=>Re(r(l).head()),()=>Re(r(l).label())]),g(t,d),nt()}const Uv={outline:{},plain:{root:"border-transparent",header:"border-transparent",footer:"border-transparent"}},Wv={false:{},true:{root:"shadow-elevation-raised"}},Gv={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)]"}},Yv={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)]"}},$v={start:{footer:"justify-start"},center:{footer:"justify-center"},end:{footer:"justify-end"},between:{footer:"justify-between"}},Xv={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"}},Jv={cover:{media:"[&>*]:object-cover"},contain:{media:"[&>*]:object-contain"}},e2={center:{media:"[&>*]:object-center"},top:{media:"[&>*]:object-top"},bottom:{media:"[&>*]:object-bottom"},start:{media:"[&>*]:object-left"},end:{media:"[&>*]:object-right"}},t2={"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"}},r2={third:{},"two-fifths":{},half:{},background:{root:"relative isolate",media:"absolute inset-0 size-full",content:"relative z-10"}},n2=qr({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:Uv,raised:Wv,tone:Gv,padding:Yv,actionsAlign:$v,orientation:Xv,fit:Jv,position:e2,ratio:t2,span:r2},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"}}),a2={"16/9":16/9,"4/3":4/3,"1/1":1};var o2=m('<p data-card-title=""> </p>'),i2=m('<div data-card-title-row=""><!> <!></div>'),s2=m('<p data-card-title=""> </p>'),l2=m('<p data-card-description=""> </p>'),c2=m("<!> <!>",1),d2=m('<div data-card-header=""><!></div>'),u2=m('<div data-card-footer=""><!></div>'),f2=m('<!> <div data-card-body=""><!> <!></div> <!>',1),v2=m('<span data-background-media-scrim="strong" aria-hidden="true" class="pointer-events-none absolute inset-0 bg-background/80"></span>'),g2=m('<div data-card-media=""><!> <!></div>'),p2=m('<!> <div data-card-content=""><!></div>',1),h2=m('<div data-card-layout=""><!> <div data-card-content=""><!></div></div>'),b2=m("<div><!></div>");function Cn(t,e){rt(e,!0);const n=Z=>{var C=f2(),N=ze(C);{var _=A=>{var H=d2(),B=c(H);{var le=ie=>{var X=xt(),U=ze(X);tr(U,()=>e.header),g(ie,X)},he=ie=>{var X=c2(),U=ze(X);{var W=M=>{var j=i2(),re=c(j);{let fe=y(()=>r(Y).icon());Qc(re,{get icon(){return e.icon},"aria-hidden":"true",get class(){return r(fe)}})}var de=u(re,2);{var be=fe=>{var Le=o2(),ke=c(Le,!0);s(Le),Q(me=>{Oe(Le,1,me),S(ke,e.title)},[()=>Re(r(Y).title())]),g(fe,Le)};R(de,fe=>{e.title&&fe(be)})}s(j),Q(fe=>Oe(j,1,fe),[()=>Re(r(Y).titleRow())]),g(M,j)},E=M=>{var j=s2(),re=c(j,!0);s(j),Q(de=>{Oe(j,1,de),S(re,e.title)},[()=>Re(r(Y).title())]),g(M,j)};R(U,M=>{e.icon?M(W):e.title&&M(E,1)})}var q=u(U,2);{var P=M=>{var j=l2(),re=c(j,!0);s(j),Q(de=>{Oe(j,1,de),S(re,e.description)},[()=>Re(r(Y).description())]),g(M,j)};R(q,M=>{e.description&&M(P)})}g(ie,X)};R(B,ie=>{e.header?ie(le):ie(he,-1)})}s(H),Q(ie=>Oe(H,1,ie),[()=>Re(r(Y).header())]),g(A,H)};R(N,A=>{r(z)&&A(_)})}var T=u(N,2),D=c(T);{var te=A=>{Zv(A,{get label(){return d()},get labelHidden(){return f()},size:"sm",class:"mb-[var(--reddb-spatial-gap-sm)]","data-card-busy":!0})};R(D,A=>{l()&&A(te)})}var V=u(D,2);tr(V,()=>e.children??Jr),s(T);var $=u(T,2);{var ee=A=>{var H=u2(),B=c(H);tr(B,()=>e.footer),s(H),Q(le=>Oe(H,1,le),[()=>Re(r(Y).footer())]),g(A,H)};R($,A=>{e.footer&&A(ee)})}Q(A=>Oe(T,1,A),[()=>Re(r(Y).body())]),g(Z,C)},a=Z=>{var C=g2(),N=c(C);{var _=V=>{var $=xt(),ee=ze($);tr(ee,()=>e.media),g(V,$)},T=V=>{{let $=y(()=>e.image.ratio??(L()==="auto"?void 0:a2[L()]));qv(V,st(()=>e.image,{get ratio(){return r($)},get fit(){return w()},get position(){return k()},get priority(){return G()},class:"size-full"}))}};R(N,V=>{e.media?V(_):e.image&&V(T,1)})}var D=u(N,2);{var te=V=>{var $=v2();g(V,$)};R(D,V=>{O()==="background"&&V(te)})}s(C),Q(V=>{Ce(C,"data-card-media-fit",w()),Ce(C,"data-card-media-position",k()),Ce(C,"data-card-media-ratio",L()),Ce(C,"data-card-media-span",O()),Oe(C,1,V)},[()=>Re(r(Y).media())]),g(Z,C)},o=Pe(e,"variant",3,"outline"),i=Pe(e,"raised",3,!1),l=Pe(e,"busy",3,!1),d=Pe(e,"busyLabel",3,"Loading card content"),f=Pe(e,"busyLabelHidden",3,!1),v=Pe(e,"tone",3,"neutral"),p=Pe(e,"padding",3,"md"),b=Pe(e,"actionsAlign",3,"start"),h=Pe(e,"orientation",3,"vertical"),w=Pe(e,"fit",3,"cover"),k=Pe(e,"position",3,"center"),L=Pe(e,"ratio",3,"16/9"),O=Pe(e,"span",3,"two-fifths"),G=Pe(e,"priority",3,!1),I=Xe(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"]),Y=y(()=>n2({variant:o(),raised:i(),tone:v(),padding:p(),actionsAlign:b(),orientation:h(),fit:w(),position:k(),ratio:L(),span:O()})),K=y(()=>!!(e.media??e.image)),z=y(()=>!!(e.header??e.icon??e.title??e.description));Tt(()=>{v()});var F=b2();Lr(F,Z=>({...I,"data-card":!0,"data-raised":i()||void 0,"data-tone":v(),"data-card-orientation":h(),"aria-busy":l()||void 0,class:Z}),[()=>r(Y).root({class:e.class})]);var ne=c(F);{var oe=Z=>{var C=p2(),N=ze(C);a(N);var _=u(N,2),T=c(_);n(T),s(_),Q(D=>Oe(_,1,D),[()=>Re(r(Y).content())]),g(Z,C)},J=Z=>{var C=h2(),N=c(C);a(N);var _=u(N,2),T=c(_);n(T),s(_),s(C),Q((D,te)=>{Oe(C,1,D),Oe(_,1,te)},[()=>Re(r(Y).layout()),()=>Re(r(Y).content())]),g(Z,C)},ue=Z=>{n(Z)};R(ne,Z=>{r(K)&&O()==="background"?Z(oe):r(K)?Z(J,1):Z(ue,-1)})}s(F),g(t,F),nt()}const m2={sm:"h-4 min-w-4 px-1 text-xs",md:"h-5 min-w-5 px-1.5 text-xs"},sl=qr({base:"inline-flex items-center justify-center rounded-sm border border-muted bg-transparent font-mono leading-tight text-foreground whitespace-nowrap",variants:{size:m2},defaultVariants:{size:"md"}}),x2=qr({slots:{root:"inline-flex items-center gap-[var(--reddb-spatial-gap-sm)] whitespace-nowrap",separator:"text-ink-muted text-xs"}});var _2=m("<kbd><!></kbd>"),y2=m('<span aria-hidden="true"> </span>'),w2=m("<!> <kbd> </kbd>",1),k2=m("<kbd></kbd>");function jr(t,e){rt(e,!0);const n=Pe(e,"keys",19,()=>[]),a=Pe(e,"separator",3,"+"),o=Pe(e,"size",3,"md"),i=Xe(e,["$$slots","$$events","$$legacy","keys","separator","size","class","children"]),l=x2();var d=xt(),f=ze(d);{var v=b=>{var h=_2();Lr(h,k=>({...i,"data-kbd":!0,class:k}),[()=>sl({size:o(),class:e.class})]);var w=c(h);tr(w,()=>e.children),s(h),g(b,h)},p=b=>{var h=k2();Lr(h,w=>({...i,"data-kbd":!0,class:w}),[()=>l.root()]),Ge(h,21,n,gr,(w,k,L)=>{var O=w2(),G=ze(O);{var I=z=>{var F=y2(),ne=c(F,!0);s(F),Q(oe=>{Oe(F,1,oe),S(ne,a())},[()=>Re(l.separator())]),g(z,F)};R(G,z=>{L>0&&z(I)})}var Y=u(G,2),K=c(Y,!0);s(Y),Q(z=>{Oe(Y,1,z),S(K,r(k))},[()=>Re(sl({size:o(),class:e.class}))]),g(w,O)}),s(h),g(b,h)};R(f,b=>{e.children?b(v):b(p,-1)})}g(t,d),nt()}const S2=.25,Vc=16,Fc=32;class ll extends Error{constructor(n,a=Vc){super(`Logo: size=${n} would render the symbol at ${n}px, below the ${a}px minimum.
4
+ Minimum size is the component's physics, not its documentation (ADR 0004): there is no opt-out prop, because a legitimate exception has to be written by the Brand first.
5
+ Ask for size=${a} or larger, or use a layout whose symbol carries at this size.`);Nt(this,"size");Nt(this,"minimum");this.name="LogoTooSmallError",this.size=n,this.minimum=a}}function L2(t,e=Fc){if(!Number.isFinite(e)||e<=0)throw new ll(e);if(e<Vc)throw new ll(e);const n=e/t.symbolHeight,a=t.width*n,o=t.height*n,i=e*S2;return{symbol:e,clearspace:i,markWidth:a,markHeight:o,width:a+i*2,height:o+i*2}}function hi(t){return`${Math.round(t*1e3)/1e3}px`}const C2="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20397.712%20100'%20width='397.712'%20height='100'%20role='img'%20aria-label='RedDB'%3e%3ctitle%3eRedDB%3c/title%3e%3cpath%20d='M0%200%20H58%20L100%2038%20V100%20H0%20Z'%20fill='%23ff2056'/%3e%3cg%20transform='translate(11.284%2086.095)%20scale(0.0817%20-0.0817)'%20fill='%2307080a'%3e%3cpath%20d='M66%200%20L66%20700%20L370%20700%20Q436%20700%20485%20677%20Q534%20654%20561%20612%20Q588%20570%20588%20513%20L588%20501%20Q588%20438%20558%20399%20Q528%20360%20484%20342%20L484%20324%20Q524%20322%20546%20296.5%20Q568%20271%20568%20229%20L568%200%20L436%200%20L436%20210%20Q436%20234%20423.5%20249%20Q411%20264%20382%20264%20L198%20264%20L198%200%20ZM198%20370.28%20L368.64%20370.28%20Q419.4%20370.28%20448.02%20399.35%20Q476.64%20428.42%20476.64%20476.3%20L476.64%20487.7%20Q476.64%20535.58%20448.56%20564.65%20Q420.48%20593.72%20368.64%20593.72%20L198%20593.72%20Z'/%3e%3c/g%3e%3cg%20transform='translate(130%2038)%20scale(0.86835)'%3e%3cg%20transform='translate(0%2070)%20scale(0.1%20-0.1)'%20fill='%2307080a'%3e%3cpath%20d='M66%200L66%20700L370%20700Q436%20700%20485%20677Q534%20654%20561%20612Q588%20570%20588%20513L588%20501Q588%20438%20558%20399Q528%20360%20484%20342L484%20324Q524%20322%20546%20296.5Q568%20271%20568%20229L568%200L436%200L436%20210Q436%20234%20423.5%20249Q411%20264%20382%20264L198%20264L198%200ZM198%20384L356%20384Q403%20384%20429.5%20409.5Q456%20435%20456%20477L456%20487Q456%20529%20430%20554.5Q404%20580%20356%20580L198%20580Z'%20transform='translate(0%200)'/%3e%3cpath%20d='M296%20-14Q222%20-14%20165.5%2017.5Q109%2049%2077.5%20106.5Q46%20164%2046%20242L46%20254Q46%20332%2077%20389.5Q108%20447%20164%20478.5Q220%20510%20294%20510Q367%20510%20421%20477.5Q475%20445%20505%20387.5Q535%20330%20535%20254L535%20211L174%20211Q176%20160%20212%20128Q248%2096%20300%2096Q353%2096%20378%20119Q403%20142%20416%20170L519%20116Q505%2090%20478.5%2059.5Q452%2029%20408%207.5Q364%20-14%20296%20-14ZM175%20305L407%20305Q403%20348%20372.5%20374Q342%20400%20293%20400Q242%20400%20212%20374Q182%20348%20175%20305Z'%20transform='translate(614%200)'/%3e%3cpath%20d='M270%20-14Q211%20-14%20159.5%2015.5Q108%2045%2077%20102Q46%20159%2046%20240L46%20256Q46%20337%2077%20394Q108%20451%20159%20480.5Q210%20510%20270%20510Q315%20510%20345.5%20499.5Q376%20489%20395%20473Q414%20457%20424%20439L442%20439L442%20700L568%20700L568%200L444%200L444%2060L426%2060Q409%2032%20373.5%209Q338%20-14%20270%20-14ZM308%2096Q366%2096%20405%20133.5Q444%20171%20444%20243L444%20253Q444%20325%20405.5%20362.5Q367%20400%20308%20400Q250%20400%20211%20362.5Q172%20325%20172%20253L172%20243Q172%20171%20211%20133.5Q250%2096%20308%2096Z'%20transform='translate(1173%200)'/%3e%3cpath%20d='M46%200L46%20116L138%20116L138%20584L46%20584L46%20700L334%20700Q475%20700%20548.5%20628.5Q622%20557%20622%20416L622%20284Q622%20143%20548.5%2071.5Q475%200%20334%200ZM270%20120L336%20120Q416%20120%20453%20162Q490%20204%20490%20280L490%20420Q490%20497%20453%20538.5Q416%20580%20336%20580L270%20580Z'%20transform='translate(1793%200)'/%3e%3cpath%20d='M46%200L46%20116L138%20116L138%20584L46%20584L46%20700L406%20700Q470%20700%20517.5%20678.5Q565%20657%20591.5%20617.5Q618%20578%20618%20523L618%20513Q618%20465%20600%20434.5Q582%20404%20557.5%20387.5Q533%20371%20511%20364L511%20346Q533%20340%20559%20323.5Q585%20307%20603.5%20276Q622%20245%20622%20195L622%20185Q622%20127%20595%2085.5Q568%2044%20520.5%2022Q473%200%20410%200ZM270%20120L394%20120Q437%20120%20463.5%20141Q490%20162%20490%20201L490%20211Q490%20250%20464%20271Q438%20292%20394%20292L270%20292ZM270%20412L392%20412Q433%20412%20459.5%20433Q486%20454%20486%20491L486%20501Q486%20539%20460%20559.5Q434%20580%20392%20580L270%20580Z'%20transform='translate(2419%200)'/%3e%3c/g%3e%3c/g%3e%3c/svg%3e",E2="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20397.712%20100'%20width='397.712'%20height='100'%20role='img'%20aria-label='RedDB'%3e%3ctitle%3eRedDB%3c/title%3e%3cpath%20d='M0%200%20H58%20L100%2038%20V100%20H0%20Z'%20fill='%23ff2056'/%3e%3cg%20transform='translate(11.284%2086.095)%20scale(0.0817%20-0.0817)'%20fill='%2307080a'%3e%3cpath%20d='M66%200%20L66%20700%20L370%20700%20Q436%20700%20485%20677%20Q534%20654%20561%20612%20Q588%20570%20588%20513%20L588%20501%20Q588%20438%20558%20399%20Q528%20360%20484%20342%20L484%20324%20Q524%20322%20546%20296.5%20Q568%20271%20568%20229%20L568%200%20L436%200%20L436%20210%20Q436%20234%20423.5%20249%20Q411%20264%20382%20264%20L198%20264%20L198%200%20ZM198%20370.28%20L368.64%20370.28%20Q419.4%20370.28%20448.02%20399.35%20Q476.64%20428.42%20476.64%20476.3%20L476.64%20487.7%20Q476.64%20535.58%20448.56%20564.65%20Q420.48%20593.72%20368.64%20593.72%20L198%20593.72%20Z'/%3e%3c/g%3e%3cg%20transform='translate(130%2038)%20scale(0.86835)'%3e%3cg%20transform='translate(0%2070)%20scale(0.1%20-0.1)'%20fill='%23f4f5f7'%3e%3cpath%20d='M66%200L66%20700L370%20700Q436%20700%20485%20677Q534%20654%20561%20612Q588%20570%20588%20513L588%20501Q588%20438%20558%20399Q528%20360%20484%20342L484%20324Q524%20322%20546%20296.5Q568%20271%20568%20229L568%200L436%200L436%20210Q436%20234%20423.5%20249Q411%20264%20382%20264L198%20264L198%200ZM198%20384L356%20384Q403%20384%20429.5%20409.5Q456%20435%20456%20477L456%20487Q456%20529%20430%20554.5Q404%20580%20356%20580L198%20580Z'%20transform='translate(0%200)'/%3e%3cpath%20d='M296%20-14Q222%20-14%20165.5%2017.5Q109%2049%2077.5%20106.5Q46%20164%2046%20242L46%20254Q46%20332%2077%20389.5Q108%20447%20164%20478.5Q220%20510%20294%20510Q367%20510%20421%20477.5Q475%20445%20505%20387.5Q535%20330%20535%20254L535%20211L174%20211Q176%20160%20212%20128Q248%2096%20300%2096Q353%2096%20378%20119Q403%20142%20416%20170L519%20116Q505%2090%20478.5%2059.5Q452%2029%20408%207.5Q364%20-14%20296%20-14ZM175%20305L407%20305Q403%20348%20372.5%20374Q342%20400%20293%20400Q242%20400%20212%20374Q182%20348%20175%20305Z'%20transform='translate(614%200)'/%3e%3cpath%20d='M270%20-14Q211%20-14%20159.5%2015.5Q108%2045%2077%20102Q46%20159%2046%20240L46%20256Q46%20337%2077%20394Q108%20451%20159%20480.5Q210%20510%20270%20510Q315%20510%20345.5%20499.5Q376%20489%20395%20473Q414%20457%20424%20439L442%20439L442%20700L568%20700L568%200L444%200L444%2060L426%2060Q409%2032%20373.5%209Q338%20-14%20270%20-14ZM308%2096Q366%2096%20405%20133.5Q444%20171%20444%20243L444%20253Q444%20325%20405.5%20362.5Q367%20400%20308%20400Q250%20400%20211%20362.5Q172%20325%20172%20253L172%20243Q172%20171%20211%20133.5Q250%2096%20308%2096Z'%20transform='translate(1173%200)'/%3e%3cpath%20d='M46%200L46%20116L138%20116L138%20584L46%20584L46%20700L334%20700Q475%20700%20548.5%20628.5Q622%20557%20622%20416L622%20284Q622%20143%20548.5%2071.5Q475%200%20334%200ZM270%20120L336%20120Q416%20120%20453%20162Q490%20204%20490%20280L490%20420Q490%20497%20453%20538.5Q416%20580%20336%20580L270%20580Z'%20transform='translate(1793%200)'/%3e%3cpath%20d='M46%200L46%20116L138%20116L138%20584L46%20584L46%20700L406%20700Q470%20700%20517.5%20678.5Q565%20657%20591.5%20617.5Q618%20578%20618%20523L618%20513Q618%20465%20600%20434.5Q582%20404%20557.5%20387.5Q533%20371%20511%20364L511%20346Q533%20340%20559%20323.5Q585%20307%20603.5%20276Q622%20245%20622%20195L622%20185Q622%20127%20595%2085.5Q568%2044%20520.5%2022Q473%200%20410%200ZM270%20120L394%20120Q437%20120%20463.5%20141Q490%20162%20490%20201L490%20211Q490%20250%20464%20271Q438%20292%20394%20292L270%20292ZM270%20412L392%20412Q433%20412%20459.5%20433Q486%20454%20486%20491L486%20501Q486%20539%20460%20559.5Q434%20580%20392%20580L270%20580Z'%20transform='translate(2419%200)'/%3e%3c/g%3e%3c/g%3e%3c/svg%3e",M2="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20100%20100'%20width='100'%20height='100'%20role='img'%20aria-label='RedDB'%3e%3ctitle%3eRedDB%3c/title%3e%3cpath%20d='M0%200%20H58%20L100%2038%20V100%20H0%20Z'%20fill='%23ff2056'/%3e%3cg%20transform='translate(11.284%2086.095)%20scale(0.0817%20-0.0817)'%20fill='%2307080a'%3e%3cpath%20d='M66%200%20L66%20700%20L370%20700%20Q436%20700%20485%20677%20Q534%20654%20561%20612%20Q588%20570%20588%20513%20L588%20501%20Q588%20438%20558%20399%20Q528%20360%20484%20342%20L484%20324%20Q524%20322%20546%20296.5%20Q568%20271%20568%20229%20L568%200%20L436%200%20L436%20210%20Q436%20234%20423.5%20249%20Q411%20264%20382%20264%20L198%20264%20L198%200%20ZM198%20370.28%20L368.64%20370.28%20Q419.4%20370.28%20448.02%20399.35%20Q476.64%20428.42%20476.64%20476.3%20L476.64%20487.7%20Q476.64%20535.58%20448.56%20564.65%20Q420.48%20593.72%20368.64%20593.72%20L198%20593.72%20Z'/%3e%3c/g%3e%3c/svg%3e",z2="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20140%20154.423'%20width='140'%20height='154.423'%20role='img'%20aria-label='RedDB'%3e%3ctitle%3eRedDB%3c/title%3e%3cg%20transform='translate(20%200)'%3e%3cpath%20d='M0%200%20H58%20L100%2038%20V100%20H0%20Z'%20fill='%23ff2056'/%3e%3cg%20transform='translate(11.284%2086.095)%20scale(0.0817%20-0.0817)'%20fill='%2307080a'%3e%3cpath%20d='M66%200%20L66%20700%20L370%20700%20Q436%20700%20485%20677%20Q534%20654%20561%20612%20Q588%20570%20588%20513%20L588%20501%20Q588%20438%20558%20399%20Q528%20360%20484%20342%20L484%20324%20Q524%20322%20546%20296.5%20Q568%20271%20568%20229%20L568%200%20L436%200%20L436%20210%20Q436%20234%20423.5%20249%20Q411%20264%20382%20264%20L198%20264%20L198%200%20ZM198%20370.28%20L368.64%20370.28%20Q419.4%20370.28%20448.02%20399.35%20Q476.64%20428.42%20476.64%20476.3%20L476.64%20487.7%20Q476.64%20535.58%20448.56%20564.65%20Q420.48%20593.72%20368.64%20593.72%20L198%20593.72%20Z'/%3e%3c/g%3e%3c/g%3e%3cg%20transform='translate(0%20122)%20scale(0.4541)'%3e%3cg%20transform='translate(0%2070)%20scale(0.1%20-0.1)'%20fill='%2307080a'%3e%3cpath%20d='M66%200L66%20700L370%20700Q436%20700%20485%20677Q534%20654%20561%20612Q588%20570%20588%20513L588%20501Q588%20438%20558%20399Q528%20360%20484%20342L484%20324Q524%20322%20546%20296.5Q568%20271%20568%20229L568%200L436%200L436%20210Q436%20234%20423.5%20249Q411%20264%20382%20264L198%20264L198%200ZM198%20384L356%20384Q403%20384%20429.5%20409.5Q456%20435%20456%20477L456%20487Q456%20529%20430%20554.5Q404%20580%20356%20580L198%20580Z'%20transform='translate(0%200)'/%3e%3cpath%20d='M296%20-14Q222%20-14%20165.5%2017.5Q109%2049%2077.5%20106.5Q46%20164%2046%20242L46%20254Q46%20332%2077%20389.5Q108%20447%20164%20478.5Q220%20510%20294%20510Q367%20510%20421%20477.5Q475%20445%20505%20387.5Q535%20330%20535%20254L535%20211L174%20211Q176%20160%20212%20128Q248%2096%20300%2096Q353%2096%20378%20119Q403%20142%20416%20170L519%20116Q505%2090%20478.5%2059.5Q452%2029%20408%207.5Q364%20-14%20296%20-14ZM175%20305L407%20305Q403%20348%20372.5%20374Q342%20400%20293%20400Q242%20400%20212%20374Q182%20348%20175%20305Z'%20transform='translate(614%200)'/%3e%3cpath%20d='M270%20-14Q211%20-14%20159.5%2015.5Q108%2045%2077%20102Q46%20159%2046%20240L46%20256Q46%20337%2077%20394Q108%20451%20159%20480.5Q210%20510%20270%20510Q315%20510%20345.5%20499.5Q376%20489%20395%20473Q414%20457%20424%20439L442%20439L442%20700L568%20700L568%200L444%200L444%2060L426%2060Q409%2032%20373.5%209Q338%20-14%20270%20-14ZM308%2096Q366%2096%20405%20133.5Q444%20171%20444%20243L444%20253Q444%20325%20405.5%20362.5Q367%20400%20308%20400Q250%20400%20211%20362.5Q172%20325%20172%20253L172%20243Q172%20171%20211%20133.5Q250%2096%20308%2096Z'%20transform='translate(1173%200)'/%3e%3cpath%20d='M46%200L46%20116L138%20116L138%20584L46%20584L46%20700L334%20700Q475%20700%20548.5%20628.5Q622%20557%20622%20416L622%20284Q622%20143%20548.5%2071.5Q475%200%20334%200ZM270%20120L336%20120Q416%20120%20453%20162Q490%20204%20490%20280L490%20420Q490%20497%20453%20538.5Q416%20580%20336%20580L270%20580Z'%20transform='translate(1793%200)'/%3e%3cpath%20d='M46%200L46%20116L138%20116L138%20584L46%20584L46%20700L406%20700Q470%20700%20517.5%20678.5Q565%20657%20591.5%20617.5Q618%20578%20618%20523L618%20513Q618%20465%20600%20434.5Q582%20404%20557.5%20387.5Q533%20371%20511%20364L511%20346Q533%20340%20559%20323.5Q585%20307%20603.5%20276Q622%20245%20622%20195L622%20185Q622%20127%20595%2085.5Q568%2044%20520.5%2022Q473%200%20410%200ZM270%20120L394%20120Q437%20120%20463.5%20141Q490%20162%20490%20201L490%20211Q490%20250%20464%20271Q438%20292%20394%20292L270%20292ZM270%20412L392%20412Q433%20412%20459.5%20433Q486%20454%20486%20491L486%20501Q486%20539%20460%20559.5Q434%20580%20392%20580L270%20580Z'%20transform='translate(2419%200)'/%3e%3c/g%3e%3c/g%3e%3c/svg%3e",Q2="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20140%20154.423'%20width='140'%20height='154.423'%20role='img'%20aria-label='RedDB'%3e%3ctitle%3eRedDB%3c/title%3e%3cg%20transform='translate(20%200)'%3e%3cpath%20d='M0%200%20H58%20L100%2038%20V100%20H0%20Z'%20fill='%23ff2056'/%3e%3cg%20transform='translate(11.284%2086.095)%20scale(0.0817%20-0.0817)'%20fill='%2307080a'%3e%3cpath%20d='M66%200%20L66%20700%20L370%20700%20Q436%20700%20485%20677%20Q534%20654%20561%20612%20Q588%20570%20588%20513%20L588%20501%20Q588%20438%20558%20399%20Q528%20360%20484%20342%20L484%20324%20Q524%20322%20546%20296.5%20Q568%20271%20568%20229%20L568%200%20L436%200%20L436%20210%20Q436%20234%20423.5%20249%20Q411%20264%20382%20264%20L198%20264%20L198%200%20ZM198%20370.28%20L368.64%20370.28%20Q419.4%20370.28%20448.02%20399.35%20Q476.64%20428.42%20476.64%20476.3%20L476.64%20487.7%20Q476.64%20535.58%20448.56%20564.65%20Q420.48%20593.72%20368.64%20593.72%20L198%20593.72%20Z'/%3e%3c/g%3e%3c/g%3e%3cg%20transform='translate(0%20122)%20scale(0.4541)'%3e%3cg%20transform='translate(0%2070)%20scale(0.1%20-0.1)'%20fill='%23f4f5f7'%3e%3cpath%20d='M66%200L66%20700L370%20700Q436%20700%20485%20677Q534%20654%20561%20612Q588%20570%20588%20513L588%20501Q588%20438%20558%20399Q528%20360%20484%20342L484%20324Q524%20322%20546%20296.5Q568%20271%20568%20229L568%200L436%200L436%20210Q436%20234%20423.5%20249Q411%20264%20382%20264L198%20264L198%200ZM198%20384L356%20384Q403%20384%20429.5%20409.5Q456%20435%20456%20477L456%20487Q456%20529%20430%20554.5Q404%20580%20356%20580L198%20580Z'%20transform='translate(0%200)'/%3e%3cpath%20d='M296%20-14Q222%20-14%20165.5%2017.5Q109%2049%2077.5%20106.5Q46%20164%2046%20242L46%20254Q46%20332%2077%20389.5Q108%20447%20164%20478.5Q220%20510%20294%20510Q367%20510%20421%20477.5Q475%20445%20505%20387.5Q535%20330%20535%20254L535%20211L174%20211Q176%20160%20212%20128Q248%2096%20300%2096Q353%2096%20378%20119Q403%20142%20416%20170L519%20116Q505%2090%20478.5%2059.5Q452%2029%20408%207.5Q364%20-14%20296%20-14ZM175%20305L407%20305Q403%20348%20372.5%20374Q342%20400%20293%20400Q242%20400%20212%20374Q182%20348%20175%20305Z'%20transform='translate(614%200)'/%3e%3cpath%20d='M270%20-14Q211%20-14%20159.5%2015.5Q108%2045%2077%20102Q46%20159%2046%20240L46%20256Q46%20337%2077%20394Q108%20451%20159%20480.5Q210%20510%20270%20510Q315%20510%20345.5%20499.5Q376%20489%20395%20473Q414%20457%20424%20439L442%20439L442%20700L568%20700L568%200L444%200L444%2060L426%2060Q409%2032%20373.5%209Q338%20-14%20270%20-14ZM308%2096Q366%2096%20405%20133.5Q444%20171%20444%20243L444%20253Q444%20325%20405.5%20362.5Q367%20400%20308%20400Q250%20400%20211%20362.5Q172%20325%20172%20253L172%20243Q172%20171%20211%20133.5Q250%2096%20308%2096Z'%20transform='translate(1173%200)'/%3e%3cpath%20d='M46%200L46%20116L138%20116L138%20584L46%20584L46%20700L334%20700Q475%20700%20548.5%20628.5Q622%20557%20622%20416L622%20284Q622%20143%20548.5%2071.5Q475%200%20334%200ZM270%20120L336%20120Q416%20120%20453%20162Q490%20204%20490%20280L490%20420Q490%20497%20453%20538.5Q416%20580%20336%20580L270%20580Z'%20transform='translate(1793%200)'/%3e%3cpath%20d='M46%200L46%20116L138%20116L138%20584L46%20584L46%20700L406%20700Q470%20700%20517.5%20678.5Q565%20657%20591.5%20617.5Q618%20578%20618%20523L618%20513Q618%20465%20600%20434.5Q582%20404%20557.5%20387.5Q533%20371%20511%20364L511%20346Q533%20340%20559%20323.5Q585%20307%20603.5%20276Q622%20245%20622%20195L622%20185Q622%20127%20595%2085.5Q568%2044%20520.5%2022Q473%200%20410%200ZM270%20120L394%20120Q437%20120%20463.5%20141Q490%20162%20490%20201L490%20211Q490%20250%20464%20271Q438%20292%20394%20292L270%20292ZM270%20412L392%20412Q433%20412%20459.5%20433Q486%20454%20486%20491L486%20501Q486%20539%20460%20559.5Q434%20580%20392%20580L270%20580Z'%20transform='translate(2419%200)'/%3e%3c/g%3e%3c/g%3e%3c/svg%3e",N2="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20100%20100'%20width='100'%20height='100'%20role='img'%20aria-label='RedDB'%3e%3ctitle%3eRedDB%3c/title%3e%3cpath%20d='M0%200%20H58%20L100%2038%20V100%20H0%20Z'%20fill='%2307080a'/%3e%3cg%20transform='translate(11.284%2086.095)%20scale(0.0817%20-0.0817)'%20fill='%23f4f5f7'%3e%3cpath%20d='M66%200%20L66%20700%20L370%20700%20Q436%20700%20485%20677%20Q534%20654%20561%20612%20Q588%20570%20588%20513%20L588%20501%20Q588%20438%20558%20399%20Q528%20360%20484%20342%20L484%20324%20Q524%20322%20546%20296.5%20Q568%20271%20568%20229%20L568%200%20L436%200%20L436%20210%20Q436%20234%20423.5%20249%20Q411%20264%20382%20264%20L198%20264%20L198%200%20ZM198%20370.28%20L368.64%20370.28%20Q419.4%20370.28%20448.02%20399.35%20Q476.64%20428.42%20476.64%20476.3%20L476.64%20487.7%20Q476.64%20535.58%20448.56%20564.65%20Q420.48%20593.72%20368.64%20593.72%20L198%20593.72%20Z'/%3e%3c/g%3e%3c/svg%3e",T2="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20100%20100'%20width='100'%20height='100'%20role='img'%20aria-label='RedDB'%3e%3ctitle%3eRedDB%3c/title%3e%3cpath%20d='M0%200%20H58%20L100%2038%20V100%20H0%20Z'%20fill='%23ff2056'/%3e%3cg%20transform='translate(11.284%2086.095)%20scale(0.0817%20-0.0817)'%20fill='%2307080a'%3e%3cpath%20d='M66%200%20L66%20700%20L370%20700%20Q436%20700%20485%20677%20Q534%20654%20561%20612%20Q588%20570%20588%20513%20L588%20501%20Q588%20438%20558%20399%20Q528%20360%20484%20342%20L484%20324%20Q524%20322%20546%20296.5%20Q568%20271%20568%20229%20L568%200%20L436%200%20L436%20210%20Q436%20234%20423.5%20249%20Q411%20264%20382%20264%20L198%20264%20L198%200%20ZM198%20370.28%20L368.64%20370.28%20Q419.4%20370.28%20448.02%20399.35%20Q476.64%20428.42%20476.64%20476.3%20L476.64%20487.7%20Q476.64%20535.58%20448.56%20564.65%20Q420.48%20593.72%20368.64%20593.72%20L198%20593.72%20Z'/%3e%3c/g%3e%3c/svg%3e",A2="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20100%20100'%20width='100'%20height='100'%20role='img'%20aria-label='RedDB'%3e%3ctitle%3eRedDB%3c/title%3e%3cpath%20fill-rule='evenodd'%20d='M0%200%20H58%20L100%2038%20V100%20H0%20Z%20M16.676%2086.095%20L16.676%2028.905%20L41.513%2028.905%20Q46.905%2028.905%2050.908%2030.784%20Q54.912%2032.663%2057.118%2036.095%20Q59.324%2039.526%2059.324%2044.183%20L59.324%2045.163%20Q59.324%2050.31%2056.873%2053.497%20Q54.422%2056.683%2050.827%2058.154%20L50.827%2059.624%20Q54.095%2059.788%2055.892%2061.871%20Q57.69%2063.954%2057.69%2067.386%20L57.69%2086.095%20L46.905%2086.095%20L46.905%2068.938%20Q46.905%2066.977%2045.884%2065.752%20Q44.863%2064.526%2042.493%2064.526%20L27.461%2064.526%20L27.461%2086.095%20ZM27.461%2055.843%20L41.402%2055.843%20Q45.549%2055.843%2047.887%2053.468%20Q50.225%2051.093%2050.225%2047.181%20L50.225%2046.25%20Q50.225%2042.338%2047.931%2039.963%20Q45.637%2037.588%2041.402%2037.588%20L27.461%2037.588%20Z'%20fill='%23ff2056'/%3e%3c/svg%3e",I2="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20100%20100'%20width='100'%20height='100'%20role='img'%20aria-label='RedDB'%3e%3ctitle%3eRedDB%3c/title%3e%3cpath%20d='M0%200%20H58%20L100%2038%20V100%20H0%20Z'%20fill='%23f4f5f7'/%3e%3cg%20transform='translate(11.284%2086.095)%20scale(0.0817%20-0.0817)'%20fill='%2307080a'%3e%3cpath%20d='M66%200%20L66%20700%20L370%20700%20Q436%20700%20485%20677%20Q534%20654%20561%20612%20Q588%20570%20588%20513%20L588%20501%20Q588%20438%20558%20399%20Q528%20360%20484%20342%20L484%20324%20Q524%20322%20546%20296.5%20Q568%20271%20568%20229%20L568%200%20L436%200%20L436%20210%20Q436%20234%20423.5%20249%20Q411%20264%20382%20264%20L198%20264%20L198%200%20ZM198%20370.28%20L368.64%20370.28%20Q419.4%20370.28%20448.02%20399.35%20Q476.64%20428.42%20476.64%20476.3%20L476.64%20487.7%20Q476.64%20535.58%20448.56%20564.65%20Q420.48%20593.72%20368.64%20593.72%20L198%20593.72%20Z'/%3e%3c/g%3e%3c/svg%3e",O2="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20308.3%2071.4'%20width='308.3'%20height='71.4'%20role='img'%20aria-label='RedDB'%3e%3ctitle%3eRedDB%3c/title%3e%3cg%20transform='translate(0%2070)%20scale(0.1%20-0.1)'%20fill='%2307080a'%3e%3cpath%20d='M66%200L66%20700L370%20700Q436%20700%20485%20677Q534%20654%20561%20612Q588%20570%20588%20513L588%20501Q588%20438%20558%20399Q528%20360%20484%20342L484%20324Q524%20322%20546%20296.5Q568%20271%20568%20229L568%200L436%200L436%20210Q436%20234%20423.5%20249Q411%20264%20382%20264L198%20264L198%200ZM198%20384L356%20384Q403%20384%20429.5%20409.5Q456%20435%20456%20477L456%20487Q456%20529%20430%20554.5Q404%20580%20356%20580L198%20580Z'%20transform='translate(0%200)'/%3e%3cpath%20d='M296%20-14Q222%20-14%20165.5%2017.5Q109%2049%2077.5%20106.5Q46%20164%2046%20242L46%20254Q46%20332%2077%20389.5Q108%20447%20164%20478.5Q220%20510%20294%20510Q367%20510%20421%20477.5Q475%20445%20505%20387.5Q535%20330%20535%20254L535%20211L174%20211Q176%20160%20212%20128Q248%2096%20300%2096Q353%2096%20378%20119Q403%20142%20416%20170L519%20116Q505%2090%20478.5%2059.5Q452%2029%20408%207.5Q364%20-14%20296%20-14ZM175%20305L407%20305Q403%20348%20372.5%20374Q342%20400%20293%20400Q242%20400%20212%20374Q182%20348%20175%20305Z'%20transform='translate(614%200)'/%3e%3cpath%20d='M270%20-14Q211%20-14%20159.5%2015.5Q108%2045%2077%20102Q46%20159%2046%20240L46%20256Q46%20337%2077%20394Q108%20451%20159%20480.5Q210%20510%20270%20510Q315%20510%20345.5%20499.5Q376%20489%20395%20473Q414%20457%20424%20439L442%20439L442%20700L568%20700L568%200L444%200L444%2060L426%2060Q409%2032%20373.5%209Q338%20-14%20270%20-14ZM308%2096Q366%2096%20405%20133.5Q444%20171%20444%20243L444%20253Q444%20325%20405.5%20362.5Q367%20400%20308%20400Q250%20400%20211%20362.5Q172%20325%20172%20253L172%20243Q172%20171%20211%20133.5Q250%2096%20308%2096Z'%20transform='translate(1173%200)'/%3e%3cpath%20d='M46%200L46%20116L138%20116L138%20584L46%20584L46%20700L334%20700Q475%20700%20548.5%20628.5Q622%20557%20622%20416L622%20284Q622%20143%20548.5%2071.5Q475%200%20334%200ZM270%20120L336%20120Q416%20120%20453%20162Q490%20204%20490%20280L490%20420Q490%20497%20453%20538.5Q416%20580%20336%20580L270%20580Z'%20transform='translate(1793%200)'/%3e%3cpath%20d='M46%200L46%20116L138%20116L138%20584L46%20584L46%20700L406%20700Q470%20700%20517.5%20678.5Q565%20657%20591.5%20617.5Q618%20578%20618%20523L618%20513Q618%20465%20600%20434.5Q582%20404%20557.5%20387.5Q533%20371%20511%20364L511%20346Q533%20340%20559%20323.5Q585%20307%20603.5%20276Q622%20245%20622%20195L622%20185Q622%20127%20595%2085.5Q568%2044%20520.5%2022Q473%200%20410%200ZM270%20120L394%20120Q437%20120%20463.5%20141Q490%20162%20490%20201L490%20211Q490%20250%20464%20271Q438%20292%20394%20292L270%20292ZM270%20412L392%20412Q433%20412%20459.5%20433Q486%20454%20486%20491L486%20501Q486%20539%20460%20559.5Q434%20580%20392%20580L270%20580Z'%20transform='translate(2419%200)'/%3e%3c/g%3e%3c/svg%3e",P2="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20308.3%2071.4'%20width='308.3'%20height='71.4'%20role='img'%20aria-label='RedDB'%3e%3ctitle%3eRedDB%3c/title%3e%3cg%20transform='translate(0%2070)%20scale(0.1%20-0.1)'%20fill='%23f4f5f7'%3e%3cpath%20d='M66%200L66%20700L370%20700Q436%20700%20485%20677Q534%20654%20561%20612Q588%20570%20588%20513L588%20501Q588%20438%20558%20399Q528%20360%20484%20342L484%20324Q524%20322%20546%20296.5Q568%20271%20568%20229L568%200L436%200L436%20210Q436%20234%20423.5%20249Q411%20264%20382%20264L198%20264L198%200ZM198%20384L356%20384Q403%20384%20429.5%20409.5Q456%20435%20456%20477L456%20487Q456%20529%20430%20554.5Q404%20580%20356%20580L198%20580Z'%20transform='translate(0%200)'/%3e%3cpath%20d='M296%20-14Q222%20-14%20165.5%2017.5Q109%2049%2077.5%20106.5Q46%20164%2046%20242L46%20254Q46%20332%2077%20389.5Q108%20447%20164%20478.5Q220%20510%20294%20510Q367%20510%20421%20477.5Q475%20445%20505%20387.5Q535%20330%20535%20254L535%20211L174%20211Q176%20160%20212%20128Q248%2096%20300%2096Q353%2096%20378%20119Q403%20142%20416%20170L519%20116Q505%2090%20478.5%2059.5Q452%2029%20408%207.5Q364%20-14%20296%20-14ZM175%20305L407%20305Q403%20348%20372.5%20374Q342%20400%20293%20400Q242%20400%20212%20374Q182%20348%20175%20305Z'%20transform='translate(614%200)'/%3e%3cpath%20d='M270%20-14Q211%20-14%20159.5%2015.5Q108%2045%2077%20102Q46%20159%2046%20240L46%20256Q46%20337%2077%20394Q108%20451%20159%20480.5Q210%20510%20270%20510Q315%20510%20345.5%20499.5Q376%20489%20395%20473Q414%20457%20424%20439L442%20439L442%20700L568%20700L568%200L444%200L444%2060L426%2060Q409%2032%20373.5%209Q338%20-14%20270%20-14ZM308%2096Q366%2096%20405%20133.5Q444%20171%20444%20243L444%20253Q444%20325%20405.5%20362.5Q367%20400%20308%20400Q250%20400%20211%20362.5Q172%20325%20172%20253L172%20243Q172%20171%20211%20133.5Q250%2096%20308%2096Z'%20transform='translate(1173%200)'/%3e%3cpath%20d='M46%200L46%20116L138%20116L138%20584L46%20584L46%20700L334%20700Q475%20700%20548.5%20628.5Q622%20557%20622%20416L622%20284Q622%20143%20548.5%2071.5Q475%200%20334%200ZM270%20120L336%20120Q416%20120%20453%20162Q490%20204%20490%20280L490%20420Q490%20497%20453%20538.5Q416%20580%20336%20580L270%20580Z'%20transform='translate(1793%200)'/%3e%3cpath%20d='M46%200L46%20116L138%20116L138%20584L46%20584L46%20700L406%20700Q470%20700%20517.5%20678.5Q565%20657%20591.5%20617.5Q618%20578%20618%20523L618%20513Q618%20465%20600%20434.5Q582%20404%20557.5%20387.5Q533%20371%20511%20364L511%20346Q533%20340%20559%20323.5Q585%20307%20603.5%20276Q622%20245%20622%20195L622%20185Q622%20127%20595%2085.5Q568%2044%20520.5%2022Q473%200%20410%200ZM270%20120L394%20120Q437%20120%20463.5%20141Q490%20162%20490%20201L490%20211Q490%20250%20464%20271Q438%20292%20394%20292L270%20292ZM270%20412L392%20412Q433%20412%20459.5%20433Q486%20454%20486%20491L486%20501Q486%20539%20460%20559.5Q434%20580%20392%20580L270%20580Z'%20transform='translate(2419%200)'/%3e%3c/g%3e%3c/svg%3e",D2="2026.10",qc=["horizontal","stacked","icon","symbol","wordmark"],R2=["light","dark"],ks={horizontal:{light:{file:"reddb-horizontal-color.svg",src:C2,width:397.712,height:100,symbolHeight:100},dark:{file:"reddb-horizontal-inverse.svg",src:E2,width:397.712,height:100,symbolHeight:100}},stacked:{light:{file:"reddb-stacked-color.svg",src:z2,width:140,height:154.423,symbolHeight:100},dark:{file:"reddb-stacked-inverse.svg",src:Q2,width:140,height:154.423,symbolHeight:100}},icon:{light:{file:"reddb-icon-color.svg",src:M2,width:100,height:100,symbolHeight:100}},symbol:{light:{file:"reddb-symbol-black.svg",src:N2,width:100,height:100,symbolHeight:100},dark:{file:"reddb-symbol-white.svg",src:I2,width:100,height:100,symbolHeight:100}},wordmark:{light:{file:"reddb-wordmark-black.svg",src:O2,width:308.3,height:71.4,symbolHeight:71.4},dark:{file:"reddb-wordmark-white.svg",src:P2,width:308.3,height:71.4,symbolHeight:71.4}}};[...qc.flatMap(t=>R2.map(e=>ks[t][e]).filter(e=>e!==void 0))];class H2 extends Error{constructor(n,a,o=D2){const i=qc.filter(l=>ks[l][a]!==void 0);super(`Logo: the pinned Brand Assets release ${o} ships no ${n} Mark for a ${a} surface.
6
+ The Logo refuses rather than falling back to the other surface's Mark or recoloring one: the Brand owns the drawing and the DS owns only its placement (ADR 0004), so a variant that does not exist upstream is a Brand proposal, not a local file.
7
+ Until the Brand ships it, place the ${n} Mark on the surface it has (on="${a==="dark"?"light":"dark"}"), or use ${i.map(l=>`layout="${l}"`).join(" or ")} on a ${a} surface.`);Nt(this,"layout");Nt(this,"on");Nt(this,"release");this.name="MarkNotShippedError",this.layout=n,this.on=a,this.release=o}}function V2(t,e){const n=ks[t][e];if(n===void 0)throw new H2(t,e);return n}const Bc="data-color-scheme";function F2(t){return t==="dark"?"dark":"light"}function ji(t=globalThis.document){return t?F2(t.documentElement.getAttribute(Bc)):"light"}function q2(t,e=globalThis.document){var o;t(ji(e));const n=(o=e==null?void 0:e.defaultView)==null?void 0:o.MutationObserver;if(!e||!n)return()=>{};const a=new n(()=>t(ji(e)));return a.observe(e.documentElement,{attributes:!0,attributeFilter:[Bc]}),()=>a.disconnect()}const B2={true:"rounded-md focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-focus",false:""},K2=qr({base:["m-[var(--reddb-spatial-gap-sm)]","inline-flex shrink-0 items-center justify-center"].join(" "),variants:{interactive:B2},defaultVariants:{interactive:!1}}),j2=qr({base:"block"});var Z2=m('<img decoding="async"/>');function U2(t,e){rt(e,!0);const n=Pe(e,"layout",3,"horizontal"),a=Pe(e,"size",3,Fc),o=Pe(e,"loading",3,"eager"),i=Pe(e,"label",3,"reddb.io home"),l=Xe(e,["$$slots","$$events","$$legacy","layout","on","size","loading","fetchpriority","href","label","class"]);let d=xe(qt(ji())),f=xe(void 0);Tt(()=>{if(e.on===void 0)return q2(L=>{x(d,L,!0)})});const v=y(()=>e.on??r(d)),p=y(()=>V2(n(),r(v))),b=y(()=>L2(r(p),a()));Tt(()=>{r(f)&&r(f).src!==r(p).src&&(r(f).src=r(p).src)});const h=y(()=>e.href!==void 0?"a":"span");var w=xt(),k=ze(w);Jo(k,()=>r(h),!1,(L,O)=>{Lr(L,(Y,K)=>({...l,href:e.href,class:Y,style:`padding:${K??""}`,"aria-label":e.href!==void 0?i():void 0,"data-logo-layout":n(),"data-logo-on":r(v),"data-logo-mark":r(p).file}),[()=>K2({interactive:e.href!==void 0,class:e.class}),()=>hi(r(b).clearspace)]);var G=xt(),I=ze(G);_0(I,()=>r(p).file,Y=>{var K=Z2();Xr(K,z=>x(f,z),()=>r(f)),Q((z,F,ne,oe,J)=>{Ce(K,"src",r(p).src),Ce(K,"alt",e.href!==void 0?"":"RedDB"),Ce(K,"width",z),Ce(K,"height",F),_r(K,`width:${ne??""};height:${oe??""}`),Oe(K,1,J),Ce(K,"loading",o()),Ce(K,"fetchpriority",e.fetchpriority),Ce(K,"aria-hidden",e.href!==void 0?"true":void 0)},[()=>Math.round(r(b).markWidth),()=>Math.round(r(b).markHeight),()=>hi(r(b).markWidth),()=>hi(r(b).markHeight),()=>Re(j2())]),g(Y,K)}),g(O,G)}),g(t,w),nt()}const W2={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"}},G2={true:{root:"border-b border-muted pb-[var(--reddb-spatial-inset-sm)]"},false:{root:"border-b border-transparent pb-0"}},Y2=qr({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:W2,rule:G2},defaultVariants:{size:"md",rule:!0}},Hc);var $2=m('<p data-section-heading-description=""> </p>'),X2=m("<div><!></div>"),J2=m("<div><div><!> <!></div> <!></div>");function eg(t,e){rt(e,!0);const n=Pe(e,"level",3,2),a=Pe(e,"size",3,"md"),o=Pe(e,"rule",3,!0),i=Xe(e,["$$slots","$$events","$$legacy","title","description","titleId","level","size","rule","actions","class"]),l=y(()=>Y2({size:a(),rule:o()}));var d=J2();Lr(d,k=>({...i,"data-section-heading":!0,class:k}),[()=>r(l).root({class:e.class})]);var f=c(d),v=c(f);Jo(v,()=>`h${n()}`,!1,(k,L)=>{Lr(k,G=>({id:e.titleId,"data-section-heading-title":!0,class:G}),[()=>r(l).title()]);var O=bt();Q(()=>S(O,e.title)),g(L,O)});var p=u(v,2);{var b=k=>{var L=$2(),O=c(L,!0);s(L),Q(G=>{Oe(L,1,G),S(O,e.description)},[()=>Re(r(l).description())]),g(k,L)};R(p,k=>{e.description&&k(b)})}s(f);var h=u(f,2);{var w=k=>{var L=X2(),O=c(L);tr(O,()=>e.actions),s(L),Q(G=>Oe(L,1,G),[()=>Re(r(l).actions())]),g(k,L)};R(h,k=>{e.actions&&k(w)})}s(d),Q(k=>Oe(f,1,k),[()=>Re(r(l).text())]),g(t,d),nt()}const Kc={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"}]]};Kc.node;function tg(t,e){let n=Xe(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Kc}}))}const jc={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"]};jc.node;function ra(t,e){let n=Xe(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return jc}}))}const Zc={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"]};Zc.node;function Ss(t,e){let n=Xe(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Zc}}))}const Uc={name:"clock",size:24,node:[["circle",{cx:"12",cy:"12",r:"10"}],["path",{d:"M12 6v6l4 2"}]]};Uc.node;function rg(t,e){let n=Xe(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Uc}}))}const Wc={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"}]]};Wc.node;function Gc(t,e){let n=Xe(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Wc}}))}const Yc={name:"chevron-down",size:24,node:[["path",{d:"m6 9 6 6 6-6"}]]};Yc.node;function ng(t,e){let n=Xe(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Yc}}))}const $c={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"}]]};$c.node;function ag(t,e){let n=Xe(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return $c}}))}var og=m("<!> Connecting…",1),ig=m("<!> Connect",1),sg=m('<!> <span class="text-ok"> </span>',1),lg=m('<!> <span class="text-danger break-words"> </span>',1),cg=m('<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>'),dg=m("<span> </span>"),ug=m('<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>'),fg=m('<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>'),vg=m('<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">Connection string</label> <input id="connect-url" spellcheck="false" placeholder="https://user:password@host or Base64" 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),gg=m('<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 pg(t,e){rt(e,!0);const n="red://localhost";function a(){var A,H;return(A=Ke.history[0])!=null&&A.url?Ke.history[0].url:(H=Ke.history[0])!=null&&H.label?Ke.history[0].label:Ke.active.url?Ke.active.url:n}let o=xe(!1),i=xe(qt(a())),l=xe(""),d=xe(""),f=xe("idle"),v=xe(null),p=xe(null),b=xe(void 0),h=xe(void 0);async function w(A,H=!1){const B=A.trim();if(!B)return;let le;const he=r(d);x(d,"");try{if(le=w0(B),x(i,le.url,!0),le.credentials&&H)throw new Error("Use credentials in either the connection string or the sign-in fields.")}catch(W){x(i,""),x(f,"error"),x(v,W instanceof Error?W.message:"Invalid connection string.",!0);return}if(!Ke.canReach(le.url)){x(f,"error"),x(v,k0(le.url)??`This app can't reach that transport here — supported: ${r(F)}`,!0);return}x(f,"probing"),x(v,null),x(p,null);const ie=S0(le.url),X=le.credentials??(H?{username:r(l).trim(),password:he}:void 0);(X?await Ke.login(ie,X.username,X.password):await Ke.tryConnect(ie))?(x(f,"ok"),x(p,Ke.probe.rtt_ms??null,!0),setTimeout(()=>x(o,!1),350)):(x(f,"error"),x(v,Ke.probe.error??"unreachable",!0))}function k(A){A.preventDefault(),w(r(i),!!(r(l).trim()&&r(d)))}async function L(){x(f,"probing"),x(v,null),x(p,null);const A=await y0();A.ok?(x(f,"ok"),x(p,Ke.probe.rtt_ms??null,!0),x(i,Ke.active.url,!0),setTimeout(()=>x(o,!1),350)):A.cancelled?x(f,"idle"):(x(f,"error"),x(v,A.reason??"unreachable",!0))}function O(A){const H=Date.now()-A;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 G(A,H){A.stopPropagation(),Ke.forgetById(H)}function I(){x(o,!r(o)),r(o)&&setTimeout(()=>{var A;return(A=r(h))==null?void 0:A.focus()},0)}vn(()=>{const A=()=>{x(o,!0),setTimeout(()=>{var H;return(H=r(h))==null?void 0:H.focus()},0)};return window.addEventListener("red:open-connect",A),()=>window.removeEventListener("red:open-connect",A)}),Tt(()=>{!Ke.connected&&Ke.probe.error&&(x(i,Ke.active.url,!0),x(v,Ke.probe.error,!0),x(f,"error"),x(o,!0))});const Y=y(()=>Ke.connected?"bg-ok":r(f)==="error"?"bg-danger":"bg-fg-3"),K=y(()=>Ke.connected?Ke.active.label:"Connect"),z=y(()=>Ke.connected&&Ke.probe.rtt_ms!==void 0?`${Ke.probe.rtt_ms}ms`:Ke.connected?"live":"no connection"),F=y(()=>{const A=Ke.supportedTransports,H=[];return(A.includes("http")||A.includes("https"))&&H.push("http(s)://"),A.includes("unix")&&H.push("file://"),H.join(" · ")}),ne=y(()=>Ke.history.filter(A=>!A.url||Ke.canReach(A.url))),oe=y(()=>Ke.supportedTransports.includes("unix"));var J=gg(),ue=c(J),Z=c(ue),C=u(Z,2);{var N=A=>{Gc(A,{class:"size-3 text-fg-3"})};R(C,A=>{Ke.connected||A(N)})}var _=u(C,2),T=c(_,!0);s(_);var D=u(_,2),te=c(D,!0);s(D);var V=u(D,2);ng(V,{class:"size-3 text-fg-3"}),s(ue);var $=u(ue,2);{var ee=A=>{var H=vg(),B=ze(H),le=u(B,2),he=c(le),ie=u(c(he),2);Yt(ie),Xr(ie,se=>x(h,se),()=>r(h));var X=u(ie,2),U=c(X);s(X);var W=u(X,2),E=u(c(W),2),q=u(c(E),2);Yt(q);var P=u(q,4);Yt(P),Se(2),s(E),s(W);var M=u(W,2),j=c(M);{var re=se=>{var ve=og(),Te=ze(ve);cn(Te,{class:"size-3.5 animate-spin"}),Se(),g(se,ve)},de=se=>{var ve=ig(),Te=ze(ve);tg(Te,{class:"size-3.5"}),Se(),g(se,ve)};R(j,se=>{r(f)==="probing"?se(re):se(de,-1)})}s(M);var be=u(M,2),fe=c(be);{var Le=se=>{var ve=sg(),Te=ze(ve);Ss(Te,{class:"size-3 text-ok"});var Ae=u(Te,2),we=c(Ae);s(Ae),Q(()=>S(we,`Connected${r(p)!==null?` · ${r(p)}ms`:""}`)),g(se,ve)},ke=se=>{var ve=lg(),Te=ze(ve);ra(Te,{class:"size-3 text-danger"});var Ae=u(Te,2),we=c(Ae,!0);s(Ae),Q(()=>S(we,r(v))),g(se,ve)};R(fe,se=>{r(f)==="ok"?se(Le):r(f)==="error"&&se(ke,1)})}s(be),s(he);var me=u(he,2);{var ge=se=>{var ve=cg(),Te=c(ve);ag(Te,{class:"size-3.5 text-fg-3"}),Se(),s(ve),Q(()=>ve.disabled=r(f)==="probing"),_e("click",ve,L),g(se,ve)};R(me,se=>{r(oe)&&se(ge)})}var De=u(me,2);{var ce=se=>{var ve=fg(),Te=c(ve),Ae=c(Te);rg(Ae,{class:"size-3 text-fg-3"}),Se(2),s(Te);var we=u(Te,2);Ge(we,21,()=>r(ne),gr,(Ne,Ee)=>{var Me=ug(),Qe=c(Me),Ye=c(Qe),Ve=c(Ye,!0);s(Ye);var Je=u(Ye,2),lt=c(Je);{var ct=ae=>{var tt=dg(),$e=c(tt);s(tt),Q(()=>S($e,`${r(Ee).rtt_ms??""}ms`)),g(ae,tt)};R(lt,ae=>{r(Ee).rtt_ms!==void 0&&ae(ct)})}var qe=u(lt,2),He=c(qe,!0);s(qe),s(Je),s(Qe);var je=u(Qe,2),ot=c(je);Tr(ot,{class:"size-3"}),s(je),s(Me),Q(ae=>{Qe.disabled=r(f)==="probing",Ce(Qe,"title",r(Ee).url?void 0:"Enter credentials to reconnect"),S(Ve,r(Ee).url??r(Ee).label),S(He,ae)},[()=>O(r(Ee).last_used)]),_e("click",Qe,()=>{r(Ee).url?w(r(Ee).url):(x(i,r(Ee).label,!0),setTimeout(()=>{var ae;return(ae=r(h))==null?void 0:ae.focus()},0))}),_e("click",je,ae=>G(ae,r(Ee).id)),g(Ne,Me)}),s(we),s(ve),g(se,ve)};R(De,se=>{r(ne).length>0&&se(ce)})}s(le),Xr(le,se=>x(b,se),()=>r(b)),Q(se=>{ie.disabled=r(f)==="probing",S(U,`URL or Base64-encoded URL · reachable here: ${r(F)??""}`),q.disabled=r(f)==="probing",P.disabled=r(f)==="probing",M.disabled=se},[()=>r(f)==="probing"||!r(i).trim()||!!r(l).trim()!=!!r(d)]),_e("click",B,()=>x(o,!1)),Sn("submit",he,k),_e("input",ie,()=>{x(l,""),x(d,"")}),Sr(ie,()=>r(i),se=>x(i,se)),Sr(q,()=>r(l),se=>x(l,se)),Sr(P,()=>r(d),se=>x(d,se)),g(A,H)};R($,A=>{r(o)&&A(ee)})}s(J),Q(A=>{Ce(ue,"aria-expanded",r(o)),Ce(ue,"title",Ke.connected?"Switch connection":"Connect to reddb"),Oe(Z,1,A),S(T,r(K)),S(te,r(z))},[()=>Re(["w-1.5 h-1.5 rounded-full shrink-0",r(Y)].join(" "))]),_e("click",ue,I),g(t,J),nt()}nr(["click","input"]);const Xc={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"}]]};Xc.node;function Ra(t,e){let n=Xe(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Xc}}))}var hg=m("<!> <span> </span>",1),bg=m('<!> <span class="text-fg-3">idle</span>',1),mg=m('<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>'),xg=m('<div class="px-3 py-3 text-fg-3">No activity yet.</div>'),_g=m('<div class="text-danger text-[10px] truncate"> </div>'),yg=m('<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>'),wg=m('<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),kg=m('<div class="relative"><button type="button" title="reddb activity"><!></button> <!></div>');function Sg(t,e){rt(e,!0);let n=xe(!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=kg(),l=c(i),d=c(l);{var f=h=>{var w=hg(),k=ze(w);cn(k,{class:"size-3.5 animate-spin"});var L=u(k,2),O=c(L,!0);s(L),Q(()=>S(O,St.inflight)),g(h,w)},v=h=>{var w=bg(),k=ze(w);Ra(k,{class:"size-3.5"}),Se(2),g(h,w)};R(d,h=>{St.inflight>0?h(f):h(v,-1)})}s(l);var p=u(l,2);{var b=h=>{var w=wg(),k=ze(w),L=u(k,2),O=c(L),G=u(c(O),2),I=c(G),Y=c(I);s(I);var K=u(I,2);{var z=ue=>{var Z=mg();_e("click",Z,()=>St.reset()),g(ue,Z)};R(K,ue=>{St.inflight>0&&ue(z)})}s(G),s(O);var F=u(O,2),ne=c(F);{var oe=ue=>{var Z=xg();g(ue,Z)},J=ue=>{var Z=xt(),C=ze(Z);Ge(C,17,()=>St.log,N=>N.id,(N,_)=>{var T=yg(),D=c(T),te=c(D);{var V=E=>{cn(E,{class:"size-3 animate-spin text-primary-text"})},$=E=>{Ss(E,{class:"size-3 text-ok"})},ee=E=>{ra(E,{class:"size-3 text-danger"})};R(te,E=>{r(_).status==="pending"?E(V):r(_).status==="ok"?E($,1):E(ee,-1)})}s(D);var A=u(D,2),H=c(A),B=c(H,!0);s(H);var le=u(H,2);{var he=E=>{var q=_g(),P=c(q,!0);s(q),Q(()=>S(P,r(_).error)),g(E,q)};R(le,E=>{r(_).status==="error"&&r(_).error&&E(he)})}s(A);var ie=u(A,2),X=c(ie);{var U=E=>{var q=bt();Q(P=>S(q,P),[()=>o(r(_).startedAt)]),g(E,q)},W=E=>{var q=bt();Q(P=>S(q,P),[()=>a(r(_).durationMs)]),g(E,q)};R(X,E=>{r(_).status==="pending"?E(U):E(W,-1)})}s(ie),s(T),Q(()=>S(B,r(_).label)),g(N,T)}),g(ue,Z)};R(ne,ue=>{St.log.length===0?ue(oe):ue(J,-1)})}s(F),s(L),Q(()=>S(Y,`${St.inflight??""} active`)),_e("click",k,()=>x(n,!1)),g(h,w)};R(p,h=>{r(n)&&h(b)})}s(i),Q(h=>{Ce(l,"aria-pressed",r(n)),Oe(l,1,h)},[()=>Re(["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,()=>x(n,!r(n))),g(t,i),nt()}nr(["click"]);const Jc={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"}]]};Jc.node;function Lg(t,e){let n=Xe(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Jc}}))}const ed={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"}]]};ed.node;function Cg(t,e){let n=Xe(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return ed}}))}const td={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"}]]};td.node;function Oo(t,e){let n=Xe(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return td}}))}const rd={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"]};rd.node;function nd(t,e){let n=Xe(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return rd}}))}const ad={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"}]]};ad.node;function Eg(t,e){let n=Xe(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return ad}}))}const od={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"}]]};od.node;function Zi(t,e){let n=Xe(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return od}}))}const id={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"]};id.node;function sd(t,e){let n=Xe(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return id}}))}const ld={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"]};ld.node;function Co(t,e){let n=Xe(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return ld}}))}const Mg="application";function cl(t,e){var n;t.dataset.theme=Mg,(n=t.dataset).density||(n.density="compact"),t.dataset.colorScheme=e}const cd="red-ui-theme",Eo="light";function zg(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??Eo;const o=localStorage.getItem(cd);return o==="dark"||o==="light"?o:n??Eo}function dl(t,e){if(e){cl(e,t);return}typeof document<"u"&&cl(document.documentElement,t)}function Qg(t,e){e&&(typeof localStorage>"u"||localStorage.setItem(cd,t))}var Wa;class Ng{constructor(){Be(this,Wa,xe(Eo));Nt(this,"target",null);Nt(this,"persistTheme",!0)}get current(){return r(pe(this,Wa))}set current(e){x(pe(this,Wa),e,!0)}init(e={}){this.target=e.target??null,this.persistTheme=e.persist??!0,this.current=zg(this.target,this.persistTheme,e.initial),dl(this.current,this.target)}set(e){this.current=e,dl(e,this.target),Qg(e,this.persistTheme)}toggle(){this.set(this.current==="dark"?"light":"dark")}}Wa=new WeakMap;const En=new Ng;function ul(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 L0(t.collection,t.subpage)}}function Tg(t){return t.view==="collection"?{view:"collections",collection:t.collection,subpage:t.subpage}:{view:t.view,collection:null,subpage:null}}function Ag(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 dd(t){let e=xe(qt({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 ul(r(e).collection?{view:"collection",collection:r(e).collection,subpage:r(e).subpage??"table"}:{view:r(e).view})},href:n=>ul(n),go:(n,a)=>{a==null||a.preventDefault(),x(e,Tg(n),!0)}}}const ud=Symbol("red-ui-router");let bi=null;function Ig(t){return xs(ud,t),t}function ma(){const t=Xo(ud);return t||(bi||(bi=dd()),bi)}var Og=m('<div class="w-px h-[18px] bg-line-2"></div> <!> <div class="w-px h-[18px] bg-line-2 ml-1"></div>',1),Pg=m('<div class="w-px h-[18px] bg-line-2"></div>'),Dg=m('<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"><!> <!> <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 Rg(t,e){rt(e,!0);let n=Pe(e,"showConnect",3,!0);const a=ma();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=Dg(),w=c(h),k=c(w);{let U=y(()=>a.href({view:"collections"}));U2(k,{layout:"horizontal",size:16,get on(){return En.current},get href(){return r(U)},label:"RedDB home",onclick:W=>a.go({view:"collections"},W)})}var L=u(k,2);{var O=U=>{var W=Og(),E=u(ze(W),2);pg(E,{}),Se(2),g(U,W)},G=U=>{var W=Pg();g(U,W)};R(L,U=>{n()?U(O):U(G,-1)})}var I=u(L,2),Y=c(I),K=c(Y);Co(K,{class:"size-3.5"}),Se(2),s(Y);var z=u(Y,2),F=c(z);nd(F,{class:"size-3.5"}),Se(2),s(z);var ne=u(z,2),oe=c(ne);Oo(oe,{class:"size-3.5"}),Se(2),s(ne);var J=u(ne,2),ue=c(J);C0(ue,{class:"size-3.5"}),Se(2),s(J);var Z=u(J,2),C=c(Z);Eg(C,{class:"size-3.5"}),Se(2),s(Z);var N=u(Z,2),_=c(N);sd(_,{class:"size-3.5"}),Se(2),s(N);var T=u(N,2),D=c(T);Zi(D,{class:"size-3.5"}),Se(2),s(T),s(I),s(w);var te=u(w,2),V=c(te);Sg(V,{});var $=u(V,2),ee=c($);{var A=U=>{Lg(U,{class:"size-3.5"})},H=U=>{Cg(U,{class:"size-3.5"})};R(ee,U=>{En.current==="dark"?U(A):U(H,-1)})}s($);var B=u($,2),le=c(B);Wr(le,{class:"size-3.5 text-fg-3"});var he=u(le,4),ie=c(he);jr(ie,{children:(U,W)=>{Se();var E=bt("⌘");g(U,E)},$$slots:{default:!0}});var X=u(ie);jr(X,{children:(U,W)=>{Se();var E=bt("K");g(U,E)},$$slots:{default:!0}}),s(he),s(B),s(te),s(h),Q((U,W,E,q,P,M,j,re,de,be,fe,Le,ke,me)=>{Ce(Y,"href",U),Ce(Y,"aria-current",r(i)?"page":void 0),Oe(Y,1,W),Ce(z,"href",E),Ce(z,"aria-current",r(l)?"page":void 0),Oe(z,1,q),Ce(ne,"href",P),Ce(ne,"aria-current",r(d)?"page":void 0),Oe(ne,1,M),Ce(J,"href",j),Ce(J,"aria-current",r(f)?"page":void 0),Oe(J,1,re),Ce(Z,"href",de),Ce(Z,"aria-current",r(v)?"page":void 0),Oe(Z,1,be),Ce(N,"href",fe),Ce(N,"aria-current",r(p)?"page":void 0),Oe(N,1,Le),Ce(T,"href",ke),Ce(T,"aria-current",r(b)?"page":void 0),Oe(T,1,me),Ce($,"title",En.current==="dark"?"Switch to light theme":"Switch to dark theme"),Ce($,"aria-label",En.current==="dark"?"Switch to light theme":"Switch to dark theme")},[()=>a.href({view:"ask"}),()=>Re(["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"}),()=>Re(["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"}),()=>Re(["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"}),()=>Re(["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"}),()=>Re(["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"}),()=>Re(["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"}),()=>Re(["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",Y,U=>a.go({view:"ask"},U)),_e("click",z,U=>a.go({view:"query"},U)),_e("click",ne,U=>a.go({view:"collections"},U)),_e("click",J,U=>a.go({view:"cluster"},U)),_e("click",Z,U=>a.go({view:"security"},U)),_e("click",N,U=>a.go({view:"analytics"},U)),_e("click",T,U=>a.go({view:"settings"},U)),_e("click",$,()=>En.toggle()),_e("click",B,o),g(t,h),nt()}nr(["click"]);function Hg(t){return`'${t.replace(/'/g,"''")}'`}function Vg(){return Math.random().toString(36).slice(2,10)}function Ls(t){return`UPDATE ${t.table} SET ${t.col} = ${Hg(t.newValue)} WHERE rid = ${t.row};`}var Ga,Ya;class Fg{constructor(){Be(this,Ga,xe(qt([])));Be(this,Ya,y(()=>this.changes.length));Nt(this,"executor",null)}get changes(){return r(pe(this,Ga))}set changes(e){x(pe(this,Ga),e,!0)}get count(){return r(pe(this,Ya))}set count(e){x(pe(this,Ya),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=Vg();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(Ls)}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=[]}}Ga=new WeakMap,Ya=new WeakMap;const Or=new Fg,fd={name:"arrow-right",size:24,node:[["path",{d:"M5 12h14"}],["path",{d:"m12 5 7 7-7 7"}]]};fd.node;function qg(t,e){let n=Xe(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return fd}}))}const vd={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"]};vd.node;function Bg(t,e){let n=Xe(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return vd}}))}const gd={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"}]]};gd.node;function jn(t,e){let n=Xe(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return gd}}))}const pd={name:"terminal",size:24,node:[["path",{d:"M12 19h8"}],["path",{d:"m4 17 6-6-6-6"}]]};pd.node;function Kg(t,e){let n=Xe(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return pd}}))}function mi(t){try{const e=t();return typeof e=="string"&&e.length>0?e:void 0}catch{return}}function jg(t){return t.startsWith("v")?t.slice(1):t}function hd(){return{version:jg(mi(()=>"0.4.4")??"0.0.0-dev"),gitSha:mi(()=>"unknown")??"unknown",buildTime:mi(()=>"unknown")??"unknown"}}hd().version;var Zg=m('<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),Ug=m('<span class="text-fg-3">·</span> <span class="text-fg-2"><span class="text-fg-3">lag</span> <span> </span></span>',1),Wg=m('<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),Gg=m('<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),Yg=m('<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),$g=m('<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>'),Xg=m('<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>'),Jg=m('<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>'),ep=m('<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 tp(t,e){rt(e,!0);const n=hd(),a=ma(),o=y(()=>Or.count),i=y(()=>Ke.readOnly),l=y(()=>Ke.readOnlyReason);function d(){window.dispatchEvent(new CustomEvent("red:open-pending-changes"))}const f=y(()=>Ke.connected),v=y(()=>{var _,T;return((_=Ke.probe.replication)==null?void 0:_.role)??((T=Ke.active)==null?void 0:T.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 _,T;return((_=Ke.probe.replication)==null?void 0:_.wal_lsn)??((T=Ke.probe.replication)==null?void 0:T.last_applied_lsn)}),h=y(()=>{const _=Ke.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 L(_){const T=_.target;T!=null&&T.closest("button, a, [data-no-nav]")||a.go({view:"cluster"})}function O(_){(_.key==="Enter"||_.key===" ")&&(_.preventDefault(),a.go({view:"cluster"}))}var G=ep(),I=c(G),Y=c(I);{var K=_=>{var T=Yg(),D=ze(T),te=c(D);let V;var $=u(te,2),ee=c($,!0);s($),s(D);var A=u(D,4),H=c(A,!0);s(A);var B=u(A,2);{var le=q=>{var P=Zg(),M=u(ze(P),2),j=u(c(M),2),re=c(j,!0);s(j),Se(),s(M),Q(()=>S(re,Ke.probe.rtt_ms)),g(q,P)};R(B,q=>{Ke.probe.rtt_ms!==void 0&&q(le)})}var he=u(B,2);{var ie=q=>{var P=Ug(),M=u(ze(P),2),j=u(c(M),2);let re;var de=c(j,!0);s(j),s(M),Q(()=>{re=Oe(j,1,"text-fg-1 tabular-nums",null,re,{"text-warn":(r(h)??0)>0}),S(de,r(h))}),g(q,P)};R(he,q=>{r(v)==="replica"&&r(h)!==void 0&&q(ie)})}var X=u(he,2);{var U=q=>{var P=Wg(),M=u(ze(P),2),j=u(c(M),2),re=c(j,!0);s(j),s(M),Q(()=>S(re,r(b))),g(q,P)};R(X,q=>{r(b)!==void 0&&q(U)})}var W=u(X,2);{var E=q=>{var P=Gg(),M=u(ze(P),2),j=c(M);jn(j,{class:"size-3"}),Se(2),s(M),Q(()=>Ce(M,"title",r(l)??"The server is open read-only — mutations are disabled.")),g(q,P)};R(W,q=>{r(i)&&q(E)})}Q(()=>{V=_r(te,"",V,{"background-color":r(p)}),S(ee,r(v)),S(H,Ke.active.label)}),g(_,T)},z=_=>{var T=$g();g(_,T)};R(Y,_=>{r(f)?_(K):_(z,-1)})}s(I);var F=u(I,2);{var ne=_=>{var T=Xg(),D=c(T);Bg(D,{class:"size-3"});var te=u(D,2),V=c(te);s(te),s(T),Q(()=>{Ce(T,"aria-label",`${r(o)} pending changes`),S(V,`Pending changes (${r(o)??""})`)}),_e("click",T,d),g(_,T)};R(F,_=>{r(o)>0&&_(ne)})}var oe=u(F,2);{var J=_=>{var T=Jg(),D=u(c(T),2);qg(D,{class:"size-3"}),s(T),_e("click",T,w),g(_,T)};R(oe,_=>{r(f)||_(J)})}var ue=u(oe,2),Z=c(ue);Kg(Z,{class:"size-3"}),Se(2),s(ue);var C=u(ue,2),N=c(C);s(C),s(G),Q(()=>{Ce(C,"title",`red-ui ${n.version} · ${n.gitSha} · built ${n.buildTime}`),S(N,`v${n.version??""}`)}),_e("click",I,L),_e("keydown",I,O),_e("click",ue,k),g(t,G),nt()}nr(["click","keydown"]);var rp=m('<span class="hint svelte-1yq04zr"> </span>'),np=m('<button><span class="label svelte-1yq04zr"> </span> <!> <!></button>'),ap=m('<div class="group-label svelte-1yq04zr"> </div> <!>',1),op=m('<div class="empty svelte-1yq04zr"> </div>'),ip=m('<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 sp(t,e){rt(e,!0);const n=ma();let a=xe(!1),o=xe(""),i=xe(0),l=xe(void 0);function d(Y){window.dispatchEvent(new CustomEvent(Y))}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:()=>{En.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(Y=>Y.label.toLowerCase().includes(r(o).toLowerCase())));function p(Y){n.go(Y),b()}function b(){x(a,!1),x(o,""),x(i,0)}function h(Y){if(!(Y instanceof HTMLElement))return!1;if(Y.isContentEditable)return!0;const K=Y.tagName;return K==="INPUT"||K==="TEXTAREA"||K==="SELECT"}function w(Y){var F;const K=Y.metaKey||Y.ctrlKey,z=Y.key.toLowerCase();if(K&&z==="k"){Y.preventDefault(),x(a,!r(a)),r(a)&&setTimeout(()=>{var ne;return(ne=r(l))==null?void 0:ne.focus()},0);return}if(K&&Y.shiftKey&&z==="c"){Y.preventDefault(),d("red:open-connect");return}if(K&&!Y.shiftKey&&z==="t"&&!h(Y.target)){Y.preventDefault(),d("red:new-query");return}if(r(a)){if(Y.key==="Escape"){b();return}Y.key==="ArrowDown"&&(Y.preventDefault(),x(i,Math.min(r(i)+1,r(v).length-1),!0)),Y.key==="ArrowUp"&&(Y.preventDefault(),x(i,Math.max(r(i)-1,0),!0)),Y.key==="Enter"&&(Y.preventDefault(),(F=r(v)[r(i)])==null||F.run())}}vn(()=>{window.addEventListener("keydown",w);const Y=()=>{x(a,!0),setTimeout(()=>{var K;return(K=r(l))==null?void 0:K.focus()},0)};return window.addEventListener("red:open-palette",Y),()=>{window.removeEventListener("keydown",w),window.removeEventListener("red:open-palette",Y)}});const k=["navigate","data","actions","view"],L={navigate:"Navigate",data:"Data",actions:"Actions",view:"View"};var O=xt(),G=ze(O);{var I=Y=>{var K=ip(),z=ze(K),F=u(z,2),ne=c(F),oe=u(c(ne),2);Yt(oe),Xr(oe,B=>x(l,B),()=>r(l));var J=u(oe,2);jr(J,{children:(B,le)=>{Se();var he=bt("esc");g(B,he)},$$slots:{default:!0}}),s(ne);var ue=u(ne,2),Z=c(ue);Ge(Z,17,()=>k,gr,(B,le)=>{const he=y(()=>r(v).filter(W=>W.group===r(le)));var ie=xt(),X=ze(ie);{var U=W=>{var E=ap(),q=ze(E),P=c(q,!0);s(q);var M=u(q,2);Ge(M,17,()=>r(he),gr,(j,re)=>{const de=y(()=>r(v).indexOf(r(re)));var be=np();let fe;var Le=c(be),ke=c(Le,!0);s(Le);var me=u(Le,2);{var ge=se=>{var ve=rp(),Te=c(ve,!0);s(ve),Q(()=>S(Te,r(re).hint)),g(se,ve)};R(me,se=>{r(re).hint&&se(ge)})}var De=u(me,2);{var ce=se=>{jr(se,{children:(ve,Te)=>{Se();var Ae=bt();Q(()=>S(Ae,r(re).shortcut)),g(ve,Ae)},$$slots:{default:!0}})};R(De,se=>{r(re).shortcut&&se(ce)})}s(be),Q(()=>{fe=Oe(be,1,"row svelte-1yq04zr",null,fe,{active:r(de)===r(i)}),S(ke,r(re).label)}),Sn("mouseenter",be,()=>x(i,r(de),!0)),_e("click",be,()=>r(re).run()),g(j,be)}),Q(()=>S(P,L[r(le)])),g(W,E)};R(X,W=>{r(he).length&&W(U)})}g(B,ie)});var C=u(Z,2);{var N=B=>{var le=op(),he=c(le);s(le),Q(()=>S(he,`No commands match "${r(o)??""}"`)),g(B,le)};R(C,B=>{r(v).length===0&&B(N)})}s(ue);var _=u(ue,2),T=c(_),D=c(T);jr(D,{children:(B,le)=>{Se();var he=bt("↑");g(B,he)},$$slots:{default:!0}});var te=u(D,2);jr(te,{children:(B,le)=>{Se();var he=bt("↓");g(B,he)},$$slots:{default:!0}}),Se(),s(T);var V=u(T,2),$=c(V);jr($,{children:(B,le)=>{Se();var he=bt("↵");g(B,he)},$$slots:{default:!0}}),Se(),s(V);var ee=u(V,2),A=c(ee);jr(A,{children:(B,le)=>{Se();var he=bt("⌘");g(B,he)},$$slots:{default:!0}});var H=u(A);jr(H,{children:(B,le)=>{Se();var he=bt("K");g(B,he)},$$slots:{default:!0}}),Se(),s(ee),s(_),s(F),_e("click",z,b),_e("keydown",z,function(...B){}),_e("input",oe,()=>x(i,0)),Sr(oe,()=>r(o),B=>x(o,B)),g(Y,K)};R(G,Y=>{r(a)&&Y(I)})}g(t,O),nt()}nr(["click","keydown","input"]);const lp=[{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"}],cp=["Global","Connection","Workspace","Editing"];var dp=m('<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>'),up=m('<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>'),fp=m('<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 vp(t,e){rt(e,!0);let n=xe(!1);function a(){x(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(),x(n,!r(n))}}vn(()=>{window.addEventListener("keydown",i);const b=()=>{x(n,!0)};return window.addEventListener("red:open-shortcuts",b),()=>{window.removeEventListener("keydown",i),window.removeEventListener("red:open-shortcuts",b)}});const l=y(()=>cp.map(b=>({ctx:b,items:lp.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=xt(),v=ze(f);{var p=b=>{var h=fp(),w=c(h),k=c(w),L=u(c(k),2),O=c(L);jr(O,{children:(I,Y)=>{Se();var K=bt("Esc");g(I,K)},$$slots:{default:!0}}),Se(),s(L),s(k);var G=u(k,2);Ge(G,21,()=>r(l),gr,(I,Y)=>{var K=up(),z=c(K),F=c(z),ne=c(F,!0);s(F);var oe=u(F,2),J=c(oe,!0);s(oe),s(z);var ue=u(z,2);Ge(ue,21,()=>r(Y).items,gr,(Z,C)=>{var N=dp(),_=c(N),T=c(_,!0);s(_);var D=u(_,2);Ge(D,21,()=>r(C).keys,gr,(te,V)=>{jr(te,{children:($,ee)=>{Se();var A=bt();Q(()=>S(A,r(V))),g($,A)},$$slots:{default:!0}})}),s(D),s(N),Q(()=>S(T,r(C).label)),g(Z,N)}),s(ue),s(K),Q(()=>{S(ne,r(Y).ctx),S(J,d[r(Y).ctx])}),g(I,K)}),s(G),s(w),s(h),_e("click",h,a),_e("click",w,I=>I.stopPropagation()),_e("keydown",w,function(...I){}),g(b,h)};R(v,b=>{r(n)&&b(p)})}g(t,f),nt()}nr(["click","keydown"]);const bd={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"}]]};bd.node;function Sa(t,e){let n=Xe(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return bd}}))}var gp=m('<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),pp=m("<!> ",1),hp=m('<!> <span class="text-danger truncate"> </span>',1),bp=m('<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>'),mp=m('<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),xp=m('<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 _p(t,e){rt(e,!0);let n=xe(""),a=xe(""),o=xe(!1),i=xe(!1),l=xe(void 0);function d(){mr.error=null,x(i,!0)}function f(){x(i,!1)}function v(){mr.wipe(),x(n,""),x(a,""),x(i,!1),setTimeout(()=>{var I;return(I=r(l))==null?void 0:I.focus()},0)}const p=y(()=>mr.needsSetup),b=y(()=>mr.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.");Tt(()=>{mr.locked&&setTimeout(()=>{var I;return(I=r(l))==null?void 0:I.focus()},0)});async function k(I){if(I.preventDefault(),r(o)||!r(n))return;if(r(p)&&r(n)!==r(a)){mr.error="Passwords don't match";return}x(o,!0);const Y=await mr.unlock(r(n));x(o,!1),Y&&(x(n,""),x(a,""),Ke.refresh())}var L=xt(),O=ze(L);{var G=I=>{var Y=xp(),K=c(Y),z=c(K),F=c(z);{var ne=X=>{Sa(X,{class:"size-4 text-primary-text"})},oe=X=>{jn(X,{class:"size-4 text-primary-text"})};R(F,X=>{r(p)?X(ne):X(oe,-1)})}var J=u(F,2),ue=c(J,!0);s(J),s(z);var Z=u(z,2),C=c(Z,!0);s(Z);var N=u(Z,4);Yt(N),Xr(N,X=>x(l,X),()=>r(l));var _=u(N,2);{var T=X=>{var U=gp(),W=u(ze(U),2);Yt(W),Sr(W,()=>r(a),E=>x(a,E)),g(X,U)};R(_,X=>{r(p)&&X(T)})}var D=u(_,2),te=c(D);{var V=X=>{var U=pp(),W=ze(U);cn(W,{class:"size-3.5 animate-spin"});var E=u(W);Q(()=>S(E,` ${r(p)?"Setting up…":"Unlocking…"}`)),g(X,U)},$=X=>{var U=bt();Q(()=>S(U,r(p)?"Set password":"Unlock")),g(X,U)};R(te,X=>{r(o)?X(V):X($,-1)})}s(D);var ee=u(D,2),A=c(ee);{var H=X=>{var U=hp(),W=ze(U);ra(W,{class:"size-3 text-danger"});var E=u(W,2),q=c(E,!0);s(E),Q(()=>S(q,r(b))),g(X,U)};R(A,X=>{r(b)&&X(H)})}s(ee);var B=u(ee,2),le=c(B);{var he=X=>{var U=bp(),W=c(U);Da(W,{class:"size-3"}),Se(2),s(U),_e("click",U,d),g(X,U)},ie=X=>{var U=mp(),W=u(ze(U),2),E=c(W),q=c(E);Da(q,{class:"size-3"}),Se(),s(E);var P=u(E,2);s(W),_e("click",E,v),_e("click",P,f),g(X,U)};R(le,X=>{r(i)?X(ie,-1):X(he)})}s(B),s(K),s(Y),Q(()=>{S(ue,r(h)),S(C,r(w)),Ce(N,"autocomplete",r(p)?"new-password":"current-password"),D.disabled=r(o)||!r(n)||r(p)&&!r(a)}),Sn("submit",K,k),Sr(N,()=>r(n),X=>x(n,X)),g(I,Y)};R(O,I=>{mr.backend==="web"&&mr.locked&&I(G)})}g(t,L),nt()}nr(["click"]);var yp=m('<div class="text-fg-3 text-[12px] font-mono py-6 text-center">No staged changes.</div>'),wp=m('<div class="text-warn text-[11px] mt-1 inline-flex items-center gap-1"><!> </div>'),kp=m('<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>'),Sp=m('<ul class="space-y-2 text-[12px] font-mono"></ul>'),Lp=m('<div class="text-warn text-[11px] font-mono mt-2"> </div>'),Cp=m('<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>'),Ep=m('<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 Mp(t,e){rt(e,!0);const n=y(()=>Ke.readOnly),a=y(()=>Ke.readOnlyReason);let o=xe(!1),i=xe(null);async function l(){if(!r(o)){x(o,!0),x(i,null);try{(await Or.commitAll()).failed.length===0&&e.onClose()}catch(b){x(i,b.message,!0)}finally{x(o,!1)}}}function d(){Or.discardAll(),e.onClose()}var f=xt(),v=ze(f);{var p=b=>{var h=Ep(),w=c(h),k=c(w),L=c(k),O=u(c(L),2),G=c(O);s(O),s(L);var I=u(L,2),Y=c(I);Tr(Y,{class:"size-4"}),s(I),s(k);var K=u(k,2),z=c(K);{var F=te=>{var V=yp();g(te,V)},ne=te=>{var V=Sp();Ge(V,21,()=>Or.changes,$=>$.id,($,ee)=>{var A=kp(),H=c(A),B=c(H),le=c(B),he=c(le,!0);s(le);var ie=u(le,4),X=c(ie,!0);s(ie);var U=u(ie,4),W=c(U,!0);s(U),s(B);var E=u(B,2);s(H);var q=u(H,2),P=u(c(q),2),M=c(P,!0);s(P);var j=u(P,4),re=c(j,!0);s(j),s(q);var de=u(q,2),be=c(de,!0);s(de);var fe=u(de,2);{var Le=ke=>{var me=wp(),ge=c(me);Nc(ge,{class:"size-3"});var De=u(ge);s(me),Q(()=>S(De,` ${r(ee).error??""}`)),g(ke,me)};R(fe,ke=>{r(ee).error&&ke(Le)})}s(A),Q((ke,me)=>{S(he,r(ee).table),S(X,r(ee).row),S(W,r(ee).col),S(M,ke),S(re,r(ee).newValue),S(be,me)},[()=>String(r(ee).oldValue??"NULL"),()=>Ls(r(ee))]),_e("click",E,()=>Or.unstage(r(ee).id)),g($,A)}),s(V),g(te,V)};R(z,te=>{Or.count===0?te(F):te(ne,-1)})}var oe=u(z,2);{var J=te=>{var V=Lp(),$=c(V,!0);s(V),Q(()=>S($,r(i))),g(te,V)};R(oe,te=>{r(i)&&te(J)})}s(K);var ue=u(K,2);{var Z=te=>{var V=Cp(),$=c(V);jn($,{class:"size-3 shrink-0"});var ee=u($,2),A=c(ee,!0);s(ee),s(V),Q(()=>S(A,r(a)??"Server is read-only (file in use) — changes can’t be applied.")),g(te,V)};R(ue,te=>{r(n)&&te(Z)})}var C=u(ue,2),N=c(C),_=u(N,2),T=u(_,2),D=c(T,!0);s(T),s(C),s(w),s(h),Q(()=>{S(G,`${Or.count??""} staged · review before applying`),_.disabled=Or.count===0,T.disabled=Or.count===0||r(o)||r(n),Ce(T,"title",r(n)?r(a)??"Server is read-only — mutations are disabled.":void 0),S(D,r(o)?"Applying…":"Apply all")}),_e("click",I,function(...te){var V;(V=e.onClose)==null||V.apply(this,te)}),_e("click",N,function(...te){var V;(V=e.onClose)==null||V.apply(this,te)}),_e("click",_,d),_e("click",T,l),g(b,h)};R(v,b=>{e.open&&b(p)})}g(t,f),nt()}nr(["click"]);const zp=["vector","queue","stats","diff","hypertable","graph","kv","document","table"],md={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 Qp(t){return`'${t.replace(/'/g,"''")}'`}function fl(t){if(!t||t.length===0)return"table";const e=new Set;for(const n of t){const a=String(n).toLowerCase(),o=md[a];o&&e.add(o)}for(const n of zp)if(e.has(n))return n;return"table"}function Np(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 Tp(t){return typeof t!="string"?null:md[t.toLowerCase()]??null}async function vl(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 Ap(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 Ip(t){var l,d,f;const e=Ap(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 xd(t,e,n={}){var a,o,i,l,d,f,v;if(n.useMetadata)try{const p=await t.collection(e),b=Np(p);if(b.length>0)return fl(b)}catch{}try{const b=(l=(i=(o=(a=(await t.query(`SELECT model FROM red.collections WHERE name = ${Qp(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=Tp(b);if(h&&h!=="table")return h;if(typeof b=="string"&&b.toLowerCase()==="mixed"){const w=await vl(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 O of k)typeof O=="string"&&h.push(O);else if(typeof k=="string")for(const O of k.split(/[,\s]+/))O&&h.push(O);const L=fl(h);return L!=="table"?L:Ip(b)??"table"}catch{return await vl(t,e)??"table"}}const xi={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"}},Op=/^red[._]/i;function Pp(t){return Op.test(t)}var Dp=m('<span class="font-mono text-[10px] text-fg-3"> </span>'),Rp=m('<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>'),Hp=m('<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>'),Vp=m(`<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>`),Fp=m('<div class="h-5 rounded border border-line-1 bg-bg-1 px-1.5 motion-safe:animate-pulse"></div>'),qp=m('<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>'),Bp=m('<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>'),Kp=m('<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>'),jp=m('<button type="button" class="text-fg-3 hover:text-fg-1 cursor-pointer" aria-label="Clear collection search"><!></button>'),Zp=m('<button type="button"> </button>'),Up=m('<li class="px-3 py-2 font-mono text-[12px] text-fg-3">No matching collections.</li>'),Wp=m('<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>'),Gp=m('<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),Yp=m('<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 $p(t,e){rt(e,!0);const n=ma(),a=y(()=>n.collection);let o=xe(qt([])),i=xe(!1),l=xe(null),d=xe(""),f=xe("all");const v=Array.from({length:10},(N,_)=>_),p=Array.from({length:4},(N,_)=>_),b=y(()=>Ke.connected),h=y(()=>Ke.active.url),w=y(()=>{const N=new Map;for(const _ of r(o))N.set(_.capability,(N.get(_.capability)??0)+1);return[...N.entries()].sort((_,T)=>_[0].localeCompare(T[0]))}),k=y(()=>{const N=r(d).trim().toLowerCase();return r(o).filter(_=>{if(r(f)!=="all"&&_.capability!==r(f))return!1;if(!N)return!0;const T=xi[_.capability];return _.name.toLowerCase().includes(N)||T.label.toLowerCase().includes(N)})});async function L(){const N=Ke.client;if(!N||!r(b)){x(o,[],!0);return}x(i,!0),x(l,null);const _=r(h);try{const D=(await St.track("schema · list collections",()=>N.collections())).filter(V=>!Pp(V)).sort();x(o,D.map(V=>({name:V,capability:"table"})),!0);const te=D.map(V=>St.track(`schema · probe ${V}`,async()=>{const $=await xd(N,V);_===r(h)&&x(o,r(o).map(ee=>ee.name===V?{...ee,capability:$}:ee),!0)}));await Promise.all(te)}catch(T){x(l,T.message,!0),x(o,[],!0)}finally{x(i,!1)}}Tt(()=>{mr.locked||(r(b),r(h),L())});var O=Yp(),G=ze(O),I=c(G),Y=c(I);Oo(Y,{class:"size-3.5"}),Se(2),s(I);var K=u(I,2);{var z=N=>{var _=Dp(),T=c(_,!0);s(_),Q(()=>S(T,r(o).length)),g(N,_)};R(K,N=>{r(b)&&r(o).length>0&&N(z)})}s(G);var F=u(G,2);{var ne=N=>{var _=Rp(),T=c(_);jn(T,{class:"size-4 text-primary-text"}),Se(4),s(_),g(N,_)},oe=N=>{var _=Hp(),T=c(_);Gc(T,{class:"size-4 text-fg-3"}),Se(4),s(_),g(N,_)},J=N=>{var _=Vp(),T=u(c(_),2),D=c(T,!0);s(T),s(_),Q(()=>S(D,r(l))),g(N,_)},ue=N=>{var _=Bp(),T=c(_),D=c(T),te=c(D);Wr(te,{class:"size-3 text-fg-3"}),Se(2),s(D);var V=u(D,2);Ge(V,20,()=>p,ee=>ee,(ee,A)=>{var H=Fp();Q(()=>_r(H,`width: ${A===0?42:28+A*8}px`)),g(ee,H)}),s(V),s(T);var $=u(T,2);Ge($,20,()=>v,ee=>ee,(ee,A)=>{var H=qp(),B=u(c(H),2);s(H),Q(()=>_r(B,`width: ${A%3===0?132:A%3===1?96:164}px`)),g(ee,H)}),s($),s(_),g(N,_)},Z=N=>{var _=Kp(),T=u(c(_),4),D=c(T);s(T),s(_),Q(()=>S(D,`./scripts/seed.sh ${r(h)??""}`)),g(N,_)},C=N=>{var _=Gp(),T=ze(_),D=c(T),te=c(D);Wr(te,{class:"size-3 text-fg-3"});var V=u(te,2);Yt(V);var $=u(V,2);{var ee=W=>{var E=jp(),q=c(E);Tr(q,{class:"size-3"}),s(E),_e("click",E,()=>x(d,"")),g(W,E)};R($,W=>{r(d)&&W(ee)})}s(D);var A=u(D,2),H=c(A),B=c(H);s(H);var le=u(H,2);Ge(le,17,()=>r(w),([W,E])=>W,(W,E)=>{var q=y(()=>en(r(E),2));let P=()=>r(q)[0],M=()=>r(q)[1];const j=y(()=>xi[P()]);var re=Zp(),de=c(re);s(re),Q(be=>{Ce(re,"title",r(j).label),Oe(re,1,be),S(de,`${r(j).glyph??""} ${M()??""}`)},[()=>Re(["h-5 rounded border px-1.5 font-mono text-[10px] cursor-pointer transition-colors",r(f)===P()?"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,()=>x(f,P(),!0)),g(W,re)}),s(A),s(T);var he=u(T,2),ie=c(he);{var X=W=>{var E=Up();g(W,E)};R(ie,W=>{r(k).length===0&&W(X)})}var U=u(ie,2);Ge(U,17,()=>r(k),W=>W.name,(W,E)=>{const q=y(()=>xi[r(E).capability]),P=y(()=>r(E).name===r(a)),M=y(()=>({view:"collection",collection:r(E).name,subpage:Ma(r(E).capability)}));var j=Wp(),re=c(j),de=c(re),be=c(de,!0);s(de);var fe=u(de,2),Le=c(fe,!0);s(fe);var ke=u(fe,2),me=c(ke,!0);s(ke),s(re),s(j),Q((ge,De)=>{Ce(re,"href",ge),Ce(re,"aria-current",r(P)?"page":void 0),Ce(re,"title",`${r(q).label} · ${r(E).name}`),Oe(re,1,De),S(be,r(q).glyph),S(Le,r(E).name),S(me,r(q).label)},[()=>n.href(r(M)),()=>Re(["w-full flex items-center gap-2 px-3 py-1 font-mono text-[12px] no-underline transition-colors",r(P)?"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(M),ge)),g(W,j)}),s(he),Q(W=>{Oe(H,1,W),S(B,`all ${r(o).length??""}`)},[()=>Re(["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(V,()=>r(d),W=>x(d,W)),_e("click",H,()=>x(f,"all")),g(N,_)};R(F,N=>{mr.locked?N(ne):r(b)?r(l)?N(J,2):r(i)&&r(o).length===0?N(ue,3):r(o).length===0?N(Z,4):N(C,-1):N(oe,1)})}g(t,O),nt()}nr(["click"]);function Xp(){return Math.random().toString(36).slice(2,10)}var $a,Xa,Ja;class Jp{constructor(){Be(this,$a,xe(qt([])));Be(this,Xa,xe(null));Be(this,Ja,y(()=>this.tabs.find(e=>e.id===this.activeId)??null))}get tabs(){return r(pe(this,$a))}set tabs(e){x(pe(this,$a),e,!0)}get activeId(){return r(pe(this,Xa))}set activeId(e){x(pe(this,Xa),e,!0)}get active(){return r(pe(this,Ja))}set active(e){x(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:Xp()};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}}$a=new WeakMap,Xa=new WeakMap,Ja=new WeakMap;const Bt=new Jp;function e1(){return{sql:"",result:null,error:null,running:!1,runningStartedAt:null}}function t1(t){const e=t.replace(/\s+/g," ").trim();return e.length<=80?`query · ${e}`:`query · ${e.slice(0,79).trimEnd()}…`}function r1(t){return t instanceof DOMException&&t.name==="AbortError"||t instanceof Error&&t.name==="AbortError"}function n1(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 a1{constructor(){Be(this,eo,xe(qt({})));Nt(this,"counter",0);Nt(this,"executor",null);Nt(this,"runSeq",0);Nt(this,"inFlight",new Map)}get states(){return r(pe(this,eo))}set states(e){x(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]=e1()),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(t1(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||r1(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 Zr=new a1;function o1(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 Ui(t){return t.replace(/[^A-Za-z0-9_./-]/g,"")}function gl(t,e){const n=Ui(t);return e==="kv"?`LIST KV ${n} LIMIT 200`:`SELECT * FROM ${n} LIMIT 200`}function i1(t){return`'${t.replace(/'/g,"''")}'`}function s1(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 = ${i1(t)}`,"LIMIT 1"].join(" ")}function Tn(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 l1(t){if(typeof t=="boolean")return t;if(typeof t=="string"){if(t.toLowerCase()==="true")return!0;if(t.toLowerCase()==="false")return!1}}function c1(t){if(!t)return null;const e=t.values,n=Tn(e.name);return n?{name:n,model:Tn(e.model),schemaMode:Tn(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:l1(e.internal),tenantId:Tn(e.tenant_id),queueMode:Tn(e.queue_mode),dimension:An(e.dimension),metric:Tn(e.metric),sessionKey:Tn(e.session_key),sessionGapMs:An(e.session_gap_ms)}:null}function Mo(t){return t===void 0?"n/a":new Intl.NumberFormat("en-US").format(t)}function pl(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 d1(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 hl(t){const e=[];t.schemaMode&&e.push(t.schemaMode),t.dimension!==void 0&&e.push(`${Mo(t.dimension)}d`),t.metric&&e.push(t.metric),t.queueMode&&e.push(t.queueMode),t.sessionKey&&e.push(`session: ${t.sessionKey}`);const n=d1(t.sessionGapMs);return n&&e.push(`gap ${n}`),t.internal&&e.push("internal"),e}class u1{constructor(){Nt(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 tn=new u1,_d={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"]};_d.node;function f1(t,e){let n=Xe(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return _d}}))}const yd={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"]};yd.node;function wd(t,e){let n=Xe(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return yd}}))}const v1=80,kd=["rid","collection","kind","tenant","created_at","updated_at"],g1=new Set(kd);function Wi(t){return g1.has(t.toLowerCase())}function p1(t,e={}){const n=t.result.columns,a=n.filter(v=>!v.startsWith("red_")&&v!=="body"),o=a.filter(v=>!Wi(v)),i=o.find(v=>v.toLowerCase()==="id"),l=o.filter(v=>v!==i),d=[i,...l].filter(v=>!!v);return e.showSystem?[...kd.filter(v=>a.includes(v)),...d]:d.length>0?d:n}function bl(t){const e=t.toLowerCase();return e==="rid"?"rid":e==="id"?"id":null}function h1(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 b1(t){return t==null?"":typeof t=="object"?JSON.stringify(t):String(t)}function m1(t){return t==null}function x1(t,e=v1){return t.result.records.slice(0,e).map(n=>n.values)}var _1=m('<div class="flex-1 grid place-items-center text-fg-3 text-[12px] font-mono p-6"> </div>'),y1=m('<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>'),w1=m('<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),k1=m('<span class="text-[9px] px-1 rounded bg-primary text-on-primary"> </span>'),S1=m('<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>'),L1=m('<label><input type="checkbox" class="sr-only"/> </label>'),C1=m('<span class="text-warn"> </span>'),E1=m('<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>'),M1=m('<div class="flex-1 grid place-items-center text-fg-3 text-[12px] font-mono p-6">Empty result.</div>'),z1=m(`<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>`),Q1=m('<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>'),N1=m('<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>'),T1=m('<span class="ml-1 text-[10px] text-fg-3 uppercase tracking-wide" title="Inferred primary key">pk</span>'),A1=m("<th><span> </span> <!></th>"),I1=m('<button type="button" class="absolute right-1 top-1/2 -translate-y-1/2 text-fg-3 hover:text-fg-1 cursor-pointer"><!></button>'),O1=m('<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>'),P1=m('<tr class="border-b border-line-1 bg-bg-0"><th class="px-2 py-1"></th><!></tr>'),D1=m('<input class="w-full bg-bg-2 text-fg-1 border border-accent/60 rounded px-1 py-0.5 outline-none"/>'),R1=m('<span class="text-fg-3 italic">NULL</span>'),H1=m('<span class="block truncate"> </span>'),V1=m("<td><!></td>"),F1=m('<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>'),q1=m('· <span class="text-fg-2"> </span>',1),B1=m('<span>· pk <code class="text-fg-2"> </code></span>'),K1=m('<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),j1=m('<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),Z1=m('<div class="flex h-full flex-col text-fg-1"><!></div>');function U1(t,e){rt(e,!0);let n=Pe(e,"showSystem",3,!1),a=xe(null);const o=y(()=>r(a)??e.result),i=y(()=>x1(r(o))),l=y(()=>p1(r(o),{showSystem:n()})),d=y(()=>h1(r(l))),f=y(()=>r(l).filter(A=>/^[A-Za-z_][A-Za-z0-9_]*$/.test(A)));let v=xe(!1),p=xe(qt({})),b=xe(200),h=xe(!1),w=xe(null);Tt(()=>{const A={...r(p)};let H=!1;for(const B of r(f))A[B]===void 0&&(A[B]=!0,H=!0);for(const B of Object.keys(A))r(f).includes(B)||(delete A[B],H=!0);H&&x(p,A,!0)});let k=xe(qt({})),L=xe(!1);const O=y(()=>{const A=Object.entries(r(k)).filter(([,H])=>H.trim().length>0);return A.length===0?r(i):r(i).filter(H=>A.every(([B,le])=>{const he=H[B];return he==null?!1:String(he).toLowerCase().includes(le.toLowerCase())}))}),G=y(()=>r(O)),I=y(()=>Object.values(r(k)).filter(A=>A.trim().length>0).length);function Y(A){const H={...r(k)};delete H[A],x(k,H,!0)}function K(){x(k,{},!0)}function z(){if(!e.collection)return null;const A=e.collection.replace(/[^A-Za-z0-9_./-]/g,"");return A.length>0?A:null}function F(){const A=r(f).filter(H=>r(p)[H]);return A.length===0||A.length===r(f).length?"*":A.join(", ")}function ne(){const A=z();return A?`SELECT ${F()} FROM ${A} LIMIT ${r(b)}`:null}async function oe(){const A=Ke.client,H=ne();if(!(!A||!H)){x(h,!0),x(w,null);try{const B=await St.track(`${e.collection} · ${H}`,()=>A.query(H));if(!B.ok){x(w,B.error??"query failed",!0);return}x(a,B,!0),x(k,{},!0),x(ue,null)}catch(B){x(w,B.message,!0)}finally{x(h,!1)}}}function J(){x(a,null),x(k,{},!0),x(w,null)}let ue=xe(null),Z=xe("");function C(A,H,B){if(r(ue)||!e.collection||Ke.readOnly)return;x(ue,{row:A,col:H},!0);const le=Or.find(e.collection,A,H);x(Z,le?le.newValue:String(B??""),!0)}function N(){var he;if(!r(ue)||!e.collection)return;const{row:A,col:H}=r(ue),B=(he=r(G)[A])==null?void 0:he[H],le=r(Z);if(String(B??"")!==le)Or.stage(e.collection,A,H,B,le);else{const ie=Or.find(e.collection,A,H);ie&&Or.unstage(ie.id)}x(ue,null)}function _(){x(ue,null)}function T(A){A.focus(),A.select()}function D(A,H,B){if(!e.collection)return{value:B,staged:!1};const le=Or.find(e.collection,A,H);return le?{value:le.newValue,staged:!0}:{value:B,staged:!1}}var te=Z1(),V=c(te);{var $=A=>{var H=_1(),B=c(H,!0);s(H),Q(()=>S(B,r(o).error??"Query failed.")),g(A,H)},ee=A=>{var H=j1(),B=ze(H),le=c(B);{var he=me=>{var ge=w1(),De=ze(ge),ce=c(De);f1(ce,{class:"size-3"}),Se(2),s(De);var se=u(De,2),ve=c(se);{var Te=Ee=>{cn(Ee,{class:"size-3 animate-spin"})},Ae=Ee=>{ei(Ee,{class:"size-3"})};R(ve,Ee=>{r(h)?Ee(Te):Ee(Ae,-1)})}Se(),s(se);var we=u(se,2);{var Ne=Ee=>{var Me=y1(),Qe=c(Me);E0(Qe,{class:"size-3"}),Se(),s(Me),_e("click",Me,J),g(Ee,Me)};R(we,Ee=>{r(a)&&Ee(Ne)})}Se(2),Q(Ee=>{Ce(De,"aria-pressed",r(v)),Oe(De,1,Ee),se.disabled=r(h)||!Ke.connected},[()=>Re(["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,()=>x(v,!r(v))),_e("click",se,oe),g(me,ge)};R(le,me=>{e.collection&&me(he)})}var ie=u(le,2),X=c(ie);wd(X,{class:"size-3"});var U=u(X,4);{var W=me=>{var ge=k1(),De=c(ge,!0);s(ge),Q(()=>S(De,r(I))),g(me,ge)};R(U,me=>{r(I)>0&&me(W)})}s(ie);var E=u(ie,2);{var q=me=>{var ge=S1(),De=c(ge);Tr(De,{class:"size-3"}),Se(),s(ge),_e("click",ge,K),g(me,ge)};R(E,me=>{r(I)>0&&me(q)})}var P=u(E,2),M=c(P,!0),j=u(M);{var re=me=>{var ge=bt();Q(De=>S(ge,`of ${De??""}`),[()=>r(i).length.toLocaleString()]),g(me,ge)};R(j,me=>{r(I)>0&&me(re)})}Se(),s(P),s(B);var de=u(B,2);{var be=me=>{var ge=E1(),De=c(ge),ce=u(c(De),2),se=u(ce,2),ve=u(se,2),Te=u(c(ve)),Ae=c(Te);Ae.value=Ae.__value=50;var we=u(Ae);we.value=we.__value=100;var Ne=u(we);Ne.value=Ne.__value=200;var Ee=u(Ne);Ee.value=Ee.__value=500;var Me=u(Ee);Me.value=Me.__value=1e3,s(Te);var Qe;ea(Te),s(ve),s(De);var Ye=u(De,2);Ge(Ye,20,()=>r(f),He=>He,(He,je)=>{var ot=L1(),ae=c(ot);Yt(ae);var tt=u(ae);s(ot),Q($e=>{Oe(ot,1,$e),Ea(ae,r(p)[je]??!1),S(tt,` ${je??""}`)},[()=>Re(["inline-flex h-5 items-center gap-1 rounded border px-1.5 cursor-pointer",r(p)[je]?"border-accent/40 bg-accent/10 text-primary-text":"border-line-1 text-fg-3 hover:text-fg-1"].join(" "))]),_e("change",ae,$e=>x(p,{...r(p),[je]:$e.currentTarget.checked},!0)),g(He,ot)}),s(Ye);var Ve=u(Ye,2),Je=c(Ve),lt=c(Je,!0);s(Je);var ct=u(Je,2);{var qe=He=>{var je=C1(),ot=c(je,!0);s(je),Q(()=>S(ot,r(w))),g(He,je)};R(ct,He=>{r(w)&&He(qe)})}s(Ve),s(ge),Q(He=>{Qe!==(Qe=r(b))&&(Te.value=(Te.__value=r(b))??"",ta(Te,r(b))),S(lt,He)},[()=>ne()??"No collection selected"]),_e("click",ce,()=>{const He={};for(const je of r(f))He[je]=!0;x(p,He,!0)}),_e("click",se,()=>x(p,{},!0)),_e("change",Te,He=>x(b,Number(He.currentTarget.value),!0)),g(me,ge)};R(de,me=>{r(v)&&e.collection&&me(be)})}var fe=u(de,2);{var Le=me=>{var ge=M1();g(me,ge)},ke=me=>{var ge=K1(),De=ze(ge),ce=c(De),se=c(ce),ve=c(se),Te=u(c(ve));Ge(Te,17,()=>r(l),gr,(He,je)=>{const ot=y(()=>bl(r(je))),ae=y(()=>Wi(r(je)));var tt=A1(),$e=c(tt),Ze=c($e,!0);s($e);var ut=u($e,2);{var Ct=mt=>{var _t=z1();g(mt,_t)},Qt=mt=>{var _t=Q1();g(mt,_t)},Et=mt=>{var _t=N1();g(mt,_t)},Lt=mt=>{var _t=T1();g(mt,_t)};R(ut,mt=>{r(ot)==="rid"?mt(Ct):r(ae)?mt(Qt,1):r(ot)==="id"?mt(Et,2):r(je)===r(d)&&mt(Lt,3)})}s(tt),Q(mt=>{Oe(tt,1,mt),Oe($e,1,Re(r(ot)||r(ae)?"font-semibold":"")),S(Ze,r(je))},[()=>Re(["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 Ae=u(ve);{var we=He=>{var je=P1(),ot=u(c(je));Ge(ot,17,()=>r(l),gr,(ae,tt)=>{var $e=O1(),Ze=c($e),ut=c(Ze);Yt(ut);var Ct=u(ut,2);{var Qt=Et=>{var Lt=I1(),mt=c(Lt);Tr(mt,{class:"size-3"}),s(Lt),Q(()=>Ce(Lt,"aria-label",`Clear filter for ${r(tt)??""}`)),_e("click",Lt,()=>Y(r(tt))),g(Et,Lt)};R(Ct,Et=>{var Lt;(Lt=r(k)[r(tt)])!=null&&Lt.length&&Et(Qt)})}s(Ze),s($e),Q(()=>Ce(ut,"placeholder",`filter ${r(tt)??""}…`)),Sr(ut,()=>r(k)[r(tt)],Et=>r(k)[r(tt)]=Et),g(ae,$e)}),s(je),g(He,je)};R(Ae,He=>{r(L)&&He(we)})}s(se);var Ne=u(se);Ge(Ne,21,()=>r(G),gr,(He,je,ot)=>{var ae=F1(),tt=c(ae);tt.textContent=ot+1;var $e=u(tt);Ge($e,17,()=>r(l),gr,(Ze,ut)=>{const Ct=y(()=>r(je)[r(ut)]),Qt=y(()=>D(ot,r(ut),r(Ct))),Et=y(()=>{var it;return((it=r(ue))==null?void 0:it.row)===ot&&r(ue).col===r(ut)}),Lt=y(()=>bl(r(ut))),mt=y(()=>Wi(r(ut)));var _t=V1(),wt=c(_t);{var Ot=it=>{var dt=D1();Yt(dt),ms(()=>Sr(dt,()=>r(Z),At=>x(Z,At))),Rr(dt,At=>T==null?void 0:T(At)),Sn("blur",dt,N),_e("keydown",dt,At=>{At.key==="Enter"?N():At.key==="Escape"&&_()}),g(it,dt)},$t=it=>{var dt=R1();g(it,dt)},pr=y(()=>m1(r(Qt).value)),hr=it=>{var dt=H1(),At=c(dt,!0);s(dt),Q(Kt=>S(At,Kt),[()=>b1(r(Qt).value)]),g(it,dt)};R(wt,it=>{r(Et)?it(Ot):r(pr)?it($t,1):it(hr,-1)})}s(_t),Q(it=>{Oe(_t,1,it),Ce(_t,"title",r(Qt).staged?"Staged change — open Pending Changes to commit":void 0)},[()=>Re(["px-2 py-1 max-w-[260px] truncate align-top",r(Lt)==="rid"?"bg-accent/5 text-primary-text font-semibold":r(mt)?"bg-bg-1 text-fg-2 font-mono":r(Lt)==="id"?"text-fg-0":"",r(Qt).staged&&!r(Et)?"bg-warn/15 text-fg-1":""].join(" "))]),_e("dblclick",_t,()=>C(ot,r(ut),r(Ct))),g(Ze,_t)}),s(ae),g(He,ae)}),s(Ne),s(ce),s(De);var Ee=u(De,2),Me=c(Ee),Qe=c(Me),Ye=u(Qe);{var Ve=He=>{var je=bt("· filtered");g(He,je)};R(Ye,He=>{r(I)>0&&He(Ve)})}var Je=u(Ye,2);{var lt=He=>{var je=q1(),ot=u(ze(je)),ae=c(ot,!0);s(ot),Q(()=>S(ae,e.collection)),g(He,je)};R(Je,He=>{e.collection&&He(lt)})}s(Me);var ct=u(Me,4);{var qe=He=>{var je=B1(),ot=u(c(je)),ae=c(ot,!0);s(ot),s(je),Q(()=>S(ae,r(d))),g(He,je)};R(ct,He=>{r(d)&&He(qe)})}s(Ee),Q(()=>S(Qe,`${r(G).length??""} of ${r(o).record_count??""} rows `)),g(me,ge)};R(fe,me=>{r(o).result.records.length?me(ke,-1):me(Le)})}Q((me,ge)=>{Ce(ie,"aria-pressed",r(L)),Ce(ie,"title",r(L)?"Hide column filters":"Show column filters"),Oe(ie,1,me),S(M,ge)},[()=>Re(["inline-flex items-center gap-1.5 h-6 px-2 rounded border transition-colors cursor-pointer",r(L)?"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(G).length.toLocaleString()]),_e("click",ie,()=>x(L,!r(L))),g(A,H)};R(V,A=>{r(o).ok?A(ee,-1):A($)})}s(te),g(t,te),nt()}nr(["click","change","dblclick","keydown"]);const W1={capability:"table",renders:t=>!!(t!=null&&t.result)&&Array.isArray(t.result.columns),component:U1},G1={capability:"graph",renders:t=>z0(t),component:M0};function Sd(t){return t.find(e=>e.toLowerCase()==="key")??t.find(e=>e.toLowerCase()==="k")??t.find(e=>/(^|_)key$/i.test(e))??null}function Ld(t){return t.find(e=>e.toLowerCase()==="value")??t.find(e=>e.toLowerCase()==="v")??t.find(e=>/(^|_)value$/i.test(e))??null}function Y1(t){const e=t.result.columns,n=Sd(e),a=Ld(e);return!n||!a?[]:t.result.records.map(o=>({key:String(o.values[n]??""),value:o.values[a]}))}function $1(t){var n;const e=((n=t.result)==null?void 0:n.columns)??[];return Sd(e)!==null&&Ld(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 J1(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 ml(t){return t==null?"null":typeof t=="object"?JSON.stringify(t):String(t)}const Cd={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"]};Cd.node;function ca(t,e){let n=Xe(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Cd}}))}const Ed={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"}]]};Ed.node;function eh(t,e){let n=Xe(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Ed}}))}var th=m('<span class="text-fg-3 ml-2"> </span>'),rh=m("<ul></ul>"),nh=m('<li><button type="button"><span class="text-fg-1"> </span> <!></button> <!></li>'),ah=m(`<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
8
+ (also accepts <code>*_key</code>/<code>*_value</code>).</div>`),oh=m('<button type="button" class="text-fg-3 hover:text-fg-1 cursor-pointer" aria-label="Clear prefix"><!></button>'),ih=m('· <span class="text-fg-2"> </span>',1),sh=m('<li class="px-3 py-2 text-fg-3">No keys match prefix.</li>'),lh=m('<div class="text-fg-3 mb-2"> </div> <pre class="text-fg-1 whitespace-pre-wrap break-all"> </pre>',1),ch=m('<div class="text-fg-3">Click a key to inspect.</div>'),dh=m('<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>'),uh=m('<div class="text-fg-3">No keys match prefix.</div>'),fh=m('<pre class="whitespace-pre text-fg-1"> </pre>'),vh=m('<div class="flex-1 overflow-auto p-3 text-[12px] font-mono"><!></div>'),gh=m('<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),ph=m('<div class="flex h-full flex-col text-fg-1"><!></div>');function hh(t,e){rt(e,!0);const n=(L,O=Jr,G=Jr)=>{var I=nh(),Y=c(I);let K,z;var F=c(Y),ne=c(F,!0);s(F);var oe=u(F,2);{var J=C=>{var N=th(),_=c(N,!0);s(N),Q(T=>S(_,T),[()=>p(O().value)]),g(C,N)};R(oe,C=>{O().fullKey!==null&&C(J)})}s(Y);var ue=u(Y,2);{var Z=C=>{var N=rh();Ge(N,21,()=>O().children,_=>_.name,(_,T)=>{n(_,()=>r(T),()=>G()+1)}),s(N),g(C,N)};R(ue,C=>{O().children.length>0&&C(Z)})}s(I),Q(()=>{K=Oe(Y,1,"w-full text-left px-2 py-0.5 hover:bg-bg-1/60",null,K,{"text-primary-text":r(i)===O()}),z=_r(Y,"",z,{"padding-left":`${8+G()*12}px`}),S(ne,O().name)}),_e("click",Y,()=>x(i,O(),!0)),g(L,I)};let a=xe(""),o=xe("tree"),i=xe(null);const l=y(()=>Y1(e.result)),d=y(()=>r(a).trim()?r(l).filter(L=>L.key.startsWith(r(a).trim())):r(l)),f=y(()=>J1(r(d))),v=y(()=>X1(r(l),r(a).trim()));function p(L){const O=ml(L);return O.length>60?O.slice(0,59)+"…":O}var b=ph(),h=c(b);{var w=L=>{var O=ah();g(L,O)},k=L=>{var O=gh(),G=ze(O),I=c(G),Y=c(I),K=c(Y);eh(K,{class:"size-3"}),Se(),s(Y);var z=u(Y,2),F=c(z);ca(F,{class:"size-3"}),Se(),s(z),s(I);var ne=u(I,2),oe=c(ne);Wr(oe,{class:"size-3 text-fg-3"});var J=u(oe,2);Yt(J);var ue=u(J,2);{var Z=A=>{var H=oh(),B=c(H);Tr(B,{class:"size-3"}),s(H),_e("click",H,()=>x(a,"")),g(A,H)};R(ue,A=>{r(a)&&A(Z)})}s(ne);var C=u(ne,2),N=c(C,!0),_=u(N);{var T=A=>{var H=bt();Q(B=>S(H,`of ${B??""}`),[()=>r(l).length.toLocaleString()]),g(A,H)};R(_,A=>{r(a)&&A(T)})}var D=u(_,2);{var te=A=>{var H=ih(),B=u(ze(H)),le=c(B,!0);s(B),Q(()=>S(le,e.collection)),g(A,H)};R(D,A=>{e.collection&&A(te)})}s(C),s(G);var V=u(G,2);{var $=A=>{var H=dh(),B=c(H),le=c(B);{var he=q=>{var P=sh();g(q,P)},ie=q=>{var P=xt(),M=ze(P);Ge(M,17,()=>r(f).children,j=>j.name,(j,re)=>{n(j,()=>r(re),()=>0)}),g(q,P)};R(le,q=>{r(f).children.length===0?q(he):q(ie,-1)})}s(B);var X=u(B,2),U=c(X);{var W=q=>{var P=lh(),M=ze(P),j=c(M,!0);s(M);var re=u(M,2),de=c(re,!0);s(re),Q(be=>{S(j,r(i).fullKey??r(i).name),S(de,be)},[()=>ml(r(i).value)]),g(q,P)},E=q=>{var P=ch();g(q,P)};R(U,q=>{r(i)?q(W):q(E,-1)})}s(X),s(H),g(A,H)},ee=A=>{var H=vh(),B=c(H);{var le=X=>{var U=uh();g(X,U)},he=y(()=>Object.keys(r(v)).length===0),ie=X=>{var U=fh(),W=c(U,!0);s(U),Q(E=>S(W,E),[()=>JSON.stringify(r(v),null,2)]),g(X,U)};R(B,X=>{r(he)?X(le):X(ie,-1)})}s(H),g(A,H)};R(V,A=>{r(o)==="tree"?A($):A(ee,-1)})}Q((A,H,B)=>{Oe(Y,1,A),Ce(Y,"aria-pressed",r(o)==="tree"),Oe(z,1,H),Ce(z,"aria-pressed",r(o)==="json"),S(N,B)},[()=>Re(["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(" ")),()=>Re(["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",Y,()=>x(o,"tree")),_e("click",z,()=>x(o,"json")),Sr(J,()=>r(a),A=>x(a,A)),g(L,O)};R(h,L=>{r(l).length===0?L(w):L(k,-1)})}s(b),g(t,b),nt()}nr(["click"]);const bh={capability:"kv",renders:t=>$1(t),component:hh},na="__all__",mh=["time","timestamp","ts","event_time","bucket","created_at"],xh=new Set(["created_at","updated_at","time","timestamp","timestamp_ns","rid","tenant"]),Md=640,zd=180,Qd=16;function za(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 _i(t){return typeof t=="number"?t:Number(t)}function zo(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 Nd(t){var a,o;const e=((a=t.result)==null?void 0:a.columns)??[];for(const i of mh){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&&zo(l.values[i])!==null&&!za(l.values[i]))return i}return null}function Td(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_")||xh.has(d.toLowerCase()))continue;const f=a.find(v=>v.values[d]!==null&&v.values[d]!==void 0);f&&za(f.values[d])&&o.push(d)}return o}function _h(t){const e=Nd(t);return e?Td(t,e).length>0:!1}function yh(t,e){const n=Nd(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")&&za(w)){f.add(String(h));const k=zo(b.values[n]);k!==null&&v.push({t:k,v:_i(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=zo(w.values[n]);if(k===null)continue;const L=w.values[o];za(L)&&h.push({t:k,v:_i(L),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=Td(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=zo(v);b!==null&&za(p)&&d.push({t:b,v:_i(p),raw:f.values})}return d.sort((f,v)=>f.t-v.t),{timeColumn:n,metricColumn:l,metrics:i,points:d,metricNameColumn:null}}function wh(t,e=Md,n=zd,a=Qd){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,L)=>{const O=a+(k.t-i)/v*b,G=a+h-(k.v-d)/p*h;w.push(`${L===0?"M":"L"}${O.toFixed(2)},${G.toFixed(2)}`)}),{width:e,height:n,padding:a,path:w.join(" "),minT:i,maxT:l,minV:d,maxV:f}}function kh(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 Sh(t,e=Md,n=zd,a=Qd){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 Ad={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"]};Ad.node;function Lh(t,e){let n=Xe(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Ad}}))}var Ch=m('<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>'),Eh=m("<option> </option>"),Mh=m('<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>'),zh=m('<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>'),Qh=m('· <span class="text-fg-2"> </span>',1),Nh=Cr('<rect class="cursor-pointer transition-opacity" fill="var(--color-accent)" role="button" tabindex="0"><title> </title></rect>'),Th=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>'),Ah=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>'),Ih=m('<th class="px-2 py-1.5 text-left font-normal">metric</th>'),Oh=m('<td class="px-2 py-1 text-fg-2"> </td>'),Ph=m('<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>'),Dh=m('<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),Rh=m('<div class="flex h-full flex-col text-fg-1"><!></div>');function Hh(t,e){rt(e,!0);let n=xe(qt(na)),a=xe("rate"),o=xe(6e4),i=xe(null);const l=y(()=>yh(e.result,r(n))),d=y(()=>r(l)&&r(a)==="line"?wh(r(l)):null),f=y(()=>r(l)?kh(r(l),r(o)):[]),v=y(()=>r(l)&&r(a)==="rate"?Sh(r(f)):null),p=y(()=>{if(!r(l))return[];if(!r(i))return r(l).points;const z=r(i).t,F=z+r(o);return r(l).points.filter(ne=>ne.t>=z&&ne.t<F)});function b(z){try{return new Date(z).toISOString().replace("T"," ").slice(0,19)}catch{return String(z)}}function h(z){return z==null?"":typeof z=="object"?JSON.stringify(z):String(z)}function w(z){var ue;const F=[],ne=(ue=r(l))!=null&&ue.metricNameColumn?z.raw[r(l).metricNameColumn]:void 0;ne!==void 0&&F.push(String(ne));const oe=z.raw.tags;if(oe&&typeof oe=="object"){const Z=Object.entries(oe).map(([C,N])=>`${C}=${h(N)}`).join(" ");Z&&F.push(Z)}const J=z.raw.event??z.raw.action??z.raw.message??z.raw.payload;return J!==void 0&&F.push(h(J)),F.join(" · ")}function k(z){return z===1e3?"1s":z===1e4?"10s":z===6e4?"1min":z===3e5?"5min":z===6e5?"10min":z===36e5?"1hr":`${z}ms`}function L(z){return z===na?"all writes":z}function O(){return r(l)?!r(n)||r(n)===na?"all writes":r(n):""}var G=Rh(),I=c(G);{var Y=z=>{var F=Ch();g(z,F)},K=z=>{var F=Dh(),ne=ze(F),oe=c(ne),J=c(oe),ue=c(J);Lh(ue,{class:"size-3"});var Z=u(ue);s(J);var C=u(J,2),N=c(C);sd(N,{class:"size-3"}),Se(),s(C),s(oe);var _=u(oe,2),T=c(_);Ra(T,{class:"size-3"});var D=u(T,2);Ge(D,20,()=>r(l).metrics,ce=>ce,(ce,se)=>{var ve=Eh(),Te=c(ve,!0);s(ve);var Ae={};Q(we=>{S(Te,we),Ae!==(Ae=se)&&(ve.value=(ve.__value=se)??"")},[()=>L(se)]),g(ce,ve)}),s(D),s(_);var te=u(_,2);{var V=ce=>{var se=Mh(),ve=u(c(se)),Te=c(ve);Te.value=Te.__value=1e3;var Ae=u(Te);Ae.value=Ae.__value=1e4;var we=u(Ae);we.value=we.__value=6e4;var Ne=u(we);Ne.value=Ne.__value=3e5;var Ee=u(Ne);Ee.value=Ee.__value=6e5;var Me=u(Ee);Me.value=Me.__value=36e5,s(ve);var Qe;ea(ve),s(se),Q(()=>{Qe!==(Qe=r(o))&&(ve.value=(ve.__value=r(o))??"",ta(ve,r(o)))}),_e("change",ve,Ye=>{x(o,Number(Ye.currentTarget.value),!0),x(i,null)}),g(ce,se)};R(te,ce=>{r(a)==="rate"&&ce(V)})}var $=u(te,2);{var ee=ce=>{var se=zh(),ve=c(se);Tr(ve,{class:"size-3"}),Se(),s(se),_e("click",se,()=>x(i,null)),g(ce,se)};R($,ce=>{r(i)&&ce(ee)})}var A=u($,2),H=c(A),B=c(H,!0);s(H);var le=u(H),he=u(le);{var ie=ce=>{var se=bt();Q(ve=>S(se,`of ${ve??""}`),[()=>r(l).points.length.toLocaleString()]),g(ce,se)};R(he,ce=>{r(i)&&ce(ie)})}var X=u(he,2);{var U=ce=>{var se=Qh(),ve=u(ze(se)),Te=c(ve,!0);s(ve),Q(()=>S(Te,e.collection)),g(ce,se)};R(X,ce=>{e.collection&&ce(U)})}s(A),s(ne);var W=u(ne,2),E=c(W);{var q=ce=>{var se=Th(),ve=c(se);Ge(ve,17,()=>r(v).bars,Ee=>Ee.bucket.t,(Ee,Me)=>{var Qe=Nh(),Ye=c(Qe),Ve=c(Ye);s(Ye),s(Qe),Q((Je,lt,ct)=>{Ce(Qe,"x",r(Me).x),Ce(Qe,"y",r(Me).y),Ce(Qe,"width",r(Me).w),Ce(Qe,"height",r(Me).h),Ce(Qe,"opacity",!r(i)||r(i).t===r(Me).bucket.t?.9:.3),Ce(Qe,"aria-label",`Bucket starting at ${Je??""} with ${r(Me).bucket.count??""} writes`),S(Ve,`${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",Qe,()=>{var Je;return x(i,((Je=r(i))==null?void 0:Je.t)===r(Me).bucket.t?null:r(Me).bucket,!0)}),_e("keydown",Qe,Je=>{var lt;(Je.key==="Enter"||Je.key===" ")&&(Je.preventDefault(),x(i,((lt=r(i))==null?void 0:lt.t)===r(Me).bucket.t?null:r(Me).bucket,!0))}),g(Ee,Qe)});var Te=u(ve),Ae=c(Te,!0);s(Te);var we=u(Te),Ne=c(we);s(we),s(se),Q((Ee,Me)=>{Ce(se,"viewBox",`0 0 ${r(v).width} ${r(v).height}`),Ce(Te,"x",r(v).padding),Ce(Te,"y",r(v).height-2),S(Ae,Ee),Ce(we,"x",r(v).width-r(v).padding),Ce(we,"y",r(v).height-2),S(Ne,`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)},P=ce=>{var se=Ah(),ve=c(se);s(se),Q(()=>{Ce(se,"viewBox",`0 0 ${r(d).width} ${r(d).height}`),Ce(ve,"d",r(d).path)}),g(ce,se)};R(E,ce=>{r(a)==="rate"&&r(v)?ce(q):r(d)&&ce(P,1)})}s(W);var M=u(W,2),j=c(M),re=c(j),de=c(re),be=u(c(de));{var fe=ce=>{var se=Ih();g(ce,se)};R(be,ce=>{r(l).metricNameColumn&&ce(fe)})}Se(2),s(de),s(re);var Le=u(re);Ge(Le,21,()=>r(p),gr,(ce,se)=>{var ve=Ph(),Te=c(ve),Ae=c(Te,!0);s(Te);var we=u(Te);{var Ne=Ve=>{var Je=Oh(),lt=c(Je,!0);s(Je),Q(ct=>S(lt,ct),[()=>String(r(se).raw[r(l).metricNameColumn]??"")]),g(Ve,Je)};R(we,Ve=>{r(l).metricNameColumn&&Ve(Ne)})}var Ee=u(we),Me=c(Ee,!0);s(Ee);var Qe=u(Ee),Ye=c(Qe,!0);s(Qe),s(ve),Q((Ve,Je)=>{S(Ae,Ve),S(Me,r(se).v),S(Ye,Je)},[()=>b(r(se).t),()=>w(r(se))]),g(ce,ve)}),s(Le),s(j),s(M);var ke=u(M,2),me=c(ke),ge=u(me);{var De=ce=>{var se=bt();Q((ve,Te)=>S(se,`· bucket ${ve??""} (+${Te??""})`),[()=>b(r(i).t),()=>k(r(o))]),g(ce,se)};R(ge,ce=>{r(i)&&ce(De)})}s(ke),Q((ce,se,ve,Te,Ae)=>{Oe(J,1,ce),Ce(J,"aria-pressed",r(a)==="rate"),S(Z,` Writes/${se??""}`),Oe(C,1,ve),Ce(C,"aria-pressed",r(a)==="line"),S(B,Te),S(le,` · ${Ae??""}`),S(me,`${r(p).length??""} inserts${e.collection?" · ":""}${e.collection??""??""} `)},[()=>Re(["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)),()=>Re(["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(" ")),()=>O(),()=>r(p).length.toLocaleString()]),_e("click",J,()=>x(a,"rate")),_e("click",C,()=>x(a,"line")),Bi(D,()=>r(n),ce=>x(n,ce)),g(z,F)};R(I,z=>{r(l)?z(K,-1):z(Y)})}s(G),g(t,G),nt()}nr(["click","change","keydown"]);const Vh={capability:"hypertable",renders:t=>_h(t),component:Hh};function Fh(t){return{query:t.query,capability:t.capability,record_count:t.record_count,records:t.result.records}}function qh(t){return JSON.stringify(t,null,2)}function Bh(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"}">${yi(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">${yi(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+=yi(o),n+=1}return e}function yi(t){return t.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}var Kh=m('<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 jh(t,e){rt(e,!0);const n=y(()=>qh(Fh(e.result))),a=y(()=>Bh(r(n)));var o=Kh(),i=c(o),l=c(i);q0(l,()=>r(a),!0),s(l),s(i);var d=u(i,2),f=c(d);s(d),s(o),Q(()=>S(f,`${e.result.record_count??""} records · raw shape${e.collection?" · ":""}${e.collection??""??""}`)),g(t,o),nt()}const Zh={capability:"json",renders:()=>!1,component:jh},Uh=/(^|_)(vector|embedding|embeddings|turbovec)($|_)/i,Wh=/(^|_)(scalar|score|distance|similarity|magnitude|norm)($|_)/i,Gh=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 Gi(t){return Array.isArray(t)&&t.length>0&&t.every(e=>typeof e=="number"&&Number.isFinite(e))}function Yh(t){const e=Object.entries(t).find(([a,o])=>Uh.test(a)&&Gi(o));if(e)return e;const n=Object.entries(t).find(([,a])=>Gi(a));return n||null}function $h(t,e){const n=Object.entries(t).find(([a,o])=>a!==e&&Wh.test(a)&&typeof o=="number"&&Number.isFinite(o));return n||null}function xl(t){return typeof t=="number"&&Number.isFinite(t)&&t>0?Math.floor(t):null}function Yi(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=>Gi(p.vector)))??null,i=o!=null&&o.vector?["vector_results.vector",o.vector]:Yh(a),l=$h(a,(i==null?void 0:i[0])??null),d=(i==null?void 0:i[1].length)??xl(a.dimension)??xl(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])||Gh.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 Xh(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:Yi(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 wi(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 ki(t){return t==null?"NULL":typeof t=="object"?JSON.stringify(t):String(t)}function Jh(t){return/^VECTOR\s+SEARCH\s+\S+\s+SIMILAR\s+TO\s+\[1(?:\.0)?,\s*0(?:\.0)?/i.test(t.query.trim())}function eb(t){return/^VECTOR\s+SEARCH\s+/i.test(t.query.trim())}function tb(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 rb(t){return`[${t.map(e=>Number(e.toPrecision(8))).join(", ")}]`}function nb(t){return`'${t.replace(/'/g,"''")}'`}function ab(t){return t.replace(/[^A-Za-z0-9_./-]/g,"")}function _l(t,e,n){const a=Math.max(1,Math.min(200,Math.floor(Number(n)||20))),o=e.kind==="text"?nb(e.text):rb(e.vector);return`VECTOR SEARCH ${ab(t)} SIMILAR TO ${o} INCLUDE VECTORS LIMIT ${a}`}const Id={name:"gauge",size:24,node:[["path",{d:"m12 14 4-4"}],["path",{d:"M3.34 19a10 10 0 1 1 17.32 0"}]]};Id.node;function Od(t,e){let n=Xe(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Id}}))}const Pd={name:"list-filter",size:24,node:[["path",{d:"M2 5h20"}],["path",{d:"M6 12h12"}],["path",{d:"M9 19h6"}]]};Pd.node;function ob(t,e){let n=Xe(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Pd}}))}const Dd={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"]};Dd.node;function $i(t,e){let n=Xe(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Dd}}))}var ib=m('<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"/>'),sb=m('<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"/>'),lb=m('<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),cb=m('<button type="button" class="text-fg-3 hover:text-fg-1 cursor-pointer" aria-label="Clear vector row filter"><!></button>'),db=m('<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>'),ub=m("<span> </span>"),fb=m('<div class="mt-1.5 text-warn"> </div>'),vb=m('<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>'),gb=m('<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>'),pb=m('<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>'),hb=m('<button type="button" class="text-fg-3 hover:text-fg-1 cursor-pointer" aria-label="Clear vector result filter"><!></button>'),bb=m('<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>'),mb=m('<span class="ml-auto text-fg-1"> </span>'),xb=m('<div class="mt-0.5 truncate text-fg-3"> </div>'),_b=m('<button type="button"><div class="flex items-baseline gap-2"><span class="text-primary-text"> </span> <span class="text-fg-3"> </span> <!></div> <!></button>'),yb=m('<div class="text-fg-3">No vector selected.</div>'),wb=m('<div class="text-fg-3">vector column</div> <div class="text-fg-0"> </div>',1),kb=m('<div class="text-fg-3">ranking metric</div> <div class="text-fg-0"> </div>',1),Sb=m('<div class="text-fg-3 truncate"> </div> <div class="text-fg-1 break-words"> </div>',1),Lb=m('<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>'),Cb=m('<div class="border border-line-1 bg-bg-1/40 px-3 py-2 text-fg-3"> </div>'),Eb=m('<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>'),Mb=m('<div class="mt-2 text-fg-3">Showing first 256 dimensions.</div>'),zb=m('<div class="mb-2 flex items-center justify-between text-fg-3"><span> </span> <span> </span></div> <div class="grid gap-1"></div> <!>',1),Qb=m('<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>'),Nb=m('<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>'),Tb=m('<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),Ab=m('<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 Ib(t,e){rt(e,!0);let n=xe("browse"),a=xe("metadata"),o=xe("text"),i=xe(""),l=xe(""),d=xe(20),f=xe(""),v=xe(null),p=xe(null),b=xe(!1),h=xe(null);const w=y(()=>Yi(e.result)),k=y(()=>{var j;return((j=r(w).find(re=>re.dimension>0))==null?void 0:j.dimension)??null}),L=y(()=>r(p)??(eb(e.result)?e.result:null)),O=y(()=>r(L)?Yi(r(L)):[]),G=y(()=>r(n)==="search"?r(O):r(w)),I=y(()=>r(L)?Jh(r(L)):!1),Y=y(()=>{const j=r(f).trim().toLowerCase();return j?r(G).filter(re=>re.id.toLowerCase().includes(j)||Object.values(re.metadata).some(de=>ki(de).toLowerCase().includes(j))):r(G)}),K=y(()=>r(v)??r(Y)[0]??null),z=y(()=>Math.max(1,...r(Y).map(j=>uo(j.vector)))),F=y(()=>r(L)!==null);function ne(j){const re=Object.entries(j.metadata).slice(0,3);return re.length===0?"":re.map(([de,be])=>`${de}=${ki(be)}`).join(" · ")}function oe(j,re){const de=Math.max(1,...re.map(be=>Math.abs(be)));return Math.max(2,Math.abs(j)/de*100)}async function J(){if(!e.client||!e.collection){x(h,"No active RedDB connection for vector search.");return}x(h,null),x(b,!0);try{const j=r(i).trim();if(r(o)==="text"&&j.length===0)throw new Error("Enter text for RedDB to embed.");const re=r(o)==="text"?_l(e.collection,{kind:"text",text:j},r(d)):_l(e.collection,{kind:"vector",vector:tb(r(l))},r(d)),de=await e.client.query(re);x(p,de,!0),x(v,null),x(n,"search"),x(a,"metadata")}catch(j){x(h,j.message,!0)}finally{x(b,!1)}}var ue=Ab(),Z=c(ue),C=c(Z),N=c(C),_=c(N),T=c(_);$i(T,{class:"size-3"}),Se(),s(_);var D=u(_,2),te=c(D);Wr(te,{class:"size-3"}),Se(),s(D),s(N);var V=u(N,2);{var $=j=>{var re=lb(),de=ze(re),be=c(de),fe=u(be,2);s(de);var Le=u(de,2),ke=c(Le);{var me=we=>{var Ne=ib();Yt(Ne),_e("keydown",Ne,Ee=>{Ee.key==="Enter"&&J()}),Sr(Ne,()=>r(i),Ee=>x(i,Ee)),g(we,Ne)},ge=we=>{var Ne=sb();Yt(Ne),_e("keydown",Ne,Ee=>{Ee.key==="Enter"&&J()}),Sr(Ne,()=>r(l),Ee=>x(l,Ee)),g(we,Ne)};R(ke,we=>{r(o)==="text"?we(me):we(ge,-1)})}s(Le);var De=u(Le,2),ce=u(c(De),2);Yt(ce),s(De);var se=u(De,2),ve=c(se);{var Te=we=>{cn(we,{class:"size-3 animate-spin"})},Ae=we=>{ei(we,{class:"size-3"})};R(ve,we=>{r(b)?we(Te):we(Ae,-1)})}Se(),s(se),Q((we,Ne,Ee)=>{Oe(be,1,we),Ce(be,"aria-pressed",r(o)==="text"),Oe(fe,1,Ne),Ce(fe,"aria-pressed",r(o)==="vector"),Oe(se,1,Ee),se.disabled=r(b)},[()=>Re(["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(" ")),()=>Re(["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(" ")),()=>Re(["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,()=>x(o,"text")),_e("click",fe,()=>x(o,"vector")),Sr(ce,()=>r(d),we=>x(d,we)),_e("click",se,()=>void J()),g(j,re)},ee=j=>{var re=db(),de=c(re);Wr(de,{class:"size-3 text-fg-3"});var be=u(de,2);Yt(be);var fe=u(be,2);{var Le=ke=>{var me=cb(),ge=c(me);Tr(ge,{class:"size-3"}),s(me),_e("click",me,()=>x(f,"")),g(ke,me)};R(fe,ke=>{r(f)&&ke(Le)})}s(re),Sr(be,()=>r(f),ke=>x(f,ke)),g(j,re)};R(V,j=>{r(n)==="search"?j($):j(ee,-1)})}var A=u(V,2),H=c(A),B=c(H,!0);s(H);var le=u(H,2);{var he=j=>{var re=ub(),de=c(re,!0);s(re),Q(()=>S(de,e.collection)),g(j,re)};R(le,j=>{e.collection&&j(he)})}s(A),s(C);var ie=u(C,2);{var X=j=>{var re=fb(),de=c(re,!0);s(re),Q(()=>S(de,r(h))),g(j,re)};R(ie,j=>{r(h)&&j(X)})}s(Z);var U=u(Z,2);{var W=j=>{var re=vb();g(j,re)};R(U,j=>{r(n)==="search"&&r(I)&&j(W)})}var E=u(U,2);{var q=j=>{var re=gb(),de=c(re),be=c(de);Wr(be,{class:"mx-auto mb-3 size-7 text-fg-3",strokeWidth:1.4});var fe=u(be,2),Le=c(fe,!0);s(fe),Se(2),s(de),s(re),Q(()=>S(Le,r(F)?"No search results.":"No vector search has been run.")),g(j,re)},P=j=>{var re=pb(),de=c(re),be=c(de);$i(be,{class:"mx-auto mb-3 size-7 text-fg-3",strokeWidth:1.4}),Se(2),s(de),s(re),g(j,re)},M=j=>{var re=Tb(),de=ze(re),be=c(de),fe=c(be),Le=c(fe);ca(Le,{class:"size-3"}),Se(),s(fe);var ke=u(fe,2),me=c(ke);ob(me,{class:"size-3"}),Se(),s(ke);var ge=u(ke,2),De=c(ge);Od(De,{class:"size-3"}),Se(),s(ge),s(be);var ce=u(be,2);{var se=qe=>{var He=bb(),je=c(He);Wr(je,{class:"size-3 text-fg-3"});var ot=u(je,2);Yt(ot);var ae=u(ot,2);{var tt=$e=>{var Ze=hb(),ut=c(Ze);Tr(ut,{class:"size-3"}),s(Ze),_e("click",Ze,()=>x(f,"")),g($e,Ze)};R(ae,$e=>{r(f)&&$e(tt)})}s(He),Sr(ot,()=>r(f),$e=>x(f,$e)),g(qe,He)};R(ce,qe=>{r(n)==="search"&&qe(se)})}var ve=u(ce,2),Te=c(ve,!0),Ae=u(Te);{var we=qe=>{var He=bt();Q(je=>S(He,`of ${je??""}`),[()=>r(G).length.toLocaleString()]),g(qe,He)};R(Ae,qe=>{r(f)&&qe(we)})}var Ne=u(Ae);s(ve),s(de);var Ee=u(de,2),Me=c(Ee);Ge(Me,21,()=>r(Y),qe=>qe.id,(qe,He)=>{var je=_b(),ot=c(je),ae=c(ot),tt=c(ae,!0);s(ae);var $e=u(ae,2),Ze=c($e);s($e);var ut=u($e,2);{var Ct=mt=>{var _t=mb(),wt=c(_t,!0);s(_t),Q((Ot,$t)=>{Ce(_t,"title",Ot),S(wt,$t)},[()=>wi(r(He)),()=>r(He).scalar.toFixed(4)]),g(mt,_t)};R(ut,mt=>{r(n)==="search"&&r(He).scalar!==null&&mt(Ct)})}s(ot);var Qt=u(ot,2);{var Et=mt=>{var _t=xb(),wt=c(_t,!0);s(_t),Q(Ot=>S(wt,Ot),[()=>ne(r(He))]),g(mt,_t)},Lt=y(()=>ne(r(He)));R(Qt,mt=>{r(Lt)&&mt(Et)})}s(je),Q(mt=>{Oe(je,1,mt),S(tt,r(He).id),S(Ze,`${r(He).dimension??""}d`)},[()=>Re(["w-full text-left px-3 py-2 border-b border-line-1/60 hover:bg-bg-1/50 cursor-pointer",r(K)===r(He)?"bg-bg-1 text-fg-0":"text-fg-2"].join(" "))]),_e("click",je,()=>x(v,r(He),!0)),g(qe,je)}),s(Me);var Qe=u(Me,2),Ye=c(Qe);{var Ve=qe=>{var He=yb();g(qe,He)},Je=qe=>{var He=Lb(),je=u(c(He),2),ot=c(je,!0);s(je);var ae=u(je,4),tt=c(ae,!0);s(ae);var $e=u(ae,4),Ze=c($e,!0);s($e);var ut=u($e,4),Ct=c(ut,!0);s(ut);var Qt=u(ut,2);{var Et=wt=>{var Ot=wb(),$t=u(ze(Ot),2),pr=c($t,!0);s($t),Q(()=>S(pr,r(K).vectorColumn)),g(wt,Ot)};R(Qt,wt=>{r(K).vectorColumn&&wt(Et)})}var Lt=u(Qt,2);{var mt=wt=>{var Ot=kb(),$t=u(ze(Ot),2),pr=c($t,!0);s($t),Q(hr=>S(pr,hr),[()=>wi(r(K))]),g(wt,Ot)};R(Lt,wt=>{r(n)==="search"&&r(K).scalarColumn&&wt(mt)})}var _t=u(Lt,2);Ge(_t,17,()=>Object.entries(r(K).metadata),gr,(wt,Ot)=>{var $t=y(()=>en(r(Ot),2));let pr=()=>r($t)[0],hr=()=>r($t)[1];var it=Sb(),dt=ze(it),At=c(dt,!0);s(dt);var Kt=u(dt,2),or=c(Kt,!0);s(Kt),Q(ir=>{S(At,pr()),S(or,ir)},[()=>ki(hr())]),g(wt,it)}),s(He),Q(wt=>{S(ot,r(K).id),S(tt,r(K).dimension),S(Ze,wt),S(Ct,r(K).vector.length>0?"returned":"not returned")},[()=>r(K).vector.length>0?uo(r(K).vector).toFixed(6):"n/a"]),g(qe,He)},lt=qe=>{var He=xt(),je=ze(He);{var ot=tt=>{var $e=Cb(),Ze=c($e);s($e),Q(()=>S(Ze,`This result reports a ${r(K).dimension??""}d vector, but the coordinate array was not returned by RedDB.`)),g(tt,$e)},ae=tt=>{var $e=zb(),Ze=ze($e),ut=c(Ze),Ct=c(ut);s(ut);var Qt=u(ut,2),Et=c(Qt);s(Qt),s(Ze);var Lt=u(Ze,2);Ge(Lt,21,()=>r(K).vector.slice(0,256),gr,(wt,Ot,$t)=>{var pr=Eb(),hr=c(pr);hr.textContent=$t;var it=u(hr,2),dt=c(it);let At;s(it);var Kt=u(it,2),or=c(Kt,!0);s(Kt),s(pr),Q((ir,sr)=>{At=_r(dt,"",At,ir),Oe(Kt,1,Re(r(Ot)<0?"text-warn text-right":"text-fg-1 text-right")),S(or,sr)},[()=>({width:`${oe(r(Ot),r(K).vector)}%`}),()=>r(Ot).toFixed(5)]),g(wt,pr)}),s(Lt);var mt=u(Lt,2);{var _t=wt=>{var Ot=Mb();g(wt,Ot)};R(mt,wt=>{r(K).vector.length>256&&wt(_t)})}Q((wt,Ot)=>{S(Ct,`${r(K).vector.length??""} dimensions`),S(Et,`|v| ${wt??""} / max visible ${Ot??""}`)},[()=>uo(r(K).vector).toFixed(6),()=>r(z).toFixed(2)]),g(tt,$e)};R(je,tt=>{r(K).vector.length===0?tt(ot):tt(ae,-1)})}g(qe,He)},ct=qe=>{var He=Nb(),je=u(c(He));Ge(je,21,()=>r(Y),ot=>ot.id,(ot,ae)=>{var tt=Qb(),$e=c(tt),Ze=c($e,!0);s($e);var ut=u($e),Ct=c(ut,!0);s(ut);var Qt=u(ut),Et=c(Qt,!0);s(Qt),s(tt),Q((Lt,mt,_t)=>{S(Ze,r(ae).id),Ce(ut,"title",Lt),S(Ct,mt),S(Et,_t)},[()=>wi(r(ae)),()=>r(ae).scalar===null?"n/a":r(ae).scalar.toFixed(6),()=>uo(r(ae).vector).toFixed(6)]),_e("click",tt,()=>x(v,r(ae),!0)),g(ot,tt)}),s(je),s(He),g(qe,He)};R(Ye,qe=>{r(K)?r(a)==="metadata"?qe(Je,1):r(a)==="vector"?qe(lt,2):qe(ct,-1):qe(Ve)})}s(Qe),s(Ee),Q((qe,He,je,ot)=>{Oe(fe,1,qe),Ce(fe,"aria-pressed",r(a)==="metadata"),Oe(ke,1,He),Ce(ke,"aria-pressed",r(a)==="vector"),Oe(ge,1,je),Ce(ge,"aria-pressed",r(a)==="scalar"),S(Te,ot),S(Ne,` ${r(n)==="search"?" results":" rows"}`)},[()=>Re(["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(" ")),()=>Re(["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(" ")),()=>Re(["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(Y).length.toLocaleString()]),_e("click",fe,()=>x(a,"metadata")),_e("click",ke,()=>x(a,"vector")),_e("click",ge,()=>x(a,"scalar")),g(j,re)};R(E,j=>{r(n)==="search"&&r(O).length===0?j(q):r(G).length===0?j(P,1):j(M,-1)})}s(ue),Q((j,re)=>{Oe(_,1,j),Ce(_,"aria-pressed",r(n)==="browse"),Oe(D,1,re),Ce(D,"aria-pressed",r(n)==="search"),S(B,r(k)?`${r(k)}d`:"dimension n/a")},[()=>Re(["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(" ")),()=>Re(["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",_,()=>{x(n,"browse"),x(v,null)}),_e("click",D,()=>{x(n,"search"),x(v,null)}),g(t,ue),nt()}nr(["click","keydown"]);const Ob={capability:"vector",renders:t=>Xh(t),component:Ib},Xi=["message","payload","body","value","data"],Rd=["state","status","delivery_state"],Hd=["consumer","consumer_id","worker","lease_owner"],Vd=["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 Pb(t){return t.result.records.map((e,n)=>{const a=e.values??{},o=fo(a,Xi),i=fo(a,Rd),l=fo(a,Hd),d=fo(a,Vd);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 Db(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")&&Xi.some(a=>n.includes(a))?!0:Xi.some(a=>n.includes(a))&&(Rd.some(a=>n.includes(a))||Hd.some(a=>n.includes(a))||Vd.some(a=>n.includes(a)))})}function Rb(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 yl(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 Hb(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:yl(a.lsn),ts:yl(a.ts),before:a.before,after:a.after,payload:a})}return e}function Vb(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 Fb(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 Fd={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"}]]};Fd.node;function qb(t,e){let n=Xe(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Fd}}))}const qd={name:"plus",size:24,node:[["path",{d:"M5 12h14"}],["path",{d:"M12 5v14"}]]};qd.node;function Qa(t,e){let n=Xe(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return qd}}))}const Bd={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"}]]};Bd.node;function Bb(t,e){let n=Xe(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Bd}}))}const Kd={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"}]]};Kd.node;function wl(t,e){let n=Xe(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Kd}}))}var Kb=m('<button type="button" class="text-fg-3 hover:text-fg-1 cursor-pointer" aria-label="Clear queue filter"><!></button>'),jb=m("<span> </span>"),Zb=m('<span>from <span class="text-fg-2"> </span></span>'),Ub=m('<span>dlc <span class="text-fg-2"> </span></span>'),Wb=m('<span class="text-fg-2"> </span>'),Gb=m('<div class="mt-1.5 text-warn"> </div>'),Yb=m('<div class="mt-1.5 text-ok"> </div>'),$b=m('<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>'),Xb=m('<div class="p-3 text-[12px] font-mono text-fg-3">No WITH EVENTS envelopes detected in this queue result.</div>'),Jb=m('<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>'),em=m('<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>'),tm=m('<div class="flex-1 min-h-0 overflow-auto"><!></div>'),rm=m('<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>'),nm=m('<div class="flex-1 min-h-0 overflow-auto p-3 text-[12px] font-mono"><div class="grid gap-2"></div></div>'),am=m('<div class="p-3 text-fg-3">No queue messages in this result.</div>'),om=m('<span class="ml-auto text-fg-3"> </span>'),im=m('<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>'),sm=m('<pre class="whitespace-pre-wrap text-fg-1"> </pre>'),lm=m('<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>'),cm=m('<div class="text-fg-3">Select a message to inspect payload, delivery state, consumer, and DLC link.</div>'),dm=m('<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>'),um=m('<span><span class="text-fg-2"> </span> </span>'),fm=m('<span><span class="text-fg-2"> </span> </span>'),vm=m('<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 gm(t,e){rt(e,!0);let n=xe("events"),a=xe(""),o=xe(null),i=xe(!1),l=xe(""),d=xe(!1),f=xe(null),v=xe(0);const p='{"type":"email","to":"ops@example.com"}',b=y(()=>Pb(e.result)),h=y(()=>Rb(r(b))),w=y(()=>Hb(r(b))),k=y(()=>e.collection?Vb(e.collection):[]),L=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 O(ce){return typeof ce=="string"?ce:JSON.stringify(ce)}function G(ce){if(ce===null)return"-";try{return new Date(ce).toISOString().replace("T"," ").slice(0,19)}catch{return String(ce)}}function I(){const ce=r(l).trim();if(!ce)return"";try{return JSON.parse(ce)}catch{return ce}}async function Y(){const ce=Ke.client;if(!(!ce||!e.collection||!r(l).trim())){x(d,!0),x(f,null);try{await St.track(`${e.collection} · enqueue message`,()=>ce.query(Fb(e.collection,I()))),x(l,""),x(v,r(v)+1)}catch(se){x(f,se.message,!0)}finally{x(d,!1)}}}var K=vm(),z=c(K),F=c(z),ne=c(F),oe=c(ne);Bb(oe,{class:"size-3"}),Se(),s(ne);var J=u(ne,2),ue=c(J);wl(ue,{class:"size-3"}),Se(),s(J);var Z=u(J,2),C=c(Z);qb(C,{class:"size-3"}),Se(),s(Z);var N=u(Z,2),_=c(N);ca(_,{class:"size-3"}),Se(),s(N),s(F);var T=u(F,2),D=c(T);Qa(D,{class:"size-3"}),Se(),s(T);var te=u(T,2),V=c(te);Wr(V,{class:"size-3 text-fg-3"});var $=u(V,2);Yt($);var ee=u($,2);{var A=ce=>{var se=Kb(),ve=c(se);Tr(ve,{class:"size-3"}),s(se),_e("click",se,()=>x(a,"")),g(ce,se)};R(ee,ce=>{r(a)&&ce(A)})}s(te);var H=u(te,2),B=c(H),le=c(B);s(B);var he=u(B,2);{var ie=ce=>{var se=jb(),ve=c(se);s(se),Q(Te=>S(ve,`${Te??""} events`),[()=>r(w).length.toLocaleString()]),g(ce,se)};R(he,ce=>{r(w).length&&ce(ie)})}var X=u(he,2),U=c(X);s(X);var W=u(X,2);{var E=ce=>{var se=Zb(),ve=u(c(se)),Te=c(ve,!0);s(ve),s(se),Q(Ae=>S(Te,Ae),[()=>r(h).sources.join(", ")]),g(ce,se)};R(W,ce=>{r(h).sources.length&&ce(E)})}var q=u(W,2);{var P=ce=>{var se=Ub(),ve=u(c(se)),Te=c(ve,!0);s(ve),s(se),Q(Ae=>S(Te,Ae),[()=>r(h).dlcs.join(", ")]),g(ce,se)};R(q,ce=>{r(h).dlcs.length&&ce(P)})}var M=u(q,2);{var j=ce=>{var se=Wb(),ve=c(se,!0);s(se),Q(()=>S(ve,e.collection)),g(ce,se)};R(M,ce=>{e.collection&&ce(j)})}s(H),s(z);var re=u(z,2);{var de=ce=>{var se=$b(),ve=c(se),Te=c(ve);Pa(Te),Ce(Te,"placeholder",p);var Ae=u(Te,2),we=c(Ae);{var Ne=Ve=>{cn(Ve,{class:"size-3 animate-spin"})},Ee=Ve=>{wl(Ve,{class:"size-3"})};R(we,Ve=>{r(d)?Ve(Ne):Ve(Ee,-1)})}Se(),s(Ae),s(ve);var Me=u(ve,2);{var Qe=Ve=>{var Je=Gb(),lt=c(Je,!0);s(Je),Q(()=>S(lt,r(f))),g(Ve,Je)},Ye=Ve=>{var Je=Yb(),lt=c(Je);s(Je),Q(()=>S(lt,`${r(v)??""} inserted. Refresh the collection to reload from reddb.`)),g(Ve,Je)};R(Me,Ve=>{r(f)?Ve(Qe):r(v)>0&&Ve(Ye,1)})}s(se),Q(Ve=>Ae.disabled=Ve,[()=>r(d)||!r(l).trim()||!e.collection]),Sr(Te,()=>r(l),Ve=>x(l,Ve)),_e("click",Ae,Y),g(ce,se)};R(re,ce=>{r(i)&&ce(de)})}var be=u(re,2);{var fe=ce=>{var se=tm(),ve=c(se);{var Te=we=>{var Ne=Xb();g(we,Ne)},Ae=we=>{var Ne=em(),Ee=u(c(Ne));Ge(Ee,21,()=>r(w),Me=>`${Me.messageId}-${Me.lsn??Me.entityId}`,(Me,Qe)=>{var Ye=Jb(),Ve=c(Ye),Je=c(Ve,!0);s(Ve);var lt=u(Ve),ct=c(lt,!0);s(lt);var qe=u(lt),He=c(qe),je=c(He,!0);s(He),s(qe);var ot=u(qe),ae=c(ot,!0);s(ot);var tt=u(ot),$e=c(tt,!0);s(tt);var Ze=u(tt),ut=c(Ze,!0);s(Ze),s(Ye),Q((Ct,Qt)=>{S(Je,Ct),S(ct,r(Qe).collection),S(je,r(Qe).op),S(ae,r(Qe).entityId),S($e,r(Qe).lsn??"-"),S(ut,Qt)},[()=>G(r(Qe).ts),()=>O(r(Qe).after)]),g(Me,Ye)}),s(Ee),s(Ne),g(we,Ne)};R(ve,we=>{r(w).length===0?we(Te):we(Ae,-1)})}s(se),g(ce,se)},Le=ce=>{var se=nm(),ve=c(se);Ge(ve,21,()=>r(k),Te=>Te.query,(Te,Ae)=>{var we=rm(),Ne=c(we),Ee=c(Ne),Me=c(Ee,!0);s(Ee);var Qe=u(Ee,2),Ye=c(Qe,!0);s(Qe),s(Ne);var Ve=u(Ne,2),Je=c(Ve,!0);s(Ve);var lt=u(Ve,2),ct=c(lt,!0);s(lt),s(we),Q(qe=>{S(Me,r(Ae).label),Oe(Qe,1,qe),S(Ye,r(Ae).mutates?"mutates":"read-only"),S(Je,r(Ae).query),S(ct,r(Ae).note)},[()=>Re(["rounded border px-1.5 py-0.5 text-[10px]",r(Ae).mutates?"border-warn/30 bg-warn/10 text-warn":"border-ok/30 bg-ok/10 text-ok"].join(" "))]),g(Te,we)}),s(ve),s(se),g(ce,se)},ke=ce=>{var se=dm(),ve=c(se),Te=c(ve);{var Ae=Ve=>{var Je=am();g(Ve,Je)},we=Ve=>{var Je=xt(),lt=ze(Je);Ge(lt,17,()=>r(L),ct=>ct.id,(ct,qe)=>{var He=im(),je=c(He),ot=c(je),ae=c(ot,!0);s(ot);var tt=u(ot,2),$e=c(tt,!0);s(tt);var Ze=u(tt,2);{var ut=Et=>{var Lt=om(),mt=c(Lt,!0);s(Lt),Q(()=>S(mt,r(qe).consumer)),g(Et,Lt)};R(Ze,Et=>{r(qe).consumer&&Et(ut)})}s(je);var Ct=u(je,2),Qt=c(Ct,!0);s(Ct),s(He),Q((Et,Lt)=>{Oe(He,1,Et),S(ae,r(qe).id),S($e,r(qe).state),S(Qt,Lt)},[()=>Re(["w-full text-left px-3 py-2 border-b border-line-1/60 hover:bg-bg-1/50 cursor-pointer",r(o)===r(qe)?"bg-bg-1 text-fg-0":"text-fg-2"].join(" ")),()=>O(r(qe).message)]),_e("click",He,()=>x(o,r(qe),!0)),g(ct,He)}),g(Ve,Je)};R(Te,Ve=>{r(L).length===0?Ve(Ae):Ve(we,-1)})}s(ve);var Ne=u(ve,2),Ee=c(Ne);{var Me=Ve=>{var Je=sm(),lt=c(Je,!0);s(Je),Q(ct=>S(lt,ct),[()=>JSON.stringify(r(L).map(ct=>ct.values),null,2)]),g(Ve,Je)},Qe=Ve=>{var Je=lm(),lt=u(c(Je)),ct=c(lt,!0);s(lt);var qe=u(lt,3),He=c(qe,!0);s(qe);var je=u(qe,3),ot=c(je,!0);s(je);var ae=u(je,3),tt=c(ae,!0);s(ae);var $e=u(ae,3),Ze=c($e,!0);s($e),s(Je),Q(ut=>{S(ct,r(o).id),S(He,r(o).state),S(ot,r(o).consumer??"none"),S(tt,r(o).dlc??"none"),S(Ze,ut)},[()=>O(r(o).message)]),g(Ve,Je)},Ye=Ve=>{var Je=cm();g(Ve,Je)};R(Ee,Ve=>{r(n)==="json"?Ve(Me):r(o)?Ve(Qe,1):Ve(Ye,-1)})}s(Ne),s(se),g(ce,se)};R(be,ce=>{r(n)==="events"?ce(fe):r(n)==="commands"?ce(Le,1):ce(ke,-1)})}var me=u(be,2),ge=c(me);Ge(ge,17,()=>r(h).states,([ce,se])=>ce,(ce,se)=>{var ve=y(()=>en(r(se),2));let Te=()=>r(ve)[0],Ae=()=>r(ve)[1];var we=um(),Ne=c(we),Ee=c(Ne,!0);s(Ne);var Me=u(Ne);s(we),Q(Qe=>{S(Ee,Te()),S(Me,` ${Qe??""}`)},[()=>Ae().toLocaleString()]),g(ce,we)});var De=u(ge,2);Ge(De,17,()=>r(h).operations,([ce,se])=>ce,(ce,se)=>{var ve=y(()=>en(r(se),2));let Te=()=>r(ve)[0],Ae=()=>r(ve)[1];var we=fm(),Ne=c(we),Ee=c(Ne,!0);s(Ne);var Me=u(Ne);s(we),Q(Qe=>{S(Ee,Te()),S(Me,` ${Qe??""}`)},[()=>Ae().toLocaleString()]),g(ce,we)}),s(me),s(K),Q((ce,se,ve,Te,Ae,we)=>{Oe(ne,1,ce),Ce(ne,"aria-pressed",r(n)==="events"),Oe(J,1,se),Ce(J,"aria-pressed",r(n)==="messages"),Oe(Z,1,ve),Ce(Z,"aria-pressed",r(n)==="commands"),Oe(N,1,Te),Ce(N,"aria-pressed",r(n)==="json"),T.disabled=!e.collection,Oe(T,1,Ae),Ce(T,"aria-pressed",r(i)),Ce(T,"title",e.collection?"Insert a queue message":"Open this as a collection to insert messages"),S(le,`${we??""} messages`),S(U,`${r(h).activeConsumers??""} active consumers`)},[()=>Re(["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(" ")),()=>Re(["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(" ")),()=>Re(["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(" ")),()=>Re(["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(" ")),()=>Re(["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(L).length.toLocaleString()]),_e("click",ne,()=>x(n,"events")),_e("click",J,()=>x(n,"messages")),_e("click",Z,()=>x(n,"commands")),_e("click",N,()=>x(n,"json")),_e("click",T,()=>x(i,!r(i))),Sr($,()=>r(a),ce=>x(a,ce)),g(t,K),nt()}nr(["click"]);const pm={capability:"queue",renders:t=>Db(t),component:gm},hm=["metric","stat","name","key"],bm=["value","count","total","avg","rate","p50","p95","p99"],kl=["unit","units"];function Sl(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 mm(t){for(const n of kl){const a=t[n];if(typeof a=="string"&&a.trim())return a.trim()}const e=Object.entries(t).find(([n,a])=>kl.includes(n.toLowerCase())&&typeof a=="string"&&a.trim());return e?String(e[1]).trim():null}function jd(t){const e=[];for(const n of t.result.records){const a=n.values??{},o=Object.entries(a).find(([l,d])=>hm.includes(l.toLowerCase())&&(typeof d=="string"||typeof d=="number")),i=Object.entries(a).find(([l,d])=>bm.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:mm(a)??Sl(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:Sl(l),source:a})}return e}function xm(t){if(t.capability==="stats")return!0;const e=jd(t);return e.length>0&&e.length>=t.result.records.length}function Ll(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 Zd={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"}]]};Zd.node;function _m(t,e){let n=Xe(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Zd}}))}var ym=m('<div class="flex-1 grid place-items-center text-fg-3 text-[12px] font-mono p-6">No numeric statistics in this result.</div>'),wm=m('· <span class="text-fg-2"> </span>',1),km=m('<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>'),Sm=m('<div class="flex-1 overflow-auto p-3"><div class="grid grid-cols-[repeat(auto-fill,minmax(220px,1fr))] gap-2"></div></div>'),Lm=m('<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>'),Cm=m('<div class="flex-1 overflow-auto p-3"><div class="grid grid-cols-[repeat(auto-fill,minmax(180px,1fr))] gap-2"></div></div>'),Em=m('<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>'),Mm=m('<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>'),zm=m('<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),Qm=m('<div class="flex h-full flex-col text-fg-1"><!></div>');function Nm(t,e){rt(e,!0);let n=xe("kpi");const a=y(()=>jd(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=Qm(),d=c(l);{var f=p=>{var b=ym();g(p,b)},v=p=>{var b=zm(),h=ze(b),w=c(h),k=c(w),L=c(k);_m(L,{class:"size-3"}),Se(),s(k);var O=u(k,2),G=c(O);Od(G,{class:"size-3"}),Se(),s(O);var I=u(O,2),Y=c(I);Q0(Y,{class:"size-3"}),Se(),s(I),s(w);var K=u(w,2),z=c(K),F=u(z);{var ne=C=>{var N=wm(),_=u(ze(N)),T=c(_,!0);s(_),Q(()=>S(T,e.collection)),g(C,N)};R(F,C=>{e.collection&&C(ne)})}s(K),s(h);var oe=u(h,2);{var J=C=>{var N=Sm(),_=c(N);Ge(_,23,()=>r(a),(T,D)=>`${T.key}-${D}`,(T,D)=>{var te=km(),V=c(te),$=c(V,!0);s(V);var ee=u(V,2),A=c(ee,!0);s(ee),s(te),Q(H=>{S($,r(D).label),S(A,H)},[()=>Ll(r(D).value,r(D).unit)]),g(T,te)}),s(_),s(N),g(C,N)},ue=C=>{var N=Cm(),_=c(N);Ge(_,23,()=>r(a),(T,D)=>`${T.key}-${D}`,(T,D)=>{const te=y(()=>i(r(D).value));var V=Lm(),$=c(V),ee=u(c($)),A=u(ee),H=c(A,!0);s(A),s($);var B=u($,2),le=c(B,!0);s(B),s(V),Q(he=>{Ce($,"aria-label",`${r(D).label??""} gauge`),Ce(ee,"stroke-dasharray",`${r(te)} 100`),S(H,he),S(le,r(D).label)},[()=>Ll(r(D).value,r(D).unit)]),g(T,V)}),s(_),s(N),g(C,N)},Z=C=>{var N=Mm(),_=c(N),T=u(c(_));Ge(T,23,()=>r(a),(D,te)=>`${D.key}-${te}`,(D,te)=>{var V=Em(),$=c(V),ee=c($,!0);s($);var A=u($),H=c(A,!0);s(A);var B=u(A),le=c(B,!0);s(B),s(V),Q(he=>{S(ee,r(te).label),S(H,he),S(le,r(te).unit||"-")},[()=>r(te).value.toLocaleString()]),g(D,V)}),s(T),s(_),s(N),g(C,N)};R(oe,C=>{r(n)==="kpi"?C(J):r(n)==="gauge"?C(ue,1):C(Z,-1)})}Q((C,N,_,T)=>{Oe(k,1,C),Ce(k,"aria-pressed",r(n)==="kpi"),Oe(O,1,N),Ce(O,"aria-pressed",r(n)==="gauge"),Oe(I,1,_),Ce(I,"aria-pressed",r(n)==="table"),S(z,`${T??""} metrics `)},[()=>Re(["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(" ")),()=>Re(["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(" ")),()=>Re(["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,()=>x(n,"kpi")),_e("click",O,()=>x(n,"gauge")),_e("click",I,()=>x(n,"table")),g(p,b)};R(d,p=>{r(a).length===0?p(f):p(v,-1)})}s(l),g(t,l),nt()}nr(["click"]);const Tm={capability:"stats",renders:t=>xm(t),component:Nm},Ud={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"}]]};Ud.node;function Ji(t,e){let n=Xe(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Ud}}))}const Wd=["change","change_type","operation","op"],Am=["target_collection","collection_name","diff_collection"],Im=["entity_id","row_id","rid","id"],Gd=["before_state","before_row","before"],Yd=["after_state","after_row","after"],Om=["note","summary","message"];function Yn(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 Cl(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 Pm(t){return t.result.records.map((e,n)=>{const a=e.values??{},o=Yn(a,Wd),i=Yn(a,Am),l=Yn(a,Im),d=Yn(a,Gd),f=Yn(a,Yd),v=Yn(a,Om);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:Cl((d==null?void 0:d[1])??null),after:Cl((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 Dm(t){return t.capability==="diff"?!0:t.result.records.some(e=>{const n=Object.keys(e.values??{}).map(a=>a.toLowerCase());return Wd.some(a=>n.includes(a))&&(Gd.some(a=>n.includes(a))||Yd.some(a=>n.includes(a)))})}function Rm(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 es(t){return!!t&&typeof t=="object"&&!Array.isArray(t)}function El(t){return t===void 0?"__red_ui_undefined__":es(t)?JSON.stringify(Object.fromEntries(Object.entries(t).sort(([e],[n])=>e.localeCompare(n)))):JSON.stringify(t)}function Hm(t){const e=es(t.before)?t.before:{},n=es(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":El(d)===El(f)?"unchanged":"modified";return{field:o,before:d,after:f,status:v}})}function $n(t){return t==null||t===""?"-":typeof t=="object"?JSON.stringify(t,null,2):String(t)}var Vm=m('<div class="flex-1 grid place-items-center text-fg-3 text-[12px] font-mono p-6">No diff shape in this result.</div>'),Fm=m('<button type="button" class="text-fg-3 hover:text-fg-1 cursor-pointer" aria-label="Clear diff filter"><!></button>'),qm=m('<span><span class="text-fg-2"> </span> </span>'),Bm=m('<span class="text-fg-2"> </span>'),Km=m('<div class="flex-1 overflow-auto p-3 text-[12px] font-mono"><pre class="whitespace-pre-wrap text-fg-1"> </pre></div>'),jm=m('<span class="ml-auto text-fg-3"> </span>'),Zm=m('<div class="mt-1 truncate text-fg-1"> </div>'),Um=m('<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>'),Wm=m('<span class="text-fg-3">note</span><span class="text-fg-1"> </span>',1),Gm=m('<div class="px-2 py-2 text-fg-3">No changed fields in this row.</div>'),Ym=m('<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>'),$m=m('<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>'),Xm=m('<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>'),Jm=m('<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),ex=m('<div class="text-fg-3">No diff entry selected.</div>'),tx=m('<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>'),rx=m('<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),nx=m('<div class="flex h-full flex-col text-fg-1"><!></div>');function $d(t,e){rt(e,!0);let n=xe("summary"),a=xe(""),o=xe(null),i=xe(!1);const l=y(()=>Pm(e.result)),d=y(()=>Rm(r(l))),f=y(()=>{const G=r(a).trim().toLowerCase();return G?r(l).filter(I=>I.id.toLowerCase().includes(G)||I.change.toLowerCase().includes(G)||(I.collection??"").toLowerCase().includes(G)||(I.entityId??"").toLowerCase().includes(G)||$n(I.before).toLowerCase().includes(G)||$n(I.after).toLowerCase().includes(G)):r(l)}),v=y(()=>r(o)??r(f)[0]??null),p=y(()=>r(v)?Hm(r(v)):[]),b=y(()=>r(i)?r(p):r(p).filter(G=>G.status!=="unchanged"));function h(G){return G==="added"?"text-ok":G==="removed"?"text-danger":G==="modified"?"text-primary-text":"text-fg-3"}var w=nx(),k=c(w);{var L=G=>{var I=Vm();g(G,I)},O=G=>{var I=rx(),Y=ze(I),K=c(Y),z=c(K),F=c(z);Ji(F,{class:"size-3"}),Se(),s(z);var ne=u(z,2),oe=c(ne);ca(oe,{class:"size-3"}),Se(),s(ne),s(K);var J=u(K,2),ue=c(J);Wr(ue,{class:"size-3 text-fg-3"});var Z=u(ue,2);Yt(Z);var C=u(Z,2);{var N=A=>{var H=Fm(),B=c(H);Tr(B,{class:"size-3"}),s(H),_e("click",H,()=>x(a,"")),g(A,H)};R(C,A=>{r(a)&&A(N)})}s(J);var _=u(J,2),T=c(_);Ge(T,17,()=>r(d),([A,H])=>A,(A,H)=>{var B=y(()=>en(r(H),2));let le=()=>r(B)[0],he=()=>r(B)[1];var ie=qm(),X=c(ie),U=c(X,!0);s(X);var W=u(X);s(ie),Q(()=>{S(U,le()),S(W,` ${he()??""}`)}),g(A,ie)});var D=u(T,2);{var te=A=>{var H=Bm(),B=c(H,!0);s(H),Q(()=>S(B,e.collection)),g(A,H)};R(D,A=>{e.collection&&A(te)})}s(_),s(Y);var V=u(Y,2);{var $=A=>{var H=Km(),B=c(H),le=c(B,!0);s(B),s(H),Q(he=>S(le,he),[()=>JSON.stringify(r(f).map(he=>he.values),null,2)]),g(A,H)},ee=A=>{var H=tx(),B=c(H);Ge(B,21,()=>r(f),U=>U.id,(U,W)=>{var E=Um(),q=c(E),P=c(q),M=c(P,!0);s(P);var j=u(P,2),re=c(j,!0);s(j);var de=u(j,2);{var be=ke=>{var me=jm(),ge=c(me,!0);s(me),Q(()=>S(ge,r(W).collection)),g(ke,me)};R(de,ke=>{r(W).collection&&ke(be)})}s(q);var fe=u(q,2);{var Le=ke=>{var me=Zm(),ge=c(me,!0);s(me),Q(()=>S(ge,r(W).note)),g(ke,me)};R(fe,ke=>{r(W).note&&ke(Le)})}s(E),Q(ke=>{Oe(E,1,ke),S(M,r(W).change),S(re,r(W).entityId??r(W).id)},[()=>Re(["w-full text-left px-3 py-2 border-b border-line-1/60 hover:bg-bg-1/50 cursor-pointer",r(v)===r(W)?"bg-bg-1 text-fg-0":"text-fg-2"].join(" "))]),_e("click",E,()=>x(o,r(W),!0)),g(U,E)}),s(B);var le=u(B,2),he=c(le);{var ie=U=>{var W=Jm(),E=ze(W),q=u(c(E)),P=c(q,!0);s(q);var M=u(q,3),j=c(M,!0);s(M);var re=u(M,3),de=c(re,!0);s(re);var be=u(re,2);{var fe=Ae=>{var we=Wm(),Ne=u(ze(we)),Ee=c(Ne,!0);s(Ne),Q(()=>S(Ee,r(v).note)),g(Ae,we)};R(be,Ae=>{r(v).note&&Ae(fe)})}s(E);var Le=u(E,2);{var ke=Ae=>{var we=Xm(),Ne=c(we),Ee=u(c(Ne),2),Me=c(Ee);s(Ee);var Qe=u(Ee,2),Ye=c(Qe);Yt(Ye),Se(),s(Qe),s(Ne);var Ve=u(Ne,2);{var Je=ct=>{var qe=Gm();g(ct,qe)},lt=ct=>{var qe=$m(),He=u(c(qe));Ge(He,21,()=>r(b),je=>je.field,(je,ot)=>{var ae=Ym(),tt=c(ae),$e=c(tt,!0);s(tt);var Ze=u(tt),ut=c(Ze,!0);s(Ze);var Ct=u(Ze),Qt=c(Ct),Et=c(Qt,!0);s(Qt),s(Ct);var Lt=u(Ct),mt=c(Lt),_t=c(mt,!0);s(mt),s(Lt),s(ae),Q((wt,Ot,$t)=>{Oe(tt,1,wt),S($e,r(ot).status),S(ut,r(ot).field),S(Et,Ot),S(_t,$t)},[()=>Re(["px-2 py-1 align-top",h(r(ot).status)].join(" ")),()=>$n(r(ot).before),()=>$n(r(ot).after)]),g(je,ae)}),s(He),s(qe),g(ct,qe)};R(Ve,ct=>{r(b).length===0?ct(Je):ct(lt,-1)})}s(we),Q(()=>S(Me,`${r(b).length??""}/${r(p).length??""} fields`)),b0(Ye,()=>r(i),ct=>x(i,ct)),g(Ae,we)};R(Le,Ae=>{r(p).length>0&&Ae(ke)})}var me=u(Le,2),ge=c(me),De=u(c(ge),2),ce=c(De,!0);s(De),s(ge);var se=u(ge,2),ve=u(c(se),2),Te=c(ve,!0);s(ve),s(se),s(me),Q((Ae,we)=>{S(P,r(v).change),S(j,r(v).entityId??r(v).id),S(de,r(v).collection??"-"),S(ce,Ae),S(Te,we)},[()=>$n(r(v).before),()=>$n(r(v).after)]),g(U,W)},X=U=>{var W=ex();g(U,W)};R(he,U=>{r(v)?U(ie):U(X,-1)})}s(le),s(H),g(A,H)};R(V,A=>{r(n)==="raw"?A($):A(ee,-1)})}Q((A,H)=>{Oe(z,1,A),Ce(z,"aria-pressed",r(n)==="summary"),Oe(ne,1,H),Ce(ne,"aria-pressed",r(n)==="raw")},[()=>Re(["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(" ")),()=>Re(["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",z,()=>x(n,"summary")),_e("click",ne,()=>x(n,"raw")),Sr(Z,()=>r(a),A=>x(a,A)),g(G,I)};R(k,G=>{r(l).length===0?G(L):G(O,-1)})}s(w),g(t,w),nt()}nr(["click"]);const ax={capability:"diff",renders:Dm,component:$d},Xd={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"}]]};Xd.node;function ox(t,e){let n=Xe(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Xd}}))}const ix=new Set(["rid","collection","kind","tenant","created_at","updated_at","body"]);function sx(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 lx(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 Jd(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))ix.has(d.toLowerCase())||(l[d]=f);e.push({rid:String(o.rid??n+1),title:sx(o,i,n),subtitle:lx(o,i),body:i,fields:l,values:o})}return e}function cx(t){return t.capability==="document"?!0:Jd(t).length>0}var dx=m('<div class="flex-1 grid place-items-center text-fg-3 text-[12px] font-mono p-6">No document shape in this result.</div>'),ux=m('<button type="button" class="text-fg-3 hover:text-fg-1 cursor-pointer" aria-label="Clear document filter"><!></button>'),fx=m('· <span class="text-fg-2"> </span>',1),vx=m('<div class="mt-1 truncate text-fg-3"> </div>'),gx=m('<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>'),px=m('<pre class="m-0 whitespace-pre-wrap text-fg-1"> </pre>'),hx=m('<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>'),bx=m('<table class="w-full border-collapse"><tbody></tbody></table>'),mx=m('<pre class="m-0 whitespace-pre-wrap text-fg-1"> </pre>'),xx=m('<div class="text-fg-3">No documents match the current filter.</div>'),_x=m('<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),yx=m('<div class="flex h-full flex-col text-fg-1"><!></div>');function wx(t,e){rt(e,!0);let n=xe("body"),a=xe(""),o=xe(null);const i=y(()=>Jd(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=yx(),p=c(v);{var b=w=>{var k=dx();g(w,k)},h=w=>{var k=_x(),L=ze(k),O=c(L),G=c(O),I=c(G);ca(I,{class:"size-3"}),Se(),s(G);var Y=u(G,2),K=c(Y);ox(K,{class:"size-3"}),Se(),s(Y);var z=u(Y,2),F=c(z);ca(F,{class:"size-3"}),Se(),s(z),s(O);var ne=u(O,2),oe=c(ne);Wr(oe,{class:"size-3 text-fg-3"});var J=u(oe,2);Yt(J);var ue=u(J,2);{var Z=ie=>{var X=ux(),U=c(X);Tr(U,{class:"size-3"}),s(X),_e("click",X,()=>x(a,"")),g(ie,X)};R(ue,ie=>{r(a)&&ie(Z)})}s(ne);var C=u(ne,2),N=c(C,!0),_=u(N);{var T=ie=>{var X=bt();Q(U=>S(X,`of ${U??""}`),[()=>r(i).length.toLocaleString()]),g(ie,X)};R(_,ie=>{r(a)&&ie(T)})}var D=u(_,2);{var te=ie=>{var X=fx(),U=u(ze(X)),W=c(U,!0);s(U),Q(()=>S(W,e.collection)),g(ie,X)};R(D,ie=>{e.collection&&ie(te)})}s(C),s(L);var V=u(L,2),$=c(V);Ge($,21,()=>r(l),ie=>ie.rid,(ie,X)=>{var U=gx(),W=c(U),E=c(W),q=c(E,!0);s(E);var P=u(E,2),M=c(P);s(P),s(W);var j=u(W,2);{var re=de=>{var be=vx(),fe=c(be,!0);s(be),Q(()=>S(fe,r(X).subtitle)),g(de,be)};R(j,de=>{r(X).subtitle&&de(re)})}s(U),Q(de=>{Oe(U,1,de),S(q,r(X).title),S(M,`#${r(X).rid??""}`)},[()=>Re(["w-full text-left px-3 py-2 border-b border-line-1/60 hover:bg-bg-1/50 cursor-pointer",r(d)===r(X)?"bg-bg-1 text-fg-0":"text-fg-2"].join(" "))]),_e("click",U,()=>x(o,r(X),!0)),g(ie,U)}),s($);var ee=u($,2),A=c(ee);{var H=ie=>{var X=xt(),U=ze(X);{var W=P=>{var M=px(),j=c(M,!0);s(M),Q(re=>S(j,re),[()=>f(r(d).body)]),g(P,M)},E=P=>{var M=bx(),j=c(M);Ge(j,21,()=>Object.entries(r(d).fields),([re,de])=>re,(re,de)=>{var be=y(()=>en(r(de),2));let fe=()=>r(be)[0],Le=()=>r(be)[1];var ke=hx(),me=c(ke),ge=c(me,!0);s(me);var De=u(me),ce=c(De),se=c(ce,!0);s(ce),s(De),s(ke),Q(ve=>{S(ge,fe()),S(se,ve)},[()=>f(Le())]),g(re,ke)}),s(j),s(M),g(P,M)},q=P=>{var M=mx(),j=c(M,!0);s(M),Q(re=>S(j,re),[()=>f(r(d).values)]),g(P,M)};R(U,P=>{r(n)==="body"?P(W):r(n)==="fields"?P(E,1):P(q,-1)})}g(ie,X)},B=ie=>{var X=xx();g(ie,X)};R(A,ie=>{r(d)?ie(H):ie(B,-1)})}s(ee),s(V);var le=u(V,2),he=c(le);s(le),Q((ie,X,U,W)=>{Oe(G,1,ie),Ce(G,"aria-pressed",r(n)==="body"),Oe(Y,1,X),Ce(Y,"aria-pressed",r(n)==="fields"),Oe(z,1,U),Ce(z,"aria-pressed",r(n)==="raw"),S(N,W),S(he,`${r(i).length??""} documents${e.collection?" · ":""}${e.collection??""??""}`)},[()=>Re(["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(" ")),()=>Re(["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(" ")),()=>Re(["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",G,()=>x(n,"body")),_e("click",Y,()=>x(n,"fields")),_e("click",z,()=>x(n,"raw")),Sr(J,()=>r(a),ie=>x(a,ie)),g(w,k)};R(p,w=>{r(i).length===0?w(b):w(h,-1)})}s(v),g(t,v),nt()}nr(["click"]);const kx={capability:"document",renders:cx,component:wx};tn.register(W1);tn.register(G1);tn.register(bh);tn.register(Vh);tn.register(Ob);tn.register(pm);tn.register(Tm);tn.register(ax);tn.register(kx);tn.register(Zh);const eu={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"]};eu.node;function Sx(t,e){let n=Xe(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return eu}}))}const tu={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"}]]};tu.node;function Lx(t,e){let n=Xe(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return tu}}))}const ru={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"}]]};ru.node;function Cs(t,e){let n=Xe(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return ru}}))}const nu={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"}]]};nu.node;function Cx(t,e){let n=Xe(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return nu}}))}const au={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"}]]};au.node;function Ex(t,e){let n=Xe(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return au}}))}var Mx=m("<!> resume",1),zx=m("<!> pause",1),Qx=m('<label class="inline-flex items-center gap-1 cursor-pointer"><input type="checkbox" class="accent-accent size-3"/> <span> </span></label>'),Nx=m('<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>'),Tx=m('<div class="p-6 text-[12px] font-mono text-fg-3"><span class="text-primary-text">error:</span> </div>'),Ax=m('<div class="p-6 text-[12px] font-mono text-fg-3">Not connected. Use the topbar Connect button to open a stream.</div>'),Ix=m('<div class="p-6 text-[12px] font-mono text-fg-3"> </div>'),Ox=m('<span class="text-fg-3 ml-auto"> </span>'),Px=m('<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>'),Dx=m('<ul class="divide-y divide-line-1 font-mono text-[12px]"></ul>'),Rx=m('<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 ou(t,e){rt(e,!0);const n=["insert","update","delete"];let a=xe(qt([])),o=xe(!1),i=xe(qt({insert:!0,update:!0,delete:!0})),l=xe(null),d=null,f=null;const v=500;function p(){h(),x(l,null),x(a,[],!0);const H=Ke.client;if(!H){x(l,"No active connection.");return}d=new ov({client:H,sseFactory:null}).subscribe({collection:e.collection}),f=d.events.getReader(),b()}async function b(){if(f)try{for(;;){const{value:H,done:B}=await f.read();if(B)return;r(o)||H&&x(a,[H,...r(a)].slice(0,v),!0)}}catch(H){x(l,H.message,!0)}}function h(){if(f){try{f.cancel()}catch{}f=null}d&&(d.close(),d=null)}Tt(()=>{Ke.connected,e.collection,Ke.connected?p():h()}),$o(h);function w(H){const B=Date.now()-H;return B<1e3?"now":B<6e4?`${Math.floor(B/1e3)}s ago`:B<36e5?`${Math.floor(B/6e4)}m ago`:`${Math.floor(B/36e5)}h ago`}function k(H){return new Date(H).toISOString().replace("T"," ").replace("Z","")}const L=y(()=>r(a).filter(H=>r(i)[H.operation]??!0)),O=y(()=>e.collection?`collection: ${e.collection}`:"global");var G=Rx(),I=c(G),Y=c(I);Ra(Y,{class:"size-3.5"});var K=u(Y,4),z=c(K);s(K);var F=u(K,2),ne=c(F),oe=c(ne);{var J=H=>{var B=Mx(),le=ze(B);ei(le,{class:"size-3"}),Se(),g(H,B)},ue=H=>{var B=zx(),le=ze(B);Ex(le,{class:"size-3"}),Se(),g(H,B)};R(oe,H=>{r(o)?H(J):H(ue,-1)})}s(ne);var Z=u(ne,2),C=c(Z);wd(C,{class:"size-3"});var N=u(C,2);Ge(N,16,()=>n,H=>H,(H,B)=>{var le=Qx(),he=c(le);Yt(he);var ie=u(he,2),X=c(ie,!0);s(ie),s(le),Q(()=>{Ea(he,r(i)[B]),Oe(ie,1,Re(r(i)[B]?"text-fg-1":"text-fg-3")),S(X,B)}),_e("change",he,U=>x(i,{...r(i),[B]:U.currentTarget.checked},!0)),g(H,le)}),s(Z);var _=u(Z,2);{var T=H=>{var B=Nx(),le=c(B);Tr(le,{class:"size-3"}),Se(),s(B),_e("click",B,()=>x(a,[],!0)),g(H,B)};R(_,H=>{r(a).length>0&&H(T)})}s(F),s(I);var D=u(I,2),te=c(D);{var V=H=>{var B=Tx(),le=u(c(B));s(B),Q(()=>S(le,` ${r(l)??""}`)),g(H,B)},$=H=>{var B=Ax();g(H,B)},ee=H=>{var B=Ix(),le=c(B,!0);s(B),Q(()=>S(le,r(o)?"Paused — no events captured.":"Listening for changes…")),g(H,B)},A=H=>{var B=Dx();Ge(B,21,()=>r(L),le=>le.lsn,(le,he)=>{var ie=Px(),X=c(ie),U=c(X,!0);s(X);var W=u(X,2),E=c(W);s(W);var q=u(W,2),P=c(q,!0);s(q);var M=u(q,2),j=c(M,!0);s(M);var re=u(M,4),de=c(re,!0);s(re);var be=u(re,2);{var fe=Le=>{var ke=Ox(),me=c(ke);s(ke),Q(()=>S(me,`rid ${r(he).rid??""}`)),g(Le,ke)};R(be,Le=>{r(he).rid!==void 0&&Le(fe)})}s(ie),Q((Le,ke,me)=>{Ce(X,"title",Le),S(U,ke),S(E,`lsn ${r(he).lsn??""}`),Oe(q,1,me),S(P,r(he).operation),S(j,r(he).collection),S(de,r(he).kind)},[()=>k(r(he).timestamp),()=>w(r(he).timestamp),()=>Re(["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(B),g(H,B)};R(te,H=>{r(l)?H(V):Ke.connected?r(L).length===0?H(ee,2):H(A,-1):H($,1)})}s(D),s(G),Q(()=>{S(z,`· ${r(O)??""}`),Ce(ne,"title",r(o)?"Resume stream":"Pause stream")}),_e("click",ne,()=>x(o,!r(o))),g(t,G),nt()}nr(["click","change"]);var Hx=m('<div class="border-b border-line-1 px-3 py-1.5 font-mono text-[11px] text-warn"> </div>'),Vx=m('<div class="p-4 font-mono text-[12px] text-fg-3">No active RedDB connection.</div>'),Fx=m('<div class="p-4 font-mono text-[12px] text-fg-3">Loading version history…</div>'),qx=m('<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>'),Bx=m('<div class="flex-1 min-h-0"><!></div>'),Kx=m("<option> </option>"),jx=m("<option> </option>"),Zx=m('<span class="ml-auto text-fg-3"> </span>'),Ux=m('<div class="p-4 font-mono text-[12px] text-fg-3">Choose two commits to compare this collection.</div>'),Wx=m('<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),Gx=m('<div class="p-4 font-mono text-[12px] text-fg-3">No commits yet.</div>'),Yx=m('<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>'),$x=m('<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>'),Xx=m('<div class="flex-1 overflow-auto"><!></div>'),Jx=m('<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 e_(t,e){rt(e,!0);let n=xe("commits"),a=xe(null),o=xe(qt([])),i=xe(""),l=xe(""),d=xe(null),f=xe(!1),v=xe(!1),p=xe(null),b="";const h=y(()=>r(i).length>0&&r(l).length>0&&r(i)!==r(l));function w(W){return W.slice(0,10)}function k(W){return W?new Date(W).toISOString().replace("T"," ").replace("Z",""):"-"}function L(W){return{ok:!0,query:`/repo/commits/${W.from}/diff/${W.to}?collection=${e.collection}`,capability:"diff",record_count:W.entries.length,result:{columns:["collection","entity_id","change","before","after"],records:W.entries.map((E,q)=>({values:{id:`${E.collection}:${E.entity_id}:${q}`,collection:E.collection,entity_id:E.entity_id,change:E.change,before:E.before??null,after:E.after??null}}))}}}async function O(){if(e.client){x(f,!0),x(p,null),x(d,null);try{const[W,E]=await Promise.all([e.client.collectionVcs(e.collection),e.client.commits({limit:40})]);x(a,W,!0),x(o,E,!0),E.length>=2?(x(l,E[0].hash,!0),x(i,E[1].hash,!0)):E.length===1?(x(l,E[0].hash,!0),x(i,"")):(x(l,""),x(i,""))}catch(W){x(p,W.message,!0)}finally{x(f,!1)}}}async function G(){if(e.client){x(f,!0),x(p,null);try{x(a,await e.client.setCollectionVcs(e.collection,!0),!0),x(o,await e.client.commits({limit:40}),!0)}catch(W){x(p,W.message,!0)}finally{x(f,!1)}}}async function I(){if(!(!e.client||!r(h))){x(v,!0),x(p,null);try{x(d,await e.client.commitDiff(r(i),r(l),{collection:e.collection}),!0),x(n,"diff")}catch(W){x(p,W.message,!0)}finally{x(v,!1)}}}Tt(()=>{var E;const W=`${((E=e.client)==null?void 0:E.baseUrl)??"none"}:${e.collection}`;W!==b&&(b=W,O())});var Y=Jx(),K=c(Y),z=c(K),F=c(z),ne=c(F);Sx(ne,{class:"size-3"}),Se(),s(F);var oe=u(F,2),J=c(oe);Ji(J,{class:"size-3"}),Se(),s(oe);var ue=u(oe,2),Z=c(ue);Lx(Z,{class:"size-3"}),Se(),s(ue),s(z);var C=u(z,2),N=c(C,!0);s(C);var _=u(C,2),T=c(_,!0);s(_);var D=u(_,2),te=c(D);{var V=W=>{cn(W,{class:"size-3 animate-spin"})},$=W=>{Cs(W,{class:"size-3"})};R(te,W=>{r(f)?W(V):W($,-1)})}Se(),s(D),s(K);var ee=u(K,2);{var A=W=>{var E=Hx(),q=c(E,!0);s(E),Q(()=>S(q,r(p))),g(W,E)};R(ee,W=>{r(p)&&W(A)})}var H=u(ee,2);{var B=W=>{var E=Vx();g(W,E)},le=W=>{var E=Fx();g(W,E)},he=W=>{var E=qx(),q=u(c(E),2),P=c(q);Cx(P,{class:"size-3"}),Se(),s(q),s(E),_e("click",q,()=>void G()),g(W,E)},ie=W=>{var E=Bx(),q=c(E);ou(q,{get collection(){return e.collection}}),s(E),g(W,E)},X=W=>{var E=Wx(),q=ze(E),P=c(q),M=u(c(P),2),j=c(M);j.value=j.__value="";var re=u(j);Ge(re,17,()=>r(o),Ne=>Ne.hash,(Ne,Ee)=>{var Me=Kx(),Qe=c(Me);s(Me);var Ye={};Q(Ve=>{S(Qe,`${Ve??""} · ${r(Ee).message??""}`),Ye!==(Ye=r(Ee).hash)&&(Me.value=(Me.__value=r(Ee).hash)??"")},[()=>w(r(Ee).hash)]),g(Ne,Me)}),s(M),s(P);var de=u(P,2),be=u(c(de),2),fe=c(be);fe.value=fe.__value="";var Le=u(fe);Ge(Le,17,()=>r(o),Ne=>Ne.hash,(Ne,Ee)=>{var Me=jx(),Qe=c(Me);s(Me);var Ye={};Q(Ve=>{S(Qe,`${Ve??""} · ${r(Ee).message??""}`),Ye!==(Ye=r(Ee).hash)&&(Me.value=(Me.__value=r(Ee).hash)??"")},[()=>w(r(Ee).hash)]),g(Ne,Me)}),s(be),s(de);var ke=u(de,2),me=c(ke);{var ge=Ne=>{cn(Ne,{class:"size-3 animate-spin"})},De=Ne=>{Ji(Ne,{class:"size-3"})};R(me,Ne=>{r(v)?Ne(ge):Ne(De,-1)})}Se(),s(ke);var ce=u(ke,2);{var se=Ne=>{var Ee=Zx(),Me=c(Ee);s(Ee),Q(()=>S(Me,`+${r(d).added??""} -${r(d).removed??""} ~${r(d).modified??""}`)),g(Ne,Ee)};R(ce,Ne=>{r(d)&&Ne(se)})}s(q);var ve=u(q,2),Te=c(ve);{var Ae=Ne=>{{let Ee=y(()=>L(r(d)));$d(Ne,{get result(){return r(Ee)},get collection(){return e.collection}})}},we=Ne=>{var Ee=Ux();g(Ne,Ee)};R(Te,Ne=>{r(d)?Ne(Ae):Ne(we,-1)})}s(ve),Q(()=>ke.disabled=!r(h)||r(v)),Bi(M,()=>r(i),Ne=>x(i,Ne)),Bi(be,()=>r(l),Ne=>x(l,Ne)),_e("click",ke,()=>void I()),g(W,E)},U=W=>{var E=Xx(),q=c(E);{var P=j=>{var re=Gx();g(j,re)},M=j=>{var re=$x(),de=u(c(re));Ge(de,21,()=>r(o),be=>be.hash,(be,fe)=>{var Le=Yx(),ke=c(Le),me=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),Te=c(ve,!0);s(ve),s(Le),Q((Ae,we)=>{var Ne;S(me,Ae),S(De,r(fe).message),S(se,((Ne=r(fe).author)==null?void 0:Ne.name)??"-"),S(Te,we)},[()=>w(r(fe).hash),()=>k(r(fe).timestamp_ms)]),g(be,Le)}),s(de),s(re),g(j,re)};R(q,j=>{r(o).length===0?j(P):j(M,-1)})}s(E),g(W,E)};R(H,W=>{e.client?r(f)&&!r(a)?W(le,1):r(a)&&!r(a).versioned?W(he,2):r(n)==="live"?W(ie,3):r(n)==="diff"?W(X,4):W(U,-1):W(B)})}s(Y),Q((W,E,q)=>{var P,M;Oe(F,1,W),Oe(oe,1,E),Oe(ue,1,q),Oe(C,1,Re((P=r(a))!=null&&P.versioned?"text-ok":"text-fg-3")),S(N,(M=r(a))!=null&&M.versioned?"versioned":"not versioned"),S(T,e.collection),D.disabled=r(f)},[()=>Re(["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(" ")),()=>Re(["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(" ")),()=>Re(["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",F,()=>x(n,"commits")),_e("click",oe,()=>x(n,"diff")),_e("click",ue,()=>x(n,"live")),_e("click",D,()=>void O()),g(t,Y),nt()}nr(["click"]);var t_=m('<span class="text-fg-3">·</span> <span class="text-fg-2 font-mono text-[11px] truncate max-w-[280px]"> </span>',1),r_=m('<span class="text-warn font-mono text-[11px]">disconnected</span>'),n_=m("<!> <span>Running…</span>",1),a_=m("<!> <span>Run</span>",1),o_=m('<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>'),i_=m('<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>'),s_=m('<div class="h-full grid place-items-center text-fg-3 text-[12px] font-mono">Run a query to see results here.</div>'),l_=m('<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>'),c_=m("<!> <!>",1),d_=m('<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 u_(t,e){rt(e,!0),Tt(()=>{Zr.ensure(e.tabId)});const n=y(()=>Zr.states[e.tabId]),a=y(()=>Bt.tabs.find(V=>V.id===e.tabId));let o=xe(void 0),i=xe(qt(Date.now()));const l=y(()=>{var V;return(V=r(n))!=null&&V.runningStartedAt?n1(Math.max(0,r(i)-r(n).runningStartedAt)):"0ms"});Tt(()=>{var $;if(!(($=r(n))!=null&&$.running))return;x(i,Date.now(),!0);const V=setInterval(()=>{x(i,Date.now(),!0)},100);return()=>clearInterval(V)});function d(V){Zr.setSql(e.tabId,V);const $=o1(V,e.fallbackLabel),ee=Bt.tabs.find(A=>A.id===e.tabId);ee&&ee.label!==$&&Bt.rename(e.tabId,$)}async function f(){await Zr.run(e.tabId)}function v(){Zr.cancel(e.tabId)}function p(V){(V.metaKey||V.ctrlKey)&&V.key==="Enter"&&(V.preventDefault(),f())}function b(){var V,$;return(V=r(n))!=null&&V.result?tn.pick(r(n).result.capability,r(n).result,($=r(a))==null?void 0:$.overrideCapability):null}var h=d_(),w=c(h),k=c(w),L=c(k),O=u(c(L),2);{var G=V=>{var $=t_(),ee=u(ze($),2),A=c(ee,!0);s(ee),Q(()=>S(A,Ke.active.url)),g(V,$)},I=V=>{var $=r_();g(V,$)};R(O,V=>{Ke.connected?V(G):V(I,-1)})}s(L);var Y=u(L,2),K=c(Y),z=u(c(K));jr(z,{children:(V,$)=>{Se();var ee=bt("⌘");g(V,ee)},$$slots:{default:!0}});var F=u(z);jr(F,{children:(V,$)=>{Se();var ee=bt("↵");g(V,ee)},$$slots:{default:!0}}),s(K);var ne=u(K,2),oe=c(ne);{var J=V=>{var $=n_(),ee=ze($);cn(ee,{class:"size-3.5 animate-spin"}),Se(2),g(V,$)},ue=V=>{var $=a_(),ee=ze($);ei(ee,{class:"size-3.5"}),Se(2),g(V,$)};R(oe,V=>{var $;($=r(n))!=null&&$.running?V(J):V(ue,-1)})}s(ne),s(Y),s(k);var Z=u(k,2);Pa(Z),Ce(Z,"placeholder","SELECT * FROM users LIMIT 100"),Xr(Z,V=>x(o,V),()=>r(o)),s(w);var C=u(w,2),N=c(C);{var _=V=>{var $=o_(),ee=c($),A=c(ee),H=c(A),B=c(H),le=c(B);cn(le,{class:"size-4 animate-spin text-primary-text"}),Se(2),s(B);var he=u(B,2),ie=u(c(he)),X=c(ie,!0);s(ie),s(he),s(H);var U=u(H,2),W=c(U);Tr(W,{class:"size-3.5"}),Se(2),s(U),s(A);var E=u(A,2),q=c(E),P=c(q,!0);s(q),s(E),s(ee),s($),Q(M=>{S(X,r(l)),S(P,M)},[()=>r(n).sql.trim()]),_e("click",U,v),g(V,$)},T=V=>{var $=i_(),ee=u(c($),2),A=c(ee,!0);s(ee),s($),Q(()=>S(A,r(n).error)),g(V,$)},D=V=>{var $=s_();g(V,$)},te=V=>{const $=y(b);var ee=c_(),A=ze(ee);{var H=he=>{var ie=l_(),X=c(ie);Se(2),s(ie),Q(U=>S(X,`Streamed first ${U??""} rows — more remain on the server. Add a `),[()=>r(n).result.record_count.toLocaleString()]),g(he,ie)};R(A,he=>{r(n).result.truncated&&he(H)})}var B=u(A,2);{var le=he=>{const ie=y(()=>r($).component);var X=xt(),U=ze(X);{let W=y(()=>{var E;return((E=r(a))==null?void 0:E.showSystemColumns)??!1});ba(U,()=>r(ie),(E,q)=>{q(E,{get result(){return r(n).result},get showSystem(){return r(W)}})})}g(he,X)};R(B,he=>{r($)&&he(le)})}g(V,ee)};R(N,V=>{var $,ee,A;($=r(n))!=null&&$.running?V(_):(ee=r(n))!=null&&ee.error?V(T,1):(A=r(n))!=null&&A.result?V(te,-1):V(D,2)})}s(C),s(h),Q(()=>{var V,$;ne.disabled=((V=r(n))==null?void 0:V.running)||!Ke.connected,$r(Z,(($=r(n))==null?void 0:$.sql)??"")}),_e("click",ne,f),_e("input",Z,V=>d(V.currentTarget.value)),_e("keydown",Z,p),g(t,h),nt()}nr(["click","input","keydown"]);const iu={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"}]]};iu.node;function su(t,e){let n=Xe(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return iu}}))}const lu={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"}]]};lu.node;function cu(t,e){let n=Xe(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return lu}}))}const du={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"}]]};du.node;function f_(t,e){let n=Xe(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return du}}))}const uu={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"}]]};uu.node;function v_(t,e){let n=Xe(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return uu}}))}const fu={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"}]]};fu.node;function g_(t,e){let n=Xe(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return fu}}))}var p_=m('<div class="px-3 py-2 flex items-center gap-2 text-fg-3"><!> <span class="type-label">Results</span></div>'),h_=m('<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>'),b_=m('<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>'),m_=m('<div class="flex items-stretch overflow-x-auto"></div>'),x_=m('<button type="button"><!> <span>history</span></button>'),__=m('<button type="button"><!> <span>meta</span></button> <!>',1),y_=m("<option> </option>"),w_=m('<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>'),k_=m('<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>'),S_=m('<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>'),L_=m(`<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
9
+ collections and running queries.</p></div>`),C_=m('<div class="h-full grid place-items-center p-6"><!></div>'),E_=m('<div class="h-full grid place-items-center text-fg-3 text-[12px] font-mono">Workspace</div>'),M_=m('<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>'),z_=m('<div class="px-2 py-2"><div class="h-3 rounded bg-bg-2 motion-safe:animate-pulse"></div></div>'),Q_=m('<div class="px-2 py-2"><div class="h-3 rounded bg-bg-2 motion-safe:animate-pulse"></div></div>'),N_=m('<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>'),T_=m('<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>'),A_=m('<div class="flex items-center gap-2 text-[11px] font-mono text-fg-3"><!> <span>Catalog metadata unavailable.</span> <span class="truncate"> </span></div>'),I_=m('<div class="flex items-center gap-2 text-[11px] font-mono text-fg-3"><!> <span>Loading collection catalog…</span></div>'),O_=m('<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>'),P_=m('<span class="font-mono text-[10px] text-fg-3">No type-specific catalog fields.</span>'),D_=m('<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>'),R_=m('<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>'),H_=m('<div class="text-fg-3">Loading metadata…</div>'),V_=m('<span class="rounded border border-accent/30 bg-accent/10 px-1.5 py-0.5 text-primary-text"> </span>'),F_=m('<span class="rounded border border-line-1 px-1.5 py-0.5 text-fg-2"> </span>'),q_=m('<span class="rounded border border-line-1 px-1.5 py-0.5 text-fg-2"> </span>'),B_=m('<span class="rounded border border-line-1 px-1.5 py-0.5 text-fg-2">retention</span>'),K_=m("<span> </span>"),j_=m('<div class="mt-1 flex flex-wrap gap-1"></div>'),Z_=m('<div class="mt-1 text-fg-3">Action grants not exposed.</div>'),U_=m('<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>'),W_=m('<div class="border-b border-line-1 bg-bg-1/30 px-3 py-2 text-[11px] font-mono"><!></div>'),G_=m('<div class="h-[320px] min-h-[240px] border-b border-line-1"><!></div>'),Y_=m('<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>'),$_=m('<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 X_(t,e){rt(e,!0);const n=ma(),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},(P,M)=>M),i=Array.from({length:6},(P,M)=>M);let l=qt({}),d=qt({}),f=qt({}),v=qt({}),p=qt({}),b=qt({}),h=qt({}),w=xe(qt({})),k=xe(null),L=null,O=xe(!1),G=xe(!1);Tt(()=>{const P=Bt.activeId;P!==L&&(x(k,L,!0),L=P)});async function I(P,M){const[fe,Le]=await Promise.all([St.track(`${M} · edges (LIMIT 50000)`,()=>P.query(`SELECT * FROM ${M} WHERE from_rid IS NOT NULL LIMIT 50000`)),St.track(`${M} · centrality (LIMIT 100)`,()=>P.query("GRAPH CENTRALITY LIMIT 100")).catch(()=>null)]),ke=new Map;Le!=null&&Le.ok&&Le.result.records.forEach((we,Ne)=>{const Ee=we.values.node_id??we.values.rid??we.values.id,Me=we.values.score??we.values.centrality_score??we.values.centrality,Qe=typeof Ee=="number"?Ee:typeof Ee=="string"?Number(Ee):NaN,Ye=typeof Me=="number"?Me:typeof Me=="string"?Number(Me):NaN;!Number.isFinite(Qe)||!Number.isFinite(Ye)||ke.set(Qe,{score:Ye,rank:Ne+1,label:typeof we.values.label=="string"?we.values.label:void 0})});const me=new Set;for(const we of fe.result.records){const Ne=we.values.from_rid,Ee=we.values.to_rid;typeof Ne=="number"&&me.add(Ne),typeof Ee=="number"&&me.add(Ee)}for(const we of ke.keys())me.add(we);const ge=[...me],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,Te=0;async function Ae(){for(;Te<ce.length;){const we=ce[Te++],Ne=await St.track(`${M} · nodes ${we.idx}/${De}`,()=>P.query(`SELECT * FROM ${M} WHERE rid IN (${we.ids})`));se.push(...Ne.result.records.map(Ee=>{const Me=Ee.values.rid,Qe=typeof Me=="number"?ke.get(Me):void 0;return Qe?{...Ee,values:{...Ee.values,centrality_score:Qe.score,centrality_rank:Qe.rank,centrality_label:Qe.label}}:Ee})),ve=Ne}}return await Promise.all(Array.from({length:8},Ae)),{...ve,record_count:se.length+fe.result.records.length,result:{...ve.result,records:[...se,...fe.result.records]}}}function Y(P){return`'${P.replace(/'/g,"''")}'`}async function K(P,M){const j=await P.query(s1(M)),re=c1(j.result.records[0]);if(!re)throw new Error(`${M} was not found in red.collections`);return re}async function z(P,M){var j;try{const de=(j=(await P.query(`SELECT model FROM red.collections WHERE name = ${Y(M)} LIMIT 1`)).result.records[0])==null?void 0:j.values.model;return typeof de=="string"?de:null}catch{return null}}async function F(P,M){const j=Ui(M),re=await z(P,M);if(re==="hll")return P.query(`HLL INFO ${j}`);if(re==="sketch")return P.query(`SKETCH INFO ${j}`);if(re==="filter")return P.query(`FILTER INFO ${j}`);if(re==="mixed")for(const de of[`HLL INFO ${j}`,`SKETCH INFO ${j}`,`FILTER INFO ${j}`])try{return await P.query(de)}catch{}try{return await P.query(`SELECT * FROM ${j} LIMIT 200`)}catch{for(const de of[`HLL INFO ${j}`,`SKETCH INFO ${j}`,`FILTER INFO ${j}`])try{return await P.query(de)}catch{}throw new Error(`No stats read form worked for ${M}`)}}async function ne(P,M){const j=Ui(M),re=await P.query(`SELECT * FROM ${j} LIMIT 200`);return{...re,capability:re.capability??"vector"}}Tt(()=>{if(mr.locked)return;const P=Ke.client;if(P)for(const M of Bt.tabs){if(M.kind!=="collection")continue;const j=M.subpage??Ma(M.capability),re=j==="graph"||j==="svg",de=j==="queue"||M.capability==="queue",be=j==="vector"||M.capability==="vector",fe=j==="stats"||M.capability==="stats",Le=j==="kv"||M.capability==="kv",ke=re?"graph-subgraph":de?"queue-peek":be?"vector-inspector":fe?"stats-info":Le?"kv-list":M.capability??"unknown",me=`${M.key}:${j}:${ke}`;if(f[M.id]&&f[M.id]!==me&&(delete l[M.id],delete d[M.id]),l[M.id]!==void 0||d[M.id])continue;l[M.id]=null,f[M.id]=me;const ge=M.key;(re?I(P,ge):de?St.track(`${ge} · QUEUE PEEK (LIMIT 200)`,()=>P.query(`QUEUE PEEK ${ge} 200`)):be?St.track(`${ge} · vector inspector seed`,()=>ne(P,ge)):fe?St.track(`${ge} · stats preview`,()=>F(P,ge)):Le?St.track(`${ge} · LIST KV (LIMIT 200)`,()=>P.query(gl(ge,"kv"))):St.track(`${ge} · SELECT * (LIMIT 200)`,()=>P.query(gl(ge,M.capability)))).then(ce=>{l[M.id]=ce}).catch(ce=>{d[M.id]=ce.message})}}),Tt(()=>{if(mr.locked)return;const P=Ke.client;if(P)for(const M of Bt.tabs)M.kind==="collection"&&(v[M.id]!==void 0||p[M.id]||(v[M.id]=null,St.track(`catalog · ${M.key}`,()=>K(P,M.key)).then(j=>{v[M.id]=j}).catch(j=>{p[M.id]=j.message})))}),Tt(()=>{if(!r(G)||mr.locked)return;const P=Ke.client;if(P)for(const M of Bt.tabs)M.kind==="collection"&&(b[M.id]!==void 0||h[M.id]||(b[M.id]=null,St.track(`metadata · ${M.key}`,()=>P.collection(M.key)).then(j=>{b[M.id]=j}).catch(j=>{h[M.id]=j.message})))});function oe(P,M){P.stopPropagation();const j=Bt.tabs.find(de=>de.id===M);if((j==null?void 0:j.kind)==="query"&&Zr.isDirty(M)&&!(typeof window<"u"?window.confirm("Discard unsaved query in this tab?"):!0))return;const re=(j==null?void 0:j.kind)==="collection"&&j.key===n.collection;if(Bt.close(M,r(k)),Zr.remove(M),delete l[M],delete d[M],delete f[M],delete v[M],delete p[M],delete b[M],delete h[M],delete r(w)[M],re){const de=Bt.tabs.find(be=>be.kind==="collection");n.go(de?{view:"collection",collection:de.key,subpage:de.subpage??Ma(de.capability)}:{view:"collections"},void 0,!0)}}function J(){const P=Zr.nextLabel(),M=Bt.open({kind:"query",label:P,key:P},!0);Zr.ensure(M.id),x(O,!1)}vn(()=>{const P=()=>J();return window.addEventListener("red:new-query",P),()=>window.removeEventListener("red:new-query",P)});function ue(P,M){const j=N0(P.subpage,P.capability??M.capability);return tn.pick(j,M,P.overrideCapability)}function Z(){Bt.open({kind:"live-changes",label:"live · global",key:"global"}),x(O,!1)}function C(P,M){const j=M.currentTarget.value;Bt.setOverride(P.id,j===""?void 0:j)}function N(P,M){return P.subpage?P.subpage:P.capability?P.capability:M!=null&&M.capability?M.capability:"auto"}function _(P){return typeof P=="boolean"?{allowed:P}:{allowed:P.allowed,reason:P.reason}}function T(P){return P&&typeof P=="object"&&!Array.isArray(P)?Object.keys(P):[]}var D=$_(),te=c(D),V=c(te);{var $=P=>{var M=p_(),j=c(M);Ra(j,{class:"size-3.5"}),Se(2),s(M),g(P,M)},ee=P=>{var M=m_();Ge(M,21,()=>Bt.tabs,j=>j.id,(j,re)=>{const de=y(()=>r(re).id===Bt.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=xt(),Le=ze(fe);{var ke=ge=>{const De=y(()=>({view:"collection",collection:r(re).key,subpage:r(re).subpage??Ma(r(re).capability)}));var ce=h_(),se=c(ce),ve=c(se,!0);s(se);var Te=u(se,2),Ae=c(Te);Tr(Ae,{class:"size-3"}),s(Te),s(ce),Q(we=>{Ce(ce,"href",we),Oe(ce,1,Re(r(be))),Ce(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",Te,we=>oe(we,r(re).id)),_e("keydown",Te,we=>{we.key==="Enter"&&oe(we,r(re).id)}),g(ge,ce)},me=ge=>{var De=b_(),ce=c(De),se=c(ce,!0);s(ce);var ve=u(ce,2),Te=c(ve);Tr(Te,{class:"size-3"}),s(ve),s(De),Q(()=>{Oe(De,1,Re(r(be))),Ce(De,"title",r(re).label),S(se,r(re).label)}),_e("click",De,()=>Bt.focus(r(re).id)),_e("click",ve,Ae=>oe(Ae,r(re).id)),_e("keydown",ve,Ae=>{Ae.key==="Enter"&&oe(Ae,r(re).id)}),g(ge,De)};R(Le,ge=>{r(re).kind==="collection"?ge(ke):ge(me,-1)})}g(j,fe)}),s(M),g(P,M)};R(V,P=>{Bt.tabs.length===0?P($):P(ee,-1)})}var A=u(V,2);{var H=P=>{const M=y(()=>Bt.active),j=y(()=>l[r(M).id]);var re=w_(),de=c(re);{var be=ve=>{var Te=__(),Ae=ze(Te),we=c(Ae);pi(we,{class:"size-3"}),Se(2),s(Ae);var Ne=u(Ae,2);{var Ee=Me=>{var Qe=x_(),Ye=c(Qe);g_(Ye,{class:"size-3"}),Se(2),s(Qe),Q(Ve=>{Ce(Qe,"title",r(w)[r(M).id]?"Hide version history":"Show version history and diffs"),Ce(Qe,"aria-pressed",r(w)[r(M).id]??!1),Oe(Qe,1,Ve)},[()=>Re(["inline-flex items-center gap-1 h-6 px-1.5 rounded border transition-colors cursor-pointer",r(w)[r(M).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",Qe,()=>x(w,{...r(w),[r(M).id]:!(r(w)[r(M).id]??!1)},!0)),g(Me,Qe)};R(Ne,Me=>{Ke.capabilities.vcs&&Me(Ee)})}Q(Me=>{Ce(Ae,"title",r(G)?"Hide collection metadata":"Show collection metadata"),Ce(Ae,"aria-pressed",r(G)),Oe(Ae,1,Me)},[()=>Re(["inline-flex items-center gap-1 h-6 px-1.5 rounded border transition-colors cursor-pointer",r(G)?"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",Ae,()=>x(G,!r(G))),g(ve,Te)};R(de,ve=>{r(M).kind==="collection"&&ve(be)})}var fe=u(de,2),Le=c(fe);{var ke=ve=>{cu(ve,{class:"size-3"})},me=ve=>{su(ve,{class:"size-3"})};R(Le,ve=>{r(M).showSystemColumns?ve(ke):ve(me,-1)})}Se(2),s(fe);var ge=u(fe,2),De=c(ge,!0);s(ge);var ce=u(ge,4);Ge(ce,21,()=>a,ve=>ve.value,(ve,Te)=>{var Ae=y_(),we=c(Ae,!0);s(Ae);var Ne={};Q(()=>{S(we,r(Te).label),Ne!==(Ne=r(Te).value)&&(Ae.value=(Ae.__value=r(Te).value)??"")}),g(ve,Ae)}),s(ce);var se;ea(ce),s(re),Q((ve,Te)=>{Ce(fe,"title",r(M).showSystemColumns?"Hide reddb system columns (rid, collection, kind, tenant, created_at, updated_at)":"Show reddb system columns"),Ce(fe,"aria-pressed",r(M).showSystemColumns??!1),Oe(fe,1,ve),S(De,Te),se!==(se=r(M).overrideCapability??"")&&(ce.value=(ce.__value=r(M).overrideCapability??"")??"",ta(ce,r(M).overrideCapability??""))},[()=>Re(["inline-flex items-center gap-1 h-6 px-1.5 rounded border transition-colors cursor-pointer",r(M).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(" ")),()=>N(r(M),r(j))]),_e("click",fe,()=>Bt.setShowSystem(r(M).id,!r(M).showSystemColumns)),_e("change",ce,ve=>C(r(M),ve)),g(P,re)};R(A,P=>{Bt.active&&(Bt.active.kind==="collection"||Bt.active.kind==="query")&&P(H)})}var B=u(A,2),le=c(B),he=c(le);Qa(he,{class:"size-3.5"}),s(le);var ie=u(le,2);{var X=P=>{var M=k_(),j=c(M),re=c(j);nd(re,{class:"size-3.5 text-fg-3"}),Se(4),s(j);var de=u(j,2);s(M),_e("click",j,J),_e("click",de,Z),g(P,M)};R(ie,P=>{r(O)&&P(X)})}s(B),s(te);var U=u(te,2),W=c(U);{var E=P=>{var M=C_(),j=c(M);{var re=be=>{var fe=S_(),Le=u(c(fe)),ke=c(Le,!0);s(Le),Se(3),s(fe),Q(()=>S(ke,Ke.active.url)),g(be,fe)},de=be=>{var fe=L_(),Le=c(fe);Oo(Le,{class:"size-8 text-fg-3 mx-auto mb-3",strokeWidth:1.4}),Se(4),s(fe),g(be,fe)};R(j,be=>{Ke.connected?be(re):be(de,-1)})}s(M),g(P,M)},q=P=>{const M=y(()=>Bt.active);var j=xt(),re=ze(j);{var de=ke=>{ou(ke,{collection:void 0})},be=ke=>{u_(ke,{get tabId(){return r(M).id},get fallbackLabel(){return r(M).key}})},fe=ke=>{var me=E_();g(ke,me)},Le=ke=>{const me=y(()=>l[r(M).id]),ge=y(()=>d[r(M).id]);var De=xt(),ce=ze(De);{var se=Ae=>{var we=M_(),Ne=u(c(we),2),Ee=c(Ne,!0);s(Ne),s(we),Q(()=>S(Ee,r(ge))),g(Ae,we)},ve=Ae=>{var we=T_(),Ne=u(c(we),4),Ee=c(Ne),Me=c(Ee),Qe=u(c(Me),2);Ge(Qe,16,()=>i,Ve=>Ve,(Ve,Je)=>{var lt=z_(),ct=c(lt);s(lt),Q(()=>_r(ct,`width: ${Je%3===0?72:Je%3===1?104:56}px`)),g(Ve,lt)}),s(Me);var Ye=u(Me,2);Ge(Ye,16,()=>o,Ve=>Ve,(Ve,Je)=>{var lt=N_(),ct=u(c(lt),2);Ge(ct,16,()=>i,qe=>qe,(qe,He)=>{var je=Q_(),ot=c(je);s(je),Q(()=>_r(ot,`width: ${He===0?48:64+(Je+He)%4*18}px`)),g(qe,je)}),s(lt),g(Ve,lt)}),s(Ee),s(Ne),Se(2),s(we),Q(()=>Ce(we,"aria-label",`Loading ${r(M).label} results`)),g(Ae,we)},Te=Ae=>{const we=y(()=>ue(r(M),r(me))),Ne=y(()=>r(we).component),Ee=y(()=>v[r(M).id]),Me=y(()=>p[r(M).id]);var Qe=Y_(),Ye=c(Qe),Ve=c(Ye);{var Je=$e=>{var Ze=A_(),ut=c(Ze);pi(ut,{class:"size-3.5 text-warn"});var Ct=u(ut,4),Qt=c(Ct,!0);s(Ct),s(Ze),Q(()=>S(Qt,r(Me))),g($e,Ze)},lt=$e=>{var Ze=I_(),ut=c(Ze);Oo(ut,{class:"size-3.5"}),Se(2),s(Ze),g($e,Ze)},ct=$e=>{var Ze=D_(),ut=c(Ze),Ct=c(ut),Qt=c(Ct),Et=c(Qt,!0);s(Qt);var Lt=u(Qt,2),mt=c(Lt,!0);s(Lt),s(Ct);var _t=u(Ct,2),wt=c(_t);Ge(wt,17,()=>hl(r(Ee)),gr,(Ue,yt)=>{var ft=O_(),pt=c(ft,!0);s(ft),Q(()=>S(pt,r(yt))),g(Ue,ft)});var Ot=u(wt,2);{var $t=Ue=>{var yt=P_();g(Ue,yt)},pr=y(()=>hl(r(Ee)).length===0);R(Ot,Ue=>{r(pr)&&Ue($t)})}s(_t),s(ut);var hr=u(ut,2),it=c(hr),dt=c(it);$i(dt,{class:"size-3.5 text-fg-3"});var At=u(dt,2),Kt=c(At,!0);s(At),Se(2),s(it);var or=u(it,2),ir=c(or);f_(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),xr=c(lr);Ra(xr,{class:"size-3.5 text-fg-3"});var Er=u(xr,2),Qr=c(Er,!0);s(Er),Se(2),s(lr);var kr=u(lr,2),Nr=c(kr);T0(Nr,{class:"size-3.5 text-fg-3"});var ye=u(Nr,2),Ie=c(ye,!0);s(ye),Se(2),s(kr);var Fe=u(kr,2),We=c(Fe);v_(We,{class:"size-3.5 text-fg-3"});var et=u(We,2),at=c(et,!0);s(et),Se(2),s(Fe),s(hr),s(Ze),Q((Ue,yt,ft,pt,It)=>{S(Et,r(Ee).model??"collection"),S(mt,r(Ee).name),S(Kt,Ue),S(wr,yt),S(Qr,ft),S(Ie,pt),S(at,It)},[()=>Mo(r(Ee).entities),()=>pl(r(Ee).onDiskBytes),()=>pl(r(Ee).inMemoryBytes),()=>Mo(r(Ee).segments),()=>Mo(r(Ee).indices)]),g($e,Ze)};R(Ve,$e=>{r(Me)?$e(Je):r(Ee)?$e(ct,-1):$e(lt,1)})}s(Ye);var qe=u(Ye,2);{var He=$e=>{const Ze=y(()=>b[r(M).id]),ut=y(()=>h[r(M).id]);var Ct=W_(),Qt=c(Ct);{var Et=_t=>{var wt=R_(),Ot=c(wt);pi(Ot,{class:"mt-0.5 size-3.5 text-warn"});var $t=u(Ot,2),pr=u(c($t),2),hr=c(pr,!0);s(pr),s($t),s(wt),Q(()=>S(hr,r(ut))),g(_t,wt)},Lt=_t=>{var wt=H_();g(_t,wt)},mt=_t=>{var wt=U_(),Ot=c(wt),$t=u(c(Ot),2),pr=c($t,!0);s($t);var hr=u($t,4),it=c(hr,!0);s(hr);var dt=u(hr,4),At=c(dt,!0);s(dt);var Kt=u(dt,4),or=c(Kt,!0);s(Kt),s(Ot);var ir=u(Ot,2),sr=c(ir),wr=c(sr);{var lr=Ue=>{var yt=V_(),ft=c(yt,!0);s(yt),Q(()=>S(ft,r(Ze).capability)),g(Ue,yt)};R(wr,Ue=>{r(Ze).capability&&Ue(lr)})}var xr=u(wr,2);Ge(xr,17,()=>r(Ze).capabilities??[],gr,(Ue,yt)=>{var ft=F_(),pt=c(ft,!0);s(ft),Q(()=>S(pt,r(yt))),g(Ue,ft)});var Er=u(xr,2);{var Qr=Ue=>{var yt=q_(),ft=c(yt);s(yt),Q(pt=>S(ft,`schema ${pt??""}`),[()=>T(r(Ze).schema).length]),g(Ue,yt)},kr=y(()=>T(r(Ze).schema).length>0);R(Er,Ue=>{r(kr)&&Ue(Qr)})}var Nr=u(Er,2);{var ye=Ue=>{var yt=B_();g(Ue,yt)},Ie=y(()=>T(r(Ze).retention).length>0);R(Nr,Ue=>{r(Ie)&&Ue(ye)})}s(sr);var Fe=u(sr,2);{var We=Ue=>{var yt=j_();Ge(yt,21,()=>Object.entries(r(Ze).actions),gr,(ft,pt)=>{var It=y(()=>en(r(pt),2));let Pt=()=>r(It)[0],er=()=>r(It)[1];const ur=y(()=>_(er()));var Ht=K_(),Dt=c(Ht);s(Ht),Q(Ut=>{Oe(Ht,1,Ut),Ce(Ht,"title",r(ur).reason),S(Dt,`${Pt()??""}: ${r(ur).allowed?"allow":"deny"}`)},[()=>Re(["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,Ht)}),s(yt),g(Ue,yt)},et=y(()=>r(Ze).actions&&T(r(Ze).actions).length>0),at=Ue=>{var yt=Z_();g(Ue,yt)};R(Fe,Ue=>{r(et)?Ue(We):Ue(at,-1)})}s(ir),s(wt),Q(()=>{var Ue;S(pr,r(Ze).name??r(M).key),S(it,r(Ze).kind??r(Ze).capability??r(M).capability??"unknown"),S(At,r(Ze).tenant??"not exposed"),S(or,((Ue=r(Ze).indexes)==null?void 0:Ue.length)??0)}),g(_t,wt)};R(Qt,_t=>{r(ut)?_t(Et):r(Ze)?_t(mt,-1):_t(Lt,1)})}s(Ct),g($e,Ct)};R(qe,$e=>{r(G)&&$e(He)})}var je=u(qe,2);{var ot=$e=>{var Ze=G_(),ut=c(Ze);{let Ct=y(()=>Ke.client??void 0);e_(ut,{get client(){return r(Ct)},get collection(){return r(M).key}})}s(Ze),g($e,Ze)};R(je,$e=>{r(w)[r(M).id]&&$e(ot)})}var ae=u(je,2),tt=c(ae);{let $e=y(()=>r(M).kind==="collection"?r(M).key:void 0),Ze=y(()=>Ke.client??void 0),ut=y(()=>r(M).kind==="collection"?r(M).subpage:void 0),Ct=y(()=>r(M).showSystemColumns??!1);ba(tt,()=>r(Ne),(Qt,Et)=>{Et(Qt,{get result(){return r(me)},get collection(){return r($e)},get client(){return r(Ze)},get subpage(){return r(ut)},get showSystem(){return r(Ct)}})})}s(ae),s(Qe),g(Ae,Qe)};R(ce,Ae=>{r(ge)?Ae(se):r(me)?Ae(Te,-1):Ae(ve,1)})}g(ke,De)};R(re,ke=>{r(M).kind==="live-changes"?ke(de):r(M).kind==="query"?ke(be,1):r(M).kind==="welcome"?ke(fe,2):ke(Le,-1)})}g(P,j)};R(W,P=>{Bt.active?P(q,-1):P(E)})}s(U),s(D),Q(()=>Oe(B,1,`relative ${Bt.active&&(Bt.active.kind==="collection"||Bt.active.kind==="query")?"":"ml-auto"} flex items-stretch`)),_e("click",le,()=>x(O,!r(O))),g(t,D),nt()}nr(["click","keydown","change"]);var J_=m('<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 ey(t){var e=J_(),n=c(e),a=c(n);$p(a,{}),s(n);var o=u(n,2),i=c(o);X_(i,{}),s(o),s(e),g(t,e)}var ty={value:()=>{}};function ti(){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 Qo(n)}function Qo(t){this._=t}function ry(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}})}Qo.prototype=ti.prototype={constructor:Qo,on:function(t,e){var n=this._,a=ry(t+"",n),o,i=-1,l=a.length;if(arguments.length<2){for(;++i<l;)if((o=(t=a[i]).type)&&(o=ny(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]=Ml(n[o],t.name,e);else if(e==null)for(o in n)n[o]=Ml(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 Qo(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 ny(t,e){for(var n=0,a=t.length,o;n<a;++n)if((o=t[n]).name===e)return o.value}function Ml(t,e,n){for(var a=0,o=t.length;a<o;++a)if(t[a].name===e){t[a]=ty,t=t.slice(0,a).concat(t.slice(a+1));break}return n!=null&&t.push({name:e,value:n}),t}var ts="http://www.w3.org/1999/xhtml";const zl={svg:"http://www.w3.org/2000/svg",xhtml:ts,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function ri(t){var e=t+="",n=e.indexOf(":");return n>=0&&(e=t.slice(0,n))!=="xmlns"&&(t=t.slice(n+1)),zl.hasOwnProperty(e)?{space:zl[e],local:t}:t}function ay(t){return function(){var e=this.ownerDocument,n=this.namespaceURI;return n===ts&&e.documentElement.namespaceURI===ts?e.createElement(t):e.createElementNS(n,t)}}function oy(t){return function(){return this.ownerDocument.createElementNS(t.space,t.local)}}function vu(t){var e=ri(t);return(e.local?oy:ay)(e)}function iy(){}function Es(t){return t==null?iy:function(){return this.querySelector(t)}}function sy(t){typeof t!="function"&&(t=Es(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 Gr(a,this._parents)}function ly(t){return t==null?[]:Array.isArray(t)?t:Array.from(t)}function cy(){return[]}function gu(t){return t==null?cy:function(){return this.querySelectorAll(t)}}function dy(t){return function(){return ly(t.apply(this,arguments))}}function uy(t){typeof t=="function"?t=dy(t):t=gu(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 Gr(a,o)}function pu(t){return function(){return this.matches(t)}}function hu(t){return function(e){return e.matches(t)}}var fy=Array.prototype.find;function vy(t){return function(){return fy.call(this.children,t)}}function gy(){return this.firstElementChild}function py(t){return this.select(t==null?gy:vy(typeof t=="function"?t:hu(t)))}var hy=Array.prototype.filter;function by(){return Array.from(this.children)}function my(t){return function(){return hy.call(this.children,t)}}function xy(t){return this.selectAll(t==null?by:my(typeof t=="function"?t:hu(t)))}function _y(t){typeof t!="function"&&(t=pu(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 Gr(a,this._parents)}function bu(t){return new Array(t.length)}function yy(){return new Gr(this._enter||this._groups.map(bu),this._parents)}function Po(t,e){this.ownerDocument=t.ownerDocument,this.namespaceURI=t.namespaceURI,this._next=null,this._parent=t,this.__data__=e}Po.prototype={constructor:Po,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 wy(t){return function(){return t}}function ky(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 Po(t,i[l]);for(;l<f;++l)(d=e[l])&&(o[l]=d)}function Sy(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 Po(t,i[d]);for(d=0;d<p;++d)(f=e[d])&&v.get(h[d])===f&&(o[d]=f)}function Ly(t){return t.__data__}function Cy(t,e){if(!arguments.length)return Array.from(this,Ly);var n=e?Sy:ky,a=this._parents,o=this._groups;typeof t!="function"&&(t=wy(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=Ey(t.call(p,p&&p.__data__,v,a)),k=w.length,L=d[v]=new Array(k),O=l[v]=new Array(k),G=f[v]=new Array(h);n(p,b,L,O,G,w,e);for(var I=0,Y=0,K,z;I<k;++I)if(K=L[I]){for(I>=Y&&(Y=I+1);!(z=O[Y])&&++Y<k;);K._next=z||null}}return l=new Gr(l,a),l._enter=d,l._exit=f,l}function Ey(t){return typeof t=="object"&&"length"in t?t:Array.from(t)}function My(){return new Gr(this._exit||this._groups.map(bu),this._parents)}function zy(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 Qy(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 Gr(d,this._parents)}function Ny(){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 Ty(t){t||(t=Ay);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 Gr(o,this._parents).order()}function Ay(t,e){return t<e?-1:t>e?1:t>=e?0:NaN}function Iy(){var t=arguments[0];return arguments[0]=this,t.apply(null,arguments),this}function Oy(){return Array.from(this)}function Py(){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 Dy(){let t=0;for(const e of this)++t;return t}function Ry(){return!this.node()}function Hy(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 Vy(t){return function(){this.removeAttribute(t)}}function Fy(t){return function(){this.removeAttributeNS(t.space,t.local)}}function qy(t,e){return function(){this.setAttribute(t,e)}}function By(t,e){return function(){this.setAttributeNS(t.space,t.local,e)}}function Ky(t,e){return function(){var n=e.apply(this,arguments);n==null?this.removeAttribute(t):this.setAttribute(t,n)}}function jy(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 Zy(t,e){var n=ri(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?Fy:Vy:typeof e=="function"?n.local?jy:Ky:n.local?By:qy)(n,e))}function mu(t){return t.ownerDocument&&t.ownerDocument.defaultView||t.document&&t||t.defaultView}function Uy(t){return function(){this.style.removeProperty(t)}}function Wy(t,e,n){return function(){this.style.setProperty(t,e,n)}}function Gy(t,e,n){return function(){var a=e.apply(this,arguments);a==null?this.style.removeProperty(t):this.style.setProperty(t,a,n)}}function Yy(t,e,n){return arguments.length>1?this.each((e==null?Uy:typeof e=="function"?Gy:Wy)(t,e,n??"")):da(this.node(),t)}function da(t,e){return t.style.getPropertyValue(e)||mu(t).getComputedStyle(t,null).getPropertyValue(e)}function $y(t){return function(){delete this[t]}}function Xy(t,e){return function(){this[t]=e}}function Jy(t,e){return function(){var n=e.apply(this,arguments);n==null?delete this[t]:this[t]=n}}function e3(t,e){return arguments.length>1?this.each((e==null?$y:typeof e=="function"?Jy:Xy)(t,e)):this.node()[t]}function xu(t){return t.trim().split(/^|\s+/)}function Ms(t){return t.classList||new _u(t)}function _u(t){this._node=t,this._names=xu(t.getAttribute("class")||"")}_u.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 yu(t,e){for(var n=Ms(t),a=-1,o=e.length;++a<o;)n.add(e[a])}function wu(t,e){for(var n=Ms(t),a=-1,o=e.length;++a<o;)n.remove(e[a])}function t3(t){return function(){yu(this,t)}}function r3(t){return function(){wu(this,t)}}function n3(t,e){return function(){(e.apply(this,arguments)?yu:wu)(this,t)}}function a3(t,e){var n=xu(t+"");if(arguments.length<2){for(var a=Ms(this.node()),o=-1,i=n.length;++o<i;)if(!a.contains(n[o]))return!1;return!0}return this.each((typeof e=="function"?n3:e?t3:r3)(n,e))}function o3(){this.textContent=""}function i3(t){return function(){this.textContent=t}}function s3(t){return function(){var e=t.apply(this,arguments);this.textContent=e??""}}function l3(t){return arguments.length?this.each(t==null?o3:(typeof t=="function"?s3:i3)(t)):this.node().textContent}function c3(){this.innerHTML=""}function d3(t){return function(){this.innerHTML=t}}function u3(t){return function(){var e=t.apply(this,arguments);this.innerHTML=e??""}}function f3(t){return arguments.length?this.each(t==null?c3:(typeof t=="function"?u3:d3)(t)):this.node().innerHTML}function v3(){this.nextSibling&&this.parentNode.appendChild(this)}function g3(){return this.each(v3)}function p3(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function h3(){return this.each(p3)}function b3(t){var e=typeof t=="function"?t:vu(t);return this.select(function(){return this.appendChild(e.apply(this,arguments))})}function m3(){return null}function x3(t,e){var n=typeof t=="function"?t:vu(t),a=e==null?m3:typeof e=="function"?e:Es(e);return this.select(function(){return this.insertBefore(n.apply(this,arguments),a.apply(this,arguments)||null)})}function _3(){var t=this.parentNode;t&&t.removeChild(this)}function y3(){return this.each(_3)}function w3(){var t=this.cloneNode(!1),e=this.parentNode;return e?e.insertBefore(t,this.nextSibling):t}function k3(){var t=this.cloneNode(!0),e=this.parentNode;return e?e.insertBefore(t,this.nextSibling):t}function S3(t){return this.select(t?k3:w3)}function L3(t){return arguments.length?this.property("__data__",t):this.node().__data__}function C3(t){return function(e){t.call(this,e,this.__data__)}}function E3(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 M3(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 z3(t,e,n){return function(){var a=this.__on,o,i=C3(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 Q3(t,e,n){var a=E3(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?z3:M3,o=0;o<i;++o)this.each(d(a[o],e,n));return this}function ku(t,e,n){var a=mu(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 N3(t,e){return function(){return ku(this,t,e)}}function T3(t,e){return function(){return ku(this,t,e.apply(this,arguments))}}function A3(t,e){return this.each((typeof e=="function"?T3:N3)(t,e))}function*I3(){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 Su=[null];function Gr(t,e){this._groups=t,this._parents=e}function ao(){return new Gr([[document.documentElement]],Su)}function O3(){return this}Gr.prototype=ao.prototype={constructor:Gr,select:sy,selectAll:uy,selectChild:py,selectChildren:xy,filter:_y,data:Cy,enter:yy,exit:My,join:zy,merge:Qy,selection:O3,order:Ny,sort:Ty,call:Iy,nodes:Oy,node:Py,size:Dy,empty:Ry,each:Hy,attr:Zy,style:Yy,property:e3,classed:a3,text:l3,html:f3,raise:g3,lower:h3,append:b3,insert:x3,remove:y3,clone:S3,datum:L3,on:Q3,dispatch:A3,[Symbol.iterator]:I3};function an(t){return typeof t=="string"?new Gr([[document.querySelector(t)]],[document.documentElement]):new Gr([[t]],Su)}function P3(t){let e;for(;e=t.sourceEvent;)t=e;return t}function un(t,e){if(t=P3(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 D3={passive:!1},Ha={capture:!0,passive:!1};function Si(t){t.stopImmediatePropagation()}function aa(t){t.preventDefault(),t.stopImmediatePropagation()}function Lu(t){var e=t.document.documentElement,n=an(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 Cu(t,e){var n=t.document.documentElement,a=an(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 rs(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}})}rs.prototype.on=function(){var t=this._.on.apply(this._,arguments);return t===this._?this:t};function R3(t){return!t.ctrlKey&&!t.button}function H3(){return this.parentNode}function V3(t,e){return e??{x:t.x,y:t.y}}function F3(){return navigator.maxTouchPoints||"ontouchstart"in this}function q3(){var t=R3,e=H3,n=V3,a=F3,o={},i=ti("start","drag","end"),l=0,d,f,v,p,b=0;function h(K){K.on("mousedown.drag",w).filter(a).on("touchstart.drag",O).on("touchmove.drag",G,D3).on("touchend.drag touchcancel.drag",I).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function w(K,z){if(!(p||!t.call(this,K,z))){var F=Y(this,e.call(this,K,z),K,z,"mouse");F&&(an(K.view).on("mousemove.drag",k,Ha).on("mouseup.drag",L,Ha),Lu(K.view),Si(K),v=!1,d=K.clientX,f=K.clientY,F("start",K))}}function k(K){if(aa(K),!v){var z=K.clientX-d,F=K.clientY-f;v=z*z+F*F>b}o.mouse("drag",K)}function L(K){an(K.view).on("mousemove.drag mouseup.drag",null),Cu(K.view,v),aa(K),o.mouse("end",K)}function O(K,z){if(t.call(this,K,z)){var F=K.changedTouches,ne=e.call(this,K,z),oe=F.length,J,ue;for(J=0;J<oe;++J)(ue=Y(this,ne,K,z,F[J].identifier,F[J]))&&(Si(K),ue("start",K,F[J]))}}function G(K){var z=K.changedTouches,F=z.length,ne,oe;for(ne=0;ne<F;++ne)(oe=o[z[ne].identifier])&&(aa(K),oe("drag",K,z[ne]))}function I(K){var z=K.changedTouches,F=z.length,ne,oe;for(p&&clearTimeout(p),p=setTimeout(function(){p=null},500),ne=0;ne<F;++ne)(oe=o[z[ne].identifier])&&(Si(K),oe("end",K,z[ne]))}function Y(K,z,F,ne,oe,J){var ue=i.copy(),Z=un(J||F,z),C,N,_;if((_=n.call(K,new rs("beforestart",{sourceEvent:F,target:h,identifier:oe,active:l,x:Z[0],y:Z[1],dx:0,dy:0,dispatch:ue}),ne))!=null)return C=_.x-Z[0]||0,N=_.y-Z[1]||0,function T(D,te,V){var $=Z,ee;switch(D){case"start":o[oe]=T,ee=l++;break;case"end":delete o[oe],--l;case"drag":Z=un(V||te,z),ee=l;break}ue.call(D,K,new rs(D,{sourceEvent:te,subject:_,target:h,identifier:oe,active:ee,x:Z[0]+C,y:Z[1]+N,dx:Z[0]-$[0],dy:Z[1]-$[1],dispatch:ue}),ne)}}return h.filter=function(K){return arguments.length?(t=typeof K=="function"?K:vo(!!K),h):t},h.container=function(K){return arguments.length?(e=typeof K=="function"?K:vo(K),h):e},h.subject=function(K){return arguments.length?(n=typeof K=="function"?K:vo(K),h):n},h.touchable=function(K){return arguments.length?(a=typeof K=="function"?K:vo(!!K),h):a},h.on=function(){var K=i.on.apply(i,arguments);return K===i?h:K},h.clickDistance=function(K){return arguments.length?(b=(K=+K)*K,h):Math.sqrt(b)},h}function zs(t,e,n){t.prototype=e.prototype=n,n.constructor=t}function Eu(t,e){var n=Object.create(t.prototype);for(var a in e)n[a]=e[a];return n}function oo(){}var Va=.7,Do=1/Va,oa="\\s*([+-]?\\d+)\\s*",Fa="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",gn="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",B3=/^#([0-9a-f]{3,8})$/,K3=new RegExp(`^rgb\\(${oa},${oa},${oa}\\)$`),j3=new RegExp(`^rgb\\(${gn},${gn},${gn}\\)$`),Z3=new RegExp(`^rgba\\(${oa},${oa},${oa},${Fa}\\)$`),U3=new RegExp(`^rgba\\(${gn},${gn},${gn},${Fa}\\)$`),W3=new RegExp(`^hsl\\(${Fa},${gn},${gn}\\)$`),G3=new RegExp(`^hsla\\(${Fa},${gn},${gn},${Fa}\\)$`),Ql={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};zs(oo,Fn,{copy(t){return Object.assign(new this.constructor,this,t)},displayable(){return this.rgb().displayable()},hex:Nl,formatHex:Nl,formatHex8:Y3,formatHsl:$3,formatRgb:Tl,toString:Tl});function Nl(){return this.rgb().formatHex()}function Y3(){return this.rgb().formatHex8()}function $3(){return Mu(this).formatHsl()}function Tl(){return this.rgb().formatRgb()}function Fn(t){var e,n;return t=(t+"").trim().toLowerCase(),(e=B3.exec(t))?(n=e[1].length,e=parseInt(e[1],16),n===6?Al(e):n===3?new Fr(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=K3.exec(t))?new Fr(e[1],e[2],e[3],1):(e=j3.exec(t))?new Fr(e[1]*255/100,e[2]*255/100,e[3]*255/100,1):(e=Z3.exec(t))?go(e[1],e[2],e[3],e[4]):(e=U3.exec(t))?go(e[1]*255/100,e[2]*255/100,e[3]*255/100,e[4]):(e=W3.exec(t))?Pl(e[1],e[2]/100,e[3]/100,1):(e=G3.exec(t))?Pl(e[1],e[2]/100,e[3]/100,e[4]):Ql.hasOwnProperty(t)?Al(Ql[t]):t==="transparent"?new Fr(NaN,NaN,NaN,0):null}function Al(t){return new Fr(t>>16&255,t>>8&255,t&255,1)}function go(t,e,n,a){return a<=0&&(t=e=n=NaN),new Fr(t,e,n,a)}function X3(t){return t instanceof oo||(t=Fn(t)),t?(t=t.rgb(),new Fr(t.r,t.g,t.b,t.opacity)):new Fr}function ns(t,e,n,a){return arguments.length===1?X3(t):new Fr(t,e,n,a??1)}function Fr(t,e,n,a){this.r=+t,this.g=+e,this.b=+n,this.opacity=+a}zs(Fr,ns,Eu(oo,{brighter(t){return t=t==null?Do:Math.pow(Do,t),new Fr(this.r*t,this.g*t,this.b*t,this.opacity)},darker(t){return t=t==null?Va:Math.pow(Va,t),new Fr(this.r*t,this.g*t,this.b*t,this.opacity)},rgb(){return this},clamp(){return new Fr(Vn(this.r),Vn(this.g),Vn(this.b),Ro(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:Il,formatHex:Il,formatHex8:J3,formatRgb:Ol,toString:Ol}));function Il(){return`#${Rn(this.r)}${Rn(this.g)}${Rn(this.b)}`}function J3(){return`#${Rn(this.r)}${Rn(this.g)}${Rn(this.b)}${Rn((isNaN(this.opacity)?1:this.opacity)*255)}`}function Ol(){const t=Ro(this.opacity);return`${t===1?"rgb(":"rgba("}${Vn(this.r)}, ${Vn(this.g)}, ${Vn(this.b)}${t===1?")":`, ${t})`}`}function Ro(t){return isNaN(t)?1:Math.max(0,Math.min(1,t))}function Vn(t){return Math.max(0,Math.min(255,Math.round(t)||0))}function Rn(t){return t=Vn(t),(t<16?"0":"")+t.toString(16)}function Pl(t,e,n,a){return a<=0?t=e=n=NaN:n<=0||n>=1?t=e=NaN:e<=0&&(t=NaN),new on(t,e,n,a)}function Mu(t){if(t instanceof on)return new on(t.h,t.s,t.l,t.opacity);if(t instanceof oo||(t=Fn(t)),!t)return new on;if(t instanceof on)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 on(l,d,f,t.opacity)}function e4(t,e,n,a){return arguments.length===1?Mu(t):new on(t,e,n,a??1)}function on(t,e,n,a){this.h=+t,this.s=+e,this.l=+n,this.opacity=+a}zs(on,e4,Eu(oo,{brighter(t){return t=t==null?Do:Math.pow(Do,t),new on(this.h,this.s,this.l*t,this.opacity)},darker(t){return t=t==null?Va:Math.pow(Va,t),new on(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 Fr(Li(t>=240?t-240:t+120,o,a),Li(t,o,a),Li(t<120?t+240:t-120,o,a),this.opacity)},clamp(){return new on(Dl(this.h),po(this.s),po(this.l),Ro(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=Ro(this.opacity);return`${t===1?"hsl(":"hsla("}${Dl(this.h)}, ${po(this.s)*100}%, ${po(this.l)*100}%${t===1?")":`, ${t})`}`}}));function Dl(t){return t=(t||0)%360,t<0?t+360:t}function po(t){return Math.max(0,Math.min(1,t||0))}function Li(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 Qs=t=>()=>t;function t4(t,e){return function(n){return t+n*e}}function r4(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 n4(t){return(t=+t)==1?zu:function(e,n){return n-e?r4(e,n,t):Qs(isNaN(e)?n:e)}}function zu(t,e){var n=e-t;return n?t4(t,n):Qs(isNaN(t)?e:t)}const Ho=(function t(e){var n=n4(e);function a(o,i){var l=n((o=ns(o)).r,(i=ns(i)).r),d=n(o.g,i.g),f=n(o.b,i.b),v=zu(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 a4(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 o4(t){return ArrayBuffer.isView(t)&&!(t instanceof DataView)}function i4(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]=Na(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 s4(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 l4(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]=Na(t[o],e[o]):a[o]=e[o];return function(i){for(o in n)a[o]=n[o](i);return a}}var as=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,Ci=new RegExp(as.source,"g");function c4(t){return function(){return t}}function d4(t){return function(e){return t(e)+""}}function Qu(t,e){var n=as.lastIndex=Ci.lastIndex=0,a,o,i,l=-1,d=[],f=[];for(t=t+"",e=e+"";(a=as.exec(t))&&(o=Ci.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=Ci.lastIndex;return n<e.length&&(i=e.slice(n),d[l]?d[l]+=i:d[++l]=i),d.length<2?f[0]?d4(f[0].x):c4(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 Na(t,e){var n=typeof e,a;return e==null||n==="boolean"?Qs(e):(n==="number"?fn:n==="string"?(a=Fn(e))?(e=a,Ho):Qu:e instanceof Fn?Ho:e instanceof Date?s4:o4(e)?a4:Array.isArray(e)?i4:typeof e.valueOf!="function"&&typeof e.toString!="function"||isNaN(e)?l4:fn)(t,e)}var Rl=180/Math.PI,os={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function Nu(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)*Rl,skewX:Math.atan(f)*Rl,scaleX:l,scaleY:d}}var ho;function u4(t){const e=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(t+"");return e.isIdentity?os:Nu(e.a,e.b,e.c,e.d,e.e,e.f)}function f4(t){return t==null||(ho||(ho=document.createElementNS("http://www.w3.org/2000/svg","g")),ho.setAttribute("transform",t),!(t=ho.transform.baseVal.consolidate()))?os:(t=t.matrix,Nu(t.a,t.b,t.c,t.d,t.e,t.f))}function Tu(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 L=w.push("translate(",null,e,null,n);k.push({i:L-4,x:fn(v,b)},{i:L-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 L=w.push(o(w)+"scale(",null,",",null,")");k.push({i:L-4,x:fn(v,b)},{i:L-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,L=h.length,O;++k<L;)b[(O=h[k]).i]=O.x(w);return b.join("")}}}var v4=Tu(u4,"px, ","px)","deg)"),g4=Tu(f4,", ",")",")"),p4=1e-12;function Hl(t){return((t=Math.exp(t))+1/t)/2}function h4(t){return((t=Math.exp(t))-1/t)/2}function b4(t){return((t=Math.exp(2*t))-1)/(t+1)}const No=(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,L=w*w+k*k,O,G;if(L<p4)G=Math.log(h/v)/e,O=function(ne){return[d+ne*w,f+ne*k,v*Math.exp(e*ne*G)]};else{var I=Math.sqrt(L),Y=(h*h-v*v+a*L)/(2*v*n*I),K=(h*h-v*v-a*L)/(2*h*n*I),z=Math.log(Math.sqrt(Y*Y+1)-Y),F=Math.log(Math.sqrt(K*K+1)-K);G=(F-z)/e,O=function(ne){var oe=ne*G,J=Hl(z),ue=v/(n*I)*(J*b4(e*oe+z)-h4(z));return[d+ue*w,f+ue*k,v*J/Hl(e*oe+z)]}}return O.duration=G*1e3*e/Math.SQRT2,O}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,La=0,ya=0,Au=1e3,Vo,Ca,Fo=0,qn=0,ni=0,qa=typeof performance=="object"&&performance.now?performance:Date,Iu=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(t){setTimeout(t,17)};function Ns(){return qn||(Iu(m4),qn=qa.now()+ni)}function m4(){qn=0}function qo(){this._call=this._time=this._next=null}qo.prototype=Ou.prototype={constructor:qo,restart:function(t,e,n){if(typeof t!="function")throw new TypeError("callback is not a function");n=(n==null?Ns():+n)+(e==null?0:+e),!this._next&&Ca!==this&&(Ca?Ca._next=this:Vo=this,Ca=this),this._call=t,this._time=n,is()},stop:function(){this._call&&(this._call=null,this._time=1/0,is())}};function Ou(t,e,n){var a=new qo;return a.restart(t,e,n),a}function x4(){Ns(),++ua;for(var t=Vo,e;t;)(e=qn-t._time)>=0&&t._call.call(void 0,e),t=t._next;--ua}function Vl(){qn=(Fo=qa.now())+ni,ua=La=0;try{x4()}finally{ua=0,y4(),qn=0}}function _4(){var t=qa.now(),e=t-Fo;e>Au&&(ni-=e,Fo=t)}function y4(){for(var t,e=Vo,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:Vo=n);Ca=t,is(a)}function is(t){if(!ua){La&&(La=clearTimeout(La));var e=t-qn;e>24?(t<1/0&&(La=setTimeout(Vl,t-qa.now()-ni)),ya&&(ya=clearInterval(ya))):(ya||(Fo=qa.now(),ya=setInterval(_4,Au)),ua=1,Iu(Vl))}}function Fl(t,e,n){var a=new qo;return e=e==null?0:+e,a.restart(o=>{a.stop(),t(o+e)},e,n),a}var w4=ti("start","end","cancel","interrupt"),k4=[],Pu=0,ql=1,ss=2,To=3,Bl=4,ls=5,Ao=6;function ai(t,e,n,a,o,i){var l=t.__transition;if(!l)t.__transition={};else if(n in l)return;S4(t,n,{name:e,index:a,group:o,on:w4,tween:k4,time:i.time,delay:i.delay,duration:i.duration,ease:i.ease,timer:null,state:Pu})}function Ts(t,e){var n=dn(t,e);if(n.state>Pu)throw new Error("too late; already scheduled");return n}function hn(t,e){var n=dn(t,e);if(n.state>To)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 S4(t,e,n){var a=t.__transition,o;a[e]=n,n.timer=Ou(i,0,n.time);function i(v){n.state=ql,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!==ql)return f();for(p in a)if(w=a[p],w.name===n.name){if(w.state===To)return Fl(l);w.state===Bl?(w.state=Ao,w.timer.stop(),w.on.call("interrupt",t,t.__data__,w.index,w.group),delete a[p]):+p<e&&(w.state=Ao,w.timer.stop(),w.on.call("cancel",t,t.__data__,w.index,w.group),delete a[p])}if(Fl(function(){n.state===To&&(n.state=Bl,n.timer.restart(d,n.delay,n.time),d(v))}),n.state=ss,n.on.call("start",t,t.__data__,n.index,n.group),n.state===ss){for(n.state=To,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=ls,1),b=-1,h=o.length;++b<h;)o[b].call(t,p);n.state===ls&&(n.on.call("end",t,t.__data__,n.index,n.group),f())}function f(){n.state=Ao,n.timer.stop(),delete a[e];for(var v in a)return;delete t.__transition}}function Io(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>ss&&a.state<ls,a.state=Ao,a.timer.stop(),a.on.call(o?"interrupt":"cancel",t,t.__data__,a.index,a.group),delete n[l]}i&&delete t.__transition}}function L4(t){return this.each(function(){Io(this,t)})}function C4(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 E4(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 M4(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?C4:E4)(n,t,e))}function As(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 Du(t,e){var n;return(typeof e=="number"?fn:e instanceof Fn?Ho:(n=Fn(e))?(e=n,Ho):Qu)(t,e)}function z4(t){return function(){this.removeAttribute(t)}}function Q4(t){return function(){this.removeAttributeNS(t.space,t.local)}}function N4(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 T4(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 A4(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 I4(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 O4(t,e){var n=ri(t),a=n==="transform"?g4:Du;return this.attrTween(t,typeof e=="function"?(n.local?I4:A4)(n,a,As(this,"attr."+t,e)):e==null?(n.local?Q4:z4)(n):(n.local?T4:N4)(n,a,e))}function P4(t,e){return function(n){this.setAttribute(t,e.call(this,n))}}function D4(t,e){return function(n){this.setAttributeNS(t.space,t.local,e.call(this,n))}}function R4(t,e){var n,a;function o(){var i=e.apply(this,arguments);return i!==a&&(n=(a=i)&&D4(t,i)),n}return o._value=e,o}function H4(t,e){var n,a;function o(){var i=e.apply(this,arguments);return i!==a&&(n=(a=i)&&P4(t,i)),n}return o._value=e,o}function V4(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=ri(t);return this.tween(n,(a.local?R4:H4)(a,e))}function F4(t,e){return function(){Ts(this,t).delay=+e.apply(this,arguments)}}function q4(t,e){return e=+e,function(){Ts(this,t).delay=e}}function B4(t){var e=this._id;return arguments.length?this.each((typeof t=="function"?F4:q4)(e,t)):dn(this.node(),e).delay}function K4(t,e){return function(){hn(this,t).duration=+e.apply(this,arguments)}}function j4(t,e){return e=+e,function(){hn(this,t).duration=e}}function Z4(t){var e=this._id;return arguments.length?this.each((typeof t=="function"?K4:j4)(e,t)):dn(this.node(),e).duration}function U4(t,e){if(typeof e!="function")throw new Error;return function(){hn(this,t).ease=e}}function W4(t){var e=this._id;return arguments.length?this.each(U4(e,t)):dn(this.node(),e).ease}function G4(t,e){return function(){var n=e.apply(this,arguments);if(typeof n!="function")throw new Error;hn(this,t).ease=n}}function Y4(t){if(typeof t!="function")throw new Error;return this.each(G4(this._id,t))}function $4(t){typeof t!="function"&&(t=pu(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 Ln(a,this._parents,this._name,this._id)}function X4(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 Ln(l,this._parents,this._name,this._id)}function J4(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 e5(t,e,n){var a,o,i=J4(e)?Ts:hn;return function(){var l=i(this,t),d=l.on;d!==a&&(o=(a=d).copy()).on(e,n),l.on=o}}function t5(t,e){var n=this._id;return arguments.length<2?dn(this.node(),n).on.on(t):this.each(e5(n,t,e))}function r5(t){return function(){var e=this.parentNode;for(var n in this.__transition)if(+n!==t)return;e&&e.removeChild(this)}}function n5(){return this.on("end.remove",r5(this._id))}function a5(t){var e=this._name,n=this._id;typeof t!="function"&&(t=Es(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,ai(v[h],e,n,h,v,dn(p,n)));return new Ln(i,this._parents,e,n)}function o5(t){var e=this._name,n=this._id;typeof t!="function"&&(t=gu(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),L=0,O=h.length;L<O;++L)(w=h[L])&&ai(w,e,n,L,h,k);i.push(h),l.push(p)}return new Ln(i,l,e,n)}var i5=ao.prototype.constructor;function s5(){return new i5(this._groups,this._parents)}function l5(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 Ru(t){return function(){this.style.removeProperty(t)}}function c5(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 d5(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 u5(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=Ru(e)):void 0;(v!==n||o!==p)&&(a=(n=v).copy()).on(l,o=p),f.on=a}}function f5(t,e,n){var a=(t+="")=="transform"?v4:Du;return e==null?this.styleTween(t,l5(t,a)).on("end.style."+t,Ru(t)):typeof e=="function"?this.styleTween(t,d5(t,a,As(this,"style."+t,e))).each(u5(this._id,t)):this.styleTween(t,c5(t,a,e),n).on("end.style."+t,null)}function v5(t,e,n){return function(a){this.style.setProperty(t,e.call(this,a),n)}}function g5(t,e,n){var a,o;function i(){var l=e.apply(this,arguments);return l!==o&&(a=(o=l)&&v5(t,l,n)),a}return i._value=e,i}function p5(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,g5(t,e,n??""))}function h5(t){return function(){this.textContent=t}}function b5(t){return function(){var e=t(this);this.textContent=e??""}}function m5(t){return this.tween("text",typeof t=="function"?b5(As(this,"text",t)):h5(t==null?"":t+""))}function x5(t){return function(e){this.textContent=t.call(this,e)}}function _5(t){var e,n;function a(){var o=t.apply(this,arguments);return o!==n&&(e=(n=o)&&x5(o)),e}return a._value=t,a}function y5(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,_5(t))}function w5(){for(var t=this._name,e=this._id,n=Hu(),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);ai(f,t,n,v,l,{time:p.time+p.delay+p.duration,delay:0,duration:p.duration,ease:p.ease})}return new Ln(a,this._parents,t,n)}function k5(){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 S5=0;function Ln(t,e,n,a){this._groups=t,this._parents=e,this._name=n,this._id=a}function Hu(){return++S5}var bn=ao.prototype;Ln.prototype={constructor:Ln,select:a5,selectAll:o5,selectChild:bn.selectChild,selectChildren:bn.selectChildren,filter:$4,merge:X4,selection:s5,transition:w5,call:bn.call,nodes:bn.nodes,node:bn.node,size:bn.size,empty:bn.empty,each:bn.each,on:t5,attr:O4,attrTween:V4,style:f5,styleTween:p5,text:m5,textTween:y5,remove:n5,tween:M4,delay:B4,duration:Z4,ease:W4,easeVarying:Y4,end:k5,[Symbol.iterator]:bn[Symbol.iterator]};function L5(t){return((t*=2)<=1?t*t*t:(t-=2)*t*t+2)/2}var C5={time:null,delay:0,duration:250,ease:L5};function E5(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 M5(t){var e,n;t instanceof Ln?(e=t._id,t=t._name):(e=Hu(),(n=C5).time=Ns(),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])&&ai(f,t,e,v,l,n||E5(f,e));return new Ln(a,this._parents,t,e)}ao.prototype.interrupt=L4;ao.prototype.transition=M5;const bo=t=>()=>t;function z5(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 oi=new yn(1,0,0);Vu.prototype=yn.prototype;function Vu(t){for(;!t.__zoom;)if(!(t=t.parentNode))return oi;return t.__zoom}function Ei(t){t.stopImmediatePropagation()}function wa(t){t.preventDefault(),t.stopImmediatePropagation()}function Q5(t){return(!t.ctrlKey||t.type==="wheel")&&!t.button}function N5(){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 Kl(){return this.__zoom||oi}function T5(t){return-t.deltaY*(t.deltaMode===1?.05:t.deltaMode?1:.002)*(t.ctrlKey?10:1)}function A5(){return navigator.maxTouchPoints||"ontouchstart"in this}function I5(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 O5(){var t=Q5,e=N5,n=I5,a=T5,o=A5,i=[0,1/0],l=[[-1/0,-1/0],[1/0,1/0]],d=250,f=No,v=ti("start","zoom","end"),p,b,h,w=500,k=150,L=0,O=10;function G(_){_.property("__zoom",Kl).on("wheel.zoom",oe,{passive:!1}).on("mousedown.zoom",J).on("dblclick.zoom",ue).filter(o).on("touchstart.zoom",Z).on("touchmove.zoom",C).on("touchend.zoom touchcancel.zoom",N).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}G.transform=function(_,T,D,te){var V=_.selection?_.selection():_;V.property("__zoom",Kl),_!==V?z(_,T,D,te):V.interrupt().each(function(){F(this,arguments).event(te).start().zoom(null,typeof T=="function"?T.apply(this,arguments):T).end()})},G.scaleBy=function(_,T,D,te){G.scaleTo(_,function(){var V=this.__zoom.k,$=typeof T=="function"?T.apply(this,arguments):T;return V*$},D,te)},G.scaleTo=function(_,T,D,te){G.transform(_,function(){var V=e.apply(this,arguments),$=this.__zoom,ee=D==null?K(V):typeof D=="function"?D.apply(this,arguments):D,A=$.invert(ee),H=typeof T=="function"?T.apply(this,arguments):T;return n(Y(I($,H),ee,A),V,l)},D,te)},G.translateBy=function(_,T,D,te){G.transform(_,function(){return n(this.__zoom.translate(typeof T=="function"?T.apply(this,arguments):T,typeof D=="function"?D.apply(this,arguments):D),e.apply(this,arguments),l)},null,te)},G.translateTo=function(_,T,D,te,V){G.transform(_,function(){var $=e.apply(this,arguments),ee=this.__zoom,A=te==null?K($):typeof te=="function"?te.apply(this,arguments):te;return n(oi.translate(A[0],A[1]).scale(ee.k).translate(typeof T=="function"?-T.apply(this,arguments):-T,typeof D=="function"?-D.apply(this,arguments):-D),$,l)},te,V)};function I(_,T){return T=Math.max(i[0],Math.min(i[1],T)),T===_.k?_:new yn(T,_.x,_.y)}function Y(_,T,D){var te=T[0]-D[0]*_.k,V=T[1]-D[1]*_.k;return te===_.x&&V===_.y?_:new yn(_.k,te,V)}function K(_){return[(+_[0][0]+ +_[1][0])/2,(+_[0][1]+ +_[1][1])/2]}function z(_,T,D,te){_.on("start.zoom",function(){F(this,arguments).event(te).start()}).on("interrupt.zoom end.zoom",function(){F(this,arguments).event(te).end()}).tween("zoom",function(){var V=this,$=arguments,ee=F(V,$).event(te),A=e.apply(V,$),H=D==null?K(A):typeof D=="function"?D.apply(V,$):D,B=Math.max(A[1][0]-A[0][0],A[1][1]-A[0][1]),le=V.__zoom,he=typeof T=="function"?T.apply(V,$):T,ie=f(le.invert(H).concat(B/le.k),he.invert(H).concat(B/he.k));return function(X){if(X===1)X=he;else{var U=ie(X),W=B/U[2];X=new yn(W,H[0]-U[0]*W,H[1]-U[1]*W)}ee.zoom(null,X)}})}function F(_,T,D){return!D&&_.__zooming||new ne(_,T)}function ne(_,T){this.that=_,this.args=T,this.active=0,this.sourceEvent=null,this.extent=e.apply(_,T),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(_,T){return this.mouse&&_!=="mouse"&&(this.mouse[1]=T.invert(this.mouse[0])),this.touch0&&_!=="touch"&&(this.touch0[1]=T.invert(this.touch0[0])),this.touch1&&_!=="touch"&&(this.touch1[1]=T.invert(this.touch1[0])),this.that.__zoom=T,this.emit("zoom"),this},end:function(){return--this.active===0&&(delete this.that.__zooming,this.emit("end")),this},emit:function(_){var T=an(this.that).datum();v.call(_,this.that,new z5(_,{sourceEvent:this.sourceEvent,target:G,transform:this.that.__zoom,dispatch:v}),T)}};function oe(_,...T){if(!t.apply(this,arguments))return;var D=F(this,T).event(_),te=this.__zoom,V=Math.max(i[0],Math.min(i[1],te.k*Math.pow(2,a.apply(this,arguments)))),$=un(_);if(D.wheel)(D.mouse[0][0]!==$[0]||D.mouse[0][1]!==$[1])&&(D.mouse[1]=te.invert(D.mouse[0]=$)),clearTimeout(D.wheel);else{if(te.k===V)return;D.mouse=[$,te.invert($)],Io(this),D.start()}wa(_),D.wheel=setTimeout(ee,k),D.zoom("mouse",n(Y(I(te,V),D.mouse[0],D.mouse[1]),D.extent,l));function ee(){D.wheel=null,D.end()}}function J(_,...T){if(h||!t.apply(this,arguments))return;var D=_.currentTarget,te=F(this,T,!0).event(_),V=an(_.view).on("mousemove.zoom",H,!0).on("mouseup.zoom",B,!0),$=un(_,D),ee=_.clientX,A=_.clientY;Lu(_.view),Ei(_),te.mouse=[$,this.__zoom.invert($)],Io(this),te.start();function H(le){if(wa(le),!te.moved){var he=le.clientX-ee,ie=le.clientY-A;te.moved=he*he+ie*ie>L}te.event(le).zoom("mouse",n(Y(te.that.__zoom,te.mouse[0]=un(le,D),te.mouse[1]),te.extent,l))}function B(le){V.on("mousemove.zoom mouseup.zoom",null),Cu(le.view,te.moved),wa(le),te.event(le).end()}}function ue(_,...T){if(t.apply(this,arguments)){var D=this.__zoom,te=un(_.changedTouches?_.changedTouches[0]:_,this),V=D.invert(te),$=D.k*(_.shiftKey?.5:2),ee=n(Y(I(D,$),te,V),e.apply(this,T),l);wa(_),d>0?an(this).transition().duration(d).call(z,ee,te,_):an(this).call(G.transform,ee,te,_)}}function Z(_,...T){if(t.apply(this,arguments)){var D=_.touches,te=D.length,V=F(this,T,_.changedTouches.length===te).event(_),$,ee,A,H;for(Ei(_),ee=0;ee<te;++ee)A=D[ee],H=un(A,this),H=[H,this.__zoom.invert(H),A.identifier],V.touch0?!V.touch1&&V.touch0[2]!==H[2]&&(V.touch1=H,V.taps=0):(V.touch0=H,$=!0,V.taps=1+!!p);p&&(p=clearTimeout(p)),$&&(V.taps<2&&(b=H[0],p=setTimeout(function(){p=null},w)),Io(this),V.start())}}function C(_,...T){if(this.__zooming){var D=F(this,T).event(_),te=_.changedTouches,V=te.length,$,ee,A,H;for(wa(_),$=0;$<V;++$)ee=te[$],A=un(ee,this),D.touch0&&D.touch0[2]===ee.identifier?D.touch0[0]=A:D.touch1&&D.touch1[2]===ee.identifier&&(D.touch1[0]=A);if(ee=D.that.__zoom,D.touch1){var B=D.touch0[0],le=D.touch0[1],he=D.touch1[0],ie=D.touch1[1],X=(X=he[0]-B[0])*X+(X=he[1]-B[1])*X,U=(U=ie[0]-le[0])*U+(U=ie[1]-le[1])*U;ee=I(ee,Math.sqrt(X/U)),A=[(B[0]+he[0])/2,(B[1]+he[1])/2],H=[(le[0]+ie[0])/2,(le[1]+ie[1])/2]}else if(D.touch0)A=D.touch0[0],H=D.touch0[1];else return;D.zoom("touch",n(Y(ee,A,H),D.extent,l))}}function N(_,...T){if(this.__zooming){var D=F(this,T).event(_),te=_.changedTouches,V=te.length,$,ee;for(Ei(_),h&&clearTimeout(h),h=setTimeout(function(){h=null},w),$=0;$<V;++$)ee=te[$],D.touch0&&D.touch0[2]===ee.identifier?delete D.touch0:D.touch1&&D.touch1[2]===ee.identifier&&delete D.touch1;if(D.touch1&&!D.touch0&&(D.touch0=D.touch1,delete D.touch1),D.touch0)D.touch0[1]=this.__zoom.invert(D.touch0[0]);else if(D.end(),D.taps===2&&(ee=un(ee,this),Math.hypot(b[0]-ee[0],b[1]-ee[1])<O)){var A=an(this).on("dblclick.zoom");A&&A.apply(this,arguments)}}}return G.wheelDelta=function(_){return arguments.length?(a=typeof _=="function"?_:bo(+_),G):a},G.filter=function(_){return arguments.length?(t=typeof _=="function"?_:bo(!!_),G):t},G.touchable=function(_){return arguments.length?(o=typeof _=="function"?_:bo(!!_),G):o},G.extent=function(_){return arguments.length?(e=typeof _=="function"?_:bo([[+_[0][0],+_[0][1]],[+_[1][0],+_[1][1]]]),G):e},G.scaleExtent=function(_){return arguments.length?(i[0]=+_[0],i[1]=+_[1],G):[i[0],i[1]]},G.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],G):[[l[0][0],l[0][1]],[l[1][0],l[1][1]]]},G.constrain=function(_){return arguments.length?(n=_,G):n},G.duration=function(_){return arguments.length?(d=+_,G):d},G.interpolate=function(_){return arguments.length?(f=_,G):f},G.on=function(){var _=v.on.apply(v,arguments);return _===v?G:_},G.clickDistance=function(_){return arguments.length?(L=(_=+_)*_,G):Math.sqrt(L)},G.tapDistance=function(_){return arguments.length?(O=+_,G):O},G}const Ba={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."},cs=[[Number.NEGATIVE_INFINITY,Number.NEGATIVE_INFINITY],[Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY]],Fu=["Enter"," ","Escape"],P5={"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 Bo;(function(t){t.Partial="partial",t.Full="full"})(Bo||(Bo={}));const ds={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 Ko;(function(t){t.Arrow="arrow",t.ArrowClosed="arrowclosed"})(Ko||(Ko={}));var zt;(function(t){t.Left="left",t.Top="top",t.Right="right",t.Bottom="bottom"})(zt||(zt={}));const jl={[zt.Left]:zt.Right,[zt.Right]:zt.Left,[zt.Top]:zt.Bottom,[zt.Bottom]:zt.Top};function D5(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 Zl(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 R5(t){return t===null?null:t?"valid":"invalid"}const qu=t=>"id"in t&&"source"in t&&"target"in t,H5=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}=Zn(t),o=t.origin??e,i=n*o[0],l=a*o[1];return{x:t.position.x-i,y:t.position.y-l}},V5=(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?jo(l,e.nodeOrigin):{x:0,y:0,x2:0,y2:0};return si(a,d)},{x:1/0,y:1/0,x2:-1/0,y2:-1/0});return li(n)},ii=(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=si(n,jo(o)),a=!0)}),a?li(n):{x:0,y:0,width:0,height:0}},Os=(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,L=Ka(d,ga(v)),O=(w??0)*(k??0),G=i&&L>0;(!v.internals.handleBounds||G||L>=O||v.dragging)&&f.push(v)}return f},F5=(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 q5(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 B5({nodes:t,width:e,height:n,panZoom:a,minZoom:o,maxZoom:i},l){if(t.size===0)return Promise.resolve(!0);const d=q5(t,l),f=ii(d),v=Ps(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 Bu({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",Ba.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)?Bn(e,b,l.measured):e;return(l.measured.width===void 0||l.measured.height===void 0)&&(i==null||i("015",Ba.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 K5({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(L=>L.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=F5(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),Bn=(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 Ku(t,e,n){const{width:a,height:o}=Zn(n),{x:i,y:l}=n.internals.positionAbsolute;return Bn(t,[[i,l],[i+a,l+o]],e)}const Ul=(t,e,n)=>t<e?va(Math.abs(t-e),1,e)/e:t>n?-va(Math.abs(t-n),1,e)/e:0,ju=(t,e,n=15,a=40)=>{const o=Ul(t.x,a,e.width-a)*n,i=Ul(t.y,a,e.height-a)*n;return[o,i]},si=(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)}),us=({x:t,y:e,width:n,height:a})=>({x:t,y:e,x2:t+n,y2:e+a}),li=({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}},jo=(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)}},j5=(t,e)=>li(si(us(t),us(e))),Ka=(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)},Wl=t=>wn(t.width)&&wn(t.height)&&wn(t.x)&&wn(t.y),wn=t=>!isNaN(t)&&isFinite(t),Z5=(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},Zo=({x:t,y:e},[n,a,o])=>({x:t*o+n,y:e*o+a});function Xn(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 U5(t,e,n){if(typeof t=="string"||typeof t=="number"){const a=Xn(t,n),o=Xn(t,e);return{top:a,right:o,bottom:a,left:o,x:o*2,y:a*2}}if(typeof t=="object"){const a=Xn(t.top??t.y??0,n),o=Xn(t.bottom??t.y??0,n),i=Xn(t.left??t.x??0,e),l=Xn(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 W5(t,e,n,a,o,i){const{x:l,y:d}=Zo(t,[e,n,a]),{x:f,y:v}=Zo({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 Ps=(t,e,n,a,o,i)=>{const l=U5(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,L=W5(t,w,k,p,e,n),O={left:Math.min(L.left-l.left,0),top:Math.min(L.top-l.top,0),right:Math.min(L.right-l.right,0),bottom:Math.min(L.bottom-l.bottom,0)};return{x:w-O.left+O.right,y:k-O.top+O.bottom,zoom:p}},Uo=()=>{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 Zn(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 G5(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 Y5(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 $5(t){return{...P5,...t||{}}}function Mi(t,{snapGrid:e=[0,0],snapToGrid:n=!1,transform:a,containerBounds:o}){const{x:i,y:l}=ln(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 Zu=t=>({width:t.offsetWidth,height:t.offsetHeight}),Uu=t=>{var e;return((e=t==null?void 0:t.getRootNode)==null?void 0:e.call(t))||(window==null?void 0:window.document)},X5=["INPUT","SELECT","TEXTAREA"];function Wu(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:X5.includes(e.nodeName)||e.hasAttribute("contenteditable")||!!e.closest(".nokey")}const Gu=t=>"clientX"in t,ln=(t,e)=>{var i,l;const n=Gu(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)}},Gl=(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,...Zu(l)}})};function J5({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 mo(t,e){return t>=0?.5*t:e*25*Math.sqrt(-t)}function Yl({pos:t,x1:e,y1:n,x2:a,y2:o,c:i}){switch(t){case zt.Left:return[e-mo(e-a,i),n];case zt.Right:return[e+mo(a-e,i),n];case zt.Top:return[e,n-mo(n-o,i)];case zt.Bottom:return[e,n+mo(o-n,i)]}}function Yu({sourceX:t,sourceY:e,sourcePosition:n=zt.Bottom,targetX:a,targetY:o,targetPosition:i=zt.Top,curvature:l=.25}){const[d,f]=Yl({pos:n,x1:t,y1:e,x2:a,y2:o,c:l}),[v,p]=Yl({pos:i,x1:a,y1:o,x2:t,y2:e,c:l}),[b,h,w,k]=J5({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 $u({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 ew({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 tw({sourceNode:t,targetNode:e,width:n,height:a,transform:o}){const i=si(jo(t),jo(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 Ka(l,li(i))>0}const rw=({source:t,sourceHandle:e,target:n,targetHandle:a})=>`xy-edge__${t}${e||""}-${n}${a||""}`,nw=(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)),aw=(t,e,n={})=>{if(!t.source||!t.target)return e;const a=n.getEdgeId||rw;let o;return qu(t)?o={...t}:o={...t,id:a(t)},nw(o,e)?e:(o.sourceHandle===null&&delete o.sourceHandle,o.targetHandle===null&&delete o.targetHandle,e.concat(o))};function Xu({sourceX:t,sourceY:e,targetX:n,targetY:a}){const[o,i,l,d]=$u({sourceX:t,sourceY:e,targetX:n,targetY:a});return[`M ${t},${e}L ${n},${a}`,o,i,l,d]}const $l={[zt.Left]:{x:-1,y:0},[zt.Right]:{x:1,y:0},[zt.Top]:{x:0,y:-1},[zt.Bottom]:{x:0,y:1}},ow=({source:t,sourcePosition:e=zt.Bottom,target:n})=>e===zt.Left||e===zt.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},Xl=(t,e)=>Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2));function iw({source:t,sourcePosition:e=zt.Bottom,target:n,targetPosition:a=zt.Top,center:o,offset:i,stepPosition:l}){const d=$l[e],f=$l[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=ow({source:v,sourcePosition:e,target:p}),h=b.x!==0?"x":"y",w=b[h];let k=[],L,O;const G={x:0,y:0},I={x:0,y:0},[,,Y,K]=$u({sourceX:t.x,sourceY:t.y,targetX:n.x,targetY:n.y});if(d[h]*f[h]===-1){h==="x"?(L=o.x??v.x+(p.x-v.x)*l,O=o.y??(v.y+p.y)/2):(L=o.x??(v.x+p.x)/2,O=o.y??v.y+(p.y-v.y)*l);const oe=[{x:L,y:v.y},{x:L,y:p.y}],J=[{x:v.x,y:O},{x:p.x,y:O}];d[h]===w?k=h==="x"?oe:J:k=h==="x"?J:oe}else{const oe=[{x:v.x,y:p.y}],J=[{x:p.x,y:v.y}];if(h==="x"?k=d.x===w?J:oe:k=d.y===w?oe:J,e===a){const _=Math.abs(t[h]-n[h]);if(_<=i){const T=Math.min(i-1,i-_);d[h]===w?G[h]=(v[h]>t[h]?-1:1)*T:I[h]=(p[h]>n[h]?-1:1)*T}}if(e!==a){const _=h==="x"?"y":"x",T=d[h]===f[_],D=v[_]>p[_],te=v[_]<p[_];(d[h]===1&&(!T&&D||T&&te)||d[h]!==1&&(!T&&te||T&&D))&&(k=h==="x"?oe:J)}const ue={x:v.x+G.x,y:v.y+G.y},Z={x:p.x+I.x,y:p.y+I.y},C=Math.max(Math.abs(ue.x-k[0].x),Math.abs(Z.x-k[0].x)),N=Math.max(Math.abs(ue.y-k[0].y),Math.abs(Z.y-k[0].y));C>=N?(L=(ue.x+Z.x)/2,O=k[0].y):(L=k[0].x,O=(ue.y+Z.y)/2)}const z={x:v.x+G.x,y:v.y+G.y},F={x:p.x+I.x,y:p.y+I.y};return[[t,...z.x!==k[0].x||z.y!==k[0].y?[z]:[],...k,...F.x!==k[k.length-1].x||F.y!==k[k.length-1].y?[F]:[],n],L,O,Y,K]}function sw(t,e,n,a){const o=Math.min(Xl(t,e)/2,Xl(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 Ds({sourceX:t,sourceY:e,sourcePosition:n=zt.Bottom,targetX:a,targetY:o,targetPosition:i=zt.Top,borderRadius:l=5,centerX:d,centerY:f,offset:v=20,stepPosition:p=.5}){const[b,h,w,k,L]=iw({source:{x:t,y:e},sourcePosition:n,target:{x:a,y:o},targetPosition:i,center:{x:d,y:f},offset:v,stepPosition:p});let O=`M${b[0].x} ${b[0].y}`;for(let G=1;G<b.length-1;G++)O+=sw(b[G-1],b[G],b[G+1],l);return O+=`L${b[b.length-1].x} ${b[b.length-1].y}`,[O,h,w,k,L]}function Jl(t){var e;return t&&!!(t.internals.handleBounds||(e=t.handles)!=null&&e.length)&&!!(t.measured.width||t.width||t.initialWidth)}function lw(t){var b;const{sourceNode:e,targetNode:n}=t;if(!Jl(e)||!Jl(n))return null;const a=e.internals.handleBounds||ec(e.handles),o=n.internals.handleBounds||ec(n.handles),i=tc((a==null?void 0:a.source)??[],t.sourceHandle),l=tc(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",Ba.error008(i?"target":"source",{id:t.id,sourceHandle:t.sourceHandle,targetHandle:t.targetHandle})),null;const d=(i==null?void 0:i.position)||zt.Bottom,f=(l==null?void 0:l.position)||zt.Top,v=Kn(e,i,d),p=Kn(n,l,f);return{sourceX:v.x,sourceY:v.y,targetX:p.x,targetY:p.y,sourcePosition:d,targetPosition:f}}function ec(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 Kn(t,e,n=zt.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??Zn(t);if(a)return{x:o+l/2,y:i+d/2};switch((e==null?void 0:e.position)??n){case zt.Top:return{x:o+l/2,y:i};case zt.Right:return{x:o+l,y:i+d/2};case zt.Bottom:return{x:o+l/2,y:i+d};case zt.Left:return{x:o,y:i+d/2}}}function tc(t,e){return t&&(e?t.find(n=>n.id===e):t[0])||null}function fs(t,e){return t?typeof t=="string"?t:`${e?`${e}__`:""}${Object.keys(t).sort().map(a=>`${a}=${t[a]}`).join("&")}`:""}function cw(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=fs(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 Ju=1e3,dw=10,Rs={nodeOrigin:[0,0],nodeExtent:cs,elevateNodesOnSelect:!0,zIndexMode:"basic",defaults:{}},uw={...Rs,checkEquality:!0};function Hs(t,e){const n={...t};for(const a in e)e[a]!==void 0&&(n[a]=e[a]);return n}function fw(t,e,n){const a=Hs(Rs,n);for(const o of t.values())if(o.parentId)Fs(o,t,e,a);else{const i=io(o,a.nodeOrigin),l=pa(o.extent)?o.extent:a.nodeExtent,d=Bn(i,l,Zn(o));o.internals.positionAbsolute=d}}function vw(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 Vs(t){return t==="manual"}function gw(t,e,n,a={}){var p,b;const o=Hs(uw,a),i={i:0},l=new Map(e),d=o!=null&&o.elevateNodesOnSelect&&!Vs(o.zIndexMode)?Ju: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),L=pa(h.extent)?h.extent:o.nodeExtent,O=Bn(k,L,Zn(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:O,handleBounds:vw(h,w),z:ef(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&&Fs(w,e,n,a,i),v||(v=h.selected??!1)}return{nodesInitialized:f,hasSelectedNodes:v}}function pw(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 Fs(t,e,n,a,o){const{elevateNodesOnSelect:i,nodeOrigin:l,nodeExtent:d,zIndexMode:f}=Hs(Rs,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}pw(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*dw),o&&p.internals.rootParentIndex!==void 0&&(o.i=p.internals.rootParentIndex);const b=i&&!Vs(f)?Ju:0,{x:h,y:w,z:k}=hw(t,p,l,d,b,f),{positionAbsolute:L}=t.internals,O=h!==L.x||w!==L.y;(O||k!==t.internals.z)&&e.set(t.id,{...t,internals:{...t.internals,positionAbsolute:O?{x:h,y:w}:L,z:k}})}function ef(t,e,n){const a=wn(t.zIndex)?t.zIndex:0;return Vs(n)?a:a+(t.selected?e:0)}function hw(t,e,n,a,o,i){const{x:l,y:d}=e.internals.positionAbsolute,f=Zn(t),v=io(t,n),p=pa(t.extent)?Bn(v,t.extent,f):v;let b=Bn({x:l+p.x,y:d+p.y},a,f);t.extent==="parent"&&(b=Ku(b,f,e));const h=ef(t,o,i),w=e.internals.z??0;return{x:b.x,y:b.y,z:w>=h?w+1:h}}function bw(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=j5(v,d.rect);i.set(d.parentId,{expandedRect:p,parent:f})}return i.size>0&&i.forEach(({expandedRect:d,parent:f},v)=>{var Y;const p=f.internals.positionAbsolute,b=Zn(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,L=Math.max(b.width,Math.round(d.width)),O=Math.max(b.height,Math.round(d.height)),G=(L-b.width)*h[0],I=(O-b.height)*h[1];(w>0||k>0||G||I)&&(o.push({id:v,type:"position",position:{x:f.position.x-w+G,y:f.position.y-k+I}}),(Y=n.get(v))==null||Y.forEach(K=>{t.some(z=>z.id===K.id)||o.push({id:K.id,type:"position",position:{x:K.position.x+w,y:K.position.y+k}})})),(b.width<d.width||b.height<d.height||w||k)&&o.push({id:v,type:"dimensions",setAttributes:!0,dimensions:{width:L+(w?h[0]*w-G:0),height:O+(k?h[1]*k-I:0)}})}),o}function mw(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 L=Zu(w.nodeElement),O=k.measured.width!==L.width||k.measured.height!==L.height;if(!!(L.width&&L.height&&(O||!k.internals.handleBounds||w.force))){const I=w.nodeElement.getBoundingClientRect(),Y=pa(k.extent)?k.extent:i;let{positionAbsolute:K}=k.internals;k.parentId&&k.extent==="parent"?K=Ku(K,L,e.get(k.parentId)):Y&&(K=Bn(K,Y,L));const z={...k,measured:L,internals:{...k.internals,positionAbsolute:K,handleBounds:{source:Gl("source",w.nodeElement,I,b,k.id),target:Gl("target",w.nodeElement,I,b,k.id)}}};e.set(k.id,z),k.parentId&&Fs(z,e,n,{nodeOrigin:o,zIndexMode:l}),f=!0,O&&(v.push({id:k.id,type:"dimensions",dimensions:L}),k.expandParent&&k.parentId&&h.push({id:k.id,parentId:k.parentId,rect:ga(z,o)}))}}if(h.length>0){const w=bw(h,e,n,o);v.push(...w)}return{changes:v,updatedInternals:f}}async function xw({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 rc(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 _w(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}`;rc("source",f,p,t,o,l),rc("target",f,v,t,i,d),e.set(a.id,a)}}function tf(t,e){if(!t.parentId)return!1;const n=e.get(t.parentId);return n?n.selected?!0:tf(n,e):!1}function nc(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 yw(t,e,n,a){const o=new Map;for(const[i,l]of t)if((l.selected||l.id===a)&&(!l.parentId||!tf(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 zi({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 ww({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 kw({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,L=null;function O({noDragClassName:I,handleSelector:Y,domNode:K,isSelectable:z,nodeId:F,nodeClickDistance:ne=0}){h=an(K);function oe({x:C,y:N}){const{nodeLookup:_,nodeExtent:T,snapGrid:D,snapToGrid:te,nodeOrigin:V,onNodeDrag:$,onSelectionDrag:ee,onError:A,updateNodePositions:H}=e();i={x:C,y:N};let B=!1;const le=d.size>1,he=le&&T?us(ii(d)):null,ie=le&&te?ww({dragItems:d,snapGrid:D,x:C,y:N}):null;for(const[X,U]of d){if(!_.has(X))continue;let W={x:C-U.distance.x,y:N-U.distance.y};te&&(W=ie?{x:Math.round(W.x+ie.x),y:Math.round(W.y+ie.y)}:so(W,D));let E=null;if(le&&T&&!U.extent&&he){const{positionAbsolute:M}=U.internals,j=M.x-he.x+T[0][0],re=M.x+U.measured.width-he.x2+T[1][0],de=M.y-he.y+T[0][1],be=M.y+U.measured.height-he.y2+T[1][1];E=[[j,de],[re,be]]}const{position:q,positionAbsolute:P}=Bu({nodeId:X,nextPosition:W,nodeLookup:_,nodeExtent:E||T,nodeOrigin:V,onError:A});B=B||U.position.x!==q.x||U.position.y!==q.y,U.position=q,U.internals.positionAbsolute=P}if(k=k||B,!!B&&(H(d,!0),L&&(a||$||!F&&ee))){const[X,U]=zi({nodeId:F,dragItems:d,nodeLookup:_});a==null||a(L,d,X,U),$==null||$(L,X,U),F||ee==null||ee(L,U)}}async function J(){if(!p)return;const{transform:C,panBy:N,autoPanSpeed:_,autoPanOnNodeDrag:T}=e();if(!T){f=!1,cancelAnimationFrame(l);return}const[D,te]=ju(v,p,_);(D!==0||te!==0)&&(i.x=(i.x??0)-D/C[2],i.y=(i.y??0)-te/C[2],await N({x:D,y:te})&&oe(i)),l=requestAnimationFrame(J)}function ue(C){var le;const{nodeLookup:N,multiSelectionActive:_,nodesDraggable:T,transform:D,snapGrid:te,snapToGrid:V,selectNodesOnDrag:$,onNodeDragStart:ee,onSelectionDragStart:A,unselectNodesAndEdges:H}=e();b=!0,(!$||!z)&&!_&&F&&((le=N.get(F))!=null&&le.selected||H()),z&&$&&F&&(t==null||t(F));const B=Mi(C.sourceEvent,{transform:D,snapGrid:te,snapToGrid:V,containerBounds:p});if(i=B,d=yw(N,T,B,F),d.size>0&&(n||ee||!F&&A)){const[he,ie]=zi({nodeId:F,dragItems:d,nodeLookup:N});n==null||n(C.sourceEvent,d,he,ie),ee==null||ee(C.sourceEvent,he,ie),F||A==null||A(C.sourceEvent,ie)}}const Z=q3().clickDistance(ne).on("start",C=>{const{domNode:N,nodeDragThreshold:_,transform:T,snapGrid:D,snapToGrid:te}=e();p=(N==null?void 0:N.getBoundingClientRect())||null,w=!1,k=!1,L=C.sourceEvent,_===0&&ue(C),i=Mi(C.sourceEvent,{transform:T,snapGrid:D,snapToGrid:te,containerBounds:p}),v=ln(C.sourceEvent,p)}).on("drag",C=>{const{autoPanOnNodeDrag:N,transform:_,snapGrid:T,snapToGrid:D,nodeDragThreshold:te,nodeLookup:V}=e(),$=Mi(C.sourceEvent,{transform:_,snapGrid:T,snapToGrid:D,containerBounds:p});if(L=C.sourceEvent,(C.sourceEvent.type==="touchmove"&&C.sourceEvent.touches.length>1||F&&!V.has(F))&&(w=!0),!w){if(!f&&N&&b&&(f=!0,J()),!b){const ee=ln(C.sourceEvent,p),A=ee.x-v.x,H=ee.y-v.y;Math.sqrt(A*A+H*H)>te&&ue(C)}(i.x!==$.xSnapped||i.y!==$.ySnapped)&&d&&b&&(v=ln(C.sourceEvent,p),oe($))}}).on("end",C=>{if(!(!b||w)&&(f=!1,b=!1,cancelAnimationFrame(l),d.size>0)){const{nodeLookup:N,updateNodePositions:_,onNodeDragStop:T,onSelectionDragStop:D}=e();if(k&&(_(d,!1),k=!1),o||T||!F&&D){const[te,V]=zi({nodeId:F,dragItems:d,nodeLookup:N,dragging:!1});o==null||o(C.sourceEvent,d,te,V),T==null||T(C.sourceEvent,te,V),F||D==null||D(C.sourceEvent,V)}}}).filter(C=>{const N=C.target;return!C.button&&(!I||!nc(N,`.${I}`,K))&&(!Y||nc(N,Y,K))});h.call(Z)}function G(){h==null||h.on(".drag",null)}return{update:O,destroy:G}}function Sw(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())Ka(o,ga(i))>0&&a.push(i);return a}const Lw=250;function Cw(t,e,n,a){var d,f;let o=[],i=1/0;const l=Sw(t,n,e+Lw);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}=Kn(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 rf(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,...Kn(l,f,f.position,!0)}:f}function nf(t,e){return t||(e!=null&&e.classList.contains("target")?"target":e!=null&&e.classList.contains("source")?"source":null)}function Ew(t,e){let n=null;return e?n=!0:t&&!e&&(n=!1),n}const af=()=>!0;function Mw(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:L,onConnectEnd:O,isValidConnection:G=af,onReconnectEnd:I,updateConnection:Y,getTransform:K,getFromHandle:z,autoPanSpeed:F,dragThreshold:ne=1,handleDomNode:oe}){const J=Uu(t.target);let ue=0,Z;const{x:C,y:N}=ln(t),_=nf(i,oe),T=d==null?void 0:d.getBoundingClientRect();let D=!1;if(!T||!_)return;const te=rf(o,_,a,f,e);if(!te)return;let V=ln(t,T),$=!1,ee=null,A=!1,H=null;function B(){if(!p||!T)return;const[q,P]=ju(V,T,F);h({x:q,y:P}),ue=requestAnimationFrame(B)}const le={...te,nodeId:o,type:_,position:te.position},he=f.get(o);let X={inProgress:!0,isValid:null,from:Kn(he,le,zt.Left,!0),fromHandle:le,fromPosition:le.position,fromNode:he,to:V,toHandle:null,toPosition:jl[le.position],toNode:null,pointer:V};function U(){D=!0,Y(X),k==null||k(t,{nodeId:o,handleId:a,handleType:_})}ne===0&&U();function W(q){if(!D){const{x:be,y:fe}=ln(q),Le=be-C,ke=fe-N;if(!(Le*Le+ke*ke>ne*ne))return;U()}if(!z()||!le){E(q);return}const P=K();V=ln(q,T),Z=Cw(lo(V,P,!1,[1,1]),n,f,le),$||(B(),$=!0);const M=of(q,{handle:Z,connectionMode:e,fromNodeId:o,fromHandleId:a,fromType:l?"target":"source",isValidConnection:G,doc:J,lib:v,flowId:b,nodeLookup:f});H=M.handleDomNode,ee=M.connection,A=Ew(!!Z,M.isValid);const j=f.get(o),re=j?Kn(j,le,zt.Left,!0):X.from,de={...X,from:re,isValid:A,to:M.toHandle&&A?Zo({x:M.toHandle.x,y:M.toHandle.y},P):V,toHandle:M.toHandle,toPosition:A&&M.toHandle?M.toHandle.position:jl[le.position],toNode:M.toHandle?f.get(M.toHandle.nodeId):null,pointer:V};Y(de),X=de}function E(q){if(!("touches"in q&&q.touches.length>0)){if(D){(Z||H)&&ee&&A&&(L==null||L(ee));const{inProgress:P,...M}=X,j={...M,toPosition:X.toHandle?X.toPosition:null};O==null||O(q,j),i&&(I==null||I(q,j))}w(),cancelAnimationFrame(ue),$=!1,A=!1,ee=null,H=null,J.removeEventListener("mousemove",W),J.removeEventListener("mouseup",E),J.removeEventListener("touchmove",W),J.removeEventListener("touchend",E)}}J.addEventListener("mousemove",W),J.addEventListener("mouseup",E),J.addEventListener("touchmove",W),J.addEventListener("touchend",E)}function of(t,{handle:e,connectionMode:n,fromNodeId:a,fromHandleId:o,fromType:i,doc:l,lib:d,flowId:f,isValidConnection:v=af,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}=ln(t),L=l.elementFromPoint(w,k),O=L!=null&&L.classList.contains(`${d}-flow__handle`)?L:h,G={handleDomNode:O,isValid:!1,connection:null,toHandle:null};if(O){const I=nf(void 0,O),Y=O.getAttribute("data-nodeid"),K=O.getAttribute("data-handleid"),z=O.classList.contains("connectable"),F=O.classList.contains("connectableend");if(!Y||!I)return G;const ne={source:b?Y:a,sourceHandle:b?K:o,target:b?a:Y,targetHandle:b?o:K};G.connection=ne;const J=z&&F&&(n===fa.Strict?b&&I==="source"||!b&&I==="target":Y!==a||K!==o);G.isValid=J&&v(ne),G.toHandle=rf(Y,I,K,p,n,!0)}return G}const ac={onPointerDown:Mw,isValid:of},ci=t=>({x:t.x,y:t.y,zoom:t.k}),Qi=({x:t,y:e,zoom:n})=>oi.translate(t,e).scale(n),Jn=(t,e)=>t.target.closest(`.${e}`),sf=(t,e)=>e===2&&Array.isArray(t)&&t.includes(2),zw=t=>((t*=2)<=1?t*t*t:(t-=2)*t*t+2)/2,Ni=(t,e=0,n=zw,a=()=>{})=>{const o=typeof e=="number"&&e>0;return o||a(),o?t.transition().duration(e).ease(n).on("end",a):t},lf=t=>{const e=t.ctrlKey&&Uo()?10:1;return-t.deltaY*(t.deltaMode===1?.05:t.deltaMode?1:.002)*e};function Qw({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 O=un(p),G=lf(p),I=b*Math.pow(2,G);a.scaleTo(n,I,O,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;!Uo()&&p.shiftKey&&o!==ia.Vertical&&(w=p.deltaY*h,k=0),a.translateBy(n,-(w/b)*i,-(k/b)*i,{internal:!0});const L=ci(n.property("__zoom"));clearTimeout(t.panScrollTimeout),t.isPanScrolling?(f==null||f(p,L),t.panScrollTimeout=setTimeout(()=>{v==null||v(p,L),t.isPanScrolling=!1},150)):(t.isPanScrolling=!0,d==null||d(p,L))}}function Nw({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 Tw({zoomPanValues:t,onDraggingChange:e,onPanZoomStart:n}){return a=>{var i,l,d;if((i=a.sourceEvent)!=null&&i.internal)return;const o=ci(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 Aw({zoomPanValues:t,panOnDrag:e,onPaneContextMenu:n,onTransformChange:a,onPanZoom:o}){return i=>{var l,d;t.usedRightMouseButton=!!(n&&sf(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,ci(i.transform)))}}function Iw({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&&sf(e,t.mouseButton??0)&&!t.usedRightMouseButton&&l.sourceEvent&&i(l.sourceEvent),t.usedRightMouseButton=!1,a(!1),o)){const f=ci(l.transform);t.prevViewport=f,clearTimeout(t.timerId),t.timerId=setTimeout(()=>{o==null||o(l.sourceEvent,f)},n?150:0)}}}function Ow({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 O;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"&&((O=b.touches)==null?void 0:O.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 L=Array.isArray(a)&&a.includes(b.button)||!b.button||b.button<=1;return(!b.ctrlKey||k)&&L}}function Pw({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=O5().scaleExtent([e,n]).translateExtent(a),h=an(t).call(b);I({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(lf);function L(Z,C){return h?new Promise(N=>{b==null||b.interpolate((C==null?void 0:C.interpolate)==="linear"?Na:No).transform(Ni(h,C==null?void 0:C.duration,C==null?void 0:C.ease,()=>N(!0)),Z)}):Promise.resolve(!1)}function O({noWheelClassName:Z,noPanClassName:C,onPaneContextMenu:N,userSelectionActive:_,panOnScroll:T,panOnDrag:D,panOnScrollMode:te,panOnScrollSpeed:V,preventScrolling:$,zoomOnPinch:ee,zoomOnScroll:A,zoomOnDoubleClick:H,zoomActivationKeyPressed:B,lib:le,onTransformChange:he,connectionInProgress:ie,paneClickDistance:X,selectionOnDrag:U}){_&&!v.isZoomingOrPanning&&G();const W=T&&!B&&!_;b.clickDistance(U?1/0:!wn(X)||X<0?0:X);const E=W?Qw({zoomPanValues:v,noWheelClassName:Z,d3Selection:h,d3Zoom:b,panOnScrollMode:te,panOnScrollSpeed:V,zoomOnPinch:ee,onPanZoomStart:l,onPanZoom:i,onPanZoomEnd:d}):Nw({noWheelClassName:Z,preventScrolling:$,d3ZoomHandler:w});if(h.on("wheel.zoom",E,{passive:!1}),!_){const P=Tw({zoomPanValues:v,onDraggingChange:f,onPanZoomStart:l});b.on("start",P);const M=Aw({zoomPanValues:v,panOnDrag:D,onPaneContextMenu:!!N,onPanZoom:i,onTransformChange:he});b.on("zoom",M);const j=Iw({zoomPanValues:v,panOnDrag:D,panOnScroll:T,onPaneContextMenu:N,onPanZoomEnd:d,onDraggingChange:f});b.on("end",j)}const q=Ow({zoomActivationKeyPressed:B,panOnDrag:D,zoomOnScroll:A,panOnScroll:T,zoomOnDoubleClick:H,zoomOnPinch:ee,userSelectionActive:_,noPanClassName:C,noWheelClassName:Z,lib:le,connectionInProgress:ie});b.filter(q),H?h.on("dblclick.zoom",k):h.on("dblclick.zoom",null)}function G(){b.on("zoom",null)}async function I(Z,C,N){const _=Qi(Z),T=b==null?void 0:b.constrain()(_,C,N);return T&&await L(T),new Promise(D=>D(T))}async function Y(Z,C){const N=Qi(Z);return await L(N,C),new Promise(_=>_(N))}function K(Z){if(h){const C=Qi(Z),N=h.property("__zoom");(N.k!==Z.zoom||N.x!==Z.x||N.y!==Z.y)&&(b==null||b.transform(h,C,null,{sync:!0}))}}function z(){const Z=h?Vu(h.node()):{x:0,y:0,k:1};return{x:Z.x,y:Z.y,zoom:Z.k}}function F(Z,C){return h?new Promise(N=>{b==null||b.interpolate((C==null?void 0:C.interpolate)==="linear"?Na:No).scaleTo(Ni(h,C==null?void 0:C.duration,C==null?void 0:C.ease,()=>N(!0)),Z)}):Promise.resolve(!1)}function ne(Z,C){return h?new Promise(N=>{b==null||b.interpolate((C==null?void 0:C.interpolate)==="linear"?Na:No).scaleBy(Ni(h,C==null?void 0:C.duration,C==null?void 0:C.ease,()=>N(!0)),Z)}):Promise.resolve(!1)}function oe(Z){b==null||b.scaleExtent(Z)}function J(Z){b==null||b.translateExtent(Z)}function ue(Z){const C=!wn(Z)||Z<0?0:Z;b==null||b.clickDistance(C)}return{update:O,destroy:G,setViewport:Y,setViewportConstrained:I,getViewport:z,scaleTo:F,scaleBy:ne,setScaleExtent:oe,setTranslateExtent:J,syncViewport:K,setClickDistance:ue}}var oc;(function(t){t.Line="line",t.Handle="handle"})(oc||(oc={}));function qs(){const t={};return[e=>{if(e&&!f0(t))throw new Error(e);return Xo(t)},e=>xs(t,e)]}const[Dw,Rw]=qs(),[Hw,Vw]=qs(),[Fw,qw]=qs();var Bw=m("<div><!></div>");function ha(t,e){rt(e,!0);let n=Pe(e,"id",3,null),a=Pe(e,"type",3,"source"),o=Pe(e,"position",19,()=>zt.Top),i=Pe(e,"isConnectableStart",3,!0),l=Pe(e,"isConnectableEnd",3,!0),d=Xe(e,["$$slots","$$events","$$legacy","id","type","position","style","class","isConnectable","isConnectableStart","isConnectableEnd","isValidConnection","onconnect","ondisconnect","children"]);const f=Dw("Handle must be used within a Custom Node component"),v=Hw("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=Un(),w=y(()=>h.ariaLabelConfig),k=null;Mc(()=>{if(e.onconnect||e.ondisconnect){h.edges;let C=h.connectionLookup.get(`${f}-${a()}${n()?`-${n()}`:""}`);if(k&&!D5(C,k)){const N=C??new Map;Zl(k,N,e.ondisconnect),Zl(N,k,e.onconnect)}k=new Map(C)}});let L=y(()=>{if(!h.connection.inProgress)return[!1,!1,!1,!1,null];const{fromHandle:C,toHandle:N,isValid:_}=h.connection,T=C&&C.nodeId===f&&C.type===a()&&C.id===n(),D=N&&N.nodeId===f&&N.type===a()&&N.id===n(),te=h.connectionMode===fa.Strict?(C==null?void 0:C.type)!==a():f!==(C==null?void 0:C.nodeId)||n()!==(C==null?void 0:C.id);return[!0,T,D,te,D&&_]}),O=y(()=>en(r(L),5)),G=y(()=>r(O)[0]),I=y(()=>r(O)[1]),Y=y(()=>r(O)[2]),K=y(()=>r(O)[3]),z=y(()=>r(O)[4]);function F(C){var _;const N=h.onbeforeconnect?h.onbeforeconnect(C):C;N&&(h.addEdge(N),(_=h.onconnect)==null||_.call(h,C))}function ne(C){const N=Gu(C);C.currentTarget&&(N&&C.button===0||!N)&&ac.onPointerDown(C,{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 T;return((T=h.isValidConnection)==null?void 0:T.call(h,..._))??!0}),updateConnection:h.updateConnection,cancelConnection:h.cancelConnection,panBy:h.panBy,onConnect:F,onConnectStart:h.onconnectstart,onConnectEnd:(..._)=>{var T;return(T=h.onconnectend)==null?void 0:T.call(h,..._)},getTransform:()=>[h.viewport.x,h.viewport.y,h.viewport.zoom],getFromHandle:()=>h.connection.fromHandle,dragThreshold:h.connectionDragThreshold,handleDomNode:C.currentTarget})}function oe(C){var H,B;if(!f||!h.clickConnectStartHandle&&!i())return;if(!h.clickConnectStartHandle){(H=h.onclickconnectstart)==null||H.call(h,C,{nodeId:f,handleId:n(),handleType:a()}),h.clickConnectStartHandle={nodeId:f,type:a(),id:n()};return}const N=Uu(C.target),_=e.isValidConnection??h.isValidConnection,{connectionMode:T,clickConnectStartHandle:D,flowId:te,nodeLookup:V}=h,{connection:$,isValid:ee}=ac.isValid(C,{handle:{nodeId:f,id:n(),type:a()},connectionMode:T,fromNodeId:D.nodeId,fromHandleId:D.id??null,fromType:D.type,isValidConnection:_,flowId:te,doc:N,lib:"svelte",nodeLookup:V});ee&&$&&F($);const A=structuredClone(Tc(h.connection));delete A.inProgress,A.toPosition=A.toHandle?A.toHandle.position:null,(B=h.onclickconnectend)==null||B.call(h,C,A),h.clickConnectStartHandle=null}var J=Bw(),ue=()=>{};Lr(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?oe:void 0,onkeypress:ue,style:e.style,role:"button","aria-label":r(w)["handle.ariaLabel"],tabindex:"-1",...d,[_s]:{valid:r(z),connectingto:r(Y),connectingfrom:r(I),source:!r(p),target:r(p),connectablestart:i(),connectableend:l(),connectable:r(b),connectionindicator:r(b)&&(!r(G)||r(K))&&(r(G)||h.clickConnectStartHandle?l():i())}}));var Z=c(J);tr(Z,()=>e.children??Jr),s(J),g(t,J),nt()}var Kw=m("<!> <!>",1);function cf(t,e){rt(e,!0);let n=Pe(e,"targetPosition",19,()=>zt.Top),a=Pe(e,"sourcePosition",19,()=>zt.Bottom);var o=Kw(),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()}}),Q(()=>{var f;return S(l,` ${((f=e.data)==null?void 0:f.label)??""} `)}),g(t,o),nt()}var jw=m(" <!>",1);function Zw(t,e){rt(e,!0);let n=Pe(e,"data",19,()=>({label:"Node"})),a=Pe(e,"sourcePosition",19,()=>zt.Bottom);Se();var o=jw(),i=ze(o),l=u(i);ha(l,{type:"source",get position(){return a()}}),Q(()=>{var d;return S(i,`${((d=n())==null?void 0:d.label)??""} `)}),g(t,o),nt()}var Uw=m(" <!>",1);function Ww(t,e){rt(e,!0);let n=Pe(e,"data",19,()=>({label:"Node"})),a=Pe(e,"targetPosition",19,()=>zt.Top);Se();var o=Uw(),i=ze(o),l=u(i);ha(l,{type:"target",get position(){return a()}}),Q(()=>{var d;return S(i,`${((d=n())==null?void 0:d.label)??""} `)}),g(t,o),nt()}function Gw(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 Ai(t,e){const n=y(Un),a=y(()=>r(n).domNode);let o;return r(a)?Ti(t,r(a),e):o=zc(()=>{Tt(()=>{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 Yw(){let t=xe(typeof window>"u");if(r(t)){const e=zc(()=>{Tt(()=>{x(t,!1),e==null||e()})})}return{get value(){return r(t)}}}const ic=t=>H5(t),$w=t=>qu(t);function pn(t){return t===void 0?void 0:`${t}px`}const Wo={ArrowUp:{x:0,y:-1},ArrowDown:{x:0,y:1},ArrowLeft:{x:-1,y:0},ArrowRight:{x:1,y:0}};var Xw=m("<div><!></div>");function Jw(t,e){rt(e,!0);let n=Pe(e,"x",3,0),a=Pe(e,"y",3,0),o=Pe(e,"selectEdgeOnClick",3,!1),i=Pe(e,"transparent",3,!1),l=Xe(e,["$$slots","$$events","$$legacy","x","y","width","height","selectEdgeOnClick","transparent","class","children"]);const d=Un(),f=Fw("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=Xw(),b=()=>{o()&&f&&d.handleEdgeSelection(f)};Lr(p,w=>({class:["svelte-flow__edge-label",{transparent:i()},e.class],tabindex:"-1",onclick:b,...l,[no]:w}),[()=>({display:Yw().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??Jr),s(p),Rr(p,(w,k)=>Ai==null?void 0:Ai(w,k),()=>"edge-labels"),g(t,p),nt()}var e6=Cr("<path></path>"),t6=Cr('<path fill="none"></path><!><!>',1);function di(t,e){let n=Pe(e,"interactionWidth",3,20),a=Xe(e,["$$slots","$$events","$$legacy","id","path","label","labelX","labelY","labelStyle","markerStart","markerEnd","style","interactionWidth","class"]);var o=t6(),i=ze(o),l=u(i);{var d=p=>{var b=e6();Lr(b,()=>({d:e.path,"stroke-opacity":0,"stroke-width":n(),fill:"none",class:"svelte-flow__edge-interaction",...a})),g(p,b)};R(l,p=>{n()>0&&p(d)})}var f=u(l);{var v=p=>{Jw(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();Q(()=>S(w,e.label)),g(b,w)},$$slots:{default:!0}})};R(f,p=>{e.label&&p(v)})}Q(()=>{Ce(i,"id",e.id),Ce(i,"d",e.path),Oe(i,0,Re(["svelte-flow__edge-path",e.class])),Ce(i,"marker-start",e.markerStart),Ce(i,"marker-end",e.markerEnd),_r(i,e.style)}),g(t,o)}function df(t,e){rt(e,!0);let n=y(()=>{var d;return Yu({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(()=>en(r(n),3)),o=y(()=>r(a)[0]),i=y(()=>r(a)[1]),l=y(()=>r(a)[2]);di(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}}),nt()}function r6(t,e){rt(e,!0);let n=y(()=>Ds({sourceX:e.sourceX,sourceY:e.sourceY,targetX:e.targetX,targetY:e.targetY,sourcePosition:e.sourcePosition,targetPosition:e.targetPosition})),a=y(()=>en(r(n),3)),o=y(()=>r(a)[0]),i=y(()=>r(a)[1]),l=y(()=>r(a)[2]);di(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}}),nt()}function n6(t,e){rt(e,!0);let n=y(()=>Xu({sourceX:e.sourceX,sourceY:e.sourceY,targetX:e.targetX,targetY:e.targetY})),a=y(()=>en(r(n),3)),o=y(()=>r(a)[0]),i=y(()=>r(a)[1]),l=y(()=>r(a)[2]);di(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}}),nt()}function a6(t,e){rt(e,!0);let n=y(()=>Ds({sourceX:e.sourceX,sourceY:e.sourceY,targetX:e.targetX,targetY:e.targetY,sourcePosition:e.sourcePosition,targetPosition:e.targetPosition,borderRadius:0})),a=y(()=>en(r(n),3)),o=y(()=>r(a)[0]),i=y(()=>r(a)[1]),l=y(()=>r(a)[2]);di(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}}),nt()}function o6(t,e,n,a){const o=new Map;return Os(t,{x:0,y:0,width:n,height:a},e,!0).forEach(i=>{o.set(i.id,i)}),o}function sc(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:O,transform:G,width:I,height:Y}=t;if(tw({sourceNode:h,targetNode:w,width:I,height:Y,transform:G}))O.set(h.id,h),O.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 L=lw({id:b.id,sourceNode:h,targetNode:w,sourceHandle:b.sourceHandle||null,targetHandle:b.targetHandle||null,connectionMode:i,onError:l});L&&p.set(b.id,{...n,...b,...L,zIndex:ew({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 uf={input:Zw,output:Ww,default:cf,group:Gw},ff={straight:n6,smoothstep:r6,default:df,step:a6};function i6(t,e,n,a,o,i){if(e&&!n&&a&&o){const l=ii(i,{filter:d=>!!((d.width||d.initialWidth)&&(d.height||d.initialHeight))});return Ps(l,a,o,.5,2,.1)}else return n??{x:0,y:0,zoom:1}}function s6(t){var n,a,o,i,l,d,f,v,p,b,h,w,k,L,O,G,I,Y,K,z,F,ne,oe,J,ue,Z,C,N,_,T,D,te,V,$,ee,A,H,B,le,he,ie,X,U,W,E,q,P,M,j,re,de,be,fe,Le,ke,me,ge,De,ce,se,ve,Te,Ae,we,Ne,Ee,Me,Qe,Ye,Ve,Je,lt,ct,qe,He,je;class e{constructor(){Be(this,n,y(()=>t.props.id??"1"));Be(this,a,xe(null));Be(this,o,xe(null));Be(this,i,xe(t.width??0));Be(this,l,xe(t.height??0));Be(this,d,xe(t.props.zIndexMode??"basic"));Be(this,f,y(()=>{var tt;const{nodesInitialized:ae}=gw(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}));Be(this,v,y(()=>this.panZoom!==null));Be(this,p,y(()=>(_w(this.connectionLookup,this.edgeLookup,t.edges),t.edges)));Nt(this,"_prevSelectedNodes",[]);Nt(this,"_prevSelectedNodeIds",new Set);Be(this,b,y(()=>{const ae=this._prevSelectedNodeIds.size,tt=new Set,$e=this.nodes.filter(Ze=>(Ze.selected&&(tt.add(Ze.id),this._prevSelectedNodeIds.delete(Ze.id)),Ze.selected));return(ae!==tt.size||this._prevSelectedNodeIds.size>0)&&(this._prevSelectedNodes=$e),this._prevSelectedNodeIds=tt,this._prevSelectedNodes}));Nt(this,"_prevSelectedEdges",[]);Nt(this,"_prevSelectedEdgeIds",new Set);Be(this,h,y(()=>{const ae=this._prevSelectedEdgeIds.size,tt=new Set,$e=this.edges.filter(Ze=>(Ze.selected&&(tt.add(Ze.id),this._prevSelectedEdgeIds.delete(Ze.id)),Ze.selected));return(ae!==tt.size||this._prevSelectedEdgeIds.size>0)&&(this._prevSelectedEdges=$e),this._prevSelectedEdgeIds=tt,this._prevSelectedEdges}));Nt(this,"selectionChangeHandlers",new Map);Nt(this,"nodeLookup",new Map);Nt(this,"parentLookup",new Map);Nt(this,"connectionLookup",new Map);Nt(this,"edgeLookup",new Map);Nt(this,"_prevVisibleEdges",new Map);Be(this,w,y(()=>{const{nodes:ae,_edges:tt,_prevVisibleEdges:$e,nodeLookup:Ze,connectionMode:ut,onerror:Ct,onlyRenderVisibleElements:Qt,defaultEdgeOptions:Et,zIndexMode:Lt}=this;let mt,_t;const wt={edges:tt,defaultEdgeOptions:Et,previousEdges:$e,nodeLookup:Ze,connectionMode:ut,elevateEdgesOnSelect:t.props.elevateEdgesOnSelect??!0,zIndexMode:Lt,onerror:Ct};if(Qt){const{viewport:Ot,width:$t,height:pr}=this,hr=[Ot.x,Ot.y,Ot.zoom];mt=o6(Ze,hr,$t,pr),_t=sc({...wt,onlyRenderVisible:!0,visibleNodes:mt,transform:hr,width:$t,height:pr})}else mt=this.nodeLookup,_t=sc(wt);return{nodes:mt,edges:_t}}));Be(this,k,y(()=>t.props.nodesDraggable??!0));Be(this,L,y(()=>t.props.nodesConnectable??!0));Be(this,O,y(()=>t.props.elementsSelectable??!0));Be(this,G,y(()=>t.props.nodesFocusable??!0));Be(this,I,y(()=>t.props.edgesFocusable??!0));Be(this,Y,y(()=>t.props.disableKeyboardA11y??!1));Be(this,K,y(()=>t.props.minZoom??.5));Be(this,z,y(()=>t.props.maxZoom??2));Be(this,F,y(()=>t.props.nodeOrigin??[0,0]));Be(this,ne,y(()=>t.props.nodeExtent??cs));Be(this,oe,y(()=>t.props.translateExtent??cs));Be(this,J,y(()=>t.props.defaultEdgeOptions??{}));Be(this,ue,y(()=>t.props.nodeDragThreshold??1));Be(this,Z,y(()=>t.props.autoPanOnNodeDrag??!0));Be(this,C,y(()=>t.props.autoPanOnConnect??!0));Be(this,N,y(()=>t.props.autoPanOnNodeFocus??!0));Be(this,_,y(()=>t.props.autoPanSpeed??15));Be(this,T,y(()=>t.props.connectionDragThreshold??1));Nt(this,"fitViewQueued",t.props.fitView??!1);Nt(this,"fitViewOptions",t.props.fitViewOptions);Nt(this,"fitViewResolver",null);Be(this,D,y(()=>t.props.snapGrid??null));Be(this,te,xe(!1));Be(this,V,xe(null));Be(this,$,xe(!1));Be(this,ee,xe(!1));Be(this,A,xe(!1));Be(this,H,xe(!1));Be(this,B,xe(!1));Be(this,le,xe(null));Be(this,he,xe(""));Be(this,ie,y(()=>t.props.selectionMode??Bo.Partial));Be(this,X,y(()=>({...uf,...t.props.nodeTypes})));Be(this,U,y(()=>({...ff,...t.props.edgeTypes})));Be(this,W,y(()=>t.props.noPanClass??"nopan"));Be(this,E,y(()=>t.props.noDragClass??"nodrag"));Be(this,q,y(()=>t.props.noWheelClass??"nowheel"));Be(this,P,y(()=>$5(t.props.ariaLabelConfig)));Be(this,M,xe(i6(this.nodesInitialized,t.props.fitView,t.props.initialViewport,this.width,this.height,this.nodeLookup)));Be(this,j,xe(ds));Be(this,re,y(()=>this._connection.inProgress?{...this._connection,to:lo(this._connection.to,[this.viewport.x,this.viewport.y,this.viewport.zoom])}:this._connection));Be(this,de,y(()=>t.props.connectionMode??fa.Strict));Be(this,be,y(()=>t.props.connectionRadius??20));Be(this,fe,y(()=>t.props.isValidConnection??(()=>!0)));Be(this,Le,y(()=>t.props.selectNodesOnDrag??!0));Be(this,ke,y(()=>t.props.defaultMarkerColor===void 0?"#b1b1b7":t.props.defaultMarkerColor));Be(this,me,y(()=>cw(t.edges,{defaultColor:this.defaultMarkerColor,id:this.flowId,defaultMarkerStart:this.defaultEdgeOptions.markerStart,defaultMarkerEnd:this.defaultEdgeOptions.markerEnd})));Be(this,ge,y(()=>t.props.onlyRenderVisibleElements??!1));Be(this,De,y(()=>t.props.onflowerror??Z5));Be(this,ce,y(()=>t.props.ondelete));Be(this,se,y(()=>t.props.onbeforedelete));Be(this,ve,y(()=>t.props.onbeforeconnect));Be(this,Te,y(()=>t.props.onconnect));Be(this,Ae,y(()=>t.props.onconnectstart));Be(this,we,y(()=>t.props.onconnectend));Be(this,Ne,y(()=>t.props.onbeforereconnect));Be(this,Ee,y(()=>t.props.onreconnect));Be(this,Me,y(()=>t.props.onreconnectstart));Be(this,Qe,y(()=>t.props.onreconnectend));Be(this,Ye,y(()=>t.props.clickConnect??!0));Be(this,Ve,y(()=>t.props.onclickconnectstart));Be(this,Je,y(()=>t.props.onclickconnectend));Be(this,lt,xe(null));Be(this,ct,y(()=>t.props.onselectiondrag));Be(this,qe,y(()=>t.props.onselectiondragstart));Be(this,He,y(()=>t.props.onselectiondragstop));Nt(this,"resolveFitView",async()=>{var ae;this.panZoom&&(await B5({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)});Nt(this,"_prefersDark",new yv("(prefers-color-scheme: dark)",t.props.colorModeSSR==="dark"));Be(this,je,y(()=>t.props.colorMode==="system"?this._prefersDark.current?"dark":"light":t.props.colorMode??"light"))}get flowId(){return r(pe(this,n))}set flowId(ae){x(pe(this,n),ae)}get domNode(){return r(pe(this,a))}set domNode(ae){x(pe(this,a),ae)}get panZoom(){return r(pe(this,o))}set panZoom(ae){x(pe(this,o),ae)}get width(){return r(pe(this,i))}set width(ae){x(pe(this,i),ae)}get height(){return r(pe(this,l))}set height(ae){x(pe(this,l),ae)}get zIndexMode(){return r(pe(this,d))}set zIndexMode(ae){x(pe(this,d),ae)}get nodesInitialized(){return r(pe(this,f))}set nodesInitialized(ae){x(pe(this,f),ae)}get viewportInitialized(){return r(pe(this,v))}set viewportInitialized(ae){x(pe(this,v),ae)}get _edges(){return r(pe(this,p))}set _edges(ae){x(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){x(pe(this,b),ae)}get selectedEdges(){return r(pe(this,h))}set selectedEdges(ae){x(pe(this,h),ae)}get visible(){return r(pe(this,w))}set visible(ae){x(pe(this,w),ae)}get nodesDraggable(){return r(pe(this,k))}set nodesDraggable(ae){x(pe(this,k),ae)}get nodesConnectable(){return r(pe(this,L))}set nodesConnectable(ae){x(pe(this,L),ae)}get elementsSelectable(){return r(pe(this,O))}set elementsSelectable(ae){x(pe(this,O),ae)}get nodesFocusable(){return r(pe(this,G))}set nodesFocusable(ae){x(pe(this,G),ae)}get edgesFocusable(){return r(pe(this,I))}set edgesFocusable(ae){x(pe(this,I),ae)}get disableKeyboardA11y(){return r(pe(this,Y))}set disableKeyboardA11y(ae){x(pe(this,Y),ae)}get minZoom(){return r(pe(this,K))}set minZoom(ae){x(pe(this,K),ae)}get maxZoom(){return r(pe(this,z))}set maxZoom(ae){x(pe(this,z),ae)}get nodeOrigin(){return r(pe(this,F))}set nodeOrigin(ae){x(pe(this,F),ae)}get nodeExtent(){return r(pe(this,ne))}set nodeExtent(ae){x(pe(this,ne),ae)}get translateExtent(){return r(pe(this,oe))}set translateExtent(ae){x(pe(this,oe),ae)}get defaultEdgeOptions(){return r(pe(this,J))}set defaultEdgeOptions(ae){x(pe(this,J),ae)}get nodeDragThreshold(){return r(pe(this,ue))}set nodeDragThreshold(ae){x(pe(this,ue),ae)}get autoPanOnNodeDrag(){return r(pe(this,Z))}set autoPanOnNodeDrag(ae){x(pe(this,Z),ae)}get autoPanOnConnect(){return r(pe(this,C))}set autoPanOnConnect(ae){x(pe(this,C),ae)}get autoPanOnNodeFocus(){return r(pe(this,N))}set autoPanOnNodeFocus(ae){x(pe(this,N),ae)}get autoPanSpeed(){return r(pe(this,_))}set autoPanSpeed(ae){x(pe(this,_),ae)}get connectionDragThreshold(){return r(pe(this,T))}set connectionDragThreshold(ae){x(pe(this,T),ae)}get snapGrid(){return r(pe(this,D))}set snapGrid(ae){x(pe(this,D),ae)}get dragging(){return r(pe(this,te))}set dragging(ae){x(pe(this,te),ae)}get selectionRect(){return r(pe(this,V))}set selectionRect(ae){x(pe(this,V),ae)}get selectionKeyPressed(){return r(pe(this,$))}set selectionKeyPressed(ae){x(pe(this,$),ae)}get multiselectionKeyPressed(){return r(pe(this,ee))}set multiselectionKeyPressed(ae){x(pe(this,ee),ae)}get deleteKeyPressed(){return r(pe(this,A))}set deleteKeyPressed(ae){x(pe(this,A),ae)}get panActivationKeyPressed(){return r(pe(this,H))}set panActivationKeyPressed(ae){x(pe(this,H),ae)}get zoomActivationKeyPressed(){return r(pe(this,B))}set zoomActivationKeyPressed(ae){x(pe(this,B),ae)}get selectionRectMode(){return r(pe(this,le))}set selectionRectMode(ae){x(pe(this,le),ae)}get ariaLiveMessage(){return r(pe(this,he))}set ariaLiveMessage(ae){x(pe(this,he),ae)}get selectionMode(){return r(pe(this,ie))}set selectionMode(ae){x(pe(this,ie),ae)}get nodeTypes(){return r(pe(this,X))}set nodeTypes(ae){x(pe(this,X),ae)}get edgeTypes(){return r(pe(this,U))}set edgeTypes(ae){x(pe(this,U),ae)}get noPanClass(){return r(pe(this,W))}set noPanClass(ae){x(pe(this,W),ae)}get noDragClass(){return r(pe(this,E))}set noDragClass(ae){x(pe(this,E),ae)}get noWheelClass(){return r(pe(this,q))}set noWheelClass(ae){x(pe(this,q),ae)}get ariaLabelConfig(){return r(pe(this,P))}set ariaLabelConfig(ae){x(pe(this,P),ae)}get _viewport(){return r(pe(this,M))}set _viewport(ae){x(pe(this,M),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,j))}set _connection(ae){x(pe(this,j),ae)}get connection(){return r(pe(this,re))}set connection(ae){x(pe(this,re),ae)}get connectionMode(){return r(pe(this,de))}set connectionMode(ae){x(pe(this,de),ae)}get connectionRadius(){return r(pe(this,be))}set connectionRadius(ae){x(pe(this,be),ae)}get isValidConnection(){return r(pe(this,fe))}set isValidConnection(ae){x(pe(this,fe),ae)}get selectNodesOnDrag(){return r(pe(this,Le))}set selectNodesOnDrag(ae){x(pe(this,Le),ae)}get defaultMarkerColor(){return r(pe(this,ke))}set defaultMarkerColor(ae){x(pe(this,ke),ae)}get markers(){return r(pe(this,me))}set markers(ae){x(pe(this,me),ae)}get onlyRenderVisibleElements(){return r(pe(this,ge))}set onlyRenderVisibleElements(ae){x(pe(this,ge),ae)}get onerror(){return r(pe(this,De))}set onerror(ae){x(pe(this,De),ae)}get ondelete(){return r(pe(this,ce))}set ondelete(ae){x(pe(this,ce),ae)}get onbeforedelete(){return r(pe(this,se))}set onbeforedelete(ae){x(pe(this,se),ae)}get onbeforeconnect(){return r(pe(this,ve))}set onbeforeconnect(ae){x(pe(this,ve),ae)}get onconnect(){return r(pe(this,Te))}set onconnect(ae){x(pe(this,Te),ae)}get onconnectstart(){return r(pe(this,Ae))}set onconnectstart(ae){x(pe(this,Ae),ae)}get onconnectend(){return r(pe(this,we))}set onconnectend(ae){x(pe(this,we),ae)}get onbeforereconnect(){return r(pe(this,Ne))}set onbeforereconnect(ae){x(pe(this,Ne),ae)}get onreconnect(){return r(pe(this,Ee))}set onreconnect(ae){x(pe(this,Ee),ae)}get onreconnectstart(){return r(pe(this,Me))}set onreconnectstart(ae){x(pe(this,Me),ae)}get onreconnectend(){return r(pe(this,Qe))}set onreconnectend(ae){x(pe(this,Qe),ae)}get clickConnect(){return r(pe(this,Ye))}set clickConnect(ae){x(pe(this,Ye),ae)}get onclickconnectstart(){return r(pe(this,Ve))}set onclickconnectstart(ae){x(pe(this,Ve),ae)}get onclickconnectend(){return r(pe(this,Je))}set onclickconnectend(ae){x(pe(this,Je),ae)}get clickConnectStartHandle(){return r(pe(this,lt))}set clickConnectStartHandle(ae){x(pe(this,lt),ae)}get onselectiondrag(){return r(pe(this,ct))}set onselectiondrag(ae){x(pe(this,ct),ae)}get onselectiondragstart(){return r(pe(this,qe))}set onselectiondragstart(ae){x(pe(this,qe),ae)}get onselectiondragstop(){return r(pe(this,He))}set onselectiondragstop(ae){x(pe(this,He),ae)}get colorMode(){return r(pe(this,je))}set colorMode(ae){x(pe(this,je),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=ds,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,L=new WeakMap,O=new WeakMap,G=new WeakMap,I=new WeakMap,Y=new WeakMap,K=new WeakMap,z=new WeakMap,F=new WeakMap,ne=new WeakMap,oe=new WeakMap,J=new WeakMap,ue=new WeakMap,Z=new WeakMap,C=new WeakMap,N=new WeakMap,_=new WeakMap,T=new WeakMap,D=new WeakMap,te=new WeakMap,V=new WeakMap,$=new WeakMap,ee=new WeakMap,A=new WeakMap,H=new WeakMap,B=new WeakMap,le=new WeakMap,he=new WeakMap,ie=new WeakMap,X=new WeakMap,U=new WeakMap,W=new WeakMap,E=new WeakMap,q=new WeakMap,P=new WeakMap,M=new WeakMap,j=new WeakMap,re=new WeakMap,de=new WeakMap,be=new WeakMap,fe=new WeakMap,Le=new WeakMap,ke=new WeakMap,me=new WeakMap,ge=new WeakMap,De=new WeakMap,ce=new WeakMap,se=new WeakMap,ve=new WeakMap,Te=new WeakMap,Ae=new WeakMap,we=new WeakMap,Ne=new WeakMap,Ee=new WeakMap,Me=new WeakMap,Qe=new WeakMap,Ye=new WeakMap,Ve=new WeakMap,Je=new WeakMap,lt=new WeakMap,ct=new WeakMap,qe=new WeakMap,He=new WeakMap,je=new WeakMap,new e}function Un(){const t=Xo(vs);if(!t)throw new Error("To call useStore outside of <SvelteFlow /> you need to wrap your component in a <SvelteFlowProvider />");return t.getStore()}const vs=Symbol();function l6(t){const e=s6(t);function n(Z){e.nodeTypes={...uf,...Z}}function a(Z){e.edgeTypes={...ff,...Z}}function o(Z){e.edges=aw(Z,e.edges)}const i=(Z,C=!1)=>{e.nodes=e.nodes.map(N=>{if(e.connection.inProgress&&e.connection.fromNode.id===N.id){const T=e.nodeLookup.get(N.id);T&&(e.connection={...e.connection,from:Kn(T,e.connection.fromHandle,zt.Left,!0)})}const _=Z.get(N.id);return _?{...N,position:_.position,dragging:C}:N})};function l(Z){var T,D,te;const{changes:C,updatedInternals:N}=mw(Z,e.nodeLookup,e.parentLookup,e.domNode,e.nodeOrigin,e.nodeExtent,e.zIndexMode);if(!N)return;fw(e.nodeLookup,e.parentLookup,{nodeOrigin:e.nodeOrigin,nodeExtent:e.nodeExtent,zIndexMode:e.zIndexMode}),e.fitViewQueued&&e.resolveFitView();const _=new Map;for(const V of C){const $=(T=e.nodeLookup.get(V.id))==null?void 0:T.internals.userNode;if(!$)continue;const ee={...$};switch(V.type){case"dimensions":{const A={...ee.measured,...V.dimensions};V.setAttributes&&(ee.width=((D=V.dimensions)==null?void 0:D.width)??ee.width,ee.height=((te=V.dimensions)==null?void 0:te.height)??ee.height),ee.measured=A;break}case"position":ee.position=V.position??ee.position;break}_.set(V.id,ee)}e.nodes=e.nodes.map(V=>_.get(V.id)??V)}function d(Z){const C=e.fitViewResolver??Promise.withResolvers();return e.fitViewQueued=!0,e.fitViewOptions=Z,e.fitViewResolver=C,e.nodes=[...e.nodes],C.promise}async function f(Z,C,N){const _=typeof(N==null?void 0:N.zoom)<"u"?N.zoom:e.maxZoom,T=e.panZoom;return T?(await T.setViewport({x:e.width/2-Z*_,y:e.height/2-C*_,zoom:_},{duration:N==null?void 0:N.duration,ease:N==null?void 0:N.ease,interpolate:N==null?void 0:N.interpolate}),Promise.resolve(!0)):Promise.resolve(!1)}function v(Z,C){const N=e.panZoom;return N?N.scaleBy(Z,C):Promise.resolve(!1)}function p(Z){return v(1.2,Z)}function b(Z){return v(1/1.2,Z)}function h(Z){const C=e.panZoom;C&&(C.setScaleExtent([Z,e.maxZoom]),e.minZoom=Z)}function w(Z){const C=e.panZoom;C&&(C.setScaleExtent([e.minZoom,Z]),e.maxZoom=Z)}function k(Z){const C=e.panZoom;C&&(C.setTranslateExtent(Z),e.translateExtent=Z)}function L(Z,C=null){let N=!1;const _=Z.map(T=>(C?C.has(T.id):!0)&&T.selected?(N=!0,{...T,selected:!1}):T);return[N,_]}function O(Z){const C=Z!=null&&Z.nodes?new Set(Z.nodes.map(V=>V.id)):null,[N,_]=L(e.nodes,C);N&&(e.nodes=_);const T=Z!=null&&Z.edges?new Set(Z.edges.map(V=>V.id)):null,[D,te]=L(e.edges,T);D&&(e.edges=te)}function G(Z){const C=e.multiselectionKeyPressed;e.nodes=e.nodes.map(N=>{const _=Z.includes(N.id),T=C&&N.selected||_;return!!N.selected!==T?{...N,selected:T}:N}),C||O({nodes:[]})}function I(Z){const C=e.multiselectionKeyPressed;e.edges=e.edges.map(N=>{const _=Z.includes(N.id),T=C&&N.selected||_;return!!N.selected!==T?{...N,selected:T}:N}),C||O({edges:[]})}function Y(Z,C,N){const _=e.nodeLookup.get(Z);if(!_){console.warn("012",Ba.error012(Z));return}e.selectionRect=null,e.selectionRectMode=null,_.selected?(C||_.selected&&e.multiselectionKeyPressed)&&(O({nodes:[_],edges:[]}),requestAnimationFrame(()=>N==null?void 0:N.blur())):G([Z])}function K(Z){const C=e.edgeLookup.get(Z);if(!C){console.warn("012",Ba.error012(Z));return}(C.selectable||e.elementsSelectable&&typeof C.selectable>"u")&&(e.selectionRect=null,e.selectionRectMode=null,C.selected?C.selected&&e.multiselectionKeyPressed&&O({nodes:[],edges:[C]}):I([Z]))}function z(Z,C){const{nodeExtent:N,snapGrid:_,nodeOrigin:T,nodeLookup:D,nodesDraggable:te,onerror:V}=e,$=new Map,ee=(_==null?void 0:_[0])??5,A=(_==null?void 0:_[1])??5,H=Z.x*ee*C,B=Z.y*A*C;for(const le of D.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+B};_&&(ie=so(ie,_));const{position:X,positionAbsolute:U}=Bu({nodeId:le.id,nextPosition:ie,nodeLookup:D,nodeExtent:N,nodeOrigin:T,onError:V});le.position=X,le.internals.positionAbsolute=U,$.set(le.id,le)}i($)}function F(Z){return xw({delta:Z,panZoom:e.panZoom,transform:[e.viewport.x,e.viewport.y,e.viewport.zoom],translateExtent:e.translateExtent,width:e.width,height:e.height})}const ne=Z=>{e._connection={...Z}};function oe(){e._connection=ds}function J(){e.resetStoreValues(),O()}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:O,addSelectedNodes:G,addSelectedEdges:I,handleNodeSelection:Y,handleEdgeSelection:K,moveSelectedNodes:z,panBy:F,updateConnection:ne,cancelConnection:oe,reset:J})}function Ii(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=Pw({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 c6=m('<div class="svelte-flow__zoom svelte-flow__container"><!></div>');function d6(t,e){rt(e,!0);let n=Pe(e,"store",15),a=y(()=>n().panActivationKeyPressed||e.panOnDrag),o=y(()=>n().panActivationKeyPressed||e.panOnScroll);const{viewport:i}=n();let l=!1;Tt(()=>{var v;!l&&n().viewportInitialized&&((v=e.oninit)==null||v.call(e),l=!0)});var d=c6(),f=c(d);tr(f,()=>e.children),s(d),Rr(d,(v,p)=>Ii==null?void 0:Ii(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),nt()}function lc(t,e){return n=>{n.target===e&&(t==null||t(n))}}function cc(t){return e=>{const n=t.has(e.id);return!!e.selected!==n?{...e,selected:n}:e}}function dc(t,e){if(t.size!==e.size)return!1;for(const n of t)if(!e.has(n))return!1;return!0}var u6=m("<div><!></div>");function f6(t,e){rt(e,!0);let n=Pe(e,"store",15),a=Pe(e,"panOnDrag",3,!0),o=Pe(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 _,T;if(l=i==null?void 0:i.getBoundingClientRect(),!l)return;const J=oe.target===i,ue=!J&&!!oe.target.closest(".nokey"),Z=e.selectionOnDrag&&J||n().selectionKeyPressed;if(ue||!r(p)||!Z||oe.button!==0||!oe.isPrimary)return;(T=(_=oe.target)==null?void 0:_.setPointerCapture)==null||T.call(_,oe.pointerId),h=!1;const{x:C,y:N}=ln(oe,l);n(n().selectionRect={width:0,height:0,startX:C,startY:N,x:C,y:N},!0),J||(oe.stopPropagation(),oe.preventDefault())}function k(oe){var D;if(!r(p)||!l||!n().selectionRect)return;const J=ln(oe,l),{startX:ue=0,startY:Z=0}=n().selectionRect;if(!h){const te=n().selectionKeyPressed?0:o();if(Math.hypot(J.x-ue,J.y-Z)<=te)return;n().unselectNodesAndEdges(),(D=e.onselectionstart)==null||D.call(e,oe)}h=!0;const C={...n().selectionRect,x:J.x<ue?J.x:ue,y:J.y<Z?J.y:Z,width:Math.abs(J.x-ue),height:Math.abs(J.y-Z)},N=d,_=f;d=new Set(Os(n().nodeLookup,C,[n().viewport.x,n().viewport.y,n().viewport.zoom],n().selectionMode===Bo.Partial,!0).map(te=>te.id));const T=n().defaultEdgeOptions.selectable??!0;f=new Set;for(const te of d){const V=n().connectionLookup.get(te);if(V)for(const{edgeId:$}of V.values()){const ee=n().edgeLookup.get($);ee&&(ee.selectable??T)&&f.add($)}}dc(N,d)||n(n().nodes=n().nodes.map(cc(d)),!0),dc(_,f)||n(n().edges=n().edges.map(cc(f)),!0),n(n().selectionRectMode="user",!0),n(n().selectionRect=C,!0)}function L(oe){var J,ue,Z;oe.button===0&&((ue=(J=oe.target)==null?void 0:J.releasePointerCapture)==null||ue.call(J,oe.pointerId),!h&&oe.target===i&&(I==null||I(oe)),n(n().selectionRect=null,!0),h&&n(n().selectionRectMode=d.size>0?"nodes":null,!0),h&&((Z=e.onselectionend)==null||Z.call(e,oe)))}const O=oe=>{var J;if(Array.isArray(r(v))&&r(v).includes(2)){oe.preventDefault();return}(J=e.onpanecontextmenu)==null||J.call(e,{event:oe})},G=oe=>{h&&(oe.stopPropagation(),h=!1)};function I(oe){var J;if(h||n().connection.inProgress){h=!1;return}(J=e.onpaneclick)==null||J.call(e,{event:oe}),n().unselectNodesAndEdges(),n(n().selectionRectMode=null,!0),n(n().selectionRect=null,!0)}var Y=u6();let K;var z=y(()=>r(b)?void 0:lc(I,i)),F=y(()=>lc(O,i)),ne=c(Y);tr(ne,()=>e.children),s(Y),Xr(Y,oe=>i=oe,()=>i),Q(oe=>K=Oe(Y,1,"svelte-flow__pane svelte-flow__container",null,K,oe),[()=>({draggable:a()===!0||Array.isArray(a())&&a().includes(0),dragging:n().dragging,selection:r(p)})]),_e("click",Y,function(...oe){var J;(J=r(z))==null||J.apply(this,oe)}),Sn("pointerdown",Y,function(...oe){var J;(J=r(b)?w:void 0)==null||J.apply(this,oe)},!0),_e("pointermove",Y,function(...oe){var J;(J=r(b)?k:void 0)==null||J.apply(this,oe)}),_e("pointerup",Y,function(...oe){var J;(J=r(b)?L:void 0)==null||J.apply(this,oe)}),_e("contextmenu",Y,function(...oe){var J;(J=r(F))==null||J.apply(this,oe)}),Sn("click",Y,function(...oe){var J;(J=r(b)?G:void 0)==null||J.apply(this,oe)},!0),g(t,Y),nt()}nr(["click","pointermove","pointerup","contextmenu"]);var v6=m('<div class="svelte-flow__viewport xyflow__viewport svelte-flow__container"><!></div>');function g6(t,e){rt(e,!0);var n=v6();let a;var o=c(n);tr(o,()=>e.children),s(n),Q(()=>a=_r(n,"",a,{transform:`translate(${e.store.viewport.x??""}px, ${e.store.viewport.y??""}px) scale(${e.store.viewport.zoom??""})`})),g(t,n),nt()}function sa(t,e){const{store:n,onDrag:a,onDragStart:o,onDragStop:i,onNodeMouseDown:l}=e,d=kw({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 p6=m('<div aria-live="assertive" aria-atomic="true" class="a11y-live-msg svelte-1r7ybe1"> </div>'),h6=m('<div class="a11y-hidden svelte-1r7ybe1"> </div> <div class="a11y-hidden svelte-1r7ybe1"> </div> <!>',1);function b6(t,e){rt(e,!0);var n=h6(),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=p6(),b=c(p,!0);s(p),Q(()=>{Ce(p,"id",`${m6}-${e.store.flowId}`),S(b,e.store.ariaLiveMessage)}),g(v,p)};R(d,v=>{e.store.disableKeyboardA11y||v(f)})}Q(()=>{Ce(a,"id",`${vf}-${e.store.flowId}`),S(o,e.store.disableKeyboardA11y?e.store.ariaLabelConfig["node.a11yDescription.default"]:e.store.ariaLabelConfig["node.a11yDescription.keyboardDisabled"]),Ce(i,"id",`${gf}-${e.store.flowId}`),S(l,e.store.ariaLabelConfig["edge.a11yDescription.default"])}),g(t,n),nt()}const vf="svelte-flow__node-desc",gf="svelte-flow__edge-desc",m6="svelte-flow__aria-live";var x6=m("<div><!></div>");function _6(t,e){rt(e,!0);let n=Pe(e,"store",15),a=y(()=>Dr(e.node.data,()=>({}),!0)),o=y(()=>Dr(e.node.selected,!1)),i=y(()=>e.node.draggable),l=y(()=>e.node.selectable),d=y(()=>Dr(e.node.deletable,!0)),f=y(()=>e.node.connectable),v=y(()=>e.node.focusable),p=y(()=>Dr(e.node.hidden,!1)),b=y(()=>Dr(e.node.dragging,!1)),h=y(()=>Dr(e.node.style,"")),w=y(()=>e.node.class),k=y(()=>Dr(e.node.type,"default")),L=y(()=>e.node.parentId),O=y(()=>e.node.sourcePosition),G=y(()=>e.node.targetPosition),I=y(()=>Dr(e.node.measured,()=>({width:0,height:0}),!0).width),Y=y(()=>Dr(e.node.measured,()=>({width:0,height:0}),!0).height),K=y(()=>e.node.initialWidth),z=y(()=>e.node.initialHeight),F=y(()=>e.node.width),ne=y(()=>e.node.height),oe=y(()=>e.node.dragHandle),J=y(()=>Dr(e.node.internals.z,0)),ue=y(()=>e.node.internals.positionAbsolute.x),Z=y(()=>e.node.internals.positionAbsolute.y),C=y(()=>e.node.internals.userNode),{id:N}=e.node,_=y(()=>r(i)??n().nodesDraggable),T=y(()=>r(l)??n().elementsSelectable),D=y(()=>r(f)??n().nodesConnectable),te=y(()=>G5(e.node)),V=y(()=>!!e.node.internals.handleBounds),$=y(()=>r(te)&&r(V)),ee=y(()=>r(v)??n().nodesFocusable);function A(fe){return n().parentLookup.has(fe)}let H=y(()=>A(N)),B=xe(null),le=null,he=r(k),ie=r(O),X=r(G),U=y(()=>n().nodeTypes[r(k)]??cf),W=y(()=>n().ariaLabelConfig),E={get value(){return r(D)}};Rw(N),Vw(E);let q=y(()=>{const fe=r(I)===void 0?r(F)??r(K):r(F),Le=r(Y)===void 0?r(ne)??r(z):r(ne);if(!(fe===void 0&&Le===void 0&&r(h)===void 0))return`${r(h)};${fe?`width:${pn(fe)};`:""}${Le?`height:${pn(Le)};`:""}`});Tt(()=>{(r(k)!==he||r(O)!==ie||r(G)!==X)&&r(B)!==null&&requestAnimationFrame(()=>{r(B)!==null&&n().updateNodeInternals(new Map([[N,{id:N,nodeElement:r(B),force:!0}]]))}),he=r(k),ie=r(O),X=r(G)}),Tt(()=>{e.resizeObserver&&(!r($)||r(B)!==le)&&(le&&e.resizeObserver.unobserve(le),r(B)&&e.resizeObserver.observe(r(B)),le=r(B))}),$o(()=>{var fe;le&&((fe=e.resizeObserver)==null||fe.unobserve(le))});function P(fe){var Le;r(T)&&(!n().selectNodesOnDrag||!r(_)||n().nodeDragThreshold>0)&&n().handleNodeSelection(N),(Le=e.onnodeclick)==null||Le.call(e,{node:r(C),event:fe})}function M(fe){if(!(Wu(fe)||n().disableKeyboardA11y))if(Fu.includes(fe.key)&&r(T)){const Le=fe.key==="Escape";n().handleNodeSelection(N,Le,r(B))}else r(_)&&e.node.selected&&Object.prototype.hasOwnProperty.call(Wo,fe.key)&&(fe.preventDefault(),n(n().ariaLiveMessage=r(W)["node.a11yDescription.ariaLiveMessage"]({direction:fe.key.replace("Arrow","").toLowerCase(),x:~~e.node.internals.positionAbsolute.x,y:~~e.node.internals.positionAbsolute.y}),!0),n().moveSelectedNodes(Wo[fe.key],fe.shiftKey?4:1))}const j=()=>{var ge;if(n().disableKeyboardA11y||!n().autoPanOnNodeFocus||!((ge=r(B))!=null&&ge.matches(":focus-visible")))return;const{width:fe,height:Le,viewport:ke}=n();Os(new Map([[N,e.node]]),{x:0,y:0,width:fe,height:Le},[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=xt(),de=ze(re);{var be=fe=>{var Le=x6();Lr(Le,()=>({"data-id":N,class:["svelte-flow__node",`svelte-flow__node-${r(k)}`,r(w)],style:r(q),onclick:P,onpointerenter:e.onnodepointerenter?me=>e.onnodepointerenter({node:r(C),event:me}):void 0,onpointerleave:e.onnodepointerleave?me=>e.onnodepointerleave({node:r(C),event:me}):void 0,onpointermove:e.onnodepointermove?me=>e.onnodepointermove({node:r(C),event:me}):void 0,oncontextmenu:e.onnodecontextmenu?me=>e.onnodecontextmenu({node:r(C),event:me}):void 0,onkeydown:r(ee)?M:void 0,onfocus:r(ee)?j: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:`${vf}-${n().flowId}`,...e.node.domAttributes,[_s]:{dragging:r(b),selected:r(o),draggable:r(_),connectable:r(D),selectable:r(T),nopan:r(_),parent:r(H)},[no]:{"z-index":r(J),transform:`translate(${r(ue)??""}px, ${r(Z)??""}px)`,visibility:r(te)?"visible":"hidden"}}));var ke=c(Le);ba(ke,()=>r(U),(me,ge)=>{ge(me,{get data(){return r(a)},get id(){return N},get selected(){return r(o)},get selectable(){return r(T)},get deletable(){return r(d)},get sourcePosition(){return r(O)},get targetPosition(){return r(G)},get zIndex(){return r(J)},get dragging(){return r(b)},get draggable(){return r(_)},get dragHandle(){return r(oe)},get parentId(){return r(L)},get type(){return r(k)},get isConnectable(){return r(D)},get positionAbsoluteX(){return r(ue)},get positionAbsoluteY(){return r(Z)},get width(){return r(F)},get height(){return r(ne)}})}),s(Le),Rr(Le,(me,ge)=>sa==null?void 0:sa(me,ge),()=>({nodeId:N,isSelectable:r(T),disabled:!r(_),handleSelector:r(oe),noDragClass:n().noDragClass,nodeClickDistance:e.nodeClickDistance,onNodeMouseDown:n().handleNodeSelection,onDrag:(me,ge,De,ce)=>{var se;(se=e.onnodedrag)==null||se.call(e,{event:me,targetNode:De,nodes:ce})},onDragStart:(me,ge,De,ce)=>{var se;(se=e.onnodedragstart)==null||se.call(e,{event:me,targetNode:De,nodes:ce})},onDragStop:(me,ge,De,ce)=>{var se;(se=e.onnodedragstop)==null||se.call(e,{event:me,targetNode:De,nodes:ce})},store:n()})),Xr(Le,me=>x(B,me),()=>r(B)),g(fe,Le)};R(de,fe=>{r(p)||fe(be)})}g(t,re),nt()}var y6=m('<div class="svelte-flow__nodes"></div>');function w6(t,e){rt(e,!0);let n=Pe(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)});$o(()=>{a==null||a.disconnect()});var o=y6();Ge(o,21,()=>n().visible.nodes.values(),i=>i.id,(i,l)=>{_6(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),nt()}var k6=Cr('<svg class="svelte-flow__edge-wrapper"><g><!></g></svg>');function S6(t,e){rt(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(()=>Dr(e.edge.animated,!1)),h=y(()=>Dr(e.edge.selected,!1)),w=y(()=>e.edge.label),k=y(()=>e.edge.labelStyle),L=y(()=>Dr(e.edge.data,()=>({}),!0)),O=y(()=>e.edge.style),G=y(()=>e.edge.interactionWidth),I=y(()=>Dr(e.edge.type,"default")),Y=y(()=>e.edge.sourceHandle),K=y(()=>e.edge.targetHandle),z=y(()=>e.edge.markerStart),F=y(()=>e.edge.markerEnd),ne=y(()=>e.edge.selectable),oe=y(()=>e.edge.focusable),J=y(()=>Dr(e.edge.deletable,!0)),ue=y(()=>e.edge.hidden),Z=y(()=>e.edge.zIndex),C=y(()=>e.edge.class),N=y(()=>e.edge.ariaLabel);qw(r(n));let _=null,T=y(()=>r(ne)??e.store.elementsSelectable),D=y(()=>r(oe)??e.store.edgesFocusable),te=y(()=>e.store.edgeTypes[r(I)]??df),V=y(()=>r(z)?`url('#${fs(r(z),e.store.flowId)}')`:void 0),$=y(()=>r(F)?`url('#${fs(r(F),e.store.flowId)}')`:void 0);function ee(ie){var U;const X=e.store.edgeLookup.get(r(n));X&&(r(T)&&e.store.handleEdgeSelection(r(n)),(U=e.onedgeclick)==null||U.call(e,{event:ie,edge:X}))}function A(ie,X){const U=e.store.edgeLookup.get(r(n));U&&X({event:ie,edge:U})}function H(ie){if(!e.store.disableKeyboardA11y&&Fu.includes(ie.key)&&r(T)){const{unselectNodesAndEdges:X,addSelectedEdges:U}=e.store;ie.key==="Escape"?(_==null||_.blur(),X({edges:[e.edge]})):U([r(n)])}}var B=xt(),le=ze(B);{var he=ie=>{var X=k6();let U;var W=c(X);Lr(W,()=>({class:["svelte-flow__edge",r(C)],"data-id":r(n),onclick:ee,oncontextmenu:e.onedgecontextmenu?q=>{A(q,e.onedgecontextmenu)}:void 0,onpointerenter:e.onedgepointerenter?q=>{A(q,e.onedgepointerenter)}:void 0,onpointerleave:e.onedgepointerleave?q=>{A(q,e.onedgepointerleave)}:void 0,"aria-label":r(N)===null?void 0:r(N)?r(N):`Edge from ${r(a)} to ${r(o)}`,"aria-describedby":r(D)?`${gf}-${e.store.flowId}`:void 0,role:e.edge.ariaRole??(r(D)?"group":"img"),"aria-roledescription":"edge",onkeydown:r(D)?H:void 0,tabindex:r(D)?0:void 0,...e.edge.domAttributes,[_s]:{animated:r(b),selected:r(h),selectable:r(T)}}));var E=c(W);ba(E,()=>r(te),(q,P)=>{P(q,{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(L)},get style(){return r(O)},get interactionWidth(){return r(G)},get selectable(){return r(T)},get deletable(){return r(J)},get type(){return r(I)},get sourceHandleId(){return r(Y)},get targetHandleId(){return r(K)},get markerStart(){return r(V)},get markerEnd(){return r($)}})}),s(W),Xr(W,q=>_=q,()=>_),s(X),Q(()=>U=_r(X,"",U,{"z-index":r(Z)})),g(ie,X)};R(le,ie=>{r(ue)||ie(he)})}g(t,B),nt()}var L6=Cr("<defs></defs>");function C6(t,e){rt(e,!1);const n=Un();Ic();var a=L6();Ge(a,5,()=>n.markers,o=>o.id,(o,i)=>{Q6(o,st(()=>r(i)))}),s(a),g(t,a),nt()}var E6=Cr('<polyline class="arrow" fill="none" stroke-linecap="round" stroke-linejoin="round" points="-5,-4 0,0 -5,4"></polyline>'),M6=Cr('<polyline class="arrowclosed" stroke-linecap="round" stroke-linejoin="round" points="-5,-4 0,0 -5,4 -5,-4"></polyline>'),z6=Cr('<marker class="svelte-flow__arrowhead" viewBox="-10 -10 20 20" refX="0" refY="0"><!></marker>');function Q6(t,e){rt(e,!0);let n=Pe(e,"width",3,12.5),a=Pe(e,"height",3,12.5),o=Pe(e,"markerUnits",3,"strokeWidth"),i=Pe(e,"orient",3,"auto-start-reverse"),l=Pe(e,"color",3,"none");var d=z6(),f=c(d);{var v=b=>{var h=E6();let w;Q(()=>{Ce(h,"stroke-width",e.strokeWidth),w=_r(h,"",w,{stroke:l()})}),g(b,h)},p=b=>{var h=M6();let w;Q(()=>{Ce(h,"stroke-width",e.strokeWidth),w=_r(h,"",w,{stroke:l(),fill:l()})}),g(b,h)};R(f,b=>{e.type===Ko.Arrow?b(v):e.type===Ko.ArrowClosed&&b(p,1)})}s(d),Q(()=>{Ce(d,"id",e.id),Ce(d,"markerWidth",`${n()}`),Ce(d,"markerHeight",`${a()}`),Ce(d,"markerUnits",o()),Ce(d,"orient",i())}),g(t,d),nt()}var N6=m('<div class="svelte-flow__edges"><svg class="svelte-flow__marker"><!></svg> <!></div>');function T6(t,e){rt(e,!0);let n=Pe(e,"store",15);var a=N6(),o=c(a),i=c(o);C6(i,{}),s(o);var l=u(o,2);Ge(l,17,()=>n().visible.edges.values(),d=>d.id,(d,f)=>{S6(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),nt()}var A6=m('<div class="svelte-flow__selection svelte-3lfgml"></div>');function pf(t,e){rt(e,!0);let n=Pe(e,"x",3,0),a=Pe(e,"y",3,0),o=Pe(e,"width",3,0),i=Pe(e,"height",3,0),l=Pe(e,"isVisible",3,!0);var d=xt(),f=ze(d);{var v=p=>{var b=A6();let h;Q(w=>h=_r(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)};R(f,p=>{l()&&p(v)})}g(t,d),nt()}var I6=m("<div><!></div>");function O6(t,e){rt(e,!0);let n=xe(void 0);Tt(()=>{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=ii(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(Wo,b.key)&&(b.preventDefault(),e.store.moveSelectedNodes(Wo[b.key],b.shiftKey?4:1))}var d=xt(),f=ze(d);{var v=b=>{var h=I6();let w;var k=c(h);pf(k,{width:"100%",height:"100%",x:0,y:0}),s(h),Rr(h,(L,O)=>sa==null?void 0:sa(L,O),()=>({disabled:!1,store:e.store,onDrag:(L,O,G,I)=>{var Y;(Y=e.onnodedrag)==null||Y.call(e,{event:L,targetNode:null,nodes:I})},onDragStart:(L,O,G,I)=>{var Y;(Y=e.onnodedragstart)==null||Y.call(e,{event:L,targetNode:null,nodes:I})},onDragStop:(L,O,G,I)=>{var Y;(Y=e.onnodedragstop)==null||Y.call(e,{event:L,targetNode:null,nodes:I})}})),Xr(h,L=>x(n,L),()=>r(n)),Q(L=>{Oe(h,1,Re(["svelte-flow__selection-wrapper",e.store.noPanClass]),"svelte-148ck9l"),Ce(h,"role",e.store.disableKeyboardA11y?void 0:"button"),Ce(h,"tabindex",e.store.disableKeyboardA11y?void 0:-1),w=_r(h,"",w,L)},[()=>({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(...L){var O;(O=e.store.disableKeyboardA11y?void 0:l)==null||O.apply(this,L)}),g(b,h)},p=y(()=>e.store.selectionRectMode==="nodes"&&r(a)&&wn(r(a).x)&&wn(r(a).y));R(f,b=>{r(p)&&b(v)})}g(t,d),nt()}nr(["contextmenu","click","keydown"]);function P6(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:L,preventDefault:O,enabled:G}=h;if(G){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 Y=Array.isArray(w)?w:[w];let K=!1;for(const z of Y)if((Array.isArray(z)?z:[z]).reduce((ne,oe)=>ne|P6(oe),0)===v){K=!0;break}if(!K)continue}O&&d.preventDefault();const I={node:t,trigger:h,originalEvent:d};t.dispatchEvent(new CustomEvent("shortcut",{detail:I})),L==null||L(I)}}}let l;return n&&(l=qi(t,o,i)),{update:d=>{const{enabled:f=!0,type:v="keydown"}=d;n&&(!f||o!==v)?l==null||l():!n&&f&&(l=qi(t,v,i)),n=f,o=v,a=d.trigger},destroy:()=>{l==null||l()}}}function D6(){const t=y(Un),e=i=>{var v,p;const l=ic(i)?i:r(t).nodeLookup.get(i.id),d=l.parentId?Y5(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=sn(()=>r(t).nodes).map(f=>{if(f.id===i){const v=typeof l=="function"?l(f):l;return d!=null&&d.replace&&ic(v)?v:{...f,...v}}return f})}function a(i,l,d={replace:!1}){r(t).edges=sn(()=>r(t).edges).map(f=>{if(f.id===i){const v=typeof l=="function"?l(f):l;return d.replace&&$w(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:uc(r(t).nodeLookup,i),getEdge:i=>r(t).edgeLookup.get(i),getEdges:i=>i===void 0?r(t).edges:uc(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:()=>Tc(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=Ps(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=Wl(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=Ka(h,v);return l&&w>0||w>=h.width*h.height||w>=v.width*v.height}):[]},isNodeIntersecting:(i,l,d=!0)=>{const v=Wl(i)?i:e(i);if(!v)return!1;const p=Ka(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 K5({nodesToRemove:i,edgesToRemove:l,nodes:r(t).nodes,edges:r(t).edges,onBeforeDelete:r(t).onbeforedelete});return d&&(r(t).nodes=sn(()=>r(t).nodes).filter(b=>!d.some(({id:h})=>h===b.id))),f&&(r(t).edges=sn(()=>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=Zo(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=>V5(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 uc(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 R6(t,e){rt(e,!0);let n=Pe(e,"store",15),a=Pe(e,"selectionKey",3,"Shift"),o=Pe(e,"multiSelectionKey",19,()=>Uo()?"Meta":"Control"),i=Pe(e,"deleteKey",3,"Backspace"),l=Pe(e,"panActivationKey",3," "),d=Pe(e,"zoomActivationKey",19,()=>Uo()?"Meta":"Control"),{deleteElements:f}=D6();function v(L){return L!==null&&typeof L=="object"}function p(L){return v(L)?L.modifier||[]:[]}function b(L){return L==null?"":v(L)?L.key:L}function h(L,O){return(Array.isArray(L)?L:[L]).map(I=>{const Y=b(I);return{key:Y,modifier:p(I),enabled:Y!==null,callback:O}})}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 L=n().nodes.filter(G=>G.selected),O=n().edges.filter(G=>G.selected);f({nodes:L,edges:O})}Sn("blur",Br,w),Sn("contextmenu",Br,w),Rr(Br,(L,O)=>rr==null?void 0:rr(L,O),()=>({trigger:h(a(),()=>n(n().selectionKeyPressed=!0,!0)),type:"keydown"})),Rr(Br,(L,O)=>rr==null?void 0:rr(L,O),()=>({trigger:h(a(),()=>n(n().selectionKeyPressed=!1,!0)),type:"keyup"})),Rr(Br,(L,O)=>rr==null?void 0:rr(L,O),()=>({trigger:h(o(),()=>{n(n().multiselectionKeyPressed=!0,!0)}),type:"keydown"})),Rr(Br,(L,O)=>rr==null?void 0:rr(L,O),()=>({trigger:h(o(),()=>n(n().multiselectionKeyPressed=!1,!0)),type:"keyup"})),Rr(Br,(L,O)=>rr==null?void 0:rr(L,O),()=>({trigger:h(i(),L=>{!(L.originalEvent.ctrlKey||L.originalEvent.metaKey||L.originalEvent.shiftKey)&&!Wu(L.originalEvent)&&(n(n().deleteKeyPressed=!0,!0),k())}),type:"keydown"})),Rr(Br,(L,O)=>rr==null?void 0:rr(L,O),()=>({trigger:h(i(),()=>n(n().deleteKeyPressed=!1,!0)),type:"keyup"})),Rr(Br,(L,O)=>rr==null?void 0:rr(L,O),()=>({trigger:h(l(),()=>n(n().panActivationKeyPressed=!0,!0)),type:"keydown"})),Rr(Br,(L,O)=>rr==null?void 0:rr(L,O),()=>({trigger:h(l(),()=>n(n().panActivationKeyPressed=!1,!0)),type:"keyup"})),Rr(Br,(L,O)=>rr==null?void 0:rr(L,O),()=>({trigger:h(d(),()=>n(n().zoomActivationKeyPressed=!0,!0)),type:"keydown"})),Rr(Br,(L,O)=>rr==null?void 0:rr(L,O),()=>({trigger:h(d(),()=>n(n().zoomActivationKeyPressed=!1,!0)),type:"keyup"})),nt()}var H6=Cr('<path fill="none" class="svelte-flow__connection-path"></path>'),V6=Cr('<svg class="svelte-flow__connectionline"><g><!></g></svg>');function F6(t,e){rt(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]=Yu(l);return d}case Mn.Straight:{const[d]=Xu(l);return d}case Mn.Step:case Mn.SmoothStep:{const[d]=Ds({...l,borderRadius:e.type===Mn.Step?0:void 0});return d}}});var a=xt(),o=ze(a);{var i=l=>{var d=V6(),f=c(d),v=c(f);{var p=h=>{var w=xt(),k=ze(w);ba(k,()=>e.LineComponent,(L,O)=>{O(L,{})}),g(h,w)},b=h=>{var w=H6();Q(()=>{Ce(w,"d",r(n)),_r(w,e.style)}),g(h,w)};R(v,h=>{e.LineComponent?h(p):h(b,-1)})}s(f),s(d),Q(h=>{Ce(d,"width",e.store.width),Ce(d,"height",e.store.height),_r(d,e.containerStyle),Oe(f,0,h)},[()=>Re(["svelte-flow__connection",R5(e.store.connection.isValid)])]),g(l,d)};R(o,l=>{e.store.connection.inProgress&&l(i)})}g(t,a),nt()}var q6=m("<div><!></div>");function hf(t,e){rt(e,!0);let n=Pe(e,"position",3,"top-right"),a=Xe(e,["$$slots","$$events","$$legacy","position","style","class","children"]),o=y(()=>`${n()}`.split("-"));var i=q6();Lr(i,d=>({class:d,style:e.style,...a}),[()=>["svelte-flow__panel",e.class,...r(o)]]);var l=c(i);tr(l,()=>e.children??Jr),s(i),g(t,i),nt()}var B6=m('<a href="https://svelteflow.dev" target="_blank" rel="noopener noreferrer" aria-label="Svelte Flow attribution">Svelte Flow</a>');function K6(t,e){rt(e,!0);let n=Pe(e,"position",3,"bottom-right");var a=xt(),o=ze(a);{var i=l=>{hf(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=B6();g(d,v)},$$slots:{default:!0}})};R(o,l=>{var d;(d=e.proOptions)!=null&&d.hideAttribution||l(i)})}g(t,a),nt()}var j6=m("<div><!></div>");function Z6(t,e){rt(e,!0);let n=Pe(e,"domNode",15),a=Pe(e,"clientWidth",15),o=Pe(e,"clientHeight",15),i=y(()=>e.rest.class),l=y(()=>v0(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=j6();Lr(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??Jr),s(f),Xr(f,p=>n(p),()=>n()),nl(f,"clientHeight",o),nl(f,"clientWidth",a),g(t,f),nt()}var U6=m('<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),W6=m("<!> <!>",1),G6=m("<!> <!> <!> <!> <!>",1);function Y6(t,e){rt(e,!0);let n=Pe(e,"paneClickDistance",3,1),a=Pe(e,"nodeClickDistance",3,1),o=Pe(e,"panOnScrollMode",19,()=>ia.Free),i=Pe(e,"preventScrolling",3,!0),l=Pe(e,"zoomOnScroll",3,!0),d=Pe(e,"zoomOnDoubleClick",3,!0),f=Pe(e,"zoomOnPinch",3,!0),v=Pe(e,"panOnScroll",3,!1),p=Pe(e,"panOnScrollSpeed",3,.5),b=Pe(e,"panOnDrag",3,!0),h=Pe(e,"selectionOnDrag",3,!1),w=Pe(e,"connectionLineType",19,()=>Mn.Bezier),k=Pe(e,"nodes",31,()=>qt([])),L=Pe(e,"edges",31,()=>qt([])),O=Pe(e,"viewport",15,void 0),G=Xe(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"]),I=l6({props:G,width:e.width,height:e.height,get nodes(){return k()},set nodes(K){k(K)},get edges(){return L()},set edges(K){L(K)},get viewport(){return O()},set viewport(K){O(K)}});const Y=Xo(vs);Y&&Y.setStore&&Y.setStore(I),xs(vs,{provider:!1,getStore(){return I}}),Tt(()=>{var z;const K={nodes:I.selectedNodes,edges:I.selectedEdges};(z=sn(()=>e.onselectionchange))==null||z(K);for(const F of I.selectionChangeHandlers.values())F(K)}),$o(()=>{I.reset()}),Z6(t,{get colorMode(){return I.colorMode},get width(){return e.width},get height(){return e.height},get rest(){return G},get domNode(){return I.domNode},set domNode(K){I.domNode=K},get clientWidth(){return I.width},set clientWidth(K){I.width=K},get clientHeight(){return I.height},set clientHeight(K){I.height=K},children:(K,z)=>{var F=G6(),ne=ze(F);R6(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 I},set store(C){I=C}});var oe=u(ne,2);d6(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 I},set store(C){I=C},children:(C,N)=>{f6(C,{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 I},set store(_){I=_},children:(_,T)=>{var D=W6(),te=ze(D);g6(te,{get store(){return I},set store($){I=$},children:($,ee)=>{var A=U6(),H=u(ze(A),2);T6(H,{get onedgeclick(){return e.onedgeclick},get onedgecontextmenu(){return e.onedgecontextmenu},get onedgepointerenter(){return e.onedgepointerenter},get onedgepointerleave(){return e.onedgepointerleave},get store(){return I},set store(ie){I=ie}});var B=u(H,4);F6(B,{get type(){return w()},get LineComponent(){return e.connectionLineComponent},get containerStyle(){return e.connectionLineContainerStyle},get style(){return e.connectionLineStyle},get store(){return I},set store(ie){I=ie}});var le=u(B,2);w6(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 I},set store(ie){I=ie}});var he=u(le,2);O6(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 I},set store(ie){I=ie}}),Se(2),g($,A)},$$slots:{default:!0}});var V=u(te,2);{let $=y(()=>!!(I.selectionRect&&I.selectionRectMode==="user")),ee=y(()=>{var le;return(le=I.selectionRect)==null?void 0:le.width}),A=y(()=>{var le;return(le=I.selectionRect)==null?void 0:le.height}),H=y(()=>{var le;return(le=I.selectionRect)==null?void 0:le.x}),B=y(()=>{var le;return(le=I.selectionRect)==null?void 0:le.y});pf(V,{get isVisible(){return r($)},get width(){return r(ee)},get height(){return r(A)},get x(){return r(H)},get y(){return r(B)}})}g(_,D)},$$slots:{default:!0}})},$$slots:{default:!0}});var J=u(oe,2);K6(J,{get proOptions(){return e.proOptions},get position(){return e.attributionPosition}});var ue=u(J,2);b6(ue,{get store(){return I}});var Z=u(ue,2);tr(Z,()=>e.children??Jr),g(K,F)},$$slots:{default:!0}}),nt()}var $6=m("<button><!></button>");function xo(t,e){let n=Xe(e,["$$slots","$$events","$$legacy","class","bgColor","bgColorHover","color","colorHover","borderColor","onclick","children"]);var a=$6();Lr(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??Jr),s(a),g(t,a)}var X6=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 J6(t){var e=X6();g(t,e)}var ek=Cr('<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 5"><path d="M0 0h32v4.2H0z"></path></svg>');function tk(t){var e=ek();g(t,e)}var rk=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 nk(t){var e=rk();g(t,e)}var ak=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 ok(t){var e=ak();g(t,e)}var ik=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 sk(t){var e=ik();g(t,e)}var lk=m("<!> <!>",1),ck=m("<!> <!> <!> <!> <!> <!>",1);function dk(t,e){rt(e,!0);let n=Pe(e,"position",3,"bottom-left"),a=Pe(e,"orientation",3,"vertical"),o=Pe(e,"showZoom",3,!0),i=Pe(e,"showFitView",3,!0),l=Pe(e,"showLock",3,!0),d=Xe(e,["$$slots","$$events","$$legacy","position","orientation","showZoom","showFitView","showLock","style","class","buttonBgColor","buttonBgColorHover","buttonColor","buttonColorHover","buttonBorderColor","fitViewOptions","children","before","after"]),f=y(Un);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 L=()=>{r(f).zoomIn()},O=()=>{r(f).zoomOut()},G=()=>{r(f).fitView(e.fitViewOptions)},I=()=>{let Y=!r(p);r(f).nodesDraggable=Y,r(f).nodesConnectable=Y,r(f).elementsSelectable=Y};{let Y=y(()=>["svelte-flow__controls",r(k),e.class]);hf(t,st({get class(){return r(Y)},get position(){return n()},"data-testid":"svelte-flow__controls",get"aria-label"(){return r(w)["controls.ariaLabel"]},get style(){return e.style}},()=>d,{children:(K,z)=>{var F=ck(),ne=ze(F);{var oe=$=>{var ee=xt(),A=ze(ee);tr(A,()=>e.before),g($,ee)};R(ne,$=>{e.before&&$(oe)})}var J=u(ne,2);{var ue=$=>{var ee=lk(),A=ze(ee);xo(A,st({onclick:L,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:(B,le)=>{J6(B)},$$slots:{default:!0}}));var H=u(A,2);xo(H,st({onclick:O,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:(B,le)=>{tk(B)},$$slots:{default:!0}})),g($,ee)};R(J,$=>{o()&&$(ue)})}var Z=u(J,2);{var C=$=>{xo($,st({class:"svelte-flow__controls-fitview",onclick:G,get title(){return r(w)["controls.fitView.ariaLabel"]},get"aria-label"(){return r(w)["controls.fitView.ariaLabel"]}},()=>v,{children:(ee,A)=>{nk(ee)},$$slots:{default:!0}}))};R(Z,$=>{i()&&$(C)})}var N=u(Z,2);{var _=$=>{xo($,st({class:"svelte-flow__controls-interactive",onclick:I,get title(){return r(w)["controls.interactive.ariaLabel"]},get"aria-label"(){return r(w)["controls.interactive.ariaLabel"]}},()=>v,{children:(ee,A)=>{var H=xt(),B=ze(H);{var le=ie=>{sk(ie)},he=ie=>{ok(ie)};R(B,ie=>{r(p)?ie(le):ie(he,-1)})}g(ee,H)},$$slots:{default:!0}}))};R(N,$=>{l()&&$(_)})}var T=u(N,2);{var D=$=>{var ee=xt(),A=ze(ee);tr(A,()=>e.children),g($,ee)};R(T,$=>{e.children&&$(D)})}var te=u(T,2);{var V=$=>{var ee=xt(),A=ze(ee);tr(A,()=>e.after),g($,ee)};R(te,$=>{e.after&&$(V)})}g(K,F)},$$slots:{default:!0}}))}nt()}var kn;(function(t){t.Lines="lines",t.Dots="dots",t.Cross="cross"})(kn||(kn={}));var uk=Cr("<circle></circle>");function fk(t,e){var n=uk();Q(()=>{Ce(n,"cx",e.radius),Ce(n,"cy",e.radius),Ce(n,"r",e.radius),Oe(n,0,Re(["svelte-flow__background-pattern","dots",e.class]))}),g(t,n)}var vk=Cr("<path></path>");function gk(t,e){rt(e,!0);var n=vk();Q(()=>{Ce(n,"stroke-width",e.lineWidth),Ce(n,"d",`M${e.dimensions[0]/2} 0 V${e.dimensions[1]} M0 ${e.dimensions[1]/2} H${e.dimensions[0]}`),Oe(n,0,Re(["svelte-flow__background-pattern",e.variant,e.class]))}),g(t,n),nt()}const pk={[kn.Dots]:1,[kn.Lines]:1,[kn.Cross]:6};var hk=Cr('<svg data-testid="svelte-flow__background"><pattern patternUnits="userSpaceOnUse"><!></pattern><rect x="0" y="0" width="100%" height="100%"></rect></svg>');function bk(t,e){rt(e,!0);let n=Pe(e,"variant",19,()=>kn.Dots),a=Pe(e,"gap",3,20),o=Pe(e,"lineWidth",3,1),i=y(Un),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??pk[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=hk();let L;var O=c(k),G=c(O);{var I=z=>{{let F=y(()=>r(b)/2);fk(z,{get radius(){return r(F)},get class(){return e.patternClass}})}},Y=z=>{gk(z,{get dimensions(){return r(h)},get variant(){return n()},get lineWidth(){return o()},get class(){return e.patternClass}})};R(G,z=>{r(l)?z(I):z(Y,-1)})}s(O);var K=u(O);s(k),Q(()=>{Oe(k,0,Re(["svelte-flow__background","svelte-flow__container",e.class])),L=_r(k,"",L,{"--xy-background-color-props":e.bgColor,"--xy-background-pattern-color-props":e.patternColor}),Ce(O,"id",r(v)),Ce(O,"x",r(i).viewport.x%r(p)[0]),Ce(O,"y",r(i).viewport.y%r(p)[1]),Ce(O,"width",r(p)[0]),Ce(O,"height",r(p)[1]),Ce(O,"patternTransform",`translate(-${r(w)[0]},-${r(w)[1]})`),Ce(K,"fill",`url(#${r(v)})`)}),g(t,k),nt()}const mk={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)]"}},fc={comfortable:"md",compact:"sm"},xk={true:{root:"cursor-pointer"},false:{root:""}},_k={true:{root:"bg-foreground/10",title:"font-medium text-foreground"},false:{root:""}},yk=qr({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:mk,interactive:xk,selected:_k},defaultVariants:{size:"md",interactive:!1,selected:!1}});var wk=m("<span><!></span>"),kk=m("<span> </span>"),Sk=m("<span> </span>"),Lk=m("<!> <!>",1),Ck=m("<span><!></span>"),Ek=m("<!> <span><!></span> <!>",1);function Mk(t,e){rt(e,!0);const n=Pe(e,"selected",3,!1),a=Xe(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?fc[e.density]:"md")),f=y(()=>yk({size:r(d),interactive:r(i),selected:n()}));Tt(()=>{e.density!==void 0&&(`${e.density}`,`${fc[e.density]}`,void 0)});var v=xt(),p=ze(v);Jo(p,()=>r(o),!1,(b,h)=>{Lr(b,F=>({...a,...r(l),class:F,"data-size":r(d),"aria-current":n()&&r(o)==="a"?"true":void 0}),[()=>r(i)?ws({ink:"inherit",selected:n(),class:r(f).root({class:e.class})}):r(f).root({class:e.class})]);var w=Ek(),k=ze(w);{var L=F=>{var ne=wk(),oe=c(ne);tr(oe,()=>e.leading),s(ne),Q(J=>Oe(ne,1,J),[()=>Re(r(f).leading())]),g(F,ne)};R(k,F=>{e.leading&&F(L)})}var O=u(k,2),G=c(O);{var I=F=>{var ne=xt(),oe=ze(ne);tr(oe,()=>e.children),g(F,ne)},Y=F=>{var ne=Lk(),oe=ze(ne);{var J=C=>{var N=kk(),_=c(N,!0);s(N),Q(T=>{Oe(N,1,T),S(_,e.title)},[()=>Re(r(f).title())]),g(C,N)};R(oe,C=>{e.title&&C(J)})}var ue=u(oe,2);{var Z=C=>{var N=Sk(),_=c(N,!0);s(N),Q(T=>{Oe(N,1,T),S(_,e.description)},[()=>Re(r(f).description())]),g(C,N)};R(ue,C=>{e.description&&C(Z)})}g(F,ne)};R(G,F=>{e.children?F(I):F(Y,-1)})}s(O);var K=u(O,2);{var z=F=>{var ne=Ck(),oe=c(ne);tr(oe,()=>e.trailing),s(ne),Q(J=>Oe(ne,1,J),[()=>Re(r(f).trailing())]),g(F,ne)};R(K,F=>{e.trailing&&F(z)})}Q(F=>Oe(O,1,F),[()=>Re(r(f).text())]),g(h,w)}),g(t,v),nt()}const vc={true:{root:"border-foreground bg-foreground/10 font-medium text-foreground"},false:{root:"border-transparent bg-transparent text-ink-muted"}},zk={true:{root:"pointer-events-none opacity-50"},false:{root:""}},_o=qr({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:vc,active:{true:vc.true,false:{}},disabled:zk},defaultVariants:{current:!1,disabled:!1}});var Qk=m('<span aria-hidden="true"><!></span>'),Nk=m("<span><!></span>"),Tk=m("<span><!></span> <!> <!>",1);function Ak(t,e){rt(e,!0);const n=Pe(e,"current",3,!1),a=Pe(e,"disabled",3,!1),o=Xe(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");Tt(()=>{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=xt(),p=ze(v);Jo(p,()=>r(d),!1,(b,h)=>{Lr(b,F=>({...o,...r(f),"data-nav-item":!0,class:F,"aria-current":r(i)?r(l):void 0,"aria-disabled":a()?"true":void 0}),[()=>ws({selected:r(i),class:_o({current:r(i),disabled:a()}).root({class:e.class})})]);var w=Tk(),k=ze(w),L=c(k);{var O=F=>{var ne=xt(),oe=ze(ne);tr(oe,()=>e.children),g(F,ne)},G=F=>{var ne=bt();Q(()=>S(ne,e.label??"")),g(F,ne)};R(L,F=>{e.children?F(O):F(G,-1)})}s(k);var I=u(k,2);{var Y=F=>{var ne=Qk(),oe=c(ne);tr(oe,()=>e.icon),s(ne),Q(J=>Oe(ne,1,J),[()=>Re(_o().icon())]),g(F,ne)};R(I,F=>{e.icon&&F(Y)})}var K=u(I,2);{var z=F=>{var ne=Nk(),oe=c(ne);tr(oe,()=>e.trailing),s(ne),Q(J=>Oe(ne,1,J),[()=>Re(_o().trailing())]),g(F,ne)};R(K,F=>{e.trailing&&F(z)})}Q(F=>Oe(k,1,F),[()=>Re(_o().label())]),g(h,w)}),g(t,v),nt()}const gc={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"}},Ik="border-transparent bg-primary text-on-primary",Ok={neutral:"",info:"",success:"",warning:"",danger:""},Pk={tinted:"",filled:"",outline:"",neutral:"",primary:""},Dk={sm:"px-2.5 py-0.5 text-xs",md:"px-[var(--reddb-spatial-inset-sm)] py-1 text-sm"},Rk=qr({base:"inline-flex items-center gap-1.5 rounded-full border leading-tight whitespace-nowrap",variants:{tone:Ok,variant:Pk,size:Dk},compoundVariants:[...Object.entries(gc).flatMap(([t,e])=>Object.entries(e).map(([n,a])=>({variant:t,tone:n,class:a}))),...Object.entries(gc.tinted).map(([t,e])=>({variant:"neutral",tone:t,class:e})),{variant:"primary",class:Ik}],defaultVariants:{tone:"neutral",variant:"tinted",size:"md"}}),Hk=qr({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 Vk=m('<button type="button" data-pill-dismiss=""><span aria-hidden="true">&times;</span></button>'),Fk=m("<span><!> <!></span>");function In(t,e){rt(e,!0);const n=Pe(e,"tone",3,"neutral"),a=Pe(e,"variant",3,"tinted"),o=Pe(e,"size",3,"md"),i=Pe(e,"dismissLabel",3,"Remove"),l=Xe(e,["$$slots","$$events","$$legacy","tone","variant","size","ondismiss","onDismiss","dismissLabel","class","children"]),d=y(()=>e.ondismiss??e.onDismiss);Tt(()=>{e.onDismiss,a(),a()});var f=Fk();Lr(f,h=>({...l,class:h,"data-pill":!0,"data-tone":n(),"data-variant":a()}),[()=>Rk({tone:n(),variant:a(),size:o(),class:e.class})]);var v=c(f);tr(v,()=>e.children??Jr);var p=u(v,2);{var b=h=>{var w=Vk();Q(k=>{Oe(w,1,k),Ce(w,"aria-label",i())},[()=>Re(ws({ink:"inherit",class:Hk()}))]),_e("click",w,()=>r(d)()),g(h,w)};R(p,h=>{r(d)&&h(b)})}s(f),g(t,f),nt()}nr(["click"]);function qk(t,e){Vr(t,{tone:"neutral",children:(n,a)=>{Se();var o=bt();Q(()=>S(o,e.label??e.role)),g(n,o)},$$slots:{default:!0}})}var Bk=m('<span class="font-mono text-sm text-ink-muted"> </span>'),Kk=m('<span class="text-sm text-ink-muted"> </span>'),jk=m('<span class="flex items-baseline gap-[var(--reddb-spatial-gap-md)]"><span> </span> <!></span> <!>',1),Zk=m('<div class="flex flex-col px-[var(--reddb-spatial-inset-md)] pb-[var(--reddb-spatial-inset-md)]"><!></div>'),Uk=m('<div class="w-full px-[var(--reddb-spatial-inset-md)] pb-[var(--reddb-spatial-inset-md)]"><!></div>'),Wk=m("<div><!> <!> <!></div>");function mn(t,e){let n=Pe(e,"wide",3,!1),a=Pe(e,"class",3,"");var o=Wk(),i=c(o);{let p=y(()=>n()?void 0:e.action);Mk(i,{get trailing(){return r(p)},children:(b,h)=>{var w=jk(),k=ze(w),L=c(k),O=c(L,!0);s(L);var G=u(L,2);{var I=z=>{var F=Bk(),ne=c(F,!0);s(F),Q(()=>S(ne,e.hint)),g(z,F)};R(G,z=>{e.hint&&z(I)})}s(k);var Y=u(k,2);{var K=z=>{var F=Kk(),ne=c(F,!0);s(F),Q(()=>S(ne,e.description)),g(z,F)};R(Y,z=>{e.description&&z(K)})}Q(()=>S(O,e.title)),g(b,w)},$$slots:{default:!0}})}var l=u(i,2);{var d=p=>{var b=Zk(),h=c(b);tr(h,()=>e.action),s(b),g(p,b)};R(l,p=>{n()&&e.action&&p(d)})}var f=u(l,2);{var v=p=>{var b=Uk(),h=c(b);tr(h,()=>e.below),s(b),g(p,b)};R(f,p=>{e.below&&p(v)})}s(o),Q(()=>{Ce(o,"data-wide",n()?"":void 0),Oe(o,1,Re(a()))}),g(t,o)}var Gk=m('<span aria-hidden="true" class="text-ink-muted"><!></span>'),Yk=m("<div><!> <!></div>");function yo(t,e){let n=Pe(e,"actions",19,()=>e.meta),a=Pe(e,"rule",3,!1),o=Pe(e,"size",3,"sm"),i=Xe(e,["$$slots","$$events","$$legacy","icon","meta","actions","rule","size","class"]);var l=Yk(),d=c(l);{var f=p=>{var b=Gk(),h=c(b);tr(h,()=>e.icon),s(b),g(p,b)};R(d,p=>{e.icon&&p(f)})}var v=u(d,2);eg(v,st(()=>i,{get actions(){return n()},get rule(){return a()},get size(){return o()},class:"min-w-0 flex-1"})),s(l),Q(()=>Oe(l,1,`flex items-center gap-[var(--reddb-spatial-gap-md)] ${e.class??""??""}`)),g(t,l)}var $k=m('<!> <!> <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 Xk(t,e){rt(e,!0);const n=y(()=>e.data.role==="primary"?"role-primary":e.data.role==="replica"?"role-replica":"role-embedded");var a=$k(),o=ze(a);ha(o,{type:"target",get position(){return zt.Left},style:"opacity:0;pointer-events:none"});var i=u(o,2);ha(i,{type:"source",get position(){return zt.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),L=c(k),O=c(L),G=c(O,!0);s(O),Se(),s(L);var I=u(L,4),Y=c(I),K=c(Y,!0);s(Y),Se(),s(I),s(k),s(f),s(l),Q(z=>{d=Oe(l,1,`card ${r(n)??""}`,"svelte-hw5n61",d,{selected:e.selected}),S(b,e.data.role),S(w,e.data.label),S(G,e.data.collections),S(K,z)},[()=>e.data.entities.toLocaleString()]),g(t,a),nt()}const Ta={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 Jk(t){const e=`${t.kind}:${t.name}`;return t.tenant?`${e} @ ${t.tenant}`:e}function bf(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 mf(t){var a;const e=[Ta],n=new Set(e.map(Pn));for(const o of t){const i={action:((a=o.action)==null?void 0:a.trim())||"*",resource:bf(o.resource,o.tenant)},l=Pn(i);n.has(l)||(n.add(l),e.push(i))}return e}function e8(t,e){const n=mf(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:bf(d.resource,d.tenant)};return Pn(f)===Pn(o)});return{id:Pn(o),action:o.action,resource:o.resource,resourceLabel:Jk(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 xf={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"}]]};xf.node;function t8(t,e){let n=Xe(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return xf}}))}var r8=m('<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>'),n8=m('<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>'),a8=m('<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>'),o8=m('<div class="p-6"><!></div>'),i8=m('<div class="p-6"><!></div>'),s8=m("<!> <!>",1),l8=m('<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>'),c8=m('<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),d8=m('<div class="text-[10px] text-fg-3 mt-1"> </div>'),u8=m('<div class="mb-1 rounded border border-line-1 bg-bg-2 p-3"><div class="type-label"> </div> <div> </div> <!></div>'),f8=m('<span class="text-fg-3"> </span>'),v8=m('<span class="text-fg-3">· usage not exposed</span>'),g8=m(' <span class="text-fg-3"> </span>',1),p8=m('<span class="text-fg-3">not sampled</span>'),h8=m('<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),b8=m('<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>'),m8=m('<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>'),x8=m('<span class="text-amber-400">↻</span>'),_8=m('<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>'),y8=m('<div class="grid gap-1 pl-1"></div>'),w8=m('<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),k8=m('<span class="text-fg-3 ml-1"> </span>'),S8=m('<div class="grid grid-cols-[120px_1fr] gap-3 items-baseline"><span class="text-fg-3">lag</span> <span><!> <!></span></div>'),L8=m('<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>'),C8=m('<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),E8=m('<div class="pt-2 mt-1 border-t border-line-1"></div> <!>',1),M8=m('you are <span class="text-primary-text"> </span> <span class="text-fg-3"> </span>',1),z8=m('<span class="text-fg-3"> </span>'),Q8=m('<span class="text-fg-3">…</span>'),N8=m('<span class="rounded border border-line-1 px-1.5 py-0.5 text-[10px] text-fg-1"> </span>'),T8=m('<span class="rounded border border-line-1 px-1.5 py-0.5 text-[10px] text-fg-1"> </span>'),A8=m('<span class="rounded border border-line-1 px-1.5 py-0.5 text-[10px] text-fg-1"> </span>'),I8=m('<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>'),O8=m('<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),P8=m('<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>'),D8=m('<span class="rounded border border-line-1 px-1.5 py-0.5 text-[10px] text-fg-3"> </span>'),R8=m('<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),H8=m('<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>'),V8=m('<div class="absolute top-4 right-4 z-10 w-[420px] max-h-[calc(100vh-96px)] overflow-auto"><!></div>'),F8=m('<div class="absolute inset-0"><!></div> <div class="absolute top-4 left-4 z-10 w-64"><!></div> <!>',1);function q8(t,e){rt(e,!0);function n(E){return X0(E.cluster,E.replication,E.preset.role)}const a={embedded:"embedded · standalone",serverless:"serverless",replicated:"primary / replica",server:"server · standalone",unknown:"unknown"};let o=xe(qt([])),i=xe(!0),l=xe(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},(E,q)=>q),v=new Map,p=new Map,b=6e4,h={cluster:Xk},w=y(()=>{const E=En.current==="dark";return{ok:E?"#4ade80":"#16a34a",warn:E?"#fbbf24":"#b45309",pattern:E?"#1c2027":"#d4d4d8",labelBg:E?"#0d0f13":"#fafafa",labelStroke:E?"#2a2e36":"#d4d4d8"}});async function k(){const E=Date.now(),q=await Promise.all(A0.map(async P=>{const M=v.get(P.id)??0,j=p.get(P.id)??0;if(M>=2&&E-j<b)return r(o).find(de=>de.id===P.id)??{id:P.id,preset:P,reachable:!1,role:"standalone"};p.set(P.id,E);const re=new I0(P.url);try{const[de,be,fe]=await Promise.all([St.track(`cluster · ${P.label} stats`,()=>re.stats()),St.track(`cluster · ${P.label} replication`,()=>re.replication()).catch(()=>{}),St.track(`cluster · ${P.label} status`,()=>re.clusterStatus()).catch(()=>{})]);return v.set(P.id,0),{id:P.id,preset:P,reachable:!0,role:(be==null?void 0:be.role)??"standalone",stats:de,replication:be,cluster:fe}}catch{return v.set(P.id,M+1),{id:P.id,preset:P,reachable:!1,role:"standalone"}}}));x(o,q,!0),x(i,!1)}Tt(()=>{if(mr.locked){x(i,!1);return}x(i,!0),k();const E=setInterval(k,5e3);return()=>clearInterval(E)});const L=y(()=>r(o).filter(E=>E.reachable)),O=y(()=>r(L).map(E=>{var P,M;const q=E.role==="primary"?0:E.role==="replica"?1:-1;return{id:E.id,type:"cluster",position:{x:320+q*320,y:200},data:{label:E.preset.label,role:E.role,collections:((P=E.stats)==null?void 0:P.store.collection_count)??0,entities:((M=E.stats)==null?void 0:M.store.total_entities)??0,url:E.preset.url}}})),G=y(()=>r(L).filter(E=>E.role==="replica").map(E=>{var re,de;const q=r(L).find(be=>be.role==="primary");if(!q)return null;const P=((re=E.replication)==null?void 0:re.last_applied_lsn)!==void 0&&((de=E.replication)==null?void 0:de.last_seen_primary_lsn)!==void 0?E.replication.last_seen_primary_lsn-E.replication.last_applied_lsn:null,M=P===0,j=M?r(w).ok:r(w).warn;return{id:`${q.id}-${E.id}`,source:q.id,target:E.id,type:"smoothstep",animated:!0,style:`stroke:${j};stroke-width:1.5;opacity:0.7`,label:P===null?"":M?"✓ in sync":`lag ${P}`,labelStyle:`fill:${j};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(E=>E!==null)),I=y(()=>r(o).find(E=>E.id===r(l))),Y=y(()=>r(I)?D(r(I)):null),K=y(()=>r(I)?n(r(I)):"unknown"),z=y(()=>r(I)?B(r(I)):[]),F=y(()=>r(L).reduce((E,q)=>{var P;return E+(((P=q.stats)==null?void 0:P.store.total_entities)??0)},0)),ne=ma(),oe=y(()=>{var E;return!!r(I)&&Ke.connected&&!mr.locked&&((E=Ke.active)==null?void 0:E.url)===r(I).preset.url});let J=xe(null);Tt(()=>{const E=r(I);if(r(l),!E||!r(oe)){x(J,null);return}const q=Ke.client;if(!q){x(J,null);return}let P=!1;return(async()=>{const M={};try{const j=await St.track("cluster · whoami",()=>q.whoami());M.username=j.username,M.role=j.role}catch(j){M.error=j.message}try{M.users=(await St.track("cluster · users",()=>q.users())).length}catch{}try{M.tenants=(await St.track("cluster · tenants",()=>q.tenants())).length}catch{}try{const[j]=await St.track("cluster · auth.can policy read",()=>q.authCan([Ta]));if(M.policyAllowed=(j==null?void 0:j.allowed)===!0,M.policyAllowed)try{M.policies=(await St.track("cluster · policies",()=>q.policies())).length}catch{}}catch{M.policyAllowed=!1}P||x(J,M,!0)})(),()=>{P=!0}});function ue(E){var P,M;const q=Kr((M=(P=E.cluster)==null?void 0:P.deployment)==null?void 0:M.shape);return q||(E.preset.id==="embedded"?"embedded":E.preset.id.startsWith("docker-")?"server · docker preset":"server")}function Z(E){var M,j,re,de,be;const q=(re=(j=(M=E.cluster)==null?void 0:M.transports)==null?void 0:j.active)==null?void 0:re[0];if(q)return`${q.transport} · ${q.bind_addr}`;const P=(be=(de=E.cluster)==null?void 0:de.storage)==null?void 0:be.remote_backend;return P?`remote backend · ${P}`:E.preset.description}function C(E){switch(n(E)){case"replicated":return"neutral";case"embedded":return"success";case"serverless":return"info";default:return"neutral"}}function N(E){return E==null||!Number.isFinite(E)?"not exposed":E<1e3?`${Math.round(E)} ms`:E<6e4?`${(E/1e3).toFixed(E<1e4?2:1)} s`:`${Math.floor(E/6e4)}m ${Math.round(E%6e4/1e3)}s`}function _(E){return E==null||!Number.isFinite(E)?"not exposed":E<1?`${Math.round(E*1e3)} ms`:E<60?`${E.toFixed(1)}s`:`${Math.floor(E/60)}m ${Math.round(E%60)}s`}function T(E){const q=E.replication;return(q==null?void 0:q.last_applied_lsn)===void 0||q.last_seen_primary_lsn===void 0?null:q.last_seen_primary_lsn-q.last_applied_lsn}function D(E){var M,j,re,de,be,fe,Le,ke,me;const q=n(E);if(q==="replicated"){if(E.role==="primary"){const De=((M=E.replication)==null?void 0:M.replicas)??[],ce=ev(E.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=T(E);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:(j=E.replication)==null?void 0:j.state}}if(q==="serverless"){const ge=J0(E.cluster);return{label:"boot time",value:N(ge),tone:ge===null?"neutral":ge<1e3?"success":ge<5e3?"info":"warning",sub:(re=E.cluster)!=null&&re.phase?`phase · ${E.cluster.phase}`:void 0}}if(q==="embedded"){const ge=Kr((be=(de=E.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=E.stats)==null?void 0:fe.store.total_entities)??0).toLocaleString()} entities`}}const P=Kr((ke=(Le=E.cluster)==null?void 0:Le.storage)==null?void 0:ke.db_size_bytes);return{label:"entities",value:(((me=E.stats)==null?void 0:me.store.total_entities)??0).toLocaleString(),tone:"neutral",sub:P===void 0?void 0:`${te(P)} on disk`}}function te(E){return E===void 0||!Number.isFinite(E)?"not exposed":E>=1024**3?`${(E/1024**3).toFixed(1)} GiB`:E>=1024**2?`${(E/1024**2).toFixed(1)} MiB`:E>=1024?`${(E/1024).toFixed(1)} KiB`:`${E} B`}function V(E,q){return q<=0?"n/a":`${Math.round(E/q*100)}%`}function $(E){const q=Math.max(0,Math.round((Date.now()-E)/1e3));return q>=86400?`${Math.floor(q/86400)}d ${Math.floor(q%86400/3600)}h`:q>=3600?`${Math.floor(q/3600)}h ${Math.floor(q%3600/60)}m`:q>=60?`${Math.floor(q/60)}m ${q%60}s`:`${q}s`}function ee(E){return E===void 0||!Number.isFinite(E)?"not exposed":`${E.toLocaleString(void 0,{maximumFractionDigits:1})}/s`}function A(E){return E===void 0||!Number.isFinite(E)?"not exposed":`${E.toLocaleString(void 0,{maximumFractionDigits:1})} ms`}function H(E){var j,re,de,be,fe,Le;const q=Kr((re=(j=E.cluster)==null?void 0:j.storage)==null?void 0:re.db_size_bytes),P=(be=(de=E.cluster)==null?void 0:de.storage)==null?void 0:be.remote_backend;if(q!==void 0)return P?`${te(q)} · ${P}`:te(q);if(P)return`remote · ${P}`;const M=$0((Le=(fe=E.cluster)==null?void 0:fe.storage)==null?void 0:Le.db_size_bytes);return M?`not exposed (${M})`:"not exposed"}function B(E){return tv(E.cluster).map(q=>q.path.replace(/_/g," "))}var le=xt(),he=ze(le);{var ie=E=>{var q=a8(),P=u(c(q),4);Ge(P,17,()=>d,re=>re.id,(re,de)=>{var be=r8(),fe=c(be),Le=c(fe),ke=u(Le,2);s(fe),Se(2),s(be),Q(me=>{_r(be,`left: ${r(de).x}; top: ${r(de).y}; transform: translate(-50%, -50%);`),Oe(Le,1,me,"svelte-gcvueu"),_r(ke,`width: ${r(de).label}px`)},[()=>Re(["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 M=u(P,2),j=u(c(M),4);Ge(j,20,()=>f,re=>re,(re,de)=>{var be=n8(),fe=u(c(be),4);s(be),Q(()=>_r(fe,`width: ${de===0?36:24}px`)),g(re,be)}),s(j),s(M),s(q),g(E,q)},X=E=>{var q=o8(),P=c(q);Hr(P,{get icon(){return jn},title:"Locked",message:"Unlock the secure store to probe configured nodes. Automatic probes are paused until you authenticate this session."}),s(q),g(E,q)},U=E=>{var q=i8(),P=c(q);Hr(P,{get icon(){return t8},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(q),g(E,q)},W=E=>{var q=F8(),P=ze(q),M=c(P);Y6(M,{get nodes(){return r(O)},get edges(){return r(G)},get nodeTypes(){return h},fitView:!0,fitViewOptions:{padding:.25,maxZoom:1},proOptions:{hideAttribution:!0},nodesDraggable:!1,nodesConnectable:!1,onnodeclick:fe=>x(l,fe.node.id,!0),children:(fe,Le)=>{var ke=s8(),me=ze(ke);bk(me,{get variant(){return kn.Dots},bgColor:"transparent",get patternColor(){return r(w).pattern},gap:32,size:1});var ge=u(me,2);dk(ge,{position:"bottom-right"}),g(fe,ke)},$$slots:{default:!0}}),s(P);var j=u(P,2),re=c(j);Cn(re,{title:"cluster",children:(fe,Le)=>{var ke=c8(),me=ze(ke),ge=c(me),De=u(c(ge),2),ce=c(De,!0),se=u(ce),ve=c(se);s(se),s(De),s(ge);var Te=u(ge,2),Ae=u(c(Te),2),we=c(Ae,!0);s(Ae),s(Te),s(me);var Ne=u(me,2);Ge(Ne,21,()=>r(L),gr,(Ee,Me)=>{var Qe=l8(),Ye=c(Qe),Ve=u(Ye,2),Je=c(Ve,!0);s(Ve);var lt=u(Ve,2),ct=c(lt,!0);s(lt),s(Qe),Q((qe,He,je)=>{Oe(Qe,1,qe,"svelte-gcvueu"),Oe(Ye,1,He,"svelte-gcvueu"),S(Je,r(Me).preset.label),S(ct,je)},[()=>Re(["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(" ")),()=>Re(["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 qe;return((qe=r(Me).stats)==null?void 0:qe.store.total_entities.toLocaleString())??0}]),_e("click",Qe,()=>x(l,r(Me).id,!0)),g(Ee,Qe)}),s(Ne),Q(Ee=>{S(ce,r(L).length),S(ve,`of ${r(o).length??""}`),S(we,Ee)},[()=>r(F).toLocaleString()]),g(fe,ke)},$$slots:{default:!0}}),s(j);var de=u(j,2);{var be=fe=>{var Le=V8(),ke=c(Le);Cn(ke,{get title(){return`node · ${r(I).id??""}`},raised:!0,children:(me,ge)=>{var De=H8(),ce=c(De);{var se=it=>{var dt=u8(),At=c(dt),Kt=c(At,!0);s(At);var or=u(At,2),ir=c(or,!0);s(or);var sr=u(or,2);{var wr=lr=>{var xr=d8(),Er=c(xr,!0);s(xr),Q(()=>S(Er,r(Y).sub)),g(lr,xr)};R(sr,lr=>{r(Y).sub&&lr(wr)})}s(dt),Q(lr=>{S(Kt,r(Y).label),Oe(or,1,lr,"svelte-gcvueu"),S(ir,r(Y).value)},[()=>Re(["font-mono text-[22px] font-semibold mt-0.5 leading-none",r(Y).tone==="success"?"text-feedback-success-foreground":r(Y).tone==="warning"?"text-feedback-warning-foreground":r(Y).tone==="danger"?"text-feedback-danger-foreground":"text-fg-0"].join(" "))]),g(it,dt)};R(ce,it=>{r(Y)&&it(se)})}var ve=u(ce,2),Te=u(c(ve),2),Ae=c(Te);{let it=y(()=>C(r(I)));Vr(Ae,{get tone(){return r(it)},children:(dt,At)=>{Se();var Kt=bt();Q(()=>S(Kt,a[r(K)])),g(dt,Kt)},$$slots:{default:!0}})}s(Te),s(ve);var we=u(ve,2),Ne=u(c(we),2),Ee=c(Ne,!0);s(Ne),s(we);var Me=u(we,2),Qe=u(c(Me),2),Ye=c(Qe,!0);s(Qe),s(Me);var Ve=u(Me,2),Je=u(c(Ve),2),lt=c(Je);{let it=y(()=>C(r(I)));Vr(lt,{get tone(){return r(it)},children:(dt,At)=>{Se();var Kt=bt();Q(or=>S(Kt,or),[()=>ue(r(I))]),g(dt,Kt)},$$slots:{default:!0}})}s(Je),s(Ve);var ct=u(Ve,2),qe=u(c(ct),2),He=c(qe,!0);s(qe),s(ct);var je=u(ct,2),ot=u(c(je),2),ae=c(ot);{let it=y(()=>r(I).role==="primary"?"primary":r(I).role==="replica"?"replica":"embedded");qk(ae,{get role(){return r(it)},get label(){return r(I).role}})}s(ot),s(je);var tt=u(je,2),$e=u(c(tt),2),Ze=c($e);{var ut=it=>{var dt=bt();Q(()=>S(dt,r(I).replication.replica_count??0)),g(it,dt)},Ct=it=>{var dt=bt();Q(()=>S(dt,`connected to ${r(I).replication.primary_addr??"primary"??""}`)),g(it,dt)},Qt=it=>{var dt=bt("none exposed");g(it,dt)};R(Ze,it=>{var dt,At;((dt=r(I).replication)==null?void 0:dt.role)==="primary"?it(ut):((At=r(I).replication)==null?void 0:At.role)==="replica"?it(Ct,1):it(Qt,-1)})}s($e),s(tt);var Et=u(tt,2);{var Lt=it=>{const dt=y(()=>{var Ft,Mt;return Kr((Mt=(Ft=r(I).cluster)==null?void 0:Ft.system)==null?void 0:Mt.total_memory_bytes)??r(I).stats.system.total_memory_bytes}),At=y(()=>{var Ft,Mt;return Kr((Mt=(Ft=r(I).cluster)==null?void 0:Ft.system)==null?void 0:Mt.available_memory_bytes)??r(I).stats.system.available_memory_bytes}),Kt=y(()=>{var Ft;return Kr((Ft=r(I).cluster)==null?void 0:Ft.throughput)});var or=h8(),ir=u(ze(or),2),sr=u(c(ir),2),wr=c(sr);s(sr),s(ir);var lr=u(ir,2),xr=u(c(lr),2),Er=c(xr);s(xr),s(lr);var Qr=u(lr,2),kr=u(c(Qr),2),Nr=c(kr),ye=u(Nr),Ie=c(ye);s(ye),s(kr),s(Qr);var Fe=u(Qr,2),We=u(c(Fe),2),et=c(We,!0);s(We),s(Fe);var at=u(Fe,2),Ue=u(c(at),2),yt=c(Ue,!0);s(Ue),s(at);var ft=u(at,2),pt=u(c(ft),2),It=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 Ht=u(Pt,2),Dt=u(c(Ht),2),Ut=c(Dt,!0);s(Dt),s(Ht);var jt=u(Ht,2),ar=u(c(jt),2),fr=c(ar),vr=u(fr),Wt=c(vr);s(vr),s(ar),s(jt);var kt=u(jt,2),Vt=u(c(kt),2),Zt=c(Vt),cr=u(Zt);{var Xt=Ft=>{var Mt=f8(),Gt=c(Mt);s(Mt),Q(yr=>S(Gt,`· ${yr??""}%`),[()=>{var yr,nn;return Kr((nn=(yr=r(I).cluster)==null?void 0:yr.system)==null?void 0:nn.cpu_usage)}]),g(Ft,Mt)},Mr=y(()=>{var Ft,Mt;return Kr((Mt=(Ft=r(I).cluster)==null?void 0:Ft.system)==null?void 0:Mt.cpu_usage)!==void 0}),Rt=Ft=>{var Mt=v8();g(Ft,Mt)};R(cr,Ft=>{r(Mr)?Ft(Xt):Ft(Rt,-1)})}s(Vt),s(kt);var gt=u(kt,2),ht=u(c(gt),2),dr=c(ht);{var zr=Ft=>{var Mt=g8(),Gt=ze(Mt),yr=u(Gt),nn=c(yr);s(yr),Q((Nn,xa,ui)=>{S(Gt,`${Nn??""} `),S(nn,`· r ${xa??""} / w ${ui??""}`)},[()=>ee(r(Kt).requests_per_second),()=>ee(r(Kt).reads_per_second),()=>ee(r(Kt).writes_per_second)]),g(Ft,Mt)},Ar=Ft=>{var Mt=p8();g(Ft,Mt)};R(dr,Ft=>{r(Kt)?Ft(zr):Ft(Ar,-1)})}s(ht),s(gt);var Pr=u(gt,2),Jt=u(c(Pr),2),br=c(Jt,!0);s(Jt),s(Pr);var Ir=u(Pr,2),Yr=u(c(Ir),2),rn=c(Yr,!0);s(Yr),s(Ir),Q((Ft,Mt,Gt,yr,nn,Nn,xa,ui,Of)=>{S(wr,`${r(I).stats.system.hostname??""} · ${r(I).stats.system.os??""}/${r(I).stats.system.arch??""}`),S(Er,`pid ${r(I).stats.system.pid??""}`),S(Nr,`${r(I).stats.active_connections??""} active `),S(Ie,`/ ${r(I).stats.idle_connections??""} idle`),S(et,r(I).stats.store.collection_count),S(yt,Ft),S(It,Mt),S(ur,Gt),S(Ut,yr),S(fr,`${nn??""} used `),S(Wt,`/ ${Nn??""} (${xa??""})`),S(Zt,`${r(I).stats.system.cpu_cores??""} cores `),S(br,ui),S(rn,Of)},[()=>r(I).stats.store.total_entities.toLocaleString(),()=>r(I).stats.store.cross_ref_count.toLocaleString(),()=>te(r(I).stats.store.total_memory_bytes),()=>H(r(I)),()=>te(r(dt)-r(At)),()=>te(r(dt)),()=>V(r(dt)-r(At),r(dt)),()=>{var Ft,Mt;return A((Mt=Kr((Ft=r(I).cluster)==null?void 0:Ft.latency))==null?void 0:Mt.avg_response_ms)},()=>{var Ft;return((Ft=r(I).cluster)==null?void 0:Ft.uptime_secs)!==void 0?$(Date.now()-r(I).cluster.uptime_secs*1e3):$(r(I).stats.started_at_unix_ms)}]),g(it,or)};R(Et,it=>{r(I).stats&&it(Lt)})}var mt=u(Et,2);{var _t=it=>{var dt=E8(),At=u(ze(dt),2);{var Kt=ir=>{var sr=w8(),wr=ze(sr),lr=u(c(wr),2),xr=c(lr,!0);s(lr),s(wr);var Er=u(wr,2);{var Qr=ft=>{var pt=b8(),It=u(c(pt),2),Pt=c(It),er=u(Pt),ur=c(er);s(er),s(It),s(pt),Q(()=>{var Ht,Dt;S(Pt,`${r(I).replication.commit_watermark??""} `),S(ur,`· ${((Dt=(Ht=r(I).cluster)==null?void 0:Ht.replication)==null?void 0:Dt.commit_policy)??""??""}`)}),g(ft,pt)};R(Er,ft=>{r(I).replication.commit_watermark!==void 0&&ft(Qr)})}var kr=u(Er,2),Nr=u(c(kr),2),ye=c(Nr);Se(),s(Nr),s(kr);var Ie=u(kr,2);{var Fe=ft=>{var pt=m8(),It=u(c(pt),2),Pt=c(It),er=u(Pt),ur=c(er);s(er),s(It),s(pt),Q(()=>{S(Pt,`${r(I).replication.full_resync_count??0??""} full `),S(ur,`/ ${r(I).replication.partial_resync_count??0??""} partial`)}),g(ft,pt)};R(Ie,ft=>{((r(I).replication.full_resync_count??0)>0||(r(I).replication.partial_resync_count??0)>0)&&ft(Fe)})}var We=u(Ie,2),et=u(c(We),2),at=c(et,!0);s(et),s(We);var Ue=u(We,2);{var yt=ft=>{var pt=y8();Ge(pt,21,()=>r(I).replication.replicas,It=>It.id,(It,Pt)=>{var er=_8(),ur=c(er),Ht=u(ur,2),Dt=c(Ht,!0),Ut=u(Dt);{var jt=kt=>{var Vt=x8();g(kt,Vt)};R(Ut,kt=>{r(Pt).rebootstrapping&&kt(jt)})}s(Ht);var ar=u(Ht,2),fr=c(ar);s(ar);var vr=u(ar,2),Wt=c(vr,!0);s(vr),s(er),Q((kt,Vt)=>{Oe(ur,1,kt,"svelte-gcvueu"),S(Dt,r(Pt).id),S(fr,`${r(Pt).lag_lsn??""} lsn`),Oe(vr,1,Re(r(Pt).lag_seconds===0?"text-role-replica":"text-fg-0")),S(Wt,Vt)},[()=>Re(["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(It,er)}),s(pt),g(ft,pt)};R(Ue,ft=>{var pt;(pt=r(I).replication.replicas)!=null&&pt.length&&ft(yt)})}Q(()=>{var ft,pt,It,Pt,er,ur;S(xr,((pt=(ft=r(I).cluster)==null?void 0:ft.wal)==null?void 0:pt.current_lsn)??r(I).replication.wal_lsn??"not exposed"),S(ye,`${((Pt=(It=r(I).cluster)==null?void 0:It.wal)==null?void 0:Pt.archive_lag_records)??"not exposed"??""} `),S(at,r(I).replication.replica_count??((ur=(er=r(I).cluster)==null?void 0:er.replication)==null?void 0:ur.replica_count)??0)}),g(ir,sr)},or=ir=>{const sr=y(()=>T(r(I)));var wr=C8(),lr=ze(wr),xr=u(c(lr),2),Er=c(xr,!0);s(xr),s(lr);var Qr=u(lr,2),kr=u(c(Qr),2),Nr=c(kr),ye=u(Nr),Ie=c(ye);s(ye),s(kr),s(Qr);var Fe=u(Qr,2);{var We=Ue=>{var yt=S8(),ft=u(c(yt),2),pt=c(ft);{var It=Ht=>{Vr(Ht,{tone:"success",children:(Dt,Ut)=>{Se();var jt=bt("in sync");g(Dt,jt)},$$slots:{default:!0}})},Pt=Ht=>{Vr(Ht,{tone:"warning",children:(Dt,Ut)=>{Se();var jt=bt();Q(ar=>S(jt,`${ar??""} lsn`),[()=>r(sr).toLocaleString()]),g(Dt,jt)},$$slots:{default:!0}})};R(pt,Ht=>{r(sr)===0?Ht(It):Ht(Pt,-1)})}var er=u(pt,2);{var ur=Ht=>{var Dt=k8(),Ut=c(Dt,!0);s(Dt),Q(()=>S(Ut,r(I).replication.state)),g(Ht,Dt)};R(er,Ht=>{r(I).replication.state&&Ht(ur)})}s(ft),s(yt),g(Ue,yt)};R(Fe,Ue=>{r(sr)!==null&&Ue(We)})}var et=u(Fe,2);{var at=Ue=>{var yt=L8(),ft=u(c(yt),2),pt=c(ft,!0);s(ft),s(yt),Q(()=>S(pt,r(I).replication.last_error)),g(Ue,yt)};R(et,Ue=>{r(I).replication.last_error&&Ue(at)})}Q(()=>{S(Er,r(I).replication.primary_addr??r(I).replication.leader??"unknown"),S(Nr,`${r(I).replication.last_applied_lsn??""} `),S(Ie,`/ ${r(I).replication.last_seen_primary_lsn??""}`)}),g(ir,wr)};R(At,ir=>{r(I).replication.role==="primary"?ir(Kt):r(I).replication.role==="replica"&&ir(or,1)})}g(it,dt)};R(mt,it=>{r(I).replication&&it(_t)})}var wt=u(mt,4);{var Ot=it=>{var dt=O8(),At=ze(dt),Kt=u(c(At),2),or=c(Kt);{var ir=et=>{var at=M8(),Ue=u(ze(at)),yt=c(Ue,!0);s(Ue);var ft=u(Ue,2),pt=c(ft);s(ft),Q(()=>{S(yt,r(J).username),S(pt,`· ${r(J).role??""}`)}),g(et,at)},sr=et=>{var at=z8(),Ue=c(at,!0);s(at),Q(()=>S(Ue,r(J).error)),g(et,at)},wr=et=>{var at=Q8();g(et,at)};R(or,et=>{var at,Ue;(at=r(J))!=null&&at.username?et(ir):(Ue=r(J))!=null&&Ue.error?et(sr,1):et(wr,-1)})}s(Kt),s(At);var lr=u(At,2),xr=u(c(lr),2),Er=c(xr);{var Qr=et=>{var at=N8(),Ue=c(at);s(at),Q(()=>S(Ue,`${r(J).users??""} users`)),g(et,at)};R(Er,et=>{var at;((at=r(J))==null?void 0:at.users)!==void 0&&et(Qr)})}var kr=u(Er,2);{var Nr=et=>{var at=T8(),Ue=c(at);s(at),Q(()=>S(Ue,`${r(J).tenants??""} tenants`)),g(et,at)};R(kr,et=>{var at;((at=r(J))==null?void 0:at.tenants)!==void 0&&et(Nr)})}var ye=u(kr,2);{var Ie=et=>{var at=A8(),Ue=c(at);s(at),Q(()=>S(Ue,`${r(J).policies??""} policies`)),g(et,at)},Fe=et=>{var at=I8();g(et,at)};R(ye,et=>{var at,Ue;(at=r(J))!=null&&at.policyAllowed&&((Ue=r(J))==null?void 0:Ue.policies)!==void 0?et(Ie):r(J)&&r(J).policyAllowed===!1&&et(Fe,1)})}var We=u(ye,2);s(xr),s(lr),_e("click",We,et=>ne.go({view:"security"},et)),g(it,dt)},$t=it=>{var dt=P8();g(it,dt)};R(wt,it=>{r(oe)?it(Ot):it($t,-1)})}var pr=u(wt,2);{var hr=it=>{var dt=R8(),At=u(ze(dt),2),Kt=u(c(At),2);Ge(Kt,21,()=>r(z),gr,(or,ir)=>{var sr=D8(),wr=c(sr,!0);s(sr),Q(()=>S(wr,r(ir))),g(or,sr)}),s(Kt),s(At),g(it,dt)};R(pr,it=>{r(z).length&&it(hr)})}s(De),Q(it=>{S(Ee,r(I).preset.label),S(Ye,r(I).preset.url),S(He,it)},[()=>Z(r(I))]),g(me,De)},$$slots:{default:!0}}),s(Le),g(fe,Le)};R(de,fe=>{r(I)&&fe(be)})}g(E,q)};R(he,E=>{r(i)?E(ie):mr.locked?E(X,1):r(L).length===0?E(U,2):E(W,-1)})}g(t,le),nt()}nr(["click"]);const _f={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"}]]};_f.node;function B8(t,e){let n=Xe(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return _f}}))}var K8=m('<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>'),j8=m('<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>'),Z8=m('<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>'),U8=m('<div class="flex items-center gap-2 text-[12px] text-fg-3"><!> thinking…</div>'),W8=m('<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>'),G8=m('<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>'),Y8=m('<button type="button" class="rounded border border-line-1 px-1.5 py-0.5 hover:border-line-3 hover:text-fg-1"> </button>'),$8=m('<span class="font-mono"> </span>'),X8=m("<span>cached</span>"),J8=m('<span class="font-mono"> </span>'),e7=m('<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),t7=m('<div class="flex flex-col gap-1.5"><!></div>'),r7=m('<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>'),n7=m('<span class="font-mono text-[10px] text-fg-2"> <span class="text-fg-3"> </span></span>'),a7=m('<span class="ml-auto font-mono text-[10px] text-fg-3"> </span>'),o7=m('<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>'),i7=m('<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),s7=m('<div class="flex h-full items-center justify-center font-mono text-[12px] text-fg-3">no grounding to show</div>'),l7=m('<div class="flex h-full flex-col overflow-hidden bg-bg-1"><!></div>'),c7=m('<div class="p-6"><!></div>'),d7=m('<div class="p-6"><!></div>'),u7=m('<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>'),f7=m('<div class="h-full overflow-hidden bg-bg-0 text-fg-1"><!></div>');function v7(t,e){rt(e,!0);const n=(C,N=Jr)=>{var _=r7(),T=c(_),D=c(T),te=c(D);{var V=he=>{var ie=j8(),X=c(ie),U=c(X);Co(U,{class:"size-5 text-primary-text"}),s(X);var W=u(X,4);Ge(W,21,()=>L,gr,(E,q)=>{var P=K8(),M=c(P,!0);s(P),Q(()=>{P.disabled=!r(p)||r(b),S(M,r(q))}),_e("click",P,()=>{x(i,r(q),!0),r(h)&&O()}),g(E,P)}),s(W),s(ie),g(he,ie)};R(te,he=>{r(o).length===0&&he(V)})}var $=u(te,2);Ge($,19,()=>r(o),he=>he.id,(he,ie,X)=>{var U=xt(),W=ze(U);{var E=P=>{var M=Z8(),j=c(M),re=c(j,!0);s(j),s(M),Q(()=>S(re,r(ie).text)),g(P,M)},q=P=>{var M=t7(),j=c(M);{var re=fe=>{var Le=U8(),ke=c(Le);Co(ke,{class:"size-3.5 animate-pulse text-primary-text"}),Se(),s(Le),g(fe,Le)},de=fe=>{var Le=W8(),ke=c(Le);Nc(ke,{class:"mt-0.5 size-3.5 shrink-0 text-primary-text"});var me=u(ke,2),ge=c(me,!0);s(me),s(Le),Q(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,Le)},be=fe=>{var Le=e7(),ke=ze(Le);Ge(ke,21,()=>rv(r(ie).response.answer),gr,(Me,Qe)=>{var Ye=xt(),Ve=ze(Ye);{var Je=ct=>{var qe=bt();Q(()=>S(qe,r(Qe).value)),g(ct,qe)},lt=ct=>{var qe=G8(),He=c(qe,!0);s(qe),Q(()=>{Ce(qe,"title",`Jump to source ${r(Qe).marker??""}`),S(He,r(Qe).marker)}),_e("click",qe,()=>I(r(X),r(Qe).marker)),g(ct,qe)};R(Ve,ct=>{r(Qe).type==="text"?ct(Je):ct(lt,-1)})}g(Me,Ye)}),s(ke);var me=u(ke,2),ge=c(me);{var De=Me=>{Vr(Me,{tone:"warning",children:(Qe,Ye)=>{Se();var Ve=bt("unverified citations");g(Qe,Ve)},$$slots:{default:!0}})};R(ge,Me=>{r(ie).response.validation&&!r(ie).response.validation.ok&&Me(De)})}var ce=u(ge,2);{var se=Me=>{var Qe=Y8(),Ye=c(Qe);s(Qe),Q(()=>S(Ye,`${r(ie).response.sources_flat.length??""} source${r(ie).response.sources_flat.length===1?"":"s"}`)),_e("click",Qe,()=>{x(d,r(X),!0),x(f,null)}),g(Me,Qe)};R(ce,Me=>{var Qe;(Qe=r(ie).response.sources_flat)!=null&&Qe.length&&Me(se)})}var ve=u(ce,2);{var Te=Me=>{var Qe=$8(),Ye=c(Qe);s(Qe),Q(()=>S(Ye,`${r(ie).response.provider??""}${r(ie).response.model?`·${r(ie).response.model}`:""}`)),g(Me,Qe)};R(ve,Me=>{r(ie).response.provider&&Me(Te)})}var Ae=u(ve,2);{var we=Me=>{var Qe=X8();g(Me,Qe)};R(Ae,Me=>{r(ie).response.cache_hit&&Me(we)})}var Ne=u(Ae,2);{var Ee=Me=>{var Qe=J8(),Ye=c(Qe,!0);s(Qe),Q(Ve=>S(Ye,Ve),[()=>K(r(ie).response.cost_usd)]),g(Me,Qe)};R(Ne,Me=>{r(ie).response.cost_usd!==void 0&&Me(Ee)})}s(me),g(fe,Le)};R(j,fe=>{r(ie).pending?fe(re):r(ie).error?fe(de,1):r(ie).response&&fe(be,2)})}s(M),g(P,M)};R(W,P=>{r(ie).role==="user"?P(E):P(q,-1)})}g(he,U)}),s(D),s(T);var ee=u(T,2),A=c(ee),H=c(A);Pa(H);var B=u(H,2),le=c(B);B8(le,{class:"size-3.5"}),Se(),s(B),s(A),s(ee),s(_),Q((he,ie)=>{Oe(D,1,he),Oe(A,1,ie),Ce(H,"placeholder",r(p)?"Ask anything about this database…":"Connect to ask"),H.disabled=!r(p)||r(b),B.disabled=!r(h)},[()=>Re(["mx-auto flex flex-col gap-4 p-4",N()?"max-w-none":"max-w-2xl"].join(" ")),()=>Re(["mx-auto flex items-end gap-2",N()?"max-w-none":"max-w-2xl"].join(" "))]),_e("keydown",H,G),Sr(H,()=>r(i),he=>x(i,he)),_e("click",B,O),g(C,_)},a=C=>{var N=l7(),_=c(N);{var T=te=>{const V=y(()=>r(k).response);var $=i7(),ee=ze($),A=c(ee),H=c(A);s(A);var B=u(A,2),le=c(B);s(B),s(ee);var he=u(ee,2),ie=c(he);Ge(ie,23,()=>r(V).sources_flat,(X,U)=>X.urn+U,(X,U,W)=>{const E=y(()=>nv(r(U).urn));var q=o7(),P=c(q),M=c(P),j=c(M,!0);s(M);var re=u(M,2);{let ge=y(()=>z[r(U).kind]??"neutral");Vr(re,{get tone(){return r(ge)},children:(De,ce)=>{Se();var se=bt();Q(()=>S(se,r(U).kind)),g(De,se)},$$slots:{default:!0}})}var de=u(re,2);{var be=ge=>{var De=n7(),ce=c(De,!0),se=u(ce),ve=c(se);s(se),s(De),Q(()=>{S(ce,r(E).collection),S(ve,`/${r(E).id??""}`)}),g(ge,De)};R(de,ge=>{r(E)&&ge(be)})}var fe=u(de,2);{var Le=ge=>{var De=a7(),ce=c(De);s(De),Q(se=>S(ce,`score ${se??""}`),[()=>r(U).score.toFixed(2)]),g(ge,De)};R(fe,ge=>{r(U).score!==void 0&&ge(Le)})}s(P);var ke=u(P,2),me=c(ke,!0);s(ke),s(q),Q((ge,De)=>{Oe(q,1,ge),S(j,r(W)+1),S(me,De)},[()=>Re(["rounded border bg-bg-0 p-2.5 transition-colors",r(f)===r(W)+1?"border-accent":"border-line-1"].join(" ")),()=>Y(r(U).content)]),g(X,q)}),s(ie),s(he),Q(()=>{S(H,`grounding · ${r(V).sources_flat.length??""} source${r(V).sources_flat.length===1?"":"s"}`),S(le,`${r(V).provider??""??""}${r(V).model?` · ${r(V).model}`:""}`)}),g(te,$)},D=te=>{var V=s7();g(te,V)};R(_,te=>{var V;(V=r(k))!=null&&V.response?te(T):te(D,-1)})}s(N),g(C,N)};let o=xe(qt([])),i=xe(""),l=xe(!1),d=xe(null),f=xe(null),v=0;const p=y(()=>Ke.connected),b=y(()=>mr.locked),h=y(()=>r(p)&&!r(b)&&!r(l)&&r(i).trim().length>0),w=y(()=>r(o).some(C=>{var N,_;return C.role==="assistant"&&(((_=(N=C.response)==null?void 0:N.sources_flat)==null?void 0:_.length)??0)>0})),k=y(()=>r(d)!==null?r(o)[r(d)]:[...r(o)].reverse().find(C=>{var N,_;return(((_=(N=C.response)==null?void 0:N.sources_flat)==null?void 0:_.length)??0)>0})),L=["What changed in the last hour?","Which collections hold the most rows?","Summarize the most recent errors."];async function O(){var D;const C=r(i).trim(),N=Ke.client;if(!C||!N||r(l))return;x(i,"");const _={id:v++,role:"user",text:C},T={id:v++,role:"assistant",text:"",pending:!0};x(o,[...r(o),_,T],!0),x(l,!0);try{const te=await St.track("ask",()=>N.ask(C)),V=r(o).findIndex($=>$.id===T.id);V!==-1&&(r(o)[V]={...T,pending:!1,text:te.answer,response:te},(((D=te.sources_flat)==null?void 0:D.length)??0)>0&&x(d,V,!0))}catch(te){const V=r(o).findIndex($=>$.id===T.id);V!==-1&&(r(o)[V]={...T,pending:!1,error:te.message})}finally{x(l,!1)}}function G(C){C.key==="Enter"&&!C.shiftKey&&(C.preventDefault(),r(h)&&O())}function I(C,N){x(d,C,!0),x(f,N,!0)}function Y(C){try{return JSON.stringify(JSON.parse(C),null,2)}catch{return C}}function K(C){return C===void 0?"":C<.01?`$${C.toFixed(4)}`:`$${C.toFixed(2)}`}const z={table:"info",document:"success",vector:"neutral",graph_node:"warning",graph_edge:"warning",kv:"neutral"};var F=f7(),ne=c(F);{var oe=C=>{var N=c7(),_=c(N);Hr(_,{get icon(){return jn},title:"Locked",message:"Unlock the secure store to ask."}),s(N),g(C,N)},J=C=>{var N=d7(),_=c(N);Hr(_,{get icon(){return Co},title:"Not connected",message:"Connect to a reddb instance to ask grounded questions."}),s(N),g(C,N)},ue=C=>{var N=u7(),_=c(N),T=c(_);n(T,()=>!0),s(_);var D=u(_,2),te=c(D);a(te),s(D),s(N),g(C,N)},Z=C=>{n(C,()=>!1)};R(ne,C=>{r(b)?C(oe):r(p)?r(w)?C(ue,2):C(Z,-1):C(J,1)})}s(F),g(t,F),nt()}nr(["click","keydown"]);var g7=m('<div class="type-label mb-1.5"> </div>'),p7=m('<p class="type-caption m-0 mt-1.5"> </p>'),h7=m('<div class="flex items-center gap-2 shrink-0"><!></div>'),b7=m('<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 Aa(t,e){var n=b7(),a=c(n),o=c(a);{var i=k=>{var L=g7(),O=c(L,!0);s(L),Q(()=>S(O,e.eyebrow)),g(k,L)};R(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??Jr),s(l);var p=u(l,2);{var b=k=>{var L=p7(),O=c(L,!0);s(L),Q(()=>S(O,e.subtitle)),g(k,L)};R(p,k=>{e.subtitle&&k(b)})}s(a);var h=u(a,2);{var w=k=>{var L=h7(),O=c(L);tr(O,()=>e.actions),s(L),g(k,L)};R(h,k=>{e.actions&&k(w)})}s(n),Q(()=>S(f,e.title)),g(t,n)}const yf={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"]};yf.node;function m7(t,e){let n=Xe(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return yf}}))}const wf={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"}]]};wf.node;function x7(t,e){let n=Xe(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return wf}}))}const kf={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"}]]};kf.node;function ka(t,e){let n=Xe(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return kf}}))}const Sf={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"}]]};Sf.node;function _7(t,e){let n=Xe(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Sf}}))}const Lf={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"]};Lf.node;function y7(t,e){let n=Xe(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Lf}}))}var w7=m('<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>'),k7=m('<div class="text-[12px] font-mono text-warn break-words"> </div>'),S7=m('<span class="text-fg-3">note</span> <span class="text-fg-1"> </span>',1),L7=m('<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>'),C7=m('<div class="text-[12px] font-mono text-fg-3">Loading session…</div>'),E7=m('<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),M7=m('<div class="flex items-center gap-2 text-[12px] font-mono text-fg-3"><!> <span>No tenants returned for this principal.</span></div>'),z7=m('<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>'),Q7=m('<div class="grid gap-1 text-[12px] font-mono"></div>'),N7=m('<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),T7=m('<div class="flex items-center gap-2 text-[12px] font-mono text-fg-3"><!> <span>No policies returned for this principal.</span></div>'),A7=m('<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>'),I7=m('<div class="text-[11px] text-fg-3"> </div>'),O7=m('<div class="grid gap-1 text-[12px] font-mono"><!> <!></div>'),P7=m('<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),D7=m('<div class="flex items-center gap-2 text-[12px] font-mono text-fg-3"><!> <span>No users returned for this principal.</span></div>'),R7=m('<span class="text-fg-3">-</span>'),H7=m('<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>'),V7=m('<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>'),F7=m('<div class="text-[12px] font-mono text-fg-3">Policy table unavailable for this principal.</div>'),q7=m('<div class="text-[12px] font-mono text-fg-3">No policies to tabulate.</div>'),B7=m('<span class="text-fg-3">-</span>'),K7=m('<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>'),j7=m('<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>'),Z7=m('<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),U7=m('<div class="text-[12px] font-mono text-fg-3">No capability checks returned.</div>'),W7=m('<span class="inline-flex items-center gap-1 text-ok"><!> yes</span>'),G7=m('<span class="inline-flex items-center gap-1 text-danger"><!> no</span>'),Y7=m('<span class="text-fg-3">-</span>'),$7=m('<span class="inline-flex flex-wrap gap-1"></span>'),X7=m('<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>'),J7=m('<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>'),e9=m("<!> <!>",1),t9=m('<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>'),r9=m('<div class="h-full overflow-auto bg-bg-0 p-6 text-fg-1"><!> <!></div>');function n9(t,e){rt(e,!0);let n=xe(null),a=xe(qt([])),o=xe(qt([])),i=xe(qt([])),l=xe(null),d=xe(qt([])),f=xe(!1),v=xe(null),p=xe(null),b=xe(null),h=xe(null),w=xe(null);const k=y(()=>Ke.active.url),L=y(()=>Ke.connected),O=y(()=>{var J;return((J=r(l))==null?void 0:J.allowed)===!0});function G(J){if(!J)return"-";const ue=J>1e10?J:J*1e3;return new Date(ue).toISOString().replace("T"," ").slice(0,19)}async function I(){const J=Ke.client;if(!J||mr.locked||!r(L)){x(n,null),x(a,[],!0),x(o,[],!0),x(i,[],!0),x(l,null),x(d,[],!0);return}x(f,!0),x(v,null),x(p,null),x(b,null),x(h,null),x(w,null),x(l,null),x(d,[],!0);try{x(n,await St.track("security · whoami",()=>J.whoami()),!0)}catch(ue){x(v,ue.message,!0),x(n,null)}try{x(a,await St.track("security · tenants",()=>J.tenants()),!0)}catch(ue){x(p,ue.message,!0),x(a,[],!0)}try{x(o,await St.track("security · users",()=>J.users()),!0)}catch(ue){x(b,ue.message,!0),x(o,[],!0)}try{const[ue]=await St.track("security · auth.can policy read",()=>J.authCan([Ta]));x(l,ue??{...Ta,allowed:!1,reason:"auth.can omitted policy-read decision"},!0)}catch(ue){x(l,{...Ta,allowed:!1,reason:ue.message||"auth.can failed"},!0)}if(r(l).allowed){try{x(i,await St.track("security · policies",()=>J.policies()),!0)}catch(ue){x(h,ue.message,!0),x(i,[],!0)}try{const ue=mf(r(i)),Z=await St.track("security · auth.can capability matrix",()=>J.authCan(ue));x(d,e8(r(i),Z),!0)}catch(ue){x(w,ue.message,!0),x(d,[],!0)}}else x(i,[],!0),x(d,[],!0);x(f,!1)}Tt(()=>{mr.locked||(r(k),r(L),I())});var Y=r9(),K=c(Y);Aa(K,{eyebrow:"Admin",title:"Security",subtitle:"Tenants, users, and policy surfaces are permission-aware. Controls only appear when reddb exposes the grant.",actions:ue=>{var Z=w7(),C=c(Z);{let N=y(()=>r(f)?"size-3.5 animate-spin":"size-3.5");Cs(C,{get class(){return r(N)}})}Se(),s(Z),Q(()=>Z.disabled=r(f)||mr.locked||!r(L)),_e("click",Z,I),g(ue,Z)}});var z=u(K,2);{var F=J=>{Hr(J,{get icon(){return jn},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."})},oe=J=>{var ue=t9(),Z=c(ue),C=c(Z);Cn(C,{title:"session",children:(ee,A)=>{var H=xt(),B=ze(H);{var le=X=>{var U=k7(),W=c(U,!0);s(U),Q(()=>S(W,r(v))),g(X,U)},he=X=>{var U=L7(),W=u(c(U),2),E=c(W);{var q=Le=>{Vr(Le,{tone:"success",children:(ke,me)=>{Se();var ge=bt("yes");g(ke,ge)},$$slots:{default:!0}})},P=Le=>{Vr(Le,{tone:"warning",children:(ke,me)=>{Se();var ge=bt("no");g(ke,ge)},$$slots:{default:!0}})};R(E,Le=>{r(n).authenticated?Le(q):Le(P,-1)})}s(W);var M=u(W,4),j=c(M,!0);s(M);var re=u(M,4),de=c(re,!0);s(re);var be=u(re,2);{var fe=Le=>{var ke=S7(),me=u(ze(ke),2),ge=c(me,!0);s(me),Q(()=>S(ge,r(n).note)),g(Le,ke)};R(be,Le=>{r(n).note&&Le(fe)})}s(U),Q(()=>{S(j,r(n).username),S(de,r(n).role)}),g(X,U)},ie=X=>{var U=C7();g(X,U)};R(B,X=>{r(v)?X(le):r(n)?X(he,1):X(ie,-1)})}g(ee,H)},$$slots:{default:!0}});var N=u(C,2);Cn(N,{title:"tenants",children:(ee,A)=>{var H=xt(),B=ze(H);{var le=X=>{var U=E7(),W=ze(U),E=c(W);ka(E,{class:"size-3.5"}),Se(),s(W);var q=u(W,2),P=c(q,!0);s(q),Q(()=>S(P,r(p))),g(X,U)},he=X=>{var U=M7(),W=c(U);m7(W,{class:"size-4"}),Se(2),s(U),g(X,U)},ie=X=>{var U=Q7();Ge(U,23,()=>r(a),(W,E)=>`${W.id??W.slug??W.name??E}`,(W,E)=>{var q=z7(),P=c(q),M=c(P),j=c(M,!0);s(M);var re=u(M,2);{var de=me=>{Vr(me,{tone:"neutral",children:(ge,De)=>{Se();var ce=bt();Q(()=>S(ce,r(E).role)),g(ge,ce)},$$slots:{default:!0}})};R(re,me=>{r(E).role&&me(de)})}s(P);var be=u(P,2),fe=c(be),Le=u(fe);{var ke=me=>{var ge=bt();Q(De=>S(ge,`· ${De??""}`),[()=>r(E).grants.join(", ")]),g(me,ge)};R(Le,me=>{var ge;(ge=r(E).grants)!=null&&ge.length&&me(ke)})}s(be),s(q),Q(()=>{S(j,r(E).name??r(E).slug??r(E).id??"tenant"),S(fe,`${r(E).id??r(E).slug??"-"??""} `)}),g(W,q)}),s(U),g(X,U)};R(B,X=>{r(p)?X(le):r(a).length===0?X(he,1):X(ie,-1)})}g(ee,H)},$$slots:{default:!0}});var _=u(N,2);{var T=ee=>{Cn(ee,{title:"policies",children:(A,H)=>{var B=xt(),le=ze(B);{var he=U=>{var W=N7(),E=ze(W),q=c(E);ka(q,{class:"size-3.5"}),Se(),s(E);var P=u(E,2),M=c(P,!0);s(P),Q(()=>S(M,r(h))),g(U,W)},ie=U=>{var W=T7(),E=c(W);x7(E,{class:"size-4"}),Se(2),s(W),g(U,W)},X=U=>{var W=O7(),E=c(W);Ge(E,19,()=>r(i).slice(0,6),(M,j)=>`${M.id??M.name??j}`,(M,j)=>{var re=A7(),de=c(re),be=c(de),fe=c(be,!0);s(be);var Le=u(be,2);{var ke=se=>{{let ve=y(()=>r(j).effect==="deny"?"danger":"success");Vr(se,{get tone(){return r(ve)},children:(Te,Ae)=>{Se();var we=bt();Q(()=>S(we,r(j).effect)),g(Te,we)},$$slots:{default:!0}})}};R(Le,se=>{r(j).effect&&se(ke)})}s(de);var me=u(de,2),ge=c(me),De=u(ge);{var ce=se=>{var ve=bt();Q(()=>S(ve,`· tenant ${r(j).tenant??""}`)),g(se,ve)};R(De,se=>{r(j).tenant&&se(ce)})}s(me),s(re),Q(()=>{S(fe,r(j).name??r(j).id??"policy"),S(ge,`${r(j).action??"*"??""} · ${r(j).resource??"*"??""} `)}),g(M,re)});var q=u(E,2);{var P=M=>{var j=I7(),re=c(j);s(j),Q(()=>S(re,`${r(i).length-6} more policies in the table.`)),g(M,j)};R(q,M=>{r(i).length>6&&M(P)})}s(W),g(U,W)};R(le,U=>{r(h)?U(he):r(i).length===0?U(ie,1):U(X,-1)})}g(A,B)},$$slots:{default:!0}})};R(_,ee=>{r(O)&&ee(T)})}s(Z);var D=u(Z,2),te=c(D);Cn(te,{title:"users",children:(ee,A)=>{var H=xt(),B=ze(H);{var le=X=>{var U=P7(),W=ze(U),E=c(W);ka(E,{class:"size-3.5"}),Se(),s(W);var q=u(W,2),P=c(q,!0);s(q),Q(()=>S(P,r(b))),g(X,U)},he=X=>{var U=D7(),W=c(U);_7(W,{class:"size-4"}),Se(2),s(U),g(X,U)},ie=X=>{var U=V7(),W=c(U),E=u(c(W));Ge(E,21,()=>r(o),q=>q.username,(q,P)=>{var M=H7(),j=c(M),re=c(j,!0);s(j);var de=u(j),be=c(de,!0);s(de);var fe=u(de),Le=c(fe);{var ke=ve=>{Vr(ve,{tone:"success",children:(Te,Ae)=>{Se();var we=bt("on");g(Te,we)},$$slots:{default:!0}})},me=ve=>{var Te=R7();g(ve,Te)};R(Le,ve=>{r(P).mfa?ve(ke):ve(me,-1)})}s(fe);var ge=u(fe),De=c(ge,!0);s(ge);var ce=u(ge),se=c(ce,!0);s(ce),s(M),Q((ve,Te)=>{S(re,r(P).username),S(be,r(P).role??"-"),S(De,ve),S(se,Te)},[()=>G(r(P).created_at),()=>G(r(P).last_active)]),g(q,M)}),s(E),s(W),s(U),g(X,U)};R(B,X=>{r(b)?X(le):r(o).length===0?X(he,1):X(ie,-1)})}g(ee,H)},$$slots:{default:!0}});var V=u(te,2);{var $=ee=>{var A=e9(),H=ze(A);Cn(H,{title:"policy table",children:(le,he)=>{var ie=xt(),X=ze(ie);{var U=q=>{var P=F7();g(q,P)},W=q=>{var P=q7();g(q,P)},E=q=>{var P=j7(),M=c(P),j=u(c(M));Ge(j,23,()=>r(i),(re,de)=>`${re.id??re.name??de}`,(re,de)=>{var be=K7(),fe=c(be),Le=c(fe);{var ke=Ne=>{{let Ee=y(()=>r(de).effect==="deny"?"danger":"success");Vr(Ne,{get tone(){return r(Ee)},children:(Me,Qe)=>{Se();var Ye=bt();Q(()=>S(Ye,r(de).effect)),g(Me,Ye)},$$slots:{default:!0}})}},me=Ne=>{var Ee=B7();g(Ne,Ee)};R(Le,Ne=>{r(de).effect?Ne(ke):Ne(me,-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),Te=c(ve,!0);s(ve);var Ae=u(ve),we=c(Ae,!0);s(Ae),s(be),Q(()=>{S(De,r(de).principal??"-"),S(se,r(de).action??"*"),S(Te,r(de).resource??"*"),S(we,r(de).tenant??"-")}),g(re,be)}),s(j),s(M),s(P),g(q,P)};R(X,q=>{r(h)?q(U):r(i).length===0?q(W,1):q(E,-1)})}g(le,ie)},$$slots:{default:!0}});var B=u(H,2);Cn(B,{title:"my capabilities",children:(le,he)=>{var ie=xt(),X=ze(ie);{var U=q=>{var P=Z7(),M=ze(P),j=c(M);ka(j,{class:"size-3.5"}),Se(),s(M);var re=u(M,2),de=c(re,!0);s(re),Q(()=>S(de,r(w))),g(q,P)},W=q=>{var P=U7();g(q,P)},E=q=>{var P=J7(),M=c(P),j=u(c(M));Ge(j,21,()=>r(d),re=>re.id,(re,de)=>{var be=X7(),fe=c(be),Le=c(fe);{var ke=Me=>{var Qe=W7(),Ye=c(Qe);Ss(Ye,{class:"size-3.5"}),Se(),s(Qe),g(Me,Qe)},me=Me=>{var Qe=G7(),Ye=c(Qe);y7(Ye,{class:"size-3.5"}),Se(),s(Qe),g(Me,Qe)};R(Le,Me=>{r(de).allowed?Me(ke):Me(me,-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),Te=c(ve);{var Ae=Me=>{var Qe=Y7();g(Me,Qe)},we=Me=>{var Qe=$7();Ge(Qe,21,()=>r(de).effects,gr,(Ye,Ve)=>{{let Je=y(()=>r(Ve)==="deny"?"danger":"success");Vr(Ye,{get tone(){return r(Je)},children:(lt,ct)=>{Se();var qe=bt();Q(()=>S(qe,r(Ve))),g(lt,qe)},$$slots:{default:!0}})}}),s(Qe),g(Me,Qe)};R(Te,Me=>{r(de).effects.length===0?Me(Ae):Me(we,-1)})}s(ve);var Ne=u(ve),Ee=c(Ne,!0);s(Ne),s(be),Q(()=>{S(De,r(de).action),S(se,r(de).resourceLabel),S(Ee,r(de).reason??"-")}),g(re,be)}),s(j),s(M),s(P),g(q,P)};R(X,q=>{r(w)?q(U):r(d).length===0?q(W,1):q(E,-1)})}g(le,ie)},$$slots:{default:!0}}),g(ee,A)};R(V,ee=>{r(O)&&ee($)})}s(D),s(ue),g(J,ue)};R(z,J=>{mr.locked?J(F):r(L)?J(oe,-1):J(ne,1)})}s(Y),g(t,Y),nt()}nr(["click"]);const Cf={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"}]]};Cf.node;function a9(t,e){let n=Xe(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Cf}}))}const Ef={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"}]]};Ef.node;function pc(t,e){let n=Xe(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Ef}}))}const Mf={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"}]]};Mf.node;function Oi(t,e){let n=Xe(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Mf}}))}const zf={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"}]]};zf.node;function o9(t,e){let n=Xe(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return zf}}))}const Qf={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"}]]};Qf.node;function hc(t,e){let n=Xe(e,["$$slots","$$events","$$legacy"]);vt(t,st(()=>n,{get icon(){return Qf}}))}function xn(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,Qn,Hn;class i9{constructor(e){Be(this,to);Be(this,Qn,new Map);Be(this,Hn,new Map);Gn(this,to,e)}cachedDecision(e){return pe(this,Qn).get(xn(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,Qn).has(xn(o)));if(n.length===0)return;const a=new Map;for(const o of n){const i=xn(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=>[xn(f),f]));for(const f of o){const v=xn(f);pe(this,Qn).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,Qn).set(xn(f),wo(f,d))}).finally(()=>{for(const l of o)pe(this,Hn).delete(xn(l))});for(const l of o){const d=xn(l);pe(this,Hn).set(d,i.then(()=>pe(this,Qn).get(d)??wo(l,"auth.can did not return a decision")))}}await Promise.all(n.map(o=>pe(this,Hn).get(xn(o))))}}to=new WeakMap,Qn=new WeakMap,Hn=new WeakMap;function Ur(t){return typeof t=="string"&&t.trim()?t:void 0}function Ia(t){return typeof t=="number"&&Number.isFinite(t)?t:void 0}function s9(t){const e=Ur(t.value_type)??Ur(t.valueType)??Ur(t["value-type"]);return e==null?void 0:e.toLowerCase()}function l9(t){return Ia(t.schema_version)??Ia(t.schemaVersion)??Ia(t["schema-version"])}function c9(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=Ur(e.key)??Ur(e.path)??Ur(e.name);if(!n)return;const a={type:"secret_ref",key:n},o=Ur(e.store),i=Ur(e.collection);return o&&(a.store=o),i&&(a.collection=i),n==="***"&&(a.masked=!0),a}function bc(t){const e=t==null?void 0:t.trim();if(e)return Wn(e,"SHOW CONFIG prefix")}function Wn(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 Nf(t){return`'${t.replace(/'/g,"''")}'`}function d9(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"?Nf(t):JSON.stringify(t)}function u9(t,e){return`SET CONFIG ${Wn(t,"SET CONFIG key")} = ${d9(e)}`}function f9(t){const e=Wn(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 v9(t,e){return`SET SECRET ${Wn(t,"SET SECRET key")} = ${Nf(e)}`}function g9(t){return`DELETE SECRET ${Wn(t,"DELETE SECRET key")}`}function p9(t){return`UNSEAL VAULT ${Wn(t,"UNSEAL VAULT key")}`}function mc(t,e){if(!t.ok)throw new Error(t.error??`${e} failed`);return t}function xc(t,e){if(!t.ok)throw new Error(t.error??`${e} failed`);return{...t,query:e,record_count:0,result:{columns:[],records:[]}}}function h9(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=Ur(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 b9(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=Ur(a.key);if(!o||a.tombstone===!0)continue;const i={key:o,value:c9(a.value)??a.value},l=Ur(a.collection),d=Ia(a.version),f=s9(a),v=l9(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 m9(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=Ur(a.key);if(!o)continue;if(a.value!=="***")throw new Error("SHOW SECRETS returned an unmasked secret value");const l={key:o,value:"***"},d=Ur(a.status),f=Ia(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=bc(e),a=await this.transport.query(n?`SHOW CONFIG ${n}`:"SHOW CONFIG");return b9(a)}async showSecrets(e){const n=bc(e),a=await this.transport.query(n?`SHOW SECRETS ${n}`:"SHOW SECRETS");return m9(a)}async setConfig(e,n){const a=await this.transport.query(u9(e,n));return mc(a,"SET CONFIG")}async unsetConfig(e){const n=await this.transport.query(f9(e));return mc(n,"DELETE CONFIG")}async setSecret(e,n){const a=await this.transport.query(v9(e,n));return xc(a,"SET SECRET")}async deleteSecret(e){const n=await this.transport.query(g9(e));return xc(n,"DELETE SECRET")}async revealSecret(e){const n=Wn(e,"UNSEAL VAULT key"),a=await this.transport.query(p9(n));return h9(a,n)}}const Oa=[{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:"*"}}}],x9={"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"},_9={"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."},y9={"durability.mode":["sync","async","none"],"red.backup.backend":["local","s3","gcs"],"runtime.result_cache.backend":["legacy","blob_cache"]};function Tf(t){const n=(t.split(".").pop()??t).replace(/[_-]+/g," ").trim();return n?n.charAt(0).toUpperCase()+n.slice(1):t}function w9(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 k9(t){return typeof t=="boolean"?"boolean":typeof t=="number"?"number":Array.isArray(t)?"list":"text"}function Af(t){return!!t&&typeof t=="object"&&!Array.isArray(t)&&t.type==="secret_ref"&&typeof t.key=="string"}function gs(t){const e=y9[t.key],n=Af(t.value)?t.value:void 0,a=n?"secret-reference":e?"enum":w9(t.valueType)??k9(t.value),o={key:t.key,label:x9[t.key]??Tf(t.key),kind:a},i=_9[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 ps(t){return{key:t.key,label:Tf(t.key),kind:"text",masked:!0}}function S9(t,e=Oa){return e.find(n=>n.id===t)??e[0]??Oa[0]}function L9(t,e){return t.filter(n=>e.cachedCan(n.readGrant))}function C9(t,e){const n=e.trim().toLowerCase();return n?t.filter(a=>a.key.toLowerCase().includes(n)||gs(a).label.toLowerCase().includes(n)||Af(a.value)&&a.value.key.toLowerCase().includes(n)):[...t]}function E9(t,e){const n=e.trim().toLowerCase();return n?t.filter(a=>{var o;return a.key.toLowerCase().includes(n)||ps(a).label.toLowerCase().includes(n)||((o=a.status)==null?void 0:o.toLowerCase().includes(n))}):[...t]}function M9(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 _c(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 z9=m('<span class="font-mono text-fg-2"> </span> live rows',1),Q9=m('<div class="h-12 rounded-md bg-bg-2 motion-safe:animate-pulse"></div>'),N9=m('<div class="grid gap-1 p-2"></div>'),T9=m('<div class="h-12 rounded-md bg-bg-2 motion-safe:animate-pulse"></div>'),A9=m('<div class="grid gap-1 p-2"></div>'),I9=m('<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>'),O9=m('<div class="grid gap-1 p-2"></div>'),P9=m('<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>'),D9=m("<option> </option>"),R9=m("<option> </option>"),H9=m('<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>'),V9=m('<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"/>'),F9=m('<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>'),q9=m('<div class="grid gap-1 p-2"></div>'),B9=m('<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>'),K9=m('Live from <span class="font-mono text-fg-2"> </span>.',1),j9=m("<!> <!>",1),Z9=m("<!> <!>",1),U9=m('<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>'),W9=m('<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"/>'),G9=m('<span class="font-mono text-[12px] text-fg-1"> </span>'),Y9=m('<div class="flex flex-wrap justify-end gap-1.5"><!> <!></div>'),$9=m('<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>'),X9=m('<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>'),J9=m('<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>'),eS=m('<section><!> <div class="divide-y divide-line-1 overflow-hidden rounded-lg border border-line-1 bg-bg-1"><!> <!> <!> <!> <!></div></section>'),tS=m('<div role="status"><!> <span class="truncate"> </span></div>'),rS=m('<div role="status"><!> <span class="truncate"> </span></div>'),nS=m('<!> <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),aS=m('<section class="grid gap-4"><!> <!> <!></section>'),oS=m('<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>'),iS=m("<option> </option>"),sS=m("<option> </option>"),lS=m('<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>'),cS=m('<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>'),dS=m('<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"/>'),uS=m('<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"/>'),fS=m('<span class="font-mono text-[12px] text-fg-1"> </span>'),vS=m('<div class="flex flex-wrap justify-end gap-1.5"><!> <!></div>'),gS=m('<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>'),pS=m('<div role="status"><!> <span class="truncate"> </span></div>'),hS=m('<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>'),bS=m('<textarea rows="4" placeholder="[&quot;main&quot;, &quot;release&quot;]" 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>'),mS=m('<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"/>'),xS=m('<!> <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),_S=m('<section><!> <div class="divide-y divide-line-1 overflow-hidden rounded-lg border border-line-1 bg-bg-1"><!> <!> <!> <!></div> <!></section>'),yS=m("<!> <!>",1),wS=m('<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 kS(t,e){rt(e,!0);const n={key:Sa,settings:Zi};let a=xe(qt(Oa[0].id)),o=xe(qt([])),i=xe(null),l=xe(!1),d=xe(null),f=0;const v=y(()=>r(o).length>0),p=y(()=>S9(r(a),r(o)));let b=xe(qt({})),h=xe(null);const w=y(()=>r(v)?r(b)[r(p).id]??"":"");let k=xe(qt([])),L=xe(qt([])),O=xe(null),G=xe(null),I=xe(!1),Y=xe(null),K=xe(null),z=xe(!1),F=xe(null),ne=xe(null),oe=xe(""),J=xe(""),ue=xe("text"),Z=xe(""),C=xe(null),N=xe(""),_=xe(""),T=xe(!1),D=xe(null),te=xe(null),V=null;const $=y(()=>Ke.connected),ee=y(()=>Ke.active.url),A=y(()=>r(p).id==="secrets"?r(K):r(Y)),H=y(()=>!r($)||r(A)!==null),B=y(()=>C9(r(k),r(w))),le=y(()=>E9(r(L),r(w))),he=y(()=>r(p).id==="secrets"?r(le).length:r(B).length),ie=y(()=>r(p).id==="secrets"?r(L).length:r(k).length),X=y(()=>r(B).find(ye=>ye.key===r(O))??r(B)[0]??null),U=y(()=>r(le).find(ye=>ye.key===r(G))??r(le)[0]??null),W=y(()=>r(X)?gs(r(X)):null),E=y(()=>r(U)?ps(r(U)):null),q=y(()=>{var ye;return r(p).id==="config"&&!!r(p).writeGrant&&((ye=r(i))==null?void 0:ye.cachedCan(r(p).writeGrant))===!0}),P=y(()=>{var ye;return r(p).id==="secrets"&&!!r(p).writeGrant&&((ye=r(i))==null?void 0:ye.cachedCan(r(p).writeGrant))===!0}),M=y(()=>{var ye;return r(p).id==="secrets"&&!!r(p).revealGrant&&((ye=r(i))==null?void 0:ye.cachedCan(r(p).revealGrant))===!0}),j=y(()=>{var ye;return r(U)&&((ye=r(te))==null?void 0:ye.key)===r(U).key?r(te).value:null});function re(ye){r(v)&&x(b,{...r(b),[r(p).id]:ye},!0)}function de(ye,Ie,Fe){x(F,{paneId:ye,tone:Ie,message:Fe},!0)}function be(){V&&(clearTimeout(V),V=null),x(te,null)}function fe(ye,Ie){be(),x(te,{key:ye,value:Ie},!0),V=setTimeout(()=>{x(te,null),V=null},3e4)}function Le(ye){r(G)!==ye&&be(),x(G,ye,!0)}function ke(ye){var Ie,Fe;(ye.metaKey||ye.ctrlKey)&&ye.key.toLowerCase()==="k"&&(ye.preventDefault(),(Ie=r(h))==null||Ie.focus(),(Fe=r(h))==null||Fe.select())}async function me(){const ye=Ke.client,Ie=++f;if(x(i,null),x(o,[],!0),x(d,null),x(k,[],!0),x(L,[],!0),x(O,null),x(G,null),x(F,null),x(ne,null),x(C,null),x(N,""),x(_,""),x(D,null),be(),!ye||!r($)){x(l,!1);return}x(l,!0);const Fe=new i9(ye);try{if(await St.track("settings · auth.can panes",()=>Fe.preload(Oa.flatMap(et=>[et.readGrant,et.writeGrant,et.revealGrant].filter(at=>!!at)))),Ie!==f)return;x(i,Fe,!0);const We=L9(Oa,Fe);x(o,We,!0),We.length>0&&!We.some(et=>et.id===r(a))&&x(a,We[0].id,!0)}catch(We){if(Ie!==f)return;x(o,[],!0),x(i,null),x(d,We.message,!0)}finally{Ie===f&&x(l,!1)}}async function ge(){var Fe,We;const ye=Ke.client,Ie=r(i);if(!ye||!r($)||!Ie||!r(v)||!Ie.cachedCan(r(p).readGrant)){x(k,[],!0),x(L,[],!0),x(O,null),x(G,null),x(Y,null),x(K,null);return}x(I,!0),r(p).id==="secrets"?(x(K,null),x(D,null),be()):x(Y,null);try{const et=new On(ye);if(r(p).id==="secrets"){const at=await St.track("settings · show secrets",()=>et.showSecrets());x(L,at,!0),(!r(G)||!at.some(Ue=>Ue.key===r(G)))&&x(G,((Fe=at[0])==null?void 0:Fe.key)??null,!0)}else{const at=await St.track("settings · show config",()=>et.showConfig());x(k,at,!0),(!r(O)||!at.some(Ue=>Ue.key===r(O)))&&x(O,((We=at[0])==null?void 0:We.key)??null,!0)}}catch(et){r(p).id==="secrets"?(x(L,[],!0),x(G,null),x(K,et.message,!0)):(x(k,[],!0),x(O,null),x(Y,et.message,!0))}finally{x(I,!1)}}function De(){return _c({key:r(J),label:r(J),kind:r(ue)},r(ue)==="boolean"&&!r(Z).trim()?"false":r(Z))}async function ce(){const ye=Ke.client;if(!ye||!r(X)||!r(W)||!r(q)||r(z))return;const Ie=_c(r(W),r(oe));if(!Ie.ok){de("config","error",Ie.error??"Invalid config value.");return}x(z,!0),x(F,null);try{const Fe=new On(ye);await St.track("settings · set config",()=>Fe.setConfig(r(X).key,Ie.value??null)),x(O,r(X).key,!0),de("config","ok",`${r(X).key} saved.`),await ge()}catch(Fe){de("config","error",Fe.message)}finally{x(z,!1)}}async function se(){const ye=Ke.client;if(!ye||!r(X)||!r(q)||r(z)||!window.confirm(`Unset ${r(X).key}?`))return;const Ie=r(X).key;x(z,!0),x(F,null);try{const Fe=new On(ye);await St.track("settings · delete config",()=>Fe.unsetConfig(Ie)),x(O,Ie,!0),de("config","ok",`${Ie} unset.`),await ge()}catch(Fe){de("config","error",Fe.message)}finally{x(z,!1)}}async function ve(){const ye=Ke.client;if(!ye||!r(q)||r(z))return;const Ie=De();if(!Ie.ok){de("config","error",Ie.error??"Invalid config value.");return}const Fe=r(J).trim();x(z,!0),x(F,null);try{const We=new On(ye);await St.track("settings · set config",()=>We.setConfig(Fe,Ie.value??null)),x(O,Fe,!0),x(J,""),x(Z,""),de("config","ok",`${Fe} set.`),await ge()}catch(We){de("config","error",We.message)}finally{x(z,!1)}}async function Te(){const ye=Ke.client;if(!ye||!r(P)||r(z))return;const Ie=r(N).trim(),Fe=r(_);if(!Ie){de("secrets","error","Secret key is required.");return}if(!Fe){de("secrets","error","Secret value is required.");return}x(z,!0),x(F,null);try{const We=new On(ye);await St.track("settings · set secret",()=>We.setSecret(Ie,Fe)),x(G,Ie,!0),x(_,""),de("secrets","ok",`${Ie} set.`),await ge()}catch(We){x(_,""),de("secrets","error",We.message)}finally{x(z,!1)}}async function Ae(){const ye=Ke.client;if(!ye||!r(U)||!r(P)||r(z)||!window.confirm(`Delete secret ${r(U).key}?`))return;const Ie=r(U).key;x(z,!0),x(F,null);try{const Fe=new On(ye);await St.track("settings · delete secret",()=>Fe.deleteSecret(Ie)),x(_,""),x(G,Ie,!0),de("secrets","ok",`${Ie} deleted.`),await ge()}catch(Fe){x(_,""),de("secrets","error",Fe.message)}finally{x(z,!1)}}async function we(){const ye=Ke.client;if(!ye||!r(U)||!r(M)||r(T))return;const Ie=r(U).key;x(T,!0),x(D,null),be();try{const Fe=new On(ye),We=await St.track("settings · reveal secret",()=>Fe.revealSecret(Ie));fe(We.key,We.value),x(D,{tone:"ok",key:Ie,message:"Plaintext revealed temporarily."},!0)}catch(Fe){x(D,{tone:"error",key:Ie,message:Fe.message},!0)}finally{x(T,!1)}}Tt(()=>{r(ee),r($),me()}),Tt(()=>{r(ee),r($),r(a),r(i),r(o),ge()}),Tt(()=>{if(!r(X)){x(ne,null),x(oe,"");return}r(ne)!==r(X).key&&(x(ne,r(X).key,!0),x(oe,M9(r(X)),!0),x(F,null))}),Tt(()=>{r(p).id!=="secrets"||!r(U)||r(C)!==r(U).key&&(!r(N).trim()||r(N)===r(C))&&(x(N,r(U).key,!0),x(C,r(U).key,!0),x(F,null))});function Ne(ye){if(!Number.isFinite(ye))return String(ye);const Ie=["B","KB","MB","GB","TB"];let Fe=ye,We=0;for(;Fe>=1024&&We<Ie.length-1;)Fe/=1024,We++;return`${We===0?Fe:Fe.toFixed(1)} ${Ie[We]}`}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 Qe(ye){const Ie=ye.value;return Me(Ie)?Ee(Ie):typeof Ie=="number"&&ye.key.endsWith("_bytes")?Ne(Ie):Array.isArray(Ie)?`${Ie.length} item${Ie.length===1?"":"s"}`:Ie&&typeof Ie=="object"?JSON.stringify(Ie):Ie==null?"null":String(Ie)}function Ye(ye){return Array.isArray(ye)||ye&&typeof ye=="object"?JSON.stringify(ye,null,2):ye==null?"null":String(ye)}function Ve(){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}))},Ie=new Blob([JSON.stringify(ye,null,2)],{type:"application/json"}),Fe=URL.createObjectURL(Ie),We=document.createElement("a");We.href=Fe,We.download=`reddb-config-${new Date().toISOString().slice(0,10)}.json`,We.click(),URL.revokeObjectURL(Fe)}function Je(ye){return ye.id==="secrets"?r(L).length:r(k).length}var lt=wS();Sn("keydown",Br,ke);var ct=c(lt),qe=c(ct),He=u(c(qe),2);Ge(He,21,()=>r(o),ye=>ye.id,(ye,Ie)=>{const Fe=y(()=>n[r(Ie).icon]??Zi);{const We=Ue=>{Qc(Ue,{get icon(){return r(Fe)},size:"sm"})},et=Ue=>{In(Ue,{children:(yt,ft)=>{Se();var pt=bt();Q(It=>S(pt,It),[()=>Je(r(Ie))]),g(yt,pt)},$$slots:{default:!0}})};let at=y(()=>r(Ie).id===r(p).id);Ak(ye,{get label(){return r(Ie).label},get current(){return r(at)},onclick:()=>x(a,r(Ie).id,!0),icon:We,trailing:et,$$slots:{icon:!0,trailing:!0}})}}),s(He);var je=u(He,2),ot=c(je);{var ae=ye=>{var Ie=bt("checking grants");g(ye,Ie)},tt=ye=>{var Ie=z9(),Fe=ze(Ie),We=c(Fe,!0);s(Fe),Se(),Q(()=>S(We,r(ie))),g(ye,Ie)},$e=ye=>{var Ie=bt("no readable panes");g(ye,Ie)};R(ot,ye=>{r(l)?ye(ae):r(v)?ye(tt,1):ye($e,-1)})}s(je),s(qe);var Ze=u(qe,2),ut=c(Ze),Ct=c(ut),Qt=c(Ct);Wr(Qt,{class:"pointer-events-none absolute left-2.5 top-1/2 size-3.5 -translate-y-1/2 text-fg-3"});var Et=u(Qt,2);Yt(Et),Xr(Et,ye=>x(h,ye),()=>r(h)),s(Ct),s(ut);var Lt=u(ut,2),mt=c(Lt);{var _t=ye=>{var Ie=N9();Ge(Ie,20,()=>Array(4),gr,(Fe,We)=>{var et=Q9();g(Fe,et)}),s(Ie),g(ye,Ie)},wt=ye=>{{let Ie=y(()=>r($)?"No readable settings panes":"No active connection"),Fe=y(()=>r($)?"The current principal has no Settings read grant.":"Connect to a reddb instance to inspect its live configuration."),We=y(()=>r(d)??(r($)?"auth.can denied settings reads":"red serve"));Hr(ye,{get icon(){return Oi},get title(){return r(Ie)},get message(){return r(Fe)},get hint(){return r(We)}})}},Ot=ye=>{{let Ie=y(()=>r($)?`${r(p).label} is unreachable`:"No active connection"),Fe=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."),We=y(()=>r($)?r(A)??r(ee):"red serve");Hr(ye,{get icon(){return hc},get title(){return r(Ie)},get message(){return r(Fe)},get hint(){return r(We)}})}},$t=ye=>{var Ie=A9();Ge(Ie,20,()=>Array(8),gr,(Fe,We)=>{var et=T9();g(Fe,et)}),s(Ie),g(ye,Ie)},pr=ye=>{{let Ie=y(()=>r(w)?`No ${r(p).label.toLowerCase()} match`:`No ${r(p).label.toLowerCase()} reported`),Fe=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 Wr},get title(){return r(Ie)},get message(){return r(Fe)}})}},hr=ye=>{var Ie=O9();Ge(Ie,21,()=>r(le),Fe=>Fe.key,(Fe,We)=>{const et=y(()=>ps(r(We)));var at=I9(),Ue=c(at),yt=c(Ue),ft=c(yt,!0);s(yt);var pt=u(yt,2),It=c(pt,!0);s(pt),s(Ue);var Pt=u(Ue,2),er=c(Pt);Sa(er,{class:"size-3"});var ur=u(er);s(Pt),s(at),Q(Ht=>{var Dt;Oe(at,1,Ht),Ce(Ue,"aria-current",((Dt=r(U))==null?void 0:Dt.key)===r(We).key?"page":void 0),S(ft,r(et).label),S(It,r(We).key),S(ur,` ${r(We).value??""}`)},[()=>{var Ht;return Re(["grid grid-cols-[minmax(0,1fr)_auto] items-center gap-2 rounded-md px-2.5 py-2 transition-colors",((Ht=r(U))==null?void 0:Ht.key)===r(We).key?"bg-bg-3 text-fg-0":"text-fg-1 hover:bg-bg-2"].join(" "))}]),_e("click",Ue,()=>Le(r(We).key)),g(Fe,at)}),s(Ie),g(ye,Ie)},it=ye=>{var Ie=q9();Ge(Ie,21,()=>r(B),Fe=>Fe.key,(Fe,We)=>{const et=y(()=>gs(r(We)));var at=F9(),Ue=c(at),yt=c(Ue),ft=c(yt,!0);s(yt);var pt=u(yt,2),It=c(pt,!0);s(pt),s(Ue);var Pt=u(Ue,2);{var er=Dt=>{var Ut=P9(),jt=c(Ut);Yt(jt);var ar=u(jt);s(Ut),Q(()=>{Ea(jt,r(We).value===!0),S(ar,` ${r(We).value?"true":"false"}`)}),g(Dt,Ut)},ur=Dt=>{var Ut=H9(),jt=c(Ut);{var ar=kt=>{var Vt=D9(),Zt=c(Vt,!0);s(Vt);var cr={};Q((Xt,Mr)=>{S(Zt,Xt),cr!==(cr=Mr)&&(Vt.value=(Vt.__value=Mr)??"")},[()=>Qe(r(We)),()=>String(r(We).value)]),g(kt,Vt)},fr=y(()=>{var kt;return!((kt=r(et).options)!=null&&kt.includes(String(r(We).value)))});R(jt,kt=>{r(fr)&&kt(ar)})}var vr=u(jt);Ge(vr,17,()=>r(et).options??[],gr,(kt,Vt)=>{var Zt=R9(),cr=c(Zt,!0);s(Zt);var Xt={};Q(()=>{S(cr,r(Vt)),Xt!==(Xt=r(Vt))&&(Zt.value=(Zt.__value=r(Vt))??"")}),g(kt,Zt)}),s(Ut);var Wt;ea(Ut),Q(kt=>{Ce(Ut,"aria-label",r(et).label),Wt!==(Wt=kt)&&(Ut.value=(Ut.__value=kt)??"",ta(Ut,kt))},[()=>String(r(We).value)]),g(Dt,Ut)},Ht=Dt=>{var Ut=V9();Yt(Ut),Q(jt=>{Ce(Ut,"aria-label",r(et).label),$r(Ut,jt)},[()=>Qe(r(We))]),g(Dt,Ut)};R(Pt,Dt=>{r(et).kind==="boolean"?Dt(er):r(et).kind==="enum"?Dt(ur,1):Dt(Ht,-1)})}s(at),Q(Dt=>{var Ut;Oe(at,1,Dt),Ce(Ue,"aria-current",((Ut=r(X))==null?void 0:Ut.key)===r(We).key?"page":void 0),S(ft,r(et).label),S(It,r(We).key)},[()=>{var Dt;return Re(["grid grid-cols-[minmax(0,1fr)_auto] items-center gap-2 rounded-md px-2.5 py-2 transition-colors",((Dt=r(X))==null?void 0:Dt.key)===r(We).key?"bg-bg-3 text-fg-0":"text-fg-1 hover:bg-bg-2"].join(" "))}]),_e("click",Ue,()=>x(O,r(We).key,!0)),g(Fe,at)}),s(Ie),g(ye,Ie)};R(mt,ye=>{r(l)?ye(_t):r(v)?r(H)?ye(Ot,2):r(I)&&r(he)===0?ye($t,3):r(he)===0?ye(pr,4):r(p).id==="secrets"?ye(hr,5):ye(it,-1):ye(wt,1)})}s(Lt);var dt=u(Lt,2),At=c(dt);{var Kt=ye=>{var Ie=B9(),Fe=c(Ie);a9(Fe,{class:"size-3.5"}),Se(),s(Ie),Q(()=>Ie.disabled=r(l)||!r(v)||r(I)||r(k).length===0),_e("click",Ie,Ve),g(ye,Ie)};R(At,ye=>{r(p).id==="config"&&ye(Kt)})}var or=u(At,2),ir=c(or);{var sr=ye=>{var Ie=K9(),Fe=u(ze(Ie)),We=c(Fe,!0);s(Fe),Se(),Q(()=>S(We,r(ee))),g(ye,Ie)},wr=ye=>{var Ie=bt("Requires a Settings read grant.");g(ye,Ie)};R(ir,ye=>{r(v)?ye(sr):ye(wr,-1)})}s(or),s(dt),s(Ze);var lr=u(Ze,2),xr=c(lr),Er=c(xr);{var Qr=ye=>{var Ie=j9(),Fe=ze(Ie);Aa(Fe,{eyebrow:"Settings",title:"Settings",subtitle:"Checking Settings grants."});var We=u(Fe,2);Hr(We,{get icon(){return Oi},title:"Checking settings grants",message:"red-ui is asking reddb which Settings panes this principal can read.",hint:"POST /auth/can"}),g(ye,Ie)},kr=ye=>{var Ie=Z9(),Fe=ze(Ie);Aa(Fe,{eyebrow:"Settings",title:"Settings",subtitle:"No readable governance surface."});var We=u(Fe,2);{let et=y(()=>r($)?"No readable settings panes":"No active connection"),at=y(()=>r($)?"Missing Settings read grant for this principal.":"Start or select a reddb target, then return here to inspect live config."),Ue=y(()=>r(d)??(r($)?"missing Settings read grant":"docker compose -f docker/compose.yml up -d"));Hr(We,{get icon(){return Oi},get title(){return r(et)},get message(){return r(at)},get hint(){return r(Ue)}})}g(ye,Ie)},Nr=ye=>{var Ie=yS(),Fe=ze(Ie);Aa(Fe,{eyebrow:"Settings",get title(){return r(p).label},get subtitle(){return r(p).blurb},actions:pt=>{var It=U9(),Pt=c(It);{let er=y(()=>r(I)?"size-3.5 animate-spin":"size-3.5");Cs(Pt,{get class(){return r(er)}})}Se(),s(It),Q(()=>It.disabled=r(I)||!r($)),_e("click",It,ge),g(pt,It)}});var We=u(Fe,2);{var et=ft=>{{let pt=y(()=>r($)?`Unable to read ${r(p).label.toLowerCase()}`:"No active connection"),It=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(A)??r(ee):"docker compose -f docker/compose.yml up -d");Hr(ft,{get icon(){return hc},get title(){return r(pt)},get message(){return r(It)},get hint(){return r(Pt)}})}},at=ft=>{var pt=aS(),It=c(pt);{var Pt=jt=>{Hr(jt,{get icon(){return Sa},title:"No secret selected",message:"Select a live SHOW SECRETS row to inspect its masked metadata."})},er=jt=>{var ar=eS(),fr=c(ar);yo(fr,{get title(){return r(E).label},class:"mb-2",icon:ht=>{Sa(ht,{class:"size-3.5"})},meta:ht=>{In(ht,{children:(dr,zr)=>{Se();var Ar=bt("masked");g(dr,Ar)},$$slots:{default:!0}})},$$slots:{icon:!0,meta:!0}});var vr=u(fr,2),Wt=c(vr);mn(Wt,{get title(){return r(E).label},description:"Vault metadata row; plaintext is masked unless break-glass reveal is granted.",get hint(){return r(U).key},wide:!0,action:gt=>{var ht=W9();Yt(ht),Q(()=>{$r(ht,r(j)??r(U).value),Ce(ht,"aria-label",r(E).label)}),g(gt,ht)},$$slots:{action:!0}});var kt=u(Wt,2);mn(kt,{title:"Key",get hint(){return r(U).key},action:gt=>{var ht=G9(),dr=c(ht,!0);s(ht),Q(()=>S(dr,r(U).key)),g(gt,ht)},$$slots:{action:!0}});var Vt=u(kt,2);mn(Vt,{title:"Metadata",action:gt=>{var ht=Y9(),dr=c(ht);In(dr,{children:(Ar,Pr)=>{Se();var Jt=bt();Q(()=>S(Jt,r(U).status??"status unknown")),g(Ar,Jt)},$$slots:{default:!0}});var zr=u(dr,2);In(zr,{children:(Ar,Pr)=>{Se();var Jt=bt();Q(()=>S(Jt,`version ${(r(U).version===void 0?"unknown":r(U).version)??""}`)),g(Ar,Jt)},$$slots:{default:!0}}),s(ht),g(gt,ht)},$$slots:{action:!0}});var Zt=u(Vt,2);{var cr=Rt=>{mn(Rt,{title:"Break-glass reveal",description:"Calls reddb's audited UNSEAL VAULT path and clears plaintext after 30 seconds.",action:ht=>{var dr=xt(),zr=ze(dr);{var Ar=Jt=>{var br=$9(),Ir=c(br);su(Ir,{class:"size-3.5"}),Se(),s(br),_e("click",br,be),g(Jt,br)},Pr=Jt=>{var br=X9(),Ir=c(br);{let Yr=y(()=>r(T)?"size-3.5 animate-pulse":"size-3.5");cu(Ir,{get class(){return r(Yr)}})}Se(),s(br),Q(()=>br.disabled=r(T)),_e("click",br,we),g(Jt,br)};R(zr,Jt=>{r(j)!==null?Jt(Ar):Jt(Pr,-1)})}g(ht,dr)},$$slots:{action:!0}})};R(Zt,Rt=>{r(M)&&Rt(cr)})}var Xt=u(Zt,2);{var Mr=Rt=>{mn(Rt,{title:"Authoring",description:"Delete the selected vault secret through DELETE SECRET.",action:ht=>{var dr=J9(),zr=c(dr);Da(zr,{class:"size-3.5"}),Se(),s(dr),Q(()=>dr.disabled=r(z)),_e("click",dr,Ae),g(ht,dr)},$$slots:{action:!0}})};R(Xt,Rt=>{r(P)&&Rt(Mr)})}s(vr),s(ar),g(jt,ar)};R(It,jt=>{!r(U)||!r(E)?jt(Pt):jt(er,-1)})}var ur=u(It,2);{var Ht=jt=>{var ar=tS(),fr=c(ar);ra(fr,{class:"size-3 shrink-0"});var vr=u(fr,2),Wt=c(vr,!0);s(vr),s(ar),Q(kt=>{Oe(ar,1,kt),S(Wt,r(D).message)},[()=>Re(["inline-flex max-w-full items-center gap-1.5 rounded-md border px-2.5 py-1.5 font-mono text-[11px]",r(D).tone==="ok"?"border-ok/30 bg-ok/5 text-ok":"border-danger/30 bg-danger/5 text-danger"].join(" "))]),g(jt,ar)};R(ur,jt=>{var ar;r(D)&&r(D).key===((ar=r(U))==null?void 0:ar.key)&&jt(Ht)})}var Dt=u(ur,2);{var Ut=jt=>{var ar=nS(),fr=ze(ar);{var vr=gt=>{var ht=rS(),dr=c(ht);ra(dr,{class:"size-3 shrink-0"});var zr=u(dr,2),Ar=c(zr,!0);s(zr),s(ht),Q(Pr=>{Oe(ht,1,Pr),S(Ar,r(F).message)},[()=>Re(["inline-flex max-w-full items-center gap-1.5 rounded-md border px-2.5 py-1.5 font-mono text-[11px]",r(F).tone==="ok"?"border-ok/30 bg-ok/5 text-ok":"border-danger/30 bg-danger/5 text-danger"].join(" "))]),g(gt,ht)};R(fr,gt=>{var ht;((ht=r(F))==null?void 0:ht.paneId)==="secrets"&&gt(vr)})}var Wt=u(fr,2),kt=c(Wt);yo(kt,{title:"Set secret",class:"mb-2",icon:ht=>{Qa(ht,{class:"size-3.5"})},$$slots:{icon:!0}});var Vt=u(kt,2),Zt=c(Vt);Yt(Zt);var cr=u(Zt,2);Yt(cr);var Xt=u(cr,2),Mr=c(Xt),Rt=c(Mr);pc(Rt,{class:"size-3.5"}),Se(),s(Mr),s(Xt),s(Vt),s(Wt),Q(gt=>{$r(Zt,r(N)),Zt.disabled=r(z),$r(cr,r(_)),cr.disabled=r(z),Mr.disabled=gt},[()=>r(z)||!r(N).trim()||!r(_)]),_e("input",Zt,gt=>x(N,gt.currentTarget.value,!0)),_e("input",cr,gt=>x(_,gt.currentTarget.value,!0)),_e("click",Mr,Te),g(jt,ar)};R(Dt,jt=>{r(P)&&jt(Ut)})}s(pt),g(ft,pt)},Ue=ft=>{Hr(ft,{get icon(){return O0},title:"No config entry selected",message:"Select a live SHOW CONFIG row to inspect its read-only control."})},yt=ft=>{var pt=_S(),It=c(pt);yo(It,{get title(){return r(W).label},class:"mb-2",icon:Wt=>{var kt=xt(),Vt=ze(kt);{var Zt=Xt=>{P0(Xt,{class:"size-3.5"})},cr=Xt=>{o9(Xt,{class:"size-3.5"})};R(Vt,Xt=>{r(W).kind==="secret-reference"?Xt(Zt):Xt(cr,-1)})}g(Wt,kt)},meta:Wt=>{In(Wt,{children:(kt,Vt)=>{Se();var Zt=bt();Q(()=>S(Zt,r(W).kind)),g(kt,Zt)},$$slots:{default:!0}})},$$slots:{icon:!0,meta:!0}});var Pt=u(It,2),er=c(Pt);mn(er,{get title(){return r(W).label},get description(){return r(W).description},get hint(){return r(X).key},wide:!0,action:vr=>{var Wt=xt(),kt=ze(Wt);{var Vt=Rt=>{var gt=oS(),ht=c(gt);Yt(ht);var dr=u(ht);s(gt),Q(()=>{Ea(ht,r(q)?r(oe)==="true":r(X).value===!0),ht.disabled=!r(q)||r(z),S(dr,` ${(r(q)?r(oe):r(X).value?"true":"false")??""}`)}),_e("change",ht,zr=>x(oe,zr.currentTarget.checked?"true":"false",!0)),g(Rt,gt)},Zt=Rt=>{var gt=lS(),ht=c(gt);{var dr=Jt=>{var br=iS(),Ir=c(br,!0);s(br);var Yr={};Q((rn,Ft)=>{S(Ir,rn),Yr!==(Yr=Ft)&&(br.value=(br.__value=Ft)??"")},[()=>Qe(r(X)),()=>String(r(X).value)]),g(Jt,br)},zr=y(()=>{var Jt;return!((Jt=r(W).options)!=null&&Jt.includes(String(r(X).value)))});R(ht,Jt=>{r(zr)&&Jt(dr)})}var Ar=u(ht);Ge(Ar,17,()=>r(W).options??[],gr,(Jt,br)=>{var Ir=sS(),Yr=c(Ir,!0);s(Ir);var rn={};Q(()=>{S(Yr,r(br)),rn!==(rn=r(br))&&(Ir.value=(Ir.__value=r(br))??"")}),g(Jt,Ir)}),s(gt);var Pr;ea(gt),Q(Jt=>{gt.disabled=!r(q)||r(z),Pr!==(Pr=Jt)&&(gt.value=(gt.__value=Jt)??"",ta(gt,Jt))},[()=>r(q)?r(oe):String(r(X).value)]),_e("change",gt,Jt=>x(oe,Jt.currentTarget.value,!0)),g(Rt,gt)},cr=Rt=>{var gt=cS();Pa(gt),Q(ht=>{gt.readOnly=!r(q),gt.disabled=r(z),$r(gt,ht)},[()=>r(q)?r(oe):Ye(r(X).value)]),_e("input",gt,ht=>x(oe,ht.currentTarget.value,!0)),g(Rt,gt)},Xt=Rt=>{var gt=dS();Yt(gt),Q(ht=>$r(gt,ht),[()=>Qe(r(X))]),g(Rt,gt)},Mr=Rt=>{var gt=uS();Yt(gt),Q(ht=>{gt.readOnly=!r(q),gt.disabled=r(z),Ce(gt,"type",(r(W).kind==="number","text")),$r(gt,ht)},[()=>r(q)?r(oe):Qe(r(X))]),_e("input",gt,ht=>x(oe,ht.currentTarget.value,!0)),g(Rt,gt)};R(kt,Rt=>{r(W).kind==="boolean"?Rt(Vt):r(W).kind==="enum"?Rt(Zt,1):r(W).kind==="list"?Rt(cr,2):r(W).kind==="secret-reference"?Rt(Xt,3):Rt(Mr,-1)})}g(vr,Wt)},$$slots:{action:!0}});var ur=u(er,2);mn(ur,{title:"Key",get hint(){return r(X).key},action:vr=>{var Wt=fS(),kt=c(Wt,!0);s(Wt),Q(()=>S(kt,r(X).key)),g(vr,Wt)},$$slots:{action:!0}});var Ht=u(ur,2);mn(Ht,{title:"Schema",action:vr=>{var Wt=vS(),kt=c(Wt);In(kt,{children:(Zt,cr)=>{Se();var Xt=bt();Q(()=>S(Xt,r(W).valueType??"runtime type")),g(Zt,Xt)},$$slots:{default:!0}});var Vt=u(kt,2);In(Vt,{children:(Zt,cr)=>{Se();var Xt=bt();Q(()=>S(Xt,`schema ${(r(W).schemaVersion===void 0?"unknown":r(W).schemaVersion)??""}`)),g(Zt,Xt)},$$slots:{default:!0}}),s(Wt),g(vr,Wt)},$$slots:{action:!0}});var Dt=u(Ht,2);{var Ut=fr=>{mn(fr,{title:"Authoring",description:"Submit changes through SET CONFIG or unset through DELETE CONFIG.",action:Wt=>{var kt=gS(),Vt=c(kt),Zt=c(Vt);pc(Zt,{class:"size-3.5"}),Se(),s(Vt);var cr=u(Vt,2),Xt=c(cr);Da(Xt,{class:"size-3.5"}),Se(),s(cr),s(kt),Q(()=>{Vt.disabled=r(z)||r(W).kind==="secret-reference",Ce(Vt,"title",r(W).kind==="secret-reference"?"Secret references can be unset, but not edited as plaintext config.":"Save config value"),cr.disabled=r(z)}),_e("click",Vt,ce),_e("click",cr,se),g(Wt,kt)},$$slots:{action:!0}})};R(Dt,fr=>{r(q)&&fr(Ut)})}s(Pt);var jt=u(Pt,2);{var ar=fr=>{var vr=xS(),Wt=ze(vr);{var kt=Mt=>{var Gt=pS(),yr=c(Gt);ra(yr,{class:"size-3 shrink-0"});var nn=u(yr,2),Nn=c(nn,!0);s(nn),s(Gt),Q(xa=>{Oe(Gt,1,xa),S(Nn,r(F).message)},[()=>Re(["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(F).tone==="ok"?"border-ok/30 bg-ok/5 text-ok":"border-danger/30 bg-danger/5 text-danger"].join(" "))]),g(Mt,Gt)};R(Wt,Mt=>{var Gt;((Gt=r(F))==null?void 0:Gt.paneId)==="config"&&Mt(kt)})}var Vt=u(Wt,2),Zt=c(Vt);yo(Zt,{title:"Set config key",class:"mb-2",icon:Gt=>{Qa(Gt,{class:"size-3.5"})},$$slots:{icon:!0}});var cr=u(Zt,2),Xt=c(cr),Mr=c(Xt);Yt(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 zr=u(dr);zr.value=zr.__value="list",s(Rt);var Ar;ea(Rt),s(Xt);var Pr=u(Xt,2);{var Jt=Mt=>{var Gt=hS(),yr=c(Gt);Yt(yr);var nn=u(yr);s(Gt),Q(()=>{Ea(yr,r(Z)==="true"),yr.disabled=r(z),S(nn,` ${r(Z)==="true"?"true":"false"}`)}),_e("change",yr,Nn=>x(Z,Nn.currentTarget.checked?"true":"false",!0)),g(Mt,Gt)},br=Mt=>{var Gt=bS();Pa(Gt),Q(()=>{$r(Gt,r(Z)),Gt.disabled=r(z)}),_e("input",Gt,yr=>x(Z,yr.currentTarget.value,!0)),g(Mt,Gt)},Ir=Mt=>{var Gt=mS();Yt(Gt),Q(()=>{$r(Gt,r(Z)),Ce(Gt,"placeholder",r(ue)==="number"?"1000":"value"),Gt.disabled=r(z)}),_e("input",Gt,yr=>x(Z,yr.currentTarget.value,!0)),g(Mt,Gt)};R(Pr,Mt=>{r(ue)==="boolean"?Mt(Jt):r(ue)==="list"?Mt(br,1):Mt(Ir,-1)})}var Yr=u(Pr,2),rn=c(Yr),Ft=c(rn);Qa(Ft,{class:"size-3.5"}),Se(),s(rn),s(Yr),s(cr),s(Vt),Q(Mt=>{$r(Mr,r(J)),Mr.disabled=r(z),Rt.disabled=r(z),Ar!==(Ar=r(ue))&&(Rt.value=(Rt.__value=r(ue))??"",ta(Rt,r(ue))),rn.disabled=Mt},[()=>r(z)||!r(J).trim()]),_e("input",Mr,Mt=>x(J,Mt.currentTarget.value,!0)),_e("change",Rt,Mt=>x(ue,Mt.currentTarget.value,!0)),_e("click",rn,ve),g(fr,vr)};R(jt,fr=>{r(q)&&fr(ar)})}s(pt),g(ft,pt)};R(We,ft=>{r(H)?ft(et):r(p).id==="secrets"?ft(at,1):!r(X)||!r(W)?ft(Ue,2):ft(yt,-1)})}g(ye,Ie)};R(Er,ye=>{r(l)?ye(Qr):r(v)?ye(Nr,-1):ye(kr,1)})}s(xr),s(lr),s(ct),s(lt),Q(ye=>{Ce(Ze,"aria-label",`${r(p).label} entries`),Ce(Et,"placeholder",ye),$r(Et,r(w)),Et.disabled=r(l)||!r(v)||r(H)},[()=>`Search ${r(p).label.toLowerCase()} ⌘K`]),_e("input",Et,ye=>re(ye.currentTarget.value)),_e("keydown",Et,ye=>{ye.key==="Escape"&&(re(""),ye.currentTarget.blur())}),g(t,lt),nt()}nr(["input","keydown","click","change"]);const yc="var(--reddb-font-family-sans)",wc="var(--reddb-font-family-mono)",Bs=[{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:yc,mono:wc}},{name:"nocturne",label:"Nocturne",description:"Indigo-tinted midnight with a violet accent.",colors:{bg:"#0a0b14",accent:"#7c5cff",fg:"#f5f6fb"},typography:{sans:yc,mono:wc}}],Ks=Bs[0],If="red-ui-skin";function kc(t){return Bs.find(e=>e.name===t)??Ks}function _n(t,e,n){return`color-mix(in srgb, ${t} ${e}%, ${n})`}function Pi(t,e){return`color-mix(in srgb, ${t} ${e}%, transparent)`}const Di=[0,4,9,15],Ri=[6,13,22],Hi=[100,78,58,45];function hs(t){const{bg:e,accent:n,fg:a}=t.colors,o="#ffffff";return{"--color-bg-0":e,"--color-bg-1":_n(o,Di[1],e),"--color-bg-2":_n(o,Di[2],e),"--color-bg-3":_n(o,Di[3],e),"--color-fg-0":a,"--color-fg-1":_n(a,Hi[1],e),"--color-fg-2":_n(a,Hi[2],e),"--color-fg-3":_n(a,Hi[3],e),"--color-line-1":_n(o,Ri[0],e),"--color-line-2":_n(o,Ri[1],e),"--color-line-3":_n(o,Ri[2],e),"--color-accent":n,"--color-accent-soft":Pi(n,12),"--color-accent-glow":Pi(n,45),"--color-ambient-glow":Pi(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 Sc(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(hs(t)))e.style.removeProperty(a);for(const a of Object.keys(n))e.style.removeProperty(`--reddb-color-${a}`);if(t.name!==Ks.name){const a=hs(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 SS(){return typeof localStorage>"u"?null:localStorage.getItem(If)}function LS(t){typeof localStorage>"u"||localStorage.setItem(If,t)}function Lc(t){return t??(typeof document<"u"?document.documentElement:null)}var ro;class CS{constructor(){Be(this,ro,xe(qt(Ks)));Nt(this,"target",null)}get current(){return r(pe(this,ro))}set current(e){x(pe(this,ro),e,!0)}init(e){this.target=Lc(e);const n=SS();n&&(this.current=kc(n),this.target&&Sc(this.current,this.target))}select(e){const n=kc(e);this.current=n;const a=Lc(this.target);a&&(this.target=a,Sc(n,a)),LS(n.name)}}ro=new WeakMap;const bs=new CS;var ES=m('<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>'),MS=m('<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>'),zS=m('<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 QS(t,e){rt(e,!0);function n(d){return Object.entries(hs(d)).map(([f,v])=>`${f}: ${v}`).join("; ")}const a=y(()=>bs.current.name);var o=zS(),i=c(o);Aa(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);Ge(l,21,()=>Bs,d=>d.name,(d,f)=>{const v=y(()=>r(f).name===r(a));var p=MS(),b=c(p),h=u(b,2),w=c(h),k=c(w,!0);s(w);var L=u(w,2);{var O=Y=>{var K=ES(),z=c(K);Rc(z,{class:"size-3"}),Se(),s(K),g(Y,K)};R(L,Y=>{r(v)&&Y(O)})}s(h);var G=u(h,2),I=c(G,!0);s(G),s(p),Q(Y=>{Ce(p,"aria-pressed",r(v)),Oe(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"}`),_r(b,Y),S(k,r(f).label),S(I,r(f).description)},[()=>n(r(f))]),_e("click",p,()=>bs.select(r(f).name)),g(d,p)}),s(l),s(o),g(t,o),nt()}nr(["click"]);const Cc="red-ui-workspace-session";class NS{constructor(e=1e3,n=null){Nt(this,"_timer",null);Nt(this,"debounceMs");Nt(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(Cc,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(Cc);if(!n)return null;const a=JSON.parse(n);return typeof a.view!="string"?null:a}catch{return null}}}const ko=new NS;var TS=m('<div class="flex h-full items-center justify-center font-mono text-[12px] text-fg-3">loading analytics…</div>'),AS=m('<div class="app relative grid grid-rows-[44px_32px_1fr] h-screen"><!> <!> <!> <main class="relative overflow-hidden z-[1]"><!></main> <!> <!> <!> <!></div>'),IS=m("<!> <!> <!>",1);function jS(t,e){rt(e,!0);let n=Pe(e,"showConnect",3,!0),a=Pe(e,"persistTheme",3,!0);const o=Ig(e.router??dd());e.connectionProvider&&D0(e.connectionProvider);function i(z){const F=z;if(F==="query"||F==="collections"||F==="cluster"||F==="security"||F==="settings"||F==="appearance"){o.go({view:F},void 0,!0);return}const ne=Ag(z.startsWith("/")?z:`/${z}`);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:Bt.tabs,activeTabId:Bt.activeId}}function d(z){z.tabs.length>0&&Bt.hydrate(z.tabs,z.activeTabId),o.go(z.collection?{view:"collection",collection:z.collection,subpage:z.subpage??"table"}:{view:z.view},void 0,!0)}vn(()=>{e.connectionProvider?Ke.adoptInjected().then(()=>{e.initialRoute&&i(e.initialRoute)}):Ke.bootstrap().then(z=>{if(z)i(z);else{const F=ko.restore();F&&d(F)}})});let f=xe(!1),v=xe(!1);vn(()=>{const z=()=>x(v,!0);return window.addEventListener("red:open-pending-changes",z),()=>window.removeEventListener("red:open-pending-changes",z)}),vn(()=>{if(typeof window>"u"||!("__TAURI_INTERNALS__"in window||"__TAURI__"in window))return;let z;return co(async()=>{const{listen:F}=await import("./CHvQYbpl.js");return{listen:F}},__vite__mapDeps([0,1]),import.meta.url).then(({listen:F})=>F("deep-link",async ne=>{var Z;const oe=(Z=ne.payload)==null?void 0:Z[0];if(!oe)return;let J=oe,ue=null;try{const C=oe.replace(/^reds?(\+[a-z]+)?:\/\//,"http://");ue=new URL(C).searchParams.get("to"),ue&&(J=oe.split("?")[0])}catch{}await Ke.connectString(J),ue&&i(ue)})).then(F=>{z=F}),()=>{z==null||z()}}),Tt(()=>{const z=Ke.client;if(!z){Or.setExecutor(null),Zr.setExecutor(null);return}Zr.setExecutor((F,ne)=>R0(z,F,ne)),Or.setExecutor(async F=>Promise.all(F.map(async ne=>{try{const oe=await z.query(Ls(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;En.init({target:e.themeTarget??null,persist:a(),initial:e.initialTheme}),bs.init(e.themeTarget??null),Tt(()=>{if(mr.locked||!Ke.targetResolved)return;const z=()=>{Ke.client&&Ke.refresh()};sn(z);const F=setInterval(z,p);return()=>clearInterval(F)}),Tt(()=>{mr.store&&Ke.hydrateUrls()}),Tt(()=>{if(!r(f))return;const z=l();ko.schedule(z)}),vn(()=>{const z=()=>{r(f)&&ko.flush(l())};return document.addEventListener("visibilitychange",z),window.addEventListener("blur",z),()=>{document.removeEventListener("visibilitychange",z),window.removeEventListener("blur",z)}}),vn(()=>{if(typeof window>"u"||!("__TAURI_INTERNALS__"in window||"__TAURI__"in window))return;let z;return co(async()=>{const{listen:F}=await import("./CHvQYbpl.js");return{listen:F}},__vite__mapDeps([0,1]),import.meta.url).then(({listen:F})=>F("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(F=>{z=F}),()=>{z==null||z()}});function b(){const z=Zr.nextLabel(),F=Bt.open({kind:"query",label:z,key:z},!0);Zr.ensure(F.id)}async function h(z,F){const ne=Bt.tabs.find(J=>J.kind==="collection"&&J.key===z);ne?Bt.open({kind:"collection",label:z,key:z,capability:ne.capability,overrideCapability:ne.overrideCapability,showSystemColumns:ne.showSystemColumns,subpage:F??ne.subpage}):Bt.open({kind:"collection",label:z,key:z,capability:"table",subpage:F??void 0});const oe=Ke.client;if(!oe){F||o.go({view:"collection",collection:z,subpage:"table"},void 0,!0);return}try{const J=await xd(oe,z),ue=Bt.tabs.find(C=>C.kind==="collection"&&C.key===z),Z=F??Ma(J);ue&&(Bt.tabs=Bt.tabs.map(C=>C===ue?{...C,capability:J,subpage:Z}:C)),F||o.go({view:"collection",collection:z,subpage:Z},void 0,!0)}catch{F||o.go({view:"collection",collection:z,subpage:"table"},void 0,!0)}}let w=null,k=null;Tt(()=>{const z=o.view,F=o.collection,ne=o.subpage;if(z==="collections"&&F){const oe=`${F}::${ne??""}`;oe!==k&&(k=oe,sn(()=>void h(F,ne)))}else k=null;z==="query"&&w!=="query"&&sn(()=>b()),w=z});var L=IS(),O=ze(L);{var G=z=>{j0(z,{onDone:()=>x(f,!0)})},I=z=>{var F=AS(),ne=c(F);bv(ne,{});var oe=u(ne,2);Rg(oe,{get showConnect(){return n()}});var J=u(oe,2);tp(J,{});var ue=u(J,2),Z=c(ue);{var C=B=>{v7(B,{})},N=B=>{q8(B,{})},_=B=>{n9(B,{})},T=B=>{var le=xt(),he=ze(le);F0(he,()=>co(()=>import("./C3QbliX6.js"),__vite__mapDeps([3,4,5,6,7,8,9,10,11,12,13,14,15]),import.meta.url),ie=>{var X=TS();g(ie,X)},(ie,X)=>{var U=y(()=>{var{default:P}=r(X);return{AnalyticsView:P}}),W=y(()=>r(U).AnalyticsView),E=xt(),q=ze(E);ba(q,()=>r(W),(P,M)=>{M(P,{})}),g(ie,E)}),g(B,le)},D=B=>{kS(B,{})},te=B=>{QS(B,{})},V=B=>{ey(B)};R(Z,B=>{o.view==="ask"?B(C):o.view==="cluster"?B(N,1):o.view==="security"?B(_,2):o.view==="analytics"?B(T,3):o.view==="settings"?B(D,4):o.view==="appearance"?B(te,5):B(V,-1)})}s(ue);var $=u(ue,2);sp($,{});var ee=u($,2);vp(ee,{});var A=u(ee,2);_p(A,{});var H=u(A,2);Mp(H,{get open(){return r(v)},onClose:()=>x(v,!1)}),s(F),g(z,F)};R(O,z=>{r(f)?z(I,-1):z(G)})}var Y=u(O,2);Y0(Y,{});var K=u(Y,2);pv(K,{}),g(t,L),nt()}export{Vr as B,sd as C,jn as L,Aa as P,Cs as R,jS as W,Na as a,nl as b,fn as c,Ic as i,Ag as p,ns as r,ul as t};