@svgrid/enterprise 2.5.0 → 2.5.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cdn/svgrid-enterprise.svelte-external.js +2988 -2982
- package/dist/designer/assets/{index-qL7ir9C7.js → index-OwdzSsmo.js} +3 -3
- package/dist/designer/assets/{src-96d31O63.js → src-LRVqg7Sf.js} +1 -1
- package/dist/designer/index.html +2 -2
- package/dist/node/studio.js +1 -1
- package/package.json +1 -1
- package/src/index.ts +6 -0
- package/src/version.ts +1 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./jszip.min-CX2fPs3O.js","./rolldown-runtime-Dd_uD5pT.js","./src-
|
|
2
|
-
import{i as e,r as t,t as n}from"./rolldown-runtime-Dd_uD5pT.js";import{$ as r,A as i,C as a,D as o,E as s,F as c,G as l,H as u,I as d,J as f,K as p,L as m,M as h,N as g,O as _,P as v,R as y,T as b,U as x,V as S,W as C,X as w,Z as T,_ as E,_t as D,a as O,at as k,b as A,bt as ee,c as te,ct as j,d as ne,dt as M,et as re,f as N,ft as P,g as F,gt as ie,ht as ae,it as I,j as oe,k as se,l as ce,lt as L,m as le,mt as ue,n as de,nt as fe,o as pe,ot as me,p as R,pt as he,q as ge,r as z,rt as B,s as _e,st as V,t as ve,u as ye,ut as be,v as xe,vt as H,w as Se,x as Ce,xt as we,y as Te,yt as Ee,z as De}from"./disclose-version-CIm4S9xS.js";import{$ as Oe,$t as ke,A as Ae,An as je,At as Me,B as Ne,Bn as Pe,Bt as Fe,C as Ie,Cn as Le,Ct as Re,D as ze,Dn as Be,Dt as Ve,E as He,En as Ue,Et as We,F as Ge,Fn as Ke,Ft as qe,G as Je,Gn as Ye,Gt as Xe,H as Ze,Hn as Qe,Ht as $e,I as et,In as tt,It as nt,J as rt,Jt as it,K as at,Kn as ot,Kt as st,L as U,Ln as ct,Lt as lt,M as ut,Mn as dt,Mt as ft,N as pt,Nn as mt,Nt as ht,O as gt,On as _t,Ot as vt,P as yt,Pn as bt,Pt as xt,Q as St,Qt as Ct,R as wt,Rn as Tt,Rt as Et,S as Dt,Sn as Ot,St as kt,T as At,Tn as jt,Tt as Mt,U as Nt,Un as Pt,Ut as Ft,V as It,Vn as Lt,Vt as Rt,W as zt,Wn as Bt,Wt as Vt,X as Ht,Xt as Ut,Y as Wt,Yt as Gt,Z as Kt,Zt as qt,_ as Jt,_n as Yt,_t as Xt,a as Zt,an as Qt,at as $t,b as en,bn as tn,bt as nn,c as rn,cn as an,ct as on,d as sn,dn as cn,dt as ln,en as un,et as dn,f as fn,fn as pn,ft as mn,g as hn,gn,gt as _n,h as vn,hn as yn,ht as bn,i as xn,in as W,it as Sn,j as Cn,jn as wn,jt as Tn,k as G,kn as En,kt as Dn,l as On,ln as kn,lt as An,m as jn,mn as Mn,mt as Nn,n as Pn,nn as Fn,nt as In,o as Ln,on as Rn,ot as zn,p as Bn,pn as Vn,pt as Hn,q as Un,qn as Wn,qt as Gn,r as Kn,rn as qn,rt as Jn,s as Yn,sn as Xn,st as Zn,tn as Qn,tt as $n,u as er,un as tr,ut as nr,v as rr,vn as ir,vt as ar,w as or,wn as sr,wt as cr,x as lr,xn as ur,xt as dr,y as fr,yn as pr,yt as mr,z as hr,zn as gr,zt as _r}from"./src-96d31O63.js";import{a as vr,n as yr,t as br}from"./js-scroller.svelte-tHanKJx0.js";import{a as xr,i as Sr,o as Cr,r as wr,t as Tr}from"./dismissable-2EZKoens.js";import{a as Er,i as Dr,o as Or,p as kr,r as Ar,t as jr}from"./SvDateTimePicker-DOBYyLeN.js";import{i as Mr,n as Nr,r as Pr,t as Fr}from"./popover-CUkLsvRX.js";import{t as Ir}from"./SvListBox-BVzVfCG3.js";import{r as Lr}from"./easing-zaypKrr0.js";(function(){let e=document.createElement(`link`).relList;if(e&&e.supports&&e.supports(`modulepreload`))return;for(let e of document.querySelectorAll(`link[rel="modulepreload"]`))n(e);new MutationObserver(e=>{for(let t of e)if(t.type===`childList`)for(let e of t.addedNodes)e.tagName===`LINK`&&e.rel===`modulepreload`&&n(e)}).observe(document,{childList:!0,subtree:!0});function t(e){let t={};return e.integrity&&(t.integrity=e.integrity),e.referrerPolicy&&(t.referrerPolicy=e.referrerPolicy),t.credentials=e.crossOrigin===`use-credentials`?`include`:e.crossOrigin===`anonymous`?`omit`:`same-origin`,t}function n(e){if(e.ep)return;e.ep=!0;let n=t(e);fetch(e.href,n)}})();var Rr=y(`<button type="button" class="sv-dri__clear svelte-1x1pbpo">×</button>`),zr=y(`<div class="sv-dri__panel" role="dialog"><!></div>`),Br=y(`<input type="hidden"/> <input type="hidden"/>`,1),Vr=y(`<div><div><svg class="sv-dri__icon svelte-1x1pbpo" viewBox="0 0 24 24" width="15" height="15" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><rect x="3" y="4" width="18" height="18" rx="2"></rect><path d="M16 2v4M8 2v4M3 10h18"></path></svg> <input/> <!></div> <!> <!></div>`);function Hr(e,t){ue(t,!0);let n={dialog:`Choose a date range`,clear:`Clear`,open:`Open calendar`,to:`to`},r=z(t,`value`,3,null),i=z(t,`formatString`,3,`yyyy-MM-dd`),o=z(t,`min`,3,null),s=z(t,`max`,3,null),c=z(t,`months`,3,2),l=z(t,`firstDayOfWeek`,3,0),u=z(t,`weekNumbers`,3,!1),f=z(t,`locale`,19,()=>typeof navigator<`u`?navigator.language:`en-US`),m=z(t,`placeholder`,3,`Select date range`),g=z(t,`animate`,3,!1),_=z(t,`autoOpen`,3,!1),v=z(t,`disabled`,3,!1),y=z(t,`readonly`,3,!1),b=z(t,`size`,3,`md`),S=z(t,`invalid`,3,!1),C=z(t,`required`,3,!1),E=xr(`sv-daterange`),D=M(()=>t.id??E),O=M(()=>Cr(n,t.messages)),ee=M(()=>t.dir===`ltr`||t.dir===`rtl`?t.dir:void 0),te=M(()=>!v()&&!y()),re=e=>Ar(e,i(),f()),P=M(()=>{if(!r())return``;let[e,t]=r();return e&&t?`${re(e)} ${p(O).to} ${re(t)}`:e?re(e):``}),ie=M(()=>r()?Or(r()[0],r()[1]):null),ae=j(!1);function oe(){p(te)&&!p(ae)&&V(ae,!0)}function se(){V(ae,!1)}function ce(){p(ae)?se():oe()}function L(){t.onChange?.(null)}function le(e){if(!e.length)return;let n=e[0],r=e[e.length-1];t.onChange?.([kr(n),kr(r)]),e.length>=1&&n!==r&&se()}let de=j(null),fe=j(null),ge=j(me({top:0,left:0,width:0,openUpward:!1,maxHeight:0,availHeight:0}));function _e(){p(de)&&V(ge,Nr(p(de).getBoundingClientRect(),{estimatedHeight:360,minWidth:300}),!0)}T(()=>{if(!p(ae))return;_e();let e=()=>_e();window.addEventListener(`scroll`,e,!0),window.addEventListener(`resize`,e);let t=e=>{let t=e.target;t&&(p(de)?.contains(t)||p(fe)?.contains(t)||se())};return document.addEventListener(`pointerdown`,t,!0),()=>{window.removeEventListener(`scroll`,e,!0),window.removeEventListener(`resize`,e),document.removeEventListener(`pointerdown`,t,!0)}});function ve(e){e.key===`Escape`?se():e.key===`ArrowDown`&&(e.altKey||!r())&&(e.preventDefault(),oe())}function ye(e){_()&&(e.focus(),oe())}wr(e,{get id(){return p(D)},get label(){return t.label},get hint(){return t.hint},get error(){return t.error},get required(){return C()},get dir(){return t.dir},children:(e,n)=>{var i=Vr();let _;var y=B(i);let T;var E=k(B(y),2),j=()=>p(te)&&ce();ne(E,e=>({id:p(D),class:`sv-dri__input`,type:`text`,readonly:!0,placeholder:m(),value:p(P),disabled:v(),...e,"aria-haspopup":`dialog`,"aria-expanded":p(ae),onclick:j,onkeydown:ve}),[()=>Sr({id:p(D),invalid:S(),required:C(),error:t.error,hint:t.hint,ariaLabel:t.ariaLabel})],void 0,void 0,`svelte-1x1pbpo`,!0),a(E,e=>ye?.(e));var M=k(E,2),re=e=>{var t=Rr();w(()=>R(t,`aria-label`,p(O).clear)),x(`click`,t,e=>{e.stopPropagation(),L()}),d(e,t)};h(M,e=>{r()&&p(te)&&e(re)}),H(y),pe(y,e=>V(de,e),()=>p(de));var oe=k(y,2),se=e=>{var n=zr();let r;var i=B(n);Er(i,{get value(){return p(ie)},selectionMode:`range`,get min(){return o()},get max(){return s()},get months(){return c()},get firstDayOfWeek(){return l()},get weekNumbers(){return u()},get locale(){return f()},get presets(){return t.presets},get animate(){return g()},get dir(){return p(ee)},onChange:le}),H(n),pe(n,e=>V(fe,e),()=>p(fe)),a(n,e=>Mr?.(e)),a(n,(e,t)=>Pr?.(e,t),()=>({up:p(ge).openUpward})),w(()=>{R(n,`aria-label`,p(O).dialog),R(n,`dir`,p(ee)),r=A(n,``,r,{position:`fixed`,top:`${p(ge).top}px`,left:`${p(ge).left}px`}),n.dir=n.dir}),d(e,n)};h(oe,e=>{p(ae)&&e(se)});var ue=k(oe,2),me=e=>{var n=Br(),i=I(n);N(i);var a=k(i,2);N(a),w((e,n)=>{R(i,`name`,`${t.name}_start`),F(i,e),R(a,`name`,`${t.name}_end`),F(a,n)},[()=>r()?.[0]?r()[0].toISOString():``,()=>r()?.[1]?r()[1].toISOString():``]),d(e,n)};h(ue,e=>{t.name&&e(me)}),H(i),w(()=>{_=Ce(i,1,`sv-dri svelte-1x1pbpo`,null,_,{"sv-dri--disabled":v()}),T=Ce(y,1,`sv-dri__field sv-dri__field--${b()??``}`,`svelte-1x1pbpo`,T,{"is-invalid":S()}),R(y,`dir`,p(ee)),y.dir=y.dir}),d(e,i)},$$slots:{default:!0}}),he()}u([`click`]);function Ur(e){return e==null?[]:Array.isArray(e)?[...e]:[e]}function Wr(e){let t=()=>e.items(),n=()=>e.mode?.()??`single`,r=()=>e.disabled?.()??!1,i=()=>(e.orientation?.()??`horizontal`)===`vertical`,a=()=>e.dir?.()===`rtl`,o=M(()=>Ur(e.value())),s=M(()=>t().map((e,t)=>e.disabled?-1:t).filter(e=>e>=0)),c=e=>p(o).includes(e),l=M(()=>t().findIndex(e=>c(e.value))),u=j(0);T(()=>{let e=t()[p(u)];(!e||e.disabled)&&V(u,p(s)[0]??0,!0)});let d=M(()=>n()===`single`?p(l)>=0?p(l):p(s)[0]??0:p(u));function f(i){let a=t()[i];if(!(!a||a.disabled||r())){if(V(u,i,!0),n()===`none`){e.onChange?.(a.value);return}if(n()===`multiple`){let t=new Set(p(o));t.has(a.value)?t.delete(a.value):t.add(a.value),e.onChange?.([...t])}else e.onChange?.(a.value)}}function m(e){n()===`single`?f(e):V(u,e,!0)}function h(e){if(!p(s).length)return;let t=p(s).indexOf(p(d)),n=p(s)[(t+e+p(s).length)%p(s).length];n!=null&&m(n)}function g(e){if(r())return;let t=!i(),n=t&&a(),o=t?n?`ArrowLeft`:`ArrowRight`:`ArrowDown`,c=t?n?`ArrowRight`:`ArrowLeft`:`ArrowUp`;e.key===o?(e.preventDefault(),h(1)):e.key===c?(e.preventDefault(),h(-1)):e.key===`Home`?(e.preventDefault(),m(p(s)[0]??0)):e.key===`End`?(e.preventDefault(),m(p(s).at(-1)??0)):(e.key===` `||e.key===`Enter`)&&(e.preventDefault(),f(p(d)))}let _=()=>({id:e.id?.(),invalid:e.invalid?.(),required:e.required?.(),error:e.error?.(),hint:e.hint?.(),ariaLabel:e.ariaLabel?.()}),v=()=>n()===`single`?`radiogroup`:`group`;return{get activeIndex(){return p(d)},get selectedValues(){return p(o)},isSelected:c,isActive:e=>e===p(d),pick:f,move:h,onKeydown:g,rootProps:()=>({role:v(),id:e.id?.(),"aria-orientation":i()?`vertical`:`horizontal`,...Sr(_()),onkeydown:g}),buttonProps:e=>{let i=t()[e],a=i?c(i.value):!1,o=n()===`single`;return{type:`button`,role:o?`radio`:void 0,"data-idx":e,"aria-checked":o?a:void 0,"aria-pressed":n()===`multiple`?a:void 0,"data-selected":a?``:void 0,disabled:r()||i?.disabled||void 0,tabindex:n()===`none`||e===p(d)?0:-1,onclick:()=>f(e)}}}}var Gr=y(`<button> </button>`),Kr=y(`<input type="hidden"/>`),qr=y(`<div><!> <!></div>`);function Jr(e,t){ue(t,!0);let n=z(t,`value`,3,null),r=z(t,`mode`,3,`single`),i=z(t,`orientation`,3,`horizontal`),a=z(t,`variant`,3,`solid`),o=z(t,`disabled`,3,!1),s=z(t,`size`,3,`md`),c=z(t,`invalid`,3,!1),l=z(t,`required`,3,!1),u=xr(`sv-bg`),f=M(()=>t.id??u),g=Wr({items:()=>t.items,value:()=>n(),onChange:e=>t.onChange?.(e),mode:()=>r(),orientation:()=>i(),disabled:()=>o(),dir:()=>t.dir,id:()=>p(f),invalid:()=>c(),required:()=>l(),error:()=>t.error,hint:()=>t.hint,ariaLabel:()=>t.ariaLabel??t.label});wr(e,{get id(){return p(f)},get label(){return t.label},get hint(){return t.hint},get error(){return t.error},get required(){return l()},get dir(){return t.dir},children:(e,n)=>{var r=qr();ne(r,e=>({class:`sv-bg sv-bg--${i()??``} sv-bg--${a()??``} sv-bg--${s()??``}`,...e,[ce]:{"is-disabled":o(),"is-invalid":c()}}),[()=>g.rootProps()],void 0,void 0,`svelte-1whfl86`);var l=B(r);se(l,19,()=>t.items,e=>e.value,(e,t,n)=>{var r=Gr();ne(r,(e,t)=>({class:`sv-bg__btn`,...e,[ce]:t}),[()=>g.buttonProps(p(n)),()=>({"is-selected":g.isSelected(p(t).value)})],void 0,void 0,`svelte-1whfl86`);var i=B(r,!0);H(r),w(()=>v(i,p(t).label??p(t).value)),d(e,r)});var u=k(l,2),f=e=>{var n=m(),r=I(n);se(r,16,()=>g.selectedValues,e=>e,(e,n)=>{var r=Kr();N(r),w(()=>{R(r,`name`,t.name),F(r,n)}),d(e,r)}),d(e,n)};h(u,e=>{t.name&&e(f)}),H(r),d(e,r)},$$slots:{default:!0}}),he()}var Yr=(e,t,n)=>Math.min(Math.max(e,t),n);function Xr(e){let{pageCount:t}=e;if(t<=0)return[];let n=Math.max(0,e.siblingCount??1),r=Math.max(1,e.boundaryCount??1),i=Yr(e.page,1,t);if(t<=r*2+n*2+3)return Array.from({length:t},(e,t)=>t+1);let a=new Set;for(let e=1;e<=r&&e<=t;e++)a.add(e),a.add(t-e+1);for(let e=i-n;e<=i+n;e++)e>=1&&e<=t&&a.add(e);let o=[...a].sort((e,t)=>e-t),s=[],c=0;for(let e of o)e-c===2?s.push(c+1):e-c>2&&s.push(e<=i?`ellipsis-left`:`ellipsis-right`),s.push(e),c=e;return s}function Zr(e){let t=()=>e.page(),n=()=>e.pageCount(),r=()=>e.disabled?.()??!1;function i(i){if(r())return;let a=Math.min(Math.max(i,1),n());a!==t()&&e.onChange?.(a)}let a=()=>i(1),o=()=>i(t()-1),s=()=>i(t()+1),c=()=>i(n()),l=()=>!r()&&t()>1,u=()=>!r()&&t()<n();return{get items(){return Xr({page:t(),pageCount:n(),siblingCount:e.siblingCount?.()??1,boundaryCount:e.boundaryCount?.()??1})},go:i,first:a,prev:o,next:s,last:c,canPrev:l,canNext:u,isActive:e=>e===t(),navProps:(e=`Pagination`)=>({"aria-label":e}),pageButtonProps:e=>({"aria-current":e===t()?`page`:void 0,"aria-label":`Page ${e}`,disabled:r(),onclick:()=>i(e)}),firstProps:()=>({"aria-label":`First page`,disabled:!l(),onclick:a}),prevProps:()=>({"aria-label":`Previous page`,disabled:!l(),onclick:o}),nextProps:()=>({"aria-label":`Next page`,disabled:!u(),onclick:s}),lastProps:()=>({"aria-label":`Last page`,disabled:!u(),onclick:c})}}function Qr(e){let t=()=>e.count(),n=()=>e.current(),r=()=>e.loop?.()??!0,i=()=>e.dir?.()===`rtl`,a=j(!1),o=j(!1);function s(n){let i=t();if(i===0)return;let a=r()?(n%i+i)%i:Math.max(0,Math.min(n,i-1));e.onChange?.(a)}let c=()=>s(n()+1),l=()=>s(n()-1),u=()=>r()||n()>0,d=()=>r()||n()<t()-1;return T(()=>{let n=e.autoplay?.()??0;if(!n||p(a)||p(o)||t()<2)return;let r=setInterval(()=>c(),n);return()=>clearInterval(r)}),{get paused(){return p(a)},get userPaused(){return p(o)},rtl:i,isActive:e=>e===n(),go:s,next:c,prev:l,canGoPrev:u,canGoNext:d,rootProps:(e=`Carousel`)=>({role:`group`,"aria-roledescription":`carousel`,"aria-label":e,onpointerenter:()=>{V(a,!0)},onpointerleave:()=>{V(a,!1)},onfocusin:()=>{V(a,!0)},onfocusout:()=>{V(a,!1)}}),slideProps:e=>({role:`group`,"aria-roledescription":`slide`,"aria-label":`${e+1} of ${t()}`,"aria-hidden":e!==n(),inert:e!==n()}),prevArrowProps:()=>({"aria-label":i()?`Next slide`:`Previous slide`,onclick:i()?c:l,disabled:i()?!d():!u()}),nextArrowProps:()=>({"aria-label":i()?`Previous slide`:`Next slide`,onclick:i()?l:c,disabled:i()?!u():!d()}),dotProps:e=>({"aria-label":`Go to slide ${e+1}`,"aria-current":e===n()?`true`:void 0,onclick:()=>s(e)}),playPauseProps:()=>({"aria-label":p(o)?`Play autoplay`:`Pause autoplay`,"aria-pressed":p(o),onclick:()=>{V(o,!p(o))}})}}var $r=y(`<span class="sv-seg__icon svelte-1kc6frb"><!></span>`),ei=y(`<button><!> <span class="sv-seg__label"> </span></button>`),ti=y(`<input type="hidden"/>`),ni=y(`<div><!> <!></div>`);function ri(e,t){ue(t,!0);let n=z(t,`value`,15,null),r=z(t,`disabled`,3,!1),i=z(t,`size`,3,`md`),a=z(t,`required`,3,!1),s=z(t,`invalid`,3,!1),c=z(t,`block`,3,!1),l=xr(`sv-seg`),u=M(()=>t.id??l),f=Qe({options:()=>t.options,value:()=>n(),onChange:e=>{n(e),t.onChange?.(e)},disabled:()=>r(),ariaLabel:()=>t.ariaLabel??t.label,id:()=>p(u),invalid:()=>s(),required:()=>a(),error:()=>t.error});wr(e,{get id(){return p(u)},get label(){return t.label},get hint(){return t.hint},get error(){return t.error},get required(){return a()},get dir(){return t.dir},children:(e,a)=>{var l=ni();ne(l,e=>({class:`sv-seg sv-seg--${i()??``}`,...e,[ce]:{"is-block":c(),"is-disabled":r(),"is-invalid":s()}}),[()=>f.groupProps()],void 0,void 0,`svelte-1kc6frb`);var u=B(l);se(u,17,()=>t.options,e=>e.value,(e,t)=>{var n=ei();ne(n,(e,t)=>({class:`sv-seg__opt`,...e,[ce]:t}),[()=>f.radioProps(p(t)),()=>({"is-selected":f.isChecked(p(t))})],void 0,void 0,`svelte-1kc6frb`);var r=B(n),i=e=>{var n=$r(),r=B(n);o(r,()=>p(t).icon),H(n),d(e,n)};h(r,e=>{p(t).icon&&e(i)});var a=k(r,2),s=B(a,!0);H(a),H(n),w(()=>v(s,p(t).label)),d(e,n)});var m=k(u,2),g=e=>{var r=ti();N(r),w(()=>{R(r,`name`,t.name),F(r,n()??``)}),d(e,r)};h(m,e=>{t.name&&e(g)}),H(l),d(e,l)},$$slots:{default:!0}}),he()}var ii=y(`<span class="sv-spinner svelte-1y7q3lg"></span>`);function ai(e,t){let n=z(t,`size`,3,`md`),r=M(()=>typeof n()==`number`?n():n()===`sm`?15:n()===`lg`?28:20);var i=ii();let a;w(()=>{R(i,`role`,t.label?`status`:void 0),R(i,`aria-label`,t.label),R(i,`aria-hidden`,t.label?void 0:`true`),a=A(i,``,a,{width:`${p(r)}px`,height:`${p(r)}px`,color:t.color})}),d(e,i)}var oi=y(`<span class="sv-loading__label svelte-1dk9rlz"> </span>`),si=y(`<!> <!>`,1),ci=y(`<div role="status" aria-live="polite"><!></div>`);function li(e,t){let n=z(t,`visible`,3,!1),r=z(t,`spinnerSize`,3,`lg`),i=z(t,`blur`,3,!1);var a=m(),s=I(a),c=e=>{var n=ci();let a;var s=B(n),c=e=>{var n=m(),r=I(n);o(r,()=>t.children),d(e,n)},l=e=>{var n=si(),i=I(n);ai(i,{get size(){return r()}});var a=k(i,2),o=e=>{var n=oi(),r=B(n,!0);H(n),w(()=>v(r,t.label)),d(e,n)};h(a,e=>{t.label&&e(o)}),d(e,n)};h(s,e=>{t.children?e(c):e(l,-1)}),H(n),w(()=>{a=Ce(n,1,`sv-loading svelte-1dk9rlz`,null,a,{"is-blur":i()}),R(n,`aria-label`,t.label??`Loading`)}),d(e,n)};h(s,e=>{n()&&e(c)}),d(e,a)}var ui=De(`<svg viewBox="0 0 24 24" width="30" height="30" fill="none" stroke="currentColor" stroke-width="2.2" stroke-linecap="round" stroke-linejoin="round"><path d="M20 6 9 17l-5-5"></path></svg>`),di=De(`<svg viewBox="0 0 24 24" width="30" height="30" fill="none" stroke="currentColor" stroke-width="2.2" stroke-linecap="round"><path d="M18 6 6 18M6 6l12 12"></path></svg>`),fi=De(`<svg viewBox="0 0 24 24" width="30" height="30" fill="none" stroke="currentColor" stroke-width="2.2" stroke-linecap="round" stroke-linejoin="round"><path d="M12 9v4M12 17h.01M10.3 3.9 1.8 18a2 2 0 0 0 1.7 3h17a2 2 0 0 0 1.7-3L13.7 3.9a2 2 0 0 0-3.4 0Z"></path></svg>`),pi=y(`<span class="sv-result__code svelte-1fz3ai2">404</span>`),mi=De(`<svg viewBox="0 0 24 24" width="30" height="30" fill="none" stroke="currentColor" stroke-width="2.2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="9"></circle><path d="M12 8h.01M11 12h1v4h1"></path></svg>`),hi=y(`<p class="sv-result__desc svelte-1fz3ai2"> </p>`),gi=y(`<div class="sv-result__body svelte-1fz3ai2"><!></div>`),_i=y(`<div class="sv-result__actions svelte-1fz3ai2"><!></div>`),vi=y(`<div role="status"><div class="sv-result__icon svelte-1fz3ai2" aria-hidden="true"><!></div> <h2 class="sv-result__title svelte-1fz3ai2"> </h2> <!> <!> <!></div>`);function yi(e,t){let n=z(t,`status`,3,`info`);var r=vi(),i=B(r),a=B(i),s=e=>{var n=m(),r=I(n);o(r,()=>t.icon),d(e,n)},c=e=>{var t=ui();d(e,t)},l=e=>{var t=di();d(e,t)},u=e=>{var t=fi();d(e,t)},f=e=>{var t=pi();d(e,t)},p=e=>{var t=mi();d(e,t)};h(a,e=>{t.icon?e(s):n()===`success`?e(c,1):n()===`error`?e(l,2):n()===`warning`?e(u,3):n()===`notfound`?e(f,4):e(p,-1)}),H(i);var g=k(i,2),_=B(g,!0);H(g);var y=k(g,2),b=e=>{var n=hi(),r=B(n,!0);H(n),w(()=>v(r,t.description)),d(e,n)};h(y,e=>{t.description&&e(b)});var x=k(y,2),S=e=>{var n=gi(),r=B(n);o(r,()=>t.children),H(n),d(e,n)};h(x,e=>{t.children&&e(S)});var C=k(x,2),T=e=>{var n=_i(),r=B(n);o(r,()=>t.actions),H(n),d(e,n)};h(C,e=>{t.actions&&e(T)}),H(r),w(()=>{Ce(r,1,`sv-result sv-result--${n()??``}`,`svelte-1fz3ai2`),v(_,t.title)}),d(e,r)}var bi=y(`<div><button class="sv-collapse__trigger svelte-15w9gn7" type="button"><span class="sv-collapse__label svelte-15w9gn7"><!></span> <svg class="sv-collapse__chev svelte-15w9gn7" viewBox="0 0 24 24" width="16" height="16" fill="none" stroke="currentColor" stroke-width="2.4" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button> <div class="sv-collapse__region svelte-15w9gn7" role="region"><div class="sv-collapse__content svelte-15w9gn7"><!></div></div></div>`);function xi(e,t){ue(t,!0);let n=z(t,`open`,15,!1),r=z(t,`disabled`,3,!1),i=xr(`sv-collapse`);function a(){r()||(n(!n()),t.onOpenChange?.(n()))}var s=bi();let c;var l=B(s),u=B(l),f=B(u),p=e=>{var n=m(),r=I(n);o(r,()=>t.header),d(e,n)},g=e=>{var n=S();w(()=>v(n,t.title)),d(e,n)};h(f,e=>{t.header?e(p):e(g,-1)}),H(u),D(2),H(l);var _=k(l,2),y=B(_),b=B(y);o(b,()=>t.children??ee),H(y),H(_),H(s),w(()=>{c=Ce(s,1,`sv-collapse svelte-15w9gn7`,null,c,{"is-open":n(),"is-disabled":r()}),l.disabled=r(),R(l,`aria-expanded`,n()),R(l,`aria-controls`,`${i}-panel`),R(l,`id`,`${i}-trigger`),R(_,`id`,`${i}-panel`),R(_,`aria-labelledby`,`${i}-trigger`),_.inert=!n()}),x(`click`,l,a),d(e,s),he()}u([`click`]);function Si(e,t){let n=z(t,`size`,3,`md`),r=z(t,`weight`,3,`normal`),i=z(t,`tone`,3,`default`),a=z(t,`truncate`,3,!1),s=z(t,`inline`,3,!1),c={xs:`11px`,sm:`13px`,md:`14px`,lg:`16px`,xl:`20px`},l={normal:400,medium:500,semibold:600,bold:700},u={default:`var(--sg-fg, #0f172a)`,muted:`var(--sg-muted, #64748b)`,accent:`var(--sg-accent, #2563eb)`,success:`var(--sg-success, #16a34a)`,warning:`var(--sg-warning, #d97706)`,error:`var(--sg-danger, #dc2626)`},f={start:`left`,center:`center`,end:`right`},h=M(()=>t.as??(s()?`span`:`p`));var g=m(),_=I(g);Se(_,()=>p(h),!1,(e,s)=>{ne(e,()=>({class:`sv-text`,style:``,[ce]:{"is-truncate":a()&&!t.clamp,"is-clamp":t.clamp!=null},[ye]:{"font-size":c[n()],"font-weight":l[r()],color:u[i()],"text-align":t.align?f[t.align]:void 0,"--sv-text-clamp":t.clamp}}),void 0,void 0,void 0,`svelte-1ncm0uw`);var p=m(),h=I(p);o(h,()=>t.children??ee),d(s,p)}),d(e,g)}function Ci(e,t){let n=z(t,`order`,3,2),r=z(t,`truncate`,3,!1),i={1:`30px`,2:`24px`,3:`20px`,4:`17px`,5:`15px`,6:`13px`},a={1:700,2:700,3:600,4:600,5:600,6:600},s={start:`left`,center:`center`,end:`right`},c=M(()=>t.size??n()),l=M(()=>`h${n()}`);var u=m(),f=I(u);Se(f,()=>p(l),!1,(e,n)=>{ne(e,()=>({class:`sv-title`,style:``,[ce]:{"is-truncate":r()},[ye]:{"font-size":i[p(c)],"font-weight":a[p(c)],"text-align":t.align?s[t.align]:void 0}}),void 0,void 0,void 0,`svelte-1bznalt`);var l=m(),u=I(l);o(u,()=>t.children??ee),d(n,l)}),d(e,u)}var wi=y(`<span class="sv-anchor__ext svelte-g26ywi" aria-hidden="true">↗</span><span class="sv-anchor__sr svelte-g26ywi">(opens in a new tab)</span>`,1),Ti=y(`<a><!><!></a>`);function Ei(e,t){let n=z(t,`external`,3,!1),r=z(t,`underline`,3,`hover`),i=z(t,`tone`,3,`accent`),a=z(t,`size`,3,`md`),s={sm:`13px`,md:`14px`,lg:`16px`},c={accent:`var(--sg-accent, #2563eb)`,default:`var(--sg-fg, #0f172a)`,muted:`var(--sg-muted, #64748b)`};var l=Ti();let u;var f=B(l);o(f,()=>t.children??ee);var p=k(f),m=e=>{var t=wi();D(),d(e,t)};h(p,e=>{n()&&e(m)}),H(l),w(()=>{R(l,`href`,t.href),Ce(l,1,`sv-anchor sv-anchor--u-${r()??``}`,`svelte-g26ywi`),R(l,`target`,n()?`_blank`:void 0),R(l,`rel`,n()?`noopener noreferrer`:void 0),u=A(l,``,u,{"font-size":s[a()],color:c[i()]})}),x(`click`,l,function(...e){t.onclick?.apply(this,e)}),d(e,l)}u([`click`]);var Di=y(`<footer class="sv-blockquote__cite svelte-1iwaj9k"> </footer>`),Oi=y(`<blockquote class="sv-blockquote svelte-1iwaj9k"><div class="sv-blockquote__body svelte-1iwaj9k"><!></div> <!></blockquote>`);function ki(e,t){let n=z(t,`tone`,3,`accent`),r={accent:`var(--sg-accent, #2563eb)`,muted:`var(--sg-muted, #64748b)`,success:`var(--sg-success, #16a34a)`,warning:`var(--sg-warning, #d97706)`,error:`var(--sg-danger, #dc2626)`};var i=Oi();let a;var s=B(i),c=B(s);o(c,()=>t.children??ee),H(s);var l=k(s,2),u=e=>{var n=Di(),r=B(n);H(n),w(()=>v(r,`- ${t.cite??``}`)),d(e,n)};h(l,e=>{t.cite&&e(u)}),H(i),w(()=>a=A(i,``,a,{"--sv-bq-rule":r[n()]})),d(e,i)}var Ai=y(`<mark class="sv-mark svelte-1wc4y72"><!></mark>`);function ji(e,t){let n=z(t,`tone`,3,`yellow`),r={yellow:`#fef08a`,accent:`color-mix(in srgb, var(--sg-accent, #2563eb) 22%, transparent)`,success:`color-mix(in srgb, var(--sg-success, #16a34a) 22%, transparent)`,warning:`color-mix(in srgb, var(--sg-warning, #d97706) 24%, transparent)`,error:`color-mix(in srgb, var(--sg-danger, #dc2626) 20%, transparent)`};var i=Ai();let a;var s=B(i);o(s,()=>t.children??ee),H(i),w(()=>a=A(i,``,a,{background:r[n()]})),d(e,i)}var Mi=y(`<li> </li>`);function Ni(e,t){let n=z(t,`type`,3,`unordered`),r=z(t,`spacing`,3,`md`),a=z(t,`size`,3,`md`),s={sm:`2px`,md:`6px`,lg:`10px`},c={sm:`13px`,md:`14px`,lg:`16px`},l=M(()=>n()===`ordered`?`ol`:`ul`);var u=m(),f=I(u);Se(f,()=>p(l),!1,(e,l)=>{ne(e,()=>({class:`sv-list sv-list--${n()??``}`,style:``,[ye]:{"--sv-list-gap":s[r()],"font-size":c[a()]}}),void 0,void 0,void 0,`svelte-1pddvq7`);var u=m(),f=I(u),g=e=>{var n=m(),r=I(n);o(r,()=>t.children),d(e,n)},_=e=>{var n=m(),r=I(n);se(r,17,()=>t.items,i,(e,t)=>{var n=Mi(),r=B(n,!0);H(n),w(()=>v(r,p(t))),d(e,n)}),d(e,n)};h(f,e=>{t.children?e(g):t.items&&e(_,1)}),d(l,u)}),d(e,u)}var Pi=y(`<span class="sv-kbd__sep svelte-il8pr6" aria-hidden="true"> </span>`),Fi=y(`<!> <kbd class="sv-kbd svelte-il8pr6"> </kbd>`,1),Ii=y(`<span></span>`),Li=y(`<kbd><!></kbd>`);function Ri(e,t){let n=z(t,`separator`,3,`+`),r=z(t,`size`,3,`md`);var a=m(),s=I(a),c=e=>{var a=Ii();se(a,21,()=>t.keys,i,(e,t,r)=>{var i=Fi(),a=I(i),o=e=>{var t=Pi(),r=B(t,!0);H(t),w(()=>v(r,n())),d(e,t)};h(a,e=>{r>0&&e(o)});var s=k(a,2),c=B(s,!0);H(s),w(()=>v(c,p(t))),d(e,i)}),H(a),w(()=>Ce(a,1,`sv-kbd-group sv-kbd--${r()??``}`,`svelte-il8pr6`)),d(e,a)},l=e=>{var n=Li(),i=B(n);o(i,()=>t.children??ee),H(n),w(()=>Ce(n,1,`sv-kbd sv-kbd--${r()??``}`,`svelte-il8pr6`)),d(e,n)};h(s,e=>{t.keys?e(c):e(l,-1)}),d(e,a)}var zi=y(`<pre class="sv-code sv-code--block svelte-6sl55m"><code class="svelte-6sl55m"><!></code></pre>`),Bi=y(`<code class="sv-code sv-code--inline svelte-6sl55m"><!></code>`);function Vi(e,t){let n=z(t,`block`,3,!1);var r=m(),i=I(r),a=e=>{var n=zi(),r=B(n),i=B(r),a=e=>{var n=S();w(()=>v(n,t.code)),d(e,n)},s=e=>{var n=m(),r=I(n);o(r,()=>t.children??ee),d(e,n)};h(i,e=>{t.code==null?e(s,-1):e(a)}),H(r),H(n),d(e,n)},s=e=>{var n=Bi(),r=B(n),i=e=>{var n=S();w(()=>v(n,t.code)),d(e,n)},a=e=>{var n=m(),r=I(n);o(r,()=>t.children??ee),d(e,n)};h(r,e=>{t.code==null?e(a,-1):e(i)}),H(n),d(e,n)};h(i,e=>{n()?e(a):e(s,-1)}),d(e,r)}function Hi(e,t,n){return(n?e.replace(/\D/g,``):e.replace(/\s/g,``)).slice(0,Math.max(0,t))}function Ui(e,t){let n=[];for(let r=0;r<t;r++)n[r]=e[r]??``;return n}function Wi(e,t){return e.length===t}var Gi=y(`<input class="sv-otp__cell svelte-goc1ko" maxlength="1"/>`),Ki=y(`<input type="hidden"/>`),qi=y(`<div><!> <!></div>`);function Ji(e,t){ue(t,!0);let n=z(t,`value`,15,``),r=z(t,`length`,3,6),o=z(t,`numeric`,3,!0),s=z(t,`mask`,3,!1),c=z(t,`disabled`,3,!1),l=z(t,`required`,3,!1),u=z(t,`size`,3,`md`),f=z(t,`invalid`,3,!1),m=z(t,`autofocus`,3,!1),g=xr(`sv-otp`),_=M(()=>t.id??g),v=M(()=>Ui(Hi(n(),r(),o()),r())),y=me([]);function b(e){let i=Hi(e,r(),o());n(i),t.onChange?.(i),Wi(i,r())&&t.onComplete?.(i)}function S(e){let t=y[Math.max(0,Math.min(r()-1,e))];t?.focus(),t?.select()}function T(){return Ui(Hi(n(),r(),o()),r())}function E(e,t){let n=Hi(t.currentTarget.value,1,o()).slice(-1),r=T();r[e]=n,b(r.join(``)),n&&S(e+1)}function D(e,n){let r=t.dir===`rtl`;if(n.key===`Backspace`){n.preventDefault();let t=T();t[e]?(t[e]=``,b(t.join(``))):e>0&&(t[e-1]=``,b(t.join(``)),S(e-1))}else n.key===`ArrowLeft`?(n.preventDefault(),S(r?e+1:e-1)):n.key===`ArrowRight`&&(n.preventDefault(),S(r?e-1:e+1))}function O(e,t){t.preventDefault();let n=t.clipboardData?.getData(`text`)??``,i=T(),a=Hi(n,r()-e,o());for(let t=0;t<a.length;t++)i[e+t]=a[t];b(i.join(``)),S(Math.min(e+a.length,r()-1))}function A(e,t){m()&&t===0&&e.focus()}wr(e,{get id(){return p(_)},get label(){return t.label},get hint(){return t.hint},get error(){return t.error},get required(){return l()},get dir(){return t.dir},children:(e,m)=>{var g=qi();ne(g,e=>({class:`sv-otp sv-otp--${u()??``}`,role:`group`,...e,[ce]:{"is-disabled":c(),"is-invalid":f()}}),[()=>Sr({id:p(_),invalid:f(),required:l(),error:t.error,hint:t.hint,ariaLabel:t.label??`One-time code`})],void 0,void 0,`svelte-goc1ko`);var b=B(g);se(b,17,()=>p(v),i,(e,t,n)=>{var i=Gi();N(i),R(i,`autocomplete`,n===0?`one-time-code`:`off`),pe(i,(e,t)=>y[t]=e,e=>y?.[e],()=>[n]),a(i,(e,t)=>A?.(e,t),()=>n),w(()=>{R(i,`type`,s()?`password`:`text`),R(i,`inputmode`,o()?`numeric`:`text`),F(i,p(t)),i.disabled=c(),R(i,`aria-label`,`Character ${n+1} of ${r()}`)}),x(`input`,i,e=>E(n,e)),x(`keydown`,i,e=>D(n,e)),C(`paste`,i,e=>O(n,e)),C(`focus`,i,e=>e.currentTarget.select()),d(e,i)});var S=k(b,2),T=e=>{var r=Ki();N(r),w(()=>{R(r,`name`,t.name),F(r,n())}),d(e,r)};h(S,e=>{t.name&&e(T)}),H(g),d(e,g)},$$slots:{default:!0}}),he()}u([`input`,`keydown`]);function Yi(e){let t=e.trim().toLowerCase();if(!t)return null;let n=t.match(/^(\d+):(\d{1,2})$/);if(n){let e=parseInt(n[2],10);return e>59?null:parseInt(n[1],10)*60+e}let r=t.match(/\d+(?:\.\d+)?\s*[hm]/g);if(r&&r.join(``).replace(/\s/g,``).length===t.replace(/\s/g,``).length){let e=0;for(let t of r){let n=t.match(/(\d+(?:\.\d+)?)\s*([hm])/),r=parseFloat(n[1]);e+=n[2]===`h`?r*60:r}return Math.round(e)}let i=Number(t);return Number.isFinite(i)?Math.round(i):null}function Xi(e,t=`colon`){if(!Number.isFinite(e)||e<0)return``;let n=Math.floor(e/60),r=Math.round(e%60);return t===`units`?n&&r?`${n}h ${r}m`:n?`${n}h`:`${r}m`:`${n}:${String(r).padStart(2,`0`)}`}var Zi=y(`<input type="hidden"/>`),Qi=y(`<input/> <!>`,1);function $i(e,t){ue(t,!0);let n=z(t,`value`,15,null),r=z(t,`style`,3,`colon`),i=z(t,`placeholder`,3,`e.g. 1h 30m`),o=z(t,`disabled`,3,!1),s=z(t,`readonly`,3,!1),c=z(t,`size`,3,`md`),l=z(t,`invalid`,3,!1),u=z(t,`required`,3,!1),f=z(t,`loading`,3,!1),m=z(t,`autofocus`,3,!1),g=z(t,`clearable`,3,!1),_=z(t,`block`,3,!1),v=z(t,`width`,3,160),y=xr(`sv-dur`),b=M(()=>t.id??y),x=j(``),S=j(!1);T(()=>{p(S)||V(x,n()==null?``:Xi(n(),r()),!0)});function C(){let e=Yi(p(x));return n(e),t.onChange?.(e),e!=null&&V(x,Xi(e,r()),!0),e}function E(e){m()&&(e.focus(),e.select())}{let r=M(()=>n()!=null);wr(e,{frame:!0,get id(){return p(b)},get label(){return t.label},get hint(){return t.hint},get error(){return t.error},get required(){return u()},get dir(){return t.dir},get size(){return c()},get invalid(){return l()},get disabled(){return o()},get readonly(){return s()},get loading(){return f()},get block(){return _()},get width(){return v()},get leading(){return t.leading},get trailing(){return t.trailing},get clearable(){return g()},get showClear(){return p(r)},onclear:()=>{n(null),V(x,``),t.onChange?.(null)},children:(e,r)=>{var c=Qi(),f=I(c),m=e=>V(x,e.currentTarget.value,!0),g=()=>V(S,!0),_=()=>{V(S,!1),C()},v=e=>{e.key===`Enter`?t.onCommit?.(C()):e.key===`Escape`&&t.onCancel?.()};ne(f,e=>({class:`sv-dur__input`,type:`text`,inputmode:`numeric`,value:p(x),placeholder:i(),disabled:o(),readonly:s(),oninput:m,onfocus:g,onblur:_,onkeydown:v,...e}),[()=>Sr({id:p(b),invalid:l(),required:u(),error:t.error,hint:t.hint,ariaLabel:t.ariaLabel})],void 0,void 0,void 0,!0),a(f,e=>E?.(e));var y=k(f,2),T=e=>{var r=Zi();N(r),w(()=>{R(r,`name`,t.name),F(r,n()??``)}),d(e,r)};h(y,e=>{t.name&&e(T)}),d(e,c)},$$slots:{default:!0}})}he()}var ea=0;function ta(e){let t=`${`sv-ac-${ea++}`}-list`,n=e=>`${t}-opt-${e}`,r=()=>e.minChars?.()??1,i=()=>({id:e.id?.(),invalid:e.invalid?.(),required:e.required?.(),error:e.error?.(),hint:e.hint?.(),ariaLabel:e.ariaLabel?.()}),a=j(!1),o=j(0),s=M(()=>e.suggestions().map(e=>typeof e==`string`?{value:e,label:e}:e)),c=M(()=>e.value().length>=r()?vr(p(s),e.value()).slice(0,10):[]);function l(){V(a,p(c).length>0),p(a)&&V(o,0)}function u(t){t&&(e.onChange?.(String(t.value)),V(a,!1),e.focusInput?.())}function d(){V(a,!1)}function f(t){e.onChange?.(t.currentTarget.value),queueMicrotask(l)}function m(e){if(!p(a)){e.key===`ArrowDown`&&queueMicrotask(l);return}e.key===`ArrowDown`?(e.preventDefault(),V(o,Math.min(p(o)+1,p(c).length-1),!0)):e.key===`ArrowUp`?(e.preventDefault(),V(o,Math.max(p(o)-1,0),!0)):e.key===`Enter`?(e.preventDefault(),u(p(c)[p(o)])):e.key===`Escape`&&d()}return{get open(){return p(a)},get activeIndex(){return p(o)},get filtered(){return p(c)},get value(){return e.value()},listId:t,isActive:e=>e===p(o),setActive:e=>{V(o,e,!0)},maybeOpen:l,close:d,pick:u,onInput:f,onKeydown:m,inputProps:()=>({id:e.id?.(),role:`combobox`,"aria-expanded":p(a),"aria-controls":t,"aria-autocomplete":`list`,"aria-activedescendant":p(a)&&p(c)[p(o)]?n(p(o)):void 0,...Sr(i()),value:e.value(),disabled:e.disabled?.()??!1,oninput:f,onfocus:l,onkeydown:m}),listboxProps:()=>({id:t,role:`listbox`}),optionProps:e=>({id:n(e),role:`option`,tabindex:-1,"aria-selected":e===p(o),"data-idx":e,onclick:()=>u(p(c)[e]),onpointermove:()=>{V(o,e,!0)}})}}function na(e){let t=()=>e.pressed(),n=()=>e.disabled?.()??!1;function r(){n()||e.onChange?.(!t())}let i=()=>({id:e.id?.(),invalid:e.invalid?.(),required:e.required?.(),error:e.error?.(),hint:e.hint?.(),ariaLabel:e.ariaLabel?.()});return{get pressed(){return t()},get disabled(){return n()},toggle:r,buttonProps:()=>({type:`button`,id:e.id?.(),"aria-pressed":t(),disabled:n(),"data-pressed":t()?``:void 0,...Sr(i()),onclick:r})}}function ra(e){let t=[],n=e=>{for(let r of e.children??[])t.push(r.id),n(r)};return n(e),t}function ia(e,t){if(!e.children?.length)return t.has(e.id)?`checked`:`unchecked`;let n=ra(e),r=n.filter(e=>t.has(e)).length;return r===0&&!t.has(e.id)?`unchecked`:r===n.length?`checked`:`indeterminate`}function aa(e,t){for(let n of e){if(n.id===t)return n;if(n.children){let e=aa(n.children,t);if(e)return e}}return null}function oa(e,t){return[...e].sort(t).map(e=>e.children?{...e,children:oa(e.children,t)}:e)}function sa(e){let t=()=>e.nodes(),n=()=>e.checkable?.()??!1,r=()=>e.selected?.()??null,i=j(me(new Set)),a=!1;T(()=>{if(!a){a=!0;let t=e.expandedIds?.();t&&V(i,new Set(t),!0)}});let o=M(()=>{let n=e.filter?.()?.trim().toLowerCase();if(!n)return null;let r=new Set,i=new Set,a=e=>{let t=!1;for(let n of e.children??[])t=a(n)||t;let o=e.label.toLowerCase().includes(n);return(o||t)&&(r.add(e.id),t&&i.add(e.id)),o||t};for(let e of t())a(e);return{visible:r,forceOpen:i}}),s=M(()=>{let e=[],n=p(o),r=(t,a,o)=>{for(let s of t){if(n&&!n.visible.has(s.id))continue;let t=!!s.children?.length||!!s.lazy,c=n&&n.forceOpen.has(s.id)||p(i).has(s.id);e.push({node:s,depth:a,hasChildren:t,open:c,parentId:o,index:e.length}),c&&s.children?.length&&r(s.children,a+1,s.id)}};return r(t(),0,null),e}),c=j(0);T(()=>{p(c)>=p(s).length&&V(c,Math.max(0,p(s).length-1),!0)});let l=M(()=>new Set(e.checked?.()??[])),u=j(0);function d(e,t=!1){V(c,e,!0),t&&L(u)}let f=e=>ia(e,p(l)),m=e=>p(i).has(e),h=e=>e===r();function g(t){if(!t.children?.length&&!t.lazy)return;let n=new Set(p(i)),r=!n.has(t.id);r?n.add(t.id):n.delete(t.id),V(i,n,!0),e.onToggle?.(t.id,r)}let _=e=>{let n=aa(t(),e);n&&g(n)};function v(t){t.disabled||e.onSelect?.(t.id)}let y=e=>{let n=aa(t(),e);n&&v(n)};function b(t){if(t.disabled)return;let n=new Set(p(l)),r=[t.id,...ra(t)],i=f(t)===`checked`;for(let e of r)i?n.delete(e):n.add(e);e.onCheck?.([...n])}function x(e,t){let n=e;for(;n+t>=0&&n+t<=p(s).length-1;)if(n+=t,!p(s)[n]?.node.disabled)return n;return e}function S(t){let r=p(s)[p(c)];if(!r)return;let i=()=>{r.hasChildren&&!r.open?g(r.node):r.hasChildren&&r.open&&d(Math.min(p(c)+1,p(s).length-1),!0)},a=()=>{if(r.hasChildren&&r.open)g(r.node);else if(r.parentId){let e=p(s).findIndex(e=>e.node.id===r.parentId);e>=0&&d(e,!0)}},o=e.dir?.()===`rtl`;switch(t.key){case`ArrowDown`:t.preventDefault(),d(x(p(c),1),!0);break;case`ArrowUp`:t.preventDefault(),d(x(p(c),-1),!0);break;case`ArrowRight`:t.preventDefault(),(o?a:i)();break;case`ArrowLeft`:t.preventDefault(),(o?i:a)();break;case`Enter`:t.preventDefault(),v(r.node);break;case` `:t.preventDefault(),n()?b(r.node):v(r.node);break;case`Home`:t.preventDefault(),d(0,!0);break;case`End`:t.preventDefault(),d(p(s).length-1,!0)}}return{get expanded(){return p(i)},get selected(){return r()},get rows(){return p(s)},get activeIndex(){return p(c)},get focusTick(){return p(u)},isExpanded:m,isSelected:h,checkStateOf:f,toggle:_,toggleExpand:g,select:y,toggleCheck:b,setActive:d,onKeydown:S,treeProps:()=>({role:`tree`,"aria-label":e.ariaLabel?.(),"aria-multiselectable":n()}),itemProps:e=>{let t=n()?f(e.node):`unchecked`,i=n()?t===`checked`?`true`:t===`indeterminate`?`mixed`:`false`:void 0;return{role:`treeitem`,"aria-level":e.depth+1,"aria-selected":e.node.id===r(),"aria-expanded":e.hasChildren?e.open:void 0,"aria-checked":i,"aria-disabled":e.node.disabled||void 0,"data-row":e.index,tabindex:e.index===p(c)?0:-1,onclick:()=>{d(e.index),v(e.node)},onkeydown:S}}}}function ca(e){let t=()=>e.min?.()??0,n=()=>e.max?.()??100,r=()=>e.sweep?.()??270,i=()=>e.size?.()??180,a=()=>e.thickness?.()??14,o=M(()=>Math.min(n(),Math.max(t(),e.value()))),s=M(()=>90+(360-r())/2),c=M(()=>i()/2),l=M(()=>i()/2),u=M(()=>i()/2-a()/2-2),d=e=>(e-t())/(n()-t()),f=e=>p(s)+d(e)*r();function m(e,t){let n=e*Math.PI/180;return{x:p(c)+t*Math.cos(n),y:p(l)+t*Math.sin(n)}}function h(e,t,n){let r=f(e),i=f(t),a=m(r,n),o=m(i,n),s=+(i-r>180);return`M ${a.x} ${a.y} A ${n} ${n} 0 ${s} 1 ${o.x} ${o.y}`}let g=M(()=>m(f(p(o)),p(u)-a()/2));return{get clamped(){return p(o)},get startAngle(){return p(s)},get cx(){return p(c)},get cy(){return p(l)},get r(){return p(u)},get needleEnd(){return p(g)},frac:d,angleOf:f,polar:m,arcPath:h,rootProps:()=>({role:`meter`,"aria-valuenow":p(o),"aria-valuemin":t(),"aria-valuemax":n(),"aria-label":e.ariaLabel?.()??`Gauge`})}}var la=y(`<button><!></button>`);function ua(e,t){ue(t,!0);let n=z(t,`pressed`,3,!1),r=z(t,`disabled`,3,!1),i=z(t,`readonly`,3,!1),a=z(t,`size`,3,`md`),s=z(t,`invalid`,3,!1),c=z(t,`required`,3,!1),l=xr(`sv-toggle`),u=M(()=>t.id??l),f=na({pressed:()=>n(),onChange:e=>{i()||t.onChange?.(e)},disabled:()=>r(),ariaLabel:()=>t.ariaLabel,id:()=>p(u),invalid:()=>s(),required:()=>c(),error:()=>t.error,hint:()=>t.hint});wr(e,{get id(){return p(u)},get label(){return t.label},get hint(){return t.hint},get error(){return t.error},get required(){return c()},get dir(){return t.dir},children:(e,r)=>{var c=la();ne(c,e=>({class:`sv-toggle sv-toggle--${a()??``}`,...e,[ce]:{"is-pressed":n(),"is-invalid":s(),"is-readonly":i()}}),[()=>f.buttonProps()],void 0,void 0,`svelte-4x30az`);var l=B(c),u=e=>{var n=m(),r=I(n);o(r,()=>t.children),d(e,n)};h(l,e=>{t.children&&e(u)}),H(c),d(e,c)},$$slots:{default:!0}}),he()}var da=y(`<input type="hidden"/>`),fa=y(`<input/> <!>`,1);function pa(e,t){ue(t,!0);let n=z(t,`value`,15,``),r=z(t,`disabled`,3,!1),i=z(t,`readonly`,3,!1),o=z(t,`type`,3,`text`),s=z(t,`clearable`,3,!1),c=z(t,`size`,3,`md`),l=z(t,`invalid`,3,!1),u=z(t,`required`,3,!1),f=z(t,`loading`,3,!1),m=z(t,`autofocus`,3,!1),g=z(t,`selectOnFocus`,3,!1),_=z(t,`labelMode`,3,`static`),v=z(t,`block`,3,!1),y=xr(`sv-text`),b=M(()=>t.id??y);function x(e){n(e),t.onChange?.(e)}function S(e){x(e.currentTarget.value)}function C(e){e.key===`Enter`?t.onCommit?.(n()):e.key===`Escape`&&t.onCancel?.()}function T(e){m()&&(e.focus(),e.select())}function E(e){g()&&e.currentTarget.select()}{let m=M(()=>!!n()),g=M(()=>!!n());wr(e,{frame:!0,get id(){return p(b)},get label(){return t.label},get hint(){return t.hint},get error(){return t.error},get required(){return u()},get dir(){return t.dir},get size(){return c()},get invalid(){return l()},get disabled(){return r()},get readonly(){return i()},get loading(){return f()},get block(){return v()},get leading(){return t.leading},get trailing(){return t.trailing},get prefix(){return t.prefix},get suffix(){return t.suffix},get labelMode(){return _()},get filled(){return p(m)},get actions(){return t.actions},get clearable(){return s()},get showClear(){return p(g)},onclear:()=>x(``),children:(e,s)=>{var c=fa(),f=I(c);ne(f,e=>({class:`sv-text__input`,type:o(),value:n(),placeholder:_()===`floating`?void 0:t.placeholder,disabled:r(),readonly:i(),maxlength:t.maxlength,autocomplete:t.autocomplete,oninput:S,onkeydown:C,onfocus:E,...e}),[()=>Sr({id:p(b),invalid:l(),required:u(),error:t.error,hint:t.hint,ariaLabel:t.ariaLabel})],void 0,void 0,void 0,!0),a(f,e=>T?.(e));var m=k(f,2),g=e=>{var r=da();N(r),w(()=>{R(r,`name`,t.name),F(r,n())}),d(e,r)};h(m,e=>{t.name&&e(g)}),d(e,c)},$$slots:{default:!0}})}he()}var ma=y(`<span class="sv-ta__count svelte-lgs3oh" aria-hidden="true"> </span>`),ha=y(`<input type="hidden"/>`),ga=y(`<div><textarea></textarea> <!> <!></div>`);function _a(e,t){ue(t,!0);let n=z(t,`value`,15,``),r=z(t,`disabled`,3,!1),i=z(t,`readonly`,3,!1),o=z(t,`rows`,3,3),s=z(t,`autoGrow`,3,!1),c=z(t,`showCount`,3,!1),l=z(t,`size`,3,`md`),u=z(t,`invalid`,3,!1),f=z(t,`required`,3,!1),m=z(t,`autofocus`,3,!1),g=xr(`sv-textarea`),_=M(()=>t.id??g);function y(e){if(!s())return;let t=()=>{e.style.height=`auto`,e.style.height=`${e.scrollHeight}px`};return t(),e.addEventListener(`input`,t),{destroy:()=>e.removeEventListener(`input`,t)}}function b(e){m()&&(e.focus(),e.select())}function x(e){let r=e.currentTarget.value;n(r),t.onChange?.(r)}function S(e){e.key===`Escape`?t.onCancel?.():e.key===`Enter`&&(e.ctrlKey||e.metaKey)&&(e.preventDefault(),t.onCommit?.(n()))}wr(e,{get id(){return p(_)},get label(){return t.label},get hint(){return t.hint},get error(){return t.error},get required(){return f()},get dir(){return t.dir},children:(e,s)=>{var m=ga();let g;var C=B(m);re(C),ne(C,e=>({class:`sv-ta__input`,value:n(),placeholder:t.placeholder,disabled:r(),readonly:i(),rows:o(),maxlength:t.maxlength,oninput:x,onkeydown:S,...e,[ce]:{"is-invalid":u()}}),[()=>Sr({id:p(_),invalid:u(),required:f(),error:t.error,hint:t.hint,ariaLabel:t.ariaLabel})],void 0,void 0,`svelte-lgs3oh`),a(C,e=>y?.(e)),a(C,e=>b?.(e));var T=k(C,2),E=e=>{var r=ma(),i=B(r);H(r),w(()=>v(i,`${n().length??``} / ${t.maxlength??``}`)),d(e,r)};h(T,e=>{c()&&t.maxlength&&e(E)});var D=k(T,2),O=e=>{var r=ha();N(r),w(()=>{R(r,`name`,t.name),F(r,n())}),d(e,r)};h(D,e=>{t.name&&e(O)}),H(m),w(()=>g=Ce(m,1,`sv-ta sv-ta--${l()??``}`,`svelte-lgs3oh`,g,{"is-disabled":r()})),d(e,m)},$$slots:{default:!0}}),he()}var va=y(`<input/>`),ya=y(`<div> </div>`),ba=y(`<div class="sv-ddl__grip" title="Drag to resize" aria-hidden="true"><span class="sv-ddl__grip-dots"></span></div>`),xa=y(`<div><!> <!></div>`),Sa=y(`<input type="hidden"/>`),Ca=y(`<!> <!> <!>`,1);function wa(e,t){ue(t,!0);let n=z(t,`value`,15,``),r=z(t,`suggestions`,19,()=>[]),o=z(t,`minChars`,3,1),s=z(t,`resizable`,3,!1),c=z(t,`disabled`,3,!1),l=z(t,`size`,3,`md`),u=z(t,`invalid`,3,!1),f=z(t,`required`,3,!1),m=z(t,`loading`,3,!1),g=xr(`sv-ac`),_=M(()=>t.id??g),y=j(null),b=j(null),S=j(me({top:0,left:0,width:0,openUpward:!1,maxHeight:0,availHeight:0})),C=j(null),E=M(()=>s()&&p(C)!=null?Math.min(p(C),p(S).availHeight):Math.min(p(S).availHeight,288)),D=M(()=>s()&&!p(S).openUpward),O=ta({value:()=>n(),onChange:e=>{n(e),t.onChange?.(e)},suggestions:()=>r(),minChars:()=>o(),disabled:()=>c(),ariaLabel:()=>t.ariaLabel,focusInput:()=>p(y)?.focus(),id:()=>p(_),invalid:()=>u(),required:()=>f(),error:()=>t.error,hint:()=>t.hint});function A(){if(!p(y))return;let e=s()&&p(C)!=null?p(C):Math.min(O.filtered.length,8)*34+12;V(S,Nr(p(y).getBoundingClientRect(),{estimatedHeight:e}),!0)}function ee(e){p(b)&&En(e,{startHeight:p(b).clientHeight,min:96,max:()=>p(S).availHeight,onHeight:e=>{V(C,e,!0),A()}})}T(()=>{if(!O.open)return;A();let e=()=>A();window.addEventListener(`scroll`,e,!0),window.addEventListener(`resize`,e);let t=Tr({element:()=>[p(y),p(b)],onDismiss:()=>O.close(),closeOnEscape:!1});return t.activate(),()=>{window.removeEventListener(`scroll`,e,!0),window.removeEventListener(`resize`,e),t.release()}});var te=Ca(),re=I(te);wr(re,{get id(){return p(_)},get label(){return t.label},get hint(){return t.hint},get error(){return t.error},get required(){return f()},get dir(){return t.dir},get loading(){return m()},children:(e,n)=>{var r=va();ne(r,e=>({class:`sv-ac sv-ac--${l()??``}`,type:`text`,placeholder:t.placeholder,...e,[ce]:{"is-invalid":u()}}),[()=>O.inputProps()],void 0,void 0,`svelte-1vvrp83`,!0),pe(r,e=>V(y,e),()=>p(y)),d(e,r)},$$slots:{default:!0}});var P=k(re,2),ie=e=>{var t=xa();ne(t,e=>({class:`sv-ddl__panel`,...e,[ce]:{"is-resizable":p(D)},[ye]:{position:`fixed`,top:p(S).openUpward?void 0:`${p(S).top}px`,bottom:p(S).openUpward?`${p(S).bottom}px`:void 0,left:`${p(S).left}px`,"min-width":`${p(S).width}px`,"max-height":`${p(E)}px`,height:s()&&p(C)!=null&&!p(S).openUpward?`${p(E)}px`:void 0}}),[()=>O.listboxProps()],void 0,void 0,`svelte-1vvrp83`);var n=B(t);se(n,17,()=>O.filtered,i,(e,t,n)=>{var r=ya();ne(r,(e,t)=>({class:`sv-ddl__opt`,...e,[ce]:t}),[()=>O.optionProps(n),()=>({"is-active":O.isActive(n)})],void 0,void 0,`svelte-1vvrp83`);var i=B(r,!0);H(r),w(()=>v(i,p(t).label)),d(e,r)});var r=k(n,2),o=e=>{var t=ba();x(`pointerdown`,t,ee),d(e,t)};h(r,e=>{p(D)&&e(o)}),H(t),pe(t,e=>V(b,e),()=>p(b)),a(t,e=>Mr?.(e)),a(t,(e,t)=>Pr?.(e,t),()=>({up:p(S).openUpward})),d(e,t)};h(P,e=>{O.open&&e(ie)});var ae=k(P,2),oe=e=>{var r=Sa();N(r),w(()=>{R(r,`name`,t.name),F(r,n())}),d(e,r)};h(ae,e=>{t.name&&e(oe)}),d(e,te),he()}u([`pointerdown`]);function Ta(e,t,n=0){let r=[];for(let i of e){let e=!!i.children&&i.children.length>0,a=t.has(i.value);r.push({node:i,depth:n,hasChildren:e,expanded:a}),e&&a&&r.push(...Ta(i.children,t,n+1))}return r}function Ea(e,t){for(let n of e){if(n.value===t)return[n];if(n.children){let e=Ea(n.children,t);if(e)return[n,...e]}}return null}var Da=y(`<input type="hidden"/>`),Oa=y(`<div><button><span> </span> <span class="sv-ts__arrow svelte-95y6nb" aria-hidden="true">▾</span></button> <!></div>`),ka=y(`<span aria-hidden="true"><svg viewBox="0 0 24 24" width="12" height="12" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><path d="m9 18 6-6-6-6"></path></svg></span>`),Aa=y(`<span class="sv-ts__chev sv-ts__chev--leaf" aria-hidden="true"></span>`),ja=y(`<li><!> <span class="sv-ts__label"> </span></li>`),Ma=y(`<div class="sv-ts__panel"><ul class="sv-ts__tree" role="tree" tabindex="0"></ul></div>`),Na=y(`<!> <!>`,1);function Pa(e,t){ue(t,!0);let n=z(t,`value`,15,null),r=z(t,`placeholder`,3,`Select…`),i=z(t,`showPath`,3,!1),o=z(t,`expandedIds`,19,()=>[]),s=z(t,`disabled`,3,!1),c=z(t,`readonly`,3,!1),l=z(t,`required`,3,!1),u=z(t,`invalid`,3,!1),f=z(t,`size`,3,`md`),m=z(t,`loading`,3,!1),g=xr(`sv-ts`),_=M(()=>t.id??g),y=j(me(new Set(o()))),b=j(null),S=j(null),C=j(null),T=M(()=>Ta(t.nodes,p(y))),E=M(()=>n()==null?null:Ea(t.nodes,n())),O=M(()=>p(E)?i()?p(E).map(e=>e.label).join(` / `):p(E)[p(E).length-1].label:``);function ee(e,t){let n=new Set(p(y));t?n.add(e):n.delete(e),V(y,n,!0)}function te(e){ee(e,!p(y).has(e))}function re(e){e.disabled||(n(e.value),t.onChange?.(e.value),ie.closePanel())}function P(e){e.hasChildren?te(e.node.value):re(e.node)}let ie=Lt({itemCount:()=>p(T).length,disabled:e=>!!p(T)[e]?.node.disabled,readonly:()=>c(),onSelect:e=>{let t=p(T)[e];t&&P(t)},getTrigger:()=>p(b),getPanel:()=>p(S),getInitialFocus:()=>p(C),closeOnSelect:()=>!1,initialActive:()=>Math.max(0,p(T).findIndex(e=>e.node.value===n())),minWidth:()=>220,estimatedHeight:()=>300,onExtraKey:(e,t)=>{let n=p(T)[t];return n?e.key===`ArrowRight`?(e.preventDefault(),n.hasChildren&&!n.expanded?ee(n.node.value,!0):n.hasChildren&&n.expanded&&(ie.active=Math.min(t+1,p(T).length-1)),!0):e.key===`ArrowLeft`&&(e.preventDefault(),(()=>{if(n.hasChildren&&n.expanded)ee(n.node.value,!1);else{let e=t-1;for(;e>=0&&p(T)[e].depth>=n.depth;)e--;e>=0&&(ie.active=e)}})(),!0):!1},idPrefix:`sv-ts`});var ae=Na(),oe=I(ae);wr(oe,{get id(){return p(_)},get label(){return t.label},get hint(){return t.hint},get error(){return t.error},get required(){return l()},get dir(){return t.dir},get loading(){return m()},children:(e,i)=>{var a=Oa();let o;var c=B(a),m=()=>ie.toggle();ne(c,(e,t)=>({type:`button`,class:`sv-ts__trigger`,disabled:s(),onclick:m,...e,...t,[ce]:{"is-invalid":u()}}),[()=>ie.triggerProps(`tree`),()=>Sr({id:p(_),invalid:u(),required:l(),error:t.error,hint:t.hint,ariaLabel:t.ariaLabel})],void 0,void 0,`svelte-95y6nb`);var g=B(c);let y;var x=B(g,!0);H(g),D(2),H(c),pe(c,e=>V(b,e),()=>p(b));var S=k(c,2),C=e=>{var r=Da();N(r),w(()=>{R(r,`name`,t.name),F(r,n()??``)}),d(e,r)};h(S,e=>{t.name&&e(C)}),H(a),w(()=>{o=Ce(a,1,`sv-ts sv-ts--${f()??``}`,`svelte-95y6nb`,o,{"is-disabled":s()}),y=Ce(g,1,`sv-ts__value svelte-95y6nb`,null,y,{"is-placeholder":!p(O)}),v(x,p(O)||r())}),d(e,a)},$$slots:{default:!0}});var L=k(oe,2),le=e=>{var r=Ma();let i;var o=B(r);let s;se(o,23,()=>p(T),e=>e.node.value,(e,t,r)=>{var i=ja(),a=()=>P(p(t));ne(i,(e,r)=>({class:`sv-ts__row`,role:`treeitem`,"aria-selected":p(t).node.value===n(),"aria-expanded":p(t).hasChildren?p(t).expanded:void 0,onclick:a,...e,[ce]:r,[ye]:{"padding-inline-start":`${8+p(t).depth*16}px`}}),[()=>ie.itemProps(p(r)),()=>({"is-active":ie.isActive(p(r)),"is-selected":p(t).node.value===n(),"is-disabled":p(t).node.disabled})],void 0,void 0,`svelte-95y6nb`);var o=B(i),s=e=>{var n=ka();let r;w(()=>r=Ce(n,1,`sv-ts__chev`,null,r,{"is-open":p(t).expanded})),d(e,n)},c=e=>{var t=Aa();d(e,t)};h(o,e=>{p(t).hasChildren?e(s):e(c,-1)});var l=k(o,2),u=B(l,!0);H(l),H(i),w(()=>v(u,p(t).node.label)),d(e,i)}),H(o),pe(o,e=>V(C,e),()=>p(C)),H(r),pe(r,e=>V(S,e),()=>p(S)),a(r,e=>Mr?.(e)),a(r,(e,t)=>Pr?.(e,t),()=>({up:ie.rect.openUpward})),w(e=>{R(r,`dir`,t.dir),i=A(r,``,i,{position:`fixed`,top:`${ie.rect.top}px`,left:`${ie.rect.left}px`,"min-width":`${ie.rect.width}px`}),R(o,`id`,ie.panelId),R(o,`aria-label`,t.label??t.ariaLabel??`Tree`),R(o,`aria-activedescendant`,e),s=A(o,``,s,{"max-height":`${ie.rect.maxHeight}px`}),r.dir=r.dir},[()=>ie.activeDescendant()]),x(`keydown`,o,function(...e){ie.onPanelKeydown?.apply(this,e)}),d(e,r)};h(L,e=>{ie.open&&e(le)}),d(e,ae),he()}u([`keydown`]);var Fa=De(`<path fill="none" stroke-linecap="round"></path>`),Ia=De(`<path class="sv-gauge__value svelte-8p5qgu" fill="none" stroke-linecap="round"></path>`),La=De(`<line class="sv-gauge__needle svelte-8p5qgu" stroke-linecap="round"></line><circle r="5" class="sv-gauge__hub svelte-8p5qgu"></circle>`,1),Ra=y(`<div><svg class="sv-gauge__svg svelte-8p5qgu"><path class="sv-gauge__track svelte-8p5qgu" fill="none" stroke-linecap="round"></path><!><!></svg> <div class="sv-gauge__label svelte-8p5qgu"> </div></div>`);function za(e,t){ue(t,!0);let n=z(t,`value`,3,0),r=z(t,`min`,3,0),i=z(t,`max`,3,100),a=z(t,`sweep`,3,270),o=z(t,`bands`,19,()=>[]),s=z(t,`needle`,3,!0),c=z(t,`unit`,3,``),l=z(t,`size`,3,180),u=z(t,`thickness`,3,14),f=M(()=>t.dir===`ltr`||t.dir===`rtl`?t.dir:void 0),g=ca({value:()=>n(),min:()=>r(),max:()=>i(),sweep:()=>a(),size:()=>l(),thickness:()=>u(),ariaLabel:()=>t.ariaLabel}),_=M(()=>g.clamped),y=M(()=>g.cx),b=M(()=>g.cy),x=M(()=>g.r),S=(e,t,n)=>g.arcPath(e,t,n),C=M(()=>g.needleEnd),T=M(()=>t.label??`${t.formatValue?t.formatValue(p(_)):Math.round(p(_))}${c()}`);var E=Ra();ne(E,e=>({class:`sv-gauge`,dir:p(f),...e}),[()=>g.rootProps()],void 0,void 0,`svelte-8p5qgu`);var D=B(E),O=B(D),A=k(O),ee=e=>{var t=m(),n=I(t);se(n,17,o,e=>e.from+`-`+e.to,(e,t)=>{var n=Fa();w(e=>{R(n,`d`,e),R(n,`stroke`,p(t).color),R(n,`stroke-width`,u())},[()=>S(p(t).from,p(t).to,p(x))]),d(e,n)}),d(e,t)},te=e=>{var t=Ia();w(e=>{R(t,`d`,e),R(t,`stroke-width`,u())},[()=>S(r(),p(_),p(x))]),d(e,t)};h(A,e=>{o().length?e(ee):e(te,-1)});var j=k(A),re=e=>{var t=La(),n=I(t),r=k(n);w(()=>{R(n,`x1`,p(y)),R(n,`y1`,p(b)),R(n,`x2`,p(C).x),R(n,`y2`,p(C).y),R(r,`cx`,p(y)),R(r,`cy`,p(b))}),d(e,t)};h(j,e=>{s()&&e(re)}),H(D);var N=k(D,2),P=B(N,!0);H(N),H(E),w(e=>{R(D,`viewBox`,`0 0 ${l()} ${l()}`),R(D,`width`,l()),R(D,`height`,l()),R(O,`d`,e),R(O,`stroke-width`,u()),v(P,p(T)),E.dir=E.dir},[()=>S(r(),i(),p(x))]),d(e,E),he()}var Ba=De(`<svg class="sv-tree__spin svelte-szf0nj" viewBox="0 0 24 24" width="12" height="12" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round"><path d="M21 12a9 9 0 1 1-6.2-8.6"></path></svg>`),Va=De(`<svg viewBox="0 0 24 24" width="12" height="12" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round" class="svelte-szf0nj"><path d="m9 18 6-6-6-6"></path></svg>`),Ha=De(`<svg viewBox="0 0 16 16" class="svelte-szf0nj"><path d="M3.5 8.5l3 3 6-6.5" fill="none" stroke="currentColor" stroke-width="2.2" stroke-linecap="round" stroke-linejoin="round"></path></svg>`),Ua=De(`<svg viewBox="0 0 16 16" class="svelte-szf0nj"><path d="M4 8h8" stroke="currentColor" stroke-width="2.5" stroke-linecap="round"></path></svg>`),Wa=y(`<button type="button" tabindex="-1" aria-hidden="true"><!></button>`),Ga=y(`<input class="sv-tree__edit svelte-szf0nj"/>`),Ka=y(`<span class="sv-tree__label svelte-szf0nj"> </span>`),qa=y(`<div><button type="button" tabindex="-1" aria-hidden="true"><!></button> <!> <!></div>`),Ja=y(`<button type="button" class="sv-tree__search-clear svelte-szf0nj">×</button>`),Ya=y(`<div class="sv-tree__search svelte-szf0nj"><svg viewBox="0 0 24 24" width="14" height="14" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" aria-hidden="true"><circle cx="11" cy="11" r="7"></circle><path d="m21 21-4.3-4.3"></path></svg> <input class="sv-tree__search-input svelte-szf0nj" type="text"/> <!></div>`),Xa=y(`<div class="sv-tree__sb svelte-szf0nj" aria-hidden="true"><div></div></div>`),Za=y(`<div><!> <div><!> <!></div></div>`);function Qa(e,t){ue(t,!0);let n=(e,t=ee)=>{let n=M(()=>i()?Ee.checkStateOf(t().node):`unchecked`),a=M(()=>p(O).has(t().node.id)),s=M(()=>Ee.itemProps(t()));var c=qa(),l=e=>{p(s).onkeydown(e),g()&&e.key===`F2`&&(e.preventDefault(),ae(t().node))};ne(c,e=>({class:`sv-tree__row`,draggable:_()&&p(F)!==t().node.id&&!t().node.disabled,ondragstart:_()?e=>ve(e,t().node):void 0,ondragover:_()?e=>be(e,t().node):void 0,ondragleave:_()?()=>{p(le)===t().node.id&&(V(le,null),V(de,null))}:void 0,ondrop:_()?e=>xe(e,t().node):void 0,ondragend:_()?Se:void 0,ondblclick:g()?()=>ae(t().node):void 0,...p(s),onkeydown:l,[ce]:{"is-selected":t().node.id===r(),"is-disabled":t().node.disabled,"is-dragging":p(L)===t().node.id,"drop-before":p(le)===t().node.id&&p(de)===`before`,"drop-after":p(le)===t().node.id&&p(de)===`after`,"drop-inside":p(le)===t().node.id&&p(de)===`inside`},[ye]:e}),[()=>({height:`${ze(t().index)}px`,"padding-inline-start":`${t().depth*18+6}px`,transform:o()?`translateY(${Re(t().index)-Be.scrollOffset}px)`:void 0})],void 0,void 0,`svelte-szf0nj`);var u=B(c);let f;var m=B(u),y=e=>{var t=Ba();d(e,t)},b=e=>{var t=Va();d(e,t)};h(m,e=>{p(a)?e(y):t().hasChildren&&e(b,1)}),H(u);var S=k(u,2),T=e=>{var r=Wa(),i=B(r),a=e=>{var t=Ha();d(e,t)},o=e=>{var t=Ua();d(e,t)};h(i,e=>{p(n)===`checked`?e(a):p(n)===`indeterminate`&&e(o,1)}),H(r),w(()=>Ce(r,1,`sv-tree__check is-${p(n)??``}`,`svelte-szf0nj`)),x(`click`,r,e=>{e.stopPropagation(),Ee.toggleCheck(t().node)}),d(e,r)};h(S,e=>{i()&&e(T)});var E=k(S,2),D=e=>{var t=Ga();N(t),x(`click`,t,e=>e.stopPropagation()),x(`keydown`,t,e=>{e.key===`Enter`?(e.preventDefault(),I()):e.key===`Escape`&&(e.preventDefault(),oe())}),C(`blur`,t,I),te(t,()=>p(ie),e=>V(ie,e)),d(e,t)},A=e=>{var n=Ka(),r=B(n,!0);H(n),w(()=>v(r,t().node.label)),d(e,n)};h(E,e=>{p(F)===t().node.id?e(D):e(A,-1)}),H(c),w(()=>f=Ce(u,1,`sv-tree__twist svelte-szf0nj`,null,f,{"is-open":t().open,"is-leaf":!t().hasChildren,"is-loading":p(a)})),x(`click`,u,e=>{e.stopPropagation(),Ee.toggleExpand(t().node)}),d(e,c)},r=z(t,`selected`,3,null),i=z(t,`checkable`,3,!1),a=z(t,`checked`,19,()=>[]),o=z(t,`virtual`,3,!1),s=z(t,`rowHeight`,3,30),c=z(t,`searchable`,3,!1),l=z(t,`searchPlaceholder`,3,`Search...`),u=z(t,`loadingText`,3,`Loading...`),m=z(t,`clearSearchLabel`,3,`Clear search`),g=z(t,`editable`,3,!1),_=z(t,`reorderable`,3,!1),y=M(()=>t.dir===`ltr`||t.dir===`rtl`?t.dir:void 0),b=j(``),S=M(()=>t.filter??(c()?p(b):void 0)),E=M(()=>{if(!t.sort)return t.nodes;let e=typeof t.sort==`function`?t.sort:(e,n)=>(t.sort===`asc`?1:-1)*e.label.localeCompare(n.label);return oa(t.nodes,e)}),D=j(me(new Map)),O=j(me(new Set));function re(e){return e.map(e=>e.lazy&&p(D).has(e.id)?{...e,children:re(p(D).get(e.id)),lazy:!1}:e.children?.length?{...e,children:re(e.children)}:e)}let P=M(()=>re(p(E))),F=j(null),ie=j(``);function ae(e){!g()||e.disabled||(V(F,e.id,!0),V(ie,e.label,!0),ge().then(()=>p(Oe)?.querySelector(`.sv-tree__edit`)?.select()))}function I(){if(p(F)==null)return;let e=p(F),n=p(ie).trim();V(F,null),n&&t.onRename?.(e,n)}function oe(){V(F,null)}let L=j(null),le=j(null),de=j(null);function fe(e,t){let n=e.currentTarget.getBoundingClientRect(),r=(e.clientY-n.top)/n.height,i=!!t.children?.length||!!t.lazy;return r<.3?`before`:r>.7||!i?r>.5?`after`:i?`inside`:`after`:`inside`}function ve(e,t){V(L,t.id,!0),e.dataTransfer&&(e.dataTransfer.effectAllowed=`move`)}function be(e,t){!p(L)||p(L)===t.id||(e.preventDefault(),V(le,t.id,!0),V(de,fe(e,t),!0))}function xe(e,n){e.preventDefault(),p(L)&&p(L)!==n.id&&p(de)&&t.onMove?.(p(L),n.id,p(de)),V(L,V(le,V(de,null),!0),!0)}function Se(){V(L,V(le,V(de,null),!0),!0)}function we(e,t){for(let n of e){if(n.id===t)return n;if(n.children){let e=we(n.children,t);if(e)return e}}return null}async function Te(e,n){if(t.onToggle?.(e,n),!n||!t.loadChildren)return;let r=we(p(P),e);if(!(!r?.lazy||p(D).has(e)||p(O).has(e))){V(O,new Set(p(O)).add(e),!0),V(D,new Map(p(D)).set(e,[{id:`${e}__loading`,label:u(),disabled:!0}]),!0);try{let n=await t.loadChildren(r);V(D,new Map(p(D)).set(e,n),!0)}catch{V(D,new Map(p(D)).set(e,[]),!0)}finally{let t=new Set(p(O));t.delete(e),V(O,t,!0)}}}let Ee=sa({nodes:()=>p(P),selected:()=>r(),onSelect:e=>t.onSelect?.(e),expandedIds:()=>t.expandedIds,onToggle:Te,checkable:()=>i(),checked:()=>a(),onCheck:e=>t.onCheck?.(e),ariaLabel:()=>t.ariaLabel,dir:()=>t.dir,filter:()=>p(S)}),De=M(()=>o()||t.height!=null),Oe=j(null),ke=j(0),Ae=M(()=>typeof s()==`number`?s():30),je=M(()=>typeof s()==`number`),Me=e=>{let t=Ee.rows[e];return t?typeof s()==`function`?s()(t.node,e):s():p(Ae)},Ne=M(()=>p(je)?p(Ae):e=>Me(e)),Pe=M(()=>p(ke)>0?p(ke):Math.max(1,t.height??320)),Fe=yr(f(()=>({count:Ee.rows.length,estimateSize:p(Ne),overscan:20,viewportHeight:p(Pe)})));T(()=>{let e=Ee.rows.length,t=p(Ne);f(()=>Fe.setOptions({count:e,estimateSize:t}))}),T(()=>{let e=p(Pe);f(()=>Fe.setViewportHeight(e))});let Ie=M(()=>(Fe.version,Fe.getTotalSize())),Le=M(()=>{if(!o())return Ee.rows;Fe.version;let e=Fe.getState();return Ee.rows.slice(e.startIndex,e.endIndex+1)}),Re=e=>Fe.getOffsetForIndex(e),ze=e=>o()?Fe.getSizeForIndex(e):Me(e),Be=br({virtualizer:Fe,totalSize:()=>p(Ie),viewport:()=>p(Pe),lineStep:()=>p(Ae)}),Ve=0;T(()=>{if(Ee.focusTick===Ve)return;Ve=Ee.focusTick;let e=Ee.activeIndex;o()&&f(()=>Be.ensureIndexVisible(e)),ge().then(()=>p(Oe)?.querySelector(`[data-row="${e}"]`)?.focus())});var He=Za();let Ue;var We=B(He),Ge=e=>{var t=Ya(),n=k(B(t),2);N(n);var r=k(n,2),i=e=>{var t=Ja();w(()=>R(t,`aria-label`,m())),x(`click`,t,()=>V(b,``)),d(e,t)};h(r,e=>{p(b)&&e(i)}),H(t),w(()=>{R(n,`placeholder`,l()),R(n,`aria-label`,l())}),te(n,()=>p(b),e=>V(b,e)),d(e,t)};h(We,e=>{c()&&e(Ge)});var Ke=k(We,2);ne(Ke,e=>({class:`sv-tree`,dir:p(y),onwheel:o()?Be.onWheel:void 0,onpointerdown:o()?Be.onContentDown:void 0,onpointermove:o()?Be.onContentMove:void 0,onpointerup:o()?Be.onContentUp:void 0,onpointercancel:o()?Be.onContentUp:void 0,...e,[ce]:{"sv-tree--scroll":p(De)&&!o(),"is-virtual":o()},[ye]:{height:t.height==null?void 0:`${t.height}px`}}),[()=>Ee.treeProps()],void 0,void 0,`svelte-szf0nj`);var qe=B(Ke);se(qe,17,()=>p(Le),e=>e.node.id,(e,t)=>{n(e,()=>p(t))});var Je=k(qe,2),Ye=e=>{var t=Xa(),n=B(t);let r,i;H(t),w(()=>{r=Ce(n,1,`sv-tree__thumb svelte-szf0nj`,null,r,{"is-dragging":Be.dragging}),i=A(n,``,i,{height:`${Be.thumbH}px`,transform:`translateY(${Be.thumbTop}px)`})}),x(`pointerdown`,t,function(...e){Be.onTrackDown?.apply(this,e)}),x(`pointerdown`,n,function(...e){Be.onThumbDown?.apply(this,e)}),x(`pointermove`,n,function(...e){Be.onThumbMove?.apply(this,e)}),x(`pointerup`,n,function(...e){Be.onThumbUp?.apply(this,e)}),C(`pointercancel`,n,function(...e){Be.onThumbUp?.apply(this,e)}),d(e,t)};h(Je,e=>{o()&&Be.maxOffset>0&&e(Ye)}),H(Ke),pe(Ke,e=>V(Oe,e),()=>p(Oe)),H(He),w(()=>{Ue=Ce(He,1,`sv-tree-host svelte-szf0nj`,null,Ue,{"has-search":c()}),R(He,`dir`,p(y)),Ke.dir=Ke.dir,He.dir=He.dir}),_e(Ke,`clientHeight`,e=>V(ke,e)),d(e,He),he()}u([`click`,`keydown`,`pointerdown`,`pointermove`,`pointerup`]);var $a=0;function eo(e){let t=`sv-acc-${$a++}`,n=()=>e.items(),r=()=>e.expandMode?.()??`single`,i=()=>e.disabled?.()??!1,a=M(()=>new Set(e.expanded())),o=M(()=>n().map((e,t)=>e.disabled?-1:t).filter(e=>e>=0)),s=j(0),c=j(0),l=e=>{V(s,e,!0),L(c)},u=e=>`${t}-h-${e}`,d=e=>`${t}-p-${e}`,f=e=>p(a).has(e);function m(t){let o=n()[t];if(!o||o.disabled||i())return;let s=p(a).has(o.id);if(r()===`single`)e.onChange?.(s?[]:[o.id]);else{let t=new Set(p(a));s?t.delete(o.id):t.add(o.id),e.onChange?.([...t])}}function h(e){if(!p(o).length)return;let t=p(o).indexOf(p(s)),n=t<0?0:t,r=p(o)[(n+e+p(o).length)%p(o).length];r!=null&&l(r)}function g(e,t){if(!i())switch(e.key){case`ArrowDown`:e.preventDefault(),h(1);break;case`ArrowUp`:e.preventDefault(),h(-1);break;case`Home`:e.preventDefault(),l(p(o)[0]??0);break;case`End`:e.preventDefault(),l(p(o).at(-1)??0);break;case`Enter`:case` `:e.preventDefault(),m(t)}}return{get focusIndex(){return p(s)},get focusTick(){return p(c)},get expandedIds(){return[...p(a)]},isExpanded:f,toggle:m,rootProps:()=>({"data-orientation":`vertical`}),headerProps:e=>{let t=n()[e];return{type:`button`,id:u(e),"data-idx":e,"aria-expanded":t?f(t.id):!1,"aria-controls":d(e),disabled:i()||t?.disabled||void 0,onclick:()=>m(e),onkeydown:t=>g(t,e)}},panelProps:e=>({role:`region`,id:d(e),"aria-labelledby":u(e)})}}var K=y(`<div><div class="sv-acc__body svelte-1fv9td1"><!></div></div>`),to=y(`<div><h3 class="sv-acc__heading svelte-1fv9td1"><button><svg class="sv-acc__chevron svelte-1fv9td1" viewBox="0 0 24 24" width="16" height="16" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="m9 18 6-6-6-6"></path></svg> <span class="sv-acc__label svelte-1fv9td1"> </span></button></h3> <!></div>`),no=y(`<div></div>`);function ro(e,t){ue(t,!0);let n=z(t,`expanded`,31,()=>me([])),r=z(t,`expandMode`,3,`single`),i=z(t,`disabled`,3,!1),a=M(()=>t.dir===`ltr`||t.dir===`rtl`?t.dir:void 0),s=eo({items:()=>t.items,expanded:()=>n(),onChange:e=>{n(e),t.onChange?.(e)},expandMode:()=>r(),disabled:()=>i(),dir:()=>t.dir}),c=null,l=0;T(()=>{if(s.focusTick!==l){l=s.focusTick;let e=s.focusIndex;queueMicrotask(()=>c?.querySelector(`[data-idx="${e}"]`)?.focus())}});var u=no();ne(u,e=>({class:`sv-acc`,dir:p(a),...e,[ce]:{"is-disabled":i()}}),[()=>s.rootProps()],void 0,void 0,`svelte-1fv9td1`),se(u,23,()=>t.items,e=>e.id,(e,n,r)=>{let i=M(()=>s.isExpanded(p(n).id));var a=to();let c;var l=B(a),u=B(l);ne(u,e=>({class:`sv-acc__header`,...e}),[()=>s.headerProps(p(r))],void 0,void 0,`svelte-1fv9td1`);var f=k(B(u),2),g=B(f,!0);H(f),H(u),H(l);var _=k(l,2),y=e=>{var i=K();ne(i,e=>({class:`sv-acc__panel`,...e}),[()=>s.panelProps(p(r))],void 0,void 0,`svelte-1fv9td1`);var a=B(i),c=B(a),l=e=>{var r=m(),i=I(r);o(i,()=>t.panel,()=>p(n)),d(e,r)};h(c,e=>{t.panel&&e(l)}),H(a),H(i),d(e,i)};h(_,e=>{p(i)&&e(y)}),H(a),w(()=>{c=Ce(a,1,`sv-acc__item svelte-1fv9td1`,null,c,{"is-open":p(i)}),v(g,p(n).label)}),d(e,a)}),H(u),pe(u,e=>c=e,()=>c),w(()=>u.dir=u.dir),d(e,u),he()}var io=Symbol(`svgrid-dock`);function ao(e){return e.panes.reduce((e,t)=>Math.max(e,t.minSize??0),0)}function oo(e,t,n=0){return{type:`tabs`,id:e(),panes:t,active:co(n,t.length)}}function so(e,t,n,r){return{type:`group`,id:e(),direction:t,children:n,sizes:lo(r,n.length)}}function co(e,t){return t<=0?0:Math.max(0,Math.min(e,t-1))}function lo(e,t){if(t<=0)return[];let n=e&&e.length===t?e.slice():Array(t).fill(1),r=n.reduce((e,t)=>e+(t>0?t:0),0);return r<=0?Array(t).fill(1/t):n.map(e=>(e>0?e:0)/r)}function uo(e,t){if(e.type===`tabs`)return e.panes.some(e=>e.id===t)?e:null;for(let n of e.children){let e=uo(n,t);if(e)return e}return null}function fo(e){if(e.type===`tabs`)return e.panes.length===0?null:{...e,active:co(e.active,e.panes.length)};let t=[],n=[];if(e.children.forEach((r,i)=>{let a=fo(r);a&&(t.push(a),n.push(e.sizes[i]??1))}),t.length===0)return null;if(t.length===1)return t[0];let r=[],i=[];return t.forEach((t,a)=>{if(t.type===`group`&&t.direction===e.direction){let e=n[a];t.children.forEach((n,a)=>{r.push(n),i.push(e*(t.sizes[a]??1/t.children.length))})}else r.push(t),i.push(n[a])}),{...e,children:r,sizes:lo(i,r.length)}}function po(e,t,n){return So(e,e=>e.type===`tabs`&&e.id===t?{...e,active:co(n,e.panes.length)}:e)}function mo(e,t,n){return So(e,e=>e.type===`group`&&e.id===t?{...e,sizes:lo(n,e.children.length)}:e)}function ho(e,t,n,r){return So(e,e=>{if(e.type!==`tabs`||e.id!==t||n<0||n>=e.panes.length)return e;let i=e.panes[e.active]?.id,a=e.panes.slice(),[o]=a.splice(n,1);if(!o)return e;a.splice(Math.max(0,Math.min(r,a.length)),0,o);let s=a.findIndex(e=>e.id===i);return{...e,panes:a,active:s<0?0:s}})}function go(e,t){let n=null,r=e=>{if(e.type===`tabs`){let r=e.panes.findIndex(e=>e.id===t);if(r<0)return e;n=e.panes[r];let i=e.panes.filter((e,t)=>t!==r);return{...e,panes:i,active:co(e.active>r?e.active-1:e.active,i.length)}}return{...e,children:e.children.map(r)}};return{root:fo(r(e)),pane:n}}function _o(e,t,n,r,i){let a=r===`left`||r===`right`?`row`:`column`,o=r===`left`||r===`top`,s=e=>{if(e.type===`tabs`){if(e.id!==t)return e;if(r===`center`){let t=[...e.panes,n];return{...e,panes:t,active:t.length-1}}let s=oo(i,[n],0);return so(i,a,o?[s,e]:[e,s])}let c=e.children.findIndex(e=>e.type===`tabs`&&e.id===t);if(c>=0&&r!==`center`&&e.direction===a){let t=oo(i,[n],0),r=e.children.slice(),a=e.sizes.slice(),s=(e.sizes[c]??1/e.children.length)/2,l=o?c:c+1;return r.splice(l,0,t),a.splice(c,1,s,s),{...e,children:r,sizes:lo(a,r.length)}}return{...e,children:e.children.map(s)}};return fo(s(e))??e}function vo(e,t){let n=null,r=e=>{if(e.type===`tabs`)return e.id===t?(n=e,null):e;let i=[],a=[];return e.children.forEach((t,n)=>{let o=r(t);o&&(i.push(o),a.push(e.sizes[n]??1))}),i.length===0?null:{...e,children:i,sizes:lo(a,i.length)}},i=r(e);return{root:i?fo(i):null,leaf:n}}function yo(e,t,n,r,i=.25){if(!e)return t;let a=n===`left`||n===`right`?`row`:`column`,o=n===`left`||n===`top`,s=Math.min(.6,Math.max(.1,i));return fo(so(r,a,o?[t,e]:[e,t],o?[s,1-s]:[1-s,s]))??t}function bo(e,t,n,r,i){let{root:a,pane:o}=go(e,t);return!a||!o||!xo(a,n)?e:_o(a,n,o,r,i)}function xo(e,t){return e.type===`tabs`?e.id===t:e.children.some(e=>xo(e,t))}function So(e,t){let n=t(e);return n.type===`group`?{...n,children:n.children.map(e=>So(e,t))}:n}var Co=y(`<div role="separator"></div>`),wo=y(`<div class="sv-dock__cell svelte-xqw5dg"><!></div> <!>`,1),To=y(`<div role="group"></div>`),Eo=y(`<div class="sv-dock__ins svelte-xqw5dg" aria-hidden="true"></div>`),Do=y(`<button type="button" class="sv-dock__tab-close svelte-xqw5dg" title="Close">×</button>`),Oo=y(`<!> <div role="tab"><span class="sv-dock__tab-label"> </span> <!></div>`,1),ko=y(`<div class="sv-dock__ins svelte-xqw5dg" aria-hidden="true"></div>`),Ao=y(`<!> <!>`,1),jo=y(`<div class="sv-dock__leafctl svelte-xqw5dg"><!></div>`),Mo=y(`<div class="sv-dock__content svelte-xqw5dg" role="tabpanel"><!></div>`),No=y(`<div class="sv-dock__content svelte-xqw5dg" role="tabpanel"><!></div>`),Po=y(`<div></div>`),Fo=y(`<div></div>`),q=y(`<div></div>`),J=y(`<div></div>`),Io=y(`<div></div>`),Lo=y(`<div class="sv-dock__dropzone svelte-xqw5dg" aria-hidden="true"><!> <div><!> <div class="sv-dock__guide-row svelte-xqw5dg"><!> <div></div> <!></div> <!></div></div>`),Ro=y(`<div><div role="tablist"><!> <!></div> <!> <!></div>`);function zo(e,t){ue(t,!0);let n=P(io),r=j(null);function i(e){return e&&e.type===`tabs`?ao(e):0}function a(e,t,a){if(e.button!==0||!p(r))return;e.preventDefault();let o=t.direction===`column`,s=p(r).getBoundingClientRect(),c=o?s.height:s.width;if(c<=0)return;let l=t.sizes.slice(),u=o?e.clientY:e.clientX,d=a,f=a+1,m=Math.max(n.minSize(),i(t.children[d]))/c,h=Math.max(n.minSize(),i(t.children[f]))/c,g=l[d]+l[f],_=e=>{let r=((o?e.clientY:e.clientX)-u)/c,i=Math.min(Math.max(l[d]+r,m),g-h),a=l.slice();a[d]=i,a[f]=g-i,n.resize(t.id,a)},v=()=>{window.removeEventListener(`pointermove`,_),window.removeEventListener(`pointerup`,v),document.body.style.userSelect=``,document.body.style.cursor=``};document.body.style.userSelect=`none`,document.body.style.cursor=o?`row-resize`:`col-resize`,window.addEventListener(`pointermove`,_),window.addEventListener(`pointerup`,v)}var s=m(),c=I(s),l=e=>{var n=To();se(n,23,()=>t.node.children,e=>e.id,(e,n,r)=>{var i=wo(),o=I(i);let s;zo(B(o),{get node(){return p(n)}}),H(o);var c=k(o,2),l=e=>{var n=Co();w(()=>{Ce(n,1,`sv-dock__splitter sv-dock__splitter--${t.node.direction??``}`,`svelte-xqw5dg`),R(n,`aria-orientation`,t.node.direction===`column`?`horizontal`:`vertical`)}),x(`pointerdown`,n,e=>a(e,t.node,p(r))),d(e,n)};h(c,e=>{p(r)<t.node.children.length-1&&e(l)}),w(()=>s=A(o,``,s,{"flex-grow":t.node.sizes[p(r)]??1,"flex-basis":`0`})),d(e,i)}),H(n),pe(n,e=>V(r,e),()=>p(r)),w(()=>Ce(n,1,`sv-dock__group sv-dock__group--${t.node.direction??``}`,`svelte-xqw5dg`)),d(e,n)},u=e=>{let r=M(()=>t.node.panes[t.node.active]??t.node.panes[0]),i=M(()=>n.reorderTarget?.()??null),a=M(()=>p(i)&&p(i).tabsId===t.node.id?p(i).index:-1),s=M(()=>n.headerPosition?.()??`top`),c=M(()=>!!n.hideSingleTab?.()&&t.node.panes.length===1);var l=Ro();let u;var f=B(l);let g;var _=B(f),y=e=>{var r=Ao(),i=I(r);se(i,19,()=>t.node.panes,e=>e.id,(e,r,i)=>{var o=Oo(),s=I(o),c=e=>{var t=Eo();d(e,t)};h(s,e=>{p(a)===p(i)&&e(c)});var l=k(s,2);let u;var f=B(l),m=B(f,!0);H(f);var g=k(f,2),_=e=>{var t=Do();w(()=>R(t,`aria-label`,`Close ${p(r).title}`)),x(`pointerdown`,t,e=>e.stopPropagation()),x(`click`,t,e=>{e.stopPropagation(),n.close(p(r).id)}),d(e,t)};h(g,e=>{p(r).closable!==!1&&e(_)}),H(l),w(()=>{u=Ce(l,1,`sv-dock__tab svelte-xqw5dg`,null,u,{"is-active":p(i)===t.node.active}),R(l,`aria-selected`,p(i)===t.node.active),R(l,`tabindex`,p(i)===t.node.active?0:-1),R(l,`data-dock-tab`,p(r).id),R(l,`data-tab-index`,p(i)),v(m,p(r).title)}),x(`pointerdown`,l,e=>{e.button===0&&(n.activate(t.node.id,p(i)),n.beginDrag(e,p(r).id,t.node.id))}),x(`keydown`,l,e=>{(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),n.activate(t.node.id,p(i)))}),d(e,o)});var o=k(i,2),s=e=>{var t=ko();d(e,t)};h(o,e=>{p(a)===t.node.panes.length&&e(s)}),d(e,r)};h(_,e=>{p(c)||e(y)});var b=k(_,2),S=e=>{var r=jo(),i=B(r);o(i,()=>n.leafActions,()=>t.node),H(r),d(e,r)};h(b,e=>{n.leafActions&&e(S)}),H(f);var C=k(f,2),T=e=>{var i=m(),a=I(i);se(a,17,()=>t.node.panes,e=>e.id,(e,t)=>{var i=Mo();let a;var s=B(i);o(s,()=>n.pane,()=>p(t)),H(i),w(()=>a=A(i,``,a,{display:p(t).id===p(r)?.id?``:`none`})),d(e,i)}),d(e,i)},E=M(()=>n.keepAlive?.()),D=e=>{var t=m(),i=I(t),a=e=>{var t=m(),i=I(t);oe(i,()=>p(r).id,e=>{var t=No(),i=B(t);o(i,()=>n.pane,()=>p(r)),H(t),d(e,t)}),d(e,t)};h(i,e=>{p(r)&&e(a)}),d(e,t)};h(C,e=>{p(E)?e(T):e(D,-1)});var O=k(C,2),ee=e=>{let t=M(()=>n.dropTarget()),r=M(()=>p(t).zone),i=M(()=>p(t).centerOnly===!0);var a=Lo(),o=B(a),s=e=>{var t=Po();w(()=>Ce(t,1,`sv-dock__drop-hint sv-dock__drop-hint--${p(r)??``}`,`svelte-xqw5dg`)),d(e,t)};h(o,e=>{p(r)&&e(s)});var c=k(o,2);let l;var u=B(c),f=e=>{var t=Fo();let n;w(()=>n=Ce(t,1,`sv-dock__guide-cell sv-dock__guide-cell--top svelte-xqw5dg`,null,n,{"is-on":p(r)===`top`})),d(e,t)};h(u,e=>{p(i)||e(f)});var m=k(u,2),g=B(m),_=e=>{var t=q();let n;w(()=>n=Ce(t,1,`sv-dock__guide-cell sv-dock__guide-cell--left svelte-xqw5dg`,null,n,{"is-on":p(r)===`left`})),d(e,t)};h(g,e=>{p(i)||e(_)});var v=k(g,2);let y;var b=k(v,2),x=e=>{var t=J();let n;w(()=>n=Ce(t,1,`sv-dock__guide-cell sv-dock__guide-cell--right svelte-xqw5dg`,null,n,{"is-on":p(r)===`right`})),d(e,t)};h(b,e=>{p(i)||e(x)}),H(m);var S=k(m,2),C=e=>{var t=Io();let n;w(()=>n=Ce(t,1,`sv-dock__guide-cell sv-dock__guide-cell--bottom svelte-xqw5dg`,null,n,{"is-on":p(r)===`bottom`})),d(e,t)};h(S,e=>{p(i)||e(C)}),H(c),H(a),w(()=>{l=Ce(c,1,`sv-dock__guide svelte-xqw5dg`,null,l,{"is-center-only":p(i)}),y=Ce(v,1,`sv-dock__guide-cell sv-dock__guide-cell--center svelte-xqw5dg`,null,y,{"is-on":p(r)===`center`})}),d(e,a)},te=M(()=>n.dropTarget()?.tabsId===t.node.id);h(O,e=>{p(te)&&e(ee)}),H(l),w(e=>{u=Ce(l,1,`sv-dock__leaf sv-dock__leaf--h-${p(s)??``}`,`svelte-xqw5dg`,u,e),R(l,`data-dock-tabs`,t.node.id),g=Ce(f,1,`sv-dock__tabstrip svelte-xqw5dg`,null,g,{"is-bare":p(c)})},[()=>({"is-focused":n.focusedLeaf?.()===t.node.id})]),d(e,l)};h(c,e=>{t.node.type===`group`?e(l):e(u,-1)}),d(e,s),he()}u([`pointerdown`,`keydown`,`click`]);var Bo=0;function Vo(){return Bo+=1,Bo*1e6}var Ho=y(`<div class="sv-dock__ghost svelte-1a3gmpe"> </div>`),Uo=y(`<div><!></div> <!>`,1);function Wo(e,t){ue(t,!0);let n=z(t,`layout`,15),r=z(t,`minSize`,3,80),i=z(t,`surface`,3,`main`),a=z(t,`externalDrop`,3,null),o=z(t,`externalReorder`,3,null),s=z(t,`headerPosition`,3,`top`),c=z(t,`focusedLeaf`,3,null),l=z(t,`keepAlive`,3,!1),u=z(t,`hideSingleTab`,3,!1),f=z(t,`locked`,3,!1),m=M(()=>!!t.onBeginDrag),g=Vo(),_=()=>`dk-${g++}`;function y(e){n(e),t.onLayoutChange?.(e)}let b=(e,r)=>t.onActivate?t.onActivate(e,r):y(po(n(),e,r)),x=(e,r)=>t.onResize?t.onResize(e,r):y(mo(n(),e,r)),S=e=>{if(t.onClose){t.onClose(e);return}let{root:r}=go(n(),e);r&&y(r)},C=j(null),T=j(null),E=null;function D(e){let t=n=>{if(n.type===`tabs`)return n.panes.find(t=>t.id===e)?.title??null;for(let e of n.children){let n=t(e);if(n)return n}return null};return t(n())??``}function O(e,n,r){if(e.button===0&&!f()){if(t.onBeginDrag){t.onBeginDrag(e,n,r);return}E={paneId:n,sourceTabsId:r,title:D(n),sx:e.clientX,sy:e.clientY},window.addEventListener(`pointermove`,te),window.addEventListener(`pointerup`,ne)}}function ee(e,t){let n=document.elementFromPoint(e,t)?.closest(`[data-dock-tabs]`);if(!n)return null;let r=n.dataset.dockTabs,i=n.getBoundingClientRect();if(i.width<=0||i.height<=0)return null;let a=(e-i.left)/i.width,o=(t-i.top)/i.height,s=Math.min(a,1-a,o,1-o),c=`center`;if(s<=.25){let e=Math.min(a,1-a,o,1-o);c=e===a?`left`:e===1-a?`right`:e===o?`top`:`bottom`}return{tabsId:r,zone:c}}function te(e){if(E){if(!p(C)){if(Math.hypot(e.clientX-E.sx,e.clientY-E.sy)<5)return;V(C,{paneId:E.paneId,sourceTabsId:E.sourceTabsId,title:E.title,x:e.clientX,y:e.clientY},!0),document.body.style.userSelect=`none`,document.body.style.cursor=`grabbing`}V(C,{...p(C),x:e.clientX,y:e.clientY},!0),V(T,ee(e.clientX,e.clientY),!0)}}function ne(){window.removeEventListener(`pointermove`,te),window.removeEventListener(`pointerup`,ne),p(C)&&p(T)&&y(bo(n(),p(C).paneId,p(T).tabsId,p(T).zone,_)),V(C,null),V(T,null),E=null,document.body.style.userSelect=``,document.body.style.cursor=``}ae(io,{get pane(){return t.pane},get leafActions(){return f()?void 0:t.leafActions},activate:b,close:S,beginDrag:O,resize:x,minSize:()=>r(),dropTarget:()=>p(m)?a():p(T),reorderTarget:()=>p(m)?o():null,headerPosition:()=>s(),focusedLeaf:()=>c(),keepAlive:()=>l(),hideSingleTab:()=>u()});var re=Uo(),N=I(re);let P;zo(B(N),{get node(){return n()}}),H(N);var F=k(N,2),ie=e=>{var t=Ho();let n;var r=B(t,!0);H(t),w(()=>{n=A(t,``,n,{left:`${p(C).x+12}px`,top:`${p(C).y+12}px`}),v(r,p(C).title)}),d(e,t)};h(F,e=>{p(C)&&e(ie)}),w(()=>{P=Ce(N,1,`sv-dock svelte-1a3gmpe`,null,P,{"is-dragging":!!p(C)}),R(N,`data-dock-surface`,i())}),d(e,re),he()}function Go(e,t){if(e.main&&uo(e.main,t))return{kind:`main`};for(let n of e.floating)if(n.leaf.panes.some(e=>e.id===t))return{kind:`floating`,windowId:n.id};for(let n of e.autoHide)if(n.leaf.panes.some(e=>e.id===t))return{kind:`autoHide`,entryId:n.id};return null}function Ko(e,t){if(e.main&&qo(e.main,t))return`main`;let n=e.floating.find(e=>e.leaf.id===t);return n?n.id:null}function qo(e,t){return e.type===`tabs`?e.id===t:e.children.some(e=>qo(e,t))}function Jo(e,t){let n=e=>{if(e.type===`tabs`)return e.panes.find(e=>e.id===t)??null;for(let t of e.children){let e=n(t);if(e)return e}return null};if(e.main){let t=n(e.main);if(t)return t}for(let n of e.floating){let e=n.leaf.panes.find(e=>e.id===t);if(e)return e}for(let n of e.autoHide){let e=n.leaf.panes.find(e=>e.id===t);if(e)return e}return null}function Yo(e){return e.floating.reduce((e,t)=>Math.max(e,t.z),0)}function Xo(e,t){let n=e.main;n&&uo(n,t)&&(n=go(n,t).root);let r=e.floating.map(e=>{if(!e.leaf.panes.some(e=>e.id===t))return e;let n=e.leaf.panes.filter(e=>e.id!==t);if(n.length===0)return null;let r=Math.max(0,Math.min(e.leaf.active,n.length-1));return{...e,leaf:{...e.leaf,panes:n,active:r}}}).filter(e=>e!==null),i=e.autoHide.map(e=>{if(!e.leaf.panes.some(e=>e.id===t))return e;let n=e.leaf.panes.filter(e=>e.id!==t);if(n.length===0)return null;let r=Math.max(0,Math.min(e.leaf.active,n.length-1));return{...e,leaf:{...e.leaf,panes:n,active:r}}}).filter(e=>e!==null);return{main:n,floating:r,autoHide:i}}function Zo(e,t,n,r){return e.main&&qo(e.main,t)?{...e,main:ho(e.main,t,n,r)}:{...e,floating:e.floating.map(e=>{if(e.leaf.id!==t)return e;let i=ho(e.leaf,t,n,r);return i.type===`tabs`?{...e,leaf:i}:e})}}function Qo(e,t,n){return e.main?{...e,main:$o(e.main,t,n)}:e}function $o(e,t,n){if(e.type===`tabs`)return e;let r=e.children.map(e=>$o(e,t,n));return e.id===t?{...e,children:r,sizes:es(n,r.length)}:{...e,children:r}}function es(e,t){if(t<=0)return[];let n=e.length===t?e:Array(t).fill(1),r=n.reduce((e,t)=>e+(t>0?t:0),0);return r<=0?Array(t).fill(1/t):n.map(e=>(e>0?e:0)/r)}function ts(e,t,n){let r=e.floating.find(e=>e.leaf.id===t);if(r)return{...e,floating:e.floating.map(e=>e.id===r.id?{...e,leaf:{...e.leaf,active:Cs(n,e.leaf.panes.length)}}:e)};let i=e.autoHide.find(e=>e.leaf.id===t);return i?{...e,autoHide:e.autoHide.map(e=>e.id===i.id?{...e,leaf:{...e.leaf,active:Cs(n,e.leaf.panes.length)}}:e)}:{...e,main:e.main?ws(e.main,t,n):e.main}}function ns(e,t,n,r,i){let a=Jo(e,t);if(!a)return e;let o=Ko(e,n);if(!o)return e;let s=Xo(e,t);if(Ko(s,n)===null)return e;if(o===`main`){let t=s.main;return t?{...s,main:_o(t,n,a,r,i)}:e}return{...s,floating:s.floating.map(e=>{if(e.id!==o)return e;let t=[...e.leaf.panes,a];return{...e,leaf:{...e.leaf,panes:t,active:t.length-1}}})}}function rs(e,t,n){if(!e.main)return{...e,main:oo(n,[t],0)};let r=!1,i=e=>{if(r)return e;if(e.type===`tabs`){r=!0;let n=[...e.panes,t];return{...e,panes:n,active:n.length-1}}return{...e,children:e.children.map(i)}};return{...e,main:i(e.main)}}function is(e,t,n){let r=Jo(e,t);if(!r)return e;let i=Xo(e,t);return i.main?{...i,main:i.main}:{...i,main:oo(n,[r],0)}}function as(e,t,n,r){let i=Jo(e,t);if(!i)return e;let a=Go(e,t);if(a?.kind===`floating`){let t=e.floating.find(e=>e.id===a.windowId);if(t&&t.leaf.panes.length===1)return e}let o=Xo(e,t),s={id:r(),leaf:oo(r,[i],0),x:n.x,y:n.y,width:n.width,height:n.height,z:Yo(e)+1};return{...o,floating:[...o.floating,s]}}function os(e,t,n,r,i){let a=e.floating.find(e=>e.id===t);if(!a||Ko(e,n)!==`main`||!e.main)return e;let o=e.floating.filter(e=>e.id!==t);if(r===`center`)return{...e,floating:o,main:e.main?Ts(e.main,n,a.leaf.panes):e.main};let s=oo(i,a.leaf.panes,a.leaf.active),c=r===`left`||r===`right`?`row`:`column`,l=r===`left`||r===`top`;return{...e,floating:o,main:Es(e.main,n,s,c,l,i)}}function ss(e,t,n,r){return{...e,floating:e.floating.map(e=>e.id===t?{...e,x:n,y:r}:e)}}function cs(e,t,n,r){return{...e,floating:e.floating.map(e=>e.id===t?{...e,width:Math.max(140,n),height:Math.max(80,r)}:e)}}function ls(e,t){let n=Yo(e);return{...e,floating:e.floating.map(e=>e.id===t?{...e,z:n+1}:e)}}function us(e,t,n){return{...e,floating:e.floating.map(e=>e.id===t?{...e,minimized:n,maximized:!n&&e.maximized}:e)}}function ds(e,t){return{...e,floating:e.floating.map(e=>e.id===t?{...e,maximized:!e.maximized,minimized:!1}:e)}}function fs(e,t){return{...e,floating:e.floating.filter(e=>e.id!==t)}}function ps(e,t){let n=e=>{if(e.type===`tabs`)return e.id===t?e:null;for(let t of e.children){let e=n(t);if(e)return e}return null};if(e.main){let t=n(e.main);if(t)return t}let r=e.floating.find(e=>e.leaf.id===t);if(r)return r.leaf;let i=e.autoHide.find(e=>e.leaf.id===t);return i?i.leaf:null}function ms(e,t){let n=e.maximizedLeaf===t;return{...e,maximizedLeaf:n?null:t}}function hs(e,t,n,r,i=260){let a=e.floating.find(e=>e.id===t);if(!a)return e;let o={id:r(),side:n,leaf:oo(r,a.leaf.panes,a.leaf.active),size:i};return{...e,floating:e.floating.filter(e=>e.id!==t),autoHide:[...e.autoHide,o]}}function gs(e,t,n,r=260){if(!e.main)return e;let{root:i,leaf:a}=vo(e.main,t);if(!a)return e;let o={id:`ah-${t}`,side:n,leaf:a,size:r};return{...e,main:i,autoHide:[...e.autoHide,o]}}function _s(e,t,n,r,i=260){let a=Jo(e,t);if(!a)return e;let o=Xo(e,t),s={id:r(),side:n,leaf:oo(r,[a],0),size:i};return{...o,autoHide:[...o.autoHide,s]}}function vs(e,t,n,r=.25){let i=e.autoHide.find(e=>e.id===t);if(!i)return e;let a=oo(n,i.leaf.panes,i.leaf.active);return{...e,autoHide:e.autoHide.filter(e=>e.id!==t),main:yo(e.main,a,i.side,n,r)}}function ys(e,t,n){return{...e,autoHide:e.autoHide.map(e=>e.id===t?{...e,size:Math.max(120,n)}:e)}}function bs(e,t){return Xo(e,t)}function xs(e){let t=[],n=e=>{if(t.push(e.id),e.type===`tabs`)for(let n of e.panes)t.push(n.id);else for(let t of e.children)n(t)};e.main&&n(e.main);for(let r of e.floating)t.push(r.id),n(r.leaf);for(let r of e.autoHide)t.push(r.id),n(r.leaf);return t}function Ss(e){let t=new Set,n=1,r=()=>{let e=`dm-d${n++}`;for(;t.has(e);)e=`dm-d${n++}`;return e},i=e=>{let n=t.has(e)?r():e;return t.add(n),n},a=e=>{let t=i(e.id);if(e.type===`tabs`)return t===e.id?e:{...e,id:t};let n=e.children.map(a);return t===e.id&&n.every((t,n)=>t===e.children[n])?e:{...e,id:t,children:n}},o=e.main?a(e.main):e.main,s=!1,c=e.floating.map(e=>{let t=i(e.id),n=a(e.leaf);return t===e.id&&n===e.leaf?e:(s=!0,{...e,id:t,leaf:n})}),l=!1,u=e.autoHide.map(e=>{let t=i(e.id),n=a(e.leaf);return t===e.id&&n===e.leaf?e:(l=!0,{...e,id:t,leaf:n})});return o===e.main&&!s&&!l?e:{...e,main:o,floating:s?c:e.floating,autoHide:l?u:e.autoHide}}function Cs(e,t){return t<=0?0:Math.max(0,Math.min(e,t-1))}function ws(e,t,n){return e.type===`tabs`?e.id===t?{...e,active:Cs(n,e.panes.length)}:e:{...e,children:e.children.map(e=>ws(e,t,n))}}function Ts(e,t,n){if(e.type===`tabs`){if(e.id!==t)return e;let r=[...e.panes,...n];return{...e,panes:r,active:r.length-1}}return{...e,children:e.children.map(e=>Ts(e,t,n))}}function Es(e,t,n,r,i,a){let o=e=>{if(e.type===`tabs`){if(e.id!==t)return e;let o=i?[n,e]:[e,n];return{type:`group`,id:a(),direction:r,children:o,sizes:[.5,.5]}}return{...e,children:e.children.map(o)}};return o(e)}var Ds=y(`<div class="sv-popout-host svelte-1bgr5p6"><!></div>`);function Os(e,t){var n=Ds(),r=B(n);o(r,()=>t.pane,()=>t.paneData),H(n),d(e,n)}function ks(e){let t=window.open(``,``,`width=${e.width??480},height=${e.height??360}`);if(!t)return null;let n=t.document;n.title=e.pane.title;for(let e of Array.from(document.styleSheets))try{let t=Array.from(e.cssRules).map(e=>e.cssText).join(`
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./jszip.min-CX2fPs3O.js","./rolldown-runtime-Dd_uD5pT.js","./src-LRVqg7Sf.js","./disclose-version-CIm4S9xS.js","./export-format-DwjuTfrQ.js","./js-scroller.svelte-tHanKJx0.js","./dismissable-2EZKoens.js","./dismissable-BF-9TJSd.css","./SvDateTimePicker-DOBYyLeN.js","./popover-CUkLsvRX.js","./SvDateTimePicker-Cygij-dr.css","./SvGridDropdown-CAYG7Y-O.js","./SvGridDropdown-Crwb2P3Q.css","./easing-zaypKrr0.js","./SvGridChart-BEDNTdc5.js","./chart-DHEgt4lN.js","./SvGridChart-Vu4Nvjiv.css","./src-D-O2F805.css"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{i as e,r as t,t as n}from"./rolldown-runtime-Dd_uD5pT.js";import{$ as r,A as i,C as a,D as o,E as s,F as c,G as l,H as u,I as d,J as f,K as p,L as m,M as h,N as g,O as _,P as v,R as y,T as b,U as x,V as S,W as C,X as w,Z as T,_ as E,_t as D,a as O,at as k,b as A,bt as ee,c as te,ct as j,d as ne,dt as M,et as re,f as N,ft as P,g as F,gt as ie,ht as ae,it as I,j as oe,k as se,l as ce,lt as L,m as le,mt as ue,n as de,nt as fe,o as pe,ot as me,p as R,pt as he,q as ge,r as z,rt as B,s as _e,st as V,t as ve,u as ye,ut as be,v as xe,vt as H,w as Se,x as Ce,xt as we,y as Te,yt as Ee,z as De}from"./disclose-version-CIm4S9xS.js";import{$ as Oe,$t as ke,A as Ae,An as je,At as Me,B as Ne,Bn as Pe,Bt as Fe,C as Ie,Cn as Le,Ct as Re,D as ze,Dn as Be,Dt as Ve,E as He,En as Ue,Et as We,F as Ge,Fn as Ke,Ft as qe,G as Je,Gn as Ye,Gt as Xe,H as Ze,Hn as Qe,Ht as $e,I as et,In as tt,It as nt,J as rt,Jt as it,K as at,Kn as ot,Kt as st,L as U,Ln as ct,Lt as lt,M as ut,Mn as dt,Mt as ft,N as pt,Nn as mt,Nt as ht,O as gt,On as _t,Ot as vt,P as yt,Pn as bt,Pt as xt,Q as St,Qt as Ct,R as wt,Rn as Tt,Rt as Et,S as Dt,Sn as Ot,St as kt,T as At,Tn as jt,Tt as Mt,U as Nt,Un as Pt,Ut as Ft,V as It,Vn as Lt,Vt as Rt,W as zt,Wn as Bt,Wt as Vt,X as Ht,Xt as Ut,Y as Wt,Yt as Gt,Z as Kt,Zt as qt,_ as Jt,_n as Yt,_t as Xt,a as Zt,an as Qt,at as $t,b as en,bn as tn,bt as nn,c as rn,cn as an,ct as on,d as sn,dn as cn,dt as ln,en as un,et as dn,f as fn,fn as pn,ft as mn,g as hn,gn,gt as _n,h as vn,hn as yn,ht as bn,i as xn,in as W,it as Sn,j as Cn,jn as wn,jt as Tn,k as G,kn as En,kt as Dn,l as On,ln as kn,lt as An,m as jn,mn as Mn,mt as Nn,n as Pn,nn as Fn,nt as In,o as Ln,on as Rn,ot as zn,p as Bn,pn as Vn,pt as Hn,q as Un,qn as Wn,qt as Gn,r as Kn,rn as qn,rt as Jn,s as Yn,sn as Xn,st as Zn,tn as Qn,tt as $n,u as er,un as tr,ut as nr,v as rr,vn as ir,vt as ar,w as or,wn as sr,wt as cr,x as lr,xn as ur,xt as dr,y as fr,yn as pr,yt as mr,z as hr,zn as gr,zt as _r}from"./src-LRVqg7Sf.js";import{a as vr,n as yr,t as br}from"./js-scroller.svelte-tHanKJx0.js";import{a as xr,i as Sr,o as Cr,r as wr,t as Tr}from"./dismissable-2EZKoens.js";import{a as Er,i as Dr,o as Or,p as kr,r as Ar,t as jr}from"./SvDateTimePicker-DOBYyLeN.js";import{i as Mr,n as Nr,r as Pr,t as Fr}from"./popover-CUkLsvRX.js";import{t as Ir}from"./SvListBox-BVzVfCG3.js";import{r as Lr}from"./easing-zaypKrr0.js";(function(){let e=document.createElement(`link`).relList;if(e&&e.supports&&e.supports(`modulepreload`))return;for(let e of document.querySelectorAll(`link[rel="modulepreload"]`))n(e);new MutationObserver(e=>{for(let t of e)if(t.type===`childList`)for(let e of t.addedNodes)e.tagName===`LINK`&&e.rel===`modulepreload`&&n(e)}).observe(document,{childList:!0,subtree:!0});function t(e){let t={};return e.integrity&&(t.integrity=e.integrity),e.referrerPolicy&&(t.referrerPolicy=e.referrerPolicy),t.credentials=e.crossOrigin===`use-credentials`?`include`:e.crossOrigin===`anonymous`?`omit`:`same-origin`,t}function n(e){if(e.ep)return;e.ep=!0;let n=t(e);fetch(e.href,n)}})();var Rr=y(`<button type="button" class="sv-dri__clear svelte-1x1pbpo">×</button>`),zr=y(`<div class="sv-dri__panel" role="dialog"><!></div>`),Br=y(`<input type="hidden"/> <input type="hidden"/>`,1),Vr=y(`<div><div><svg class="sv-dri__icon svelte-1x1pbpo" viewBox="0 0 24 24" width="15" height="15" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><rect x="3" y="4" width="18" height="18" rx="2"></rect><path d="M16 2v4M8 2v4M3 10h18"></path></svg> <input/> <!></div> <!> <!></div>`);function Hr(e,t){ue(t,!0);let n={dialog:`Choose a date range`,clear:`Clear`,open:`Open calendar`,to:`to`},r=z(t,`value`,3,null),i=z(t,`formatString`,3,`yyyy-MM-dd`),o=z(t,`min`,3,null),s=z(t,`max`,3,null),c=z(t,`months`,3,2),l=z(t,`firstDayOfWeek`,3,0),u=z(t,`weekNumbers`,3,!1),f=z(t,`locale`,19,()=>typeof navigator<`u`?navigator.language:`en-US`),m=z(t,`placeholder`,3,`Select date range`),g=z(t,`animate`,3,!1),_=z(t,`autoOpen`,3,!1),v=z(t,`disabled`,3,!1),y=z(t,`readonly`,3,!1),b=z(t,`size`,3,`md`),S=z(t,`invalid`,3,!1),C=z(t,`required`,3,!1),E=xr(`sv-daterange`),D=M(()=>t.id??E),O=M(()=>Cr(n,t.messages)),ee=M(()=>t.dir===`ltr`||t.dir===`rtl`?t.dir:void 0),te=M(()=>!v()&&!y()),re=e=>Ar(e,i(),f()),P=M(()=>{if(!r())return``;let[e,t]=r();return e&&t?`${re(e)} ${p(O).to} ${re(t)}`:e?re(e):``}),ie=M(()=>r()?Or(r()[0],r()[1]):null),ae=j(!1);function oe(){p(te)&&!p(ae)&&V(ae,!0)}function se(){V(ae,!1)}function ce(){p(ae)?se():oe()}function L(){t.onChange?.(null)}function le(e){if(!e.length)return;let n=e[0],r=e[e.length-1];t.onChange?.([kr(n),kr(r)]),e.length>=1&&n!==r&&se()}let de=j(null),fe=j(null),ge=j(me({top:0,left:0,width:0,openUpward:!1,maxHeight:0,availHeight:0}));function _e(){p(de)&&V(ge,Nr(p(de).getBoundingClientRect(),{estimatedHeight:360,minWidth:300}),!0)}T(()=>{if(!p(ae))return;_e();let e=()=>_e();window.addEventListener(`scroll`,e,!0),window.addEventListener(`resize`,e);let t=e=>{let t=e.target;t&&(p(de)?.contains(t)||p(fe)?.contains(t)||se())};return document.addEventListener(`pointerdown`,t,!0),()=>{window.removeEventListener(`scroll`,e,!0),window.removeEventListener(`resize`,e),document.removeEventListener(`pointerdown`,t,!0)}});function ve(e){e.key===`Escape`?se():e.key===`ArrowDown`&&(e.altKey||!r())&&(e.preventDefault(),oe())}function ye(e){_()&&(e.focus(),oe())}wr(e,{get id(){return p(D)},get label(){return t.label},get hint(){return t.hint},get error(){return t.error},get required(){return C()},get dir(){return t.dir},children:(e,n)=>{var i=Vr();let _;var y=B(i);let T;var E=k(B(y),2),j=()=>p(te)&&ce();ne(E,e=>({id:p(D),class:`sv-dri__input`,type:`text`,readonly:!0,placeholder:m(),value:p(P),disabled:v(),...e,"aria-haspopup":`dialog`,"aria-expanded":p(ae),onclick:j,onkeydown:ve}),[()=>Sr({id:p(D),invalid:S(),required:C(),error:t.error,hint:t.hint,ariaLabel:t.ariaLabel})],void 0,void 0,`svelte-1x1pbpo`,!0),a(E,e=>ye?.(e));var M=k(E,2),re=e=>{var t=Rr();w(()=>R(t,`aria-label`,p(O).clear)),x(`click`,t,e=>{e.stopPropagation(),L()}),d(e,t)};h(M,e=>{r()&&p(te)&&e(re)}),H(y),pe(y,e=>V(de,e),()=>p(de));var oe=k(y,2),se=e=>{var n=zr();let r;var i=B(n);Er(i,{get value(){return p(ie)},selectionMode:`range`,get min(){return o()},get max(){return s()},get months(){return c()},get firstDayOfWeek(){return l()},get weekNumbers(){return u()},get locale(){return f()},get presets(){return t.presets},get animate(){return g()},get dir(){return p(ee)},onChange:le}),H(n),pe(n,e=>V(fe,e),()=>p(fe)),a(n,e=>Mr?.(e)),a(n,(e,t)=>Pr?.(e,t),()=>({up:p(ge).openUpward})),w(()=>{R(n,`aria-label`,p(O).dialog),R(n,`dir`,p(ee)),r=A(n,``,r,{position:`fixed`,top:`${p(ge).top}px`,left:`${p(ge).left}px`}),n.dir=n.dir}),d(e,n)};h(oe,e=>{p(ae)&&e(se)});var ue=k(oe,2),me=e=>{var n=Br(),i=I(n);N(i);var a=k(i,2);N(a),w((e,n)=>{R(i,`name`,`${t.name}_start`),F(i,e),R(a,`name`,`${t.name}_end`),F(a,n)},[()=>r()?.[0]?r()[0].toISOString():``,()=>r()?.[1]?r()[1].toISOString():``]),d(e,n)};h(ue,e=>{t.name&&e(me)}),H(i),w(()=>{_=Ce(i,1,`sv-dri svelte-1x1pbpo`,null,_,{"sv-dri--disabled":v()}),T=Ce(y,1,`sv-dri__field sv-dri__field--${b()??``}`,`svelte-1x1pbpo`,T,{"is-invalid":S()}),R(y,`dir`,p(ee)),y.dir=y.dir}),d(e,i)},$$slots:{default:!0}}),he()}u([`click`]);function Ur(e){return e==null?[]:Array.isArray(e)?[...e]:[e]}function Wr(e){let t=()=>e.items(),n=()=>e.mode?.()??`single`,r=()=>e.disabled?.()??!1,i=()=>(e.orientation?.()??`horizontal`)===`vertical`,a=()=>e.dir?.()===`rtl`,o=M(()=>Ur(e.value())),s=M(()=>t().map((e,t)=>e.disabled?-1:t).filter(e=>e>=0)),c=e=>p(o).includes(e),l=M(()=>t().findIndex(e=>c(e.value))),u=j(0);T(()=>{let e=t()[p(u)];(!e||e.disabled)&&V(u,p(s)[0]??0,!0)});let d=M(()=>n()===`single`?p(l)>=0?p(l):p(s)[0]??0:p(u));function f(i){let a=t()[i];if(!(!a||a.disabled||r())){if(V(u,i,!0),n()===`none`){e.onChange?.(a.value);return}if(n()===`multiple`){let t=new Set(p(o));t.has(a.value)?t.delete(a.value):t.add(a.value),e.onChange?.([...t])}else e.onChange?.(a.value)}}function m(e){n()===`single`?f(e):V(u,e,!0)}function h(e){if(!p(s).length)return;let t=p(s).indexOf(p(d)),n=p(s)[(t+e+p(s).length)%p(s).length];n!=null&&m(n)}function g(e){if(r())return;let t=!i(),n=t&&a(),o=t?n?`ArrowLeft`:`ArrowRight`:`ArrowDown`,c=t?n?`ArrowRight`:`ArrowLeft`:`ArrowUp`;e.key===o?(e.preventDefault(),h(1)):e.key===c?(e.preventDefault(),h(-1)):e.key===`Home`?(e.preventDefault(),m(p(s)[0]??0)):e.key===`End`?(e.preventDefault(),m(p(s).at(-1)??0)):(e.key===` `||e.key===`Enter`)&&(e.preventDefault(),f(p(d)))}let _=()=>({id:e.id?.(),invalid:e.invalid?.(),required:e.required?.(),error:e.error?.(),hint:e.hint?.(),ariaLabel:e.ariaLabel?.()}),v=()=>n()===`single`?`radiogroup`:`group`;return{get activeIndex(){return p(d)},get selectedValues(){return p(o)},isSelected:c,isActive:e=>e===p(d),pick:f,move:h,onKeydown:g,rootProps:()=>({role:v(),id:e.id?.(),"aria-orientation":i()?`vertical`:`horizontal`,...Sr(_()),onkeydown:g}),buttonProps:e=>{let i=t()[e],a=i?c(i.value):!1,o=n()===`single`;return{type:`button`,role:o?`radio`:void 0,"data-idx":e,"aria-checked":o?a:void 0,"aria-pressed":n()===`multiple`?a:void 0,"data-selected":a?``:void 0,disabled:r()||i?.disabled||void 0,tabindex:n()===`none`||e===p(d)?0:-1,onclick:()=>f(e)}}}}var Gr=y(`<button> </button>`),Kr=y(`<input type="hidden"/>`),qr=y(`<div><!> <!></div>`);function Jr(e,t){ue(t,!0);let n=z(t,`value`,3,null),r=z(t,`mode`,3,`single`),i=z(t,`orientation`,3,`horizontal`),a=z(t,`variant`,3,`solid`),o=z(t,`disabled`,3,!1),s=z(t,`size`,3,`md`),c=z(t,`invalid`,3,!1),l=z(t,`required`,3,!1),u=xr(`sv-bg`),f=M(()=>t.id??u),g=Wr({items:()=>t.items,value:()=>n(),onChange:e=>t.onChange?.(e),mode:()=>r(),orientation:()=>i(),disabled:()=>o(),dir:()=>t.dir,id:()=>p(f),invalid:()=>c(),required:()=>l(),error:()=>t.error,hint:()=>t.hint,ariaLabel:()=>t.ariaLabel??t.label});wr(e,{get id(){return p(f)},get label(){return t.label},get hint(){return t.hint},get error(){return t.error},get required(){return l()},get dir(){return t.dir},children:(e,n)=>{var r=qr();ne(r,e=>({class:`sv-bg sv-bg--${i()??``} sv-bg--${a()??``} sv-bg--${s()??``}`,...e,[ce]:{"is-disabled":o(),"is-invalid":c()}}),[()=>g.rootProps()],void 0,void 0,`svelte-1whfl86`);var l=B(r);se(l,19,()=>t.items,e=>e.value,(e,t,n)=>{var r=Gr();ne(r,(e,t)=>({class:`sv-bg__btn`,...e,[ce]:t}),[()=>g.buttonProps(p(n)),()=>({"is-selected":g.isSelected(p(t).value)})],void 0,void 0,`svelte-1whfl86`);var i=B(r,!0);H(r),w(()=>v(i,p(t).label??p(t).value)),d(e,r)});var u=k(l,2),f=e=>{var n=m(),r=I(n);se(r,16,()=>g.selectedValues,e=>e,(e,n)=>{var r=Kr();N(r),w(()=>{R(r,`name`,t.name),F(r,n)}),d(e,r)}),d(e,n)};h(u,e=>{t.name&&e(f)}),H(r),d(e,r)},$$slots:{default:!0}}),he()}var Yr=(e,t,n)=>Math.min(Math.max(e,t),n);function Xr(e){let{pageCount:t}=e;if(t<=0)return[];let n=Math.max(0,e.siblingCount??1),r=Math.max(1,e.boundaryCount??1),i=Yr(e.page,1,t);if(t<=r*2+n*2+3)return Array.from({length:t},(e,t)=>t+1);let a=new Set;for(let e=1;e<=r&&e<=t;e++)a.add(e),a.add(t-e+1);for(let e=i-n;e<=i+n;e++)e>=1&&e<=t&&a.add(e);let o=[...a].sort((e,t)=>e-t),s=[],c=0;for(let e of o)e-c===2?s.push(c+1):e-c>2&&s.push(e<=i?`ellipsis-left`:`ellipsis-right`),s.push(e),c=e;return s}function Zr(e){let t=()=>e.page(),n=()=>e.pageCount(),r=()=>e.disabled?.()??!1;function i(i){if(r())return;let a=Math.min(Math.max(i,1),n());a!==t()&&e.onChange?.(a)}let a=()=>i(1),o=()=>i(t()-1),s=()=>i(t()+1),c=()=>i(n()),l=()=>!r()&&t()>1,u=()=>!r()&&t()<n();return{get items(){return Xr({page:t(),pageCount:n(),siblingCount:e.siblingCount?.()??1,boundaryCount:e.boundaryCount?.()??1})},go:i,first:a,prev:o,next:s,last:c,canPrev:l,canNext:u,isActive:e=>e===t(),navProps:(e=`Pagination`)=>({"aria-label":e}),pageButtonProps:e=>({"aria-current":e===t()?`page`:void 0,"aria-label":`Page ${e}`,disabled:r(),onclick:()=>i(e)}),firstProps:()=>({"aria-label":`First page`,disabled:!l(),onclick:a}),prevProps:()=>({"aria-label":`Previous page`,disabled:!l(),onclick:o}),nextProps:()=>({"aria-label":`Next page`,disabled:!u(),onclick:s}),lastProps:()=>({"aria-label":`Last page`,disabled:!u(),onclick:c})}}function Qr(e){let t=()=>e.count(),n=()=>e.current(),r=()=>e.loop?.()??!0,i=()=>e.dir?.()===`rtl`,a=j(!1),o=j(!1);function s(n){let i=t();if(i===0)return;let a=r()?(n%i+i)%i:Math.max(0,Math.min(n,i-1));e.onChange?.(a)}let c=()=>s(n()+1),l=()=>s(n()-1),u=()=>r()||n()>0,d=()=>r()||n()<t()-1;return T(()=>{let n=e.autoplay?.()??0;if(!n||p(a)||p(o)||t()<2)return;let r=setInterval(()=>c(),n);return()=>clearInterval(r)}),{get paused(){return p(a)},get userPaused(){return p(o)},rtl:i,isActive:e=>e===n(),go:s,next:c,prev:l,canGoPrev:u,canGoNext:d,rootProps:(e=`Carousel`)=>({role:`group`,"aria-roledescription":`carousel`,"aria-label":e,onpointerenter:()=>{V(a,!0)},onpointerleave:()=>{V(a,!1)},onfocusin:()=>{V(a,!0)},onfocusout:()=>{V(a,!1)}}),slideProps:e=>({role:`group`,"aria-roledescription":`slide`,"aria-label":`${e+1} of ${t()}`,"aria-hidden":e!==n(),inert:e!==n()}),prevArrowProps:()=>({"aria-label":i()?`Next slide`:`Previous slide`,onclick:i()?c:l,disabled:i()?!d():!u()}),nextArrowProps:()=>({"aria-label":i()?`Previous slide`:`Next slide`,onclick:i()?l:c,disabled:i()?!u():!d()}),dotProps:e=>({"aria-label":`Go to slide ${e+1}`,"aria-current":e===n()?`true`:void 0,onclick:()=>s(e)}),playPauseProps:()=>({"aria-label":p(o)?`Play autoplay`:`Pause autoplay`,"aria-pressed":p(o),onclick:()=>{V(o,!p(o))}})}}var $r=y(`<span class="sv-seg__icon svelte-1kc6frb"><!></span>`),ei=y(`<button><!> <span class="sv-seg__label"> </span></button>`),ti=y(`<input type="hidden"/>`),ni=y(`<div><!> <!></div>`);function ri(e,t){ue(t,!0);let n=z(t,`value`,15,null),r=z(t,`disabled`,3,!1),i=z(t,`size`,3,`md`),a=z(t,`required`,3,!1),s=z(t,`invalid`,3,!1),c=z(t,`block`,3,!1),l=xr(`sv-seg`),u=M(()=>t.id??l),f=Qe({options:()=>t.options,value:()=>n(),onChange:e=>{n(e),t.onChange?.(e)},disabled:()=>r(),ariaLabel:()=>t.ariaLabel??t.label,id:()=>p(u),invalid:()=>s(),required:()=>a(),error:()=>t.error});wr(e,{get id(){return p(u)},get label(){return t.label},get hint(){return t.hint},get error(){return t.error},get required(){return a()},get dir(){return t.dir},children:(e,a)=>{var l=ni();ne(l,e=>({class:`sv-seg sv-seg--${i()??``}`,...e,[ce]:{"is-block":c(),"is-disabled":r(),"is-invalid":s()}}),[()=>f.groupProps()],void 0,void 0,`svelte-1kc6frb`);var u=B(l);se(u,17,()=>t.options,e=>e.value,(e,t)=>{var n=ei();ne(n,(e,t)=>({class:`sv-seg__opt`,...e,[ce]:t}),[()=>f.radioProps(p(t)),()=>({"is-selected":f.isChecked(p(t))})],void 0,void 0,`svelte-1kc6frb`);var r=B(n),i=e=>{var n=$r(),r=B(n);o(r,()=>p(t).icon),H(n),d(e,n)};h(r,e=>{p(t).icon&&e(i)});var a=k(r,2),s=B(a,!0);H(a),H(n),w(()=>v(s,p(t).label)),d(e,n)});var m=k(u,2),g=e=>{var r=ti();N(r),w(()=>{R(r,`name`,t.name),F(r,n()??``)}),d(e,r)};h(m,e=>{t.name&&e(g)}),H(l),d(e,l)},$$slots:{default:!0}}),he()}var ii=y(`<span class="sv-spinner svelte-1y7q3lg"></span>`);function ai(e,t){let n=z(t,`size`,3,`md`),r=M(()=>typeof n()==`number`?n():n()===`sm`?15:n()===`lg`?28:20);var i=ii();let a;w(()=>{R(i,`role`,t.label?`status`:void 0),R(i,`aria-label`,t.label),R(i,`aria-hidden`,t.label?void 0:`true`),a=A(i,``,a,{width:`${p(r)}px`,height:`${p(r)}px`,color:t.color})}),d(e,i)}var oi=y(`<span class="sv-loading__label svelte-1dk9rlz"> </span>`),si=y(`<!> <!>`,1),ci=y(`<div role="status" aria-live="polite"><!></div>`);function li(e,t){let n=z(t,`visible`,3,!1),r=z(t,`spinnerSize`,3,`lg`),i=z(t,`blur`,3,!1);var a=m(),s=I(a),c=e=>{var n=ci();let a;var s=B(n),c=e=>{var n=m(),r=I(n);o(r,()=>t.children),d(e,n)},l=e=>{var n=si(),i=I(n);ai(i,{get size(){return r()}});var a=k(i,2),o=e=>{var n=oi(),r=B(n,!0);H(n),w(()=>v(r,t.label)),d(e,n)};h(a,e=>{t.label&&e(o)}),d(e,n)};h(s,e=>{t.children?e(c):e(l,-1)}),H(n),w(()=>{a=Ce(n,1,`sv-loading svelte-1dk9rlz`,null,a,{"is-blur":i()}),R(n,`aria-label`,t.label??`Loading`)}),d(e,n)};h(s,e=>{n()&&e(c)}),d(e,a)}var ui=De(`<svg viewBox="0 0 24 24" width="30" height="30" fill="none" stroke="currentColor" stroke-width="2.2" stroke-linecap="round" stroke-linejoin="round"><path d="M20 6 9 17l-5-5"></path></svg>`),di=De(`<svg viewBox="0 0 24 24" width="30" height="30" fill="none" stroke="currentColor" stroke-width="2.2" stroke-linecap="round"><path d="M18 6 6 18M6 6l12 12"></path></svg>`),fi=De(`<svg viewBox="0 0 24 24" width="30" height="30" fill="none" stroke="currentColor" stroke-width="2.2" stroke-linecap="round" stroke-linejoin="round"><path d="M12 9v4M12 17h.01M10.3 3.9 1.8 18a2 2 0 0 0 1.7 3h17a2 2 0 0 0 1.7-3L13.7 3.9a2 2 0 0 0-3.4 0Z"></path></svg>`),pi=y(`<span class="sv-result__code svelte-1fz3ai2">404</span>`),mi=De(`<svg viewBox="0 0 24 24" width="30" height="30" fill="none" stroke="currentColor" stroke-width="2.2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="9"></circle><path d="M12 8h.01M11 12h1v4h1"></path></svg>`),hi=y(`<p class="sv-result__desc svelte-1fz3ai2"> </p>`),gi=y(`<div class="sv-result__body svelte-1fz3ai2"><!></div>`),_i=y(`<div class="sv-result__actions svelte-1fz3ai2"><!></div>`),vi=y(`<div role="status"><div class="sv-result__icon svelte-1fz3ai2" aria-hidden="true"><!></div> <h2 class="sv-result__title svelte-1fz3ai2"> </h2> <!> <!> <!></div>`);function yi(e,t){let n=z(t,`status`,3,`info`);var r=vi(),i=B(r),a=B(i),s=e=>{var n=m(),r=I(n);o(r,()=>t.icon),d(e,n)},c=e=>{var t=ui();d(e,t)},l=e=>{var t=di();d(e,t)},u=e=>{var t=fi();d(e,t)},f=e=>{var t=pi();d(e,t)},p=e=>{var t=mi();d(e,t)};h(a,e=>{t.icon?e(s):n()===`success`?e(c,1):n()===`error`?e(l,2):n()===`warning`?e(u,3):n()===`notfound`?e(f,4):e(p,-1)}),H(i);var g=k(i,2),_=B(g,!0);H(g);var y=k(g,2),b=e=>{var n=hi(),r=B(n,!0);H(n),w(()=>v(r,t.description)),d(e,n)};h(y,e=>{t.description&&e(b)});var x=k(y,2),S=e=>{var n=gi(),r=B(n);o(r,()=>t.children),H(n),d(e,n)};h(x,e=>{t.children&&e(S)});var C=k(x,2),T=e=>{var n=_i(),r=B(n);o(r,()=>t.actions),H(n),d(e,n)};h(C,e=>{t.actions&&e(T)}),H(r),w(()=>{Ce(r,1,`sv-result sv-result--${n()??``}`,`svelte-1fz3ai2`),v(_,t.title)}),d(e,r)}var bi=y(`<div><button class="sv-collapse__trigger svelte-15w9gn7" type="button"><span class="sv-collapse__label svelte-15w9gn7"><!></span> <svg class="sv-collapse__chev svelte-15w9gn7" viewBox="0 0 24 24" width="16" height="16" fill="none" stroke="currentColor" stroke-width="2.4" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button> <div class="sv-collapse__region svelte-15w9gn7" role="region"><div class="sv-collapse__content svelte-15w9gn7"><!></div></div></div>`);function xi(e,t){ue(t,!0);let n=z(t,`open`,15,!1),r=z(t,`disabled`,3,!1),i=xr(`sv-collapse`);function a(){r()||(n(!n()),t.onOpenChange?.(n()))}var s=bi();let c;var l=B(s),u=B(l),f=B(u),p=e=>{var n=m(),r=I(n);o(r,()=>t.header),d(e,n)},g=e=>{var n=S();w(()=>v(n,t.title)),d(e,n)};h(f,e=>{t.header?e(p):e(g,-1)}),H(u),D(2),H(l);var _=k(l,2),y=B(_),b=B(y);o(b,()=>t.children??ee),H(y),H(_),H(s),w(()=>{c=Ce(s,1,`sv-collapse svelte-15w9gn7`,null,c,{"is-open":n(),"is-disabled":r()}),l.disabled=r(),R(l,`aria-expanded`,n()),R(l,`aria-controls`,`${i}-panel`),R(l,`id`,`${i}-trigger`),R(_,`id`,`${i}-panel`),R(_,`aria-labelledby`,`${i}-trigger`),_.inert=!n()}),x(`click`,l,a),d(e,s),he()}u([`click`]);function Si(e,t){let n=z(t,`size`,3,`md`),r=z(t,`weight`,3,`normal`),i=z(t,`tone`,3,`default`),a=z(t,`truncate`,3,!1),s=z(t,`inline`,3,!1),c={xs:`11px`,sm:`13px`,md:`14px`,lg:`16px`,xl:`20px`},l={normal:400,medium:500,semibold:600,bold:700},u={default:`var(--sg-fg, #0f172a)`,muted:`var(--sg-muted, #64748b)`,accent:`var(--sg-accent, #2563eb)`,success:`var(--sg-success, #16a34a)`,warning:`var(--sg-warning, #d97706)`,error:`var(--sg-danger, #dc2626)`},f={start:`left`,center:`center`,end:`right`},h=M(()=>t.as??(s()?`span`:`p`));var g=m(),_=I(g);Se(_,()=>p(h),!1,(e,s)=>{ne(e,()=>({class:`sv-text`,style:``,[ce]:{"is-truncate":a()&&!t.clamp,"is-clamp":t.clamp!=null},[ye]:{"font-size":c[n()],"font-weight":l[r()],color:u[i()],"text-align":t.align?f[t.align]:void 0,"--sv-text-clamp":t.clamp}}),void 0,void 0,void 0,`svelte-1ncm0uw`);var p=m(),h=I(p);o(h,()=>t.children??ee),d(s,p)}),d(e,g)}function Ci(e,t){let n=z(t,`order`,3,2),r=z(t,`truncate`,3,!1),i={1:`30px`,2:`24px`,3:`20px`,4:`17px`,5:`15px`,6:`13px`},a={1:700,2:700,3:600,4:600,5:600,6:600},s={start:`left`,center:`center`,end:`right`},c=M(()=>t.size??n()),l=M(()=>`h${n()}`);var u=m(),f=I(u);Se(f,()=>p(l),!1,(e,n)=>{ne(e,()=>({class:`sv-title`,style:``,[ce]:{"is-truncate":r()},[ye]:{"font-size":i[p(c)],"font-weight":a[p(c)],"text-align":t.align?s[t.align]:void 0}}),void 0,void 0,void 0,`svelte-1bznalt`);var l=m(),u=I(l);o(u,()=>t.children??ee),d(n,l)}),d(e,u)}var wi=y(`<span class="sv-anchor__ext svelte-g26ywi" aria-hidden="true">↗</span><span class="sv-anchor__sr svelte-g26ywi">(opens in a new tab)</span>`,1),Ti=y(`<a><!><!></a>`);function Ei(e,t){let n=z(t,`external`,3,!1),r=z(t,`underline`,3,`hover`),i=z(t,`tone`,3,`accent`),a=z(t,`size`,3,`md`),s={sm:`13px`,md:`14px`,lg:`16px`},c={accent:`var(--sg-accent, #2563eb)`,default:`var(--sg-fg, #0f172a)`,muted:`var(--sg-muted, #64748b)`};var l=Ti();let u;var f=B(l);o(f,()=>t.children??ee);var p=k(f),m=e=>{var t=wi();D(),d(e,t)};h(p,e=>{n()&&e(m)}),H(l),w(()=>{R(l,`href`,t.href),Ce(l,1,`sv-anchor sv-anchor--u-${r()??``}`,`svelte-g26ywi`),R(l,`target`,n()?`_blank`:void 0),R(l,`rel`,n()?`noopener noreferrer`:void 0),u=A(l,``,u,{"font-size":s[a()],color:c[i()]})}),x(`click`,l,function(...e){t.onclick?.apply(this,e)}),d(e,l)}u([`click`]);var Di=y(`<footer class="sv-blockquote__cite svelte-1iwaj9k"> </footer>`),Oi=y(`<blockquote class="sv-blockquote svelte-1iwaj9k"><div class="sv-blockquote__body svelte-1iwaj9k"><!></div> <!></blockquote>`);function ki(e,t){let n=z(t,`tone`,3,`accent`),r={accent:`var(--sg-accent, #2563eb)`,muted:`var(--sg-muted, #64748b)`,success:`var(--sg-success, #16a34a)`,warning:`var(--sg-warning, #d97706)`,error:`var(--sg-danger, #dc2626)`};var i=Oi();let a;var s=B(i),c=B(s);o(c,()=>t.children??ee),H(s);var l=k(s,2),u=e=>{var n=Di(),r=B(n);H(n),w(()=>v(r,`- ${t.cite??``}`)),d(e,n)};h(l,e=>{t.cite&&e(u)}),H(i),w(()=>a=A(i,``,a,{"--sv-bq-rule":r[n()]})),d(e,i)}var Ai=y(`<mark class="sv-mark svelte-1wc4y72"><!></mark>`);function ji(e,t){let n=z(t,`tone`,3,`yellow`),r={yellow:`#fef08a`,accent:`color-mix(in srgb, var(--sg-accent, #2563eb) 22%, transparent)`,success:`color-mix(in srgb, var(--sg-success, #16a34a) 22%, transparent)`,warning:`color-mix(in srgb, var(--sg-warning, #d97706) 24%, transparent)`,error:`color-mix(in srgb, var(--sg-danger, #dc2626) 20%, transparent)`};var i=Ai();let a;var s=B(i);o(s,()=>t.children??ee),H(i),w(()=>a=A(i,``,a,{background:r[n()]})),d(e,i)}var Mi=y(`<li> </li>`);function Ni(e,t){let n=z(t,`type`,3,`unordered`),r=z(t,`spacing`,3,`md`),a=z(t,`size`,3,`md`),s={sm:`2px`,md:`6px`,lg:`10px`},c={sm:`13px`,md:`14px`,lg:`16px`},l=M(()=>n()===`ordered`?`ol`:`ul`);var u=m(),f=I(u);Se(f,()=>p(l),!1,(e,l)=>{ne(e,()=>({class:`sv-list sv-list--${n()??``}`,style:``,[ye]:{"--sv-list-gap":s[r()],"font-size":c[a()]}}),void 0,void 0,void 0,`svelte-1pddvq7`);var u=m(),f=I(u),g=e=>{var n=m(),r=I(n);o(r,()=>t.children),d(e,n)},_=e=>{var n=m(),r=I(n);se(r,17,()=>t.items,i,(e,t)=>{var n=Mi(),r=B(n,!0);H(n),w(()=>v(r,p(t))),d(e,n)}),d(e,n)};h(f,e=>{t.children?e(g):t.items&&e(_,1)}),d(l,u)}),d(e,u)}var Pi=y(`<span class="sv-kbd__sep svelte-il8pr6" aria-hidden="true"> </span>`),Fi=y(`<!> <kbd class="sv-kbd svelte-il8pr6"> </kbd>`,1),Ii=y(`<span></span>`),Li=y(`<kbd><!></kbd>`);function Ri(e,t){let n=z(t,`separator`,3,`+`),r=z(t,`size`,3,`md`);var a=m(),s=I(a),c=e=>{var a=Ii();se(a,21,()=>t.keys,i,(e,t,r)=>{var i=Fi(),a=I(i),o=e=>{var t=Pi(),r=B(t,!0);H(t),w(()=>v(r,n())),d(e,t)};h(a,e=>{r>0&&e(o)});var s=k(a,2),c=B(s,!0);H(s),w(()=>v(c,p(t))),d(e,i)}),H(a),w(()=>Ce(a,1,`sv-kbd-group sv-kbd--${r()??``}`,`svelte-il8pr6`)),d(e,a)},l=e=>{var n=Li(),i=B(n);o(i,()=>t.children??ee),H(n),w(()=>Ce(n,1,`sv-kbd sv-kbd--${r()??``}`,`svelte-il8pr6`)),d(e,n)};h(s,e=>{t.keys?e(c):e(l,-1)}),d(e,a)}var zi=y(`<pre class="sv-code sv-code--block svelte-6sl55m"><code class="svelte-6sl55m"><!></code></pre>`),Bi=y(`<code class="sv-code sv-code--inline svelte-6sl55m"><!></code>`);function Vi(e,t){let n=z(t,`block`,3,!1);var r=m(),i=I(r),a=e=>{var n=zi(),r=B(n),i=B(r),a=e=>{var n=S();w(()=>v(n,t.code)),d(e,n)},s=e=>{var n=m(),r=I(n);o(r,()=>t.children??ee),d(e,n)};h(i,e=>{t.code==null?e(s,-1):e(a)}),H(r),H(n),d(e,n)},s=e=>{var n=Bi(),r=B(n),i=e=>{var n=S();w(()=>v(n,t.code)),d(e,n)},a=e=>{var n=m(),r=I(n);o(r,()=>t.children??ee),d(e,n)};h(r,e=>{t.code==null?e(a,-1):e(i)}),H(n),d(e,n)};h(i,e=>{n()?e(a):e(s,-1)}),d(e,r)}function Hi(e,t,n){return(n?e.replace(/\D/g,``):e.replace(/\s/g,``)).slice(0,Math.max(0,t))}function Ui(e,t){let n=[];for(let r=0;r<t;r++)n[r]=e[r]??``;return n}function Wi(e,t){return e.length===t}var Gi=y(`<input class="sv-otp__cell svelte-goc1ko" maxlength="1"/>`),Ki=y(`<input type="hidden"/>`),qi=y(`<div><!> <!></div>`);function Ji(e,t){ue(t,!0);let n=z(t,`value`,15,``),r=z(t,`length`,3,6),o=z(t,`numeric`,3,!0),s=z(t,`mask`,3,!1),c=z(t,`disabled`,3,!1),l=z(t,`required`,3,!1),u=z(t,`size`,3,`md`),f=z(t,`invalid`,3,!1),m=z(t,`autofocus`,3,!1),g=xr(`sv-otp`),_=M(()=>t.id??g),v=M(()=>Ui(Hi(n(),r(),o()),r())),y=me([]);function b(e){let i=Hi(e,r(),o());n(i),t.onChange?.(i),Wi(i,r())&&t.onComplete?.(i)}function S(e){let t=y[Math.max(0,Math.min(r()-1,e))];t?.focus(),t?.select()}function T(){return Ui(Hi(n(),r(),o()),r())}function E(e,t){let n=Hi(t.currentTarget.value,1,o()).slice(-1),r=T();r[e]=n,b(r.join(``)),n&&S(e+1)}function D(e,n){let r=t.dir===`rtl`;if(n.key===`Backspace`){n.preventDefault();let t=T();t[e]?(t[e]=``,b(t.join(``))):e>0&&(t[e-1]=``,b(t.join(``)),S(e-1))}else n.key===`ArrowLeft`?(n.preventDefault(),S(r?e+1:e-1)):n.key===`ArrowRight`&&(n.preventDefault(),S(r?e-1:e+1))}function O(e,t){t.preventDefault();let n=t.clipboardData?.getData(`text`)??``,i=T(),a=Hi(n,r()-e,o());for(let t=0;t<a.length;t++)i[e+t]=a[t];b(i.join(``)),S(Math.min(e+a.length,r()-1))}function A(e,t){m()&&t===0&&e.focus()}wr(e,{get id(){return p(_)},get label(){return t.label},get hint(){return t.hint},get error(){return t.error},get required(){return l()},get dir(){return t.dir},children:(e,m)=>{var g=qi();ne(g,e=>({class:`sv-otp sv-otp--${u()??``}`,role:`group`,...e,[ce]:{"is-disabled":c(),"is-invalid":f()}}),[()=>Sr({id:p(_),invalid:f(),required:l(),error:t.error,hint:t.hint,ariaLabel:t.label??`One-time code`})],void 0,void 0,`svelte-goc1ko`);var b=B(g);se(b,17,()=>p(v),i,(e,t,n)=>{var i=Gi();N(i),R(i,`autocomplete`,n===0?`one-time-code`:`off`),pe(i,(e,t)=>y[t]=e,e=>y?.[e],()=>[n]),a(i,(e,t)=>A?.(e,t),()=>n),w(()=>{R(i,`type`,s()?`password`:`text`),R(i,`inputmode`,o()?`numeric`:`text`),F(i,p(t)),i.disabled=c(),R(i,`aria-label`,`Character ${n+1} of ${r()}`)}),x(`input`,i,e=>E(n,e)),x(`keydown`,i,e=>D(n,e)),C(`paste`,i,e=>O(n,e)),C(`focus`,i,e=>e.currentTarget.select()),d(e,i)});var S=k(b,2),T=e=>{var r=Ki();N(r),w(()=>{R(r,`name`,t.name),F(r,n())}),d(e,r)};h(S,e=>{t.name&&e(T)}),H(g),d(e,g)},$$slots:{default:!0}}),he()}u([`input`,`keydown`]);function Yi(e){let t=e.trim().toLowerCase();if(!t)return null;let n=t.match(/^(\d+):(\d{1,2})$/);if(n){let e=parseInt(n[2],10);return e>59?null:parseInt(n[1],10)*60+e}let r=t.match(/\d+(?:\.\d+)?\s*[hm]/g);if(r&&r.join(``).replace(/\s/g,``).length===t.replace(/\s/g,``).length){let e=0;for(let t of r){let n=t.match(/(\d+(?:\.\d+)?)\s*([hm])/),r=parseFloat(n[1]);e+=n[2]===`h`?r*60:r}return Math.round(e)}let i=Number(t);return Number.isFinite(i)?Math.round(i):null}function Xi(e,t=`colon`){if(!Number.isFinite(e)||e<0)return``;let n=Math.floor(e/60),r=Math.round(e%60);return t===`units`?n&&r?`${n}h ${r}m`:n?`${n}h`:`${r}m`:`${n}:${String(r).padStart(2,`0`)}`}var Zi=y(`<input type="hidden"/>`),Qi=y(`<input/> <!>`,1);function $i(e,t){ue(t,!0);let n=z(t,`value`,15,null),r=z(t,`style`,3,`colon`),i=z(t,`placeholder`,3,`e.g. 1h 30m`),o=z(t,`disabled`,3,!1),s=z(t,`readonly`,3,!1),c=z(t,`size`,3,`md`),l=z(t,`invalid`,3,!1),u=z(t,`required`,3,!1),f=z(t,`loading`,3,!1),m=z(t,`autofocus`,3,!1),g=z(t,`clearable`,3,!1),_=z(t,`block`,3,!1),v=z(t,`width`,3,160),y=xr(`sv-dur`),b=M(()=>t.id??y),x=j(``),S=j(!1);T(()=>{p(S)||V(x,n()==null?``:Xi(n(),r()),!0)});function C(){let e=Yi(p(x));return n(e),t.onChange?.(e),e!=null&&V(x,Xi(e,r()),!0),e}function E(e){m()&&(e.focus(),e.select())}{let r=M(()=>n()!=null);wr(e,{frame:!0,get id(){return p(b)},get label(){return t.label},get hint(){return t.hint},get error(){return t.error},get required(){return u()},get dir(){return t.dir},get size(){return c()},get invalid(){return l()},get disabled(){return o()},get readonly(){return s()},get loading(){return f()},get block(){return _()},get width(){return v()},get leading(){return t.leading},get trailing(){return t.trailing},get clearable(){return g()},get showClear(){return p(r)},onclear:()=>{n(null),V(x,``),t.onChange?.(null)},children:(e,r)=>{var c=Qi(),f=I(c),m=e=>V(x,e.currentTarget.value,!0),g=()=>V(S,!0),_=()=>{V(S,!1),C()},v=e=>{e.key===`Enter`?t.onCommit?.(C()):e.key===`Escape`&&t.onCancel?.()};ne(f,e=>({class:`sv-dur__input`,type:`text`,inputmode:`numeric`,value:p(x),placeholder:i(),disabled:o(),readonly:s(),oninput:m,onfocus:g,onblur:_,onkeydown:v,...e}),[()=>Sr({id:p(b),invalid:l(),required:u(),error:t.error,hint:t.hint,ariaLabel:t.ariaLabel})],void 0,void 0,void 0,!0),a(f,e=>E?.(e));var y=k(f,2),T=e=>{var r=Zi();N(r),w(()=>{R(r,`name`,t.name),F(r,n()??``)}),d(e,r)};h(y,e=>{t.name&&e(T)}),d(e,c)},$$slots:{default:!0}})}he()}var ea=0;function ta(e){let t=`${`sv-ac-${ea++}`}-list`,n=e=>`${t}-opt-${e}`,r=()=>e.minChars?.()??1,i=()=>({id:e.id?.(),invalid:e.invalid?.(),required:e.required?.(),error:e.error?.(),hint:e.hint?.(),ariaLabel:e.ariaLabel?.()}),a=j(!1),o=j(0),s=M(()=>e.suggestions().map(e=>typeof e==`string`?{value:e,label:e}:e)),c=M(()=>e.value().length>=r()?vr(p(s),e.value()).slice(0,10):[]);function l(){V(a,p(c).length>0),p(a)&&V(o,0)}function u(t){t&&(e.onChange?.(String(t.value)),V(a,!1),e.focusInput?.())}function d(){V(a,!1)}function f(t){e.onChange?.(t.currentTarget.value),queueMicrotask(l)}function m(e){if(!p(a)){e.key===`ArrowDown`&&queueMicrotask(l);return}e.key===`ArrowDown`?(e.preventDefault(),V(o,Math.min(p(o)+1,p(c).length-1),!0)):e.key===`ArrowUp`?(e.preventDefault(),V(o,Math.max(p(o)-1,0),!0)):e.key===`Enter`?(e.preventDefault(),u(p(c)[p(o)])):e.key===`Escape`&&d()}return{get open(){return p(a)},get activeIndex(){return p(o)},get filtered(){return p(c)},get value(){return e.value()},listId:t,isActive:e=>e===p(o),setActive:e=>{V(o,e,!0)},maybeOpen:l,close:d,pick:u,onInput:f,onKeydown:m,inputProps:()=>({id:e.id?.(),role:`combobox`,"aria-expanded":p(a),"aria-controls":t,"aria-autocomplete":`list`,"aria-activedescendant":p(a)&&p(c)[p(o)]?n(p(o)):void 0,...Sr(i()),value:e.value(),disabled:e.disabled?.()??!1,oninput:f,onfocus:l,onkeydown:m}),listboxProps:()=>({id:t,role:`listbox`}),optionProps:e=>({id:n(e),role:`option`,tabindex:-1,"aria-selected":e===p(o),"data-idx":e,onclick:()=>u(p(c)[e]),onpointermove:()=>{V(o,e,!0)}})}}function na(e){let t=()=>e.pressed(),n=()=>e.disabled?.()??!1;function r(){n()||e.onChange?.(!t())}let i=()=>({id:e.id?.(),invalid:e.invalid?.(),required:e.required?.(),error:e.error?.(),hint:e.hint?.(),ariaLabel:e.ariaLabel?.()});return{get pressed(){return t()},get disabled(){return n()},toggle:r,buttonProps:()=>({type:`button`,id:e.id?.(),"aria-pressed":t(),disabled:n(),"data-pressed":t()?``:void 0,...Sr(i()),onclick:r})}}function ra(e){let t=[],n=e=>{for(let r of e.children??[])t.push(r.id),n(r)};return n(e),t}function ia(e,t){if(!e.children?.length)return t.has(e.id)?`checked`:`unchecked`;let n=ra(e),r=n.filter(e=>t.has(e)).length;return r===0&&!t.has(e.id)?`unchecked`:r===n.length?`checked`:`indeterminate`}function aa(e,t){for(let n of e){if(n.id===t)return n;if(n.children){let e=aa(n.children,t);if(e)return e}}return null}function oa(e,t){return[...e].sort(t).map(e=>e.children?{...e,children:oa(e.children,t)}:e)}function sa(e){let t=()=>e.nodes(),n=()=>e.checkable?.()??!1,r=()=>e.selected?.()??null,i=j(me(new Set)),a=!1;T(()=>{if(!a){a=!0;let t=e.expandedIds?.();t&&V(i,new Set(t),!0)}});let o=M(()=>{let n=e.filter?.()?.trim().toLowerCase();if(!n)return null;let r=new Set,i=new Set,a=e=>{let t=!1;for(let n of e.children??[])t=a(n)||t;let o=e.label.toLowerCase().includes(n);return(o||t)&&(r.add(e.id),t&&i.add(e.id)),o||t};for(let e of t())a(e);return{visible:r,forceOpen:i}}),s=M(()=>{let e=[],n=p(o),r=(t,a,o)=>{for(let s of t){if(n&&!n.visible.has(s.id))continue;let t=!!s.children?.length||!!s.lazy,c=n&&n.forceOpen.has(s.id)||p(i).has(s.id);e.push({node:s,depth:a,hasChildren:t,open:c,parentId:o,index:e.length}),c&&s.children?.length&&r(s.children,a+1,s.id)}};return r(t(),0,null),e}),c=j(0);T(()=>{p(c)>=p(s).length&&V(c,Math.max(0,p(s).length-1),!0)});let l=M(()=>new Set(e.checked?.()??[])),u=j(0);function d(e,t=!1){V(c,e,!0),t&&L(u)}let f=e=>ia(e,p(l)),m=e=>p(i).has(e),h=e=>e===r();function g(t){if(!t.children?.length&&!t.lazy)return;let n=new Set(p(i)),r=!n.has(t.id);r?n.add(t.id):n.delete(t.id),V(i,n,!0),e.onToggle?.(t.id,r)}let _=e=>{let n=aa(t(),e);n&&g(n)};function v(t){t.disabled||e.onSelect?.(t.id)}let y=e=>{let n=aa(t(),e);n&&v(n)};function b(t){if(t.disabled)return;let n=new Set(p(l)),r=[t.id,...ra(t)],i=f(t)===`checked`;for(let e of r)i?n.delete(e):n.add(e);e.onCheck?.([...n])}function x(e,t){let n=e;for(;n+t>=0&&n+t<=p(s).length-1;)if(n+=t,!p(s)[n]?.node.disabled)return n;return e}function S(t){let r=p(s)[p(c)];if(!r)return;let i=()=>{r.hasChildren&&!r.open?g(r.node):r.hasChildren&&r.open&&d(Math.min(p(c)+1,p(s).length-1),!0)},a=()=>{if(r.hasChildren&&r.open)g(r.node);else if(r.parentId){let e=p(s).findIndex(e=>e.node.id===r.parentId);e>=0&&d(e,!0)}},o=e.dir?.()===`rtl`;switch(t.key){case`ArrowDown`:t.preventDefault(),d(x(p(c),1),!0);break;case`ArrowUp`:t.preventDefault(),d(x(p(c),-1),!0);break;case`ArrowRight`:t.preventDefault(),(o?a:i)();break;case`ArrowLeft`:t.preventDefault(),(o?i:a)();break;case`Enter`:t.preventDefault(),v(r.node);break;case` `:t.preventDefault(),n()?b(r.node):v(r.node);break;case`Home`:t.preventDefault(),d(0,!0);break;case`End`:t.preventDefault(),d(p(s).length-1,!0)}}return{get expanded(){return p(i)},get selected(){return r()},get rows(){return p(s)},get activeIndex(){return p(c)},get focusTick(){return p(u)},isExpanded:m,isSelected:h,checkStateOf:f,toggle:_,toggleExpand:g,select:y,toggleCheck:b,setActive:d,onKeydown:S,treeProps:()=>({role:`tree`,"aria-label":e.ariaLabel?.(),"aria-multiselectable":n()}),itemProps:e=>{let t=n()?f(e.node):`unchecked`,i=n()?t===`checked`?`true`:t===`indeterminate`?`mixed`:`false`:void 0;return{role:`treeitem`,"aria-level":e.depth+1,"aria-selected":e.node.id===r(),"aria-expanded":e.hasChildren?e.open:void 0,"aria-checked":i,"aria-disabled":e.node.disabled||void 0,"data-row":e.index,tabindex:e.index===p(c)?0:-1,onclick:()=>{d(e.index),v(e.node)},onkeydown:S}}}}function ca(e){let t=()=>e.min?.()??0,n=()=>e.max?.()??100,r=()=>e.sweep?.()??270,i=()=>e.size?.()??180,a=()=>e.thickness?.()??14,o=M(()=>Math.min(n(),Math.max(t(),e.value()))),s=M(()=>90+(360-r())/2),c=M(()=>i()/2),l=M(()=>i()/2),u=M(()=>i()/2-a()/2-2),d=e=>(e-t())/(n()-t()),f=e=>p(s)+d(e)*r();function m(e,t){let n=e*Math.PI/180;return{x:p(c)+t*Math.cos(n),y:p(l)+t*Math.sin(n)}}function h(e,t,n){let r=f(e),i=f(t),a=m(r,n),o=m(i,n),s=+(i-r>180);return`M ${a.x} ${a.y} A ${n} ${n} 0 ${s} 1 ${o.x} ${o.y}`}let g=M(()=>m(f(p(o)),p(u)-a()/2));return{get clamped(){return p(o)},get startAngle(){return p(s)},get cx(){return p(c)},get cy(){return p(l)},get r(){return p(u)},get needleEnd(){return p(g)},frac:d,angleOf:f,polar:m,arcPath:h,rootProps:()=>({role:`meter`,"aria-valuenow":p(o),"aria-valuemin":t(),"aria-valuemax":n(),"aria-label":e.ariaLabel?.()??`Gauge`})}}var la=y(`<button><!></button>`);function ua(e,t){ue(t,!0);let n=z(t,`pressed`,3,!1),r=z(t,`disabled`,3,!1),i=z(t,`readonly`,3,!1),a=z(t,`size`,3,`md`),s=z(t,`invalid`,3,!1),c=z(t,`required`,3,!1),l=xr(`sv-toggle`),u=M(()=>t.id??l),f=na({pressed:()=>n(),onChange:e=>{i()||t.onChange?.(e)},disabled:()=>r(),ariaLabel:()=>t.ariaLabel,id:()=>p(u),invalid:()=>s(),required:()=>c(),error:()=>t.error,hint:()=>t.hint});wr(e,{get id(){return p(u)},get label(){return t.label},get hint(){return t.hint},get error(){return t.error},get required(){return c()},get dir(){return t.dir},children:(e,r)=>{var c=la();ne(c,e=>({class:`sv-toggle sv-toggle--${a()??``}`,...e,[ce]:{"is-pressed":n(),"is-invalid":s(),"is-readonly":i()}}),[()=>f.buttonProps()],void 0,void 0,`svelte-4x30az`);var l=B(c),u=e=>{var n=m(),r=I(n);o(r,()=>t.children),d(e,n)};h(l,e=>{t.children&&e(u)}),H(c),d(e,c)},$$slots:{default:!0}}),he()}var da=y(`<input type="hidden"/>`),fa=y(`<input/> <!>`,1);function pa(e,t){ue(t,!0);let n=z(t,`value`,15,``),r=z(t,`disabled`,3,!1),i=z(t,`readonly`,3,!1),o=z(t,`type`,3,`text`),s=z(t,`clearable`,3,!1),c=z(t,`size`,3,`md`),l=z(t,`invalid`,3,!1),u=z(t,`required`,3,!1),f=z(t,`loading`,3,!1),m=z(t,`autofocus`,3,!1),g=z(t,`selectOnFocus`,3,!1),_=z(t,`labelMode`,3,`static`),v=z(t,`block`,3,!1),y=xr(`sv-text`),b=M(()=>t.id??y);function x(e){n(e),t.onChange?.(e)}function S(e){x(e.currentTarget.value)}function C(e){e.key===`Enter`?t.onCommit?.(n()):e.key===`Escape`&&t.onCancel?.()}function T(e){m()&&(e.focus(),e.select())}function E(e){g()&&e.currentTarget.select()}{let m=M(()=>!!n()),g=M(()=>!!n());wr(e,{frame:!0,get id(){return p(b)},get label(){return t.label},get hint(){return t.hint},get error(){return t.error},get required(){return u()},get dir(){return t.dir},get size(){return c()},get invalid(){return l()},get disabled(){return r()},get readonly(){return i()},get loading(){return f()},get block(){return v()},get leading(){return t.leading},get trailing(){return t.trailing},get prefix(){return t.prefix},get suffix(){return t.suffix},get labelMode(){return _()},get filled(){return p(m)},get actions(){return t.actions},get clearable(){return s()},get showClear(){return p(g)},onclear:()=>x(``),children:(e,s)=>{var c=fa(),f=I(c);ne(f,e=>({class:`sv-text__input`,type:o(),value:n(),placeholder:_()===`floating`?void 0:t.placeholder,disabled:r(),readonly:i(),maxlength:t.maxlength,autocomplete:t.autocomplete,oninput:S,onkeydown:C,onfocus:E,...e}),[()=>Sr({id:p(b),invalid:l(),required:u(),error:t.error,hint:t.hint,ariaLabel:t.ariaLabel})],void 0,void 0,void 0,!0),a(f,e=>T?.(e));var m=k(f,2),g=e=>{var r=da();N(r),w(()=>{R(r,`name`,t.name),F(r,n())}),d(e,r)};h(m,e=>{t.name&&e(g)}),d(e,c)},$$slots:{default:!0}})}he()}var ma=y(`<span class="sv-ta__count svelte-lgs3oh" aria-hidden="true"> </span>`),ha=y(`<input type="hidden"/>`),ga=y(`<div><textarea></textarea> <!> <!></div>`);function _a(e,t){ue(t,!0);let n=z(t,`value`,15,``),r=z(t,`disabled`,3,!1),i=z(t,`readonly`,3,!1),o=z(t,`rows`,3,3),s=z(t,`autoGrow`,3,!1),c=z(t,`showCount`,3,!1),l=z(t,`size`,3,`md`),u=z(t,`invalid`,3,!1),f=z(t,`required`,3,!1),m=z(t,`autofocus`,3,!1),g=xr(`sv-textarea`),_=M(()=>t.id??g);function y(e){if(!s())return;let t=()=>{e.style.height=`auto`,e.style.height=`${e.scrollHeight}px`};return t(),e.addEventListener(`input`,t),{destroy:()=>e.removeEventListener(`input`,t)}}function b(e){m()&&(e.focus(),e.select())}function x(e){let r=e.currentTarget.value;n(r),t.onChange?.(r)}function S(e){e.key===`Escape`?t.onCancel?.():e.key===`Enter`&&(e.ctrlKey||e.metaKey)&&(e.preventDefault(),t.onCommit?.(n()))}wr(e,{get id(){return p(_)},get label(){return t.label},get hint(){return t.hint},get error(){return t.error},get required(){return f()},get dir(){return t.dir},children:(e,s)=>{var m=ga();let g;var C=B(m);re(C),ne(C,e=>({class:`sv-ta__input`,value:n(),placeholder:t.placeholder,disabled:r(),readonly:i(),rows:o(),maxlength:t.maxlength,oninput:x,onkeydown:S,...e,[ce]:{"is-invalid":u()}}),[()=>Sr({id:p(_),invalid:u(),required:f(),error:t.error,hint:t.hint,ariaLabel:t.ariaLabel})],void 0,void 0,`svelte-lgs3oh`),a(C,e=>y?.(e)),a(C,e=>b?.(e));var T=k(C,2),E=e=>{var r=ma(),i=B(r);H(r),w(()=>v(i,`${n().length??``} / ${t.maxlength??``}`)),d(e,r)};h(T,e=>{c()&&t.maxlength&&e(E)});var D=k(T,2),O=e=>{var r=ha();N(r),w(()=>{R(r,`name`,t.name),F(r,n())}),d(e,r)};h(D,e=>{t.name&&e(O)}),H(m),w(()=>g=Ce(m,1,`sv-ta sv-ta--${l()??``}`,`svelte-lgs3oh`,g,{"is-disabled":r()})),d(e,m)},$$slots:{default:!0}}),he()}var va=y(`<input/>`),ya=y(`<div> </div>`),ba=y(`<div class="sv-ddl__grip" title="Drag to resize" aria-hidden="true"><span class="sv-ddl__grip-dots"></span></div>`),xa=y(`<div><!> <!></div>`),Sa=y(`<input type="hidden"/>`),Ca=y(`<!> <!> <!>`,1);function wa(e,t){ue(t,!0);let n=z(t,`value`,15,``),r=z(t,`suggestions`,19,()=>[]),o=z(t,`minChars`,3,1),s=z(t,`resizable`,3,!1),c=z(t,`disabled`,3,!1),l=z(t,`size`,3,`md`),u=z(t,`invalid`,3,!1),f=z(t,`required`,3,!1),m=z(t,`loading`,3,!1),g=xr(`sv-ac`),_=M(()=>t.id??g),y=j(null),b=j(null),S=j(me({top:0,left:0,width:0,openUpward:!1,maxHeight:0,availHeight:0})),C=j(null),E=M(()=>s()&&p(C)!=null?Math.min(p(C),p(S).availHeight):Math.min(p(S).availHeight,288)),D=M(()=>s()&&!p(S).openUpward),O=ta({value:()=>n(),onChange:e=>{n(e),t.onChange?.(e)},suggestions:()=>r(),minChars:()=>o(),disabled:()=>c(),ariaLabel:()=>t.ariaLabel,focusInput:()=>p(y)?.focus(),id:()=>p(_),invalid:()=>u(),required:()=>f(),error:()=>t.error,hint:()=>t.hint});function A(){if(!p(y))return;let e=s()&&p(C)!=null?p(C):Math.min(O.filtered.length,8)*34+12;V(S,Nr(p(y).getBoundingClientRect(),{estimatedHeight:e}),!0)}function ee(e){p(b)&&En(e,{startHeight:p(b).clientHeight,min:96,max:()=>p(S).availHeight,onHeight:e=>{V(C,e,!0),A()}})}T(()=>{if(!O.open)return;A();let e=()=>A();window.addEventListener(`scroll`,e,!0),window.addEventListener(`resize`,e);let t=Tr({element:()=>[p(y),p(b)],onDismiss:()=>O.close(),closeOnEscape:!1});return t.activate(),()=>{window.removeEventListener(`scroll`,e,!0),window.removeEventListener(`resize`,e),t.release()}});var te=Ca(),re=I(te);wr(re,{get id(){return p(_)},get label(){return t.label},get hint(){return t.hint},get error(){return t.error},get required(){return f()},get dir(){return t.dir},get loading(){return m()},children:(e,n)=>{var r=va();ne(r,e=>({class:`sv-ac sv-ac--${l()??``}`,type:`text`,placeholder:t.placeholder,...e,[ce]:{"is-invalid":u()}}),[()=>O.inputProps()],void 0,void 0,`svelte-1vvrp83`,!0),pe(r,e=>V(y,e),()=>p(y)),d(e,r)},$$slots:{default:!0}});var P=k(re,2),ie=e=>{var t=xa();ne(t,e=>({class:`sv-ddl__panel`,...e,[ce]:{"is-resizable":p(D)},[ye]:{position:`fixed`,top:p(S).openUpward?void 0:`${p(S).top}px`,bottom:p(S).openUpward?`${p(S).bottom}px`:void 0,left:`${p(S).left}px`,"min-width":`${p(S).width}px`,"max-height":`${p(E)}px`,height:s()&&p(C)!=null&&!p(S).openUpward?`${p(E)}px`:void 0}}),[()=>O.listboxProps()],void 0,void 0,`svelte-1vvrp83`);var n=B(t);se(n,17,()=>O.filtered,i,(e,t,n)=>{var r=ya();ne(r,(e,t)=>({class:`sv-ddl__opt`,...e,[ce]:t}),[()=>O.optionProps(n),()=>({"is-active":O.isActive(n)})],void 0,void 0,`svelte-1vvrp83`);var i=B(r,!0);H(r),w(()=>v(i,p(t).label)),d(e,r)});var r=k(n,2),o=e=>{var t=ba();x(`pointerdown`,t,ee),d(e,t)};h(r,e=>{p(D)&&e(o)}),H(t),pe(t,e=>V(b,e),()=>p(b)),a(t,e=>Mr?.(e)),a(t,(e,t)=>Pr?.(e,t),()=>({up:p(S).openUpward})),d(e,t)};h(P,e=>{O.open&&e(ie)});var ae=k(P,2),oe=e=>{var r=Sa();N(r),w(()=>{R(r,`name`,t.name),F(r,n())}),d(e,r)};h(ae,e=>{t.name&&e(oe)}),d(e,te),he()}u([`pointerdown`]);function Ta(e,t,n=0){let r=[];for(let i of e){let e=!!i.children&&i.children.length>0,a=t.has(i.value);r.push({node:i,depth:n,hasChildren:e,expanded:a}),e&&a&&r.push(...Ta(i.children,t,n+1))}return r}function Ea(e,t){for(let n of e){if(n.value===t)return[n];if(n.children){let e=Ea(n.children,t);if(e)return[n,...e]}}return null}var Da=y(`<input type="hidden"/>`),Oa=y(`<div><button><span> </span> <span class="sv-ts__arrow svelte-95y6nb" aria-hidden="true">▾</span></button> <!></div>`),ka=y(`<span aria-hidden="true"><svg viewBox="0 0 24 24" width="12" height="12" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><path d="m9 18 6-6-6-6"></path></svg></span>`),Aa=y(`<span class="sv-ts__chev sv-ts__chev--leaf" aria-hidden="true"></span>`),ja=y(`<li><!> <span class="sv-ts__label"> </span></li>`),Ma=y(`<div class="sv-ts__panel"><ul class="sv-ts__tree" role="tree" tabindex="0"></ul></div>`),Na=y(`<!> <!>`,1);function Pa(e,t){ue(t,!0);let n=z(t,`value`,15,null),r=z(t,`placeholder`,3,`Select…`),i=z(t,`showPath`,3,!1),o=z(t,`expandedIds`,19,()=>[]),s=z(t,`disabled`,3,!1),c=z(t,`readonly`,3,!1),l=z(t,`required`,3,!1),u=z(t,`invalid`,3,!1),f=z(t,`size`,3,`md`),m=z(t,`loading`,3,!1),g=xr(`sv-ts`),_=M(()=>t.id??g),y=j(me(new Set(o()))),b=j(null),S=j(null),C=j(null),T=M(()=>Ta(t.nodes,p(y))),E=M(()=>n()==null?null:Ea(t.nodes,n())),O=M(()=>p(E)?i()?p(E).map(e=>e.label).join(` / `):p(E)[p(E).length-1].label:``);function ee(e,t){let n=new Set(p(y));t?n.add(e):n.delete(e),V(y,n,!0)}function te(e){ee(e,!p(y).has(e))}function re(e){e.disabled||(n(e.value),t.onChange?.(e.value),ie.closePanel())}function P(e){e.hasChildren?te(e.node.value):re(e.node)}let ie=Lt({itemCount:()=>p(T).length,disabled:e=>!!p(T)[e]?.node.disabled,readonly:()=>c(),onSelect:e=>{let t=p(T)[e];t&&P(t)},getTrigger:()=>p(b),getPanel:()=>p(S),getInitialFocus:()=>p(C),closeOnSelect:()=>!1,initialActive:()=>Math.max(0,p(T).findIndex(e=>e.node.value===n())),minWidth:()=>220,estimatedHeight:()=>300,onExtraKey:(e,t)=>{let n=p(T)[t];return n?e.key===`ArrowRight`?(e.preventDefault(),n.hasChildren&&!n.expanded?ee(n.node.value,!0):n.hasChildren&&n.expanded&&(ie.active=Math.min(t+1,p(T).length-1)),!0):e.key===`ArrowLeft`&&(e.preventDefault(),(()=>{if(n.hasChildren&&n.expanded)ee(n.node.value,!1);else{let e=t-1;for(;e>=0&&p(T)[e].depth>=n.depth;)e--;e>=0&&(ie.active=e)}})(),!0):!1},idPrefix:`sv-ts`});var ae=Na(),oe=I(ae);wr(oe,{get id(){return p(_)},get label(){return t.label},get hint(){return t.hint},get error(){return t.error},get required(){return l()},get dir(){return t.dir},get loading(){return m()},children:(e,i)=>{var a=Oa();let o;var c=B(a),m=()=>ie.toggle();ne(c,(e,t)=>({type:`button`,class:`sv-ts__trigger`,disabled:s(),onclick:m,...e,...t,[ce]:{"is-invalid":u()}}),[()=>ie.triggerProps(`tree`),()=>Sr({id:p(_),invalid:u(),required:l(),error:t.error,hint:t.hint,ariaLabel:t.ariaLabel})],void 0,void 0,`svelte-95y6nb`);var g=B(c);let y;var x=B(g,!0);H(g),D(2),H(c),pe(c,e=>V(b,e),()=>p(b));var S=k(c,2),C=e=>{var r=Da();N(r),w(()=>{R(r,`name`,t.name),F(r,n()??``)}),d(e,r)};h(S,e=>{t.name&&e(C)}),H(a),w(()=>{o=Ce(a,1,`sv-ts sv-ts--${f()??``}`,`svelte-95y6nb`,o,{"is-disabled":s()}),y=Ce(g,1,`sv-ts__value svelte-95y6nb`,null,y,{"is-placeholder":!p(O)}),v(x,p(O)||r())}),d(e,a)},$$slots:{default:!0}});var L=k(oe,2),le=e=>{var r=Ma();let i;var o=B(r);let s;se(o,23,()=>p(T),e=>e.node.value,(e,t,r)=>{var i=ja(),a=()=>P(p(t));ne(i,(e,r)=>({class:`sv-ts__row`,role:`treeitem`,"aria-selected":p(t).node.value===n(),"aria-expanded":p(t).hasChildren?p(t).expanded:void 0,onclick:a,...e,[ce]:r,[ye]:{"padding-inline-start":`${8+p(t).depth*16}px`}}),[()=>ie.itemProps(p(r)),()=>({"is-active":ie.isActive(p(r)),"is-selected":p(t).node.value===n(),"is-disabled":p(t).node.disabled})],void 0,void 0,`svelte-95y6nb`);var o=B(i),s=e=>{var n=ka();let r;w(()=>r=Ce(n,1,`sv-ts__chev`,null,r,{"is-open":p(t).expanded})),d(e,n)},c=e=>{var t=Aa();d(e,t)};h(o,e=>{p(t).hasChildren?e(s):e(c,-1)});var l=k(o,2),u=B(l,!0);H(l),H(i),w(()=>v(u,p(t).node.label)),d(e,i)}),H(o),pe(o,e=>V(C,e),()=>p(C)),H(r),pe(r,e=>V(S,e),()=>p(S)),a(r,e=>Mr?.(e)),a(r,(e,t)=>Pr?.(e,t),()=>({up:ie.rect.openUpward})),w(e=>{R(r,`dir`,t.dir),i=A(r,``,i,{position:`fixed`,top:`${ie.rect.top}px`,left:`${ie.rect.left}px`,"min-width":`${ie.rect.width}px`}),R(o,`id`,ie.panelId),R(o,`aria-label`,t.label??t.ariaLabel??`Tree`),R(o,`aria-activedescendant`,e),s=A(o,``,s,{"max-height":`${ie.rect.maxHeight}px`}),r.dir=r.dir},[()=>ie.activeDescendant()]),x(`keydown`,o,function(...e){ie.onPanelKeydown?.apply(this,e)}),d(e,r)};h(L,e=>{ie.open&&e(le)}),d(e,ae),he()}u([`keydown`]);var Fa=De(`<path fill="none" stroke-linecap="round"></path>`),Ia=De(`<path class="sv-gauge__value svelte-8p5qgu" fill="none" stroke-linecap="round"></path>`),La=De(`<line class="sv-gauge__needle svelte-8p5qgu" stroke-linecap="round"></line><circle r="5" class="sv-gauge__hub svelte-8p5qgu"></circle>`,1),Ra=y(`<div><svg class="sv-gauge__svg svelte-8p5qgu"><path class="sv-gauge__track svelte-8p5qgu" fill="none" stroke-linecap="round"></path><!><!></svg> <div class="sv-gauge__label svelte-8p5qgu"> </div></div>`);function za(e,t){ue(t,!0);let n=z(t,`value`,3,0),r=z(t,`min`,3,0),i=z(t,`max`,3,100),a=z(t,`sweep`,3,270),o=z(t,`bands`,19,()=>[]),s=z(t,`needle`,3,!0),c=z(t,`unit`,3,``),l=z(t,`size`,3,180),u=z(t,`thickness`,3,14),f=M(()=>t.dir===`ltr`||t.dir===`rtl`?t.dir:void 0),g=ca({value:()=>n(),min:()=>r(),max:()=>i(),sweep:()=>a(),size:()=>l(),thickness:()=>u(),ariaLabel:()=>t.ariaLabel}),_=M(()=>g.clamped),y=M(()=>g.cx),b=M(()=>g.cy),x=M(()=>g.r),S=(e,t,n)=>g.arcPath(e,t,n),C=M(()=>g.needleEnd),T=M(()=>t.label??`${t.formatValue?t.formatValue(p(_)):Math.round(p(_))}${c()}`);var E=Ra();ne(E,e=>({class:`sv-gauge`,dir:p(f),...e}),[()=>g.rootProps()],void 0,void 0,`svelte-8p5qgu`);var D=B(E),O=B(D),A=k(O),ee=e=>{var t=m(),n=I(t);se(n,17,o,e=>e.from+`-`+e.to,(e,t)=>{var n=Fa();w(e=>{R(n,`d`,e),R(n,`stroke`,p(t).color),R(n,`stroke-width`,u())},[()=>S(p(t).from,p(t).to,p(x))]),d(e,n)}),d(e,t)},te=e=>{var t=Ia();w(e=>{R(t,`d`,e),R(t,`stroke-width`,u())},[()=>S(r(),p(_),p(x))]),d(e,t)};h(A,e=>{o().length?e(ee):e(te,-1)});var j=k(A),re=e=>{var t=La(),n=I(t),r=k(n);w(()=>{R(n,`x1`,p(y)),R(n,`y1`,p(b)),R(n,`x2`,p(C).x),R(n,`y2`,p(C).y),R(r,`cx`,p(y)),R(r,`cy`,p(b))}),d(e,t)};h(j,e=>{s()&&e(re)}),H(D);var N=k(D,2),P=B(N,!0);H(N),H(E),w(e=>{R(D,`viewBox`,`0 0 ${l()} ${l()}`),R(D,`width`,l()),R(D,`height`,l()),R(O,`d`,e),R(O,`stroke-width`,u()),v(P,p(T)),E.dir=E.dir},[()=>S(r(),i(),p(x))]),d(e,E),he()}var Ba=De(`<svg class="sv-tree__spin svelte-szf0nj" viewBox="0 0 24 24" width="12" height="12" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round"><path d="M21 12a9 9 0 1 1-6.2-8.6"></path></svg>`),Va=De(`<svg viewBox="0 0 24 24" width="12" height="12" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round" class="svelte-szf0nj"><path d="m9 18 6-6-6-6"></path></svg>`),Ha=De(`<svg viewBox="0 0 16 16" class="svelte-szf0nj"><path d="M3.5 8.5l3 3 6-6.5" fill="none" stroke="currentColor" stroke-width="2.2" stroke-linecap="round" stroke-linejoin="round"></path></svg>`),Ua=De(`<svg viewBox="0 0 16 16" class="svelte-szf0nj"><path d="M4 8h8" stroke="currentColor" stroke-width="2.5" stroke-linecap="round"></path></svg>`),Wa=y(`<button type="button" tabindex="-1" aria-hidden="true"><!></button>`),Ga=y(`<input class="sv-tree__edit svelte-szf0nj"/>`),Ka=y(`<span class="sv-tree__label svelte-szf0nj"> </span>`),qa=y(`<div><button type="button" tabindex="-1" aria-hidden="true"><!></button> <!> <!></div>`),Ja=y(`<button type="button" class="sv-tree__search-clear svelte-szf0nj">×</button>`),Ya=y(`<div class="sv-tree__search svelte-szf0nj"><svg viewBox="0 0 24 24" width="14" height="14" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" aria-hidden="true"><circle cx="11" cy="11" r="7"></circle><path d="m21 21-4.3-4.3"></path></svg> <input class="sv-tree__search-input svelte-szf0nj" type="text"/> <!></div>`),Xa=y(`<div class="sv-tree__sb svelte-szf0nj" aria-hidden="true"><div></div></div>`),Za=y(`<div><!> <div><!> <!></div></div>`);function Qa(e,t){ue(t,!0);let n=(e,t=ee)=>{let n=M(()=>i()?Ee.checkStateOf(t().node):`unchecked`),a=M(()=>p(O).has(t().node.id)),s=M(()=>Ee.itemProps(t()));var c=qa(),l=e=>{p(s).onkeydown(e),g()&&e.key===`F2`&&(e.preventDefault(),ae(t().node))};ne(c,e=>({class:`sv-tree__row`,draggable:_()&&p(F)!==t().node.id&&!t().node.disabled,ondragstart:_()?e=>ve(e,t().node):void 0,ondragover:_()?e=>be(e,t().node):void 0,ondragleave:_()?()=>{p(le)===t().node.id&&(V(le,null),V(de,null))}:void 0,ondrop:_()?e=>xe(e,t().node):void 0,ondragend:_()?Se:void 0,ondblclick:g()?()=>ae(t().node):void 0,...p(s),onkeydown:l,[ce]:{"is-selected":t().node.id===r(),"is-disabled":t().node.disabled,"is-dragging":p(L)===t().node.id,"drop-before":p(le)===t().node.id&&p(de)===`before`,"drop-after":p(le)===t().node.id&&p(de)===`after`,"drop-inside":p(le)===t().node.id&&p(de)===`inside`},[ye]:e}),[()=>({height:`${ze(t().index)}px`,"padding-inline-start":`${t().depth*18+6}px`,transform:o()?`translateY(${Re(t().index)-Be.scrollOffset}px)`:void 0})],void 0,void 0,`svelte-szf0nj`);var u=B(c);let f;var m=B(u),y=e=>{var t=Ba();d(e,t)},b=e=>{var t=Va();d(e,t)};h(m,e=>{p(a)?e(y):t().hasChildren&&e(b,1)}),H(u);var S=k(u,2),T=e=>{var r=Wa(),i=B(r),a=e=>{var t=Ha();d(e,t)},o=e=>{var t=Ua();d(e,t)};h(i,e=>{p(n)===`checked`?e(a):p(n)===`indeterminate`&&e(o,1)}),H(r),w(()=>Ce(r,1,`sv-tree__check is-${p(n)??``}`,`svelte-szf0nj`)),x(`click`,r,e=>{e.stopPropagation(),Ee.toggleCheck(t().node)}),d(e,r)};h(S,e=>{i()&&e(T)});var E=k(S,2),D=e=>{var t=Ga();N(t),x(`click`,t,e=>e.stopPropagation()),x(`keydown`,t,e=>{e.key===`Enter`?(e.preventDefault(),I()):e.key===`Escape`&&(e.preventDefault(),oe())}),C(`blur`,t,I),te(t,()=>p(ie),e=>V(ie,e)),d(e,t)},A=e=>{var n=Ka(),r=B(n,!0);H(n),w(()=>v(r,t().node.label)),d(e,n)};h(E,e=>{p(F)===t().node.id?e(D):e(A,-1)}),H(c),w(()=>f=Ce(u,1,`sv-tree__twist svelte-szf0nj`,null,f,{"is-open":t().open,"is-leaf":!t().hasChildren,"is-loading":p(a)})),x(`click`,u,e=>{e.stopPropagation(),Ee.toggleExpand(t().node)}),d(e,c)},r=z(t,`selected`,3,null),i=z(t,`checkable`,3,!1),a=z(t,`checked`,19,()=>[]),o=z(t,`virtual`,3,!1),s=z(t,`rowHeight`,3,30),c=z(t,`searchable`,3,!1),l=z(t,`searchPlaceholder`,3,`Search...`),u=z(t,`loadingText`,3,`Loading...`),m=z(t,`clearSearchLabel`,3,`Clear search`),g=z(t,`editable`,3,!1),_=z(t,`reorderable`,3,!1),y=M(()=>t.dir===`ltr`||t.dir===`rtl`?t.dir:void 0),b=j(``),S=M(()=>t.filter??(c()?p(b):void 0)),E=M(()=>{if(!t.sort)return t.nodes;let e=typeof t.sort==`function`?t.sort:(e,n)=>(t.sort===`asc`?1:-1)*e.label.localeCompare(n.label);return oa(t.nodes,e)}),D=j(me(new Map)),O=j(me(new Set));function re(e){return e.map(e=>e.lazy&&p(D).has(e.id)?{...e,children:re(p(D).get(e.id)),lazy:!1}:e.children?.length?{...e,children:re(e.children)}:e)}let P=M(()=>re(p(E))),F=j(null),ie=j(``);function ae(e){!g()||e.disabled||(V(F,e.id,!0),V(ie,e.label,!0),ge().then(()=>p(Oe)?.querySelector(`.sv-tree__edit`)?.select()))}function I(){if(p(F)==null)return;let e=p(F),n=p(ie).trim();V(F,null),n&&t.onRename?.(e,n)}function oe(){V(F,null)}let L=j(null),le=j(null),de=j(null);function fe(e,t){let n=e.currentTarget.getBoundingClientRect(),r=(e.clientY-n.top)/n.height,i=!!t.children?.length||!!t.lazy;return r<.3?`before`:r>.7||!i?r>.5?`after`:i?`inside`:`after`:`inside`}function ve(e,t){V(L,t.id,!0),e.dataTransfer&&(e.dataTransfer.effectAllowed=`move`)}function be(e,t){!p(L)||p(L)===t.id||(e.preventDefault(),V(le,t.id,!0),V(de,fe(e,t),!0))}function xe(e,n){e.preventDefault(),p(L)&&p(L)!==n.id&&p(de)&&t.onMove?.(p(L),n.id,p(de)),V(L,V(le,V(de,null),!0),!0)}function Se(){V(L,V(le,V(de,null),!0),!0)}function we(e,t){for(let n of e){if(n.id===t)return n;if(n.children){let e=we(n.children,t);if(e)return e}}return null}async function Te(e,n){if(t.onToggle?.(e,n),!n||!t.loadChildren)return;let r=we(p(P),e);if(!(!r?.lazy||p(D).has(e)||p(O).has(e))){V(O,new Set(p(O)).add(e),!0),V(D,new Map(p(D)).set(e,[{id:`${e}__loading`,label:u(),disabled:!0}]),!0);try{let n=await t.loadChildren(r);V(D,new Map(p(D)).set(e,n),!0)}catch{V(D,new Map(p(D)).set(e,[]),!0)}finally{let t=new Set(p(O));t.delete(e),V(O,t,!0)}}}let Ee=sa({nodes:()=>p(P),selected:()=>r(),onSelect:e=>t.onSelect?.(e),expandedIds:()=>t.expandedIds,onToggle:Te,checkable:()=>i(),checked:()=>a(),onCheck:e=>t.onCheck?.(e),ariaLabel:()=>t.ariaLabel,dir:()=>t.dir,filter:()=>p(S)}),De=M(()=>o()||t.height!=null),Oe=j(null),ke=j(0),Ae=M(()=>typeof s()==`number`?s():30),je=M(()=>typeof s()==`number`),Me=e=>{let t=Ee.rows[e];return t?typeof s()==`function`?s()(t.node,e):s():p(Ae)},Ne=M(()=>p(je)?p(Ae):e=>Me(e)),Pe=M(()=>p(ke)>0?p(ke):Math.max(1,t.height??320)),Fe=yr(f(()=>({count:Ee.rows.length,estimateSize:p(Ne),overscan:20,viewportHeight:p(Pe)})));T(()=>{let e=Ee.rows.length,t=p(Ne);f(()=>Fe.setOptions({count:e,estimateSize:t}))}),T(()=>{let e=p(Pe);f(()=>Fe.setViewportHeight(e))});let Ie=M(()=>(Fe.version,Fe.getTotalSize())),Le=M(()=>{if(!o())return Ee.rows;Fe.version;let e=Fe.getState();return Ee.rows.slice(e.startIndex,e.endIndex+1)}),Re=e=>Fe.getOffsetForIndex(e),ze=e=>o()?Fe.getSizeForIndex(e):Me(e),Be=br({virtualizer:Fe,totalSize:()=>p(Ie),viewport:()=>p(Pe),lineStep:()=>p(Ae)}),Ve=0;T(()=>{if(Ee.focusTick===Ve)return;Ve=Ee.focusTick;let e=Ee.activeIndex;o()&&f(()=>Be.ensureIndexVisible(e)),ge().then(()=>p(Oe)?.querySelector(`[data-row="${e}"]`)?.focus())});var He=Za();let Ue;var We=B(He),Ge=e=>{var t=Ya(),n=k(B(t),2);N(n);var r=k(n,2),i=e=>{var t=Ja();w(()=>R(t,`aria-label`,m())),x(`click`,t,()=>V(b,``)),d(e,t)};h(r,e=>{p(b)&&e(i)}),H(t),w(()=>{R(n,`placeholder`,l()),R(n,`aria-label`,l())}),te(n,()=>p(b),e=>V(b,e)),d(e,t)};h(We,e=>{c()&&e(Ge)});var Ke=k(We,2);ne(Ke,e=>({class:`sv-tree`,dir:p(y),onwheel:o()?Be.onWheel:void 0,onpointerdown:o()?Be.onContentDown:void 0,onpointermove:o()?Be.onContentMove:void 0,onpointerup:o()?Be.onContentUp:void 0,onpointercancel:o()?Be.onContentUp:void 0,...e,[ce]:{"sv-tree--scroll":p(De)&&!o(),"is-virtual":o()},[ye]:{height:t.height==null?void 0:`${t.height}px`}}),[()=>Ee.treeProps()],void 0,void 0,`svelte-szf0nj`);var qe=B(Ke);se(qe,17,()=>p(Le),e=>e.node.id,(e,t)=>{n(e,()=>p(t))});var Je=k(qe,2),Ye=e=>{var t=Xa(),n=B(t);let r,i;H(t),w(()=>{r=Ce(n,1,`sv-tree__thumb svelte-szf0nj`,null,r,{"is-dragging":Be.dragging}),i=A(n,``,i,{height:`${Be.thumbH}px`,transform:`translateY(${Be.thumbTop}px)`})}),x(`pointerdown`,t,function(...e){Be.onTrackDown?.apply(this,e)}),x(`pointerdown`,n,function(...e){Be.onThumbDown?.apply(this,e)}),x(`pointermove`,n,function(...e){Be.onThumbMove?.apply(this,e)}),x(`pointerup`,n,function(...e){Be.onThumbUp?.apply(this,e)}),C(`pointercancel`,n,function(...e){Be.onThumbUp?.apply(this,e)}),d(e,t)};h(Je,e=>{o()&&Be.maxOffset>0&&e(Ye)}),H(Ke),pe(Ke,e=>V(Oe,e),()=>p(Oe)),H(He),w(()=>{Ue=Ce(He,1,`sv-tree-host svelte-szf0nj`,null,Ue,{"has-search":c()}),R(He,`dir`,p(y)),Ke.dir=Ke.dir,He.dir=He.dir}),_e(Ke,`clientHeight`,e=>V(ke,e)),d(e,He),he()}u([`click`,`keydown`,`pointerdown`,`pointermove`,`pointerup`]);var $a=0;function eo(e){let t=`sv-acc-${$a++}`,n=()=>e.items(),r=()=>e.expandMode?.()??`single`,i=()=>e.disabled?.()??!1,a=M(()=>new Set(e.expanded())),o=M(()=>n().map((e,t)=>e.disabled?-1:t).filter(e=>e>=0)),s=j(0),c=j(0),l=e=>{V(s,e,!0),L(c)},u=e=>`${t}-h-${e}`,d=e=>`${t}-p-${e}`,f=e=>p(a).has(e);function m(t){let o=n()[t];if(!o||o.disabled||i())return;let s=p(a).has(o.id);if(r()===`single`)e.onChange?.(s?[]:[o.id]);else{let t=new Set(p(a));s?t.delete(o.id):t.add(o.id),e.onChange?.([...t])}}function h(e){if(!p(o).length)return;let t=p(o).indexOf(p(s)),n=t<0?0:t,r=p(o)[(n+e+p(o).length)%p(o).length];r!=null&&l(r)}function g(e,t){if(!i())switch(e.key){case`ArrowDown`:e.preventDefault(),h(1);break;case`ArrowUp`:e.preventDefault(),h(-1);break;case`Home`:e.preventDefault(),l(p(o)[0]??0);break;case`End`:e.preventDefault(),l(p(o).at(-1)??0);break;case`Enter`:case` `:e.preventDefault(),m(t)}}return{get focusIndex(){return p(s)},get focusTick(){return p(c)},get expandedIds(){return[...p(a)]},isExpanded:f,toggle:m,rootProps:()=>({"data-orientation":`vertical`}),headerProps:e=>{let t=n()[e];return{type:`button`,id:u(e),"data-idx":e,"aria-expanded":t?f(t.id):!1,"aria-controls":d(e),disabled:i()||t?.disabled||void 0,onclick:()=>m(e),onkeydown:t=>g(t,e)}},panelProps:e=>({role:`region`,id:d(e),"aria-labelledby":u(e)})}}var K=y(`<div><div class="sv-acc__body svelte-1fv9td1"><!></div></div>`),to=y(`<div><h3 class="sv-acc__heading svelte-1fv9td1"><button><svg class="sv-acc__chevron svelte-1fv9td1" viewBox="0 0 24 24" width="16" height="16" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="m9 18 6-6-6-6"></path></svg> <span class="sv-acc__label svelte-1fv9td1"> </span></button></h3> <!></div>`),no=y(`<div></div>`);function ro(e,t){ue(t,!0);let n=z(t,`expanded`,31,()=>me([])),r=z(t,`expandMode`,3,`single`),i=z(t,`disabled`,3,!1),a=M(()=>t.dir===`ltr`||t.dir===`rtl`?t.dir:void 0),s=eo({items:()=>t.items,expanded:()=>n(),onChange:e=>{n(e),t.onChange?.(e)},expandMode:()=>r(),disabled:()=>i(),dir:()=>t.dir}),c=null,l=0;T(()=>{if(s.focusTick!==l){l=s.focusTick;let e=s.focusIndex;queueMicrotask(()=>c?.querySelector(`[data-idx="${e}"]`)?.focus())}});var u=no();ne(u,e=>({class:`sv-acc`,dir:p(a),...e,[ce]:{"is-disabled":i()}}),[()=>s.rootProps()],void 0,void 0,`svelte-1fv9td1`),se(u,23,()=>t.items,e=>e.id,(e,n,r)=>{let i=M(()=>s.isExpanded(p(n).id));var a=to();let c;var l=B(a),u=B(l);ne(u,e=>({class:`sv-acc__header`,...e}),[()=>s.headerProps(p(r))],void 0,void 0,`svelte-1fv9td1`);var f=k(B(u),2),g=B(f,!0);H(f),H(u),H(l);var _=k(l,2),y=e=>{var i=K();ne(i,e=>({class:`sv-acc__panel`,...e}),[()=>s.panelProps(p(r))],void 0,void 0,`svelte-1fv9td1`);var a=B(i),c=B(a),l=e=>{var r=m(),i=I(r);o(i,()=>t.panel,()=>p(n)),d(e,r)};h(c,e=>{t.panel&&e(l)}),H(a),H(i),d(e,i)};h(_,e=>{p(i)&&e(y)}),H(a),w(()=>{c=Ce(a,1,`sv-acc__item svelte-1fv9td1`,null,c,{"is-open":p(i)}),v(g,p(n).label)}),d(e,a)}),H(u),pe(u,e=>c=e,()=>c),w(()=>u.dir=u.dir),d(e,u),he()}var io=Symbol(`svgrid-dock`);function ao(e){return e.panes.reduce((e,t)=>Math.max(e,t.minSize??0),0)}function oo(e,t,n=0){return{type:`tabs`,id:e(),panes:t,active:co(n,t.length)}}function so(e,t,n,r){return{type:`group`,id:e(),direction:t,children:n,sizes:lo(r,n.length)}}function co(e,t){return t<=0?0:Math.max(0,Math.min(e,t-1))}function lo(e,t){if(t<=0)return[];let n=e&&e.length===t?e.slice():Array(t).fill(1),r=n.reduce((e,t)=>e+(t>0?t:0),0);return r<=0?Array(t).fill(1/t):n.map(e=>(e>0?e:0)/r)}function uo(e,t){if(e.type===`tabs`)return e.panes.some(e=>e.id===t)?e:null;for(let n of e.children){let e=uo(n,t);if(e)return e}return null}function fo(e){if(e.type===`tabs`)return e.panes.length===0?null:{...e,active:co(e.active,e.panes.length)};let t=[],n=[];if(e.children.forEach((r,i)=>{let a=fo(r);a&&(t.push(a),n.push(e.sizes[i]??1))}),t.length===0)return null;if(t.length===1)return t[0];let r=[],i=[];return t.forEach((t,a)=>{if(t.type===`group`&&t.direction===e.direction){let e=n[a];t.children.forEach((n,a)=>{r.push(n),i.push(e*(t.sizes[a]??1/t.children.length))})}else r.push(t),i.push(n[a])}),{...e,children:r,sizes:lo(i,r.length)}}function po(e,t,n){return So(e,e=>e.type===`tabs`&&e.id===t?{...e,active:co(n,e.panes.length)}:e)}function mo(e,t,n){return So(e,e=>e.type===`group`&&e.id===t?{...e,sizes:lo(n,e.children.length)}:e)}function ho(e,t,n,r){return So(e,e=>{if(e.type!==`tabs`||e.id!==t||n<0||n>=e.panes.length)return e;let i=e.panes[e.active]?.id,a=e.panes.slice(),[o]=a.splice(n,1);if(!o)return e;a.splice(Math.max(0,Math.min(r,a.length)),0,o);let s=a.findIndex(e=>e.id===i);return{...e,panes:a,active:s<0?0:s}})}function go(e,t){let n=null,r=e=>{if(e.type===`tabs`){let r=e.panes.findIndex(e=>e.id===t);if(r<0)return e;n=e.panes[r];let i=e.panes.filter((e,t)=>t!==r);return{...e,panes:i,active:co(e.active>r?e.active-1:e.active,i.length)}}return{...e,children:e.children.map(r)}};return{root:fo(r(e)),pane:n}}function _o(e,t,n,r,i){let a=r===`left`||r===`right`?`row`:`column`,o=r===`left`||r===`top`,s=e=>{if(e.type===`tabs`){if(e.id!==t)return e;if(r===`center`){let t=[...e.panes,n];return{...e,panes:t,active:t.length-1}}let s=oo(i,[n],0);return so(i,a,o?[s,e]:[e,s])}let c=e.children.findIndex(e=>e.type===`tabs`&&e.id===t);if(c>=0&&r!==`center`&&e.direction===a){let t=oo(i,[n],0),r=e.children.slice(),a=e.sizes.slice(),s=(e.sizes[c]??1/e.children.length)/2,l=o?c:c+1;return r.splice(l,0,t),a.splice(c,1,s,s),{...e,children:r,sizes:lo(a,r.length)}}return{...e,children:e.children.map(s)}};return fo(s(e))??e}function vo(e,t){let n=null,r=e=>{if(e.type===`tabs`)return e.id===t?(n=e,null):e;let i=[],a=[];return e.children.forEach((t,n)=>{let o=r(t);o&&(i.push(o),a.push(e.sizes[n]??1))}),i.length===0?null:{...e,children:i,sizes:lo(a,i.length)}},i=r(e);return{root:i?fo(i):null,leaf:n}}function yo(e,t,n,r,i=.25){if(!e)return t;let a=n===`left`||n===`right`?`row`:`column`,o=n===`left`||n===`top`,s=Math.min(.6,Math.max(.1,i));return fo(so(r,a,o?[t,e]:[e,t],o?[s,1-s]:[1-s,s]))??t}function bo(e,t,n,r,i){let{root:a,pane:o}=go(e,t);return!a||!o||!xo(a,n)?e:_o(a,n,o,r,i)}function xo(e,t){return e.type===`tabs`?e.id===t:e.children.some(e=>xo(e,t))}function So(e,t){let n=t(e);return n.type===`group`?{...n,children:n.children.map(e=>So(e,t))}:n}var Co=y(`<div role="separator"></div>`),wo=y(`<div class="sv-dock__cell svelte-xqw5dg"><!></div> <!>`,1),To=y(`<div role="group"></div>`),Eo=y(`<div class="sv-dock__ins svelte-xqw5dg" aria-hidden="true"></div>`),Do=y(`<button type="button" class="sv-dock__tab-close svelte-xqw5dg" title="Close">×</button>`),Oo=y(`<!> <div role="tab"><span class="sv-dock__tab-label"> </span> <!></div>`,1),ko=y(`<div class="sv-dock__ins svelte-xqw5dg" aria-hidden="true"></div>`),Ao=y(`<!> <!>`,1),jo=y(`<div class="sv-dock__leafctl svelte-xqw5dg"><!></div>`),Mo=y(`<div class="sv-dock__content svelte-xqw5dg" role="tabpanel"><!></div>`),No=y(`<div class="sv-dock__content svelte-xqw5dg" role="tabpanel"><!></div>`),Po=y(`<div></div>`),Fo=y(`<div></div>`),q=y(`<div></div>`),J=y(`<div></div>`),Io=y(`<div></div>`),Lo=y(`<div class="sv-dock__dropzone svelte-xqw5dg" aria-hidden="true"><!> <div><!> <div class="sv-dock__guide-row svelte-xqw5dg"><!> <div></div> <!></div> <!></div></div>`),Ro=y(`<div><div role="tablist"><!> <!></div> <!> <!></div>`);function zo(e,t){ue(t,!0);let n=P(io),r=j(null);function i(e){return e&&e.type===`tabs`?ao(e):0}function a(e,t,a){if(e.button!==0||!p(r))return;e.preventDefault();let o=t.direction===`column`,s=p(r).getBoundingClientRect(),c=o?s.height:s.width;if(c<=0)return;let l=t.sizes.slice(),u=o?e.clientY:e.clientX,d=a,f=a+1,m=Math.max(n.minSize(),i(t.children[d]))/c,h=Math.max(n.minSize(),i(t.children[f]))/c,g=l[d]+l[f],_=e=>{let r=((o?e.clientY:e.clientX)-u)/c,i=Math.min(Math.max(l[d]+r,m),g-h),a=l.slice();a[d]=i,a[f]=g-i,n.resize(t.id,a)},v=()=>{window.removeEventListener(`pointermove`,_),window.removeEventListener(`pointerup`,v),document.body.style.userSelect=``,document.body.style.cursor=``};document.body.style.userSelect=`none`,document.body.style.cursor=o?`row-resize`:`col-resize`,window.addEventListener(`pointermove`,_),window.addEventListener(`pointerup`,v)}var s=m(),c=I(s),l=e=>{var n=To();se(n,23,()=>t.node.children,e=>e.id,(e,n,r)=>{var i=wo(),o=I(i);let s;zo(B(o),{get node(){return p(n)}}),H(o);var c=k(o,2),l=e=>{var n=Co();w(()=>{Ce(n,1,`sv-dock__splitter sv-dock__splitter--${t.node.direction??``}`,`svelte-xqw5dg`),R(n,`aria-orientation`,t.node.direction===`column`?`horizontal`:`vertical`)}),x(`pointerdown`,n,e=>a(e,t.node,p(r))),d(e,n)};h(c,e=>{p(r)<t.node.children.length-1&&e(l)}),w(()=>s=A(o,``,s,{"flex-grow":t.node.sizes[p(r)]??1,"flex-basis":`0`})),d(e,i)}),H(n),pe(n,e=>V(r,e),()=>p(r)),w(()=>Ce(n,1,`sv-dock__group sv-dock__group--${t.node.direction??``}`,`svelte-xqw5dg`)),d(e,n)},u=e=>{let r=M(()=>t.node.panes[t.node.active]??t.node.panes[0]),i=M(()=>n.reorderTarget?.()??null),a=M(()=>p(i)&&p(i).tabsId===t.node.id?p(i).index:-1),s=M(()=>n.headerPosition?.()??`top`),c=M(()=>!!n.hideSingleTab?.()&&t.node.panes.length===1);var l=Ro();let u;var f=B(l);let g;var _=B(f),y=e=>{var r=Ao(),i=I(r);se(i,19,()=>t.node.panes,e=>e.id,(e,r,i)=>{var o=Oo(),s=I(o),c=e=>{var t=Eo();d(e,t)};h(s,e=>{p(a)===p(i)&&e(c)});var l=k(s,2);let u;var f=B(l),m=B(f,!0);H(f);var g=k(f,2),_=e=>{var t=Do();w(()=>R(t,`aria-label`,`Close ${p(r).title}`)),x(`pointerdown`,t,e=>e.stopPropagation()),x(`click`,t,e=>{e.stopPropagation(),n.close(p(r).id)}),d(e,t)};h(g,e=>{p(r).closable!==!1&&e(_)}),H(l),w(()=>{u=Ce(l,1,`sv-dock__tab svelte-xqw5dg`,null,u,{"is-active":p(i)===t.node.active}),R(l,`aria-selected`,p(i)===t.node.active),R(l,`tabindex`,p(i)===t.node.active?0:-1),R(l,`data-dock-tab`,p(r).id),R(l,`data-tab-index`,p(i)),v(m,p(r).title)}),x(`pointerdown`,l,e=>{e.button===0&&(n.activate(t.node.id,p(i)),n.beginDrag(e,p(r).id,t.node.id))}),x(`keydown`,l,e=>{(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),n.activate(t.node.id,p(i)))}),d(e,o)});var o=k(i,2),s=e=>{var t=ko();d(e,t)};h(o,e=>{p(a)===t.node.panes.length&&e(s)}),d(e,r)};h(_,e=>{p(c)||e(y)});var b=k(_,2),S=e=>{var r=jo(),i=B(r);o(i,()=>n.leafActions,()=>t.node),H(r),d(e,r)};h(b,e=>{n.leafActions&&e(S)}),H(f);var C=k(f,2),T=e=>{var i=m(),a=I(i);se(a,17,()=>t.node.panes,e=>e.id,(e,t)=>{var i=Mo();let a;var s=B(i);o(s,()=>n.pane,()=>p(t)),H(i),w(()=>a=A(i,``,a,{display:p(t).id===p(r)?.id?``:`none`})),d(e,i)}),d(e,i)},E=M(()=>n.keepAlive?.()),D=e=>{var t=m(),i=I(t),a=e=>{var t=m(),i=I(t);oe(i,()=>p(r).id,e=>{var t=No(),i=B(t);o(i,()=>n.pane,()=>p(r)),H(t),d(e,t)}),d(e,t)};h(i,e=>{p(r)&&e(a)}),d(e,t)};h(C,e=>{p(E)?e(T):e(D,-1)});var O=k(C,2),ee=e=>{let t=M(()=>n.dropTarget()),r=M(()=>p(t).zone),i=M(()=>p(t).centerOnly===!0);var a=Lo(),o=B(a),s=e=>{var t=Po();w(()=>Ce(t,1,`sv-dock__drop-hint sv-dock__drop-hint--${p(r)??``}`,`svelte-xqw5dg`)),d(e,t)};h(o,e=>{p(r)&&e(s)});var c=k(o,2);let l;var u=B(c),f=e=>{var t=Fo();let n;w(()=>n=Ce(t,1,`sv-dock__guide-cell sv-dock__guide-cell--top svelte-xqw5dg`,null,n,{"is-on":p(r)===`top`})),d(e,t)};h(u,e=>{p(i)||e(f)});var m=k(u,2),g=B(m),_=e=>{var t=q();let n;w(()=>n=Ce(t,1,`sv-dock__guide-cell sv-dock__guide-cell--left svelte-xqw5dg`,null,n,{"is-on":p(r)===`left`})),d(e,t)};h(g,e=>{p(i)||e(_)});var v=k(g,2);let y;var b=k(v,2),x=e=>{var t=J();let n;w(()=>n=Ce(t,1,`sv-dock__guide-cell sv-dock__guide-cell--right svelte-xqw5dg`,null,n,{"is-on":p(r)===`right`})),d(e,t)};h(b,e=>{p(i)||e(x)}),H(m);var S=k(m,2),C=e=>{var t=Io();let n;w(()=>n=Ce(t,1,`sv-dock__guide-cell sv-dock__guide-cell--bottom svelte-xqw5dg`,null,n,{"is-on":p(r)===`bottom`})),d(e,t)};h(S,e=>{p(i)||e(C)}),H(c),H(a),w(()=>{l=Ce(c,1,`sv-dock__guide svelte-xqw5dg`,null,l,{"is-center-only":p(i)}),y=Ce(v,1,`sv-dock__guide-cell sv-dock__guide-cell--center svelte-xqw5dg`,null,y,{"is-on":p(r)===`center`})}),d(e,a)},te=M(()=>n.dropTarget()?.tabsId===t.node.id);h(O,e=>{p(te)&&e(ee)}),H(l),w(e=>{u=Ce(l,1,`sv-dock__leaf sv-dock__leaf--h-${p(s)??``}`,`svelte-xqw5dg`,u,e),R(l,`data-dock-tabs`,t.node.id),g=Ce(f,1,`sv-dock__tabstrip svelte-xqw5dg`,null,g,{"is-bare":p(c)})},[()=>({"is-focused":n.focusedLeaf?.()===t.node.id})]),d(e,l)};h(c,e=>{t.node.type===`group`?e(l):e(u,-1)}),d(e,s),he()}u([`pointerdown`,`keydown`,`click`]);var Bo=0;function Vo(){return Bo+=1,Bo*1e6}var Ho=y(`<div class="sv-dock__ghost svelte-1a3gmpe"> </div>`),Uo=y(`<div><!></div> <!>`,1);function Wo(e,t){ue(t,!0);let n=z(t,`layout`,15),r=z(t,`minSize`,3,80),i=z(t,`surface`,3,`main`),a=z(t,`externalDrop`,3,null),o=z(t,`externalReorder`,3,null),s=z(t,`headerPosition`,3,`top`),c=z(t,`focusedLeaf`,3,null),l=z(t,`keepAlive`,3,!1),u=z(t,`hideSingleTab`,3,!1),f=z(t,`locked`,3,!1),m=M(()=>!!t.onBeginDrag),g=Vo(),_=()=>`dk-${g++}`;function y(e){n(e),t.onLayoutChange?.(e)}let b=(e,r)=>t.onActivate?t.onActivate(e,r):y(po(n(),e,r)),x=(e,r)=>t.onResize?t.onResize(e,r):y(mo(n(),e,r)),S=e=>{if(t.onClose){t.onClose(e);return}let{root:r}=go(n(),e);r&&y(r)},C=j(null),T=j(null),E=null;function D(e){let t=n=>{if(n.type===`tabs`)return n.panes.find(t=>t.id===e)?.title??null;for(let e of n.children){let n=t(e);if(n)return n}return null};return t(n())??``}function O(e,n,r){if(e.button===0&&!f()){if(t.onBeginDrag){t.onBeginDrag(e,n,r);return}E={paneId:n,sourceTabsId:r,title:D(n),sx:e.clientX,sy:e.clientY},window.addEventListener(`pointermove`,te),window.addEventListener(`pointerup`,ne)}}function ee(e,t){let n=document.elementFromPoint(e,t)?.closest(`[data-dock-tabs]`);if(!n)return null;let r=n.dataset.dockTabs,i=n.getBoundingClientRect();if(i.width<=0||i.height<=0)return null;let a=(e-i.left)/i.width,o=(t-i.top)/i.height,s=Math.min(a,1-a,o,1-o),c=`center`;if(s<=.25){let e=Math.min(a,1-a,o,1-o);c=e===a?`left`:e===1-a?`right`:e===o?`top`:`bottom`}return{tabsId:r,zone:c}}function te(e){if(E){if(!p(C)){if(Math.hypot(e.clientX-E.sx,e.clientY-E.sy)<5)return;V(C,{paneId:E.paneId,sourceTabsId:E.sourceTabsId,title:E.title,x:e.clientX,y:e.clientY},!0),document.body.style.userSelect=`none`,document.body.style.cursor=`grabbing`}V(C,{...p(C),x:e.clientX,y:e.clientY},!0),V(T,ee(e.clientX,e.clientY),!0)}}function ne(){window.removeEventListener(`pointermove`,te),window.removeEventListener(`pointerup`,ne),p(C)&&p(T)&&y(bo(n(),p(C).paneId,p(T).tabsId,p(T).zone,_)),V(C,null),V(T,null),E=null,document.body.style.userSelect=``,document.body.style.cursor=``}ae(io,{get pane(){return t.pane},get leafActions(){return f()?void 0:t.leafActions},activate:b,close:S,beginDrag:O,resize:x,minSize:()=>r(),dropTarget:()=>p(m)?a():p(T),reorderTarget:()=>p(m)?o():null,headerPosition:()=>s(),focusedLeaf:()=>c(),keepAlive:()=>l(),hideSingleTab:()=>u()});var re=Uo(),N=I(re);let P;zo(B(N),{get node(){return n()}}),H(N);var F=k(N,2),ie=e=>{var t=Ho();let n;var r=B(t,!0);H(t),w(()=>{n=A(t,``,n,{left:`${p(C).x+12}px`,top:`${p(C).y+12}px`}),v(r,p(C).title)}),d(e,t)};h(F,e=>{p(C)&&e(ie)}),w(()=>{P=Ce(N,1,`sv-dock svelte-1a3gmpe`,null,P,{"is-dragging":!!p(C)}),R(N,`data-dock-surface`,i())}),d(e,re),he()}function Go(e,t){if(e.main&&uo(e.main,t))return{kind:`main`};for(let n of e.floating)if(n.leaf.panes.some(e=>e.id===t))return{kind:`floating`,windowId:n.id};for(let n of e.autoHide)if(n.leaf.panes.some(e=>e.id===t))return{kind:`autoHide`,entryId:n.id};return null}function Ko(e,t){if(e.main&&qo(e.main,t))return`main`;let n=e.floating.find(e=>e.leaf.id===t);return n?n.id:null}function qo(e,t){return e.type===`tabs`?e.id===t:e.children.some(e=>qo(e,t))}function Jo(e,t){let n=e=>{if(e.type===`tabs`)return e.panes.find(e=>e.id===t)??null;for(let t of e.children){let e=n(t);if(e)return e}return null};if(e.main){let t=n(e.main);if(t)return t}for(let n of e.floating){let e=n.leaf.panes.find(e=>e.id===t);if(e)return e}for(let n of e.autoHide){let e=n.leaf.panes.find(e=>e.id===t);if(e)return e}return null}function Yo(e){return e.floating.reduce((e,t)=>Math.max(e,t.z),0)}function Xo(e,t){let n=e.main;n&&uo(n,t)&&(n=go(n,t).root);let r=e.floating.map(e=>{if(!e.leaf.panes.some(e=>e.id===t))return e;let n=e.leaf.panes.filter(e=>e.id!==t);if(n.length===0)return null;let r=Math.max(0,Math.min(e.leaf.active,n.length-1));return{...e,leaf:{...e.leaf,panes:n,active:r}}}).filter(e=>e!==null),i=e.autoHide.map(e=>{if(!e.leaf.panes.some(e=>e.id===t))return e;let n=e.leaf.panes.filter(e=>e.id!==t);if(n.length===0)return null;let r=Math.max(0,Math.min(e.leaf.active,n.length-1));return{...e,leaf:{...e.leaf,panes:n,active:r}}}).filter(e=>e!==null);return{main:n,floating:r,autoHide:i}}function Zo(e,t,n,r){return e.main&&qo(e.main,t)?{...e,main:ho(e.main,t,n,r)}:{...e,floating:e.floating.map(e=>{if(e.leaf.id!==t)return e;let i=ho(e.leaf,t,n,r);return i.type===`tabs`?{...e,leaf:i}:e})}}function Qo(e,t,n){return e.main?{...e,main:$o(e.main,t,n)}:e}function $o(e,t,n){if(e.type===`tabs`)return e;let r=e.children.map(e=>$o(e,t,n));return e.id===t?{...e,children:r,sizes:es(n,r.length)}:{...e,children:r}}function es(e,t){if(t<=0)return[];let n=e.length===t?e:Array(t).fill(1),r=n.reduce((e,t)=>e+(t>0?t:0),0);return r<=0?Array(t).fill(1/t):n.map(e=>(e>0?e:0)/r)}function ts(e,t,n){let r=e.floating.find(e=>e.leaf.id===t);if(r)return{...e,floating:e.floating.map(e=>e.id===r.id?{...e,leaf:{...e.leaf,active:Cs(n,e.leaf.panes.length)}}:e)};let i=e.autoHide.find(e=>e.leaf.id===t);return i?{...e,autoHide:e.autoHide.map(e=>e.id===i.id?{...e,leaf:{...e.leaf,active:Cs(n,e.leaf.panes.length)}}:e)}:{...e,main:e.main?ws(e.main,t,n):e.main}}function ns(e,t,n,r,i){let a=Jo(e,t);if(!a)return e;let o=Ko(e,n);if(!o)return e;let s=Xo(e,t);if(Ko(s,n)===null)return e;if(o===`main`){let t=s.main;return t?{...s,main:_o(t,n,a,r,i)}:e}return{...s,floating:s.floating.map(e=>{if(e.id!==o)return e;let t=[...e.leaf.panes,a];return{...e,leaf:{...e.leaf,panes:t,active:t.length-1}}})}}function rs(e,t,n){if(!e.main)return{...e,main:oo(n,[t],0)};let r=!1,i=e=>{if(r)return e;if(e.type===`tabs`){r=!0;let n=[...e.panes,t];return{...e,panes:n,active:n.length-1}}return{...e,children:e.children.map(i)}};return{...e,main:i(e.main)}}function is(e,t,n){let r=Jo(e,t);if(!r)return e;let i=Xo(e,t);return i.main?{...i,main:i.main}:{...i,main:oo(n,[r],0)}}function as(e,t,n,r){let i=Jo(e,t);if(!i)return e;let a=Go(e,t);if(a?.kind===`floating`){let t=e.floating.find(e=>e.id===a.windowId);if(t&&t.leaf.panes.length===1)return e}let o=Xo(e,t),s={id:r(),leaf:oo(r,[i],0),x:n.x,y:n.y,width:n.width,height:n.height,z:Yo(e)+1};return{...o,floating:[...o.floating,s]}}function os(e,t,n,r,i){let a=e.floating.find(e=>e.id===t);if(!a||Ko(e,n)!==`main`||!e.main)return e;let o=e.floating.filter(e=>e.id!==t);if(r===`center`)return{...e,floating:o,main:e.main?Ts(e.main,n,a.leaf.panes):e.main};let s=oo(i,a.leaf.panes,a.leaf.active),c=r===`left`||r===`right`?`row`:`column`,l=r===`left`||r===`top`;return{...e,floating:o,main:Es(e.main,n,s,c,l,i)}}function ss(e,t,n,r){return{...e,floating:e.floating.map(e=>e.id===t?{...e,x:n,y:r}:e)}}function cs(e,t,n,r){return{...e,floating:e.floating.map(e=>e.id===t?{...e,width:Math.max(140,n),height:Math.max(80,r)}:e)}}function ls(e,t){let n=Yo(e);return{...e,floating:e.floating.map(e=>e.id===t?{...e,z:n+1}:e)}}function us(e,t,n){return{...e,floating:e.floating.map(e=>e.id===t?{...e,minimized:n,maximized:!n&&e.maximized}:e)}}function ds(e,t){return{...e,floating:e.floating.map(e=>e.id===t?{...e,maximized:!e.maximized,minimized:!1}:e)}}function fs(e,t){return{...e,floating:e.floating.filter(e=>e.id!==t)}}function ps(e,t){let n=e=>{if(e.type===`tabs`)return e.id===t?e:null;for(let t of e.children){let e=n(t);if(e)return e}return null};if(e.main){let t=n(e.main);if(t)return t}let r=e.floating.find(e=>e.leaf.id===t);if(r)return r.leaf;let i=e.autoHide.find(e=>e.leaf.id===t);return i?i.leaf:null}function ms(e,t){let n=e.maximizedLeaf===t;return{...e,maximizedLeaf:n?null:t}}function hs(e,t,n,r,i=260){let a=e.floating.find(e=>e.id===t);if(!a)return e;let o={id:r(),side:n,leaf:oo(r,a.leaf.panes,a.leaf.active),size:i};return{...e,floating:e.floating.filter(e=>e.id!==t),autoHide:[...e.autoHide,o]}}function gs(e,t,n,r=260){if(!e.main)return e;let{root:i,leaf:a}=vo(e.main,t);if(!a)return e;let o={id:`ah-${t}`,side:n,leaf:a,size:r};return{...e,main:i,autoHide:[...e.autoHide,o]}}function _s(e,t,n,r,i=260){let a=Jo(e,t);if(!a)return e;let o=Xo(e,t),s={id:r(),side:n,leaf:oo(r,[a],0),size:i};return{...o,autoHide:[...o.autoHide,s]}}function vs(e,t,n,r=.25){let i=e.autoHide.find(e=>e.id===t);if(!i)return e;let a=oo(n,i.leaf.panes,i.leaf.active);return{...e,autoHide:e.autoHide.filter(e=>e.id!==t),main:yo(e.main,a,i.side,n,r)}}function ys(e,t,n){return{...e,autoHide:e.autoHide.map(e=>e.id===t?{...e,size:Math.max(120,n)}:e)}}function bs(e,t){return Xo(e,t)}function xs(e){let t=[],n=e=>{if(t.push(e.id),e.type===`tabs`)for(let n of e.panes)t.push(n.id);else for(let t of e.children)n(t)};e.main&&n(e.main);for(let r of e.floating)t.push(r.id),n(r.leaf);for(let r of e.autoHide)t.push(r.id),n(r.leaf);return t}function Ss(e){let t=new Set,n=1,r=()=>{let e=`dm-d${n++}`;for(;t.has(e);)e=`dm-d${n++}`;return e},i=e=>{let n=t.has(e)?r():e;return t.add(n),n},a=e=>{let t=i(e.id);if(e.type===`tabs`)return t===e.id?e:{...e,id:t};let n=e.children.map(a);return t===e.id&&n.every((t,n)=>t===e.children[n])?e:{...e,id:t,children:n}},o=e.main?a(e.main):e.main,s=!1,c=e.floating.map(e=>{let t=i(e.id),n=a(e.leaf);return t===e.id&&n===e.leaf?e:(s=!0,{...e,id:t,leaf:n})}),l=!1,u=e.autoHide.map(e=>{let t=i(e.id),n=a(e.leaf);return t===e.id&&n===e.leaf?e:(l=!0,{...e,id:t,leaf:n})});return o===e.main&&!s&&!l?e:{...e,main:o,floating:s?c:e.floating,autoHide:l?u:e.autoHide}}function Cs(e,t){return t<=0?0:Math.max(0,Math.min(e,t-1))}function ws(e,t,n){return e.type===`tabs`?e.id===t?{...e,active:Cs(n,e.panes.length)}:e:{...e,children:e.children.map(e=>ws(e,t,n))}}function Ts(e,t,n){if(e.type===`tabs`){if(e.id!==t)return e;let r=[...e.panes,...n];return{...e,panes:r,active:r.length-1}}return{...e,children:e.children.map(e=>Ts(e,t,n))}}function Es(e,t,n,r,i,a){let o=e=>{if(e.type===`tabs`){if(e.id!==t)return e;let o=i?[n,e]:[e,n];return{type:`group`,id:a(),direction:r,children:o,sizes:[.5,.5]}}return{...e,children:e.children.map(o)}};return o(e)}var Ds=y(`<div class="sv-popout-host svelte-1bgr5p6"><!></div>`);function Os(e,t){var n=Ds(),r=B(n);o(r,()=>t.pane,()=>t.paneData),H(n),d(e,n)}function ks(e){let t=window.open(``,``,`width=${e.width??480},height=${e.height??360}`);if(!t)return null;let n=t.document;n.title=e.pane.title;for(let e of Array.from(document.styleSheets))try{let t=Array.from(e.cssRules).map(e=>e.cssText).join(`
|
|
3
3
|
`),r=n.createElement(`style`);r.textContent=t,n.head.appendChild(r)}catch{if(e.href){let t=n.createElement(`link`);t.rel=`stylesheet`,t.href=e.href,n.head.appendChild(t)}}let r=getComputedStyle(e.themeSource);for(let e of Fr){let t=r.getPropertyValue(e).trim();t&&n.documentElement.style.setProperty(e,t)}n.body.style.margin=`0`,n.body.style.background=r.getPropertyValue(`--sg-bg`).trim()||`#fff`,n.body.style.color=r.getPropertyValue(`--sg-fg`).trim()||`#0f172a`,n.body.style.font=r.font;let i=g(Os,{target:n.body,props:{pane:e.paneSnippet,paneData:e.pane}}),a=!1,o=t=>{if(!a){a=!0,clearInterval(s);try{c(i)}catch{}t&&e.onClose(e.pane.id)}};t.addEventListener(`beforeunload`,()=>o(!0));let s=setInterval(()=>{t.closed&&o(!0)},400);return{pane:e.pane,win:t,destroy:()=>{o(!1);try{t.close()}catch{}}}}var As=0;function js(){return As+=1,As*1e6}var Ms=y(`<button type="button" class="sv-dockmgr__pact svelte-1wq23f5" title="Pop out to a new window">⧉</button>`),Ns=y(`<button type="button" class="sv-dockmgr__pact svelte-1wq23f5" title="Float">▢</button> <!>`,1),Ps=y(`<button type="button" class="sv-dockmgr__pact svelte-1wq23f5" aria-label="Maximize panel"> </button> <button type="button" class="sv-dockmgr__pact svelte-1wq23f5" title="Auto-hide" aria-label="Auto-hide panel">▿</button> <!>`,1),Fs=y(`<button type="button" class="sv-dockmgr__pact svelte-1wq23f5" title="Pin">📌</button>`),Is=y(`<button type="button"> </button>`),Ls=y(`<div></div>`),Rs=y(`<div class="sv-dockmgr__empty svelte-1wq23f5" data-dock-empty="">Drag a panel here</div>`),zs=y(`<div><!> <div></div></div>`),Bs=y(`<div class="sv-dockmgr__winresize svelte-1wq23f5"></div>`),Vs=y(`<div class="sv-dockmgr__winbody svelte-1wq23f5"><!></div> <!>`,1),Hs=y(`<div><div class="sv-dockmgr__winbar svelte-1wq23f5"><span class="sv-dockmgr__wintitle svelte-1wq23f5"> </span> <div class="sv-dockmgr__winctl svelte-1wq23f5"><button type="button" title="Auto-hide" aria-label="Auto-hide window" class="svelte-1wq23f5">▿</button> <button type="button" aria-label="Minimize window" class="svelte-1wq23f5">–</button> <button type="button" aria-label="Maximize window" class="svelte-1wq23f5"> </button> <button type="button" class="sv-dockmgr__winclose svelte-1wq23f5" title="Close" aria-label="Close window">×</button></div></div> <!></div>`),Us=y(`<div aria-hidden="true"></div>`),Ws=y(`<div class="sv-dockmgr__ghost svelte-1wq23f5"> </div>`),Gs=y(`<div class="sv-dockmgr svelte-1wq23f5"><!> <div class="sv-dockmgr__main svelte-1wq23f5"><!></div> <!> <!> <!> <!></div>`);function Ks(e,t){ue(t,!0);let n=(e,t=ee)=>{let n=M(()=>t().panes[t().active]??t().panes[0]);var r=Ps(),a=I(r),o=B(a,!0);H(a);var s=k(a,2),c=k(s,2),l=e=>{var t=Ns(),r=I(t),i=k(r,2),a=e=>{var t=Ms();w(()=>R(t,`aria-label`,`Pop out ${p(n).title??``}`)),x(`pointerdown`,t,e=>e.stopPropagation()),x(`click`,t,e=>{e.stopPropagation(),Ne(p(n).id)}),d(e,t)};h(i,e=>{u()&&e(a)}),w(()=>R(r,`aria-label`,`Float ${p(n).title??``}`)),x(`pointerdown`,r,e=>e.stopPropagation()),x(`click`,r,e=>{e.stopPropagation(),je(p(n).id)}),d(e,t)};h(c,e=>{p(n)&&e(l)}),w(()=>{R(a,`title`,i().maximizedLeaf===t().id?`Restore`:`Maximize`),v(o,i().maximizedLeaf===t().id?`❐`:`⤢`)}),x(`pointerdown`,a,e=>e.stopPropagation()),x(`click`,a,e=>{e.stopPropagation();let n=i().maximizedLeaf!==t().id;E(ms(i(),t().id)),g({type:`maximize`,tabsId:t().id,maximized:n})}),x(`pointerdown`,s,e=>e.stopPropagation()),x(`click`,s,e=>{e.stopPropagation(),p(n)&&ze(p(n).id)}),d(e,r)},r=(e,t=ee)=>{let n=M(()=>t().panes[t().active]??t().panes[0]);var r=m(),i=I(r),a=e=>{var t=Fs();w(()=>R(t,`aria-label`,`Pin ${p(n).title??``}`)),x(`pointerdown`,t,e=>e.stopPropagation()),x(`click`,t,e=>{e.stopPropagation(),Be(p(n).id)}),d(e,t)};h(i,e=>{p(n)&&e(a)}),d(e,r)},i=z(t,`workspace`,15),a=z(t,`minSize`,3,80),o=z(t,`reorderEnabled`,3,!0),s=z(t,`headerPosition`,3,`top`),c=z(t,`keepAlive`,3,!1),l=z(t,`hideSingleTab`,3,!1),u=z(t,`allowPopout`,3,!1),f=z(t,`locked`,3,!1),g=e=>t.onEvent?.(e),_=j(null),y=new Map,S=js(),C=()=>{let e=new Set(xs(i())),t=`dm-${S++}`;for(;e.has(t);)t=`dm-${S++}`;return t};function E(e){i(e),t.onChange?.(e)}let D=j(null);function O(e){e!==p(D)&&(V(D,e,!0),e&&g({type:`focus`,paneId:e}))}let te=M(()=>{if(!p(D))return null;let e=t=>{if(t.type===`tabs`)return t.panes.some(e=>e.id===p(D))?t.id:null;for(let n of t.children){let t=e(n);if(t)return t}return null};if(i().main){let t=e(i().main);if(t)return t}let t=i().floating.find(e=>e.leaf.panes.some(e=>e.id===p(D)));return t?t.leaf.id:null}),ne=(e,t)=>{let n=ps(i(),e)?.panes[t]?.id;E(ts(i(),e,t)),n&&(O(n),g({type:`activePane`,tabsId:e,paneId:n}))};function re(e,t){if(p(De)===e.id&&e.leaf.active===t){V(De,null);return}e.leaf.active!==t&&ne(e.leaf.id,t),V(De,e.id,!0)}let N=e=>{E(bs(i(),e)),g({type:`close`,paneId:e})},P=(e,t)=>E(Qo(i(),e,t));function F(e){let t=n=>{if(n.type===`tabs`)return n.panes.find(t=>t.id===e)?.title??null;for(let e of n.children){let n=t(e);if(n)return n}return null};if(i().main){let e=t(i().main);if(e)return e}for(let t of i().floating){let n=t.leaf.panes.find(t=>t.id===e);if(n)return n.title}for(let t of i().autoHide){let n=t.leaf.panes.find(t=>t.id===e);if(n)return n.title}return``}let ie=j(null),ae=j(null),oe=null,ce=j(null),L=j(null),le=M(()=>p(L)?{tabsId:p(L).tabsId,zone:p(L).zone,centerOnly:p(L).surface!==`main`}:null),de=M(()=>p(ae)&&p(ae).kind===`reorder`?{tabsId:p(ae).tabsId,index:p(ae).index}:null),fe=M(()=>p(ae)&&p(ae).kind===`autohide`?p(ae).side:null);function me(e,t,n,r){let i=t-(e.left+e.right)/2,a=n-(e.top+e.bottom)/2,o=(e,t)=>Math.abs(i-e)<=15&&Math.abs(a-t)<=15;return o(0,0)?`center`:r?o(-30,0)?`left`:o(30,0)?`right`:o(0,-30)?`top`:o(0,30)?`bottom`:null:null}function ge(e,t,n){O(t),oe={paneId:t,sourceTabsId:n,sx:e.clientX,sy:e.clientY},window.addEventListener(`pointermove`,xe),window.addEventListener(`pointerup`,Se)}let _e=M(()=>s()===`left`||s()===`right`);function ye(e,t,n){let r=Array.from(e.querySelectorAll(`[data-dock-tab]`));for(let e=0;e<r.length;e++){let i=r[e].getBoundingClientRect();if(p(_e)?n<i.top+i.height/2:t<i.left+i.width/2)return e}return r.length}function be(e,t){V(L,null);let n=document.elementFromPoint(e,t);if(!n||!p(_)?.contains(n))return{kind:`float`};let r=n.closest(`[data-dock-tabs]`),i=n.closest(`.sv-dock__tabstrip`);if(o()&&r&&i&&r.dataset.dockTabs===oe.sourceTabsId)return{kind:`reorder`,tabsId:oe.sourceTabsId,index:ye(i,e,t)};{let n=p(_).getBoundingClientRect(),r=e-n.left,i=n.right-e,a=t-n.top,o=n.bottom-t,s=Math.min(r,i,a,o);if(s>=0&&s<=22)return{kind:`autohide`,side:s===r?`left`:s===i?`right`:s===a?`top`:`bottom`}}if(r){let n=r.closest(`[data-dock-surface]`)?.dataset.dockSurface??`main`,i=n===`main`,a=me(r.getBoundingClientRect(),e,t,i);return V(L,{tabsId:r.dataset.dockTabs,surface:n,zone:a},!0),a?{kind:`dock`,surface:n,tabsId:r.dataset.dockTabs,zone:a}:{kind:`float`}}return n.closest(`[data-dock-empty]`)?{kind:`empty-main`}:{kind:`float`}}function xe(e){if(oe){if(!p(ie)){if(Math.hypot(e.clientX-oe.sx,e.clientY-oe.sy)<5)return;V(ie,{title:F(oe.paneId),x:e.clientX,y:e.clientY},!0),document.body.style.userSelect=`none`,document.body.style.cursor=`grabbing`}V(ie,{...p(ie),x:e.clientX,y:e.clientY},!0),V(ae,be(e.clientX,e.clientY),!0)}}function Se(e){if(window.removeEventListener(`pointermove`,xe),window.removeEventListener(`pointerup`,Se),oe&&p(ie)&&p(ae)){let{paneId:t}=oe;if(p(ae).kind===`reorder`){let e=we(p(ae).tabsId,t);e>=0&&E(Zo(i(),p(ae).tabsId,e,p(ae).index>e?p(ae).index-1:p(ae).index))}else if(p(ae).kind===`dock`)E(ns(i(),t,p(ae).tabsId,p(ae).zone,C));else if(p(ae).kind===`autohide`)E(_s(i(),t,p(ae).side,C));else if(p(ae).kind===`empty-main`)E(is(i(),t,C));else{let n=p(_)?.getBoundingClientRect(),r=e.clientX-(n?.left??0)-40,a=e.clientY-(n?.top??0)-12;E(as(i(),t,{x:Math.max(0,r),y:Math.max(0,a),width:340,height:240},C))}}oe=null,V(ie,null),V(ae,null),V(L,null),document.body.style.userSelect=``,document.body.style.cursor=``}function we(e,t){let n=r=>{if(r.type===`tabs`)return r.id===e?r.panes.findIndex(e=>e.id===t):-1;for(let e of r.children){let t=n(e);if(t>=0)return t}return-1};if(i().main){let e=n(i().main);if(e>=0)return e}let r=i().floating.find(t=>t.leaf.id===e);return r?r.leaf.panes.findIndex(e=>e.id===t):-1}function Te(e,t){if(e.button!==0)return;E(ls(i(),t));let n=i().floating.find(e=>e.id===t);if(!n)return;let r=e.clientX-n.x,a=e.clientY-n.y;V(ce,t,!0);let o=null,s=null,c=e=>{E(ss(i(),t,e.clientX-r,e.clientY-a));let n=p(_)?.getBoundingClientRect();if(n){let t=e.clientX-n.left,r=n.right-e.clientX,i=e.clientY-n.top,a=n.bottom-e.clientY,c=Math.min(t,r,i,a);if(c>=0&&c<=22){s=c===t?`left`:c===r?`right`:c===i?`top`:`bottom`,V(ae,{kind:`autohide`,side:s},!0),V(L,null),o=null;return}}s=null,V(ae,null);let c=document.elementFromPoint(e.clientX,e.clientY)?.closest(`[data-dock-tabs]`),l=c?c.closest(`[data-dock-surface]`)?.dataset.dockSurface:void 0;if(c&&l===`main`){let t=me(c.getBoundingClientRect(),e.clientX,e.clientY,!0);V(L,{tabsId:c.dataset.dockTabs,surface:`main`,zone:t},!0),o=t?{tabsId:c.dataset.dockTabs,zone:t}:null}else V(L,null),o=null},l=()=>{if(window.removeEventListener(`pointermove`,c),window.removeEventListener(`pointerup`,l),s){let e=s===`left`||s===`right`?n.width:n.height;E(hs(i(),t,s,C,Math.round(e)))}else o&&E(os(i(),t,o.tabsId,o.zone,C));V(ce,null),V(ae,null),V(L,null),document.body.style.userSelect=``};document.body.style.userSelect=`none`,window.addEventListener(`pointermove`,c),window.addEventListener(`pointerup`,l)}function Ee(e,t){if(e.button!==0)return;e.stopPropagation();let n=i().floating.find(e=>e.id===t);if(!n)return;let r=e.clientX,a=e.clientY,o=n.width,s=n.height,c=e=>E(cs(i(),t,o+(e.clientX-r),s+(e.clientY-a))),l=()=>{window.removeEventListener(`pointermove`,c),window.removeEventListener(`pointerup`,l),document.body.style.userSelect=``};document.body.style.userSelect=`none`,window.addEventListener(`pointermove`,c),window.addEventListener(`pointerup`,l)}let De=j(null),Oe=e=>(e.side===`left`||e.side===`right`?`width`:`height`)+`: ${e.size}px`;T(()=>{if(!p(De))return;let e=e=>{let t=e.target;t?.closest(`.sv-dockmgr__flyout`)||t?.closest(`.sv-dockmgr__strip`)||V(De,null)},t=e=>{e.key===`Escape`&&V(De,null)};return window.addEventListener(`pointerdown`,e,!0),window.addEventListener(`keydown`,t),()=>{window.removeEventListener(`pointerdown`,e,!0),window.removeEventListener(`keydown`,t)}});let ke=M(()=>({left:i().autoHide.some(e=>e.side===`left`)?34:0,right:i().autoHide.some(e=>e.side===`right`)?34:0,top:i().autoHide.some(e=>e.side===`top`)?34:0,bottom:i().autoHide.some(e=>e.side===`bottom`)?34:0})),Ae=M(()=>i().maximizedLeaf?ps(i(),i().maximizedLeaf):null);function je(e){let t=p(_)?.getBoundingClientRect();E(as(i(),e,{x:(t?t.width:400)*.3,y:60,width:340,height:240},C)),g({type:`float`,paneId:e})}function Me(e){let t=n=>{if(n.type===`tabs`)return n.panes.find(t=>t.id===e)??null;for(let e of n.children){let n=t(e);if(n)return n}return null};if(i().main){let e=t(i().main);if(e)return e}for(let t of i().floating){let n=t.leaf.panes.find(t=>t.id===e);if(n)return n}for(let t of i().autoHide){let n=t.leaf.panes.find(t=>t.id===e);if(n)return n}return null}function Ne(e){if(y.has(e)||!p(_))return;let n=Me(e);if(!n)return;let r=bs(i(),e),a=ks({pane:n,paneSnippet:t.pane,themeSource:p(_),onClose:e=>Pe(e)});if(!a){je(e);return}y.set(e,a),E(r),g({type:`popout`,paneId:e})}function Pe(e){let t=y.get(e);t&&(y.delete(e),t.destroy(),E(rs(i(),t.pane,C)))}function Fe(e){let t=n=>{if(n.type===`tabs`)return n.panes.some(t=>t.id===e)?n.id:null;for(let e of n.children){let n=t(e);if(n)return n}return null};return i().main?t(i().main):null}let Ie=()=>p(_)?.querySelector(`.sv-dockmgr__main`)?.getBoundingClientRect(),Le=e=>p(_)?.querySelector(`[data-dock-tabs="${CSS.escape(e)}"]`)?.getBoundingClientRect();function Re(e){let t=Le(e),n=Ie();if(!t||!n||n.width<=0||n.height<=0)return`left`;let r=(t.left+t.right)/2,i=(t.top+t.bottom)/2,a=(r-n.left)/n.width,o=(n.right-r)/n.width,s=(i-n.top)/n.height,c=(n.bottom-i)/n.height,l=Math.min(a,o,s,c);return l===a?`left`:l===o?`right`:l===s?`top`:`bottom`}function ze(e){let t=Fe(e);if(!t)return;let n=Re(t),r=Le(t),a=r?Math.round(n===`left`||n===`right`?r.width:r.height):260;E(gs(i(),t,n,a)),g({type:`autoHide`,paneId:e,side:n})}function Be(e){let t=i().autoHide.find(t=>t.leaf.panes.some(t=>t.id===e));if(!t)return;let n=Ie(),r=n?t.side===`left`||t.side===`right`?n.width:n.height:1e3,a=Math.min(.5,Math.max(.12,t.size/(r||1e3)));E(vs(i(),t.id,C,a)),g({type:`pin`,paneId:e})}function Ve(e){let t=i().floating.find(t=>t.id===e),n=Ie();if(!t||!n)return;let r=t.x+t.width/2,a=t.y+t.height/2,o=r,s=n.width-r,c=a,l=n.height-a,u=Math.min(o,s,c,l),d=u===o?`left`:u===s?`right`:u===c?`top`:`bottom`,f=d===`left`||d===`right`?t.width:t.height;E(hs(i(),e,d,C,Math.round(f)))}let He=e=>({duration:160,x:e===`left`?-20:e===`right`?20:0,y:e===`top`?-20:e===`bottom`?20:0});function Ue(e,t){if(e.button!==0)return;e.preventDefault(),e.stopPropagation();let n=t.size,r=e.clientX,a=e.clientY,o=e=>{let o=t.side===`left`?e.clientX-r:t.side===`right`?r-e.clientX:t.side===`top`?e.clientY-a:a-e.clientY;E(ys(i(),t.id,n+o))},s=()=>{window.removeEventListener(`pointermove`,o),window.removeEventListener(`pointerup`,s),document.body.style.userSelect=``};document.body.style.userSelect=`none`,window.addEventListener(`pointermove`,o),window.addEventListener(`pointerup`,s)}t.onReady?.({getState:()=>i(),setState:e=>E(e),float:e=>je(e),popout:e=>Ne(e),autoHide:e=>ze(e),maximize:e=>{ps(i(),e)&&E(ms(i(),e))},close:e=>E(bs(i(),e)),focus:e=>O(e)}),ve(()=>{for(let e of y.values())e.destroy();y.clear()});var We=Gs(),Ge=B(We);se(Ge,16,()=>[`left`,`right`,`top`,`bottom`],e=>e,(e,t)=>{let n=M(()=>i().autoHide.filter(e=>e.side===t));var r=m(),a=I(r),o=e=>{var r=Ls();let i;se(r,21,()=>p(n),e=>e.id,(e,t)=>{var n=m(),r=I(n);se(r,19,()=>p(t).leaf.panes,e=>e.id,(e,n,r)=>{var i=Is();let a;var o=B(i,!0);H(i),w(()=>{a=Ce(i,1,`sv-dockmgr__stab svelte-1wq23f5`,null,a,{"is-open":p(De)===p(t).id&&p(t).leaf.active===p(r)}),R(i,`title`,p(n).title),v(o,p(n).title)}),x(`click`,i,()=>re(p(t),p(r))),d(e,i)}),d(e,n)}),H(r),w(()=>{Ce(r,1,`sv-dockmgr__strip sv-dockmgr__strip--${t??``}`,`svelte-1wq23f5`),i=A(r,``,i,{top:t===`left`||t===`right`?`${p(ke).top}px`:void 0,bottom:t===`left`||t===`right`?`${p(ke).bottom}px`:void 0})}),d(e,r)};h(a,e=>{p(n).length&&e(o)}),d(e,r)});var Ke=k(Ge,2);let qe;var Je=B(Ke),Ye=e=>{Wo(e,{get layout(){return p(Ae)},get pane(){return t.pane},get minSize(){return a()},get headerPosition(){return s()},get focusedLeaf(){return p(te)},get keepAlive(){return c()},get hideSingleTab(){return l()},get locked(){return f()},surface:`main`,onBeginDrag:ge,get externalDrop(){return p(le)},get externalReorder(){return p(de)},onActivate:ne,onClose:N,onResize:P,get leafActions(){return n}})},Xe=e=>{Wo(e,{get layout(){return i().main},get pane(){return t.pane},get minSize(){return a()},get headerPosition(){return s()},get focusedLeaf(){return p(te)},get keepAlive(){return c()},get hideSingleTab(){return l()},get locked(){return f()},surface:`main`,onBeginDrag:ge,get externalDrop(){return p(le)},get externalReorder(){return p(de)},onActivate:ne,onClose:N,onResize:P,get leafActions(){return n}})},Ze=e=>{var t=Rs();d(e,t)};h(Je,e=>{p(Ae)?e(Ye):i().main?e(Xe,1):e(Ze,-1)}),H(Ke);var Qe=k(Ke,2);se(Qe,17,()=>i().autoHide,e=>e.id,(e,n)=>{var i=m(),o=I(i),l=e=>{var i=zs(),o=B(i);Wo(o,{get layout(){return p(n).leaf},get pane(){return t.pane},get minSize(){return a()},get headerPosition(){return s()},get focusedLeaf(){return p(te)},get keepAlive(){return c()},hideSingleTab:!0,get surface(){return p(n).id},onBeginDrag:ge,get externalDrop(){return p(le)},get externalReorder(){return p(de)},onActivate:ne,onClose:N,onResize:P,get leafActions(){return r}});var l=k(o,2);H(i),w(e=>{Ce(i,1,`sv-dockmgr__flyout sv-dockmgr__flyout--${p(n).side??``}`,`svelte-1wq23f5`),A(i,e),Ce(l,1,`sv-dockmgr__flyresize sv-dockmgr__flyresize--${p(n).side??``}`,`svelte-1wq23f5`)},[()=>Oe(p(n))]),x(`pointerdown`,l,e=>Ue(e,p(n))),b(3,i,()=>Lr,()=>He(p(n).side)),d(e,i)};h(o,e=>{p(De)===p(n).id&&e(l)}),d(e,i)});var $e=k(Qe,2);se($e,17,()=>i().floating,e=>e.id,(e,n)=>{var r=Hs();let o,u;var f=B(r),m=B(f),_=B(m,!0);H(m);var y=k(m,2),b=B(y),S=k(b,2),C=k(S,2),T=B(C,!0);H(C);var D=k(C,2);H(y),H(f);var O=k(f,2),ee=e=>{var r=Vs(),i=I(r);Wo(B(i),{get layout(){return p(n).leaf},get pane(){return t.pane},get minSize(){return a()},get headerPosition(){return s()},get focusedLeaf(){return p(te)},get keepAlive(){return c()},get hideSingleTab(){return l()},get surface(){return p(n).id},onBeginDrag:ge,get externalDrop(){return p(le)},get externalReorder(){return p(de)},onActivate:ne,onClose:N,onResize:P}),H(i);var o=k(i,2),u=e=>{var t=Bs();x(`pointerdown`,t,e=>Ee(e,p(n).id)),d(e,t)};h(o,e=>{p(n).maximized||e(u)}),d(e,r)};h(O,e=>{p(n).minimized||e(ee)}),H(r),w(()=>{o=Ce(r,1,`sv-dockmgr__window svelte-1wq23f5`,null,o,{"is-minimized":p(n).minimized,"is-maximized":p(n).maximized}),u=A(r,``,u,{left:p(n).maximized?void 0:`${p(n).x}px`,top:p(n).maximized?void 0:`${p(n).y}px`,width:p(n).maximized?void 0:`${p(n).width}px`,height:p(n).maximized||p(n).minimized?void 0:`${p(n).height}px`,"z-index":100+p(n).z,"pointer-events":p(ce)===p(n).id?`none`:void 0}),v(_,p(n).leaf.panes[p(n).leaf.active]?.title??`Window`),R(S,`title`,p(n).minimized?`Restore`:`Minimize`),R(C,`title`,p(n).maximized?`Restore`:`Maximize`),v(T,p(n).maximized?`❐`:`□`)}),x(`pointerdown`,r,()=>E(ls(i(),p(n).id))),x(`dblclick`,f,()=>E(ds(i(),p(n).id))),x(`pointerdown`,f,e=>{p(n).maximized||Te(e,p(n).id)}),x(`pointerdown`,b,e=>e.stopPropagation()),x(`click`,b,e=>{e.stopPropagation(),Ve(p(n).id),g({type:`window`,windowId:p(n).id,action:`autoHide`})}),x(`pointerdown`,S,e=>e.stopPropagation()),x(`click`,S,e=>{e.stopPropagation(),E(us(i(),p(n).id,!p(n).minimized)),g({type:`window`,windowId:p(n).id,action:`minimize`})}),x(`pointerdown`,C,e=>e.stopPropagation()),x(`click`,C,e=>{e.stopPropagation(),E(ds(i(),p(n).id)),g({type:`window`,windowId:p(n).id,action:`maximize`})}),x(`pointerdown`,D,e=>e.stopPropagation()),x(`click`,D,e=>{e.stopPropagation(),E(fs(i(),p(n).id)),g({type:`window`,windowId:p(n).id,action:`close`})}),d(e,r)});var et=k($e,2),tt=e=>{var t=Us();w(()=>Ce(t,1,`sv-dockmgr__edgehint sv-dockmgr__edgehint--${p(fe)??``}`,`svelte-1wq23f5`)),d(e,t)};h(et,e=>{p(fe)&&e(tt)});var nt=k(et,2),rt=e=>{var t=Ws();let n;var r=B(t,!0);H(t),w(()=>{n=A(t,``,n,{left:`${p(ie).x+12}px`,top:`${p(ie).y+12}px`}),v(r,p(ie).title)}),d(e,t)};h(nt,e=>{p(ie)&&e(rt)}),H(We),pe(We,e=>V(_,e),()=>p(_)),w(()=>qe=A(Ke,``,qe,{padding:`${p(ke).top}px ${p(ke).right}px ${p(ke).bottom}px ${p(ke).left}px`})),d(e,We),he()}u([`pointerdown`,`click`,`dblclick`]);var qs=y(`<span class="sv-badge__dot svelte-1sax05i" aria-hidden="true"></span>`),Js=y(`<span><!> <!></span>`);function Ys(e,t){let n=z(t,`variant`,3,`neutral`),r=z(t,`size`,3,`md`),i=z(t,`pill`,3,!0),a=z(t,`dot`,3,!1);var s=Js();let c;var l=B(s),u=e=>{var t=qs();d(e,t)};h(l,e=>{a()&&e(u)});var f=k(l,2);o(f,()=>t.children??ee),H(s),w(()=>c=Ce(s,1,`sv-badge sv-badge--${n()??``} sv-badge--${r()??``}`,`svelte-1sax05i`,c,{"is-pill":i(),"has-dot":a()})),d(e,s)}var Xs=y(`<span aria-hidden="true"></span>`),Zs=y(`<div class="sv-skel svelte-wr6pkw" role="status" aria-busy="true" aria-live="polite"><span class="sv-skel__sr svelte-wr6pkw">Loading</span> <!></div>`);function Qs(e,t){let n=z(t,`variant`,3,`text`),r=z(t,`lines`,3,1),a=z(t,`animated`,3,!0),o=M(()=>n()===`text`),s=M(()=>p(o)?Math.max(1,r()):1);var c=Zs(),l=k(B(c),2);se(l,17,()=>Array(p(s)),i,(e,r,i)=>{var c=Xs();let l,u;w(()=>{l=Ce(c,1,`sv-skel__box sv-skel__box--${n()??``}`,`svelte-wr6pkw`,l,{"is-animated":a(),"is-last":p(o)&&i===p(s)-1&&p(s)>1}),u=A(c,``,u,{width:t.width,height:t.height,"border-radius":n()===`circle`?`50%`:t.radius})}),d(e,c)}),H(c),d(e,c)}var $s=y(`<h3 class="sv-card__title svelte-kghtm5"> </h3>`),ec=y(`<p class="sv-card__subtitle svelte-kghtm5"> </p>`),tc=y(`<!> <!>`,1),nc=y(`<div class="sv-card__header svelte-kghtm5"><!></div>`),rc=y(`<div class="sv-card__footer svelte-kghtm5"><!></div>`),ic=y(`<div><!> <div><!></div> <!></div>`);function ac(e,t){let n=z(t,`hoverable`,3,!1),r=z(t,`flush`,3,!1),i=M(()=>!!t.header||!!t.title||!!t.subtitle);var a=ic();let s;var c=B(a),l=e=>{var n=nc(),r=B(n),i=e=>{var n=m(),r=I(n);o(r,()=>t.header),d(e,n)},a=e=>{var n=tc(),r=I(n),i=e=>{var n=$s(),r=B(n,!0);H(n),w(()=>v(r,t.title)),d(e,n)};h(r,e=>{t.title&&e(i)});var a=k(r,2),o=e=>{var n=ec(),r=B(n,!0);H(n),w(()=>v(r,t.subtitle)),d(e,n)};h(a,e=>{t.subtitle&&e(o)}),d(e,n)};h(r,e=>{t.header?e(i):e(a,-1)}),H(n),d(e,n)};h(c,e=>{p(i)&&e(l)});var u=k(c,2);let f;var g=B(u);o(g,()=>t.children??ee),H(u);var _=k(u,2),y=e=>{var n=rc(),r=B(n);o(r,()=>t.footer),H(n),d(e,n)};h(_,e=>{t.footer&&e(y)}),H(a),w(()=>{s=Ce(a,1,`sv-card svelte-kghtm5`,null,s,{"is-hoverable":n()}),f=Ce(u,1,`sv-card__body svelte-kghtm5`,null,f,{"is-flush":r()})}),d(e,a)}var oc=y(`<span class="sv-alert__icon svelte-5ash61" aria-hidden="true"><!></span>`),sc=y(`<div class="sv-alert__title svelte-5ash61"> </div>`),cc=y(`<div class="sv-alert__msg svelte-5ash61"><!></div>`),lc=y(`<div class="sv-alert__actions svelte-5ash61"><!></div>`),uc=y(`<button type="button" class="sv-alert__x svelte-5ash61" aria-label="Dismiss">×</button>`),dc=y(`<div><!> <div class="sv-alert__body svelte-5ash61"><!> <!> <!></div> <!></div>`);function fc(e,t){ue(t,!0);let n=z(t,`variant`,3,`info`),r=z(t,`dismissible`,3,!1),i=z(t,`hideIcon`,3,!1),a=z(t,`soft`,3,!1),s=j(!0);function c(){V(s,!1),t.onDismiss?.()}let l=e=>e===`success`?`✓`:e===`warning`?`⚠`:e===`danger`?`✕`:e===`neutral`?`•`:`ℹ`;var u=m(),f=I(u),g=e=>{var s=dc();let u;var f=B(s),p=e=>{var r=oc(),i=B(r),a=e=>{var n=m(),r=I(n);o(r,()=>t.icon),d(e,n)},s=e=>{var t=S();w(e=>v(t,e),[()=>l(n())]),d(e,t)};h(i,e=>{t.icon?e(a):e(s,-1)}),H(r),d(e,r)};h(f,e=>{i()||e(p)});var g=k(f,2),_=B(g),y=e=>{var n=sc(),r=B(n,!0);H(n),w(()=>v(r,t.title)),d(e,n)};h(_,e=>{t.title&&e(y)});var b=k(_,2),C=e=>{var n=cc(),r=B(n);o(r,()=>t.children),H(n),d(e,n)};h(b,e=>{t.children&&e(C)});var T=k(b,2),E=e=>{var n=lc(),r=B(n);o(r,()=>t.actions),H(n),d(e,n)};h(T,e=>{t.actions&&e(E)}),H(g);var D=k(g,2),O=e=>{var t=uc();x(`click`,t,c),d(e,t)};h(D,e=>{r()&&e(O)}),H(s),w(()=>{u=Ce(s,1,`sv-alert sv-alert--${n()??``}`,`svelte-5ash61`,u,{"is-soft":a()}),R(s,`role`,n()===`danger`||n()===`warning`?`alert`:`status`)}),d(e,s)};h(f,e=>{p(s)&&e(g)}),d(e,u),he()}u([`click`]);var pc=De(`<svg viewBox="0 0 48 48" width="44" height="44" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="8" y="12" width="32" height="26" rx="3"></rect><path d="M8 20h32"></path><path d="M16 28h10"></path></svg>`),mc=y(`<div class="sv-empty__title svelte-1hs0rt"> </div>`),hc=y(`<p class="sv-empty__desc svelte-1hs0rt"> </p>`),gc=y(`<div class="sv-empty__actions svelte-1hs0rt"><!></div>`),_c=y(`<div><div class="sv-empty__icon svelte-1hs0rt" aria-hidden="true"><!></div> <!> <!> <!></div>`);function vc(e,t){let n=z(t,`compact`,3,!1);var r=_c();let i;var a=B(r),s=B(a),c=e=>{var n=m(),r=I(n);o(r,()=>t.icon),d(e,n)},l=e=>{var t=pc();d(e,t)};h(s,e=>{t.icon?e(c):e(l,-1)}),H(a);var u=k(a,2),f=e=>{var n=mc(),r=B(n,!0);H(n),w(()=>v(r,t.title)),d(e,n)};h(u,e=>{t.title&&e(f)});var p=k(u,2),g=e=>{var n=hc(),r=B(n,!0);H(n),w(()=>v(r,t.description)),d(e,n)};h(p,e=>{t.description&&e(g)});var _=k(p,2),y=e=>{var n=gc(),r=B(n);o(r,()=>t.children),H(n),d(e,n)};h(_,e=>{t.children&&e(y)}),H(r),w(()=>i=Ce(r,1,`sv-empty svelte-1hs0rt`,null,i,{"is-compact":n()})),d(e,r)}var yc=y(`<span role="separator" aria-orientation="vertical"></span>`),bc=y(`<span class="sv-divider__label svelte-19bk4gc"><!></span>`),xc=y(`<div role="separator"><!></div>`);function Sc(e,t){let n=z(t,`orientation`,3,`horizontal`),r=z(t,`align`,3,`center`),i=z(t,`dashed`,3,!1),a=M(()=>!!t.label||!!t.children);var s=m(),c=I(s),l=e=>{var t=yc();let n;w(()=>n=Ce(t,1,`sv-divider sv-divider--v svelte-19bk4gc`,null,n,{"is-dashed":i()})),d(e,t)},u=e=>{var n=xc();let s;var c=B(n),l=e=>{var n=bc(),r=B(n),i=e=>{var n=m(),r=I(n);o(r,()=>t.children),d(e,n)},a=e=>{var n=S();w(()=>v(n,t.label)),d(e,n)};h(r,e=>{t.children?e(i):e(a,-1)}),H(n),d(e,n)};h(c,e=>{p(a)&&e(l)}),H(n),w(()=>s=Ce(n,1,`sv-divider sv-divider--h sv-divider--${r()??``}`,`svelte-19bk4gc`,s,{"is-dashed":i(),"has-label":p(a)})),d(e,n)};h(c,e=>{n()===`vertical`?e(l):e(u,-1)}),d(e,s)}var Cc=y(`<span class="sv-chip__lead svelte-1d0yb2p"><!></span>`),wc=y(`<button type="button" class="sv-chip__label sv-chip__label--btn svelte-1d0yb2p"><!></button>`),Tc=y(`<span class="sv-chip__label svelte-1d0yb2p"><!></span>`),Ec=y(`<button type="button" class="sv-chip__x svelte-1d0yb2p" aria-label="Remove">×</button>`),Dc=y(`<span><!> <!> <!></span>`);function Oc(e,t){let n=z(t,`variant`,3,`neutral`),r=z(t,`size`,3,`md`),i=z(t,`removable`,3,!1),a=z(t,`solid`,3,!1),s=z(t,`disabled`,3,!1);var c=Dc();let l;var u=B(c),f=e=>{var n=Cc(),r=B(n);o(r,()=>t.leading),H(n),d(e,n)};h(u,e=>{t.leading&&e(f)});var p=k(u,2),m=e=>{var n=wc(),r=B(n);o(r,()=>t.children??ee),H(n),w(()=>n.disabled=s()),x(`click`,n,function(...e){t.onClick?.apply(this,e)}),d(e,n)},g=e=>{var n=Tc(),r=B(n);o(r,()=>t.children??ee),H(n),d(e,n)};h(p,e=>{t.onClick?e(m):e(g,-1)});var _=k(p,2),v=e=>{var n=Ec();w(()=>n.disabled=s()),x(`click`,n,function(...e){t.onRemove?.apply(this,e)}),d(e,n)};h(_,e=>{i()&&e(v)}),H(c),w(()=>l=Ce(c,1,`sv-chip sv-chip--${n()??``} sv-chip--${r()??``}`,`svelte-1d0yb2p`,l,{"is-solid":a(),"is-disabled":s()})),d(e,c)}u([`click`]);var kc=y(`<span class="sv-stat__icon svelte-y05dbd" aria-hidden="true"><!></span>`),Ac=y(`<span><span class="sv-stat__arrow svelte-y05dbd" aria-hidden="true"> </span> </span>`),jc=y(`<span class="sv-stat__hint svelte-y05dbd"> </span>`),Mc=y(`<span class="sv-stat__chart svelte-y05dbd"><!></span>`),Nc=y(`<div class="sv-stat__foot svelte-y05dbd"><!> <!> <!></div>`),Pc=y(`<div class="sv-stat svelte-y05dbd"><div class="sv-stat__head svelte-y05dbd"><span class="sv-stat__label svelte-y05dbd"> </span> <!></div> <div class="sv-stat__value svelte-y05dbd"> </div> <!></div>`);function Fc(e,t){let n=z(t,`invert`,3,!1),r=M(()=>t.trend??(typeof t.delta==`number`?t.delta>0?`up`:t.delta<0?`down`:`flat`:void 0)),i=M(()=>t.delta==null?null:typeof t.delta==`number`?`${t.delta>0?`+`:``}${t.delta}%`:t.delta),a=M(()=>p(r)===`up`?`▲`:p(r)===`down`?`▼`:`→`),s=M(()=>p(r)===`flat`||!p(r)?`flat`:p(r)===`up`===n()?`bad`:`good`);var c=Pc(),l=B(c),u=B(l),f=B(u,!0);H(u);var m=k(u,2),g=e=>{var n=kc(),r=B(n);o(r,()=>t.icon),H(n),d(e,n)};h(m,e=>{t.icon&&e(g)}),H(l);var _=k(l,2),y=B(_,!0);H(_);var b=k(_,2),x=e=>{var n=Nc(),c=B(n),l=e=>{var t=Ac(),n=B(t),r=B(n,!0);H(n);var o=k(n,1,!0);H(t),w(()=>{Ce(t,1,`sv-stat__delta is-${p(s)??``}`,`svelte-y05dbd`),v(r,p(a)),v(o,p(i))}),d(e,t)};h(c,e=>{p(i)!=null&&p(r)&&e(l)});var u=k(c,2),f=e=>{var n=jc(),r=B(n,!0);H(n),w(()=>v(r,t.hint)),d(e,n)};h(u,e=>{t.hint&&e(f)});var m=k(u,2),g=e=>{var n=Mc(),r=B(n);o(r,()=>t.chart),H(n),d(e,n)};h(m,e=>{t.chart&&e(g)}),H(n),d(e,n)};h(b,e=>{(p(i)!=null||t.hint||t.chart)&&e(x)}),H(c),w(()=>{v(f,t.label),v(y,t.value)}),d(e,c)}var Ic=y(`<span class="sv-timeline__glyph svelte-1fawqjk"> </span>`),Lc=y(`<span class="sv-timeline__time svelte-1fawqjk"> </span>`),Rc=y(`<p class="sv-timeline__desc svelte-1fawqjk"> </p>`),zc=y(`<div class="sv-timeline__row svelte-1fawqjk"><span class="sv-timeline__title svelte-1fawqjk"> </span> <!></div> <!>`,1),Bc=y(`<li class="sv-timeline__item svelte-1fawqjk"><div class="sv-timeline__rail svelte-1fawqjk"><span class="sv-timeline__marker svelte-1fawqjk"><!></span></div> <div class="sv-timeline__content svelte-1fawqjk"><!></div></li>`),Vc=y(`<ol class="sv-timeline svelte-1fawqjk"></ol>`);function Hc(e,t){var n=Vc();se(n,23,()=>t.items,(e,t)=>e.id??t,(e,n)=>{var r=Bc(),i=B(r),a=B(i);let s;var c=B(a),l=e=>{var t=Ic(),r=B(t,!0);H(t),w(()=>v(r,p(n).icon)),d(e,t)};h(c,e=>{p(n).icon&&e(l)}),H(a),H(i);var u=k(i,2),f=B(u),g=e=>{var r=m(),i=I(r);o(i,()=>t.item,()=>p(n)),d(e,r)},_=e=>{var t=zc(),r=I(t),i=B(r),a=B(i,!0);H(i);var o=k(i,2),s=e=>{var t=Lc(),r=B(t,!0);H(t),w(()=>v(r,p(n).time)),d(e,t)};h(o,e=>{p(n).time&&e(s)}),H(r);var c=k(r,2),l=e=>{var t=Rc(),r=B(t,!0);H(t),w(()=>v(r,p(n).description)),d(e,t)};h(c,e=>{p(n).description&&e(l)}),w(()=>v(a,p(n).title)),d(e,t)};h(f,e=>{t.item?e(g):e(_,-1)}),H(u),H(r),w(()=>s=A(a,``,s,{"--c":p(n).color})),d(e,r)}),H(n),d(e,n)}var Uc=De(`<path fill-opacity="0.15" stroke="none"></path>`),Wc=De(`<path fill="none" stroke-linejoin="round" stroke-linecap="round"></path>`),Gc=De(`<rect rx="0.5"></rect>`),Kc=De(`<circle></circle>`),qc=De(`<svg class="sv-spark svelte-8kco1q" preserveAspectRatio="none" role="img"><!><!><!><!></svg>`);function Jc(e,t){ue(t,!0);let n=z(t,`type`,3,`line`),r=z(t,`width`,3,88),a=z(t,`height`,3,22),o=z(t,`lastPoint`,3,!0),s=M(()=>ot([...t.data],{type:n(),width:r(),height:a(),color:t.color,negativeColor:t.negativeColor,lineWidth:t.lineWidth,min:t.min,max:t.max,lastPoint:o()}));var c=m(),l=I(c),u=e=>{var r=qc(),a=B(r),c=e=>{var t=Uc();w(()=>{R(t,`d`,p(s).areaPath),R(t,`fill`,p(s).color)}),d(e,t)};h(a,e=>{n()===`area`&&p(s).areaPath&&e(c)});var l=k(a),u=e=>{var t=Wc();w(()=>{R(t,`d`,p(s).linePath),R(t,`stroke`,p(s).color),R(t,`stroke-width`,p(s).lineWidth)}),d(e,t)};h(l,e=>{(n()===`line`||n()===`area`)&&p(s).linePath&&e(u)});var f=k(l),g=e=>{var t=m(),n=I(t);se(n,17,()=>p(s).bars,i,(e,t)=>{var n=Gc();w(()=>{R(n,`x`,p(t).x),R(n,`y`,p(t).y),R(n,`width`,p(t).w),R(n,`height`,p(t).h),R(n,`fill`,p(t).negative?p(s).negativeColor:p(s).color)}),d(e,n)}),d(e,t)};h(f,e=>{(n()===`bar`||n()===`winloss`)&&e(g)});var _=k(f),v=e=>{var t=Kc();w(()=>{R(t,`cx`,p(s).lastPoint.x),R(t,`cy`,p(s).lastPoint.y),R(t,`r`,p(s).lineWidth+.8),R(t,`fill`,p(s).color)}),d(e,t)};h(_,e=>{o()&&p(s).lastPoint&&(n()===`line`||n()===`area`)&&e(v)}),H(r),w(()=>{R(r,`width`,p(s).width),R(r,`height`,p(s).height),R(r,`viewBox`,`0 0 ${p(s).width} ${p(s).height}`),R(r,`aria-label`,t.ariaLabel??`sparkline`)}),d(e,r)};h(l,e=>{p(s)&&e(u)}),d(e,c),he()}function Yc(e){let t=e.trim().split(/\s+/).filter(Boolean);return t.length?t.length===1?t[0].slice(0,2).toUpperCase():(t[0][0]+t[t.length-1][0]).toUpperCase():``}function Xc(e){let t=0;for(let n=0;n<e.length;n++)t=(t*31+e.charCodeAt(n))%360;return t}var Zc=y(`<img class="sv-avatar__img svelte-1a2dnvu"/>`),Qc=y(`<span class="sv-avatar__initials svelte-1a2dnvu" aria-hidden="true"> </span>`),$c=De(`<svg class="sv-avatar__ph svelte-1a2dnvu" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true"><path d="M12 12a5 5 0 1 0 0-10 5 5 0 0 0 0 10Zm0 2c-4.4 0-8 2.5-8 5.5V22h16v-2.5C20 16.5 16.4 14 12 14Z"></path></svg>`),el=y(`<span aria-hidden="true"></span>`),tl=y(`<span role="img"><!> <!></span>`);function nl(e,t){ue(t,!0);let n=z(t,`name`,3,``),r=z(t,`size`,3,`md`),i=z(t,`shape`,3,`circle`),a=M(()=>typeof r()==`number`?r():r()===`sm`?28:r()===`lg`?48:36),o=M(()=>Yc(n())),s=M(()=>t.color??`hsl(${Xc(n()||`?`)} 62% 45%)`),c=j(!1),u=M(()=>!!t.src&&!p(c));var f=tl();let m;var g=B(f),_=e=>{var r=Zc();w(()=>{R(r,`src`,t.src),R(r,`alt`,t.alt??n())}),C(`error`,r,()=>V(c,!0)),l(r),d(e,r)},y=e=>{var t=Qc(),n=B(t,!0);H(t),w(()=>v(n,p(o))),d(e,t)},b=e=>{var t=$c();d(e,t)};h(g,e=>{p(u)?e(_):p(o)?e(y,1):e(b,-1)});var x=k(g,2),S=e=>{var n=el();w(()=>Ce(n,1,`sv-avatar__status is-${t.status??``}`,`svelte-1a2dnvu`)),d(e,n)};h(x,e=>{t.status&&e(S)}),H(f),w(e=>{Ce(f,1,`sv-avatar sv-avatar--${i()??``}`,`svelte-1a2dnvu`),R(f,`aria-label`,t.alt??(n()||`avatar`)),R(f,`title`,n()||void 0),m=A(f,``,m,e)},[()=>({width:`${p(a)}px`,height:`${p(a)}px`,"font-size":`${Math.round(p(a)*.4)}px`,background:p(u)?void 0:p(s)})]),d(e,f),he()}var rl=y(`<span class="sv-avgroup__it svelte-194fwsf"><!></span>`),il=y(`<span class="sv-avgroup__more svelte-194fwsf"> </span>`),al=y(`<div class="sv-avgroup svelte-194fwsf" role="group"><!> <!></div>`);function ol(e,t){ue(t,!0);let n=z(t,`max`,3,4),r=z(t,`size`,3,`md`),a=M(()=>t.avatars.slice(0,n())),o=M(()=>Math.max(0,t.avatars.length-n())),s=M(()=>typeof r()==`number`?r():r()===`sm`?28:r()===`lg`?48:36),c=M(()=>Math.round(p(s)*.28));var l=al();let u;var f=B(l);se(f,17,()=>p(a),i,(e,t,n)=>{var i=rl();let o;nl(B(i),O(()=>p(t),{get size(){return r()}})),H(i),w(()=>o=A(i,``,o,{"z-index":p(a).length-n})),d(e,i)});var m=k(f,2),g=e=>{var t=il();let n;var r=B(t);H(t),w(e=>{n=A(t,``,n,e),v(r,`+${p(o)??``}`)},[()=>({width:`${p(s)}px`,height:`${p(s)}px`,"font-size":`${Math.round(p(s)*.36)}px`})]),d(e,t)};h(m,e=>{p(o)&&e(g)}),H(l),w(()=>u=A(l,``,u,{"--ov":`${p(c)}px`})),d(e,l),he()}var sl=y(`<span class="sv-rt__sep svelte-1enx0me" aria-hidden="true"></span>`),cl=y(`<button type="button"> </button>`),ll=y(`<div class="sv-rt__toolbar svelte-1enx0me" role="toolbar"></div>`),ul=y(`<div><!> <div role="textbox" aria-multiline="true"></div></div>`);function dl(e,t){ue(t,!0);let n=[`bold`,`italic`,`underline`,`strike`,`|`,`h1`,`h2`,`h3`,`p`,`|`,`ul`,`ol`,`quote`,`code`,`|`,`alignLeft`,`alignCenter`,`alignRight`,`|`,`link`,`clear`,`|`,`undo`,`redo`],r={bold:`B`,italic:`I`,underline:`U`,strike:`S`,h1:`H1`,h2:`H2`,h3:`H3`,p:`¶`,ul:`•`,ol:`1.`,quote:`❝`,code:`</>`,alignLeft:`≡`,alignCenter:`≣`,alignRight:`≡`,link:`🔗`,clear:`⌫`,undo:`↶`,redo:`↷`},a={bold:`Bold`,italic:`Italic`,underline:`Underline`,strike:`Strikethrough`,h1:`Heading 1`,h2:`Heading 2`,h3:`Heading 3`,p:`Paragraph`,ul:`Bullet list`,ol:`Numbered list`,quote:`Quote`,code:`Code block`,alignLeft:`Align left`,alignCenter:`Align center`,alignRight:`Align right`,link:`Link`,clear:`Clear formatting`,undo:`Undo`,redo:`Redo`,linkPrompt:`Link URL`,toolbar:`Formatting`},o=z(t,`value`,15,``),s=z(t,`placeholder`,3,``),c=z(t,`disabled`,3,!1),l=z(t,`readonly`,3,!1),u=z(t,`minHeight`,3,`160px`),f=z(t,`tools`,3,n),g=z(t,`ariaLabel`,3,`Rich text editor`),_=M(()=>Cr(a,t.messages)),y=xr(`sv-rt`),b=j(null),S=j(!1),E=j(!0),D=j(me({}));T(()=>{let e=o()??``;p(b)&&!p(S)&&p(b).innerHTML!==e&&(p(b).innerHTML=e),p(b)&&V(E,p(b).textContent.trim().length===0)});function O(){if(!p(b))return;let e=p(b).innerHTML;V(E,p(b).textContent.trim().length===0),o(e),t.onChange?.(e)}function ee(e){try{return document.queryCommandState(e)}catch{return!1}}function te(){V(D,{bold:ee(`bold`),italic:ee(`italic`),underline:ee(`underline`),strike:ee(`strikeThrough`),ul:ee(`insertUnorderedList`),ol:ee(`insertOrderedList`)},!0)}function ne(e,t){if(!(c()||l())){p(b)?.focus();try{document.execCommand(e,!1,t)}catch{}O(),te()}}let re={bold:()=>ne(`bold`),italic:()=>ne(`italic`),underline:()=>ne(`underline`),strike:()=>ne(`strikeThrough`),h1:()=>ne(`formatBlock`,`H1`),h2:()=>ne(`formatBlock`,`H2`),h3:()=>ne(`formatBlock`,`H3`),p:()=>ne(`formatBlock`,`P`),ul:()=>ne(`insertUnorderedList`),ol:()=>ne(`insertOrderedList`),quote:()=>ne(`formatBlock`,`BLOCKQUOTE`),code:()=>ne(`formatBlock`,`PRE`),alignLeft:()=>ne(`justifyLeft`),alignCenter:()=>ne(`justifyCenter`),alignRight:()=>ne(`justifyRight`),link:()=>{let e=typeof prompt==`function`?prompt(p(_).linkPrompt,`https://`):null;e&&ne(`createLink`,e)},clear:()=>ne(`removeFormat`),undo:()=>ne(`undo`),redo:()=>ne(`redo`)};var N=ul();let P;var F=B(N),ie=e=>{var t=ll();se(t,21,f,i,(e,t)=>{var n=m(),i=I(n),a=e=>{var t=sl();d(e,t)},o=e=>{var n=cl();let i;var a=B(n,!0);H(n),w(()=>{i=Ce(n,1,`sv-rt__btn svelte-1enx0me`,null,i,{"is-on":p(D)[p(t)]}),R(n,`data-tool`,p(t)),R(n,`title`,p(_)[p(t)]),R(n,`aria-label`,p(_)[p(t)]),R(n,`aria-pressed`,p(D)[p(t)]?!0:void 0),n.disabled=c(),v(a,r[p(t)])}),x(`mousedown`,n,e=>e.preventDefault()),x(`click`,n,function(...e){re[p(t)]?.apply(this,e)}),d(e,n)};h(i,e=>{p(t)===`|`?e(a):e(o,-1)}),d(e,n)}),H(t),w(()=>{R(t,`aria-label`,p(_).toolbar),R(t,`aria-controls`,y)}),d(e,t)};h(F,e=>{l()||e(ie)});var ae=k(F,2);let oe,ce;pe(ae,e=>V(b,e),()=>p(b)),H(N),w(()=>{P=Ce(N,1,`sv-rt svelte-1enx0me`,null,P,{"is-disabled":c(),"is-readonly":l()}),R(ae,`id`,y),oe=Ce(ae,1,`sv-rt__body svelte-1enx0me`,null,oe,{"is-empty":p(E)}),R(ae,`contenteditable`,!c()&&!l()),R(ae,`aria-label`,g()),R(ae,`data-placeholder`,s()),R(ae,`tabindex`,c()?-1:0),ce=A(ae,``,ce,{"min-height":u()})}),x(`input`,ae,O),C(`focus`,ae,()=>V(S,!0)),C(`blur`,ae,()=>{V(S,!1),O()}),x(`keyup`,ae,te),x(`mouseup`,ae,te),d(e,N),he()}u([`mousedown`,`click`,`input`,`keyup`,`mouseup`]);var fl=y(`<div><!></div>`),pl=y(`<button> </button> <button> </button>`,1),ml=y(`<button></button>`),hl=y(`<div class="sv-carousel__dots svelte-q63jsh"></div>`),gl=y(`<button> </button>`),_l=y(`<div><div class="sv-carousel__viewport svelte-q63jsh"><div></div></div> <!> <!> <!></div>`);function vl(e,t){ue(t,!0);let n=z(t,`current`,15,0),r=z(t,`autoplay`,3,0),a=z(t,`loop`,3,!0),s=z(t,`arrows`,3,!0),c=z(t,`dots`,3,!0),l=z(t,`ariaLabel`,3,`Carousel`),u=Qr({count:()=>t.count,current:()=>n(),onChange:e=>n(e),loop:()=>a(),autoplay:()=>r(),dir:()=>t.dir===`ltr`||t.dir===`rtl`?t.dir:void 0}),f=M(()=>u.rtl()),m=j(!1),g=0,_=j(0);function y(e){V(m,!0),g=e.clientX,e.currentTarget.setPointerCapture?.(e.pointerId)}function b(e){p(m)&&V(_,e.clientX-g)}function S(){p(m)&&(V(m,!1),Math.abs(p(_))>50&&(p(_)<0?u.next():u.prev()),V(_,0))}var T=_l();ne(T,e=>({class:`sv-carousel`,...e}),[()=>u.rootProps(l())],void 0,void 0,`svelte-q63jsh`);var E=B(T),D=B(E);let O,te;se(D,21,()=>Array(t.count),i,(e,n,r)=>{var i=fl();ne(i,e=>({class:`sv-carousel__slide`,...e}),[()=>u.slideProps(r)],void 0,void 0,`svelte-q63jsh`);var a=B(i);o(a,()=>t.slide??ee,()=>r),H(i),d(e,i)}),H(D),H(E);var re=k(E,2),N=e=>{var t=pl(),n=I(t);ne(n,e=>({type:`button`,class:`sv-carousel__arrow is-prev`,...e}),[()=>u.prevArrowProps()],void 0,void 0,`svelte-q63jsh`);var r=B(n,!0);H(n);var i=k(n,2);ne(i,e=>({type:`button`,class:`sv-carousel__arrow is-next`,...e}),[()=>u.nextArrowProps()],void 0,void 0,`svelte-q63jsh`);var a=B(i,!0);H(i),w(()=>{v(r,p(f)?`›`:`‹`),v(a,p(f)?`‹`:`›`)}),d(e,t)};h(re,e=>{s()&&t.count>1&&e(N)});var P=k(re,2),F=e=>{var n=hl();se(n,21,()=>Array(t.count),i,(e,t,n)=>{var r=ml();ne(r,(e,t)=>({type:`button`,class:`sv-carousel__dot`,...e,[ce]:t}),[()=>u.dotProps(n),()=>({"is-active":u.isActive(n)})],void 0,void 0,`svelte-q63jsh`),d(e,r)}),H(n),d(e,n)};h(P,e=>{c()&&t.count>1&&e(F)});var ie=k(P,2),ae=e=>{var t=gl();ne(t,e=>({type:`button`,class:`sv-carousel__playpause`,...e}),[()=>u.playPauseProps()],void 0,void 0,`svelte-q63jsh`);var n=B(t,!0);H(t),w(()=>v(n,u.userPaused?`▶`:`⏸`)),d(e,t)};h(ie,e=>{r()>0&&e(ae)}),H(T),w(()=>{O=Ce(D,1,`sv-carousel__track svelte-q63jsh`,null,O,{"is-dragging":p(m)}),te=A(D,``,te,{transform:`translateX(calc(${(p(f)?n():-n())*100}% + ${p(_)}px))`})}),x(`pointerdown`,E,y),x(`pointermove`,E,b),x(`pointerup`,E,S),C(`pointercancel`,E,S),d(e,T),he()}u([`pointerdown`,`pointermove`,`pointerup`]);var yl=y(`<div class="sv-tour__spot"></div>`),bl=y(`<div class="sv-tour__backdrop"></div>`),xl=y(`<img class="sv-tour__img" alt=""/>`),Sl=y(`<div class="sv-tour__media"><!></div>`),Cl=y(`<div class="sv-tour__title"> </div>`),wl=y(`<button type="button" class="sv-tour__back">Back</button>`),Tl=y(`<div class="sv-tour"><!> <div role="dialog" aria-modal="true"><!> <!> <div class="sv-tour__body"> </div> <div class="sv-tour__foot"><span class="sv-tour__count"> </span> <div class="sv-tour__btns"><button type="button" class="sv-tour__skip">Skip</button> <!> <button type="button" class="sv-tour__next"> </button></div></div></div></div>`);function El(e,t){ue(t,!0);let n=z(t,`open`,15,!1),r=j(0),i=j(null),o=j(null),s=M(()=>t.steps[p(r)]);function c(){let e=p(s)?.target;return e?typeof e==`string`?document.querySelector(e):e:null}function l(){let e=c();e?.scrollIntoView({block:`center`,behavior:`smooth`}),V(i,e?e.getBoundingClientRect():null,!0)}function u(){(p(o)?.querySelector(`.sv-tour__next`)??p(o))?.focus()}function f(e){V(r,Math.max(0,Math.min(e,t.steps.length-1)),!0),t.onStep?.(p(r)),queueMicrotask(()=>{l(),u()})}function g(){p(r)>=t.steps.length-1?b():f(p(r)+1)}function y(){f(p(r)-1)}function b(){n(!1),t.onFinish?.()}function S(){n(!1),t.onSkip?.()}T(()=>{if(!n())return;V(r,0),queueMicrotask(()=>{l(),u()});let e=()=>l();window.addEventListener(`resize`,e),window.addEventListener(`scroll`,e,!0);let i=t.dir===`rtl`,a=e=>{e.key===`Escape`?(e.preventDefault(),S()):e.key===`ArrowRight`?(e.preventDefault(),(i?y:g)()):e.key===`ArrowLeft`&&(e.preventDefault(),(i?g:y)())};return window.addEventListener(`keydown`,a),()=>{window.removeEventListener(`resize`,e),window.removeEventListener(`scroll`,e,!0),window.removeEventListener(`keydown`,a)}}),T(()=>{if(!n()||!p(o))return;let e=Pt(p(o),{initialFocus:()=>p(o)?.querySelector(`.sv-tour__next`)??null});return e.activate(),()=>e.release()});let C=j(200),E=M(()=>{if(typeof window>`u`||!p(i))return{top:`50%`,left:`50%`,transform:`translate(-50%, -50%)`,place:`center`};let e=window.innerWidth,t=window.innerHeight,n=p(C)||200,r=e=>Math.max(12,Math.min(e,t-n-12)),a=t=>Math.max(12,Math.min(t,e-300-12));if(t-p(i).bottom>=n+12)return{top:`${p(i).bottom+10}px`,left:`${a(p(i).left)}px`,transform:`none`,place:`bottom`};if(p(i).top>=n+12)return{top:`${r(p(i).top-10-n)}px`,left:`${a(p(i).left)}px`,transform:`none`,place:`top`};let o=r(p(i).top+p(i).height/2-n/2);return e-p(i).right>=312?{top:`${o}px`,left:`${p(i).right+10}px`,transform:`none`,place:`center`}:p(i).left>=312?{top:`${o}px`,left:`${p(i).left-300-10}px`,transform:`none`,place:`center`}:{top:`${o}px`,left:`${a((e-300)/2)}px`,transform:`none`,place:`center`}});var D=m(),O=I(D),ee=e=>{var n=Tl(),c=B(n),l=e=>{var t=yl();let n;w(()=>n=A(t,``,n,{top:`${p(i).top-6}px`,left:`${p(i).left-6}px`,width:`${p(i).width+12}px`,height:`${p(i).height+12}px`})),d(e,t)},u=e=>{var t=bl();d(e,t)};h(c,e=>{p(i)?e(l):e(u,-1)});var f=k(c,2);let b;var T=B(f),D=e=>{var t=Sl(),n=B(t),r=e=>{var t=xl();w(()=>R(t,`src`,p(s).image)),d(e,t)},i=M(()=>/^(https?:|data:|\/)/.test(p(s).image)),a=e=>{var t=m(),n=I(t);_(n,()=>p(s).image),d(e,t)};h(n,e=>{p(i)?e(r):e(a,-1)}),H(t),d(e,t)};h(T,e=>{p(s).image&&e(D)});var O=k(T,2),ee=e=>{var t=Cl(),n=B(t,!0);H(t),w(()=>v(n,p(s).title)),d(e,t)};h(O,e=>{p(s).title&&e(ee)});var te=k(O,2),j=B(te,!0);H(te);var ne=k(te,2),re=B(ne),N=B(re);H(re);var P=k(re,2),F=B(P),ie=k(F,2),ae=e=>{var t=wl();x(`click`,t,y),d(e,t)};h(ie,e=>{p(r)>0&&e(ae)});var oe=k(ie,2),se=B(oe,!0);H(oe),H(P),H(ne),H(f),pe(f,e=>V(o,e),()=>p(o)),H(n),a(n,e=>Mr?.(e)),w(()=>{Ce(f,1,`sv-tour__pop sv-tour__pop--${p(E).place??``}`),R(f,`aria-label`,p(s).title??`Tour step`),b=A(f,``,b,{top:p(E).top,left:p(E).left,transform:p(E).transform}),v(j,p(s).content),v(N,`${p(r)+1} / ${t.steps.length??``}`),v(se,p(r)===t.steps.length-1?`Done`:`Next`)}),x(`click`,F,S),x(`click`,oe,g),_e(f,`clientHeight`,e=>V(C,e)),d(e,n)};h(O,e=>{n()&&p(s)&&e(ee)}),d(e,D),he()}u([`click`]);var Dl=y(`<li><button>«</button></li>`),Ol=y(`<li><button>‹</button></li>`),kl=y(`<li><span class="sv-pg__ellipsis svelte-1pljpjf" aria-hidden="true">…</span></li>`),Al=y(`<li><button> </button></li>`),jl=y(`<li><button>›</button></li>`),Ml=y(`<li><button>»</button></li>`),Nl=y(`<nav><ul class="sv-pg__list svelte-1pljpjf"><!> <!> <!> <!> <!></ul></nav>`);function Pl(e,t){ue(t,!0);let n=z(t,`siblingCount`,3,1),r=z(t,`boundaryCount`,3,1),i=z(t,`showFirstLast`,3,!1),a=z(t,`showPrevNext`,3,!0),o=z(t,`size`,3,`md`),s=z(t,`disabled`,3,!1),c=z(t,`ariaLabel`,3,`Pagination`),l=Zr({page:()=>t.page,pageCount:()=>t.pageCount,onChange:t.onChange,siblingCount:()=>n(),boundaryCount:()=>r(),disabled:()=>s()});var u=Nl();ne(u,e=>({class:`sv-pg sv-pg--${o()??``}`,...e}),[()=>l.navProps(c())],void 0,void 0,`svelte-1pljpjf`);var f=B(u),g=B(f),_=e=>{var t=Dl(),n=B(t);ne(n,e=>({type:`button`,class:`sv-pg__btn`,...e}),[()=>l.firstProps()],void 0,void 0,`svelte-1pljpjf`),H(t),d(e,t)};h(g,e=>{i()&&e(_)});var y=k(g,2),b=e=>{var t=Ol(),n=B(t);ne(n,e=>({type:`button`,class:`sv-pg__btn`,...e}),[()=>l.prevProps()],void 0,void 0,`svelte-1pljpjf`),H(t),d(e,t)};h(y,e=>{a()&&e(b)});var x=k(y,2);se(x,19,()=>l.items,(e,t)=>typeof e==`number`?`p${e}`:`${e}-${t}`,(e,t)=>{var n=m(),r=I(n),i=e=>{var t=kl();d(e,t)},a=e=>{var n=Al(),r=B(n);ne(r,(e,t)=>({type:`button`,class:`sv-pg__btn`,...e,[ce]:t}),[()=>l.pageButtonProps(p(t)),()=>({"is-active":l.isActive(p(t))})],void 0,void 0,`svelte-1pljpjf`);var i=B(r,!0);H(r),H(n),w(()=>v(i,p(t))),d(e,n)};h(r,e=>{p(t)===`ellipsis-left`||p(t)===`ellipsis-right`?e(i):e(a,-1)}),d(e,n)});var S=k(x,2),C=e=>{var t=jl(),n=B(t);ne(n,e=>({type:`button`,class:`sv-pg__btn`,...e}),[()=>l.nextProps()],void 0,void 0,`svelte-1pljpjf`),H(t),d(e,t)};h(S,e=>{a()&&e(C)});var T=k(S,2),E=e=>{var t=Ml(),n=B(t);ne(n,e=>({type:`button`,class:`sv-pg__btn`,...e}),[()=>l.lastProps()],void 0,void 0,`svelte-1pljpjf`),H(t),d(e,t)};h(T,e=>{i()&&e(E)}),H(f),H(u),d(e,u),he()}var Fl=y(`<li class="sv-bc__sep svelte-2r24fy" aria-hidden="true"> </li>`),Il=y(`<li><button type="button" class="sv-bc__ellipsis svelte-2r24fy" aria-label="Show collapsed crumbs">…</button></li>`),Ll=y(`<span class="sv-bc__icon svelte-2r24fy" aria-hidden="true"> </span>`),Rl=y(`<span aria-current="page"><!> </span>`),zl=y(`<span class="sv-bc__icon svelte-2r24fy" aria-hidden="true"> </span>`),Bl=y(`<a class="sv-bc__link svelte-2r24fy"><!> </a>`),Vl=y(`<span class="sv-bc__icon svelte-2r24fy" aria-hidden="true"> </span>`),Hl=y(`<button type="button" class="sv-bc__link sv-bc__btn svelte-2r24fy"><!> </button>`),Ul=y(`<span class="sv-bc__icon svelte-2r24fy" aria-hidden="true"> </span>`),Wl=y(`<span><!> </span>`),Gl=y(`<li><!></li>`),Kl=y(`<!> <!>`,1),ql=y(`<nav class="sv-bc"><ol class="sv-bc__list svelte-2r24fy"></ol></nav>`);function Jl(e,t){ue(t,!0);let n=z(t,`separator`,3,`/`),r=z(t,`ariaLabel`,3,`Breadcrumb`),i=j(!1),a=M(()=>!!t.maxItems&&!p(i)&&t.items.length>t.maxItems),o=M(()=>p(a)?[{item:t.items[0],index:0},`ellipsis`,...t.items.slice(-2).map((e,n)=>({item:e,index:t.items.length-2+n}))]:t.items.map((e,t)=>({item:e,index:t})));var s=ql(),c=B(s);se(c,23,()=>p(o),(e,t)=>e===`ellipsis`?`e${t}`:e.index,(e,r,a)=>{var o=Kl(),s=I(o),c=e=>{var t=Fl(),r=B(t,!0);H(t),w(()=>v(r,n())),d(e,t)};h(s,e=>{p(a)>0&&e(c)});var l=k(s,2),u=e=>{var t=Il(),n=B(t);H(t),x(`click`,n,()=>V(i,!0)),d(e,t)},f=e=>{let n=M(()=>p(r).index===t.items.length-1);var i=Gl();let a;var o=B(i),s=e=>{var t=Rl(),n=B(t),i=e=>{var t=Ll(),n=B(t,!0);H(t),w(()=>v(n,p(r).item.icon)),d(e,t)};h(n,e=>{p(r).item.icon&&e(i)});var a=k(n,1,!0);H(t),w(()=>v(a,p(r).item.label)),d(e,t)},c=e=>{var t=Bl(),n=B(t),i=e=>{var t=zl(),n=B(t,!0);H(t),w(()=>v(n,p(r).item.icon)),d(e,t)};h(n,e=>{p(r).item.icon&&e(i)});var a=k(n,1,!0);H(t),w(()=>{R(t,`href`,p(r).item.href),v(a,p(r).item.label)}),d(e,t)},l=e=>{var t=Hl(),n=B(t),i=e=>{var t=Vl(),n=B(t,!0);H(t),w(()=>v(n,p(r).item.icon)),d(e,t)};h(n,e=>{p(r).item.icon&&e(i)});var a=k(n,1,!0);H(t),w(()=>v(a,p(r).item.label)),x(`click`,t,function(...e){p(r).item.onClick?.apply(this,e)}),d(e,t)},u=e=>{var t=Wl(),n=B(t),i=e=>{var t=Ul(),n=B(t,!0);H(t),w(()=>v(n,p(r).item.icon)),d(e,t)};h(n,e=>{p(r).item.icon&&e(i)});var a=k(n,1,!0);H(t),w(()=>v(a,p(r).item.label)),d(e,t)};h(o,e=>{p(n)?e(s):p(r).item.href?e(c,1):p(r).item.onClick?e(l,2):e(u,-1)}),H(i),w(()=>a=Ce(i,1,`sv-bc__item svelte-2r24fy`,null,a,{"is-current":p(n)})),d(e,i)};h(l,e=>{p(r)===`ellipsis`?e(u):e(f,-1)}),d(e,o)}),H(c),H(s),w(()=>R(s,`aria-label`,r())),d(e,s),he()}u([`click`]);var Yl=y(`<div class="sv-prog__buffer svelte-vmqec8"></div>`),Xl=y(`<span class="sv-prog__label svelte-vmqec8"> </span>`),Zl=y(`<div><div class="sv-prog__track svelte-vmqec8" role="progressbar"><!> <div></div></div> <!></div>`);function Ql(e,t){ue(t,!0);let n=z(t,`value`,3,0),r=z(t,`max`,3,100),i=z(t,`indeterminate`,3,!1),a=z(t,`color`,3,`accent`),o=z(t,`size`,3,`md`),s=z(t,`showLabel`,3,!1),c=z(t,`striped`,3,!1),l=M(()=>r()>0?Math.min(100,Math.max(0,n()/r()*100)):0),u=M(()=>t.buffer!=null&&r()>0?Math.min(100,Math.max(0,t.buffer/r()*100)):null),f=M(()=>t.formatLabel?t.formatLabel(n(),r()):`${Math.round(p(l))}%`);var m=Zl();let g;var _=B(m),y=B(_),b=e=>{var t=Yl();let n;w(()=>n=A(t,``,n,{width:`${p(u)}%`})),d(e,t)};h(y,e=>{p(u)!=null&&!i()&&e(b)});var x=k(y,2);let S,C;H(_);var T=k(_,2),E=e=>{var t=Xl(),n=B(t,!0);H(t),w(()=>v(n,p(f))),d(e,t)};h(T,e=>{s()&&!i()&&e(E)}),H(m),w(()=>{g=Ce(m,1,`sv-prog sv-prog--${o()??``} sv-prog--${a()??``}`,`svelte-vmqec8`,g,{"has-label":s()&&!i()}),R(_,`aria-label`,t.ariaLabel),R(_,`aria-valuemin`,i()?void 0:0),R(_,`aria-valuemax`,i()?void 0:r()),R(_,`aria-valuenow`,i()?void 0:n()),R(_,`aria-valuetext`,i()?void 0:p(f)),S=Ce(x,1,`sv-prog__fill svelte-vmqec8`,null,S,{"is-indeterminate":i(),"is-striped":c()}),C=A(x,``,C,{width:i()?void 0:`${p(l)}%`})}),d(e,m),he()}var $l=y(`<div class="sv-circ__center svelte-gom3jx"><!></div>`),eu=y(`<div class="sv-circ__center sv-circ__label svelte-gom3jx"> </div>`),tu=y(`<div role="progressbar"><svg class="sv-circ__svg svelte-gom3jx"><circle class="sv-circ__track svelte-gom3jx" fill="none"></circle><circle class="sv-circ__arc svelte-gom3jx" fill="none" stroke-linecap="round"></circle></svg> <!></div>`);function nu(e,t){ue(t,!0);let n=z(t,`value`,3,0),r=z(t,`max`,3,100),i=z(t,`indeterminate`,3,!1),a=z(t,`size`,3,48),s=z(t,`thickness`,3,5),c=z(t,`color`,3,`accent`),l=z(t,`showLabel`,3,!1),u=M(()=>(a()-s())/2),f=M(()=>2*Math.PI*p(u)),m=M(()=>r()>0?Math.min(100,Math.max(0,n()/r()*100)):0),g=M(()=>p(f)*(1-p(m)/100)),_=M(()=>t.formatLabel?t.formatLabel(n(),r()):`${Math.round(p(m))}%`);var y=tu();let b,x;var S=B(y),C=B(S),T=k(C);H(S);var E=k(S,2),D=e=>{var n=$l(),r=B(n);o(r,()=>t.children),H(n),d(e,n)},O=e=>{var t=eu();let n;var r=B(t,!0);H(t),w(e=>{n=A(t,``,n,e),v(r,p(_))},[()=>({"font-size":`${Math.max(9,a()*.26)}px`})]),d(e,t)};h(E,e=>{t.children?e(D):l()&&!i()&&e(O,1)}),H(y),w(()=>{b=Ce(y,1,`sv-circ sv-circ--${c()??``}`,`svelte-gom3jx`,b,{"is-indeterminate":i()}),R(y,`aria-label`,t.ariaLabel),R(y,`aria-valuemin`,i()?void 0:0),R(y,`aria-valuemax`,i()?void 0:r()),R(y,`aria-valuenow`,i()?void 0:n()),R(y,`aria-valuetext`,i()?void 0:p(_)),x=A(y,``,x,{width:`${a()}px`,height:`${a()}px`}),R(S,`viewBox`,`0 0 ${a()} ${a()}`),R(S,`width`,a()),R(S,`height`,a()),R(C,`cx`,a()/2),R(C,`cy`,a()/2),R(C,`r`,p(u)),R(C,`stroke-width`,s()),R(T,`cx`,a()/2),R(T,`cy`,a()/2),R(T,`r`,p(u)),R(T,`stroke-width`,s()),R(T,`stroke-dasharray`,p(f)),R(T,`stroke-dashoffset`,i()?p(f)*.7:p(g))}),d(e,y),he()}var ru=[],iu=[];(()=>{let e=`lc,34,7n,7,7b,19,,,,2,,2,,,20,b,1c,l,g,,2t,7,2,6,2,2,,4,z,,u,r,2j,b,1m,9,9,,o,4,,9,,3,,5,17,3,3b,f,,w,1j,,,,4,8,4,,3,7,a,2,t,,1m,,,,2,4,8,,9,,a,2,q,,2,2,1l,,4,2,4,2,2,3,3,,u,2,3,,b,2,1l,,4,5,,2,4,,k,2,m,6,,,1m,,,2,,4,8,,7,3,a,2,u,,1n,,,,c,,9,,14,,3,,1l,3,5,3,,4,7,2,b,2,t,,1m,,2,,2,,3,,5,2,7,2,b,2,s,2,1l,2,,,2,4,8,,9,,a,2,t,,20,,4,,2,3,,,8,,29,,2,7,c,8,2q,,2,9,b,6,22,2,r,,,,,,1j,e,,5,,2,5,b,,10,9,,2u,4,,6,,2,2,2,p,2,4,3,g,4,d,,2,2,6,,f,,jj,3,qa,3,t,3,t,2,u,2,1s,2,,7,8,,2,b,9,,19,3,3b,2,y,,3a,3,4,2,9,,6,3,63,2,2,,1m,,,7,,,,,2,8,6,a,2,,1c,h,1r,4,1c,7,,,5,,14,9,c,2,w,4,2,2,,3,1k,,,2,3,,,3,1m,8,2,2,48,3,,d,,7,4,,6,,3,2,5i,1m,,5,ek,,5f,x,2da,3,3x,,2o,w,fe,6,2x,2,n9w,4,,a,w,2,28,2,7k,,3,,4,,p,2,5,,47,2,q,i,d,,12,8,p,b,1a,3,1c,,2,4,2,2,13,,1v,6,2,2,2,2,c,,8,,1b,,1f,,,3,2,2,5,2,,,16,2,8,,6m,,2,,4,,fn4,,kh,g,g,g,a6,2,gt,,6a,,45,5,1ae,3,,2,5,4,14,3,4,,4l,2,fx,4,ar,2,49,b,4w,,1i,f,1k,3,1d,4,2,2,1x,3,10,5,,8,1q,,c,2,1g,9,a,4,2,,2n,3,2,,,2,6,,4g,,3,8,l,2,1l,2,,,,,m,,e,7,3,5,5f,8,2,3,,,n,,29,,2,6,,,2,,,2,,2,6j,,2,4,6,2,,2,r,2,2d,8,2,,,2,2y,,,,2,6,,,2t,3,2,4,,5,77,9,,2,6t,,a,2,,,4,,40,4,2,2,4,,w,a,14,6,2,4,8,,9,6,2,3,1a,d,,2,ba,7,,6,,,2a,m,2,7,,2,,2,3e,6,3,,,2,,7,,,20,2,3,,,,9n,2,f0b,5,1n,7,t4,,1r,4,29,,f5k,2,43q,,,3,4,5,8,8,2,7,u,4,44,3,1iz,1j,4,1e,8,,e,,m,5,,f,11s,7,,h,2,7,,2,,5,79,7,c5,4,15s,7,31,7,240,5,gx7k,2o,3k,6o`.split(`,`).map(e=>e?parseInt(e,36):1);for(let t=0,n=0;t<e.length;t++)(t%2?iu:ru).push(n+=e[t])})();function au(e){if(e<768)return!1;for(let t=0,n=ru.length;;){let r=t+n>>1;if(e<ru[r])n=r;else if(e>=iu[r])t=r+1;else return!0;if(t==n)return!1}}function ou(e){return e>=127462&&e<=127487}var su=8205;function cu(e,t,n=!0,r=!0){return(n?lu:uu)(e,t,r)}function lu(e,t,n){if(t==e.length)return t;t&&fu(e.charCodeAt(t))&&pu(e.charCodeAt(t-1))&&t--;let r=du(e,t);for(t+=mu(r);t<e.length;){let i=du(e,t);if(r==su||i==su||n&&au(i))t+=mu(i),r=i;else if(ou(i)){let n=0,r=t-2;for(;r>=0&&ou(du(e,r));)n++,r-=2;if(n%2==0)break;t+=2}else break}return t}function uu(e,t,n){for(;t>1;){let r=lu(e,t-2,n);if(r<t)return r;t--}return 0}function du(e,t){let n=e.charCodeAt(t);if(!pu(n)||t+1==e.length)return n;let r=e.charCodeAt(t+1);return fu(r)?(n-55296<<10)+(r-56320)+65536:n}function fu(e){return e>=56320&&e<57344}function pu(e){return e>=55296&&e<56320}function mu(e){return e<65536?1:2}var hu=class e{lineAt(e){if(e<0||e>this.length)throw RangeError(`Invalid position ${e} in document of length ${this.length}`);return this.lineInner(e,!1,1,0)}line(e){if(e<1||e>this.lines)throw RangeError(`Invalid line number ${e} in ${this.lines}-line document`);return this.lineInner(e,!0,1,0)}replace(e,t,n){[e,t]=Tu(this,e,t);let r=[];return this.decompose(0,e,r,2),n.length&&n.decompose(0,n.length,r,3),this.decompose(t,this.length,r,1),_u.from(r,this.length-(t-e)+n.length)}append(e){return this.replace(this.length,this.length,e)}slice(e,t=this.length){[e,t]=Tu(this,e,t);let n=[];return this.decompose(e,t,n,0),_u.from(n,t-e)}eq(e){if(e==this)return!0;if(e.length!=this.length||e.lines!=this.lines)return!1;let t=this.scanIdentical(e,1),n=this.length-this.scanIdentical(e,-1),r=new xu(this),i=new xu(e);for(let e=t,a=t;;){if(r.next(e),i.next(e),e=0,r.lineBreak!=i.lineBreak||r.done!=i.done||r.value!=i.value)return!1;if(a+=r.value.length,r.done||a>=n)return!0}}iter(e=1){return new xu(this,e)}iterRange(e,t=this.length){return new Su(this,e,t)}iterLines(e,t){let n;if(e==null)n=this.iter();else{t??=this.lines+1;let r=this.line(e).from;n=this.iterRange(r,Math.max(r,t==this.lines+1?this.length:t<=1?0:this.line(t-1).to))}return new Cu(n)}toString(){return this.sliceString(0)}toJSON(){let e=[];return this.flatten(e),e}constructor(){}static of(t){if(t.length==0)throw RangeError(`A document must have at least one line`);return t.length==1&&!t[0]?e.empty:t.length<=32?new gu(t):_u.from(gu.split(t,[]))}},gu=class e extends hu{constructor(e,t=vu(e)){super(),this.text=e,this.length=t}get lines(){return this.text.length}get children(){return null}lineInner(e,t,n,r){for(let i=0;;i++){let a=this.text[i],o=r+a.length;if((t?n:o)>=e)return new wu(r,o,n,a);r=o+1,n++}}decompose(t,n,r,i){let a=t<=0&&n>=this.length?this:new e(bu(this.text,t,n),Math.min(n,this.length)-Math.max(0,t));if(i&1){let t=r.pop(),n=yu(a.text,t.text.slice(),0,a.length);if(n.length<=32)r.push(new e(n,t.length+a.length));else{let t=n.length>>1;r.push(new e(n.slice(0,t)),new e(n.slice(t)))}}else r.push(a)}replace(t,n,r){if(!(r instanceof e))return super.replace(t,n,r);[t,n]=Tu(this,t,n);let i=yu(this.text,yu(r.text,bu(this.text,0,t)),n),a=this.length+r.length-(n-t);return i.length<=32?new e(i,a):_u.from(e.split(i,[]),a)}sliceString(e,t=this.length,n=`
|
|
4
4
|
`){[e,t]=Tu(this,e,t);let r=``;for(let i=0,a=0;i<=t&&a<this.text.length;a++){let o=this.text[a],s=i+o.length;i>e&&a&&(r+=n),e<s&&t>i&&(r+=o.slice(Math.max(0,e-i),t-i)),i=s+1}return r}flatten(e){for(let t of this.text)e.push(t)}scanIdentical(){return 0}static split(t,n){let r=[],i=-1;for(let a of t)r.push(a),i+=a.length+1,r.length==32&&(n.push(new e(r,i)),r=[],i=-1);return i>-1&&n.push(new e(r,i)),n}},_u=class e extends hu{constructor(e,t){super(),this.children=e,this.length=t,this.lines=0;for(let t of e)this.lines+=t.lines}lineInner(e,t,n,r){for(let i=0;;i++){let a=this.children[i],o=r+a.length,s=n+a.lines-1;if((t?s:o)>=e)return a.lineInner(e,t,n,r);r=o+1,n=s+1}}decompose(e,t,n,r){for(let i=0,a=0;a<=t&&i<this.children.length;i++){let o=this.children[i],s=a+o.length;if(e<=s&&t>=a){let i=r&(a<=e|(s>=t?2:0));a>=e&&s<=t&&!i?n.push(o):o.decompose(e-a,t-a,n,i)}a=s+1}}replace(t,n,r){if([t,n]=Tu(this,t,n),r.lines<this.lines)for(let i=0,a=0;i<this.children.length;i++){let o=this.children[i],s=a+o.length;if(t>=a&&n<=s){let c=o.replace(t-a,n-a,r),l=this.lines-o.lines+c.lines;if(c.lines<l>>4&&c.lines>l>>6){let a=this.children.slice();return a[i]=c,new e(a,this.length-(n-t)+r.length)}return super.replace(a,s,c)}a=s+1}return super.replace(t,n,r)}sliceString(e,t=this.length,n=`
|
|
5
5
|
`){[e,t]=Tu(this,e,t);let r=``;for(let i=0,a=0;i<this.children.length&&a<=t;i++){let o=this.children[i],s=a+o.length;a>e&&i&&(r+=n),e<s&&t>a&&(r+=o.sliceString(e-a,t-a,n)),a=s+1}return r}flatten(e){for(let t of this.children)t.flatten(e)}scanIdentical(t,n){if(!(t instanceof e))return 0;let r=0,[i,a,o,s]=n>0?[0,0,this.children.length,t.children.length]:[this.children.length-1,t.children.length-1,-1,-1];for(;;i+=n,a+=n){if(i==o||a==s)return r;let e=this.children[i],c=t.children[a];if(e!=c)return r+e.scanIdentical(c,n);r+=e.length+1}}static from(t,n=t.reduce((e,t)=>e+t.length+1,-1)){let r=0;for(let e of t)r+=e.lines;if(r<32){let e=[];for(let n of t)n.flatten(e);return new gu(e,n)}let i=Math.max(32,r>>5),a=i<<1,o=i>>1,s=[],c=0,l=-1,u=[];function d(t){let n;if(t.lines>a&&t instanceof e)for(let e of t.children)d(e);else t.lines>o&&(c>o||!c)?(f(),s.push(t)):t instanceof gu&&c&&(n=u[u.length-1])instanceof gu&&t.lines+n.lines<=32?(c+=t.lines,l+=t.length+1,u[u.length-1]=new gu(n.text.concat(t.text),n.length+1+t.length)):(c+t.lines>i&&f(),c+=t.lines,l+=t.length+1,u.push(t))}function f(){c!=0&&(s.push(u.length==1?u[0]:e.from(u,l)),l=-1,c=u.length=0)}for(let e of t)d(e);return f(),s.length==1?s[0]:new e(s,n)}};hu.empty=new gu([``],0);function vu(e){let t=-1;for(let n of e)t+=n.length+1;return t}function yu(e,t,n=0,r=1e9){for(let i=0,a=0,o=!0;a<e.length&&i<=r;a++){let s=e[a],c=i+s.length;c>=n&&(c>r&&(s=s.slice(0,r-i)),i<n&&(s=s.slice(n-i)),o?(t[t.length-1]+=s,o=!1):t.push(s)),i=c+1}return t}function bu(e,t,n){return yu(e,[``],t,n)}var xu=class{constructor(e,t=1){this.dir=t,this.done=!1,this.lineBreak=!1,this.value=``,this.nodes=[e],this.offsets=[t>0?1:(e instanceof gu?e.text.length:e.children.length)<<1]}nextInner(e,t){for(this.done=this.lineBreak=!1;;){let n=this.nodes.length-1,r=this.nodes[n],i=this.offsets[n],a=i>>1,o=r instanceof gu?r.text.length:r.children.length;if(a==(t>0?o:0)){if(n==0)return this.done=!0,this.value=``,this;t>0&&this.offsets[n-1]++,this.nodes.pop(),this.offsets.pop()}else if((i&1)==(t>0?0:1)){if(this.offsets[n]+=t,e==0)return this.lineBreak=!0,this.value=`
|
|
@@ -75789,7 +75789,7 @@ and limitations under the License.
|
|
|
75789
75789
|
sample app to see a working design in seconds.</p> <div class="sv-studio__onboard-actions svelte-psjrav"><button type="button" class="sv-studio__req-send svelte-psjrav"><!>New app (guided)</button> <button type="button" class="sv-studio__gen-btn svelte-psjrav"><!>Browse sample apps</button> <button type="button" class="sv-studio__gen-btn svelte-psjrav"><!>New entity</button> <label class="sv-studio__gen-btn svelte-psjrav" title="Import a CSV / spreadsheet"><!>Import CSV <input type="file" accept=".csv,text/csv" style="display:none" class="svelte-psjrav"/></label> <button type="button" class="sv-studio__gen-btn svelte-psjrav"><!>Get a database</button> <!> <button type="button" class="sv-studio__gen-btn svelte-psjrav"><!>Import a schema</button></div></div></div>`),bR=y(`<main class="sv-studio__main svelte-psjrav"><!> <!></main>`),xR=y(`<div class="sv-studio__insp-body svelte-psjrav"><!></div>`),SR=y(`<details class="sv-studio__section svelte-psjrav" open=""><summary class="sv-studio__sec-head svelte-psjrav"><!><span class="svelte-psjrav"> </span></summary> <div class="sv-studio__sec-body svelte-psjrav"><label class="sv-studio__prop svelte-psjrav">Tab title <input type="text" class="svelte-psjrav"/> <span class="sv-studio__hint svelte-psjrav"> </span></label></div></details>`),CR=y(`<label class="sv-studio__prop svelte-psjrav">Height (px) <input type="number" step="10" class="svelte-psjrav"/></label> <span class="sv-studio__hint svelte-psjrav">Or drag the bottom edge of the block on the canvas.</span>`,1),wR=y(`<li class="sv-studio__check svelte-psjrav"><label class="svelte-psjrav"><input type="checkbox" class="svelte-psjrav"/> </label></li>`),TR=y(`<div class="sv-studio__formsection svelte-psjrav"><input type="text" placeholder="Section title" class="svelte-psjrav"/> <input type="text" placeholder="fields (comma-separated)" class="svelte-psjrav"/> <button type="button" class="sv-studio__mini svelte-psjrav" aria-label="Remove section">×</button></div>`),ER=y(`<details class="sv-studio__subsection svelte-psjrav"><summary class="svelte-psjrav">Fields & sections</summary> <span class="sv-studio__hint svelte-psjrav">Toggle + reorder the fields shown, and group them into titled sections. Empty = all fields, schema order.</span> <ul class="sv-studio__formfields svelte-psjrav"></ul> <div class="sv-studio__formsections svelte-psjrav"><!> <button type="button" class="sv-studio__field-opt-add svelte-psjrav">+ section</button></div></details>`),DR=y(`<label class="sv-studio__prop svelte-psjrav">Form style <select class="svelte-psjrav"><option class="svelte-psjrav">Modal dialog</option><option class="svelte-psjrav">Side drawer</option><option class="svelte-psjrav">Inline panel</option></select></label> <div class="sv-studio__field-ctrl svelte-psjrav"><label class="sv-studio__prop svelte-psjrav">Columns <select class="svelte-psjrav"><option class="svelte-psjrav">1</option><option class="svelte-psjrav">2</option><option class="svelte-psjrav">3</option></select></label> <label class="sv-studio__prop svelte-psjrav">Dialog width <select class="svelte-psjrav"><option class="svelte-psjrav">Small</option><option class="svelte-psjrav">Medium</option><option class="svelte-psjrav">Large</option></select></label></div> <label class="sv-studio__prop svelte-psjrav">Dialog title <input type="text" class="svelte-psjrav"/></label> <!>`,1),OR=y(`<div class="sv-studio__subchecks svelte-psjrav"><span class="sv-studio__prop-label svelte-psjrav">Filter UI</span> <label class="sv-studio__check svelte-psjrav"><input type="checkbox" class="svelte-psjrav"/> Global search box</label> <label class="sv-studio__check svelte-psjrav"><input type="checkbox" class="svelte-psjrav"/> Filter row (under headers)</label> <label class="sv-studio__check svelte-psjrav"><input type="checkbox" class="svelte-psjrav"/> Column filter menu</label></div>`),kR=y(`<span class="sv-studio__sec-badge svelte-psjrav"> </span>`),AR=y(`<span class="sv-studio__group-order svelte-psjrav"> </span>`),jR=y(`<label class="sv-studio__check svelte-psjrav"><input type="checkbox" class="svelte-psjrav"/> <!></label>`),See=y(`<span class="sv-studio__hint svelte-psjrav">Grouping is off while <strong class="svelte-psjrav">Tree data</strong> is on (they're mutually exclusive).</span>`),Cee=y(`<span class="sv-studio__hint svelte-psjrav">Grouped by <strong class="svelte-psjrav"> </strong>. The grid loads every row and groups client-side, so groups span the whole dataset. Set an <strong class="svelte-psjrav">Aggregate</strong> on a column below to roll it up per group.</span>`),MR=y(`<span class="sv-studio__hint svelte-psjrav">Pick one or more fields to group rows into collapsible sections (outermost first). Users can regroup live via the grid's grouping controls.</span>`),NR=y(`<span class="sv-studio__sec-badge svelte-psjrav">on</span>`),PR=y(`<option class="svelte-psjrav"> </option>`),FR=y(`<option class="svelte-psjrav"> </option>`),IR=y(`<label class="sv-studio__prop svelte-psjrav">Parent field (self-reference) <select class="svelte-psjrav"></select></label> <label class="sv-studio__prop svelte-psjrav">Tree column (shows the hierarchy) <select class="svelte-psjrav"></select></label> <span class="sv-studio__hint svelte-psjrav">Builds a hierarchy from the <strong class="svelte-psjrav"> </strong> field (a row whose parent is empty / not in the data is a root). Loads all rows and renders indented, expandable nodes - so no paging / flat sort. Try it with real data in the running app.</span>`,1),LR=y(`<span class="sv-studio__hint svelte-psjrav">For self-referential data (categories, org charts, folders): one field points at each row's parent.</span>`),RR=y(`<span class="sv-studio__sec-badge svelte-psjrav">on</span>`),zR=y(`<option class="svelte-psjrav"> </option>`),BR=y(`<option class="svelte-psjrav"> </option>`),VR=y(`<option class="svelte-psjrav"> </option>`),HR=y(`<option class="svelte-psjrav"> </option>`),UR=y(`<option class="svelte-psjrav"> </option>`),WR=y(`<label class="sv-studio__prop svelte-psjrav">Start (date) field <select class="svelte-psjrav"></select></label> <div class="sv-studio__col-3 svelte-psjrav"><label class="sv-studio__prop svelte-psjrav">End field <select class="svelte-psjrav"><option class="svelte-psjrav">(duration)</option><!></select></label> <label class="sv-studio__prop svelte-psjrav">Title <select class="svelte-psjrav"><option class="svelte-psjrav">(first column)</option><!></select></label> <label class="sv-studio__prop svelte-psjrav">Color <select class="svelte-psjrav"><option class="svelte-psjrav">(none)</option><!></select></label></div> <label class="sv-studio__prop svelte-psjrav">Resource (columns per person / room) <select class="svelte-psjrav"><option class="svelte-psjrav">(none)</option><!></select></label> <label class="sv-studio__prop svelte-psjrav">Opens on <select class="svelte-psjrav"><option class="svelte-psjrav">Month</option><option class="svelte-psjrav">Week</option><option class="svelte-psjrav">Day</option><option class="svelte-psjrav">Agenda</option><option class="svelte-psjrav">Timeline (week)</option></select></label> <label class="sv-studio__check svelte-psjrav"><input type="checkbox" class="svelte-psjrav"/> Drag to move / resize (writes back)</label> <label class="sv-studio__check svelte-psjrav"><input type="checkbox" class="svelte-psjrav"/> Event detail drawer</label> <span class="sv-studio__hint svelte-psjrav">A view of this grid's rows as a Month / Week / Day / Agenda calendar. Loads all rows; the enterprise scheduler renderer draws the events.</span>`,1),GR=y(`<span class="sv-studio__hint svelte-psjrav">For time-based data (appointments, shifts, bookings): map a start date field and render the grid as a calendar.</span>`),KR=y(`<span class="sv-studio__sec-badge svelte-psjrav"> </span>`),qR=y(`<option class="svelte-psjrav"> </option>`),JR=y(`<option class="svelte-psjrav"> </option>`),YR=y(`<option class="svelte-psjrav"> </option>`),XR=y(`<label class="sv-studio__prop svelte-psjrav">Pass field <select class="svelte-psjrav"></select></label> <label class="sv-studio__prop svelte-psjrav">Filter target's <select class="svelte-psjrav"></select></label>`,1),ZR=y(`<option class="svelte-psjrav"> </option>`),wee=y(`<option class="svelte-psjrav"> </option>`),QR=y(`<select class="svelte-psjrav"><option disabled="" class="svelte-psjrav">target screen…</option><!></select>`),$R=y(`<div class="sv-studio__role svelte-psjrav"><div class="sv-studio__role-head svelte-psjrav"><select class="sv-studio__role-name svelte-psjrav"></select> <button type="button" class="sv-studio__role-x svelte-psjrav" aria-label="Remove action">×</button></div> <input type="text" class="sv-studio__field-name svelte-psjrav"/> <!></div>`),ez=y(`<button type="button" class="sv-studio__mini svelte-psjrav"><!> </button>`),tz=y(`<option class="svelte-psjrav"> </option>`),nz=y(`<option class="svelte-psjrav"> </option>`),rz=y(`<input class="sv-studio__fmt-val svelte-psjrav" type="text"/>`),iz=y(`<div class="sv-studio__role svelte-psjrav"><div class="sv-studio__fmt-row svelte-psjrav"><select class="svelte-psjrav"></select> <select class="svelte-psjrav"></select> <!> <button type="button" class="sv-studio__role-x svelte-psjrav" aria-label="Remove rule">×</button></div> <div class="sv-studio__fmt-style svelte-psjrav"><label title="Text color" class="svelte-psjrav"><input type="color" class="svelte-psjrav"/> text</label> <label title="Background" class="svelte-psjrav"><input type="color" class="svelte-psjrav"/> fill</label> <button type="button">no text</button> <button type="button">no fill</button> <label class="sv-studio__check svelte-psjrav"><input type="checkbox" class="svelte-psjrav"/> bold</label></div></div>`),az=y(`<label class="sv-studio__prop svelte-psjrav">Page size <input type="number" min="1" class="svelte-psjrav"/></label> <label class="sv-studio__prop svelte-psjrav">Pager position <select class="svelte-psjrav"><option class="svelte-psjrav">Bottom</option><option class="svelte-psjrav">Top</option><option class="svelte-psjrav">Top & bottom</option></select></label> <label class="sv-studio__prop svelte-psjrav">Page size options <input type="text" placeholder="10, 25, 50, 100" class="svelte-psjrav"/></label>`,1),oz=y(`<span class="sv-studio__hint svelte-psjrav">All rows load at once - no pager.</span>`),sz=y(`<span class="sv-studio__col-pin svelte-psjrav"> </span>`),cz=y(`<span class="sv-studio__hint svelte-psjrav">Renders each value as a pill, auto-colored by common status words (active/pending/closed …).</span>`),lz=y(`<label class="sv-studio__prop svelte-psjrav">Max value <input type="number" min="1" class="svelte-psjrav"/></label>`),Tee=y(`<label class="sv-studio__prop svelte-psjrav">Link type <select class="svelte-psjrav"><option class="svelte-psjrav">Web URL (new tab)</option><option class="svelte-psjrav">Email (mailto:)</option><option class="svelte-psjrav">Phone (tel:)</option></select></label>`),uz=y(`<label class="sv-studio__check svelte-psjrav" style="align-self: end;"><input type="checkbox" class="svelte-psjrav"/> 0-100</label>`),dz=y(`<div class="sv-studio__col-3 svelte-psjrav"><label class="sv-studio__prop svelte-psjrav">Decimals <input type="number" min="0" max="6" placeholder="auto" class="svelte-psjrav"/></label> <!></div>`),fz=y(`<label class="sv-studio__prop svelte-psjrav">Currency code <input type="text" maxlength="3" spellcheck="false" placeholder="USD" class="svelte-psjrav"/></label>`),pz=y(`<label class="sv-studio__prop svelte-psjrav">Pattern <select class="svelte-psjrav"><option class="svelte-psjrav">Default</option><option class="svelte-psjrav">Short</option><option class="svelte-psjrav">Medium</option><option class="svelte-psjrav">Long</option><option class="svelte-psjrav">yyyy-mm-dd</option></select></label>`),Eee=y(`<option class="svelte-psjrav"> </option>`),mz=y(`<label class="sv-studio__prop svelte-psjrav">Aggregate (per group) <select class="svelte-psjrav"><option class="svelte-psjrav">none</option><!></select></label>`),hz=y(`<li><details class="sv-studio__col-det svelte-psjrav"><summary class="sv-studio__col-sum svelte-psjrav"><!> <input type="checkbox" class="svelte-psjrav"/> <span class="sv-studio__col-name svelte-psjrav"> <!></span> <span class="sv-studio__col-move svelte-psjrav"><button type="button" aria-label="Move column up" class="svelte-psjrav">↑</button> <button type="button" aria-label="Move column down" class="svelte-psjrav">↓</button></span></summary> <div class="sv-studio__col-body svelte-psjrav"><label class="sv-studio__prop svelte-psjrav">Header <input type="text" class="svelte-psjrav"/></label> <div class="sv-studio__col-3 svelte-psjrav"><label class="sv-studio__prop svelte-psjrav">Width <input type="number" min="0" placeholder="auto" class="svelte-psjrav"/></label> <label class="sv-studio__prop svelte-psjrav">Align <select class="svelte-psjrav"><option class="svelte-psjrav">auto</option><option class="svelte-psjrav">left</option><option class="svelte-psjrav">center</option><option class="svelte-psjrav">right</option></select></label> <label class="sv-studio__prop svelte-psjrav">Pin <select class="svelte-psjrav"><option class="svelte-psjrav">none</option><option class="svelte-psjrav">left</option><option class="svelte-psjrav">right</option></select></label></div> <label class="sv-studio__prop svelte-psjrav">Display as <select class="svelte-psjrav"><optgroup label="Text"><option class="svelte-psjrav">Plain</option> <option class="svelte-psjrav">Number (decimals)</option> <option class="svelte-psjrav">Currency</option> <option class="svelte-psjrav">Percent</option> <option class="svelte-psjrav">Date</option> <option class="svelte-psjrav">Date + time</option></optgroup><optgroup label="Rich cell"><option class="svelte-psjrav">Status badge</option> <option class="svelte-psjrav">Progress bar</option> <option class="svelte-psjrav">Link</option></optgroup></select></label> <!> <!></div></details></li>`),gz=y(`<span class="sv-studio__sec-badge svelte-psjrav"> </span>`),_z=y(`<details class="sv-studio__section svelte-psjrav" open=""><summary class="sv-studio__sec-head svelte-psjrav"><!><span class="svelte-psjrav">Editing</span></summary> <div class="sv-studio__sec-body svelte-psjrav"><label class="sv-studio__prop svelte-psjrav">Mode <select class="svelte-psjrav"><option class="svelte-psjrav">Popup form</option><option class="svelte-psjrav">Inline (edit in the grid, Excel-style)</option><option class="svelte-psjrav">Read-only</option></select></label> <!> <span class="sv-studio__hint svelte-psjrav">The grid opens its own editor - no separate form block needed.</span></div></details> <details class="sv-studio__section svelte-psjrav" open=""><summary class="sv-studio__sec-head svelte-psjrav"><!><span class="svelte-psjrav">Behavior</span></summary> <div class="sv-studio__sec-body svelte-psjrav"><label class="sv-studio__check svelte-psjrav"><input type="checkbox" class="svelte-psjrav"/> Sortable columns</label> <label class="sv-studio__check svelte-psjrav"><input type="checkbox" class="svelte-psjrav"/> Filtering + search</label> <!> <label class="sv-studio__check svelte-psjrav"><input type="checkbox" class="svelte-psjrav"/> Row selection</label> <label class="sv-studio__check svelte-psjrav"><input type="checkbox" class="svelte-psjrav"/> Cell range selection</label> <label class="sv-studio__check svelte-psjrav"><input type="checkbox" class="svelte-psjrav"/> Striped rows</label> <label class="sv-studio__check svelte-psjrav"><input type="checkbox" class="svelte-psjrav"/> Totals footer row</label> <label class="sv-studio__prop svelte-psjrav">Density <select class="svelte-psjrav"><option class="svelte-psjrav">Compact</option><option class="svelte-psjrav">Normal</option><option class="svelte-psjrav">Comfortable</option></select></label></div></details> <details class="sv-studio__section svelte-psjrav"><summary class="sv-studio__sec-head svelte-psjrav"><!><span class="svelte-psjrav">Grouping</span><!></summary> <div class="sv-studio__sec-body svelte-psjrav"><span class="sv-studio__prop-label svelte-psjrav">Group rows by</span> <div class="sv-studio__checks svelte-psjrav"></div> <!></div></details> <details class="sv-studio__section svelte-psjrav"><summary class="sv-studio__sec-head svelte-psjrav"><!><span class="svelte-psjrav">Tree data</span><!></summary> <div class="sv-studio__sec-body svelte-psjrav"><label class="sv-studio__check svelte-psjrav"><input type="checkbox" class="svelte-psjrav"/> Render rows as an expand/collapse tree</label> <!></div></details> <details class="sv-studio__section svelte-psjrav"><summary class="sv-studio__sec-head svelte-psjrav"><!><span class="svelte-psjrav">Scheduler / calendar</span><!></summary> <div class="sv-studio__sec-body svelte-psjrav"><label class="sv-studio__check svelte-psjrav"><input type="checkbox" class="svelte-psjrav"/> Render rows as a calendar / scheduler</label> <!></div></details> <details class="sv-studio__section svelte-psjrav"><summary class="sv-studio__sec-head svelte-psjrav"><!><span class="svelte-psjrav">Export toolbar</span><!></summary> <div class="sv-studio__sec-body svelte-psjrav"><label class="sv-studio__check svelte-psjrav"><input type="checkbox" class="svelte-psjrav"/> Export CSV</label> <label class="sv-studio__check svelte-psjrav"><input type="checkbox" class="svelte-psjrav"/> Export JSON</label> <label class="sv-studio__check svelte-psjrav"><input type="checkbox" class="svelte-psjrav"/> Copy to clipboard</label> <span class="sv-studio__hint svelte-psjrav">Adds a button bar above the grid wired to its built-in export API - no extra dependencies. Exports the current (filtered / sorted) rows.</span> <label class="sv-studio__check svelte-psjrav"><input type="checkbox" class="svelte-psjrav"/> Export Excel (.xlsx)</label> <label class="sv-studio__check svelte-psjrav"><input type="checkbox" class="svelte-psjrav"/> Export PDF</label> <label class="sv-studio__check svelte-psjrav"><input type="checkbox" class="svelte-psjrav"/> Print</label> <span class="sv-studio__hint svelte-psjrav">These three use <code class="svelte-psjrav">@svgrid/enterprise</code> - real xlsx (styles, frozen header), paginated PDF and print. The generated app adds <code class="svelte-psjrav">jszip</code> / <code class="svelte-psjrav">pdfmake</code> only for the ones you switch on.</span></div></details> <details class="sv-studio__section svelte-psjrav"><summary class="sv-studio__sec-head svelte-psjrav"><!><span class="svelte-psjrav">Navigation & actions</span></summary> <div class="sv-studio__sec-body svelte-psjrav"><span class="sv-studio__prop-label svelte-psjrav">Row click opens</span> <select class="svelte-psjrav"><option class="svelte-psjrav">(nothing)</option><!></select> <!> <span class="sv-studio__prop-label svelte-psjrav">Row action buttons</span> <!> <div class="sv-studio__role-actions svelte-psjrav"></div> <span class="sv-studio__hint svelte-psjrav">Drill-through filters the target screen by the clicked value. Delete + navigate work anywhere; Edit needs the popup form.</span></div></details> <details class="sv-studio__section svelte-psjrav"><summary class="sv-studio__sec-head svelte-psjrav"><!><span class="svelte-psjrav">Conditional formatting</span></summary> <div class="sv-studio__sec-body svelte-psjrav"><!> <button type="button" class="sv-studio__mini svelte-psjrav"><!> Add rule</button> <span class="sv-studio__hint svelte-psjrav">Style a cell when its value matches - e.g. negative amounts red, "overdue" status filled. Runs on the grid's rule engine.</span></div></details> <details class="sv-studio__section svelte-psjrav" open=""><summary class="sv-studio__sec-head svelte-psjrav"><!><span class="svelte-psjrav">Paging</span></summary> <div class="sv-studio__sec-body svelte-psjrav"><label class="sv-studio__check svelte-psjrav"><input type="checkbox" class="svelte-psjrav"/> Paginate</label> <!></div></details> <details class="sv-studio__section svelte-psjrav" open=""><summary class="sv-studio__sec-head svelte-psjrav"><!><span class="svelte-psjrav">Columns</span></summary> <div class="sv-studio__sec-body svelte-psjrav"><ul class="sv-studio__cols svelte-psjrav"></ul></div></details> <details class="sv-studio__section svelte-psjrav"><summary class="sv-studio__sec-head svelte-psjrav"><!><span class="svelte-psjrav">All properties</span><!></summary> <div class="sv-studio__sec-body svelte-psjrav"><span class="sv-studio__hint svelte-psjrav">Every SvGrid property the sections above don't cover. Values pass straight through to the grid.</span> <!></div></details>`,1),vz=y(`<details class="sv-studio__section svelte-psjrav" open=""><summary class="sv-studio__sec-head svelte-psjrav"><!><span class="svelte-psjrav">Data</span></summary> <div class="sv-studio__sec-body svelte-psjrav"><label class="sv-studio__prop svelte-psjrav">Presentation <select class="svelte-psjrav"><option class="svelte-psjrav">Modal</option><option class="svelte-psjrav">Drawer</option><option class="svelte-psjrav">Inline</option></select></label></div></details>`),yz=y(`<option class="svelte-psjrav"> </option>`),bz=y(`<option class="svelte-psjrav"> </option>`),xz=y(`<option class="svelte-psjrav"> </option>`),Sz=y(`<button type="button"><!><span class="svelte-psjrav"> </span></button>`),Cz=y(`<button type="button" class="sv-studio__mini-btn svelte-psjrav">Reset</button>`),wz=y(`<option class="svelte-psjrav"> </option>`),Tz=y(`<details class="sv-studio__section svelte-psjrav" open=""><summary class="sv-studio__sec-head svelte-psjrav"><!><span class="svelte-psjrav">Data</span></summary> <div class="sv-studio__sec-body svelte-psjrav"><label class="sv-studio__prop svelte-psjrav">Group by <select class="svelte-psjrav"></select></label> <label class="sv-studio__prop svelte-psjrav">Measure <select class="svelte-psjrav"><option class="svelte-psjrav">(count)</option><!></select></label> <label class="sv-studio__prop svelte-psjrav">Reduce <select class="svelte-psjrav"></select></label></div></details> <details class="sv-studio__section svelte-psjrav" open=""><summary class="sv-studio__sec-head svelte-psjrav"><!><span class="svelte-psjrav">Appearance</span></summary> <div class="sv-studio__sec-body svelte-psjrav"><div class="sv-studio__prop-label svelte-psjrav">Type</div> <div class="sv-studio__chart-types svelte-psjrav"></div> <label class="sv-studio__check svelte-psjrav"><input type="checkbox" class="svelte-psjrav"/> Show data labels</label> <div class="sv-studio__prop-label svelte-psjrav">Color</div> <div class="sv-studio__chart-color svelte-psjrav"><input type="color" class="svelte-psjrav"/> <span class="sv-studio__chart-color-val svelte-psjrav"> </span> <!></div> <label class="sv-studio__prop svelte-psjrav">Drill into (on click) <select class="svelte-psjrav"><option class="svelte-psjrav">(nothing)</option><!></select></label></div></details>`,1),Ez=y(`<option class="svelte-psjrav"> </option>`),Dz=y(`<option class="svelte-psjrav"> </option>`),Oz=y(`<option class="svelte-psjrav"> </option>`),kz=y(`<details class="sv-studio__section svelte-psjrav" open=""><summary class="sv-studio__sec-head svelte-psjrav"><!><span class="svelte-psjrav">Metric</span></summary> <div class="sv-studio__sec-body svelte-psjrav"><label class="sv-studio__prop svelte-psjrav">Label <input type="text" class="svelte-psjrav"/></label> <label class="sv-studio__prop svelte-psjrav">Measure <select class="svelte-psjrav"><option class="svelte-psjrav">(count rows)</option><!></select></label> <label class="sv-studio__prop svelte-psjrav">Reduce <select class="svelte-psjrav"></select></label></div></details> <details class="sv-studio__section svelte-psjrav" open=""><summary class="sv-studio__sec-head svelte-psjrav"><!><span class="svelte-psjrav">Card style</span></summary> <div class="sv-studio__sec-body svelte-psjrav"><label class="sv-studio__prop svelte-psjrav">Value format <select class="svelte-psjrav"><option class="svelte-psjrav">Auto</option><option class="svelte-psjrav">Number</option><option class="svelte-psjrav">Currency ($)</option><option class="svelte-psjrav">Percent (%)</option><option class="svelte-psjrav">Compact (1.2k)</option></select></label> <label class="sv-studio__prop svelte-psjrav">Sparkline over <select class="svelte-psjrav"><option class="svelte-psjrav">(none)</option><!></select></label> <label class="sv-studio__prop svelte-psjrav">Target <input type="number" placeholder="(none)" class="svelte-psjrav"/></label> <p class="sv-studio__hint svelte-psjrav">A sparkline buckets the measure by the chosen field; a target adds a "% of target" chip.</p></div></details>`,1),Az=y(`<option class="svelte-psjrav"> </option>`),jz=y(`<option class="svelte-psjrav"> </option>`),Mz=y(`<details class="sv-studio__section svelte-psjrav" open=""><summary class="sv-studio__sec-head svelte-psjrav"><!><span class="svelte-psjrav">Gauge</span></summary> <div class="sv-studio__sec-body svelte-psjrav"><label class="sv-studio__prop svelte-psjrav">Label <input type="text" class="svelte-psjrav"/></label> <label class="sv-studio__prop svelte-psjrav">Measure <select class="svelte-psjrav"><option class="svelte-psjrav">(count rows)</option><!></select></label> <label class="sv-studio__prop svelte-psjrav">Reduce <select class="svelte-psjrav"></select></label> <div class="sv-studio__prop-row svelte-psjrav"><label class="sv-studio__prop svelte-psjrav">Min <input type="number" class="svelte-psjrav"/></label> <label class="sv-studio__prop svelte-psjrav">Max <input type="number" class="svelte-psjrav"/></label></div> <label class="sv-studio__prop svelte-psjrav">Unit <input type="text" placeholder="e.g. %, $, pts" class="svelte-psjrav"/></label></div></details>`),Nz=y(`<option class="svelte-psjrav"> </option>`),Dee=y(`<option class="svelte-psjrav"> </option>`),Pz=y(`<details class="sv-studio__section svelte-psjrav" open=""><summary class="sv-studio__sec-head svelte-psjrav"><!><span class="svelte-psjrav">Tree</span></summary> <div class="sv-studio__sec-body svelte-psjrav"><label class="sv-studio__prop svelte-psjrav">Label field <select class="svelte-psjrav"><option disabled="" class="svelte-psjrav">label field…</option><!></select></label> <label class="sv-studio__prop svelte-psjrav">Parent field <select class="svelte-psjrav"><option disabled="" class="svelte-psjrav">self-referential FK…</option><!></select></label> <span class="sv-studio__hint svelte-psjrav">The parent field is a row's link to its parent row (same entity). Rows with an empty parent are roots.</span></div></details>`),Fz=y(`<option class="svelte-psjrav"> </option>`),Iz=y(`<option class="svelte-psjrav"> </option>`),Lz=y(`<option class="svelte-psjrav"> </option>`),Rz=y(`<option class="svelte-psjrav"> </option>`),zz=y(`<option class="svelte-psjrav"> </option>`),Bz=y(`<label class="sv-studio__prop svelte-psjrav">Card opens <select class="svelte-psjrav"><option class="svelte-psjrav">(nothing)</option><!></select></label>`),Vz=y(`<details class="sv-studio__section svelte-psjrav" open=""><summary class="sv-studio__sec-head svelte-psjrav"><!><span class="svelte-psjrav">Board</span></summary> <div class="sv-studio__sec-body svelte-psjrav"><label class="sv-studio__prop svelte-psjrav">Columns (group by) <select class="svelte-psjrav"><option disabled="" class="svelte-psjrav">enum field…</option><!></select></label> <label class="sv-studio__prop svelte-psjrav">Card title <select class="svelte-psjrav"></select></label> <label class="sv-studio__prop svelte-psjrav">Card badge <select class="svelte-psjrav"><option class="svelte-psjrav">(none)</option><!></select></label> <label class="sv-studio__prop svelte-psjrav">Card subtitle <select class="svelte-psjrav"><option class="svelte-psjrav">(none)</option><!></select></label> <!> <span class="sv-studio__hint svelte-psjrav">Columns come from an enum field's options. Drag a card between columns to change its value.</span></div></details>`),Oee=y(`<option class="svelte-psjrav"> </option>`),kee=y(`<option class="svelte-psjrav"> </option>`),Hz=y(`<option class="svelte-psjrav"> </option>`),Uz=y(`<option class="svelte-psjrav"> </option>`),Wz=y(`<label class="sv-studio__prop svelte-psjrav">Event opens <select class="svelte-psjrav"><option class="svelte-psjrav">(nothing)</option><!></select></label>`),Gz=y(`<details class="sv-studio__section svelte-psjrav" open=""><summary class="sv-studio__sec-head svelte-psjrav"><!><span class="svelte-psjrav">Calendar</span></summary> <div class="sv-studio__sec-body svelte-psjrav"><label class="sv-studio__prop svelte-psjrav">Date field <select class="svelte-psjrav"><option disabled="" class="svelte-psjrav">date field…</option><!></select></label> <label class="sv-studio__prop svelte-psjrav">Event title <select class="svelte-psjrav"></select></label> <label class="sv-studio__prop svelte-psjrav">Color by <select class="svelte-psjrav"><option class="svelte-psjrav">(accent)</option><!></select></label> <!> <span class="sv-studio__hint svelte-psjrav">Rows are placed on the calendar by their date field; an enum color field tints each event.</span></div></details>`),Kz=y(`<option class="svelte-psjrav"> </option>`),qz=y(`<option class="svelte-psjrav"> </option>`),Jz=y(`<option class="svelte-psjrav"> </option>`),Yz=y(`<label class="sv-studio__check svelte-psjrav"><input type="checkbox" class="svelte-psjrav"/> </label>`),Xz=y(`<label class="sv-studio__check svelte-psjrav"><input type="checkbox" class="svelte-psjrav"/> </label>`),Zz=y(`<div class="sv-studio__prop svelte-psjrav">Related tabs <div class="sv-studio__checks svelte-psjrav"></div></div>`),Qz=y(`<label class="sv-studio__check svelte-psjrav"><input type="checkbox" class="svelte-psjrav"/> </label>`),$z=y(`<details class="sv-studio__subsec svelte-psjrav"><summary class="svelte-psjrav"><input class="sv-studio__sec-name svelte-psjrav"/><button type="button" class="sv-studio__sec-x svelte-psjrav" aria-label="Remove section">×</button></summary> <div class="sv-studio__checks svelte-psjrav"></div></details>`),eB=y(`<details class="sv-studio__section svelte-psjrav" open=""><summary class="sv-studio__sec-head svelte-psjrav"><!><span class="svelte-psjrav">Detail page</span></summary> <div class="sv-studio__sec-body svelte-psjrav"><label class="sv-studio__prop svelte-psjrav">Title <select class="svelte-psjrav"></select></label> <label class="sv-studio__prop svelte-psjrav">Subtitle <select class="svelte-psjrav"><option class="svelte-psjrav">(none)</option><!></select></label> <label class="sv-studio__prop svelte-psjrav">Status pill <select class="svelte-psjrav"><option class="svelte-psjrav">(none)</option><!></select></label> <div class="sv-studio__prop svelte-psjrav">Metric tiles <div class="sv-studio__checks svelte-psjrav"></div></div> <!> <div class="sv-studio__prop svelte-psjrav">Overview sections <!> <button type="button" class="sv-studio__gen-btn svelte-psjrav"><!> Add section</button></div> <span class="sv-studio__hint svelte-psjrav">A full record page: header, status pill, metric tiles, an Overview (custom sections or all remaining fields), and a timeline tab per related collection.</span></div></details>`),tB=y(`<span class="sv-studio__hint svelte-psjrav">No blocks yet.</span>`),nB=y(`<option class="svelte-psjrav"> </option>`),rB=y(`<option class="svelte-psjrav"> </option>`),iB=y(`<div class="sv-studio__tab-edit svelte-psjrav"><div class="sv-studio__fmt-row svelte-psjrav"><input type="text" aria-label="Tab label" class="svelte-psjrav"/> <button type="button" class="sv-studio__mini svelte-psjrav" title="Remove tab">×</button></div> <div class="sv-studio__tab-children svelte-psjrav"></div> <div class="sv-studio__fmt-row svelte-psjrav"><select class="sv-studio__tabadd svelte-psjrav" aria-label="Add display block to tab"><option class="svelte-psjrav">+ block…</option><!></select> <select class="sv-studio__tabadd svelte-psjrav" aria-label="Add component to tab"><option class="svelte-psjrav">+ component…</option><!></select></div></div>`),aB=y(`<details class="sv-studio__section svelte-psjrav" open=""><summary class="sv-studio__sec-head svelte-psjrav"><!><span class="svelte-psjrav">Tabs</span></summary> <div class="sv-studio__sec-body svelte-psjrav"><!> <button type="button" class="sv-studio__gen-btn svelte-psjrav"><!> Add tab</button> <span class="sv-studio__hint svelte-psjrav">Tabs group display blocks (charts, KPIs, ...) <strong class="svelte-psjrav">and any UI component</strong>. <strong class="svelte-psjrav">Click a nested block in the canvas</strong> to select and configure it.</span></div></details>`),oB=y(`<span class="sv-studio__hint svelte-psjrav">No blocks yet.</span>`),sB=y(`<option class="svelte-psjrav"> </option>`),cB=y(`<option class="svelte-psjrav"> </option>`),lB=y(`<div class="sv-studio__tab-edit svelte-psjrav"><div class="sv-studio__fmt-row svelte-psjrav"><input type="text" aria-label="Section label" class="svelte-psjrav"/> <button type="button" class="sv-studio__mini svelte-psjrav" title="Remove section">×</button></div> <div class="sv-studio__tab-children svelte-psjrav"></div> <div class="sv-studio__fmt-row svelte-psjrav"><select class="sv-studio__tabadd svelte-psjrav" aria-label="Add display block to section"><option class="svelte-psjrav">+ block…</option><!></select> <select class="sv-studio__tabadd svelte-psjrav" aria-label="Add component to section"><option class="svelte-psjrav">+ component…</option><!></select></div></div>`),uB=y(`<details class="sv-studio__section svelte-psjrav" open=""><summary class="sv-studio__sec-head svelte-psjrav"><!><span class="svelte-psjrav">Accordion</span></summary> <div class="sv-studio__sec-body svelte-psjrav"><label class="sv-studio__check svelte-psjrav"><input type="checkbox" class="svelte-psjrav"/> Allow multiple sections open</label> <!> <button type="button" class="sv-studio__gen-btn svelte-psjrav"><!> Add section</button> <span class="sv-studio__hint svelte-psjrav">Accordion sections host display blocks <strong class="svelte-psjrav">and any UI component</strong>. <strong class="svelte-psjrav">Click a nested block in the canvas</strong> to select and configure it.</span></div></details>`),dB=y(`<option class="svelte-psjrav"> </option>`),fB=y(`<option class="svelte-psjrav"> </option>`),pB=y(`<option class="svelte-psjrav"> </option>`),mB=y(`<label class="sv-studio__prop svelte-psjrav">Row opens <select class="svelte-psjrav"><option class="svelte-psjrav">(expand inline)</option><!></select></label> <span class="sv-studio__hint svelte-psjrav">"Row opens" a detail page instead of expanding the child grid inline.</span>`,1),Aee=y(`<span class="sv-studio__hint svelte-psjrav"> </span>`),hB=y(`<details class="sv-studio__section svelte-psjrav" open=""><summary class="sv-studio__sec-head svelte-psjrav"><!><span class="svelte-psjrav">Detail</span></summary> <div class="sv-studio__sec-body svelte-psjrav"><label class="sv-studio__prop svelte-psjrav">Child entity <select class="svelte-psjrav"><option disabled="" class="svelte-psjrav">child entity…</option><!></select></label> <label class="sv-studio__prop svelte-psjrav">Foreign key <select class="svelte-psjrav"><option disabled="" class="svelte-psjrav">field in child…</option><!></select></label> <!> <!></div></details>`),gB=y(`<label class="sv-studio__check svelte-psjrav"><input type="checkbox" class="svelte-psjrav"/> </label>`),_B=y(`<label class="sv-studio__check svelte-psjrav"><input type="checkbox" class="svelte-psjrav"/> </label>`),vB=y(`<option class="svelte-psjrav"> </option>`),yB=y(`<option class="svelte-psjrav"> </option>`),bB=y(`<details class="sv-studio__section svelte-psjrav" open=""><summary class="sv-studio__sec-head svelte-psjrav"><!><span class="svelte-psjrav">Pivot</span></summary> <div class="sv-studio__sec-body svelte-psjrav"><span class="sv-studio__prop-label svelte-psjrav">Rows</span> <div class="sv-studio__checks svelte-psjrav"></div> <span class="sv-studio__prop-label svelte-psjrav">Columns</span> <div class="sv-studio__checks svelte-psjrav"></div> <label class="sv-studio__prop svelte-psjrav">Measure <select class="svelte-psjrav"><option class="svelte-psjrav">(count rows)</option><!></select></label> <label class="sv-studio__prop svelte-psjrav">Aggregate <select class="svelte-psjrav"></select></label> <span class="sv-studio__hint svelte-psjrav">Drop fields into rows / columns; end users can re-pivot live in the generated app.</span></div></details>`),xB=y(`<label class="sv-studio__check svelte-psjrav"><input type="checkbox" class="svelte-psjrav"/> <span class="sv-studio__facet-kind svelte-psjrav"> </span></label>`),SB=y(`<span class="sv-studio__hint svelte-psjrav">No enum / boolean / text fields to filter on.</span>`),CB=y(`<details class="sv-studio__section svelte-psjrav" open=""><summary class="sv-studio__sec-head svelte-psjrav"><!><span class="svelte-psjrav">Filter panel</span></summary> <div class="sv-studio__sec-body svelte-psjrav"><label class="sv-studio__prop svelte-psjrav">Title <input type="text" placeholder="Filters" class="svelte-psjrav"/></label> <span class="sv-studio__prop-label svelte-psjrav">Facets</span> <div class="sv-studio__checks svelte-psjrav"><!> <!></div> <span class="sv-studio__hint svelte-psjrav">The panel filters the grid on this screen (enum / boolean pick a value, text searches).</span></div></details>`),wB=y(`<label class="sv-studio__prop svelte-psjrav">Show as <select class="svelte-psjrav"><option class="svelte-psjrav">Inline (in the page)</option><option class="svelte-psjrav">Modal dialog</option><option class="svelte-psjrav">Sidebar drawer</option></select></label> <span class="sv-studio__hint svelte-psjrav">Modal / drawer open when a row is selected in the grid; inline edits in place.</span>`,1),TB=y(`<label class="sv-studio__check svelte-psjrav"><input type="checkbox" class="svelte-psjrav"/> </label>`),EB=y(`<span class="sv-studio__prop-label svelte-psjrav">Fields shown</span> <div class="sv-studio__checks svelte-psjrav"></div>`,1),DB=y(`<details class="sv-studio__section svelte-psjrav" open=""><summary class="sv-studio__sec-head svelte-psjrav"><!><span class="svelte-psjrav">Record panel</span></summary> <div class="sv-studio__sec-body svelte-psjrav"><label class="sv-studio__check svelte-psjrav"><input type="checkbox" class="svelte-psjrav"/> Editable (edit form)</label> <!> <!> <span class="sv-studio__hint svelte-psjrav">Shows the row selected in this screen's grid. Add a Grid block too.</span></div></details>`),OB=y(`<option class="svelte-psjrav"> </option>`),kB=y(`<details class="sv-studio__section svelte-psjrav" open=""><summary class="sv-studio__sec-head svelte-psjrav"><!><span class="svelte-psjrav">Lookup</span></summary> <div class="sv-studio__sec-body svelte-psjrav"><label class="sv-studio__prop svelte-psjrav">Field <select class="svelte-psjrav"></select></label> <span class="sv-studio__hint svelte-psjrav">A relation field renders as a searchable lookup in the edit form.</span></div></details>`),AB=y(`<input type="text" class="svelte-psjrav"/>`),jB=y(`<div class="sv-studio__prop svelte-psjrav"><span class="sv-studio__prop-head svelte-psjrav">Content<!></span> <!></div>`),MB=y(`<div class="sv-studio__prop-group svelte-psjrav"> </div>`),NB=y(`<div class="sv-studio__prop sv-studio__prop--code svelte-psjrav"><span class="sv-studio__prop-head svelte-psjrav"><!></span> <code class="sv-studio__prop-codeval svelte-psjrav"> </code></div>`),PB=y(`<option class="svelte-psjrav"> </option>`),FB=y(`<label class="sv-studio__prop svelte-psjrav"><!> <select class="svelte-psjrav"></select></label>`),IB=y(`<span class="sv-studio__prop-info svelte-psjrav" role="img">?</span>`),LB=y(`<label class="sv-studio__check svelte-psjrav"><input type="checkbox" class="svelte-psjrav"/> <!></label>`),RB=y(`<div class="sv-studio__prop svelte-psjrav"><span class="sv-studio__prop-head svelte-psjrav"><!></span> <!></div>`),zB=y(`<div class="sv-studio__prop svelte-psjrav"><span class="sv-studio__prop-head svelte-psjrav"><!><!></span> <input type="number" class="svelte-psjrav"/></div>`),BB=y(`<span class="sv-studio__hint sv-studio__hint--error svelte-psjrav">Not valid JSON - change not applied.</span>`),VB=y(`<div class="sv-studio__prop svelte-psjrav"><span class="sv-studio__prop-head svelte-psjrav"><!></span> <textarea rows="3" spellcheck="false"></textarea> <!></div>`),HB=y(`<label class="sv-studio__prop svelte-psjrav"><!> <input type="date" class="svelte-psjrav"/></label>`),UB=y(`<div class="sv-studio__prop svelte-psjrav"><span class="sv-studio__prop-head svelte-psjrav"><!><!></span> <input type="text" class="svelte-psjrav"/></div>`),WB=y(`<!> <!>`,1),GB=y(`<span class="sv-studio__hint svelte-psjrav">Click <strong class="svelte-psjrav">fx</strong> on a field to bind it to your data (an aggregate, a row value, or an expression) instead of a fixed value.</span>`),KB=y(`<span class="sv-studio__hint svelte-psjrav"> </span>`),qB=y(`<details class="sv-studio__section svelte-psjrav" open=""><summary class="sv-studio__sec-head svelte-psjrav"><!><span class="svelte-psjrav"> </span></summary> <div class="sv-studio__sec-body svelte-psjrav"><label class="sv-studio__prop svelte-psjrav">Handle name <input type="text" spellcheck="false" class="svelte-psjrav"/></label> <span class="sv-studio__hint svelte-psjrav">Reach it in code as <code class="svelte-psjrav"> </code>.</span> <!> <!> <!> <!></div></details>`),JB=y(`<div class="sv-studio__propview svelte-psjrav" role="group" aria-label="Property view"><button type="button" title="Show all properties in one list">All</button> <button type="button" title="Group properties into collapsible categories">Categorized</button></div> <!> <details class="sv-studio__section svelte-psjrav" open=""><summary class="sv-studio__sec-head svelte-psjrav"><!><span class="svelte-psjrav">Layout</span></summary> <div class="sv-studio__sec-body svelte-psjrav"><label class="sv-studio__prop svelte-psjrav">Width <span class="sv-studio__width-val svelte-psjrav"> </span> <input type="range" min="1" max="12" step="1" class="svelte-psjrav"/></label> <!></div></details> <details class="sv-studio__section svelte-psjrav"><summary class="sv-studio__sec-head svelte-psjrav"><!><span class="svelte-psjrav">Appearance</span></summary> <div class="sv-studio__sec-body svelte-psjrav"><div class="sv-studio__prop-row svelte-psjrav"><label class="sv-studio__prop svelte-psjrav">Border <select class="svelte-psjrav"><option class="svelte-psjrav">Default</option><option class="svelte-psjrav">On</option><option class="svelte-psjrav">Off</option></select></label> <label class="sv-studio__prop svelte-psjrav">Shadow <select class="svelte-psjrav"><option class="svelte-psjrav">Default</option><option class="svelte-psjrav">On</option><option class="svelte-psjrav">Off</option></select></label></div> <div class="sv-studio__prop-row svelte-psjrav"><label class="sv-studio__prop svelte-psjrav">Padding (px) <input type="number" min="0" max="80" step="2" placeholder="default" class="svelte-psjrav"/></label> <label class="sv-studio__prop svelte-psjrav">Margin (px) <input type="number" min="0" max="80" step="2" placeholder="default" class="svelte-psjrav"/></label></div> <label class="sv-studio__prop svelte-psjrav">Corner radius (px) <input type="number" min="0" max="40" step="1" placeholder="default" class="svelte-psjrav"/></label> <label class="sv-studio__prop svelte-psjrav">CSS class <input type="text" spellcheck="false" placeholder="e.g. featured-card" class="svelte-psjrav"/> <span class="sv-studio__hint svelte-psjrav">Added to the block's wrapper - target it in <strong class="svelte-psjrav">Code › custom.css</strong>, e.g. <code class="svelte-psjrav"></code>.</span></label> <span class="sv-studio__hint svelte-psjrav">Overrides the block's default look. Leave a field blank / "Default" to keep it.</span></div></details> <!>`,1),YB=y(`<h4 class="sv-studio__insp-head svelte-psjrav"><!> </h4> <!> <!>`,1),XB=y(`<div class="sv-studio__insp-body svelte-psjrav"><!></div>`),ZB=y(`<label class="sv-studio__prop svelte-psjrav">Nav label <input type="text" class="svelte-psjrav"/></label> <label class="sv-studio__prop svelte-psjrav">Nav order <input type="number" class="svelte-psjrav"/></label>`,1),QB=y(`<label class="sv-studio__prop svelte-psjrav">Render <select class="svelte-psjrav"><option class="svelte-psjrav">Client (SPA)</option><option class="svelte-psjrav">Server-first (SSR)</option></select> <span class="sv-studio__hint svelte-psjrav">Server-first emits an idiomatic SvelteKit <code class="svelte-psjrav">+page.server.ts</code> - real server-rendered HTML, form actions, shareable URLs, works without JS. Client renders in the browser (the default).</span></label>`),$B=y(`<option class="svelte-psjrav"> </option>`),eV=y(`<label class="sv-studio__prop svelte-psjrav">Arrange <div class="sv-studio__newpage svelte-psjrav"><select class="sv-studio__template svelte-psjrav" aria-label="Grid arrangement preset"><option disabled="" selected="" class="svelte-psjrav">Apply a preset...</option><!></select></div> <span class="sv-studio__hint svelte-psjrav">One-click column-span patterns for the current blocks. Fine-tune any block's width afterward.</span></label>`),tV=y(`<li class="svelte-psjrav"><button type="button"><!><span class="svelte-psjrav"> </span><small class="svelte-psjrav"> </small></button></li>`),nV=y(`<ul class="sv-studio__struct sv-studio__struct--nested svelte-psjrav" role="list"></ul>`),rV=y(`<li class="svelte-psjrav"><button type="button"><!><span class="svelte-psjrav"> </span></button> <!></li>`),iV=y(`<details class="sv-studio__section sv-studio__outline svelte-psjrav" open=""><summary class="sv-studio__sec-head svelte-psjrav"><!><span class="svelte-psjrav">Structure</span></summary> <ul class="sv-studio__struct svelte-psjrav" role="list"></ul></details>`),jee=y(`<span class="sv-studio__prop-label svelte-psjrav">Grid options</span> <div class="sv-studio__prop-row svelte-psjrav"><label class="sv-studio__prop svelte-psjrav">Column gap<input type="number" min="0" max="80" class="svelte-psjrav"/></label> <label class="sv-studio__prop svelte-psjrav">Row gap<input type="number" min="0" max="80" class="svelte-psjrav"/></label></div> <div class="sv-studio__prop-row svelte-psjrav"><label class="sv-studio__prop svelte-psjrav">Max width<input type="number" min="0" step="20" title="0 = full width" class="svelte-psjrav"/></label> <label class="sv-studio__prop svelte-psjrav">Row align <select class="svelte-psjrav"><option class="svelte-psjrav">Top</option><option class="svelte-psjrav">Stretch</option></select></label></div> <label class="sv-studio__prop svelte-psjrav">Mobile breakpoint (px)<input type="number" min="320" max="1400" step="20" title="Below this width the grid collapses to one column" class="svelte-psjrav"/></label>`,1),aV=y(`<label class="sv-studio__prop svelte-psjrav">Column align <select class="svelte-psjrav"><option class="svelte-psjrav">Left</option><option class="svelte-psjrav">Center</option></select></label>`),oV=y(`<span class="sv-studio__prop-label svelte-psjrav">Stack options</span> <div class="sv-studio__prop-row svelte-psjrav"><label class="sv-studio__prop svelte-psjrav">Gap<input type="number" min="0" max="80" class="svelte-psjrav"/></label> <label class="sv-studio__prop svelte-psjrav">Max width<input type="number" min="0" step="20" title="0 = full width" class="svelte-psjrav"/></label></div> <label class="sv-studio__prop svelte-psjrav">Min block height (px)<input type="number" min="0" step="20" title="Every stacked block is at least this tall" class="svelte-psjrav"/></label> <!> <label class="sv-studio__check svelte-psjrav"><input type="checkbox" class="svelte-psjrav"/> Dividers between blocks</label>`,1),Mee=y(`<span class="sv-studio__prop-label svelte-psjrav">Split options</span> <label class="sv-studio__prop svelte-psjrav">Orientation <select class="svelte-psjrav"><option class="svelte-psjrav">Auto (by role)</option><option class="svelte-psjrav">Columns (side by side)</option><option class="svelte-psjrav">Rows (stacked)</option></select></label> <label class="sv-studio__prop svelte-psjrav">Min pane size (px)<input type="number" min="40" max="400" step="10" class="svelte-psjrav"/></label> <label class="sv-studio__check svelte-psjrav"><input type="checkbox" class="svelte-psjrav"/> Remember user resizes</label>`,1),sV=y(`<span class="sv-studio__prop-label svelte-psjrav">Docking options</span> <label class="sv-studio__prop svelte-psjrav">Tab strip position <select class="svelte-psjrav"><option class="svelte-psjrav">Top</option><option class="svelte-psjrav">Bottom</option><option class="svelte-psjrav">Left</option><option class="svelte-psjrav">Right</option></select></label> <label class="sv-studio__check svelte-psjrav"><input type="checkbox" class="svelte-psjrav"/> Allow pop-out to a new window</label> <label class="sv-studio__check svelte-psjrav"><input type="checkbox" class="svelte-psjrav"/> Hide tab on single-pane panels</label> <label class="sv-studio__check svelte-psjrav"><input type="checkbox" class="svelte-psjrav"/> Remember arrangement</label>`,1),Nee=y(`<span class="sv-studio__prop-label svelte-psjrav">Canvas options</span> <div class="sv-studio__prop-row svelte-psjrav"><label class="sv-studio__prop svelte-psjrav">Columns <select class="svelte-psjrav"><option class="svelte-psjrav">12</option><option class="svelte-psjrav">16</option><option class="svelte-psjrav">24</option></select></label> <label class="sv-studio__prop svelte-psjrav">Row height<input type="number" min="16" max="120" step="4" class="svelte-psjrav"/></label></div> <label class="sv-studio__prop svelte-psjrav">Gap<input type="number" min="0" max="40" class="svelte-psjrav"/></label> <label class="sv-studio__check svelte-psjrav"><input type="checkbox" class="svelte-psjrav"/> Show grid lines in the app</label>`,1),cV=y(`<div class="sv-studio__statevar svelte-psjrav"><input class="sv-studio__statevar-name svelte-psjrav" aria-label="Variable name"/> <select aria-label="Type" class="svelte-psjrav"><option class="svelte-psjrav">Text</option><option class="svelte-psjrav">Number</option><option class="svelte-psjrav">Boolean</option><option class="svelte-psjrav">JSON</option></select> <input class="sv-studio__statevar-init svelte-psjrav" placeholder="initial" aria-label="Initial value"/> <button type="button" class="sv-studio__tree-x svelte-psjrav" aria-label="Remove variable"><!></button></div>`),lV=y(`<span class="sv-studio__tree-empty svelte-psjrav">No state yet.</span>`),uV=y(`<option class="svelte-psjrav"> </option>`),dV=y(`<label class="sv-studio__check svelte-psjrav"><input type="checkbox" class="svelte-psjrav"/> </label>`),fV=y(`<label class="sv-studio__check svelte-psjrav"><input type="checkbox" class="svelte-psjrav"/> </label>`),pV=y(`<div class="sv-studio__checks svelte-psjrav"></div>`),mV=y(`<div class="sv-studio__role svelte-psjrav"><div class="sv-studio__role-head svelte-psjrav"><input class="sv-studio__role-name svelte-psjrav" type="text" aria-label="Role name"/> <button type="button" class="sv-studio__role-x svelte-psjrav" aria-label="Remove role">×</button></div> <div class="sv-studio__role-actions svelte-psjrav"></div> <label class="sv-studio__check svelte-psjrav"><input type="checkbox" class="svelte-psjrav"/> All screens</label> <!></div>`),hV=y(`<label class="sv-studio__prop svelte-psjrav">Default role <select class="svelte-psjrav"></select></label> <!> <button type="button" class="sv-studio__mini svelte-psjrav"><!> Add role</button> <span class="sv-studio__hint svelte-psjrav">Reads need screen access; writes need the action. Enforced in the UI and the generated API route. Turn on <strong class="svelte-psjrav">Authentication</strong> below to auto-wire the signed-in role.</span>`,1),gV=y(`<span class="sv-studio__issue sv-studio__issue--error svelte-psjrav">Supabase Auth needs a Supabase connection. Set the shared project URL / anon key in a data-source builder, or bind an entity to Supabase.</span>`),_V=y(`<!> <span class="sv-studio__hint svelte-psjrav">Gates the app behind Supabase Auth: a client-side <code class="svelte-psjrav">SvAuthGate</code> over the shared Supabase client (<code class="svelte-psjrav">connections.ts</code>) with email/password sign-in, sign-up, and sign-out. Pair it with <strong class="svelte-psjrav">Row Level Security</strong> policies on your tables - the signed-in user's JWT is sent with every request, so RLS decides what each user can read/write. No server session or user table is emitted.</span>`,1),Pee=y(`<label class="sv-studio__check svelte-psjrav"><input type="checkbox" class="svelte-psjrav"/> </label>`),vV=y(`<label class="sv-studio__check svelte-psjrav"><input type="checkbox" class="svelte-psjrav"/> Self-service sign-up + password reset</label> <label class="sv-studio__check svelte-psjrav"><input type="checkbox" class="svelte-psjrav"/> Admin user-management screen</label> <label class="sv-studio__check svelte-psjrav"><input type="checkbox" class="svelte-psjrav"/> Email two-factor (one-time code)</label> <label class="sv-studio__check svelte-psjrav"><input type="checkbox" class="svelte-psjrav"/> Real email delivery (Resend / SMTP)</label> <span class="sv-studio__rail-sublabel svelte-psjrav">Social / SSO sign-in</span> <div class="sv-studio__checks svelte-psjrav"></div> <span class="sv-studio__hint svelte-psjrav">Scaffolds a dependency-free session (Web Crypto), <code class="svelte-psjrav">hooks.server.ts</code>, a <strong class="svelte-psjrav">/login</strong> <code class="svelte-psjrav">event.locals.role</code>, so RBAC works end-to-end. Set <code class="svelte-psjrav">SESSION_SECRET</code> </span>`,1),yV=y(`<label class="sv-studio__prop svelte-psjrav">Provider <select class="svelte-psjrav"><option class="svelte-psjrav">Built-in (cookie sessions)</option><option class="svelte-psjrav">Supabase Auth</option></select></label> <label class="sv-studio__check svelte-psjrav"><input type="checkbox" class="svelte-psjrav"/> Require login for the whole app</label> <!>`,1),bV=y(`<option class="svelte-psjrav"> </option>`),Fee=y(`<label class="sv-studio__prop svelte-psjrav">Locales (comma-separated) <input type="text" placeholder="en, es, fr" class="svelte-psjrav"/></label> <label class="sv-studio__prop svelte-psjrav">Default locale <select class="svelte-psjrav"></select></label> <span class="sv-studio__hint svelte-psjrav">The default locale is seeded from your labels; fill the others in <code class="svelte-psjrav">src/lib/i18n.ts</code>. Nav, titles, the New button, and column headers route through <code class="svelte-psjrav">t()</code>.</span>`,1),xV=y(`<span class="sv-studio__hint svelte-psjrav">Real, <strong class="svelte-psjrav">persistent</strong> Postgres (PGlite) running in the browser - zero setup, no keys. Data survives reloads. Switch to <strong class="svelte-psjrav">SQL</strong> to point at hosted Postgres for production (same schema).</span>`),SV=y(`<div class="sv-studio__ds-summary svelte-psjrav"><span class="sv-studio__ds-method svelte-psjrav"> </span> <span class="sv-studio__ds-url svelte-psjrav"> </span></div> <button type="button" class="sv-studio__gen-btn svelte-psjrav"><!> Open request builder</button> <span class="sv-studio__hint svelte-psjrav">Set the endpoint + parameters and test it live.</span>`,1),CV=y(`<div class="sv-studio__ds-summary svelte-psjrav"><span class="sv-studio__ds-method svelte-psjrav">SQL</span> <span class="sv-studio__ds-url svelte-psjrav"> </span></div> <button type="button" class="sv-studio__gen-btn svelte-psjrav"><!> Open SQL builder</button> <span class="sv-studio__hint svelte-psjrav">Table + dialect; Generate emits a connected <code class="svelte-psjrav">/api</code> route.</span>`,1),wV=y(`<div class="sv-studio__ds-summary svelte-psjrav"><span class="sv-studio__ds-method svelte-psjrav">SUPABASE</span> <span class="sv-studio__ds-url svelte-psjrav"> </span></div> <button type="button" class="sv-studio__gen-btn svelte-psjrav"><!> Open Supabase builder</button> <span class="sv-studio__hint svelte-psjrav">Connect your project + table, fetch a sample, import fields.</span>`,1),TV=y(`<span class="sv-studio__hint svelte-psjrav">Seeded in-memory data - runs with no backend.</span>`),EV=y(`<span class="sv-studio__sec-badge svelte-psjrav"> </span>`),DV=y(`<span class="sv-studio__hint svelte-psjrav">Rules run + are <strong class="svelte-psjrav">enforced server-side only on a SQL data source</strong>. This entity uses <strong class="svelte-psjrav"> </strong>, so they won't run yet - switch its source to SQL to activate them.</span>`),OV=y(`<span class="sv-studio__hint svelte-psjrav">Business rules run on the server around every write, so a client that skips its checks still can't write bad data. The payload is <code class="svelte-psjrav">v</code>.</span>`),kV=y(`<span class="sv-studio__sec-badge svelte-psjrav"> </span>`),AV=y(`<pre class="sv-studio__methods-code svelte-psjrav"> </pre>`),jV=y(`<details class="sv-studio__section sv-studio__section--sub svelte-psjrav"><summary class="sv-studio__sec-head svelte-psjrav"><!><span class="svelte-psjrav"> </span><!></summary> <div class="sv-studio__sec-body svelte-psjrav"><!> <!></div></details>`),MV=y(`<option class="svelte-psjrav"> </option>`),Iee=y(`<input class="sv-studio__field-formula svelte-psjrav" placeholder="ƒ formula, e.g. qty * price" title="Computed value from other fields (leave blank for a plain field)"/>`),NV=y(`<option class="svelte-psjrav"> </option>`),PV=y(`<input class="sv-studio__field-formula svelte-psjrav" placeholder="mask, e.g. (999) 000-0000" title="Mask pattern: 9 = digit, a = letter, * = any"/>`),FV=y(`<div class="sv-studio__field-ctrl svelte-psjrav"><input class="sv-studio__field-num svelte-psjrav" type="number" placeholder="min" aria-label="Minimum value" title="Minimum (validates, and sets the slider / rating start)"/> <input class="sv-studio__field-num svelte-psjrav" type="number" placeholder="max" aria-label="Maximum value" title="Maximum (validates, and sets the slider / rating end)"/></div> <div class="sv-studio__field-ctrl svelte-psjrav"><input class="sv-studio__field-num svelte-psjrav" type="number" placeholder="step" aria-label="Step" title="Step increment"/> <input class="sv-studio__field-num svelte-psjrav" type="number" placeholder="dec" aria-label="Decimals" title="Decimal places"/> <input class="sv-studio__field-num svelte-psjrav" placeholder="$" aria-label="Prefix" title="Prefix, e.g. $"/> <input class="sv-studio__field-num svelte-psjrav" placeholder="%" aria-label="Suffix" title="Suffix, e.g. %"/></div>`,1),IV=y(`<div class="sv-studio__field-ctrl svelte-psjrav"><select aria-label="Form control" title="Which editor this field renders as in the form" class="svelte-psjrav"></select> <label class="sv-studio__field-wide svelte-psjrav" title="Span both form columns"><input type="checkbox" class="svelte-psjrav"/> Wide</label></div> <!> <!>`,1),LV=y(`<option class="svelte-psjrav"> </option>`),Lee=y(`<option class="svelte-psjrav"> </option>`),RV=y(`<div class="sv-studio__field-rel svelte-psjrav"><select aria-label="Related entity" class="svelte-psjrav"><option disabled="" class="svelte-psjrav">related entity…</option><!></select> <select aria-label="Label field" class="svelte-psjrav"><option disabled="" class="svelte-psjrav">label field…</option><!></select></div>`),Ree=y(`<div class="sv-studio__field-opt svelte-psjrav"><input placeholder="value" aria-label="Option value" class="svelte-psjrav"/> <input placeholder="label" aria-label="Option label" class="svelte-psjrav"/> <input type="color" class="sv-studio__field-opt-color svelte-psjrav" aria-label="Option color" title="Badge / board-lane color"/> <button type="button" class="sv-studio__mini svelte-psjrav" aria-label="Remove option">×</button></div>`),zV=y(`<div class="sv-studio__field-opts svelte-psjrav"><!> <button type="button" class="sv-studio__field-opt-add svelte-psjrav">+ option</button></div>`),BV=y(`<li draggable="true"><div class="sv-studio__field-row svelte-psjrav"><span class="sv-studio__grip svelte-psjrav" title="Drag to reorder">⠿</span> <input class="sv-studio__field-name svelte-psjrav" aria-label="Field name"/> <select aria-label="Field type" class="svelte-psjrav"></select> <button type="button" aria-label="Remove field" class="sv-studio__mini svelte-psjrav">×</button></div> <div class="sv-studio__field-flags svelte-psjrav"><label class="svelte-psjrav"><input type="checkbox" class="svelte-psjrav"/> PK</label> <label class="svelte-psjrav"><input type="checkbox" class="svelte-psjrav"/> Req</label> <label class="svelte-psjrav"><input type="checkbox" class="svelte-psjrav"/> RO</label></div> <!> <!> <!> <!></li>`),VV=y(`<button type="button" class="sv-studio__seed-btn svelte-psjrav"><!>Edit seed data</button>`),HV=y(`<option class="svelte-psjrav"> </option>`),UV=y(`<option class="svelte-psjrav"> </option>`),WV=y(`<option class="svelte-psjrav"> </option>`),GV=y(`<select class="sv-studio__fmt-val svelte-psjrav"></select>`),KV=y(`<input class="sv-studio__fmt-val svelte-psjrav" type="text"/>`),qV=y(`<label class="sv-studio__check svelte-psjrav"><input type="checkbox" class="svelte-psjrav"/> compare to another field</label>`),JV=y(`<div class="sv-studio__role svelte-psjrav"><div class="sv-studio__fmt-row svelte-psjrav"><select class="svelte-psjrav"></select> <select class="svelte-psjrav"></select> <!> <button type="button" class="sv-studio__role-x svelte-psjrav" aria-label="Remove rule">×</button></div> <!> <input class="sv-studio__field-name svelte-psjrav" type="text" placeholder="Error message"/></div>`),YV=y(`<details class="sv-studio__section svelte-psjrav" open=""><summary class="sv-studio__sec-head svelte-psjrav"><!><span class="svelte-psjrav">Data source</span></summary> <div class="sv-studio__sec-body svelte-psjrav"><label class="sv-studio__prop svelte-psjrav"> <select class="svelte-psjrav"><option class="svelte-psjrav">In-memory (demo, resets)</option><option class="svelte-psjrav">Local database (no setup)</option><option class="svelte-psjrav">REST API</option><option class="svelte-psjrav">SQL database</option><option class="svelte-psjrav">Supabase</option></select></label> <!> <!></div></details> <details class="sv-studio__section svelte-psjrav"><summary class="sv-studio__sec-head svelte-psjrav"><!><span class="svelte-psjrav">Server rules (triggers)</span><!></summary> <div class="sv-studio__sec-body svelte-psjrav"><!> <!></div></details> <details class="sv-studio__section svelte-psjrav" open=""><summary class="sv-studio__sec-head svelte-psjrav"><!><span class="svelte-psjrav"> </span> <button type="button" class="sv-studio__mini sv-studio__sec-add svelte-psjrav"><!></button></summary> <div class="sv-studio__sec-body svelte-psjrav"><ul class="sv-studio__fields svelte-psjrav" role="list"></ul> <!></div></details> <details class="sv-studio__section svelte-psjrav"><summary class="sv-studio__sec-head svelte-psjrav"><!><span class="svelte-psjrav">Business rules (validation)</span></summary> <div class="sv-studio__sec-body svelte-psjrav"><!> <button type="button" class="sv-studio__mini svelte-psjrav"><!> Add rule</button> <span class="sv-studio__hint svelte-psjrav">Cross-field checks compiled into the schema's <code class="svelte-psjrav">hooks.validate</code> - enforced in the edit form <strong class="svelte-psjrav">and</strong> (with server validation) the API route.</span></div></details>`,1),XV=y(`<details class="sv-studio__section svelte-psjrav" open=""><summary class="sv-studio__sec-head svelte-psjrav"><!><span class="svelte-psjrav">Page</span></summary> <div class="sv-studio__sec-body svelte-psjrav"><label class="sv-studio__prop svelte-psjrav">Title <input type="text" class="svelte-psjrav"/></label> <label class="sv-studio__prop svelte-psjrav">Route <input type="text" class="svelte-psjrav"/></label> <label class="sv-studio__prop svelte-psjrav">CSS class <input type="text" spellcheck="false" placeholder="e.g. crm-screen" class="svelte-psjrav"/> <span class="sv-studio__hint svelte-psjrav">On this screen's wrapper - target it in <strong class="svelte-psjrav">Code › custom.css</strong> (e.g. <code class="svelte-psjrav"></code>).</span></label> <label class="sv-studio__check svelte-psjrav"><input type="checkbox" class="svelte-psjrav"/> Show in navigation</label> <!> <label class="sv-studio__prop svelte-psjrav">Layout <select class="svelte-psjrav"><optgroup label="Flow"><option class="svelte-psjrav">12-column grid</option> <option class="svelte-psjrav">Stacked (single column)</option></optgroup><optgroup label="Workspace"><option class="svelte-psjrav">Split view (resizable)</option> <option class="svelte-psjrav">Docking manager</option> <option class="svelte-psjrav">Free-form canvas</option></optgroup></select> <span class="sv-studio__hint svelte-psjrav"> </span></label> <!> <!> <!> <div class="sv-studio__layoutopts svelte-psjrav"><!></div></div></details> <details class="sv-studio__section svelte-psjrav"><summary class="sv-studio__sec-head svelte-psjrav"><!><span class="svelte-psjrav">State variables</span> <button type="button" class="sv-studio__mini sv-studio__sec-add svelte-psjrav" title="Add a state variable" aria-label="Add a state variable"><!></button></summary> <div class="sv-studio__sec-body svelte-psjrav"><!> <!> <span class="sv-studio__hint svelte-psjrav">Reactive per-screen values. Use them in methods (Set variable / conditions) and bindings as <code class="svelte-psjrav">ctx.state.<name></code>.</span></div></details> <details class="sv-studio__section svelte-psjrav"><summary class="sv-studio__sec-head svelte-psjrav"><!><span class="svelte-psjrav">Access control (app-wide)</span></summary> <div class="sv-studio__sec-body svelte-psjrav"><label class="sv-studio__check svelte-psjrav"><input type="checkbox" class="svelte-psjrav"/> Enable role-based access (RBAC)</label> <!></div></details> <details class="sv-studio__section svelte-psjrav"><summary class="sv-studio__sec-head svelte-psjrav"><!><span class="svelte-psjrav">Authentication</span></summary> <div class="sv-studio__sec-body svelte-psjrav"><label class="sv-studio__check svelte-psjrav"><input type="checkbox" class="svelte-psjrav"/> Add sign-in (session + login page)</label> <!></div></details> <details class="sv-studio__section svelte-psjrav"><summary class="sv-studio__sec-head svelte-psjrav"><!><span class="svelte-psjrav">Data layer</span></summary> <div class="sv-studio__sec-body svelte-psjrav"><label class="sv-studio__check svelte-psjrav"><input type="checkbox" class="svelte-psjrav"/> Typed schema + migrations (Drizzle ORM)</label> <span class="sv-studio__hint svelte-psjrav">For SQL-bound entities: emits a typed <code class="svelte-psjrav">schema.ts</code> (migration source of truth), a client, a typed repo per entity, and <code class="svelte-psjrav">drizzle-kit</code> scripts (<code class="svelte-psjrav">db:generate</code> / <code class="svelte-psjrav">db:migrate</code> / <code class="svelte-psjrav">db:push</code>). Postgres / MySQL / SQLite / Turso (not MSSQL). With <strong class="svelte-psjrav">Authentication</strong> on, the user store becomes a real <code class="svelte-psjrav">auth_users</code> DB table (hashed). Bind an entity to a SQL database to use it.</span></div></details> <details class="sv-studio__section svelte-psjrav"><summary class="sv-studio__sec-head svelte-psjrav"><!><span class="svelte-psjrav">Audit trail</span></summary> <div class="sv-studio__sec-body svelte-psjrav"><label class="sv-studio__check svelte-psjrav"><input type="checkbox" class="svelte-psjrav"/> Record create / update / delete</label> <span class="sv-studio__hint svelte-psjrav">Adds an <strong class="svelte-psjrav">Audit log</strong> screen and logs every write through a connected (SQL) API route. Bind an entity to a SQL database for it to capture.</span></div></details> <details class="sv-studio__section svelte-psjrav"><summary class="sv-studio__sec-head svelte-psjrav"><!><span class="svelte-psjrav">Localization (i18n)</span></summary> <div class="sv-studio__sec-body svelte-psjrav"><label class="sv-studio__check svelte-psjrav"><input type="checkbox" class="svelte-psjrav"/> Emit a message catalog + locale switcher</label> <!></div></details> <!> <p class="sv-studio__hint svelte-psjrav">Select a block to edit it. Drag a field to reorder.</p>`,1),ZV=y(`<h4 class="sv-studio__insp-head svelte-psjrav"><!>Screen</h4> <!> <!>`,1),QV=y(`<button type="button" title="Go to this block"> <span class="sv-studio__issue-go svelte-psjrav">→</span></button>`),$V=y(`<span> </span>`),eH=y(`<li class="svelte-psjrav"><!></li>`),tH=y(`<ul class="sv-studio__issues svelte-psjrav"></ul>`),nH=y(`<button type="button" class="sv-studio__gen-btn svelte-psjrav"><!> Generate app</button>`),rH=y(`<span class="sv-studio__hint svelte-psjrav">Fix the errors above to generate.</span>`),iH=y(`<aside data-tour="inspector"><!> <!> <div class="sv-studio__insp-foot svelte-psjrav"><!></div></aside>`),aH=y(`<button type="button" class="sv-studio__drawer-backdrop svelte-psjrav" aria-label="Close panel"></button>`),zee=y(`<div class="sv-studio__chromedock svelte-psjrav"><!></div>`),oH=y(`<span class="sv-studio__status-ok svelte-psjrav"><span class="sv-studio__status-dot svelte-psjrav"></span>Ready to generate</span>`),sH=y(`<span class="sv-studio__status-err svelte-psjrav"><span class="sv-studio__status-dot svelte-psjrav"></span> </span>`),Bee=y(`<span class="sv-studio__status-sel svelte-psjrav"><!> </span>`),cH=y(`<span class="sv-studio__datamode svelte-psjrav" role="group" aria-label="Data mode"><button type="button">In-memory</button> <button type="button" title="Run the whole app on a real in-browser Postgres (PGlite) - carries the seed rows, zero setup">Local Postgres</button></span>`),lH=y(`<span title="Data source per entity"> </span>`),uH=y(`<button type="button" class="sv-studio__bind-entity svelte-psjrav"><!><span class="sv-studio__bind-entity-name svelte-psjrav"> </span><small class="svelte-psjrav"> </small></button>`),dH=y(`<p class="sv-studio__hint svelte-psjrav"> </p> <div class="sv-studio__bind-list svelte-psjrav"></div>`,1),Vee=y(`<p class="sv-studio__hint svelte-psjrav">This block needs data, but the project has no entities yet. Add one first, then drop the block.</p> <div class="sv-studio__bind-actions svelte-psjrav"><button type="button" class="sv-studio__gen-btn svelte-psjrav"><!>Add data</button> <button type="button" class="sv-studio__tb-btn svelte-psjrav">Cancel</button></div>`,1),Hee=y(`<div class="sv-studio__modal-wrap svelte-psjrav" role="presentation"><div class="sv-studio__bind-modal svelte-psjrav" role="dialog" aria-label="Pick data for this block" tabindex="-1"><header class="sv-studio__modal-head svelte-psjrav"><span class="sv-studio__modal-title svelte-psjrav"><!> </span> <span class="sv-studio__spacer svelte-psjrav"></span> <button type="button" class="sv-studio__icon-btn svelte-psjrav" aria-label="Close"><!></button></header> <div class="sv-studio__bind-body svelte-psjrav"><!></div></div></div>`),Uee=y(`<button type="button" class="sv-studio__tb-btn sv-studio__tb-btn--primary svelte-psjrav"><!> </button>`),fH=y(`<p class="sv-studio__frag-note svelte-psjrav">Drop-in fragment: merge <code>src/routes</code> + <code>src/lib</code> into your app, import <code>src/app.css</code> once, and <code>npm install</code> the deps listed in <code>FRAGMENT.md</code>. Your app keeps its own layout, nav, and auth.</p>`),pH=y(`<button type="button"><!><span class="sv-studio__tree-path svelte-psjrav"> </span></button>`),Wee=y(`<div class="sv-studio__modal-wrap svelte-psjrav" role="presentation"><div class="sv-studio__modal svelte-psjrav" role="dialog" aria-label="Generated app" tabindex="-1"><header class="sv-studio__modal-head svelte-psjrav"><span class="sv-studio__modal-title svelte-psjrav"><!> <small class="svelte-psjrav"> </small></span> <div class="sv-studio__seg svelte-psjrav" role="group" aria-label="Export mode"><button type="button">Full app</button> <button type="button" title="Just src/routes + src/lib to drop into an existing SvelteKit app">Fragment</button></div> <span class="sv-studio__spacer svelte-psjrav"></span> <!> <button type="button" class="sv-studio__tb-btn svelte-psjrav"><!> </button> <button type="button" class="sv-studio__tb-btn sv-studio__tb-btn--primary svelte-psjrav" title="Open the generated app in StackBlitz - a full online IDE with live preview and real IntelliSense"><!>Open in StackBlitz</button> <button type="button" class="sv-studio__icon-btn svelte-psjrav" aria-label="Close"><!></button></header> <!> <div class="sv-studio__modal-body svelte-psjrav"><nav class="sv-studio__tree svelte-psjrav" aria-label="Files"></nav> <div class="sv-studio__code svelte-psjrav"><div class="sv-studio__code-head svelte-psjrav"><span class="sv-studio__code-path svelte-psjrav"> </span> <button type="button" class="sv-studio__copy svelte-psjrav"><!> </button></div> <pre class="sv-studio__code-body svelte-psjrav"><code class="svelte-psjrav"> </code></pre></div></div></div></div>`),mH=y(`<option class="svelte-psjrav"> </option>`),Gee=y(`<div class="sv-studio__deploy-step svelte-psjrav"><strong>1. Push to Git</strong> then import your repo: <a class="sv-studio__tb-btn svelte-psjrav" target="_blank" rel="noopener noreferrer"><!> </a></div> <div class="sv-studio__deploy-step svelte-psjrav"><strong>2. Or deploy from your machine:</strong></div>`,1),Kee=y(`<div class="sv-studio__deploy-step svelte-psjrav"><strong>Build and run the server:</strong></div>`),hH=y(`<code> </code> `,1),$=y(`<p class="sv-studio__hint svelte-psjrav">Push-to-deploy pipeline (<code>.github/workflows/deploy.yml</code>) - add these repo secrets to enable it: <!>. Until then it stays skipped, so CI never breaks.</p>`),gH=y(`<div class="sv-studio__modal-wrap svelte-psjrav" role="presentation"><div class="sv-studio__deploy-modal svelte-psjrav" role="dialog" aria-label="Deploy" tabindex="-1"><header class="sv-studio__modal-head svelte-psjrav"><span class="sv-studio__modal-title svelte-psjrav"><!> Deploy <small class="svelte-psjrav"> </small></span> <span class="sv-studio__spacer svelte-psjrav"></span> <button type="button" class="sv-studio__icon-btn svelte-psjrav" aria-label="Close"><!></button></header> <div class="sv-studio__deploy-body svelte-psjrav"><label class="sv-studio__prop svelte-psjrav">Deploy target <select class="svelte-psjrav"></select></label> <p class="sv-studio__hint svelte-psjrav">Generate app bundles the matching SvelteKit adapter (<code> </code>) + provider config, a <strong>CI workflow</strong> (build + test), and a <strong>DEPLOY.md</strong> runbook - so this app deploys with no extra setup.</p> <!> <div class="sv-studio__deploy-cli svelte-psjrav"><code class="svelte-psjrav"> </code> <button type="button" class="sv-studio__copy svelte-psjrav"><!> </button></div> <!> <p class="sv-studio__hint svelte-psjrav">Entities on <strong>Local database</strong> (PGlite) or <strong>In-memory</strong> need no server env. SQL / Supabase entities need their connection set in the host's environment variables. Full steps are in the generated <code>DEPLOY.md</code>.</p> <div class="sv-studio__deploy-actions svelte-psjrav"><button type="button" class="sv-studio__tb-btn sv-studio__tb-btn--primary svelte-psjrav"><!>Generate app</button></div></div></div></div>`),_H=y(`<th class="svelte-psjrav"> </th>`),vH=y(`<input type="checkbox"/>`),yH=y(`<option class="svelte-psjrav"> </option>`),bH=y(`<select class="svelte-psjrav"><option class="svelte-psjrav"></option><!></select>`),xH=y(`<option class="svelte-psjrav"> </option>`),SH=y(`<select class="svelte-psjrav"><option class="svelte-psjrav"></option><!></select>`),CH=y(`<input class="svelte-psjrav"/>`),wH=y(`<td class="svelte-psjrav"><!></td>`),TH=y(`<tr><!><td class="svelte-psjrav"><button type="button" class="sv-studio__mini svelte-psjrav" aria-label="Remove row">×</button></td></tr>`),EH=y(`<div class="sv-studio__modal-wrap svelte-psjrav" role="presentation"><div class="sv-studio__modal sv-studio__modal--seed svelte-psjrav" role="dialog" aria-label="Seed data" tabindex="-1"><header class="sv-studio__modal-head svelte-psjrav"><span class="sv-studio__modal-title svelte-psjrav"><!> Seed data <small class="svelte-psjrav"> </small></span> <span class="sv-studio__spacer svelte-psjrav"></span> <button type="button" class="sv-studio__icon-btn svelte-psjrav" aria-label="Close"><!></button></header> <div class="sv-studio__seed-body svelte-psjrav"><p class="sv-studio__hint svelte-psjrav">These rows ship with the app - they seed the in-memory / local-database source and persist into <code>studio.config.json</code>. Computed fields are filled at runtime.</p> <div class="sv-studio__seed-scroll svelte-psjrav"><table class="sv-studio__seed-table svelte-psjrav"><thead><tr><!><th aria-label="Actions" class="svelte-psjrav"></th></tr></thead><tbody></tbody></table></div> <div class="sv-studio__seed-actions svelte-psjrav"><button type="button" class="sv-studio__tb-btn svelte-psjrav"><!>Add row</button> <button type="button" class="sv-studio__tb-btn svelte-psjrav">Reset to generated</button> <span class="sv-studio__spacer svelte-psjrav"></span> <button type="button" class="sv-studio__tb-btn svelte-psjrav">Cancel</button> <button type="button" class="sv-studio__tb-btn sv-studio__tb-btn--primary svelte-psjrav"><!>Save seed data</button></div></div></div></div>`),DH=De(`<svg class="sv-ic svelte-psjrav" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M8 3v3a2 2 0 0 1-2 2H3M16 3v3a2 2 0 0 0 2 2h3M8 21v-3a2 2 0 0 0-2-2H3M16 21v-3a2 2 0 0 1 2-2h3"></path></svg>`),OH=De(`<svg class="sv-ic svelte-psjrav" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><rect x="4" y="4" width="16" height="16" rx="2"></rect></svg>`),kH=y(`<small class="svelte-psjrav">· default</small>`),AH=y(`<button type="button" class="sv-studio__dm-configure svelte-psjrav"><!> </button>`),jH=y(`<span class="sv-studio__dm-key svelte-psjrav" title="Primary key">🔑</span>`),MH=y(`<button type="button" class="sv-studio__dm-rel svelte-psjrav"> </button>`),NH=y(`<span class="sv-studio__dm-ftype svelte-psjrav"> </span>`),PH=y(`<li><span class="sv-studio__dm-fname svelte-psjrav"> <!></span> <!></li>`),FH=y(`<div><header class="sv-studio__dm-card-head svelte-psjrav"><strong class="svelte-psjrav"> </strong> <span> <!></span></header> <label class="sv-studio__dm-bind svelte-psjrav"><span>Data source</span> <select class="svelte-psjrav"><option class="svelte-psjrav">In-memory (demo)</option><option class="svelte-psjrav">Local database (no setup)</option><option class="svelte-psjrav">SQL</option><option class="svelte-psjrav">Supabase</option><option class="svelte-psjrav">REST</option></select> <small class="sv-studio__dm-tip svelte-psjrav"> </small> <!></label> <ul class="sv-studio__dm-fields svelte-psjrav"></ul></div>`),IH=y(`<p class="sv-studio__hint svelte-psjrav">No relationships yet. Add a <strong>relation</strong> field to an entity (in its field editor) to link two entities.</p>`),LH=y(`<li><button type="button" class="svelte-psjrav"> </button> <code class="svelte-psjrav"> </code> → <button type="button" class="svelte-psjrav"> </button> <small class="svelte-psjrav"> <!></small></li>`),RH=y(`<ul class="svelte-psjrav"></ul>`),zH=y(`<div class="sv-studio__modal-wrap svelte-psjrav" role="presentation"><div class="sv-studio__modal sv-studio__win svelte-psjrav" role="dialog" aria-label="Data model" tabindex="-1"><header><span class="sv-studio__modal-title svelte-psjrav"><!> Data model <small class="svelte-psjrav"> </small></span> <span class="sv-studio__spacer svelte-psjrav"></span> <button type="button" class="sv-studio__icon-btn svelte-psjrav"><!></button> <button type="button" class="sv-studio__icon-btn svelte-psjrav" aria-label="Close"><!></button></header> <div class="sv-studio__dm-body svelte-psjrav"><div class="sv-studio__dm-cards svelte-psjrav"></div> <aside class="sv-studio__dm-edges svelte-psjrav"><h4 class="svelte-psjrav">Relationships</h4> <!></aside></div></div></div>`),BH=y(`<div class="sv-studio__key-row svelte-psjrav"><dt class="svelte-psjrav"><kbd class="svelte-psjrav"> </kbd></dt><dd class="svelte-psjrav"> </dd></div>`),VH=y(`<div class="sv-studio__modal-wrap svelte-psjrav" role="presentation"><div class="sv-studio__deploy-modal svelte-psjrav" role="dialog" aria-label="Keyboard shortcuts" tabindex="-1"><header class="sv-studio__modal-head svelte-psjrav"><span class="sv-studio__modal-title svelte-psjrav"><!> Keyboard shortcuts</span> <span class="sv-studio__spacer svelte-psjrav"></span> <button type="button" class="sv-studio__icon-btn svelte-psjrav" aria-label="Close"><!></button></header> <div class="sv-studio__deploy-body svelte-psjrav"><dl class="sv-studio__keys svelte-psjrav"></dl> <span class="sv-studio__hint svelte-psjrav">Blocks copy/paste across screens. Drag a screen in the rail to reorder; ⧉ duplicates it.</span></div></div></div>`),HH=y(`<button type="button" class="sv-studio__provider svelte-psjrav"><strong class="svelte-psjrav"> </strong> <span class="svelte-psjrav"> </span> <span class="sv-studio__provider-go svelte-psjrav"> </span></button>`),UH=y(`<p class="sv-studio__hint svelte-psjrav">Pick a provider. We'll open its one-click "create a free database" page and bind every entity to it - then paste the connection string into <code>.env</code>. No database to run locally? Use the zero-setup <strong>Local database</strong> instead (no account, persists in the browser).</p> <!>`,1),WH=y(`<div class="sv-studio__issue sv-studio__issue--ok svelte-psjrav"> <strong> </strong> </div> <ol class="sv-studio__provision-steps svelte-psjrav"><li>Create the database on <a target="_blank" rel="noopener noreferrer"> </a> and copy its connection string.</li> <li>Add it to <code>.env</code> (the generated <code>.env.example</code> lists these): <div class="sv-studio__deploy-cli svelte-psjrav"><code class="svelte-psjrav"> </code></div></li> <li><strong>Generate app</strong> - each entity emits a connected <code>/api</code> route that reads those vars server-side.</li></ol> <div class="sv-studio__deploy-actions svelte-psjrav"><button type="button" class="sv-studio__tb-btn svelte-psjrav">Pick another</button> <button type="button" class="sv-studio__tb-btn sv-studio__tb-btn--primary svelte-psjrav"><!>Generate app</button></div>`,1),GH=y(`<div class="sv-studio__modal-wrap svelte-psjrav" role="presentation"><div class="sv-studio__deploy-modal svelte-psjrav" role="dialog" aria-label="Get a database" tabindex="-1"><header class="sv-studio__modal-head svelte-psjrav"><span class="sv-studio__modal-title svelte-psjrav"><!> Get a hosted database</span> <span class="sv-studio__spacer svelte-psjrav"></span> <button type="button" class="sv-studio__icon-btn svelte-psjrav" aria-label="Close"><!></button></header> <div class="sv-studio__deploy-body svelte-psjrav"><!></div></div></div>`),KH=De(`<svg class="sv-ic svelte-psjrav" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M8 3v3a2 2 0 0 1-2 2H3M16 3v3a2 2 0 0 0 2 2h3M8 21v-3a2 2 0 0 0-2-2H3M16 21v-3a2 2 0 0 1 2-2h3"></path></svg>`),qH=De(`<svg class="sv-ic svelte-psjrav" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><rect x="4" y="4" width="16" height="16" rx="2"></rect></svg>`),JH=y(`<option class="svelte-psjrav"> </option>`),YH=y(`· host <code> </code>`,1),qee=y(`· db <code> </code>`,1),XH=y(`<div class="sv-studio__req-result sv-studio__issue sv-studio__issue--ok svelte-psjrav">Detected <strong> </strong><!><!>. Dialect + table set; the full string goes to <code>DATABASE_URL</code> in <code>.env.example</code>.</div>`),ZH=y(`<div class="sv-studio__req-row svelte-psjrav" style="grid-template-columns: minmax(0, 1fr) auto; align-items: end;"><span class="sv-studio__req-hint svelte-psjrav">The <code class="svelte-psjrav"> </code> driver isn't installed in this project. Install it and retry the preview.</span> <button type="button" class="sv-studio__tb-btn svelte-psjrav"><!> </button></div>`),QH=y(`<div class="sv-studio__req-row svelte-psjrav" style="grid-template-columns: minmax(0, 1fr) auto; align-items: end;"><span class="sv-studio__req-hint svelte-psjrav">Paste your connection string above, then preview your real rows here (runs through the local <code class="svelte-psjrav">svgrid-studio designer</code> server, so credentials never touch the browser).</span> <button type="button" class="sv-studio__req-send svelte-psjrav"><!> </button></div> <!> <!>`,1),$H=y(`<div class="sv-studio__req-note svelte-psjrav"><strong>Using the online designer?</strong> <ol class="sv-studio__req-tips svelte-psjrav"><li class="svelte-psjrav"><strong>See your real data now</strong> - run the designer on your own computer. It can reach your database and preview rows: <span class="sv-studio__req-cli svelte-psjrav"><code class="svelte-psjrav">npx @svgrid/studio designer</code><button type="button" class="sv-studio__mini-link svelte-psjrav"> </button></span></li> <li class="svelte-psjrav"><strong>Just build the app</strong> - fill in the table + dialect above and click <strong>Generate app</strong>. The generated app connects to your database for real using its <code class="svelte-psjrav">DATABASE_URL</code> (no coding needed).</li> <li class="svelte-psjrav"><strong>No database yet?</strong> Switch this entity to <strong>Supabase</strong> (a free hosted Postgres that works right here in the browser) or <strong>Local database</strong> (a real database that runs in your browser) - both need zero setup.</li></ol></div>`),eU=y(`<div class="sv-studio__req-row2 svelte-psjrav"><label class="sv-studio__req-field svelte-psjrav">Table <input type="text" aria-label="Table" class="svelte-psjrav"/></label> <label class="sv-studio__req-field svelte-psjrav">Dialect <select aria-label="Dialect" class="svelte-psjrav"></select></label></div> <div class="sv-studio__req-url svelte-psjrav"><span class="sv-studio__req-url-base svelte-psjrav">POST</span><span class="sv-studio__req-url-param svelte-psjrav"> </span></div> <div class="sv-studio__req-row svelte-psjrav" style="grid-template-columns: minmax(0, 1fr) auto;"><label class="sv-studio__req-field svelte-psjrav">Connection string <small>(server-only - goes to <code>.env</code>, never the browser)</small> <input type="text" aria-label="Connection string" class="svelte-psjrav"/></label> <button type="button" class="sv-studio__tb-btn svelte-psjrav"><!>Parse</button></div> <!> <label class="sv-studio__req-field svelte-psjrav">Schema <small>(Postgres search path; default <code>public</code>)</small> <input type="text" placeholder="public" aria-label="Schema" class="svelte-psjrav"/></label> <!> <div class="sv-studio__req-note svelte-psjrav"><strong>SQL runs server-side.</strong> <strong>Generate app</strong> emits a connected <code class="svelte-psjrav"> </code> (the <code class="svelte-psjrav"> </code> driver, reading <code class="svelte-psjrav">DATABASE_URL</code>) and the grid talks to it over that route. Set <code class="svelte-psjrav">DATABASE_URL</code> in <code class="svelte-psjrav">.env</code>; the driver is added for you by <code class="svelte-psjrav">npm create @svgrid/studio</code>. To scaffold from an existing database instead: <code class="svelte-psjrav"> </code></div>`,1),tU=y(`<option class="svelte-psjrav"> </option>`),nU=y(`<select aria-label="Table" class="svelte-psjrav"></select>`),rU=y(`<input type="text" aria-label="Table" class="svelte-psjrav"/>`),iU=y(`<div class="sv-studio__req-url svelte-psjrav"><span class="sv-studio__req-url-base svelte-psjrav"> </span><span class="sv-studio__req-url-param svelte-psjrav"> </span></div>`),aU=y(`, plus a <code class="svelte-psjrav">createSupabaseRealtime</code> subscription that refreshes the grid live`,1),oU=y(`<p class="sv-studio__req-hint svelte-psjrav" style="margin: 0 0 2px">New to Supabase? Create a free project at <strong>supabase.com</strong>, then open your project's <strong>Settings → API</strong> - copy the <strong>Project URL</strong> and the <strong>anon public</strong> key into the two boxes below. The anon key is safe to share; your data stays protected by Row Level Security.</p> <label class="sv-studio__req-field svelte-psjrav">Project URL <small>(shared by every Supabase entity - set once)</small> <input type="text" placeholder="https://xxxx.supabase.co" aria-label="Project URL" class="svelte-psjrav"/></label> <div class="sv-studio__req-row svelte-psjrav" style="grid-template-columns: minmax(0, 1fr) auto;"><label class="sv-studio__req-field svelte-psjrav">Anon key <small>(public - safe to ship)</small> <input type="text" placeholder="eyJhbGciOi… paste the anon public key" aria-label="Anon key" class="svelte-psjrav"/></label> <button type="button" class="sv-studio__tb-btn svelte-psjrav"><!> </button></div> <div class="sv-studio__req-row svelte-psjrav" style="grid-template-columns: minmax(0, 1fr) auto;"><label class="sv-studio__req-field svelte-psjrav">Table <small> </small> <!></label> <button type="button" class="sv-studio__req-send svelte-psjrav"><!> </button></div> <!> <label class="sv-studio__req-toggle svelte-psjrav"><input type="checkbox" class="svelte-psjrav"/> <span><strong class="svelte-psjrav">Live updates (Realtime)</strong> - the grid refreshes automatically on any insert, update, or delete in this table. Needs Realtime enabled for the table in your Supabase project.</span></label> <!> <span class="sv-studio__req-hint svelte-psjrav"><strong>Import schema</strong> reads the table's real columns - primary key, foreign-key relations and enums - through the public anon key (works even on an empty table). <strong>Generate app</strong> emits <code class="svelte-psjrav">createClient</code> in <code class="svelte-psjrav">connections.ts</code> from <code class="svelte-psjrav">PUBLIC_SUPABASE_URL</code> / <code class="svelte-psjrav">PUBLIC_SUPABASE_ANON_KEY</code> env vars and adds <code class="svelte-psjrav">@supabase/supabase-js</code><!>.</span>`,1),sU=y(`<option class="svelte-psjrav"> </option>`),cU=y(`<span class="sv-studio__req-url-param svelte-psjrav"> </span>`),lU=y(`<span> </span>`),uU=y(`<span class="sv-studio__param-count svelte-psjrav"> </span>`),dU=y(`<button type="button" role="tab"> <!></button>`),fU=y(`<p class="sv-studio__req-hint svelte-psjrav">The grid sends the edited row as the request body on create / update automatically - nothing to configure here.</p>`),pU=y(`<p class="sv-studio__req-empty svelte-psjrav">No path parameters yet - add <code class="svelte-psjrav">{id}</code> to the path.</p>`),mU=y(`<div class="sv-studio__req-trow svelte-psjrav"><span class="sv-studio__req-param-name svelte-psjrav"> </span> <input placeholder="value (used by Send)" aria-label="Value" class="svelte-psjrav"/> <select aria-label="Type" class="svelte-psjrav"><option class="svelte-psjrav">string</option><option class="svelte-psjrav">number</option><option class="svelte-psjrav">boolean</option></select> <span></span></div>`),hU=y(`<div class="sv-studio__req-table svelte-psjrav"><div class="sv-studio__req-thead svelte-psjrav"><span>Parameter</span><span>Value</span><span>Type</span><span></span></div> <!></div>`),gU=y(`<p class="sv-studio__req-hint svelte-psjrav">To add or delete a path parameter, update the <strong>path</strong> above, e.g. <code class="svelte-psjrav">path/{parameter}</code>.</p> <!>`,1),_U=y(`<div class="sv-studio__req-trow svelte-psjrav"><input placeholder="name" aria-label="Name" class="svelte-psjrav"/> <input placeholder="value" aria-label="Value" class="svelte-psjrav"/> <select aria-label="Type" class="svelte-psjrav"><option class="svelte-psjrav">string</option><option class="svelte-psjrav">number</option><option class="svelte-psjrav">boolean</option></select> <button type="button" class="sv-studio__icon-btn svelte-psjrav" aria-label="Remove parameter"><!></button></div>`),vU=y(`<div class="sv-studio__req-table svelte-psjrav"><div class="sv-studio__req-thead svelte-psjrav"><span>Name</span><span>Value</span><span>Type</span><span></span></div> <!> <button type="button" class="sv-studio__req-add svelte-psjrav"><!> </button></div>`),yU=y(`<div class="sv-studio__req-row2 svelte-psjrav"><label class="sv-studio__req-field svelte-psjrav">Offset param<input placeholder="offset" aria-label="Offset param" class="svelte-psjrav"/></label> <label class="sv-studio__req-field svelte-psjrav">Limit param<input placeholder="limit" aria-label="Limit param" class="svelte-psjrav"/></label></div> <div class="sv-studio__req-row2 svelte-psjrav"><label class="sv-studio__req-field svelte-psjrav">Sort-by param<input placeholder="(none)" aria-label="Sort-by param" class="svelte-psjrav"/></label> <label class="sv-studio__req-field svelte-psjrav">Order param<input placeholder="(none)" aria-label="Order param" class="svelte-psjrav"/></label></div> <div class="sv-studio__req-row2 svelte-psjrav"><label class="sv-studio__req-field svelte-psjrav">Search param<input placeholder="(none)" aria-label="Search param" class="svelte-psjrav"/></label> <label class="sv-studio__req-field svelte-psjrav">Rows key<input placeholder="data / rows / items" aria-label="Rows key" class="svelte-psjrav"/></label></div> <label class="sv-studio__req-field svelte-psjrav">Total key<input placeholder="total / count" aria-label="Total key" class="svelte-psjrav"/></label>`,1),bU=y(`<label class="sv-studio__req-field svelte-psjrav">Rows key <small>(collection: products, users, posts…)</small> <input placeholder="products" aria-label="Rows key" class="svelte-psjrav"/></label>`),xU=y(`<span class="sv-studio__req-hint svelte-psjrav">The generated grid pages & sorts <strong>on the server</strong> through this adapter, and the preview above does too. Row/total unwrapping is handled for you.</span>`),SU=y(`<h4 class="sv-studio__req-h svelte-psjrav">Response mapping <small class="svelte-psjrav">optional</small></h4> <div class="sv-studio__req-row2 svelte-psjrav"><label class="sv-studio__req-field svelte-psjrav">Rows path <input placeholder="data.items (blank = auto-detect)" aria-label="Rows path" class="svelte-psjrav"/></label> <label class="sv-studio__req-field svelte-psjrav">Total path <input placeholder="data.total (blank = auto-detect)" aria-label="Total path" class="svelte-psjrav"/></label></div>`,1),CU=y(`<div class="sv-studio__req-row svelte-psjrav"><label class="sv-studio__req-field svelte-psjrav">Name <input type="text" readonly="" aria-label="Request name" class="svelte-psjrav"/></label> <label class="sv-studio__req-field svelte-psjrav">Operation <select aria-label="Operation" class="svelte-psjrav"></select></label> <label class="sv-studio__req-field svelte-psjrav">Path <input type="text" placeholder="albums/{id}/tracks" aria-label="Path" class="svelte-psjrav"/></label> <button type="button" class="sv-studio__req-send svelte-psjrav"><!> </button></div> <label class="sv-studio__req-field svelte-psjrav">Base URL <input type="text" placeholder="https://api.example.com/v1" aria-label="Base URL" class="svelte-psjrav"/></label> <div class="sv-studio__req-url svelte-psjrav"><span class="sv-studio__req-url-base svelte-psjrav"> </span><!></div> <!> <h4 class="sv-studio__req-h svelte-psjrav">Parameters</h4> <div class="sv-studio__req-tabs svelte-psjrav" role="tablist"></div> <!> <h4 class="sv-studio__req-h svelte-psjrav">API format <small class="svelte-psjrav">· server paging & sort</small></h4> <label class="sv-studio__req-field svelte-psjrav">Wire format <select aria-label="Wire format" class="svelte-psjrav"><option class="svelte-psjrav">Manual mapping (single page)</option><option class="svelte-psjrav">Offset + Limit (generic paging)</option><option class="svelte-psjrav">DummyJSON (skip / limit)</option><option class="svelte-psjrav">json-server / JSONPlaceholder</option></select></label> <!> <!>`,1),wU=y(`<div class="sv-studio__modal-wrap svelte-psjrav" role="presentation"><div class="sv-studio__req-modal sv-studio__win svelte-psjrav" role="dialog" aria-label="Data source builder" tabindex="-1"><header><span class="sv-studio__modal-title svelte-psjrav"><!> <small class="svelte-psjrav"> </small></span> <div class="sv-studio__req-headbtns svelte-psjrav"><button type="button" class="sv-studio__icon-btn svelte-psjrav"><!></button> <button type="button" class="sv-studio__icon-btn svelte-psjrav" aria-label="Close"><!></button></div></header> <div class="sv-studio__req-body svelte-psjrav"><!></div></div></div>`),TU=y(`<button type="button"><!><span class="sv-studio__pv-devlabel svelte-psjrav"> </span></button>`),EU=y(`<img class="sv-studio__pv-logo svelte-psjrav"/>`),DU=y(`<!><span class="sv-studio__pv-brand-txt svelte-psjrav"> </span>`,1),OU=y(`<button type="button" class="sv-studio__pv-nav-toggle svelte-psjrav" aria-label="Toggle sidebar"><svg viewBox="0 0 24 24" width="16" height="16" fill="none" stroke="currentColor" stroke-width="2.2" stroke-linecap="round" stroke-linejoin="round"><path d="m15 18-6-6 6-6"></path></svg></button>`),kU=y(`<button type="button"><span class="sv-studio__pv-nav-ini svelte-psjrav" aria-hidden="true"> </span><span class="sv-studio__pv-nav-lbl svelte-psjrav"> </span></button>`),AU=y(`<div class="sv-studio__runbar has-error svelte-psjrav"><span class="sv-studio__run-err svelte-psjrav" role="alert"> </span></div>`),jU=y(`<div class="sv-studio__dock svelte-psjrav"><!></div>`),MU=y(`<section><div class="sv-studio__cvs-body svelte-psjrav"><!></div></section>`),NU=y(`<p class="sv-studio__empty svelte-psjrav">This screen has no blocks yet - add some in the designer.</p>`),PU=y(`<div><!> <!></div>`),FU=y(`<section><!></section>`),IU=y(`<p class="sv-studio__empty svelte-psjrav">This screen has no blocks yet - add some in the designer.</p>`),LU=y(`<!> <!>`,1),RU=y(`<header class="sv-studio__pv-screenhead svelte-psjrav"><h2 class="svelte-psjrav"> </h2></header> <!> <div><!></div>`,1),zU=y(`<p class="sv-studio__empty svelte-psjrav">No screens to preview yet.</p>`),BU=y(`<footer class="sv-studio__pv-foot svelte-psjrav"> </footer>`),VU=y(`<div role="dialog" aria-modal="true" aria-label="App preview"><div class="sv-studio__pv-bar svelte-psjrav"><span class="sv-studio__pv-tag svelte-psjrav"><!> Live preview <small class="svelte-psjrav">· this is how your app runs</small></span> <span class="sv-studio__pv-devices svelte-psjrav" role="group" aria-label="Preview device"></span> <button type="button" class="sv-studio__pv-exit svelte-psjrav"><!> Close preview <kbd class="svelte-psjrav">Esc</kbd></button></div> <div><nav class="sv-studio__pv-nav svelte-psjrav" aria-label="App navigation"><div class="sv-studio__pv-nav-head svelte-psjrav"><span class="sv-studio__pv-brand svelte-psjrav"><!></span> <!></div> <div class="sv-studio__pv-nav-items svelte-psjrav"></div></nav> <div class="sv-studio__pv-main svelte-psjrav"><!> <!></div></div></div>`),HU=y(`<button type="button" class="svelte-psjrav"> </button>`),UU=y(`<p class="sv-studio__copilot-err svelte-psjrav"> </p>`),WU=y(`<div class="sv-studio__modal-wrap svelte-psjrav" role="presentation"><div class="sv-studio__copilot svelte-psjrav" role="dialog" aria-label="AI copilot" tabindex="-1"><header class="sv-studio__modal-head svelte-psjrav"><span class="sv-studio__modal-title svelte-psjrav">✨ Copilot <small class="svelte-psjrav">· describe a change in plain English</small></span> <button type="button" class="sv-studio__modal-x" aria-label="Close"><!></button></header> <div class="sv-studio__copilot-body svelte-psjrav"><textarea class="sv-studio__copilot-input svelte-psjrav" rows="3" placeholder="e.g. Add an orders screen with a chart of revenue by month"></textarea> <div class="sv-studio__copilot-examples svelte-psjrav"></div> <!> <div class="sv-studio__copilot-foot svelte-psjrav"><span class="sv-studio__hint svelte-psjrav">The change applies to your project - <kbd>Ctrl/Cmd+Z</kbd> to undo.</span> <button type="button" class="sv-studio__gen-btn svelte-psjrav"> </button></div></div></div></div>`),GU=y(`<p class="sv-studio__hint sv-studio__gallery-warn svelte-psjrav">Loading a sample replaces the current design (undo with Ctrl+Z).</p>`),KU=y(`<button type="button" class="sv-studio__sample svelte-psjrav"><span class="sv-studio__sample-emoji svelte-psjrav"> </span> <span class="sv-studio__sample-name svelte-psjrav"> </span> <span class="sv-studio__sample-desc svelte-psjrav"> </span> <span class="sv-studio__sample-open svelte-psjrav">Open <!></span></button>`),qU=y(`<button type="button" class="sv-studio__sample svelte-psjrav"><span class="sv-studio__sample-badge svelte-psjrav">Live</span> <span class="sv-studio__sample-emoji svelte-psjrav"> </span> <span class="sv-studio__sample-name svelte-psjrav"> </span> <span class="sv-studio__sample-desc svelte-psjrav"> </span> <span class="sv-studio__sample-open svelte-psjrav">Open <!></span></button>`),JU=y(`<div class="sv-studio__modal-wrap svelte-psjrav" role="presentation"><div class="sv-studio__gallery svelte-psjrav" role="dialog" aria-label="Sample apps" tabindex="-1"><header class="sv-studio__modal-head svelte-psjrav"><span class="sv-studio__modal-title svelte-psjrav"><!> Sample apps <small class="svelte-psjrav">· load a ready-made design</small></span> <button type="button" class="sv-studio__icon-btn svelte-psjrav" aria-label="Close"><!></button></header> <div class="sv-studio__gallery-body svelte-psjrav"><!> <div class="sv-studio__gallery-grid svelte-psjrav"></div> <div class="sv-studio__gallery-section svelte-psjrav"><h4 class="sv-studio__gallery-subhead svelte-psjrav">Start from live data</h4> <p class="sv-studio__hint svelte-psjrav">Bound to a real source - embedded Postgres, a hosted Supabase project, or a public REST API. The generated app talks to the same source.</p></div> <div class="sv-studio__gallery-grid svelte-psjrav"></div></div></div></div>`),YU=y(`Creates <code class="svelte-psjrav"> </code> with <code class="svelte-psjrav">id</code> + <code class="svelte-psjrav">name</code> fields and a screen. Add more fields in the inspector.`,1),XU=y(`<div class="sv-studio__modal-wrap svelte-psjrav" role="presentation"><div class="sv-studio__mini-modal svelte-psjrav" role="dialog" aria-label="New entity" tabindex="-1"><header class="sv-studio__modal-head svelte-psjrav"><span class="sv-studio__modal-title svelte-psjrav"><!> New entity</span> <button type="button" class="sv-studio__icon-btn svelte-psjrav" aria-label="Close"><!></button></header> <div class="sv-studio__mini-body svelte-psjrav"><label class="sv-studio__req-field svelte-psjrav">Entity name <input placeholder="customers" aria-label="Entity name" class="svelte-psjrav"/></label> <p class="sv-studio__hint svelte-psjrav"><!></p> <div class="sv-studio__mini-actions svelte-psjrav"><button type="button" class="sv-studio__gen-btn svelte-psjrav">Cancel</button> <button type="button" class="sv-studio__req-send svelte-psjrav"><!>Create entity</button></div></div></div></div>`),ZU=y(`<span class="svelte-psjrav"> </span>`),QU=y(`<div class="sv-studio__conn-skip svelte-psjrav"><strong> </strong> <!></div>`),$U=y(`<p class="sv-studio__conn-done svelte-psjrav"><!> </p> <!> <div class="sv-studio__mini-actions svelte-psjrav"><button type="button" class="sv-studio__req-send svelte-psjrav">Done</button></div>`,1),eW=y(`<div class="sv-studio__modal-wrap svelte-psjrav" role="presentation"><div class="sv-studio__mini-modal svelte-psjrav" role="dialog" aria-label="Connect database" tabindex="-1"><header class="sv-studio__modal-head svelte-psjrav"><span class="sv-studio__modal-title svelte-psjrav"><!> Connect database <small class="svelte-psjrav"> </small></span> <button type="button" class="sv-studio__icon-btn svelte-psjrav" aria-label="Close"><!></button></header> <div class="sv-studio__mini-body svelte-psjrav"><!></div></div></div>`),tW=y(`<option class="svelte-psjrav"> </option>`),nW=y(`<div class="sv-studio__seg svelte-psjrav" role="tablist" aria-label="Connection input mode"><button type="button" role="tab">Guided</button> <button type="button" role="tab">Connection string</button></div>`),rW=y(`<label class="sv-studio__req-field svelte-psjrav">Database file <input placeholder="./data.db" aria-label="SQLite database file" class="svelte-psjrav"/></label>`),Jee=y(`<code class="sv-studio__conn-preview svelte-psjrav" title="Assembled connection string"> </code>`),iW=y(`<div class="sv-studio__conn-grid svelte-psjrav"><label class="sv-studio__req-field sv-studio__conn-host svelte-psjrav">Host <input placeholder="localhost" aria-label="Host" class="svelte-psjrav"/></label> <label class="sv-studio__req-field svelte-psjrav">Port <input inputmode="numeric" aria-label="Port" class="svelte-psjrav"/></label> <label class="sv-studio__req-field svelte-psjrav">Database <input placeholder="app" aria-label="Database name" class="svelte-psjrav"/></label> <label class="sv-studio__req-field svelte-psjrav">User <input placeholder="user" aria-label="User" class="svelte-psjrav"/></label> <label class="sv-studio__req-field svelte-psjrav">Password <input type="password" placeholder="••••••" aria-label="Password" class="svelte-psjrav"/></label></div> <label class="sv-studio__conn-ssl svelte-psjrav"><input type="checkbox"/> Require SSL/TLS</label> <!>`,1),aW=y(`<label class="sv-studio__req-field svelte-psjrav">Connection string <input aria-label="Connection string" class="svelte-psjrav"/></label>`),oW=y(`<span class="svelte-psjrav"> <b class="svelte-psjrav"> </b></span>`),sW=y(`<span class="sv-studio__hint svelte-psjrav"> </span>`),cW=y(`<div class="sv-studio__conn-tested svelte-psjrav"><strong class="svelte-psjrav"><!> </strong> <div class="sv-studio__conn-counts svelte-psjrav"><!> <!></div></div>`),lW=y(`<button type="button" class="sv-studio__mini-link svelte-psjrav"> </button>`),uW=y(`<div class="sv-studio__conn-driver svelte-psjrav"><span>Driver <code class="svelte-psjrav"> </code> isn't installed in this project.</span> <!></div>`),dW=y(`<p class="sv-studio__hint svelte-psjrav">Point this app's screens at your real database. Map each entity to one of your tables; the rest stay on sample data.</p> <div class="sv-studio__req-row2 svelte-psjrav"><label class="sv-studio__req-field svelte-psjrav">Database <select class="svelte-psjrav"></select></label> <!></div> <!> <!> <!> <div class="sv-studio__mini-actions svelte-psjrav"><button type="button" class="sv-studio__gen-btn svelte-psjrav">Cancel</button> <span class="sv-studio__spacer svelte-psjrav"></span> <button type="button" class="sv-studio__gen-btn svelte-psjrav"> </button> <button type="button" class="sv-studio__req-send svelte-psjrav"><!> </button></div>`,1),fW=y(`<option class="svelte-psjrav"> </option>`),pW=y(`<label class="sv-studio__rebind-row svelte-psjrav"><span class="sv-studio__rebind-ent svelte-psjrav"><!> </span> <span class="sv-studio__rebind-arrow svelte-psjrav">→</span> <select class="svelte-psjrav"><option class="svelte-psjrav">Keep sample data</option><!></select></label>`),mW=y(`<p class="sv-studio__hint svelte-psjrav"> </p> <div class="sv-studio__rebind-map svelte-psjrav"></div> <div class="sv-studio__mini-actions svelte-psjrav"><button type="button" class="sv-studio__gen-btn svelte-psjrav">Back</button> <button type="button" class="sv-studio__req-send svelte-psjrav"><!> </button></div>`,1),hW=y(`<span class="svelte-psjrav"> </span>`),Yee=y(`<div class="sv-studio__conn-skip svelte-psjrav"><strong>Check these (a chart/detail references a field your table may not have):</strong> <!></div>`),Xee=y(`<p class="sv-studio__conn-done svelte-psjrav"><!> </p> <!> <div class="sv-studio__mini-actions svelte-psjrav"><button type="button" class="sv-studio__req-send svelte-psjrav">Done</button></div>`,1),gW=y(`<span class="sv-studio__issue sv-studio__issue--error svelte-psjrav"> </span>`),Zee=y(`<div class="sv-studio__modal-wrap svelte-psjrav" role="presentation"><div class="sv-studio__mini-modal svelte-psjrav" role="dialog" aria-label="Use my data" tabindex="-1"><header class="sv-studio__modal-head svelte-psjrav"><span class="sv-studio__modal-title svelte-psjrav"><!> Use my data <small class="svelte-psjrav"> </small></span> <button type="button" class="sv-studio__icon-btn svelte-psjrav" aria-label="Close"><!></button></header> <div class="sv-studio__mini-body svelte-psjrav"><!> <!></div></div></div>`),_W=y(`<div class="sv-studio__ctx-sep svelte-psjrav"></div>`),vW=y(`<button type="button" role="menuitem"> </button>`),yW=y(`<div class="sv-studio__ctx svelte-psjrav" role="menu" tabindex="-1"></div>`),bW=y(`<div><div class="sv-studio__titlebar svelte-psjrav"><span class="sv-studio__brand svelte-psjrav"><span class="sv-studio__brand-mark svelte-psjrav" aria-hidden="true"><!></span> <span class="sv-studio__brand-name svelte-psjrav">Studio</span></span> <span class="sv-studio__tb-sep svelte-psjrav"></span> <input class="sv-studio__app-name svelte-psjrav" aria-label="App name"/> <!> <div class="sv-studio__theme-menu svelte-psjrav"><button type="button" aria-haspopup="dialog" title="App theme"><span class="sv-studio__theme-chip svelte-psjrav"></span> <span class="sv-studio__theme-btn-label svelte-psjrav"> </span> <!></button> <!></div> <span class="sv-studio__spacer svelte-psjrav"></span> <!> <button type="button" class="sv-studio__icon-btn svelte-psjrav" aria-label="Undo" title="Undo (Ctrl+Z)"><!></button> <button type="button" class="sv-studio__icon-btn svelte-psjrav" aria-label="Redo" title="Redo (Ctrl+Shift+Z)"><!></button> <button type="button" class="sv-studio__icon-btn svelte-psjrav" aria-label="Keyboard shortcuts" title="Keyboard shortcuts (?)"><span style="font-weight:700;font-size:13px">?</span></button> <span class="sv-studio__tb-sep svelte-psjrav"></span> <!> <button type="button" class="sv-studio__tb-btn svelte-psjrav" data-tour="newapp" title="Start a new app - connect data and scaffold its pages"><!>New app</button> <button type="button" class="sv-studio__tb-btn svelte-psjrav" data-tour="samples"><!>Sample apps</button> <!> <div class="sv-studio__menu svelte-psjrav"><button type="button" data-tour="data" aria-haspopup="menu"><!>Add data <!></button> <!></div> <button type="button">Load</button> <button type="button"><!>Save</button> <span class="sv-studio__tb-sep svelte-psjrav"></span> <!> <button type="button" class="sv-studio__tb-btn svelte-psjrav" title="Reset the Pages / Canvas / Inspector panels to the default layout">Reset layout</button> <span class="sv-studio__tb-sep svelte-psjrav"></span> <button type="button" title="Show live sample data inside each block on the canvas (off = layout wireframes only)">Show data</button> <button type="button" class="sv-studio__tb-btn svelte-psjrav" title="Take the guided tour" aria-label="Take the guided tour">?</button> <button type="button" class="sv-studio__tb-btn svelte-psjrav" data-tour="preview" title="Preview the whole app full screen (Esc to exit)"><!>Preview</button> <button type="button" title="Deploy the generated app"><!>Deploy</button> <button type="button" class="sv-studio__tb-btn svelte-psjrav" title="Report a bug - attaches a sanitized copy of this project (no credentials or row data) and opens a prefilled GitHub issue">Report bug</button> <button type="button" class="sv-studio__tb-btn sv-studio__tb-btn--primary svelte-psjrav" data-tour="generate"><!>Generate app</button></div> <!> <!> <!> <!> <div><!> <!></div> <div class="sv-studio__statusbar svelte-psjrav"><!> <span> </span> <span> </span> <span> </span> <span class="sv-studio__status-sp svelte-psjrav"></span> <!> <!></div> <!> <!> <!> <!> <!> <!> <!> <!> <!> <!> <!> <!> <!> <!> <!> <!> <!> <!></div>`);function xW(t,n){ue(n,!0);let o=(e,t=ee)=>{var n=lee(),r=B(n);H(n),w(e=>R(r,`d`,e),[()=>hd(t())]),d(e,n)},c=e=>{var t=BP(),n=I(t),r=e=>{var t=PP(),n=B(t,!0);H(t),w(()=>{Ce(t,1,`sv-studio__req-result sv-studio__issue sv-studio__issue--${p(Bp).ok?`ok`:`error`}`,`svelte-psjrav`),v(n,p(Bp).message)}),d(e,t)};h(n,e=>{p(Bp)&&e(r)});var a=k(n,2),s=e=>{let t=M(()=>p(as)[p(mp).name]??[]),n=M(()=>Object.keys(p(t)[0]??{})),r=M(()=>p(n).slice(0,6));var a=zP(),s=B(a),c=B(s),l=k(B(c)),u=B(l);H(l),H(c);var f=k(c,2),m=B(f);o(m,()=>`import`);var g=k(m);H(f),H(s);var _=k(s,2),y=B(_),b=B(y),S=B(b);se(S,20,()=>p(r),e=>e,(e,t)=>{var n=FP(),r=B(n,!0);H(n),w(()=>v(r,t)),d(e,n)}),H(S),H(b);var C=k(b);se(C,21,()=>p(t).slice(0,6),i,(e,t)=>{var n=LP();se(n,20,()=>p(r),e=>e,(e,n)=>{var r=IP(),i=B(r,!0);H(r),w(e=>v(i,e),[()=>om(p(t)[n])]),d(e,r)}),H(n),d(e,n)}),H(C),H(y),H(_);var T=k(_,2),E=e=>{var t=RP();d(e,t)},D=M(()=>!p(r).some(e=>(p(mp)?.fields??[]).some(t=>t.field===e)));h(T,e=>{p(D)&&e(E)}),H(a),w(e=>{v(u,`· showing ${e??``} of ${p(t).length??``}${p(t).length>=25?`+`:``}`),v(g,` Import ${p(n).length??``} fields`)},[()=>Math.min(p(t).length,6)]),x(`click`,f,cm),d(e,a)};h(a,e=>{p(mp)&&(p(as)[p(mp).name]??[]).length&&e(s)}),d(e,t)},l=(e,t)=>{let n=()=>t?.().value,r=()=>t?.().type;var i=m(),a=I(i),o=e=>{{let t=M(()=>Vf(n()));Ys(e,{get variant(){return p(t)},size:`sm`,pill:!0,children:(e,t)=>{D();var r=S();w(e=>v(r,e),[()=>String(n()??``)]),d(e,r)},$$slots:{default:!0}})}},s=e=>{var t=VP(),i=B(t);{let e=M(()=>Number(n()??0)),t=M(()=>r().max??100);Ql(i,{get value(){return p(e)},get max(){return p(t)},size:`sm`,color:`accent`})}H(t),d(e,t)},c=e=>{var t=HP(),i=B(t,!0);H(t),w((e,n)=>{R(t,`href`,e),v(i,n)},[()=>(r().as===`email`?`mailto:`:r().as===`tel`?`tel:`:``)+String(n()??``),()=>String(n()??``)]),d(e,t)};h(a,e=>{r().kind===`badge`?e(o):r().kind===`progress`?e(s,1):e(c,-1)}),d(e,i)},u=(e,t)=>{let n=()=>t?.().row,r=()=>t?.().ent,a=()=>t?.().actions;var o=KP();se(o,21,a,i,(e,t)=>{var i=m(),a=I(i),o=e=>{var i=uee(),a=B(i,!0);H(i),w(()=>v(a,p(t).label??`Edit`)),x(`click`,i,e=>{e.stopPropagation(),V(ws,{ent:r(),row:n()},!0)}),d(e,i)},s=e=>{var i=UP(),a=B(i,!0);H(i),w(()=>v(a,p(t).label??`Delete`)),x(`click`,i,e=>{e.stopPropagation(),Es(r(),String(n()[Ts(r())]??``))}),d(e,i)},c=e=>{var n=WP(),r=B(n,!0);H(n),w(()=>v(r,p(t).label??`Open`)),x(`click`,n,e=>{e.stopPropagation(),V(Xr,p(t).screen,!0)}),d(e,n)},l=e=>{var n=GP(),r=B(n,!0);H(n),w(()=>v(r,p(t).label??`Action`)),x(`click`,n,e=>e.stopPropagation()),d(e,n)};h(a,e=>{p(t).kind===`edit`?e(o):p(t).kind===`delete`?e(s,1):p(t).kind===`navigate`&&p(t).screen?e(c,2):e(l,-1)}),d(e,i)}),H(o),d(e,o)},g=(e,t=ee)=>{let n=M(()=>p(kc)?.blocks.find(e=>e.id===t().id));var r=m(),i=I(r),a=e=>{let r=M(()=>p(Ac)??Ko),i=M(()=>p(Ac)?Ps(p(Ac),ss(p(Ac))):[]);var a=qP(),o=B(a);{let e=M(()=>Xc(p(r),p(i))),a=M(()=>Math.max((So[t().id]??360)-22,160));b(o,()=>p(n),()=>p(r),()=>p(e),()=>p(a),()=>!0)}H(a),_e(a,`clientHeight`,e=>So[t().id]=e),d(e,a)};h(i,e=>{p(n)&&e(a)}),d(e,r)},y=(e,t=ee)=>{let n=M(()=>p(Zr)?.blocks.find(e=>e.id===t().id));var r=m(),i=I(r),a=e=>{let r=M(()=>p(No)??Ko),i=M(()=>p(No)?Ps(p(No),p(As)):[]);var a=JP();let o;var s=B(a),c=k(s,2);{let e=M(()=>Math.max((So[t().id]??320)-22,160));b(c,()=>p(n),()=>p(r),()=>p(i),()=>p(e),()=>!1)}H(a),w(()=>o=Ce(a,1,`sv-studio__dockpane svelte-psjrav`,null,o,{"is-selected":p(n).id===p(Fa),"has-issue":!!p(Xo)[p(n).id]})),x(`click`,a,()=>V(Fa,p(n).id,!0)),x(`contextmenu`,a,e=>ga(e,ya(p(n)))),x(`keydown`,a,e=>e.key===`Enter`&&V(Fa,p(n).id,!0)),x(`click`,s,e=>{e.stopPropagation(),ma(p(n).id)}),_e(a,`clientHeight`,e=>So[t().id]=e),d(e,a)};h(i,e=>{p(n)&&e(a)}),d(e,r)},b=(e,t=ee,n=ee,r=ee,a=ee,c=ee)=>{var l=m(),u=I(l),f=e=>{let i=M(()=>t().config),o=M(()=>p(i).scheduler);{let t=M(()=>ks(p(i),n())),s=M(()=>({startField:p(o).startField,endField:p(o).endField,titleField:p(o).titleField,colorField:p(o).colorField,resourceField:p(o).resourceField,recurrenceField:p(o).recurrenceField,allDayField:p(o).allDayField,initialView:p(o).initialView,drawer:p(o).drawer!==!1}));Bt(e,{get data(){return r()},get columns(){return p(t)},getRowId:e=>String(e[n().idField??`id`]),get containerHeight(){return a()},get scheduler(){return p(s)}})}},g=e=>{let i=M(()=>t().config),o=M(()=>p(i).editing===`form`||p(i).editing===`inline`),s=M(()=>p(i).filterUi??{global:!0});var c=tF(),l=I(c),u=e=>{var r=eF(),a=B(r),s=e=>{var t=dee(),r=B(t);H(t),w(()=>v(r,`+ New ${n().label??n().name??``}`)),x(`click`,t,()=>V(ws,{ent:n(),row:null},!0)),d(e,t)};h(a,e=>{p(o)&&e(s)});var c=k(a,4),l=e=>{var r=fee();x(`click`,r,()=>void Dc[t().id]?.exportCsv({filename:n().name})),d(e,r)};h(c,e=>{p(i).export?.csv&&e(l)});var u=k(c,2),f=e=>{var r=YP();x(`click`,r,()=>void Dc[t().id]?.exportJson({filename:n().name})),d(e,r)};h(u,e=>{p(i).export?.json&&e(f)});var m=k(u,2),g=e=>{var r=XP();x(`click`,r,()=>void Jf(t().id,`xlsx`,n().name)),d(e,r)};h(m,e=>{p(i).export?.xlsx&&e(g)});var _=k(m,2),y=e=>{var r=ZP();x(`click`,r,()=>void Jf(t().id,`pdf`,n().name)),d(e,r)};h(_,e=>{p(i).export?.pdf&&e(y)});var b=k(_,2),S=e=>{var r=QP();x(`click`,r,()=>void Yf(t().id,n().name)),d(e,r)};h(b,e=>{p(i).export?.print&&e(S)});var C=k(b,2),T=e=>{var n=$P();x(`click`,n,()=>void Dc[t().id]?.copyToClipboard()),d(e,n)};h(C,e=>{p(i).export?.copy&&e(T)}),H(r),d(e,r)};h(l,e=>{(p(o)||p(i).export&&(p(i).export.csv||p(i).export.json||p(i).export.copy||p(i).export.xlsx||p(i).export.pdf||p(i).export.print))&&e(u)});var f=k(l,2);{let e=M(()=>ks(p(i),n())),c=M(()=>p(i).filterable&&!!p(s).global),l=M(()=>p(i).filterable&&!!p(s).row),u=M(()=>p(i).filterable&&!!p(s).menu),d=M(()=>!!p(i).grouping?.length),m=M(()=>ud(p(i))),h=M(()=>p(i).density===`compact`?28:p(i).density===`comfortable`?46:30),g=M(()=>Number(p(i).props?.headerHeight)||(p(i).density===`comfortable`?48:p(i).density===`compact`?34:42)),_=M(()=>p(o)?e=>V(ws,{ent:n(),row:e.row},!0):void 0);Bt(f,{get data(){return r()},get columns(){return p(e)},get containerHeight(){return a()},fitColumns:!0,get sortable(){return p(i).sortable},get filterable(){return p(i).filterable},get showGlobalFilter(){return p(c)},get showFilterRow(){return p(l)},get showFilterMenu(){return p(u)},get enableCellSelection(){return p(i).cellSelection},get enableRowSummaries(){return p(i).rowSummaries},get zebraRows(){return p(i).striped},get showRowSelection(){return p(i).selectable},get groupable(){return p(d)},get conditionalFormats(){return p(m)},get rowHeight(){return p(h)},get headerHeight(){return p(g)},onApiReady:e=>{Dc[t().id]=e,p(i).grouping?.length&&e.setGroupBy([...p(i).grouping])},onRowClick:e=>Ec[n().name]=e.row,get onRowDoubleClick(){return p(_)}})}d(e,c)},_=e=>{kn(e,{get schema(){return n()},row:null,presentation:`inline`,onSubmit:()=>{}})},y=e=>{{let i=M(()=>t().config.color||`var(--sg-accent)`),o=M(()=>t().config.dataLabels!==!1),s=M(()=>xu(n(),t().config.measure)&&t().config.reduce!==`count`?e=>`$${e.toLocaleString()}`:void 0);an(e,{get schema(){return n()},get rows(){return r()},get dimension(){return t().config.dimension},get measure(){return t().config.measure},get reduce(){return t().config.reduce},get type(){return t().config.type},controls:!1,get height(){return a()},width:340,get accent(){return p(i)},get dataLabels(){return p(o)},get formatValue(){return p(s)}})}},C=e=>{Xn(e,{get schema(){return n()},get rows(){return r()}})},T=e=>{let i=M(()=>t().config),a=M(()=>wu(p(i),r())),o=M(()=>Cu(p(i),r()));var s=iF(),c=B(s),l=B(c,!0);H(c);var u=k(c,2),f=B(u,!0);H(u);var m=k(u,2),g=e=>{var t=nF();let n;var r=B(t,!0);H(t),w(()=>{n=Ce(t,1,`sv-studio__kpi-delta svelte-psjrav`,null,n,{"is-up":p(a).up,"is-down":!p(a).up}),v(r,p(a).text)}),d(e,t)};h(m,e=>{p(a)&&e(g)});var _=k(m,2),y=e=>{var t=rF(),n=B(t);H(t),w(e=>R(n,`points`,e),[()=>Mn(p(o))]),d(e,t)},b=e=>{var t=Q(),n=B(t);H(t),w(()=>v(n,`${p(i).reduce??``}${p(i).measure?` · ${p(i).measure}`:``}`)),d(e,t)};h(_,e=>{p(o).length>1?e(y):e(b,-1)}),H(s),w(e=>{v(l,p(i).label),v(f,e)},[()=>Su(p(i),n(),r())]),d(e,s)},E=e=>{let n=M(()=>t().config);var i=aF(),a=B(i),o=B(a,!0);H(a);var s=k(a,2);{let e=M(()=>pn(r(),{measure:p(n).measure,reduce:p(n).reduce})),t=M(()=>p(n).unit??``);za(s,{get value(){return p(e)},get min(){return p(n).min},get max(){return p(n).max},get unit(){return p(t)},size:150})}H(i),w(()=>v(o,p(n).label)),d(e,i)},te=e=>{let i=M(()=>t().config);var a=m(),o=I(a),s=e=>{var t=oF(),a=B(t);{let e=M(()=>Tu(r(),n(),p(i)));Qa(a,{get nodes(){return p(e)}})}H(t),d(e,t)},c=e=>{var t=sF();d(e,t)};h(o,e=>{p(i).labelField&&p(i).parentField?e(s):e(c,-1)}),d(e,a)},j=e=>{let a=M(()=>t().config),o=M(()=>wc[t().id]??`${t().id}-0`);{let s=(e,o=ee)=>{var s=m(),l=I(s);se(l,17,()=>p(a).tabs,i,(e,i,a)=>{var s=m(),l=I(s),u=e=>{var t=m(),a=I(t),o=e=>{var t=lF();se(t,21,()=>p(i).blocks,e=>e.id,(e,t)=>{var i=cF();let a;var o=B(i);b(o,()=>p(t),n,r,()=>180,c),H(i),w((e,n)=>{R(i,`data-block-id`,p(t).id),a=Ce(i,1,`sv-studio__tabchild svelte-psjrav`,null,a,{"is-selected":p(t).id===p(Fa),"has-issue":!!p(Xo)[p(t).id]}),A(i,`grid-column: span ${e??``}`),R(i,`title`,`Select ${n??``} to edit it`)},[()=>Math.min(12,Ne(p(t))),()=>vu(p(t).config.kind)]),x(`click`,i,e=>{e.stopPropagation(),V(Fa,p(t).id,!0)}),x(`keydown`,i,e=>{e.key===`Enter`&&(e.stopPropagation(),V(Fa,p(t).id,!0))}),d(e,i)}),H(t),d(e,t)},s=e=>{var t=uF();d(e,t)};h(a,e=>{p(i).blocks.length?e(o):e(s,-1)}),d(e,t)};h(l,e=>{o()===`${t().id}-${a}`&&e(u)}),d(e,s)}),d(e,s)},l=M(()=>p(a).tabs.map((e,n)=>({id:`${t().id}-${n}`,label:e.label})));Ot(e,{get tabs(){return p(l)},get value(){return p(o)},onChange:e=>wc[t().id]=e,panel:s,$$slots:{panel:!0}})}},ne=e=>{let a=M(()=>t().config),o=M(()=>Tc[t().id]??[`${t().id}-s0`]);{let s=(e,o=ee)=>{var s=m(),l=I(s);se(l,17,()=>p(a).sections,i,(e,i,a)=>{var s=m(),l=I(s),u=e=>{var t=m(),a=I(t),o=e=>{var t=fF();se(t,21,()=>p(i).blocks,e=>e.id,(e,t)=>{var i=dF();let a;var o=B(i);b(o,()=>p(t),n,r,()=>180,c),H(i),w((e,n)=>{R(i,`data-block-id`,p(t).id),a=Ce(i,1,`sv-studio__tabchild svelte-psjrav`,null,a,{"is-selected":p(t).id===p(Fa),"has-issue":!!p(Xo)[p(t).id]}),A(i,`grid-column: span ${e??``}`),R(i,`title`,`Select ${n??``} to edit it`)},[()=>Math.min(12,Ne(p(t))),()=>vu(p(t).config.kind)]),x(`click`,i,e=>{e.stopPropagation(),V(Fa,p(t).id,!0)}),x(`keydown`,i,e=>{e.key===`Enter`&&(e.stopPropagation(),V(Fa,p(t).id,!0))}),d(e,i)}),H(t),d(e,t)},s=e=>{var t=pF();d(e,t)};h(a,e=>{p(i).blocks.length?e(o):e(s,-1)}),d(e,t)};h(l,e=>{o().id===`${t().id}-s${a}`&&e(u)}),d(e,s)}),d(e,s)},l=M(()=>p(a).sections.map((e,n)=>({id:`${t().id}-s${n}`,label:e.label}))),u=M(()=>p(a).multiple?`multiple`:`single`);ro(e,{get items(){return p(l)},get expandMode(){return p(u)},get expanded(){return p(o)},onChange:e=>Tc[t().id]=e,panel:s,$$slots:{panel:!0}})}},re=e=>{let i=M(()=>$n(p(W),t().config.childEntity)),o=M(()=>t().config.linkScreen);{let t=M(()=>p(o)&&p(W).screens.some(e=>e.id===p(o))?()=>V(Xr,p(o),!0):void 0);Kn(e,{get schema(){return n()},get data(){return r()},get detailSchema(){return p(i)},getChildren:()=>DM(p(i),3),get containerHeight(){return a()},detailHeight:130,rowHeight:30,get onParentClick(){return p(t)}})}},P=M(()=>t().config.kind===`master-detail`&&t().config.childEntity&&$n(p(W),t().config.childEntity)),ie=e=>{{let i=M(()=>ju(n())),o=M(()=>Mu(t().config)),s=M(()=>Math.max(a()-64,120));Pn(e,{get data(){return r()},get fields(){return p(i)},get layout(){return p(o)},showFieldList:!1,showToolbar:!1,get gridHeight(){return p(s)}})}},ae=e=>{let i=M(()=>t().config);{let t=M(()=>Math.max(a()-8,260)),o=M(()=>p(i).openScreen&&p(W).screens.some(e=>e.id===p(i).openScreen)?()=>V(Xr,p(i).openScreen,!0):void 0);Rn(e,{get schema(){return n()},get rows(){return r()},get groupBy(){return p(i).groupBy},get titleField(){return p(i).titleField},get badgeField(){return p(i).badgeField},get subtitleField(){return p(i).subtitleField},get height(){return p(t)},onMove:(e,t)=>Cs(n(),e,{[p(i).groupBy]:t}),get onOpen(){return p(o)}})}},oe=e=>{let i=M(()=>t().config);{let t=M(()=>Os(n())),o=M(()=>Math.max(a()-8,420)),s=M(()=>({startField:p(i).dateField,titleField:p(i).titleField,colorField:p(i).colorField,drawer:!0}));Bt(e,{get data(){return r()},get columns(){return p(t)},getRowId:e=>String(e[n().idField??`id`]),get containerHeight(){return p(o)},get scheduler(){return p(s)}})}},ce=e=>{let i=M(()=>t().config);{let t=M(()=>p(i).metricFields??[]),o=M(()=>p(i).sections??[]),s=M(()=>vs(p(i))),c=M(()=>Math.max(a()-8,320));Qt(e,{get schema(){return n()},get rows(){return r()},get titleField(){return p(i).titleField},get subtitleField(){return p(i).subtitleField},get statusField(){return p(i).statusField},get metricFields(){return p(t)},get sections(){return p(o)},get related(){return p(s)},get height(){return p(c)}})}},L=e=>{let r=M(()=>t().config);var i=bF(),a=B(i),s=B(a);o(s,()=>`filter`);var c=k(s),l=B(c,!0);H(c),H(a);var u=k(a,2);se(u,17,()=>Nu(n(),p(r)),e=>e.field,(e,t)=>{let r=M(()=>p(js)[n().name]?.[p(t).field]??``);var i=vF(),a=B(i),o=B(a,!0);H(a);var s=k(a,2),c=e=>{var i=mF();N(i),w(e=>{R(i,`placeholder`,`Search ${e??``}…`),F(i,p(r))},[()=>(p(t).label??p(t).field).toLowerCase()]),x(`input`,i,e=>Ms(n().name,p(t).field,e.currentTarget.value)),d(e,i)},l=e=>{let i=M(()=>p(t).type===`boolean`?[{value:`true`,label:`Yes`,color:`#10b981`},{value:`false`,label:`No`,color:`#94a3b8`}]:p(t).type===`relation`?Ns(p(t)).map(e=>({value:e.value,label:e.label,color:void 0})):(p(t).options??[]).map(e=>({value:String(e.value),label:e.label??String(e.value),color:e.color})));var a=_F(),o=B(a);let s;var c=k(o,2);se(c,17,()=>p(i),e=>e.value,(e,i)=>{var a=gF();let o;var s=B(a),c=e=>{var t=hF();w(()=>A(t,`background: ${p(i).color??``};`)),d(e,t)};h(s,e=>{p(i).color&&e(c)});var l=k(s,1,!0);H(a),w(e=>{o=Ce(a,1,`sv-studio__facet-chip svelte-psjrav`,null,o,e),A(a,p(i).color?`--chip: ${p(i).color};`:``),v(l,p(i).label)},[()=>({"is-active":p(r)===String(p(i).value)})]),x(`click`,a,()=>Ms(n().name,p(t).field,p(r)===String(p(i).value)?``:String(p(i).value))),d(e,a)}),H(a),w(()=>s=Ce(o,1,`sv-studio__facet-chip svelte-psjrav`,null,s,{"is-active":p(r)===``})),x(`click`,o,()=>Ms(n().name,p(t).field,``)),d(e,a)};h(s,e=>{p(t).type===`text`&&!p(t).options?.length?e(c):e(l,-1)}),H(i),w(()=>v(o,p(t).label??p(t).field)),d(e,i)});var f=k(u,2),m=e=>{var t=yF();d(e,t)},g=M(()=>!Nu(n(),p(r)).length);h(f,e=>{p(g)&&e(m)}),H(i),w(()=>v(l,p(r).title??`Filters`)),d(e,i)},le=e=>{let r=M(()=>Ec[n().name]),i=M(()=>t().config.presentation??`inline`);var a=m(),s=I(a),l=e=>{var n=xF(),r=B(n);o(r,()=>`record`);var a=k(r),s=B(a);H(a),H(n),w(()=>v(s,`Select a row in the grid above to ${t().config.editable?p(i)===`inline`?`edit`:`open its ${p(i)===`drawer`?`editor drawer`:`edit dialog`}`:`view`} it here.`)),d(e,n)},u=e=>{kn(e,{get schema(){return n()},get row(){return p(r)},get presentation(){return p(i)},onSubmit:({id:e,values:t})=>Cs(n(),e,t),onCancel:()=>Ec[n().name]=void 0})},f=e=>{var t=CF(),a=I(t),s=e=>{var t=SF(),n=B(t);o(n,()=>p(i)===`drawer`?`screen`:`file`);var r=k(n);H(t),w(()=>v(r,` Opens as ${p(i)===`drawer`?`sidebar`:`modal`} at runtime`)),d(e,t)};h(a,e=>{p(i)!==`inline`&&e(s)});var c=k(a,2);kn(c,{get schema(){return n()},get row(){return p(r)},presentation:`inline`,onSubmit:({id:e,values:t})=>Cs(n(),e,t),onCancel:()=>Ec[n().name]=void 0}),d(e,t)},g=e=>{var i=TF();se(i,21,()=>Pu(n(),t().config),e=>e.field,(e,t)=>{var n=wF(),i=B(n),a=B(i,!0);H(i);var o=k(i),s=B(o,!0);H(o),H(n),w(e=>{v(a,p(t).label??p(t).field),v(s,e)},[()=>String(p(r)[p(t).field]??``)]),d(e,n)}),H(i),d(e,i)};h(s,e=>{p(r)?t().config.editable&&c()&&p(i)!==`inline`?e(u,1):t().config.editable?e(f,2):e(g,-1):e(l)}),d(e,a)},ue=e=>{let n=M(()=>t().config),r=M(()=>Rr[p(n).component]),i=M(()=>p(qc)?p(Wc)[t().id]:void 0);var a=m(),o=I(a),c=e=>{var t=DF(),a=B(t),o=e=>{var t=EF(),a=B(t),o=e=>{var t=m(),n=I(t);s(n,()=>p(r),(e,t)=>{t(e,O(()=>p(i).props,{children:(e,t)=>{D();var n=S();w(()=>v(n,p(i).text)),d(e,n)},$$slots:{default:!0}}))}),d(e,t)},c=M(()=>qn(p(n).component)?.hasContent),l=e=>{var t=m(),n=I(t);s(n,()=>p(r),(e,t)=>{t(e,O(()=>p(i).props))}),d(e,t)};h(a,e=>{p(c)?e(o):e(l,-1)}),H(t),x(`click`,t,e=>p(i).on?.click?.(e)),d(e,t)},c=e=>{var t=m(),i=I(t);{let e=M(()=>qr(p(n)));s(i,()=>p(r),(t,r)=>{r(t,O(()=>p(e),{children:(e,t)=>{D();var r=S();w(e=>v(r,e),[()=>Yr(p(n))]),d(e,r)},$$slots:{default:!0}}))})}d(e,t)},l=M(()=>qn(p(n).component)?.hasContent),u=e=>{var t=m(),i=I(t);{let e=M(()=>qr(p(n)));s(i,()=>p(r),(t,n)=>{n(t,O(()=>p(e)))})}d(e,t)};h(a,e=>{p(i)?e(o):p(l)?e(c,1):e(u,-1)}),H(t),d(e,t)},l=e=>{var t=OF(),r=B(t);H(t),w(()=>v(r,`Unknown component "${p(n).component??``}"`)),d(e,t)};h(o,e=>{p(r)?e(c):e(l,-1)}),d(e,a)},de=e=>{var n=kF(),r=B(n);H(n),w(e=>v(r,`${e??``} - configure in the inspector`),[()=>vu(t().config.kind)]),d(e,n)};h(u,e=>{t().config.kind===`grid`&&t().config.scheduler?e(f):t().config.kind===`grid`?e(g,1):t().config.kind===`form`?e(_,2):t().config.kind===`chart`?e(y,3):t().config.kind===`dashboard`?e(C,4):t().config.kind===`kpi`?e(T,5):t().config.kind===`gauge`?e(E,6):t().config.kind===`tree`?e(te,7):t().config.kind===`tabs`?e(j,8):t().config.kind===`accordion`?e(ne,9):p(P)?e(re,10):t().config.kind===`pivot`?e(ie,11):t().config.kind===`board`?e(ae,12):t().config.kind===`calendar`?e(oe,13):t().config.kind===`detail`?e(ce,14):t().config.kind===`filter`?e(L,15):t().config.kind===`record`?e(le,16):t().config.kind===`component`?e(ue,17):e(de,-1)}),d(e,l)},ne=(e,t=ee,n=ee)=>{var r=AF(),i=B(r);o(i,()=>t().config.kind===`component`?`file`:t().config.kind);var a=k(i,1,!0),s=k(a);H(r),w(e=>v(a,e),[()=>t().config.kind===`component`?qn(t().config.component)?.label??t().config.component:vu(t().config.kind)]),x(`click`,s,function(...e){n()?.apply(this,e)}),d(e,r)},P=(e,t=ee,n=ee)=>{var r=m(),i=I(r),a=e=>{var r=MF();se(r,20,()=>p(ei),e=>e,(e,t)=>{var n=jF(),r=B(n,!0);H(n);var i={};w(()=>{v(r,t),i!==(i=t)&&(n.value=(n.__value=t)??``)}),d(e,n)}),H(r);var i;xe(r),w(()=>{i!==(i=t())&&(r.value=(r.__value=t())??``,Te(r,t()))}),x(`change`,r,e=>n()(e.currentTarget.value)),d(e,r)},o=e=>{var r=NF();N(r),w(()=>F(r,t())),x(`change`,r,e=>n()(e.currentTarget.value)),d(e,r)};h(i,e=>{p(ei).length?e(a):e(o,-1)}),d(e,r)},ae=(e,t=ee,n=ee)=>{var r=FF();se(r,20,()=>p($r),e=>e,(e,t)=>{var n=PF(),r=B(n,!0);H(n);var i={};w(()=>{v(r,t),i!==(i=t)&&(n.value=(n.__value=t)??``)}),d(e,n)}),H(r);var i;xe(r),w(()=>{i!==(i=t())&&(r.value=(r.__value=t())??``,Te(r,t()))}),x(`change`,r,e=>n()(e.currentTarget.value)),d(e,r)},oe=(e,t=ee,n=ee)=>{var r=m(),i=I(r),a=e=>{var n=RF(),r=B(n);NP(B(r),t),H(r);var i=k(r,2),a=B(i);H(i),H(n),w(()=>{R(i,`title`,t().description),v(a,`set in code: ctx.grid.${t().key??``} = …`)}),d(e,n)},o=e=>{var r=BF(),i=B(r);N(i);var a=k(i),o=k(a),s=e=>{var n=zF();w(()=>{R(n,`aria-label`,`${t().label}: ${t().description}`),R(n,`title`,t().description)}),d(e,n)};h(o,e=>{t().description&&e(s)}),H(r),w(()=>{le(i,!!n()),v(a,` ${t().label??``}`)}),x(`change`,i,e=>Bi(t().key,e.currentTarget.checked)),d(e,r)},s=e=>{var r=HF(),i=B(r);NP(i,t);var a=k(i,2),o=B(a);o.value=o.__value=``;var s=k(o);se(s,16,()=>t().options??[],e=>e,(e,t)=>{var n=VF(),r=B(n,!0);H(n);var i={};w(()=>{v(r,t),i!==(i=t)&&(n.value=(n.__value=t)??``)}),d(e,n)}),H(a);var c;xe(a),H(r),w(e=>{R(a,`title`,t().description),c!==(c=e)&&(a.value=(a.__value=e)??``,Te(a,e))},[()=>String(n()??``)]),x(`change`,a,e=>Bi(t().key,e.currentTarget.value||void 0)),d(e,r)},c=e=>{var r=UF(),i=B(r);NP(i,t);var a=k(i,2);N(a),H(r),w(e=>{R(a,`title`,t().description),F(a,e)},[()=>n()==null?``:Number(n())]),x(`change`,a,e=>Bi(t().key,e.currentTarget.value===``?void 0:Number(e.currentTarget.value))),d(e,r)},l=e=>{var r=GF(),i=B(r);NP(B(i),t),H(i);var a=k(i,2);re(a);let o;var s=k(a,2),c=e=>{var t=WF();d(e,t)};h(s,e=>{p(Gr)[`grid:${t().key}`]&&e(c)}),H(r),w(e=>{o=Ce(a,1,`sv-studio__prop-json svelte-psjrav`,null,o,{"is-invalid":p(Gr)[`grid:${t().key}`]}),R(a,`title`,t().description??`JSON value`),F(a,e)},[()=>n()==null?``:JSON.stringify(n(),null,1)]),x(`change`,a,e=>Hi(t().key,e.currentTarget.value)),d(e,r)},u=e=>{var r=KF(),i=B(r);NP(i,t);var a=k(i,2);N(a),H(r),w(e=>{R(a,`title`,t().description),F(a,e)},[()=>String(n()??``)]),x(`change`,a,e=>Bi(t().key,e.currentTarget.value||void 0)),d(e,r)};h(i,e=>{t().code?e(a):t().type===`boolean`?e(o,1):t().type===`select`?e(s,2):t().type===`number`?e(c,3):t().type===`json`?e(l,4):e(u,-1)}),d(e,r)},ce=e=>{var t=qF(),n=B(t);let r;var i=B(n);o(i,()=>`dashboard`),D(),H(n);var a=k(n,2);let s;var c=B(a);o(c,()=>`navigate`),D(),H(a),H(t),w(()=>{r=Ce(n,1,`sv-studio__insp-tab svelte-psjrav`,null,r,{"is-active":p(Ra)===`properties`}),R(n,`aria-selected`,p(Ra)===`properties`),s=Ce(a,1,`sv-studio__insp-tab svelte-psjrav`,null,s,{"is-active":p(Ra)===`events`}),R(a,`aria-selected`,p(Ra)===`events`)}),x(`click`,n,()=>V(Ra,`properties`)),x(`click`,a,()=>V(Ra,`events`)),d(e,t)},L=(e,t=ee)=>{var n=m(),r=I(n),i=e=>{var n=QF(),r=I(n),i=B(r);se(i,21,t,e=>e.slot,(e,t)=>{var n=ZF();let r;var i=B(n),a=B(i,!0);H(i);var o=k(i),s=B(o),c=e=>{var n=YF(),r=I(n),i=B(r,!0);H(r);var a=k(r),o=e=>{var t=JF();d(e,t)};h(a,e=>{p(t).count>0&&e(o)}),w(()=>v(i,p(t).handler)),d(e,n)},l=e=>{var t=XF();d(e,t)};h(s,e=>{p(t).handler?e(c):e(l,-1)}),H(o),H(n),w(e=>{r=Ce(n,1,`sv-studio__evgrid-row svelte-psjrav`,null,r,{"is-wired":p(t).count>0}),R(n,`title`,e),v(a,p(t).label)},[()=>`Runs when the ${p(t).label.toLowerCase()} event fires. Double-click to add its handler in handlers.ts.`]),x(`dblclick`,n,()=>Mi(p(t).blockId,p(t).slot,p(t).label)),d(e,n)}),H(i),H(r),D(2),d(e,n)},a=e=>{var t=$F();d(e,t)};h(r,e=>{t().length?e(i):e(a,-1)}),d(e,n)},de=(e,t=ee,n=ee)=>{var r=eI();x(`click`,r,()=>fa(t(),n(),`aggregate`)),d(e,r)},ge=(e,t=ee,n=ee,r=ee)=>{var i=aI(),a=B(i),o=k(B(a),2),s=B(o);s.value=s.__value=`aggregate`;var c=k(s);c.value=c.__value=`field`;var l=k(c);l.value=l.__value=`expr`,H(o);var u;xe(o);var f=k(o,2);H(a);var p=k(a,2),m=e=>{var i=nI(),a=I(i),o=B(a);se(o,20,()=>Qo,e=>e,(e,t)=>{var n=tI(),r=B(n,!0);H(n);var i={};w(()=>{v(r,t),i!==(i=t)&&(n.value=(n.__value=t)??``)}),d(e,n)}),H(o);var s;xe(o);var c=k(o,2),l=e=>{P(e,()=>r().field??``,()=>e=>da(t(),n(),r(),{field:e}))};h(c,e=>{r().reduce!==`count`&&e(l)}),H(a);var u=k(a,2),f=B(u,!0);H(u),w(()=>{s!==(s=r().reduce)&&(o.value=(o.__value=r().reduce)??``,Te(o,r().reduce)),v(f,r().reduce===`count`?`Count of all rows.`:`${r().reduce} of ${r().field||`…`} across all rows`)}),x(`change`,o,e=>da(t(),n(),r(),{reduce:e.currentTarget.value})),d(e,i)},g=e=>{var i=rI(),a=I(i);P(a,()=>r().field,()=>e=>da(t(),n(),r(),{field:e}));var o=k(a,2),s=k(B(o)),c=B(s,!0);H(s),D(),H(o),w(()=>v(c,r().field||`…`)),d(e,i)},_=e=>{var i=iI(),a=I(i);re(a),D(2),w(()=>F(a,r().code)),x(`change`,a,e=>da(t(),n(),r(),{code:e.currentTarget.value})),d(e,i)};h(p,e=>{r().kind===`aggregate`?e(m):r().kind===`field`?e(g,1):e(_,-1)}),H(i),w(()=>{u!==(u=r().kind)&&(o.value=(o.__value=r().kind)??``,Te(o,r().kind))}),x(`change`,o,e=>fa(t(),n(),e.currentTarget.value)),x(`click`,f,()=>Wi(t(),n(),null)),d(e,i)},ve=(e,t=ee,n=ee,r)=>{let i=be(()=>Ee(r?.(),!1));var a=fI(),o=B(a),s=B(o);s.value=s.__value=`literal`;var c=k(s),l=e=>{var t=oI();t.value=t.__value=`state`,d(e,t)};h(c,e=>{!p(i)&&(p(Zr)?.state?.length??0)&&e(l)});var u=k(c),f=e=>{var t=sI(),n=B(t,!0);H(t),t.value=t.__value=`field`,w(()=>v(n,p(i)?`Field`:`Row field`)),d(e,t)};h(u,e=>{(p(i)||p(Zr)?.entity)&&e(f)});var m=k(u),g=e=>{var t=cI();t.value=t.__value=`param`,d(e,t)};h(m,e=>{p(i)||e(g)}),H(o);var _;xe(o);var y=k(o,2),b=e=>{var r=lI();N(r),w(()=>F(r,t().value)),x(`change`,r,e=>n()({kind:`literal`,value:e.currentTarget.value})),d(e,r)},S=e=>{var r=pee();se(r,21,()=>p(Zr)?.state??[],e=>e.name,(e,t)=>{var n=uI(),r=B(n,!0);H(n);var i={};w(()=>{v(r,p(t).name),i!==(i=p(t).name)&&(n.value=(n.__value=p(t).name)??``)}),d(e,n)}),H(r);var i;xe(r),w(()=>{i!==(i=t().name)&&(r.value=(r.__value=t().name)??``,Te(r,t().name))}),x(`change`,r,e=>n()({kind:`state`,name:e.currentTarget.value})),d(e,r)},C=e=>{P(e,()=>t().name,()=>e=>n()({kind:`field`,name:e}))},T=e=>{var r=dI();N(r),w(()=>F(r,t().name)),x(`change`,r,e=>n()({kind:`param`,name:e.currentTarget.value})),d(e,r)};h(y,e=>{t().kind===`literal`?e(b):t().kind===`state`?e(S,1):t().kind===`field`?e(C,2):e(T,-1)}),H(a),w(()=>{_!==(_=t().kind)&&(o.value=(o.__value=t().kind)??``,Te(o,t().kind))}),x(`change`,o,e=>n()(ci(e.currentTarget.value,t()))),d(e,a)},ye=(e,t=ee,n=ee)=>{var r=mI(),a=I(r);se(a,17,t,i,(e,r,i)=>{var a=pI(),o=B(a);P(o,()=>p(r).field,()=>e=>n()(t().map((t,n)=>n===i?{...t,field:e}:t)));var s=k(o,2);ve(s,()=>p(r).value,()=>e=>n()(t().map((t,n)=>n===i?{...t,value:e}:t)));var c=k(s,2);H(a),x(`click`,c,()=>n()(t().filter((e,t)=>t!==i))),d(e,a)});var o=k(a,2);x(`click`,o,()=>n()([...t(),{field:p(ei)[0]??``,value:{kind:`literal`,value:``}}])),d(e,r)},Se=(e,t=ee,n=ee,r)=>{let i=be(()=>Ee(r?.(),!1));var a=hI(),o=B(a);ve(o,()=>t().left,()=>e=>n()({...t(),left:e}),()=>p(i));var s=k(o,2),c=B(s);c.value=c.__value=`eq`;var l=k(c);l.value=l.__value=`neq`;var u=k(l);u.value=u.__value=`gt`;var f=k(u);f.value=f.__value=`lt`;var m=k(f);m.value=m.__value=`gte`;var g=k(m);g.value=g.__value=`lte`;var _=k(g);_.value=_.__value=`contains`;var v=k(_);v.value=v.__value=`truthy`;var y=k(v);y.value=y.__value=`falsy`,H(s);var b;xe(s);var S=k(s,2),C=e=>{ve(e,()=>t().right??{kind:`literal`,value:``},()=>e=>n()({...t(),right:e}),()=>p(i))};h(S,e=>{t().op!==`truthy`&&t().op!==`falsy`&&e(C)}),H(a),w(()=>{b!==(b=t().op)&&(s.value=(s.__value=t().op)??``,Te(s,t().op))}),x(`change`,s,e=>n()({...t(),op:e.currentTarget.value})),d(e,a)},De=(e,t=ee,n=ee,r=ee)=>{var a=yI(),s=I(a);se(s,21,t,i,(e,i,a)=>{var o=gI(),s=B(o),c=B(s),l=B(c);l.textContent=a+1;var u=k(l,1,!0);H(c);var f=k(c,2),m=B(f);m.disabled=a===0;var h=k(m,2),g=k(h,2);H(f),H(s);var _=k(s,2);Qe(_,()=>p(i),()=>e=>n()(t().map((t,n)=>n===a?{...t,...e}:t)),r),H(o),w(e=>{v(u,e),h.disabled=a===t().length-1},[()=>_i(p(i))]),x(`click`,m,()=>n()(di(t(),a,-1))),x(`click`,h,()=>n()(di(t(),a,1))),x(`click`,g,()=>n()(t().filter((e,t)=>t!==a))),d(e,o)},e=>{var t=_I();d(e,t)}),H(s);var c=k(s,2);se(c,21,()=>gi,e=>e.type,(e,i)=>{var a=vI(),s=B(a);o(s,()=>`plus`);var c=k(s),l=B(c,!0);H(c),H(a),w(()=>v(l,p(i).label)),x(`click`,a,()=>n()([...t(),hi(p(i).type,r())])),d(e,a)}),H(c),d(e,a)},Qe=(e,t=ee,n=ee,r=ee)=>{var i=DI(),a=B(i),o=e=>{var r=bI(),i=I(r),a=k(B(i));P(a,()=>t().field,()=>e=>n()({field:e})),H(i);var o=k(i,2),s=k(B(o));N(s),H(o),w(()=>{F(s,t().message??``),R(s,`placeholder`,`${t().field??``} is required`)}),x(`change`,s,e=>n()({message:e.currentTarget.value||void 0})),d(e,r)},s=e=>{var r=xI(),i=I(r),a=k(B(i));P(a,()=>t().field,()=>e=>n()({field:e})),H(i);var o=k(i,2),s=k(B(o));ve(s,()=>t().value,()=>e=>n()({value:e}),()=>!0),H(o),d(e,r)},c=e=>{var r=SI(),i=k(I(r),2);Se(i,()=>t().condition,()=>e=>n()({condition:e}),()=>!0);var a=k(i,2),o=k(B(a));N(o),H(a),w(()=>F(o,t().message)),x(`change`,o,e=>n()({message:e.currentTarget.value})),d(e,r)},l=e=>{var i=TI(),a=k(I(i),2);Se(a,()=>t().condition,()=>e=>n()({condition:e}),()=>!0);var o=k(a,2),s=k(B(o));De(s,()=>t().then,()=>e=>n()({then:e}),r),H(o);var c=k(o,2),l=e=>{var i=CI(),a=I(i),o=k(B(a));De(o,()=>t().else,()=>e=>n()({else:e.length?e:void 0}),r),H(a);var s=k(a,2);x(`click`,s,()=>n()({else:void 0})),d(e,i)},u=e=>{var t=wI();x(`click`,t,()=>n()({else:[]})),d(e,t)};h(c,e=>{t().else?e(l):e(u,-1)}),d(e,i)},u=e=>{var r=EI();re(r),w(()=>F(r,t().code)),x(`change`,r,e=>n()({code:e.currentTarget.value})),d(e,r)};h(a,e=>{t().type===`requireField`?e(o):t().type===`setField`?e(s,1):t().type===`reject`?e(c,2):t().type===`branch`?e(l,3):t().type===`code`&&e(u,4)}),H(i),d(e,i)},ot=(e,t=ee,n=ee)=>{var r=AI(),a=I(r);se(a,21,t,i,(e,r,i)=>{var a=OI(),o=B(a),s=B(o),c=B(s);c.textContent=i+1;var l=k(c,1,!0);H(s);var u=k(s,2),f=B(u);f.disabled=i===0;var m=k(f,2),h=k(m,2);H(u),H(o);var g=k(o,2);Pt(g,()=>p(r),()=>e=>n()(t().map((t,n)=>n===i?{...t,...e}:t))),H(a),w(e=>{v(l,e),m.disabled=i===t().length-1},[()=>si(p(r))]),x(`click`,f,()=>n()(di(t(),i,-1))),x(`click`,m,()=>n()(di(t(),i,1))),x(`click`,h,()=>n()(t().filter((e,t)=>t!==i))),d(e,a)},e=>{var t=kI();d(e,t)}),H(a);var o=k(a,2);Lt(o,()=>e=>n()([...t(),oi(e)])),d(e,r)},Pt=(e,t=ee,n=ee)=>{var r=YI(),i=B(r),a=e=>{var r=MI(),i=k(B(r));se(i,21,()=>p(W).screens,e=>e.id,(e,t)=>{var n=jI(),r=B(n,!0);H(n);var i={};w(()=>{v(r,p(t).title),i!==(i=`/`+p(t).route)&&(n.value=n.__value=`/`+p(t).route)}),d(e,n)}),H(i);var a;xe(i),H(r),w(()=>{a!==(a=t().to)&&(i.value=(i.__value=t().to)??``,Te(i,t().to))}),x(`change`,i,e=>n()({to:e.currentTarget.value})),d(e,r)},o=e=>{var r=NI(),i=k(B(r)),a=B(i);a.value=a.__value=`csv`;var o=k(a);o.value=o.__value=`tsv`;var s=k(o);s.value=s.__value=`json`,H(i);var c;xe(i),H(r),w(()=>{c!==(c=t().format??`csv`)&&(i.value=(i.__value=t().format??`csv`)??``,Te(i,t().format??`csv`))}),x(`change`,i,e=>n()({format:e.currentTarget.value})),d(e,r)},s=e=>{var r=PI(),i=k(B(r)),a=B(i);a.value=a.__value=`filters`;var o=k(a);o.value=o.__value=`sort`;var s=k(o);s.value=s.__value=`selection`,H(i);var c;xe(i),H(r),w(()=>{c!==(c=t().what)&&(i.value=(i.__value=t().what)??``,Te(i,t().what))}),x(`change`,i,e=>n()({what:e.currentTarget.value})),d(e,r)},c=e=>{var r=FI(),i=I(r),a=k(B(i));P(a,()=>t().field,()=>e=>n()({field:e})),H(i);var o=k(i,2),s=k(B(o)),c=B(s);c.value=c.__value=`asc`;var l=k(c);l.value=l.__value=`desc`,H(s);var u;xe(s),H(o),w(()=>{u!==(u=t().dir??`asc`)&&(s.value=(s.__value=t().dir??`asc`)??``,Te(s,t().dir??`asc`))}),x(`change`,s,e=>n()({dir:e.currentTarget.value})),d(e,r)},l=e=>{var r=II(),i=I(r),a=k(B(i));P(a,()=>t().field,()=>e=>n()({field:e})),H(i);var o=k(i,2),s=k(B(o));N(s),H(o),w(()=>F(s,t().value)),x(`change`,s,e=>n()({value:e.currentTarget.value})),d(e,r)},u=e=>{var r=LI(),i=I(r),a=k(B(i));ae(a,()=>t().target,()=>e=>n()({target:e})),H(i);var o=k(i,2),s=k(B(o));N(s),H(o);var c=k(o,2),l=k(B(c));N(l),H(c),w(()=>{F(s,t().prop),F(l,t().value)}),x(`change`,s,e=>n()({prop:e.currentTarget.value})),x(`change`,l,e=>n()({value:e.currentTarget.value})),d(e,r)},f=e=>{var r=RI(),i=I(r),a=k(B(i));ae(a,()=>t().target,()=>e=>n()({target:e})),H(i);var o=k(i,2),s=k(B(o));N(s),H(o),w(()=>F(s,t().value)),x(`change`,s,e=>n()({value:e.currentTarget.value})),d(e,r)},m=e=>{var r=mee(),i=k(B(r));N(i),H(r),w(()=>F(i,t().message)),x(`change`,i,e=>n()({message:e.currentTarget.value})),d(e,r)},g=e=>{var r=zI(),i=k(B(r));N(i),H(r),w(()=>F(i,t().actionId)),x(`change`,i,e=>n()({actionId:e.currentTarget.value})),d(e,r)},_=e=>{var r=VI(),i=I(r),a=k(B(i));se(a,21,()=>p(Zr)?.state??[],e=>e.name,(e,t)=>{var n=BI(),r=B(n,!0);H(n);var i={};w(()=>{v(r,p(t).name),i!==(i=p(t).name)&&(n.value=(n.__value=p(t).name)??``)}),d(e,n)}),H(a);var o;xe(a),H(i);var s=k(i,2),c=k(B(s));ve(c,()=>t().value,()=>e=>n()({value:e})),H(s),w(()=>{o!==(o=t().name)&&(a.value=(a.__value=t().name)??``,Te(a,t().name))}),x(`change`,a,e=>n()({name:e.currentTarget.value})),d(e,r)},y=e=>{var r=HI(),i=k(I(r),2);ye(i,()=>t().values,()=>e=>n()({values:e})),d(e,r)},b=e=>{var r=UI(),i=I(r),a=k(B(i));ve(a,()=>t().id,()=>e=>n()({id:e})),H(i);var o=k(i,4);ye(o,()=>t().values,()=>e=>n()({values:e})),d(e,r)},S=e=>{var r=WI(),i=k(B(r));ve(i,()=>t().id,()=>e=>n()({id:e})),H(r),d(e,r)},C=e=>{var r=qI(),i=k(I(r),2);Se(i,()=>t().condition,()=>e=>n()({condition:e}));var a=k(i,2),o=k(B(a),2);ot(o,()=>t().then,()=>e=>n()({then:e})),H(a);var s=k(a,2),c=e=>{var r=GI(),i=I(r),a=k(B(i),2);ot(a,()=>t().else,()=>e=>n()({else:e.length?e:void 0})),H(i);var o=k(i,2);x(`click`,o,()=>n()({else:void 0})),d(e,r)},l=e=>{var t=KI();x(`click`,t,()=>n()({else:[]})),d(e,t)};h(s,e=>{t().else?e(c):e(l,-1)}),d(e,r)},T=e=>{var r=JI();re(r),w(()=>F(r,t().code)),x(`change`,r,e=>n()({code:e.currentTarget.value})),d(e,r)};h(i,e=>{t().type===`navigate`?e(a):t().type===`gridExport`?e(o,1):t().type===`gridClear`?e(s,2):t().type===`gridSort`?e(c,3):t().type===`gridFilter`?e(l,4):t().type===`setProp`?e(u,5):t().type===`setText`?e(f,6):t().type===`alert`?e(m,7):t().type===`apiAction`?e(g,8):t().type===`setVar`?e(_,9):t().type===`createRecord`?e(y,10):t().type===`updateRecord`?e(b,11):t().type===`deleteRecord`?e(S,12):t().type===`branch`?e(C,13):t().type===`code`&&e(T,14)}),H(r),d(e,r)},Lt=(e,t=ee)=>{var n=ZI();se(n,21,()=>p(ii),e=>e.type,(e,n)=>{var r=XI(),i=B(r);o(i,()=>`plus`);var a=k(i),s=B(a,!0);H(a),H(r),w(()=>v(s,p(n).label)),x(`click`,r,()=>t()(p(n).type)),d(e,r)}),H(n),d(e,n)};ir();let gn=z(n,`showPreview`,7,!0),yn=z(n,`startWizard`,3,!1),xn=j(null),W=M(()=>p(xn)??n.project),En=j(me([])),Yn=j(me([])),vr=M(()=>p(En).length>0),yr=M(()=>p(Yn).length>0);function br(e){e!==p(W)&&(V(En,[...p(En).slice(-59),p(W)],!0),V(Yn,[],!0),V(xn,e,!0),n.onChange?.(e))}function xr(){let e=p(En).at(-1);e&&(V(Yn,[p(W),...p(Yn)],!0),V(En,p(En).slice(0,-1),!0),V(xn,e,!0),n.onChange?.(e))}function Sr(){let e=p(Yn)[0];e&&(V(En,[...p(En),p(W)],!0),V(Yn,p(Yn).slice(1),!0),V(xn,e,!0),n.onChange?.(e))}let Cr=j(null),wr=j(null),Tr,Er=M(()=>n.persistKey?p(Cr)?`Saved`:p(xn)?`Saving…`:`Saved`:``),Or=!1;T(()=>{if(!(Or||!n.persistKey||yn())){Or=!0;try{let e=localStorage.getItem(n.persistKey);if(e&&e.trim()){let t=on(e);Re(t)!==Re(n.project)&&V(wr,t,!0)}}catch{}}}),T(()=>{if(!n.persistKey||p(xn)===null)return;let e=Re(p(W));clearTimeout(Tr),Tr=setTimeout(()=>{try{localStorage.setItem(n.persistKey,e),V(Cr,Date.now(),!0)}catch{}},600)});function kr(){p(wr)&&(V(En,[],!0),V(Yn,[],!0),V(xn,p(wr),!0),p(wr).screens[0]&&(V(Xr,p(wr).screens[0].id,!0),V(Fa,null)),n.onChange?.(p(wr)),V(Cr,Date.now(),!0),V(wr,null))}function Ar(){V(wr,null);try{n.persistKey&&localStorage.removeItem(n.persistKey)}catch{}}function Mr(e,t){if(!p(Zr))return;let n=t==null?gt(p(W),p(Zr).id,e):G(p(W),p(Zr).id,e,t),r=n.screens.find(e=>e.id===p(Zr).id);br(n),V(Fa,(t==null?r?.blocks.at(-1):r?.blocks[t])?.id??null,!0)}function Nr(){p(Zr)&&p(Fa)&&(br(ln(p(W),p(Zr).id,p(Fa))),V(Fa,null))}let Pr=j(null);function Fr(e,t){if(p(Zr)){if(p(No)){Mr(e,t);return}V(Pr,{kind:e,at:t},!0)}}function Lr(e){if(!p(Zr)||!p(Pr))return;let{kind:t,at:n}=p(Pr),r=qt(p(W),p(Zr).id,{entity:e});r=n==null?gt(r,p(Zr).id,t):G(r,p(Zr).id,t,n),br(r);let i=r.screens.find(e=>e.id===p(Zr).id);V(Fa,(n==null?i?.blocks.at(-1):i?.blocks[n])?.id??null,!0),V(Pr,null)}let Rr={button:Pe,badge:Ys,alert:fc,progress:Ql,card:ac,divider:Sc,avatar:nl,stat:Fc,"toggle-button":ua,switch:Tt,"text-input":pa,textarea:_a,"number-input":bt,"password-input":mt,"color-input":je,checkbox:ct,rating:Ke,slider:Le,"otp-input":Ji,"circular-progress":nu,skeleton:Qs,chip:Oc,"empty-state":vc,timeline:Hc,sparkline:Jc,"avatar-group":ol,pagination:Pl,breadcrumb:Jl,stepper:tn,"masked-input":dt,"phone-input":wn,"tags-input":Ue,"duration-input":$i,"radio-group":tt,"button-group":Jr,"list-box":Ir,"dropdown-list":_t,"combo-box":Be,"auto-complete":wa,"multi-select":jt,"repeat-button":gr,"rich-text":dl,tree:Qa,"country-input":sr,title:Ci,text:Si,anchor:Ei,blockquote:ki,code:Vi,kbd:Ri,mark:ji,list:Ni,spinner:ai,"loading-overlay":li,result:yi,collapsible:xi,carousel:vl,"date-time-picker":jr,"time-picker":Dr,"date-range-input":Hr,segmented:ri,"tree-select":Pa,"file-upload":ur},zr=(()=>{let e=[],t=new Map;for(let n of Qn)t.has(n.category)||(t.set(n.category,[]),e.push(n.category)),t.get(n.category).push(n);return e.map(e=>({category:e,items:t.get(e)}))})();function Br(e){let t=qn(e),n={};for(let e of t?.props??[])e.default!=null&&(n[e.key]=e.default);return t?.hasContent&&(n._content=t.contentDefault??t.label),n}let Vr=[`common`,`appearance`,`behavior`,`advanced`],Ur={common:`Common`,appearance:`Appearance`,behavior:`Behavior`,advanced:`Advanced`};function Wr(e){return e?p(Ba)===`az`?[{name:``,props:[...e.props].sort((e,t)=>e.label.localeCompare(t.label))}]:Vr.map(t=>({name:Ur[t],props:e.props.filter(e=>(e.group??`common`)===t)})).filter(e=>e.props.length>0):[]}let Gr=j(me({}));function Kr(e,t,n){let r=`${e}:${t}`;try{let i=n.trim()===``?void 0:JSON.parse(n);V(Gr,{...p(Gr),[r]:!1},!0),Li(e,t,i)}catch{V(Gr,{...p(Gr),[r]:!0},!0)}}function qr(e){let t=qn(e.component),n={};for(let r of t?.props??[]){let t=e.props[r.key]??r.default;t!=null&&t!==``&&(n[r.key]=r.type===`number`?Number(t):r.type===`boolean`?!!t:r.type===`date`?new Date(String(t)):t)}for(let e of t?.fixed??[])n[e.key]=e.preview;return n}function Yr(e){let t=qn(e.component);return String(e.props._content??t?.contentDefault??t?.label??``)}let Xr=j(``),Zr=M(()=>p(W).screens.find(e=>e.id===p(Xr))??p(W).screens[0]),Qr=M(()=>!!p(Zr)?.entity),$r=M(()=>(p(Zr)?Jn(p(Zr).blocks):[]).filter(e=>e.config.kind===`component`).map(e=>Un(e.config))),ei=M(()=>p(Zr)?.entity?$n(p(W),p(Zr).entity)?.fields.map(e=>e.field)??[]:[]),ti=M(()=>p(ei).length>0),ni=[{type:`navigate`,label:`Go to screen`},{type:`setVar`,label:`Set variable`,state:!0},{type:`branch`,label:`If / else`},{type:`createRecord`,label:`Create record`,data:!0},{type:`updateRecord`,label:`Update record`,data:!0},{type:`deleteRecord`,label:`Delete record`,data:!0},{type:`gridExport`,label:`Export grid (download)`,grid:!0},{type:`gridCopy`,label:`Copy grid selection`,grid:!0},{type:`gridClear`,label:`Clear grid filters / sort / selection`,grid:!0},{type:`gridSort`,label:`Sort grid`,grid:!0},{type:`gridFilter`,label:`Filter grid`,grid:!0},{type:`reloadData`,label:`Refresh data`,reload:!0},{type:`setProp`,label:`Set component property`,target:!0},{type:`setText`,label:`Set component text`,target:!0},{type:`alert`,label:`Show a message`},{type:`apiAction`,label:`Call a server action`},{type:`code`,label:`Run custom code`}],ii=M(()=>ni.filter(e=>(!e.grid||p(q)&&p(Po)?.config.kind!==`component`)&&(!e.reload||p(Qr))&&(!e.target||p($r).length>0)&&(!e.data||!!p(Zr)?.entity)&&(!e.state||(p(Zr)?.state?.length??0)>0)));function oi(e){switch(e){case`navigate`:return{type:e,to:p(W).screens[0]?`/`+p(W).screens[0].route:`/`};case`gridExport`:return{type:e,format:`csv`};case`gridClear`:return{type:e,what:`filters`};case`gridSort`:return{type:e,field:p(ei)[0]??``,dir:`asc`};case`gridFilter`:return{type:e,field:p(ei)[0]??``,value:``};case`setProp`:return{type:e,target:p($r)[0]??``,prop:`disabled`,value:`true`};case`setText`:return{type:e,target:p($r)[0]??``,value:``};case`alert`:return{type:e,message:``};case`apiAction`:return{type:e,actionId:``};case`setVar`:return{type:e,name:p(Zr)?.state?.[0]?.name??``,value:{kind:`literal`,value:``}};case`createRecord`:return{type:e,values:[]};case`updateRecord`:return{type:e,id:{kind:`field`,name:p(ui)},values:[]};case`deleteRecord`:return{type:e,id:{kind:`field`,name:p(ui)}};case`branch`:return{type:e,condition:{left:{kind:`state`,name:p(Zr)?.state?.[0]?.name??``},op:`truthy`},then:[]};case`code`:return{type:e,code:``};default:return{type:`gridCopy`}}}let si=e=>ni.find(t=>t.type===e.type)?.label??e.type;function ci(e,t){return e===`literal`?{kind:`literal`,value:t.kind===`literal`?t.value:``}:e===`state`?{kind:`state`,name:p(Zr)?.state?.[0]?.name??``}:e===`field`?{kind:`field`,name:p(ei)[0]??`id`}:{kind:`param`,name:``}}let ui=M(()=>p(ei)[0]??`id`);function di(e,t,n){let r=t+n;if(r<0||r>=e.length)return e;let i=[...e];return[i[t],i[r]]=[i[r],i[t]],i}let fi={beforeCreate:`Before create`,afterCreate:`After create`,beforeUpdate:`Before update`,afterUpdate:`After update`,beforeDelete:`Before delete`,afterDelete:`After delete`};function pi(e){return p(No)?it(p(W),p(No).name)[e]??[]:[]}function mi(e,t){p(No)&&br(Ft(p(W),p(No).name,e,t.length?t:null))}function hi(e,t){let n=t.startsWith(`before`);switch(e){case`setField`:return{type:e,field:p(ei)[0]??``,value:{kind:`literal`,value:``}};case`requireField`:return{type:e,field:p(ei)[0]??``};case`reject`:return{type:e,condition:{left:{kind:`field`,name:p(ei)[0]??``},op:`falsy`},message:`Not allowed`};case`branch`:return{type:e,condition:{left:{kind:`field`,name:p(ei)[0]??``},op:`truthy`},then:[]};case`code`:return{type:e,code:n?`// runs before the write; v is the payload`:`// runs after the write; v is the saved row`}}}let gi=[{type:`requireField`,label:`Require field`},{type:`setField`,label:`Set field`},{type:`reject`,label:`Reject when...`},{type:`branch`,label:`If / else`},{type:`code`,label:`Custom code`}],_i=e=>gi.find(t=>t.type===e.type)?.label??e.type;function vi(e){if(!e)return[];if(e.config.kind===`grid`)return Dt.map(t=>({slot:In(t.key,e.id),label:Ti(t.key)}));if(e.config.kind===`record`&&e.config.editable)return[{slot:lr,label:`Record saved`}];if(e.config.kind===`component`){let t=qn(e.config.component)?.events??[],n=new Set(t.map(e=>e.key));return[...t,...un.filter(e=>!n.has(e.key))].map(t=>({slot:In(t.key,e.id),label:t.label}))}return[]}let bi={keydown:`onKeyDown`,keyup:`onKeyUp`,dblclick:`onDblClick`,contextmenu:`onContextMenu`,mouseenter:`onMouseEnter`,mouseleave:`onMouseLeave`},wi=e=>bi[e]??`on`+e.charAt(0).toUpperCase()+e.slice(1),Ti=e=>e.replace(/([A-Z])/g,` $1`).toLowerCase().replace(/^./,e=>e.toUpperCase()),Di=e=>p(Lo).find(t=>t.blockId===e);function Oi(e,t){let n=Di(e);if(!n)return;let r=t.split(`:`)[0];if(n.tier===`grid`){let e=Dt.find(e=>e.key===r);return e?`ctx.${n.name}.${e.method}`:void 0}if(n.tier===`component`)return`ctx.${n.name}.${wi(r)}`}function Ai(e,t){let n=Oi(e,t);return!!n&&(p(Zr)?.handlerBodies?.onLoad??``).includes(n)}function Mi(e,t,n){if(t===`onLoad`||t===`onDestroy`){V(La,t,!0),V(Ia,`code`);return}let r=Oi(e,t);if(p(Zr)&&r){let e=p(Zr).handlerBodies?.onLoad??``;if(!e.includes(r)){let t=`${r} = (e) => {\n \n}`,n=e.trim()?`${e.replace(/\s*$/,``)}\n\n${t}\n`:`${t}\n`;br(xt(p(W),p(Zr).id,`onLoad`,n))}}V(La,`onLoad`),V(Ia,`code`)}function Pi(e,t){if(!p(Zr))return;let n=Je(oi(t)),r=p(Zr).handlerBodies?.[e]??``,i=r.trim()?r.replace(/\s*$/,``)+`
|
|
75790
75790
|
`+n:n;br(xt(p(W),p(Zr).id,e,i))}let Fi=[{c:1,label:`1/12`},{c:2,label:`1/6`},{c:3,label:`1/4`},{c:4,label:`1/3`},{c:5,label:`5/12`},{c:6,label:`1/2`},{c:7,label:`7/12`},{c:8,label:`2/3`},{c:9,label:`3/4`},{c:10,label:`5/6`},{c:11,label:`11/12`},{c:12,label:`Full`}];function Ii(e,t){if(!p(Zr))return;let n=Ae(p(W),p(Zr).id,e,Br(e),t),r=n.screens.find(e=>e.id===p(Zr).id);br(n),V(Fa,(t==null?r?.blocks.at(-1):r?.blocks[t])?.id??null,!0)}function Li(e,t,n){if(!p(Zr))return;let r=Jn(p(Zr).blocks).find(t=>t.id===e);if(!r||r.config.kind!==`component`)return;let i={...r.config.props,[t]:n};br(Gt(p(W),p(Zr).id,e,{config:{props:i}}))}let zi=Fn();function Bi(e,t){if(!p(Zr)||!p(Po)||p(Po).config.kind!==`grid`)return;let n={...p(Po).config.props??{}};t===void 0||t===``||t===null?delete n[e]:n[e]=t,br(Gt(p(W),p(Zr).id,p(Po).id,{config:{props:Object.keys(n).length?n:void 0}}))}function Hi(e,t){let n=`grid:${e}`;try{let r=t.trim()===``?void 0:JSON.parse(t);V(Gr,{...p(Gr),[n]:!1},!0),Bi(e,r)}catch{V(Gr,{...p(Gr),[n]:!0},!0)}}function Ui(e,t){return e.bindings?.[t]}function Wi(e,t,n){p(Zr)&&br(Ve(p(W),p(Zr).id,e,t,n))}let Gi=`sv-studio:onboarded`,Ki=j(!1),qi=`var(--sg-accent,#6366f1)`,Yi=e=>`<svg viewBox="0 0 320 104" width="100%" xmlns="http://www.w3.org/2000/svg" aria-hidden="true"><rect width="320" height="104" rx="10" fill="${qi}" opacity="0.1"/>${e}</svg>`,Xi={welcome:Yi(`<g transform="translate(160,52)" fill="${qi}"><path d="M0,-26 L6,-7 L25,0 L6,7 L0,26 L-6,7 L-25,0 L-6,-7 Z"/><circle cx="30" cy="-20" r="4" opacity="0.6"/><circle cx="-28" cy="22" r="3" opacity="0.5"/><circle cx="34" cy="16" r="2.5" opacity="0.5"/></g>`),pages:Yi(`<g transform="translate(100,22)"><rect width="120" height="16" rx="4" fill="${qi}"/><rect y="22" width="120" height="16" rx="4" fill="currentColor" opacity="0.16"/><rect y="44" width="120" height="16" rx="4" fill="currentColor" opacity="0.16"/></g>`),components:Yi(`<g transform="translate(112,28)" fill="${qi}"><rect width="28" height="20" rx="3"/><rect x="34" width="28" height="20" rx="3" opacity="0.7"/><rect x="68" width="28" height="20" rx="3" opacity="0.5"/><rect y="26" width="28" height="20" rx="3" opacity="0.5"/><rect x="34" y="26" width="28" height="20" rx="3"/><rect x="68" y="26" width="28" height="20" rx="3" opacity="0.7"/></g>`),canvas:Yi(`<g transform="translate(96,22)"><rect width="52" height="22" rx="4" fill="currentColor" opacity="0.15"/><rect x="60" width="52" height="22" rx="4" fill="currentColor" opacity="0.15"/><g transform="translate(0,32)" fill="${qi}"><rect y="16" width="14" height="16" rx="2"/><rect x="20" y="6" width="14" height="26" rx="2"/><rect x="40" y="20" width="14" height="12" rx="2"/><rect x="60" y="2" width="14" height="30" rx="2" opacity="0.7"/><rect x="80" y="12" width="14" height="20" rx="2" opacity="0.7"/></g></g>`),layouts:Yi(`<g transform="translate(96,26)"><rect width="30" height="52" rx="4" fill="currentColor" opacity="0.15"/><rect x="38" width="52" height="52" rx="4" fill="${qi}" opacity="0.85"/><rect x="98" width="30" height="52" rx="4" fill="currentColor" opacity="0.15"/></g>`),inspector:Yi(`<g transform="translate(100,30)"><g stroke="currentColor" stroke-width="4" stroke-linecap="round" opacity="0.3"><line x1="0" y1="0" x2="120" y2="0"/><line x1="0" y1="22" x2="120" y2="22"/><line x1="0" y1="44" x2="120" y2="44"/></g><g fill="${qi}"><circle cx="84" cy="0" r="7"/><circle cx="40" cy="22" r="7"/><circle cx="98" cy="44" r="7"/></g></g>`),logic:Yi(`<g transform="translate(88,30)"><path d="M22,20 H58 M82,20 H108 M108,20 V4 H132 M108,20 V36 H132" stroke="currentColor" stroke-width="2.5" opacity="0.4" fill="none"/><g fill="${qi}"><rect x="0" y="10" width="22" height="20" rx="4"/><rect x="58" y="10" width="24" height="20" rx="4" opacity="0.8"/><rect x="132" y="-6" width="22" height="18" rx="4" opacity="0.7"/><rect x="132" y="26" width="22" height="18" rx="4" opacity="0.7"/></g></g>`),triggers:Yi(`<g transform="translate(160,50)"><path d="M0,-28 L22,-20 V2 C22,18 12,26 0,30 C-12,26 -22,18 -22,2 V-20 Z" fill="${qi}"/><path d="M-9,0 L-2,8 L11,-8" stroke="#fff" stroke-width="4" fill="none" stroke-linecap="round" stroke-linejoin="round"/></g>`),code:Yi(`<g transform="translate(160,52)" fill="none" stroke-linecap="round" stroke-linejoin="round"><path d="M-28,-13 L-44,4 L-28,21" stroke="${qi}" stroke-width="5"/><path d="M28,-13 L44,4 L28,21" stroke="${qi}" stroke-width="5"/><path d="M9,-17 L-9,25" stroke="currentColor" stroke-width="4" opacity="0.45"/></g>`),data:Yi(`<g transform="translate(160,50)" fill="${qi}"><path d="M-27,-16 V16 C-27,21 -14,25 0,25 C14,25 27,21 27,16 V-16 Z" opacity="0.85"/><ellipse cx="0" cy="-16" rx="27" ry="9"/><ellipse cx="0" cy="-16" rx="27" ry="9" fill="#fff" opacity="0.25"/></g>`),samples:Yi(`<g transform="translate(112,25)"><rect width="44" height="24" rx="4" fill="${qi}"/><rect x="52" width="44" height="24" rx="4" fill="currentColor" opacity="0.15"/><rect y="30" width="44" height="24" rx="4" fill="currentColor" opacity="0.15"/><rect x="52" y="30" width="44" height="24" rx="4" fill="${qi}" opacity="0.7"/></g>`),copilot:Yi(`<g transform="translate(120,26)"><rect width="80" height="42" rx="10" fill="currentColor" opacity="0.12"/><g transform="translate(40,21)" fill="${qi}"><path d="M0,-12 L3,-3 L12,0 L3,3 L0,12 L-3,3 L-12,0 L-3,-3 Z"/></g><circle cx="16" cy="21" r="3" fill="${qi}" opacity="0.6"/><circle cx="64" cy="21" r="3" fill="${qi}" opacity="0.6"/></g>`),preview:Yi(`<g transform="translate(104,24)"><rect width="72" height="46" rx="4" fill="none" stroke="currentColor" stroke-width="3" opacity="0.4"/><rect x="8" y="8" width="56" height="30" rx="2" fill="${qi}" opacity="0.8"/><rect x="88" y="6" width="26" height="46" rx="4" fill="none" stroke="currentColor" stroke-width="3" opacity="0.4"/><rect x="92" y="12" width="18" height="30" rx="1" fill="${qi}" opacity="0.6"/></g>`),generate:Yi(`<g transform="translate(160,54)"><path d="M0,-30 C11,-18 13,-2 8,12 L-8,12 C-13,-2 -11,-18 0,-30 Z" fill="${qi}"/><circle cx="0" cy="-8" r="4.5" fill="#fff" opacity="0.9"/><path d="M-8,12 L-15,24 L-5,19 Z M8,12 L15,24 L5,19 Z" fill="${qi}" opacity="0.65"/><path d="M-4,16 L0,30 L4,16 Z" fill="#f59e0b"/></g>`)},Zi=[{image:Xi.welcome,title:`Welcome to Studio 👋`,content:`Studio builds a complete data app visually - screens, real data, and logic - then generates a typed SvelteKit project you own. This 90-second tour points out the essentials. Use ← → or the buttons to move, Esc to skip.`},{target:`[data-tour="rail"]`,image:Xi.pages,title:`Pages`,content:`Every screen in your app is listed here. Add a page (CRUD, dashboard, master-detail, or blank) with the New Page control below, reorder by dragging, and pick per-screen data sources. Entities (your data model) are listed underneath.`},{target:`[data-tour="rail"]`,image:Xi.components,title:`Components`,content:`Flip the rail to the Components tab to drag UI blocks onto a page: data grids, charts, KPIs, gauges, forms, trees, pivots, Kanban boards, schedulers, master-detail, record panels, filters - plus buttons, badges, alerts and more.`},{target:`[data-tour="canvas"]`,image:Xi.canvas,title:`The live canvas`,content:`Your app renders here as you build - with real sample data. Click a block to select it, drag to arrange, and drag a block edge to resize. Toggle "Show data" to see live content vs. wireframes.`},{target:`[data-tour="canvas"]`,image:Xi.layouts,title:`Layouts per screen`,content:`Each screen picks its own layout in the Inspector: a responsive 12-column Grid, a single-column Stack, a resizable Split view, a full Docking manager, or a free-form Canvas - each with its own spacing and options.`},{target:`[data-tour="inspector"]`,image:Xi.inspector,title:`Inspector`,content:`Configure the selected block here - columns, value formatting, rich cells, grouping + aggregations, filtering, export, and the screen layout. It updates the canvas instantly.`},{target:`[data-tour="inspector"]`,image:Xi.logic,title:`State & logic`,content:`Screens can hold reactive State variables, and blocks get visual Methods - On click / On row select / On change / On record saved - built from typed actions (set a variable, create/update/delete a record, navigate, if-else) with no code.`},{target:`[data-tour="inspector"]`,image:Xi.triggers,title:`Server rules (triggers)`,content:`On an entity you can add Triggers - before/after create, update and delete - to require fields, transform values, or reject bad writes. They run + are enforced on the server, so a client that skips its checks still can't write bad data.`},{target:`[data-tour="viewtabs"]`,image:Xi.code,title:`Design ↔ Code`,content:`Switch from Design to Code to read the generated +page.svelte for any screen, and write real code-behind in handlers.ts (with a typed ctx: the grid API, your data, state and navigation).`},{target:`[data-tour="data"]`,image:Xi.data,title:`Connect data`,content:`Start with seeded demo data (zero backend), flip the whole app to an in-browser Postgres in one click, or connect a real source: SQL (Postgres/MySQL/SQLite/Turso), Supabase, or a REST API. Import a CSV to create an entity too.`},{target:`[data-tour="newapp"]`,image:Xi.generate,title:`Start a new app`,content:`New app walks you through it: connect a database (or pick sample data), choose which tables you want, and Studio scaffolds a list, an edit form and a record page for each - a working CRUD app in a few clicks.`},{target:`[data-tour="samples"]`,image:Xi.samples,title:`Sample apps`,content:`Not sure where to start? Load a full example - CRM, HR, support desk, clinic, fleet and more - each with entities, dashboards, boards, schedulers and forms already wired up. Great for learning the patterns.`},{target:`[data-tour="copilot"]`,image:Xi.copilot,title:`Build with AI`,content:`Describe a change in plain English - "add a priority field to tasks and colour overdue rows red" - and Copilot edits the app for you. It also ships an MCP server so external AI agents can drive Studio.`},{target:`[data-tour="preview"]`,image:Xi.preview,title:`Preview`,content:`Run the whole app full-screen with live data and navigation, and check it on desktop, tablet or mobile - the layout adapts just like the shipped app.`},{target:`[data-tour="generate"]`,image:Xi.generate,title:`Generate & ship`,content:`When you are ready, generate a real, typed SvelteKit project - components, routes, schema, migrations and API. It's plain code: run it, extend it, and deploy anywhere. That's the tour - enjoy building! 🚀`}],Qi=M(()=>n.onCopilot?Zi:Zi.filter(e=>e.target!==`[data-tour="copilot"]`));function ea(){V(Ki,!0)}function ta(){V(Ki,!1);try{localStorage.setItem(Gi,`1`)}catch{}}let na=`sv-studio:welcomed`;function ra(){try{localStorage.setItem(na,`1`)}catch{}}T(()=>{let e=!0,t=!0;try{e=!!localStorage.getItem(na),t=!!localStorage.getItem(Gi)}catch{}p(wr)||yn()||(!e&&!t?queueMicrotask(()=>{V(aa,`welcome`),V(ia,!0)}):t||queueMicrotask(()=>V(Ki,!0)))});let ia=j(!1),aa=j(`new`);function oa(){V(aa,`new`),V(ia,!0)}function sa(){V(ia,!1),ra()}function ca(){V(ia,!1),ra(),ea()}function la(e,t,n){br(e),V(Xr,t??e.screens[0]?.id??``,!0),V(Fa,null),V(ia,!1),ra(),n&&ea()}T(()=>{yn()&&queueMicrotask(()=>{V(aa,`new`),V(ia,!0)})});function da(e,t,n,r){Wi(e,t,{...n,...r})}function fa(e,t,n){let r=p(ei)[0]??``;Wi(e,t,n===`aggregate`?{kind:`aggregate`,reduce:`sum`,field:r||void 0}:n===`field`?{kind:`field`,field:r}:{kind:`expr`,code:`rows.length`})}function ma(e){if(!p(Zr))return;let t=St(p(W),p(Zr).id,e),n=p(Zr).blocks.findIndex(t=>t.id===e),r=t.screens.find(e=>e.id===p(Zr).id)?.blocks[n+1];br(t),r&&V(Fa,r.id,!0)}let ha=j(null);function ga(e,t){if(!t.length)return;e.preventDefault(),e.stopPropagation();let n=Math.min(t.length,12)*32+12;V(ha,{x:Math.max(6,Math.min(e.clientX,window.innerWidth-190-6)),y:Math.max(6,Math.min(e.clientY,window.innerHeight-n-6)),items:t},!0)}function va(e){e.disabled||(V(ha,null),e.onSelect?.())}function ya(e){if(!p(Zr))return[];let t=p(Zr).blocks.findIndex(t=>t.id===e.id),n=p(Zr).blocks.length-1;return[{label:`Select`,onSelect:()=>V(Fa,e.id,!0)},{label:`Duplicate`,onSelect:()=>ma(e.id)},{label:`Move up`,disabled:t<=0,onSelect:()=>br(ar(p(W),p(Zr).id,e.id,t-1))},{label:`Move down`,disabled:t<0||t>=n,onSelect:()=>br(ar(p(W),p(Zr).id,e.id,t+1))},{separator:!0},{label:`Delete`,danger:!0,onSelect:()=>{br(ln(p(W),p(Zr).id,e.id)),p(Fa)===e.id&&V(Fa,null)}}]}function ba(e){let t=p(W).screens.findIndex(t=>t.id===e.id);return[{label:`Open`,onSelect:()=>{V(Xr,e.id,!0),V(Fa,null)}},{label:`Duplicate`,onSelect:()=>{V(Xr,e.id,!0),ja()}},{label:`Move up`,disabled:t<=0,onSelect:()=>br(mr(p(W),e.id,t-1))},{label:`Move down`,disabled:t<0||t>=p(W).screens.length-1,onSelect:()=>br(mr(p(W),e.id,t+1))},{separator:!0},{label:`Delete`,danger:!0,onSelect:()=>br(mn(p(W),e.id))}]}T(()=>{if(!p(ha))return;let e=e=>{e.key===`Escape`&&V(ha,null)},t=e=>{e.target?.closest?.(`.sv-studio__ctx`)||V(ha,null)};return window.addEventListener(`keydown`,e),window.addEventListener(`pointerdown`,t,!0),window.addEventListener(`scroll`,()=>V(ha,null),!0),()=>{window.removeEventListener(`keydown`,e),window.removeEventListener(`pointerdown`,t,!0)}});let xa=j(null),Sa=j(!1),Ca=j(!1),Ta=j(null),Ea=M(()=>p(W).entities.flatMap(e=>e.fields.filter(e=>e.type===`relation`&&e.relation?.entity).map(t=>({from:e.name,fromLabel:e.label??e.name,field:t.field,to:t.relation.entity,labelField:t.relation.labelField,missing:!$n(p(W),t.relation.entity)}))));function Da(e){V(Ta,e,!0),queueMicrotask(()=>document.querySelector(`[data-entity-card="${CSS.escape(e)}"]`)?.scrollIntoView({behavior:`smooth`,block:`center`})),setTimeout(()=>{p(Ta)===e&&V(Ta,null)},1400)}function Oa(e){V(Ca,!0),requestAnimationFrame(()=>Da(e))}function ka(){p(Po)&&V(xa,JSON.parse(JSON.stringify(p(Po))),!0)}function Aa(){if(!p(xa)||!p(Zr))return;let e=zn(p(W),p(Zr).id,p(xa));br(e),V(Fa,e.screens.find(e=>e.id===p(Zr).id)?.blocks.at(-1)?.id??null,!0)}function ja(){if(!p(Zr))return;let e=Oe(p(W),p(Zr).id),t=p(W).screens.findIndex(e=>e.id===p(Zr).id);br(e);let n=e.screens[t+1];n&&(V(Xr,n.id,!0),V(Fa,null))}function Ma(){let e=new Set(p(W).screens.map(e=>e.id)),t=p(Zr)?.entity??p(W).entities[0]?.name,n=p($s)!==`empty`&&t?pt(p(W),t,p($s)):ut(p(W),{title:`New Page`});br(n);let r=n.screens.find(t=>!e.has(t.id));r&&(V(Xr,r.id,!0),V(Fa,null))}function Na(e,t){if(!p(No))return;let n=t.trim();!n||n!==e&&p(No).fields.some(e=>e.field===n)||Df(EM(p(No),e,{field:n}))}let Fa=j(null),Ia=j(`design`),La=j(`onLoad`),Ra=j(`properties`),Ba=j(`az`),Va=j(void 0),Ha=M(()=>!!p(Zr)&&kt(p(Zr))===`dock`),Ua=M(()=>!!p(Zr)&&kt(p(Zr))===`stack`),Wa=M(()=>!!p(Zr)&&kt(p(Zr))===`split`),Ga=M(()=>!!p(Zr)&&kt(p(Zr))===`canvas`),Ka=M(()=>p(Ha)||p(Wa)),qa=M(()=>p(Zr)?Sn(p(Zr)):null),Ja=M(()=>p(Zr)?st(p(Zr)):null),Ya=M(()=>p(Zr)?Vt(p(Zr)):null),Xa=M(()=>p(Zr)?Wt(p(Zr)):null),Za=M(()=>p(Zr)?Nt(p(Zr)):null);function $a(e,t,n=!1){if(!p(Zr))return;let r=qe(p(W),p(Zr).id,e,t);n&&(r=nn(r,p(Zr).id)),br(r)}let eo=M(()=>({minSize:p(Wa)?p(Ya)?.minPaneSize??80:80,allowPopout:p(Ha)?!!p(Xa)?.allowPopout:!1,hideSingleTab:p(Ha)?!!p(Xa)?.hideSingleTab:!1,headerPosition:(p(Ha)?p(Xa)?.headerPosition:`top`)??`top`})),K=M(()=>p(Ua)&&p(Ja)?`gap: ${p(Ja).gap}px; --stack-minh: ${p(Ja).minHeight}px;`+(p(Ja).maxWidth?` max-width: ${p(Ja).maxWidth}px;${p(Ja).align===`center`?` margin-inline: auto;`:``}`:``):!p(Ka)&&!p(Ga)&&p(qa)?`gap: ${p(qa).rowGap}px ${p(qa).colGap}px; align-items: ${p(qa).align};`+(p(qa).maxWidth?` max-width: ${p(qa).maxWidth}px; margin-inline: auto;`:``):``),to=j(null),no=me({}),io=me({}),ao=j(null),oo=null;function so(e){return p(ao)&&p(ao).id===e?p(ao).rect:p(Zr)?zt(p(Zr),e):{col:0,row:0,colSpan:6,rowSpan:8}}let co=()=>p(Za)?.cols??12,lo=()=>p(Za)?.gap??8,uo=()=>p(Za)?.rowHeight??40;function fo(){let e=((p(to)?.clientWidth??1)-(co()-1)*lo())/co();return{cw:e>0?e:1,ch:uo()+lo()}}function po(e,t,n){!p(Zr)||e.button!==0||(e.preventDefault(),e.stopPropagation(),V(Fa,t,!0),oo={id:t,mode:n,sx:e.clientX,sy:e.clientY,start:zt(p(Zr),t)},V(ao,{id:t,rect:oo.start},!0),e.currentTarget.setPointerCapture?.(e.pointerId),window.addEventListener(`pointermove`,mo),window.addEventListener(`pointerup`,ho))}function mo(e){if(!oo)return;let{cw:t,ch:n}=fo(),r=Math.round((e.clientX-oo.sx)/t),i=Math.round((e.clientY-oo.sy)/n),a=oo.start,o;if(oo.mode===`move`){let e=a.colSpan;o={col:Math.max(0,Math.min(co()-e,a.col+r)),row:Math.max(0,a.row+i),colSpan:e,rowSpan:a.rowSpan}}else{let e=Math.max(1,Math.min(co()-a.col,a.colSpan+r)),t=Math.max(1,a.rowSpan+i);o={col:a.col,row:a.row,colSpan:e,rowSpan:t}}V(ao,{id:oo.id,rect:o},!0)}function ho(){window.removeEventListener(`pointermove`,mo),window.removeEventListener(`pointerup`,ho),oo&&p(ao)&&p(Zr)&&br(We(p(W),p(Zr).id,oo.id,p(ao).rect)),oo=null,V(ao,null)}function go(e,t){let n=lo(),r=e.col*(t+n),i=(e.col+e.colSpan)*(t+n)-n;return[r,i,(r+i)/2]}function _o(e){let t=uo()+lo(),n=e.row*t,r=(e.row+e.rowSpan)*t-lo();return[n,r,(n+r)/2]}let vo=M(()=>{if(!p(ao)||!p(Zr)||!p(to))return{x:[],y:[]};let e=(p(to).clientWidth-(co()-1)*lo())/co();if(!(e>0))return{x:[],y:[]};let t=p(Zr).blocks.filter(e=>e.id!==p(ao).id).map(e=>zt(p(Zr),e.id)),n=t.flatMap(t=>go(t,e)),r=t.flatMap(e=>_o(e)),i=(e,t)=>t.some(t=>Math.abs(t-e)<=1),a=e=>[...new Set(e.map(e=>Math.round(e)))];return{x:a(go(p(ao).rect,e).filter(e=>i(e,n))),y:a(_o(p(ao).rect).filter(e=>i(e,r)))}}),yo=M(()=>p(Zr)&&p(Ka)?p(Zr).id+`|`+p(Zr).blocks.map(e=>e.id).join(`,`):``),bo=j(void 0),xo=j(``),So=me({}),Co=()=>({main:{type:`group`,id:`cg-root`,direction:`row`,children:[{type:`tabs`,id:`ct-rail`,panes:[{id:`rail`,title:`Pages`,closable:!1},{id:`rail-components`,title:`Components`,closable:!1}],active:0},{type:`tabs`,id:`ct-main`,panes:[{id:`main`,title:`Canvas`,closable:!1}],active:0},{type:`tabs`,id:`ct-insp`,panes:[{id:`inspector`,title:`Inspector`,closable:!1}],active:0}],sizes:[.2,.56,.24]},floating:[],autoHide:[]}),wo=j(me(Co())),To=j(null);T(()=>{try{let e=localStorage.getItem(`sv-studio:chrome-ws`);e&&V(To,Ss(JSON.parse(e)),!0)}catch{}});function Eo(e){V(wo,e,!0);try{localStorage.setItem(`sv-studio:chrome-ws`,JSON.stringify(e))}catch{}}function Do(){p(To)&&V(wo,Ss(p(To)),!0)}function Oo(){V(wo,Co(),!0)}function ko(e){let t=structuredClone(ie(p(wo))),n=t=>{let r=t;if(!r||typeof r!=`object`)return!1;if(r.type===`tabs`&&Array.isArray(r.panes)){let t=r.panes.findIndex(t=>t.id===e);return t>=0&&(r.active=t,!0)}return Array.isArray(r.children)?r.children.some(n):!1};(n(t.main)||(t.floating??[]).some(n))&&V(wo,t,!0)}T(()=>{if(p(yo)&&p(yo)!==p(xo)){V(xo,p(yo),!0);let e=p(Zr)?Gn(p(Zr)).dock:null;V(bo,e?Ss(e):void 0,!0)}});function Ao(e){p(Zr)&&br(lt(p(W),p(Zr).id,e))}function jo(e){if(!p(Zr))return;let t=Ht(e),n=p(Zr).blocks.filter(e=>!t.has(e.id)),r=nt(p(W),p(Zr).id,e);for(let e of n)r=ln(r,p(Zr).id,e.id);br(r)}function Mo(e,t){if(!p(Zr))return;let n=ft(p(W),p(Zr).id,e,t);br(n);let r=n.screens.find(e=>e.id===p(Zr).id);r?.dock&&V(bo,r.dock,!0)}let No=M(()=>p(Zr)?$n(p(W),p(Zr).entity):void 0),Po=M(()=>Jn(p(Zr)?.blocks??[]).find(e=>e.id===p(Fa)));T(()=>{if(p(Fa),!(p(Ba)!==`az`||!p(Po)||p(Ra)!==`properties`||!p(Va)))for(let e of p(Va).querySelectorAll(`details.sv-studio__section`))e.open=!0});let Fo=M(()=>!!p(Zr)?.renderGrid),q=M(()=>!!p(Zr)?.renderGrid||Jn(p(Zr)?.blocks??[]).some(e=>e.config.kind===`grid`)),J=M(()=>p(Zr)?.handlerBodies?.onLoad??``),Io=M(()=>p(Zr)?.handlerBodies?.onDestroy??``),Lo=M(()=>p(Zr)?Bn(p(Zr)):[]),Ro=M(()=>p(Zr)?fn(p(Zr)):`none`),zo=M(()=>p(Zr)?rn(p(Zr),p(No)):``),Bo=M(()=>{if(p(Ia)!==`code`||p(La)===`onLoad`||p(La)===`onDestroy`||p(La)===`css`||!p(Zr))return null;try{let e=er(p(W)),t=t=>e.find(e=>e.path===t)?.contents??``;return{page:t(`src/routes/${p(Zr).route}/+page.svelte`),ctx:t(`src/routes/${p(Zr).route}/page-context.ts`),error:``}}catch(e){return{page:``,ctx:``,error:e instanceof Error?e.message:String(e)}}});function Vo(e){return e.tier===`grid`?`the Grid's real API (exportCsv, selectCells, addRow, …)`:e.tier===`data`?`the ${e.kind}: setData(rows) · rows · clear()`:`${e.component}: setLabel · setVariant · onclick`}let Ho=M(()=>p(Zr)?[...On(p(Zr)),`await fetch('/api/')`,`console.log()`]:[]),Uo=M(()=>p(Lo).find(e=>e.tier===`data`)),Wo=M(()=>p(Lo).find(e=>e.tier===`component`)),Go=M(()=>[...p(Ro)===`settable`?[{label:`Fetch → Grid`,code:`const res = await fetch('/api/data')
|
|
75791
75791
|
ctx.data.setRows(await res.json())`}]:[],...p(q)?[{label:`Export CSV`,code:`const csv = ctx.grid.exportCsv()
|
|
75792
|
-
console.log(csv)`}]:[],...p(Uo)?[{label:`Feed ${p(Uo).name}`,code:`const res = await fetch('/api/data')\nctx.${p(Uo).name}.setData(await res.json())`}]:[],...p(Wo)?[{label:`Wire ${p(Wo).name}`,code:`ctx.${p(Wo).name}.onclick = () => {\n ctx.${p(Wo).name}.setLabel('Clicked')\n}`}]:[],{label:`Log on mount`,code:`console.log('page mounted', ctx)`}]),Ko={name:`__free__`,label:``,idField:`id`,fields:[]},qo=M(()=>ke(p(W))),Jo=M(()=>Zn(p(W))),Yo=M(()=>p(qo).filter(e=>e.level===`error`).length),Xo=M(()=>{let e={};for(let t of p(qo))t.block&&(e[t.block]??=[]).push(t);return e});function Zo(e){e.screen&&V(Xr,e.screen,!0),V(Fa,e.block??null,!0),e.block&&queueMicrotask(()=>document.querySelector(`[data-block-id="${CSS.escape(e.block)}"]`)?.scrollIntoView({behavior:`smooth`,block:`center`}))}T(()=>{!p(W).screens.some(e=>e.id===p(Xr))&&p(W).screens[0]&&V(Xr,p(W).screens[0].id,!0)}),T(()=>pr(`Studio`));let Qo=[`count`,`sum`,`avg`,`min`,`max`],$o=[{type:`bar`,label:`Bar`,glyph:`<rect x="2" y="13" width="6" height="13" rx="1"/><rect x="11" y="6" width="6" height="20" rx="1"/><rect x="20" y="16" width="6" height="10" rx="1"/><rect x="29" y="9" width="6" height="17" rx="1"/>`},{type:`pie`,label:`Pie`,glyph:`<circle cx="18" cy="14" r="12" opacity="0.32"/><path d="M18,14 L18,2 A12,12 0 0,1 29,18 Z"/>`},{type:`line`,label:`Line`,glyph:`<polyline points="2,22 12,10 21,16 36,4" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"/>`},{type:`area`,label:`Area`,glyph:`<path d="M2,22 L12,10 L21,16 L36,4 L36,26 L2,26 Z" opacity="0.9"/>`},{type:`radar`,label:`Radar`,glyph:`<polygon points="18,3 32,13 27,27 9,27 4,13" fill="none" stroke="currentColor" stroke-width="1.5" opacity="0.4"/><polygon points="18,9 26,14 23,23 13,23 10,14"/>`},{type:`funnel`,label:`Funnel`,glyph:`<path d="M3,4 H35 L28,12 H10 Z"/><path d="M11,15 H27 L23,23 H15 Z" opacity="0.7"/>`},{type:`waterfall`,label:`Waterfall`,glyph:`<rect x="2" y="15" width="6" height="11" rx="1"/><rect x="11" y="10" width="6" height="8" rx="1" opacity="0.7"/><rect x="20" y="6" width="6" height="9" rx="1"/><rect x="29" y="6" width="6" height="20" rx="1" opacity="0.7"/>`},{type:`treemap`,label:`Treemap`,glyph:`<rect x="2" y="3" width="20" height="15" rx="1"/><rect x="24" y="3" width="12" height="15" rx="1" opacity="0.6"/><rect x="2" y="20" width="12" height="6" rx="1" opacity="0.7"/><rect x="16" y="20" width="20" height="6" rx="1" opacity="0.5"/>`}],es=e=>`<svg viewBox="0 0 38 28" width="26" height="19" fill="currentColor" aria-hidden="true">${$o.find(t=>t.type===e)?.glyph??``}</svg>`,ts={memory:`In-memory`,pglite:`Local database`,sql:`SQL`,supabase:`Supabase`,rest:`REST`},ns={memory:`Fake sample data, zero setup. Best for designing and demos - no database needed.`,pglite:`A real database that runs inside your browser (saved on this computer). No server, no sign-up - great for learning and prototypes.`,supabase:`A free hosted Postgres database with a friendly web dashboard. The easiest real database, and it works right here in the browser (paste the project URL + anon key).`,sql:`Your own SQL database (Postgres, MySQL, SQL Server, SQLite). To connect and see rows live you need the local designer; online you set it up here and the generated app connects for real.`,rest:`An existing web API - a URL that returns JSON. Use this when your data already lives behind an API.`},rs={memory:`#94a3b8`,pglite:`#14b8a6`,sql:`#3b82f6`,supabase:`#10b981`,rest:`#a855f7`};function is(e){let t=dn(p(W),e).kind;return{kind:t,label:ts[t],color:rs[t],explicit:!!p(W).dataSources?.[e]}}let as=j(me({}));function os(e,t){let n=t.fields.filter(e=>e.type===`relation`&&e.relation);if(!n.length)return e;let r=n.map(e=>{let t=$n(p(W),e.relation.entity),n=dn(p(W),e.relation.entity),r=n.kind===`memory`&&n.seed?.length?n.seed:t?DM(t,6):[],i=t?.idField??t?.fields.find(e=>e.primaryKey)?.field??`id`;return{field:e.field,map:new Map(r.map(t=>[String(t[i]),t[e.relation.labelField]]))}});return e.map(e=>{let t={...e};for(let{field:n,map:i}of r){let r=i.get(String(e[n]));r!=null&&(t[n]=r)}return t})}function ss(e){return os(cs(e),e)}function cs(e){let t=dn(p(W),e.name);return p(as)[e.name]??(t.kind===`memory`&&t.seed?.length?t.seed:DM(e,6))}let ls=j(!1),us=j(me([])),ds=M(()=>{if(!p(No))return null;let e=dn(p(W),p(No).name).kind;return e===`memory`||e===`pglite`?e:null}),fs=M(()=>p(No)?p(No).fields.filter(e=>!e.formula&&!e.computed):[]);function ps(){p(No)&&(V(us,cs(p(No)).map(e=>({...e})),!0),V(ls,!0))}function ms(){if(!p(No))return;let e=p(No).idField??p(No).fields.find(e=>e.primaryKey)?.field??`id`,t={};for(let e of p(fs))t[e.field]=e.type===`boolean`?!1:e.type===`number`?0:``;t[e]=`${p(No).name.charAt(0).toLowerCase()||`r`}${p(us).length+1}`,V(us,[...p(us),t],!0)}function hs(e,t,n){V(us,p(us).map((r,i)=>i===e?{...r,[t]:n}:r),!0)}function gs(e){let t=e.relation&&p(W).entities.find(t=>t.name===e.relation.entity);if(!t||!e.relation)return[];let n=t.idField??t.fields.find(e=>e.primaryKey)?.field??`id`;return cs(t).map(t=>({value:String(t[n]??``),label:String(t[e.relation.labelField??n]??t[n]??``)}))}function _s(){if(!p(No))return;let e=dn(p(W),p(No).name),t=p(us).map(e=>({...e}));br(ht(p(W),p(No).name,e.kind===`pglite`?{kind:`pglite`,table:e.table,seed:t}:{kind:`memory`,seed:t}));let{[p(No).name]:n,...r}=p(as);V(as,r,!0),V(ls,!1)}function vs(e){return(e.related??[]).map(e=>{let t=$n(p(W),e.entity);return t?{label:e.label??t.label??t.name,schema:t,rows:ss(t),foreignKey:e.foreignKey,parentField:e.parentField,titleField:e.titleField??t.fields.find(e=>e.type===`text`&&!e.primaryKey)?.field??t.fields[0]?.field??`id`,subtitleField:e.subtitleField,dateField:e.dateField,statusField:e.statusField}:null}).filter(e=>e!=null)}let ys=M(()=>p(W).screens.filter(e=>e.blocks.some(e=>e.config.kind===`detail`)));function bs(e){let t=[];for(let n of p(W).entities){if(n.name===e.name)continue;let r=n.fields.find(t=>t.type===`relation`&&t.relation?.entity===e.name)?.field;r&&t.push({child:n,fk:r})}return t}function xs(e,t){let n=e.fields.filter(e=>!e.primaryKey&&e.field!==t);return{entity:e.name,foreignKey:t,label:e.label??e.name,titleField:n.find(e=>e.type===`text`)?.field??n[0]?.field??e.fields[0]?.field??`id`,dateField:n.find(e=>e.type===`date`||e.type===`datetime`||e.type===`dateString`)?.field,statusField:n.find(e=>e.type===`enum`)?.field}}function Cs(e,t,n){let r=e.idField??e.fields.find(e=>e.primaryKey)?.field??`id`,i=String(t??Ec[e.name]?.[r]??``),a=(p(as)[e.name]??ss(e)).map(e=>String(e[r])===i?{...e,...n}:{...e});V(as,{...p(as),[e.name]:a},!0),Ec[e.name]=void 0}let ws=j(null);function Ts(e){return e.idField??e.fields.find(e=>e.primaryKey)?.field??`id`}function Es(e,t){let n=Ts(e),r=p(as)[e.name]??ss(e);V(as,{...p(as),[e.name]:r.filter(e=>String(e[n])!==t)},!0)}function Ds(e,t,n){let r=Ts(e),i=p(as)[e.name]??ss(e);if(t==null){let t=i.reduce((e,t)=>Math.max(e,Number(t[r])||0),0)+1;V(as,{...p(as),[e.name]:[{[r]:t,...n},...i]},!0)}else V(as,{...p(as),[e.name]:i.map(e=>String(e[r])===t?{...e,...n}:e)},!0);V(ws,null)}function Os(e){let t=e.idField??e.fields.find(e=>e.primaryKey)?.field;return Yt(e).filter(e=>e.field!==t)}function ks(e,t){let n=new Map(e.columns.filter(e=>e.aggregate||e.format||e.cellType).map(e=>[e.field,e])),r=Os(t).map(e=>{let t=e.field?n.get(e.field):void 0;return t?{...e,aggregate:t.aggregate,format:t.format,...t.cellType?{cell:e=>Wn(l,{value:e.getValue(),type:t.cellType})}:{}}:e});return e.rowActions?.length&&r.push({id:`__actions`,header:`Actions`,sortable:!1,cell:n=>Wn(u,{row:n.row.original,ent:t,actions:e.rowActions})}),r}let As=M(()=>p(No)?ss(p(No)):[]);M(()=>p(No)?Os(p(No)):[]);let js=j(me({}));function Ms(e,t,n){V(js,{...p(js),[e]:{...p(js)[e]??{},[t]:n}},!0)}function Ns(e){let t=e.relation;if(!t)return[];let n=p(W).entities.find(e=>e.name===t.entity);if(!n)return[];let r=n.idField??n.fields.find(e=>e.primaryKey)?.field??`id`;return ss(n).map(e=>({value:String(e[r]??``),label:String(e[t.labelField]??e[r]??``)}))}function Ps(e,t){let n=Object.entries(p(js)[e.name]??{}).filter(([,e])=>e!==``&&e!=null);return n.length?t.filter(t=>n.every(([n,r])=>{let i=e.fields.find(e=>e.field===n),a=t[n];return i&&i.type===`text`&&!i.options?.length?String(a??``).toLowerCase().includes(String(r).toLowerCase()):String(a??``)===String(r)})):t}let Fs=M(()=>n.appearance??(p(W).theme?.mode===`dark`?`dark`:`light`)),Is=M(()=>n.appearance?{...p(W).theme,mode:n.appearance}:p(W).theme),Ls=M(()=>rr(p(Is))),Rs=M(()=>hn(p(W).theme?.preset)??vn),zs=M(()=>p(Rs)[p(Fs)].accent),Bs=M(()=>p(W).theme?.shell?.style??`sidebar`),Vs=M(()=>p(W).theme?.shell?.brand||p(W).title),Hs=M(()=>p(W).theme?.shell?.navPosition??`left`),Us=M(()=>p(W).theme?.shell?.footer),Ws=M(()=>p(W).theme?.shell?.logo),Gs=j(!1),qs=M(()=>p(Bs)===`sidebar`&&p(Gs));function Js(e){let t=e.currentTarget.files?.[0];if(!t)return;let n=new FileReader;n.onload=()=>br(Fe(p(W),{logo:String(n.result)})),n.readAsDataURL(t)}let Xs=M(()=>p(W).screens.filter(e=>e.nav?.show!==!1).map((e,t)=>({s:e,order:e.nav?.order??t})).sort((e,t)=>e.order-t.order).map(e=>e.s)),Zs=j(null),$s=j(`crud`),ec=j(`none`),tc=j(``),nc=j(``),rc=j(null),ic=M(()=>Re(p(W)));function oc(e){try{br(on(e)),V(tc,``),V(rc,null),V(ec,`none`)}catch(e){V(rc,e instanceof Error?e.message:String(e),!0)}}let sc=()=>oc(p(tc)),cc=j(!1);async function lc(e){if(e)try{oc(await e.text())}catch(e){V(rc,e instanceof Error?e.message:String(e),!0)}}function uc(e){e.preventDefault(),V(cc,!1),lc(e.dataTransfer?.files?.[0])}let dc=j(null);function pc(){try{V(dc,null);let e=p(nc).trim();if(e.startsWith(`{`)&&/"(openapi|swagger|paths)"\s*:/.test(e)){let{entities:t,sources:n,warnings:r}=yN(e),i=p(W);for(let e of t){i=Cn(i,e);let t=n[e.name];t&&(i=ht(i,e.name,t))}br(i),V(nc,``),V(rc,null),V(dc,`Imported ${t.length} REST resource${t.length===1?``:`s`}.${r.length?` `+r.join(` `):``}`),V(ec,`none`);return}let t=/\bmodel\s+\w+\s*\{/.test(p(nc))?aN(p(nc)):zM(p(nc)),n=p(W);for(let e of t)n=Cn(n,e);br(n),V(nc,``),V(rc,null),V(ec,`none`)}catch(e){V(rc,e instanceof Error?e.message:String(e),!0)}}let mc=j(!1),hc=j(`desktop`),gc={desktop:`100%`,tablet:`834px`,mobile:`390px`},_c=j(``),yc=j(!1);T(()=>{V(yc,p(hc)!==`desktop`)});let bc=M(()=>p(Bs)===`sidebar`&&p(yc)),xc=j(!1),Cc=j(!1),wc=me({}),Tc=me({}),Ec=me({}),Dc=me({}),kc=M(()=>p(W).screens.find(e=>e.id===p(_c))??p(W).screens[0]),Ac=M(()=>p(kc)?$n(p(W),p(kc).entity):void 0),jc=M(()=>!!p(kc)&&kt(p(kc))===`dock`),Mc=M(()=>!!p(kc)&&kt(p(kc))===`stack`),Nc=M(()=>!!p(kc)&&kt(p(kc))===`split`),Pc=M(()=>!!p(kc)&&kt(p(kc))===`canvas`),Ic=M(()=>p(jc)||p(Nc)),Lc=M(()=>({minSize:p(Nc)&&p(kc)?Vt(p(kc)).minPaneSize:80,allowPopout:p(jc)&&p(kc)?Wt(p(kc)).allowPopout:!1,hideSingleTab:p(jc)&&p(kc)?Wt(p(kc)).hideSingleTab:!1,headerPosition:p(jc)&&p(kc)?Wt(p(kc)).headerPosition:`top`})),Rc=M(()=>{if(!p(kc))return``;if(p(Mc)){let e=st(p(kc));return`gap: ${e.gap}px; --stack-minh: ${e.minHeight}px;`+(e.maxWidth?` max-width: ${e.maxWidth}px;${e.align===`center`?` margin-inline: auto;`:``}`:``)}if(!p(Ic)&&!p(Pc)){let e=Sn(p(kc));return`gap: ${e.rowGap}px ${e.colGap}px; align-items: ${e.align};`+(e.maxWidth?` max-width: ${e.maxWidth}px; margin-inline: auto;`:``)}return``}),zc=M(()=>p(kc)&&p(Ic)?p(kc).id+`|`+p(kc).blocks.map(e=>e.id).join(`,`):``),Bc=j(void 0),Vc=j(``);T(()=>{p(zc)&&p(zc)!==p(Vc)&&(V(Vc,p(zc),!0),V(Bc,p(kc)?Gn(p(kc)).dock??void 0:void 0,!0))});function Uc(){V(_c,p(Zr)?.id??p(W).screens[0]?.id??``,!0),V(mc,!0)}let Wc=j(me({})),Gc=j(null),Kc=j(null),qc=M(()=>p(mc));function Yc(){try{V(Wc,{},!0),V(Gc,null),V(Kc,null);let e=p(W).screens.find(e=>e.id===p(_c))??p(W).screens[0];if(!p(mc)||!e)return;let t=$n(p(W),e.entity),n=t?Ps(t,ss(t)):[],r={},i=[],a=null,o=null,s=[];for(let t of Bn(e))if(t.tier===`component`){let n=Jn(e.blocks).find(e=>e.id===t.blockId);n&&n.config.kind===`component`&&(r[n.id]={props:qr(n.config),text:Yr(n.config)},i.push({name:t.name,id:n.id}))}else t.tier===`grid`?(a=t.name,o=t.blockId):t.tier===`data`&&s.push(t.name);V(Wc,r,!0);let c=()=>p(Gc)??n,l=e=>{V(Gc,Array.isArray(e)?e:[],!0)},u={};for(let e of i)u[e.name]=tM(()=>p(Wc)[e.id],t=>{V(Wc,{...p(Wc),[e.id]:t},!0)});let d=()=>o?Dc[o]:void 0;a&&(u[a]=new Proxy(()=>void 0,{get:(e,t)=>{if(typeof t!=`string`)return;let n=d();return n&&typeof n[t]==`function`?n[t].bind(n):t===`getData`||t===`getDisplayedRows`?()=>c():n&&typeof n.getOption==`function`?n.getOption(t):()=>void 0},set:(e,t,n)=>{if(typeof t!=`string`||/^on[A-Z]/.test(t))return!0;let r=d();return r&&typeof r.setOption==`function`&&r.setOption(t,n),!0},apply:()=>void 0}));for(let e of s)u[e]={setData:e=>l(e),get rows(){return c()},clear:()=>{V(Gc,null)}};u.data={get rows(){return c()},setRows:l,reload:async()=>{}},u.goto=()=>{},u.params={};let m=e.handlerBodies?.onLoad??``,h=()=>{f(()=>nM(m,u)).then(e=>{V(Kc,e,!0)})};if(o){let e=0,t=()=>{d()||e++>30?h():requestAnimationFrame(t)};queueMicrotask(t)}else queueMicrotask(h)}catch(e){V(Kc,e instanceof Error?e.message:String(e),!0)}}function Xc(e,t){return p(qc)&&p(Gc)&&e===p(Ac)?p(Gc):t}T(()=>{if(!p(mc)){V(Wc,{},!0),V(Gc,null),V(Kc,null);return}p(_c),p(W).screens.find(e=>e.id===p(_c))?.handlerBodies?.onLoad,Yc()}),T(()=>{let e=p(mc)?p(W).theme?.customCss??``:``;if(typeof document>`u`||!e.trim())return;let t=document.createElement(`style`);return t.setAttribute(`data-studio-preview-css`,``),t.textContent=e,document.head.appendChild(t),()=>t.remove()});let Zc=j(!1),Qc=j(``),$c=j(!1),el=j(null),tl=[`Add a "status" enum field (new / active / churned) to customers`,`Add a dashboard screen with revenue by tier`,`Make the customers grid drill into orders on row click`,`Add a validation rule: mrr must be >= 0`];function rl(){V(Zc,!0),V(el,null)}async function il(){let e=p(Qc).trim();if(!(!n.onCopilot||!e||p($c))){V($c,!0),V(el,null);try{let t=await n.onCopilot({prompt:e,project:p(W)}),r=on(Re(t));br(r),!r.screens.some(e=>e.id===p(Xr))&&r.screens[0]&&V(Xr,r.screens[0].id,!0),V(Qc,``),V(Zc,!1)}catch(e){V(el,e instanceof Error?e.message:String(e),!0)}finally{V($c,!1)}}}let al=j(!1);function sl(e){let t=e.build();br(t),t.screens[0]&&(V(Xr,t.screens[0].id,!0),V(Fa,null)),V(al,!1)}function cl(){let e=IN({project:p(W),action:p(Zr)?`editing screen "${p(Zr).title}"`:`in the designer`,env:{studioVersion:`web designer`,node:`-`,os:typeof navigator<`u`?navigator.userAgent:`-`}});try{navigator.clipboard?.writeText(e.markdown)}catch{}window.open(e.issueUrl,`_blank`,`noopener,noreferrer`)}let ll=j(!1),ul=j(``);function fl(e){return e.trim().toLowerCase().replace(/[^a-z0-9]+/g,`_`).replace(/^_+|_+$/g,``)}let pl=M(()=>!!fl(p(ul))&&!$n(p(W),fl(p(ul))));function ml(){let e=fl(p(ul));if(!e||$n(p(W),e))return;let t={name:e,idField:`id`,fields:[{field:`id`,type:`number`,primaryKey:!0,readonly:!0},{field:`name`,type:`text`,required:!0}]};br(Cn(p(W),t)),V(Xr,e,!0),V(Fa,null),V(ul,``),V(ll,!1)}let hl=j(null);async function gl(e){if(e){V(hl,null),V(rc,null);try{let t=await e.text(),n=fl(e.name.replace(/\.[^.]+$/,``))||`imported`,r=n,i=2;for(;$n(p(W),r);)r=`${n}_${i++}`;let{schema:a,rows:o,renamed:s}=XM(r,t);if(a.fields.length===0||o.length===0){V(rc,`That file had no rows to import.`);return}let c=Cn(p(W),a);c=ht(c,r,{kind:`memory`,seed:o}),br(c),V(Xr,r,!0),V(Fa,null);let l=s.length?` Renamed ${s.length} column${s.length>1?`s`:``} to safe keys.`:``;V(hl,`Imported ${o.length} row${o.length>1?`s`:``} into "${r}" (${a.fields.length} fields).${l}`)}catch(e){V(rc,e instanceof Error?e.message:String(e),!0)}}}let _l=j(!1),yl=j(!1),bl=M(()=>jn(p(W))),xl=[{value:`auto`,label:`Auto-detect (Vercel / Netlify / Cloudflare)`},{value:`vercel`,label:`Vercel`},{value:`netlify`,label:`Netlify`},{value:`cloudflare`,label:`Cloudflare Pages`},{value:`node`,label:`Node server`}];function Sl(e){br(Tn(p(W),e))}let Cl=j(!1),wl=[{id:`neon`,label:`Neon`,blurb:`Serverless Postgres with a generous free tier - a database in seconds, no card.`,url:`https://neon.tech`,dialect:`postgres`,kind:`sql`,env:[`DATABASE_URL`]},{id:`supabase`,label:`Supabase`,blurb:`Postgres plus auth, storage, and realtime. Use the connection string (server) here.`,url:`https://database.new`,dialect:`supabase`,kind:`sql`,env:[`DATABASE_URL`]},{id:`turso`,label:`Turso`,blurb:`Hosted SQLite (libSQL) that runs at the edge - fast, cheap, great for reads.`,url:`https://turso.tech`,dialect:`turso`,kind:`sql`,env:[`DATABASE_URL`,`DATABASE_AUTH_TOKEN`]}],Tl=j(null);function Dl(e){let t=Me(p(W),`sql`);for(let n of p(W).entities)t=ht(t,n.name,{kind:`sql`,table:n.name,dialect:e.dialect});br(t),V(Tl,e,!0);try{window.open(e.url,`_blank`,`noopener,noreferrer`)}catch{}}async function Ol(){try{await navigator.clipboard.writeText(p(bl).cli),V(yl,!0),setTimeout(()=>V(yl,!1),1600)}catch{}}let kl=j(!1),Al=new RN({introspect:e=>n.onIntrospectDatabase(e),installDriver:e=>n.onInstallDriver(e),canInstall:()=>!!n.onInstallDriver});function jl(){V(kl,!0),Al.reset()}function Ml(e){let t=p(W);for(let n of e.schemas)t=Cn(t,n),t=ht(t,n.name,e.sources[n.name]??{kind:`sql`,table:n.name,dialect:e.dialect});br(t),e.schemas[0]&&(V(Xr,e.schemas[0].name,!0),V(Fa,null))}let Nl=j(!1),Fl=j(`connect`),Il=j(`postgres`),Ll=j(``),Rl=j(!1),zl=j(null),Bl=j(me([])),Vl=j(me({})),Hl=j(0),Ul=j(me([])),Wl=M(()=>LN.find(e=>e.value===p(Il))?.placeholder??``),Gl=M(()=>Object.values(p(Vl)).filter(Boolean).length),Kl=j(`form`),ql=j(me({})),Yl=j(null),Xl=j(null),Zl=j(!1),$l=M(()=>p(Il)!==`turso`),eu=M(()=>p(Kl)===`form`&&p($l));function tu(){try{return wN(p(Il),p(ql))}catch{return``}}let ru=M(()=>p(eu)?tu():p(Ll).trim()),iu=M(()=>xN(p(Il))?``:String(bN[p(Il)]??``));function au(e,t){V(ql,{...p(ql),[e]:t},!0),V(Yl,null)}function ou(e){V(zl,e instanceof Error?e.message:String(e),!0);let t=e;V(Xl,t?.missingDriver?t.driver??null:null,!0)}async function su(){if(!(!n.onIntrospectDatabase||!p(ru))){V(Rl,!0),V(zl,null),V(Yl,null),V(Xl,null);try{let e=await n.onIntrospectDatabase({dialect:p(Il),url:p(ru),action:`test`});V(Yl,e.tables??[],!0),p(Yl).length===0&&V(zl,`Connected, but no tables were found.`)}catch(e){ou(e)}finally{V(Rl,!1)}}}async function cu(){if(n.onInstallDriver){V(Zl,!0),V(zl,null);try{let e=await n.onInstallDriver(p(Il));e.ok?V(Xl,null):V(zl,`Install failed: ${(e.output||e.package||``).slice(-300)}`)}catch(e){V(zl,e instanceof Error?e.message:String(e),!0)}finally{V(Zl,!1)}}}function lu(){V(Nl,!0),V(Fl,`connect`),V(zl,null),V(Bl,[],!0),V(Vl,{},!0),V(Hl,0),V(Ul,[],!0),V(Yl,null),V(Xl,null),V(ql,{},!0)}function uu(e,t){let n=e=>e.toLowerCase().replace(/[^a-z]/g,``).replace(/s$/,``),r=n(e);return t.find(e=>n(e)===r)??t.find(e=>n(e).includes(r)||r.includes(n(e)))??``}async function du(){if(!(!n.onIntrospectDatabase||!p(ru))){V(Rl,!0),V(zl,null),V(Xl,null);try{let e=await n.onIntrospectDatabase({dialect:p(Il),url:p(ru),action:`tables`});V(Bl,e.tables??[],!0);let t={};for(let e of p(W).entities)t[e.name]=uu(e.name,p(Bl));V(Vl,t,!0),V(Fl,`map`),p(Bl).length===0&&V(zl,`No tables found in this database.`)}catch(e){ou(e)}finally{V(Rl,!1)}}}function fu(e){let t=[],n=t=>new Set(($n(e,t)?.fields??[]).map(e=>e.field));for(let r of e.screens){let e=n(r.entity),i=(e,n,i)=>{e&&!n.has(e)&&t.push(`${r.title}: ${i} "${e}"`)};for(let t of r.blocks){let r=t.config;if(r.kind===`chart`)i(r.dimension,e,`chart dimension`),i(r.measure,e,`chart measure`);else if(r.kind===`kpi`)i(r.measure,e,`KPI measure`);else if(r.kind===`master-detail`)i(r.foreignKey,n(r.childEntity),`detail key`);else if(r.kind===`pivot`){for(let t of[...r.rows,...r.cols])i(t,e,`pivot field`);i(r.measure,e,`pivot measure`)}else if(r.kind===`filter`)for(let t of r.fields)i(t,e,`filter facet`);else if(r.kind===`record`&&r.fields)for(let t of r.fields)i(t,e,`record field`)}}return t}let pu=[[`value`,`amount`,`total`,`price`,`cost`,`revenue`,`mrr`,`arr`,`subtotal`,`fee`,`balance`],[`name`,`title`,`subject`,`label`,`fullname`],[`status`,`state`,`stage`,`phase`],[`created`,`createdat`,`placedat`,`opened`,`signed`,`date`,`timestamp`],[`due`,`duedate`,`deadline`,`closedate`,`expires`],[`owner`,`assignee`,`rep`,`manager`,`agent`,`handler`],[`qty`,`quantity`,`count`,`units`,`stock`,`inventory`],[`email`,`mail`],[`phone`,`mobile`,`tel`],[`description`,`notes`,`summary`,`comment`,`detail`],[`company`,`organization`,`account`,`client`,`vendor`,`supplier`]],mu=e=>e.toLowerCase().replace(/[^a-z0-9]/g,``);function hu(e,t,n){let r=t.filter(e=>!n.has(mu(e))),i=mu(e),a=r.find(e=>mu(e)===i);if(a)return a;let o=pu.find(e=>e.includes(i));return o&&(a=r.find(e=>o.includes(mu(e))),a)?a:(a=r.find(e=>mu(e).includes(i)||i.includes(mu(e))),a??``)}function gu(e,t,n){let r=t.fields.map(e=>e.field),i=new Set,a=[],o=[];for(let t of e.fields){let e=hu(t.field,r,i);if(!e){o.push(t.field);continue}i.add(mu(e)),a.push(e===t.field?{...t}:{...t,dbColumn:e})}for(let e of t.fields)i.has(mu(e.field))||a.push({field:e.field,type:e.type,...e.primaryKey?{primaryKey:!0,readonly:!0}:{}});let s=t.idField??t.fields.find(e=>e.primaryKey)?.field;if(!a.some(e=>e.primaryKey)&&s){let e=a.find(e=>(e.dbColumn??e.field)===s);e&&(e.primaryKey=!0,e.readonly=!0)}let c=a.find(e=>e.primaryKey)?.field??a[0]?.field;return{schema:{name:n,...e.label?{label:e.label}:{},idField:c,fields:a},dropped:o}}async function _u(){if(!n.onIntrospectDatabase)return;let e=Object.entries(p(Vl)).filter(([,e])=>e);if(e.length!==0){V(Rl,!0),V(zl,null);try{let t=await n.onIntrospectDatabase({dialect:p(Il),url:p(ru),action:`introspect`,tables:e.map(([,e])=>e)}),r=new Map((t.schemas??[]).map(e=>[e.name,e])),i=p(W),a=0;for(let[t,n]of e){let e=r.get(n),o=$n(i,t);if(!e||!o)continue;let{schema:s}=gu(o,e,t);i=Ut(i,t,s),i=ht(i,t,{kind:`sql`,table:n,dialect:p(Il)}),a++}br(i),V(Hl,a,!0),V(Ul,fu(i),!0),V(Fl,`done`)}catch(e){V(zl,e instanceof Error?e.message:String(e),!0)}finally{V(Rl,!1)}}}let vu=e=>It.find(t=>t.kind===e)?.label??e;function yu(e){return e.config.kind===`component`?qn(e.config.component)?.label??e.config.component:vu(e.config.kind)}function bu(e){return e.config.kind===`tabs`?e.config.tabs.flatMap(e=>e.blocks.map(t=>({block:t,group:e.label}))):e.config.kind===`accordion`?e.config.sections.flatMap(e=>e.blocks.map(t=>({block:t,group:e.label}))):[]}let xu=(e,t)=>!!t&&/\$/.test(e?.fields.find(e=>e.field===t)?.label??``),Su=(e,t,n)=>{let r=pn(n,{measure:e.measure,reduce:e.reduce});if(typeof r!=`number`)return String(r??``);let i=e.format??`auto`;if(i!==`auto`)return tr(r,i);let a=r.toLocaleString(void 0,{maximumFractionDigits:1});return xu(t,e.measure)?`$${a}`:a},Cu=(e,t)=>e.trendField?cn(t,{trendField:e.trendField,measure:e.measure,reduce:e.trendReduce??e.reduce}):[],wu=(e,t)=>{if(e.target!=null&&e.target!==0){let n=pn(t,{measure:e.measure,reduce:e.reduce});return{text:`${Math.round(n/e.target*100)}% of target`,up:n>=e.target}}let n=Vn(Cu(e,t));return n==null?null:{text:`${n>=0?`▲`:`▼`} ${Math.abs(n).toFixed(0)}%`,up:n>=0}};function Tu(e,t,n){let r=t.idField??t.fields.find(e=>e.primaryKey)?.field??`id`,i=new Map(e.map(e=>[String(e[r]),{id:String(e[r]),label:String(e[n.labelField]??e[r]),children:[]}])),a=[];for(let t of e){let e=i.get(String(t[r])),o=t[n.parentField]!=null&&t[n.parentField]!==``?String(t[n.parentField]):null;o&&o!==e.id&&i.has(o)?i.get(o).children.push(e):a.push(e)}return a}let Eu=[`sum`,`avg`,`count`,`min`,`max`],Du=e=>{let t=e.idField??e.fields.find(e=>e.primaryKey)?.field;return e.fields.filter(e=>e.field!==t)},Ou=e=>Du(e).filter(e=>e.type!==`number`&&e.type!==`json`&&e.type!==`relation`),ku=e=>e.fields.filter(e=>e.type===`number`&&!e.primaryKey),Au=e=>Du(e).filter(e=>e.type===`enum`||e.type===`boolean`||e.type===`text`),ju=e=>Du(e).filter(e=>e.type!==`json`&&e.type!==`relation`).map(e=>({field:e.field,label:e.label??e.field,kind:e.type===`number`?`measure`:`dimension`,...e.type===`number`?{defaultAgg:`sum`}:{}})),Mu=e=>({rows:[...e.rows],cols:[...e.cols],values:e.measure?[{field:e.measure,agg:e.aggregate}]:[],filters:[]}),Nu=(e,t)=>t.fields.map(t=>e.fields.find(e=>e.field===t)).filter(e=>!!e),Pu=(e,t)=>t.fields&&t.fields.length?e.fields.filter(e=>t.fields.includes(e.field)):Du(e);function Fu(e,t){return e.includes(t)?e.filter(e=>e!==t):[...e,t]}let Iu=M(()=>p(W).access??{enabled:!1,roles:[]}),Lu=e=>br({...p(W),access:e});function Ru(e){e&&(!p(W).access||p(W).access.roles.length===0)?Lu({enabled:!0,defaultRole:`viewer`,roles:[{role:`admin`,screens:`*`,actions:`*`},{role:`editor`,screens:`*`,actions:[`create`,`update`,`delete`]},{role:`viewer`,screens:`*`,actions:[]}]}):Lu({...p(Iu),enabled:e})}let zu=e=>Lu({...p(Iu),roles:p(Iu).roles.map(e)});function Bu(){let e=new Set(p(Iu).roles.map(e=>e.role)),t=`role`,n=1;for(;e.has(t);)t=`role${++n}`;Lu({...p(Iu),roles:[...p(Iu).roles,{role:t,screens:`*`,actions:[]}]})}function Vu(e){let t=p(Iu).roles.filter(t=>t.role!==e);Lu({...p(Iu),roles:t,defaultRole:p(Iu).defaultRole===e?t[0]?.role:p(Iu).defaultRole})}function Hu(e,t){let n=t.trim();!n||n!==e&&p(Iu).roles.some(e=>e.role===n)||Lu({...p(Iu),roles:p(Iu).roles.map(t=>t.role===e?{...t,role:n}:t),defaultRole:p(Iu).defaultRole===e?n:p(Iu).defaultRole})}let Uu=(e,t)=>e.actions===`*`||e.actions.includes(t);function Wu(e,t){zu(n=>{if(n.role!==e)return n;let r=n.actions===`*`?[...en]:n.actions,i=r.includes(t)?r.filter(e=>e!==t):[...r,t];return{...n,actions:i.length===en.length?`*`:i}})}let Gu=(e,t)=>e.screens===`*`||e.screens.includes(t);function Ku(e,t){zu(n=>{if(n.role!==e)return n;let r=n.screens===`*`?p(W).screens.map(e=>e.id):n.screens,i=r.includes(t)?r.filter(e=>e!==t):[...r,t];return{...n,screens:i.length===p(W).screens.length?`*`:i}})}let qu=(e,t)=>zu(n=>n.role===e?{...n,screens:t?`*`:[]}:n),Ju=[`edit`,`delete`,`navigate`];function Yu(e){let t=p(W).screens.find(t=>t.id===e),n=t?$n(p(W),t.entity):void 0;return n?[...n.fields]:[]}function Xu(e){p(Zr)&&p(Po)&&br(Gt(p(W),p(Zr).id,p(Po).id,{config:e}))}function Zu(e){let t=p(Po).config;Xu({rowActions:[...t.rowActions??[],{kind:e}]})}function Qu(e,t){let n=p(Po).config;Xu({rowActions:(n.rowActions??[]).map((n,r)=>r===e?{...n,...t}:n)})}function $u(e){let t=p(Po).config;Xu({rowActions:(t.rowActions??[]).filter((t,n)=>n!==e)})}let ed=[{value:`eq`,label:`=`},{value:`ne`,label:`≠`},{value:`lt`,label:`<`},{value:`lte`,label:`≤`},{value:`gt`,label:`>`},{value:`gte`,label:`≥`},{value:`contains`,label:`contains`},{value:`empty`,label:`is empty`},{value:`notEmpty`,label:`not empty`}],td=e=>e!==`empty`&&e!==`notEmpty`;function nd(){let e=p(Po).config,t=e.columns.find(e=>e.show)?.field??p(No)?.fields[0]?.field??``;Xu({formatRules:[...e.formatRules??[],{field:t,op:`gt`,value:0,color:`#dc2626`,bold:!0}]})}function rd(e,t){let n=p(Po).config;Xu({formatRules:(n.formatRules??[]).map((n,r)=>r===e?{...n,...t}:n)})}function id(e){let t=p(Po).config;Xu({formatRules:(t.formatRules??[]).filter((t,n)=>n!==e)})}function ad(e,t,n){Xu({formFields:t?n.includes(e)?n:[...n,e]:n.filter(t=>t!==e)})}function od(){let e=p(Po).config;Xu({formSections:[...e.formSections??[],{title:`Section`,fields:[]}]})}function sd(e,t){let n=p(Po).config;Xu({formSections:(n.formSections??[]).map((n,r)=>r===e?{...n,...t}:n)})}function cd(e){let t=p(Po).config;Xu({formSections:(t.formSections??[]).filter((t,n)=>n!==e)})}function ld(e,t){let n=Number(t),r=String(t??``);switch(e){case`eq`:return e=>String(e.value)===r;case`ne`:return e=>String(e.value)!==r;case`lt`:return e=>Number(e.value)<n;case`lte`:return e=>Number(e.value)<=n;case`gt`:return e=>Number(e.value)>n;case`gte`:return e=>Number(e.value)>=n;case`contains`:return e=>String(e.value).toLowerCase().includes(r.toLowerCase());case`empty`:return e=>e.value==null||e.value===``;case`notEmpty`:return e=>e.value!=null&&e.value!==``;default:return null}}function ud(e){let t=[];for(let n of e.formatRules??[]){if((n.op===`lt`||n.op===`lte`||n.op===`gt`||n.op===`gte`)&&!Number.isFinite(Number(n.value)))continue;let e=ld(n.op,n.value);!e||!n.color&&!n.background&&!n.bold||t.push({type:`rule`,columns:[n.field],when:e,...n.background?{background:n.background}:{},...n.color?{color:n.color}:{},...n.bold?{fontWeight:700}:{}})}return t}let dd=M(()=>p(W).i18n??{enabled:!1,locales:[`en`]});function fd(e){e&&(!p(W).i18n||p(W).i18n.locales.length===0)?br({...p(W),i18n:{enabled:!0,locales:[`en`],defaultLocale:`en`}}):br({...p(W),i18n:{...p(dd),enabled:e}})}function pd(e){let t=[...new Set(e.split(`,`).map(e=>e.trim().toLowerCase()).filter(Boolean))];if(!t.length)return;let n=t.includes(p(dd).defaultLocale??``)?p(dd).defaultLocale:t[0];br({...p(W),i18n:{...p(dd),locales:t,defaultLocale:n}})}let md={grid:`M3 3h18v18H3z M3 9h18 M3 15h18 M9 3v18 M15 3v18`,form:`M4 3h16v18H4z M8 8h8 M8 12h8 M8 16h5`,chart:`M4 4v16h16 M8 16v-5 M13 16V8 M18 16v-9`,dashboard:`M3 3h7v8H3z M14 3h7v5h-7z M14 12h7v9h-7z M3 15h7v6H3z`,kpi:`M3 17l5-5 4 3 6-7 M16 8h4v4`,gauge:`M4 20a8 8 0 1 1 16 0 M12 12l4-3`,tree:`M5 3h6v4H5z M13 10h6v4h-6z M13 17h6v4h-6z M8 7v10h5 M8 12h5`,tabs:`M3 7h5v13H3z M9 7h5v13H9z M3 4h18v3H3z`,accordion:`M4 4h16v4H4z M4 10h16v4H4z M4 16h16v4H4z M15 6l-2 0 M15 12l-2 0`,"master-detail":`M4 5h16 M4 10h8 M8 10v10 M8 15h6 M8 20h6`,pivot:`M3 3h18v18H3z M3 9h18 M9 3v18`,filter:`M3 5h18l-7 8v6l-4 2v-8z`,record:`M4 4h16v16H4z M8 9h8 M8 13h8 M8 17h5`,board:`M4 4h4v16H4z M10 4h4v10h-4z M16 4h4v13h-4z`,calendar:`M4 5h16v15H4z M4 9h16 M8 3v4 M16 3v4`,detail:`M4 3h16v18H4z M8 8h8 M8 12h8 M8 16h5`,lookup:`M10 4a6 6 0 1 0 0 12 6 6 0 0 0 0-12z M20 20l-5.5-5.5`,file:`M6 2h9l5 5v15H6z M15 2v5h5`,copy:`M9 9h11v11H9z M5 15H4V4h11v1`,generate:`M8 6l-5 6 5 6 M16 6l5 6-5 6`,import:`M12 15V3 M7 8l5-5 5 5 M4 17v3h16v-3`,save:`M12 3v12 M7 10l5 5 5-5 M4 19h16`,undo:`M9 14l-4-4 4-4 M5 10h11a4 4 0 0 1 0 8h-1`,redo:`M15 14l4-4-4-4 M19 10H8a4 4 0 0 0 0 8h1`,screen:`M3 4h18v13H3z M8 21h8 M12 17v4`,entity:`M4 6c0-1.7 3.6-3 8-3s8 1.3 8 3-3.6 3-8 3-8-1.3-8-3z M4 6v6c0 1.7 3.6 3 8 3s8-1.3 8-3V6 M4 12v6c0 1.7 3.6 3 8 3s8-1.3 8-3v-6`,database:`M4 5c0-1.7 3.6-3 8-3s8 1.3 8 3-3.6 3-8 3-8-1.3-8-3z M4 5v14c0 1.7 3.6 3 8 3s8-1.3 8-3V5 M4 12c0 1.7 3.6 3 8 3s8-1.3 8-3`,plus:`M12 5v14 M5 12h14`,deploy:`M22 2L11 13 M22 2l-7 20-4-9-9-4z`,desktop:`M3 4h18v12H3z M8 20h8 M12 16v4`,tablet:`M6 3h12a1 1 0 0 1 1 1v16a1 1 0 0 1-1 1H6a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1z M11 18h2`,mobile:`M8 2h8a1 1 0 0 1 1 1v18a1 1 0 0 1-1 1H8a1 1 0 0 1-1-1V3a1 1 0 0 1 1-1z M11 18h2`,chevron:`M9 6l6 6-6 6`,close:`M6 6l12 12 M18 6L6 18`},hd=e=>md[e]??md.file,gd=j(!1),_d=j(null),Y=j(!1),vd=M(()=>p(Zs)?.find(e=>e.path===p(_d))??p(Zs)?.[0]),yd=j(`app`);function bd(){V(Zs,p(yd)===`fragment`?sn(p(W)):er(p(W)),!0),p(Zs).some(e=>e.path===p(_d))||V(_d,(p(Zs).find(e=>e.path.endsWith(`+page.svelte`))??p(Zs)[0])?.path??null,!0)}function xd(){bd();let e=p(Zs)??[];V(_d,(e.find(e=>e.path.endsWith(`+page.svelte`))??e[0])?.path??null,!0),V(gd,!0)}let Sd=e=>e.replace(/^src\//,``);async function Cd(){if(p(vd))try{await navigator.clipboard.writeText(p(vd).contents),V(Y,!0),setTimeout(()=>V(Y,!1),1200)}catch{}}let wd=j(!1);async function Td(){if(p(Zs)){V(wd,!0);try{let t=(await Ye(async()=>{let{default:t}=await import(`./jszip.min-CX2fPs3O.js`).then(t=>e(t.default));return{default:t}},__vite__mapDeps([0,1]),import.meta.url)).default,n=new t;for(let e of p(Zs))n.file(e.path,e.contents);let r=await n.generateAsync({type:`blob`}),i=URL.createObjectURL(r),a=document.createElement(`a`);a.href=i,a.download=`${(p(W).title||`studio-app`).toLowerCase().replace(/[^a-z0-9]+/g,`-`).replace(/^-+|-+$/g,``)||`studio-app`}.zip`,document.body.appendChild(a),a.click(),a.remove(),URL.revokeObjectURL(i)}catch{alert(`Download needs the "jszip" package. Install it (npm i jszip) or copy the files individually.`)}finally{V(wd,!1)}}}function Ed(){if(!p(Zs))return;let e=document.createElement(`form`);e.method=`POST`,e.action=`https://stackblitz.com/run`,e.target=`_blank`;let t=(t,n)=>{let r=document.createElement(`input`);r.type=`hidden`,r.name=t,r.value=n,e.appendChild(r)};for(let e of p(Zs))t(`project[files][${e.path}]`,e.contents);t(`project[title]`,p(W).title||`SvGrid Studio app`),t(`project[description]`,`Generated with SvGrid Studio`),t(`project[template]`,`node`),document.body.appendChild(e),e.submit(),e.remove()}let Dd=j(`idle`);async function Od(){if(!(!p(Zs)||!n.onWriteToDisk)){V(Dd,`busy`);try{await n.onWriteToDisk(p(Zs)),V(Dd,`done`),setTimeout(()=>V(Dd,`idle`),1600)}catch{V(Dd,`idle`)}}}let kd=j(200),Ad=j(290),jd=j(null),Md=(e,t,n)=>Math.max(t,Math.min(e,n)),Nd=j(!1),Pd=j(`none`),Fd=j(!1);T(()=>{if(typeof window>`u`||!window.matchMedia)return;let e=window.matchMedia(`(max-width: 900px)`),t=()=>{V(Fd,e.matches,!0),e.matches||V(Pd,`none`)};return t(),e.addEventListener(`change`,t),()=>e.removeEventListener(`change`,t)});let Id=M(()=>p(Nd)?`0px 0px minmax(0, 1fr) 6px ${p(Ad)}px`:`${p(kd)}px 6px minmax(0, 1fr) 6px ${p(Ad)}px`);function Ld(){V(Pd,p(Pd)===`insp`?`none`:`insp`,!0)}T(()=>{p(Fd)&&p(Fa)&&V(Pd,`insp`)});let Rd=e=>e.config.kind===`grid`?e.config.scheduler?640:440:200,zd=new Set([`grid`,`chart`,`master-detail`,`pivot`]),Bd=e=>zd.has(e.config.kind),Vd=new Set([`grid`,`master-detail`]),Hd=e=>Vd.has(e.config.kind);function Ud(e){let t=e.style;if(!t)return``;let n=[];return t.border===!1?n.push(`border-color: transparent`):t.border===!0&&n.push(`border: 1px solid var(--sg-border)`),t.shadow===!1?n.push(`box-shadow: none`):t.shadow===!0&&n.push(`box-shadow: 0 1px 2px rgba(15, 23, 42, 0.06)`),t.background&&n.push(`background: ${t.background}`),typeof t.radius==`number`&&n.push(`border-radius: ${t.radius}px`),typeof t.margin==`number`&&n.push(`margin: ${t.margin}px`),n.length?`; `+n.join(`; `):``}let Wd=e=>typeof e.style?.padding==`number`?`padding:${e.style.padding}px;`:``,Gd=j(null),Kd=j(0),qd=0,Jd=0,Yd=e=>p(Gd)===e.id?p(Kd):e.height??Rd(e);function Xd(e,t){t.preventDefault(),t.stopPropagation(),V(Gd,e.id,!0),qd=t.clientY,Jd=e.height??Rd(e),V(Kd,Jd,!0),t.currentTarget.setPointerCapture(t.pointerId)}function Zd(e){p(Gd)&&V(Kd,Md(Jd+(e.clientY-qd),120,900),!0)}function Qd(){let e=p(Gd);if(V(Gd,null),!e||!p(Zr))return;let t=p(Zr).blocks.find(t=>t.id===e);t&&p(Kd)!==(t.height??Rd(t))&&br(Gt(p(W),p(Zr).id,e,{height:p(Kd)}))}let $d=j(null),ef=j(4),tf=0,nf=0,rf=60,af=e=>p($d)===e.id?p(ef):Ne(e);function of(e,t){t.preventDefault(),t.stopPropagation(),V($d,e.id,!0),tf=t.clientX,nf=Ne(e);let n=t.currentTarget.closest(`.sv-studio__block`)?.closest(`.sv-studio__canvas`);n&&(rf=(n.clientWidth-132)/12),V(ef,nf,!0),t.currentTarget.setPointerCapture(t.pointerId)}function sf(e){if(!p($d))return;let t=Math.round((e.clientX-tf)/Math.max(rf,1));V(ef,Md(nf+t,1,12),!0)}function cf(){let e=p($d);if(V($d,null),!e||!p(Zr))return;let t=p(Zr).blocks.find(t=>t.id===e);t&&p(ef)!==Ne(t)&&br(Gt(p(W),p(Zr).id,e,{colSpan:p(ef)}))}let lf=(e,t)=>br(Gt(p(W),p(Zr).id,e.id,{colSpan:t})),uf=e=>{p(Zr)&&p(Po)&&br(Gt(p(W),p(Zr).id,p(Po).id,{style:e}))},df=e=>e===!0?`on`:e===!1?`off`:``,ff=e=>e===`on`||e!==`off`&&void 0,pf=e=>e===``?void 0:Number(e);function mf(e){let t=e.target,n=!!t&&(/^(INPUT|TEXTAREA|SELECT)$/.test(t.tagName)||t.isContentEditable),r=e.ctrlKey||e.metaKey;if(r&&(e.key===`z`||e.key===`Z`)){e.preventDefault(),e.shiftKey?Sr():xr();return}if(r&&(e.key===`y`||e.key===`Y`)){e.preventDefault(),Sr();return}if(r&&(e.key===`d`||e.key===`D`)&&p(Fa)&&!n){e.preventDefault(),ma(p(Fa));return}if(r&&(e.key===`c`||e.key===`C`)&&p(Fa)&&!n&&!window.getSelection()?.toString()){e.preventDefault(),ka();return}if(r&&(e.key===`v`||e.key===`V`)&&p(xa)&&!n){e.preventDefault(),Aa();return}if(e.key===`?`&&!n){e.preventDefault(),V(Sa,!p(Sa));return}if(e.key===`Escape`){p(Sa)?V(Sa,!1):p(ws)?V(ws,null):p(Pr)?V(Pr,null):p(Ca)?V(Ca,!1):p(Cc)?V(Cc,!1):p(xc)?V(xc,!1):p(_l)?V(_l,!1):p(Cl)?V(Cl,!1):p(Zc)?V(Zc,!1):p(mc)?V(mc,!1):p(fp)?V(fp,!1):p(gd)?V(gd,!1):p(ec)===`none`?V(Fa,null):V(ec,`none`);return}!n&&!p(gd)&&!p(fp)&&(e.key===`Delete`||e.key===`Backspace`)&&p(Fa)&&(e.preventDefault(),Nr())}let hf=j(null),gf=j(null),_f=j(null),vf=j(null),yf=j(null);function bf(e,t){V(hf,t,!0),V(gf,null),V(_f,null),e.dataTransfer&&(e.dataTransfer.effectAllowed=`copy`,e.dataTransfer.setData(`text/plain`,t))}function xf(e,t){V(gf,t,!0),V(hf,null),V(_f,null),e.dataTransfer&&(e.dataTransfer.effectAllowed=`copy`,e.dataTransfer.setData(`text/plain`,`component:${t}`))}function Sf(e,t){if(p(Gd)||p($d)){e.preventDefault();return}V(_f,t,!0),V(hf,null),e.dataTransfer&&(e.dataTransfer.effectAllowed=`move`,e.dataTransfer.setData(`text/plain`,t))}function Cf(e,t){if(!p(hf)&&!p(gf)&&!p(_f))return;e.preventDefault();let n=e.currentTarget.getBoundingClientRect();V(yf,e.clientX>n.left+n.width/2?t+1:t,!0),e.dataTransfer&&(e.dataTransfer.dropEffect=p(_f)?`move`:`copy`)}function wf(e){(p(hf)||p(gf)||p(_f))&&e.preventDefault()}function Tf(e){if(!p(Zr))return;e.preventDefault();let t=p(yf)??p(Zr).blocks.length;if(p(gf))Ii(p(gf),t);else if(p(hf))Fr(p(hf),t);else if(p(_f)){let e=p(Zr).blocks.findIndex(e=>e.id===p(_f));br(ar(p(W),p(Zr).id,p(_f),e<t?t-1:t))}Ef()}function Ef(){V(hf,null),V(gf,null),V(_f,null),V(yf,null)}function Df(e){p(No)&&br(Ut(p(W),p(No).name,e))}let Of=[{value:`required`,label:`is required`},{value:`gt`,label:`>`},{value:`gte`,label:`≥`},{value:`lt`,label:`<`},{value:`lte`,label:`≤`},{value:`eq`,label:`=`},{value:`ne`,label:`≠`},{value:`minLen`,label:`min length`},{value:`maxLen`,label:`max length`}],kf=e=>e!==`required`;function Af(){if(!p(No))return;let e=p(No).fields.find(e=>!e.primaryKey)?.field??p(No).fields[0]?.field??``;Df({...p(No),validations:[...p(No).validations??[],{field:e,op:`required`,message:`This field is required`}]})}function jf(e,t){p(No)&&Df({...p(No),validations:(p(No).validations??[]).map((n,r)=>r===e?{...n,...t}:n)})}function Mf(e){p(No)&&Df({...p(No),validations:(p(No).validations??[]).filter((t,n)=>n!==e)})}let Nf=j(null),Pf=j(null);function Ff(e,t){if(!p(Nf))return;e.preventDefault();let n=e.currentTarget.getBoundingClientRect();V(Pf,e.clientY>n.top+n.height/2?t+1:t,!0)}function If(){if(!p(No)||!p(Nf)||p(Pf)==null){V(Nf,null),V(Pf,null);return}let e=p(No).fields.findIndex(e=>e.field===p(Nf)),t=[...p(No).fields],[n]=t.splice(e,1);t.splice(Math.max(0,Math.min(e<p(Pf)?p(Pf)-1:p(Pf),t.length)),0,n),Df({...p(No),fields:t}),V(Nf,null),V(Pf,null)}function Lf(e,t){p(Zr)&&p(Po)&&br(Gt(p(W),p(Zr).id,p(Po).id,{config:{columns:t}}))}function Rf(e,t,n){Lf(e,e.columns.map(e=>e.field===t?{...e,show:n}:e))}function zf(e,t,n){Lf(e,e.columns.map(e=>e.field===t?{...e,...n}:e))}function Bf(e,t,n){let r=t+n;if(r<0||r>=e.columns.length)return;let i=[...e.columns];[i[t],i[r]]=[i[r],i[t]],Lf(e,i)}function Vf(e){let t=String(e??``).toLowerCase().trim();return[`active`,`open`,`success`,`done`,`paid`,`approved`,`complete`,`completed`,`won`,`shipped`,`yes`,`true`].includes(t)?`success`:[`pending`,`warning`,`in progress`,`processing`,`trial`,`review`,`on hold`,`medium`].includes(t)?`warning`:[`closed`,`error`,`failed`,`cancelled`,`canceled`,`overdue`,`rejected`,`lost`,`blocked`,`inactive`,`no`,`false`,`high`,`urgent`].includes(t)?`danger`:[`new`,`info`,`draft`,`low`].includes(t)?`info`:`neutral`}function Hf(e){return e.cellType?`cell:${e.cellType.kind}`:e.format?e.format.type:``}function Uf(e,t,n){if(n.startsWith(`cell:`)){let r=n.slice(5);zf(e,t.field,{cellType:{kind:r},format:void 0})}else n?zf(e,t.field,{format:{type:n},cellType:void 0}):zf(e,t.field,{format:void 0,cellType:void 0})}function Wf(e,t,n){t.format&&zf(e,t.field,{format:{...t.format,...n}})}function Gf(e,t,n){t.cellType&&zf(e,t.field,{cellType:{...t.cellType,...n}})}function Kf(e,t,n){let r={...e.filterUi??{global:!0},[t]:n||void 0};Xu({filterUi:r.global||r.row||r.menu?r:{global:!0}})}function qf(e,t,n){let r={...e.export??{},[t]:n||void 0};Xu({export:r.csv||r.json||r.copy||r.xlsx||r.pdf||r.print?r:void 0})}async function Jf(e,t,n){let r=Dc[e];if(r)try{let{exportGrid:e}=await Ye(async()=>{let{exportGrid:e}=await import(`./src-96d31O63.js`).then(e=>e.t);return{exportGrid:e}},__vite__mapDeps([2,1,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17]),import.meta.url);await e(r,{format:t,filename:n})}catch(e){console.error(`Export failed:`,e),alert(`Export failed: `+(e instanceof Error?e.message:String(e)))}}async function Yf(e,t){let n=Dc[e];if(n)try{let{printGrid:e}=await Ye(async()=>{let{printGrid:e}=await import(`./src-96d31O63.js`).then(e=>e.t);return{printGrid:e}},__vite__mapDeps([2,1,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17]),import.meta.url);await e(n,{title:t})}catch(e){console.error(`Print failed:`,e),alert(`Print failed: `+(e instanceof Error?e.message:String(e)))}}function Xf(e,t,n){let r=e.grouping??[],i=n?[...r.filter(e=>e!==t),t]:r.filter(e=>e!==t);Xu({grouping:i.length?i:void 0,...i.length?{treeData:void 0,scheduler:void 0}:{}})}function Zf(e,t){if(!t){Xu({treeData:void 0});return}Xu({treeData:{parentField:p(ei).find(e=>/parent|manager|reports_to/i.test(e))??p(ei)[0]??``,labelField:e.columns.find(e=>e.show)?.field??p(ei)[0]??``},grouping:void 0,scheduler:void 0})}function Qf(e,t){e.treeData&&Xu({treeData:{...e.treeData,...t}})}function $f(e,t){if(!t){Xu({scheduler:void 0});return}Xu({scheduler:{startField:(p(No)?.fields??[]).filter(e=>e.type===`date`||/date|start|when|time|due|created/i.test(e.field))[0]?.field??p(ei)[0]??``,titleField:e.columns.find(e=>e.show)?.field??p(ei)[0]??``,initialView:`month`,drawer:!0},grouping:void 0,treeData:void 0})}function ep(e,t){e.scheduler&&Xu({scheduler:{...e.scheduler,...t}})}let tp=e=>($n(p(W),e)?.fields??[]).filter(e=>e.type===`text`||e.type===`enum`);function np(e){switch(e){case`number`:return[{value:``,label:`Number input`},{value:`slider`,label:`Slider`},{value:`rating`,label:`Rating`}];case`boolean`:return[{value:``,label:`Switch`}];case`date`:case`dateString`:return[{value:``,label:`Date`},{value:`datetime`,label:`Date + time`}];case`datetime`:return[{value:``,label:`Date + time`},{value:`date`,label:`Date only`},{value:`time`,label:`Time only`}];case`enum`:case`relation`:return[{value:``,label:`Dropdown`},{value:`rich-select`,label:`Searchable`}];case`json`:return[{value:``,label:`Textarea`}];default:return[{value:``,label:`Text`},{value:`textarea`,label:`Multiline`},{value:`chips`,label:`Tags`},{value:`password`,label:`Password`},{value:`color`,label:`Color`},{value:`phone`,label:`Phone`},{value:`country`,label:`Country`},{value:`mask`,label:`Masked`}]}}let rp=e=>np(e).length>1;function ip(e){if(!p(No))return;let t=(e.options?.length??0)+1,n=[...e.options??[],{value:`option-${t}`,label:`Option ${t}`}];Df(EM(p(No),e.field,{options:n}))}function ap(e,t,n){if(!p(No))return;let r=(e.options??[]).map((e,r)=>r===t?{...e,...n}:e);Df(EM(p(No),e.field,{options:r}))}function op(e,t){if(!p(No))return;let n=(e.options??[]).filter((e,n)=>n!==t);Df(EM(p(No),e.field,{options:n.length?n:void 0}))}function sp(e,t){if(!p(No))return;let n={...e.input??{},...t};for(let e of Object.keys(n)){let t=n[e];(t===``||t==null)&&delete n[e]}let r=Object.keys(n).length?n:void 0;Df(EM(p(No),e.field,{input:r}))}let cp=[`GET`,`POST`,`PUT`,`PATCH`,`DELETE`],lp=[`postgres`,`mysql`,`sqlite`,`mssql`,`supabase`,`turso`],up=[`query`,`path`,`header`,`body`],dp=j(`query`),fp=j(!1),pp=j(null),mp=M(()=>p(pp)?$n(p(W),p(pp)):p(No)),hp=j(``),gp=j(null),_p=j(null),vp=j(!1),yp=j(!1);function bp(e,t){let n=e.querySelector(t.handle),r=null,i=i=>{if(t.maximized||i.target.closest(`button`))return;let a=e.getBoundingClientRect();e.style.position=`fixed`,e.style.margin=`0`,e.style.left=`${a.left}px`,e.style.top=`${a.top}px`,r={dx:i.clientX-a.left,dy:i.clientY-a.top};try{n?.setPointerCapture(i.pointerId)}catch{}i.preventDefault()},a=t=>{r&&(e.style.left=`${Math.min(Math.max(t.clientX-r.dx,0),window.innerWidth-120)}px`,e.style.top=`${Math.min(Math.max(t.clientY-r.dy,0),window.innerHeight-44)}px`)},o=e=>{r=null;try{n?.releasePointerCapture(e.pointerId)}catch{}},s=e=>{e?.addEventListener(`pointerdown`,i),e?.addEventListener(`pointermove`,a),e?.addEventListener(`pointerup`,o)},c=e=>{e?.removeEventListener(`pointerdown`,i),e?.removeEventListener(`pointermove`,a),e?.removeEventListener(`pointerup`,o)},l=t=>{e.classList.toggle(`is-max`,t),t&&(e.style.left=e.style.top=e.style.width=e.style.height=e.style.position=e.style.margin=``)};return s(n),l(t.maximized),{update(r){r.handle!==t.handle&&(c(n),n=e.querySelector(r.handle),s(n)),t=r,l(r.maximized)},destroy(){c(n)}}}T(()=>{p(fp)||(V(pp,null),V(hp,``),V(gp,null),V(_p,null),V(vp,!1))}),T(()=>{p(Ca)||V(yp,!1)});function xp(e){dn(p(W),e).kind!==`memory`&&dn(p(W),e).kind!==`pglite`&&(V(pp,e,!0),V(hp,``),V(gp,null),V(_p,null),V(Bp,null),V(vp,!1),V(Ca,!1),V(fp,!0))}let Sp=M(()=>p(mp)?dn(p(W),p(mp).name):{kind:`memory`});function Cp(e){p(mp)&&br(ht(p(W),p(mp).name,e))}function wp(e,t){let n=dn(p(W),e);if(n.kind===t)return;let r=rt(t,e),i=n.kind===`memory`||n.kind===`pglite`?n.seed:void 0;i&&(r.kind===`memory`||r.kind===`pglite`)&&(r.seed=i),br(ht(p(W),e,r))}function Tp(e){p(No)&&wp(p(No).name,e)}function Ep(e){p(Sp).kind===`rest`&&Cp({...p(Sp),...e})}function Dp(e){Ep({adapter:e===`none`?void 0:e===`offsetLimit`?{kind:`offsetLimit`}:e===`dummyjson`?{kind:`dummyjson`}:{kind:`jsonServer`}})}function Op(e){let t=p(Sp).kind===`rest`?p(Sp).adapter:void 0;t?.kind===`offsetLimit`&&Ep({adapter:{...t,...e}})}function kp(e){if(e.kind===`dummyjson`)return mM(e.rowsKey);if(e.kind===`jsonServer`)return hM();let{kind:t,...n}=e;return pM(n)}let Ap=M(()=>{if(!p(W).entities.length)return null;let e=new Set(p(W).entities.map(e=>dn(p(W),e.name).kind));return e.size===1&&e.has(`memory`)?`memory`:e.size===1&&e.has(`pglite`)?`pglite`:null}),jp=M(()=>{let e=new Map;for(let t of p(W).entities){let n=dn(p(W),t.name).kind;e.set(n,(e.get(n)??0)+1)}return[...e].map(([e,t])=>`${ts[e]} ×${t}`).join(` · `)||ts[p(W).dataSource]});function Mp(e){if(p(Ap)===e)return;let t=Me(p(W),e);for(let n of p(W).entities){let r=dn(p(W),n.name),i=r.kind===`memory`||r.kind===`pglite`?r.seed:void 0;t=ht(t,n.name,e===`pglite`?{kind:`pglite`,table:n.name,...i?{seed:i}:{}}:{kind:`memory`,...i?{seed:i}:{}})}br(t)}let Np=e=>[...e.matchAll(/\{([^}]+)\}/g)].map(e=>e[1]);function Pp(e){if(p(Sp).kind!==`rest`)return;let t=Np(e),n=p(Sp).params.filter(e=>e.location!==`path`),r=new Set,i=t.filter(e=>!r.has(e)&&r.add(e)).map(e=>p(Sp).kind===`rest`?p(Sp).params.find(t=>t.location===`path`&&t.name===e)??{name:e,location:`path`,type:`string`,value:``}:{name:e,location:`path`,type:`string`,value:``});Ep({path:e,params:[...n,...i]})}function Fp(e){return p(Sp).kind===`rest`?p(Sp).params.filter(t=>t.location===e):[]}function Ip(e){p(Sp).kind===`rest`&&Ep({params:[...p(Sp).params,{name:``,location:e,type:`string`,value:``}]})}function Lp(e,t){p(Sp).kind===`rest`&&Ep({params:p(Sp).params.map(n=>n===e?{...n,...t}:n)})}function Rp(e){p(Sp).kind===`rest`&&Ep({params:p(Sp).params.filter(t=>t!==e)})}let zp=j(!1),Bp=j(null),Vp=j(me([])),Hp=j(!1);function Up(e){return{url:e.url??p(W).supabase?.url,key:e.key??p(W).supabase?.key}}function Wp(e){let t={...p(W),supabase:{...p(W).supabase,...e}},n=p(Sp);if(n.kind===`supabase`&&(n.url||n.key)&&p(mp)){let{url:e,key:r,...i}=n;t=ht(t,p(mp).name,i)}br(t)}let Gp={postgres:`postgresql://user:pass@host:5432/db`,supabase:`postgresql://postgres:pass@db.<ref>.supabase.co:5432/postgres`,mysql:`mysql://user:pass@host:3306/db`,mssql:`sqlserver://user:pass@host:1433;database=db`,sqlite:`/path/to/app.db`,turso:`libsql://your-db.turso.io`};function Kp(e){let t=e.trim().toLowerCase();return t.startsWith(`libsql://`)||t.includes(`.turso.io`)?`turso`:t.startsWith(`mysql`)?`mysql`:t.startsWith(`sqlserver://`)||t.startsWith(`mssql://`)||t.includes(`sqlserver`)?`mssql`:t.startsWith(`postgres`)&&t.includes(`supabase.co`)?`supabase`:t.startsWith(`postgres`)?`postgres`:/\.(db|sqlite|sqlite3)(\?|$)/.test(t)||t.length>0&&!t.includes(`://`)?`sqlite`:`postgres`}function qp(e){return{placeholder:Gp[e.dialect??`postgres`],parsed:p(gp)}}function Jp(e){let t=p(hp).trim();if(!t)return;let n=Kp(t),r=TN(n===`turso`||n===`supabase`?`postgres`:n,t);Cp({...e,dialect:n}),V(gp,{dialect:n,host:typeof r.host==`string`?r.host:void 0,database:r.database},!0)}let Yp=j(!1),Xp=j(!1),Zp=j(!1);async function Qp(){try{await navigator.clipboard.writeText(`npx @svgrid/studio designer`),V(Zp,!0),setTimeout(()=>V(Zp,!1),1600)}catch{}}async function $p(e){let t=p(mp);if(!t||!n.onIntrospectDatabase)return;let r=p(hp).trim();if(!r){V(Bp,{ok:!1,message:`Paste your connection string above first, then Preview data.`},!0);return}V(Yp,!0),V(Bp,null),V(_p,null);try{let i=e.dialect??Kp(r),a=(await n.onIntrospectDatabase({dialect:i,url:r,action:`preview`,tables:[e.table||t.name],schema:e.schema})).rows??[];V(as,{...p(as),[t.name]:a},!0),V(Bp,{ok:!0,message:`OK - ${a.length} row${a.length===1?``:`s`} from ${e.table||t.name}.`},!0)}catch(e){let t=e;V(_p,t?.missingDriver?t.driver??null:null,!0),V(Bp,{ok:!1,message:e instanceof Error?e.message:String(e)},!0)}finally{V(Yp,!1)}}async function em(e){if(n.onInstallDriver){V(Xp,!0),V(Bp,null);try{let t=e.dialect??Kp(p(hp).trim()),r=await n.onInstallDriver(t);r.ok?(V(_p,null),await $p(e)):V(Bp,{ok:!1,message:`Install failed: ${(r.output||r.package||``).slice(-300)}`},!0)}catch(e){V(Bp,{ok:!1,message:e instanceof Error?e.message:String(e)},!0)}finally{V(Xp,!1)}}}async function tm(){if(p(Sp).kind!==`supabase`)return;let e=Up(p(Sp));if(!e.url||!e.key){V(Bp,{ok:!1,message:`Set the project URL and the anon key first.`},!0);return}V(Hp,!0),V(Bp,null);try{V(Vp,await bM(e.url,e.key),!0),V(Bp,p(Vp).length?{ok:!0,message:`Found ${p(Vp).length} table${p(Vp).length===1?``:`s`}. Pick one, then Import schema.`}:{ok:!1,message:`No tables listed (the OpenAPI doc may be CORS-blocked or the key is wrong). You can still type the table name.`},!0)}catch(e){V(Bp,{ok:!1,message:e instanceof Error?e.message:String(e)},!0)}finally{V(Hp,!1)}}async function nm(){let e=p(mp);if(!e||p(Sp).kind!==`supabase`)return;let t=p(Sp),n=Up(t);if(!n.url||!n.key){V(Bp,{ok:!1,message:`Set the project URL and the anon key first.`},!0);return}V(Hp,!0),V(Bp,null);try{let r=await xM({url:n.url,key:n.key,table:t.table||e.name});r&&r.fields.length?(br(Ut(p(W),e.name,{...e,idField:r.idField,fields:r.fields})),V(Bp,{ok:!0,message:`Imported ${r.fields.length} fields from "${t.table||e.name}".`},!0),await am()):(await am(),cm())}catch(e){V(Bp,{ok:!1,message:e instanceof Error?e.message:String(e)},!0)}finally{V(Hp,!1)}}let rm=(e,t)=>{let n=(e??``).replace(/\/+$/,``),r=(t??``).replace(/^\/+/,``);return n?r?`${n}/${r}`:n:r},im=(e,t)=>t?t.split(`.`).filter(Boolean).reduce((e,t)=>e==null?e:e[t],e):e;async function am(){let e=p(mp);if(!e)return;let t=p(Sp);V(zp,!0),V(Bp,null);try{let n;if(t.kind===`rest`){let r=t.path;for(let e of t.params)e.location===`path`&&e.value&&(r=r.split(`{${e.name}}`).join(e.value));let i=Object.fromEntries(t.params.filter(e=>e.location===`header`&&e.value).map(e=>[e.name,e.value])),a=Object.fromEntries(t.params.filter(e=>e.location===`query`&&e.value).map(e=>[e.name,e.value])),o=t.adapter?kp(t.adapter):{parse:t.rowsPath||t.totalPath?e=>{let n=im(e,t.rowsPath)??[];return{rows:n,rowCount:Number(im(e,t.totalPath)??n.length)}}:void 0};n=dM({url:rm(t.baseUrl,r),schema:e,headers:i,query:a,...o})}else if(t.kind===`supabase`){let r=Up(t);if(!r.url||!r.key)throw Error(`Set the project URL and the anon key first.`);n=dM({url:`${r.url.replace(/\/+$/,``)}/rest/v1/${t.table}`,schema:e,headers:{apikey:r.key,Authorization:`Bearer ${r.key}`},query:{select:`*`}})}else return;let r=await n.getRows({startRow:0,endRow:25,pageIndex:0,pageSize:25,sortModel:[],filterModel:{}}),i=[...r.rows];V(as,{...p(as),[e.name]:i},!0),V(Bp,{ok:!0,message:`OK - ${r.rowCount} rows returned.`},!0)}catch(e){V(Bp,{ok:!1,message:e instanceof Error?e.message:String(e)},!0)}finally{V(zp,!1)}}let om=e=>{let t=e==null?``:typeof e==`object`?JSON.stringify(e):String(e);return t.length>48?t.slice(0,47)+`…`:t},sm=e=>typeof e==`number`?`number`:typeof e==`boolean`?`boolean`:e&&typeof e==`object`?`json`:`text`;function cm(){let e=p(mp);if(!e)return;let t=p(as)[e.name]??[];if(!t.length)return;let n=Object.keys(t[0]??{});if(!n.length)return;let r=n.includes(`id`)?`id`:n[0],i=n.map(e=>{let n=t.map(t=>t[e]).find(e=>e!=null);return{field:e,type:sm(n),...e===r?{primaryKey:!0}:{}}});br(Ut(p(W),e.name,{...e,idField:r,fields:i})),V(Bp,{ok:!0,message:`Imported ${i.length} fields from the response.`},!0)}var lm=bW();C(`keydown`,fe,mf);let um;var dm=B(lm),fm=B(dm),pm=B(fm);o(B(pm),()=>`dashboard`),H(pm),D(2),H(fm);var mm=k(fm,4);N(mm);var hm=k(mm,2),gm=e=>{var t=QI();let n;w(()=>n=Ce(t,1,`sv-studio__tb-btn svelte-psjrav`,null,n,{"is-active":p(Pd)===`insp`})),x(`click`,t,Ld),d(e,t)};h(hm,e=>{p(Fd)&&e(gm)});var _m=k(hm,2),vm=B(_m);let ym;var bm=B(vm),xm=k(bm,2),Sm=B(xm,!0);H(xm),o(k(xm,2),()=>`chevron`),H(vm);var Cm=k(vm,2),wm=e=>{var t=nL(),r=I(t),i=k(r,2),a=B(i),o=e=>{var t=$I(),n=B(t);let r;var i=k(n,2);let a;H(t),w(()=>{r=Ce(n,1,`svelte-psjrav`,null,r,{"is-active":p(Fs)===`light`}),a=Ce(i,1,`svelte-psjrav`,null,a,{"is-active":p(Fs)===`dark`})}),x(`click`,n,()=>br(Rt(p(W),{mode:`light`}))),x(`click`,i,()=>br(Rt(p(W),{mode:`dark`}))),d(e,t)};h(a,e=>{n.appearance||e(o)});var s=k(a,2);se(s,21,()=>Jt,e=>e.id,(e,t)=>{let n=M(()=>(p(W).theme?.preset??`tailwind`)===p(t).id),r=M(()=>p(t)[p(Fs)]);var i=eL();let a;var o=k(B(i),2),s=B(o,!0);H(o),H(i),w(()=>{a=Ce(i,1,`sv-studio__theme svelte-psjrav`,null,a,{"is-active":p(n)}),R(i,`aria-checked`,p(n)),R(i,`title`,p(t).name),A(i,`--pv-bg: ${p(r).bg??``}; --pv-header: ${p(r).headerBg??``}; --pv-border: ${p(r).border??``}; --pv-accent: ${p(r).accent??``}; --pv-fg: ${p(r).fg??``}`),v(s,p(t).name)}),x(`click`,i,()=>br($e(p(W),p(t).id))),d(e,i)}),H(s);var c=k(s,2),l=k(B(c)),u=B(l);N(u);var f=k(u,2),m=e=>{var t=tL();x(`click`,t,()=>br(Rt(p(W),{accent:void 0}))),d(e,t)};h(f,e=>{p(W).theme?.accent&&e(m)}),H(l),H(c);var g=k(c,2),_=k(B(g));N(_);var y=k(_,2),b=k(B(y));b.textContent=`.brand-app { … }`,D(),H(y),H(g),D(2),H(i),w(()=>{F(u,p(W).theme?.accent??p(zs)),F(_,p(W).theme?.appClass??``)}),x(`click`,r,()=>V(xc,!1)),x(`change`,u,e=>br(Rt(p(W),{accent:e.currentTarget.value}))),x(`change`,_,e=>br(Rt(p(W),{appClass:e.currentTarget.value.trim()||void 0}))),d(e,t)};h(Cm,e=>{p(xc)&&e(wm)}),H(_m);var Tm=k(_m,4),Em=e=>{var t=rL();let n;var r=B(t);H(t),w(()=>{n=Ce(t,1,`sv-studio__saved svelte-psjrav`,null,n,{"is-saving":p(Er)===`Saving…`}),v(r,`${p(Er)===`Saving…`?``:`✓ `}${p(Er)??``}`)}),d(e,t)};h(Tm,e=>{p(Er)&&e(Em)});var Dm=k(Tm,2);o(B(Dm),()=>`undo`),H(Dm);var Om=k(Dm,2);o(B(Om),()=>`redo`),H(Om);var km=k(Om,2),Am=k(km,4),jm=e=>{var t=iL();let n;w(()=>n=Ce(t,1,`sv-studio__tb-btn sv-studio__tb-btn--ai svelte-psjrav`,null,n,{"is-active":p(Zc)})),x(`click`,t,rl),d(e,t)};h(Am,e=>{n.onCopilot&&e(jm)});var Mm=k(Am,2);o(B(Mm),()=>`plus`),D(),H(Mm);var Nm=k(Mm,2);o(B(Nm),()=>`dashboard`),D(),H(Nm);var Pm=k(Nm,2),Fm=e=>{var t=aL();let n;var r=B(t);o(r,()=>`entity`),D(),H(t),w(()=>n=Ce(t,1,`sv-studio__tb-btn svelte-psjrav`,null,n,{"is-active":p(Ca)})),x(`click`,t,()=>V(Ca,!0)),d(e,t)};h(Pm,e=>{p(W).entities.length>0&&e(Fm)});var Im=k(Pm,2),Lm=B(Im);let Rm;var zm=B(Lm);o(zm,()=>`plus`),o(k(zm,2),()=>`chevron`),H(Lm);var Bm=k(Lm,2),Vm=e=>{var t=gee(),r=I(t),i=k(r,2),a=B(i),s=B(a);o(s,()=>`plus`),D(),H(a);var c=k(a,2),l=B(c);o(l,()=>`import`);var u=k(l,3);H(c);var f=k(c,2),m=B(f);o(m,()=>`database`),D(),H(f);var g=k(f,2),_=e=>{var t=oL(),n=I(t),r=B(n);o(r,()=>`database`),D(),H(n);var i=k(n,2),a=e=>{var t=hee(),n=B(t);o(n,()=>`database`),D(),H(t),x(`click`,t,()=>{V(Cc,!1),lu()}),d(e,t)};h(i,e=>{p(W).entities.length>0&&e(a)}),x(`click`,n,()=>{V(Cc,!1),jl()}),d(e,t)};h(g,e=>{n.onIntrospectDatabase&&e(_)});var v=k(g,2),y=B(v);o(y,()=>`import`),D(),H(v),H(i),x(`click`,r,()=>V(Cc,!1)),x(`click`,a,()=>{V(Cc,!1),V(ul,``),V(ll,!0)}),x(`change`,u,e=>{V(Cc,!1),gl(e.currentTarget.files?.[0]),e.currentTarget.value=``}),x(`click`,f,()=>{V(Cc,!1),V(Tl,null),V(Cl,!0)}),x(`click`,v,()=>{V(Cc,!1),V(ec,`import`)}),d(e,t)};h(Bm,e=>{p(Cc)&&e(Vm)}),H(Im);var Hm=k(Im,2);let Um;var Wm=k(Hm,2);let Gm;o(B(Wm),()=>`save`),D(),H(Wm);var Km=k(Wm,4),qm=e=>{var t=sL();x(`click`,t,Do),d(e,t)};h(Km,e=>{p(To)&&e(qm)});var Jm=k(Km,2),Ym=k(Jm,4);let Xm;var Zm=k(Ym,2),Qm=k(Zm,2);o(B(Qm),()=>`screen`),D(),H(Qm);var $m=k(Qm,2);let eh;o(B($m),()=>`deploy`),D(),H($m);var th=k($m,2),nh=k(th,2);o(B(nh),()=>`generate`),D(),H(nh),H(dm);var rh=k(dm,2),ih=e=>{var t=cL(),n=B(t),r=B(n);o(r,()=>`save`),D(),H(n);var i=k(n,2),a=k(i,2);H(t),x(`click`,i,kr),x(`click`,a,Ar),d(e,t)};h(rh,e=>{p(wr)&&e(ih)});var ah=k(rh,2),oh=e=>{var t=lL(),n=B(t),r=B(n,!0);H(n);var i=k(n,2);H(t),w(()=>v(r,p(hl))),x(`click`,i,()=>V(hl,null)),d(e,t)};h(ah,e=>{p(hl)&&e(oh)});var sh=k(ah,2),ch=e=>{var t=uL(),n=B(t),r=B(n,!0);H(n);var i=k(n,2);H(t),w(()=>v(r,p(rc))),x(`click`,i,()=>V(rc,null)),d(e,t)};h(sh,e=>{p(rc)&&p(ec)===`none`&&e(ch)});var lh=k(sh,2),uh=e=>{var t=gL(),n=B(t),r=e=>{var t=dL(),n=k(I(t),2);re(n),w(()=>F(n,p(ic))),d(e,t)},i=e=>{var t=fL(),n=k(I(t),2);let r;var i=B(n);o(i,()=>`import`);var a=k(i,4);H(n);var s=k(n,2);re(s),R(s,`placeholder`,`…or paste { "entities": [...], "screens": [...] }`);var c=k(s,2);w(e=>{r=Ce(n,1,`sv-studio__dropzone svelte-psjrav`,null,r,{"is-dragover":p(cc)}),c.disabled=e},[()=>!p(tc).trim()]),C(`dragover`,n,e=>{e.preventDefault(),V(cc,!0)}),C(`dragleave`,n,()=>V(cc,!1)),C(`drop`,n,uc),x(`change`,a,e=>lc(e.currentTarget.files?.[0])),te(s,()=>p(tc),e=>V(tc,e)),x(`click`,c,sc),d(e,t)},a=e=>{var t=pL(),n=k(I(t),2);re(n),R(n,`placeholder`,`model User { id Int @id ... } · or an OpenAPI 3 JSON document`);var r=k(n,2);te(n,()=>p(nc),e=>V(nc,e)),x(`click`,r,pc),d(e,t)};h(n,e=>{p(ec)===`save`?e(r):p(ec)===`load`?e(i,1):e(a,-1)});var s=k(n,2),c=e=>{var t=mL(),n=B(t,!0);H(t),w(()=>v(n,p(dc))),d(e,t)};h(s,e=>{p(dc)&&e(c)});var l=k(s,2),u=e=>{var t=hL(),n=B(t,!0);H(t),w(()=>v(n,p(rc))),d(e,t)};h(l,e=>{p(rc)&&e(u)}),H(t),d(e,t)};h(lh,e=>{p(ec)!==`none`&&e(uh)});var dh=k(lh,2);let fh;{let e=e=>{var t=CL(),n=B(t),r=B(n),i=B(r),a=B(i);o(a,()=>`chevron`),D(),H(i);var s=k(i,2),c=B(s);se(c,17,()=>p(W).screens,e=>e.id,(e,t)=>{var n=_L();let r;var i=B(n),a=B(i);o(a,()=>`screen`);var s=k(a),c=B(s,!0);H(s);var l=k(s),u=B(l);H(l),H(i);var f=k(i,2),m=k(f,2),h=B(m);o(h,()=>`close`),H(m),H(n),w(()=>{r=Ce(n,1,`sv-studio__tree-row svelte-psjrav`,null,r,{"is-active":p(t).id===p(Zr)?.id,"is-dragging":p(vf)===p(t).id}),v(c,p(t).title),v(u,`/${p(t).route??``}`)}),C(`dragstart`,n,()=>V(vf,p(t).id,!0)),C(`dragover`,n,e=>e.preventDefault()),C(`drop`,n,e=>{e.preventDefault(),p(vf)&&p(vf)!==p(t).id&&br(mr(p(W),p(vf),p(W).screens.findIndex(e=>e.id===p(t).id))),V(vf,null)}),C(`dragend`,n,()=>V(vf,null)),x(`contextmenu`,n,e=>ga(e,ba(p(t)))),x(`click`,i,()=>{V(Xr,p(t).id,!0),V(Fa,null)}),x(`click`,f,()=>{V(Xr,p(t).id,!0),ja()}),x(`click`,m,()=>br(mn(p(W),p(t).id))),d(e,n)});var l=k(c,2),u=e=>{var t=vL();d(e,t)};h(l,e=>{p(W).screens.length===0&&e(u)}),H(s),H(r);var f=k(r,2),m=B(f),g=B(m);o(g,()=>`chevron`),D(),H(m);var _=k(m,2);se(_,21,()=>p(W).entities,e=>e.name,(e,t)=>{let n=M(()=>is(p(t).name));var r=yL(),i=B(r),a=B(i);o(a,()=>`entity`);var s=k(a),c=B(s,!0);H(s),H(i);var l=k(i,2);let u;var f=B(l,!0);H(l);var m=k(l,2),h=B(m);o(h,()=>`plus`),H(m),H(r),w(()=>{v(c,p(t).label??p(t).name),u=Ce(l,1,`sv-studio__srcchip svelte-psjrav`,null,u,{"is-inherited":!p(n).explicit}),A(l,`--src: ${p(n).color??``}`),R(l,`title`,`${p(t).label??p(t).name??``} data: ${p(n).label??``}${p(n).explicit?``:` (project default)`} - click to manage in Data model`),v(f,p(n).label),R(m,`aria-label`,`Add screen for ${p(t).name??``}`),R(m,`title`,`Add ${p($s)??``} screen`)}),x(`click`,l,()=>Oa(p(t).name)),x(`click`,m,()=>br(pt(p(W),p(t).name,p($s)))),d(e,r)}),H(_),H(f);var y=k(f,2),b=B(y),S=k(B(b)),T=B(S),O=B(T);O.value=O.__value=`crud`;var ee=k(O);ee.value=ee.__value=`dashboard`;var te=k(ee);te.value=te.__value=`master-detail`;var j=k(te);j.value=j.__value=`empty`,H(T);var ne=k(T,2),re=B(ne);o(re,()=>`plus`),H(ne),H(S),H(b);var P=k(b,2),ie=k(B(P)),ae=B(ie);ae.value=ae.__value=`memory`;var oe=k(ae);oe.value=oe.__value=`pglite`;var ce=k(oe);ce.value=ce.__value=`sql`;var L=k(ce);L.value=L.__value=`supabase`;var le=k(L);le.value=le.__value=`rest`,H(ie);var ue;xe(ie),H(P);var de=k(P,4),fe=B(de),pe=B(fe);o(pe,()=>`chevron`),D(),H(fe);var me=k(fe,2),he=B(me),ge=k(B(he)),z=B(ge);z.value=z.__value=`sidebar`;var _e=k(z);_e.value=_e.__value=`top-nav`;var ve=k(_e);ve.value=ve.__value=`bottom-nav`,H(ge);var ye;xe(ge),H(he);var be=k(he,2),Se=e=>{var t=bL(),n=k(B(t)),r=B(n);r.value=r.__value=`left`;var i=k(r);i.value=i.__value=`right`,H(n);var a;xe(n),H(t),w(()=>{a!==(a=p(W).theme?.shell?.navPosition??`left`)&&(n.value=(n.__value=p(W).theme?.shell?.navPosition??`left`)??``,Te(n,p(W).theme?.shell?.navPosition??`left`))}),x(`change`,n,e=>br(Fe(p(W),{navPosition:e.currentTarget.value}))),d(e,t)};h(be,e=>{(p(W).theme?.shell?.style??`sidebar`)===`sidebar`&&e(Se)});var we=k(be,2),Ee=k(B(we));N(Ee),H(we);var De=k(we,4),Oe=B(De),ke=e=>{var t=xL(),n=I(t),r=k(n,2);w(()=>R(n,`src`,p(Ws))),x(`click`,r,()=>br(Fe(p(W),{logo:void 0}))),d(e,t)},Ae=e=>{var t=SL();x(`change`,t,Js),d(e,t)};h(Oe,e=>{p(Ws)?e(ke):e(Ae,-1)}),H(De);var je=k(De,4),Ne=k(B(je));N(Ne),H(je),H(me),H(de),H(y),H(n),H(t),w(()=>{ue!==(ue=p(W).dataSource)&&(ie.value=(ie.__value=p(W).dataSource)??``,Te(ie,p(W).dataSource)),ye!==(ye=p(W).theme?.shell?.style??`sidebar`)&&(ge.value=(ge.__value=p(W).theme?.shell?.style??`sidebar`)??``,Te(ge,p(W).theme?.shell?.style??`sidebar`)),F(Ee,p(W).theme?.shell?.brand??``),R(Ee,`placeholder`,p(W).title),F(Ne,p(W).theme?.shell?.footer??``)}),E(T,()=>p($s),e=>V($s,e)),x(`click`,ne,()=>Ma()),x(`change`,ie,e=>br(Me(p(W),e.currentTarget.value))),x(`change`,ge,e=>br(Fe(p(W),{style:e.currentTarget.value}))),x(`change`,Ee,e=>br(Fe(p(W),{brand:e.currentTarget.value}))),x(`change`,Ne,e=>br(Fe(p(W),{footer:e.currentTarget.value}))),d(e,t)},t=e=>{var t=DL(),n=B(t),r=B(n),i=B(r),a=B(i,!0);H(i);var s=k(i,2);se(s,21,()=>It,e=>e.kind,(e,t)=>{var n=wL();let r;var i=B(n);o(i,()=>p(t).kind);var a=k(i,1,!0);H(n),w(()=>{r=Ce(n,1,`sv-studio__palette-item svelte-psjrav`,null,r,{"is-dragging":p(hf)===p(t).kind}),n.disabled=!p(Zr),R(n,`draggable`,!!p(Zr)),R(n,`title`,p(No)?p(t).needs?`Needs a ${p(t).needs}`:`Drag onto the canvas, or click to add`:`Drop it and pick an entity to bind this page to`),v(a,p(t).label)}),C(`dragstart`,n,e=>p(Zr)&&bf(e,p(t).kind)),C(`dragend`,n,Ef),x(`click`,n,()=>Fr(p(t).kind)),d(e,n)}),H(s);var c=k(s,4);se(c,17,()=>zr,e=>e.category,(e,t)=>{var n=EL(),r=I(n),i=B(r,!0);H(r);var a=k(r,2);se(a,21,()=>p(t).items,e=>e.key,(e,t)=>{var n=TL();let r;var i=B(n);o(i,()=>`file`);var a=k(i,1,!0);H(n),w(()=>{r=Ce(n,1,`sv-studio__palette-item svelte-psjrav`,null,r,{"is-dragging":p(gf)===p(t).key}),n.disabled=!p(Zr),R(n,`draggable`,!!p(Zr)),v(a,p(t).label)}),C(`dragstart`,n,e=>p(Zr)&&xf(e,p(t).key)),C(`dragend`,n,Ef),x(`click`,n,()=>Ii(p(t).key)),d(e,n)}),H(a),w(()=>v(i,p(t).category)),d(e,n)}),H(r),H(n),H(t),w(()=>v(a,p(Zr)?p(No)?`Drag a block onto the canvas, or click to add it to the current screen.`:`Data blocks read a page’s entity - drop one and you’ll pick which entity to bind this page to. UI components below drop onto any page.`:`Add or select a screen first, then drop blocks onto it.`)),d(e,t)},r=e=>{var t=bR(),r=B(t),i=e=>{var t=kL(),n=B(t);let r;var i=B(n);o(i,()=>`dashboard`),D(),H(n);var a=k(n,2);let s;var c=B(a);o(c,()=>`file`);var l=k(c,2),u=e=>{var t=OL();d(e,t)};h(l,e=>{p(Zr).code&&e(u)}),H(a),H(t),w(()=>{r=Ce(n,1,`sv-studio__viewtab svelte-psjrav`,null,r,{"is-active":p(Ia)===`design`}),R(n,`aria-selected`,p(Ia)===`design`),s=Ce(a,1,`sv-studio__viewtab svelte-psjrav`,null,s,{"is-active":p(Ia)===`code`}),R(a,`aria-selected`,p(Ia)===`code`)}),x(`click`,n,()=>V(Ia,`design`)),x(`click`,a,()=>V(Ia,`code`)),d(e,t)};h(r,e=>{p(Zr)&&e(i)});var a=k(r,2),s=e=>{var t=UL(),n=B(t),r=B(n),i=B(r);let a;var s=B(i);o(s,()=>`file`),D(),H(i);var c=k(i,2);let l;var u=k(c,2);let f;var m=k(u,2);let g;H(r);var _=k(r,2),y=e=>{var t=AL(),n=B(t);N(n),D(),H(t),w(()=>le(n,p(Fo))),x(`change`,n,e=>br(Et(p(W),p(Zr).id,e.currentTarget.checked))),d(e,t)};h(_,e=>{(p(La)===`onLoad`||p(La)===`onDestroy`)&&!p(No)&&e(y)}),H(n);var b=k(n,2),S=e=>{var t=RL(),n=I(t),r=B(n),i=B(r),a=B(i);let s;var c=k(B(a)),l=e=>{var t=jL();d(e,t)};h(c,e=>{(p(J)||p(Zr).handlerSteps?.onLoad?.length)&&e(l)}),H(a);var u=k(a,2);let f;var m=k(B(u)),g=e=>{var t=ML();d(e,t)};h(m,e=>{(p(Io)||p(Zr).handlerSteps?.onDestroy?.length)&&e(g)}),H(u),H(i);var _=k(i,2),y=B(_),b=B(y),S=B(b);o(S,()=>`screen`);var C=k(S,1,!0);H(b);var T=k(b,2),E=B(T,!0);H(T),H(y);var O=k(y,2),A=e=>{var t=NL();eM(I(t),{get value(){return p(J)},get completions(){return p(Ho)},get snippets(){return p(Go)},placeholder:`// Runs when the page mounts. Reach the grid via ctx.grid, feed a chart via ctx.chart1.setData(rows).
|
|
75792
|
+
console.log(csv)`}]:[],...p(Uo)?[{label:`Feed ${p(Uo).name}`,code:`const res = await fetch('/api/data')\nctx.${p(Uo).name}.setData(await res.json())`}]:[],...p(Wo)?[{label:`Wire ${p(Wo).name}`,code:`ctx.${p(Wo).name}.onclick = () => {\n ctx.${p(Wo).name}.setLabel('Clicked')\n}`}]:[],{label:`Log on mount`,code:`console.log('page mounted', ctx)`}]),Ko={name:`__free__`,label:``,idField:`id`,fields:[]},qo=M(()=>ke(p(W))),Jo=M(()=>Zn(p(W))),Yo=M(()=>p(qo).filter(e=>e.level===`error`).length),Xo=M(()=>{let e={};for(let t of p(qo))t.block&&(e[t.block]??=[]).push(t);return e});function Zo(e){e.screen&&V(Xr,e.screen,!0),V(Fa,e.block??null,!0),e.block&&queueMicrotask(()=>document.querySelector(`[data-block-id="${CSS.escape(e.block)}"]`)?.scrollIntoView({behavior:`smooth`,block:`center`}))}T(()=>{!p(W).screens.some(e=>e.id===p(Xr))&&p(W).screens[0]&&V(Xr,p(W).screens[0].id,!0)}),T(()=>pr(`Studio`));let Qo=[`count`,`sum`,`avg`,`min`,`max`],$o=[{type:`bar`,label:`Bar`,glyph:`<rect x="2" y="13" width="6" height="13" rx="1"/><rect x="11" y="6" width="6" height="20" rx="1"/><rect x="20" y="16" width="6" height="10" rx="1"/><rect x="29" y="9" width="6" height="17" rx="1"/>`},{type:`pie`,label:`Pie`,glyph:`<circle cx="18" cy="14" r="12" opacity="0.32"/><path d="M18,14 L18,2 A12,12 0 0,1 29,18 Z"/>`},{type:`line`,label:`Line`,glyph:`<polyline points="2,22 12,10 21,16 36,4" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"/>`},{type:`area`,label:`Area`,glyph:`<path d="M2,22 L12,10 L21,16 L36,4 L36,26 L2,26 Z" opacity="0.9"/>`},{type:`radar`,label:`Radar`,glyph:`<polygon points="18,3 32,13 27,27 9,27 4,13" fill="none" stroke="currentColor" stroke-width="1.5" opacity="0.4"/><polygon points="18,9 26,14 23,23 13,23 10,14"/>`},{type:`funnel`,label:`Funnel`,glyph:`<path d="M3,4 H35 L28,12 H10 Z"/><path d="M11,15 H27 L23,23 H15 Z" opacity="0.7"/>`},{type:`waterfall`,label:`Waterfall`,glyph:`<rect x="2" y="15" width="6" height="11" rx="1"/><rect x="11" y="10" width="6" height="8" rx="1" opacity="0.7"/><rect x="20" y="6" width="6" height="9" rx="1"/><rect x="29" y="6" width="6" height="20" rx="1" opacity="0.7"/>`},{type:`treemap`,label:`Treemap`,glyph:`<rect x="2" y="3" width="20" height="15" rx="1"/><rect x="24" y="3" width="12" height="15" rx="1" opacity="0.6"/><rect x="2" y="20" width="12" height="6" rx="1" opacity="0.7"/><rect x="16" y="20" width="20" height="6" rx="1" opacity="0.5"/>`}],es=e=>`<svg viewBox="0 0 38 28" width="26" height="19" fill="currentColor" aria-hidden="true">${$o.find(t=>t.type===e)?.glyph??``}</svg>`,ts={memory:`In-memory`,pglite:`Local database`,sql:`SQL`,supabase:`Supabase`,rest:`REST`},ns={memory:`Fake sample data, zero setup. Best for designing and demos - no database needed.`,pglite:`A real database that runs inside your browser (saved on this computer). No server, no sign-up - great for learning and prototypes.`,supabase:`A free hosted Postgres database with a friendly web dashboard. The easiest real database, and it works right here in the browser (paste the project URL + anon key).`,sql:`Your own SQL database (Postgres, MySQL, SQL Server, SQLite). To connect and see rows live you need the local designer; online you set it up here and the generated app connects for real.`,rest:`An existing web API - a URL that returns JSON. Use this when your data already lives behind an API.`},rs={memory:`#94a3b8`,pglite:`#14b8a6`,sql:`#3b82f6`,supabase:`#10b981`,rest:`#a855f7`};function is(e){let t=dn(p(W),e).kind;return{kind:t,label:ts[t],color:rs[t],explicit:!!p(W).dataSources?.[e]}}let as=j(me({}));function os(e,t){let n=t.fields.filter(e=>e.type===`relation`&&e.relation);if(!n.length)return e;let r=n.map(e=>{let t=$n(p(W),e.relation.entity),n=dn(p(W),e.relation.entity),r=n.kind===`memory`&&n.seed?.length?n.seed:t?DM(t,6):[],i=t?.idField??t?.fields.find(e=>e.primaryKey)?.field??`id`;return{field:e.field,map:new Map(r.map(t=>[String(t[i]),t[e.relation.labelField]]))}});return e.map(e=>{let t={...e};for(let{field:n,map:i}of r){let r=i.get(String(e[n]));r!=null&&(t[n]=r)}return t})}function ss(e){return os(cs(e),e)}function cs(e){let t=dn(p(W),e.name);return p(as)[e.name]??(t.kind===`memory`&&t.seed?.length?t.seed:DM(e,6))}let ls=j(!1),us=j(me([])),ds=M(()=>{if(!p(No))return null;let e=dn(p(W),p(No).name).kind;return e===`memory`||e===`pglite`?e:null}),fs=M(()=>p(No)?p(No).fields.filter(e=>!e.formula&&!e.computed):[]);function ps(){p(No)&&(V(us,cs(p(No)).map(e=>({...e})),!0),V(ls,!0))}function ms(){if(!p(No))return;let e=p(No).idField??p(No).fields.find(e=>e.primaryKey)?.field??`id`,t={};for(let e of p(fs))t[e.field]=e.type===`boolean`?!1:e.type===`number`?0:``;t[e]=`${p(No).name.charAt(0).toLowerCase()||`r`}${p(us).length+1}`,V(us,[...p(us),t],!0)}function hs(e,t,n){V(us,p(us).map((r,i)=>i===e?{...r,[t]:n}:r),!0)}function gs(e){let t=e.relation&&p(W).entities.find(t=>t.name===e.relation.entity);if(!t||!e.relation)return[];let n=t.idField??t.fields.find(e=>e.primaryKey)?.field??`id`;return cs(t).map(t=>({value:String(t[n]??``),label:String(t[e.relation.labelField??n]??t[n]??``)}))}function _s(){if(!p(No))return;let e=dn(p(W),p(No).name),t=p(us).map(e=>({...e}));br(ht(p(W),p(No).name,e.kind===`pglite`?{kind:`pglite`,table:e.table,seed:t}:{kind:`memory`,seed:t}));let{[p(No).name]:n,...r}=p(as);V(as,r,!0),V(ls,!1)}function vs(e){return(e.related??[]).map(e=>{let t=$n(p(W),e.entity);return t?{label:e.label??t.label??t.name,schema:t,rows:ss(t),foreignKey:e.foreignKey,parentField:e.parentField,titleField:e.titleField??t.fields.find(e=>e.type===`text`&&!e.primaryKey)?.field??t.fields[0]?.field??`id`,subtitleField:e.subtitleField,dateField:e.dateField,statusField:e.statusField}:null}).filter(e=>e!=null)}let ys=M(()=>p(W).screens.filter(e=>e.blocks.some(e=>e.config.kind===`detail`)));function bs(e){let t=[];for(let n of p(W).entities){if(n.name===e.name)continue;let r=n.fields.find(t=>t.type===`relation`&&t.relation?.entity===e.name)?.field;r&&t.push({child:n,fk:r})}return t}function xs(e,t){let n=e.fields.filter(e=>!e.primaryKey&&e.field!==t);return{entity:e.name,foreignKey:t,label:e.label??e.name,titleField:n.find(e=>e.type===`text`)?.field??n[0]?.field??e.fields[0]?.field??`id`,dateField:n.find(e=>e.type===`date`||e.type===`datetime`||e.type===`dateString`)?.field,statusField:n.find(e=>e.type===`enum`)?.field}}function Cs(e,t,n){let r=e.idField??e.fields.find(e=>e.primaryKey)?.field??`id`,i=String(t??Ec[e.name]?.[r]??``),a=(p(as)[e.name]??ss(e)).map(e=>String(e[r])===i?{...e,...n}:{...e});V(as,{...p(as),[e.name]:a},!0),Ec[e.name]=void 0}let ws=j(null);function Ts(e){return e.idField??e.fields.find(e=>e.primaryKey)?.field??`id`}function Es(e,t){let n=Ts(e),r=p(as)[e.name]??ss(e);V(as,{...p(as),[e.name]:r.filter(e=>String(e[n])!==t)},!0)}function Ds(e,t,n){let r=Ts(e),i=p(as)[e.name]??ss(e);if(t==null){let t=i.reduce((e,t)=>Math.max(e,Number(t[r])||0),0)+1;V(as,{...p(as),[e.name]:[{[r]:t,...n},...i]},!0)}else V(as,{...p(as),[e.name]:i.map(e=>String(e[r])===t?{...e,...n}:e)},!0);V(ws,null)}function Os(e){let t=e.idField??e.fields.find(e=>e.primaryKey)?.field;return Yt(e).filter(e=>e.field!==t)}function ks(e,t){let n=new Map(e.columns.filter(e=>e.aggregate||e.format||e.cellType).map(e=>[e.field,e])),r=Os(t).map(e=>{let t=e.field?n.get(e.field):void 0;return t?{...e,aggregate:t.aggregate,format:t.format,...t.cellType?{cell:e=>Wn(l,{value:e.getValue(),type:t.cellType})}:{}}:e});return e.rowActions?.length&&r.push({id:`__actions`,header:`Actions`,sortable:!1,cell:n=>Wn(u,{row:n.row.original,ent:t,actions:e.rowActions})}),r}let As=M(()=>p(No)?ss(p(No)):[]);M(()=>p(No)?Os(p(No)):[]);let js=j(me({}));function Ms(e,t,n){V(js,{...p(js),[e]:{...p(js)[e]??{},[t]:n}},!0)}function Ns(e){let t=e.relation;if(!t)return[];let n=p(W).entities.find(e=>e.name===t.entity);if(!n)return[];let r=n.idField??n.fields.find(e=>e.primaryKey)?.field??`id`;return ss(n).map(e=>({value:String(e[r]??``),label:String(e[t.labelField]??e[r]??``)}))}function Ps(e,t){let n=Object.entries(p(js)[e.name]??{}).filter(([,e])=>e!==``&&e!=null);return n.length?t.filter(t=>n.every(([n,r])=>{let i=e.fields.find(e=>e.field===n),a=t[n];return i&&i.type===`text`&&!i.options?.length?String(a??``).toLowerCase().includes(String(r).toLowerCase()):String(a??``)===String(r)})):t}let Fs=M(()=>n.appearance??(p(W).theme?.mode===`dark`?`dark`:`light`)),Is=M(()=>n.appearance?{...p(W).theme,mode:n.appearance}:p(W).theme),Ls=M(()=>rr(p(Is))),Rs=M(()=>hn(p(W).theme?.preset)??vn),zs=M(()=>p(Rs)[p(Fs)].accent),Bs=M(()=>p(W).theme?.shell?.style??`sidebar`),Vs=M(()=>p(W).theme?.shell?.brand||p(W).title),Hs=M(()=>p(W).theme?.shell?.navPosition??`left`),Us=M(()=>p(W).theme?.shell?.footer),Ws=M(()=>p(W).theme?.shell?.logo),Gs=j(!1),qs=M(()=>p(Bs)===`sidebar`&&p(Gs));function Js(e){let t=e.currentTarget.files?.[0];if(!t)return;let n=new FileReader;n.onload=()=>br(Fe(p(W),{logo:String(n.result)})),n.readAsDataURL(t)}let Xs=M(()=>p(W).screens.filter(e=>e.nav?.show!==!1).map((e,t)=>({s:e,order:e.nav?.order??t})).sort((e,t)=>e.order-t.order).map(e=>e.s)),Zs=j(null),$s=j(`crud`),ec=j(`none`),tc=j(``),nc=j(``),rc=j(null),ic=M(()=>Re(p(W)));function oc(e){try{br(on(e)),V(tc,``),V(rc,null),V(ec,`none`)}catch(e){V(rc,e instanceof Error?e.message:String(e),!0)}}let sc=()=>oc(p(tc)),cc=j(!1);async function lc(e){if(e)try{oc(await e.text())}catch(e){V(rc,e instanceof Error?e.message:String(e),!0)}}function uc(e){e.preventDefault(),V(cc,!1),lc(e.dataTransfer?.files?.[0])}let dc=j(null);function pc(){try{V(dc,null);let e=p(nc).trim();if(e.startsWith(`{`)&&/"(openapi|swagger|paths)"\s*:/.test(e)){let{entities:t,sources:n,warnings:r}=yN(e),i=p(W);for(let e of t){i=Cn(i,e);let t=n[e.name];t&&(i=ht(i,e.name,t))}br(i),V(nc,``),V(rc,null),V(dc,`Imported ${t.length} REST resource${t.length===1?``:`s`}.${r.length?` `+r.join(` `):``}`),V(ec,`none`);return}let t=/\bmodel\s+\w+\s*\{/.test(p(nc))?aN(p(nc)):zM(p(nc)),n=p(W);for(let e of t)n=Cn(n,e);br(n),V(nc,``),V(rc,null),V(ec,`none`)}catch(e){V(rc,e instanceof Error?e.message:String(e),!0)}}let mc=j(!1),hc=j(`desktop`),gc={desktop:`100%`,tablet:`834px`,mobile:`390px`},_c=j(``),yc=j(!1);T(()=>{V(yc,p(hc)!==`desktop`)});let bc=M(()=>p(Bs)===`sidebar`&&p(yc)),xc=j(!1),Cc=j(!1),wc=me({}),Tc=me({}),Ec=me({}),Dc=me({}),kc=M(()=>p(W).screens.find(e=>e.id===p(_c))??p(W).screens[0]),Ac=M(()=>p(kc)?$n(p(W),p(kc).entity):void 0),jc=M(()=>!!p(kc)&&kt(p(kc))===`dock`),Mc=M(()=>!!p(kc)&&kt(p(kc))===`stack`),Nc=M(()=>!!p(kc)&&kt(p(kc))===`split`),Pc=M(()=>!!p(kc)&&kt(p(kc))===`canvas`),Ic=M(()=>p(jc)||p(Nc)),Lc=M(()=>({minSize:p(Nc)&&p(kc)?Vt(p(kc)).minPaneSize:80,allowPopout:p(jc)&&p(kc)?Wt(p(kc)).allowPopout:!1,hideSingleTab:p(jc)&&p(kc)?Wt(p(kc)).hideSingleTab:!1,headerPosition:p(jc)&&p(kc)?Wt(p(kc)).headerPosition:`top`})),Rc=M(()=>{if(!p(kc))return``;if(p(Mc)){let e=st(p(kc));return`gap: ${e.gap}px; --stack-minh: ${e.minHeight}px;`+(e.maxWidth?` max-width: ${e.maxWidth}px;${e.align===`center`?` margin-inline: auto;`:``}`:``)}if(!p(Ic)&&!p(Pc)){let e=Sn(p(kc));return`gap: ${e.rowGap}px ${e.colGap}px; align-items: ${e.align};`+(e.maxWidth?` max-width: ${e.maxWidth}px; margin-inline: auto;`:``)}return``}),zc=M(()=>p(kc)&&p(Ic)?p(kc).id+`|`+p(kc).blocks.map(e=>e.id).join(`,`):``),Bc=j(void 0),Vc=j(``);T(()=>{p(zc)&&p(zc)!==p(Vc)&&(V(Vc,p(zc),!0),V(Bc,p(kc)?Gn(p(kc)).dock??void 0:void 0,!0))});function Uc(){V(_c,p(Zr)?.id??p(W).screens[0]?.id??``,!0),V(mc,!0)}let Wc=j(me({})),Gc=j(null),Kc=j(null),qc=M(()=>p(mc));function Yc(){try{V(Wc,{},!0),V(Gc,null),V(Kc,null);let e=p(W).screens.find(e=>e.id===p(_c))??p(W).screens[0];if(!p(mc)||!e)return;let t=$n(p(W),e.entity),n=t?Ps(t,ss(t)):[],r={},i=[],a=null,o=null,s=[];for(let t of Bn(e))if(t.tier===`component`){let n=Jn(e.blocks).find(e=>e.id===t.blockId);n&&n.config.kind===`component`&&(r[n.id]={props:qr(n.config),text:Yr(n.config)},i.push({name:t.name,id:n.id}))}else t.tier===`grid`?(a=t.name,o=t.blockId):t.tier===`data`&&s.push(t.name);V(Wc,r,!0);let c=()=>p(Gc)??n,l=e=>{V(Gc,Array.isArray(e)?e:[],!0)},u={};for(let e of i)u[e.name]=tM(()=>p(Wc)[e.id],t=>{V(Wc,{...p(Wc),[e.id]:t},!0)});let d=()=>o?Dc[o]:void 0;a&&(u[a]=new Proxy(()=>void 0,{get:(e,t)=>{if(typeof t!=`string`)return;let n=d();return n&&typeof n[t]==`function`?n[t].bind(n):t===`getData`||t===`getDisplayedRows`?()=>c():n&&typeof n.getOption==`function`?n.getOption(t):()=>void 0},set:(e,t,n)=>{if(typeof t!=`string`||/^on[A-Z]/.test(t))return!0;let r=d();return r&&typeof r.setOption==`function`&&r.setOption(t,n),!0},apply:()=>void 0}));for(let e of s)u[e]={setData:e=>l(e),get rows(){return c()},clear:()=>{V(Gc,null)}};u.data={get rows(){return c()},setRows:l,reload:async()=>{}},u.goto=()=>{},u.params={};let m=e.handlerBodies?.onLoad??``,h=()=>{f(()=>nM(m,u)).then(e=>{V(Kc,e,!0)})};if(o){let e=0,t=()=>{d()||e++>30?h():requestAnimationFrame(t)};queueMicrotask(t)}else queueMicrotask(h)}catch(e){V(Kc,e instanceof Error?e.message:String(e),!0)}}function Xc(e,t){return p(qc)&&p(Gc)&&e===p(Ac)?p(Gc):t}T(()=>{if(!p(mc)){V(Wc,{},!0),V(Gc,null),V(Kc,null);return}p(_c),p(W).screens.find(e=>e.id===p(_c))?.handlerBodies?.onLoad,Yc()}),T(()=>{let e=p(mc)?p(W).theme?.customCss??``:``;if(typeof document>`u`||!e.trim())return;let t=document.createElement(`style`);return t.setAttribute(`data-studio-preview-css`,``),t.textContent=e,document.head.appendChild(t),()=>t.remove()});let Zc=j(!1),Qc=j(``),$c=j(!1),el=j(null),tl=[`Add a "status" enum field (new / active / churned) to customers`,`Add a dashboard screen with revenue by tier`,`Make the customers grid drill into orders on row click`,`Add a validation rule: mrr must be >= 0`];function rl(){V(Zc,!0),V(el,null)}async function il(){let e=p(Qc).trim();if(!(!n.onCopilot||!e||p($c))){V($c,!0),V(el,null);try{let t=await n.onCopilot({prompt:e,project:p(W)}),r=on(Re(t));br(r),!r.screens.some(e=>e.id===p(Xr))&&r.screens[0]&&V(Xr,r.screens[0].id,!0),V(Qc,``),V(Zc,!1)}catch(e){V(el,e instanceof Error?e.message:String(e),!0)}finally{V($c,!1)}}}let al=j(!1);function sl(e){let t=e.build();br(t),t.screens[0]&&(V(Xr,t.screens[0].id,!0),V(Fa,null)),V(al,!1)}function cl(){let e=IN({project:p(W),action:p(Zr)?`editing screen "${p(Zr).title}"`:`in the designer`,env:{studioVersion:`web designer`,node:`-`,os:typeof navigator<`u`?navigator.userAgent:`-`}});try{navigator.clipboard?.writeText(e.markdown)}catch{}window.open(e.issueUrl,`_blank`,`noopener,noreferrer`)}let ll=j(!1),ul=j(``);function fl(e){return e.trim().toLowerCase().replace(/[^a-z0-9]+/g,`_`).replace(/^_+|_+$/g,``)}let pl=M(()=>!!fl(p(ul))&&!$n(p(W),fl(p(ul))));function ml(){let e=fl(p(ul));if(!e||$n(p(W),e))return;let t={name:e,idField:`id`,fields:[{field:`id`,type:`number`,primaryKey:!0,readonly:!0},{field:`name`,type:`text`,required:!0}]};br(Cn(p(W),t)),V(Xr,e,!0),V(Fa,null),V(ul,``),V(ll,!1)}let hl=j(null);async function gl(e){if(e){V(hl,null),V(rc,null);try{let t=await e.text(),n=fl(e.name.replace(/\.[^.]+$/,``))||`imported`,r=n,i=2;for(;$n(p(W),r);)r=`${n}_${i++}`;let{schema:a,rows:o,renamed:s}=XM(r,t);if(a.fields.length===0||o.length===0){V(rc,`That file had no rows to import.`);return}let c=Cn(p(W),a);c=ht(c,r,{kind:`memory`,seed:o}),br(c),V(Xr,r,!0),V(Fa,null);let l=s.length?` Renamed ${s.length} column${s.length>1?`s`:``} to safe keys.`:``;V(hl,`Imported ${o.length} row${o.length>1?`s`:``} into "${r}" (${a.fields.length} fields).${l}`)}catch(e){V(rc,e instanceof Error?e.message:String(e),!0)}}}let _l=j(!1),yl=j(!1),bl=M(()=>jn(p(W))),xl=[{value:`auto`,label:`Auto-detect (Vercel / Netlify / Cloudflare)`},{value:`vercel`,label:`Vercel`},{value:`netlify`,label:`Netlify`},{value:`cloudflare`,label:`Cloudflare Pages`},{value:`node`,label:`Node server`}];function Sl(e){br(Tn(p(W),e))}let Cl=j(!1),wl=[{id:`neon`,label:`Neon`,blurb:`Serverless Postgres with a generous free tier - a database in seconds, no card.`,url:`https://neon.tech`,dialect:`postgres`,kind:`sql`,env:[`DATABASE_URL`]},{id:`supabase`,label:`Supabase`,blurb:`Postgres plus auth, storage, and realtime. Use the connection string (server) here.`,url:`https://database.new`,dialect:`supabase`,kind:`sql`,env:[`DATABASE_URL`]},{id:`turso`,label:`Turso`,blurb:`Hosted SQLite (libSQL) that runs at the edge - fast, cheap, great for reads.`,url:`https://turso.tech`,dialect:`turso`,kind:`sql`,env:[`DATABASE_URL`,`DATABASE_AUTH_TOKEN`]}],Tl=j(null);function Dl(e){let t=Me(p(W),`sql`);for(let n of p(W).entities)t=ht(t,n.name,{kind:`sql`,table:n.name,dialect:e.dialect});br(t),V(Tl,e,!0);try{window.open(e.url,`_blank`,`noopener,noreferrer`)}catch{}}async function Ol(){try{await navigator.clipboard.writeText(p(bl).cli),V(yl,!0),setTimeout(()=>V(yl,!1),1600)}catch{}}let kl=j(!1),Al=new RN({introspect:e=>n.onIntrospectDatabase(e),installDriver:e=>n.onInstallDriver(e),canInstall:()=>!!n.onInstallDriver});function jl(){V(kl,!0),Al.reset()}function Ml(e){let t=p(W);for(let n of e.schemas)t=Cn(t,n),t=ht(t,n.name,e.sources[n.name]??{kind:`sql`,table:n.name,dialect:e.dialect});br(t),e.schemas[0]&&(V(Xr,e.schemas[0].name,!0),V(Fa,null))}let Nl=j(!1),Fl=j(`connect`),Il=j(`postgres`),Ll=j(``),Rl=j(!1),zl=j(null),Bl=j(me([])),Vl=j(me({})),Hl=j(0),Ul=j(me([])),Wl=M(()=>LN.find(e=>e.value===p(Il))?.placeholder??``),Gl=M(()=>Object.values(p(Vl)).filter(Boolean).length),Kl=j(`form`),ql=j(me({})),Yl=j(null),Xl=j(null),Zl=j(!1),$l=M(()=>p(Il)!==`turso`),eu=M(()=>p(Kl)===`form`&&p($l));function tu(){try{return wN(p(Il),p(ql))}catch{return``}}let ru=M(()=>p(eu)?tu():p(Ll).trim()),iu=M(()=>xN(p(Il))?``:String(bN[p(Il)]??``));function au(e,t){V(ql,{...p(ql),[e]:t},!0),V(Yl,null)}function ou(e){V(zl,e instanceof Error?e.message:String(e),!0);let t=e;V(Xl,t?.missingDriver?t.driver??null:null,!0)}async function su(){if(!(!n.onIntrospectDatabase||!p(ru))){V(Rl,!0),V(zl,null),V(Yl,null),V(Xl,null);try{let e=await n.onIntrospectDatabase({dialect:p(Il),url:p(ru),action:`test`});V(Yl,e.tables??[],!0),p(Yl).length===0&&V(zl,`Connected, but no tables were found.`)}catch(e){ou(e)}finally{V(Rl,!1)}}}async function cu(){if(n.onInstallDriver){V(Zl,!0),V(zl,null);try{let e=await n.onInstallDriver(p(Il));e.ok?V(Xl,null):V(zl,`Install failed: ${(e.output||e.package||``).slice(-300)}`)}catch(e){V(zl,e instanceof Error?e.message:String(e),!0)}finally{V(Zl,!1)}}}function lu(){V(Nl,!0),V(Fl,`connect`),V(zl,null),V(Bl,[],!0),V(Vl,{},!0),V(Hl,0),V(Ul,[],!0),V(Yl,null),V(Xl,null),V(ql,{},!0)}function uu(e,t){let n=e=>e.toLowerCase().replace(/[^a-z]/g,``).replace(/s$/,``),r=n(e);return t.find(e=>n(e)===r)??t.find(e=>n(e).includes(r)||r.includes(n(e)))??``}async function du(){if(!(!n.onIntrospectDatabase||!p(ru))){V(Rl,!0),V(zl,null),V(Xl,null);try{let e=await n.onIntrospectDatabase({dialect:p(Il),url:p(ru),action:`tables`});V(Bl,e.tables??[],!0);let t={};for(let e of p(W).entities)t[e.name]=uu(e.name,p(Bl));V(Vl,t,!0),V(Fl,`map`),p(Bl).length===0&&V(zl,`No tables found in this database.`)}catch(e){ou(e)}finally{V(Rl,!1)}}}function fu(e){let t=[],n=t=>new Set(($n(e,t)?.fields??[]).map(e=>e.field));for(let r of e.screens){let e=n(r.entity),i=(e,n,i)=>{e&&!n.has(e)&&t.push(`${r.title}: ${i} "${e}"`)};for(let t of r.blocks){let r=t.config;if(r.kind===`chart`)i(r.dimension,e,`chart dimension`),i(r.measure,e,`chart measure`);else if(r.kind===`kpi`)i(r.measure,e,`KPI measure`);else if(r.kind===`master-detail`)i(r.foreignKey,n(r.childEntity),`detail key`);else if(r.kind===`pivot`){for(let t of[...r.rows,...r.cols])i(t,e,`pivot field`);i(r.measure,e,`pivot measure`)}else if(r.kind===`filter`)for(let t of r.fields)i(t,e,`filter facet`);else if(r.kind===`record`&&r.fields)for(let t of r.fields)i(t,e,`record field`)}}return t}let pu=[[`value`,`amount`,`total`,`price`,`cost`,`revenue`,`mrr`,`arr`,`subtotal`,`fee`,`balance`],[`name`,`title`,`subject`,`label`,`fullname`],[`status`,`state`,`stage`,`phase`],[`created`,`createdat`,`placedat`,`opened`,`signed`,`date`,`timestamp`],[`due`,`duedate`,`deadline`,`closedate`,`expires`],[`owner`,`assignee`,`rep`,`manager`,`agent`,`handler`],[`qty`,`quantity`,`count`,`units`,`stock`,`inventory`],[`email`,`mail`],[`phone`,`mobile`,`tel`],[`description`,`notes`,`summary`,`comment`,`detail`],[`company`,`organization`,`account`,`client`,`vendor`,`supplier`]],mu=e=>e.toLowerCase().replace(/[^a-z0-9]/g,``);function hu(e,t,n){let r=t.filter(e=>!n.has(mu(e))),i=mu(e),a=r.find(e=>mu(e)===i);if(a)return a;let o=pu.find(e=>e.includes(i));return o&&(a=r.find(e=>o.includes(mu(e))),a)?a:(a=r.find(e=>mu(e).includes(i)||i.includes(mu(e))),a??``)}function gu(e,t,n){let r=t.fields.map(e=>e.field),i=new Set,a=[],o=[];for(let t of e.fields){let e=hu(t.field,r,i);if(!e){o.push(t.field);continue}i.add(mu(e)),a.push(e===t.field?{...t}:{...t,dbColumn:e})}for(let e of t.fields)i.has(mu(e.field))||a.push({field:e.field,type:e.type,...e.primaryKey?{primaryKey:!0,readonly:!0}:{}});let s=t.idField??t.fields.find(e=>e.primaryKey)?.field;if(!a.some(e=>e.primaryKey)&&s){let e=a.find(e=>(e.dbColumn??e.field)===s);e&&(e.primaryKey=!0,e.readonly=!0)}let c=a.find(e=>e.primaryKey)?.field??a[0]?.field;return{schema:{name:n,...e.label?{label:e.label}:{},idField:c,fields:a},dropped:o}}async function _u(){if(!n.onIntrospectDatabase)return;let e=Object.entries(p(Vl)).filter(([,e])=>e);if(e.length!==0){V(Rl,!0),V(zl,null);try{let t=await n.onIntrospectDatabase({dialect:p(Il),url:p(ru),action:`introspect`,tables:e.map(([,e])=>e)}),r=new Map((t.schemas??[]).map(e=>[e.name,e])),i=p(W),a=0;for(let[t,n]of e){let e=r.get(n),o=$n(i,t);if(!e||!o)continue;let{schema:s}=gu(o,e,t);i=Ut(i,t,s),i=ht(i,t,{kind:`sql`,table:n,dialect:p(Il)}),a++}br(i),V(Hl,a,!0),V(Ul,fu(i),!0),V(Fl,`done`)}catch(e){V(zl,e instanceof Error?e.message:String(e),!0)}finally{V(Rl,!1)}}}let vu=e=>It.find(t=>t.kind===e)?.label??e;function yu(e){return e.config.kind===`component`?qn(e.config.component)?.label??e.config.component:vu(e.config.kind)}function bu(e){return e.config.kind===`tabs`?e.config.tabs.flatMap(e=>e.blocks.map(t=>({block:t,group:e.label}))):e.config.kind===`accordion`?e.config.sections.flatMap(e=>e.blocks.map(t=>({block:t,group:e.label}))):[]}let xu=(e,t)=>!!t&&/\$/.test(e?.fields.find(e=>e.field===t)?.label??``),Su=(e,t,n)=>{let r=pn(n,{measure:e.measure,reduce:e.reduce});if(typeof r!=`number`)return String(r??``);let i=e.format??`auto`;if(i!==`auto`)return tr(r,i);let a=r.toLocaleString(void 0,{maximumFractionDigits:1});return xu(t,e.measure)?`$${a}`:a},Cu=(e,t)=>e.trendField?cn(t,{trendField:e.trendField,measure:e.measure,reduce:e.trendReduce??e.reduce}):[],wu=(e,t)=>{if(e.target!=null&&e.target!==0){let n=pn(t,{measure:e.measure,reduce:e.reduce});return{text:`${Math.round(n/e.target*100)}% of target`,up:n>=e.target}}let n=Vn(Cu(e,t));return n==null?null:{text:`${n>=0?`▲`:`▼`} ${Math.abs(n).toFixed(0)}%`,up:n>=0}};function Tu(e,t,n){let r=t.idField??t.fields.find(e=>e.primaryKey)?.field??`id`,i=new Map(e.map(e=>[String(e[r]),{id:String(e[r]),label:String(e[n.labelField]??e[r]),children:[]}])),a=[];for(let t of e){let e=i.get(String(t[r])),o=t[n.parentField]!=null&&t[n.parentField]!==``?String(t[n.parentField]):null;o&&o!==e.id&&i.has(o)?i.get(o).children.push(e):a.push(e)}return a}let Eu=[`sum`,`avg`,`count`,`min`,`max`],Du=e=>{let t=e.idField??e.fields.find(e=>e.primaryKey)?.field;return e.fields.filter(e=>e.field!==t)},Ou=e=>Du(e).filter(e=>e.type!==`number`&&e.type!==`json`&&e.type!==`relation`),ku=e=>e.fields.filter(e=>e.type===`number`&&!e.primaryKey),Au=e=>Du(e).filter(e=>e.type===`enum`||e.type===`boolean`||e.type===`text`),ju=e=>Du(e).filter(e=>e.type!==`json`&&e.type!==`relation`).map(e=>({field:e.field,label:e.label??e.field,kind:e.type===`number`?`measure`:`dimension`,...e.type===`number`?{defaultAgg:`sum`}:{}})),Mu=e=>({rows:[...e.rows],cols:[...e.cols],values:e.measure?[{field:e.measure,agg:e.aggregate}]:[],filters:[]}),Nu=(e,t)=>t.fields.map(t=>e.fields.find(e=>e.field===t)).filter(e=>!!e),Pu=(e,t)=>t.fields&&t.fields.length?e.fields.filter(e=>t.fields.includes(e.field)):Du(e);function Fu(e,t){return e.includes(t)?e.filter(e=>e!==t):[...e,t]}let Iu=M(()=>p(W).access??{enabled:!1,roles:[]}),Lu=e=>br({...p(W),access:e});function Ru(e){e&&(!p(W).access||p(W).access.roles.length===0)?Lu({enabled:!0,defaultRole:`viewer`,roles:[{role:`admin`,screens:`*`,actions:`*`},{role:`editor`,screens:`*`,actions:[`create`,`update`,`delete`]},{role:`viewer`,screens:`*`,actions:[]}]}):Lu({...p(Iu),enabled:e})}let zu=e=>Lu({...p(Iu),roles:p(Iu).roles.map(e)});function Bu(){let e=new Set(p(Iu).roles.map(e=>e.role)),t=`role`,n=1;for(;e.has(t);)t=`role${++n}`;Lu({...p(Iu),roles:[...p(Iu).roles,{role:t,screens:`*`,actions:[]}]})}function Vu(e){let t=p(Iu).roles.filter(t=>t.role!==e);Lu({...p(Iu),roles:t,defaultRole:p(Iu).defaultRole===e?t[0]?.role:p(Iu).defaultRole})}function Hu(e,t){let n=t.trim();!n||n!==e&&p(Iu).roles.some(e=>e.role===n)||Lu({...p(Iu),roles:p(Iu).roles.map(t=>t.role===e?{...t,role:n}:t),defaultRole:p(Iu).defaultRole===e?n:p(Iu).defaultRole})}let Uu=(e,t)=>e.actions===`*`||e.actions.includes(t);function Wu(e,t){zu(n=>{if(n.role!==e)return n;let r=n.actions===`*`?[...en]:n.actions,i=r.includes(t)?r.filter(e=>e!==t):[...r,t];return{...n,actions:i.length===en.length?`*`:i}})}let Gu=(e,t)=>e.screens===`*`||e.screens.includes(t);function Ku(e,t){zu(n=>{if(n.role!==e)return n;let r=n.screens===`*`?p(W).screens.map(e=>e.id):n.screens,i=r.includes(t)?r.filter(e=>e!==t):[...r,t];return{...n,screens:i.length===p(W).screens.length?`*`:i}})}let qu=(e,t)=>zu(n=>n.role===e?{...n,screens:t?`*`:[]}:n),Ju=[`edit`,`delete`,`navigate`];function Yu(e){let t=p(W).screens.find(t=>t.id===e),n=t?$n(p(W),t.entity):void 0;return n?[...n.fields]:[]}function Xu(e){p(Zr)&&p(Po)&&br(Gt(p(W),p(Zr).id,p(Po).id,{config:e}))}function Zu(e){let t=p(Po).config;Xu({rowActions:[...t.rowActions??[],{kind:e}]})}function Qu(e,t){let n=p(Po).config;Xu({rowActions:(n.rowActions??[]).map((n,r)=>r===e?{...n,...t}:n)})}function $u(e){let t=p(Po).config;Xu({rowActions:(t.rowActions??[]).filter((t,n)=>n!==e)})}let ed=[{value:`eq`,label:`=`},{value:`ne`,label:`≠`},{value:`lt`,label:`<`},{value:`lte`,label:`≤`},{value:`gt`,label:`>`},{value:`gte`,label:`≥`},{value:`contains`,label:`contains`},{value:`empty`,label:`is empty`},{value:`notEmpty`,label:`not empty`}],td=e=>e!==`empty`&&e!==`notEmpty`;function nd(){let e=p(Po).config,t=e.columns.find(e=>e.show)?.field??p(No)?.fields[0]?.field??``;Xu({formatRules:[...e.formatRules??[],{field:t,op:`gt`,value:0,color:`#dc2626`,bold:!0}]})}function rd(e,t){let n=p(Po).config;Xu({formatRules:(n.formatRules??[]).map((n,r)=>r===e?{...n,...t}:n)})}function id(e){let t=p(Po).config;Xu({formatRules:(t.formatRules??[]).filter((t,n)=>n!==e)})}function ad(e,t,n){Xu({formFields:t?n.includes(e)?n:[...n,e]:n.filter(t=>t!==e)})}function od(){let e=p(Po).config;Xu({formSections:[...e.formSections??[],{title:`Section`,fields:[]}]})}function sd(e,t){let n=p(Po).config;Xu({formSections:(n.formSections??[]).map((n,r)=>r===e?{...n,...t}:n)})}function cd(e){let t=p(Po).config;Xu({formSections:(t.formSections??[]).filter((t,n)=>n!==e)})}function ld(e,t){let n=Number(t),r=String(t??``);switch(e){case`eq`:return e=>String(e.value)===r;case`ne`:return e=>String(e.value)!==r;case`lt`:return e=>Number(e.value)<n;case`lte`:return e=>Number(e.value)<=n;case`gt`:return e=>Number(e.value)>n;case`gte`:return e=>Number(e.value)>=n;case`contains`:return e=>String(e.value).toLowerCase().includes(r.toLowerCase());case`empty`:return e=>e.value==null||e.value===``;case`notEmpty`:return e=>e.value!=null&&e.value!==``;default:return null}}function ud(e){let t=[];for(let n of e.formatRules??[]){if((n.op===`lt`||n.op===`lte`||n.op===`gt`||n.op===`gte`)&&!Number.isFinite(Number(n.value)))continue;let e=ld(n.op,n.value);!e||!n.color&&!n.background&&!n.bold||t.push({type:`rule`,columns:[n.field],when:e,...n.background?{background:n.background}:{},...n.color?{color:n.color}:{},...n.bold?{fontWeight:700}:{}})}return t}let dd=M(()=>p(W).i18n??{enabled:!1,locales:[`en`]});function fd(e){e&&(!p(W).i18n||p(W).i18n.locales.length===0)?br({...p(W),i18n:{enabled:!0,locales:[`en`],defaultLocale:`en`}}):br({...p(W),i18n:{...p(dd),enabled:e}})}function pd(e){let t=[...new Set(e.split(`,`).map(e=>e.trim().toLowerCase()).filter(Boolean))];if(!t.length)return;let n=t.includes(p(dd).defaultLocale??``)?p(dd).defaultLocale:t[0];br({...p(W),i18n:{...p(dd),locales:t,defaultLocale:n}})}let md={grid:`M3 3h18v18H3z M3 9h18 M3 15h18 M9 3v18 M15 3v18`,form:`M4 3h16v18H4z M8 8h8 M8 12h8 M8 16h5`,chart:`M4 4v16h16 M8 16v-5 M13 16V8 M18 16v-9`,dashboard:`M3 3h7v8H3z M14 3h7v5h-7z M14 12h7v9h-7z M3 15h7v6H3z`,kpi:`M3 17l5-5 4 3 6-7 M16 8h4v4`,gauge:`M4 20a8 8 0 1 1 16 0 M12 12l4-3`,tree:`M5 3h6v4H5z M13 10h6v4h-6z M13 17h6v4h-6z M8 7v10h5 M8 12h5`,tabs:`M3 7h5v13H3z M9 7h5v13H9z M3 4h18v3H3z`,accordion:`M4 4h16v4H4z M4 10h16v4H4z M4 16h16v4H4z M15 6l-2 0 M15 12l-2 0`,"master-detail":`M4 5h16 M4 10h8 M8 10v10 M8 15h6 M8 20h6`,pivot:`M3 3h18v18H3z M3 9h18 M9 3v18`,filter:`M3 5h18l-7 8v6l-4 2v-8z`,record:`M4 4h16v16H4z M8 9h8 M8 13h8 M8 17h5`,board:`M4 4h4v16H4z M10 4h4v10h-4z M16 4h4v13h-4z`,calendar:`M4 5h16v15H4z M4 9h16 M8 3v4 M16 3v4`,detail:`M4 3h16v18H4z M8 8h8 M8 12h8 M8 16h5`,lookup:`M10 4a6 6 0 1 0 0 12 6 6 0 0 0 0-12z M20 20l-5.5-5.5`,file:`M6 2h9l5 5v15H6z M15 2v5h5`,copy:`M9 9h11v11H9z M5 15H4V4h11v1`,generate:`M8 6l-5 6 5 6 M16 6l5 6-5 6`,import:`M12 15V3 M7 8l5-5 5 5 M4 17v3h16v-3`,save:`M12 3v12 M7 10l5 5 5-5 M4 19h16`,undo:`M9 14l-4-4 4-4 M5 10h11a4 4 0 0 1 0 8h-1`,redo:`M15 14l4-4-4-4 M19 10H8a4 4 0 0 0 0 8h1`,screen:`M3 4h18v13H3z M8 21h8 M12 17v4`,entity:`M4 6c0-1.7 3.6-3 8-3s8 1.3 8 3-3.6 3-8 3-8-1.3-8-3z M4 6v6c0 1.7 3.6 3 8 3s8-1.3 8-3V6 M4 12v6c0 1.7 3.6 3 8 3s8-1.3 8-3v-6`,database:`M4 5c0-1.7 3.6-3 8-3s8 1.3 8 3-3.6 3-8 3-8-1.3-8-3z M4 5v14c0 1.7 3.6 3 8 3s8-1.3 8-3V5 M4 12c0 1.7 3.6 3 8 3s8-1.3 8-3`,plus:`M12 5v14 M5 12h14`,deploy:`M22 2L11 13 M22 2l-7 20-4-9-9-4z`,desktop:`M3 4h18v12H3z M8 20h8 M12 16v4`,tablet:`M6 3h12a1 1 0 0 1 1 1v16a1 1 0 0 1-1 1H6a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1z M11 18h2`,mobile:`M8 2h8a1 1 0 0 1 1 1v18a1 1 0 0 1-1 1H8a1 1 0 0 1-1-1V3a1 1 0 0 1 1-1z M11 18h2`,chevron:`M9 6l6 6-6 6`,close:`M6 6l12 12 M18 6L6 18`},hd=e=>md[e]??md.file,gd=j(!1),_d=j(null),Y=j(!1),vd=M(()=>p(Zs)?.find(e=>e.path===p(_d))??p(Zs)?.[0]),yd=j(`app`);function bd(){V(Zs,p(yd)===`fragment`?sn(p(W)):er(p(W)),!0),p(Zs).some(e=>e.path===p(_d))||V(_d,(p(Zs).find(e=>e.path.endsWith(`+page.svelte`))??p(Zs)[0])?.path??null,!0)}function xd(){bd();let e=p(Zs)??[];V(_d,(e.find(e=>e.path.endsWith(`+page.svelte`))??e[0])?.path??null,!0),V(gd,!0)}let Sd=e=>e.replace(/^src\//,``);async function Cd(){if(p(vd))try{await navigator.clipboard.writeText(p(vd).contents),V(Y,!0),setTimeout(()=>V(Y,!1),1200)}catch{}}let wd=j(!1);async function Td(){if(p(Zs)){V(wd,!0);try{let t=(await Ye(async()=>{let{default:t}=await import(`./jszip.min-CX2fPs3O.js`).then(t=>e(t.default));return{default:t}},__vite__mapDeps([0,1]),import.meta.url)).default,n=new t;for(let e of p(Zs))n.file(e.path,e.contents);let r=await n.generateAsync({type:`blob`}),i=URL.createObjectURL(r),a=document.createElement(`a`);a.href=i,a.download=`${(p(W).title||`studio-app`).toLowerCase().replace(/[^a-z0-9]+/g,`-`).replace(/^-+|-+$/g,``)||`studio-app`}.zip`,document.body.appendChild(a),a.click(),a.remove(),URL.revokeObjectURL(i)}catch{alert(`Download needs the "jszip" package. Install it (npm i jszip) or copy the files individually.`)}finally{V(wd,!1)}}}function Ed(){if(!p(Zs))return;let e=document.createElement(`form`);e.method=`POST`,e.action=`https://stackblitz.com/run`,e.target=`_blank`;let t=(t,n)=>{let r=document.createElement(`input`);r.type=`hidden`,r.name=t,r.value=n,e.appendChild(r)};for(let e of p(Zs))t(`project[files][${e.path}]`,e.contents);t(`project[title]`,p(W).title||`SvGrid Studio app`),t(`project[description]`,`Generated with SvGrid Studio`),t(`project[template]`,`node`),document.body.appendChild(e),e.submit(),e.remove()}let Dd=j(`idle`);async function Od(){if(!(!p(Zs)||!n.onWriteToDisk)){V(Dd,`busy`);try{await n.onWriteToDisk(p(Zs)),V(Dd,`done`),setTimeout(()=>V(Dd,`idle`),1600)}catch{V(Dd,`idle`)}}}let kd=j(200),Ad=j(290),jd=j(null),Md=(e,t,n)=>Math.max(t,Math.min(e,n)),Nd=j(!1),Pd=j(`none`),Fd=j(!1);T(()=>{if(typeof window>`u`||!window.matchMedia)return;let e=window.matchMedia(`(max-width: 900px)`),t=()=>{V(Fd,e.matches,!0),e.matches||V(Pd,`none`)};return t(),e.addEventListener(`change`,t),()=>e.removeEventListener(`change`,t)});let Id=M(()=>p(Nd)?`0px 0px minmax(0, 1fr) 6px ${p(Ad)}px`:`${p(kd)}px 6px minmax(0, 1fr) 6px ${p(Ad)}px`);function Ld(){V(Pd,p(Pd)===`insp`?`none`:`insp`,!0)}T(()=>{p(Fd)&&p(Fa)&&V(Pd,`insp`)});let Rd=e=>e.config.kind===`grid`?e.config.scheduler?640:440:200,zd=new Set([`grid`,`chart`,`master-detail`,`pivot`]),Bd=e=>zd.has(e.config.kind),Vd=new Set([`grid`,`master-detail`]),Hd=e=>Vd.has(e.config.kind);function Ud(e){let t=e.style;if(!t)return``;let n=[];return t.border===!1?n.push(`border-color: transparent`):t.border===!0&&n.push(`border: 1px solid var(--sg-border)`),t.shadow===!1?n.push(`box-shadow: none`):t.shadow===!0&&n.push(`box-shadow: 0 1px 2px rgba(15, 23, 42, 0.06)`),t.background&&n.push(`background: ${t.background}`),typeof t.radius==`number`&&n.push(`border-radius: ${t.radius}px`),typeof t.margin==`number`&&n.push(`margin: ${t.margin}px`),n.length?`; `+n.join(`; `):``}let Wd=e=>typeof e.style?.padding==`number`?`padding:${e.style.padding}px;`:``,Gd=j(null),Kd=j(0),qd=0,Jd=0,Yd=e=>p(Gd)===e.id?p(Kd):e.height??Rd(e);function Xd(e,t){t.preventDefault(),t.stopPropagation(),V(Gd,e.id,!0),qd=t.clientY,Jd=e.height??Rd(e),V(Kd,Jd,!0),t.currentTarget.setPointerCapture(t.pointerId)}function Zd(e){p(Gd)&&V(Kd,Md(Jd+(e.clientY-qd),120,900),!0)}function Qd(){let e=p(Gd);if(V(Gd,null),!e||!p(Zr))return;let t=p(Zr).blocks.find(t=>t.id===e);t&&p(Kd)!==(t.height??Rd(t))&&br(Gt(p(W),p(Zr).id,e,{height:p(Kd)}))}let $d=j(null),ef=j(4),tf=0,nf=0,rf=60,af=e=>p($d)===e.id?p(ef):Ne(e);function of(e,t){t.preventDefault(),t.stopPropagation(),V($d,e.id,!0),tf=t.clientX,nf=Ne(e);let n=t.currentTarget.closest(`.sv-studio__block`)?.closest(`.sv-studio__canvas`);n&&(rf=(n.clientWidth-132)/12),V(ef,nf,!0),t.currentTarget.setPointerCapture(t.pointerId)}function sf(e){if(!p($d))return;let t=Math.round((e.clientX-tf)/Math.max(rf,1));V(ef,Md(nf+t,1,12),!0)}function cf(){let e=p($d);if(V($d,null),!e||!p(Zr))return;let t=p(Zr).blocks.find(t=>t.id===e);t&&p(ef)!==Ne(t)&&br(Gt(p(W),p(Zr).id,e,{colSpan:p(ef)}))}let lf=(e,t)=>br(Gt(p(W),p(Zr).id,e.id,{colSpan:t})),uf=e=>{p(Zr)&&p(Po)&&br(Gt(p(W),p(Zr).id,p(Po).id,{style:e}))},df=e=>e===!0?`on`:e===!1?`off`:``,ff=e=>e===`on`||e!==`off`&&void 0,pf=e=>e===``?void 0:Number(e);function mf(e){let t=e.target,n=!!t&&(/^(INPUT|TEXTAREA|SELECT)$/.test(t.tagName)||t.isContentEditable),r=e.ctrlKey||e.metaKey;if(r&&(e.key===`z`||e.key===`Z`)){e.preventDefault(),e.shiftKey?Sr():xr();return}if(r&&(e.key===`y`||e.key===`Y`)){e.preventDefault(),Sr();return}if(r&&(e.key===`d`||e.key===`D`)&&p(Fa)&&!n){e.preventDefault(),ma(p(Fa));return}if(r&&(e.key===`c`||e.key===`C`)&&p(Fa)&&!n&&!window.getSelection()?.toString()){e.preventDefault(),ka();return}if(r&&(e.key===`v`||e.key===`V`)&&p(xa)&&!n){e.preventDefault(),Aa();return}if(e.key===`?`&&!n){e.preventDefault(),V(Sa,!p(Sa));return}if(e.key===`Escape`){p(Sa)?V(Sa,!1):p(ws)?V(ws,null):p(Pr)?V(Pr,null):p(Ca)?V(Ca,!1):p(Cc)?V(Cc,!1):p(xc)?V(xc,!1):p(_l)?V(_l,!1):p(Cl)?V(Cl,!1):p(Zc)?V(Zc,!1):p(mc)?V(mc,!1):p(fp)?V(fp,!1):p(gd)?V(gd,!1):p(ec)===`none`?V(Fa,null):V(ec,`none`);return}!n&&!p(gd)&&!p(fp)&&(e.key===`Delete`||e.key===`Backspace`)&&p(Fa)&&(e.preventDefault(),Nr())}let hf=j(null),gf=j(null),_f=j(null),vf=j(null),yf=j(null);function bf(e,t){V(hf,t,!0),V(gf,null),V(_f,null),e.dataTransfer&&(e.dataTransfer.effectAllowed=`copy`,e.dataTransfer.setData(`text/plain`,t))}function xf(e,t){V(gf,t,!0),V(hf,null),V(_f,null),e.dataTransfer&&(e.dataTransfer.effectAllowed=`copy`,e.dataTransfer.setData(`text/plain`,`component:${t}`))}function Sf(e,t){if(p(Gd)||p($d)){e.preventDefault();return}V(_f,t,!0),V(hf,null),e.dataTransfer&&(e.dataTransfer.effectAllowed=`move`,e.dataTransfer.setData(`text/plain`,t))}function Cf(e,t){if(!p(hf)&&!p(gf)&&!p(_f))return;e.preventDefault();let n=e.currentTarget.getBoundingClientRect();V(yf,e.clientX>n.left+n.width/2?t+1:t,!0),e.dataTransfer&&(e.dataTransfer.dropEffect=p(_f)?`move`:`copy`)}function wf(e){(p(hf)||p(gf)||p(_f))&&e.preventDefault()}function Tf(e){if(!p(Zr))return;e.preventDefault();let t=p(yf)??p(Zr).blocks.length;if(p(gf))Ii(p(gf),t);else if(p(hf))Fr(p(hf),t);else if(p(_f)){let e=p(Zr).blocks.findIndex(e=>e.id===p(_f));br(ar(p(W),p(Zr).id,p(_f),e<t?t-1:t))}Ef()}function Ef(){V(hf,null),V(gf,null),V(_f,null),V(yf,null)}function Df(e){p(No)&&br(Ut(p(W),p(No).name,e))}let Of=[{value:`required`,label:`is required`},{value:`gt`,label:`>`},{value:`gte`,label:`≥`},{value:`lt`,label:`<`},{value:`lte`,label:`≤`},{value:`eq`,label:`=`},{value:`ne`,label:`≠`},{value:`minLen`,label:`min length`},{value:`maxLen`,label:`max length`}],kf=e=>e!==`required`;function Af(){if(!p(No))return;let e=p(No).fields.find(e=>!e.primaryKey)?.field??p(No).fields[0]?.field??``;Df({...p(No),validations:[...p(No).validations??[],{field:e,op:`required`,message:`This field is required`}]})}function jf(e,t){p(No)&&Df({...p(No),validations:(p(No).validations??[]).map((n,r)=>r===e?{...n,...t}:n)})}function Mf(e){p(No)&&Df({...p(No),validations:(p(No).validations??[]).filter((t,n)=>n!==e)})}let Nf=j(null),Pf=j(null);function Ff(e,t){if(!p(Nf))return;e.preventDefault();let n=e.currentTarget.getBoundingClientRect();V(Pf,e.clientY>n.top+n.height/2?t+1:t,!0)}function If(){if(!p(No)||!p(Nf)||p(Pf)==null){V(Nf,null),V(Pf,null);return}let e=p(No).fields.findIndex(e=>e.field===p(Nf)),t=[...p(No).fields],[n]=t.splice(e,1);t.splice(Math.max(0,Math.min(e<p(Pf)?p(Pf)-1:p(Pf),t.length)),0,n),Df({...p(No),fields:t}),V(Nf,null),V(Pf,null)}function Lf(e,t){p(Zr)&&p(Po)&&br(Gt(p(W),p(Zr).id,p(Po).id,{config:{columns:t}}))}function Rf(e,t,n){Lf(e,e.columns.map(e=>e.field===t?{...e,show:n}:e))}function zf(e,t,n){Lf(e,e.columns.map(e=>e.field===t?{...e,...n}:e))}function Bf(e,t,n){let r=t+n;if(r<0||r>=e.columns.length)return;let i=[...e.columns];[i[t],i[r]]=[i[r],i[t]],Lf(e,i)}function Vf(e){let t=String(e??``).toLowerCase().trim();return[`active`,`open`,`success`,`done`,`paid`,`approved`,`complete`,`completed`,`won`,`shipped`,`yes`,`true`].includes(t)?`success`:[`pending`,`warning`,`in progress`,`processing`,`trial`,`review`,`on hold`,`medium`].includes(t)?`warning`:[`closed`,`error`,`failed`,`cancelled`,`canceled`,`overdue`,`rejected`,`lost`,`blocked`,`inactive`,`no`,`false`,`high`,`urgent`].includes(t)?`danger`:[`new`,`info`,`draft`,`low`].includes(t)?`info`:`neutral`}function Hf(e){return e.cellType?`cell:${e.cellType.kind}`:e.format?e.format.type:``}function Uf(e,t,n){if(n.startsWith(`cell:`)){let r=n.slice(5);zf(e,t.field,{cellType:{kind:r},format:void 0})}else n?zf(e,t.field,{format:{type:n},cellType:void 0}):zf(e,t.field,{format:void 0,cellType:void 0})}function Wf(e,t,n){t.format&&zf(e,t.field,{format:{...t.format,...n}})}function Gf(e,t,n){t.cellType&&zf(e,t.field,{cellType:{...t.cellType,...n}})}function Kf(e,t,n){let r={...e.filterUi??{global:!0},[t]:n||void 0};Xu({filterUi:r.global||r.row||r.menu?r:{global:!0}})}function qf(e,t,n){let r={...e.export??{},[t]:n||void 0};Xu({export:r.csv||r.json||r.copy||r.xlsx||r.pdf||r.print?r:void 0})}async function Jf(e,t,n){let r=Dc[e];if(r)try{let{exportGrid:e}=await Ye(async()=>{let{exportGrid:e}=await import(`./src-LRVqg7Sf.js`).then(e=>e.t);return{exportGrid:e}},__vite__mapDeps([2,1,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17]),import.meta.url);await e(r,{format:t,filename:n})}catch(e){console.error(`Export failed:`,e),alert(`Export failed: `+(e instanceof Error?e.message:String(e)))}}async function Yf(e,t){let n=Dc[e];if(n)try{let{printGrid:e}=await Ye(async()=>{let{printGrid:e}=await import(`./src-LRVqg7Sf.js`).then(e=>e.t);return{printGrid:e}},__vite__mapDeps([2,1,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17]),import.meta.url);await e(n,{title:t})}catch(e){console.error(`Print failed:`,e),alert(`Print failed: `+(e instanceof Error?e.message:String(e)))}}function Xf(e,t,n){let r=e.grouping??[],i=n?[...r.filter(e=>e!==t),t]:r.filter(e=>e!==t);Xu({grouping:i.length?i:void 0,...i.length?{treeData:void 0,scheduler:void 0}:{}})}function Zf(e,t){if(!t){Xu({treeData:void 0});return}Xu({treeData:{parentField:p(ei).find(e=>/parent|manager|reports_to/i.test(e))??p(ei)[0]??``,labelField:e.columns.find(e=>e.show)?.field??p(ei)[0]??``},grouping:void 0,scheduler:void 0})}function Qf(e,t){e.treeData&&Xu({treeData:{...e.treeData,...t}})}function $f(e,t){if(!t){Xu({scheduler:void 0});return}Xu({scheduler:{startField:(p(No)?.fields??[]).filter(e=>e.type===`date`||/date|start|when|time|due|created/i.test(e.field))[0]?.field??p(ei)[0]??``,titleField:e.columns.find(e=>e.show)?.field??p(ei)[0]??``,initialView:`month`,drawer:!0},grouping:void 0,treeData:void 0})}function ep(e,t){e.scheduler&&Xu({scheduler:{...e.scheduler,...t}})}let tp=e=>($n(p(W),e)?.fields??[]).filter(e=>e.type===`text`||e.type===`enum`);function np(e){switch(e){case`number`:return[{value:``,label:`Number input`},{value:`slider`,label:`Slider`},{value:`rating`,label:`Rating`}];case`boolean`:return[{value:``,label:`Switch`}];case`date`:case`dateString`:return[{value:``,label:`Date`},{value:`datetime`,label:`Date + time`}];case`datetime`:return[{value:``,label:`Date + time`},{value:`date`,label:`Date only`},{value:`time`,label:`Time only`}];case`enum`:case`relation`:return[{value:``,label:`Dropdown`},{value:`rich-select`,label:`Searchable`}];case`json`:return[{value:``,label:`Textarea`}];default:return[{value:``,label:`Text`},{value:`textarea`,label:`Multiline`},{value:`chips`,label:`Tags`},{value:`password`,label:`Password`},{value:`color`,label:`Color`},{value:`phone`,label:`Phone`},{value:`country`,label:`Country`},{value:`mask`,label:`Masked`}]}}let rp=e=>np(e).length>1;function ip(e){if(!p(No))return;let t=(e.options?.length??0)+1,n=[...e.options??[],{value:`option-${t}`,label:`Option ${t}`}];Df(EM(p(No),e.field,{options:n}))}function ap(e,t,n){if(!p(No))return;let r=(e.options??[]).map((e,r)=>r===t?{...e,...n}:e);Df(EM(p(No),e.field,{options:r}))}function op(e,t){if(!p(No))return;let n=(e.options??[]).filter((e,n)=>n!==t);Df(EM(p(No),e.field,{options:n.length?n:void 0}))}function sp(e,t){if(!p(No))return;let n={...e.input??{},...t};for(let e of Object.keys(n)){let t=n[e];(t===``||t==null)&&delete n[e]}let r=Object.keys(n).length?n:void 0;Df(EM(p(No),e.field,{input:r}))}let cp=[`GET`,`POST`,`PUT`,`PATCH`,`DELETE`],lp=[`postgres`,`mysql`,`sqlite`,`mssql`,`supabase`,`turso`],up=[`query`,`path`,`header`,`body`],dp=j(`query`),fp=j(!1),pp=j(null),mp=M(()=>p(pp)?$n(p(W),p(pp)):p(No)),hp=j(``),gp=j(null),_p=j(null),vp=j(!1),yp=j(!1);function bp(e,t){let n=e.querySelector(t.handle),r=null,i=i=>{if(t.maximized||i.target.closest(`button`))return;let a=e.getBoundingClientRect();e.style.position=`fixed`,e.style.margin=`0`,e.style.left=`${a.left}px`,e.style.top=`${a.top}px`,r={dx:i.clientX-a.left,dy:i.clientY-a.top};try{n?.setPointerCapture(i.pointerId)}catch{}i.preventDefault()},a=t=>{r&&(e.style.left=`${Math.min(Math.max(t.clientX-r.dx,0),window.innerWidth-120)}px`,e.style.top=`${Math.min(Math.max(t.clientY-r.dy,0),window.innerHeight-44)}px`)},o=e=>{r=null;try{n?.releasePointerCapture(e.pointerId)}catch{}},s=e=>{e?.addEventListener(`pointerdown`,i),e?.addEventListener(`pointermove`,a),e?.addEventListener(`pointerup`,o)},c=e=>{e?.removeEventListener(`pointerdown`,i),e?.removeEventListener(`pointermove`,a),e?.removeEventListener(`pointerup`,o)},l=t=>{e.classList.toggle(`is-max`,t),t&&(e.style.left=e.style.top=e.style.width=e.style.height=e.style.position=e.style.margin=``)};return s(n),l(t.maximized),{update(r){r.handle!==t.handle&&(c(n),n=e.querySelector(r.handle),s(n)),t=r,l(r.maximized)},destroy(){c(n)}}}T(()=>{p(fp)||(V(pp,null),V(hp,``),V(gp,null),V(_p,null),V(vp,!1))}),T(()=>{p(Ca)||V(yp,!1)});function xp(e){dn(p(W),e).kind!==`memory`&&dn(p(W),e).kind!==`pglite`&&(V(pp,e,!0),V(hp,``),V(gp,null),V(_p,null),V(Bp,null),V(vp,!1),V(Ca,!1),V(fp,!0))}let Sp=M(()=>p(mp)?dn(p(W),p(mp).name):{kind:`memory`});function Cp(e){p(mp)&&br(ht(p(W),p(mp).name,e))}function wp(e,t){let n=dn(p(W),e);if(n.kind===t)return;let r=rt(t,e),i=n.kind===`memory`||n.kind===`pglite`?n.seed:void 0;i&&(r.kind===`memory`||r.kind===`pglite`)&&(r.seed=i),br(ht(p(W),e,r))}function Tp(e){p(No)&&wp(p(No).name,e)}function Ep(e){p(Sp).kind===`rest`&&Cp({...p(Sp),...e})}function Dp(e){Ep({adapter:e===`none`?void 0:e===`offsetLimit`?{kind:`offsetLimit`}:e===`dummyjson`?{kind:`dummyjson`}:{kind:`jsonServer`}})}function Op(e){let t=p(Sp).kind===`rest`?p(Sp).adapter:void 0;t?.kind===`offsetLimit`&&Ep({adapter:{...t,...e}})}function kp(e){if(e.kind===`dummyjson`)return mM(e.rowsKey);if(e.kind===`jsonServer`)return hM();let{kind:t,...n}=e;return pM(n)}let Ap=M(()=>{if(!p(W).entities.length)return null;let e=new Set(p(W).entities.map(e=>dn(p(W),e.name).kind));return e.size===1&&e.has(`memory`)?`memory`:e.size===1&&e.has(`pglite`)?`pglite`:null}),jp=M(()=>{let e=new Map;for(let t of p(W).entities){let n=dn(p(W),t.name).kind;e.set(n,(e.get(n)??0)+1)}return[...e].map(([e,t])=>`${ts[e]} ×${t}`).join(` · `)||ts[p(W).dataSource]});function Mp(e){if(p(Ap)===e)return;let t=Me(p(W),e);for(let n of p(W).entities){let r=dn(p(W),n.name),i=r.kind===`memory`||r.kind===`pglite`?r.seed:void 0;t=ht(t,n.name,e===`pglite`?{kind:`pglite`,table:n.name,...i?{seed:i}:{}}:{kind:`memory`,...i?{seed:i}:{}})}br(t)}let Np=e=>[...e.matchAll(/\{([^}]+)\}/g)].map(e=>e[1]);function Pp(e){if(p(Sp).kind!==`rest`)return;let t=Np(e),n=p(Sp).params.filter(e=>e.location!==`path`),r=new Set,i=t.filter(e=>!r.has(e)&&r.add(e)).map(e=>p(Sp).kind===`rest`?p(Sp).params.find(t=>t.location===`path`&&t.name===e)??{name:e,location:`path`,type:`string`,value:``}:{name:e,location:`path`,type:`string`,value:``});Ep({path:e,params:[...n,...i]})}function Fp(e){return p(Sp).kind===`rest`?p(Sp).params.filter(t=>t.location===e):[]}function Ip(e){p(Sp).kind===`rest`&&Ep({params:[...p(Sp).params,{name:``,location:e,type:`string`,value:``}]})}function Lp(e,t){p(Sp).kind===`rest`&&Ep({params:p(Sp).params.map(n=>n===e?{...n,...t}:n)})}function Rp(e){p(Sp).kind===`rest`&&Ep({params:p(Sp).params.filter(t=>t!==e)})}let zp=j(!1),Bp=j(null),Vp=j(me([])),Hp=j(!1);function Up(e){return{url:e.url??p(W).supabase?.url,key:e.key??p(W).supabase?.key}}function Wp(e){let t={...p(W),supabase:{...p(W).supabase,...e}},n=p(Sp);if(n.kind===`supabase`&&(n.url||n.key)&&p(mp)){let{url:e,key:r,...i}=n;t=ht(t,p(mp).name,i)}br(t)}let Gp={postgres:`postgresql://user:pass@host:5432/db`,supabase:`postgresql://postgres:pass@db.<ref>.supabase.co:5432/postgres`,mysql:`mysql://user:pass@host:3306/db`,mssql:`sqlserver://user:pass@host:1433;database=db`,sqlite:`/path/to/app.db`,turso:`libsql://your-db.turso.io`};function Kp(e){let t=e.trim().toLowerCase();return t.startsWith(`libsql://`)||t.includes(`.turso.io`)?`turso`:t.startsWith(`mysql`)?`mysql`:t.startsWith(`sqlserver://`)||t.startsWith(`mssql://`)||t.includes(`sqlserver`)?`mssql`:t.startsWith(`postgres`)&&t.includes(`supabase.co`)?`supabase`:t.startsWith(`postgres`)?`postgres`:/\.(db|sqlite|sqlite3)(\?|$)/.test(t)||t.length>0&&!t.includes(`://`)?`sqlite`:`postgres`}function qp(e){return{placeholder:Gp[e.dialect??`postgres`],parsed:p(gp)}}function Jp(e){let t=p(hp).trim();if(!t)return;let n=Kp(t),r=TN(n===`turso`||n===`supabase`?`postgres`:n,t);Cp({...e,dialect:n}),V(gp,{dialect:n,host:typeof r.host==`string`?r.host:void 0,database:r.database},!0)}let Yp=j(!1),Xp=j(!1),Zp=j(!1);async function Qp(){try{await navigator.clipboard.writeText(`npx @svgrid/studio designer`),V(Zp,!0),setTimeout(()=>V(Zp,!1),1600)}catch{}}async function $p(e){let t=p(mp);if(!t||!n.onIntrospectDatabase)return;let r=p(hp).trim();if(!r){V(Bp,{ok:!1,message:`Paste your connection string above first, then Preview data.`},!0);return}V(Yp,!0),V(Bp,null),V(_p,null);try{let i=e.dialect??Kp(r),a=(await n.onIntrospectDatabase({dialect:i,url:r,action:`preview`,tables:[e.table||t.name],schema:e.schema})).rows??[];V(as,{...p(as),[t.name]:a},!0),V(Bp,{ok:!0,message:`OK - ${a.length} row${a.length===1?``:`s`} from ${e.table||t.name}.`},!0)}catch(e){let t=e;V(_p,t?.missingDriver?t.driver??null:null,!0),V(Bp,{ok:!1,message:e instanceof Error?e.message:String(e)},!0)}finally{V(Yp,!1)}}async function em(e){if(n.onInstallDriver){V(Xp,!0),V(Bp,null);try{let t=e.dialect??Kp(p(hp).trim()),r=await n.onInstallDriver(t);r.ok?(V(_p,null),await $p(e)):V(Bp,{ok:!1,message:`Install failed: ${(r.output||r.package||``).slice(-300)}`},!0)}catch(e){V(Bp,{ok:!1,message:e instanceof Error?e.message:String(e)},!0)}finally{V(Xp,!1)}}}async function tm(){if(p(Sp).kind!==`supabase`)return;let e=Up(p(Sp));if(!e.url||!e.key){V(Bp,{ok:!1,message:`Set the project URL and the anon key first.`},!0);return}V(Hp,!0),V(Bp,null);try{V(Vp,await bM(e.url,e.key),!0),V(Bp,p(Vp).length?{ok:!0,message:`Found ${p(Vp).length} table${p(Vp).length===1?``:`s`}. Pick one, then Import schema.`}:{ok:!1,message:`No tables listed (the OpenAPI doc may be CORS-blocked or the key is wrong). You can still type the table name.`},!0)}catch(e){V(Bp,{ok:!1,message:e instanceof Error?e.message:String(e)},!0)}finally{V(Hp,!1)}}async function nm(){let e=p(mp);if(!e||p(Sp).kind!==`supabase`)return;let t=p(Sp),n=Up(t);if(!n.url||!n.key){V(Bp,{ok:!1,message:`Set the project URL and the anon key first.`},!0);return}V(Hp,!0),V(Bp,null);try{let r=await xM({url:n.url,key:n.key,table:t.table||e.name});r&&r.fields.length?(br(Ut(p(W),e.name,{...e,idField:r.idField,fields:r.fields})),V(Bp,{ok:!0,message:`Imported ${r.fields.length} fields from "${t.table||e.name}".`},!0),await am()):(await am(),cm())}catch(e){V(Bp,{ok:!1,message:e instanceof Error?e.message:String(e)},!0)}finally{V(Hp,!1)}}let rm=(e,t)=>{let n=(e??``).replace(/\/+$/,``),r=(t??``).replace(/^\/+/,``);return n?r?`${n}/${r}`:n:r},im=(e,t)=>t?t.split(`.`).filter(Boolean).reduce((e,t)=>e==null?e:e[t],e):e;async function am(){let e=p(mp);if(!e)return;let t=p(Sp);V(zp,!0),V(Bp,null);try{let n;if(t.kind===`rest`){let r=t.path;for(let e of t.params)e.location===`path`&&e.value&&(r=r.split(`{${e.name}}`).join(e.value));let i=Object.fromEntries(t.params.filter(e=>e.location===`header`&&e.value).map(e=>[e.name,e.value])),a=Object.fromEntries(t.params.filter(e=>e.location===`query`&&e.value).map(e=>[e.name,e.value])),o=t.adapter?kp(t.adapter):{parse:t.rowsPath||t.totalPath?e=>{let n=im(e,t.rowsPath)??[];return{rows:n,rowCount:Number(im(e,t.totalPath)??n.length)}}:void 0};n=dM({url:rm(t.baseUrl,r),schema:e,headers:i,query:a,...o})}else if(t.kind===`supabase`){let r=Up(t);if(!r.url||!r.key)throw Error(`Set the project URL and the anon key first.`);n=dM({url:`${r.url.replace(/\/+$/,``)}/rest/v1/${t.table}`,schema:e,headers:{apikey:r.key,Authorization:`Bearer ${r.key}`},query:{select:`*`}})}else return;let r=await n.getRows({startRow:0,endRow:25,pageIndex:0,pageSize:25,sortModel:[],filterModel:{}}),i=[...r.rows];V(as,{...p(as),[e.name]:i},!0),V(Bp,{ok:!0,message:`OK - ${r.rowCount} rows returned.`},!0)}catch(e){V(Bp,{ok:!1,message:e instanceof Error?e.message:String(e)},!0)}finally{V(zp,!1)}}let om=e=>{let t=e==null?``:typeof e==`object`?JSON.stringify(e):String(e);return t.length>48?t.slice(0,47)+`…`:t},sm=e=>typeof e==`number`?`number`:typeof e==`boolean`?`boolean`:e&&typeof e==`object`?`json`:`text`;function cm(){let e=p(mp);if(!e)return;let t=p(as)[e.name]??[];if(!t.length)return;let n=Object.keys(t[0]??{});if(!n.length)return;let r=n.includes(`id`)?`id`:n[0],i=n.map(e=>{let n=t.map(t=>t[e]).find(e=>e!=null);return{field:e,type:sm(n),...e===r?{primaryKey:!0}:{}}});br(Ut(p(W),e.name,{...e,idField:r,fields:i})),V(Bp,{ok:!0,message:`Imported ${i.length} fields from the response.`},!0)}var lm=bW();C(`keydown`,fe,mf);let um;var dm=B(lm),fm=B(dm),pm=B(fm);o(B(pm),()=>`dashboard`),H(pm),D(2),H(fm);var mm=k(fm,4);N(mm);var hm=k(mm,2),gm=e=>{var t=QI();let n;w(()=>n=Ce(t,1,`sv-studio__tb-btn svelte-psjrav`,null,n,{"is-active":p(Pd)===`insp`})),x(`click`,t,Ld),d(e,t)};h(hm,e=>{p(Fd)&&e(gm)});var _m=k(hm,2),vm=B(_m);let ym;var bm=B(vm),xm=k(bm,2),Sm=B(xm,!0);H(xm),o(k(xm,2),()=>`chevron`),H(vm);var Cm=k(vm,2),wm=e=>{var t=nL(),r=I(t),i=k(r,2),a=B(i),o=e=>{var t=$I(),n=B(t);let r;var i=k(n,2);let a;H(t),w(()=>{r=Ce(n,1,`svelte-psjrav`,null,r,{"is-active":p(Fs)===`light`}),a=Ce(i,1,`svelte-psjrav`,null,a,{"is-active":p(Fs)===`dark`})}),x(`click`,n,()=>br(Rt(p(W),{mode:`light`}))),x(`click`,i,()=>br(Rt(p(W),{mode:`dark`}))),d(e,t)};h(a,e=>{n.appearance||e(o)});var s=k(a,2);se(s,21,()=>Jt,e=>e.id,(e,t)=>{let n=M(()=>(p(W).theme?.preset??`tailwind`)===p(t).id),r=M(()=>p(t)[p(Fs)]);var i=eL();let a;var o=k(B(i),2),s=B(o,!0);H(o),H(i),w(()=>{a=Ce(i,1,`sv-studio__theme svelte-psjrav`,null,a,{"is-active":p(n)}),R(i,`aria-checked`,p(n)),R(i,`title`,p(t).name),A(i,`--pv-bg: ${p(r).bg??``}; --pv-header: ${p(r).headerBg??``}; --pv-border: ${p(r).border??``}; --pv-accent: ${p(r).accent??``}; --pv-fg: ${p(r).fg??``}`),v(s,p(t).name)}),x(`click`,i,()=>br($e(p(W),p(t).id))),d(e,i)}),H(s);var c=k(s,2),l=k(B(c)),u=B(l);N(u);var f=k(u,2),m=e=>{var t=tL();x(`click`,t,()=>br(Rt(p(W),{accent:void 0}))),d(e,t)};h(f,e=>{p(W).theme?.accent&&e(m)}),H(l),H(c);var g=k(c,2),_=k(B(g));N(_);var y=k(_,2),b=k(B(y));b.textContent=`.brand-app { … }`,D(),H(y),H(g),D(2),H(i),w(()=>{F(u,p(W).theme?.accent??p(zs)),F(_,p(W).theme?.appClass??``)}),x(`click`,r,()=>V(xc,!1)),x(`change`,u,e=>br(Rt(p(W),{accent:e.currentTarget.value}))),x(`change`,_,e=>br(Rt(p(W),{appClass:e.currentTarget.value.trim()||void 0}))),d(e,t)};h(Cm,e=>{p(xc)&&e(wm)}),H(_m);var Tm=k(_m,4),Em=e=>{var t=rL();let n;var r=B(t);H(t),w(()=>{n=Ce(t,1,`sv-studio__saved svelte-psjrav`,null,n,{"is-saving":p(Er)===`Saving…`}),v(r,`${p(Er)===`Saving…`?``:`✓ `}${p(Er)??``}`)}),d(e,t)};h(Tm,e=>{p(Er)&&e(Em)});var Dm=k(Tm,2);o(B(Dm),()=>`undo`),H(Dm);var Om=k(Dm,2);o(B(Om),()=>`redo`),H(Om);var km=k(Om,2),Am=k(km,4),jm=e=>{var t=iL();let n;w(()=>n=Ce(t,1,`sv-studio__tb-btn sv-studio__tb-btn--ai svelte-psjrav`,null,n,{"is-active":p(Zc)})),x(`click`,t,rl),d(e,t)};h(Am,e=>{n.onCopilot&&e(jm)});var Mm=k(Am,2);o(B(Mm),()=>`plus`),D(),H(Mm);var Nm=k(Mm,2);o(B(Nm),()=>`dashboard`),D(),H(Nm);var Pm=k(Nm,2),Fm=e=>{var t=aL();let n;var r=B(t);o(r,()=>`entity`),D(),H(t),w(()=>n=Ce(t,1,`sv-studio__tb-btn svelte-psjrav`,null,n,{"is-active":p(Ca)})),x(`click`,t,()=>V(Ca,!0)),d(e,t)};h(Pm,e=>{p(W).entities.length>0&&e(Fm)});var Im=k(Pm,2),Lm=B(Im);let Rm;var zm=B(Lm);o(zm,()=>`plus`),o(k(zm,2),()=>`chevron`),H(Lm);var Bm=k(Lm,2),Vm=e=>{var t=gee(),r=I(t),i=k(r,2),a=B(i),s=B(a);o(s,()=>`plus`),D(),H(a);var c=k(a,2),l=B(c);o(l,()=>`import`);var u=k(l,3);H(c);var f=k(c,2),m=B(f);o(m,()=>`database`),D(),H(f);var g=k(f,2),_=e=>{var t=oL(),n=I(t),r=B(n);o(r,()=>`database`),D(),H(n);var i=k(n,2),a=e=>{var t=hee(),n=B(t);o(n,()=>`database`),D(),H(t),x(`click`,t,()=>{V(Cc,!1),lu()}),d(e,t)};h(i,e=>{p(W).entities.length>0&&e(a)}),x(`click`,n,()=>{V(Cc,!1),jl()}),d(e,t)};h(g,e=>{n.onIntrospectDatabase&&e(_)});var v=k(g,2),y=B(v);o(y,()=>`import`),D(),H(v),H(i),x(`click`,r,()=>V(Cc,!1)),x(`click`,a,()=>{V(Cc,!1),V(ul,``),V(ll,!0)}),x(`change`,u,e=>{V(Cc,!1),gl(e.currentTarget.files?.[0]),e.currentTarget.value=``}),x(`click`,f,()=>{V(Cc,!1),V(Tl,null),V(Cl,!0)}),x(`click`,v,()=>{V(Cc,!1),V(ec,`import`)}),d(e,t)};h(Bm,e=>{p(Cc)&&e(Vm)}),H(Im);var Hm=k(Im,2);let Um;var Wm=k(Hm,2);let Gm;o(B(Wm),()=>`save`),D(),H(Wm);var Km=k(Wm,4),qm=e=>{var t=sL();x(`click`,t,Do),d(e,t)};h(Km,e=>{p(To)&&e(qm)});var Jm=k(Km,2),Ym=k(Jm,4);let Xm;var Zm=k(Ym,2),Qm=k(Zm,2);o(B(Qm),()=>`screen`),D(),H(Qm);var $m=k(Qm,2);let eh;o(B($m),()=>`deploy`),D(),H($m);var th=k($m,2),nh=k(th,2);o(B(nh),()=>`generate`),D(),H(nh),H(dm);var rh=k(dm,2),ih=e=>{var t=cL(),n=B(t),r=B(n);o(r,()=>`save`),D(),H(n);var i=k(n,2),a=k(i,2);H(t),x(`click`,i,kr),x(`click`,a,Ar),d(e,t)};h(rh,e=>{p(wr)&&e(ih)});var ah=k(rh,2),oh=e=>{var t=lL(),n=B(t),r=B(n,!0);H(n);var i=k(n,2);H(t),w(()=>v(r,p(hl))),x(`click`,i,()=>V(hl,null)),d(e,t)};h(ah,e=>{p(hl)&&e(oh)});var sh=k(ah,2),ch=e=>{var t=uL(),n=B(t),r=B(n,!0);H(n);var i=k(n,2);H(t),w(()=>v(r,p(rc))),x(`click`,i,()=>V(rc,null)),d(e,t)};h(sh,e=>{p(rc)&&p(ec)===`none`&&e(ch)});var lh=k(sh,2),uh=e=>{var t=gL(),n=B(t),r=e=>{var t=dL(),n=k(I(t),2);re(n),w(()=>F(n,p(ic))),d(e,t)},i=e=>{var t=fL(),n=k(I(t),2);let r;var i=B(n);o(i,()=>`import`);var a=k(i,4);H(n);var s=k(n,2);re(s),R(s,`placeholder`,`…or paste { "entities": [...], "screens": [...] }`);var c=k(s,2);w(e=>{r=Ce(n,1,`sv-studio__dropzone svelte-psjrav`,null,r,{"is-dragover":p(cc)}),c.disabled=e},[()=>!p(tc).trim()]),C(`dragover`,n,e=>{e.preventDefault(),V(cc,!0)}),C(`dragleave`,n,()=>V(cc,!1)),C(`drop`,n,uc),x(`change`,a,e=>lc(e.currentTarget.files?.[0])),te(s,()=>p(tc),e=>V(tc,e)),x(`click`,c,sc),d(e,t)},a=e=>{var t=pL(),n=k(I(t),2);re(n),R(n,`placeholder`,`model User { id Int @id ... } · or an OpenAPI 3 JSON document`);var r=k(n,2);te(n,()=>p(nc),e=>V(nc,e)),x(`click`,r,pc),d(e,t)};h(n,e=>{p(ec)===`save`?e(r):p(ec)===`load`?e(i,1):e(a,-1)});var s=k(n,2),c=e=>{var t=mL(),n=B(t,!0);H(t),w(()=>v(n,p(dc))),d(e,t)};h(s,e=>{p(dc)&&e(c)});var l=k(s,2),u=e=>{var t=hL(),n=B(t,!0);H(t),w(()=>v(n,p(rc))),d(e,t)};h(l,e=>{p(rc)&&e(u)}),H(t),d(e,t)};h(lh,e=>{p(ec)!==`none`&&e(uh)});var dh=k(lh,2);let fh;{let e=e=>{var t=CL(),n=B(t),r=B(n),i=B(r),a=B(i);o(a,()=>`chevron`),D(),H(i);var s=k(i,2),c=B(s);se(c,17,()=>p(W).screens,e=>e.id,(e,t)=>{var n=_L();let r;var i=B(n),a=B(i);o(a,()=>`screen`);var s=k(a),c=B(s,!0);H(s);var l=k(s),u=B(l);H(l),H(i);var f=k(i,2),m=k(f,2),h=B(m);o(h,()=>`close`),H(m),H(n),w(()=>{r=Ce(n,1,`sv-studio__tree-row svelte-psjrav`,null,r,{"is-active":p(t).id===p(Zr)?.id,"is-dragging":p(vf)===p(t).id}),v(c,p(t).title),v(u,`/${p(t).route??``}`)}),C(`dragstart`,n,()=>V(vf,p(t).id,!0)),C(`dragover`,n,e=>e.preventDefault()),C(`drop`,n,e=>{e.preventDefault(),p(vf)&&p(vf)!==p(t).id&&br(mr(p(W),p(vf),p(W).screens.findIndex(e=>e.id===p(t).id))),V(vf,null)}),C(`dragend`,n,()=>V(vf,null)),x(`contextmenu`,n,e=>ga(e,ba(p(t)))),x(`click`,i,()=>{V(Xr,p(t).id,!0),V(Fa,null)}),x(`click`,f,()=>{V(Xr,p(t).id,!0),ja()}),x(`click`,m,()=>br(mn(p(W),p(t).id))),d(e,n)});var l=k(c,2),u=e=>{var t=vL();d(e,t)};h(l,e=>{p(W).screens.length===0&&e(u)}),H(s),H(r);var f=k(r,2),m=B(f),g=B(m);o(g,()=>`chevron`),D(),H(m);var _=k(m,2);se(_,21,()=>p(W).entities,e=>e.name,(e,t)=>{let n=M(()=>is(p(t).name));var r=yL(),i=B(r),a=B(i);o(a,()=>`entity`);var s=k(a),c=B(s,!0);H(s),H(i);var l=k(i,2);let u;var f=B(l,!0);H(l);var m=k(l,2),h=B(m);o(h,()=>`plus`),H(m),H(r),w(()=>{v(c,p(t).label??p(t).name),u=Ce(l,1,`sv-studio__srcchip svelte-psjrav`,null,u,{"is-inherited":!p(n).explicit}),A(l,`--src: ${p(n).color??``}`),R(l,`title`,`${p(t).label??p(t).name??``} data: ${p(n).label??``}${p(n).explicit?``:` (project default)`} - click to manage in Data model`),v(f,p(n).label),R(m,`aria-label`,`Add screen for ${p(t).name??``}`),R(m,`title`,`Add ${p($s)??``} screen`)}),x(`click`,l,()=>Oa(p(t).name)),x(`click`,m,()=>br(pt(p(W),p(t).name,p($s)))),d(e,r)}),H(_),H(f);var y=k(f,2),b=B(y),S=k(B(b)),T=B(S),O=B(T);O.value=O.__value=`crud`;var ee=k(O);ee.value=ee.__value=`dashboard`;var te=k(ee);te.value=te.__value=`master-detail`;var j=k(te);j.value=j.__value=`empty`,H(T);var ne=k(T,2),re=B(ne);o(re,()=>`plus`),H(ne),H(S),H(b);var P=k(b,2),ie=k(B(P)),ae=B(ie);ae.value=ae.__value=`memory`;var oe=k(ae);oe.value=oe.__value=`pglite`;var ce=k(oe);ce.value=ce.__value=`sql`;var L=k(ce);L.value=L.__value=`supabase`;var le=k(L);le.value=le.__value=`rest`,H(ie);var ue;xe(ie),H(P);var de=k(P,4),fe=B(de),pe=B(fe);o(pe,()=>`chevron`),D(),H(fe);var me=k(fe,2),he=B(me),ge=k(B(he)),z=B(ge);z.value=z.__value=`sidebar`;var _e=k(z);_e.value=_e.__value=`top-nav`;var ve=k(_e);ve.value=ve.__value=`bottom-nav`,H(ge);var ye;xe(ge),H(he);var be=k(he,2),Se=e=>{var t=bL(),n=k(B(t)),r=B(n);r.value=r.__value=`left`;var i=k(r);i.value=i.__value=`right`,H(n);var a;xe(n),H(t),w(()=>{a!==(a=p(W).theme?.shell?.navPosition??`left`)&&(n.value=(n.__value=p(W).theme?.shell?.navPosition??`left`)??``,Te(n,p(W).theme?.shell?.navPosition??`left`))}),x(`change`,n,e=>br(Fe(p(W),{navPosition:e.currentTarget.value}))),d(e,t)};h(be,e=>{(p(W).theme?.shell?.style??`sidebar`)===`sidebar`&&e(Se)});var we=k(be,2),Ee=k(B(we));N(Ee),H(we);var De=k(we,4),Oe=B(De),ke=e=>{var t=xL(),n=I(t),r=k(n,2);w(()=>R(n,`src`,p(Ws))),x(`click`,r,()=>br(Fe(p(W),{logo:void 0}))),d(e,t)},Ae=e=>{var t=SL();x(`change`,t,Js),d(e,t)};h(Oe,e=>{p(Ws)?e(ke):e(Ae,-1)}),H(De);var je=k(De,4),Ne=k(B(je));N(Ne),H(je),H(me),H(de),H(y),H(n),H(t),w(()=>{ue!==(ue=p(W).dataSource)&&(ie.value=(ie.__value=p(W).dataSource)??``,Te(ie,p(W).dataSource)),ye!==(ye=p(W).theme?.shell?.style??`sidebar`)&&(ge.value=(ge.__value=p(W).theme?.shell?.style??`sidebar`)??``,Te(ge,p(W).theme?.shell?.style??`sidebar`)),F(Ee,p(W).theme?.shell?.brand??``),R(Ee,`placeholder`,p(W).title),F(Ne,p(W).theme?.shell?.footer??``)}),E(T,()=>p($s),e=>V($s,e)),x(`click`,ne,()=>Ma()),x(`change`,ie,e=>br(Me(p(W),e.currentTarget.value))),x(`change`,ge,e=>br(Fe(p(W),{style:e.currentTarget.value}))),x(`change`,Ee,e=>br(Fe(p(W),{brand:e.currentTarget.value}))),x(`change`,Ne,e=>br(Fe(p(W),{footer:e.currentTarget.value}))),d(e,t)},t=e=>{var t=DL(),n=B(t),r=B(n),i=B(r),a=B(i,!0);H(i);var s=k(i,2);se(s,21,()=>It,e=>e.kind,(e,t)=>{var n=wL();let r;var i=B(n);o(i,()=>p(t).kind);var a=k(i,1,!0);H(n),w(()=>{r=Ce(n,1,`sv-studio__palette-item svelte-psjrav`,null,r,{"is-dragging":p(hf)===p(t).kind}),n.disabled=!p(Zr),R(n,`draggable`,!!p(Zr)),R(n,`title`,p(No)?p(t).needs?`Needs a ${p(t).needs}`:`Drag onto the canvas, or click to add`:`Drop it and pick an entity to bind this page to`),v(a,p(t).label)}),C(`dragstart`,n,e=>p(Zr)&&bf(e,p(t).kind)),C(`dragend`,n,Ef),x(`click`,n,()=>Fr(p(t).kind)),d(e,n)}),H(s);var c=k(s,4);se(c,17,()=>zr,e=>e.category,(e,t)=>{var n=EL(),r=I(n),i=B(r,!0);H(r);var a=k(r,2);se(a,21,()=>p(t).items,e=>e.key,(e,t)=>{var n=TL();let r;var i=B(n);o(i,()=>`file`);var a=k(i,1,!0);H(n),w(()=>{r=Ce(n,1,`sv-studio__palette-item svelte-psjrav`,null,r,{"is-dragging":p(gf)===p(t).key}),n.disabled=!p(Zr),R(n,`draggable`,!!p(Zr)),v(a,p(t).label)}),C(`dragstart`,n,e=>p(Zr)&&xf(e,p(t).key)),C(`dragend`,n,Ef),x(`click`,n,()=>Ii(p(t).key)),d(e,n)}),H(a),w(()=>v(i,p(t).category)),d(e,n)}),H(r),H(n),H(t),w(()=>v(a,p(Zr)?p(No)?`Drag a block onto the canvas, or click to add it to the current screen.`:`Data blocks read a page’s entity - drop one and you’ll pick which entity to bind this page to. UI components below drop onto any page.`:`Add or select a screen first, then drop blocks onto it.`)),d(e,t)},r=e=>{var t=bR(),r=B(t),i=e=>{var t=kL(),n=B(t);let r;var i=B(n);o(i,()=>`dashboard`),D(),H(n);var a=k(n,2);let s;var c=B(a);o(c,()=>`file`);var l=k(c,2),u=e=>{var t=OL();d(e,t)};h(l,e=>{p(Zr).code&&e(u)}),H(a),H(t),w(()=>{r=Ce(n,1,`sv-studio__viewtab svelte-psjrav`,null,r,{"is-active":p(Ia)===`design`}),R(n,`aria-selected`,p(Ia)===`design`),s=Ce(a,1,`sv-studio__viewtab svelte-psjrav`,null,s,{"is-active":p(Ia)===`code`}),R(a,`aria-selected`,p(Ia)===`code`)}),x(`click`,n,()=>V(Ia,`design`)),x(`click`,a,()=>V(Ia,`code`)),d(e,t)};h(r,e=>{p(Zr)&&e(i)});var a=k(r,2),s=e=>{var t=UL(),n=B(t),r=B(n),i=B(r);let a;var s=B(i);o(s,()=>`file`),D(),H(i);var c=k(i,2);let l;var u=k(c,2);let f;var m=k(u,2);let g;H(r);var _=k(r,2),y=e=>{var t=AL(),n=B(t);N(n),D(),H(t),w(()=>le(n,p(Fo))),x(`change`,n,e=>br(Et(p(W),p(Zr).id,e.currentTarget.checked))),d(e,t)};h(_,e=>{(p(La)===`onLoad`||p(La)===`onDestroy`)&&!p(No)&&e(y)}),H(n);var b=k(n,2),S=e=>{var t=RL(),n=I(t),r=B(n),i=B(r),a=B(i);let s;var c=k(B(a)),l=e=>{var t=jL();d(e,t)};h(c,e=>{(p(J)||p(Zr).handlerSteps?.onLoad?.length)&&e(l)}),H(a);var u=k(a,2);let f;var m=k(B(u)),g=e=>{var t=ML();d(e,t)};h(m,e=>{(p(Io)||p(Zr).handlerSteps?.onDestroy?.length)&&e(g)}),H(u),H(i);var _=k(i,2),y=B(_),b=B(y),S=B(b);o(S,()=>`screen`);var C=k(S,1,!0);H(b);var T=k(b,2),E=B(T,!0);H(T),H(y);var O=k(y,2),A=e=>{var t=NL();eM(I(t),{get value(){return p(J)},get completions(){return p(Ho)},get snippets(){return p(Go)},placeholder:`// Runs when the page mounts. Reach the grid via ctx.grid, feed a chart via ctx.chart1.setData(rows).
|
|
75793
75793
|
// Tip: type ctx. for suggestions, or use an Insert snippet above.`,get tsTypes(){return p(zo)},oncommit:e=>br(xt(p(W),p(Zr).id,`onLoad`,e))}),D(2),d(e,t)},ee=e=>{var t=PL();eM(I(t),{get value(){return p(Io)},get completions(){return p(Ho)},get snippets(){return p(Go)},placeholder:`// Runs when the page unmounts. Clean up timers, subscriptions, aborts you started in onLoad.`,get tsTypes(){return p(zo)},oncommit:e=>br(xt(p(W),p(Zr).id,`onDestroy`,e))}),D(2),d(e,t)};h(O,e=>{p(La)===`onLoad`?e(A):e(ee,-1)}),H(_),H(r);var te=k(r,2),j=k(B(te),2),ne=B(j);se(ne,17,()=>p(Lo),e=>e.name,(e,t)=>{var n=FL(),r=B(n),i=B(r);H(r);var a=k(r),o=B(a,!0);H(a),H(n),w(e=>{v(i,`ctx.${p(t).name??``}`),v(o,e)},[()=>Vo(p(t))]),d(e,n)});var M=k(ne,2),re=e=>{var t=IL();d(e,t)},N=e=>{var t=LL();d(e,t)};h(M,e=>{p(Ro)===`settable`?e(re):p(Ro)===`reload`&&e(N,1)}),D(4),H(j);var P=k(j,8);Lt(P,()=>e=>Pi(p(La),e)),H(te),H(n);var F=k(n,2),ie=B(F);o(ie,()=>`screen`),D(3),H(F),w(()=>{s=Ce(a,1,`sv-studio__code-file-tab svelte-psjrav`,null,s,{"is-active":p(La)===`onLoad`}),R(a,`aria-selected`,p(La)===`onLoad`),f=Ce(u,1,`sv-studio__code-file-tab svelte-psjrav`,null,f,{"is-active":p(La)===`onDestroy`}),R(u,`aria-selected`,p(La)===`onDestroy`),v(C,p(La)),v(E,p(La)===`onLoad`?`async (ctx) => void`:`(ctx) => void`)}),x(`click`,a,()=>V(La,`onLoad`)),x(`click`,u,()=>V(La,`onDestroy`)),d(e,t)},C=e=>{var t=zL(),n=I(t),r=B(n),i=B(r),a=B(i),s=B(a),c=B(s);o(c,()=>`file`),D(),H(s),D(2),H(a);var l=k(a,2);{let e=M(()=>p(W).theme?.customCss??``);eM(l,{lang:`css`,get value(){return p(e)},placeholder:`/* Global styles for the whole app (imported after app.css).
|
|
75794
75794
|
Target a block via its CSS class, override --sg-* tokens, or restyle any .st-* class. */
|
|
75795
75795
|
.featured-card { box-shadow: 0 8px 24px rgba(0,0,0,.12); }`,oncommit:e=>br(Rt(p(W),{customCss:e.trim()||void 0}))})}D(2),H(i),H(r),H(n);var u=k(n,2),f=B(u);o(f,()=>`file`),D(3),H(u),d(e,t)},T=e=>{let t=M(()=>p(La)===`page`?p(Bo)?.page:p(Bo)?.ctx);var n=HL(),r=I(n),i=B(r),a=B(i),s=B(a),c=B(s),l=B(c);o(l,()=>`file`);var u=k(l);H(c),D(2),H(s);var f=k(s,2),m=e=>{var t=BL(),n=B(t),r=B(n);H(n),H(t),w(()=>v(r,`Couldn't generate this file: ${p(Bo).error??``}`)),d(e,t)},g=e=>{eM(e,{readonly:!0,get value(){return p(t)}})},_=e=>{var t=VL(),n=B(t),r=B(n,!0);H(n),H(t),w(()=>v(r,p(La)===`context`?`No page-context.ts - this screen has no code yet (write in handlers.ts).`:`No generated page for this screen.`)),d(e,t)};h(f,e=>{p(Bo)?.error?e(m):p(t)?e(g,1):e(_,-1)}),H(a),H(i),H(r);var y=k(r,2),b=B(y);o(b,()=>`screen`),D(3),H(y),w(()=>v(u,`src/routes/${p(Zr).route??``}/${p(La)===`page`?`+page.svelte`:`page-context.ts`}`)),d(e,n)};h(b,e=>{p(La)===`onLoad`||p(La)===`onDestroy`?e(S):p(La)===`css`?e(C,1):e(T,-1)}),H(t),w(()=>{a=Ce(i,1,`sv-studio__code-file-tab svelte-psjrav`,null,a,{"is-active":p(La)===`onLoad`||p(La)===`onDestroy`}),R(i,`aria-selected`,p(La)===`onLoad`||p(La)===`onDestroy`),l=Ce(c,1,`sv-studio__code-file-tab svelte-psjrav`,null,l,{"is-active":p(La)===`page`}),R(c,`aria-selected`,p(La)===`page`),f=Ce(u,1,`sv-studio__code-file-tab svelte-psjrav`,null,f,{"is-active":p(La)===`context`}),R(u,`aria-selected`,p(La)===`context`),g=Ce(m,1,`sv-studio__code-file-tab svelte-psjrav`,null,g,{"is-active":p(La)===`css`}),R(m,`aria-selected`,p(La)===`css`)}),x(`click`,i,()=>V(La,`onLoad`)),x(`click`,c,()=>V(La,`page`)),x(`click`,u,()=>V(La,`context`)),x(`click`,m,()=>V(La,`css`)),d(e,t)},c=e=>{var t=yee();let n;var r=B(t),i=B(r),a=B(i),s=B(a),c=e=>{var t=WL();w(()=>{R(t,`src`,p(Ws)),R(t,`alt`,p(Vs))}),d(e,t)},l=e=>{var t=GL(),n=I(t);o(n,()=>`dashboard`);var r=k(n),i=B(r,!0);H(r),w(()=>v(i,p(Vs))),d(e,t)};h(s,e=>{p(Ws)?e(c):e(l,-1)}),H(a);var u=k(a,2),f=e=>{var t=KL();w(()=>{R(t,`title`,p(Gs)?`Expand sidebar`:`Collapse sidebar`),R(t,`aria-expanded`,!p(Gs))}),x(`click`,t,()=>V(Gs,!p(Gs))),d(e,t)};h(u,e=>{p(Bs)===`sidebar`&&e(f)}),H(i);var m=k(i,2);se(m,21,()=>p(Xs),e=>e.id,(e,t)=>{var n=qL();let r;var i=B(n),a=B(i,!0);H(i);var o=k(i),s=B(o,!0);H(o),H(n),w(e=>{r=Ce(n,1,`sv-studio__shellnav-item svelte-psjrav`,null,r,{"is-active":p(t).id===p(Zr).id}),R(n,`title`,p(t).nav?.label??p(t).title),v(a,e),v(s,p(t).nav?.label??p(t).title)},[()=>(p(t).nav?.label??p(t).title).trim().slice(0,1)]),x(`click`,n,()=>{V(Xr,p(t).id,!0),V(Fa,null)}),d(e,n)}),H(m),H(r);var g=k(r,2),_=B(g);let S;var T=B(_),E=e=>{var t=_ee();Ks(B(t),{onChange:jo,get locked(){return p(Wa)},get minSize(){return p(eo).minSize},get allowPopout(){return p(eo).allowPopout},get hideSingleTab(){return p(eo).hideSingleTab},get headerPosition(){return p(eo).headerPosition},get workspace(){return p(bo)},set workspace(e){V(bo,e,!0)},pane:(e,t=ee)=>{y(e,t)},$$slots:{pane:!0}}),H(t),d(e,t)},D=e=>{var t=eR();let n;var r=B(t);se(r,17,()=>p(Zr).blocks,e=>e.id,(e,t)=>{let n=M(()=>so(p(t).id));var r=XL();let i;var a=B(r),s=B(a),c=k(B(s));o(c,()=>p(t).config.kind);var l=k(c,1,!0),u=k(l),f=e=>{var n=JL();w(e=>R(n,`title`,e),[()=>p(Xo)[p(t).id].map(e=>e.message).join(`
|