@erdoai/ui 0.1.104 → 0.1.106

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/index.js CHANGED
@@ -1,12 +1,12 @@
1
- import*as xt from'react';import xt__default,{createContext,useMemo,useRef,useEffect,useState,memo,useCallback,useContext,useSyncExternalStore}from'react';import {jsx,jsxs,Fragment}from'react/jsx-runtime';import*as Jt from'recharts';import {Bar,BarChart,Line,LineChart,Scatter,ScatterChart,CartesianGrid,XAxis,Label,YAxis,ReferenceArea,PieChart,Pie,Cell,Tooltip,Legend}from'recharts';import {clsx}from'clsx';import {twMerge}from'tailwind-merge';import {format}from'd3-format';import {utcFormat}from'd3-time-format';import {isValid,parse}from'date-fns';import {useToPng}from'@hugocxl/react-to-image';import {Check,Copy,ChevronUp,ChevronDown,Download,ChevronRight,ExternalLink,ArrowUpRight,Loader2,AlertCircle,Search,Image,FileText,Presentation,FileSpreadsheet,File,Lightbulb,Zap,Brain,Code}from'lucide-react';import Xs from'lodash/isEqual';import {useDeepCompareMemo}from'use-deep-compare';import Ra from'react-markdown';import Aa from'remark-gfm';import {visit}from'unist-util-visit';import*as ce from'@radix-ui/react-collapsible';import {Prism}from'react-syntax-highlighter';import {oneDark,oneLight}from'react-syntax-highlighter/dist/cjs/styles/prism';import {createStore,useStore}from'zustand';var Rn=createContext(null);function Ir({children:t,config:e}){return jsx(Rn.Provider,{value:e,children:t})}function Ut(){let t=useContext(Rn);if(!t)throw new Error("useErdoConfig must be used within an ErdoProvider");return t}function Q(){return useContext(Rn)}var Nt=class extends xt__default.Component{constructor(e){super(e),this.state={hasError:false};}static getDerivedStateFromError(e){return {hasError:true}}componentDidCatch(e,n){console.error("ErrorBoundary caught an error:",e,n);}render(){return this.state.hasError?this.props.fallback:this.props.children}};function X(...t){return twMerge(clsx(t))}var xs={light:"",dark:".dark"},Nr=xt.createContext(null);function Tr(){let t=xt.useContext(Nr);if(!t)throw new Error("useChart must be used within a <ChartContainer />");return t}function xe({id:t,className:e,children:n,config:o,debounceResize:r=false,...s}){let a=xt.useId(),i=`chart-${t||a.replace(/:/g,"")}`;return jsx(Nr.Provider,{value:{config:o},children:jsxs("div",{"data-slot":"chart","data-chart":i,className:X("w-full [&_.recharts-cartesian-axis-tick_text]:fill-muted-foreground [&_.recharts-cartesian-grid_line[stroke='#ccc']]:stroke-border/50 [&_.recharts-curve.recharts-tooltip-cursor]:stroke-border [&_.recharts-polar-grid_[stroke='#ccc']]:stroke-border [&_.recharts-radial-bar-background-sector]:fill-muted [&_.recharts-rectangle.recharts-tooltip-cursor]:fill-muted [&_.recharts-reference-line_[stroke='#ccc']]:stroke-border flex aspect-video min-h-80 justify-center text-xs [&_.recharts-dot[stroke='#fff']]:stroke-transparent [&_.recharts-layer]:outline-hidden [&_.recharts-sector]:outline-hidden [&_.recharts-sector[stroke='#fff']]:stroke-transparent [&_.recharts-surface]:outline-hidden",e),...s,children:[jsx(Er,{id:i,config:o}),jsx(Jt.ResponsiveContainer,{debounce:r?200:0,children:n})]})})}var Er=({id:t,config:e})=>{let n=Object.entries(e).filter(([,o])=>o.theme||o.color);return n.length?jsx("style",{dangerouslySetInnerHTML:{__html:Object.entries(xs).map(([o,r])=>`
1
+ import*as kt from'react';import kt__default,{createContext,useMemo,useRef,useEffect,useState,memo,useCallback,useContext,useSyncExternalStore}from'react';import {jsx,jsxs,Fragment}from'react/jsx-runtime';import {useDeepCompareMemo}from'use-deep-compare';import {format}from'd3-format';import {utcFormat}from'd3-time-format';import {isValid,parse}from'date-fns';import*as qt from'recharts';import {Bar,BarChart,Line,LineChart,Scatter,ScatterChart,CartesianGrid,XAxis,Label,YAxis,ReferenceArea,PieChart,Pie,Cell,Tooltip,Legend}from'recharts';import {clsx}from'clsx';import {twMerge}from'tailwind-merge';import {useToPng}from'@hugocxl/react-to-image';import {Check,Copy,ChevronUp,ChevronDown,Download,ChevronRight,ExternalLink,ArrowUpRight,Loader2,AlertCircle,Search,Image,FileText,Presentation,FileSpreadsheet,File,Lightbulb,Zap,Brain,Code}from'lucide-react';import ra from'lodash/isEqual';import Oa from'react-markdown';import Ma from'remark-gfm';import {visit}from'unist-util-visit';import*as de from'@radix-ui/react-collapsible';import {Prism}from'react-syntax-highlighter';import {oneDark,oneLight}from'react-syntax-highlighter/dist/cjs/styles/prism';import {createStore,useStore}from'zustand';var Pn=createContext(null);function Tr({children:t,config:e}){return jsx(Pn.Provider,{value:e,children:t})}function Ft(){let t=useContext(Pn);if(!t)throw new Error("useErdoConfig must be used within an ErdoProvider");return t}function Q(){return useContext(Pn)}var gt=new Map;function On(t,e,n,o,r){let s=r?.length?JSON.stringify(r):"";return `${t}|${e}|${n??""}|${o??""}|${s}`}function Tt(t){let e=t.filters?.length?JSON.stringify(t.filters):"";return `${t.datasetSlug}::${t.sqlQuery||""}::${t.resourceKey||""}::${e}`}async function Ar(t,e,n,o,r,s){if(t.dataFetcher)return t.dataFetcher.fetchDatasetContents(e,n,o,r,s);let a={limit:1e3};o&&(a.query=o),r&&(a.resource_key=r),s?.length&&(a.filters=s);let i=`${t.baseUrl}/datasets/${encodeURIComponent(e)}/query`,c={"Content-Type":"application/json"},l=t.token||t.authToken;l&&(c.Authorization=`Bearer ${l}`);let u=await fetch(i,{method:"POST",headers:c,body:JSON.stringify(a)});if(!u.ok)throw new Error(`Failed to fetch dataset contents: ${u.statusText}`);let d=await u.json();return !d.Columns||!d.Rows||d.Columns.length===0?[]:d.Rows.map(p=>{let m={};return d.Columns.forEach((g,f)=>{m[g]=p[f];}),m})}function Gt(t,e,n,o){let r=Ft(),s=!!t&&!!e,a=On(t,e,n,o,void 0),i=s?gt.get(a):void 0,[c,l]=useState(i),[u,d]=useState(s&&!i),[p,m]=useState(null),[g,f]=useState(0),x=useDeepCompareMemo(()=>r,[r]);useEffect(()=>{if(!s){l(void 0),d(false),m(null);return}if(gt.has(a)&&g===0){l(gt.get(a)),d(false),m(null);return}let k=false;return d(true),m(null),Ar(x,t,e,n,o).then(y=>{k||(gt.set(a,y),l(y),d(false));}).catch(y=>{k||(m(y instanceof Error?y:new Error(String(y))),d(false));}),()=>{k=true;}},[x,t,e,n,o,s,g,a]);let b=useCallback(()=>f(k=>k+1),[]);return {data:c,isLoading:u,error:p,refetch:b}}function be(t,e){let n=Q(),[o,r]=useState(0),s=useCallback(()=>r(p=>p+1),[]),a=useMemo(()=>{let p=new Set;return t.filter(m=>{let g=Tt(m);return p.has(g)?false:(p.add(g),true)})},[t]),i=useMemo(()=>a.map(Tt).join("|"),[a]),c=useMemo(()=>a.map(p=>On(p.datasetSlug,e,p.sqlQuery,p.resourceKey,p.filters)),[a,e]),[l,u]=useState(()=>{if(!n||!e||a.length===0)return new Map;let p=new Map;return a.forEach((m,g)=>{let f=gt.get(c[g]);p.set(Tt(m),{data:f,isLoading:!f,error:null,refetch:s});}),p}),d=useDeepCompareMemo(()=>n,[n]);return useEffect(()=>{if(!d||!e||a.length===0){u(new Map);return}let p=a.filter((f,x)=>o>0?true:!gt.has(c[x]));if(p.length===0){let f=new Map;a.forEach((x,b)=>{f.set(Tt(x),{data:gt.get(c[b]),isLoading:false,error:null,refetch:s});}),u(f);return}let m=false,g=new Map;return a.forEach((f,x)=>{let b=gt.get(c[x]);g.set(Tt(f),{data:b,isLoading:!b,error:null,refetch:s});}),u(g),p.forEach(f=>{let x=Tt(f),b=On(f.datasetSlug,e,f.sqlQuery,f.resourceKey,f.filters);Ar(d,f.datasetSlug,e,f.sqlQuery,f.resourceKey,f.filters).then(k=>{m||(gt.set(b,k),u(y=>{let h=new Map(y);return h.set(x,{data:k,isLoading:false,error:null,refetch:s}),h}));}).catch(k=>{m||u(y=>{let h=new Map(y);return h.set(x,{data:void 0,isLoading:false,error:k instanceof Error?k:new Error(String(k)),refetch:s}),h});});}),()=>{m=true;}},[d,i,e,o,c.join(","),s]),t.map(p=>{let m=Tt(p);return l.get(m)||{data:void 0,isLoading:!(!d||!e),error:null,refetch:s}})}function Pr(t,e,n,o){let r=t.map(s=>({datasetSlug:s,sqlQuery:n?.[s],resourceKey:o?.[s]}));return be(r,e)}function et(t,e,n){if(t==null)return "";if(n==="date"){let o=Br(t);if(o&&e)try{let r=e;e==="%Y%m%d"?r="%Y-%m-%d":e==="%d%m%Y"?r="%d-%m-%Y":e==="%m%d%Y"&&(r="%m-%d-%Y");let s=r.match(/%./g)||[],a="aAbBcdejHILmMpSUwWxXyYZ%";return s.some(l=>{let u=l.charAt(1);return !a.includes(u)})||s.length===0?(console.warn(`Invalid date format directives in: ${e}. Using default format.`),o.toISOString().split("T")[0]):utcFormat(r)(o)}catch(r){return console.warn(`Invalid date format: ${e}. Error: ${r}. Falling back to default.`),o.toISOString().split("T")[0]}if(o){let r=o.toISOString();return r.endsWith("T00:00:00.000Z")?r.split("T")[0]:o.toISOString().replace("T"," ").replace(".000Z"," UTC")}return String(t)}if(n==="number"){let o=typeof t=="string"?parseFloat(t.replace(/,/g,"")):t;if(isNaN(o))return String(t);let r=e;if(e&&(r=e.replace(/(\.\d+)f%/,"$1%")),!r)return Math.abs(o)>=1e3?format(",.0f")(o):Math.abs(o)>=100?format(".1f")(o):Math.abs(o)>=10?format(".2f")(o):Math.abs(o)>=1?format(".3f")(o):format(".3g")(o);if(r.includes("%"))return o>=0&&o<=1?format(r)(o):format(r)(o/100);try{return format(r)(o)}catch(s){return console.warn(`Error formatting number with format '${r}': ${s}. Falling back to default.`),Math.abs(o)>=1e3?format(",.0f")(o):Math.abs(o)>=1?format(".2f")(o):format(".3g")(o)}}return String(t)}function Br(t){if(!t)return null;if(t instanceof Date)return isValid(t)?t:null;if(typeof t=="number"){let n=new Date(t);return isValid(n)?n: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}let o=["yyyy-MM-dd","yyyyMMdd","yyyy-MM-dd'T'HH:mm:ss","yyyyMMddHHmmss","MM/dd/yyyy","dd/MM/yyyy"];for(let r of o){let s=parse(t,r,new Date);if(isValid(s))return s}}let e=new Date(t);return isValid(e)?e:null}function Or({label:t,datasetSlug:e,invocationId:n,sqlQuery:o,valueKey:r,resourceKey:s,format:a,prefix:i="",suffix:c="",description:l,className:u}){let{data:d,isLoading:p,error:m}=Gt(e,n,o,s),g=useMemo(()=>{if(!d||d.length===0)return null;let f=d[0]?.[r];if(f==null)return null;if(a)return et(f,a);let x=Number(f);return isNaN(x)?String(f):x.toLocaleString()},[d,r,a]);return p?jsx("div",{className:u,children:jsxs("div",{className:"animate-pulse",children:[jsx("div",{className:"h-3 w-20 bg-muted rounded mb-2"}),jsx("div",{className:"h-8 w-32 bg-muted rounded"})]})}):m?jsxs("div",{className:u,children:[jsx("p",{className:"text-xs font-medium uppercase tracking-wider text-muted-foreground",children:t}),jsx("p",{className:"text-sm text-destructive mt-1",children:"Error loading metric"})]}):g===null?jsxs("div",{className:u,children:[jsx("p",{className:"text-xs font-medium uppercase tracking-wider text-muted-foreground",children:t}),jsx("p",{className:"text-2xl font-bold text-muted-foreground",children:"\u2014"})]}):jsxs("div",{className:u,children:[jsx("p",{className:"text-xs font-medium uppercase tracking-wider text-muted-foreground",children:t}),jsxs("p",{className:"text-2xl font-bold text-foreground mt-1",children:[i,g,c]}),l&&jsx("p",{className:"text-xs text-muted-foreground mt-1",children:l})]})}var Et=class extends kt__default.Component{constructor(e){super(e),this.state={hasError:false};}static getDerivedStateFromError(e){return {hasError:true}}componentDidCatch(e,n){console.error("ErrorBoundary caught an error:",e,n);}render(){return this.state.hasError?this.props.fallback:this.props.children}};function X(...t){return twMerge(clsx(t))}var vs={light:"",dark:".dark"},Mr=kt.createContext(null);function Vr(){let t=kt.useContext(Mr);if(!t)throw new Error("useChart must be used within a <ChartContainer />");return t}function Se({id:t,className:e,children:n,config:o,debounceResize:r=false,...s}){let a=kt.useId(),i=`chart-${t||a.replace(/:/g,"")}`;return jsx(Mr.Provider,{value:{config:o},children:jsxs("div",{"data-slot":"chart","data-chart":i,className:X("w-full [&_.recharts-cartesian-axis-tick_text]:fill-muted-foreground [&_.recharts-cartesian-grid_line[stroke='#ccc']]:stroke-border/50 [&_.recharts-curve.recharts-tooltip-cursor]:stroke-border [&_.recharts-polar-grid_[stroke='#ccc']]:stroke-border [&_.recharts-radial-bar-background-sector]:fill-muted [&_.recharts-rectangle.recharts-tooltip-cursor]:fill-muted [&_.recharts-reference-line_[stroke='#ccc']]:stroke-border flex aspect-video min-h-80 justify-center text-xs [&_.recharts-dot[stroke='#fff']]:stroke-transparent [&_.recharts-layer]:outline-hidden [&_.recharts-sector]:outline-hidden [&_.recharts-sector[stroke='#fff']]:stroke-transparent [&_.recharts-surface]:outline-hidden",e),...s,children:[jsx(Lr,{id:i,config:o}),jsx(qt.ResponsiveContainer,{debounce:r?200:0,children:n})]})})}var Lr=({id:t,config:e})=>{let n=Object.entries(e).filter(([,o])=>o.theme||o.color);return n.length?jsx("style",{dangerouslySetInnerHTML:{__html:Object.entries(vs).map(([o,r])=>`
2
2
  ${r} [data-chart=${t}] {
3
3
  ${n.map(([s,a])=>{let i=a.theme?.[o]||a.color;return i?` --color-${s}: ${i};`:null}).join(`
4
4
  `)}
5
5
  }
6
6
  `).join(`
7
- `)}}):null},Pn=Jt.Tooltip;function Bn({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:p,labelKey:d}){let{config:m}=Tr(),g=xt.useMemo(()=>{if(r||!e?.length)return null;let[x]=e,b=`${d||x?.dataKey||x?.name||"value"}`,k=An(m,x,b),y=!d&&typeof a=="string"?m[a]?.label||a:k?.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,d]);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((x,b)=>{let k=`${p||x.name||x.dataKey||"value"}`,y=An(m,x,k),h=u||x.payload.fill||x.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&&x?.value!==void 0&&x.name?l(x.value,x.name,x,b,x.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":h,"--color-border":h}}),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||x.name})]}),x.value&&jsx("span",{className:"text-foreground font-mono font-medium tabular-nums",children:x.value.toLocaleString()})]})]})},x.dataKey)})})]})}var On=Jt.Legend;function Mn({className:t,hideIcon:e=false,payload:n,verticalAlign:o="bottom",nameKey:r}){let{config:s}=Tr();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=An(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 An(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 ct(t,e,n){if(t==null)return "";if(n==="date"){let o=Dr(t);if(o&&e)try{let r=e;e==="%Y%m%d"?r="%Y-%m-%d":e==="%d%m%Y"?r="%d-%m-%Y":e==="%m%d%Y"&&(r="%m-%d-%Y");let s=r.match(/%./g)||[],a="aAbBcdejHILmMpSUwWxXyYZ%";return s.some(l=>{let u=l.charAt(1);return !a.includes(u)})||s.length===0?(console.warn(`Invalid date format directives in: ${e}. Using default format.`),o.toISOString().split("T")[0]):utcFormat(r)(o)}catch(r){return console.warn(`Invalid date format: ${e}. Error: ${r}. Falling back to default.`),o.toISOString().split("T")[0]}if(o){let r=o.toISOString();return r.endsWith("T00:00:00.000Z")?r.split("T")[0]:o.toISOString().replace("T"," ").replace(".000Z"," UTC")}return String(t)}if(n==="number"){let o=typeof t=="string"?parseFloat(t.replace(/,/g,"")):t;if(isNaN(o))return String(t);let r=e;if(e&&(r=e.replace(/(\.\d+)f%/,"$1%")),!r)return Math.abs(o)>=1e3?format(",.0f")(o):Math.abs(o)>=100?format(".1f")(o):Math.abs(o)>=10?format(".2f")(o):Math.abs(o)>=1?format(".3f")(o):format(".3g")(o);if(r.includes("%"))return o>=0&&o<=1?format(r)(o):format(r)(o/100);try{return format(r)(o)}catch(s){return console.warn(`Error formatting number with format '${r}': ${s}. Falling back to default.`),Math.abs(o)>=1e3?format(",.0f")(o):Math.abs(o)>=1?format(".2f")(o):format(".3g")(o)}}return String(t)}function Dr(t){if(!t)return null;if(t instanceof Date)return isValid(t)?t:null;if(typeof t=="number"){let n=new Date(t);return isValid(n)?n: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}let o=["yyyy-MM-dd","yyyyMMdd","yyyy-MM-dd'T'HH:mm:ss","yyyyMMddHHmmss","MM/dd/yyyy","dd/MM/yyyy"];for(let r of o){let s=parse(t,r,new Date);if(isValid(s))return s}}let e=new Date(t);return isValid(e)?e:null}function Be({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(p=>({...p,refAreaLeft:u.xValue,refAreaTop:u.yValue,zooming:true}));},[]),a=useCallback(u=>{!u?.xValue||!u?.yValue||!e.zooming||n(p=>({...p,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,p]=[Math.min(e.refAreaLeft,e.refAreaRight),Math.max(e.refAreaLeft,e.refAreaRight)],[d,m]=[Math.min(e.refAreaTop,e.refAreaBottom),Math.max(e.refAreaTop,e.refAreaBottom)],g={x:[u,p],y:[d,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 Pr(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 Ct(t,e,n){return ct(t,e,n)}function Rs({title:t,subtitle:e,data:n,displayConfig:o,dataConfig:r,ChartComponent:s,PointComponent:a,disableAnimation:i,onZoomChange:c,stacked:l,enableDownload:u=true,onDownloadSuccess:p,onDownloadError:d,className:m,chartContainerClassName:g,downloadButtonClassName:f,resetZoomButtonClassName:x}){let{zoomState:b,customDomain:k,handlers:y}=Be({onZoomChange:c}),h=useCallback(C=>{let N=`${(t||"chart").toLowerCase().replace(/\s+/g,"-")}.png`,D=document.createElement("a");D.download=N,D.href=C,D.click(),p?.(N);},[t,p]),S=useCallback(C=>{console.error("Error converting chart to image:",C),d?.(C);},[d]),[{isLoading:_},v,I]=useToPng({onSuccess:h,onError:S}),U=useCallback(async()=>{v();},[v]),tt=useMemo(()=>Pr(r.xAxis),[r.xAxis]),O=useMemo(()=>r.yAxes.map(C=>Pr(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.filter(C=>!isNaN(C[r.xAxis.key])):r.xAxis.type==="date"?n.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(D=>Number(D[r.xAxis.key])).filter(D=>!isNaN(D)),N=[...new Set(C)].sort((D,A)=>D-A);if(!(r.chartType==="scatter"||N.length>20))return N},[H,r.xAxis.key,r.xAxis.type,r.chartType]),En=useMemo(()=>{if(!G||G.length<2)return;let N=(G[G.length-1]-G[0])*.05;return [G[0]-N,G[G.length-1]+N]},[G]),w=useCallback((C,N)=>{if(!C?.length)return {min:null,max:null};let D=C.map(A=>Number(A[N])).filter(A=>!isNaN(A));return {min:Math.min(...D),max:Math.max(...D)}},[]),E=useMemo(()=>({x:k.x[0]!==null&&k.x[1]!==null?[k.x[0],k.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,N)=>{if(k.y[0]!==null&&k.y[1]!==null)return [k.y[0],k.y[1]];let A=r.series.filter(K=>(K.axisIndex||0)===N).reduce((K,ye)=>{let Y=w(H,ye.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[N].min??A.min??"auto",O[N].max??A.max??"auto"]}return [O[N].min??A.min??"auto",O[N].max??A.max??"auto"]})}),[k.x,k.y,tt,O,r.series,r.yAxes,r.xAxis.key,H,w]),V=useCallback((C,N,D)=>{if(D.dataKey===r.xAxis.key)return Ct(C,r.xAxis.format,r.xAxis.type);let A=r.series.find(he=>he.key===D.dataKey),K=A?.name||String(N).replace(/^dataset_\d+_/,"");if(r.chartType==="histogram"){let he=D.payload;if(he.binStart!==void 0){let ds=Ct(he.binStart,r.xAxis.format,r.xAxis.type),ps=Ct(he.binEnd,r.xAxis.format,r.xAxis.type);return `Count: ${C} (${ds} - ${ps})`}}let ye=A?.axisIndex||0,Y=r.yAxes[ye],Dn=Ct(C,Y?.format,Y?.type);return `${K}: ${Dn}`},[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,N)=>{if(N&&N.length>0){let D=N[0].payload[r.xAxis.key],A=Ct(D,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]),jt=useCallback(C=>jsx(Bn,{...C,formatter:V,labelFormatter:W}),[V,W]),Ae=useCallback(C=>jsx(Mn,{...C}),[]),It=useMemo(()=>{let C=H.length,N=C>30?8:C>20?12:C>10?16:20,D=0;for(let ye of H){let Y=Ct(ye[r.xAxis.key],r.xAxis.format,r.xAxis.type),Dn=typeof Y=="string"?Y:String(Y??"");D=Math.max(D,Math.min(Dn.length,N));}let A=D*7*C>500,K=A?Math.min(Math.max(40,D*5.5+20),140):50;return {maxLabelLen:N,shouldAngle:A,height:K}},[H,r.xAxis.key,r.xAxis.format,r.xAxis.type]),rt=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(xe,{ref:I,config:o,className:g||"w-full border border-border/50 p-4 rounded-md",debounceResize:true,children:jsxs(s,{accessibilityLayer:true,data:H,isAnimationActive:!rt,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:En||E.x,type:r.xAxis.type==="date"||!r.xAxis.type?"number":r.xAxis.type,tickFormatter:C=>{let N=Ct(C,r.xAxis.format,r.xAxis.type),D=typeof N=="string"?N:String(N??"");return D.length>It.maxLabelLen?D.slice(0,It.maxLabelLen)+"\u2026":D},tickLine:false,tickMargin:10,height:It.height,axisLine:false,allowDataOverflow:true,interval:"preserveStartEnd",ticks:G,...It.shouldAngle?{angle:-45,textAnchor:"end"}:{},children:jsx(Label,{value:r.xAxis.label,position:"bottom",offset:It.shouldAngle?-5:-10,style:{textAnchor:"middle"}})}),r.yAxes.map((C,N)=>jsx(YAxis,{yAxisId:N,orientation:N===0?"left":"right",domain:l?void 0:E.y[N],type:C.type==="date"||!C.type?"number":C.type,tickFormatter:D=>{let A=Ct(D,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:N===0?"insideLeft":"insideRight",angle:-90,dx:N===0?-15:15,style:{textAnchor:"middle"}})},`y-axis-${C.key}`)),jsx(Pn,{content:jt}),jsx(On,{content:Ae,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:!rt,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"}})]})}),k.x[0]!==null&&jsx("button",{onClick:y.onResetZoom,className:x||"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(Nt,{fallback:jsx("div",{className:t.errorClassName||"text-red-500",children:"Failed to load chart"}),children:jsx(Rs,{...t})})}function Tt(t){return jsx(ut,{...t,ChartComponent:BarChart,PointComponent:Bar})}function Gt(t){return jsx(ut,{...t,ChartComponent:LineChart,PointComponent:Line})}var Gs=(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 p=e/n,d=c*360+(p*40-20),m=Math.min(100,l*100+p*25),g=Math.max(35,Math.min(65,u*100-p*20));return `hsl(${d}, ${m}%, ${g}%)`};function Ws({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((p,d)=>(r.series.forEach(m=>{let g=m.key,f=String(d[r.xAxis.key]||"Unknown"),x=parseFloat(d[g]||"0");isNaN(x)||p.push({name:f,value:x,seriesId:g,displayName:f});}),p),[]).sort((p,d)=>d.value-p.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(xe,{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:p=>`${p.displayName}: ${ct(p.value,c,l)}`,children:u.map((p,d)=>jsx(Cell,{fill:d===0?i:Gs(i,d,u.length)},`cell-${p.name}`))}),jsx(Tooltip,{formatter:(p,d)=>[ct(p,c,l),d]}),jsx(Legend,{})]})})]})}function Wt(t){return jsx(Nt,{fallback:jsx("div",{className:"text-red-500",children:"Failed to load chart"}),children:jsx(Ws,{...t})})}function qt(t){return jsx(ut,{...t,ChartComponent:ScatterChart,PointComponent:Scatter})}var Zs=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})},Ys=t=>jsx(Scatter,{...t,shape:Zs});function zt(t){return jsx(ut,{...t,ChartComponent:ScatterChart,PointComponent:Ys})}var gt=new Map;function $n(t,e,n,o,r){let s=r?.length?JSON.stringify(r):"";return `${t}|${e}|${n??""}|${o??""}|${s}`}function Et(t){let e=t.filters?.length?JSON.stringify(t.filters):"";return `${t.datasetSlug}::${t.sqlQuery||""}::${t.resourceKey||""}::${e}`}async function Lr(t,e,n,o,r,s){if(t.dataFetcher)return t.dataFetcher.fetchDatasetContents(e,n,o,r,s);let a={limit:1e3};o&&(a.query=o),r&&(a.resource_key=r),s?.length&&(a.filters=s);let i=`${t.baseUrl}/datasets/${encodeURIComponent(e)}/query`,c={"Content-Type":"application/json"},l=t.token||t.authToken;l&&(c.Authorization=`Bearer ${l}`);let u=await fetch(i,{method:"POST",headers:c,body:JSON.stringify(a)});if(!u.ok)throw new Error(`Failed to fetch dataset contents: ${u.statusText}`);let p=await u.json();return !p.Columns||!p.Rows||p.Columns.length===0?[]:p.Rows.map(d=>{let m={};return p.Columns.forEach((g,f)=>{m[g]=d[f];}),m})}function Me(t,e,n,o){let r=Ut(),s=!!t&&!!e,a=$n(t,e,n,o,void 0),i=s?gt.get(a):void 0,[c,l]=useState(i),[u,p]=useState(s&&!i),[d,m]=useState(null),[g,f]=useState(0),x=useDeepCompareMemo(()=>r,[r]);useEffect(()=>{if(!s){l(void 0),p(false),m(null);return}if(gt.has(a)&&g===0){l(gt.get(a)),p(false),m(null);return}let k=false;return p(true),m(null),Lr(x,t,e,n,o).then(y=>{k||(gt.set(a,y),l(y),p(false));}).catch(y=>{k||(m(y instanceof Error?y:new Error(String(y))),p(false));}),()=>{k=true;}},[x,t,e,n,o,s,g,a]);let b=useCallback(()=>f(k=>k+1),[]);return {data:c,isLoading:u,error:d,refetch:b}}function be(t,e){let n=Q(),[o,r]=useState(0),s=useCallback(()=>r(d=>d+1),[]),a=useMemo(()=>{let d=new Set;return t.filter(m=>{let g=Et(m);return d.has(g)?false:(d.add(g),true)})},[t]),i=useMemo(()=>a.map(Et).join("|"),[a]),c=useMemo(()=>a.map(d=>$n(d.datasetSlug,e,d.sqlQuery,d.resourceKey,d.filters)),[a,e]),[l,u]=useState(()=>{if(!n||!e||a.length===0)return new Map;let d=new Map;return a.forEach((m,g)=>{let f=gt.get(c[g]);d.set(Et(m),{data:f,isLoading:!f,error:null,refetch:s});}),d}),p=useDeepCompareMemo(()=>n,[n]);return useEffect(()=>{if(!p||!e||a.length===0){u(new Map);return}let d=a.filter((f,x)=>o>0?true:!gt.has(c[x]));if(d.length===0){let f=new Map;a.forEach((x,b)=>{f.set(Et(x),{data:gt.get(c[b]),isLoading:false,error:null,refetch:s});}),u(f);return}let m=false,g=new Map;return a.forEach((f,x)=>{let b=gt.get(c[x]);g.set(Et(f),{data:b,isLoading:!b,error:null,refetch:s});}),u(g),d.forEach(f=>{let x=Et(f),b=$n(f.datasetSlug,e,f.sqlQuery,f.resourceKey,f.filters);Lr(p,f.datasetSlug,e,f.sqlQuery,f.resourceKey,f.filters).then(k=>{m||(gt.set(b,k),u(y=>{let h=new Map(y);return h.set(x,{data:k,isLoading:false,error:null,refetch:s}),h}));}).catch(k=>{m||u(y=>{let h=new Map(y);return h.set(x,{data:void 0,isLoading:false,error:k instanceof Error?k:new Error(String(k)),refetch:s}),h});});}),()=>{m=true;}},[p,i,e,o,c.join(","),s]),t.map(d=>{let m=Et(d);return l.get(m)||{data:void 0,isLoading:!(!p||!e),error:null,refetch:s}})}function $r(t,e,n,o){let r=t.map(s=>({datasetSlug:s,sqlQuery:n?.[s],resourceKey:o?.[s]}));return be(r,e)}function jr(t){return t.replace(/[A-Z]/g,e=>`_${e.toLowerCase()}`).replace(/^_/,"")}function Kt(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 aa(){return ["yyyy-MM-dd","yyyyMMdd","yyyy-MM-dd'T'HH:mm:ss","yyyyMMddHHmmss"]}function ia(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=aa();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 Le(t,e,n,o){let r=e==="index"&&t[e]===void 0?o:t[e];return n==="date"?ia(r):n==="number"?parseFloat(r):r}function la(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 Qt(t,e,n,o){return !o||o.length===0?t:[...t].sort((r,s)=>{for(let a of o){let i=la(a.key,e,n),c=Le(r,a.key,i,r.index),l=Le(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 Ur(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 ca(t,e,n,o,r,s,a){let i=t.reduce((u,p)=>{let d=p[e];return u[d]||(u[d]=[]),u[d].push(p),u},{}),c=Object.entries(i);if(c.length>o){let u=Math.ceil(c.length/o),p=c.reduce((d,[m,g],f)=>{let x=Math.floor(f/u);return d[x]||(d[x]={key:m,items:[]}),d[x].items.push(...g),d},[]).map(({key:d,items:m})=>({[e]:d,...n.reduce((g,f)=>{let x=m.map(b=>parseFloat(b[f.key])).filter(b=>!isNaN(b));return g[f.key]=x.length?x.reduce((b,k)=>b+k,0)/x.length:null,g},{})}));return a&&a.length>0?Qt(p,r,s,a):p}let l=c.map(([u,p])=>{let d=n.reduce((g,f)=>{let x=p.map(b=>parseFloat(b[f.key])).filter(b=>!isNaN(b));return g[f.key]=x.length?x.reduce((b,k)=>b+k,0)/x.length:null,g},{}),m=Object.values(d).filter(g=>g!==null).reduce((g,f)=>g+f,0);return {[e]:u,...d,index:m}});return a&&a.length>0?Qt(l,r,s,a):l}function ua(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((p,d)=>(p[d.key]=[],p),{})}));return t.forEach(l=>{let u=parseFloat(l[e]);if(isNaN(u))return;let p=Math.min(Math.floor((u-s)/i),o-1);c[p].count++,n.forEach(d=>{let m=parseFloat(l[d.key]);isNaN(m)||c[p].seriesValues[d.key].push(m);});}),c.map(l=>({[e]:(l.binStart+l.binEnd)/2,...n.reduce((u,p)=>{let d=l.seriesValues[p.key];return u[p.key]=d.length?d.reduce((m,g)=>m+g,0)/d.length:null,u},{}),count:l.count,index:n.reduce((u,p)=>{let d=l.seriesValues[p.key],m=d.length?d.reduce((g,f)=>g+f,0)/d.length:0;return u+m},0)})).filter(l=>n.some(u=>l[u.key]!==null))}function Fr(t,e,n,o,r){let s=t.map((m,g)=>{let f=Le(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 p=u.filter(m=>m.frequency>0);return (u.length-p.length)/u.length*100>30?Fr(t,e,n,Math.floor(o/2),r):p}function da(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])),p=parseFloat(String(c[1]));return l>=u&&l<=p}return true;default:return true}}))}var $e=xt__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:p,enableDownload:d=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]),x=be(f,o),b=x.some(w=>w.isLoading),k=useDeepCompareMemo(()=>x.map(w=>w.data||[]),[x.map(w=>w.data)]),{resolvedXAxisKey:y,resolvedSeriesKeys:h}=useMemo(()=>{let w=k.find(E=>E.length>0)||[];return {resolvedXAxisKey:Kt(w,s.key),resolvedSeriesKeys:i.map((E,V)=>({...E,resolvedKey:Kt(k[V]||[],E.key)}))}},[k,s.key,i]),S=useMemo(()=>{let w=new Map;i.forEach((V,Z)=>{let F=k[Z]||[],W=h[Z]?.resolvedKey||V.key;(V.filters?da(F,V.filters,W,y):F).forEach((Ae,It)=>{let rt=Le(Ae,y,s.type||"category",It);if(rt==null||s.type==="number"&&isNaN(rt))return;let C=s.type==="number"||s.type==="date"||typeof rt=="object"?rt.toString():String(rt);w.has(C)||w.set(C,{[s.key]:rt});let N=`series_${Z}_${V.key}`,D=Ae[W];w.get(C)[N]=D;});});let E=Array.from(w.values());return u&&u.length>0?E:s.type==="date"?E.sort((V,Z)=>V[s.key]-Z[s.key]):s.type==="number"?E.sort((V,Z)=>{let F=parseFloat(V[s.key]),W=parseFloat(Z[s.key]);return isNaN(F)||isNaN(W)?0:F-W}):E},[k,i,h,y,s,u]),_=useMemo(()=>i.map((w,E)=>({...w,key:`series_${E}_${w.key}`})),[i]),v=useMemo(()=>({[s.key]:{label:s.label,format:s.format,type:s.type},..._.reduce((w,E)=>(w[E.key]={label:E.name,color:E.color},w),{}),...e==="histogram"?{frequency:{label:a[0]?.label||"Frequency",color:_[0]?.color||"#2563eb"}}:{}}),[s,_,e,a]),I=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=Tt;break;case "line":U=Gt;break;case "pie":U=Wt;break;case "scatter":U=qt;break;case "histogram":U=Tt;break;case "heatmap":U=zt;break}let tt=useRef(false);useEffect(()=>{tt.current||!p||!b&&v&&I&&S.length&&(p(),setTimeout(()=>p(),250),tt.current=true);},[p,b,v,I,S.length]);let[O,H]=useState({x:[null,null],y:[null,null]}),{processedData:G,dataReductionInfo:En}=useMemo(()=>{if(b||!S.length)return {processedData:[],dataReductionInfo:null};if(e==="histogram"){let F=c.target_points||20;return {processedData:Fr(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 jt=parseFloat(F[W.key]);if(!isNaN(jt)&&(jt<O.y[0]||jt>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=Qt(F,s,a,u)),{processedData:F,dataReductionInfo:null}}let E,V="";switch(c.strategy){case "sample":E=Ur(w,c.target_points),V="sampled",u&&u.length>0&&(E=Qt(E,s,a,u));break;case "aggregate":E=ca(w,y,_,c.target_points,s,a,u),V="aggregated";break;case "bin":E=ua(w,y,_,c.target_points),V="binning",u&&u.length>0&&(E=Qt(E,s,a,u));break;default:w.length<1e3?E=w:(E=Ur(w,c.target_points),V="sampled"),u&&u.length>0&&(E=Qt(E,s,a,u));}let Z=null;return w.length!==E.length&&(Z=`${V} ${w.length.toLocaleString()} \u2192 ${E.length.toLocaleString()} points`),{processedData:E,dataReductionInfo:Z}},[S,c,e,b,O.x,O.y,_,u,s,a,y]);return U?b?jsx("div",{children:"Loading..."}):S.length?I?jsx(U,{data:G,displayConfig:v,stacked:l,dataConfig:I,title:n,subtitle:En||void 0,disableAnimation:G.length>100,onZoomChange:H,enableDownload:d,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)=>Xs(t,e));function je({title:t,invocationId:e,datasetSlug:n,sqlQuery:o,resourceKey:r,columns:s,maxRows:a=100,className:i,tableWrapperClassName:c,headerClassName:l,loadingClassName:u,emptyClassName:p,onScrollUpdate:d}){let{data:m,isLoading:g}=Me(n,e,o,r),f=useMemo(()=>s?m?.length?s.map(k=>{let y=Kt(m,k.key);return {key:k.key,name:k.name,resolvedKey:y,format:k.format,value_type:k.value_type}}):[]:m?.length?Object.keys(m[0]).map(k=>({key:k,name:k,resolvedKey:k,format:void 0,value_type:void 0})):[],[s,m]),x=useMemo(()=>!m||m.length===0?[]:a?m.slice(0,a):m,[m,a]),b=useRef(false);return useEffect(()=>{b.current||!d||!g&&m?.length&&(d(),setTimeout(()=>d(),250),b.current=true);},[d,g,m?.length]),g?jsx("div",{className:u||"text-gray-500",children:"Loading..."}):m?.length?f.length===0?jsx("div",{className:p||"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(k=>jsx("th",{className:"h-10 px-3 text-left align-middle font-medium text-muted-foreground",children:k.name},k.key))})}),jsx("tbody",{className:"[&_tr:last-child]:border-0",children:x.map((k,y)=>jsx("tr",{className:`border-b transition-colors hover:bg-muted/50 ${y%2===1?"bg-muted/30":""}`,children:f.map(h=>jsx("td",{className:"p-3 align-middle text-foreground",children:ct(k[h.resolvedKey],h.format,h.value_type)},h.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:p||"text-gray-500",children:"No data"})}function Ue({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 Gr(t){return t!==null&&typeof t=="object"&&"Valid"in t&&"String"in t}function M(t){if(typeof t=="string")return t;if(Gr(t))return t.Valid?t.String:void 0}function fa(t,e){return M(t)??e}var Wr={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[x]=e,b=`${p||x?.dataKey||x?.name||"value"}`,k=Mn(m,x,b),y=!p&&typeof a=="string"?m[a]?.label||a:k?.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((x,b)=>{let k=`${d||x.name||x.dataKey||"value"}`,y=Mn(m,x,k),h=u||x.payload.fill||x.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&&x?.value!==void 0&&x.name?l(x.value,x.name,x,b,x.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":h,"--color-border":h}}),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||x.name})]}),x.value&&jsx("span",{className:"text-foreground font-mono font-medium tabular-nums",children:x.value.toLocaleString()})]})]})},x.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:x}){let{zoomState:b,customDomain:k,handlers:y}=Ve({onZoomChange:c}),h=useCallback(C=>{let N=`${(t||"chart").toLowerCase().replace(/\s+/g,"-")}.png`,D=document.createElement("a");D.download=N,D.href=C,D.click(),d?.(N);},[t,d]),S=useCallback(C=>{console.error("Error converting chart to image:",C),p?.(C);},[p]),[{isLoading:_},v,I]=useToPng({onSuccess:h,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.filter(C=>!isNaN(C[r.xAxis.key])):r.xAxis.type==="date"?n.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(D=>Number(D[r.xAxis.key])).filter(D=>!isNaN(D)),N=[...new Set(C)].sort((D,A)=>D-A);if(!(r.chartType==="scatter"||N.length>20))return N},[H,r.xAxis.key,r.xAxis.type,r.chartType]),Rn=useMemo(()=>{if(!G||G.length<2)return;let N=(G[G.length-1]-G[0])*.05;return [G[0]-N,G[G.length-1]+N]},[G]),w=useCallback((C,N)=>{if(!C?.length)return {min:null,max:null};let D=C.map(A=>Number(A[N])).filter(A=>!isNaN(A));return {min:Math.min(...D),max:Math.max(...D)}},[]),E=useMemo(()=>({x:k.x[0]!==null&&k.x[1]!==null?[k.x[0],k.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,N)=>{if(k.y[0]!==null&&k.y[1]!==null)return [k.y[0],k.y[1]];let A=r.series.filter(K=>(K.axisIndex||0)===N).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[N].min??A.min??"auto",O[N].max??A.max??"auto"]}return [O[N].min??A.min??"auto",O[N].max??A.max??"auto"]})}),[k.x,k.y,tt,O,r.series,r.yAxes,r.xAxis.key,H,w]),V=useCallback((C,N,D)=>{if(D.dataKey===r.xAxis.key)return _t(C,r.xAxis.format,r.xAxis.type);let A=r.series.find(ke=>ke.key===D.dataKey),K=A?.name||String(N).replace(/^dataset_\d+_/,"");if(r.chartType==="histogram"){let ke=D.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,N)=>{if(N&&N.length>0){let D=N[0].payload[r.xAxis.key],A=_t(D,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,N=C>30?8:C>20?12:C>10?16:20,D=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??"");D=Math.max(D,Math.min(An.length,N));}let A=D*7*C>500,K=A?Math.min(Math.max(40,D*5.5+20),140):50;return {maxLabelLen:N,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:I,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||E.x,type:r.xAxis.type==="date"||!r.xAxis.type?"number":r.xAxis.type,tickFormatter:C=>{let N=_t(C,r.xAxis.format,r.xAxis.type),D=typeof N=="string"?N:String(N??"");return D.length>Nt.maxLabelLen?D.slice(0,Nt.maxLabelLen)+"\u2026":D},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,N)=>jsx(YAxis,{yAxisId:N,orientation:N===0?"left":"right",domain:l?void 0:E.y[N],type:C.type==="date"||!C.type?"number":C.type,tickFormatter:D=>{let A=_t(D,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:N===0?"insideLeft":"insideRight",angle:-90,dx:N===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"}})]})}),k.x[0]!==null&&jsx("button",{onClick:y.onResetZoom,className:x||"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"),x=parseFloat(p[g]||"0");isNaN(x)||d.push({name:f,value:x,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 x=Math.floor(f/u);return p[x]||(p[x]={key:m,items:[]}),p[x].items.push(...g),p},[]).map(({key:p,items:m})=>({[e]:p,...n.reduce((g,f)=>{let x=m.map(b=>parseFloat(b[f.key])).filter(b=>!isNaN(b));return g[f.key]=x.length?x.reduce((b,k)=>b+k,0)/x.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 x=d.map(b=>parseFloat(b[f.key])).filter(b=>!isNaN(b));return g[f.key]=x.length?x.reduce((b,k)=>b+k,0)/x.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]),x=be(f,o),b=x.some(w=>w.isLoading),k=useDeepCompareMemo(()=>x.map(w=>w.data||[]),[x.map(w=>w.data)]),{resolvedXAxisKey:y,resolvedSeriesKeys:h}=useMemo(()=>{let w=k.find(E=>E.length>0)||[];return {resolvedXAxisKey:Zt(w,s.key),resolvedSeriesKeys:i.map((E,V)=>({...E,resolvedKey:Zt(k[V]||[],E.key)}))}},[k,s.key,i]),S=useMemo(()=>{let w=new Map;i.forEach((V,Z)=>{let F=k[Z]||[],W=h[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 N=`series_${Z}_${V.key}`,D=Oe[W];w.get(C)[N]=D;});});let E=Array.from(w.values());return u&&u.length>0?E:s.type==="date"?E.sort((V,Z)=>V[s.key]-Z[s.key]):s.type==="number"?E.sort((V,Z)=>{let F=parseFloat(V[s.key]),W=parseFloat(Z[s.key]);return isNaN(F)||isNaN(W)?0:F-W}):E},[k,i,h,y,s,u]),_=useMemo(()=>i.map((w,E)=>({...w,key:`series_${E}_${w.key}`})),[i]),v=useMemo(()=>({[s.key]:{label:s.label,format:s.format,type:s.type},..._.reduce((w,E)=>(w[E.key]={label:E.name,color:E.color},w),{}),...e==="histogram"?{frequency:{label:a[0]?.label||"Frequency",color:_[0]?.color||"#2563eb"}}:{}}),[s,_,e,a]),I=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&&I&&S.length&&(d(),setTimeout(()=>d(),250),tt.current=true);},[d,b,v,I,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 E,V="";switch(c.strategy){case "sample":E=Gr(w,c.target_points),V="sampled",u&&u.length>0&&(E=Yt(E,s,a,u));break;case "aggregate":E=ma(w,y,_,c.target_points,s,a,u),V="aggregated";break;case "bin":E=fa(w,y,_,c.target_points),V="binning",u&&u.length>0&&(E=Yt(E,s,a,u));break;default:w.length<1e3?E=w:(E=Gr(w,c.target_points),V="sampled"),u&&u.length>0&&(E=Yt(E,s,a,u));}let Z=null;return w.length!==E.length&&(Z=`${V} ${w.length.toLocaleString()} \u2192 ${E.length.toLocaleString()} points`),{processedData:E,dataReductionInfo:Z}},[S,c,e,b,O.x,O.y,_,u,s,a,y]);return U?b?jsx("div",{children:"Loading..."}):S.length?I?jsx(U,{data:G,displayConfig:v,stacked:l,dataConfig:I,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(k=>{let y=Zt(m,k.key);return {key:k.key,name:k.name,resolvedKey:y,format:k.format,value_type:k.value_type}}):[]:m?.length?Object.keys(m[0]).map(k=>({key:k,name:k,resolvedKey:k,format:void 0,value_type:void 0})):[],[s,m]),x=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(k=>jsx("th",{className:"h-10 px-3 text-left align-middle font-medium text-muted-foreground",children:k.name},k.key))})}),jsx("tbody",{className:"[&_tr:last-child]:border-0",children:x.map((k,y)=>jsx("tr",{className:`border-b transition-colors hover:bg-muted/50 ${y%2===1?"bg-muted/30":""}`,children:f.map(h=>jsx("td",{className:"p-3 align-middle text-foreground",children:et(k[h.resolvedKey],h.format,h.value_type)},h.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
- $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 qr={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;
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;
11
11
  $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:0,op:1,st:0,ct:1,bm:0},{ddd:0,ind:3,ty:0,nm:"mask",td:1,refId:"comp_2",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:[250,250,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,w:500,h:500,ip:1,op:60,st:1,bm:0},{ddd:0,ind:4,ty:4,nm:".primary.design",cl:"primary design",tt:2,tp:3,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:-180,ix:10},p:{a:0,k:[250.004,250.003,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:[[-2.572,-106.399],[106.399,-2.572],[2.572,106.399],[-106.399,2.572]],o:[[2.572,106.399],[-106.399,2.572],[-2.572,-106.399],[106.399,-2.572]],v:[[192.652,-4.656],[4.656,192.652],[-192.652,4.656],[-4.656,-192.652]],c:true},ix:2},nm:"Path 1",mn:"ADBE Vector Shape - Group",hd:false},{ty:"fl",c:{a:0,k:[.071,.075,.192,1],ix:4,x:`var $bm_rt;
12
12
  $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:"st",c:{a:0,k:[.071,.075,.192,1],ix:3,x:`var $bm_rt;
@@ -14,16 +14,16 @@ $bm_rt = comp('system-solid-31-check').layer('control').effect('primary')('Color
14
14
  $bm_rt = comp('system-solid-31-check').layer('control').effect('primary')('Color');`},o:{a:0,k:100,ix:4},w:{a:0,k:41,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:"Group 1",np:3,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:false}],ip:0,op:59,st:-1,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:[253.419,260.347,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:[[0,0],[0,0],[0,0]],o:[[0,0],[0,0],[0,0]],v:[[149.956,-127.947],[-31.321,52.362],[-83.54,.208]],c:false},ix:2},nm:"Path 1",mn:"ADBE Vector Shape - Group",hd:false},{ty:"tm",s:{a:1,k:[{i:{x:[.05],y:[1]},o:{x:[.167],y:[.167]},t:20,s:[0]},{t:59,s:[100]}],ix:1},e:{a:1,k:[{i:{x:[.05],y:[1]},o:{x:[.333],y:[0]},t:20,s:[0]},{t:59,s:[28.5]}],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:[.071,.075,.192,1],ix:3,x:`var $bm_rt;
15
15
  $bm_rt = comp('system-solid-31-check').layer('control').effect('primary')('Color');`},o:{a:0,k:100,ix:4},w:{a:0,k:41,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:"Group 1",np:3,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:false}],ip:0,op:59,st:-1,ct:1,bm:0}]},{id:"comp_5",nm:"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:[253.419,260.347,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:[[0,0],[0,0],[0,0]],o:[[0,0],[0,0],[0,0]],v:[[149.956,-122.947],[-31.321,57.362],[-83.54,5.208]],c:false},ix:2},nm:"Path 1",mn:"ADBE Vector Shape - Group",hd:false},{ty:"tm",s:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:11,s:[0]},{t:30,s:[100]}],ix:1},e:{a:1,k:[{i:{x:[.19],y:[1]},o:{x:[.333],y:[0]},t:0,s:[0]},{t:27,s:[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:[.071,.075,.192,1],ix:3,x:`var $bm_rt;
16
16
  $bm_rt = comp('system-solid-31-check').layer('control').effect('primary')('Color');`},o:{a:0,k:100,ix:4},w:{a:0,k:41,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,-5],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:0,op:59,st:-1,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:[253.419,260.347,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:[[0,0],[0,0],[0,0]],o:[[0,0],[0,0],[0,0]],v:[[149.956,-122.947],[-31.321,57.362],[-83.54,5.208]],c:false},ix:2},nm:"Path 1",mn:"ADBE Vector Shape - Group",hd:false},{ty:"tm",s:{a:1,k:[{i:{x:[.05],y:[1]},o:{x:[.167],y:[.167]},t:20,s:[0]},{t:59,s:[100]}],ix:1},e:{a:1,k:[{i:{x:[.05],y:[1]},o:{x:[.333],y:[0]},t:20,s:[0]},{t:59,s:[28.5]}],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:[.071,.075,.192,1],ix:3,x:`var $bm_rt;
17
- $bm_rt = comp('system-solid-31-check').layer('control').effect('primary')('Color');`},o:{a:0,k:100,ix:4},w:{a:0,k:41,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,-5],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:0,op:59,st:-1,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:300,st:0,bm:0},{ddd:0,ind:3,ty:0,nm:"hover-check",refId:"comp_1",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:[250,250,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,w:500,h:500,ip:0,op:69,st:0,bm:0}],markers:[{tm:0,cm:"default:hover-check",dr:59}],props:{}};var zr={v:"5.12.1",fr:60,ip:0,op:60,w:500,h:500,nm:"system-solid-56-warning",ddd:0,assets:[{id:"comp_1",nm:"mask-2",fr:60,layers:[{ddd:0,ind:1,ty:3,nm:"NULL ",sr:1,ks:{o:{a:0,k:0,ix:11},r:{a:1,k:[{i:{x:[.159],y:[1]},o:{x:[.333],y:[0]},t:1,s:[0]},{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:35,s:[35]},{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:45.441,s:[-35]},{t:59,s:[0]}],ix:10},p:{a:0,k:[250,284,0],ix:2,l:2},a:{a:0,k:[50,50,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,ip:0,op:59,st:0,bm:0},{ddd:0,ind:2,ty:4,nm:".primary.design",cl:"primary design",parent:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[50.005,120.173,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:1},o:{x:.167,y:.167},t:0,s:[{i:[[0,0],[0,0]],o:[[0,0],[0,0]],v:[[.005,61],[.005,61]],c:false}]},{t:29,s:[{i:[[0,0],[0,0]],o:[[0,0],[0,0]],v:[[0,0],[0,0]],c:false}]}],ix:2},nm:"Path 1",mn:"ADBE Vector Shape - Group",hd:false},{ty:"st",c:{a:0,k:[0,0,0,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:52,ix:5},lc:2,lj:1,ml:10,bm:0,nm:"Stroke 1",mn:"ADBE Vector Graphic - Stroke",hd:false},{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:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:false}],ip:0,op:59,st:-1,ct:1,bm:0},{ddd:0,ind:3,ty:4,nm:".primary.design",cl:"primary design",parent:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[50.004,10.799,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:1},o:{x:.167,y:.167},t:0,s:[{i:[[0,0],[0,0]],o:[[0,0],[0,0]],v:[[.004,169.167],[.011,168.333]],c:false}]},{t:29,s:[{i:[[0,0],[0,0]],o:[[0,0],[0,0]],v:[[0,41.667],[0,-41.667]],c:false}]}],ix:2},nm:"Path 1",mn:"ADBE Vector Shape - Group",hd:false},{ty:"st",c:{a:0,k:[0,0,0,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:41,ix:5},lc:2,lj:2,bm:0,nm:"Stroke 1",mn:"ADBE Vector Graphic - Stroke",hd:false},{ty:"tr",p:{a:0,k:[0,-15],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:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:false}],ip:0,op:59,st:-1,ct:1,bm:0}]},{id:"comp_2",nm:"hover-warning",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:[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:.12,y:1},o:{x:.167,y:.167},t:54,s:[{i:[[.236,-1.806],[.914,-1.802],[.912,-1.35],[1.362,-1.122],[1.588,-1.12],[1.585,-0.669],[1.81,-0.441],[1.807,.01],[5.391,5.454],[1.121,1.588],[.669,1.585],[.441,1.81],[-0.01,1.807],[-0.236,1.806],[-0.914,1.802],[-0.912,1.35],[-1.136,1.123],[-9.027,-1.86],[-1.802,-0.914],[-1.35,-0.912],[-1.122,-1.362],[-1.121,-1.588],[-0.669,-1.585],[-0.441,-1.81],[.01,-1.808]],o:[[-0.462,1.805],[-0.687,1.578],[-1.139,1.575],[-1.138,1.349],[-1.361,.896],[-1.813,.893],[-1.809,.215],[-7.456,-0.043],[-1.123,-1.136],[-0.896,-1.361],[-0.893,-1.813],[-0.215,-1.809],[.01,-1.807],[.462,-1.805],[.687,-1.578],[1.139,-1.575],[6.816,-6.513],[1.805,.462],[1.578,.687],[1.575,1.139],[1.349,1.137],[.896,1.361],[.893,1.813],[.215,1.809],[-0.01,1.808]],v:[[27.506,115.798],[25.667,121.21],[23.155,125.94],[19.515,130.212],[15.201,133.802],[10.442,136.26],[5.009,138.036],[-0.416,138.457],[-20.476,129.981],[-23.84,125.668],[-26.298,120.909],[-28.074,115.476],[-28.495,110.051],[-28.011,104.631],[-26.173,99.219],[-23.66,94.489],[-20.246,90.216],[5.331,82.456],[10.743,84.294],[15.473,86.807],[19.745,90.447],[23.335,94.761],[25.793,99.52],[27.569,104.953],[27.99,110.378]],c:true}]},{t:60,s:[{i:[[.208,-1.667],[.833,-1.667],[.833,-1.25],[1.25,-1.042],[1.458,-1.042],[1.458,-0.625],[1.667,-0.417],[1.667,0],[5,5],[1.042,1.458],[.625,1.458],[.417,1.667],[0,1.667],[-0.208,1.667],[-0.833,1.667],[-0.833,1.25],[-1.042,1.042],[-8.333,-1.667],[-1.667,-0.833],[-1.25,-0.833],[-1.042,-1.25],[-1.042,-1.458],[-0.625,-1.458],[-0.417,-1.667],[0,-1.667]],o:[[-0.417,1.667],[-0.625,1.458],[-1.042,1.458],[-1.042,1.25],[-1.25,.833],[-1.667,.833],[-1.667,.208],[-6.875,0],[-1.042,-1.042],[-0.833,-1.25],[-0.833,-1.667],[-0.208,-1.667],[0,-1.667],[.417,-1.667],[.625,-1.458],[1.042,-1.458],[6.25,-6.041],[1.667,.417],[1.458,.625],[1.458,1.042],[1.25,1.042],[.833,1.25],[.833,1.667],[.208,1.667],[0,1.667]],v:[[25.987,108.66],[24.321,113.659],[22.029,118.034],[18.696,121.992],[14.738,125.325],[10.363,127.617],[5.364,129.283],[.364,129.7],[-18.176,121.992],[-21.301,118.034],[-23.593,113.659],[-25.259,108.66],[-25.676,103.66],[-25.259,98.66],[-23.593,93.661],[-21.301,89.286],[-18.176,85.328],[5.364,78.037],[10.363,79.703],[14.738,81.995],[18.696,85.328],[22.029,89.286],[24.321,93.661],[25.987,98.66],[26.404,103.66]],c:true}]}],ix:2},nm:"Path 1",mn:"ADBE Vector Shape - Group",hd:false},{ind:1,ty:"sh",ix:2,ks:{a:1,k:[{i:{x:.12,y:1},o:{x:.167,y:.167},t:54,s:[{i:[[0,0],[-12.427,-0.072],[.072,-12.427],[0,0],[12.427,.072],[-0.072,12.427]],o:[[.072,-12.427],[12.427,.072],[0,0],[-0.072,12.427],[-12.427,-0.072],[0,0]],v:[[-21.802,-70.666],[.923,-93.129],[23.386,-70.405],[22.863,19.97],[.139,42.433],[-22.324,19.709]],c:true}]},{t:60,s:[{i:[[0,0],[-11.458,0],[0,-11.458],[0,0],[11.458,0],[0,11.458]],o:[[0,-11.458],[11.458,0],[0,0],[0,11.458],[-11.458,0],[0,0]],v:[[-20.468,-62.996],[.364,-83.828],[21.196,-62.996],[21.196,20.332],[.364,41.164],[-20.468,20.332]],c:true}]}],ix:2},nm:"Path 2",mn:"ADBE Vector Shape - Group",hd:false},{ind:2,ty:"sh",ix:3,ks:{a:0,k:{i:[[2.708,4.791],[0,0],[5.416,-10.208],[0,0],[-2.916,-4.791],[-5.416,0],[0,0],[-2.708,4.583]],o:[[0,0],[-5.416,-10.208],[0,0],[-2.708,4.791],[2.708,4.583],[0,0],[5.416,0],[2.917,-4.791]],v:[[206.809,164.073],[14.113,-200.487],[-13.385,-200.487],[-206.081,164.073],[-205.664,179.488],[-192.332,186.988],[193.06,186.988],[206.392,179.488]],c:true},ix:2},nm:"Path 3",mn:"ADBE Vector Shape - Group",hd:false},{ty:"fl",c:{a:0,k:[.071,.075,.192,1],ix:4,x:`var $bm_rt;
17
+ $bm_rt = comp('system-solid-31-check').layer('control').effect('primary')('Color');`},o:{a:0,k:100,ix:4},w:{a:0,k:41,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,-5],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:0,op:59,st:-1,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:300,st:0,bm:0},{ddd:0,ind:3,ty:0,nm:"hover-check",refId:"comp_1",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:[250,250,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,w:500,h:500,ip:0,op:69,st:0,bm:0}],markers:[{tm:0,cm:"default:hover-check",dr:59}],props:{}};var Qr={v:"5.12.1",fr:60,ip:0,op:60,w:500,h:500,nm:"system-solid-56-warning",ddd:0,assets:[{id:"comp_1",nm:"mask-2",fr:60,layers:[{ddd:0,ind:1,ty:3,nm:"NULL ",sr:1,ks:{o:{a:0,k:0,ix:11},r:{a:1,k:[{i:{x:[.159],y:[1]},o:{x:[.333],y:[0]},t:1,s:[0]},{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:35,s:[35]},{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:45.441,s:[-35]},{t:59,s:[0]}],ix:10},p:{a:0,k:[250,284,0],ix:2,l:2},a:{a:0,k:[50,50,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,ip:0,op:59,st:0,bm:0},{ddd:0,ind:2,ty:4,nm:".primary.design",cl:"primary design",parent:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[50.005,120.173,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:1},o:{x:.167,y:.167},t:0,s:[{i:[[0,0],[0,0]],o:[[0,0],[0,0]],v:[[.005,61],[.005,61]],c:false}]},{t:29,s:[{i:[[0,0],[0,0]],o:[[0,0],[0,0]],v:[[0,0],[0,0]],c:false}]}],ix:2},nm:"Path 1",mn:"ADBE Vector Shape - Group",hd:false},{ty:"st",c:{a:0,k:[0,0,0,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:52,ix:5},lc:2,lj:1,ml:10,bm:0,nm:"Stroke 1",mn:"ADBE Vector Graphic - Stroke",hd:false},{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:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:false}],ip:0,op:59,st:-1,ct:1,bm:0},{ddd:0,ind:3,ty:4,nm:".primary.design",cl:"primary design",parent:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[50.004,10.799,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:1},o:{x:.167,y:.167},t:0,s:[{i:[[0,0],[0,0]],o:[[0,0],[0,0]],v:[[.004,169.167],[.011,168.333]],c:false}]},{t:29,s:[{i:[[0,0],[0,0]],o:[[0,0],[0,0]],v:[[0,41.667],[0,-41.667]],c:false}]}],ix:2},nm:"Path 1",mn:"ADBE Vector Shape - Group",hd:false},{ty:"st",c:{a:0,k:[0,0,0,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:41,ix:5},lc:2,lj:2,bm:0,nm:"Stroke 1",mn:"ADBE Vector Graphic - Stroke",hd:false},{ty:"tr",p:{a:0,k:[0,-15],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:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:false}],ip:0,op:59,st:-1,ct:1,bm:0}]},{id:"comp_2",nm:"hover-warning",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:[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:.12,y:1},o:{x:.167,y:.167},t:54,s:[{i:[[.236,-1.806],[.914,-1.802],[.912,-1.35],[1.362,-1.122],[1.588,-1.12],[1.585,-0.669],[1.81,-0.441],[1.807,.01],[5.391,5.454],[1.121,1.588],[.669,1.585],[.441,1.81],[-0.01,1.807],[-0.236,1.806],[-0.914,1.802],[-0.912,1.35],[-1.136,1.123],[-9.027,-1.86],[-1.802,-0.914],[-1.35,-0.912],[-1.122,-1.362],[-1.121,-1.588],[-0.669,-1.585],[-0.441,-1.81],[.01,-1.808]],o:[[-0.462,1.805],[-0.687,1.578],[-1.139,1.575],[-1.138,1.349],[-1.361,.896],[-1.813,.893],[-1.809,.215],[-7.456,-0.043],[-1.123,-1.136],[-0.896,-1.361],[-0.893,-1.813],[-0.215,-1.809],[.01,-1.807],[.462,-1.805],[.687,-1.578],[1.139,-1.575],[6.816,-6.513],[1.805,.462],[1.578,.687],[1.575,1.139],[1.349,1.137],[.896,1.361],[.893,1.813],[.215,1.809],[-0.01,1.808]],v:[[27.506,115.798],[25.667,121.21],[23.155,125.94],[19.515,130.212],[15.201,133.802],[10.442,136.26],[5.009,138.036],[-0.416,138.457],[-20.476,129.981],[-23.84,125.668],[-26.298,120.909],[-28.074,115.476],[-28.495,110.051],[-28.011,104.631],[-26.173,99.219],[-23.66,94.489],[-20.246,90.216],[5.331,82.456],[10.743,84.294],[15.473,86.807],[19.745,90.447],[23.335,94.761],[25.793,99.52],[27.569,104.953],[27.99,110.378]],c:true}]},{t:60,s:[{i:[[.208,-1.667],[.833,-1.667],[.833,-1.25],[1.25,-1.042],[1.458,-1.042],[1.458,-0.625],[1.667,-0.417],[1.667,0],[5,5],[1.042,1.458],[.625,1.458],[.417,1.667],[0,1.667],[-0.208,1.667],[-0.833,1.667],[-0.833,1.25],[-1.042,1.042],[-8.333,-1.667],[-1.667,-0.833],[-1.25,-0.833],[-1.042,-1.25],[-1.042,-1.458],[-0.625,-1.458],[-0.417,-1.667],[0,-1.667]],o:[[-0.417,1.667],[-0.625,1.458],[-1.042,1.458],[-1.042,1.25],[-1.25,.833],[-1.667,.833],[-1.667,.208],[-6.875,0],[-1.042,-1.042],[-0.833,-1.25],[-0.833,-1.667],[-0.208,-1.667],[0,-1.667],[.417,-1.667],[.625,-1.458],[1.042,-1.458],[6.25,-6.041],[1.667,.417],[1.458,.625],[1.458,1.042],[1.25,1.042],[.833,1.25],[.833,1.667],[.208,1.667],[0,1.667]],v:[[25.987,108.66],[24.321,113.659],[22.029,118.034],[18.696,121.992],[14.738,125.325],[10.363,127.617],[5.364,129.283],[.364,129.7],[-18.176,121.992],[-21.301,118.034],[-23.593,113.659],[-25.259,108.66],[-25.676,103.66],[-25.259,98.66],[-23.593,93.661],[-21.301,89.286],[-18.176,85.328],[5.364,78.037],[10.363,79.703],[14.738,81.995],[18.696,85.328],[22.029,89.286],[24.321,93.661],[25.987,98.66],[26.404,103.66]],c:true}]}],ix:2},nm:"Path 1",mn:"ADBE Vector Shape - Group",hd:false},{ind:1,ty:"sh",ix:2,ks:{a:1,k:[{i:{x:.12,y:1},o:{x:.167,y:.167},t:54,s:[{i:[[0,0],[-12.427,-0.072],[.072,-12.427],[0,0],[12.427,.072],[-0.072,12.427]],o:[[.072,-12.427],[12.427,.072],[0,0],[-0.072,12.427],[-12.427,-0.072],[0,0]],v:[[-21.802,-70.666],[.923,-93.129],[23.386,-70.405],[22.863,19.97],[.139,42.433],[-22.324,19.709]],c:true}]},{t:60,s:[{i:[[0,0],[-11.458,0],[0,-11.458],[0,0],[11.458,0],[0,11.458]],o:[[0,-11.458],[11.458,0],[0,0],[0,11.458],[-11.458,0],[0,0]],v:[[-20.468,-62.996],[.364,-83.828],[21.196,-62.996],[21.196,20.332],[.364,41.164],[-20.468,20.332]],c:true}]}],ix:2},nm:"Path 2",mn:"ADBE Vector Shape - Group",hd:false},{ind:2,ty:"sh",ix:3,ks:{a:0,k:{i:[[2.708,4.791],[0,0],[5.416,-10.208],[0,0],[-2.916,-4.791],[-5.416,0],[0,0],[-2.708,4.583]],o:[[0,0],[-5.416,-10.208],[0,0],[-2.708,4.791],[2.708,4.583],[0,0],[5.416,0],[2.917,-4.791]],v:[[206.809,164.073],[14.113,-200.487],[-13.385,-200.487],[-206.081,164.073],[-205.664,179.488],[-192.332,186.988],[193.06,186.988],[206.392,179.488]],c:true},ix:2},nm:"Path 3",mn:"ADBE Vector Shape - Group",hd:false},{ty:"fl",c:{a:0,k:[.071,.075,.192,1],ix:4,x:`var $bm_rt;
18
18
  $bm_rt = comp('system-solid-56-warning').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:4,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:false}],ip:54,op:300,st:0,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:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[.208,-1.667],[.833,-1.667],[.833,-1.25],[1.25,-1.042],[1.458,-1.042],[1.458,-0.625],[1.667,-0.417],[1.667,0],[5,5],[1.042,1.458],[.625,1.458],[.417,1.667],[0,1.667],[-0.208,1.667],[-0.833,1.667],[-0.833,1.25],[-1.042,1.042],[-8.333,-1.667],[-1.667,-0.833],[-1.25,-0.833],[-1.042,-1.25],[-1.042,-1.458],[-0.625,-1.458],[-0.417,-1.667],[0,-1.667]],o:[[-0.417,1.667],[-0.625,1.458],[-1.042,1.458],[-1.042,1.25],[-1.25,.833],[-1.667,.833],[-1.667,.208],[-6.875,0],[-1.042,-1.042],[-0.833,-1.25],[-0.833,-1.667],[-0.208,-1.667],[0,-1.667],[.417,-1.667],[.625,-1.458],[1.042,-1.458],[6.25,-6.041],[1.667,.417],[1.458,.625],[1.458,1.042],[1.25,1.042],[.833,1.25],[.833,1.667],[.208,1.667],[0,1.667]],v:[[25.987,108.66],[24.321,113.659],[22.029,118.034],[18.696,121.992],[14.738,125.325],[10.363,127.617],[5.364,129.283],[.364,129.7],[-18.176,121.992],[-21.301,118.034],[-23.593,113.659],[-25.259,108.66],[-25.676,103.66],[-25.259,98.66],[-23.593,93.661],[-21.301,89.286],[-18.176,85.328],[5.364,78.037],[10.363,79.703],[14.738,81.995],[18.696,85.328],[22.029,89.286],[24.321,93.661],[25.987,98.66],[26.404,103.66]],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:[[0,0],[-11.458,0],[0,-11.458],[0,0],[11.458,0],[0,11.458]],o:[[0,-11.458],[11.458,0],[0,0],[0,11.458],[-11.458,0],[0,0]],v:[[-20.468,-62.996],[.364,-83.828],[21.196,-62.996],[21.196,20.332],[.364,41.164],[-20.468,20.332]],c:true},ix:2},nm:"Path 2",mn:"ADBE Vector Shape - Group",hd:false},{ind:2,ty:"sh",ix:3,ks:{a:0,k:{i:[[2.708,4.791],[0,0],[5.416,-10.208],[0,0],[-2.916,-4.791],[-5.416,0],[0,0],[-2.708,4.583]],o:[[0,0],[-5.416,-10.208],[0,0],[-2.708,4.791],[2.708,4.583],[0,0],[5.416,0],[2.917,-4.791]],v:[[206.809,164.073],[14.113,-200.487],[-13.385,-200.487],[-206.081,164.073],[-205.664,179.488],[-192.332,186.988],[193.06,186.988],[206.392,179.488]],c:true},ix:2},nm:"Path 3",mn:"ADBE Vector Shape - Group",hd:false},{ty:"fl",c:{a:0,k:[.071,.075,.192,1],ix:4,x:`var $bm_rt;
19
19
  $bm_rt = comp('system-solid-56-warning').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:4,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:false}],ip:0,op:1,st:0,ct:1,bm:0},{ddd:0,ind:3,ty:3,nm:"NULL ",sr:1,ks:{o:{a:0,k:0,ix:11},r:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:12,s:[0]},{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:18.25,s:[-30]},{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:24.5,s:[30]},{i:{x:[.16],y:[1]},o:{x:[.333],y:[0]},t:32,s:[-30]},{t:47,s:[0]}],ix:10},p:{a:0,k:[250,284,0],ix:2,l:2},a:{a:0,k:[50,50,0],ix:1,l:2},s:{a:1,k:[{i:{x:[0,0,.2],y:[1,1,1]},o:{x:[.333,.333,.333],y:[0,0,0]},t:1,s:[100,100,100]},{i:{x:[.3,.3,.3],y:[1,1,1]},o:{x:[1,1,.8],y:[0,0,0]},t:17,s:[180,180,100]},{i:{x:[.3,.3,.3],y:[1,1,1]},o:{x:[.7,.7,.7],y:[0,0,0]},t:36,s:[180,180,100]},{t:59,s:[100,100,100]}],ix:6,l:2}},ao:0,ip:3,op:54,st:1,bm:0},{ddd:0,ind:4,ty:4,nm:".primary.design",cl:"primary design",parent:3,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[50.005,120.173,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:[[0,0],[0,0]],o:[[0,0],[0,0]],v:[[0,0],[0,0]],c:false},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;
20
20
  $bm_rt = comp('system-solid-56-warning').layer('control').effect('primary')('Color');`},o:{a:0,k:100,ix:4},w:{a:0,k:52,ix:5},lc:2,lj:1,ml:10,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:"Group 1",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:false}],ip:3,op:54,st:0,ct:1,bm:0},{ddd:0,ind:5,ty:4,nm:".primary.design",cl:"primary design",parent:3,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[50.004,10.799,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:[[0,0],[0,0]],o:[[0,0],[0,0]],v:[[0,41.667],[0,-41.667]],c:false},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;
21
21
  $bm_rt = comp('system-solid-56-warning').layer('control').effect('primary')('Color');`},o:{a:0,k:100,ix:4},w:{a:0,k:42,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,-14.5],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:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:false}],ip:3,op:54,st:0,ct:1,bm:0},{ddd:0,ind:6,ty:0,nm:"mask-1",td:1,refId:"comp_3",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:[250,250,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,w:500,h:500,ip:1,op:54,st:1,bm:0},{ddd:0,ind:7,ty:4,nm:".primary.design",cl:"primary design",tt:2,tp:6,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[250.004,239.584,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:[[0,0],[0,0],[0,0]],o:[[0,0],[0,0],[0,0]],v:[[-192.709,182.293],[0,-182.293],[192.709,182.293]],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;
22
22
  $bm_rt = comp('system-solid-56-warning').layer('control').effect('primary')('Color');`},o:{a:0,k:100,ix:4},w:{a:0,k:31.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:"Group 1",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:false},{ty:"fl",c:{a:0,k:[.071,.075,.192,1],ix:4,x:`var $bm_rt;
23
- $bm_rt = comp('system-solid-56-warning').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"}],ip:1,op:54,st:0,ct:1,bm:0}]},{id:"comp_3",nm:"mask-1",fr:60,layers:[{ddd:0,ind:1,ty:3,nm:"NULL 2",sr:1,ks:{o:{a:0,k:0,ix:11},r:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:11,s:[0]},{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:17.25,s:[-30]},{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:23.5,s:[30]},{i:{x:[.16],y:[1]},o:{x:[.333],y:[0]},t:31,s:[-30]},{t:46,s:[0]}],ix:10},p:{a:0,k:[250,284,0],ix:2,l:2},a:{a:0,k:[50,50,0],ix:1,l:2},s:{a:1,k:[{i:{x:[0,0,.2],y:[1,1,1]},o:{x:[.333,.333,.333],y:[0,0,0]},t:0,s:[100,100,100]},{i:{x:[.3,.3,.3],y:[1,1,1]},o:{x:[1,1,.8],y:[0,0,0]},t:16,s:[180,180,100]},{i:{x:[.3,.3,.3],y:[1,1,1]},o:{x:[.7,.7,.7],y:[0,0,0]},t:35,s:[180,180,100]},{t:58,s:[100,100,100]}],ix:6,l:2}},ao:0,ip:0,op:53,st:0,bm:0},{ddd:0,ind:2,ty:4,nm:".primary.design",cl:"primary design",parent:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[50.005,120.173,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:[[0,0],[0,0]],o:[[0,0],[0,0]],v:[[0,0],[0,0]],c:false},ix:2},nm:"Path 1",mn:"ADBE Vector Shape - Group",hd:false},{ty:"st",c:{a:0,k:[1,1,1,1],ix:3},o:{a:0,k:100,ix:4},w:{a:1,k:[{i:{x:[0],y:[1]},o:{x:[.333],y:[0]},t:0,s:[52]},{i:{x:[0],y:[1]},o:{x:[1],y:[0]},t:10,s:[150]},{i:{x:[.833],y:[.833]},o:{x:[1],y:[0]},t:29,s:[150]},{t:53,s:[52]}],ix:5},lc:2,lj:1,ml:10,bm:0,nm:"Stroke 1",mn:"ADBE Vector Graphic - Stroke",hd:false},{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:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:false}],ip:0,op:53,st:-1,ct:1,bm:0},{ddd:0,ind:3,ty:4,nm:".primary.design",cl:"primary design",parent:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[50.004,10.799,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:1},o:{x:.333,y:0},t:0,s:[{i:[[0,0],[0,0]],o:[[0,0],[0,0]],v:[[0,41.667],[0,-41.667]],c:false}]},{i:{x:0,y:1},o:{x:1,y:0},t:10,s:[{i:[[0,0],[0,0]],o:[[0,0],[0,0]],v:[[.004,142.667],[0,-41.667]],c:false}]},{i:{x:.833,y:.833},o:{x:1,y:0},t:29,s:[{i:[[0,0],[0,0]],o:[[0,0],[0,0]],v:[[.004,142.667],[0,-41.667]],c:false}]},{t:53,s:[{i:[[0,0],[0,0]],o:[[0,0],[0,0]],v:[[0,41.667],[0,-41.667]],c:false}]}],ix:2},nm:"Path 1",mn:"ADBE Vector Shape - Group",hd:false},{ty:"st",c:{a:0,k:[1,1,1,1],ix:3},o:{a:0,k:100,ix:4},w:{a:1,k:[{i:{x:[0],y:[1]},o:{x:[.333],y:[0]},t:0,s:[42]},{i:{x:[0],y:[1]},o:{x:[1],y:[0]},t:10,s:[150]},{i:{x:[.833],y:[.833]},o:{x:[1],y:[0]},t:29,s:[150]},{t:53,s:[42]}],ix:5},lc:2,lj:2,bm:0,nm:"Stroke 1",mn:"ADBE Vector Graphic - Stroke",hd:false},{ty:"tr",p:{a:0,k:[0,-14.5],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:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:false}],ip:0,op:53,st:-1,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:131,st:0,bm:0},{ddd:0,ind:3,ty:0,nm:"hover-warning",refId:"comp_2",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:[250,250,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,w:500,h:500,ip:0,op:70,st:0,bm:0}],markers:[{tm:0,cm:"default:hover-warning",dr:60}],props:{}};var Kr=null,Fe=null,Gn=new Set;function ba(){return Fe||(typeof window>"u"?Promise.resolve():(Fe=import('@lordicon/react').then(t=>{Kr=t.Player,Gn.forEach(e=>e());}),Fe))}typeof window<"u"&&ba();function Ca(t){return Gn.add(t),()=>Gn.delete(t)}function _a(){return Kr}function Sa(){return null}function va(){let[t,e]=useState("#000000");return useEffect(()=>{if(typeof window>"u")return;let n=()=>{let r=document.documentElement.classList.contains("dark");e(r?"#ffffff":"#000000");};n();let o=new MutationObserver(r=>{r.forEach(s=>{s.attributeName==="class"&&n();});});return o.observe(document.documentElement,{attributes:true}),()=>o.disconnect()},[]),t}function at({status:t,color:e,size:n=16,className:o}){let r=useRef(null),s=useRef(null),a=useRef(null),i=useSyncExternalStore(Ca,_a,Sa),c=va(),l=e||c;return useEffect(()=>{i&&(t==="loading"?r.current?.playFromBeginning?.():t==="finished"?(r.current?.pause?.(),s.current?.playFromBeginning?.()):t==="failed"&&(r.current?.pause?.(),a.current?.playFromBeginning?.()));},[t,i]),i?jsxs("div",{className:o,style:{width:n,height:n,position:"relative"},children:[jsx("div",{style:{position:"absolute",opacity:t==="loading"?1:0,transition:"opacity 0.3s ease-in-out"},children:jsx(i,{ref:r,size:n,icon:Wr,colorize:l,onComplete:()=>r.current?.playFromBeginning?.()})}),jsx("div",{style:{position:"absolute",opacity:t==="finished"?1:0,transition:"opacity 0.3s ease-in-out"},children:jsx(i,{ref:s,size:n,icon:qr,colorize:l})}),jsx("div",{style:{position:"absolute",opacity:t==="failed"?1:0,transition:"opacity 0.3s ease-in-out"},children:jsx(i,{ref:a,size:n,icon:zr,colorize:l})})]}):jsx("div",{className:o,style:{width:n,height:n}})}function Ce(t,e){return t==="json"||e==="json"||e==="ui_generation"}var Qr=(c=>(c.Pending="pending",c.Running="running",c.Success="success",c.Error="error",c.RequiresInfo="requires info",c.GoToStep="go to step",c.Skipped="skipped",c.Break="break",c))(Qr||{}),Zr=(s=>(s.Initializing="initializing",s.Running="running",s.ProcessingDatasets="processing datasets",s.Completed="completed",s.Failed="failed",s))(Zr||{});var Yr={Finished:"step finished",Failed:"step error"};function Je({step:t}){let e=M(t.action_type)||"step",n=t.currentStatus;if(!n)return null;let o="loading";n.status===Yr.Finished||n.status==="completed"?o="finished":(n.status===Yr.Failed||n.status==="failed")&&(o="failed");let r,s=M(n.message);return s?r=s:o==="finished"?r=M(t.finished_message)||`Finished ${e}`:o==="failed"?r=`Failed: ${e}`:r=M(t.running_message)||`Running ${e}...`,jsxs("div",{className:"text-sm font-medium flex items-center gap-2",children:[jsx(at,{status:o}),r]})}function Ge({step:t,ContentComponent:e}){if(M(t.user_output_visibility)!=="visible")return null;let n=M(t.action_type);return jsxs(Fragment,{children:[n!=="bot.invoke"&&n!=="invoke_bot"&&jsx(Je,{step:t}),jsx(At,{eventsByID:t.eventsByID,ContentComponent:e})]})}function We({event:t,ContentComponent:e}){let n=Q(),o=e??n?.ContentComponent;if(!t)return null;switch(t.type){case "output":return t.Output?jsx(Ue,{output:t.Output,ContentComponent:o}):null;case "step":return t.Step?jsx(Ge,{step:t.Step,ContentComponent:o}):null;default:return null}}function At({eventsByID:t,ContentComponent:e}){return jsx(Fragment,{children:Object.values(t).map(n=>jsx(We,{event:n,ContentComponent:e},n.id))})}function Pa(){return t=>{let e=[];visit(t,"code",(n,o,r)=>{let s=n;(!s.value||s.value.trim()==="")&&r&&typeof o=="number"&&e.push({parent:r,index:o});}),visit(t,"text",(n,o,r)=>{let a=n.value?.trim();a&&/^```[a-zA-Z]*$/.test(a)&&r&&typeof o=="number"&&e.push({parent:r,index:o});}),e.sort((n,o)=>o.index-n.index).forEach(({parent:n,index:o})=>{n.children.splice(o,1);});}}function R({content:t,className:e}){return !t||typeof t!="string"||!t.length?null:jsx("div",{className:X("prose dark:prose-invert leading-tight",e),children:jsx(Ra,{remarkPlugins:[Aa,Pa],children:t})})}function _e({content:t,className:e}){return t?.length?jsx(R,{content:t,className:e||"max-w-4xl w-full leading-normal"}):null}function Ma(t){switch(t){case "muted":return "text-gray-500";case "error":return "text-red-500";case "warning":return "text-yellow-600";case "success":return "text-green-600";default:return ""}}function yt({content:t}){let e=useMemo(()=>t==null?null:typeof t=="object"?t:typeof t=="string"?{_raw:t}:t,[t]);if(e===null)return null;if(typeof e=="object"&&"message"in e&&typeof e.message=="string"){let n=e;return jsx("p",{className:Ma(n.style),children:n.message})}return typeof e=="object"&&"_raw"in e?jsx("pre",{className:"bg-gray-100 dark:bg-gray-800 p-3 rounded overflow-x-auto text-sm whitespace-pre-wrap",children:e._raw}):null}function ze({config:t,data:e,className:n,errorClassName:o,emptyClassName:r}){let s=useMemo(()=>!t?.chart_type||!t?.chart_title||!t?.series?.length||!t?.y_axes?.length?null:{chartType:t.chart_type,title:t.chart_title,xAxis:{label:t.x_axis.axis_label,key:t.x_axis.key,maxValue:t.x_axis.max_value,minValue:t.x_axis.min_value,type:t.x_axis.value_type,format:t.x_axis.format},yAxes:t.y_axes.map(l=>({label:l.axis_label,key:l.key,maxValue:l.max_value,minValue:l.min_value,type:l.value_type,format:l.format})),series:t.series.map(l=>({key:l.key,name:l.series_name,color:l.color,axisIndex:l.axis_index,filters:l.filters})),dataReduction:t.data_reduction,stacked:t.stacked,sort:t.sort},[t]);if(!s)return jsx("div",{className:o||"text-red-500",children:"Invalid chart configuration"});if(!e||e.length===0)return jsx("div",{className:r||"text-gray-500",children:"No data available for chart"});let a=null;switch(s.chartType){case "bar":case "histogram":a=Tt;break;case "line":a=Gt;break;case "pie":a=Wt;break;case "scatter":a=qt;break;case "heatmap":a=zt;break}if(!a)return jsxs("div",{className:o||"text-red-500",children:["Unsupported chart type: ",s.chartType]});let i={[s.xAxis.key]:{label:s.xAxis.label,format:s.xAxis.format,type:s.xAxis.type},...s.series.reduce((l,u)=>(l[u.key]={label:u.name,color:u.color},l),{})},c={chartType:s.chartType,xAxis:s.xAxis,yAxes:s.yAxes,series:s.series};return jsx("div",{className:n||"w-full max-w-3xl",children:jsx(a,{title:s.title,data:e,displayConfig:i,dataConfig:c,stacked:s.stacked,disableAnimation:e.length>100})})}function He({title:t,columns:e,data:n,className:o,maxRows:r=100}){let s=useMemo(()=>!n||n.length===0?[]:r?n.slice(0,r):n,[n,r]);return !e||e.length===0?jsx("div",{className:"text-gray-500",children:"No columns defined"}):!n||n.length===0?jsx("div",{className:"text-gray-500",children:"No data available"}):jsxs("div",{className:o||"w-full",children:[t&&jsx("h3",{className:"text-lg font-medium mb-3",children:t}),jsx("div",{className:"relative w-full overflow-x-auto rounded-lg border border-border",children:jsxs("table",{className:"w-full caption-bottom text-sm",children:[jsx("thead",{className:"[&_tr]:border-b",children:jsx("tr",{className:"border-b transition-colors bg-muted/50",children:e.map(a=>jsx("th",{className:"h-10 px-3 text-left align-middle font-medium text-muted-foreground",children:a.column_name},a.key))})}),jsx("tbody",{className:"[&_tr:last-child]:border-0",children:s.map((a,i)=>jsx("tr",{className:"border-b transition-colors hover:bg-muted/50",children:e.map(c=>jsx("td",{className:"p-3 align-middle text-foreground",children:ct(a[c.key],c.format,c.value_type)},c.key))},i))})]})}),n.length>r&&jsxs("p",{className:"text-sm text-muted-foreground mt-2",children:["Showing ",r," of ",n.length," rows"]})]})}var Zt=Symbol("parsing"),et=class{result;stack;key;state;stringBuffer;numberBuffer;quoteBuffer;postQuoteWhitespace;escapeNext;unicode;isInTripleQuotes;constructor(){this.result=void 0,this.stack=[],this.key=void 0,this.state="START",this.stringBuffer="",this.numberBuffer="",this.quoteBuffer="",this.postQuoteWhitespace="",this.escapeNext=false,this.unicode="",this.isInTripleQuotes=false;}reset(){this.result=void 0,this.stack=[],this.key=void 0,this.state="START",this.stringBuffer="",this.numberBuffer="",this.quoteBuffer="",this.postQuoteWhitespace="",this.escapeNext=false,this.unicode="",this.isInTripleQuotes=false;}parse(e){return this.reset(),this.add(e)}add(e){for(let n=0;n<e.length;n++){let o=e[n];this.processChar(o);}return this.result}processChar(e){switch(this.state){case "START":this.handleStartState(e);break;case "IN_OBJECT":this.handleObjectState(e);break;case "IN_ARRAY":this.handleArrayState(e);break;case "IN_OBJECT_KEY":this.handleObjectKeyState(e);break;case "AFTER_KEY":this.handleAfterKeyState(e);break;case "IN_OBJECT_VALUE":this.handleObjectValueState(e);break;case "IN_STRING":this.handleStringState(e);break;case "IN_NUMBER":this.handleNumberState(e);break;case "IN_TRUE":this.handleLiteralState(e,"true");break;case "IN_FALSE":this.handleLiteralState(e,"false");break;case "IN_NULL":this.handleLiteralState(e,"null");break;case "IN_UNICODE":this.handleUnicodeState(e);break}}handleStartState(e){if(e==="{")this.startObject();else if(e==="[")this.startArray();else if(!this.isWhitespace(e))throw this.error("must start with { or [","start")}error(e,n){return new Error(`Invalid JSON in ${n}: ${e}`)}handleObjectState(e){if(e==="}")this.endObject();else if(e==='"')this.state="IN_OBJECT_KEY",this.stringBuffer="",this.key=void 0,this.quoteBuffer="";else if(e===",")this.key=void 0;else if(!this.isWhitespace(e))throw this.error(`Invalid character in object: ${e}`,"object")}handleArrayState(e){e==="]"?this.endArray():e===","||this.isWhitespace(e)||this.startValue(e);}handleObjectKeyState(e){e==='"'?(this.state="AFTER_KEY",this.key=this.stringBuffer,this.stringBuffer=""):(this.stringBuffer+=e,this.updateValueInParent(this.stringBuffer));}handleAfterKeyState(e){e===":"?this.state="IN_OBJECT_VALUE":this.isWhitespace(e)||this.isWhitespace(e)||(this.key=this.key+e);}handleObjectValueState(e){this.isWhitespace(e)||this.startValue(e);}handleStringState(e){if(this.escapeNext){this.handleEscapeChar(e);return}if(e==="\\"){this.quoteBuffer&&this.flushQuoteAsLiteral(),this.escapeNext=true;return}if(e==='"'){this.quoteBuffer&&this.postQuoteWhitespace&&this.flushQuoteAsLiteral(),this.quoteBuffer+='"',this.stringBuffer===""&&this.quoteBuffer==='""'?(this.quoteBuffer="",this.isInTripleQuotes=true):this.stringBuffer&&this.quoteBuffer==='"""'&&(this.quoteBuffer="",this.isInTripleQuotes=false,this.stringBuffer=this.stringBuffer.replace(/^\n+/,"").replace(/\n+$/,"").trim(),this.endString());return}if(this.quoteBuffer){if(this.quoteBuffer==='"'&&!this.isInTripleQuotes){if(this.isJsonStructuralOrQuote(e)){this.quoteBuffer="",this.postQuoteWhitespace="",this.endString(),this.processChar(e);return}if(this.isWhitespace(e)){this.postQuoteWhitespace+=e;return}this.flushQuoteAsLiteral(),this.stringBuffer+=e,this.updateValueInParent(this.stringBuffer);return}if(this.quoteBuffer==='"""'&&this.isInTripleQuotes){this.quoteBuffer="",this.isInTripleQuotes=false,this.endString(),this.processChar(e);return}this.flushQuoteAsLiteral();}this.stringBuffer+=e,this.updateValueInParent(this.stringBuffer);}flushQuoteAsLiteral(){this.stringBuffer+=this.quoteBuffer+this.postQuoteWhitespace,this.quoteBuffer="",this.postQuoteWhitespace="";}isJsonStructuralOrQuote(e){return e===","||e==="}"||e==="]"||e===":"||e==='"'}handleNumberState(e){e.match(/[0-9.eE+-]/)?(this.numberBuffer+=e,this.updateValueInParent(parseFloat(this.numberBuffer))):(this.endNumber(),this.processChar(e));}handleLiteralState(e,n){let o=n[this.stringBuffer.length];if(e===o)this.stringBuffer+=e,this.stringBuffer===n?this.endLiteral(n):this.updateValueInParent(this.stringBuffer);else throw this.error(`Invalid literal: expected ${n}`,"literal")}handleUnicodeState(e){if(this.unicode+=e,this.unicode.length===4){let n=parseInt(this.unicode,16);this.stringBuffer+=String.fromCharCode(n),this.unicode="",this.state="IN_STRING";}}handleEscapeChar(e){switch(e){case '"':case "\\":case "/":this.stringBuffer+=e;break;case "b":this.stringBuffer+="\b";break;case "f":this.stringBuffer+="\f";break;case "n":this.stringBuffer+=`
24
- `;break;case "r":this.stringBuffer+="\r";break;case "t":this.stringBuffer+=" ";break;case "u":this.unicode="",this.state="IN_UNICODE";break;case "`":this.stringBuffer+="`";break;default:throw this.error("Invalid escape character","string")}this.escapeNext=false;}startObject(){let e={[Zt]:true};this.addValueToParent(e),this.stack.push({value:e,key:this.key}),this.key=void 0,this.state="IN_OBJECT";}endObject(){let{value:e,key:n,index:o}=this.stack.pop();if(delete e[Zt],this.stack.length===0)this.state="END",this.result={...e};else {let{value:r}=this.stack[this.stack.length-1];if(Array.isArray(r))o!==void 0?r[o]={...e}:r[r.length-1]={...e};else if(n!==void 0)r[n]={...e};else throw this.error("Key is undefined","object");this.state=this.getParentState();}}startArray(){let e=[];e[Zt]=true,this.addValueToParent(e),this.stack.push({value:e,key:this.key,index:0}),this.key=void 0,this.state="IN_ARRAY";}endArray(){let{value:e,key:n,index:o}=this.stack.pop();if(delete e[Zt],this.stack.length===0)if(this.state="END",Array.isArray(e))this.result=[...e];else throw this.error("Expected array at root level","array");else {let{value:r}=this.stack[this.stack.length-1];Array.isArray(r)?o!==void 0?r[o]=Array.isArray(e)?[...e]:e:r[r.length-1]=Array.isArray(e)?[...e]:e:n!==void 0&&(r[n]=Array.isArray(e)?[...e]:e),this.state=this.getParentState();}}startValue(e){if(e==='"')this.state="IN_STRING",this.stringBuffer="",this.quoteBuffer="",this.addValueToParent("");else if(e.match(/[0-9-]/))this.state="IN_NUMBER",this.numberBuffer=e,this.addValueToParent(parseFloat(e));else if(e==="t")this.state="IN_TRUE",this.stringBuffer="t",this.addValueToParent("t");else if(e==="f")this.state="IN_FALSE",this.stringBuffer="f",this.addValueToParent("f");else if(e==="n")this.state="IN_NULL",this.stringBuffer="n",this.addValueToParent("n");else if(e==="{")this.startObject();else if(e==="[")this.startArray();else throw this.error(`Invalid value start: ${e}`,"value")}endString(){let e=this.stringBuffer;this.stringBuffer="",this.updateValueInParent(e),this.state=this.getParentState();}endNumber(){let e=parseFloat(this.numberBuffer);this.updateValueInParent(e),this.numberBuffer="",this.state=this.getParentState();}endLiteral(e){let n;switch(e){case "true":n=true;break;case "false":n=false;break;case "null":n=null;break;default:throw this.error("Invalid literal","literal")}this.updateValueInParent(n),this.stringBuffer="",this.state=this.getParentState();}addValueToParent(e){if(this.stack.length===0)this.result=e;else {let n=this.stack[this.stack.length-1],{value:o}=n;if(Array.isArray(o))o.push(e),n.index!==void 0&&n.index++;else if(this.state==="IN_OBJECT_KEY")this.key=e,o[this.key]="";else {if(this.key===void 0)throw this.error("Key is undefined","object");o[this.key]=e;}}}updateValueInParent(e){if(this.stack.length===0)this.result=e;else {let n=this.stack[this.stack.length-1],{value:o}=n;if(Array.isArray(o))n.index!==void 0?o[n.index-1]=e:o[o.length-1]=e;else if(this.key!==void 0)o[this.key]=e;else if(this.state!=="IN_OBJECT_KEY")throw this.error("Key is undefined","object")}}isWhitespace(e){return e===" "||e===" "||e===`
25
- `||e==="\r"}getParentState(){return this.stack.length===0?"END":Array.isArray(this.stack[this.stack.length-1].value)?"IN_ARRAY":"IN_OBJECT"}};function $(t){let e=t.trim();if(!e)return null;try{return JSON.parse(e)}catch{let o=e[0];if(o!=="{"&&o!=="[")return null;try{return new et().parse(e)}catch{return null}}}function Pt(t){return t===" "||t===`
26
- `||t===" "||t==="\r"}function so(t,e){if(e>=t.length-1)return "";for(let n=e+1;n<t.length;n++)if(!Pt(t[n]))return t[n];return ""}function ja(t){for(let e=0;e<t.length;e++){let n=t[e];if(n==="{"||n==="["){let o=so(t,e);if(n==="{"&&o==='"'||n==="["&&o==="{")return e}}return -1}function ht(t){if(typeof t!="string")return t;let e=[],n=/```json\s*\n/g,o=n.test(t);if(n.lastIndex=0,o){let r=0,s;for(;(s=n.exec(t))!==null;){let i=t.substring(r,s.index).trim();i&&e.push({content:i,type:"text"});let c=s.index+s[0].length,l=[],u=c;for(;;){let m=t.indexOf("```",u);if(m===-1)break;l.push(m),u=m+3;}let p=null,d=t.length;for(let m of l){let g=t.substring(c,m);try{p=JSON.parse(g),d=m+3;break}catch{try{let f=new et,x=f.parse(g);if(x&&f.state==="END"){p=x,d=m+3;break}}catch{}}}if(!p){let m=t.substring(c);try{let f=new et().parse(m);f&&typeof f=="object"&&(p=f,d=t.length);}catch{}}if(p)e.push({content:p,type:"json"});else {let m=t.substring(s.index,d);e.push({content:m,type:"text"});}r=d,n.lastIndex=d;}let a=t.substring(r).trim();a&&e.push({content:a,type:"text"});}else {let r=ja(t);if(r>=0){let l=t.substring(0,r).trim(),u=t.substring(r);try{let p=JSON.parse(u);return l&&e.push({content:l,type:"text"}),e.push({content:p,type:"json"}),e}catch{let p=u[0]==="{"?"}":"]",d=u.lastIndexOf(p);for(;d>0;)try{let m=JSON.parse(u.substring(0,d+1));l&&e.push({content:l,type:"text"}),e.push({content:m,type:"json"});let g=u.substring(d+1).trim();return g&&e.push({content:g,type:"text"}),e}catch{d=u.lastIndexOf(p,d-1);}}}let s="",a=null,i=false,c=0;for(let l=0;l<t.length;l++){let u=t[l],p=so(t,l);if(!i&&(u==="{"&&p==='"'||u==="["&&p==="{")&&(s.trim()&&e.push({content:s.trim(),type:"text"}),i=true,a=new et,s=""),i){let d;try{d=a.add(u);}catch(m){if(console.log("parseMixedJson: currentChunk",s),console.log("parseMixedJson: currentResult",a?.result),console.warn("parseMixedJson: JSON parse error",m),c++,c>3){i=false,a=null,c=0,s+=u;continue}continue}s+=u,a.state==="END"&&(e.push({content:d,type:"json"}),i=false,a=null,s="");}else s+=u;}s.trim()&&e.push({content:s.trim(),type:"text"});}return e}function Ua(t){return t&&typeof t=="object"&&!t[Zt]}function Yt(t){return t&&typeof t=="object"&&t[Zt]===true}function Fa(t){return t.replace(/([a-z0-9])([A-Z])/g,"$1_$2").toLowerCase()}function qn(t,e){if(t&&typeof t=="object"&&e&&typeof e=="object")for(let n of Object.getOwnPropertySymbols(t))e[n]=t[n];}var ao={DataTable:"Table"},io={title:"chart_title",y_axis:"y_axes",table_name:"table_title"};function zn(t){if(t==null||typeof t!="object")return t;if(Array.isArray(t)){let n=t.map(zn);return qn(t,n),n}let e={};for(let[n,o]of Object.entries(t)){let r=Fa(n);io[r]&&(r=io[r]),e[r]=zn(o);}return qn(t,e),e}function Ja(t){if(!t||typeof t!="object")return t;let e=t,n=e._type??e.type;n&&ao[n]&&(n=ao[n]);let o=e.content??e,r=e.content?zn(o):o,s={_type:n,content:r};return qn(t,s),s}function Hn(t){return t.map(Ja)}async function za(t,e,n,o,r){let s=new URLSearchParams({ThreadID:n}),a=`${t}/datasets/${encodeURIComponent(e)}?${s}`,i={};o?i.Authorization=`Bearer ${o}`:r&&(i["X-Erdo-Token"]=r);let c=await fetch(a,{headers:i});if(!c.ok)return null;let l=await c.json();return {id:l.id,name:M(l.name)||"dataset"}}function Ha(t){return t&&/filename="([^"]*)"/.exec(t)?.[1]||null}async function Ka(t,e,n,o,r,s,a){let i=`${t}/datasets/${encodeURIComponent(e)}/download`,c={"Content-Type":"application/json"};s?c.Authorization=`Bearer ${s}`:a&&(c["X-Erdo-Token"]=a);let l=await fetch(i,{method:"POST",headers:c,body:JSON.stringify({thread_id:n||"",query:o||"",resource_key:r||""})});if(!l.ok)throw new Error(`Download failed: ${l.statusText}`);let u=await l.blob(),p=Ha(l.headers.get("content-disposition"))||"dataset";return {blob:u,filename:p}}function Qa(t,e){let n=window.URL.createObjectURL(t),o=document.createElement("a");o.style.display="none",o.href=n,o.download=e,document.body.appendChild(o),o.click(),window.URL.revokeObjectURL(n),document.body.removeChild(o);}function Xt({slug:t,invocationId:e,threadId:n,sqlQuery:o,resourceKey:r,className:s}){let a=Q(),[i,c]=useState(false),[l,u]=useState(null),[p,d]=useState(true),m=n||a?.threadId;useEffect(()=>{if(!t||!m){d(false);return}let f=false;async function x(){try{let b=null;a?.dataFetcher?.getDatasetDetails?b=await a.dataFetcher.getDatasetDetails(t,m):a?.baseUrl&&(b=await za(a.baseUrl,t,m,a.authToken,a.token)),f||u(b);}catch(b){console.error("Failed to fetch dataset details:",b);}finally{f||d(false);}}return x(),()=>{f=true;}},[t,m,a]);let g=useCallback(async f=>{if(f.preventDefault(),!(!l?.id||i)){c(true);try{let x,b;if(a?.dataFetcher?.downloadDataset){x=await a.dataFetcher.downloadDataset(l.id,o,r);let k=l.name||"dataset";b=/\.[a-zA-Z0-9]+$/.test(k)?k:`${k}.csv`;}else if(a?.baseUrl){let k=await Ka(a.baseUrl,l.id,m,o,r,a.authToken,a.token);x=k.blob,b=k.filename;}else throw new Error("No download method available");Qa(x,b);}catch(x){console.error("Download failed:",x);}finally{c(false);}}},[l,i,a,m,o,r]);return p||!l?.id?null:jsxs("a",{href:"#",onClick:g,className:`inline-flex items-center gap-2 text-sm text-muted-foreground hover:text-foreground transition-colors ${s||""}`,children:[jsx(Download,{className:"h-4 w-4"}),i?"Downloading...":"Download",jsx("span",{className:"font-medium",children:l.name||"dataset"})]})}function Zn({node:t,invocationId:e,warningClassName:n}){let o=t.content;if(!o)return null;let r=o.series||[],s=[...new Set(r.map(a=>a.dataset_slug).filter(a=>!!a))];return !o.chart_type||!o.chart_title||!r.length||!o.x_axis||typeof o.x_axis!="object"||!o.y_axes?.length?jsx("p",{className:n||"w-full max-w-4xl text-sm text-muted-foreground",children:"Chart could not be rendered. Please try again."}):e?jsxs("div",{className:"my-4",children:[jsx($e,{chartType:o.chart_type,title:o.chart_title,invocationId:e,datasetSlugs:s,xAxis:{label:o.x_axis.axis_label,key:o.x_axis.key,type:o.x_axis.value_type,format:o.x_axis.format,maxValue:o.x_axis.max_value,minValue:o.x_axis.min_value},yAxes:o.y_axes.map(a=>({label:a.axis_label,key:a.key,type:a.value_type,format:a.format,maxValue:a.max_value,minValue:a.min_value})),series:r.filter(a=>!!a.dataset_slug).map(a=>({name:a.series_name,key:a.key,color:a.color,datasetSlug:a.dataset_slug,sqlQuery:a.sql_query,resourceKey:a.resource_key,axisIndex:a.axis_index,filters:a.filters?.map(i=>({key:i.key,operator:i.operator,value:i.value}))})),dataReduction:o.data_reduction?{strategy:o.data_reduction.strategy,target_points:o.data_reduction.target_points}:void 0,stacked:o.stacked,sort:o.sort?.map(a=>({key:a.key,direction:a.direction}))}),s.length>0&&jsx("div",{className:"flex gap-4 mt-2",children:s.map(a=>jsx(Xt,{slug:a,invocationId:e},a))})]}):jsx("div",{className:n||"my-4 p-4 border border-yellow-200 bg-yellow-50 dark:border-yellow-800 dark:bg-yellow-900/20 rounded text-sm text-yellow-700 dark:text-yellow-300",children:"Chart cannot be displayed: missing invocation ID for data fetching"})}function Yn({node:t,className:e,invocationId:n,warningClassName:o}){let r=t.content;if(!r)return null;let s=r.dataset_slug;return !n||!s?jsxs("div",{className:o||"my-4 p-4 border border-yellow-200 bg-yellow-50 dark:border-yellow-800 dark:bg-yellow-900/20 rounded text-sm text-yellow-700 dark:text-yellow-300",children:["Table cannot be displayed: missing ",n?"dataset slug":"invocation ID"," for data fetching"]}):jsxs("div",{className:"my-4",children:[jsx(je,{title:r.table_title,invocationId:n,datasetSlug:s,sqlQuery:r.sql_query,resourceKey:r.resource_key,columns:r.columns?.map(a=>({name:a.column_name,key:a.key,format:a.format,value_type:a.value_type})),className:e}),jsx("div",{className:"mt-2",children:jsx(Xt,{slug:s,invocationId:n})})]})}function Xn({node:t,className:e}){let n=t.content,o=n?.text??n?.markdown??"";return jsx("div",{className:"my-2",children:jsx(R,{content:o,className:e})})}function tr({node:t,className:e,invocationId:n}){let r=t.content?.dataset_slug;return r?jsx("div",{className:"my-2",children:jsx(Xt,{slug:r,invocationId:n,className:e})}):null}function er({node:t,onSuggestionClick:e,suggestionButtonClassName:n}){let r=t.content?.suggestions||[];return r.length?jsx("div",{className:"flex flex-col gap-2 my-4",children:r.map((s,a)=>jsx("button",{onClick:e?()=>e(s):void 0,disabled:!e,className:n||"text-left px-3 py-2 bg-gray-100 dark:bg-gray-800 rounded hover:bg-gray-200 dark:hover:bg-gray-700 text-sm disabled:opacity-50 disabled:cursor-not-allowed",children:s},a))}):null}var ei={xlsx:FileSpreadsheet,xls:FileSpreadsheet,pptx:Presentation,ppt:Presentation,pdf:FileText,docx:FileText,doc:FileText,png:Image,jpg:Image,jpeg:Image,gif:Image,svg:Image,webp:Image};function ni(t){let e=t.split(".").pop()?.toLowerCase()||"";return ei[e]||File}function ri(t){let e=t.split(".").pop()?.toLowerCase()||"";return {xlsx:"Excel",xls:"Excel",pptx:"PowerPoint",ppt:"PowerPoint",pdf:"PDF",docx:"Word",doc:"Word",png:"Image",jpg:"Image",jpeg:"Image",gif:"Image",svg:"Image",webp:"Image"}[e]||e.toUpperCase()}function oi({file:t,className:e}){let[n,o]=useState(false),r=ni(t.name),s=ri(t.name),a=async()=>{if(!n){o(true);try{if(t.content){let i=atob(t.content),c=new Uint8Array(i.length);for(let d=0;d<i.length;d++)c[d]=i.charCodeAt(d);let l=new Blob([c]),u=URL.createObjectURL(l),p=document.createElement("a");p.href=u,p.download=t.name,document.body.appendChild(p),p.click(),document.body.removeChild(p),URL.revokeObjectURL(u);}else t.url&&window.open(t.url,"_blank");}catch(i){console.error("Download failed:",i);}finally{o(false);}}};return jsxs("div",{className:e||"flex items-center gap-3 p-3 border border-gray-200 dark:border-gray-700 rounded-lg bg-gray-50 dark:bg-gray-800/50 hover:bg-gray-100 dark:hover:bg-gray-800 transition-colors",children:[jsx("div",{className:"flex items-center justify-center w-10 h-10 rounded-lg bg-gray-200 dark:bg-gray-700",children:jsx(r,{className:"w-5 h-5 text-gray-500 dark:text-gray-400"})}),jsxs("div",{className:"flex-1 min-w-0",children:[jsx("div",{className:"font-medium text-sm truncate",children:t.name}),jsxs("div",{className:"text-xs text-gray-500 dark:text-gray-400",children:[s," file"]})]}),jsxs("button",{onClick:a,disabled:n,className:"flex items-center gap-2 px-3 py-1.5 text-sm font-medium border border-gray-300 dark:border-gray-600 rounded-md hover:bg-gray-100 dark:hover:bg-gray-700 disabled:opacity-50 disabled:cursor-not-allowed transition-colors",children:[jsx(Download,{className:"w-4 h-4"}),n?"Downloading...":"Download"]})]})}function nr({node:t,className:e}){let r=(t.content?.files||[]).filter(s=>!s.name.toLowerCase().endsWith(".csv"));return r.length?jsxs("div",{className:"flex flex-col gap-2 my-4",children:[jsx("div",{className:"text-sm text-gray-500 dark:text-gray-400 mb-1",children:"Generated Files"}),r.map(s=>jsx(oi,{file:s,className:e},s.key||s.name))]}):null}var rr={Chart:Zn,Table:Yn,TextMarkdown:Xn,DownloadButton:tr,Suggestions:er,FileDownloads:nr};function ee({nodes:t,className:e,invocationId:n,onSuggestionClick:o,customNodeComponents:r,warningClassName:s,suggestionButtonClassName:a}){if(!t||!Array.isArray(t))return null;let i={...rr,...r},l=Hn(t).filter(u=>u?._type&&i[u._type]);return l.length===0?t.some(p=>Yt(p))||t.length===0?null:jsx("p",{className:"w-full max-w-4xl text-sm text-muted-foreground",children:"The LLM generated an invalid response. Please try again."}):jsx(Fragment,{children:l.map((u,p)=>{let d=u,m=i[d._type];return jsx(m,{node:d,index:p,className:e,invocationId:n,onSuggestionClick:o,warningClassName:s,suggestionButtonClassName:a},`${d._type}-${p}`)})})}var po="erdo-shimmer-style";function Ke(){if(typeof document>"u"||document.getElementById(po))return;let t=document.createElement("style");t.id=po,t.textContent=`
23
+ $bm_rt = comp('system-solid-56-warning').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"}],ip:1,op:54,st:0,ct:1,bm:0}]},{id:"comp_3",nm:"mask-1",fr:60,layers:[{ddd:0,ind:1,ty:3,nm:"NULL 2",sr:1,ks:{o:{a:0,k:0,ix:11},r:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:11,s:[0]},{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:17.25,s:[-30]},{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:23.5,s:[30]},{i:{x:[.16],y:[1]},o:{x:[.333],y:[0]},t:31,s:[-30]},{t:46,s:[0]}],ix:10},p:{a:0,k:[250,284,0],ix:2,l:2},a:{a:0,k:[50,50,0],ix:1,l:2},s:{a:1,k:[{i:{x:[0,0,.2],y:[1,1,1]},o:{x:[.333,.333,.333],y:[0,0,0]},t:0,s:[100,100,100]},{i:{x:[.3,.3,.3],y:[1,1,1]},o:{x:[1,1,.8],y:[0,0,0]},t:16,s:[180,180,100]},{i:{x:[.3,.3,.3],y:[1,1,1]},o:{x:[.7,.7,.7],y:[0,0,0]},t:35,s:[180,180,100]},{t:58,s:[100,100,100]}],ix:6,l:2}},ao:0,ip:0,op:53,st:0,bm:0},{ddd:0,ind:2,ty:4,nm:".primary.design",cl:"primary design",parent:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[50.005,120.173,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:[[0,0],[0,0]],o:[[0,0],[0,0]],v:[[0,0],[0,0]],c:false},ix:2},nm:"Path 1",mn:"ADBE Vector Shape - Group",hd:false},{ty:"st",c:{a:0,k:[1,1,1,1],ix:3},o:{a:0,k:100,ix:4},w:{a:1,k:[{i:{x:[0],y:[1]},o:{x:[.333],y:[0]},t:0,s:[52]},{i:{x:[0],y:[1]},o:{x:[1],y:[0]},t:10,s:[150]},{i:{x:[.833],y:[.833]},o:{x:[1],y:[0]},t:29,s:[150]},{t:53,s:[52]}],ix:5},lc:2,lj:1,ml:10,bm:0,nm:"Stroke 1",mn:"ADBE Vector Graphic - Stroke",hd:false},{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:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:false}],ip:0,op:53,st:-1,ct:1,bm:0},{ddd:0,ind:3,ty:4,nm:".primary.design",cl:"primary design",parent:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[50.004,10.799,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:1},o:{x:.333,y:0},t:0,s:[{i:[[0,0],[0,0]],o:[[0,0],[0,0]],v:[[0,41.667],[0,-41.667]],c:false}]},{i:{x:0,y:1},o:{x:1,y:0},t:10,s:[{i:[[0,0],[0,0]],o:[[0,0],[0,0]],v:[[.004,142.667],[0,-41.667]],c:false}]},{i:{x:.833,y:.833},o:{x:1,y:0},t:29,s:[{i:[[0,0],[0,0]],o:[[0,0],[0,0]],v:[[.004,142.667],[0,-41.667]],c:false}]},{t:53,s:[{i:[[0,0],[0,0]],o:[[0,0],[0,0]],v:[[0,41.667],[0,-41.667]],c:false}]}],ix:2},nm:"Path 1",mn:"ADBE Vector Shape - Group",hd:false},{ty:"st",c:{a:0,k:[1,1,1,1],ix:3},o:{a:0,k:100,ix:4},w:{a:1,k:[{i:{x:[0],y:[1]},o:{x:[.333],y:[0]},t:0,s:[42]},{i:{x:[0],y:[1]},o:{x:[1],y:[0]},t:10,s:[150]},{i:{x:[.833],y:[.833]},o:{x:[1],y:[0]},t:29,s:[150]},{t:53,s:[42]}],ix:5},lc:2,lj:2,bm:0,nm:"Stroke 1",mn:"ADBE Vector Graphic - Stroke",hd:false},{ty:"tr",p:{a:0,k:[0,-14.5],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:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:false}],ip:0,op:53,st:-1,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:131,st:0,bm:0},{ddd:0,ind:3,ty:0,nm:"hover-warning",refId:"comp_2",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:[250,250,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,w:500,h:500,ip:0,op:70,st:0,bm:0}],markers:[{tm:0,cm:"default:hover-warning",dr:60}],props:{}};var Yr=null,Ge=null,qn=new Set;function va(){return Ge||(typeof window>"u"?Promise.resolve():(Ge=import('@lordicon/react').then(t=>{Yr=t.Player,qn.forEach(e=>e());}),Ge))}typeof window<"u"&&va();function wa(t){return qn.add(t),()=>qn.delete(t)}function Ia(){return Yr}function Na(){return null}function Ta(){let[t,e]=useState("#000000");return useEffect(()=>{if(typeof window>"u")return;let n=()=>{let r=document.documentElement.classList.contains("dark");e(r?"#ffffff":"#000000");};n();let o=new MutationObserver(r=>{r.forEach(s=>{s.attributeName==="class"&&n();});});return o.observe(document.documentElement,{attributes:true}),()=>o.disconnect()},[]),t}function it({status:t,color:e,size:n=16,className:o}){let r=useRef(null),s=useRef(null),a=useRef(null),i=useSyncExternalStore(wa,Ia,Na),c=Ta(),l=e||c;return useEffect(()=>{i&&(t==="loading"?r.current?.playFromBeginning?.():t==="finished"?(r.current?.pause?.(),s.current?.playFromBeginning?.()):t==="failed"&&(r.current?.pause?.(),a.current?.playFromBeginning?.()));},[t,i]),i?jsxs("div",{className:o,style:{width:n,height:n,position:"relative"},children:[jsx("div",{style:{position:"absolute",opacity:t==="loading"?1:0,transition:"opacity 0.3s ease-in-out"},children:jsx(i,{ref:r,size:n,icon:Hr,colorize:l,onComplete:()=>r.current?.playFromBeginning?.()})}),jsx("div",{style:{position:"absolute",opacity:t==="finished"?1:0,transition:"opacity 0.3s ease-in-out"},children:jsx(i,{ref:s,size:n,icon:Kr,colorize:l})}),jsx("div",{style:{position:"absolute",opacity:t==="failed"?1:0,transition:"opacity 0.3s ease-in-out"},children:jsx(i,{ref:a,size:n,icon:Qr,colorize:l})})]}):jsx("div",{className:o,style:{width:n,height:n}})}function ve(t,e){return t==="json"||e==="json"||e==="ui_generation"}var Xr=(c=>(c.Pending="pending",c.Running="running",c.Success="success",c.Error="error",c.RequiresInfo="requires info",c.GoToStep="go to step",c.Skipped="skipped",c.Break="break",c))(Xr||{}),to=(s=>(s.Initializing="initializing",s.Running="running",s.ProcessingDatasets="processing datasets",s.Completed="completed",s.Failed="failed",s))(to||{});var eo={Finished:"step finished",Failed:"step error"};function We({step:t}){let e=M(t.action_type)||"step",n=t.currentStatus;if(!n)return null;let o="loading";n.status===eo.Finished||n.status==="completed"?o="finished":(n.status===eo.Failed||n.status==="failed")&&(o="failed");let r,s=M(n.message);return s?r=s:o==="finished"?r=M(t.finished_message)||`Finished ${e}`:o==="failed"?r=`Failed: ${e}`:r=M(t.running_message)||`Running ${e}...`,jsxs("div",{className:"text-sm font-medium flex items-center gap-2",children:[jsx(it,{status:o}),r]})}function qe({step:t,ContentComponent:e}){if(M(t.user_output_visibility)!=="visible")return null;let n=M(t.action_type);return jsxs(Fragment,{children:[n!=="bot.invoke"&&n!=="invoke_bot"&&jsx(We,{step:t}),jsx(Pt,{eventsByID:t.eventsByID,ContentComponent:e})]})}function ze({event:t,ContentComponent:e}){let n=Q(),o=e??n?.ContentComponent;if(!t)return null;switch(t.type){case "output":return t.Output?jsx(Je,{output:t.Output,ContentComponent:o}):null;case "step":return t.Step?jsx(qe,{step:t.Step,ContentComponent:o}):null;default:return null}}function Pt({eventsByID:t,ContentComponent:e}){return jsx(Fragment,{children:Object.values(t).map(n=>jsx(ze,{event:n,ContentComponent:e},n.id))})}function Va(){return t=>{let e=[];visit(t,"code",(n,o,r)=>{let s=n;(!s.value||s.value.trim()==="")&&r&&typeof o=="number"&&e.push({parent:r,index:o});}),visit(t,"text",(n,o,r)=>{let a=n.value?.trim();a&&/^```[a-zA-Z]*$/.test(a)&&r&&typeof o=="number"&&e.push({parent:r,index:o});}),e.sort((n,o)=>o.index-n.index).forEach(({parent:n,index:o})=>{n.children.splice(o,1);});}}function R({content:t,className:e}){return !t||typeof t!="string"||!t.length?null:jsx("div",{className:X("prose dark:prose-invert leading-tight",e),children:jsx(Oa,{remarkPlugins:[Ma,Va],children:t})})}function we({content:t,className:e}){return t?.length?jsx(R,{content:t,className:e||"max-w-4xl w-full leading-normal"}):null}function ja(t){switch(t){case "muted":return "text-gray-500";case "error":return "text-red-500";case "warning":return "text-yellow-600";case "success":return "text-green-600";default:return ""}}function ht({content:t}){let e=useMemo(()=>t==null?null:typeof t=="object"?t:typeof t=="string"?{_raw:t}:t,[t]);if(e===null)return null;if(typeof e=="object"&&"message"in e&&typeof e.message=="string"){let n=e;return jsx("p",{className:ja(n.style),children:n.message})}return typeof e=="object"&&"_raw"in e?jsx("pre",{className:"bg-gray-100 dark:bg-gray-800 p-3 rounded overflow-x-auto text-sm whitespace-pre-wrap",children:e._raw}):null}function Ke({config:t,data:e,className:n,errorClassName:o,emptyClassName:r}){let s=useMemo(()=>!t?.chart_type||!t?.chart_title||!t?.series?.length||!t?.y_axes?.length?null:{chartType:t.chart_type,title:t.chart_title,xAxis:{label:t.x_axis.axis_label,key:t.x_axis.key,maxValue:t.x_axis.max_value,minValue:t.x_axis.min_value,type:t.x_axis.value_type,format:t.x_axis.format},yAxes:t.y_axes.map(l=>({label:l.axis_label,key:l.key,maxValue:l.max_value,minValue:l.min_value,type:l.value_type,format:l.format})),series:t.series.map(l=>({key:l.key,name:l.series_name,color:l.color,axisIndex:l.axis_index,filters:l.filters})),dataReduction:t.data_reduction,stacked:t.stacked,sort:t.sort},[t]);if(!s)return jsx("div",{className:o||"text-red-500",children:"Invalid chart configuration"});if(!e||e.length===0)return jsx("div",{className:r||"text-gray-500",children:"No data available for chart"});let a=null;switch(s.chartType){case "bar":case "histogram":a=Dt;break;case "line":a=zt;break;case "pie":a=Ht;break;case "scatter":a=Kt;break;case "heatmap":a=Qt;break}if(!a)return jsxs("div",{className:o||"text-red-500",children:["Unsupported chart type: ",s.chartType]});let i={[s.xAxis.key]:{label:s.xAxis.label,format:s.xAxis.format,type:s.xAxis.type},...s.series.reduce((l,u)=>(l[u.key]={label:u.name,color:u.color},l),{})},c={chartType:s.chartType,xAxis:s.xAxis,yAxes:s.yAxes,series:s.series};return jsx("div",{className:n||"w-full max-w-3xl",children:jsx(a,{title:s.title,data:e,displayConfig:i,dataConfig:c,stacked:s.stacked,disableAnimation:e.length>100})})}function Qe({title:t,columns:e,data:n,className:o,maxRows:r=100}){let s=useMemo(()=>!n||n.length===0?[]:r?n.slice(0,r):n,[n,r]);return !e||e.length===0?jsx("div",{className:"text-gray-500",children:"No columns defined"}):!n||n.length===0?jsx("div",{className:"text-gray-500",children:"No data available"}):jsxs("div",{className:o||"w-full",children:[t&&jsx("h3",{className:"text-lg font-medium mb-3",children:t}),jsx("div",{className:"relative w-full overflow-x-auto rounded-lg border border-border",children:jsxs("table",{className:"w-full caption-bottom text-sm",children:[jsx("thead",{className:"[&_tr]:border-b",children:jsx("tr",{className:"border-b transition-colors bg-muted/50",children:e.map(a=>jsx("th",{className:"h-10 px-3 text-left align-middle font-medium text-muted-foreground",children:a.column_name},a.key))})}),jsx("tbody",{className:"[&_tr:last-child]:border-0",children:s.map((a,i)=>jsx("tr",{className:"border-b transition-colors hover:bg-muted/50",children:e.map(c=>jsx("td",{className:"p-3 align-middle text-foreground",children:et(a[c.key],c.format,c.value_type)},c.key))},i))})]})}),n.length>r&&jsxs("p",{className:"text-sm text-muted-foreground mt-2",children:["Showing ",r," of ",n.length," rows"]})]})}var Xt=Symbol("parsing"),nt=class{result;stack;key;state;stringBuffer;numberBuffer;quoteBuffer;postQuoteWhitespace;escapeNext;unicode;isInTripleQuotes;constructor(){this.result=void 0,this.stack=[],this.key=void 0,this.state="START",this.stringBuffer="",this.numberBuffer="",this.quoteBuffer="",this.postQuoteWhitespace="",this.escapeNext=false,this.unicode="",this.isInTripleQuotes=false;}reset(){this.result=void 0,this.stack=[],this.key=void 0,this.state="START",this.stringBuffer="",this.numberBuffer="",this.quoteBuffer="",this.postQuoteWhitespace="",this.escapeNext=false,this.unicode="",this.isInTripleQuotes=false;}parse(e){return this.reset(),this.add(e)}add(e){for(let n=0;n<e.length;n++){let o=e[n];this.processChar(o);}return this.result}processChar(e){switch(this.state){case "START":this.handleStartState(e);break;case "IN_OBJECT":this.handleObjectState(e);break;case "IN_ARRAY":this.handleArrayState(e);break;case "IN_OBJECT_KEY":this.handleObjectKeyState(e);break;case "AFTER_KEY":this.handleAfterKeyState(e);break;case "IN_OBJECT_VALUE":this.handleObjectValueState(e);break;case "IN_STRING":this.handleStringState(e);break;case "IN_NUMBER":this.handleNumberState(e);break;case "IN_TRUE":this.handleLiteralState(e,"true");break;case "IN_FALSE":this.handleLiteralState(e,"false");break;case "IN_NULL":this.handleLiteralState(e,"null");break;case "IN_UNICODE":this.handleUnicodeState(e);break}}handleStartState(e){if(e==="{")this.startObject();else if(e==="[")this.startArray();else if(!this.isWhitespace(e))throw this.error("must start with { or [","start")}error(e,n){return new Error(`Invalid JSON in ${n}: ${e}`)}handleObjectState(e){if(e==="}")this.endObject();else if(e==='"')this.state="IN_OBJECT_KEY",this.stringBuffer="",this.key=void 0,this.quoteBuffer="";else if(e===",")this.key=void 0;else if(!this.isWhitespace(e))throw this.error(`Invalid character in object: ${e}`,"object")}handleArrayState(e){e==="]"?this.endArray():e===","||this.isWhitespace(e)||this.startValue(e);}handleObjectKeyState(e){e==='"'?(this.state="AFTER_KEY",this.key=this.stringBuffer,this.stringBuffer=""):(this.stringBuffer+=e,this.updateValueInParent(this.stringBuffer));}handleAfterKeyState(e){e===":"?this.state="IN_OBJECT_VALUE":this.isWhitespace(e)||this.isWhitespace(e)||(this.key=this.key+e);}handleObjectValueState(e){this.isWhitespace(e)||this.startValue(e);}handleStringState(e){if(this.escapeNext){this.handleEscapeChar(e);return}if(e==="\\"){this.quoteBuffer&&this.flushQuoteAsLiteral(),this.escapeNext=true;return}if(e==='"'){this.quoteBuffer&&this.postQuoteWhitespace&&this.flushQuoteAsLiteral(),this.quoteBuffer+='"',this.stringBuffer===""&&this.quoteBuffer==='""'?(this.quoteBuffer="",this.isInTripleQuotes=true):this.stringBuffer&&this.quoteBuffer==='"""'&&(this.quoteBuffer="",this.isInTripleQuotes=false,this.stringBuffer=this.stringBuffer.replace(/^\n+/,"").replace(/\n+$/,"").trim(),this.endString());return}if(this.quoteBuffer){if(this.quoteBuffer==='"'&&!this.isInTripleQuotes){if(this.isJsonStructuralOrQuote(e)){this.quoteBuffer="",this.postQuoteWhitespace="",this.endString(),this.processChar(e);return}if(this.isWhitespace(e)){this.postQuoteWhitespace+=e;return}this.flushQuoteAsLiteral(),this.stringBuffer+=e,this.updateValueInParent(this.stringBuffer);return}if(this.quoteBuffer==='"""'&&this.isInTripleQuotes){this.quoteBuffer="",this.isInTripleQuotes=false,this.endString(),this.processChar(e);return}this.flushQuoteAsLiteral();}this.stringBuffer+=e,this.updateValueInParent(this.stringBuffer);}flushQuoteAsLiteral(){this.stringBuffer+=this.quoteBuffer+this.postQuoteWhitespace,this.quoteBuffer="",this.postQuoteWhitespace="";}isJsonStructuralOrQuote(e){return e===","||e==="}"||e==="]"||e===":"||e==='"'}handleNumberState(e){e.match(/[0-9.eE+-]/)?(this.numberBuffer+=e,this.updateValueInParent(parseFloat(this.numberBuffer))):(this.endNumber(),this.processChar(e));}handleLiteralState(e,n){let o=n[this.stringBuffer.length];if(e===o)this.stringBuffer+=e,this.stringBuffer===n?this.endLiteral(n):this.updateValueInParent(this.stringBuffer);else throw this.error(`Invalid literal: expected ${n}`,"literal")}handleUnicodeState(e){if(this.unicode+=e,this.unicode.length===4){let n=parseInt(this.unicode,16);this.stringBuffer+=String.fromCharCode(n),this.unicode="",this.state="IN_STRING";}}handleEscapeChar(e){switch(e){case '"':case "\\":case "/":this.stringBuffer+=e;break;case "b":this.stringBuffer+="\b";break;case "f":this.stringBuffer+="\f";break;case "n":this.stringBuffer+=`
24
+ `;break;case "r":this.stringBuffer+="\r";break;case "t":this.stringBuffer+=" ";break;case "u":this.unicode="",this.state="IN_UNICODE";break;case "`":this.stringBuffer+="`";break;default:throw this.error("Invalid escape character","string")}this.escapeNext=false;}startObject(){let e={[Xt]:true};this.addValueToParent(e),this.stack.push({value:e,key:this.key}),this.key=void 0,this.state="IN_OBJECT";}endObject(){let{value:e,key:n,index:o}=this.stack.pop();if(delete e[Xt],this.stack.length===0)this.state="END",this.result={...e};else {let{value:r}=this.stack[this.stack.length-1];if(Array.isArray(r))o!==void 0?r[o]={...e}:r[r.length-1]={...e};else if(n!==void 0)r[n]={...e};else throw this.error("Key is undefined","object");this.state=this.getParentState();}}startArray(){let e=[];e[Xt]=true,this.addValueToParent(e),this.stack.push({value:e,key:this.key,index:0}),this.key=void 0,this.state="IN_ARRAY";}endArray(){let{value:e,key:n,index:o}=this.stack.pop();if(delete e[Xt],this.stack.length===0)if(this.state="END",Array.isArray(e))this.result=[...e];else throw this.error("Expected array at root level","array");else {let{value:r}=this.stack[this.stack.length-1];Array.isArray(r)?o!==void 0?r[o]=Array.isArray(e)?[...e]:e:r[r.length-1]=Array.isArray(e)?[...e]:e:n!==void 0&&(r[n]=Array.isArray(e)?[...e]:e),this.state=this.getParentState();}}startValue(e){if(e==='"')this.state="IN_STRING",this.stringBuffer="",this.quoteBuffer="",this.addValueToParent("");else if(e.match(/[0-9-]/))this.state="IN_NUMBER",this.numberBuffer=e,this.addValueToParent(parseFloat(e));else if(e==="t")this.state="IN_TRUE",this.stringBuffer="t",this.addValueToParent("t");else if(e==="f")this.state="IN_FALSE",this.stringBuffer="f",this.addValueToParent("f");else if(e==="n")this.state="IN_NULL",this.stringBuffer="n",this.addValueToParent("n");else if(e==="{")this.startObject();else if(e==="[")this.startArray();else throw this.error(`Invalid value start: ${e}`,"value")}endString(){let e=this.stringBuffer;this.stringBuffer="",this.updateValueInParent(e),this.state=this.getParentState();}endNumber(){let e=parseFloat(this.numberBuffer);this.updateValueInParent(e),this.numberBuffer="",this.state=this.getParentState();}endLiteral(e){let n;switch(e){case "true":n=true;break;case "false":n=false;break;case "null":n=null;break;default:throw this.error("Invalid literal","literal")}this.updateValueInParent(n),this.stringBuffer="",this.state=this.getParentState();}addValueToParent(e){if(this.stack.length===0)this.result=e;else {let n=this.stack[this.stack.length-1],{value:o}=n;if(Array.isArray(o))o.push(e),n.index!==void 0&&n.index++;else if(this.state==="IN_OBJECT_KEY")this.key=e,o[this.key]="";else {if(this.key===void 0)throw this.error("Key is undefined","object");o[this.key]=e;}}}updateValueInParent(e){if(this.stack.length===0)this.result=e;else {let n=this.stack[this.stack.length-1],{value:o}=n;if(Array.isArray(o))n.index!==void 0?o[n.index-1]=e:o[o.length-1]=e;else if(this.key!==void 0)o[this.key]=e;else if(this.state!=="IN_OBJECT_KEY")throw this.error("Key is undefined","object")}}isWhitespace(e){return e===" "||e===" "||e===`
25
+ `||e==="\r"}getParentState(){return this.stack.length===0?"END":Array.isArray(this.stack[this.stack.length-1].value)?"IN_ARRAY":"IN_OBJECT"}};function $(t){let e=t.trim();if(!e)return null;try{return JSON.parse(e)}catch{let o=e[0];if(o!=="{"&&o!=="[")return null;try{return new nt().parse(e)}catch{return null}}}function Bt(t){return t===" "||t===`
26
+ `||t===" "||t==="\r"}function lo(t,e){if(e>=t.length-1)return "";for(let n=e+1;n<t.length;n++)if(!Bt(t[n]))return t[n];return ""}function Ga(t){for(let e=0;e<t.length;e++){let n=t[e];if(n==="{"||n==="["){let o=lo(t,e);if(n==="{"&&o==='"'||n==="["&&o==="{")return e}}return -1}function xt(t){if(typeof t!="string")return t;let e=[],n=/```json\s*\n/g,o=n.test(t);if(n.lastIndex=0,o){let r=0,s;for(;(s=n.exec(t))!==null;){let i=t.substring(r,s.index).trim();i&&e.push({content:i,type:"text"});let c=s.index+s[0].length,l=[],u=c;for(;;){let m=t.indexOf("```",u);if(m===-1)break;l.push(m),u=m+3;}let d=null,p=t.length;for(let m of l){let g=t.substring(c,m);try{d=JSON.parse(g),p=m+3;break}catch{try{let f=new nt,x=f.parse(g);if(x&&f.state==="END"){d=x,p=m+3;break}}catch{}}}if(!d){let m=t.substring(c);try{let f=new nt().parse(m);f&&typeof f=="object"&&(d=f,p=t.length);}catch{}}if(d)e.push({content:d,type:"json"});else {let m=t.substring(s.index,p);e.push({content:m,type:"text"});}r=p,n.lastIndex=p;}let a=t.substring(r).trim();a&&e.push({content:a,type:"text"});}else {let r=Ga(t);if(r>=0){let l=t.substring(0,r).trim(),u=t.substring(r);try{let d=JSON.parse(u);return l&&e.push({content:l,type:"text"}),e.push({content:d,type:"json"}),e}catch{let d=u[0]==="{"?"}":"]",p=u.lastIndexOf(d);for(;p>0;)try{let m=JSON.parse(u.substring(0,p+1));l&&e.push({content:l,type:"text"}),e.push({content:m,type:"json"});let g=u.substring(p+1).trim();return g&&e.push({content:g,type:"text"}),e}catch{p=u.lastIndexOf(d,p-1);}}}let s="",a=null,i=false,c=0;for(let l=0;l<t.length;l++){let u=t[l],d=lo(t,l);if(!i&&(u==="{"&&d==='"'||u==="["&&d==="{")&&(s.trim()&&e.push({content:s.trim(),type:"text"}),i=true,a=new nt,s=""),i){let p;try{p=a.add(u);}catch(m){if(console.log("parseMixedJson: currentChunk",s),console.log("parseMixedJson: currentResult",a?.result),console.warn("parseMixedJson: JSON parse error",m),c++,c>3){i=false,a=null,c=0,s+=u;continue}continue}s+=u,a.state==="END"&&(e.push({content:p,type:"json"}),i=false,a=null,s="");}else s+=u;}s.trim()&&e.push({content:s.trim(),type:"text"});}return e}function Wa(t){return t&&typeof t=="object"&&!t[Xt]}function te(t){return t&&typeof t=="object"&&t[Xt]===true}function qa(t){return t.replace(/([a-z0-9])([A-Z])/g,"$1_$2").toLowerCase()}function Hn(t,e){if(t&&typeof t=="object"&&e&&typeof e=="object")for(let n of Object.getOwnPropertySymbols(t))e[n]=t[n];}var co={DataTable:"Table"},uo={title:"chart_title",y_axis:"y_axes",table_name:"table_title"};function Kn(t){if(t==null||typeof t!="object")return t;if(Array.isArray(t)){let n=t.map(Kn);return Hn(t,n),n}let e={};for(let[n,o]of Object.entries(t)){let r=qa(n);uo[r]&&(r=uo[r]),e[r]=Kn(o);}return Hn(t,e),e}function za(t){if(!t||typeof t!="object")return t;let e=t,n=e._type??e.type;n&&co[n]&&(n=co[n]);let o=e.content??e,r=e.content?Kn(o):o,s={_type:n,content:r};return Hn(t,s),s}function Qn(t){return t.map(za)}async function Za(t,e,n,o,r){let s=new URLSearchParams({ThreadID:n}),a=`${t}/datasets/${encodeURIComponent(e)}?${s}`,i={};o?i.Authorization=`Bearer ${o}`:r&&(i["X-Erdo-Token"]=r);let c=await fetch(a,{headers:i});if(!c.ok)return null;let l=await c.json();return {id:l.id,name:M(l.name)||"dataset"}}function Ya(t){return t&&/filename="([^"]*)"/.exec(t)?.[1]||null}async function Xa(t,e,n,o,r,s,a){let i=`${t}/datasets/${encodeURIComponent(e)}/download`,c={"Content-Type":"application/json"};s?c.Authorization=`Bearer ${s}`:a&&(c["X-Erdo-Token"]=a);let l=await fetch(i,{method:"POST",headers:c,body:JSON.stringify({thread_id:n||"",query:o||"",resource_key:r||""})});if(!l.ok)throw new Error(`Download failed: ${l.statusText}`);let u=await l.blob(),d=Ya(l.headers.get("content-disposition"))||"dataset";return {blob:u,filename:d}}function ti(t,e){let n=window.URL.createObjectURL(t),o=document.createElement("a");o.style.display="none",o.href=n,o.download=e,document.body.appendChild(o),o.click(),window.URL.revokeObjectURL(n),document.body.removeChild(o);}function ee({slug:t,invocationId:e,threadId:n,sqlQuery:o,resourceKey:r,className:s}){let a=Q(),[i,c]=useState(false),[l,u]=useState(null),[d,p]=useState(true),m=n||a?.threadId;useEffect(()=>{if(!t||!m){p(false);return}let f=false;async function x(){try{let b=null;a?.dataFetcher?.getDatasetDetails?b=await a.dataFetcher.getDatasetDetails(t,m):a?.baseUrl&&(b=await Za(a.baseUrl,t,m,a.authToken,a.token)),f||u(b);}catch(b){console.error("Failed to fetch dataset details:",b);}finally{f||p(false);}}return x(),()=>{f=true;}},[t,m,a]);let g=useCallback(async f=>{if(f.preventDefault(),!(!l?.id||i)){c(true);try{let x,b;if(a?.dataFetcher?.downloadDataset){x=await a.dataFetcher.downloadDataset(l.id,o,r);let k=l.name||"dataset";b=/\.[a-zA-Z0-9]+$/.test(k)?k:`${k}.csv`;}else if(a?.baseUrl){let k=await Xa(a.baseUrl,l.id,m,o,r,a.authToken,a.token);x=k.blob,b=k.filename;}else throw new Error("No download method available");ti(x,b);}catch(x){console.error("Download failed:",x);}finally{c(false);}}},[l,i,a,m,o,r]);return d||!l?.id?null:jsxs("a",{href:"#",onClick:g,className:`inline-flex items-center gap-2 text-sm text-muted-foreground hover:text-foreground transition-colors ${s||""}`,children:[jsx(Download,{className:"h-4 w-4"}),i?"Downloading...":"Download",jsx("span",{className:"font-medium",children:l.name||"dataset"})]})}function Xn({node:t,invocationId:e,warningClassName:n}){let o=t.content;if(!o)return null;let r=o.series||[],s=[...new Set(r.map(a=>a.dataset_slug).filter(a=>!!a))];return !o.chart_type||!o.chart_title||!r.length||!o.x_axis||typeof o.x_axis!="object"||!o.y_axes?.length?jsx("p",{className:n||"w-full max-w-4xl text-sm text-muted-foreground",children:"Chart could not be rendered. Please try again."}):e?jsxs("div",{className:"my-4",children:[jsx(Ue,{chartType:o.chart_type,title:o.chart_title,invocationId:e,datasetSlugs:s,xAxis:{label:o.x_axis.axis_label,key:o.x_axis.key,type:o.x_axis.value_type,format:o.x_axis.format,maxValue:o.x_axis.max_value,minValue:o.x_axis.min_value},yAxes:o.y_axes.map(a=>({label:a.axis_label,key:a.key,type:a.value_type,format:a.format,maxValue:a.max_value,minValue:a.min_value})),series:r.filter(a=>!!a.dataset_slug).map(a=>({name:a.series_name,key:a.key,color:a.color,datasetSlug:a.dataset_slug,sqlQuery:a.sql_query,resourceKey:a.resource_key,axisIndex:a.axis_index,filters:a.filters?.map(i=>({key:i.key,operator:i.operator,value:i.value}))})),dataReduction:o.data_reduction?{strategy:o.data_reduction.strategy,target_points:o.data_reduction.target_points}:void 0,stacked:o.stacked,sort:o.sort?.map(a=>({key:a.key,direction:a.direction}))}),s.length>0&&jsx("div",{className:"flex gap-4 mt-2",children:s.map(a=>jsx(ee,{slug:a,invocationId:e},a))})]}):jsx("div",{className:n||"my-4 p-4 border border-yellow-200 bg-yellow-50 dark:border-yellow-800 dark:bg-yellow-900/20 rounded text-sm text-yellow-700 dark:text-yellow-300",children:"Chart cannot be displayed: missing invocation ID for data fetching"})}function tr({node:t,className:e,invocationId:n,warningClassName:o}){let r=t.content;if(!r)return null;let s=r.dataset_slug;return !n||!s?jsxs("div",{className:o||"my-4 p-4 border border-yellow-200 bg-yellow-50 dark:border-yellow-800 dark:bg-yellow-900/20 rounded text-sm text-yellow-700 dark:text-yellow-300",children:["Table cannot be displayed: missing ",n?"dataset slug":"invocation ID"," for data fetching"]}):jsxs("div",{className:"my-4",children:[jsx(Fe,{title:r.table_title,invocationId:n,datasetSlug:s,sqlQuery:r.sql_query,resourceKey:r.resource_key,columns:r.columns?.map(a=>({name:a.column_name,key:a.key,format:a.format,value_type:a.value_type})),className:e}),jsx("div",{className:"mt-2",children:jsx(ee,{slug:s,invocationId:n})})]})}function er({node:t,className:e}){let n=t.content,o=n?.text??n?.markdown??"";return jsx("div",{className:"my-2",children:jsx(R,{content:o,className:e})})}function nr({node:t,className:e,invocationId:n}){let r=t.content?.dataset_slug;return r?jsx("div",{className:"my-2",children:jsx(ee,{slug:r,invocationId:n,className:e})}):null}function rr({node:t,onSuggestionClick:e,suggestionButtonClassName:n}){let r=t.content?.suggestions||[];return r.length?jsx("div",{className:"flex flex-col gap-2 my-4",children:r.map((s,a)=>jsx("button",{onClick:e?()=>e(s):void 0,disabled:!e,className:n||"text-left px-3 py-2 bg-gray-100 dark:bg-gray-800 rounded hover:bg-gray-200 dark:hover:bg-gray-700 text-sm disabled:opacity-50 disabled:cursor-not-allowed",children:s},a))}):null}var si={xlsx:FileSpreadsheet,xls:FileSpreadsheet,pptx:Presentation,ppt:Presentation,pdf:FileText,docx:FileText,doc:FileText,png:Image,jpg:Image,jpeg:Image,gif:Image,svg:Image,webp:Image};function ai(t){let e=t.split(".").pop()?.toLowerCase()||"";return si[e]||File}function ii(t){let e=t.split(".").pop()?.toLowerCase()||"";return {xlsx:"Excel",xls:"Excel",pptx:"PowerPoint",ppt:"PowerPoint",pdf:"PDF",docx:"Word",doc:"Word",png:"Image",jpg:"Image",jpeg:"Image",gif:"Image",svg:"Image",webp:"Image"}[e]||e.toUpperCase()}function li({file:t,className:e}){let[n,o]=useState(false),r=ai(t.name),s=ii(t.name),a=async()=>{if(!n){o(true);try{if(t.content){let i=atob(t.content),c=new Uint8Array(i.length);for(let p=0;p<i.length;p++)c[p]=i.charCodeAt(p);let l=new Blob([c]),u=URL.createObjectURL(l),d=document.createElement("a");d.href=u,d.download=t.name,document.body.appendChild(d),d.click(),document.body.removeChild(d),URL.revokeObjectURL(u);}else t.url&&window.open(t.url,"_blank");}catch(i){console.error("Download failed:",i);}finally{o(false);}}};return jsxs("div",{className:e||"flex items-center gap-3 p-3 border border-gray-200 dark:border-gray-700 rounded-lg bg-gray-50 dark:bg-gray-800/50 hover:bg-gray-100 dark:hover:bg-gray-800 transition-colors",children:[jsx("div",{className:"flex items-center justify-center w-10 h-10 rounded-lg bg-gray-200 dark:bg-gray-700",children:jsx(r,{className:"w-5 h-5 text-gray-500 dark:text-gray-400"})}),jsxs("div",{className:"flex-1 min-w-0",children:[jsx("div",{className:"font-medium text-sm truncate",children:t.name}),jsxs("div",{className:"text-xs text-gray-500 dark:text-gray-400",children:[s," file"]})]}),jsxs("button",{onClick:a,disabled:n,className:"flex items-center gap-2 px-3 py-1.5 text-sm font-medium border border-gray-300 dark:border-gray-600 rounded-md hover:bg-gray-100 dark:hover:bg-gray-700 disabled:opacity-50 disabled:cursor-not-allowed transition-colors",children:[jsx(Download,{className:"w-4 h-4"}),n?"Downloading...":"Download"]})]})}function or({node:t,className:e}){let r=(t.content?.files||[]).filter(s=>!s.name.toLowerCase().endsWith(".csv"));return r.length?jsxs("div",{className:"flex flex-col gap-2 my-4",children:[jsx("div",{className:"text-sm text-gray-500 dark:text-gray-400 mb-1",children:"Generated Files"}),r.map(s=>jsx(li,{file:s,className:e},s.key||s.name))]}):null}var sr={Chart:Xn,Table:tr,TextMarkdown:er,DownloadButton:nr,Suggestions:rr,FileDownloads:or};function re({nodes:t,className:e,invocationId:n,onSuggestionClick:o,customNodeComponents:r,warningClassName:s,suggestionButtonClassName:a}){if(!t||!Array.isArray(t))return null;let i={...sr,...r},l=Qn(t).filter(u=>u?._type&&i[u._type]);return l.length===0?t.some(d=>te(d))||t.length===0?null:jsx("p",{className:"w-full max-w-4xl text-sm text-muted-foreground",children:"The LLM generated an invalid response. Please try again."}):jsx(Fragment,{children:l.map((u,d)=>{let p=u,m=i[p._type];return jsx(m,{node:p,index:d,className:e,invocationId:n,onSuggestionClick:o,warningClassName:s,suggestionButtonClassName:a},`${p._type}-${d}`)})})}var go="erdo-shimmer-style";function Ze(){if(typeof document>"u"||document.getElementById(go))return;let t=document.createElement("style");t.id=go,t.textContent=`
27
27
  @keyframes erdo-shimmer {
28
28
  0% {
29
29
  background-position: 200% center;
@@ -47,6 +47,6 @@ $bm_rt = comp('system-solid-56-warning').layer('control').effect('primary')('Col
47
47
  background-clip: text;
48
48
  color: transparent;
49
49
  }
50
- `,document.head.appendChild(t);}function ne({item:t,className:e}){let[n,o]=useState(false);useEffect(()=>{Ke();},[]);let r=t.content_type==="redacted_thinking",s="",a=false;if(typeof t.content=="string")s=t.content;else if(t.content&&typeof t.content=="object")if(r)s=t.content.data||"Some of Claude's internal reasoning has been automatically encrypted for safety reasons. This doesn't affect the quality of responses.";else {let p=t.content;s=p.thinking||"",a=typeof p.signature=="string"&&p.signature.length>0;}let i=typeof t.state=="string"?t.state:"",l=(i==="in_progress"||i==="streaming"||i==="running")&&!a;return jsxs("div",{className:e,children:[jsxs("button",{onClick:()=>o(!n),className:"inline-flex items-center gap-1.5 text-left",children:[n?jsx(ChevronDown,{className:"h-3.5 w-3.5 text-muted-foreground/70"}):jsx(ChevronRight,{className:"h-3.5 w-3.5 text-muted-foreground/70"}),jsx("span",{className:`text-sm ${l?"erdo-shimmer":"text-muted-foreground hover:text-foreground/70 transition-colors"}`,children:r?"Encrypted thinking":"Thinking"})]}),n&&jsx("div",{className:"mt-1 pl-5 text-sm text-muted-foreground",children:s?jsx(R,{content:s,className:"text-sm text-muted-foreground [&_*]:text-muted-foreground"}):l?"Thinking...":""})]})}function ui(t){try{return JSON.parse(t)}catch{return t}}function di(t){if(!t)return "";try{return new Date(t).toLocaleTimeString([],{hour:"2-digit",minute:"2-digit",second:"2-digit"})}catch{return ""}}function or({log:t}){let e=typeof t.message=="string"?ui(t.message):t.message,n=di(t.timestamp),o="text-xs font-mono py-0.5 px-1.5 rounded flex items-start",r="";switch(t.level){case "error":o+=" bg-red-50/50 dark:bg-red-950/30 text-red-600 dark:text-red-400 border-l-2 border-red-400 dark:border-red-600",r="text-red-500 dark:text-red-400";break;case "requires_info":o+=" bg-yellow-50/50 dark:bg-yellow-950/30 text-yellow-600 dark:text-yellow-400 border-l-2 border-yellow-400 dark:border-yellow-600",r="text-yellow-500 dark:text-yellow-400";break;default:o+=" bg-blue-50/40 dark:bg-blue-900/20 text-blue-500/90 dark:text-blue-300/80 border-l-2 border-blue-300 dark:border-blue-600/50",r="text-blue-400 dark:text-blue-400/70";}return jsx("div",{className:"my-0.5",children:jsx("div",{className:o,children:jsxs("div",{className:"flex items-start gap-2",children:[n&&jsx("span",{className:"text-[10px] opacity-60 whitespace-nowrap w-16 flex-shrink-0 pt-0.5",children:n}),t.level==="error"&&jsx("span",{className:"inline-block mr-1 flex-shrink-0",children:jsx("svg",{xmlns:"http://www.w3.org/2000/svg",className:`h-3 w-3 ${r}`,viewBox:"0 0 20 20",fill:"currentColor",children:jsx("path",{fillRule:"evenodd",d:"M10 18a8 8 0 100-16 8 8 0 000 16zM8.28 7.22a.75.75 0 00-1.06 1.06L8.94 10l-1.72 1.72a.75.75 0 101.06 1.06L10 11.06l1.72 1.72a.75.75 0 101.06-1.06L11.06 10l1.72-1.72a.75.75 0 00-1.06-1.06L10 8.94 8.28 7.22z",clipRule:"evenodd"})})}),t.level==="requires_info"&&jsx("span",{className:"inline-block mr-1 flex-shrink-0",children:jsx("svg",{xmlns:"http://www.w3.org/2000/svg",className:`h-3 w-3 ${r}`,viewBox:"0 0 20 20",fill:"currentColor",children:jsx("path",{fillRule:"evenodd",d:"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-8-5a.75.75 0 01.75.75v4.5a.75.75 0 01-1.5 0v-4.5A.75.75 0 0110 5zm0 10a1 1 0 100-2 1 1 0 000 2z",clipRule:"evenodd"})})}),t.level==="info"&&jsx("span",{className:"inline-block mr-1 flex-shrink-0",children:jsx("svg",{xmlns:"http://www.w3.org/2000/svg",className:`h-3 w-3 ${r}`,viewBox:"0 0 20 20",fill:"currentColor",children:jsx("path",{fillRule:"evenodd",d:"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-7-4a1 1 0 11-2 0 1 1 0 012 0zM9 9a.75.75 0 000 1.5h.253a.25.25 0 01.244.304l-.459 2.066A1.75 1.75 0 0010.747 15H11a.75.75 0 000-1.5h-.253a.25.25 0 01-.244-.304l.459-2.066A1.75 1.75 0 009.253 9H9z",clipRule:"evenodd"})})}),jsx("div",{className:"flex-1 break-words whitespace-pre-wrap",children:String(e)})]})})})}function Qe({item:t,className:e}){let n=typeof t.content=="object"&&t.content!==null?t.content:{message:String(t.content)},o={level:n.level||"info",message:n.message||String(t.content),timestamp:n.timestamp};return jsx("div",{className:e,children:jsx(or,{log:o})})}function fi(t){if(!t||typeof t!="object")return null;let e=t;if(Array.isArray(e.results))return e;if(e.result&&typeof e.result=="object"){let n=e.result;if(Array.isArray(n.results))return n}return null}function Ze({item:t,className:e}){let n=fi(t.content);return n?.results?.length?jsx("div",{className:`rounded-lg border border-border/50 overflow-hidden ${e||""}`,children:jsx("div",{className:"divide-y divide-border/30",children:n.results.map(o=>{let r="";try{r=new URL(o.url).hostname.replace(/^www\./,"");}catch{}return jsxs("a",{href:o.url,target:"_blank",rel:"noopener noreferrer",className:"flex items-start gap-3 px-3 py-2 hover:bg-muted/50 transition-colors group",children:[jsxs("div",{className:"flex-1 min-w-0",children:[jsx("div",{className:"text-sm text-foreground/90 group-hover:text-foreground group-hover:underline truncate",children:o.title}),o.description&&jsx("div",{className:"text-xs text-muted-foreground mt-0.5 line-clamp-1",children:o.description})]}),jsxs("div",{className:"flex items-center gap-1 shrink-0 mt-0.5",children:[jsx("span",{className:"text-[10px] text-muted-foreground/60",children:r}),jsx(ExternalLink,{className:"h-3 w-3 text-muted-foreground/40 group-hover:text-muted-foreground"})]})]},o.url)})})}):null}function yi(t){if(!t||typeof t!="object")return null;let e=t;if(typeof e.content=="string")return e;if(e.result&&typeof e.result=="object"){let n=e.result;if(typeof n.content=="string")return n}return null}function hi(t){if(!t||typeof t!="object")return null;let n=t.input;return typeof n?.url=="string"?n.url:null}function Ye({item:t,className:e}){let n=yi(t.content),o=hi(t.content),r=n?.url||o,s=n?.title,a=n?.content,i="";try{r&&(i=new URL(r).hostname.replace(/^www\./,""));}catch{}return !a&&!r?null:jsxs("div",{className:`rounded-lg border border-border/50 overflow-hidden ${e||""}`,children:[r&&jsxs("a",{href:r,target:"_blank",rel:"noopener noreferrer",className:"flex items-center gap-2 px-3 py-2 border-b border-border/30 hover:bg-muted/50 transition-colors group",children:[jsxs("div",{className:"flex-1 min-w-0",children:[jsx("div",{className:"text-sm text-foreground/90 group-hover:text-foreground truncate",children:s?.trim()||i||r}),s&&i&&jsx("div",{className:"text-[10px] text-muted-foreground/60 mt-0.5",children:i})]}),jsx(ExternalLink,{className:"h-3.5 w-3.5 shrink-0 text-muted-foreground/40 group-hover:text-muted-foreground"})]}),a&&jsx("div",{className:"max-h-64 overflow-y-auto px-3 py-2 bg-muted/20",children:jsx(R,{content:a,className:"text-xs"})})]})}var Ei=Prism,St=memo(function({language:e,value:n,defaultOpen:o=false,title:r="View code",closeTitle:s="Hide code",className:a,theme:i="auto"}){let[c,l]=useState(o),[u,p]=useState(false),d=useRef(null);useEffect(()=>{if(!c){let y=d.current;y&&(y.scrollTop=y.scrollHeight);}},[c,n]);let m=useMemo(()=>i!=="auto"?i:typeof window>"u"?"light":document.documentElement.classList.contains("dark")||window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light",[i]),g=useMemo(()=>m==="dark"?oneDark:oneLight,[m]),f=useCallback(async()=>{try{await navigator.clipboard.writeText(n),p(!0),setTimeout(()=>p(!1),2e3);}catch{let y=document.createElement("textarea");y.value=n,document.body.appendChild(y),y.select(),document.execCommand("copy"),document.body.removeChild(y),p(true),setTimeout(()=>p(false),2e3);}},[n]),x=useMemo(()=>({margin:0,width:"100%",background:"transparent",padding:"1rem 0.5rem",fontSize:"0.825rem",maxWidth:"100vw",overflow:"auto"}),[]),b=useMemo(()=>({userSelect:"none",minWidth:"2.5em",paddingRight:"1em",color:"rgb(161 161 170)",opacity:"0.5"}),[]),k=useMemo(()=>({style:{fontFamily:"var(--font-mono, ui-monospace, monospace)",whiteSpace:"pre",wordBreak:"break-word"}}),[]);return jsx(ce.Root,{open:c,onOpenChange:l,className:a,children:jsxs("div",{className:"relative w-full font-sans rounded-lg overflow-hidden border border-zinc-200 dark:border-zinc-800",children:[jsxs("div",{className:"flex items-center justify-between w-full px-4 py-1.5 bg-white/80 dark:bg-zinc-800/80 text-zinc-600 dark:text-zinc-100 backdrop-blur-sm border-b border-zinc-200 dark:border-zinc-800",children:[jsx("span",{className:"text-xs font-medium lowercase text-zinc-400 dark:text-zinc-500",children:e}),jsx("button",{onClick:f,className:"h-6 w-6 flex items-center justify-center rounded-md hover:bg-zinc-100 dark:hover:bg-zinc-700 transition-colors",children:u?jsx(Check,{className:"h-3 w-3 text-green-500"}):jsx(Copy,{className:"h-3 w-3 text-zinc-400 dark:text-zinc-500"})})]}),jsxs("div",{ref:d,className:`${c?"max-h-96":"max-h-[200px]"} overflow-auto relative`,children:[jsx("div",{className:"bg-zinc-50/50 dark:bg-zinc-950/70",children:jsx(Ei,{language:e,style:g,PreTag:"div",showLineNumbers:true,wrapLines:false,wrapLongLines:false,startingLineNumber:1,className:"not-prose",customStyle:x,lineNumberStyle:b,codeTagProps:k,children:n})}),!c&&jsx("div",{className:"absolute bottom-0 inset-x-0 h-24 pointer-events-none bg-gradient-to-t from-zinc-50 dark:from-zinc-950 to-transparent",style:{marginBottom:"1.5rem"}})]}),jsx(ce.Trigger,{className:"absolute bottom-0 inset-x-0 flex items-center gap-2 text-sm text-zinc-400 dark:text-zinc-500 hover:text-zinc-600 dark:hover:text-zinc-300 p-2 justify-start bg-zinc-50/80 dark:bg-zinc-950/80 backdrop-blur-sm border-t border-zinc-200 dark:border-zinc-800 cursor-pointer",children:c?jsxs(Fragment,{children:[jsx(ChevronUp,{className:"h-4 w-4"}),s]}):jsxs(Fragment,{children:[jsx(ChevronDown,{className:"h-4 w-4"}),r]})})]})})});function Di(t){if(typeof t!="object"||t===null||Array.isArray(t))return null;let e=t;return "sql_query"in e||"thinking"in e||"error"in e?{thinking:typeof e.thinking=="string"?e.thinking:void 0,sql_query:typeof e.sql_query=="string"?e.sql_query:void 0,resource_key:typeof e.resource_key=="string"?e.resource_key:void 0,error:typeof e.error=="string"?e.error:void 0}:null}function Ri(t){return Di(t.content)}function tn({item:t,className:e}){let n=Ri(t);if(!n)return null;let{thinking:o,sql_query:r,error:s}=n;return s?jsxs("div",{className:`text-destructive text-sm ${e||""}`,children:[jsx("div",{className:"font-medium",children:"Error"}),jsx("div",{children:s})]}):!r&&!o?null:jsxs("div",{className:`text-foreground whitespace-pre-wrap leading-normal ${e||""}`,children:[o&&jsx("div",{className:"mb-2",children:jsx(R,{content:o,className:"text-sm max-w-none"})}),r&&jsx("div",{className:"mb-2",children:jsx(St,{language:"sql",value:r,defaultOpen:false})})]})}var Pi=500,Bi=300;function se({content:t,className:e}){let[n,o]=useState(false);if(!t||typeof t!="string"||!t.trim())return null;if(t.length<=Pi)return jsx("div",{className:`text-sm text-muted-foreground ${e||""}`,children:jsx(R,{content:t,className:"text-sm max-w-none"})});let s=t.slice(0,Bi).trimEnd()+"...";return jsx("div",{className:`text-sm text-muted-foreground ${e||""}`,children:n?jsxs(Fragment,{children:[jsx(R,{content:t,className:"text-sm max-w-none"}),jsx("button",{onClick:()=>o(false),className:"text-xs text-muted-foreground/70 hover:text-muted-foreground mt-1",children:"Show less"})]}):jsxs(Fragment,{children:[jsx("span",{className:"text-sm",children:s}),jsx("button",{onClick:()=>o(true),className:"text-xs text-muted-foreground/70 hover:text-muted-foreground ml-1",children:"Show more"})]})})}function vt({children:t,defaultOpen:e=false,wrapperType:n="standard",compact:o=false,className:r}){let[s,a]=useState(e),[i,c]=useState(false),l=useRef(null);useEffect(()=>{let d=l.current;!s&&d&&(d.scrollTop=d.scrollHeight);},[s]),useEffect(()=>{let d=l.current;if(!d)return;let m=()=>{c(d.scrollHeight>d.clientHeight);};m();let g=new ResizeObserver(m);return g.observe(d),()=>g.disconnect()},[s]);let u={standard:"bg-muted/30 border-border",info:"bg-info/10 border-info/30",warning:"bg-warning/10 border-warning/30"},p={standard:"text-muted-foreground hover:text-foreground",info:"text-info hover:text-info/80",warning:"text-warning hover:text-warning/80"};return jsx("div",{className:`relative text-sm ${o?"":"mb-2"} ${r||""}`,children:jsx(ce.Root,{open:s,onOpenChange:a,className:`border rounded-sm ${u[n]}`,children:jsxs("div",{ref:l,className:`overflow-y-auto ${s?"":"max-h-[200px]"}`,children:[i&&jsx(ce.Trigger,{className:`sticky top-0 text-center text-xs py-1 transition-opacity w-full cursor-pointer ${p[n]}`,children:s?"Less \u2193":"More \u2191"}),jsx("div",{className:`${o?"px-2 py-1":"p-2"} m-0 overflow-x-auto break-words whitespace-pre-wrap`,children:t})]})})})}function ir(t){return new Date(t).toLocaleTimeString("en-US",{hour12:false,hour:"2-digit",minute:"2-digit",second:"2-digit"})}function ae({children:t,timestamp:e}){return jsxs("div",{className:"flex",children:[e&&jsx("span",{className:"text-muted-foreground/60 mr-2 select-none",children:ir(e)}),jsx("span",{className:"text-foreground/80",children:t})]})}function ie({children:t,timestamp:e}){return jsxs("div",{className:"flex",children:[e&&jsx("span",{className:"text-info/60 mr-2 select-none",children:ir(e)}),jsx("span",{className:"text-info/90",children:t})]})}function nn({children:t,timestamp:e}){return jsxs("div",{className:"flex",children:[e&&jsx("span",{className:"text-warning/60 mr-2 select-none",children:ir(e)}),jsx("span",{className:"text-warning/90",children:t})]})}function on({item:t,className:e}){if(!t.content)return null;let n=Mi(t.content)??Vi(t.parsedJson);if(!n)return null;let{step_by_step:o,thinking:r,code:s,warnings:a,error:i}=n;return i?jsx(vt,{wrapperType:"info",className:e,children:jsx(ie,{children:i})}):!o&&!r&&!s&&!a?null:jsxs("div",{className:`text-foreground whitespace-pre-wrap leading-normal ${e||""}`,children:[o&&jsx(R,{content:o,className:"text-sm max-w-none"}),r&&jsx(se,{content:r,state:typeof t.state=="string"?t.state:void 0}),s&&jsx("div",{className:"mb-2",children:jsx(St,{language:"python",value:s,defaultOpen:false})}),a&&jsxs("div",{className:"text-sm text-warning",children:[jsx("div",{className:"font-medium",children:"Warnings"}),jsx(R,{content:a,className:"text-sm max-w-none"})]})]})}function Mi(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)?t:null}function Vi(t){if(!Array.isArray(t))return null;let n=t.find(o=>o.type==="json");return n&&typeof n.content=="object"&&n.content!==null?n.content:null}function So({item:t,className:e}){if(!t.content)return null;let n=Li(t.content,t.parsedJson);if(!n)return null;let o=t.ui_content_type==="code_fix_diagnosis",r=n.thinking||n.diagnosis,s=t.state==="in_progress",a=n.edits?.length??0,i=o?"Diagnosing code issues\u2026":"Rewriting code\u2026",c=o?`Applied ${a} fix${a!==1?"es":""}`:`Rewrote code${n.code?` (${n.code.split(`
51
- `).length} lines)`:""}`;return jsxs("div",{className:`text-sm text-muted-foreground ${e||""}`,children:[jsxs("div",{className:"flex items-center gap-2",children:[jsx(at,{status:s?"loading":"finished",size:14}),jsx("span",{children:s?i:c})]}),r&&jsx("div",{className:"mt-1",children:jsx(se,{content:r,state:t.state})})]})}function Li(t,e){if(typeof t=="object"&&t!==null&&!Array.isArray(t))return t;if(Array.isArray(e)){let n=e.find(o=>o.type==="json");if(n&&typeof n.content=="object"&&n.content!==null)return n.content}return null}function ln({item:t,className:e}){let n=ji(t);if(n.sort((a,i)=>a.index-i.index),n.length===0)return null;let o=n.some(a=>a.level==="error"),r=n.some(a=>a.level==="warning"),s=o?"info":r?"warning":"standard";return jsx("div",{className:`text-foreground leading-normal ${e||""}`,children:jsx(vt,{wrapperType:s,compact:true,children:n.map((a,i)=>jsx($i,{output:a},`${a.level}-${i}`))})})}function $i({output:t}){switch(t.level){case "output":return jsx(ae,{timestamp:t.timestamp,children:t.message});case "error":return jsx(ie,{timestamp:t.timestamp,children:t.message});case "warning":return jsx(nn,{timestamp:t.timestamp,children:t.message});default:return jsx("div",{className:"text-muted-foreground",children:t.message})}}function ji(t){let e=vo(t.content);return e.length>0?e:vo(t.parsedJson)}function vo(t){return an(t).map((n,o)=>Ui(n,o)).filter(n=>n!==null)}function an(t){if(Array.isArray(t))return t.every(Fi)?t.flatMap(e=>an(e.content)):t;if(typeof t=="string"){let e=$(t);return e!=null?an(e):an(ht(t))}if(t&&typeof t=="object"){let e=t;if(Array.isArray(e.outputs))return e.outputs;if(typeof e.message=="string"||typeof e.stdout=="string"||typeof e.stderr=="string"||typeof e.content=="string")return [e]}return []}function Ui(t,e){if(!t||typeof t!="object")return null;let n=t,o=typeof n.message=="string"?n.message:typeof n.stdout=="string"?n.stdout:typeof n.stderr=="string"?n.stderr:typeof n.content=="string"?n.content:"";if(!o.trim())return null;let r=typeof n.level=="string"?n.level:n.stderr?"error":n.warning?"warning":"output";return {level:r==="error"||r==="warning"||r==="output"?r:"output",message:o,timestamp:typeof n.timestamp=="string"?n.timestamp:void 0,index:typeof n.index=="number"?n.index:e}}function Fi(t){return !!(t&&typeof t=="object"&&"type"in t&&"content"in t)}function Wi(t){if(!t?.result||t.status==="error")return false;let e=t.result;return typeof e=="string"?e.trim()!=="":Array.isArray(e)?e.length>0:typeof e=="object"&&e!==null?Object.keys(e).length>0:true}function qi(t,e,n){if(e?.finished_message)return e.finished_message;if(e?.running_message)return e.running_message;if(!e&&n?.running_message)return n.running_message;let o=t||"tool";return e?`Completed ${o}`:`Running ${o}...`}function le({toolGroup:t,ContentComponent:e,className:n,fallbackClassName:o}){let[r,s]=useState(false),a=Q(),i=e??a?.ContentComponent;useEffect(()=>{Ke();},[]);let c=t.invocation,l=t.result,u=Wi(l),p=c?.name||l?.name,d=qi(p,l,c),m=!l,g=u&&!m;return jsxs("div",{className:n,children:[jsx("span",{role:g?"button":void 0,tabIndex:g?0:void 0,onClick:()=>g&&s(!r),onKeyDown:f=>{g&&(f.key==="Enter"||f.key===" ")&&(f.preventDefault(),s(!r));},className:`text-sm ${m?"erdo-shimmer":g?"text-muted-foreground hover:text-foreground/70 cursor-pointer transition-colors":"text-muted-foreground"}`,children:d}),r&&u&&l&&jsx("div",{className:"mt-1",children:i?jsx(i,{content:{content:l.result,content_type:l.ui_content_type||"json"}}):jsx("pre",{className:o||"text-sm bg-gray-100 dark:bg-gray-800 p-2 rounded overflow-x-auto",children:JSON.stringify(l.result,null,2)})})]})}var Vt={Success:"success",Error:"error",RequiresInfo:"requires info"};function Zi(t){return t?t===Vt.Success?"finished":t===Vt.Error||t===Vt.RequiresInfo?"failed":"loading":"loading"}function No(t){return t?t!==Vt.Success&&t!==Vt.Error&&t!==Vt.RequiresInfo:true}function Yi(t,e){let n=e||"agent",o=M(t?.message);return o||(t?.status===Vt.Success?`Finished ${n}`:`Running ${n}...`)}function un({content:t,botInvocation:e,isLoading:n=false,defaultOpen:o,adminLinkHref:r,adminLinkText:s="Open in Agent Designer",showAdminLink:a=false,onAdminClick:i,onExpand:c,EventsComponent:l,ContentComponent:u,className:p}){let d=()=>o!==void 0?o:No(e?.currentStatus?.status),[m,g]=useState(d),[f,x]=useState(false),b=useRef(null);if(useEffect(()=>{if(e?.currentStatus){let v=e.currentStatus.status;if(b.current!==v&&(b.current=v,!f)){let I=No(v);I&&!m?g(true):!I&&m&&g(false);}}},[e,f,m]),useEffect(()=>{m&&e&&c&&c(t.invocation_id,t.bot_id,t.bot_name);},[m,e,c,t]),n&&!e&&!t.transparent)return jsxs("div",{className:`flex items-center gap-2 text-sm text-muted-foreground ${p||""}`,children:[jsx(at,{status:"loading"}),jsxs("span",{children:["Loading ",t.bot_name,"..."]})]});if(!e)return null;let k=e.eventsByID&&Object.keys(e.eventsByID).length>0;if(t.transparent)return k?l?jsx(l,{eventsByID:e.eventsByID,defaultOpen:true}):jsx(At,{eventsByID:e.eventsByID,ContentComponent:u}):null;let y=Zi(e.currentStatus?.status),h=Yi(e.currentStatus,t.bot_name),S=v=>{g(v),x(true);},_=v=>{i&&(v.preventDefault(),i(t.invocation_id,t.bot_id));};return jsxs(ce.Root,{open:m,onOpenChange:S,className:`relative w-full max-w-4xl space-y-2 leading-normal bot-invocation-content ${p||""}`,children:[jsxs("div",{className:"flex items-center justify-between",children:[jsxs(ce.Trigger,{className:"flex items-center gap-2 text-sm text-muted-foreground hover:text-foreground transition-colors cursor-pointer",children:[jsxs("div",{className:"text-sm font-medium flex items-center gap-2",children:[jsx(at,{status:y}),h]}),jsx(ChevronDown,{className:`h-4 w-4 transition-transform duration-200 ${m?"transform rotate-180":""}`})]}),a&&(r||i)&&jsxs("a",{href:r||"#",onClick:i?_:void 0,target:r?"_blank":void 0,rel:r?"noopener noreferrer":void 0,className:"flex items-center gap-1 text-sm text-muted-foreground hover:text-foreground transition-colors",children:[s,jsx(ArrowUpRight,{className:"h-3.5 w-3.5"})]})]}),jsx(ce.Content,{children:jsx("div",{className:"space-y-2 max-w-3xl",children:k?l?jsx(l,{eventsByID:e.eventsByID,defaultOpen:m}):jsx(At,{eventsByID:e.eventsByID,ContentComponent:u}):jsx("span",{className:"text-sm text-muted-foreground",children:"No events to display"})})})]})}function To({content:t,isSearching:e=false,className:n}){let o=[];Array.isArray(t)?o=t:typeof t=="object"&&t!==null&&"q"in t?o=t.q:typeof t=="string"&&(o=[t]);let r=o.filter(s=>s&&typeof s=="string"&&s.trim()!=="");return r.length===0?null:jsx("div",{className:`flex flex-wrap gap-2 ${n||""}`,children:r.map(s=>jsxs("div",{className:"inline-flex items-center px-3 py-1.5 rounded-lg text-sm bg-muted/50 text-foreground border border-border/30",children:[e?jsx(Loader2,{className:"h-3 w-3 mr-2 text-muted-foreground flex-shrink-0 animate-spin"}):jsx(Search,{className:"h-3 w-3 mr-2 text-muted-foreground flex-shrink-0"}),jsx("span",{className:"line-clamp-1",children:s})]},s))})}function Eo({content:t,isSearching:e=false,className:n}){let o=[];if(Array.isArray(t))o=t;else if(typeof t=="object"&&t!==null&&"integration_queries"in t)o=t.integration_queries;else if(typeof t=="string")return null;let r=o.filter(s=>s&&s.query&&typeof s.query=="string"&&s.query.trim()!=="");return r.length===0?null:jsx("div",{className:`flex flex-wrap gap-2 ${n||""}`,children:r.map(s=>jsxs("div",{className:"inline-flex items-center px-3 py-1.5 rounded-lg text-sm bg-muted/50 text-foreground border border-border/30",children:[e?jsx(Loader2,{className:"h-3 w-3 mr-2 text-muted-foreground flex-shrink-0 animate-spin"}):jsx(Search,{className:"h-3 w-3 mr-2 text-muted-foreground flex-shrink-0"}),jsx("span",{className:"line-clamp-1",children:s.query})]},`${s.integration_config_id}-${s.resource_id}-${s.query}`))})}var dl=120;function pl(t,e){return !t||t.length<=e?t:t.slice(0,e).trimEnd()+"..."}function ml(t){switch(t){case "snippet":return Code;case "learning":return Brain;case "error":return AlertCircle;case "limitation":return AlertCircle;case "optimization":return Zap;default:return Lightbulb}}function fl(t){switch(t){case "snippet":return "Snippet";case "learning":return "Learning";case "error":return "Error";case "limitation":return "Limitation";case "optimization":return "Optimization";default:return t}}function gl({memory:t}){let[e,n]=useState(false),o=ml(t.type),r=fl(t.type),s=t.type==="snippet",a=pl(t.description||"",dl),i=t.content&&typeof t.content=="string"&&t.content.trim()!=="",c=s&&i;return jsxs(ce.Root,{open:e,onOpenChange:n,className:"border border-border/50 rounded-lg overflow-hidden",children:[jsxs(ce.Trigger,{className:`w-full text-left p-3 flex items-start gap-3 ${c?"hover:bg-muted/50 cursor-pointer":"cursor-default"}`,disabled:!c,children:[jsx("div",{className:"flex-shrink-0 mt-0.5",children:jsx(o,{className:"h-4 w-4 text-muted-foreground"})}),jsxs("div",{className:"flex-1 min-w-0",children:[jsxs("div",{className:"flex items-center gap-2 mb-1",children:[jsx("span",{className:"text-xs font-medium text-muted-foreground uppercase tracking-wide",children:r}),t.tags&&t.tags.length>0&&jsxs("div",{className:"flex gap-1 flex-wrap",children:[t.tags.slice(0,3).map((l,u)=>jsx("span",{className:"text-xs px-1.5 py-0.5 bg-muted rounded text-muted-foreground",children:l},u)),t.tags.length>3&&jsxs("span",{className:"text-xs text-muted-foreground",children:["+",t.tags.length-3]})]})]}),jsx("p",{className:"text-sm text-foreground",children:s?a:t.description||t.content})]}),c&&jsx(ChevronDown,{className:`h-4 w-4 text-muted-foreground flex-shrink-0 transition-transform duration-200 ${e?"rotate-180":""}`})]}),c&&jsx(ce.Content,{children:jsx("div",{className:"border-t border-border/50 bg-muted/30",children:jsx("pre",{className:"p-3 text-sm overflow-x-auto whitespace-pre-wrap break-words font-mono",children:t.content})})})]})}function mn({content:t,className:e}){let n=Array.isArray(t)?t:t?.memories;return !n||n.length===0?jsx("p",{className:"text-sm text-muted-foreground",children:"No memories found."}):jsx("div",{className:`space-y-2 ${e||""}`,children:n.map(o=>jsx(gl,{memory:o},o.id))})}function lr(){return jsxs("span",{className:"inline-flex gap-1 text-muted-foreground",children:[jsx("span",{className:"animate-bounce",style:{animationDelay:"0ms"},children:"\u25CF"}),jsx("span",{className:"animate-bounce",style:{animationDelay:"150ms"},children:"\u25CF"}),jsx("span",{className:"animate-bounce",style:{animationDelay:"300ms"},children:"\u25CF"})]})}function Bo(){return jsx("div",{className:"flex items-center justify-center py-8",children:jsx(Loader2,{className:"animate-spin text-muted-foreground",size:24})})}function kl(t){if(t.content_type==="bot_invocation"||t.content_type==="bot_invocation_result")return null;if(t.content&&typeof t.content=="object"){let n=t.content,o=n.tool_invocation_content;if(n.action_type==="bot.invoke"||o?.action_type==="bot.invoke")return null}if(t.content_type==="tool_invocation")return "tool_invocation";if(t.content_type==="tool_result")return "tool_result";if(!t.content||typeof t.content!="object")return null;let e=t.content;return "action_type"in e&&"name"in e&&"input"in e&&e.action_type!=="bot.invoke"?"result"in e?"tool_result":"tool_invocation":null}function Lt({content:t,className:e,components:n}){let r=Q()?.onSuggestionClick,s=useMemo(()=>l=>jsx(Lt,{...l,components:n}),[n]);if(!t.content||t.content==="")return null;if(t.content&&typeof t.content=="object"){let l=t.content,u=l.tool_invocation_content;if(l.action_type==="bot.invoke"||u?.action_type==="bot.invoke")return null}let a=kl(t),i;a?i=a:i=M(t.ui_content_type)||t.content_type;let c=n?.[i];if(c)return jsx(c,{content:t,className:e});switch(i){case "text":return jsx(_e,{content:Ro(t),className:e});case "markdown":return jsx(R,{content:Ro(t),className:e});case "thinking":case "redacted_thinking":return jsx(ne,{item:t,className:e});case "json":return jsx(yt,{content:t.content,className:e});case "codegen_json":return jsx(on,{item:t,className:e});case "code_rewrite":case "code_fix_diagnosis":return jsx(So,{item:t,className:e});case "sql_generation":return jsx(tn,{item:t,className:e});case "codeexec_output":return jsx(ln,{item:t,className:e});case "log":return jsx(Qe,{item:t,className:e});case "websearch":case "websearch_output":case "web_search":return jsx(Ze,{item:t,className:e});case "search_queries":return jsx(To,{content:t.content,className:e});case "integration_queries":return jsx(Eo,{content:t.content,className:e});case "memory":return jsx(mn,{content:t.content,className:e});case "webparse":case "webparse_output":case "web_parse":return jsx(Ye,{item:t,className:e});case "tool_group":return jsx(le,{toolGroup:t.content,ContentComponent:s,className:e});case "bot_invocation":{let l=t.content,u=t.botInvocation;return jsx(un,{content:l,botInvocation:u,ContentComponent:s,className:e})}case "chart":case "ui_generation":{let l=t.invocation_id||t.created_by_invocation_id;if(t.chartConfig&&t.chartData)return jsx(ze,{config:t.chartConfig,data:t.chartData,className:e});let u=Ne(t.content);if(u&&Ao(u))return Po(u,e,l,r);let p=Ne(t.parsedJson);return p&&Ao(p)?Po(p,e,l,r):u&&u.length>0||p&&p.length>0?jsx("p",{className:"w-full max-w-4xl text-sm text-muted-foreground",children:"The LLM generated an invalid response. Please try again."}):null}case "table":return t.tableColumns&&t.tableData?jsx(He,{columns:t.tableColumns,data:t.tableData,className:e}):jsx(yt,{content:t.content,className:e});case "tool_invocation":{let l=t.content,u={invocation:{invocation_id:l.id||"",action:l.action_type||"",params:l.input||{},id:l.id||"",name:l.name||"",input:l.input||{},description:l.description,action_type:l.action_type,running_message:l.running_message}};return jsx(le,{toolGroup:u,ContentComponent:s,className:e})}case "tool_result":{let l=t.content,u={invocation:{invocation_id:l.id||"",action:l.action_type||"",params:l.input||{}},result:{invocation_id:l.id||"",result:l.result}},p={...u,invocation:{...u.invocation,id:l.id||"",name:l.name||"",input:l.input||{},action_type:l.action_type,description:l.description},result:{...u.result,id:l.id||"",name:l.name||"",input:l.input||{},result:l.result,status:l.status||"success",action_type:l.action_type,description:l.description,ui_content_type:l.ui_content_type||M(t.ui_content_type),running_message:l.running_message||l.running_status,finished_message:l.finished_message||l.finished_status}};return jsx(le,{toolGroup:p,ContentComponent:s,className:e})}default:return typeof t.content=="string"?jsx(_e,{content:t.content,className:e}):null}}function Ro(t){return typeof t.content=="string"?t.content:""}function Ao(t){return t.some(e=>{if(e.type==="text"){if(typeof e.content!="string")return false;let n=e.content.trim();return !(!n||n.startsWith("{")||n.startsWith("["))}if(e.type==="json"){let n=e.content,o=Oo(n);return o!==void 0&&o.length>0||Yt(n)}return false})}function Oo(t){let e=t?.children??t?.blocks;return Array.isArray(e)?e:void 0}function Ne(t){if(t==null)return null;if(Array.isArray(t))return t.every(o=>o&&typeof o=="object"&&"type"in o&&"content"in o)?t:t.every(o=>o&&typeof o=="object"&&"_type"in o)?[{type:"json",content:{children:t}}]:null;if(typeof t=="object")return [{type:"json",content:t}];if(typeof t=="string"){let e=ht(t);return Ne(e)}return null}function Po(t,e,n,o){return jsx(Fragment,{children:t.map((r,s)=>{if(r.type==="text"){let a=typeof r.content=="string"?r.content:String(r.content);return jsx(R,{content:a,className:e},`${s}-${a.length}`)}if(r.type==="json"){let a=r.content,i=Oo(a);return i?jsx(xt__default.Fragment,{children:jsx(ee,{nodes:i,className:e,invocationId:n,onSuggestionClick:o})},`${s}-${i.length}`):Yt(a)?jsx(lr,{},s):null}return null})})}function _l({result:t,isStreaming:e,className:n,components:o,streamingText:r}){let s=t?Mo(t):[];return r&&s.length===0?jsxs("div",{className:n?`erdo-ui ${n}`:"erdo-ui space-y-4",children:[jsxs("div",{className:"flex items-center gap-2",children:[jsx("div",{className:"animate-pulse w-2 h-2 bg-blue-500 rounded-full"}),jsx("span",{className:"text-sm text-gray-500",children:"Streaming response..."})]}),jsx("div",{className:"border rounded-lg p-4 whitespace-pre-wrap",children:r})]}):s.length===0&&!e?null:jsxs("div",{className:n?`erdo-ui ${n}`:"erdo-ui space-y-4",children:[s.map((a,i)=>jsx("div",{children:jsx(Lt,{content:a,components:o})},a.id||i)),e&&s.length===0&&!r&&jsxs("div",{className:"flex items-center gap-2",children:[jsx("div",{className:"animate-pulse w-2 h-2 bg-blue-500 rounded-full"}),jsx("span",{className:"text-sm text-gray-500",children:"Processing..."})]})]})}function Mo(t){let e=[],n=new Set;if(t.events)for(let o of t.events){let r=o.metadata,s=o.payload;if(r?.user_visibility==="visible"&&s?.status==="success"&&s?.output){let a=s.output;if(a.content&&Array.isArray(a.content))for(let i=0;i<a.content.length;i++){let c=a.content[i],l=c.id||`event-result-${i}`;if(n.has(l))continue;n.add(l);let u=r?.ui_content_type;e.push({id:l,content_type:c.content_type||"text",ui_content_type:u,content:c.content,data:c.data,chartConfig:c.chartConfig,chartData:c.chartData,tableColumns:c.tableColumns,tableData:c.tableData});}}}if(e.length===0&&t.result?.output?.content){let o=t.result.output.content;if(Array.isArray(o))for(let r=0;r<o.length;r++){let s=o[r],a=s.id||`result-${r}`;if(n.has(a))continue;n.add(a);let i=s.ui_content_type;e.push({...s,id:a,ui_content_type:i});}}return e}function Sl(t){if(t.length===0)return t;let e=false;for(let o=0;o<t.length-1;o++){let r=t[o].type,s=t[o+1].type;if(r==="text"&&s==="json"||r==="json"&&s==="text"){e=true;break}}if(!e)return t;let n=[];for(let o=0;o<t.length;o++){let r=t[o],s=o>0?t[o-1]:null,a=o<t.length-1?t[o+1]:null;if(r.type==="text"&&typeof r.content=="string"){let i=r.content,c=false;if(a?.type==="json"){let l=i;i=i.replace(/```(?:json)?\s*$/,""),l!==i&&(c=true);}if(s?.type==="json"){let l=i;i=i.replace(/^\s*```/,""),l!==i&&(c=true);}(!c||i.trim())&&n.push({...r,content:i});}else n.push(r);}return n}var vl=new Set(["=","("]);function wl(t){if(!t||t.length===0)return true;let e=t[t.length-1];return !vl.has(e)}function cr(t,e){if(t.user_visibility!=="visible"||!Ce(t.content_type,t.ui_content_type.String))return typeof t.content=="object"?t:{...t,content:(t.content||"")+e};if(typeof t.content=="object"&&t.content!==null)return t;let n=t.parsedJson?[...t.parsedJson]:[];n.length>0&&(n[n.length-1]={...n[n.length-1]});let o=(t.content||"")+e,r=t._isInJson??false,s=t._charBuffer??"",a=t._jsonParser,i=n.length>0&&t._currentContent?n[n.length-1]:void 0;if(typeof e=="object")return {...t,content:(t.content||"")+JSON.stringify(e),parsedJson:[...n,e],_isInJson:r,_charBuffer:s,_jsonParser:a,_currentContent:void 0};let c=o.length-e.length,l="",u=()=>{l&&(!i||i.type!=="text"?(i={content:l,type:"text"},n.push(i)):i.content=i.content+l,l="");};for(let m=0;m<e.length;m++){let g=e[m];if(!r&&g==="{"){let f=o.slice(0,c+m);if(wl(f)){u(),s="{";continue}}if(s&&Pt(g)){s+=g;continue}if(!r&&s?.match(/^\s*{\s*$/)&&g==='"'){r=true,a=new et;let x={content:a.add("{"),type:"json"};i?.content?typeof i.content=="string"&&i.content.match(/^\s*{$/)?(i=x,n[n.length-1]=x):(typeof i.content=="string"&&(i.content=i.content.replace(/{$/,"")),i=x,n.push(x)):(i=x,n.push(x));}if(r)try{let f=a.add(g);i.content=f,a.state==="END"&&(r=!1,i=void 0);}catch{if(r=false,a=void 0,i&&i.type==="json"){let x=o.lastIndexOf("{"),b=o.slice(x,c+m+1);i.type="text",i.content=b;}continue}else l+=s+g;s="";}u();let p=i,d=Sl(n);return {...t,content:o,parsedJson:d,_isInJson:r,_charBuffer:s,_jsonParser:a,_currentContent:p}}function Te(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function Il(t){if(!Te(t)||!("content"in t))return t;let e=t.content;return e===void 0?t:e}function pe(t,e){let n=Il(e);if((t==="thinking"||t==="redacted_thinking")&&typeof n=="string"){let o=$(n);return Te(o)?{content:o}:{content:n}}if(t==="json"&&typeof n=="string"){let o;try{let s=ht(n);Array.isArray(s)&&(o=s);}catch{}let r=$(n);return r!=null?{content:r,parsedJson:o}:{content:n,parsedJson:o}}return {content:n}}function Nl(t,e){return typeof e=="string"?e:Te(e)?t==="redacted_thinking"?typeof e.data=="string"?e.data:"":typeof e.thinking=="string"?e.thinking:"":""}function gn(t,e,n){let o=pe(t,n);if(t!=="thinking"&&t!=="redacted_thinking")return o;let r=Nl(t,e);return r?t==="redacted_thinking"?Te(o.content)&&typeof o.content.data!="string"?{...o,content:{...o.content,data:r}}:o:Te(o.content)&&typeof o.content.thinking!="string"?{...o,content:{...o.content,thinking:r}}:o:o}function yn(t){let e=t.metadata?.step_id??t.payload?.step_id;return typeof e=="string"?e:""}function ur(t){let e=t.metadata?.message_content_id??t.payload?.message_content_id;return typeof e=="string"?e:""}function Tl(t){let e=t.metadata?.message_id;return typeof e=="string"?e:""}function dr(t,e){if(e.metadata?.content_type==="agent_invocation")return true;let n=Tl(e);return !!(n&&n!==t.messageId)}function El(t){return typeof t=="string"?t:typeof t=="object"&&t!==null&&"content"in t?String(t.content??""):""}function hn(){return {nodes:[],byStepId:{},byContentId:{},childrenByParentId:{},rootStepId:null,messageId:null,isStreaming:false}}function pr(t,e){switch(e.type){case "message created":return Dl(t,e);case "message finished":return Vo(t);case "step_started":return Rl(t,e);case "step_finished":return Al(t,e);case "create message content":return Pl(t,e);case "message content delta":return Bl(t,e);case "message content result":return Ol(t,e);case "status":return Vl(t,e);default:return t}}function Dl(t,e){let n=e.metadata?.message_id??e.payload?.message_id;if(!n)return t;let o=e.payload?.role,r=!!e.metadata?.invocation_id;return o==="assistant"||!o&&r?{...t,messageId:n}:t}function Rl(t,e){let n=e.payload;if(!n?.step_id)return t;let o=t.byStepId[n.step_id],r=n.parent_step_id??null,s={kind:"step",id:n.step_id,parentId:r,type:n.type||o?.type||"agent",name:n.name||o?.name||"",key:n.key??o?.key,status:"running",contentType:n.content_type??o?.contentType,runningStatus:n.running_status??o?.runningStatus,finishedStatus:n.finished_status??o?.finishedStatus,hidden:n.hidden??o?.hidden},i=!r&&!t.rootStepId?n.step_id:t.rootStepId,c=r??"__root__",l=t.childrenByParentId[c]??[],u=l.includes(n.step_id)?t.childrenByParentId:{...t.childrenByParentId,[c]:[...l,n.step_id]},p=o?t.nodes.map(d=>d.kind==="step"&&d.id===n.step_id?s:d):[...t.nodes,s];return {...t,nodes:p,byStepId:{...t.byStepId,[n.step_id]:s},childrenByParentId:u,rootStepId:i,isStreaming:true}}function Al(t,e){let n=e.payload;if(!n?.step_id)return t;let o=t.byStepId[n.step_id];if(!o){let c={kind:"step",id:n.step_id,parentId:null,type:"agent",name:"",status:n.status==="error"?"error":"completed",error:n.error,finishedStatus:n.finished_status};return {...t,nodes:[...t.nodes,c],byStepId:{...t.byStepId,[n.step_id]:c}}}let r={...o,status:n.status==="error"?"error":"completed",error:n.error??o.error,...n.finished_status?{finishedStatus:n.finished_status}:{}},s=n.step_id===t.rootStepId,a=t.nodes.map(c=>c.kind==="step"&&c.id===n.step_id?r:c.kind==="content"&&c.stepId===n.step_id?{...c,state:"completed"}:c),i={...t.byContentId};for(let[c,l]of Object.entries(i))l.stepId===n.step_id&&(i[c]={...l,state:"completed"});return {...t,nodes:a,byStepId:{...t.byStepId,[n.step_id]:r},byContentId:i,isStreaming:s?false:t.isStreaming}}function Pl(t,e){if(dr(t,e))return t;let n=ur(e);if(!n)return t;let o=yn(e)||null,r=typeof e.metadata?.content_type=="string"&&e.metadata.content_type||"text",s=typeof e.metadata?.ui_content_type=="string"&&e.metadata.ui_content_type||r,a=t.byContentId[n];if(a){let c={...a,stepId:a.stepId??o,contentType:a.contentType==="text"?r:a.contentType,uiContentType:a.uiContentType==="text"?s:a.uiContentType};return {...t,nodes:t.nodes.map(l=>l.kind==="content"&&l.id===n?c:l),byContentId:{...t.byContentId,[n]:c}}}let i={kind:"content",id:n,stepId:o,contentType:r,uiContentType:s,text:"",state:"streaming"};return {...t,nodes:[...t.nodes,i],byContentId:{...t.byContentId,[n]:i}}}function Bl(t,e){if(dr(t,e))return t;let n=ur(e),o=El(e.payload);if(!n||!o)return t;let r=t.byContentId[n],s=t;if(!r){let u=yn(e)||null,p=typeof e.metadata?.content_type=="string"&&e.metadata.content_type||"text",d=typeof e.metadata?.ui_content_type=="string"&&e.metadata.ui_content_type||p;r={kind:"content",id:n,stepId:u,contentType:p,uiContentType:d,text:"",state:"streaming"},s={...t,nodes:[...t.nodes,r],byContentId:{...t.byContentId,[n]:r}};}let a=r.text+o,i={},c=r.parsedContent;if(r.contentType==="json"){let u=jl(r,o);c=u.parsedContent,i=u._parserFields;}let l={...r,text:a,...c!==void 0?{parsedContent:c}:{},...i};return {...s,nodes:s.nodes.map(u=>u.kind==="content"&&u.id===n?l:u),byContentId:{...s.byContentId,[n]:l}}}function Ol(t,e){if(dr(t,e))return t;let n=ur(e);if(!n)return t;let o=yn(e)||null,r=typeof e.metadata?.content_type=="string"&&e.metadata.content_type||"text",s=typeof e.metadata?.ui_content_type=="string"&&e.metadata.ui_content_type||r,a=t.byContentId[n],i=a?gn(r,a.result??a.text,e.payload):pe(r,e.payload);if(!a){let l={kind:"content",id:n,stepId:o,contentType:r,uiContentType:s,text:"",result:i.content,...i.parsedJson?{parsedContent:i.parsedJson}:{},state:"completed"};return {...t,nodes:[...t.nodes,l],byContentId:{...t.byContentId,[n]:l}}}let c={...a,result:i.content,...i.parsedJson?{parsedContent:i.parsedJson}:{},state:"completed"};return {...t,nodes:t.nodes.map(l=>l.kind==="content"&&l.id===n?c:l),byContentId:{...t.byContentId,[n]:c}}}function Vo(t){let e=t.nodes.map(o=>o.kind==="content"&&o.state==="streaming"?{...o,state:"completed"}:o),n={...t.byContentId};for(let[o,r]of Object.entries(n))r.state==="streaming"&&(n[o]={...r,state:"completed"});return {...t,nodes:e,byContentId:n,isStreaming:false}}function Ml(t){let e=t.payload;return typeof e=="string"?e:e?.message||e?.status_message||e?.status||""}function Vl(t,e){let n=yn(e)||null,o=Ml(e);if(!o)return t;if(n){let s=t.byStepId[n];return s?Ll(t,s,n,o):$l(t,n,o)}let r={kind:"status",stepId:null,message:o};return {...t,nodes:[...t.nodes,r]}}function Ll(t,e,n,o){let r=e.status==="completed"||e.status==="error"?{...e,finishedStatus:o}:{...e,runningStatus:o};return {...t,nodes:t.nodes.map(s=>s.kind==="step"&&s.id===n?r:s),byStepId:{...t.byStepId,[n]:r}}}function $l(t,e,n){let o=false,r=t.nodes.map(a=>{if(a.kind!=="content"||a.stepId!==e||a.contentType!=="tool_invocation"&&a.contentType!=="tool_result"||!a.result||typeof a.result!="object")return a;o=true;let i=a.state==="completed"?"finished_message":"running_message";return {...a,result:{...a.result,[i]:n}}});if(!o)return t;let s={...t.byContentId};for(let a of r)a.kind==="content"&&a.stepId===e&&t.byContentId[a.id]!==a&&(s[a.id]=a);return {...t,nodes:r,byContentId:s}}function jl(t,e){let n=t,o={content:n._rawText??t.text,user_visibility:"visible",content_type:"json",ui_content_type:{String:t.uiContentType||"json",Valid:true},parsedJson:t.parsedContent??[],_jsonParser:n._jsonParser,_isInJson:n._isInJson,_charBuffer:n._charBuffer??"",_currentContent:n._currentContent},r=cr(o,e);return {parsedContent:r.parsedJson,_parserFields:{_rawText:r.content,_jsonParser:r._jsonParser,_isInJson:r._isInJson,_charBuffer:r._charBuffer,_currentContent:r._currentContent}}}function Ul(t){for(let e of t.nodes){if(e.kind==="step"){let o=t.byStepId[e.id];if(o&&o.type==="tool_call"&&!o.hidden)return true;continue}if(e.kind!=="content")continue;let n=t.byContentId[e.id];if(n&&!(n.contentType==="tool_invocation"||n.contentType==="agent_invocation")&&(n.contentType==="tool_result"&&n.result||n.text||n.parsedContent?.length||n.result))return true}return false}function xn(t,e,n){return e.type!=="llm_call"?false:!(e.parentId===t.rootStepId)&&n.contentType==="text"}function kn(t){if(!t.rootStepId)return [];let e=[],n={};function o(s){if(!s)return false;if(s in n)return n[s];let a=s,i=false,c=[];for(;a;){if(a in n){i=i||n[a];break}c.push(a);let l=t.byStepId[a];if(!l)return false;if(l.hidden){i=true;break}a=l.parentId;}for(let l of c)n[l]=i;return i}function r(s){let a=false;if(s.contentType==="thinking"||s.contentType==="redacted_thinking"){let c=s.result??s.text;e.push({id:s.id,content_type:s.contentType,ui_content_type:s.uiContentType||s.contentType,content:c,state:s.state==="streaming"?"in_progress":"completed"}),a=true;}else if(s.contentType==="json"){if(s.parsedContent)for(let c=0;c<s.parsedContent.length;c++){let l=s.parsedContent[c];if(l.type==="text"&&l.content)e.push({id:`${s.id}-text-${c}`,content_type:"text",ui_content_type:"markdown",content:String(l.content)}),a=true;else if(l.type==="json"&&typeof l.content=="object"){let u=l.content;typeof u.output=="string"?e.push({id:`${s.id}-text-${c}`,content_type:"text",ui_content_type:"markdown",content:u.output}):typeof u.markdown=="string"?e.push({id:`${s.id}-text-${c}`,content_type:"text",ui_content_type:"markdown",content:u.markdown}):e.push({id:`${s.id}-json-${c}`,content_type:"json",ui_content_type:s.uiContentType||"ui_generation",content:u,state:s.state==="streaming"?"in_progress":"completed"}),a=true;}}else if(s.result){let c=typeof s.result=="string"?Fl(s.result):s.result;c&&typeof c=="object"&&(e.push({id:s.id,content_type:"json",ui_content_type:s.uiContentType||"json",content:c,state:s.state==="streaming"?"in_progress":"completed"}),a=true);}}if(a)return;let i=s.result??s.text;i&&e.push({id:s.id,content_type:s.contentType||"text",ui_content_type:s.uiContentType||"markdown",content:i,state:s.state==="streaming"?"in_progress":"completed"});}for(let s of t.nodes){if(s.kind!=="content")continue;let a=t.byContentId[s.id];if(!a||a.contentType==="tool_invocation")continue;if(a.contentType==="tool_result"){a.result&&a.result.action_type!=="bot.invoke"&&e.push({id:a.id,content_type:"tool_result",ui_content_type:a.uiContentType||"tool_result",content:a.result});continue}if(a.stepId===null){r(a);continue}let i=t.byStepId[a.stepId];if(!i){r(a);continue}o(i.id)||i.type!=="tool_call"&&(i.type==="llm_call"&&xn(t,i,a)||r(a));}return e}function Fl(t){return t?$(t):null}function Hl(t){return (t.status==="completed"||t.status==="error")&&t.finishedStatus?t.finishedStatus:t.runningStatus?t.runningStatus:t.name.replace(/_/g," ")}function Kl(t){return t==="running"?"loading":t==="error"?"failed":"finished"}function Ql(t,e){let n=t.byStepId[e];if(!n||n.type!=="agent"||(t.childrenByParentId[e]||[]).some(s=>{let a=t.byStepId[s];return !!a&&a.type==="agent"&&!a.hidden}))return false;for(let s of t.nodes){if(s.kind!=="step")continue;let a=t.byStepId[s.id];if(!a||a.type!=="agent"||a.hidden||a.id===e)continue;let i=a.id;for(;i;){if(i===e)return true;i=t.byStepId[i]?.parentId??null;}}return false}function Zl(t){return t==="info"?"info":t==="warning"?"warning":"standard"}function Yl(t){let e=t.trim();if(!e)return null;let n=new Set;n.add(e);let o=e.match(/^```[a-zA-Z0-9_-]*\n([\s\S]*?)\n```$/);o?.[1]&&n.add(o[1].trim());let r=e.indexOf("{"),s=e.lastIndexOf("}");r>=0&&s>r&&n.add(e.slice(r,s+1).trim());let a=e.indexOf("["),i=e.lastIndexOf("]");a>=0&&i>a&&n.add(e.slice(a,i+1).trim());for(let c of n){if(!c)continue;let l=$(c);if(l!=null)return typeof l=="string"?$(l)??l:l}return null}function Lo(t,e){let n=[],o="",r=[],s=0;function a(){r.length>0&&(n.push({id:`${e}-exec-${s}`,type:"codeexec",content:r.join(`
52
- `),wrapperType:Zl(o)}),s++,r=[]);}for(let i of t){let c=typeof i.message=="string"?i.message:"";if(!c)continue;let l=typeof i.level=="string"?i.level:"output";l!==o&&r.length>0&&a(),o=l,r.push(c);}return a(),n}function $o(t,e,n){let o=[];for(let r of t){if(r.contentType==="tool_invocation"||r.contentType==="tool_result")continue;let s=`${e}-content-${r.id}`,a=r.state==="streaming"?"running":"completed";if(r.contentType==="thinking"||r.contentType==="redacted_thinking"){let i=r.result??r.text;if(!i)continue;o.push({id:s,type:"thinking",contentItem:{id:s,content_type:r.contentType,ui_content_type:r.uiContentType||r.contentType,content:i,state:r.state==="streaming"?"in_progress":"completed"},status:a});continue}if(r.result){let i=r.result;if(typeof r.result=="string")if(r.contentType==="json"){let c=$(r.result);if(c!=null)i=c;else {let l=Yl(r.result);if(l!==null)i=l;else if(!(r.parsedContent&&r.parsedContent.length>0))if(n){o.push({id:s,type:"content",contentItem:{id:s,content_type:r.contentType,ui_content_type:r.uiContentType||"ui_generation",content:r.result,state:r.state==="streaming"?"in_progress":"completed"}});continue}else {o.push({id:s,type:"text",content:r.result});continue}}}else {o.push({id:s,type:"text",content:r.result});continue}if(Array.isArray(i)&&i.length>0){o.push(...Lo(i,s));continue}if(typeof i=="object"&&i!==null){let c=i;if(typeof c.code=="string"){o.push({id:s,type:"codegen",contentData:c,status:a});continue}if(n){o.push({id:s,type:"content",contentItem:{id:s,content_type:r.contentType,ui_content_type:r.uiContentType,content:i,state:r.state==="streaming"?"in_progress":"completed"}});continue}}}if(r.contentType==="json"&&r.parsedContent){if(r.uiContentType==="codeexec_output"){let i=[];for(let c of r.parsedContent)c.type==="json"&&typeof c.content=="object"&&i.push(c.content);o.push(...Lo(i,s));continue}for(let i=0;i<r.parsedContent.length;i++){let c=r.parsedContent[i];if(c.type==="text"&&c.content)o.push({id:`${s}-text-${i}`,type:"text",content:String(c.content)});else if(c.type==="json"&&typeof c.content=="object"){let l=c.content;typeof l.code=="string"?o.push({id:`${s}-codegen-${i}`,type:"codegen",contentData:l,status:a}):typeof l.markdown=="string"?o.push({id:`${s}-text-${i}`,type:"text",content:l.markdown}):typeof l.output=="string"?o.push({id:`${s}-text-${i}`,type:"text",content:l.output}):n&&o.push({id:`${s}-content-${i}`,type:"content",contentItem:{id:`${s}-content-${i}`,content_type:"json",ui_content_type:r.uiContentType||"ui_generation",content:l,state:r.state==="streaming"?"in_progress":"completed"}});}}continue}r.text&&r.contentType!=="json"&&o.push({id:s,type:"text",content:r.text});}return o}function Xl(t,e){if(!t.rootStepId)return [];let n=[],o={},r={},s=new Set,a={},i={},c={},l={};function u(y){if(y!==t.rootStepId)return false;if(y in a)return a[y];let h=Ql(t,y);return a[y]=h,h}function p(y){return r[y]||(r[y]=[]),r[y]}function d(y){if(y)return t.byStepId[y]}function m(y){if(!y)return false;if(y in l)return l[y];let h=y,S=[],_=false;for(;h;){if(h in l){_=_||l[h];break}S.push(h);let v=d(h);if(!v)break;if(v.hidden){_=true;break}h=v.parentId;}for(let v of S)l[v]=_;return _}function g(y){return m(y.id)}for(let y of t.nodes){if(y.kind!=="content")continue;let h=t.byContentId[y.id];if(!h||!h.stepId||h.contentType==="tool_invocation"||h.contentType==="tool_result"||h.contentType==="agent_invocation"||!h.text&&!h.result&&!h.parsedContent?.length)continue;let S=d(h.stepId);if(!S||g(S)||S.type==="llm_call"&&xn(t,S,h))continue;let _=h.stepId;for(;_;){c[_]=true;let v=d(_);if(!v)break;_=v.parentId;}}function f(y){return !!c[y]}function x(y){if(!y)return null;if(y in i)return i[y];let h=y;for(;h;){let S=d(h);if(!S)break;let _=h===t.rootStepId,v=S.type==="agent"&&!S.hidden&&(!_||!u(S.id)),I=S.type==="tool_call"&&!S.hidden;if(v||I)return i[y]=h,h;h=S.parentId;}return i[y]=null,null}function b(y,h){if(h.length===0)return;let S=x(y);if(!S){n.push(...h);return}let _=o[S];if(!_){p(S).push(...h);return}_.children||(_.children=[]),_.children.push(...h);}function k(y,h,S){if(!S||typeof S!="object")return [];let _=S,v=typeof _.result=="object"&&_.result!==null?_.result:_,I=[];typeof v.code=="string"&&v.code.trim()&&I.push({id:`${y}-${h}-codegen`,type:"codegen",contentData:v});let U=typeof v.output=="string"?v.output.trim():"";return U&&I.push({id:`${y}-${h}-output`,type:"codeexec",content:U}),I}for(let y of t.nodes){if(y.kind==="step"){let _=t.byStepId[y.id];if(!_||_.hidden||_.type==="llm_call"||_.id===t.rootStepId&&u(_.id)||s.has(_.id))continue;s.add(_.id);let v={id:_.id,type:"step",label:Hl(_),status:_.status},I=r[_.id];I&&I.length>0&&(v.children=I,delete r[_.id]),o[_.id]=v,b(_.parentId,[v]);continue}if(y.kind!=="content")continue;let h=t.byContentId[y.id];if(!h||h.contentType==="tool_invocation")continue;if(h.stepId===null){n.push(...$o([h],"root",e));continue}let S=t.byStepId[h.stepId];if(S&&!g(S)&&!(S.type==="llm_call"&&xn(t,S,h))){if(S.type==="tool_call"&&h.contentType==="tool_result"){if(f(S.id))continue;b(S.id,k(S.id,h.id,h.result));continue}b(S.id,$o([h],S.id,e));}}return n}function jo({node:t,ContentComponent:e}){let[n,o]=useState(t.status==="running"),r=useRef(t.status==="running");if(useEffect(()=>{r.current&&t.status!=="running"&&o(false),r.current=t.status==="running";},[t.status]),t.type==="text")return jsx(R,{content:t.content||"",className:"max-w-none"});if(t.type==="codegen"&&t.contentData){let{code:i,step_by_step:c,thinking:l}=t.contentData;return jsxs("div",{className:"space-y-2",children:[c&&jsx(R,{content:c,className:"text-sm max-w-none"}),l&&jsx(se,{content:l,state:t.status==="running"?"in_progress":"completed"}),i&&jsx(St,{language:"python",value:i,defaultOpen:false})]})}if(t.type==="codeexec"&&t.content){let i=t.wrapperType||"standard";return jsx(vt,{wrapperType:i,compact:true,children:jsx(ae,{children:t.content})})}if(t.type==="thinking"&&t.contentItem)return jsx(ne,{item:t.contentItem});if(t.type==="content"&&t.contentItem&&e)return jsx(e,{content:t.contentItem});if(t.type==="content"&&t.contentItem)return jsx(Lt,{content:t.contentItem});let s=!!t.children?.length,a=t.status==="running"?"text-foreground":"text-muted-foreground";return jsxs(ce.Root,{open:n,onOpenChange:o,className:"w-full",children:[jsxs(ce.Trigger,{className:`flex items-center justify-between w-full text-sm py-0.5 ${a} ${s?"hover:text-foreground cursor-pointer":"cursor-default"}`,disabled:!s,children:[jsxs("div",{className:"flex items-center gap-2",children:[jsx(at,{status:Kl(t.status),size:14}),jsx("span",{children:t.label})]}),s&&jsx(ChevronDown,{className:`h-4 w-4 shrink-0 text-muted-foreground/50 transition-transform duration-200 ${n?"rotate-180":""}`})]}),s&&jsx(ce.Content,{children:jsx("div",{className:"ml-5 mt-1 flex flex-col gap-1",children:t.children?.map(i=>jsx(jo,{node:i,ContentComponent:e},i.id))})})]})}function Uo({agentState:t,ContentComponent:e,className:n}){if(!t.rootStepId)return null;let o=useMemo(()=>Xl(t,e),[t,e]);return o.length===0?null:jsx("div",{className:`flex flex-col gap-1 ${n||""}`,children:o.map(r=>jsx(jo,{node:r,ContentComponent:e},r.id))})}function Cn(t){if(t.type==="dynamic-tool"&&t.toolName?.startsWith("erdo_"))return t.toolName;if(t.type.startsWith("tool-erdo_"))return t.type.slice(5)}function tc(t){return Cn(t)!==void 0}var ec={erdo_render_chart:"ui",erdo_render_table:"ui",erdo_ask_data_question:"markdown",erdo_list_datasets:"data",erdo_search_datasets:"data",erdo_get_dataset_schema:"data",erdo_gather_dataset_context:"data",erdo_query_data:"data",erdo_run_query:"data",erdo_fetch_dataset_contents:"data",erdo_list_threads:"data",erdo_get_thread_messages:"data"};function mr(t){return ec[t]??"data"}function Fo({part:t,className:e,onSuggestionClick:n}){let o=Cn(t);if(!o)return null;if(["partial-call","call","input-streaming","input-available"].includes(t.state))return jsxs("div",{className:e||"flex items-center gap-2 py-4 text-muted-foreground",children:[jsx(Loader2,{className:"h-4 w-4 animate-spin"}),jsxs("span",{className:"text-sm",children:["Running ",rc(o),"..."]})]});if(t.state==="result"||t.state==="output-available"){let s=t.output??t.result;if(t.errorText)return jsxs("div",{className:e||"flex items-center gap-2 py-2 text-sm text-destructive",children:[jsx(AlertCircle,{className:"h-4 w-4 shrink-0"}),jsx("span",{children:t.errorText})]});if(s&&typeof s=="object"&&"error"in s&&s.error)return jsxs("div",{className:e||"flex items-center gap-2 py-2 text-sm text-destructive",children:[jsx(AlertCircle,{className:"h-4 w-4 shrink-0"}),jsx("span",{children:String(s.error)})]});switch(mr(o)){case "ui":{let i=s?.children;return i&&Array.isArray(i)&&i.length>0?jsx("div",{className:e,children:jsx(ee,{nodes:i,invocationId:t.toolCallId,onSuggestionClick:n})}):s?jsx("div",{className:e,children:jsx(yt,{content:s})}):null}case "markdown":{let i=s?.answer;if(i)return jsx("div",{className:e,children:jsx(R,{content:i})});let c=s?.output;return c?jsx("div",{className:e,children:jsx(R,{content:c})}):s?jsx("div",{className:e,children:jsx(yt,{content:s})}):null}case "data":return s!=null?jsx("div",{className:e,children:jsx(yt,{content:s})}):null}}return t.state==="output-error"?jsxs("div",{className:e||"flex items-center gap-2 py-2 text-sm text-destructive",children:[jsx(AlertCircle,{className:"h-4 w-4 shrink-0"}),jsx("span",{children:t.errorText||"Tool execution failed"})]}):null}function rc(t){return t.replace(/^erdo_/,"").split("_").map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(" ")}function J(t){if(!t)throw new Error("Entity is null");if(!("_type"in t))throw new Error(`Entity ${JSON.stringify(t)} is missing _type`);return t._type}function oc(t){return t.contents.length===0?null:t.contents[t.contents.length-1]||null}function zo(t){return t.contents.length===0?null:t.contents[0]||null}function Jo(t){let e=false,n=t.contents.map(r=>r.state!=="in_progress"?r:(e=true,{...r,state:"completed",updated_at:new Date().toISOString()}));if(!e&&t.state==="completed")return t;let o={...t.contentsByID};for(let r of n)o[r.id]=r;return {...t,state:"completed",contents:n,contentsByID:o}}function hr(t,e){let n=J(t);switch(n){case "message":return t;case "step":let o=t;if(e){let a=o.eventsByID[e]?.Message;return a||Qo({},"",e)}let s=Object.keys(o.eventsByID).reverse();for(let a of s){let i=o.eventsByID[a];if(i&&i.Message)return i.Message}throw new Error("Unable to find message for step");default:throw new Error(`Unable to have messages on entity type ${n}`)}}function sc(t,e){switch(J(t)){case "message_content":return t;case "output_content":return t;case "message":return fe(t,e);case "output":return ge(t,e);case "step":let o=Sn(t,e);return o?ge(o,e):null;default:return null}}function fe(t,e){let n=J(t);switch(n){case "message_content":return t;case "message":let o=hr(t);if(!o)throw new Error("Unable to find message to add content to");return e?o.contentsByID[e]:oc(o);default:throw new Error(`Unable to have message content on entity type ${n}`)}}function ge(t,e){let n=J(t);switch(n){case "output_content":return t;case "output":let o=t;return e?o.contentsByID[e]||null:o.contents.length<=0?null:o.contents[o.contents.length-1]||null;case "step":let s=Sn(t,e);return s?ge(s):null;case "invocation":if(!e)return null;let a=t.eventsByID[e];return !a||!a.Output?null:ge(a.Output);default:throw new Error(`Unable to have output content on entity type ${n}`)}}function xr(t,e){let n=J(t),o=null;switch(n){case "invocation":return t;case "message_content":if(o=t.botInvocation||null,!o)throw new Error("Unable to find bot invocation for message content");if(e&&o.bot_invocation.id!==e)throw new Error("Unable to find bot invocation for message content - mismatched ID");return o;case "message":if(o=zo(t)?.botInvocation||null,!o)throw new Error("Unable to find bot invocation for message");if(e&&o.bot_invocation.id!==e)throw new Error("Unable to find bot invocation for message - mismatched ID");return o;case "output_content":return t.botInvocation||null;default:throw new Error(`Unable to have bot invocation on entity type ${n}`)}}function Sn(t,e){let n=J(t);switch(n){case "output":return t;case "step":let o=t;if(e){let i=o.eventsByID[e]?.Output;if(!i)throw new Error("Unable to find output with id "+e);return i}let s=Object.keys(o.eventsByID).reverse();for(let i of s){let c=o.eventsByID[i];if(c&&c.Output)return c.Output}throw new Error("Unable to find output for step");case "invocation":if(!e)throw new Error("Unable to find output for invocation without ID");return t.eventsByID[e]?.Output||null;default:throw new Error(`Unable to have step outputs on entity type ${n}`)}}function Ho(t,e){let n=J(t);switch(n){case "result_handler":return t;case "step":if(!e)throw new Error("Unable to have result handlers on step without ID");let o=t.eventsByID[e];if(!o||!o.type||o.type!=="result_handler"||!o.ResultHandler)throw new Error(`Unable to find result handler with id ${e} on step ${t.id}`);return o.ResultHandler;default:throw new Error(`Unable to have result handlers on entity type ${n}`)}}function Ko(t,e){let n=J(t),o=null;switch(n){case "step":if(t.id===e||!e)return t;throw new Error("Unable to find step on step with id "+e);case "invocation":if(!e)throw new Error("Unable to have steps on bot invocation without ID");o=t;let r=o.eventsByID[e];if(!r)throw new Error("Unable to find step on invocation with id "+e);if(!r.Step)throw new Error("Unable to find step on invocation with id "+e);return r.Step;case "result_handler":if(!e)throw new Error("Unable to have steps on result handler without ID");let a=t.eventsByID[e];if(!a)throw new Error("Unable to find step on result handler with id "+e);if(!a.Step)throw new Error("Unable to find step on result handler with id "+e);return a.Step;default:throw new Error(`Unable to have steps on entity type ${n}`)}}var gr=class extends Error{};function ac(t,e,n){let o=null,r=e[0],s=e[1];n[r]=s;try{switch(r){case "message":o=hr(t,s);break;case "content":o=fe(t,s);break;case "step":o=Ko(t,s);break;case "output":o=Sn(t,s);break;case "output_content":o=ge(t,s);break;case "invocation":o=xr(t,s);break;case "result_handler":o=Ho(t,s);break}}catch(a){throw console.error("error finding next entity"),console.log("path",e),console.log("currentEntity",t),a}if(!o)throw console.log("path",e),console.log("currentEntity",t),console.log("nextEntity",o),new gr(`Unable to find next entity for path ${e.join("/")}`);return o}function Qo(t,e,n,o){let r=t.payload;return {_type:"message",message:{id:n,thread_id:e,author_id:r.author_id||"app",author_entity_type:r.author_entity_type||"app",created_at:new Date().toISOString(),updated_at:new Date().toISOString(),role:r.role||"assistant",avatar:"/teams/erdo-icon.png"},state:"in_progress",contents:[],contentsByID:{},contentIDToIdx:{}}}function ic(t,e){return {_type:"message_content",id:t.metadata.message_content_id,message_id:e.message,content_type:t.metadata.content_type,created_by_invocation_id:t.metadata.invocation_id,invocation_id:t.metadata.invocation_id,state:"in_progress",user_visibility:t.metadata.user_visibility??"visible",bot_visibility:t.metadata.bot_visibility??"visible",content:"",created_at:new Date().toISOString(),updated_at:new Date().toISOString(),content_params:{RawMessage:null,Valid:false},history_content_type:t.metadata?.history_content_type?{String:t.metadata.history_content_type,Valid:true}:{String:"",Valid:false},ui_content_type:t.metadata?.ui_content_type?{String:t.metadata.ui_content_type,Valid:true}:{String:"",Valid:false}}}function lc(t,e){let n=t.metadata.content_type||"text",o=t.metadata?.ui_content_type,r=pe(n,t.payload);return {_type:"message_content",id:t.metadata.message_content_id,message_id:e.message,content:r.content,content_type:n,created_by_invocation_id:t.metadata.invocation_id,invocation_id:t.metadata.invocation_id,state:"completed",user_visibility:t.metadata.visibility||"visible",bot_visibility:"visible",created_at:new Date().toISOString(),updated_at:new Date().toISOString(),content_params:{RawMessage:null,Valid:false},history_content_type:t.metadata?.history_content_type?{String:t.metadata.history_content_type,Valid:true}:{String:"",Valid:false},ui_content_type:o?{String:o,Valid:true}:{String:"",Valid:false},parsedJson:r.parsedJson??null}}function cc(t,e,n){let o=t.payload;return {_type:"step",id:e,invocation_id:n.invocation||"",step_id:o.step_id||"",created_at:new Date().toISOString(),updated_at:new Date().toISOString(),current_status_id:"",path:{String:"",Valid:false},action_type:{String:o.action_type,Valid:true},key:{String:o.key,Valid:true},bot_id:o.bot_id,result_handler_id:"",step_order:{Int32:o.step_order,Valid:true},output_content_type:{String:o.content_type,Valid:true},execution_mode:{String:o.execution_mode,Valid:true},output_behaviour:{String:o.output_behaviour,Valid:true},user_output_visibility:{String:t.metadata.visibility||"visible",Valid:true},output_channels:o.output_channels||[],running_message:{String:o.running_message||"",Valid:!!o.running_message},finished_message:{String:o.finished_message||"",Valid:!!o.finished_message},depends_on:[],eventsByID:{},currentStatus:null}}function uc(t,e,n){let o=t.payload;return {_type:"result_handler",id:e,invocation_id:t.metadata.invocation_id||"",result_handler_id:o.result_handler_id||e,step_invocation_id:o.step_invocation_id||"",type:o.type||"",if_conditions:o.if_conditions||{},created_at:new Date().toISOString(),updated_at:new Date().toISOString(),output_content_type:o.output_content_type||"",result_handler_order:o.result_handler_order||0,eventsByID:{}}}function dc(t,e,n){return {_type:"output",id:e,step_id:n.step_id,output:{id:e,invocation_id:t.metadata?.invocation_id,path:t.metadata.path,created_at:new Date().toISOString(),updated_at:new Date().toISOString()},state:"in_progress",contents:[],contentsByID:{},contentIDToIdx:{}}}function Go(t,e,n,o=null){return {_type:"output_content",id:e,output_id:n.output,content:"",content_type:t.metadata.content_type,state:"in_progress",invocation_id:t.metadata.invocation_id,user_visibility:o??t.metadata.user_visibility??"visible",bot_visibility:t.metadata.bot_visibility??"visible",created_at:new Date().toISOString(),updated_at:new Date().toISOString(),content_params:{RawMessage:null,Valid:false},history_content_type:t.metadata.history_content_type?{String:t.metadata.history_content_type,Valid:true}:{String:"",Valid:false},ui_content_type:t.metadata.ui_content_type?{String:t.metadata.ui_content_type,Valid:true}:{String:"",Valid:false},output:null}}function Wo(t,e,n,o=null){let r=t.metadata.content_type||"text",s=pe(r,t.payload),a=t.metadata?.ui_content_type;return {_type:"output_content",id:e,output_id:n.output,content:s.content,content_type:r,state:"completed",invocation_id:t.metadata.invocation_id,parsedJson:s.parsedJson??null,user_visibility:o||t.metadata.visibility||"visible",bot_visibility:"visible",created_at:new Date().toISOString(),updated_at:new Date().toISOString(),content_params:{RawMessage:null,Valid:false},history_content_type:t.metadata?.history_content_type?{String:t.metadata.history_content_type,Valid:true}:{String:"",Valid:false},ui_content_type:a?{String:a,Valid:true}:{String:"",Valid:false},output:null}}function pc(t,e,n){return {_type:"invocation",bot_invocation:{id:t.payload.invocation_id,bot_id:t.payload.bot_id,bot_name:t.payload.bot_name,created_by_user_id:t.payload.created_by_user_id,current_state_id:"",parent_invocation_id:"",branch_init_state_id:"",current_status_id:"",organization_id:"",created_at:new Date().toISOString(),updated_at:new Date().toISOString()},eventsByID:{},currentStatus:null,current_status:null,step_invocations:[],step_invocation_states:[],resources:[],outputs:[],statuses:[]}}function De(t,e){let n=t.payload;return {_type:"status",id:new Date().toISOString(),status:n.status,message:{String:n.message,Valid:true},Details:n}}function Zo(t){return {id:t.id,type:"step",created_at:t.created_at,_type:"invocation_event",Output:null,Message:null,Status:null,ResultHandler:null,Step:t}}function kr(t){return {id:t.output.id,type:"output",created_at:t.output.created_at,_type:"invocation_event",Output:t,Message:null,Status:null,ResultHandler:null,Step:null}}function br(t){return {id:t.id,type:"status",created_at:t.created_at,_type:"invocation_event",Status:t,Output:null,Message:null,ResultHandler:null,Step:null}}function mc(t){return {id:t.message.id,type:"message",created_at:t.message.created_at,_type:"invocation_event",Output:null,Message:t,Status:null,ResultHandler:null,Step:null}}function fc(t){return {id:t.id,type:"result_handler",created_at:t.created_at,_type:"invocation_event",Output:null,Message:null,Status:null,ResultHandler:t,Step:null}}var gc=new Set(["=","("]);function yc(t){if(!t||t.length===0)return true;let e=t[t.length-1];return !gc.has(e)}function Yo(t,e){if(t.content||(t.content=""),t.user_visibility!=="visible"||!Ce(t.content_type,t.ui_content_type.String))return t.content+=e,{...t};if(t.parsedJson||(t.parsedJson=[]),typeof e=="object")return t.content+=JSON.stringify(e),t.parsedJson=[...t.parsedJson,e],{...t};t._jsonParser||(t._isInJson=false),t._charBuffer||(t._charBuffer="");let n=t.content_type,o=t.ui_content_type.String;for(let r of e){t.content+=r;let s=n==="json"||o==="json";if(!t._isInJson&&s&&!Pt(r)){t._isInJson=true,t._jsonParser=new et;let a={content:{},type:"json"};t.parsedJson=[...t.parsedJson||[],a],t._currentContent=a,t._charBuffer="";}if(!t._isInJson&&!s&&o==="ui_generation"&&r==="{"){let a=t.content.slice(0,-1);if(yc(a)){t._charBuffer="{";continue}}if(t._charBuffer&&Pt(r)){t._charBuffer+=r;continue}if(!t._isInJson&&!s&&o==="ui_generation"&&t._charBuffer?.match(/^\s*{\s*$/)&&r==='"'){t._isInJson=true,t._jsonParser=new et;let i={content:t._jsonParser.add("{"),type:"json"};t._currentContent?.content?t._currentContent.content.match(/^\s*{$/)?(t._currentContent=i,t.parsedJson=[...t.parsedJson.slice(0,-1),i]):(t._currentContent.content=t._currentContent.content.replace(/{$/,""),t._currentContent=i,t.parsedJson=[...t.parsedJson,i]):(t._currentContent=i,t.parsedJson=[...t.parsedJson,i]);}if(t._isInJson)try{let a=t._jsonParser.add(r);t._currentContent.content=a,t._jsonParser.state==="END"&&(t._isInJson=!1,t._currentContent=void 0);}catch(a){if(console.log("handleIncrementalMixedJsonParsing: content chunk",e),console.log("handleIncrementalMixedJsonParsing: accumulated content",t.content),console.warn("handleIncrementalMixedJsonParsing: JSON parse error, recovering as text",a),t._isInJson=false,t._jsonParser=void 0,t.parsedJson&&t.parsedJson.length>0){let i=t.parsedJson[t.parsedJson.length-1];if(i.type==="json"){let c=t.content.lastIndexOf("{"),l=t.content.slice(c);i.type="text",i.content=l,t._currentContent=i;}}continue}else t._currentContent||(t._currentContent={content:t._charBuffer||"",type:"text"},t.parsedJson=[...t.parsedJson,t._currentContent]),t._currentContent.content+=t._charBuffer+r;t._charBuffer="";}return {...t}}function hc(t,e){return Yo(t,e)}function qo(t,e){return Yo(t,e)}function yr(t,e){let n=J(t);switch(n){case "message":return ft(t,e);case "message_content":return _n(t,e);case "step":return kc(t,e);case "output":return bc(t,e);case "output_content":return Cc(t,e);case "invocation":return Re(t,e);case "result_handler":return _c(t,e);default:throw new Error(`Unable to add update entity for entity type ${n}`)}}function xc(t,e){for(let n of e)t=yr(t,n);return t}function ft(t,e){let n=hr(t);if(!n)throw new Error("Unable to find message to add content to");let o=J(e),r=null;switch(o){case "message_content":if(r=e,!n.contentsByID[r.id])n.contentIDToIdx={...n.contentIDToIdx,[r.id]:n.contents.length},n.contents=[...n.contents,r];else {let i=n.contentIDToIdx[r.id];n.contents=[...n.contents.slice(0,i),r,...n.contents.slice(i+1)];}return n.contentsByID={...n.contentsByID,[r.id]:r},{...n};case "invocation":let s=e;if(n.contents.length===0)throw new Error("Unable to find message content to add invocation to");return r=_n(n.contents[0],s),ft(n,r);case "step":if(n.contents.length===0)throw new Error("Unable to find message content to add content to");if(r=n.contents[0],!r)throw new Error("Unable to find message content to add content to");let a=xr(r);if(!a)throw new Error("Unable to find bot invocation to add content to");return r.botInvocation=Re(a,e),ft(n,r);case "status":if(n.contents.length>0){let i=n.contents[0];if(i?.botInvocation){let c=_n(i,e);return ft(n,c)}}return {...n};default:throw new Error(`Unable to add update message child for child type ${o}`)}}function _n(t,e){let n=fe(t);if(!n)throw new Error("Unable to find message content to add content to");let o=J(e);switch(o){case "invocation":return n.botInvocation=e,{...n};case "step":let r=n.botInvocation;if(!r)throw new Error("Unable to find bot invocation to add content to");return n.botInvocation=Re(r,e),{...n};case "status":return n.botInvocation&&(n.botInvocation=Re(n.botInvocation,e)),{...n};default:throw new Error(`Unable to add update message content child for child type ${o}`)}}function kc(t,e){let n=Ko(t);if(!n)throw new Error("Unable to find bot invocation to add step to");let o=J(e),r=null;switch(o){case "output":let s=e;return r=kr(s),n.eventsByID={...n.eventsByID,[s.output.id]:r},{...n};case "message":let a=e;return r=mc(a),n.eventsByID={...n.eventsByID,[a.message.id]:r},{...n};case "status":let i=e;return r=br(i),n.eventsByID={...n.eventsByID,[i.id]:r},{...n};case "result_handler":let c=e;return r=fc(c),n.eventsByID={...n.eventsByID,[c.id]:r},{...n};default:throw new Error(`Unable to add update step for entity type ${o}`)}}function bc(t,e){let n=Sn(t);if(!n)throw new Error("Unable to find step output to add content to");let o=J(e);switch(o){case "output_content":let r=e;if(!n.contentsByID[r.id])n.contentIDToIdx={...n.contentIDToIdx,[r.id]:n.contents.length},n.contents=[...n.contents,r];else {let s=n.contentIDToIdx[r.id];n.contents=[...n.contents.slice(0,s),r,...n.contents.slice(s+1)];}return n.contentsByID={...n.contentsByID,[r.id]:r},{...n};default:throw new Error(`Unable to add update output for entity type ${o}`)}}function Cc(t,e){let n=ge(t);if(!n)throw new Error("Unable to find step output content to add content to");let o=J(e);switch(o){case "invocation":return n.botInvocation=e,{...n};case "step":let r=n.botInvocation;if(!r)throw new Error("Unable to find bot invocation to add content to");return n.botInvocation=Re(r,e),{...n};default:throw new Error(`Unable to add update step output content for entity type ${o}`)}}function Re(t,e){let n=xr(t);if(!n)throw new Error("Unable to find bot invocation to add content to");let o=J(e),r;switch(o){case "step":let s=e;return r=Zo(s),n.eventsByID={...n.eventsByID,[s.id]:r},{...n};case "output":let a=e;return r=kr(a),n.eventsByID={...n.eventsByID,[a.output.id]:r},{...n};case "status":let i=e;return r=br(i),n.eventsByID={...n.eventsByID,[i.id]:r},n.currentStatus=i,{...n};default:throw new Error(`Unable to add update invocation for entity type ${o}`)}}function _c(t,e){let n=Ho(t);if(!n)throw new Error("Unable to find result handler to add content to");let o=J(e),r=null;switch(o){case "step":let s=e;return r=Zo(s),n.eventsByID||(n.eventsByID={}),n.eventsByID={...n.eventsByID,[s.id]:r},{...n};case "output":let a=e;return r=kr(a),n.eventsByID||(n.eventsByID={}),n.eventsByID={...n.eventsByID,[a.output.id]:r},{...n};case "status":let i=e;return r=br(i),n.eventsByID||(n.eventsByID={}),n.eventsByID={...n.eventsByID,[i.id]:r},{...n};default:throw new Error(`Unable to add update to result handler for entity type ${o}`)}}function Sc(t){return t==="bot started"||t==="bot resumed"||t==="message created"||t==="create message content"||t==="message content result"||t==="step started"||t==="result handler started"||t==="state created"||t==="step output created"||t==="create step output content"||t==="step output content result"||t==="log"}function vn(t,e,n,o,r,s=null,a=[],i={}){if(!s&&Object.keys(r).length>0){let p,d;if(n.length>=2&&n[0]==="message"?(d=n[1],p=r[d],p||(p=Object.values(r)[0],d=Object.keys(r)[0])):(p=Object.values(r)[Object.values(r).length-1],d=Object.keys(r)[Object.keys(r).length-1]),i.message=d,n.length<=2&&t==="message finished")return r[d]=Jo(p),null;if(n[0]!=="content"&&Object.keys(p.contentsByID).length>0&&e.metadata.message_content_id){let m=e.metadata.message_content_id,g=p.contentsByID[m];g&&(s=g);}s?a=[p]:s=p;}if(n.length<=2&&Sc(t)){let p=n[1],d=[],m,g,f,x,b;switch(t){case "bot started":case "bot resumed":if(!s)throw new Error("Unable to find message to add content to");let k=pc(e);if(s._type==="message_content"){if(g=s,!g.id)throw new Error("Unable to find message content id");if(f=r[g.message_id],!f)throw new Error("Unable to find message to add content to");if(x=fe(f,g.id),!x)throw new Error("Unable to find message content to add content to");let _=_n(x,k);r[g.message_id]={...ft(f,_)};}d.push(k);break;case "message created":return r[p]=Qo(e,o,p),null;case "create message content":if(!s)throw new Error("Unable to find message to add content to");if(b=ic(e,i),s._type==="output"){m=s,d.push(Go(e,p,i,"hidden"));let _=e.payload.message_id;if(_||(_=a[0].message.id),f=r[_],!f)throw new Error("Unable to find message to add content to")}else if(s._type==="message_content"){if(m=s,f=r[m.message_id],!f)throw new Error("Unable to find message to add content to")}else {if(s._type!=="message")throw new Error(`Incorrect path? Cannot add content to non-message entity: ${s._type}`);if(m=s,f=r[m.message.id],!f)throw new Error("Unable to find message to add content to");d.push(b);}r[f.message.id]={...ft(f,b)};break;case "message content result":if(!s)throw new Error("Unable to find message to add content to");let y=null;if(s._type==="output"){d.push(Wo(e,p,i,"hidden"));let _=e.payload.message_id||i.message;if(_?y=a.find(v=>v.message.id===_):y=a[0],f=r[_],!f)throw new Error("Unable to find message to add content to")}else if(s._type==="message_content"){if(y=a[0],f=r[y.message.id],!f)throw new Error("Unable to find message to add content to")}else {if(s._type!=="message")throw new Error(`Incorrect path? Cannot add content to non-message entity: ${s._type}`);if(y=s,f=r[y.message.id],!f)throw new Error("Unable to find message to add content to")}let h=e.metadata.message_content_id;if(!h)throw new Error("Unable to find message content id");let S=fe(y,h);if(S){S.state="completed";let _=S.content_type||"text",v=gn(_,S.content,e.payload);S.content=v.content,v.parsedJson&&(S.parsedJson=v.parsedJson),r[f.message.id]={...ft(f,S)},(s._type==="message"||s._type==="message_content")&&d.push(S);}else S=lc(e,i),r[f.message.id]={...ft(f,S)},(s._type==="message"||s._type==="message_content")&&d.push(S);break;case "step started":d.push(cc(e,p,i));break;case "result handler started":d.push(uc(e,p));break;case "step output created":d.push(dc(e,p,s));break;case "create step output content":d.push(Go(e,p,i));break;case "step output content result":d.push(Wo(e,p,i));break;case "log":return null;default:throw new Error(`Unable to handle create event type ${t}`)}return d.length?!s||s._type==="message_content"&&d.length===1&&d[0]._type==="message_content"?d[0]:xc(s,d):null}if(!s)throw new Error("No first message has been created, so cannot handle amend events");if(n.length<=1){let p=null;try{p=sc(s);}catch{}switch(t){case "message content delta":if(!p)throw new Error("Unable to find message content");let d=null,m=null,g=null;if(s._type==="output_content"){d=qo(s,e.payload);let k=e.metadata.message_content_id;if(!k)throw new Error("Unable to find message content id from entity ids");let y=i.message;if(g=a.find(h=>h.message.id===y),!g)throw new Error("Unable to find message to add content to");m=fe(g,k);}else {if(m=p,g=a[a.length-1],!g)throw new Error("Unable to find message to add content to");if(g._type!=="message")throw new Error("Unable to find message to add content to - not a message")}if(!m)throw new Error("Unable to find message content");let f=r[g.message.id];if(!f)throw new Error("Unable to find message to add content to");let x=hc(m,e.payload);return r[f.message.id]={...ft(f,x)},s._type==="message_content"&&(d=x),d;case "step output content delta":return qo(p,e.payload);case "status":if(s._type==="step"&&(s.currentStatus=De(e)),s._type==="invocation"&&(s.currentStatus=De(e)),s._type==="message_content"){let b=s;if(b.botInvocation)return b.botInvocation.currentStatus=De(e),{...b}}if(s._type==="message"){let b=s,k=zo(b);if(k?.botInvocation)return k.botInvocation.currentStatus=De(e),ft(b,k)}return yr(s,De(e));case "result":return null;case "message finished":if(s._type==="message"){let k=Jo(s);r[k.message.id]=k;}return null;case "step output finished":return null;case "step result":return null;case "error":return null;case "dataset created":return null;case "log":return null;default:throw new Error(`Unable to handle event type ${t}`)}}let c=n.slice(2),l=ac(s,n,i),u=vn(t,e,c,o,r,l,[...a,s],i);return u?yr(s,{...u}):s}function Cr(t){if(!t.content)return null;if(typeof t.content=="object")return t.content;if(typeof t.content=="string"){let e=$(t.content);return e&&typeof e=="object"&&!Array.isArray(e)?e:null}return null}function Xo(t){let e=t.content_type;if(e==="tool_result")return "result";if(e==="tool_invocation")return "invocation";let n=Cr(t);return n&&"action_type"in n&&"name"in n&&"input"in n&&n.action_type!=="bot.invoke"?"result"in n?"result":"invocation":null}function ts(t){return Cr(t)?.id}function es(t){let e=Cr(t);if(!e?.action_type)return null;let o=e.input?.query;return `${e.action_type}:${o||""}`}function ns(t){let e=t.filter(r=>Xo(r)==="result"),n=new Set(e.map(r=>ts(r)).filter(Boolean)),o=new Set(e.map(r=>es(r)).filter(Boolean));return t.filter(r=>{if(Xo(r)==="invocation"){let s=ts(r),a=es(r);if(s&&n.has(s)||a&&o.has(a))return false}return true})}function rs(t,e,n){let o=e;for(;o;){if(o===n)return true;o=t.byStepId[o]?.parentId??null;}return false}function wn(t,e){if(!e||!t.byStepId[e])return t;let n=new Set;for(let i of t.nodes)i.kind==="step"&&rs(t,i.id,e)&&n.add(i.id);let o=t.nodes.filter(i=>i.kind==="step"?n.has(i.id):i.kind==="content"||i.kind==="status"?!!i.stepId&&n.has(i.stepId):false),r={},s={},a={};for(let i of n){let c=t.byStepId[i];c&&(r[i]=c);}for(let i of o){if(i.kind==="content"){s[i.id]=i;continue}if(i.kind!=="step")continue;let l=(i.parentId&&n.has(i.parentId)?i.parentId:null)??"__root__";a[l]=[...a[l]||[],i.id];}return {...t,nodes:o,byStepId:r,byContentId:s,childrenByParentId:a,rootStepId:e}}function In(){return createStore((t,e)=>({globalState:hn(),invocationStates:{},invocationRootSteps:{},pendingInvocationQueue:[],pushEvent:(n,o)=>{let r=e(),s=pr(r.globalState,n);if(o&&(s=o(s)),s===r.globalState)return;let a=n.metadata?.step_id??n.payload?.step_id??"",i={...r.invocationStates},c=false;for(let[l,u]of Object.entries(r.invocationRootSteps)){let p=r.invocationStates[l];if(a&&!rs(s,a,u)&&a)continue;let d=wn(s,u);if(!(n.type==="step_finished"||n.type==="step_started"||n.type==="status")&&p&&p.nodes.length===d.nodes.length){let g=p.nodes[p.nodes.length-1],f=d.nodes[d.nodes.length-1];if(g===f&&p.isStreaming===d.isStreaming)continue}i[l]=d,c=true;}t({globalState:s,...c?{invocationStates:i}:{}});},registerInvocation:n=>{let o=e();o.invocationRootSteps[n]||o.pendingInvocationQueue.includes(n)||t({pendingInvocationQueue:[...o.pendingInvocationQueue,n]});},mapInvocationRoot:(n,o)=>{let r=e(),s=wn(r.globalState,o);t({invocationRootSteps:{...r.invocationRootSteps,[n]:o},invocationStates:{...r.invocationStates,[n]:s},pendingInvocationQueue:r.pendingInvocationQueue.filter(a=>a!==n)});},reset:()=>{t({globalState:hn(),invocationStates:{},invocationRootSteps:{},pendingInvocationQueue:[]});}}))}function Nc(t){return t.split("/").filter(Boolean)}function os(t={}){let e=Ut(),[n,o]=useState(null),[r,s]=useState(false),[a,i]=useState(null),[c,l]=useState([]),u=useRef(In()),p=useStore(u.current,k=>k.globalState),d=useRef(null),m=useRef(t.threadId);t.threadId!==m.current&&(m.current=t.threadId);let g=useCallback(()=>{d.current&&(d.current.abort(),d.current=null);},[]),f=useCallback(k=>{o(k),m.current=k.id;},[]),x=useCallback(async k=>{if(!e.client)throw new Error("ErdoClient not configured in provider. Pass a client to ErdoProvider config to use useThread.");if(!e.client.sendMessage)throw new Error("ErdoClient does not support sendMessage. Make sure you are using @erdoai/server client.");if(!e.client.createThread)throw new Error("ErdoClient does not support createThread. Make sure you are using @erdoai/server client.");g(),d.current=new AbortController,s(true),i(null),l([]),u.current.getState().reset();let y={};try{let h=m.current;if(!h){let I=await e.client.createThread();o(I),m.current=I.id,h=I.id;}for await(let I of e.client.sendMessage(h,{content:k,botKey:t.botKey})){if(d.current?.signal.aborted)break;if(t.onEvent?.(I),e.useAgentEvents)u.current.getState().pushEvent(I);else {let U=I.type||"",tt=I.metadata||{},O=Nc(tt.path||""),H={payload:I.payload,metadata:{path:tt.path||"",...tt}};try{vn(U,H,O,h,y);}catch(G){console.error("Error handling SSE event:",G,U);}l(Object.values(y));}}let S=Object.values(y);l(S);let _=u.current.getState().globalState,v;_.rootStepId?v=kn(_):v=S.flatMap(I=>I.contents||[]).filter(I=>I.user_visibility==="visible").map(I=>({id:I.id,content_type:I.content_type,ui_content_type:M(I.ui_content_type),content:I.content,parsedJson:I.parsedJson,botInvocation:I.botInvocation})),t.onFinish?.(v);}catch(h){let S=h instanceof Error?h:new Error(String(h));throw i(S),t.onError?.(S),S}finally{s(false),d.current=null;}},[e.client,e.useAgentEvents,t,g]),b=useMemo(()=>{if(p.rootStepId)return kn(p);let k=c.flatMap(h=>h.contents||[]).filter(h=>h.user_visibility==="visible");return ns(k).map(h=>({id:h.id,content_type:h.content_type,ui_content_type:M(h.ui_content_type),content:h.content,parsedJson:h.parsedJson,botInvocation:h.botInvocation}))},[c,p]);return {thread:n,isStreaming:r,error:a,activeMessages:c,agentState:p,streamingContents:b,sendMessage:x,cancel:g,setThread:f,agentStreamStore:u.current}}function Tc(t){return t?typeof t=="string"?t:typeof t=="object"&&t!==null&&"String"in t&&t.String||"":""}function ss(t){let e=Tc(t.ui_content_type),n=t.content_type,o={id:t.id,content_type:t.content_type,ui_content_type:e,content:t.content,invocation_id:t.created_by_invocation_id};if(typeof t.content=="string"){if(e==="ui_generation")try{o.parsedJson=ht(t.content);}catch(r){console.error("Error parsing UI generation content:",r);}else if((n==="json"||e==="json")&&t.content.trim()){let r=$(t.content);r!=null&&(o.parsedJson=[{type:"json",content:r}]);}}if((t.content_type==="thinking"||t.content_type==="redacted_thinking")&&typeof t.content=="string"){let r=$(t.content);r&&typeof r=="object"&&(o.content=r);}return o}function Ec(t){return t.filter(e=>e.user_visibility!=="hidden").map(ss)}var Tn=createContext(null);function is({store:t,children:e}){return jsx(Tn.Provider,{value:t,children:e})}function ls(){return useContext(Tn)}function cs(t){let e=useContext(Tn);return useStore(e,n=>t?n.invocationStates[t]:void 0)}function us(){let t=useContext(Tn);return useStore(t,e=>e.globalState)}export{is as AgentStreamStoreProvider,Tt as BarChart,un as BotInvocationContent,ut as Chart,xe as ChartContainer,ze as ChartContent,On as ChartLegend,Mn as ChartLegendContent,Zn as ChartNode,Er as ChartStyle,Pn as ChartTooltip,Bn as ChartTooltipContent,ln as CodeexecContent,on as CodegenContent,St as CollapsibleCodeBlock,Lt as Content,$e as DatasetChart,Xt as DatasetDownload,je as DatasetTable,tr as DownloadButtonNode,Ir as ErdoProvider,Fo as ErdoToolResult,_l as ErdoUI,Nt as ErrorBoundary,Zr as ExecutionStatus,vt as ExpandableOutputContent,nr as FileDownloadsNode,zt as HeatmapChart,We as InvocationEvent,At as InvocationEvents,Qr as InvocationStatus,et as JSONStreamParser,yt as JsonContent,Gt as LineChart,Bo as Loader,or as Log,Qe as LogContent,R as MarkdownContent,mn as MemoryContent,Ue as Output,Wt as PieChart,qt as ScatterChart,tn as SqlContent,at as StatusSpinner,ie as StderrText,ae as StdoutText,nn as StdwarnText,Ge as StepInvocation,Je as StepInvocationStatus,Uo as StepTreeContent,er as SuggestionsNode,He as TableContent,Yn as TableNode,_e as TextContent,Xn as TextMarkdownNode,ne as ThinkingContent,le as ToolGroupContent,ee as UIGenerationNodes,Ye as WebParseContent,Ze as WebSearchContent,lr as WritingLoader,kn as agentStateToContents,X as cn,Vo as completeStreamingContent,In as createAgentStreamStore,hn as createInitialAgentState,Mo as extractContentItems,ct as formatValue,Cn as getErdoToolName,mr as getErdoToolRenderType,pr as handleAgentEvent,cr as handleIncrementalMixedJsonParsing,vn as handleSSEEvent,Ul as hasRenderableAssistantOutput,tc as isErdoTool,Ce as isJsonLike,Gr as isNullString,Ua as isParsingComplete,Yt as isParsingInProgress,Pt as isWhitespaceChar,rr as nodeComponents,ss as normalizeContent,Ec as normalizeContents,Ne as normalizeUIGenerationChunks,Hn as normalizeUINodes,$ as parseCompleteJson,ht as parseMixedJson,Dr as parseToDate,Kt as resolveKeyFromData,wn as sliceAgentStateToRoot,jr as toSnakeCase,M as unwrapNullString,fa as unwrapNullStringOr,us as useAgentStreamGlobalState,ls as useAgentStreamStoreOptional,Be as useChartZoom,Me as useDatasetContents,Ut as useErdoConfig,Q as useErdoConfigOptional,cs as useInvocationState,$r as useMultipleDatasetContents,be as useMultipleDatasetRequests,os as useThread};
50
+ `,document.head.appendChild(t);}function oe({item:t,className:e}){let[n,o]=useState(false);useEffect(()=>{Ze();},[]);let r=t.content_type==="redacted_thinking",s="",a=false;if(typeof t.content=="string")s=t.content;else if(t.content&&typeof t.content=="object")if(r)s=t.content.data||"Some of Claude's internal reasoning has been automatically encrypted for safety reasons. This doesn't affect the quality of responses.";else {let d=t.content;s=d.thinking||"",a=typeof d.signature=="string"&&d.signature.length>0;}let i=typeof t.state=="string"?t.state:"",l=(i==="in_progress"||i==="streaming"||i==="running")&&!a;return jsxs("div",{className:e,children:[jsxs("button",{onClick:()=>o(!n),className:"inline-flex items-center gap-1.5 text-left",children:[n?jsx(ChevronDown,{className:"h-3.5 w-3.5 text-muted-foreground/70"}):jsx(ChevronRight,{className:"h-3.5 w-3.5 text-muted-foreground/70"}),jsx("span",{className:`text-sm ${l?"erdo-shimmer":"text-muted-foreground hover:text-foreground/70 transition-colors"}`,children:r?"Encrypted thinking":"Thinking"})]}),n&&jsx("div",{className:"mt-1 pl-5 text-sm text-muted-foreground",children:s?jsx(R,{content:s,className:"text-sm text-muted-foreground [&_*]:text-muted-foreground"}):l?"Thinking...":""})]})}function fi(t){try{return JSON.parse(t)}catch{return t}}function gi(t){if(!t)return "";try{return new Date(t).toLocaleTimeString([],{hour:"2-digit",minute:"2-digit",second:"2-digit"})}catch{return ""}}function ar({log:t}){let e=typeof t.message=="string"?fi(t.message):t.message,n=gi(t.timestamp),o="text-xs font-mono py-0.5 px-1.5 rounded flex items-start",r="";switch(t.level){case "error":o+=" bg-red-50/50 dark:bg-red-950/30 text-red-600 dark:text-red-400 border-l-2 border-red-400 dark:border-red-600",r="text-red-500 dark:text-red-400";break;case "requires_info":o+=" bg-yellow-50/50 dark:bg-yellow-950/30 text-yellow-600 dark:text-yellow-400 border-l-2 border-yellow-400 dark:border-yellow-600",r="text-yellow-500 dark:text-yellow-400";break;default:o+=" bg-blue-50/40 dark:bg-blue-900/20 text-blue-500/90 dark:text-blue-300/80 border-l-2 border-blue-300 dark:border-blue-600/50",r="text-blue-400 dark:text-blue-400/70";}return jsx("div",{className:"my-0.5",children:jsx("div",{className:o,children:jsxs("div",{className:"flex items-start gap-2",children:[n&&jsx("span",{className:"text-[10px] opacity-60 whitespace-nowrap w-16 flex-shrink-0 pt-0.5",children:n}),t.level==="error"&&jsx("span",{className:"inline-block mr-1 flex-shrink-0",children:jsx("svg",{xmlns:"http://www.w3.org/2000/svg",className:`h-3 w-3 ${r}`,viewBox:"0 0 20 20",fill:"currentColor",children:jsx("path",{fillRule:"evenodd",d:"M10 18a8 8 0 100-16 8 8 0 000 16zM8.28 7.22a.75.75 0 00-1.06 1.06L8.94 10l-1.72 1.72a.75.75 0 101.06 1.06L10 11.06l1.72 1.72a.75.75 0 101.06-1.06L11.06 10l1.72-1.72a.75.75 0 00-1.06-1.06L10 8.94 8.28 7.22z",clipRule:"evenodd"})})}),t.level==="requires_info"&&jsx("span",{className:"inline-block mr-1 flex-shrink-0",children:jsx("svg",{xmlns:"http://www.w3.org/2000/svg",className:`h-3 w-3 ${r}`,viewBox:"0 0 20 20",fill:"currentColor",children:jsx("path",{fillRule:"evenodd",d:"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-8-5a.75.75 0 01.75.75v4.5a.75.75 0 01-1.5 0v-4.5A.75.75 0 0110 5zm0 10a1 1 0 100-2 1 1 0 000 2z",clipRule:"evenodd"})})}),t.level==="info"&&jsx("span",{className:"inline-block mr-1 flex-shrink-0",children:jsx("svg",{xmlns:"http://www.w3.org/2000/svg",className:`h-3 w-3 ${r}`,viewBox:"0 0 20 20",fill:"currentColor",children:jsx("path",{fillRule:"evenodd",d:"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-7-4a1 1 0 11-2 0 1 1 0 012 0zM9 9a.75.75 0 000 1.5h.253a.25.25 0 01.244.304l-.459 2.066A1.75 1.75 0 0010.747 15H11a.75.75 0 000-1.5h-.253a.25.25 0 01-.244-.304l.459-2.066A1.75 1.75 0 009.253 9H9z",clipRule:"evenodd"})})}),jsx("div",{className:"flex-1 break-words whitespace-pre-wrap",children:String(e)})]})})})}function Ye({item:t,className:e}){let n=typeof t.content=="object"&&t.content!==null?t.content:{message:String(t.content)},o={level:n.level||"info",message:n.message||String(t.content),timestamp:n.timestamp};return jsx("div",{className:e,children:jsx(ar,{log:o})})}function xi(t){if(!t||typeof t!="object")return null;let e=t;if(Array.isArray(e.results))return e;if(e.result&&typeof e.result=="object"){let n=e.result;if(Array.isArray(n.results))return n}return null}function Xe({item:t,className:e}){let n=xi(t.content);return n?.results?.length?jsx("div",{className:`rounded-lg border border-border/50 overflow-hidden ${e||""}`,children:jsx("div",{className:"divide-y divide-border/30",children:n.results.map(o=>{let r="";try{r=new URL(o.url).hostname.replace(/^www\./,"");}catch{}return jsxs("a",{href:o.url,target:"_blank",rel:"noopener noreferrer",className:"flex items-start gap-3 px-3 py-2 hover:bg-muted/50 transition-colors group",children:[jsxs("div",{className:"flex-1 min-w-0",children:[jsx("div",{className:"text-sm text-foreground/90 group-hover:text-foreground group-hover:underline truncate",children:o.title}),o.description&&jsx("div",{className:"text-xs text-muted-foreground mt-0.5 line-clamp-1",children:o.description})]}),jsxs("div",{className:"flex items-center gap-1 shrink-0 mt-0.5",children:[jsx("span",{className:"text-[10px] text-muted-foreground/60",children:r}),jsx(ExternalLink,{className:"h-3 w-3 text-muted-foreground/40 group-hover:text-muted-foreground"})]})]},o.url)})})}):null}function bi(t){if(!t||typeof t!="object")return null;let e=t;if(typeof e.content=="string")return e;if(e.result&&typeof e.result=="object"){let n=e.result;if(typeof n.content=="string")return n}return null}function Ci(t){if(!t||typeof t!="object")return null;let n=t.input;return typeof n?.url=="string"?n.url:null}function tn({item:t,className:e}){let n=bi(t.content),o=Ci(t.content),r=n?.url||o,s=n?.title,a=n?.content,i="";try{r&&(i=new URL(r).hostname.replace(/^www\./,""));}catch{}return !a&&!r?null:jsxs("div",{className:`rounded-lg border border-border/50 overflow-hidden ${e||""}`,children:[r&&jsxs("a",{href:r,target:"_blank",rel:"noopener noreferrer",className:"flex items-center gap-2 px-3 py-2 border-b border-border/30 hover:bg-muted/50 transition-colors group",children:[jsxs("div",{className:"flex-1 min-w-0",children:[jsx("div",{className:"text-sm text-foreground/90 group-hover:text-foreground truncate",children:s?.trim()||i||r}),s&&i&&jsx("div",{className:"text-[10px] text-muted-foreground/60 mt-0.5",children:i})]}),jsx(ExternalLink,{className:"h-3.5 w-3.5 shrink-0 text-muted-foreground/40 group-hover:text-muted-foreground"})]}),a&&jsx("div",{className:"max-h-64 overflow-y-auto px-3 py-2 bg-muted/20",children:jsx(R,{content:a,className:"text-xs"})})]})}var Pi=Prism,vt=memo(function({language:e,value:n,defaultOpen:o=false,title:r="View code",closeTitle:s="Hide code",className:a,theme:i="auto"}){let[c,l]=useState(o),[u,d]=useState(false),p=useRef(null);useEffect(()=>{if(!c){let y=p.current;y&&(y.scrollTop=y.scrollHeight);}},[c,n]);let m=useMemo(()=>i!=="auto"?i:typeof window>"u"?"light":document.documentElement.classList.contains("dark")||window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light",[i]),g=useMemo(()=>m==="dark"?oneDark:oneLight,[m]),f=useCallback(async()=>{try{await navigator.clipboard.writeText(n),d(!0),setTimeout(()=>d(!1),2e3);}catch{let y=document.createElement("textarea");y.value=n,document.body.appendChild(y),y.select(),document.execCommand("copy"),document.body.removeChild(y),d(true),setTimeout(()=>d(false),2e3);}},[n]),x=useMemo(()=>({margin:0,width:"100%",background:"transparent",padding:"1rem 0.5rem",fontSize:"0.825rem",maxWidth:"100vw",overflow:"auto"}),[]),b=useMemo(()=>({userSelect:"none",minWidth:"2.5em",paddingRight:"1em",color:"rgb(161 161 170)",opacity:"0.5"}),[]),k=useMemo(()=>({style:{fontFamily:"var(--font-mono, ui-monospace, monospace)",whiteSpace:"pre",wordBreak:"break-word"}}),[]);return jsx(de.Root,{open:c,onOpenChange:l,className:a,children:jsxs("div",{className:"relative w-full font-sans rounded-lg overflow-hidden border border-zinc-200 dark:border-zinc-800",children:[jsxs("div",{className:"flex items-center justify-between w-full px-4 py-1.5 bg-white/80 dark:bg-zinc-800/80 text-zinc-600 dark:text-zinc-100 backdrop-blur-sm border-b border-zinc-200 dark:border-zinc-800",children:[jsx("span",{className:"text-xs font-medium lowercase text-zinc-400 dark:text-zinc-500",children:e}),jsx("button",{onClick:f,className:"h-6 w-6 flex items-center justify-center rounded-md hover:bg-zinc-100 dark:hover:bg-zinc-700 transition-colors",children:u?jsx(Check,{className:"h-3 w-3 text-green-500"}):jsx(Copy,{className:"h-3 w-3 text-zinc-400 dark:text-zinc-500"})})]}),jsxs("div",{ref:p,className:`${c?"max-h-96":"max-h-[200px]"} overflow-auto relative`,children:[jsx("div",{className:"bg-zinc-50/50 dark:bg-zinc-950/70",children:jsx(Pi,{language:e,style:g,PreTag:"div",showLineNumbers:true,wrapLines:false,wrapLongLines:false,startingLineNumber:1,className:"not-prose",customStyle:x,lineNumberStyle:b,codeTagProps:k,children:n})}),!c&&jsx("div",{className:"absolute bottom-0 inset-x-0 h-24 pointer-events-none bg-gradient-to-t from-zinc-50 dark:from-zinc-950 to-transparent",style:{marginBottom:"1.5rem"}})]}),jsx(de.Trigger,{className:"absolute bottom-0 inset-x-0 flex items-center gap-2 text-sm text-zinc-400 dark:text-zinc-500 hover:text-zinc-600 dark:hover:text-zinc-300 p-2 justify-start bg-zinc-50/80 dark:bg-zinc-950/80 backdrop-blur-sm border-t border-zinc-200 dark:border-zinc-800 cursor-pointer",children:c?jsxs(Fragment,{children:[jsx(ChevronUp,{className:"h-4 w-4"}),s]}):jsxs(Fragment,{children:[jsx(ChevronDown,{className:"h-4 w-4"}),r]})})]})})});function Bi(t){if(typeof t!="object"||t===null||Array.isArray(t))return null;let e=t;return "sql_query"in e||"thinking"in e||"error"in e?{thinking:typeof e.thinking=="string"?e.thinking:void 0,sql_query:typeof e.sql_query=="string"?e.sql_query:void 0,resource_key:typeof e.resource_key=="string"?e.resource_key:void 0,error:typeof e.error=="string"?e.error:void 0}:null}function Oi(t){return Bi(t.content)}function nn({item:t,className:e}){let n=Oi(t);if(!n)return null;let{thinking:o,sql_query:r,error:s}=n;return s?jsxs("div",{className:`text-destructive text-sm ${e||""}`,children:[jsx("div",{className:"font-medium",children:"Error"}),jsx("div",{children:s})]}):!r&&!o?null:jsxs("div",{className:`text-foreground whitespace-pre-wrap leading-normal ${e||""}`,children:[o&&jsx("div",{className:"mb-2",children:jsx(R,{content:o,className:"text-sm max-w-none"})}),r&&jsx("div",{className:"mb-2",children:jsx(vt,{language:"sql",value:r,defaultOpen:false})})]})}var Vi=500,Li=300;function ie({content:t,className:e}){let[n,o]=useState(false);if(!t||typeof t!="string"||!t.trim())return null;if(t.length<=Vi)return jsx("div",{className:`text-sm text-muted-foreground ${e||""}`,children:jsx(R,{content:t,className:"text-sm max-w-none"})});let s=t.slice(0,Li).trimEnd()+"...";return jsx("div",{className:`text-sm text-muted-foreground ${e||""}`,children:n?jsxs(Fragment,{children:[jsx(R,{content:t,className:"text-sm max-w-none"}),jsx("button",{onClick:()=>o(false),className:"text-xs text-muted-foreground/70 hover:text-muted-foreground mt-1",children:"Show less"})]}):jsxs(Fragment,{children:[jsx("span",{className:"text-sm",children:s}),jsx("button",{onClick:()=>o(true),className:"text-xs text-muted-foreground/70 hover:text-muted-foreground ml-1",children:"Show more"})]})})}function wt({children:t,defaultOpen:e=false,wrapperType:n="standard",compact:o=false,className:r}){let[s,a]=useState(e),[i,c]=useState(false),l=useRef(null);useEffect(()=>{let p=l.current;!s&&p&&(p.scrollTop=p.scrollHeight);},[s]),useEffect(()=>{let p=l.current;if(!p)return;let m=()=>{c(p.scrollHeight>p.clientHeight);};m();let g=new ResizeObserver(m);return g.observe(p),()=>g.disconnect()},[s]);let u={standard:"bg-muted/30 border-border",info:"bg-info/10 border-info/30",warning:"bg-warning/10 border-warning/30"},d={standard:"text-muted-foreground hover:text-foreground",info:"text-info hover:text-info/80",warning:"text-warning hover:text-warning/80"};return jsx("div",{className:`relative text-sm ${o?"":"mb-2"} ${r||""}`,children:jsx(de.Root,{open:s,onOpenChange:a,className:`border rounded-sm ${u[n]}`,children:jsxs("div",{ref:l,className:`overflow-y-auto ${s?"":"max-h-[200px]"}`,children:[i&&jsx(de.Trigger,{className:`sticky top-0 text-center text-xs py-1 transition-opacity w-full cursor-pointer ${d[n]}`,children:s?"Less \u2193":"More \u2191"}),jsx("div",{className:`${o?"px-2 py-1":"p-2"} m-0 overflow-x-auto break-words whitespace-pre-wrap`,children:t})]})})})}function cr(t){return new Date(t).toLocaleTimeString("en-US",{hour12:false,hour:"2-digit",minute:"2-digit",second:"2-digit"})}function le({children:t,timestamp:e}){return jsxs("div",{className:"flex",children:[e&&jsx("span",{className:"text-muted-foreground/60 mr-2 select-none",children:cr(e)}),jsx("span",{className:"text-foreground/80",children:t})]})}function ce({children:t,timestamp:e}){return jsxs("div",{className:"flex",children:[e&&jsx("span",{className:"text-info/60 mr-2 select-none",children:cr(e)}),jsx("span",{className:"text-info/90",children:t})]})}function on({children:t,timestamp:e}){return jsxs("div",{className:"flex",children:[e&&jsx("span",{className:"text-warning/60 mr-2 select-none",children:cr(e)}),jsx("span",{className:"text-warning/90",children:t})]})}function an({item:t,className:e}){if(!t.content)return null;let n=ji(t.content)??Ui(t.parsedJson);if(!n)return null;let{step_by_step:o,thinking:r,code:s,warnings:a,error:i}=n;return i?jsx(wt,{wrapperType:"info",className:e,children:jsx(ce,{children:i})}):!o&&!r&&!s&&!a?null:jsxs("div",{className:`text-foreground whitespace-pre-wrap leading-normal ${e||""}`,children:[o&&jsx(R,{content:o,className:"text-sm max-w-none"}),r&&jsx(ie,{content:r,state:typeof t.state=="string"?t.state:void 0}),s&&jsx("div",{className:"mb-2",children:jsx(vt,{language:"python",value:s,defaultOpen:false})}),a&&jsxs("div",{className:"text-sm text-warning",children:[jsx("div",{className:"font-medium",children:"Warnings"}),jsx(R,{content:a,className:"text-sm max-w-none"})]})]})}function ji(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)?t:null}function Ui(t){if(!Array.isArray(t))return null;let n=t.find(o=>o.type==="json");return n&&typeof n.content=="object"&&n.content!==null?n.content:null}function Io({item:t,className:e}){if(!t.content)return null;let n=Fi(t.content,t.parsedJson);if(!n)return null;let o=t.ui_content_type==="code_fix_diagnosis",r=n.thinking||n.diagnosis,s=t.state==="in_progress",a=n.edits?.length??0,i=o?"Diagnosing code issues\u2026":"Rewriting code\u2026",c=o?`Applied ${a} fix${a!==1?"es":""}`:`Rewrote code${n.code?` (${n.code.split(`
51
+ `).length} lines)`:""}`;return jsxs("div",{className:`text-sm text-muted-foreground ${e||""}`,children:[jsxs("div",{className:"flex items-center gap-2",children:[jsx(it,{status:s?"loading":"finished",size:14}),jsx("span",{children:s?i:c})]}),r&&jsx("div",{className:"mt-1",children:jsx(ie,{content:r,state:t.state})})]})}function Fi(t,e){if(typeof t=="object"&&t!==null&&!Array.isArray(t))return t;if(Array.isArray(e)){let n=e.find(o=>o.type==="json");if(n&&typeof n.content=="object"&&n.content!==null)return n.content}return null}function un({item:t,className:e}){let n=Gi(t);if(n.sort((a,i)=>a.index-i.index),n.length===0)return null;let o=n.some(a=>a.level==="error"),r=n.some(a=>a.level==="warning"),s=o?"info":r?"warning":"standard";return jsx("div",{className:`text-foreground leading-normal ${e||""}`,children:jsx(wt,{wrapperType:s,compact:true,children:n.map((a,i)=>jsx(Ji,{output:a},`${a.level}-${i}`))})})}function Ji({output:t}){switch(t.level){case "output":return jsx(le,{timestamp:t.timestamp,children:t.message});case "error":return jsx(ce,{timestamp:t.timestamp,children:t.message});case "warning":return jsx(on,{timestamp:t.timestamp,children:t.message});default:return jsx("div",{className:"text-muted-foreground",children:t.message})}}function Gi(t){let e=No(t.content);return e.length>0?e:No(t.parsedJson)}function No(t){return cn(t).map((n,o)=>Wi(n,o)).filter(n=>n!==null)}function cn(t){if(Array.isArray(t))return t.every(qi)?t.flatMap(e=>cn(e.content)):t;if(typeof t=="string"){let e=$(t);return e!=null?cn(e):cn(xt(t))}if(t&&typeof t=="object"){let e=t;if(Array.isArray(e.outputs))return e.outputs;if(typeof e.message=="string"||typeof e.stdout=="string"||typeof e.stderr=="string"||typeof e.content=="string")return [e]}return []}function Wi(t,e){if(!t||typeof t!="object")return null;let n=t,o=typeof n.message=="string"?n.message:typeof n.stdout=="string"?n.stdout:typeof n.stderr=="string"?n.stderr:typeof n.content=="string"?n.content:"";if(!o.trim())return null;let r=typeof n.level=="string"?n.level:n.stderr?"error":n.warning?"warning":"output";return {level:r==="error"||r==="warning"||r==="output"?r:"output",message:o,timestamp:typeof n.timestamp=="string"?n.timestamp:void 0,index:typeof n.index=="number"?n.index:e}}function qi(t){return !!(t&&typeof t=="object"&&"type"in t&&"content"in t)}function Ki(t){if(!t?.result||t.status==="error")return false;let e=t.result;return typeof e=="string"?e.trim()!=="":Array.isArray(e)?e.length>0:typeof e=="object"&&e!==null?Object.keys(e).length>0:true}function Qi(t,e,n){if(e?.finished_message)return e.finished_message;if(e?.running_message)return e.running_message;if(!e&&n?.running_message)return n.running_message;let o=t||"tool";return e?`Completed ${o}`:`Running ${o}...`}function ue({toolGroup:t,ContentComponent:e,className:n,fallbackClassName:o}){let[r,s]=useState(false),a=Q(),i=e??a?.ContentComponent;useEffect(()=>{Ze();},[]);let c=t.invocation,l=t.result,u=Ki(l),d=c?.name||l?.name,p=Qi(d,l,c),m=!l,g=u&&!m;return jsxs("div",{className:n,children:[jsx("span",{role:g?"button":void 0,tabIndex:g?0:void 0,onClick:()=>g&&s(!r),onKeyDown:f=>{g&&(f.key==="Enter"||f.key===" ")&&(f.preventDefault(),s(!r));},className:`text-sm ${m?"erdo-shimmer":g?"text-muted-foreground hover:text-foreground/70 cursor-pointer transition-colors":"text-muted-foreground"}`,children:p}),r&&u&&l&&jsx("div",{className:"mt-1",children:i?jsx(i,{content:{content:l.result,content_type:l.ui_content_type||"json"}}):jsx("pre",{className:o||"text-sm bg-gray-100 dark:bg-gray-800 p-2 rounded overflow-x-auto",children:JSON.stringify(l.result,null,2)})})]})}var Lt={Success:"success",Error:"error",RequiresInfo:"requires info"};function el(t){return t?t===Lt.Success?"finished":t===Lt.Error||t===Lt.RequiresInfo?"failed":"loading":"loading"}function Do(t){return t?t!==Lt.Success&&t!==Lt.Error&&t!==Lt.RequiresInfo:true}function nl(t,e){let n=e||"agent",o=M(t?.message);return o||(t?.status===Lt.Success?`Finished ${n}`:`Running ${n}...`)}function pn({content:t,botInvocation:e,isLoading:n=false,defaultOpen:o,adminLinkHref:r,adminLinkText:s="Open in Agent Designer",showAdminLink:a=false,onAdminClick:i,onExpand:c,EventsComponent:l,ContentComponent:u,className:d}){let p=()=>o!==void 0?o:Do(e?.currentStatus?.status),[m,g]=useState(p),[f,x]=useState(false),b=useRef(null);if(useEffect(()=>{if(e?.currentStatus){let v=e.currentStatus.status;if(b.current!==v&&(b.current=v,!f)){let I=Do(v);I&&!m?g(true):!I&&m&&g(false);}}},[e,f,m]),useEffect(()=>{m&&e&&c&&c(t.invocation_id,t.bot_id,t.bot_name);},[m,e,c,t]),n&&!e&&!t.transparent)return jsxs("div",{className:`flex items-center gap-2 text-sm text-muted-foreground ${d||""}`,children:[jsx(it,{status:"loading"}),jsxs("span",{children:["Loading ",t.bot_name,"..."]})]});if(!e)return null;let k=e.eventsByID&&Object.keys(e.eventsByID).length>0;if(t.transparent)return k?l?jsx(l,{eventsByID:e.eventsByID,defaultOpen:true}):jsx(Pt,{eventsByID:e.eventsByID,ContentComponent:u}):null;let y=el(e.currentStatus?.status),h=nl(e.currentStatus,t.bot_name),S=v=>{g(v),x(true);},_=v=>{i&&(v.preventDefault(),i(t.invocation_id,t.bot_id));};return jsxs(de.Root,{open:m,onOpenChange:S,className:`relative w-full max-w-4xl space-y-2 leading-normal bot-invocation-content ${d||""}`,children:[jsxs("div",{className:"flex items-center justify-between",children:[jsxs(de.Trigger,{className:"flex items-center gap-2 text-sm text-muted-foreground hover:text-foreground transition-colors cursor-pointer",children:[jsxs("div",{className:"text-sm font-medium flex items-center gap-2",children:[jsx(it,{status:y}),h]}),jsx(ChevronDown,{className:`h-4 w-4 transition-transform duration-200 ${m?"transform rotate-180":""}`})]}),a&&(r||i)&&jsxs("a",{href:r||"#",onClick:i?_:void 0,target:r?"_blank":void 0,rel:r?"noopener noreferrer":void 0,className:"flex items-center gap-1 text-sm text-muted-foreground hover:text-foreground transition-colors",children:[s,jsx(ArrowUpRight,{className:"h-3.5 w-3.5"})]})]}),jsx(de.Content,{children:jsx("div",{className:"space-y-2 max-w-3xl",children:k?l?jsx(l,{eventsByID:e.eventsByID,defaultOpen:m}):jsx(Pt,{eventsByID:e.eventsByID,ContentComponent:u}):jsx("span",{className:"text-sm text-muted-foreground",children:"No events to display"})})})]})}function Ro({content:t,isSearching:e=false,className:n}){let o=[];Array.isArray(t)?o=t:typeof t=="object"&&t!==null&&"q"in t?o=t.q:typeof t=="string"&&(o=[t]);let r=o.filter(s=>s&&typeof s=="string"&&s.trim()!=="");return r.length===0?null:jsx("div",{className:`flex flex-wrap gap-2 ${n||""}`,children:r.map(s=>jsxs("div",{className:"inline-flex items-center px-3 py-1.5 rounded-lg text-sm bg-muted/50 text-foreground border border-border/30",children:[e?jsx(Loader2,{className:"h-3 w-3 mr-2 text-muted-foreground flex-shrink-0 animate-spin"}):jsx(Search,{className:"h-3 w-3 mr-2 text-muted-foreground flex-shrink-0"}),jsx("span",{className:"line-clamp-1",children:s})]},s))})}function Ao({content:t,isSearching:e=false,className:n}){let o=[];if(Array.isArray(t))o=t;else if(typeof t=="object"&&t!==null&&"integration_queries"in t)o=t.integration_queries;else if(typeof t=="string")return null;let r=o.filter(s=>s&&s.query&&typeof s.query=="string"&&s.query.trim()!=="");return r.length===0?null:jsx("div",{className:`flex flex-wrap gap-2 ${n||""}`,children:r.map(s=>jsxs("div",{className:"inline-flex items-center px-3 py-1.5 rounded-lg text-sm bg-muted/50 text-foreground border border-border/30",children:[e?jsx(Loader2,{className:"h-3 w-3 mr-2 text-muted-foreground flex-shrink-0 animate-spin"}):jsx(Search,{className:"h-3 w-3 mr-2 text-muted-foreground flex-shrink-0"}),jsx("span",{className:"line-clamp-1",children:s.query})]},`${s.integration_config_id}-${s.resource_id}-${s.query}`))})}var gl=120;function yl(t,e){return !t||t.length<=e?t:t.slice(0,e).trimEnd()+"..."}function hl(t){switch(t){case "snippet":return Code;case "learning":return Brain;case "error":return AlertCircle;case "limitation":return AlertCircle;case "optimization":return Zap;default:return Lightbulb}}function xl(t){switch(t){case "snippet":return "Snippet";case "learning":return "Learning";case "error":return "Error";case "limitation":return "Limitation";case "optimization":return "Optimization";default:return t}}function kl({memory:t}){let[e,n]=useState(false),o=hl(t.type),r=xl(t.type),s=t.type==="snippet",a=yl(t.description||"",gl),i=t.content&&typeof t.content=="string"&&t.content.trim()!=="",c=s&&i;return jsxs(de.Root,{open:e,onOpenChange:n,className:"border border-border/50 rounded-lg overflow-hidden",children:[jsxs(de.Trigger,{className:`w-full text-left p-3 flex items-start gap-3 ${c?"hover:bg-muted/50 cursor-pointer":"cursor-default"}`,disabled:!c,children:[jsx("div",{className:"flex-shrink-0 mt-0.5",children:jsx(o,{className:"h-4 w-4 text-muted-foreground"})}),jsxs("div",{className:"flex-1 min-w-0",children:[jsxs("div",{className:"flex items-center gap-2 mb-1",children:[jsx("span",{className:"text-xs font-medium text-muted-foreground uppercase tracking-wide",children:r}),t.tags&&t.tags.length>0&&jsxs("div",{className:"flex gap-1 flex-wrap",children:[t.tags.slice(0,3).map((l,u)=>jsx("span",{className:"text-xs px-1.5 py-0.5 bg-muted rounded text-muted-foreground",children:l},u)),t.tags.length>3&&jsxs("span",{className:"text-xs text-muted-foreground",children:["+",t.tags.length-3]})]})]}),jsx("p",{className:"text-sm text-foreground",children:s?a:t.description||t.content})]}),c&&jsx(ChevronDown,{className:`h-4 w-4 text-muted-foreground flex-shrink-0 transition-transform duration-200 ${e?"rotate-180":""}`})]}),c&&jsx(de.Content,{children:jsx("div",{className:"border-t border-border/50 bg-muted/30",children:jsx("pre",{className:"p-3 text-sm overflow-x-auto whitespace-pre-wrap break-words font-mono",children:t.content})})})]})}function gn({content:t,className:e}){let n=Array.isArray(t)?t:t?.memories;return !n||n.length===0?jsx("p",{className:"text-sm text-muted-foreground",children:"No memories found."}):jsx("div",{className:`space-y-2 ${e||""}`,children:n.map(o=>jsx(kl,{memory:o},o.id))})}function ur(){return jsxs("span",{className:"inline-flex gap-1 text-muted-foreground",children:[jsx("span",{className:"animate-bounce",style:{animationDelay:"0ms"},children:"\u25CF"}),jsx("span",{className:"animate-bounce",style:{animationDelay:"150ms"},children:"\u25CF"}),jsx("span",{className:"animate-bounce",style:{animationDelay:"300ms"},children:"\u25CF"})]})}function Vo(){return jsx("div",{className:"flex items-center justify-center py-8",children:jsx(Loader2,{className:"animate-spin text-muted-foreground",size:24})})}function Sl(t){if(t.content_type==="bot_invocation"||t.content_type==="bot_invocation_result")return null;if(t.content&&typeof t.content=="object"){let n=t.content,o=n.tool_invocation_content;if(n.action_type==="bot.invoke"||o?.action_type==="bot.invoke")return null}if(t.content_type==="tool_invocation")return "tool_invocation";if(t.content_type==="tool_result")return "tool_result";if(!t.content||typeof t.content!="object")return null;let e=t.content;return "action_type"in e&&"name"in e&&"input"in e&&e.action_type!=="bot.invoke"?"result"in e?"tool_result":"tool_invocation":null}function $t({content:t,className:e,components:n}){let r=Q()?.onSuggestionClick,s=useMemo(()=>l=>jsx($t,{...l,components:n}),[n]);if(!t.content||t.content==="")return null;if(t.content&&typeof t.content=="object"){let l=t.content,u=l.tool_invocation_content;if(l.action_type==="bot.invoke"||u?.action_type==="bot.invoke")return null}let a=Sl(t),i;a?i=a:i=M(t.ui_content_type)||t.content_type;let c=n?.[i];if(c)return jsx(c,{content:t,className:e});switch(i){case "text":return jsx(we,{content:Bo(t),className:e});case "markdown":return jsx(R,{content:Bo(t),className:e});case "thinking":case "redacted_thinking":return jsx(oe,{item:t,className:e});case "json":return jsx(ht,{content:t.content,className:e});case "codegen_json":return jsx(an,{item:t,className:e});case "code_rewrite":case "code_fix_diagnosis":return jsx(Io,{item:t,className:e});case "sql_generation":return jsx(nn,{item:t,className:e});case "codeexec_output":return jsx(un,{item:t,className:e});case "log":return jsx(Ye,{item:t,className:e});case "websearch":case "websearch_output":case "web_search":return jsx(Xe,{item:t,className:e});case "search_queries":return jsx(Ro,{content:t.content,className:e});case "integration_queries":return jsx(Ao,{content:t.content,className:e});case "memory":return jsx(gn,{content:t.content,className:e});case "webparse":case "webparse_output":case "web_parse":return jsx(tn,{item:t,className:e});case "tool_group":return jsx(ue,{toolGroup:t.content,ContentComponent:s,className:e});case "bot_invocation":{let l=t.content,u=t.botInvocation;return jsx(pn,{content:l,botInvocation:u,ContentComponent:s,className:e})}case "chart":case "ui_generation":{let l=t.invocation_id||t.created_by_invocation_id;if(t.chartConfig&&t.chartData)return jsx(Ke,{config:t.chartConfig,data:t.chartData,className:e});let u=De(t.content);if(u&&Oo(u))return Mo(u,e,l,r);let d=De(t.parsedJson);return d&&Oo(d)?Mo(d,e,l,r):u&&u.length>0||d&&d.length>0?jsx("p",{className:"w-full max-w-4xl text-sm text-muted-foreground",children:"The LLM generated an invalid response. Please try again."}):null}case "table":return t.tableColumns&&t.tableData?jsx(Qe,{columns:t.tableColumns,data:t.tableData,className:e}):jsx(ht,{content:t.content,className:e});case "tool_invocation":{let l=t.content,u={invocation:{invocation_id:l.id||"",action:l.action_type||"",params:l.input||{},id:l.id||"",name:l.name||"",input:l.input||{},description:l.description,action_type:l.action_type,running_message:l.running_message}};return jsx(ue,{toolGroup:u,ContentComponent:s,className:e})}case "tool_result":{let l=t.content,u={invocation:{invocation_id:l.id||"",action:l.action_type||"",params:l.input||{}},result:{invocation_id:l.id||"",result:l.result}},d={...u,invocation:{...u.invocation,id:l.id||"",name:l.name||"",input:l.input||{},action_type:l.action_type,description:l.description},result:{...u.result,id:l.id||"",name:l.name||"",input:l.input||{},result:l.result,status:l.status||"success",action_type:l.action_type,description:l.description,ui_content_type:l.ui_content_type||M(t.ui_content_type),running_message:l.running_message||l.running_status,finished_message:l.finished_message||l.finished_status}};return jsx(ue,{toolGroup:d,ContentComponent:s,className:e})}default:return typeof t.content=="string"?jsx(we,{content:t.content,className:e}):null}}function Bo(t){return typeof t.content=="string"?t.content:""}function Oo(t){return t.some(e=>{if(e.type==="text"){if(typeof e.content!="string")return false;let n=e.content.trim();return !(!n||n.startsWith("{")||n.startsWith("["))}if(e.type==="json"){let n=e.content,o=Lo(n);return o!==void 0&&o.length>0||te(n)}return false})}function Lo(t){let e=t?.children??t?.blocks;return Array.isArray(e)?e:void 0}function De(t){if(t==null)return null;if(Array.isArray(t))return t.every(o=>o&&typeof o=="object"&&"type"in o&&"content"in o)?t:t.every(o=>o&&typeof o=="object"&&"_type"in o)?[{type:"json",content:{children:t}}]:null;if(typeof t=="object")return [{type:"json",content:t}];if(typeof t=="string"){let e=xt(t);return De(e)}return null}function Mo(t,e,n,o){return jsx(Fragment,{children:t.map((r,s)=>{if(r.type==="text"){let a=typeof r.content=="string"?r.content:String(r.content);return jsx(R,{content:a,className:e},`${s}-${a.length}`)}if(r.type==="json"){let a=r.content,i=Lo(a);return i?jsx(kt__default.Fragment,{children:jsx(re,{nodes:i,className:e,invocationId:n,onSuggestionClick:o})},`${s}-${i.length}`):te(a)?jsx(ur,{},s):null}return null})})}function Il({result:t,isStreaming:e,className:n,components:o,streamingText:r}){let s=t?$o(t):[];return r&&s.length===0?jsxs("div",{className:n?`erdo-ui ${n}`:"erdo-ui space-y-4",children:[jsxs("div",{className:"flex items-center gap-2",children:[jsx("div",{className:"animate-pulse w-2 h-2 bg-blue-500 rounded-full"}),jsx("span",{className:"text-sm text-gray-500",children:"Streaming response..."})]}),jsx("div",{className:"border rounded-lg p-4 whitespace-pre-wrap",children:r})]}):s.length===0&&!e?null:jsxs("div",{className:n?`erdo-ui ${n}`:"erdo-ui space-y-4",children:[s.map((a,i)=>jsx("div",{children:jsx($t,{content:a,components:o})},a.id||i)),e&&s.length===0&&!r&&jsxs("div",{className:"flex items-center gap-2",children:[jsx("div",{className:"animate-pulse w-2 h-2 bg-blue-500 rounded-full"}),jsx("span",{className:"text-sm text-gray-500",children:"Processing..."})]})]})}function $o(t){let e=[],n=new Set;if(t.events)for(let o of t.events){let r=o.metadata,s=o.payload;if(r?.user_visibility==="visible"&&s?.status==="success"&&s?.output){let a=s.output;if(a.content&&Array.isArray(a.content))for(let i=0;i<a.content.length;i++){let c=a.content[i],l=c.id||`event-result-${i}`;if(n.has(l))continue;n.add(l);let u=r?.ui_content_type;e.push({id:l,content_type:c.content_type||"text",ui_content_type:u,content:c.content,data:c.data,chartConfig:c.chartConfig,chartData:c.chartData,tableColumns:c.tableColumns,tableData:c.tableData});}}}if(e.length===0&&t.result?.output?.content){let o=t.result.output.content;if(Array.isArray(o))for(let r=0;r<o.length;r++){let s=o[r],a=s.id||`result-${r}`;if(n.has(a))continue;n.add(a);let i=s.ui_content_type;e.push({...s,id:a,ui_content_type:i});}}return e}function Nl(t){if(t.length===0)return t;let e=false;for(let o=0;o<t.length-1;o++){let r=t[o].type,s=t[o+1].type;if(r==="text"&&s==="json"||r==="json"&&s==="text"){e=true;break}}if(!e)return t;let n=[];for(let o=0;o<t.length;o++){let r=t[o],s=o>0?t[o-1]:null,a=o<t.length-1?t[o+1]:null;if(r.type==="text"&&typeof r.content=="string"){let i=r.content,c=false;if(a?.type==="json"){let l=i;i=i.replace(/```(?:json)?\s*$/,""),l!==i&&(c=true);}if(s?.type==="json"){let l=i;i=i.replace(/^\s*```/,""),l!==i&&(c=true);}(!c||i.trim())&&n.push({...r,content:i});}else n.push(r);}return n}var Tl=new Set(["=","("]);function El(t){if(!t||t.length===0)return true;let e=t[t.length-1];return !Tl.has(e)}function dr(t,e){if(t.user_visibility!=="visible"||!ve(t.content_type,t.ui_content_type.String))return typeof t.content=="object"?t:{...t,content:(t.content||"")+e};if(typeof t.content=="object"&&t.content!==null)return t;let n=t.parsedJson?[...t.parsedJson]:[];n.length>0&&(n[n.length-1]={...n[n.length-1]});let o=(t.content||"")+e,r=t._isInJson??false,s=t._charBuffer??"",a=t._jsonParser,i=n.length>0&&t._currentContent?n[n.length-1]:void 0;if(typeof e=="object")return {...t,content:(t.content||"")+JSON.stringify(e),parsedJson:[...n,e],_isInJson:r,_charBuffer:s,_jsonParser:a,_currentContent:void 0};let c=o.length-e.length,l="",u=()=>{l&&(!i||i.type!=="text"?(i={content:l,type:"text"},n.push(i)):i.content=i.content+l,l="");};for(let m=0;m<e.length;m++){let g=e[m];if(!r&&g==="{"){let f=o.slice(0,c+m);if(El(f)){u(),s="{";continue}}if(s&&Bt(g)){s+=g;continue}if(!r&&s?.match(/^\s*{\s*$/)&&g==='"'){r=true,a=new nt;let x={content:a.add("{"),type:"json"};i?.content?typeof i.content=="string"&&i.content.match(/^\s*{$/)?(i=x,n[n.length-1]=x):(typeof i.content=="string"&&(i.content=i.content.replace(/{$/,"")),i=x,n.push(x)):(i=x,n.push(x));}if(r)try{let f=a.add(g);i.content=f,a.state==="END"&&(r=!1,i=void 0);}catch{if(r=false,a=void 0,i&&i.type==="json"){let x=o.lastIndexOf("{"),b=o.slice(x,c+m+1);i.type="text",i.content=b;}continue}else l+=s+g;s="";}u();let d=i,p=Nl(n);return {...t,content:o,parsedJson:p,_isInJson:r,_charBuffer:s,_jsonParser:a,_currentContent:d}}function Re(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function Dl(t){if(!Re(t)||!("content"in t))return t;let e=t.content;return e===void 0?t:e}function fe(t,e){let n=Dl(e);if((t==="thinking"||t==="redacted_thinking")&&typeof n=="string"){let o=$(n);return Re(o)?{content:o}:{content:n}}if(t==="json"&&typeof n=="string"){let o;try{let s=xt(n);Array.isArray(s)&&(o=s);}catch{}let r=$(n);return r!=null?{content:r,parsedJson:o}:{content:n,parsedJson:o}}return {content:n}}function Rl(t,e){return typeof e=="string"?e:Re(e)?t==="redacted_thinking"?typeof e.data=="string"?e.data:"":typeof e.thinking=="string"?e.thinking:"":""}function hn(t,e,n){let o=fe(t,n);if(t!=="thinking"&&t!=="redacted_thinking")return o;let r=Rl(t,e);return r?t==="redacted_thinking"?Re(o.content)&&typeof o.content.data!="string"?{...o,content:{...o.content,data:r}}:o:Re(o.content)&&typeof o.content.thinking!="string"?{...o,content:{...o.content,thinking:r}}:o:o}function xn(t){let e=t.metadata?.step_id??t.payload?.step_id;return typeof e=="string"?e:""}function pr(t){let e=t.metadata?.message_content_id??t.payload?.message_content_id;return typeof e=="string"?e:""}function Al(t){let e=t.metadata?.message_id;return typeof e=="string"?e:""}function mr(t,e){if(e.metadata?.content_type==="agent_invocation")return true;let n=Al(e);return !!(n&&n!==t.messageId)}function Pl(t){return typeof t=="string"?t:typeof t=="object"&&t!==null&&"content"in t?String(t.content??""):""}function kn(){return {nodes:[],byStepId:{},byContentId:{},childrenByParentId:{},rootStepId:null,messageId:null,isStreaming:false}}function fr(t,e){switch(e.type){case "message created":return Bl(t,e);case "message finished":return jo(t);case "step_started":return Ol(t,e);case "step_finished":return Ml(t,e);case "create message content":return Vl(t,e);case "message content delta":return Ll(t,e);case "message content result":return $l(t,e);case "status":return Ul(t,e);default:return t}}function Bl(t,e){let n=e.metadata?.message_id??e.payload?.message_id;if(!n)return t;let o=e.payload?.role,r=!!e.metadata?.invocation_id;return o==="assistant"||!o&&r?{...t,messageId:n}:t}function Ol(t,e){let n=e.payload;if(!n?.step_id)return t;let o=t.byStepId[n.step_id],r=n.parent_step_id??null,s={kind:"step",id:n.step_id,parentId:r,type:n.type||o?.type||"agent",name:n.name||o?.name||"",key:n.key??o?.key,status:"running",contentType:n.content_type??o?.contentType,runningStatus:n.running_status??o?.runningStatus,finishedStatus:n.finished_status??o?.finishedStatus,hidden:n.hidden??o?.hidden},i=!r&&!t.rootStepId?n.step_id:t.rootStepId,c=r??"__root__",l=t.childrenByParentId[c]??[],u=l.includes(n.step_id)?t.childrenByParentId:{...t.childrenByParentId,[c]:[...l,n.step_id]},d=o?t.nodes.map(p=>p.kind==="step"&&p.id===n.step_id?s:p):[...t.nodes,s];return {...t,nodes:d,byStepId:{...t.byStepId,[n.step_id]:s},childrenByParentId:u,rootStepId:i,isStreaming:true}}function Ml(t,e){let n=e.payload;if(!n?.step_id)return t;let o=t.byStepId[n.step_id];if(!o){let c={kind:"step",id:n.step_id,parentId:null,type:"agent",name:"",status:n.status==="error"?"error":"completed",error:n.error,finishedStatus:n.finished_status};return {...t,nodes:[...t.nodes,c],byStepId:{...t.byStepId,[n.step_id]:c}}}let r={...o,status:n.status==="error"?"error":"completed",error:n.error??o.error,...n.finished_status?{finishedStatus:n.finished_status}:{}},s=n.step_id===t.rootStepId,a=t.nodes.map(c=>c.kind==="step"&&c.id===n.step_id?r:c.kind==="content"&&c.stepId===n.step_id?{...c,state:"completed"}:c),i={...t.byContentId};for(let[c,l]of Object.entries(i))l.stepId===n.step_id&&(i[c]={...l,state:"completed"});return {...t,nodes:a,byStepId:{...t.byStepId,[n.step_id]:r},byContentId:i,isStreaming:s?false:t.isStreaming}}function Vl(t,e){if(mr(t,e))return t;let n=pr(e);if(!n)return t;let o=xn(e)||null,r=typeof e.metadata?.content_type=="string"&&e.metadata.content_type||"text",s=typeof e.metadata?.ui_content_type=="string"&&e.metadata.ui_content_type||r,a=t.byContentId[n];if(a){let c={...a,stepId:a.stepId??o,contentType:a.contentType==="text"?r:a.contentType,uiContentType:a.uiContentType==="text"?s:a.uiContentType};return {...t,nodes:t.nodes.map(l=>l.kind==="content"&&l.id===n?c:l),byContentId:{...t.byContentId,[n]:c}}}let i={kind:"content",id:n,stepId:o,contentType:r,uiContentType:s,text:"",state:"streaming"};return {...t,nodes:[...t.nodes,i],byContentId:{...t.byContentId,[n]:i}}}function Ll(t,e){if(mr(t,e))return t;let n=pr(e),o=Pl(e.payload);if(!n||!o)return t;let r=t.byContentId[n],s=t;if(!r){let u=xn(e)||null,d=typeof e.metadata?.content_type=="string"&&e.metadata.content_type||"text",p=typeof e.metadata?.ui_content_type=="string"&&e.metadata.ui_content_type||d;r={kind:"content",id:n,stepId:u,contentType:d,uiContentType:p,text:"",state:"streaming"},s={...t,nodes:[...t.nodes,r],byContentId:{...t.byContentId,[n]:r}};}let a=r.text+o,i={},c=r.parsedContent;if(r.contentType==="json"){let u=Gl(r,o);c=u.parsedContent,i=u._parserFields;}let l={...r,text:a,...c!==void 0?{parsedContent:c}:{},...i};return {...s,nodes:s.nodes.map(u=>u.kind==="content"&&u.id===n?l:u),byContentId:{...s.byContentId,[n]:l}}}function $l(t,e){if(mr(t,e))return t;let n=pr(e);if(!n)return t;let o=xn(e)||null,r=typeof e.metadata?.content_type=="string"&&e.metadata.content_type||"text",s=typeof e.metadata?.ui_content_type=="string"&&e.metadata.ui_content_type||r,a=t.byContentId[n],i=a?hn(r,a.result??a.text,e.payload):fe(r,e.payload);if(!a){let l={kind:"content",id:n,stepId:o,contentType:r,uiContentType:s,text:"",result:i.content,...i.parsedJson?{parsedContent:i.parsedJson}:{},state:"completed"};return {...t,nodes:[...t.nodes,l],byContentId:{...t.byContentId,[n]:l}}}let c={...a,result:i.content,...i.parsedJson?{parsedContent:i.parsedJson}:{},state:"completed"};return {...t,nodes:t.nodes.map(l=>l.kind==="content"&&l.id===n?c:l),byContentId:{...t.byContentId,[n]:c}}}function jo(t){let e=t.nodes.map(o=>o.kind==="content"&&o.state==="streaming"?{...o,state:"completed"}:o),n={...t.byContentId};for(let[o,r]of Object.entries(n))r.state==="streaming"&&(n[o]={...r,state:"completed"});return {...t,nodes:e,byContentId:n,isStreaming:false}}function jl(t){let e=t.payload;return typeof e=="string"?e:e?.message||e?.status_message||e?.status||""}function Ul(t,e){let n=xn(e)||null,o=jl(e);if(!o)return t;if(n){let s=t.byStepId[n];return s?Fl(t,s,n,o):Jl(t,n,o)}let r={kind:"status",stepId:null,message:o};return {...t,nodes:[...t.nodes,r]}}function Fl(t,e,n,o){let r=e.status==="completed"||e.status==="error"?{...e,finishedStatus:o}:{...e,runningStatus:o};return {...t,nodes:t.nodes.map(s=>s.kind==="step"&&s.id===n?r:s),byStepId:{...t.byStepId,[n]:r}}}function Jl(t,e,n){let o=false,r=t.nodes.map(a=>{if(a.kind!=="content"||a.stepId!==e||a.contentType!=="tool_invocation"&&a.contentType!=="tool_result"||!a.result||typeof a.result!="object")return a;o=true;let i=a.state==="completed"?"finished_message":"running_message";return {...a,result:{...a.result,[i]:n}}});if(!o)return t;let s={...t.byContentId};for(let a of r)a.kind==="content"&&a.stepId===e&&t.byContentId[a.id]!==a&&(s[a.id]=a);return {...t,nodes:r,byContentId:s}}function Gl(t,e){let n=t,o={content:n._rawText??t.text,user_visibility:"visible",content_type:"json",ui_content_type:{String:t.uiContentType||"json",Valid:true},parsedJson:t.parsedContent??[],_jsonParser:n._jsonParser,_isInJson:n._isInJson,_charBuffer:n._charBuffer??"",_currentContent:n._currentContent},r=dr(o,e);return {parsedContent:r.parsedJson,_parserFields:{_rawText:r.content,_jsonParser:r._jsonParser,_isInJson:r._isInJson,_charBuffer:r._charBuffer,_currentContent:r._currentContent}}}function Wl(t){for(let e of t.nodes){if(e.kind==="step"){let o=t.byStepId[e.id];if(o&&o.type==="tool_call"&&!o.hidden)return true;continue}if(e.kind!=="content")continue;let n=t.byContentId[e.id];if(n&&!(n.contentType==="tool_invocation"||n.contentType==="agent_invocation")&&(n.contentType==="tool_result"&&n.result||n.text||n.parsedContent?.length||n.result))return true}return false}function bn(t,e,n){return e.type!=="llm_call"?false:!(e.parentId===t.rootStepId)&&n.contentType==="text"}function Cn(t){if(!t.rootStepId)return [];let e=[],n={};function o(s){if(!s)return false;if(s in n)return n[s];let a=s,i=false,c=[];for(;a;){if(a in n){i=i||n[a];break}c.push(a);let l=t.byStepId[a];if(!l)return false;if(l.hidden){i=true;break}a=l.parentId;}for(let l of c)n[l]=i;return i}function r(s){let a=false;if(s.contentType==="thinking"||s.contentType==="redacted_thinking"){let c=s.result??s.text;e.push({id:s.id,content_type:s.contentType,ui_content_type:s.uiContentType||s.contentType,content:c,state:s.state==="streaming"?"in_progress":"completed"}),a=true;}else if(s.contentType==="json"){if(s.parsedContent)for(let c=0;c<s.parsedContent.length;c++){let l=s.parsedContent[c];if(l.type==="text"&&l.content)e.push({id:`${s.id}-text-${c}`,content_type:"text",ui_content_type:"markdown",content:String(l.content)}),a=true;else if(l.type==="json"&&typeof l.content=="object"){let u=l.content;typeof u.output=="string"?e.push({id:`${s.id}-text-${c}`,content_type:"text",ui_content_type:"markdown",content:u.output}):typeof u.markdown=="string"?e.push({id:`${s.id}-text-${c}`,content_type:"text",ui_content_type:"markdown",content:u.markdown}):e.push({id:`${s.id}-json-${c}`,content_type:"json",ui_content_type:s.uiContentType||"ui_generation",content:u,state:s.state==="streaming"?"in_progress":"completed"}),a=true;}}else if(s.result){let c=typeof s.result=="string"?ql(s.result):s.result;c&&typeof c=="object"&&(e.push({id:s.id,content_type:"json",ui_content_type:s.uiContentType||"json",content:c,state:s.state==="streaming"?"in_progress":"completed"}),a=true);}}if(a)return;let i=s.result??s.text;i&&e.push({id:s.id,content_type:s.contentType||"text",ui_content_type:s.uiContentType||"markdown",content:i,state:s.state==="streaming"?"in_progress":"completed"});}for(let s of t.nodes){if(s.kind!=="content")continue;let a=t.byContentId[s.id];if(!a||a.contentType==="tool_invocation")continue;if(a.contentType==="tool_result"){a.result&&a.result.action_type!=="bot.invoke"&&e.push({id:a.id,content_type:"tool_result",ui_content_type:a.uiContentType||"tool_result",content:a.result});continue}if(a.stepId===null){r(a);continue}let i=t.byStepId[a.stepId];if(!i){r(a);continue}o(i.id)||i.type!=="tool_call"&&(i.type==="llm_call"&&bn(t,i,a)||r(a));}return e}function ql(t){return t?$(t):null}function Yl(t){return (t.status==="completed"||t.status==="error")&&t.finishedStatus?t.finishedStatus:t.runningStatus?t.runningStatus:t.name.replace(/_/g," ")}function Xl(t){return t==="running"?"loading":t==="error"?"failed":"finished"}function tc(t,e){let n=t.byStepId[e];if(!n||n.type!=="agent"||(t.childrenByParentId[e]||[]).some(s=>{let a=t.byStepId[s];return !!a&&a.type==="agent"&&!a.hidden}))return false;for(let s of t.nodes){if(s.kind!=="step")continue;let a=t.byStepId[s.id];if(!a||a.type!=="agent"||a.hidden||a.id===e)continue;let i=a.id;for(;i;){if(i===e)return true;i=t.byStepId[i]?.parentId??null;}}return false}function ec(t){return t==="info"?"info":t==="warning"?"warning":"standard"}function nc(t){let e=t.trim();if(!e)return null;let n=new Set;n.add(e);let o=e.match(/^```[a-zA-Z0-9_-]*\n([\s\S]*?)\n```$/);o?.[1]&&n.add(o[1].trim());let r=e.indexOf("{"),s=e.lastIndexOf("}");r>=0&&s>r&&n.add(e.slice(r,s+1).trim());let a=e.indexOf("["),i=e.lastIndexOf("]");a>=0&&i>a&&n.add(e.slice(a,i+1).trim());for(let c of n){if(!c)continue;let l=$(c);if(l!=null)return typeof l=="string"?$(l)??l:l}return null}function Uo(t,e){let n=[],o="",r=[],s=0;function a(){r.length>0&&(n.push({id:`${e}-exec-${s}`,type:"codeexec",content:r.join(`
52
+ `),wrapperType:ec(o)}),s++,r=[]);}for(let i of t){let c=typeof i.message=="string"?i.message:"";if(!c)continue;let l=typeof i.level=="string"?i.level:"output";l!==o&&r.length>0&&a(),o=l,r.push(c);}return a(),n}function Fo(t,e,n){let o=[];for(let r of t){if(r.contentType==="tool_invocation"||r.contentType==="tool_result")continue;let s=`${e}-content-${r.id}`,a=r.state==="streaming"?"running":"completed";if(r.contentType==="thinking"||r.contentType==="redacted_thinking"){let i=r.result??r.text;if(!i)continue;o.push({id:s,type:"thinking",contentItem:{id:s,content_type:r.contentType,ui_content_type:r.uiContentType||r.contentType,content:i,state:r.state==="streaming"?"in_progress":"completed"},status:a});continue}if(r.result){let i=r.result;if(typeof r.result=="string")if(r.contentType==="json"){let c=$(r.result);if(c!=null)i=c;else {let l=nc(r.result);if(l!==null)i=l;else if(!(r.parsedContent&&r.parsedContent.length>0))if(n){o.push({id:s,type:"content",contentItem:{id:s,content_type:r.contentType,ui_content_type:r.uiContentType||"ui_generation",content:r.result,state:r.state==="streaming"?"in_progress":"completed"}});continue}else {o.push({id:s,type:"text",content:r.result});continue}}}else {o.push({id:s,type:"text",content:r.result});continue}if(Array.isArray(i)&&i.length>0){o.push(...Uo(i,s));continue}if(typeof i=="object"&&i!==null){let c=i;if(typeof c.code=="string"){o.push({id:s,type:"codegen",contentData:c,status:a});continue}if(n){o.push({id:s,type:"content",contentItem:{id:s,content_type:r.contentType,ui_content_type:r.uiContentType,content:i,state:r.state==="streaming"?"in_progress":"completed"}});continue}}}if(r.contentType==="json"&&r.parsedContent){if(r.uiContentType==="codeexec_output"){let i=[];for(let c of r.parsedContent)c.type==="json"&&typeof c.content=="object"&&i.push(c.content);o.push(...Uo(i,s));continue}for(let i=0;i<r.parsedContent.length;i++){let c=r.parsedContent[i];if(c.type==="text"&&c.content)o.push({id:`${s}-text-${i}`,type:"text",content:String(c.content)});else if(c.type==="json"&&typeof c.content=="object"){let l=c.content;typeof l.code=="string"?o.push({id:`${s}-codegen-${i}`,type:"codegen",contentData:l,status:a}):typeof l.markdown=="string"?o.push({id:`${s}-text-${i}`,type:"text",content:l.markdown}):typeof l.output=="string"?o.push({id:`${s}-text-${i}`,type:"text",content:l.output}):n&&o.push({id:`${s}-content-${i}`,type:"content",contentItem:{id:`${s}-content-${i}`,content_type:"json",ui_content_type:r.uiContentType||"ui_generation",content:l,state:r.state==="streaming"?"in_progress":"completed"}});}}continue}r.text&&r.contentType!=="json"&&o.push({id:s,type:"text",content:r.text});}return o}function rc(t,e){if(!t.rootStepId)return [];let n=[],o={},r={},s=new Set,a={},i={},c={},l={};function u(y){if(y!==t.rootStepId)return false;if(y in a)return a[y];let h=tc(t,y);return a[y]=h,h}function d(y){return r[y]||(r[y]=[]),r[y]}function p(y){if(y)return t.byStepId[y]}function m(y){if(!y)return false;if(y in l)return l[y];let h=y,S=[],_=false;for(;h;){if(h in l){_=_||l[h];break}S.push(h);let v=p(h);if(!v)break;if(v.hidden){_=true;break}h=v.parentId;}for(let v of S)l[v]=_;return _}function g(y){return m(y.id)}for(let y of t.nodes){if(y.kind!=="content")continue;let h=t.byContentId[y.id];if(!h||!h.stepId||h.contentType==="tool_invocation"||h.contentType==="tool_result"||h.contentType==="agent_invocation"||!h.text&&!h.result&&!h.parsedContent?.length)continue;let S=p(h.stepId);if(!S||g(S)||S.type==="llm_call"&&bn(t,S,h))continue;let _=h.stepId;for(;_;){c[_]=true;let v=p(_);if(!v)break;_=v.parentId;}}function f(y){return !!c[y]}function x(y){if(!y)return null;if(y in i)return i[y];let h=y;for(;h;){let S=p(h);if(!S)break;let _=h===t.rootStepId,v=S.type==="agent"&&!S.hidden&&(!_||!u(S.id)),I=S.type==="tool_call"&&!S.hidden;if(v||I)return i[y]=h,h;h=S.parentId;}return i[y]=null,null}function b(y,h){if(h.length===0)return;let S=x(y);if(!S){n.push(...h);return}let _=o[S];if(!_){d(S).push(...h);return}_.children||(_.children=[]),_.children.push(...h);}function k(y,h,S){if(!S||typeof S!="object")return [];let _=S,v=typeof _.result=="object"&&_.result!==null?_.result:_,I=[];typeof v.code=="string"&&v.code.trim()&&I.push({id:`${y}-${h}-codegen`,type:"codegen",contentData:v});let U=typeof v.output=="string"?v.output.trim():"";return U&&I.push({id:`${y}-${h}-output`,type:"codeexec",content:U}),I}for(let y of t.nodes){if(y.kind==="step"){let _=t.byStepId[y.id];if(!_||_.hidden||_.type==="llm_call"||_.id===t.rootStepId&&u(_.id)||s.has(_.id))continue;s.add(_.id);let v={id:_.id,type:"step",label:Yl(_),status:_.status},I=r[_.id];I&&I.length>0&&(v.children=I,delete r[_.id]),o[_.id]=v,b(_.parentId,[v]);continue}if(y.kind!=="content")continue;let h=t.byContentId[y.id];if(!h||h.contentType==="tool_invocation")continue;if(h.stepId===null){n.push(...Fo([h],"root",e));continue}let S=t.byStepId[h.stepId];if(S&&!g(S)&&!(S.type==="llm_call"&&bn(t,S,h))){if(S.type==="tool_call"&&h.contentType==="tool_result"){if(f(S.id))continue;b(S.id,k(S.id,h.id,h.result));continue}b(S.id,Fo([h],S.id,e));}}return n}function Jo({node:t,ContentComponent:e}){let[n,o]=useState(t.status==="running"),r=useRef(t.status==="running");if(useEffect(()=>{r.current&&t.status!=="running"&&o(false),r.current=t.status==="running";},[t.status]),t.type==="text")return jsx(R,{content:t.content||"",className:"max-w-none"});if(t.type==="codegen"&&t.contentData){let{code:i,step_by_step:c,thinking:l}=t.contentData;return jsxs("div",{className:"space-y-2",children:[c&&jsx(R,{content:c,className:"text-sm max-w-none"}),l&&jsx(ie,{content:l,state:t.status==="running"?"in_progress":"completed"}),i&&jsx(vt,{language:"python",value:i,defaultOpen:false})]})}if(t.type==="codeexec"&&t.content){let i=t.wrapperType||"standard";return jsx(wt,{wrapperType:i,compact:true,children:jsx(le,{children:t.content})})}if(t.type==="thinking"&&t.contentItem)return jsx(oe,{item:t.contentItem});if(t.type==="content"&&t.contentItem&&e)return jsx(e,{content:t.contentItem});if(t.type==="content"&&t.contentItem)return jsx($t,{content:t.contentItem});let s=!!t.children?.length,a=t.status==="running"?"text-foreground":"text-muted-foreground";return jsxs(de.Root,{open:n,onOpenChange:o,className:"w-full",children:[jsxs(de.Trigger,{className:`flex items-center justify-between w-full text-sm py-0.5 ${a} ${s?"hover:text-foreground cursor-pointer":"cursor-default"}`,disabled:!s,children:[jsxs("div",{className:"flex items-center gap-2",children:[jsx(it,{status:Xl(t.status),size:14}),jsx("span",{children:t.label})]}),s&&jsx(ChevronDown,{className:`h-4 w-4 shrink-0 text-muted-foreground/50 transition-transform duration-200 ${n?"rotate-180":""}`})]}),s&&jsx(de.Content,{children:jsx("div",{className:"ml-5 mt-1 flex flex-col gap-1",children:t.children?.map(i=>jsx(Jo,{node:i,ContentComponent:e},i.id))})})]})}function Go({agentState:t,ContentComponent:e,className:n}){if(!t.rootStepId)return null;let o=useMemo(()=>rc(t,e),[t,e]);return o.length===0?null:jsx("div",{className:`flex flex-col gap-1 ${n||""}`,children:o.map(r=>jsx(Jo,{node:r,ContentComponent:e},r.id))})}function Sn(t){if(t.type==="dynamic-tool"&&t.toolName?.startsWith("erdo_"))return t.toolName;if(t.type.startsWith("tool-erdo_"))return t.type.slice(5)}function oc(t){return Sn(t)!==void 0}var sc={erdo_render_chart:"ui",erdo_render_table:"ui",erdo_ask_data_question:"markdown",erdo_list_datasets:"data",erdo_search_datasets:"data",erdo_get_dataset_schema:"data",erdo_gather_dataset_context:"data",erdo_query_data:"data",erdo_run_query:"data",erdo_fetch_dataset_contents:"data",erdo_list_threads:"data",erdo_get_thread_messages:"data"};function gr(t){return sc[t]??"data"}function Wo({part:t,className:e,onSuggestionClick:n}){let o=Sn(t);if(!o)return null;if(["partial-call","call","input-streaming","input-available"].includes(t.state))return jsxs("div",{className:e||"flex items-center gap-2 py-4 text-muted-foreground",children:[jsx(Loader2,{className:"h-4 w-4 animate-spin"}),jsxs("span",{className:"text-sm",children:["Running ",ic(o),"..."]})]});if(t.state==="result"||t.state==="output-available"){let s=t.output??t.result;if(t.errorText)return jsxs("div",{className:e||"flex items-center gap-2 py-2 text-sm text-destructive",children:[jsx(AlertCircle,{className:"h-4 w-4 shrink-0"}),jsx("span",{children:t.errorText})]});if(s&&typeof s=="object"&&"error"in s&&s.error)return jsxs("div",{className:e||"flex items-center gap-2 py-2 text-sm text-destructive",children:[jsx(AlertCircle,{className:"h-4 w-4 shrink-0"}),jsx("span",{children:String(s.error)})]});switch(gr(o)){case "ui":{let i=s?.children;return i&&Array.isArray(i)&&i.length>0?jsx("div",{className:e,children:jsx(re,{nodes:i,invocationId:t.toolCallId,onSuggestionClick:n})}):s?jsx("div",{className:e,children:jsx(ht,{content:s})}):null}case "markdown":{let i=s?.answer;if(i)return jsx("div",{className:e,children:jsx(R,{content:i})});let c=s?.output;return c?jsx("div",{className:e,children:jsx(R,{content:c})}):s?jsx("div",{className:e,children:jsx(ht,{content:s})}):null}case "data":return s!=null?jsx("div",{className:e,children:jsx(ht,{content:s})}):null}}return t.state==="output-error"?jsxs("div",{className:e||"flex items-center gap-2 py-2 text-sm text-destructive",children:[jsx(AlertCircle,{className:"h-4 w-4 shrink-0"}),jsx("span",{children:t.errorText||"Tool execution failed"})]}):null}function ic(t){return t.replace(/^erdo_/,"").split("_").map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(" ")}function J(t){if(!t)throw new Error("Entity is null");if(!("_type"in t))throw new Error(`Entity ${JSON.stringify(t)} is missing _type`);return t._type}function lc(t){return t.contents.length===0?null:t.contents[t.contents.length-1]||null}function Qo(t){return t.contents.length===0?null:t.contents[0]||null}function qo(t){let e=false,n=t.contents.map(r=>r.state!=="in_progress"?r:(e=true,{...r,state:"completed",updated_at:new Date().toISOString()}));if(!e&&t.state==="completed")return t;let o={...t.contentsByID};for(let r of n)o[r.id]=r;return {...t,state:"completed",contents:n,contentsByID:o}}function kr(t,e){let n=J(t);switch(n){case "message":return t;case "step":let o=t;if(e){let a=o.eventsByID[e]?.Message;return a||Xo({},"",e)}let s=Object.keys(o.eventsByID).reverse();for(let a of s){let i=o.eventsByID[a];if(i&&i.Message)return i.Message}throw new Error("Unable to find message for step");default:throw new Error(`Unable to have messages on entity type ${n}`)}}function cc(t,e){switch(J(t)){case "message_content":return t;case "output_content":return t;case "message":return ye(t,e);case "output":return he(t,e);case "step":let o=wn(t,e);return o?he(o,e):null;default:return null}}function ye(t,e){let n=J(t);switch(n){case "message_content":return t;case "message":let o=kr(t);if(!o)throw new Error("Unable to find message to add content to");return e?o.contentsByID[e]:lc(o);default:throw new Error(`Unable to have message content on entity type ${n}`)}}function he(t,e){let n=J(t);switch(n){case "output_content":return t;case "output":let o=t;return e?o.contentsByID[e]||null:o.contents.length<=0?null:o.contents[o.contents.length-1]||null;case "step":let s=wn(t,e);return s?he(s):null;case "invocation":if(!e)return null;let a=t.eventsByID[e];return !a||!a.Output?null:he(a.Output);default:throw new Error(`Unable to have output content on entity type ${n}`)}}function br(t,e){let n=J(t),o=null;switch(n){case "invocation":return t;case "message_content":if(o=t.botInvocation||null,!o)throw new Error("Unable to find bot invocation for message content");if(e&&o.bot_invocation.id!==e)throw new Error("Unable to find bot invocation for message content - mismatched ID");return o;case "message":if(o=Qo(t)?.botInvocation||null,!o)throw new Error("Unable to find bot invocation for message");if(e&&o.bot_invocation.id!==e)throw new Error("Unable to find bot invocation for message - mismatched ID");return o;case "output_content":return t.botInvocation||null;default:throw new Error(`Unable to have bot invocation on entity type ${n}`)}}function wn(t,e){let n=J(t);switch(n){case "output":return t;case "step":let o=t;if(e){let i=o.eventsByID[e]?.Output;if(!i)throw new Error("Unable to find output with id "+e);return i}let s=Object.keys(o.eventsByID).reverse();for(let i of s){let c=o.eventsByID[i];if(c&&c.Output)return c.Output}throw new Error("Unable to find output for step");case "invocation":if(!e)throw new Error("Unable to find output for invocation without ID");return t.eventsByID[e]?.Output||null;default:throw new Error(`Unable to have step outputs on entity type ${n}`)}}function Zo(t,e){let n=J(t);switch(n){case "result_handler":return t;case "step":if(!e)throw new Error("Unable to have result handlers on step without ID");let o=t.eventsByID[e];if(!o||!o.type||o.type!=="result_handler"||!o.ResultHandler)throw new Error(`Unable to find result handler with id ${e} on step ${t.id}`);return o.ResultHandler;default:throw new Error(`Unable to have result handlers on entity type ${n}`)}}function Yo(t,e){let n=J(t),o=null;switch(n){case "step":if(t.id===e||!e)return t;throw new Error("Unable to find step on step with id "+e);case "invocation":if(!e)throw new Error("Unable to have steps on bot invocation without ID");o=t;let r=o.eventsByID[e];if(!r)throw new Error("Unable to find step on invocation with id "+e);if(!r.Step)throw new Error("Unable to find step on invocation with id "+e);return r.Step;case "result_handler":if(!e)throw new Error("Unable to have steps on result handler without ID");let a=t.eventsByID[e];if(!a)throw new Error("Unable to find step on result handler with id "+e);if(!a.Step)throw new Error("Unable to find step on result handler with id "+e);return a.Step;default:throw new Error(`Unable to have steps on entity type ${n}`)}}var hr=class extends Error{};function uc(t,e,n){let o=null,r=e[0],s=e[1];n[r]=s;try{switch(r){case "message":o=kr(t,s);break;case "content":o=ye(t,s);break;case "step":o=Yo(t,s);break;case "output":o=wn(t,s);break;case "output_content":o=he(t,s);break;case "invocation":o=br(t,s);break;case "result_handler":o=Zo(t,s);break}}catch(a){throw console.error("error finding next entity"),console.log("path",e),console.log("currentEntity",t),a}if(!o)throw console.log("path",e),console.log("currentEntity",t),console.log("nextEntity",o),new hr(`Unable to find next entity for path ${e.join("/")}`);return o}function Xo(t,e,n,o){let r=t.payload;return {_type:"message",message:{id:n,thread_id:e,author_id:r.author_id||"app",author_entity_type:r.author_entity_type||"app",created_at:new Date().toISOString(),updated_at:new Date().toISOString(),role:r.role||"assistant",avatar:"/teams/erdo-icon.png"},state:"in_progress",contents:[],contentsByID:{},contentIDToIdx:{}}}function dc(t,e){return {_type:"message_content",id:t.metadata.message_content_id,message_id:e.message,content_type:t.metadata.content_type,created_by_invocation_id:t.metadata.invocation_id,invocation_id:t.metadata.invocation_id,state:"in_progress",user_visibility:t.metadata.user_visibility??"visible",bot_visibility:t.metadata.bot_visibility??"visible",content:"",created_at:new Date().toISOString(),updated_at:new Date().toISOString(),content_params:{RawMessage:null,Valid:false},history_content_type:t.metadata?.history_content_type?{String:t.metadata.history_content_type,Valid:true}:{String:"",Valid:false},ui_content_type:t.metadata?.ui_content_type?{String:t.metadata.ui_content_type,Valid:true}:{String:"",Valid:false}}}function pc(t,e){let n=t.metadata.content_type||"text",o=t.metadata?.ui_content_type,r=fe(n,t.payload);return {_type:"message_content",id:t.metadata.message_content_id,message_id:e.message,content:r.content,content_type:n,created_by_invocation_id:t.metadata.invocation_id,invocation_id:t.metadata.invocation_id,state:"completed",user_visibility:t.metadata.visibility||"visible",bot_visibility:"visible",created_at:new Date().toISOString(),updated_at:new Date().toISOString(),content_params:{RawMessage:null,Valid:false},history_content_type:t.metadata?.history_content_type?{String:t.metadata.history_content_type,Valid:true}:{String:"",Valid:false},ui_content_type:o?{String:o,Valid:true}:{String:"",Valid:false},parsedJson:r.parsedJson??null}}function mc(t,e,n){let o=t.payload;return {_type:"step",id:e,invocation_id:n.invocation||"",step_id:o.step_id||"",created_at:new Date().toISOString(),updated_at:new Date().toISOString(),current_status_id:"",path:{String:"",Valid:false},action_type:{String:o.action_type,Valid:true},key:{String:o.key,Valid:true},bot_id:o.bot_id,result_handler_id:"",step_order:{Int32:o.step_order,Valid:true},output_content_type:{String:o.content_type,Valid:true},execution_mode:{String:o.execution_mode,Valid:true},output_behaviour:{String:o.output_behaviour,Valid:true},user_output_visibility:{String:t.metadata.visibility||"visible",Valid:true},output_channels:o.output_channels||[],running_message:{String:o.running_message||"",Valid:!!o.running_message},finished_message:{String:o.finished_message||"",Valid:!!o.finished_message},depends_on:[],eventsByID:{},currentStatus:null}}function fc(t,e,n){let o=t.payload;return {_type:"result_handler",id:e,invocation_id:t.metadata.invocation_id||"",result_handler_id:o.result_handler_id||e,step_invocation_id:o.step_invocation_id||"",type:o.type||"",if_conditions:o.if_conditions||{},created_at:new Date().toISOString(),updated_at:new Date().toISOString(),output_content_type:o.output_content_type||"",result_handler_order:o.result_handler_order||0,eventsByID:{}}}function gc(t,e,n){return {_type:"output",id:e,step_id:n.step_id,output:{id:e,invocation_id:t.metadata?.invocation_id,path:t.metadata.path,created_at:new Date().toISOString(),updated_at:new Date().toISOString()},state:"in_progress",contents:[],contentsByID:{},contentIDToIdx:{}}}function zo(t,e,n,o=null){return {_type:"output_content",id:e,output_id:n.output,content:"",content_type:t.metadata.content_type,state:"in_progress",invocation_id:t.metadata.invocation_id,user_visibility:o??t.metadata.user_visibility??"visible",bot_visibility:t.metadata.bot_visibility??"visible",created_at:new Date().toISOString(),updated_at:new Date().toISOString(),content_params:{RawMessage:null,Valid:false},history_content_type:t.metadata.history_content_type?{String:t.metadata.history_content_type,Valid:true}:{String:"",Valid:false},ui_content_type:t.metadata.ui_content_type?{String:t.metadata.ui_content_type,Valid:true}:{String:"",Valid:false},output:null}}function Ho(t,e,n,o=null){let r=t.metadata.content_type||"text",s=fe(r,t.payload),a=t.metadata?.ui_content_type;return {_type:"output_content",id:e,output_id:n.output,content:s.content,content_type:r,state:"completed",invocation_id:t.metadata.invocation_id,parsedJson:s.parsedJson??null,user_visibility:o||t.metadata.visibility||"visible",bot_visibility:"visible",created_at:new Date().toISOString(),updated_at:new Date().toISOString(),content_params:{RawMessage:null,Valid:false},history_content_type:t.metadata?.history_content_type?{String:t.metadata.history_content_type,Valid:true}:{String:"",Valid:false},ui_content_type:a?{String:a,Valid:true}:{String:"",Valid:false},output:null}}function yc(t,e,n){return {_type:"invocation",bot_invocation:{id:t.payload.invocation_id,bot_id:t.payload.bot_id,bot_name:t.payload.bot_name,created_by_user_id:t.payload.created_by_user_id,current_state_id:"",parent_invocation_id:"",branch_init_state_id:"",current_status_id:"",organization_id:"",created_at:new Date().toISOString(),updated_at:new Date().toISOString()},eventsByID:{},currentStatus:null,current_status:null,step_invocations:[],step_invocation_states:[],resources:[],outputs:[],statuses:[]}}function Pe(t,e){let n=t.payload;return {_type:"status",id:new Date().toISOString(),status:n.status,message:{String:n.message,Valid:true},Details:n}}function ts(t){return {id:t.id,type:"step",created_at:t.created_at,_type:"invocation_event",Output:null,Message:null,Status:null,ResultHandler:null,Step:t}}function Cr(t){return {id:t.output.id,type:"output",created_at:t.output.created_at,_type:"invocation_event",Output:t,Message:null,Status:null,ResultHandler:null,Step:null}}function _r(t){return {id:t.id,type:"status",created_at:t.created_at,_type:"invocation_event",Status:t,Output:null,Message:null,ResultHandler:null,Step:null}}function hc(t){return {id:t.message.id,type:"message",created_at:t.message.created_at,_type:"invocation_event",Output:null,Message:t,Status:null,ResultHandler:null,Step:null}}function xc(t){return {id:t.id,type:"result_handler",created_at:t.created_at,_type:"invocation_event",Output:null,Message:null,Status:null,ResultHandler:t,Step:null}}var kc=new Set(["=","("]);function bc(t){if(!t||t.length===0)return true;let e=t[t.length-1];return !kc.has(e)}function es(t,e){if(t.content||(t.content=""),t.user_visibility!=="visible"||!ve(t.content_type,t.ui_content_type.String))return t.content+=e,{...t};if(t.parsedJson||(t.parsedJson=[]),typeof e=="object")return t.content+=JSON.stringify(e),t.parsedJson=[...t.parsedJson,e],{...t};t._jsonParser||(t._isInJson=false),t._charBuffer||(t._charBuffer="");let n=t.content_type,o=t.ui_content_type.String;for(let r of e){t.content+=r;let s=n==="json"||o==="json";if(!t._isInJson&&s&&!Bt(r)){t._isInJson=true,t._jsonParser=new nt;let a={content:{},type:"json"};t.parsedJson=[...t.parsedJson||[],a],t._currentContent=a,t._charBuffer="";}if(!t._isInJson&&!s&&o==="ui_generation"&&r==="{"){let a=t.content.slice(0,-1);if(bc(a)){t._charBuffer="{";continue}}if(t._charBuffer&&Bt(r)){t._charBuffer+=r;continue}if(!t._isInJson&&!s&&o==="ui_generation"&&t._charBuffer?.match(/^\s*{\s*$/)&&r==='"'){t._isInJson=true,t._jsonParser=new nt;let i={content:t._jsonParser.add("{"),type:"json"};t._currentContent?.content?t._currentContent.content.match(/^\s*{$/)?(t._currentContent=i,t.parsedJson=[...t.parsedJson.slice(0,-1),i]):(t._currentContent.content=t._currentContent.content.replace(/{$/,""),t._currentContent=i,t.parsedJson=[...t.parsedJson,i]):(t._currentContent=i,t.parsedJson=[...t.parsedJson,i]);}if(t._isInJson)try{let a=t._jsonParser.add(r);t._currentContent.content=a,t._jsonParser.state==="END"&&(t._isInJson=!1,t._currentContent=void 0);}catch(a){if(console.log("handleIncrementalMixedJsonParsing: content chunk",e),console.log("handleIncrementalMixedJsonParsing: accumulated content",t.content),console.warn("handleIncrementalMixedJsonParsing: JSON parse error, recovering as text",a),t._isInJson=false,t._jsonParser=void 0,t.parsedJson&&t.parsedJson.length>0){let i=t.parsedJson[t.parsedJson.length-1];if(i.type==="json"){let c=t.content.lastIndexOf("{"),l=t.content.slice(c);i.type="text",i.content=l,t._currentContent=i;}}continue}else t._currentContent||(t._currentContent={content:t._charBuffer||"",type:"text"},t.parsedJson=[...t.parsedJson,t._currentContent]),t._currentContent.content+=t._charBuffer+r;t._charBuffer="";}return {...t}}function Cc(t,e){return es(t,e)}function Ko(t,e){return es(t,e)}function xr(t,e){let n=J(t);switch(n){case "message":return ft(t,e);case "message_content":return vn(t,e);case "step":return Sc(t,e);case "output":return vc(t,e);case "output_content":return wc(t,e);case "invocation":return Be(t,e);case "result_handler":return Ic(t,e);default:throw new Error(`Unable to add update entity for entity type ${n}`)}}function _c(t,e){for(let n of e)t=xr(t,n);return t}function ft(t,e){let n=kr(t);if(!n)throw new Error("Unable to find message to add content to");let o=J(e),r=null;switch(o){case "message_content":if(r=e,!n.contentsByID[r.id])n.contentIDToIdx={...n.contentIDToIdx,[r.id]:n.contents.length},n.contents=[...n.contents,r];else {let i=n.contentIDToIdx[r.id];n.contents=[...n.contents.slice(0,i),r,...n.contents.slice(i+1)];}return n.contentsByID={...n.contentsByID,[r.id]:r},{...n};case "invocation":let s=e;if(n.contents.length===0)throw new Error("Unable to find message content to add invocation to");return r=vn(n.contents[0],s),ft(n,r);case "step":if(n.contents.length===0)throw new Error("Unable to find message content to add content to");if(r=n.contents[0],!r)throw new Error("Unable to find message content to add content to");let a=br(r);if(!a)throw new Error("Unable to find bot invocation to add content to");return r.botInvocation=Be(a,e),ft(n,r);case "status":if(n.contents.length>0){let i=n.contents[0];if(i?.botInvocation){let c=vn(i,e);return ft(n,c)}}return {...n};default:throw new Error(`Unable to add update message child for child type ${o}`)}}function vn(t,e){let n=ye(t);if(!n)throw new Error("Unable to find message content to add content to");let o=J(e);switch(o){case "invocation":return n.botInvocation=e,{...n};case "step":let r=n.botInvocation;if(!r)throw new Error("Unable to find bot invocation to add content to");return n.botInvocation=Be(r,e),{...n};case "status":return n.botInvocation&&(n.botInvocation=Be(n.botInvocation,e)),{...n};default:throw new Error(`Unable to add update message content child for child type ${o}`)}}function Sc(t,e){let n=Yo(t);if(!n)throw new Error("Unable to find bot invocation to add step to");let o=J(e),r=null;switch(o){case "output":let s=e;return r=Cr(s),n.eventsByID={...n.eventsByID,[s.output.id]:r},{...n};case "message":let a=e;return r=hc(a),n.eventsByID={...n.eventsByID,[a.message.id]:r},{...n};case "status":let i=e;return r=_r(i),n.eventsByID={...n.eventsByID,[i.id]:r},{...n};case "result_handler":let c=e;return r=xc(c),n.eventsByID={...n.eventsByID,[c.id]:r},{...n};default:throw new Error(`Unable to add update step for entity type ${o}`)}}function vc(t,e){let n=wn(t);if(!n)throw new Error("Unable to find step output to add content to");let o=J(e);switch(o){case "output_content":let r=e;if(!n.contentsByID[r.id])n.contentIDToIdx={...n.contentIDToIdx,[r.id]:n.contents.length},n.contents=[...n.contents,r];else {let s=n.contentIDToIdx[r.id];n.contents=[...n.contents.slice(0,s),r,...n.contents.slice(s+1)];}return n.contentsByID={...n.contentsByID,[r.id]:r},{...n};default:throw new Error(`Unable to add update output for entity type ${o}`)}}function wc(t,e){let n=he(t);if(!n)throw new Error("Unable to find step output content to add content to");let o=J(e);switch(o){case "invocation":return n.botInvocation=e,{...n};case "step":let r=n.botInvocation;if(!r)throw new Error("Unable to find bot invocation to add content to");return n.botInvocation=Be(r,e),{...n};default:throw new Error(`Unable to add update step output content for entity type ${o}`)}}function Be(t,e){let n=br(t);if(!n)throw new Error("Unable to find bot invocation to add content to");let o=J(e),r;switch(o){case "step":let s=e;return r=ts(s),n.eventsByID={...n.eventsByID,[s.id]:r},{...n};case "output":let a=e;return r=Cr(a),n.eventsByID={...n.eventsByID,[a.output.id]:r},{...n};case "status":let i=e;return r=_r(i),n.eventsByID={...n.eventsByID,[i.id]:r},n.currentStatus=i,{...n};default:throw new Error(`Unable to add update invocation for entity type ${o}`)}}function Ic(t,e){let n=Zo(t);if(!n)throw new Error("Unable to find result handler to add content to");let o=J(e),r=null;switch(o){case "step":let s=e;return r=ts(s),n.eventsByID||(n.eventsByID={}),n.eventsByID={...n.eventsByID,[s.id]:r},{...n};case "output":let a=e;return r=Cr(a),n.eventsByID||(n.eventsByID={}),n.eventsByID={...n.eventsByID,[a.output.id]:r},{...n};case "status":let i=e;return r=_r(i),n.eventsByID||(n.eventsByID={}),n.eventsByID={...n.eventsByID,[i.id]:r},{...n};default:throw new Error(`Unable to add update to result handler for entity type ${o}`)}}function Nc(t){return t==="bot started"||t==="bot resumed"||t==="message created"||t==="create message content"||t==="message content result"||t==="step started"||t==="result handler started"||t==="state created"||t==="step output created"||t==="create step output content"||t==="step output content result"||t==="log"}function In(t,e,n,o,r,s=null,a=[],i={}){if(!s&&Object.keys(r).length>0){let d,p;if(n.length>=2&&n[0]==="message"?(p=n[1],d=r[p],d||(d=Object.values(r)[0],p=Object.keys(r)[0])):(d=Object.values(r)[Object.values(r).length-1],p=Object.keys(r)[Object.keys(r).length-1]),i.message=p,n.length<=2&&t==="message finished")return r[p]=qo(d),null;if(n[0]!=="content"&&Object.keys(d.contentsByID).length>0&&e.metadata.message_content_id){let m=e.metadata.message_content_id,g=d.contentsByID[m];g&&(s=g);}s?a=[d]:s=d;}if(n.length<=2&&Nc(t)){let d=n[1],p=[],m,g,f,x,b;switch(t){case "bot started":case "bot resumed":if(!s)throw new Error("Unable to find message to add content to");let k=yc(e);if(s._type==="message_content"){if(g=s,!g.id)throw new Error("Unable to find message content id");if(f=r[g.message_id],!f)throw new Error("Unable to find message to add content to");if(x=ye(f,g.id),!x)throw new Error("Unable to find message content to add content to");let _=vn(x,k);r[g.message_id]={...ft(f,_)};}p.push(k);break;case "message created":return r[d]=Xo(e,o,d),null;case "create message content":if(!s)throw new Error("Unable to find message to add content to");if(b=dc(e,i),s._type==="output"){m=s,p.push(zo(e,d,i,"hidden"));let _=e.payload.message_id;if(_||(_=a[0].message.id),f=r[_],!f)throw new Error("Unable to find message to add content to")}else if(s._type==="message_content"){if(m=s,f=r[m.message_id],!f)throw new Error("Unable to find message to add content to")}else {if(s._type!=="message")throw new Error(`Incorrect path? Cannot add content to non-message entity: ${s._type}`);if(m=s,f=r[m.message.id],!f)throw new Error("Unable to find message to add content to");p.push(b);}r[f.message.id]={...ft(f,b)};break;case "message content result":if(!s)throw new Error("Unable to find message to add content to");let y=null;if(s._type==="output"){p.push(Ho(e,d,i,"hidden"));let _=e.payload.message_id||i.message;if(_?y=a.find(v=>v.message.id===_):y=a[0],f=r[_],!f)throw new Error("Unable to find message to add content to")}else if(s._type==="message_content"){if(y=a[0],f=r[y.message.id],!f)throw new Error("Unable to find message to add content to")}else {if(s._type!=="message")throw new Error(`Incorrect path? Cannot add content to non-message entity: ${s._type}`);if(y=s,f=r[y.message.id],!f)throw new Error("Unable to find message to add content to")}let h=e.metadata.message_content_id;if(!h)throw new Error("Unable to find message content id");let S=ye(y,h);if(S){S.state="completed";let _=S.content_type||"text",v=hn(_,S.content,e.payload);S.content=v.content,v.parsedJson&&(S.parsedJson=v.parsedJson),r[f.message.id]={...ft(f,S)},(s._type==="message"||s._type==="message_content")&&p.push(S);}else S=pc(e,i),r[f.message.id]={...ft(f,S)},(s._type==="message"||s._type==="message_content")&&p.push(S);break;case "step started":p.push(mc(e,d,i));break;case "result handler started":p.push(fc(e,d));break;case "step output created":p.push(gc(e,d,s));break;case "create step output content":p.push(zo(e,d,i));break;case "step output content result":p.push(Ho(e,d,i));break;case "log":return null;default:throw new Error(`Unable to handle create event type ${t}`)}return p.length?!s||s._type==="message_content"&&p.length===1&&p[0]._type==="message_content"?p[0]:_c(s,p):null}if(!s)throw new Error("No first message has been created, so cannot handle amend events");if(n.length<=1){let d=null;try{d=cc(s);}catch{}switch(t){case "message content delta":if(!d)throw new Error("Unable to find message content");let p=null,m=null,g=null;if(s._type==="output_content"){p=Ko(s,e.payload);let k=e.metadata.message_content_id;if(!k)throw new Error("Unable to find message content id from entity ids");let y=i.message;if(g=a.find(h=>h.message.id===y),!g)throw new Error("Unable to find message to add content to");m=ye(g,k);}else {if(m=d,g=a[a.length-1],!g)throw new Error("Unable to find message to add content to");if(g._type!=="message")throw new Error("Unable to find message to add content to - not a message")}if(!m)throw new Error("Unable to find message content");let f=r[g.message.id];if(!f)throw new Error("Unable to find message to add content to");let x=Cc(m,e.payload);return r[f.message.id]={...ft(f,x)},s._type==="message_content"&&(p=x),p;case "step output content delta":return Ko(d,e.payload);case "status":if(s._type==="step"&&(s.currentStatus=Pe(e)),s._type==="invocation"&&(s.currentStatus=Pe(e)),s._type==="message_content"){let b=s;if(b.botInvocation)return b.botInvocation.currentStatus=Pe(e),{...b}}if(s._type==="message"){let b=s,k=Qo(b);if(k?.botInvocation)return k.botInvocation.currentStatus=Pe(e),ft(b,k)}return xr(s,Pe(e));case "result":return null;case "message finished":if(s._type==="message"){let k=qo(s);r[k.message.id]=k;}return null;case "step output finished":return null;case "step result":return null;case "error":return null;case "dataset created":return null;case "log":return null;default:throw new Error(`Unable to handle event type ${t}`)}}let c=n.slice(2),l=uc(s,n,i),u=In(t,e,c,o,r,l,[...a,s],i);return u?xr(s,{...u}):s}function Sr(t){if(!t.content)return null;if(typeof t.content=="object")return t.content;if(typeof t.content=="string"){let e=$(t.content);return e&&typeof e=="object"&&!Array.isArray(e)?e:null}return null}function ns(t){let e=t.content_type;if(e==="tool_result")return "result";if(e==="tool_invocation")return "invocation";let n=Sr(t);return n&&"action_type"in n&&"name"in n&&"input"in n&&n.action_type!=="bot.invoke"?"result"in n?"result":"invocation":null}function rs(t){return Sr(t)?.id}function os(t){let e=Sr(t);if(!e?.action_type)return null;let o=e.input?.query;return `${e.action_type}:${o||""}`}function ss(t){let e=t.filter(r=>ns(r)==="result"),n=new Set(e.map(r=>rs(r)).filter(Boolean)),o=new Set(e.map(r=>os(r)).filter(Boolean));return t.filter(r=>{if(ns(r)==="invocation"){let s=rs(r),a=os(r);if(s&&n.has(s)||a&&o.has(a))return false}return true})}function as(t,e,n){let o=e;for(;o;){if(o===n)return true;o=t.byStepId[o]?.parentId??null;}return false}function Nn(t,e){if(!e||!t.byStepId[e])return t;let n=new Set;for(let i of t.nodes)i.kind==="step"&&as(t,i.id,e)&&n.add(i.id);let o=t.nodes.filter(i=>i.kind==="step"?n.has(i.id):i.kind==="content"||i.kind==="status"?!!i.stepId&&n.has(i.stepId):false),r={},s={},a={};for(let i of n){let c=t.byStepId[i];c&&(r[i]=c);}for(let i of o){if(i.kind==="content"){s[i.id]=i;continue}if(i.kind!=="step")continue;let l=(i.parentId&&n.has(i.parentId)?i.parentId:null)??"__root__";a[l]=[...a[l]||[],i.id];}return {...t,nodes:o,byStepId:r,byContentId:s,childrenByParentId:a,rootStepId:e}}function Tn(){return createStore((t,e)=>({globalState:kn(),invocationStates:{},invocationRootSteps:{},pendingInvocationQueue:[],pushEvent:(n,o)=>{let r=e(),s=fr(r.globalState,n);if(o&&(s=o(s)),s===r.globalState)return;let a=n.metadata?.step_id??n.payload?.step_id??"",i={...r.invocationStates},c=false;for(let[l,u]of Object.entries(r.invocationRootSteps)){let d=r.invocationStates[l];if(a&&!as(s,a,u)&&a)continue;let p=Nn(s,u);if(!(n.type==="step_finished"||n.type==="step_started"||n.type==="status")&&d&&d.nodes.length===p.nodes.length){let g=d.nodes[d.nodes.length-1],f=p.nodes[p.nodes.length-1];if(g===f&&d.isStreaming===p.isStreaming)continue}i[l]=p,c=true;}t({globalState:s,...c?{invocationStates:i}:{}});},registerInvocation:n=>{let o=e();o.invocationRootSteps[n]||o.pendingInvocationQueue.includes(n)||t({pendingInvocationQueue:[...o.pendingInvocationQueue,n]});},mapInvocationRoot:(n,o)=>{let r=e(),s=Nn(r.globalState,o);t({invocationRootSteps:{...r.invocationRootSteps,[n]:o},invocationStates:{...r.invocationStates,[n]:s},pendingInvocationQueue:r.pendingInvocationQueue.filter(a=>a!==n)});},reset:()=>{t({globalState:kn(),invocationStates:{},invocationRootSteps:{},pendingInvocationQueue:[]});}}))}function Rc(t){return t.split("/").filter(Boolean)}function is(t={}){let e=Ft(),[n,o]=useState(null),[r,s]=useState(false),[a,i]=useState(null),[c,l]=useState([]),u=useRef(Tn()),d=useStore(u.current,k=>k.globalState),p=useRef(null),m=useRef(t.threadId);t.threadId!==m.current&&(m.current=t.threadId);let g=useCallback(()=>{p.current&&(p.current.abort(),p.current=null);},[]),f=useCallback(k=>{o(k),m.current=k.id;},[]),x=useCallback(async k=>{if(!e.client)throw new Error("ErdoClient not configured in provider. Pass a client to ErdoProvider config to use useThread.");if(!e.client.sendMessage)throw new Error("ErdoClient does not support sendMessage. Make sure you are using @erdoai/server client.");if(!e.client.createThread)throw new Error("ErdoClient does not support createThread. Make sure you are using @erdoai/server client.");g(),p.current=new AbortController,s(true),i(null),l([]),u.current.getState().reset();let y={};try{let h=m.current;if(!h){let I=await e.client.createThread();o(I),m.current=I.id,h=I.id;}for await(let I of e.client.sendMessage(h,{content:k,botKey:t.botKey})){if(p.current?.signal.aborted)break;if(t.onEvent?.(I),e.useAgentEvents)u.current.getState().pushEvent(I);else {let U=I.type||"",tt=I.metadata||{},O=Rc(tt.path||""),H={payload:I.payload,metadata:{path:tt.path||"",...tt}};try{In(U,H,O,h,y);}catch(G){console.error("Error handling SSE event:",G,U);}l(Object.values(y));}}let S=Object.values(y);l(S);let _=u.current.getState().globalState,v;_.rootStepId?v=Cn(_):v=S.flatMap(I=>I.contents||[]).filter(I=>I.user_visibility==="visible").map(I=>({id:I.id,content_type:I.content_type,ui_content_type:M(I.ui_content_type),content:I.content,parsedJson:I.parsedJson,botInvocation:I.botInvocation})),t.onFinish?.(v);}catch(h){let S=h instanceof Error?h:new Error(String(h));throw i(S),t.onError?.(S),S}finally{s(false),p.current=null;}},[e.client,e.useAgentEvents,t,g]),b=useMemo(()=>{if(d.rootStepId)return Cn(d);let k=c.flatMap(h=>h.contents||[]).filter(h=>h.user_visibility==="visible");return ss(k).map(h=>({id:h.id,content_type:h.content_type,ui_content_type:M(h.ui_content_type),content:h.content,parsedJson:h.parsedJson,botInvocation:h.botInvocation}))},[c,d]);return {thread:n,isStreaming:r,error:a,activeMessages:c,agentState:d,streamingContents:b,sendMessage:x,cancel:g,setThread:f,agentStreamStore:u.current}}function Ac(t){return t?typeof t=="string"?t:typeof t=="object"&&t!==null&&"String"in t&&t.String||"":""}function ls(t){let e=Ac(t.ui_content_type),n=t.content_type,o={id:t.id,content_type:t.content_type,ui_content_type:e,content:t.content,invocation_id:t.created_by_invocation_id};if(typeof t.content=="string"){if(e==="ui_generation")try{o.parsedJson=xt(t.content);}catch(r){console.error("Error parsing UI generation content:",r);}else if((n==="json"||e==="json")&&t.content.trim()){let r=$(t.content);r!=null&&(o.parsedJson=[{type:"json",content:r}]);}}if((t.content_type==="thinking"||t.content_type==="redacted_thinking")&&typeof t.content=="string"){let r=$(t.content);r&&typeof r=="object"&&(o.content=r);}return o}function Pc(t){return t.filter(e=>e.user_visibility!=="hidden").map(ls)}var Dn=createContext(null);function us({store:t,children:e}){return jsx(Dn.Provider,{value:t,children:e})}function ds(){return useContext(Dn)}function ps(t){let e=useContext(Dn);return useStore(e,n=>t?n.invocationStates[t]:void 0)}function ms(){let t=useContext(Dn);return useStore(t,e=>e.globalState)}export{us as AgentStreamStoreProvider,Dt as BarChart,pn as BotInvocationContent,ut as Chart,Se as ChartContainer,Ke as ChartContent,$n as ChartLegend,jn as ChartLegendContent,Xn as ChartNode,Lr as ChartStyle,Vn as ChartTooltip,Ln as ChartTooltipContent,un as CodeexecContent,an as CodegenContent,vt as CollapsibleCodeBlock,$t as Content,Ue as DatasetChart,ee as DatasetDownload,Or as DatasetMetric,Fe as DatasetTable,nr as DownloadButtonNode,Tr as ErdoProvider,Wo as ErdoToolResult,Il as ErdoUI,Et as ErrorBoundary,to as ExecutionStatus,wt as ExpandableOutputContent,or as FileDownloadsNode,Qt as HeatmapChart,ze as InvocationEvent,Pt as InvocationEvents,Xr as InvocationStatus,nt as JSONStreamParser,ht as JsonContent,zt as LineChart,Vo as Loader,ar as Log,Ye as LogContent,R as MarkdownContent,gn as MemoryContent,Je as Output,Ht as PieChart,Kt as ScatterChart,nn as SqlContent,it as StatusSpinner,ce as StderrText,le as StdoutText,on as StdwarnText,qe as StepInvocation,We as StepInvocationStatus,Go as StepTreeContent,rr as SuggestionsNode,Qe as TableContent,tr as TableNode,we as TextContent,er as TextMarkdownNode,oe as ThinkingContent,ue as ToolGroupContent,re as UIGenerationNodes,tn as WebParseContent,Xe as WebSearchContent,ur as WritingLoader,Cn as agentStateToContents,X as cn,jo as completeStreamingContent,Tn as createAgentStreamStore,kn as createInitialAgentState,$o as extractContentItems,et as formatValue,Sn as getErdoToolName,gr as getErdoToolRenderType,fr as handleAgentEvent,dr as handleIncrementalMixedJsonParsing,In as handleSSEEvent,Wl as hasRenderableAssistantOutput,oc as isErdoTool,ve as isJsonLike,zr as isNullString,Wa as isParsingComplete,te as isParsingInProgress,Bt as isWhitespaceChar,sr as nodeComponents,ls as normalizeContent,Pc as normalizeContents,De as normalizeUIGenerationChunks,Qn as normalizeUINodes,$ as parseCompleteJson,xt as parseMixedJson,Br as parseToDate,Zt as resolveKeyFromData,Nn as sliceAgentStateToRoot,Jr as toSnakeCase,M as unwrapNullString,xa as unwrapNullStringOr,ms as useAgentStreamGlobalState,ds as useAgentStreamStoreOptional,Ve as useChartZoom,Gt as useDatasetContents,Ft as useErdoConfig,Q as useErdoConfigOptional,ps as useInvocationState,Pr as useMultipleDatasetContents,be as useMultipleDatasetRequests,is as useThread};