semaphor 0.0.58 → 0.0.59

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-LiVhH7z4.js"),b=require("react");/**
1
+ "use strict";const e=require("./index-8_ihvapU.js"),b=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 { O as T, b as w, j as e, P as Ss, Q as ks, R as k, U as ws, V as zs, W as Fs, X as Ms, Y as Os, Z as G, _ as he, $ as sa, J as aa, M as De, a0 as Ka, a1 as Ga, a2 as Ja, a3 as Ua, a4 as Qa, a5 as Wa, a6 as $s, a7 as Be, a8 as Ue, a9 as $e, T as Ts, e as ta, g as Ls, aa as Me, ab as Oe, f as ee, ac as Te, ad as Le, ae as Pe, af as Ae, ag as X, ah as Ds, G as c, ai as ls, aj as is, ak as Ya, al as os, w as na, v as ra, t as ue, am as Za, r as Xa, N as la, s as et, an as st, B as at, ao as ia, ap as tt, S as As, z as nt, n as Ps, aq as js, A as oa, ar as bs, u as Qe, as as me, at as be, au as Ke, av as ca, aw as da, ax as ha, ay as ma, az as ua, aA as rt, aB as lt, aC as xa, aD as it, aE as ot, aF as ct, aG as dt, aH as ht, aI as ys, aJ as mt, aK as He, aL as vs, aM as Fe, aN as Ns, aO as Ks, aP as ut, aQ as xt, aR as pt, aS as ft, aT as gt, aU as gs, aV as jt, aW as Gs, aX as bt, aY as Js, aZ as yt, a_ as vt, a$ as Nt, b0 as pa, l as Ct, C as St, E as Cs, d as kt, h as wt, i as zt, o as Ft, b1 as Mt, m as Ot, H as fa, b2 as Tt, b3 as ga, b4 as ja, b5 as as, b6 as Lt, b7 as ts, b8 as Us, K as Dt, b9 as At, ba, bb as Et, bc as Es, bd as Ee, be as ya, bf as It, bg as Vt, bh as qt, bi as Rt, bj as _t, bk as Ce, bl as H, bm as B, bn as Is, bo as $, bp as Qs, bq as Ht, br as Bt, bs as $t, bt as Pt, bu as Ws, bv as Kt, bw as Gt, bx as Jt, by as Ut, bz as Qt, bA as Wt } from "./index-yvohbzaw.js";
1
+ import { O as T, b as w, j as e, P as Ss, Q as ks, R as k, U as ws, V as zs, W as Fs, X as Ms, Y as Os, Z as G, _ as he, $ as sa, J as aa, M as De, a0 as Ka, a1 as Ga, a2 as Ja, a3 as Ua, a4 as Qa, a5 as Wa, a6 as $s, a7 as Be, a8 as Ue, a9 as $e, T as Ts, e as ta, g as Ls, aa as Me, ab as Oe, f as ee, ac as Te, ad as Le, ae as Pe, af as Ae, ag as X, ah as Ds, G as c, ai as ls, aj as is, ak as Ya, al as os, w as na, v as ra, t as ue, am as Za, r as Xa, N as la, s as et, an as st, B as at, ao as ia, ap as tt, S as As, z as nt, n as Ps, aq as js, A as oa, ar as bs, u as Qe, as as me, at as be, au as Ke, av as ca, aw as da, ax as ha, ay as ma, az as ua, aA as rt, aB as lt, aC as xa, aD as it, aE as ot, aF as ct, aG as dt, aH as ht, aI as ys, aJ as mt, aK as He, aL as vs, aM as Fe, aN as Ns, aO as Ks, aP as ut, aQ as xt, aR as pt, aS as ft, aT as gt, aU as gs, aV as jt, aW as Gs, aX as bt, aY as Js, aZ as yt, a_ as vt, a$ as Nt, b0 as pa, l as Ct, C as St, E as Cs, d as kt, h as wt, i as zt, o as Ft, b1 as Mt, m as Ot, H as fa, b2 as Tt, b3 as ga, b4 as ja, b5 as as, b6 as Lt, b7 as ts, b8 as Us, K as Dt, b9 as At, ba, bb as Et, bc as Es, bd as Ee, be as ya, bf as It, bg as Vt, bh as qt, bi as Rt, bj as _t, bk as Ce, bl as H, bm as B, bn as Is, bo as $, bp as Qs, bq as Ht, br as Bt, bs as $t, bt as Pt, bu as Ws, bv as Kt, bw as Gt, bx as Jt, by as Ut, bz as Qt, bA as Wt } from "./index-xyzOo2JH.js";
2
2
  import xe, { useState as O, useEffect as Q, useMemo as Yt, useRef as Ge } from "react";
