@askdb/studio 0.2.0-beta.19 → 0.2.0-beta.20
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.
|
@@ -51,7 +51,7 @@ Please change the parent <Route path="${e}"> to <Route path="${e===`/`?`*`:`${e}
|
|
|
51
51
|
|
|
52
52
|
If you want to hide the \`${t.titleName}\`, you can wrap it with our VisuallyHidden component.
|
|
53
53
|
|
|
54
|
-
For more information, see https://radix-ui.com/primitives/docs/components/${t.docsSlug}`;return x.useEffect(()=>{e&&(document.getElementById(e)||console.error(n))},[n,e]),null},uc=`DialogDescriptionWarning`,dc=({contentRef:e,descriptionId:t})=>{let n=`Warning: Missing \`Description\` or \`aria-describedby={undefined}\` for {${cc(uc).contentName}}.`;return x.useEffect(()=>{let r=e.current?.getAttribute(`aria-describedby`);t&&r&&(document.getElementById(t)||console.warn(n))},[n,e,t]),null},fc=Ls,pc=Us,mc=Gs,hc=Ys,gc=ec,_c=nc,vc=ic;function yc(e){let[t,n]=x.useState(void 0);return aa(()=>{if(e){n({width:e.offsetWidth,height:e.offsetHeight});let t=new ResizeObserver(t=>{if(!Array.isArray(t)||!t.length)return;let r=t[0],a,o;if(`borderBoxSize`in r){let e=r.borderBoxSize,t=Array.isArray(e)?e[0]:e;a=t.inlineSize,o=t.blockSize}else a=e.offsetWidth,o=e.offsetHeight;n({width:a,height:o})});return t.observe(e,{box:`border-box`}),()=>t.unobserve(e)}else n(void 0)},[e]),t}var G=[`top`,`right`,`bottom`,`left`],bc=Math.min,xc=Math.max,Sc=Math.round,Cc=Math.floor,wc=e=>({x:e,y:e}),Tc={left:`right`,right:`left`,bottom:`top`,top:`bottom`};function Ec(e,t,n){return xc(e,bc(t,n))}function Dc(e,t){return typeof e==`function`?e(t):e}function Oc(e){return e.split(`-`)[0]}function kc(e){return e.split(`-`)[1]}function Ac(e){return e===`x`?`y`:`x`}function jc(e){return e===`y`?`height`:`width`}function K(e){let t=e[0];return t===`t`||t===`b`?`y`:`x`}function Mc(e){return Ac(K(e))}function Nc(e,t,n){n===void 0&&(n=!1);let r=kc(e),a=Mc(e),o=jc(a),s=a===`x`?r===(n?`end`:`start`)?`right`:`left`:r===`start`?`bottom`:`top`;return t.reference[o]>t.floating[o]&&(s=Hc(s)),[s,Hc(s)]}function Pc(e){let t=Hc(e);return[Fc(e),t,Fc(t)]}function Fc(e){return e.includes(`start`)?e.replace(`start`,`end`):e.replace(`end`,`start`)}var Ic=[`left`,`right`],Lc=[`right`,`left`],Rc=[`top`,`bottom`],zc=[`bottom`,`top`];function Bc(e,t,n){switch(e){case`top`:case`bottom`:return n?t?Lc:Ic:t?Ic:Lc;case`left`:case`right`:return t?Rc:zc;default:return[]}}function Vc(e,t,n,r){let a=kc(e),o=Bc(Oc(e),n===`start`,r);return a&&(o=o.map(e=>e+`-`+a),t&&(o=o.concat(o.map(Fc)))),o}function Hc(e){let t=Oc(e);return Tc[t]+e.slice(t.length)}function Uc(e){return{top:0,right:0,bottom:0,left:0,...e}}function Wc(e){return typeof e==`number`?{top:e,right:e,bottom:e,left:e}:Uc(e)}function Gc(e){let{x:t,y:n,width:r,height:a}=e;return{width:r,height:a,top:n,left:t,right:t+r,bottom:n+a,x:t,y:n}}function Kc(e,t,n){let{reference:r,floating:a}=e,o=K(t),s=Mc(t),c=jc(s),l=Oc(t),u=o===`y`,d=r.x+r.width/2-a.width/2,f=r.y+r.height/2-a.height/2,p=r[c]/2-a[c]/2,m;switch(l){case`top`:m={x:d,y:r.y-a.height};break;case`bottom`:m={x:d,y:r.y+r.height};break;case`right`:m={x:r.x+r.width,y:f};break;case`left`:m={x:r.x-a.width,y:f};break;default:m={x:r.x,y:r.y}}switch(kc(t)){case`start`:m[s]-=p*(n&&u?-1:1);break;case`end`:m[s]+=p*(n&&u?-1:1);break}return m}async function qc(e,t){t===void 0&&(t={});let{x:n,y:r,platform:a,rects:o,elements:s,strategy:c}=e,{boundary:l=`clippingAncestors`,rootBoundary:u=`viewport`,elementContext:d=`floating`,altBoundary:f=!1,padding:p=0}=Dc(t,e),m=Wc(p),h=s[f?d===`floating`?`reference`:`floating`:d],g=Gc(await a.getClippingRect({element:await(a.isElement==null?void 0:a.isElement(h))??!0?h:h.contextElement||await(a.getDocumentElement==null?void 0:a.getDocumentElement(s.floating)),boundary:l,rootBoundary:u,strategy:c})),_=d===`floating`?{x:n,y:r,width:o.floating.width,height:o.floating.height}:o.reference,v=await(a.getOffsetParent==null?void 0:a.getOffsetParent(s.floating)),y=await(a.isElement==null?void 0:a.isElement(v))&&await(a.getScale==null?void 0:a.getScale(v))||{x:1,y:1},b=Gc(a.convertOffsetParentRelativeRectToViewportRelativeRect?await a.convertOffsetParentRelativeRectToViewportRelativeRect({elements:s,rect:_,offsetParent:v,strategy:c}):_);return{top:(g.top-b.top+m.top)/y.y,bottom:(b.bottom-g.bottom+m.bottom)/y.y,left:(g.left-b.left+m.left)/y.x,right:(b.right-g.right+m.right)/y.x}}var q=50,Jc=async(e,t,n)=>{let{placement:r=`bottom`,strategy:a=`absolute`,middleware:o=[],platform:s}=n,c=s.detectOverflow?s:{...s,detectOverflow:qc},l=await(s.isRTL==null?void 0:s.isRTL(t)),u=await s.getElementRects({reference:e,floating:t,strategy:a}),{x:d,y:f}=Kc(u,r,l),p=r,m=0,h={};for(let n=0;n<o.length;n++){let g=o[n];if(!g)continue;let{name:_,fn:v}=g,{x:y,y:b,data:x,reset:S}=await v({x:d,y:f,initialPlacement:r,placement:p,strategy:a,middlewareData:h,rects:u,platform:c,elements:{reference:e,floating:t}});d=y??d,f=b??f,h[_]={...h[_],...x},S&&m<q&&(m++,typeof S==`object`&&(S.placement&&(p=S.placement),S.rects&&(u=S.rects===!0?await s.getElementRects({reference:e,floating:t,strategy:a}):S.rects),{x:d,y:f}=Kc(u,p,l)),n=-1)}return{x:d,y:f,placement:p,strategy:a,middlewareData:h}},Yc=e=>({name:`arrow`,options:e,async fn(t){let{x:n,y:r,placement:a,rects:o,platform:s,elements:c,middlewareData:l}=t,{element:u,padding:d=0}=Dc(e,t)||{};if(u==null)return{};let f=Wc(d),p={x:n,y:r},m=Mc(a),h=jc(m),g=await s.getDimensions(u),_=m===`y`,v=_?`top`:`left`,y=_?`bottom`:`right`,b=_?`clientHeight`:`clientWidth`,x=o.reference[h]+o.reference[m]-p[m]-o.floating[h],S=p[m]-o.reference[m],C=await(s.getOffsetParent==null?void 0:s.getOffsetParent(u)),w=C?C[b]:0;(!w||!await(s.isElement==null?void 0:s.isElement(C)))&&(w=c.floating[b]||o.floating[h]);let T=x/2-S/2,E=w/2-g[h]/2-1,D=bc(f[v],E),O=bc(f[y],E),k=D,A=w-g[h]-O,j=w/2-g[h]/2+T,M=Ec(k,j,A),N=!l.arrow&&kc(a)!=null&&j!==M&&o.reference[h]/2-(j<k?D:O)-g[h]/2<0,P=N?j<k?j-k:j-A:0;return{[m]:p[m]+P,data:{[m]:M,centerOffset:j-M-P,...N&&{alignmentOffset:P}},reset:N}}}),Xc=function(e){return e===void 0&&(e={}),{name:`flip`,options:e,async fn(t){var n;let{placement:r,middlewareData:a,rects:o,initialPlacement:s,platform:c,elements:l}=t,{mainAxis:u=!0,crossAxis:d=!0,fallbackPlacements:f,fallbackStrategy:p=`bestFit`,fallbackAxisSideDirection:m=`none`,flipAlignment:h=!0,...g}=Dc(e,t);if((n=a.arrow)!=null&&n.alignmentOffset)return{};let _=Oc(r),v=K(s),y=Oc(s)===s,b=await(c.isRTL==null?void 0:c.isRTL(l.floating)),x=f||(y||!h?[Hc(s)]:Pc(s)),S=m!==`none`;!f&&S&&x.push(...Vc(s,h,m,b));let C=[s,...x],w=await c.detectOverflow(t,g),T=[],E=a.flip?.overflows||[];if(u&&T.push(w[_]),d){let e=Nc(r,o,b);T.push(w[e[0]],w[e[1]])}if(E=[...E,{placement:r,overflows:T}],!T.every(e=>e<=0)){let e=(a.flip?.index||0)+1,t=C[e];if(t&&(!(d===`alignment`&&v!==K(t))||E.every(e=>K(e.placement)===v?e.overflows[0]>0:!0)))return{data:{index:e,overflows:E},reset:{placement:t}};let n=E.filter(e=>e.overflows[0]<=0).sort((e,t)=>e.overflows[1]-t.overflows[1])[0]?.placement;if(!n)switch(p){case`bestFit`:{let e=E.filter(e=>{if(S){let t=K(e.placement);return t===v||t===`y`}return!0}).map(e=>[e.placement,e.overflows.filter(e=>e>0).reduce((e,t)=>e+t,0)]).sort((e,t)=>e[1]-t[1])[0]?.[0];e&&(n=e);break}case`initialPlacement`:n=s;break}if(r!==n)return{reset:{placement:n}}}return{}}}};function Zc(e,t){return{top:e.top-t.height,right:e.right-t.width,bottom:e.bottom-t.height,left:e.left-t.width}}function Qc(e){return G.some(t=>e[t]>=0)}var $c=function(e){return e===void 0&&(e={}),{name:`hide`,options:e,async fn(t){let{rects:n,platform:r}=t,{strategy:a=`referenceHidden`,...o}=Dc(e,t);switch(a){case`referenceHidden`:{let e=Zc(await r.detectOverflow(t,{...o,elementContext:`reference`}),n.reference);return{data:{referenceHiddenOffsets:e,referenceHidden:Qc(e)}}}case`escaped`:{let e=Zc(await r.detectOverflow(t,{...o,altBoundary:!0}),n.floating);return{data:{escapedOffsets:e,escaped:Qc(e)}}}default:return{}}}}},el=new Set([`left`,`top`]);async function tl(e,t){let{placement:n,platform:r,elements:a}=e,o=await(r.isRTL==null?void 0:r.isRTL(a.floating)),s=Oc(n),c=kc(n),l=K(n)===`y`,u=el.has(s)?-1:1,d=o&&l?-1:1,f=Dc(t,e),{mainAxis:p,crossAxis:m,alignmentAxis:h}=typeof f==`number`?{mainAxis:f,crossAxis:0,alignmentAxis:null}:{mainAxis:f.mainAxis||0,crossAxis:f.crossAxis||0,alignmentAxis:f.alignmentAxis};return c&&typeof h==`number`&&(m=c===`end`?h*-1:h),l?{x:m*d,y:p*u}:{x:p*u,y:m*d}}var nl=function(e){return e===void 0&&(e=0),{name:`offset`,options:e,async fn(t){var n;let{x:r,y:a,placement:o,middlewareData:s}=t,c=await tl(t,e);return o===s.offset?.placement&&(n=s.arrow)!=null&&n.alignmentOffset?{}:{x:r+c.x,y:a+c.y,data:{...c,placement:o}}}}},rl=function(e){return e===void 0&&(e={}),{name:`shift`,options:e,async fn(t){let{x:n,y:r,placement:a,platform:o}=t,{mainAxis:s=!0,crossAxis:c=!1,limiter:l={fn:e=>{let{x:t,y:n}=e;return{x:t,y:n}}},...u}=Dc(e,t),d={x:n,y:r},f=await o.detectOverflow(t,u),p=K(Oc(a)),m=Ac(p),h=d[m],g=d[p];if(s){let e=m===`y`?`top`:`left`,t=m===`y`?`bottom`:`right`,n=h+f[e],r=h-f[t];h=Ec(n,h,r)}if(c){let e=p===`y`?`top`:`left`,t=p===`y`?`bottom`:`right`,n=g+f[e],r=g-f[t];g=Ec(n,g,r)}let _=l.fn({...t,[m]:h,[p]:g});return{..._,data:{x:_.x-n,y:_.y-r,enabled:{[m]:s,[p]:c}}}}}},il=function(e){return e===void 0&&(e={}),{options:e,fn(t){let{x:n,y:r,placement:a,rects:o,middlewareData:s}=t,{offset:c=0,mainAxis:l=!0,crossAxis:u=!0}=Dc(e,t),d={x:n,y:r},f=K(a),p=Ac(f),m=d[p],h=d[f],g=Dc(c,t),_=typeof g==`number`?{mainAxis:g,crossAxis:0}:{mainAxis:0,crossAxis:0,...g};if(l){let e=p===`y`?`height`:`width`,t=o.reference[p]-o.floating[e]+_.mainAxis,n=o.reference[p]+o.reference[e]-_.mainAxis;m<t?m=t:m>n&&(m=n)}if(u){let e=p===`y`?`width`:`height`,t=el.has(Oc(a)),n=o.reference[f]-o.floating[e]+(t&&s.offset?.[f]||0)+(t?0:_.crossAxis),r=o.reference[f]+o.reference[e]+(t?0:s.offset?.[f]||0)-(t?_.crossAxis:0);h<n?h=n:h>r&&(h=r)}return{[p]:m,[f]:h}}}},al=function(e){return e===void 0&&(e={}),{name:`size`,options:e,async fn(t){var n,r;let{placement:a,rects:o,platform:s,elements:c}=t,{apply:l=()=>{},...u}=Dc(e,t),d=await s.detectOverflow(t,u),f=Oc(a),p=kc(a),m=K(a)===`y`,{width:h,height:g}=o.floating,_,v;f===`top`||f===`bottom`?(_=f,v=p===(await(s.isRTL==null?void 0:s.isRTL(c.floating))?`start`:`end`)?`left`:`right`):(v=f,_=p===`end`?`top`:`bottom`);let y=g-d.top-d.bottom,b=h-d.left-d.right,x=bc(g-d[_],y),S=bc(h-d[v],b),C=!t.middlewareData.shift,w=x,T=S;if((n=t.middlewareData.shift)!=null&&n.enabled.x&&(T=b),(r=t.middlewareData.shift)!=null&&r.enabled.y&&(w=y),C&&!p){let e=xc(d.left,0),t=xc(d.right,0),n=xc(d.top,0),r=xc(d.bottom,0);m?T=h-2*(e!==0||t!==0?e+t:xc(d.left,d.right)):w=g-2*(n!==0||r!==0?n+r:xc(d.top,d.bottom))}await l({...t,availableWidth:T,availableHeight:w});let E=await s.getDimensions(c.floating);return h!==E.width||g!==E.height?{reset:{rects:!0}}:{}}}};function ol(){return typeof window<`u`}function sl(e){return ul(e)?(e.nodeName||``).toLowerCase():`#document`}function cl(e){var t;return(e==null||(t=e.ownerDocument)==null?void 0:t.defaultView)||window}function ll(e){return((ul(e)?e.ownerDocument:e.document)||window.document)?.documentElement}function ul(e){return ol()?e instanceof Node||e instanceof cl(e).Node:!1}function dl(e){return ol()?e instanceof Element||e instanceof cl(e).Element:!1}function fl(e){return ol()?e instanceof HTMLElement||e instanceof cl(e).HTMLElement:!1}function pl(e){return!ol()||typeof ShadowRoot>`u`?!1:e instanceof ShadowRoot||e instanceof cl(e).ShadowRoot}function ml(e){let{overflow:t,overflowX:n,overflowY:r,display:a}=Tl(e);return/auto|scroll|overlay|hidden|clip/.test(t+r+n)&&a!==`inline`&&a!==`contents`}function hl(e){return/^(table|td|th)$/.test(sl(e))}function gl(e){try{if(e.matches(`:popover-open`))return!0}catch{}try{return e.matches(`:modal`)}catch{return!1}}var _l=/transform|translate|scale|rotate|perspective|filter/,vl=/paint|layout|strict|content/,yl=e=>!!e&&e!==`none`,bl;function xl(e){let t=dl(e)?Tl(e):e;return yl(t.transform)||yl(t.translate)||yl(t.scale)||yl(t.rotate)||yl(t.perspective)||!Cl()&&(yl(t.backdropFilter)||yl(t.filter))||_l.test(t.willChange||``)||vl.test(t.contain||``)}function Sl(e){let t=Dl(e);for(;fl(t)&&!wl(t);){if(xl(t))return t;if(gl(t))return null;t=Dl(t)}return null}function Cl(){return bl??=typeof CSS<`u`&&CSS.supports&&CSS.supports(`-webkit-backdrop-filter`,`none`),bl}function wl(e){return/^(html|body|#document)$/.test(sl(e))}function Tl(e){return cl(e).getComputedStyle(e)}function El(e){return dl(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function Dl(e){if(sl(e)===`html`)return e;let t=e.assignedSlot||e.parentNode||pl(e)&&e.host||ll(e);return pl(t)?t.host:t}function Ol(e){let t=Dl(e);return wl(t)?e.ownerDocument?e.ownerDocument.body:e.body:fl(t)&&ml(t)?t:Ol(t)}function kl(e,t,n){t===void 0&&(t=[]),n===void 0&&(n=!0);let r=Ol(e),a=r===e.ownerDocument?.body,o=cl(r);if(a){let e=Al(o);return t.concat(o,o.visualViewport||[],ml(r)?r:[],e&&n?kl(e):[])}else return t.concat(r,kl(r,[],n))}function Al(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}function jl(e){let t=Tl(e),n=parseFloat(t.width)||0,r=parseFloat(t.height)||0,a=fl(e),o=a?e.offsetWidth:n,s=a?e.offsetHeight:r,c=Sc(n)!==o||Sc(r)!==s;return c&&(n=o,r=s),{width:n,height:r,$:c}}function Ml(e){return dl(e)?e:e.contextElement}function Nl(e){let t=Ml(e);if(!fl(t))return wc(1);let n=t.getBoundingClientRect(),{width:r,height:a,$:o}=jl(t),s=(o?Sc(n.width):n.width)/r,c=(o?Sc(n.height):n.height)/a;return(!s||!Number.isFinite(s))&&(s=1),(!c||!Number.isFinite(c))&&(c=1),{x:s,y:c}}var Pl=wc(0);function Fl(e){let t=cl(e);return!Cl()||!t.visualViewport?Pl:{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}}function Il(e,t,n){return t===void 0&&(t=!1),!n||t&&n!==cl(e)?!1:t}function Ll(e,t,n,r){t===void 0&&(t=!1),n===void 0&&(n=!1);let a=e.getBoundingClientRect(),o=Ml(e),s=wc(1);t&&(r?dl(r)&&(s=Nl(r)):s=Nl(e));let c=Il(o,n,r)?Fl(o):wc(0),l=(a.left+c.x)/s.x,u=(a.top+c.y)/s.y,d=a.width/s.x,f=a.height/s.y;if(o){let e=cl(o),t=r&&dl(r)?cl(r):r,n=e,a=Al(n);for(;a&&r&&t!==n;){let e=Nl(a),t=a.getBoundingClientRect(),r=Tl(a),o=t.left+(a.clientLeft+parseFloat(r.paddingLeft))*e.x,s=t.top+(a.clientTop+parseFloat(r.paddingTop))*e.y;l*=e.x,u*=e.y,d*=e.x,f*=e.y,l+=o,u+=s,n=cl(a),a=Al(n)}}return Gc({width:d,height:f,x:l,y:u})}function Rl(e,t){let n=El(e).scrollLeft;return t?t.left+n:Ll(ll(e)).left+n}function zl(e,t){let n=e.getBoundingClientRect();return{x:n.left+t.scrollLeft-Rl(e,n),y:n.top+t.scrollTop}}function Bl(e){let{elements:t,rect:n,offsetParent:r,strategy:a}=e,o=a===`fixed`,s=ll(r),c=t?gl(t.floating):!1;if(r===s||c&&o)return n;let l={scrollLeft:0,scrollTop:0},u=wc(1),d=wc(0),f=fl(r);if((f||!f&&!o)&&((sl(r)!==`body`||ml(s))&&(l=El(r)),f)){let e=Ll(r);u=Nl(r),d.x=e.x+r.clientLeft,d.y=e.y+r.clientTop}let p=s&&!f&&!o?zl(s,l):wc(0);return{width:n.width*u.x,height:n.height*u.y,x:n.x*u.x-l.scrollLeft*u.x+d.x+p.x,y:n.y*u.y-l.scrollTop*u.y+d.y+p.y}}function Vl(e){return Array.from(e.getClientRects())}function Hl(e){let t=ll(e),n=El(e),r=e.ownerDocument.body,a=xc(t.scrollWidth,t.clientWidth,r.scrollWidth,r.clientWidth),o=xc(t.scrollHeight,t.clientHeight,r.scrollHeight,r.clientHeight),s=-n.scrollLeft+Rl(e),c=-n.scrollTop;return Tl(r).direction===`rtl`&&(s+=xc(t.clientWidth,r.clientWidth)-a),{width:a,height:o,x:s,y:c}}var Ul=25;function Wl(e,t){let n=cl(e),r=ll(e),a=n.visualViewport,o=r.clientWidth,s=r.clientHeight,c=0,l=0;if(a){o=a.width,s=a.height;let e=Cl();(!e||e&&t===`fixed`)&&(c=a.offsetLeft,l=a.offsetTop)}let u=Rl(r);if(u<=0){let e=r.ownerDocument,t=e.body,n=getComputedStyle(t),a=e.compatMode===`CSS1Compat`&&parseFloat(n.marginLeft)+parseFloat(n.marginRight)||0,s=Math.abs(r.clientWidth-t.clientWidth-a);s<=Ul&&(o-=s)}else u<=Ul&&(o+=u);return{width:o,height:s,x:c,y:l}}function Gl(e,t){let n=Ll(e,!0,t===`fixed`),r=n.top+e.clientTop,a=n.left+e.clientLeft,o=fl(e)?Nl(e):wc(1);return{width:e.clientWidth*o.x,height:e.clientHeight*o.y,x:a*o.x,y:r*o.y}}function Kl(e,t,n){let r;if(t===`viewport`)r=Wl(e,n);else if(t===`document`)r=Hl(ll(e));else if(dl(t))r=Gl(t,n);else{let n=Fl(e);r={x:t.x-n.x,y:t.y-n.y,width:t.width,height:t.height}}return Gc(r)}function ql(e,t){let n=Dl(e);return n===t||!dl(n)||wl(n)?!1:Tl(n).position===`fixed`||ql(n,t)}function Jl(e,t){let n=t.get(e);if(n)return n;let r=kl(e,[],!1).filter(e=>dl(e)&&sl(e)!==`body`),a=null,o=Tl(e).position===`fixed`,s=o?Dl(e):e;for(;dl(s)&&!wl(s);){let t=Tl(s),n=xl(s);!n&&t.position===`fixed`&&(a=null),(o?!n&&!a:!n&&t.position===`static`&&a&&(a.position===`absolute`||a.position===`fixed`)||ml(s)&&!n&&ql(e,s))?r=r.filter(e=>e!==s):a=t,s=Dl(s)}return t.set(e,r),r}function Yl(e){let{element:t,boundary:n,rootBoundary:r,strategy:a}=e,o=[...n===`clippingAncestors`?gl(t)?[]:Jl(t,this._c):[].concat(n),r],s=Kl(t,o[0],a),c=s.top,l=s.right,u=s.bottom,d=s.left;for(let e=1;e<o.length;e++){let n=Kl(t,o[e],a);c=xc(n.top,c),l=bc(n.right,l),u=bc(n.bottom,u),d=xc(n.left,d)}return{width:l-d,height:u-c,x:d,y:c}}function Xl(e){let{width:t,height:n}=jl(e);return{width:t,height:n}}function Zl(e,t,n){let r=fl(t),a=ll(t),o=n===`fixed`,s=Ll(e,!0,o,t),c={scrollLeft:0,scrollTop:0},l=wc(0);function u(){l.x=Rl(a)}if(r||!r&&!o)if((sl(t)!==`body`||ml(a))&&(c=El(t)),r){let e=Ll(t,!0,o,t);l.x=e.x+t.clientLeft,l.y=e.y+t.clientTop}else a&&u();o&&!r&&a&&u();let d=a&&!r&&!o?zl(a,c):wc(0);return{x:s.left+c.scrollLeft-l.x-d.x,y:s.top+c.scrollTop-l.y-d.y,width:s.width,height:s.height}}function Ql(e){return Tl(e).position===`static`}function $l(e,t){if(!fl(e)||Tl(e).position===`fixed`)return null;if(t)return t(e);let n=e.offsetParent;return ll(e)===n&&(n=n.ownerDocument.body),n}function eu(e,t){let n=cl(e);if(gl(e))return n;if(!fl(e)){let t=Dl(e);for(;t&&!wl(t);){if(dl(t)&&!Ql(t))return t;t=Dl(t)}return n}let r=$l(e,t);for(;r&&hl(r)&&Ql(r);)r=$l(r,t);return r&&wl(r)&&Ql(r)&&!xl(r)?n:r||Sl(e)||n}var tu=async function(e){let t=this.getOffsetParent||eu,n=this.getDimensions,r=await n(e.floating);return{reference:Zl(e.reference,await t(e.floating),e.strategy),floating:{x:0,y:0,width:r.width,height:r.height}}};function nu(e){return Tl(e).direction===`rtl`}var ru={convertOffsetParentRelativeRectToViewportRelativeRect:Bl,getDocumentElement:ll,getClippingRect:Yl,getOffsetParent:eu,getElementRects:tu,getClientRects:Vl,getDimensions:Xl,getScale:Nl,isElement:dl,isRTL:nu};function iu(e,t){return e.x===t.x&&e.y===t.y&&e.width===t.width&&e.height===t.height}function au(e,t){let n=null,r,a=ll(e);function o(){var e;clearTimeout(r),(e=n)==null||e.disconnect(),n=null}function s(c,l){c===void 0&&(c=!1),l===void 0&&(l=1),o();let u=e.getBoundingClientRect(),{left:d,top:f,width:p,height:m}=u;if(c||t(),!p||!m)return;let h=Cc(f),g=Cc(a.clientWidth-(d+p)),_=Cc(a.clientHeight-(f+m)),v=Cc(d),y={rootMargin:-h+`px `+-g+`px `+-_+`px `+-v+`px`,threshold:xc(0,bc(1,l))||1},b=!0;function x(t){let n=t[0].intersectionRatio;if(n!==l){if(!b)return s();n?s(!1,n):r=setTimeout(()=>{s(!1,1e-7)},1e3)}n===1&&!iu(u,e.getBoundingClientRect())&&s(),b=!1}try{n=new IntersectionObserver(x,{...y,root:a.ownerDocument})}catch{n=new IntersectionObserver(x,y)}n.observe(e)}return s(!0),o}function ou(e,t,n,r){r===void 0&&(r={});let{ancestorScroll:a=!0,ancestorResize:o=!0,elementResize:s=typeof ResizeObserver==`function`,layoutShift:c=typeof IntersectionObserver==`function`,animationFrame:l=!1}=r,u=Ml(e),d=a||o?[...u?kl(u):[],...t?kl(t):[]]:[];d.forEach(e=>{a&&e.addEventListener(`scroll`,n,{passive:!0}),o&&e.addEventListener(`resize`,n)});let f=u&&c?au(u,n):null,p=-1,m=null;s&&(m=new ResizeObserver(e=>{let[r]=e;r&&r.target===u&&m&&t&&(m.unobserve(t),cancelAnimationFrame(p),p=requestAnimationFrame(()=>{var e;(e=m)==null||e.observe(t)})),n()}),u&&!l&&m.observe(u),t&&m.observe(t));let h,g=l?Ll(e):null;l&&_();function _(){let t=Ll(e);g&&!iu(g,t)&&n(),g=t,h=requestAnimationFrame(_)}return n(),()=>{var e;d.forEach(e=>{a&&e.removeEventListener(`scroll`,n),o&&e.removeEventListener(`resize`,n)}),f?.(),(e=m)==null||e.disconnect(),m=null,l&&cancelAnimationFrame(h)}}var su=nl,cu=rl,lu=Xc,uu=al,du=$c,fu=Yc,pu=il,mu=(e,t,n)=>{let r=new Map,a={platform:ru,...n},o={...a.platform,_c:r};return Jc(e,t,{...a,platform:o})},hu=typeof document<`u`?x.useLayoutEffect:function(){};function gu(e,t){if(e===t)return!0;if(typeof e!=typeof t)return!1;if(typeof e==`function`&&e.toString()===t.toString())return!0;let n,r,a;if(e&&t&&typeof e==`object`){if(Array.isArray(e)){if(n=e.length,n!==t.length)return!1;for(r=n;r--!==0;)if(!gu(e[r],t[r]))return!1;return!0}if(a=Object.keys(e),n=a.length,n!==Object.keys(t).length)return!1;for(r=n;r--!==0;)if(!{}.hasOwnProperty.call(t,a[r]))return!1;for(r=n;r--!==0;){let n=a[r];if(!(n===`_owner`&&e.$$typeof)&&!gu(e[n],t[n]))return!1}return!0}return e!==e&&t!==t}function _u(e){return typeof window>`u`?1:(e.ownerDocument.defaultView||window).devicePixelRatio||1}function vu(e,t){let n=_u(e);return Math.round(t*n)/n}function yu(e){let t=x.useRef(e);return hu(()=>{t.current=e}),t}function bu(e){e===void 0&&(e={});let{placement:t=`bottom`,strategy:n=`absolute`,middleware:r=[],platform:a,elements:{reference:o,floating:s}={},transform:c=!0,whileElementsMounted:l,open:u}=e,[d,f]=x.useState({x:0,y:0,strategy:n,placement:t,middlewareData:{},isPositioned:!1}),[p,m]=x.useState(r);gu(p,r)||m(r);let[h,g]=x.useState(null),[_,v]=x.useState(null),y=x.useCallback(e=>{e!==w.current&&(w.current=e,g(e))},[]),b=x.useCallback(e=>{e!==T.current&&(T.current=e,v(e))},[]),S=o||h,C=s||_,w=x.useRef(null),T=x.useRef(null),E=x.useRef(d),D=l!=null,O=yu(l),k=yu(a),A=yu(u),j=x.useCallback(()=>{if(!w.current||!T.current)return;let e={placement:t,strategy:n,middleware:p};k.current&&(e.platform=k.current),mu(w.current,T.current,e).then(e=>{let t={...e,isPositioned:A.current!==!1};M.current&&!gu(E.current,t)&&(E.current=t,Yi.flushSync(()=>{f(t)}))})},[p,t,n,k,A]);hu(()=>{u===!1&&E.current.isPositioned&&(E.current.isPositioned=!1,f(e=>({...e,isPositioned:!1})))},[u]);let M=x.useRef(!1);hu(()=>(M.current=!0,()=>{M.current=!1}),[]),hu(()=>{if(S&&(w.current=S),C&&(T.current=C),S&&C){if(O.current)return O.current(S,C,j);j()}},[S,C,j,O,D]);let N=x.useMemo(()=>({reference:w,floating:T,setReference:y,setFloating:b}),[y,b]),P=x.useMemo(()=>({reference:S,floating:C}),[S,C]),F=x.useMemo(()=>{let e={position:n,left:0,top:0};if(!P.floating)return e;let t=vu(P.floating,d.x),r=vu(P.floating,d.y);return c?{...e,transform:`translate(`+t+`px, `+r+`px)`,..._u(P.floating)>=1.5&&{willChange:`transform`}}:{position:n,left:t,top:r}},[n,c,P.floating,d.x,d.y]);return x.useMemo(()=>({...d,update:j,refs:N,elements:P,floatingStyles:F}),[d,j,N,P,F])}var xu=e=>{function t(e){return{}.hasOwnProperty.call(e,`current`)}return{name:`arrow`,options:e,fn(n){let{element:r,padding:a}=typeof e==`function`?e(n):e;return r&&t(r)?r.current==null?{}:fu({element:r.current,padding:a}).fn(n):r?fu({element:r,padding:a}).fn(n):{}}}},Su=(e,t)=>{let n=su(e);return{name:n.name,fn:n.fn,options:[e,t]}},Cu=(e,t)=>{let n=cu(e);return{name:n.name,fn:n.fn,options:[e,t]}},wu=(e,t)=>({fn:pu(e).fn,options:[e,t]}),Tu=(e,t)=>{let n=lu(e);return{name:n.name,fn:n.fn,options:[e,t]}},Eu=(e,t)=>{let n=uu(e);return{name:n.name,fn:n.fn,options:[e,t]}},Du=(e,t)=>{let n=du(e);return{name:n.name,fn:n.fn,options:[e,t]}},Ou=(e,t)=>{let n=xu(e);return{name:n.name,fn:n.fn,options:[e,t]}},ku=`Arrow`,Au=x.forwardRef((e,t)=>{let{children:n,width:r=10,height:a=5,...o}=e;return(0,z.jsx)(W.svg,{...o,ref:t,width:r,height:a,viewBox:`0 0 30 10`,preserveAspectRatio:`none`,children:e.asChild?n:(0,z.jsx)(`polygon`,{points:`0,0 30,0 15,10`})})});Au.displayName=ku;var ju=Au,Mu=`Popper`,[Nu,Pu]=na(Mu),[Fu,Iu]=Nu(Mu),Lu=e=>{let{__scopePopper:t,children:n}=e,[r,a]=x.useState(null);return(0,z.jsx)(Fu,{scope:t,anchor:r,onAnchorChange:a,children:n})};Lu.displayName=Mu;var Ru=`PopperAnchor`,zu=x.forwardRef((e,t)=>{let{__scopePopper:n,virtualRef:r,...a}=e,o=Iu(Ru,n),s=x.useRef(null),c=Hi(t,s),l=x.useRef(null);return x.useEffect(()=>{let e=l.current;l.current=r?.current||s.current,e!==l.current&&o.onAnchorChange(l.current)}),r?null:(0,z.jsx)(W.div,{...a,ref:c})});zu.displayName=Ru;var Bu=`PopperContent`,[Vu,Hu]=Nu(Bu),Uu=x.forwardRef((e,t)=>{let{__scopePopper:n,side:r=`bottom`,sideOffset:a=0,align:o=`center`,alignOffset:s=0,arrowPadding:c=0,avoidCollisions:l=!0,collisionBoundary:u=[],collisionPadding:d=0,sticky:f=`partial`,hideWhenDetached:p=!1,updatePositionStrategy:m=`optimized`,onPlaced:h,...g}=e,_=Iu(Bu,n),[v,y]=x.useState(null),b=Hi(t,e=>y(e)),[S,C]=x.useState(null),w=yc(S),T=w?.width??0,E=w?.height??0,D=r+(o===`center`?``:`-`+o),O=typeof d==`number`?d:{top:0,right:0,bottom:0,left:0,...d},k=Array.isArray(u)?u:[u],A=k.length>0,j={padding:O,boundary:k.filter(qu),altBoundary:A},{refs:M,floatingStyles:N,placement:P,isPositioned:F,middlewareData:ee}=bu({strategy:`fixed`,placement:D,whileElementsMounted:(...e)=>ou(...e,{animationFrame:m===`always`}),elements:{reference:_.anchor},middleware:[Su({mainAxis:a+E,alignmentAxis:s}),l&&Cu({mainAxis:!0,crossAxis:!1,limiter:f===`partial`?wu():void 0,...j}),l&&Tu({...j}),Eu({...j,apply:({elements:e,rects:t,availableWidth:n,availableHeight:r})=>{let{width:a,height:o}=t.reference,s=e.floating.style;s.setProperty(`--radix-popper-available-width`,`${n}px`),s.setProperty(`--radix-popper-available-height`,`${r}px`),s.setProperty(`--radix-popper-anchor-width`,`${a}px`),s.setProperty(`--radix-popper-anchor-height`,`${o}px`)}}),S&&Ou({element:S,padding:c}),Ju({arrowWidth:T,arrowHeight:E}),p&&Du({strategy:`referenceHidden`,...j})]}),[I,te]=Yu(P),ne=ja(h);aa(()=>{F&&ne?.()},[F,ne]);let L=ee.arrow?.x,re=ee.arrow?.y,ie=ee.arrow?.centerOffset!==0,[ae,oe]=x.useState();return aa(()=>{v&&oe(window.getComputedStyle(v).zIndex)},[v]),(0,z.jsx)(`div`,{ref:M.setFloating,"data-radix-popper-content-wrapper":``,style:{...N,transform:F?N.transform:`translate(0, -200%)`,minWidth:`max-content`,zIndex:ae,"--radix-popper-transform-origin":[ee.transformOrigin?.x,ee.transformOrigin?.y].join(` `),...ee.hide?.referenceHidden&&{visibility:`hidden`,pointerEvents:`none`}},dir:e.dir,children:(0,z.jsx)(Vu,{scope:n,placedSide:I,onArrowChange:C,arrowX:L,arrowY:re,shouldHideArrow:ie,children:(0,z.jsx)(W.div,{"data-side":I,"data-align":te,...g,ref:b,style:{...g.style,animation:F?void 0:`none`}})})})});Uu.displayName=Bu;var Wu=`PopperArrow`,Gu={top:`bottom`,right:`left`,bottom:`top`,left:`right`},Ku=x.forwardRef(function(e,t){let{__scopePopper:n,...r}=e,a=Hu(Wu,n),o=Gu[a.placedSide];return(0,z.jsx)(`span`,{ref:a.onArrowChange,style:{position:`absolute`,left:a.arrowX,top:a.arrowY,[o]:0,transformOrigin:{top:``,right:`0 0`,bottom:`center 0`,left:`100% 0`}[a.placedSide],transform:{top:`translateY(100%)`,right:`translateY(50%) rotate(90deg) translateX(-50%)`,bottom:`rotate(180deg)`,left:`translateY(50%) rotate(-90deg) translateX(50%)`}[a.placedSide],visibility:a.shouldHideArrow?`hidden`:void 0},children:(0,z.jsx)(ju,{...r,ref:t,style:{...r.style,display:`block`}})})});Ku.displayName=Wu;function qu(e){return e!==null}var Ju=e=>({name:`transformOrigin`,options:e,fn(t){let{placement:n,rects:r,middlewareData:a}=t,o=a.arrow?.centerOffset!==0,s=o?0:e.arrowWidth,c=o?0:e.arrowHeight,[l,u]=Yu(n),d={start:`0%`,center:`50%`,end:`100%`}[u],f=(a.arrow?.x??0)+s/2,p=(a.arrow?.y??0)+c/2,m=``,h=``;return l===`bottom`?(m=o?d:`${f}px`,h=`${-c}px`):l===`top`?(m=o?d:`${f}px`,h=`${r.floating.height+c}px`):l===`right`?(m=`${-c}px`,h=o?d:`${p}px`):l===`left`&&(m=`${r.floating.width+c}px`,h=o?d:`${p}px`),{data:{x:m,y:h}}}});function Yu(e){let[t,n=`center`]=e.split(`-`);return[t,n]}var Xu=Lu,Zu=zu,Qu=Uu,$u=Ku,ed=`Separator`,td=`horizontal`,nd=[`horizontal`,`vertical`],rd=x.forwardRef((e,t)=>{let{decorative:n,orientation:r=td,...a}=e,o=id(r)?r:td,s=n?{role:`none`}:{"aria-orientation":o===`vertical`?o:void 0,role:`separator`};return(0,z.jsx)(W.div,{"data-orientation":o,...s,...a,ref:t})});rd.displayName=ed;function id(e){return nd.includes(e)}var ad=rd,[od,sd]=na(`Tooltip`,[Pu]),cd=Pu(),ld=`TooltipProvider`,ud=700,dd=`tooltip.open`,[fd,pd]=od(ld),md=e=>{let{__scopeTooltip:t,delayDuration:n=ud,skipDelayDuration:r=300,disableHoverableContent:a=!1,children:o}=e,s=x.useRef(!0),c=x.useRef(!1),l=x.useRef(0);return x.useEffect(()=>{let e=l.current;return()=>window.clearTimeout(e)},[]),(0,z.jsx)(fd,{scope:t,isOpenDelayedRef:s,delayDuration:n,onOpen:x.useCallback(()=>{window.clearTimeout(l.current),s.current=!1},[]),onClose:x.useCallback(()=>{window.clearTimeout(l.current),l.current=window.setTimeout(()=>s.current=!0,r)},[r]),isPointerInTransitRef:c,onPointerInTransitChange:x.useCallback(e=>{c.current=e},[]),disableHoverableContent:a,children:o})};md.displayName=ld;var hd=`Tooltip`,[gd,_d]=od(hd),vd=e=>{let{__scopeTooltip:t,children:n,open:r,defaultOpen:a,onOpenChange:o,disableHoverableContent:s,delayDuration:c}=e,l=pd(hd,e.__scopeTooltip),u=cd(t),[d,f]=x.useState(null),p=_a(),m=x.useRef(0),h=s??l.disableHoverableContent,g=c??l.delayDuration,_=x.useRef(!1),[v,y]=sa({prop:r,defaultProp:a??!1,onChange:e=>{e?(l.onOpen(),document.dispatchEvent(new CustomEvent(dd))):l.onClose(),o?.(e)},caller:hd}),b=x.useMemo(()=>v?_.current?`delayed-open`:`instant-open`:`closed`,[v]),S=x.useCallback(()=>{window.clearTimeout(m.current),m.current=0,_.current=!1,y(!0)},[y]),C=x.useCallback(()=>{window.clearTimeout(m.current),m.current=0,y(!1)},[y]),w=x.useCallback(()=>{window.clearTimeout(m.current),m.current=window.setTimeout(()=>{_.current=!0,y(!0),m.current=0},g)},[g,y]);return x.useEffect(()=>()=>{m.current&&=(window.clearTimeout(m.current),0)},[]),(0,z.jsx)(Xu,{...u,children:(0,z.jsx)(gd,{scope:t,contentId:p,open:v,stateAttribute:b,trigger:d,onTriggerChange:f,onTriggerEnter:x.useCallback(()=>{l.isOpenDelayedRef.current?w():S()},[l.isOpenDelayedRef,w,S]),onTriggerLeave:x.useCallback(()=>{h?C():(window.clearTimeout(m.current),m.current=0)},[C,h]),onOpen:S,onClose:C,disableHoverableContent:h,children:n})})};vd.displayName=hd;var yd=`TooltipTrigger`,bd=x.forwardRef((e,t)=>{let{__scopeTooltip:n,...r}=e,a=_d(yd,n),o=pd(yd,n),s=cd(n),c=Hi(t,x.useRef(null),a.onTriggerChange),l=x.useRef(!1),u=x.useRef(!1),d=x.useCallback(()=>l.current=!1,[]);return x.useEffect(()=>()=>document.removeEventListener(`pointerup`,d),[d]),(0,z.jsx)(Zu,{asChild:!0,...s,children:(0,z.jsx)(W.button,{"aria-describedby":a.open?a.contentId:void 0,"data-state":a.stateAttribute,...r,ref:c,onPointerMove:ia(e.onPointerMove,e=>{e.pointerType!==`touch`&&!u.current&&!o.isPointerInTransitRef.current&&(a.onTriggerEnter(),u.current=!0)}),onPointerLeave:ia(e.onPointerLeave,()=>{a.onTriggerLeave(),u.current=!1}),onPointerDown:ia(e.onPointerDown,()=>{a.open&&a.onClose(),l.current=!0,document.addEventListener(`pointerup`,d,{once:!0})}),onFocus:ia(e.onFocus,()=>{l.current||a.onOpen()}),onBlur:ia(e.onBlur,a.onClose),onClick:ia(e.onClick,a.onClose)})})});bd.displayName=yd;var xd=`TooltipPortal`,[Sd,Cd]=od(xd,{forceMount:void 0}),wd=e=>{let{__scopeTooltip:t,forceMount:n,children:r,container:a}=e,o=_d(xd,t);return(0,z.jsx)(Sd,{scope:t,forceMount:n,children:(0,z.jsx)(da,{present:n||o.open,children:(0,z.jsx)(lo,{asChild:!0,container:a,children:r})})})};wd.displayName=xd;var Td=`TooltipContent`,Ed=x.forwardRef((e,t)=>{let n=Cd(Td,e.__scopeTooltip),{forceMount:r=n.forceMount,side:a=`top`,...o}=e,s=_d(Td,e.__scopeTooltip);return(0,z.jsx)(da,{present:r||s.open,children:s.disableHoverableContent?(0,z.jsx)(jd,{side:a,...o,ref:t}):(0,z.jsx)(Dd,{side:a,...o,ref:t})})}),Dd=x.forwardRef((e,t)=>{let n=_d(Td,e.__scopeTooltip),r=pd(Td,e.__scopeTooltip),a=x.useRef(null),o=Hi(t,a),[s,c]=x.useState(null),{trigger:l,onClose:u}=n,d=a.current,{onPointerInTransitChange:f}=r,p=x.useCallback(()=>{c(null),f(!1)},[f]),m=x.useCallback((e,t)=>{let n=e.currentTarget,r={x:e.clientX,y:e.clientY},a=Fd(r,Pd(r,n.getBoundingClientRect())),o=Id(t.getBoundingClientRect());c(Rd([...a,...o])),f(!0)},[f]);return x.useEffect(()=>()=>p(),[p]),x.useEffect(()=>{if(l&&d){let e=e=>m(e,d),t=e=>m(e,l);return l.addEventListener(`pointerleave`,e),d.addEventListener(`pointerleave`,t),()=>{l.removeEventListener(`pointerleave`,e),d.removeEventListener(`pointerleave`,t)}}},[l,d,m,p]),x.useEffect(()=>{if(s){let e=e=>{let t=e.target,n={x:e.clientX,y:e.clientY},r=l?.contains(t)||d?.contains(t),a=!Ld(n,s);r?p():a&&(p(),u())};return document.addEventListener(`pointermove`,e),()=>document.removeEventListener(`pointermove`,e)}},[l,d,s,u,p]),(0,z.jsx)(jd,{...e,ref:o})}),[Od,kd]=od(hd,{isInside:!1}),Ad=qi(`TooltipContent`),jd=x.forwardRef((e,t)=>{let{__scopeTooltip:n,children:r,"aria-label":a,onEscapeKeyDown:o,onPointerDownOutside:s,...c}=e,l=_d(Td,n),u=cd(n),{onClose:d}=l;return x.useEffect(()=>(document.addEventListener(dd,d),()=>document.removeEventListener(dd,d)),[d]),x.useEffect(()=>{if(l.trigger){let e=e=>{e.target?.contains(l.trigger)&&d()};return window.addEventListener(`scroll`,e,{capture:!0}),()=>window.removeEventListener(`scroll`,e,{capture:!0})}},[l.trigger,d]),(0,z.jsx)(za,{asChild:!0,disableOutsidePointerEvents:!1,onEscapeKeyDown:o,onPointerDownOutside:s,onFocusOutside:e=>e.preventDefault(),onDismiss:d,children:(0,z.jsxs)(Qu,{"data-state":l.stateAttribute,...u,...c,ref:t,style:{...c.style,"--radix-tooltip-content-transform-origin":`var(--radix-popper-transform-origin)`,"--radix-tooltip-content-available-width":`var(--radix-popper-available-width)`,"--radix-tooltip-content-available-height":`var(--radix-popper-available-height)`,"--radix-tooltip-trigger-width":`var(--radix-popper-anchor-width)`,"--radix-tooltip-trigger-height":`var(--radix-popper-anchor-height)`},children:[(0,z.jsx)(Ad,{children:r}),(0,z.jsx)(Od,{scope:n,isInside:!0,children:(0,z.jsx)(ea,{id:l.contentId,role:`tooltip`,children:a||r})})]})})});Ed.displayName=Td;var Md=`TooltipArrow`,Nd=x.forwardRef((e,t)=>{let{__scopeTooltip:n,...r}=e,a=cd(n);return kd(Md,n).isInside?null:(0,z.jsx)($u,{...a,...r,ref:t})});Nd.displayName=Md;function Pd(e,t){let n=Math.abs(t.top-e.y),r=Math.abs(t.bottom-e.y),a=Math.abs(t.right-e.x),o=Math.abs(t.left-e.x);switch(Math.min(n,r,a,o)){case o:return`left`;case a:return`right`;case n:return`top`;case r:return`bottom`;default:throw Error(`unreachable`)}}function Fd(e,t,n=5){let r=[];switch(t){case`top`:r.push({x:e.x-n,y:e.y+n},{x:e.x+n,y:e.y+n});break;case`bottom`:r.push({x:e.x-n,y:e.y-n},{x:e.x+n,y:e.y-n});break;case`left`:r.push({x:e.x+n,y:e.y-n},{x:e.x+n,y:e.y+n});break;case`right`:r.push({x:e.x-n,y:e.y-n},{x:e.x-n,y:e.y+n});break}return r}function Id(e){let{top:t,right:n,bottom:r,left:a}=e;return[{x:a,y:t},{x:n,y:t},{x:n,y:r},{x:a,y:r}]}function Ld(e,t){let{x:n,y:r}=e,a=!1;for(let e=0,o=t.length-1;e<t.length;o=e++){let s=t[e],c=t[o],l=s.x,u=s.y,d=c.x,f=c.y;u>r!=f>r&&n<(d-l)*(r-u)/(f-u)+l&&(a=!a)}return a}function Rd(e){let t=e.slice();return t.sort((e,t)=>e.x<t.x?-1:e.x>t.x?1:e.y<t.y?-1:+(e.y>t.y)),zd(t)}function zd(e){if(e.length<=1)return e.slice();let t=[];for(let n=0;n<e.length;n++){let r=e[n];for(;t.length>=2;){let e=t[t.length-1],n=t[t.length-2];if((e.x-n.x)*(r.y-n.y)>=(e.y-n.y)*(r.x-n.x))t.pop();else break}t.push(r)}t.pop();let n=[];for(let t=e.length-1;t>=0;t--){let r=e[t];for(;n.length>=2;){let e=n[n.length-1],t=n[n.length-2];if((e.x-t.x)*(r.y-t.y)>=(e.y-t.y)*(r.x-t.x))n.pop();else break}n.push(r)}return n.pop(),t.length===1&&n.length===1&&t[0].x===n[0].x&&t[0].y===n[0].y?t:t.concat(n)}var Bd=md,Vd=vd,Hd=bd,Ud=wd,Wd=Ed,Gd=Nd,Kd=768;function qd(){let[e,t]=x.useState(()=>typeof window<`u`?window.innerWidth<Kd:void 0);return x.useEffect(()=>{let e=window.matchMedia(`(max-width: ${Kd-1}px)`),n=()=>{t(window.innerWidth<Kd)};return e.addEventListener(`change`,n),()=>e.removeEventListener(`change`,n)},[]),!!e}var Jd=(e,t)=>{let n=Array(e.length+t.length);for(let t=0;t<e.length;t++)n[t]=e[t];for(let r=0;r<t.length;r++)n[e.length+r]=t[r];return n},Yd=(e,t)=>({classGroupId:e,validator:t}),Xd=(e=new Map,t=null,n)=>({nextPart:e,validators:t,classGroupId:n}),Zd=`-`,Qd=[],$d=`arbitrary..`,ef=e=>{let t=rf(e),{conflictingClassGroups:n,conflictingClassGroupModifiers:r}=e;return{getClassGroupId:e=>{if(e.startsWith(`[`)&&e.endsWith(`]`))return nf(e);let n=e.split(Zd);return tf(n,+(n[0]===``&&n.length>1),t)},getConflictingClassGroupIds:(e,t)=>{if(t){let t=r[e],a=n[e];return t?a?Jd(a,t):t:a||Qd}return n[e]||Qd}}},tf=(e,t,n)=>{if(e.length-t===0)return n.classGroupId;let r=e[t],a=n.nextPart.get(r);if(a){let n=tf(e,t+1,a);if(n)return n}let o=n.validators;if(o===null)return;let s=t===0?e.join(Zd):e.slice(t).join(Zd),c=o.length;for(let e=0;e<c;e++){let t=o[e];if(t.validator(s))return t.classGroupId}},nf=e=>e.slice(1,-1).indexOf(`:`)===-1?void 0:(()=>{let t=e.slice(1,-1),n=t.indexOf(`:`),r=t.slice(0,n);return r?$d+r:void 0})(),rf=e=>{let{theme:t,classGroups:n}=e;return af(n,t)},af=(e,t)=>{let n=Xd();for(let r in e){let a=e[r];of(a,n,r,t)}return n},of=(e,t,n,r)=>{let a=e.length;for(let o=0;o<a;o++){let a=e[o];sf(a,t,n,r)}},sf=(e,t,n,r)=>{if(typeof e==`string`){cf(e,t,n);return}if(typeof e==`function`){lf(e,t,n,r);return}uf(e,t,n,r)},cf=(e,t,n)=>{let r=e===``?t:df(t,e);r.classGroupId=n},lf=(e,t,n,r)=>{if(ff(e)){of(e(r),t,n,r);return}t.validators===null&&(t.validators=[]),t.validators.push(Yd(n,e))},uf=(e,t,n,r)=>{let a=Object.entries(e),o=a.length;for(let e=0;e<o;e++){let[o,s]=a[e];of(s,df(t,o),n,r)}},df=(e,t)=>{let n=e,r=t.split(Zd),a=r.length;for(let e=0;e<a;e++){let t=r[e],a=n.nextPart.get(t);a||(a=Xd(),n.nextPart.set(t,a)),n=a}return n},ff=e=>`isThemeGetter`in e&&e.isThemeGetter===!0,pf=e=>{if(e<1)return{get:()=>void 0,set:()=>{}};let t=0,n=Object.create(null),r=Object.create(null),a=(a,o)=>{n[a]=o,t++,t>e&&(t=0,r=n,n=Object.create(null))};return{get(e){let t=n[e];if(t!==void 0)return t;if((t=r[e])!==void 0)return a(e,t),t},set(e,t){e in n?n[e]=t:a(e,t)}}},mf=`!`,hf=`:`,gf=[],_f=(e,t,n,r,a)=>({modifiers:e,hasImportantModifier:t,baseClassName:n,maybePostfixModifierPosition:r,isExternal:a}),vf=e=>{let{prefix:t,experimentalParseClassName:n}=e,r=e=>{let t=[],n=0,r=0,a=0,o,s=e.length;for(let c=0;c<s;c++){let s=e[c];if(n===0&&r===0){if(s===hf){t.push(e.slice(a,c)),a=c+1;continue}if(s===`/`){o=c;continue}}s===`[`?n++:s===`]`?n--:s===`(`?r++:s===`)`&&r--}let c=t.length===0?e:e.slice(a),l=c,u=!1;c.endsWith(mf)?(l=c.slice(0,-1),u=!0):c.startsWith(mf)&&(l=c.slice(1),u=!0);let d=o&&o>a?o-a:void 0;return _f(t,u,l,d)};if(t){let e=t+hf,n=r;r=t=>t.startsWith(e)?n(t.slice(e.length)):_f(gf,!1,t,void 0,!0)}if(n){let e=r;r=t=>n({className:t,parseClassName:e})}return r},yf=e=>{let t=new Map;return e.orderSensitiveModifiers.forEach((e,n)=>{t.set(e,1e6+n)}),e=>{let n=[],r=[];for(let a=0;a<e.length;a++){let o=e[a],s=o[0]===`[`,c=t.has(o);s||c?(r.length>0&&(r.sort(),n.push(...r),r=[]),n.push(o)):r.push(o)}return r.length>0&&(r.sort(),n.push(...r)),n}},bf=e=>({cache:pf(e.cacheSize),parseClassName:vf(e),sortModifiers:yf(e),postfixLookupClassGroupIds:xf(e),...ef(e)}),xf=e=>{let t=Object.create(null),n=e.postfixLookupClassGroups;if(n)for(let e=0;e<n.length;e++)t[n[e]]=!0;return t},Sf=/\s+/,Cf=(e,t)=>{let{parseClassName:n,getClassGroupId:r,getConflictingClassGroupIds:a,sortModifiers:o,postfixLookupClassGroupIds:s}=t,c=[],l=e.trim().split(Sf),u=``;for(let e=l.length-1;e>=0;--e){let t=l[e],{isExternal:d,modifiers:f,hasImportantModifier:p,baseClassName:m,maybePostfixModifierPosition:h}=n(t);if(d){u=t+(u.length>0?` `+u:u);continue}let g=!!h,_;if(g){_=r(m.substring(0,h));let e=_&&s[_]?r(m):void 0;e&&e!==_&&(_=e,g=!1)}else _=r(m);if(!_){if(!g){u=t+(u.length>0?` `+u:u);continue}if(_=r(m),!_){u=t+(u.length>0?` `+u:u);continue}g=!1}let v=f.length===0?``:f.length===1?f[0]:o(f).join(`:`),y=p?v+mf:v,b=y+_;if(c.indexOf(b)>-1)continue;c.push(b);let x=a(_,g);for(let e=0;e<x.length;++e){let t=x[e];c.push(y+t)}u=t+(u.length>0?` `+u:u)}return u},wf=(...e)=>{let t=0,n,r,a=``;for(;t<e.length;)(n=e[t++])&&(r=Tf(n))&&(a&&(a+=` `),a+=r);return a},Tf=e=>{if(typeof e==`string`)return e;let t,n=``;for(let r=0;r<e.length;r++)e[r]&&(t=Tf(e[r]))&&(n&&(n+=` `),n+=t);return n},Ef=(e,...t)=>{let n,r,a,o,s=s=>(n=bf(t.reduce((e,t)=>t(e),e())),r=n.cache.get,a=n.cache.set,o=c,c(s)),c=e=>{let t=r(e);if(t)return t;let o=Cf(e,n);return a(e,o),o};return o=s,(...e)=>o(wf(...e))},Df=[],Of=e=>{let t=t=>t[e]||Df;return t.isThemeGetter=!0,t},kf=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,Af=/^\((?:(\w[\w-]*):)?(.+)\)$/i,jf=/^\d+(?:\.\d+)?\/\d+(?:\.\d+)?$/,Mf=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,Nf=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,Pf=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,Ff=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,If=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,Lf=e=>jf.test(e),J=e=>!!e&&!Number.isNaN(Number(e)),Rf=e=>!!e&&Number.isInteger(Number(e)),zf=e=>e.endsWith(`%`)&&J(e.slice(0,-1)),Bf=e=>Mf.test(e),Vf=()=>!0,Hf=e=>Nf.test(e)&&!Pf.test(e),Uf=()=>!1,Wf=e=>Ff.test(e),Gf=e=>If.test(e),Kf=e=>!Y(e)&&!X(e),qf=e=>e.startsWith(`@container`)&&(e[10]===`/`&&e[11]!==void 0||e[11]===`s`&&e[16]!==void 0&&e.startsWith(`-size/`,10)||e[11]===`n`&&e[18]!==void 0&&e.startsWith(`-normal/`,10)),Jf=e=>lp(e,pp,Uf),Y=e=>kf.test(e),Yf=e=>lp(e,mp,Hf),Xf=e=>lp(e,hp,J),Zf=e=>lp(e,_p,Vf),Qf=e=>lp(e,gp,Uf),$f=e=>lp(e,dp,Uf),ep=e=>lp(e,fp,Gf),tp=e=>lp(e,vp,Wf),X=e=>Af.test(e),np=e=>up(e,mp),rp=e=>up(e,gp),ip=e=>up(e,dp),ap=e=>up(e,pp),op=e=>up(e,fp),sp=e=>up(e,vp,!0),cp=e=>up(e,_p,!0),lp=(e,t,n)=>{let r=kf.exec(e);return r?r[1]?t(r[1]):n(r[2]):!1},up=(e,t,n=!1)=>{let r=Af.exec(e);return r?r[1]?t(r[1]):n:!1},dp=e=>e===`position`||e===`percentage`,fp=e=>e===`image`||e===`url`,pp=e=>e===`length`||e===`size`||e===`bg-size`,mp=e=>e===`length`,hp=e=>e===`number`,gp=e=>e===`family-name`,_p=e=>e===`number`||e===`weight`,vp=e=>e===`shadow`,yp=Ef(()=>{let e=Of(`color`),t=Of(`font`),n=Of(`text`),r=Of(`font-weight`),a=Of(`tracking`),o=Of(`leading`),s=Of(`breakpoint`),c=Of(`container`),l=Of(`spacing`),u=Of(`radius`),d=Of(`shadow`),f=Of(`inset-shadow`),p=Of(`text-shadow`),m=Of(`drop-shadow`),h=Of(`blur`),g=Of(`perspective`),_=Of(`aspect`),v=Of(`ease`),y=Of(`animate`),b=()=>[`auto`,`avoid`,`all`,`avoid-page`,`page`,`left`,`right`,`column`],x=()=>[`center`,`top`,`bottom`,`left`,`right`,`top-left`,`left-top`,`top-right`,`right-top`,`bottom-right`,`right-bottom`,`bottom-left`,`left-bottom`],S=()=>[...x(),X,Y],C=()=>[`auto`,`hidden`,`clip`,`visible`,`scroll`],w=()=>[`auto`,`contain`,`none`],T=()=>[X,Y,l],E=()=>[Lf,`full`,`auto`,...T()],D=()=>[Rf,`none`,`subgrid`,X,Y],O=()=>[`auto`,{span:[`full`,Rf,X,Y]},Rf,X,Y],k=()=>[Rf,`auto`,X,Y],A=()=>[`auto`,`min`,`max`,`fr`,X,Y],j=()=>[`start`,`end`,`center`,`between`,`around`,`evenly`,`stretch`,`baseline`,`center-safe`,`end-safe`],M=()=>[`start`,`end`,`center`,`stretch`,`center-safe`,`end-safe`],N=()=>[`auto`,...T()],P=()=>[Lf,`auto`,`full`,`dvw`,`dvh`,`lvw`,`lvh`,`svw`,`svh`,`min`,`max`,`fit`,...T()],F=()=>[Lf,`screen`,`full`,`dvw`,`lvw`,`svw`,`min`,`max`,`fit`,...T()],ee=()=>[Lf,`screen`,`full`,`lh`,`dvh`,`lvh`,`svh`,`min`,`max`,`fit`,...T()],I=()=>[e,X,Y],te=()=>[...x(),ip,$f,{position:[X,Y]}],ne=()=>[`no-repeat`,{repeat:[``,`x`,`y`,`space`,`round`]}],L=()=>[`auto`,`cover`,`contain`,ap,Jf,{size:[X,Y]}],re=()=>[zf,np,Yf],ie=()=>[``,`none`,`full`,u,X,Y],ae=()=>[``,J,np,Yf],oe=()=>[`solid`,`dashed`,`dotted`,`double`],se=()=>[`normal`,`multiply`,`screen`,`overlay`,`darken`,`lighten`,`color-dodge`,`color-burn`,`hard-light`,`soft-light`,`difference`,`exclusion`,`hue`,`saturation`,`color`,`luminosity`],ce=()=>[J,zf,ip,$f],le=()=>[``,`none`,h,X,Y],ue=()=>[`none`,J,X,Y],de=()=>[`none`,J,X,Y],fe=()=>[J,X,Y],pe=()=>[Lf,`full`,...T()];return{cacheSize:500,theme:{animate:[`spin`,`ping`,`pulse`,`bounce`],aspect:[`video`],blur:[Bf],breakpoint:[Bf],color:[Vf],container:[Bf],"drop-shadow":[Bf],ease:[`in`,`out`,`in-out`],font:[Kf],"font-weight":[`thin`,`extralight`,`light`,`normal`,`medium`,`semibold`,`bold`,`extrabold`,`black`],"inset-shadow":[Bf],leading:[`none`,`tight`,`snug`,`normal`,`relaxed`,`loose`],perspective:[`dramatic`,`near`,`normal`,`midrange`,`distant`,`none`],radius:[Bf],shadow:[Bf],spacing:[`px`,J],text:[Bf],"text-shadow":[Bf],tracking:[`tighter`,`tight`,`normal`,`wide`,`wider`,`widest`]},classGroups:{aspect:[{aspect:[`auto`,`square`,Lf,Y,X,_]}],container:[`container`],"container-type":[{"@container":[``,`normal`,`size`,X,Y]}],"container-named":[qf],columns:[{columns:[J,Y,X,c]}],"break-after":[{"break-after":b()}],"break-before":[{"break-before":b()}],"break-inside":[{"break-inside":[`auto`,`avoid`,`avoid-page`,`avoid-column`]}],"box-decoration":[{"box-decoration":[`slice`,`clone`]}],box:[{box:[`border`,`content`]}],display:[`block`,`inline-block`,`inline`,`flex`,`inline-flex`,`table`,`inline-table`,`table-caption`,`table-cell`,`table-column`,`table-column-group`,`table-footer-group`,`table-header-group`,`table-row-group`,`table-row`,`flow-root`,`grid`,`inline-grid`,`contents`,`list-item`,`hidden`],sr:[`sr-only`,`not-sr-only`],float:[{float:[`right`,`left`,`none`,`start`,`end`]}],clear:[{clear:[`left`,`right`,`both`,`none`,`start`,`end`]}],isolation:[`isolate`,`isolation-auto`],"object-fit":[{object:[`contain`,`cover`,`fill`,`none`,`scale-down`]}],"object-position":[{object:S()}],overflow:[{overflow:C()}],"overflow-x":[{"overflow-x":C()}],"overflow-y":[{"overflow-y":C()}],overscroll:[{overscroll:w()}],"overscroll-x":[{"overscroll-x":w()}],"overscroll-y":[{"overscroll-y":w()}],position:[`static`,`fixed`,`absolute`,`relative`,`sticky`],inset:[{inset:E()}],"inset-x":[{"inset-x":E()}],"inset-y":[{"inset-y":E()}],start:[{"inset-s":E(),start:E()}],end:[{"inset-e":E(),end:E()}],"inset-bs":[{"inset-bs":E()}],"inset-be":[{"inset-be":E()}],top:[{top:E()}],right:[{right:E()}],bottom:[{bottom:E()}],left:[{left:E()}],visibility:[`visible`,`invisible`,`collapse`],z:[{z:[Rf,`auto`,X,Y]}],basis:[{basis:[Lf,`full`,`auto`,c,...T()]}],"flex-direction":[{flex:[`row`,`row-reverse`,`col`,`col-reverse`]}],"flex-wrap":[{flex:[`nowrap`,`wrap`,`wrap-reverse`]}],flex:[{flex:[J,Lf,`auto`,`initial`,`none`,Y]}],grow:[{grow:[``,J,X,Y]}],shrink:[{shrink:[``,J,X,Y]}],order:[{order:[Rf,`first`,`last`,`none`,X,Y]}],"grid-cols":[{"grid-cols":D()}],"col-start-end":[{col:O()}],"col-start":[{"col-start":k()}],"col-end":[{"col-end":k()}],"grid-rows":[{"grid-rows":D()}],"row-start-end":[{row:O()}],"row-start":[{"row-start":k()}],"row-end":[{"row-end":k()}],"grid-flow":[{"grid-flow":[`row`,`col`,`dense`,`row-dense`,`col-dense`]}],"auto-cols":[{"auto-cols":A()}],"auto-rows":[{"auto-rows":A()}],gap:[{gap:T()}],"gap-x":[{"gap-x":T()}],"gap-y":[{"gap-y":T()}],"justify-content":[{justify:[...j(),`normal`]}],"justify-items":[{"justify-items":[...M(),`normal`]}],"justify-self":[{"justify-self":[`auto`,...M()]}],"align-content":[{content:[`normal`,...j()]}],"align-items":[{items:[...M(),{baseline:[``,`last`]}]}],"align-self":[{self:[`auto`,...M(),{baseline:[``,`last`]}]}],"place-content":[{"place-content":j()}],"place-items":[{"place-items":[...M(),`baseline`]}],"place-self":[{"place-self":[`auto`,...M()]}],p:[{p:T()}],px:[{px:T()}],py:[{py:T()}],ps:[{ps:T()}],pe:[{pe:T()}],pbs:[{pbs:T()}],pbe:[{pbe:T()}],pt:[{pt:T()}],pr:[{pr:T()}],pb:[{pb:T()}],pl:[{pl:T()}],m:[{m:N()}],mx:[{mx:N()}],my:[{my:N()}],ms:[{ms:N()}],me:[{me:N()}],mbs:[{mbs:N()}],mbe:[{mbe:N()}],mt:[{mt:N()}],mr:[{mr:N()}],mb:[{mb:N()}],ml:[{ml:N()}],"space-x":[{"space-x":T()}],"space-x-reverse":[`space-x-reverse`],"space-y":[{"space-y":T()}],"space-y-reverse":[`space-y-reverse`],size:[{size:P()}],"inline-size":[{inline:[`auto`,...F()]}],"min-inline-size":[{"min-inline":[`auto`,...F()]}],"max-inline-size":[{"max-inline":[`none`,...F()]}],"block-size":[{block:[`auto`,...ee()]}],"min-block-size":[{"min-block":[`auto`,...ee()]}],"max-block-size":[{"max-block":[`none`,...ee()]}],w:[{w:[c,`screen`,...P()]}],"min-w":[{"min-w":[c,`screen`,`none`,...P()]}],"max-w":[{"max-w":[c,`screen`,`none`,`prose`,{screen:[s]},...P()]}],h:[{h:[`screen`,`lh`,...P()]}],"min-h":[{"min-h":[`screen`,`lh`,`none`,...P()]}],"max-h":[{"max-h":[`screen`,`lh`,...P()]}],"font-size":[{text:[`base`,n,np,Yf]}],"font-smoothing":[`antialiased`,`subpixel-antialiased`],"font-style":[`italic`,`not-italic`],"font-weight":[{font:[r,cp,Zf]}],"font-stretch":[{"font-stretch":[`ultra-condensed`,`extra-condensed`,`condensed`,`semi-condensed`,`normal`,`semi-expanded`,`expanded`,`extra-expanded`,`ultra-expanded`,zf,Y]}],"font-family":[{font:[rp,Qf,t]}],"font-features":[{"font-features":[Y]}],"fvn-normal":[`normal-nums`],"fvn-ordinal":[`ordinal`],"fvn-slashed-zero":[`slashed-zero`],"fvn-figure":[`lining-nums`,`oldstyle-nums`],"fvn-spacing":[`proportional-nums`,`tabular-nums`],"fvn-fraction":[`diagonal-fractions`,`stacked-fractions`],tracking:[{tracking:[a,X,Y]}],"line-clamp":[{"line-clamp":[J,`none`,X,Xf]}],leading:[{leading:[o,...T()]}],"list-image":[{"list-image":[`none`,X,Y]}],"list-style-position":[{list:[`inside`,`outside`]}],"list-style-type":[{list:[`disc`,`decimal`,`none`,X,Y]}],"text-alignment":[{text:[`left`,`center`,`right`,`justify`,`start`,`end`]}],"placeholder-color":[{placeholder:I()}],"text-color":[{text:I()}],"text-decoration":[`underline`,`overline`,`line-through`,`no-underline`],"text-decoration-style":[{decoration:[...oe(),`wavy`]}],"text-decoration-thickness":[{decoration:[J,`from-font`,`auto`,X,Yf]}],"text-decoration-color":[{decoration:I()}],"underline-offset":[{"underline-offset":[J,`auto`,X,Y]}],"text-transform":[`uppercase`,`lowercase`,`capitalize`,`normal-case`],"text-overflow":[`truncate`,`text-ellipsis`,`text-clip`],"text-wrap":[{text:[`wrap`,`nowrap`,`balance`,`pretty`]}],indent:[{indent:T()}],"tab-size":[{tab:[Rf,X,Y]}],"vertical-align":[{align:[`baseline`,`top`,`middle`,`bottom`,`text-top`,`text-bottom`,`sub`,`super`,X,Y]}],whitespace:[{whitespace:[`normal`,`nowrap`,`pre`,`pre-line`,`pre-wrap`,`break-spaces`]}],break:[{break:[`normal`,`words`,`all`,`keep`]}],wrap:[{wrap:[`break-word`,`anywhere`,`normal`]}],hyphens:[{hyphens:[`none`,`manual`,`auto`]}],content:[{content:[`none`,X,Y]}],"bg-attachment":[{bg:[`fixed`,`local`,`scroll`]}],"bg-clip":[{"bg-clip":[`border`,`padding`,`content`,`text`]}],"bg-origin":[{"bg-origin":[`border`,`padding`,`content`]}],"bg-position":[{bg:te()}],"bg-repeat":[{bg:ne()}],"bg-size":[{bg:L()}],"bg-image":[{bg:[`none`,{linear:[{to:[`t`,`tr`,`r`,`br`,`b`,`bl`,`l`,`tl`]},Rf,X,Y],radial:[``,X,Y],conic:[Rf,X,Y]},op,ep]}],"bg-color":[{bg:I()}],"gradient-from-pos":[{from:re()}],"gradient-via-pos":[{via:re()}],"gradient-to-pos":[{to:re()}],"gradient-from":[{from:I()}],"gradient-via":[{via:I()}],"gradient-to":[{to:I()}],rounded:[{rounded:ie()}],"rounded-s":[{"rounded-s":ie()}],"rounded-e":[{"rounded-e":ie()}],"rounded-t":[{"rounded-t":ie()}],"rounded-r":[{"rounded-r":ie()}],"rounded-b":[{"rounded-b":ie()}],"rounded-l":[{"rounded-l":ie()}],"rounded-ss":[{"rounded-ss":ie()}],"rounded-se":[{"rounded-se":ie()}],"rounded-ee":[{"rounded-ee":ie()}],"rounded-es":[{"rounded-es":ie()}],"rounded-tl":[{"rounded-tl":ie()}],"rounded-tr":[{"rounded-tr":ie()}],"rounded-br":[{"rounded-br":ie()}],"rounded-bl":[{"rounded-bl":ie()}],"border-w":[{border:ae()}],"border-w-x":[{"border-x":ae()}],"border-w-y":[{"border-y":ae()}],"border-w-s":[{"border-s":ae()}],"border-w-e":[{"border-e":ae()}],"border-w-bs":[{"border-bs":ae()}],"border-w-be":[{"border-be":ae()}],"border-w-t":[{"border-t":ae()}],"border-w-r":[{"border-r":ae()}],"border-w-b":[{"border-b":ae()}],"border-w-l":[{"border-l":ae()}],"divide-x":[{"divide-x":ae()}],"divide-x-reverse":[`divide-x-reverse`],"divide-y":[{"divide-y":ae()}],"divide-y-reverse":[`divide-y-reverse`],"border-style":[{border:[...oe(),`hidden`,`none`]}],"divide-style":[{divide:[...oe(),`hidden`,`none`]}],"border-color":[{border:I()}],"border-color-x":[{"border-x":I()}],"border-color-y":[{"border-y":I()}],"border-color-s":[{"border-s":I()}],"border-color-e":[{"border-e":I()}],"border-color-bs":[{"border-bs":I()}],"border-color-be":[{"border-be":I()}],"border-color-t":[{"border-t":I()}],"border-color-r":[{"border-r":I()}],"border-color-b":[{"border-b":I()}],"border-color-l":[{"border-l":I()}],"divide-color":[{divide:I()}],"outline-style":[{outline:[...oe(),`none`,`hidden`]}],"outline-offset":[{"outline-offset":[J,X,Y]}],"outline-w":[{outline:[``,J,np,Yf]}],"outline-color":[{outline:I()}],shadow:[{shadow:[``,`none`,d,sp,tp]}],"shadow-color":[{shadow:I()}],"inset-shadow":[{"inset-shadow":[`none`,f,sp,tp]}],"inset-shadow-color":[{"inset-shadow":I()}],"ring-w":[{ring:ae()}],"ring-w-inset":[`ring-inset`],"ring-color":[{ring:I()}],"ring-offset-w":[{"ring-offset":[J,Yf]}],"ring-offset-color":[{"ring-offset":I()}],"inset-ring-w":[{"inset-ring":ae()}],"inset-ring-color":[{"inset-ring":I()}],"text-shadow":[{"text-shadow":[`none`,p,sp,tp]}],"text-shadow-color":[{"text-shadow":I()}],opacity:[{opacity:[J,X,Y]}],"mix-blend":[{"mix-blend":[...se(),`plus-darker`,`plus-lighter`]}],"bg-blend":[{"bg-blend":se()}],"mask-clip":[{"mask-clip":[`border`,`padding`,`content`,`fill`,`stroke`,`view`]},`mask-no-clip`],"mask-composite":[{mask:[`add`,`subtract`,`intersect`,`exclude`]}],"mask-image-linear-pos":[{"mask-linear":[J]}],"mask-image-linear-from-pos":[{"mask-linear-from":ce()}],"mask-image-linear-to-pos":[{"mask-linear-to":ce()}],"mask-image-linear-from-color":[{"mask-linear-from":I()}],"mask-image-linear-to-color":[{"mask-linear-to":I()}],"mask-image-t-from-pos":[{"mask-t-from":ce()}],"mask-image-t-to-pos":[{"mask-t-to":ce()}],"mask-image-t-from-color":[{"mask-t-from":I()}],"mask-image-t-to-color":[{"mask-t-to":I()}],"mask-image-r-from-pos":[{"mask-r-from":ce()}],"mask-image-r-to-pos":[{"mask-r-to":ce()}],"mask-image-r-from-color":[{"mask-r-from":I()}],"mask-image-r-to-color":[{"mask-r-to":I()}],"mask-image-b-from-pos":[{"mask-b-from":ce()}],"mask-image-b-to-pos":[{"mask-b-to":ce()}],"mask-image-b-from-color":[{"mask-b-from":I()}],"mask-image-b-to-color":[{"mask-b-to":I()}],"mask-image-l-from-pos":[{"mask-l-from":ce()}],"mask-image-l-to-pos":[{"mask-l-to":ce()}],"mask-image-l-from-color":[{"mask-l-from":I()}],"mask-image-l-to-color":[{"mask-l-to":I()}],"mask-image-x-from-pos":[{"mask-x-from":ce()}],"mask-image-x-to-pos":[{"mask-x-to":ce()}],"mask-image-x-from-color":[{"mask-x-from":I()}],"mask-image-x-to-color":[{"mask-x-to":I()}],"mask-image-y-from-pos":[{"mask-y-from":ce()}],"mask-image-y-to-pos":[{"mask-y-to":ce()}],"mask-image-y-from-color":[{"mask-y-from":I()}],"mask-image-y-to-color":[{"mask-y-to":I()}],"mask-image-radial":[{"mask-radial":[X,Y]}],"mask-image-radial-from-pos":[{"mask-radial-from":ce()}],"mask-image-radial-to-pos":[{"mask-radial-to":ce()}],"mask-image-radial-from-color":[{"mask-radial-from":I()}],"mask-image-radial-to-color":[{"mask-radial-to":I()}],"mask-image-radial-shape":[{"mask-radial":[`circle`,`ellipse`]}],"mask-image-radial-size":[{"mask-radial":[{closest:[`side`,`corner`],farthest:[`side`,`corner`]}]}],"mask-image-radial-pos":[{"mask-radial-at":x()}],"mask-image-conic-pos":[{"mask-conic":[J]}],"mask-image-conic-from-pos":[{"mask-conic-from":ce()}],"mask-image-conic-to-pos":[{"mask-conic-to":ce()}],"mask-image-conic-from-color":[{"mask-conic-from":I()}],"mask-image-conic-to-color":[{"mask-conic-to":I()}],"mask-mode":[{mask:[`alpha`,`luminance`,`match`]}],"mask-origin":[{"mask-origin":[`border`,`padding`,`content`,`fill`,`stroke`,`view`]}],"mask-position":[{mask:te()}],"mask-repeat":[{mask:ne()}],"mask-size":[{mask:L()}],"mask-type":[{"mask-type":[`alpha`,`luminance`]}],"mask-image":[{mask:[`none`,X,Y]}],filter:[{filter:[``,`none`,X,Y]}],blur:[{blur:le()}],brightness:[{brightness:[J,X,Y]}],contrast:[{contrast:[J,X,Y]}],"drop-shadow":[{"drop-shadow":[``,`none`,m,sp,tp]}],"drop-shadow-color":[{"drop-shadow":I()}],grayscale:[{grayscale:[``,J,X,Y]}],"hue-rotate":[{"hue-rotate":[J,X,Y]}],invert:[{invert:[``,J,X,Y]}],saturate:[{saturate:[J,X,Y]}],sepia:[{sepia:[``,J,X,Y]}],"backdrop-filter":[{"backdrop-filter":[``,`none`,X,Y]}],"backdrop-blur":[{"backdrop-blur":le()}],"backdrop-brightness":[{"backdrop-brightness":[J,X,Y]}],"backdrop-contrast":[{"backdrop-contrast":[J,X,Y]}],"backdrop-grayscale":[{"backdrop-grayscale":[``,J,X,Y]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[J,X,Y]}],"backdrop-invert":[{"backdrop-invert":[``,J,X,Y]}],"backdrop-opacity":[{"backdrop-opacity":[J,X,Y]}],"backdrop-saturate":[{"backdrop-saturate":[J,X,Y]}],"backdrop-sepia":[{"backdrop-sepia":[``,J,X,Y]}],"border-collapse":[{border:[`collapse`,`separate`]}],"border-spacing":[{"border-spacing":T()}],"border-spacing-x":[{"border-spacing-x":T()}],"border-spacing-y":[{"border-spacing-y":T()}],"table-layout":[{table:[`auto`,`fixed`]}],caption:[{caption:[`top`,`bottom`]}],transition:[{transition:[``,`all`,`colors`,`opacity`,`shadow`,`transform`,`none`,X,Y]}],"transition-behavior":[{transition:[`normal`,`discrete`]}],duration:[{duration:[J,`initial`,X,Y]}],ease:[{ease:[`linear`,`initial`,v,X,Y]}],delay:[{delay:[J,X,Y]}],animate:[{animate:[`none`,y,X,Y]}],backface:[{backface:[`hidden`,`visible`]}],perspective:[{perspective:[g,X,Y]}],"perspective-origin":[{"perspective-origin":S()}],rotate:[{rotate:ue()}],"rotate-x":[{"rotate-x":ue()}],"rotate-y":[{"rotate-y":ue()}],"rotate-z":[{"rotate-z":ue()}],scale:[{scale:de()}],"scale-x":[{"scale-x":de()}],"scale-y":[{"scale-y":de()}],"scale-z":[{"scale-z":de()}],"scale-3d":[`scale-3d`],skew:[{skew:fe()}],"skew-x":[{"skew-x":fe()}],"skew-y":[{"skew-y":fe()}],transform:[{transform:[X,Y,``,`none`,`gpu`,`cpu`]}],"transform-origin":[{origin:S()}],"transform-style":[{transform:[`3d`,`flat`]}],translate:[{translate:pe()}],"translate-x":[{"translate-x":pe()}],"translate-y":[{"translate-y":pe()}],"translate-z":[{"translate-z":pe()}],"translate-none":[`translate-none`],zoom:[{zoom:[Rf,X,Y]}],accent:[{accent:I()}],appearance:[{appearance:[`none`,`auto`]}],"caret-color":[{caret:I()}],"color-scheme":[{scheme:[`normal`,`dark`,`light`,`light-dark`,`only-dark`,`only-light`]}],cursor:[{cursor:[`auto`,`default`,`pointer`,`wait`,`text`,`move`,`help`,`not-allowed`,`none`,`context-menu`,`progress`,`cell`,`crosshair`,`vertical-text`,`alias`,`copy`,`no-drop`,`grab`,`grabbing`,`all-scroll`,`col-resize`,`row-resize`,`n-resize`,`e-resize`,`s-resize`,`w-resize`,`ne-resize`,`nw-resize`,`se-resize`,`sw-resize`,`ew-resize`,`ns-resize`,`nesw-resize`,`nwse-resize`,`zoom-in`,`zoom-out`,X,Y]}],"field-sizing":[{"field-sizing":[`fixed`,`content`]}],"pointer-events":[{"pointer-events":[`auto`,`none`]}],resize:[{resize:[`none`,``,`y`,`x`]}],"scroll-behavior":[{scroll:[`auto`,`smooth`]}],"scrollbar-thumb-color":[{"scrollbar-thumb":I()}],"scrollbar-track-color":[{"scrollbar-track":I()}],"scrollbar-gutter":[{"scrollbar-gutter":[`auto`,`stable`,`both`]}],"scrollbar-w":[{scrollbar:[`auto`,`thin`,`none`]}],"scroll-m":[{"scroll-m":T()}],"scroll-mx":[{"scroll-mx":T()}],"scroll-my":[{"scroll-my":T()}],"scroll-ms":[{"scroll-ms":T()}],"scroll-me":[{"scroll-me":T()}],"scroll-mbs":[{"scroll-mbs":T()}],"scroll-mbe":[{"scroll-mbe":T()}],"scroll-mt":[{"scroll-mt":T()}],"scroll-mr":[{"scroll-mr":T()}],"scroll-mb":[{"scroll-mb":T()}],"scroll-ml":[{"scroll-ml":T()}],"scroll-p":[{"scroll-p":T()}],"scroll-px":[{"scroll-px":T()}],"scroll-py":[{"scroll-py":T()}],"scroll-ps":[{"scroll-ps":T()}],"scroll-pe":[{"scroll-pe":T()}],"scroll-pbs":[{"scroll-pbs":T()}],"scroll-pbe":[{"scroll-pbe":T()}],"scroll-pt":[{"scroll-pt":T()}],"scroll-pr":[{"scroll-pr":T()}],"scroll-pb":[{"scroll-pb":T()}],"scroll-pl":[{"scroll-pl":T()}],"snap-align":[{snap:[`start`,`end`,`center`,`align-none`]}],"snap-stop":[{snap:[`normal`,`always`]}],"snap-type":[{snap:[`none`,`x`,`y`,`both`]}],"snap-strictness":[{snap:[`mandatory`,`proximity`]}],touch:[{touch:[`auto`,`none`,`manipulation`]}],"touch-x":[{"touch-pan":[`x`,`left`,`right`]}],"touch-y":[{"touch-pan":[`y`,`up`,`down`]}],"touch-pz":[`touch-pinch-zoom`],select:[{select:[`none`,`text`,`all`,`auto`]}],"will-change":[{"will-change":[`auto`,`scroll`,`contents`,`transform`,X,Y]}],fill:[{fill:[`none`,...I()]}],"stroke-w":[{stroke:[J,np,Yf,Xf]}],stroke:[{stroke:[`none`,...I()]}],"forced-color-adjust":[{"forced-color-adjust":[`auto`,`none`]}]},conflictingClassGroups:{"container-named":[`container-type`],overflow:[`overflow-x`,`overflow-y`],overscroll:[`overscroll-x`,`overscroll-y`],inset:[`inset-x`,`inset-y`,`inset-bs`,`inset-be`,`start`,`end`,`top`,`right`,`bottom`,`left`],"inset-x":[`right`,`left`],"inset-y":[`top`,`bottom`],flex:[`basis`,`grow`,`shrink`],gap:[`gap-x`,`gap-y`],p:[`px`,`py`,`ps`,`pe`,`pbs`,`pbe`,`pt`,`pr`,`pb`,`pl`],px:[`pr`,`pl`],py:[`pt`,`pb`],m:[`mx`,`my`,`ms`,`me`,`mbs`,`mbe`,`mt`,`mr`,`mb`,`ml`],mx:[`mr`,`ml`],my:[`mt`,`mb`],size:[`w`,`h`],"font-size":[`leading`],"fvn-normal":[`fvn-ordinal`,`fvn-slashed-zero`,`fvn-figure`,`fvn-spacing`,`fvn-fraction`],"fvn-ordinal":[`fvn-normal`],"fvn-slashed-zero":[`fvn-normal`],"fvn-figure":[`fvn-normal`],"fvn-spacing":[`fvn-normal`],"fvn-fraction":[`fvn-normal`],"line-clamp":[`display`,`overflow`],rounded:[`rounded-s`,`rounded-e`,`rounded-t`,`rounded-r`,`rounded-b`,`rounded-l`,`rounded-ss`,`rounded-se`,`rounded-ee`,`rounded-es`,`rounded-tl`,`rounded-tr`,`rounded-br`,`rounded-bl`],"rounded-s":[`rounded-ss`,`rounded-es`],"rounded-e":[`rounded-se`,`rounded-ee`],"rounded-t":[`rounded-tl`,`rounded-tr`],"rounded-r":[`rounded-tr`,`rounded-br`],"rounded-b":[`rounded-br`,`rounded-bl`],"rounded-l":[`rounded-tl`,`rounded-bl`],"border-spacing":[`border-spacing-x`,`border-spacing-y`],"border-w":[`border-w-x`,`border-w-y`,`border-w-s`,`border-w-e`,`border-w-bs`,`border-w-be`,`border-w-t`,`border-w-r`,`border-w-b`,`border-w-l`],"border-w-x":[`border-w-r`,`border-w-l`],"border-w-y":[`border-w-t`,`border-w-b`],"border-color":[`border-color-x`,`border-color-y`,`border-color-s`,`border-color-e`,`border-color-bs`,`border-color-be`,`border-color-t`,`border-color-r`,`border-color-b`,`border-color-l`],"border-color-x":[`border-color-r`,`border-color-l`],"border-color-y":[`border-color-t`,`border-color-b`],translate:[`translate-x`,`translate-y`,`translate-none`],"translate-none":[`translate`,`translate-x`,`translate-y`,`translate-z`],"scroll-m":[`scroll-mx`,`scroll-my`,`scroll-ms`,`scroll-me`,`scroll-mbs`,`scroll-mbe`,`scroll-mt`,`scroll-mr`,`scroll-mb`,`scroll-ml`],"scroll-mx":[`scroll-mr`,`scroll-ml`],"scroll-my":[`scroll-mt`,`scroll-mb`],"scroll-p":[`scroll-px`,`scroll-py`,`scroll-ps`,`scroll-pe`,`scroll-pbs`,`scroll-pbe`,`scroll-pt`,`scroll-pr`,`scroll-pb`,`scroll-pl`],"scroll-px":[`scroll-pr`,`scroll-pl`],"scroll-py":[`scroll-pt`,`scroll-pb`],touch:[`touch-x`,`touch-y`,`touch-pz`],"touch-x":[`touch`],"touch-y":[`touch`],"touch-pz":[`touch`]},conflictingClassGroupModifiers:{"font-size":[`leading`]},postfixLookupClassGroups:[`container-type`],orderSensitiveModifiers:[`*`,`**`,`after`,`backdrop`,`before`,`details-content`,`file`,`first-letter`,`first-line`,`marker`,`placeholder`,`selection`]}});function Z(...e){return yp(Yr(e))}var bp=Qr(`inline-flex shrink-0 items-center justify-center gap-2 rounded-md text-sm font-medium whitespace-nowrap transition-all outline-none focus-visible:border-ring focus-visible:ring-[1.5px] focus-visible:ring-ring/50 disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4`,{variants:{variant:{default:`bg-primary text-primary-foreground hover:bg-primary/90`,destructive:`bg-destructive text-white hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:bg-destructive/60 dark:focus-visible:ring-destructive/40`,outline:`border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:border-input dark:bg-input/30 dark:hover:bg-input/50`,secondary:`bg-secondary text-secondary-foreground hover:bg-secondary/80`,ghost:`hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50`,link:`text-primary underline-offset-4 hover:underline`},size:{default:`h-9 px-4 py-2 has-[>svg]:px-3`,xs:`h-6 gap-1 rounded-md px-2 text-xs has-[>svg]:px-1.5 [&_svg:not([class*='size-'])]:size-3`,sm:`h-8 gap-1.5 rounded-md px-3 has-[>svg]:px-2.5`,lg:`h-10 rounded-md px-6 has-[>svg]:px-4`,icon:`size-9`,"icon-xs":`size-6 rounded-md [&_svg:not([class*='size-'])]:size-3`,"icon-sm":`size-8`,"icon-lg":`size-10`}},defaultVariants:{variant:`default`,size:`default`}});function xp({className:e,variant:t=`default`,size:n=`default`,asChild:r=!1,...a}){return(0,z.jsx)(r?Wi:`button`,{"data-slot":`button`,"data-variant":t,"data-size":n,className:Z(bp({variant:t,size:n,className:e})),...a})}function Sp({className:e,orientation:t=`horizontal`,decorative:n=!0,...r}){return(0,z.jsx)(ad,{"data-slot":`separator`,decorative:n,orientation:t,className:Z(`shrink-0 bg-border data-[orientation=horizontal]:h-px data-[orientation=horizontal]:w-full data-[orientation=vertical]:h-full data-[orientation=vertical]:w-px`,e),...r})}function Cp({...e}){return(0,z.jsx)(fc,{"data-slot":`sheet`,...e})}function wp({...e}){return(0,z.jsx)(pc,{"data-slot":`sheet-portal`,...e})}function Tp({className:e,...t}){return(0,z.jsx)(mc,{"data-slot":`sheet-overlay`,className:Z(`fixed inset-0 z-50 bg-black/50 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:animate-in data-[state=open]:fade-in-0`,e),...t})}function Ep({className:e,children:t,side:n=`right`,showCloseButton:r=!0,...a}){return(0,z.jsxs)(wp,{children:[(0,z.jsx)(Tp,{}),(0,z.jsxs)(hc,{"data-slot":`sheet-content`,className:Z(`fixed z-50 flex flex-col gap-4 bg-background shadow-lg transition ease-in-out data-[state=closed]:animate-out data-[state=closed]:duration-300 data-[state=open]:animate-in data-[state=open]:duration-500`,n===`right`&&`inset-y-0 right-0 h-full w-3/4 border-l data-[state=closed]:slide-out-to-right data-[state=open]:slide-in-from-right sm:max-w-sm`,n===`left`&&`inset-y-0 left-0 h-full w-3/4 border-r data-[state=closed]:slide-out-to-left data-[state=open]:slide-in-from-left sm:max-w-sm`,n===`top`&&`inset-x-0 top-0 h-auto border-b data-[state=closed]:slide-out-to-top data-[state=open]:slide-in-from-top`,n===`bottom`&&`inset-x-0 bottom-0 h-auto border-t data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom`,e),...a,children:[t,r&&(0,z.jsxs)(vc,{className:`absolute top-4 right-4 rounded-xs opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:ring-2 focus:ring-ring focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none data-[state=open]:bg-secondary`,children:[(0,z.jsx)(Ri,{className:`size-4`}),(0,z.jsx)(`span`,{className:`sr-only`,children:`Close`})]})]})]})}function Dp({className:e,...t}){return(0,z.jsx)(`div`,{"data-slot":`sheet-header`,className:Z(`flex flex-col gap-1.5 p-4`,e),...t})}function Op({className:e,...t}){return(0,z.jsx)(gc,{"data-slot":`sheet-title`,className:Z(`font-semibold text-foreground`,e),...t})}function kp({className:e,...t}){return(0,z.jsx)(_c,{"data-slot":`sheet-description`,className:Z(`text-sm text-muted-foreground`,e),...t})}function Ap({delayDuration:e=0,...t}){return(0,z.jsx)(Bd,{"data-slot":`tooltip-provider`,delayDuration:e,...t})}function jp({...e}){return(0,z.jsx)(Vd,{"data-slot":`tooltip`,...e})}function Mp({...e}){return(0,z.jsx)(Hd,{"data-slot":`tooltip-trigger`,...e})}function Np({className:e,sideOffset:t=0,children:n,...r}){return(0,z.jsx)(Ud,{children:(0,z.jsxs)(Wd,{"data-slot":`tooltip-content`,sideOffset:t,className:Z(`z-50 w-fit origin-(--radix-tooltip-content-transform-origin) animate-in rounded-md bg-foreground px-3 py-1.5 text-xs text-balance text-background fade-in-0 zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95`,e),...r,children:[n,(0,z.jsx)(Gd,{className:`z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px] bg-foreground fill-foreground`})]})})}var Pp=`sidebar_state`,Fp=3600*24*7,Ip=`16rem`,Lp=`18rem`,Rp=`3rem`,zp=`b`,Bp=x.createContext(null);function Vp(){let e=x.useContext(Bp);if(!e)throw Error(`useSidebar must be used within a SidebarProvider.`);return e}function Hp({defaultOpen:e=!0,open:t,onOpenChange:n,className:r,style:a,children:o,...s}){let c=qd(),[l,u]=x.useState(!1),[d,f]=x.useState(e),p=t??d,m=x.useCallback(e=>{let t=typeof e==`function`?e(p):e;n?n(t):f(t),document.cookie=`${Pp}=${t}; path=/; max-age=${Fp}`},[n,p]),h=x.useCallback(()=>c?u(e=>!e):m(e=>!e),[c,m,u]);x.useEffect(()=>{let e=e=>{e.key===zp&&(e.metaKey||e.ctrlKey)&&(e.preventDefault(),h())};return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[h]);let g=p?`expanded`:`collapsed`,_=x.useMemo(()=>({state:g,open:p,setOpen:m,isMobile:c,openMobile:l,setOpenMobile:u,toggleSidebar:h}),[g,p,m,c,l,u,h]);return(0,z.jsx)(Bp.Provider,{value:_,children:(0,z.jsx)(Ap,{delayDuration:0,children:(0,z.jsx)(`div`,{"data-slot":`sidebar-wrapper`,style:{"--sidebar-width":Ip,"--sidebar-width-icon":Rp,...a},className:Z(`group/sidebar-wrapper flex min-h-svh w-full has-data-[variant=inset]:bg-sidebar`,r),...s,children:o})})})}function Up({side:e=`left`,variant:t=`sidebar`,collapsible:n=`offcanvas`,className:r,children:a,...o}){let{isMobile:s,state:c,openMobile:l,setOpenMobile:u}=Vp();return n===`none`?(0,z.jsx)(`div`,{"data-slot":`sidebar`,className:Z(`flex h-full w-(--sidebar-width) flex-col bg-sidebar text-sidebar-foreground`,r),...o,children:a}):s?(0,z.jsx)(Cp,{open:l,onOpenChange:u,...o,children:(0,z.jsxs)(Ep,{"data-sidebar":`sidebar`,"data-slot":`sidebar`,"data-mobile":`true`,className:`w-(--sidebar-width) bg-sidebar p-0 text-sidebar-foreground [&>button]:hidden`,style:{"--sidebar-width":Lp},side:e,children:[(0,z.jsxs)(Dp,{className:`sr-only`,children:[(0,z.jsx)(Op,{children:`Sidebar`}),(0,z.jsx)(kp,{children:`Displays the mobile sidebar.`})]}),(0,z.jsx)(`div`,{className:`flex h-full w-full flex-col`,children:a})]})}):(0,z.jsxs)(`div`,{className:`group peer hidden text-sidebar-foreground md:block`,"data-state":c,"data-collapsible":c===`collapsed`?n:``,"data-variant":t,"data-side":e,"data-slot":`sidebar`,children:[(0,z.jsx)(`div`,{"data-slot":`sidebar-gap`,className:Z(`relative w-(--sidebar-width) bg-transparent transition-[width] duration-200 ease-linear`,`group-data-[collapsible=offcanvas]:w-0`,`group-data-[side=right]:rotate-180`,t===`floating`||t===`inset`?`group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4)))]`:`group-data-[collapsible=icon]:w-(--sidebar-width-icon)`)}),(0,z.jsx)(`div`,{"data-slot":`sidebar-container`,className:Z(`fixed inset-y-0 z-10 hidden h-svh w-(--sidebar-width) transition-[left,right,width] duration-200 ease-linear md:flex`,e===`left`?`left-0 group-data-[collapsible=offcanvas]:left-[calc(var(--sidebar-width)*-1)]`:`right-0 group-data-[collapsible=offcanvas]:right-[calc(var(--sidebar-width)*-1)]`,t===`floating`||t===`inset`?`p-2 group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4))+2px)]`:`group-data-[collapsible=icon]:w-(--sidebar-width-icon) group-data-[side=left]:border-r group-data-[side=right]:border-l`,r),...o,children:(0,z.jsx)(`div`,{"data-sidebar":`sidebar`,"data-slot":`sidebar-inner`,className:`flex h-full w-full flex-col bg-sidebar group-data-[variant=floating]:rounded-lg group-data-[variant=floating]:border group-data-[variant=floating]:border-sidebar-border group-data-[variant=floating]:shadow-sm`,children:a})})]})}function Wp({className:e,onClick:t,...n}){let{toggleSidebar:r}=Vp();return(0,z.jsxs)(xp,{"data-sidebar":`trigger`,"data-slot":`sidebar-trigger`,variant:`ghost`,size:`icon`,className:Z(`size-7`,e),onClick:e=>{t?.(e),r()},...n,children:[(0,z.jsx)(wi,{}),(0,z.jsx)(`span`,{className:`sr-only`,children:`Toggle Sidebar`})]})}function Gp({className:e,...t}){return(0,z.jsx)(`main`,{"data-slot":`sidebar-inset`,className:Z(`relative flex w-full flex-1 flex-col bg-background`,`md:peer-data-[variant=inset]:m-2 md:peer-data-[variant=inset]:ml-0 md:peer-data-[variant=inset]:rounded-xl md:peer-data-[variant=inset]:shadow-sm md:peer-data-[variant=inset]:peer-data-[state=collapsed]:ml-2`,e),...t})}function Kp({className:e,...t}){return(0,z.jsx)(`div`,{"data-slot":`sidebar-header`,"data-sidebar":`header`,className:Z(`flex flex-col gap-2 p-2`,e),...t})}function qp({className:e,...t}){return(0,z.jsx)(`div`,{"data-slot":`sidebar-footer`,"data-sidebar":`footer`,className:Z(`flex flex-col gap-2 p-2`,e),...t})}function Jp({className:e,...t}){return(0,z.jsx)(Sp,{"data-slot":`sidebar-separator`,"data-sidebar":`separator`,className:Z(`mx-2 w-auto bg-sidebar-border`,e),...t})}function Yp({className:e,...t}){return(0,z.jsx)(`div`,{"data-slot":`sidebar-content`,"data-sidebar":`content`,className:Z(`flex min-h-0 flex-1 flex-col gap-2 overflow-auto group-data-[collapsible=icon]:overflow-hidden`,e),...t})}function Xp({className:e,...t}){return(0,z.jsx)(`div`,{"data-slot":`sidebar-group`,"data-sidebar":`group`,className:Z(`relative flex w-full min-w-0 flex-col p-2`,e),...t})}function Zp({className:e,...t}){return(0,z.jsx)(`div`,{"data-slot":`sidebar-group-content`,"data-sidebar":`group-content`,className:Z(`w-full text-sm`,e),...t})}function Qp({className:e,...t}){return(0,z.jsx)(`ul`,{"data-slot":`sidebar-menu`,"data-sidebar":`menu`,className:Z(`flex w-full min-w-0 flex-col gap-1`,e),...t})}function $p({className:e,...t}){return(0,z.jsx)(`li`,{"data-slot":`sidebar-menu-item`,"data-sidebar":`menu-item`,className:Z(`group/menu-item relative`,e),...t})}var em=Qr(`peer/menu-button flex w-full items-center gap-2 overflow-hidden rounded-md p-2 text-left text-sm ring-sidebar-ring outline-hidden transition-[width,height,padding] group-has-data-[sidebar=menu-action]/menu-item:pr-8 group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2! hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-[active=true]:bg-sidebar-accent data-[active=true]:font-medium data-[active=true]:text-sidebar-accent-foreground data-[state=open]:hover:bg-sidebar-accent data-[state=open]:hover:text-sidebar-accent-foreground [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0`,{variants:{variant:{default:`hover:bg-sidebar-accent hover:text-sidebar-accent-foreground`,outline:`bg-background shadow-[0_0_0_1px_var(--sidebar-border)] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground hover:shadow-[0_0_0_1px_var(--sidebar-accent)]`},size:{default:`h-8 text-sm`,sm:`h-7 text-xs`,lg:`h-12 text-sm group-data-[collapsible=icon]:p-0!`}},defaultVariants:{variant:`default`,size:`default`}});function tm({asChild:e=!1,isActive:t=!1,variant:n=`default`,size:r=`default`,tooltip:a,className:o,...s}){let c=e?Wi:`button`,{isMobile:l,state:u}=Vp(),d=(0,z.jsx)(c,{"data-slot":`sidebar-menu-button`,"data-sidebar":`menu-button`,"data-size":r,"data-active":t,className:Z(em({variant:n,size:r}),o),...s});return a?(typeof a==`string`&&(a={children:a}),(0,z.jsxs)(jp,{children:[(0,z.jsx)(Mp,{asChild:!0,children:d}),(0,z.jsx)(Np,{side:`right`,align:`center`,hidden:u!==`collapsed`||l,...a})]})):d}function nm({className:e,...t}){return(0,z.jsx)(`div`,{"data-slot":`sidebar-menu-badge`,"data-sidebar":`menu-badge`,className:Z(`pointer-events-none absolute right-1 flex h-5 min-w-5 items-center justify-center rounded-md px-1 text-xs font-medium text-sidebar-foreground tabular-nums select-none`,`peer-hover/menu-button:text-sidebar-accent-foreground peer-data-[active=true]/menu-button:text-sidebar-accent-foreground`,`peer-data-[size=sm]/menu-button:top-1`,`peer-data-[size=default]/menu-button:top-1.5`,`peer-data-[size=lg]/menu-button:top-2.5`,`group-data-[collapsible=icon]:hidden`,e),...t})}function rm(){let e=tt(),{workspace:t,dirty:n}=yr(),{ragStatus:r}=Mr(),a=im(e.pathname),o=r?.hasIndex&&!r.stale;return(0,z.jsxs)(z.Fragment,{children:[(0,z.jsxs)(`div`,{className:`crumbs`,children:[a.map((e,t)=>(0,z.jsxs)(`span`,{children:[t>0&&(0,z.jsx)(`span`,{className:`sep`,style:{marginRight:8},children:`/`}),(0,z.jsx)(`span`,{className:t===a.length-1?`crumb cur`:`crumb`,children:e})]},e)),n&&(0,z.jsxs)(`span`,{className:`pill warn`,style:{marginLeft:8},children:[(0,z.jsx)(`span`,{style:{width:6,height:6,borderRadius:`50%`,background:`var(--amber-500)`}}),`Unsaved changes`]}),!n&&t&&a.some(e=>e===`Enrichment`||e===`Schema`)&&(0,z.jsxs)(`span`,{className:`pill ok`,style:{marginLeft:8},children:[(0,z.jsx)(V,{size:10}),`Saved`]})]}),(0,z.jsxs)(`div`,{className:`right`,children:[(0,z.jsxs)(`div`,{className:`cmd-palette`,children:[(0,z.jsx)(ji,{size:13}),(0,z.jsx)(`span`,{style:{flex:1},children:`Search tables, concepts, queries…`}),(0,z.jsx)(`span`,{className:`kbd`,children:`⌘K`})]}),r&&(0,z.jsxs)(`span`,{className:`pill ${o?`ok`:`warn`}`,children:[(0,z.jsx)(`span`,{style:{width:6,height:6,borderRadius:`50%`,background:o?`var(--green-500)`:`var(--amber-500)`}}),o?`Index fresh`:r.hasIndex?`Index stale`:`No index`]})]})]})}function im(e){let t=e.split(`/`).filter(Boolean);if(t.length===0)return[`Overview`];let n=t[0],r=[];switch(n){case`overview`:r.push(`Overview`);break;case`tables`:r.push(`Tables`),t[1]&&r.push(t[1]),t[2]&&r.push(t[2]),t[3]&&r.push(am(t[3]));break;case`concepts`:r.push(`Concepts`);break;case`tenancy`:r.push(`Tenancy`),t[1]&&r.push(am(t[1]));break;case`rag-index`:r.push(`RAG Index`),t[1]&&r.push(am(t[1]));break;case`playground`:r.push(`Playground`),t[1]&&r.push(`Query`);break;case`settings`:r.push(`Settings`);break;default:r.push(am(n))}return r}function am(e){return e.charAt(0).toUpperCase()+e.slice(1)}var om=[{to:`/overview`,label:`Overview`,icon:bi},{to:`/tables`,label:`Tables`,icon:Ii,badgeKey:`tables`},{to:`/concepts`,label:`Concepts`,icon:vi,badgeKey:`concepts`},{to:`/tenancy`,label:`Tenancy`,icon:Ni},{to:`/rag-index`,label:`RAG Index`,icon:Pi},{to:`/playground`,label:`Playground`,icon:Ei}];function sm(){let{workspace:e}=yr(),{theme:t,toggleTheme:n}=Zn();function r(t){if(!(!e||!t)){if(t===`tables`)return String(e.tables.length);if(t===`concepts`)return String(e.concepts.length)}}return(0,z.jsxs)(Up,{collapsible:`icon`,className:`border-r`,children:[(0,z.jsx)(Kp,{className:`px-2 py-2`,children:(0,z.jsx)(Qp,{children:(0,z.jsx)($p,{children:(0,z.jsx)(tm,{size:`lg`,asChild:!0,tooltip:`AskDB Studio`,children:(0,z.jsxs)(`a`,{href:`/`,className:`no-underline`,children:[(0,z.jsx)(`div`,{className:`flex aspect-square size-8 items-center justify-center shrink-0`,children:(0,z.jsx)(`img`,{src:t===`dark`?`/assets/brand/dark-icon.png`:`/assets/brand/light-icon.png`,alt:`AskDB`,className:`size-7`})}),(0,z.jsxs)(`div`,{className:`flex flex-col gap-0.5 leading-none`,children:[(0,z.jsx)(`span`,{className:`font-semibold`,children:`AskDB`}),(0,z.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:`Studio`})]})]})})})})}),(0,z.jsx)(Yp,{children:(0,z.jsx)(Xp,{children:(0,z.jsx)(Zp,{children:(0,z.jsx)(Qp,{children:om.map(e=>{let t=e.icon,n=r(e.badgeKey);return(0,z.jsxs)($p,{children:[(0,z.jsx)(tm,{asChild:!0,tooltip:e.label,children:(0,z.jsxs)(Dn,{to:e.to,children:[(0,z.jsx)(t,{}),(0,z.jsx)(`span`,{children:e.label})]})}),n&&(0,z.jsx)(nm,{children:n})]},e.to)})})})})}),(0,z.jsxs)(qp,{children:[(0,z.jsxs)(Qp,{children:[(0,z.jsx)($p,{children:(0,z.jsx)(tm,{asChild:!0,tooltip:`Settings`,children:(0,z.jsxs)(Dn,{to:`/settings`,children:[(0,z.jsx)(Mi,{}),(0,z.jsx)(`span`,{children:`Settings`})]})})}),(0,z.jsx)($p,{children:(0,z.jsxs)(tm,{tooltip:t===`light`?`Dark mode`:`Light mode`,onClick:n,children:[t===`light`?(0,z.jsx)(Ci,{}):(0,z.jsx)(Fi,{}),(0,z.jsx)(`span`,{children:t===`light`?`Dark mode`:`Light mode`})]})})]}),(0,z.jsx)(Jp,{}),(0,z.jsxs)(`div`,{className:`flex items-center gap-2 px-2 py-1.5 text-xs text-muted-foreground group-data-[collapsible=icon]:justify-center group-data-[collapsible=icon]:px-0`,children:[(0,z.jsx)(hi,{size:14,className:`shrink-0`}),(0,z.jsx)(`span`,{className:`truncate font-mono group-data-[collapsible=icon]:hidden`,children:e?`${e.aiProvider||`postgres`} · ${e.schemaId.split(`/`).pop()||e.schemaId}`:`connecting…`})]})]})]})}function cm({dialog:e,onApply:t,onClose:n}){return(0,z.jsx)(`div`,{className:`dialog-overlay`,onClick:n,"aria-hidden":`true`,children:(0,z.jsxs)(`div`,{className:`dialog`,onClick:e=>e.stopPropagation(),children:[(0,z.jsxs)(`div`,{className:`dialog-hd`,children:[(0,z.jsxs)(`h3`,{children:[`Suggestions for `,e.label]}),(0,z.jsx)(`button`,{type:`button`,className:`btn ghost sm`,onClick:n,"aria-label":`Close`,children:(0,z.jsx)(Ri,{size:14})})]}),(0,z.jsx)(`div`,{className:`dialog-bd`,children:e.candidates.map(e=>(0,z.jsxs)(`article`,{className:`candidate`,children:[(0,z.jsx)(`p`,{children:e.text}),(0,z.jsx)(`div`,{className:`candidate-actions`,children:(0,z.jsx)(`button`,{type:`button`,className:`btn sm`,onClick:()=>t(e.text),children:`Use`})})]},e.text))})]})})}function lm(){let e=it(),{workspace:t,tables:n}=yr(),{ragStatus:r}=Mr(),{historyEntries:a}=zr();if(!t)return null;let o=n.filter(e=>{let t=e.draft,n=t.description||t.aliases&&t.aliases.length>0,r=Object.values(t.columns??{}).every(e=>e.description);return n&&r}).length,s=n.filter(e=>{let t=e.draft,n=t.description||t.aliases&&t.aliases.length>0,r=Object.values(t.columns??{}).every(e=>e.description);return n&&!r}).length,c=!!t.tenantPolicy;return(0,z.jsxs)(`main`,{className:`main-pane`,children:[(0,z.jsxs)(`div`,{className:`main-hd`,children:[(0,z.jsxs)(`div`,{className:`main-title`,children:[(0,z.jsx)(`h1`,{children:`Overview`}),(0,z.jsxs)(`div`,{className:`main-sub`,children:[t.aiProvider||`postgres`,` · `,t.schemaId]})]}),(0,z.jsxs)(`div`,{className:`main-actions`,children:[(0,z.jsxs)(`button`,{type:`button`,className:`btn`,onClick:()=>void 0,children:[(0,z.jsx)(Oi,{size:14}),` Resync schema`]}),(0,z.jsxs)(`button`,{type:`button`,className:`btn primary`,onClick:()=>e(`/tables`),children:[(0,z.jsx)(Pi,{size:14}),` Draft enrichment`]})]})]}),(0,z.jsx)(`div`,{className:`main-body`,children:(0,z.jsxs)(`div`,{className:`stack`,children:[(0,z.jsxs)(`div`,{className:`grid-4`,children:[(0,z.jsxs)(`div`,{className:`card stat-card`,children:[(0,z.jsx)(`div`,{className:`stat-label`,children:`Tables`}),(0,z.jsx)(`div`,{className:`stat-num`,children:n.length}),(0,z.jsxs)(`div`,{className:`stat-hint`,children:[o,` enriched · `,s,` partial`]})]}),(0,z.jsxs)(`div`,{className:`card stat-card`,children:[(0,z.jsx)(`div`,{className:`stat-label`,children:`Concepts`}),(0,z.jsx)(`div`,{className:`stat-num`,children:t.concepts.length}),t.concepts.length>0&&(0,z.jsxs)(`div`,{className:`stat-hint`,children:[t.concepts.length,` defined`]})]}),(0,z.jsxs)(`div`,{className:`card stat-card`,children:[(0,z.jsx)(`div`,{className:`stat-label`,children:`Index health`}),(0,z.jsx)(`div`,{className:`stat-num`,children:r?.hasIndex?r.stale?`Stale`:`Fresh`:`None`}),r&&(0,z.jsxs)(`div`,{className:`stat-hint`,children:[r.chunksTotal,` chunks · `,r.dimensions,`d`]})]}),(0,z.jsxs)(`div`,{className:`card stat-card`,children:[(0,z.jsx)(`div`,{className:`stat-label`,children:`Sensitivity coverage`}),(0,z.jsx)(`div`,{className:`stat-num`,children:r?`${Math.round((r.sensitiveExcluded+r.sensitiveIncluded)/Math.max(r.chunksTotal,1)*100)}%`:`—`})]})]}),(0,z.jsxs)(`div`,{className:`grid-2`,children:[(0,z.jsxs)(`div`,{className:`card`,children:[(0,z.jsxs)(`div`,{className:`card-hd`,children:[(0,z.jsxs)(`h3`,{children:[(0,z.jsx)(Pi,{size:14}),` Pending enrichment`]}),(0,z.jsxs)(`span`,{className:`card-meta`,children:[n.length-o,` tables to go`]})]}),(0,z.jsx)(`div`,{className:`card-bd tight`,children:(0,z.jsxs)(`table`,{className:`tbl`,children:[(0,z.jsx)(`thead`,{children:(0,z.jsxs)(`tr`,{children:[(0,z.jsx)(`th`,{children:`Table`}),(0,z.jsx)(`th`,{children:`Cols`}),(0,z.jsx)(`th`,{children:`Status`}),(0,z.jsx)(`th`,{"aria-label":`Actions`})]})}),(0,z.jsx)(`tbody`,{children:n.filter(e=>{let t=e.draft,n=Object.values(t.columns??{}).every(e=>e.description);return!(t.description&&n)}).slice(0,6).map(t=>{let n=t.draft.description||t.draft.aliases&&t.draft.aliases.length>0?`partial`:`none`;return(0,z.jsxs)(`tr`,{style:{cursor:`default`},onClick:()=>e(`/tables/${t.physical.schema}/${t.physical.name}/enrichment`),children:[(0,z.jsx)(`td`,{children:(0,z.jsxs)(`span`,{className:`mono`,children:[t.physical.schema,`.`,t.physical.name]})}),(0,z.jsx)(`td`,{className:`muted`,children:t.physical.columns.length}),(0,z.jsxs)(`td`,{children:[(0,z.jsx)(`span`,{className:`enrich-dot ${n}`}),(0,z.jsx)(`span`,{className:`muted tiny`,style:{marginLeft:6},children:n})]}),(0,z.jsx)(`td`,{style:{textAlign:`right`},children:(0,z.jsxs)(`span`,{className:`suggest-link`,children:[(0,z.jsx)(Pi,{size:12}),` Draft`]})})]},t.physical.id)})})]})})]}),(0,z.jsxs)(`div`,{className:`card`,children:[(0,z.jsxs)(`div`,{className:`card-hd`,children:[(0,z.jsxs)(`h3`,{children:[(0,z.jsx)(yi,{size:14}),` Recent playground queries`]}),(0,z.jsxs)(`span`,{className:`card-meta`,children:[`last `,a.length,` queries`]})]}),(0,z.jsx)(`div`,{className:`card-bd tight`,children:(0,z.jsxs)(`table`,{className:`tbl`,children:[(0,z.jsx)(`thead`,{children:(0,z.jsxs)(`tr`,{children:[(0,z.jsx)(`th`,{children:`Question`}),(0,z.jsx)(`th`,{children:`Mode`}),(0,z.jsx)(`th`,{children:`Time`})]})}),(0,z.jsxs)(`tbody`,{children:[a.slice(0,5).map(e=>(0,z.jsxs)(`tr`,{children:[(0,z.jsx)(`td`,{style:{maxWidth:300,overflow:`hidden`,textOverflow:`ellipsis`,whiteSpace:`nowrap`},children:e.question}),(0,z.jsx)(`td`,{children:(0,z.jsx)(`span`,{className:`chip ${e.mode===`rag`?`red`:``}`,children:e.mode})}),(0,z.jsx)(`td`,{className:`muted tiny`,children:new Date(e.timestamp).toLocaleString()})]},e.id)),a.length===0&&(0,z.jsx)(`tr`,{children:(0,z.jsx)(`td`,{colSpan:3,className:`muted tiny`,style:{textAlign:`center`,padding:16},children:`No queries yet`})})]})]})})]})]}),(0,z.jsxs)(`div`,{className:`grid-3`,children:[(0,z.jsxs)(`div`,{className:`card`,children:[(0,z.jsx)(`div`,{className:`card-hd`,children:(0,z.jsxs)(`h3`,{children:[(0,z.jsx)(Pi,{size:14}),` RAG index`]})}),(0,z.jsx)(`div`,{className:`card-bd`,children:r?(0,z.jsxs)(z.Fragment,{children:[(0,z.jsxs)(`div`,{className:`grid-2`,style:{gap:10},children:[(0,z.jsxs)(`div`,{children:[(0,z.jsx)(`div`,{className:`muted tiny`,children:`Chunks`}),(0,z.jsx)(`div`,{style:{fontSize:18,fontWeight:600},children:gr(r.chunksTotal)})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(`div`,{className:`muted tiny`,children:`Indexed`}),(0,z.jsx)(`div`,{style:{fontSize:18,fontWeight:600},children:gr(r.chunksIndexed)})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(`div`,{className:`muted tiny`,children:`Dimensions`}),(0,z.jsx)(`div`,{className:`mono`,style:{fontSize:13},children:gr(r.dimensions)})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(`div`,{className:`muted tiny`,children:`Model`}),(0,z.jsx)(`div`,{className:`mono`,style:{fontSize:12},children:r.embedder.label})]})]}),(0,z.jsx)(`div`,{className:`bar`,style:{marginTop:14},children:(0,z.jsx)(`i`,{style:{width:r.chunksTotal>0?`${Math.round(r.chunksIndexed/r.chunksTotal*100)}%`:`0%`}})}),(0,z.jsxs)(`div`,{className:`tiny muted`,style:{marginTop:6},children:[`Updated: `,r.updatedAt??`never`]})]}):(0,z.jsx)(`div`,{className:`muted tiny`,children:`RAG status unavailable`})})]}),(0,z.jsxs)(`div`,{className:`card`,children:[(0,z.jsx)(`div`,{className:`card-hd`,children:(0,z.jsxs)(`h3`,{children:[(0,z.jsx)(Ni,{size:14}),` Tenancy`]})}),(0,z.jsxs)(`div`,{className:`card-bd`,children:[(0,z.jsx)(`div`,{className:`row-h`,style:{marginBottom:10},children:(0,z.jsxs)(`span`,{className:`chip ${c?`green`:`amber`}`,children:[(0,z.jsx)(zi,{size:11}),c?`Configured`:`Not configured`]})}),(0,z.jsx)(`div`,{className:`tiny muted`,style:{lineHeight:1.6},children:c?`${t.tenantPolicy.roots.length} root(s) configured, ${t.tenantPolicy.enforcement} mode.`:`Multi-tenant scoping isn't set. Generated SQL won't enforce row-level isolation.`}),!c&&(0,z.jsxs)(`button`,{type:`button`,className:`btn sm primary`,style:{marginTop:12},onClick:()=>e(`/tenancy`),children:[(0,z.jsx)(Pi,{size:12}),` Draft tenant policy`]})]})]}),(0,z.jsxs)(`div`,{className:`card`,children:[(0,z.jsx)(`div`,{className:`card-hd`,children:(0,z.jsxs)(`h3`,{children:[(0,z.jsx)(zi,{size:14}),` Suggested next actions`]})}),(0,z.jsxs)(`div`,{className:`card-bd`,style:{display:`flex`,flexDirection:`column`,gap:8},children:[n.filter(e=>!e.draft.description).length>0&&(0,z.jsxs)(`div`,{className:`row-h`,children:[(0,z.jsx)(`span`,{style:{width:8,height:8,borderRadius:`50%`,background:`var(--red-600)`,flexShrink:0}}),(0,z.jsxs)(`span`,{style:{fontSize:12.5},children:[`Add description to`,` `,(0,z.jsx)(`span`,{className:`mono`,children:n.find(e=>!e.draft.description)?.physical.name})]})]}),!r?.hasIndex&&(0,z.jsxs)(`div`,{className:`row-h`,children:[(0,z.jsx)(`span`,{style:{width:8,height:8,borderRadius:`50%`,background:`var(--amber-500)`,flexShrink:0}}),(0,z.jsx)(`span`,{style:{fontSize:12.5},children:`Build RAG index for retrieval-augmented queries`})]}),r?.stale&&(0,z.jsxs)(`div`,{className:`row-h`,children:[(0,z.jsx)(`span`,{style:{width:8,height:8,borderRadius:`50%`,background:`var(--ink-400)`,flexShrink:0}}),(0,z.jsx)(`span`,{style:{fontSize:12.5},children:`Rebuild index — tables changed since last build`})]}),n.length>0&&o===0&&(0,z.jsxs)(`div`,{className:`row-h`,children:[(0,z.jsx)(`span`,{style:{width:8,height:8,borderRadius:`50%`,background:`var(--amber-500)`,flexShrink:0}}),(0,z.jsx)(`span`,{style:{fontSize:12.5},children:`Start enriching tables to improve SQL generation quality`})]})]})]})]})]})})]})}var um=e=>(0,z.jsx)(Ta,{"data-slot":`collapsible-trigger`,...e}),dm=e=>(0,z.jsx)(Da,{"data-slot":`collapsible-content`,...e}),fm=e=>(0,z.jsx)(Aa,{"data-slot":`collapsible`,...e}),pm={enriched:`Complete`,partial:`Partial`,none:`Not started`};function mm(){let e=it(),t=ct(),{filteredTables:n,tables:r,selectedTable:a,setSelectedTableId:o,tableSearch:s,setTableSearch:c,drafts:l}=yr(),[u,d]=(0,x.useState)(null),[f,p]=(0,x.useState)(null),m=(0,x.useCallback)(e=>{let t=l[e.physical.id]??e.draft,n=t.description||t.aliases&&t.aliases.length>0,r=Object.values(t.columns??{}).every(e=>e.description);return n&&r?`enriched`:n?`partial`:`none`},[l]),h=(0,x.useCallback)(e=>(l[e.physical.id]??e.draft).tracked!==!1,[l]),g=(0,x.useMemo)(()=>{let e={enriched:0,partial:0,none:0};for(let t of r)e[m(t)]++;return e},[r,m]),_=(0,x.useMemo)(()=>r.filter(e=>!h(e)).length,[r,h]),v=(0,x.useMemo)(()=>{let e=n;return u&&(e=e.filter(e=>u.has(m(e)))),f===`tracked`?e=e.filter(e=>h(e)):f===`untracked`&&(e=e.filter(e=>!h(e))),e},[n,u,f,m,h]),y=(0,x.useMemo)(()=>{let e=new Map;for(let t of v){let n=t.physical.schema;e.has(n)||e.set(n,[]),e.get(n).push(t)}return Array.from(e.entries()).sort(([e],[t])=>e.localeCompare(t))},[v]),b=(0,x.useMemo)(()=>y.map(([e])=>e),[y]),[S,C]=(0,x.useState)(new Set),w=(0,x.useMemo)(()=>new Set(b.filter(e=>!S.has(e))),[b,S]),T=S.size===0,E=()=>C(new Set(b)),D=()=>C(new Set);(0,x.useEffect)(()=>{s&&C(new Set)},[s]),(0,x.useEffect)(()=>{if(t.schema&&t.name)o(`table:${t.schema}.${t.name}`);else if(r.length>0&&!t.schema){let t=r[0];e(`/tables/${t.physical.schema}/${t.physical.name}/enrichment`,{replace:!0})}},[t.schema,t.name,r,e,o]);function O(e){d(t=>{if(!t)return new Set([e]);let n=new Set(t);return n.has(e)?(n.delete(e),n.size===0?null:n):(n.add(e),n.size===3?null:n)})}let k=!!(t.schema&&t.name);return(0,z.jsxs)(z.Fragment,{children:[(0,z.jsxs)(`div`,{className:`sub-rail`,children:[(0,z.jsxs)(`div`,{className:`sub-rail-hd`,children:[(0,z.jsx)(`h2`,{children:`Tables`}),(0,z.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:6},children:[(0,z.jsxs)(`span`,{className:`muted tiny`,children:[r.length,` tables`]}),y.length>1&&(0,z.jsx)(`button`,{type:`button`,className:`btn ghost sm`,onClick:T?D:E,title:T?`Collapse all`:`Expand all`,style:{padding:2,height:20,width:20},children:T?(0,z.jsx)(di,{size:13}):(0,z.jsx)(fi,{size:13})})]})]}),(0,z.jsxs)(`div`,{className:`sub-rail-search`,children:[(0,z.jsx)(ji,{size:13}),(0,z.jsx)(`input`,{type:`text`,"aria-label":`Search tables`,placeholder:`Search tables…`,value:s,onChange:e=>c(e.target.value)})]}),(0,z.jsxs)(`div`,{className:`enrich-filter-bar`,children:[[`enriched`,`partial`,`none`].map(e=>{let t=!u||u.has(e);return(0,z.jsxs)(`button`,{type:`button`,className:`enrich-filter-chip ${e} ${t?`active`:``}`,onClick:()=>O(e),title:`${t?`Hide`:`Show`} ${pm[e].toLowerCase()} tables`,children:[(0,z.jsx)(`span`,{className:`enrich-dot ${e}`}),(0,z.jsx)(`span`,{className:`enrich-filter-label`,children:pm[e]}),(0,z.jsx)(`span`,{className:`enrich-filter-count`,children:g[e]})]},e)}),_>0&&(0,z.jsxs)(`button`,{type:`button`,className:`enrich-filter-chip untracked ${f===`untracked`?`active`:``}`,onClick:()=>p(e=>e===`untracked`?null:`untracked`),title:f===`untracked`?`Show all tables`:`Show ${_} untracked table${_===1?``:`s`}`,children:[(0,z.jsx)(gi,{size:11}),(0,z.jsx)(`span`,{className:`enrich-filter-label`,children:`Untracked`}),(0,z.jsx)(`span`,{className:`enrich-filter-count`,children:_})]})]}),(0,z.jsxs)(`div`,{className:`sub-rail-list`,children:[y.map(([t,n])=>(0,z.jsx)(fm,{open:w.has(t),onOpenChange:e=>{C(n=>{let r=new Set(n);return e?r.delete(t):r.add(t),r})},children:(0,z.jsxs)(`div`,{className:`schema-group`,children:[(0,z.jsx)(um,{asChild:!0,children:(0,z.jsxs)(`button`,{type:`button`,className:`schema-group-hd`,children:[(0,z.jsx)(ui,{size:12,className:`schema-chevron`,style:{transform:w.has(t)?`rotate(90deg)`:void 0}}),(0,z.jsx)(_i,{size:13,className:`schema-icon`}),(0,z.jsx)(`span`,{className:`schema-name`,children:t}),(0,z.jsx)(`span`,{className:`schema-count`,children:n.length})]})}),(0,z.jsx)(dm,{children:(0,z.jsx)(`div`,{className:`schema-group-bd`,children:n.map(t=>{let n=m(t),r=h(t);return(0,z.jsxs)(`button`,{type:`button`,className:`sub-rail-row table-leaf ${a?.physical.id===t.physical.id?`active`:``}${r?``:` untracked`}`,onClick:()=>e(`/tables/${t.physical.schema}/${t.physical.name}/enrichment`),title:r?void 0:`Untracked — excluded from LLM context`,children:[r?(0,z.jsx)(`span`,{className:`enrich-dot ${n}`}):(0,z.jsx)(gi,{size:10,style:{color:`var(--amber-500)`,flex:`none`}}),(0,z.jsx)(`span`,{className:`row-name mono`,children:t.physical.name}),(0,z.jsxs)(`span`,{className:`row-meta`,children:[t.physical.columns.length,` cols`]})]},t.physical.id)})})})]})},t)),v.length===0&&(0,z.jsx)(`div`,{className:`muted tiny`,style:{padding:`16px`,textAlign:`center`},children:f===`untracked`?`No untracked tables`:u?`No tables match this filter`:`No tables match your search`})]})]}),k?(0,z.jsx)(Nt,{}):(0,z.jsx)(`main`,{className:`main-pane`,children:(0,z.jsx)(`div`,{className:`main-body`,style:{display:`flex`,alignItems:`center`,justifyContent:`center`},children:(0,z.jsxs)(`div`,{style:{textAlign:`center`,color:`var(--ink-400)`},children:[(0,z.jsx)(Pi,{size:24,style:{margin:`0 auto 8px`}}),(0,z.jsx)(`p`,{style:{fontSize:13},children:`Select a table to start enriching`})]})})})]})}function hm({status:e}){return(0,z.jsxs)(`div`,{className:`status-banner ${e.kind}`,children:[e.kind===`loading`&&(0,z.jsx)(xi,{size:14,className:`animate-spin`}),e.kind===`success`&&(0,z.jsx)(V,{size:14}),e.kind===`error`&&(0,z.jsx)(pi,{size:14}),(0,z.jsx)(`span`,{children:e.text})]})}function gm({status:e}){return(0,z.jsx)(`div`,{className:`inline-status ${e.kind}`,children:e.text})}function _m(){let{selectedTable:e,selectedDraft:t,dirty:n,saveStatus:r,saveSelectedTable:a,resetSelectedDraft:o,busy:s}=yr();if(!e||!t)return null;let c=e,l=t.description||t.aliases&&t.aliases.length>0,u=Object.values(t.columns??{}).every(e=>e.description);return(0,z.jsxs)(`main`,{className:`main-pane`,children:[(0,z.jsxs)(`div`,{className:`main-hd`,children:[(0,z.jsxs)(`div`,{className:`main-title`,children:[(0,z.jsxs)(`h1`,{children:[(0,z.jsx)(`span`,{className:`enrich-dot ${l&&u?`enriched`:l?`partial`:`none`}`,style:{marginRight:8}}),c.physical.schema,`.`,c.physical.name]}),(0,z.jsxs)(`div`,{className:`main-sub`,children:[c.physical.columns.length,` columns`,c.physical.relationships&&c.physical.relationships.length>0?` · ${c.physical.relationships.length} relationships`:``,c.missingColumnIds.length>0?` · ${c.missingColumnIds.length} missing`:``]})]}),(0,z.jsxs)(`div`,{className:`main-actions`,children:[(0,z.jsxs)(`button`,{type:`button`,className:`btn`,onClick:o,disabled:!n||s.has(`save`),children:[(0,z.jsx)(ki,{size:14}),` Revert`]}),(0,z.jsxs)(`button`,{type:`button`,className:`btn primary`,onClick:()=>void a(),disabled:!n||s.has(`save`),children:[s.has(`save`)?(0,z.jsx)(xi,{size:14,className:`animate-spin`}):(0,z.jsx)(Ai,{size:14}),`Save`]})]})]}),r&&(0,z.jsx)(hm,{status:r}),(0,z.jsxs)(`div`,{className:`sub-tabs`,children:[(0,z.jsx)(Dn,{to:`enrichment`,className:({isActive:e})=>`sub-tab ${e?`active`:``}`,children:`Enrichment`}),(0,z.jsx)(Dn,{to:`schema`,className:({isActive:e})=>`sub-tab ${e?`active`:``}`,children:`Schema`}),(0,z.jsx)(Dn,{to:`sensitivity`,className:({isActive:e})=>`sub-tab ${e?`active`:``}`,children:`Sensitivity`})]}),(0,z.jsx)(`div`,{className:`main-body`,children:(0,z.jsx)(Nt,{})})]})}var vm=Symbol.for(`react.lazy`),ym=x.use;function bm(e){return typeof e==`object`&&!!e&&`then`in e}function xm(e){return typeof e==`object`&&!!e&&`$$typeof`in e&&e.$$typeof===vm&&`_payload`in e&&bm(e._payload)}function Sm(e){let t=wm(e),n=x.forwardRef((e,n)=>{let{children:r,...a}=e;xm(r)&&typeof ym==`function`&&(r=ym(r._payload));let o=x.Children.toArray(r),s=o.find(Em);if(s){let e=s.props.children,r=o.map(t=>t===s?x.Children.count(e)>1?x.Children.only(null):x.isValidElement(e)?e.props.children:null:t);return(0,z.jsx)(t,{...a,ref:n,children:x.isValidElement(e)?x.cloneElement(e,void 0,r):null})}return(0,z.jsx)(t,{...a,ref:n,children:r})});return n.displayName=`${e}.Slot`,n}var Cm=Sm(`Slot`);function wm(e){let t=x.forwardRef((e,t)=>{let{children:n,...r}=e;if(xm(n)&&typeof ym==`function`&&(n=ym(n._payload)),x.isValidElement(n)){let e=Om(n),a=Dm(r,n.props);return n.type!==x.Fragment&&(a.ref=t?Vi(t,e):e),x.cloneElement(n,a)}return x.Children.count(n)>1?x.Children.only(null):null});return t.displayName=`${e}.SlotClone`,t}var Tm=Symbol(`radix.slottable`);function Em(e){return x.isValidElement(e)&&typeof e.type==`function`&&`__radixId`in e.type&&e.type.__radixId===Tm}function Dm(e,t){let n={...t};for(let r in t){let a=e[r],o=t[r];/^on[A-Z]/.test(r)?a&&o?n[r]=(...e)=>{let t=o(...e);return a(...e),t}:a&&(n[r]=a):r===`style`?n[r]={...a,...o}:r===`className`&&(n[r]=[a,o].filter(Boolean).join(` `))}return{...e,...n}}function Om(e){let t=Object.getOwnPropertyDescriptor(e.props,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning;return n?e.ref:(t=Object.getOwnPropertyDescriptor(e,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}function km(e){return e?.join(`, `)??``}var Am=Qr(`inline-flex h-9 shrink-0 items-center justify-center gap-2 rounded-md border px-3 text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50`,{variants:{variant:{default:`border-transparent bg-primary text-primary-foreground hover:bg-primary/90`,secondary:`border-border bg-secondary text-secondary-foreground hover:bg-secondary/80`,outline:`border-border bg-background hover:bg-muted`,ghost:`border-transparent bg-transparent hover:bg-muted`,destructive:`border-transparent bg-destructive text-destructive-foreground hover:bg-destructive/90`},size:{default:`h-9 px-3`,sm:`h-8 px-2.5 text-xs`,icon:`h-9 w-9 px-0`}},defaultVariants:{variant:`default`,size:`default`}}),jm=(0,x.forwardRef)(({className:e,variant:t,size:n,asChild:r=!1,...a},o)=>(0,z.jsx)(r?Cm:`button`,{className:Z(Am({variant:t,size:n}),e),ref:o,...a}));jm.displayName=`Button`;var Mm=(0,x.forwardRef)(({className:e,...t},n)=>(0,z.jsx)(`input`,{ref:n,className:Z(`h-9 w-full rounded-md border border-input bg-background px-3 text-sm outline-none transition-colors placeholder:text-muted-foreground focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50`,e),...t}));Mm.displayName=`Input`;function Nm({value:e,onChange:t}){let[n,r]=(0,x.useState)(null);return(0,z.jsx)(Mm,{value:n??km(e),onChange:e=>r(e.target.value),onFocus:()=>r(km(e)),onBlur:()=>{t(mr(n??km(e))),r(null)}})}var Pm=(0,x.forwardRef)(({className:e,...t},n)=>(0,z.jsx)(`textarea`,{ref:n,className:Z(`min-h-24 w-full rounded-md border border-input bg-background px-3 py-2 text-sm outline-none transition-colors placeholder:text-muted-foreground focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50`,e),...t}));Pm.displayName=`Textarea`;function Q({className:e,variant:t=`default`,...n}){return(0,z.jsx)(`span`,{className:Z(`inline-flex min-h-6 max-w-full items-center rounded-md px-2 py-0.5 text-xs font-medium`,t===`default`&&`bg-primary text-primary-foreground`,t===`secondary`&&`bg-secondary text-secondary-foreground`,t===`warning`&&`bg-warning text-warning-foreground`,t===`danger`&&`bg-destructive text-destructive-foreground`,t===`outline`&&`border border-border bg-background text-muted-foreground`,e),...n})}function $({label:e,description:t,children:n,className:r}){return(0,z.jsxs)(`label`,{className:Z(`grid gap-1.5`,r),children:[(0,z.jsx)(`span`,{className:`text-xs font-semibold text-muted-foreground`,children:e}),n,t?(0,z.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:t}):null]})}function Fm(){let{workspace:e,selectedTable:t,selectedDraft:n,updateTableDraft:r,updateColumnDraft:a,requestSuggestion:o,suggestingKey:s}=yr();if(!t||!n||!e)return null;let c=e.aiConfigured,l=t,u=n,d=l.physical.id;return(0,z.jsxs)(`div`,{className:`stack`,style:{padding:`var(--pad-y) var(--pad-x)`},children:[(0,z.jsxs)(`section`,{className:`card`,children:[(0,z.jsx)(`div`,{className:`card-hd`,children:(0,z.jsx)(`h3`,{children:`Table Enrichment`})}),(0,z.jsx)(`div`,{className:`card-bd`,children:(0,z.jsxs)(`div`,{style:{display:`grid`,gap:16},children:[(0,z.jsx)(Im,{aiConfigured:c,label:`Description`,onSuggest:()=>o({scope:`table`,tableId:d,field:`description`},`table description`),suggesting:s===`table:${d}:description`,children:(0,z.jsx)(Pm,{value:u.description,onChange:e=>r(d,t=>({...t,description:e.target.value}))})}),(0,z.jsxs)(`div`,{style:{display:`grid`,gap:16,gridTemplateColumns:`1fr 1fr`},children:[(0,z.jsx)(Im,{aiConfigured:c,label:`Aliases`,onSuggest:()=>o({scope:`table`,tableId:d,field:`aliases`},`table aliases`),suggesting:s===`table:${d}:aliases`,children:(0,z.jsx)(Nm,{value:u.aliases,onChange:e=>r(d,t=>({...t,aliases:e}))})}),(0,z.jsx)(Im,{aiConfigured:c,label:`Primary entity`,onSuggest:()=>o({scope:`table`,tableId:d,field:`primaryEntity`},`primary entity`),suggesting:s===`table:${d}:primaryEntity`,children:(0,z.jsx)(Mm,{value:u.primaryEntity??``,onChange:e=>r(d,t=>({...t,primaryEntity:e.target.value.trim()||void 0}))})})]}),(0,z.jsxs)(`div`,{style:{display:`grid`,gap:16,gridTemplateColumns:`1fr 220px`},children:[(0,z.jsx)($,{label:`Tags`,description:`Comma-separated labels used for browsing and filtering.`,children:(0,z.jsx)(Nm,{value:u.tags,onChange:e=>r(d,t=>({...t,tags:e}))})}),(0,z.jsx)(Lm,{label:`Table sensitivity override`,value:u.sensitive,onChange:e=>r(d,t=>({...t,sensitive:e}))})]})]})})]}),(0,z.jsxs)(`section`,{className:`card`,children:[(0,z.jsx)(`div`,{className:`card-hd`,children:(0,z.jsx)(`h3`,{children:`Common Query Language`})}),(0,z.jsx)(`div`,{className:`card-bd`,children:(0,z.jsx)(Im,{aiConfigured:c,label:`Business vocabulary`,onSuggest:()=>o({scope:`table`,tableId:d,field:`commonQueryLanguage`},`common query language`),suggesting:s===`table:${d}:commonQueryLanguage`,children:(0,z.jsx)(Pm,{className:`min-h-36`,value:u.commonQueryLanguage??``,onChange:e=>r(d,t=>({...t,commonQueryLanguage:e.target.value}))})})})]}),(0,z.jsxs)(`section`,{className:`card`,children:[(0,z.jsx)(`div`,{className:`card-hd`,children:(0,z.jsx)(`h3`,{children:`Example Questions`})}),(0,z.jsx)(`div`,{className:`card-bd`,children:(0,z.jsx)($,{label:`Questions`,children:(0,z.jsx)(Pm,{className:`min-h-32`,value:u.exampleQuestions??``,onChange:e=>r(d,t=>({...t,exampleQuestions:e.target.value}))})})})]}),(0,z.jsxs)(`section`,{className:`card`,children:[(0,z.jsxs)(`div`,{className:`card-hd`,children:[(0,z.jsx)(`h3`,{children:`Columns`}),l.missingColumnIds.length>0&&(0,z.jsxs)(Q,{variant:l.missingColumnIds.length>0?`warning`:`secondary`,children:[l.missingColumnIds.length,` missing`]})]}),(0,z.jsx)(`div`,{className:`card-bd`,children:(0,z.jsx)(`div`,{style:{display:`grid`,gap:12},children:l.physical.columns.map(e=>{let t=u.columns[e.id]??{};return(0,z.jsxs)(`section`,{className:`column-row`,children:[(0,z.jsx)(`div`,{style:{display:`flex`,flexWrap:`wrap`,alignItems:`center`,justifyContent:`space-between`,gap:8},children:(0,z.jsxs)(`div`,{children:[(0,z.jsxs)(`div`,{style:{display:`flex`,flexWrap:`wrap`,alignItems:`center`,gap:8},children:[(0,z.jsx)(`h4`,{style:{fontSize:13,fontWeight:600},children:e.name}),(0,z.jsx)(Q,{variant:`outline`,children:e.type}),e.primaryKey&&(0,z.jsx)(Q,{variant:`secondary`,children:`PK`}),e.nullable&&(0,z.jsx)(Q,{variant:`outline`,children:`nullable`}),(e.sensitive||t.sensitive)&&(0,z.jsx)(Q,{variant:`danger`,children:`sensitive`})]}),(0,z.jsx)(`p`,{className:`muted tiny`,style:{marginTop:4,wordBreak:`break-all`},children:e.id})]})}),(0,z.jsxs)(`div`,{style:{marginTop:12,display:`grid`,gap:12},children:[(0,z.jsx)(Im,{aiConfigured:c,label:`Description`,onSuggest:()=>o({scope:`column`,tableId:d,columnId:e.id,field:`description`},`${e.name} description`),suggesting:s===`column:${d}:${e.id}:description`,children:(0,z.jsx)(Pm,{value:t.description??``,onChange:t=>a(d,e.id,e=>({...e,description:t.target.value}))})}),(0,z.jsxs)(`div`,{style:{display:`grid`,gap:12,gridTemplateColumns:`1fr 1fr 1fr`},children:[(0,z.jsx)(Im,{aiConfigured:c,label:`Aliases`,onSuggest:()=>o({scope:`column`,tableId:d,columnId:e.id,field:`aliases`},`${e.name} aliases`),suggesting:s===`column:${d}:${e.id}:aliases`,children:(0,z.jsx)(Nm,{value:t.aliases,onChange:t=>a(d,e.id,e=>({...e,aliases:t}))})}),(0,z.jsx)($,{label:`Enum notes`,children:(0,z.jsx)(Nm,{value:t.enum,onChange:t=>a(d,e.id,e=>({...e,enum:t}))})}),(0,z.jsx)(Lm,{label:`Sensitivity override`,value:t.sensitive,onChange:t=>a(d,e.id,e=>({...e,sensitive:t}))})]})]})]},e.id)})})})]}),(0,z.jsxs)(`section`,{className:`card`,children:[(0,z.jsx)(`div`,{className:`card-hd`,children:(0,z.jsx)(`h3`,{children:`Relationships`})}),(0,z.jsx)(`div`,{className:`card-bd`,children:l.physical.relationships&&l.physical.relationships.length>0?(0,z.jsx)(`div`,{style:{display:`grid`,gap:8},children:l.physical.relationships.map((e,t)=>(0,z.jsxs)(`div`,{className:`relationship-row`,children:[(0,z.jsx)(`span`,{style:{wordBreak:`break-all`},children:e.from}),(0,z.jsx)(ui,{size:14,style:{color:`var(--ink-400)`,flexShrink:0}}),(0,z.jsx)(`span`,{style:{wordBreak:`break-all`},children:e.to})]},`${e.from}-${e.to}-${t}`))}):(0,z.jsx)(`p`,{className:`muted`,style:{fontSize:13},children:`No relationships recorded for this table.`})})]})]})}function Im({aiConfigured:e,children:t,label:n,onSuggest:r,suggesting:a}){return(0,z.jsxs)(`div`,{style:{display:`grid`,gap:6},children:[(0,z.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,justifyContent:`space-between`,gap:8},children:[(0,z.jsx)(`span`,{className:`muted`,style:{fontSize:12,fontWeight:600,textTransform:`uppercase`,letterSpacing:`0.04em`},children:n}),(0,z.jsxs)(`button`,{type:`button`,className:`suggest-link`,disabled:!e||a,onClick:()=>void r(),title:e?`Suggest with configured AI model`:`Configure an AI key to enable suggestions`,children:[a?(0,z.jsx)(xi,{size:12,className:`animate-spin`}):(0,z.jsx)(Pi,{size:12}),`Suggest`]})]}),t]})}function Lm({label:e,onChange:t,value:n}){return(0,z.jsxs)(`label`,{style:{display:`grid`,gap:6},children:[(0,z.jsx)(`span`,{className:`muted`,style:{fontSize:12,fontWeight:600,textTransform:`uppercase`,letterSpacing:`0.04em`},children:e}),(0,z.jsxs)(`select`,{className:`h-9 w-full rounded-md border border-input bg-background px-3 text-sm outline-none focus-visible:ring-2 focus-visible:ring-ring`,value:n===void 0?`inherit`:n?`true`:`false`,onChange:e=>{e.target.value===`inherit`?t(void 0):t(e.target.value===`true`)},children:[(0,z.jsx)(`option`,{value:`inherit`,children:`Inherit physical metadata`}),(0,z.jsx)(`option`,{value:`true`,children:`Sensitive`}),(0,z.jsx)(`option`,{value:`false`,children:`Not sensitive`})]})]})}function Rm(){let{selectedTable:e}=yr();if(!e)return null;let t=e;return(0,z.jsxs)(`div`,{className:`stack`,style:{padding:`var(--pad-y) var(--pad-x)`},children:[(0,z.jsxs)(`section`,{className:`card`,children:[(0,z.jsx)(`div`,{className:`card-hd`,children:(0,z.jsx)(`h3`,{children:`Column Details`})}),(0,z.jsx)(`div`,{className:`card-bd tight`,children:(0,z.jsxs)(`table`,{className:`tbl`,children:[(0,z.jsx)(`thead`,{children:(0,z.jsxs)(`tr`,{children:[(0,z.jsx)(`th`,{children:`Name`}),(0,z.jsx)(`th`,{children:`Type`}),(0,z.jsx)(`th`,{children:`Nullable`}),(0,z.jsx)(`th`,{children:`PK`}),(0,z.jsx)(`th`,{children:`Default`}),(0,z.jsx)(`th`,{children:`Sensitive`})]})}),(0,z.jsx)(`tbody`,{children:t.physical.columns.map(e=>(0,z.jsxs)(`tr`,{children:[(0,z.jsx)(`td`,{children:(0,z.jsx)(`span`,{className:`mono`,children:e.name})}),(0,z.jsx)(`td`,{children:(0,z.jsx)(Q,{variant:`outline`,children:e.type})}),(0,z.jsx)(`td`,{children:e.nullable?`Yes`:`No`}),(0,z.jsx)(`td`,{children:e.primaryKey?(0,z.jsx)(Q,{variant:`secondary`,children:`PK`}):`—`}),(0,z.jsx)(`td`,{className:`muted tiny`,children:e.default??`—`}),(0,z.jsx)(`td`,{children:e.sensitive?(0,z.jsx)(Q,{variant:`danger`,children:`sensitive`}):`—`})]},e.id))})]})})]}),t.physical.relationships&&t.physical.relationships.length>0&&(0,z.jsxs)(`section`,{className:`card`,children:[(0,z.jsx)(`div`,{className:`card-hd`,children:(0,z.jsx)(`h3`,{children:`Relationships`})}),(0,z.jsx)(`div`,{className:`card-bd`,children:(0,z.jsx)(`div`,{style:{display:`grid`,gap:8},children:t.physical.relationships.map((e,t)=>(0,z.jsxs)(`div`,{className:`relationship-row`,children:[(0,z.jsx)(`span`,{style:{wordBreak:`break-all`},children:e.from}),(0,z.jsx)(ui,{size:14,style:{color:`var(--ink-400)`,flexShrink:0}}),(0,z.jsx)(`span`,{style:{wordBreak:`break-all`},children:e.to})]},`${e.from}-${e.to}-${t}`))})})]})]})}function zm(){let{selectedTable:e,selectedDraft:t,updateColumnDraft:n,updateTableDraft:r}=yr();if(!e||!t)return null;let a=e,o=t,s=a.physical.id;return(0,z.jsxs)(`div`,{className:`stack`,style:{padding:`var(--pad-y) var(--pad-x)`},children:[(0,z.jsxs)(`section`,{className:`card`,children:[(0,z.jsx)(`div`,{className:`card-hd`,children:(0,z.jsx)(`h3`,{children:`LLM tracking`})}),(0,z.jsxs)(`div`,{className:`card-bd`,children:[(0,z.jsx)(`p`,{className:`muted`,style:{fontSize:12,marginBottom:10},children:`Untracked tables are excluded from LLM prompts and RAG indexing. They remain in the schema and are still visible here.`}),(0,z.jsxs)(`label`,{style:{display:`grid`,gap:6},children:[(0,z.jsx)(`span`,{className:`muted`,style:{fontSize:12,fontWeight:600,textTransform:`uppercase`,letterSpacing:`0.04em`},children:`Status`}),(0,z.jsxs)(`select`,{className:`h-9 w-full rounded-md border border-input bg-background px-3 text-sm outline-none focus-visible:ring-2 focus-visible:ring-ring`,value:o.tracked===!1?`false`:`true`,onChange:e=>{let t=e.target.value===`false`?!1:void 0;r(s,e=>({...e,tracked:t}))},children:[(0,z.jsx)(`option`,{value:`true`,children:`Tracked — included in LLM context`}),(0,z.jsx)(`option`,{value:`false`,children:`Untracked — excluded from LLM context`})]})]})]})]}),(0,z.jsxs)(`section`,{className:`card`,children:[(0,z.jsx)(`div`,{className:`card-hd`,children:(0,z.jsx)(`h3`,{children:`Table-level sensitivity`})}),(0,z.jsx)(`div`,{className:`card-bd`,children:(0,z.jsxs)(`label`,{style:{display:`grid`,gap:6},children:[(0,z.jsx)(`span`,{className:`muted`,style:{fontSize:12,fontWeight:600,textTransform:`uppercase`,letterSpacing:`0.04em`},children:`Override`}),(0,z.jsxs)(`select`,{className:`h-9 w-full rounded-md border border-input bg-background px-3 text-sm outline-none focus-visible:ring-2 focus-visible:ring-ring`,value:o.sensitive===void 0?`inherit`:o.sensitive?`true`:`false`,onChange:e=>{let t=e.target.value===`inherit`?void 0:e.target.value===`true`;r(s,e=>({...e,sensitive:t}))},children:[(0,z.jsx)(`option`,{value:`inherit`,children:`Inherit physical metadata`}),(0,z.jsx)(`option`,{value:`true`,children:`Sensitive`}),(0,z.jsx)(`option`,{value:`false`,children:`Not sensitive`})]})]})})]}),(0,z.jsxs)(`section`,{className:`card`,children:[(0,z.jsx)(`div`,{className:`card-hd`,children:(0,z.jsx)(`h3`,{children:`Column sensitivity`})}),(0,z.jsx)(`div`,{className:`card-bd tight`,children:(0,z.jsxs)(`table`,{className:`tbl`,children:[(0,z.jsx)(`thead`,{children:(0,z.jsxs)(`tr`,{children:[(0,z.jsx)(`th`,{children:`Column`}),(0,z.jsx)(`th`,{children:`Physical`}),(0,z.jsx)(`th`,{children:`Override`}),(0,z.jsx)(`th`,{children:`Effective`})]})}),(0,z.jsx)(`tbody`,{children:a.physical.columns.map(e=>{let t=o.columns[e.id]??{},r=t.sensitive===void 0?e.sensitive:t.sensitive;return(0,z.jsxs)(`tr`,{children:[(0,z.jsx)(`td`,{children:(0,z.jsx)(`span`,{className:`mono`,children:e.name})}),(0,z.jsx)(`td`,{children:e.sensitive?(0,z.jsx)(Q,{variant:`danger`,children:`sensitive`}):(0,z.jsx)(`span`,{className:`muted`,children:`—`})}),(0,z.jsx)(`td`,{children:(0,z.jsxs)(`select`,{style:{fontSize:12,padding:`2px 6px`,borderRadius:4,border:`1px solid var(--border)`},value:t.sensitive===void 0?`inherit`:t.sensitive?`true`:`false`,onChange:t=>{let r=t.target.value===`inherit`?void 0:t.target.value===`true`;n(s,e.id,e=>({...e,sensitive:r}))},children:[(0,z.jsx)(`option`,{value:`inherit`,children:`Inherit`}),(0,z.jsx)(`option`,{value:`true`,children:`Sensitive`}),(0,z.jsx)(`option`,{value:`false`,children:`Not sensitive`})]})}),(0,z.jsx)(`td`,{children:r?(0,z.jsx)(Q,{variant:`danger`,children:`sensitive`}):(0,z.jsx)(`span`,{className:`muted`,children:`—`})})]},e.id)})})]})})]})]})}var Bm=`concept:`;function Vm(e){return e.startsWith(Bm)?e.slice(8):e}function Hm(e){let t=e.trim();return t?t.startsWith(Bm)?t:Bm+t:``}function Um(e){return JSON.parse(JSON.stringify(e))}function Wm(){let{workspace:e,tables:t,handleSaveConcepts:n,saveStatus:r,busy:a}=yr(),o=(0,x.useMemo)(()=>{if(!t.length)return[];let e=[];for(let n of t){e.push({id:n.physical.id,label:`${n.physical.schema}.${n.physical.name}`,kind:`table`});for(let t of n.physical.columns)e.push({id:t.id,label:`${n.physical.schema}.${n.physical.name} → ${t.name}`,kind:`column`})}return e},[t]);if(!e)return null;let s=e.concepts.map(e=>e.id).join(`,`);return(0,z.jsx)(`main`,{className:`main-pane`,children:(0,z.jsx)(Km,{concepts:e.concepts,linkOptions:o,onSave:n,saveStatus:r,busy:a},s)})}function Gm(e,t){switch(t.type){case`set_selectedIndex`:return{...e,selectedIndex:t.payload};case`set_conceptSearch`:return{...e,conceptSearch:t.payload};case`merge_addDraft`:return{...e,addDraft:{...e.addDraft,...t.payload}};case`update_concept`:return{...e,draft:e.draft.map((e,n)=>n===t.index?t.updater(Um(e)):e)};case`remove_concept`:{let n=e.draft.filter((e,n)=>n!==t.index),r=e.selectedIndex;return e.selectedIndex===t.index?r=null:e.selectedIndex!==null&&e.selectedIndex>t.index&&(r=e.selectedIndex-1),{...e,draft:n,selectedIndex:r}}case`commit_add`:return{...e,draft:[...e.draft,t.concept],selectedIndex:t.newIndex,addDraft:{},addOpen:!1};case`open_add_form`:return{...e,addOpen:!0,selectedIndex:null};case`select_concept`:return{...e,selectedIndex:t.index,addOpen:!1};case`cancel_add`:return{...e,addOpen:!1,addDraft:{}}}}function Km({concepts:e,linkOptions:t,onSave:n,saveStatus:r,busy:a}){let[o,s]=(0,x.useReducer)(Gm,null,()=>({draft:Um(e),selectedIndex:null,addOpen:!1,addDraft:{},conceptSearch:``})),{draft:c,selectedIndex:l,addOpen:u,addDraft:d,conceptSearch:f}=o,p=JSON.stringify(c)!==JSON.stringify(e),m=(0,x.useMemo)(()=>{if(!f)return c.map((e,t)=>({concept:e,index:t}));let e=f.toLowerCase();return c.flatMap((t,n)=>t.label.toLowerCase().includes(e)||t.id.toLowerCase().includes(e)||t.synonyms?.some(t=>t.toLowerCase().includes(e))?[{concept:t,index:n}]:[])},[c,f]),h=l===null?null:c[l];function g(e,t){s({type:`update_concept`,index:e,updater:t})}function _(e){s({type:`remove_concept`,index:e})}function v(){let e=Hm(d.id??``);!e||!d.label?.trim()||s({type:`commit_add`,concept:{id:e,label:d.label.trim(),...d.synonyms?.length?{synonyms:d.synonyms}:{},...d.links?.length?{links:d.links}:{},...d.description?.trim()?{description:d.description.trim()}:{}},newIndex:c.length})}return(0,z.jsxs)(z.Fragment,{children:[(0,z.jsxs)(`div`,{className:`main-hd`,children:[(0,z.jsxs)(`div`,{className:`main-title`,children:[(0,z.jsxs)(`h1`,{children:[(0,z.jsx)(vi,{size:18,style:{display:`inline`,marginRight:8}}),`Concepts`]}),(0,z.jsx)(`div`,{className:`main-sub`,children:`Cross-table domain vocabulary for NL→SQL grounding`})]}),(0,z.jsxs)(`div`,{className:`main-actions`,children:[(0,z.jsxs)(`button`,{type:`button`,className:`btn`,onClick:()=>{setDraft(Um(e)),setSelectedIndex(null)},disabled:!p||a.has(`save-concepts`),children:[(0,z.jsx)(ki,{size:14}),` Revert`]}),(0,z.jsxs)(`button`,{type:`button`,className:`btn primary`,onClick:()=>void n(c),disabled:!p||a.has(`save-concepts`),children:[a.has(`save-concepts`)?(0,z.jsx)(xi,{size:14,className:`animate-spin`}):(0,z.jsx)(Ai,{size:14}),`Save`]})]})]}),r&&(0,z.jsx)(hm,{status:r}),(0,z.jsxs)(`div`,{style:{display:`grid`,gridTemplateColumns:`280px 1fr`,flex:1,minHeight:0,overflow:`hidden`},children:[(0,z.jsxs)(`div`,{className:`sub-rail`,style:{borderRight:`1px solid var(--border)`},children:[(0,z.jsxs)(`div`,{className:`sub-rail-hd`,children:[(0,z.jsx)(`h2`,{children:`Concepts`}),(0,z.jsx)(`span`,{className:`muted tiny`,children:c.length})]}),(0,z.jsxs)(`div`,{className:`sub-rail-search`,children:[(0,z.jsx)(ji,{size:13}),(0,z.jsx)(`input`,{type:`text`,"aria-label":`Search concepts`,placeholder:`Search concepts…`,value:f,onChange:e=>s({type:`set_conceptSearch`,payload:e.target.value})})]}),(0,z.jsx)(`div`,{style:{padding:`6px 8px`,borderBottom:`1px solid var(--border)`},children:(0,z.jsxs)(`button`,{type:`button`,className:`btn sm`,style:{width:`100%`,justifyContent:`center`},onClick:()=>s({type:`open_add_form`}),children:[(0,z.jsx)(Di,{size:12}),` Add concept`]})}),(0,z.jsxs)(`div`,{className:`sub-rail-list`,children:[m.map(({concept:e,index:t})=>(0,z.jsxs)(`button`,{type:`button`,className:`sub-rail-row ${l===t?`active`:``}`,onClick:()=>s({type:`select_concept`,index:t}),children:[(0,z.jsx)(vi,{size:12,style:{flexShrink:0,color:`var(--ink-400)`}}),(0,z.jsx)(`span`,{className:`row-name`,children:e.label}),(0,z.jsxs)(`span`,{className:`row-meta`,children:[e.links?.length??0,` links`]})]},e.id)),m.length===0&&(0,z.jsx)(`div`,{className:`muted tiny`,style:{padding:`16px`,textAlign:`center`},children:f?`No concepts match your search`:`No concepts yet`})]})]}),(0,z.jsx)(`div`,{style:{overflow:`auto`,padding:`var(--pad-y) var(--pad-x)`},children:u?(0,z.jsx)(`div`,{className:`stack`,children:(0,z.jsxs)(`section`,{className:`card`,children:[(0,z.jsx)(`div`,{className:`card-hd`,children:(0,z.jsx)(`h3`,{children:`New Concept`})}),(0,z.jsx)(`div`,{className:`card-bd`,children:(0,z.jsxs)(`div`,{style:{display:`grid`,gap:12},children:[(0,z.jsxs)(`div`,{style:{display:`grid`,gap:12,gridTemplateColumns:`1fr 1fr`},children:[(0,z.jsx)($,{label:`ID`,description:`Unique slug (concept: prefix added automatically)`,children:(0,z.jsx)(Jm,{value:d.id??``,onChange:e=>s({type:`merge_addDraft`,payload:{id:e}}),placeholder:`revenue`})}),(0,z.jsx)($,{label:`Label`,description:`Human-readable name, e.g. "Revenue"`,children:(0,z.jsx)(Mm,{value:d.label??``,placeholder:`Revenue`,onChange:e=>s({type:`merge_addDraft`,payload:{label:e.target.value}})})})]}),(0,z.jsx)($,{label:`Synonyms`,description:`Comma-separated terms users might say`,children:(0,z.jsx)(Nm,{value:d.synonyms,onChange:e=>s({type:`merge_addDraft`,payload:{synonyms:e}})})}),(0,z.jsx)($,{label:`Links`,description:`Tables or columns this concept maps to`,children:(0,z.jsx)(Ym,{value:d.links??[],onChange:e=>s({type:`merge_addDraft`,payload:{links:e}}),options:t})}),(0,z.jsx)($,{label:`Description`,description:`How this concept is computed or what it means`,children:(0,z.jsx)(Pm,{value:d.description??``,placeholder:`Sum of orders.total_amount where status = 'paid', expressed in cents.`,onChange:e=>s({type:`merge_addDraft`,payload:{description:e.target.value}})})}),(0,z.jsxs)(`div`,{style:{display:`flex`,gap:8,justifyContent:`flex-end`},children:[(0,z.jsx)(`button`,{type:`button`,className:`btn`,onClick:()=>s({type:`cancel_add`}),children:`Cancel`}),(0,z.jsx)(`button`,{type:`button`,className:`btn primary`,onClick:v,disabled:!d.id?.trim()||!d.label?.trim(),children:`Add concept`})]})]})})]})}):h&&l!==null?(0,z.jsx)(qm,{concept:h,linkOptions:t,onChange:e=>g(l,e),onRemove:()=>_(l)}):(0,z.jsx)(`div`,{style:{display:`flex`,alignItems:`center`,justifyContent:`center`,height:`100%`},children:(0,z.jsxs)(`div`,{style:{textAlign:`center`,color:`var(--ink-400)`},children:[(0,z.jsx)(vi,{size:24,style:{margin:`0 auto 8px`}}),(0,z.jsx)(`p`,{style:{fontSize:13},children:c.length===0?`Click "Add concept" to create your first one`:`Select a concept to edit`})]})})})]})]})}function qm({concept:e,linkOptions:t,onChange:n,onRemove:r}){return(0,z.jsx)(`div`,{className:`stack`,children:(0,z.jsxs)(`section`,{className:`card`,children:[(0,z.jsxs)(`div`,{className:`card-hd`,children:[(0,z.jsxs)(`div`,{style:{display:`flex`,flexWrap:`wrap`,alignItems:`center`,gap:8},children:[(0,z.jsx)(`h3`,{children:e.label}),(0,z.jsx)(Q,{variant:`outline`,children:e.id})]}),(0,z.jsx)(`button`,{type:`button`,className:`btn ghost sm`,onClick:r,title:`Remove concept`,style:{color:`var(--red-600)`},children:`Remove`})]}),(0,z.jsx)(`div`,{className:`card-bd`,children:(0,z.jsxs)(`div`,{style:{display:`grid`,gap:12},children:[(0,z.jsxs)(`div`,{style:{display:`grid`,gap:12,gridTemplateColumns:`1fr 1fr`},children:[(0,z.jsx)($,{label:`ID`,description:`Unique slug (concept: prefix added automatically)`,children:(0,z.jsx)(Jm,{value:e.id,onChange:e=>n(t=>({...t,id:e}))})}),(0,z.jsx)($,{label:`Label`,description:`Human-readable name`,children:(0,z.jsx)(Mm,{value:e.label,onChange:e=>n(t=>({...t,label:e.target.value}))})})]}),(0,z.jsx)($,{label:`Synonyms`,description:`Comma-separated alternative terms`,children:(0,z.jsx)(Nm,{value:e.synonyms,onChange:e=>n(t=>({...t,synonyms:e.length?e:void 0}))})}),(0,z.jsx)($,{label:`Links`,description:`Tables or columns this concept maps to`,children:(0,z.jsx)(Ym,{value:e.links??[],onChange:e=>n(t=>({...t,links:e.length?e:void 0})),options:t})}),(0,z.jsx)($,{label:`Description`,description:`How this concept is computed or what it means`,children:(0,z.jsx)(Pm,{value:e.description??``,onChange:e=>n(t=>({...t,description:e.target.value||void 0}))})})]})})]})})}function Jm({value:e,onChange:t,placeholder:n}){let r=Vm(e);return(0,z.jsxs)(`div`,{className:`concept-id-input`,children:[(0,z.jsx)(`span`,{className:`concept-id-prefix`,children:`concept:`}),(0,z.jsx)(`input`,{type:`text`,"aria-label":`Concept ID`,className:`concept-id-slug`,value:r,placeholder:n??`my-concept`,onChange:e=>{t(Hm(e.target.value.replace(/\s+/g,`-`).toLowerCase()))}})]})}function Ym({value:e,onChange:t,options:n}){let[r,a]=(0,x.useState)(``),[o,s]=(0,x.useState)(!1),[c,l]=(0,x.useState)(0),u=(0,x.useRef)(null),d=(0,x.useRef)(null),f=(0,x.useRef)(null);(0,x.useEffect)(()=>{function e(e){u.current&&!u.current.contains(e.target)&&s(!1)}return document.addEventListener(`mousedown`,e),()=>document.removeEventListener(`mousedown`,e)},[]);let p=(0,x.useMemo)(()=>new Set(e),[e]),m=(0,x.useMemo)(()=>{if(!r)return n.filter(e=>!p.has(e.id));let e=r.toLowerCase();return n.filter(t=>!p.has(t.id)&&(t.label.toLowerCase().includes(e)||t.id.toLowerCase().includes(e)))},[n,r,p]),h=m.slice(0,30),g=(0,x.useCallback)(n=>{t([...e,n]),a(``),d.current?.focus()},[e,t]),_=(0,x.useCallback)(n=>{t(e.filter(e=>e!==n))},[e,t]);(0,x.useEffect)(()=>{!o||!f.current||f.current.querySelectorAll(`[data-link-item]`)[c]?.scrollIntoView({block:`nearest`})},[c,o]);function v(e){if(!o){(e.key===`ArrowDown`||e.key===`ArrowUp`)&&(s(!0),e.preventDefault());return}switch(e.key){case`ArrowDown`:e.preventDefault(),l(e=>Math.min(e+1,h.length-1));break;case`ArrowUp`:e.preventDefault(),l(e=>Math.max(e-1,0));break;case`Enter`:e.preventDefault(),h[c]&&g(h[c].id);break;case`Escape`:e.preventDefault(),s(!1);break}}function y(e){return n.find(t=>t.id===e)?.label??e}function b(e){return n.find(t=>t.id===e)?.kind??(e.includes(`#`)?`column`:`table`)}return(0,z.jsxs)(`div`,{className:`links-input`,ref:u,children:[e.length>0&&(0,z.jsx)(`div`,{className:`links-chips`,children:e.map(e=>(0,z.jsxs)(`span`,{className:`links-chip ${b(e)}`,title:e,children:[(0,z.jsx)(Ii,{size:10}),(0,z.jsx)(`span`,{className:`links-chip-label`,children:y(e)}),(0,z.jsx)(`button`,{type:`button`,className:`links-chip-remove`,onMouseDown:t=>{t.preventDefault(),t.stopPropagation(),_(e)},title:`Remove`,children:(0,z.jsx)(Ri,{size:10})})]},e))}),(0,z.jsxs)(`div`,{className:`links-search`,children:[(0,z.jsx)(ji,{size:12}),(0,z.jsx)(`input`,{ref:d,type:`text`,"aria-label":`Search tables or columns`,className:`links-search-input`,placeholder:e.length?`Add another…`:`Search tables or columns…`,value:r,onChange:e=>{a(e.target.value),l(0)},onFocus:()=>s(!0),onKeyDown:v})]}),o&&h.length>0&&(0,z.jsxs)(`div`,{className:`links-dropdown`,ref:f,role:`listbox`,children:[h.map((e,t)=>(0,z.jsxs)(`button`,{type:`button`,"data-link-item":!0,role:`option`,"aria-selected":t===c,className:`links-dropdown-item ${t===c?`highlighted`:``}`,onMouseDown:t=>{t.preventDefault(),g(e.id)},onMouseEnter:()=>l(t),children:[(0,z.jsx)(`span`,{className:`links-kind-badge ${e.kind}`,children:e.kind===`table`?`T`:`C`}),(0,z.jsx)(`span`,{className:`links-dropdown-label`,children:e.label})]},e.id)),m.length>30&&(0,z.jsxs)(`div`,{className:`links-dropdown-more`,children:[m.length-30,` more — type to narrow`]})]})]})}function Xm(){let{workspace:e,tables:t,handleSaveTenantPolicy:n,handleSuggestTenantPolicy:r,saveStatus:a,busy:o}=yr(),[s,c]=(0,x.useState)(!1);if(!e)return null;let l=e.tenantPolicy??null;return l?s?(0,z.jsx)(`main`,{className:`main-pane`,children:(0,z.jsx)(Qm,{tenantPolicy:l,tables:t,busy:o,saveStatus:a,onSave:async(e,t)=>{let r=await n(e,t);return r&&c(!1),r},onCancel:()=>c(!1)},l.schemaId)}):(0,z.jsx)(`main`,{className:`main-pane`,children:(0,z.jsx)(Zm,{tenantPolicy:l,onEdit:()=>c(!0)})}):(0,z.jsx)(`main`,{className:`main-pane`,children:(0,z.jsx)(th,{tables:t,schemaId:e.schemaId,aiConfigured:e.aiConfigured,busy:o,onSave:n,onSuggest:r,saveStatus:a})})}function Zm({tenantPolicy:e,onEdit:t}){let n=e.coverage.reduce((e,t)=>(e[t.classification]=(e[t.classification]??0)+1,e),{}),r=e.coverage.length,a=r-(n.unknown??0),o=r>0?Math.round(a/r*100):0;return(0,z.jsxs)(z.Fragment,{children:[(0,z.jsxs)(`div`,{className:`main-hd`,children:[(0,z.jsxs)(`div`,{className:`main-title`,children:[(0,z.jsxs)(`h1`,{children:[(0,z.jsx)(Ni,{size:18,style:{display:`inline`,marginRight:8}}),`Multi-Tenancy`]}),(0,z.jsxs)(`div`,{className:`main-sub`,children:[`Schema: `,e.schemaId,` · `,o,`% table coverage (`,a,`/`,r,`)`,(0,z.jsx)(Q,{variant:e.enforcement===`strict`?`danger`:`warning`,style:{marginLeft:8},children:e.enforcement})]})]}),(0,z.jsx)(`div`,{className:`main-actions`,children:(0,z.jsxs)(`button`,{type:`button`,className:`btn`,onClick:t,children:[(0,z.jsx)(Ti,{size:14}),` Edit`]})})]}),(0,z.jsx)(`div`,{className:`main-body`,children:(0,z.jsxs)(`div`,{className:`stack`,style:{padding:`var(--pad-y) var(--pad-x)`},children:[(0,z.jsx)(rh,{title:`Coverage`,children:(0,z.jsxs)(`div`,{className:`grid-4`,children:[(0,z.jsx)(ih,{label:`Root`,count:n.root??0,variant:`primary`}),(0,z.jsx)(ih,{label:`Scoped`,count:n.scoped??0,variant:`primary`}),(0,z.jsx)(ih,{label:`Global`,count:n.global??0,variant:`secondary`}),(0,z.jsx)(ih,{label:`Unknown`,count:n.unknown??0,variant:`warning`})]})}),(0,z.jsx)(rh,{title:`Tenant Roots`,count:e.roots.length,children:(0,z.jsx)(`div`,{style:{display:`grid`,gap:8},children:e.roots.map(e=>(0,z.jsxs)(`div`,{className:`card`,style:{padding:12},children:[(0,z.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,justifyContent:`space-between`,gap:8},children:[(0,z.jsxs)(`div`,{children:[(0,z.jsx)(`span`,{className:`mono`,style:{fontWeight:600,fontSize:13},children:e.id}),(0,z.jsx)(`span`,{className:`muted`,style:{marginLeft:8,fontSize:12},children:e.label})]}),(0,z.jsxs)(Q,{variant:`outline`,children:[`col: `,e.tenantIdColumn]})]}),e.parent&&(0,z.jsxs)(`p`,{className:`muted tiny`,style:{marginTop:4},children:[`Parent: `,(0,z.jsx)(`code`,{children:e.parent.root}),` via `,(0,z.jsx)(`code`,{children:e.parent.foreignKey})]})]},e.id))})}),e.hierarchy.length>0&&(0,z.jsx)(rh,{title:`Hierarchy Edges`,count:e.hierarchy.length,children:(0,z.jsx)(`div`,{style:{display:`grid`,gap:8},children:e.hierarchy.map(e=>(0,z.jsxs)(`div`,{className:`card`,style:{padding:12,fontSize:13},children:[(0,z.jsx)(`code`,{children:e.parent}),(0,z.jsx)(`span`,{className:`muted`,style:{margin:`0 8px`},children:`→`}),(0,z.jsx)(`code`,{children:e.child}),(0,z.jsxs)(`div`,{className:`muted tiny`,style:{marginTop:4},children:[`FK: `,e.foreignKey]})]},`${e.parent}-${e.child}`))})}),e.scopedTables.length>0&&(0,z.jsx)(rh,{title:`Scoped Tables`,count:e.scopedTables.length,defaultOpen:!1,children:(0,z.jsx)(`div`,{style:{display:`grid`,gap:8},children:e.scopedTables.map(e=>(0,z.jsxs)(`div`,{className:`card`,style:{padding:12},children:[(0,z.jsx)(`span`,{className:`mono`,style:{fontWeight:600,fontSize:13},children:e.id}),(0,z.jsx)(`div`,{style:{marginTop:4,display:`grid`,gap:4},children:e.scopeThrough.map((e,t)=>(0,z.jsxs)(`p`,{className:`muted tiny`,children:[`via `,(0,z.jsx)(Q,{variant:`outline`,children:e.root}),` `,`column`in e?(0,z.jsxs)(`span`,{children:[`column `,(0,z.jsx)(`code`,{children:e.column})]}):(0,z.jsxs)(`span`,{children:[`join `,e.join.map(e=>`${e.from} -> ${e.to}`).join(`, `)]})]},t))})]},e.id))})}),e.polymorphicTables.length>0&&(0,z.jsx)(rh,{title:`Polymorphic Tables`,count:e.polymorphicTables.length,defaultOpen:!1,children:(0,z.jsx)(`div`,{style:{display:`grid`,gap:8},children:e.polymorphicTables.map(e=>(0,z.jsxs)(`div`,{className:`card`,style:{padding:12},children:[(0,z.jsx)(`span`,{className:`mono`,style:{fontWeight:600,fontSize:13},children:e.id}),(0,z.jsxs)(`p`,{className:`muted tiny`,style:{marginTop:4},children:[`Type: `,(0,z.jsx)(`code`,{children:e.typeColumn}),` · ID: `,(0,z.jsx)(`code`,{children:e.idColumn})]}),(0,z.jsx)(`div`,{style:{marginTop:4,display:`flex`,flexWrap:`wrap`,gap:4},children:Object.entries(e.mapping).map(([e,t])=>(0,z.jsxs)(Q,{variant:`outline`,children:[e,` → `,t]},e))})]},e.id))})}),e.globalTables.length>0&&(0,z.jsx)(rh,{title:`Global Tables`,count:e.globalTables.length,defaultOpen:!1,children:(0,z.jsx)(`div`,{style:{display:`flex`,flexWrap:`wrap`,gap:8},children:e.globalTables.map(e=>(0,z.jsx)(Q,{variant:`secondary`,children:e},e))})}),(0,z.jsx)(rh,{title:`Table Coverage`,count:e.coverage.length,defaultOpen:!1,children:(0,z.jsx)(`div`,{className:`card`,children:(0,z.jsx)(`div`,{className:`card-bd tight`,children:(0,z.jsxs)(`table`,{className:`tbl`,children:[(0,z.jsx)(`thead`,{children:(0,z.jsxs)(`tr`,{children:[(0,z.jsx)(`th`,{children:`Table`}),(0,z.jsx)(`th`,{children:`Classification`}),(0,z.jsx)(`th`,{children:`Scope Roots`})]})}),(0,z.jsx)(`tbody`,{children:e.coverage.map(e=>(0,z.jsxs)(`tr`,{children:[(0,z.jsx)(`td`,{children:(0,z.jsx)(`span`,{className:`mono`,children:e.tableId})}),(0,z.jsx)(`td`,{children:(0,z.jsx)(Q,{variant:e.classification===`unknown`?`warning`:e.classification===`global`?`secondary`:`outline`,children:e.classification})}),(0,z.jsx)(`td`,{className:`muted tiny`,children:e.scopeRoots?.join(`, `)??`—`})]},e.tableId))})]})})})}),e.warnings.length>0&&(0,z.jsx)(rh,{title:`Policy Warnings`,count:e.warnings.length,children:(0,z.jsx)(`div`,{style:{display:`grid`,gap:8},children:e.warnings.map(e=>(0,z.jsx)(`pre`,{className:`warning-block`,children:ah(e)},String(e)))})})]})})]})}function Qm({tenantPolicy:e,tables:t,busy:n,saveStatus:r,onSave:a,onCancel:o}){let[s,c]=(0,x.useState)(()=>oh(e)),[l,u]=(0,x.useState)(()=>e.body);return(0,z.jsx)(nh,{tables:t,frontmatter:s,body:l,busy:n,saveStatus:r,onFrontmatterChange:c,onBodyChange:u,onConfirm:()=>void a(s,l||void 0),onBack:o,title:`Edit Tenant Policy`,backLabel:`Cancel`,confirmLabel:`Save Changes`,badgeLabel:`Saved`})}function $m(e,t){switch(t.type){case`set_mode`:return{...e,mode:t.payload};case`set_draftStatus`:return{...e,draftStatus:t.payload};case`set_draftFrontmatter`:return{...e,draftFrontmatter:t.payload};case`set_draftBody`:return{...e,draftBody:t.payload};case`set_enforcement`:return{...e,enforcement:t.payload};case`set_rootTenantIdColumn`:return{...e,rootTenantIdColumn:t.payload};case`set_rootLabel`:return{...e,rootLabel:t.payload};case`select_root_table`:return{...e,rootTableId:t.tableId,rootLabel:t.label,rootTenantIdColumn:``};case`toggle_global_table`:return{...e,globalTableIds:t.checked?[...e.globalTableIds,t.tableId]:e.globalTableIds.filter(e=>e!==t.tableId)};case`ai_draft_complete`:return{...e,draftFrontmatter:t.frontmatter,draftBody:t.body,mode:`review`,draftStatus:{kind:`success`,text:`AI draft ready for review.`}};case`manual_to_review`:return{...e,draftFrontmatter:t.frontmatter,draftBody:t.body,mode:`review`}}}var eh={mode:`choose`,draftStatus:null,draftFrontmatter:null,draftBody:``,enforcement:`strict`,rootTableId:``,rootTenantIdColumn:``,rootLabel:``,globalTableIds:[]};function th({tables:e,schemaId:t,aiConfigured:n,busy:r,onSave:a,onSuggest:o,saveStatus:s}){let[c,l]=(0,x.useReducer)($m,eh),{mode:u,draftStatus:d,draftFrontmatter:f,draftBody:p,enforcement:m,rootTableId:h,rootTenantIdColumn:g,rootLabel:_,globalTableIds:v}=c,y=e.find(e=>e.physical.id===h)?.physical.columns??[];async function b(){l({type:`set_draftStatus`,payload:{kind:`loading`,text:`Analyzing schema and drafting tenant policy...`}});try{let e=await o();l({type:`ai_draft_complete`,frontmatter:e.frontmatter,body:e.body})}catch(e){l({type:`set_draftStatus`,payload:{kind:`error`,text:e instanceof Error?e.message:String(e)}})}}function S(){!h||!g||!_.trim()||l({type:`manual_to_review`,frontmatter:{schemaId:t,enforcement:m,roots:[{id:h,tenantIdColumn:g,label:_.trim()}],...v.length>0?{globalTables:v}:{}},body:`# Tenant Policy
|
|
54
|
+
For more information, see https://radix-ui.com/primitives/docs/components/${t.docsSlug}`;return x.useEffect(()=>{e&&(document.getElementById(e)||console.error(n))},[n,e]),null},uc=`DialogDescriptionWarning`,dc=({contentRef:e,descriptionId:t})=>{let n=`Warning: Missing \`Description\` or \`aria-describedby={undefined}\` for {${cc(uc).contentName}}.`;return x.useEffect(()=>{let r=e.current?.getAttribute(`aria-describedby`);t&&r&&(document.getElementById(t)||console.warn(n))},[n,e,t]),null},fc=Ls,pc=Us,mc=Gs,hc=Ys,gc=ec,_c=nc,vc=ic;function yc(e){let[t,n]=x.useState(void 0);return aa(()=>{if(e){n({width:e.offsetWidth,height:e.offsetHeight});let t=new ResizeObserver(t=>{if(!Array.isArray(t)||!t.length)return;let r=t[0],a,o;if(`borderBoxSize`in r){let e=r.borderBoxSize,t=Array.isArray(e)?e[0]:e;a=t.inlineSize,o=t.blockSize}else a=e.offsetWidth,o=e.offsetHeight;n({width:a,height:o})});return t.observe(e,{box:`border-box`}),()=>t.unobserve(e)}else n(void 0)},[e]),t}var G=[`top`,`right`,`bottom`,`left`],bc=Math.min,xc=Math.max,Sc=Math.round,Cc=Math.floor,wc=e=>({x:e,y:e}),Tc={left:`right`,right:`left`,bottom:`top`,top:`bottom`};function Ec(e,t,n){return xc(e,bc(t,n))}function Dc(e,t){return typeof e==`function`?e(t):e}function Oc(e){return e.split(`-`)[0]}function kc(e){return e.split(`-`)[1]}function Ac(e){return e===`x`?`y`:`x`}function jc(e){return e===`y`?`height`:`width`}function K(e){let t=e[0];return t===`t`||t===`b`?`y`:`x`}function Mc(e){return Ac(K(e))}function Nc(e,t,n){n===void 0&&(n=!1);let r=kc(e),a=Mc(e),o=jc(a),s=a===`x`?r===(n?`end`:`start`)?`right`:`left`:r===`start`?`bottom`:`top`;return t.reference[o]>t.floating[o]&&(s=Hc(s)),[s,Hc(s)]}function Pc(e){let t=Hc(e);return[Fc(e),t,Fc(t)]}function Fc(e){return e.includes(`start`)?e.replace(`start`,`end`):e.replace(`end`,`start`)}var Ic=[`left`,`right`],Lc=[`right`,`left`],Rc=[`top`,`bottom`],zc=[`bottom`,`top`];function Bc(e,t,n){switch(e){case`top`:case`bottom`:return n?t?Lc:Ic:t?Ic:Lc;case`left`:case`right`:return t?Rc:zc;default:return[]}}function Vc(e,t,n,r){let a=kc(e),o=Bc(Oc(e),n===`start`,r);return a&&(o=o.map(e=>e+`-`+a),t&&(o=o.concat(o.map(Fc)))),o}function Hc(e){let t=Oc(e);return Tc[t]+e.slice(t.length)}function Uc(e){return{top:0,right:0,bottom:0,left:0,...e}}function Wc(e){return typeof e==`number`?{top:e,right:e,bottom:e,left:e}:Uc(e)}function Gc(e){let{x:t,y:n,width:r,height:a}=e;return{width:r,height:a,top:n,left:t,right:t+r,bottom:n+a,x:t,y:n}}function Kc(e,t,n){let{reference:r,floating:a}=e,o=K(t),s=Mc(t),c=jc(s),l=Oc(t),u=o===`y`,d=r.x+r.width/2-a.width/2,f=r.y+r.height/2-a.height/2,p=r[c]/2-a[c]/2,m;switch(l){case`top`:m={x:d,y:r.y-a.height};break;case`bottom`:m={x:d,y:r.y+r.height};break;case`right`:m={x:r.x+r.width,y:f};break;case`left`:m={x:r.x-a.width,y:f};break;default:m={x:r.x,y:r.y}}switch(kc(t)){case`start`:m[s]-=p*(n&&u?-1:1);break;case`end`:m[s]+=p*(n&&u?-1:1);break}return m}async function qc(e,t){t===void 0&&(t={});let{x:n,y:r,platform:a,rects:o,elements:s,strategy:c}=e,{boundary:l=`clippingAncestors`,rootBoundary:u=`viewport`,elementContext:d=`floating`,altBoundary:f=!1,padding:p=0}=Dc(t,e),m=Wc(p),h=s[f?d===`floating`?`reference`:`floating`:d],g=Gc(await a.getClippingRect({element:await(a.isElement==null?void 0:a.isElement(h))??!0?h:h.contextElement||await(a.getDocumentElement==null?void 0:a.getDocumentElement(s.floating)),boundary:l,rootBoundary:u,strategy:c})),_=d===`floating`?{x:n,y:r,width:o.floating.width,height:o.floating.height}:o.reference,v=await(a.getOffsetParent==null?void 0:a.getOffsetParent(s.floating)),y=await(a.isElement==null?void 0:a.isElement(v))&&await(a.getScale==null?void 0:a.getScale(v))||{x:1,y:1},b=Gc(a.convertOffsetParentRelativeRectToViewportRelativeRect?await a.convertOffsetParentRelativeRectToViewportRelativeRect({elements:s,rect:_,offsetParent:v,strategy:c}):_);return{top:(g.top-b.top+m.top)/y.y,bottom:(b.bottom-g.bottom+m.bottom)/y.y,left:(g.left-b.left+m.left)/y.x,right:(b.right-g.right+m.right)/y.x}}var q=50,Jc=async(e,t,n)=>{let{placement:r=`bottom`,strategy:a=`absolute`,middleware:o=[],platform:s}=n,c=s.detectOverflow?s:{...s,detectOverflow:qc},l=await(s.isRTL==null?void 0:s.isRTL(t)),u=await s.getElementRects({reference:e,floating:t,strategy:a}),{x:d,y:f}=Kc(u,r,l),p=r,m=0,h={};for(let n=0;n<o.length;n++){let g=o[n];if(!g)continue;let{name:_,fn:v}=g,{x:y,y:b,data:x,reset:S}=await v({x:d,y:f,initialPlacement:r,placement:p,strategy:a,middlewareData:h,rects:u,platform:c,elements:{reference:e,floating:t}});d=y??d,f=b??f,h[_]={...h[_],...x},S&&m<q&&(m++,typeof S==`object`&&(S.placement&&(p=S.placement),S.rects&&(u=S.rects===!0?await s.getElementRects({reference:e,floating:t,strategy:a}):S.rects),{x:d,y:f}=Kc(u,p,l)),n=-1)}return{x:d,y:f,placement:p,strategy:a,middlewareData:h}},Yc=e=>({name:`arrow`,options:e,async fn(t){let{x:n,y:r,placement:a,rects:o,platform:s,elements:c,middlewareData:l}=t,{element:u,padding:d=0}=Dc(e,t)||{};if(u==null)return{};let f=Wc(d),p={x:n,y:r},m=Mc(a),h=jc(m),g=await s.getDimensions(u),_=m===`y`,v=_?`top`:`left`,y=_?`bottom`:`right`,b=_?`clientHeight`:`clientWidth`,x=o.reference[h]+o.reference[m]-p[m]-o.floating[h],S=p[m]-o.reference[m],C=await(s.getOffsetParent==null?void 0:s.getOffsetParent(u)),w=C?C[b]:0;(!w||!await(s.isElement==null?void 0:s.isElement(C)))&&(w=c.floating[b]||o.floating[h]);let T=x/2-S/2,E=w/2-g[h]/2-1,D=bc(f[v],E),O=bc(f[y],E),k=D,A=w-g[h]-O,j=w/2-g[h]/2+T,M=Ec(k,j,A),N=!l.arrow&&kc(a)!=null&&j!==M&&o.reference[h]/2-(j<k?D:O)-g[h]/2<0,P=N?j<k?j-k:j-A:0;return{[m]:p[m]+P,data:{[m]:M,centerOffset:j-M-P,...N&&{alignmentOffset:P}},reset:N}}}),Xc=function(e){return e===void 0&&(e={}),{name:`flip`,options:e,async fn(t){var n;let{placement:r,middlewareData:a,rects:o,initialPlacement:s,platform:c,elements:l}=t,{mainAxis:u=!0,crossAxis:d=!0,fallbackPlacements:f,fallbackStrategy:p=`bestFit`,fallbackAxisSideDirection:m=`none`,flipAlignment:h=!0,...g}=Dc(e,t);if((n=a.arrow)!=null&&n.alignmentOffset)return{};let _=Oc(r),v=K(s),y=Oc(s)===s,b=await(c.isRTL==null?void 0:c.isRTL(l.floating)),x=f||(y||!h?[Hc(s)]:Pc(s)),S=m!==`none`;!f&&S&&x.push(...Vc(s,h,m,b));let C=[s,...x],w=await c.detectOverflow(t,g),T=[],E=a.flip?.overflows||[];if(u&&T.push(w[_]),d){let e=Nc(r,o,b);T.push(w[e[0]],w[e[1]])}if(E=[...E,{placement:r,overflows:T}],!T.every(e=>e<=0)){let e=(a.flip?.index||0)+1,t=C[e];if(t&&(!(d===`alignment`&&v!==K(t))||E.every(e=>K(e.placement)===v?e.overflows[0]>0:!0)))return{data:{index:e,overflows:E},reset:{placement:t}};let n=E.filter(e=>e.overflows[0]<=0).sort((e,t)=>e.overflows[1]-t.overflows[1])[0]?.placement;if(!n)switch(p){case`bestFit`:{let e=E.filter(e=>{if(S){let t=K(e.placement);return t===v||t===`y`}return!0}).map(e=>[e.placement,e.overflows.filter(e=>e>0).reduce((e,t)=>e+t,0)]).sort((e,t)=>e[1]-t[1])[0]?.[0];e&&(n=e);break}case`initialPlacement`:n=s;break}if(r!==n)return{reset:{placement:n}}}return{}}}};function Zc(e,t){return{top:e.top-t.height,right:e.right-t.width,bottom:e.bottom-t.height,left:e.left-t.width}}function Qc(e){return G.some(t=>e[t]>=0)}var $c=function(e){return e===void 0&&(e={}),{name:`hide`,options:e,async fn(t){let{rects:n,platform:r}=t,{strategy:a=`referenceHidden`,...o}=Dc(e,t);switch(a){case`referenceHidden`:{let e=Zc(await r.detectOverflow(t,{...o,elementContext:`reference`}),n.reference);return{data:{referenceHiddenOffsets:e,referenceHidden:Qc(e)}}}case`escaped`:{let e=Zc(await r.detectOverflow(t,{...o,altBoundary:!0}),n.floating);return{data:{escapedOffsets:e,escaped:Qc(e)}}}default:return{}}}}},el=new Set([`left`,`top`]);async function tl(e,t){let{placement:n,platform:r,elements:a}=e,o=await(r.isRTL==null?void 0:r.isRTL(a.floating)),s=Oc(n),c=kc(n),l=K(n)===`y`,u=el.has(s)?-1:1,d=o&&l?-1:1,f=Dc(t,e),{mainAxis:p,crossAxis:m,alignmentAxis:h}=typeof f==`number`?{mainAxis:f,crossAxis:0,alignmentAxis:null}:{mainAxis:f.mainAxis||0,crossAxis:f.crossAxis||0,alignmentAxis:f.alignmentAxis};return c&&typeof h==`number`&&(m=c===`end`?h*-1:h),l?{x:m*d,y:p*u}:{x:p*u,y:m*d}}var nl=function(e){return e===void 0&&(e=0),{name:`offset`,options:e,async fn(t){var n;let{x:r,y:a,placement:o,middlewareData:s}=t,c=await tl(t,e);return o===s.offset?.placement&&(n=s.arrow)!=null&&n.alignmentOffset?{}:{x:r+c.x,y:a+c.y,data:{...c,placement:o}}}}},rl=function(e){return e===void 0&&(e={}),{name:`shift`,options:e,async fn(t){let{x:n,y:r,placement:a,platform:o}=t,{mainAxis:s=!0,crossAxis:c=!1,limiter:l={fn:e=>{let{x:t,y:n}=e;return{x:t,y:n}}},...u}=Dc(e,t),d={x:n,y:r},f=await o.detectOverflow(t,u),p=K(Oc(a)),m=Ac(p),h=d[m],g=d[p];if(s){let e=m===`y`?`top`:`left`,t=m===`y`?`bottom`:`right`,n=h+f[e],r=h-f[t];h=Ec(n,h,r)}if(c){let e=p===`y`?`top`:`left`,t=p===`y`?`bottom`:`right`,n=g+f[e],r=g-f[t];g=Ec(n,g,r)}let _=l.fn({...t,[m]:h,[p]:g});return{..._,data:{x:_.x-n,y:_.y-r,enabled:{[m]:s,[p]:c}}}}}},il=function(e){return e===void 0&&(e={}),{options:e,fn(t){let{x:n,y:r,placement:a,rects:o,middlewareData:s}=t,{offset:c=0,mainAxis:l=!0,crossAxis:u=!0}=Dc(e,t),d={x:n,y:r},f=K(a),p=Ac(f),m=d[p],h=d[f],g=Dc(c,t),_=typeof g==`number`?{mainAxis:g,crossAxis:0}:{mainAxis:0,crossAxis:0,...g};if(l){let e=p===`y`?`height`:`width`,t=o.reference[p]-o.floating[e]+_.mainAxis,n=o.reference[p]+o.reference[e]-_.mainAxis;m<t?m=t:m>n&&(m=n)}if(u){let e=p===`y`?`width`:`height`,t=el.has(Oc(a)),n=o.reference[f]-o.floating[e]+(t&&s.offset?.[f]||0)+(t?0:_.crossAxis),r=o.reference[f]+o.reference[e]+(t?0:s.offset?.[f]||0)-(t?_.crossAxis:0);h<n?h=n:h>r&&(h=r)}return{[p]:m,[f]:h}}}},al=function(e){return e===void 0&&(e={}),{name:`size`,options:e,async fn(t){var n,r;let{placement:a,rects:o,platform:s,elements:c}=t,{apply:l=()=>{},...u}=Dc(e,t),d=await s.detectOverflow(t,u),f=Oc(a),p=kc(a),m=K(a)===`y`,{width:h,height:g}=o.floating,_,v;f===`top`||f===`bottom`?(_=f,v=p===(await(s.isRTL==null?void 0:s.isRTL(c.floating))?`start`:`end`)?`left`:`right`):(v=f,_=p===`end`?`top`:`bottom`);let y=g-d.top-d.bottom,b=h-d.left-d.right,x=bc(g-d[_],y),S=bc(h-d[v],b),C=!t.middlewareData.shift,w=x,T=S;if((n=t.middlewareData.shift)!=null&&n.enabled.x&&(T=b),(r=t.middlewareData.shift)!=null&&r.enabled.y&&(w=y),C&&!p){let e=xc(d.left,0),t=xc(d.right,0),n=xc(d.top,0),r=xc(d.bottom,0);m?T=h-2*(e!==0||t!==0?e+t:xc(d.left,d.right)):w=g-2*(n!==0||r!==0?n+r:xc(d.top,d.bottom))}await l({...t,availableWidth:T,availableHeight:w});let E=await s.getDimensions(c.floating);return h!==E.width||g!==E.height?{reset:{rects:!0}}:{}}}};function ol(){return typeof window<`u`}function sl(e){return ul(e)?(e.nodeName||``).toLowerCase():`#document`}function cl(e){var t;return(e==null||(t=e.ownerDocument)==null?void 0:t.defaultView)||window}function ll(e){return((ul(e)?e.ownerDocument:e.document)||window.document)?.documentElement}function ul(e){return ol()?e instanceof Node||e instanceof cl(e).Node:!1}function dl(e){return ol()?e instanceof Element||e instanceof cl(e).Element:!1}function fl(e){return ol()?e instanceof HTMLElement||e instanceof cl(e).HTMLElement:!1}function pl(e){return!ol()||typeof ShadowRoot>`u`?!1:e instanceof ShadowRoot||e instanceof cl(e).ShadowRoot}function ml(e){let{overflow:t,overflowX:n,overflowY:r,display:a}=Tl(e);return/auto|scroll|overlay|hidden|clip/.test(t+r+n)&&a!==`inline`&&a!==`contents`}function hl(e){return/^(table|td|th)$/.test(sl(e))}function gl(e){try{if(e.matches(`:popover-open`))return!0}catch{}try{return e.matches(`:modal`)}catch{return!1}}var _l=/transform|translate|scale|rotate|perspective|filter/,vl=/paint|layout|strict|content/,yl=e=>!!e&&e!==`none`,bl;function xl(e){let t=dl(e)?Tl(e):e;return yl(t.transform)||yl(t.translate)||yl(t.scale)||yl(t.rotate)||yl(t.perspective)||!Cl()&&(yl(t.backdropFilter)||yl(t.filter))||_l.test(t.willChange||``)||vl.test(t.contain||``)}function Sl(e){let t=Dl(e);for(;fl(t)&&!wl(t);){if(xl(t))return t;if(gl(t))return null;t=Dl(t)}return null}function Cl(){return bl??=typeof CSS<`u`&&CSS.supports&&CSS.supports(`-webkit-backdrop-filter`,`none`),bl}function wl(e){return/^(html|body|#document)$/.test(sl(e))}function Tl(e){return cl(e).getComputedStyle(e)}function El(e){return dl(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function Dl(e){if(sl(e)===`html`)return e;let t=e.assignedSlot||e.parentNode||pl(e)&&e.host||ll(e);return pl(t)?t.host:t}function Ol(e){let t=Dl(e);return wl(t)?e.ownerDocument?e.ownerDocument.body:e.body:fl(t)&&ml(t)?t:Ol(t)}function kl(e,t,n){t===void 0&&(t=[]),n===void 0&&(n=!0);let r=Ol(e),a=r===e.ownerDocument?.body,o=cl(r);if(a){let e=Al(o);return t.concat(o,o.visualViewport||[],ml(r)?r:[],e&&n?kl(e):[])}else return t.concat(r,kl(r,[],n))}function Al(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}function jl(e){let t=Tl(e),n=parseFloat(t.width)||0,r=parseFloat(t.height)||0,a=fl(e),o=a?e.offsetWidth:n,s=a?e.offsetHeight:r,c=Sc(n)!==o||Sc(r)!==s;return c&&(n=o,r=s),{width:n,height:r,$:c}}function Ml(e){return dl(e)?e:e.contextElement}function Nl(e){let t=Ml(e);if(!fl(t))return wc(1);let n=t.getBoundingClientRect(),{width:r,height:a,$:o}=jl(t),s=(o?Sc(n.width):n.width)/r,c=(o?Sc(n.height):n.height)/a;return(!s||!Number.isFinite(s))&&(s=1),(!c||!Number.isFinite(c))&&(c=1),{x:s,y:c}}var Pl=wc(0);function Fl(e){let t=cl(e);return!Cl()||!t.visualViewport?Pl:{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}}function Il(e,t,n){return t===void 0&&(t=!1),!n||t&&n!==cl(e)?!1:t}function Ll(e,t,n,r){t===void 0&&(t=!1),n===void 0&&(n=!1);let a=e.getBoundingClientRect(),o=Ml(e),s=wc(1);t&&(r?dl(r)&&(s=Nl(r)):s=Nl(e));let c=Il(o,n,r)?Fl(o):wc(0),l=(a.left+c.x)/s.x,u=(a.top+c.y)/s.y,d=a.width/s.x,f=a.height/s.y;if(o){let e=cl(o),t=r&&dl(r)?cl(r):r,n=e,a=Al(n);for(;a&&r&&t!==n;){let e=Nl(a),t=a.getBoundingClientRect(),r=Tl(a),o=t.left+(a.clientLeft+parseFloat(r.paddingLeft))*e.x,s=t.top+(a.clientTop+parseFloat(r.paddingTop))*e.y;l*=e.x,u*=e.y,d*=e.x,f*=e.y,l+=o,u+=s,n=cl(a),a=Al(n)}}return Gc({width:d,height:f,x:l,y:u})}function Rl(e,t){let n=El(e).scrollLeft;return t?t.left+n:Ll(ll(e)).left+n}function zl(e,t){let n=e.getBoundingClientRect();return{x:n.left+t.scrollLeft-Rl(e,n),y:n.top+t.scrollTop}}function Bl(e){let{elements:t,rect:n,offsetParent:r,strategy:a}=e,o=a===`fixed`,s=ll(r),c=t?gl(t.floating):!1;if(r===s||c&&o)return n;let l={scrollLeft:0,scrollTop:0},u=wc(1),d=wc(0),f=fl(r);if((f||!f&&!o)&&((sl(r)!==`body`||ml(s))&&(l=El(r)),f)){let e=Ll(r);u=Nl(r),d.x=e.x+r.clientLeft,d.y=e.y+r.clientTop}let p=s&&!f&&!o?zl(s,l):wc(0);return{width:n.width*u.x,height:n.height*u.y,x:n.x*u.x-l.scrollLeft*u.x+d.x+p.x,y:n.y*u.y-l.scrollTop*u.y+d.y+p.y}}function Vl(e){return Array.from(e.getClientRects())}function Hl(e){let t=ll(e),n=El(e),r=e.ownerDocument.body,a=xc(t.scrollWidth,t.clientWidth,r.scrollWidth,r.clientWidth),o=xc(t.scrollHeight,t.clientHeight,r.scrollHeight,r.clientHeight),s=-n.scrollLeft+Rl(e),c=-n.scrollTop;return Tl(r).direction===`rtl`&&(s+=xc(t.clientWidth,r.clientWidth)-a),{width:a,height:o,x:s,y:c}}var Ul=25;function Wl(e,t){let n=cl(e),r=ll(e),a=n.visualViewport,o=r.clientWidth,s=r.clientHeight,c=0,l=0;if(a){o=a.width,s=a.height;let e=Cl();(!e||e&&t===`fixed`)&&(c=a.offsetLeft,l=a.offsetTop)}let u=Rl(r);if(u<=0){let e=r.ownerDocument,t=e.body,n=getComputedStyle(t),a=e.compatMode===`CSS1Compat`&&parseFloat(n.marginLeft)+parseFloat(n.marginRight)||0,s=Math.abs(r.clientWidth-t.clientWidth-a);s<=Ul&&(o-=s)}else u<=Ul&&(o+=u);return{width:o,height:s,x:c,y:l}}function Gl(e,t){let n=Ll(e,!0,t===`fixed`),r=n.top+e.clientTop,a=n.left+e.clientLeft,o=fl(e)?Nl(e):wc(1);return{width:e.clientWidth*o.x,height:e.clientHeight*o.y,x:a*o.x,y:r*o.y}}function Kl(e,t,n){let r;if(t===`viewport`)r=Wl(e,n);else if(t===`document`)r=Hl(ll(e));else if(dl(t))r=Gl(t,n);else{let n=Fl(e);r={x:t.x-n.x,y:t.y-n.y,width:t.width,height:t.height}}return Gc(r)}function ql(e,t){let n=Dl(e);return n===t||!dl(n)||wl(n)?!1:Tl(n).position===`fixed`||ql(n,t)}function Jl(e,t){let n=t.get(e);if(n)return n;let r=kl(e,[],!1).filter(e=>dl(e)&&sl(e)!==`body`),a=null,o=Tl(e).position===`fixed`,s=o?Dl(e):e;for(;dl(s)&&!wl(s);){let t=Tl(s),n=xl(s);!n&&t.position===`fixed`&&(a=null),(o?!n&&!a:!n&&t.position===`static`&&a&&(a.position===`absolute`||a.position===`fixed`)||ml(s)&&!n&&ql(e,s))?r=r.filter(e=>e!==s):a=t,s=Dl(s)}return t.set(e,r),r}function Yl(e){let{element:t,boundary:n,rootBoundary:r,strategy:a}=e,o=[...n===`clippingAncestors`?gl(t)?[]:Jl(t,this._c):[].concat(n),r],s=Kl(t,o[0],a),c=s.top,l=s.right,u=s.bottom,d=s.left;for(let e=1;e<o.length;e++){let n=Kl(t,o[e],a);c=xc(n.top,c),l=bc(n.right,l),u=bc(n.bottom,u),d=xc(n.left,d)}return{width:l-d,height:u-c,x:d,y:c}}function Xl(e){let{width:t,height:n}=jl(e);return{width:t,height:n}}function Zl(e,t,n){let r=fl(t),a=ll(t),o=n===`fixed`,s=Ll(e,!0,o,t),c={scrollLeft:0,scrollTop:0},l=wc(0);function u(){l.x=Rl(a)}if(r||!r&&!o)if((sl(t)!==`body`||ml(a))&&(c=El(t)),r){let e=Ll(t,!0,o,t);l.x=e.x+t.clientLeft,l.y=e.y+t.clientTop}else a&&u();o&&!r&&a&&u();let d=a&&!r&&!o?zl(a,c):wc(0);return{x:s.left+c.scrollLeft-l.x-d.x,y:s.top+c.scrollTop-l.y-d.y,width:s.width,height:s.height}}function Ql(e){return Tl(e).position===`static`}function $l(e,t){if(!fl(e)||Tl(e).position===`fixed`)return null;if(t)return t(e);let n=e.offsetParent;return ll(e)===n&&(n=n.ownerDocument.body),n}function eu(e,t){let n=cl(e);if(gl(e))return n;if(!fl(e)){let t=Dl(e);for(;t&&!wl(t);){if(dl(t)&&!Ql(t))return t;t=Dl(t)}return n}let r=$l(e,t);for(;r&&hl(r)&&Ql(r);)r=$l(r,t);return r&&wl(r)&&Ql(r)&&!xl(r)?n:r||Sl(e)||n}var tu=async function(e){let t=this.getOffsetParent||eu,n=this.getDimensions,r=await n(e.floating);return{reference:Zl(e.reference,await t(e.floating),e.strategy),floating:{x:0,y:0,width:r.width,height:r.height}}};function nu(e){return Tl(e).direction===`rtl`}var ru={convertOffsetParentRelativeRectToViewportRelativeRect:Bl,getDocumentElement:ll,getClippingRect:Yl,getOffsetParent:eu,getElementRects:tu,getClientRects:Vl,getDimensions:Xl,getScale:Nl,isElement:dl,isRTL:nu};function iu(e,t){return e.x===t.x&&e.y===t.y&&e.width===t.width&&e.height===t.height}function au(e,t){let n=null,r,a=ll(e);function o(){var e;clearTimeout(r),(e=n)==null||e.disconnect(),n=null}function s(c,l){c===void 0&&(c=!1),l===void 0&&(l=1),o();let u=e.getBoundingClientRect(),{left:d,top:f,width:p,height:m}=u;if(c||t(),!p||!m)return;let h=Cc(f),g=Cc(a.clientWidth-(d+p)),_=Cc(a.clientHeight-(f+m)),v=Cc(d),y={rootMargin:-h+`px `+-g+`px `+-_+`px `+-v+`px`,threshold:xc(0,bc(1,l))||1},b=!0;function x(t){let n=t[0].intersectionRatio;if(n!==l){if(!b)return s();n?s(!1,n):r=setTimeout(()=>{s(!1,1e-7)},1e3)}n===1&&!iu(u,e.getBoundingClientRect())&&s(),b=!1}try{n=new IntersectionObserver(x,{...y,root:a.ownerDocument})}catch{n=new IntersectionObserver(x,y)}n.observe(e)}return s(!0),o}function ou(e,t,n,r){r===void 0&&(r={});let{ancestorScroll:a=!0,ancestorResize:o=!0,elementResize:s=typeof ResizeObserver==`function`,layoutShift:c=typeof IntersectionObserver==`function`,animationFrame:l=!1}=r,u=Ml(e),d=a||o?[...u?kl(u):[],...t?kl(t):[]]:[];d.forEach(e=>{a&&e.addEventListener(`scroll`,n,{passive:!0}),o&&e.addEventListener(`resize`,n)});let f=u&&c?au(u,n):null,p=-1,m=null;s&&(m=new ResizeObserver(e=>{let[r]=e;r&&r.target===u&&m&&t&&(m.unobserve(t),cancelAnimationFrame(p),p=requestAnimationFrame(()=>{var e;(e=m)==null||e.observe(t)})),n()}),u&&!l&&m.observe(u),t&&m.observe(t));let h,g=l?Ll(e):null;l&&_();function _(){let t=Ll(e);g&&!iu(g,t)&&n(),g=t,h=requestAnimationFrame(_)}return n(),()=>{var e;d.forEach(e=>{a&&e.removeEventListener(`scroll`,n),o&&e.removeEventListener(`resize`,n)}),f?.(),(e=m)==null||e.disconnect(),m=null,l&&cancelAnimationFrame(h)}}var su=nl,cu=rl,lu=Xc,uu=al,du=$c,fu=Yc,pu=il,mu=(e,t,n)=>{let r=new Map,a={platform:ru,...n},o={...a.platform,_c:r};return Jc(e,t,{...a,platform:o})},hu=typeof document<`u`?x.useLayoutEffect:function(){};function gu(e,t){if(e===t)return!0;if(typeof e!=typeof t)return!1;if(typeof e==`function`&&e.toString()===t.toString())return!0;let n,r,a;if(e&&t&&typeof e==`object`){if(Array.isArray(e)){if(n=e.length,n!==t.length)return!1;for(r=n;r--!==0;)if(!gu(e[r],t[r]))return!1;return!0}if(a=Object.keys(e),n=a.length,n!==Object.keys(t).length)return!1;for(r=n;r--!==0;)if(!{}.hasOwnProperty.call(t,a[r]))return!1;for(r=n;r--!==0;){let n=a[r];if(!(n===`_owner`&&e.$$typeof)&&!gu(e[n],t[n]))return!1}return!0}return e!==e&&t!==t}function _u(e){return typeof window>`u`?1:(e.ownerDocument.defaultView||window).devicePixelRatio||1}function vu(e,t){let n=_u(e);return Math.round(t*n)/n}function yu(e){let t=x.useRef(e);return hu(()=>{t.current=e}),t}function bu(e){e===void 0&&(e={});let{placement:t=`bottom`,strategy:n=`absolute`,middleware:r=[],platform:a,elements:{reference:o,floating:s}={},transform:c=!0,whileElementsMounted:l,open:u}=e,[d,f]=x.useState({x:0,y:0,strategy:n,placement:t,middlewareData:{},isPositioned:!1}),[p,m]=x.useState(r);gu(p,r)||m(r);let[h,g]=x.useState(null),[_,v]=x.useState(null),y=x.useCallback(e=>{e!==w.current&&(w.current=e,g(e))},[]),b=x.useCallback(e=>{e!==T.current&&(T.current=e,v(e))},[]),S=o||h,C=s||_,w=x.useRef(null),T=x.useRef(null),E=x.useRef(d),D=l!=null,O=yu(l),k=yu(a),A=yu(u),j=x.useCallback(()=>{if(!w.current||!T.current)return;let e={placement:t,strategy:n,middleware:p};k.current&&(e.platform=k.current),mu(w.current,T.current,e).then(e=>{let t={...e,isPositioned:A.current!==!1};M.current&&!gu(E.current,t)&&(E.current=t,Yi.flushSync(()=>{f(t)}))})},[p,t,n,k,A]);hu(()=>{u===!1&&E.current.isPositioned&&(E.current.isPositioned=!1,f(e=>({...e,isPositioned:!1})))},[u]);let M=x.useRef(!1);hu(()=>(M.current=!0,()=>{M.current=!1}),[]),hu(()=>{if(S&&(w.current=S),C&&(T.current=C),S&&C){if(O.current)return O.current(S,C,j);j()}},[S,C,j,O,D]);let N=x.useMemo(()=>({reference:w,floating:T,setReference:y,setFloating:b}),[y,b]),P=x.useMemo(()=>({reference:S,floating:C}),[S,C]),F=x.useMemo(()=>{let e={position:n,left:0,top:0};if(!P.floating)return e;let t=vu(P.floating,d.x),r=vu(P.floating,d.y);return c?{...e,transform:`translate(`+t+`px, `+r+`px)`,..._u(P.floating)>=1.5&&{willChange:`transform`}}:{position:n,left:t,top:r}},[n,c,P.floating,d.x,d.y]);return x.useMemo(()=>({...d,update:j,refs:N,elements:P,floatingStyles:F}),[d,j,N,P,F])}var xu=e=>{function t(e){return{}.hasOwnProperty.call(e,`current`)}return{name:`arrow`,options:e,fn(n){let{element:r,padding:a}=typeof e==`function`?e(n):e;return r&&t(r)?r.current==null?{}:fu({element:r.current,padding:a}).fn(n):r?fu({element:r,padding:a}).fn(n):{}}}},Su=(e,t)=>{let n=su(e);return{name:n.name,fn:n.fn,options:[e,t]}},Cu=(e,t)=>{let n=cu(e);return{name:n.name,fn:n.fn,options:[e,t]}},wu=(e,t)=>({fn:pu(e).fn,options:[e,t]}),Tu=(e,t)=>{let n=lu(e);return{name:n.name,fn:n.fn,options:[e,t]}},Eu=(e,t)=>{let n=uu(e);return{name:n.name,fn:n.fn,options:[e,t]}},Du=(e,t)=>{let n=du(e);return{name:n.name,fn:n.fn,options:[e,t]}},Ou=(e,t)=>{let n=xu(e);return{name:n.name,fn:n.fn,options:[e,t]}},ku=`Arrow`,Au=x.forwardRef((e,t)=>{let{children:n,width:r=10,height:a=5,...o}=e;return(0,z.jsx)(W.svg,{...o,ref:t,width:r,height:a,viewBox:`0 0 30 10`,preserveAspectRatio:`none`,children:e.asChild?n:(0,z.jsx)(`polygon`,{points:`0,0 30,0 15,10`})})});Au.displayName=ku;var ju=Au,Mu=`Popper`,[Nu,Pu]=na(Mu),[Fu,Iu]=Nu(Mu),Lu=e=>{let{__scopePopper:t,children:n}=e,[r,a]=x.useState(null);return(0,z.jsx)(Fu,{scope:t,anchor:r,onAnchorChange:a,children:n})};Lu.displayName=Mu;var Ru=`PopperAnchor`,zu=x.forwardRef((e,t)=>{let{__scopePopper:n,virtualRef:r,...a}=e,o=Iu(Ru,n),s=x.useRef(null),c=Hi(t,s),l=x.useRef(null);return x.useEffect(()=>{let e=l.current;l.current=r?.current||s.current,e!==l.current&&o.onAnchorChange(l.current)}),r?null:(0,z.jsx)(W.div,{...a,ref:c})});zu.displayName=Ru;var Bu=`PopperContent`,[Vu,Hu]=Nu(Bu),Uu=x.forwardRef((e,t)=>{let{__scopePopper:n,side:r=`bottom`,sideOffset:a=0,align:o=`center`,alignOffset:s=0,arrowPadding:c=0,avoidCollisions:l=!0,collisionBoundary:u=[],collisionPadding:d=0,sticky:f=`partial`,hideWhenDetached:p=!1,updatePositionStrategy:m=`optimized`,onPlaced:h,...g}=e,_=Iu(Bu,n),[v,y]=x.useState(null),b=Hi(t,e=>y(e)),[S,C]=x.useState(null),w=yc(S),T=w?.width??0,E=w?.height??0,D=r+(o===`center`?``:`-`+o),O=typeof d==`number`?d:{top:0,right:0,bottom:0,left:0,...d},k=Array.isArray(u)?u:[u],A=k.length>0,j={padding:O,boundary:k.filter(qu),altBoundary:A},{refs:M,floatingStyles:N,placement:P,isPositioned:F,middlewareData:ee}=bu({strategy:`fixed`,placement:D,whileElementsMounted:(...e)=>ou(...e,{animationFrame:m===`always`}),elements:{reference:_.anchor},middleware:[Su({mainAxis:a+E,alignmentAxis:s}),l&&Cu({mainAxis:!0,crossAxis:!1,limiter:f===`partial`?wu():void 0,...j}),l&&Tu({...j}),Eu({...j,apply:({elements:e,rects:t,availableWidth:n,availableHeight:r})=>{let{width:a,height:o}=t.reference,s=e.floating.style;s.setProperty(`--radix-popper-available-width`,`${n}px`),s.setProperty(`--radix-popper-available-height`,`${r}px`),s.setProperty(`--radix-popper-anchor-width`,`${a}px`),s.setProperty(`--radix-popper-anchor-height`,`${o}px`)}}),S&&Ou({element:S,padding:c}),Ju({arrowWidth:T,arrowHeight:E}),p&&Du({strategy:`referenceHidden`,...j})]}),[I,te]=Yu(P),ne=ja(h);aa(()=>{F&&ne?.()},[F,ne]);let L=ee.arrow?.x,re=ee.arrow?.y,ie=ee.arrow?.centerOffset!==0,[ae,oe]=x.useState();return aa(()=>{v&&oe(window.getComputedStyle(v).zIndex)},[v]),(0,z.jsx)(`div`,{ref:M.setFloating,"data-radix-popper-content-wrapper":``,style:{...N,transform:F?N.transform:`translate(0, -200%)`,minWidth:`max-content`,zIndex:ae,"--radix-popper-transform-origin":[ee.transformOrigin?.x,ee.transformOrigin?.y].join(` `),...ee.hide?.referenceHidden&&{visibility:`hidden`,pointerEvents:`none`}},dir:e.dir,children:(0,z.jsx)(Vu,{scope:n,placedSide:I,onArrowChange:C,arrowX:L,arrowY:re,shouldHideArrow:ie,children:(0,z.jsx)(W.div,{"data-side":I,"data-align":te,...g,ref:b,style:{...g.style,animation:F?void 0:`none`}})})})});Uu.displayName=Bu;var Wu=`PopperArrow`,Gu={top:`bottom`,right:`left`,bottom:`top`,left:`right`},Ku=x.forwardRef(function(e,t){let{__scopePopper:n,...r}=e,a=Hu(Wu,n),o=Gu[a.placedSide];return(0,z.jsx)(`span`,{ref:a.onArrowChange,style:{position:`absolute`,left:a.arrowX,top:a.arrowY,[o]:0,transformOrigin:{top:``,right:`0 0`,bottom:`center 0`,left:`100% 0`}[a.placedSide],transform:{top:`translateY(100%)`,right:`translateY(50%) rotate(90deg) translateX(-50%)`,bottom:`rotate(180deg)`,left:`translateY(50%) rotate(-90deg) translateX(50%)`}[a.placedSide],visibility:a.shouldHideArrow?`hidden`:void 0},children:(0,z.jsx)(ju,{...r,ref:t,style:{...r.style,display:`block`}})})});Ku.displayName=Wu;function qu(e){return e!==null}var Ju=e=>({name:`transformOrigin`,options:e,fn(t){let{placement:n,rects:r,middlewareData:a}=t,o=a.arrow?.centerOffset!==0,s=o?0:e.arrowWidth,c=o?0:e.arrowHeight,[l,u]=Yu(n),d={start:`0%`,center:`50%`,end:`100%`}[u],f=(a.arrow?.x??0)+s/2,p=(a.arrow?.y??0)+c/2,m=``,h=``;return l===`bottom`?(m=o?d:`${f}px`,h=`${-c}px`):l===`top`?(m=o?d:`${f}px`,h=`${r.floating.height+c}px`):l===`right`?(m=`${-c}px`,h=o?d:`${p}px`):l===`left`&&(m=`${r.floating.width+c}px`,h=o?d:`${p}px`),{data:{x:m,y:h}}}});function Yu(e){let[t,n=`center`]=e.split(`-`);return[t,n]}var Xu=Lu,Zu=zu,Qu=Uu,$u=Ku,ed=`Separator`,td=`horizontal`,nd=[`horizontal`,`vertical`],rd=x.forwardRef((e,t)=>{let{decorative:n,orientation:r=td,...a}=e,o=id(r)?r:td,s=n?{role:`none`}:{"aria-orientation":o===`vertical`?o:void 0,role:`separator`};return(0,z.jsx)(W.div,{"data-orientation":o,...s,...a,ref:t})});rd.displayName=ed;function id(e){return nd.includes(e)}var ad=rd,[od,sd]=na(`Tooltip`,[Pu]),cd=Pu(),ld=`TooltipProvider`,ud=700,dd=`tooltip.open`,[fd,pd]=od(ld),md=e=>{let{__scopeTooltip:t,delayDuration:n=ud,skipDelayDuration:r=300,disableHoverableContent:a=!1,children:o}=e,s=x.useRef(!0),c=x.useRef(!1),l=x.useRef(0);return x.useEffect(()=>{let e=l.current;return()=>window.clearTimeout(e)},[]),(0,z.jsx)(fd,{scope:t,isOpenDelayedRef:s,delayDuration:n,onOpen:x.useCallback(()=>{window.clearTimeout(l.current),s.current=!1},[]),onClose:x.useCallback(()=>{window.clearTimeout(l.current),l.current=window.setTimeout(()=>s.current=!0,r)},[r]),isPointerInTransitRef:c,onPointerInTransitChange:x.useCallback(e=>{c.current=e},[]),disableHoverableContent:a,children:o})};md.displayName=ld;var hd=`Tooltip`,[gd,_d]=od(hd),vd=e=>{let{__scopeTooltip:t,children:n,open:r,defaultOpen:a,onOpenChange:o,disableHoverableContent:s,delayDuration:c}=e,l=pd(hd,e.__scopeTooltip),u=cd(t),[d,f]=x.useState(null),p=_a(),m=x.useRef(0),h=s??l.disableHoverableContent,g=c??l.delayDuration,_=x.useRef(!1),[v,y]=sa({prop:r,defaultProp:a??!1,onChange:e=>{e?(l.onOpen(),document.dispatchEvent(new CustomEvent(dd))):l.onClose(),o?.(e)},caller:hd}),b=x.useMemo(()=>v?_.current?`delayed-open`:`instant-open`:`closed`,[v]),S=x.useCallback(()=>{window.clearTimeout(m.current),m.current=0,_.current=!1,y(!0)},[y]),C=x.useCallback(()=>{window.clearTimeout(m.current),m.current=0,y(!1)},[y]),w=x.useCallback(()=>{window.clearTimeout(m.current),m.current=window.setTimeout(()=>{_.current=!0,y(!0),m.current=0},g)},[g,y]);return x.useEffect(()=>()=>{m.current&&=(window.clearTimeout(m.current),0)},[]),(0,z.jsx)(Xu,{...u,children:(0,z.jsx)(gd,{scope:t,contentId:p,open:v,stateAttribute:b,trigger:d,onTriggerChange:f,onTriggerEnter:x.useCallback(()=>{l.isOpenDelayedRef.current?w():S()},[l.isOpenDelayedRef,w,S]),onTriggerLeave:x.useCallback(()=>{h?C():(window.clearTimeout(m.current),m.current=0)},[C,h]),onOpen:S,onClose:C,disableHoverableContent:h,children:n})})};vd.displayName=hd;var yd=`TooltipTrigger`,bd=x.forwardRef((e,t)=>{let{__scopeTooltip:n,...r}=e,a=_d(yd,n),o=pd(yd,n),s=cd(n),c=Hi(t,x.useRef(null),a.onTriggerChange),l=x.useRef(!1),u=x.useRef(!1),d=x.useCallback(()=>l.current=!1,[]);return x.useEffect(()=>()=>document.removeEventListener(`pointerup`,d),[d]),(0,z.jsx)(Zu,{asChild:!0,...s,children:(0,z.jsx)(W.button,{"aria-describedby":a.open?a.contentId:void 0,"data-state":a.stateAttribute,...r,ref:c,onPointerMove:ia(e.onPointerMove,e=>{e.pointerType!==`touch`&&!u.current&&!o.isPointerInTransitRef.current&&(a.onTriggerEnter(),u.current=!0)}),onPointerLeave:ia(e.onPointerLeave,()=>{a.onTriggerLeave(),u.current=!1}),onPointerDown:ia(e.onPointerDown,()=>{a.open&&a.onClose(),l.current=!0,document.addEventListener(`pointerup`,d,{once:!0})}),onFocus:ia(e.onFocus,()=>{l.current||a.onOpen()}),onBlur:ia(e.onBlur,a.onClose),onClick:ia(e.onClick,a.onClose)})})});bd.displayName=yd;var xd=`TooltipPortal`,[Sd,Cd]=od(xd,{forceMount:void 0}),wd=e=>{let{__scopeTooltip:t,forceMount:n,children:r,container:a}=e,o=_d(xd,t);return(0,z.jsx)(Sd,{scope:t,forceMount:n,children:(0,z.jsx)(da,{present:n||o.open,children:(0,z.jsx)(lo,{asChild:!0,container:a,children:r})})})};wd.displayName=xd;var Td=`TooltipContent`,Ed=x.forwardRef((e,t)=>{let n=Cd(Td,e.__scopeTooltip),{forceMount:r=n.forceMount,side:a=`top`,...o}=e,s=_d(Td,e.__scopeTooltip);return(0,z.jsx)(da,{present:r||s.open,children:s.disableHoverableContent?(0,z.jsx)(jd,{side:a,...o,ref:t}):(0,z.jsx)(Dd,{side:a,...o,ref:t})})}),Dd=x.forwardRef((e,t)=>{let n=_d(Td,e.__scopeTooltip),r=pd(Td,e.__scopeTooltip),a=x.useRef(null),o=Hi(t,a),[s,c]=x.useState(null),{trigger:l,onClose:u}=n,d=a.current,{onPointerInTransitChange:f}=r,p=x.useCallback(()=>{c(null),f(!1)},[f]),m=x.useCallback((e,t)=>{let n=e.currentTarget,r={x:e.clientX,y:e.clientY},a=Fd(r,Pd(r,n.getBoundingClientRect())),o=Id(t.getBoundingClientRect());c(Rd([...a,...o])),f(!0)},[f]);return x.useEffect(()=>()=>p(),[p]),x.useEffect(()=>{if(l&&d){let e=e=>m(e,d),t=e=>m(e,l);return l.addEventListener(`pointerleave`,e),d.addEventListener(`pointerleave`,t),()=>{l.removeEventListener(`pointerleave`,e),d.removeEventListener(`pointerleave`,t)}}},[l,d,m,p]),x.useEffect(()=>{if(s){let e=e=>{let t=e.target,n={x:e.clientX,y:e.clientY},r=l?.contains(t)||d?.contains(t),a=!Ld(n,s);r?p():a&&(p(),u())};return document.addEventListener(`pointermove`,e),()=>document.removeEventListener(`pointermove`,e)}},[l,d,s,u,p]),(0,z.jsx)(jd,{...e,ref:o})}),[Od,kd]=od(hd,{isInside:!1}),Ad=qi(`TooltipContent`),jd=x.forwardRef((e,t)=>{let{__scopeTooltip:n,children:r,"aria-label":a,onEscapeKeyDown:o,onPointerDownOutside:s,...c}=e,l=_d(Td,n),u=cd(n),{onClose:d}=l;return x.useEffect(()=>(document.addEventListener(dd,d),()=>document.removeEventListener(dd,d)),[d]),x.useEffect(()=>{if(l.trigger){let e=e=>{e.target?.contains(l.trigger)&&d()};return window.addEventListener(`scroll`,e,{capture:!0}),()=>window.removeEventListener(`scroll`,e,{capture:!0})}},[l.trigger,d]),(0,z.jsx)(za,{asChild:!0,disableOutsidePointerEvents:!1,onEscapeKeyDown:o,onPointerDownOutside:s,onFocusOutside:e=>e.preventDefault(),onDismiss:d,children:(0,z.jsxs)(Qu,{"data-state":l.stateAttribute,...u,...c,ref:t,style:{...c.style,"--radix-tooltip-content-transform-origin":`var(--radix-popper-transform-origin)`,"--radix-tooltip-content-available-width":`var(--radix-popper-available-width)`,"--radix-tooltip-content-available-height":`var(--radix-popper-available-height)`,"--radix-tooltip-trigger-width":`var(--radix-popper-anchor-width)`,"--radix-tooltip-trigger-height":`var(--radix-popper-anchor-height)`},children:[(0,z.jsx)(Ad,{children:r}),(0,z.jsx)(Od,{scope:n,isInside:!0,children:(0,z.jsx)(ea,{id:l.contentId,role:`tooltip`,children:a||r})})]})})});Ed.displayName=Td;var Md=`TooltipArrow`,Nd=x.forwardRef((e,t)=>{let{__scopeTooltip:n,...r}=e,a=cd(n);return kd(Md,n).isInside?null:(0,z.jsx)($u,{...a,...r,ref:t})});Nd.displayName=Md;function Pd(e,t){let n=Math.abs(t.top-e.y),r=Math.abs(t.bottom-e.y),a=Math.abs(t.right-e.x),o=Math.abs(t.left-e.x);switch(Math.min(n,r,a,o)){case o:return`left`;case a:return`right`;case n:return`top`;case r:return`bottom`;default:throw Error(`unreachable`)}}function Fd(e,t,n=5){let r=[];switch(t){case`top`:r.push({x:e.x-n,y:e.y+n},{x:e.x+n,y:e.y+n});break;case`bottom`:r.push({x:e.x-n,y:e.y-n},{x:e.x+n,y:e.y-n});break;case`left`:r.push({x:e.x+n,y:e.y-n},{x:e.x+n,y:e.y+n});break;case`right`:r.push({x:e.x-n,y:e.y-n},{x:e.x-n,y:e.y+n});break}return r}function Id(e){let{top:t,right:n,bottom:r,left:a}=e;return[{x:a,y:t},{x:n,y:t},{x:n,y:r},{x:a,y:r}]}function Ld(e,t){let{x:n,y:r}=e,a=!1;for(let e=0,o=t.length-1;e<t.length;o=e++){let s=t[e],c=t[o],l=s.x,u=s.y,d=c.x,f=c.y;u>r!=f>r&&n<(d-l)*(r-u)/(f-u)+l&&(a=!a)}return a}function Rd(e){let t=e.slice();return t.sort((e,t)=>e.x<t.x?-1:e.x>t.x?1:e.y<t.y?-1:+(e.y>t.y)),zd(t)}function zd(e){if(e.length<=1)return e.slice();let t=[];for(let n=0;n<e.length;n++){let r=e[n];for(;t.length>=2;){let e=t[t.length-1],n=t[t.length-2];if((e.x-n.x)*(r.y-n.y)>=(e.y-n.y)*(r.x-n.x))t.pop();else break}t.push(r)}t.pop();let n=[];for(let t=e.length-1;t>=0;t--){let r=e[t];for(;n.length>=2;){let e=n[n.length-1],t=n[n.length-2];if((e.x-t.x)*(r.y-t.y)>=(e.y-t.y)*(r.x-t.x))n.pop();else break}n.push(r)}return n.pop(),t.length===1&&n.length===1&&t[0].x===n[0].x&&t[0].y===n[0].y?t:t.concat(n)}var Bd=md,Vd=vd,Hd=bd,Ud=wd,Wd=Ed,Gd=Nd,Kd=768;function qd(){let[e,t]=x.useState(()=>typeof window<`u`?window.innerWidth<Kd:void 0);return x.useEffect(()=>{let e=window.matchMedia(`(max-width: ${Kd-1}px)`),n=()=>{t(window.innerWidth<Kd)};return e.addEventListener(`change`,n),()=>e.removeEventListener(`change`,n)},[]),!!e}var Jd=(e,t)=>{let n=Array(e.length+t.length);for(let t=0;t<e.length;t++)n[t]=e[t];for(let r=0;r<t.length;r++)n[e.length+r]=t[r];return n},Yd=(e,t)=>({classGroupId:e,validator:t}),Xd=(e=new Map,t=null,n)=>({nextPart:e,validators:t,classGroupId:n}),Zd=`-`,Qd=[],$d=`arbitrary..`,ef=e=>{let t=rf(e),{conflictingClassGroups:n,conflictingClassGroupModifiers:r}=e;return{getClassGroupId:e=>{if(e.startsWith(`[`)&&e.endsWith(`]`))return nf(e);let n=e.split(Zd);return tf(n,+(n[0]===``&&n.length>1),t)},getConflictingClassGroupIds:(e,t)=>{if(t){let t=r[e],a=n[e];return t?a?Jd(a,t):t:a||Qd}return n[e]||Qd}}},tf=(e,t,n)=>{if(e.length-t===0)return n.classGroupId;let r=e[t],a=n.nextPart.get(r);if(a){let n=tf(e,t+1,a);if(n)return n}let o=n.validators;if(o===null)return;let s=t===0?e.join(Zd):e.slice(t).join(Zd),c=o.length;for(let e=0;e<c;e++){let t=o[e];if(t.validator(s))return t.classGroupId}},nf=e=>e.slice(1,-1).indexOf(`:`)===-1?void 0:(()=>{let t=e.slice(1,-1),n=t.indexOf(`:`),r=t.slice(0,n);return r?$d+r:void 0})(),rf=e=>{let{theme:t,classGroups:n}=e;return af(n,t)},af=(e,t)=>{let n=Xd();for(let r in e){let a=e[r];of(a,n,r,t)}return n},of=(e,t,n,r)=>{let a=e.length;for(let o=0;o<a;o++){let a=e[o];sf(a,t,n,r)}},sf=(e,t,n,r)=>{if(typeof e==`string`){cf(e,t,n);return}if(typeof e==`function`){lf(e,t,n,r);return}uf(e,t,n,r)},cf=(e,t,n)=>{let r=e===``?t:df(t,e);r.classGroupId=n},lf=(e,t,n,r)=>{if(ff(e)){of(e(r),t,n,r);return}t.validators===null&&(t.validators=[]),t.validators.push(Yd(n,e))},uf=(e,t,n,r)=>{let a=Object.entries(e),o=a.length;for(let e=0;e<o;e++){let[o,s]=a[e];of(s,df(t,o),n,r)}},df=(e,t)=>{let n=e,r=t.split(Zd),a=r.length;for(let e=0;e<a;e++){let t=r[e],a=n.nextPart.get(t);a||(a=Xd(),n.nextPart.set(t,a)),n=a}return n},ff=e=>`isThemeGetter`in e&&e.isThemeGetter===!0,pf=e=>{if(e<1)return{get:()=>void 0,set:()=>{}};let t=0,n=Object.create(null),r=Object.create(null),a=(a,o)=>{n[a]=o,t++,t>e&&(t=0,r=n,n=Object.create(null))};return{get(e){let t=n[e];if(t!==void 0)return t;if((t=r[e])!==void 0)return a(e,t),t},set(e,t){e in n?n[e]=t:a(e,t)}}},mf=`!`,hf=`:`,gf=[],_f=(e,t,n,r,a)=>({modifiers:e,hasImportantModifier:t,baseClassName:n,maybePostfixModifierPosition:r,isExternal:a}),vf=e=>{let{prefix:t,experimentalParseClassName:n}=e,r=e=>{let t=[],n=0,r=0,a=0,o,s=e.length;for(let c=0;c<s;c++){let s=e[c];if(n===0&&r===0){if(s===hf){t.push(e.slice(a,c)),a=c+1;continue}if(s===`/`){o=c;continue}}s===`[`?n++:s===`]`?n--:s===`(`?r++:s===`)`&&r--}let c=t.length===0?e:e.slice(a),l=c,u=!1;c.endsWith(mf)?(l=c.slice(0,-1),u=!0):c.startsWith(mf)&&(l=c.slice(1),u=!0);let d=o&&o>a?o-a:void 0;return _f(t,u,l,d)};if(t){let e=t+hf,n=r;r=t=>t.startsWith(e)?n(t.slice(e.length)):_f(gf,!1,t,void 0,!0)}if(n){let e=r;r=t=>n({className:t,parseClassName:e})}return r},yf=e=>{let t=new Map;return e.orderSensitiveModifiers.forEach((e,n)=>{t.set(e,1e6+n)}),e=>{let n=[],r=[];for(let a=0;a<e.length;a++){let o=e[a],s=o[0]===`[`,c=t.has(o);s||c?(r.length>0&&(r.sort(),n.push(...r),r=[]),n.push(o)):r.push(o)}return r.length>0&&(r.sort(),n.push(...r)),n}},bf=e=>({cache:pf(e.cacheSize),parseClassName:vf(e),sortModifiers:yf(e),postfixLookupClassGroupIds:xf(e),...ef(e)}),xf=e=>{let t=Object.create(null),n=e.postfixLookupClassGroups;if(n)for(let e=0;e<n.length;e++)t[n[e]]=!0;return t},Sf=/\s+/,Cf=(e,t)=>{let{parseClassName:n,getClassGroupId:r,getConflictingClassGroupIds:a,sortModifiers:o,postfixLookupClassGroupIds:s}=t,c=[],l=e.trim().split(Sf),u=``;for(let e=l.length-1;e>=0;--e){let t=l[e],{isExternal:d,modifiers:f,hasImportantModifier:p,baseClassName:m,maybePostfixModifierPosition:h}=n(t);if(d){u=t+(u.length>0?` `+u:u);continue}let g=!!h,_;if(g){_=r(m.substring(0,h));let e=_&&s[_]?r(m):void 0;e&&e!==_&&(_=e,g=!1)}else _=r(m);if(!_){if(!g){u=t+(u.length>0?` `+u:u);continue}if(_=r(m),!_){u=t+(u.length>0?` `+u:u);continue}g=!1}let v=f.length===0?``:f.length===1?f[0]:o(f).join(`:`),y=p?v+mf:v,b=y+_;if(c.indexOf(b)>-1)continue;c.push(b);let x=a(_,g);for(let e=0;e<x.length;++e){let t=x[e];c.push(y+t)}u=t+(u.length>0?` `+u:u)}return u},wf=(...e)=>{let t=0,n,r,a=``;for(;t<e.length;)(n=e[t++])&&(r=Tf(n))&&(a&&(a+=` `),a+=r);return a},Tf=e=>{if(typeof e==`string`)return e;let t,n=``;for(let r=0;r<e.length;r++)e[r]&&(t=Tf(e[r]))&&(n&&(n+=` `),n+=t);return n},Ef=(e,...t)=>{let n,r,a,o,s=s=>(n=bf(t.reduce((e,t)=>t(e),e())),r=n.cache.get,a=n.cache.set,o=c,c(s)),c=e=>{let t=r(e);if(t)return t;let o=Cf(e,n);return a(e,o),o};return o=s,(...e)=>o(wf(...e))},Df=[],Of=e=>{let t=t=>t[e]||Df;return t.isThemeGetter=!0,t},kf=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,Af=/^\((?:(\w[\w-]*):)?(.+)\)$/i,jf=/^\d+(?:\.\d+)?\/\d+(?:\.\d+)?$/,Mf=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,Nf=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,Pf=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,Ff=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,If=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,Lf=e=>jf.test(e),J=e=>!!e&&!Number.isNaN(Number(e)),Rf=e=>!!e&&Number.isInteger(Number(e)),zf=e=>e.endsWith(`%`)&&J(e.slice(0,-1)),Bf=e=>Mf.test(e),Vf=()=>!0,Hf=e=>Nf.test(e)&&!Pf.test(e),Uf=()=>!1,Wf=e=>Ff.test(e),Gf=e=>If.test(e),Kf=e=>!Y(e)&&!X(e),qf=e=>e.startsWith(`@container`)&&(e[10]===`/`&&e[11]!==void 0||e[11]===`s`&&e[16]!==void 0&&e.startsWith(`-size/`,10)||e[11]===`n`&&e[18]!==void 0&&e.startsWith(`-normal/`,10)),Jf=e=>lp(e,pp,Uf),Y=e=>kf.test(e),Yf=e=>lp(e,mp,Hf),Xf=e=>lp(e,hp,J),Zf=e=>lp(e,_p,Vf),Qf=e=>lp(e,gp,Uf),$f=e=>lp(e,dp,Uf),ep=e=>lp(e,fp,Gf),tp=e=>lp(e,vp,Wf),X=e=>Af.test(e),np=e=>up(e,mp),rp=e=>up(e,gp),ip=e=>up(e,dp),ap=e=>up(e,pp),op=e=>up(e,fp),sp=e=>up(e,vp,!0),cp=e=>up(e,_p,!0),lp=(e,t,n)=>{let r=kf.exec(e);return r?r[1]?t(r[1]):n(r[2]):!1},up=(e,t,n=!1)=>{let r=Af.exec(e);return r?r[1]?t(r[1]):n:!1},dp=e=>e===`position`||e===`percentage`,fp=e=>e===`image`||e===`url`,pp=e=>e===`length`||e===`size`||e===`bg-size`,mp=e=>e===`length`,hp=e=>e===`number`,gp=e=>e===`family-name`,_p=e=>e===`number`||e===`weight`,vp=e=>e===`shadow`,yp=Ef(()=>{let e=Of(`color`),t=Of(`font`),n=Of(`text`),r=Of(`font-weight`),a=Of(`tracking`),o=Of(`leading`),s=Of(`breakpoint`),c=Of(`container`),l=Of(`spacing`),u=Of(`radius`),d=Of(`shadow`),f=Of(`inset-shadow`),p=Of(`text-shadow`),m=Of(`drop-shadow`),h=Of(`blur`),g=Of(`perspective`),_=Of(`aspect`),v=Of(`ease`),y=Of(`animate`),b=()=>[`auto`,`avoid`,`all`,`avoid-page`,`page`,`left`,`right`,`column`],x=()=>[`center`,`top`,`bottom`,`left`,`right`,`top-left`,`left-top`,`top-right`,`right-top`,`bottom-right`,`right-bottom`,`bottom-left`,`left-bottom`],S=()=>[...x(),X,Y],C=()=>[`auto`,`hidden`,`clip`,`visible`,`scroll`],w=()=>[`auto`,`contain`,`none`],T=()=>[X,Y,l],E=()=>[Lf,`full`,`auto`,...T()],D=()=>[Rf,`none`,`subgrid`,X,Y],O=()=>[`auto`,{span:[`full`,Rf,X,Y]},Rf,X,Y],k=()=>[Rf,`auto`,X,Y],A=()=>[`auto`,`min`,`max`,`fr`,X,Y],j=()=>[`start`,`end`,`center`,`between`,`around`,`evenly`,`stretch`,`baseline`,`center-safe`,`end-safe`],M=()=>[`start`,`end`,`center`,`stretch`,`center-safe`,`end-safe`],N=()=>[`auto`,...T()],P=()=>[Lf,`auto`,`full`,`dvw`,`dvh`,`lvw`,`lvh`,`svw`,`svh`,`min`,`max`,`fit`,...T()],F=()=>[Lf,`screen`,`full`,`dvw`,`lvw`,`svw`,`min`,`max`,`fit`,...T()],ee=()=>[Lf,`screen`,`full`,`lh`,`dvh`,`lvh`,`svh`,`min`,`max`,`fit`,...T()],I=()=>[e,X,Y],te=()=>[...x(),ip,$f,{position:[X,Y]}],ne=()=>[`no-repeat`,{repeat:[``,`x`,`y`,`space`,`round`]}],L=()=>[`auto`,`cover`,`contain`,ap,Jf,{size:[X,Y]}],re=()=>[zf,np,Yf],ie=()=>[``,`none`,`full`,u,X,Y],ae=()=>[``,J,np,Yf],oe=()=>[`solid`,`dashed`,`dotted`,`double`],se=()=>[`normal`,`multiply`,`screen`,`overlay`,`darken`,`lighten`,`color-dodge`,`color-burn`,`hard-light`,`soft-light`,`difference`,`exclusion`,`hue`,`saturation`,`color`,`luminosity`],ce=()=>[J,zf,ip,$f],le=()=>[``,`none`,h,X,Y],ue=()=>[`none`,J,X,Y],de=()=>[`none`,J,X,Y],fe=()=>[J,X,Y],pe=()=>[Lf,`full`,...T()];return{cacheSize:500,theme:{animate:[`spin`,`ping`,`pulse`,`bounce`],aspect:[`video`],blur:[Bf],breakpoint:[Bf],color:[Vf],container:[Bf],"drop-shadow":[Bf],ease:[`in`,`out`,`in-out`],font:[Kf],"font-weight":[`thin`,`extralight`,`light`,`normal`,`medium`,`semibold`,`bold`,`extrabold`,`black`],"inset-shadow":[Bf],leading:[`none`,`tight`,`snug`,`normal`,`relaxed`,`loose`],perspective:[`dramatic`,`near`,`normal`,`midrange`,`distant`,`none`],radius:[Bf],shadow:[Bf],spacing:[`px`,J],text:[Bf],"text-shadow":[Bf],tracking:[`tighter`,`tight`,`normal`,`wide`,`wider`,`widest`]},classGroups:{aspect:[{aspect:[`auto`,`square`,Lf,Y,X,_]}],container:[`container`],"container-type":[{"@container":[``,`normal`,`size`,X,Y]}],"container-named":[qf],columns:[{columns:[J,Y,X,c]}],"break-after":[{"break-after":b()}],"break-before":[{"break-before":b()}],"break-inside":[{"break-inside":[`auto`,`avoid`,`avoid-page`,`avoid-column`]}],"box-decoration":[{"box-decoration":[`slice`,`clone`]}],box:[{box:[`border`,`content`]}],display:[`block`,`inline-block`,`inline`,`flex`,`inline-flex`,`table`,`inline-table`,`table-caption`,`table-cell`,`table-column`,`table-column-group`,`table-footer-group`,`table-header-group`,`table-row-group`,`table-row`,`flow-root`,`grid`,`inline-grid`,`contents`,`list-item`,`hidden`],sr:[`sr-only`,`not-sr-only`],float:[{float:[`right`,`left`,`none`,`start`,`end`]}],clear:[{clear:[`left`,`right`,`both`,`none`,`start`,`end`]}],isolation:[`isolate`,`isolation-auto`],"object-fit":[{object:[`contain`,`cover`,`fill`,`none`,`scale-down`]}],"object-position":[{object:S()}],overflow:[{overflow:C()}],"overflow-x":[{"overflow-x":C()}],"overflow-y":[{"overflow-y":C()}],overscroll:[{overscroll:w()}],"overscroll-x":[{"overscroll-x":w()}],"overscroll-y":[{"overscroll-y":w()}],position:[`static`,`fixed`,`absolute`,`relative`,`sticky`],inset:[{inset:E()}],"inset-x":[{"inset-x":E()}],"inset-y":[{"inset-y":E()}],start:[{"inset-s":E(),start:E()}],end:[{"inset-e":E(),end:E()}],"inset-bs":[{"inset-bs":E()}],"inset-be":[{"inset-be":E()}],top:[{top:E()}],right:[{right:E()}],bottom:[{bottom:E()}],left:[{left:E()}],visibility:[`visible`,`invisible`,`collapse`],z:[{z:[Rf,`auto`,X,Y]}],basis:[{basis:[Lf,`full`,`auto`,c,...T()]}],"flex-direction":[{flex:[`row`,`row-reverse`,`col`,`col-reverse`]}],"flex-wrap":[{flex:[`nowrap`,`wrap`,`wrap-reverse`]}],flex:[{flex:[J,Lf,`auto`,`initial`,`none`,Y]}],grow:[{grow:[``,J,X,Y]}],shrink:[{shrink:[``,J,X,Y]}],order:[{order:[Rf,`first`,`last`,`none`,X,Y]}],"grid-cols":[{"grid-cols":D()}],"col-start-end":[{col:O()}],"col-start":[{"col-start":k()}],"col-end":[{"col-end":k()}],"grid-rows":[{"grid-rows":D()}],"row-start-end":[{row:O()}],"row-start":[{"row-start":k()}],"row-end":[{"row-end":k()}],"grid-flow":[{"grid-flow":[`row`,`col`,`dense`,`row-dense`,`col-dense`]}],"auto-cols":[{"auto-cols":A()}],"auto-rows":[{"auto-rows":A()}],gap:[{gap:T()}],"gap-x":[{"gap-x":T()}],"gap-y":[{"gap-y":T()}],"justify-content":[{justify:[...j(),`normal`]}],"justify-items":[{"justify-items":[...M(),`normal`]}],"justify-self":[{"justify-self":[`auto`,...M()]}],"align-content":[{content:[`normal`,...j()]}],"align-items":[{items:[...M(),{baseline:[``,`last`]}]}],"align-self":[{self:[`auto`,...M(),{baseline:[``,`last`]}]}],"place-content":[{"place-content":j()}],"place-items":[{"place-items":[...M(),`baseline`]}],"place-self":[{"place-self":[`auto`,...M()]}],p:[{p:T()}],px:[{px:T()}],py:[{py:T()}],ps:[{ps:T()}],pe:[{pe:T()}],pbs:[{pbs:T()}],pbe:[{pbe:T()}],pt:[{pt:T()}],pr:[{pr:T()}],pb:[{pb:T()}],pl:[{pl:T()}],m:[{m:N()}],mx:[{mx:N()}],my:[{my:N()}],ms:[{ms:N()}],me:[{me:N()}],mbs:[{mbs:N()}],mbe:[{mbe:N()}],mt:[{mt:N()}],mr:[{mr:N()}],mb:[{mb:N()}],ml:[{ml:N()}],"space-x":[{"space-x":T()}],"space-x-reverse":[`space-x-reverse`],"space-y":[{"space-y":T()}],"space-y-reverse":[`space-y-reverse`],size:[{size:P()}],"inline-size":[{inline:[`auto`,...F()]}],"min-inline-size":[{"min-inline":[`auto`,...F()]}],"max-inline-size":[{"max-inline":[`none`,...F()]}],"block-size":[{block:[`auto`,...ee()]}],"min-block-size":[{"min-block":[`auto`,...ee()]}],"max-block-size":[{"max-block":[`none`,...ee()]}],w:[{w:[c,`screen`,...P()]}],"min-w":[{"min-w":[c,`screen`,`none`,...P()]}],"max-w":[{"max-w":[c,`screen`,`none`,`prose`,{screen:[s]},...P()]}],h:[{h:[`screen`,`lh`,...P()]}],"min-h":[{"min-h":[`screen`,`lh`,`none`,...P()]}],"max-h":[{"max-h":[`screen`,`lh`,...P()]}],"font-size":[{text:[`base`,n,np,Yf]}],"font-smoothing":[`antialiased`,`subpixel-antialiased`],"font-style":[`italic`,`not-italic`],"font-weight":[{font:[r,cp,Zf]}],"font-stretch":[{"font-stretch":[`ultra-condensed`,`extra-condensed`,`condensed`,`semi-condensed`,`normal`,`semi-expanded`,`expanded`,`extra-expanded`,`ultra-expanded`,zf,Y]}],"font-family":[{font:[rp,Qf,t]}],"font-features":[{"font-features":[Y]}],"fvn-normal":[`normal-nums`],"fvn-ordinal":[`ordinal`],"fvn-slashed-zero":[`slashed-zero`],"fvn-figure":[`lining-nums`,`oldstyle-nums`],"fvn-spacing":[`proportional-nums`,`tabular-nums`],"fvn-fraction":[`diagonal-fractions`,`stacked-fractions`],tracking:[{tracking:[a,X,Y]}],"line-clamp":[{"line-clamp":[J,`none`,X,Xf]}],leading:[{leading:[o,...T()]}],"list-image":[{"list-image":[`none`,X,Y]}],"list-style-position":[{list:[`inside`,`outside`]}],"list-style-type":[{list:[`disc`,`decimal`,`none`,X,Y]}],"text-alignment":[{text:[`left`,`center`,`right`,`justify`,`start`,`end`]}],"placeholder-color":[{placeholder:I()}],"text-color":[{text:I()}],"text-decoration":[`underline`,`overline`,`line-through`,`no-underline`],"text-decoration-style":[{decoration:[...oe(),`wavy`]}],"text-decoration-thickness":[{decoration:[J,`from-font`,`auto`,X,Yf]}],"text-decoration-color":[{decoration:I()}],"underline-offset":[{"underline-offset":[J,`auto`,X,Y]}],"text-transform":[`uppercase`,`lowercase`,`capitalize`,`normal-case`],"text-overflow":[`truncate`,`text-ellipsis`,`text-clip`],"text-wrap":[{text:[`wrap`,`nowrap`,`balance`,`pretty`]}],indent:[{indent:T()}],"tab-size":[{tab:[Rf,X,Y]}],"vertical-align":[{align:[`baseline`,`top`,`middle`,`bottom`,`text-top`,`text-bottom`,`sub`,`super`,X,Y]}],whitespace:[{whitespace:[`normal`,`nowrap`,`pre`,`pre-line`,`pre-wrap`,`break-spaces`]}],break:[{break:[`normal`,`words`,`all`,`keep`]}],wrap:[{wrap:[`break-word`,`anywhere`,`normal`]}],hyphens:[{hyphens:[`none`,`manual`,`auto`]}],content:[{content:[`none`,X,Y]}],"bg-attachment":[{bg:[`fixed`,`local`,`scroll`]}],"bg-clip":[{"bg-clip":[`border`,`padding`,`content`,`text`]}],"bg-origin":[{"bg-origin":[`border`,`padding`,`content`]}],"bg-position":[{bg:te()}],"bg-repeat":[{bg:ne()}],"bg-size":[{bg:L()}],"bg-image":[{bg:[`none`,{linear:[{to:[`t`,`tr`,`r`,`br`,`b`,`bl`,`l`,`tl`]},Rf,X,Y],radial:[``,X,Y],conic:[Rf,X,Y]},op,ep]}],"bg-color":[{bg:I()}],"gradient-from-pos":[{from:re()}],"gradient-via-pos":[{via:re()}],"gradient-to-pos":[{to:re()}],"gradient-from":[{from:I()}],"gradient-via":[{via:I()}],"gradient-to":[{to:I()}],rounded:[{rounded:ie()}],"rounded-s":[{"rounded-s":ie()}],"rounded-e":[{"rounded-e":ie()}],"rounded-t":[{"rounded-t":ie()}],"rounded-r":[{"rounded-r":ie()}],"rounded-b":[{"rounded-b":ie()}],"rounded-l":[{"rounded-l":ie()}],"rounded-ss":[{"rounded-ss":ie()}],"rounded-se":[{"rounded-se":ie()}],"rounded-ee":[{"rounded-ee":ie()}],"rounded-es":[{"rounded-es":ie()}],"rounded-tl":[{"rounded-tl":ie()}],"rounded-tr":[{"rounded-tr":ie()}],"rounded-br":[{"rounded-br":ie()}],"rounded-bl":[{"rounded-bl":ie()}],"border-w":[{border:ae()}],"border-w-x":[{"border-x":ae()}],"border-w-y":[{"border-y":ae()}],"border-w-s":[{"border-s":ae()}],"border-w-e":[{"border-e":ae()}],"border-w-bs":[{"border-bs":ae()}],"border-w-be":[{"border-be":ae()}],"border-w-t":[{"border-t":ae()}],"border-w-r":[{"border-r":ae()}],"border-w-b":[{"border-b":ae()}],"border-w-l":[{"border-l":ae()}],"divide-x":[{"divide-x":ae()}],"divide-x-reverse":[`divide-x-reverse`],"divide-y":[{"divide-y":ae()}],"divide-y-reverse":[`divide-y-reverse`],"border-style":[{border:[...oe(),`hidden`,`none`]}],"divide-style":[{divide:[...oe(),`hidden`,`none`]}],"border-color":[{border:I()}],"border-color-x":[{"border-x":I()}],"border-color-y":[{"border-y":I()}],"border-color-s":[{"border-s":I()}],"border-color-e":[{"border-e":I()}],"border-color-bs":[{"border-bs":I()}],"border-color-be":[{"border-be":I()}],"border-color-t":[{"border-t":I()}],"border-color-r":[{"border-r":I()}],"border-color-b":[{"border-b":I()}],"border-color-l":[{"border-l":I()}],"divide-color":[{divide:I()}],"outline-style":[{outline:[...oe(),`none`,`hidden`]}],"outline-offset":[{"outline-offset":[J,X,Y]}],"outline-w":[{outline:[``,J,np,Yf]}],"outline-color":[{outline:I()}],shadow:[{shadow:[``,`none`,d,sp,tp]}],"shadow-color":[{shadow:I()}],"inset-shadow":[{"inset-shadow":[`none`,f,sp,tp]}],"inset-shadow-color":[{"inset-shadow":I()}],"ring-w":[{ring:ae()}],"ring-w-inset":[`ring-inset`],"ring-color":[{ring:I()}],"ring-offset-w":[{"ring-offset":[J,Yf]}],"ring-offset-color":[{"ring-offset":I()}],"inset-ring-w":[{"inset-ring":ae()}],"inset-ring-color":[{"inset-ring":I()}],"text-shadow":[{"text-shadow":[`none`,p,sp,tp]}],"text-shadow-color":[{"text-shadow":I()}],opacity:[{opacity:[J,X,Y]}],"mix-blend":[{"mix-blend":[...se(),`plus-darker`,`plus-lighter`]}],"bg-blend":[{"bg-blend":se()}],"mask-clip":[{"mask-clip":[`border`,`padding`,`content`,`fill`,`stroke`,`view`]},`mask-no-clip`],"mask-composite":[{mask:[`add`,`subtract`,`intersect`,`exclude`]}],"mask-image-linear-pos":[{"mask-linear":[J]}],"mask-image-linear-from-pos":[{"mask-linear-from":ce()}],"mask-image-linear-to-pos":[{"mask-linear-to":ce()}],"mask-image-linear-from-color":[{"mask-linear-from":I()}],"mask-image-linear-to-color":[{"mask-linear-to":I()}],"mask-image-t-from-pos":[{"mask-t-from":ce()}],"mask-image-t-to-pos":[{"mask-t-to":ce()}],"mask-image-t-from-color":[{"mask-t-from":I()}],"mask-image-t-to-color":[{"mask-t-to":I()}],"mask-image-r-from-pos":[{"mask-r-from":ce()}],"mask-image-r-to-pos":[{"mask-r-to":ce()}],"mask-image-r-from-color":[{"mask-r-from":I()}],"mask-image-r-to-color":[{"mask-r-to":I()}],"mask-image-b-from-pos":[{"mask-b-from":ce()}],"mask-image-b-to-pos":[{"mask-b-to":ce()}],"mask-image-b-from-color":[{"mask-b-from":I()}],"mask-image-b-to-color":[{"mask-b-to":I()}],"mask-image-l-from-pos":[{"mask-l-from":ce()}],"mask-image-l-to-pos":[{"mask-l-to":ce()}],"mask-image-l-from-color":[{"mask-l-from":I()}],"mask-image-l-to-color":[{"mask-l-to":I()}],"mask-image-x-from-pos":[{"mask-x-from":ce()}],"mask-image-x-to-pos":[{"mask-x-to":ce()}],"mask-image-x-from-color":[{"mask-x-from":I()}],"mask-image-x-to-color":[{"mask-x-to":I()}],"mask-image-y-from-pos":[{"mask-y-from":ce()}],"mask-image-y-to-pos":[{"mask-y-to":ce()}],"mask-image-y-from-color":[{"mask-y-from":I()}],"mask-image-y-to-color":[{"mask-y-to":I()}],"mask-image-radial":[{"mask-radial":[X,Y]}],"mask-image-radial-from-pos":[{"mask-radial-from":ce()}],"mask-image-radial-to-pos":[{"mask-radial-to":ce()}],"mask-image-radial-from-color":[{"mask-radial-from":I()}],"mask-image-radial-to-color":[{"mask-radial-to":I()}],"mask-image-radial-shape":[{"mask-radial":[`circle`,`ellipse`]}],"mask-image-radial-size":[{"mask-radial":[{closest:[`side`,`corner`],farthest:[`side`,`corner`]}]}],"mask-image-radial-pos":[{"mask-radial-at":x()}],"mask-image-conic-pos":[{"mask-conic":[J]}],"mask-image-conic-from-pos":[{"mask-conic-from":ce()}],"mask-image-conic-to-pos":[{"mask-conic-to":ce()}],"mask-image-conic-from-color":[{"mask-conic-from":I()}],"mask-image-conic-to-color":[{"mask-conic-to":I()}],"mask-mode":[{mask:[`alpha`,`luminance`,`match`]}],"mask-origin":[{"mask-origin":[`border`,`padding`,`content`,`fill`,`stroke`,`view`]}],"mask-position":[{mask:te()}],"mask-repeat":[{mask:ne()}],"mask-size":[{mask:L()}],"mask-type":[{"mask-type":[`alpha`,`luminance`]}],"mask-image":[{mask:[`none`,X,Y]}],filter:[{filter:[``,`none`,X,Y]}],blur:[{blur:le()}],brightness:[{brightness:[J,X,Y]}],contrast:[{contrast:[J,X,Y]}],"drop-shadow":[{"drop-shadow":[``,`none`,m,sp,tp]}],"drop-shadow-color":[{"drop-shadow":I()}],grayscale:[{grayscale:[``,J,X,Y]}],"hue-rotate":[{"hue-rotate":[J,X,Y]}],invert:[{invert:[``,J,X,Y]}],saturate:[{saturate:[J,X,Y]}],sepia:[{sepia:[``,J,X,Y]}],"backdrop-filter":[{"backdrop-filter":[``,`none`,X,Y]}],"backdrop-blur":[{"backdrop-blur":le()}],"backdrop-brightness":[{"backdrop-brightness":[J,X,Y]}],"backdrop-contrast":[{"backdrop-contrast":[J,X,Y]}],"backdrop-grayscale":[{"backdrop-grayscale":[``,J,X,Y]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[J,X,Y]}],"backdrop-invert":[{"backdrop-invert":[``,J,X,Y]}],"backdrop-opacity":[{"backdrop-opacity":[J,X,Y]}],"backdrop-saturate":[{"backdrop-saturate":[J,X,Y]}],"backdrop-sepia":[{"backdrop-sepia":[``,J,X,Y]}],"border-collapse":[{border:[`collapse`,`separate`]}],"border-spacing":[{"border-spacing":T()}],"border-spacing-x":[{"border-spacing-x":T()}],"border-spacing-y":[{"border-spacing-y":T()}],"table-layout":[{table:[`auto`,`fixed`]}],caption:[{caption:[`top`,`bottom`]}],transition:[{transition:[``,`all`,`colors`,`opacity`,`shadow`,`transform`,`none`,X,Y]}],"transition-behavior":[{transition:[`normal`,`discrete`]}],duration:[{duration:[J,`initial`,X,Y]}],ease:[{ease:[`linear`,`initial`,v,X,Y]}],delay:[{delay:[J,X,Y]}],animate:[{animate:[`none`,y,X,Y]}],backface:[{backface:[`hidden`,`visible`]}],perspective:[{perspective:[g,X,Y]}],"perspective-origin":[{"perspective-origin":S()}],rotate:[{rotate:ue()}],"rotate-x":[{"rotate-x":ue()}],"rotate-y":[{"rotate-y":ue()}],"rotate-z":[{"rotate-z":ue()}],scale:[{scale:de()}],"scale-x":[{"scale-x":de()}],"scale-y":[{"scale-y":de()}],"scale-z":[{"scale-z":de()}],"scale-3d":[`scale-3d`],skew:[{skew:fe()}],"skew-x":[{"skew-x":fe()}],"skew-y":[{"skew-y":fe()}],transform:[{transform:[X,Y,``,`none`,`gpu`,`cpu`]}],"transform-origin":[{origin:S()}],"transform-style":[{transform:[`3d`,`flat`]}],translate:[{translate:pe()}],"translate-x":[{"translate-x":pe()}],"translate-y":[{"translate-y":pe()}],"translate-z":[{"translate-z":pe()}],"translate-none":[`translate-none`],zoom:[{zoom:[Rf,X,Y]}],accent:[{accent:I()}],appearance:[{appearance:[`none`,`auto`]}],"caret-color":[{caret:I()}],"color-scheme":[{scheme:[`normal`,`dark`,`light`,`light-dark`,`only-dark`,`only-light`]}],cursor:[{cursor:[`auto`,`default`,`pointer`,`wait`,`text`,`move`,`help`,`not-allowed`,`none`,`context-menu`,`progress`,`cell`,`crosshair`,`vertical-text`,`alias`,`copy`,`no-drop`,`grab`,`grabbing`,`all-scroll`,`col-resize`,`row-resize`,`n-resize`,`e-resize`,`s-resize`,`w-resize`,`ne-resize`,`nw-resize`,`se-resize`,`sw-resize`,`ew-resize`,`ns-resize`,`nesw-resize`,`nwse-resize`,`zoom-in`,`zoom-out`,X,Y]}],"field-sizing":[{"field-sizing":[`fixed`,`content`]}],"pointer-events":[{"pointer-events":[`auto`,`none`]}],resize:[{resize:[`none`,``,`y`,`x`]}],"scroll-behavior":[{scroll:[`auto`,`smooth`]}],"scrollbar-thumb-color":[{"scrollbar-thumb":I()}],"scrollbar-track-color":[{"scrollbar-track":I()}],"scrollbar-gutter":[{"scrollbar-gutter":[`auto`,`stable`,`both`]}],"scrollbar-w":[{scrollbar:[`auto`,`thin`,`none`]}],"scroll-m":[{"scroll-m":T()}],"scroll-mx":[{"scroll-mx":T()}],"scroll-my":[{"scroll-my":T()}],"scroll-ms":[{"scroll-ms":T()}],"scroll-me":[{"scroll-me":T()}],"scroll-mbs":[{"scroll-mbs":T()}],"scroll-mbe":[{"scroll-mbe":T()}],"scroll-mt":[{"scroll-mt":T()}],"scroll-mr":[{"scroll-mr":T()}],"scroll-mb":[{"scroll-mb":T()}],"scroll-ml":[{"scroll-ml":T()}],"scroll-p":[{"scroll-p":T()}],"scroll-px":[{"scroll-px":T()}],"scroll-py":[{"scroll-py":T()}],"scroll-ps":[{"scroll-ps":T()}],"scroll-pe":[{"scroll-pe":T()}],"scroll-pbs":[{"scroll-pbs":T()}],"scroll-pbe":[{"scroll-pbe":T()}],"scroll-pt":[{"scroll-pt":T()}],"scroll-pr":[{"scroll-pr":T()}],"scroll-pb":[{"scroll-pb":T()}],"scroll-pl":[{"scroll-pl":T()}],"snap-align":[{snap:[`start`,`end`,`center`,`align-none`]}],"snap-stop":[{snap:[`normal`,`always`]}],"snap-type":[{snap:[`none`,`x`,`y`,`both`]}],"snap-strictness":[{snap:[`mandatory`,`proximity`]}],touch:[{touch:[`auto`,`none`,`manipulation`]}],"touch-x":[{"touch-pan":[`x`,`left`,`right`]}],"touch-y":[{"touch-pan":[`y`,`up`,`down`]}],"touch-pz":[`touch-pinch-zoom`],select:[{select:[`none`,`text`,`all`,`auto`]}],"will-change":[{"will-change":[`auto`,`scroll`,`contents`,`transform`,X,Y]}],fill:[{fill:[`none`,...I()]}],"stroke-w":[{stroke:[J,np,Yf,Xf]}],stroke:[{stroke:[`none`,...I()]}],"forced-color-adjust":[{"forced-color-adjust":[`auto`,`none`]}]},conflictingClassGroups:{"container-named":[`container-type`],overflow:[`overflow-x`,`overflow-y`],overscroll:[`overscroll-x`,`overscroll-y`],inset:[`inset-x`,`inset-y`,`inset-bs`,`inset-be`,`start`,`end`,`top`,`right`,`bottom`,`left`],"inset-x":[`right`,`left`],"inset-y":[`top`,`bottom`],flex:[`basis`,`grow`,`shrink`],gap:[`gap-x`,`gap-y`],p:[`px`,`py`,`ps`,`pe`,`pbs`,`pbe`,`pt`,`pr`,`pb`,`pl`],px:[`pr`,`pl`],py:[`pt`,`pb`],m:[`mx`,`my`,`ms`,`me`,`mbs`,`mbe`,`mt`,`mr`,`mb`,`ml`],mx:[`mr`,`ml`],my:[`mt`,`mb`],size:[`w`,`h`],"font-size":[`leading`],"fvn-normal":[`fvn-ordinal`,`fvn-slashed-zero`,`fvn-figure`,`fvn-spacing`,`fvn-fraction`],"fvn-ordinal":[`fvn-normal`],"fvn-slashed-zero":[`fvn-normal`],"fvn-figure":[`fvn-normal`],"fvn-spacing":[`fvn-normal`],"fvn-fraction":[`fvn-normal`],"line-clamp":[`display`,`overflow`],rounded:[`rounded-s`,`rounded-e`,`rounded-t`,`rounded-r`,`rounded-b`,`rounded-l`,`rounded-ss`,`rounded-se`,`rounded-ee`,`rounded-es`,`rounded-tl`,`rounded-tr`,`rounded-br`,`rounded-bl`],"rounded-s":[`rounded-ss`,`rounded-es`],"rounded-e":[`rounded-se`,`rounded-ee`],"rounded-t":[`rounded-tl`,`rounded-tr`],"rounded-r":[`rounded-tr`,`rounded-br`],"rounded-b":[`rounded-br`,`rounded-bl`],"rounded-l":[`rounded-tl`,`rounded-bl`],"border-spacing":[`border-spacing-x`,`border-spacing-y`],"border-w":[`border-w-x`,`border-w-y`,`border-w-s`,`border-w-e`,`border-w-bs`,`border-w-be`,`border-w-t`,`border-w-r`,`border-w-b`,`border-w-l`],"border-w-x":[`border-w-r`,`border-w-l`],"border-w-y":[`border-w-t`,`border-w-b`],"border-color":[`border-color-x`,`border-color-y`,`border-color-s`,`border-color-e`,`border-color-bs`,`border-color-be`,`border-color-t`,`border-color-r`,`border-color-b`,`border-color-l`],"border-color-x":[`border-color-r`,`border-color-l`],"border-color-y":[`border-color-t`,`border-color-b`],translate:[`translate-x`,`translate-y`,`translate-none`],"translate-none":[`translate`,`translate-x`,`translate-y`,`translate-z`],"scroll-m":[`scroll-mx`,`scroll-my`,`scroll-ms`,`scroll-me`,`scroll-mbs`,`scroll-mbe`,`scroll-mt`,`scroll-mr`,`scroll-mb`,`scroll-ml`],"scroll-mx":[`scroll-mr`,`scroll-ml`],"scroll-my":[`scroll-mt`,`scroll-mb`],"scroll-p":[`scroll-px`,`scroll-py`,`scroll-ps`,`scroll-pe`,`scroll-pbs`,`scroll-pbe`,`scroll-pt`,`scroll-pr`,`scroll-pb`,`scroll-pl`],"scroll-px":[`scroll-pr`,`scroll-pl`],"scroll-py":[`scroll-pt`,`scroll-pb`],touch:[`touch-x`,`touch-y`,`touch-pz`],"touch-x":[`touch`],"touch-y":[`touch`],"touch-pz":[`touch`]},conflictingClassGroupModifiers:{"font-size":[`leading`]},postfixLookupClassGroups:[`container-type`],orderSensitiveModifiers:[`*`,`**`,`after`,`backdrop`,`before`,`details-content`,`file`,`first-letter`,`first-line`,`marker`,`placeholder`,`selection`]}});function Z(...e){return yp(Yr(e))}var bp=Qr(`inline-flex shrink-0 items-center justify-center gap-2 rounded-md text-sm font-medium whitespace-nowrap transition-all outline-none focus-visible:border-ring focus-visible:ring-[1.5px] focus-visible:ring-ring/50 disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4`,{variants:{variant:{default:`bg-primary text-primary-foreground hover:bg-primary/90`,destructive:`bg-destructive text-white hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:bg-destructive/60 dark:focus-visible:ring-destructive/40`,outline:`border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:border-input dark:bg-input/30 dark:hover:bg-input/50`,secondary:`bg-secondary text-secondary-foreground hover:bg-secondary/80`,ghost:`hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50`,link:`text-primary underline-offset-4 hover:underline`},size:{default:`h-9 px-4 py-2 has-[>svg]:px-3`,xs:`h-6 gap-1 rounded-md px-2 text-xs has-[>svg]:px-1.5 [&_svg:not([class*='size-'])]:size-3`,sm:`h-8 gap-1.5 rounded-md px-3 has-[>svg]:px-2.5`,lg:`h-10 rounded-md px-6 has-[>svg]:px-4`,icon:`size-9`,"icon-xs":`size-6 rounded-md [&_svg:not([class*='size-'])]:size-3`,"icon-sm":`size-8`,"icon-lg":`size-10`}},defaultVariants:{variant:`default`,size:`default`}});function xp({className:e,variant:t=`default`,size:n=`default`,asChild:r=!1,...a}){return(0,z.jsx)(r?Wi:`button`,{"data-slot":`button`,"data-variant":t,"data-size":n,className:Z(bp({variant:t,size:n,className:e})),...a})}function Sp({className:e,type:t,...n}){return(0,z.jsx)(`input`,{type:t,"data-slot":`input`,className:Z(`h-9 w-full min-w-0 rounded-md border border-input bg-transparent px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none selection:bg-primary selection:text-primary-foreground file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm dark:bg-input/30`,`focus-visible:border-ring focus-visible:ring-[1.5px] focus-visible:ring-ring/50`,`aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40`,e),...n})}function Cp({className:e,orientation:t=`horizontal`,decorative:n=!0,...r}){return(0,z.jsx)(ad,{"data-slot":`separator`,decorative:n,orientation:t,className:Z(`shrink-0 bg-border data-[orientation=horizontal]:h-px data-[orientation=horizontal]:w-full data-[orientation=vertical]:h-full data-[orientation=vertical]:w-px`,e),...r})}function wp({...e}){return(0,z.jsx)(fc,{"data-slot":`sheet`,...e})}function Tp({...e}){return(0,z.jsx)(pc,{"data-slot":`sheet-portal`,...e})}function Ep({className:e,...t}){return(0,z.jsx)(mc,{"data-slot":`sheet-overlay`,className:Z(`fixed inset-0 z-50 bg-black/50 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:animate-in data-[state=open]:fade-in-0`,e),...t})}function Dp({className:e,children:t,side:n=`right`,showCloseButton:r=!0,...a}){return(0,z.jsxs)(Tp,{children:[(0,z.jsx)(Ep,{}),(0,z.jsxs)(hc,{"data-slot":`sheet-content`,className:Z(`fixed z-50 flex flex-col gap-4 bg-background shadow-lg transition ease-in-out data-[state=closed]:animate-out data-[state=closed]:duration-300 data-[state=open]:animate-in data-[state=open]:duration-500`,n===`right`&&`inset-y-0 right-0 h-full w-3/4 border-l data-[state=closed]:slide-out-to-right data-[state=open]:slide-in-from-right sm:max-w-sm`,n===`left`&&`inset-y-0 left-0 h-full w-3/4 border-r data-[state=closed]:slide-out-to-left data-[state=open]:slide-in-from-left sm:max-w-sm`,n===`top`&&`inset-x-0 top-0 h-auto border-b data-[state=closed]:slide-out-to-top data-[state=open]:slide-in-from-top`,n===`bottom`&&`inset-x-0 bottom-0 h-auto border-t data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom`,e),...a,children:[t,r&&(0,z.jsxs)(vc,{className:`absolute top-4 right-4 rounded-xs opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:ring-2 focus:ring-ring focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none data-[state=open]:bg-secondary`,children:[(0,z.jsx)(Ri,{className:`size-4`}),(0,z.jsx)(`span`,{className:`sr-only`,children:`Close`})]})]})]})}function Op({className:e,...t}){return(0,z.jsx)(`div`,{"data-slot":`sheet-header`,className:Z(`flex flex-col gap-1.5 p-4`,e),...t})}function kp({className:e,...t}){return(0,z.jsx)(gc,{"data-slot":`sheet-title`,className:Z(`font-semibold text-foreground`,e),...t})}function Ap({className:e,...t}){return(0,z.jsx)(_c,{"data-slot":`sheet-description`,className:Z(`text-sm text-muted-foreground`,e),...t})}function jp({delayDuration:e=0,...t}){return(0,z.jsx)(Bd,{"data-slot":`tooltip-provider`,delayDuration:e,...t})}function Mp({...e}){return(0,z.jsx)(Vd,{"data-slot":`tooltip`,...e})}function Np({...e}){return(0,z.jsx)(Hd,{"data-slot":`tooltip-trigger`,...e})}function Pp({className:e,sideOffset:t=0,children:n,...r}){return(0,z.jsx)(Ud,{children:(0,z.jsxs)(Wd,{"data-slot":`tooltip-content`,sideOffset:t,className:Z(`z-50 w-fit origin-(--radix-tooltip-content-transform-origin) animate-in rounded-md bg-foreground px-3 py-1.5 text-xs text-balance text-background fade-in-0 zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95`,e),...r,children:[n,(0,z.jsx)(Gd,{className:`z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px] bg-foreground fill-foreground`})]})})}var Fp=`sidebar_state`,Ip=3600*24*7,Lp=`16rem`,Rp=`18rem`,zp=`3rem`,Bp=`b`,Vp=x.createContext(null);function Hp(){let e=x.useContext(Vp);if(!e)throw Error(`useSidebar must be used within a SidebarProvider.`);return e}function Up({defaultOpen:e=!0,open:t,onOpenChange:n,className:r,style:a,children:o,...s}){let c=qd(),[l,u]=x.useState(!1),[d,f]=x.useState(e),p=t??d,m=x.useCallback(e=>{let t=typeof e==`function`?e(p):e;n?n(t):f(t),document.cookie=`${Fp}=${t}; path=/; max-age=${Ip}`},[n,p]),h=x.useCallback(()=>c?u(e=>!e):m(e=>!e),[c,m,u]);x.useEffect(()=>{let e=e=>{e.key===Bp&&(e.metaKey||e.ctrlKey)&&(e.preventDefault(),h())};return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[h]);let g=p?`expanded`:`collapsed`,_=x.useMemo(()=>({state:g,open:p,setOpen:m,isMobile:c,openMobile:l,setOpenMobile:u,toggleSidebar:h}),[g,p,m,c,l,u,h]);return(0,z.jsx)(Vp.Provider,{value:_,children:(0,z.jsx)(jp,{delayDuration:0,children:(0,z.jsx)(`div`,{"data-slot":`sidebar-wrapper`,style:{"--sidebar-width":Lp,"--sidebar-width-icon":zp,...a},className:Z(`group/sidebar-wrapper flex min-h-svh w-full has-data-[variant=inset]:bg-sidebar`,r),...s,children:o})})})}function Wp({side:e=`left`,variant:t=`sidebar`,collapsible:n=`offcanvas`,className:r,children:a,...o}){let{isMobile:s,state:c,openMobile:l,setOpenMobile:u}=Hp();return n===`none`?(0,z.jsx)(`div`,{"data-slot":`sidebar`,className:Z(`flex h-full w-(--sidebar-width) flex-col bg-sidebar text-sidebar-foreground`,r),...o,children:a}):s?(0,z.jsx)(wp,{open:l,onOpenChange:u,...o,children:(0,z.jsxs)(Dp,{"data-sidebar":`sidebar`,"data-slot":`sidebar`,"data-mobile":`true`,className:`w-(--sidebar-width) bg-sidebar p-0 text-sidebar-foreground [&>button]:hidden`,style:{"--sidebar-width":Rp},side:e,children:[(0,z.jsxs)(Op,{className:`sr-only`,children:[(0,z.jsx)(kp,{children:`Sidebar`}),(0,z.jsx)(Ap,{children:`Displays the mobile sidebar.`})]}),(0,z.jsx)(`div`,{className:`flex h-full w-full flex-col`,children:a})]})}):(0,z.jsxs)(`div`,{className:`group peer hidden text-sidebar-foreground md:block`,"data-state":c,"data-collapsible":c===`collapsed`?n:``,"data-variant":t,"data-side":e,"data-slot":`sidebar`,children:[(0,z.jsx)(`div`,{"data-slot":`sidebar-gap`,className:Z(`relative w-(--sidebar-width) bg-transparent transition-[width] duration-200 ease-linear`,`group-data-[collapsible=offcanvas]:w-0`,`group-data-[side=right]:rotate-180`,t===`floating`||t===`inset`?`group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4)))]`:`group-data-[collapsible=icon]:w-(--sidebar-width-icon)`)}),(0,z.jsx)(`div`,{"data-slot":`sidebar-container`,className:Z(`fixed inset-y-0 z-10 hidden h-svh w-(--sidebar-width) transition-[left,right,width] duration-200 ease-linear md:flex`,e===`left`?`left-0 group-data-[collapsible=offcanvas]:left-[calc(var(--sidebar-width)*-1)]`:`right-0 group-data-[collapsible=offcanvas]:right-[calc(var(--sidebar-width)*-1)]`,t===`floating`||t===`inset`?`p-2 group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4))+2px)]`:`group-data-[collapsible=icon]:w-(--sidebar-width-icon) group-data-[side=left]:border-r group-data-[side=right]:border-l`,r),...o,children:(0,z.jsx)(`div`,{"data-sidebar":`sidebar`,"data-slot":`sidebar-inner`,className:`flex h-full w-full flex-col bg-sidebar group-data-[variant=floating]:rounded-lg group-data-[variant=floating]:border group-data-[variant=floating]:border-sidebar-border group-data-[variant=floating]:shadow-sm`,children:a})})]})}function Gp({className:e,onClick:t,...n}){let{toggleSidebar:r}=Hp();return(0,z.jsxs)(xp,{"data-sidebar":`trigger`,"data-slot":`sidebar-trigger`,variant:`ghost`,size:`icon`,className:Z(`size-7`,e),onClick:e=>{t?.(e),r()},...n,children:[(0,z.jsx)(wi,{}),(0,z.jsx)(`span`,{className:`sr-only`,children:`Toggle Sidebar`})]})}function Kp({className:e,...t}){return(0,z.jsx)(`main`,{"data-slot":`sidebar-inset`,className:Z(`relative flex w-full flex-1 flex-col bg-background`,`md:peer-data-[variant=inset]:m-2 md:peer-data-[variant=inset]:ml-0 md:peer-data-[variant=inset]:rounded-xl md:peer-data-[variant=inset]:shadow-sm md:peer-data-[variant=inset]:peer-data-[state=collapsed]:ml-2`,e),...t})}function qp({className:e,...t}){return(0,z.jsx)(`div`,{"data-slot":`sidebar-header`,"data-sidebar":`header`,className:Z(`flex flex-col gap-2 p-2`,e),...t})}function Jp({className:e,...t}){return(0,z.jsx)(`div`,{"data-slot":`sidebar-footer`,"data-sidebar":`footer`,className:Z(`flex flex-col gap-2 p-2`,e),...t})}function Yp({className:e,...t}){return(0,z.jsx)(Cp,{"data-slot":`sidebar-separator`,"data-sidebar":`separator`,className:Z(`mx-2 w-auto bg-sidebar-border`,e),...t})}function Xp({className:e,...t}){return(0,z.jsx)(`div`,{"data-slot":`sidebar-content`,"data-sidebar":`content`,className:Z(`flex min-h-0 flex-1 flex-col gap-2 overflow-auto group-data-[collapsible=icon]:overflow-hidden`,e),...t})}function Zp({className:e,...t}){return(0,z.jsx)(`div`,{"data-slot":`sidebar-group`,"data-sidebar":`group`,className:Z(`relative flex w-full min-w-0 flex-col p-2`,e),...t})}function Qp({className:e,...t}){return(0,z.jsx)(`div`,{"data-slot":`sidebar-group-content`,"data-sidebar":`group-content`,className:Z(`w-full text-sm`,e),...t})}function $p({className:e,...t}){return(0,z.jsx)(`ul`,{"data-slot":`sidebar-menu`,"data-sidebar":`menu`,className:Z(`flex w-full min-w-0 flex-col gap-1`,e),...t})}function em({className:e,...t}){return(0,z.jsx)(`li`,{"data-slot":`sidebar-menu-item`,"data-sidebar":`menu-item`,className:Z(`group/menu-item relative`,e),...t})}var tm=Qr(`peer/menu-button flex w-full items-center gap-2 overflow-hidden rounded-md p-2 text-left text-sm ring-sidebar-ring outline-hidden transition-[width,height,padding] group-has-data-[sidebar=menu-action]/menu-item:pr-8 group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2! hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-[active=true]:bg-sidebar-accent data-[active=true]:font-medium data-[active=true]:text-sidebar-accent-foreground data-[state=open]:hover:bg-sidebar-accent data-[state=open]:hover:text-sidebar-accent-foreground [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0`,{variants:{variant:{default:`hover:bg-sidebar-accent hover:text-sidebar-accent-foreground`,outline:`bg-background shadow-[0_0_0_1px_var(--sidebar-border)] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground hover:shadow-[0_0_0_1px_var(--sidebar-accent)]`},size:{default:`h-8 text-sm`,sm:`h-7 text-xs`,lg:`h-12 text-sm group-data-[collapsible=icon]:p-0!`}},defaultVariants:{variant:`default`,size:`default`}});function nm({asChild:e=!1,isActive:t=!1,variant:n=`default`,size:r=`default`,tooltip:a,className:o,...s}){let c=e?Wi:`button`,{isMobile:l,state:u}=Hp(),d=(0,z.jsx)(c,{"data-slot":`sidebar-menu-button`,"data-sidebar":`menu-button`,"data-size":r,"data-active":t,className:Z(tm({variant:n,size:r}),o),...s});return a?(typeof a==`string`&&(a={children:a}),(0,z.jsxs)(Mp,{children:[(0,z.jsx)(Np,{asChild:!0,children:d}),(0,z.jsx)(Pp,{side:`right`,align:`center`,hidden:u!==`collapsed`||l,...a})]})):d}function rm({className:e,...t}){return(0,z.jsx)(`div`,{"data-slot":`sidebar-menu-badge`,"data-sidebar":`menu-badge`,className:Z(`pointer-events-none absolute right-1 flex h-5 min-w-5 items-center justify-center rounded-md px-1 text-xs font-medium text-sidebar-foreground tabular-nums select-none`,`peer-hover/menu-button:text-sidebar-accent-foreground peer-data-[active=true]/menu-button:text-sidebar-accent-foreground`,`peer-data-[size=sm]/menu-button:top-1`,`peer-data-[size=default]/menu-button:top-1.5`,`peer-data-[size=lg]/menu-button:top-2.5`,`group-data-[collapsible=icon]:hidden`,e),...t})}function im(){let e=tt(),{workspace:t,dirty:n}=yr(),{ragStatus:r}=Mr(),a=am(e.pathname),o=r?.hasIndex&&!r.stale;return(0,z.jsxs)(z.Fragment,{children:[(0,z.jsxs)(`div`,{className:`crumbs`,children:[a.map((e,t)=>(0,z.jsxs)(`span`,{children:[t>0&&(0,z.jsx)(`span`,{className:`sep`,style:{marginRight:8},children:`/`}),(0,z.jsx)(`span`,{className:t===a.length-1?`crumb cur`:`crumb`,children:e})]},e)),n&&(0,z.jsxs)(`span`,{className:`pill warn`,style:{marginLeft:8},children:[(0,z.jsx)(`span`,{style:{width:6,height:6,borderRadius:`50%`,background:`var(--amber-500)`}}),`Unsaved changes`]}),!n&&t&&a.some(e=>e===`Enrichment`||e===`Schema`)&&(0,z.jsxs)(`span`,{className:`pill ok`,style:{marginLeft:8},children:[(0,z.jsx)(V,{size:10}),`Saved`]})]}),(0,z.jsxs)(`div`,{className:`right`,children:[(0,z.jsxs)(`div`,{className:`cmd-palette`,children:[(0,z.jsx)(ji,{size:13}),(0,z.jsx)(`span`,{style:{flex:1},children:`Search tables, concepts, queries…`}),(0,z.jsx)(`span`,{className:`kbd`,children:`⌘K`})]}),r&&(0,z.jsxs)(`span`,{className:`pill ${o?`ok`:`warn`}`,children:[(0,z.jsx)(`span`,{style:{width:6,height:6,borderRadius:`50%`,background:o?`var(--green-500)`:`var(--amber-500)`}}),o?`Index fresh`:r.hasIndex?`Index stale`:`No index`]})]})]})}function am(e){let t=e.split(`/`).filter(Boolean);if(t.length===0)return[`Overview`];let n=t[0],r=[];switch(n){case`overview`:r.push(`Overview`);break;case`tables`:r.push(`Tables`),t[1]&&r.push(t[1]),t[2]&&r.push(t[2]),t[3]&&r.push(om(t[3]));break;case`concepts`:r.push(`Concepts`);break;case`tenancy`:r.push(`Tenancy`),t[1]&&r.push(om(t[1]));break;case`rag-index`:r.push(`RAG Index`),t[1]&&r.push(om(t[1]));break;case`playground`:r.push(`Playground`),t[1]&&r.push(`Query`);break;case`settings`:r.push(`Settings`);break;default:r.push(om(n))}return r}function om(e){return e.charAt(0).toUpperCase()+e.slice(1)}var sm=[{to:`/overview`,label:`Overview`,icon:bi},{to:`/tables`,label:`Tables`,icon:Ii,badgeKey:`tables`},{to:`/concepts`,label:`Concepts`,icon:vi,badgeKey:`concepts`},{to:`/tenancy`,label:`Tenancy`,icon:Ni},{to:`/rag-index`,label:`RAG Index`,icon:Pi},{to:`/playground`,label:`Playground`,icon:Ei}];function cm(){let{workspace:e}=yr(),{theme:t,toggleTheme:n}=Zn();function r(t){if(!(!e||!t)){if(t===`tables`)return String(e.tables.length);if(t===`concepts`)return String(e.concepts.length)}}return(0,z.jsxs)(Wp,{collapsible:`icon`,className:`border-r`,children:[(0,z.jsx)(qp,{className:`px-2 py-2`,children:(0,z.jsx)($p,{children:(0,z.jsx)(em,{children:(0,z.jsx)(nm,{size:`lg`,asChild:!0,tooltip:`AskDB Studio`,children:(0,z.jsxs)(`a`,{href:`/`,className:`no-underline`,children:[(0,z.jsx)(`div`,{className:`flex aspect-square size-8 items-center justify-center shrink-0`,children:(0,z.jsx)(`img`,{src:t===`dark`?`/assets/brand/dark-icon.png`:`/assets/brand/light-icon.png`,alt:`AskDB`,className:`size-7`})}),(0,z.jsxs)(`div`,{className:`flex flex-col gap-0.5 leading-none`,children:[(0,z.jsx)(`span`,{className:`font-semibold`,children:`AskDB`}),(0,z.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:`Studio`})]})]})})})})}),(0,z.jsx)(Xp,{children:(0,z.jsx)(Zp,{children:(0,z.jsx)(Qp,{children:(0,z.jsx)($p,{children:sm.map(e=>{let t=e.icon,n=r(e.badgeKey);return(0,z.jsxs)(em,{children:[(0,z.jsx)(nm,{asChild:!0,tooltip:e.label,children:(0,z.jsxs)(Dn,{to:e.to,children:[(0,z.jsx)(t,{}),(0,z.jsx)(`span`,{children:e.label})]})}),n&&(0,z.jsx)(rm,{children:n})]},e.to)})})})})}),(0,z.jsxs)(Jp,{children:[(0,z.jsxs)($p,{children:[(0,z.jsx)(em,{children:(0,z.jsx)(nm,{asChild:!0,tooltip:`Settings`,children:(0,z.jsxs)(Dn,{to:`/settings`,children:[(0,z.jsx)(Mi,{}),(0,z.jsx)(`span`,{children:`Settings`})]})})}),(0,z.jsx)(em,{children:(0,z.jsxs)(nm,{tooltip:t===`light`?`Dark mode`:`Light mode`,onClick:n,children:[t===`light`?(0,z.jsx)(Ci,{}):(0,z.jsx)(Fi,{}),(0,z.jsx)(`span`,{children:t===`light`?`Dark mode`:`Light mode`})]})})]}),(0,z.jsx)(Yp,{}),(0,z.jsxs)(`div`,{className:`flex items-center gap-2 px-2 py-1.5 text-xs text-muted-foreground group-data-[collapsible=icon]:justify-center group-data-[collapsible=icon]:px-0`,children:[(0,z.jsx)(hi,{size:14,className:`shrink-0`}),(0,z.jsx)(`span`,{className:`truncate font-mono group-data-[collapsible=icon]:hidden`,children:e?`${e.aiProvider||`postgres`} · ${e.schemaId.split(`/`).pop()||e.schemaId}`:`connecting…`})]})]})]})}function lm({dialog:e,onApply:t,onClose:n}){return(0,z.jsx)(`div`,{className:`dialog-overlay`,onClick:n,"aria-hidden":`true`,children:(0,z.jsxs)(`div`,{className:`dialog`,onClick:e=>e.stopPropagation(),children:[(0,z.jsxs)(`div`,{className:`dialog-hd`,children:[(0,z.jsxs)(`h3`,{children:[`Suggestions for `,e.label]}),(0,z.jsx)(`button`,{type:`button`,className:`btn ghost sm`,onClick:n,"aria-label":`Close`,children:(0,z.jsx)(Ri,{size:14})})]}),(0,z.jsx)(`div`,{className:`dialog-bd`,children:e.candidates.map(e=>(0,z.jsxs)(`article`,{className:`candidate`,children:[(0,z.jsx)(`p`,{children:e.text}),(0,z.jsx)(`div`,{className:`candidate-actions`,children:(0,z.jsx)(`button`,{type:`button`,className:`btn sm`,onClick:()=>t(e.text),children:`Use`})})]},e.text))})]})})}function um(){let e=it(),{workspace:t,tables:n}=yr(),{ragStatus:r}=Mr(),{historyEntries:a}=zr();if(!t)return null;let o=n.filter(e=>{let t=e.draft,n=t.description||t.aliases&&t.aliases.length>0,r=Object.values(t.columns??{}).every(e=>e.description);return n&&r}).length,s=n.filter(e=>{let t=e.draft,n=t.description||t.aliases&&t.aliases.length>0,r=Object.values(t.columns??{}).every(e=>e.description);return n&&!r}).length,c=!!t.tenantPolicy;return(0,z.jsxs)(`main`,{className:`main-pane`,children:[(0,z.jsxs)(`div`,{className:`main-hd`,children:[(0,z.jsxs)(`div`,{className:`main-title`,children:[(0,z.jsx)(`h1`,{children:`Overview`}),(0,z.jsxs)(`div`,{className:`main-sub`,children:[t.aiProvider||`postgres`,` · `,t.schemaId]})]}),(0,z.jsxs)(`div`,{className:`main-actions`,children:[(0,z.jsxs)(`button`,{type:`button`,className:`btn`,onClick:()=>void 0,children:[(0,z.jsx)(Oi,{size:14}),` Resync schema`]}),(0,z.jsxs)(`button`,{type:`button`,className:`btn primary`,onClick:()=>e(`/tables`),children:[(0,z.jsx)(Pi,{size:14}),` Draft enrichment`]})]})]}),(0,z.jsx)(`div`,{className:`main-body`,children:(0,z.jsxs)(`div`,{className:`stack`,children:[(0,z.jsxs)(`div`,{className:`grid-4`,children:[(0,z.jsxs)(`div`,{className:`card stat-card`,children:[(0,z.jsx)(`div`,{className:`stat-label`,children:`Tables`}),(0,z.jsx)(`div`,{className:`stat-num`,children:n.length}),(0,z.jsxs)(`div`,{className:`stat-hint`,children:[o,` enriched · `,s,` partial`]})]}),(0,z.jsxs)(`div`,{className:`card stat-card`,children:[(0,z.jsx)(`div`,{className:`stat-label`,children:`Concepts`}),(0,z.jsx)(`div`,{className:`stat-num`,children:t.concepts.length}),t.concepts.length>0&&(0,z.jsxs)(`div`,{className:`stat-hint`,children:[t.concepts.length,` defined`]})]}),(0,z.jsxs)(`div`,{className:`card stat-card`,children:[(0,z.jsx)(`div`,{className:`stat-label`,children:`Index health`}),(0,z.jsx)(`div`,{className:`stat-num`,children:r?.hasIndex?r.stale?`Stale`:`Fresh`:`None`}),r&&(0,z.jsxs)(`div`,{className:`stat-hint`,children:[r.chunksTotal,` chunks · `,r.dimensions,`d`]})]}),(0,z.jsxs)(`div`,{className:`card stat-card`,children:[(0,z.jsx)(`div`,{className:`stat-label`,children:`Sensitivity coverage`}),(0,z.jsx)(`div`,{className:`stat-num`,children:r?`${Math.round((r.sensitiveExcluded+r.sensitiveIncluded)/Math.max(r.chunksTotal,1)*100)}%`:`—`})]})]}),(0,z.jsxs)(`div`,{className:`grid-2`,children:[(0,z.jsxs)(`div`,{className:`card`,children:[(0,z.jsxs)(`div`,{className:`card-hd`,children:[(0,z.jsxs)(`h3`,{children:[(0,z.jsx)(Pi,{size:14}),` Pending enrichment`]}),(0,z.jsxs)(`span`,{className:`card-meta`,children:[n.length-o,` tables to go`]})]}),(0,z.jsx)(`div`,{className:`card-bd tight`,children:(0,z.jsxs)(`table`,{className:`tbl`,children:[(0,z.jsx)(`thead`,{children:(0,z.jsxs)(`tr`,{children:[(0,z.jsx)(`th`,{children:`Table`}),(0,z.jsx)(`th`,{children:`Cols`}),(0,z.jsx)(`th`,{children:`Status`}),(0,z.jsx)(`th`,{"aria-label":`Actions`})]})}),(0,z.jsx)(`tbody`,{children:n.filter(e=>{let t=e.draft,n=Object.values(t.columns??{}).every(e=>e.description);return!(t.description&&n)}).slice(0,6).map(t=>{let n=t.draft.description||t.draft.aliases&&t.draft.aliases.length>0?`partial`:`none`;return(0,z.jsxs)(`tr`,{style:{cursor:`default`},onClick:()=>e(`/tables/${t.physical.schema}/${t.physical.name}/enrichment`),children:[(0,z.jsx)(`td`,{children:(0,z.jsxs)(`span`,{className:`mono`,children:[t.physical.schema,`.`,t.physical.name]})}),(0,z.jsx)(`td`,{className:`muted`,children:t.physical.columns.length}),(0,z.jsxs)(`td`,{children:[(0,z.jsx)(`span`,{className:`enrich-dot ${n}`}),(0,z.jsx)(`span`,{className:`muted tiny`,style:{marginLeft:6},children:n})]}),(0,z.jsx)(`td`,{style:{textAlign:`right`},children:(0,z.jsxs)(`span`,{className:`suggest-link`,children:[(0,z.jsx)(Pi,{size:12}),` Draft`]})})]},t.physical.id)})})]})})]}),(0,z.jsxs)(`div`,{className:`card`,children:[(0,z.jsxs)(`div`,{className:`card-hd`,children:[(0,z.jsxs)(`h3`,{children:[(0,z.jsx)(yi,{size:14}),` Recent playground queries`]}),(0,z.jsxs)(`span`,{className:`card-meta`,children:[`last `,a.length,` queries`]})]}),(0,z.jsx)(`div`,{className:`card-bd tight`,children:(0,z.jsxs)(`table`,{className:`tbl`,children:[(0,z.jsx)(`thead`,{children:(0,z.jsxs)(`tr`,{children:[(0,z.jsx)(`th`,{children:`Question`}),(0,z.jsx)(`th`,{children:`Mode`}),(0,z.jsx)(`th`,{children:`Time`})]})}),(0,z.jsxs)(`tbody`,{children:[a.slice(0,5).map(e=>(0,z.jsxs)(`tr`,{children:[(0,z.jsx)(`td`,{style:{maxWidth:300,overflow:`hidden`,textOverflow:`ellipsis`,whiteSpace:`nowrap`},children:e.question}),(0,z.jsx)(`td`,{children:(0,z.jsx)(`span`,{className:`chip ${e.mode===`rag`?`red`:``}`,children:e.mode})}),(0,z.jsx)(`td`,{className:`muted tiny`,children:new Date(e.timestamp).toLocaleString()})]},e.id)),a.length===0&&(0,z.jsx)(`tr`,{children:(0,z.jsx)(`td`,{colSpan:3,className:`muted tiny`,style:{textAlign:`center`,padding:16},children:`No queries yet`})})]})]})})]})]}),(0,z.jsxs)(`div`,{className:`grid-3`,children:[(0,z.jsxs)(`div`,{className:`card`,children:[(0,z.jsx)(`div`,{className:`card-hd`,children:(0,z.jsxs)(`h3`,{children:[(0,z.jsx)(Pi,{size:14}),` RAG index`]})}),(0,z.jsx)(`div`,{className:`card-bd`,children:r?(0,z.jsxs)(z.Fragment,{children:[(0,z.jsxs)(`div`,{className:`grid-2`,style:{gap:10},children:[(0,z.jsxs)(`div`,{children:[(0,z.jsx)(`div`,{className:`muted tiny`,children:`Chunks`}),(0,z.jsx)(`div`,{style:{fontSize:18,fontWeight:600},children:gr(r.chunksTotal)})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(`div`,{className:`muted tiny`,children:`Indexed`}),(0,z.jsx)(`div`,{style:{fontSize:18,fontWeight:600},children:gr(r.chunksIndexed)})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(`div`,{className:`muted tiny`,children:`Dimensions`}),(0,z.jsx)(`div`,{className:`mono`,style:{fontSize:13},children:gr(r.dimensions)})]}),(0,z.jsxs)(`div`,{children:[(0,z.jsx)(`div`,{className:`muted tiny`,children:`Model`}),(0,z.jsx)(`div`,{className:`mono`,style:{fontSize:12},children:r.embedder.label})]})]}),(0,z.jsx)(`div`,{className:`bar`,style:{marginTop:14},children:(0,z.jsx)(`i`,{style:{width:r.chunksTotal>0?`${Math.round(r.chunksIndexed/r.chunksTotal*100)}%`:`0%`}})}),(0,z.jsxs)(`div`,{className:`tiny muted`,style:{marginTop:6},children:[`Updated: `,r.updatedAt??`never`]})]}):(0,z.jsx)(`div`,{className:`muted tiny`,children:`RAG status unavailable`})})]}),(0,z.jsxs)(`div`,{className:`card`,children:[(0,z.jsx)(`div`,{className:`card-hd`,children:(0,z.jsxs)(`h3`,{children:[(0,z.jsx)(Ni,{size:14}),` Tenancy`]})}),(0,z.jsxs)(`div`,{className:`card-bd`,children:[(0,z.jsx)(`div`,{className:`row-h`,style:{marginBottom:10},children:(0,z.jsxs)(`span`,{className:`chip ${c?`green`:`amber`}`,children:[(0,z.jsx)(zi,{size:11}),c?`Configured`:`Not configured`]})}),(0,z.jsx)(`div`,{className:`tiny muted`,style:{lineHeight:1.6},children:c?`${t.tenantPolicy.roots.length} root(s) configured, ${t.tenantPolicy.enforcement} mode.`:`Multi-tenant scoping isn't set. Generated SQL won't enforce row-level isolation.`}),!c&&(0,z.jsxs)(`button`,{type:`button`,className:`btn sm primary`,style:{marginTop:12},onClick:()=>e(`/tenancy`),children:[(0,z.jsx)(Pi,{size:12}),` Draft tenant policy`]})]})]}),(0,z.jsxs)(`div`,{className:`card`,children:[(0,z.jsx)(`div`,{className:`card-hd`,children:(0,z.jsxs)(`h3`,{children:[(0,z.jsx)(zi,{size:14}),` Suggested next actions`]})}),(0,z.jsxs)(`div`,{className:`card-bd`,style:{display:`flex`,flexDirection:`column`,gap:8},children:[n.filter(e=>!e.draft.description).length>0&&(0,z.jsxs)(`div`,{className:`row-h`,children:[(0,z.jsx)(`span`,{style:{width:8,height:8,borderRadius:`50%`,background:`var(--red-600)`,flexShrink:0}}),(0,z.jsxs)(`span`,{style:{fontSize:12.5},children:[`Add description to`,` `,(0,z.jsx)(`span`,{className:`mono`,children:n.find(e=>!e.draft.description)?.physical.name})]})]}),!r?.hasIndex&&(0,z.jsxs)(`div`,{className:`row-h`,children:[(0,z.jsx)(`span`,{style:{width:8,height:8,borderRadius:`50%`,background:`var(--amber-500)`,flexShrink:0}}),(0,z.jsx)(`span`,{style:{fontSize:12.5},children:`Build RAG index for retrieval-augmented queries`})]}),r?.stale&&(0,z.jsxs)(`div`,{className:`row-h`,children:[(0,z.jsx)(`span`,{style:{width:8,height:8,borderRadius:`50%`,background:`var(--ink-400)`,flexShrink:0}}),(0,z.jsx)(`span`,{style:{fontSize:12.5},children:`Rebuild index — tables changed since last build`})]}),n.length>0&&o===0&&(0,z.jsxs)(`div`,{className:`row-h`,children:[(0,z.jsx)(`span`,{style:{width:8,height:8,borderRadius:`50%`,background:`var(--amber-500)`,flexShrink:0}}),(0,z.jsx)(`span`,{style:{fontSize:12.5},children:`Start enriching tables to improve SQL generation quality`})]})]})]})]})]})})]})}var dm=e=>(0,z.jsx)(Ta,{"data-slot":`collapsible-trigger`,...e}),fm=e=>(0,z.jsx)(Da,{"data-slot":`collapsible-content`,...e}),pm=e=>(0,z.jsx)(Aa,{"data-slot":`collapsible`,...e}),mm={enriched:`Complete`,partial:`Partial`,none:`Not started`};function hm(){let e=it(),t=ct(),{filteredTables:n,tables:r,selectedTable:a,setSelectedTableId:o,tableSearch:s,setTableSearch:c,drafts:l}=yr(),[u,d]=(0,x.useState)(null),[f,p]=(0,x.useState)(null),m=(0,x.useCallback)(e=>{let t=l[e.physical.id]??e.draft,n=t.description||t.aliases&&t.aliases.length>0,r=Object.values(t.columns??{}).every(e=>e.description);return n&&r?`enriched`:n?`partial`:`none`},[l]),h=(0,x.useCallback)(e=>(l[e.physical.id]??e.draft).tracked!==!1,[l]),g=(0,x.useMemo)(()=>{let e={enriched:0,partial:0,none:0};for(let t of r)e[m(t)]++;return e},[r,m]),_=(0,x.useMemo)(()=>r.filter(e=>!h(e)).length,[r,h]),v=(0,x.useMemo)(()=>{let e=n;return u&&(e=e.filter(e=>u.has(m(e)))),f===`tracked`?e=e.filter(e=>h(e)):f===`untracked`&&(e=e.filter(e=>!h(e))),e},[n,u,f,m,h]),y=(0,x.useMemo)(()=>{let e=new Map;for(let t of v){let n=t.physical.schema;e.has(n)||e.set(n,[]),e.get(n).push(t)}return Array.from(e.entries()).sort(([e],[t])=>e.localeCompare(t))},[v]),b=(0,x.useMemo)(()=>y.map(([e])=>e),[y]),[S,C]=(0,x.useState)(new Set),w=(0,x.useMemo)(()=>new Set(b.filter(e=>!S.has(e))),[b,S]),T=S.size===0,E=()=>C(new Set(b)),D=()=>C(new Set);(0,x.useEffect)(()=>{s&&C(new Set)},[s]),(0,x.useEffect)(()=>{if(t.schema&&t.name)o(`table:${t.schema}.${t.name}`);else if(r.length>0&&!t.schema){let t=r[0];e(`/tables/${t.physical.schema}/${t.physical.name}/enrichment`,{replace:!0})}},[t.schema,t.name,r,e,o]);function O(e){d(t=>{if(!t)return new Set([e]);let n=new Set(t);return n.has(e)?(n.delete(e),n.size===0?null:n):(n.add(e),n.size===3?null:n)})}let k=!!(t.schema&&t.name);return(0,z.jsxs)(z.Fragment,{children:[(0,z.jsxs)(`div`,{className:`sub-rail`,children:[(0,z.jsxs)(`div`,{className:`sub-rail-hd`,children:[(0,z.jsx)(`h2`,{children:`Tables`}),(0,z.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:6},children:[(0,z.jsxs)(`span`,{className:`muted tiny`,children:[r.length,` tables`]}),y.length>1&&(0,z.jsx)(`button`,{type:`button`,className:`btn ghost sm`,onClick:T?D:E,title:T?`Collapse all`:`Expand all`,style:{padding:2,height:20,width:20},children:T?(0,z.jsx)(di,{size:13}):(0,z.jsx)(fi,{size:13})})]})]}),(0,z.jsxs)(`div`,{className:`sub-rail-search`,children:[(0,z.jsx)(ji,{size:13}),(0,z.jsx)(`input`,{type:`text`,"aria-label":`Search tables`,placeholder:`Search tables…`,value:s,onChange:e=>c(e.target.value)})]}),(0,z.jsxs)(`div`,{className:`enrich-filter-bar`,children:[[`enriched`,`partial`,`none`].map(e=>{let t=!u||u.has(e);return(0,z.jsxs)(`button`,{type:`button`,className:`enrich-filter-chip ${e} ${t?`active`:``}`,onClick:()=>O(e),title:`${t?`Hide`:`Show`} ${mm[e].toLowerCase()} tables`,children:[(0,z.jsx)(`span`,{className:`enrich-dot ${e}`}),(0,z.jsx)(`span`,{className:`enrich-filter-label`,children:mm[e]}),(0,z.jsx)(`span`,{className:`enrich-filter-count`,children:g[e]})]},e)}),_>0&&(0,z.jsxs)(`button`,{type:`button`,className:`enrich-filter-chip untracked ${f===`untracked`?`active`:``}`,onClick:()=>p(e=>e===`untracked`?null:`untracked`),title:f===`untracked`?`Show all tables`:`Show ${_} untracked table${_===1?``:`s`}`,children:[(0,z.jsx)(gi,{size:11}),(0,z.jsx)(`span`,{className:`enrich-filter-label`,children:`Untracked`}),(0,z.jsx)(`span`,{className:`enrich-filter-count`,children:_})]})]}),(0,z.jsxs)(`div`,{className:`sub-rail-list`,children:[y.map(([t,n])=>(0,z.jsx)(pm,{open:w.has(t),onOpenChange:e=>{C(n=>{let r=new Set(n);return e?r.delete(t):r.add(t),r})},children:(0,z.jsxs)(`div`,{className:`schema-group`,children:[(0,z.jsx)(dm,{asChild:!0,children:(0,z.jsxs)(`button`,{type:`button`,className:`schema-group-hd`,children:[(0,z.jsx)(ui,{size:12,className:`schema-chevron`,style:{transform:w.has(t)?`rotate(90deg)`:void 0}}),(0,z.jsx)(_i,{size:13,className:`schema-icon`}),(0,z.jsx)(`span`,{className:`schema-name`,children:t}),(0,z.jsx)(`span`,{className:`schema-count`,children:n.length})]})}),(0,z.jsx)(fm,{children:(0,z.jsx)(`div`,{className:`schema-group-bd`,children:n.map(t=>{let n=m(t),r=h(t);return(0,z.jsxs)(`button`,{type:`button`,className:`sub-rail-row table-leaf ${a?.physical.id===t.physical.id?`active`:``}${r?``:` untracked`}`,onClick:()=>e(`/tables/${t.physical.schema}/${t.physical.name}/enrichment`),title:r?void 0:`Untracked — excluded from LLM context`,children:[r?(0,z.jsx)(`span`,{className:`enrich-dot ${n}`}):(0,z.jsx)(gi,{size:10,style:{color:`var(--amber-500)`,flex:`none`}}),(0,z.jsx)(`span`,{className:`row-name mono`,children:t.physical.name}),(0,z.jsxs)(`span`,{className:`row-meta`,children:[t.physical.columns.length,` cols`]})]},t.physical.id)})})})]})},t)),v.length===0&&(0,z.jsx)(`div`,{className:`muted tiny`,style:{padding:`16px`,textAlign:`center`},children:f===`untracked`?`No untracked tables`:u?`No tables match this filter`:`No tables match your search`})]})]}),k?(0,z.jsx)(Nt,{}):(0,z.jsx)(`main`,{className:`main-pane`,children:(0,z.jsx)(`div`,{className:`main-body`,style:{display:`flex`,alignItems:`center`,justifyContent:`center`},children:(0,z.jsxs)(`div`,{style:{textAlign:`center`,color:`var(--ink-400)`},children:[(0,z.jsx)(Pi,{size:24,style:{margin:`0 auto 8px`}}),(0,z.jsx)(`p`,{style:{fontSize:13},children:`Select a table to start enriching`})]})})})]})}function gm({status:e}){return(0,z.jsxs)(`div`,{className:`status-banner ${e.kind}`,children:[e.kind===`loading`&&(0,z.jsx)(xi,{size:14,className:`animate-spin`}),e.kind===`success`&&(0,z.jsx)(V,{size:14}),e.kind===`error`&&(0,z.jsx)(pi,{size:14}),(0,z.jsx)(`span`,{children:e.text})]})}function _m({status:e}){return(0,z.jsx)(`div`,{className:`inline-status ${e.kind}`,children:e.text})}function vm(){let{selectedTable:e,selectedDraft:t,dirty:n,saveStatus:r,saveSelectedTable:a,resetSelectedDraft:o,busy:s}=yr();if(!e||!t)return null;let c=e,l=t.description||t.aliases&&t.aliases.length>0,u=Object.values(t.columns??{}).every(e=>e.description);return(0,z.jsxs)(`main`,{className:`main-pane`,children:[(0,z.jsxs)(`div`,{className:`main-hd`,children:[(0,z.jsxs)(`div`,{className:`main-title`,children:[(0,z.jsxs)(`h1`,{children:[(0,z.jsx)(`span`,{className:`enrich-dot ${l&&u?`enriched`:l?`partial`:`none`}`,style:{marginRight:8}}),c.physical.schema,`.`,c.physical.name]}),(0,z.jsxs)(`div`,{className:`main-sub`,children:[c.physical.columns.length,` columns`,c.physical.relationships&&c.physical.relationships.length>0?` · ${c.physical.relationships.length} relationships`:``,c.missingColumnIds.length>0?` · ${c.missingColumnIds.length} missing`:``]})]}),(0,z.jsxs)(`div`,{className:`main-actions`,children:[(0,z.jsxs)(`button`,{type:`button`,className:`btn`,onClick:o,disabled:!n||s.has(`save`),children:[(0,z.jsx)(ki,{size:14}),` Revert`]}),(0,z.jsxs)(`button`,{type:`button`,className:`btn primary`,onClick:()=>void a(),disabled:!n||s.has(`save`),children:[s.has(`save`)?(0,z.jsx)(xi,{size:14,className:`animate-spin`}):(0,z.jsx)(Ai,{size:14}),`Save`]})]})]}),r&&(0,z.jsx)(gm,{status:r}),(0,z.jsxs)(`div`,{className:`sub-tabs`,children:[(0,z.jsx)(Dn,{to:`enrichment`,className:({isActive:e})=>`sub-tab ${e?`active`:``}`,children:`Enrichment`}),(0,z.jsx)(Dn,{to:`schema`,className:({isActive:e})=>`sub-tab ${e?`active`:``}`,children:`Schema`}),(0,z.jsx)(Dn,{to:`sensitivity`,className:({isActive:e})=>`sub-tab ${e?`active`:``}`,children:`Sensitivity`})]}),(0,z.jsx)(`div`,{className:`main-body`,children:(0,z.jsx)(Nt,{})})]})}var ym=Qr(`inline-flex min-h-6 max-w-full items-center rounded-md px-2 py-0.5 text-xs font-medium`,{variants:{variant:{default:`bg-primary text-primary-foreground`,secondary:`bg-secondary text-secondary-foreground`,warning:`bg-warning text-warning-foreground dark:bg-amber-500/15 dark:text-amber-400`,danger:`bg-destructive text-destructive-foreground`,outline:`border border-border bg-background text-muted-foreground`}},defaultVariants:{variant:`default`}});function Q({className:e,variant:t,...n}){return(0,z.jsx)(`span`,{className:Z(ym({variant:t}),e),...n})}function $({label:e,description:t,children:n,className:r}){return(0,z.jsxs)(`label`,{className:Z(`grid gap-1.5`,r),children:[(0,z.jsx)(`span`,{className:`text-xs font-semibold text-muted-foreground`,children:e}),n,t?(0,z.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:t}):null]})}function bm(e){return e?.join(`, `)??``}function xm({value:e,onChange:t}){let[n,r]=(0,x.useState)(null);return(0,z.jsx)(Sp,{value:n??bm(e),onChange:e=>r(e.target.value),onFocus:()=>r(bm(e)),onBlur:()=>{t(mr(n??bm(e))),r(null)}})}function Sm({className:e,...t}){return(0,z.jsx)(`textarea`,{"data-slot":`textarea`,className:Z(`min-h-24 w-full rounded-md border border-input bg-background px-3 py-2 text-sm outline-none transition-colors placeholder:text-muted-foreground focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50`,e),...t})}function Cm(){let{workspace:e,selectedTable:t,selectedDraft:n,updateTableDraft:r,updateColumnDraft:a,requestSuggestion:o,suggestingKey:s}=yr();if(!t||!n||!e)return null;let c=e.aiConfigured,l=t,u=n,d=l.physical.id;return(0,z.jsxs)(`div`,{className:`stack`,style:{padding:`var(--pad-y) var(--pad-x)`},children:[(0,z.jsxs)(`section`,{className:`card`,children:[(0,z.jsx)(`div`,{className:`card-hd`,children:(0,z.jsx)(`h3`,{children:`Table Enrichment`})}),(0,z.jsx)(`div`,{className:`card-bd`,children:(0,z.jsxs)(`div`,{style:{display:`grid`,gap:16},children:[(0,z.jsx)(wm,{aiConfigured:c,label:`Description`,onSuggest:()=>o({scope:`table`,tableId:d,field:`description`},`table description`),suggesting:s===`table:${d}:description`,children:(0,z.jsx)(Sm,{value:u.description,onChange:e=>r(d,t=>({...t,description:e.target.value}))})}),(0,z.jsxs)(`div`,{style:{display:`grid`,gap:16,gridTemplateColumns:`1fr 1fr`},children:[(0,z.jsx)(wm,{aiConfigured:c,label:`Aliases`,onSuggest:()=>o({scope:`table`,tableId:d,field:`aliases`},`table aliases`),suggesting:s===`table:${d}:aliases`,children:(0,z.jsx)(xm,{value:u.aliases,onChange:e=>r(d,t=>({...t,aliases:e}))})}),(0,z.jsx)(wm,{aiConfigured:c,label:`Primary entity`,onSuggest:()=>o({scope:`table`,tableId:d,field:`primaryEntity`},`primary entity`),suggesting:s===`table:${d}:primaryEntity`,children:(0,z.jsx)(Sp,{value:u.primaryEntity??``,onChange:e=>r(d,t=>({...t,primaryEntity:e.target.value.trim()||void 0}))})})]}),(0,z.jsxs)(`div`,{style:{display:`grid`,gap:16,gridTemplateColumns:`1fr 220px`},children:[(0,z.jsx)($,{label:`Tags`,description:`Comma-separated labels used for browsing and filtering.`,children:(0,z.jsx)(xm,{value:u.tags,onChange:e=>r(d,t=>({...t,tags:e}))})}),(0,z.jsx)(Tm,{label:`Table sensitivity override`,value:u.sensitive,onChange:e=>r(d,t=>({...t,sensitive:e}))})]})]})})]}),(0,z.jsxs)(`section`,{className:`card`,children:[(0,z.jsx)(`div`,{className:`card-hd`,children:(0,z.jsx)(`h3`,{children:`Common Query Language`})}),(0,z.jsx)(`div`,{className:`card-bd`,children:(0,z.jsx)(wm,{aiConfigured:c,label:`Business vocabulary`,onSuggest:()=>o({scope:`table`,tableId:d,field:`commonQueryLanguage`},`common query language`),suggesting:s===`table:${d}:commonQueryLanguage`,children:(0,z.jsx)(Sm,{className:`min-h-36`,value:u.commonQueryLanguage??``,onChange:e=>r(d,t=>({...t,commonQueryLanguage:e.target.value}))})})})]}),(0,z.jsxs)(`section`,{className:`card`,children:[(0,z.jsx)(`div`,{className:`card-hd`,children:(0,z.jsx)(`h3`,{children:`Example Questions`})}),(0,z.jsx)(`div`,{className:`card-bd`,children:(0,z.jsx)($,{label:`Questions`,children:(0,z.jsx)(Sm,{className:`min-h-32`,value:u.exampleQuestions??``,onChange:e=>r(d,t=>({...t,exampleQuestions:e.target.value}))})})})]}),(0,z.jsxs)(`section`,{className:`card`,children:[(0,z.jsxs)(`div`,{className:`card-hd`,children:[(0,z.jsx)(`h3`,{children:`Columns`}),l.missingColumnIds.length>0&&(0,z.jsxs)(Q,{variant:l.missingColumnIds.length>0?`warning`:`secondary`,children:[l.missingColumnIds.length,` missing`]})]}),(0,z.jsx)(`div`,{className:`card-bd`,children:(0,z.jsx)(`div`,{style:{display:`grid`,gap:12},children:l.physical.columns.map(e=>{let t=u.columns[e.id]??{};return(0,z.jsxs)(`section`,{className:`column-row`,children:[(0,z.jsx)(`div`,{style:{display:`flex`,flexWrap:`wrap`,alignItems:`center`,justifyContent:`space-between`,gap:8},children:(0,z.jsxs)(`div`,{children:[(0,z.jsxs)(`div`,{style:{display:`flex`,flexWrap:`wrap`,alignItems:`center`,gap:8},children:[(0,z.jsx)(`h4`,{style:{fontSize:13,fontWeight:600},children:e.name}),(0,z.jsx)(Q,{variant:`outline`,children:e.type}),e.primaryKey&&(0,z.jsx)(Q,{variant:`secondary`,children:`PK`}),e.nullable&&(0,z.jsx)(Q,{variant:`outline`,children:`nullable`}),(e.sensitive||t.sensitive)&&(0,z.jsx)(Q,{variant:`danger`,children:`sensitive`})]}),(0,z.jsx)(`p`,{className:`muted tiny`,style:{marginTop:4,wordBreak:`break-all`},children:e.id})]})}),(0,z.jsxs)(`div`,{style:{marginTop:12,display:`grid`,gap:12},children:[(0,z.jsx)(wm,{aiConfigured:c,label:`Description`,onSuggest:()=>o({scope:`column`,tableId:d,columnId:e.id,field:`description`},`${e.name} description`),suggesting:s===`column:${d}:${e.id}:description`,children:(0,z.jsx)(Sm,{value:t.description??``,onChange:t=>a(d,e.id,e=>({...e,description:t.target.value}))})}),(0,z.jsxs)(`div`,{style:{display:`grid`,gap:12,gridTemplateColumns:`1fr 1fr 1fr`},children:[(0,z.jsx)(wm,{aiConfigured:c,label:`Aliases`,onSuggest:()=>o({scope:`column`,tableId:d,columnId:e.id,field:`aliases`},`${e.name} aliases`),suggesting:s===`column:${d}:${e.id}:aliases`,children:(0,z.jsx)(xm,{value:t.aliases,onChange:t=>a(d,e.id,e=>({...e,aliases:t}))})}),(0,z.jsx)($,{label:`Enum notes`,children:(0,z.jsx)(xm,{value:t.enum,onChange:t=>a(d,e.id,e=>({...e,enum:t}))})}),(0,z.jsx)(Tm,{label:`Sensitivity override`,value:t.sensitive,onChange:t=>a(d,e.id,e=>({...e,sensitive:t}))})]})]})]},e.id)})})})]}),(0,z.jsxs)(`section`,{className:`card`,children:[(0,z.jsx)(`div`,{className:`card-hd`,children:(0,z.jsx)(`h3`,{children:`Relationships`})}),(0,z.jsx)(`div`,{className:`card-bd`,children:l.physical.relationships&&l.physical.relationships.length>0?(0,z.jsx)(`div`,{style:{display:`grid`,gap:8},children:l.physical.relationships.map((e,t)=>(0,z.jsxs)(`div`,{className:`relationship-row`,children:[(0,z.jsx)(`span`,{style:{wordBreak:`break-all`},children:e.from}),(0,z.jsx)(ui,{size:14,style:{color:`var(--ink-400)`,flexShrink:0}}),(0,z.jsx)(`span`,{style:{wordBreak:`break-all`},children:e.to})]},`${e.from}-${e.to}-${t}`))}):(0,z.jsx)(`p`,{className:`muted`,style:{fontSize:13},children:`No relationships recorded for this table.`})})]})]})}function wm({aiConfigured:e,children:t,label:n,onSuggest:r,suggesting:a}){return(0,z.jsxs)(`div`,{style:{display:`grid`,gap:6},children:[(0,z.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,justifyContent:`space-between`,gap:8},children:[(0,z.jsx)(`span`,{className:`muted`,style:{fontSize:12,fontWeight:600,textTransform:`uppercase`,letterSpacing:`0.04em`},children:n}),(0,z.jsxs)(`button`,{type:`button`,className:`suggest-link`,disabled:!e||a,onClick:()=>void r(),title:e?`Suggest with configured AI model`:`Configure an AI key to enable suggestions`,children:[a?(0,z.jsx)(xi,{size:12,className:`animate-spin`}):(0,z.jsx)(Pi,{size:12}),`Suggest`]})]}),t]})}function Tm({label:e,onChange:t,value:n}){return(0,z.jsxs)(`label`,{style:{display:`grid`,gap:6},children:[(0,z.jsx)(`span`,{className:`muted`,style:{fontSize:12,fontWeight:600,textTransform:`uppercase`,letterSpacing:`0.04em`},children:e}),(0,z.jsxs)(`select`,{className:`h-9 w-full rounded-md border border-input bg-background px-3 text-sm outline-none focus-visible:ring-2 focus-visible:ring-ring`,value:n===void 0?`inherit`:n?`true`:`false`,onChange:e=>{e.target.value===`inherit`?t(void 0):t(e.target.value===`true`)},children:[(0,z.jsx)(`option`,{value:`inherit`,children:`Inherit physical metadata`}),(0,z.jsx)(`option`,{value:`true`,children:`Sensitive`}),(0,z.jsx)(`option`,{value:`false`,children:`Not sensitive`})]})]})}function Em(){let{selectedTable:e}=yr();if(!e)return null;let t=e;return(0,z.jsxs)(`div`,{className:`stack`,style:{padding:`var(--pad-y) var(--pad-x)`},children:[(0,z.jsxs)(`section`,{className:`card`,children:[(0,z.jsx)(`div`,{className:`card-hd`,children:(0,z.jsx)(`h3`,{children:`Column Details`})}),(0,z.jsx)(`div`,{className:`card-bd tight`,children:(0,z.jsxs)(`table`,{className:`tbl`,children:[(0,z.jsx)(`thead`,{children:(0,z.jsxs)(`tr`,{children:[(0,z.jsx)(`th`,{children:`Name`}),(0,z.jsx)(`th`,{children:`Type`}),(0,z.jsx)(`th`,{children:`Nullable`}),(0,z.jsx)(`th`,{children:`PK`}),(0,z.jsx)(`th`,{children:`Default`}),(0,z.jsx)(`th`,{children:`Sensitive`})]})}),(0,z.jsx)(`tbody`,{children:t.physical.columns.map(e=>(0,z.jsxs)(`tr`,{children:[(0,z.jsx)(`td`,{children:(0,z.jsx)(`span`,{className:`mono`,children:e.name})}),(0,z.jsx)(`td`,{children:(0,z.jsx)(Q,{variant:`outline`,children:e.type})}),(0,z.jsx)(`td`,{children:e.nullable?`Yes`:`No`}),(0,z.jsx)(`td`,{children:e.primaryKey?(0,z.jsx)(Q,{variant:`secondary`,children:`PK`}):`—`}),(0,z.jsx)(`td`,{className:`muted tiny`,children:e.default??`—`}),(0,z.jsx)(`td`,{children:e.sensitive?(0,z.jsx)(Q,{variant:`danger`,children:`sensitive`}):`—`})]},e.id))})]})})]}),t.physical.relationships&&t.physical.relationships.length>0&&(0,z.jsxs)(`section`,{className:`card`,children:[(0,z.jsx)(`div`,{className:`card-hd`,children:(0,z.jsx)(`h3`,{children:`Relationships`})}),(0,z.jsx)(`div`,{className:`card-bd`,children:(0,z.jsx)(`div`,{style:{display:`grid`,gap:8},children:t.physical.relationships.map((e,t)=>(0,z.jsxs)(`div`,{className:`relationship-row`,children:[(0,z.jsx)(`span`,{style:{wordBreak:`break-all`},children:e.from}),(0,z.jsx)(ui,{size:14,style:{color:`var(--ink-400)`,flexShrink:0}}),(0,z.jsx)(`span`,{style:{wordBreak:`break-all`},children:e.to})]},`${e.from}-${e.to}-${t}`))})})]})]})}function Dm(){let{selectedTable:e,selectedDraft:t,updateColumnDraft:n,updateTableDraft:r}=yr();if(!e||!t)return null;let a=e,o=t,s=a.physical.id;return(0,z.jsxs)(`div`,{className:`stack`,style:{padding:`var(--pad-y) var(--pad-x)`},children:[(0,z.jsxs)(`section`,{className:`card`,children:[(0,z.jsx)(`div`,{className:`card-hd`,children:(0,z.jsx)(`h3`,{children:`LLM tracking`})}),(0,z.jsxs)(`div`,{className:`card-bd`,children:[(0,z.jsx)(`p`,{className:`muted`,style:{fontSize:12,marginBottom:10},children:`Untracked tables are excluded from LLM prompts and RAG indexing. They remain in the schema and are still visible here.`}),(0,z.jsxs)(`label`,{style:{display:`grid`,gap:6},children:[(0,z.jsx)(`span`,{className:`muted`,style:{fontSize:12,fontWeight:600,textTransform:`uppercase`,letterSpacing:`0.04em`},children:`Status`}),(0,z.jsxs)(`select`,{className:`h-9 w-full rounded-md border border-input bg-background px-3 text-sm outline-none focus-visible:ring-2 focus-visible:ring-ring`,value:o.tracked===!1?`false`:`true`,onChange:e=>{let t=e.target.value===`false`?!1:void 0;r(s,e=>({...e,tracked:t}))},children:[(0,z.jsx)(`option`,{value:`true`,children:`Tracked — included in LLM context`}),(0,z.jsx)(`option`,{value:`false`,children:`Untracked — excluded from LLM context`})]})]})]})]}),(0,z.jsxs)(`section`,{className:`card`,children:[(0,z.jsx)(`div`,{className:`card-hd`,children:(0,z.jsx)(`h3`,{children:`Table-level sensitivity`})}),(0,z.jsx)(`div`,{className:`card-bd`,children:(0,z.jsxs)(`label`,{style:{display:`grid`,gap:6},children:[(0,z.jsx)(`span`,{className:`muted`,style:{fontSize:12,fontWeight:600,textTransform:`uppercase`,letterSpacing:`0.04em`},children:`Override`}),(0,z.jsxs)(`select`,{className:`h-9 w-full rounded-md border border-input bg-background px-3 text-sm outline-none focus-visible:ring-2 focus-visible:ring-ring`,value:o.sensitive===void 0?`inherit`:o.sensitive?`true`:`false`,onChange:e=>{let t=e.target.value===`inherit`?void 0:e.target.value===`true`;r(s,e=>({...e,sensitive:t}))},children:[(0,z.jsx)(`option`,{value:`inherit`,children:`Inherit physical metadata`}),(0,z.jsx)(`option`,{value:`true`,children:`Sensitive`}),(0,z.jsx)(`option`,{value:`false`,children:`Not sensitive`})]})]})})]}),(0,z.jsxs)(`section`,{className:`card`,children:[(0,z.jsx)(`div`,{className:`card-hd`,children:(0,z.jsx)(`h3`,{children:`Column sensitivity`})}),(0,z.jsx)(`div`,{className:`card-bd tight`,children:(0,z.jsxs)(`table`,{className:`tbl`,children:[(0,z.jsx)(`thead`,{children:(0,z.jsxs)(`tr`,{children:[(0,z.jsx)(`th`,{children:`Column`}),(0,z.jsx)(`th`,{children:`Physical`}),(0,z.jsx)(`th`,{children:`Override`}),(0,z.jsx)(`th`,{children:`Effective`})]})}),(0,z.jsx)(`tbody`,{children:a.physical.columns.map(e=>{let t=o.columns[e.id]??{},r=t.sensitive===void 0?e.sensitive:t.sensitive;return(0,z.jsxs)(`tr`,{children:[(0,z.jsx)(`td`,{children:(0,z.jsx)(`span`,{className:`mono`,children:e.name})}),(0,z.jsx)(`td`,{children:e.sensitive?(0,z.jsx)(Q,{variant:`danger`,children:`sensitive`}):(0,z.jsx)(`span`,{className:`muted`,children:`—`})}),(0,z.jsx)(`td`,{children:(0,z.jsxs)(`select`,{style:{fontSize:12,padding:`2px 6px`,borderRadius:4,border:`1px solid var(--border)`},value:t.sensitive===void 0?`inherit`:t.sensitive?`true`:`false`,onChange:t=>{let r=t.target.value===`inherit`?void 0:t.target.value===`true`;n(s,e.id,e=>({...e,sensitive:r}))},children:[(0,z.jsx)(`option`,{value:`inherit`,children:`Inherit`}),(0,z.jsx)(`option`,{value:`true`,children:`Sensitive`}),(0,z.jsx)(`option`,{value:`false`,children:`Not sensitive`})]})}),(0,z.jsx)(`td`,{children:r?(0,z.jsx)(Q,{variant:`danger`,children:`sensitive`}):(0,z.jsx)(`span`,{className:`muted`,children:`—`})})]},e.id)})})]})})]})]})}var Om=`concept:`;function km(e){return e.startsWith(Om)?e.slice(8):e}function Am(e){let t=e.trim();return t?t.startsWith(Om)?t:Om+t:``}function jm(e){return JSON.parse(JSON.stringify(e))}function Mm(){let{workspace:e,tables:t,handleSaveConcepts:n,saveStatus:r,busy:a}=yr(),o=(0,x.useMemo)(()=>{if(!t.length)return[];let e=[];for(let n of t){e.push({id:n.physical.id,label:`${n.physical.schema}.${n.physical.name}`,kind:`table`});for(let t of n.physical.columns)e.push({id:t.id,label:`${n.physical.schema}.${n.physical.name} → ${t.name}`,kind:`column`})}return e},[t]);if(!e)return null;let s=e.concepts.map(e=>e.id).join(`,`);return(0,z.jsx)(`main`,{className:`main-pane`,children:(0,z.jsx)(Pm,{concepts:e.concepts,linkOptions:o,onSave:n,saveStatus:r,busy:a},s)})}function Nm(e,t){switch(t.type){case`set_selectedIndex`:return{...e,selectedIndex:t.payload};case`set_conceptSearch`:return{...e,conceptSearch:t.payload};case`merge_addDraft`:return{...e,addDraft:{...e.addDraft,...t.payload}};case`update_concept`:return{...e,draft:e.draft.map((e,n)=>n===t.index?t.updater(jm(e)):e)};case`remove_concept`:{let n=e.draft.filter((e,n)=>n!==t.index),r=e.selectedIndex;return e.selectedIndex===t.index?r=null:e.selectedIndex!==null&&e.selectedIndex>t.index&&(r=e.selectedIndex-1),{...e,draft:n,selectedIndex:r}}case`commit_add`:return{...e,draft:[...e.draft,t.concept],selectedIndex:t.newIndex,addDraft:{},addOpen:!1};case`open_add_form`:return{...e,addOpen:!0,selectedIndex:null};case`select_concept`:return{...e,selectedIndex:t.index,addOpen:!1};case`cancel_add`:return{...e,addOpen:!1,addDraft:{}}}}function Pm({concepts:e,linkOptions:t,onSave:n,saveStatus:r,busy:a}){let[o,s]=(0,x.useReducer)(Nm,null,()=>({draft:jm(e),selectedIndex:null,addOpen:!1,addDraft:{},conceptSearch:``})),{draft:c,selectedIndex:l,addOpen:u,addDraft:d,conceptSearch:f}=o,p=JSON.stringify(c)!==JSON.stringify(e),m=(0,x.useMemo)(()=>{if(!f)return c.map((e,t)=>({concept:e,index:t}));let e=f.toLowerCase();return c.flatMap((t,n)=>t.label.toLowerCase().includes(e)||t.id.toLowerCase().includes(e)||t.synonyms?.some(t=>t.toLowerCase().includes(e))?[{concept:t,index:n}]:[])},[c,f]),h=l===null?null:c[l];function g(e,t){s({type:`update_concept`,index:e,updater:t})}function _(e){s({type:`remove_concept`,index:e})}function v(){let e=Am(d.id??``);!e||!d.label?.trim()||s({type:`commit_add`,concept:{id:e,label:d.label.trim(),...d.synonyms?.length?{synonyms:d.synonyms}:{},...d.links?.length?{links:d.links}:{},...d.description?.trim()?{description:d.description.trim()}:{}},newIndex:c.length})}return(0,z.jsxs)(z.Fragment,{children:[(0,z.jsxs)(`div`,{className:`main-hd`,children:[(0,z.jsxs)(`div`,{className:`main-title`,children:[(0,z.jsxs)(`h1`,{children:[(0,z.jsx)(vi,{size:18,style:{display:`inline`,marginRight:8}}),`Concepts`]}),(0,z.jsx)(`div`,{className:`main-sub`,children:`Cross-table domain vocabulary for NL→SQL grounding`})]}),(0,z.jsxs)(`div`,{className:`main-actions`,children:[(0,z.jsxs)(`button`,{type:`button`,className:`btn`,onClick:()=>{setDraft(jm(e)),setSelectedIndex(null)},disabled:!p||a.has(`save-concepts`),children:[(0,z.jsx)(ki,{size:14}),` Revert`]}),(0,z.jsxs)(`button`,{type:`button`,className:`btn primary`,onClick:()=>void n(c),disabled:!p||a.has(`save-concepts`),children:[a.has(`save-concepts`)?(0,z.jsx)(xi,{size:14,className:`animate-spin`}):(0,z.jsx)(Ai,{size:14}),`Save`]})]})]}),r&&(0,z.jsx)(gm,{status:r}),(0,z.jsxs)(`div`,{style:{display:`grid`,gridTemplateColumns:`280px 1fr`,flex:1,minHeight:0,overflow:`hidden`},children:[(0,z.jsxs)(`div`,{className:`sub-rail`,style:{borderRight:`1px solid var(--border)`},children:[(0,z.jsxs)(`div`,{className:`sub-rail-hd`,children:[(0,z.jsx)(`h2`,{children:`Concepts`}),(0,z.jsx)(`span`,{className:`muted tiny`,children:c.length})]}),(0,z.jsxs)(`div`,{className:`sub-rail-search`,children:[(0,z.jsx)(ji,{size:13}),(0,z.jsx)(`input`,{type:`text`,"aria-label":`Search concepts`,placeholder:`Search concepts…`,value:f,onChange:e=>s({type:`set_conceptSearch`,payload:e.target.value})})]}),(0,z.jsx)(`div`,{style:{padding:`6px 8px`,borderBottom:`1px solid var(--border)`},children:(0,z.jsxs)(`button`,{type:`button`,className:`btn sm`,style:{width:`100%`,justifyContent:`center`},onClick:()=>s({type:`open_add_form`}),children:[(0,z.jsx)(Di,{size:12}),` Add concept`]})}),(0,z.jsxs)(`div`,{className:`sub-rail-list`,children:[m.map(({concept:e,index:t})=>(0,z.jsxs)(`button`,{type:`button`,className:`sub-rail-row ${l===t?`active`:``}`,onClick:()=>s({type:`select_concept`,index:t}),children:[(0,z.jsx)(vi,{size:12,style:{flexShrink:0,color:`var(--ink-400)`}}),(0,z.jsx)(`span`,{className:`row-name`,children:e.label}),(0,z.jsxs)(`span`,{className:`row-meta`,children:[e.links?.length??0,` links`]})]},e.id)),m.length===0&&(0,z.jsx)(`div`,{className:`muted tiny`,style:{padding:`16px`,textAlign:`center`},children:f?`No concepts match your search`:`No concepts yet`})]})]}),(0,z.jsx)(`div`,{style:{overflow:`auto`,padding:`var(--pad-y) var(--pad-x)`},children:u?(0,z.jsx)(`div`,{className:`stack`,children:(0,z.jsxs)(`section`,{className:`card`,children:[(0,z.jsx)(`div`,{className:`card-hd`,children:(0,z.jsx)(`h3`,{children:`New Concept`})}),(0,z.jsx)(`div`,{className:`card-bd`,children:(0,z.jsxs)(`div`,{style:{display:`grid`,gap:12},children:[(0,z.jsxs)(`div`,{style:{display:`grid`,gap:12,gridTemplateColumns:`1fr 1fr`},children:[(0,z.jsx)($,{label:`ID`,description:`Unique slug (concept: prefix added automatically)`,children:(0,z.jsx)(Im,{value:d.id??``,onChange:e=>s({type:`merge_addDraft`,payload:{id:e}}),placeholder:`revenue`})}),(0,z.jsx)($,{label:`Label`,description:`Human-readable name, e.g. "Revenue"`,children:(0,z.jsx)(Sp,{value:d.label??``,placeholder:`Revenue`,onChange:e=>s({type:`merge_addDraft`,payload:{label:e.target.value}})})})]}),(0,z.jsx)($,{label:`Synonyms`,description:`Comma-separated terms users might say`,children:(0,z.jsx)(xm,{value:d.synonyms,onChange:e=>s({type:`merge_addDraft`,payload:{synonyms:e}})})}),(0,z.jsx)($,{label:`Links`,description:`Tables or columns this concept maps to`,children:(0,z.jsx)(Lm,{value:d.links??[],onChange:e=>s({type:`merge_addDraft`,payload:{links:e}}),options:t})}),(0,z.jsx)($,{label:`Description`,description:`How this concept is computed or what it means`,children:(0,z.jsx)(Sm,{value:d.description??``,placeholder:`Sum of orders.total_amount where status = 'paid', expressed in cents.`,onChange:e=>s({type:`merge_addDraft`,payload:{description:e.target.value}})})}),(0,z.jsxs)(`div`,{style:{display:`flex`,gap:8,justifyContent:`flex-end`},children:[(0,z.jsx)(`button`,{type:`button`,className:`btn`,onClick:()=>s({type:`cancel_add`}),children:`Cancel`}),(0,z.jsx)(`button`,{type:`button`,className:`btn primary`,onClick:v,disabled:!d.id?.trim()||!d.label?.trim(),children:`Add concept`})]})]})})]})}):h&&l!==null?(0,z.jsx)(Fm,{concept:h,linkOptions:t,onChange:e=>g(l,e),onRemove:()=>_(l)}):(0,z.jsx)(`div`,{style:{display:`flex`,alignItems:`center`,justifyContent:`center`,height:`100%`},children:(0,z.jsxs)(`div`,{style:{textAlign:`center`,color:`var(--ink-400)`},children:[(0,z.jsx)(vi,{size:24,style:{margin:`0 auto 8px`}}),(0,z.jsx)(`p`,{style:{fontSize:13},children:c.length===0?`Click "Add concept" to create your first one`:`Select a concept to edit`})]})})})]})]})}function Fm({concept:e,linkOptions:t,onChange:n,onRemove:r}){return(0,z.jsx)(`div`,{className:`stack`,children:(0,z.jsxs)(`section`,{className:`card`,children:[(0,z.jsxs)(`div`,{className:`card-hd`,children:[(0,z.jsxs)(`div`,{style:{display:`flex`,flexWrap:`wrap`,alignItems:`center`,gap:8},children:[(0,z.jsx)(`h3`,{children:e.label}),(0,z.jsx)(Q,{variant:`outline`,children:e.id})]}),(0,z.jsx)(`button`,{type:`button`,className:`btn ghost sm`,onClick:r,title:`Remove concept`,style:{color:`var(--red-600)`},children:`Remove`})]}),(0,z.jsx)(`div`,{className:`card-bd`,children:(0,z.jsxs)(`div`,{style:{display:`grid`,gap:12},children:[(0,z.jsxs)(`div`,{style:{display:`grid`,gap:12,gridTemplateColumns:`1fr 1fr`},children:[(0,z.jsx)($,{label:`ID`,description:`Unique slug (concept: prefix added automatically)`,children:(0,z.jsx)(Im,{value:e.id,onChange:e=>n(t=>({...t,id:e}))})}),(0,z.jsx)($,{label:`Label`,description:`Human-readable name`,children:(0,z.jsx)(Sp,{value:e.label,onChange:e=>n(t=>({...t,label:e.target.value}))})})]}),(0,z.jsx)($,{label:`Synonyms`,description:`Comma-separated alternative terms`,children:(0,z.jsx)(xm,{value:e.synonyms,onChange:e=>n(t=>({...t,synonyms:e.length?e:void 0}))})}),(0,z.jsx)($,{label:`Links`,description:`Tables or columns this concept maps to`,children:(0,z.jsx)(Lm,{value:e.links??[],onChange:e=>n(t=>({...t,links:e.length?e:void 0})),options:t})}),(0,z.jsx)($,{label:`Description`,description:`How this concept is computed or what it means`,children:(0,z.jsx)(Sm,{value:e.description??``,onChange:e=>n(t=>({...t,description:e.target.value||void 0}))})})]})})]})})}function Im({value:e,onChange:t,placeholder:n}){let r=km(e);return(0,z.jsxs)(`div`,{className:`concept-id-input`,children:[(0,z.jsx)(`span`,{className:`concept-id-prefix`,children:`concept:`}),(0,z.jsx)(`input`,{type:`text`,"aria-label":`Concept ID`,className:`concept-id-slug`,value:r,placeholder:n??`my-concept`,onChange:e=>{t(Am(e.target.value.replace(/\s+/g,`-`).toLowerCase()))}})]})}function Lm({value:e,onChange:t,options:n}){let[r,a]=(0,x.useState)(``),[o,s]=(0,x.useState)(!1),[c,l]=(0,x.useState)(0),u=(0,x.useRef)(null),d=(0,x.useRef)(null),f=(0,x.useRef)(null);(0,x.useEffect)(()=>{function e(e){u.current&&!u.current.contains(e.target)&&s(!1)}return document.addEventListener(`mousedown`,e),()=>document.removeEventListener(`mousedown`,e)},[]);let p=(0,x.useMemo)(()=>new Set(e),[e]),m=(0,x.useMemo)(()=>{if(!r)return n.filter(e=>!p.has(e.id));let e=r.toLowerCase();return n.filter(t=>!p.has(t.id)&&(t.label.toLowerCase().includes(e)||t.id.toLowerCase().includes(e)))},[n,r,p]),h=m.slice(0,30),g=(0,x.useCallback)(n=>{t([...e,n]),a(``),d.current?.focus()},[e,t]),_=(0,x.useCallback)(n=>{t(e.filter(e=>e!==n))},[e,t]);(0,x.useEffect)(()=>{!o||!f.current||f.current.querySelectorAll(`[data-link-item]`)[c]?.scrollIntoView({block:`nearest`})},[c,o]);function v(e){if(!o){(e.key===`ArrowDown`||e.key===`ArrowUp`)&&(s(!0),e.preventDefault());return}switch(e.key){case`ArrowDown`:e.preventDefault(),l(e=>Math.min(e+1,h.length-1));break;case`ArrowUp`:e.preventDefault(),l(e=>Math.max(e-1,0));break;case`Enter`:e.preventDefault(),h[c]&&g(h[c].id);break;case`Escape`:e.preventDefault(),s(!1);break}}function y(e){return n.find(t=>t.id===e)?.label??e}function b(e){return n.find(t=>t.id===e)?.kind??(e.includes(`#`)?`column`:`table`)}return(0,z.jsxs)(`div`,{className:`links-input`,ref:u,children:[e.length>0&&(0,z.jsx)(`div`,{className:`links-chips`,children:e.map(e=>(0,z.jsxs)(`span`,{className:`links-chip ${b(e)}`,title:e,children:[(0,z.jsx)(Ii,{size:10}),(0,z.jsx)(`span`,{className:`links-chip-label`,children:y(e)}),(0,z.jsx)(`button`,{type:`button`,className:`links-chip-remove`,onMouseDown:t=>{t.preventDefault(),t.stopPropagation(),_(e)},title:`Remove`,children:(0,z.jsx)(Ri,{size:10})})]},e))}),(0,z.jsxs)(`div`,{className:`links-search`,children:[(0,z.jsx)(ji,{size:12}),(0,z.jsx)(`input`,{ref:d,type:`text`,"aria-label":`Search tables or columns`,className:`links-search-input`,placeholder:e.length?`Add another…`:`Search tables or columns…`,value:r,onChange:e=>{a(e.target.value),l(0)},onFocus:()=>s(!0),onKeyDown:v})]}),o&&h.length>0&&(0,z.jsxs)(`div`,{className:`links-dropdown`,ref:f,role:`listbox`,children:[h.map((e,t)=>(0,z.jsxs)(`button`,{type:`button`,"data-link-item":!0,role:`option`,"aria-selected":t===c,className:`links-dropdown-item ${t===c?`highlighted`:``}`,onMouseDown:t=>{t.preventDefault(),g(e.id)},onMouseEnter:()=>l(t),children:[(0,z.jsx)(`span`,{className:`links-kind-badge ${e.kind}`,children:e.kind===`table`?`T`:`C`}),(0,z.jsx)(`span`,{className:`links-dropdown-label`,children:e.label})]},e.id)),m.length>30&&(0,z.jsxs)(`div`,{className:`links-dropdown-more`,children:[m.length-30,` more — type to narrow`]})]})]})}function Rm(){let{workspace:e,tables:t,handleSaveTenantPolicy:n,handleSuggestTenantPolicy:r,saveStatus:a,busy:o}=yr(),[s,c]=(0,x.useState)(!1);if(!e)return null;let l=e.tenantPolicy??null;return l?s?(0,z.jsx)(`main`,{className:`main-pane`,children:(0,z.jsx)(Bm,{tenantPolicy:l,tables:t,busy:o,saveStatus:a,onSave:async(e,t)=>{let r=await n(e,t);return r&&c(!1),r},onCancel:()=>c(!1)},l.schemaId)}):(0,z.jsx)(`main`,{className:`main-pane`,children:(0,z.jsx)(zm,{tenantPolicy:l,onEdit:()=>c(!0)})}):(0,z.jsx)(`main`,{className:`main-pane`,children:(0,z.jsx)(Um,{tables:t,schemaId:e.schemaId,aiConfigured:e.aiConfigured,busy:o,onSave:n,onSuggest:r,saveStatus:a})})}function zm({tenantPolicy:e,onEdit:t}){let n=e.coverage.reduce((e,t)=>(e[t.classification]=(e[t.classification]??0)+1,e),{}),r=e.coverage.length,a=r-(n.unknown??0),o=r>0?Math.round(a/r*100):0;return(0,z.jsxs)(z.Fragment,{children:[(0,z.jsxs)(`div`,{className:`main-hd`,children:[(0,z.jsxs)(`div`,{className:`main-title`,children:[(0,z.jsxs)(`h1`,{children:[(0,z.jsx)(Ni,{size:18,style:{display:`inline`,marginRight:8}}),`Multi-Tenancy`]}),(0,z.jsxs)(`div`,{className:`main-sub`,children:[`Schema: `,e.schemaId,` · `,o,`% table coverage (`,a,`/`,r,`)`,(0,z.jsx)(Q,{variant:e.enforcement===`strict`?`danger`:`warning`,style:{marginLeft:8},children:e.enforcement})]})]}),(0,z.jsx)(`div`,{className:`main-actions`,children:(0,z.jsxs)(`button`,{type:`button`,className:`btn`,onClick:t,children:[(0,z.jsx)(Ti,{size:14}),` Edit`]})})]}),(0,z.jsx)(`div`,{className:`main-body`,children:(0,z.jsxs)(`div`,{className:`stack`,style:{padding:`var(--pad-y) var(--pad-x)`},children:[(0,z.jsx)(Gm,{title:`Coverage`,children:(0,z.jsxs)(`div`,{className:`grid-4`,children:[(0,z.jsx)(Km,{label:`Root`,count:n.root??0,variant:`primary`}),(0,z.jsx)(Km,{label:`Scoped`,count:n.scoped??0,variant:`primary`}),(0,z.jsx)(Km,{label:`Global`,count:n.global??0,variant:`secondary`}),(0,z.jsx)(Km,{label:`Unknown`,count:n.unknown??0,variant:`warning`})]})}),(0,z.jsx)(Gm,{title:`Tenant Roots`,count:e.roots.length,children:(0,z.jsx)(`div`,{style:{display:`grid`,gap:8},children:e.roots.map(e=>(0,z.jsxs)(`div`,{className:`card`,style:{padding:12},children:[(0,z.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,justifyContent:`space-between`,gap:8},children:[(0,z.jsxs)(`div`,{children:[(0,z.jsx)(`span`,{className:`mono`,style:{fontWeight:600,fontSize:13},children:e.id}),(0,z.jsx)(`span`,{className:`muted`,style:{marginLeft:8,fontSize:12},children:e.label})]}),(0,z.jsxs)(Q,{variant:`outline`,children:[`col: `,e.tenantIdColumn]})]}),e.parent&&(0,z.jsxs)(`p`,{className:`muted tiny`,style:{marginTop:4},children:[`Parent: `,(0,z.jsx)(`code`,{children:e.parent.root}),` via `,(0,z.jsx)(`code`,{children:e.parent.foreignKey})]})]},e.id))})}),e.hierarchy.length>0&&(0,z.jsx)(Gm,{title:`Hierarchy Edges`,count:e.hierarchy.length,children:(0,z.jsx)(`div`,{style:{display:`grid`,gap:8},children:e.hierarchy.map(e=>(0,z.jsxs)(`div`,{className:`card`,style:{padding:12,fontSize:13},children:[(0,z.jsx)(`code`,{children:e.parent}),(0,z.jsx)(`span`,{className:`muted`,style:{margin:`0 8px`},children:`→`}),(0,z.jsx)(`code`,{children:e.child}),(0,z.jsxs)(`div`,{className:`muted tiny`,style:{marginTop:4},children:[`FK: `,e.foreignKey]})]},`${e.parent}-${e.child}`))})}),e.scopedTables.length>0&&(0,z.jsx)(Gm,{title:`Scoped Tables`,count:e.scopedTables.length,defaultOpen:!1,children:(0,z.jsx)(`div`,{style:{display:`grid`,gap:8},children:e.scopedTables.map(e=>(0,z.jsxs)(`div`,{className:`card`,style:{padding:12},children:[(0,z.jsx)(`span`,{className:`mono`,style:{fontWeight:600,fontSize:13},children:e.id}),(0,z.jsx)(`div`,{style:{marginTop:4,display:`grid`,gap:4},children:e.scopeThrough.map((e,t)=>(0,z.jsxs)(`p`,{className:`muted tiny`,children:[`via `,(0,z.jsx)(Q,{variant:`outline`,children:e.root}),` `,`column`in e?(0,z.jsxs)(`span`,{children:[`column `,(0,z.jsx)(`code`,{children:e.column})]}):(0,z.jsxs)(`span`,{children:[`join `,e.join.map(e=>`${e.from} -> ${e.to}`).join(`, `)]})]},t))})]},e.id))})}),e.polymorphicTables.length>0&&(0,z.jsx)(Gm,{title:`Polymorphic Tables`,count:e.polymorphicTables.length,defaultOpen:!1,children:(0,z.jsx)(`div`,{style:{display:`grid`,gap:8},children:e.polymorphicTables.map(e=>(0,z.jsxs)(`div`,{className:`card`,style:{padding:12},children:[(0,z.jsx)(`span`,{className:`mono`,style:{fontWeight:600,fontSize:13},children:e.id}),(0,z.jsxs)(`p`,{className:`muted tiny`,style:{marginTop:4},children:[`Type: `,(0,z.jsx)(`code`,{children:e.typeColumn}),` · ID: `,(0,z.jsx)(`code`,{children:e.idColumn})]}),(0,z.jsx)(`div`,{style:{marginTop:4,display:`flex`,flexWrap:`wrap`,gap:4},children:Object.entries(e.mapping).map(([e,t])=>(0,z.jsxs)(Q,{variant:`outline`,children:[e,` → `,t]},e))})]},e.id))})}),e.globalTables.length>0&&(0,z.jsx)(Gm,{title:`Global Tables`,count:e.globalTables.length,defaultOpen:!1,children:(0,z.jsx)(`div`,{style:{display:`flex`,flexWrap:`wrap`,gap:8},children:e.globalTables.map(e=>(0,z.jsx)(Q,{variant:`secondary`,children:e},e))})}),(0,z.jsx)(Gm,{title:`Table Coverage`,count:e.coverage.length,defaultOpen:!1,children:(0,z.jsx)(`div`,{className:`card`,children:(0,z.jsx)(`div`,{className:`card-bd tight`,children:(0,z.jsxs)(`table`,{className:`tbl`,children:[(0,z.jsx)(`thead`,{children:(0,z.jsxs)(`tr`,{children:[(0,z.jsx)(`th`,{children:`Table`}),(0,z.jsx)(`th`,{children:`Classification`}),(0,z.jsx)(`th`,{children:`Scope Roots`})]})}),(0,z.jsx)(`tbody`,{children:e.coverage.map(e=>(0,z.jsxs)(`tr`,{children:[(0,z.jsx)(`td`,{children:(0,z.jsx)(`span`,{className:`mono`,children:e.tableId})}),(0,z.jsx)(`td`,{children:(0,z.jsx)(Q,{variant:e.classification===`unknown`?`warning`:e.classification===`global`?`secondary`:`outline`,children:e.classification})}),(0,z.jsx)(`td`,{className:`muted tiny`,children:e.scopeRoots?.join(`, `)??`—`})]},e.tableId))})]})})})}),e.warnings.length>0&&(0,z.jsx)(Gm,{title:`Policy Warnings`,count:e.warnings.length,children:(0,z.jsx)(`div`,{style:{display:`grid`,gap:8},children:e.warnings.map(e=>(0,z.jsx)(`pre`,{className:`warning-block`,children:qm(e)},String(e)))})})]})})]})}function Bm({tenantPolicy:e,tables:t,busy:n,saveStatus:r,onSave:a,onCancel:o}){let[s,c]=(0,x.useState)(()=>Jm(e)),[l,u]=(0,x.useState)(()=>e.body);return(0,z.jsx)(Wm,{tables:t,frontmatter:s,body:l,busy:n,saveStatus:r,onFrontmatterChange:c,onBodyChange:u,onConfirm:()=>void a(s,l||void 0),onBack:o,title:`Edit Tenant Policy`,backLabel:`Cancel`,confirmLabel:`Save Changes`,badgeLabel:`Saved`})}function Vm(e,t){switch(t.type){case`set_mode`:return{...e,mode:t.payload};case`set_draftStatus`:return{...e,draftStatus:t.payload};case`set_draftFrontmatter`:return{...e,draftFrontmatter:t.payload};case`set_draftBody`:return{...e,draftBody:t.payload};case`set_enforcement`:return{...e,enforcement:t.payload};case`set_rootTenantIdColumn`:return{...e,rootTenantIdColumn:t.payload};case`set_rootLabel`:return{...e,rootLabel:t.payload};case`select_root_table`:return{...e,rootTableId:t.tableId,rootLabel:t.label,rootTenantIdColumn:``};case`toggle_global_table`:return{...e,globalTableIds:t.checked?[...e.globalTableIds,t.tableId]:e.globalTableIds.filter(e=>e!==t.tableId)};case`ai_draft_complete`:return{...e,draftFrontmatter:t.frontmatter,draftBody:t.body,mode:`review`,draftStatus:{kind:`success`,text:`AI draft ready for review.`}};case`manual_to_review`:return{...e,draftFrontmatter:t.frontmatter,draftBody:t.body,mode:`review`}}}var Hm={mode:`choose`,draftStatus:null,draftFrontmatter:null,draftBody:``,enforcement:`strict`,rootTableId:``,rootTenantIdColumn:``,rootLabel:``,globalTableIds:[]};function Um({tables:e,schemaId:t,aiConfigured:n,busy:r,onSave:a,onSuggest:o,saveStatus:s}){let[c,l]=(0,x.useReducer)(Vm,Hm),{mode:u,draftStatus:d,draftFrontmatter:f,draftBody:p,enforcement:m,rootTableId:h,rootTenantIdColumn:g,rootLabel:_,globalTableIds:v}=c,y=e.find(e=>e.physical.id===h)?.physical.columns??[];async function b(){l({type:`set_draftStatus`,payload:{kind:`loading`,text:`Analyzing schema and drafting tenant policy...`}});try{let e=await o();l({type:`ai_draft_complete`,frontmatter:e.frontmatter,body:e.body})}catch(e){l({type:`set_draftStatus`,payload:{kind:`error`,text:e instanceof Error?e.message:String(e)}})}}function S(){!h||!g||!_.trim()||l({type:`manual_to_review`,frontmatter:{schemaId:t,enforcement:m,roots:[{id:h,tenantIdColumn:g,label:_.trim()}],...v.length>0?{globalTables:v}:{}},body:`# Tenant Policy
|
|
55
55
|
|
|
56
56
|
|
|
57
57
|
|
|
@@ -65,4 +65,4 @@ For more information, see https://radix-ui.com/primitives/docs/components/${t.do
|
|
|
65
65
|
|
|
66
66
|
## Sensitive Interactions
|
|
67
67
|
|
|
68
|
-
`})}function C(){f&&a(f,p||void 0)}let w=h&&g&&_.trim();return u===`choose`?(0,z.jsxs)(z.Fragment,{children:[(0,z.jsx)(`div`,{className:`main-hd`,children:(0,z.jsxs)(`div`,{className:`main-title`,children:[(0,z.jsxs)(`h1`,{children:[(0,z.jsx)(Ni,{size:18,style:{display:`inline`,marginRight:8}}),`Enable Multi-Tenancy`]}),(0,z.jsx)(`div`,{className:`main-sub`,children:`Configure tenant isolation for your schema`})]})}),d&&(0,z.jsx)(hm,{status:d}),(0,z.jsx)(`div`,{className:`main-body`,children:(0,z.jsx)(`div`,{className:`stack`,style:{padding:`var(--pad-y) var(--pad-x)`},children:(0,z.jsxs)(`div`,{className:`grid-2`,children:[(0,z.jsx)(`button`,{type:`button`,className:`card`,style:{cursor:`pointer`,textAlign:`left`,border:`2px dashed var(--border)`},disabled:!n||d?.kind===`loading`,onClick:()=>void b(),children:(0,z.jsxs)(`div`,{className:`card-bd`,children:[(0,z.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:8,marginBottom:12},children:[d?.kind===`loading`?(0,z.jsx)(xi,{size:20,className:`animate-spin`,style:{color:`var(--red-600)`}}):(0,z.jsx)(Pi,{size:20,style:{color:`var(--red-600)`}}),(0,z.jsx)(`h3`,{style:{fontWeight:600},children:`Draft with AI`})]}),(0,z.jsx)(`p`,{className:`muted`,style:{fontSize:13},children:d?.kind===`loading`?`Analyzing your schema...`:`Let AI analyze your schema and propose a complete tenant policy. You will review before saving.`}),!n&&(0,z.jsx)(`p`,{style:{marginTop:8,fontSize:12,color:`var(--red-600)`},children:`Configure an AI provider to use this option.`})]})}),(0,z.jsx)(`button`,{type:`button`,className:`card`,style:{cursor:`pointer`,textAlign:`left`,border:`2px dashed var(--border)`},onClick:()=>l({type:`set_mode`,payload:`manual`}),children:(0,z.jsxs)(`div`,{className:`card-bd`,children:[(0,z.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:8,marginBottom:12},children:[(0,z.jsx)(Mi,{size:20,style:{color:`var(--ink-400)`}}),(0,z.jsx)(`h3`,{style:{fontWeight:600},children:`Configure manually`})]}),(0,z.jsx)(`p`,{className:`muted`,style:{fontSize:13},children:`Pick the tenant root table and column yourself, then review before saving.`})]})})]})})})]}):u===`manual`?(0,z.jsxs)(z.Fragment,{children:[(0,z.jsxs)(`div`,{className:`main-hd`,children:[(0,z.jsxs)(`div`,{className:`main-title`,children:[(0,z.jsxs)(`h1`,{children:[(0,z.jsx)(Ni,{size:18,style:{display:`inline`,marginRight:8}}),`Manual Configuration`]}),(0,z.jsx)(`div`,{className:`main-sub`,children:`Configure the basics, then review before saving`})]}),(0,z.jsx)(`div`,{className:`main-actions`,children:(0,z.jsx)(`button`,{type:`button`,className:`btn`,onClick:()=>l({type:`set_mode`,payload:`choose`}),children:`Back`})})]}),(0,z.jsx)(`div`,{className:`main-body`,children:(0,z.jsxs)(`div`,{className:`stack`,style:{padding:`var(--pad-y) var(--pad-x)`},children:[(0,z.jsxs)(`section`,{className:`card`,children:[(0,z.jsx)(`div`,{className:`card-hd`,children:(0,z.jsx)(`h3`,{children:`Tenant Root`})}),(0,z.jsx)(`div`,{className:`card-bd`,children:(0,z.jsxs)(`div`,{style:{display:`grid`,gap:16},children:[(0,z.jsx)($,{label:`Root table`,description:`The table whose rows represent tenants.`,children:(0,z.jsxs)(`select`,{className:`h-9 w-full rounded-md border border-input bg-background px-3 text-sm outline-none focus-visible:ring-2 focus-visible:ring-ring`,value:h,onChange:t=>{let n=t.target.value;l({type:`select_root_table`,tableId:n,label:e.find(e=>e.physical.id===n)?.physical.name??``})},children:[(0,z.jsx)(`option`,{value:``,children:`Select a table...`}),e.map(e=>(0,z.jsxs)(`option`,{value:e.physical.id,children:[e.physical.schema,`.`,e.physical.name]},e.physical.id))]})}),h&&(0,z.jsx)($,{label:`Tenant ID column`,description:`The column that uniquely identifies a tenant.`,children:(0,z.jsxs)(`select`,{className:`h-9 w-full rounded-md border border-input bg-background px-3 text-sm outline-none focus-visible:ring-2 focus-visible:ring-ring`,value:g,onChange:e=>l({type:`set_rootTenantIdColumn`,payload:e.target.value}),children:[(0,z.jsx)(`option`,{value:``,children:`Select a column...`}),y.map(e=>(0,z.jsxs)(`option`,{value:e.name,children:[e.name,` (`,e.type,e.primaryKey?`, PK`:``,`)`]},e.id))]})}),(0,z.jsx)($,{label:`Label`,description:`e.g. "Organization" or "Company"`,children:(0,z.jsx)(Mm,{value:_,placeholder:`e.g. Organization`,onChange:e=>l({type:`set_rootLabel`,payload:e.target.value})})})]})})]}),(0,z.jsxs)(`section`,{className:`card`,children:[(0,z.jsx)(`div`,{className:`card-hd`,children:(0,z.jsx)(`h3`,{children:`Enforcement Mode`})}),(0,z.jsxs)(`div`,{className:`card-bd`,children:[(0,z.jsxs)(`fieldset`,{className:`toggle-seg`,children:[(0,z.jsx)(`button`,{type:`button`,className:m===`strict`?`active`:``,onClick:()=>l({type:`set_enforcement`,payload:`strict`}),children:`Strict`}),(0,z.jsx)(`button`,{type:`button`,className:m===`warn`?`active`:``,onClick:()=>l({type:`set_enforcement`,payload:`warn`}),children:`Warn`})]}),(0,z.jsx)(`p`,{className:`muted tiny`,style:{marginTop:8},children:m===`strict`?`Queries touching unknown (unscoped) tables will be rejected.`:`Queries touching unknown tables will succeed but emit warnings.`})]})]}),(0,z.jsxs)(`section`,{className:`card`,children:[(0,z.jsx)(`div`,{className:`card-hd`,children:(0,z.jsx)(`h3`,{children:`Global Tables (optional)`})}),(0,z.jsxs)(`div`,{className:`card-bd`,children:[(0,z.jsx)(`p`,{className:`muted`,style:{fontSize:13,marginBottom:8},children:`Global tables are shared across all tenants and never filtered.`}),(0,z.jsx)(`div`,{style:{display:`flex`,flexWrap:`wrap`,gap:8},children:e.map(e=>e.physical.id===h?null:(0,z.jsxs)(`label`,{className:`chunk-toggle`,children:[(0,z.jsx)(`input`,{type:`checkbox`,checked:v.includes(e.physical.id),onChange:t=>l({type:`toggle_global_table`,tableId:e.physical.id,checked:t.target.checked})}),e.physical.schema,`.`,e.physical.name]},e.physical.id))})]})]}),(0,z.jsx)(`div`,{style:{display:`flex`,justifyContent:`flex-end`},children:(0,z.jsxs)(`button`,{type:`button`,className:`btn primary`,onClick:S,disabled:!w,children:[(0,z.jsx)(ui,{size:14}),` Review & Confirm`]})})]})})]}):(0,z.jsx)(nh,{tables:e,frontmatter:f,body:p,busy:r,saveStatus:s,onFrontmatterChange:e=>l({type:`set_draftFrontmatter`,payload:e}),onBodyChange:e=>l({type:`set_draftBody`,payload:e}),onConfirm:C,onBack:()=>l({type:`set_mode`,payload:`choose`})})}function nh({tables:e,frontmatter:t,body:n,busy:r,saveStatus:a,onFrontmatterChange:o,onBodyChange:s,onConfirm:c,onBack:l,title:u=`Review Tenant Policy`,backLabel:d=`Start Over`,confirmLabel:f=`Confirm & Save`,badgeLabel:p=`Draft`}){function m(e){o({...t,enforcement:e})}function h(e,n){let r=[...t.roots];r[e]={...r[e],label:n},o({...t,roots:r})}function g(e){let n=t.roots.filter((t,n)=>n!==e);n.length!==0&&o({...t,roots:n})}function _(e){let n=(t.hierarchy??[]).filter((t,n)=>n!==e);o({...t,hierarchy:n.length>0?n:void 0})}function v(e){let n=(t.scopedTables??[]).filter((t,n)=>n!==e);o({...t,scopedTables:n.length>0?n:void 0})}function y(e){let n=(t.polymorphicTables??[]).filter((t,n)=>n!==e);o({...t,polymorphicTables:n.length>0?n:void 0})}function b(e){let n=t.globalTables??[],r=n.includes(e)?n.filter(t=>t!==e):[...n,e];o({...t,globalTables:r.length>0?r:void 0})}let x=new Set(t.roots.map(e=>e.id)),S=new Set((t.scopedTables??[]).map(e=>e.id)),C=new Set((t.polymorphicTables??[]).map(e=>e.id)),w=new Set(t.globalTables??[]);return(0,z.jsxs)(z.Fragment,{children:[(0,z.jsxs)(`div`,{className:`main-hd`,children:[(0,z.jsxs)(`div`,{className:`main-title`,children:[(0,z.jsxs)(`h1`,{children:[(0,z.jsx)(Ni,{size:18,style:{display:`inline`,marginRight:8}}),u]}),(0,z.jsx)(`div`,{className:`main-sub`,children:(0,z.jsx)(Q,{variant:`warning`,children:p})})]}),(0,z.jsxs)(`div`,{className:`main-actions`,children:[(0,z.jsxs)(`button`,{type:`button`,className:`btn`,onClick:l,children:[(0,z.jsx)(ki,{size:14}),` `,d]}),(0,z.jsxs)(`button`,{type:`button`,className:`btn primary`,onClick:c,disabled:r.has(`save-tenant-policy`)||t.roots.length===0,children:[r.has(`save-tenant-policy`)?(0,z.jsx)(xi,{size:14,className:`animate-spin`}):(0,z.jsx)(Ai,{size:14}),f]})]})]}),a&&(0,z.jsx)(hm,{status:a}),(0,z.jsx)(`div`,{className:`main-body`,children:(0,z.jsxs)(`div`,{className:`stack`,style:{padding:`var(--pad-y) var(--pad-x)`},children:[(0,z.jsxs)(`section`,{className:`card`,children:[(0,z.jsx)(`div`,{className:`card-hd`,children:(0,z.jsx)(`h3`,{children:`Enforcement Mode`})}),(0,z.jsxs)(`div`,{className:`card-bd`,children:[(0,z.jsxs)(`fieldset`,{className:`toggle-seg`,children:[(0,z.jsx)(`button`,{type:`button`,className:t.enforcement===`strict`?`active`:``,onClick:()=>m(`strict`),children:`Strict`}),(0,z.jsx)(`button`,{type:`button`,className:t.enforcement===`warn`?`active`:``,onClick:()=>m(`warn`),children:`Warn`})]}),(0,z.jsx)(`p`,{className:`muted tiny`,style:{marginTop:8},children:t.enforcement===`strict`?`Queries touching unknown (unscoped) tables will be rejected.`:`Queries touching unknown tables will succeed but emit warnings.`})]})]}),(0,z.jsxs)(`section`,{className:`card`,children:[(0,z.jsx)(`div`,{className:`card-hd`,children:(0,z.jsxs)(`h3`,{children:[`Tenant Roots (`,t.roots.length,`)`]})}),(0,z.jsx)(`div`,{className:`card-bd`,children:(0,z.jsx)(`div`,{style:{display:`grid`,gap:12},children:t.roots.map((e,n)=>(0,z.jsxs)(`div`,{style:{border:`1px solid var(--border)`,borderRadius:`var(--radius)`,padding:12},children:[(0,z.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,justifyContent:`space-between`,gap:8},children:[(0,z.jsxs)(`div`,{children:[(0,z.jsx)(`span`,{className:`mono`,style:{fontWeight:600,fontSize:13},children:e.id}),(0,z.jsxs)(`div`,{style:{marginTop:4,display:`flex`,flexWrap:`wrap`,gap:4},children:[(0,z.jsxs)(Q,{variant:`outline`,children:[`col: `,e.tenantIdColumn]}),e.parent&&(0,z.jsxs)(Q,{variant:`outline`,children:[`parent: `,e.parent.root,` via `,e.parent.foreignKey]})]})]}),t.roots.length>1&&(0,z.jsx)(`button`,{type:`button`,className:`btn ghost sm`,onClick:()=>g(n),title:`Remove root`,children:`×`})]}),(0,z.jsx)(`div`,{style:{marginTop:8},children:(0,z.jsx)($,{label:`Label`,description:`Human-readable name for this tenant root.`,children:(0,z.jsx)(Mm,{value:e.label,onChange:e=>h(n,e.target.value)})})})]},e.id))})})]}),(t.hierarchy??[]).length>0&&(0,z.jsxs)(`section`,{className:`card`,children:[(0,z.jsx)(`div`,{className:`card-hd`,children:(0,z.jsxs)(`h3`,{children:[`Hierarchy Edges (`,t.hierarchy.length,`)`]})}),(0,z.jsx)(`div`,{className:`card-bd`,children:(0,z.jsx)(`div`,{style:{display:`grid`,gap:8},children:t.hierarchy.map(e=>(0,z.jsxs)(`div`,{className:`policy-edge-card`,children:[(0,z.jsxs)(`div`,{children:[(0,z.jsx)(`code`,{children:e.parent}),(0,z.jsx)(`span`,{className:`muted`,style:{margin:`0 8px`},children:`→`}),(0,z.jsx)(`code`,{children:e.child}),(0,z.jsxs)(`div`,{className:`muted tiny`,style:{marginTop:4},children:[`FK: `,e.foreignKey]})]}),(0,z.jsx)(`button`,{type:`button`,className:`btn ghost sm`,onClick:()=>_(i),title:`Remove`,children:`×`})]},`${e.parent}-${e.child}`))})})]}),(t.scopedTables??[]).length>0&&(0,z.jsxs)(`section`,{className:`card`,children:[(0,z.jsx)(`div`,{className:`card-hd`,children:(0,z.jsxs)(`h3`,{children:[`Scoped Tables (`,t.scopedTables.length,`)`]})}),(0,z.jsx)(`div`,{className:`card-bd`,children:(0,z.jsx)(`div`,{style:{display:`grid`,gap:8},children:t.scopedTables.map((e,t)=>(0,z.jsxs)(`div`,{style:{display:`flex`,alignItems:`start`,justifyContent:`space-between`,gap:8,border:`1px solid var(--border)`,borderRadius:`var(--radius)`,padding:12},children:[(0,z.jsxs)(`div`,{children:[(0,z.jsx)(`span`,{className:`mono`,style:{fontWeight:600,fontSize:13},children:e.id}),(0,z.jsx)(`div`,{style:{marginTop:4,display:`grid`,gap:4},children:e.scopeThrough.map((e,t)=>(0,z.jsxs)(`p`,{className:`muted tiny`,children:[`via `,(0,z.jsx)(Q,{variant:`outline`,children:e.root}),` `,`column`in e?(0,z.jsxs)(`span`,{children:[`column `,(0,z.jsx)(`code`,{children:e.column})]}):(0,z.jsxs)(`span`,{children:[`join `,e.join.map(e=>`${e.from} -> ${e.to}`).join(`, `)]})]},t))})]}),(0,z.jsx)(`button`,{type:`button`,className:`btn ghost sm`,onClick:()=>v(t),title:`Remove`,children:`×`})]},e.id))})})]}),(t.polymorphicTables??[]).length>0&&(0,z.jsxs)(`section`,{className:`card`,children:[(0,z.jsx)(`div`,{className:`card-hd`,children:(0,z.jsxs)(`h3`,{children:[`Polymorphic Tables (`,t.polymorphicTables.length,`)`]})}),(0,z.jsx)(`div`,{className:`card-bd`,children:(0,z.jsx)(`div`,{style:{display:`grid`,gap:8},children:t.polymorphicTables.map((e,t)=>(0,z.jsxs)(`div`,{style:{display:`flex`,alignItems:`start`,justifyContent:`space-between`,gap:8,border:`1px solid var(--border)`,borderRadius:`var(--radius)`,padding:12},children:[(0,z.jsxs)(`div`,{children:[(0,z.jsx)(`span`,{className:`mono`,style:{fontWeight:600,fontSize:13},children:e.id}),(0,z.jsxs)(`p`,{className:`muted tiny`,style:{marginTop:4},children:[`Type: `,(0,z.jsx)(`code`,{children:e.typeColumn}),` · ID: `,(0,z.jsx)(`code`,{children:e.idColumn})]}),(0,z.jsx)(`div`,{style:{marginTop:4,display:`flex`,flexWrap:`wrap`,gap:4},children:Object.entries(e.mapping).map(([e,t])=>(0,z.jsxs)(Q,{variant:`outline`,children:[e,` → `,t]},e))})]}),(0,z.jsx)(`button`,{type:`button`,className:`btn ghost sm`,onClick:()=>y(t),title:`Remove`,children:`×`})]},e.id))})})]}),(0,z.jsxs)(`section`,{className:`card`,children:[(0,z.jsx)(`div`,{className:`card-hd`,children:(0,z.jsx)(`h3`,{children:`Global Tables`})}),(0,z.jsxs)(`div`,{className:`card-bd`,children:[(0,z.jsx)(`p`,{className:`muted`,style:{fontSize:13,marginBottom:8},children:`Global tables are shared across all tenants and never filtered.`}),(0,z.jsx)(`div`,{style:{display:`flex`,flexWrap:`wrap`,gap:8},children:e.map(e=>x.has(e.physical.id)||S.has(e.physical.id)||C.has(e.physical.id)?null:(0,z.jsxs)(`label`,{className:`chunk-toggle`,children:[(0,z.jsx)(`input`,{type:`checkbox`,checked:w.has(e.physical.id),onChange:()=>b(e.physical.id)}),e.physical.schema,`.`,e.physical.name]},e.physical.id))})]})]}),(0,z.jsxs)(`section`,{className:`card`,children:[(0,z.jsx)(`div`,{className:`card-hd`,children:(0,z.jsx)(`h3`,{children:`Documentation (body)`})}),(0,z.jsxs)(`div`,{className:`card-bd`,children:[(0,z.jsx)(`p`,{className:`muted`,style:{fontSize:13,marginBottom:8},children:`Optional markdown body explaining the tenant policy.`}),(0,z.jsx)(Pm,{className:`min-h-48 font-mono text-xs`,value:n,onChange:e=>s(e.target.value)})]})]}),(0,z.jsxs)(`section`,{className:`card`,children:[(0,z.jsx)(`div`,{className:`card-hd`,children:(0,z.jsx)(`h3`,{children:`Frontmatter Preview`})}),(0,z.jsx)(`div`,{className:`card-bd`,children:(0,z.jsx)(`pre`,{className:`plain-block`,style:{fontSize:12},children:JSON.stringify(t,null,2)})})]})]})})]})}function rh({title:e,count:t,children:n,defaultOpen:r=!0}){let[a,o]=(0,x.useState)(r);return(0,z.jsxs)(`section`,{children:[(0,z.jsxs)(`button`,{type:`button`,className:`collapsible-btn`,onClick:()=>o(!a),children:[a?(0,z.jsx)(li,{size:14}):(0,z.jsx)(ui,{size:14}),e,t==null?``:` (${t})`]}),a&&n]})}function ih({label:e,count:t,variant:n}){return(0,z.jsxs)(`div`,{className:`card`,style:{textAlign:`center`,padding:12,background:n===`primary`?`var(--red-50)`:n===`secondary`?`var(--surface-2)`:`#fef3c7`},children:[(0,z.jsx)(`div`,{style:{fontSize:24,fontWeight:700},children:t}),(0,z.jsx)(`div`,{className:`muted tiny`,children:e})]})}function ah(e){return typeof e==`string`?e:JSON.stringify(e,null,2)}function oh(e){return{schemaId:e.schemaId,enforcement:e.enforcement,roots:sh(e.roots),...e.hierarchy.length>0?{hierarchy:sh(e.hierarchy)}:{},...e.scopedTables.length>0?{scopedTables:sh(e.scopedTables)}:{},...e.polymorphicTables.length>0?{polymorphicTables:sh(e.polymorphicTables)}:{},...e.globalTables.length>0?{globalTables:[...e.globalTables]}:{}}}function sh(e){return JSON.parse(JSON.stringify(e))}function ch({text:e}){return(0,z.jsx)(`p`,{className:`rounded-md border border-dashed border-border px-3 py-6 text-center text-sm text-muted-foreground`,children:e})}function lh(){let{workspace:e}=yr(),{ragStatus:t,ragMessage:n,ragQuestion:r,setRagQuestion:a,ragK:o,setRagK:s,ragTypes:c,setRagTypes:l,ragResults:u,ragIndexUsage:d,busy:f,allChunkTypes:p,refreshRagStatus:m,handleBuildRag:h,handleQueryRag:g}=Mr();if(!e)return null;let _=!t?.hasIndex||t.stale||f.has(`rag-query`);return(0,z.jsxs)(`main`,{className:`main-pane`,children:[(0,z.jsxs)(`div`,{className:`main-hd`,children:[(0,z.jsxs)(`div`,{className:`main-title`,children:[(0,z.jsxs)(`h1`,{children:[(0,z.jsx)(Pi,{size:18,style:{display:`inline`,marginRight:8}}),`RAG Index`]}),(0,z.jsx)(`div`,{className:`main-sub`,children:`Retrieval-augmented generation index and query debugger`})]}),(0,z.jsxs)(`div`,{className:`main-actions`,children:[(0,z.jsxs)(`button`,{type:`button`,className:`btn`,onClick:()=>void m(),children:[(0,z.jsx)(Oi,{size:14}),` Refresh`]}),(0,z.jsxs)(`button`,{type:`button`,className:`btn primary`,onClick:()=>void h(),disabled:f.has(`rag-build`),children:[f.has(`rag-build`)?(0,z.jsx)(xi,{size:14,className:`animate-spin`}):(0,z.jsx)(ci,{size:14}),`Build Index`]})]})]}),(0,z.jsx)(`div`,{className:`main-body`,children:(0,z.jsxs)(`div`,{className:`stack`,style:{padding:`var(--pad-y) var(--pad-x)`},children:[n&&(0,z.jsx)(gm,{status:n}),t?(0,z.jsxs)(`div`,{className:`grid-4`,children:[(0,z.jsxs)(`div`,{className:`card stat-card`,children:[(0,z.jsx)(`div`,{className:`stat-label`,children:`Chunks`}),(0,z.jsx)(`div`,{className:`stat-num`,children:gr(t.chunksTotal)})]}),(0,z.jsxs)(`div`,{className:`card stat-card`,children:[(0,z.jsx)(`div`,{className:`stat-label`,children:`Indexed`}),(0,z.jsx)(`div`,{className:`stat-num`,children:gr(t.chunksIndexed)})]}),(0,z.jsxs)(`div`,{className:`card stat-card`,children:[(0,z.jsx)(`div`,{className:`stat-label`,children:`Sensitive excluded`}),(0,z.jsx)(`div`,{className:`stat-num`,children:t.sensitiveExcluded})]}),(0,z.jsxs)(`div`,{className:`card stat-card`,children:[(0,z.jsx)(`div`,{className:`stat-label`,children:`Sensitive included`}),(0,z.jsx)(`div`,{className:`stat-num`,children:t.sensitiveIncluded})]})]}):(0,z.jsx)(ch,{text:`RAG status is unavailable.`}),t&&(0,z.jsxs)(`section`,{className:`card`,children:[(0,z.jsx)(`div`,{className:`card-hd`,children:(0,z.jsx)(`h3`,{children:`Index Details`})}),(0,z.jsxs)(`div`,{className:`card-bd`,children:[(0,z.jsxs)(`div`,{style:{display:`flex`,flexWrap:`wrap`,gap:8,marginBottom:12},children:[(0,z.jsx)(Q,{variant:t.hasIndex?`secondary`:`warning`,children:t.hasIndex?`Index present`:`No index`}),(0,z.jsx)(Q,{variant:t.stale?`warning`:`secondary`,children:t.stale?`Stale`:`Fresh`}),(0,z.jsx)(Q,{variant:t.embedder.configured?`secondary`:`warning`,children:t.embedder.label})]}),(0,z.jsxs)(`div`,{style:{display:`grid`,gap:4,fontSize:12,color:`var(--ink-400)`},children:[(0,z.jsxs)(`span`,{children:[`Expected: `,t.expectedEmbedderId]}),(0,z.jsxs)(`span`,{children:[`Indexed: `,t.embedder.indexedId??`none`]}),(0,z.jsxs)(`span`,{children:[`Dimensions: `,t.dimensions,` / expected `,t.expectedDimensions]}),(0,z.jsxs)(`span`,{children:[`Updated: `,t.updatedAt??`never`]}),(0,z.jsxs)(`span`,{children:[`Store: `,t.store.kind]})]}),(0,z.jsx)(`div`,{className:`bar`,style:{marginTop:14},children:(0,z.jsx)(`i`,{style:{width:t.chunksTotal>0?`${Math.round(t.chunksIndexed/t.chunksTotal*100)}%`:`0%`}})})]})]}),(0,z.jsxs)(`section`,{className:`card`,children:[(0,z.jsx)(`div`,{className:`card-hd`,children:(0,z.jsx)(`h3`,{children:`Query Debugger`})}),(0,z.jsx)(`div`,{className:`card-bd`,children:(0,z.jsxs)(`div`,{style:{display:`grid`,gap:12},children:[(0,z.jsx)($,{label:`Question`,children:(0,z.jsx)(Pm,{value:r,onChange:e=>a(e.target.value),placeholder:`Which customers placed orders last month?`})}),(0,z.jsxs)(`div`,{style:{display:`grid`,gap:12,gridTemplateColumns:`120px 1fr`},children:[(0,z.jsx)($,{label:`Top K`,children:(0,z.jsx)(Mm,{min:1,max:25,type:`number`,value:o,onChange:e=>s(Number(e.target.value))})}),(0,z.jsxs)(`div`,{style:{display:`grid`,gap:6},children:[(0,z.jsx)(`span`,{className:`muted`,style:{fontSize:12,fontWeight:600,textTransform:`uppercase`,letterSpacing:`0.04em`},children:`Chunk types`}),(0,z.jsx)(`div`,{style:{display:`flex`,flexWrap:`wrap`,gap:8},children:p.map(e=>(0,z.jsxs)(`label`,{className:`chunk-toggle`,children:[(0,z.jsx)(`input`,{checked:c.includes(e),type:`checkbox`,onChange:t=>{t.target.checked?l([...c,e]):l(c.filter(t=>t!==e))}}),e]},e))})]})]}),(0,z.jsxs)(`button`,{type:`button`,className:`btn primary`,disabled:_,onClick:()=>void g(),children:[f.has(`rag-query`)?(0,z.jsx)(xi,{size:14,className:`animate-spin`}):(0,z.jsx)(ji,{size:14}),`Query RAG`]}),(0,z.jsx)(dh,{title:`Last Index Usage`,usage:d}),(0,z.jsx)(dh,{title:`Last Query Usage`,usage:u?.usage??null})]})})]}),(0,z.jsx)(uh,{chunks:u?.results??[],emptyText:`No chunks retrieved yet.`})]})})]})}function uh({chunks:e,emptyText:t}){return(0,z.jsxs)(`section`,{className:`card`,children:[(0,z.jsx)(`div`,{className:`card-hd`,children:(0,z.jsx)(`h3`,{children:`Retrieved Chunks`})}),(0,z.jsx)(`div`,{className:`card-bd`,children:e.length>0?(0,z.jsx)(`div`,{style:{display:`grid`,gap:12},children:e.map(e=>(0,z.jsxs)(`article`,{className:`chunk-card`,children:[(0,z.jsxs)(`div`,{style:{display:`flex`,alignItems:`start`,justifyContent:`space-between`,gap:12},children:[(0,z.jsxs)(`div`,{children:[(0,z.jsxs)(`div`,{style:{display:`flex`,flexWrap:`wrap`,alignItems:`center`,gap:8},children:[(0,z.jsx)(`h4`,{style:{fontSize:13,fontWeight:600,wordBreak:`break-all`},children:e.id}),(0,z.jsx)(Q,{variant:`outline`,children:e.type}),e.sensitive&&(0,z.jsx)(Q,{variant:`danger`,children:`sensitive`})]}),(0,z.jsxs)(`p`,{className:`muted tiny`,style:{marginTop:4,wordBreak:`break-all`},children:[`refs: `,e.refs.length>0?e.refs.join(`, `):`none`]})]}),(0,z.jsx)(Q,{variant:`secondary`,children:e.score.toFixed(3)})]}),(0,z.jsx)(`pre`,{className:`chunk-text`,children:e.text})]},e.id))}):(0,z.jsx)(ch,{text:t})})]})}function dh({title:e,usage:t}){if(!t)return null;let n=t.promptTokens??t.embeddingTokens;return(0,z.jsxs)(`section`,{className:`usage-summary`,"aria-label":e,children:[(0,z.jsx)(`h3`,{children:e}),(0,z.jsxs)(`dl`,{className:`usage-grid`,children:[n!==null&&(0,z.jsxs)(`div`,{children:[(0,z.jsx)(`dt`,{children:t.embeddingTokens===null?`Prompt`:`Embeddings`}),(0,z.jsx)(`dd`,{children:gr(n)})]}),t.completionTokens!==null&&(0,z.jsxs)(`div`,{children:[(0,z.jsx)(`dt`,{children:`Completion`}),(0,z.jsx)(`dd`,{children:gr(t.completionTokens)})]}),(0,z.jsxs)(`div`,{className:`usage-total`,children:[(0,z.jsx)(`dt`,{children:`Total`}),(0,z.jsx)(`dd`,{children:gr(t.totalTokens)})]})]})]})}function fh({value:e}){let[t,n]=(0,x.useState)(!1);return(0,z.jsxs)(jm,{variant:`ghost`,size:`sm`,onClick:(0,x.useCallback)(()=>{navigator.clipboard.writeText(e).then(()=>{n(!0),setTimeout(()=>n(!1),2e3)})},[e]),children:[t?(0,z.jsx)(V,{className:`h-3.5 w-3.5 text-green-500`}):(0,z.jsx)(mi,{className:`h-3.5 w-3.5`}),t?`Copied`:`Copy`]})}var ph=`h-9 w-full rounded-md border border-input bg-background px-3 text-sm outline-none focus-visible:ring-2 focus-visible:ring-ring`,mh={border:0,padding:0,margin:0};function hh(e){return`${e}-${globalThis.crypto?.randomUUID?.()??`${Date.now()}-${Math.random().toString(36).slice(2)}`}`}function gh(){let{workspace:e}=yr(),{ragAvailable:t}=Mr(),{askQuestion:n,setAskQuestion:r,askMode:a,setAskMode:o,askMessage:s,askResult:c,askTenantEnabled:l,setAskTenantEnabled:u,askTenantAccessKind:d,setAskTenantAccessKind:f,askTenantRoot:p,setAskTenantRoot:m,askTenantIdsText:h,setAskTenantIdsText:g,askTenantMultiRootRows:_,setAskTenantMultiRootRows:v,askTenantGlobalReason:y,setAskTenantGlobalReason:b,askTenantContext:S,setAskTenantContext:C,askTenantContextAttributes:w,setAskTenantContextAttributes:T,askTenantFilterRows:E,setAskTenantFilterRows:D,generatedTenantScopeJson:O,tenantScopeValidationError:k,askTenantSqlMode:A,setAskTenantSqlMode:j,executeResult:M,executeMessage:N,historyEntries:P,busy:F,handleAsk:ee,handleExecute:I,loadHistoryEntry:te,handleDeleteHistory:ne}=zr(),L=(0,x.useCallback)(e=>{(e.metaKey||e.ctrlKey)&&e.key===`Enter`&&!F.has(`ask`)&&(e.preventDefault(),ee())},[F,ee]);if((0,x.useEffect)(()=>(document.addEventListener(`keydown`,L),()=>document.removeEventListener(`keydown`,L)),[L]),!e)return null;let re=!!e.tenantPolicy,ie=e.tenantPolicy?.roots??[],ae=e.tenantPolicy?.polymorphicTables??[],oe=ie[0]?.id??``,se=ae[0];return(0,z.jsxs)(`main`,{className:`main-pane`,children:[(0,z.jsx)(`div`,{className:`main-hd`,children:(0,z.jsxs)(`div`,{className:`main-title`,children:[(0,z.jsxs)(`h1`,{children:[(0,z.jsx)(Ei,{size:18,style:{display:`inline`,marginRight:8}}),`Query Playground`]}),(0,z.jsx)(`div`,{className:`main-sub`,children:`Generate SQL from natural language and execute it against your database`})]})}),(0,z.jsx)(`div`,{className:`main-body`,style:{overflow:`auto`},children:(0,z.jsxs)(`div`,{style:{display:`grid`,gridTemplateColumns:`2fr 3fr`,minHeight:`100%`},children:[(0,z.jsxs)(`div`,{style:{borderRight:`1px solid var(--border)`,display:`flex`,flexDirection:`column`},children:[(0,z.jsx)(`div`,{style:{padding:`var(--pad-y) var(--pad-x)`},children:(0,z.jsxs)(`div`,{style:{display:`grid`,gap:12},children:[(0,z.jsx)($,{label:`Natural language question`,children:(0,z.jsx)(Pm,{value:n,onChange:e=>r(e.target.value),placeholder:`How many users placed orders last month?`,rows:4})}),(0,z.jsxs)(`div`,{style:{display:`grid`,gap:6},children:[(0,z.jsx)(`span`,{className:`muted`,style:{fontSize:11,fontWeight:600,textTransform:`uppercase`,letterSpacing:`0.04em`},children:`Retrieval mode`}),(0,z.jsxs)(`fieldset`,{className:`toggle-seg`,style:mh,children:[(0,z.jsx)(`legend`,{className:`sr-only`,children:`Retrieval mode`}),(0,z.jsx)(`button`,{className:a===`full`?`active`:``,onClick:()=>o(`full`),children:`Full schema`}),(0,z.jsxs)(`button`,{className:a===`rag`?`active`:``,disabled:!t,title:t?void 0:`Build the RAG index first to query with retrieval.`,onClick:()=>o(`rag`),children:[!t&&(0,z.jsx)(Si,{size:12,style:{display:`inline`,marginRight:4}}),`RAG`]})]})]}),re&&(0,z.jsxs)(`div`,{style:{display:`grid`,gap:10},children:[(0,z.jsxs)(`label`,{style:{display:`flex`,alignItems:`center`,gap:8},children:[(0,z.jsx)(`input`,{type:`checkbox`,checked:l,onChange:e=>u(e.target.checked)}),(0,z.jsxs)(`span`,{className:`muted`,style:{fontSize:11,fontWeight:600},children:[(0,z.jsx)(Ni,{size:12,style:{display:`inline`,marginRight:4}}),`Tenant scope`]})]}),l&&(0,z.jsxs)(`div`,{style:{display:`grid`,gap:10},children:[(0,z.jsxs)(`div`,{style:{display:`grid`,gap:6},children:[(0,z.jsx)(`span`,{className:`muted`,style:{fontSize:11,fontWeight:600,textTransform:`uppercase`,letterSpacing:`0.04em`},children:`Access kind`}),(0,z.jsxs)(`fieldset`,{className:`toggle-seg`,style:mh,children:[(0,z.jsx)(`legend`,{className:`sr-only`,children:`Tenant scope access kind`}),(0,z.jsx)(`button`,{className:d===`ids`?`active`:``,onClick:()=>f(`ids`),children:`IDs`}),(0,z.jsx)(`button`,{className:d===`subtree`?`active`:``,onClick:()=>f(`subtree`),children:`Subtree`}),(0,z.jsx)(`button`,{className:d===`multi_root`?`active`:``,onClick:()=>f(`multi_root`),children:`Multi-root`}),(0,z.jsx)(`button`,{className:d===`global`?`active`:``,onClick:()=>f(`global`),children:`Super / global`})]})]}),(d===`ids`||d===`subtree`)&&(0,z.jsxs)(`div`,{style:{display:`grid`,gap:8},children:[(0,z.jsx)($,{label:`Tenant root`,children:(0,z.jsx)(`select`,{className:ph,value:p,onChange:e=>m(e.target.value),children:ie.map(e=>(0,z.jsxs)(`option`,{value:e.id,children:[e.label,` (`,e.id,`)`]},e.id))})}),(0,z.jsx)($,{label:d===`ids`?`Tenant IDs`:`Subtree root IDs`,description:`Comma-separated IDs from your app's auth context.`,children:(0,z.jsx)(Mm,{value:h,onChange:e=>g(e.target.value),placeholder:d===`ids`?`org-1, org-2`:`region-1`})})]}),d===`multi_root`&&(0,z.jsxs)(`div`,{style:{display:`grid`,gap:8},children:[_.map((e,t)=>(0,z.jsxs)(`div`,{style:{display:`grid`,gridTemplateColumns:`minmax(0, 1fr) minmax(0, 1fr) auto`,gap:8,alignItems:`end`},children:[(0,z.jsx)($,{label:`Tenant root`,className:`min-w-0`,children:(0,z.jsx)(`select`,{className:ph,value:e.tenantRoot,onChange:n=>{let r=[..._];r[t]={...e,tenantRoot:n.target.value},v(r)},children:ie.map(e=>(0,z.jsxs)(`option`,{value:e.id,children:[e.label,` (`,e.id,`)`]},e.id))})}),(0,z.jsx)($,{label:`IDs`,className:`min-w-0`,children:(0,z.jsx)(Mm,{value:e.idsText,onChange:n=>{let r=[..._];r[t]={...e,idsText:n.target.value},v(r)},placeholder:`org-1, org-2`})}),(0,z.jsx)(`button`,{className:`btn ghost sm`,disabled:_.length===1,onClick:()=>v(_.filter((e,n)=>n!==t)),title:`Remove scope row`,children:(0,z.jsx)(Li,{size:14})})]},e.id)),(0,z.jsx)(`div`,{children:(0,z.jsxs)(`button`,{className:`btn ghost sm`,onClick:()=>v([..._,{id:hh(`multi-root`),tenantRoot:oe,idsText:``}]),children:[(0,z.jsx)(Di,{size:14}),`Add root`]})})]}),d===`global`&&(0,z.jsx)($,{label:`Super / global reason`,description:`Required for audit context.`,children:(0,z.jsx)(Mm,{value:y,onChange:e=>b(e.target.value),placeholder:`superuser access for support investigation`})}),(0,z.jsxs)(`details`,{children:[(0,z.jsx)(`summary`,{className:`muted`,style:{cursor:`pointer`,fontSize:11,fontWeight:600,textTransform:`uppercase`,letterSpacing:`0.04em`},children:`Advisory context`}),(0,z.jsxs)(`div`,{style:{display:`grid`,gap:8,marginTop:8},children:[(0,z.jsxs)(`div`,{style:{display:`grid`,gridTemplateColumns:`1fr 1fr`,gap:8},children:[(0,z.jsx)($,{label:`Role`,children:(0,z.jsx)(Mm,{value:S.role,onChange:e=>C({...S,role:e.target.value}),placeholder:`regional_manager`})}),(0,z.jsx)($,{label:`Label`,children:(0,z.jsx)(Mm,{value:S.label,onChange:e=>C({...S,label:e.target.value}),placeholder:`Jane Smith, Northeast`})}),(0,z.jsx)($,{label:`Department`,children:(0,z.jsx)(Mm,{value:S.department,onChange:e=>C({...S,department:e.target.value}),placeholder:`operations`})}),(0,z.jsx)($,{label:`Region`,children:(0,z.jsx)(Mm,{value:S.region,onChange:e=>C({...S,region:e.target.value}),placeholder:`northeast`})})]}),(0,z.jsx)($,{label:`Description`,children:(0,z.jsx)(Pm,{value:S.description,onChange:e=>C({...S,description:e.target.value}),placeholder:`Business context for this user's scope.`,rows:2})}),w.map((e,t)=>(0,z.jsxs)(`div`,{style:{display:`grid`,gridTemplateColumns:`minmax(0, 1fr) minmax(0, 1fr) auto`,gap:8,alignItems:`end`},children:[(0,z.jsx)($,{label:`Attribute key`,className:`min-w-0`,children:(0,z.jsx)(Mm,{value:e.key,onChange:n=>{let r=[...w];r[t]={...e,key:n.target.value},T(r)},placeholder:`team`})}),(0,z.jsx)($,{label:`Attribute value`,className:`min-w-0`,children:(0,z.jsx)(Mm,{value:e.value,onChange:n=>{let r=[...w];r[t]={...e,value:n.target.value},T(r)},placeholder:`field-sales`})}),(0,z.jsx)(`button`,{className:`btn ghost sm`,onClick:()=>T(w.filter((e,n)=>n!==t)),title:`Remove attribute`,children:(0,z.jsx)(Li,{size:14})})]},e.id)),(0,z.jsx)(`div`,{children:(0,z.jsxs)(`button`,{className:`btn ghost sm`,onClick:()=>T([...w,{id:hh(`context-attribute`),key:``,value:``}]),children:[(0,z.jsx)(Di,{size:14}),`Add attribute`]})})]})]}),ae.length>0&&(0,z.jsxs)(`details`,{children:[(0,z.jsx)(`summary`,{className:`muted`,style:{cursor:`pointer`,fontSize:11,fontWeight:600,textTransform:`uppercase`,letterSpacing:`0.04em`},children:`Tenant filters`}),(0,z.jsxs)(`div`,{style:{display:`grid`,gap:8,marginTop:8},children:[E.map((e,t)=>(0,z.jsxs)(`div`,{style:{display:`grid`,gridTemplateColumns:`minmax(0, 1.2fr) minmax(0, 1fr) 88px minmax(0, 1fr) auto`,gap:8,alignItems:`end`},children:[(0,z.jsx)($,{label:`Table`,className:`min-w-0`,children:(0,z.jsx)(`select`,{className:ph,value:e.tableId,onChange:n=>{let r=ae.find(e=>e.id===n.target.value),a=[...E];a[t]={...e,tableId:n.target.value,column:e.column||r?.typeColumn||``},D(a)},children:ae.map(e=>(0,z.jsx)(`option`,{value:e.id,children:e.id},e.id))})}),(0,z.jsx)($,{label:`Column`,className:`min-w-0`,children:(0,z.jsx)(Mm,{value:e.column,onChange:n=>{let r=[...E];r[t]={...e,column:n.target.value},D(r)},placeholder:`owner_type`})}),(0,z.jsx)($,{label:`Operator`,className:`min-w-0`,children:(0,z.jsxs)(`select`,{className:ph,value:e.operator,onChange:n=>{let r=[...E];r[t]={...e,operator:n.target.value},D(r)},children:[(0,z.jsx)(`option`,{value:`=`,children:`=`}),(0,z.jsx)(`option`,{value:`IN`,children:`IN`}),(0,z.jsx)(`option`,{value:`!=`,children:`!=`}),(0,z.jsx)(`option`,{value:`NOT IN`,children:`NOT IN`})]})}),(0,z.jsx)($,{label:`Value`,className:`min-w-0`,children:(0,z.jsx)(Mm,{value:e.valueText,onChange:n=>{let r=[...E];r[t]={...e,valueText:n.target.value},D(r)},placeholder:e.operator===`IN`||e.operator===`NOT IN`?`client, agency`:`client`})}),(0,z.jsx)(`button`,{className:`btn ghost sm`,onClick:()=>D(E.filter((e,n)=>n!==t)),title:`Remove condition`,children:(0,z.jsx)(Li,{size:14})})]},e.id)),(0,z.jsx)(`div`,{children:(0,z.jsxs)(`button`,{className:`btn ghost sm`,onClick:()=>D([...E,{id:hh(`tenant-filter`),tableId:se.id,column:se.typeColumn,operator:`=`,valueText:``}]),children:[(0,z.jsx)(Di,{size:14}),`Add condition`]})})]})]}),(0,z.jsxs)(`div`,{style:{display:`grid`,gap:6},children:[(0,z.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,justifyContent:`space-between`,gap:8},children:[(0,z.jsx)(`span`,{className:`muted`,style:{fontSize:11,fontWeight:600,textTransform:`uppercase`,letterSpacing:`0.04em`},children:`tenantScope JSON preview`}),O&&(0,z.jsx)(fh,{value:O})]}),(0,z.jsx)(`pre`,{className:`mono`,style:{minHeight:116,margin:0,overflow:`auto`,whiteSpace:`pre-wrap`,border:`1px solid var(--border)`,borderRadius:6,padding:10,fontSize:11,background:`var(--surface-2)`},children:O||k||`Complete the tenant scope fields to preview the JSON passed to ask().`}),k&&(0,z.jsx)(`span`,{style:{color:`var(--red-600)`,fontSize:12},children:k})]}),(0,z.jsxs)(`div`,{style:{display:`grid`,gap:6},children:[(0,z.jsx)(`span`,{className:`muted`,style:{fontSize:11,fontWeight:600,textTransform:`uppercase`,letterSpacing:`0.04em`},children:`SQL output mode`}),(0,z.jsxs)(`fieldset`,{className:`toggle-seg`,style:mh,children:[(0,z.jsx)(`legend`,{className:`sr-only`,children:`SQL output mode`}),(0,z.jsx)(`button`,{className:A===`sql-only`?`active`:``,onClick:()=>j(`sql-only`),children:`Inline literals`}),(0,z.jsx)(`button`,{className:A===`sql-params`?`active`:``,onClick:()=>j(`sql-params`),children:`$N parameters`})]})]})]})]}),(0,z.jsxs)(`button`,{className:`btn primary`,disabled:F.has(`ask`),onClick:()=>void ee(),title:`Generate SQL (⌘↵)`,children:[F.has(`ask`)?(0,z.jsx)(xi,{size:14,className:`animate-spin`}):(0,z.jsx)(Pi,{size:14}),`Generate SQL`,(0,z.jsx)(`kbd`,{className:`kbd`,style:{marginLeft:4,opacity:.7},children:`⌘↵`})]}),s&&(0,z.jsx)(gm,{status:s})]})}),P.length>0&&(0,z.jsxs)(`div`,{style:{borderTop:`1px solid var(--border)`,flex:1,overflow:`auto`},children:[(0,z.jsx)(`div`,{style:{padding:`8px var(--pad-x)`},children:(0,z.jsxs)(`span`,{className:`muted`,style:{fontSize:11,fontWeight:600,textTransform:`uppercase`,letterSpacing:`0.04em`},children:[`History (`,P.length,`)`]})}),(0,z.jsx)(`div`,{children:P.slice(0,20).map(e=>(0,z.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,justifyContent:`space-between`,gap:8,padding:`6px var(--pad-x)`,cursor:`pointer`,fontSize:12,borderBottom:`1px solid var(--border)`},onClick:()=>te(e),children:[(0,z.jsx)(`span`,{style:{overflow:`hidden`,textOverflow:`ellipsis`,whiteSpace:`nowrap`,flex:1},children:e.question}),(0,z.jsx)(`span`,{className:`chip ${e.mode===`rag`?`red`:``}`,style:{flexShrink:0},children:e.mode}),(0,z.jsx)(`button`,{className:`btn ghost sm`,onClick:t=>{t.stopPropagation(),ne(e.id)},title:`Delete`,style:{flexShrink:0,padding:2},children:`×`})]},e.id))})]})]}),(0,z.jsx)(`div`,{style:{overflow:`auto`},children:c?(0,z.jsxs)(`div`,{style:{display:`grid`,gap:0},children:[(0,z.jsxs)(`section`,{style:{padding:`var(--pad-y) var(--pad-x)`,borderBottom:`1px solid var(--border)`},children:[(0,z.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,justifyContent:`space-between`,marginBottom:8},children:[(0,z.jsx)(`h3`,{style:{fontSize:13,fontWeight:600},children:`Generated SQL`}),c.sql&&(0,z.jsx)(fh,{value:c.sql})]}),c.sql?(0,z.jsx)(`pre`,{className:`sql-block`,children:c.sql}):(0,z.jsx)(ch,{text:`No SQL generated.`})]}),c.explain!==null&&c.explain!==void 0&&(0,z.jsxs)(`section`,{style:{padding:`var(--pad-y) var(--pad-x)`,borderBottom:`1px solid var(--border)`},children:[(0,z.jsx)(`h3`,{style:{fontSize:13,fontWeight:600,marginBottom:8},children:`Explain`}),(0,z.jsx)(`pre`,{className:`plain-block`,children:_h(c.explain)})]}),c.tenant?.enabled&&(0,z.jsxs)(`section`,{style:{padding:`var(--pad-y) var(--pad-x)`,borderBottom:`1px solid var(--border)`},children:[(0,z.jsx)(`h3`,{style:{fontSize:13,fontWeight:600,marginBottom:8},children:`Tenant Params`}),c.tenant.params.length>0?(0,z.jsxs)(`div`,{style:{padding:8,border:`1px solid var(--border)`,borderRadius:`var(--radius)`,fontSize:12},children:[(0,z.jsx)(`span`,{style:{fontWeight:600},children:`Positional params:`}),` `,(0,z.jsx)(`code`,{children:JSON.stringify(c.tenant.params)})]}):(0,z.jsx)(ch,{text:`No tenant params.`})]}),(0,z.jsxs)(`div`,{style:{padding:`var(--pad-y) var(--pad-x)`,borderBottom:`1px solid var(--border)`,display:`flex`,alignItems:`center`,gap:12},children:[(0,z.jsxs)(`button`,{className:`btn primary`,disabled:F.has(`execute`)||!c.sql,onClick:()=>void I(),children:[F.has(`execute`)?(0,z.jsx)(xi,{size:14,className:`animate-spin`}):(0,z.jsx)(Ei,{size:14}),`Execute Query`]}),N&&(0,z.jsx)(gm,{status:N})]}),M?.ok===!0&&(0,z.jsxs)(`section`,{style:{padding:`var(--pad-y) var(--pad-x)`},children:[(0,z.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,justifyContent:`space-between`,marginBottom:8},children:[(0,z.jsx)(`h3`,{style:{fontSize:13,fontWeight:600},children:`Results`}),M.truncated&&(0,z.jsx)(`span`,{className:`chip amber`,children:`Showing first 500 rows`})]}),M.columns&&M.rows?(0,z.jsx)(`div`,{style:{overflowX:`auto`},children:(0,z.jsxs)(`table`,{className:`tbl`,children:[(0,z.jsx)(`thead`,{children:(0,z.jsx)(`tr`,{children:M.columns.map(e=>(0,z.jsx)(`th`,{children:e},e))})}),(0,z.jsx)(`tbody`,{children:M.rows.map((e,t)=>(0,z.jsx)(`tr`,{children:e.map((e,t)=>(0,z.jsx)(`td`,{className:`mono`,style:{fontSize:11},children:e==null?(0,z.jsx)(`span`,{className:`muted`,children:`NULL`}):String(e)},t))},t))})]})}):(0,z.jsx)(ch,{text:`No results.`})]})]}):(0,z.jsx)(`div`,{style:{display:`flex`,alignItems:`center`,justifyContent:`center`,height:`100%`,padding:32},children:(0,z.jsx)(ch,{text:`Ask a question to generate SQL`})})})]})})]})}function _h(e){return typeof e==`string`?e:JSON.stringify(e,null,2)}function vh(){let{workspace:e}=yr(),{ragStatus:t}=Mr();return e?(0,z.jsxs)(`main`,{className:`main-pane`,children:[(0,z.jsx)(`div`,{className:`main-hd`,children:(0,z.jsxs)(`div`,{className:`main-title`,children:[(0,z.jsxs)(`h1`,{children:[(0,z.jsx)(Mi,{size:18,style:{display:`inline`,marginRight:8}}),`Settings`]}),(0,z.jsx)(`div`,{className:`main-sub`,children:`Workspace configuration and diagnostics`})]})}),(0,z.jsx)(`div`,{className:`main-body`,children:(0,z.jsxs)(`div`,{className:`stack`,style:{padding:`var(--pad-y) var(--pad-x)`},children:[(0,z.jsxs)(`section`,{className:`card`,children:[(0,z.jsx)(`div`,{className:`card-hd`,children:(0,z.jsx)(`h3`,{children:`Workspace`})}),(0,z.jsx)(`div`,{className:`card-bd`,children:(0,z.jsxs)(`dl`,{className:`definition-list`,children:[(0,z.jsx)(`dt`,{children:`Schema ID`}),(0,z.jsx)(`dd`,{children:e.schemaId}),(0,z.jsx)(`dt`,{children:`Schema path`}),(0,z.jsx)(`dd`,{children:e.schemaDir}),(0,z.jsx)(`dt`,{children:`AI provider`}),(0,z.jsx)(`dd`,{children:e.aiProvider}),(0,z.jsx)(`dt`,{children:`Model`}),(0,z.jsx)(`dd`,{children:e.model}),(0,z.jsx)(`dt`,{children:`AI suggestions`}),(0,z.jsx)(`dd`,{children:e.aiConfigured?`Configured`:`Not configured`})]})})]}),(0,z.jsxs)(`section`,{className:`card`,children:[(0,z.jsx)(`div`,{className:`card-hd`,children:(0,z.jsx)(`h3`,{children:`RAG Store`})}),(0,z.jsx)(`div`,{className:`card-bd`,children:t?(0,z.jsxs)(`dl`,{className:`definition-list`,children:[(0,z.jsx)(`dt`,{children:`Store`}),(0,z.jsx)(`dd`,{children:t.store.kind}),(0,z.jsx)(`dt`,{children:`Lock file`}),(0,z.jsx)(`dd`,{children:t.files.lock?`present`:`missing`}),t.store.kind===`file`&&(0,z.jsxs)(z.Fragment,{children:[(0,z.jsx)(`dt`,{children:`Base path`}),(0,z.jsx)(`dd`,{children:t.store.basePath??`n/a`}),(0,z.jsx)(`dt`,{children:`Embeddings JSON`}),(0,z.jsx)(`dd`,{children:t.files.embeddingsJson?`present`:`missing`}),(0,z.jsx)(`dt`,{children:`Embeddings binary`}),(0,z.jsx)(`dd`,{children:t.files.embeddingsBin?`present`:`missing`})]}),t.store.kind===`pgvector`&&(0,z.jsxs)(z.Fragment,{children:[(0,z.jsx)(`dt`,{children:`Table`}),(0,z.jsx)(`dd`,{children:t.store.table??`askdb_rag_chunks`}),(0,z.jsx)(`dt`,{children:`Index strategy`}),(0,z.jsx)(`dd`,{children:t.store.indexStrategy??`default`})]}),t.store.kind===`memory`&&(0,z.jsxs)(z.Fragment,{children:[(0,z.jsx)(`dt`,{children:`Persistence`}),(0,z.jsx)(`dd`,{children:`In-process only`})]})]}):(0,z.jsx)(ch,{text:`RAG status is unavailable.`})})]}),(0,z.jsxs)(`section`,{className:`card`,children:[(0,z.jsx)(`div`,{className:`card-hd`,children:(0,z.jsx)(`h3`,{children:`Schema Warnings`})}),(0,z.jsx)(`div`,{className:`card-bd`,children:e.warnings.length>0?(0,z.jsx)(`div`,{style:{display:`grid`,gap:8},children:e.warnings.map((e,t)=>(0,z.jsx)(`pre`,{className:`warning-block`,children:typeof e==`string`?e:JSON.stringify(e,null,2)},t))}):(0,z.jsx)(ch,{text:`No schema warnings.`})})]})]})})]}):null}function yh(){return(0,z.jsx)(Xn,{children:(0,z.jsx)(Sr,{children:(0,z.jsx)(Fr,{children:(0,z.jsx)(bh,{})})})})}function bh(){let{load:e,loadState:t,suggestionDialog:n,setSuggestionDialog:r,applySuggestion:a}=yr(),{refreshRagStatus:o,ragAvailable:s}=Mr();return(0,x.useEffect)(()=>{e().then(()=>void o())},[e,o]),t.kind===`loading`?(0,z.jsx)(`div`,{className:`app-shell`,style:{display:`flex`,alignItems:`center`,justifyContent:`center`},children:(0,z.jsx)(`p`,{style:{color:`var(--ink-400)`,fontSize:13},children:`Loading workspace…`})}):t.kind===`error`?(0,z.jsx)(`div`,{className:`app-shell`,style:{display:`flex`,alignItems:`center`,justifyContent:`center`},children:(0,z.jsxs)(`div`,{style:{textAlign:`center`},children:[(0,z.jsx)(`p`,{style:{color:`var(--red-600)`,fontWeight:600,marginBottom:8},children:`Failed to load workspace`}),(0,z.jsx)(`p`,{style:{color:`var(--ink-400)`,fontSize:13},children:t.message})]})}):(0,z.jsxs)(Br,{ragAvailable:s,children:[(0,z.jsxs)(Hp,{defaultOpen:!0,className:`!min-h-0 h-svh`,style:{"--sidebar-width":`var(--nav-w)`},children:[(0,z.jsx)(sm,{}),(0,z.jsxs)(Gp,{className:`min-h-0 overflow-hidden`,children:[(0,z.jsxs)(`header`,{className:`topbar`,children:[(0,z.jsx)(Wp,{className:`-ml-1`}),(0,z.jsx)(Sp,{orientation:`vertical`,className:`mr-2 !h-4`}),(0,z.jsx)(rm,{})]}),(0,z.jsx)(`div`,{className:`app-content`,children:(0,z.jsxs)(It,{children:[(0,z.jsx)(Pt,{path:`/`,element:(0,z.jsx)(Mt,{to:`/overview`,replace:!0})}),(0,z.jsx)(Pt,{path:`/overview`,element:(0,z.jsx)(lm,{})}),(0,z.jsx)(Pt,{path:`/tables`,element:(0,z.jsx)(mm,{}),children:(0,z.jsxs)(Pt,{path:`:schema/:name`,element:(0,z.jsx)(_m,{}),children:[(0,z.jsx)(Pt,{index:!0,element:(0,z.jsx)(Mt,{to:`enrichment`,replace:!0})}),(0,z.jsx)(Pt,{path:`enrichment`,element:(0,z.jsx)(Fm,{})}),(0,z.jsx)(Pt,{path:`schema`,element:(0,z.jsx)(Rm,{})}),(0,z.jsx)(Pt,{path:`sensitivity`,element:(0,z.jsx)(zm,{})})]})}),(0,z.jsx)(Pt,{path:`/concepts`,element:(0,z.jsx)(Wm,{})}),(0,z.jsx)(Pt,{path:`/tenancy`,element:(0,z.jsx)(Xm,{})}),(0,z.jsx)(Pt,{path:`/rag-index`,element:(0,z.jsx)(lh,{})}),(0,z.jsx)(Pt,{path:`/playground`,element:(0,z.jsx)(gh,{})}),(0,z.jsx)(Pt,{path:`/settings`,element:(0,z.jsx)(vh,{})})]})})]})]}),n&&(0,z.jsx)(cm,{dialog:n,onApply:a,onClose:()=>r(null)})]})}var xh=document.getElementById(`root`);if(!xh)throw Error(`Missing #root element.`);(0,Kn.createRoot)(xh).render((0,z.jsx)(x.StrictMode,{children:(0,z.jsx)(Cn,{children:(0,z.jsx)(yh,{})})}));
|
|
68
|
+
`})}function C(){f&&a(f,p||void 0)}let w=h&&g&&_.trim();return u===`choose`?(0,z.jsxs)(z.Fragment,{children:[(0,z.jsx)(`div`,{className:`main-hd`,children:(0,z.jsxs)(`div`,{className:`main-title`,children:[(0,z.jsxs)(`h1`,{children:[(0,z.jsx)(Ni,{size:18,style:{display:`inline`,marginRight:8}}),`Enable Multi-Tenancy`]}),(0,z.jsx)(`div`,{className:`main-sub`,children:`Configure tenant isolation for your schema`})]})}),d&&(0,z.jsx)(gm,{status:d}),(0,z.jsx)(`div`,{className:`main-body`,children:(0,z.jsx)(`div`,{className:`stack`,style:{padding:`var(--pad-y) var(--pad-x)`},children:(0,z.jsxs)(`div`,{className:`grid-2`,children:[(0,z.jsx)(`button`,{type:`button`,className:`card`,style:{cursor:`pointer`,textAlign:`left`,border:`2px dashed var(--border)`},disabled:!n||d?.kind===`loading`,onClick:()=>void b(),children:(0,z.jsxs)(`div`,{className:`card-bd`,children:[(0,z.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:8,marginBottom:12},children:[d?.kind===`loading`?(0,z.jsx)(xi,{size:20,className:`animate-spin`,style:{color:`var(--red-600)`}}):(0,z.jsx)(Pi,{size:20,style:{color:`var(--red-600)`}}),(0,z.jsx)(`h3`,{style:{fontWeight:600},children:`Draft with AI`})]}),(0,z.jsx)(`p`,{className:`muted`,style:{fontSize:13},children:d?.kind===`loading`?`Analyzing your schema...`:`Let AI analyze your schema and propose a complete tenant policy. You will review before saving.`}),!n&&(0,z.jsx)(`p`,{style:{marginTop:8,fontSize:12,color:`var(--red-600)`},children:`Configure an AI provider to use this option.`})]})}),(0,z.jsx)(`button`,{type:`button`,className:`card`,style:{cursor:`pointer`,textAlign:`left`,border:`2px dashed var(--border)`},onClick:()=>l({type:`set_mode`,payload:`manual`}),children:(0,z.jsxs)(`div`,{className:`card-bd`,children:[(0,z.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:8,marginBottom:12},children:[(0,z.jsx)(Mi,{size:20,style:{color:`var(--ink-400)`}}),(0,z.jsx)(`h3`,{style:{fontWeight:600},children:`Configure manually`})]}),(0,z.jsx)(`p`,{className:`muted`,style:{fontSize:13},children:`Pick the tenant root table and column yourself, then review before saving.`})]})})]})})})]}):u===`manual`?(0,z.jsxs)(z.Fragment,{children:[(0,z.jsxs)(`div`,{className:`main-hd`,children:[(0,z.jsxs)(`div`,{className:`main-title`,children:[(0,z.jsxs)(`h1`,{children:[(0,z.jsx)(Ni,{size:18,style:{display:`inline`,marginRight:8}}),`Manual Configuration`]}),(0,z.jsx)(`div`,{className:`main-sub`,children:`Configure the basics, then review before saving`})]}),(0,z.jsx)(`div`,{className:`main-actions`,children:(0,z.jsx)(`button`,{type:`button`,className:`btn`,onClick:()=>l({type:`set_mode`,payload:`choose`}),children:`Back`})})]}),(0,z.jsx)(`div`,{className:`main-body`,children:(0,z.jsxs)(`div`,{className:`stack`,style:{padding:`var(--pad-y) var(--pad-x)`},children:[(0,z.jsxs)(`section`,{className:`card`,children:[(0,z.jsx)(`div`,{className:`card-hd`,children:(0,z.jsx)(`h3`,{children:`Tenant Root`})}),(0,z.jsx)(`div`,{className:`card-bd`,children:(0,z.jsxs)(`div`,{style:{display:`grid`,gap:16},children:[(0,z.jsx)($,{label:`Root table`,description:`The table whose rows represent tenants.`,children:(0,z.jsxs)(`select`,{className:`h-9 w-full rounded-md border border-input bg-background px-3 text-sm outline-none focus-visible:ring-2 focus-visible:ring-ring`,value:h,onChange:t=>{let n=t.target.value;l({type:`select_root_table`,tableId:n,label:e.find(e=>e.physical.id===n)?.physical.name??``})},children:[(0,z.jsx)(`option`,{value:``,children:`Select a table...`}),e.map(e=>(0,z.jsxs)(`option`,{value:e.physical.id,children:[e.physical.schema,`.`,e.physical.name]},e.physical.id))]})}),h&&(0,z.jsx)($,{label:`Tenant ID column`,description:`The column that uniquely identifies a tenant.`,children:(0,z.jsxs)(`select`,{className:`h-9 w-full rounded-md border border-input bg-background px-3 text-sm outline-none focus-visible:ring-2 focus-visible:ring-ring`,value:g,onChange:e=>l({type:`set_rootTenantIdColumn`,payload:e.target.value}),children:[(0,z.jsx)(`option`,{value:``,children:`Select a column...`}),y.map(e=>(0,z.jsxs)(`option`,{value:e.name,children:[e.name,` (`,e.type,e.primaryKey?`, PK`:``,`)`]},e.id))]})}),(0,z.jsx)($,{label:`Label`,description:`e.g. "Organization" or "Company"`,children:(0,z.jsx)(Sp,{value:_,placeholder:`e.g. Organization`,onChange:e=>l({type:`set_rootLabel`,payload:e.target.value})})})]})})]}),(0,z.jsxs)(`section`,{className:`card`,children:[(0,z.jsx)(`div`,{className:`card-hd`,children:(0,z.jsx)(`h3`,{children:`Enforcement Mode`})}),(0,z.jsxs)(`div`,{className:`card-bd`,children:[(0,z.jsxs)(`fieldset`,{className:`toggle-seg`,children:[(0,z.jsx)(`button`,{type:`button`,className:m===`strict`?`active`:``,onClick:()=>l({type:`set_enforcement`,payload:`strict`}),children:`Strict`}),(0,z.jsx)(`button`,{type:`button`,className:m===`warn`?`active`:``,onClick:()=>l({type:`set_enforcement`,payload:`warn`}),children:`Warn`})]}),(0,z.jsx)(`p`,{className:`muted tiny`,style:{marginTop:8},children:m===`strict`?`Queries touching unknown (unscoped) tables will be rejected.`:`Queries touching unknown tables will succeed but emit warnings.`})]})]}),(0,z.jsxs)(`section`,{className:`card`,children:[(0,z.jsx)(`div`,{className:`card-hd`,children:(0,z.jsx)(`h3`,{children:`Global Tables (optional)`})}),(0,z.jsxs)(`div`,{className:`card-bd`,children:[(0,z.jsx)(`p`,{className:`muted`,style:{fontSize:13,marginBottom:8},children:`Global tables are shared across all tenants and never filtered.`}),(0,z.jsx)(`div`,{style:{display:`flex`,flexWrap:`wrap`,gap:8},children:e.map(e=>e.physical.id===h?null:(0,z.jsxs)(`label`,{className:`chunk-toggle`,children:[(0,z.jsx)(`input`,{type:`checkbox`,checked:v.includes(e.physical.id),onChange:t=>l({type:`toggle_global_table`,tableId:e.physical.id,checked:t.target.checked})}),e.physical.schema,`.`,e.physical.name]},e.physical.id))})]})]}),(0,z.jsx)(`div`,{style:{display:`flex`,justifyContent:`flex-end`},children:(0,z.jsxs)(`button`,{type:`button`,className:`btn primary`,onClick:S,disabled:!w,children:[(0,z.jsx)(ui,{size:14}),` Review & Confirm`]})})]})})]}):(0,z.jsx)(Wm,{tables:e,frontmatter:f,body:p,busy:r,saveStatus:s,onFrontmatterChange:e=>l({type:`set_draftFrontmatter`,payload:e}),onBodyChange:e=>l({type:`set_draftBody`,payload:e}),onConfirm:C,onBack:()=>l({type:`set_mode`,payload:`choose`})})}function Wm({tables:e,frontmatter:t,body:n,busy:r,saveStatus:a,onFrontmatterChange:o,onBodyChange:s,onConfirm:c,onBack:l,title:u=`Review Tenant Policy`,backLabel:d=`Start Over`,confirmLabel:f=`Confirm & Save`,badgeLabel:p=`Draft`}){function m(e){o({...t,enforcement:e})}function h(e,n){let r=[...t.roots];r[e]={...r[e],label:n},o({...t,roots:r})}function g(e){let n=t.roots.filter((t,n)=>n!==e);n.length!==0&&o({...t,roots:n})}function _(e){let n=(t.hierarchy??[]).filter((t,n)=>n!==e);o({...t,hierarchy:n.length>0?n:void 0})}function v(e){let n=(t.scopedTables??[]).filter((t,n)=>n!==e);o({...t,scopedTables:n.length>0?n:void 0})}function y(e){let n=(t.polymorphicTables??[]).filter((t,n)=>n!==e);o({...t,polymorphicTables:n.length>0?n:void 0})}function b(e){let n=t.globalTables??[],r=n.includes(e)?n.filter(t=>t!==e):[...n,e];o({...t,globalTables:r.length>0?r:void 0})}let x=new Set(t.roots.map(e=>e.id)),S=new Set((t.scopedTables??[]).map(e=>e.id)),C=new Set((t.polymorphicTables??[]).map(e=>e.id)),w=new Set(t.globalTables??[]);return(0,z.jsxs)(z.Fragment,{children:[(0,z.jsxs)(`div`,{className:`main-hd`,children:[(0,z.jsxs)(`div`,{className:`main-title`,children:[(0,z.jsxs)(`h1`,{children:[(0,z.jsx)(Ni,{size:18,style:{display:`inline`,marginRight:8}}),u]}),(0,z.jsx)(`div`,{className:`main-sub`,children:(0,z.jsx)(Q,{variant:`warning`,children:p})})]}),(0,z.jsxs)(`div`,{className:`main-actions`,children:[(0,z.jsxs)(`button`,{type:`button`,className:`btn`,onClick:l,children:[(0,z.jsx)(ki,{size:14}),` `,d]}),(0,z.jsxs)(`button`,{type:`button`,className:`btn primary`,onClick:c,disabled:r.has(`save-tenant-policy`)||t.roots.length===0,children:[r.has(`save-tenant-policy`)?(0,z.jsx)(xi,{size:14,className:`animate-spin`}):(0,z.jsx)(Ai,{size:14}),f]})]})]}),a&&(0,z.jsx)(gm,{status:a}),(0,z.jsx)(`div`,{className:`main-body`,children:(0,z.jsxs)(`div`,{className:`stack`,style:{padding:`var(--pad-y) var(--pad-x)`},children:[(0,z.jsxs)(`section`,{className:`card`,children:[(0,z.jsx)(`div`,{className:`card-hd`,children:(0,z.jsx)(`h3`,{children:`Enforcement Mode`})}),(0,z.jsxs)(`div`,{className:`card-bd`,children:[(0,z.jsxs)(`fieldset`,{className:`toggle-seg`,children:[(0,z.jsx)(`button`,{type:`button`,className:t.enforcement===`strict`?`active`:``,onClick:()=>m(`strict`),children:`Strict`}),(0,z.jsx)(`button`,{type:`button`,className:t.enforcement===`warn`?`active`:``,onClick:()=>m(`warn`),children:`Warn`})]}),(0,z.jsx)(`p`,{className:`muted tiny`,style:{marginTop:8},children:t.enforcement===`strict`?`Queries touching unknown (unscoped) tables will be rejected.`:`Queries touching unknown tables will succeed but emit warnings.`})]})]}),(0,z.jsxs)(`section`,{className:`card`,children:[(0,z.jsx)(`div`,{className:`card-hd`,children:(0,z.jsxs)(`h3`,{children:[`Tenant Roots (`,t.roots.length,`)`]})}),(0,z.jsx)(`div`,{className:`card-bd`,children:(0,z.jsx)(`div`,{style:{display:`grid`,gap:12},children:t.roots.map((e,n)=>(0,z.jsxs)(`div`,{style:{border:`1px solid var(--border)`,borderRadius:`var(--radius)`,padding:12},children:[(0,z.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,justifyContent:`space-between`,gap:8},children:[(0,z.jsxs)(`div`,{children:[(0,z.jsx)(`span`,{className:`mono`,style:{fontWeight:600,fontSize:13},children:e.id}),(0,z.jsxs)(`div`,{style:{marginTop:4,display:`flex`,flexWrap:`wrap`,gap:4},children:[(0,z.jsxs)(Q,{variant:`outline`,children:[`col: `,e.tenantIdColumn]}),e.parent&&(0,z.jsxs)(Q,{variant:`outline`,children:[`parent: `,e.parent.root,` via `,e.parent.foreignKey]})]})]}),t.roots.length>1&&(0,z.jsx)(`button`,{type:`button`,className:`btn ghost sm`,onClick:()=>g(n),title:`Remove root`,children:`×`})]}),(0,z.jsx)(`div`,{style:{marginTop:8},children:(0,z.jsx)($,{label:`Label`,description:`Human-readable name for this tenant root.`,children:(0,z.jsx)(Sp,{value:e.label,onChange:e=>h(n,e.target.value)})})})]},e.id))})})]}),(t.hierarchy??[]).length>0&&(0,z.jsxs)(`section`,{className:`card`,children:[(0,z.jsx)(`div`,{className:`card-hd`,children:(0,z.jsxs)(`h3`,{children:[`Hierarchy Edges (`,t.hierarchy.length,`)`]})}),(0,z.jsx)(`div`,{className:`card-bd`,children:(0,z.jsx)(`div`,{style:{display:`grid`,gap:8},children:t.hierarchy.map(e=>(0,z.jsxs)(`div`,{className:`policy-edge-card`,children:[(0,z.jsxs)(`div`,{children:[(0,z.jsx)(`code`,{children:e.parent}),(0,z.jsx)(`span`,{className:`muted`,style:{margin:`0 8px`},children:`→`}),(0,z.jsx)(`code`,{children:e.child}),(0,z.jsxs)(`div`,{className:`muted tiny`,style:{marginTop:4},children:[`FK: `,e.foreignKey]})]}),(0,z.jsx)(`button`,{type:`button`,className:`btn ghost sm`,onClick:()=>_(i),title:`Remove`,children:`×`})]},`${e.parent}-${e.child}`))})})]}),(t.scopedTables??[]).length>0&&(0,z.jsxs)(`section`,{className:`card`,children:[(0,z.jsx)(`div`,{className:`card-hd`,children:(0,z.jsxs)(`h3`,{children:[`Scoped Tables (`,t.scopedTables.length,`)`]})}),(0,z.jsx)(`div`,{className:`card-bd`,children:(0,z.jsx)(`div`,{style:{display:`grid`,gap:8},children:t.scopedTables.map((e,t)=>(0,z.jsxs)(`div`,{style:{display:`flex`,alignItems:`start`,justifyContent:`space-between`,gap:8,border:`1px solid var(--border)`,borderRadius:`var(--radius)`,padding:12},children:[(0,z.jsxs)(`div`,{children:[(0,z.jsx)(`span`,{className:`mono`,style:{fontWeight:600,fontSize:13},children:e.id}),(0,z.jsx)(`div`,{style:{marginTop:4,display:`grid`,gap:4},children:e.scopeThrough.map((e,t)=>(0,z.jsxs)(`p`,{className:`muted tiny`,children:[`via `,(0,z.jsx)(Q,{variant:`outline`,children:e.root}),` `,`column`in e?(0,z.jsxs)(`span`,{children:[`column `,(0,z.jsx)(`code`,{children:e.column})]}):(0,z.jsxs)(`span`,{children:[`join `,e.join.map(e=>`${e.from} -> ${e.to}`).join(`, `)]})]},t))})]}),(0,z.jsx)(`button`,{type:`button`,className:`btn ghost sm`,onClick:()=>v(t),title:`Remove`,children:`×`})]},e.id))})})]}),(t.polymorphicTables??[]).length>0&&(0,z.jsxs)(`section`,{className:`card`,children:[(0,z.jsx)(`div`,{className:`card-hd`,children:(0,z.jsxs)(`h3`,{children:[`Polymorphic Tables (`,t.polymorphicTables.length,`)`]})}),(0,z.jsx)(`div`,{className:`card-bd`,children:(0,z.jsx)(`div`,{style:{display:`grid`,gap:8},children:t.polymorphicTables.map((e,t)=>(0,z.jsxs)(`div`,{style:{display:`flex`,alignItems:`start`,justifyContent:`space-between`,gap:8,border:`1px solid var(--border)`,borderRadius:`var(--radius)`,padding:12},children:[(0,z.jsxs)(`div`,{children:[(0,z.jsx)(`span`,{className:`mono`,style:{fontWeight:600,fontSize:13},children:e.id}),(0,z.jsxs)(`p`,{className:`muted tiny`,style:{marginTop:4},children:[`Type: `,(0,z.jsx)(`code`,{children:e.typeColumn}),` · ID: `,(0,z.jsx)(`code`,{children:e.idColumn})]}),(0,z.jsx)(`div`,{style:{marginTop:4,display:`flex`,flexWrap:`wrap`,gap:4},children:Object.entries(e.mapping).map(([e,t])=>(0,z.jsxs)(Q,{variant:`outline`,children:[e,` → `,t]},e))})]}),(0,z.jsx)(`button`,{type:`button`,className:`btn ghost sm`,onClick:()=>y(t),title:`Remove`,children:`×`})]},e.id))})})]}),(0,z.jsxs)(`section`,{className:`card`,children:[(0,z.jsx)(`div`,{className:`card-hd`,children:(0,z.jsx)(`h3`,{children:`Global Tables`})}),(0,z.jsxs)(`div`,{className:`card-bd`,children:[(0,z.jsx)(`p`,{className:`muted`,style:{fontSize:13,marginBottom:8},children:`Global tables are shared across all tenants and never filtered.`}),(0,z.jsx)(`div`,{style:{display:`flex`,flexWrap:`wrap`,gap:8},children:e.map(e=>x.has(e.physical.id)||S.has(e.physical.id)||C.has(e.physical.id)?null:(0,z.jsxs)(`label`,{className:`chunk-toggle`,children:[(0,z.jsx)(`input`,{type:`checkbox`,checked:w.has(e.physical.id),onChange:()=>b(e.physical.id)}),e.physical.schema,`.`,e.physical.name]},e.physical.id))})]})]}),(0,z.jsxs)(`section`,{className:`card`,children:[(0,z.jsx)(`div`,{className:`card-hd`,children:(0,z.jsx)(`h3`,{children:`Documentation (body)`})}),(0,z.jsxs)(`div`,{className:`card-bd`,children:[(0,z.jsx)(`p`,{className:`muted`,style:{fontSize:13,marginBottom:8},children:`Optional markdown body explaining the tenant policy.`}),(0,z.jsx)(Sm,{className:`min-h-48 font-mono text-xs`,value:n,onChange:e=>s(e.target.value)})]})]}),(0,z.jsxs)(`section`,{className:`card`,children:[(0,z.jsx)(`div`,{className:`card-hd`,children:(0,z.jsx)(`h3`,{children:`Frontmatter Preview`})}),(0,z.jsx)(`div`,{className:`card-bd`,children:(0,z.jsx)(`pre`,{className:`plain-block`,style:{fontSize:12},children:JSON.stringify(t,null,2)})})]})]})})]})}function Gm({title:e,count:t,children:n,defaultOpen:r=!0}){let[a,o]=(0,x.useState)(r);return(0,z.jsxs)(`section`,{children:[(0,z.jsxs)(`button`,{type:`button`,className:`collapsible-btn`,onClick:()=>o(!a),children:[a?(0,z.jsx)(li,{size:14}):(0,z.jsx)(ui,{size:14}),e,t==null?``:` (${t})`]}),a&&n]})}function Km({label:e,count:t,variant:n}){return(0,z.jsxs)(`div`,{className:`card`,style:{textAlign:`center`,padding:12,background:n===`primary`?`var(--red-50)`:n===`secondary`?`var(--surface-2)`:`#fef3c7`},children:[(0,z.jsx)(`div`,{style:{fontSize:24,fontWeight:700},children:t}),(0,z.jsx)(`div`,{className:`muted tiny`,children:e})]})}function qm(e){return typeof e==`string`?e:JSON.stringify(e,null,2)}function Jm(e){return{schemaId:e.schemaId,enforcement:e.enforcement,roots:Ym(e.roots),...e.hierarchy.length>0?{hierarchy:Ym(e.hierarchy)}:{},...e.scopedTables.length>0?{scopedTables:Ym(e.scopedTables)}:{},...e.polymorphicTables.length>0?{polymorphicTables:Ym(e.polymorphicTables)}:{},...e.globalTables.length>0?{globalTables:[...e.globalTables]}:{}}}function Ym(e){return JSON.parse(JSON.stringify(e))}function Xm({text:e}){return(0,z.jsx)(`p`,{className:`rounded-md border border-dashed border-border px-3 py-6 text-center text-sm text-muted-foreground`,children:e})}function Zm(){let{workspace:e}=yr(),{ragStatus:t,ragMessage:n,ragQuestion:r,setRagQuestion:a,ragK:o,setRagK:s,ragTypes:c,setRagTypes:l,ragResults:u,ragIndexUsage:d,busy:f,allChunkTypes:p,refreshRagStatus:m,handleBuildRag:h,handleQueryRag:g}=Mr();if(!e)return null;let _=!t?.hasIndex||t.stale||f.has(`rag-query`);return(0,z.jsxs)(`main`,{className:`main-pane`,children:[(0,z.jsxs)(`div`,{className:`main-hd`,children:[(0,z.jsxs)(`div`,{className:`main-title`,children:[(0,z.jsxs)(`h1`,{children:[(0,z.jsx)(Pi,{size:18,style:{display:`inline`,marginRight:8}}),`RAG Index`]}),(0,z.jsx)(`div`,{className:`main-sub`,children:`Retrieval-augmented generation index and query debugger`})]}),(0,z.jsxs)(`div`,{className:`main-actions`,children:[(0,z.jsxs)(`button`,{type:`button`,className:`btn`,onClick:()=>void m(),children:[(0,z.jsx)(Oi,{size:14}),` Refresh`]}),(0,z.jsxs)(`button`,{type:`button`,className:`btn primary`,onClick:()=>void h(),disabled:f.has(`rag-build`),children:[f.has(`rag-build`)?(0,z.jsx)(xi,{size:14,className:`animate-spin`}):(0,z.jsx)(ci,{size:14}),`Build Index`]})]})]}),(0,z.jsx)(`div`,{className:`main-body`,children:(0,z.jsxs)(`div`,{className:`stack`,style:{padding:`var(--pad-y) var(--pad-x)`},children:[n&&(0,z.jsx)(_m,{status:n}),t?(0,z.jsxs)(`div`,{className:`grid-4`,children:[(0,z.jsxs)(`div`,{className:`card stat-card`,children:[(0,z.jsx)(`div`,{className:`stat-label`,children:`Chunks`}),(0,z.jsx)(`div`,{className:`stat-num`,children:gr(t.chunksTotal)})]}),(0,z.jsxs)(`div`,{className:`card stat-card`,children:[(0,z.jsx)(`div`,{className:`stat-label`,children:`Indexed`}),(0,z.jsx)(`div`,{className:`stat-num`,children:gr(t.chunksIndexed)})]}),(0,z.jsxs)(`div`,{className:`card stat-card`,children:[(0,z.jsx)(`div`,{className:`stat-label`,children:`Sensitive excluded`}),(0,z.jsx)(`div`,{className:`stat-num`,children:t.sensitiveExcluded})]}),(0,z.jsxs)(`div`,{className:`card stat-card`,children:[(0,z.jsx)(`div`,{className:`stat-label`,children:`Sensitive included`}),(0,z.jsx)(`div`,{className:`stat-num`,children:t.sensitiveIncluded})]})]}):(0,z.jsx)(Xm,{text:`RAG status is unavailable.`}),t&&(0,z.jsxs)(`section`,{className:`card`,children:[(0,z.jsx)(`div`,{className:`card-hd`,children:(0,z.jsx)(`h3`,{children:`Index Details`})}),(0,z.jsxs)(`div`,{className:`card-bd`,children:[(0,z.jsxs)(`div`,{style:{display:`flex`,flexWrap:`wrap`,gap:8,marginBottom:12},children:[(0,z.jsx)(Q,{variant:t.hasIndex?`secondary`:`warning`,children:t.hasIndex?`Index present`:`No index`}),(0,z.jsx)(Q,{variant:t.stale?`warning`:`secondary`,children:t.stale?`Stale`:`Fresh`}),(0,z.jsx)(Q,{variant:t.embedder.configured?`secondary`:`warning`,children:t.embedder.label})]}),(0,z.jsxs)(`div`,{style:{display:`grid`,gap:4,fontSize:12,color:`var(--ink-400)`},children:[(0,z.jsxs)(`span`,{children:[`Expected: `,t.expectedEmbedderId]}),(0,z.jsxs)(`span`,{children:[`Indexed: `,t.embedder.indexedId??`none`]}),(0,z.jsxs)(`span`,{children:[`Dimensions: `,t.dimensions,` / expected `,t.expectedDimensions]}),(0,z.jsxs)(`span`,{children:[`Updated: `,t.updatedAt??`never`]}),(0,z.jsxs)(`span`,{children:[`Store: `,t.store.kind]})]}),(0,z.jsx)(`div`,{className:`bar`,style:{marginTop:14},children:(0,z.jsx)(`i`,{style:{width:t.chunksTotal>0?`${Math.round(t.chunksIndexed/t.chunksTotal*100)}%`:`0%`}})})]})]}),(0,z.jsxs)(`section`,{className:`card`,children:[(0,z.jsx)(`div`,{className:`card-hd`,children:(0,z.jsx)(`h3`,{children:`Query Debugger`})}),(0,z.jsx)(`div`,{className:`card-bd`,children:(0,z.jsxs)(`div`,{style:{display:`grid`,gap:12},children:[(0,z.jsx)($,{label:`Question`,children:(0,z.jsx)(Sm,{value:r,onChange:e=>a(e.target.value),placeholder:`Which customers placed orders last month?`})}),(0,z.jsxs)(`div`,{style:{display:`grid`,gap:12,gridTemplateColumns:`120px 1fr`},children:[(0,z.jsx)($,{label:`Top K`,children:(0,z.jsx)(Sp,{min:1,max:25,type:`number`,value:o,onChange:e=>s(Number(e.target.value))})}),(0,z.jsxs)(`div`,{style:{display:`grid`,gap:6},children:[(0,z.jsx)(`span`,{className:`muted`,style:{fontSize:12,fontWeight:600,textTransform:`uppercase`,letterSpacing:`0.04em`},children:`Chunk types`}),(0,z.jsx)(`div`,{style:{display:`flex`,flexWrap:`wrap`,gap:8},children:p.map(e=>(0,z.jsxs)(`label`,{className:`chunk-toggle`,children:[(0,z.jsx)(`input`,{checked:c.includes(e),type:`checkbox`,onChange:t=>{t.target.checked?l([...c,e]):l(c.filter(t=>t!==e))}}),e]},e))})]})]}),(0,z.jsxs)(`button`,{type:`button`,className:`btn primary`,disabled:_,onClick:()=>void g(),children:[f.has(`rag-query`)?(0,z.jsx)(xi,{size:14,className:`animate-spin`}):(0,z.jsx)(ji,{size:14}),`Query RAG`]}),(0,z.jsx)($m,{title:`Last Index Usage`,usage:d}),(0,z.jsx)($m,{title:`Last Query Usage`,usage:u?.usage??null})]})})]}),(0,z.jsx)(Qm,{chunks:u?.results??[],emptyText:`No chunks retrieved yet.`})]})})]})}function Qm({chunks:e,emptyText:t}){return(0,z.jsxs)(`section`,{className:`card`,children:[(0,z.jsx)(`div`,{className:`card-hd`,children:(0,z.jsx)(`h3`,{children:`Retrieved Chunks`})}),(0,z.jsx)(`div`,{className:`card-bd`,children:e.length>0?(0,z.jsx)(`div`,{style:{display:`grid`,gap:12},children:e.map(e=>(0,z.jsxs)(`article`,{className:`chunk-card`,children:[(0,z.jsxs)(`div`,{style:{display:`flex`,alignItems:`start`,justifyContent:`space-between`,gap:12},children:[(0,z.jsxs)(`div`,{children:[(0,z.jsxs)(`div`,{style:{display:`flex`,flexWrap:`wrap`,alignItems:`center`,gap:8},children:[(0,z.jsx)(`h4`,{style:{fontSize:13,fontWeight:600,wordBreak:`break-all`},children:e.id}),(0,z.jsx)(Q,{variant:`outline`,children:e.type}),e.sensitive&&(0,z.jsx)(Q,{variant:`danger`,children:`sensitive`})]}),(0,z.jsxs)(`p`,{className:`muted tiny`,style:{marginTop:4,wordBreak:`break-all`},children:[`refs: `,e.refs.length>0?e.refs.join(`, `):`none`]})]}),(0,z.jsx)(Q,{variant:`secondary`,children:e.score.toFixed(3)})]}),(0,z.jsx)(`pre`,{className:`chunk-text`,children:e.text})]},e.id))}):(0,z.jsx)(Xm,{text:t})})]})}function $m({title:e,usage:t}){if(!t)return null;let n=t.promptTokens??t.embeddingTokens;return(0,z.jsxs)(`section`,{className:`usage-summary`,"aria-label":e,children:[(0,z.jsx)(`h3`,{children:e}),(0,z.jsxs)(`dl`,{className:`usage-grid`,children:[n!==null&&(0,z.jsxs)(`div`,{children:[(0,z.jsx)(`dt`,{children:t.embeddingTokens===null?`Prompt`:`Embeddings`}),(0,z.jsx)(`dd`,{children:gr(n)})]}),t.completionTokens!==null&&(0,z.jsxs)(`div`,{children:[(0,z.jsx)(`dt`,{children:`Completion`}),(0,z.jsx)(`dd`,{children:gr(t.completionTokens)})]}),(0,z.jsxs)(`div`,{className:`usage-total`,children:[(0,z.jsx)(`dt`,{children:`Total`}),(0,z.jsx)(`dd`,{children:gr(t.totalTokens)})]})]})]})}function eh({value:e}){let[t,n]=(0,x.useState)(!1);return(0,z.jsxs)(xp,{variant:`ghost`,size:`sm`,onClick:(0,x.useCallback)(()=>{navigator.clipboard.writeText(e).then(()=>{n(!0),setTimeout(()=>n(!1),2e3)})},[e]),children:[t?(0,z.jsx)(V,{className:`h-3.5 w-3.5 text-green-500`}):(0,z.jsx)(mi,{className:`h-3.5 w-3.5`}),t?`Copied`:`Copy`]})}var th=`h-9 w-full rounded-md border border-input bg-background px-3 text-sm outline-none focus-visible:ring-2 focus-visible:ring-ring`,nh={border:0,padding:0,margin:0};function rh(e){return`${e}-${globalThis.crypto?.randomUUID?.()??`${Date.now()}-${Math.random().toString(36).slice(2)}`}`}function ih(){let{workspace:e}=yr(),{ragAvailable:t}=Mr(),{askQuestion:n,setAskQuestion:r,askMode:a,setAskMode:o,askMessage:s,askResult:c,askTenantEnabled:l,setAskTenantEnabled:u,askTenantAccessKind:d,setAskTenantAccessKind:f,askTenantRoot:p,setAskTenantRoot:m,askTenantIdsText:h,setAskTenantIdsText:g,askTenantMultiRootRows:_,setAskTenantMultiRootRows:v,askTenantGlobalReason:y,setAskTenantGlobalReason:b,askTenantContext:S,setAskTenantContext:C,askTenantContextAttributes:w,setAskTenantContextAttributes:T,askTenantFilterRows:E,setAskTenantFilterRows:D,generatedTenantScopeJson:O,tenantScopeValidationError:k,askTenantSqlMode:A,setAskTenantSqlMode:j,executeResult:M,executeMessage:N,historyEntries:P,busy:F,handleAsk:ee,handleExecute:I,loadHistoryEntry:te,handleDeleteHistory:ne}=zr(),L=(0,x.useCallback)(e=>{(e.metaKey||e.ctrlKey)&&e.key===`Enter`&&!F.has(`ask`)&&(e.preventDefault(),ee())},[F,ee]);if((0,x.useEffect)(()=>(document.addEventListener(`keydown`,L),()=>document.removeEventListener(`keydown`,L)),[L]),!e)return null;let re=!!e.tenantPolicy,ie=e.tenantPolicy?.roots??[],ae=e.tenantPolicy?.polymorphicTables??[],oe=ie[0]?.id??``,se=ae[0];return(0,z.jsxs)(`main`,{className:`main-pane`,children:[(0,z.jsx)(`div`,{className:`main-hd`,children:(0,z.jsxs)(`div`,{className:`main-title`,children:[(0,z.jsxs)(`h1`,{children:[(0,z.jsx)(Ei,{size:18,style:{display:`inline`,marginRight:8}}),`Query Playground`]}),(0,z.jsx)(`div`,{className:`main-sub`,children:`Generate SQL from natural language and execute it against your database`})]})}),(0,z.jsx)(`div`,{className:`main-body`,style:{overflow:`auto`},children:(0,z.jsxs)(`div`,{style:{display:`grid`,gridTemplateColumns:`2fr 3fr`,minHeight:`100%`},children:[(0,z.jsxs)(`div`,{style:{borderRight:`1px solid var(--border)`,display:`flex`,flexDirection:`column`},children:[(0,z.jsx)(`div`,{style:{padding:`var(--pad-y) var(--pad-x)`},children:(0,z.jsxs)(`div`,{style:{display:`grid`,gap:12},children:[(0,z.jsx)($,{label:`Natural language question`,children:(0,z.jsx)(Sm,{value:n,onChange:e=>r(e.target.value),placeholder:`How many users placed orders last month?`,rows:4})}),(0,z.jsxs)(`div`,{style:{display:`grid`,gap:6},children:[(0,z.jsx)(`span`,{className:`muted`,style:{fontSize:11,fontWeight:600,textTransform:`uppercase`,letterSpacing:`0.04em`},children:`Retrieval mode`}),(0,z.jsxs)(`fieldset`,{className:`toggle-seg`,style:nh,children:[(0,z.jsx)(`legend`,{className:`sr-only`,children:`Retrieval mode`}),(0,z.jsx)(`button`,{className:a===`full`?`active`:``,onClick:()=>o(`full`),children:`Full schema`}),(0,z.jsxs)(`button`,{className:a===`rag`?`active`:``,disabled:!t,title:t?void 0:`Build the RAG index first to query with retrieval.`,onClick:()=>o(`rag`),children:[!t&&(0,z.jsx)(Si,{size:12,style:{display:`inline`,marginRight:4}}),`RAG`]})]})]}),re&&(0,z.jsxs)(`div`,{style:{display:`grid`,gap:10},children:[(0,z.jsxs)(`label`,{style:{display:`flex`,alignItems:`center`,gap:8},children:[(0,z.jsx)(`input`,{type:`checkbox`,checked:l,onChange:e=>u(e.target.checked)}),(0,z.jsxs)(`span`,{className:`muted`,style:{fontSize:11,fontWeight:600},children:[(0,z.jsx)(Ni,{size:12,style:{display:`inline`,marginRight:4}}),`Tenant scope`]})]}),l&&(0,z.jsxs)(`div`,{style:{display:`grid`,gap:10},children:[(0,z.jsxs)(`div`,{style:{display:`grid`,gap:6},children:[(0,z.jsx)(`span`,{className:`muted`,style:{fontSize:11,fontWeight:600,textTransform:`uppercase`,letterSpacing:`0.04em`},children:`Access kind`}),(0,z.jsxs)(`fieldset`,{className:`toggle-seg`,style:nh,children:[(0,z.jsx)(`legend`,{className:`sr-only`,children:`Tenant scope access kind`}),(0,z.jsx)(`button`,{className:d===`ids`?`active`:``,onClick:()=>f(`ids`),children:`IDs`}),(0,z.jsx)(`button`,{className:d===`subtree`?`active`:``,onClick:()=>f(`subtree`),children:`Subtree`}),(0,z.jsx)(`button`,{className:d===`multi_root`?`active`:``,onClick:()=>f(`multi_root`),children:`Multi-root`}),(0,z.jsx)(`button`,{className:d===`global`?`active`:``,onClick:()=>f(`global`),children:`Super / global`})]})]}),(d===`ids`||d===`subtree`)&&(0,z.jsxs)(`div`,{style:{display:`grid`,gap:8},children:[(0,z.jsx)($,{label:`Tenant root`,children:(0,z.jsx)(`select`,{className:th,value:p,onChange:e=>m(e.target.value),children:ie.map(e=>(0,z.jsxs)(`option`,{value:e.id,children:[e.label,` (`,e.id,`)`]},e.id))})}),(0,z.jsx)($,{label:d===`ids`?`Tenant IDs`:`Subtree root IDs`,description:`Comma-separated IDs from your app's auth context.`,children:(0,z.jsx)(Sp,{value:h,onChange:e=>g(e.target.value),placeholder:d===`ids`?`org-1, org-2`:`region-1`})})]}),d===`multi_root`&&(0,z.jsxs)(`div`,{style:{display:`grid`,gap:8},children:[_.map((e,t)=>(0,z.jsxs)(`div`,{style:{display:`grid`,gridTemplateColumns:`minmax(0, 1fr) minmax(0, 1fr) auto`,gap:8,alignItems:`end`},children:[(0,z.jsx)($,{label:`Tenant root`,className:`min-w-0`,children:(0,z.jsx)(`select`,{className:th,value:e.tenantRoot,onChange:n=>{let r=[..._];r[t]={...e,tenantRoot:n.target.value},v(r)},children:ie.map(e=>(0,z.jsxs)(`option`,{value:e.id,children:[e.label,` (`,e.id,`)`]},e.id))})}),(0,z.jsx)($,{label:`IDs`,className:`min-w-0`,children:(0,z.jsx)(Sp,{value:e.idsText,onChange:n=>{let r=[..._];r[t]={...e,idsText:n.target.value},v(r)},placeholder:`org-1, org-2`})}),(0,z.jsx)(`button`,{className:`btn ghost sm`,disabled:_.length===1,onClick:()=>v(_.filter((e,n)=>n!==t)),title:`Remove scope row`,children:(0,z.jsx)(Li,{size:14})})]},e.id)),(0,z.jsx)(`div`,{children:(0,z.jsxs)(`button`,{className:`btn ghost sm`,onClick:()=>v([..._,{id:rh(`multi-root`),tenantRoot:oe,idsText:``}]),children:[(0,z.jsx)(Di,{size:14}),`Add root`]})})]}),d===`global`&&(0,z.jsx)($,{label:`Super / global reason`,description:`Required for audit context.`,children:(0,z.jsx)(Sp,{value:y,onChange:e=>b(e.target.value),placeholder:`superuser access for support investigation`})}),(0,z.jsxs)(`details`,{children:[(0,z.jsx)(`summary`,{className:`muted`,style:{cursor:`pointer`,fontSize:11,fontWeight:600,textTransform:`uppercase`,letterSpacing:`0.04em`},children:`Advisory context`}),(0,z.jsxs)(`div`,{style:{display:`grid`,gap:8,marginTop:8},children:[(0,z.jsxs)(`div`,{style:{display:`grid`,gridTemplateColumns:`1fr 1fr`,gap:8},children:[(0,z.jsx)($,{label:`Role`,children:(0,z.jsx)(Sp,{value:S.role,onChange:e=>C({...S,role:e.target.value}),placeholder:`regional_manager`})}),(0,z.jsx)($,{label:`Label`,children:(0,z.jsx)(Sp,{value:S.label,onChange:e=>C({...S,label:e.target.value}),placeholder:`Jane Smith, Northeast`})}),(0,z.jsx)($,{label:`Department`,children:(0,z.jsx)(Sp,{value:S.department,onChange:e=>C({...S,department:e.target.value}),placeholder:`operations`})}),(0,z.jsx)($,{label:`Region`,children:(0,z.jsx)(Sp,{value:S.region,onChange:e=>C({...S,region:e.target.value}),placeholder:`northeast`})})]}),(0,z.jsx)($,{label:`Description`,children:(0,z.jsx)(Sm,{value:S.description,onChange:e=>C({...S,description:e.target.value}),placeholder:`Business context for this user's scope.`,rows:2})}),w.map((e,t)=>(0,z.jsxs)(`div`,{style:{display:`grid`,gridTemplateColumns:`minmax(0, 1fr) minmax(0, 1fr) auto`,gap:8,alignItems:`end`},children:[(0,z.jsx)($,{label:`Attribute key`,className:`min-w-0`,children:(0,z.jsx)(Sp,{value:e.key,onChange:n=>{let r=[...w];r[t]={...e,key:n.target.value},T(r)},placeholder:`team`})}),(0,z.jsx)($,{label:`Attribute value`,className:`min-w-0`,children:(0,z.jsx)(Sp,{value:e.value,onChange:n=>{let r=[...w];r[t]={...e,value:n.target.value},T(r)},placeholder:`field-sales`})}),(0,z.jsx)(`button`,{className:`btn ghost sm`,onClick:()=>T(w.filter((e,n)=>n!==t)),title:`Remove attribute`,children:(0,z.jsx)(Li,{size:14})})]},e.id)),(0,z.jsx)(`div`,{children:(0,z.jsxs)(`button`,{className:`btn ghost sm`,onClick:()=>T([...w,{id:rh(`context-attribute`),key:``,value:``}]),children:[(0,z.jsx)(Di,{size:14}),`Add attribute`]})})]})]}),ae.length>0&&(0,z.jsxs)(`details`,{children:[(0,z.jsx)(`summary`,{className:`muted`,style:{cursor:`pointer`,fontSize:11,fontWeight:600,textTransform:`uppercase`,letterSpacing:`0.04em`},children:`Tenant filters`}),(0,z.jsxs)(`div`,{style:{display:`grid`,gap:8,marginTop:8},children:[E.map((e,t)=>(0,z.jsxs)(`div`,{style:{display:`grid`,gridTemplateColumns:`minmax(0, 1.2fr) minmax(0, 1fr) 88px minmax(0, 1fr) auto`,gap:8,alignItems:`end`},children:[(0,z.jsx)($,{label:`Table`,className:`min-w-0`,children:(0,z.jsx)(`select`,{className:th,value:e.tableId,onChange:n=>{let r=ae.find(e=>e.id===n.target.value),a=[...E];a[t]={...e,tableId:n.target.value,column:e.column||r?.typeColumn||``},D(a)},children:ae.map(e=>(0,z.jsx)(`option`,{value:e.id,children:e.id},e.id))})}),(0,z.jsx)($,{label:`Column`,className:`min-w-0`,children:(0,z.jsx)(Sp,{value:e.column,onChange:n=>{let r=[...E];r[t]={...e,column:n.target.value},D(r)},placeholder:`owner_type`})}),(0,z.jsx)($,{label:`Operator`,className:`min-w-0`,children:(0,z.jsxs)(`select`,{className:th,value:e.operator,onChange:n=>{let r=[...E];r[t]={...e,operator:n.target.value},D(r)},children:[(0,z.jsx)(`option`,{value:`=`,children:`=`}),(0,z.jsx)(`option`,{value:`IN`,children:`IN`}),(0,z.jsx)(`option`,{value:`!=`,children:`!=`}),(0,z.jsx)(`option`,{value:`NOT IN`,children:`NOT IN`})]})}),(0,z.jsx)($,{label:`Value`,className:`min-w-0`,children:(0,z.jsx)(Sp,{value:e.valueText,onChange:n=>{let r=[...E];r[t]={...e,valueText:n.target.value},D(r)},placeholder:e.operator===`IN`||e.operator===`NOT IN`?`client, agency`:`client`})}),(0,z.jsx)(`button`,{className:`btn ghost sm`,onClick:()=>D(E.filter((e,n)=>n!==t)),title:`Remove condition`,children:(0,z.jsx)(Li,{size:14})})]},e.id)),(0,z.jsx)(`div`,{children:(0,z.jsxs)(`button`,{className:`btn ghost sm`,onClick:()=>D([...E,{id:rh(`tenant-filter`),tableId:se.id,column:se.typeColumn,operator:`=`,valueText:``}]),children:[(0,z.jsx)(Di,{size:14}),`Add condition`]})})]})]}),(0,z.jsxs)(`div`,{style:{display:`grid`,gap:6},children:[(0,z.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,justifyContent:`space-between`,gap:8},children:[(0,z.jsx)(`span`,{className:`muted`,style:{fontSize:11,fontWeight:600,textTransform:`uppercase`,letterSpacing:`0.04em`},children:`tenantScope JSON preview`}),O&&(0,z.jsx)(eh,{value:O})]}),(0,z.jsx)(`pre`,{className:`mono`,style:{minHeight:116,margin:0,overflow:`auto`,whiteSpace:`pre-wrap`,border:`1px solid var(--border)`,borderRadius:6,padding:10,fontSize:11,background:`var(--surface-2)`},children:O||k||`Complete the tenant scope fields to preview the JSON passed to ask().`}),k&&(0,z.jsx)(`span`,{style:{color:`var(--red-600)`,fontSize:12},children:k})]}),(0,z.jsxs)(`div`,{style:{display:`grid`,gap:6},children:[(0,z.jsx)(`span`,{className:`muted`,style:{fontSize:11,fontWeight:600,textTransform:`uppercase`,letterSpacing:`0.04em`},children:`SQL output mode`}),(0,z.jsxs)(`fieldset`,{className:`toggle-seg`,style:nh,children:[(0,z.jsx)(`legend`,{className:`sr-only`,children:`SQL output mode`}),(0,z.jsx)(`button`,{className:A===`sql-only`?`active`:``,onClick:()=>j(`sql-only`),children:`Inline literals`}),(0,z.jsx)(`button`,{className:A===`sql-params`?`active`:``,onClick:()=>j(`sql-params`),children:`$N parameters`})]})]})]})]}),(0,z.jsxs)(`button`,{className:`btn primary`,disabled:F.has(`ask`),onClick:()=>void ee(),title:`Generate SQL (⌘↵)`,children:[F.has(`ask`)?(0,z.jsx)(xi,{size:14,className:`animate-spin`}):(0,z.jsx)(Pi,{size:14}),`Generate SQL`,(0,z.jsx)(`kbd`,{className:`kbd`,style:{marginLeft:4,opacity:.7},children:`⌘↵`})]}),s&&(0,z.jsx)(_m,{status:s})]})}),P.length>0&&(0,z.jsxs)(`div`,{style:{borderTop:`1px solid var(--border)`,flex:1,overflow:`auto`},children:[(0,z.jsx)(`div`,{style:{padding:`8px var(--pad-x)`},children:(0,z.jsxs)(`span`,{className:`muted`,style:{fontSize:11,fontWeight:600,textTransform:`uppercase`,letterSpacing:`0.04em`},children:[`History (`,P.length,`)`]})}),(0,z.jsx)(`div`,{children:P.slice(0,20).map(e=>(0,z.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,justifyContent:`space-between`,gap:8,padding:`6px var(--pad-x)`,cursor:`pointer`,fontSize:12,borderBottom:`1px solid var(--border)`},onClick:()=>te(e),children:[(0,z.jsx)(`span`,{style:{overflow:`hidden`,textOverflow:`ellipsis`,whiteSpace:`nowrap`,flex:1},children:e.question}),(0,z.jsx)(`span`,{className:`chip ${e.mode===`rag`?`red`:``}`,style:{flexShrink:0},children:e.mode}),(0,z.jsx)(`button`,{className:`btn ghost sm`,onClick:t=>{t.stopPropagation(),ne(e.id)},title:`Delete`,style:{flexShrink:0,padding:2},children:`×`})]},e.id))})]})]}),(0,z.jsx)(`div`,{style:{overflow:`auto`},children:c?(0,z.jsxs)(`div`,{style:{display:`grid`,gap:0},children:[(0,z.jsxs)(`section`,{style:{padding:`var(--pad-y) var(--pad-x)`,borderBottom:`1px solid var(--border)`},children:[(0,z.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,justifyContent:`space-between`,marginBottom:8},children:[(0,z.jsx)(`h3`,{style:{fontSize:13,fontWeight:600},children:`Generated SQL`}),c.sql&&(0,z.jsx)(eh,{value:c.sql})]}),c.sql?(0,z.jsx)(`pre`,{className:`sql-block`,children:c.sql}):(0,z.jsx)(Xm,{text:`No SQL generated.`})]}),c.explain!==null&&c.explain!==void 0&&(0,z.jsxs)(`section`,{style:{padding:`var(--pad-y) var(--pad-x)`,borderBottom:`1px solid var(--border)`},children:[(0,z.jsx)(`h3`,{style:{fontSize:13,fontWeight:600,marginBottom:8},children:`Explain`}),(0,z.jsx)(`pre`,{className:`plain-block`,children:ah(c.explain)})]}),c.tenant?.enabled&&(0,z.jsxs)(`section`,{style:{padding:`var(--pad-y) var(--pad-x)`,borderBottom:`1px solid var(--border)`},children:[(0,z.jsx)(`h3`,{style:{fontSize:13,fontWeight:600,marginBottom:8},children:`Tenant Params`}),c.tenant.params.length>0?(0,z.jsxs)(`div`,{style:{padding:8,border:`1px solid var(--border)`,borderRadius:`var(--radius)`,fontSize:12},children:[(0,z.jsx)(`span`,{style:{fontWeight:600},children:`Positional params:`}),` `,(0,z.jsx)(`code`,{children:JSON.stringify(c.tenant.params)})]}):(0,z.jsx)(Xm,{text:`No tenant params.`})]}),(0,z.jsxs)(`div`,{style:{padding:`var(--pad-y) var(--pad-x)`,borderBottom:`1px solid var(--border)`,display:`flex`,alignItems:`center`,gap:12},children:[(0,z.jsxs)(`button`,{className:`btn primary`,disabled:F.has(`execute`)||!c.sql,onClick:()=>void I(),children:[F.has(`execute`)?(0,z.jsx)(xi,{size:14,className:`animate-spin`}):(0,z.jsx)(Ei,{size:14}),`Execute Query`]}),N&&(0,z.jsx)(_m,{status:N})]}),M?.ok===!0&&(0,z.jsxs)(`section`,{style:{padding:`var(--pad-y) var(--pad-x)`},children:[(0,z.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,justifyContent:`space-between`,marginBottom:8},children:[(0,z.jsx)(`h3`,{style:{fontSize:13,fontWeight:600},children:`Results`}),M.truncated&&(0,z.jsx)(`span`,{className:`chip amber`,children:`Showing first 500 rows`})]}),M.columns&&M.rows?(0,z.jsx)(`div`,{style:{overflowX:`auto`},children:(0,z.jsxs)(`table`,{className:`tbl`,children:[(0,z.jsx)(`thead`,{children:(0,z.jsx)(`tr`,{children:M.columns.map(e=>(0,z.jsx)(`th`,{children:e},e))})}),(0,z.jsx)(`tbody`,{children:M.rows.map((e,t)=>(0,z.jsx)(`tr`,{children:e.map((e,t)=>(0,z.jsx)(`td`,{className:`mono`,style:{fontSize:11},children:e==null?(0,z.jsx)(`span`,{className:`muted`,children:`NULL`}):String(e)},t))},t))})]})}):(0,z.jsx)(Xm,{text:`No results.`})]})]}):(0,z.jsx)(`div`,{style:{display:`flex`,alignItems:`center`,justifyContent:`center`,height:`100%`,padding:32},children:(0,z.jsx)(Xm,{text:`Ask a question to generate SQL`})})})]})})]})}function ah(e){return typeof e==`string`?e:JSON.stringify(e,null,2)}function oh(){let{workspace:e}=yr(),{ragStatus:t}=Mr();return e?(0,z.jsxs)(`main`,{className:`main-pane`,children:[(0,z.jsx)(`div`,{className:`main-hd`,children:(0,z.jsxs)(`div`,{className:`main-title`,children:[(0,z.jsxs)(`h1`,{children:[(0,z.jsx)(Mi,{size:18,style:{display:`inline`,marginRight:8}}),`Settings`]}),(0,z.jsx)(`div`,{className:`main-sub`,children:`Workspace configuration and diagnostics`})]})}),(0,z.jsx)(`div`,{className:`main-body`,children:(0,z.jsxs)(`div`,{className:`stack`,style:{padding:`var(--pad-y) var(--pad-x)`},children:[(0,z.jsxs)(`section`,{className:`card`,children:[(0,z.jsx)(`div`,{className:`card-hd`,children:(0,z.jsx)(`h3`,{children:`Workspace`})}),(0,z.jsx)(`div`,{className:`card-bd`,children:(0,z.jsxs)(`dl`,{className:`definition-list`,children:[(0,z.jsx)(`dt`,{children:`Schema ID`}),(0,z.jsx)(`dd`,{children:e.schemaId}),(0,z.jsx)(`dt`,{children:`Schema path`}),(0,z.jsx)(`dd`,{children:e.schemaDir}),(0,z.jsx)(`dt`,{children:`AI provider`}),(0,z.jsx)(`dd`,{children:e.aiProvider}),(0,z.jsx)(`dt`,{children:`Model`}),(0,z.jsx)(`dd`,{children:e.model}),(0,z.jsx)(`dt`,{children:`AI suggestions`}),(0,z.jsx)(`dd`,{children:e.aiConfigured?`Configured`:`Not configured`})]})})]}),(0,z.jsxs)(`section`,{className:`card`,children:[(0,z.jsx)(`div`,{className:`card-hd`,children:(0,z.jsx)(`h3`,{children:`RAG Store`})}),(0,z.jsx)(`div`,{className:`card-bd`,children:t?(0,z.jsxs)(`dl`,{className:`definition-list`,children:[(0,z.jsx)(`dt`,{children:`Store`}),(0,z.jsx)(`dd`,{children:t.store.kind}),(0,z.jsx)(`dt`,{children:`Lock file`}),(0,z.jsx)(`dd`,{children:t.files.lock?`present`:`missing`}),t.store.kind===`file`&&(0,z.jsxs)(z.Fragment,{children:[(0,z.jsx)(`dt`,{children:`Base path`}),(0,z.jsx)(`dd`,{children:t.store.basePath??`n/a`}),(0,z.jsx)(`dt`,{children:`Embeddings JSON`}),(0,z.jsx)(`dd`,{children:t.files.embeddingsJson?`present`:`missing`}),(0,z.jsx)(`dt`,{children:`Embeddings binary`}),(0,z.jsx)(`dd`,{children:t.files.embeddingsBin?`present`:`missing`})]}),t.store.kind===`pgvector`&&(0,z.jsxs)(z.Fragment,{children:[(0,z.jsx)(`dt`,{children:`Table`}),(0,z.jsx)(`dd`,{children:t.store.table??`askdb_rag_chunks`}),(0,z.jsx)(`dt`,{children:`Index strategy`}),(0,z.jsx)(`dd`,{children:t.store.indexStrategy??`default`})]}),t.store.kind===`memory`&&(0,z.jsxs)(z.Fragment,{children:[(0,z.jsx)(`dt`,{children:`Persistence`}),(0,z.jsx)(`dd`,{children:`In-process only`})]})]}):(0,z.jsx)(Xm,{text:`RAG status is unavailable.`})})]}),(0,z.jsxs)(`section`,{className:`card`,children:[(0,z.jsx)(`div`,{className:`card-hd`,children:(0,z.jsx)(`h3`,{children:`Schema Warnings`})}),(0,z.jsx)(`div`,{className:`card-bd`,children:e.warnings.length>0?(0,z.jsx)(`div`,{style:{display:`grid`,gap:8},children:e.warnings.map((e,t)=>(0,z.jsx)(`pre`,{className:`warning-block`,children:typeof e==`string`?e:JSON.stringify(e,null,2)},t))}):(0,z.jsx)(Xm,{text:`No schema warnings.`})})]})]})})]}):null}function sh(){return(0,z.jsx)(Xn,{children:(0,z.jsx)(Sr,{children:(0,z.jsx)(Fr,{children:(0,z.jsx)(ch,{})})})})}function ch(){let{load:e,loadState:t,suggestionDialog:n,setSuggestionDialog:r,applySuggestion:a}=yr(),{refreshRagStatus:o,ragAvailable:s}=Mr();return(0,x.useEffect)(()=>{e().then(()=>void o())},[e,o]),t.kind===`loading`?(0,z.jsx)(`div`,{className:`app-shell`,style:{display:`flex`,alignItems:`center`,justifyContent:`center`},children:(0,z.jsx)(`p`,{style:{color:`var(--ink-400)`,fontSize:13},children:`Loading workspace…`})}):t.kind===`error`?(0,z.jsx)(`div`,{className:`app-shell`,style:{display:`flex`,alignItems:`center`,justifyContent:`center`},children:(0,z.jsxs)(`div`,{style:{textAlign:`center`},children:[(0,z.jsx)(`p`,{style:{color:`var(--red-600)`,fontWeight:600,marginBottom:8},children:`Failed to load workspace`}),(0,z.jsx)(`p`,{style:{color:`var(--ink-400)`,fontSize:13},children:t.message})]})}):(0,z.jsxs)(Br,{ragAvailable:s,children:[(0,z.jsxs)(Up,{defaultOpen:!0,className:`!min-h-0 h-svh`,style:{"--sidebar-width":`var(--nav-w)`},children:[(0,z.jsx)(cm,{}),(0,z.jsxs)(Kp,{className:`min-h-0 overflow-hidden`,children:[(0,z.jsxs)(`header`,{className:`topbar`,children:[(0,z.jsx)(Gp,{className:`-ml-1`}),(0,z.jsx)(Cp,{orientation:`vertical`,className:`mr-2 !h-4`}),(0,z.jsx)(im,{})]}),(0,z.jsx)(`div`,{className:`app-content`,children:(0,z.jsxs)(It,{children:[(0,z.jsx)(Pt,{path:`/`,element:(0,z.jsx)(Mt,{to:`/overview`,replace:!0})}),(0,z.jsx)(Pt,{path:`/overview`,element:(0,z.jsx)(um,{})}),(0,z.jsx)(Pt,{path:`/tables`,element:(0,z.jsx)(hm,{}),children:(0,z.jsxs)(Pt,{path:`:schema/:name`,element:(0,z.jsx)(vm,{}),children:[(0,z.jsx)(Pt,{index:!0,element:(0,z.jsx)(Mt,{to:`enrichment`,replace:!0})}),(0,z.jsx)(Pt,{path:`enrichment`,element:(0,z.jsx)(Cm,{})}),(0,z.jsx)(Pt,{path:`schema`,element:(0,z.jsx)(Em,{})}),(0,z.jsx)(Pt,{path:`sensitivity`,element:(0,z.jsx)(Dm,{})})]})}),(0,z.jsx)(Pt,{path:`/concepts`,element:(0,z.jsx)(Mm,{})}),(0,z.jsx)(Pt,{path:`/tenancy`,element:(0,z.jsx)(Rm,{})}),(0,z.jsx)(Pt,{path:`/rag-index`,element:(0,z.jsx)(Zm,{})}),(0,z.jsx)(Pt,{path:`/playground`,element:(0,z.jsx)(ih,{})}),(0,z.jsx)(Pt,{path:`/settings`,element:(0,z.jsx)(oh,{})})]})})]})]}),n&&(0,z.jsx)(lm,{dialog:n,onApply:a,onClose:()=>r(null)})]})}var lh=document.getElementById(`root`);if(!lh)throw Error(`Missing #root element.`);(0,Kn.createRoot)(lh).render((0,z.jsx)(x.StrictMode,{children:(0,z.jsx)(Cn,{children:(0,z.jsx)(sh,{})})}));
|