react-semaphor 0.0.193 → 0.0.194

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.
@@ -1,4 +1,4 @@
1
- "use strict";const e=require("./index-1S-69oTo.js"),f=require("react");/**
1
+ "use strict";const e=require("./index-rkFdSN_7.js"),f=require("react");/**
2
2
  * @license lucide-react v0.379.0 - ISC
3
3
  *
4
4
  * This source code is licensed under the ISC license.
@@ -1,4 +1,4 @@
1
- import { P as E, b as k, j as e, Q as ps, R as fs, U as w, V as Ks, W as gs, X as js, Y as bs, Z as ys, _ as B, $ as ae, a0 as Us, J as Gs, O as Ee, a1 as qa, a2 as Va, a3 as Ra, a4 as _a, a5 as Ha, a6 as Ba, a7 as As, a8 as _e, a9 as Pe, aa as We, T as vs, e as Js, g as Ns, ab as Oe, ac as Me, f as Y, ad as Te, ae as Ae, af as He, ag as Le, ah as X, ai as Cs, G as i, aj as Ke, ak as Ue, al as $a, am as Ge, w as Qs, v as Ws, t as he, an as Pa, r as Ka, N as Ys, s as Ua, ao as Ga, B as Ja, ap as Xs, aq as Qa, L as Be, S as Ss, z as Wa, n as Es, ar as ds, A as hs, u as es, as as Ce, at as ze, au as Zs, av as ea, aw as sa, ax as aa, ay as ta, az as Ya, aA as Xa, aB as na, aC as Za, aD as et, aE as st, aF as at, aG as tt, aH as ms, aI as nt, aJ as Re, aK as us, aL as Fe, aM as xs, aN as Ls, aO as rt, aP as lt, aQ as it, aR as ot, aS as ct, aT as ls, aU as dt, aV as Ds, aW as ht, aX as Is, aY as mt, aZ as ut, a_ as xt, a$ as ra, l as pt, C as ft, E as qs, d as gt, h as jt, i as bt, o as yt, b0 as vt, m as Nt, H as Ct, b1 as St, b2 as kt, b3 as wt, b4 as is, b5 as zt, b6 as os, b7 as Vs, K as Ft, b8 as ks, b9 as Ot, ba as la, bb as Ye, bc as ia, bd as Mt, be as Tt, bf as At, bg as Et, bh as Lt, bi as Dt, bj as Se, bk as V, bl as R, bm as ws, bn as _, bo as Rs, bp as It, bq as qt, br as Vt, bs as Rt, bt as _s, bu as _t, bv as Ht, bw as Bt, bx as $t, by as Pt, bz as Kt } from "./index-MYxGboTj.js";
1
+ import { P as E, b as k, j as e, Q as ps, R as fs, U as w, V as Ks, W as gs, X as js, Y as bs, Z as ys, _ as B, $ as ae, a0 as Us, J as Gs, O as Ee, a1 as qa, a2 as Va, a3 as Ra, a4 as _a, a5 as Ha, a6 as Ba, a7 as As, a8 as _e, a9 as Pe, aa as We, T as vs, e as Js, g as Ns, ab as Oe, ac as Me, f as Y, ad as Te, ae as Ae, af as He, ag as Le, ah as X, ai as Cs, G as i, aj as Ke, ak as Ue, al as $a, am as Ge, w as Qs, v as Ws, t as he, an as Pa, r as Ka, N as Ys, s as Ua, ao as Ga, B as Ja, ap as Xs, aq as Qa, L as Be, S as Ss, z as Wa, n as Es, ar as ds, A as hs, u as es, as as Ce, at as ze, au as Zs, av as ea, aw as sa, ax as aa, ay as ta, az as Ya, aA as Xa, aB as na, aC as Za, aD as et, aE as st, aF as at, aG as tt, aH as ms, aI as nt, aJ as Re, aK as us, aL as Fe, aM as xs, aN as Ls, aO as rt, aP as lt, aQ as it, aR as ot, aS as ct, aT as ls, aU as dt, aV as Ds, aW as ht, aX as Is, aY as mt, aZ as ut, a_ as xt, a$ as ra, l as pt, C as ft, E as qs, d as gt, h as jt, i as bt, o as yt, b0 as vt, m as Nt, H as Ct, b1 as St, b2 as kt, b3 as wt, b4 as is, b5 as zt, b6 as os, b7 as Vs, K as Ft, b8 as ks, b9 as Ot, ba as la, bb as Ye, bc as ia, bd as Mt, be as Tt, bf as At, bg as Et, bh as Lt, bi as Dt, bj as Se, bk as V, bl as R, bm as ws, bn as _, bo as Rs, bp as It, bq as qt, br as Vt, bs as Rt, bt as _s, bu as _t, bv as Ht, bw as Bt, bx as $t, by as Pt, bz as Kt } from "./index-HMMloXbS.js";
2
2
  import me, { useState as T, useEffect as P, useMemo as Ut, useRef as $e } from "react";
3
3
  /**
4
4
  * @license lucide-react v0.379.0 - ISC
@@ -29184,7 +29184,7 @@ function bT(e) {
29184
29184
  function yT(e, t) {
29185
29185
  var i, s, a, l, c, u, f, p, g, m, v, y;
29186
29186
  const n = vT(t, e), r = bT(t);
29187
- return console.log("numberAxis", n, "categoryAxis", r), {
29187
+ return {
29188
29188
  ...e == null ? void 0 : e.options,
29189
29189
  scales: {
29190
29190
  ...(i = e == null ? void 0 : e.options) == null ? void 0 : i.scales,
@@ -250,7 +250,7 @@ Valid keys: `+JSON.stringify(Object.keys(T),null," "));var G=be(fe,ie,se,ae,ue+
250
250
  * This source code is licensed under the ISC license.
251
251
  * See the LICENSE file in the root directory of this source tree.
252
252
  */const ww=Sn("X",[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]]),vY=({data:e,filename:t="output.csv"})=>{const n=()=>{if(e.length===0)return;const r=[],o=Object.keys(e[0]);r.push(o.join(","));for(const c of e){const u=o.map(f=>`"${(""+c[f]).replace(/"/g,'""')}"`);r.push(u.join(","))}const i=r.join(`
253
- `),s=new Blob([i],{type:"text/csv"}),a=window.URL.createObjectURL(s),l=document.createElement("a");l.setAttribute("hidden",""),l.setAttribute("href",a),l.setAttribute("download",t),document.body.appendChild(l),l.click(),document.body.removeChild(l)};return O.jsx(uY,{onClick:n,className:"h-[14px] w-[14px] text-foreground/30 hover:cursor-pointer hover:text-foreground/50"})};function bY({frame:e}){var _;const t=De(S=>S.isDashboardEditing),n=De(S=>S.filterValues),r=De(S=>S.isVisualEditing),o=De(S=>S.selectedSheetId);De(S=>S.currentBreakpoint);const{removeFrame:i}=De(S=>S.actions),s=De(S=>S.actions.setIsVisualEditing),a=Cr(S=>S.actions.setFilterValues),l=Cr(S=>S.actions.setApplyFilters),{setCard:c,setFrame:u,setQueryResultColumns:f}=Cr(S=>S.actions),p=Cr(S=>S.actions.setSelectedConnectionId),g=Cr(S=>S.actions.setSelectedDatabaseName),v=Cr(S=>S.actions.setSelectedSchemaName),b=Cr(S=>S.actions.setSelectedTableName),x=e.cards.find(S=>S.id===e.activeCardId);function w(){s(!r),c(x);const{dimensionKeys:S}=dr((x==null?void 0:x.data)||[]);f(S),u(e),x!=null&&x.connectionId&&p(x==null?void 0:x.connectionId),x!=null&&x.lastSelectedDatabase&&g(x==null?void 0:x.lastSelectedDatabase),x!=null&&x.lastSelectedSchema&&v(x==null?void 0:x.lastSelectedSchema),x!=null&&x.lastSelectedTable&&b(x==null?void 0:x.lastSelectedTable),n&&(a(n),l(!0))}return O.jsx("section",{className:"absolute right-2 top-2 z-10",children:O.jsxs("div",{className:"flex items-center gap-2",children:[t&&(r?O.jsx(NG,{onClick:()=>{s(!r)},className:"h-[14px] w-[14px] text-foreground/30 hover:cursor-pointer hover:text-foreground/50"}):O.jsx(FG,{role:"edit-visual",onClick:w,className:"h-[14px] w-[14px] text-foreground/30 hover:cursor-pointer hover:text-foreground/50"})),t&&O.jsx(JD,{onClick:()=>i(o,e.id),className:"h-[14px] w-[14px] text-foreground/30 hover:cursor-pointer hover:text-foreground/50"}),((_=x.preferences)==null?void 0:_.allowDownload)===!0&&O.jsx(vY,{data:(x==null?void 0:x.data)||[],filename:x.title})]})})}function yY(e,t=globalThis==null?void 0:globalThis.document){const n=Mn(e);m.useEffect(()=>{const r=o=>{o.key==="Escape"&&n(o)};return t.addEventListener("keydown",r),()=>t.removeEventListener("keydown",r)},[n,t])}const yy="dismissableLayer.update",xY="dismissableLayer.pointerDownOutside",wY="dismissableLayer.focusOutside";let UR;const _Y=m.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set}),kc=m.forwardRef((e,t)=>{var n;const{disableOutsidePointerEvents:r=!1,onEscapeKeyDown:o,onPointerDownOutside:i,onFocusOutside:s,onInteractOutside:a,onDismiss:l,...c}=e,u=m.useContext(_Y),[f,p]=m.useState(null),g=(n=f==null?void 0:f.ownerDocument)!==null&&n!==void 0?n:globalThis==null?void 0:globalThis.document,[,v]=m.useState({}),b=lt(t,k=>p(k)),x=Array.from(u.layers),[w]=[...u.layersWithOutsidePointerEventsDisabled].slice(-1),_=x.indexOf(w),S=f?x.indexOf(f):-1,R=u.layersWithOutsidePointerEventsDisabled.size>0,C=S>=_,P=SY(k=>{const D=k.target,I=[...u.branches].some(z=>z.contains(D));!C||I||(i==null||i(k),a==null||a(k),k.defaultPrevented||l==null||l())},g),A=CY(k=>{const D=k.target;[...u.branches].some(z=>z.contains(D))||(s==null||s(k),a==null||a(k),k.defaultPrevented||l==null||l())},g);return yY(k=>{S===u.layers.size-1&&(o==null||o(k),!k.defaultPrevented&&l&&(k.preventDefault(),l()))},g),m.useEffect(()=>{if(f)return r&&(u.layersWithOutsidePointerEventsDisabled.size===0&&(UR=g.body.style.pointerEvents,g.body.style.pointerEvents="none"),u.layersWithOutsidePointerEventsDisabled.add(f)),u.layers.add(f),qR(),()=>{r&&u.layersWithOutsidePointerEventsDisabled.size===1&&(g.body.style.pointerEvents=UR)}},[f,g,r,u]),m.useEffect(()=>()=>{f&&(u.layers.delete(f),u.layersWithOutsidePointerEventsDisabled.delete(f),qR())},[f,u]),m.useEffect(()=>{const k=()=>v({});return document.addEventListener(yy,k),()=>document.removeEventListener(yy,k)},[]),m.createElement(Ue.div,le({},c,{ref:b,style:{pointerEvents:R?C?"auto":"none":void 0,...e.style},onFocusCapture:Re(e.onFocusCapture,A.onFocusCapture),onBlurCapture:Re(e.onBlurCapture,A.onBlurCapture),onPointerDownCapture:Re(e.onPointerDownCapture,P.onPointerDownCapture)}))});function SY(e,t=globalThis==null?void 0:globalThis.document){const n=Mn(e),r=m.useRef(!1),o=m.useRef(()=>{});return m.useEffect(()=>{const i=a=>{if(a.target&&!r.current){let c=function(){sT(xY,n,l,{discrete:!0})};const l={originalEvent:a};a.pointerType==="touch"?(t.removeEventListener("click",o.current),o.current=c,t.addEventListener("click",o.current,{once:!0})):c()}else t.removeEventListener("click",o.current);r.current=!1},s=window.setTimeout(()=>{t.addEventListener("pointerdown",i)},0);return()=>{window.clearTimeout(s),t.removeEventListener("pointerdown",i),t.removeEventListener("click",o.current)}},[t,n]),{onPointerDownCapture:()=>r.current=!0}}function CY(e,t=globalThis==null?void 0:globalThis.document){const n=Mn(e),r=m.useRef(!1);return m.useEffect(()=>{const o=i=>{i.target&&!r.current&&sT(wY,n,{originalEvent:i},{discrete:!1})};return t.addEventListener("focusin",o),()=>t.removeEventListener("focusin",o)},[t,n]),{onFocusCapture:()=>r.current=!0,onBlurCapture:()=>r.current=!1}}function qR(){const e=new CustomEvent(yy);document.dispatchEvent(e)}function sT(e,t,n,{discrete:r}){const o=n.originalEvent.target,i=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:n});t&&o.addEventListener(e,t,{once:!0}),r?UP(o,i):o.dispatchEvent(i)}const EY=["top","right","bottom","left"],Is=Math.min,Kr=Math.max,Kp=Math.round,jh=Math.floor,Ns=e=>({x:e,y:e}),RY={left:"right",right:"left",bottom:"top",top:"bottom"},OY={start:"end",end:"start"};function xy(e,t,n){return Kr(e,Is(t,n))}function Bi(e,t){return typeof e=="function"?e(t):e}function Vi(e){return e.split("-")[0]}function Mc(e){return e.split("-")[1]}function _w(e){return e==="x"?"y":"x"}function Sw(e){return e==="y"?"height":"width"}function Ac(e){return["top","bottom"].includes(Vi(e))?"y":"x"}function Cw(e){return _w(Ac(e))}function PY(e,t,n){n===void 0&&(n=!1);const r=Mc(e),o=Cw(e),i=Sw(o);let s=o==="x"?r===(n?"end":"start")?"right":"left":r==="start"?"bottom":"top";return t.reference[i]>t.floating[i]&&(s=Xp(s)),[s,Xp(s)]}function $Y(e){const t=Xp(e);return[wy(e),t,wy(t)]}function wy(e){return e.replace(/start|end/g,t=>OY[t])}function DY(e,t,n){const r=["left","right"],o=["right","left"],i=["top","bottom"],s=["bottom","top"];switch(e){case"top":case"bottom":return n?t?o:r:t?r:o;case"left":case"right":return t?i:s;default:return[]}}function TY(e,t,n,r){const o=Mc(e);let i=DY(Vi(e),n==="start",r);return o&&(i=i.map(s=>s+"-"+o),t&&(i=i.concat(i.map(wy)))),i}function Xp(e){return e.replace(/left|right|bottom|top/g,t=>RY[t])}function kY(e){return{top:0,right:0,bottom:0,left:0,...e}}function aT(e){return typeof e!="number"?kY(e):{top:e,right:e,bottom:e,left:e}}function Qp(e){return{...e,top:e.y,left:e.x,right:e.x+e.width,bottom:e.y+e.height}}function GR(e,t,n){let{reference:r,floating:o}=e;const i=Ac(t),s=Cw(t),a=Sw(s),l=Vi(t),c=i==="y",u=r.x+r.width/2-o.width/2,f=r.y+r.height/2-o.height/2,p=r[a]/2-o[a]/2;let g;switch(l){case"top":g={x:u,y:r.y-o.height};break;case"bottom":g={x:u,y:r.y+r.height};break;case"right":g={x:r.x+r.width,y:f};break;case"left":g={x:r.x-o.width,y:f};break;default:g={x:r.x,y:r.y}}switch(Mc(t)){case"start":g[s]-=p*(n&&c?-1:1);break;case"end":g[s]+=p*(n&&c?-1:1);break}return g}const MY=async(e,t,n)=>{const{placement:r="bottom",strategy:o="absolute",middleware:i=[],platform:s}=n,a=i.filter(Boolean),l=await(s.isRTL==null?void 0:s.isRTL(t));let c=await s.getElementRects({reference:e,floating:t,strategy:o}),{x:u,y:f}=GR(c,r,l),p=r,g={},v=0;for(let b=0;b<a.length;b++){const{name:x,fn:w}=a[b],{x:_,y:S,data:R,reset:C}=await w({x:u,y:f,initialPlacement:r,placement:p,strategy:o,middlewareData:g,rects:c,platform:s,elements:{reference:e,floating:t}});if(u=_??u,f=S??f,g={...g,[x]:{...g[x],...R}},C&&v<=50){v++,typeof C=="object"&&(C.placement&&(p=C.placement),C.rects&&(c=C.rects===!0?await s.getElementRects({reference:e,floating:t,strategy:o}):C.rects),{x:u,y:f}=GR(c,p,l)),b=-1;continue}}return{x:u,y:f,placement:p,strategy:o,middlewareData:g}};async function cd(e,t){var n;t===void 0&&(t={});const{x:r,y:o,platform:i,rects:s,elements:a,strategy:l}=e,{boundary:c="clippingAncestors",rootBoundary:u="viewport",elementContext:f="floating",altBoundary:p=!1,padding:g=0}=Bi(t,e),v=aT(g),x=a[p?f==="floating"?"reference":"floating":f],w=Qp(await i.getClippingRect({element:(n=await(i.isElement==null?void 0:i.isElement(x)))==null||n?x:x.contextElement||await(i.getDocumentElement==null?void 0:i.getDocumentElement(a.floating)),boundary:c,rootBoundary:u,strategy:l})),_=f==="floating"?{...s.floating,x:r,y:o}:s.reference,S=await(i.getOffsetParent==null?void 0:i.getOffsetParent(a.floating)),R=await(i.isElement==null?void 0:i.isElement(S))?await(i.getScale==null?void 0:i.getScale(S))||{x:1,y:1}:{x:1,y:1},C=Qp(i.convertOffsetParentRelativeRectToViewportRelativeRect?await i.convertOffsetParentRelativeRectToViewportRelativeRect({rect:_,offsetParent:S,strategy:l}):_);return{top:(w.top-C.top+v.top)/R.y,bottom:(C.bottom-w.bottom+v.bottom)/R.y,left:(w.left-C.left+v.left)/R.x,right:(C.right-w.right+v.right)/R.x}}const YR=e=>({name:"arrow",options:e,async fn(t){const{x:n,y:r,placement:o,rects:i,platform:s,elements:a,middlewareData:l}=t,{element:c,padding:u=0}=Bi(e,t)||{};if(c==null)return{};const f=aT(u),p={x:n,y:r},g=Cw(o),v=Sw(g),b=await s.getDimensions(c),x=g==="y",w=x?"top":"left",_=x?"bottom":"right",S=x?"clientHeight":"clientWidth",R=i.reference[v]+i.reference[g]-p[g]-i.floating[v],C=p[g]-i.reference[g],P=await(s.getOffsetParent==null?void 0:s.getOffsetParent(c));let A=P?P[S]:0;(!A||!await(s.isElement==null?void 0:s.isElement(P)))&&(A=a.floating[S]||i.floating[v]);const k=R/2-C/2,D=A/2-b[v]/2-1,I=Is(f[w],D),z=Is(f[_],D),j=I,K=A-b[v]-z,q=A/2-b[v]/2+k,B=xy(j,q,K),Q=!l.arrow&&Mc(o)!=null&&q!=B&&i.reference[v]/2-(q<j?I:z)-b[v]/2<0,W=Q?q<j?q-j:q-K:0;return{[g]:p[g]+W,data:{[g]:B,centerOffset:q-B-W,...Q&&{alignmentOffset:W}},reset:Q}}}),AY=function(e){return e===void 0&&(e={}),{name:"flip",options:e,async fn(t){var n,r;const{placement:o,middlewareData:i,rects:s,initialPlacement:a,platform:l,elements:c}=t,{mainAxis:u=!0,crossAxis:f=!0,fallbackPlacements:p,fallbackStrategy:g="bestFit",fallbackAxisSideDirection:v="none",flipAlignment:b=!0,...x}=Bi(e,t);if((n=i.arrow)!=null&&n.alignmentOffset)return{};const w=Vi(o),_=Vi(a)===a,S=await(l.isRTL==null?void 0:l.isRTL(c.floating)),R=p||(_||!b?[Xp(a)]:$Y(a));!p&&v!=="none"&&R.push(...TY(a,b,v,S));const C=[a,...R],P=await cd(t,x),A=[];let k=((r=i.flip)==null?void 0:r.overflows)||[];if(u&&A.push(P[w]),f){const j=PY(o,s,S);A.push(P[j[0]],P[j[1]])}if(k=[...k,{placement:o,overflows:A}],!A.every(j=>j<=0)){var D,I;const j=(((D=i.flip)==null?void 0:D.index)||0)+1,K=C[j];if(K)return{data:{index:j,overflows:k},reset:{placement:K}};let q=(I=k.filter(B=>B.overflows[0]<=0).sort((B,Q)=>B.overflows[1]-Q.overflows[1])[0])==null?void 0:I.placement;if(!q)switch(g){case"bestFit":{var z;const B=(z=k.map(Q=>[Q.placement,Q.overflows.filter(W=>W>0).reduce((W,U)=>W+U,0)]).sort((Q,W)=>Q[1]-W[1])[0])==null?void 0:z[0];B&&(q=B);break}case"initialPlacement":q=a;break}if(o!==q)return{reset:{placement:q}}}return{}}}};function KR(e,t){return{top:e.top-t.height,right:e.right-t.width,bottom:e.bottom-t.height,left:e.left-t.width}}function XR(e){return EY.some(t=>e[t]>=0)}const IY=function(e){return e===void 0&&(e={}),{name:"hide",options:e,async fn(t){const{rects:n}=t,{strategy:r="referenceHidden",...o}=Bi(e,t);switch(r){case"referenceHidden":{const i=await cd(t,{...o,elementContext:"reference"}),s=KR(i,n.reference);return{data:{referenceHiddenOffsets:s,referenceHidden:XR(s)}}}case"escaped":{const i=await cd(t,{...o,altBoundary:!0}),s=KR(i,n.floating);return{data:{escapedOffsets:s,escaped:XR(s)}}}default:return{}}}}};async function NY(e,t){const{placement:n,platform:r,elements:o}=e,i=await(r.isRTL==null?void 0:r.isRTL(o.floating)),s=Vi(n),a=Mc(n),l=Ac(n)==="y",c=["left","top"].includes(s)?-1:1,u=i&&l?-1:1,f=Bi(t,e);let{mainAxis:p,crossAxis:g,alignmentAxis:v}=typeof f=="number"?{mainAxis:f,crossAxis:0,alignmentAxis:null}:{mainAxis:0,crossAxis:0,alignmentAxis:null,...f};return a&&typeof v=="number"&&(g=a==="end"?v*-1:v),l?{x:g*u,y:p*c}:{x:p*c,y:g*u}}const LY=function(e){return e===void 0&&(e=0),{name:"offset",options:e,async fn(t){var n,r;const{x:o,y:i,placement:s,middlewareData:a}=t,l=await NY(t,e);return s===((n=a.offset)==null?void 0:n.placement)&&(r=a.arrow)!=null&&r.alignmentOffset?{}:{x:o+l.x,y:i+l.y,data:{...l,placement:s}}}}},FY=function(e){return e===void 0&&(e={}),{name:"shift",options:e,async fn(t){const{x:n,y:r,placement:o}=t,{mainAxis:i=!0,crossAxis:s=!1,limiter:a={fn:x=>{let{x:w,y:_}=x;return{x:w,y:_}}},...l}=Bi(e,t),c={x:n,y:r},u=await cd(t,l),f=Ac(Vi(o)),p=_w(f);let g=c[p],v=c[f];if(i){const x=p==="y"?"top":"left",w=p==="y"?"bottom":"right",_=g+u[x],S=g-u[w];g=xy(_,g,S)}if(s){const x=f==="y"?"top":"left",w=f==="y"?"bottom":"right",_=v+u[x],S=v-u[w];v=xy(_,v,S)}const b=a.fn({...t,[p]:g,[f]:v});return{...b,data:{x:b.x-n,y:b.y-r}}}}},zY=function(e){return e===void 0&&(e={}),{options:e,fn(t){const{x:n,y:r,placement:o,rects:i,middlewareData:s}=t,{offset:a=0,mainAxis:l=!0,crossAxis:c=!0}=Bi(e,t),u={x:n,y:r},f=Ac(o),p=_w(f);let g=u[p],v=u[f];const b=Bi(a,t),x=typeof b=="number"?{mainAxis:b,crossAxis:0}:{mainAxis:0,crossAxis:0,...b};if(l){const S=p==="y"?"height":"width",R=i.reference[p]-i.floating[S]+x.mainAxis,C=i.reference[p]+i.reference[S]-x.mainAxis;g<R?g=R:g>C&&(g=C)}if(c){var w,_;const S=p==="y"?"width":"height",R=["top","left"].includes(Vi(o)),C=i.reference[f]-i.floating[S]+(R&&((w=s.offset)==null?void 0:w[f])||0)+(R?0:x.crossAxis),P=i.reference[f]+i.reference[S]+(R?0:((_=s.offset)==null?void 0:_[f])||0)-(R?x.crossAxis:0);v<C?v=C:v>P&&(v=P)}return{[p]:g,[f]:v}}}},jY=function(e){return e===void 0&&(e={}),{name:"size",options:e,async fn(t){const{placement:n,rects:r,platform:o,elements:i}=t,{apply:s=()=>{},...a}=Bi(e,t),l=await cd(t,a),c=Vi(n),u=Mc(n),f=Ac(n)==="y",{width:p,height:g}=r.floating;let v,b;c==="top"||c==="bottom"?(v=c,b=u===(await(o.isRTL==null?void 0:o.isRTL(i.floating))?"start":"end")?"left":"right"):(b=c,v=u==="end"?"top":"bottom");const x=g-l[v],w=p-l[b],_=!t.middlewareData.shift;let S=x,R=w;if(f){const P=p-l.left-l.right;R=u||_?Is(w,P):P}else{const P=g-l.top-l.bottom;S=u||_?Is(x,P):P}if(_&&!u){const P=Kr(l.left,0),A=Kr(l.right,0),k=Kr(l.top,0),D=Kr(l.bottom,0);f?R=p-2*(P!==0||A!==0?P+A:Kr(l.left,l.right)):S=g-2*(k!==0||D!==0?k+D:Kr(l.top,l.bottom))}await s({...t,availableWidth:R,availableHeight:S});const C=await o.getDimensions(i.floating);return p!==C.width||g!==C.height?{reset:{rects:!0}}:{}}}};function Ls(e){return lT(e)?(e.nodeName||"").toLowerCase():"#document"}function Zr(e){var t;return(e==null||(t=e.ownerDocument)==null?void 0:t.defaultView)||window}function qi(e){var t;return(t=(lT(e)?e.ownerDocument:e.document)||window.document)==null?void 0:t.documentElement}function lT(e){return e instanceof Node||e instanceof Zr(e).Node}function Hi(e){return e instanceof Element||e instanceof Zr(e).Element}function ii(e){return e instanceof HTMLElement||e instanceof Zr(e).HTMLElement}function QR(e){return typeof ShadowRoot>"u"?!1:e instanceof ShadowRoot||e instanceof Zr(e).ShadowRoot}function cf(e){const{overflow:t,overflowX:n,overflowY:r,display:o}=_o(e);return/auto|scroll|overlay|hidden|clip/.test(t+r+n)&&!["inline","contents"].includes(o)}function BY(e){return["table","td","th"].includes(Ls(e))}function Ew(e){const t=Rw(),n=_o(e);return n.transform!=="none"||n.perspective!=="none"||(n.containerType?n.containerType!=="normal":!1)||!t&&(n.backdropFilter?n.backdropFilter!=="none":!1)||!t&&(n.filter?n.filter!=="none":!1)||["transform","perspective","filter"].some(r=>(n.willChange||"").includes(r))||["paint","layout","strict","content"].some(r=>(n.contain||"").includes(r))}function VY(e){let t=wc(e);for(;ii(t)&&!Ug(t);){if(Ew(t))return t;t=wc(t)}return null}function Rw(){return typeof CSS>"u"||!CSS.supports?!1:CSS.supports("-webkit-backdrop-filter","none")}function Ug(e){return["html","body","#document"].includes(Ls(e))}function _o(e){return Zr(e).getComputedStyle(e)}function qg(e){return Hi(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.pageXOffset,scrollTop:e.pageYOffset}}function wc(e){if(Ls(e)==="html")return e;const t=e.assignedSlot||e.parentNode||QR(e)&&e.host||qi(e);return QR(t)?t.host:t}function cT(e){const t=wc(e);return Ug(t)?e.ownerDocument?e.ownerDocument.body:e.body:ii(t)&&cf(t)?t:cT(t)}function ud(e,t,n){var r;t===void 0&&(t=[]),n===void 0&&(n=!0);const o=cT(e),i=o===((r=e.ownerDocument)==null?void 0:r.body),s=Zr(o);return i?t.concat(s,s.visualViewport||[],cf(o)?o:[],s.frameElement&&n?ud(s.frameElement):[]):t.concat(o,ud(o,[],n))}function uT(e){const t=_o(e);let n=parseFloat(t.width)||0,r=parseFloat(t.height)||0;const o=ii(e),i=o?e.offsetWidth:n,s=o?e.offsetHeight:r,a=Kp(n)!==i||Kp(r)!==s;return a&&(n=i,r=s),{width:n,height:r,$:a}}function Ow(e){return Hi(e)?e:e.contextElement}function Yl(e){const t=Ow(e);if(!ii(t))return Ns(1);const n=t.getBoundingClientRect(),{width:r,height:o,$:i}=uT(t);let s=(i?Kp(n.width):n.width)/r,a=(i?Kp(n.height):n.height)/o;return(!s||!Number.isFinite(s))&&(s=1),(!a||!Number.isFinite(a))&&(a=1),{x:s,y:a}}const HY=Ns(0);function dT(e){const t=Zr(e);return!Rw()||!t.visualViewport?HY:{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}}function WY(e,t,n){return t===void 0&&(t=!1),!n||t&&n!==Zr(e)?!1:t}function Ya(e,t,n,r){t===void 0&&(t=!1),n===void 0&&(n=!1);const o=e.getBoundingClientRect(),i=Ow(e);let s=Ns(1);t&&(r?Hi(r)&&(s=Yl(r)):s=Yl(e));const a=WY(i,n,r)?dT(i):Ns(0);let l=(o.left+a.x)/s.x,c=(o.top+a.y)/s.y,u=o.width/s.x,f=o.height/s.y;if(i){const p=Zr(i),g=r&&Hi(r)?Zr(r):r;let v=p.frameElement;for(;v&&r&&g!==p;){const b=Yl(v),x=v.getBoundingClientRect(),w=_o(v),_=x.left+(v.clientLeft+parseFloat(w.paddingLeft))*b.x,S=x.top+(v.clientTop+parseFloat(w.paddingTop))*b.y;l*=b.x,c*=b.y,u*=b.x,f*=b.y,l+=_,c+=S,v=Zr(v).frameElement}}return Qp({width:u,height:f,x:l,y:c})}function UY(e){let{rect:t,offsetParent:n,strategy:r}=e;const o=ii(n),i=qi(n);if(n===i)return t;let s={scrollLeft:0,scrollTop:0},a=Ns(1);const l=Ns(0);if((o||!o&&r!=="fixed")&&((Ls(n)!=="body"||cf(i))&&(s=qg(n)),ii(n))){const c=Ya(n);a=Yl(n),l.x=c.x+n.clientLeft,l.y=c.y+n.clientTop}return{width:t.width*a.x,height:t.height*a.y,x:t.x*a.x-s.scrollLeft*a.x+l.x,y:t.y*a.y-s.scrollTop*a.y+l.y}}function qY(e){return Array.from(e.getClientRects())}function fT(e){return Ya(qi(e)).left+qg(e).scrollLeft}function GY(e){const t=qi(e),n=qg(e),r=e.ownerDocument.body,o=Kr(t.scrollWidth,t.clientWidth,r.scrollWidth,r.clientWidth),i=Kr(t.scrollHeight,t.clientHeight,r.scrollHeight,r.clientHeight);let s=-n.scrollLeft+fT(e);const a=-n.scrollTop;return _o(r).direction==="rtl"&&(s+=Kr(t.clientWidth,r.clientWidth)-o),{width:o,height:i,x:s,y:a}}function YY(e,t){const n=Zr(e),r=qi(e),o=n.visualViewport;let i=r.clientWidth,s=r.clientHeight,a=0,l=0;if(o){i=o.width,s=o.height;const c=Rw();(!c||c&&t==="fixed")&&(a=o.offsetLeft,l=o.offsetTop)}return{width:i,height:s,x:a,y:l}}function KY(e,t){const n=Ya(e,!0,t==="fixed"),r=n.top+e.clientTop,o=n.left+e.clientLeft,i=ii(e)?Yl(e):Ns(1),s=e.clientWidth*i.x,a=e.clientHeight*i.y,l=o*i.x,c=r*i.y;return{width:s,height:a,x:l,y:c}}function JR(e,t,n){let r;if(t==="viewport")r=YY(e,n);else if(t==="document")r=GY(qi(e));else if(Hi(t))r=KY(t,n);else{const o=dT(e);r={...t,x:t.x-o.x,y:t.y-o.y}}return Qp(r)}function hT(e,t){const n=wc(e);return n===t||!Hi(n)||Ug(n)?!1:_o(n).position==="fixed"||hT(n,t)}function XY(e,t){const n=t.get(e);if(n)return n;let r=ud(e,[],!1).filter(a=>Hi(a)&&Ls(a)!=="body"),o=null;const i=_o(e).position==="fixed";let s=i?wc(e):e;for(;Hi(s)&&!Ug(s);){const a=_o(s),l=Ew(s);!l&&a.position==="fixed"&&(o=null),(i?!l&&!o:!l&&a.position==="static"&&!!o&&["absolute","fixed"].includes(o.position)||cf(s)&&!l&&hT(e,s))?r=r.filter(u=>u!==s):o=a,s=wc(s)}return t.set(e,r),r}function QY(e){let{element:t,boundary:n,rootBoundary:r,strategy:o}=e;const s=[...n==="clippingAncestors"?XY(t,this._c):[].concat(n),r],a=s[0],l=s.reduce((c,u)=>{const f=JR(t,u,o);return c.top=Kr(f.top,c.top),c.right=Is(f.right,c.right),c.bottom=Is(f.bottom,c.bottom),c.left=Kr(f.left,c.left),c},JR(t,a,o));return{width:l.right-l.left,height:l.bottom-l.top,x:l.left,y:l.top}}function JY(e){return uT(e)}function ZY(e,t,n){const r=ii(t),o=qi(t),i=n==="fixed",s=Ya(e,!0,i,t);let a={scrollLeft:0,scrollTop:0};const l=Ns(0);if(r||!r&&!i)if((Ls(t)!=="body"||cf(o))&&(a=qg(t)),r){const c=Ya(t,!0,i,t);l.x=c.x+t.clientLeft,l.y=c.y+t.clientTop}else o&&(l.x=fT(o));return{x:s.left+a.scrollLeft-l.x,y:s.top+a.scrollTop-l.y,width:s.width,height:s.height}}function ZR(e,t){return!ii(e)||_o(e).position==="fixed"?null:t?t(e):e.offsetParent}function pT(e,t){const n=Zr(e);if(!ii(e))return n;let r=ZR(e,t);for(;r&&BY(r)&&_o(r).position==="static";)r=ZR(r,t);return r&&(Ls(r)==="html"||Ls(r)==="body"&&_o(r).position==="static"&&!Ew(r))?n:r||VY(e)||n}const eK=async function(e){let{reference:t,floating:n,strategy:r}=e;const o=this.getOffsetParent||pT,i=this.getDimensions;return{reference:ZY(t,await o(n),r),floating:{x:0,y:0,...await i(n)}}};function tK(e){return _o(e).direction==="rtl"}const nK={convertOffsetParentRelativeRectToViewportRelativeRect:UY,getDocumentElement:qi,getClippingRect:QY,getOffsetParent:pT,getElementRects:eK,getClientRects:qY,getDimensions:JY,getScale:Yl,isElement:Hi,isRTL:tK};function rK(e,t){let n=null,r;const o=qi(e);function i(){clearTimeout(r),n&&n.disconnect(),n=null}function s(a,l){a===void 0&&(a=!1),l===void 0&&(l=1),i();const{left:c,top:u,width:f,height:p}=e.getBoundingClientRect();if(a||t(),!f||!p)return;const g=jh(u),v=jh(o.clientWidth-(c+f)),b=jh(o.clientHeight-(u+p)),x=jh(c),_={rootMargin:-g+"px "+-v+"px "+-b+"px "+-x+"px",threshold:Kr(0,Is(1,l))||1};let S=!0;function R(C){const P=C[0].intersectionRatio;if(P!==l){if(!S)return s();P?s(!1,P):r=setTimeout(()=>{s(!1,1e-7)},100)}S=!1}try{n=new IntersectionObserver(R,{..._,root:o.ownerDocument})}catch{n=new IntersectionObserver(R,_)}n.observe(e)}return s(!0),i}function oK(e,t,n,r){r===void 0&&(r={});const{ancestorScroll:o=!0,ancestorResize:i=!0,elementResize:s=typeof ResizeObserver=="function",layoutShift:a=typeof IntersectionObserver=="function",animationFrame:l=!1}=r,c=Ow(e),u=o||i?[...c?ud(c):[],...ud(t)]:[];u.forEach(w=>{o&&w.addEventListener("scroll",n,{passive:!0}),i&&w.addEventListener("resize",n)});const f=c&&a?rK(c,n):null;let p=-1,g=null;s&&(g=new ResizeObserver(w=>{let[_]=w;_&&_.target===c&&g&&(g.unobserve(t),cancelAnimationFrame(p),p=requestAnimationFrame(()=>{g&&g.observe(t)})),n()}),c&&!l&&g.observe(c),g.observe(t));let v,b=l?Ya(e):null;l&&x();function x(){const w=Ya(e);b&&(w.x!==b.x||w.y!==b.y||w.width!==b.width||w.height!==b.height)&&n(),b=w,v=requestAnimationFrame(x)}return n(),()=>{u.forEach(w=>{o&&w.removeEventListener("scroll",n),i&&w.removeEventListener("resize",n)}),f&&f(),g&&g.disconnect(),g=null,l&&cancelAnimationFrame(v)}}const iK=(e,t,n)=>{const r=new Map,o={platform:nK,...n},i={...o.platform,_c:r};return MY(e,t,{...o,platform:i})},sK=e=>{function t(n){return{}.hasOwnProperty.call(n,"current")}return{name:"arrow",options:e,fn(n){const{element:r,padding:o}=typeof e=="function"?e(n):e;return r&&t(r)?r.current!=null?YR({element:r.current,padding:o}).fn(n):{}:r?YR({element:r,padding:o}).fn(n):{}}}};var Sp=typeof document<"u"?m.useLayoutEffect:m.useEffect;function Jp(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,o;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(!Jp(e[r],t[r]))return!1;return!0}if(o=Object.keys(e),n=o.length,n!==Object.keys(t).length)return!1;for(r=n;r--!==0;)if(!{}.hasOwnProperty.call(t,o[r]))return!1;for(r=n;r--!==0;){const i=o[r];if(!(i==="_owner"&&e.$$typeof)&&!Jp(e[i],t[i]))return!1}return!0}return e!==e&&t!==t}function gT(e){return typeof window>"u"?1:(e.ownerDocument.defaultView||window).devicePixelRatio||1}function e2(e,t){const n=gT(e);return Math.round(t*n)/n}function t2(e){const t=pe.useRef(e);return Sp(()=>{t.current=e}),t}function aK(e){e===void 0&&(e={});const{placement:t="bottom",strategy:n="absolute",middleware:r=[],platform:o,elements:{reference:i,floating:s}={},transform:a=!0,whileElementsMounted:l,open:c}=e,[u,f]=pe.useState({x:0,y:0,strategy:n,placement:t,middlewareData:{},isPositioned:!1}),[p,g]=pe.useState(r);Jp(p,r)||g(r);const[v,b]=pe.useState(null),[x,w]=pe.useState(null),_=pe.useCallback(Q=>{Q!=P.current&&(P.current=Q,b(Q))},[b]),S=pe.useCallback(Q=>{Q!==A.current&&(A.current=Q,w(Q))},[w]),R=i||v,C=s||x,P=pe.useRef(null),A=pe.useRef(null),k=pe.useRef(u),D=t2(l),I=t2(o),z=pe.useCallback(()=>{if(!P.current||!A.current)return;const Q={placement:t,strategy:n,middleware:p};I.current&&(Q.platform=I.current),iK(P.current,A.current,Q).then(W=>{const U={...W,isPositioned:!0};j.current&&!Jp(k.current,U)&&(k.current=U,A6.flushSync(()=>{f(U)}))})},[p,t,n,I]);Sp(()=>{c===!1&&k.current.isPositioned&&(k.current.isPositioned=!1,f(Q=>({...Q,isPositioned:!1})))},[c]);const j=pe.useRef(!1);Sp(()=>(j.current=!0,()=>{j.current=!1}),[]),Sp(()=>{if(R&&(P.current=R),C&&(A.current=C),R&&C){if(D.current)return D.current(R,C,z);z()}},[R,C,z,D]);const K=pe.useMemo(()=>({reference:P,floating:A,setReference:_,setFloating:S}),[_,S]),q=pe.useMemo(()=>({reference:R,floating:C}),[R,C]),B=pe.useMemo(()=>{const Q={position:n,left:0,top:0};if(!q.floating)return Q;const W=e2(q.floating,u.x),U=e2(q.floating,u.y);return a?{...Q,transform:"translate("+W+"px, "+U+"px)",...gT(q.floating)>=1.5&&{willChange:"transform"}}:{position:n,left:W,top:U}},[n,a,q.floating,u.x,u.y]);return pe.useMemo(()=>({...u,update:z,refs:K,elements:q,floatingStyles:B}),[u,z,K,q,B])}function Gg(e){const[t,n]=m.useState(void 0);return tr(()=>{if(e){n({width:e.offsetWidth,height:e.offsetHeight});const r=new ResizeObserver(o=>{if(!Array.isArray(o)||!o.length)return;const i=o[0];let s,a;if("borderBoxSize"in i){const l=i.borderBoxSize,c=Array.isArray(l)?l[0]:l;s=c.inlineSize,a=c.blockSize}else s=e.offsetWidth,a=e.offsetHeight;n({width:s,height:a})});return r.observe(e,{box:"border-box"}),()=>r.unobserve(e)}else n(void 0)},[e]),t}const mT="Popper",[vT,di]=Bn(mT),[lK,bT]=vT(mT),cK=e=>{const{__scopePopper:t,children:n}=e,[r,o]=m.useState(null);return m.createElement(lK,{scope:t,anchor:r,onAnchorChange:o},n)},uK="PopperAnchor",dK=m.forwardRef((e,t)=>{const{__scopePopper:n,virtualRef:r,...o}=e,i=bT(uK,n),s=m.useRef(null),a=lt(t,s);return m.useEffect(()=>{i.onAnchorChange((r==null?void 0:r.current)||s.current)}),r?null:m.createElement(Ue.div,le({},o,{ref:a}))}),yT="PopperContent",[fK,qpe]=vT(yT),hK=m.forwardRef((e,t)=>{var n,r,o,i,s,a,l,c;const{__scopePopper:u,side:f="bottom",sideOffset:p=0,align:g="center",alignOffset:v=0,arrowPadding:b=0,avoidCollisions:x=!0,collisionBoundary:w=[],collisionPadding:_=0,sticky:S="partial",hideWhenDetached:R=!1,updatePositionStrategy:C="optimized",onPlaced:P,...A}=e,k=bT(yT,u),[D,I]=m.useState(null),z=lt(t,Oe=>I(Oe)),[j,K]=m.useState(null),q=Gg(j),B=(n=q==null?void 0:q.width)!==null&&n!==void 0?n:0,Q=(r=q==null?void 0:q.height)!==null&&r!==void 0?r:0,W=f+(g!=="center"?"-"+g:""),U=typeof _=="number"?_:{top:0,right:0,bottom:0,left:0,..._},Z=Array.isArray(w)?w:[w],T=Z.length>0,V={padding:U,boundary:Z.filter(pK),altBoundary:T},{refs:X,floatingStyles:N,placement:se,isPositioned:ae,middlewareData:ue}=aK({strategy:"fixed",placement:W,whileElementsMounted:(...Oe)=>oK(...Oe,{animationFrame:C==="always"}),elements:{reference:k.anchor},middleware:[LY({mainAxis:p+Q,alignmentAxis:v}),x&&FY({mainAxis:!0,crossAxis:!1,limiter:S==="partial"?zY():void 0,...V}),x&&AY({...V}),jY({...V,apply:({elements:Oe,rects:$e,availableWidth:Ve,availableHeight:Fe})=>{const{width:ke,height:Ge}=$e.reference,ct=Oe.floating.style;ct.setProperty("--radix-popper-available-width",`${Ve}px`),ct.setProperty("--radix-popper-available-height",`${Fe}px`),ct.setProperty("--radix-popper-anchor-width",`${ke}px`),ct.setProperty("--radix-popper-anchor-height",`${Ge}px`)}}),j&&sK({element:j,padding:b}),gK({arrowWidth:B,arrowHeight:Q}),R&&IY({strategy:"referenceHidden",...V})]}),[fe,oe]=xT(se),ee=Mn(P);tr(()=>{ae&&(ee==null||ee())},[ae,ee]);const ie=(o=ue.arrow)===null||o===void 0?void 0:o.x,be=(i=ue.arrow)===null||i===void 0?void 0:i.y,G=((s=ue.arrow)===null||s===void 0?void 0:s.centerOffset)!==0,[me,_e]=m.useState();return tr(()=>{D&&_e(window.getComputedStyle(D).zIndex)},[D]),m.createElement("div",{ref:X.setFloating,"data-radix-popper-content-wrapper":"",style:{...N,transform:ae?N.transform:"translate(0, -200%)",minWidth:"max-content",zIndex:me,"--radix-popper-transform-origin":[(a=ue.transformOrigin)===null||a===void 0?void 0:a.x,(l=ue.transformOrigin)===null||l===void 0?void 0:l.y].join(" ")},dir:e.dir},m.createElement(fK,{scope:u,placedSide:fe,onArrowChange:K,arrowX:ie,arrowY:be,shouldHideArrow:G},m.createElement(Ue.div,le({"data-side":fe,"data-align":oe},A,{ref:z,style:{...A.style,animation:ae?void 0:"none",opacity:(c=ue.hide)!==null&&c!==void 0&&c.referenceHidden?0:void 0}}))))});function pK(e){return e!==null}const gK=e=>({name:"transformOrigin",options:e,fn(t){var n,r,o,i,s;const{placement:a,rects:l,middlewareData:c}=t,f=((n=c.arrow)===null||n===void 0?void 0:n.centerOffset)!==0,p=f?0:e.arrowWidth,g=f?0:e.arrowHeight,[v,b]=xT(a),x={start:"0%",center:"50%",end:"100%"}[b],w=((r=(o=c.arrow)===null||o===void 0?void 0:o.x)!==null&&r!==void 0?r:0)+p/2,_=((i=(s=c.arrow)===null||s===void 0?void 0:s.y)!==null&&i!==void 0?i:0)+g/2;let S="",R="";return v==="bottom"?(S=f?x:`${w}px`,R=`${-g}px`):v==="top"?(S=f?x:`${w}px`,R=`${l.floating.height+g}px`):v==="right"?(S=`${-g}px`,R=f?x:`${_}px`):v==="left"&&(S=`${l.floating.width+g}px`,R=f?x:`${_}px`),{data:{x:S,y:R}}}});function xT(e){const[t,n="center"]=e.split("-");return[t,n]}const uf=cK,df=dK,ff=hK,Yg=m.forwardRef((e,t)=>{var n;const{container:r=globalThis==null||(n=globalThis.document)===null||n===void 0?void 0:n.body,...o}=e;return r?Fo.createPortal(m.createElement(Ue.div,le({},o,{ref:t})),r):null}),wT=m.forwardRef((e,t)=>m.createElement(Ue.span,le({},e,{ref:t,style:{position:"absolute",border:0,width:1,height:1,padding:0,margin:-1,overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",wordWrap:"normal",...e.style}}))),mK=wT,[Kg,Gpe]=Bn("Tooltip",[di]),Pw=di(),vK="TooltipProvider",bK=700,_y="tooltip.open",[yK,$w]=Kg(vK),xK=e=>{const{__scopeTooltip:t,delayDuration:n=bK,skipDelayDuration:r=300,disableHoverableContent:o=!1,children:i}=e,[s,a]=m.useState(!0),l=m.useRef(!1),c=m.useRef(0);return m.useEffect(()=>{const u=c.current;return()=>window.clearTimeout(u)},[]),m.createElement(yK,{scope:t,isOpenDelayed:s,delayDuration:n,onOpen:m.useCallback(()=>{window.clearTimeout(c.current),a(!1)},[]),onClose:m.useCallback(()=>{window.clearTimeout(c.current),c.current=window.setTimeout(()=>a(!0),r)},[r]),isPointerInTransitRef:l,onPointerInTransitChange:m.useCallback(u=>{l.current=u},[]),disableHoverableContent:o},i)},Dw="Tooltip",[wK,Xg]=Kg(Dw),_K=e=>{const{__scopeTooltip:t,children:n,open:r,defaultOpen:o=!1,onOpenChange:i,disableHoverableContent:s,delayDuration:a}=e,l=$w(Dw,e.__scopeTooltip),c=Pw(t),[u,f]=m.useState(null),p=$r(),g=m.useRef(0),v=s??l.disableHoverableContent,b=a??l.delayDuration,x=m.useRef(!1),[w=!1,_]=nr({prop:r,defaultProp:o,onChange:A=>{A?(l.onOpen(),document.dispatchEvent(new CustomEvent(_y))):l.onClose(),i==null||i(A)}}),S=m.useMemo(()=>w?x.current?"delayed-open":"instant-open":"closed",[w]),R=m.useCallback(()=>{window.clearTimeout(g.current),x.current=!1,_(!0)},[_]),C=m.useCallback(()=>{window.clearTimeout(g.current),_(!1)},[_]),P=m.useCallback(()=>{window.clearTimeout(g.current),g.current=window.setTimeout(()=>{x.current=!0,_(!0)},b)},[b,_]);return m.useEffect(()=>()=>window.clearTimeout(g.current),[]),m.createElement(uf,c,m.createElement(wK,{scope:t,contentId:p,open:w,stateAttribute:S,trigger:u,onTriggerChange:f,onTriggerEnter:m.useCallback(()=>{l.isOpenDelayed?P():R()},[l.isOpenDelayed,P,R]),onTriggerLeave:m.useCallback(()=>{v?C():window.clearTimeout(g.current)},[C,v]),onOpen:R,onClose:C,disableHoverableContent:v},n))},n2="TooltipTrigger",_T=m.forwardRef((e,t)=>{const{__scopeTooltip:n,...r}=e,o=Xg(n2,n),i=$w(n2,n),s=Pw(n),a=m.useRef(null),l=lt(t,a,o.onTriggerChange),c=m.useRef(!1),u=m.useRef(!1),f=m.useCallback(()=>c.current=!1,[]);return m.useEffect(()=>()=>document.removeEventListener("pointerup",f),[f]),m.createElement(df,le({asChild:!0},s),m.createElement(Ue.button,le({"aria-describedby":o.open?o.contentId:void 0,"data-state":o.stateAttribute},r,{ref:l,onPointerMove:Re(e.onPointerMove,p=>{p.pointerType!=="touch"&&!u.current&&!i.isPointerInTransitRef.current&&(o.onTriggerEnter(),u.current=!0)}),onPointerLeave:Re(e.onPointerLeave,()=>{o.onTriggerLeave(),u.current=!1}),onPointerDown:Re(e.onPointerDown,()=>{c.current=!0,document.addEventListener("pointerup",f,{once:!0})}),onFocus:Re(e.onFocus,()=>{c.current||o.onOpen()}),onBlur:Re(e.onBlur,o.onClose),onClick:Re(e.onClick,o.onClose)})))}),SK="TooltipPortal",[Ype,CK]=Kg(SK,{forceMount:void 0}),dd="TooltipContent",EK=m.forwardRef((e,t)=>{const n=CK(dd,e.__scopeTooltip),{forceMount:r=n.forceMount,side:o="top",...i}=e,s=Xg(dd,e.__scopeTooltip);return m.createElement(Rn,{present:r||s.open},s.disableHoverableContent?m.createElement(ST,le({side:o},i,{ref:t})):m.createElement(RK,le({side:o},i,{ref:t})))}),RK=m.forwardRef((e,t)=>{const n=Xg(dd,e.__scopeTooltip),r=$w(dd,e.__scopeTooltip),o=m.useRef(null),i=lt(t,o),[s,a]=m.useState(null),{trigger:l,onClose:c}=n,u=o.current,{onPointerInTransitChange:f}=r,p=m.useCallback(()=>{a(null),f(!1)},[f]),g=m.useCallback((v,b)=>{const x=v.currentTarget,w={x:v.clientX,y:v.clientY},_=PK(w,x.getBoundingClientRect()),S=$K(w,_),R=DK(b.getBoundingClientRect()),C=kK([...S,...R]);a(C),f(!0)},[f]);return m.useEffect(()=>()=>p(),[p]),m.useEffect(()=>{if(l&&u){const v=x=>g(x,u),b=x=>g(x,l);return l.addEventListener("pointerleave",v),u.addEventListener("pointerleave",b),()=>{l.removeEventListener("pointerleave",v),u.removeEventListener("pointerleave",b)}}},[l,u,g,p]),m.useEffect(()=>{if(s){const v=b=>{const x=b.target,w={x:b.clientX,y:b.clientY},_=(l==null?void 0:l.contains(x))||(u==null?void 0:u.contains(x)),S=!TK(w,s);_?p():S&&(p(),c())};return document.addEventListener("pointermove",v),()=>document.removeEventListener("pointermove",v)}},[l,u,s,c,p]),m.createElement(ST,le({},e,{ref:i}))}),[OK,Kpe]=Kg(Dw,{isInside:!1}),ST=m.forwardRef((e,t)=>{const{__scopeTooltip:n,children:r,"aria-label":o,onEscapeKeyDown:i,onPointerDownOutside:s,...a}=e,l=Xg(dd,n),c=Pw(n),{onClose:u}=l;return m.useEffect(()=>(document.addEventListener(_y,u),()=>document.removeEventListener(_y,u)),[u]),m.useEffect(()=>{if(l.trigger){const f=p=>{const g=p.target;g!=null&&g.contains(l.trigger)&&u()};return window.addEventListener("scroll",f,{capture:!0}),()=>window.removeEventListener("scroll",f,{capture:!0})}},[l.trigger,u]),m.createElement(kc,{asChild:!0,disableOutsidePointerEvents:!1,onEscapeKeyDown:i,onPointerDownOutside:s,onFocusOutside:f=>f.preventDefault(),onDismiss:u},m.createElement(ff,le({"data-state":l.stateAttribute},c,a,{ref:t,style:{...a.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)"}}),m.createElement(WP,null,r),m.createElement(OK,{scope:n,isInside:!0},m.createElement(mK,{id:l.contentId,role:"tooltip"},o||r))))});function PK(e,t){const n=Math.abs(t.top-e.y),r=Math.abs(t.bottom-e.y),o=Math.abs(t.right-e.x),i=Math.abs(t.left-e.x);switch(Math.min(n,r,o,i)){case i:return"left";case o:return"right";case n:return"top";case r:return"bottom";default:throw new Error("unreachable")}}function $K(e,t,n=5){const 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 DK(e){const{top:t,right:n,bottom:r,left:o}=e;return[{x:o,y:t},{x:n,y:t},{x:n,y:r},{x:o,y:r}]}function TK(e,t){const{x:n,y:r}=e;let o=!1;for(let i=0,s=t.length-1;i<t.length;s=i++){const a=t[i].x,l=t[i].y,c=t[s].x,u=t[s].y;l>r!=u>r&&n<(c-a)*(r-l)/(u-l)+a&&(o=!o)}return o}function kK(e){const t=e.slice();return t.sort((n,r)=>n.x<r.x?-1:n.x>r.x?1:n.y<r.y?-1:n.y>r.y?1:0),MK(t)}function MK(e){if(e.length<=1)return e.slice();const t=[];for(let r=0;r<e.length;r++){const o=e[r];for(;t.length>=2;){const i=t[t.length-1],s=t[t.length-2];if((i.x-s.x)*(o.y-s.y)>=(i.y-s.y)*(o.x-s.x))t.pop();else break}t.push(o)}t.pop();const n=[];for(let r=e.length-1;r>=0;r--){const o=e[r];for(;n.length>=2;){const i=n[n.length-1],s=n[n.length-2];if((i.x-s.x)*(o.y-s.y)>=(i.y-s.y)*(o.x-s.x))n.pop();else break}n.push(o)}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)}const AK=xK,IK=_K,NK=_T,CT=EK,LK=AK,ET=IK,RT=NK,Tw=pe.forwardRef(({className:e,sideOffset:t=4,...n},r)=>O.jsx(CT,{ref:r,sideOffset:t,className:Ee("z-50 overflow-hidden rounded-md border bg-popover px-3 py-1.5 text-sm text-popover-foreground shadow-md animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-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",e),...n}));Tw.displayName=CT.displayName;function Fa({number:e,decimalPlaces:t=0,useSuffix:n=!1,customSuffix:r="",currency:o="",locale:i="en-US"}){let s=1,a=r,l=i;const c=t;n&&!r&&(e>=1e9?(s=1e9,a="B"):e>=1e7&&i==="en-IN"?(s=1e7,a="Cr"):e>=1e5&&i==="en-IN"?(s=1e5,a="L"):e>=1e6?(s=1e6,a="M"):e>=1e3&&(s=1e3,a="K"));const u=e/s,f={maximumFractionDigits:c,minimumFractionDigits:c};if(o){f.style="currency",f.currency=o;try{new Intl.NumberFormat(i,f).format(0)}catch{f.currency="USD"}}try{new Intl.NumberFormat(i,f).format(0)}catch{l="en-US"}let g=new Intl.NumberFormat(l,f).format(u);return n&&(g+=a),g}function OT(e,t){if(!t)return"";const n=t.find(r=>e>=r.start&&e<=r.end);return(n==null?void 0:n.color)||""}function PT({card:e,isLoading:t}){var w,_,S,R,C,P,A,k,D,I,z,j,K,q,B,Q,W,U,Z,T,V,X,N,se;const n=De(ae=>ae.actions.setCardTitle),r=De(ae=>ae.actions.setCardDescription),o=De(ae=>ae.isVisualEditing),i=Cr(ae=>ae.card),s=Cr(ae=>ae.actions.setCard);Cr(ae=>ae.actions.setNumberFormat);const a=De(ae=>ae.selectedSheetId),l=e.data,c=(_=(w=e.preferences)==null?void 0:w.formatNumber)==null?void 0:_.colorRanges,{metricKeys:u}=dr(l||[]),f=(S=l==null?void 0:l[0])==null?void 0:S[u==null?void 0:u[0]],p=(R=l==null?void 0:l[0])==null?void 0:R[u==null?void 0:u[1]],g=!!e.data&&e.data.length>0;function v(ae){o?s({...i,title:ae}):n(a,e.id,ae)}function b(ae){o?s({...i,description:ae}):r(a,e.id,ae)}const x=p&&p-f!==0?(f-p)/p:null;return O.jsxs("div",{className:"kpi-card flex grow flex-col overflow-scroll",children:[O.jsxs(Sg,{className:"grow pb-3",children:[O.jsx(Wa,{text:o?i.title:e.title,onSave:v,children:O.jsxs("div",{className:"flex items-center gap-2",children:[O.jsx(ef,{className:"text-base font-medium text-muted-foreground",children:e.title}),!e.refreshInterval&&t&&O.jsx(yw,{className:"h-4 w-4 animate-spin text-muted-foreground"})]})}),g&&O.jsxs("div",{className:"flex flex-wrap items-end gap-3 text-foreground",children:[O.jsx("p",{style:{color:OT(f,c)},className:"text-3xl font-semibold",children:Fa({number:f,decimalPlaces:((P=(C=e.preferences)==null?void 0:C.formatNumber)==null?void 0:P.decimalPlaces)||0,useSuffix:!!((k=(A=e.preferences)==null?void 0:A.formatNumber)!=null&&k.suffix),customSuffix:((I=(D=e.preferences)==null?void 0:D.formatNumber)==null?void 0:I.suffix)||"",locale:((j=(z=e.preferences)==null?void 0:z.formatNumber)==null?void 0:j.locale)||"",currency:((q=(K=e.preferences)==null?void 0:K.formatNumber)==null?void 0:q.currency)||""})}),p&&O.jsxs("span",{className:"min-w-fit text-base font-normal text-muted-foreground",children:["from  ",Fa({number:p,decimalPlaces:((Q=(B=e.preferences)==null?void 0:B.formatNumber)==null?void 0:Q.decimalPlaces)||0,useSuffix:!!((U=(W=e.preferences)==null?void 0:W.formatNumber)!=null&&U.suffix),customSuffix:((T=(Z=e.preferences)==null?void 0:Z.formatNumber)==null?void 0:T.suffix)||"",locale:((X=(V=e.preferences)==null?void 0:V.formatNumber)==null?void 0:X.locale)||"",currency:((se=(N=e.preferences)==null?void 0:N.formatNumber)==null?void 0:se.currency)||""})]})]})]}),x&&O.jsxs(Cg,{className:"grow items-start gap-1 pb-4 text-sm",children:[O.jsx(FK,{children:x}),O.jsxs("div",{className:"flex gap-1 text-muted-foreground",children:[x>0?"up ":"down ",O.jsx(Wa,{text:e.description||"",onSave:b,children:e.description})]})]})]})}function FK({children:e}){const t=e>0?O.jsx(mw,{className:"h-4 w-4"}):O.jsx(gw,{className:"h-4 w-4"}),n=`${Math.abs(e*100).toFixed(0)}%`;return O.jsxs("div",{className:Ee("flex items-center",{"text-green-600":e>0,"text-destructive":e<0}),children:[t,O.jsx("span",{className:"ml-[1px]",children:n})]})}var _c=1e3,Sc=_c*60,Cc=Sc*60,Ka=Cc*24,zK=Ka*7,jK=Ka*365.25,BK=function(e,t){t=t||{};var n=typeof e;if(n==="string"&&e.length>0)return VK(e);if(n==="number"&&isFinite(e))return t.long?WK(e):HK(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))};function VK(e){if(e=String(e),!(e.length>100)){var t=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(e);if(t){var n=parseFloat(t[1]),r=(t[2]||"ms").toLowerCase();switch(r){case"years":case"year":case"yrs":case"yr":case"y":return n*jK;case"weeks":case"week":case"w":return n*zK;case"days":case"day":case"d":return n*Ka;case"hours":case"hour":case"hrs":case"hr":case"h":return n*Cc;case"minutes":case"minute":case"mins":case"min":case"m":return n*Sc;case"seconds":case"second":case"secs":case"sec":case"s":return n*_c;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return n;default:return}}}}function HK(e){var t=Math.abs(e);return t>=Ka?Math.round(e/Ka)+"d":t>=Cc?Math.round(e/Cc)+"h":t>=Sc?Math.round(e/Sc)+"m":t>=_c?Math.round(e/_c)+"s":e+"ms"}function WK(e){var t=Math.abs(e);return t>=Ka?Bh(e,t,Ka,"day"):t>=Cc?Bh(e,t,Cc,"hour"):t>=Sc?Bh(e,t,Sc,"minute"):t>=_c?Bh(e,t,_c,"second"):e+" ms"}function Bh(e,t,n,r){var o=t>=n*1.5;return Math.round(e/n)+" "+r+(o?"s":"")}const UK=$c(BK);function $T({children:e}){const{setIsSessionExpired:t}=Wi(),n=new g8({queryCache:new IP({onError:r=>{console.error(`Something went wrong: ${r.message}`),r.message==="invalid token"&&t(!0)}}),defaultOptions:{queries:{refetchOnWindowFocus:!1,retry:1}}});return O.jsx(y8,{client:n,children:e})}const qK={id:"",authToken:void 0},DT=m.createContext(qK),TT=({children:e,dashboardProps:t})=>O.jsx($T,{children:O.jsx(DT.Provider,{value:t,children:e})});function nl(){const e=m.useContext(DT);if(e===void 0)throw new Error("useApplicationContext must be used within a ApplicationContextProvider");return e}function GK(e){De(c=>c.bookmarkKey);const t=De(c=>c.dashboard.baseQueries),{authToken:n}=nl(),r=De(c=>c.authToken),o=De(c=>c.filterValues),i=De(c=>c.isDashboardEditing),s=UK((e==null?void 0:e.refreshInterval)||"0"),a=pP(e.sql,t);return Zd({queryKey:[e.id,a],queryFn:()=>Xd("https://semaphor.cloud/api/v1/query",(n==null?void 0:n.accessToken)||(r==null?void 0:r.accessToken)||"",{connection_id:e.connectionId,sql:a,python:e.python===OP?"":e.python,active_filters:o}),refetchInterval:s,enabled:!!e.connectionId&&!i})}function fa({data:e,cfg:t,customCfg:n,preferences:r}){const{dimensionKeys:o,metricKeys:i}=dr(e),s=eY(i,e,r),a=_p(s,n),l=o[0],c=vy(e,l);kw(r,t),kT(r);const u=MT(t,r),f=Fi.merge((t==null?void 0:t.options)||{},r==null?void 0:r.chartOptions),p=Fi.merge(u,f),g=va(p,(n==null?void 0:n.options)||{});return{type:(n==null?void 0:n.type)||(t==null?void 0:t.type)||"bar",data:{labels:c,datasets:a},options:g}}function kw(e,t){var o,i,s;const n=((o=t==null?void 0:t.options)==null?void 0:o.indexAxis)==="y"?"x":"y";return(i=e==null?void 0:e.chartOptions)!=null&&i.indexAxis?((s=e==null?void 0:e.chartOptions)==null?void 0:s.indexAxis)==="x"?"y":"x":n}function kT(e){var n,r;return(n=e==null?void 0:e.chartOptions)!=null&&n.indexAxis?((r=e==null?void 0:e.chartOptions)==null?void 0:r.indexAxis)==="x"?"x":"y":"x"}function MT(e,t){var i,s,a,l,c,u,f,p,g,v,b,x;const n=kw(t,e),r=kT(t);return console.log("numberAxis",n,"categoryAxis",r),{...e==null?void 0:e.options,scales:{...(i=e==null?void 0:e.options)==null?void 0:i.scales,[n]:{...(a=(s=e==null?void 0:e.options)==null?void 0:s.scales)==null?void 0:a[n],ticks:{...(u=(c=(l=e==null?void 0:e.options)==null?void 0:l.scales)==null?void 0:c[n])==null?void 0:u.ticks,callback:w=>{var _,S,R,C;return Fa({number:Number(w),decimalPlaces:((_=t==null?void 0:t.numberAxisFormat)==null?void 0:_.decimalPlaces)||0,useSuffix:!!((S=t==null?void 0:t.numberAxisFormat)!=null&&S.suffix),customSuffix:"",locale:((R=t==null?void 0:t.numberAxisFormat)==null?void 0:R.locale)||"",currency:((C=t==null?void 0:t.numberAxisFormat)==null?void 0:C.currency)||""})}}},[r]:{...(g=(p=(f=e==null?void 0:e.options)==null?void 0:f.scales)==null?void 0:p[r])==null?void 0:g.ticks,callback:null}},plugins:{...(v=e==null?void 0:e.options)==null?void 0:v.plugins,datalabels:{...(x=(b=e==null?void 0:e.options)==null?void 0:b.plugins)==null?void 0:x.datalabels,formatter:function(w){var _,S,R,C;return Fa({number:Number(w),decimalPlaces:((_=t==null?void 0:t.numberAxisFormat)==null?void 0:_.decimalPlaces)||0,useSuffix:!!((S=t==null?void 0:t.numberAxisFormat)!=null&&S.suffix),customSuffix:"",locale:((R=t==null?void 0:t.numberAxisFormat)==null?void 0:R.locale)||"",currency:((C=t==null?void 0:t.numberAxisFormat)==null?void 0:C.currency)||""})}}}}}function YK(e){return{...e,type:"bar",options:{...e==null?void 0:e.options,indexAxis:"y",scales:{x:{display:!0},y:{display:!0}}}}}function KK(e){return{...e,type:"bar",options:{...e==null?void 0:e.options,indexAxis:"y",scales:{x:{beginAtZero:!0,stack:1,reverse:!0},y:{stacked:!0,beginAtZero:!0}}}}}function XK(e){return{...e,type:"bar",options:{...e==null?void 0:e.options,scales:{x:{display:!0},y:{display:!0}}}}}function QK(e,t=!1){return{...e,type:"bar",options:{...e==null?void 0:e.options,indexAxis:"y",scales:{x:{display:!0,beginAtZero:!1},y:{display:!0,stacked:t}}}}}function JK(e){var n,r,o,i;return{...e,type:"bar",options:{...e==null?void 0:e.options,scales:{x:{...(r=(n=e==null?void 0:e.options)==null?void 0:n.scales)==null?void 0:r.x,display:!0,stacked:!0},y:{...(i=(o=e==null?void 0:e.options)==null?void 0:o.scales)==null?void 0:i.y,display:!0,stacked:!0}}}}}function ZK(e){return{...e,type:"line",options:{...e==null?void 0:e.options,scales:{x:{display:!0},y:{display:!0}}}}}function eX(e,t){return{...t,type:e,options:{...t==null?void 0:t.options,scales:{x:{display:!1},y:{display:!1}},plugins:{legend:{position:"top",align:"center",maxHeight:0,labels:{useBorderRadius:!0,borderRadius:2}}},borderRadius:0}}}function tX(e){return{...e,type:"radar",options:{...e==null?void 0:e.options,scales:{x:{display:!1},y:{display:!1}}}}}function nX(e){const n=new Function("getDatalabelColor",e)(P0);return{options:n==null?void 0:n.options,plugins:(n==null?void 0:n.plugins)||[]}}function Mw({data:e,cardType:t="bar",cfg:n,customCfg:r,provider:o="chartjs",userSettings:i,preferences:s}){var a,l,c;if(t==="bar"){const u=XK(n);return fa({data:e,cfg:u,customCfg:r,cardType:t,userSettings:i,provider:o,preferences:s})}if(t==="horizontalBar"){const u=YK(n);return fa({data:e,cfg:u,customCfg:r,cardType:t,userSettings:i,provider:o,preferences:s})}if(t==="pyramid"){const u=KK(n),{dimensionKeys:f,metricKeys:p}=dr(e),g=Yp({dataArray:e,groupKey:f[0],pivotKey:f[1],valueKey:p[0]}),v=fa({data:g,cfg:u,customCfg:r,cardType:t,userSettings:i,provider:o,preferences:s}),b="x2";return{...v,data:{...v.data,datasets:v.data.datasets.map((w,_)=>_===1?{...w,xAxisID:b}:w)},options:{...v.options,scales:{...(a=v==null?void 0:v.options)==null?void 0:a.scales,[b]:{beginAtZero:!0,stack:1}}}}}if(t==="stackedBar"){const u=JK(n),{dimensionKeys:f,metricKeys:p}=dr(e),g=Yp({dataArray:e,groupKey:f[0],pivotKey:f[1],valueKey:p[0]});return fa({data:g,cfg:u,customCfg:r,cardType:t,userSettings:i,provider:o,preferences:s})}if(t==="line"){const u=ZK(n);return fa({data:e,cfg:u,customCfg:r,cardType:t,userSettings:i,provider:o,preferences:s})}if(t==="range"){QK(n);const u=rY(e),f=_p(u,r),{plugins:p,options:g}=nX((s==null?void 0:s.customVisualCode)||""),v=va((n==null?void 0:n.options)||{},(s==null?void 0:s.chartOptions)||{}),b=va(v,(r==null?void 0:r.options)||{});console.log("withCustomConfigOPtions",b);const x=va(b,g),w=MT(n,s),_=va(x,w),S={..._,plugins:{..._==null?void 0:_.plugins,datalabels:{...(l=_==null?void 0:_.plugins)==null?void 0:l.datalabels,formatter:(k,D)=>k.map(z=>{var j,K,q,B;return Fa({number:Number(z),decimalPlaces:((j=s==null?void 0:s.numberAxisFormat)==null?void 0:j.decimalPlaces)||0,useSuffix:!!((K=s==null?void 0:s.numberAxisFormat)!=null&&K.suffix),customSuffix:"",locale:((q=s==null?void 0:s.numberAxisFormat)==null?void 0:q.locale)||"",currency:((B=s==null?void 0:s.numberAxisFormat)==null?void 0:B.currency)||""})}).slice(0,2).join(" - ")}}},{dimensionKeys:R}=dr(e),C=R[0];return{type:"bar",data:{labels:[...new Set(vy(e,C))],datasets:f},options:S,plugins:[...p]}}if(t==="pie"||t==="doughnut"||t==="polarArea"){const u=eX(t,n),{dimensionKeys:f,metricKeys:p}=dr(e),g=oY(p,e),v=_p(g,r),b=f[0],x=vy(e,b),w=va((u==null?void 0:u.options)||{},(r==null?void 0:r.options)||{}),_={...w,plugins:{...w.plugins,datalabels:{...(c=w.plugins)==null?void 0:c.datalabels,formatter:(C,P)=>{var A,k,D,I;return Fa({number:Number(C),decimalPlaces:((A=s==null?void 0:s.numberAxisFormat)==null?void 0:A.decimalPlaces)||0,useSuffix:!!((k=s==null?void 0:s.numberAxisFormat)!=null&&k.suffix),customSuffix:"",locale:((D=s==null?void 0:s.numberAxisFormat)==null?void 0:D.locale)||"",currency:((I=s==null?void 0:s.numberAxisFormat)==null?void 0:I.currency)||""})}}}};return{type:t,data:{labels:x,datasets:v},options:_,plugins:[t==="doughnut"?{id:"doughnutLabel",beforeDatasetsDraw:function(C,P,A){var B,Q,W,U;const{ctx:k,data:D}=C;k.save();const I=C.getDatasetMeta(0).data[0].x,z=C.getDatasetMeta(0).data[0].y,j=Ju(Qu());k.font="1.2rem Arial",k.fontWeight="bolder",k.fillStyle=j,k.textAlign="center",k.textBaseline="middle";const K=D.datasets[0].data.reduce((Z,T)=>Z+T,0),q=Fa({number:Number(K),decimalPlaces:((B=s==null?void 0:s.numberAxisFormat)==null?void 0:B.decimalPlaces)||0,useSuffix:!!((Q=s==null?void 0:s.numberAxisFormat)!=null&&Q.suffix),customSuffix:"",locale:((W=s==null?void 0:s.numberAxisFormat)==null?void 0:W.locale)||"",currency:((U=s==null?void 0:s.numberAxisFormat)==null?void 0:U.currency)||""});k.fillText(q,I,z)}}:""]}}if(t==="radar"){const u=tX(n);return fa({data:e,cfg:u,customCfg:r,cardType:t,userSettings:i,provider:o,preferences:s})}if(t==="bubble"||t==="scatter"){const{metricKeys:u}=dr(e);if(u.length<3){console.log("Bubble charts require 3 numeric columns");return}const f=nY(e),p=_p(f,r),g={plugins:{datalabels:{display:!0}},scales:{x:{title:{display:!0,text:u[0]},beginAtZero:!0,ticks:{precision:0}},y:{title:{display:!0,text:u[1]},beginAtZero:!0,ticks:{precision:0}}}},v=va(g,(r==null?void 0:r.options)||{});return{type:t,data:{datasets:p},options:v}}return fa({data:e,cfg:n,customCfg:r,cardType:t,userSettings:i,provider:o,preferences:s})}function rX({chart:e,elementIndex:t,datasetIndex:n,cardType:r,cfg:o,apply:i}){const s=De.getState().theme;if(!o)return;const a=s==="dark"?"rgb(238,238,238,0.2)":"rgb(238,238,238,0.8)";["bar","line","horizontalBar","bubble","scatter"].includes(r)&&iX(e,t,o,i,a),["pie","doughnut","polarArea"].includes(r)&&sX(e,t,o,i,a),["stackedBar","pyramid"].includes(r)&&oX({chart:e,elementIndex:t,datasetIndex:n,cfg:o,apply:i,blurColor:a})}function oX(e){var a,l,c,u;const{chart:t,elementIndex:n,datasetIndex:r,cfg:o,apply:i,blurColor:s}=e;i?(l=(a=t==null?void 0:t.data)==null?void 0:a.datasets)==null||l.forEach((f,p)=>{var g,v;typeof f.backgroundColor=="string"&&(f.backgroundColor=new Array(f.data.length).fill(f.backgroundColor),f.borderColor=new Array(f.data.length).fill(f.borderColor)),f.backgroundColor=(g=f==null?void 0:f.backgroundColor)==null?void 0:g.map((b,x)=>x===n&&p===r?b:s),f.borderColor=(v=f==null?void 0:f.borderColor)==null?void 0:v.map((b,x)=>x===n&&p===r?b:s)}):(u=(c=t==null?void 0:t.data)==null?void 0:c.datasets)==null||u.forEach((f,p)=>{var g,v,b,x,w,_;f.backgroundColor=new Array(f.data.length).fill((b=(v=(g=o==null?void 0:o.data)==null?void 0:g.datasets)==null?void 0:v[p])==null?void 0:b.backgroundColor),f.borderColor=new Array(f.data.length).fill((_=(w=(x=o==null?void 0:o.data)==null?void 0:x.datasets)==null?void 0:w[p])==null?void 0:_.borderColor)}),t==null||t.update()}function iX(e,t,n,r,o){var i,s,a,l;console.log("clicked index",t),r?(s=(i=e==null?void 0:e.data)==null?void 0:i.datasets)==null||s.forEach(c=>{var u,f;typeof c.backgroundColor=="string"&&(c.backgroundColor=new Array(c.data.length).fill(c.backgroundColor),c.borderColor=new Array(c.data.length).fill(c.borderColor)),c.backgroundColor=(u=c==null?void 0:c.backgroundColor)==null?void 0:u.map((p,g)=>g===t?p:o),c.borderColor=(f=c==null?void 0:c.borderColor)==null?void 0:f.map((p,g)=>g===t?p:o)}):(l=(a=e==null?void 0:e.data)==null?void 0:a.datasets)==null||l.forEach((c,u)=>{var f,p,g,v,b,x;c.backgroundColor=new Array(c.data.length).fill((g=(p=(f=n==null?void 0:n.data)==null?void 0:f.datasets)==null?void 0:p[u])==null?void 0:g.backgroundColor),c.borderColor=new Array(c.data.length).fill((x=(b=(v=n==null?void 0:n.data)==null?void 0:v.datasets)==null?void 0:b[u])==null?void 0:x.borderColor)}),e==null||e.update()}function sX(e,t,n,r,o){var i,s,a,l;r?(s=(i=e==null?void 0:e.data)==null?void 0:i.datasets)==null||s.forEach(c=>{var u,f;c.backgroundColor=(u=c==null?void 0:c.backgroundColor)==null?void 0:u.map((p,g)=>g===t?p:o),c.borderColor=(f=c==null?void 0:c.borderColor)==null?void 0:f.map((p,g)=>g===t?p:o)}):(l=(a=e==null?void 0:e.data)==null?void 0:a.datasets)==null||l.forEach((c,u)=>{var f,p,g,v,b,x,w,_;typeof c.backgroundColor=="string"&&(c.backgroundColor=(g=(p=(f=n==null?void 0:n.data)==null?void 0:f.datasets)==null?void 0:p[u])==null?void 0:g.backgroundColor,c.borderColor=(x=(b=(v=n==null?void 0:n.data)==null?void 0:v.datasets)==null?void 0:b[u])==null?void 0:x.borderColor),c.backgroundColor=(w=c==null?void 0:c.backgroundColor)==null?void 0:w.map((S,R)=>{var C;return(C=n.data.datasets[u].backgroundColor)==null?void 0:C[R]}),c.borderColor=(_=c==null?void 0:c.borderColor)==null?void 0:_.map((S,R)=>{var C;return(C=n.data.datasets[u].borderColor)==null?void 0:C[R]})}),e==null||e.update()}function aX(e,t,n,r){var o,i;try{if(!e||!e.data)return;const{dimensionKeys:s,metricKeys:a}=dr(e.data);if(["bar","horizontalBar","line","pie","doughnut","radar","polarArea"].includes(e.type)){const l=s[0],c=(o=e.data[n])==null?void 0:o[l];return[{columnName:l,columnValue:c,metric:a[t],value:r}]}if(["stackedBar","pyramid"].includes(e.type)){const l=Yp({dataArray:e.data,groupKey:s[0],pivotKey:s[1],valueKey:a[0]}),c=s[0],u=(i=l[n])==null?void 0:i[c],f=s[1],{metricKeys:p}=dr(l),g=p[t];return[{columnName:c,columnValue:u,metric:a[0],value:r},{columnName:f,columnValue:g,metric:a[0],value:r}]}if(e.type==="bubble"||e.type==="scatter"){const l=s[0],c=r.label;return[{columnName:l,columnValue:c,metric1:a[0],value1:r.x,metric2:a[1],value2:r.y,metric3:a==null?void 0:a[2],value3:r==null?void 0:r.r}]}}catch(s){console.error("Error in getAdhocFilter",s)}}function lX(e){var s,a;const[t]=m.useState({id:"",title:"",type:"bar",data:[]}),{getCard:n}=Wi(),r=n(e),o=Aw(r||t),i={...r,data:((s=o==null?void 0:o.data)==null?void 0:s.records)||[]};return{...o,data:((a=o==null?void 0:o.data)==null?void 0:a.records)||[],card:i}}function Aw(e){var z,j,K;const{onChartElementClicked:t}=nl(),[n,r]=m.useState(0),o=((z=e==null?void 0:e.preferences)==null?void 0:z.filterOnClickColumnIndex)===void 0?0:(j=e.preferences)==null?void 0:j.filterOnClickColumnIndex,i=De(q=>q.bookmarkKey);De(q=>q.isVisualEditing);const s=De(q=>q.filteringCards),a=De(q=>q.selectedSheetId);De(q=>q.selectedCardId),De(q=>q.isDashboardEditing);const l=De(q=>q.themeStyle),c=De(q=>q.filterValues),u=(K=e==null?void 0:e.preferences)==null?void 0:K.onClickFilter,{addFrame:f,addFilteringCard:p,setFrameCardData:g,getSelectedFrame:v,addOrUpdateFilterValue:b,addOrUpdateFilterValues:x,removeFilterValue:w,removeFilteringCard:_}=Wi(),{data:S,isLoading:R,isFetching:C,isError:P,refetch:A}=GK(e),k=s==null?void 0:s.find(q=>q.id===e.id);let D;e.data&&e.data.length>0&&(D=Mw({data:e.data,cardType:e.type,cfg:e.cfg,customCfg:e.customCfg,preferences:e.preferences})),m.useEffect(()=>{!S||!S.records||g(a,e.id,(S==null?void 0:S.records)||[])},[S,a,e.id,g,c]),m.useEffect(()=>{e.data&&r(n+1)},[e.data,e.type,e.cfg,e.customCfg,e.preferences,l]),m.useEffect(()=>{e.connectionId&&!k&&A()},[c,i]);function I(q,B,Q,W){var T,V;let U=!1;if(!e.data)return;const Z=aX(e,B,Q,W);if(console.log("fieldValues",Z),t==null||t(e,Z),!!(((T=e==null?void 0:e.preferences)==null?void 0:T.onClickFilter)??[]).length){if(k){const X=e.id;w(X),_(e)}else{if(U=!0,!Z)return;const X=[];Z.forEach((N,se)=>{const ae=u==null?void 0:u.find(fe=>fe.columnIndex===se);if(!ae)return;const ue={filterId:e.id+"-"+N.columnName,connectionId:e==null?void 0:e.connectionId,tableName:e.lastSelectedTable,name:N.columnName,expression:ae.expression,valueType:Zu(Z[ae.columnIndex].columnValue),operation:"=",values:[Z[ae.columnIndex].columnValue]};X.push(ue)}),e.id,e==null||e.connectionId,e.lastSelectedTable,Z[o].columnName,(V=e.preferences)==null||V.filterOnClickField,Zu(Z[o].columnValue),Z[o].columnValue,x(X),p(e)}rX({chart:q,elementIndex:Q,datasetIndex:B,cardType:e.type,cfg:D,apply:U})}}return{isError:P,isLoading:R,isFetching:C,data:S,visualKey:n,handleDatapointClick:I,cfg:D}}function cX(e,t){const n=De(u=>u.selectedSheetId),r=De(u=>u.selectedFrameId),o=De(u=>u.isDashboardEditing),i=De(u=>u.isVisualEditing),{addFrame:s,getSelectedFrame:a,setSelectedFrameId:l}=De(u=>u.actions);m.useEffect(()=>{const u=p=>{if(o&&((p.metaKey||p.ctrlKey)&&p.key==="c"&&navigator.clipboard.writeText(JSON.stringify(a())),(p.ctrlKey||p.metaKey)&&p.key==="v"))try{navigator.clipboard.readText().then(g=>{try{const v=JSON.parse(g);if(v&&v.id){v.id=Ga();const b=v.activeCardId;v.cards.forEach(x=>{const w=x.id;x.id=Ga(),w===b&&(v.activeCardId=x.id,x.title=`${x.title} (Copy)`)}),s(n,v),l(v.id)}}catch(v){console.error("Failed to parse clipboard contents: ",v)}})}catch(g){console.error("Failed to read clipboard contents: ",g)}},f=t==null?void 0:t.current;return f==null||f.addEventListener("keydown",u),()=>{f==null||f.removeEventListener("keydown",u)}},[o,n,a,s,t,l]),m.useEffect(()=>{r===e.id&&o&&!i&&c()},[r,e.id,o,i]);function c(){const u=t==null?void 0:t.current;u==null||u.scrollIntoView({behavior:"smooth",block:"nearest",inline:"nearest"})}}let xb;const AT="HoverCard",[IT,Xpe]=Bn(AT,[di]),Iw=di(),[uX,Nw]=IT(AT),dX=e=>{const{__scopeHoverCard:t,children:n,open:r,defaultOpen:o,onOpenChange:i,openDelay:s=700,closeDelay:a=300}=e,l=Iw(t),c=m.useRef(0),u=m.useRef(0),f=m.useRef(!1),p=m.useRef(!1),[g=!1,v]=nr({prop:r,defaultProp:o,onChange:i}),b=m.useCallback(()=>{clearTimeout(u.current),c.current=window.setTimeout(()=>v(!0),s)},[s,v]),x=m.useCallback(()=>{clearTimeout(c.current),!f.current&&!p.current&&(u.current=window.setTimeout(()=>v(!1),a))},[a,v]),w=m.useCallback(()=>v(!1),[v]);return m.useEffect(()=>()=>{clearTimeout(c.current),clearTimeout(u.current)},[]),m.createElement(uX,{scope:t,open:g,onOpenChange:v,onOpen:b,onClose:x,onDismiss:w,hasSelectionRef:f,isPointerDownOnContentRef:p},m.createElement(uf,l,n))},fX="HoverCardTrigger",hX=m.forwardRef((e,t)=>{const{__scopeHoverCard:n,...r}=e,o=Nw(fX,n),i=Iw(n);return m.createElement(df,le({asChild:!0},i),m.createElement(Ue.a,le({"data-state":o.open?"open":"closed"},r,{ref:t,onPointerEnter:Re(e.onPointerEnter,Zp(o.onOpen)),onPointerLeave:Re(e.onPointerLeave,Zp(o.onClose)),onFocus:Re(e.onFocus,o.onOpen),onBlur:Re(e.onBlur,o.onClose),onTouchStart:Re(e.onTouchStart,s=>s.preventDefault())})))}),pX="HoverCardPortal",[Qpe,gX]=IT(pX,{forceMount:void 0}),Sy="HoverCardContent",mX=m.forwardRef((e,t)=>{const n=gX(Sy,e.__scopeHoverCard),{forceMount:r=n.forceMount,...o}=e,i=Nw(Sy,e.__scopeHoverCard);return m.createElement(Rn,{present:r||i.open},m.createElement(vX,le({"data-state":i.open?"open":"closed"},o,{onPointerEnter:Re(e.onPointerEnter,Zp(i.onOpen)),onPointerLeave:Re(e.onPointerLeave,Zp(i.onClose)),ref:t})))}),vX=m.forwardRef((e,t)=>{const{__scopeHoverCard:n,onEscapeKeyDown:r,onPointerDownOutside:o,onFocusOutside:i,onInteractOutside:s,...a}=e,l=Nw(Sy,n),c=Iw(n),u=m.useRef(null),f=lt(t,u),[p,g]=m.useState(!1);return m.useEffect(()=>{if(p){const v=document.body;return xb=v.style.userSelect||v.style.webkitUserSelect,v.style.userSelect="none",v.style.webkitUserSelect="none",()=>{v.style.userSelect=xb,v.style.webkitUserSelect=xb}}},[p]),m.useEffect(()=>{if(u.current){const v=()=>{g(!1),l.isPointerDownOnContentRef.current=!1,setTimeout(()=>{var b;((b=document.getSelection())===null||b===void 0?void 0:b.toString())!==""&&(l.hasSelectionRef.current=!0)})};return document.addEventListener("pointerup",v),()=>{document.removeEventListener("pointerup",v),l.hasSelectionRef.current=!1,l.isPointerDownOnContentRef.current=!1}}},[l.isPointerDownOnContentRef,l.hasSelectionRef]),m.useEffect(()=>{u.current&&bX(u.current).forEach(b=>b.setAttribute("tabindex","-1"))}),m.createElement(kc,{asChild:!0,disableOutsidePointerEvents:!1,onInteractOutside:s,onEscapeKeyDown:r,onPointerDownOutside:o,onFocusOutside:Re(i,v=>{v.preventDefault()}),onDismiss:l.onDismiss},m.createElement(ff,le({},c,a,{onPointerDown:Re(a.onPointerDown,v=>{v.currentTarget.contains(v.target)&&g(!0),l.hasSelectionRef.current=!1,l.isPointerDownOnContentRef.current=!0}),ref:f,style:{...a.style,userSelect:p?"text":void 0,WebkitUserSelect:p?"text":void 0,"--radix-hover-card-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-hover-card-content-available-width":"var(--radix-popper-available-width)","--radix-hover-card-content-available-height":"var(--radix-popper-available-height)","--radix-hover-card-trigger-width":"var(--radix-popper-anchor-width)","--radix-hover-card-trigger-height":"var(--radix-popper-anchor-height)"}})))});function Zp(e){return t=>t.pointerType==="touch"?void 0:e()}function bX(e){const t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:r=>r.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP});for(;n.nextNode();)t.push(n.currentNode);return t}const yX=dX,xX=hX,NT=mX,Lw=yX,Fw=xX,Qg=pe.forwardRef(({className:e,align:t="center",sideOffset:n=4,...r},o)=>O.jsx(NT,{ref:o,align:t,sideOffset:n,className:Ee("z-50 w-64 rounded-md border bg-popover p-4 text-popover-foreground shadow-md outline-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]: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",e),...r}));Qg.displayName=NT.displayName;function wX({card:e}){const{setCardInfo:t}=Wi();return O.jsxs(Lw,{openDelay:0,children:[O.jsx(Fw,{children:O.jsx(fY,{className:"size-4 text-muted-foreground/40"})}),O.jsx(Qg,{align:"start",className:"w-[300px]",onMouseDown:n=>n.stopPropagation(),children:O.jsx(Wa,{type:"textarea",text:e.info||"",onSave:n=>t(e.id,n),children:O.jsx("p",{className:"text-sm text-muted-foreground",children:e.info||"Double-click to add info"})})})]})}const zw=pe.forwardRef(({className:e,containerClassName:t,containerStyle:n,...r},o)=>O.jsx("div",{style:n,className:Ee("relative w-full overflow-auto",t),children:O.jsx("table",{ref:o,className:Ee("w-full caption-bottom text-sm",e),...r})}));zw.displayName="Table";const jw=pe.forwardRef(({className:e,...t},n)=>O.jsx("thead",{ref:n,className:Ee("[&_tr]:border-b",e),...t}));jw.displayName="TableHeader";const Bw=pe.forwardRef(({className:e,...t},n)=>O.jsx("tbody",{ref:n,className:Ee("[&_tr:last-child]:border-0",e),...t}));Bw.displayName="TableBody";const _X=pe.forwardRef(({className:e,...t},n)=>O.jsx("tfoot",{ref:n,className:Ee("border-t bg-muted/50 font-medium [&>tr]:last:border-b-0",e),...t}));_X.displayName="TableFooter";const Wu=pe.forwardRef(({className:e,...t},n)=>O.jsx("tr",{ref:n,className:Ee("border-b transition-colors hover:bg-muted/50 data-[state=selected]:bg-muted",e),...t}));Wu.displayName="TableRow";const Vw=pe.forwardRef(({className:e,...t},n)=>O.jsx("th",{ref:n,className:Ee("h-12 px-4 text-left align-middle font-medium text-muted-foreground [&:has([role=checkbox])]:pr-0",e),...t}));Vw.displayName="TableHead";const eg=pe.forwardRef(({className:e,...t},n)=>O.jsx("td",{ref:n,className:Ee("p-4 align-middle [&:has([role=checkbox])]:pr-0",e),...t}));eg.displayName="TableCell";const SX=pe.forwardRef(({className:e,...t},n)=>O.jsx("caption",{ref:n,className:Ee("mt-4 text-sm text-muted-foreground",e),...t}));SX.displayName="TableCaption";/**
253
+ `),s=new Blob([i],{type:"text/csv"}),a=window.URL.createObjectURL(s),l=document.createElement("a");l.setAttribute("hidden",""),l.setAttribute("href",a),l.setAttribute("download",t),document.body.appendChild(l),l.click(),document.body.removeChild(l)};return O.jsx(uY,{onClick:n,className:"h-[14px] w-[14px] text-foreground/30 hover:cursor-pointer hover:text-foreground/50"})};function bY({frame:e}){var _;const t=De(S=>S.isDashboardEditing),n=De(S=>S.filterValues),r=De(S=>S.isVisualEditing),o=De(S=>S.selectedSheetId);De(S=>S.currentBreakpoint);const{removeFrame:i}=De(S=>S.actions),s=De(S=>S.actions.setIsVisualEditing),a=Cr(S=>S.actions.setFilterValues),l=Cr(S=>S.actions.setApplyFilters),{setCard:c,setFrame:u,setQueryResultColumns:f}=Cr(S=>S.actions),p=Cr(S=>S.actions.setSelectedConnectionId),g=Cr(S=>S.actions.setSelectedDatabaseName),v=Cr(S=>S.actions.setSelectedSchemaName),b=Cr(S=>S.actions.setSelectedTableName),x=e.cards.find(S=>S.id===e.activeCardId);function w(){s(!r),c(x);const{dimensionKeys:S}=dr((x==null?void 0:x.data)||[]);f(S),u(e),x!=null&&x.connectionId&&p(x==null?void 0:x.connectionId),x!=null&&x.lastSelectedDatabase&&g(x==null?void 0:x.lastSelectedDatabase),x!=null&&x.lastSelectedSchema&&v(x==null?void 0:x.lastSelectedSchema),x!=null&&x.lastSelectedTable&&b(x==null?void 0:x.lastSelectedTable),n&&(a(n),l(!0))}return O.jsx("section",{className:"absolute right-2 top-2 z-10",children:O.jsxs("div",{className:"flex items-center gap-2",children:[t&&(r?O.jsx(NG,{onClick:()=>{s(!r)},className:"h-[14px] w-[14px] text-foreground/30 hover:cursor-pointer hover:text-foreground/50"}):O.jsx(FG,{role:"edit-visual",onClick:w,className:"h-[14px] w-[14px] text-foreground/30 hover:cursor-pointer hover:text-foreground/50"})),t&&O.jsx(JD,{onClick:()=>i(o,e.id),className:"h-[14px] w-[14px] text-foreground/30 hover:cursor-pointer hover:text-foreground/50"}),((_=x.preferences)==null?void 0:_.allowDownload)===!0&&O.jsx(vY,{data:(x==null?void 0:x.data)||[],filename:x.title})]})})}function yY(e,t=globalThis==null?void 0:globalThis.document){const n=Mn(e);m.useEffect(()=>{const r=o=>{o.key==="Escape"&&n(o)};return t.addEventListener("keydown",r),()=>t.removeEventListener("keydown",r)},[n,t])}const yy="dismissableLayer.update",xY="dismissableLayer.pointerDownOutside",wY="dismissableLayer.focusOutside";let UR;const _Y=m.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set}),kc=m.forwardRef((e,t)=>{var n;const{disableOutsidePointerEvents:r=!1,onEscapeKeyDown:o,onPointerDownOutside:i,onFocusOutside:s,onInteractOutside:a,onDismiss:l,...c}=e,u=m.useContext(_Y),[f,p]=m.useState(null),g=(n=f==null?void 0:f.ownerDocument)!==null&&n!==void 0?n:globalThis==null?void 0:globalThis.document,[,v]=m.useState({}),b=lt(t,k=>p(k)),x=Array.from(u.layers),[w]=[...u.layersWithOutsidePointerEventsDisabled].slice(-1),_=x.indexOf(w),S=f?x.indexOf(f):-1,R=u.layersWithOutsidePointerEventsDisabled.size>0,C=S>=_,P=SY(k=>{const D=k.target,I=[...u.branches].some(z=>z.contains(D));!C||I||(i==null||i(k),a==null||a(k),k.defaultPrevented||l==null||l())},g),A=CY(k=>{const D=k.target;[...u.branches].some(z=>z.contains(D))||(s==null||s(k),a==null||a(k),k.defaultPrevented||l==null||l())},g);return yY(k=>{S===u.layers.size-1&&(o==null||o(k),!k.defaultPrevented&&l&&(k.preventDefault(),l()))},g),m.useEffect(()=>{if(f)return r&&(u.layersWithOutsidePointerEventsDisabled.size===0&&(UR=g.body.style.pointerEvents,g.body.style.pointerEvents="none"),u.layersWithOutsidePointerEventsDisabled.add(f)),u.layers.add(f),qR(),()=>{r&&u.layersWithOutsidePointerEventsDisabled.size===1&&(g.body.style.pointerEvents=UR)}},[f,g,r,u]),m.useEffect(()=>()=>{f&&(u.layers.delete(f),u.layersWithOutsidePointerEventsDisabled.delete(f),qR())},[f,u]),m.useEffect(()=>{const k=()=>v({});return document.addEventListener(yy,k),()=>document.removeEventListener(yy,k)},[]),m.createElement(Ue.div,le({},c,{ref:b,style:{pointerEvents:R?C?"auto":"none":void 0,...e.style},onFocusCapture:Re(e.onFocusCapture,A.onFocusCapture),onBlurCapture:Re(e.onBlurCapture,A.onBlurCapture),onPointerDownCapture:Re(e.onPointerDownCapture,P.onPointerDownCapture)}))});function SY(e,t=globalThis==null?void 0:globalThis.document){const n=Mn(e),r=m.useRef(!1),o=m.useRef(()=>{});return m.useEffect(()=>{const i=a=>{if(a.target&&!r.current){let c=function(){sT(xY,n,l,{discrete:!0})};const l={originalEvent:a};a.pointerType==="touch"?(t.removeEventListener("click",o.current),o.current=c,t.addEventListener("click",o.current,{once:!0})):c()}else t.removeEventListener("click",o.current);r.current=!1},s=window.setTimeout(()=>{t.addEventListener("pointerdown",i)},0);return()=>{window.clearTimeout(s),t.removeEventListener("pointerdown",i),t.removeEventListener("click",o.current)}},[t,n]),{onPointerDownCapture:()=>r.current=!0}}function CY(e,t=globalThis==null?void 0:globalThis.document){const n=Mn(e),r=m.useRef(!1);return m.useEffect(()=>{const o=i=>{i.target&&!r.current&&sT(wY,n,{originalEvent:i},{discrete:!1})};return t.addEventListener("focusin",o),()=>t.removeEventListener("focusin",o)},[t,n]),{onFocusCapture:()=>r.current=!0,onBlurCapture:()=>r.current=!1}}function qR(){const e=new CustomEvent(yy);document.dispatchEvent(e)}function sT(e,t,n,{discrete:r}){const o=n.originalEvent.target,i=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:n});t&&o.addEventListener(e,t,{once:!0}),r?UP(o,i):o.dispatchEvent(i)}const EY=["top","right","bottom","left"],Is=Math.min,Kr=Math.max,Kp=Math.round,jh=Math.floor,Ns=e=>({x:e,y:e}),RY={left:"right",right:"left",bottom:"top",top:"bottom"},OY={start:"end",end:"start"};function xy(e,t,n){return Kr(e,Is(t,n))}function Bi(e,t){return typeof e=="function"?e(t):e}function Vi(e){return e.split("-")[0]}function Mc(e){return e.split("-")[1]}function _w(e){return e==="x"?"y":"x"}function Sw(e){return e==="y"?"height":"width"}function Ac(e){return["top","bottom"].includes(Vi(e))?"y":"x"}function Cw(e){return _w(Ac(e))}function PY(e,t,n){n===void 0&&(n=!1);const r=Mc(e),o=Cw(e),i=Sw(o);let s=o==="x"?r===(n?"end":"start")?"right":"left":r==="start"?"bottom":"top";return t.reference[i]>t.floating[i]&&(s=Xp(s)),[s,Xp(s)]}function $Y(e){const t=Xp(e);return[wy(e),t,wy(t)]}function wy(e){return e.replace(/start|end/g,t=>OY[t])}function DY(e,t,n){const r=["left","right"],o=["right","left"],i=["top","bottom"],s=["bottom","top"];switch(e){case"top":case"bottom":return n?t?o:r:t?r:o;case"left":case"right":return t?i:s;default:return[]}}function TY(e,t,n,r){const o=Mc(e);let i=DY(Vi(e),n==="start",r);return o&&(i=i.map(s=>s+"-"+o),t&&(i=i.concat(i.map(wy)))),i}function Xp(e){return e.replace(/left|right|bottom|top/g,t=>RY[t])}function kY(e){return{top:0,right:0,bottom:0,left:0,...e}}function aT(e){return typeof e!="number"?kY(e):{top:e,right:e,bottom:e,left:e}}function Qp(e){return{...e,top:e.y,left:e.x,right:e.x+e.width,bottom:e.y+e.height}}function GR(e,t,n){let{reference:r,floating:o}=e;const i=Ac(t),s=Cw(t),a=Sw(s),l=Vi(t),c=i==="y",u=r.x+r.width/2-o.width/2,f=r.y+r.height/2-o.height/2,p=r[a]/2-o[a]/2;let g;switch(l){case"top":g={x:u,y:r.y-o.height};break;case"bottom":g={x:u,y:r.y+r.height};break;case"right":g={x:r.x+r.width,y:f};break;case"left":g={x:r.x-o.width,y:f};break;default:g={x:r.x,y:r.y}}switch(Mc(t)){case"start":g[s]-=p*(n&&c?-1:1);break;case"end":g[s]+=p*(n&&c?-1:1);break}return g}const MY=async(e,t,n)=>{const{placement:r="bottom",strategy:o="absolute",middleware:i=[],platform:s}=n,a=i.filter(Boolean),l=await(s.isRTL==null?void 0:s.isRTL(t));let c=await s.getElementRects({reference:e,floating:t,strategy:o}),{x:u,y:f}=GR(c,r,l),p=r,g={},v=0;for(let b=0;b<a.length;b++){const{name:x,fn:w}=a[b],{x:_,y:S,data:R,reset:C}=await w({x:u,y:f,initialPlacement:r,placement:p,strategy:o,middlewareData:g,rects:c,platform:s,elements:{reference:e,floating:t}});if(u=_??u,f=S??f,g={...g,[x]:{...g[x],...R}},C&&v<=50){v++,typeof C=="object"&&(C.placement&&(p=C.placement),C.rects&&(c=C.rects===!0?await s.getElementRects({reference:e,floating:t,strategy:o}):C.rects),{x:u,y:f}=GR(c,p,l)),b=-1;continue}}return{x:u,y:f,placement:p,strategy:o,middlewareData:g}};async function cd(e,t){var n;t===void 0&&(t={});const{x:r,y:o,platform:i,rects:s,elements:a,strategy:l}=e,{boundary:c="clippingAncestors",rootBoundary:u="viewport",elementContext:f="floating",altBoundary:p=!1,padding:g=0}=Bi(t,e),v=aT(g),x=a[p?f==="floating"?"reference":"floating":f],w=Qp(await i.getClippingRect({element:(n=await(i.isElement==null?void 0:i.isElement(x)))==null||n?x:x.contextElement||await(i.getDocumentElement==null?void 0:i.getDocumentElement(a.floating)),boundary:c,rootBoundary:u,strategy:l})),_=f==="floating"?{...s.floating,x:r,y:o}:s.reference,S=await(i.getOffsetParent==null?void 0:i.getOffsetParent(a.floating)),R=await(i.isElement==null?void 0:i.isElement(S))?await(i.getScale==null?void 0:i.getScale(S))||{x:1,y:1}:{x:1,y:1},C=Qp(i.convertOffsetParentRelativeRectToViewportRelativeRect?await i.convertOffsetParentRelativeRectToViewportRelativeRect({rect:_,offsetParent:S,strategy:l}):_);return{top:(w.top-C.top+v.top)/R.y,bottom:(C.bottom-w.bottom+v.bottom)/R.y,left:(w.left-C.left+v.left)/R.x,right:(C.right-w.right+v.right)/R.x}}const YR=e=>({name:"arrow",options:e,async fn(t){const{x:n,y:r,placement:o,rects:i,platform:s,elements:a,middlewareData:l}=t,{element:c,padding:u=0}=Bi(e,t)||{};if(c==null)return{};const f=aT(u),p={x:n,y:r},g=Cw(o),v=Sw(g),b=await s.getDimensions(c),x=g==="y",w=x?"top":"left",_=x?"bottom":"right",S=x?"clientHeight":"clientWidth",R=i.reference[v]+i.reference[g]-p[g]-i.floating[v],C=p[g]-i.reference[g],P=await(s.getOffsetParent==null?void 0:s.getOffsetParent(c));let A=P?P[S]:0;(!A||!await(s.isElement==null?void 0:s.isElement(P)))&&(A=a.floating[S]||i.floating[v]);const k=R/2-C/2,D=A/2-b[v]/2-1,I=Is(f[w],D),z=Is(f[_],D),j=I,K=A-b[v]-z,q=A/2-b[v]/2+k,B=xy(j,q,K),Q=!l.arrow&&Mc(o)!=null&&q!=B&&i.reference[v]/2-(q<j?I:z)-b[v]/2<0,W=Q?q<j?q-j:q-K:0;return{[g]:p[g]+W,data:{[g]:B,centerOffset:q-B-W,...Q&&{alignmentOffset:W}},reset:Q}}}),AY=function(e){return e===void 0&&(e={}),{name:"flip",options:e,async fn(t){var n,r;const{placement:o,middlewareData:i,rects:s,initialPlacement:a,platform:l,elements:c}=t,{mainAxis:u=!0,crossAxis:f=!0,fallbackPlacements:p,fallbackStrategy:g="bestFit",fallbackAxisSideDirection:v="none",flipAlignment:b=!0,...x}=Bi(e,t);if((n=i.arrow)!=null&&n.alignmentOffset)return{};const w=Vi(o),_=Vi(a)===a,S=await(l.isRTL==null?void 0:l.isRTL(c.floating)),R=p||(_||!b?[Xp(a)]:$Y(a));!p&&v!=="none"&&R.push(...TY(a,b,v,S));const C=[a,...R],P=await cd(t,x),A=[];let k=((r=i.flip)==null?void 0:r.overflows)||[];if(u&&A.push(P[w]),f){const j=PY(o,s,S);A.push(P[j[0]],P[j[1]])}if(k=[...k,{placement:o,overflows:A}],!A.every(j=>j<=0)){var D,I;const j=(((D=i.flip)==null?void 0:D.index)||0)+1,K=C[j];if(K)return{data:{index:j,overflows:k},reset:{placement:K}};let q=(I=k.filter(B=>B.overflows[0]<=0).sort((B,Q)=>B.overflows[1]-Q.overflows[1])[0])==null?void 0:I.placement;if(!q)switch(g){case"bestFit":{var z;const B=(z=k.map(Q=>[Q.placement,Q.overflows.filter(W=>W>0).reduce((W,U)=>W+U,0)]).sort((Q,W)=>Q[1]-W[1])[0])==null?void 0:z[0];B&&(q=B);break}case"initialPlacement":q=a;break}if(o!==q)return{reset:{placement:q}}}return{}}}};function KR(e,t){return{top:e.top-t.height,right:e.right-t.width,bottom:e.bottom-t.height,left:e.left-t.width}}function XR(e){return EY.some(t=>e[t]>=0)}const IY=function(e){return e===void 0&&(e={}),{name:"hide",options:e,async fn(t){const{rects:n}=t,{strategy:r="referenceHidden",...o}=Bi(e,t);switch(r){case"referenceHidden":{const i=await cd(t,{...o,elementContext:"reference"}),s=KR(i,n.reference);return{data:{referenceHiddenOffsets:s,referenceHidden:XR(s)}}}case"escaped":{const i=await cd(t,{...o,altBoundary:!0}),s=KR(i,n.floating);return{data:{escapedOffsets:s,escaped:XR(s)}}}default:return{}}}}};async function NY(e,t){const{placement:n,platform:r,elements:o}=e,i=await(r.isRTL==null?void 0:r.isRTL(o.floating)),s=Vi(n),a=Mc(n),l=Ac(n)==="y",c=["left","top"].includes(s)?-1:1,u=i&&l?-1:1,f=Bi(t,e);let{mainAxis:p,crossAxis:g,alignmentAxis:v}=typeof f=="number"?{mainAxis:f,crossAxis:0,alignmentAxis:null}:{mainAxis:0,crossAxis:0,alignmentAxis:null,...f};return a&&typeof v=="number"&&(g=a==="end"?v*-1:v),l?{x:g*u,y:p*c}:{x:p*c,y:g*u}}const LY=function(e){return e===void 0&&(e=0),{name:"offset",options:e,async fn(t){var n,r;const{x:o,y:i,placement:s,middlewareData:a}=t,l=await NY(t,e);return s===((n=a.offset)==null?void 0:n.placement)&&(r=a.arrow)!=null&&r.alignmentOffset?{}:{x:o+l.x,y:i+l.y,data:{...l,placement:s}}}}},FY=function(e){return e===void 0&&(e={}),{name:"shift",options:e,async fn(t){const{x:n,y:r,placement:o}=t,{mainAxis:i=!0,crossAxis:s=!1,limiter:a={fn:x=>{let{x:w,y:_}=x;return{x:w,y:_}}},...l}=Bi(e,t),c={x:n,y:r},u=await cd(t,l),f=Ac(Vi(o)),p=_w(f);let g=c[p],v=c[f];if(i){const x=p==="y"?"top":"left",w=p==="y"?"bottom":"right",_=g+u[x],S=g-u[w];g=xy(_,g,S)}if(s){const x=f==="y"?"top":"left",w=f==="y"?"bottom":"right",_=v+u[x],S=v-u[w];v=xy(_,v,S)}const b=a.fn({...t,[p]:g,[f]:v});return{...b,data:{x:b.x-n,y:b.y-r}}}}},zY=function(e){return e===void 0&&(e={}),{options:e,fn(t){const{x:n,y:r,placement:o,rects:i,middlewareData:s}=t,{offset:a=0,mainAxis:l=!0,crossAxis:c=!0}=Bi(e,t),u={x:n,y:r},f=Ac(o),p=_w(f);let g=u[p],v=u[f];const b=Bi(a,t),x=typeof b=="number"?{mainAxis:b,crossAxis:0}:{mainAxis:0,crossAxis:0,...b};if(l){const S=p==="y"?"height":"width",R=i.reference[p]-i.floating[S]+x.mainAxis,C=i.reference[p]+i.reference[S]-x.mainAxis;g<R?g=R:g>C&&(g=C)}if(c){var w,_;const S=p==="y"?"width":"height",R=["top","left"].includes(Vi(o)),C=i.reference[f]-i.floating[S]+(R&&((w=s.offset)==null?void 0:w[f])||0)+(R?0:x.crossAxis),P=i.reference[f]+i.reference[S]+(R?0:((_=s.offset)==null?void 0:_[f])||0)-(R?x.crossAxis:0);v<C?v=C:v>P&&(v=P)}return{[p]:g,[f]:v}}}},jY=function(e){return e===void 0&&(e={}),{name:"size",options:e,async fn(t){const{placement:n,rects:r,platform:o,elements:i}=t,{apply:s=()=>{},...a}=Bi(e,t),l=await cd(t,a),c=Vi(n),u=Mc(n),f=Ac(n)==="y",{width:p,height:g}=r.floating;let v,b;c==="top"||c==="bottom"?(v=c,b=u===(await(o.isRTL==null?void 0:o.isRTL(i.floating))?"start":"end")?"left":"right"):(b=c,v=u==="end"?"top":"bottom");const x=g-l[v],w=p-l[b],_=!t.middlewareData.shift;let S=x,R=w;if(f){const P=p-l.left-l.right;R=u||_?Is(w,P):P}else{const P=g-l.top-l.bottom;S=u||_?Is(x,P):P}if(_&&!u){const P=Kr(l.left,0),A=Kr(l.right,0),k=Kr(l.top,0),D=Kr(l.bottom,0);f?R=p-2*(P!==0||A!==0?P+A:Kr(l.left,l.right)):S=g-2*(k!==0||D!==0?k+D:Kr(l.top,l.bottom))}await s({...t,availableWidth:R,availableHeight:S});const C=await o.getDimensions(i.floating);return p!==C.width||g!==C.height?{reset:{rects:!0}}:{}}}};function Ls(e){return lT(e)?(e.nodeName||"").toLowerCase():"#document"}function Zr(e){var t;return(e==null||(t=e.ownerDocument)==null?void 0:t.defaultView)||window}function qi(e){var t;return(t=(lT(e)?e.ownerDocument:e.document)||window.document)==null?void 0:t.documentElement}function lT(e){return e instanceof Node||e instanceof Zr(e).Node}function Hi(e){return e instanceof Element||e instanceof Zr(e).Element}function ii(e){return e instanceof HTMLElement||e instanceof Zr(e).HTMLElement}function QR(e){return typeof ShadowRoot>"u"?!1:e instanceof ShadowRoot||e instanceof Zr(e).ShadowRoot}function cf(e){const{overflow:t,overflowX:n,overflowY:r,display:o}=_o(e);return/auto|scroll|overlay|hidden|clip/.test(t+r+n)&&!["inline","contents"].includes(o)}function BY(e){return["table","td","th"].includes(Ls(e))}function Ew(e){const t=Rw(),n=_o(e);return n.transform!=="none"||n.perspective!=="none"||(n.containerType?n.containerType!=="normal":!1)||!t&&(n.backdropFilter?n.backdropFilter!=="none":!1)||!t&&(n.filter?n.filter!=="none":!1)||["transform","perspective","filter"].some(r=>(n.willChange||"").includes(r))||["paint","layout","strict","content"].some(r=>(n.contain||"").includes(r))}function VY(e){let t=wc(e);for(;ii(t)&&!Ug(t);){if(Ew(t))return t;t=wc(t)}return null}function Rw(){return typeof CSS>"u"||!CSS.supports?!1:CSS.supports("-webkit-backdrop-filter","none")}function Ug(e){return["html","body","#document"].includes(Ls(e))}function _o(e){return Zr(e).getComputedStyle(e)}function qg(e){return Hi(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.pageXOffset,scrollTop:e.pageYOffset}}function wc(e){if(Ls(e)==="html")return e;const t=e.assignedSlot||e.parentNode||QR(e)&&e.host||qi(e);return QR(t)?t.host:t}function cT(e){const t=wc(e);return Ug(t)?e.ownerDocument?e.ownerDocument.body:e.body:ii(t)&&cf(t)?t:cT(t)}function ud(e,t,n){var r;t===void 0&&(t=[]),n===void 0&&(n=!0);const o=cT(e),i=o===((r=e.ownerDocument)==null?void 0:r.body),s=Zr(o);return i?t.concat(s,s.visualViewport||[],cf(o)?o:[],s.frameElement&&n?ud(s.frameElement):[]):t.concat(o,ud(o,[],n))}function uT(e){const t=_o(e);let n=parseFloat(t.width)||0,r=parseFloat(t.height)||0;const o=ii(e),i=o?e.offsetWidth:n,s=o?e.offsetHeight:r,a=Kp(n)!==i||Kp(r)!==s;return a&&(n=i,r=s),{width:n,height:r,$:a}}function Ow(e){return Hi(e)?e:e.contextElement}function Yl(e){const t=Ow(e);if(!ii(t))return Ns(1);const n=t.getBoundingClientRect(),{width:r,height:o,$:i}=uT(t);let s=(i?Kp(n.width):n.width)/r,a=(i?Kp(n.height):n.height)/o;return(!s||!Number.isFinite(s))&&(s=1),(!a||!Number.isFinite(a))&&(a=1),{x:s,y:a}}const HY=Ns(0);function dT(e){const t=Zr(e);return!Rw()||!t.visualViewport?HY:{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}}function WY(e,t,n){return t===void 0&&(t=!1),!n||t&&n!==Zr(e)?!1:t}function Ya(e,t,n,r){t===void 0&&(t=!1),n===void 0&&(n=!1);const o=e.getBoundingClientRect(),i=Ow(e);let s=Ns(1);t&&(r?Hi(r)&&(s=Yl(r)):s=Yl(e));const a=WY(i,n,r)?dT(i):Ns(0);let l=(o.left+a.x)/s.x,c=(o.top+a.y)/s.y,u=o.width/s.x,f=o.height/s.y;if(i){const p=Zr(i),g=r&&Hi(r)?Zr(r):r;let v=p.frameElement;for(;v&&r&&g!==p;){const b=Yl(v),x=v.getBoundingClientRect(),w=_o(v),_=x.left+(v.clientLeft+parseFloat(w.paddingLeft))*b.x,S=x.top+(v.clientTop+parseFloat(w.paddingTop))*b.y;l*=b.x,c*=b.y,u*=b.x,f*=b.y,l+=_,c+=S,v=Zr(v).frameElement}}return Qp({width:u,height:f,x:l,y:c})}function UY(e){let{rect:t,offsetParent:n,strategy:r}=e;const o=ii(n),i=qi(n);if(n===i)return t;let s={scrollLeft:0,scrollTop:0},a=Ns(1);const l=Ns(0);if((o||!o&&r!=="fixed")&&((Ls(n)!=="body"||cf(i))&&(s=qg(n)),ii(n))){const c=Ya(n);a=Yl(n),l.x=c.x+n.clientLeft,l.y=c.y+n.clientTop}return{width:t.width*a.x,height:t.height*a.y,x:t.x*a.x-s.scrollLeft*a.x+l.x,y:t.y*a.y-s.scrollTop*a.y+l.y}}function qY(e){return Array.from(e.getClientRects())}function fT(e){return Ya(qi(e)).left+qg(e).scrollLeft}function GY(e){const t=qi(e),n=qg(e),r=e.ownerDocument.body,o=Kr(t.scrollWidth,t.clientWidth,r.scrollWidth,r.clientWidth),i=Kr(t.scrollHeight,t.clientHeight,r.scrollHeight,r.clientHeight);let s=-n.scrollLeft+fT(e);const a=-n.scrollTop;return _o(r).direction==="rtl"&&(s+=Kr(t.clientWidth,r.clientWidth)-o),{width:o,height:i,x:s,y:a}}function YY(e,t){const n=Zr(e),r=qi(e),o=n.visualViewport;let i=r.clientWidth,s=r.clientHeight,a=0,l=0;if(o){i=o.width,s=o.height;const c=Rw();(!c||c&&t==="fixed")&&(a=o.offsetLeft,l=o.offsetTop)}return{width:i,height:s,x:a,y:l}}function KY(e,t){const n=Ya(e,!0,t==="fixed"),r=n.top+e.clientTop,o=n.left+e.clientLeft,i=ii(e)?Yl(e):Ns(1),s=e.clientWidth*i.x,a=e.clientHeight*i.y,l=o*i.x,c=r*i.y;return{width:s,height:a,x:l,y:c}}function JR(e,t,n){let r;if(t==="viewport")r=YY(e,n);else if(t==="document")r=GY(qi(e));else if(Hi(t))r=KY(t,n);else{const o=dT(e);r={...t,x:t.x-o.x,y:t.y-o.y}}return Qp(r)}function hT(e,t){const n=wc(e);return n===t||!Hi(n)||Ug(n)?!1:_o(n).position==="fixed"||hT(n,t)}function XY(e,t){const n=t.get(e);if(n)return n;let r=ud(e,[],!1).filter(a=>Hi(a)&&Ls(a)!=="body"),o=null;const i=_o(e).position==="fixed";let s=i?wc(e):e;for(;Hi(s)&&!Ug(s);){const a=_o(s),l=Ew(s);!l&&a.position==="fixed"&&(o=null),(i?!l&&!o:!l&&a.position==="static"&&!!o&&["absolute","fixed"].includes(o.position)||cf(s)&&!l&&hT(e,s))?r=r.filter(u=>u!==s):o=a,s=wc(s)}return t.set(e,r),r}function QY(e){let{element:t,boundary:n,rootBoundary:r,strategy:o}=e;const s=[...n==="clippingAncestors"?XY(t,this._c):[].concat(n),r],a=s[0],l=s.reduce((c,u)=>{const f=JR(t,u,o);return c.top=Kr(f.top,c.top),c.right=Is(f.right,c.right),c.bottom=Is(f.bottom,c.bottom),c.left=Kr(f.left,c.left),c},JR(t,a,o));return{width:l.right-l.left,height:l.bottom-l.top,x:l.left,y:l.top}}function JY(e){return uT(e)}function ZY(e,t,n){const r=ii(t),o=qi(t),i=n==="fixed",s=Ya(e,!0,i,t);let a={scrollLeft:0,scrollTop:0};const l=Ns(0);if(r||!r&&!i)if((Ls(t)!=="body"||cf(o))&&(a=qg(t)),r){const c=Ya(t,!0,i,t);l.x=c.x+t.clientLeft,l.y=c.y+t.clientTop}else o&&(l.x=fT(o));return{x:s.left+a.scrollLeft-l.x,y:s.top+a.scrollTop-l.y,width:s.width,height:s.height}}function ZR(e,t){return!ii(e)||_o(e).position==="fixed"?null:t?t(e):e.offsetParent}function pT(e,t){const n=Zr(e);if(!ii(e))return n;let r=ZR(e,t);for(;r&&BY(r)&&_o(r).position==="static";)r=ZR(r,t);return r&&(Ls(r)==="html"||Ls(r)==="body"&&_o(r).position==="static"&&!Ew(r))?n:r||VY(e)||n}const eK=async function(e){let{reference:t,floating:n,strategy:r}=e;const o=this.getOffsetParent||pT,i=this.getDimensions;return{reference:ZY(t,await o(n),r),floating:{x:0,y:0,...await i(n)}}};function tK(e){return _o(e).direction==="rtl"}const nK={convertOffsetParentRelativeRectToViewportRelativeRect:UY,getDocumentElement:qi,getClippingRect:QY,getOffsetParent:pT,getElementRects:eK,getClientRects:qY,getDimensions:JY,getScale:Yl,isElement:Hi,isRTL:tK};function rK(e,t){let n=null,r;const o=qi(e);function i(){clearTimeout(r),n&&n.disconnect(),n=null}function s(a,l){a===void 0&&(a=!1),l===void 0&&(l=1),i();const{left:c,top:u,width:f,height:p}=e.getBoundingClientRect();if(a||t(),!f||!p)return;const g=jh(u),v=jh(o.clientWidth-(c+f)),b=jh(o.clientHeight-(u+p)),x=jh(c),_={rootMargin:-g+"px "+-v+"px "+-b+"px "+-x+"px",threshold:Kr(0,Is(1,l))||1};let S=!0;function R(C){const P=C[0].intersectionRatio;if(P!==l){if(!S)return s();P?s(!1,P):r=setTimeout(()=>{s(!1,1e-7)},100)}S=!1}try{n=new IntersectionObserver(R,{..._,root:o.ownerDocument})}catch{n=new IntersectionObserver(R,_)}n.observe(e)}return s(!0),i}function oK(e,t,n,r){r===void 0&&(r={});const{ancestorScroll:o=!0,ancestorResize:i=!0,elementResize:s=typeof ResizeObserver=="function",layoutShift:a=typeof IntersectionObserver=="function",animationFrame:l=!1}=r,c=Ow(e),u=o||i?[...c?ud(c):[],...ud(t)]:[];u.forEach(w=>{o&&w.addEventListener("scroll",n,{passive:!0}),i&&w.addEventListener("resize",n)});const f=c&&a?rK(c,n):null;let p=-1,g=null;s&&(g=new ResizeObserver(w=>{let[_]=w;_&&_.target===c&&g&&(g.unobserve(t),cancelAnimationFrame(p),p=requestAnimationFrame(()=>{g&&g.observe(t)})),n()}),c&&!l&&g.observe(c),g.observe(t));let v,b=l?Ya(e):null;l&&x();function x(){const w=Ya(e);b&&(w.x!==b.x||w.y!==b.y||w.width!==b.width||w.height!==b.height)&&n(),b=w,v=requestAnimationFrame(x)}return n(),()=>{u.forEach(w=>{o&&w.removeEventListener("scroll",n),i&&w.removeEventListener("resize",n)}),f&&f(),g&&g.disconnect(),g=null,l&&cancelAnimationFrame(v)}}const iK=(e,t,n)=>{const r=new Map,o={platform:nK,...n},i={...o.platform,_c:r};return MY(e,t,{...o,platform:i})},sK=e=>{function t(n){return{}.hasOwnProperty.call(n,"current")}return{name:"arrow",options:e,fn(n){const{element:r,padding:o}=typeof e=="function"?e(n):e;return r&&t(r)?r.current!=null?YR({element:r.current,padding:o}).fn(n):{}:r?YR({element:r,padding:o}).fn(n):{}}}};var Sp=typeof document<"u"?m.useLayoutEffect:m.useEffect;function Jp(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,o;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(!Jp(e[r],t[r]))return!1;return!0}if(o=Object.keys(e),n=o.length,n!==Object.keys(t).length)return!1;for(r=n;r--!==0;)if(!{}.hasOwnProperty.call(t,o[r]))return!1;for(r=n;r--!==0;){const i=o[r];if(!(i==="_owner"&&e.$$typeof)&&!Jp(e[i],t[i]))return!1}return!0}return e!==e&&t!==t}function gT(e){return typeof window>"u"?1:(e.ownerDocument.defaultView||window).devicePixelRatio||1}function e2(e,t){const n=gT(e);return Math.round(t*n)/n}function t2(e){const t=pe.useRef(e);return Sp(()=>{t.current=e}),t}function aK(e){e===void 0&&(e={});const{placement:t="bottom",strategy:n="absolute",middleware:r=[],platform:o,elements:{reference:i,floating:s}={},transform:a=!0,whileElementsMounted:l,open:c}=e,[u,f]=pe.useState({x:0,y:0,strategy:n,placement:t,middlewareData:{},isPositioned:!1}),[p,g]=pe.useState(r);Jp(p,r)||g(r);const[v,b]=pe.useState(null),[x,w]=pe.useState(null),_=pe.useCallback(Q=>{Q!=P.current&&(P.current=Q,b(Q))},[b]),S=pe.useCallback(Q=>{Q!==A.current&&(A.current=Q,w(Q))},[w]),R=i||v,C=s||x,P=pe.useRef(null),A=pe.useRef(null),k=pe.useRef(u),D=t2(l),I=t2(o),z=pe.useCallback(()=>{if(!P.current||!A.current)return;const Q={placement:t,strategy:n,middleware:p};I.current&&(Q.platform=I.current),iK(P.current,A.current,Q).then(W=>{const U={...W,isPositioned:!0};j.current&&!Jp(k.current,U)&&(k.current=U,A6.flushSync(()=>{f(U)}))})},[p,t,n,I]);Sp(()=>{c===!1&&k.current.isPositioned&&(k.current.isPositioned=!1,f(Q=>({...Q,isPositioned:!1})))},[c]);const j=pe.useRef(!1);Sp(()=>(j.current=!0,()=>{j.current=!1}),[]),Sp(()=>{if(R&&(P.current=R),C&&(A.current=C),R&&C){if(D.current)return D.current(R,C,z);z()}},[R,C,z,D]);const K=pe.useMemo(()=>({reference:P,floating:A,setReference:_,setFloating:S}),[_,S]),q=pe.useMemo(()=>({reference:R,floating:C}),[R,C]),B=pe.useMemo(()=>{const Q={position:n,left:0,top:0};if(!q.floating)return Q;const W=e2(q.floating,u.x),U=e2(q.floating,u.y);return a?{...Q,transform:"translate("+W+"px, "+U+"px)",...gT(q.floating)>=1.5&&{willChange:"transform"}}:{position:n,left:W,top:U}},[n,a,q.floating,u.x,u.y]);return pe.useMemo(()=>({...u,update:z,refs:K,elements:q,floatingStyles:B}),[u,z,K,q,B])}function Gg(e){const[t,n]=m.useState(void 0);return tr(()=>{if(e){n({width:e.offsetWidth,height:e.offsetHeight});const r=new ResizeObserver(o=>{if(!Array.isArray(o)||!o.length)return;const i=o[0];let s,a;if("borderBoxSize"in i){const l=i.borderBoxSize,c=Array.isArray(l)?l[0]:l;s=c.inlineSize,a=c.blockSize}else s=e.offsetWidth,a=e.offsetHeight;n({width:s,height:a})});return r.observe(e,{box:"border-box"}),()=>r.unobserve(e)}else n(void 0)},[e]),t}const mT="Popper",[vT,di]=Bn(mT),[lK,bT]=vT(mT),cK=e=>{const{__scopePopper:t,children:n}=e,[r,o]=m.useState(null);return m.createElement(lK,{scope:t,anchor:r,onAnchorChange:o},n)},uK="PopperAnchor",dK=m.forwardRef((e,t)=>{const{__scopePopper:n,virtualRef:r,...o}=e,i=bT(uK,n),s=m.useRef(null),a=lt(t,s);return m.useEffect(()=>{i.onAnchorChange((r==null?void 0:r.current)||s.current)}),r?null:m.createElement(Ue.div,le({},o,{ref:a}))}),yT="PopperContent",[fK,qpe]=vT(yT),hK=m.forwardRef((e,t)=>{var n,r,o,i,s,a,l,c;const{__scopePopper:u,side:f="bottom",sideOffset:p=0,align:g="center",alignOffset:v=0,arrowPadding:b=0,avoidCollisions:x=!0,collisionBoundary:w=[],collisionPadding:_=0,sticky:S="partial",hideWhenDetached:R=!1,updatePositionStrategy:C="optimized",onPlaced:P,...A}=e,k=bT(yT,u),[D,I]=m.useState(null),z=lt(t,Oe=>I(Oe)),[j,K]=m.useState(null),q=Gg(j),B=(n=q==null?void 0:q.width)!==null&&n!==void 0?n:0,Q=(r=q==null?void 0:q.height)!==null&&r!==void 0?r:0,W=f+(g!=="center"?"-"+g:""),U=typeof _=="number"?_:{top:0,right:0,bottom:0,left:0,..._},Z=Array.isArray(w)?w:[w],T=Z.length>0,V={padding:U,boundary:Z.filter(pK),altBoundary:T},{refs:X,floatingStyles:N,placement:se,isPositioned:ae,middlewareData:ue}=aK({strategy:"fixed",placement:W,whileElementsMounted:(...Oe)=>oK(...Oe,{animationFrame:C==="always"}),elements:{reference:k.anchor},middleware:[LY({mainAxis:p+Q,alignmentAxis:v}),x&&FY({mainAxis:!0,crossAxis:!1,limiter:S==="partial"?zY():void 0,...V}),x&&AY({...V}),jY({...V,apply:({elements:Oe,rects:$e,availableWidth:Ve,availableHeight:Fe})=>{const{width:ke,height:Ge}=$e.reference,ct=Oe.floating.style;ct.setProperty("--radix-popper-available-width",`${Ve}px`),ct.setProperty("--radix-popper-available-height",`${Fe}px`),ct.setProperty("--radix-popper-anchor-width",`${ke}px`),ct.setProperty("--radix-popper-anchor-height",`${Ge}px`)}}),j&&sK({element:j,padding:b}),gK({arrowWidth:B,arrowHeight:Q}),R&&IY({strategy:"referenceHidden",...V})]}),[fe,oe]=xT(se),ee=Mn(P);tr(()=>{ae&&(ee==null||ee())},[ae,ee]);const ie=(o=ue.arrow)===null||o===void 0?void 0:o.x,be=(i=ue.arrow)===null||i===void 0?void 0:i.y,G=((s=ue.arrow)===null||s===void 0?void 0:s.centerOffset)!==0,[me,_e]=m.useState();return tr(()=>{D&&_e(window.getComputedStyle(D).zIndex)},[D]),m.createElement("div",{ref:X.setFloating,"data-radix-popper-content-wrapper":"",style:{...N,transform:ae?N.transform:"translate(0, -200%)",minWidth:"max-content",zIndex:me,"--radix-popper-transform-origin":[(a=ue.transformOrigin)===null||a===void 0?void 0:a.x,(l=ue.transformOrigin)===null||l===void 0?void 0:l.y].join(" ")},dir:e.dir},m.createElement(fK,{scope:u,placedSide:fe,onArrowChange:K,arrowX:ie,arrowY:be,shouldHideArrow:G},m.createElement(Ue.div,le({"data-side":fe,"data-align":oe},A,{ref:z,style:{...A.style,animation:ae?void 0:"none",opacity:(c=ue.hide)!==null&&c!==void 0&&c.referenceHidden?0:void 0}}))))});function pK(e){return e!==null}const gK=e=>({name:"transformOrigin",options:e,fn(t){var n,r,o,i,s;const{placement:a,rects:l,middlewareData:c}=t,f=((n=c.arrow)===null||n===void 0?void 0:n.centerOffset)!==0,p=f?0:e.arrowWidth,g=f?0:e.arrowHeight,[v,b]=xT(a),x={start:"0%",center:"50%",end:"100%"}[b],w=((r=(o=c.arrow)===null||o===void 0?void 0:o.x)!==null&&r!==void 0?r:0)+p/2,_=((i=(s=c.arrow)===null||s===void 0?void 0:s.y)!==null&&i!==void 0?i:0)+g/2;let S="",R="";return v==="bottom"?(S=f?x:`${w}px`,R=`${-g}px`):v==="top"?(S=f?x:`${w}px`,R=`${l.floating.height+g}px`):v==="right"?(S=`${-g}px`,R=f?x:`${_}px`):v==="left"&&(S=`${l.floating.width+g}px`,R=f?x:`${_}px`),{data:{x:S,y:R}}}});function xT(e){const[t,n="center"]=e.split("-");return[t,n]}const uf=cK,df=dK,ff=hK,Yg=m.forwardRef((e,t)=>{var n;const{container:r=globalThis==null||(n=globalThis.document)===null||n===void 0?void 0:n.body,...o}=e;return r?Fo.createPortal(m.createElement(Ue.div,le({},o,{ref:t})),r):null}),wT=m.forwardRef((e,t)=>m.createElement(Ue.span,le({},e,{ref:t,style:{position:"absolute",border:0,width:1,height:1,padding:0,margin:-1,overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",wordWrap:"normal",...e.style}}))),mK=wT,[Kg,Gpe]=Bn("Tooltip",[di]),Pw=di(),vK="TooltipProvider",bK=700,_y="tooltip.open",[yK,$w]=Kg(vK),xK=e=>{const{__scopeTooltip:t,delayDuration:n=bK,skipDelayDuration:r=300,disableHoverableContent:o=!1,children:i}=e,[s,a]=m.useState(!0),l=m.useRef(!1),c=m.useRef(0);return m.useEffect(()=>{const u=c.current;return()=>window.clearTimeout(u)},[]),m.createElement(yK,{scope:t,isOpenDelayed:s,delayDuration:n,onOpen:m.useCallback(()=>{window.clearTimeout(c.current),a(!1)},[]),onClose:m.useCallback(()=>{window.clearTimeout(c.current),c.current=window.setTimeout(()=>a(!0),r)},[r]),isPointerInTransitRef:l,onPointerInTransitChange:m.useCallback(u=>{l.current=u},[]),disableHoverableContent:o},i)},Dw="Tooltip",[wK,Xg]=Kg(Dw),_K=e=>{const{__scopeTooltip:t,children:n,open:r,defaultOpen:o=!1,onOpenChange:i,disableHoverableContent:s,delayDuration:a}=e,l=$w(Dw,e.__scopeTooltip),c=Pw(t),[u,f]=m.useState(null),p=$r(),g=m.useRef(0),v=s??l.disableHoverableContent,b=a??l.delayDuration,x=m.useRef(!1),[w=!1,_]=nr({prop:r,defaultProp:o,onChange:A=>{A?(l.onOpen(),document.dispatchEvent(new CustomEvent(_y))):l.onClose(),i==null||i(A)}}),S=m.useMemo(()=>w?x.current?"delayed-open":"instant-open":"closed",[w]),R=m.useCallback(()=>{window.clearTimeout(g.current),x.current=!1,_(!0)},[_]),C=m.useCallback(()=>{window.clearTimeout(g.current),_(!1)},[_]),P=m.useCallback(()=>{window.clearTimeout(g.current),g.current=window.setTimeout(()=>{x.current=!0,_(!0)},b)},[b,_]);return m.useEffect(()=>()=>window.clearTimeout(g.current),[]),m.createElement(uf,c,m.createElement(wK,{scope:t,contentId:p,open:w,stateAttribute:S,trigger:u,onTriggerChange:f,onTriggerEnter:m.useCallback(()=>{l.isOpenDelayed?P():R()},[l.isOpenDelayed,P,R]),onTriggerLeave:m.useCallback(()=>{v?C():window.clearTimeout(g.current)},[C,v]),onOpen:R,onClose:C,disableHoverableContent:v},n))},n2="TooltipTrigger",_T=m.forwardRef((e,t)=>{const{__scopeTooltip:n,...r}=e,o=Xg(n2,n),i=$w(n2,n),s=Pw(n),a=m.useRef(null),l=lt(t,a,o.onTriggerChange),c=m.useRef(!1),u=m.useRef(!1),f=m.useCallback(()=>c.current=!1,[]);return m.useEffect(()=>()=>document.removeEventListener("pointerup",f),[f]),m.createElement(df,le({asChild:!0},s),m.createElement(Ue.button,le({"aria-describedby":o.open?o.contentId:void 0,"data-state":o.stateAttribute},r,{ref:l,onPointerMove:Re(e.onPointerMove,p=>{p.pointerType!=="touch"&&!u.current&&!i.isPointerInTransitRef.current&&(o.onTriggerEnter(),u.current=!0)}),onPointerLeave:Re(e.onPointerLeave,()=>{o.onTriggerLeave(),u.current=!1}),onPointerDown:Re(e.onPointerDown,()=>{c.current=!0,document.addEventListener("pointerup",f,{once:!0})}),onFocus:Re(e.onFocus,()=>{c.current||o.onOpen()}),onBlur:Re(e.onBlur,o.onClose),onClick:Re(e.onClick,o.onClose)})))}),SK="TooltipPortal",[Ype,CK]=Kg(SK,{forceMount:void 0}),dd="TooltipContent",EK=m.forwardRef((e,t)=>{const n=CK(dd,e.__scopeTooltip),{forceMount:r=n.forceMount,side:o="top",...i}=e,s=Xg(dd,e.__scopeTooltip);return m.createElement(Rn,{present:r||s.open},s.disableHoverableContent?m.createElement(ST,le({side:o},i,{ref:t})):m.createElement(RK,le({side:o},i,{ref:t})))}),RK=m.forwardRef((e,t)=>{const n=Xg(dd,e.__scopeTooltip),r=$w(dd,e.__scopeTooltip),o=m.useRef(null),i=lt(t,o),[s,a]=m.useState(null),{trigger:l,onClose:c}=n,u=o.current,{onPointerInTransitChange:f}=r,p=m.useCallback(()=>{a(null),f(!1)},[f]),g=m.useCallback((v,b)=>{const x=v.currentTarget,w={x:v.clientX,y:v.clientY},_=PK(w,x.getBoundingClientRect()),S=$K(w,_),R=DK(b.getBoundingClientRect()),C=kK([...S,...R]);a(C),f(!0)},[f]);return m.useEffect(()=>()=>p(),[p]),m.useEffect(()=>{if(l&&u){const v=x=>g(x,u),b=x=>g(x,l);return l.addEventListener("pointerleave",v),u.addEventListener("pointerleave",b),()=>{l.removeEventListener("pointerleave",v),u.removeEventListener("pointerleave",b)}}},[l,u,g,p]),m.useEffect(()=>{if(s){const v=b=>{const x=b.target,w={x:b.clientX,y:b.clientY},_=(l==null?void 0:l.contains(x))||(u==null?void 0:u.contains(x)),S=!TK(w,s);_?p():S&&(p(),c())};return document.addEventListener("pointermove",v),()=>document.removeEventListener("pointermove",v)}},[l,u,s,c,p]),m.createElement(ST,le({},e,{ref:i}))}),[OK,Kpe]=Kg(Dw,{isInside:!1}),ST=m.forwardRef((e,t)=>{const{__scopeTooltip:n,children:r,"aria-label":o,onEscapeKeyDown:i,onPointerDownOutside:s,...a}=e,l=Xg(dd,n),c=Pw(n),{onClose:u}=l;return m.useEffect(()=>(document.addEventListener(_y,u),()=>document.removeEventListener(_y,u)),[u]),m.useEffect(()=>{if(l.trigger){const f=p=>{const g=p.target;g!=null&&g.contains(l.trigger)&&u()};return window.addEventListener("scroll",f,{capture:!0}),()=>window.removeEventListener("scroll",f,{capture:!0})}},[l.trigger,u]),m.createElement(kc,{asChild:!0,disableOutsidePointerEvents:!1,onEscapeKeyDown:i,onPointerDownOutside:s,onFocusOutside:f=>f.preventDefault(),onDismiss:u},m.createElement(ff,le({"data-state":l.stateAttribute},c,a,{ref:t,style:{...a.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)"}}),m.createElement(WP,null,r),m.createElement(OK,{scope:n,isInside:!0},m.createElement(mK,{id:l.contentId,role:"tooltip"},o||r))))});function PK(e,t){const n=Math.abs(t.top-e.y),r=Math.abs(t.bottom-e.y),o=Math.abs(t.right-e.x),i=Math.abs(t.left-e.x);switch(Math.min(n,r,o,i)){case i:return"left";case o:return"right";case n:return"top";case r:return"bottom";default:throw new Error("unreachable")}}function $K(e,t,n=5){const 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 DK(e){const{top:t,right:n,bottom:r,left:o}=e;return[{x:o,y:t},{x:n,y:t},{x:n,y:r},{x:o,y:r}]}function TK(e,t){const{x:n,y:r}=e;let o=!1;for(let i=0,s=t.length-1;i<t.length;s=i++){const a=t[i].x,l=t[i].y,c=t[s].x,u=t[s].y;l>r!=u>r&&n<(c-a)*(r-l)/(u-l)+a&&(o=!o)}return o}function kK(e){const t=e.slice();return t.sort((n,r)=>n.x<r.x?-1:n.x>r.x?1:n.y<r.y?-1:n.y>r.y?1:0),MK(t)}function MK(e){if(e.length<=1)return e.slice();const t=[];for(let r=0;r<e.length;r++){const o=e[r];for(;t.length>=2;){const i=t[t.length-1],s=t[t.length-2];if((i.x-s.x)*(o.y-s.y)>=(i.y-s.y)*(o.x-s.x))t.pop();else break}t.push(o)}t.pop();const n=[];for(let r=e.length-1;r>=0;r--){const o=e[r];for(;n.length>=2;){const i=n[n.length-1],s=n[n.length-2];if((i.x-s.x)*(o.y-s.y)>=(i.y-s.y)*(o.x-s.x))n.pop();else break}n.push(o)}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)}const AK=xK,IK=_K,NK=_T,CT=EK,LK=AK,ET=IK,RT=NK,Tw=pe.forwardRef(({className:e,sideOffset:t=4,...n},r)=>O.jsx(CT,{ref:r,sideOffset:t,className:Ee("z-50 overflow-hidden rounded-md border bg-popover px-3 py-1.5 text-sm text-popover-foreground shadow-md animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-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",e),...n}));Tw.displayName=CT.displayName;function Fa({number:e,decimalPlaces:t=0,useSuffix:n=!1,customSuffix:r="",currency:o="",locale:i="en-US"}){let s=1,a=r,l=i;const c=t;n&&!r&&(e>=1e9?(s=1e9,a="B"):e>=1e7&&i==="en-IN"?(s=1e7,a="Cr"):e>=1e5&&i==="en-IN"?(s=1e5,a="L"):e>=1e6?(s=1e6,a="M"):e>=1e3&&(s=1e3,a="K"));const u=e/s,f={maximumFractionDigits:c,minimumFractionDigits:c};if(o){f.style="currency",f.currency=o;try{new Intl.NumberFormat(i,f).format(0)}catch{f.currency="USD"}}try{new Intl.NumberFormat(i,f).format(0)}catch{l="en-US"}let g=new Intl.NumberFormat(l,f).format(u);return n&&(g+=a),g}function OT(e,t){if(!t)return"";const n=t.find(r=>e>=r.start&&e<=r.end);return(n==null?void 0:n.color)||""}function PT({card:e,isLoading:t}){var w,_,S,R,C,P,A,k,D,I,z,j,K,q,B,Q,W,U,Z,T,V,X,N,se;const n=De(ae=>ae.actions.setCardTitle),r=De(ae=>ae.actions.setCardDescription),o=De(ae=>ae.isVisualEditing),i=Cr(ae=>ae.card),s=Cr(ae=>ae.actions.setCard);Cr(ae=>ae.actions.setNumberFormat);const a=De(ae=>ae.selectedSheetId),l=e.data,c=(_=(w=e.preferences)==null?void 0:w.formatNumber)==null?void 0:_.colorRanges,{metricKeys:u}=dr(l||[]),f=(S=l==null?void 0:l[0])==null?void 0:S[u==null?void 0:u[0]],p=(R=l==null?void 0:l[0])==null?void 0:R[u==null?void 0:u[1]],g=!!e.data&&e.data.length>0;function v(ae){o?s({...i,title:ae}):n(a,e.id,ae)}function b(ae){o?s({...i,description:ae}):r(a,e.id,ae)}const x=p&&p-f!==0?(f-p)/p:null;return O.jsxs("div",{className:"kpi-card flex grow flex-col overflow-scroll",children:[O.jsxs(Sg,{className:"grow pb-3",children:[O.jsx(Wa,{text:o?i.title:e.title,onSave:v,children:O.jsxs("div",{className:"flex items-center gap-2",children:[O.jsx(ef,{className:"text-base font-medium text-muted-foreground",children:e.title}),!e.refreshInterval&&t&&O.jsx(yw,{className:"h-4 w-4 animate-spin text-muted-foreground"})]})}),g&&O.jsxs("div",{className:"flex flex-wrap items-end gap-3 text-foreground",children:[O.jsx("p",{style:{color:OT(f,c)},className:"text-3xl font-semibold",children:Fa({number:f,decimalPlaces:((P=(C=e.preferences)==null?void 0:C.formatNumber)==null?void 0:P.decimalPlaces)||0,useSuffix:!!((k=(A=e.preferences)==null?void 0:A.formatNumber)!=null&&k.suffix),customSuffix:((I=(D=e.preferences)==null?void 0:D.formatNumber)==null?void 0:I.suffix)||"",locale:((j=(z=e.preferences)==null?void 0:z.formatNumber)==null?void 0:j.locale)||"",currency:((q=(K=e.preferences)==null?void 0:K.formatNumber)==null?void 0:q.currency)||""})}),p&&O.jsxs("span",{className:"min-w-fit text-base font-normal text-muted-foreground",children:["from  ",Fa({number:p,decimalPlaces:((Q=(B=e.preferences)==null?void 0:B.formatNumber)==null?void 0:Q.decimalPlaces)||0,useSuffix:!!((U=(W=e.preferences)==null?void 0:W.formatNumber)!=null&&U.suffix),customSuffix:((T=(Z=e.preferences)==null?void 0:Z.formatNumber)==null?void 0:T.suffix)||"",locale:((X=(V=e.preferences)==null?void 0:V.formatNumber)==null?void 0:X.locale)||"",currency:((se=(N=e.preferences)==null?void 0:N.formatNumber)==null?void 0:se.currency)||""})]})]})]}),x&&O.jsxs(Cg,{className:"grow items-start gap-1 pb-4 text-sm",children:[O.jsx(FK,{children:x}),O.jsxs("div",{className:"flex gap-1 text-muted-foreground",children:[x>0?"up ":"down ",O.jsx(Wa,{text:e.description||"",onSave:b,children:e.description})]})]})]})}function FK({children:e}){const t=e>0?O.jsx(mw,{className:"h-4 w-4"}):O.jsx(gw,{className:"h-4 w-4"}),n=`${Math.abs(e*100).toFixed(0)}%`;return O.jsxs("div",{className:Ee("flex items-center",{"text-green-600":e>0,"text-destructive":e<0}),children:[t,O.jsx("span",{className:"ml-[1px]",children:n})]})}var _c=1e3,Sc=_c*60,Cc=Sc*60,Ka=Cc*24,zK=Ka*7,jK=Ka*365.25,BK=function(e,t){t=t||{};var n=typeof e;if(n==="string"&&e.length>0)return VK(e);if(n==="number"&&isFinite(e))return t.long?WK(e):HK(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))};function VK(e){if(e=String(e),!(e.length>100)){var t=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(e);if(t){var n=parseFloat(t[1]),r=(t[2]||"ms").toLowerCase();switch(r){case"years":case"year":case"yrs":case"yr":case"y":return n*jK;case"weeks":case"week":case"w":return n*zK;case"days":case"day":case"d":return n*Ka;case"hours":case"hour":case"hrs":case"hr":case"h":return n*Cc;case"minutes":case"minute":case"mins":case"min":case"m":return n*Sc;case"seconds":case"second":case"secs":case"sec":case"s":return n*_c;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return n;default:return}}}}function HK(e){var t=Math.abs(e);return t>=Ka?Math.round(e/Ka)+"d":t>=Cc?Math.round(e/Cc)+"h":t>=Sc?Math.round(e/Sc)+"m":t>=_c?Math.round(e/_c)+"s":e+"ms"}function WK(e){var t=Math.abs(e);return t>=Ka?Bh(e,t,Ka,"day"):t>=Cc?Bh(e,t,Cc,"hour"):t>=Sc?Bh(e,t,Sc,"minute"):t>=_c?Bh(e,t,_c,"second"):e+" ms"}function Bh(e,t,n,r){var o=t>=n*1.5;return Math.round(e/n)+" "+r+(o?"s":"")}const UK=$c(BK);function $T({children:e}){const{setIsSessionExpired:t}=Wi(),n=new g8({queryCache:new IP({onError:r=>{console.error(`Something went wrong: ${r.message}`),r.message==="invalid token"&&t(!0)}}),defaultOptions:{queries:{refetchOnWindowFocus:!1,retry:1}}});return O.jsx(y8,{client:n,children:e})}const qK={id:"",authToken:void 0},DT=m.createContext(qK),TT=({children:e,dashboardProps:t})=>O.jsx($T,{children:O.jsx(DT.Provider,{value:t,children:e})});function nl(){const e=m.useContext(DT);if(e===void 0)throw new Error("useApplicationContext must be used within a ApplicationContextProvider");return e}function GK(e){De(c=>c.bookmarkKey);const t=De(c=>c.dashboard.baseQueries),{authToken:n}=nl(),r=De(c=>c.authToken),o=De(c=>c.filterValues),i=De(c=>c.isDashboardEditing),s=UK((e==null?void 0:e.refreshInterval)||"0"),a=pP(e.sql,t);return Zd({queryKey:[e.id,a],queryFn:()=>Xd("https://semaphor.cloud/api/v1/query",(n==null?void 0:n.accessToken)||(r==null?void 0:r.accessToken)||"",{connection_id:e.connectionId,sql:a,python:e.python===OP?"":e.python,active_filters:o}),refetchInterval:s,enabled:!!e.connectionId&&!i})}function fa({data:e,cfg:t,customCfg:n,preferences:r}){const{dimensionKeys:o,metricKeys:i}=dr(e),s=eY(i,e,r),a=_p(s,n),l=o[0],c=vy(e,l);kw(r,t),kT(r);const u=MT(t,r),f=Fi.merge((t==null?void 0:t.options)||{},r==null?void 0:r.chartOptions),p=Fi.merge(u,f),g=va(p,(n==null?void 0:n.options)||{});return{type:(n==null?void 0:n.type)||(t==null?void 0:t.type)||"bar",data:{labels:c,datasets:a},options:g}}function kw(e,t){var o,i,s;const n=((o=t==null?void 0:t.options)==null?void 0:o.indexAxis)==="y"?"x":"y";return(i=e==null?void 0:e.chartOptions)!=null&&i.indexAxis?((s=e==null?void 0:e.chartOptions)==null?void 0:s.indexAxis)==="x"?"y":"x":n}function kT(e){var n,r;return(n=e==null?void 0:e.chartOptions)!=null&&n.indexAxis?((r=e==null?void 0:e.chartOptions)==null?void 0:r.indexAxis)==="x"?"x":"y":"x"}function MT(e,t){var i,s,a,l,c,u,f,p,g,v,b,x;const n=kw(t,e),r=kT(t);return{...e==null?void 0:e.options,scales:{...(i=e==null?void 0:e.options)==null?void 0:i.scales,[n]:{...(a=(s=e==null?void 0:e.options)==null?void 0:s.scales)==null?void 0:a[n],ticks:{...(u=(c=(l=e==null?void 0:e.options)==null?void 0:l.scales)==null?void 0:c[n])==null?void 0:u.ticks,callback:w=>{var _,S,R,C;return Fa({number:Number(w),decimalPlaces:((_=t==null?void 0:t.numberAxisFormat)==null?void 0:_.decimalPlaces)||0,useSuffix:!!((S=t==null?void 0:t.numberAxisFormat)!=null&&S.suffix),customSuffix:"",locale:((R=t==null?void 0:t.numberAxisFormat)==null?void 0:R.locale)||"",currency:((C=t==null?void 0:t.numberAxisFormat)==null?void 0:C.currency)||""})}}},[r]:{...(g=(p=(f=e==null?void 0:e.options)==null?void 0:f.scales)==null?void 0:p[r])==null?void 0:g.ticks,callback:null}},plugins:{...(v=e==null?void 0:e.options)==null?void 0:v.plugins,datalabels:{...(x=(b=e==null?void 0:e.options)==null?void 0:b.plugins)==null?void 0:x.datalabels,formatter:function(w){var _,S,R,C;return Fa({number:Number(w),decimalPlaces:((_=t==null?void 0:t.numberAxisFormat)==null?void 0:_.decimalPlaces)||0,useSuffix:!!((S=t==null?void 0:t.numberAxisFormat)!=null&&S.suffix),customSuffix:"",locale:((R=t==null?void 0:t.numberAxisFormat)==null?void 0:R.locale)||"",currency:((C=t==null?void 0:t.numberAxisFormat)==null?void 0:C.currency)||""})}}}}}function YK(e){return{...e,type:"bar",options:{...e==null?void 0:e.options,indexAxis:"y",scales:{x:{display:!0},y:{display:!0}}}}}function KK(e){return{...e,type:"bar",options:{...e==null?void 0:e.options,indexAxis:"y",scales:{x:{beginAtZero:!0,stack:1,reverse:!0},y:{stacked:!0,beginAtZero:!0}}}}}function XK(e){return{...e,type:"bar",options:{...e==null?void 0:e.options,scales:{x:{display:!0},y:{display:!0}}}}}function QK(e,t=!1){return{...e,type:"bar",options:{...e==null?void 0:e.options,indexAxis:"y",scales:{x:{display:!0,beginAtZero:!1},y:{display:!0,stacked:t}}}}}function JK(e){var n,r,o,i;return{...e,type:"bar",options:{...e==null?void 0:e.options,scales:{x:{...(r=(n=e==null?void 0:e.options)==null?void 0:n.scales)==null?void 0:r.x,display:!0,stacked:!0},y:{...(i=(o=e==null?void 0:e.options)==null?void 0:o.scales)==null?void 0:i.y,display:!0,stacked:!0}}}}}function ZK(e){return{...e,type:"line",options:{...e==null?void 0:e.options,scales:{x:{display:!0},y:{display:!0}}}}}function eX(e,t){return{...t,type:e,options:{...t==null?void 0:t.options,scales:{x:{display:!1},y:{display:!1}},plugins:{legend:{position:"top",align:"center",maxHeight:0,labels:{useBorderRadius:!0,borderRadius:2}}},borderRadius:0}}}function tX(e){return{...e,type:"radar",options:{...e==null?void 0:e.options,scales:{x:{display:!1},y:{display:!1}}}}}function nX(e){const n=new Function("getDatalabelColor",e)(P0);return{options:n==null?void 0:n.options,plugins:(n==null?void 0:n.plugins)||[]}}function Mw({data:e,cardType:t="bar",cfg:n,customCfg:r,provider:o="chartjs",userSettings:i,preferences:s}){var a,l,c;if(t==="bar"){const u=XK(n);return fa({data:e,cfg:u,customCfg:r,cardType:t,userSettings:i,provider:o,preferences:s})}if(t==="horizontalBar"){const u=YK(n);return fa({data:e,cfg:u,customCfg:r,cardType:t,userSettings:i,provider:o,preferences:s})}if(t==="pyramid"){const u=KK(n),{dimensionKeys:f,metricKeys:p}=dr(e),g=Yp({dataArray:e,groupKey:f[0],pivotKey:f[1],valueKey:p[0]}),v=fa({data:g,cfg:u,customCfg:r,cardType:t,userSettings:i,provider:o,preferences:s}),b="x2";return{...v,data:{...v.data,datasets:v.data.datasets.map((w,_)=>_===1?{...w,xAxisID:b}:w)},options:{...v.options,scales:{...(a=v==null?void 0:v.options)==null?void 0:a.scales,[b]:{beginAtZero:!0,stack:1}}}}}if(t==="stackedBar"){const u=JK(n),{dimensionKeys:f,metricKeys:p}=dr(e),g=Yp({dataArray:e,groupKey:f[0],pivotKey:f[1],valueKey:p[0]});return fa({data:g,cfg:u,customCfg:r,cardType:t,userSettings:i,provider:o,preferences:s})}if(t==="line"){const u=ZK(n);return fa({data:e,cfg:u,customCfg:r,cardType:t,userSettings:i,provider:o,preferences:s})}if(t==="range"){QK(n);const u=rY(e),f=_p(u,r),{plugins:p,options:g}=nX((s==null?void 0:s.customVisualCode)||""),v=va((n==null?void 0:n.options)||{},(s==null?void 0:s.chartOptions)||{}),b=va(v,(r==null?void 0:r.options)||{});console.log("withCustomConfigOPtions",b);const x=va(b,g),w=MT(n,s),_=va(x,w),S={..._,plugins:{..._==null?void 0:_.plugins,datalabels:{...(l=_==null?void 0:_.plugins)==null?void 0:l.datalabels,formatter:(k,D)=>k.map(z=>{var j,K,q,B;return Fa({number:Number(z),decimalPlaces:((j=s==null?void 0:s.numberAxisFormat)==null?void 0:j.decimalPlaces)||0,useSuffix:!!((K=s==null?void 0:s.numberAxisFormat)!=null&&K.suffix),customSuffix:"",locale:((q=s==null?void 0:s.numberAxisFormat)==null?void 0:q.locale)||"",currency:((B=s==null?void 0:s.numberAxisFormat)==null?void 0:B.currency)||""})}).slice(0,2).join(" - ")}}},{dimensionKeys:R}=dr(e),C=R[0];return{type:"bar",data:{labels:[...new Set(vy(e,C))],datasets:f},options:S,plugins:[...p]}}if(t==="pie"||t==="doughnut"||t==="polarArea"){const u=eX(t,n),{dimensionKeys:f,metricKeys:p}=dr(e),g=oY(p,e),v=_p(g,r),b=f[0],x=vy(e,b),w=va((u==null?void 0:u.options)||{},(r==null?void 0:r.options)||{}),_={...w,plugins:{...w.plugins,datalabels:{...(c=w.plugins)==null?void 0:c.datalabels,formatter:(C,P)=>{var A,k,D,I;return Fa({number:Number(C),decimalPlaces:((A=s==null?void 0:s.numberAxisFormat)==null?void 0:A.decimalPlaces)||0,useSuffix:!!((k=s==null?void 0:s.numberAxisFormat)!=null&&k.suffix),customSuffix:"",locale:((D=s==null?void 0:s.numberAxisFormat)==null?void 0:D.locale)||"",currency:((I=s==null?void 0:s.numberAxisFormat)==null?void 0:I.currency)||""})}}}};return{type:t,data:{labels:x,datasets:v},options:_,plugins:[t==="doughnut"?{id:"doughnutLabel",beforeDatasetsDraw:function(C,P,A){var B,Q,W,U;const{ctx:k,data:D}=C;k.save();const I=C.getDatasetMeta(0).data[0].x,z=C.getDatasetMeta(0).data[0].y,j=Ju(Qu());k.font="1.2rem Arial",k.fontWeight="bolder",k.fillStyle=j,k.textAlign="center",k.textBaseline="middle";const K=D.datasets[0].data.reduce((Z,T)=>Z+T,0),q=Fa({number:Number(K),decimalPlaces:((B=s==null?void 0:s.numberAxisFormat)==null?void 0:B.decimalPlaces)||0,useSuffix:!!((Q=s==null?void 0:s.numberAxisFormat)!=null&&Q.suffix),customSuffix:"",locale:((W=s==null?void 0:s.numberAxisFormat)==null?void 0:W.locale)||"",currency:((U=s==null?void 0:s.numberAxisFormat)==null?void 0:U.currency)||""});k.fillText(q,I,z)}}:""]}}if(t==="radar"){const u=tX(n);return fa({data:e,cfg:u,customCfg:r,cardType:t,userSettings:i,provider:o,preferences:s})}if(t==="bubble"||t==="scatter"){const{metricKeys:u}=dr(e);if(u.length<3){console.log("Bubble charts require 3 numeric columns");return}const f=nY(e),p=_p(f,r),g={plugins:{datalabels:{display:!0}},scales:{x:{title:{display:!0,text:u[0]},beginAtZero:!0,ticks:{precision:0}},y:{title:{display:!0,text:u[1]},beginAtZero:!0,ticks:{precision:0}}}},v=va(g,(r==null?void 0:r.options)||{});return{type:t,data:{datasets:p},options:v}}return fa({data:e,cfg:n,customCfg:r,cardType:t,userSettings:i,provider:o,preferences:s})}function rX({chart:e,elementIndex:t,datasetIndex:n,cardType:r,cfg:o,apply:i}){const s=De.getState().theme;if(!o)return;const a=s==="dark"?"rgb(238,238,238,0.2)":"rgb(238,238,238,0.8)";["bar","line","horizontalBar","bubble","scatter"].includes(r)&&iX(e,t,o,i,a),["pie","doughnut","polarArea"].includes(r)&&sX(e,t,o,i,a),["stackedBar","pyramid"].includes(r)&&oX({chart:e,elementIndex:t,datasetIndex:n,cfg:o,apply:i,blurColor:a})}function oX(e){var a,l,c,u;const{chart:t,elementIndex:n,datasetIndex:r,cfg:o,apply:i,blurColor:s}=e;i?(l=(a=t==null?void 0:t.data)==null?void 0:a.datasets)==null||l.forEach((f,p)=>{var g,v;typeof f.backgroundColor=="string"&&(f.backgroundColor=new Array(f.data.length).fill(f.backgroundColor),f.borderColor=new Array(f.data.length).fill(f.borderColor)),f.backgroundColor=(g=f==null?void 0:f.backgroundColor)==null?void 0:g.map((b,x)=>x===n&&p===r?b:s),f.borderColor=(v=f==null?void 0:f.borderColor)==null?void 0:v.map((b,x)=>x===n&&p===r?b:s)}):(u=(c=t==null?void 0:t.data)==null?void 0:c.datasets)==null||u.forEach((f,p)=>{var g,v,b,x,w,_;f.backgroundColor=new Array(f.data.length).fill((b=(v=(g=o==null?void 0:o.data)==null?void 0:g.datasets)==null?void 0:v[p])==null?void 0:b.backgroundColor),f.borderColor=new Array(f.data.length).fill((_=(w=(x=o==null?void 0:o.data)==null?void 0:x.datasets)==null?void 0:w[p])==null?void 0:_.borderColor)}),t==null||t.update()}function iX(e,t,n,r,o){var i,s,a,l;console.log("clicked index",t),r?(s=(i=e==null?void 0:e.data)==null?void 0:i.datasets)==null||s.forEach(c=>{var u,f;typeof c.backgroundColor=="string"&&(c.backgroundColor=new Array(c.data.length).fill(c.backgroundColor),c.borderColor=new Array(c.data.length).fill(c.borderColor)),c.backgroundColor=(u=c==null?void 0:c.backgroundColor)==null?void 0:u.map((p,g)=>g===t?p:o),c.borderColor=(f=c==null?void 0:c.borderColor)==null?void 0:f.map((p,g)=>g===t?p:o)}):(l=(a=e==null?void 0:e.data)==null?void 0:a.datasets)==null||l.forEach((c,u)=>{var f,p,g,v,b,x;c.backgroundColor=new Array(c.data.length).fill((g=(p=(f=n==null?void 0:n.data)==null?void 0:f.datasets)==null?void 0:p[u])==null?void 0:g.backgroundColor),c.borderColor=new Array(c.data.length).fill((x=(b=(v=n==null?void 0:n.data)==null?void 0:v.datasets)==null?void 0:b[u])==null?void 0:x.borderColor)}),e==null||e.update()}function sX(e,t,n,r,o){var i,s,a,l;r?(s=(i=e==null?void 0:e.data)==null?void 0:i.datasets)==null||s.forEach(c=>{var u,f;c.backgroundColor=(u=c==null?void 0:c.backgroundColor)==null?void 0:u.map((p,g)=>g===t?p:o),c.borderColor=(f=c==null?void 0:c.borderColor)==null?void 0:f.map((p,g)=>g===t?p:o)}):(l=(a=e==null?void 0:e.data)==null?void 0:a.datasets)==null||l.forEach((c,u)=>{var f,p,g,v,b,x,w,_;typeof c.backgroundColor=="string"&&(c.backgroundColor=(g=(p=(f=n==null?void 0:n.data)==null?void 0:f.datasets)==null?void 0:p[u])==null?void 0:g.backgroundColor,c.borderColor=(x=(b=(v=n==null?void 0:n.data)==null?void 0:v.datasets)==null?void 0:b[u])==null?void 0:x.borderColor),c.backgroundColor=(w=c==null?void 0:c.backgroundColor)==null?void 0:w.map((S,R)=>{var C;return(C=n.data.datasets[u].backgroundColor)==null?void 0:C[R]}),c.borderColor=(_=c==null?void 0:c.borderColor)==null?void 0:_.map((S,R)=>{var C;return(C=n.data.datasets[u].borderColor)==null?void 0:C[R]})}),e==null||e.update()}function aX(e,t,n,r){var o,i;try{if(!e||!e.data)return;const{dimensionKeys:s,metricKeys:a}=dr(e.data);if(["bar","horizontalBar","line","pie","doughnut","radar","polarArea"].includes(e.type)){const l=s[0],c=(o=e.data[n])==null?void 0:o[l];return[{columnName:l,columnValue:c,metric:a[t],value:r}]}if(["stackedBar","pyramid"].includes(e.type)){const l=Yp({dataArray:e.data,groupKey:s[0],pivotKey:s[1],valueKey:a[0]}),c=s[0],u=(i=l[n])==null?void 0:i[c],f=s[1],{metricKeys:p}=dr(l),g=p[t];return[{columnName:c,columnValue:u,metric:a[0],value:r},{columnName:f,columnValue:g,metric:a[0],value:r}]}if(e.type==="bubble"||e.type==="scatter"){const l=s[0],c=r.label;return[{columnName:l,columnValue:c,metric1:a[0],value1:r.x,metric2:a[1],value2:r.y,metric3:a==null?void 0:a[2],value3:r==null?void 0:r.r}]}}catch(s){console.error("Error in getAdhocFilter",s)}}function lX(e){var s,a;const[t]=m.useState({id:"",title:"",type:"bar",data:[]}),{getCard:n}=Wi(),r=n(e),o=Aw(r||t),i={...r,data:((s=o==null?void 0:o.data)==null?void 0:s.records)||[]};return{...o,data:((a=o==null?void 0:o.data)==null?void 0:a.records)||[],card:i}}function Aw(e){var z,j,K;const{onChartElementClicked:t}=nl(),[n,r]=m.useState(0),o=((z=e==null?void 0:e.preferences)==null?void 0:z.filterOnClickColumnIndex)===void 0?0:(j=e.preferences)==null?void 0:j.filterOnClickColumnIndex,i=De(q=>q.bookmarkKey);De(q=>q.isVisualEditing);const s=De(q=>q.filteringCards),a=De(q=>q.selectedSheetId);De(q=>q.selectedCardId),De(q=>q.isDashboardEditing);const l=De(q=>q.themeStyle),c=De(q=>q.filterValues),u=(K=e==null?void 0:e.preferences)==null?void 0:K.onClickFilter,{addFrame:f,addFilteringCard:p,setFrameCardData:g,getSelectedFrame:v,addOrUpdateFilterValue:b,addOrUpdateFilterValues:x,removeFilterValue:w,removeFilteringCard:_}=Wi(),{data:S,isLoading:R,isFetching:C,isError:P,refetch:A}=GK(e),k=s==null?void 0:s.find(q=>q.id===e.id);let D;e.data&&e.data.length>0&&(D=Mw({data:e.data,cardType:e.type,cfg:e.cfg,customCfg:e.customCfg,preferences:e.preferences})),m.useEffect(()=>{!S||!S.records||g(a,e.id,(S==null?void 0:S.records)||[])},[S,a,e.id,g,c]),m.useEffect(()=>{e.data&&r(n+1)},[e.data,e.type,e.cfg,e.customCfg,e.preferences,l]),m.useEffect(()=>{e.connectionId&&!k&&A()},[c,i]);function I(q,B,Q,W){var T,V;let U=!1;if(!e.data)return;const Z=aX(e,B,Q,W);if(console.log("fieldValues",Z),t==null||t(e,Z),!!(((T=e==null?void 0:e.preferences)==null?void 0:T.onClickFilter)??[]).length){if(k){const X=e.id;w(X),_(e)}else{if(U=!0,!Z)return;const X=[];Z.forEach((N,se)=>{const ae=u==null?void 0:u.find(fe=>fe.columnIndex===se);if(!ae)return;const ue={filterId:e.id+"-"+N.columnName,connectionId:e==null?void 0:e.connectionId,tableName:e.lastSelectedTable,name:N.columnName,expression:ae.expression,valueType:Zu(Z[ae.columnIndex].columnValue),operation:"=",values:[Z[ae.columnIndex].columnValue]};X.push(ue)}),e.id,e==null||e.connectionId,e.lastSelectedTable,Z[o].columnName,(V=e.preferences)==null||V.filterOnClickField,Zu(Z[o].columnValue),Z[o].columnValue,x(X),p(e)}rX({chart:q,elementIndex:Q,datasetIndex:B,cardType:e.type,cfg:D,apply:U})}}return{isError:P,isLoading:R,isFetching:C,data:S,visualKey:n,handleDatapointClick:I,cfg:D}}function cX(e,t){const n=De(u=>u.selectedSheetId),r=De(u=>u.selectedFrameId),o=De(u=>u.isDashboardEditing),i=De(u=>u.isVisualEditing),{addFrame:s,getSelectedFrame:a,setSelectedFrameId:l}=De(u=>u.actions);m.useEffect(()=>{const u=p=>{if(o&&((p.metaKey||p.ctrlKey)&&p.key==="c"&&navigator.clipboard.writeText(JSON.stringify(a())),(p.ctrlKey||p.metaKey)&&p.key==="v"))try{navigator.clipboard.readText().then(g=>{try{const v=JSON.parse(g);if(v&&v.id){v.id=Ga();const b=v.activeCardId;v.cards.forEach(x=>{const w=x.id;x.id=Ga(),w===b&&(v.activeCardId=x.id,x.title=`${x.title} (Copy)`)}),s(n,v),l(v.id)}}catch(v){console.error("Failed to parse clipboard contents: ",v)}})}catch(g){console.error("Failed to read clipboard contents: ",g)}},f=t==null?void 0:t.current;return f==null||f.addEventListener("keydown",u),()=>{f==null||f.removeEventListener("keydown",u)}},[o,n,a,s,t,l]),m.useEffect(()=>{r===e.id&&o&&!i&&c()},[r,e.id,o,i]);function c(){const u=t==null?void 0:t.current;u==null||u.scrollIntoView({behavior:"smooth",block:"nearest",inline:"nearest"})}}let xb;const AT="HoverCard",[IT,Xpe]=Bn(AT,[di]),Iw=di(),[uX,Nw]=IT(AT),dX=e=>{const{__scopeHoverCard:t,children:n,open:r,defaultOpen:o,onOpenChange:i,openDelay:s=700,closeDelay:a=300}=e,l=Iw(t),c=m.useRef(0),u=m.useRef(0),f=m.useRef(!1),p=m.useRef(!1),[g=!1,v]=nr({prop:r,defaultProp:o,onChange:i}),b=m.useCallback(()=>{clearTimeout(u.current),c.current=window.setTimeout(()=>v(!0),s)},[s,v]),x=m.useCallback(()=>{clearTimeout(c.current),!f.current&&!p.current&&(u.current=window.setTimeout(()=>v(!1),a))},[a,v]),w=m.useCallback(()=>v(!1),[v]);return m.useEffect(()=>()=>{clearTimeout(c.current),clearTimeout(u.current)},[]),m.createElement(uX,{scope:t,open:g,onOpenChange:v,onOpen:b,onClose:x,onDismiss:w,hasSelectionRef:f,isPointerDownOnContentRef:p},m.createElement(uf,l,n))},fX="HoverCardTrigger",hX=m.forwardRef((e,t)=>{const{__scopeHoverCard:n,...r}=e,o=Nw(fX,n),i=Iw(n);return m.createElement(df,le({asChild:!0},i),m.createElement(Ue.a,le({"data-state":o.open?"open":"closed"},r,{ref:t,onPointerEnter:Re(e.onPointerEnter,Zp(o.onOpen)),onPointerLeave:Re(e.onPointerLeave,Zp(o.onClose)),onFocus:Re(e.onFocus,o.onOpen),onBlur:Re(e.onBlur,o.onClose),onTouchStart:Re(e.onTouchStart,s=>s.preventDefault())})))}),pX="HoverCardPortal",[Qpe,gX]=IT(pX,{forceMount:void 0}),Sy="HoverCardContent",mX=m.forwardRef((e,t)=>{const n=gX(Sy,e.__scopeHoverCard),{forceMount:r=n.forceMount,...o}=e,i=Nw(Sy,e.__scopeHoverCard);return m.createElement(Rn,{present:r||i.open},m.createElement(vX,le({"data-state":i.open?"open":"closed"},o,{onPointerEnter:Re(e.onPointerEnter,Zp(i.onOpen)),onPointerLeave:Re(e.onPointerLeave,Zp(i.onClose)),ref:t})))}),vX=m.forwardRef((e,t)=>{const{__scopeHoverCard:n,onEscapeKeyDown:r,onPointerDownOutside:o,onFocusOutside:i,onInteractOutside:s,...a}=e,l=Nw(Sy,n),c=Iw(n),u=m.useRef(null),f=lt(t,u),[p,g]=m.useState(!1);return m.useEffect(()=>{if(p){const v=document.body;return xb=v.style.userSelect||v.style.webkitUserSelect,v.style.userSelect="none",v.style.webkitUserSelect="none",()=>{v.style.userSelect=xb,v.style.webkitUserSelect=xb}}},[p]),m.useEffect(()=>{if(u.current){const v=()=>{g(!1),l.isPointerDownOnContentRef.current=!1,setTimeout(()=>{var b;((b=document.getSelection())===null||b===void 0?void 0:b.toString())!==""&&(l.hasSelectionRef.current=!0)})};return document.addEventListener("pointerup",v),()=>{document.removeEventListener("pointerup",v),l.hasSelectionRef.current=!1,l.isPointerDownOnContentRef.current=!1}}},[l.isPointerDownOnContentRef,l.hasSelectionRef]),m.useEffect(()=>{u.current&&bX(u.current).forEach(b=>b.setAttribute("tabindex","-1"))}),m.createElement(kc,{asChild:!0,disableOutsidePointerEvents:!1,onInteractOutside:s,onEscapeKeyDown:r,onPointerDownOutside:o,onFocusOutside:Re(i,v=>{v.preventDefault()}),onDismiss:l.onDismiss},m.createElement(ff,le({},c,a,{onPointerDown:Re(a.onPointerDown,v=>{v.currentTarget.contains(v.target)&&g(!0),l.hasSelectionRef.current=!1,l.isPointerDownOnContentRef.current=!0}),ref:f,style:{...a.style,userSelect:p?"text":void 0,WebkitUserSelect:p?"text":void 0,"--radix-hover-card-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-hover-card-content-available-width":"var(--radix-popper-available-width)","--radix-hover-card-content-available-height":"var(--radix-popper-available-height)","--radix-hover-card-trigger-width":"var(--radix-popper-anchor-width)","--radix-hover-card-trigger-height":"var(--radix-popper-anchor-height)"}})))});function Zp(e){return t=>t.pointerType==="touch"?void 0:e()}function bX(e){const t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:r=>r.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP});for(;n.nextNode();)t.push(n.currentNode);return t}const yX=dX,xX=hX,NT=mX,Lw=yX,Fw=xX,Qg=pe.forwardRef(({className:e,align:t="center",sideOffset:n=4,...r},o)=>O.jsx(NT,{ref:o,align:t,sideOffset:n,className:Ee("z-50 w-64 rounded-md border bg-popover p-4 text-popover-foreground shadow-md outline-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]: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",e),...r}));Qg.displayName=NT.displayName;function wX({card:e}){const{setCardInfo:t}=Wi();return O.jsxs(Lw,{openDelay:0,children:[O.jsx(Fw,{children:O.jsx(fY,{className:"size-4 text-muted-foreground/40"})}),O.jsx(Qg,{align:"start",className:"w-[300px]",onMouseDown:n=>n.stopPropagation(),children:O.jsx(Wa,{type:"textarea",text:e.info||"",onSave:n=>t(e.id,n),children:O.jsx("p",{className:"text-sm text-muted-foreground",children:e.info||"Double-click to add info"})})})]})}const zw=pe.forwardRef(({className:e,containerClassName:t,containerStyle:n,...r},o)=>O.jsx("div",{style:n,className:Ee("relative w-full overflow-auto",t),children:O.jsx("table",{ref:o,className:Ee("w-full caption-bottom text-sm",e),...r})}));zw.displayName="Table";const jw=pe.forwardRef(({className:e,...t},n)=>O.jsx("thead",{ref:n,className:Ee("[&_tr]:border-b",e),...t}));jw.displayName="TableHeader";const Bw=pe.forwardRef(({className:e,...t},n)=>O.jsx("tbody",{ref:n,className:Ee("[&_tr:last-child]:border-0",e),...t}));Bw.displayName="TableBody";const _X=pe.forwardRef(({className:e,...t},n)=>O.jsx("tfoot",{ref:n,className:Ee("border-t bg-muted/50 font-medium [&>tr]:last:border-b-0",e),...t}));_X.displayName="TableFooter";const Wu=pe.forwardRef(({className:e,...t},n)=>O.jsx("tr",{ref:n,className:Ee("border-b transition-colors hover:bg-muted/50 data-[state=selected]:bg-muted",e),...t}));Wu.displayName="TableRow";const Vw=pe.forwardRef(({className:e,...t},n)=>O.jsx("th",{ref:n,className:Ee("h-12 px-4 text-left align-middle font-medium text-muted-foreground [&:has([role=checkbox])]:pr-0",e),...t}));Vw.displayName="TableHead";const eg=pe.forwardRef(({className:e,...t},n)=>O.jsx("td",{ref:n,className:Ee("p-4 align-middle [&:has([role=checkbox])]:pr-0",e),...t}));eg.displayName="TableCell";const SX=pe.forwardRef(({className:e,...t},n)=>O.jsx("caption",{ref:n,className:Ee("mt-4 text-sm text-muted-foreground",e),...t}));SX.displayName="TableCaption";/**
254
254
  * table-core
255
255
  *
256
256
  * Copyright (c) TanStack
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../chunks/index-1S-69oTo.js");require("react");require("react-dom");exports.Dashboard=e.Dashboard;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../chunks/index-rkFdSN_7.js");require("react");require("react-dom");exports.Dashboard=e.Dashboard;
@@ -1,4 +1,4 @@
1
- import { D as p } from "../chunks/index-MYxGboTj.js";
1
+ import { D as p } from "../chunks/index-HMMloXbS.js";
2
2
  import "react";
3
3
  import "react-dom";
4
4
  export {
package/dist/index.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./chunks/index-1S-69oTo.js"),d=require("./chunks/dashboard-plus-DYba5z_c.js"),I=require("react");require("react-dom");function N({card:t,footer:u,className:m,...c}){const{customCards:r}=e.useSemaphorContext(),h=I.useRef(null),{isError:p,isLoading:n,isFetching:i,cfg:x,visualKey:C,handleDatapointClick:f}=e.useDashboardCard(t),a=e.useDashboardStore(s=>s.themeStyle),l=e.useDashboardStore(s=>s.selectedSheetId),E=e.useDashboardStore(s=>s.selectedCardId),j=e.useDashboardStore(s=>s.isDashboardEditing),{setCardTitle:g,setCardDescription:D,setSelectedCardId:b}=e.useDashboardActions();function S(s){s.stopPropagation(),b(l,t.id)}function T(){if(r&&r.length>0){const s=r.find(o=>o.cardId===t.id);if(s&&s.replaceDefault){const o=s.content;if(o)return e.jsxRuntimeExports.jsx(o,{card:t})}}return t.type==="kpi"?t.data&&t.data.length>0&&e.jsxRuntimeExports.jsx(e.KPICard,{isLoading:n||i,card:t}):y}function R(){if(p)return e.jsxRuntimeExports.jsx("p",{className:"text-sm",children:"Oops! It seems like something went wrong. Please review your connection or filters."});if(t.type==="table"&&t.data&&t.data.length>0)return e.jsxRuntimeExports.jsxs(e.ScrollArea,{children:[e.jsxRuntimeExports.jsx(e.TableVisual,{card:t,data:t.data}),e.jsxRuntimeExports.jsx(e.ScrollBar,{orientation:"horizontal"})]});if(r&&r.length>0){const s=r.find(o=>o.cardId===t.id);if(s&&s.content){const o=s.content;return e.jsxRuntimeExports.jsx(o,{card:t})}}if(x)return e.jsxRuntimeExports.jsx(e.ChartJsVisual,{cfg:x,onDatapointClick:f},C)}function A(){if(r&&r.length>0){const s=r.find(o=>o.cardId===t.id);if(s&&s.footer){const o=s.footer;if(o)return e.jsxRuntimeExports.jsx(o,{card:t})}}return u||null}if(!t.id)return null;const y=e.jsxRuntimeExports.jsxs(e.jsxRuntimeExports.Fragment,{children:[e.jsxRuntimeExports.jsxs(e.CardHeader,{className:"pb-4",children:[e.jsxRuntimeExports.jsxs("div",{className:"flex items-center gap-2",children:[e.jsxRuntimeExports.jsx(e.Editable,{text:t.title,onSave:s=>g(l,t.id,s),children:e.jsxRuntimeExports.jsx(e.CardTitle,{className:"text-base",children:t.title})}),t.refreshInterval&&e.jsxRuntimeExports.jsxs(e.Tooltip,{children:[e.jsxRuntimeExports.jsx(e.TooltipTrigger,{className:"pr-1",children:e.jsxRuntimeExports.jsx("div",{className:e.cn("h-2 w-2 rounded-full bg-green-500 transition-opacity",{"opacity-10":n||i})})}),e.jsxRuntimeExports.jsx(e.TooltipContent,{side:"right",align:"center",children:e.jsxRuntimeExports.jsx("p",{className:"text-xs",children:`Realtime (${t==null?void 0:t.refreshInterval})`})})]}),!t.refreshInterval&&(n||i)&&e.jsxRuntimeExports.jsx(e.LoaderCircle,{className:"h-4 w-4 animate-spin text-muted-foreground"})]}),e.jsxRuntimeExports.jsx(e.Editable,{text:(t==null?void 0:t.description)||"",onSave:s=>D(l,t.id,s),children:e.jsxRuntimeExports.jsxs(e.CardDescription,{children:[" ",t.description]})})]}),e.jsxRuntimeExports.jsx(e.CardContent,{className:"relative flex grow flex-col overflow-auto pb-0",children:R()}),e.jsxRuntimeExports.jsx(e.CardFooter,{children:A()})]});return e.jsxRuntimeExports.jsx(e.Card,{tabIndex:-1,ref:h,role:"dashboard-card",onClick:S,className:e.cn("relative flex h-full flex-col rounded-sm",{"border-dashed border-foreground/50":E===t.id&&j},a==null?void 0:a.dashboardCard,m),...c,children:T()})}exports.BOOLEAN_DATA_TYPES=e.BOOLEAN_DATA_TYPES;exports.DATE_DATA_TYPES=e.DATE_DATA_TYPES;exports.Dashboard=e.Dashboard;exports.DashboardWC=e.DashboardWC;exports.NUMBER_DATA_TYPES=e.NUMBER_DATA_TYPES;exports.SemaphorQueryClient=e.SemaphorQueryClient;exports.TEXT_DATA_TYPES=e.TEXT_DATA_TYPES;exports.cleanCard=e.cleanCard;exports.createSqlGenConfig=e.createSqlGenConfig;exports.fmt=e.fmt;exports.getBookmarkKey=e.getBookmarkKey;exports.getColumnDataType=e.getColumnDataType;exports.getDashbaordStateWithoutData=e.getDashbaordStateWithoutData;exports.getFilterValueType=e.getFilterValueType;exports.getQualifiedTableName=e.getQualifiedTableName;exports.getSql=e.getSql;exports.isColumnInSqlGen=e.isColumnInSqlGen;exports.resolveDataType=e.resolveDataType;exports.useCard=e.useCard;exports.useDashboardActions=e.useDashboardActions;exports.useDashboardStore=e.useDashboardStore;exports.useEditorActions=e.useEditorActions;exports.useEditorStore=e.useEditorStore;exports.SelectComponent=d.SelectComponent;exports.Surfboard=d.DashboardPlus;exports.useEditorAside=d.useEditorAside;exports.DashboardCard=N;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./chunks/index-rkFdSN_7.js"),d=require("./chunks/dashboard-plus--C_yM0K4.js"),I=require("react");require("react-dom");function N({card:t,footer:u,className:m,...c}){const{customCards:r}=e.useSemaphorContext(),h=I.useRef(null),{isError:p,isLoading:n,isFetching:i,cfg:x,visualKey:C,handleDatapointClick:f}=e.useDashboardCard(t),a=e.useDashboardStore(s=>s.themeStyle),l=e.useDashboardStore(s=>s.selectedSheetId),E=e.useDashboardStore(s=>s.selectedCardId),j=e.useDashboardStore(s=>s.isDashboardEditing),{setCardTitle:g,setCardDescription:D,setSelectedCardId:b}=e.useDashboardActions();function S(s){s.stopPropagation(),b(l,t.id)}function T(){if(r&&r.length>0){const s=r.find(o=>o.cardId===t.id);if(s&&s.replaceDefault){const o=s.content;if(o)return e.jsxRuntimeExports.jsx(o,{card:t})}}return t.type==="kpi"?t.data&&t.data.length>0&&e.jsxRuntimeExports.jsx(e.KPICard,{isLoading:n||i,card:t}):y}function R(){if(p)return e.jsxRuntimeExports.jsx("p",{className:"text-sm",children:"Oops! It seems like something went wrong. Please review your connection or filters."});if(t.type==="table"&&t.data&&t.data.length>0)return e.jsxRuntimeExports.jsxs(e.ScrollArea,{children:[e.jsxRuntimeExports.jsx(e.TableVisual,{card:t,data:t.data}),e.jsxRuntimeExports.jsx(e.ScrollBar,{orientation:"horizontal"})]});if(r&&r.length>0){const s=r.find(o=>o.cardId===t.id);if(s&&s.content){const o=s.content;return e.jsxRuntimeExports.jsx(o,{card:t})}}if(x)return e.jsxRuntimeExports.jsx(e.ChartJsVisual,{cfg:x,onDatapointClick:f},C)}function A(){if(r&&r.length>0){const s=r.find(o=>o.cardId===t.id);if(s&&s.footer){const o=s.footer;if(o)return e.jsxRuntimeExports.jsx(o,{card:t})}}return u||null}if(!t.id)return null;const y=e.jsxRuntimeExports.jsxs(e.jsxRuntimeExports.Fragment,{children:[e.jsxRuntimeExports.jsxs(e.CardHeader,{className:"pb-4",children:[e.jsxRuntimeExports.jsxs("div",{className:"flex items-center gap-2",children:[e.jsxRuntimeExports.jsx(e.Editable,{text:t.title,onSave:s=>g(l,t.id,s),children:e.jsxRuntimeExports.jsx(e.CardTitle,{className:"text-base",children:t.title})}),t.refreshInterval&&e.jsxRuntimeExports.jsxs(e.Tooltip,{children:[e.jsxRuntimeExports.jsx(e.TooltipTrigger,{className:"pr-1",children:e.jsxRuntimeExports.jsx("div",{className:e.cn("h-2 w-2 rounded-full bg-green-500 transition-opacity",{"opacity-10":n||i})})}),e.jsxRuntimeExports.jsx(e.TooltipContent,{side:"right",align:"center",children:e.jsxRuntimeExports.jsx("p",{className:"text-xs",children:`Realtime (${t==null?void 0:t.refreshInterval})`})})]}),!t.refreshInterval&&(n||i)&&e.jsxRuntimeExports.jsx(e.LoaderCircle,{className:"h-4 w-4 animate-spin text-muted-foreground"})]}),e.jsxRuntimeExports.jsx(e.Editable,{text:(t==null?void 0:t.description)||"",onSave:s=>D(l,t.id,s),children:e.jsxRuntimeExports.jsxs(e.CardDescription,{children:[" ",t.description]})})]}),e.jsxRuntimeExports.jsx(e.CardContent,{className:"relative flex grow flex-col overflow-auto pb-0",children:R()}),e.jsxRuntimeExports.jsx(e.CardFooter,{children:A()})]});return e.jsxRuntimeExports.jsx(e.Card,{tabIndex:-1,ref:h,role:"dashboard-card",onClick:S,className:e.cn("relative flex h-full flex-col rounded-sm",{"border-dashed border-foreground/50":E===t.id&&j},a==null?void 0:a.dashboardCard,m),...c,children:T()})}exports.BOOLEAN_DATA_TYPES=e.BOOLEAN_DATA_TYPES;exports.DATE_DATA_TYPES=e.DATE_DATA_TYPES;exports.Dashboard=e.Dashboard;exports.DashboardWC=e.DashboardWC;exports.NUMBER_DATA_TYPES=e.NUMBER_DATA_TYPES;exports.SemaphorQueryClient=e.SemaphorQueryClient;exports.TEXT_DATA_TYPES=e.TEXT_DATA_TYPES;exports.cleanCard=e.cleanCard;exports.createSqlGenConfig=e.createSqlGenConfig;exports.fmt=e.fmt;exports.getBookmarkKey=e.getBookmarkKey;exports.getColumnDataType=e.getColumnDataType;exports.getDashbaordStateWithoutData=e.getDashbaordStateWithoutData;exports.getFilterValueType=e.getFilterValueType;exports.getQualifiedTableName=e.getQualifiedTableName;exports.getSql=e.getSql;exports.isColumnInSqlGen=e.isColumnInSqlGen;exports.resolveDataType=e.resolveDataType;exports.useCard=e.useCard;exports.useDashboardActions=e.useDashboardActions;exports.useDashboardStore=e.useDashboardStore;exports.useEditorActions=e.useEditorActions;exports.useEditorStore=e.useEditorStore;exports.SelectComponent=d.SelectComponent;exports.Surfboard=d.DashboardPlus;exports.useEditorAside=d.useEditorAside;exports.DashboardCard=N;
package/dist/index.js CHANGED
@@ -1,6 +1,6 @@
1
- import { u as _, a as k, b as n, c as w, j as s, C as F, E as f, d as P, T as R, e as B, f as h, g as L, L as q, h as K, i as O, k as Y, l as G, K as V, S as z, m as H, n as J, o as M } from "./chunks/index-MYxGboTj.js";
2
- import { B as se, s as te, D as ae, q as oe, N as ne, I as re, r as ie, M as le, w as de, t as ue, O as ce, y as fe, J as he, x as Ce, A as xe, v as me, z as pe, F as ge, p as je, H as De, G as be } from "./chunks/index-MYxGboTj.js";
3
- import { S as Te, D as Ee, u as Ie } from "./chunks/dashboard-plus-SiSP2uLb.js";
1
+ import { u as _, a as k, b as n, c as w, j as s, C as F, E as f, d as P, T as R, e as B, f as h, g as L, L as q, h as K, i as O, k as Y, l as G, K as V, S as z, m as H, n as J, o as M } from "./chunks/index-HMMloXbS.js";
2
+ import { B as se, s as te, D as ae, q as oe, N as ne, I as re, r as ie, M as le, w as de, t as ue, O as ce, y as fe, J as he, x as Ce, A as xe, v as me, z as pe, F as ge, p as je, H as De, G as be } from "./chunks/index-HMMloXbS.js";
3
+ import { S as Te, D as Ee, u as Ie } from "./chunks/dashboard-plus-5_Po2m8P.js";
4
4
  import Q from "react";
5
5
  import "react-dom";
6
6
  function $({
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("../chunks/dashboard-plus-DYba5z_c.js");require("../chunks/index-1S-69oTo.js");require("react");require("react-dom");exports.Surfboard=r.DashboardPlus;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("../chunks/dashboard-plus--C_yM0K4.js");require("../chunks/index-rkFdSN_7.js");require("react");require("react-dom");exports.Surfboard=r.DashboardPlus;
@@ -1,5 +1,5 @@
1
- import { D as i } from "../chunks/dashboard-plus-SiSP2uLb.js";
2
- import "../chunks/index-MYxGboTj.js";
1
+ import { D as i } from "../chunks/dashboard-plus-5_Po2m8P.js";
2
+ import "../chunks/index-HMMloXbS.js";
3
3
  import "react";
4
4
  import "react-dom";
5
5
  export {
package/package.json CHANGED
@@ -5,7 +5,7 @@
5
5
  "email": "support@semaphor.cloud"
6
6
  },
7
7
  "license": "MIT",
8
- "version": "0.0.193",
8
+ "version": "0.0.194",
9
9
  "description": "Fully interactive and customizable dashboards for your apps.",
10
10
  "keywords": [
11
11
  "react",