3
3
  /**
4
4
  * @license lucide-react v0.379.0 - ISC
@@ -250,7 +250,7 @@ Valid keys: `+JSON.stringify(Object.keys(T),null," "));var Y=ye(pe,le,ie,fe,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 $m=Dn("X",[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]]),aQ=({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(ZX,{onClick:n,className:"h-[14px] w-[14px] text-foreground/30 hover:cursor-pointer hover:text-foreground/50"})};function lQ({frame:e}){var S;const t=ke(C=>C.isDashboardEditing),n=ke(C=>C.filterValues),r=ke(C=>C.isVisualEditing),o=ke(C=>C.selectedSheetId);ke(C=>C.currentBreakpoint);const{removeFrame:i}=ke(C=>C.actions),s=ke(C=>C.actions.setIsVisualEditing),a=br(C=>C.actions.setFilterValues),l=br(C=>C.actions.setApplyFilters),{setCard:c,setFrame:u,setQueryResultColumns:f}=br(C=>C.actions),h=br(C=>C.actions.setSelectedConnectionId),g=br(C=>C.actions.setSelectedDatamodelId),v=br(C=>C.actions.setSelectedDatabaseName),b=br(C=>C.actions.setSelectedSchemaName),w=br(C=>C.actions.setSelectedTableName),x=e.cards.find(C=>C.id===e.activeCardId);function _(){s(!r),c(x);const{dimensionKeys:C}=ar((x==null?void 0:x.data)||[]);f(C),u(e),x!=null&&x.connectionId&&h(x==null?void 0:x.connectionId),x!=null&&x.datamodelId&&x.datamodelId!=="none"&&(g(x==null?void 0:x.datamodelId),v("")),x!=null&&x.lastSelectedDatabase&&x.lastSelectedDatabase!=="none"&&(v(x==null?void 0:x.lastSelectedDatabase),g("")),x!=null&&x.lastSelectedSchema&&b(x==null?void 0:x.lastSelectedSchema),x!=null&&x.lastSelectedTable&&w(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(EX,{onClick:()=>{s(!r)},className:"h-[14px] w-[14px] text-foreground/30 hover:cursor-pointer hover:text-foreground/50"}):O.jsx(OX,{role:"edit-visual",onClick:_,className:"h-[14px] w-[14px] text-foreground/30 hover:cursor-pointer hover:text-foreground/50"})),t&&O.jsx($$,{onClick:()=>i(o,e.id),className:"h-[14px] w-[14px] text-foreground/30 hover:cursor-pointer hover:text-foreground/50"}),((S=x.preferences)==null?void 0:S.allowDownload)===!0&&O.jsx(aQ,{data:(x==null?void 0:x.data)||[],filename:x.title})]})})}function cQ(e,t=globalThis==null?void 0:globalThis.document){const n=Ln(e);m.useEffect(()=>{const r=o=>{o.key==="Escape"&&n(o)};return t.addEventListener("keydown",r),()=>t.removeEventListener("keydown",r)},[n,t])}const bx="dismissableLayer.update",uQ="dismissableLayer.pointerDownOutside",dQ="dismissableLayer.focusOutside";let cP;const fQ=m.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set}),jf=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(fQ),[f,h]=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=_t(t,k=>h(k)),w=Array.from(u.layers),[x]=[...u.layersWithOutsidePointerEventsDisabled].slice(-1),_=w.indexOf(x),S=f?w.indexOf(f):-1,C=u.layersWithOutsidePointerEventsDisabled.size>0,E=S>=_,P=hQ(k=>{const I=k.target,$=[...u.branches].some(L=>L.contains(I));!E||$||(i==null||i(k),a==null||a(k),k.defaultPrevented||l==null||l())},g),A=pQ(k=>{const I=k.target;[...u.branches].some(L=>L.contains(I))||(s==null||s(k),a==null||a(k),k.defaultPrevented||l==null||l())},g);return cQ(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&&(cP=g.body.style.pointerEvents,g.body.style.pointerEvents="none"),u.layersWithOutsidePointerEventsDisabled.add(f)),u.layers.add(f),uP(),()=>{r&&u.layersWithOutsidePointerEventsDisabled.size===1&&(g.body.style.pointerEvents=cP)}},[f,g,r,u]),m.useEffect(()=>()=>{f&&(u.layers.delete(f),u.layersWithOutsidePointerEventsDisabled.delete(f),uP())},[f,u]),m.useEffect(()=>{const k=()=>v({});return document.addEventListener(bx,k),()=>document.removeEventListener(bx,k)},[]),m.createElement(Qe.div,he({},c,{ref:b,style:{pointerEvents:C?E?"auto":"none":void 0,...e.style},onFocusCapture:Me(e.onFocusCapture,A.onFocusCapture),onBlurCapture:Me(e.onBlurCapture,A.onBlurCapture),onPointerDownCapture:Me(e.onPointerDownCapture,P.onPointerDownCapture)}))});function hQ(e,t=globalThis==null?void 0:globalThis.document){const n=Ln(e),r=m.useRef(!1),o=m.useRef(()=>{});return m.useEffect(()=>{const i=a=>{if(a.target&&!r.current){let c=function(){j$(uQ,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 pQ(e,t=globalThis==null?void 0:globalThis.document){const n=Ln(e),r=m.useRef(!1);return m.useEffect(()=>{const o=i=>{i.target&&!r.current&&j$(dQ,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 uP(){const e=new CustomEvent(bx);document.dispatchEvent(e)}function j$(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?PD(o,i):o.dispatchEvent(i)}const gQ=["top","right","bottom","left"],ca=Math.min,no=Math.max,Dg=Math.round,vp=Math.floor,ua=e=>({x:e,y:e}),mQ={left:"right",right:"left",bottom:"top",top:"bottom"},vQ={start:"end",end:"start"};function yx(e,t,n){return no(e,ca(t,n))}function ss(e,t){return typeof e=="function"?e(t):e}function as(e){return e.split("-")[0]}function iu(e){return e.split("-")[1]}function P1(e){return e==="x"?"y":"x"}function T1(e){return e==="y"?"height":"width"}function su(e){return["top","bottom"].includes(as(e))?"y":"x"}function D1(e){return P1(su(e))}function bQ(e,t,n){n===void 0&&(n=!1);const r=iu(e),o=D1(e),i=T1(o);let s=o==="x"?r===(n?"end":"start")?"right":"left":r==="start"?"bottom":"top";return t.reference[i]>t.floating[i]&&(s=Ag(s)),[s,Ag(s)]}function yQ(e){const t=Ag(e);return[xx(e),t,xx(t)]}function xx(e){return e.replace(/start|end/g,t=>vQ[t])}function xQ(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 wQ(e,t,n,r){const o=iu(e);let i=xQ(as(e),n==="start",r);return o&&(i=i.map(s=>s+"-"+o),t&&(i=i.concat(i.map(xx)))),i}function Ag(e){return e.replace(/left|right|bottom|top/g,t=>mQ[t])}function _Q(e){return{top:0,right:0,bottom:0,left:0,...e}}function z$(e){return typeof e!="number"?_Q(e):{top:e,right:e,bottom:e,left:e}}function $g(e){return{...e,top:e.y,left:e.x,right:e.x+e.width,bottom:e.y+e.height}}function dP(e,t,n){let{reference:r,floating:o}=e;const i=su(t),s=D1(t),a=T1(s),l=as(t),c=i==="y",u=r.x+r.width/2-o.width/2,f=r.y+r.height/2-o.height/2,h=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(iu(t)){case"start":g[s]-=h*(n&&c?-1:1);break;case"end":g[s]+=h*(n&&c?-1:1);break}return g}const SQ=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}=dP(c,r,l),h=r,g={},v=0;for(let b=0;b<a.length;b++){const{name:w,fn:x}=a[b],{x:_,y:S,data:C,reset:E}=await x({x:u,y:f,initialPlacement:r,placement:h,strategy:o,middlewareData:g,rects:c,platform:s,elements:{reference:e,floating:t}});if(u=_??u,f=S??f,g={...g,[w]:{...g[w],...C}},E&&v<=50){v++,typeof E=="object"&&(E.placement&&(h=E.placement),E.rects&&(c=E.rects===!0?await s.getElementRects({reference:e,floating:t,strategy:o}):E.rects),{x:u,y:f}=dP(c,h,l)),b=-1;continue}}return{x:u,y:f,placement:h,strategy:o,middlewareData:g}};async function jd(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:h=!1,padding:g=0}=ss(t,e),v=z$(g),w=a[h?f==="floating"?"reference":"floating":f],x=$g(await i.getClippingRect({element:(n=await(i.isElement==null?void 0:i.isElement(w)))==null||n?w:w.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)),C=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},E=$g(i.convertOffsetParentRelativeRectToViewportRelativeRect?await i.convertOffsetParentRelativeRectToViewportRelativeRect({rect:_,offsetParent:S,strategy:l}):_);return{top:(x.top-E.top+v.top)/C.y,bottom:(E.bottom-x.bottom+v.bottom)/C.y,left:(x.left-E.left+v.left)/C.x,right:(E.right-x.right+v.right)/C.x}}const fP=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}=ss(e,t)||{};if(c==null)return{};const f=z$(u),h={x:n,y:r},g=D1(o),v=T1(g),b=await s.getDimensions(c),w=g==="y",x=w?"top":"left",_=w?"bottom":"right",S=w?"clientHeight":"clientWidth",C=i.reference[v]+i.reference[g]-h[g]-i.floating[v],E=h[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=C/2-E/2,I=A/2-b[v]/2-1,$=ca(f[x],I),L=ca(f[_],I),j=$,Q=A-b[v]-L,ee=A/2-b[v]/2+k,B=yx(j,ee,Q),Z=!l.arrow&&iu(o)!=null&&ee!=B&&i.reference[v]/2-(ee<j?$:L)-b[v]/2<0,G=Z?ee<j?ee-j:ee-Q:0;return{[g]:h[g]+G,data:{[g]:B,centerOffset:ee-B-G,...Z&&{alignmentOffset:G}},reset:Z}}}),CQ=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:h,fallbackStrategy:g="bestFit",fallbackAxisSideDirection:v="none",flipAlignment:b=!0,...w}=ss(e,t);if((n=i.arrow)!=null&&n.alignmentOffset)return{};const x=as(o),_=as(a)===a,S=await(l.isRTL==null?void 0:l.isRTL(c.floating)),C=h||(_||!b?[Ag(a)]:yQ(a));!h&&v!=="none"&&C.push(...wQ(a,b,v,S));const E=[a,...C],P=await jd(t,w),A=[];let k=((r=i.flip)==null?void 0:r.overflows)||[];if(u&&A.push(P[x]),f){const j=bQ(o,s,S);A.push(P[j[0]],P[j[1]])}if(k=[...k,{placement:o,overflows:A}],!A.every(j=>j<=0)){var I,$;const j=(((I=i.flip)==null?void 0:I.index)||0)+1,Q=E[j];if(Q)return{data:{index:j,overflows:k},reset:{placement:Q}};let ee=($=k.filter(B=>B.overflows[0]<=0).sort((B,Z)=>B.overflows[1]-Z.overflows[1])[0])==null?void 0:$.placement;if(!ee)switch(g){case"bestFit":{var L;const B=(L=k.map(Z=>[Z.placement,Z.overflows.filter(G=>G>0).reduce((G,q)=>G+q,0)]).sort((Z,G)=>Z[1]-G[1])[0])==null?void 0:L[0];B&&(ee=B);break}case"initialPlacement":ee=a;break}if(o!==ee)return{reset:{placement:ee}}}return{}}}};function hP(e,t){return{top:e.top-t.height,right:e.right-t.width,bottom:e.bottom-t.height,left:e.left-t.width}}function pP(e){return gQ.some(t=>e[t]>=0)}const EQ=function(e){return e===void 0&&(e={}),{name:"hide",options:e,async fn(t){const{rects:n}=t,{strategy:r="referenceHidden",...o}=ss(e,t);switch(r){case"referenceHidden":{const i=await jd(t,{...o,elementContext:"reference"}),s=hP(i,n.reference);return{data:{referenceHiddenOffsets:s,referenceHidden:pP(s)}}}case"escaped":{const i=await jd(t,{...o,altBoundary:!0}),s=hP(i,n.floating);return{data:{escapedOffsets:s,escaped:pP(s)}}}default:return{}}}}};async function RQ(e,t){const{placement:n,platform:r,elements:o}=e,i=await(r.isRTL==null?void 0:r.isRTL(o.floating)),s=as(n),a=iu(n),l=su(n)==="y",c=["left","top"].includes(s)?-1:1,u=i&&l?-1:1,f=ss(t,e);let{mainAxis:h,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:h*c}:{x:h*c,y:g*u}}const OQ=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 RQ(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}}}}},PQ=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:w=>{let{x,y:_}=w;return{x,y:_}}},...l}=ss(e,t),c={x:n,y:r},u=await jd(t,l),f=su(as(o)),h=P1(f);let g=c[h],v=c[f];if(i){const w=h==="y"?"top":"left",x=h==="y"?"bottom":"right",_=g+u[w],S=g-u[x];g=yx(_,g,S)}if(s){const w=f==="y"?"top":"left",x=f==="y"?"bottom":"right",_=v+u[w],S=v-u[x];v=yx(_,v,S)}const b=a.fn({...t,[h]:g,[f]:v});return{...b,data:{x:b.x-n,y:b.y-r}}}}},TQ=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}=ss(e,t),u={x:n,y:r},f=su(o),h=P1(f);let g=u[h],v=u[f];const b=ss(a,t),w=typeof b=="number"?{mainAxis:b,crossAxis:0}:{mainAxis:0,crossAxis:0,...b};if(l){const S=h==="y"?"height":"width",C=i.reference[h]-i.floating[S]+w.mainAxis,E=i.reference[h]+i.reference[S]-w.mainAxis;g<C?g=C:g>E&&(g=E)}if(c){var x,_;const S=h==="y"?"width":"height",C=["top","left"].includes(as(o)),E=i.reference[f]-i.floating[S]+(C&&((x=s.offset)==null?void 0:x[f])||0)+(C?0:w.crossAxis),P=i.reference[f]+i.reference[S]+(C?0:((_=s.offset)==null?void 0:_[f])||0)-(C?w.crossAxis:0);v<E?v=E:v>P&&(v=P)}return{[h]:g,[f]:v}}}},DQ=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}=ss(e,t),l=await jd(t,a),c=as(n),u=iu(n),f=su(n)==="y",{width:h,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 w=g-l[v],x=h-l[b],_=!t.middlewareData.shift;let S=w,C=x;if(f){const P=h-l.left-l.right;C=u||_?ca(x,P):P}else{const P=g-l.top-l.bottom;S=u||_?ca(w,P):P}if(_&&!u){const P=no(l.left,0),A=no(l.right,0),k=no(l.top,0),I=no(l.bottom,0);f?C=h-2*(P!==0||A!==0?P+A:no(l.left,l.right)):S=g-2*(k!==0||I!==0?k+I:no(l.top,l.bottom))}await s({...t,availableWidth:C,availableHeight:S});const E=await o.getDimensions(i.floating);return h!==E.width||g!==E.height?{reset:{rects:!0}}:{}}}};function da(e){return B$(e)?(e.nodeName||"").toLowerCase():"#document"}function so(e){var t;return(e==null||(t=e.ownerDocument)==null?void 0:t.defaultView)||window}function ds(e){var t;return(t=(B$(e)?e.ownerDocument:e.document)||window.document)==null?void 0:t.documentElement}function B$(e){return e instanceof Node||e instanceof so(e).Node}function ls(e){return e instanceof Element||e instanceof so(e).Element}function Si(e){return e instanceof HTMLElement||e instanceof so(e).HTMLElement}function gP(e){return typeof ShadowRoot>"u"?!1:e instanceof ShadowRoot||e instanceof so(e).ShadowRoot}function zf(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 AQ(e){return["table","td","th"].includes(da(e))}function A1(e){const t=$1(),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 $Q(e){let t=Yc(e);for(;Si(t)&&!km(t);){if(A1(t))return t;t=Yc(t)}return null}function $1(){return typeof CSS>"u"||!CSS.supports?!1:CSS.supports("-webkit-backdrop-filter","none")}function km(e){return["html","body","#document"].includes(da(e))}function $o(e){return so(e).getComputedStyle(e)}function Mm(e){return ls(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.pageXOffset,scrollTop:e.pageYOffset}}function Yc(e){if(da(e)==="html")return e;const t=e.assignedSlot||e.parentNode||gP(e)&&e.host||ds(e);return gP(t)?t.host:t}function V$(e){const t=Yc(e);return km(t)?e.ownerDocument?e.ownerDocument.body:e.body:Si(t)&&zf(t)?t:V$(t)}function zd(e,t,n){var r;t===void 0&&(t=[]),n===void 0&&(n=!0);const o=V$(e),i=o===((r=e.ownerDocument)==null?void 0:r.body),s=so(o);return i?t.concat(s,s.visualViewport||[],zf(o)?o:[],s.frameElement&&n?zd(s.frameElement):[]):t.concat(o,zd(o,[],n))}function H$(e){const t=$o(e);let n=parseFloat(t.width)||0,r=parseFloat(t.height)||0;const o=Si(e),i=o?e.offsetWidth:n,s=o?e.offsetHeight:r,a=Dg(n)!==i||Dg(r)!==s;return a&&(n=i,r=s),{width:n,height:r,$:a}}function k1(e){return ls(e)?e:e.contextElement}function yc(e){const t=k1(e);if(!Si(t))return ua(1);const n=t.getBoundingClientRect(),{width:r,height:o,$:i}=H$(t);let s=(i?Dg(n.width):n.width)/r,a=(i?Dg(n.height):n.height)/o;return(!s||!Number.isFinite(s))&&(s=1),(!a||!Number.isFinite(a))&&(a=1),{x:s,y:a}}const kQ=ua(0);function W$(e){const t=so(e);return!$1()||!t.visualViewport?kQ:{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}}function MQ(e,t,n){return t===void 0&&(t=!1),!n||t&&n!==so(e)?!1:t}function ml(e,t,n,r){t===void 0&&(t=!1),n===void 0&&(n=!1);const o=e.getBoundingClientRect(),i=k1(e);let s=ua(1);t&&(r?ls(r)&&(s=yc(r)):s=yc(e));const a=MQ(i,n,r)?W$(i):ua(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 h=so(i),g=r&&ls(r)?so(r):r;let v=h.frameElement;for(;v&&r&&g!==h;){const b=yc(v),w=v.getBoundingClientRect(),x=$o(v),_=w.left+(v.clientLeft+parseFloat(x.paddingLeft))*b.x,S=w.top+(v.clientTop+parseFloat(x.paddingTop))*b.y;l*=b.x,c*=b.y,u*=b.x,f*=b.y,l+=_,c+=S,v=so(v).frameElement}}return $g({width:u,height:f,x:l,y:c})}function IQ(e){let{rect:t,offsetParent:n,strategy:r}=e;const o=Si(n),i=ds(n);if(n===i)return t;let s={scrollLeft:0,scrollTop:0},a=ua(1);const l=ua(0);if((o||!o&&r!=="fixed")&&((da(n)!=="body"||zf(i))&&(s=Mm(n)),Si(n))){const c=ml(n);a=yc(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 NQ(e){return Array.from(e.getClientRects())}function U$(e){return ml(ds(e)).left+Mm(e).scrollLeft}function LQ(e){const t=ds(e),n=Mm(e),r=e.ownerDocument.body,o=no(t.scrollWidth,t.clientWidth,r.scrollWidth,r.clientWidth),i=no(t.scrollHeight,t.clientHeight,r.scrollHeight,r.clientHeight);let s=-n.scrollLeft+U$(e);const a=-n.scrollTop;return $o(r).direction==="rtl"&&(s+=no(t.clientWidth,r.clientWidth)-o),{width:o,height:i,x:s,y:a}}function FQ(e,t){const n=so(e),r=ds(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=$1();(!c||c&&t==="fixed")&&(a=o.offsetLeft,l=o.offsetTop)}return{width:i,height:s,x:a,y:l}}function jQ(e,t){const n=ml(e,!0,t==="fixed"),r=n.top+e.clientTop,o=n.left+e.clientLeft,i=Si(e)?yc(e):ua(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 mP(e,t,n){let r;if(t==="viewport")r=FQ(e,n);else if(t==="document")r=LQ(ds(e));else if(ls(t))r=jQ(t,n);else{const o=W$(e);r={...t,x:t.x-o.x,y:t.y-o.y}}return $g(r)}function q$(e,t){const n=Yc(e);return n===t||!ls(n)||km(n)?!1:$o(n).position==="fixed"||q$(n,t)}function zQ(e,t){const n=t.get(e);if(n)return n;let r=zd(e,[],!1).filter(a=>ls(a)&&da(a)!=="body"),o=null;const i=$o(e).position==="fixed";let s=i?Yc(e):e;for(;ls(s)&&!km(s);){const a=$o(s),l=A1(s);!l&&a.position==="fixed"&&(o=null),(i?!l&&!o:!l&&a.position==="static"&&!!o&&["absolute","fixed"].includes(o.position)||zf(s)&&!l&&q$(e,s))?r=r.filter(u=>u!==s):o=a,s=Yc(s)}return t.set(e,r),r}function BQ(e){let{element:t,boundary:n,rootBoundary:r,strategy:o}=e;const s=[...n==="clippingAncestors"?zQ(t,this._c):[].concat(n),r],a=s[0],l=s.reduce((c,u)=>{const f=mP(t,u,o);return c.top=no(f.top,c.top),c.right=ca(f.right,c.right),c.bottom=ca(f.bottom,c.bottom),c.left=no(f.left,c.left),c},mP(t,a,o));return{width:l.right-l.left,height:l.bottom-l.top,x:l.left,y:l.top}}function VQ(e){return H$(e)}function HQ(e,t,n){const r=Si(t),o=ds(t),i=n==="fixed",s=ml(e,!0,i,t);let a={scrollLeft:0,scrollTop:0};const l=ua(0);if(r||!r&&!i)if((da(t)!=="body"||zf(o))&&(a=Mm(t)),r){const c=ml(t,!0,i,t);l.x=c.x+t.clientLeft,l.y=c.y+t.clientTop}else o&&(l.x=U$(o));return{x:s.left+a.scrollLeft-l.x,y:s.top+a.scrollTop-l.y,width:s.width,height:s.height}}function vP(e,t){return!Si(e)||$o(e).position==="fixed"?null:t?t(e):e.offsetParent}function G$(e,t){const n=so(e);if(!Si(e))return n;let r=vP(e,t);for(;r&&AQ(r)&&$o(r).position==="static";)r=vP(r,t);return r&&(da(r)==="html"||da(r)==="body"&&$o(r).position==="static"&&!A1(r))?n:r||$Q(e)||n}const WQ=async function(e){let{reference:t,floating:n,strategy:r}=e;const o=this.getOffsetParent||G$,i=this.getDimensions;return{reference:HQ(t,await o(n),r),floating:{x:0,y:0,...await i(n)}}};function UQ(e){return $o(e).direction==="rtl"}const qQ={convertOffsetParentRelativeRectToViewportRelativeRect:IQ,getDocumentElement:ds,getClippingRect:BQ,getOffsetParent:G$,getElementRects:WQ,getClientRects:NQ,getDimensions:VQ,getScale:yc,isElement:ls,isRTL:UQ};function GQ(e,t){let n=null,r;const o=ds(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:h}=e.getBoundingClientRect();if(a||t(),!f||!h)return;const g=vp(u),v=vp(o.clientWidth-(c+f)),b=vp(o.clientHeight-(u+h)),w=vp(c),_={rootMargin:-g+"px "+-v+"px "+-b+"px "+-w+"px",threshold:no(0,ca(1,l))||1};let S=!0;function C(E){const P=E[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(C,{..._,root:o.ownerDocument})}catch{n=new IntersectionObserver(C,_)}n.observe(e)}return s(!0),i}function YQ(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=k1(e),u=o||i?[...c?zd(c):[],...zd(t)]:[];u.forEach(x=>{o&&x.addEventListener("scroll",n,{passive:!0}),i&&x.addEventListener("resize",n)});const f=c&&a?GQ(c,n):null;let h=-1,g=null;s&&(g=new ResizeObserver(x=>{let[_]=x;_&&_.target===c&&g&&(g.unobserve(t),cancelAnimationFrame(h),h=requestAnimationFrame(()=>{g&&g.observe(t)})),n()}),c&&!l&&g.observe(c),g.observe(t));let v,b=l?ml(e):null;l&&w();function w(){const x=ml(e);b&&(x.x!==b.x||x.y!==b.y||x.width!==b.width||x.height!==b.height)&&n(),b=x,v=requestAnimationFrame(w)}return n(),()=>{u.forEach(x=>{o&&x.removeEventListener("scroll",n),i&&x.removeEventListener("resize",n)}),f&&f(),g&&g.disconnect(),g=null,l&&cancelAnimationFrame(v)}}const KQ=(e,t,n)=>{const r=new Map,o={platform:qQ,...n},i={...o.platform,_c:r};return SQ(e,t,{...o,platform:i})},XQ=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?fP({element:r.current,padding:o}).fn(n):{}:r?fP({element:r,padding:o}).fn(n):{}}}};var ig=typeof document<"u"?m.useLayoutEffect:m.useEffect;function kg(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(!kg(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)&&!kg(e[i],t[i]))return!1}return!0}return e!==e&&t!==t}function Y$(e){return typeof window>"u"?1:(e.ownerDocument.defaultView||window).devicePixelRatio||1}function bP(e,t){const n=Y$(e);return Math.round(t*n)/n}function yP(e){const t=H.useRef(e);return ig(()=>{t.current=e}),t}function QQ(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]=H.useState({x:0,y:0,strategy:n,placement:t,middlewareData:{},isPositioned:!1}),[h,g]=H.useState(r);kg(h,r)||g(r);const[v,b]=H.useState(null),[w,x]=H.useState(null),_=H.useCallback(Z=>{Z!=P.current&&(P.current=Z,b(Z))},[b]),S=H.useCallback(Z=>{Z!==A.current&&(A.current=Z,x(Z))},[x]),C=i||v,E=s||w,P=H.useRef(null),A=H.useRef(null),k=H.useRef(u),I=yP(l),$=yP(o),L=H.useCallback(()=>{if(!P.current||!A.current)return;const Z={placement:t,strategy:n,middleware:h};$.current&&(Z.platform=$.current),KQ(P.current,A.current,Z).then(G=>{const q={...G,isPositioned:!0};j.current&&!kg(k.current,q)&&(k.current=q,pw.flushSync(()=>{f(q)}))})},[h,t,n,$]);ig(()=>{c===!1&&k.current.isPositioned&&(k.current.isPositioned=!1,f(Z=>({...Z,isPositioned:!1})))},[c]);const j=H.useRef(!1);ig(()=>(j.current=!0,()=>{j.current=!1}),[]),ig(()=>{if(C&&(P.current=C),E&&(A.current=E),C&&E){if(I.current)return I.current(C,E,L);L()}},[C,E,L,I]);const Q=H.useMemo(()=>({reference:P,floating:A,setReference:_,setFloating:S}),[_,S]),ee=H.useMemo(()=>({reference:C,floating:E}),[C,E]),B=H.useMemo(()=>{const Z={position:n,left:0,top:0};if(!ee.floating)return Z;const G=bP(ee.floating,u.x),q=bP(ee.floating,u.y);return a?{...Z,transform:"translate("+G+"px, "+q+"px)",...Y$(ee.floating)>=1.5&&{willChange:"transform"}}:{position:n,left:G,top:q}},[n,a,ee.floating,u.x,u.y]);return H.useMemo(()=>({...u,update:L,refs:Q,elements:ee,floatingStyles:B}),[u,L,Q,ee,B])}function Im(e){const[t,n]=m.useState(void 0);return ur(()=>{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 K$="Popper",[X$,Ti]=Zn(K$),[JQ,Q$]=X$(K$),ZQ=e=>{const{__scopePopper:t,children:n}=e,[r,o]=m.useState(null);return m.createElement(JQ,{scope:t,anchor:r,onAnchorChange:o},n)},eJ="PopperAnchor",tJ=m.forwardRef((e,t)=>{const{__scopePopper:n,virtualRef:r,...o}=e,i=Q$(eJ,n),s=m.useRef(null),a=_t(t,s);return m.useEffect(()=>{i.onAnchorChange((r==null?void 0:r.current)||s.current)}),r?null:m.createElement(Qe.div,he({},o,{ref:a}))}),J$="PopperContent",[nJ,dye]=X$(J$),rJ=m.forwardRef((e,t)=>{var n,r,o,i,s,a,l,c;const{__scopePopper:u,side:f="bottom",sideOffset:h=0,align:g="center",alignOffset:v=0,arrowPadding:b=0,avoidCollisions:w=!0,collisionBoundary:x=[],collisionPadding:_=0,sticky:S="partial",hideWhenDetached:C=!1,updatePositionStrategy:E="optimized",onPlaced:P,...A}=e,k=Q$(J$,u),[I,$]=m.useState(null),L=_t(t,Pe=>$(Pe)),[j,Q]=m.useState(null),ee=Im(j),B=(n=ee==null?void 0:ee.width)!==null&&n!==void 0?n:0,Z=(r=ee==null?void 0:ee.height)!==null&&r!==void 0?r:0,G=f+(g!=="center"?"-"+g:""),q=typeof _=="number"?_:{top:0,right:0,bottom:0,left:0,..._},K=Array.isArray(x)?x:[x],T=K.length>0,V={padding:q,boundary:K.filter(oJ),altBoundary:T},{refs:X,floatingStyles:N,placement:ie,isPositioned:fe,middlewareData:ue}=QQ({strategy:"fixed",placement:G,whileElementsMounted:(...Pe)=>YQ(...Pe,{animationFrame:E==="always"}),elements:{reference:k.anchor},middleware:[OQ({mainAxis:h+Z,alignmentAxis:v}),w&&PQ({mainAxis:!0,crossAxis:!1,limiter:S==="partial"?TQ():void 0,...V}),w&&CQ({...V}),DQ({...V,apply:({elements:Pe,rects:Te,availableWidth:Ue,availableHeight:Be})=>{const{width:Ie,height:Ke}=Te.reference,lt=Pe.floating.style;lt.setProperty("--radix-popper-available-width",`${Ue}px`),lt.setProperty("--radix-popper-available-height",`${Be}px`),lt.setProperty("--radix-popper-anchor-width",`${Ie}px`),lt.setProperty("--radix-popper-anchor-height",`${Ke}px`)}}),j&&XQ({element:j,padding:b}),iJ({arrowWidth:B,arrowHeight:Z}),C&&EQ({strategy:"referenceHidden",...V})]}),[pe,se]=Z$(ie),ne=Ln(P);ur(()=>{fe&&(ne==null||ne())},[fe,ne]);const le=(o=ue.arrow)===null||o===void 0?void 0:o.x,ye=(i=ue.arrow)===null||i===void 0?void 0:i.y,Y=((s=ue.arrow)===null||s===void 0?void 0:s.centerOffset)!==0,[be,_e]=m.useState();return ur(()=>{I&&_e(window.getComputedStyle(I).zIndex)},[I]),m.createElement("div",{ref:X.setFloating,"data-radix-popper-content-wrapper":"",style:{...N,transform:fe?N.transform:"translate(0, -200%)",minWidth:"max-content",zIndex:be,"--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(nJ,{scope:u,placedSide:pe,onArrowChange:Q,arrowX:le,arrowY:ye,shouldHideArrow:Y},m.createElement(Qe.div,he({"data-side":pe,"data-align":se},A,{ref:L,style:{...A.style,animation:fe?void 0:"none",opacity:(c=ue.hide)!==null&&c!==void 0&&c.referenceHidden?0:void 0}}))))});function oJ(e){return e!==null}const iJ=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,h=f?0:e.arrowWidth,g=f?0:e.arrowHeight,[v,b]=Z$(a),w={start:"0%",center:"50%",end:"100%"}[b],x=((r=(o=c.arrow)===null||o===void 0?void 0:o.x)!==null&&r!==void 0?r:0)+h/2,_=((i=(s=c.arrow)===null||s===void 0?void 0:s.y)!==null&&i!==void 0?i:0)+g/2;let S="",C="";return v==="bottom"?(S=f?w:`${x}px`,C=`${-g}px`):v==="top"?(S=f?w:`${x}px`,C=`${l.floating.height+g}px`):v==="right"?(S=`${-g}px`,C=f?w:`${_}px`):v==="left"&&(S=`${l.floating.width+g}px`,C=f?w:`${_}px`),{data:{x:S,y:C}}}});function Z$(e){const[t,n="center"]=e.split("-");return[t,n]}const Bf=ZQ,Vf=tJ,Hf=rJ,M1=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?Mo.createPortal(m.createElement(Qe.div,he({},o,{ref:t})),r):null}),sJ=m.forwardRef((e,t)=>{const{children:n,...r}=e,o=m.Children.toArray(n),i=o.find(aJ);if(i){const s=i.props.children,a=o.map(l=>l===i?m.Children.count(s)>1?m.Children.only(null):m.isValidElement(s)?s.props.children:null:l);return m.createElement(wx,he({},r,{ref:t}),m.isValidElement(s)?m.cloneElement(s,void 0,a):null)}return m.createElement(wx,he({},r,{ref:t}),n)});sJ.displayName="Slot";const wx=m.forwardRef((e,t)=>{const{children:n,...r}=e;return m.isValidElement(n)?m.cloneElement(n,{...lJ(r,n.props),ref:t?cs(t,n.ref):n.ref}):m.Children.count(n)>1?m.Children.only(null):null});wx.displayName="SlotClone";const ek=({children:e})=>m.createElement(m.Fragment,null,e);function aJ(e){return m.isValidElement(e)&&e.type===ek}function lJ(e,t){const n={...t};for(const r in t){const o=e[r],i=t[r];/^on[A-Z]/.test(r)?o&&i?n[r]=(...a)=>{i(...a),o(...a)}:o&&(n[r]=o):r==="style"?n[r]={...o,...i}:r==="className"&&(n[r]=[o,i].filter(Boolean).join(" "))}return{...e,...n}}const tk=m.forwardRef((e,t)=>m.createElement(Qe.span,he({},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}}))),cJ=tk,[Nm,fye]=Zn("Tooltip",[Ti]),I1=Ti(),uJ="TooltipProvider",dJ=700,_x="tooltip.open",[fJ,N1]=Nm(uJ),hJ=e=>{const{__scopeTooltip:t,delayDuration:n=dJ,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(fJ,{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)},L1="Tooltip",[pJ,Lm]=Nm(L1),gJ=e=>{const{__scopeTooltip:t,children:n,open:r,defaultOpen:o=!1,onOpenChange:i,disableHoverableContent:s,delayDuration:a}=e,l=N1(L1,e.__scopeTooltip),c=I1(t),[u,f]=m.useState(null),h=Jo(),g=m.useRef(0),v=s??l.disableHoverableContent,b=a??l.delayDuration,w=m.useRef(!1),[x=!1,_]=wr({prop:r,defaultProp:o,onChange:A=>{A?(l.onOpen(),document.dispatchEvent(new CustomEvent(_x))):l.onClose(),i==null||i(A)}}),S=m.useMemo(()=>x?w.current?"delayed-open":"instant-open":"closed",[x]),C=m.useCallback(()=>{window.clearTimeout(g.current),w.current=!1,_(!0)},[_]),E=m.useCallback(()=>{window.clearTimeout(g.current),_(!1)},[_]),P=m.useCallback(()=>{window.clearTimeout(g.current),g.current=window.setTimeout(()=>{w.current=!0,_(!0)},b)},[b,_]);return m.useEffect(()=>()=>window.clearTimeout(g.current),[]),m.createElement(Bf,c,m.createElement(pJ,{scope:t,contentId:h,open:x,stateAttribute:S,trigger:u,onTriggerChange:f,onTriggerEnter:m.useCallback(()=>{l.isOpenDelayed?P():C()},[l.isOpenDelayed,P,C]),onTriggerLeave:m.useCallback(()=>{v?E():window.clearTimeout(g.current)},[E,v]),onOpen:C,onClose:E,disableHoverableContent:v},n))},xP="TooltipTrigger",nk=m.forwardRef((e,t)=>{const{__scopeTooltip:n,...r}=e,o=Lm(xP,n),i=N1(xP,n),s=I1(n),a=m.useRef(null),l=_t(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(Vf,he({asChild:!0},s),m.createElement(Qe.button,he({"aria-describedby":o.open?o.contentId:void 0,"data-state":o.stateAttribute},r,{ref:l,onPointerMove:Me(e.onPointerMove,h=>{h.pointerType!=="touch"&&!u.current&&!i.isPointerInTransitRef.current&&(o.onTriggerEnter(),u.current=!0)}),onPointerLeave:Me(e.onPointerLeave,()=>{o.onTriggerLeave(),u.current=!1}),onPointerDown:Me(e.onPointerDown,()=>{c.current=!0,document.addEventListener("pointerup",f,{once:!0})}),onFocus:Me(e.onFocus,()=>{c.current||o.onOpen()}),onBlur:Me(e.onBlur,o.onClose),onClick:Me(e.onClick,o.onClose)})))}),mJ="TooltipPortal",[hye,vJ]=Nm(mJ,{forceMount:void 0}),Bd="TooltipContent",bJ=m.forwardRef((e,t)=>{const n=vJ(Bd,e.__scopeTooltip),{forceMount:r=n.forceMount,side:o="top",...i}=e,s=Lm(Bd,e.__scopeTooltip);return m.createElement(er,{present:r||s.open},s.disableHoverableContent?m.createElement(rk,he({side:o},i,{ref:t})):m.createElement(yJ,he({side:o},i,{ref:t})))}),yJ=m.forwardRef((e,t)=>{const n=Lm(Bd,e.__scopeTooltip),r=N1(Bd,e.__scopeTooltip),o=m.useRef(null),i=_t(t,o),[s,a]=m.useState(null),{trigger:l,onClose:c}=n,u=o.current,{onPointerInTransitChange:f}=r,h=m.useCallback(()=>{a(null),f(!1)},[f]),g=m.useCallback((v,b)=>{const w=v.currentTarget,x={x:v.clientX,y:v.clientY},_=wJ(x,w.getBoundingClientRect()),S=_J(x,_),C=SJ(b.getBoundingClientRect()),E=EJ([...S,...C]);a(E),f(!0)},[f]);return m.useEffect(()=>()=>h(),[h]),m.useEffect(()=>{if(l&&u){const v=w=>g(w,u),b=w=>g(w,l);return l.addEventListener("pointerleave",v),u.addEventListener("pointerleave",b),()=>{l.removeEventListener("pointerleave",v),u.removeEventListener("pointerleave",b)}}},[l,u,g,h]),m.useEffect(()=>{if(s){const v=b=>{const w=b.target,x={x:b.clientX,y:b.clientY},_=(l==null?void 0:l.contains(w))||(u==null?void 0:u.contains(w)),S=!CJ(x,s);_?h():S&&(h(),c())};return document.addEventListener("pointermove",v),()=>document.removeEventListener("pointermove",v)}},[l,u,s,c,h]),m.createElement(rk,he({},e,{ref:i}))}),[xJ,pye]=Nm(L1,{isInside:!1}),rk=m.forwardRef((e,t)=>{const{__scopeTooltip:n,children:r,"aria-label":o,onEscapeKeyDown:i,onPointerDownOutside:s,...a}=e,l=Lm(Bd,n),c=I1(n),{onClose:u}=l;return m.useEffect(()=>(document.addEventListener(_x,u),()=>document.removeEventListener(_x,u)),[u]),m.useEffect(()=>{if(l.trigger){const f=h=>{const g=h.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(jf,{asChild:!0,disableOutsidePointerEvents:!1,onEscapeKeyDown:i,onPointerDownOutside:s,onFocusOutside:f=>f.preventDefault(),onDismiss:u},m.createElement(Hf,he({"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(ek,null,r),m.createElement(xJ,{scope:n,isInside:!0},m.createElement(cJ,{id:l.contentId,role:"tooltip"},o||r))))});function wJ(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 _J(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 SJ(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 CJ(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 EJ(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),RJ(t)}function RJ(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 OJ=hJ,PJ=gJ,TJ=nk,ok=bJ,DJ=OJ,ik=PJ,sk=TJ,F1=H.forwardRef(({className:e,sideOffset:t=4,...n},r)=>O.jsx(ok,{ref:r,sideOffset:t,className:Ce("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}));F1.displayName=ok.displayName;function ll({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 ak(e,t){if(!t)return"";const n=t.find(r=>e>=r.start&&e<=r.end);return(n==null?void 0:n.color)||""}function lk({card:e}){var w,x,_,S,C,E,P,A,k,I,$,L,j,Q,ee,B,Z,G,q,K,T,V,X,N;const t=ke(ie=>ie.actions.setCardTitle),n=ke(ie=>ie.actions.setCardDescription),r=ke(ie=>ie.isVisualEditing),o=br(ie=>ie.card),i=br(ie=>ie.actions.setCard);br(ie=>ie.actions.setNumberFormat);const s=ke(ie=>ie.selectedSheetId),a=e.data,l=(x=(w=e.preferences)==null?void 0:w.formatNumber)==null?void 0:x.colorRanges,{metricKeys:c}=ar(a||[]),u=(_=a==null?void 0:a[0])==null?void 0:_[c==null?void 0:c[0]],f=(S=a==null?void 0:a[0])==null?void 0:S[c==null?void 0:c[1]],h=!!e.data&&e.data.length>0;function g(ie){r?i({...o,title:ie}):t(s,e.id,ie)}function v(ie){r?i({...o,description:ie}):n(s,e.id,ie)}const b=f&&f-u!==0?(u-f)/f:null;return O.jsxs("div",{className:"kpi-card flex grow flex-col overflow-scroll",children:[O.jsxs(lm,{className:"grow pb-3",children:[O.jsx(is,{text:r?o.title:e.title,onSave:g,children:O.jsx("div",{className:"flex items-center gap-2",children:O.jsx(Af,{className:"text-base font-medium text-muted-foreground",children:e.title})})}),h&&O.jsxs("div",{className:"flex flex-wrap items-end gap-3 text-foreground",children:[O.jsx("p",{style:{color:ak(u,l)},className:"text-3xl font-semibold",children:ll({number:u,decimalPlaces:((E=(C=e.preferences)==null?void 0:C.formatNumber)==null?void 0:E.decimalPlaces)||0,useSuffix:!!((A=(P=e.preferences)==null?void 0:P.formatNumber)!=null&&A.suffix),customSuffix:((I=(k=e.preferences)==null?void 0:k.formatNumber)==null?void 0:I.suffix)||"",locale:((L=($=e.preferences)==null?void 0:$.formatNumber)==null?void 0:L.locale)||"",currency:((Q=(j=e.preferences)==null?void 0:j.formatNumber)==null?void 0:Q.currency)||""})}),f&&O.jsxs("span",{className:"min-w-fit text-base font-normal text-muted-foreground",children:["from  ",ll({number:f,decimalPlaces:((B=(ee=e.preferences)==null?void 0:ee.formatNumber)==null?void 0:B.decimalPlaces)||0,useSuffix:!!((G=(Z=e.preferences)==null?void 0:Z.formatNumber)!=null&&G.suffix),customSuffix:((K=(q=e.preferences)==null?void 0:q.formatNumber)==null?void 0:K.suffix)||"",locale:((V=(T=e.preferences)==null?void 0:T.formatNumber)==null?void 0:V.locale)||"",currency:((N=(X=e.preferences)==null?void 0:X.formatNumber)==null?void 0:N.currency)||""})]})]})]}),b&&O.jsxs(cm,{className:"grow items-start gap-1 pb-4 text-sm",children:[O.jsx(AJ,{children:b}),O.jsxs("div",{className:"flex gap-1 text-muted-foreground",children:[b>0?"up ":"down ",O.jsx(is,{text:e.description||"",onSave:v,children:e.description})]})]})]})}function AJ({children:e}){const t=e>0?O.jsx(C1,{className:"h-4 w-4"}):O.jsx(S1,{className:"h-4 w-4"}),n=`${Math.abs(e*100).toFixed(0)}%`;return O.jsxs("div",{className:Ce("flex items-center",{"text-green-600":e>0,"text-destructive":e<0}),children:[t,O.jsx("span",{className:"ml-[1px]",children:n})]})}var Kc=1e3,Xc=Kc*60,Qc=Xc*60,vl=Qc*24,$J=vl*7,kJ=vl*365.25,MJ=function(e,t){t=t||{};var n=typeof e;if(n==="string"&&e.length>0)return IJ(e);if(n==="number"&&isFinite(e))return t.long?LJ(e):NJ(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))};function IJ(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*kJ;case"weeks":case"week":case"w":return n*$J;case"days":case"day":case"d":return n*vl;case"hours":case"hour":case"hrs":case"hr":case"h":return n*Qc;case"minutes":case"minute":case"mins":case"min":case"m":return n*Xc;case"seconds":case"second":case"secs":case"sec":case"s":return n*Kc;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return n;default:return}}}}function NJ(e){var t=Math.abs(e);return t>=vl?Math.round(e/vl)+"d":t>=Qc?Math.round(e/Qc)+"h":t>=Xc?Math.round(e/Xc)+"m":t>=Kc?Math.round(e/Kc)+"s":e+"ms"}function LJ(e){var t=Math.abs(e);return t>=vl?bp(e,t,vl,"day"):t>=Qc?bp(e,t,Qc,"hour"):t>=Xc?bp(e,t,Xc,"minute"):t>=Kc?bp(e,t,Kc,"second"):e+" ms"}function bp(e,t,n,r){var o=t>=n*1.5;return Math.round(e/n)+" "+r+(o?"s":"")}const FJ=nu(MJ);function ck({children:e}){const{setIsSessionExpired:t}=co(),n=new eB({queryCache:new bD({onError:r=>{console.error(`Something went wrong: ${r.message}`),r.message==="invalid token"&&t(!0)}}),defaultOptions:{queries:{refetchOnWindowFocus:!1,retry:1}}});return O.jsx(oB,{client:n,children:e})}const au=m.forwardRef(({children:e,className:t,...n},r)=>O.jsx("div",{className:Ce("semaphor-scope",t),ref:r,...n,children:e})),jJ={id:"",authToken:void 0},uk=m.createContext(jJ),dk=({children:e,dashboardProps:t})=>O.jsx(ck,{children:O.jsx(uk.Provider,{value:t,children:O.jsx(au,{style:{height:"100%"},children:e})})});function ma(){const e=m.useContext(uk);if(e===void 0)throw new Error("useApplicationContext must be used within a ApplicationContextProvider");return e}function zJ(e){ke(l=>l.bookmarkKey),ke(l=>l.selectedSheetId);const t=ke(l=>l.dashboard.baseQueries);ke(l=>l.actions.getCardSheet),ke(l=>l.actions.getSelectedFrame());const{authToken:n}=ma(),r=ke(l=>l.authToken),o=ke(l=>l.filterValues),i=FJ((e==null?void 0:e.refreshInterval)||"0"),s=Q2(e.sql,t);return Df({queryKey:[e.id,s,JSON.stringify(o)],queryFn:()=>Of("https://semaphor.cloud/api/v1/query",(n==null?void 0:n.accessToken)||(r==null?void 0:r.accessToken)||"",{connection_id:e.connectionId,sql:s,python:e.python===uD?"":e.python,active_filters:o}),refetchInterval:i,enabled:!!e.connectionId})}function Ia({data:e,cfg:t,customCfg:n,preferences:r}){const{dimensionKeys:o,metricKeys:i}=ar(e),s=HX(i,e,r),a=og(s,n),l=o[0],c=mx(e,l);j1(r,t),fk(r);const u=hk(t,r),f=qo((t==null?void 0:t.options)||{},r==null?void 0:r.chartOptions),h=qo(u,f),g=qo(h,(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 j1(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 fk(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 hk(e,t){var i,s,a,l,c,u,f,h,g,v,b,w;const n=j1(t,e),r=fk(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:x=>{var _,S,C,E;return ll({number:Number(x),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:((C=t==null?void 0:t.numberAxisFormat)==null?void 0:C.locale)||"",currency:((E=t==null?void 0:t.numberAxisFormat)==null?void 0:E.currency)||""})}}},[r]:{...(g=(h=(f=e==null?void 0:e.options)==null?void 0:f.scales)==null?void 0:h[r])==null?void 0:g.ticks,callback:null}},plugins:{...(v=e==null?void 0:e.options)==null?void 0:v.plugins,datalabels:{...(w=(b=e==null?void 0:e.options)==null?void 0:b.plugins)==null?void 0:w.datalabels,formatter:function(x){var _,S,C,E;return ll({number:Number(x),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:((C=t==null?void 0:t.numberAxisFormat)==null?void 0:C.locale)||"",currency:((E=t==null?void 0:t.numberAxisFormat)==null?void 0:E.currency)||""})}}}}}function BJ(e){return{...e,type:"bar",options:{...e==null?void 0:e.options,indexAxis:"y",scales:{x:{display:!0},y:{display:!0}}}}}function VJ(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 HJ(e){return{...e,type:"bar",options:{...e==null?void 0:e.options,scales:{x:{display:!0},y:{display:!0}}}}}function WJ(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 UJ(e,t){var r,o,i,s;return{...e,type:t==="stackedBar"?"bar":"line",options:{...e==null?void 0:e.options,scales:{x:{...(o=(r=e==null?void 0:e.options)==null?void 0:r.scales)==null?void 0:o.x,display:!0,stacked:!0},y:{...(s=(i=e==null?void 0:e.options)==null?void 0:i.scales)==null?void 0:s.y,display:!0,stacked:t==="stackedBar"}}}}}function qJ(e){return{...e,type:"line",options:{...e==null?void 0:e.options,scales:{x:{display:!0},y:{display:!0}}}}}function GJ(e,t){var r;return{...t,type:e,options:{...t==null?void 0:t.options,scales:{x:{display:!1},y:{display:!1}},plugins:{...(r=t==null?void 0:t.options)==null?void 0:r.plugins,legend:{position:"top",align:"center",maxHeight:0,labels:{useBorderRadius:!0,borderRadius:2}}},borderRadius:0}}}function YJ(e){return{...e,type:"radar",options:{...e==null?void 0:e.options,scales:{x:{display:!1},y:{display:!1}}}}}function KJ(e){const n=new Function("getDatalabelColor",e)(E0);return{options:n==null?void 0:n.options,plugins:(n==null?void 0:n.plugins)||[]}}function z1({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=HJ(n);return Ia({data:e,cfg:u,customCfg:r,cardType:t,userSettings:i,provider:o,preferences:s})}if(t==="horizontalBar"){const u=BJ(n);return Ia({data:e,cfg:u,customCfg:r,cardType:t,userSettings:i,provider:o,preferences:s})}if(t==="pyramid"){const u=VJ(n),{dimensionKeys:f,metricKeys:h}=ar(e),g=Tg({dataArray:e,groupKey:f[0],pivotKey:f[1],valueKey:h[0]}),v=Ia({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((x,_)=>_===1?{...x,xAxisID:b}:x)},options:{...v.options,scales:{...(a=v==null?void 0:v.options)==null?void 0:a.scales,[b]:{beginAtZero:!0,stack:1}}}}}if(t==="stackedBar"||t==="stackedLine"){const u=UJ(n,t),{dimensionKeys:f,metricKeys:h}=ar(e),g=Tg({dataArray:e,groupKey:f[0],pivotKey:f[1],valueKey:h[0]});return Ia({data:g,cfg:u,customCfg:r,cardType:t,userSettings:i,provider:o,preferences:s})}if(t==="line"){const u=qJ(n);return Ia({data:e,cfg:u,customCfg:r,cardType:t,userSettings:i,provider:o,preferences:s})}if(t==="range"){const u=WJ(n),f=qX(e),h=og(f,r),{plugins:g,options:v}=KJ((s==null?void 0:s.customVisualCode)||""),b=qo((u==null?void 0:u.options)||{},(n==null?void 0:n.options)||{}),w=qo(b,(s==null?void 0:s.chartOptions)||{}),x=qo(w,(r==null?void 0:r.options)||{}),_=qo(x,v),S=hk(n,s),C=qo(_,S),E={...C,plugins:{...C==null?void 0:C.plugins,datalabels:{...(l=C==null?void 0:C.plugins)==null?void 0:l.datalabels,formatter:($,L)=>$.map(Q=>{var ee,B,Z,G;return ll({number:Number(Q),decimalPlaces:((ee=s==null?void 0:s.numberAxisFormat)==null?void 0:ee.decimalPlaces)||0,useSuffix:!!((B=s==null?void 0:s.numberAxisFormat)!=null&&B.suffix),customSuffix:"",locale:((Z=s==null?void 0:s.numberAxisFormat)==null?void 0:Z.locale)||"",currency:((G=s==null?void 0:s.numberAxisFormat)==null?void 0:G.currency)||""})}).slice(0,2).join(" - ")}}},{dimensionKeys:P}=ar(e),A=P[0];return{type:"bar",data:{labels:[...new Set(mx(e,A))],datasets:h},options:E,plugins:[...g]}}if(t==="pie"||t==="doughnut"||t==="polarArea"){const u=GJ(t,n),{dimensionKeys:f,metricKeys:h}=ar(e),g=GX(h,e),v=og(g,r),b=f[0],w=mx(e,b),x=qo((u==null?void 0:u.options)||{},(r==null?void 0:r.options)||{}),_=qo(x,(s==null?void 0:s.chartOptions)||{}),S={..._,plugins:{..._.plugins,datalabels:{...(c=_.plugins)==null?void 0:c.datalabels,formatter:(P,A)=>{var k,I,$,L;return ll({number:Number(P),decimalPlaces:((k=s==null?void 0:s.numberAxisFormat)==null?void 0:k.decimalPlaces)||0,useSuffix:!!((I=s==null?void 0:s.numberAxisFormat)!=null&&I.suffix),customSuffix:"",locale:(($=s==null?void 0:s.numberAxisFormat)==null?void 0:$.locale)||"",currency:((L=s==null?void 0:s.numberAxisFormat)==null?void 0:L.currency)||""})}}}};return{type:t,data:{labels:w,datasets:v},options:S,plugins:[t==="doughnut"?{id:"doughnutLabel",beforeDatasetsDraw:function(P,A,k){var Z,G,q,K;const{ctx:I,data:$}=P;I.save();const L=P.getDatasetMeta(0).data[0].x,j=P.getDatasetMeta(0).data[0].y,Q=Bc(Pd());I.font="1.2rem Arial",I.fontWeight="bolder",I.fillStyle=Q,I.textAlign="center",I.textBaseline="middle";const ee=$.datasets[0].data.reduce((T,V)=>T+V,0),B=ll({number:Number(ee),decimalPlaces:((Z=s==null?void 0:s.numberAxisFormat)==null?void 0:Z.decimalPlaces)||0,useSuffix:!!((G=s==null?void 0:s.numberAxisFormat)!=null&&G.suffix),customSuffix:"",locale:((q=s==null?void 0:s.numberAxisFormat)==null?void 0:q.locale)||"",currency:((K=s==null?void 0:s.numberAxisFormat)==null?void 0:K.currency)||""});I.fillText(B,L,j)}}:""]}}if(t==="radar"){const u=YJ(n);return Ia({data:e,cfg:u,customCfg:r,cardType:t,userSettings:i,provider:o,preferences:s})}if(t==="bubble"||t==="scatter"){const{metricKeys:u}=ar(e);if(u.length<3){console.log("Bubble charts require 3 numeric columns");return}const f=UX(e),h=og(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=qo(g,(r==null?void 0:r.options)||{});return{type:t,data:{datasets:h},options:v}}return Ia({data:e,cfg:n,customCfg:r,cardType:t,userSettings:i,provider:o,preferences:s})}function XJ({chart:e,elementIndex:t,datasetIndex:n,cardType:r,cfg:o,apply:i}){const s=ke.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)&&JJ(e,t,o,i,a),["pie","doughnut","polarArea"].includes(r)&&ZJ(e,t,o,i,a),["stackedBar","pyramid"].includes(r)&&QJ({chart:e,elementIndex:t,datasetIndex:n,cfg:o,apply:i,blurColor:a})}function QJ(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,h)=>{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,w)=>w===n&&h===r?b:s),f.borderColor=(v=f==null?void 0:f.borderColor)==null?void 0:v.map((b,w)=>w===n&&h===r?b:s)}):(u=(c=t==null?void 0:t.data)==null?void 0:c.datasets)==null||u.forEach((f,h)=>{var g,v,b,w,x,_;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[h])==null?void 0:b.backgroundColor),f.borderColor=new Array(f.data.length).fill((_=(x=(w=o==null?void 0:o.data)==null?void 0:w.datasets)==null?void 0:x[h])==null?void 0:_.borderColor)}),t==null||t.update()}function JJ(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((h,g)=>g===t?h:o),c.borderColor=(f=c==null?void 0:c.borderColor)==null?void 0:f.map((h,g)=>g===t?h:o)}):(l=(a=e==null?void 0:e.data)==null?void 0:a.datasets)==null||l.forEach((c,u)=>{var f,h,g,v,b,w;c.backgroundColor=new Array(c.data.length).fill((g=(h=(f=n==null?void 0:n.data)==null?void 0:f.datasets)==null?void 0:h[u])==null?void 0:g.backgroundColor),c.borderColor=new Array(c.data.length).fill((w=(b=(v=n==null?void 0:n.data)==null?void 0:v.datasets)==null?void 0:b[u])==null?void 0:w.borderColor)}),e==null||e.update()}function ZJ(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((h,g)=>g===t?h:o),c.borderColor=(f=c==null?void 0:c.borderColor)==null?void 0:f.map((h,g)=>g===t?h:o)}):(l=(a=e==null?void 0:e.data)==null?void 0:a.datasets)==null||l.forEach((c,u)=>{var f,h,g,v,b,w,x,_;typeof c.backgroundColor=="string"&&(c.backgroundColor=(g=(h=(f=n==null?void 0:n.data)==null?void 0:f.datasets)==null?void 0:h[u])==null?void 0:g.backgroundColor,c.borderColor=(w=(b=(v=n==null?void 0:n.data)==null?void 0:v.datasets)==null?void 0:b[u])==null?void 0:w.borderColor),c.backgroundColor=(x=c==null?void 0:c.backgroundColor)==null?void 0:x.map((S,C)=>{var E;return(E=n.data.datasets[u].backgroundColor)==null?void 0:E[C]}),c.borderColor=(_=c==null?void 0:c.borderColor)==null?void 0:_.map((S,C)=>{var E;return(E=n.data.datasets[u].borderColor)==null?void 0:E[C]})}),e==null||e.update()}function eZ(e,t,n,r){var o,i;try{if(!e||!e.data)return;const{dimensionKeys:s,metricKeys:a}=ar(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=Tg({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:h}=ar(l),g=h[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 tZ(e){var s,a;const[t]=m.useState({id:"",title:"",type:"bar",data:[]}),{getCard:n}=co(),r=n(e),o=B1(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 B1(e){var ee,B,Z,G;const{onChartElementClicked:t}=ma(),[n,r]=m.useState(0),o=((ee=e==null?void 0:e.preferences)==null?void 0:ee.filterOnClickColumnIndex)===void 0?0:(B=e.preferences)==null?void 0:B.filterOnClickColumnIndex,i=ke(q=>q.bookmarkKey);ke(q=>q.isVisualEditing);const s=ke(q=>q.filteringCards),a=ke(q=>q.selectedSheetId);ke(q=>q.selectedCardId),ke(q=>q.isDashboardEditing);const l=ke(q=>q.themeStyle),c=ke(q=>q.filterValues),u=m.useRef(c),f=(Z=e==null?void 0:e.preferences)==null?void 0:Z.onClickFilter,{addFrame:h,addFilteringCard:g,setFrameCardData:v,getCardFrame:b,addOrUpdateFilterValue:w,addOrUpdateFilterValues:x,removeFilterValue:_,removeFilteringCard:S}=co(),{data:C,isLoading:E,isFetching:P,isError:A,refetch:k}=zJ(e),I=s==null?void 0:s.find(q=>q.id===e.id),$=((G=b(e.id))==null?void 0:G.cards)||[],L=($==null?void 0:$.length)==1;let j;e.data&&e.data.length>0&&(j=z1({data:e.data,cardType:e.type,cfg:e.cfg,customCfg:e.customCfg,preferences:e.preferences})),m.useEffect(()=>{!C||!C.records||I&&L||(console.log("I am firing"),v(a,e.id,(C==null?void 0:C.records)||[]))},[C,a,e.id,v,c]),m.useEffect(()=>{e.data&&(I&&L||r(n+1))},[JSON.stringify(e.data),e.type,e.cfg,e.customCfg,e.preferences,l]),m.useEffect(()=>{e.connectionId&&!I&&(u.current=c)},[c,i]);function Q(q,K,T,V){var ie,fe;let X=!1;if(!e.data)return;const N=eZ(e,K,T,V);if(console.log("fieldValues",N),t==null||t(e,N),!!(((ie=e==null?void 0:e.preferences)==null?void 0:ie.onClickFilter)??[]).length){if(I){const ue=e.id;_(ue),S(e)}else{if(X=!0,!N)return;const ue=[];N.forEach((pe,se)=>{const ne=f==null?void 0:f.find(ye=>ye.columnIndex===se);if(!ne)return;const le={filterId:e.id+"-"+pe.columnName,connectionId:e==null?void 0:e.connectionId,tableName:e.lastSelectedTable,name:pe.columnName,expression:ne.expression,valueType:Td(N[ne.columnIndex].columnValue),operation:"=",values:[N[ne.columnIndex].columnValue]};ue.push(le)}),e.id,e==null||e.connectionId,e.lastSelectedTable,N[o].columnName,(fe=e.preferences)==null||fe.filterOnClickField,Td(N[o].columnValue),N[o].columnValue,x(ue),g(e)}XJ({chart:q,elementIndex:T,datasetIndex:K,cardType:e.type,cfg:j,apply:X})}}return{isError:A,isLoading:E,isFetching:P,data:C,visualKey:n,handleDatapointClick:Q,cfg:j}}var nZ=e=>{switch(e){case"success":return iZ;case"info":return aZ;case"warning":return sZ;case"error":return lZ;default:return null}},rZ=Array(12).fill(0),oZ=({visible:e})=>m.createElement("div",{className:"sonner-loading-wrapper","data-visible":e},m.createElement("div",{className:"sonner-spinner"},rZ.map((t,n)=>m.createElement("div",{className:"sonner-loading-bar",key:`spinner-bar-${n}`})))),iZ=m.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",height:"20",width:"20"},m.createElement("path",{fillRule:"evenodd",d:"M10 18a8 8 0 100-16 8 8 0 000 16zm3.857-9.809a.75.75 0 00-1.214-.882l-3.483 4.79-1.88-1.88a.75.75 0 10-1.06 1.061l2.5 2.5a.75.75 0 001.137-.089l4-5.5z",clipRule:"evenodd"})),sZ=m.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor",height:"20",width:"20"},m.createElement("path",{fillRule:"evenodd",d:"M9.401 3.003c1.155-2 4.043-2 5.197 0l7.355 12.748c1.154 2-.29 4.5-2.599 4.5H4.645c-2.309 0-3.752-2.5-2.598-4.5L9.4 3.003zM12 8.25a.75.75 0 01.75.75v3.75a.75.75 0 01-1.5 0V9a.75.75 0 01.75-.75zm0 8.25a.75.75 0 100-1.5.75.75 0 000 1.5z",clipRule:"evenodd"})),aZ=m.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",height:"20",width:"20"},m.createElement("path",{fillRule:"evenodd",d:"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-7-4a1 1 0 11-2 0 1 1 0 012 0zM9 9a.75.75 0 000 1.5h.253a.25.25 0 01.244.304l-.459 2.066A1.75 1.75 0 0010.747 15H11a.75.75 0 000-1.5h-.253a.25.25 0 01-.244-.304l.459-2.066A1.75 1.75 0 009.253 9H9z",clipRule:"evenodd"})),lZ=m.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",height:"20",width:"20"},m.createElement("path",{fillRule:"evenodd",d:"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-8-5a.75.75 0 01.75.75v4.5a.75.75 0 01-1.5 0v-4.5A.75.75 0 0110 5zm0 10a1 1 0 100-2 1 1 0 000 2z",clipRule:"evenodd"})),cZ=()=>{let[e,t]=m.useState(document.hidden);return m.useEffect(()=>{let n=()=>{t(document.hidden)};return document.addEventListener("visibilitychange",n),()=>window.removeEventListener("visibilitychange",n)},[]),e},Sx=1,uZ=class{constructor(){this.subscribe=t=>(this.subscribers.push(t),()=>{let n=this.subscribers.indexOf(t);this.subscribers.splice(n,1)}),this.publish=t=>{this.subscribers.forEach(n=>n(t))},this.addToast=t=>{this.publish(t),this.toasts=[...this.toasts,t]},this.create=t=>{var n;let{message:r,...o}=t,i=typeof(t==null?void 0:t.id)=="number"||((n=t.id)==null?void 0:n.length)>0?t.id:Sx++,s=this.toasts.find(l=>l.id===i),a=t.dismissible===void 0?!0:t.dismissible;return s?this.toasts=this.toasts.map(l=>l.id===i?(this.publish({...l,...t,id:i,title:r}),{...l,...t,id:i,dismissible:a,title:r}):l):this.addToast({title:r,...o,dismissible:a,id:i}),i},this.dismiss=t=>(t||this.toasts.forEach(n=>{this.subscribers.forEach(r=>r({id:n.id,dismiss:!0}))}),this.subscribers.forEach(n=>n({id:t,dismiss:!0})),t),this.message=(t,n)=>this.create({...n,message:t}),this.error=(t,n)=>this.create({...n,message:t,type:"error"}),this.success=(t,n)=>this.create({...n,type:"success",message:t}),this.info=(t,n)=>this.create({...n,type:"info",message:t}),this.warning=(t,n)=>this.create({...n,type:"warning",message:t}),this.loading=(t,n)=>this.create({...n,type:"loading",message:t}),this.promise=(t,n)=>{if(!n)return;let r;n.loading!==void 0&&(r=this.create({...n,promise:t,type:"loading",message:n.loading,description:typeof n.description!="function"?n.description:void 0}));let o=t instanceof Promise?t:t(),i=r!==void 0;return o.then(async s=>{if(fZ(s)&&!s.ok){i=!1;let a=typeof n.error=="function"?await n.error(`HTTP error! status: ${s.status}`):n.error,l=typeof n.description=="function"?await n.description(`HTTP error! status: ${s.status}`):n.description;this.create({id:r,type:"error",message:a,description:l})}else if(n.success!==void 0){i=!1;let a=typeof n.success=="function"?await n.success(s):n.success,l=typeof n.description=="function"?await n.description(s):n.description;this.create({id:r,type:"success",message:a,description:l})}}).catch(async s=>{if(n.error!==void 0){i=!1;let a=typeof n.error=="function"?await n.error(s):n.error,l=typeof n.description=="function"?await n.description(s):n.description;this.create({id:r,type:"error",message:a,description:l})}}).finally(()=>{var s;i&&(this.dismiss(r),r=void 0),(s=n.finally)==null||s.call(n)}),r},this.custom=(t,n)=>{let r=(n==null?void 0:n.id)||Sx++;return this.create({jsx:t(r),id:r,...n}),r},this.subscribers=[],this.toasts=[]}},Qr=new uZ,dZ=(e,t)=>{let n=(t==null?void 0:t.id)||Sx++;return Qr.addToast({title:e,...t,id:n}),n},fZ=e=>e&&typeof e=="object"&&"ok"in e&&typeof e.ok=="boolean"&&"status"in e&&typeof e.status=="number",hZ=dZ,pZ=()=>Qr.toasts,pk=Object.assign(hZ,{success:Qr.success,info:Qr.info,warning:Qr.warning,error:Qr.error,custom:Qr.custom,message:Qr.message,promise:Qr.promise,dismiss:Qr.dismiss,loading:Qr.loading},{getHistory:pZ});function gZ(e,{insertAt:t}={}){if(!e||typeof document>"u")return;let n=document.head||document.getElementsByTagName("head")[0],r=document.createElement("style");r.type="text/css",t==="top"&&n.firstChild?n.insertBefore(r,n.firstChild):n.appendChild(r),r.styleSheet?r.styleSheet.cssText=e:r.appendChild(document.createTextNode(e))}gZ(`:where(html[dir="ltr"]),:where([data-sonner-toaster][dir="ltr"]){--toast-icon-margin-start: -3px;--toast-icon-margin-end: 4px;--toast-svg-margin-start: -1px;--toast-svg-margin-end: 0px;--toast-button-margin-start: auto;--toast-button-margin-end: 0;--toast-close-button-start: 0;--toast-close-button-end: unset;--toast-close-button-transform: translate(-35%, -35%)}:where(html[dir="rtl"]),:where([data-sonner-toaster][dir="rtl"]){--toast-icon-margin-start: 4px;--toast-icon-margin-end: -3px;--toast-svg-margin-start: 0px;--toast-svg-margin-end: -1px;--toast-button-margin-start: 0;--toast-button-margin-end: auto;--toast-close-button-start: unset;--toast-close-button-end: 0;--toast-close-button-transform: translate(35%, -35%)}:where([data-sonner-toaster]){position:fixed;width:var(--width);font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;--gray1: hsl(0, 0%, 99%);--gray2: hsl(0, 0%, 97.3%);--gray3: hsl(0, 0%, 95.1%);--gray4: hsl(0, 0%, 93%);--gray5: hsl(0, 0%, 90.9%);--gray6: hsl(0, 0%, 88.7%);--gray7: hsl(0, 0%, 85.8%);--gray8: hsl(0, 0%, 78%);--gray9: hsl(0, 0%, 56.1%);--gray10: hsl(0, 0%, 52.3%);--gray11: hsl(0, 0%, 43.5%);--gray12: hsl(0, 0%, 9%);--border-radius: 8px;box-sizing:border-box;padding:0;margin:0;list-style:none;outline:none;z-index:999999999}:where([data-sonner-toaster][data-x-position="right"]){right:max(var(--offset),env(safe-area-inset-right))}:where([data-sonner-toaster][data-x-position="left"]){left:max(var(--offset),env(safe-area-inset-left))}:where([data-sonner-toaster][data-x-position="center"]){left:50%;transform:translate(-50%)}:where([data-sonner-toaster][data-y-position="top"]){top:max(var(--offset),env(safe-area-inset-top))}:where([data-sonner-toaster][data-y-position="bottom"]){bottom:max(var(--offset),env(safe-area-inset-bottom))}:where([data-sonner-toast]){--y: translateY(100%);--lift-amount: calc(var(--lift) * var(--gap));z-index:var(--z-index);position:absolute;opacity:0;transform:var(--y);filter:blur(0);touch-action:none;transition:transform .4s,opacity .4s,height .4s,box-shadow .2s;box-sizing:border-box;outline:none;overflow-wrap:anywhere}:where([data-sonner-toast][data-styled="true"]){padding:16px;background:var(--normal-bg);border:1px solid var(--normal-border);color:var(--normal-text);border-radius:var(--border-radius);box-shadow:0 4px 12px #0000001a;width:var(--width);font-size:13px;display:flex;align-items:center;gap:6px}:where([data-sonner-toast]:focus-visible){box-shadow:0 4px 12px #0000001a,0 0 0 2px #0003}:where([data-sonner-toast][data-y-position="top"]){top:0;--y: translateY(-100%);--lift: 1;--lift-amount: calc(1 * var(--gap))}:where([data-sonner-toast][data-y-position="bottom"]){bottom:0;--y: translateY(100%);--lift: -1;--lift-amount: calc(var(--lift) * var(--gap))}:where([data-sonner-toast]) :where([data-description]){font-weight:400;line-height:1.4;color:inherit}:where([data-sonner-toast]) :where([data-title]){font-weight:500;line-height:1.5;color:inherit}:where([data-sonner-toast]) :where([data-icon]){display:flex;height:16px;width:16px;position:relative;justify-content:flex-start;align-items:center;flex-shrink:0;margin-left:var(--toast-icon-margin-start);margin-right:var(--toast-icon-margin-end)}:where([data-sonner-toast][data-promise="true"]) :where([data-icon])>svg{opacity:0;transform:scale(.8);transform-origin:center;animation:sonner-fade-in .3s ease forwards}:where([data-sonner-toast]) :where([data-icon])>*{flex-shrink:0}:where([data-sonner-toast]) :where([data-icon]) svg{margin-left:var(--toast-svg-margin-start);margin-right:var(--toast-svg-margin-end)}:where([data-sonner-toast]) :where([data-content]){display:flex;flex-direction:column;gap:2px}[data-sonner-toast][data-styled=true] [data-button]{border-radius:4px;padding-left:8px;padding-right:8px;height:24px;font-size:12px;color:var(--normal-bg);background:var(--normal-text);margin-left:var(--toast-button-margin-start);margin-right:var(--toast-button-margin-end);border:none;cursor:pointer;outline:none;display:flex;align-items:center;flex-shrink:0;transition:opacity .4s,box-shadow .2s}:where([data-sonner-toast]) :where([data-button]):focus-visible{box-shadow:0 0 0 2px #0006}:where([data-sonner-toast]) :where([data-button]):first-of-type{margin-left:var(--toast-button-margin-start);margin-right:var(--toast-button-margin-end)}:where([data-sonner-toast]) :where([data-cancel]){color:var(--normal-text);background:rgba(0,0,0,.08)}:where([data-sonner-toast][data-theme="dark"]) :where([data-cancel]){background:rgba(255,255,255,.3)}:where([data-sonner-toast]) :where([data-close-button]){position:absolute;left:var(--toast-close-button-start);right:var(--toast-close-button-end);top:0;height:20px;width:20px;display:flex;justify-content:center;align-items:center;padding:0;background:var(--gray1);color:var(--gray12);border:1px solid var(--gray4);transform:var(--toast-close-button-transform);border-radius:50%;cursor:pointer;z-index:1;transition:opacity .1s,background .2s,border-color .2s}:where([data-sonner-toast]) :where([data-close-button]):focus-visible{box-shadow:0 4px 12px #0000001a,0 0 0 2px #0003}:where([data-sonner-toast]) :where([data-disabled="true"]){cursor:not-allowed}:where([data-sonner-toast]):hover :where([data-close-button]):hover{background:var(--gray2);border-color:var(--gray5)}:where([data-sonner-toast][data-swiping="true"]):before{content:"";position:absolute;left:0;right:0;height:100%;z-index:-1}:where([data-sonner-toast][data-y-position="top"][data-swiping="true"]):before{bottom:50%;transform:scaleY(3) translateY(50%)}:where([data-sonner-toast][data-y-position="bottom"][data-swiping="true"]):before{top:50%;transform:scaleY(3) translateY(-50%)}:where([data-sonner-toast][data-swiping="false"][data-removed="true"]):before{content:"";position:absolute;inset:0;transform:scaleY(2)}:where([data-sonner-toast]):after{content:"";position:absolute;left:0;height:calc(var(--gap) + 1px);bottom:100%;width:100%}:where([data-sonner-toast][data-mounted="true"]){--y: translateY(0);opacity:1}:where([data-sonner-toast][data-expanded="false"][data-front="false"]){--scale: var(--toasts-before) * .05 + 1;--y: translateY(calc(var(--lift-amount) * var(--toasts-before))) scale(calc(-1 * var(--scale)));height:var(--front-toast-height)}:where([data-sonner-toast])>*{transition:opacity .4s}:where([data-sonner-toast][data-expanded="false"][data-front="false"][data-styled="true"])>*{opacity:0}:where([data-sonner-toast][data-visible="false"]){opacity:0;pointer-events:none}:where([data-sonner-toast][data-mounted="true"][data-expanded="true"]){--y: translateY(calc(var(--lift) * var(--offset)));height:var(--initial-height)}:where([data-sonner-toast][data-removed="true"][data-front="true"][data-swipe-out="false"]){--y: translateY(calc(var(--lift) * -100%));opacity:0}:where([data-sonner-toast][data-removed="true"][data-front="false"][data-swipe-out="false"][data-expanded="true"]){--y: translateY(calc(var(--lift) * var(--offset) + var(--lift) * -100%));opacity:0}:where([data-sonner-toast][data-removed="true"][data-front="false"][data-swipe-out="false"][data-expanded="false"]){--y: translateY(40%);opacity:0;transition:transform .5s,opacity .2s}:where([data-sonner-toast][data-removed="true"][data-front="false"]):before{height:calc(var(--initial-height) + 20%)}[data-sonner-toast][data-swiping=true]{transform:var(--y) translateY(var(--swipe-amount, 0px));transition:none}[data-sonner-toast][data-swipe-out=true][data-y-position=bottom],[data-sonner-toast][data-swipe-out=true][data-y-position=top]{animation:swipe-out .2s ease-out forwards}@keyframes swipe-out{0%{transform:translateY(calc(var(--lift) * var(--offset) + var(--swipe-amount)));opacity:1}to{transform:translateY(calc(var(--lift) * var(--offset) + var(--swipe-amount) + var(--lift) * -100%));opacity:0}}@media (max-width: 600px){[data-sonner-toaster]{position:fixed;--mobile-offset: 16px;right:var(--mobile-offset);left:var(--mobile-offset);width:100%}[data-sonner-toaster] [data-sonner-toast]{left:0;right:0;width:calc(100% - var(--mobile-offset) * 2)}[data-sonner-toaster][data-x-position=left]{left:var(--mobile-offset)}[data-sonner-toaster][data-y-position=bottom]{bottom:20px}[data-sonner-toaster][data-y-position=top]{top:20px}[data-sonner-toaster][data-x-position=center]{left:var(--mobile-offset);right:var(--mobile-offset);transform:none}}[data-sonner-toaster][data-theme=light]{--normal-bg: #fff;--normal-border: var(--gray4);--normal-text: var(--gray12);--success-bg: hsl(143, 85%, 96%);--success-border: hsl(145, 92%, 91%);--success-text: hsl(140, 100%, 27%);--info-bg: hsl(208, 100%, 97%);--info-border: hsl(221, 91%, 91%);--info-text: hsl(210, 92%, 45%);--warning-bg: hsl(49, 100%, 97%);--warning-border: hsl(49, 91%, 91%);--warning-text: hsl(31, 92%, 45%);--error-bg: hsl(359, 100%, 97%);--error-border: hsl(359, 100%, 94%);--error-text: hsl(360, 100%, 45%)}[data-sonner-toaster][data-theme=light] [data-sonner-toast][data-invert=true]{--normal-bg: #000;--normal-border: hsl(0, 0%, 20%);--normal-text: var(--gray1)}[data-sonner-toaster][data-theme=dark] [data-sonner-toast][data-invert=true]{--normal-bg: #fff;--normal-border: var(--gray3);--normal-text: var(--gray12)}[data-sonner-toaster][data-theme=dark]{--normal-bg: #000;--normal-border: hsl(0, 0%, 20%);--normal-text: var(--gray1);--success-bg: hsl(150, 100%, 6%);--success-border: hsl(147, 100%, 12%);--success-text: hsl(150, 86%, 65%);--info-bg: hsl(215, 100%, 6%);--info-border: hsl(223, 100%, 12%);--info-text: hsl(216, 87%, 65%);--warning-bg: hsl(64, 100%, 6%);--warning-border: hsl(60, 100%, 12%);--warning-text: hsl(46, 87%, 65%);--error-bg: hsl(358, 76%, 10%);--error-border: hsl(357, 89%, 16%);--error-text: hsl(358, 100%, 81%)}[data-rich-colors=true][data-sonner-toast][data-type=success],[data-rich-colors=true][data-sonner-toast][data-type=success] [data-close-button]{background:var(--success-bg);border-color:var(--success-border);color:var(--success-text)}[data-rich-colors=true][data-sonner-toast][data-type=info],[data-rich-colors=true][data-sonner-toast][data-type=info] [data-close-button]{background:var(--info-bg);border-color:var(--info-border);color:var(--info-text)}[data-rich-colors=true][data-sonner-toast][data-type=warning],[data-rich-colors=true][data-sonner-toast][data-type=warning] [data-close-button]{background:var(--warning-bg);border-color:var(--warning-border);color:var(--warning-text)}[data-rich-colors=true][data-sonner-toast][data-type=error],[data-rich-colors=true][data-sonner-toast][data-type=error] [data-close-button]{background:var(--error-bg);border-color:var(--error-border);color:var(--error-text)}.sonner-loading-wrapper{--size: 16px;height:var(--size);width:var(--size);position:absolute;inset:0;z-index:10}.sonner-loading-wrapper[data-visible=false]{transform-origin:center;animation:sonner-fade-out .2s ease forwards}.sonner-spinner{position:relative;top:50%;left:50%;height:var(--size);width:var(--size)}.sonner-loading-bar{animation:sonner-spin 1.2s linear infinite;background:var(--gray11);border-radius:6px;height:8%;left:-10%;position:absolute;top:-3.9%;width:24%}.sonner-loading-bar:nth-child(1){animation-delay:-1.2s;transform:rotate(.0001deg) translate(146%)}.sonner-loading-bar:nth-child(2){animation-delay:-1.1s;transform:rotate(30deg) translate(146%)}.sonner-loading-bar:nth-child(3){animation-delay:-1s;transform:rotate(60deg) translate(146%)}.sonner-loading-bar:nth-child(4){animation-delay:-.9s;transform:rotate(90deg) translate(146%)}.sonner-loading-bar:nth-child(5){animation-delay:-.8s;transform:rotate(120deg) translate(146%)}.sonner-loading-bar:nth-child(6){animation-delay:-.7s;transform:rotate(150deg) translate(146%)}.sonner-loading-bar:nth-child(7){animation-delay:-.6s;transform:rotate(180deg) translate(146%)}.sonner-loading-bar:nth-child(8){animation-delay:-.5s;transform:rotate(210deg) translate(146%)}.sonner-loading-bar:nth-child(9){animation-delay:-.4s;transform:rotate(240deg) translate(146%)}.sonner-loading-bar:nth-child(10){animation-delay:-.3s;transform:rotate(270deg) translate(146%)}.sonner-loading-bar:nth-child(11){animation-delay:-.2s;transform:rotate(300deg) translate(146%)}.sonner-loading-bar:nth-child(12){animation-delay:-.1s;transform:rotate(330deg) translate(146%)}@keyframes sonner-fade-in{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes sonner-fade-out{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.8)}}@keyframes sonner-spin{0%{opacity:1}to{opacity:.15}}@media (prefers-reduced-motion){[data-sonner-toast],[data-sonner-toast]>*,.sonner-loading-bar{transition:none!important;animation:none!important}}.sonner-loader{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);transform-origin:center;transition:opacity .2s,transform .2s}.sonner-loader[data-visible=false]{opacity:0;transform:scale(.8) translate(-50%,-50%)}
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(ZX,{onClick:n,className:"h-[14px] w-[14px] text-foreground/30 hover:cursor-pointer hover:text-foreground/50"})};function lQ({frame:e}){var S;const t=ke(C=>C.isDashboardEditing),n=ke(C=>C.filterValues),r=ke(C=>C.isVisualEditing),o=ke(C=>C.selectedSheetId);ke(C=>C.currentBreakpoint);const{removeFrame:i}=ke(C=>C.actions),s=ke(C=>C.actions.setIsVisualEditing),a=br(C=>C.actions.setFilterValues),l=br(C=>C.actions.setApplyFilters),{setCard:c,setFrame:u,setQueryResultColumns:f}=br(C=>C.actions),h=br(C=>C.actions.setSelectedConnectionId),g=br(C=>C.actions.setSelectedDatamodelId),v=br(C=>C.actions.setSelectedDatabaseName),b=br(C=>C.actions.setSelectedSchemaName),w=br(C=>C.actions.setSelectedTableName),x=e.cards.find(C=>C.id===e.activeCardId);function _(){s(!r),c(x);const{dimensionKeys:C}=ar((x==null?void 0:x.data)||[]);f(C),u(e),x!=null&&x.connectionId&&h(x==null?void 0:x.connectionId),x!=null&&x.datamodelId&&x.datamodelId!=="none"&&(g(x==null?void 0:x.datamodelId),v("")),x!=null&&x.lastSelectedDatabase&&x.lastSelectedDatabase!=="none"&&(v(x==null?void 0:x.lastSelectedDatabase),g("")),x!=null&&x.lastSelectedSchema&&b(x==null?void 0:x.lastSelectedSchema),x!=null&&x.lastSelectedTable&&w(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(EX,{onClick:()=>{s(!r)},className:"h-[14px] w-[14px] text-foreground/30 hover:cursor-pointer hover:text-foreground/50"}):O.jsx(OX,{role:"edit-visual",onClick:_,className:"h-[14px] w-[14px] text-foreground/30 hover:cursor-pointer hover:text-foreground/50"})),t&&O.jsx($$,{onClick:()=>i(o,e.id),className:"h-[14px] w-[14px] text-foreground/30 hover:cursor-pointer hover:text-foreground/50"}),((S=x.preferences)==null?void 0:S.allowDownload)===!0&&O.jsx(aQ,{data:(x==null?void 0:x.data)||[],filename:x.title})]})})}function cQ(e,t=globalThis==null?void 0:globalThis.document){const n=Ln(e);m.useEffect(()=>{const r=o=>{o.key==="Escape"&&n(o)};return t.addEventListener("keydown",r),()=>t.removeEventListener("keydown",r)},[n,t])}const bx="dismissableLayer.update",uQ="dismissableLayer.pointerDownOutside",dQ="dismissableLayer.focusOutside";let cP;const fQ=m.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set}),jf=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(fQ),[f,h]=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=_t(t,k=>h(k)),w=Array.from(u.layers),[x]=[...u.layersWithOutsidePointerEventsDisabled].slice(-1),_=w.indexOf(x),S=f?w.indexOf(f):-1,C=u.layersWithOutsidePointerEventsDisabled.size>0,E=S>=_,P=hQ(k=>{const I=k.target,$=[...u.branches].some(L=>L.contains(I));!E||$||(i==null||i(k),a==null||a(k),k.defaultPrevented||l==null||l())},g),A=pQ(k=>{const I=k.target;[...u.branches].some(L=>L.contains(I))||(s==null||s(k),a==null||a(k),k.defaultPrevented||l==null||l())},g);return cQ(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&&(cP=g.body.style.pointerEvents,g.body.style.pointerEvents="none"),u.layersWithOutsidePointerEventsDisabled.add(f)),u.layers.add(f),uP(),()=>{r&&u.layersWithOutsidePointerEventsDisabled.size===1&&(g.body.style.pointerEvents=cP)}},[f,g,r,u]),m.useEffect(()=>()=>{f&&(u.layers.delete(f),u.layersWithOutsidePointerEventsDisabled.delete(f),uP())},[f,u]),m.useEffect(()=>{const k=()=>v({});return document.addEventListener(bx,k),()=>document.removeEventListener(bx,k)},[]),m.createElement(Qe.div,he({},c,{ref:b,style:{pointerEvents:C?E?"auto":"none":void 0,...e.style},onFocusCapture:Me(e.onFocusCapture,A.onFocusCapture),onBlurCapture:Me(e.onBlurCapture,A.onBlurCapture),onPointerDownCapture:Me(e.onPointerDownCapture,P.onPointerDownCapture)}))});function hQ(e,t=globalThis==null?void 0:globalThis.document){const n=Ln(e),r=m.useRef(!1),o=m.useRef(()=>{});return m.useEffect(()=>{const i=a=>{if(a.target&&!r.current){let c=function(){j$(uQ,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 pQ(e,t=globalThis==null?void 0:globalThis.document){const n=Ln(e),r=m.useRef(!1);return m.useEffect(()=>{const o=i=>{i.target&&!r.current&&j$(dQ,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 uP(){const e=new CustomEvent(bx);document.dispatchEvent(e)}function j$(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?PD(o,i):o.dispatchEvent(i)}const gQ=["top","right","bottom","left"],ca=Math.min,no=Math.max,Dg=Math.round,vp=Math.floor,ua=e=>({x:e,y:e}),mQ={left:"right",right:"left",bottom:"top",top:"bottom"},vQ={start:"end",end:"start"};function yx(e,t,n){return no(e,ca(t,n))}function ss(e,t){return typeof e=="function"?e(t):e}function as(e){return e.split("-")[0]}function iu(e){return e.split("-")[1]}function P1(e){return e==="x"?"y":"x"}function T1(e){return e==="y"?"height":"width"}function su(e){return["top","bottom"].includes(as(e))?"y":"x"}function D1(e){return P1(su(e))}function bQ(e,t,n){n===void 0&&(n=!1);const r=iu(e),o=D1(e),i=T1(o);let s=o==="x"?r===(n?"end":"start")?"right":"left":r==="start"?"bottom":"top";return t.reference[i]>t.floating[i]&&(s=Ag(s)),[s,Ag(s)]}function yQ(e){const t=Ag(e);return[xx(e),t,xx(t)]}function xx(e){return e.replace(/start|end/g,t=>vQ[t])}function xQ(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 wQ(e,t,n,r){const o=iu(e);let i=xQ(as(e),n==="start",r);return o&&(i=i.map(s=>s+"-"+o),t&&(i=i.concat(i.map(xx)))),i}function Ag(e){return e.replace(/left|right|bottom|top/g,t=>mQ[t])}function _Q(e){return{top:0,right:0,bottom:0,left:0,...e}}function z$(e){return typeof e!="number"?_Q(e):{top:e,right:e,bottom:e,left:e}}function $g(e){return{...e,top:e.y,left:e.x,right:e.x+e.width,bottom:e.y+e.height}}function dP(e,t,n){let{reference:r,floating:o}=e;const i=su(t),s=D1(t),a=T1(s),l=as(t),c=i==="y",u=r.x+r.width/2-o.width/2,f=r.y+r.height/2-o.height/2,h=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(iu(t)){case"start":g[s]-=h*(n&&c?-1:1);break;case"end":g[s]+=h*(n&&c?-1:1);break}return g}const SQ=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}=dP(c,r,l),h=r,g={},v=0;for(let b=0;b<a.length;b++){const{name:w,fn:x}=a[b],{x:_,y:S,data:C,reset:E}=await x({x:u,y:f,initialPlacement:r,placement:h,strategy:o,middlewareData:g,rects:c,platform:s,elements:{reference:e,floating:t}});if(u=_??u,f=S??f,g={...g,[w]:{...g[w],...C}},E&&v<=50){v++,typeof E=="object"&&(E.placement&&(h=E.placement),E.rects&&(c=E.rects===!0?await s.getElementRects({reference:e,floating:t,strategy:o}):E.rects),{x:u,y:f}=dP(c,h,l)),b=-1;continue}}return{x:u,y:f,placement:h,strategy:o,middlewareData:g}};async function jd(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:h=!1,padding:g=0}=ss(t,e),v=z$(g),w=a[h?f==="floating"?"reference":"floating":f],x=$g(await i.getClippingRect({element:(n=await(i.isElement==null?void 0:i.isElement(w)))==null||n?w:w.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)),C=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},E=$g(i.convertOffsetParentRelativeRectToViewportRelativeRect?await i.convertOffsetParentRelativeRectToViewportRelativeRect({rect:_,offsetParent:S,strategy:l}):_);return{top:(x.top-E.top+v.top)/C.y,bottom:(E.bottom-x.bottom+v.bottom)/C.y,left:(x.left-E.left+v.left)/C.x,right:(E.right-x.right+v.right)/C.x}}const fP=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}=ss(e,t)||{};if(c==null)return{};const f=z$(u),h={x:n,y:r},g=D1(o),v=T1(g),b=await s.getDimensions(c),w=g==="y",x=w?"top":"left",_=w?"bottom":"right",S=w?"clientHeight":"clientWidth",C=i.reference[v]+i.reference[g]-h[g]-i.floating[v],E=h[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=C/2-E/2,I=A/2-b[v]/2-1,$=ca(f[x],I),L=ca(f[_],I),j=$,Q=A-b[v]-L,ee=A/2-b[v]/2+k,B=yx(j,ee,Q),Z=!l.arrow&&iu(o)!=null&&ee!=B&&i.reference[v]/2-(ee<j?$:L)-b[v]/2<0,G=Z?ee<j?ee-j:ee-Q:0;return{[g]:h[g]+G,data:{[g]:B,centerOffset:ee-B-G,...Z&&{alignmentOffset:G}},reset:Z}}}),CQ=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:h,fallbackStrategy:g="bestFit",fallbackAxisSideDirection:v="none",flipAlignment:b=!0,...w}=ss(e,t);if((n=i.arrow)!=null&&n.alignmentOffset)return{};const x=as(o),_=as(a)===a,S=await(l.isRTL==null?void 0:l.isRTL(c.floating)),C=h||(_||!b?[Ag(a)]:yQ(a));!h&&v!=="none"&&C.push(...wQ(a,b,v,S));const E=[a,...C],P=await jd(t,w),A=[];let k=((r=i.flip)==null?void 0:r.overflows)||[];if(u&&A.push(P[x]),f){const j=bQ(o,s,S);A.push(P[j[0]],P[j[1]])}if(k=[...k,{placement:o,overflows:A}],!A.every(j=>j<=0)){var I,$;const j=(((I=i.flip)==null?void 0:I.index)||0)+1,Q=E[j];if(Q)return{data:{index:j,overflows:k},reset:{placement:Q}};let ee=($=k.filter(B=>B.overflows[0]<=0).sort((B,Z)=>B.overflows[1]-Z.overflows[1])[0])==null?void 0:$.placement;if(!ee)switch(g){case"bestFit":{var L;const B=(L=k.map(Z=>[Z.placement,Z.overflows.filter(G=>G>0).reduce((G,q)=>G+q,0)]).sort((Z,G)=>Z[1]-G[1])[0])==null?void 0:L[0];B&&(ee=B);break}case"initialPlacement":ee=a;break}if(o!==ee)return{reset:{placement:ee}}}return{}}}};function hP(e,t){return{top:e.top-t.height,right:e.right-t.width,bottom:e.bottom-t.height,left:e.left-t.width}}function pP(e){return gQ.some(t=>e[t]>=0)}const EQ=function(e){return e===void 0&&(e={}),{name:"hide",options:e,async fn(t){const{rects:n}=t,{strategy:r="referenceHidden",...o}=ss(e,t);switch(r){case"referenceHidden":{const i=await jd(t,{...o,elementContext:"reference"}),s=hP(i,n.reference);return{data:{referenceHiddenOffsets:s,referenceHidden:pP(s)}}}case"escaped":{const i=await jd(t,{...o,altBoundary:!0}),s=hP(i,n.floating);return{data:{escapedOffsets:s,escaped:pP(s)}}}default:return{}}}}};async function RQ(e,t){const{placement:n,platform:r,elements:o}=e,i=await(r.isRTL==null?void 0:r.isRTL(o.floating)),s=as(n),a=iu(n),l=su(n)==="y",c=["left","top"].includes(s)?-1:1,u=i&&l?-1:1,f=ss(t,e);let{mainAxis:h,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:h*c}:{x:h*c,y:g*u}}const OQ=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 RQ(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}}}}},PQ=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:w=>{let{x,y:_}=w;return{x,y:_}}},...l}=ss(e,t),c={x:n,y:r},u=await jd(t,l),f=su(as(o)),h=P1(f);let g=c[h],v=c[f];if(i){const w=h==="y"?"top":"left",x=h==="y"?"bottom":"right",_=g+u[w],S=g-u[x];g=yx(_,g,S)}if(s){const w=f==="y"?"top":"left",x=f==="y"?"bottom":"right",_=v+u[w],S=v-u[x];v=yx(_,v,S)}const b=a.fn({...t,[h]:g,[f]:v});return{...b,data:{x:b.x-n,y:b.y-r}}}}},TQ=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}=ss(e,t),u={x:n,y:r},f=su(o),h=P1(f);let g=u[h],v=u[f];const b=ss(a,t),w=typeof b=="number"?{mainAxis:b,crossAxis:0}:{mainAxis:0,crossAxis:0,...b};if(l){const S=h==="y"?"height":"width",C=i.reference[h]-i.floating[S]+w.mainAxis,E=i.reference[h]+i.reference[S]-w.mainAxis;g<C?g=C:g>E&&(g=E)}if(c){var x,_;const S=h==="y"?"width":"height",C=["top","left"].includes(as(o)),E=i.reference[f]-i.floating[S]+(C&&((x=s.offset)==null?void 0:x[f])||0)+(C?0:w.crossAxis),P=i.reference[f]+i.reference[S]+(C?0:((_=s.offset)==null?void 0:_[f])||0)-(C?w.crossAxis:0);v<E?v=E:v>P&&(v=P)}return{[h]:g,[f]:v}}}},DQ=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}=ss(e,t),l=await jd(t,a),c=as(n),u=iu(n),f=su(n)==="y",{width:h,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 w=g-l[v],x=h-l[b],_=!t.middlewareData.shift;let S=w,C=x;if(f){const P=h-l.left-l.right;C=u||_?ca(x,P):P}else{const P=g-l.top-l.bottom;S=u||_?ca(w,P):P}if(_&&!u){const P=no(l.left,0),A=no(l.right,0),k=no(l.top,0),I=no(l.bottom,0);f?C=h-2*(P!==0||A!==0?P+A:no(l.left,l.right)):S=g-2*(k!==0||I!==0?k+I:no(l.top,l.bottom))}await s({...t,availableWidth:C,availableHeight:S});const E=await o.getDimensions(i.floating);return h!==E.width||g!==E.height?{reset:{rects:!0}}:{}}}};function da(e){return B$(e)?(e.nodeName||"").toLowerCase():"#document"}function so(e){var t;return(e==null||(t=e.ownerDocument)==null?void 0:t.defaultView)||window}function ds(e){var t;return(t=(B$(e)?e.ownerDocument:e.document)||window.document)==null?void 0:t.documentElement}function B$(e){return e instanceof Node||e instanceof so(e).Node}function ls(e){return e instanceof Element||e instanceof so(e).Element}function Si(e){return e instanceof HTMLElement||e instanceof so(e).HTMLElement}function gP(e){return typeof ShadowRoot>"u"?!1:e instanceof ShadowRoot||e instanceof so(e).ShadowRoot}function zf(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 AQ(e){return["table","td","th"].includes(da(e))}function A1(e){const t=$1(),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 $Q(e){let t=Yc(e);for(;Si(t)&&!km(t);){if(A1(t))return t;t=Yc(t)}return null}function $1(){return typeof CSS>"u"||!CSS.supports?!1:CSS.supports("-webkit-backdrop-filter","none")}function km(e){return["html","body","#document"].includes(da(e))}function $o(e){return so(e).getComputedStyle(e)}function Mm(e){return ls(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.pageXOffset,scrollTop:e.pageYOffset}}function Yc(e){if(da(e)==="html")return e;const t=e.assignedSlot||e.parentNode||gP(e)&&e.host||ds(e);return gP(t)?t.host:t}function V$(e){const t=Yc(e);return km(t)?e.ownerDocument?e.ownerDocument.body:e.body:Si(t)&&zf(t)?t:V$(t)}function zd(e,t,n){var r;t===void 0&&(t=[]),n===void 0&&(n=!0);const o=V$(e),i=o===((r=e.ownerDocument)==null?void 0:r.body),s=so(o);return i?t.concat(s,s.visualViewport||[],zf(o)?o:[],s.frameElement&&n?zd(s.frameElement):[]):t.concat(o,zd(o,[],n))}function H$(e){const t=$o(e);let n=parseFloat(t.width)||0,r=parseFloat(t.height)||0;const o=Si(e),i=o?e.offsetWidth:n,s=o?e.offsetHeight:r,a=Dg(n)!==i||Dg(r)!==s;return a&&(n=i,r=s),{width:n,height:r,$:a}}function k1(e){return ls(e)?e:e.contextElement}function yc(e){const t=k1(e);if(!Si(t))return ua(1);const n=t.getBoundingClientRect(),{width:r,height:o,$:i}=H$(t);let s=(i?Dg(n.width):n.width)/r,a=(i?Dg(n.height):n.height)/o;return(!s||!Number.isFinite(s))&&(s=1),(!a||!Number.isFinite(a))&&(a=1),{x:s,y:a}}const kQ=ua(0);function W$(e){const t=so(e);return!$1()||!t.visualViewport?kQ:{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}}function MQ(e,t,n){return t===void 0&&(t=!1),!n||t&&n!==so(e)?!1:t}function ml(e,t,n,r){t===void 0&&(t=!1),n===void 0&&(n=!1);const o=e.getBoundingClientRect(),i=k1(e);let s=ua(1);t&&(r?ls(r)&&(s=yc(r)):s=yc(e));const a=MQ(i,n,r)?W$(i):ua(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 h=so(i),g=r&&ls(r)?so(r):r;let v=h.frameElement;for(;v&&r&&g!==h;){const b=yc(v),w=v.getBoundingClientRect(),x=$o(v),_=w.left+(v.clientLeft+parseFloat(x.paddingLeft))*b.x,S=w.top+(v.clientTop+parseFloat(x.paddingTop))*b.y;l*=b.x,c*=b.y,u*=b.x,f*=b.y,l+=_,c+=S,v=so(v).frameElement}}return $g({width:u,height:f,x:l,y:c})}function IQ(e){let{rect:t,offsetParent:n,strategy:r}=e;const o=Si(n),i=ds(n);if(n===i)return t;let s={scrollLeft:0,scrollTop:0},a=ua(1);const l=ua(0);if((o||!o&&r!=="fixed")&&((da(n)!=="body"||zf(i))&&(s=Mm(n)),Si(n))){const c=ml(n);a=yc(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 NQ(e){return Array.from(e.getClientRects())}function U$(e){return ml(ds(e)).left+Mm(e).scrollLeft}function LQ(e){const t=ds(e),n=Mm(e),r=e.ownerDocument.body,o=no(t.scrollWidth,t.clientWidth,r.scrollWidth,r.clientWidth),i=no(t.scrollHeight,t.clientHeight,r.scrollHeight,r.clientHeight);let s=-n.scrollLeft+U$(e);const a=-n.scrollTop;return $o(r).direction==="rtl"&&(s+=no(t.clientWidth,r.clientWidth)-o),{width:o,height:i,x:s,y:a}}function FQ(e,t){const n=so(e),r=ds(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=$1();(!c||c&&t==="fixed")&&(a=o.offsetLeft,l=o.offsetTop)}return{width:i,height:s,x:a,y:l}}function jQ(e,t){const n=ml(e,!0,t==="fixed"),r=n.top+e.clientTop,o=n.left+e.clientLeft,i=Si(e)?yc(e):ua(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 mP(e,t,n){let r;if(t==="viewport")r=FQ(e,n);else if(t==="document")r=LQ(ds(e));else if(ls(t))r=jQ(t,n);else{const o=W$(e);r={...t,x:t.x-o.x,y:t.y-o.y}}return $g(r)}function q$(e,t){const n=Yc(e);return n===t||!ls(n)||km(n)?!1:$o(n).position==="fixed"||q$(n,t)}function zQ(e,t){const n=t.get(e);if(n)return n;let r=zd(e,[],!1).filter(a=>ls(a)&&da(a)!=="body"),o=null;const i=$o(e).position==="fixed";let s=i?Yc(e):e;for(;ls(s)&&!km(s);){const a=$o(s),l=A1(s);!l&&a.position==="fixed"&&(o=null),(i?!l&&!o:!l&&a.position==="static"&&!!o&&["absolute","fixed"].includes(o.position)||zf(s)&&!l&&q$(e,s))?r=r.filter(u=>u!==s):o=a,s=Yc(s)}return t.set(e,r),r}function BQ(e){let{element:t,boundary:n,rootBoundary:r,strategy:o}=e;const s=[...n==="clippingAncestors"?zQ(t,this._c):[].concat(n),r],a=s[0],l=s.reduce((c,u)=>{const f=mP(t,u,o);return c.top=no(f.top,c.top),c.right=ca(f.right,c.right),c.bottom=ca(f.bottom,c.bottom),c.left=no(f.left,c.left),c},mP(t,a,o));return{width:l.right-l.left,height:l.bottom-l.top,x:l.left,y:l.top}}function VQ(e){return H$(e)}function HQ(e,t,n){const r=Si(t),o=ds(t),i=n==="fixed",s=ml(e,!0,i,t);let a={scrollLeft:0,scrollTop:0};const l=ua(0);if(r||!r&&!i)if((da(t)!=="body"||zf(o))&&(a=Mm(t)),r){const c=ml(t,!0,i,t);l.x=c.x+t.clientLeft,l.y=c.y+t.clientTop}else o&&(l.x=U$(o));return{x:s.left+a.scrollLeft-l.x,y:s.top+a.scrollTop-l.y,width:s.width,height:s.height}}function vP(e,t){return!Si(e)||$o(e).position==="fixed"?null:t?t(e):e.offsetParent}function G$(e,t){const n=so(e);if(!Si(e))return n;let r=vP(e,t);for(;r&&AQ(r)&&$o(r).position==="static";)r=vP(r,t);return r&&(da(r)==="html"||da(r)==="body"&&$o(r).position==="static"&&!A1(r))?n:r||$Q(e)||n}const WQ=async function(e){let{reference:t,floating:n,strategy:r}=e;const o=this.getOffsetParent||G$,i=this.getDimensions;return{reference:HQ(t,await o(n),r),floating:{x:0,y:0,...await i(n)}}};function UQ(e){return $o(e).direction==="rtl"}const qQ={convertOffsetParentRelativeRectToViewportRelativeRect:IQ,getDocumentElement:ds,getClippingRect:BQ,getOffsetParent:G$,getElementRects:WQ,getClientRects:NQ,getDimensions:VQ,getScale:yc,isElement:ls,isRTL:UQ};function GQ(e,t){let n=null,r;const o=ds(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:h}=e.getBoundingClientRect();if(a||t(),!f||!h)return;const g=vp(u),v=vp(o.clientWidth-(c+f)),b=vp(o.clientHeight-(u+h)),w=vp(c),_={rootMargin:-g+"px "+-v+"px "+-b+"px "+-w+"px",threshold:no(0,ca(1,l))||1};let S=!0;function C(E){const P=E[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(C,{..._,root:o.ownerDocument})}catch{n=new IntersectionObserver(C,_)}n.observe(e)}return s(!0),i}function YQ(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=k1(e),u=o||i?[...c?zd(c):[],...zd(t)]:[];u.forEach(x=>{o&&x.addEventListener("scroll",n,{passive:!0}),i&&x.addEventListener("resize",n)});const f=c&&a?GQ(c,n):null;let h=-1,g=null;s&&(g=new ResizeObserver(x=>{let[_]=x;_&&_.target===c&&g&&(g.unobserve(t),cancelAnimationFrame(h),h=requestAnimationFrame(()=>{g&&g.observe(t)})),n()}),c&&!l&&g.observe(c),g.observe(t));let v,b=l?ml(e):null;l&&w();function w(){const x=ml(e);b&&(x.x!==b.x||x.y!==b.y||x.width!==b.width||x.height!==b.height)&&n(),b=x,v=requestAnimationFrame(w)}return n(),()=>{u.forEach(x=>{o&&x.removeEventListener("scroll",n),i&&x.removeEventListener("resize",n)}),f&&f(),g&&g.disconnect(),g=null,l&&cancelAnimationFrame(v)}}const KQ=(e,t,n)=>{const r=new Map,o={platform:qQ,...n},i={...o.platform,_c:r};return SQ(e,t,{...o,platform:i})},XQ=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?fP({element:r.current,padding:o}).fn(n):{}:r?fP({element:r,padding:o}).fn(n):{}}}};var ig=typeof document<"u"?m.useLayoutEffect:m.useEffect;function kg(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(!kg(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)&&!kg(e[i],t[i]))return!1}return!0}return e!==e&&t!==t}function Y$(e){return typeof window>"u"?1:(e.ownerDocument.defaultView||window).devicePixelRatio||1}function bP(e,t){const n=Y$(e);return Math.round(t*n)/n}function yP(e){const t=H.useRef(e);return ig(()=>{t.current=e}),t}function QQ(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]=H.useState({x:0,y:0,strategy:n,placement:t,middlewareData:{},isPositioned:!1}),[h,g]=H.useState(r);kg(h,r)||g(r);const[v,b]=H.useState(null),[w,x]=H.useState(null),_=H.useCallback(Z=>{Z!=P.current&&(P.current=Z,b(Z))},[b]),S=H.useCallback(Z=>{Z!==A.current&&(A.current=Z,x(Z))},[x]),C=i||v,E=s||w,P=H.useRef(null),A=H.useRef(null),k=H.useRef(u),I=yP(l),$=yP(o),L=H.useCallback(()=>{if(!P.current||!A.current)return;const Z={placement:t,strategy:n,middleware:h};$.current&&(Z.platform=$.current),KQ(P.current,A.current,Z).then(G=>{const q={...G,isPositioned:!0};j.current&&!kg(k.current,q)&&(k.current=q,pw.flushSync(()=>{f(q)}))})},[h,t,n,$]);ig(()=>{c===!1&&k.current.isPositioned&&(k.current.isPositioned=!1,f(Z=>({...Z,isPositioned:!1})))},[c]);const j=H.useRef(!1);ig(()=>(j.current=!0,()=>{j.current=!1}),[]),ig(()=>{if(C&&(P.current=C),E&&(A.current=E),C&&E){if(I.current)return I.current(C,E,L);L()}},[C,E,L,I]);const Q=H.useMemo(()=>({reference:P,floating:A,setReference:_,setFloating:S}),[_,S]),ee=H.useMemo(()=>({reference:C,floating:E}),[C,E]),B=H.useMemo(()=>{const Z={position:n,left:0,top:0};if(!ee.floating)return Z;const G=bP(ee.floating,u.x),q=bP(ee.floating,u.y);return a?{...Z,transform:"translate("+G+"px, "+q+"px)",...Y$(ee.floating)>=1.5&&{willChange:"transform"}}:{position:n,left:G,top:q}},[n,a,ee.floating,u.x,u.y]);return H.useMemo(()=>({...u,update:L,refs:Q,elements:ee,floatingStyles:B}),[u,L,Q,ee,B])}function Im(e){const[t,n]=m.useState(void 0);return ur(()=>{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 K$="Popper",[X$,Ti]=Zn(K$),[JQ,Q$]=X$(K$),ZQ=e=>{const{__scopePopper:t,children:n}=e,[r,o]=m.useState(null);return m.createElement(JQ,{scope:t,anchor:r,onAnchorChange:o},n)},eJ="PopperAnchor",tJ=m.forwardRef((e,t)=>{const{__scopePopper:n,virtualRef:r,...o}=e,i=Q$(eJ,n),s=m.useRef(null),a=_t(t,s);return m.useEffect(()=>{i.onAnchorChange((r==null?void 0:r.current)||s.current)}),r?null:m.createElement(Qe.div,he({},o,{ref:a}))}),J$="PopperContent",[nJ,dye]=X$(J$),rJ=m.forwardRef((e,t)=>{var n,r,o,i,s,a,l,c;const{__scopePopper:u,side:f="bottom",sideOffset:h=0,align:g="center",alignOffset:v=0,arrowPadding:b=0,avoidCollisions:w=!0,collisionBoundary:x=[],collisionPadding:_=0,sticky:S="partial",hideWhenDetached:C=!1,updatePositionStrategy:E="optimized",onPlaced:P,...A}=e,k=Q$(J$,u),[I,$]=m.useState(null),L=_t(t,Pe=>$(Pe)),[j,Q]=m.useState(null),ee=Im(j),B=(n=ee==null?void 0:ee.width)!==null&&n!==void 0?n:0,Z=(r=ee==null?void 0:ee.height)!==null&&r!==void 0?r:0,G=f+(g!=="center"?"-"+g:""),q=typeof _=="number"?_:{top:0,right:0,bottom:0,left:0,..._},K=Array.isArray(x)?x:[x],T=K.length>0,V={padding:q,boundary:K.filter(oJ),altBoundary:T},{refs:X,floatingStyles:N,placement:ie,isPositioned:fe,middlewareData:ue}=QQ({strategy:"fixed",placement:G,whileElementsMounted:(...Pe)=>YQ(...Pe,{animationFrame:E==="always"}),elements:{reference:k.anchor},middleware:[OQ({mainAxis:h+Z,alignmentAxis:v}),w&&PQ({mainAxis:!0,crossAxis:!1,limiter:S==="partial"?TQ():void 0,...V}),w&&CQ({...V}),DQ({...V,apply:({elements:Pe,rects:Te,availableWidth:Ue,availableHeight:Be})=>{const{width:Ie,height:Ke}=Te.reference,lt=Pe.floating.style;lt.setProperty("--radix-popper-available-width",`${Ue}px`),lt.setProperty("--radix-popper-available-height",`${Be}px`),lt.setProperty("--radix-popper-anchor-width",`${Ie}px`),lt.setProperty("--radix-popper-anchor-height",`${Ke}px`)}}),j&&XQ({element:j,padding:b}),iJ({arrowWidth:B,arrowHeight:Z}),C&&EQ({strategy:"referenceHidden",...V})]}),[pe,se]=Z$(ie),ne=Ln(P);ur(()=>{fe&&(ne==null||ne())},[fe,ne]);const le=(o=ue.arrow)===null||o===void 0?void 0:o.x,ye=(i=ue.arrow)===null||i===void 0?void 0:i.y,Y=((s=ue.arrow)===null||s===void 0?void 0:s.centerOffset)!==0,[be,_e]=m.useState();return ur(()=>{I&&_e(window.getComputedStyle(I).zIndex)},[I]),m.createElement("div",{ref:X.setFloating,"data-radix-popper-content-wrapper":"",style:{...N,transform:fe?N.transform:"translate(0, -200%)",minWidth:"max-content",zIndex:be,"--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(nJ,{scope:u,placedSide:pe,onArrowChange:Q,arrowX:le,arrowY:ye,shouldHideArrow:Y},m.createElement(Qe.div,he({"data-side":pe,"data-align":se},A,{ref:L,style:{...A.style,animation:fe?void 0:"none",opacity:(c=ue.hide)!==null&&c!==void 0&&c.referenceHidden?0:void 0}}))))});function oJ(e){return e!==null}const iJ=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,h=f?0:e.arrowWidth,g=f?0:e.arrowHeight,[v,b]=Z$(a),w={start:"0%",center:"50%",end:"100%"}[b],x=((r=(o=c.arrow)===null||o===void 0?void 0:o.x)!==null&&r!==void 0?r:0)+h/2,_=((i=(s=c.arrow)===null||s===void 0?void 0:s.y)!==null&&i!==void 0?i:0)+g/2;let S="",C="";return v==="bottom"?(S=f?w:`${x}px`,C=`${-g}px`):v==="top"?(S=f?w:`${x}px`,C=`${l.floating.height+g}px`):v==="right"?(S=`${-g}px`,C=f?w:`${_}px`):v==="left"&&(S=`${l.floating.width+g}px`,C=f?w:`${_}px`),{data:{x:S,y:C}}}});function Z$(e){const[t,n="center"]=e.split("-");return[t,n]}const Bf=ZQ,Vf=tJ,Hf=rJ,M1=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?Mo.createPortal(m.createElement(Qe.div,he({},o,{ref:t})),r):null}),sJ=m.forwardRef((e,t)=>{const{children:n,...r}=e,o=m.Children.toArray(n),i=o.find(aJ);if(i){const s=i.props.children,a=o.map(l=>l===i?m.Children.count(s)>1?m.Children.only(null):m.isValidElement(s)?s.props.children:null:l);return m.createElement(wx,he({},r,{ref:t}),m.isValidElement(s)?m.cloneElement(s,void 0,a):null)}return m.createElement(wx,he({},r,{ref:t}),n)});sJ.displayName="Slot";const wx=m.forwardRef((e,t)=>{const{children:n,...r}=e;return m.isValidElement(n)?m.cloneElement(n,{...lJ(r,n.props),ref:t?cs(t,n.ref):n.ref}):m.Children.count(n)>1?m.Children.only(null):null});wx.displayName="SlotClone";const ek=({children:e})=>m.createElement(m.Fragment,null,e);function aJ(e){return m.isValidElement(e)&&e.type===ek}function lJ(e,t){const n={...t};for(const r in t){const o=e[r],i=t[r];/^on[A-Z]/.test(r)?o&&i?n[r]=(...a)=>{i(...a),o(...a)}:o&&(n[r]=o):r==="style"?n[r]={...o,...i}:r==="className"&&(n[r]=[o,i].filter(Boolean).join(" "))}return{...e,...n}}const tk=m.forwardRef((e,t)=>m.createElement(Qe.span,he({},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}}))),cJ=tk,[Nm,fye]=Zn("Tooltip",[Ti]),I1=Ti(),uJ="TooltipProvider",dJ=700,_x="tooltip.open",[fJ,N1]=Nm(uJ),hJ=e=>{const{__scopeTooltip:t,delayDuration:n=dJ,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(fJ,{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)},L1="Tooltip",[pJ,Lm]=Nm(L1),gJ=e=>{const{__scopeTooltip:t,children:n,open:r,defaultOpen:o=!1,onOpenChange:i,disableHoverableContent:s,delayDuration:a}=e,l=N1(L1,e.__scopeTooltip),c=I1(t),[u,f]=m.useState(null),h=Jo(),g=m.useRef(0),v=s??l.disableHoverableContent,b=a??l.delayDuration,w=m.useRef(!1),[x=!1,_]=wr({prop:r,defaultProp:o,onChange:A=>{A?(l.onOpen(),document.dispatchEvent(new CustomEvent(_x))):l.onClose(),i==null||i(A)}}),S=m.useMemo(()=>x?w.current?"delayed-open":"instant-open":"closed",[x]),C=m.useCallback(()=>{window.clearTimeout(g.current),w.current=!1,_(!0)},[_]),E=m.useCallback(()=>{window.clearTimeout(g.current),_(!1)},[_]),P=m.useCallback(()=>{window.clearTimeout(g.current),g.current=window.setTimeout(()=>{w.current=!0,_(!0)},b)},[b,_]);return m.useEffect(()=>()=>window.clearTimeout(g.current),[]),m.createElement(Bf,c,m.createElement(pJ,{scope:t,contentId:h,open:x,stateAttribute:S,trigger:u,onTriggerChange:f,onTriggerEnter:m.useCallback(()=>{l.isOpenDelayed?P():C()},[l.isOpenDelayed,P,C]),onTriggerLeave:m.useCallback(()=>{v?E():window.clearTimeout(g.current)},[E,v]),onOpen:C,onClose:E,disableHoverableContent:v},n))},xP="TooltipTrigger",nk=m.forwardRef((e,t)=>{const{__scopeTooltip:n,...r}=e,o=Lm(xP,n),i=N1(xP,n),s=I1(n),a=m.useRef(null),l=_t(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(Vf,he({asChild:!0},s),m.createElement(Qe.button,he({"aria-describedby":o.open?o.contentId:void 0,"data-state":o.stateAttribute},r,{ref:l,onPointerMove:Me(e.onPointerMove,h=>{h.pointerType!=="touch"&&!u.current&&!i.isPointerInTransitRef.current&&(o.onTriggerEnter(),u.current=!0)}),onPointerLeave:Me(e.onPointerLeave,()=>{o.onTriggerLeave(),u.current=!1}),onPointerDown:Me(e.onPointerDown,()=>{c.current=!0,document.addEventListener("pointerup",f,{once:!0})}),onFocus:Me(e.onFocus,()=>{c.current||o.onOpen()}),onBlur:Me(e.onBlur,o.onClose),onClick:Me(e.onClick,o.onClose)})))}),mJ="TooltipPortal",[hye,vJ]=Nm(mJ,{forceMount:void 0}),Bd="TooltipContent",bJ=m.forwardRef((e,t)=>{const n=vJ(Bd,e.__scopeTooltip),{forceMount:r=n.forceMount,side:o="top",...i}=e,s=Lm(Bd,e.__scopeTooltip);return m.createElement(er,{present:r||s.open},s.disableHoverableContent?m.createElement(rk,he({side:o},i,{ref:t})):m.createElement(yJ,he({side:o},i,{ref:t})))}),yJ=m.forwardRef((e,t)=>{const n=Lm(Bd,e.__scopeTooltip),r=N1(Bd,e.__scopeTooltip),o=m.useRef(null),i=_t(t,o),[s,a]=m.useState(null),{trigger:l,onClose:c}=n,u=o.current,{onPointerInTransitChange:f}=r,h=m.useCallback(()=>{a(null),f(!1)},[f]),g=m.useCallback((v,b)=>{const w=v.currentTarget,x={x:v.clientX,y:v.clientY},_=wJ(x,w.getBoundingClientRect()),S=_J(x,_),C=SJ(b.getBoundingClientRect()),E=EJ([...S,...C]);a(E),f(!0)},[f]);return m.useEffect(()=>()=>h(),[h]),m.useEffect(()=>{if(l&&u){const v=w=>g(w,u),b=w=>g(w,l);return l.addEventListener("pointerleave",v),u.addEventListener("pointerleave",b),()=>{l.removeEventListener("pointerleave",v),u.removeEventListener("pointerleave",b)}}},[l,u,g,h]),m.useEffect(()=>{if(s){const v=b=>{const w=b.target,x={x:b.clientX,y:b.clientY},_=(l==null?void 0:l.contains(w))||(u==null?void 0:u.contains(w)),S=!CJ(x,s);_?h():S&&(h(),c())};return document.addEventListener("pointermove",v),()=>document.removeEventListener("pointermove",v)}},[l,u,s,c,h]),m.createElement(rk,he({},e,{ref:i}))}),[xJ,pye]=Nm(L1,{isInside:!1}),rk=m.forwardRef((e,t)=>{const{__scopeTooltip:n,children:r,"aria-label":o,onEscapeKeyDown:i,onPointerDownOutside:s,...a}=e,l=Lm(Bd,n),c=I1(n),{onClose:u}=l;return m.useEffect(()=>(document.addEventListener(_x,u),()=>document.removeEventListener(_x,u)),[u]),m.useEffect(()=>{if(l.trigger){const f=h=>{const g=h.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(jf,{asChild:!0,disableOutsidePointerEvents:!1,onEscapeKeyDown:i,onPointerDownOutside:s,onFocusOutside:f=>f.preventDefault(),onDismiss:u},m.createElement(Hf,he({"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(ek,null,r),m.createElement(xJ,{scope:n,isInside:!0},m.createElement(cJ,{id:l.contentId,role:"tooltip"},o||r))))});function wJ(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 _J(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 SJ(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 CJ(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 EJ(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),RJ(t)}function RJ(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 OJ=hJ,PJ=gJ,TJ=nk,ok=bJ,DJ=OJ,ik=PJ,sk=TJ,F1=H.forwardRef(({className:e,sideOffset:t=4,...n},r)=>O.jsx(ok,{ref:r,sideOffset:t,className:Ce("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}));F1.displayName=ok.displayName;function ll({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 ak(e,t){if(!t)return"";const n=t.find(r=>e>=r.start&&e<=r.end);return(n==null?void 0:n.color)||""}function lk({card:e}){var w,x,_,S,C,E,P,A,k,I,$,L,j,Q,ee,B,Z,G,q,K,T,V,X,N;const t=ke(ie=>ie.actions.setCardTitle),n=ke(ie=>ie.actions.setCardDescription),r=ke(ie=>ie.isVisualEditing),o=br(ie=>ie.card),i=br(ie=>ie.actions.setCard);br(ie=>ie.actions.setNumberFormat);const s=ke(ie=>ie.selectedSheetId),a=e.data,l=(x=(w=e.preferences)==null?void 0:w.formatNumber)==null?void 0:x.colorRanges,{metricKeys:c}=ar(a||[]),u=(_=a==null?void 0:a[0])==null?void 0:_[c==null?void 0:c[0]],f=(S=a==null?void 0:a[0])==null?void 0:S[c==null?void 0:c[1]],h=!!e.data&&e.data.length>0;function g(ie){r?i({...o,title:ie}):t(s,e.id,ie)}function v(ie){r?i({...o,description:ie}):n(s,e.id,ie)}const b=f&&f-u!==0?(u-f)/f:null;return O.jsxs("div",{className:"kpi-card flex grow flex-col overflow-auto",children:[O.jsxs(lm,{className:"grow pb-3",children:[O.jsx(is,{text:r?o.title:e.title,onSave:g,children:O.jsx("div",{className:"flex items-center gap-2",children:O.jsx(Af,{className:"text-base font-medium text-muted-foreground",children:e.title})})}),h&&O.jsxs("div",{className:"flex flex-wrap items-end gap-3 text-foreground",children:[O.jsx("p",{style:{color:ak(u,l)},className:"text-3xl font-semibold",children:ll({number:u,decimalPlaces:((E=(C=e.preferences)==null?void 0:C.formatNumber)==null?void 0:E.decimalPlaces)||0,useSuffix:!!((A=(P=e.preferences)==null?void 0:P.formatNumber)!=null&&A.suffix),customSuffix:((I=(k=e.preferences)==null?void 0:k.formatNumber)==null?void 0:I.suffix)||"",locale:((L=($=e.preferences)==null?void 0:$.formatNumber)==null?void 0:L.locale)||"",currency:((Q=(j=e.preferences)==null?void 0:j.formatNumber)==null?void 0:Q.currency)||""})}),f&&O.jsxs("span",{className:"min-w-fit text-base font-normal text-muted-foreground",children:["from  ",ll({number:f,decimalPlaces:((B=(ee=e.preferences)==null?void 0:ee.formatNumber)==null?void 0:B.decimalPlaces)||0,useSuffix:!!((G=(Z=e.preferences)==null?void 0:Z.formatNumber)!=null&&G.suffix),customSuffix:((K=(q=e.preferences)==null?void 0:q.formatNumber)==null?void 0:K.suffix)||"",locale:((V=(T=e.preferences)==null?void 0:T.formatNumber)==null?void 0:V.locale)||"",currency:((N=(X=e.preferences)==null?void 0:X.formatNumber)==null?void 0:N.currency)||""})]})]})]}),b&&O.jsxs(cm,{className:"grow items-start gap-1 pb-4 text-sm",children:[O.jsx(AJ,{children:b}),O.jsxs("div",{className:"flex gap-1 text-muted-foreground",children:[b>0?"up ":"down ",O.jsx(is,{text:e.description||"",onSave:v,children:e.description})]})]})]})}function AJ({children:e}){const t=e>0?O.jsx(C1,{className:"h-4 w-4"}):O.jsx(S1,{className:"h-4 w-4"}),n=`${Math.abs(e*100).toFixed(0)}%`;return O.jsxs("div",{className:Ce("flex items-center",{"text-green-600":e>0,"text-destructive":e<0}),children:[t,O.jsx("span",{className:"ml-[1px]",children:n})]})}var Kc=1e3,Xc=Kc*60,Qc=Xc*60,vl=Qc*24,$J=vl*7,kJ=vl*365.25,MJ=function(e,t){t=t||{};var n=typeof e;if(n==="string"&&e.length>0)return IJ(e);if(n==="number"&&isFinite(e))return t.long?LJ(e):NJ(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))};function IJ(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*kJ;case"weeks":case"week":case"w":return n*$J;case"days":case"day":case"d":return n*vl;case"hours":case"hour":case"hrs":case"hr":case"h":return n*Qc;case"minutes":case"minute":case"mins":case"min":case"m":return n*Xc;case"seconds":case"second":case"secs":case"sec":case"s":return n*Kc;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return n;default:return}}}}function NJ(e){var t=Math.abs(e);return t>=vl?Math.round(e/vl)+"d":t>=Qc?Math.round(e/Qc)+"h":t>=Xc?Math.round(e/Xc)+"m":t>=Kc?Math.round(e/Kc)+"s":e+"ms"}function LJ(e){var t=Math.abs(e);return t>=vl?bp(e,t,vl,"day"):t>=Qc?bp(e,t,Qc,"hour"):t>=Xc?bp(e,t,Xc,"minute"):t>=Kc?bp(e,t,Kc,"second"):e+" ms"}function bp(e,t,n,r){var o=t>=n*1.5;return Math.round(e/n)+" "+r+(o?"s":"")}const FJ=nu(MJ);function ck({children:e}){const{setIsSessionExpired:t}=co(),n=new eB({queryCache:new bD({onError:r=>{console.error(`Something went wrong: ${r.message}`),r.message==="invalid token"&&t(!0)}}),defaultOptions:{queries:{refetchOnWindowFocus:!1,retry:1}}});return O.jsx(oB,{client:n,children:e})}const au=m.forwardRef(({children:e,className:t,...n},r)=>O.jsx("div",{className:Ce("semaphor-scope",t),ref:r,...n,children:e})),jJ={id:"",authToken:void 0},uk=m.createContext(jJ),dk=({children:e,dashboardProps:t})=>O.jsx(ck,{children:O.jsx(uk.Provider,{value:t,children:O.jsx(au,{style:{height:"100%"},children:e})})});function ma(){const e=m.useContext(uk);if(e===void 0)throw new Error("useApplicationContext must be used within a ApplicationContextProvider");return e}function zJ(e){ke(l=>l.bookmarkKey),ke(l=>l.selectedSheetId);const t=ke(l=>l.dashboard.baseQueries);ke(l=>l.actions.getCardSheet),ke(l=>l.actions.getSelectedFrame());const{authToken:n}=ma(),r=ke(l=>l.authToken),o=ke(l=>l.filterValues),i=FJ((e==null?void 0:e.refreshInterval)||"0"),s=Q2(e.sql,t);return Df({queryKey:[e.id,s,JSON.stringify(o)],queryFn:()=>Of("https://semaphor.cloud/api/v1/query",(n==null?void 0:n.accessToken)||(r==null?void 0:r.accessToken)||"",{connection_id:e.connectionId,sql:s,python:e.python===uD?"":e.python,active_filters:o}),refetchInterval:i,enabled:!!e.connectionId})}function Ia({data:e,cfg:t,customCfg:n,preferences:r}){const{dimensionKeys:o,metricKeys:i}=ar(e),s=HX(i,e,r),a=og(s,n),l=o[0],c=mx(e,l);j1(r,t),fk(r);const u=hk(t,r),f=qo((t==null?void 0:t.options)||{},r==null?void 0:r.chartOptions),h=qo(u,f),g=qo(h,(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 j1(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 fk(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 hk(e,t){var i,s,a,l,c,u,f,h,g,v,b,w;const n=j1(t,e),r=fk(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:x=>{var _,S,C,E;return ll({number:Number(x),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:((C=t==null?void 0:t.numberAxisFormat)==null?void 0:C.locale)||"",currency:((E=t==null?void 0:t.numberAxisFormat)==null?void 0:E.currency)||""})}}},[r]:{...(g=(h=(f=e==null?void 0:e.options)==null?void 0:f.scales)==null?void 0:h[r])==null?void 0:g.ticks,callback:null}},plugins:{...(v=e==null?void 0:e.options)==null?void 0:v.plugins,datalabels:{...(w=(b=e==null?void 0:e.options)==null?void 0:b.plugins)==null?void 0:w.datalabels,formatter:function(x){var _,S,C,E;return ll({number:Number(x),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:((C=t==null?void 0:t.numberAxisFormat)==null?void 0:C.locale)||"",currency:((E=t==null?void 0:t.numberAxisFormat)==null?void 0:E.currency)||""})}}}}}function BJ(e){return{...e,type:"bar",options:{...e==null?void 0:e.options,indexAxis:"y",scales:{x:{display:!0},y:{display:!0}}}}}function VJ(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 HJ(e){return{...e,type:"bar",options:{...e==null?void 0:e.options,scales:{x:{display:!0},y:{display:!0}}}}}function WJ(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 UJ(e,t){var r,o,i,s;return{...e,type:t==="stackedBar"?"bar":"line",options:{...e==null?void 0:e.options,scales:{x:{...(o=(r=e==null?void 0:e.options)==null?void 0:r.scales)==null?void 0:o.x,display:!0,stacked:!0},y:{...(s=(i=e==null?void 0:e.options)==null?void 0:i.scales)==null?void 0:s.y,display:!0,stacked:t==="stackedBar"}}}}}function qJ(e){return{...e,type:"line",options:{...e==null?void 0:e.options,scales:{x:{display:!0},y:{display:!0}}}}}function GJ(e,t){var r;return{...t,type:e,options:{...t==null?void 0:t.options,scales:{x:{display:!1},y:{display:!1}},plugins:{...(r=t==null?void 0:t.options)==null?void 0:r.plugins,legend:{position:"top",align:"center",maxHeight:0,labels:{useBorderRadius:!0,borderRadius:2}}},borderRadius:0}}}function YJ(e){return{...e,type:"radar",options:{...e==null?void 0:e.options,scales:{x:{display:!1},y:{display:!1}}}}}function KJ(e){const n=new Function("getDatalabelColor",e)(E0);return{options:n==null?void 0:n.options,plugins:(n==null?void 0:n.plugins)||[]}}function z1({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=HJ(n);return Ia({data:e,cfg:u,customCfg:r,cardType:t,userSettings:i,provider:o,preferences:s})}if(t==="horizontalBar"){const u=BJ(n);return Ia({data:e,cfg:u,customCfg:r,cardType:t,userSettings:i,provider:o,preferences:s})}if(t==="pyramid"){const u=VJ(n),{dimensionKeys:f,metricKeys:h}=ar(e),g=Tg({dataArray:e,groupKey:f[0],pivotKey:f[1],valueKey:h[0]}),v=Ia({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((x,_)=>_===1?{...x,xAxisID:b}:x)},options:{...v.options,scales:{...(a=v==null?void 0:v.options)==null?void 0:a.scales,[b]:{beginAtZero:!0,stack:1}}}}}if(t==="stackedBar"||t==="stackedLine"){const u=UJ(n,t),{dimensionKeys:f,metricKeys:h}=ar(e),g=Tg({dataArray:e,groupKey:f[0],pivotKey:f[1],valueKey:h[0]});return Ia({data:g,cfg:u,customCfg:r,cardType:t,userSettings:i,provider:o,preferences:s})}if(t==="line"){const u=qJ(n);return Ia({data:e,cfg:u,customCfg:r,cardType:t,userSettings:i,provider:o,preferences:s})}if(t==="range"){const u=WJ(n),f=qX(e),h=og(f,r),{plugins:g,options:v}=KJ((s==null?void 0:s.customVisualCode)||""),b=qo((u==null?void 0:u.options)||{},(n==null?void 0:n.options)||{}),w=qo(b,(s==null?void 0:s.chartOptions)||{}),x=qo(w,(r==null?void 0:r.options)||{}),_=qo(x,v),S=hk(n,s),C=qo(_,S),E={...C,plugins:{...C==null?void 0:C.plugins,datalabels:{...(l=C==null?void 0:C.plugins)==null?void 0:l.datalabels,formatter:($,L)=>$.map(Q=>{var ee,B,Z,G;return ll({number:Number(Q),decimalPlaces:((ee=s==null?void 0:s.numberAxisFormat)==null?void 0:ee.decimalPlaces)||0,useSuffix:!!((B=s==null?void 0:s.numberAxisFormat)!=null&&B.suffix),customSuffix:"",locale:((Z=s==null?void 0:s.numberAxisFormat)==null?void 0:Z.locale)||"",currency:((G=s==null?void 0:s.numberAxisFormat)==null?void 0:G.currency)||""})}).slice(0,2).join(" - ")}}},{dimensionKeys:P}=ar(e),A=P[0];return{type:"bar",data:{labels:[...new Set(mx(e,A))],datasets:h},options:E,plugins:[...g]}}if(t==="pie"||t==="doughnut"||t==="polarArea"){const u=GJ(t,n),{dimensionKeys:f,metricKeys:h}=ar(e),g=GX(h,e),v=og(g,r),b=f[0],w=mx(e,b),x=qo((u==null?void 0:u.options)||{},(r==null?void 0:r.options)||{}),_=qo(x,(s==null?void 0:s.chartOptions)||{}),S={..._,plugins:{..._.plugins,datalabels:{...(c=_.plugins)==null?void 0:c.datalabels,formatter:(P,A)=>{var k,I,$,L;return ll({number:Number(P),decimalPlaces:((k=s==null?void 0:s.numberAxisFormat)==null?void 0:k.decimalPlaces)||0,useSuffix:!!((I=s==null?void 0:s.numberAxisFormat)!=null&&I.suffix),customSuffix:"",locale:(($=s==null?void 0:s.numberAxisFormat)==null?void 0:$.locale)||"",currency:((L=s==null?void 0:s.numberAxisFormat)==null?void 0:L.currency)||""})}}}};return{type:t,data:{labels:w,datasets:v},options:S,plugins:[t==="doughnut"?{id:"doughnutLabel",beforeDatasetsDraw:function(P,A,k){var Z,G,q,K;const{ctx:I,data:$}=P;I.save();const L=P.getDatasetMeta(0).data[0].x,j=P.getDatasetMeta(0).data[0].y,Q=Bc(Pd());I.font="1.2rem Arial",I.fontWeight="bolder",I.fillStyle=Q,I.textAlign="center",I.textBaseline="middle";const ee=$.datasets[0].data.reduce((T,V)=>T+V,0),B=ll({number:Number(ee),decimalPlaces:((Z=s==null?void 0:s.numberAxisFormat)==null?void 0:Z.decimalPlaces)||0,useSuffix:!!((G=s==null?void 0:s.numberAxisFormat)!=null&&G.suffix),customSuffix:"",locale:((q=s==null?void 0:s.numberAxisFormat)==null?void 0:q.locale)||"",currency:((K=s==null?void 0:s.numberAxisFormat)==null?void 0:K.currency)||""});I.fillText(B,L,j)}}:""]}}if(t==="radar"){const u=YJ(n);return Ia({data:e,cfg:u,customCfg:r,cardType:t,userSettings:i,provider:o,preferences:s})}if(t==="bubble"||t==="scatter"){const{metricKeys:u}=ar(e);if(u.length<3){console.log("Bubble charts require 3 numeric columns");return}const f=UX(e),h=og(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=qo(g,(r==null?void 0:r.options)||{});return{type:t,data:{datasets:h},options:v}}return Ia({data:e,cfg:n,customCfg:r,cardType:t,userSettings:i,provider:o,preferences:s})}function XJ({chart:e,elementIndex:t,datasetIndex:n,cardType:r,cfg:o,apply:i}){const s=ke.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)&&JJ(e,t,o,i,a),["pie","doughnut","polarArea"].includes(r)&&ZJ(e,t,o,i,a),["stackedBar","pyramid"].includes(r)&&QJ({chart:e,elementIndex:t,datasetIndex:n,cfg:o,apply:i,blurColor:a})}function QJ(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,h)=>{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,w)=>w===n&&h===r?b:s),f.borderColor=(v=f==null?void 0:f.borderColor)==null?void 0:v.map((b,w)=>w===n&&h===r?b:s)}):(u=(c=t==null?void 0:t.data)==null?void 0:c.datasets)==null||u.forEach((f,h)=>{var g,v,b,w,x,_;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[h])==null?void 0:b.backgroundColor),f.borderColor=new Array(f.data.length).fill((_=(x=(w=o==null?void 0:o.data)==null?void 0:w.datasets)==null?void 0:x[h])==null?void 0:_.borderColor)}),t==null||t.update()}function JJ(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((h,g)=>g===t?h:o),c.borderColor=(f=c==null?void 0:c.borderColor)==null?void 0:f.map((h,g)=>g===t?h:o)}):(l=(a=e==null?void 0:e.data)==null?void 0:a.datasets)==null||l.forEach((c,u)=>{var f,h,g,v,b,w;c.backgroundColor=new Array(c.data.length).fill((g=(h=(f=n==null?void 0:n.data)==null?void 0:f.datasets)==null?void 0:h[u])==null?void 0:g.backgroundColor),c.borderColor=new Array(c.data.length).fill((w=(b=(v=n==null?void 0:n.data)==null?void 0:v.datasets)==null?void 0:b[u])==null?void 0:w.borderColor)}),e==null||e.update()}function ZJ(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((h,g)=>g===t?h:o),c.borderColor=(f=c==null?void 0:c.borderColor)==null?void 0:f.map((h,g)=>g===t?h:o)}):(l=(a=e==null?void 0:e.data)==null?void 0:a.datasets)==null||l.forEach((c,u)=>{var f,h,g,v,b,w,x,_;typeof c.backgroundColor=="string"&&(c.backgroundColor=(g=(h=(f=n==null?void 0:n.data)==null?void 0:f.datasets)==null?void 0:h[u])==null?void 0:g.backgroundColor,c.borderColor=(w=(b=(v=n==null?void 0:n.data)==null?void 0:v.datasets)==null?void 0:b[u])==null?void 0:w.borderColor),c.backgroundColor=(x=c==null?void 0:c.backgroundColor)==null?void 0:x.map((S,C)=>{var E;return(E=n.data.datasets[u].backgroundColor)==null?void 0:E[C]}),c.borderColor=(_=c==null?void 0:c.borderColor)==null?void 0:_.map((S,C)=>{var E;return(E=n.data.datasets[u].borderColor)==null?void 0:E[C]})}),e==null||e.update()}function eZ(e,t,n,r){var o,i;try{if(!e||!e.data)return;const{dimensionKeys:s,metricKeys:a}=ar(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=Tg({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:h}=ar(l),g=h[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 tZ(e){var s,a;const[t]=m.useState({id:"",title:"",type:"bar",data:[]}),{getCard:n}=co(),r=n(e),o=B1(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 B1(e){var ee,B,Z,G;const{onChartElementClicked:t}=ma(),[n,r]=m.useState(0),o=((ee=e==null?void 0:e.preferences)==null?void 0:ee.filterOnClickColumnIndex)===void 0?0:(B=e.preferences)==null?void 0:B.filterOnClickColumnIndex,i=ke(q=>q.bookmarkKey);ke(q=>q.isVisualEditing);const s=ke(q=>q.filteringCards),a=ke(q=>q.selectedSheetId);ke(q=>q.selectedCardId),ke(q=>q.isDashboardEditing);const l=ke(q=>q.themeStyle),c=ke(q=>q.filterValues),u=m.useRef(c),f=(Z=e==null?void 0:e.preferences)==null?void 0:Z.onClickFilter,{addFrame:h,addFilteringCard:g,setFrameCardData:v,getCardFrame:b,addOrUpdateFilterValue:w,addOrUpdateFilterValues:x,removeFilterValue:_,removeFilteringCard:S}=co(),{data:C,isLoading:E,isFetching:P,isError:A,refetch:k}=zJ(e),I=s==null?void 0:s.find(q=>q.id===e.id),$=((G=b(e.id))==null?void 0:G.cards)||[],L=($==null?void 0:$.length)==1;let j;e.data&&e.data.length>0&&(j=z1({data:e.data,cardType:e.type,cfg:e.cfg,customCfg:e.customCfg,preferences:e.preferences})),m.useEffect(()=>{!C||!C.records||I&&L||(console.log("I am firing"),v(a,e.id,(C==null?void 0:C.records)||[]))},[C,a,e.id,v,c]),m.useEffect(()=>{e.data&&(I&&L||r(n+1))},[JSON.stringify(e.data),e.type,e.cfg,e.customCfg,e.preferences,l]),m.useEffect(()=>{e.connectionId&&!I&&(u.current=c)},[c,i]);function Q(q,K,T,V){var ie,fe;let X=!1;if(!e.data)return;const N=eZ(e,K,T,V);if(console.log("fieldValues",N),t==null||t(e,N),!!(((ie=e==null?void 0:e.preferences)==null?void 0:ie.onClickFilter)??[]).length){if(I){const ue=e.id;_(ue),S(e)}else{if(X=!0,!N)return;const ue=[];N.forEach((pe,se)=>{const ne=f==null?void 0:f.find(ye=>ye.columnIndex===se);if(!ne)return;const le={filterId:e.id+"-"+pe.columnName,connectionId:e==null?void 0:e.connectionId,tableName:e.lastSelectedTable,name:pe.columnName,expression:ne.expression,valueType:Td(N[ne.columnIndex].columnValue),operation:"=",values:[N[ne.columnIndex].columnValue]};ue.push(le)}),e.id,e==null||e.connectionId,e.lastSelectedTable,N[o].columnName,(fe=e.preferences)==null||fe.filterOnClickField,Td(N[o].columnValue),N[o].columnValue,x(ue),g(e)}XJ({chart:q,elementIndex:T,datasetIndex:K,cardType:e.type,cfg:j,apply:X})}}return{isError:A,isLoading:E,isFetching:P,data:C,visualKey:n,handleDatapointClick:Q,cfg:j}}var nZ=e=>{switch(e){case"success":return iZ;case"info":return aZ;case"warning":return sZ;case"error":return lZ;default:return null}},rZ=Array(12).fill(0),oZ=({visible:e})=>m.createElement("div",{className:"sonner-loading-wrapper","data-visible":e},m.createElement("div",{className:"sonner-spinner"},rZ.map((t,n)=>m.createElement("div",{className:"sonner-loading-bar",key:`spinner-bar-${n}`})))),iZ=m.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",height:"20",width:"20"},m.createElement("path",{fillRule:"evenodd",d:"M10 18a8 8 0 100-16 8 8 0 000 16zm3.857-9.809a.75.75 0 00-1.214-.882l-3.483 4.79-1.88-1.88a.75.75 0 10-1.06 1.061l2.5 2.5a.75.75 0 001.137-.089l4-5.5z",clipRule:"evenodd"})),sZ=m.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor",height:"20",width:"20"},m.createElement("path",{fillRule:"evenodd",d:"M9.401 3.003c1.155-2 4.043-2 5.197 0l7.355 12.748c1.154 2-.29 4.5-2.599 4.5H4.645c-2.309 0-3.752-2.5-2.598-4.5L9.4 3.003zM12 8.25a.75.75 0 01.75.75v3.75a.75.75 0 01-1.5 0V9a.75.75 0 01.75-.75zm0 8.25a.75.75 0 100-1.5.75.75 0 000 1.5z",clipRule:"evenodd"})),aZ=m.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",height:"20",width:"20"},m.createElement("path",{fillRule:"evenodd",d:"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-7-4a1 1 0 11-2 0 1 1 0 012 0zM9 9a.75.75 0 000 1.5h.253a.25.25 0 01.244.304l-.459 2.066A1.75 1.75 0 0010.747 15H11a.75.75 0 000-1.5h-.253a.25.25 0 01-.244-.304l.459-2.066A1.75 1.75 0 009.253 9H9z",clipRule:"evenodd"})),lZ=m.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",height:"20",width:"20"},m.createElement("path",{fillRule:"evenodd",d:"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-8-5a.75.75 0 01.75.75v4.5a.75.75 0 01-1.5 0v-4.5A.75.75 0 0110 5zm0 10a1 1 0 100-2 1 1 0 000 2z",clipRule:"evenodd"})),cZ=()=>{let[e,t]=m.useState(document.hidden);return m.useEffect(()=>{let n=()=>{t(document.hidden)};return document.addEventListener("visibilitychange",n),()=>window.removeEventListener("visibilitychange",n)},[]),e},Sx=1,uZ=class{constructor(){this.subscribe=t=>(this.subscribers.push(t),()=>{let n=this.subscribers.indexOf(t);this.subscribers.splice(n,1)}),this.publish=t=>{this.subscribers.forEach(n=>n(t))},this.addToast=t=>{this.publish(t),this.toasts=[...this.toasts,t]},this.create=t=>{var n;let{message:r,...o}=t,i=typeof(t==null?void 0:t.id)=="number"||((n=t.id)==null?void 0:n.length)>0?t.id:Sx++,s=this.toasts.find(l=>l.id===i),a=t.dismissible===void 0?!0:t.dismissible;return s?this.toasts=this.toasts.map(l=>l.id===i?(this.publish({...l,...t,id:i,title:r}),{...l,...t,id:i,dismissible:a,title:r}):l):this.addToast({title:r,...o,dismissible:a,id:i}),i},this.dismiss=t=>(t||this.toasts.forEach(n=>{this.subscribers.forEach(r=>r({id:n.id,dismiss:!0}))}),this.subscribers.forEach(n=>n({id:t,dismiss:!0})),t),this.message=(t,n)=>this.create({...n,message:t}),this.error=(t,n)=>this.create({...n,message:t,type:"error"}),this.success=(t,n)=>this.create({...n,type:"success",message:t}),this.info=(t,n)=>this.create({...n,type:"info",message:t}),this.warning=(t,n)=>this.create({...n,type:"warning",message:t}),this.loading=(t,n)=>this.create({...n,type:"loading",message:t}),this.promise=(t,n)=>{if(!n)return;let r;n.loading!==void 0&&(r=this.create({...n,promise:t,type:"loading",message:n.loading,description:typeof n.description!="function"?n.description:void 0}));let o=t instanceof Promise?t:t(),i=r!==void 0;return o.then(async s=>{if(fZ(s)&&!s.ok){i=!1;let a=typeof n.error=="function"?await n.error(`HTTP error! status: ${s.status}`):n.error,l=typeof n.description=="function"?await n.description(`HTTP error! status: ${s.status}`):n.description;this.create({id:r,type:"error",message:a,description:l})}else if(n.success!==void 0){i=!1;let a=typeof n.success=="function"?await n.success(s):n.success,l=typeof n.description=="function"?await n.description(s):n.description;this.create({id:r,type:"success",message:a,description:l})}}).catch(async s=>{if(n.error!==void 0){i=!1;let a=typeof n.error=="function"?await n.error(s):n.error,l=typeof n.description=="function"?await n.description(s):n.description;this.create({id:r,type:"error",message:a,description:l})}}).finally(()=>{var s;i&&(this.dismiss(r),r=void 0),(s=n.finally)==null||s.call(n)}),r},this.custom=(t,n)=>{let r=(n==null?void 0:n.id)||Sx++;return this.create({jsx:t(r),id:r,...n}),r},this.subscribers=[],this.toasts=[]}},Qr=new uZ,dZ=(e,t)=>{let n=(t==null?void 0:t.id)||Sx++;return Qr.addToast({title:e,...t,id:n}),n},fZ=e=>e&&typeof e=="object"&&"ok"in e&&typeof e.ok=="boolean"&&"status"in e&&typeof e.status=="number",hZ=dZ,pZ=()=>Qr.toasts,pk=Object.assign(hZ,{success:Qr.success,info:Qr.info,warning:Qr.warning,error:Qr.error,custom:Qr.custom,message:Qr.message,promise:Qr.promise,dismiss:Qr.dismiss,loading:Qr.loading},{getHistory:pZ});function gZ(e,{insertAt:t}={}){if(!e||typeof document>"u")return;let n=document.head||document.getElementsByTagName("head")[0],r=document.createElement("style");r.type="text/css",t==="top"&&n.firstChild?n.insertBefore(r,n.firstChild):n.appendChild(r),r.styleSheet?r.styleSheet.cssText=e:r.appendChild(document.createTextNode(e))}gZ(`:where(html[dir="ltr"]),:where([data-sonner-toaster][dir="ltr"]){--toast-icon-margin-start: -3px;--toast-icon-margin-end: 4px;--toast-svg-margin-start: -1px;--toast-svg-margin-end: 0px;--toast-button-margin-start: auto;--toast-button-margin-end: 0;--toast-close-button-start: 0;--toast-close-button-end: unset;--toast-close-button-transform: translate(-35%, -35%)}:where(html[dir="rtl"]),:where([data-sonner-toaster][dir="rtl"]){--toast-icon-margin-start: 4px;--toast-icon-margin-end: -3px;--toast-svg-margin-start: 0px;--toast-svg-margin-end: -1px;--toast-button-margin-start: 0;--toast-button-margin-end: auto;--toast-close-button-start: unset;--toast-close-button-end: 0;--toast-close-button-transform: translate(35%, -35%)}:where([data-sonner-toaster]){position:fixed;width:var(--width);font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;--gray1: hsl(0, 0%, 99%);--gray2: hsl(0, 0%, 97.3%);--gray3: hsl(0, 0%, 95.1%);--gray4: hsl(0, 0%, 93%);--gray5: hsl(0, 0%, 90.9%);--gray6: hsl(0, 0%, 88.7%);--gray7: hsl(0, 0%, 85.8%);--gray8: hsl(0, 0%, 78%);--gray9: hsl(0, 0%, 56.1%);--gray10: hsl(0, 0%, 52.3%);--gray11: hsl(0, 0%, 43.5%);--gray12: hsl(0, 0%, 9%);--border-radius: 8px;box-sizing:border-box;padding:0;margin:0;list-style:none;outline:none;z-index:999999999}:where([data-sonner-toaster][data-x-position="right"]){right:max(var(--offset),env(safe-area-inset-right))}:where([data-sonner-toaster][data-x-position="left"]){left:max(var(--offset),env(safe-area-inset-left))}:where([data-sonner-toaster][data-x-position="center"]){left:50%;transform:translate(-50%)}:where([data-sonner-toaster][data-y-position="top"]){top:max(var(--offset),env(safe-area-inset-top))}:where([data-sonner-toaster][data-y-position="bottom"]){bottom:max(var(--offset),env(safe-area-inset-bottom))}:where([data-sonner-toast]){--y: translateY(100%);--lift-amount: calc(var(--lift) * var(--gap));z-index:var(--z-index);position:absolute;opacity:0;transform:var(--y);filter:blur(0);touch-action:none;transition:transform .4s,opacity .4s,height .4s,box-shadow .2s;box-sizing:border-box;outline:none;overflow-wrap:anywhere}:where([data-sonner-toast][data-styled="true"]){padding:16px;background:var(--normal-bg);border:1px solid var(--normal-border);color:var(--normal-text);border-radius:var(--border-radius);box-shadow:0 4px 12px #0000001a;width:var(--width);font-size:13px;display:flex;align-items:center;gap:6px}:where([data-sonner-toast]:focus-visible){box-shadow:0 4px 12px #0000001a,0 0 0 2px #0003}:where([data-sonner-toast][data-y-position="top"]){top:0;--y: translateY(-100%);--lift: 1;--lift-amount: calc(1 * var(--gap))}:where([data-sonner-toast][data-y-position="bottom"]){bottom:0;--y: translateY(100%);--lift: -1;--lift-amount: calc(var(--lift) * var(--gap))}:where([data-sonner-toast]) :where([data-description]){font-weight:400;line-height:1.4;color:inherit}:where([data-sonner-toast]) :where([data-title]){font-weight:500;line-height:1.5;color:inherit}:where([data-sonner-toast]) :where([data-icon]){display:flex;height:16px;width:16px;position:relative;justify-content:flex-start;align-items:center;flex-shrink:0;margin-left:var(--toast-icon-margin-start);margin-right:var(--toast-icon-margin-end)}:where([data-sonner-toast][data-promise="true"]) :where([data-icon])>svg{opacity:0;transform:scale(.8);transform-origin:center;animation:sonner-fade-in .3s ease forwards}:where([data-sonner-toast]) :where([data-icon])>*{flex-shrink:0}:where([data-sonner-toast]) :where([data-icon]) svg{margin-left:var(--toast-svg-margin-start);margin-right:var(--toast-svg-margin-end)}:where([data-sonner-toast]) :where([data-content]){display:flex;flex-direction:column;gap:2px}[data-sonner-toast][data-styled=true] [data-button]{border-radius:4px;padding-left:8px;padding-right:8px;height:24px;font-size:12px;color:var(--normal-bg);background:var(--normal-text);margin-left:var(--toast-button-margin-start);margin-right:var(--toast-button-margin-end);border:none;cursor:pointer;outline:none;display:flex;align-items:center;flex-shrink:0;transition:opacity .4s,box-shadow .2s}:where([data-sonner-toast]) :where([data-button]):focus-visible{box-shadow:0 0 0 2px #0006}:where([data-sonner-toast]) :where([data-button]):first-of-type{margin-left:var(--toast-button-margin-start);margin-right:var(--toast-button-margin-end)}:where([data-sonner-toast]) :where([data-cancel]){color:var(--normal-text);background:rgba(0,0,0,.08)}:where([data-sonner-toast][data-theme="dark"]) :where([data-cancel]){background:rgba(255,255,255,.3)}:where([data-sonner-toast]) :where([data-close-button]){position:absolute;left:var(--toast-close-button-start);right:var(--toast-close-button-end);top:0;height:20px;width:20px;display:flex;justify-content:center;align-items:center;padding:0;background:var(--gray1);color:var(--gray12);border:1px solid var(--gray4);transform:var(--toast-close-button-transform);border-radius:50%;cursor:pointer;z-index:1;transition:opacity .1s,background .2s,border-color .2s}:where([data-sonner-toast]) :where([data-close-button]):focus-visible{box-shadow:0 4px 12px #0000001a,0 0 0 2px #0003}:where([data-sonner-toast]) :where([data-disabled="true"]){cursor:not-allowed}:where([data-sonner-toast]):hover :where([data-close-button]):hover{background:var(--gray2);border-color:var(--gray5)}:where([data-sonner-toast][data-swiping="true"]):before{content:"";position:absolute;left:0;right:0;height:100%;z-index:-1}:where([data-sonner-toast][data-y-position="top"][data-swiping="true"]):before{bottom:50%;transform:scaleY(3) translateY(50%)}:where([data-sonner-toast][data-y-position="bottom"][data-swiping="true"]):before{top:50%;transform:scaleY(3) translateY(-50%)}:where([data-sonner-toast][data-swiping="false"][data-removed="true"]):before{content:"";position:absolute;inset:0;transform:scaleY(2)}:where([data-sonner-toast]):after{content:"";position:absolute;left:0;height:calc(var(--gap) + 1px);bottom:100%;width:100%}:where([data-sonner-toast][data-mounted="true"]){--y: translateY(0);opacity:1}:where([data-sonner-toast][data-expanded="false"][data-front="false"]){--scale: var(--toasts-before) * .05 + 1;--y: translateY(calc(var(--lift-amount) * var(--toasts-before))) scale(calc(-1 * var(--scale)));height:var(--front-toast-height)}:where([data-sonner-toast])>*{transition:opacity .4s}:where([data-sonner-toast][data-expanded="false"][data-front="false"][data-styled="true"])>*{opacity:0}:where([data-sonner-toast][data-visible="false"]){opacity:0;pointer-events:none}:where([data-sonner-toast][data-mounted="true"][data-expanded="true"]){--y: translateY(calc(var(--lift) * var(--offset)));height:var(--initial-height)}:where([data-sonner-toast][data-removed="true"][data-front="true"][data-swipe-out="false"]){--y: translateY(calc(var(--lift) * -100%));opacity:0}:where([data-sonner-toast][data-removed="true"][data-front="false"][data-swipe-out="false"][data-expanded="true"]){--y: translateY(calc(var(--lift) * var(--offset) + var(--lift) * -100%));opacity:0}:where([data-sonner-toast][data-removed="true"][data-front="false"][data-swipe-out="false"][data-expanded="false"]){--y: translateY(40%);opacity:0;transition:transform .5s,opacity .2s}:where([data-sonner-toast][data-removed="true"][data-front="false"]):before{height:calc(var(--initial-height) + 20%)}[data-sonner-toast][data-swiping=true]{transform:var(--y) translateY(var(--swipe-amount, 0px));transition:none}[data-sonner-toast][data-swipe-out=true][data-y-position=bottom],[data-sonner-toast][data-swipe-out=true][data-y-position=top]{animation:swipe-out .2s ease-out forwards}@keyframes swipe-out{0%{transform:translateY(calc(var(--lift) * var(--offset) + var(--swipe-amount)));opacity:1}to{transform:translateY(calc(var(--lift) * var(--offset) + var(--swipe-amount) + var(--lift) * -100%));opacity:0}}@media (max-width: 600px){[data-sonner-toaster]{position:fixed;--mobile-offset: 16px;right:var(--mobile-offset);left:var(--mobile-offset);width:100%}[data-sonner-toaster] [data-sonner-toast]{left:0;right:0;width:calc(100% - var(--mobile-offset) * 2)}[data-sonner-toaster][data-x-position=left]{left:var(--mobile-offset)}[data-sonner-toaster][data-y-position=bottom]{bottom:20px}[data-sonner-toaster][data-y-position=top]{top:20px}[data-sonner-toaster][data-x-position=center]{left:var(--mobile-offset);right:var(--mobile-offset);transform:none}}[data-sonner-toaster][data-theme=light]{--normal-bg: #fff;--normal-border: var(--gray4);--normal-text: var(--gray12);--success-bg: hsl(143, 85%, 96%);--success-border: hsl(145, 92%, 91%);--success-text: hsl(140, 100%, 27%);--info-bg: hsl(208, 100%, 97%);--info-border: hsl(221, 91%, 91%);--info-text: hsl(210, 92%, 45%);--warning-bg: hsl(49, 100%, 97%);--warning-border: hsl(49, 91%, 91%);--warning-text: hsl(31, 92%, 45%);--error-bg: hsl(359, 100%, 97%);--error-border: hsl(359, 100%, 94%);--error-text: hsl(360, 100%, 45%)}[data-sonner-toaster][data-theme=light] [data-sonner-toast][data-invert=true]{--normal-bg: #000;--normal-border: hsl(0, 0%, 20%);--normal-text: var(--gray1)}[data-sonner-toaster][data-theme=dark] [data-sonner-toast][data-invert=true]{--normal-bg: #fff;--normal-border: var(--gray3);--normal-text: var(--gray12)}[data-sonner-toaster][data-theme=dark]{--normal-bg: #000;--normal-border: hsl(0, 0%, 20%);--normal-text: var(--gray1);--success-bg: hsl(150, 100%, 6%);--success-border: hsl(147, 100%, 12%);--success-text: hsl(150, 86%, 65%);--info-bg: hsl(215, 100%, 6%);--info-border: hsl(223, 100%, 12%);--info-text: hsl(216, 87%, 65%);--warning-bg: hsl(64, 100%, 6%);--warning-border: hsl(60, 100%, 12%);--warning-text: hsl(46, 87%, 65%);--error-bg: hsl(358, 76%, 10%);--error-border: hsl(357, 89%, 16%);--error-text: hsl(358, 100%, 81%)}[data-rich-colors=true][data-sonner-toast][data-type=success],[data-rich-colors=true][data-sonner-toast][data-type=success] [data-close-button]{background:var(--success-bg);border-color:var(--success-border);color:var(--success-text)}[data-rich-colors=true][data-sonner-toast][data-type=info],[data-rich-colors=true][data-sonner-toast][data-type=info] [data-close-button]{background:var(--info-bg);border-color:var(--info-border);color:var(--info-text)}[data-rich-colors=true][data-sonner-toast][data-type=warning],[data-rich-colors=true][data-sonner-toast][data-type=warning] [data-close-button]{background:var(--warning-bg);border-color:var(--warning-border);color:var(--warning-text)}[data-rich-colors=true][data-sonner-toast][data-type=error],[data-rich-colors=true][data-sonner-toast][data-type=error] [data-close-button]{background:var(--error-bg);border-color:var(--error-border);color:var(--error-text)}.sonner-loading-wrapper{--size: 16px;height:var(--size);width:var(--size);position:absolute;inset:0;z-index:10}.sonner-loading-wrapper[data-visible=false]{transform-origin:center;animation:sonner-fade-out .2s ease forwards}.sonner-spinner{position:relative;top:50%;left:50%;height:var(--size);width:var(--size)}.sonner-loading-bar{animation:sonner-spin 1.2s linear infinite;background:var(--gray11);border-radius:6px;height:8%;left:-10%;position:absolute;top:-3.9%;width:24%}.sonner-loading-bar:nth-child(1){animation-delay:-1.2s;transform:rotate(.0001deg) translate(146%)}.sonner-loading-bar:nth-child(2){animation-delay:-1.1s;transform:rotate(30deg) translate(146%)}.sonner-loading-bar:nth-child(3){animation-delay:-1s;transform:rotate(60deg) translate(146%)}.sonner-loading-bar:nth-child(4){animation-delay:-.9s;transform:rotate(90deg) translate(146%)}.sonner-loading-bar:nth-child(5){animation-delay:-.8s;transform:rotate(120deg) translate(146%)}.sonner-loading-bar:nth-child(6){animation-delay:-.7s;transform:rotate(150deg) translate(146%)}.sonner-loading-bar:nth-child(7){animation-delay:-.6s;transform:rotate(180deg) translate(146%)}.sonner-loading-bar:nth-child(8){animation-delay:-.5s;transform:rotate(210deg) translate(146%)}.sonner-loading-bar:nth-child(9){animation-delay:-.4s;transform:rotate(240deg) translate(146%)}.sonner-loading-bar:nth-child(10){animation-delay:-.3s;transform:rotate(270deg) translate(146%)}.sonner-loading-bar:nth-child(11){animation-delay:-.2s;transform:rotate(300deg) translate(146%)}.sonner-loading-bar:nth-child(12){animation-delay:-.1s;transform:rotate(330deg) translate(146%)}@keyframes sonner-fade-in{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes sonner-fade-out{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.8)}}@keyframes sonner-spin{0%{opacity:1}to{opacity:.15}}@media (prefers-reduced-motion){[data-sonner-toast],[data-sonner-toast]>*,.sonner-loading-bar{transition:none!important;animation:none!important}}.sonner-loader{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);transform-origin:center;transition:opacity .2s,transform .2s}.sonner-loader[data-visible=false]{opacity:0;transform:scale(.8) translate(-50%,-50%)}
254
254
  `);function yp(e){return e.label!==void 0}var mZ=3,vZ="32px",bZ=4e3,yZ=356,xZ=14,wZ=20,_Z=200;function SZ(...e){return e.filter(Boolean).join(" ")}var CZ=e=>{var t,n,r,o,i,s,a,l,c,u;let{invert:f,toast:h,unstyled:g,interacting:v,setHeights:b,visibleToasts:w,heights:x,index:_,toasts:S,expanded:C,removeToast:E,defaultRichColors:P,closeButton:A,style:k,cancelButtonStyle:I,actionButtonStyle:$,className:L="",descriptionClassName:j="",duration:Q,position:ee,gap:B,loadingIcon:Z,expandByDefault:G,classNames:q,icons:K,closeButtonAriaLabel:T="Close toast",pauseWhenPageIsHidden:V,cn:X}=e,[N,ie]=m.useState(!1),[fe,ue]=m.useState(!1),[pe,se]=m.useState(!1),[ne,le]=m.useState(!1),[ye,Y]=m.useState(0),[be,_e]=m.useState(0),Pe=m.useRef(null),Te=m.useRef(null),Ue=_===0,Be=_+1<=w,Ie=h.type,Ke=h.dismissible!==!1,lt=h.className||"",It=h.descriptionClassName||"",At=m.useMemo(()=>x.findIndex(nt=>nt.toastId===h.id)||0,[x,h.id]),Ht=m.useMemo(()=>{var nt;return(nt=h.closeButton)!=null?nt:A},[h.closeButton,A]),de=m.useMemo(()=>h.duration||Q||bZ,[h.duration,Q]),Ee=m.useRef(0),Le=m.useRef(0),Ge=m.useRef(0),Ze=m.useRef(null),[Wt,Zt]=ee.split("-"),Kt=m.useMemo(()=>x.reduce((nt,ht,$t)=>$t>=At?nt:nt+ht.height,0),[x,At]),vn=cZ(),ln=h.invert||f,Lt=Ie==="loading";Le.current=m.useMemo(()=>At*B+Kt,[At,Kt]),m.useEffect(()=>{ie(!0)},[]),m.useLayoutEffect(()=>{if(!N)return;let nt=Te.current,ht=nt.style.height;nt.style.height="auto";let $t=nt.getBoundingClientRect().height;nt.style.height=ht,_e($t),b(Xt=>Xt.find(bt=>bt.toastId===h.id)?Xt.map(bt=>bt.toastId===h.id?{...bt,height:$t}:bt):[{toastId:h.id,height:$t,position:h.position},...Xt])},[N,h.title,h.description,b,h.id]);let tn=m.useCallback(()=>{ue(!0),Y(Le.current),b(nt=>nt.filter(ht=>ht.toastId!==h.id)),setTimeout(()=>{E(h)},_Z)},[h,E,b,Le]);m.useEffect(()=>{if(h.promise&&Ie==="loading"||h.duration===1/0||h.type==="loading")return;let nt,ht=de;return C||v||V&&vn?(()=>{if(Ge.current<Ee.current){let $t=new Date().getTime()-Ee.current;ht=ht-$t}Ge.current=new Date().getTime()})():ht!==1/0&&(Ee.current=new Date().getTime(),nt=setTimeout(()=>{var $t;($t=h.onAutoClose)==null||$t.call(h,h),tn()},ht)),()=>clearTimeout(nt)},[C,v,G,h,de,tn,h.promise,Ie,V,vn]),m.useEffect(()=>{let nt=Te.current;if(nt){let ht=nt.getBoundingClientRect().height;return _e(ht),b($t=>[{toastId:h.id,height:ht,position:h.position},...$t]),()=>b($t=>$t.filter(Xt=>Xt.toastId!==h.id))}},[b,h.id]),m.useEffect(()=>{h.delete&&tn()},[tn,h.delete]);function xn(){return K!=null&&K.loading?m.createElement("div",{className:"sonner-loader","data-visible":Ie==="loading"},K.loading):Z?m.createElement("div",{className:"sonner-loader","data-visible":Ie==="loading"},Z):m.createElement(oZ,{visible:Ie==="loading"})}return m.createElement("li",{"aria-live":h.important?"assertive":"polite","aria-atomic":"true",role:"status",tabIndex:0,ref:Te,className:X(L,lt,q==null?void 0:q.toast,(t=h==null?void 0:h.classNames)==null?void 0:t.toast,q==null?void 0:q.default,q==null?void 0:q[Ie],(n=h==null?void 0:h.classNames)==null?void 0:n[Ie]),"data-sonner-toast":"","data-rich-colors":(r=h.richColors)!=null?r:P,"data-styled":!(h.jsx||h.unstyled||g),"data-mounted":N,"data-promise":!!h.promise,"data-removed":fe,"data-visible":Be,"data-y-position":Wt,"data-x-position":Zt,"data-index":_,"data-front":Ue,"data-swiping":pe,"data-dismissible":Ke,"data-type":Ie,"data-invert":ln,"data-swipe-out":ne,"data-expanded":!!(C||G&&N),style:{"--index":_,"--toasts-before":_,"--z-index":S.length-_,"--offset":`${fe?ye:Le.current}px`,"--initial-height":G?"auto":`${be}px`,...k,...h.style},onPointerDown:nt=>{Lt||!Ke||(Pe.current=new Date,Y(Le.current),nt.target.setPointerCapture(nt.pointerId),nt.target.tagName!=="BUTTON"&&(se(!0),Ze.current={x:nt.clientX,y:nt.clientY}))},onPointerUp:()=>{var nt,ht,$t,Xt;if(ne||!Ke)return;Ze.current=null;let bt=Number(((nt=Te.current)==null?void 0:nt.style.getPropertyValue("--swipe-amount").replace("px",""))||0),Rn=new Date().getTime()-((ht=Pe.current)==null?void 0:ht.getTime()),Lo=Math.abs(bt)/Rn;if(Math.abs(bt)>=wZ||Lo>.11){Y(Le.current),($t=h.onDismiss)==null||$t.call(h,h),tn(),le(!0);return}(Xt=Te.current)==null||Xt.style.setProperty("--swipe-amount","0px"),se(!1)},onPointerMove:nt=>{var ht;if(!Ze.current||!Ke)return;let $t=nt.clientY-Ze.current.y,Xt=nt.clientX-Ze.current.x,bt=(Wt==="top"?Math.min:Math.max)(0,$t),Rn=nt.pointerType==="touch"?10:2;Math.abs(bt)>Rn?(ht=Te.current)==null||ht.style.setProperty("--swipe-amount",`${$t}px`):Math.abs(Xt)>Rn&&(Ze.current=null)}},Ht&&!h.jsx?m.createElement("button",{"aria-label":T,"data-disabled":Lt,"data-close-button":!0,onClick:Lt||!Ke?()=>{}:()=>{var nt;tn(),(nt=h.onDismiss)==null||nt.call(h,h)},className:X(q==null?void 0:q.closeButton,(o=h==null?void 0:h.classNames)==null?void 0:o.closeButton)},m.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"},m.createElement("line",{x1:"18",y1:"6",x2:"6",y2:"18"}),m.createElement("line",{x1:"6",y1:"6",x2:"18",y2:"18"}))):null,h.jsx||m.isValidElement(h.title)?h.jsx||h.title:m.createElement(m.Fragment,null,Ie||h.icon||h.promise?m.createElement("div",{"data-icon":"",className:X(q==null?void 0:q.icon,(i=h==null?void 0:h.classNames)==null?void 0:i.icon)},h.promise||h.type==="loading"&&!h.icon?h.icon||xn():null,h.type!=="loading"?h.icon||(K==null?void 0:K[Ie])||nZ(Ie):null):null,m.createElement("div",{"data-content":"",className:X(q==null?void 0:q.content,(s=h==null?void 0:h.classNames)==null?void 0:s.content)},m.createElement("div",{"data-title":"",className:X(q==null?void 0:q.title,(a=h==null?void 0:h.classNames)==null?void 0:a.title)},h.title),h.description?m.createElement("div",{"data-description":"",className:X(j,It,q==null?void 0:q.description,(l=h==null?void 0:h.classNames)==null?void 0:l.description)},h.description):null),m.isValidElement(h.cancel)?h.cancel:h.cancel&&yp(h.cancel)?m.createElement("button",{"data-button":!0,"data-cancel":!0,style:h.cancelButtonStyle||I,onClick:nt=>{var ht,$t;yp(h.cancel)&&Ke&&(($t=(ht=h.cancel).onClick)==null||$t.call(ht,nt),tn())},className:X(q==null?void 0:q.cancelButton,(c=h==null?void 0:h.classNames)==null?void 0:c.cancelButton)},h.cancel.label):null,m.isValidElement(h.action)?h.action:h.action&&yp(h.action)?m.createElement("button",{"data-button":!0,"data-action":!0,style:h.actionButtonStyle||$,onClick:nt=>{var ht,$t;yp(h.action)&&(nt.defaultPrevented||(($t=(ht=h.action).onClick)==null||$t.call(ht,nt),tn()))},className:X(q==null?void 0:q.actionButton,(u=h==null?void 0:h.classNames)==null?void 0:u.actionButton)},h.action.label):null))};function wP(){if(typeof window>"u"||typeof document>"u")return"ltr";let e=document.documentElement.getAttribute("dir");return e==="auto"||!e?window.getComputedStyle(document.documentElement).direction:e}var EZ=e=>{let{invert:t,position:n="bottom-right",hotkey:r=["altKey","KeyT"],expand:o,closeButton:i,className:s,offset:a,theme:l="light",richColors:c,duration:u,style:f,visibleToasts:h=mZ,toastOptions:g,dir:v=wP(),gap:b=xZ,loadingIcon:w,icons:x,containerAriaLabel:_="Notifications",pauseWhenPageIsHidden:S,cn:C=SZ}=e,[E,P]=m.useState([]),A=m.useMemo(()=>Array.from(new Set([n].concat(E.filter(V=>V.position).map(V=>V.position)))),[E,n]),[k,I]=m.useState([]),[$,L]=m.useState(!1),[j,Q]=m.useState(!1),[ee,B]=m.useState(l!=="system"?l:typeof window<"u"&&window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"),Z=m.useRef(null),G=r.join("+").replace(/Key/g,"").replace(/Digit/g,""),q=m.useRef(null),K=m.useRef(!1),T=m.useCallback(V=>{var X;(X=E.find(N=>N.id===V.id))!=null&&X.delete||Qr.dismiss(V.id),P(N=>N.filter(({id:ie})=>ie!==V.id))},[E]);return m.useEffect(()=>Qr.subscribe(V=>{if(V.dismiss){P(X=>X.map(N=>N.id===V.id?{...N,delete:!0}:N));return}setTimeout(()=>{Mo.flushSync(()=>{P(X=>{let N=X.findIndex(ie=>ie.id===V.id);return N!==-1?[...X.slice(0,N),{...X[N],...V},...X.slice(N+1)]:[V,...X]})})})}),[]),m.useEffect(()=>{if(l!=="system"){B(l);return}l==="system"&&(window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?B("dark"):B("light")),typeof window<"u"&&window.matchMedia("(prefers-color-scheme: dark)").addEventListener("change",({matches:V})=>{B(V?"dark":"light")})},[l]),m.useEffect(()=>{E.length<=1&&L(!1)},[E]),m.useEffect(()=>{let V=X=>{var N,ie;r.every(fe=>X[fe]||X.code===fe)&&(L(!0),(N=Z.current)==null||N.focus()),X.code==="Escape"&&(document.activeElement===Z.current||(ie=Z.current)!=null&&ie.contains(document.activeElement))&&L(!1)};return document.addEventListener("keydown",V),()=>document.removeEventListener("keydown",V)},[r]),m.useEffect(()=>{if(Z.current)return()=>{q.current&&(q.current.focus({preventScroll:!0}),q.current=null,K.current=!1)}},[Z.current]),E.length?m.createElement("section",{"aria-label":`${_} ${G}`,tabIndex:-1},A.map((V,X)=>{var N;let[ie,fe]=V.split("-");return m.createElement("ol",{key:V,dir:v==="auto"?wP():v,tabIndex:-1,ref:Z,className:s,"data-sonner-toaster":!0,"data-theme":ee,"data-y-position":ie,"data-x-position":fe,style:{"--front-toast-height":`${((N=k[0])==null?void 0:N.height)||0}px`,"--offset":typeof a=="number"?`${a}px`:a||vZ,"--width":`${yZ}px`,"--gap":`${b}px`,...f},onBlur:ue=>{K.current&&!ue.currentTarget.contains(ue.relatedTarget)&&(K.current=!1,q.current&&(q.current.focus({preventScroll:!0}),q.current=null))},onFocus:ue=>{ue.target instanceof HTMLElement&&ue.target.dataset.dismissible==="false"||K.current||(K.current=!0,q.current=ue.relatedTarget)},onMouseEnter:()=>L(!0),onMouseMove:()=>L(!0),onMouseLeave:()=>{j||L(!1)},onPointerDown:ue=>{ue.target instanceof HTMLElement&&ue.target.dataset.dismissible==="false"||Q(!0)},onPointerUp:()=>Q(!1)},E.filter(ue=>!ue.position&&X===0||ue.position===V).map((ue,pe)=>{var se,ne;return m.createElement(CZ,{key:ue.id,icons:x,index:pe,toast:ue,defaultRichColors:c,duration:(se=g==null?void 0:g.duration)!=null?se:u,className:g==null?void 0:g.className,descriptionClassName:g==null?void 0:g.descriptionClassName,invert:t,visibleToasts:h,closeButton:(ne=g==null?void 0:g.closeButton)!=null?ne:i,interacting:j,position:V,style:g==null?void 0:g.style,unstyled:g==null?void 0:g.unstyled,classNames:g==null?void 0:g.classNames,cancelButtonStyle:g==null?void 0:g.cancelButtonStyle,actionButtonStyle:g==null?void 0:g.actionButtonStyle,removeToast:T,toasts:E.filter(le=>le.position==ue.position),heights:k.filter(le=>le.position==ue.position),setHeights:I,expandByDefault:o,gap:b,loadingIcon:w,expanded:$,pauseWhenPageIsHidden:S,cn:C})}))})):null};function RZ(e,t){const n=ke(u=>u.selectedSheetId),r=ke(u=>u.selectedFrameId),o=ke(u=>u.isDashboardEditing),i=ke(u=>u.isVisualEditing),{addFrame:s,getSelectedFrame:a,setSelectedFrameId:l}=ke(u=>u.actions);m.useEffect(()=>{const u=h=>{if(o&&((h.metaKey||h.ctrlKey)&&h.key==="c"&&(navigator.clipboard.writeText(JSON.stringify(a())),pk.success("Card copied to clipboard")),(h.ctrlKey||h.metaKey)&&h.key==="v")){console.log("Ctrl+V has been pressed");try{navigator.clipboard.readText().then(g=>{try{const v=JSON.parse(g);if(v&&v.id){v.id=la();const b=v.activeCardId;v.cards.forEach(w=>{const x=w.id;w.id=la(),x===b&&(v.activeCardId=w.id,w.title=`${w.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 ay;const gk="HoverCard",[mk,mye]=Zn(gk,[Ti]),V1=Ti(),[OZ,H1]=mk(gk),PZ=e=>{const{__scopeHoverCard:t,children:n,open:r,defaultOpen:o,onOpenChange:i,openDelay:s=700,closeDelay:a=300}=e,l=V1(t),c=m.useRef(0),u=m.useRef(0),f=m.useRef(!1),h=m.useRef(!1),[g=!1,v]=wr({prop:r,defaultProp:o,onChange:i}),b=m.useCallback(()=>{clearTimeout(u.current),c.current=window.setTimeout(()=>v(!0),s)},[s,v]),w=m.useCallback(()=>{clearTimeout(c.current),!f.current&&!h.current&&(u.current=window.setTimeout(()=>v(!1),a))},[a,v]),x=m.useCallback(()=>v(!1),[v]);return m.useEffect(()=>()=>{clearTimeout(c.current),clearTimeout(u.current)},[]),m.createElement(OZ,{scope:t,open:g,onOpenChange:v,onOpen:b,onClose:w,onDismiss:x,hasSelectionRef:f,isPointerDownOnContentRef:h},m.createElement(Bf,l,n))},TZ="HoverCardTrigger",DZ=m.forwardRef((e,t)=>{const{__scopeHoverCard:n,...r}=e,o=H1(TZ,n),i=V1(n);return m.createElement(Vf,he({asChild:!0},i),m.createElement(Qe.a,he({"data-state":o.open?"open":"closed"},r,{ref:t,onPointerEnter:Me(e.onPointerEnter,Mg(o.onOpen)),onPointerLeave:Me(e.onPointerLeave,Mg(o.onClose)),onFocus:Me(e.onFocus,o.onOpen),onBlur:Me(e.onBlur,o.onClose),onTouchStart:Me(e.onTouchStart,s=>s.preventDefault())})))}),AZ="HoverCardPortal",[vye,$Z]=mk(AZ,{forceMount:void 0}),Cx="HoverCardContent",kZ=m.forwardRef((e,t)=>{const n=$Z(Cx,e.__scopeHoverCard),{forceMount:r=n.forceMount,...o}=e,i=H1(Cx,e.__scopeHoverCard);return m.createElement(er,{present:r||i.open},m.createElement(MZ,he({"data-state":i.open?"open":"closed"},o,{onPointerEnter:Me(e.onPointerEnter,Mg(i.onOpen)),onPointerLeave:Me(e.onPointerLeave,Mg(i.onClose)),ref:t})))}),MZ=m.forwardRef((e,t)=>{const{__scopeHoverCard:n,onEscapeKeyDown:r,onPointerDownOutside:o,onFocusOutside:i,onInteractOutside:s,...a}=e,l=H1(Cx,n),c=V1(n),u=m.useRef(null),f=_t(t,u),[h,g]=m.useState(!1);return m.useEffect(()=>{if(h){const v=document.body;return ay=v.style.userSelect||v.style.webkitUserSelect,v.style.userSelect="none",v.style.webkitUserSelect="none",()=>{v.style.userSelect=ay,v.style.webkitUserSelect=ay}}},[h]),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&&IZ(u.current).forEach(b=>b.setAttribute("tabindex","-1"))}),m.createElement(jf,{asChild:!0,disableOutsidePointerEvents:!1,onInteractOutside:s,onEscapeKeyDown:r,onPointerDownOutside:o,onFocusOutside:Me(i,v=>{v.preventDefault()}),onDismiss:l.onDismiss},m.createElement(Hf,he({},c,a,{onPointerDown:Me(a.onPointerDown,v=>{v.currentTarget.contains(v.target)&&g(!0),l.hasSelectionRef.current=!1,l.isPointerDownOnContentRef.current=!0}),ref:f,style:{...a.style,userSelect:h?"text":void 0,WebkitUserSelect:h?"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 Mg(e){return t=>t.pointerType==="touch"?void 0:e()}function IZ(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 NZ=PZ,LZ=DZ,vk=kZ,W1=NZ,U1=LZ,Fm=H.forwardRef(({className:e,align:t="center",sideOffset:n=4,...r},o)=>O.jsx(vk,{ref:o,align:t,sideOffset:n,className:Ce("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}));Fm.displayName=vk.displayName;function FZ({card:e}){const{setCardInfo:t}=co();return O.jsxs(W1,{openDelay:0,children:[O.jsx(U1,{children:O.jsx(nQ,{className:"size-4 text-muted-foreground/40"})}),O.jsx(Fm,{align:"start",className:"w-[300px]",onMouseDown:n=>n.stopPropagation(),children:O.jsx(is,{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 q1=H.forwardRef(({className:e,containerClassName:t,containerStyle:n,...r},o)=>O.jsx("div",{style:n,className:Ce("relative w-full overflow-auto",t),children:O.jsx("table",{ref:o,className:Ce("w-full caption-bottom text-sm",e),...r})}));q1.displayName="Table";const G1=H.forwardRef(({className:e,...t},n)=>O.jsx("thead",{ref:n,className:Ce("[&_tr]:border-b",e),...t}));G1.displayName="TableHeader";const Y1=H.forwardRef(({className:e,...t},n)=>O.jsx("tbody",{ref:n,className:Ce("[&_tr:last-child]:border-0",e),...t}));Y1.displayName="TableBody";const jZ=H.forwardRef(({className:e,...t},n)=>O.jsx("tfoot",{ref:n,className:Ce("border-t bg-muted/50 font-medium [&>tr]:last:border-b-0",e),...t}));jZ.displayName="TableFooter";const yd=H.forwardRef(({className:e,...t},n)=>O.jsx("tr",{ref:n,className:Ce("border-b transition-colors hover:bg-muted/50 data-[state=selected]:bg-muted",e),...t}));yd.displayName="TableRow";const K1=H.forwardRef(({className:e,...t},n)=>O.jsx("th",{ref:n,className:Ce("h-12 px-4 text-left align-middle font-medium text-muted-foreground [&:has([role=checkbox])]:pr-0",e),...t}));K1.displayName="TableHead";const Ig=H.forwardRef(({className:e,...t},n)=>O.jsx("td",{ref:n,className:Ce("p-4 align-middle [&:has([role=checkbox])]:pr-0",e),...t}));Ig.displayName="TableCell";const zZ=H.forwardRef(({className:e,...t},n)=>O.jsx("caption",{ref:n,className:Ce("mt-4 text-sm text-muted-foreground",e),...t}));zZ.displayName="TableCaption";/**
255
255
  * table-core
256
256
  *
@@ -29174,7 +29174,7 @@ function rJ({ card: e }) {
29174
29174
  const v = f && f - u !== 0 ? (u - f) / f : null;
29175
29175
  return (
29176
29176
  // <div className="@container min-w-[320px]">
29177
- /* @__PURE__ */ R.jsxs("div", { className: "kpi-card flex grow flex-col overflow-scroll", children: [
29177
+ /* @__PURE__ */ R.jsxs("div", { className: "kpi-card flex grow flex-col overflow-auto", children: [
29178
29178
  /* @__PURE__ */ R.jsxs(E1, { className: "grow pb-3", children: [
29179
29179
  /* @__PURE__ */ R.jsx(
29180
29180
  ga,
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../chunks/index-LiVhH7z4.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-8_ihvapU.js");require("react");require("react-dom");exports.Dashboard=e.Dashboard;
@@ -1,4 +1,4 @@
1
- import { D as p } from "../chunks/index-yvohbzaw.js";
1
+ import { D as p } from "../chunks/index-xyzOo2JH.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-LiVhH7z4.js"),n=require("./chunks/dashboard-plus-Tqe1mSSw.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:i,isFetching:a,cfg:x,visualKey:C,handleDatapointClick:f}=e.useDashboardCard(t),l=e.useDashboardStore(s=>s.themeStyle),d=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(d,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:i||a,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(d,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":i||a})})}),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&&(i||a)&&e.jsxRuntimeExports.jsx(n.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(d,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},l==null?void 0:l.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=n.SelectComponent;exports.Surfboard=n.DashboardPlus;exports.useEditorAside=n.useEditorAside;exports.DashboardCard=N;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./chunks/index-8_ihvapU.js"),n=require("./chunks/dashboard-plus--ioQlIzB.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:i,isFetching:a,cfg:x,visualKey:C,handleDatapointClick:f}=e.useDashboardCard(t),l=e.useDashboardStore(s=>s.themeStyle),d=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(d,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:i||a,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(d,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":i||a})})}),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&&(i||a)&&e.jsxRuntimeExports.jsx(n.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(d,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},l==null?void 0:l.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=n.SelectComponent;exports.Surfboard=n.DashboardPlus;exports.useEditorAside=n.useEditorAside;exports.DashboardCard=N;
package/dist/index.js CHANGED
@@ -1,7 +1,7 @@
1
- import { u as _, a as k, b as r, c as w, j as t, C as F, E as f, d as P, T as L, e as R, f as h, g as B, h as q, i as K, k as Y, l as G, K as O, S as V, m as z, n as H, o as J } from "./chunks/index-yvohbzaw.js";
2
- import { B as se, s as ae, D as oe, q as re, N as ne, I as ie, r as le, L as de, w as ue, t as ce, M as fe, y as he, J as Ce, x as me, A as xe, v as pe, z as ge, F as je, p as De, H as be, G as Se } from "./chunks/index-yvohbzaw.js";
3
- import { L as M } from "./chunks/dashboard-plus-5-7yzt3Q.js";
4
- import { S as Ee, D as Ie, u as Ae } from "./chunks/dashboard-plus-5-7yzt3Q.js";
1
+ import { u as _, a as k, b as r, c as w, j as t, C as F, E as f, d as P, T as L, e as R, f as h, g as B, h as q, i as K, k as Y, l as G, K as O, S as V, m as z, n as H, o as J } from "./chunks/index-xyzOo2JH.js";
2
+ import { B as se, s as ae, D as oe, q as re, N as ne, I as ie, r as le, L as de, w as ue, t as ce, M as fe, y as he, J as Ce, x as me, A as xe, v as pe, z as ge, F as je, p as De, H as be, G as Se } from "./chunks/index-xyzOo2JH.js";
3
+ import { L as M } from "./chunks/dashboard-plus-IRCMSJv_.js";
4
+ import { S as Ee, D as Ie, u as Ae } from "./chunks/dashboard-plus-IRCMSJv_.js";
5
5
  import Q from "react";
6
6
  import "react-dom";
7
7
  function Z({
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("../chunks/dashboard-plus-Tqe1mSSw.js");require("../chunks/index-LiVhH7z4.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--ioQlIzB.js");require("../chunks/index-8_ihvapU.js");require("react");require("react-dom");exports.Surfboard=r.DashboardPlus;
@@ -1,5 +1,5 @@
1
- import { D as i } from "../chunks/dashboard-plus-5-7yzt3Q.js";
2
- import "../chunks/index-yvohbzaw.js";
1
+ import { D as i } from "../chunks/dashboard-plus-IRCMSJv_.js";
2
+ import "../chunks/index-xyzOo2JH.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.58",
8
+ "version": "0.0.59",
9
9
  "description": "Fully interactive and customizable dashboards for your apps.",
10
10
  "keywords": [
11
11
  "react",