@erdoai/ui 0.1.109 → 0.1.110
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/iframe.global.js +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.js +1 -1
- package/package.json +1 -1
package/dist/iframe.global.js
CHANGED
|
@@ -40,7 +40,7 @@ ${r.map(([o,i])=>{let s=i.theme?.[a]||i.color;return s?` --color-${o}: ${s};`:n
|
|
|
40
40
|
}
|
|
41
41
|
`).join(`
|
|
42
42
|
`)}}):null},XM=ol;function ZM({active:e,payload:t,className:r,indicator:a="dot",hideLabel:n=false,hideIndicator:o=false,label:i,labelFormatter:s,labelClassName:l,formatter:u,color:c,nameKey:f,labelKey:d}){let{config:p}=YM(),h=ie(()=>{if(n||!t?.length)return null;let[v]=t,g=`${d||v?.dataKey||v?.name||"value"}`,x=ix(p,v,g),w=!d&&typeof i=="string"?p[i]?.label||i:x?.label;return s?Y("div",{className:Jr("font-medium",l),children:s(w,t)}):w?Y("div",{className:Jr("font-medium",l),children:w}):null},[i,s,t,n,l,p,d]);if(!e||!t?.length)return null;let m=t.length===1&&a!=="dot";return tt("div",{className:Jr("border-border/50 bg-background grid min-w-[8rem] items-start gap-1.5 rounded-lg border px-2.5 py-1.5 text-xs shadow-xl",r),children:[m?null:h,Y("div",{className:"grid gap-1.5",children:t.map((v,g)=>{let x=`${f||v.name||v.dataKey||"value"}`,w=ix(p,v,x),L=c||v.payload.fill||v.color;return Y("div",{className:Jr("[&>svg]:text-muted-foreground flex w-full flex-wrap items-stretch gap-2 [&>svg]:h-2.5 [&>svg]:w-2.5",a==="dot"&&"items-center"),children:u&&v?.value!==void 0&&v.name?u(v.value,v.name,v,g,v.payload):tt(KM,{children:[w?.icon?Y(w.icon,{}):!o&&Y("div",{className:Jr("shrink-0 rounded-[2px] border-(--color-border) bg-(--color-bg)",{"h-2.5 w-2.5":a==="dot","w-1":a==="line","w-0 border-[1.5px] border-dashed bg-transparent":a==="dashed","my-0.5":m&&a==="dashed"}),style:{"--color-bg":L,"--color-border":L}}),tt("div",{className:Jr("flex flex-1 justify-between leading-none",m?"items-end":"items-center"),children:[tt("div",{className:"grid gap-1.5",children:[m?h:null,Y("span",{className:"text-muted-foreground",children:w?.label||v.name})]}),v.value&&Y("span",{className:"text-foreground font-mono font-medium tabular-nums",children:v.value.toLocaleString()})]})]})},v.dataKey)})})]})}var QM=zo;function JM({className:e,hideIcon:t=false,payload:r,verticalAlign:a="bottom",nameKey:n}){let{config:o}=YM();return r?.length?Y("div",{className:Jr("flex items-center justify-center gap-4",a==="top"?"pb-3":"pt-3",e),children:r.map(i=>{let s=`${n||i.dataKey||"value"}`,l=ix(o,i,s);return tt("div",{className:Jr("[&>svg]:text-muted-foreground flex items-center gap-1.5 [&>svg]:h-3 [&>svg]:w-3"),children:[l?.icon&&!t?Y(l.icon,{}):Y("div",{className:"h-2 w-2 shrink-0 rounded-[2px]",style:{backgroundColor:i.color}}),l?.label]},i.value)})}):null}function ix(e,t,r){if(typeof t!="object"||t===null)return;let a="payload"in t&&typeof t.payload=="object"&&t.payload!==null?t.payload:void 0,n=r;return r in t&&typeof t[r]=="string"?n=t[r]:a&&r in a&&typeof a[r]=="string"&&(n=a[r]),n in e?e[n]:e[r]}function xa(e,t,r){if(e==null)return "";if(r==="date"){let a=V7(e);if(a&&t)try{let n=t;t==="%Y%m%d"?n="%Y-%m-%d":t==="%d%m%Y"?n="%d-%m-%Y":t==="%m%d%Y"&&(n="%m-%d-%Y");let o=n.match(/%./g)||[],i="aAbBcdejHILmMpSUwWxXyYZ%";return o.some(u=>{let c=u.charAt(1);return !i.includes(c)})||o.length===0?(console.warn(`Invalid date format directives in: ${t}. Using default format.`),a.toISOString().split("T")[0]):fi(n)(a)}catch(n){return console.warn(`Invalid date format: ${t}. Error: ${n}. Falling back to default.`),a.toISOString().split("T")[0]}if(a){let n=a.toISOString();return n.endsWith("T00:00:00.000Z")?n.split("T")[0]:a.toISOString().replace("T"," ").replace(".000Z"," UTC")}return String(e)}if(r==="number"){let a=typeof e=="string"?parseFloat(e.replace(/,/g,"")):e;if(isNaN(a))return String(e);let n=t;if(t&&(n=t.replace(/(\.\d+)f%/,"$1%")),!n)return Math.abs(a)>=1e3?St(",.0f")(a):Math.abs(a)>=100?St(".1f")(a):Math.abs(a)>=10?St(".2f")(a):Math.abs(a)>=1?St(".3f")(a):St(".3g")(a);if(n.includes("%"))return a>=0&&a<=1?St(n)(a):St(n)(a/100);try{return St(n)(a)}catch(o){return console.warn(`Error formatting number with format '${n}': ${o}. Falling back to default.`),Math.abs(a)>=1e3?St(",.0f")(a):Math.abs(a)>=1?St(".2f")(a):St(".3g")(a)}}return String(e)}function V7(e){if(!e)return null;if(e instanceof Date)return Br(e)?e:null;if(typeof e=="number"){let r=new Date(e);return Br(r)?r:null}if(typeof e=="string"){if(/^\d{4}-\d{2}-\d{2}$/.test(e)){let n=new Date(e+"T00:00:00.000Z");if(Br(n))return n}let a=["yyyy-MM-dd","yyyyMMdd","yyyy-MM-dd'T'HH:mm:ss","yyyyMMddHHmmss","MM/dd/yyyy","dd/MM/yyyy"];for(let n of a){let o=Su(e,n,new Date);if(Br(o))return o}}let t=new Date(e);return Br(t)?t:null}q();function eR({onZoomChange:e}={}){let[t,r]=fe({refAreaLeft:null,refAreaRight:null,refAreaTop:null,refAreaBottom:null,zooming:false}),[a,n]=fe({x:[null,null],y:[null,null]}),o=le(c=>{!c?.xValue||!c?.yValue||r(f=>({...f,refAreaLeft:c.xValue,refAreaTop:c.yValue,zooming:true}));},[]),i=le(c=>{!c?.xValue||!c?.yValue||!t.zooming||r(f=>({...f,refAreaRight:c.xValue,refAreaBottom:c.yValue}));},[t.zooming]),s=le(()=>{if(!t.refAreaLeft||!t.refAreaRight||!t.refAreaTop||!t.refAreaBottom){r({refAreaLeft:null,refAreaRight:null,refAreaTop:null,refAreaBottom:null,zooming:false});return}let[c,f]=[Math.min(t.refAreaLeft,t.refAreaRight),Math.max(t.refAreaLeft,t.refAreaRight)],[d,p]=[Math.min(t.refAreaTop,t.refAreaBottom),Math.max(t.refAreaTop,t.refAreaBottom)],h={x:[c,f],y:[d,p]};n(h),e?.(h),r({refAreaLeft:null,refAreaRight:null,refAreaTop:null,refAreaBottom:null,zooming:false});},[t,e]),l=le(()=>{let c={x:[null,null],y:[null,null]};n(c),e?.(c);},[e]),u=ie(()=>({onZoomStart:o,onZoomMove:i,onZoomEnd:s,onResetZoom:l}),[o,i,s,l]);return {zoomState:t,customDomain:a,handlers:u}}(e=>typeof Qa<"u"?Qa:typeof Proxy<"u"?new Proxy(e,{get:(t,r)=>(typeof Qa<"u"?Qa:t)[r]}):e)(function(e){if(typeof Qa<"u")return Qa.apply(this,arguments);throw Error('Dynamic require of "'+e+'" is not supported')});var G7=(e,t)=>()=>(e&&(t=e(e=0)),t);var Yt=G7(()=>{});Yt();var ba={};hp(ba,{getFontEmbedCSS:()=>DQ,toBlob:()=>EQ,toCanvas:()=>Cl,toJpeg:()=>kQ,toPixelData:()=>AQ,toPng:()=>OQ,toSvg:()=>bR});function tR(e,t){if(e.match(/^[a-z]+:\/\//i))return e;if(e.match(/^\/\//))return window.location.protocol+e;if(e.match(/^[a-z]+:/i))return e;let r=document.implementation.createHTMLDocument(),a=r.createElement("base"),n=r.createElement("a");return r.head.appendChild(a),r.body.appendChild(n),t&&(a.href=t),n.href=e,n.href}var rR=(()=>{let e=0,t=()=>`0000${(Math.random()*36**4<<0).toString(36)}`.slice(-4);return ()=>(e+=1,`u${t()}${e}`)})();function _r(e){let t=[];for(let r=0,a=e.length;r<a;r++)t.push(e[r]);return t}var Ti=null;function lp(e={}){return Ti||(e.includeStyleProperties?(Ti=e.includeStyleProperties,Ti):(Ti=_r(window.getComputedStyle(document.documentElement)),Ti))}function sp(e,t){let a=(e.ownerDocument.defaultView||window).getComputedStyle(e).getPropertyValue(t);return a?parseFloat(a.replace("px","")):0}function K7(e){let t=sp(e,"border-left-width"),r=sp(e,"border-right-width");return e.clientWidth+t+r}function $7(e){let t=sp(e,"border-top-width"),r=sp(e,"border-bottom-width");return e.clientHeight+t+r}function up(e,t={}){let r=t.width||K7(e),a=t.height||$7(e);return {width:r,height:a}}function aR(){let e,t;try{t=process;}catch{}let r=t&&t.env?t.env.devicePixelRatio:null;return r&&(e=parseInt(r,10),Number.isNaN(e)&&(e=1)),e||window.devicePixelRatio||1}var ur=16384;function nR(e){(e.width>ur||e.height>ur)&&(e.width>ur&&e.height>ur?e.width>e.height?(e.height*=ur/e.width,e.width=ur):(e.width*=ur/e.height,e.height=ur):e.width>ur?(e.height*=ur/e.width,e.width=ur):(e.width*=ur/e.height,e.height=ur));}function oR(e,t={}){return e.toBlob?new Promise(r=>{e.toBlob(r,t.type?t.type:"image/png",t.quality?t.quality:1);}):new Promise(r=>{let a=window.atob(e.toDataURL(t.type?t.type:void 0,t.quality?t.quality:void 0).split(",")[1]),n=a.length,o=new Uint8Array(n);for(let i=0;i<n;i+=1)o[i]=a.charCodeAt(i);r(new Blob([o],{type:t.type?t.type:"image/png"}));})}function Mi(e){return new Promise((t,r)=>{let a=new Image;a.onload=()=>{a.decode().then(()=>{requestAnimationFrame(()=>t(a));});},a.onerror=r,a.crossOrigin="anonymous",a.decoding="async",a.src=e;})}async function Y7(e){return Promise.resolve().then(()=>new XMLSerializer().serializeToString(e)).then(encodeURIComponent).then(t=>`data:image/svg+xml;charset=utf-8,${t}`)}async function iR(e,t,r){let a="http://www.w3.org/2000/svg",n=document.createElementNS(a,"svg"),o=document.createElementNS(a,"foreignObject");return n.setAttribute("width",`${t}`),n.setAttribute("height",`${r}`),n.setAttribute("viewBox",`0 0 ${t} ${r}`),o.setAttribute("width","100%"),o.setAttribute("height","100%"),o.setAttribute("x","0"),o.setAttribute("y","0"),o.setAttribute("externalResourcesRequired","true"),n.appendChild(o),o.appendChild(e),Y7(n)}var Rt=(e,t)=>{if(e instanceof t)return true;let r=Object.getPrototypeOf(e);return r===null?false:r.constructor.name===t.name||Rt(r,t)};function X7(e){let t=e.getPropertyValue("content");return `${e.cssText} content: '${t.replace(/'|"/g,"")}';`}function Z7(e,t){return lp(t).map(r=>{let a=e.getPropertyValue(r),n=e.getPropertyPriority(r);return `${r}: ${a}${n?" !important":""};`}).join(" ")}function Q7(e,t,r,a){let n=`.${e}:${t}`,o=r.cssText?X7(r):Z7(r,a);return document.createTextNode(`${n}{${o}}`)}function sR(e,t,r,a){let n=window.getComputedStyle(e,r),o=n.getPropertyValue("content");if(o===""||o==="none")return;let i=rR();try{t.className=`${t.className} ${i}`;}catch{return}let s=document.createElement("style");s.appendChild(Q7(i,r,n,a)),t.appendChild(s);}function lR(e,t,r){sR(e,t,":before",r),sR(e,t,":after",r);}var uR="application/font-woff",cR="image/jpeg",J7={woff:uR,woff2:uR,ttf:"application/font-truetype",eot:"application/vnd.ms-fontobject",png:"image/png",jpg:cR,jpeg:cR,gif:"image/gif",tiff:"image/tiff",svg:"image/svg+xml",webp:"image/webp"};function eQ(e){let t=/\.([^./]*?)$/g.exec(e);return t?t[1]:""}function Ri(e){let t=eQ(e).toLowerCase();return J7[t]||""}function tQ(e){return e.split(/,/)[1]}function Il(e){return e.search(/^(data:)/)!==-1}function lx(e,t){return `data:${t};base64,${e}`}async function ux(e,t,r){let a=await fetch(e,t);if(a.status===404)throw new Error(`Resource "${a.url}" not found`);let n=await a.blob();return new Promise((o,i)=>{let s=new FileReader;s.onerror=i,s.onloadend=()=>{try{o(r({res:a,result:s.result}));}catch(l){i(l);}},s.readAsDataURL(n);})}var sx={};function rQ(e,t,r){let a=e.replace(/\?.*/,"");return r&&(a=e),/ttf|otf|eot|woff2?/i.test(a)&&(a=a.replace(/.*\//,"")),t?`[${t}]${a}`:a}async function _i(e,t,r){let a=rQ(e,t,r.includeQueryParams);if(sx[a]!=null)return sx[a];r.cacheBust&&(e+=(/\?/.test(e)?"&":"?")+new Date().getTime());let n;try{let o=await ux(e,r.fetchRequestInit,({res:i,result:s})=>(t||(t=i.headers.get("Content-Type")||""),tQ(s)));n=lx(o,t);}catch(o){n=r.imagePlaceholder||"";let i=`Failed to fetch resource: ${e}`;o&&(i=typeof o=="string"?o:o.message),i&&console.warn(i);}return sx[a]=n,n}async function aQ(e){let t=e.toDataURL();return t==="data:,"?e.cloneNode(false):Mi(t)}async function nQ(e,t){if(e.currentSrc){let o=document.createElement("canvas"),i=o.getContext("2d");o.width=e.clientWidth,o.height=e.clientHeight,i?.drawImage(e,0,0,o.width,o.height);let s=o.toDataURL();return Mi(s)}let r=e.poster,a=Ri(r),n=await _i(r,a,t);return Mi(n)}async function oQ(e,t){var r;try{if(!((r=e?.contentDocument)===null||r===void 0)&&r.body)return await Sl(e.contentDocument.body,t,!0)}catch{}return e.cloneNode(false)}async function iQ(e,t){return Rt(e,HTMLCanvasElement)?aQ(e):Rt(e,HTMLVideoElement)?nQ(e,t):Rt(e,HTMLIFrameElement)?oQ(e,t):e.cloneNode(fR(e))}var sQ=e=>e.tagName!=null&&e.tagName.toUpperCase()==="SLOT",fR=e=>e.tagName!=null&&e.tagName.toUpperCase()==="SVG";async function lQ(e,t,r){var a,n;if(fR(t))return t;let o=[];return sQ(e)&&e.assignedNodes?o=_r(e.assignedNodes()):Rt(e,HTMLIFrameElement)&&(!((a=e.contentDocument)===null||a===void 0)&&a.body)?o=_r(e.contentDocument.body.childNodes):o=_r(((n=e.shadowRoot)!==null&&n!==void 0?n:e).childNodes),o.length===0||Rt(e,HTMLVideoElement)||await o.reduce((i,s)=>i.then(()=>Sl(s,r)).then(l=>{l&&t.appendChild(l);}),Promise.resolve()),t}function uQ(e,t,r){let a=t.style;if(!a)return;let n=window.getComputedStyle(e);n.cssText?(a.cssText=n.cssText,a.transformOrigin=n.transformOrigin):lp(r).forEach(o=>{let i=n.getPropertyValue(o);o==="font-size"&&i.endsWith("px")&&(i=`${Math.floor(parseFloat(i.substring(0,i.length-2)))-.1}px`),Rt(e,HTMLIFrameElement)&&o==="display"&&i==="inline"&&(i="block"),o==="d"&&t.getAttribute("d")&&(i=`path(${t.getAttribute("d")})`),a.setProperty(o,i,n.getPropertyPriority(o));});}function cQ(e,t){Rt(e,HTMLTextAreaElement)&&(t.innerHTML=e.value),Rt(e,HTMLInputElement)&&t.setAttribute("value",e.value);}function fQ(e,t){if(Rt(e,HTMLSelectElement)){let a=Array.from(t.children).find(n=>e.value===n.getAttribute("value"));a&&a.setAttribute("selected","");}}function dQ(e,t,r){return Rt(t,Element)&&(uQ(e,t,r),lR(e,t,r),cQ(e,t),fQ(e,t)),t}async function pQ(e,t){let r=e.querySelectorAll?e.querySelectorAll("use"):[];if(r.length===0)return e;let a={};for(let o=0;o<r.length;o++){let s=r[o].getAttribute("xlink:href");if(s){let l=e.querySelector(s),u=document.querySelector(s);!l&&u&&!a[s]&&(a[s]=await Sl(u,t,true));}}let n=Object.values(a);if(n.length){let o="http://www.w3.org/1999/xhtml",i=document.createElementNS(o,"svg");i.setAttribute("xmlns",o),i.style.position="absolute",i.style.width="0",i.style.height="0",i.style.overflow="hidden",i.style.display="none";let s=document.createElementNS(o,"defs");i.appendChild(s);for(let l=0;l<n.length;l++)s.appendChild(n[l]);e.appendChild(i);}return e}async function Sl(e,t,r){return !r&&t.filter&&!t.filter(e)?null:Promise.resolve(e).then(a=>iQ(a,t)).then(a=>lQ(e,a,t)).then(a=>dQ(e,a,t)).then(a=>pQ(a,t))}var dR=/url\((['"]?)([^'"]+?)\1\)/g,mQ=/url\([^)]+\)\s*format\((["']?)([^"']+)\1\)/g,hQ=/src:\s*(?:url\([^)]+\)\s*format\([^)]+\)[,;]\s*)+/g;function gQ(e){let t=e.replace(/([.*+?^${}()|\[\]\/\\])/g,"\\$1");return new RegExp(`(url\\(['"]?)(${t})(['"]?\\))`,"g")}function vQ(e){let t=[];return e.replace(dR,(r,a,n)=>(t.push(n),r)),t.filter(r=>!Il(r))}async function yQ(e,t,r,a,n){try{let o=r?tR(t,r):t,i=Ri(t),s;if(n);else s=await _i(o,i,a);return e.replace(gQ(t),`$1${s}$3`)}catch{}return e}function xQ(e,{preferredFontFormat:t}){return t?e.replace(hQ,r=>{for(;;){let[a,,n]=mQ.exec(r)||[];if(!n)return "";if(n===t)return `src: ${a};`}}):e}function cx(e){return e.search(dR)!==-1}async function cp(e,t,r){if(!cx(e))return e;let a=xQ(e,r);return vQ(a).reduce((o,i)=>o.then(s=>yQ(s,i,t,r)),Promise.resolve(a))}async function Ni(e,t,r){var a;let n=(a=t.style)===null||a===void 0?void 0:a.getPropertyValue(e);if(n){let o=await cp(n,null,r);return t.style.setProperty(e,o,t.style.getPropertyPriority(e)),true}return false}async function bQ(e,t){await Ni("background",e,t)||await Ni("background-image",e,t),await Ni("mask",e,t)||await Ni("-webkit-mask",e,t)||await Ni("mask-image",e,t)||await Ni("-webkit-mask-image",e,t);}async function wQ(e,t){let r=Rt(e,HTMLImageElement);if(!(r&&!Il(e.src))&&!(Rt(e,SVGImageElement)&&!Il(e.href.baseVal)))return;let a=r?e.src:e.href.baseVal,n=await _i(a,Ri(a),t);await new Promise((o,i)=>{e.onload=o,e.onerror=t.onImageErrorHandler?(...l)=>{try{o(t.onImageErrorHandler(...l));}catch(u){i(u);}}:i;let s=e;s.decode&&(s.decode=o),s.loading==="lazy"&&(s.loading="eager"),r?(e.srcset="",e.src=n):e.href.baseVal=n;});}async function IQ(e,t){let a=_r(e.childNodes).map(n=>fx(n,t));await Promise.all(a).then(()=>e);}async function fx(e,t){Rt(e,Element)&&(await bQ(e,t),await wQ(e,t),await IQ(e,t));}function pR(e,t){let{style:r}=e;t.backgroundColor&&(r.backgroundColor=t.backgroundColor),t.width&&(r.width=`${t.width}px`),t.height&&(r.height=`${t.height}px`);let a=t.style;return a!=null&&Object.keys(a).forEach(n=>{r[n]=a[n];}),e}var mR={};async function hR(e){let t=mR[e];if(t!=null)return t;let a=await(await fetch(e)).text();return t={url:e,cssText:a},mR[e]=t,t}async function gR(e,t){let r=e.cssText,a=/url\(["']?([^"')]+)["']?\)/g,o=(r.match(/url\([^)]+\)/g)||[]).map(async i=>{let s=i.replace(a,"$1");return s.startsWith("https://")||(s=new URL(s,e.url).href),ux(s,t.fetchRequestInit,({result:l})=>(r=r.replace(i,`url(${l})`),[i,l]))});return Promise.all(o).then(()=>r)}function vR(e){if(e==null)return [];let t=[],r=/(\/\*[\s\S]*?\*\/)/gi,a=e.replace(r,""),n=new RegExp("((@.*?keyframes [\\s\\S]*?){([\\s\\S]*?}\\s*?)})","gi");for(;;){let l=n.exec(a);if(l===null)break;t.push(l[0]);}a=a.replace(n,"");let o=/@import[\s\S]*?url\([^)]*\)[\s\S]*?;/gi,i="((\\s*?(?:\\/\\*[\\s\\S]*?\\*\\/)?\\s*?@media[\\s\\S]*?){([\\s\\S]*?)}\\s*?})|(([\\s\\S]*?){([\\s\\S]*?)})",s=new RegExp(i,"gi");for(;;){let l=o.exec(a);if(l===null){if(l=s.exec(a),l===null)break;o.lastIndex=s.lastIndex;}else s.lastIndex=o.lastIndex;t.push(l[0]);}return t}async function SQ(e,t){let r=[],a=[];return e.forEach(n=>{if("cssRules"in n)try{_r(n.cssRules||[]).forEach((o,i)=>{if(o.type===CSSRule.IMPORT_RULE){let s=i+1,l=o.href,u=hR(l).then(c=>gR(c,t)).then(c=>vR(c).forEach(f=>{try{n.insertRule(f,f.startsWith("@import")?s+=1:n.cssRules.length);}catch(d){console.error("Error inserting rule from remote css",{rule:f,error:d});}})).catch(c=>{console.error("Error loading remote css",c.toString());});a.push(u);}});}catch(o){let i=e.find(s=>s.href==null)||document.styleSheets[0];n.href!=null&&a.push(hR(n.href).then(s=>gR(s,t)).then(s=>vR(s).forEach(l=>{i.insertRule(l,i.cssRules.length);})).catch(s=>{console.error("Error loading remote stylesheet",s);})),console.error("Error inlining remote css file",o);}}),Promise.all(a).then(()=>(e.forEach(n=>{if("cssRules"in n)try{_r(n.cssRules||[]).forEach(o=>{r.push(o);});}catch(o){console.error(`Error while reading CSS rules from ${n.href}`,o);}}),r))}function CQ(e){return e.filter(t=>t.type===CSSRule.FONT_FACE_RULE).filter(t=>cx(t.style.getPropertyValue("src")))}async function PQ(e,t){if(e.ownerDocument==null)throw new Error("Provided element is not within a Document");let r=_r(e.ownerDocument.styleSheets),a=await SQ(r,t);return CQ(a)}function yR(e){return e.trim().replace(/["']/g,"")}function LQ(e){let t=new Set;function r(a){(a.style.fontFamily||getComputedStyle(a).fontFamily).split(",").forEach(o=>{t.add(yR(o));}),Array.from(a.children).forEach(o=>{o instanceof HTMLElement&&r(o);});}return r(e),t}async function dx(e,t){let r=await PQ(e,t),a=LQ(e);return (await Promise.all(r.filter(o=>a.has(yR(o.style.fontFamily))).map(o=>{let i=o.parentStyleSheet?o.parentStyleSheet.href:null;return cp(o.cssText,i,t)}))).join(`
|
|
43
|
-
`)}async function xR(e,t){let r=t.fontEmbedCSS!=null?t.fontEmbedCSS:t.skipFonts?null:await dx(e,t);if(r){let a=document.createElement("style"),n=document.createTextNode(r);a.appendChild(n),e.firstChild?e.insertBefore(a,e.firstChild):e.appendChild(a);}}async function bR(e,t={}){let{width:r,height:a}=up(e,t),n=await Sl(e,t,true);return await xR(n,t),await fx(n,t),pR(n,t),await iR(n,r,a)}async function Cl(e,t={}){let{width:r,height:a}=up(e,t),n=await bR(e,t),o=await Mi(n),i=document.createElement("canvas"),s=i.getContext("2d"),l=t.pixelRatio||aR(),u=t.canvasWidth||r,c=t.canvasHeight||a;return i.width=u*l,i.height=c*l,t.skipAutoScale||nR(i),i.style.width=`${u}`,i.style.height=`${c}`,t.backgroundColor&&(s.fillStyle=t.backgroundColor,s.fillRect(0,0,i.width,i.height)),s.drawImage(o,0,0,i.width,i.height),i}async function AQ(e,t={}){let{width:r,height:a}=up(e,t);return (await Cl(e,t)).getContext("2d").getImageData(0,0,r,a).data}async function OQ(e,t={}){return (await Cl(e,t)).toDataURL()}async function kQ(e,t={}){return (await Cl(e,t)).toDataURL("image/jpeg",t.quality||1)}async function EQ(e,t={}){let r=await Cl(e,t);return await oR(r)}async function DQ(e,t={}){return dx(e,t)}Yt();Yt();var wR={status:"idle",error:null,data:null};q();Yt();function Qn(e){let t=(a,n)=>{switch(n.type){case "loading":return {...a,status:"loading"};case "success":return {...a,status:"success",data:n.data};case "error":return {...a,status:"error",error:n.error};default:return a}};function r({status:a,...n}){return {...n,status:a,isError:a==="error",isLoading:a==="loading",isSuccess:a==="success",isIdle:a==="idle"}}return function(a){let n=te(),[o,i]=Wp(t,wR),s=r(o);function l(c){!n.current&&c&&(n.current=c);}async function u(){try{if(!n.current&&!a?.selector)throw new Error("A dom element must be selected: use the selector option or the ref");a?.onStart&&a.onStart(),i({type:"loading"}),a?.onLoading&&a.onLoading();let c=a?.selector?document.querySelector(a.selector):n.current,f=await e(c,a);return i({type:"success",data:f}),a?.onSuccess&&a.onSuccess(f),f}catch(c){let f=c?.message||"Unknown error";return console.error("Error generating image from component:",f),i({type:"error",error:f}),a?.onError&&a.onError(f),null}}return [s,()=>{u();},l]}}Yt();Qn(ba.toSvg);Qn(ba.toJpeg);var px=Qn(ba.toPng);Qn(ba.toBlob);Qn(ba.toCanvas);Qn(ba.toPixelData);Yt();var FQ=(e=>(e.Idle="idle",e.Loading="loading",e.Success="success",e.Error="error",e))(FQ||{});Yt();q();var fp=(...e)=>e.filter((t,r,a)=>!!t&&t.trim()!==""&&a.indexOf(t)===r).join(" ").trim();var IR=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();var SR=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(t,r,a)=>a?a.toUpperCase():r.toLowerCase());var mx=e=>{let t=SR(e);return t.charAt(0).toUpperCase()+t.slice(1)};q();var CR={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};var PR=e=>{for(let t in e)if(t.startsWith("aria-")||t==="role"||t==="title")return true;return false};var LR=ve(({color:e="currentColor",size:t=24,strokeWidth:r=2,absoluteStrokeWidth:a,className:n="",children:o,iconNode:i,...s},l)=>y("svg",{ref:l,...CR,width:t,height:t,stroke:e,strokeWidth:a?Number(r)*24/Number(t):r,className:fp("lucide",n),...!o&&!PR(s)&&{"aria-hidden":"true"},...s},[...i.map(([u,c])=>y(u,c)),...Array.isArray(o)?o:[o]]));var AR=(e,t)=>{let r=ve(({className:a,...n},o)=>y(LR,{ref:o,iconNode:t,className:fp(`lucide-${IR(mx(e))}`,`lucide-${e}`,a),...n}));return r.displayName=mx(e),r};var jQ=[["path",{d:"M12 15V3",key:"m9g1x1"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["path",{d:"m7 10 5 5 5-5",key:"brsn70"}]],Pl=AR("download",jQ);q();function OR(e){let t={max:null,min:null};if(e.maxValue)if(e.type==="number"){let r=parseFloat(e.maxValue);isNaN(r)?console.warn(`Error parsing max value ${e.maxValue}. Falling back to default.`):t.max=r;}else e.type==="date"?typeof e.maxValue=="string"&&/^\d{4}-\d{2}-\d{2}$/.test(e.maxValue)?t.max=new Date(e.maxValue+"T00:00:00.000Z").getTime():t.max=new Date(e.maxValue).getTime():t.max=e.maxValue;if(e.minValue)if(e.type==="number"){let r=parseFloat(e.minValue);isNaN(r)?console.warn(`Error parsing min value ${e.minValue}. Falling back to default.`):t.min=r;}else e.type==="date"?typeof e.minValue=="string"&&/^\d{4}-\d{2}-\d{2}$/.test(e.minValue)?t.min=new Date(e.minValue+"T00:00:00.000Z").getTime():t.min=new Date(e.minValue).getTime():t.min=e.minValue;return t}function Za(e,t,r){return xa(e,t,r)}function BQ({title:e,subtitle:t,data:r,displayConfig:a,dataConfig:n,ChartComponent:o,PointComponent:i,disableAnimation:s,onZoomChange:l,stacked:u,enableDownload:c=true,onDownloadSuccess:f,onDownloadError:d,className:p,chartContainerClassName:h,downloadButtonClassName:m,resetZoomButtonClassName:v}){let{zoomState:g,customDomain:x,handlers:w}=eR({onZoomChange:l}),L=le(M=>{let B=`${(e||"chart").toLowerCase().replace(/\s+/g,"-")}.png`,V=document.createElement("a");V.download=B,V.href=M,V.click(),f?.(B);},[e,f]),P=le(M=>{console.error("Error converting chart to image:",M),d?.(M);},[d]),[{isLoading:O},T,E]=px({onSuccess:L,onError:P}),W=le(async()=>{T();},[T]),j=ie(()=>OR(n.xAxis),[n.xAxis]),N=ie(()=>n.yAxes.map(M=>OR(M)),[n.yAxes]),K=ie(()=>r?n.chartType==="histogram"?r.map(M=>({[n.xAxis.key]:(M.binStart+M.binEnd)/2,frequency:M.frequency,binStart:M.binStart,binEnd:M.binEnd})):n.xAxis.type==="number"?r.map(M=>({...M,[n.xAxis.key]:Number(M[n.xAxis.key])})).filter(M=>!isNaN(M[n.xAxis.key])):n.xAxis.type==="date"?r.map(M=>{let B=M[n.xAxis.key],V;return B instanceof Date?V=B.getTime():typeof B=="number"?V=B:typeof B=="string"?V=new Date(B).getTime():V=NaN,{...M,[n.xAxis.key]:V}}).filter(M=>!isNaN(M[n.xAxis.key])):r:[],[r,n.xAxis.key,n.chartType,n.xAxis.type]),X=ie(()=>{if(n.xAxis.type==="category"||!K.length)return;let M=K.map(V=>Number(V[n.xAxis.key])).filter(V=>!isNaN(V)),B=[...new Set(M)].sort((V,oe)=>V-oe);if(!(n.chartType==="scatter"||B.length>20))return B},[K,n.xAxis.key,n.xAxis.type,n.chartType]),ee=ie(()=>{if(!X||X.length<2)return;let B=(X[X.length-1]-X[0])*.05;return [X[0]-B,X[X.length-1]+B]},[X]),G=le((M,B)=>{if(!M?.length)return {min:null,max:null};let V=M.map(oe=>Number(oe[B])).filter(oe=>!isNaN(oe));return {min:Math.min(...V),max:Math.max(...V)}},[]),b=ie(()=>({x:x.x[0]!==null&&x.x[1]!==null?[x.x[0],x.x[1]]:(()=>{if(j.min!==null&&j.max!==null)return [j.min,j.max];let M=G(K,n.xAxis.key);return [M.min??"auto",M.max??"auto"]})(),y:n.yAxes.map((M,B)=>{if(x.y[0]!==null&&x.y[1]!==null)return [x.y[0],x.y[1]];let oe=n.series.filter(F=>(F.axisIndex||0)===B).reduce((F,Z)=>{let Q=G(K,Z.key);return {min:F.min===null?Q.min:Q.min===null?F.min:Math.min(F.min,Q.min),max:F.max===null?Q.max:Q.max===null?F.max:Math.max(F.max,Q.max)}},{min:null,max:null});if(M.type==="number"&&M.maxValue){let F=parseFloat(M.maxValue);if(oe.max===null||F<=oe.max*1.5)return [N[B].min??oe.min??"auto",N[B].max??oe.max??"auto"]}return [N[B].min??oe.min??"auto",N[B].max??oe.max??"auto"]})}),[x.x,x.y,j,N,n.series,n.yAxes,n.xAxis.key,K,G]),I=le((M,B,V)=>{if(V.dataKey===n.xAxis.key)return Za(M,n.xAxis.format,n.xAxis.type);let oe=n.series.find(Be=>Be.key===V.dataKey),F=oe?.name||String(B).replace(/^dataset_\d+_/,"");if(n.chartType==="histogram"){let Be=V.payload;if(Be.binStart!==void 0){let ge=Za(Be.binStart,n.xAxis.format,n.xAxis.type),vt=Za(Be.binEnd,n.xAxis.format,n.xAxis.type);return `Count: ${M} (${ge} - ${vt})`}}let Z=oe?.axisIndex||0,Q=n.yAxes[Z],U=Za(M,Q?.format,Q?.type);return `${F}: ${U}`},[n.xAxis,n.series,n.yAxes,n.chartType]),[k,S]=fe(false);ue(()=>{let M=setTimeout(()=>{S(true);},1700);return ()=>clearTimeout(M)},[]);let C=le((M,B)=>{if(B&&B.length>0){let V=B[0].payload[n.xAxis.key],oe=Za(V,n.xAxis.format,n.xAxis.type);return tt("div",{className:"flex flex-col",children:[Y("span",{children:n.xAxis.label}),Y("span",{className:"font-mono tabular-nums",children:oe})]})}return M},[n.xAxis.key,n.xAxis.format,n.xAxis.type,n.xAxis.label]),A=le(M=>Y(ZM,{...M,formatter:I,labelFormatter:C}),[I,C]),_=le(M=>Y(JM,{...M}),[]),z=ie(()=>{let M=K.length,B=M>30?8:M>20?12:M>10?16:20,V=0;for(let Z of K){let Q=Za(Z[n.xAxis.key],n.xAxis.format,n.xAxis.type),U=typeof Q=="string"?Q:String(Q??"");V=Math.max(V,Math.min(U.length,B));}let oe=V*7*M>500,F=oe?Math.min(Math.max(40,V*5.5+20),140):50;return {maxLabelLen:B,shouldAngle:oe,height:F}},[K,n.xAxis.key,n.xAxis.format,n.xAxis.type]),H=ie(()=>!!(s||(r?.length||0)>100||k),[s,r?.length,k]);return tt("div",{className:p||"w-full items-center mt-0 flex flex-col gap-0",children:[(e||c)&&tt("div",{className:"w-full items-center mb-2 relative",children:[e&&Y("h2",{className:"text-center text-base pt-0 mt-0 mb-2",children:e}),c&&Y("button",{onClick:W,disabled:O,className:m||"text-sm text-gray-500 hover:text-gray-700 disabled:opacity-50 h-8 absolute right-0 top-[-5px] px-2 py-1 border rounded hover:bg-gray-50",title:"Download chart as PNG",children:Y(Pl,{className:"w-4 h-4"})})]}),t&&Y("p",{className:"text-center text-sm text-muted-foreground mb-2",children:t}),Y(ip,{ref:E,config:a,className:h||"w-full border border-border/50 p-4 rounded-md",debounceResize:true,children:tt(o,{accessibilityLayer:true,data:K,isAnimationActive:!H,onMouseDown:w.onZoomStart,onMouseMove:w.onZoomMove,onMouseUp:w.onZoomEnd,onDoubleClick:w.onResetZoom,style:{userSelect:"none",cursor:"crosshair"},children:[Y(jd,{vertical:false}),Y(Hd,{dataKey:n.xAxis.key,domain:ee||b.x,type:n.xAxis.type==="date"||!n.xAxis.type?"number":n.xAxis.type,tickFormatter:M=>{let B=Za(M,n.xAxis.format,n.xAxis.type),V=typeof B=="string"?B:String(B??"");return V.length>z.maxLabelLen?V.slice(0,z.maxLabelLen)+"\u2026":V},tickLine:false,tickMargin:10,height:z.height,axisLine:false,allowDataOverflow:true,interval:"preserveStartEnd",ticks:X,...z.shouldAngle?{angle:-45,textAnchor:"end"}:{},children:Y(sr,{value:n.xAxis.label,position:"bottom",offset:z.shouldAngle?-5:-10,style:{textAnchor:"middle"}})}),n.yAxes.map((M,B)=>Y(Vd,{yAxisId:B,orientation:B===0?"left":"right",domain:u?void 0:b.y[B],type:M.type==="date"||!M.type?"number":M.type,tickFormatter:V=>{let oe=Za(V,M.format,M.type);return typeof oe=="string"&&oe.length>20?oe.slice(0,20)+"...":oe},allowDataOverflow:true,children:Y(sr,{value:M.label,position:B===0?"insideLeft":"insideRight",angle:-90,dx:B===0?-15:15,style:{textAnchor:"middle"}})},`y-axis-${M.key}`)),Y(XM,{content:A}),Y(QM,{content:_,verticalAlign:"top"}),n.series.map(M=>Y(i,{dataKey:M.key,yAxisId:M.axisIndex||0,fill:M.color||"blue",stroke:M.color||"blue",dot:{fill:M.color||"blue",stroke:M.color||"blue"},radius:4,name:M.name,isAnimationActive:!H,animationDuration:1500,animationBegin:0,stackId:n.chartType==="bar"&&u?"stack":void 0},`${M.key}-${u?"stacked":"unstacked"}`)),g.refAreaLeft&&g.refAreaRight&&g.refAreaTop&&g.refAreaBottom&&Y(_d,{x1:g.refAreaLeft,x2:g.refAreaRight,y1:g.refAreaTop,y2:g.refAreaBottom,strokeOpacity:.2,stroke:"currentColor",fill:"currentColor",fillOpacity:.02,style:{pointerEvents:"none"}})]})}),x.x[0]!==null&&Y("button",{onClick:w.onResetZoom,className:v||"text-sm text-gray-500 hover:text-gray-700 mt-2 px-3 py-1 border rounded hover:bg-gray-50",children:"Reset Zoom"})]})}function wa(e){return Y(Di,{fallback:Y("div",{className:e.errorClassName||"text-red-500",children:"Failed to load chart"}),children:Y(BQ,{...e})})}function dp(e){return Y(wa,{...e,ChartComponent:Jy,PointComponent:Ud})}function hx(e){return Y(wa,{...e,ChartComponent:Qy,PointComponent:Bd})}q();var qQ=(e,t,r)=>{let a=parseInt(e.slice(1,3),16)/255,n=parseInt(e.slice(3,5),16)/255,o=parseInt(e.slice(5,7),16)/255,i=Math.max(a,n,o),s=Math.min(a,n,o),l,u,c=(i+s)/2;if(i===s)l=u=0;else {let m=i-s;switch(u=c>.5?m/(2-i-s):m/(i+s),i){case a:l=(n-o)/m+(n<o?6:0);break;case n:l=(o-a)/m+2;break;case o:l=(a-n)/m+4;break;default:l=0;}l/=6;}let f=t/r,d=l*360+(f*40-20),p=Math.min(100,u*100+f*25),h=Math.max(35,Math.min(65,c*100-f*20));return `hsl(${d}, ${p}%, ${h}%)`};function zQ({title:e,subtitle:t,data:r,displayConfig:a,dataConfig:n,className:o,chartContainerClassName:i}){let s=n.series[0]?.color||"blue",l=n.yAxes[0]?.format,u=n.yAxes[0]?.type||"number",c=ie(()=>r.reduce((f,d)=>(n.series.forEach(p=>{let h=p.key,m=String(d[n.xAxis.key]||"Unknown"),v=parseFloat(d[h]||"0");isNaN(v)||f.push({name:m,value:v,seriesId:h,displayName:m});}),f),[]).sort((f,d)=>d.value-f.value),[r,n.series,n.xAxis.key]);return tt("div",{className:o||"items-center",children:[Y("h2",{className:"text-center text-base mb-2",children:e}),t&&Y("p",{className:"text-center text-sm text-muted-foreground mb-2",children:t}),Y(ip,{config:a,className:i||"w-full border border-border/50 rounded-md",children:tt(rx,{width:400,height:400,children:[Y(kd,{data:c,dataKey:"value",nameKey:"displayName",cx:"50%",cy:"50%",outerRadius:150,label:f=>`${f.displayName}: ${xa(f.value,l,u)}`,children:c.map((f,d)=>Y(Rr,{fill:d===0?s:qQ(s,d,c.length)},`cell-${f.name}`))}),Y(ol,{formatter:(f,d)=>[xa(f,l,u),d]}),Y(zo,{})]})})]})}function gx(e){return Y(Di,{fallback:Y("div",{className:"text-red-500",children:"Failed to load chart"}),children:Y(zQ,{...e})})}function vx(e){return Y(wa,{...e,ChartComponent:bl,PointComponent:Ai})}var UQ=e=>{let{cx:t,cy:r,payload:a,xAxis:n,yAxis:o}=e,i=a.value||a.z||0,l=`hsl(${240-Math.min(1,Math.max(0,i/100))*240}, 70%, 50%)`,u=n.scale.bandwidth?n.scale.bandwidth():20,c=o.scale.bandwidth?o.scale.bandwidth():20;return Y("rect",{x:t-u/2,y:r-c/2,width:u,height:c,fill:l,fillOpacity:.8,stroke:"#fff",strokeWidth:1})},WQ=e=>Y(Ai,{...e,shape:UQ});function yx(e){return Y(wa,{...e,ChartComponent:bl,PointComponent:WQ})}q();q();var xx=Ce(null);function HQ({children:e,config:t}){return Y(xx.Provider,{value:t,children:e})}function kR(){let e=De(xx);if(!e)throw new Error("useErdoConfig must be used within an ErdoProvider");return e}function ER(){return De(xx)}var Ia=new Map;function bx(e,t,r,a,n){let o=n?.length?JSON.stringify(n):"";return `${e}|${t}|${r??""}|${a??""}|${o}`}function Jn(e){let t=e.filters?.length?JSON.stringify(e.filters):"";return `${e.datasetSlug}::${e.sqlQuery||""}::${e.resourceKey||""}::${t}`}async function DR(e,t,r,a,n,o){if(e.dataFetcher)return e.dataFetcher.fetchDatasetContents(t,r,a,n,o);let i={limit:1e3};a&&(i.query=a),n&&(i.resource_key=n),o?.length&&(i.filters=o);let s=`${e.baseUrl}/datasets/${encodeURIComponent(t)}/query`,l={"Content-Type":"application/json"},u=e.token||e.authToken;u&&(l.Authorization=`Bearer ${u}`);let c=await fetch(s,{method:"POST",headers:l,body:JSON.stringify(i)});if(!c.ok)throw new Error(`Failed to fetch dataset contents: ${c.statusText}`);let f=await c.json();return !f.Columns||!f.Rows||f.Columns.length===0?[]:f.Rows.map(d=>{let p={};return f.Columns.forEach((h,m)=>{p[h]=d[m];}),p})}function pp(e,t,r,a){let n=kR(),o=!!e&&!!t,i=bx(e,t,r,a,void 0),s=o?Ia.get(i):void 0,[l,u]=fe(s),[c,f]=fe(o&&!s),[d,p]=fe(null),[h,m]=fe(0),v=Zi(()=>n,[n]);ue(()=>{if(!o){u(void 0),f(false),p(null);return}if(Ia.has(i)&&h===0){u(Ia.get(i)),f(false),p(null);return}let x=false;return f(true),p(null),DR(v,e,t,r,a).then(w=>{x||(Ia.set(i,w),u(w),f(false));}).catch(w=>{x||(p(w instanceof Error?w:new Error(String(w))),f(false));}),()=>{x=true;}},[v,e,t,r,a,o,h,i]);let g=le(()=>m(x=>x+1),[]);return {data:l,isLoading:c,error:d,refetch:g}}function TR(e,t){let r=ER(),[a,n]=fe(0),o=le(()=>n(d=>d+1),[]),i=ie(()=>{let d=new Set;return e.filter(p=>{let h=Jn(p);return d.has(h)?false:(d.add(h),true)})},[e]),s=ie(()=>i.map(Jn).join("|"),[i]),l=ie(()=>i.map(d=>bx(d.datasetSlug,t,d.sqlQuery,d.resourceKey,d.filters)),[i,t]),[u,c]=fe(()=>{if(!r||!t||i.length===0)return new Map;let d=new Map;return i.forEach((p,h)=>{let m=Ia.get(l[h]);d.set(Jn(p),{data:m,isLoading:!m,error:null,refetch:o});}),d}),f=Zi(()=>r,[r]);return ue(()=>{if(!f||!t||i.length===0){c(new Map);return}let d=i.filter((m,v)=>a>0?true:!Ia.has(l[v]));if(d.length===0){let m=new Map;i.forEach((v,g)=>{m.set(Jn(v),{data:Ia.get(l[g]),isLoading:false,error:null,refetch:o});}),c(m);return}let p=false,h=new Map;return i.forEach((m,v)=>{let g=Ia.get(l[v]);h.set(Jn(m),{data:g,isLoading:!g,error:null,refetch:o});}),c(h),d.forEach(m=>{let v=Jn(m),g=bx(m.datasetSlug,t,m.sqlQuery,m.resourceKey,m.filters);DR(f,m.datasetSlug,t,m.sqlQuery,m.resourceKey,m.filters).then(x=>{p||(Ia.set(g,x),c(w=>{let L=new Map(w);return L.set(v,{data:x,isLoading:false,error:null,refetch:o}),L}));}).catch(x=>{p||c(w=>{let L=new Map(w);return L.set(v,{data:void 0,isLoading:false,error:x instanceof Error?x:new Error(String(x)),refetch:o}),L});});}),()=>{p=true;}},[f,s,t,a,l.join(","),o]),e.map(d=>{let p=Jn(d);return u.get(p)||{data:void 0,isLoading:!(!f||!t),error:null,refetch:o}})}function VQ(e){return e.replace(/[A-Z]/g,t=>`_${t.toLowerCase()}`).replace(/^_/,"")}function Ll(e,t){if(!e.length)return t;let r=e[0];if(r[t]!==void 0)return t;let a=t.toLowerCase();if(r[a]!==void 0)return a;let n=VQ(t);if(r[n]!==void 0)return n;let o=t.toLowerCase().replace(/_/g,"");return Object.keys(r).find(s=>s.toLowerCase().replace(/_/g,"")===o)||t}function GQ(){return ["yyyy-MM-dd","yyyyMMdd","yyyy-MM-dd'T'HH:mm:ss","yyyyMMddHHmmss"]}function KQ(e){if(!e)return null;if(typeof e=="string"){if(/^\d{4}-\d{2}-\d{2}$/.test(e)){let n=new Date(e+"T00:00:00.000Z");if(Br(n))return n.getTime()}let a=GQ();for(let n of a){let o=Su(e,n,new Date);if(Br(o))return o.getTime()}}let t=new Date(e);return Br(t)?t.getTime():null}function mp(e,t,r,a){let n=t==="index"&&e[t]===void 0?a:e[t];return r==="date"?KQ(n):r==="number"?parseFloat(n):n}function $Q(e,t,r){if(e===t.key)return t.type||"category";let a=r.find(n=>n.key===e);return a?a.type||"number":"category"}function Fi(e,t,r,a){return !a||a.length===0?e:[...e].sort((n,o)=>{for(let i of a){let s=$Q(i.key,t,r),l=mp(n,i.key,s,n.index),u=mp(o,i.key,s,o.index);if(l===u)continue;let c=typeof l=="number"&&typeof u=="number"?l-u:l instanceof Date&&u instanceof Date?l.getTime()-u.getTime():String(l).localeCompare(String(u));return i.direction==="asc"?c:-c}return 0})}function MR(e,t){let r=Math.ceil(e.length/t),a=[e[0]];for(let n=r;n<e.length-1;n+=r)a.push(e[n]);return a[a.length-1]!==e[e.length-1]&&a.push(e[e.length-1]),a}function YQ(e,t,r,a,n,o,i){let s=e.reduce((c,f)=>{let d=f[t];return c[d]||(c[d]=[]),c[d].push(f),c},{}),l=Object.entries(s);if(l.length>a){let c=Math.ceil(l.length/a),f=l.reduce((d,[p,h],m)=>{let v=Math.floor(m/c);return d[v]||(d[v]={key:p,items:[]}),d[v].items.push(...h),d},[]).map(({key:d,items:p})=>({[t]:d,...r.reduce((h,m)=>{let v=p.map(g=>parseFloat(g[m.key])).filter(g=>!isNaN(g));return h[m.key]=v.length?v.reduce((g,x)=>g+x,0)/v.length:null,h},{})}));return i&&i.length>0?Fi(f,n,o,i):f}let u=l.map(([c,f])=>{let d=r.reduce((h,m)=>{let v=f.map(g=>parseFloat(g[m.key])).filter(g=>!isNaN(g));return h[m.key]=v.length?v.reduce((g,x)=>g+x,0)/v.length:null,h},{}),p=Object.values(d).filter(h=>h!==null).reduce((h,m)=>h+m,0);return {[t]:c,...d,index:p}});return i&&i.length>0?Fi(u,n,o,i):u}function XQ(e,t,r,a){let n=e.map(u=>parseFloat(u[t])).filter(u=>!isNaN(u)),o=Math.min(...n),s=(Math.max(...n)-o)/a,l=Array.from({length:a},(u,c)=>({binStart:o+c*s,binEnd:o+(c+1)*s,count:0,seriesValues:r.reduce((f,d)=>(f[d.key]=[],f),{})}));return e.forEach(u=>{let c=parseFloat(u[t]);if(isNaN(c))return;let f=Math.min(Math.floor((c-o)/s),a-1);l[f].count++,r.forEach(d=>{let p=parseFloat(u[d.key]);isNaN(p)||l[f].seriesValues[d.key].push(p);});}),l.map(u=>({[t]:(u.binStart+u.binEnd)/2,...r.reduce((c,f)=>{let d=u.seriesValues[f.key];return c[f.key]=d.length?d.reduce((p,h)=>p+h,0)/d.length:null,c},{}),count:u.count,index:r.reduce((c,f)=>{let d=u.seriesValues[f.key],p=d.length?d.reduce((h,m)=>h+m,0)/d.length:0;return c+p},0)})).filter(u=>r.some(c=>u[c.key]!==null))}function _R(e,t,r,a,n){let o=e.map((p,h)=>{let m=mp(p,t,n.type||"number",h);return typeof m=="number"?m:parseFloat(m)}).filter(p=>!isNaN(p)),i=Math.min(...o),u=(Math.max(...o)-i)/a,c=Array.from({length:a},(p,h)=>({binStart:Number((i+h*u).toFixed(2)),binEnd:Number((i+(h+1)*u).toFixed(2)),frequency:0,[t]:Number((i+(h+.5)*u).toFixed(2))}));o.forEach(p=>{let h=Math.min(Math.floor((p-i)/u),a-1);c[h].frequency++;});let f=c.filter(p=>p.frequency>0);return (c.length-f.length)/c.length*100>30?_R(e,t,r,Math.floor(a/2),n):f}function ZQ(e,t,r,a){return !t||t.length===0?e:e.filter(n=>t.every(o=>{let i=o.key;r&&o.key.toLowerCase()===r.toLowerCase()?i=r:a&&o.key.toLowerCase()===a.toLowerCase()&&(i=a);let s=n[i],l=Array.isArray(o.value)?o.value:[o.value];switch(o.operator){case "equals":return l.some(u=>String(s)===String(u));case "not_equals":return l.every(u=>String(s)!==String(u));case "greater_than":return parseFloat(String(s))>parseFloat(String(l[0]));case "less_than":return parseFloat(String(s))<parseFloat(String(l[0]));case "contains":return String(s).toLowerCase().includes(String(l[0]).toLowerCase());case "between":if(l.length===2){let u=parseFloat(String(s)),c=parseFloat(String(l[0])),f=parseFloat(String(l[1]));return u>=c&&u<=f}return true;default:return true}}))}var QQ=qr.memo(function({chartType:t,title:r,invocationId:a,datasetSlugs:n,xAxis:o,yAxes:i,series:s,dataReduction:l={strategy:"none",target_points:1e3},stacked:u,sort:c,onScrollUpdate:f,enableDownload:d=true,className:p,chartContainerClassName:h}){let m=ie(()=>s.map(G=>({datasetSlug:G.datasetSlug,sqlQuery:G.sqlQuery,resourceKey:G.resourceKey,filters:!G.sqlQuery&&G.filters?.length?G.filters:void 0})),[s]),v=TR(m,a),g=v.some(G=>G.isLoading),x=Zi(()=>v.map(G=>G.data||[]),[v.map(G=>G.data)]),{resolvedXAxisKey:w,resolvedSeriesKeys:L}=ie(()=>{let G=x.find(b=>b.length>0)||[];return {resolvedXAxisKey:Ll(G,o.key),resolvedSeriesKeys:s.map((b,I)=>({...b,resolvedKey:Ll(x[I]||[],b.key)}))}},[x,o.key,s]),P=ie(()=>{let G=new Map;s.forEach((I,k)=>{let S=x[k]||[],C=L[k]?.resolvedKey||I.key;(I.filters?ZQ(S,I.filters,C,w):S).forEach((_,z)=>{let H=mp(_,w,o.type||"category",z);if(H==null||o.type==="number"&&isNaN(H))return;let M=o.type==="number"||o.type==="date"||typeof H=="object"?H.toString():String(H);G.has(M)||G.set(M,{[o.key]:H});let B=`series_${k}_${I.key}`,V=_[C];G.get(M)[B]=V;});});let b=Array.from(G.values());return c&&c.length>0?b:o.type==="date"?b.sort((I,k)=>I[o.key]-k[o.key]):o.type==="number"?b.sort((I,k)=>{let S=parseFloat(I[o.key]),C=parseFloat(k[o.key]);return isNaN(S)||isNaN(C)?0:S-C}):b},[x,s,L,w,o,c]),O=ie(()=>s.map((G,b)=>({...G,key:`series_${b}_${G.key}`})),[s]),T=ie(()=>({[o.key]:{label:o.label,format:o.format,type:o.type},...O.reduce((G,b)=>(G[b.key]={label:b.name,color:b.color},G),{}),...t==="histogram"?{frequency:{label:i[0]?.label||"Frequency",color:O[0]?.color||"#2563eb"}}:{}}),[o,O,t,i]),E=ie(()=>!o.key||!O.length?null:{chartType:t,xAxis:o,yAxes:t==="histogram"?i.map(G=>({...G,key:"frequency",minValue:G.minValue||"0"})):i,series:t==="histogram"?[{key:"frequency",name:i[0]?.label||"Frequency",color:s[0]?.color||"#2563eb"}]:O},[o,i,s,O,t]),W=null;switch(t){case "bar":W=dp;break;case "line":W=hx;break;case "pie":W=gx;break;case "scatter":W=vx;break;case "histogram":W=dp;break;case "heatmap":W=yx;break}let j=te(false);ue(()=>{j.current||!f||!g&&T&&E&&P.length&&(f(),setTimeout(()=>f(),250),j.current=true);},[f,g,T,E,P.length]);let[N,K]=fe({x:[null,null],y:[null,null]}),{processedData:X,dataReductionInfo:ee}=ie(()=>{if(g||!P.length)return {processedData:[],dataReductionInfo:null};if(t==="histogram"){let S=l.target_points||20;return {processedData:_R(P,w,O,S,o),dataReductionInfo:null}}let G=P;if((N.x[0]!==null||N.y[0]!==null)&&(G=P.filter(S=>{if(N.x[0]!==null&&N.x[1]!==null){let C=parseFloat(S[o.key]);if(isNaN(C)||C<N.x[0]||C>N.x[1])return false}if(N.y[0]!==null&&N.y[1]!==null)for(let C of O){let A=parseFloat(S[C.key]);if(!isNaN(A)&&(A<N.y[0]||A>N.y[1]))return false}return true})),l.strategy==="none"||!l.target_points||G.length<=l.target_points&&(!c||c.length===0)){let S=G;return c&&c.length>0&&(S=Fi(S,o,i,c)),{processedData:S,dataReductionInfo:null}}let b,I="";switch(l.strategy){case "sample":b=MR(G,l.target_points),I="sampled",c&&c.length>0&&(b=Fi(b,o,i,c));break;case "aggregate":b=YQ(G,w,O,l.target_points,o,i,c),I="aggregated";break;case "bin":b=XQ(G,w,O,l.target_points),I="binning",c&&c.length>0&&(b=Fi(b,o,i,c));break;default:G.length<1e3?b=G:(b=MR(G,l.target_points),I="sampled"),c&&c.length>0&&(b=Fi(b,o,i,c));}let k=null;return G.length!==b.length&&(k=`${I} ${G.length.toLocaleString()} \u2192 ${b.length.toLocaleString()} points`),{processedData:b,dataReductionInfo:k}},[P,l,t,g,N.x,N.y,O,c,o,i,w]);return W?g?Y("div",{children:"Loading..."}):P.length?E?Y(W,{data:X,displayConfig:T,stacked:u,dataConfig:E,title:r,subtitle:ee||void 0,disableAnimation:X.length>100,onZoomChange:K,enableDownload:d,className:p,chartContainerClassName:h}):Y("div",{children:"Invalid chart configuration"}):Y("div",{children:"Unable to display chart - no data available"}):(console.error("No chart component found"),null)},(e,t)=>(0, RR.default)(e,t));q();function NR({title:e,invocationId:t,datasetSlug:r,sqlQuery:a,resourceKey:n,columns:o,maxRows:i=100,className:s,tableWrapperClassName:l,headerClassName:u,loadingClassName:c,emptyClassName:f,onScrollUpdate:d}){let{data:p,isLoading:h}=pp(r,t,a,n),m=ie(()=>o?p?.length?o.map(x=>{let w=Ll(p,x.key);return {key:x.key,name:x.name,resolvedKey:w,format:x.format,value_type:x.value_type}}):[]:p?.length?Object.keys(p[0]).map(x=>({key:x,name:x,resolvedKey:x,format:void 0,value_type:void 0})):[],[o,p]),v=ie(()=>!p||p.length===0?[]:i?p.slice(0,i):p,[p,i]),g=te(false);return ue(()=>{g.current||!d||!h&&p?.length&&(d(),setTimeout(()=>d(),250),g.current=true);},[d,h,p?.length]),h?Y("div",{className:c||"text-gray-500",children:"Loading..."}):p?.length?m.length===0?Y("div",{className:f||"text-gray-500",children:"No columns defined"}):tt("div",{className:s||"w-full",children:[e&&Y("h3",{className:"text-lg font-medium mb-3",children:e}),Y("div",{className:l||"relative w-full overflow-x-auto rounded-lg border border-border/50",children:tt("table",{className:"w-full caption-bottom text-sm",children:[Y("thead",{className:"[&_tr]:border-b",children:Y("tr",{className:u||"border-b transition-colors",children:m.map(x=>Y("th",{className:"h-10 px-3 text-left align-middle font-medium text-muted-foreground",children:x.name},x.key))})}),Y("tbody",{className:"[&_tr:last-child]:border-0",children:v.map((x,w)=>Y("tr",{className:`border-b transition-colors hover:bg-muted/50 ${w%2===1?"bg-muted/30":""}`,children:m.map(L=>Y("td",{className:"p-3 align-middle text-foreground",children:xa(x[L.resolvedKey],L.format,L.value_type)},L.key))},w))})]})}),p.length>i&&tt("p",{className:"text-sm text-muted-foreground mt-2",children:["Showing ",i," of ",p.length," rows"]})]}):Y("div",{className:f||"text-gray-500",children:"No data"})}q();function FR({label:e,datasetSlug:t,invocationId:r,sqlQuery:a,valueKey:n,resourceKey:o,format:i,prefix:s="",suffix:l="",description:u,className:c}){let{data:f,isLoading:d,error:p}=pp(t,r,a,o),h=ie(()=>{if(!f||f.length===0)return null;let m=f[0]?.[n];if(m==null)return null;if(i)return xa(m,i);let v=Number(m);return isNaN(v)?String(m):v.toLocaleString()},[f,n,i]);return d?Y("div",{className:c,children:tt("div",{className:"animate-pulse",children:[Y("div",{className:"h-3 w-20 bg-muted rounded mb-2"}),Y("div",{className:"h-8 w-32 bg-muted rounded"})]})}):p?tt("div",{className:c,children:[Y("p",{className:"text-xs font-medium uppercase tracking-wider text-muted-foreground",children:e}),Y("p",{className:"text-sm text-destructive mt-1",children:"Error loading metric"})]}):h===null?tt("div",{className:c,children:[Y("p",{className:"text-xs font-medium uppercase tracking-wider text-muted-foreground",children:e}),Y("p",{className:"text-2xl font-bold text-muted-foreground",children:"\u2014"})]}):tt("div",{className:c,children:[Y("p",{className:"text-xs font-medium uppercase tracking-wider text-muted-foreground",children:e}),tt("p",{className:"text-2xl font-bold text-foreground mt-1",children:[s,h,l]}),u&&Y("p",{className:"text-xs text-muted-foreground mt-1",children:u})]})}/*! Bundled license information:
|
|
43
|
+
`)}async function xR(e,t){let r=t.fontEmbedCSS!=null?t.fontEmbedCSS:t.skipFonts?null:await dx(e,t);if(r){let a=document.createElement("style"),n=document.createTextNode(r);a.appendChild(n),e.firstChild?e.insertBefore(a,e.firstChild):e.appendChild(a);}}async function bR(e,t={}){let{width:r,height:a}=up(e,t),n=await Sl(e,t,true);return await xR(n,t),await fx(n,t),pR(n,t),await iR(n,r,a)}async function Cl(e,t={}){let{width:r,height:a}=up(e,t),n=await bR(e,t),o=await Mi(n),i=document.createElement("canvas"),s=i.getContext("2d"),l=t.pixelRatio||aR(),u=t.canvasWidth||r,c=t.canvasHeight||a;return i.width=u*l,i.height=c*l,t.skipAutoScale||nR(i),i.style.width=`${u}`,i.style.height=`${c}`,t.backgroundColor&&(s.fillStyle=t.backgroundColor,s.fillRect(0,0,i.width,i.height)),s.drawImage(o,0,0,i.width,i.height),i}async function AQ(e,t={}){let{width:r,height:a}=up(e,t);return (await Cl(e,t)).getContext("2d").getImageData(0,0,r,a).data}async function OQ(e,t={}){return (await Cl(e,t)).toDataURL()}async function kQ(e,t={}){return (await Cl(e,t)).toDataURL("image/jpeg",t.quality||1)}async function EQ(e,t={}){let r=await Cl(e,t);return await oR(r)}async function DQ(e,t={}){return dx(e,t)}Yt();Yt();var wR={status:"idle",error:null,data:null};q();Yt();function Qn(e){let t=(a,n)=>{switch(n.type){case "loading":return {...a,status:"loading"};case "success":return {...a,status:"success",data:n.data};case "error":return {...a,status:"error",error:n.error};default:return a}};function r({status:a,...n}){return {...n,status:a,isError:a==="error",isLoading:a==="loading",isSuccess:a==="success",isIdle:a==="idle"}}return function(a){let n=te(),[o,i]=Wp(t,wR),s=r(o);function l(c){!n.current&&c&&(n.current=c);}async function u(){try{if(!n.current&&!a?.selector)throw new Error("A dom element must be selected: use the selector option or the ref");a?.onStart&&a.onStart(),i({type:"loading"}),a?.onLoading&&a.onLoading();let c=a?.selector?document.querySelector(a.selector):n.current,f=await e(c,a);return i({type:"success",data:f}),a?.onSuccess&&a.onSuccess(f),f}catch(c){let f=c?.message||"Unknown error";return console.error("Error generating image from component:",f),i({type:"error",error:f}),a?.onError&&a.onError(f),null}}return [s,()=>{u();},l]}}Yt();Qn(ba.toSvg);Qn(ba.toJpeg);var px=Qn(ba.toPng);Qn(ba.toBlob);Qn(ba.toCanvas);Qn(ba.toPixelData);Yt();var FQ=(e=>(e.Idle="idle",e.Loading="loading",e.Success="success",e.Error="error",e))(FQ||{});Yt();q();var fp=(...e)=>e.filter((t,r,a)=>!!t&&t.trim()!==""&&a.indexOf(t)===r).join(" ").trim();var IR=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();var SR=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(t,r,a)=>a?a.toUpperCase():r.toLowerCase());var mx=e=>{let t=SR(e);return t.charAt(0).toUpperCase()+t.slice(1)};q();var CR={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};var PR=e=>{for(let t in e)if(t.startsWith("aria-")||t==="role"||t==="title")return true;return false};var LR=ve(({color:e="currentColor",size:t=24,strokeWidth:r=2,absoluteStrokeWidth:a,className:n="",children:o,iconNode:i,...s},l)=>y("svg",{ref:l,...CR,width:t,height:t,stroke:e,strokeWidth:a?Number(r)*24/Number(t):r,className:fp("lucide",n),...!o&&!PR(s)&&{"aria-hidden":"true"},...s},[...i.map(([u,c])=>y(u,c)),...Array.isArray(o)?o:[o]]));var AR=(e,t)=>{let r=ve(({className:a,...n},o)=>y(LR,{ref:o,iconNode:t,className:fp(`lucide-${IR(mx(e))}`,`lucide-${e}`,a),...n}));return r.displayName=mx(e),r};var jQ=[["path",{d:"M12 15V3",key:"m9g1x1"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["path",{d:"m7 10 5 5 5-5",key:"brsn70"}]],Pl=AR("download",jQ);q();function OR(e){let t={max:null,min:null};if(e.maxValue)if(e.type==="number"){let r=parseFloat(e.maxValue);isNaN(r)?console.warn(`Error parsing max value ${e.maxValue}. Falling back to default.`):t.max=r;}else e.type==="date"?typeof e.maxValue=="string"&&/^\d{4}-\d{2}-\d{2}$/.test(e.maxValue)?t.max=new Date(e.maxValue+"T00:00:00.000Z").getTime():t.max=new Date(e.maxValue).getTime():t.max=e.maxValue;if(e.minValue)if(e.type==="number"){let r=parseFloat(e.minValue);isNaN(r)?console.warn(`Error parsing min value ${e.minValue}. Falling back to default.`):t.min=r;}else e.type==="date"?typeof e.minValue=="string"&&/^\d{4}-\d{2}-\d{2}$/.test(e.minValue)?t.min=new Date(e.minValue+"T00:00:00.000Z").getTime():t.min=new Date(e.minValue).getTime():t.min=e.minValue;return t}function Za(e,t,r){return xa(e,t,r)}function BQ({title:e,subtitle:t,data:r,displayConfig:a,dataConfig:n,ChartComponent:o,PointComponent:i,disableAnimation:s,onZoomChange:l,stacked:u,enableDownload:c=false,onDownloadSuccess:f,onDownloadError:d,className:p,chartContainerClassName:h,downloadButtonClassName:m,resetZoomButtonClassName:v}){let{zoomState:g,customDomain:x,handlers:w}=eR({onZoomChange:l}),L=le(M=>{let B=`${(e||"chart").toLowerCase().replace(/\s+/g,"-")}.png`,V=document.createElement("a");V.download=B,V.href=M,V.click(),f?.(B);},[e,f]),P=le(M=>{console.error("Error converting chart to image:",M),d?.(M);},[d]),[{isLoading:O},T,E]=px({onSuccess:L,onError:P}),W=le(async()=>{T();},[T]),j=ie(()=>OR(n.xAxis),[n.xAxis]),N=ie(()=>n.yAxes.map(M=>OR(M)),[n.yAxes]),K=ie(()=>r?n.chartType==="histogram"?r.map(M=>({[n.xAxis.key]:(M.binStart+M.binEnd)/2,frequency:M.frequency,binStart:M.binStart,binEnd:M.binEnd})):n.xAxis.type==="number"?r.map(M=>({...M,[n.xAxis.key]:Number(M[n.xAxis.key])})).filter(M=>!isNaN(M[n.xAxis.key])):n.xAxis.type==="date"?r.map(M=>{let B=M[n.xAxis.key],V;return B instanceof Date?V=B.getTime():typeof B=="number"?V=B:typeof B=="string"?V=new Date(B).getTime():V=NaN,{...M,[n.xAxis.key]:V}}).filter(M=>!isNaN(M[n.xAxis.key])):r:[],[r,n.xAxis.key,n.chartType,n.xAxis.type]),X=ie(()=>{if(n.xAxis.type==="category"||!K.length)return;let M=K.map(V=>Number(V[n.xAxis.key])).filter(V=>!isNaN(V)),B=[...new Set(M)].sort((V,oe)=>V-oe);if(!(n.chartType==="scatter"||B.length>20))return B},[K,n.xAxis.key,n.xAxis.type,n.chartType]),ee=ie(()=>{if(!X||X.length<2)return;let B=(X[X.length-1]-X[0])*.05;return [X[0]-B,X[X.length-1]+B]},[X]),G=le((M,B)=>{if(!M?.length)return {min:null,max:null};let V=M.map(oe=>Number(oe[B])).filter(oe=>!isNaN(oe));return {min:Math.min(...V),max:Math.max(...V)}},[]),b=ie(()=>({x:x.x[0]!==null&&x.x[1]!==null?[x.x[0],x.x[1]]:(()=>{if(j.min!==null&&j.max!==null)return [j.min,j.max];let M=G(K,n.xAxis.key);return [M.min??"auto",M.max??"auto"]})(),y:n.yAxes.map((M,B)=>{if(x.y[0]!==null&&x.y[1]!==null)return [x.y[0],x.y[1]];let oe=n.series.filter(F=>(F.axisIndex||0)===B).reduce((F,Z)=>{let Q=G(K,Z.key);return {min:F.min===null?Q.min:Q.min===null?F.min:Math.min(F.min,Q.min),max:F.max===null?Q.max:Q.max===null?F.max:Math.max(F.max,Q.max)}},{min:null,max:null});if(M.type==="number"&&M.maxValue){let F=parseFloat(M.maxValue);if(oe.max===null||F<=oe.max*1.5)return [N[B].min??oe.min??"auto",N[B].max??oe.max??"auto"]}return [N[B].min??oe.min??"auto",N[B].max??oe.max??"auto"]})}),[x.x,x.y,j,N,n.series,n.yAxes,n.xAxis.key,K,G]),I=le((M,B,V)=>{if(V.dataKey===n.xAxis.key)return Za(M,n.xAxis.format,n.xAxis.type);let oe=n.series.find(Be=>Be.key===V.dataKey),F=oe?.name||String(B).replace(/^dataset_\d+_/,"");if(n.chartType==="histogram"){let Be=V.payload;if(Be.binStart!==void 0){let ge=Za(Be.binStart,n.xAxis.format,n.xAxis.type),vt=Za(Be.binEnd,n.xAxis.format,n.xAxis.type);return `Count: ${M} (${ge} - ${vt})`}}let Z=oe?.axisIndex||0,Q=n.yAxes[Z],U=Za(M,Q?.format,Q?.type);return `${F}: ${U}`},[n.xAxis,n.series,n.yAxes,n.chartType]),[k,S]=fe(false);ue(()=>{let M=setTimeout(()=>{S(true);},1700);return ()=>clearTimeout(M)},[]);let C=le((M,B)=>{if(B&&B.length>0){let V=B[0].payload[n.xAxis.key],oe=Za(V,n.xAxis.format,n.xAxis.type);return tt("div",{className:"flex flex-col",children:[Y("span",{children:n.xAxis.label}),Y("span",{className:"font-mono tabular-nums",children:oe})]})}return M},[n.xAxis.key,n.xAxis.format,n.xAxis.type,n.xAxis.label]),A=le(M=>Y(ZM,{...M,formatter:I,labelFormatter:C}),[I,C]),_=le(M=>Y(JM,{...M}),[]),z=ie(()=>{let M=K.length,B=M>30?8:M>20?12:M>10?16:20,V=0;for(let Z of K){let Q=Za(Z[n.xAxis.key],n.xAxis.format,n.xAxis.type),U=typeof Q=="string"?Q:String(Q??"");V=Math.max(V,Math.min(U.length,B));}let oe=V*7*M>500,F=oe?Math.min(Math.max(40,V*5.5+20),140):50;return {maxLabelLen:B,shouldAngle:oe,height:F}},[K,n.xAxis.key,n.xAxis.format,n.xAxis.type]),H=ie(()=>!!(s||(r?.length||0)>100||k),[s,r?.length,k]);return tt("div",{className:p||"w-full items-center mt-0 flex flex-col gap-0",children:[(e||c)&&tt("div",{className:"w-full items-center mb-2 relative",children:[e&&Y("h2",{className:"text-center text-base pt-0 mt-0 mb-2",children:e}),c&&Y("button",{onClick:W,disabled:O,className:m||"text-sm text-gray-500 hover:text-gray-700 disabled:opacity-50 h-8 absolute right-0 top-[-5px] px-2 py-1 border rounded hover:bg-gray-50",title:"Download chart as PNG",children:Y(Pl,{className:"w-4 h-4"})})]}),t&&Y("p",{className:"text-center text-sm text-muted-foreground mb-2",children:t}),Y(ip,{ref:E,config:a,className:h||"w-full",debounceResize:true,children:tt(o,{accessibilityLayer:true,data:K,isAnimationActive:!H,onMouseDown:w.onZoomStart,onMouseMove:w.onZoomMove,onMouseUp:w.onZoomEnd,onDoubleClick:w.onResetZoom,style:{userSelect:"none",cursor:"crosshair"},children:[Y(jd,{vertical:false}),Y(Hd,{dataKey:n.xAxis.key,domain:ee||b.x,type:n.xAxis.type==="date"||!n.xAxis.type?"number":n.xAxis.type,tickFormatter:M=>{let B=Za(M,n.xAxis.format,n.xAxis.type),V=typeof B=="string"?B:String(B??"");return V.length>z.maxLabelLen?V.slice(0,z.maxLabelLen)+"\u2026":V},tickLine:false,tickMargin:10,height:z.height,axisLine:false,allowDataOverflow:true,interval:"preserveStartEnd",ticks:X,...z.shouldAngle?{angle:-45,textAnchor:"end"}:{},children:Y(sr,{value:n.xAxis.label,position:"bottom",offset:z.shouldAngle?-5:-10,style:{textAnchor:"middle"}})}),n.yAxes.map((M,B)=>Y(Vd,{yAxisId:B,orientation:B===0?"left":"right",domain:u?void 0:b.y[B],type:M.type==="date"||!M.type?"number":M.type,tickFormatter:V=>{let oe=Za(V,M.format,M.type);return typeof oe=="string"&&oe.length>20?oe.slice(0,20)+"...":oe},allowDataOverflow:true,children:Y(sr,{value:M.label,position:B===0?"insideLeft":"insideRight",angle:-90,dx:B===0?-15:15,style:{textAnchor:"middle"}})},`y-axis-${M.key}`)),Y(XM,{content:A}),Y(QM,{content:_,verticalAlign:"top"}),n.series.map(M=>Y(i,{dataKey:M.key,yAxisId:M.axisIndex||0,fill:M.color||"blue",stroke:M.color||"blue",dot:{fill:M.color||"blue",stroke:M.color||"blue"},radius:4,name:M.name,isAnimationActive:!H,animationDuration:1500,animationBegin:0,stackId:n.chartType==="bar"&&u?"stack":void 0},`${M.key}-${u?"stacked":"unstacked"}`)),g.refAreaLeft&&g.refAreaRight&&g.refAreaTop&&g.refAreaBottom&&Y(_d,{x1:g.refAreaLeft,x2:g.refAreaRight,y1:g.refAreaTop,y2:g.refAreaBottom,strokeOpacity:.2,stroke:"currentColor",fill:"currentColor",fillOpacity:.02,style:{pointerEvents:"none"}})]})}),x.x[0]!==null&&Y("button",{onClick:w.onResetZoom,className:v||"text-sm text-gray-500 hover:text-gray-700 mt-2 px-3 py-1 border rounded hover:bg-gray-50",children:"Reset Zoom"})]})}function wa(e){return Y(Di,{fallback:Y("div",{className:e.errorClassName||"text-red-500",children:"Failed to load chart"}),children:Y(BQ,{...e})})}function dp(e){return Y(wa,{...e,ChartComponent:Jy,PointComponent:Ud})}function hx(e){return Y(wa,{...e,ChartComponent:Qy,PointComponent:Bd})}q();var qQ=(e,t,r)=>{let a=parseInt(e.slice(1,3),16)/255,n=parseInt(e.slice(3,5),16)/255,o=parseInt(e.slice(5,7),16)/255,i=Math.max(a,n,o),s=Math.min(a,n,o),l,u,c=(i+s)/2;if(i===s)l=u=0;else {let m=i-s;switch(u=c>.5?m/(2-i-s):m/(i+s),i){case a:l=(n-o)/m+(n<o?6:0);break;case n:l=(o-a)/m+2;break;case o:l=(a-n)/m+4;break;default:l=0;}l/=6;}let f=t/r,d=l*360+(f*40-20),p=Math.min(100,u*100+f*25),h=Math.max(35,Math.min(65,c*100-f*20));return `hsl(${d}, ${p}%, ${h}%)`};function zQ({title:e,subtitle:t,data:r,displayConfig:a,dataConfig:n,className:o,chartContainerClassName:i}){let s=n.series[0]?.color||"blue",l=n.yAxes[0]?.format,u=n.yAxes[0]?.type||"number",c=ie(()=>r.reduce((f,d)=>(n.series.forEach(p=>{let h=p.key,m=String(d[n.xAxis.key]||"Unknown"),v=parseFloat(d[h]||"0");isNaN(v)||f.push({name:m,value:v,seriesId:h,displayName:m});}),f),[]).sort((f,d)=>d.value-f.value),[r,n.series,n.xAxis.key]);return tt("div",{className:o||"items-center",children:[Y("h2",{className:"text-center text-base mb-2",children:e}),t&&Y("p",{className:"text-center text-sm text-muted-foreground mb-2",children:t}),Y(ip,{config:a,className:i||"w-full border border-border/50 rounded-md",children:tt(rx,{width:400,height:400,children:[Y(kd,{data:c,dataKey:"value",nameKey:"displayName",cx:"50%",cy:"50%",outerRadius:150,label:f=>`${f.displayName}: ${xa(f.value,l,u)}`,children:c.map((f,d)=>Y(Rr,{fill:d===0?s:qQ(s,d,c.length)},`cell-${f.name}`))}),Y(ol,{formatter:(f,d)=>[xa(f,l,u),d]}),Y(zo,{})]})})]})}function gx(e){return Y(Di,{fallback:Y("div",{className:"text-red-500",children:"Failed to load chart"}),children:Y(zQ,{...e})})}function vx(e){return Y(wa,{...e,ChartComponent:bl,PointComponent:Ai})}var UQ=e=>{let{cx:t,cy:r,payload:a,xAxis:n,yAxis:o}=e,i=a.value||a.z||0,l=`hsl(${240-Math.min(1,Math.max(0,i/100))*240}, 70%, 50%)`,u=n.scale.bandwidth?n.scale.bandwidth():20,c=o.scale.bandwidth?o.scale.bandwidth():20;return Y("rect",{x:t-u/2,y:r-c/2,width:u,height:c,fill:l,fillOpacity:.8,stroke:"#fff",strokeWidth:1})},WQ=e=>Y(Ai,{...e,shape:UQ});function yx(e){return Y(wa,{...e,ChartComponent:bl,PointComponent:WQ})}q();q();var xx=Ce(null);function HQ({children:e,config:t}){return Y(xx.Provider,{value:t,children:e})}function kR(){let e=De(xx);if(!e)throw new Error("useErdoConfig must be used within an ErdoProvider");return e}function ER(){return De(xx)}var Ia=new Map;function bx(e,t,r,a,n){let o=n?.length?JSON.stringify(n):"";return `${e}|${t}|${r??""}|${a??""}|${o}`}function Jn(e){let t=e.filters?.length?JSON.stringify(e.filters):"";return `${e.datasetSlug}::${e.sqlQuery||""}::${e.resourceKey||""}::${t}`}async function DR(e,t,r,a,n,o){if(e.dataFetcher)return e.dataFetcher.fetchDatasetContents(t,r,a,n,o);let i={limit:1e3};a&&(i.query=a),n&&(i.resource_key=n),o?.length&&(i.filters=o);let s=`${e.baseUrl}/datasets/${encodeURIComponent(t)}/query`,l={"Content-Type":"application/json"},u=e.token||e.authToken;u&&(l.Authorization=`Bearer ${u}`);let c=await fetch(s,{method:"POST",headers:l,body:JSON.stringify(i)});if(!c.ok)throw new Error(`Failed to fetch dataset contents: ${c.statusText}`);let f=await c.json();return !f.Columns||!f.Rows||f.Columns.length===0?[]:f.Rows.map(d=>{let p={};return f.Columns.forEach((h,m)=>{p[h]=d[m];}),p})}function pp(e,t,r,a){let n=kR(),o=!!e&&!!t,i=bx(e,t,r,a,void 0),s=o?Ia.get(i):void 0,[l,u]=fe(s),[c,f]=fe(o&&!s),[d,p]=fe(null),[h,m]=fe(0),v=Zi(()=>n,[n]);ue(()=>{if(!o){u(void 0),f(false),p(null);return}if(Ia.has(i)&&h===0){u(Ia.get(i)),f(false),p(null);return}let x=false;return f(true),p(null),DR(v,e,t,r,a).then(w=>{x||(Ia.set(i,w),u(w),f(false));}).catch(w=>{x||(p(w instanceof Error?w:new Error(String(w))),f(false));}),()=>{x=true;}},[v,e,t,r,a,o,h,i]);let g=le(()=>m(x=>x+1),[]);return {data:l,isLoading:c,error:d,refetch:g}}function TR(e,t){let r=ER(),[a,n]=fe(0),o=le(()=>n(d=>d+1),[]),i=ie(()=>{let d=new Set;return e.filter(p=>{let h=Jn(p);return d.has(h)?false:(d.add(h),true)})},[e]),s=ie(()=>i.map(Jn).join("|"),[i]),l=ie(()=>i.map(d=>bx(d.datasetSlug,t,d.sqlQuery,d.resourceKey,d.filters)),[i,t]),[u,c]=fe(()=>{if(!r||!t||i.length===0)return new Map;let d=new Map;return i.forEach((p,h)=>{let m=Ia.get(l[h]);d.set(Jn(p),{data:m,isLoading:!m,error:null,refetch:o});}),d}),f=Zi(()=>r,[r]);return ue(()=>{if(!f||!t||i.length===0){c(new Map);return}let d=i.filter((m,v)=>a>0?true:!Ia.has(l[v]));if(d.length===0){let m=new Map;i.forEach((v,g)=>{m.set(Jn(v),{data:Ia.get(l[g]),isLoading:false,error:null,refetch:o});}),c(m);return}let p=false,h=new Map;return i.forEach((m,v)=>{let g=Ia.get(l[v]);h.set(Jn(m),{data:g,isLoading:!g,error:null,refetch:o});}),c(h),d.forEach(m=>{let v=Jn(m),g=bx(m.datasetSlug,t,m.sqlQuery,m.resourceKey,m.filters);DR(f,m.datasetSlug,t,m.sqlQuery,m.resourceKey,m.filters).then(x=>{p||(Ia.set(g,x),c(w=>{let L=new Map(w);return L.set(v,{data:x,isLoading:false,error:null,refetch:o}),L}));}).catch(x=>{p||c(w=>{let L=new Map(w);return L.set(v,{data:void 0,isLoading:false,error:x instanceof Error?x:new Error(String(x)),refetch:o}),L});});}),()=>{p=true;}},[f,s,t,a,l.join(","),o]),e.map(d=>{let p=Jn(d);return u.get(p)||{data:void 0,isLoading:!(!f||!t),error:null,refetch:o}})}function VQ(e){return e.replace(/[A-Z]/g,t=>`_${t.toLowerCase()}`).replace(/^_/,"")}function Ll(e,t){if(!e.length)return t;let r=e[0];if(r[t]!==void 0)return t;let a=t.toLowerCase();if(r[a]!==void 0)return a;let n=VQ(t);if(r[n]!==void 0)return n;let o=t.toLowerCase().replace(/_/g,"");return Object.keys(r).find(s=>s.toLowerCase().replace(/_/g,"")===o)||t}function GQ(){return ["yyyy-MM-dd","yyyyMMdd","yyyy-MM-dd'T'HH:mm:ss","yyyyMMddHHmmss"]}function KQ(e){if(!e)return null;if(typeof e=="string"){if(/^\d{4}-\d{2}-\d{2}$/.test(e)){let n=new Date(e+"T00:00:00.000Z");if(Br(n))return n.getTime()}let a=GQ();for(let n of a){let o=Su(e,n,new Date);if(Br(o))return o.getTime()}}let t=new Date(e);return Br(t)?t.getTime():null}function mp(e,t,r,a){let n=t==="index"&&e[t]===void 0?a:e[t];return r==="date"?KQ(n):r==="number"?parseFloat(n):n}function $Q(e,t,r){if(e===t.key)return t.type||"category";let a=r.find(n=>n.key===e);return a?a.type||"number":"category"}function Fi(e,t,r,a){return !a||a.length===0?e:[...e].sort((n,o)=>{for(let i of a){let s=$Q(i.key,t,r),l=mp(n,i.key,s,n.index),u=mp(o,i.key,s,o.index);if(l===u)continue;let c=typeof l=="number"&&typeof u=="number"?l-u:l instanceof Date&&u instanceof Date?l.getTime()-u.getTime():String(l).localeCompare(String(u));return i.direction==="asc"?c:-c}return 0})}function MR(e,t){let r=Math.ceil(e.length/t),a=[e[0]];for(let n=r;n<e.length-1;n+=r)a.push(e[n]);return a[a.length-1]!==e[e.length-1]&&a.push(e[e.length-1]),a}function YQ(e,t,r,a,n,o,i){let s=e.reduce((c,f)=>{let d=f[t];return c[d]||(c[d]=[]),c[d].push(f),c},{}),l=Object.entries(s);if(l.length>a){let c=Math.ceil(l.length/a),f=l.reduce((d,[p,h],m)=>{let v=Math.floor(m/c);return d[v]||(d[v]={key:p,items:[]}),d[v].items.push(...h),d},[]).map(({key:d,items:p})=>({[t]:d,...r.reduce((h,m)=>{let v=p.map(g=>parseFloat(g[m.key])).filter(g=>!isNaN(g));return h[m.key]=v.length?v.reduce((g,x)=>g+x,0)/v.length:null,h},{})}));return i&&i.length>0?Fi(f,n,o,i):f}let u=l.map(([c,f])=>{let d=r.reduce((h,m)=>{let v=f.map(g=>parseFloat(g[m.key])).filter(g=>!isNaN(g));return h[m.key]=v.length?v.reduce((g,x)=>g+x,0)/v.length:null,h},{}),p=Object.values(d).filter(h=>h!==null).reduce((h,m)=>h+m,0);return {[t]:c,...d,index:p}});return i&&i.length>0?Fi(u,n,o,i):u}function XQ(e,t,r,a){let n=e.map(u=>parseFloat(u[t])).filter(u=>!isNaN(u)),o=Math.min(...n),s=(Math.max(...n)-o)/a,l=Array.from({length:a},(u,c)=>({binStart:o+c*s,binEnd:o+(c+1)*s,count:0,seriesValues:r.reduce((f,d)=>(f[d.key]=[],f),{})}));return e.forEach(u=>{let c=parseFloat(u[t]);if(isNaN(c))return;let f=Math.min(Math.floor((c-o)/s),a-1);l[f].count++,r.forEach(d=>{let p=parseFloat(u[d.key]);isNaN(p)||l[f].seriesValues[d.key].push(p);});}),l.map(u=>({[t]:(u.binStart+u.binEnd)/2,...r.reduce((c,f)=>{let d=u.seriesValues[f.key];return c[f.key]=d.length?d.reduce((p,h)=>p+h,0)/d.length:null,c},{}),count:u.count,index:r.reduce((c,f)=>{let d=u.seriesValues[f.key],p=d.length?d.reduce((h,m)=>h+m,0)/d.length:0;return c+p},0)})).filter(u=>r.some(c=>u[c.key]!==null))}function _R(e,t,r,a,n){let o=e.map((p,h)=>{let m=mp(p,t,n.type||"number",h);return typeof m=="number"?m:parseFloat(m)}).filter(p=>!isNaN(p)),i=Math.min(...o),u=(Math.max(...o)-i)/a,c=Array.from({length:a},(p,h)=>({binStart:Number((i+h*u).toFixed(2)),binEnd:Number((i+(h+1)*u).toFixed(2)),frequency:0,[t]:Number((i+(h+.5)*u).toFixed(2))}));o.forEach(p=>{let h=Math.min(Math.floor((p-i)/u),a-1);c[h].frequency++;});let f=c.filter(p=>p.frequency>0);return (c.length-f.length)/c.length*100>30?_R(e,t,r,Math.floor(a/2),n):f}function ZQ(e,t,r,a){return !t||t.length===0?e:e.filter(n=>t.every(o=>{let i=o.key;r&&o.key.toLowerCase()===r.toLowerCase()?i=r:a&&o.key.toLowerCase()===a.toLowerCase()&&(i=a);let s=n[i],l=Array.isArray(o.value)?o.value:[o.value];switch(o.operator){case "equals":return l.some(u=>String(s)===String(u));case "not_equals":return l.every(u=>String(s)!==String(u));case "greater_than":return parseFloat(String(s))>parseFloat(String(l[0]));case "less_than":return parseFloat(String(s))<parseFloat(String(l[0]));case "contains":return String(s).toLowerCase().includes(String(l[0]).toLowerCase());case "between":if(l.length===2){let u=parseFloat(String(s)),c=parseFloat(String(l[0])),f=parseFloat(String(l[1]));return u>=c&&u<=f}return true;default:return true}}))}var QQ=qr.memo(function({chartType:t,title:r,invocationId:a,datasetSlugs:n,xAxis:o,yAxes:i,series:s,dataReduction:l={strategy:"none",target_points:1e3},stacked:u,sort:c,onScrollUpdate:f,enableDownload:d=true,className:p,chartContainerClassName:h}){let m=ie(()=>s.map(G=>({datasetSlug:G.datasetSlug,sqlQuery:G.sqlQuery,resourceKey:G.resourceKey,filters:!G.sqlQuery&&G.filters?.length?G.filters:void 0})),[s]),v=TR(m,a),g=v.some(G=>G.isLoading),x=Zi(()=>v.map(G=>G.data||[]),[v.map(G=>G.data)]),{resolvedXAxisKey:w,resolvedSeriesKeys:L}=ie(()=>{let G=x.find(b=>b.length>0)||[];return {resolvedXAxisKey:Ll(G,o.key),resolvedSeriesKeys:s.map((b,I)=>({...b,resolvedKey:Ll(x[I]||[],b.key)}))}},[x,o.key,s]),P=ie(()=>{let G=new Map;s.forEach((I,k)=>{let S=x[k]||[],C=L[k]?.resolvedKey||I.key;(I.filters?ZQ(S,I.filters,C,w):S).forEach((_,z)=>{let H=mp(_,w,o.type||"category",z);if(H==null||o.type==="number"&&isNaN(H))return;let M=o.type==="number"||o.type==="date"||typeof H=="object"?H.toString():String(H);G.has(M)||G.set(M,{[o.key]:H});let B=`series_${k}_${I.key}`,V=_[C];G.get(M)[B]=V;});});let b=Array.from(G.values());return c&&c.length>0?b:o.type==="date"?b.sort((I,k)=>I[o.key]-k[o.key]):o.type==="number"?b.sort((I,k)=>{let S=parseFloat(I[o.key]),C=parseFloat(k[o.key]);return isNaN(S)||isNaN(C)?0:S-C}):b},[x,s,L,w,o,c]),O=ie(()=>s.map((G,b)=>({...G,key:`series_${b}_${G.key}`})),[s]),T=ie(()=>({[o.key]:{label:o.label,format:o.format,type:o.type},...O.reduce((G,b)=>(G[b.key]={label:b.name,color:b.color},G),{}),...t==="histogram"?{frequency:{label:i[0]?.label||"Frequency",color:O[0]?.color||"#2563eb"}}:{}}),[o,O,t,i]),E=ie(()=>!o.key||!O.length?null:{chartType:t,xAxis:o,yAxes:t==="histogram"?i.map(G=>({...G,key:"frequency",minValue:G.minValue||"0"})):i,series:t==="histogram"?[{key:"frequency",name:i[0]?.label||"Frequency",color:s[0]?.color||"#2563eb"}]:O},[o,i,s,O,t]),W=null;switch(t){case "bar":W=dp;break;case "line":W=hx;break;case "pie":W=gx;break;case "scatter":W=vx;break;case "histogram":W=dp;break;case "heatmap":W=yx;break}let j=te(false);ue(()=>{j.current||!f||!g&&T&&E&&P.length&&(f(),setTimeout(()=>f(),250),j.current=true);},[f,g,T,E,P.length]);let[N,K]=fe({x:[null,null],y:[null,null]}),{processedData:X,dataReductionInfo:ee}=ie(()=>{if(g||!P.length)return {processedData:[],dataReductionInfo:null};if(t==="histogram"){let S=l.target_points||20;return {processedData:_R(P,w,O,S,o),dataReductionInfo:null}}let G=P;if((N.x[0]!==null||N.y[0]!==null)&&(G=P.filter(S=>{if(N.x[0]!==null&&N.x[1]!==null){let C=parseFloat(S[o.key]);if(isNaN(C)||C<N.x[0]||C>N.x[1])return false}if(N.y[0]!==null&&N.y[1]!==null)for(let C of O){let A=parseFloat(S[C.key]);if(!isNaN(A)&&(A<N.y[0]||A>N.y[1]))return false}return true})),l.strategy==="none"||!l.target_points||G.length<=l.target_points&&(!c||c.length===0)){let S=G;return c&&c.length>0&&(S=Fi(S,o,i,c)),{processedData:S,dataReductionInfo:null}}let b,I="";switch(l.strategy){case "sample":b=MR(G,l.target_points),I="sampled",c&&c.length>0&&(b=Fi(b,o,i,c));break;case "aggregate":b=YQ(G,w,O,l.target_points,o,i,c),I="aggregated";break;case "bin":b=XQ(G,w,O,l.target_points),I="binning",c&&c.length>0&&(b=Fi(b,o,i,c));break;default:G.length<1e3?b=G:(b=MR(G,l.target_points),I="sampled"),c&&c.length>0&&(b=Fi(b,o,i,c));}let k=null;return G.length!==b.length&&(k=`${I} ${G.length.toLocaleString()} \u2192 ${b.length.toLocaleString()} points`),{processedData:b,dataReductionInfo:k}},[P,l,t,g,N.x,N.y,O,c,o,i,w]);return W?g?Y("div",{children:"Loading..."}):P.length?E?Y(W,{data:X,displayConfig:T,stacked:u,dataConfig:E,title:r,subtitle:ee||void 0,disableAnimation:X.length>100,onZoomChange:K,enableDownload:d,className:p,chartContainerClassName:h}):Y("div",{children:"Invalid chart configuration"}):Y("div",{children:"Unable to display chart - no data available"}):(console.error("No chart component found"),null)},(e,t)=>(0, RR.default)(e,t));q();function NR({title:e,invocationId:t,datasetSlug:r,sqlQuery:a,resourceKey:n,columns:o,maxRows:i=100,className:s,tableWrapperClassName:l,headerClassName:u,loadingClassName:c,emptyClassName:f,onScrollUpdate:d}){let{data:p,isLoading:h}=pp(r,t,a,n),m=ie(()=>o?p?.length?o.map(x=>{let w=Ll(p,x.key);return {key:x.key,name:x.name,resolvedKey:w,format:x.format,value_type:x.value_type}}):[]:p?.length?Object.keys(p[0]).map(x=>({key:x,name:x,resolvedKey:x,format:void 0,value_type:void 0})):[],[o,p]),v=ie(()=>!p||p.length===0?[]:i?p.slice(0,i):p,[p,i]),g=te(false);return ue(()=>{g.current||!d||!h&&p?.length&&(d(),setTimeout(()=>d(),250),g.current=true);},[d,h,p?.length]),h?Y("div",{className:c||"text-gray-500",children:"Loading..."}):p?.length?m.length===0?Y("div",{className:f||"text-gray-500",children:"No columns defined"}):tt("div",{className:s||"w-full",children:[e&&Y("h3",{className:"text-lg font-medium mb-3",children:e}),Y("div",{className:l||"relative w-full overflow-x-auto rounded-lg border border-border/50",children:tt("table",{className:"w-full caption-bottom text-sm",children:[Y("thead",{className:"[&_tr]:border-b",children:Y("tr",{className:u||"border-b transition-colors",children:m.map(x=>Y("th",{className:"h-10 px-3 text-left align-middle font-medium text-muted-foreground",children:x.name},x.key))})}),Y("tbody",{className:"[&_tr:last-child]:border-0",children:v.map((x,w)=>Y("tr",{className:`border-b transition-colors hover:bg-muted/50 ${w%2===1?"bg-muted/30":""}`,children:m.map(L=>Y("td",{className:"p-3 align-middle text-foreground",children:xa(x[L.resolvedKey],L.format,L.value_type)},L.key))},w))})]})}),p.length>i&&tt("p",{className:"text-sm text-muted-foreground mt-2",children:["Showing ",i," of ",p.length," rows"]})]}):Y("div",{className:f||"text-gray-500",children:"No data"})}q();function FR({label:e,datasetSlug:t,invocationId:r,sqlQuery:a,valueKey:n,resourceKey:o,format:i,prefix:s="",suffix:l="",description:u,className:c}){let{data:f,isLoading:d,error:p}=pp(t,r,a,o),h=ie(()=>{if(!f||f.length===0)return null;let m=f[0]?.[n];if(m==null)return null;if(i)return xa(m,i);let v=Number(m);return isNaN(v)?String(m):v.toLocaleString()},[f,n,i]);return d?Y("div",{className:c,children:tt("div",{className:"animate-pulse",children:[Y("div",{className:"h-3 w-20 bg-muted rounded mb-2"}),Y("div",{className:"h-8 w-32 bg-muted rounded"})]})}):p?tt("div",{className:c,children:[Y("p",{className:"text-xs font-medium uppercase tracking-wider text-muted-foreground",children:e}),Y("p",{className:"text-sm text-destructive mt-1",children:"Error loading metric"})]}):h===null?tt("div",{className:c,children:[Y("p",{className:"text-xs font-medium uppercase tracking-wider text-muted-foreground",children:e}),Y("p",{className:"text-2xl font-bold text-muted-foreground",children:"\u2014"})]}):tt("div",{className:c,children:[Y("p",{className:"text-xs font-medium uppercase tracking-wider text-muted-foreground",children:e}),tt("p",{className:"text-2xl font-bold text-foreground mt-1",children:[s,h,l]}),u&&Y("p",{className:"text-xs text-muted-foreground mt-1",children:u})]})}/*! Bundled license information:
|
|
44
44
|
|
|
45
45
|
use-sync-external-store/cjs/use-sync-external-store-shim.production.js:
|
|
46
46
|
(**
|
package/dist/index.cjs
CHANGED
|
@@ -4,7 +4,7 @@ ${n.map(([s,a])=>{let i=a.theme?.[o]||a.color;return i?` --color-${s}: ${i};`:n
|
|
|
4
4
|
`)}
|
|
5
5
|
}
|
|
6
6
|
`).join(`
|
|
7
|
-
`)}}):null},Vn=qt__namespace.Tooltip;function Ln({active:t,payload:e,className:n,indicator:o="dot",hideLabel:r=false,hideIndicator:s=false,label:a,labelFormatter:i,labelClassName:c,formatter:l,color:u,nameKey:d,labelKey:p}){let{config:m}=Vr(),g=kt__namespace.useMemo(()=>{if(r||!e?.length)return null;let[h]=e,b=`${p||h?.dataKey||h?.name||"value"}`,x=Mn(m,h,b),y=!p&&typeof a=="string"?m[a]?.label||a:x?.label;return i?jsxRuntime.jsx("div",{className:X("font-medium",c),children:i(y,e)}):y?jsxRuntime.jsx("div",{className:X("font-medium",c),children:y}):null},[a,i,e,r,c,m,p]);if(!t||!e?.length)return null;let f=e.length===1&&o!=="dot";return jsxRuntime.jsxs("div",{className:X("border-border/50 bg-background grid min-w-[8rem] items-start gap-1.5 rounded-lg border px-2.5 py-1.5 text-xs shadow-xl",n),children:[f?null:g,jsxRuntime.jsx("div",{className:"grid gap-1.5",children:e.map((h,b)=>{let x=`${d||h.name||h.dataKey||"value"}`,y=Mn(m,h,x),k=u||h.payload.fill||h.color;return jsxRuntime.jsx("div",{className:X("[&>svg]:text-muted-foreground flex w-full flex-wrap items-stretch gap-2 [&>svg]:h-2.5 [&>svg]:w-2.5",o==="dot"&&"items-center"),children:l&&h?.value!==void 0&&h.name?l(h.value,h.name,h,b,h.payload):jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[y?.icon?jsxRuntime.jsx(y.icon,{}):!s&&jsxRuntime.jsx("div",{className:X("shrink-0 rounded-[2px] border-(--color-border) bg-(--color-bg)",{"h-2.5 w-2.5":o==="dot","w-1":o==="line","w-0 border-[1.5px] border-dashed bg-transparent":o==="dashed","my-0.5":f&&o==="dashed"}),style:{"--color-bg":k,"--color-border":k}}),jsxRuntime.jsxs("div",{className:X("flex flex-1 justify-between leading-none",f?"items-end":"items-center"),children:[jsxRuntime.jsxs("div",{className:"grid gap-1.5",children:[f?g:null,jsxRuntime.jsx("span",{className:"text-muted-foreground",children:y?.label||h.name})]}),h.value&&jsxRuntime.jsx("span",{className:"text-foreground font-mono font-medium tabular-nums",children:h.value.toLocaleString()})]})]})},h.dataKey)})})]})}var $n=qt__namespace.Legend;function jn({className:t,hideIcon:e=false,payload:n,verticalAlign:o="bottom",nameKey:r}){let{config:s}=Vr();return n?.length?jsxRuntime.jsx("div",{className:X("flex items-center justify-center gap-4",o==="top"?"pb-3":"pt-3",t),children:n.map(a=>{let i=`${r||a.dataKey||"value"}`,c=Mn(s,a,i);return jsxRuntime.jsxs("div",{className:X("[&>svg]:text-muted-foreground flex items-center gap-1.5 [&>svg]:h-3 [&>svg]:w-3"),children:[c?.icon&&!e?jsxRuntime.jsx(c.icon,{}):jsxRuntime.jsx("div",{className:"h-2 w-2 shrink-0 rounded-[2px]",style:{backgroundColor:a.color}}),c?.label]},a.value)})}):null}function Mn(t,e,n){if(typeof e!="object"||e===null)return;let o="payload"in e&&typeof e.payload=="object"&&e.payload!==null?e.payload:void 0,r=n;return n in e&&typeof e[n]=="string"?r=e[n]:o&&n in o&&typeof o[n]=="string"&&(r=o[n]),r in t?t[r]:t[n]}function Ve({onZoomChange:t}={}){let[e,n]=kt.useState({refAreaLeft:null,refAreaRight:null,refAreaTop:null,refAreaBottom:null,zooming:false}),[o,r]=kt.useState({x:[null,null],y:[null,null]}),s=kt.useCallback(u=>{!u?.xValue||!u?.yValue||n(d=>({...d,refAreaLeft:u.xValue,refAreaTop:u.yValue,zooming:true}));},[]),a=kt.useCallback(u=>{!u?.xValue||!u?.yValue||!e.zooming||n(d=>({...d,refAreaRight:u.xValue,refAreaBottom:u.yValue}));},[e.zooming]),i=kt.useCallback(()=>{if(!e.refAreaLeft||!e.refAreaRight||!e.refAreaTop||!e.refAreaBottom){n({refAreaLeft:null,refAreaRight:null,refAreaTop:null,refAreaBottom:null,zooming:false});return}let[u,d]=[Math.min(e.refAreaLeft,e.refAreaRight),Math.max(e.refAreaLeft,e.refAreaRight)],[p,m]=[Math.min(e.refAreaTop,e.refAreaBottom),Math.max(e.refAreaTop,e.refAreaBottom)],g={x:[u,d],y:[p,m]};r(g),t?.(g),n({refAreaLeft:null,refAreaRight:null,refAreaTop:null,refAreaBottom:null,zooming:false});},[e,t]),c=kt.useCallback(()=>{let u={x:[null,null],y:[null,null]};r(u),t?.(u);},[t]),l=kt.useMemo(()=>({onZoomStart:s,onZoomMove:a,onZoomEnd:i,onResetZoom:c}),[s,a,i,c]);return {zoomState:e,customDomain:o,handlers:l}}function Ur(t){let e={max:null,min:null};if(t.maxValue)if(t.type==="number"){let n=parseFloat(t.maxValue);isNaN(n)?console.warn(`Error parsing max value ${t.maxValue}. Falling back to default.`):e.max=n;}else t.type==="date"?typeof t.maxValue=="string"&&/^\d{4}-\d{2}-\d{2}$/.test(t.maxValue)?e.max=new Date(t.maxValue+"T00:00:00.000Z").getTime():e.max=new Date(t.maxValue).getTime():e.max=t.maxValue;if(t.minValue)if(t.type==="number"){let n=parseFloat(t.minValue);isNaN(n)?console.warn(`Error parsing min value ${t.minValue}. Falling back to default.`):e.min=n;}else t.type==="date"?typeof t.minValue=="string"&&/^\d{4}-\d{2}-\d{2}$/.test(t.minValue)?e.min=new Date(t.minValue+"T00:00:00.000Z").getTime():e.min=new Date(t.minValue).getTime():e.min=t.minValue;return e}function _t(t,e,n){return et(t,e,n)}function Os({title:t,subtitle:e,data:n,displayConfig:o,dataConfig:r,ChartComponent:s,PointComponent:a,disableAnimation:i,onZoomChange:c,stacked:l,enableDownload:u=true,onDownloadSuccess:d,onDownloadError:p,className:m,chartContainerClassName:g,downloadButtonClassName:f,resetZoomButtonClassName:h}){let{zoomState:b,customDomain:x,handlers:y}=Ve({onZoomChange:c}),k=kt.useCallback(C=>{let I=`${(t||"chart").toLowerCase().replace(/\s+/g,"-")}.png`,T=document.createElement("a");T.download=I,T.href=C,T.click(),d?.(I);},[t,d]),S=kt.useCallback(C=>{console.error("Error converting chart to image:",C),p?.(C);},[p]),[{isLoading:_},v,N]=reactToImage.useToPng({onSuccess:k,onError:S}),U=kt.useCallback(async()=>{v();},[v]),tt=kt.useMemo(()=>Ur(r.xAxis),[r.xAxis]),O=kt.useMemo(()=>r.yAxes.map(C=>Ur(C)),[r.yAxes]),H=kt.useMemo(()=>n?r.chartType==="histogram"?n.map(C=>({[r.xAxis.key]:(C.binStart+C.binEnd)/2,frequency:C.frequency,binStart:C.binStart,binEnd:C.binEnd})):r.xAxis.type==="number"?n.map(C=>({...C,[r.xAxis.key]:Number(C[r.xAxis.key])})).filter(C=>!isNaN(C[r.xAxis.key])):r.xAxis.type==="date"?n.map(C=>{let I=C[r.xAxis.key],T;return I instanceof Date?T=I.getTime():typeof I=="number"?T=I:typeof I=="string"?T=new Date(I).getTime():T=NaN,{...C,[r.xAxis.key]:T}}).filter(C=>!isNaN(C[r.xAxis.key])):n:[],[n,r.xAxis.key,r.chartType,r.xAxis.type]),G=kt.useMemo(()=>{if(r.xAxis.type==="category"||!H.length)return;let C=H.map(T=>Number(T[r.xAxis.key])).filter(T=>!isNaN(T)),I=[...new Set(C)].sort((T,A)=>T-A);if(!(r.chartType==="scatter"||I.length>20))return I},[H,r.xAxis.key,r.xAxis.type,r.chartType]),Rn=kt.useMemo(()=>{if(!G||G.length<2)return;let I=(G[G.length-1]-G[0])*.05;return [G[0]-I,G[G.length-1]+I]},[G]),w=kt.useCallback((C,I)=>{if(!C?.length)return {min:null,max:null};let T=C.map(A=>Number(A[I])).filter(A=>!isNaN(A));return {min:Math.min(...T),max:Math.max(...T)}},[]),D=kt.useMemo(()=>({x:x.x[0]!==null&&x.x[1]!==null?[x.x[0],x.x[1]]:(()=>{if(tt.min!==null&&tt.max!==null)return [tt.min,tt.max];let C=w(H,r.xAxis.key);return [C.min??"auto",C.max??"auto"]})(),y:r.yAxes.map((C,I)=>{if(x.y[0]!==null&&x.y[1]!==null)return [x.y[0],x.y[1]];let A=r.series.filter(K=>(K.axisIndex||0)===I).reduce((K,xe)=>{let Y=w(H,xe.key);return {min:K.min===null?Y.min:Y.min===null?K.min:Math.min(K.min,Y.min),max:K.max===null?Y.max:Y.max===null?K.max:Math.max(K.max,Y.max)}},{min:null,max:null});if(C.type==="number"&&C.maxValue){let K=parseFloat(C.maxValue);if(A.max===null||K<=A.max*1.5)return [O[I].min??A.min??"auto",O[I].max??A.max??"auto"]}return [O[I].min??A.min??"auto",O[I].max??A.max??"auto"]})}),[x.x,x.y,tt,O,r.series,r.yAxes,r.xAxis.key,H,w]),V=kt.useCallback((C,I,T)=>{if(T.dataKey===r.xAxis.key)return _t(C,r.xAxis.format,r.xAxis.type);let A=r.series.find(ke=>ke.key===T.dataKey),K=A?.name||String(I).replace(/^dataset_\d+_/,"");if(r.chartType==="histogram"){let ke=T.payload;if(ke.binStart!==void 0){let fs=_t(ke.binStart,r.xAxis.format,r.xAxis.type),gs=_t(ke.binEnd,r.xAxis.format,r.xAxis.type);return `Count: ${C} (${fs} - ${gs})`}}let xe=A?.axisIndex||0,Y=r.yAxes[xe],An=_t(C,Y?.format,Y?.type);return `${K}: ${An}`},[r.xAxis,r.series,r.yAxes,r.chartType]),[Z,F]=kt.useState(false);kt.useEffect(()=>{let C=setTimeout(()=>{F(true);},1700);return ()=>clearTimeout(C)},[]);let W=kt.useCallback((C,I)=>{if(I&&I.length>0){let T=I[0].payload[r.xAxis.key],A=_t(T,r.xAxis.format,r.xAxis.type);return jsxRuntime.jsxs("div",{className:"flex flex-col",children:[jsxRuntime.jsx("span",{children:r.xAxis.label}),jsxRuntime.jsx("span",{className:"font-mono tabular-nums",children:A})]})}return C},[r.xAxis.key,r.xAxis.format,r.xAxis.type,r.xAxis.label]),Ut=kt.useCallback(C=>jsxRuntime.jsx(Ln,{...C,formatter:V,labelFormatter:W}),[V,W]),Oe=kt.useCallback(C=>jsxRuntime.jsx(jn,{...C}),[]),Nt=kt.useMemo(()=>{let C=H.length,I=C>30?8:C>20?12:C>10?16:20,T=0;for(let xe of H){let Y=_t(xe[r.xAxis.key],r.xAxis.format,r.xAxis.type),An=typeof Y=="string"?Y:String(Y??"");T=Math.max(T,Math.min(An.length,I));}let A=T*7*C>500,K=A?Math.min(Math.max(40,T*5.5+20),140):50;return {maxLabelLen:I,shouldAngle:A,height:K}},[H,r.xAxis.key,r.xAxis.format,r.xAxis.type]),ot=kt.useMemo(()=>!!(i||(n?.length||0)>100||Z),[i,n?.length,Z]);return jsxRuntime.jsxs("div",{className:m||"w-full items-center mt-0 flex flex-col gap-0",children:[(t||u)&&jsxRuntime.jsxs("div",{className:"w-full items-center mb-2 relative",children:[t&&jsxRuntime.jsx("h2",{className:"text-center text-base pt-0 mt-0 mb-2",children:t}),u&&jsxRuntime.jsx("button",{onClick:U,disabled:_,className:f||"text-sm text-gray-500 hover:text-gray-700 disabled:opacity-50 h-8 absolute right-0 top-[-5px] px-2 py-1 border rounded hover:bg-gray-50",title:"Download chart as PNG",children:jsxRuntime.jsx(lucideReact.Download,{className:"w-4 h-4"})})]}),e&&jsxRuntime.jsx("p",{className:"text-center text-sm text-muted-foreground mb-2",children:e}),jsxRuntime.jsx(Se,{ref:N,config:o,className:g||"w-full border border-border/50 p-4 rounded-md",debounceResize:true,children:jsxRuntime.jsxs(s,{accessibilityLayer:true,data:H,isAnimationActive:!ot,onMouseDown:y.onZoomStart,onMouseMove:y.onZoomMove,onMouseUp:y.onZoomEnd,onDoubleClick:y.onResetZoom,style:{userSelect:"none",cursor:"crosshair"},children:[jsxRuntime.jsx(qt.CartesianGrid,{vertical:false}),jsxRuntime.jsx(qt.XAxis,{dataKey:r.xAxis.key,domain:Rn||D.x,type:r.xAxis.type==="date"||!r.xAxis.type?"number":r.xAxis.type,tickFormatter:C=>{let I=_t(C,r.xAxis.format,r.xAxis.type),T=typeof I=="string"?I:String(I??"");return T.length>Nt.maxLabelLen?T.slice(0,Nt.maxLabelLen)+"\u2026":T},tickLine:false,tickMargin:10,height:Nt.height,axisLine:false,allowDataOverflow:true,interval:"preserveStartEnd",ticks:G,...Nt.shouldAngle?{angle:-45,textAnchor:"end"}:{},children:jsxRuntime.jsx(qt.Label,{value:r.xAxis.label,position:"bottom",offset:Nt.shouldAngle?-5:-10,style:{textAnchor:"middle"}})}),r.yAxes.map((C,I)=>jsxRuntime.jsx(qt.YAxis,{yAxisId:I,orientation:I===0?"left":"right",domain:l?void 0:D.y[I],type:C.type==="date"||!C.type?"number":C.type,tickFormatter:T=>{let A=_t(T,C.format,C.type);return typeof A=="string"&&A.length>20?A.slice(0,20)+"...":A},allowDataOverflow:true,children:jsxRuntime.jsx(qt.Label,{value:C.label,position:I===0?"insideLeft":"insideRight",angle:-90,dx:I===0?-15:15,style:{textAnchor:"middle"}})},`y-axis-${C.key}`)),jsxRuntime.jsx(Vn,{content:Ut}),jsxRuntime.jsx($n,{content:Oe,verticalAlign:"top"}),r.series.map(C=>jsxRuntime.jsx(a,{dataKey:C.key,yAxisId:C.axisIndex||0,fill:C.color||"blue",stroke:C.color||"blue",dot:{fill:C.color||"blue",stroke:C.color||"blue"},radius:4,name:C.name,isAnimationActive:!ot,animationDuration:1500,animationBegin:0,stackId:r.chartType==="bar"&&l?"stack":void 0},`${C.key}-${l?"stacked":"unstacked"}`)),b.refAreaLeft&&b.refAreaRight&&b.refAreaTop&&b.refAreaBottom&&jsxRuntime.jsx(qt.ReferenceArea,{x1:b.refAreaLeft,x2:b.refAreaRight,y1:b.refAreaTop,y2:b.refAreaBottom,strokeOpacity:.2,stroke:"currentColor",fill:"currentColor",fillOpacity:.02,style:{pointerEvents:"none"}})]})}),x.x[0]!==null&&jsxRuntime.jsx("button",{onClick:y.onResetZoom,className:h||"text-sm text-gray-500 hover:text-gray-700 mt-2 px-3 py-1 border rounded hover:bg-gray-50",children:"Reset Zoom"})]})}function ut(t){return jsxRuntime.jsx(Et,{fallback:jsxRuntime.jsx("div",{className:t.errorClassName||"text-red-500",children:"Failed to load chart"}),children:jsxRuntime.jsx(Os,{...t})})}function Dt(t){return jsxRuntime.jsx(ut,{...t,ChartComponent:qt.BarChart,PointComponent:qt.Bar})}function zt(t){return jsxRuntime.jsx(ut,{...t,ChartComponent:qt.LineChart,PointComponent:qt.Line})}var Hs=(t,e,n)=>{let o=parseInt(t.slice(1,3),16)/255,r=parseInt(t.slice(3,5),16)/255,s=parseInt(t.slice(5,7),16)/255,a=Math.max(o,r,s),i=Math.min(o,r,s),c,l,u=(a+i)/2;if(a===i)c=l=0;else {let f=a-i;switch(l=u>.5?f/(2-a-i):f/(a+i),a){case o:c=(r-s)/f+(r<s?6:0);break;case r:c=(s-o)/f+2;break;case s:c=(o-r)/f+4;break;default:c=0;}c/=6;}let d=e/n,p=c*360+(d*40-20),m=Math.min(100,l*100+d*25),g=Math.max(35,Math.min(65,u*100-d*20));return `hsl(${p}, ${m}%, ${g}%)`};function Ks({title:t,subtitle:e,data:n,displayConfig:o,dataConfig:r,className:s,chartContainerClassName:a}){let i=r.series[0]?.color||"blue",c=r.yAxes[0]?.format,l=r.yAxes[0]?.type||"number",u=kt.useMemo(()=>n.reduce((d,p)=>(r.series.forEach(m=>{let g=m.key,f=String(p[r.xAxis.key]||"Unknown"),h=parseFloat(p[g]||"0");isNaN(h)||d.push({name:f,value:h,seriesId:g,displayName:f});}),d),[]).sort((d,p)=>p.value-d.value),[n,r.series,r.xAxis.key]);return jsxRuntime.jsxs("div",{className:s||"items-center",children:[jsxRuntime.jsx("h2",{className:"text-center text-base mb-2",children:t}),e&&jsxRuntime.jsx("p",{className:"text-center text-sm text-muted-foreground mb-2",children:e}),jsxRuntime.jsx(Se,{config:o,className:a||"w-full border border-border/50 rounded-md",children:jsxRuntime.jsxs(qt.PieChart,{width:400,height:400,children:[jsxRuntime.jsx(qt.Pie,{data:u,dataKey:"value",nameKey:"displayName",cx:"50%",cy:"50%",outerRadius:150,label:d=>`${d.displayName}: ${et(d.value,c,l)}`,children:u.map((d,p)=>jsxRuntime.jsx(qt.Cell,{fill:p===0?i:Hs(i,p,u.length)},`cell-${d.name}`))}),jsxRuntime.jsx(qt.Tooltip,{formatter:(d,p)=>[et(d,c,l),p]}),jsxRuntime.jsx(qt.Legend,{})]})})]})}function Ht(t){return jsxRuntime.jsx(Et,{fallback:jsxRuntime.jsx("div",{className:"text-red-500",children:"Failed to load chart"}),children:jsxRuntime.jsx(Ks,{...t})})}function Kt(t){return jsxRuntime.jsx(ut,{...t,ChartComponent:qt.ScatterChart,PointComponent:qt.Scatter})}var ea=t=>{let{cx:e,cy:n,payload:o,xAxis:r,yAxis:s}=t,a=o.value||o.z||0,c=`hsl(${240-Math.min(1,Math.max(0,a/100))*240}, 70%, 50%)`,l=r.scale.bandwidth?r.scale.bandwidth():20,u=s.scale.bandwidth?s.scale.bandwidth():20;return jsxRuntime.jsx("rect",{x:e-l/2,y:n-u/2,width:l,height:u,fill:c,fillOpacity:.8,stroke:"#fff",strokeWidth:1})},na=t=>jsxRuntime.jsx(qt.Scatter,{...t,shape:ea});function Qt(t){return jsxRuntime.jsx(ut,{...t,ChartComponent:qt.ScatterChart,PointComponent:na})}function Jr(t){return t.replace(/[A-Z]/g,e=>`_${e.toLowerCase()}`).replace(/^_/,"")}function Zt(t,e){if(!t.length)return e;let n=t[0];if(n[e]!==void 0)return e;let o=e.toLowerCase();if(n[o]!==void 0)return o;let r=Jr(e);if(n[r]!==void 0)return r;let s=e.toLowerCase().replace(/_/g,"");return Object.keys(n).find(i=>i.toLowerCase().replace(/_/g,"")===s)||e}function ua(){return ["yyyy-MM-dd","yyyyMMdd","yyyy-MM-dd'T'HH:mm:ss","yyyyMMddHHmmss"]}function da(t){if(!t)return null;if(typeof t=="string"){if(/^\d{4}-\d{2}-\d{2}$/.test(t)){let r=new Date(t+"T00:00:00.000Z");if(dateFns.isValid(r))return r.getTime()}let o=ua();for(let r of o){let s=dateFns.parse(t,r,new Date);if(dateFns.isValid(s))return s.getTime()}}let e=new Date(t);return dateFns.isValid(e)?e.getTime():null}function je(t,e,n,o){let r=e==="index"&&t[e]===void 0?o:t[e];return n==="date"?da(r):n==="number"?parseFloat(r):r}function pa(t,e,n){if(t===e.key)return e.type||"category";let o=n.find(r=>r.key===t);return o?o.type||"number":"category"}function Yt(t,e,n,o){return !o||o.length===0?t:[...t].sort((r,s)=>{for(let a of o){let i=pa(a.key,e,n),c=je(r,a.key,i,r.index),l=je(s,a.key,i,s.index);if(c===l)continue;let u=typeof c=="number"&&typeof l=="number"?c-l:c instanceof Date&&l instanceof Date?c.getTime()-l.getTime():String(c).localeCompare(String(l));return a.direction==="asc"?u:-u}return 0})}function Gr(t,e){let n=Math.ceil(t.length/e),o=[t[0]];for(let r=n;r<t.length-1;r+=n)o.push(t[r]);return o[o.length-1]!==t[t.length-1]&&o.push(t[t.length-1]),o}function ma(t,e,n,o,r,s,a){let i=t.reduce((u,d)=>{let p=d[e];return u[p]||(u[p]=[]),u[p].push(d),u},{}),c=Object.entries(i);if(c.length>o){let u=Math.ceil(c.length/o),d=c.reduce((p,[m,g],f)=>{let h=Math.floor(f/u);return p[h]||(p[h]={key:m,items:[]}),p[h].items.push(...g),p},[]).map(({key:p,items:m})=>({[e]:p,...n.reduce((g,f)=>{let h=m.map(b=>parseFloat(b[f.key])).filter(b=>!isNaN(b));return g[f.key]=h.length?h.reduce((b,x)=>b+x,0)/h.length:null,g},{})}));return a&&a.length>0?Yt(d,r,s,a):d}let l=c.map(([u,d])=>{let p=n.reduce((g,f)=>{let h=d.map(b=>parseFloat(b[f.key])).filter(b=>!isNaN(b));return g[f.key]=h.length?h.reduce((b,x)=>b+x,0)/h.length:null,g},{}),m=Object.values(p).filter(g=>g!==null).reduce((g,f)=>g+f,0);return {[e]:u,...p,index:m}});return a&&a.length>0?Yt(l,r,s,a):l}function fa(t,e,n,o){let r=t.map(l=>parseFloat(l[e])).filter(l=>!isNaN(l)),s=Math.min(...r),i=(Math.max(...r)-s)/o,c=Array.from({length:o},(l,u)=>({binStart:s+u*i,binEnd:s+(u+1)*i,count:0,seriesValues:n.reduce((d,p)=>(d[p.key]=[],d),{})}));return t.forEach(l=>{let u=parseFloat(l[e]);if(isNaN(u))return;let d=Math.min(Math.floor((u-s)/i),o-1);c[d].count++,n.forEach(p=>{let m=parseFloat(l[p.key]);isNaN(m)||c[d].seriesValues[p.key].push(m);});}),c.map(l=>({[e]:(l.binStart+l.binEnd)/2,...n.reduce((u,d)=>{let p=l.seriesValues[d.key];return u[d.key]=p.length?p.reduce((m,g)=>m+g,0)/p.length:null,u},{}),count:l.count,index:n.reduce((u,d)=>{let p=l.seriesValues[d.key],m=p.length?p.reduce((g,f)=>g+f,0)/p.length:0;return u+m},0)})).filter(l=>n.some(u=>l[u.key]!==null))}function Wr(t,e,n,o,r){let s=t.map((m,g)=>{let f=je(m,e,r.type||"number",g);return typeof f=="number"?f:parseFloat(f)}).filter(m=>!isNaN(m)),a=Math.min(...s),l=(Math.max(...s)-a)/o,u=Array.from({length:o},(m,g)=>({binStart:Number((a+g*l).toFixed(2)),binEnd:Number((a+(g+1)*l).toFixed(2)),frequency:0,[e]:Number((a+(g+.5)*l).toFixed(2))}));s.forEach(m=>{let g=Math.min(Math.floor((m-a)/l),o-1);u[g].frequency++;});let d=u.filter(m=>m.frequency>0);return (u.length-d.length)/u.length*100>30?Wr(t,e,n,Math.floor(o/2),r):d}function ga(t,e,n,o){return !e||e.length===0?t:t.filter(r=>e.every(s=>{let a=s.key;n&&s.key.toLowerCase()===n.toLowerCase()?a=n:o&&s.key.toLowerCase()===o.toLowerCase()&&(a=o);let i=r[a],c=Array.isArray(s.value)?s.value:[s.value];switch(s.operator){case "equals":return c.some(l=>String(i)===String(l));case "not_equals":return c.every(l=>String(i)!==String(l));case "greater_than":return parseFloat(String(i))>parseFloat(String(c[0]));case "less_than":return parseFloat(String(i))<parseFloat(String(c[0]));case "contains":return String(i).toLowerCase().includes(String(c[0]).toLowerCase());case "between":if(c.length===2){let l=parseFloat(String(i)),u=parseFloat(String(c[0])),d=parseFloat(String(c[1]));return l>=u&&l<=d}return true;default:return true}}))}var Ue=kt__namespace.default.memo(function({chartType:e,title:n,invocationId:o,datasetSlugs:r,xAxis:s,yAxes:a,series:i,dataReduction:c={strategy:"none",target_points:1e3},stacked:l,sort:u,onScrollUpdate:d,enableDownload:p=true,className:m,chartContainerClassName:g}){let f=kt.useMemo(()=>i.map(w=>({datasetSlug:w.datasetSlug,sqlQuery:w.sqlQuery,resourceKey:w.resourceKey,filters:!w.sqlQuery&&w.filters?.length?w.filters:void 0})),[i]),h=be(f,o),b=h.some(w=>w.isLoading),x=useDeepCompare.useDeepCompareMemo(()=>h.map(w=>w.data||[]),[h.map(w=>w.data)]),{resolvedXAxisKey:y,resolvedSeriesKeys:k}=kt.useMemo(()=>{let w=x.find(D=>D.length>0)||[];return {resolvedXAxisKey:Zt(w,s.key),resolvedSeriesKeys:i.map((D,V)=>({...D,resolvedKey:Zt(x[V]||[],D.key)}))}},[x,s.key,i]),S=kt.useMemo(()=>{let w=new Map;i.forEach((V,Z)=>{let F=x[Z]||[],W=k[Z]?.resolvedKey||V.key;(V.filters?ga(F,V.filters,W,y):F).forEach((Oe,Nt)=>{let ot=je(Oe,y,s.type||"category",Nt);if(ot==null||s.type==="number"&&isNaN(ot))return;let C=s.type==="number"||s.type==="date"||typeof ot=="object"?ot.toString():String(ot);w.has(C)||w.set(C,{[s.key]:ot});let I=`series_${Z}_${V.key}`,T=Oe[W];w.get(C)[I]=T;});});let D=Array.from(w.values());return u&&u.length>0?D:s.type==="date"?D.sort((V,Z)=>V[s.key]-Z[s.key]):s.type==="number"?D.sort((V,Z)=>{let F=parseFloat(V[s.key]),W=parseFloat(Z[s.key]);return isNaN(F)||isNaN(W)?0:F-W}):D},[x,i,k,y,s,u]),_=kt.useMemo(()=>i.map((w,D)=>({...w,key:`series_${D}_${w.key}`})),[i]),v=kt.useMemo(()=>({[s.key]:{label:s.label,format:s.format,type:s.type},..._.reduce((w,D)=>(w[D.key]={label:D.name,color:D.color},w),{}),...e==="histogram"?{frequency:{label:a[0]?.label||"Frequency",color:_[0]?.color||"#2563eb"}}:{}}),[s,_,e,a]),N=kt.useMemo(()=>!s.key||!_.length?null:{chartType:e,xAxis:s,yAxes:e==="histogram"?a.map(w=>({...w,key:"frequency",minValue:w.minValue||"0"})):a,series:e==="histogram"?[{key:"frequency",name:a[0]?.label||"Frequency",color:i[0]?.color||"#2563eb"}]:_},[s,a,i,_,e]),U=null;switch(e){case "bar":U=Dt;break;case "line":U=zt;break;case "pie":U=Ht;break;case "scatter":U=Kt;break;case "histogram":U=Dt;break;case "heatmap":U=Qt;break}let tt=kt.useRef(false);kt.useEffect(()=>{tt.current||!d||!b&&v&&N&&S.length&&(d(),setTimeout(()=>d(),250),tt.current=true);},[d,b,v,N,S.length]);let[O,H]=kt.useState({x:[null,null],y:[null,null]}),{processedData:G,dataReductionInfo:Rn}=kt.useMemo(()=>{if(b||!S.length)return {processedData:[],dataReductionInfo:null};if(e==="histogram"){let F=c.target_points||20;return {processedData:Wr(S,y,_,F,s),dataReductionInfo:null}}let w=S;if((O.x[0]!==null||O.y[0]!==null)&&(w=S.filter(F=>{if(O.x[0]!==null&&O.x[1]!==null){let W=parseFloat(F[s.key]);if(isNaN(W)||W<O.x[0]||W>O.x[1])return false}if(O.y[0]!==null&&O.y[1]!==null)for(let W of _){let Ut=parseFloat(F[W.key]);if(!isNaN(Ut)&&(Ut<O.y[0]||Ut>O.y[1]))return false}return true})),c.strategy==="none"||!c.target_points||w.length<=c.target_points&&(!u||u.length===0)){let F=w;return u&&u.length>0&&(F=Yt(F,s,a,u)),{processedData:F,dataReductionInfo:null}}let D,V="";switch(c.strategy){case "sample":D=Gr(w,c.target_points),V="sampled",u&&u.length>0&&(D=Yt(D,s,a,u));break;case "aggregate":D=ma(w,y,_,c.target_points,s,a,u),V="aggregated";break;case "bin":D=fa(w,y,_,c.target_points),V="binning",u&&u.length>0&&(D=Yt(D,s,a,u));break;default:w.length<1e3?D=w:(D=Gr(w,c.target_points),V="sampled"),u&&u.length>0&&(D=Yt(D,s,a,u));}let Z=null;return w.length!==D.length&&(Z=`${V} ${w.length.toLocaleString()} \u2192 ${D.length.toLocaleString()} points`),{processedData:D,dataReductionInfo:Z}},[S,c,e,b,O.x,O.y,_,u,s,a,y]);return U?b?jsxRuntime.jsx("div",{children:"Loading..."}):S.length?N?jsxRuntime.jsx(U,{data:G,displayConfig:v,stacked:l,dataConfig:N,title:n,subtitle:Rn||void 0,disableAnimation:G.length>100,onZoomChange:H,enableDownload:p,className:m,chartContainerClassName:g}):jsxRuntime.jsx("div",{children:"Invalid chart configuration"}):jsxRuntime.jsx("div",{children:"Unable to display chart - no data available"}):(console.error("No chart component found"),null)},(t,e)=>ra__default.default(t,e));function Fe({title:t,invocationId:e,datasetSlug:n,sqlQuery:o,resourceKey:r,columns:s,maxRows:a=100,className:i,tableWrapperClassName:c,headerClassName:l,loadingClassName:u,emptyClassName:d,onScrollUpdate:p}){let{data:m,isLoading:g}=Gt(n,e,o,r),f=kt.useMemo(()=>s?m?.length?s.map(x=>{let y=Zt(m,x.key);return {key:x.key,name:x.name,resolvedKey:y,format:x.format,value_type:x.value_type}}):[]:m?.length?Object.keys(m[0]).map(x=>({key:x,name:x,resolvedKey:x,format:void 0,value_type:void 0})):[],[s,m]),h=kt.useMemo(()=>!m||m.length===0?[]:a?m.slice(0,a):m,[m,a]),b=kt.useRef(false);return kt.useEffect(()=>{b.current||!p||!g&&m?.length&&(p(),setTimeout(()=>p(),250),b.current=true);},[p,g,m?.length]),g?jsxRuntime.jsx("div",{className:u||"text-gray-500",children:"Loading..."}):m?.length?f.length===0?jsxRuntime.jsx("div",{className:d||"text-gray-500",children:"No columns defined"}):jsxRuntime.jsxs("div",{className:i||"w-full",children:[t&&jsxRuntime.jsx("h3",{className:"text-lg font-medium mb-3",children:t}),jsxRuntime.jsx("div",{className:c||"relative w-full overflow-x-auto rounded-lg border border-border/50",children:jsxRuntime.jsxs("table",{className:"w-full caption-bottom text-sm",children:[jsxRuntime.jsx("thead",{className:"[&_tr]:border-b",children:jsxRuntime.jsx("tr",{className:l||"border-b transition-colors",children:f.map(x=>jsxRuntime.jsx("th",{className:"h-10 px-3 text-left align-middle font-medium text-muted-foreground",children:x.name},x.key))})}),jsxRuntime.jsx("tbody",{className:"[&_tr:last-child]:border-0",children:h.map((x,y)=>jsxRuntime.jsx("tr",{className:`border-b transition-colors hover:bg-muted/50 ${y%2===1?"bg-muted/30":""}`,children:f.map(k=>jsxRuntime.jsx("td",{className:"p-3 align-middle text-foreground",children:et(x[k.resolvedKey],k.format,k.value_type)},k.key))},y))})]})}),m.length>a&&jsxRuntime.jsxs("p",{className:"text-sm text-muted-foreground mt-2",children:["Showing ",a," of ",m.length," rows"]})]}):jsxRuntime.jsx("div",{className:d||"text-gray-500",children:"No data"})}function Je({output:t,ContentComponent:e}){let n=Q(),o=e??n?.ContentComponent,r=t?.contents;if(!t||!t.output||!r?.length)return null;let s=r.filter(a=>a.user_visibility==="visible");return s.length?jsxRuntime.jsx("div",{children:s.map(a=>o?jsxRuntime.jsx(o,{content:a},a.id):jsxRuntime.jsx("div",{className:"text-sm",children:typeof a.content=="string"?a.content:null},a.id))},t.output.id):null}function zr(t){return t!==null&&typeof t=="object"&&"Valid"in t&&"String"in t}function M(t){if(typeof t=="string")return t;if(zr(t))return t.Valid?t.String:void 0}function xa(t,e){return M(t)??e}var Hr={v:"5.10.2",fr:60,ip:0,op:180,w:144,h:144,nm:"system-solid-719-spinner-circle",ddd:0,assets:[{id:"comp_6",nm:"loop-snake-alt",fr:60,layers:[{ddd:0,ind:1,ty:0,nm:"mask-2",td:1,refId:"comp_7",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[72,72,0],ix:2,l:2},a:{a:0,k:[72,72,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,w:144,h:144,ip:0,op:1800,st:0,bm:0},{ddd:0,ind:2,ty:4,nm:"circle 2",tt:2,tp:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[72,72,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[-30.652,0],[0,30.652],[30.652,0],[0,-30.652]],o:[[30.652,0],[0,-30.652],[-30.652,0],[0,30.652]],v:[[0,55.5],[55.5,0],[0,-55.5],[-55.5,0]],c:true},ix:2},nm:"Path 1",mn:"ADBE Vector Shape - Group",hd:false},{ty:"st",c:{a:0,k:[.071,.075,.192,1],ix:3,x:`var $bm_rt;
|
|
7
|
+
`)}}):null},Vn=qt__namespace.Tooltip;function Ln({active:t,payload:e,className:n,indicator:o="dot",hideLabel:r=false,hideIndicator:s=false,label:a,labelFormatter:i,labelClassName:c,formatter:l,color:u,nameKey:d,labelKey:p}){let{config:m}=Vr(),g=kt__namespace.useMemo(()=>{if(r||!e?.length)return null;let[h]=e,b=`${p||h?.dataKey||h?.name||"value"}`,x=Mn(m,h,b),y=!p&&typeof a=="string"?m[a]?.label||a:x?.label;return i?jsxRuntime.jsx("div",{className:X("font-medium",c),children:i(y,e)}):y?jsxRuntime.jsx("div",{className:X("font-medium",c),children:y}):null},[a,i,e,r,c,m,p]);if(!t||!e?.length)return null;let f=e.length===1&&o!=="dot";return jsxRuntime.jsxs("div",{className:X("border-border/50 bg-background grid min-w-[8rem] items-start gap-1.5 rounded-lg border px-2.5 py-1.5 text-xs shadow-xl",n),children:[f?null:g,jsxRuntime.jsx("div",{className:"grid gap-1.5",children:e.map((h,b)=>{let x=`${d||h.name||h.dataKey||"value"}`,y=Mn(m,h,x),k=u||h.payload.fill||h.color;return jsxRuntime.jsx("div",{className:X("[&>svg]:text-muted-foreground flex w-full flex-wrap items-stretch gap-2 [&>svg]:h-2.5 [&>svg]:w-2.5",o==="dot"&&"items-center"),children:l&&h?.value!==void 0&&h.name?l(h.value,h.name,h,b,h.payload):jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[y?.icon?jsxRuntime.jsx(y.icon,{}):!s&&jsxRuntime.jsx("div",{className:X("shrink-0 rounded-[2px] border-(--color-border) bg-(--color-bg)",{"h-2.5 w-2.5":o==="dot","w-1":o==="line","w-0 border-[1.5px] border-dashed bg-transparent":o==="dashed","my-0.5":f&&o==="dashed"}),style:{"--color-bg":k,"--color-border":k}}),jsxRuntime.jsxs("div",{className:X("flex flex-1 justify-between leading-none",f?"items-end":"items-center"),children:[jsxRuntime.jsxs("div",{className:"grid gap-1.5",children:[f?g:null,jsxRuntime.jsx("span",{className:"text-muted-foreground",children:y?.label||h.name})]}),h.value&&jsxRuntime.jsx("span",{className:"text-foreground font-mono font-medium tabular-nums",children:h.value.toLocaleString()})]})]})},h.dataKey)})})]})}var $n=qt__namespace.Legend;function jn({className:t,hideIcon:e=false,payload:n,verticalAlign:o="bottom",nameKey:r}){let{config:s}=Vr();return n?.length?jsxRuntime.jsx("div",{className:X("flex items-center justify-center gap-4",o==="top"?"pb-3":"pt-3",t),children:n.map(a=>{let i=`${r||a.dataKey||"value"}`,c=Mn(s,a,i);return jsxRuntime.jsxs("div",{className:X("[&>svg]:text-muted-foreground flex items-center gap-1.5 [&>svg]:h-3 [&>svg]:w-3"),children:[c?.icon&&!e?jsxRuntime.jsx(c.icon,{}):jsxRuntime.jsx("div",{className:"h-2 w-2 shrink-0 rounded-[2px]",style:{backgroundColor:a.color}}),c?.label]},a.value)})}):null}function Mn(t,e,n){if(typeof e!="object"||e===null)return;let o="payload"in e&&typeof e.payload=="object"&&e.payload!==null?e.payload:void 0,r=n;return n in e&&typeof e[n]=="string"?r=e[n]:o&&n in o&&typeof o[n]=="string"&&(r=o[n]),r in t?t[r]:t[n]}function Ve({onZoomChange:t}={}){let[e,n]=kt.useState({refAreaLeft:null,refAreaRight:null,refAreaTop:null,refAreaBottom:null,zooming:false}),[o,r]=kt.useState({x:[null,null],y:[null,null]}),s=kt.useCallback(u=>{!u?.xValue||!u?.yValue||n(d=>({...d,refAreaLeft:u.xValue,refAreaTop:u.yValue,zooming:true}));},[]),a=kt.useCallback(u=>{!u?.xValue||!u?.yValue||!e.zooming||n(d=>({...d,refAreaRight:u.xValue,refAreaBottom:u.yValue}));},[e.zooming]),i=kt.useCallback(()=>{if(!e.refAreaLeft||!e.refAreaRight||!e.refAreaTop||!e.refAreaBottom){n({refAreaLeft:null,refAreaRight:null,refAreaTop:null,refAreaBottom:null,zooming:false});return}let[u,d]=[Math.min(e.refAreaLeft,e.refAreaRight),Math.max(e.refAreaLeft,e.refAreaRight)],[p,m]=[Math.min(e.refAreaTop,e.refAreaBottom),Math.max(e.refAreaTop,e.refAreaBottom)],g={x:[u,d],y:[p,m]};r(g),t?.(g),n({refAreaLeft:null,refAreaRight:null,refAreaTop:null,refAreaBottom:null,zooming:false});},[e,t]),c=kt.useCallback(()=>{let u={x:[null,null],y:[null,null]};r(u),t?.(u);},[t]),l=kt.useMemo(()=>({onZoomStart:s,onZoomMove:a,onZoomEnd:i,onResetZoom:c}),[s,a,i,c]);return {zoomState:e,customDomain:o,handlers:l}}function Ur(t){let e={max:null,min:null};if(t.maxValue)if(t.type==="number"){let n=parseFloat(t.maxValue);isNaN(n)?console.warn(`Error parsing max value ${t.maxValue}. Falling back to default.`):e.max=n;}else t.type==="date"?typeof t.maxValue=="string"&&/^\d{4}-\d{2}-\d{2}$/.test(t.maxValue)?e.max=new Date(t.maxValue+"T00:00:00.000Z").getTime():e.max=new Date(t.maxValue).getTime():e.max=t.maxValue;if(t.minValue)if(t.type==="number"){let n=parseFloat(t.minValue);isNaN(n)?console.warn(`Error parsing min value ${t.minValue}. Falling back to default.`):e.min=n;}else t.type==="date"?typeof t.minValue=="string"&&/^\d{4}-\d{2}-\d{2}$/.test(t.minValue)?e.min=new Date(t.minValue+"T00:00:00.000Z").getTime():e.min=new Date(t.minValue).getTime():e.min=t.minValue;return e}function _t(t,e,n){return et(t,e,n)}function Os({title:t,subtitle:e,data:n,displayConfig:o,dataConfig:r,ChartComponent:s,PointComponent:a,disableAnimation:i,onZoomChange:c,stacked:l,enableDownload:u=false,onDownloadSuccess:d,onDownloadError:p,className:m,chartContainerClassName:g,downloadButtonClassName:f,resetZoomButtonClassName:h}){let{zoomState:b,customDomain:x,handlers:y}=Ve({onZoomChange:c}),k=kt.useCallback(C=>{let I=`${(t||"chart").toLowerCase().replace(/\s+/g,"-")}.png`,T=document.createElement("a");T.download=I,T.href=C,T.click(),d?.(I);},[t,d]),S=kt.useCallback(C=>{console.error("Error converting chart to image:",C),p?.(C);},[p]),[{isLoading:_},v,N]=reactToImage.useToPng({onSuccess:k,onError:S}),U=kt.useCallback(async()=>{v();},[v]),tt=kt.useMemo(()=>Ur(r.xAxis),[r.xAxis]),O=kt.useMemo(()=>r.yAxes.map(C=>Ur(C)),[r.yAxes]),H=kt.useMemo(()=>n?r.chartType==="histogram"?n.map(C=>({[r.xAxis.key]:(C.binStart+C.binEnd)/2,frequency:C.frequency,binStart:C.binStart,binEnd:C.binEnd})):r.xAxis.type==="number"?n.map(C=>({...C,[r.xAxis.key]:Number(C[r.xAxis.key])})).filter(C=>!isNaN(C[r.xAxis.key])):r.xAxis.type==="date"?n.map(C=>{let I=C[r.xAxis.key],T;return I instanceof Date?T=I.getTime():typeof I=="number"?T=I:typeof I=="string"?T=new Date(I).getTime():T=NaN,{...C,[r.xAxis.key]:T}}).filter(C=>!isNaN(C[r.xAxis.key])):n:[],[n,r.xAxis.key,r.chartType,r.xAxis.type]),G=kt.useMemo(()=>{if(r.xAxis.type==="category"||!H.length)return;let C=H.map(T=>Number(T[r.xAxis.key])).filter(T=>!isNaN(T)),I=[...new Set(C)].sort((T,A)=>T-A);if(!(r.chartType==="scatter"||I.length>20))return I},[H,r.xAxis.key,r.xAxis.type,r.chartType]),Rn=kt.useMemo(()=>{if(!G||G.length<2)return;let I=(G[G.length-1]-G[0])*.05;return [G[0]-I,G[G.length-1]+I]},[G]),w=kt.useCallback((C,I)=>{if(!C?.length)return {min:null,max:null};let T=C.map(A=>Number(A[I])).filter(A=>!isNaN(A));return {min:Math.min(...T),max:Math.max(...T)}},[]),D=kt.useMemo(()=>({x:x.x[0]!==null&&x.x[1]!==null?[x.x[0],x.x[1]]:(()=>{if(tt.min!==null&&tt.max!==null)return [tt.min,tt.max];let C=w(H,r.xAxis.key);return [C.min??"auto",C.max??"auto"]})(),y:r.yAxes.map((C,I)=>{if(x.y[0]!==null&&x.y[1]!==null)return [x.y[0],x.y[1]];let A=r.series.filter(K=>(K.axisIndex||0)===I).reduce((K,xe)=>{let Y=w(H,xe.key);return {min:K.min===null?Y.min:Y.min===null?K.min:Math.min(K.min,Y.min),max:K.max===null?Y.max:Y.max===null?K.max:Math.max(K.max,Y.max)}},{min:null,max:null});if(C.type==="number"&&C.maxValue){let K=parseFloat(C.maxValue);if(A.max===null||K<=A.max*1.5)return [O[I].min??A.min??"auto",O[I].max??A.max??"auto"]}return [O[I].min??A.min??"auto",O[I].max??A.max??"auto"]})}),[x.x,x.y,tt,O,r.series,r.yAxes,r.xAxis.key,H,w]),V=kt.useCallback((C,I,T)=>{if(T.dataKey===r.xAxis.key)return _t(C,r.xAxis.format,r.xAxis.type);let A=r.series.find(ke=>ke.key===T.dataKey),K=A?.name||String(I).replace(/^dataset_\d+_/,"");if(r.chartType==="histogram"){let ke=T.payload;if(ke.binStart!==void 0){let fs=_t(ke.binStart,r.xAxis.format,r.xAxis.type),gs=_t(ke.binEnd,r.xAxis.format,r.xAxis.type);return `Count: ${C} (${fs} - ${gs})`}}let xe=A?.axisIndex||0,Y=r.yAxes[xe],An=_t(C,Y?.format,Y?.type);return `${K}: ${An}`},[r.xAxis,r.series,r.yAxes,r.chartType]),[Z,F]=kt.useState(false);kt.useEffect(()=>{let C=setTimeout(()=>{F(true);},1700);return ()=>clearTimeout(C)},[]);let W=kt.useCallback((C,I)=>{if(I&&I.length>0){let T=I[0].payload[r.xAxis.key],A=_t(T,r.xAxis.format,r.xAxis.type);return jsxRuntime.jsxs("div",{className:"flex flex-col",children:[jsxRuntime.jsx("span",{children:r.xAxis.label}),jsxRuntime.jsx("span",{className:"font-mono tabular-nums",children:A})]})}return C},[r.xAxis.key,r.xAxis.format,r.xAxis.type,r.xAxis.label]),Ut=kt.useCallback(C=>jsxRuntime.jsx(Ln,{...C,formatter:V,labelFormatter:W}),[V,W]),Oe=kt.useCallback(C=>jsxRuntime.jsx(jn,{...C}),[]),Nt=kt.useMemo(()=>{let C=H.length,I=C>30?8:C>20?12:C>10?16:20,T=0;for(let xe of H){let Y=_t(xe[r.xAxis.key],r.xAxis.format,r.xAxis.type),An=typeof Y=="string"?Y:String(Y??"");T=Math.max(T,Math.min(An.length,I));}let A=T*7*C>500,K=A?Math.min(Math.max(40,T*5.5+20),140):50;return {maxLabelLen:I,shouldAngle:A,height:K}},[H,r.xAxis.key,r.xAxis.format,r.xAxis.type]),ot=kt.useMemo(()=>!!(i||(n?.length||0)>100||Z),[i,n?.length,Z]);return jsxRuntime.jsxs("div",{className:m||"w-full items-center mt-0 flex flex-col gap-0",children:[(t||u)&&jsxRuntime.jsxs("div",{className:"w-full items-center mb-2 relative",children:[t&&jsxRuntime.jsx("h2",{className:"text-center text-base pt-0 mt-0 mb-2",children:t}),u&&jsxRuntime.jsx("button",{onClick:U,disabled:_,className:f||"text-sm text-gray-500 hover:text-gray-700 disabled:opacity-50 h-8 absolute right-0 top-[-5px] px-2 py-1 border rounded hover:bg-gray-50",title:"Download chart as PNG",children:jsxRuntime.jsx(lucideReact.Download,{className:"w-4 h-4"})})]}),e&&jsxRuntime.jsx("p",{className:"text-center text-sm text-muted-foreground mb-2",children:e}),jsxRuntime.jsx(Se,{ref:N,config:o,className:g||"w-full",debounceResize:true,children:jsxRuntime.jsxs(s,{accessibilityLayer:true,data:H,isAnimationActive:!ot,onMouseDown:y.onZoomStart,onMouseMove:y.onZoomMove,onMouseUp:y.onZoomEnd,onDoubleClick:y.onResetZoom,style:{userSelect:"none",cursor:"crosshair"},children:[jsxRuntime.jsx(qt.CartesianGrid,{vertical:false}),jsxRuntime.jsx(qt.XAxis,{dataKey:r.xAxis.key,domain:Rn||D.x,type:r.xAxis.type==="date"||!r.xAxis.type?"number":r.xAxis.type,tickFormatter:C=>{let I=_t(C,r.xAxis.format,r.xAxis.type),T=typeof I=="string"?I:String(I??"");return T.length>Nt.maxLabelLen?T.slice(0,Nt.maxLabelLen)+"\u2026":T},tickLine:false,tickMargin:10,height:Nt.height,axisLine:false,allowDataOverflow:true,interval:"preserveStartEnd",ticks:G,...Nt.shouldAngle?{angle:-45,textAnchor:"end"}:{},children:jsxRuntime.jsx(qt.Label,{value:r.xAxis.label,position:"bottom",offset:Nt.shouldAngle?-5:-10,style:{textAnchor:"middle"}})}),r.yAxes.map((C,I)=>jsxRuntime.jsx(qt.YAxis,{yAxisId:I,orientation:I===0?"left":"right",domain:l?void 0:D.y[I],type:C.type==="date"||!C.type?"number":C.type,tickFormatter:T=>{let A=_t(T,C.format,C.type);return typeof A=="string"&&A.length>20?A.slice(0,20)+"...":A},allowDataOverflow:true,children:jsxRuntime.jsx(qt.Label,{value:C.label,position:I===0?"insideLeft":"insideRight",angle:-90,dx:I===0?-15:15,style:{textAnchor:"middle"}})},`y-axis-${C.key}`)),jsxRuntime.jsx(Vn,{content:Ut}),jsxRuntime.jsx($n,{content:Oe,verticalAlign:"top"}),r.series.map(C=>jsxRuntime.jsx(a,{dataKey:C.key,yAxisId:C.axisIndex||0,fill:C.color||"blue",stroke:C.color||"blue",dot:{fill:C.color||"blue",stroke:C.color||"blue"},radius:4,name:C.name,isAnimationActive:!ot,animationDuration:1500,animationBegin:0,stackId:r.chartType==="bar"&&l?"stack":void 0},`${C.key}-${l?"stacked":"unstacked"}`)),b.refAreaLeft&&b.refAreaRight&&b.refAreaTop&&b.refAreaBottom&&jsxRuntime.jsx(qt.ReferenceArea,{x1:b.refAreaLeft,x2:b.refAreaRight,y1:b.refAreaTop,y2:b.refAreaBottom,strokeOpacity:.2,stroke:"currentColor",fill:"currentColor",fillOpacity:.02,style:{pointerEvents:"none"}})]})}),x.x[0]!==null&&jsxRuntime.jsx("button",{onClick:y.onResetZoom,className:h||"text-sm text-gray-500 hover:text-gray-700 mt-2 px-3 py-1 border rounded hover:bg-gray-50",children:"Reset Zoom"})]})}function ut(t){return jsxRuntime.jsx(Et,{fallback:jsxRuntime.jsx("div",{className:t.errorClassName||"text-red-500",children:"Failed to load chart"}),children:jsxRuntime.jsx(Os,{...t})})}function Dt(t){return jsxRuntime.jsx(ut,{...t,ChartComponent:qt.BarChart,PointComponent:qt.Bar})}function zt(t){return jsxRuntime.jsx(ut,{...t,ChartComponent:qt.LineChart,PointComponent:qt.Line})}var Hs=(t,e,n)=>{let o=parseInt(t.slice(1,3),16)/255,r=parseInt(t.slice(3,5),16)/255,s=parseInt(t.slice(5,7),16)/255,a=Math.max(o,r,s),i=Math.min(o,r,s),c,l,u=(a+i)/2;if(a===i)c=l=0;else {let f=a-i;switch(l=u>.5?f/(2-a-i):f/(a+i),a){case o:c=(r-s)/f+(r<s?6:0);break;case r:c=(s-o)/f+2;break;case s:c=(o-r)/f+4;break;default:c=0;}c/=6;}let d=e/n,p=c*360+(d*40-20),m=Math.min(100,l*100+d*25),g=Math.max(35,Math.min(65,u*100-d*20));return `hsl(${p}, ${m}%, ${g}%)`};function Ks({title:t,subtitle:e,data:n,displayConfig:o,dataConfig:r,className:s,chartContainerClassName:a}){let i=r.series[0]?.color||"blue",c=r.yAxes[0]?.format,l=r.yAxes[0]?.type||"number",u=kt.useMemo(()=>n.reduce((d,p)=>(r.series.forEach(m=>{let g=m.key,f=String(p[r.xAxis.key]||"Unknown"),h=parseFloat(p[g]||"0");isNaN(h)||d.push({name:f,value:h,seriesId:g,displayName:f});}),d),[]).sort((d,p)=>p.value-d.value),[n,r.series,r.xAxis.key]);return jsxRuntime.jsxs("div",{className:s||"items-center",children:[jsxRuntime.jsx("h2",{className:"text-center text-base mb-2",children:t}),e&&jsxRuntime.jsx("p",{className:"text-center text-sm text-muted-foreground mb-2",children:e}),jsxRuntime.jsx(Se,{config:o,className:a||"w-full border border-border/50 rounded-md",children:jsxRuntime.jsxs(qt.PieChart,{width:400,height:400,children:[jsxRuntime.jsx(qt.Pie,{data:u,dataKey:"value",nameKey:"displayName",cx:"50%",cy:"50%",outerRadius:150,label:d=>`${d.displayName}: ${et(d.value,c,l)}`,children:u.map((d,p)=>jsxRuntime.jsx(qt.Cell,{fill:p===0?i:Hs(i,p,u.length)},`cell-${d.name}`))}),jsxRuntime.jsx(qt.Tooltip,{formatter:(d,p)=>[et(d,c,l),p]}),jsxRuntime.jsx(qt.Legend,{})]})})]})}function Ht(t){return jsxRuntime.jsx(Et,{fallback:jsxRuntime.jsx("div",{className:"text-red-500",children:"Failed to load chart"}),children:jsxRuntime.jsx(Ks,{...t})})}function Kt(t){return jsxRuntime.jsx(ut,{...t,ChartComponent:qt.ScatterChart,PointComponent:qt.Scatter})}var ea=t=>{let{cx:e,cy:n,payload:o,xAxis:r,yAxis:s}=t,a=o.value||o.z||0,c=`hsl(${240-Math.min(1,Math.max(0,a/100))*240}, 70%, 50%)`,l=r.scale.bandwidth?r.scale.bandwidth():20,u=s.scale.bandwidth?s.scale.bandwidth():20;return jsxRuntime.jsx("rect",{x:e-l/2,y:n-u/2,width:l,height:u,fill:c,fillOpacity:.8,stroke:"#fff",strokeWidth:1})},na=t=>jsxRuntime.jsx(qt.Scatter,{...t,shape:ea});function Qt(t){return jsxRuntime.jsx(ut,{...t,ChartComponent:qt.ScatterChart,PointComponent:na})}function Jr(t){return t.replace(/[A-Z]/g,e=>`_${e.toLowerCase()}`).replace(/^_/,"")}function Zt(t,e){if(!t.length)return e;let n=t[0];if(n[e]!==void 0)return e;let o=e.toLowerCase();if(n[o]!==void 0)return o;let r=Jr(e);if(n[r]!==void 0)return r;let s=e.toLowerCase().replace(/_/g,"");return Object.keys(n).find(i=>i.toLowerCase().replace(/_/g,"")===s)||e}function ua(){return ["yyyy-MM-dd","yyyyMMdd","yyyy-MM-dd'T'HH:mm:ss","yyyyMMddHHmmss"]}function da(t){if(!t)return null;if(typeof t=="string"){if(/^\d{4}-\d{2}-\d{2}$/.test(t)){let r=new Date(t+"T00:00:00.000Z");if(dateFns.isValid(r))return r.getTime()}let o=ua();for(let r of o){let s=dateFns.parse(t,r,new Date);if(dateFns.isValid(s))return s.getTime()}}let e=new Date(t);return dateFns.isValid(e)?e.getTime():null}function je(t,e,n,o){let r=e==="index"&&t[e]===void 0?o:t[e];return n==="date"?da(r):n==="number"?parseFloat(r):r}function pa(t,e,n){if(t===e.key)return e.type||"category";let o=n.find(r=>r.key===t);return o?o.type||"number":"category"}function Yt(t,e,n,o){return !o||o.length===0?t:[...t].sort((r,s)=>{for(let a of o){let i=pa(a.key,e,n),c=je(r,a.key,i,r.index),l=je(s,a.key,i,s.index);if(c===l)continue;let u=typeof c=="number"&&typeof l=="number"?c-l:c instanceof Date&&l instanceof Date?c.getTime()-l.getTime():String(c).localeCompare(String(l));return a.direction==="asc"?u:-u}return 0})}function Gr(t,e){let n=Math.ceil(t.length/e),o=[t[0]];for(let r=n;r<t.length-1;r+=n)o.push(t[r]);return o[o.length-1]!==t[t.length-1]&&o.push(t[t.length-1]),o}function ma(t,e,n,o,r,s,a){let i=t.reduce((u,d)=>{let p=d[e];return u[p]||(u[p]=[]),u[p].push(d),u},{}),c=Object.entries(i);if(c.length>o){let u=Math.ceil(c.length/o),d=c.reduce((p,[m,g],f)=>{let h=Math.floor(f/u);return p[h]||(p[h]={key:m,items:[]}),p[h].items.push(...g),p},[]).map(({key:p,items:m})=>({[e]:p,...n.reduce((g,f)=>{let h=m.map(b=>parseFloat(b[f.key])).filter(b=>!isNaN(b));return g[f.key]=h.length?h.reduce((b,x)=>b+x,0)/h.length:null,g},{})}));return a&&a.length>0?Yt(d,r,s,a):d}let l=c.map(([u,d])=>{let p=n.reduce((g,f)=>{let h=d.map(b=>parseFloat(b[f.key])).filter(b=>!isNaN(b));return g[f.key]=h.length?h.reduce((b,x)=>b+x,0)/h.length:null,g},{}),m=Object.values(p).filter(g=>g!==null).reduce((g,f)=>g+f,0);return {[e]:u,...p,index:m}});return a&&a.length>0?Yt(l,r,s,a):l}function fa(t,e,n,o){let r=t.map(l=>parseFloat(l[e])).filter(l=>!isNaN(l)),s=Math.min(...r),i=(Math.max(...r)-s)/o,c=Array.from({length:o},(l,u)=>({binStart:s+u*i,binEnd:s+(u+1)*i,count:0,seriesValues:n.reduce((d,p)=>(d[p.key]=[],d),{})}));return t.forEach(l=>{let u=parseFloat(l[e]);if(isNaN(u))return;let d=Math.min(Math.floor((u-s)/i),o-1);c[d].count++,n.forEach(p=>{let m=parseFloat(l[p.key]);isNaN(m)||c[d].seriesValues[p.key].push(m);});}),c.map(l=>({[e]:(l.binStart+l.binEnd)/2,...n.reduce((u,d)=>{let p=l.seriesValues[d.key];return u[d.key]=p.length?p.reduce((m,g)=>m+g,0)/p.length:null,u},{}),count:l.count,index:n.reduce((u,d)=>{let p=l.seriesValues[d.key],m=p.length?p.reduce((g,f)=>g+f,0)/p.length:0;return u+m},0)})).filter(l=>n.some(u=>l[u.key]!==null))}function Wr(t,e,n,o,r){let s=t.map((m,g)=>{let f=je(m,e,r.type||"number",g);return typeof f=="number"?f:parseFloat(f)}).filter(m=>!isNaN(m)),a=Math.min(...s),l=(Math.max(...s)-a)/o,u=Array.from({length:o},(m,g)=>({binStart:Number((a+g*l).toFixed(2)),binEnd:Number((a+(g+1)*l).toFixed(2)),frequency:0,[e]:Number((a+(g+.5)*l).toFixed(2))}));s.forEach(m=>{let g=Math.min(Math.floor((m-a)/l),o-1);u[g].frequency++;});let d=u.filter(m=>m.frequency>0);return (u.length-d.length)/u.length*100>30?Wr(t,e,n,Math.floor(o/2),r):d}function ga(t,e,n,o){return !e||e.length===0?t:t.filter(r=>e.every(s=>{let a=s.key;n&&s.key.toLowerCase()===n.toLowerCase()?a=n:o&&s.key.toLowerCase()===o.toLowerCase()&&(a=o);let i=r[a],c=Array.isArray(s.value)?s.value:[s.value];switch(s.operator){case "equals":return c.some(l=>String(i)===String(l));case "not_equals":return c.every(l=>String(i)!==String(l));case "greater_than":return parseFloat(String(i))>parseFloat(String(c[0]));case "less_than":return parseFloat(String(i))<parseFloat(String(c[0]));case "contains":return String(i).toLowerCase().includes(String(c[0]).toLowerCase());case "between":if(c.length===2){let l=parseFloat(String(i)),u=parseFloat(String(c[0])),d=parseFloat(String(c[1]));return l>=u&&l<=d}return true;default:return true}}))}var Ue=kt__namespace.default.memo(function({chartType:e,title:n,invocationId:o,datasetSlugs:r,xAxis:s,yAxes:a,series:i,dataReduction:c={strategy:"none",target_points:1e3},stacked:l,sort:u,onScrollUpdate:d,enableDownload:p=true,className:m,chartContainerClassName:g}){let f=kt.useMemo(()=>i.map(w=>({datasetSlug:w.datasetSlug,sqlQuery:w.sqlQuery,resourceKey:w.resourceKey,filters:!w.sqlQuery&&w.filters?.length?w.filters:void 0})),[i]),h=be(f,o),b=h.some(w=>w.isLoading),x=useDeepCompare.useDeepCompareMemo(()=>h.map(w=>w.data||[]),[h.map(w=>w.data)]),{resolvedXAxisKey:y,resolvedSeriesKeys:k}=kt.useMemo(()=>{let w=x.find(D=>D.length>0)||[];return {resolvedXAxisKey:Zt(w,s.key),resolvedSeriesKeys:i.map((D,V)=>({...D,resolvedKey:Zt(x[V]||[],D.key)}))}},[x,s.key,i]),S=kt.useMemo(()=>{let w=new Map;i.forEach((V,Z)=>{let F=x[Z]||[],W=k[Z]?.resolvedKey||V.key;(V.filters?ga(F,V.filters,W,y):F).forEach((Oe,Nt)=>{let ot=je(Oe,y,s.type||"category",Nt);if(ot==null||s.type==="number"&&isNaN(ot))return;let C=s.type==="number"||s.type==="date"||typeof ot=="object"?ot.toString():String(ot);w.has(C)||w.set(C,{[s.key]:ot});let I=`series_${Z}_${V.key}`,T=Oe[W];w.get(C)[I]=T;});});let D=Array.from(w.values());return u&&u.length>0?D:s.type==="date"?D.sort((V,Z)=>V[s.key]-Z[s.key]):s.type==="number"?D.sort((V,Z)=>{let F=parseFloat(V[s.key]),W=parseFloat(Z[s.key]);return isNaN(F)||isNaN(W)?0:F-W}):D},[x,i,k,y,s,u]),_=kt.useMemo(()=>i.map((w,D)=>({...w,key:`series_${D}_${w.key}`})),[i]),v=kt.useMemo(()=>({[s.key]:{label:s.label,format:s.format,type:s.type},..._.reduce((w,D)=>(w[D.key]={label:D.name,color:D.color},w),{}),...e==="histogram"?{frequency:{label:a[0]?.label||"Frequency",color:_[0]?.color||"#2563eb"}}:{}}),[s,_,e,a]),N=kt.useMemo(()=>!s.key||!_.length?null:{chartType:e,xAxis:s,yAxes:e==="histogram"?a.map(w=>({...w,key:"frequency",minValue:w.minValue||"0"})):a,series:e==="histogram"?[{key:"frequency",name:a[0]?.label||"Frequency",color:i[0]?.color||"#2563eb"}]:_},[s,a,i,_,e]),U=null;switch(e){case "bar":U=Dt;break;case "line":U=zt;break;case "pie":U=Ht;break;case "scatter":U=Kt;break;case "histogram":U=Dt;break;case "heatmap":U=Qt;break}let tt=kt.useRef(false);kt.useEffect(()=>{tt.current||!d||!b&&v&&N&&S.length&&(d(),setTimeout(()=>d(),250),tt.current=true);},[d,b,v,N,S.length]);let[O,H]=kt.useState({x:[null,null],y:[null,null]}),{processedData:G,dataReductionInfo:Rn}=kt.useMemo(()=>{if(b||!S.length)return {processedData:[],dataReductionInfo:null};if(e==="histogram"){let F=c.target_points||20;return {processedData:Wr(S,y,_,F,s),dataReductionInfo:null}}let w=S;if((O.x[0]!==null||O.y[0]!==null)&&(w=S.filter(F=>{if(O.x[0]!==null&&O.x[1]!==null){let W=parseFloat(F[s.key]);if(isNaN(W)||W<O.x[0]||W>O.x[1])return false}if(O.y[0]!==null&&O.y[1]!==null)for(let W of _){let Ut=parseFloat(F[W.key]);if(!isNaN(Ut)&&(Ut<O.y[0]||Ut>O.y[1]))return false}return true})),c.strategy==="none"||!c.target_points||w.length<=c.target_points&&(!u||u.length===0)){let F=w;return u&&u.length>0&&(F=Yt(F,s,a,u)),{processedData:F,dataReductionInfo:null}}let D,V="";switch(c.strategy){case "sample":D=Gr(w,c.target_points),V="sampled",u&&u.length>0&&(D=Yt(D,s,a,u));break;case "aggregate":D=ma(w,y,_,c.target_points,s,a,u),V="aggregated";break;case "bin":D=fa(w,y,_,c.target_points),V="binning",u&&u.length>0&&(D=Yt(D,s,a,u));break;default:w.length<1e3?D=w:(D=Gr(w,c.target_points),V="sampled"),u&&u.length>0&&(D=Yt(D,s,a,u));}let Z=null;return w.length!==D.length&&(Z=`${V} ${w.length.toLocaleString()} \u2192 ${D.length.toLocaleString()} points`),{processedData:D,dataReductionInfo:Z}},[S,c,e,b,O.x,O.y,_,u,s,a,y]);return U?b?jsxRuntime.jsx("div",{children:"Loading..."}):S.length?N?jsxRuntime.jsx(U,{data:G,displayConfig:v,stacked:l,dataConfig:N,title:n,subtitle:Rn||void 0,disableAnimation:G.length>100,onZoomChange:H,enableDownload:p,className:m,chartContainerClassName:g}):jsxRuntime.jsx("div",{children:"Invalid chart configuration"}):jsxRuntime.jsx("div",{children:"Unable to display chart - no data available"}):(console.error("No chart component found"),null)},(t,e)=>ra__default.default(t,e));function Fe({title:t,invocationId:e,datasetSlug:n,sqlQuery:o,resourceKey:r,columns:s,maxRows:a=100,className:i,tableWrapperClassName:c,headerClassName:l,loadingClassName:u,emptyClassName:d,onScrollUpdate:p}){let{data:m,isLoading:g}=Gt(n,e,o,r),f=kt.useMemo(()=>s?m?.length?s.map(x=>{let y=Zt(m,x.key);return {key:x.key,name:x.name,resolvedKey:y,format:x.format,value_type:x.value_type}}):[]:m?.length?Object.keys(m[0]).map(x=>({key:x,name:x,resolvedKey:x,format:void 0,value_type:void 0})):[],[s,m]),h=kt.useMemo(()=>!m||m.length===0?[]:a?m.slice(0,a):m,[m,a]),b=kt.useRef(false);return kt.useEffect(()=>{b.current||!p||!g&&m?.length&&(p(),setTimeout(()=>p(),250),b.current=true);},[p,g,m?.length]),g?jsxRuntime.jsx("div",{className:u||"text-gray-500",children:"Loading..."}):m?.length?f.length===0?jsxRuntime.jsx("div",{className:d||"text-gray-500",children:"No columns defined"}):jsxRuntime.jsxs("div",{className:i||"w-full",children:[t&&jsxRuntime.jsx("h3",{className:"text-lg font-medium mb-3",children:t}),jsxRuntime.jsx("div",{className:c||"relative w-full overflow-x-auto rounded-lg border border-border/50",children:jsxRuntime.jsxs("table",{className:"w-full caption-bottom text-sm",children:[jsxRuntime.jsx("thead",{className:"[&_tr]:border-b",children:jsxRuntime.jsx("tr",{className:l||"border-b transition-colors",children:f.map(x=>jsxRuntime.jsx("th",{className:"h-10 px-3 text-left align-middle font-medium text-muted-foreground",children:x.name},x.key))})}),jsxRuntime.jsx("tbody",{className:"[&_tr:last-child]:border-0",children:h.map((x,y)=>jsxRuntime.jsx("tr",{className:`border-b transition-colors hover:bg-muted/50 ${y%2===1?"bg-muted/30":""}`,children:f.map(k=>jsxRuntime.jsx("td",{className:"p-3 align-middle text-foreground",children:et(x[k.resolvedKey],k.format,k.value_type)},k.key))},y))})]})}),m.length>a&&jsxRuntime.jsxs("p",{className:"text-sm text-muted-foreground mt-2",children:["Showing ",a," of ",m.length," rows"]})]}):jsxRuntime.jsx("div",{className:d||"text-gray-500",children:"No data"})}function Je({output:t,ContentComponent:e}){let n=Q(),o=e??n?.ContentComponent,r=t?.contents;if(!t||!t.output||!r?.length)return null;let s=r.filter(a=>a.user_visibility==="visible");return s.length?jsxRuntime.jsx("div",{children:s.map(a=>o?jsxRuntime.jsx(o,{content:a},a.id):jsxRuntime.jsx("div",{className:"text-sm",children:typeof a.content=="string"?a.content:null},a.id))},t.output.id):null}function zr(t){return t!==null&&typeof t=="object"&&"Valid"in t&&"String"in t}function M(t){if(typeof t=="string")return t;if(zr(t))return t.Valid?t.String:void 0}function xa(t,e){return M(t)??e}var Hr={v:"5.10.2",fr:60,ip:0,op:180,w:144,h:144,nm:"system-solid-719-spinner-circle",ddd:0,assets:[{id:"comp_6",nm:"loop-snake-alt",fr:60,layers:[{ddd:0,ind:1,ty:0,nm:"mask-2",td:1,refId:"comp_7",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[72,72,0],ix:2,l:2},a:{a:0,k:[72,72,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,w:144,h:144,ip:0,op:1800,st:0,bm:0},{ddd:0,ind:2,ty:4,nm:"circle 2",tt:2,tp:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[72,72,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[-30.652,0],[0,30.652],[30.652,0],[0,-30.652]],o:[[30.652,0],[0,-30.652],[-30.652,0],[0,30.652]],v:[[0,55.5],[55.5,0],[0,-55.5],[-55.5,0]],c:true},ix:2},nm:"Path 1",mn:"ADBE Vector Shape - Group",hd:false},{ty:"st",c:{a:0,k:[.071,.075,.192,1],ix:3,x:`var $bm_rt;
|
|
8
8
|
$bm_rt = comp('system-solid-719-spinner-circle').layer('control').effect('primary')('Color');`},o:{a:0,k:100,ix:4},w:{a:0,k:9,ix:5},lc:2,lj:1,ml:4,bm:0,nm:".primary",mn:"ADBE Vector Graphic - Stroke",hd:false,cl:"primary"},{ty:"fl",c:{a:0,k:[.071,.075,.192,1],ix:4,x:`var $bm_rt;
|
|
9
9
|
$bm_rt = comp('system-solid-719-spinner-circle').layer('control').effect('primary')('Color');`},o:{a:0,k:100,ix:5},r:1,bm:0,nm:".primary",mn:"ADBE Vector Graphic - Fill",hd:false,cl:"primary"},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"Transform"}],nm:"circle",np:3,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:false}],ip:0,op:300,st:0,ct:1,bm:0}]},{id:"comp_7",nm:"mask-2",fr:60,layers:[{ddd:0,ind:1,ty:3,nm:"Null 1108",sr:1,ks:{o:{a:0,k:0,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[72,72,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[78.6,78.6,100],ix:6,l:2}},ao:0,ip:0,op:1800,st:0,bm:0},{ddd:0,ind:2,ty:4,nm:"mask",parent:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:1,k:[{i:{x:[.833],y:[.833]},o:{x:[.167],y:[.167]},t:0,s:[0]},{t:180,s:[-360]}],ix:10},p:{a:0,k:[0,0,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{d:1,ty:"el",s:{a:0,k:[111,111],ix:2},p:{a:0,k:[0,0],ix:3},nm:"Ellipse Path 1",mn:"ADBE Vector Shape - Ellipse",hd:false},{ty:"tm",s:{a:1,k:[{i:{x:[.33],y:[1]},o:{x:[.335],y:[0]},t:90,s:[99.9]},{t:157,s:[0]}],ix:1},e:{a:1,k:[{i:{x:[.33],y:[1]},o:{x:[.33],y:[0]},t:111,s:[100]},{t:180,s:[.1]}],ix:2},o:{a:0,k:0,ix:3},m:1,ix:2,nm:"Trim Paths 1",mn:"ADBE Vector Filter - Trim",hd:false},{ty:"st",c:{a:0,k:[.070588238537,.074509806931,.192156866193,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:11.3,ix:5},lc:2,lj:2,bm:0,nm:".primary",mn:"ADBE Vector Graphic - Stroke",hd:false,cl:"primary"},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"Transform"}],nm:"Ellipse 1",np:3,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:false}],ip:90,op:991,st:90,ct:1,bm:0},{ddd:0,ind:3,ty:4,nm:"mask",parent:2,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[0,0,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{d:1,ty:"el",s:{a:0,k:[111,111],ix:2},p:{a:0,k:[0,0],ix:3},nm:"Ellipse Path 1",mn:"ADBE Vector Shape - Ellipse",hd:false},{ty:"tm",s:{a:1,k:[{i:{x:[.33],y:[1]},o:{x:[.335],y:[0]},t:0,s:[99.9]},{t:67,s:[0]}],ix:1},e:{a:1,k:[{i:{x:[.33],y:[1]},o:{x:[.33],y:[0]},t:21,s:[100]},{t:90,s:[.1]}],ix:2},o:{a:0,k:0,ix:3},m:1,ix:2,nm:"Trim Paths 1",mn:"ADBE Vector Filter - Trim",hd:false},{ty:"st",c:{a:0,k:[.070588238537,.074509806931,.192156866193,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:11.3,ix:5},lc:2,lj:2,bm:0,nm:".primary",mn:"ADBE Vector Graphic - Stroke",hd:false,cl:"primary"},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"Transform"}],nm:"Ellipse 1",np:3,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:false}],ip:0,op:90,st:0,ct:1,bm:0}]},{id:"comp_9",nm:"mask-1",fr:60,layers:[{ddd:0,ind:1,ty:3,nm:"Null 1107",sr:1,ks:{o:{a:0,k:0,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[72,72,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[78.6,78.6,100],ix:6,l:2}},ao:0,ip:0,op:1800,st:0,bm:0},{ddd:0,ind:2,ty:4,nm:"mask",parent:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:1,k:[{i:{x:[.584],y:[.217]},o:{x:[.247],y:[0]},t:0,s:[0]},{i:{x:[.647],y:[.59]},o:{x:[.314],y:[.277]},t:9,s:[18.902]},{i:{x:[.649],y:[.675]},o:{x:[.315],y:[.302]},t:13,s:[36.82]},{i:{x:[.693],y:[1]},o:{x:[.208],y:[.228]},t:18,s:[63.991]},{t:240,s:[1080]}],ix:10},p:{a:0,k:[0,0,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:1,k:[{i:{x:.833,y:.833},o:{x:.26,y:0},t:168,s:[{i:[[-30.652,0],[-4.25,4.25],[30.652,0],[5.125,5.125]],o:[[30.652,0],[-4.25,4.25],[-30.652,0],[6,6.5]],v:[[0,55],[45,32.75],[0,55.5],[-45.25,32.5]],c:true}]},{i:{x:.833,y:.833},o:{x:.167,y:.167},t:186,s:[{i:[[-43.5,0],[4.456,-17.326],[30.652,0],[2.907,16.173]],o:[[38.5,0],[-2.411,15.677],[-30.652,0],[-5.064,-20.184]],v:[[0,39.201],[49.544,18.576],[0,55.5],[-49.686,18.434]],c:true}]},{i:{x:.05,y:1},o:{x:.167,y:.167},t:196,s:[{i:[[-50,0],[0,-29.209],[30.652,0],[1.285,24.253]],o:[[50.75,0],[-1.065,24.034],[-30.652,0],[0,-29.896]],v:[[0,14.948],[52.868,8.209],[0,55.5],[-52.931,8.146]],c:true}]},{t:240,s:[{i:[[-30.652,0],[0,-30.652],[30.652,0],[0,30.652]],o:[[30.652,0],[0,30.652],[-30.652,0],[0,-30.652]],v:[[0,-55.5],[55.5,0],[0,55.5],[-55.5,0]],c:true}]}],ix:2},nm:"Path 1",mn:"ADBE Vector Shape - Group",hd:false},{ty:"st",c:{a:0,k:[.070588238537,.074509806931,.192156866193,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:11.3,ix:5},lc:2,lj:2,bm:0,nm:".primary",mn:"ADBE Vector Graphic - Stroke",hd:false,cl:"primary"},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"Transform"}],nm:"Ellipse 1",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:false}],ip:168,op:350,st:120,ct:1,bm:0},{ddd:0,ind:3,ty:4,nm:"mask",parent:2,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[0,0,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{d:1,ty:"el",s:{a:0,k:[111,111],ix:2},p:{a:0,k:[0,0],ix:3},nm:"Ellipse Path 1",mn:"ADBE Vector Shape - Ellipse",hd:false},{ty:"tm",s:{a:1,k:[{i:{x:[.334],y:[1]},o:{x:[.333],y:[0]},t:0,s:[0]},{t:48,s:[35]}],ix:1},e:{a:1,k:[{i:{x:[.334],y:[1]},o:{x:[.333],y:[0]},t:0,s:[100]},{t:48,s:[65]}],ix:2},o:{a:0,k:0,ix:3},m:1,ix:2,nm:"Trim Paths 1",mn:"ADBE Vector Filter - Trim",hd:false},{ty:"st",c:{a:0,k:[.070588238537,.074509806931,.192156866193,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:11.3,ix:5},lc:2,lj:2,bm:0,nm:".primary",mn:"ADBE Vector Graphic - Stroke",hd:false,cl:"primary"},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"Transform"}],nm:"Ellipse 1",np:3,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:false}],ip:0,op:168,st:0,ct:1,bm:0}]},{id:"comp_11",nm:"mask-3",fr:60,layers:[{ddd:0,ind:1,ty:3,nm:"Null 1109",sr:1,ks:{o:{a:0,k:0,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[72,72,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[78.6,78.6,100],ix:6,l:2}},ao:0,ip:0,op:1800,st:0,bm:0},{ddd:0,ind:2,ty:4,nm:"mask",parent:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[0,0,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:1,k:[{i:{x:.833,y:.833},o:{x:.26,y:0},t:48,s:[{i:[[-30.652,0],[-4.25,4.25],[30.652,0],[5.125,5.125]],o:[[30.652,0],[-4.25,4.25],[-30.652,0],[6,6.5]],v:[[0,55],[45,32.75],[0,55.5],[-45.25,32.5]],c:true}]},{i:{x:.833,y:.833},o:{x:.167,y:.167},t:66,s:[{i:[[-43.5,0],[4.456,-17.326],[30.652,0],[2.907,16.173]],o:[[38.5,0],[-2.411,15.677],[-30.652,0],[-5.064,-20.184]],v:[[0,39.201],[49.544,18.576],[0,55.5],[-49.686,18.434]],c:true}]},{i:{x:.05,y:1},o:{x:.167,y:.167},t:76,s:[{i:[[-50,0],[0,-29.209],[30.652,0],[1.285,24.253]],o:[[50.75,0],[-1.065,24.034],[-30.652,0],[0,-29.896]],v:[[0,14.948],[52.868,8.209],[0,55.5],[-52.931,8.146]],c:true}]},{t:120,s:[{i:[[-30.652,0],[0,-30.652],[30.652,0],[0,30.652]],o:[[30.652,0],[0,30.652],[-30.652,0],[0,-30.652]],v:[[0,-55.5],[55.5,0],[0,55.5],[-55.5,0]],c:true}]}],ix:2},nm:"Path 1",mn:"ADBE Vector Shape - Group",hd:false},{ty:"st",c:{a:0,k:[.070588238537,.074509806931,.192156866193,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:11.3,ix:5},lc:2,lj:2,bm:0,nm:".primary",mn:"ADBE Vector Graphic - Stroke",hd:false,cl:"primary"},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"Transform"}],nm:"Ellipse 1",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:false}],ip:48,op:523,st:0,ct:1,bm:0},{ddd:0,ind:3,ty:4,nm:"mask",parent:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[0,0,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{d:1,ty:"el",s:{a:0,k:[111,111],ix:2},p:{a:0,k:[0,0],ix:3},nm:"Ellipse Path 1",mn:"ADBE Vector Shape - Ellipse",hd:false},{ty:"tm",s:{a:1,k:[{i:{x:[.334],y:[1]},o:{x:[.333],y:[0]},t:0,s:[0]},{t:48,s:[35]}],ix:1},e:{a:1,k:[{i:{x:[.334],y:[1]},o:{x:[.333],y:[0]},t:0,s:[100]},{t:48,s:[65]}],ix:2},o:{a:0,k:0,ix:3},m:1,ix:2,nm:"Trim Paths 1",mn:"ADBE Vector Filter - Trim",hd:false},{ty:"st",c:{a:0,k:[.070588238537,.074509806931,.192156866193,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:11.3,ix:5},lc:2,lj:2,bm:0,nm:".primary",mn:"ADBE Vector Graphic - Stroke",hd:false,cl:"primary"},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"Transform"}],nm:"Ellipse 1",np:3,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:false}],ip:0,op:49,st:0,ct:1,bm:0}]},{id:"comp_14",nm:"mask-4",fr:60,layers:[{ddd:0,ind:1,ty:3,nm:"Null 1110",sr:1,ks:{o:{a:0,k:0,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[72,72,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[78.6,78.6,100],ix:6,l:2}},ao:0,ip:0,op:1800,st:0,bm:0},{ddd:0,ind:2,ty:4,nm:"mask",parent:1,sr:1,ks:{o:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.167],y:[.167]},t:0,s:[0]},{t:90,s:[100]}],ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[0,0,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:1,k:[{i:{x:.833,y:.833},o:{x:.167,y:.167},t:0,s:[{i:[[-0.276,0],[0,-0.276],[.276,0],[0,.276]],o:[[.276,0],[0,.276],[-0.276,0],[0,-0.276]],v:[[0,-0.5],[.5,0],[0,.5],[-0.5,0]],c:true}]},{t:120,s:[{i:[[-30.154,0],[0,-30.154],[30.154,0],[0,30.154]],o:[[30.154,0],[0,30.154],[-30.154,0],[0,-30.154]],v:[[0,-54.598],[54.598,0],[0,54.598],[-54.598,0]],c:true}]}],ix:2},nm:"Path 1",mn:"ADBE Vector Shape - Group",hd:false},{ty:"tm",s:{a:0,k:0,ix:1},e:{a:0,k:100,ix:2},o:{a:0,k:0,ix:3},m:1,ix:2,nm:"Trim Paths 1",mn:"ADBE Vector Filter - Trim",hd:false},{ty:"st",c:{a:0,k:[.070588238537,.074509806931,.192156866193,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:11.3,ix:5},lc:2,lj:2,bm:0,nm:".primary",mn:"ADBE Vector Graphic - Stroke",hd:false,cl:"primary"},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"Transform"}],nm:"Ellipse 1",np:3,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:false}],ip:0,op:1800,st:0,ct:1,bm:0},{ddd:0,ind:3,ty:4,nm:"mask",parent:1,sr:1,ks:{o:{a:1,k:[{i:{x:[.161],y:[1]},o:{x:[.167],y:[.167]},t:0,s:[100]},{t:60,s:[0]}],ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[0,0,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:1,k:[{i:{x:.161,y:1},o:{x:.167,y:.167},t:0,s:[{i:[[-30.652,0],[0,-30.652],[30.652,0],[0,30.652]],o:[[30.652,0],[0,30.652],[-30.652,0],[0,-30.652]],v:[[0,-55.5],[55.5,0],[0,55.5],[-55.5,0]],c:true}]},{t:60,s:[{i:[[-37.003,0],[0,-37.003],[37.003,0],[0,37.003]],o:[[37.003,0],[0,37.003],[-37.003,0],[0,-37.003]],v:[[0,-67],[67,0],[0,67],[-67,0]],c:true}]}],ix:2},nm:"Path 1",mn:"ADBE Vector Shape - Group",hd:false},{ty:"tm",s:{a:0,k:0,ix:1},e:{a:0,k:100,ix:2},o:{a:0,k:0,ix:3},m:1,ix:2,nm:"Trim Paths 1",mn:"ADBE Vector Filter - Trim",hd:false},{ty:"st",c:{a:0,k:[.070588238537,.074509806931,.192156866193,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:11.3,ix:5},lc:2,lj:2,bm:0,nm:".primary",mn:"ADBE Vector Graphic - Stroke",hd:false,cl:"primary"},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"Transform"}],nm:"Ellipse 1",np:3,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:false}],ip:0,op:1800,st:0,ct:1,bm:0}]},{id:"comp_16",nm:"mask-5",fr:60,layers:[{ddd:0,ind:1,ty:3,nm:"Null 1111",sr:1,ks:{o:{a:0,k:0,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[72,72,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[78.6,78.6,100],ix:6,l:2}},ao:0,ip:0,op:1800,st:0,bm:0},{ddd:0,ind:2,ty:4,nm:"mask",parent:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[0,0,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:1,k:[{i:{x:0,y:.66},o:{x:.124,y:.088},t:20,s:[{i:[[-0.276,0],[0,-0.276],[.276,0],[0,.276]],o:[[.276,0],[0,.276],[-0.276,0],[0,-0.276]],v:[[0,-0.5],[.5,0],[0,.5],[-0.5,0]],c:true}]},{t:60,s:[{i:[[-30.154,0],[0,-30.154],[30.154,0],[0,30.154]],o:[[30.154,0],[0,30.154],[-30.154,0],[0,-30.154]],v:[[0,-54.598],[54.598,0],[0,54.598],[-54.598,0]],c:true}]}],ix:2},nm:"Path 1",mn:"ADBE Vector Shape - Group",hd:false},{ty:"tm",s:{a:0,k:0,ix:1},e:{a:0,k:100,ix:2},o:{a:0,k:0,ix:3},m:1,ix:2,nm:"Trim Paths 1",mn:"ADBE Vector Filter - Trim",hd:false},{ty:"st",c:{a:0,k:[.070588238537,.074509806931,.192156866193,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:11.3,ix:5},lc:2,lj:2,bm:0,nm:".primary",mn:"ADBE Vector Graphic - Stroke",hd:false,cl:"primary"},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"Transform"}],nm:"Ellipse 1",np:3,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:false}],ip:20,op:1800,st:0,ct:1,bm:0},{ddd:0,ind:3,ty:4,nm:"mask",parent:1,sr:1,ks:{o:{a:1,k:[{i:{x:[.833],y:[.833]},o:{x:[.333],y:[0]},t:0,s:[100]},{t:60,s:[0]}],ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[0,0,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:1,k:[{i:{x:.507,y:1},o:{x:.095,y:.321},t:0,s:[{i:[[-30.652,0],[0,-30.652],[30.652,0],[0,30.652]],o:[[30.652,0],[0,30.652],[-30.652,0],[0,-30.652]],v:[[0,-55.5],[55.5,0],[0,55.5],[-55.5,0]],c:true}]},{t:60,s:[{i:[[-37.003,0],[0,-37.003],[37.003,0],[0,37.003]],o:[[37.003,0],[0,37.003],[-37.003,0],[0,-37.003]],v:[[0,-67],[67,0],[0,67],[-67,0]],c:true}]}],ix:2},nm:"Path 1",mn:"ADBE Vector Shape - Group",hd:false},{ty:"tm",s:{a:0,k:0,ix:1},e:{a:0,k:100,ix:2},o:{a:0,k:0,ix:3},m:1,ix:2,nm:"Trim Paths 1",mn:"ADBE Vector Filter - Trim",hd:false},{ty:"st",c:{a:0,k:[.070588238537,.074509806931,.192156866193,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:11.3,ix:5},lc:2,lj:2,bm:0,nm:".primary",mn:"ADBE Vector Graphic - Stroke",hd:false,cl:"primary"},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"Transform"}],nm:"Ellipse 1",np:3,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:false}],ip:0,op:1800,st:0,ct:1,bm:0}]},{id:"comp_19",nm:"mask-6",fr:60,layers:[{ddd:0,ind:1,ty:3,nm:"Null 1112",sr:1,ks:{o:{a:0,k:0,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[72,72,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[78.6,78.6,100],ix:6,l:2}},ao:0,ip:0,op:1800,st:0,bm:0},{ddd:0,ind:2,ty:4,nm:"mask",parent:3,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[.514,-0.84,0],ix:2,l:2},a:{a:0,k:[.514,-6.24,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[-12.745,-9.902],[-2.377,-1.327],[-8.708,-0.155],[-4.427,1.116],[-5.211,16.683],[-0.162,4.273],[.683,3.57],[16.218,4.737],[3.846,.074],[4.596,-1.531],[-0.017,-17.15],[-13.185,-6.083],[-3.505,-0.454],[-6.139,3.186],[-3.046,5.293],[-0.309,4.673],[.703,2.893],[4.329,3.821],[5.306,.603],[4.422,-2.403],[2.136,-3.916],[-0.144,-3.846],[-3.333,-3.451],[-1.877,-0.92],[-3.188,.401],[-1.893,5.145],[.978,2.596],[2.775,.798],[1.781,-2.308],[-1.419,-1.448]],o:[[.965,16.115],[2.149,1.67],[7.626,4.259],[4.598,.082],[16.65,-4.196],[1.275,-4.083],[.138,-3.624],[-3.192,-16.68],[-3.724,-1.088],[-4.887,-0.094],[-16.161,5.384],[.287,14.428],[3.249,1.499],[6.853,.887],[5.491,-2.85],[2.336,-4.06],[.198,-3.003],[-1.376,-5.661],[-4.129,-3.645],[-5.084,-0.578],[-3.952,2.148],[-1.841,3.376],[.182,4.869],[1.49,1.543],[3.02,1.48],[5.353,-0.673],[1.032,-2.804],[-1.139,-3.025],[-2.704,-0.778],[-1.14,1.477],[0,0]],v:[[-55.765,-4.143],[-34.151,37.195],[-27.316,41.629],[-2.358,48.14],[11.243,46.45],[46.671,12.649],[48.717,.071],[47.804,-10.664],[15.642,-45.824],[4.204,-47.466],[-10.148,-45.15],[-37.914,-6.587],[-16.262,27.132],[-6.024,29.983],[13.888,26.321],[26.864,13.719],[30.785,.393],[29.933,-8.55],[21.059,-23.045],[6.42,-29.442],[-8.246,-26.497],[-17.475,-17.167],[-20.027,-5.992],[-14.434,7.02],[-9.293,10.7],[.313,12.253],[12.328,2.889],[12.294,-5.579],[5.835,-11.66],[-1.807,-9.436],[-1.903,-4.143]],c:false},ix:2},nm:"Path 3",mn:"ADBE Vector Shape - Group",hd:false},{ty:"tm",s:{a:0,k:0,ix:1},e:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.167],y:[.167]},t:39,s:[0]},{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:97.559,s:[100]},{i:{x:[.667],y:[1]},o:{x:[.298],y:[0]},t:117.559,s:[100]},{i:{x:[.802],y:[1]},o:{x:[.333],y:[0]},t:193.559,s:[45.895]},{t:228,s:[0]}],ix:2},o:{a:0,k:0,ix:3},m:1,ix:2,nm:"Trim Paths 1",mn:"ADBE Vector Filter - Trim",hd:false},{ty:"st",c:{a:0,k:[.070588238537,.074509806931,.192156866193,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:11.3,ix:5},lc:2,lj:1,ml:4,bm:0,nm:".primary",mn:"ADBE Vector Graphic - Stroke",hd:false,cl:"primary"},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"Transform"}],nm:"Ellipse 33",np:3,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:false}],ip:0,op:194,st:0,ct:1,bm:0},{ddd:0,ind:3,ty:4,nm:"mask",parent:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:1,k:[{i:{x:[.652],y:[.354]},o:{x:[.443],y:[.213]},t:0,s:[0]},{i:{x:[.526],y:[.666]},o:{x:[.231],y:[.231]},t:118,s:[-473.927]},{t:240,s:[-1384.503]}],ix:10},p:{a:0,k:[0,0,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:1,k:[{t:118.559,s:[{i:[[-30.652,0],[0,-30.652],[30.652,0],[0,30.652]],o:[[30.652,0],[0,30.652],[-30.652,0],[0,-30.652]],v:[[0,-55.5],[55.5,0],[0,55.5],[-55.5,0]],c:true}],h:1},{i:{x:.29,y:1},o:{x:.333,y:0},t:194,s:[{i:[[-26.752,3.759],[0,-30.652],[30.646,-1.513],[0,30.652]],o:[[21.768,-3.059],[0,30.652],[-30.615,1.511],[0,-12.422]],v:[[-2.911,-43.444],[49.68,1.935],[-0.898,54.175],[-55.863,-2.206]],c:true}]},{t:240,s:[{i:[[-30.652,0],[0,-30.652],[30.652,0],[0,30.652]],o:[[30.652,0],[0,30.652],[-30.652,0],[0,-30.652]],v:[[0,-55.5],[55.5,0],[0,55.5],[-55.5,0]],c:true}]}],ix:2},nm:"Path 1",mn:"ADBE Vector Shape - Group",hd:false},{ty:"tm",s:{a:1,k:[{t:0,s:[1.1],h:1},{i:{x:[.728],y:[1]},o:{x:[.28],y:[-0.325]},t:39,s:[0]},{i:{x:[.833],y:[.833]},o:{x:[.333],y:[0]},t:194,s:[0]},{t:240,s:[1.1]}],ix:1},e:{a:1,k:[{i:{x:[.833],y:[.833]},o:{x:[.333],y:[0]},t:0,s:[73.3]},{t:73.559,s:[0],h:1},{i:{x:[.833],y:[.833]},o:{x:[.333],y:[0]},t:194,s:[82.8]},{t:240,s:[73.3]}],ix:2},o:{a:1,k:[{i:{x:[.833],y:[.833]},o:{x:[.333],y:[0]},t:0,s:[91]},{t:39,s:[-89],h:1},{i:{x:[.833],y:[.833]},o:{x:[.333],y:[0]},t:194,s:[-382]},{t:240,s:[-319]}],ix:3},m:1,ix:2,nm:"Trim Paths 1",mn:"ADBE Vector Filter - Trim",hd:false},{ty:"st",c:{a:0,k:[.070588238537,.074509806931,.192156866193,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:11.3,ix:5},lc:2,lj:2,bm:0,nm:".primary",mn:"ADBE Vector Graphic - Stroke",hd:false,cl:"primary"},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"Transform"}],nm:"Ellipse 1",np:3,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:false}],ip:0,op:595,st:0,ct:1,bm:0}]}],layers:[{ddd:0,ind:1,ty:3,nm:"control",sr:1,ks:{o:{a:0,k:0,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[0,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,ef:[{ty:5,nm:"primary",np:3,mn:"ADBE Color Control",ix:1,en:1,ef:[{ty:2,nm:"Color",mn:"ADBE Color Control-0001",ix:1,v:{a:0,k:[.071,.075,.192],ix:1}}]}],ip:0,op:1751,st:0,bm:0},{ddd:0,ind:8,ty:0,nm:"loop-snake-alt",refId:"comp_6",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[72,72,0],ix:2,l:2},a:{a:0,k:[72,72,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,w:144,h:144,ip:0,op:190,st:0,bm:0}],markers:[{tm:0,cm:"default:loop-snake-alt",dr:180}]};var Kr={v:"5.12.1",fr:60,ip:0,op:59,w:500,h:500,nm:"system-solid-31-check",ddd:0,assets:[{id:"comp_1",nm:"hover-check",fr:60,layers:[{ddd:0,ind:1,ty:4,nm:".primary.design",cl:"primary design",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[250,250,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[2083,2083,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[.26,0],[.2,.19],[0,0],[-0.39,.39],[-0.39,-0.39],[0,0],[0,0],[-0.39,-0.39],[.39,-0.39],[0,0]],o:[[-0.26,0],[0,0],[-0.39,-0.39],[.39,-0.39],[0,0],[0,0],[.39,-0.39],[.39,.39],[0,0],[-0.2,.19]],v:[[-1.34,4],[-2.05,3.71],[-4.55,1.2],[-4.55,-0.21],[-3.14,-0.21],[-1.34,1.59],[3.47,-3.21],[4.88,-3.21],[4.88,-1.8],[-0.63,3.71]],c:true},ix:2},nm:"Path 1",mn:"ADBE Vector Shape - Group",hd:false},{ind:1,ty:"sh",ix:2,ks:{a:0,k:{i:[[5.41,0],[0,0],[-0.13,-5.51],[-5.41,0],[0,0],[.13,5.51]],o:[[0,0],[-5.51,.14],[.13,5.43],[0,0],[5.51,-0.14],[-0.13,-5.43]],v:[[0,-10],[-0.24,-10],[-10,.24],[0,10],[.24,10],[10,-0.24]],c:true},ix:2},nm:"Path 2",mn:"ADBE Vector Shape - Group",hd:false},{ty:"fl",c:{a:0,k:[.071,.075,.192,1],ix:4,x:`var $bm_rt;
|
|
10
10
|
$bm_rt = comp('system-solid-31-check').layer('control').effect('primary')('Color');`},o:{a:0,k:100,ix:5},r:1,bm:0,nm:".primary",mn:"ADBE Vector Graphic - Fill",hd:false,cl:"primary"},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"Transform"}],nm:"Group 1",np:3,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:false}],ip:60,op:305,st:60,ct:1,bm:0},{ddd:0,ind:2,ty:4,nm:".primary.design",cl:"primary design",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[250,250,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[2083,2083,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[.26,0],[.2,.19],[0,0],[-0.39,.39],[-0.39,-0.39],[0,0],[0,0],[-0.39,-0.39],[.39,-0.39],[0,0]],o:[[-0.26,0],[0,0],[-0.39,-0.39],[.39,-0.39],[0,0],[0,0],[.39,-0.39],[.39,.39],[0,0],[-0.2,.19]],v:[[-1.34,4],[-2.05,3.71],[-4.55,1.2],[-4.55,-0.21],[-3.14,-0.21],[-1.34,1.59],[3.47,-3.21],[4.88,-3.21],[4.88,-1.8],[-0.63,3.71]],c:true},ix:2},nm:"Path 1",mn:"ADBE Vector Shape - Group",hd:false},{ind:1,ty:"sh",ix:2,ks:{a:0,k:{i:[[5.41,0],[0,0],[-0.13,-5.51],[-5.41,0],[0,0],[.13,5.51]],o:[[0,0],[-5.51,.14],[.13,5.43],[0,0],[5.51,-0.14],[-0.13,-5.43]],v:[[0,-10],[-0.24,-10],[-10,.24],[0,10],[.24,10],[10,-0.24]],c:true},ix:2},nm:"Path 2",mn:"ADBE Vector Shape - Group",hd:false},{ty:"fl",c:{a:0,k:[.071,.075,.192,1],ix:4,x:`var $bm_rt;
|
package/dist/index.js
CHANGED
|
@@ -4,7 +4,7 @@ ${n.map(([s,a])=>{let i=a.theme?.[o]||a.color;return i?` --color-${s}: ${i};`:n
|
|
|
4
4
|
`)}
|
|
5
5
|
}
|
|
6
6
|
`).join(`
|
|
7
|
-
`)}}):null},Vn=qt.Tooltip;function Ln({active:t,payload:e,className:n,indicator:o="dot",hideLabel:r=false,hideIndicator:s=false,label:a,labelFormatter:i,labelClassName:c,formatter:l,color:u,nameKey:d,labelKey:p}){let{config:m}=Vr(),g=kt.useMemo(()=>{if(r||!e?.length)return null;let[h]=e,b=`${p||h?.dataKey||h?.name||"value"}`,x=Mn(m,h,b),y=!p&&typeof a=="string"?m[a]?.label||a:x?.label;return i?jsx("div",{className:X("font-medium",c),children:i(y,e)}):y?jsx("div",{className:X("font-medium",c),children:y}):null},[a,i,e,r,c,m,p]);if(!t||!e?.length)return null;let f=e.length===1&&o!=="dot";return jsxs("div",{className:X("border-border/50 bg-background grid min-w-[8rem] items-start gap-1.5 rounded-lg border px-2.5 py-1.5 text-xs shadow-xl",n),children:[f?null:g,jsx("div",{className:"grid gap-1.5",children:e.map((h,b)=>{let x=`${d||h.name||h.dataKey||"value"}`,y=Mn(m,h,x),k=u||h.payload.fill||h.color;return jsx("div",{className:X("[&>svg]:text-muted-foreground flex w-full flex-wrap items-stretch gap-2 [&>svg]:h-2.5 [&>svg]:w-2.5",o==="dot"&&"items-center"),children:l&&h?.value!==void 0&&h.name?l(h.value,h.name,h,b,h.payload):jsxs(Fragment,{children:[y?.icon?jsx(y.icon,{}):!s&&jsx("div",{className:X("shrink-0 rounded-[2px] border-(--color-border) bg-(--color-bg)",{"h-2.5 w-2.5":o==="dot","w-1":o==="line","w-0 border-[1.5px] border-dashed bg-transparent":o==="dashed","my-0.5":f&&o==="dashed"}),style:{"--color-bg":k,"--color-border":k}}),jsxs("div",{className:X("flex flex-1 justify-between leading-none",f?"items-end":"items-center"),children:[jsxs("div",{className:"grid gap-1.5",children:[f?g:null,jsx("span",{className:"text-muted-foreground",children:y?.label||h.name})]}),h.value&&jsx("span",{className:"text-foreground font-mono font-medium tabular-nums",children:h.value.toLocaleString()})]})]})},h.dataKey)})})]})}var $n=qt.Legend;function jn({className:t,hideIcon:e=false,payload:n,verticalAlign:o="bottom",nameKey:r}){let{config:s}=Vr();return n?.length?jsx("div",{className:X("flex items-center justify-center gap-4",o==="top"?"pb-3":"pt-3",t),children:n.map(a=>{let i=`${r||a.dataKey||"value"}`,c=Mn(s,a,i);return jsxs("div",{className:X("[&>svg]:text-muted-foreground flex items-center gap-1.5 [&>svg]:h-3 [&>svg]:w-3"),children:[c?.icon&&!e?jsx(c.icon,{}):jsx("div",{className:"h-2 w-2 shrink-0 rounded-[2px]",style:{backgroundColor:a.color}}),c?.label]},a.value)})}):null}function Mn(t,e,n){if(typeof e!="object"||e===null)return;let o="payload"in e&&typeof e.payload=="object"&&e.payload!==null?e.payload:void 0,r=n;return n in e&&typeof e[n]=="string"?r=e[n]:o&&n in o&&typeof o[n]=="string"&&(r=o[n]),r in t?t[r]:t[n]}function Ve({onZoomChange:t}={}){let[e,n]=useState({refAreaLeft:null,refAreaRight:null,refAreaTop:null,refAreaBottom:null,zooming:false}),[o,r]=useState({x:[null,null],y:[null,null]}),s=useCallback(u=>{!u?.xValue||!u?.yValue||n(d=>({...d,refAreaLeft:u.xValue,refAreaTop:u.yValue,zooming:true}));},[]),a=useCallback(u=>{!u?.xValue||!u?.yValue||!e.zooming||n(d=>({...d,refAreaRight:u.xValue,refAreaBottom:u.yValue}));},[e.zooming]),i=useCallback(()=>{if(!e.refAreaLeft||!e.refAreaRight||!e.refAreaTop||!e.refAreaBottom){n({refAreaLeft:null,refAreaRight:null,refAreaTop:null,refAreaBottom:null,zooming:false});return}let[u,d]=[Math.min(e.refAreaLeft,e.refAreaRight),Math.max(e.refAreaLeft,e.refAreaRight)],[p,m]=[Math.min(e.refAreaTop,e.refAreaBottom),Math.max(e.refAreaTop,e.refAreaBottom)],g={x:[u,d],y:[p,m]};r(g),t?.(g),n({refAreaLeft:null,refAreaRight:null,refAreaTop:null,refAreaBottom:null,zooming:false});},[e,t]),c=useCallback(()=>{let u={x:[null,null],y:[null,null]};r(u),t?.(u);},[t]),l=useMemo(()=>({onZoomStart:s,onZoomMove:a,onZoomEnd:i,onResetZoom:c}),[s,a,i,c]);return {zoomState:e,customDomain:o,handlers:l}}function Ur(t){let e={max:null,min:null};if(t.maxValue)if(t.type==="number"){let n=parseFloat(t.maxValue);isNaN(n)?console.warn(`Error parsing max value ${t.maxValue}. Falling back to default.`):e.max=n;}else t.type==="date"?typeof t.maxValue=="string"&&/^\d{4}-\d{2}-\d{2}$/.test(t.maxValue)?e.max=new Date(t.maxValue+"T00:00:00.000Z").getTime():e.max=new Date(t.maxValue).getTime():e.max=t.maxValue;if(t.minValue)if(t.type==="number"){let n=parseFloat(t.minValue);isNaN(n)?console.warn(`Error parsing min value ${t.minValue}. Falling back to default.`):e.min=n;}else t.type==="date"?typeof t.minValue=="string"&&/^\d{4}-\d{2}-\d{2}$/.test(t.minValue)?e.min=new Date(t.minValue+"T00:00:00.000Z").getTime():e.min=new Date(t.minValue).getTime():e.min=t.minValue;return e}function _t(t,e,n){return et(t,e,n)}function Os({title:t,subtitle:e,data:n,displayConfig:o,dataConfig:r,ChartComponent:s,PointComponent:a,disableAnimation:i,onZoomChange:c,stacked:l,enableDownload:u=true,onDownloadSuccess:d,onDownloadError:p,className:m,chartContainerClassName:g,downloadButtonClassName:f,resetZoomButtonClassName:h}){let{zoomState:b,customDomain:x,handlers:y}=Ve({onZoomChange:c}),k=useCallback(C=>{let I=`${(t||"chart").toLowerCase().replace(/\s+/g,"-")}.png`,T=document.createElement("a");T.download=I,T.href=C,T.click(),d?.(I);},[t,d]),S=useCallback(C=>{console.error("Error converting chart to image:",C),p?.(C);},[p]),[{isLoading:_},v,N]=useToPng({onSuccess:k,onError:S}),U=useCallback(async()=>{v();},[v]),tt=useMemo(()=>Ur(r.xAxis),[r.xAxis]),O=useMemo(()=>r.yAxes.map(C=>Ur(C)),[r.yAxes]),H=useMemo(()=>n?r.chartType==="histogram"?n.map(C=>({[r.xAxis.key]:(C.binStart+C.binEnd)/2,frequency:C.frequency,binStart:C.binStart,binEnd:C.binEnd})):r.xAxis.type==="number"?n.map(C=>({...C,[r.xAxis.key]:Number(C[r.xAxis.key])})).filter(C=>!isNaN(C[r.xAxis.key])):r.xAxis.type==="date"?n.map(C=>{let I=C[r.xAxis.key],T;return I instanceof Date?T=I.getTime():typeof I=="number"?T=I:typeof I=="string"?T=new Date(I).getTime():T=NaN,{...C,[r.xAxis.key]:T}}).filter(C=>!isNaN(C[r.xAxis.key])):n:[],[n,r.xAxis.key,r.chartType,r.xAxis.type]),G=useMemo(()=>{if(r.xAxis.type==="category"||!H.length)return;let C=H.map(T=>Number(T[r.xAxis.key])).filter(T=>!isNaN(T)),I=[...new Set(C)].sort((T,A)=>T-A);if(!(r.chartType==="scatter"||I.length>20))return I},[H,r.xAxis.key,r.xAxis.type,r.chartType]),Rn=useMemo(()=>{if(!G||G.length<2)return;let I=(G[G.length-1]-G[0])*.05;return [G[0]-I,G[G.length-1]+I]},[G]),w=useCallback((C,I)=>{if(!C?.length)return {min:null,max:null};let T=C.map(A=>Number(A[I])).filter(A=>!isNaN(A));return {min:Math.min(...T),max:Math.max(...T)}},[]),D=useMemo(()=>({x:x.x[0]!==null&&x.x[1]!==null?[x.x[0],x.x[1]]:(()=>{if(tt.min!==null&&tt.max!==null)return [tt.min,tt.max];let C=w(H,r.xAxis.key);return [C.min??"auto",C.max??"auto"]})(),y:r.yAxes.map((C,I)=>{if(x.y[0]!==null&&x.y[1]!==null)return [x.y[0],x.y[1]];let A=r.series.filter(K=>(K.axisIndex||0)===I).reduce((K,xe)=>{let Y=w(H,xe.key);return {min:K.min===null?Y.min:Y.min===null?K.min:Math.min(K.min,Y.min),max:K.max===null?Y.max:Y.max===null?K.max:Math.max(K.max,Y.max)}},{min:null,max:null});if(C.type==="number"&&C.maxValue){let K=parseFloat(C.maxValue);if(A.max===null||K<=A.max*1.5)return [O[I].min??A.min??"auto",O[I].max??A.max??"auto"]}return [O[I].min??A.min??"auto",O[I].max??A.max??"auto"]})}),[x.x,x.y,tt,O,r.series,r.yAxes,r.xAxis.key,H,w]),V=useCallback((C,I,T)=>{if(T.dataKey===r.xAxis.key)return _t(C,r.xAxis.format,r.xAxis.type);let A=r.series.find(ke=>ke.key===T.dataKey),K=A?.name||String(I).replace(/^dataset_\d+_/,"");if(r.chartType==="histogram"){let ke=T.payload;if(ke.binStart!==void 0){let fs=_t(ke.binStart,r.xAxis.format,r.xAxis.type),gs=_t(ke.binEnd,r.xAxis.format,r.xAxis.type);return `Count: ${C} (${fs} - ${gs})`}}let xe=A?.axisIndex||0,Y=r.yAxes[xe],An=_t(C,Y?.format,Y?.type);return `${K}: ${An}`},[r.xAxis,r.series,r.yAxes,r.chartType]),[Z,F]=useState(false);useEffect(()=>{let C=setTimeout(()=>{F(true);},1700);return ()=>clearTimeout(C)},[]);let W=useCallback((C,I)=>{if(I&&I.length>0){let T=I[0].payload[r.xAxis.key],A=_t(T,r.xAxis.format,r.xAxis.type);return jsxs("div",{className:"flex flex-col",children:[jsx("span",{children:r.xAxis.label}),jsx("span",{className:"font-mono tabular-nums",children:A})]})}return C},[r.xAxis.key,r.xAxis.format,r.xAxis.type,r.xAxis.label]),Ut=useCallback(C=>jsx(Ln,{...C,formatter:V,labelFormatter:W}),[V,W]),Oe=useCallback(C=>jsx(jn,{...C}),[]),Nt=useMemo(()=>{let C=H.length,I=C>30?8:C>20?12:C>10?16:20,T=0;for(let xe of H){let Y=_t(xe[r.xAxis.key],r.xAxis.format,r.xAxis.type),An=typeof Y=="string"?Y:String(Y??"");T=Math.max(T,Math.min(An.length,I));}let A=T*7*C>500,K=A?Math.min(Math.max(40,T*5.5+20),140):50;return {maxLabelLen:I,shouldAngle:A,height:K}},[H,r.xAxis.key,r.xAxis.format,r.xAxis.type]),ot=useMemo(()=>!!(i||(n?.length||0)>100||Z),[i,n?.length,Z]);return jsxs("div",{className:m||"w-full items-center mt-0 flex flex-col gap-0",children:[(t||u)&&jsxs("div",{className:"w-full items-center mb-2 relative",children:[t&&jsx("h2",{className:"text-center text-base pt-0 mt-0 mb-2",children:t}),u&&jsx("button",{onClick:U,disabled:_,className:f||"text-sm text-gray-500 hover:text-gray-700 disabled:opacity-50 h-8 absolute right-0 top-[-5px] px-2 py-1 border rounded hover:bg-gray-50",title:"Download chart as PNG",children:jsx(Download,{className:"w-4 h-4"})})]}),e&&jsx("p",{className:"text-center text-sm text-muted-foreground mb-2",children:e}),jsx(Se,{ref:N,config:o,className:g||"w-full border border-border/50 p-4 rounded-md",debounceResize:true,children:jsxs(s,{accessibilityLayer:true,data:H,isAnimationActive:!ot,onMouseDown:y.onZoomStart,onMouseMove:y.onZoomMove,onMouseUp:y.onZoomEnd,onDoubleClick:y.onResetZoom,style:{userSelect:"none",cursor:"crosshair"},children:[jsx(CartesianGrid,{vertical:false}),jsx(XAxis,{dataKey:r.xAxis.key,domain:Rn||D.x,type:r.xAxis.type==="date"||!r.xAxis.type?"number":r.xAxis.type,tickFormatter:C=>{let I=_t(C,r.xAxis.format,r.xAxis.type),T=typeof I=="string"?I:String(I??"");return T.length>Nt.maxLabelLen?T.slice(0,Nt.maxLabelLen)+"\u2026":T},tickLine:false,tickMargin:10,height:Nt.height,axisLine:false,allowDataOverflow:true,interval:"preserveStartEnd",ticks:G,...Nt.shouldAngle?{angle:-45,textAnchor:"end"}:{},children:jsx(Label,{value:r.xAxis.label,position:"bottom",offset:Nt.shouldAngle?-5:-10,style:{textAnchor:"middle"}})}),r.yAxes.map((C,I)=>jsx(YAxis,{yAxisId:I,orientation:I===0?"left":"right",domain:l?void 0:D.y[I],type:C.type==="date"||!C.type?"number":C.type,tickFormatter:T=>{let A=_t(T,C.format,C.type);return typeof A=="string"&&A.length>20?A.slice(0,20)+"...":A},allowDataOverflow:true,children:jsx(Label,{value:C.label,position:I===0?"insideLeft":"insideRight",angle:-90,dx:I===0?-15:15,style:{textAnchor:"middle"}})},`y-axis-${C.key}`)),jsx(Vn,{content:Ut}),jsx($n,{content:Oe,verticalAlign:"top"}),r.series.map(C=>jsx(a,{dataKey:C.key,yAxisId:C.axisIndex||0,fill:C.color||"blue",stroke:C.color||"blue",dot:{fill:C.color||"blue",stroke:C.color||"blue"},radius:4,name:C.name,isAnimationActive:!ot,animationDuration:1500,animationBegin:0,stackId:r.chartType==="bar"&&l?"stack":void 0},`${C.key}-${l?"stacked":"unstacked"}`)),b.refAreaLeft&&b.refAreaRight&&b.refAreaTop&&b.refAreaBottom&&jsx(ReferenceArea,{x1:b.refAreaLeft,x2:b.refAreaRight,y1:b.refAreaTop,y2:b.refAreaBottom,strokeOpacity:.2,stroke:"currentColor",fill:"currentColor",fillOpacity:.02,style:{pointerEvents:"none"}})]})}),x.x[0]!==null&&jsx("button",{onClick:y.onResetZoom,className:h||"text-sm text-gray-500 hover:text-gray-700 mt-2 px-3 py-1 border rounded hover:bg-gray-50",children:"Reset Zoom"})]})}function ut(t){return jsx(Et,{fallback:jsx("div",{className:t.errorClassName||"text-red-500",children:"Failed to load chart"}),children:jsx(Os,{...t})})}function Dt(t){return jsx(ut,{...t,ChartComponent:BarChart,PointComponent:Bar})}function zt(t){return jsx(ut,{...t,ChartComponent:LineChart,PointComponent:Line})}var Hs=(t,e,n)=>{let o=parseInt(t.slice(1,3),16)/255,r=parseInt(t.slice(3,5),16)/255,s=parseInt(t.slice(5,7),16)/255,a=Math.max(o,r,s),i=Math.min(o,r,s),c,l,u=(a+i)/2;if(a===i)c=l=0;else {let f=a-i;switch(l=u>.5?f/(2-a-i):f/(a+i),a){case o:c=(r-s)/f+(r<s?6:0);break;case r:c=(s-o)/f+2;break;case s:c=(o-r)/f+4;break;default:c=0;}c/=6;}let d=e/n,p=c*360+(d*40-20),m=Math.min(100,l*100+d*25),g=Math.max(35,Math.min(65,u*100-d*20));return `hsl(${p}, ${m}%, ${g}%)`};function Ks({title:t,subtitle:e,data:n,displayConfig:o,dataConfig:r,className:s,chartContainerClassName:a}){let i=r.series[0]?.color||"blue",c=r.yAxes[0]?.format,l=r.yAxes[0]?.type||"number",u=useMemo(()=>n.reduce((d,p)=>(r.series.forEach(m=>{let g=m.key,f=String(p[r.xAxis.key]||"Unknown"),h=parseFloat(p[g]||"0");isNaN(h)||d.push({name:f,value:h,seriesId:g,displayName:f});}),d),[]).sort((d,p)=>p.value-d.value),[n,r.series,r.xAxis.key]);return jsxs("div",{className:s||"items-center",children:[jsx("h2",{className:"text-center text-base mb-2",children:t}),e&&jsx("p",{className:"text-center text-sm text-muted-foreground mb-2",children:e}),jsx(Se,{config:o,className:a||"w-full border border-border/50 rounded-md",children:jsxs(PieChart,{width:400,height:400,children:[jsx(Pie,{data:u,dataKey:"value",nameKey:"displayName",cx:"50%",cy:"50%",outerRadius:150,label:d=>`${d.displayName}: ${et(d.value,c,l)}`,children:u.map((d,p)=>jsx(Cell,{fill:p===0?i:Hs(i,p,u.length)},`cell-${d.name}`))}),jsx(Tooltip,{formatter:(d,p)=>[et(d,c,l),p]}),jsx(Legend,{})]})})]})}function Ht(t){return jsx(Et,{fallback:jsx("div",{className:"text-red-500",children:"Failed to load chart"}),children:jsx(Ks,{...t})})}function Kt(t){return jsx(ut,{...t,ChartComponent:ScatterChart,PointComponent:Scatter})}var ea=t=>{let{cx:e,cy:n,payload:o,xAxis:r,yAxis:s}=t,a=o.value||o.z||0,c=`hsl(${240-Math.min(1,Math.max(0,a/100))*240}, 70%, 50%)`,l=r.scale.bandwidth?r.scale.bandwidth():20,u=s.scale.bandwidth?s.scale.bandwidth():20;return jsx("rect",{x:e-l/2,y:n-u/2,width:l,height:u,fill:c,fillOpacity:.8,stroke:"#fff",strokeWidth:1})},na=t=>jsx(Scatter,{...t,shape:ea});function Qt(t){return jsx(ut,{...t,ChartComponent:ScatterChart,PointComponent:na})}function Jr(t){return t.replace(/[A-Z]/g,e=>`_${e.toLowerCase()}`).replace(/^_/,"")}function Zt(t,e){if(!t.length)return e;let n=t[0];if(n[e]!==void 0)return e;let o=e.toLowerCase();if(n[o]!==void 0)return o;let r=Jr(e);if(n[r]!==void 0)return r;let s=e.toLowerCase().replace(/_/g,"");return Object.keys(n).find(i=>i.toLowerCase().replace(/_/g,"")===s)||e}function ua(){return ["yyyy-MM-dd","yyyyMMdd","yyyy-MM-dd'T'HH:mm:ss","yyyyMMddHHmmss"]}function da(t){if(!t)return null;if(typeof t=="string"){if(/^\d{4}-\d{2}-\d{2}$/.test(t)){let r=new Date(t+"T00:00:00.000Z");if(isValid(r))return r.getTime()}let o=ua();for(let r of o){let s=parse(t,r,new Date);if(isValid(s))return s.getTime()}}let e=new Date(t);return isValid(e)?e.getTime():null}function je(t,e,n,o){let r=e==="index"&&t[e]===void 0?o:t[e];return n==="date"?da(r):n==="number"?parseFloat(r):r}function pa(t,e,n){if(t===e.key)return e.type||"category";let o=n.find(r=>r.key===t);return o?o.type||"number":"category"}function Yt(t,e,n,o){return !o||o.length===0?t:[...t].sort((r,s)=>{for(let a of o){let i=pa(a.key,e,n),c=je(r,a.key,i,r.index),l=je(s,a.key,i,s.index);if(c===l)continue;let u=typeof c=="number"&&typeof l=="number"?c-l:c instanceof Date&&l instanceof Date?c.getTime()-l.getTime():String(c).localeCompare(String(l));return a.direction==="asc"?u:-u}return 0})}function Gr(t,e){let n=Math.ceil(t.length/e),o=[t[0]];for(let r=n;r<t.length-1;r+=n)o.push(t[r]);return o[o.length-1]!==t[t.length-1]&&o.push(t[t.length-1]),o}function ma(t,e,n,o,r,s,a){let i=t.reduce((u,d)=>{let p=d[e];return u[p]||(u[p]=[]),u[p].push(d),u},{}),c=Object.entries(i);if(c.length>o){let u=Math.ceil(c.length/o),d=c.reduce((p,[m,g],f)=>{let h=Math.floor(f/u);return p[h]||(p[h]={key:m,items:[]}),p[h].items.push(...g),p},[]).map(({key:p,items:m})=>({[e]:p,...n.reduce((g,f)=>{let h=m.map(b=>parseFloat(b[f.key])).filter(b=>!isNaN(b));return g[f.key]=h.length?h.reduce((b,x)=>b+x,0)/h.length:null,g},{})}));return a&&a.length>0?Yt(d,r,s,a):d}let l=c.map(([u,d])=>{let p=n.reduce((g,f)=>{let h=d.map(b=>parseFloat(b[f.key])).filter(b=>!isNaN(b));return g[f.key]=h.length?h.reduce((b,x)=>b+x,0)/h.length:null,g},{}),m=Object.values(p).filter(g=>g!==null).reduce((g,f)=>g+f,0);return {[e]:u,...p,index:m}});return a&&a.length>0?Yt(l,r,s,a):l}function fa(t,e,n,o){let r=t.map(l=>parseFloat(l[e])).filter(l=>!isNaN(l)),s=Math.min(...r),i=(Math.max(...r)-s)/o,c=Array.from({length:o},(l,u)=>({binStart:s+u*i,binEnd:s+(u+1)*i,count:0,seriesValues:n.reduce((d,p)=>(d[p.key]=[],d),{})}));return t.forEach(l=>{let u=parseFloat(l[e]);if(isNaN(u))return;let d=Math.min(Math.floor((u-s)/i),o-1);c[d].count++,n.forEach(p=>{let m=parseFloat(l[p.key]);isNaN(m)||c[d].seriesValues[p.key].push(m);});}),c.map(l=>({[e]:(l.binStart+l.binEnd)/2,...n.reduce((u,d)=>{let p=l.seriesValues[d.key];return u[d.key]=p.length?p.reduce((m,g)=>m+g,0)/p.length:null,u},{}),count:l.count,index:n.reduce((u,d)=>{let p=l.seriesValues[d.key],m=p.length?p.reduce((g,f)=>g+f,0)/p.length:0;return u+m},0)})).filter(l=>n.some(u=>l[u.key]!==null))}function Wr(t,e,n,o,r){let s=t.map((m,g)=>{let f=je(m,e,r.type||"number",g);return typeof f=="number"?f:parseFloat(f)}).filter(m=>!isNaN(m)),a=Math.min(...s),l=(Math.max(...s)-a)/o,u=Array.from({length:o},(m,g)=>({binStart:Number((a+g*l).toFixed(2)),binEnd:Number((a+(g+1)*l).toFixed(2)),frequency:0,[e]:Number((a+(g+.5)*l).toFixed(2))}));s.forEach(m=>{let g=Math.min(Math.floor((m-a)/l),o-1);u[g].frequency++;});let d=u.filter(m=>m.frequency>0);return (u.length-d.length)/u.length*100>30?Wr(t,e,n,Math.floor(o/2),r):d}function ga(t,e,n,o){return !e||e.length===0?t:t.filter(r=>e.every(s=>{let a=s.key;n&&s.key.toLowerCase()===n.toLowerCase()?a=n:o&&s.key.toLowerCase()===o.toLowerCase()&&(a=o);let i=r[a],c=Array.isArray(s.value)?s.value:[s.value];switch(s.operator){case "equals":return c.some(l=>String(i)===String(l));case "not_equals":return c.every(l=>String(i)!==String(l));case "greater_than":return parseFloat(String(i))>parseFloat(String(c[0]));case "less_than":return parseFloat(String(i))<parseFloat(String(c[0]));case "contains":return String(i).toLowerCase().includes(String(c[0]).toLowerCase());case "between":if(c.length===2){let l=parseFloat(String(i)),u=parseFloat(String(c[0])),d=parseFloat(String(c[1]));return l>=u&&l<=d}return true;default:return true}}))}var Ue=kt__default.memo(function({chartType:e,title:n,invocationId:o,datasetSlugs:r,xAxis:s,yAxes:a,series:i,dataReduction:c={strategy:"none",target_points:1e3},stacked:l,sort:u,onScrollUpdate:d,enableDownload:p=true,className:m,chartContainerClassName:g}){let f=useMemo(()=>i.map(w=>({datasetSlug:w.datasetSlug,sqlQuery:w.sqlQuery,resourceKey:w.resourceKey,filters:!w.sqlQuery&&w.filters?.length?w.filters:void 0})),[i]),h=be(f,o),b=h.some(w=>w.isLoading),x=useDeepCompareMemo(()=>h.map(w=>w.data||[]),[h.map(w=>w.data)]),{resolvedXAxisKey:y,resolvedSeriesKeys:k}=useMemo(()=>{let w=x.find(D=>D.length>0)||[];return {resolvedXAxisKey:Zt(w,s.key),resolvedSeriesKeys:i.map((D,V)=>({...D,resolvedKey:Zt(x[V]||[],D.key)}))}},[x,s.key,i]),S=useMemo(()=>{let w=new Map;i.forEach((V,Z)=>{let F=x[Z]||[],W=k[Z]?.resolvedKey||V.key;(V.filters?ga(F,V.filters,W,y):F).forEach((Oe,Nt)=>{let ot=je(Oe,y,s.type||"category",Nt);if(ot==null||s.type==="number"&&isNaN(ot))return;let C=s.type==="number"||s.type==="date"||typeof ot=="object"?ot.toString():String(ot);w.has(C)||w.set(C,{[s.key]:ot});let I=`series_${Z}_${V.key}`,T=Oe[W];w.get(C)[I]=T;});});let D=Array.from(w.values());return u&&u.length>0?D:s.type==="date"?D.sort((V,Z)=>V[s.key]-Z[s.key]):s.type==="number"?D.sort((V,Z)=>{let F=parseFloat(V[s.key]),W=parseFloat(Z[s.key]);return isNaN(F)||isNaN(W)?0:F-W}):D},[x,i,k,y,s,u]),_=useMemo(()=>i.map((w,D)=>({...w,key:`series_${D}_${w.key}`})),[i]),v=useMemo(()=>({[s.key]:{label:s.label,format:s.format,type:s.type},..._.reduce((w,D)=>(w[D.key]={label:D.name,color:D.color},w),{}),...e==="histogram"?{frequency:{label:a[0]?.label||"Frequency",color:_[0]?.color||"#2563eb"}}:{}}),[s,_,e,a]),N=useMemo(()=>!s.key||!_.length?null:{chartType:e,xAxis:s,yAxes:e==="histogram"?a.map(w=>({...w,key:"frequency",minValue:w.minValue||"0"})):a,series:e==="histogram"?[{key:"frequency",name:a[0]?.label||"Frequency",color:i[0]?.color||"#2563eb"}]:_},[s,a,i,_,e]),U=null;switch(e){case "bar":U=Dt;break;case "line":U=zt;break;case "pie":U=Ht;break;case "scatter":U=Kt;break;case "histogram":U=Dt;break;case "heatmap":U=Qt;break}let tt=useRef(false);useEffect(()=>{tt.current||!d||!b&&v&&N&&S.length&&(d(),setTimeout(()=>d(),250),tt.current=true);},[d,b,v,N,S.length]);let[O,H]=useState({x:[null,null],y:[null,null]}),{processedData:G,dataReductionInfo:Rn}=useMemo(()=>{if(b||!S.length)return {processedData:[],dataReductionInfo:null};if(e==="histogram"){let F=c.target_points||20;return {processedData:Wr(S,y,_,F,s),dataReductionInfo:null}}let w=S;if((O.x[0]!==null||O.y[0]!==null)&&(w=S.filter(F=>{if(O.x[0]!==null&&O.x[1]!==null){let W=parseFloat(F[s.key]);if(isNaN(W)||W<O.x[0]||W>O.x[1])return false}if(O.y[0]!==null&&O.y[1]!==null)for(let W of _){let Ut=parseFloat(F[W.key]);if(!isNaN(Ut)&&(Ut<O.y[0]||Ut>O.y[1]))return false}return true})),c.strategy==="none"||!c.target_points||w.length<=c.target_points&&(!u||u.length===0)){let F=w;return u&&u.length>0&&(F=Yt(F,s,a,u)),{processedData:F,dataReductionInfo:null}}let D,V="";switch(c.strategy){case "sample":D=Gr(w,c.target_points),V="sampled",u&&u.length>0&&(D=Yt(D,s,a,u));break;case "aggregate":D=ma(w,y,_,c.target_points,s,a,u),V="aggregated";break;case "bin":D=fa(w,y,_,c.target_points),V="binning",u&&u.length>0&&(D=Yt(D,s,a,u));break;default:w.length<1e3?D=w:(D=Gr(w,c.target_points),V="sampled"),u&&u.length>0&&(D=Yt(D,s,a,u));}let Z=null;return w.length!==D.length&&(Z=`${V} ${w.length.toLocaleString()} \u2192 ${D.length.toLocaleString()} points`),{processedData:D,dataReductionInfo:Z}},[S,c,e,b,O.x,O.y,_,u,s,a,y]);return U?b?jsx("div",{children:"Loading..."}):S.length?N?jsx(U,{data:G,displayConfig:v,stacked:l,dataConfig:N,title:n,subtitle:Rn||void 0,disableAnimation:G.length>100,onZoomChange:H,enableDownload:p,className:m,chartContainerClassName:g}):jsx("div",{children:"Invalid chart configuration"}):jsx("div",{children:"Unable to display chart - no data available"}):(console.error("No chart component found"),null)},(t,e)=>ra(t,e));function Fe({title:t,invocationId:e,datasetSlug:n,sqlQuery:o,resourceKey:r,columns:s,maxRows:a=100,className:i,tableWrapperClassName:c,headerClassName:l,loadingClassName:u,emptyClassName:d,onScrollUpdate:p}){let{data:m,isLoading:g}=Gt(n,e,o,r),f=useMemo(()=>s?m?.length?s.map(x=>{let y=Zt(m,x.key);return {key:x.key,name:x.name,resolvedKey:y,format:x.format,value_type:x.value_type}}):[]:m?.length?Object.keys(m[0]).map(x=>({key:x,name:x,resolvedKey:x,format:void 0,value_type:void 0})):[],[s,m]),h=useMemo(()=>!m||m.length===0?[]:a?m.slice(0,a):m,[m,a]),b=useRef(false);return useEffect(()=>{b.current||!p||!g&&m?.length&&(p(),setTimeout(()=>p(),250),b.current=true);},[p,g,m?.length]),g?jsx("div",{className:u||"text-gray-500",children:"Loading..."}):m?.length?f.length===0?jsx("div",{className:d||"text-gray-500",children:"No columns defined"}):jsxs("div",{className:i||"w-full",children:[t&&jsx("h3",{className:"text-lg font-medium mb-3",children:t}),jsx("div",{className:c||"relative w-full overflow-x-auto rounded-lg border border-border/50",children:jsxs("table",{className:"w-full caption-bottom text-sm",children:[jsx("thead",{className:"[&_tr]:border-b",children:jsx("tr",{className:l||"border-b transition-colors",children:f.map(x=>jsx("th",{className:"h-10 px-3 text-left align-middle font-medium text-muted-foreground",children:x.name},x.key))})}),jsx("tbody",{className:"[&_tr:last-child]:border-0",children:h.map((x,y)=>jsx("tr",{className:`border-b transition-colors hover:bg-muted/50 ${y%2===1?"bg-muted/30":""}`,children:f.map(k=>jsx("td",{className:"p-3 align-middle text-foreground",children:et(x[k.resolvedKey],k.format,k.value_type)},k.key))},y))})]})}),m.length>a&&jsxs("p",{className:"text-sm text-muted-foreground mt-2",children:["Showing ",a," of ",m.length," rows"]})]}):jsx("div",{className:d||"text-gray-500",children:"No data"})}function Je({output:t,ContentComponent:e}){let n=Q(),o=e??n?.ContentComponent,r=t?.contents;if(!t||!t.output||!r?.length)return null;let s=r.filter(a=>a.user_visibility==="visible");return s.length?jsx("div",{children:s.map(a=>o?jsx(o,{content:a},a.id):jsx("div",{className:"text-sm",children:typeof a.content=="string"?a.content:null},a.id))},t.output.id):null}function zr(t){return t!==null&&typeof t=="object"&&"Valid"in t&&"String"in t}function M(t){if(typeof t=="string")return t;if(zr(t))return t.Valid?t.String:void 0}function xa(t,e){return M(t)??e}var Hr={v:"5.10.2",fr:60,ip:0,op:180,w:144,h:144,nm:"system-solid-719-spinner-circle",ddd:0,assets:[{id:"comp_6",nm:"loop-snake-alt",fr:60,layers:[{ddd:0,ind:1,ty:0,nm:"mask-2",td:1,refId:"comp_7",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[72,72,0],ix:2,l:2},a:{a:0,k:[72,72,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,w:144,h:144,ip:0,op:1800,st:0,bm:0},{ddd:0,ind:2,ty:4,nm:"circle 2",tt:2,tp:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[72,72,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[-30.652,0],[0,30.652],[30.652,0],[0,-30.652]],o:[[30.652,0],[0,-30.652],[-30.652,0],[0,30.652]],v:[[0,55.5],[55.5,0],[0,-55.5],[-55.5,0]],c:true},ix:2},nm:"Path 1",mn:"ADBE Vector Shape - Group",hd:false},{ty:"st",c:{a:0,k:[.071,.075,.192,1],ix:3,x:`var $bm_rt;
|
|
7
|
+
`)}}):null},Vn=qt.Tooltip;function Ln({active:t,payload:e,className:n,indicator:o="dot",hideLabel:r=false,hideIndicator:s=false,label:a,labelFormatter:i,labelClassName:c,formatter:l,color:u,nameKey:d,labelKey:p}){let{config:m}=Vr(),g=kt.useMemo(()=>{if(r||!e?.length)return null;let[h]=e,b=`${p||h?.dataKey||h?.name||"value"}`,x=Mn(m,h,b),y=!p&&typeof a=="string"?m[a]?.label||a:x?.label;return i?jsx("div",{className:X("font-medium",c),children:i(y,e)}):y?jsx("div",{className:X("font-medium",c),children:y}):null},[a,i,e,r,c,m,p]);if(!t||!e?.length)return null;let f=e.length===1&&o!=="dot";return jsxs("div",{className:X("border-border/50 bg-background grid min-w-[8rem] items-start gap-1.5 rounded-lg border px-2.5 py-1.5 text-xs shadow-xl",n),children:[f?null:g,jsx("div",{className:"grid gap-1.5",children:e.map((h,b)=>{let x=`${d||h.name||h.dataKey||"value"}`,y=Mn(m,h,x),k=u||h.payload.fill||h.color;return jsx("div",{className:X("[&>svg]:text-muted-foreground flex w-full flex-wrap items-stretch gap-2 [&>svg]:h-2.5 [&>svg]:w-2.5",o==="dot"&&"items-center"),children:l&&h?.value!==void 0&&h.name?l(h.value,h.name,h,b,h.payload):jsxs(Fragment,{children:[y?.icon?jsx(y.icon,{}):!s&&jsx("div",{className:X("shrink-0 rounded-[2px] border-(--color-border) bg-(--color-bg)",{"h-2.5 w-2.5":o==="dot","w-1":o==="line","w-0 border-[1.5px] border-dashed bg-transparent":o==="dashed","my-0.5":f&&o==="dashed"}),style:{"--color-bg":k,"--color-border":k}}),jsxs("div",{className:X("flex flex-1 justify-between leading-none",f?"items-end":"items-center"),children:[jsxs("div",{className:"grid gap-1.5",children:[f?g:null,jsx("span",{className:"text-muted-foreground",children:y?.label||h.name})]}),h.value&&jsx("span",{className:"text-foreground font-mono font-medium tabular-nums",children:h.value.toLocaleString()})]})]})},h.dataKey)})})]})}var $n=qt.Legend;function jn({className:t,hideIcon:e=false,payload:n,verticalAlign:o="bottom",nameKey:r}){let{config:s}=Vr();return n?.length?jsx("div",{className:X("flex items-center justify-center gap-4",o==="top"?"pb-3":"pt-3",t),children:n.map(a=>{let i=`${r||a.dataKey||"value"}`,c=Mn(s,a,i);return jsxs("div",{className:X("[&>svg]:text-muted-foreground flex items-center gap-1.5 [&>svg]:h-3 [&>svg]:w-3"),children:[c?.icon&&!e?jsx(c.icon,{}):jsx("div",{className:"h-2 w-2 shrink-0 rounded-[2px]",style:{backgroundColor:a.color}}),c?.label]},a.value)})}):null}function Mn(t,e,n){if(typeof e!="object"||e===null)return;let o="payload"in e&&typeof e.payload=="object"&&e.payload!==null?e.payload:void 0,r=n;return n in e&&typeof e[n]=="string"?r=e[n]:o&&n in o&&typeof o[n]=="string"&&(r=o[n]),r in t?t[r]:t[n]}function Ve({onZoomChange:t}={}){let[e,n]=useState({refAreaLeft:null,refAreaRight:null,refAreaTop:null,refAreaBottom:null,zooming:false}),[o,r]=useState({x:[null,null],y:[null,null]}),s=useCallback(u=>{!u?.xValue||!u?.yValue||n(d=>({...d,refAreaLeft:u.xValue,refAreaTop:u.yValue,zooming:true}));},[]),a=useCallback(u=>{!u?.xValue||!u?.yValue||!e.zooming||n(d=>({...d,refAreaRight:u.xValue,refAreaBottom:u.yValue}));},[e.zooming]),i=useCallback(()=>{if(!e.refAreaLeft||!e.refAreaRight||!e.refAreaTop||!e.refAreaBottom){n({refAreaLeft:null,refAreaRight:null,refAreaTop:null,refAreaBottom:null,zooming:false});return}let[u,d]=[Math.min(e.refAreaLeft,e.refAreaRight),Math.max(e.refAreaLeft,e.refAreaRight)],[p,m]=[Math.min(e.refAreaTop,e.refAreaBottom),Math.max(e.refAreaTop,e.refAreaBottom)],g={x:[u,d],y:[p,m]};r(g),t?.(g),n({refAreaLeft:null,refAreaRight:null,refAreaTop:null,refAreaBottom:null,zooming:false});},[e,t]),c=useCallback(()=>{let u={x:[null,null],y:[null,null]};r(u),t?.(u);},[t]),l=useMemo(()=>({onZoomStart:s,onZoomMove:a,onZoomEnd:i,onResetZoom:c}),[s,a,i,c]);return {zoomState:e,customDomain:o,handlers:l}}function Ur(t){let e={max:null,min:null};if(t.maxValue)if(t.type==="number"){let n=parseFloat(t.maxValue);isNaN(n)?console.warn(`Error parsing max value ${t.maxValue}. Falling back to default.`):e.max=n;}else t.type==="date"?typeof t.maxValue=="string"&&/^\d{4}-\d{2}-\d{2}$/.test(t.maxValue)?e.max=new Date(t.maxValue+"T00:00:00.000Z").getTime():e.max=new Date(t.maxValue).getTime():e.max=t.maxValue;if(t.minValue)if(t.type==="number"){let n=parseFloat(t.minValue);isNaN(n)?console.warn(`Error parsing min value ${t.minValue}. Falling back to default.`):e.min=n;}else t.type==="date"?typeof t.minValue=="string"&&/^\d{4}-\d{2}-\d{2}$/.test(t.minValue)?e.min=new Date(t.minValue+"T00:00:00.000Z").getTime():e.min=new Date(t.minValue).getTime():e.min=t.minValue;return e}function _t(t,e,n){return et(t,e,n)}function Os({title:t,subtitle:e,data:n,displayConfig:o,dataConfig:r,ChartComponent:s,PointComponent:a,disableAnimation:i,onZoomChange:c,stacked:l,enableDownload:u=false,onDownloadSuccess:d,onDownloadError:p,className:m,chartContainerClassName:g,downloadButtonClassName:f,resetZoomButtonClassName:h}){let{zoomState:b,customDomain:x,handlers:y}=Ve({onZoomChange:c}),k=useCallback(C=>{let I=`${(t||"chart").toLowerCase().replace(/\s+/g,"-")}.png`,T=document.createElement("a");T.download=I,T.href=C,T.click(),d?.(I);},[t,d]),S=useCallback(C=>{console.error("Error converting chart to image:",C),p?.(C);},[p]),[{isLoading:_},v,N]=useToPng({onSuccess:k,onError:S}),U=useCallback(async()=>{v();},[v]),tt=useMemo(()=>Ur(r.xAxis),[r.xAxis]),O=useMemo(()=>r.yAxes.map(C=>Ur(C)),[r.yAxes]),H=useMemo(()=>n?r.chartType==="histogram"?n.map(C=>({[r.xAxis.key]:(C.binStart+C.binEnd)/2,frequency:C.frequency,binStart:C.binStart,binEnd:C.binEnd})):r.xAxis.type==="number"?n.map(C=>({...C,[r.xAxis.key]:Number(C[r.xAxis.key])})).filter(C=>!isNaN(C[r.xAxis.key])):r.xAxis.type==="date"?n.map(C=>{let I=C[r.xAxis.key],T;return I instanceof Date?T=I.getTime():typeof I=="number"?T=I:typeof I=="string"?T=new Date(I).getTime():T=NaN,{...C,[r.xAxis.key]:T}}).filter(C=>!isNaN(C[r.xAxis.key])):n:[],[n,r.xAxis.key,r.chartType,r.xAxis.type]),G=useMemo(()=>{if(r.xAxis.type==="category"||!H.length)return;let C=H.map(T=>Number(T[r.xAxis.key])).filter(T=>!isNaN(T)),I=[...new Set(C)].sort((T,A)=>T-A);if(!(r.chartType==="scatter"||I.length>20))return I},[H,r.xAxis.key,r.xAxis.type,r.chartType]),Rn=useMemo(()=>{if(!G||G.length<2)return;let I=(G[G.length-1]-G[0])*.05;return [G[0]-I,G[G.length-1]+I]},[G]),w=useCallback((C,I)=>{if(!C?.length)return {min:null,max:null};let T=C.map(A=>Number(A[I])).filter(A=>!isNaN(A));return {min:Math.min(...T),max:Math.max(...T)}},[]),D=useMemo(()=>({x:x.x[0]!==null&&x.x[1]!==null?[x.x[0],x.x[1]]:(()=>{if(tt.min!==null&&tt.max!==null)return [tt.min,tt.max];let C=w(H,r.xAxis.key);return [C.min??"auto",C.max??"auto"]})(),y:r.yAxes.map((C,I)=>{if(x.y[0]!==null&&x.y[1]!==null)return [x.y[0],x.y[1]];let A=r.series.filter(K=>(K.axisIndex||0)===I).reduce((K,xe)=>{let Y=w(H,xe.key);return {min:K.min===null?Y.min:Y.min===null?K.min:Math.min(K.min,Y.min),max:K.max===null?Y.max:Y.max===null?K.max:Math.max(K.max,Y.max)}},{min:null,max:null});if(C.type==="number"&&C.maxValue){let K=parseFloat(C.maxValue);if(A.max===null||K<=A.max*1.5)return [O[I].min??A.min??"auto",O[I].max??A.max??"auto"]}return [O[I].min??A.min??"auto",O[I].max??A.max??"auto"]})}),[x.x,x.y,tt,O,r.series,r.yAxes,r.xAxis.key,H,w]),V=useCallback((C,I,T)=>{if(T.dataKey===r.xAxis.key)return _t(C,r.xAxis.format,r.xAxis.type);let A=r.series.find(ke=>ke.key===T.dataKey),K=A?.name||String(I).replace(/^dataset_\d+_/,"");if(r.chartType==="histogram"){let ke=T.payload;if(ke.binStart!==void 0){let fs=_t(ke.binStart,r.xAxis.format,r.xAxis.type),gs=_t(ke.binEnd,r.xAxis.format,r.xAxis.type);return `Count: ${C} (${fs} - ${gs})`}}let xe=A?.axisIndex||0,Y=r.yAxes[xe],An=_t(C,Y?.format,Y?.type);return `${K}: ${An}`},[r.xAxis,r.series,r.yAxes,r.chartType]),[Z,F]=useState(false);useEffect(()=>{let C=setTimeout(()=>{F(true);},1700);return ()=>clearTimeout(C)},[]);let W=useCallback((C,I)=>{if(I&&I.length>0){let T=I[0].payload[r.xAxis.key],A=_t(T,r.xAxis.format,r.xAxis.type);return jsxs("div",{className:"flex flex-col",children:[jsx("span",{children:r.xAxis.label}),jsx("span",{className:"font-mono tabular-nums",children:A})]})}return C},[r.xAxis.key,r.xAxis.format,r.xAxis.type,r.xAxis.label]),Ut=useCallback(C=>jsx(Ln,{...C,formatter:V,labelFormatter:W}),[V,W]),Oe=useCallback(C=>jsx(jn,{...C}),[]),Nt=useMemo(()=>{let C=H.length,I=C>30?8:C>20?12:C>10?16:20,T=0;for(let xe of H){let Y=_t(xe[r.xAxis.key],r.xAxis.format,r.xAxis.type),An=typeof Y=="string"?Y:String(Y??"");T=Math.max(T,Math.min(An.length,I));}let A=T*7*C>500,K=A?Math.min(Math.max(40,T*5.5+20),140):50;return {maxLabelLen:I,shouldAngle:A,height:K}},[H,r.xAxis.key,r.xAxis.format,r.xAxis.type]),ot=useMemo(()=>!!(i||(n?.length||0)>100||Z),[i,n?.length,Z]);return jsxs("div",{className:m||"w-full items-center mt-0 flex flex-col gap-0",children:[(t||u)&&jsxs("div",{className:"w-full items-center mb-2 relative",children:[t&&jsx("h2",{className:"text-center text-base pt-0 mt-0 mb-2",children:t}),u&&jsx("button",{onClick:U,disabled:_,className:f||"text-sm text-gray-500 hover:text-gray-700 disabled:opacity-50 h-8 absolute right-0 top-[-5px] px-2 py-1 border rounded hover:bg-gray-50",title:"Download chart as PNG",children:jsx(Download,{className:"w-4 h-4"})})]}),e&&jsx("p",{className:"text-center text-sm text-muted-foreground mb-2",children:e}),jsx(Se,{ref:N,config:o,className:g||"w-full",debounceResize:true,children:jsxs(s,{accessibilityLayer:true,data:H,isAnimationActive:!ot,onMouseDown:y.onZoomStart,onMouseMove:y.onZoomMove,onMouseUp:y.onZoomEnd,onDoubleClick:y.onResetZoom,style:{userSelect:"none",cursor:"crosshair"},children:[jsx(CartesianGrid,{vertical:false}),jsx(XAxis,{dataKey:r.xAxis.key,domain:Rn||D.x,type:r.xAxis.type==="date"||!r.xAxis.type?"number":r.xAxis.type,tickFormatter:C=>{let I=_t(C,r.xAxis.format,r.xAxis.type),T=typeof I=="string"?I:String(I??"");return T.length>Nt.maxLabelLen?T.slice(0,Nt.maxLabelLen)+"\u2026":T},tickLine:false,tickMargin:10,height:Nt.height,axisLine:false,allowDataOverflow:true,interval:"preserveStartEnd",ticks:G,...Nt.shouldAngle?{angle:-45,textAnchor:"end"}:{},children:jsx(Label,{value:r.xAxis.label,position:"bottom",offset:Nt.shouldAngle?-5:-10,style:{textAnchor:"middle"}})}),r.yAxes.map((C,I)=>jsx(YAxis,{yAxisId:I,orientation:I===0?"left":"right",domain:l?void 0:D.y[I],type:C.type==="date"||!C.type?"number":C.type,tickFormatter:T=>{let A=_t(T,C.format,C.type);return typeof A=="string"&&A.length>20?A.slice(0,20)+"...":A},allowDataOverflow:true,children:jsx(Label,{value:C.label,position:I===0?"insideLeft":"insideRight",angle:-90,dx:I===0?-15:15,style:{textAnchor:"middle"}})},`y-axis-${C.key}`)),jsx(Vn,{content:Ut}),jsx($n,{content:Oe,verticalAlign:"top"}),r.series.map(C=>jsx(a,{dataKey:C.key,yAxisId:C.axisIndex||0,fill:C.color||"blue",stroke:C.color||"blue",dot:{fill:C.color||"blue",stroke:C.color||"blue"},radius:4,name:C.name,isAnimationActive:!ot,animationDuration:1500,animationBegin:0,stackId:r.chartType==="bar"&&l?"stack":void 0},`${C.key}-${l?"stacked":"unstacked"}`)),b.refAreaLeft&&b.refAreaRight&&b.refAreaTop&&b.refAreaBottom&&jsx(ReferenceArea,{x1:b.refAreaLeft,x2:b.refAreaRight,y1:b.refAreaTop,y2:b.refAreaBottom,strokeOpacity:.2,stroke:"currentColor",fill:"currentColor",fillOpacity:.02,style:{pointerEvents:"none"}})]})}),x.x[0]!==null&&jsx("button",{onClick:y.onResetZoom,className:h||"text-sm text-gray-500 hover:text-gray-700 mt-2 px-3 py-1 border rounded hover:bg-gray-50",children:"Reset Zoom"})]})}function ut(t){return jsx(Et,{fallback:jsx("div",{className:t.errorClassName||"text-red-500",children:"Failed to load chart"}),children:jsx(Os,{...t})})}function Dt(t){return jsx(ut,{...t,ChartComponent:BarChart,PointComponent:Bar})}function zt(t){return jsx(ut,{...t,ChartComponent:LineChart,PointComponent:Line})}var Hs=(t,e,n)=>{let o=parseInt(t.slice(1,3),16)/255,r=parseInt(t.slice(3,5),16)/255,s=parseInt(t.slice(5,7),16)/255,a=Math.max(o,r,s),i=Math.min(o,r,s),c,l,u=(a+i)/2;if(a===i)c=l=0;else {let f=a-i;switch(l=u>.5?f/(2-a-i):f/(a+i),a){case o:c=(r-s)/f+(r<s?6:0);break;case r:c=(s-o)/f+2;break;case s:c=(o-r)/f+4;break;default:c=0;}c/=6;}let d=e/n,p=c*360+(d*40-20),m=Math.min(100,l*100+d*25),g=Math.max(35,Math.min(65,u*100-d*20));return `hsl(${p}, ${m}%, ${g}%)`};function Ks({title:t,subtitle:e,data:n,displayConfig:o,dataConfig:r,className:s,chartContainerClassName:a}){let i=r.series[0]?.color||"blue",c=r.yAxes[0]?.format,l=r.yAxes[0]?.type||"number",u=useMemo(()=>n.reduce((d,p)=>(r.series.forEach(m=>{let g=m.key,f=String(p[r.xAxis.key]||"Unknown"),h=parseFloat(p[g]||"0");isNaN(h)||d.push({name:f,value:h,seriesId:g,displayName:f});}),d),[]).sort((d,p)=>p.value-d.value),[n,r.series,r.xAxis.key]);return jsxs("div",{className:s||"items-center",children:[jsx("h2",{className:"text-center text-base mb-2",children:t}),e&&jsx("p",{className:"text-center text-sm text-muted-foreground mb-2",children:e}),jsx(Se,{config:o,className:a||"w-full border border-border/50 rounded-md",children:jsxs(PieChart,{width:400,height:400,children:[jsx(Pie,{data:u,dataKey:"value",nameKey:"displayName",cx:"50%",cy:"50%",outerRadius:150,label:d=>`${d.displayName}: ${et(d.value,c,l)}`,children:u.map((d,p)=>jsx(Cell,{fill:p===0?i:Hs(i,p,u.length)},`cell-${d.name}`))}),jsx(Tooltip,{formatter:(d,p)=>[et(d,c,l),p]}),jsx(Legend,{})]})})]})}function Ht(t){return jsx(Et,{fallback:jsx("div",{className:"text-red-500",children:"Failed to load chart"}),children:jsx(Ks,{...t})})}function Kt(t){return jsx(ut,{...t,ChartComponent:ScatterChart,PointComponent:Scatter})}var ea=t=>{let{cx:e,cy:n,payload:o,xAxis:r,yAxis:s}=t,a=o.value||o.z||0,c=`hsl(${240-Math.min(1,Math.max(0,a/100))*240}, 70%, 50%)`,l=r.scale.bandwidth?r.scale.bandwidth():20,u=s.scale.bandwidth?s.scale.bandwidth():20;return jsx("rect",{x:e-l/2,y:n-u/2,width:l,height:u,fill:c,fillOpacity:.8,stroke:"#fff",strokeWidth:1})},na=t=>jsx(Scatter,{...t,shape:ea});function Qt(t){return jsx(ut,{...t,ChartComponent:ScatterChart,PointComponent:na})}function Jr(t){return t.replace(/[A-Z]/g,e=>`_${e.toLowerCase()}`).replace(/^_/,"")}function Zt(t,e){if(!t.length)return e;let n=t[0];if(n[e]!==void 0)return e;let o=e.toLowerCase();if(n[o]!==void 0)return o;let r=Jr(e);if(n[r]!==void 0)return r;let s=e.toLowerCase().replace(/_/g,"");return Object.keys(n).find(i=>i.toLowerCase().replace(/_/g,"")===s)||e}function ua(){return ["yyyy-MM-dd","yyyyMMdd","yyyy-MM-dd'T'HH:mm:ss","yyyyMMddHHmmss"]}function da(t){if(!t)return null;if(typeof t=="string"){if(/^\d{4}-\d{2}-\d{2}$/.test(t)){let r=new Date(t+"T00:00:00.000Z");if(isValid(r))return r.getTime()}let o=ua();for(let r of o){let s=parse(t,r,new Date);if(isValid(s))return s.getTime()}}let e=new Date(t);return isValid(e)?e.getTime():null}function je(t,e,n,o){let r=e==="index"&&t[e]===void 0?o:t[e];return n==="date"?da(r):n==="number"?parseFloat(r):r}function pa(t,e,n){if(t===e.key)return e.type||"category";let o=n.find(r=>r.key===t);return o?o.type||"number":"category"}function Yt(t,e,n,o){return !o||o.length===0?t:[...t].sort((r,s)=>{for(let a of o){let i=pa(a.key,e,n),c=je(r,a.key,i,r.index),l=je(s,a.key,i,s.index);if(c===l)continue;let u=typeof c=="number"&&typeof l=="number"?c-l:c instanceof Date&&l instanceof Date?c.getTime()-l.getTime():String(c).localeCompare(String(l));return a.direction==="asc"?u:-u}return 0})}function Gr(t,e){let n=Math.ceil(t.length/e),o=[t[0]];for(let r=n;r<t.length-1;r+=n)o.push(t[r]);return o[o.length-1]!==t[t.length-1]&&o.push(t[t.length-1]),o}function ma(t,e,n,o,r,s,a){let i=t.reduce((u,d)=>{let p=d[e];return u[p]||(u[p]=[]),u[p].push(d),u},{}),c=Object.entries(i);if(c.length>o){let u=Math.ceil(c.length/o),d=c.reduce((p,[m,g],f)=>{let h=Math.floor(f/u);return p[h]||(p[h]={key:m,items:[]}),p[h].items.push(...g),p},[]).map(({key:p,items:m})=>({[e]:p,...n.reduce((g,f)=>{let h=m.map(b=>parseFloat(b[f.key])).filter(b=>!isNaN(b));return g[f.key]=h.length?h.reduce((b,x)=>b+x,0)/h.length:null,g},{})}));return a&&a.length>0?Yt(d,r,s,a):d}let l=c.map(([u,d])=>{let p=n.reduce((g,f)=>{let h=d.map(b=>parseFloat(b[f.key])).filter(b=>!isNaN(b));return g[f.key]=h.length?h.reduce((b,x)=>b+x,0)/h.length:null,g},{}),m=Object.values(p).filter(g=>g!==null).reduce((g,f)=>g+f,0);return {[e]:u,...p,index:m}});return a&&a.length>0?Yt(l,r,s,a):l}function fa(t,e,n,o){let r=t.map(l=>parseFloat(l[e])).filter(l=>!isNaN(l)),s=Math.min(...r),i=(Math.max(...r)-s)/o,c=Array.from({length:o},(l,u)=>({binStart:s+u*i,binEnd:s+(u+1)*i,count:0,seriesValues:n.reduce((d,p)=>(d[p.key]=[],d),{})}));return t.forEach(l=>{let u=parseFloat(l[e]);if(isNaN(u))return;let d=Math.min(Math.floor((u-s)/i),o-1);c[d].count++,n.forEach(p=>{let m=parseFloat(l[p.key]);isNaN(m)||c[d].seriesValues[p.key].push(m);});}),c.map(l=>({[e]:(l.binStart+l.binEnd)/2,...n.reduce((u,d)=>{let p=l.seriesValues[d.key];return u[d.key]=p.length?p.reduce((m,g)=>m+g,0)/p.length:null,u},{}),count:l.count,index:n.reduce((u,d)=>{let p=l.seriesValues[d.key],m=p.length?p.reduce((g,f)=>g+f,0)/p.length:0;return u+m},0)})).filter(l=>n.some(u=>l[u.key]!==null))}function Wr(t,e,n,o,r){let s=t.map((m,g)=>{let f=je(m,e,r.type||"number",g);return typeof f=="number"?f:parseFloat(f)}).filter(m=>!isNaN(m)),a=Math.min(...s),l=(Math.max(...s)-a)/o,u=Array.from({length:o},(m,g)=>({binStart:Number((a+g*l).toFixed(2)),binEnd:Number((a+(g+1)*l).toFixed(2)),frequency:0,[e]:Number((a+(g+.5)*l).toFixed(2))}));s.forEach(m=>{let g=Math.min(Math.floor((m-a)/l),o-1);u[g].frequency++;});let d=u.filter(m=>m.frequency>0);return (u.length-d.length)/u.length*100>30?Wr(t,e,n,Math.floor(o/2),r):d}function ga(t,e,n,o){return !e||e.length===0?t:t.filter(r=>e.every(s=>{let a=s.key;n&&s.key.toLowerCase()===n.toLowerCase()?a=n:o&&s.key.toLowerCase()===o.toLowerCase()&&(a=o);let i=r[a],c=Array.isArray(s.value)?s.value:[s.value];switch(s.operator){case "equals":return c.some(l=>String(i)===String(l));case "not_equals":return c.every(l=>String(i)!==String(l));case "greater_than":return parseFloat(String(i))>parseFloat(String(c[0]));case "less_than":return parseFloat(String(i))<parseFloat(String(c[0]));case "contains":return String(i).toLowerCase().includes(String(c[0]).toLowerCase());case "between":if(c.length===2){let l=parseFloat(String(i)),u=parseFloat(String(c[0])),d=parseFloat(String(c[1]));return l>=u&&l<=d}return true;default:return true}}))}var Ue=kt__default.memo(function({chartType:e,title:n,invocationId:o,datasetSlugs:r,xAxis:s,yAxes:a,series:i,dataReduction:c={strategy:"none",target_points:1e3},stacked:l,sort:u,onScrollUpdate:d,enableDownload:p=true,className:m,chartContainerClassName:g}){let f=useMemo(()=>i.map(w=>({datasetSlug:w.datasetSlug,sqlQuery:w.sqlQuery,resourceKey:w.resourceKey,filters:!w.sqlQuery&&w.filters?.length?w.filters:void 0})),[i]),h=be(f,o),b=h.some(w=>w.isLoading),x=useDeepCompareMemo(()=>h.map(w=>w.data||[]),[h.map(w=>w.data)]),{resolvedXAxisKey:y,resolvedSeriesKeys:k}=useMemo(()=>{let w=x.find(D=>D.length>0)||[];return {resolvedXAxisKey:Zt(w,s.key),resolvedSeriesKeys:i.map((D,V)=>({...D,resolvedKey:Zt(x[V]||[],D.key)}))}},[x,s.key,i]),S=useMemo(()=>{let w=new Map;i.forEach((V,Z)=>{let F=x[Z]||[],W=k[Z]?.resolvedKey||V.key;(V.filters?ga(F,V.filters,W,y):F).forEach((Oe,Nt)=>{let ot=je(Oe,y,s.type||"category",Nt);if(ot==null||s.type==="number"&&isNaN(ot))return;let C=s.type==="number"||s.type==="date"||typeof ot=="object"?ot.toString():String(ot);w.has(C)||w.set(C,{[s.key]:ot});let I=`series_${Z}_${V.key}`,T=Oe[W];w.get(C)[I]=T;});});let D=Array.from(w.values());return u&&u.length>0?D:s.type==="date"?D.sort((V,Z)=>V[s.key]-Z[s.key]):s.type==="number"?D.sort((V,Z)=>{let F=parseFloat(V[s.key]),W=parseFloat(Z[s.key]);return isNaN(F)||isNaN(W)?0:F-W}):D},[x,i,k,y,s,u]),_=useMemo(()=>i.map((w,D)=>({...w,key:`series_${D}_${w.key}`})),[i]),v=useMemo(()=>({[s.key]:{label:s.label,format:s.format,type:s.type},..._.reduce((w,D)=>(w[D.key]={label:D.name,color:D.color},w),{}),...e==="histogram"?{frequency:{label:a[0]?.label||"Frequency",color:_[0]?.color||"#2563eb"}}:{}}),[s,_,e,a]),N=useMemo(()=>!s.key||!_.length?null:{chartType:e,xAxis:s,yAxes:e==="histogram"?a.map(w=>({...w,key:"frequency",minValue:w.minValue||"0"})):a,series:e==="histogram"?[{key:"frequency",name:a[0]?.label||"Frequency",color:i[0]?.color||"#2563eb"}]:_},[s,a,i,_,e]),U=null;switch(e){case "bar":U=Dt;break;case "line":U=zt;break;case "pie":U=Ht;break;case "scatter":U=Kt;break;case "histogram":U=Dt;break;case "heatmap":U=Qt;break}let tt=useRef(false);useEffect(()=>{tt.current||!d||!b&&v&&N&&S.length&&(d(),setTimeout(()=>d(),250),tt.current=true);},[d,b,v,N,S.length]);let[O,H]=useState({x:[null,null],y:[null,null]}),{processedData:G,dataReductionInfo:Rn}=useMemo(()=>{if(b||!S.length)return {processedData:[],dataReductionInfo:null};if(e==="histogram"){let F=c.target_points||20;return {processedData:Wr(S,y,_,F,s),dataReductionInfo:null}}let w=S;if((O.x[0]!==null||O.y[0]!==null)&&(w=S.filter(F=>{if(O.x[0]!==null&&O.x[1]!==null){let W=parseFloat(F[s.key]);if(isNaN(W)||W<O.x[0]||W>O.x[1])return false}if(O.y[0]!==null&&O.y[1]!==null)for(let W of _){let Ut=parseFloat(F[W.key]);if(!isNaN(Ut)&&(Ut<O.y[0]||Ut>O.y[1]))return false}return true})),c.strategy==="none"||!c.target_points||w.length<=c.target_points&&(!u||u.length===0)){let F=w;return u&&u.length>0&&(F=Yt(F,s,a,u)),{processedData:F,dataReductionInfo:null}}let D,V="";switch(c.strategy){case "sample":D=Gr(w,c.target_points),V="sampled",u&&u.length>0&&(D=Yt(D,s,a,u));break;case "aggregate":D=ma(w,y,_,c.target_points,s,a,u),V="aggregated";break;case "bin":D=fa(w,y,_,c.target_points),V="binning",u&&u.length>0&&(D=Yt(D,s,a,u));break;default:w.length<1e3?D=w:(D=Gr(w,c.target_points),V="sampled"),u&&u.length>0&&(D=Yt(D,s,a,u));}let Z=null;return w.length!==D.length&&(Z=`${V} ${w.length.toLocaleString()} \u2192 ${D.length.toLocaleString()} points`),{processedData:D,dataReductionInfo:Z}},[S,c,e,b,O.x,O.y,_,u,s,a,y]);return U?b?jsx("div",{children:"Loading..."}):S.length?N?jsx(U,{data:G,displayConfig:v,stacked:l,dataConfig:N,title:n,subtitle:Rn||void 0,disableAnimation:G.length>100,onZoomChange:H,enableDownload:p,className:m,chartContainerClassName:g}):jsx("div",{children:"Invalid chart configuration"}):jsx("div",{children:"Unable to display chart - no data available"}):(console.error("No chart component found"),null)},(t,e)=>ra(t,e));function Fe({title:t,invocationId:e,datasetSlug:n,sqlQuery:o,resourceKey:r,columns:s,maxRows:a=100,className:i,tableWrapperClassName:c,headerClassName:l,loadingClassName:u,emptyClassName:d,onScrollUpdate:p}){let{data:m,isLoading:g}=Gt(n,e,o,r),f=useMemo(()=>s?m?.length?s.map(x=>{let y=Zt(m,x.key);return {key:x.key,name:x.name,resolvedKey:y,format:x.format,value_type:x.value_type}}):[]:m?.length?Object.keys(m[0]).map(x=>({key:x,name:x,resolvedKey:x,format:void 0,value_type:void 0})):[],[s,m]),h=useMemo(()=>!m||m.length===0?[]:a?m.slice(0,a):m,[m,a]),b=useRef(false);return useEffect(()=>{b.current||!p||!g&&m?.length&&(p(),setTimeout(()=>p(),250),b.current=true);},[p,g,m?.length]),g?jsx("div",{className:u||"text-gray-500",children:"Loading..."}):m?.length?f.length===0?jsx("div",{className:d||"text-gray-500",children:"No columns defined"}):jsxs("div",{className:i||"w-full",children:[t&&jsx("h3",{className:"text-lg font-medium mb-3",children:t}),jsx("div",{className:c||"relative w-full overflow-x-auto rounded-lg border border-border/50",children:jsxs("table",{className:"w-full caption-bottom text-sm",children:[jsx("thead",{className:"[&_tr]:border-b",children:jsx("tr",{className:l||"border-b transition-colors",children:f.map(x=>jsx("th",{className:"h-10 px-3 text-left align-middle font-medium text-muted-foreground",children:x.name},x.key))})}),jsx("tbody",{className:"[&_tr:last-child]:border-0",children:h.map((x,y)=>jsx("tr",{className:`border-b transition-colors hover:bg-muted/50 ${y%2===1?"bg-muted/30":""}`,children:f.map(k=>jsx("td",{className:"p-3 align-middle text-foreground",children:et(x[k.resolvedKey],k.format,k.value_type)},k.key))},y))})]})}),m.length>a&&jsxs("p",{className:"text-sm text-muted-foreground mt-2",children:["Showing ",a," of ",m.length," rows"]})]}):jsx("div",{className:d||"text-gray-500",children:"No data"})}function Je({output:t,ContentComponent:e}){let n=Q(),o=e??n?.ContentComponent,r=t?.contents;if(!t||!t.output||!r?.length)return null;let s=r.filter(a=>a.user_visibility==="visible");return s.length?jsx("div",{children:s.map(a=>o?jsx(o,{content:a},a.id):jsx("div",{className:"text-sm",children:typeof a.content=="string"?a.content:null},a.id))},t.output.id):null}function zr(t){return t!==null&&typeof t=="object"&&"Valid"in t&&"String"in t}function M(t){if(typeof t=="string")return t;if(zr(t))return t.Valid?t.String:void 0}function xa(t,e){return M(t)??e}var Hr={v:"5.10.2",fr:60,ip:0,op:180,w:144,h:144,nm:"system-solid-719-spinner-circle",ddd:0,assets:[{id:"comp_6",nm:"loop-snake-alt",fr:60,layers:[{ddd:0,ind:1,ty:0,nm:"mask-2",td:1,refId:"comp_7",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[72,72,0],ix:2,l:2},a:{a:0,k:[72,72,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,w:144,h:144,ip:0,op:1800,st:0,bm:0},{ddd:0,ind:2,ty:4,nm:"circle 2",tt:2,tp:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[72,72,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[-30.652,0],[0,30.652],[30.652,0],[0,-30.652]],o:[[30.652,0],[0,-30.652],[-30.652,0],[0,30.652]],v:[[0,55.5],[55.5,0],[0,-55.5],[-55.5,0]],c:true},ix:2},nm:"Path 1",mn:"ADBE Vector Shape - Group",hd:false},{ty:"st",c:{a:0,k:[.071,.075,.192,1],ix:3,x:`var $bm_rt;
|
|
8
8
|
$bm_rt = comp('system-solid-719-spinner-circle').layer('control').effect('primary')('Color');`},o:{a:0,k:100,ix:4},w:{a:0,k:9,ix:5},lc:2,lj:1,ml:4,bm:0,nm:".primary",mn:"ADBE Vector Graphic - Stroke",hd:false,cl:"primary"},{ty:"fl",c:{a:0,k:[.071,.075,.192,1],ix:4,x:`var $bm_rt;
|
|
9
9
|
$bm_rt = comp('system-solid-719-spinner-circle').layer('control').effect('primary')('Color');`},o:{a:0,k:100,ix:5},r:1,bm:0,nm:".primary",mn:"ADBE Vector Graphic - Fill",hd:false,cl:"primary"},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"Transform"}],nm:"circle",np:3,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:false}],ip:0,op:300,st:0,ct:1,bm:0}]},{id:"comp_7",nm:"mask-2",fr:60,layers:[{ddd:0,ind:1,ty:3,nm:"Null 1108",sr:1,ks:{o:{a:0,k:0,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[72,72,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[78.6,78.6,100],ix:6,l:2}},ao:0,ip:0,op:1800,st:0,bm:0},{ddd:0,ind:2,ty:4,nm:"mask",parent:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:1,k:[{i:{x:[.833],y:[.833]},o:{x:[.167],y:[.167]},t:0,s:[0]},{t:180,s:[-360]}],ix:10},p:{a:0,k:[0,0,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{d:1,ty:"el",s:{a:0,k:[111,111],ix:2},p:{a:0,k:[0,0],ix:3},nm:"Ellipse Path 1",mn:"ADBE Vector Shape - Ellipse",hd:false},{ty:"tm",s:{a:1,k:[{i:{x:[.33],y:[1]},o:{x:[.335],y:[0]},t:90,s:[99.9]},{t:157,s:[0]}],ix:1},e:{a:1,k:[{i:{x:[.33],y:[1]},o:{x:[.33],y:[0]},t:111,s:[100]},{t:180,s:[.1]}],ix:2},o:{a:0,k:0,ix:3},m:1,ix:2,nm:"Trim Paths 1",mn:"ADBE Vector Filter - Trim",hd:false},{ty:"st",c:{a:0,k:[.070588238537,.074509806931,.192156866193,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:11.3,ix:5},lc:2,lj:2,bm:0,nm:".primary",mn:"ADBE Vector Graphic - Stroke",hd:false,cl:"primary"},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"Transform"}],nm:"Ellipse 1",np:3,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:false}],ip:90,op:991,st:90,ct:1,bm:0},{ddd:0,ind:3,ty:4,nm:"mask",parent:2,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[0,0,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{d:1,ty:"el",s:{a:0,k:[111,111],ix:2},p:{a:0,k:[0,0],ix:3},nm:"Ellipse Path 1",mn:"ADBE Vector Shape - Ellipse",hd:false},{ty:"tm",s:{a:1,k:[{i:{x:[.33],y:[1]},o:{x:[.335],y:[0]},t:0,s:[99.9]},{t:67,s:[0]}],ix:1},e:{a:1,k:[{i:{x:[.33],y:[1]},o:{x:[.33],y:[0]},t:21,s:[100]},{t:90,s:[.1]}],ix:2},o:{a:0,k:0,ix:3},m:1,ix:2,nm:"Trim Paths 1",mn:"ADBE Vector Filter - Trim",hd:false},{ty:"st",c:{a:0,k:[.070588238537,.074509806931,.192156866193,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:11.3,ix:5},lc:2,lj:2,bm:0,nm:".primary",mn:"ADBE Vector Graphic - Stroke",hd:false,cl:"primary"},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"Transform"}],nm:"Ellipse 1",np:3,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:false}],ip:0,op:90,st:0,ct:1,bm:0}]},{id:"comp_9",nm:"mask-1",fr:60,layers:[{ddd:0,ind:1,ty:3,nm:"Null 1107",sr:1,ks:{o:{a:0,k:0,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[72,72,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[78.6,78.6,100],ix:6,l:2}},ao:0,ip:0,op:1800,st:0,bm:0},{ddd:0,ind:2,ty:4,nm:"mask",parent:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:1,k:[{i:{x:[.584],y:[.217]},o:{x:[.247],y:[0]},t:0,s:[0]},{i:{x:[.647],y:[.59]},o:{x:[.314],y:[.277]},t:9,s:[18.902]},{i:{x:[.649],y:[.675]},o:{x:[.315],y:[.302]},t:13,s:[36.82]},{i:{x:[.693],y:[1]},o:{x:[.208],y:[.228]},t:18,s:[63.991]},{t:240,s:[1080]}],ix:10},p:{a:0,k:[0,0,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:1,k:[{i:{x:.833,y:.833},o:{x:.26,y:0},t:168,s:[{i:[[-30.652,0],[-4.25,4.25],[30.652,0],[5.125,5.125]],o:[[30.652,0],[-4.25,4.25],[-30.652,0],[6,6.5]],v:[[0,55],[45,32.75],[0,55.5],[-45.25,32.5]],c:true}]},{i:{x:.833,y:.833},o:{x:.167,y:.167},t:186,s:[{i:[[-43.5,0],[4.456,-17.326],[30.652,0],[2.907,16.173]],o:[[38.5,0],[-2.411,15.677],[-30.652,0],[-5.064,-20.184]],v:[[0,39.201],[49.544,18.576],[0,55.5],[-49.686,18.434]],c:true}]},{i:{x:.05,y:1},o:{x:.167,y:.167},t:196,s:[{i:[[-50,0],[0,-29.209],[30.652,0],[1.285,24.253]],o:[[50.75,0],[-1.065,24.034],[-30.652,0],[0,-29.896]],v:[[0,14.948],[52.868,8.209],[0,55.5],[-52.931,8.146]],c:true}]},{t:240,s:[{i:[[-30.652,0],[0,-30.652],[30.652,0],[0,30.652]],o:[[30.652,0],[0,30.652],[-30.652,0],[0,-30.652]],v:[[0,-55.5],[55.5,0],[0,55.5],[-55.5,0]],c:true}]}],ix:2},nm:"Path 1",mn:"ADBE Vector Shape - Group",hd:false},{ty:"st",c:{a:0,k:[.070588238537,.074509806931,.192156866193,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:11.3,ix:5},lc:2,lj:2,bm:0,nm:".primary",mn:"ADBE Vector Graphic - Stroke",hd:false,cl:"primary"},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"Transform"}],nm:"Ellipse 1",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:false}],ip:168,op:350,st:120,ct:1,bm:0},{ddd:0,ind:3,ty:4,nm:"mask",parent:2,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[0,0,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{d:1,ty:"el",s:{a:0,k:[111,111],ix:2},p:{a:0,k:[0,0],ix:3},nm:"Ellipse Path 1",mn:"ADBE Vector Shape - Ellipse",hd:false},{ty:"tm",s:{a:1,k:[{i:{x:[.334],y:[1]},o:{x:[.333],y:[0]},t:0,s:[0]},{t:48,s:[35]}],ix:1},e:{a:1,k:[{i:{x:[.334],y:[1]},o:{x:[.333],y:[0]},t:0,s:[100]},{t:48,s:[65]}],ix:2},o:{a:0,k:0,ix:3},m:1,ix:2,nm:"Trim Paths 1",mn:"ADBE Vector Filter - Trim",hd:false},{ty:"st",c:{a:0,k:[.070588238537,.074509806931,.192156866193,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:11.3,ix:5},lc:2,lj:2,bm:0,nm:".primary",mn:"ADBE Vector Graphic - Stroke",hd:false,cl:"primary"},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"Transform"}],nm:"Ellipse 1",np:3,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:false}],ip:0,op:168,st:0,ct:1,bm:0}]},{id:"comp_11",nm:"mask-3",fr:60,layers:[{ddd:0,ind:1,ty:3,nm:"Null 1109",sr:1,ks:{o:{a:0,k:0,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[72,72,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[78.6,78.6,100],ix:6,l:2}},ao:0,ip:0,op:1800,st:0,bm:0},{ddd:0,ind:2,ty:4,nm:"mask",parent:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[0,0,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:1,k:[{i:{x:.833,y:.833},o:{x:.26,y:0},t:48,s:[{i:[[-30.652,0],[-4.25,4.25],[30.652,0],[5.125,5.125]],o:[[30.652,0],[-4.25,4.25],[-30.652,0],[6,6.5]],v:[[0,55],[45,32.75],[0,55.5],[-45.25,32.5]],c:true}]},{i:{x:.833,y:.833},o:{x:.167,y:.167},t:66,s:[{i:[[-43.5,0],[4.456,-17.326],[30.652,0],[2.907,16.173]],o:[[38.5,0],[-2.411,15.677],[-30.652,0],[-5.064,-20.184]],v:[[0,39.201],[49.544,18.576],[0,55.5],[-49.686,18.434]],c:true}]},{i:{x:.05,y:1},o:{x:.167,y:.167},t:76,s:[{i:[[-50,0],[0,-29.209],[30.652,0],[1.285,24.253]],o:[[50.75,0],[-1.065,24.034],[-30.652,0],[0,-29.896]],v:[[0,14.948],[52.868,8.209],[0,55.5],[-52.931,8.146]],c:true}]},{t:120,s:[{i:[[-30.652,0],[0,-30.652],[30.652,0],[0,30.652]],o:[[30.652,0],[0,30.652],[-30.652,0],[0,-30.652]],v:[[0,-55.5],[55.5,0],[0,55.5],[-55.5,0]],c:true}]}],ix:2},nm:"Path 1",mn:"ADBE Vector Shape - Group",hd:false},{ty:"st",c:{a:0,k:[.070588238537,.074509806931,.192156866193,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:11.3,ix:5},lc:2,lj:2,bm:0,nm:".primary",mn:"ADBE Vector Graphic - Stroke",hd:false,cl:"primary"},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"Transform"}],nm:"Ellipse 1",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:false}],ip:48,op:523,st:0,ct:1,bm:0},{ddd:0,ind:3,ty:4,nm:"mask",parent:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[0,0,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{d:1,ty:"el",s:{a:0,k:[111,111],ix:2},p:{a:0,k:[0,0],ix:3},nm:"Ellipse Path 1",mn:"ADBE Vector Shape - Ellipse",hd:false},{ty:"tm",s:{a:1,k:[{i:{x:[.334],y:[1]},o:{x:[.333],y:[0]},t:0,s:[0]},{t:48,s:[35]}],ix:1},e:{a:1,k:[{i:{x:[.334],y:[1]},o:{x:[.333],y:[0]},t:0,s:[100]},{t:48,s:[65]}],ix:2},o:{a:0,k:0,ix:3},m:1,ix:2,nm:"Trim Paths 1",mn:"ADBE Vector Filter - Trim",hd:false},{ty:"st",c:{a:0,k:[.070588238537,.074509806931,.192156866193,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:11.3,ix:5},lc:2,lj:2,bm:0,nm:".primary",mn:"ADBE Vector Graphic - Stroke",hd:false,cl:"primary"},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"Transform"}],nm:"Ellipse 1",np:3,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:false}],ip:0,op:49,st:0,ct:1,bm:0}]},{id:"comp_14",nm:"mask-4",fr:60,layers:[{ddd:0,ind:1,ty:3,nm:"Null 1110",sr:1,ks:{o:{a:0,k:0,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[72,72,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[78.6,78.6,100],ix:6,l:2}},ao:0,ip:0,op:1800,st:0,bm:0},{ddd:0,ind:2,ty:4,nm:"mask",parent:1,sr:1,ks:{o:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.167],y:[.167]},t:0,s:[0]},{t:90,s:[100]}],ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[0,0,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:1,k:[{i:{x:.833,y:.833},o:{x:.167,y:.167},t:0,s:[{i:[[-0.276,0],[0,-0.276],[.276,0],[0,.276]],o:[[.276,0],[0,.276],[-0.276,0],[0,-0.276]],v:[[0,-0.5],[.5,0],[0,.5],[-0.5,0]],c:true}]},{t:120,s:[{i:[[-30.154,0],[0,-30.154],[30.154,0],[0,30.154]],o:[[30.154,0],[0,30.154],[-30.154,0],[0,-30.154]],v:[[0,-54.598],[54.598,0],[0,54.598],[-54.598,0]],c:true}]}],ix:2},nm:"Path 1",mn:"ADBE Vector Shape - Group",hd:false},{ty:"tm",s:{a:0,k:0,ix:1},e:{a:0,k:100,ix:2},o:{a:0,k:0,ix:3},m:1,ix:2,nm:"Trim Paths 1",mn:"ADBE Vector Filter - Trim",hd:false},{ty:"st",c:{a:0,k:[.070588238537,.074509806931,.192156866193,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:11.3,ix:5},lc:2,lj:2,bm:0,nm:".primary",mn:"ADBE Vector Graphic - Stroke",hd:false,cl:"primary"},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"Transform"}],nm:"Ellipse 1",np:3,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:false}],ip:0,op:1800,st:0,ct:1,bm:0},{ddd:0,ind:3,ty:4,nm:"mask",parent:1,sr:1,ks:{o:{a:1,k:[{i:{x:[.161],y:[1]},o:{x:[.167],y:[.167]},t:0,s:[100]},{t:60,s:[0]}],ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[0,0,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:1,k:[{i:{x:.161,y:1},o:{x:.167,y:.167},t:0,s:[{i:[[-30.652,0],[0,-30.652],[30.652,0],[0,30.652]],o:[[30.652,0],[0,30.652],[-30.652,0],[0,-30.652]],v:[[0,-55.5],[55.5,0],[0,55.5],[-55.5,0]],c:true}]},{t:60,s:[{i:[[-37.003,0],[0,-37.003],[37.003,0],[0,37.003]],o:[[37.003,0],[0,37.003],[-37.003,0],[0,-37.003]],v:[[0,-67],[67,0],[0,67],[-67,0]],c:true}]}],ix:2},nm:"Path 1",mn:"ADBE Vector Shape - Group",hd:false},{ty:"tm",s:{a:0,k:0,ix:1},e:{a:0,k:100,ix:2},o:{a:0,k:0,ix:3},m:1,ix:2,nm:"Trim Paths 1",mn:"ADBE Vector Filter - Trim",hd:false},{ty:"st",c:{a:0,k:[.070588238537,.074509806931,.192156866193,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:11.3,ix:5},lc:2,lj:2,bm:0,nm:".primary",mn:"ADBE Vector Graphic - Stroke",hd:false,cl:"primary"},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"Transform"}],nm:"Ellipse 1",np:3,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:false}],ip:0,op:1800,st:0,ct:1,bm:0}]},{id:"comp_16",nm:"mask-5",fr:60,layers:[{ddd:0,ind:1,ty:3,nm:"Null 1111",sr:1,ks:{o:{a:0,k:0,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[72,72,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[78.6,78.6,100],ix:6,l:2}},ao:0,ip:0,op:1800,st:0,bm:0},{ddd:0,ind:2,ty:4,nm:"mask",parent:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[0,0,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:1,k:[{i:{x:0,y:.66},o:{x:.124,y:.088},t:20,s:[{i:[[-0.276,0],[0,-0.276],[.276,0],[0,.276]],o:[[.276,0],[0,.276],[-0.276,0],[0,-0.276]],v:[[0,-0.5],[.5,0],[0,.5],[-0.5,0]],c:true}]},{t:60,s:[{i:[[-30.154,0],[0,-30.154],[30.154,0],[0,30.154]],o:[[30.154,0],[0,30.154],[-30.154,0],[0,-30.154]],v:[[0,-54.598],[54.598,0],[0,54.598],[-54.598,0]],c:true}]}],ix:2},nm:"Path 1",mn:"ADBE Vector Shape - Group",hd:false},{ty:"tm",s:{a:0,k:0,ix:1},e:{a:0,k:100,ix:2},o:{a:0,k:0,ix:3},m:1,ix:2,nm:"Trim Paths 1",mn:"ADBE Vector Filter - Trim",hd:false},{ty:"st",c:{a:0,k:[.070588238537,.074509806931,.192156866193,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:11.3,ix:5},lc:2,lj:2,bm:0,nm:".primary",mn:"ADBE Vector Graphic - Stroke",hd:false,cl:"primary"},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"Transform"}],nm:"Ellipse 1",np:3,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:false}],ip:20,op:1800,st:0,ct:1,bm:0},{ddd:0,ind:3,ty:4,nm:"mask",parent:1,sr:1,ks:{o:{a:1,k:[{i:{x:[.833],y:[.833]},o:{x:[.333],y:[0]},t:0,s:[100]},{t:60,s:[0]}],ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[0,0,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:1,k:[{i:{x:.507,y:1},o:{x:.095,y:.321},t:0,s:[{i:[[-30.652,0],[0,-30.652],[30.652,0],[0,30.652]],o:[[30.652,0],[0,30.652],[-30.652,0],[0,-30.652]],v:[[0,-55.5],[55.5,0],[0,55.5],[-55.5,0]],c:true}]},{t:60,s:[{i:[[-37.003,0],[0,-37.003],[37.003,0],[0,37.003]],o:[[37.003,0],[0,37.003],[-37.003,0],[0,-37.003]],v:[[0,-67],[67,0],[0,67],[-67,0]],c:true}]}],ix:2},nm:"Path 1",mn:"ADBE Vector Shape - Group",hd:false},{ty:"tm",s:{a:0,k:0,ix:1},e:{a:0,k:100,ix:2},o:{a:0,k:0,ix:3},m:1,ix:2,nm:"Trim Paths 1",mn:"ADBE Vector Filter - Trim",hd:false},{ty:"st",c:{a:0,k:[.070588238537,.074509806931,.192156866193,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:11.3,ix:5},lc:2,lj:2,bm:0,nm:".primary",mn:"ADBE Vector Graphic - Stroke",hd:false,cl:"primary"},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"Transform"}],nm:"Ellipse 1",np:3,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:false}],ip:0,op:1800,st:0,ct:1,bm:0}]},{id:"comp_19",nm:"mask-6",fr:60,layers:[{ddd:0,ind:1,ty:3,nm:"Null 1112",sr:1,ks:{o:{a:0,k:0,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[72,72,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[78.6,78.6,100],ix:6,l:2}},ao:0,ip:0,op:1800,st:0,bm:0},{ddd:0,ind:2,ty:4,nm:"mask",parent:3,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[.514,-0.84,0],ix:2,l:2},a:{a:0,k:[.514,-6.24,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[-12.745,-9.902],[-2.377,-1.327],[-8.708,-0.155],[-4.427,1.116],[-5.211,16.683],[-0.162,4.273],[.683,3.57],[16.218,4.737],[3.846,.074],[4.596,-1.531],[-0.017,-17.15],[-13.185,-6.083],[-3.505,-0.454],[-6.139,3.186],[-3.046,5.293],[-0.309,4.673],[.703,2.893],[4.329,3.821],[5.306,.603],[4.422,-2.403],[2.136,-3.916],[-0.144,-3.846],[-3.333,-3.451],[-1.877,-0.92],[-3.188,.401],[-1.893,5.145],[.978,2.596],[2.775,.798],[1.781,-2.308],[-1.419,-1.448]],o:[[.965,16.115],[2.149,1.67],[7.626,4.259],[4.598,.082],[16.65,-4.196],[1.275,-4.083],[.138,-3.624],[-3.192,-16.68],[-3.724,-1.088],[-4.887,-0.094],[-16.161,5.384],[.287,14.428],[3.249,1.499],[6.853,.887],[5.491,-2.85],[2.336,-4.06],[.198,-3.003],[-1.376,-5.661],[-4.129,-3.645],[-5.084,-0.578],[-3.952,2.148],[-1.841,3.376],[.182,4.869],[1.49,1.543],[3.02,1.48],[5.353,-0.673],[1.032,-2.804],[-1.139,-3.025],[-2.704,-0.778],[-1.14,1.477],[0,0]],v:[[-55.765,-4.143],[-34.151,37.195],[-27.316,41.629],[-2.358,48.14],[11.243,46.45],[46.671,12.649],[48.717,.071],[47.804,-10.664],[15.642,-45.824],[4.204,-47.466],[-10.148,-45.15],[-37.914,-6.587],[-16.262,27.132],[-6.024,29.983],[13.888,26.321],[26.864,13.719],[30.785,.393],[29.933,-8.55],[21.059,-23.045],[6.42,-29.442],[-8.246,-26.497],[-17.475,-17.167],[-20.027,-5.992],[-14.434,7.02],[-9.293,10.7],[.313,12.253],[12.328,2.889],[12.294,-5.579],[5.835,-11.66],[-1.807,-9.436],[-1.903,-4.143]],c:false},ix:2},nm:"Path 3",mn:"ADBE Vector Shape - Group",hd:false},{ty:"tm",s:{a:0,k:0,ix:1},e:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.167],y:[.167]},t:39,s:[0]},{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:97.559,s:[100]},{i:{x:[.667],y:[1]},o:{x:[.298],y:[0]},t:117.559,s:[100]},{i:{x:[.802],y:[1]},o:{x:[.333],y:[0]},t:193.559,s:[45.895]},{t:228,s:[0]}],ix:2},o:{a:0,k:0,ix:3},m:1,ix:2,nm:"Trim Paths 1",mn:"ADBE Vector Filter - Trim",hd:false},{ty:"st",c:{a:0,k:[.070588238537,.074509806931,.192156866193,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:11.3,ix:5},lc:2,lj:1,ml:4,bm:0,nm:".primary",mn:"ADBE Vector Graphic - Stroke",hd:false,cl:"primary"},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"Transform"}],nm:"Ellipse 33",np:3,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:false}],ip:0,op:194,st:0,ct:1,bm:0},{ddd:0,ind:3,ty:4,nm:"mask",parent:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:1,k:[{i:{x:[.652],y:[.354]},o:{x:[.443],y:[.213]},t:0,s:[0]},{i:{x:[.526],y:[.666]},o:{x:[.231],y:[.231]},t:118,s:[-473.927]},{t:240,s:[-1384.503]}],ix:10},p:{a:0,k:[0,0,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:1,k:[{t:118.559,s:[{i:[[-30.652,0],[0,-30.652],[30.652,0],[0,30.652]],o:[[30.652,0],[0,30.652],[-30.652,0],[0,-30.652]],v:[[0,-55.5],[55.5,0],[0,55.5],[-55.5,0]],c:true}],h:1},{i:{x:.29,y:1},o:{x:.333,y:0},t:194,s:[{i:[[-26.752,3.759],[0,-30.652],[30.646,-1.513],[0,30.652]],o:[[21.768,-3.059],[0,30.652],[-30.615,1.511],[0,-12.422]],v:[[-2.911,-43.444],[49.68,1.935],[-0.898,54.175],[-55.863,-2.206]],c:true}]},{t:240,s:[{i:[[-30.652,0],[0,-30.652],[30.652,0],[0,30.652]],o:[[30.652,0],[0,30.652],[-30.652,0],[0,-30.652]],v:[[0,-55.5],[55.5,0],[0,55.5],[-55.5,0]],c:true}]}],ix:2},nm:"Path 1",mn:"ADBE Vector Shape - Group",hd:false},{ty:"tm",s:{a:1,k:[{t:0,s:[1.1],h:1},{i:{x:[.728],y:[1]},o:{x:[.28],y:[-0.325]},t:39,s:[0]},{i:{x:[.833],y:[.833]},o:{x:[.333],y:[0]},t:194,s:[0]},{t:240,s:[1.1]}],ix:1},e:{a:1,k:[{i:{x:[.833],y:[.833]},o:{x:[.333],y:[0]},t:0,s:[73.3]},{t:73.559,s:[0],h:1},{i:{x:[.833],y:[.833]},o:{x:[.333],y:[0]},t:194,s:[82.8]},{t:240,s:[73.3]}],ix:2},o:{a:1,k:[{i:{x:[.833],y:[.833]},o:{x:[.333],y:[0]},t:0,s:[91]},{t:39,s:[-89],h:1},{i:{x:[.833],y:[.833]},o:{x:[.333],y:[0]},t:194,s:[-382]},{t:240,s:[-319]}],ix:3},m:1,ix:2,nm:"Trim Paths 1",mn:"ADBE Vector Filter - Trim",hd:false},{ty:"st",c:{a:0,k:[.070588238537,.074509806931,.192156866193,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:11.3,ix:5},lc:2,lj:2,bm:0,nm:".primary",mn:"ADBE Vector Graphic - Stroke",hd:false,cl:"primary"},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"Transform"}],nm:"Ellipse 1",np:3,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:false}],ip:0,op:595,st:0,ct:1,bm:0}]}],layers:[{ddd:0,ind:1,ty:3,nm:"control",sr:1,ks:{o:{a:0,k:0,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[0,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,ef:[{ty:5,nm:"primary",np:3,mn:"ADBE Color Control",ix:1,en:1,ef:[{ty:2,nm:"Color",mn:"ADBE Color Control-0001",ix:1,v:{a:0,k:[.071,.075,.192],ix:1}}]}],ip:0,op:1751,st:0,bm:0},{ddd:0,ind:8,ty:0,nm:"loop-snake-alt",refId:"comp_6",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[72,72,0],ix:2,l:2},a:{a:0,k:[72,72,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,w:144,h:144,ip:0,op:190,st:0,bm:0}],markers:[{tm:0,cm:"default:loop-snake-alt",dr:180}]};var Kr={v:"5.12.1",fr:60,ip:0,op:59,w:500,h:500,nm:"system-solid-31-check",ddd:0,assets:[{id:"comp_1",nm:"hover-check",fr:60,layers:[{ddd:0,ind:1,ty:4,nm:".primary.design",cl:"primary design",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[250,250,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[2083,2083,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[.26,0],[.2,.19],[0,0],[-0.39,.39],[-0.39,-0.39],[0,0],[0,0],[-0.39,-0.39],[.39,-0.39],[0,0]],o:[[-0.26,0],[0,0],[-0.39,-0.39],[.39,-0.39],[0,0],[0,0],[.39,-0.39],[.39,.39],[0,0],[-0.2,.19]],v:[[-1.34,4],[-2.05,3.71],[-4.55,1.2],[-4.55,-0.21],[-3.14,-0.21],[-1.34,1.59],[3.47,-3.21],[4.88,-3.21],[4.88,-1.8],[-0.63,3.71]],c:true},ix:2},nm:"Path 1",mn:"ADBE Vector Shape - Group",hd:false},{ind:1,ty:"sh",ix:2,ks:{a:0,k:{i:[[5.41,0],[0,0],[-0.13,-5.51],[-5.41,0],[0,0],[.13,5.51]],o:[[0,0],[-5.51,.14],[.13,5.43],[0,0],[5.51,-0.14],[-0.13,-5.43]],v:[[0,-10],[-0.24,-10],[-10,.24],[0,10],[.24,10],[10,-0.24]],c:true},ix:2},nm:"Path 2",mn:"ADBE Vector Shape - Group",hd:false},{ty:"fl",c:{a:0,k:[.071,.075,.192,1],ix:4,x:`var $bm_rt;
|
|
10
10
|
$bm_rt = comp('system-solid-31-check').layer('control').effect('primary')('Color');`},o:{a:0,k:100,ix:5},r:1,bm:0,nm:".primary",mn:"ADBE Vector Graphic - Fill",hd:false,cl:"primary"},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"Transform"}],nm:"Group 1",np:3,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:false}],ip:60,op:305,st:60,ct:1,bm:0},{ddd:0,ind:2,ty:4,nm:".primary.design",cl:"primary design",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[250,250,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[2083,2083,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[.26,0],[.2,.19],[0,0],[-0.39,.39],[-0.39,-0.39],[0,0],[0,0],[-0.39,-0.39],[.39,-0.39],[0,0]],o:[[-0.26,0],[0,0],[-0.39,-0.39],[.39,-0.39],[0,0],[0,0],[.39,-0.39],[.39,.39],[0,0],[-0.2,.19]],v:[[-1.34,4],[-2.05,3.71],[-4.55,1.2],[-4.55,-0.21],[-3.14,-0.21],[-1.34,1.59],[3.47,-3.21],[4.88,-3.21],[4.88,-1.8],[-0.63,3.71]],c:true},ix:2},nm:"Path 1",mn:"ADBE Vector Shape - Group",hd:false},{ind:1,ty:"sh",ix:2,ks:{a:0,k:{i:[[5.41,0],[0,0],[-0.13,-5.51],[-5.41,0],[0,0],[.13,5.51]],o:[[0,0],[-5.51,.14],[.13,5.43],[0,0],[5.51,-0.14],[-0.13,-5.43]],v:[[0,-10],[-0.24,-10],[-10,.24],[0,10],[.24,10],[10,-0.24]],c:true},ix:2},nm:"Path 2",mn:"ADBE Vector Shape - Group",hd:false},{ty:"fl",c:{a:0,k:[.071,.075,.192,1],ix:4,x:`var $bm_rt;
|