@erdoai/ui 0.1.83 → 0.1.84

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.cjs CHANGED
@@ -1,10 +1,10 @@
1
- 'use strict';var yt=require('react'),jsxRuntime=require('react/jsx-runtime'),jt=require('recharts'),clsx=require('clsx'),tailwindMerge=require('tailwind-merge'),d3Format=require('d3-format'),d3TimeFormat=require('d3-time-format'),dateFns=require('date-fns'),reactToImage=require('@hugocxl/react-to-image'),lucideReact=require('lucide-react'),Qs=require('lodash/isEqual'),useDeepCompare=require('use-deep-compare'),Pa=require('react-markdown'),Ba=require('remark-gfm'),unistUtilVisit=require('unist-util-visit'),oe=require('@radix-ui/react-collapsible'),reactSyntaxHighlighter=require('react-syntax-highlighter'),prism=require('react-syntax-highlighter/dist/cjs/styles/prism'),zustand=require('zustand');function _interopDefault(e){return e&&e.__esModule?e:{default:e}}function _interopNamespace(e){if(e&&e.__esModule)return e;var n=Object.create(null);if(e){Object.keys(e).forEach(function(k){if(k!=='default'){var d=Object.getOwnPropertyDescriptor(e,k);Object.defineProperty(n,k,d.get?d:{enumerable:true,get:function(){return e[k]}});}})}n.default=e;return Object.freeze(n)}var yt__namespace=/*#__PURE__*/_interopNamespace(yt);var jt__namespace=/*#__PURE__*/_interopNamespace(jt);var Qs__default=/*#__PURE__*/_interopDefault(Qs);var Pa__default=/*#__PURE__*/_interopDefault(Pa);var Ba__default=/*#__PURE__*/_interopDefault(Ba);var oe__namespace=/*#__PURE__*/_interopNamespace(oe);var En=yt.createContext(null);function Sr({children:t,config:e}){return jsxRuntime.jsx(En.Provider,{value:e,children:t})}function $t(){let t=yt.useContext(En);if(!t)throw new Error("useErdoConfig must be used within an ErdoProvider");return t}function H(){return yt.useContext(En)}var St=class extends yt__namespace.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 Q(...t){return tailwindMerge.twMerge(clsx.clsx(t))}var gs={light:"",dark:".dark"},vr=yt__namespace.createContext(null);function wr(){let t=yt__namespace.useContext(vr);if(!t)throw new Error("useChart must be used within a <ChartContainer />");return t}function pe({id:t,className:e,children:n,config:o,debounceResize:r=false,...s}){let a=yt__namespace.useId(),i=`chart-${t||a.replace(/:/g,"")}`;return jsxRuntime.jsx(vr.Provider,{value:{config:o},children:jsxRuntime.jsxs("div",{"data-slot":"chart","data-chart":i,className:Q("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:[jsxRuntime.jsx(Ir,{id:i,config:o}),jsxRuntime.jsx(jt__namespace.ResponsiveContainer,{debounce:r?200:0,children:n})]})})}var Ir=({id:t,config:e})=>{let n=Object.entries(e).filter(([,o])=>o.theme||o.color);return n.length?jsxRuntime.jsx("style",{dangerouslySetInnerHTML:{__html:Object.entries(gs).map(([o,r])=>`
1
+ 'use strict';var ht=require('react'),jsxRuntime=require('react/jsx-runtime'),Ut=require('recharts'),clsx=require('clsx'),tailwindMerge=require('tailwind-merge'),d3Format=require('d3-format'),d3TimeFormat=require('d3-time-format'),dateFns=require('date-fns'),reactToImage=require('@hugocxl/react-to-image'),lucideReact=require('lucide-react'),Ks=require('lodash/isEqual'),useDeepCompare=require('use-deep-compare'),Aa=require('react-markdown'),Pa=require('remark-gfm'),unistUtilVisit=require('unist-util-visit'),oe=require('@radix-ui/react-collapsible'),reactSyntaxHighlighter=require('react-syntax-highlighter'),prism=require('react-syntax-highlighter/dist/cjs/styles/prism'),zustand=require('zustand');function _interopDefault(e){return e&&e.__esModule?e:{default:e}}function _interopNamespace(e){if(e&&e.__esModule)return e;var n=Object.create(null);if(e){Object.keys(e).forEach(function(k){if(k!=='default'){var d=Object.getOwnPropertyDescriptor(e,k);Object.defineProperty(n,k,d.get?d:{enumerable:true,get:function(){return e[k]}});}})}n.default=e;return Object.freeze(n)}var ht__namespace=/*#__PURE__*/_interopNamespace(ht);var Ut__namespace=/*#__PURE__*/_interopNamespace(Ut);var Ks__default=/*#__PURE__*/_interopDefault(Ks);var Aa__default=/*#__PURE__*/_interopDefault(Aa);var Pa__default=/*#__PURE__*/_interopDefault(Pa);var oe__namespace=/*#__PURE__*/_interopNamespace(oe);var Tn=ht.createContext(null);function Sr({children:t,config:e}){return jsxRuntime.jsx(Tn.Provider,{value:e,children:t})}function $t(){let t=ht.useContext(Tn);if(!t)throw new Error("useErdoConfig must be used within an ErdoProvider");return t}function H(){return ht.useContext(Tn)}var St=class extends ht__namespace.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 Q(...t){return tailwindMerge.twMerge(clsx.clsx(t))}var fs={light:"",dark:".dark"},vr=ht__namespace.createContext(null);function wr(){let t=ht__namespace.useContext(vr);if(!t)throw new Error("useChart must be used within a <ChartContainer />");return t}function pe({id:t,className:e,children:n,config:o,debounceResize:r=false,...s}){let a=ht__namespace.useId(),i=`chart-${t||a.replace(/:/g,"")}`;return jsxRuntime.jsx(vr.Provider,{value:{config:o},children:jsxRuntime.jsxs("div",{"data-slot":"chart","data-chart":i,className:Q("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:[jsxRuntime.jsx(Ir,{id:i,config:o}),jsxRuntime.jsx(Ut__namespace.ResponsiveContainer,{debounce:r?200:0,children:n})]})})}var Ir=({id:t,config:e})=>{let n=Object.entries(e).filter(([,o])=>o.theme||o.color);return n.length?jsxRuntime.jsx("style",{dangerouslySetInnerHTML:{__html:Object.entries(fs).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},Dn=jt__namespace.Tooltip;function Rn({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}=wr(),g=yt__namespace.useMemo(()=>{if(r||!e?.length)return null;let[k]=e,b=`${d||k?.dataKey||k?.name||"value"}`,x=Tn(m,k,b),y=!d&&typeof a=="string"?m[a]?.label||a:x?.label;return i?jsxRuntime.jsx("div",{className:Q("font-medium",c),children:i(y,e)}):y?jsxRuntime.jsx("div",{className:Q("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 jsxRuntime.jsxs("div",{className:Q("border-border/50 bg-background grid min-w-[8rem] items-start gap-1.5 rounded-lg border px-2.5 py-1.5 text-xs shadow-xl",n),children:[f?null:g,jsxRuntime.jsx("div",{className:"grid gap-1.5",children:e.map((k,b)=>{let x=`${p||k.name||k.dataKey||"value"}`,y=Tn(m,k,x),h=u||k.payload.fill||k.color;return jsxRuntime.jsx("div",{className:Q("[&>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&&k?.value!==void 0&&k.name?l(k.value,k.name,k,b,k.payload):jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[y?.icon?jsxRuntime.jsx(y.icon,{}):!s&&jsxRuntime.jsx("div",{className:Q("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}}),jsxRuntime.jsxs("div",{className:Q("flex flex-1 justify-between leading-none",f?"items-end":"items-center"),children:[jsxRuntime.jsxs("div",{className:"grid gap-1.5",children:[f?g:null,jsxRuntime.jsx("span",{className:"text-muted-foreground",children:y?.label||k.name})]}),k.value&&jsxRuntime.jsx("span",{className:"text-foreground font-mono font-medium tabular-nums",children:k.value.toLocaleString()})]})]})},k.dataKey)})})]})}var An=jt__namespace.Legend;function Pn({className:t,hideIcon:e=false,payload:n,verticalAlign:o="bottom",nameKey:r}){let{config:s}=wr();return n?.length?jsxRuntime.jsx("div",{className:Q("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=Tn(s,a,i);return jsxRuntime.jsxs("div",{className:Q("[&>svg]:text-muted-foreground flex items-center gap-1.5 [&>svg]:h-3 [&>svg]:w-3"),children:[c?.icon&&!e?jsxRuntime.jsx(c.icon,{}):jsxRuntime.jsx("div",{className:"h-2 w-2 shrink-0 rounded-[2px]",style:{backgroundColor:a.color}}),c?.label]},a.value)})}):null}function Tn(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 at(t,e,n){if(t==null)return "";if(n==="date"){let o=Nr(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]):d3TimeFormat.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?d3Format.format(",.0f")(o):Math.abs(o)>=100?d3Format.format(".1f")(o):Math.abs(o)>=10?d3Format.format(".2f")(o):Math.abs(o)>=1?d3Format.format(".3f")(o):d3Format.format(".3g")(o);if(r.includes("%"))return o>=0&&o<=1?d3Format.format(r)(o):d3Format.format(r)(o/100);try{return d3Format.format(r)(o)}catch(s){return console.warn(`Error formatting number with format '${r}': ${s}. Falling back to default.`),Math.abs(o)>=1e3?d3Format.format(",.0f")(o):Math.abs(o)>=1?d3Format.format(".2f")(o):d3Format.format(".3g")(o)}}return String(t)}function Nr(t){if(!t)return null;if(t instanceof Date)return dateFns.isValid(t)?t:null;if(typeof t=="number"){let n=new Date(t);return dateFns.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(dateFns.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=dateFns.parse(t,r,new Date);if(dateFns.isValid(s))return s}}let e=new Date(t);return dateFns.isValid(e)?e:null}function De({onZoomChange:t}={}){let[e,n]=yt.useState({refAreaLeft:null,refAreaRight:null,refAreaTop:null,refAreaBottom:null,zooming:false}),[o,r]=yt.useState({x:[null,null],y:[null,null]}),s=yt.useCallback(u=>{!u?.xValue||!u?.yValue||n(p=>({...p,refAreaLeft:u.xValue,refAreaTop:u.yValue,zooming:true}));},[]),a=yt.useCallback(u=>{!u?.xValue||!u?.yValue||!e.zooming||n(p=>({...p,refAreaRight:u.xValue,refAreaBottom:u.yValue}));},[e.zooming]),i=yt.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=yt.useCallback(()=>{let u={x:[null,null],y:[null,null]};r(u),t?.(u);},[t]),l=yt.useMemo(()=>({onZoomStart:s,onZoomMove:a,onZoomEnd:i,onResetZoom:c}),[s,a,i,c]);return {zoomState:e,customDomain:o,handlers:l}}function Dr(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 wt(t,e,n){return at(t,e,n)}function Es({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:k}){let{zoomState:b,customDomain:x,handlers:y}=De({onZoomChange:c}),h=yt.useCallback(C=>{let N=`${(t||"chart").toLowerCase().replace(/\s+/g,"-")}.png`,M=document.createElement("a");M.download=N,M.href=C,M.click(),p?.(N);},[t,p]),S=yt.useCallback(C=>{console.error("Error converting chart to image:",C),d?.(C);},[d]),[{isLoading:_},v,I]=reactToImage.useToPng({onSuccess:h,onError:S}),U=yt.useCallback(async()=>{v();},[v]),Z=yt.useMemo(()=>Dr(r.xAxis),[r.xAxis]),P=yt.useMemo(()=>r.yAxes.map(C=>Dr(C)),[r.yAxes]),J=yt.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=yt.useMemo(()=>{if(r.xAxis.type==="category"||!J.length)return;let C=J.map(N=>Number(N[r.xAxis.key])).filter(N=>!isNaN(N));return [...new Set(C)].sort((N,M)=>N-M)},[J,r.xAxis.key,r.xAxis.type]),In=yt.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=yt.useCallback((C,N)=>{if(!C?.length)return {min:null,max:null};let M=C.map(V=>Number(V[N])).filter(V=>!isNaN(V));return {min:Math.min(...M),max:Math.max(...M)}},[]),T=yt.useMemo(()=>({x:x.x[0]!==null&&x.x[1]!==null?[x.x[0],x.x[1]]:(()=>{if(Z.min!==null&&Z.max!==null)return [Z.min,Z.max];let C=w(J,r.xAxis.key);return [C.min??"auto",C.max??"auto"]})(),y:r.yAxes.map((C,N)=>{if(x.y[0]!==null&&x.y[1]!==null)return [x.y[0],x.y[1]];let V=r.series.filter(X=>(X.axisIndex||0)===N).reduce((X,Nn)=>{let pt=w(J,Nn.key);return {min:X.min===null?pt.min:pt.min===null?X.min:Math.min(X.min,pt.min),max:X.max===null?pt.max:pt.max===null?X.max:Math.max(X.max,pt.max)}},{min:null,max:null});if(C.type==="number"&&C.maxValue){let X=parseFloat(C.maxValue);if(V.max===null||X<=V.max*1.5)return [P[N].min??V.min??"auto",P[N].max??V.max??"auto"]}return [P[N].min??V.min??"auto",P[N].max??V.max??"auto"]})}),[x.x,x.y,Z,P,r.series,r.yAxes,r.xAxis.key,J,w]),O=yt.useCallback((C,N,M)=>{if(M.dataKey===r.xAxis.key)return wt(C,r.xAxis.format,r.xAxis.type);let V=r.series.find(de=>de.key===M.dataKey),X=V?.name||String(N).replace(/^dataset_\d+_/,"");if(r.chartType==="histogram"){let de=M.payload;if(de.binStart!==void 0){let ls=wt(de.binStart,r.xAxis.format,r.xAxis.type),cs=wt(de.binEnd,r.xAxis.format,r.xAxis.type);return `Count: ${C} (${ls} - ${cs})`}}let Nn=V?.axisIndex||0,pt=r.yAxes[Nn],is=wt(C,pt?.format,pt?.type);return `${X}: ${is}`},[r.xAxis,r.series,r.yAxes,r.chartType]),[K,Y]=yt.useState(false);yt.useEffect(()=>{let C=setTimeout(()=>{Y(true);},1700);return ()=>clearTimeout(C)},[]);let W=yt.useCallback((C,N)=>{if(N&&N.length>0){let M=N[0].payload[r.xAxis.key],V=wt(M,r.xAxis.format,r.xAxis.type);return jsxRuntime.jsxs("div",{className:"flex flex-col",children:[jsxRuntime.jsx("span",{children:r.xAxis.label}),jsxRuntime.jsx("span",{className:"font-mono tabular-nums",children:V})]})}return C},[r.xAxis.key,r.xAxis.format,r.xAxis.type,r.xAxis.label]),Lt=yt.useCallback(C=>jsxRuntime.jsx(Rn,{...C,formatter:O,labelFormatter:W}),[O,W]),Ne=yt.useCallback(C=>jsxRuntime.jsx(Pn,{...C}),[]),Ee=yt.useMemo(()=>!!(i||(n?.length||0)>100||K),[i,n?.length,K]);return jsxRuntime.jsxs("div",{className:m||"w-full items-center mt-0 flex flex-col gap-0",children:[(t||u)&&jsxRuntime.jsxs("div",{className:"w-full items-center mb-2 relative",children:[t&&jsxRuntime.jsx("h2",{className:"text-center text-base pt-0 mt-0 mb-2",children:t}),u&&jsxRuntime.jsx("button",{onClick:U,disabled:_,className:f||"text-sm text-gray-500 hover:text-gray-700 disabled:opacity-50 h-8 absolute right-0 top-[-5px] px-2 py-1 border rounded hover:bg-gray-50",title:"Download chart as PNG",children:jsxRuntime.jsx(lucideReact.Download,{className:"w-4 h-4"})})]}),e&&jsxRuntime.jsx("p",{className:"text-center text-sm text-muted-foreground mb-2",children:e}),jsxRuntime.jsx(pe,{ref:I,config:o,className:g||"w-full border border-border/50 p-4 rounded-md",debounceResize:true,children:jsxRuntime.jsxs(s,{accessibilityLayer:true,data:J,isAnimationActive:!Ee,onMouseDown:y.onZoomStart,onMouseMove:y.onZoomMove,onMouseUp:y.onZoomEnd,onDoubleClick:y.onResetZoom,style:{userSelect:"none",cursor:"crosshair"},children:[jsxRuntime.jsx(jt.CartesianGrid,{vertical:false}),jsxRuntime.jsx(jt.XAxis,{dataKey:r.xAxis.key,domain:In||T.x,type:r.xAxis.type==="date"||!r.xAxis.type?"number":r.xAxis.type,tickFormatter:C=>wt(C,r.xAxis.format,r.xAxis.type),tickLine:false,tickMargin:10,height:J.length>15?70:50,axisLine:false,allowDataOverflow:true,interval:J.length<=40?0:void 0,ticks:G,...J.length>15?{angle:-45,textAnchor:"end"}:{},children:jsxRuntime.jsx(jt.Label,{value:r.xAxis.label,position:"bottom",offset:J.length>15?-5:-10,style:{textAnchor:"middle"}})}),r.yAxes.map((C,N)=>jsxRuntime.jsx(jt.YAxis,{yAxisId:N,orientation:N===0?"left":"right",domain:l?void 0:T.y[N],type:C.type==="date"||!C.type?"number":C.type,tickFormatter:M=>wt(M,C.format,C.type),allowDataOverflow:true,children:jsxRuntime.jsx(jt.Label,{value:C.label,position:N===0?"insideLeft":"insideRight",angle:-90,style:{textAnchor:"middle"}})},`y-axis-${C.key}`)),jsxRuntime.jsx(Dn,{content:Lt}),jsxRuntime.jsx(An,{content:Ne,verticalAlign:"top"}),r.series.map(C=>jsxRuntime.jsx(a,{dataKey:C.key,yAxisId:C.axisIndex||0,fill:C.color||"blue",stroke:C.color||"blue",dot:{fill:C.color||"blue",stroke:C.color||"blue"},radius:4,name:C.name,isAnimationActive:!Ee,animationDuration:1500,animationBegin:0,stackId:r.chartType==="bar"&&l?"stack":void 0},`${C.key}-${l?"stacked":"unstacked"}`)),b.refAreaLeft&&b.refAreaRight&&b.refAreaTop&&b.refAreaBottom&&jsxRuntime.jsx(jt.ReferenceArea,{x1:b.refAreaLeft,x2:b.refAreaRight,y1:b.refAreaTop,y2:b.refAreaBottom,strokeOpacity:.2,stroke:"currentColor",fill:"currentColor",fillOpacity:.02,style:{pointerEvents:"none"}})]})}),x.x[0]!==null&&jsxRuntime.jsx("button",{onClick:y.onResetZoom,className:k||"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 it(t){return jsxRuntime.jsx(St,{fallback:jsxRuntime.jsx("div",{className:t.errorClassName||"text-red-500",children:"Failed to load chart"}),children:jsxRuntime.jsx(Es,{...t})})}function It(t){return jsxRuntime.jsx(it,{...t,ChartComponent:jt.BarChart,PointComponent:jt.Bar})}function Ft(t){return jsxRuntime.jsx(it,{...t,ChartComponent:jt.LineChart,PointComponent:jt.Line})}var js=(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 Fs({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=yt.useMemo(()=>n.reduce((p,d)=>(r.series.forEach(m=>{let g=m.key,f=String(d[r.xAxis.key]||"Unknown"),k=parseFloat(d[g]||"0");isNaN(k)||p.push({name:f,value:k,seriesId:g,displayName:f});}),p),[]).sort((p,d)=>d.value-p.value),[n,r.series,r.xAxis.key]);return jsxRuntime.jsxs("div",{className:s||"items-center",children:[jsxRuntime.jsx("h2",{className:"text-center text-base mb-2",children:t}),e&&jsxRuntime.jsx("p",{className:"text-center text-sm text-muted-foreground mb-2",children:e}),jsxRuntime.jsx(pe,{config:o,className:a||"w-full border border-border/50 rounded-md",children:jsxRuntime.jsxs(jt.PieChart,{width:400,height:400,children:[jsxRuntime.jsx(jt.Pie,{data:u,dataKey:"value",nameKey:"displayName",cx:"50%",cy:"50%",outerRadius:150,label:p=>`${p.displayName}: ${at(p.value,c,l)}`,children:u.map((p,d)=>jsxRuntime.jsx(jt.Cell,{fill:d===0?i:js(i,d,u.length)},`cell-${p.name}`))}),jsxRuntime.jsx(jt.Tooltip,{formatter:(p,d)=>[at(p,c,l),d]}),jsxRuntime.jsx(jt.Legend,{})]})})]})}function Jt(t){return jsxRuntime.jsx(St,{fallback:jsxRuntime.jsx("div",{className:"text-red-500",children:"Failed to load chart"}),children:jsxRuntime.jsx(Fs,{...t})})}function Gt(t){return jsxRuntime.jsx(it,{...t,ChartComponent:jt.ScatterChart,PointComponent:jt.Scatter})}var Hs=t=>{let{cx:e,cy:n,payload:o,xAxis:r,yAxis:s}=t,a=o.value||o.z||0,c=`hsl(${240-Math.min(1,Math.max(0,a/100))*240}, 70%, 50%)`,l=r.scale.bandwidth?r.scale.bandwidth():20,u=s.scale.bandwidth?s.scale.bandwidth():20;return jsxRuntime.jsx("rect",{x:e-l/2,y:n-u/2,width:l,height:u,fill:c,fillOpacity:.8,stroke:"#fff",strokeWidth:1})},Ks=t=>jsxRuntime.jsx(jt.Scatter,{...t,shape:Hs});function Wt(t){return jsxRuntime.jsx(it,{...t,ChartComponent:jt.ScatterChart,PointComponent:Ks})}var mt=new Map;function Mn(t,e,n,o){return `${t}|${e}|${n??""}|${o??""}`}function Nt(t){return `${t.datasetSlug}::${t.sqlQuery||""}::${t.resourceKey||""}`}async function Or(t,e,n,o,r){if(t.dataFetcher)return t.dataFetcher.fetchDatasetContents(e,n,o,r);let s=new URLSearchParams({limit:"1000"});o&&s.set("query",o),r&&s.set("resource_key",r);let a=`${t.baseUrl}/datasets/${encodeURIComponent(e)}/query?${s.toString()}`,i={"Content-Type":"application/json"},c=t.token||t.authToken;c&&(i.Authorization=`Bearer ${c}`);let l=await fetch(a,{headers:i});if(!l.ok)throw new Error(`Failed to fetch dataset contents: ${l.statusText}`);let u=await l.json();return !u.Columns||!u.Rows||u.Columns.length===0?[]:u.Rows.map(p=>{let d={};return u.Columns.forEach((m,g)=>{d[m]=p[g];}),d})}function Ae(t,e,n,o){let r=$t(),s=!!t&&!!e,a=Mn(t,e,n,o),i=s?mt.get(a):void 0,[c,l]=yt.useState(i),[u,p]=yt.useState(s&&!i),[d,m]=yt.useState(null),[g,f]=yt.useState(0),k=useDeepCompare.useDeepCompareMemo(()=>r,[r]);yt.useEffect(()=>{if(!s){l(void 0),p(false),m(null);return}if(mt.has(a)&&g===0){l(mt.get(a)),p(false),m(null);return}let x=false;return p(true),m(null),Or(k,t,e,n,o).then(y=>{x||(mt.set(a,y),l(y),p(false));}).catch(y=>{x||(m(y instanceof Error?y:new Error(String(y))),p(false));}),()=>{x=true;}},[k,t,e,n,o,s,g,a]);let b=yt.useCallback(()=>f(x=>x+1),[]);return {data:c,isLoading:u,error:d,refetch:b}}function fe(t,e){let n=H(),[o,r]=yt.useState(0),s=yt.useCallback(()=>r(d=>d+1),[]),a=yt.useMemo(()=>{let d=new Set;return t.filter(m=>{let g=Nt(m);return d.has(g)?false:(d.add(g),true)})},[t]),i=yt.useMemo(()=>a.map(Nt).join("|"),[a]),c=yt.useMemo(()=>a.map(d=>Mn(d.datasetSlug,e,d.sqlQuery,d.resourceKey)),[a,e]),[l,u]=yt.useState(()=>{if(!n||!e||a.length===0)return new Map;let d=new Map;return a.forEach((m,g)=>{let f=mt.get(c[g]);d.set(Nt(m),{data:f,isLoading:!f,error:null,refetch:s});}),d}),p=useDeepCompare.useDeepCompareMemo(()=>n,[n]);return yt.useEffect(()=>{if(!p||!e||a.length===0){u(new Map);return}let d=a.filter((f,k)=>o>0?true:!mt.has(c[k]));if(d.length===0){let f=new Map;a.forEach((k,b)=>{f.set(Nt(k),{data:mt.get(c[b]),isLoading:false,error:null,refetch:s});}),u(f);return}let m=false,g=new Map;return a.forEach((f,k)=>{let b=mt.get(c[k]);g.set(Nt(f),{data:b,isLoading:!b,error:null,refetch:s});}),u(g),d.forEach(f=>{let k=Nt(f),b=Mn(f.datasetSlug,e,f.sqlQuery,f.resourceKey);Or(p,f.datasetSlug,e,f.sqlQuery,f.resourceKey).then(x=>{m||(mt.set(b,x),u(y=>{let h=new Map(y);return h.set(k,{data:x,isLoading:false,error:null,refetch:s}),h}));}).catch(x=>{m||u(y=>{let h=new Map(y);return h.set(k,{data:void 0,isLoading:false,error:x instanceof Error?x:new Error(String(x)),refetch:s}),h});});}),()=>{m=true;}},[p,i,e,o,c.join(","),s]),t.map(d=>{let m=Nt(d);return l.get(m)||{data:void 0,isLoading:!(!p||!e),error:null,refetch:s}})}function Mr(t,e,n,o){let r=t.map(s=>({datasetSlug:s,sqlQuery:n?.[s],resourceKey:o?.[s]}));return fe(r,e)}function Vr(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=Vr(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 ra(){return ["yyyy-MM-dd","yyyyMMdd","yyyy-MM-dd'T'HH:mm:ss","yyyyMMddHHmmss"]}function oa(t){if(!t)return null;if(typeof t=="string"){if(/^\d{4}-\d{2}-\d{2}$/.test(t)){let r=new Date(t+"T00:00:00.000Z");if(dateFns.isValid(r))return r.getTime()}let o=ra();for(let r of o){let s=dateFns.parse(t,r,new Date);if(dateFns.isValid(s))return s.getTime()}}let e=new Date(t);return dateFns.isValid(e)?e.getTime():null}function Be(t,e,n,o){let r=e==="index"&&t[e]===void 0?o:t[e];return n==="date"?oa(r):n==="number"?parseFloat(r):r}function sa(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 ge(t,e,n,o){return !o||o.length===0?t:[...t].sort((r,s)=>{for(let a of o){let i=sa(a.key,e,n),c=Be(r,a.key,i,r.index),l=Be(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 Lr(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 aa(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 k=Math.floor(f/u);return d[k]||(d[k]={key:m,items:[]}),d[k].items.push(...g),d},[]).map(({key:d,items:m})=>({[e]:d,...n.reduce((g,f)=>{let k=m.map(b=>parseFloat(b[f.key])).filter(b=>!isNaN(b));return g[f.key]=k.length?k.reduce((b,x)=>b+x,0)/k.length:null,g},{})}));return a&&a.length>0?ge(p,r,s,a):p}let l=c.map(([u,p])=>{let d=n.reduce((g,f)=>{let k=p.map(b=>parseFloat(b[f.key])).filter(b=>!isNaN(b));return g[f.key]=k.length?k.reduce((b,x)=>b+x,0)/k.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?ge(l,r,s,a):l}function ia(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 $r(t,e,n,o,r){let s=t.map((m,g)=>{let f=Be(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?$r(t,e,n,Math.floor(o/2),r):p}function la(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 Oe=yt__namespace.default.memo(function({chartType:e,title:n,invocationId:o,datasetSlugs:r,xAxis:s,yAxes:a,series:i,dataReduction:c={strategy:"none",target_points:1e3},stacked:l,sort:u,onScrollUpdate:p,enableDownload:d=true,className:m,chartContainerClassName:g}){let f=yt.useMemo(()=>i.map(w=>({datasetSlug:w.datasetSlug,sqlQuery:w.sqlQuery,resourceKey:w.resourceKey})),[i]),k=fe(f,o),b=k.some(w=>w.isLoading),x=useDeepCompare.useDeepCompareMemo(()=>k.map(w=>w.data||[]),[k.map(w=>w.data)]),{resolvedXAxisKey:y,resolvedSeriesKeys:h}=yt.useMemo(()=>{let w=x.find(T=>T.length>0)||[];return {resolvedXAxisKey:zt(w,s.key),resolvedSeriesKeys:i.map((T,O)=>({...T,resolvedKey:zt(x[O]||[],T.key)}))}},[x,s.key,i]),S=yt.useMemo(()=>{let w=new Map;i.forEach((O,K)=>{let Y=x[K]||[],W=h[K]?.resolvedKey||O.key;(O.filters?la(Y,O.filters,W,y):Y).forEach((Ne,Ee)=>{let C=Be(Ne,y,s.type||"category",Ee);if(C==null||s.type==="number"&&isNaN(C))return;let N=s.type==="number"||s.type==="date"||typeof C=="object"?C.toString():String(C);w.has(N)||w.set(N,{[s.key]:C});let M=`series_${K}_${O.key}`,V=Ne[W];w.get(N)[M]=V;});});let T=Array.from(w.values());return u&&u.length>0?T:s.type==="date"?T.sort((O,K)=>O[s.key]-K[s.key]):s.type==="number"?T.sort((O,K)=>{let Y=parseFloat(O[s.key]),W=parseFloat(K[s.key]);return isNaN(Y)||isNaN(W)?0:Y-W}):T},[x,i,h,y,s,u]),_=yt.useMemo(()=>i.map((w,T)=>({...w,key:`series_${T}_${w.key}`})),[i]),v=yt.useMemo(()=>({[s.key]:{label:s.label,format:s.format,type:s.type},..._.reduce((w,T)=>(w[T.key]={label:T.name,color:T.color},w),{}),...e==="histogram"?{frequency:{label:a[0]?.label||"Frequency",color:_[0]?.color||"#2563eb"}}:{}}),[s,_,e,a]),I=yt.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=It;break;case "line":U=Ft;break;case "pie":U=Jt;break;case "scatter":U=Gt;break;case "histogram":U=It;break;case "heatmap":U=Wt;break}let Z=yt.useRef(false);yt.useEffect(()=>{Z.current||!p||!b&&v&&I&&S.length&&(p(),setTimeout(()=>p(),250),Z.current=true);},[p,b,v,I,S.length]);let[P,J]=yt.useState({x:[null,null],y:[null,null]}),{processedData:G,dataReductionInfo:In}=yt.useMemo(()=>{if(b||!S.length)return {processedData:[],dataReductionInfo:null};if(e==="histogram"){let Y=c.target_points||20;return {processedData:$r(S,y,_,Y,s),dataReductionInfo:null}}let w=S;if((P.x[0]!==null||P.y[0]!==null)&&(w=S.filter(Y=>{if(P.x[0]!==null&&P.x[1]!==null){let W=parseFloat(Y[s.key]);if(isNaN(W)||W<P.x[0]||W>P.x[1])return false}if(P.y[0]!==null&&P.y[1]!==null)for(let W of _){let Lt=parseFloat(Y[W.key]);if(!isNaN(Lt)&&(Lt<P.y[0]||Lt>P.y[1]))return false}return true})),w.length<=c.target_points&&(!u||u.length===0))return {processedData:w,dataReductionInfo:null};let T,O="";switch(c.strategy){case "sample":T=Lr(w,c.target_points),O="sampled",u&&u.length>0&&(T=ge(T,s,a,u));break;case "aggregate":T=aa(w,y,_,c.target_points,s,a,u),O="aggregated";break;case "bin":T=ia(w,y,_,c.target_points),O="binning",u&&u.length>0&&(T=ge(T,s,a,u));break;default:w.length<1e3?T=w:(T=Lr(w,c.target_points),O="sampled"),u&&u.length>0&&(T=ge(T,s,a,u));}let K=null;return w.length!==T.length&&(K=`${O} ${w.length.toLocaleString()} \u2192 ${T.length.toLocaleString()} points`),{processedData:T,dataReductionInfo:K}},[S,c,e,b,P.x,P.y,_,u,s,a,y]);return U?b?jsxRuntime.jsx("div",{children:"Loading..."}):S.length?I?jsxRuntime.jsx(U,{data:G,displayConfig:v,stacked:l,dataConfig:I,title:n,subtitle:In||void 0,disableAnimation:G.length>100,onZoomChange:J,enableDownload:d,className:m,chartContainerClassName:g}):jsxRuntime.jsx("div",{children:"Invalid chart configuration"}):jsxRuntime.jsx("div",{children:"Unable to display chart - no data available"}):(console.error("No chart component found"),null)},(t,e)=>Qs__default.default(t,e));function Me({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}=Ae(n,e,o,r),f=yt.useMemo(()=>s?m?.length?s.map(x=>{let y=zt(m,x.key);return {key:x.key,name:x.name,resolvedKey:y,format:x.format,value_type:x.value_type}}):[]:m?.length?Object.keys(m[0]).map(x=>({key:x,name:x,resolvedKey:x,format:void 0,value_type:void 0})):[],[s,m]),k=yt.useMemo(()=>!m||m.length===0?[]:a?m.slice(0,a):m,[m,a]),b=yt.useRef(false);return yt.useEffect(()=>{b.current||!d||!g&&m?.length&&(d(),setTimeout(()=>d(),250),b.current=true);},[d,g,m?.length]),g?jsxRuntime.jsx("div",{className:u||"text-gray-500",children:"Loading..."}):m?.length?f.length===0?jsxRuntime.jsx("div",{className:p||"text-gray-500",children:"No columns defined"}):jsxRuntime.jsxs("div",{className:i||"w-full",children:[t&&jsxRuntime.jsx("h3",{className:"text-lg font-medium mb-3",children:t}),jsxRuntime.jsx("div",{className:c||"relative w-full overflow-x-auto rounded-lg border border-border/50",children:jsxRuntime.jsxs("table",{className:"w-full caption-bottom text-sm",children:[jsxRuntime.jsx("thead",{className:"[&_tr]:border-b",children:jsxRuntime.jsx("tr",{className:l||"border-b transition-colors",children:f.map(x=>jsxRuntime.jsx("th",{className:"h-10 px-3 text-left align-middle font-medium text-muted-foreground",children:x.name},x.key))})}),jsxRuntime.jsx("tbody",{className:"[&_tr:last-child]:border-0",children:k.map((x,y)=>jsxRuntime.jsx("tr",{className:`border-b transition-colors hover:bg-muted/50 ${y%2===1?"bg-muted/30":""}`,children:f.map(h=>jsxRuntime.jsx("td",{className:"p-3 align-middle text-foreground",children:at(x[h.resolvedKey],h.format,h.value_type)},h.key))},y))})]})}),m.length>a&&jsxRuntime.jsxs("p",{className:"text-sm text-muted-foreground mt-2",children:["Showing ",a," of ",m.length," rows"]})]}):jsxRuntime.jsx("div",{className:p||"text-gray-500",children:"No data"})}function Ve({output:t,ContentComponent:e}){let n=H(),o=e??n?.ContentComponent,r=t?.contents;if(!t||!t.output||!r?.length)return null;let s=r.filter(a=>a.user_visibility==="visible");return s.length?jsxRuntime.jsx("div",{children:s.map(a=>o?jsxRuntime.jsx(o,{content:a},a.id):jsxRuntime.jsx("div",{className:"text-sm",children:typeof a.content=="string"?a.content:null},a.id))},t.output.id):null}function jr(t){return t!==null&&typeof t=="object"&&"Valid"in t&&"String"in t}function B(t){if(typeof t=="string")return t;if(jr(t))return t.Valid?t.String:void 0}function da(t,e){return B(t)??e}var Fr={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},Dn=Ut__namespace.Tooltip;function Rn({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}=wr(),g=ht__namespace.useMemo(()=>{if(r||!e?.length)return null;let[k]=e,b=`${d||k?.dataKey||k?.name||"value"}`,x=En(m,k,b),y=!d&&typeof a=="string"?m[a]?.label||a:x?.label;return i?jsxRuntime.jsx("div",{className:Q("font-medium",c),children:i(y,e)}):y?jsxRuntime.jsx("div",{className:Q("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 jsxRuntime.jsxs("div",{className:Q("border-border/50 bg-background grid min-w-[8rem] items-start gap-1.5 rounded-lg border px-2.5 py-1.5 text-xs shadow-xl",n),children:[f?null:g,jsxRuntime.jsx("div",{className:"grid gap-1.5",children:e.map((k,b)=>{let x=`${p||k.name||k.dataKey||"value"}`,y=En(m,k,x),h=u||k.payload.fill||k.color;return jsxRuntime.jsx("div",{className:Q("[&>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&&k?.value!==void 0&&k.name?l(k.value,k.name,k,b,k.payload):jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[y?.icon?jsxRuntime.jsx(y.icon,{}):!s&&jsxRuntime.jsx("div",{className:Q("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}}),jsxRuntime.jsxs("div",{className:Q("flex flex-1 justify-between leading-none",f?"items-end":"items-center"),children:[jsxRuntime.jsxs("div",{className:"grid gap-1.5",children:[f?g:null,jsxRuntime.jsx("span",{className:"text-muted-foreground",children:y?.label||k.name})]}),k.value&&jsxRuntime.jsx("span",{className:"text-foreground font-mono font-medium tabular-nums",children:k.value.toLocaleString()})]})]})},k.dataKey)})})]})}var An=Ut__namespace.Legend;function Pn({className:t,hideIcon:e=false,payload:n,verticalAlign:o="bottom",nameKey:r}){let{config:s}=wr();return n?.length?jsxRuntime.jsx("div",{className:Q("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=En(s,a,i);return jsxRuntime.jsxs("div",{className:Q("[&>svg]:text-muted-foreground flex items-center gap-1.5 [&>svg]:h-3 [&>svg]:w-3"),children:[c?.icon&&!e?jsxRuntime.jsx(c.icon,{}):jsxRuntime.jsx("div",{className:"h-2 w-2 shrink-0 rounded-[2px]",style:{backgroundColor:a.color}}),c?.label]},a.value)})}):null}function En(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 at(t,e,n){if(t==null)return "";if(n==="date"){let o=Nr(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]):d3TimeFormat.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?d3Format.format(",.0f")(o):Math.abs(o)>=100?d3Format.format(".1f")(o):Math.abs(o)>=10?d3Format.format(".2f")(o):Math.abs(o)>=1?d3Format.format(".3f")(o):d3Format.format(".3g")(o);if(r.includes("%"))return o>=0&&o<=1?d3Format.format(r)(o):d3Format.format(r)(o/100);try{return d3Format.format(r)(o)}catch(s){return console.warn(`Error formatting number with format '${r}': ${s}. Falling back to default.`),Math.abs(o)>=1e3?d3Format.format(",.0f")(o):Math.abs(o)>=1?d3Format.format(".2f")(o):d3Format.format(".3g")(o)}}return String(t)}function Nr(t){if(!t)return null;if(t instanceof Date)return dateFns.isValid(t)?t:null;if(typeof t=="number"){let n=new Date(t);return dateFns.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(dateFns.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=dateFns.parse(t,r,new Date);if(dateFns.isValid(s))return s}}let e=new Date(t);return dateFns.isValid(e)?e:null}function De({onZoomChange:t}={}){let[e,n]=ht.useState({refAreaLeft:null,refAreaRight:null,refAreaTop:null,refAreaBottom:null,zooming:false}),[o,r]=ht.useState({x:[null,null],y:[null,null]}),s=ht.useCallback(u=>{!u?.xValue||!u?.yValue||n(p=>({...p,refAreaLeft:u.xValue,refAreaTop:u.yValue,zooming:true}));},[]),a=ht.useCallback(u=>{!u?.xValue||!u?.yValue||!e.zooming||n(p=>({...p,refAreaRight:u.xValue,refAreaBottom:u.yValue}));},[e.zooming]),i=ht.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=ht.useCallback(()=>{let u={x:[null,null],y:[null,null]};r(u),t?.(u);},[t]),l=ht.useMemo(()=>({onZoomStart:s,onZoomMove:a,onZoomEnd:i,onResetZoom:c}),[s,a,i,c]);return {zoomState:e,customDomain:o,handlers:l}}function Dr(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 wt(t,e,n){return at(t,e,n)}function Ns({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:k}){let{zoomState:b,customDomain:x,handlers:y}=De({onZoomChange:c}),h=ht.useCallback(C=>{let N=`${(t||"chart").toLowerCase().replace(/\s+/g,"-")}.png`,M=document.createElement("a");M.download=N,M.href=C,M.click(),p?.(N);},[t,p]),S=ht.useCallback(C=>{console.error("Error converting chart to image:",C),d?.(C);},[d]),[{isLoading:_},v,I]=reactToImage.useToPng({onSuccess:h,onError:S}),j=ht.useCallback(async()=>{v();},[v]),Z=ht.useMemo(()=>Dr(r.xAxis),[r.xAxis]),P=ht.useMemo(()=>r.yAxes.map(C=>Dr(C)),[r.yAxes]),J=ht.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=ht.useMemo(()=>{if(r.xAxis.type==="category"||!J.length)return;let C=J.map(N=>Number(N[r.xAxis.key])).filter(N=>!isNaN(N));return [...new Set(C)].sort((N,M)=>N-M)},[J,r.xAxis.key,r.xAxis.type]),In=ht.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=ht.useCallback((C,N)=>{if(!C?.length)return {min:null,max:null};let M=C.map(L=>Number(L[N])).filter(L=>!isNaN(L));return {min:Math.min(...M),max:Math.max(...M)}},[]),E=ht.useMemo(()=>({x:x.x[0]!==null&&x.x[1]!==null?[x.x[0],x.x[1]]:(()=>{if(Z.min!==null&&Z.max!==null)return [Z.min,Z.max];let C=w(J,r.xAxis.key);return [C.min??"auto",C.max??"auto"]})(),y:r.yAxes.map((C,N)=>{if(x.y[0]!==null&&x.y[1]!==null)return [x.y[0],x.y[1]];let L=r.series.filter(X=>(X.axisIndex||0)===N).reduce((X,Nn)=>{let pt=w(J,Nn.key);return {min:X.min===null?pt.min:pt.min===null?X.min:Math.min(X.min,pt.min),max:X.max===null?pt.max:pt.max===null?X.max:Math.max(X.max,pt.max)}},{min:null,max:null});if(C.type==="number"&&C.maxValue){let X=parseFloat(C.maxValue);if(L.max===null||X<=L.max*1.5)return [P[N].min??L.min??"auto",P[N].max??L.max??"auto"]}return [P[N].min??L.min??"auto",P[N].max??L.max??"auto"]})}),[x.x,x.y,Z,P,r.series,r.yAxes,r.xAxis.key,J,w]),O=ht.useCallback((C,N,M)=>{if(M.dataKey===r.xAxis.key)return wt(C,r.xAxis.format,r.xAxis.type);let L=r.series.find(de=>de.key===M.dataKey),X=L?.name||String(N).replace(/^dataset_\d+_/,"");if(r.chartType==="histogram"){let de=M.payload;if(de.binStart!==void 0){let is=wt(de.binStart,r.xAxis.format,r.xAxis.type),ls=wt(de.binEnd,r.xAxis.format,r.xAxis.type);return `Count: ${C} (${is} - ${ls})`}}let Nn=L?.axisIndex||0,pt=r.yAxes[Nn],as=wt(C,pt?.format,pt?.type);return `${X}: ${as}`},[r.xAxis,r.series,r.yAxes,r.chartType]),[K,Y]=ht.useState(false);ht.useEffect(()=>{let C=setTimeout(()=>{Y(true);},1700);return ()=>clearTimeout(C)},[]);let W=ht.useCallback((C,N)=>{if(N&&N.length>0){let M=N[0].payload[r.xAxis.key],L=wt(M,r.xAxis.format,r.xAxis.type);return jsxRuntime.jsxs("div",{className:"flex flex-col",children:[jsxRuntime.jsx("span",{children:r.xAxis.label}),jsxRuntime.jsx("span",{className:"font-mono tabular-nums",children:L})]})}return C},[r.xAxis.key,r.xAxis.format,r.xAxis.type,r.xAxis.label]),Lt=ht.useCallback(C=>jsxRuntime.jsx(Rn,{...C,formatter:O,labelFormatter:W}),[O,W]),Ne=ht.useCallback(C=>jsxRuntime.jsx(Pn,{...C}),[]),Te=ht.useMemo(()=>!!(i||(n?.length||0)>100||K),[i,n?.length,K]);return jsxRuntime.jsxs("div",{className:m||"w-full items-center mt-0 flex flex-col gap-0",children:[(t||u)&&jsxRuntime.jsxs("div",{className:"w-full items-center mb-2 relative",children:[t&&jsxRuntime.jsx("h2",{className:"text-center text-base pt-0 mt-0 mb-2",children:t}),u&&jsxRuntime.jsx("button",{onClick:j,disabled:_,className:f||"text-sm text-gray-500 hover:text-gray-700 disabled:opacity-50 h-8 absolute right-0 top-[-5px] px-2 py-1 border rounded hover:bg-gray-50",title:"Download chart as PNG",children:jsxRuntime.jsx(lucideReact.Download,{className:"w-4 h-4"})})]}),e&&jsxRuntime.jsx("p",{className:"text-center text-sm text-muted-foreground mb-2",children:e}),jsxRuntime.jsx(pe,{ref:I,config:o,className:g||"w-full border border-border/50 p-4 rounded-md",debounceResize:true,children:jsxRuntime.jsxs(s,{accessibilityLayer:true,data:J,isAnimationActive:!Te,onMouseDown:y.onZoomStart,onMouseMove:y.onZoomMove,onMouseUp:y.onZoomEnd,onDoubleClick:y.onResetZoom,style:{userSelect:"none",cursor:"crosshair"},children:[jsxRuntime.jsx(Ut.CartesianGrid,{vertical:false}),jsxRuntime.jsx(Ut.XAxis,{dataKey:r.xAxis.key,domain:In||E.x,type:r.xAxis.type==="date"||!r.xAxis.type?"number":r.xAxis.type,tickFormatter:C=>wt(C,r.xAxis.format,r.xAxis.type),tickLine:false,tickMargin:10,height:J.length>15?70:50,axisLine:false,allowDataOverflow:true,interval:J.length<=40?0:void 0,ticks:G,...J.length>15?{angle:-45,textAnchor:"end"}:{},children:jsxRuntime.jsx(Ut.Label,{value:r.xAxis.label,position:"bottom",offset:J.length>15?-5:-10,style:{textAnchor:"middle"}})}),r.yAxes.map((C,N)=>jsxRuntime.jsx(Ut.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:M=>wt(M,C.format,C.type),allowDataOverflow:true,children:jsxRuntime.jsx(Ut.Label,{value:C.label,position:N===0?"insideLeft":"insideRight",angle:-90,style:{textAnchor:"middle"}})},`y-axis-${C.key}`)),jsxRuntime.jsx(Dn,{content:Lt}),jsxRuntime.jsx(An,{content:Ne,verticalAlign:"top"}),r.series.map(C=>jsxRuntime.jsx(a,{dataKey:C.key,yAxisId:C.axisIndex||0,fill:C.color||"blue",stroke:C.color||"blue",dot:{fill:C.color||"blue",stroke:C.color||"blue"},radius:4,name:C.name,isAnimationActive:!Te,animationDuration:1500,animationBegin:0,stackId:r.chartType==="bar"&&l?"stack":void 0},`${C.key}-${l?"stacked":"unstacked"}`)),b.refAreaLeft&&b.refAreaRight&&b.refAreaTop&&b.refAreaBottom&&jsxRuntime.jsx(Ut.ReferenceArea,{x1:b.refAreaLeft,x2:b.refAreaRight,y1:b.refAreaTop,y2:b.refAreaBottom,strokeOpacity:.2,stroke:"currentColor",fill:"currentColor",fillOpacity:.02,style:{pointerEvents:"none"}})]})}),x.x[0]!==null&&jsxRuntime.jsx("button",{onClick:y.onResetZoom,className:k||"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 it(t){return jsxRuntime.jsx(St,{fallback:jsxRuntime.jsx("div",{className:t.errorClassName||"text-red-500",children:"Failed to load chart"}),children:jsxRuntime.jsx(Ns,{...t})})}function It(t){return jsxRuntime.jsx(it,{...t,ChartComponent:Ut.BarChart,PointComponent:Ut.Bar})}function Ft(t){return jsxRuntime.jsx(it,{...t,ChartComponent:Ut.LineChart,PointComponent:Ut.Line})}var js=(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 Us({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=ht.useMemo(()=>n.reduce((p,d)=>(r.series.forEach(m=>{let g=m.key,f=String(d[r.xAxis.key]||"Unknown"),k=parseFloat(d[g]||"0");isNaN(k)||p.push({name:f,value:k,seriesId:g,displayName:f});}),p),[]).sort((p,d)=>d.value-p.value),[n,r.series,r.xAxis.key]);return jsxRuntime.jsxs("div",{className:s||"items-center",children:[jsxRuntime.jsx("h2",{className:"text-center text-base mb-2",children:t}),e&&jsxRuntime.jsx("p",{className:"text-center text-sm text-muted-foreground mb-2",children:e}),jsxRuntime.jsx(pe,{config:o,className:a||"w-full border border-border/50 rounded-md",children:jsxRuntime.jsxs(Ut.PieChart,{width:400,height:400,children:[jsxRuntime.jsx(Ut.Pie,{data:u,dataKey:"value",nameKey:"displayName",cx:"50%",cy:"50%",outerRadius:150,label:p=>`${p.displayName}: ${at(p.value,c,l)}`,children:u.map((p,d)=>jsxRuntime.jsx(Ut.Cell,{fill:d===0?i:js(i,d,u.length)},`cell-${p.name}`))}),jsxRuntime.jsx(Ut.Tooltip,{formatter:(p,d)=>[at(p,c,l),d]}),jsxRuntime.jsx(Ut.Legend,{})]})})]})}function Jt(t){return jsxRuntime.jsx(St,{fallback:jsxRuntime.jsx("div",{className:"text-red-500",children:"Failed to load chart"}),children:jsxRuntime.jsx(Us,{...t})})}function Gt(t){return jsxRuntime.jsx(it,{...t,ChartComponent:Ut.ScatterChart,PointComponent:Ut.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 jsxRuntime.jsx("rect",{x:e-l/2,y:n-u/2,width:l,height:u,fill:c,fillOpacity:.8,stroke:"#fff",strokeWidth:1})},Hs=t=>jsxRuntime.jsx(Ut.Scatter,{...t,shape:zs});function Wt(t){return jsxRuntime.jsx(it,{...t,ChartComponent:Ut.ScatterChart,PointComponent:Hs})}var mt=new Map;function Mn(t,e,n,o){return `${t}|${e}|${n??""}|${o??""}`}function Nt(t){return `${t.datasetSlug}::${t.sqlQuery||""}::${t.resourceKey||""}`}async function Or(t,e,n,o,r){if(t.dataFetcher)return t.dataFetcher.fetchDatasetContents(e,n,o,r);let s=new URLSearchParams({limit:"1000"});o&&s.set("query",o),r&&s.set("resource_key",r);let a=`${t.baseUrl}/datasets/${encodeURIComponent(e)}/query?${s.toString()}`,i={"Content-Type":"application/json"},c=t.token||t.authToken;c&&(i.Authorization=`Bearer ${c}`);let l=await fetch(a,{headers:i});if(!l.ok)throw new Error(`Failed to fetch dataset contents: ${l.statusText}`);let u=await l.json();return !u.Columns||!u.Rows||u.Columns.length===0?[]:u.Rows.map(p=>{let d={};return u.Columns.forEach((m,g)=>{d[m]=p[g];}),d})}function Ae(t,e,n,o){let r=$t(),s=!!t&&!!e,a=Mn(t,e,n,o),i=s?mt.get(a):void 0,[c,l]=ht.useState(i),[u,p]=ht.useState(s&&!i),[d,m]=ht.useState(null),[g,f]=ht.useState(0),k=useDeepCompare.useDeepCompareMemo(()=>r,[r]);ht.useEffect(()=>{if(!s){l(void 0),p(false),m(null);return}if(mt.has(a)&&g===0){l(mt.get(a)),p(false),m(null);return}let x=false;return p(true),m(null),Or(k,t,e,n,o).then(y=>{x||(mt.set(a,y),l(y),p(false));}).catch(y=>{x||(m(y instanceof Error?y:new Error(String(y))),p(false));}),()=>{x=true;}},[k,t,e,n,o,s,g,a]);let b=ht.useCallback(()=>f(x=>x+1),[]);return {data:c,isLoading:u,error:d,refetch:b}}function fe(t,e){let n=H(),[o,r]=ht.useState(0),s=ht.useCallback(()=>r(d=>d+1),[]),a=ht.useMemo(()=>{let d=new Set;return t.filter(m=>{let g=Nt(m);return d.has(g)?false:(d.add(g),true)})},[t]),i=ht.useMemo(()=>a.map(Nt).join("|"),[a]),c=ht.useMemo(()=>a.map(d=>Mn(d.datasetSlug,e,d.sqlQuery,d.resourceKey)),[a,e]),[l,u]=ht.useState(()=>{if(!n||!e||a.length===0)return new Map;let d=new Map;return a.forEach((m,g)=>{let f=mt.get(c[g]);d.set(Nt(m),{data:f,isLoading:!f,error:null,refetch:s});}),d}),p=useDeepCompare.useDeepCompareMemo(()=>n,[n]);return ht.useEffect(()=>{if(!p||!e||a.length===0){u(new Map);return}let d=a.filter((f,k)=>o>0?true:!mt.has(c[k]));if(d.length===0){let f=new Map;a.forEach((k,b)=>{f.set(Nt(k),{data:mt.get(c[b]),isLoading:false,error:null,refetch:s});}),u(f);return}let m=false,g=new Map;return a.forEach((f,k)=>{let b=mt.get(c[k]);g.set(Nt(f),{data:b,isLoading:!b,error:null,refetch:s});}),u(g),d.forEach(f=>{let k=Nt(f),b=Mn(f.datasetSlug,e,f.sqlQuery,f.resourceKey);Or(p,f.datasetSlug,e,f.sqlQuery,f.resourceKey).then(x=>{m||(mt.set(b,x),u(y=>{let h=new Map(y);return h.set(k,{data:x,isLoading:false,error:null,refetch:s}),h}));}).catch(x=>{m||u(y=>{let h=new Map(y);return h.set(k,{data:void 0,isLoading:false,error:x instanceof Error?x:new Error(String(x)),refetch:s}),h});});}),()=>{m=true;}},[p,i,e,o,c.join(","),s]),t.map(d=>{let m=Nt(d);return l.get(m)||{data:void 0,isLoading:!(!p||!e),error:null,refetch:s}})}function Mr(t,e,n,o){let r=t.map(s=>({datasetSlug:s,sqlQuery:n?.[s],resourceKey:o?.[s]}));return fe(r,e)}function Vr(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=Vr(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 na(){return ["yyyy-MM-dd","yyyyMMdd","yyyy-MM-dd'T'HH:mm:ss","yyyyMMddHHmmss"]}function ra(t){if(!t)return null;if(typeof t=="string"){if(/^\d{4}-\d{2}-\d{2}$/.test(t)){let r=new Date(t+"T00:00:00.000Z");if(dateFns.isValid(r))return r.getTime()}let o=na();for(let r of o){let s=dateFns.parse(t,r,new Date);if(dateFns.isValid(s))return s.getTime()}}let e=new Date(t);return dateFns.isValid(e)?e.getTime():null}function Be(t,e,n,o){let r=e==="index"&&t[e]===void 0?o:t[e];return n==="date"?ra(r):n==="number"?parseFloat(r):r}function oa(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 ge(t,e,n,o){return !o||o.length===0?t:[...t].sort((r,s)=>{for(let a of o){let i=oa(a.key,e,n),c=Be(r,a.key,i,r.index),l=Be(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 Lr(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 sa(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 k=Math.floor(f/u);return d[k]||(d[k]={key:m,items:[]}),d[k].items.push(...g),d},[]).map(({key:d,items:m})=>({[e]:d,...n.reduce((g,f)=>{let k=m.map(b=>parseFloat(b[f.key])).filter(b=>!isNaN(b));return g[f.key]=k.length?k.reduce((b,x)=>b+x,0)/k.length:null,g},{})}));return a&&a.length>0?ge(p,r,s,a):p}let l=c.map(([u,p])=>{let d=n.reduce((g,f)=>{let k=p.map(b=>parseFloat(b[f.key])).filter(b=>!isNaN(b));return g[f.key]=k.length?k.reduce((b,x)=>b+x,0)/k.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?ge(l,r,s,a):l}function aa(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 $r(t,e,n,o,r){let s=t.map((m,g)=>{let f=Be(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?$r(t,e,n,Math.floor(o/2),r):p}function ia(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 Oe=ht__namespace.default.memo(function({chartType:e,title:n,invocationId:o,datasetSlugs:r,xAxis:s,yAxes:a,series:i,dataReduction:c={strategy:"none",target_points:1e3},stacked:l,sort:u,onScrollUpdate:p,enableDownload:d=true,className:m,chartContainerClassName:g}){let f=ht.useMemo(()=>i.map(w=>({datasetSlug:w.datasetSlug,sqlQuery:w.sqlQuery,resourceKey:w.resourceKey})),[i]),k=fe(f,o),b=k.some(w=>w.isLoading),x=useDeepCompare.useDeepCompareMemo(()=>k.map(w=>w.data||[]),[k.map(w=>w.data)]),{resolvedXAxisKey:y,resolvedSeriesKeys:h}=ht.useMemo(()=>{let w=x.find(E=>E.length>0)||[];return {resolvedXAxisKey:zt(w,s.key),resolvedSeriesKeys:i.map((E,O)=>({...E,resolvedKey:zt(x[O]||[],E.key)}))}},[x,s.key,i]),S=ht.useMemo(()=>{let w=new Map;i.forEach((O,K)=>{let Y=x[K]||[],W=h[K]?.resolvedKey||O.key;(O.filters?ia(Y,O.filters,W,y):Y).forEach((Ne,Te)=>{let C=Be(Ne,y,s.type||"category",Te);if(C==null||s.type==="number"&&isNaN(C))return;let N=s.type==="number"||s.type==="date"||typeof C=="object"?C.toString():String(C);w.has(N)||w.set(N,{[s.key]:C});let M=`series_${K}_${O.key}`,L=Ne[W];w.get(N)[M]=L;});});let E=Array.from(w.values());return u&&u.length>0?E:s.type==="date"?E.sort((O,K)=>O[s.key]-K[s.key]):s.type==="number"?E.sort((O,K)=>{let Y=parseFloat(O[s.key]),W=parseFloat(K[s.key]);return isNaN(Y)||isNaN(W)?0:Y-W}):E},[x,i,h,y,s,u]),_=ht.useMemo(()=>i.map((w,E)=>({...w,key:`series_${E}_${w.key}`})),[i]),v=ht.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=ht.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]),j=null;switch(e){case "bar":j=It;break;case "line":j=Ft;break;case "pie":j=Jt;break;case "scatter":j=Gt;break;case "histogram":j=It;break;case "heatmap":j=Wt;break}let Z=ht.useRef(false);ht.useEffect(()=>{Z.current||!p||!b&&v&&I&&S.length&&(p(),setTimeout(()=>p(),250),Z.current=true);},[p,b,v,I,S.length]);let[P,J]=ht.useState({x:[null,null],y:[null,null]}),{processedData:G,dataReductionInfo:In}=ht.useMemo(()=>{if(b||!S.length)return {processedData:[],dataReductionInfo:null};if(e==="histogram"){let Y=c.target_points||20;return {processedData:$r(S,y,_,Y,s),dataReductionInfo:null}}let w=S;if((P.x[0]!==null||P.y[0]!==null)&&(w=S.filter(Y=>{if(P.x[0]!==null&&P.x[1]!==null){let W=parseFloat(Y[s.key]);if(isNaN(W)||W<P.x[0]||W>P.x[1])return false}if(P.y[0]!==null&&P.y[1]!==null)for(let W of _){let Lt=parseFloat(Y[W.key]);if(!isNaN(Lt)&&(Lt<P.y[0]||Lt>P.y[1]))return false}return true})),w.length<=c.target_points&&(!u||u.length===0))return {processedData:w,dataReductionInfo:null};let E,O="";switch(c.strategy){case "sample":E=Lr(w,c.target_points),O="sampled",u&&u.length>0&&(E=ge(E,s,a,u));break;case "aggregate":E=sa(w,y,_,c.target_points,s,a,u),O="aggregated";break;case "bin":E=aa(w,y,_,c.target_points),O="binning",u&&u.length>0&&(E=ge(E,s,a,u));break;default:w.length<1e3?E=w:(E=Lr(w,c.target_points),O="sampled"),u&&u.length>0&&(E=ge(E,s,a,u));}let K=null;return w.length!==E.length&&(K=`${O} ${w.length.toLocaleString()} \u2192 ${E.length.toLocaleString()} points`),{processedData:E,dataReductionInfo:K}},[S,c,e,b,P.x,P.y,_,u,s,a,y]);return j?b?jsxRuntime.jsx("div",{children:"Loading..."}):S.length?I?jsxRuntime.jsx(j,{data:G,displayConfig:v,stacked:l,dataConfig:I,title:n,subtitle:In||void 0,disableAnimation:G.length>100,onZoomChange:J,enableDownload:d,className:m,chartContainerClassName:g}):jsxRuntime.jsx("div",{children:"Invalid chart configuration"}):jsxRuntime.jsx("div",{children:"Unable to display chart - no data available"}):(console.error("No chart component found"),null)},(t,e)=>Ks__default.default(t,e));function Me({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}=Ae(n,e,o,r),f=ht.useMemo(()=>s?m?.length?s.map(x=>{let y=zt(m,x.key);return {key:x.key,name:x.name,resolvedKey:y,format:x.format,value_type:x.value_type}}):[]:m?.length?Object.keys(m[0]).map(x=>({key:x,name:x,resolvedKey:x,format:void 0,value_type:void 0})):[],[s,m]),k=ht.useMemo(()=>!m||m.length===0?[]:a?m.slice(0,a):m,[m,a]),b=ht.useRef(false);return ht.useEffect(()=>{b.current||!d||!g&&m?.length&&(d(),setTimeout(()=>d(),250),b.current=true);},[d,g,m?.length]),g?jsxRuntime.jsx("div",{className:u||"text-gray-500",children:"Loading..."}):m?.length?f.length===0?jsxRuntime.jsx("div",{className:p||"text-gray-500",children:"No columns defined"}):jsxRuntime.jsxs("div",{className:i||"w-full",children:[t&&jsxRuntime.jsx("h3",{className:"text-lg font-medium mb-3",children:t}),jsxRuntime.jsx("div",{className:c||"relative w-full overflow-x-auto rounded-lg border border-border/50",children:jsxRuntime.jsxs("table",{className:"w-full caption-bottom text-sm",children:[jsxRuntime.jsx("thead",{className:"[&_tr]:border-b",children:jsxRuntime.jsx("tr",{className:l||"border-b transition-colors",children:f.map(x=>jsxRuntime.jsx("th",{className:"h-10 px-3 text-left align-middle font-medium text-muted-foreground",children:x.name},x.key))})}),jsxRuntime.jsx("tbody",{className:"[&_tr:last-child]:border-0",children:k.map((x,y)=>jsxRuntime.jsx("tr",{className:`border-b transition-colors hover:bg-muted/50 ${y%2===1?"bg-muted/30":""}`,children:f.map(h=>jsxRuntime.jsx("td",{className:"p-3 align-middle text-foreground",children:at(x[h.resolvedKey],h.format,h.value_type)},h.key))},y))})]})}),m.length>a&&jsxRuntime.jsxs("p",{className:"text-sm text-muted-foreground mt-2",children:["Showing ",a," of ",m.length," rows"]})]}):jsxRuntime.jsx("div",{className:p||"text-gray-500",children:"No data"})}function Ve({output:t,ContentComponent:e}){let n=H(),o=e??n?.ContentComponent,r=t?.contents;if(!t||!t.output||!r?.length)return null;let s=r.filter(a=>a.user_visibility==="visible");return s.length?jsxRuntime.jsx("div",{children:s.map(a=>o?jsxRuntime.jsx(o,{content:a},a.id):jsxRuntime.jsx("div",{className:"text-sm",children:typeof a.content=="string"?a.content:null},a.id))},t.output.id):null}function Ur(t){return t!==null&&typeof t=="object"&&"Valid"in t&&"String"in t}function B(t){if(typeof t=="string")return t;if(Ur(t))return t.Valid?t.String:void 0}function ua(t,e){return B(t)??e}var Fr={v:"5.10.2",fr:60,ip:0,op:180,w:144,h:144,nm:"system-solid-719-spinner-circle",ddd:0,assets:[{id:"comp_6",nm:"loop-snake-alt",fr:60,layers:[{ddd:0,ind:1,ty:0,nm:"mask-2",td:1,refId:"comp_7",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[72,72,0],ix:2,l:2},a:{a:0,k:[72,72,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,w:144,h:144,ip:0,op:1800,st:0,bm:0},{ddd:0,ind:2,ty:4,nm:"circle 2",tt:2,tp:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[72,72,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[-30.652,0],[0,30.652],[30.652,0],[0,-30.652]],o:[[30.652,0],[0,-30.652],[-30.652,0],[0,30.652]],v:[[0,55.5],[55.5,0],[0,-55.5],[-55.5,0]],c:true},ix:2},nm:"Path 1",mn:"ADBE Vector Shape - Group",hd:false},{ty:"st",c:{a:0,k:[.071,.075,.192,1],ix:3,x:`var $bm_rt;
8
8
  $bm_rt = comp('system-solid-719-spinner-circle').layer('control').effect('primary')('Color');`},o:{a:0,k:100,ix:4},w:{a:0,k:9,ix:5},lc:2,lj:1,ml:4,bm:0,nm:".primary",mn:"ADBE Vector Graphic - Stroke",hd:false,cl:"primary"},{ty:"fl",c:{a:0,k:[.071,.075,.192,1],ix:4,x:`var $bm_rt;
9
9
  $bm_rt = comp('system-solid-719-spinner-circle').layer('control').effect('primary')('Color');`},o:{a:0,k:100,ix:5},r:1,bm:0,nm:".primary",mn:"ADBE Vector Graphic - Fill",hd:false,cl:"primary"},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"Transform"}],nm:"circle",np:3,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:false}],ip:0,op:300,st:0,ct:1,bm:0}]},{id:"comp_7",nm:"mask-2",fr:60,layers:[{ddd:0,ind:1,ty:3,nm:"Null 1108",sr:1,ks:{o:{a:0,k:0,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[72,72,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[78.6,78.6,100],ix:6,l:2}},ao:0,ip:0,op:1800,st:0,bm:0},{ddd:0,ind:2,ty:4,nm:"mask",parent:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:1,k:[{i:{x:[.833],y:[.833]},o:{x:[.167],y:[.167]},t:0,s:[0]},{t:180,s:[-360]}],ix:10},p:{a:0,k:[0,0,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{d:1,ty:"el",s:{a:0,k:[111,111],ix:2},p:{a:0,k:[0,0],ix:3},nm:"Ellipse Path 1",mn:"ADBE Vector Shape - Ellipse",hd:false},{ty:"tm",s:{a:1,k:[{i:{x:[.33],y:[1]},o:{x:[.335],y:[0]},t:90,s:[99.9]},{t:157,s:[0]}],ix:1},e:{a:1,k:[{i:{x:[.33],y:[1]},o:{x:[.33],y:[0]},t:111,s:[100]},{t:180,s:[.1]}],ix:2},o:{a:0,k:0,ix:3},m:1,ix:2,nm:"Trim Paths 1",mn:"ADBE Vector Filter - Trim",hd:false},{ty:"st",c:{a:0,k:[.070588238537,.074509806931,.192156866193,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:11.3,ix:5},lc:2,lj:2,bm:0,nm:".primary",mn:"ADBE Vector Graphic - Stroke",hd:false,cl:"primary"},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"Transform"}],nm:"Ellipse 1",np:3,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:false}],ip:90,op:991,st:90,ct:1,bm:0},{ddd:0,ind:3,ty:4,nm:"mask",parent:2,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[0,0,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{d:1,ty:"el",s:{a:0,k:[111,111],ix:2},p:{a:0,k:[0,0],ix:3},nm:"Ellipse Path 1",mn:"ADBE Vector Shape - Ellipse",hd:false},{ty:"tm",s:{a:1,k:[{i:{x:[.33],y:[1]},o:{x:[.335],y:[0]},t:0,s:[99.9]},{t:67,s:[0]}],ix:1},e:{a:1,k:[{i:{x:[.33],y:[1]},o:{x:[.33],y:[0]},t:21,s:[100]},{t:90,s:[.1]}],ix:2},o:{a:0,k:0,ix:3},m:1,ix:2,nm:"Trim Paths 1",mn:"ADBE Vector Filter - Trim",hd:false},{ty:"st",c:{a:0,k:[.070588238537,.074509806931,.192156866193,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:11.3,ix:5},lc:2,lj:2,bm:0,nm:".primary",mn:"ADBE Vector Graphic - Stroke",hd:false,cl:"primary"},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"Transform"}],nm:"Ellipse 1",np:3,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:false}],ip:0,op:90,st:0,ct:1,bm:0}]},{id:"comp_9",nm:"mask-1",fr:60,layers:[{ddd:0,ind:1,ty:3,nm:"Null 1107",sr:1,ks:{o:{a:0,k:0,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[72,72,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[78.6,78.6,100],ix:6,l:2}},ao:0,ip:0,op:1800,st:0,bm:0},{ddd:0,ind:2,ty:4,nm:"mask",parent:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:1,k:[{i:{x:[.584],y:[.217]},o:{x:[.247],y:[0]},t:0,s:[0]},{i:{x:[.647],y:[.59]},o:{x:[.314],y:[.277]},t:9,s:[18.902]},{i:{x:[.649],y:[.675]},o:{x:[.315],y:[.302]},t:13,s:[36.82]},{i:{x:[.693],y:[1]},o:{x:[.208],y:[.228]},t:18,s:[63.991]},{t:240,s:[1080]}],ix:10},p:{a:0,k:[0,0,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:1,k:[{i:{x:.833,y:.833},o:{x:.26,y:0},t:168,s:[{i:[[-30.652,0],[-4.25,4.25],[30.652,0],[5.125,5.125]],o:[[30.652,0],[-4.25,4.25],[-30.652,0],[6,6.5]],v:[[0,55],[45,32.75],[0,55.5],[-45.25,32.5]],c:true}]},{i:{x:.833,y:.833},o:{x:.167,y:.167},t:186,s:[{i:[[-43.5,0],[4.456,-17.326],[30.652,0],[2.907,16.173]],o:[[38.5,0],[-2.411,15.677],[-30.652,0],[-5.064,-20.184]],v:[[0,39.201],[49.544,18.576],[0,55.5],[-49.686,18.434]],c:true}]},{i:{x:.05,y:1},o:{x:.167,y:.167},t:196,s:[{i:[[-50,0],[0,-29.209],[30.652,0],[1.285,24.253]],o:[[50.75,0],[-1.065,24.034],[-30.652,0],[0,-29.896]],v:[[0,14.948],[52.868,8.209],[0,55.5],[-52.931,8.146]],c:true}]},{t:240,s:[{i:[[-30.652,0],[0,-30.652],[30.652,0],[0,30.652]],o:[[30.652,0],[0,30.652],[-30.652,0],[0,-30.652]],v:[[0,-55.5],[55.5,0],[0,55.5],[-55.5,0]],c:true}]}],ix:2},nm:"Path 1",mn:"ADBE Vector Shape - Group",hd:false},{ty:"st",c:{a:0,k:[.070588238537,.074509806931,.192156866193,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:11.3,ix:5},lc:2,lj:2,bm:0,nm:".primary",mn:"ADBE Vector Graphic - Stroke",hd:false,cl:"primary"},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"Transform"}],nm:"Ellipse 1",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:false}],ip:168,op:350,st:120,ct:1,bm:0},{ddd:0,ind:3,ty:4,nm:"mask",parent:2,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[0,0,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{d:1,ty:"el",s:{a:0,k:[111,111],ix:2},p:{a:0,k:[0,0],ix:3},nm:"Ellipse Path 1",mn:"ADBE Vector Shape - Ellipse",hd:false},{ty:"tm",s:{a:1,k:[{i:{x:[.334],y:[1]},o:{x:[.333],y:[0]},t:0,s:[0]},{t:48,s:[35]}],ix:1},e:{a:1,k:[{i:{x:[.334],y:[1]},o:{x:[.333],y:[0]},t:0,s:[100]},{t:48,s:[65]}],ix:2},o:{a:0,k:0,ix:3},m:1,ix:2,nm:"Trim Paths 1",mn:"ADBE Vector Filter - Trim",hd:false},{ty:"st",c:{a:0,k:[.070588238537,.074509806931,.192156866193,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:11.3,ix:5},lc:2,lj:2,bm:0,nm:".primary",mn:"ADBE Vector Graphic - Stroke",hd:false,cl:"primary"},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"Transform"}],nm:"Ellipse 1",np:3,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:false}],ip:0,op:168,st:0,ct:1,bm:0}]},{id:"comp_11",nm:"mask-3",fr:60,layers:[{ddd:0,ind:1,ty:3,nm:"Null 1109",sr:1,ks:{o:{a:0,k:0,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[72,72,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[78.6,78.6,100],ix:6,l:2}},ao:0,ip:0,op:1800,st:0,bm:0},{ddd:0,ind:2,ty:4,nm:"mask",parent:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[0,0,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:1,k:[{i:{x:.833,y:.833},o:{x:.26,y:0},t:48,s:[{i:[[-30.652,0],[-4.25,4.25],[30.652,0],[5.125,5.125]],o:[[30.652,0],[-4.25,4.25],[-30.652,0],[6,6.5]],v:[[0,55],[45,32.75],[0,55.5],[-45.25,32.5]],c:true}]},{i:{x:.833,y:.833},o:{x:.167,y:.167},t:66,s:[{i:[[-43.5,0],[4.456,-17.326],[30.652,0],[2.907,16.173]],o:[[38.5,0],[-2.411,15.677],[-30.652,0],[-5.064,-20.184]],v:[[0,39.201],[49.544,18.576],[0,55.5],[-49.686,18.434]],c:true}]},{i:{x:.05,y:1},o:{x:.167,y:.167},t:76,s:[{i:[[-50,0],[0,-29.209],[30.652,0],[1.285,24.253]],o:[[50.75,0],[-1.065,24.034],[-30.652,0],[0,-29.896]],v:[[0,14.948],[52.868,8.209],[0,55.5],[-52.931,8.146]],c:true}]},{t:120,s:[{i:[[-30.652,0],[0,-30.652],[30.652,0],[0,30.652]],o:[[30.652,0],[0,30.652],[-30.652,0],[0,-30.652]],v:[[0,-55.5],[55.5,0],[0,55.5],[-55.5,0]],c:true}]}],ix:2},nm:"Path 1",mn:"ADBE Vector Shape - Group",hd:false},{ty:"st",c:{a:0,k:[.070588238537,.074509806931,.192156866193,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:11.3,ix:5},lc:2,lj:2,bm:0,nm:".primary",mn:"ADBE Vector Graphic - Stroke",hd:false,cl:"primary"},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"Transform"}],nm:"Ellipse 1",np:2,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:false}],ip:48,op:523,st:0,ct:1,bm:0},{ddd:0,ind:3,ty:4,nm:"mask",parent:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[0,0,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{d:1,ty:"el",s:{a:0,k:[111,111],ix:2},p:{a:0,k:[0,0],ix:3},nm:"Ellipse Path 1",mn:"ADBE Vector Shape - Ellipse",hd:false},{ty:"tm",s:{a:1,k:[{i:{x:[.334],y:[1]},o:{x:[.333],y:[0]},t:0,s:[0]},{t:48,s:[35]}],ix:1},e:{a:1,k:[{i:{x:[.334],y:[1]},o:{x:[.333],y:[0]},t:0,s:[100]},{t:48,s:[65]}],ix:2},o:{a:0,k:0,ix:3},m:1,ix:2,nm:"Trim Paths 1",mn:"ADBE Vector Filter - Trim",hd:false},{ty:"st",c:{a:0,k:[.070588238537,.074509806931,.192156866193,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:11.3,ix:5},lc:2,lj:2,bm:0,nm:".primary",mn:"ADBE Vector Graphic - Stroke",hd:false,cl:"primary"},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"Transform"}],nm:"Ellipse 1",np:3,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:false}],ip:0,op:49,st:0,ct:1,bm:0}]},{id:"comp_14",nm:"mask-4",fr:60,layers:[{ddd:0,ind:1,ty:3,nm:"Null 1110",sr:1,ks:{o:{a:0,k:0,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[72,72,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[78.6,78.6,100],ix:6,l:2}},ao:0,ip:0,op:1800,st:0,bm:0},{ddd:0,ind:2,ty:4,nm:"mask",parent:1,sr:1,ks:{o:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.167],y:[.167]},t:0,s:[0]},{t:90,s:[100]}],ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[0,0,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:1,k:[{i:{x:.833,y:.833},o:{x:.167,y:.167},t:0,s:[{i:[[-0.276,0],[0,-0.276],[.276,0],[0,.276]],o:[[.276,0],[0,.276],[-0.276,0],[0,-0.276]],v:[[0,-0.5],[.5,0],[0,.5],[-0.5,0]],c:true}]},{t:120,s:[{i:[[-30.154,0],[0,-30.154],[30.154,0],[0,30.154]],o:[[30.154,0],[0,30.154],[-30.154,0],[0,-30.154]],v:[[0,-54.598],[54.598,0],[0,54.598],[-54.598,0]],c:true}]}],ix:2},nm:"Path 1",mn:"ADBE Vector Shape - Group",hd:false},{ty:"tm",s:{a:0,k:0,ix:1},e:{a:0,k:100,ix:2},o:{a:0,k:0,ix:3},m:1,ix:2,nm:"Trim Paths 1",mn:"ADBE Vector Filter - Trim",hd:false},{ty:"st",c:{a:0,k:[.070588238537,.074509806931,.192156866193,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:11.3,ix:5},lc:2,lj:2,bm:0,nm:".primary",mn:"ADBE Vector Graphic - Stroke",hd:false,cl:"primary"},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"Transform"}],nm:"Ellipse 1",np:3,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:false}],ip:0,op:1800,st:0,ct:1,bm:0},{ddd:0,ind:3,ty:4,nm:"mask",parent:1,sr:1,ks:{o:{a:1,k:[{i:{x:[.161],y:[1]},o:{x:[.167],y:[.167]},t:0,s:[100]},{t:60,s:[0]}],ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[0,0,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:1,k:[{i:{x:.161,y:1},o:{x:.167,y:.167},t:0,s:[{i:[[-30.652,0],[0,-30.652],[30.652,0],[0,30.652]],o:[[30.652,0],[0,30.652],[-30.652,0],[0,-30.652]],v:[[0,-55.5],[55.5,0],[0,55.5],[-55.5,0]],c:true}]},{t:60,s:[{i:[[-37.003,0],[0,-37.003],[37.003,0],[0,37.003]],o:[[37.003,0],[0,37.003],[-37.003,0],[0,-37.003]],v:[[0,-67],[67,0],[0,67],[-67,0]],c:true}]}],ix:2},nm:"Path 1",mn:"ADBE Vector Shape - Group",hd:false},{ty:"tm",s:{a:0,k:0,ix:1},e:{a:0,k:100,ix:2},o:{a:0,k:0,ix:3},m:1,ix:2,nm:"Trim Paths 1",mn:"ADBE Vector Filter - Trim",hd:false},{ty:"st",c:{a:0,k:[.070588238537,.074509806931,.192156866193,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:11.3,ix:5},lc:2,lj:2,bm:0,nm:".primary",mn:"ADBE Vector Graphic - Stroke",hd:false,cl:"primary"},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"Transform"}],nm:"Ellipse 1",np:3,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:false}],ip:0,op:1800,st:0,ct:1,bm:0}]},{id:"comp_16",nm:"mask-5",fr:60,layers:[{ddd:0,ind:1,ty:3,nm:"Null 1111",sr:1,ks:{o:{a:0,k:0,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[72,72,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[78.6,78.6,100],ix:6,l:2}},ao:0,ip:0,op:1800,st:0,bm:0},{ddd:0,ind:2,ty:4,nm:"mask",parent:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[0,0,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:1,k:[{i:{x:0,y:.66},o:{x:.124,y:.088},t:20,s:[{i:[[-0.276,0],[0,-0.276],[.276,0],[0,.276]],o:[[.276,0],[0,.276],[-0.276,0],[0,-0.276]],v:[[0,-0.5],[.5,0],[0,.5],[-0.5,0]],c:true}]},{t:60,s:[{i:[[-30.154,0],[0,-30.154],[30.154,0],[0,30.154]],o:[[30.154,0],[0,30.154],[-30.154,0],[0,-30.154]],v:[[0,-54.598],[54.598,0],[0,54.598],[-54.598,0]],c:true}]}],ix:2},nm:"Path 1",mn:"ADBE Vector Shape - Group",hd:false},{ty:"tm",s:{a:0,k:0,ix:1},e:{a:0,k:100,ix:2},o:{a:0,k:0,ix:3},m:1,ix:2,nm:"Trim Paths 1",mn:"ADBE Vector Filter - Trim",hd:false},{ty:"st",c:{a:0,k:[.070588238537,.074509806931,.192156866193,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:11.3,ix:5},lc:2,lj:2,bm:0,nm:".primary",mn:"ADBE Vector Graphic - Stroke",hd:false,cl:"primary"},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"Transform"}],nm:"Ellipse 1",np:3,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:false}],ip:20,op:1800,st:0,ct:1,bm:0},{ddd:0,ind:3,ty:4,nm:"mask",parent:1,sr:1,ks:{o:{a:1,k:[{i:{x:[.833],y:[.833]},o:{x:[.333],y:[0]},t:0,s:[100]},{t:60,s:[0]}],ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[0,0,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:1,k:[{i:{x:.507,y:1},o:{x:.095,y:.321},t:0,s:[{i:[[-30.652,0],[0,-30.652],[30.652,0],[0,30.652]],o:[[30.652,0],[0,30.652],[-30.652,0],[0,-30.652]],v:[[0,-55.5],[55.5,0],[0,55.5],[-55.5,0]],c:true}]},{t:60,s:[{i:[[-37.003,0],[0,-37.003],[37.003,0],[0,37.003]],o:[[37.003,0],[0,37.003],[-37.003,0],[0,-37.003]],v:[[0,-67],[67,0],[0,67],[-67,0]],c:true}]}],ix:2},nm:"Path 1",mn:"ADBE Vector Shape - Group",hd:false},{ty:"tm",s:{a:0,k:0,ix:1},e:{a:0,k:100,ix:2},o:{a:0,k:0,ix:3},m:1,ix:2,nm:"Trim Paths 1",mn:"ADBE Vector Filter - Trim",hd:false},{ty:"st",c:{a:0,k:[.070588238537,.074509806931,.192156866193,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:11.3,ix:5},lc:2,lj:2,bm:0,nm:".primary",mn:"ADBE Vector Graphic - Stroke",hd:false,cl:"primary"},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"Transform"}],nm:"Ellipse 1",np:3,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:false}],ip:0,op:1800,st:0,ct:1,bm:0}]},{id:"comp_19",nm:"mask-6",fr:60,layers:[{ddd:0,ind:1,ty:3,nm:"Null 1112",sr:1,ks:{o:{a:0,k:0,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[72,72,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[78.6,78.6,100],ix:6,l:2}},ao:0,ip:0,op:1800,st:0,bm:0},{ddd:0,ind:2,ty:4,nm:"mask",parent:3,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[.514,-0.84,0],ix:2,l:2},a:{a:0,k:[.514,-6.24,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:0,k:{i:[[0,0],[-12.745,-9.902],[-2.377,-1.327],[-8.708,-0.155],[-4.427,1.116],[-5.211,16.683],[-0.162,4.273],[.683,3.57],[16.218,4.737],[3.846,.074],[4.596,-1.531],[-0.017,-17.15],[-13.185,-6.083],[-3.505,-0.454],[-6.139,3.186],[-3.046,5.293],[-0.309,4.673],[.703,2.893],[4.329,3.821],[5.306,.603],[4.422,-2.403],[2.136,-3.916],[-0.144,-3.846],[-3.333,-3.451],[-1.877,-0.92],[-3.188,.401],[-1.893,5.145],[.978,2.596],[2.775,.798],[1.781,-2.308],[-1.419,-1.448]],o:[[.965,16.115],[2.149,1.67],[7.626,4.259],[4.598,.082],[16.65,-4.196],[1.275,-4.083],[.138,-3.624],[-3.192,-16.68],[-3.724,-1.088],[-4.887,-0.094],[-16.161,5.384],[.287,14.428],[3.249,1.499],[6.853,.887],[5.491,-2.85],[2.336,-4.06],[.198,-3.003],[-1.376,-5.661],[-4.129,-3.645],[-5.084,-0.578],[-3.952,2.148],[-1.841,3.376],[.182,4.869],[1.49,1.543],[3.02,1.48],[5.353,-0.673],[1.032,-2.804],[-1.139,-3.025],[-2.704,-0.778],[-1.14,1.477],[0,0]],v:[[-55.765,-4.143],[-34.151,37.195],[-27.316,41.629],[-2.358,48.14],[11.243,46.45],[46.671,12.649],[48.717,.071],[47.804,-10.664],[15.642,-45.824],[4.204,-47.466],[-10.148,-45.15],[-37.914,-6.587],[-16.262,27.132],[-6.024,29.983],[13.888,26.321],[26.864,13.719],[30.785,.393],[29.933,-8.55],[21.059,-23.045],[6.42,-29.442],[-8.246,-26.497],[-17.475,-17.167],[-20.027,-5.992],[-14.434,7.02],[-9.293,10.7],[.313,12.253],[12.328,2.889],[12.294,-5.579],[5.835,-11.66],[-1.807,-9.436],[-1.903,-4.143]],c:false},ix:2},nm:"Path 3",mn:"ADBE Vector Shape - Group",hd:false},{ty:"tm",s:{a:0,k:0,ix:1},e:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.167],y:[.167]},t:39,s:[0]},{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:97.559,s:[100]},{i:{x:[.667],y:[1]},o:{x:[.298],y:[0]},t:117.559,s:[100]},{i:{x:[.802],y:[1]},o:{x:[.333],y:[0]},t:193.559,s:[45.895]},{t:228,s:[0]}],ix:2},o:{a:0,k:0,ix:3},m:1,ix:2,nm:"Trim Paths 1",mn:"ADBE Vector Filter - Trim",hd:false},{ty:"st",c:{a:0,k:[.070588238537,.074509806931,.192156866193,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:11.3,ix:5},lc:2,lj:1,ml:4,bm:0,nm:".primary",mn:"ADBE Vector Graphic - Stroke",hd:false,cl:"primary"},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"Transform"}],nm:"Ellipse 33",np:3,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:false}],ip:0,op:194,st:0,ct:1,bm:0},{ddd:0,ind:3,ty:4,nm:"mask",parent:1,sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:1,k:[{i:{x:[.652],y:[.354]},o:{x:[.443],y:[.213]},t:0,s:[0]},{i:{x:[.526],y:[.666]},o:{x:[.231],y:[.231]},t:118,s:[-473.927]},{t:240,s:[-1384.503]}],ix:10},p:{a:0,k:[0,0,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,shapes:[{ty:"gr",it:[{ind:0,ty:"sh",ix:1,ks:{a:1,k:[{t:118.559,s:[{i:[[-30.652,0],[0,-30.652],[30.652,0],[0,30.652]],o:[[30.652,0],[0,30.652],[-30.652,0],[0,-30.652]],v:[[0,-55.5],[55.5,0],[0,55.5],[-55.5,0]],c:true}],h:1},{i:{x:.29,y:1},o:{x:.333,y:0},t:194,s:[{i:[[-26.752,3.759],[0,-30.652],[30.646,-1.513],[0,30.652]],o:[[21.768,-3.059],[0,30.652],[-30.615,1.511],[0,-12.422]],v:[[-2.911,-43.444],[49.68,1.935],[-0.898,54.175],[-55.863,-2.206]],c:true}]},{t:240,s:[{i:[[-30.652,0],[0,-30.652],[30.652,0],[0,30.652]],o:[[30.652,0],[0,30.652],[-30.652,0],[0,-30.652]],v:[[0,-55.5],[55.5,0],[0,55.5],[-55.5,0]],c:true}]}],ix:2},nm:"Path 1",mn:"ADBE Vector Shape - Group",hd:false},{ty:"tm",s:{a:1,k:[{t:0,s:[1.1],h:1},{i:{x:[.728],y:[1]},o:{x:[.28],y:[-0.325]},t:39,s:[0]},{i:{x:[.833],y:[.833]},o:{x:[.333],y:[0]},t:194,s:[0]},{t:240,s:[1.1]}],ix:1},e:{a:1,k:[{i:{x:[.833],y:[.833]},o:{x:[.333],y:[0]},t:0,s:[73.3]},{t:73.559,s:[0],h:1},{i:{x:[.833],y:[.833]},o:{x:[.333],y:[0]},t:194,s:[82.8]},{t:240,s:[73.3]}],ix:2},o:{a:1,k:[{i:{x:[.833],y:[.833]},o:{x:[.333],y:[0]},t:0,s:[91]},{t:39,s:[-89],h:1},{i:{x:[.833],y:[.833]},o:{x:[.333],y:[0]},t:194,s:[-382]},{t:240,s:[-319]}],ix:3},m:1,ix:2,nm:"Trim Paths 1",mn:"ADBE Vector Filter - Trim",hd:false},{ty:"st",c:{a:0,k:[.070588238537,.074509806931,.192156866193,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:11.3,ix:5},lc:2,lj:2,bm:0,nm:".primary",mn:"ADBE Vector Graphic - Stroke",hd:false,cl:"primary"},{ty:"tr",p:{a:0,k:[0,0],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"Transform"}],nm:"Ellipse 1",np:3,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:false}],ip:0,op:595,st:0,ct:1,bm:0}]}],layers:[{ddd:0,ind:1,ty:3,nm:"control",sr:1,ks:{o:{a:0,k:0,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[0,0],ix:2,l:2},a:{a:0,k:[0,0,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,ef:[{ty:5,nm:"primary",np:3,mn:"ADBE Color Control",ix:1,en:1,ef:[{ty:2,nm:"Color",mn:"ADBE Color Control-0001",ix:1,v:{a:0,k:[.071,.075,.192],ix:1}}]}],ip:0,op:1751,st:0,bm:0},{ddd:0,ind:8,ty:0,nm:"loop-snake-alt",refId:"comp_6",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[72,72,0],ix:2,l:2},a:{a:0,k:[72,72,0],ix:1,l:2},s:{a:0,k:[100,100,100],ix:6,l:2}},ao:0,w:144,h:144,ip:0,op:190,st:0,bm:0}],markers:[{tm:0,cm:"default:loop-snake-alt",dr:180}]};var Jr={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;
@@ -20,10 +20,10 @@ $bm_rt = comp('system-solid-56-warning').layer('control').effect('primary')('Col
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 qr=null,Le=null,jn=new Set;function ha(){return Le||(typeof window>"u"?Promise.resolve():(Le=import('@lordicon/react').then(t=>{qr=t.Player,jn.forEach(e=>e());}),Le))}typeof window<"u"&&ha();function xa(t){return jn.add(t),()=>jn.delete(t)}function ka(){return qr}function ba(){return null}function Ca(){let[t,e]=yt.useState("#000000");return yt.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 ft({status:t,color:e,size:n=16,className:o}){let r=yt.useRef(null),s=yt.useRef(null),a=yt.useRef(null),i=yt.useSyncExternalStore(xa,ka,ba),c=Ca(),l=e||c;return yt.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?jsxRuntime.jsxs("div",{className:o,style:{width:n,height:n,position:"relative"},children:[jsxRuntime.jsx("div",{style:{position:"absolute",opacity:t==="loading"?1:0,transition:"opacity 0.3s ease-in-out"},children:jsxRuntime.jsx(i,{ref:r,size:n,icon:Fr,colorize:l,onComplete:()=>r.current?.playFromBeginning?.()})}),jsxRuntime.jsx("div",{style:{position:"absolute",opacity:t==="finished"?1:0,transition:"opacity 0.3s ease-in-out"},children:jsxRuntime.jsx(i,{ref:s,size:n,icon:Jr,colorize:l})}),jsxRuntime.jsx("div",{style:{position:"absolute",opacity:t==="failed"?1:0,transition:"opacity 0.3s ease-in-out"},children:jsxRuntime.jsx(i,{ref:a,size:n,icon:Gr,colorize:l})})]}):jsxRuntime.jsx("div",{className:o,style:{width:n,height:n}})}function ye(t,e){return t==="json"||e==="json"||e==="ui_generation"}var zr=(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))(zr||{}),Hr=(s=>(s.Initializing="initializing",s.Running="running",s.ProcessingDatasets="processing datasets",s.Completed="completed",s.Failed="failed",s))(Hr||{});var Kr={Finished:"step finished",Failed:"step error"};function $e({step:t}){let e=B(t.action_type)||"step",n=t.currentStatus;if(!n)return null;let o="loading";n.status===Kr.Finished||n.status==="completed"?o="finished":(n.status===Kr.Failed||n.status==="failed")&&(o="failed");let r,s=B(n.message);return s?r=s:o==="finished"?r=B(t.finished_message)||`Finished ${e}`:o==="failed"?r=`Failed: ${e}`:r=B(t.running_message)||`Running ${e}...`,jsxRuntime.jsxs("div",{className:"text-sm font-medium flex items-center gap-2",children:[jsxRuntime.jsx(ft,{status:o}),r]})}function Ue({step:t,ContentComponent:e}){if(B(t.user_output_visibility)!=="visible")return null;let n=B(t.action_type);return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[n!=="bot.invoke"&&n!=="invoke_bot"&&jsxRuntime.jsx($e,{step:t}),jsxRuntime.jsx(Dt,{eventsByID:t.eventsByID,ContentComponent:e})]})}function je({event:t,ContentComponent:e}){let n=H(),o=e??n?.ContentComponent;if(!t)return null;switch(t.type){case "output":return t.Output?jsxRuntime.jsx(Ve,{output:t.Output,ContentComponent:o}):null;case "step":return t.Step?jsxRuntime.jsx(Ue,{step:t.Step,ContentComponent:o}):null;default:return null}}function Dt({eventsByID:t,ContentComponent:e}){return jsxRuntime.jsx(jsxRuntime.Fragment,{children:Object.values(t).map(n=>jsxRuntime.jsx(je,{event:n,ContentComponent:e},n.id))})}function he({content:t,className:e}){return t?.length?jsxRuntime.jsx("div",{className:e||"prose dark:prose-invert max-w-4xl w-full leading-normal",children:jsxRuntime.jsx("p",{style:{whiteSpace:"pre-wrap"},children:t})}):null}function Ta(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 xt({content:t}){let e=yt.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 jsxRuntime.jsx("p",{className:Ta(n.style),children:n.message})}return typeof e=="object"&&"_raw"in e?jsxRuntime.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 Je({config:t,data:e,className:n,errorClassName:o,emptyClassName:r}){let s=yt.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 jsxRuntime.jsx("div",{className:o||"text-red-500",children:"Invalid chart configuration"});if(!e||e.length===0)return jsxRuntime.jsx("div",{className:r||"text-gray-500",children:"No data available for chart"});let a=null;switch(s.chartType){case "bar":case "histogram":a=It;break;case "line":a=Ft;break;case "pie":a=Jt;break;case "scatter":a=Gt;break;case "heatmap":a=Wt;break}if(!a)return jsxRuntime.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 jsxRuntime.jsx("div",{className:n||"w-full max-w-3xl",children:jsxRuntime.jsx(a,{title:s.title,data:e,displayConfig:i,dataConfig:c,stacked:s.stacked,disableAnimation:e.length>100})})}function Ge({title:t,columns:e,data:n,className:o,maxRows:r=100}){let s=yt.useMemo(()=>!n||n.length===0?[]:r?n.slice(0,r):n,[n,r]);return !e||e.length===0?jsxRuntime.jsx("div",{className:"text-gray-500",children:"No columns defined"}):!n||n.length===0?jsxRuntime.jsx("div",{className:"text-gray-500",children:"No data available"}):jsxRuntime.jsxs("div",{className:o||"w-full",children:[t&&jsxRuntime.jsx("h3",{className:"text-lg font-medium mb-3",children:t}),jsxRuntime.jsx("div",{className:"relative w-full overflow-x-auto rounded-lg border border-border",children:jsxRuntime.jsxs("table",{className:"w-full caption-bottom text-sm",children:[jsxRuntime.jsx("thead",{className:"[&_tr]:border-b",children:jsxRuntime.jsx("tr",{className:"border-b transition-colors bg-muted/50",children:e.map(a=>jsxRuntime.jsx("th",{className:"h-10 px-3 text-left align-middle font-medium text-muted-foreground",children:a.column_name},a.key))})}),jsxRuntime.jsx("tbody",{className:"[&_tr:last-child]:border-0",children:s.map((a,i)=>jsxRuntime.jsx("tr",{className:"border-b transition-colors hover:bg-muted/50",children:e.map(c=>jsxRuntime.jsx("td",{className:"p-3 align-middle text-foreground",children:at(a[c.key],c.format,c.value_type)},c.key))},i))})]})}),n.length>r&&jsxRuntime.jsxs("p",{className:"text-sm text-muted-foreground mt-2",children:["Showing ",r," of ",n.length," rows"]})]})}function Oa(){return t=>{let e=[];unistUtilVisit.visit(t,"code",(n,o,r)=>{let s=n;(!s.value||s.value.trim()==="")&&r&&typeof o=="number"&&e.push({parent:r,index:o});}),unistUtilVisit.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 D({content:t,className:e}){return !t||typeof t!="string"||!t.length?null:jsxRuntime.jsx("div",{className:Q("prose dark:prose-invert leading-tight",e),children:jsxRuntime.jsx(Pa__default.default,{remarkPlugins:[Ba__default.default,Oa],children:t})})}var Ht=Symbol("parsing"),tt=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+=`
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 qr=null,Le=null,Un=new Set;function ya(){return Le||(typeof window>"u"?Promise.resolve():(Le=import('@lordicon/react').then(t=>{qr=t.Player,Un.forEach(e=>e());}),Le))}typeof window<"u"&&ya();function ha(t){return Un.add(t),()=>Un.delete(t)}function xa(){return qr}function ka(){return null}function ba(){let[t,e]=ht.useState("#000000");return ht.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 ft({status:t,color:e,size:n=16,className:o}){let r=ht.useRef(null),s=ht.useRef(null),a=ht.useRef(null),i=ht.useSyncExternalStore(ha,xa,ka),c=ba(),l=e||c;return ht.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?jsxRuntime.jsxs("div",{className:o,style:{width:n,height:n,position:"relative"},children:[jsxRuntime.jsx("div",{style:{position:"absolute",opacity:t==="loading"?1:0,transition:"opacity 0.3s ease-in-out"},children:jsxRuntime.jsx(i,{ref:r,size:n,icon:Fr,colorize:l,onComplete:()=>r.current?.playFromBeginning?.()})}),jsxRuntime.jsx("div",{style:{position:"absolute",opacity:t==="finished"?1:0,transition:"opacity 0.3s ease-in-out"},children:jsxRuntime.jsx(i,{ref:s,size:n,icon:Jr,colorize:l})}),jsxRuntime.jsx("div",{style:{position:"absolute",opacity:t==="failed"?1:0,transition:"opacity 0.3s ease-in-out"},children:jsxRuntime.jsx(i,{ref:a,size:n,icon:Gr,colorize:l})})]}):jsxRuntime.jsx("div",{className:o,style:{width:n,height:n}})}function ye(t,e){return t==="json"||e==="json"||e==="ui_generation"}var zr=(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))(zr||{}),Hr=(s=>(s.Initializing="initializing",s.Running="running",s.ProcessingDatasets="processing datasets",s.Completed="completed",s.Failed="failed",s))(Hr||{});var Kr={Finished:"step finished",Failed:"step error"};function $e({step:t}){let e=B(t.action_type)||"step",n=t.currentStatus;if(!n)return null;let o="loading";n.status===Kr.Finished||n.status==="completed"?o="finished":(n.status===Kr.Failed||n.status==="failed")&&(o="failed");let r,s=B(n.message);return s?r=s:o==="finished"?r=B(t.finished_message)||`Finished ${e}`:o==="failed"?r=`Failed: ${e}`:r=B(t.running_message)||`Running ${e}...`,jsxRuntime.jsxs("div",{className:"text-sm font-medium flex items-center gap-2",children:[jsxRuntime.jsx(ft,{status:o}),r]})}function je({step:t,ContentComponent:e}){if(B(t.user_output_visibility)!=="visible")return null;let n=B(t.action_type);return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[n!=="bot.invoke"&&n!=="invoke_bot"&&jsxRuntime.jsx($e,{step:t}),jsxRuntime.jsx(Dt,{eventsByID:t.eventsByID,ContentComponent:e})]})}function Ue({event:t,ContentComponent:e}){let n=H(),o=e??n?.ContentComponent;if(!t)return null;switch(t.type){case "output":return t.Output?jsxRuntime.jsx(Ve,{output:t.Output,ContentComponent:o}):null;case "step":return t.Step?jsxRuntime.jsx(je,{step:t.Step,ContentComponent:o}):null;default:return null}}function Dt({eventsByID:t,ContentComponent:e}){return jsxRuntime.jsx(jsxRuntime.Fragment,{children:Object.values(t).map(n=>jsxRuntime.jsx(Ue,{event:n,ContentComponent:e},n.id))})}function he({content:t,className:e}){return t?.length?jsxRuntime.jsx("div",{className:e||"prose dark:prose-invert max-w-4xl w-full leading-normal",children:jsxRuntime.jsx("p",{style:{whiteSpace:"pre-wrap"},children:t})}):null}function Ta(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 gt({content:t}){let e=ht.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 jsxRuntime.jsx("p",{className:Ta(n.style),children:n.message})}return typeof e=="object"&&"_raw"in e?jsxRuntime.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 Je({config:t,data:e,className:n,errorClassName:o,emptyClassName:r}){let s=ht.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 jsxRuntime.jsx("div",{className:o||"text-red-500",children:"Invalid chart configuration"});if(!e||e.length===0)return jsxRuntime.jsx("div",{className:r||"text-gray-500",children:"No data available for chart"});let a=null;switch(s.chartType){case "bar":case "histogram":a=It;break;case "line":a=Ft;break;case "pie":a=Jt;break;case "scatter":a=Gt;break;case "heatmap":a=Wt;break}if(!a)return jsxRuntime.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 jsxRuntime.jsx("div",{className:n||"w-full max-w-3xl",children:jsxRuntime.jsx(a,{title:s.title,data:e,displayConfig:i,dataConfig:c,stacked:s.stacked,disableAnimation:e.length>100})})}function Ge({title:t,columns:e,data:n,className:o,maxRows:r=100}){let s=ht.useMemo(()=>!n||n.length===0?[]:r?n.slice(0,r):n,[n,r]);return !e||e.length===0?jsxRuntime.jsx("div",{className:"text-gray-500",children:"No columns defined"}):!n||n.length===0?jsxRuntime.jsx("div",{className:"text-gray-500",children:"No data available"}):jsxRuntime.jsxs("div",{className:o||"w-full",children:[t&&jsxRuntime.jsx("h3",{className:"text-lg font-medium mb-3",children:t}),jsxRuntime.jsx("div",{className:"relative w-full overflow-x-auto rounded-lg border border-border",children:jsxRuntime.jsxs("table",{className:"w-full caption-bottom text-sm",children:[jsxRuntime.jsx("thead",{className:"[&_tr]:border-b",children:jsxRuntime.jsx("tr",{className:"border-b transition-colors bg-muted/50",children:e.map(a=>jsxRuntime.jsx("th",{className:"h-10 px-3 text-left align-middle font-medium text-muted-foreground",children:a.column_name},a.key))})}),jsxRuntime.jsx("tbody",{className:"[&_tr:last-child]:border-0",children:s.map((a,i)=>jsxRuntime.jsx("tr",{className:"border-b transition-colors hover:bg-muted/50",children:e.map(c=>jsxRuntime.jsx("td",{className:"p-3 align-middle text-foreground",children:at(a[c.key],c.format,c.value_type)},c.key))},i))})]})}),n.length>r&&jsxRuntime.jsxs("p",{className:"text-sm text-muted-foreground mt-2",children:["Showing ",r," of ",n.length," rows"]})]})}function Ba(){return t=>{let e=[];unistUtilVisit.visit(t,"code",(n,o,r)=>{let s=n;(!s.value||s.value.trim()==="")&&r&&typeof o=="number"&&e.push({parent:r,index:o});}),unistUtilVisit.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 D({content:t,className:e}){return !t||typeof t!="string"||!t.length?null:jsxRuntime.jsx("div",{className:Q("prose dark:prose-invert leading-tight",e),children:jsxRuntime.jsx(Aa__default.default,{remarkPlugins:[Pa__default.default,Ba],children:t})})}var Ht=Symbol("parsing"),tt=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
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={[Ht]: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[Ht],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[Ht]=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[Ht],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 L(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 tt().parse(e)}catch{return null}}}function Rt(t){return t===" "||t===`
26
- `||t===" "||t==="\r"}function ro(t,e){if(e>=t.length-1)return "";for(let n=e+1;n<t.length;n++)if(!Rt(t[n]))return t[n];return ""}function Ma(t){for(let e=0;e<t.length;e++){let n=t[e];if(n==="{"||n==="["){let o=ro(t,e);if(n==="{"&&o==='"'||n==="["&&o==="{")return e}}return -1}function gt(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 tt,k=f.parse(g);if(k&&f.state==="END"){p=k,d=m+3;break}}catch{}}}if(!p){let m=t.substring(c);try{let f=new tt().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=Ma(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=ro(t,l);if(!i&&(u==="{"&&p==='"'||u==="["&&p==="{")&&(s.trim()&&e.push({content:s.trim(),type:"text"}),i=true,a=new tt,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 Va(t){return t&&typeof t=="object"&&!t[Ht]}function Kt(t){return t&&typeof t=="object"&&t[Ht]===true}function La(t){return t.replace(/([a-z0-9])([A-Z])/g,"$1_$2").toLowerCase()}function Jn(t,e){if(t&&typeof t=="object"&&e&&typeof e=="object")for(let n of Object.getOwnPropertySymbols(t))e[n]=t[n];}var oo={DataTable:"Table"},so={title:"chart_title",y_axis:"y_axes",table_name:"table_title"};function Gn(t){if(t==null||typeof t!="object")return t;if(Array.isArray(t)){let n=t.map(Gn);return Jn(t,n),n}let e={};for(let[n,o]of Object.entries(t)){let r=La(n);so[r]&&(r=so[r]),e[r]=Gn(o);}return Jn(t,e),e}function $a(t){if(!t||typeof t!="object")return t;let e=t,n=e._type??e.type;n&&oo[n]&&(n=oo[n]);let o=e.content??e,r=e.content?Gn(o):o,s={_type:n,content:r};return Jn(t,s),s}function Wn(t){return t.map($a)}async function Ja(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:B(l.name)||"dataset"}}function Ga(t){return t&&/filename="([^"]*)"/.exec(t)?.[1]||null}async function Wa(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=Ga(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 Qt({slug:t,invocationId:e,threadId:n,sqlQuery:o,resourceKey:r,className:s}){let a=H(),[i,c]=yt.useState(false),[l,u]=yt.useState(null),[p,d]=yt.useState(true),m=n||a?.threadId;yt.useEffect(()=>{if(!t||!m){d(false);return}let f=false;async function k(){try{let b=null;a?.dataFetcher?.getDatasetDetails?b=await a.dataFetcher.getDatasetDetails(t,m):a?.baseUrl&&(b=await Ja(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 k(),()=>{f=true;}},[t,m,a]);let g=yt.useCallback(async f=>{if(f.preventDefault(),!(!l?.id||i)){c(true);try{let k,b;if(a?.dataFetcher?.downloadDataset){k=await a.dataFetcher.downloadDataset(l.id,o,r);let x=l.name||"dataset";b=/\.[a-zA-Z0-9]+$/.test(x)?x:`${x}.csv`;}else if(a?.baseUrl){let x=await Wa(a.baseUrl,l.id,m,o,r,a.authToken,a.token);k=x.blob,b=x.filename;}else throw new Error("No download method available");qa(k,b);}catch(k){console.error("Download failed:",k);}finally{c(false);}}},[l,i,a,m,o,r]);return p||!l?.id?null:jsxRuntime.jsxs("a",{href:"#",onClick:g,className:`inline-flex items-center gap-2 text-sm text-muted-foreground hover:text-foreground transition-colors ${s||""}`,children:[jsxRuntime.jsx(lucideReact.Download,{className:"h-4 w-4"}),i?"Downloading...":"Download",jsxRuntime.jsx("span",{className:"font-medium",children:l.name||"dataset"})]})}function Hn({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?jsxRuntime.jsx("p",{className:n||"w-full max-w-4xl text-sm text-muted-foreground",children:"Chart could not be rendered. Please try again."}):e?jsxRuntime.jsxs("div",{className:"my-4",children:[jsxRuntime.jsx(Oe,{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&&jsxRuntime.jsx("div",{className:"flex gap-4 mt-2",children:s.map(a=>jsxRuntime.jsx(Qt,{slug:a,invocationId:e},a))})]}):jsxRuntime.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 Kn({node:t,className:e,invocationId:n,warningClassName:o}){let r=t.content;if(!r)return null;let s=r.dataset_slug;return !n||!s?jsxRuntime.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"]}):jsxRuntime.jsxs("div",{className:"my-4",children:[jsxRuntime.jsx(Me,{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}),jsxRuntime.jsx("div",{className:"mt-2",children:jsxRuntime.jsx(Qt,{slug:s,invocationId:n})})]})}function Qn({node:t,className:e}){let n=t.content,o=n?.text??n?.markdown??"";return jsxRuntime.jsx("div",{className:"my-2",children:jsxRuntime.jsx(D,{content:o,className:e})})}function Zn({node:t,className:e,invocationId:n}){let r=t.content?.dataset_slug;return r?jsxRuntime.jsx("div",{className:"my-2",children:jsxRuntime.jsx(Qt,{slug:r,invocationId:n,className:e})}):null}function Yn({node:t,onSuggestionClick:e,suggestionButtonClassName:n}){let r=t.content?.suggestions||[];return r.length?jsxRuntime.jsx("div",{className:"flex flex-col gap-2 my-4",children:r.map((s,a)=>jsxRuntime.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 Za={xlsx:lucideReact.FileSpreadsheet,xls:lucideReact.FileSpreadsheet,pptx:lucideReact.Presentation,ppt:lucideReact.Presentation,pdf:lucideReact.FileText,docx:lucideReact.FileText,doc:lucideReact.FileText,png:lucideReact.Image,jpg:lucideReact.Image,jpeg:lucideReact.Image,gif:lucideReact.Image,svg:lucideReact.Image,webp:lucideReact.Image};function Ya(t){let e=t.split(".").pop()?.toLowerCase()||"";return Za[e]||lucideReact.File}function Xa(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 ti({file:t,className:e}){let[n,o]=yt.useState(false),r=Ya(t.name),s=Xa(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 jsxRuntime.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:[jsxRuntime.jsx("div",{className:"flex items-center justify-center w-10 h-10 rounded-lg bg-gray-200 dark:bg-gray-700",children:jsxRuntime.jsx(r,{className:"w-5 h-5 text-gray-500 dark:text-gray-400"})}),jsxRuntime.jsxs("div",{className:"flex-1 min-w-0",children:[jsxRuntime.jsx("div",{className:"font-medium text-sm truncate",children:t.name}),jsxRuntime.jsxs("div",{className:"text-xs text-gray-500 dark:text-gray-400",children:[s," file"]})]}),jsxRuntime.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:[jsxRuntime.jsx(lucideReact.Download,{className:"w-4 h-4"}),n?"Downloading...":"Download"]})]})}function Xn({node:t,className:e}){let r=(t.content?.files||[]).filter(s=>!s.name.toLowerCase().endsWith(".csv"));return r.length?jsxRuntime.jsxs("div",{className:"flex flex-col gap-2 my-4",children:[jsxRuntime.jsx("div",{className:"text-sm text-gray-500 dark:text-gray-400 mb-1",children:"Generated Files"}),r.map(s=>jsxRuntime.jsx(ti,{file:s,className:e},s.key||s.name))]}):null}var tr={Chart:Hn,Table:Kn,TextMarkdown:Qn,DownloadButton:Zn,Suggestions:Yn,FileDownloads:Xn};function Yt({nodes:t,className:e,invocationId:n,onSuggestionClick:o,customNodeComponents:r,warningClassName:s,suggestionButtonClassName:a}){if(!t||!Array.isArray(t))return null;let i={...tr,...r},l=Wn(t).filter(u=>u?._type&&i[u._type]);return l.length===0?t.some(p=>Kt(p))?null:jsxRuntime.jsx("p",{className:"w-full max-w-4xl text-sm text-muted-foreground",children:"The LLM generated an invalid response. Please try again."}):jsxRuntime.jsx(jsxRuntime.Fragment,{children:l.map((u,p)=>{let d=u,m=i[d._type];return jsxRuntime.jsx(m,{node:d,index:p,className:e,invocationId:n,onSuggestionClick:o,warningClassName:s,suggestionButtonClassName:a},`${d._type}-${p}`)})})}var co="erdo-shimmer-style";function We(){if(typeof document>"u"||document.getElementById(co))return;let t=document.createElement("style");t.id=co,t.textContent=`
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 tt().parse(e)}catch{return null}}}function Rt(t){return t===" "||t===`
26
+ `||t===" "||t==="\r"}function ro(t,e){if(e>=t.length-1)return "";for(let n=e+1;n<t.length;n++)if(!Rt(t[n]))return t[n];return ""}function Oa(t){for(let e=0;e<t.length;e++){let n=t[e];if(n==="{"||n==="["){let o=ro(t,e);if(n==="{"&&o==='"'||n==="["&&o==="{")return e}}return -1}function yt(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 tt,k=f.parse(g);if(k&&f.state==="END"){p=k,d=m+3;break}}catch{}}}if(!p){let m=t.substring(c);try{let f=new tt().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=Oa(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=ro(t,l);if(!i&&(u==="{"&&p==='"'||u==="["&&p==="{")&&(s.trim()&&e.push({content:s.trim(),type:"text"}),i=true,a=new tt,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 Ma(t){return t&&typeof t=="object"&&!t[Ht]}function Kt(t){return t&&typeof t=="object"&&t[Ht]===true}function Va(t){return t.replace(/([a-z0-9])([A-Z])/g,"$1_$2").toLowerCase()}function Jn(t,e){if(t&&typeof t=="object"&&e&&typeof e=="object")for(let n of Object.getOwnPropertySymbols(t))e[n]=t[n];}var oo={DataTable:"Table"},so={title:"chart_title",y_axis:"y_axes",table_name:"table_title"};function Gn(t){if(t==null||typeof t!="object")return t;if(Array.isArray(t)){let n=t.map(Gn);return Jn(t,n),n}let e={};for(let[n,o]of Object.entries(t)){let r=Va(n);so[r]&&(r=so[r]),e[r]=Gn(o);}return Jn(t,e),e}function La(t){if(!t||typeof t!="object")return t;let e=t,n=e._type??e.type;n&&oo[n]&&(n=oo[n]);let o=e.content??e,r=e.content?Gn(o):o,s={_type:n,content:r};return Jn(t,s),s}function Wn(t){return t.map(La)}async function Fa(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:B(l.name)||"dataset"}}function Ja(t){return t&&/filename="([^"]*)"/.exec(t)?.[1]||null}async function Ga(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=Ja(l.headers.get("content-disposition"))||"dataset";return {blob:u,filename:p}}function Wa(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 Qt({slug:t,invocationId:e,threadId:n,sqlQuery:o,resourceKey:r,className:s}){let a=H(),[i,c]=ht.useState(false),[l,u]=ht.useState(null),[p,d]=ht.useState(true),m=n||a?.threadId;ht.useEffect(()=>{if(!t||!m){d(false);return}let f=false;async function k(){try{let b=null;a?.dataFetcher?.getDatasetDetails?b=await a.dataFetcher.getDatasetDetails(t,m):a?.baseUrl&&(b=await Fa(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 k(),()=>{f=true;}},[t,m,a]);let g=ht.useCallback(async f=>{if(f.preventDefault(),!(!l?.id||i)){c(true);try{let k,b;if(a?.dataFetcher?.downloadDataset){k=await a.dataFetcher.downloadDataset(l.id,o,r);let x=l.name||"dataset";b=/\.[a-zA-Z0-9]+$/.test(x)?x:`${x}.csv`;}else if(a?.baseUrl){let x=await Ga(a.baseUrl,l.id,m,o,r,a.authToken,a.token);k=x.blob,b=x.filename;}else throw new Error("No download method available");Wa(k,b);}catch(k){console.error("Download failed:",k);}finally{c(false);}}},[l,i,a,m,o,r]);return p||!l?.id?null:jsxRuntime.jsxs("a",{href:"#",onClick:g,className:`inline-flex items-center gap-2 text-sm text-muted-foreground hover:text-foreground transition-colors ${s||""}`,children:[jsxRuntime.jsx(lucideReact.Download,{className:"h-4 w-4"}),i?"Downloading...":"Download",jsxRuntime.jsx("span",{className:"font-medium",children:l.name||"dataset"})]})}function Hn({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?jsxRuntime.jsx("p",{className:n||"w-full max-w-4xl text-sm text-muted-foreground",children:"Chart could not be rendered. Please try again."}):e?jsxRuntime.jsxs("div",{className:"my-4",children:[jsxRuntime.jsx(Oe,{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&&jsxRuntime.jsx("div",{className:"flex gap-4 mt-2",children:s.map(a=>jsxRuntime.jsx(Qt,{slug:a,invocationId:e},a))})]}):jsxRuntime.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 Kn({node:t,className:e,invocationId:n,warningClassName:o}){let r=t.content;if(!r)return null;let s=r.dataset_slug;return !n||!s?jsxRuntime.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"]}):jsxRuntime.jsxs("div",{className:"my-4",children:[jsxRuntime.jsx(Me,{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}),jsxRuntime.jsx("div",{className:"mt-2",children:jsxRuntime.jsx(Qt,{slug:s,invocationId:n})})]})}function Qn({node:t,className:e}){let n=t.content,o=n?.text??n?.markdown??"";return jsxRuntime.jsx("div",{className:"my-2",children:jsxRuntime.jsx(D,{content:o,className:e})})}function Zn({node:t,className:e,invocationId:n}){let r=t.content?.dataset_slug;return r?jsxRuntime.jsx("div",{className:"my-2",children:jsxRuntime.jsx(Qt,{slug:r,invocationId:n,className:e})}):null}function Yn({node:t,onSuggestionClick:e,suggestionButtonClassName:n}){let r=t.content?.suggestions||[];return r.length?jsxRuntime.jsx("div",{className:"flex flex-col gap-2 my-4",children:r.map((s,a)=>jsxRuntime.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 Qa={xlsx:lucideReact.FileSpreadsheet,xls:lucideReact.FileSpreadsheet,pptx:lucideReact.Presentation,ppt:lucideReact.Presentation,pdf:lucideReact.FileText,docx:lucideReact.FileText,doc:lucideReact.FileText,png:lucideReact.Image,jpg:lucideReact.Image,jpeg:lucideReact.Image,gif:lucideReact.Image,svg:lucideReact.Image,webp:lucideReact.Image};function Za(t){let e=t.split(".").pop()?.toLowerCase()||"";return Qa[e]||lucideReact.File}function Ya(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 Xa({file:t,className:e}){let[n,o]=ht.useState(false),r=Za(t.name),s=Ya(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 jsxRuntime.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:[jsxRuntime.jsx("div",{className:"flex items-center justify-center w-10 h-10 rounded-lg bg-gray-200 dark:bg-gray-700",children:jsxRuntime.jsx(r,{className:"w-5 h-5 text-gray-500 dark:text-gray-400"})}),jsxRuntime.jsxs("div",{className:"flex-1 min-w-0",children:[jsxRuntime.jsx("div",{className:"font-medium text-sm truncate",children:t.name}),jsxRuntime.jsxs("div",{className:"text-xs text-gray-500 dark:text-gray-400",children:[s," file"]})]}),jsxRuntime.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:[jsxRuntime.jsx(lucideReact.Download,{className:"w-4 h-4"}),n?"Downloading...":"Download"]})]})}function Xn({node:t,className:e}){let r=(t.content?.files||[]).filter(s=>!s.name.toLowerCase().endsWith(".csv"));return r.length?jsxRuntime.jsxs("div",{className:"flex flex-col gap-2 my-4",children:[jsxRuntime.jsx("div",{className:"text-sm text-gray-500 dark:text-gray-400 mb-1",children:"Generated Files"}),r.map(s=>jsxRuntime.jsx(Xa,{file:s,className:e},s.key||s.name))]}):null}var tr={Chart:Hn,Table:Kn,TextMarkdown:Qn,DownloadButton:Zn,Suggestions:Yn,FileDownloads:Xn};function Yt({nodes:t,className:e,invocationId:n,onSuggestionClick:o,customNodeComponents:r,warningClassName:s,suggestionButtonClassName:a}){if(!t||!Array.isArray(t))return null;let i={...tr,...r},l=Wn(t).filter(u=>u?._type&&i[u._type]);return l.length===0?t.some(p=>Kt(p))?null:jsxRuntime.jsx("p",{className:"w-full max-w-4xl text-sm text-muted-foreground",children:"The LLM generated an invalid response. Please try again."}):jsxRuntime.jsx(jsxRuntime.Fragment,{children:l.map((u,p)=>{let d=u,m=i[d._type];return jsxRuntime.jsx(m,{node:d,index:p,className:e,invocationId:n,onSuggestionClick:o,warningClassName:s,suggestionButtonClassName:a},`${d._type}-${p}`)})})}var co="erdo-shimmer-style";function We(){if(typeof document>"u"||document.getElementById(co))return;let t=document.createElement("style");t.id=co,t.textContent=`
27
27
  @keyframes erdo-shimmer {
28
28
  0% {
29
29
  background-position: 200% center;
@@ -47,5 +47,5 @@ $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 qe({item:t,className:e}){let[n,o]=yt.useState(false);yt.useEffect(()=>{We();},[]);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 jsxRuntime.jsxs("div",{className:e,children:[jsxRuntime.jsxs("button",{onClick:()=>o(!n),className:"inline-flex items-center gap-1.5 text-left",children:[n?jsxRuntime.jsx(lucideReact.ChevronDown,{className:"h-3.5 w-3.5 text-muted-foreground/70"}):jsxRuntime.jsx(lucideReact.ChevronRight,{className:"h-3.5 w-3.5 text-muted-foreground/70"}),jsxRuntime.jsx("span",{className:`text-sm ${l?"erdo-shimmer":"text-muted-foreground hover:text-foreground/70 transition-colors"}`,children:r?"Encrypted thinking":"Thinking"})]}),n&&jsxRuntime.jsx("div",{className:"mt-1 pl-5 text-sm text-muted-foreground",children:s?jsxRuntime.jsx(D,{content:s,className:"text-sm text-muted-foreground [&_*]:text-muted-foreground"}):l?"Thinking...":""})]})}function ai(t){try{return JSON.parse(t)}catch{return t}}function ii(t){if(!t)return "";try{return new Date(t).toLocaleTimeString([],{hour:"2-digit",minute:"2-digit",second:"2-digit"})}catch{return ""}}function er({log:t}){let e=typeof t.message=="string"?ai(t.message):t.message,n=ii(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 jsxRuntime.jsx("div",{className:"my-0.5",children:jsxRuntime.jsx("div",{className:o,children:jsxRuntime.jsxs("div",{className:"flex items-start gap-2",children:[n&&jsxRuntime.jsx("span",{className:"text-[10px] opacity-60 whitespace-nowrap w-16 flex-shrink-0 pt-0.5",children:n}),t.level==="error"&&jsxRuntime.jsx("span",{className:"inline-block mr-1 flex-shrink-0",children:jsxRuntime.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",className:`h-3 w-3 ${r}`,viewBox:"0 0 20 20",fill:"currentColor",children:jsxRuntime.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"&&jsxRuntime.jsx("span",{className:"inline-block mr-1 flex-shrink-0",children:jsxRuntime.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",className:`h-3 w-3 ${r}`,viewBox:"0 0 20 20",fill:"currentColor",children:jsxRuntime.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"&&jsxRuntime.jsx("span",{className:"inline-block mr-1 flex-shrink-0",children:jsxRuntime.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",className:`h-3 w-3 ${r}`,viewBox:"0 0 20 20",fill:"currentColor",children:jsxRuntime.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"})})}),jsxRuntime.jsx("div",{className:"flex-1 break-words whitespace-pre-wrap",children:String(e)})]})})})}function ze({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 jsxRuntime.jsx("div",{className:e,children:jsxRuntime.jsx(er,{log:o})})}function ui(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 He({item:t,className:e}){let n=ui(t.content);return n?.results?.length?jsxRuntime.jsx("div",{className:`rounded-lg border border-border/50 overflow-hidden ${e||""}`,children:jsxRuntime.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 jsxRuntime.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:[jsxRuntime.jsxs("div",{className:"flex-1 min-w-0",children:[jsxRuntime.jsx("div",{className:"text-sm text-foreground/90 group-hover:text-foreground group-hover:underline truncate",children:o.title}),o.description&&jsxRuntime.jsx("div",{className:"text-xs text-muted-foreground mt-0.5 line-clamp-1",children:o.description})]}),jsxRuntime.jsxs("div",{className:"flex items-center gap-1 shrink-0 mt-0.5",children:[jsxRuntime.jsx("span",{className:"text-[10px] text-muted-foreground/60",children:r}),jsxRuntime.jsx(lucideReact.ExternalLink,{className:"h-3 w-3 text-muted-foreground/40 group-hover:text-muted-foreground"})]})]},o.url)})})}):null}function pi(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 mi(t){if(!t||typeof t!="object")return null;let n=t.input;return typeof n?.url=="string"?n.url:null}function Ke({item:t,className:e}){let n=pi(t.content),o=mi(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:jsxRuntime.jsxs("div",{className:`rounded-lg border border-border/50 overflow-hidden ${e||""}`,children:[r&&jsxRuntime.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:[jsxRuntime.jsxs("div",{className:"flex-1 min-w-0",children:[jsxRuntime.jsx("div",{className:"text-sm text-foreground/90 group-hover:text-foreground truncate",children:s?.trim()||i||r}),s&&i&&jsxRuntime.jsx("div",{className:"text-[10px] text-muted-foreground/60 mt-0.5",children:i})]}),jsxRuntime.jsx(lucideReact.ExternalLink,{className:"h-3.5 w-3.5 shrink-0 text-muted-foreground/40 group-hover:text-muted-foreground"})]}),a&&jsxRuntime.jsx("div",{className:"max-h-64 overflow-y-auto px-3 py-2 bg-muted/20",children:jsxRuntime.jsx(D,{content:a,className:"text-xs"})})]})}var wi=reactSyntaxHighlighter.Prism,bt=yt.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]=yt.useState(o),[u,p]=yt.useState(false),d=yt.useRef(null);yt.useEffect(()=>{if(!c){let y=d.current;y&&(y.scrollTop=y.scrollHeight);}},[c,n]);let m=yt.useMemo(()=>i!=="auto"?i:typeof window>"u"?"light":document.documentElement.classList.contains("dark")||window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light",[i]),g=yt.useMemo(()=>m==="dark"?prism.oneDark:prism.oneLight,[m]),f=yt.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]),k=yt.useMemo(()=>({margin:0,width:"100%",background:"transparent",padding:"1rem 0.5rem",fontSize:"0.825rem",maxWidth:"100vw",overflow:"auto"}),[]),b=yt.useMemo(()=>({userSelect:"none",minWidth:"2.5em",paddingRight:"1em",color:"rgb(161 161 170)",opacity:"0.5"}),[]),x=yt.useMemo(()=>({style:{fontFamily:"var(--font-mono, ui-monospace, monospace)",whiteSpace:"pre",wordBreak:"break-word"}}),[]);return jsxRuntime.jsx(oe__namespace.Root,{open:c,onOpenChange:l,className:a,children:jsxRuntime.jsxs("div",{className:"relative w-full font-sans rounded-lg overflow-hidden border border-zinc-200 dark:border-zinc-800",children:[jsxRuntime.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:[jsxRuntime.jsx("span",{className:"text-xs font-medium lowercase text-zinc-400 dark:text-zinc-500",children:e}),jsxRuntime.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?jsxRuntime.jsx(lucideReact.Check,{className:"h-3 w-3 text-green-500"}):jsxRuntime.jsx(lucideReact.Copy,{className:"h-3 w-3 text-zinc-400 dark:text-zinc-500"})})]}),jsxRuntime.jsxs("div",{ref:d,className:`${c?"max-h-96":"max-h-[200px]"} overflow-auto relative`,children:[jsxRuntime.jsx("div",{className:"bg-zinc-50/50 dark:bg-zinc-950/70",children:jsxRuntime.jsx(wi,{language:e,style:g,PreTag:"div",showLineNumbers:true,wrapLines:false,wrapLongLines:false,startingLineNumber:1,className:"not-prose",customStyle:k,lineNumberStyle:b,codeTagProps:x,children:n})}),!c&&jsxRuntime.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"}})]}),jsxRuntime.jsx(oe__namespace.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?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(lucideReact.ChevronUp,{className:"h-4 w-4"}),s]}):jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(lucideReact.ChevronDown,{className:"h-4 w-4"}),r]})})]})})});function Ii(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 Ni(t){return Ii(t.content)}function Ze({item:t,className:e}){let n=Ni(t);if(!n)return null;let{thinking:o,sql_query:r,error:s}=n;return s?jsxRuntime.jsxs("div",{className:`text-destructive text-sm ${e||""}`,children:[jsxRuntime.jsx("div",{className:"font-medium",children:"Error"}),jsxRuntime.jsx("div",{children:s})]}):!r&&!o?null:jsxRuntime.jsxs("div",{className:`text-foreground whitespace-pre-wrap leading-normal ${e||""}`,children:[o&&jsxRuntime.jsx("div",{className:"mb-2",children:jsxRuntime.jsx(D,{content:o,className:"text-sm max-w-none"})}),r&&jsxRuntime.jsx("div",{className:"mb-2",children:jsxRuntime.jsx(bt,{language:"sql",value:r,defaultOpen:false})})]})}var Ti=500,Di=300;function Ye({content:t,className:e}){let[n,o]=yt.useState(false);if(!t||typeof t!="string"||!t.trim())return null;if(t.length<=Ti)return jsxRuntime.jsx("div",{className:`text-sm text-muted-foreground ${e||""}`,children:jsxRuntime.jsx(D,{content:t,className:"text-sm max-w-none"})});let s=t.slice(0,Di).trimEnd()+"...";return jsxRuntime.jsx("div",{className:`text-sm text-muted-foreground ${e||""}`,children:n?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(D,{content:t,className:"text-sm max-w-none"}),jsxRuntime.jsx("button",{onClick:()=>o(false),className:"text-xs text-muted-foreground/70 hover:text-muted-foreground mt-1",children:"Show less"})]}):jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx("span",{className:"text-sm",children:s}),jsxRuntime.jsx("button",{onClick:()=>o(true),className:"text-xs text-muted-foreground/70 hover:text-muted-foreground ml-1",children:"Show more"})]})})}function Ct({children:t,defaultOpen:e=false,wrapperType:n="standard",compact:o=false,className:r}){let[s,a]=yt.useState(e),[i,c]=yt.useState(false),l=yt.useRef(null);yt.useEffect(()=>{let d=l.current;d&&(s||(d.scrollTop=d.scrollHeight),c(d.scrollHeight>d.clientHeight));},[s,t]);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 jsxRuntime.jsx("div",{className:`relative text-sm ${o?"":"mb-2"} ${r||""}`,children:jsxRuntime.jsx(oe__namespace.Root,{open:s,onOpenChange:a,className:`border rounded-sm ${u[n]}`,children:jsxRuntime.jsxs("div",{ref:l,className:`overflow-y-auto ${s?"":"max-h-[200px]"}`,children:[i&&jsxRuntime.jsx(oe__namespace.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"}),jsxRuntime.jsx("div",{className:`${o?"px-2 py-1":"p-2"} m-0 overflow-x-auto break-words whitespace-pre-wrap`,children:t})]})})})}function or(t){return new Date(t).toLocaleTimeString("en-US",{hour12:false,hour:"2-digit",minute:"2-digit",second:"2-digit"})}function ee({children:t,timestamp:e}){return jsxRuntime.jsxs("div",{className:"flex",children:[e&&jsxRuntime.jsx("span",{className:"text-muted-foreground/60 mr-2 select-none",children:or(e)}),jsxRuntime.jsx("span",{className:"text-foreground/80",children:t})]})}function ne({children:t,timestamp:e}){return jsxRuntime.jsxs("div",{className:"flex",children:[e&&jsxRuntime.jsx("span",{className:"text-info/60 mr-2 select-none",children:or(e)}),jsxRuntime.jsx("span",{className:"text-info/90",children:t})]})}function tn({children:t,timestamp:e}){return jsxRuntime.jsxs("div",{className:"flex",children:[e&&jsxRuntime.jsx("span",{className:"text-warning/60 mr-2 select-none",children:or(e)}),jsxRuntime.jsx("span",{className:"text-warning/90",children:t})]})}function nn({item:t,className:e}){if(!t.content)return null;let n=Pi(t.content)??Bi(t.parsedJson);if(!n)return null;let{step_by_step:o,thinking:r,code:s,warnings:a,error:i}=n;return i?jsxRuntime.jsx(Ct,{wrapperType:"info",className:e,children:jsxRuntime.jsx(ne,{children:i})}):!o&&!r&&!s&&!a?null:jsxRuntime.jsxs("div",{className:`text-foreground whitespace-pre-wrap leading-normal ${e||""}`,children:[o&&jsxRuntime.jsx(D,{content:o,className:"text-sm max-w-none"}),r&&jsxRuntime.jsx(Ye,{content:r,state:typeof t.state=="string"?t.state:void 0}),s&&jsxRuntime.jsx("div",{className:"mb-2",children:jsxRuntime.jsx(bt,{language:"python",value:s,defaultOpen:false})}),a&&jsxRuntime.jsxs("div",{className:"text-sm text-warning",children:[jsxRuntime.jsx("div",{className:"font-medium",children:"Warnings"}),jsxRuntime.jsx(D,{content:a,className:"text-sm max-w-none"})]})]})}function Pi(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)?t:null}function Bi(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 on({item:t,className:e}){let n=Mi(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 jsxRuntime.jsx("div",{className:`text-foreground leading-normal ${e||""}`,children:jsxRuntime.jsx(Ct,{wrapperType:s,compact:true,children:n.map((a,i)=>jsxRuntime.jsx(Oi,{output:a},`${a.level}-${i}`))})})}function Oi({output:t}){switch(t.level){case "output":return jsxRuntime.jsx(ee,{timestamp:t.timestamp,children:t.message});case "error":return jsxRuntime.jsx(ne,{timestamp:t.timestamp,children:t.message});case "warning":return jsxRuntime.jsx(tn,{timestamp:t.timestamp,children:t.message});default:return jsxRuntime.jsx("div",{className:"text-muted-foreground",children:t.message})}}function Mi(t){let e=ko(t.content);return e.length>0?e:ko(t.parsedJson)}function ko(t){return rn(t).map((n,o)=>Vi(n,o)).filter(n=>n!==null)}function rn(t){if(Array.isArray(t))return t.every(Li)?t.flatMap(e=>rn(e.content)):t;if(typeof t=="string"){let e=L(t);return e!=null?rn(e):rn(gt(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 Vi(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 Li(t){return !!(t&&typeof t=="object"&&"type"in t&&"content"in t)}function ji(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 Fi(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 re({toolGroup:t,ContentComponent:e,className:n,fallbackClassName:o}){let[r,s]=yt.useState(false),a=H(),i=e??a?.ContentComponent;yt.useEffect(()=>{We();},[]);let c=t.invocation,l=t.result,u=ji(l),p=c?.name||l?.name,d=Fi(p,l,c),m=!l,g=u&&!m;return jsxRuntime.jsxs("div",{className:n,children:[jsxRuntime.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&&jsxRuntime.jsx("div",{className:"mt-1",children:i?jsxRuntime.jsx(i,{content:{content:l.result,content_type:l.ui_content_type||"json"}}):jsxRuntime.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 Ot={Success:"success",Error:"error",RequiresInfo:"requires info"};function zi(t){return t?t===Ot.Success?"finished":t===Ot.Error||t===Ot.RequiresInfo?"failed":"loading":"loading"}function _o(t){return t?t!==Ot.Success&&t!==Ot.Error&&t!==Ot.RequiresInfo:true}function Hi(t,e){let n=e||"agent",o=B(t?.message);return o||(t?.status===Ot.Success?`Finished ${n}`:`Running ${n}...`)}function an({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:_o(e?.currentStatus?.status),[m,g]=yt.useState(d),[f,k]=yt.useState(false),b=yt.useRef(null);if(yt.useEffect(()=>{if(e?.currentStatus){let v=e.currentStatus.status;if(b.current!==v&&(b.current=v,!f)){let I=_o(v);I&&!m?g(true):!I&&m&&g(false);}}},[e,f,m]),yt.useEffect(()=>{m&&e&&c&&c(t.invocation_id,t.bot_id,t.bot_name);},[m,e,c,t]),n&&!e&&!t.transparent)return jsxRuntime.jsxs("div",{className:`flex items-center gap-2 text-sm text-muted-foreground ${p||""}`,children:[jsxRuntime.jsx(ft,{status:"loading"}),jsxRuntime.jsxs("span",{children:["Loading ",t.bot_name,"..."]})]});if(!e)return null;let x=e.eventsByID&&Object.keys(e.eventsByID).length>0;if(t.transparent)return x?l?jsxRuntime.jsx(l,{eventsByID:e.eventsByID,defaultOpen:true}):jsxRuntime.jsx(Dt,{eventsByID:e.eventsByID,ContentComponent:u}):null;let y=zi(e.currentStatus?.status),h=Hi(e.currentStatus,t.bot_name),S=v=>{g(v),k(true);},_=v=>{i&&(v.preventDefault(),i(t.invocation_id,t.bot_id));};return jsxRuntime.jsxs(oe__namespace.Root,{open:m,onOpenChange:S,className:`relative w-full max-w-4xl space-y-2 leading-normal bot-invocation-content ${p||""}`,children:[jsxRuntime.jsxs("div",{className:"flex items-center justify-between",children:[jsxRuntime.jsxs(oe__namespace.Trigger,{className:"flex items-center gap-2 text-sm text-muted-foreground hover:text-foreground transition-colors cursor-pointer",children:[jsxRuntime.jsxs("div",{className:"text-sm font-medium flex items-center gap-2",children:[jsxRuntime.jsx(ft,{status:y}),h]}),jsxRuntime.jsx(lucideReact.ChevronDown,{className:`h-4 w-4 transition-transform duration-200 ${m?"transform rotate-180":""}`})]}),a&&(r||i)&&jsxRuntime.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,jsxRuntime.jsx(lucideReact.ArrowUpRight,{className:"h-3.5 w-3.5"})]})]}),jsxRuntime.jsx(oe__namespace.Content,{children:jsxRuntime.jsx("div",{className:"space-y-2 max-w-3xl",children:x?l?jsxRuntime.jsx(l,{eventsByID:e.eventsByID,defaultOpen:m}):jsxRuntime.jsx(Dt,{eventsByID:e.eventsByID,ContentComponent:u}):jsxRuntime.jsx("span",{className:"text-sm text-muted-foreground",children:"No events to display"})})})]})}function So({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:jsxRuntime.jsx("div",{className:`flex flex-wrap gap-2 ${n||""}`,children:r.map(s=>jsxRuntime.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?jsxRuntime.jsx(lucideReact.Loader2,{className:"h-3 w-3 mr-2 text-muted-foreground flex-shrink-0 animate-spin"}):jsxRuntime.jsx(lucideReact.Search,{className:"h-3 w-3 mr-2 text-muted-foreground flex-shrink-0"}),jsxRuntime.jsx("span",{className:"line-clamp-1",children:s})]},s))})}function vo({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:jsxRuntime.jsx("div",{className:`flex flex-wrap gap-2 ${n||""}`,children:r.map(s=>jsxRuntime.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?jsxRuntime.jsx(lucideReact.Loader2,{className:"h-3 w-3 mr-2 text-muted-foreground flex-shrink-0 animate-spin"}):jsxRuntime.jsx(lucideReact.Search,{className:"h-3 w-3 mr-2 text-muted-foreground flex-shrink-0"}),jsxRuntime.jsx("span",{className:"line-clamp-1",children:s.query})]},`${s.integration_config_id}-${s.resource_id}-${s.query}`))})}var il=120;function ll(t,e){return !t||t.length<=e?t:t.slice(0,e).trimEnd()+"..."}function cl(t){switch(t){case "snippet":return lucideReact.Code;case "learning":return lucideReact.Brain;case "error":return lucideReact.AlertCircle;case "limitation":return lucideReact.AlertCircle;case "optimization":return lucideReact.Zap;default:return lucideReact.Lightbulb}}function ul(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 dl({memory:t}){let[e,n]=yt.useState(false),o=cl(t.type),r=ul(t.type),s=t.type==="snippet",a=ll(t.description||"",il),i=t.content&&typeof t.content=="string"&&t.content.trim()!=="",c=s&&i;return jsxRuntime.jsxs(oe__namespace.Root,{open:e,onOpenChange:n,className:"border border-border/50 rounded-lg overflow-hidden",children:[jsxRuntime.jsxs(oe__namespace.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:[jsxRuntime.jsx("div",{className:"flex-shrink-0 mt-0.5",children:jsxRuntime.jsx(o,{className:"h-4 w-4 text-muted-foreground"})}),jsxRuntime.jsxs("div",{className:"flex-1 min-w-0",children:[jsxRuntime.jsxs("div",{className:"flex items-center gap-2 mb-1",children:[jsxRuntime.jsx("span",{className:"text-xs font-medium text-muted-foreground uppercase tracking-wide",children:r}),t.tags&&t.tags.length>0&&jsxRuntime.jsxs("div",{className:"flex gap-1 flex-wrap",children:[t.tags.slice(0,3).map((l,u)=>jsxRuntime.jsx("span",{className:"text-xs px-1.5 py-0.5 bg-muted rounded text-muted-foreground",children:l},u)),t.tags.length>3&&jsxRuntime.jsxs("span",{className:"text-xs text-muted-foreground",children:["+",t.tags.length-3]})]})]}),jsxRuntime.jsx("p",{className:"text-sm text-foreground",children:s?a:t.description||t.content})]}),c&&jsxRuntime.jsx(lucideReact.ChevronDown,{className:`h-4 w-4 text-muted-foreground flex-shrink-0 transition-transform duration-200 ${e?"rotate-180":""}`})]}),c&&jsxRuntime.jsx(oe__namespace.Content,{children:jsxRuntime.jsx("div",{className:"border-t border-border/50 bg-muted/30",children:jsxRuntime.jsx("pre",{className:"p-3 text-sm overflow-x-auto whitespace-pre-wrap break-words font-mono",children:t.content})})})]})}function un({content:t,className:e}){let n=Array.isArray(t)?t:t?.memories;return !n||n.length===0?jsxRuntime.jsx("p",{className:"text-sm text-muted-foreground",children:"No memories found."}):jsxRuntime.jsx("div",{className:`space-y-2 ${e||""}`,children:n.map(o=>jsxRuntime.jsx(dl,{memory:o},o.id))})}function sr(){return jsxRuntime.jsxs("span",{className:"inline-flex gap-1 text-muted-foreground",children:[jsxRuntime.jsx("span",{className:"animate-bounce",style:{animationDelay:"0ms"},children:"\u25CF"}),jsxRuntime.jsx("span",{className:"animate-bounce",style:{animationDelay:"150ms"},children:"\u25CF"}),jsxRuntime.jsx("span",{className:"animate-bounce",style:{animationDelay:"300ms"},children:"\u25CF"})]})}function To(){return jsxRuntime.jsx("div",{className:"flex items-center justify-center py-8",children:jsxRuntime.jsx(lucideReact.Loader2,{className:"animate-spin text-muted-foreground",size:24})})}function gl(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 Mt({content:t,className:e,components:n}){let r=H()?.onSuggestionClick,s=yt.useMemo(()=>l=>jsxRuntime.jsx(Mt,{...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=gl(t),i;a?i=a:i=B(t.ui_content_type)||t.content_type;let c=n?.[i];if(c)return jsxRuntime.jsx(c,{content:t,className:e});switch(i){case "text":return jsxRuntime.jsx(he,{content:Io(t),className:e});case "markdown":return jsxRuntime.jsx(D,{content:Io(t),className:e});case "thinking":case "redacted_thinking":return jsxRuntime.jsx(qe,{item:t,className:e});case "json":return jsxRuntime.jsx(xt,{content:t.content,className:e});case "codegen_json":return jsxRuntime.jsx(nn,{item:t,className:e});case "sql_generation":return jsxRuntime.jsx(Ze,{item:t,className:e});case "codeexec_output":return jsxRuntime.jsx(on,{item:t,className:e});case "log":return jsxRuntime.jsx(ze,{item:t,className:e});case "websearch":case "websearch_output":case "web_search":return jsxRuntime.jsx(He,{item:t,className:e});case "search_queries":return jsxRuntime.jsx(So,{content:t.content,className:e});case "integration_queries":return jsxRuntime.jsx(vo,{content:t.content,className:e});case "memory":return jsxRuntime.jsx(un,{content:t.content,className:e});case "webparse":case "webparse_output":case "web_parse":return jsxRuntime.jsx(Ke,{item:t,className:e});case "tool_group":return jsxRuntime.jsx(re,{toolGroup:t.content,ContentComponent:s,className:e});case "bot_invocation":{let l=t.content,u=t.botInvocation;return jsxRuntime.jsx(an,{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 jsxRuntime.jsx(Je,{config:t.chartConfig,data:t.chartData,className:e});let u=_e(t.content);if(u&&No(u))return Eo(u,e,l,r);let p=_e(t.parsedJson);return p&&No(p)?Eo(p,e,l,r):jsxRuntime.jsx("p",{className:"w-full max-w-4xl text-sm text-muted-foreground",children:"The LLM generated an invalid response. Please try again."})}case "table":return t.tableColumns&&t.tableData?jsxRuntime.jsx(Ge,{columns:t.tableColumns,data:t.tableData,className:e}):jsxRuntime.jsx(xt,{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 jsxRuntime.jsx(re,{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||B(t.ui_content_type),running_message:l.running_message||l.running_status,finished_message:l.finished_message||l.finished_status}};return jsxRuntime.jsx(re,{toolGroup:p,ContentComponent:s,className:e})}default:return typeof t.content=="string"?jsxRuntime.jsx(he,{content:t.content,className:e}):null}}function Io(t){return typeof t.content=="string"?t.content:""}function No(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;return !!Do(n)||Kt(n)}return false})}function Do(t){let e=t?.children??t?.blocks;return Array.isArray(e)?e:void 0}function _e(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=gt(t);return _e(e)}return null}function Eo(t,e,n,o){return jsxRuntime.jsx(jsxRuntime.Fragment,{children:t.map((r,s)=>{if(r.type==="text"){let a=typeof r.content=="string"?r.content:String(r.content);return jsxRuntime.jsx(D,{content:a,className:e},`${s}-${a.length}`)}if(r.type==="json"){let a=r.content,i=Do(a);return i?jsxRuntime.jsx(yt__namespace.default.Fragment,{children:jsxRuntime.jsx(Yt,{nodes:i,className:e,invocationId:n,onSuggestionClick:o})},`${s}-${i.length}`):Kt(a)?jsxRuntime.jsx(sr,{},s):null}return null})})}function xl({result:t,isStreaming:e,className:n,components:o,streamingText:r}){let s=t?Ro(t):[];return r&&s.length===0?jsxRuntime.jsxs("div",{className:n?`erdo-ui ${n}`:"erdo-ui space-y-4",children:[jsxRuntime.jsxs("div",{className:"flex items-center gap-2",children:[jsxRuntime.jsx("div",{className:"animate-pulse w-2 h-2 bg-blue-500 rounded-full"}),jsxRuntime.jsx("span",{className:"text-sm text-gray-500",children:"Streaming response..."})]}),jsxRuntime.jsx("div",{className:"border rounded-lg p-4 whitespace-pre-wrap",children:r})]}):s.length===0&&!e?null:jsxRuntime.jsxs("div",{className:n?`erdo-ui ${n}`:"erdo-ui space-y-4",children:[s.map((a,i)=>jsxRuntime.jsx("div",{children:jsxRuntime.jsx(Mt,{content:a,components:o})},a.id||i)),e&&s.length===0&&!r&&jsxRuntime.jsxs("div",{className:"flex items-center gap-2",children:[jsxRuntime.jsx("div",{className:"animate-pulse w-2 h-2 bg-blue-500 rounded-full"}),jsxRuntime.jsx("span",{className:"text-sm text-gray-500",children:"Processing..."})]})]})}function Ro(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 kl(t){if(t.length===0)return t;let e=[];for(let n=0;n<t.length;n++){let o=t[n],r=n>0?t[n-1]:null,s=n<t.length-1?t[n+1]:null;if(o.type==="text"&&typeof o.content=="string"){let a=o.content,i=false;if(s?.type==="json"){let c=a;a=a.replace(/```(?:json)?\s*$/,""),c!==a&&(i=true);}if(r?.type==="json"){let c=a;a=a.replace(/^\s*```/,""),c!==a&&(i=true);}(!i||a.trim())&&e.push({...o,content:a});}else e.push(o);}return e}var bl=new Set(["=","("]);function Cl(t){if(!t||t.length===0)return true;let e=t[t.length-1];return !bl.has(e)}function ar(t,e){if(t.user_visibility!=="visible"||!ye(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.map((u,p,d)=>p===d.length-1?{...u}:u):[],o=t.content||"",r=t._isInJson??false,s=t._charBuffer??"",a=t._jsonParser,i=n.length>0&&t._currentContent?n.length-1:-1;if(typeof e=="object")return {...t,content:o+JSON.stringify(e),parsedJson:[...n,e],_isInJson:r,_charBuffer:s,_jsonParser:a,_currentContent:void 0};for(let u of e){if(o+=u,!r&&u==="{"){let p=o.slice(0,-1);if(Cl(p)){s="{";continue}}if(s&&Rt(u)){s+=u;continue}if(!r&&s?.match(/^\s*{\s*$/)&&u==='"'){r=true,a=new tt;let d={content:a.add("{"),type:"json"},m=i>=0?n[i]:null;if(!m?.content)n=[...n,d],i=n.length-1;else if(typeof m.content=="string"&&m.content.match(/^\s*{$/))n=[...n.slice(0,-1),d],i=n.length-1;else {if(typeof m.content=="string"){let g={...m,content:m.content.replace(/{$/,"")};n=[...n.slice(0,-1),g,d];}else n=[...n,d];i=n.length-1;}}if(r)try{let d={type:"json",content:a.add(u)};n=[...n.slice(0,i),d],a.state==="END"&&(r=!1,i=-1);}catch(p){if(console.log("handleIncrementalMixedJsonParsing: content chunk",e),console.log("handleIncrementalMixedJsonParsing: accumulated content",o),console.warn("handleIncrementalMixedJsonParsing: JSON parse error, recovering as text",p),r=false,a=void 0,n.length>0&&i>=0&&n[i].type==="json"){let m=o.lastIndexOf("{"),f={type:"text",content:o.slice(m)};n=[...n.slice(0,i),f];}continue}else if(i<0||n[i]?.type!=="text"){let p={content:s+u,type:"text"};n=[...n,p],i=n.length-1;}else {let d={type:"text",content:n[i].content+s+u};n=[...n.slice(0,i),d];}s="";}let c=i>=0?n[i]:void 0,l=kl(n);return {...t,content:o,parsedJson:l,_isInJson:r,_charBuffer:s,_jsonParser:a,_currentContent:c}}function Se(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function _l(t){if(!Se(t)||!("content"in t))return t;let e=t.content;return e===void 0?t:e}function ie(t,e){let n=_l(e);if((t==="thinking"||t==="redacted_thinking")&&typeof n=="string"){let o=L(n);return Se(o)?{content:o}:{content:n}}if(t==="json"&&typeof n=="string"){let o;try{let s=gt(n);Array.isArray(s)&&(o=s);}catch{}let r=L(n);return r!=null?{content:r,parsedJson:o}:{content:n,parsedJson:o}}return {content:n}}function Sl(t,e){return typeof e=="string"?e:Se(e)?t==="redacted_thinking"?typeof e.data=="string"?e.data:"":typeof e.thinking=="string"?e.thinking:"":""}function pn(t,e,n){let o=ie(t,n);if(t!=="thinking"&&t!=="redacted_thinking")return o;let r=Sl(t,e);return r?t==="redacted_thinking"?Se(o.content)&&typeof o.content.data!="string"?{...o,content:{...o.content,data:r}}:o:Se(o.content)&&typeof o.content.thinking!="string"?{...o,content:{...o.content,thinking:r}}:o:o}function mn(t){let e=t.metadata?.step_id??t.payload?.step_id;return typeof e=="string"?e:""}function ir(t){let e=t.metadata?.message_content_id??t.payload?.message_content_id;return typeof e=="string"?e:""}function vl(t){let e=t.metadata?.message_id;return typeof e=="string"?e:""}function lr(t,e){if(e.metadata?.content_type==="agent_invocation")return true;let n=vl(e);return !!(n&&n!==t.messageId)}function wl(t){return typeof t=="string"?t:typeof t=="object"&&t!==null&&"content"in t?String(t.content??""):""}function fn(){return {nodes:[],byStepId:{},byContentId:{},childrenByParentId:{},rootStepId:null,messageId:null,isStreaming:false}}function cr(t,e){switch(e.type){case "message created":return Il(t,e);case "message finished":return Ao(t);case "step_started":return Nl(t,e);case "step_finished":return El(t,e);case "create message content":return Tl(t,e);case "message content delta":return Dl(t,e);case "message content result":return Rl(t,e);case "status":return Pl(t,e);default:return t}}function Il(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 Nl(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 El(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 Tl(t,e){if(lr(t,e))return t;let n=ir(e);if(!n)return t;let o=mn(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 Dl(t,e){if(lr(t,e))return t;let n=ir(e),o=wl(e.payload);if(!n||!o)return t;let r=t.byContentId[n],s=t;if(!r){let u=mn(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=Ml(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 Rl(t,e){if(lr(t,e))return t;let n=ir(e);if(!n)return t;let o=mn(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?pn(r,a.result??a.text,e.payload):ie(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 Ao(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 Al(t){let e=t.payload;return typeof e=="string"?e:e?.message||e?.status_message||e?.status||""}function Pl(t,e){let n=mn(e)||null,o=Al(e);if(!o)return t;if(n){let s=t.byStepId[n];return s?Bl(t,s,n,o):Ol(t,n,o)}let r={kind:"status",stepId:null,message:o};return {...t,nodes:[...t.nodes,r]}}function Bl(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 Ol(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 Ml(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?[...t.parsedContent]:[],_jsonParser:n._jsonParser,_isInJson:n._isInJson,_charBuffer:n._charBuffer??"",_currentContent:n._currentContent},r=ar(o,e);return {parsedContent:r.parsedJson,_parserFields:{_rawText:r.content,_jsonParser:r._jsonParser,_isInJson:r._isInJson,_charBuffer:r._charBuffer,_currentContent:r._currentContent}}}function Vl(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 gn(t,e,n){return e.type!=="llm_call"?false:!(e.parentId===t.rootStepId)&&n.contentType==="text"}function yn(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"?Ll(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"&&gn(t,i,a)||r(a));}return e}function Ll(t){return t?L(t):null}function Gl(t){return (t.status==="completed"||t.status==="error")&&t.finishedStatus?t.finishedStatus:t.runningStatus?t.runningStatus:t.name.replace(/_/g," ")}function Wl(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 Hl(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=L(c);if(l!=null)return typeof l=="string"?L(l)??l:l}return null}function Po(t,e){let n=[],o="",r=[],s=0;function a(){r.length>0&&(n.push({id:`${e}-exec-${s}`,type:"codeexec",content:r.join(`
51
- `),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 Bo(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:"content",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=L(r.result);if(c!=null)i=c;else {let l=Hl(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(...Po(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(...Po(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 Kl(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"&&gn(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 k(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=k(y);if(!S){n.push(...h);return}let _=o[S];if(!_){p(S).push(...h);return}_.children||(_.children=[]),_.children.push(...h);}function x(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:Gl(_),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(...Bo([h],"root",e));continue}let S=t.byStepId[h.stepId];if(S&&!g(S)&&!(S.type==="llm_call"&&gn(t,S,h))){if(S.type==="tool_call"&&h.contentType==="tool_result"){if(f(S.id))continue;b(S.id,x(S.id,h.id,h.result));continue}b(S.id,Bo([h],S.id,e));}}return n}function Oo({node:t,ContentComponent:e}){let[n,o]=yt.useState(t.status==="running"),r=yt.useRef(t.status==="running");if(yt.useEffect(()=>{r.current&&t.status!=="running"&&o(false),r.current=t.status==="running";},[t.status]),t.type==="text")return jsxRuntime.jsx(D,{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 jsxRuntime.jsxs("div",{className:"space-y-2",children:[c&&jsxRuntime.jsx(D,{content:c,className:"text-sm max-w-none"}),l&&jsxRuntime.jsx(Ye,{content:l,state:t.status==="running"?"in_progress":"completed"}),i&&jsxRuntime.jsx(bt,{language:"python",value:i,defaultOpen:false})]})}if(t.type==="codeexec"&&t.content){let i=t.wrapperType||"standard";return jsxRuntime.jsx(Ct,{wrapperType:i,compact:true,children:jsxRuntime.jsx(ee,{children:t.content})})}if(t.type==="content"&&t.contentItem&&e)return jsxRuntime.jsx(e,{content:t.contentItem});if(t.type==="content"&&t.contentItem)return jsxRuntime.jsx(Mt,{content:t.contentItem});let s=!!t.children?.length,a=t.status==="running"?"text-foreground":"text-muted-foreground";return jsxRuntime.jsxs(oe__namespace.Root,{open:n,onOpenChange:o,className:"w-full",children:[jsxRuntime.jsxs(oe__namespace.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:[jsxRuntime.jsxs("div",{className:"flex items-center gap-2",children:[jsxRuntime.jsx(ft,{status:Wl(t.status),size:14}),jsxRuntime.jsx("span",{children:t.label})]}),s&&jsxRuntime.jsx(lucideReact.ChevronDown,{className:`h-4 w-4 shrink-0 text-muted-foreground/50 transition-transform duration-200 ${n?"rotate-180":""}`})]}),s&&jsxRuntime.jsx(oe__namespace.Content,{children:jsxRuntime.jsx("div",{className:"ml-5 mt-1 flex flex-col gap-1",children:t.children?.map(i=>jsxRuntime.jsx(Oo,{node:i,ContentComponent:e},i.id))})})]})}function Mo({agentState:t,ContentComponent:e,className:n}){if(!t.rootStepId)return null;let o=yt.useMemo(()=>Kl(t,e),[t,e]);return o.length===0?null:jsxRuntime.jsx("div",{className:`flex flex-col gap-1 ${n||""}`,children:o.map(r=>jsxRuntime.jsx(Oo,{node:r,ContentComponent:e},r.id))})}function xn(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 Ql(t){return xn(t)!==void 0}var Vo=new Set(["erdo_ask_data_question","erdo_query_data"]);function ur(t){return Vo.has(t)}function Lo({part:t,className:e,invocationId:n,onSuggestionClick:o}){let r=xn(t);if(!r)return null;if(["partial-call","call","input-streaming","input-available"].includes(t.state))return jsxRuntime.jsxs("div",{className:e||"flex items-center gap-2 py-4 text-muted-foreground",children:[jsxRuntime.jsx(lucideReact.Loader2,{className:"h-4 w-4 animate-spin"}),jsxRuntime.jsxs("span",{className:"text-sm",children:["Running ",Xl(r),"..."]})]});if(t.state==="result"||t.state==="output-available"){let a=t.output??t.result;if(t.errorText)return jsxRuntime.jsxs("div",{className:e||"flex items-center gap-2 py-2 text-sm text-destructive",children:[jsxRuntime.jsx(lucideReact.AlertCircle,{className:"h-4 w-4 shrink-0"}),jsxRuntime.jsx("span",{children:t.errorText})]});if(a&&typeof a=="object"&&"error"in a&&a.error)return jsxRuntime.jsxs("div",{className:e||"flex items-center gap-2 py-2 text-sm text-destructive",children:[jsxRuntime.jsx(lucideReact.AlertCircle,{className:"h-4 w-4 shrink-0"}),jsxRuntime.jsx("span",{children:String(a.error)})]});if(ur(r))return Yl(a,e,n,o);if(a!=null)return jsxRuntime.jsx("div",{className:e,children:jsxRuntime.jsx(xt,{content:a})})}return t.state==="output-error"?jsxRuntime.jsxs("div",{className:e||"flex items-center gap-2 py-2 text-sm text-destructive",children:[jsxRuntime.jsx(lucideReact.AlertCircle,{className:"h-4 w-4 shrink-0"}),jsxRuntime.jsx("span",{children:t.errorText||"Tool execution failed"})]}):null}function Yl(t,e,n,o){if(!t)return null;let r=t.children;if(r&&Array.isArray(r)&&r.length>0)return jsxRuntime.jsx("div",{className:e,children:jsxRuntime.jsx(Yt,{nodes:r,invocationId:n,onSuggestionClick:o})});let s=t.answer;if(s)return jsxRuntime.jsx("div",{className:e,children:jsxRuntime.jsx(D,{content:s})});let a=t.output;return a?jsxRuntime.jsx("div",{className:e,children:jsxRuntime.jsx(D,{content:a})}):jsxRuntime.jsx("div",{className:e,children:jsxRuntime.jsx(xt,{content:t})})}function Xl(t){return t.replace(/^erdo_/,"").split("_").map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(" ")}function F(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 tc(t){return t.contents.length===0?null:t.contents[t.contents.length-1]||null}function Jo(t){return t.contents.length===0?null:t.contents[0]||null}function $o(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 fr(t,e){let n=F(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 ec(t,e){switch(F(t)){case "message_content":return t;case "output_content":return t;case "message":return ce(t,e);case "output":return ue(t,e);case "step":let o=bn(t,e);return o?ue(o,e):null;default:return null}}function ce(t,e){let n=F(t);switch(n){case "message_content":return t;case "message":let o=fr(t);if(!o)throw new Error("Unable to find message to add content to");return e?o.contentsByID[e]:tc(o);default:throw new Error(`Unable to have message content on entity type ${n}`)}}function ue(t,e){let n=F(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=bn(t,e);return s?ue(s):null;case "invocation":if(!e)return null;let a=t.eventsByID[e];return !a||!a.Output?null:ue(a.Output);default:throw new Error(`Unable to have output content on entity type ${n}`)}}function gr(t,e){let n=F(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=Jo(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 bn(t,e){let n=F(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 Go(t,e){let n=F(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 Wo(t,e){let n=F(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 pr=class extends Error{};function nc(t,e,n){let o=null,r=e[0],s=e[1];n[r]=s;try{switch(r){case "message":o=fr(t,s);break;case "content":o=ce(t,s);break;case "step":o=Wo(t,s);break;case "output":o=bn(t,s);break;case "output_content":o=ue(t,s);break;case "invocation":o=gr(t,s);break;case "result_handler":o=Go(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 pr(`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 rc(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 oc(t,e){let n=t.metadata.content_type||"text",o=t.metadata?.ui_content_type,r=ie(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 sc(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 ac(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 ic(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 Uo(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 jo(t,e,n,o=null){let r=t.metadata.content_type||"text",s=ie(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 lc(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 we(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 yr(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 hr(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 cc(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 uc(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 dc=new Set(["=","("]);function pc(t){if(!t||t.length===0)return true;let e=t[t.length-1];return !dc.has(e)}function Ho(t,e){if(t.content||(t.content=""),t.user_visibility!=="visible"||!ye(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&&!Rt(r)){t._isInJson=true,t._jsonParser=new tt;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(pc(a)){t._charBuffer="{";continue}}if(t._charBuffer&&Rt(r)){t._charBuffer+=r;continue}if(!t._isInJson&&!s&&o==="ui_generation"&&t._charBuffer?.match(/^\s*{\s*$/)&&r==='"'){t._isInJson=true,t._jsonParser=new tt;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 mc(t,e){return Ho(t,e)}function Fo(t,e){return Ho(t,e)}function mr(t,e){let n=F(t);switch(n){case "message":return dt(t,e);case "message_content":return kn(t,e);case "step":return gc(t,e);case "output":return yc(t,e);case "output_content":return hc(t,e);case "invocation":return Ie(t,e);case "result_handler":return xc(t,e);default:throw new Error(`Unable to add update entity for entity type ${n}`)}}function fc(t,e){for(let n of e)t=mr(t,n);return t}function dt(t,e){let n=fr(t);if(!n)throw new Error("Unable to find message to add content to");let o=F(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=kn(n.contents[0],s),dt(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=gr(r);if(!a)throw new Error("Unable to find bot invocation to add content to");return r.botInvocation=Ie(a,e),dt(n,r);case "status":if(n.contents.length>0){let i=n.contents[0];if(i?.botInvocation){let c=kn(i,e);return dt(n,c)}}return {...n};default:throw new Error(`Unable to add update message child for child type ${o}`)}}function kn(t,e){let n=ce(t);if(!n)throw new Error("Unable to find message content to add content to");let o=F(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=Ie(r,e),{...n};case "status":return n.botInvocation&&(n.botInvocation=Ie(n.botInvocation,e)),{...n};default:throw new Error(`Unable to add update message content child for child type ${o}`)}}function gc(t,e){let n=Wo(t);if(!n)throw new Error("Unable to find bot invocation to add step to");let o=F(e),r=null;switch(o){case "output":let s=e;return r=yr(s),n.eventsByID={...n.eventsByID,[s.output.id]:r},{...n};case "message":let a=e;return r=cc(a),n.eventsByID={...n.eventsByID,[a.message.id]:r},{...n};case "status":let i=e;return r=hr(i),n.eventsByID={...n.eventsByID,[i.id]:r},{...n};case "result_handler":let c=e;return r=uc(c),n.eventsByID={...n.eventsByID,[c.id]:r},{...n};default:throw new Error(`Unable to add update step for entity type ${o}`)}}function yc(t,e){let n=bn(t);if(!n)throw new Error("Unable to find step output to add content to");let o=F(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 hc(t,e){let n=ue(t);if(!n)throw new Error("Unable to find step output content to add content to");let o=F(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=Ie(r,e),{...n};default:throw new Error(`Unable to add update step output content for entity type ${o}`)}}function Ie(t,e){let n=gr(t);if(!n)throw new Error("Unable to find bot invocation to add content to");let o=F(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=yr(a),n.eventsByID={...n.eventsByID,[a.output.id]:r},{...n};case "status":let i=e;return r=hr(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 xc(t,e){let n=Go(t);if(!n)throw new Error("Unable to find result handler to add content to");let o=F(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=yr(a),n.eventsByID||(n.eventsByID={}),n.eventsByID={...n.eventsByID,[a.output.id]:r},{...n};case "status":let i=e;return r=hr(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 kc(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 Cn(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]=$o(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&&kc(t)){let p=n[1],d=[],m,g,f,k,b;switch(t){case "bot started":case "bot resumed":if(!s)throw new Error("Unable to find message to add content to");let x=lc(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(k=ce(f,g.id),!k)throw new Error("Unable to find message content to add content to");let _=kn(k,x);r[g.message_id]={...dt(f,_)};}d.push(x);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=rc(e,i),s._type==="output"){m=s,d.push(Uo(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]={...dt(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(jo(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=ce(y,h);if(S){S.state="completed";let _=S.content_type||"text",v=pn(_,S.content,e.payload);S.content=v.content,v.parsedJson&&(S.parsedJson=v.parsedJson),r[f.message.id]={...dt(f,S)},(s._type==="message"||s._type==="message_content")&&d.push(S);}else S=oc(e,i),r[f.message.id]={...dt(f,S)},(s._type==="message"||s._type==="message_content")&&d.push(S);break;case "step started":d.push(sc(e,p,i));break;case "result handler started":d.push(ac(e,p));break;case "step output created":d.push(ic(e,p,s));break;case "create step output content":d.push(Uo(e,p,i));break;case "step output content result":d.push(jo(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]:fc(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=ec(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=Fo(s,e.payload);let x=e.metadata.message_content_id;if(!x)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=ce(g,x);}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 k=mc(m,e.payload);return r[f.message.id]={...dt(f,k)},s._type==="message_content"&&(d=k),d;case "step output content delta":return Fo(p,e.payload);case "status":if(s._type==="step"&&(s.currentStatus=we(e)),s._type==="invocation"&&(s.currentStatus=we(e)),s._type==="message_content"){let b=s;if(b.botInvocation)return b.botInvocation.currentStatus=we(e),{...b}}if(s._type==="message"){let b=s,x=Jo(b);if(x?.botInvocation)return x.botInvocation.currentStatus=we(e),dt(b,x)}return mr(s,we(e));case "result":return null;case "message finished":if(s._type==="message"){let x=$o(s);r[x.message.id]=x;}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=nc(s,n,i),u=Cn(t,e,c,o,r,l,[...a,s],i);return u?mr(s,{...u}):s}function xr(t){if(!t.content)return null;if(typeof t.content=="object")return t.content;if(typeof t.content=="string"){let e=L(t.content);return e&&typeof e=="object"&&!Array.isArray(e)?e:null}return null}function Ko(t){let e=t.content_type;if(e==="tool_result")return "result";if(e==="tool_invocation")return "invocation";let n=xr(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 Qo(t){return xr(t)?.id}function Zo(t){let e=xr(t);if(!e?.action_type)return null;let o=e.input?.query;return `${e.action_type}:${o||""}`}function Yo(t){let e=t.filter(r=>Ko(r)==="result"),n=new Set(e.map(r=>Qo(r)).filter(Boolean)),o=new Set(e.map(r=>Zo(r)).filter(Boolean));return t.filter(r=>{if(Ko(r)==="invocation"){let s=Qo(r),a=Zo(r);if(s&&n.has(s)||a&&o.has(a))return false}return true})}function Xo(t,e,n){let o=e;for(;o;){if(o===n)return true;o=t.byStepId[o]?.parentId??null;}return false}function _n(t,e){if(!e||!t.byStepId[e])return t;let n=new Set;for(let i of t.nodes)i.kind==="step"&&Xo(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 Sn(){return zustand.createStore((t,e)=>({globalState:fn(),invocationStates:{},invocationRootSteps:{},pendingInvocationQueue:[],pushEvent:(n,o)=>{let r=e(),s=cr(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&&!Xo(s,a,u)&&a)continue;let d=_n(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=_n(r.globalState,o);t({invocationRootSteps:{...r.invocationRootSteps,[n]:o},invocationStates:{...r.invocationStates,[n]:s},pendingInvocationQueue:r.pendingInvocationQueue.filter(a=>a!==n)});},reset:()=>{t({globalState:fn(),invocationStates:{},invocationRootSteps:{},pendingInvocationQueue:[]});}}))}function Sc(t){return t.split("/").filter(Boolean)}function ts(t={}){let e=$t(),[n,o]=yt.useState(null),[r,s]=yt.useState(false),[a,i]=yt.useState(null),[c,l]=yt.useState([]),u=yt.useRef(Sn()),p=zustand.useStore(u.current,x=>x.globalState),d=yt.useRef(null),m=yt.useRef(t.threadId);t.threadId!==m.current&&(m.current=t.threadId);let g=yt.useCallback(()=>{d.current&&(d.current.abort(),d.current=null);},[]),f=yt.useCallback(x=>{o(x),m.current=x.id;},[]),k=yt.useCallback(async x=>{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:x,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||"",Z=I.metadata||{},P=Sc(Z.path||""),J={payload:I.payload,metadata:{path:Z.path||"",...Z}};try{Cn(U,J,P,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=yn(_):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:B(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=yt.useMemo(()=>{if(p.rootStepId)return yn(p);let x=c.flatMap(h=>h.contents||[]).filter(h=>h.user_visibility==="visible");return Yo(x).map(h=>({id:h.id,content_type:h.content_type,ui_content_type:B(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:k,cancel:g,setThread:f,agentStreamStore:u.current}}function vc(t){return t?typeof t=="string"?t:typeof t=="object"&&t!==null&&"String"in t&&t.String||"":""}function es(t){let e=vc(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=gt(t.content);}catch(r){console.error("Error parsing UI generation content:",r);}else if((n==="json"||e==="json")&&t.content.trim()){let r=L(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=L(t.content);r&&typeof r=="object"&&(o.content=r);}return o}function wc(t){return t.filter(e=>e.user_visibility!=="hidden").map(es)}var wn=yt.createContext(null);function rs({store:t,children:e}){return jsxRuntime.jsx(wn.Provider,{value:t,children:e})}function os(){return yt.useContext(wn)}function ss(t){let e=yt.useContext(wn);return zustand.useStore(e,n=>t?n.invocationStates[t]:void 0)}function as(){let t=yt.useContext(wn);return zustand.useStore(t,e=>e.globalState)}exports.AgentStreamStoreProvider=rs;exports.BarChart=It;exports.BotInvocationContent=an;exports.Chart=it;exports.ChartContainer=pe;exports.ChartContent=Je;exports.ChartLegend=An;exports.ChartLegendContent=Pn;exports.ChartNode=Hn;exports.ChartStyle=Ir;exports.ChartTooltip=Dn;exports.ChartTooltipContent=Rn;exports.CodeexecContent=on;exports.CodegenContent=nn;exports.CollapsibleCodeBlock=bt;exports.Content=Mt;exports.DatasetChart=Oe;exports.DatasetDownload=Qt;exports.DatasetTable=Me;exports.DownloadButtonNode=Zn;exports.ERDO_UI_TOOLS=Vo;exports.ErdoProvider=Sr;exports.ErdoToolResult=Lo;exports.ErdoUI=xl;exports.ErrorBoundary=St;exports.ExecutionStatus=Hr;exports.ExpandableOutputContent=Ct;exports.FileDownloadsNode=Xn;exports.HeatmapChart=Wt;exports.InvocationEvent=je;exports.InvocationEvents=Dt;exports.InvocationStatus=zr;exports.JSONStreamParser=tt;exports.JsonContent=xt;exports.LineChart=Ft;exports.Loader=To;exports.Log=er;exports.LogContent=ze;exports.MarkdownContent=D;exports.MemoryContent=un;exports.Output=Ve;exports.PieChart=Jt;exports.ScatterChart=Gt;exports.SqlContent=Ze;exports.StatusSpinner=ft;exports.StderrText=ne;exports.StdoutText=ee;exports.StdwarnText=tn;exports.StepInvocation=Ue;exports.StepInvocationStatus=$e;exports.StepTreeContent=Mo;exports.SuggestionsNode=Yn;exports.TableContent=Ge;exports.TableNode=Kn;exports.TextContent=he;exports.TextMarkdownNode=Qn;exports.ThinkingContent=qe;exports.ToolGroupContent=re;exports.UIGenerationNodes=Yt;exports.WebParseContent=Ke;exports.WebSearchContent=He;exports.WritingLoader=sr;exports.agentStateToContents=yn;exports.cn=Q;exports.completeStreamingContent=Ao;exports.createAgentStreamStore=Sn;exports.createInitialAgentState=fn;exports.extractContentItems=Ro;exports.formatValue=at;exports.getErdoToolName=xn;exports.handleAgentEvent=cr;exports.handleIncrementalMixedJsonParsing=ar;exports.handleSSEEvent=Cn;exports.hasRenderableAssistantOutput=Vl;exports.isErdoTool=Ql;exports.isErdoUITool=ur;exports.isJsonLike=ye;exports.isNullString=jr;exports.isParsingComplete=Va;exports.isParsingInProgress=Kt;exports.isWhitespaceChar=Rt;exports.nodeComponents=tr;exports.normalizeContent=es;exports.normalizeContents=wc;exports.normalizeUIGenerationChunks=_e;exports.normalizeUINodes=Wn;exports.parseCompleteJson=L;exports.parseMixedJson=gt;exports.parseToDate=Nr;exports.resolveKeyFromData=zt;exports.sliceAgentStateToRoot=_n;exports.toSnakeCase=Vr;exports.unwrapNullString=B;exports.unwrapNullStringOr=da;exports.useAgentStreamGlobalState=as;exports.useAgentStreamStoreOptional=os;exports.useChartZoom=De;exports.useDatasetContents=Ae;exports.useErdoConfig=$t;exports.useErdoConfigOptional=H;exports.useInvocationState=ss;exports.useMultipleDatasetContents=Mr;exports.useMultipleDatasetRequests=fe;exports.useThread=ts;
50
+ `,document.head.appendChild(t);}function qe({item:t,className:e}){let[n,o]=ht.useState(false);ht.useEffect(()=>{We();},[]);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 jsxRuntime.jsxs("div",{className:e,children:[jsxRuntime.jsxs("button",{onClick:()=>o(!n),className:"inline-flex items-center gap-1.5 text-left",children:[n?jsxRuntime.jsx(lucideReact.ChevronDown,{className:"h-3.5 w-3.5 text-muted-foreground/70"}):jsxRuntime.jsx(lucideReact.ChevronRight,{className:"h-3.5 w-3.5 text-muted-foreground/70"}),jsxRuntime.jsx("span",{className:`text-sm ${l?"erdo-shimmer":"text-muted-foreground hover:text-foreground/70 transition-colors"}`,children:r?"Encrypted thinking":"Thinking"})]}),n&&jsxRuntime.jsx("div",{className:"mt-1 pl-5 text-sm text-muted-foreground",children:s?jsxRuntime.jsx(D,{content:s,className:"text-sm text-muted-foreground [&_*]:text-muted-foreground"}):l?"Thinking...":""})]})}function si(t){try{return JSON.parse(t)}catch{return t}}function ai(t){if(!t)return "";try{return new Date(t).toLocaleTimeString([],{hour:"2-digit",minute:"2-digit",second:"2-digit"})}catch{return ""}}function er({log:t}){let e=typeof t.message=="string"?si(t.message):t.message,n=ai(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 jsxRuntime.jsx("div",{className:"my-0.5",children:jsxRuntime.jsx("div",{className:o,children:jsxRuntime.jsxs("div",{className:"flex items-start gap-2",children:[n&&jsxRuntime.jsx("span",{className:"text-[10px] opacity-60 whitespace-nowrap w-16 flex-shrink-0 pt-0.5",children:n}),t.level==="error"&&jsxRuntime.jsx("span",{className:"inline-block mr-1 flex-shrink-0",children:jsxRuntime.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",className:`h-3 w-3 ${r}`,viewBox:"0 0 20 20",fill:"currentColor",children:jsxRuntime.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"&&jsxRuntime.jsx("span",{className:"inline-block mr-1 flex-shrink-0",children:jsxRuntime.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",className:`h-3 w-3 ${r}`,viewBox:"0 0 20 20",fill:"currentColor",children:jsxRuntime.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"&&jsxRuntime.jsx("span",{className:"inline-block mr-1 flex-shrink-0",children:jsxRuntime.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",className:`h-3 w-3 ${r}`,viewBox:"0 0 20 20",fill:"currentColor",children:jsxRuntime.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"})})}),jsxRuntime.jsx("div",{className:"flex-1 break-words whitespace-pre-wrap",children:String(e)})]})})})}function ze({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 jsxRuntime.jsx("div",{className:e,children:jsxRuntime.jsx(er,{log:o})})}function ci(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 He({item:t,className:e}){let n=ci(t.content);return n?.results?.length?jsxRuntime.jsx("div",{className:`rounded-lg border border-border/50 overflow-hidden ${e||""}`,children:jsxRuntime.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 jsxRuntime.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:[jsxRuntime.jsxs("div",{className:"flex-1 min-w-0",children:[jsxRuntime.jsx("div",{className:"text-sm text-foreground/90 group-hover:text-foreground group-hover:underline truncate",children:o.title}),o.description&&jsxRuntime.jsx("div",{className:"text-xs text-muted-foreground mt-0.5 line-clamp-1",children:o.description})]}),jsxRuntime.jsxs("div",{className:"flex items-center gap-1 shrink-0 mt-0.5",children:[jsxRuntime.jsx("span",{className:"text-[10px] text-muted-foreground/60",children:r}),jsxRuntime.jsx(lucideReact.ExternalLink,{className:"h-3 w-3 text-muted-foreground/40 group-hover:text-muted-foreground"})]})]},o.url)})})}):null}function di(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 pi(t){if(!t||typeof t!="object")return null;let n=t.input;return typeof n?.url=="string"?n.url:null}function Ke({item:t,className:e}){let n=di(t.content),o=pi(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:jsxRuntime.jsxs("div",{className:`rounded-lg border border-border/50 overflow-hidden ${e||""}`,children:[r&&jsxRuntime.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:[jsxRuntime.jsxs("div",{className:"flex-1 min-w-0",children:[jsxRuntime.jsx("div",{className:"text-sm text-foreground/90 group-hover:text-foreground truncate",children:s?.trim()||i||r}),s&&i&&jsxRuntime.jsx("div",{className:"text-[10px] text-muted-foreground/60 mt-0.5",children:i})]}),jsxRuntime.jsx(lucideReact.ExternalLink,{className:"h-3.5 w-3.5 shrink-0 text-muted-foreground/40 group-hover:text-muted-foreground"})]}),a&&jsxRuntime.jsx("div",{className:"max-h-64 overflow-y-auto px-3 py-2 bg-muted/20",children:jsxRuntime.jsx(D,{content:a,className:"text-xs"})})]})}var vi=reactSyntaxHighlighter.Prism,bt=ht.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]=ht.useState(o),[u,p]=ht.useState(false),d=ht.useRef(null);ht.useEffect(()=>{if(!c){let y=d.current;y&&(y.scrollTop=y.scrollHeight);}},[c,n]);let m=ht.useMemo(()=>i!=="auto"?i:typeof window>"u"?"light":document.documentElement.classList.contains("dark")||window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light",[i]),g=ht.useMemo(()=>m==="dark"?prism.oneDark:prism.oneLight,[m]),f=ht.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]),k=ht.useMemo(()=>({margin:0,width:"100%",background:"transparent",padding:"1rem 0.5rem",fontSize:"0.825rem",maxWidth:"100vw",overflow:"auto"}),[]),b=ht.useMemo(()=>({userSelect:"none",minWidth:"2.5em",paddingRight:"1em",color:"rgb(161 161 170)",opacity:"0.5"}),[]),x=ht.useMemo(()=>({style:{fontFamily:"var(--font-mono, ui-monospace, monospace)",whiteSpace:"pre",wordBreak:"break-word"}}),[]);return jsxRuntime.jsx(oe__namespace.Root,{open:c,onOpenChange:l,className:a,children:jsxRuntime.jsxs("div",{className:"relative w-full font-sans rounded-lg overflow-hidden border border-zinc-200 dark:border-zinc-800",children:[jsxRuntime.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:[jsxRuntime.jsx("span",{className:"text-xs font-medium lowercase text-zinc-400 dark:text-zinc-500",children:e}),jsxRuntime.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?jsxRuntime.jsx(lucideReact.Check,{className:"h-3 w-3 text-green-500"}):jsxRuntime.jsx(lucideReact.Copy,{className:"h-3 w-3 text-zinc-400 dark:text-zinc-500"})})]}),jsxRuntime.jsxs("div",{ref:d,className:`${c?"max-h-96":"max-h-[200px]"} overflow-auto relative`,children:[jsxRuntime.jsx("div",{className:"bg-zinc-50/50 dark:bg-zinc-950/70",children:jsxRuntime.jsx(vi,{language:e,style:g,PreTag:"div",showLineNumbers:true,wrapLines:false,wrapLongLines:false,startingLineNumber:1,className:"not-prose",customStyle:k,lineNumberStyle:b,codeTagProps:x,children:n})}),!c&&jsxRuntime.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"}})]}),jsxRuntime.jsx(oe__namespace.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?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(lucideReact.ChevronUp,{className:"h-4 w-4"}),s]}):jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(lucideReact.ChevronDown,{className:"h-4 w-4"}),r]})})]})})});function wi(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 Ii(t){return wi(t.content)}function Ze({item:t,className:e}){let n=Ii(t);if(!n)return null;let{thinking:o,sql_query:r,error:s}=n;return s?jsxRuntime.jsxs("div",{className:`text-destructive text-sm ${e||""}`,children:[jsxRuntime.jsx("div",{className:"font-medium",children:"Error"}),jsxRuntime.jsx("div",{children:s})]}):!r&&!o?null:jsxRuntime.jsxs("div",{className:`text-foreground whitespace-pre-wrap leading-normal ${e||""}`,children:[o&&jsxRuntime.jsx("div",{className:"mb-2",children:jsxRuntime.jsx(D,{content:o,className:"text-sm max-w-none"})}),r&&jsxRuntime.jsx("div",{className:"mb-2",children:jsxRuntime.jsx(bt,{language:"sql",value:r,defaultOpen:false})})]})}var Ti=500,Ei=300;function Ye({content:t,className:e}){let[n,o]=ht.useState(false);if(!t||typeof t!="string"||!t.trim())return null;if(t.length<=Ti)return jsxRuntime.jsx("div",{className:`text-sm text-muted-foreground ${e||""}`,children:jsxRuntime.jsx(D,{content:t,className:"text-sm max-w-none"})});let s=t.slice(0,Ei).trimEnd()+"...";return jsxRuntime.jsx("div",{className:`text-sm text-muted-foreground ${e||""}`,children:n?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(D,{content:t,className:"text-sm max-w-none"}),jsxRuntime.jsx("button",{onClick:()=>o(false),className:"text-xs text-muted-foreground/70 hover:text-muted-foreground mt-1",children:"Show less"})]}):jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx("span",{className:"text-sm",children:s}),jsxRuntime.jsx("button",{onClick:()=>o(true),className:"text-xs text-muted-foreground/70 hover:text-muted-foreground ml-1",children:"Show more"})]})})}function Ct({children:t,defaultOpen:e=false,wrapperType:n="standard",compact:o=false,className:r}){let[s,a]=ht.useState(e),[i,c]=ht.useState(false),l=ht.useRef(null);ht.useEffect(()=>{let d=l.current;d&&(s||(d.scrollTop=d.scrollHeight),c(d.scrollHeight>d.clientHeight));},[s,t]);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 jsxRuntime.jsx("div",{className:`relative text-sm ${o?"":"mb-2"} ${r||""}`,children:jsxRuntime.jsx(oe__namespace.Root,{open:s,onOpenChange:a,className:`border rounded-sm ${u[n]}`,children:jsxRuntime.jsxs("div",{ref:l,className:`overflow-y-auto ${s?"":"max-h-[200px]"}`,children:[i&&jsxRuntime.jsx(oe__namespace.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"}),jsxRuntime.jsx("div",{className:`${o?"px-2 py-1":"p-2"} m-0 overflow-x-auto break-words whitespace-pre-wrap`,children:t})]})})})}function or(t){return new Date(t).toLocaleTimeString("en-US",{hour12:false,hour:"2-digit",minute:"2-digit",second:"2-digit"})}function ee({children:t,timestamp:e}){return jsxRuntime.jsxs("div",{className:"flex",children:[e&&jsxRuntime.jsx("span",{className:"text-muted-foreground/60 mr-2 select-none",children:or(e)}),jsxRuntime.jsx("span",{className:"text-foreground/80",children:t})]})}function ne({children:t,timestamp:e}){return jsxRuntime.jsxs("div",{className:"flex",children:[e&&jsxRuntime.jsx("span",{className:"text-info/60 mr-2 select-none",children:or(e)}),jsxRuntime.jsx("span",{className:"text-info/90",children:t})]})}function tn({children:t,timestamp:e}){return jsxRuntime.jsxs("div",{className:"flex",children:[e&&jsxRuntime.jsx("span",{className:"text-warning/60 mr-2 select-none",children:or(e)}),jsxRuntime.jsx("span",{className:"text-warning/90",children:t})]})}function nn({item:t,className:e}){if(!t.content)return null;let n=Ai(t.content)??Pi(t.parsedJson);if(!n)return null;let{step_by_step:o,thinking:r,code:s,warnings:a,error:i}=n;return i?jsxRuntime.jsx(Ct,{wrapperType:"info",className:e,children:jsxRuntime.jsx(ne,{children:i})}):!o&&!r&&!s&&!a?null:jsxRuntime.jsxs("div",{className:`text-foreground whitespace-pre-wrap leading-normal ${e||""}`,children:[o&&jsxRuntime.jsx(D,{content:o,className:"text-sm max-w-none"}),r&&jsxRuntime.jsx(Ye,{content:r,state:typeof t.state=="string"?t.state:void 0}),s&&jsxRuntime.jsx("div",{className:"mb-2",children:jsxRuntime.jsx(bt,{language:"python",value:s,defaultOpen:false})}),a&&jsxRuntime.jsxs("div",{className:"text-sm text-warning",children:[jsxRuntime.jsx("div",{className:"font-medium",children:"Warnings"}),jsxRuntime.jsx(D,{content:a,className:"text-sm max-w-none"})]})]})}function Ai(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)?t:null}function Pi(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 on({item:t,className:e}){let n=Oi(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 jsxRuntime.jsx("div",{className:`text-foreground leading-normal ${e||""}`,children:jsxRuntime.jsx(Ct,{wrapperType:s,compact:true,children:n.map((a,i)=>jsxRuntime.jsx(Bi,{output:a},`${a.level}-${i}`))})})}function Bi({output:t}){switch(t.level){case "output":return jsxRuntime.jsx(ee,{timestamp:t.timestamp,children:t.message});case "error":return jsxRuntime.jsx(ne,{timestamp:t.timestamp,children:t.message});case "warning":return jsxRuntime.jsx(tn,{timestamp:t.timestamp,children:t.message});default:return jsxRuntime.jsx("div",{className:"text-muted-foreground",children:t.message})}}function Oi(t){let e=ko(t.content);return e.length>0?e:ko(t.parsedJson)}function ko(t){return rn(t).map((n,o)=>Mi(n,o)).filter(n=>n!==null)}function rn(t){if(Array.isArray(t))return t.every(Vi)?t.flatMap(e=>rn(e.content)):t;if(typeof t=="string"){let e=$(t);return e!=null?rn(e):rn(yt(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 Mi(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 Vi(t){return !!(t&&typeof t=="object"&&"type"in t&&"content"in t)}function ji(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 Ui(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 re({toolGroup:t,ContentComponent:e,className:n,fallbackClassName:o}){let[r,s]=ht.useState(false),a=H(),i=e??a?.ContentComponent;ht.useEffect(()=>{We();},[]);let c=t.invocation,l=t.result,u=ji(l),p=c?.name||l?.name,d=Ui(p,l,c),m=!l,g=u&&!m;return jsxRuntime.jsxs("div",{className:n,children:[jsxRuntime.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&&jsxRuntime.jsx("div",{className:"mt-1",children:i?jsxRuntime.jsx(i,{content:{content:l.result,content_type:l.ui_content_type||"json"}}):jsxRuntime.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 Ot={Success:"success",Error:"error",RequiresInfo:"requires info"};function qi(t){return t?t===Ot.Success?"finished":t===Ot.Error||t===Ot.RequiresInfo?"failed":"loading":"loading"}function _o(t){return t?t!==Ot.Success&&t!==Ot.Error&&t!==Ot.RequiresInfo:true}function zi(t,e){let n=e||"agent",o=B(t?.message);return o||(t?.status===Ot.Success?`Finished ${n}`:`Running ${n}...`)}function an({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:_o(e?.currentStatus?.status),[m,g]=ht.useState(d),[f,k]=ht.useState(false),b=ht.useRef(null);if(ht.useEffect(()=>{if(e?.currentStatus){let v=e.currentStatus.status;if(b.current!==v&&(b.current=v,!f)){let I=_o(v);I&&!m?g(true):!I&&m&&g(false);}}},[e,f,m]),ht.useEffect(()=>{m&&e&&c&&c(t.invocation_id,t.bot_id,t.bot_name);},[m,e,c,t]),n&&!e&&!t.transparent)return jsxRuntime.jsxs("div",{className:`flex items-center gap-2 text-sm text-muted-foreground ${p||""}`,children:[jsxRuntime.jsx(ft,{status:"loading"}),jsxRuntime.jsxs("span",{children:["Loading ",t.bot_name,"..."]})]});if(!e)return null;let x=e.eventsByID&&Object.keys(e.eventsByID).length>0;if(t.transparent)return x?l?jsxRuntime.jsx(l,{eventsByID:e.eventsByID,defaultOpen:true}):jsxRuntime.jsx(Dt,{eventsByID:e.eventsByID,ContentComponent:u}):null;let y=qi(e.currentStatus?.status),h=zi(e.currentStatus,t.bot_name),S=v=>{g(v),k(true);},_=v=>{i&&(v.preventDefault(),i(t.invocation_id,t.bot_id));};return jsxRuntime.jsxs(oe__namespace.Root,{open:m,onOpenChange:S,className:`relative w-full max-w-4xl space-y-2 leading-normal bot-invocation-content ${p||""}`,children:[jsxRuntime.jsxs("div",{className:"flex items-center justify-between",children:[jsxRuntime.jsxs(oe__namespace.Trigger,{className:"flex items-center gap-2 text-sm text-muted-foreground hover:text-foreground transition-colors cursor-pointer",children:[jsxRuntime.jsxs("div",{className:"text-sm font-medium flex items-center gap-2",children:[jsxRuntime.jsx(ft,{status:y}),h]}),jsxRuntime.jsx(lucideReact.ChevronDown,{className:`h-4 w-4 transition-transform duration-200 ${m?"transform rotate-180":""}`})]}),a&&(r||i)&&jsxRuntime.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,jsxRuntime.jsx(lucideReact.ArrowUpRight,{className:"h-3.5 w-3.5"})]})]}),jsxRuntime.jsx(oe__namespace.Content,{children:jsxRuntime.jsx("div",{className:"space-y-2 max-w-3xl",children:x?l?jsxRuntime.jsx(l,{eventsByID:e.eventsByID,defaultOpen:m}):jsxRuntime.jsx(Dt,{eventsByID:e.eventsByID,ContentComponent:u}):jsxRuntime.jsx("span",{className:"text-sm text-muted-foreground",children:"No events to display"})})})]})}function So({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:jsxRuntime.jsx("div",{className:`flex flex-wrap gap-2 ${n||""}`,children:r.map(s=>jsxRuntime.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?jsxRuntime.jsx(lucideReact.Loader2,{className:"h-3 w-3 mr-2 text-muted-foreground flex-shrink-0 animate-spin"}):jsxRuntime.jsx(lucideReact.Search,{className:"h-3 w-3 mr-2 text-muted-foreground flex-shrink-0"}),jsxRuntime.jsx("span",{className:"line-clamp-1",children:s})]},s))})}function vo({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:jsxRuntime.jsx("div",{className:`flex flex-wrap gap-2 ${n||""}`,children:r.map(s=>jsxRuntime.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?jsxRuntime.jsx(lucideReact.Loader2,{className:"h-3 w-3 mr-2 text-muted-foreground flex-shrink-0 animate-spin"}):jsxRuntime.jsx(lucideReact.Search,{className:"h-3 w-3 mr-2 text-muted-foreground flex-shrink-0"}),jsxRuntime.jsx("span",{className:"line-clamp-1",children:s.query})]},`${s.integration_config_id}-${s.resource_id}-${s.query}`))})}var al=120;function il(t,e){return !t||t.length<=e?t:t.slice(0,e).trimEnd()+"..."}function ll(t){switch(t){case "snippet":return lucideReact.Code;case "learning":return lucideReact.Brain;case "error":return lucideReact.AlertCircle;case "limitation":return lucideReact.AlertCircle;case "optimization":return lucideReact.Zap;default:return lucideReact.Lightbulb}}function cl(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 ul({memory:t}){let[e,n]=ht.useState(false),o=ll(t.type),r=cl(t.type),s=t.type==="snippet",a=il(t.description||"",al),i=t.content&&typeof t.content=="string"&&t.content.trim()!=="",c=s&&i;return jsxRuntime.jsxs(oe__namespace.Root,{open:e,onOpenChange:n,className:"border border-border/50 rounded-lg overflow-hidden",children:[jsxRuntime.jsxs(oe__namespace.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:[jsxRuntime.jsx("div",{className:"flex-shrink-0 mt-0.5",children:jsxRuntime.jsx(o,{className:"h-4 w-4 text-muted-foreground"})}),jsxRuntime.jsxs("div",{className:"flex-1 min-w-0",children:[jsxRuntime.jsxs("div",{className:"flex items-center gap-2 mb-1",children:[jsxRuntime.jsx("span",{className:"text-xs font-medium text-muted-foreground uppercase tracking-wide",children:r}),t.tags&&t.tags.length>0&&jsxRuntime.jsxs("div",{className:"flex gap-1 flex-wrap",children:[t.tags.slice(0,3).map((l,u)=>jsxRuntime.jsx("span",{className:"text-xs px-1.5 py-0.5 bg-muted rounded text-muted-foreground",children:l},u)),t.tags.length>3&&jsxRuntime.jsxs("span",{className:"text-xs text-muted-foreground",children:["+",t.tags.length-3]})]})]}),jsxRuntime.jsx("p",{className:"text-sm text-foreground",children:s?a:t.description||t.content})]}),c&&jsxRuntime.jsx(lucideReact.ChevronDown,{className:`h-4 w-4 text-muted-foreground flex-shrink-0 transition-transform duration-200 ${e?"rotate-180":""}`})]}),c&&jsxRuntime.jsx(oe__namespace.Content,{children:jsxRuntime.jsx("div",{className:"border-t border-border/50 bg-muted/30",children:jsxRuntime.jsx("pre",{className:"p-3 text-sm overflow-x-auto whitespace-pre-wrap break-words font-mono",children:t.content})})})]})}function un({content:t,className:e}){let n=Array.isArray(t)?t:t?.memories;return !n||n.length===0?jsxRuntime.jsx("p",{className:"text-sm text-muted-foreground",children:"No memories found."}):jsxRuntime.jsx("div",{className:`space-y-2 ${e||""}`,children:n.map(o=>jsxRuntime.jsx(ul,{memory:o},o.id))})}function sr(){return jsxRuntime.jsxs("span",{className:"inline-flex gap-1 text-muted-foreground",children:[jsxRuntime.jsx("span",{className:"animate-bounce",style:{animationDelay:"0ms"},children:"\u25CF"}),jsxRuntime.jsx("span",{className:"animate-bounce",style:{animationDelay:"150ms"},children:"\u25CF"}),jsxRuntime.jsx("span",{className:"animate-bounce",style:{animationDelay:"300ms"},children:"\u25CF"})]})}function Eo(){return jsxRuntime.jsx("div",{className:"flex items-center justify-center py-8",children:jsxRuntime.jsx(lucideReact.Loader2,{className:"animate-spin text-muted-foreground",size:24})})}function fl(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 Mt({content:t,className:e,components:n}){let r=H()?.onSuggestionClick,s=ht.useMemo(()=>l=>jsxRuntime.jsx(Mt,{...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=fl(t),i;a?i=a:i=B(t.ui_content_type)||t.content_type;let c=n?.[i];if(c)return jsxRuntime.jsx(c,{content:t,className:e});switch(i){case "text":return jsxRuntime.jsx(he,{content:Io(t),className:e});case "markdown":return jsxRuntime.jsx(D,{content:Io(t),className:e});case "thinking":case "redacted_thinking":return jsxRuntime.jsx(qe,{item:t,className:e});case "json":return jsxRuntime.jsx(gt,{content:t.content,className:e});case "codegen_json":return jsxRuntime.jsx(nn,{item:t,className:e});case "sql_generation":return jsxRuntime.jsx(Ze,{item:t,className:e});case "codeexec_output":return jsxRuntime.jsx(on,{item:t,className:e});case "log":return jsxRuntime.jsx(ze,{item:t,className:e});case "websearch":case "websearch_output":case "web_search":return jsxRuntime.jsx(He,{item:t,className:e});case "search_queries":return jsxRuntime.jsx(So,{content:t.content,className:e});case "integration_queries":return jsxRuntime.jsx(vo,{content:t.content,className:e});case "memory":return jsxRuntime.jsx(un,{content:t.content,className:e});case "webparse":case "webparse_output":case "web_parse":return jsxRuntime.jsx(Ke,{item:t,className:e});case "tool_group":return jsxRuntime.jsx(re,{toolGroup:t.content,ContentComponent:s,className:e});case "bot_invocation":{let l=t.content,u=t.botInvocation;return jsxRuntime.jsx(an,{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 jsxRuntime.jsx(Je,{config:t.chartConfig,data:t.chartData,className:e});let u=_e(t.content);if(u&&No(u))return To(u,e,l,r);let p=_e(t.parsedJson);return p&&No(p)?To(p,e,l,r):jsxRuntime.jsx("p",{className:"w-full max-w-4xl text-sm text-muted-foreground",children:"The LLM generated an invalid response. Please try again."})}case "table":return t.tableColumns&&t.tableData?jsxRuntime.jsx(Ge,{columns:t.tableColumns,data:t.tableData,className:e}):jsxRuntime.jsx(gt,{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 jsxRuntime.jsx(re,{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||B(t.ui_content_type),running_message:l.running_message||l.running_status,finished_message:l.finished_message||l.finished_status}};return jsxRuntime.jsx(re,{toolGroup:p,ContentComponent:s,className:e})}default:return typeof t.content=="string"?jsxRuntime.jsx(he,{content:t.content,className:e}):null}}function Io(t){return typeof t.content=="string"?t.content:""}function No(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;return !!Do(n)||Kt(n)}return false})}function Do(t){let e=t?.children??t?.blocks;return Array.isArray(e)?e:void 0}function _e(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=yt(t);return _e(e)}return null}function To(t,e,n,o){return jsxRuntime.jsx(jsxRuntime.Fragment,{children:t.map((r,s)=>{if(r.type==="text"){let a=typeof r.content=="string"?r.content:String(r.content);return jsxRuntime.jsx(D,{content:a,className:e},`${s}-${a.length}`)}if(r.type==="json"){let a=r.content,i=Do(a);return i?jsxRuntime.jsx(ht__namespace.default.Fragment,{children:jsxRuntime.jsx(Yt,{nodes:i,className:e,invocationId:n,onSuggestionClick:o})},`${s}-${i.length}`):Kt(a)?jsxRuntime.jsx(sr,{},s):null}return null})})}function hl({result:t,isStreaming:e,className:n,components:o,streamingText:r}){let s=t?Ro(t):[];return r&&s.length===0?jsxRuntime.jsxs("div",{className:n?`erdo-ui ${n}`:"erdo-ui space-y-4",children:[jsxRuntime.jsxs("div",{className:"flex items-center gap-2",children:[jsxRuntime.jsx("div",{className:"animate-pulse w-2 h-2 bg-blue-500 rounded-full"}),jsxRuntime.jsx("span",{className:"text-sm text-gray-500",children:"Streaming response..."})]}),jsxRuntime.jsx("div",{className:"border rounded-lg p-4 whitespace-pre-wrap",children:r})]}):s.length===0&&!e?null:jsxRuntime.jsxs("div",{className:n?`erdo-ui ${n}`:"erdo-ui space-y-4",children:[s.map((a,i)=>jsxRuntime.jsx("div",{children:jsxRuntime.jsx(Mt,{content:a,components:o})},a.id||i)),e&&s.length===0&&!r&&jsxRuntime.jsxs("div",{className:"flex items-center gap-2",children:[jsxRuntime.jsx("div",{className:"animate-pulse w-2 h-2 bg-blue-500 rounded-full"}),jsxRuntime.jsx("span",{className:"text-sm text-gray-500",children:"Processing..."})]})]})}function Ro(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 xl(t){if(t.length===0)return t;let e=[];for(let n=0;n<t.length;n++){let o=t[n],r=n>0?t[n-1]:null,s=n<t.length-1?t[n+1]:null;if(o.type==="text"&&typeof o.content=="string"){let a=o.content,i=false;if(s?.type==="json"){let c=a;a=a.replace(/```(?:json)?\s*$/,""),c!==a&&(i=true);}if(r?.type==="json"){let c=a;a=a.replace(/^\s*```/,""),c!==a&&(i=true);}(!i||a.trim())&&e.push({...o,content:a});}else e.push(o);}return e}var kl=new Set(["=","("]);function bl(t){if(!t||t.length===0)return true;let e=t[t.length-1];return !kl.has(e)}function ar(t,e){if(t.user_visibility!=="visible"||!ye(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.map((u,p,d)=>p===d.length-1?{...u}:u):[],o=t.content||"",r=t._isInJson??false,s=t._charBuffer??"",a=t._jsonParser,i=n.length>0&&t._currentContent?n.length-1:-1;if(typeof e=="object")return {...t,content:o+JSON.stringify(e),parsedJson:[...n,e],_isInJson:r,_charBuffer:s,_jsonParser:a,_currentContent:void 0};for(let u of e){if(o+=u,!r&&u==="{"){let p=o.slice(0,-1);if(bl(p)){s="{";continue}}if(s&&Rt(u)){s+=u;continue}if(!r&&s?.match(/^\s*{\s*$/)&&u==='"'){r=true,a=new tt;let d={content:a.add("{"),type:"json"},m=i>=0?n[i]:null;if(!m?.content)n=[...n,d],i=n.length-1;else if(typeof m.content=="string"&&m.content.match(/^\s*{$/))n=[...n.slice(0,-1),d],i=n.length-1;else {if(typeof m.content=="string"){let g={...m,content:m.content.replace(/{$/,"")};n=[...n.slice(0,-1),g,d];}else n=[...n,d];i=n.length-1;}}if(r)try{let d={type:"json",content:a.add(u)};n=[...n.slice(0,i),d],a.state==="END"&&(r=!1,i=-1);}catch(p){if(console.log("handleIncrementalMixedJsonParsing: content chunk",e),console.log("handleIncrementalMixedJsonParsing: accumulated content",o),console.warn("handleIncrementalMixedJsonParsing: JSON parse error, recovering as text",p),r=false,a=void 0,n.length>0&&i>=0&&n[i].type==="json"){let m=o.lastIndexOf("{"),f={type:"text",content:o.slice(m)};n=[...n.slice(0,i),f];}continue}else if(i<0||n[i]?.type!=="text"){let p={content:s+u,type:"text"};n=[...n,p],i=n.length-1;}else {let d={type:"text",content:n[i].content+s+u};n=[...n.slice(0,i),d];}s="";}let c=i>=0?n[i]:void 0,l=xl(n);return {...t,content:o,parsedJson:l,_isInJson:r,_charBuffer:s,_jsonParser:a,_currentContent:c}}function Se(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function Cl(t){if(!Se(t)||!("content"in t))return t;let e=t.content;return e===void 0?t:e}function ie(t,e){let n=Cl(e);if((t==="thinking"||t==="redacted_thinking")&&typeof n=="string"){let o=$(n);return Se(o)?{content:o}:{content:n}}if(t==="json"&&typeof n=="string"){let o;try{let s=yt(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 _l(t,e){return typeof e=="string"?e:Se(e)?t==="redacted_thinking"?typeof e.data=="string"?e.data:"":typeof e.thinking=="string"?e.thinking:"":""}function pn(t,e,n){let o=ie(t,n);if(t!=="thinking"&&t!=="redacted_thinking")return o;let r=_l(t,e);return r?t==="redacted_thinking"?Se(o.content)&&typeof o.content.data!="string"?{...o,content:{...o.content,data:r}}:o:Se(o.content)&&typeof o.content.thinking!="string"?{...o,content:{...o.content,thinking:r}}:o:o}function mn(t){let e=t.metadata?.step_id??t.payload?.step_id;return typeof e=="string"?e:""}function ir(t){let e=t.metadata?.message_content_id??t.payload?.message_content_id;return typeof e=="string"?e:""}function Sl(t){let e=t.metadata?.message_id;return typeof e=="string"?e:""}function lr(t,e){if(e.metadata?.content_type==="agent_invocation")return true;let n=Sl(e);return !!(n&&n!==t.messageId)}function vl(t){return typeof t=="string"?t:typeof t=="object"&&t!==null&&"content"in t?String(t.content??""):""}function fn(){return {nodes:[],byStepId:{},byContentId:{},childrenByParentId:{},rootStepId:null,messageId:null,isStreaming:false}}function cr(t,e){switch(e.type){case "message created":return wl(t,e);case "message finished":return Ao(t);case "step_started":return Il(t,e);case "step_finished":return Nl(t,e);case "create message content":return Tl(t,e);case "message content delta":return El(t,e);case "message content result":return Dl(t,e);case "status":return Al(t,e);default:return t}}function wl(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 Il(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 Nl(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 Tl(t,e){if(lr(t,e))return t;let n=ir(e);if(!n)return t;let o=mn(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 El(t,e){if(lr(t,e))return t;let n=ir(e),o=vl(e.payload);if(!n||!o)return t;let r=t.byContentId[n],s=t;if(!r){let u=mn(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=Ol(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 Dl(t,e){if(lr(t,e))return t;let n=ir(e);if(!n)return t;let o=mn(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?pn(r,a.result??a.text,e.payload):ie(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 Ao(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 Rl(t){let e=t.payload;return typeof e=="string"?e:e?.message||e?.status_message||e?.status||""}function Al(t,e){let n=mn(e)||null,o=Rl(e);if(!o)return t;if(n){let s=t.byStepId[n];return s?Pl(t,s,n,o):Bl(t,n,o)}let r={kind:"status",stepId:null,message:o};return {...t,nodes:[...t.nodes,r]}}function Pl(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 Bl(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 Ol(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?[...t.parsedContent]:[],_jsonParser:n._jsonParser,_isInJson:n._isInJson,_charBuffer:n._charBuffer??"",_currentContent:n._currentContent},r=ar(o,e);return {parsedContent:r.parsedJson,_parserFields:{_rawText:r.content,_jsonParser:r._jsonParser,_isInJson:r._isInJson,_charBuffer:r._charBuffer,_currentContent:r._currentContent}}}function Ml(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 gn(t,e,n){return e.type!=="llm_call"?false:!(e.parentId===t.rootStepId)&&n.contentType==="text"}function yn(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"?Vl(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"&&gn(t,i,a)||r(a));}return e}function Vl(t){return t?$(t):null}function Jl(t){return (t.status==="completed"||t.status==="error")&&t.finishedStatus?t.finishedStatus:t.runningStatus?t.runningStatus:t.name.replace(/_/g," ")}function Gl(t){return t==="running"?"loading":t==="error"?"failed":"finished"}function Wl(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 ql(t){return t==="info"?"info":t==="warning"?"warning":"standard"}function zl(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 Po(t,e){let n=[],o="",r=[],s=0;function a(){r.length>0&&(n.push({id:`${e}-exec-${s}`,type:"codeexec",content:r.join(`
51
+ `),wrapperType:ql(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 Bo(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:"content",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=zl(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(...Po(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(...Po(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 Hl(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=Wl(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"&&gn(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 k(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=k(y);if(!S){n.push(...h);return}let _=o[S];if(!_){p(S).push(...h);return}_.children||(_.children=[]),_.children.push(...h);}function x(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 j=typeof v.output=="string"?v.output.trim():"";return j&&I.push({id:`${y}-${h}-output`,type:"codeexec",content:j}),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:Jl(_),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(...Bo([h],"root",e));continue}let S=t.byStepId[h.stepId];if(S&&!g(S)&&!(S.type==="llm_call"&&gn(t,S,h))){if(S.type==="tool_call"&&h.contentType==="tool_result"){if(f(S.id))continue;b(S.id,x(S.id,h.id,h.result));continue}b(S.id,Bo([h],S.id,e));}}return n}function Oo({node:t,ContentComponent:e}){let[n,o]=ht.useState(t.status==="running"),r=ht.useRef(t.status==="running");if(ht.useEffect(()=>{r.current&&t.status!=="running"&&o(false),r.current=t.status==="running";},[t.status]),t.type==="text")return jsxRuntime.jsx(D,{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 jsxRuntime.jsxs("div",{className:"space-y-2",children:[c&&jsxRuntime.jsx(D,{content:c,className:"text-sm max-w-none"}),l&&jsxRuntime.jsx(Ye,{content:l,state:t.status==="running"?"in_progress":"completed"}),i&&jsxRuntime.jsx(bt,{language:"python",value:i,defaultOpen:false})]})}if(t.type==="codeexec"&&t.content){let i=t.wrapperType||"standard";return jsxRuntime.jsx(Ct,{wrapperType:i,compact:true,children:jsxRuntime.jsx(ee,{children:t.content})})}if(t.type==="content"&&t.contentItem&&e)return jsxRuntime.jsx(e,{content:t.contentItem});if(t.type==="content"&&t.contentItem)return jsxRuntime.jsx(Mt,{content:t.contentItem});let s=!!t.children?.length,a=t.status==="running"?"text-foreground":"text-muted-foreground";return jsxRuntime.jsxs(oe__namespace.Root,{open:n,onOpenChange:o,className:"w-full",children:[jsxRuntime.jsxs(oe__namespace.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:[jsxRuntime.jsxs("div",{className:"flex items-center gap-2",children:[jsxRuntime.jsx(ft,{status:Gl(t.status),size:14}),jsxRuntime.jsx("span",{children:t.label})]}),s&&jsxRuntime.jsx(lucideReact.ChevronDown,{className:`h-4 w-4 shrink-0 text-muted-foreground/50 transition-transform duration-200 ${n?"rotate-180":""}`})]}),s&&jsxRuntime.jsx(oe__namespace.Content,{children:jsxRuntime.jsx("div",{className:"ml-5 mt-1 flex flex-col gap-1",children:t.children?.map(i=>jsxRuntime.jsx(Oo,{node:i,ContentComponent:e},i.id))})})]})}function Mo({agentState:t,ContentComponent:e,className:n}){if(!t.rootStepId)return null;let o=ht.useMemo(()=>Hl(t,e),[t,e]);return o.length===0?null:jsxRuntime.jsx("div",{className:`flex flex-col gap-1 ${n||""}`,children:o.map(r=>jsxRuntime.jsx(Oo,{node:r,ContentComponent:e},r.id))})}function xn(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 Kl(t){return xn(t)!==void 0}var Ql={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 ur(t){return Ql[t]??"data"}function Vo({part:t,className:e,onSuggestionClick:n}){let o=xn(t);if(!o)return null;if(["partial-call","call","input-streaming","input-available"].includes(t.state))return jsxRuntime.jsxs("div",{className:e||"flex items-center gap-2 py-4 text-muted-foreground",children:[jsxRuntime.jsx(lucideReact.Loader2,{className:"h-4 w-4 animate-spin"}),jsxRuntime.jsxs("span",{className:"text-sm",children:["Running ",Yl(o),"..."]})]});if(t.state==="result"||t.state==="output-available"){let s=t.output??t.result;if(t.errorText)return jsxRuntime.jsxs("div",{className:e||"flex items-center gap-2 py-2 text-sm text-destructive",children:[jsxRuntime.jsx(lucideReact.AlertCircle,{className:"h-4 w-4 shrink-0"}),jsxRuntime.jsx("span",{children:t.errorText})]});if(s&&typeof s=="object"&&"error"in s&&s.error)return jsxRuntime.jsxs("div",{className:e||"flex items-center gap-2 py-2 text-sm text-destructive",children:[jsxRuntime.jsx(lucideReact.AlertCircle,{className:"h-4 w-4 shrink-0"}),jsxRuntime.jsx("span",{children:String(s.error)})]});switch(ur(o)){case "ui":{let i=s?.children;return i&&Array.isArray(i)&&i.length>0?jsxRuntime.jsx("div",{className:e,children:jsxRuntime.jsx(Yt,{nodes:i,invocationId:t.toolCallId,onSuggestionClick:n})}):s?jsxRuntime.jsx("div",{className:e,children:jsxRuntime.jsx(gt,{content:s})}):null}case "markdown":{let i=s?.answer;if(i)return jsxRuntime.jsx("div",{className:e,children:jsxRuntime.jsx(D,{content:i})});let c=s?.output;return c?jsxRuntime.jsx("div",{className:e,children:jsxRuntime.jsx(D,{content:c})}):s?jsxRuntime.jsx("div",{className:e,children:jsxRuntime.jsx(gt,{content:s})}):null}case "data":return s!=null?jsxRuntime.jsx("div",{className:e,children:jsxRuntime.jsx(gt,{content:s})}):null}}return t.state==="output-error"?jsxRuntime.jsxs("div",{className:e||"flex items-center gap-2 py-2 text-sm text-destructive",children:[jsxRuntime.jsx(lucideReact.AlertCircle,{className:"h-4 w-4 shrink-0"}),jsxRuntime.jsx("span",{children:t.errorText||"Tool execution failed"})]}):null}function Yl(t){return t.replace(/^erdo_/,"").split("_").map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(" ")}function F(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 Xl(t){return t.contents.length===0?null:t.contents[t.contents.length-1]||null}function Fo(t){return t.contents.length===0?null:t.contents[0]||null}function Lo(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 fr(t,e){let n=F(t);switch(n){case "message":return t;case "step":let o=t;if(e){let a=o.eventsByID[e]?.Message;return a||Wo({},"",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 tc(t,e){switch(F(t)){case "message_content":return t;case "output_content":return t;case "message":return ce(t,e);case "output":return ue(t,e);case "step":let o=bn(t,e);return o?ue(o,e):null;default:return null}}function ce(t,e){let n=F(t);switch(n){case "message_content":return t;case "message":let o=fr(t);if(!o)throw new Error("Unable to find message to add content to");return e?o.contentsByID[e]:Xl(o);default:throw new Error(`Unable to have message content on entity type ${n}`)}}function ue(t,e){let n=F(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=bn(t,e);return s?ue(s):null;case "invocation":if(!e)return null;let a=t.eventsByID[e];return !a||!a.Output?null:ue(a.Output);default:throw new Error(`Unable to have output content on entity type ${n}`)}}function gr(t,e){let n=F(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=Fo(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 bn(t,e){let n=F(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 Jo(t,e){let n=F(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 Go(t,e){let n=F(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 pr=class extends Error{};function ec(t,e,n){let o=null,r=e[0],s=e[1];n[r]=s;try{switch(r){case "message":o=fr(t,s);break;case "content":o=ce(t,s);break;case "step":o=Go(t,s);break;case "output":o=bn(t,s);break;case "output_content":o=ue(t,s);break;case "invocation":o=gr(t,s);break;case "result_handler":o=Jo(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 pr(`Unable to find next entity for path ${e.join("/")}`);return o}function Wo(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 nc(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 rc(t,e){let n=t.metadata.content_type||"text",o=t.metadata?.ui_content_type,r=ie(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 oc(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 sc(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 ac(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 $o(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 jo(t,e,n,o=null){let r=t.metadata.content_type||"text",s=ie(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 ic(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 we(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 qo(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 yr(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 hr(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 lc(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 cc(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 uc=new Set(["=","("]);function dc(t){if(!t||t.length===0)return true;let e=t[t.length-1];return !uc.has(e)}function zo(t,e){if(t.content||(t.content=""),t.user_visibility!=="visible"||!ye(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&&!Rt(r)){t._isInJson=true,t._jsonParser=new tt;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(dc(a)){t._charBuffer="{";continue}}if(t._charBuffer&&Rt(r)){t._charBuffer+=r;continue}if(!t._isInJson&&!s&&o==="ui_generation"&&t._charBuffer?.match(/^\s*{\s*$/)&&r==='"'){t._isInJson=true,t._jsonParser=new tt;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 pc(t,e){return zo(t,e)}function Uo(t,e){return zo(t,e)}function mr(t,e){let n=F(t);switch(n){case "message":return dt(t,e);case "message_content":return kn(t,e);case "step":return fc(t,e);case "output":return gc(t,e);case "output_content":return yc(t,e);case "invocation":return Ie(t,e);case "result_handler":return hc(t,e);default:throw new Error(`Unable to add update entity for entity type ${n}`)}}function mc(t,e){for(let n of e)t=mr(t,n);return t}function dt(t,e){let n=fr(t);if(!n)throw new Error("Unable to find message to add content to");let o=F(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=kn(n.contents[0],s),dt(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=gr(r);if(!a)throw new Error("Unable to find bot invocation to add content to");return r.botInvocation=Ie(a,e),dt(n,r);case "status":if(n.contents.length>0){let i=n.contents[0];if(i?.botInvocation){let c=kn(i,e);return dt(n,c)}}return {...n};default:throw new Error(`Unable to add update message child for child type ${o}`)}}function kn(t,e){let n=ce(t);if(!n)throw new Error("Unable to find message content to add content to");let o=F(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=Ie(r,e),{...n};case "status":return n.botInvocation&&(n.botInvocation=Ie(n.botInvocation,e)),{...n};default:throw new Error(`Unable to add update message content child for child type ${o}`)}}function fc(t,e){let n=Go(t);if(!n)throw new Error("Unable to find bot invocation to add step to");let o=F(e),r=null;switch(o){case "output":let s=e;return r=yr(s),n.eventsByID={...n.eventsByID,[s.output.id]:r},{...n};case "message":let a=e;return r=lc(a),n.eventsByID={...n.eventsByID,[a.message.id]:r},{...n};case "status":let i=e;return r=hr(i),n.eventsByID={...n.eventsByID,[i.id]:r},{...n};case "result_handler":let c=e;return r=cc(c),n.eventsByID={...n.eventsByID,[c.id]:r},{...n};default:throw new Error(`Unable to add update step for entity type ${o}`)}}function gc(t,e){let n=bn(t);if(!n)throw new Error("Unable to find step output to add content to");let o=F(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 yc(t,e){let n=ue(t);if(!n)throw new Error("Unable to find step output content to add content to");let o=F(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=Ie(r,e),{...n};default:throw new Error(`Unable to add update step output content for entity type ${o}`)}}function Ie(t,e){let n=gr(t);if(!n)throw new Error("Unable to find bot invocation to add content to");let o=F(e),r;switch(o){case "step":let s=e;return r=qo(s),n.eventsByID={...n.eventsByID,[s.id]:r},{...n};case "output":let a=e;return r=yr(a),n.eventsByID={...n.eventsByID,[a.output.id]:r},{...n};case "status":let i=e;return r=hr(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 hc(t,e){let n=Jo(t);if(!n)throw new Error("Unable to find result handler to add content to");let o=F(e),r=null;switch(o){case "step":let s=e;return r=qo(s),n.eventsByID||(n.eventsByID={}),n.eventsByID={...n.eventsByID,[s.id]:r},{...n};case "output":let a=e;return r=yr(a),n.eventsByID||(n.eventsByID={}),n.eventsByID={...n.eventsByID,[a.output.id]:r},{...n};case "status":let i=e;return r=hr(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 xc(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 Cn(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]=Lo(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&&xc(t)){let p=n[1],d=[],m,g,f,k,b;switch(t){case "bot started":case "bot resumed":if(!s)throw new Error("Unable to find message to add content to");let x=ic(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(k=ce(f,g.id),!k)throw new Error("Unable to find message content to add content to");let _=kn(k,x);r[g.message_id]={...dt(f,_)};}d.push(x);break;case "message created":return r[p]=Wo(e,o,p),null;case "create message content":if(!s)throw new Error("Unable to find message to add content to");if(b=nc(e,i),s._type==="output"){m=s,d.push($o(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]={...dt(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(jo(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=ce(y,h);if(S){S.state="completed";let _=S.content_type||"text",v=pn(_,S.content,e.payload);S.content=v.content,v.parsedJson&&(S.parsedJson=v.parsedJson),r[f.message.id]={...dt(f,S)},(s._type==="message"||s._type==="message_content")&&d.push(S);}else S=rc(e,i),r[f.message.id]={...dt(f,S)},(s._type==="message"||s._type==="message_content")&&d.push(S);break;case "step started":d.push(oc(e,p,i));break;case "result handler started":d.push(sc(e,p));break;case "step output created":d.push(ac(e,p,s));break;case "create step output content":d.push($o(e,p,i));break;case "step output content result":d.push(jo(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]:mc(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=tc(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=Uo(s,e.payload);let x=e.metadata.message_content_id;if(!x)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=ce(g,x);}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 k=pc(m,e.payload);return r[f.message.id]={...dt(f,k)},s._type==="message_content"&&(d=k),d;case "step output content delta":return Uo(p,e.payload);case "status":if(s._type==="step"&&(s.currentStatus=we(e)),s._type==="invocation"&&(s.currentStatus=we(e)),s._type==="message_content"){let b=s;if(b.botInvocation)return b.botInvocation.currentStatus=we(e),{...b}}if(s._type==="message"){let b=s,x=Fo(b);if(x?.botInvocation)return x.botInvocation.currentStatus=we(e),dt(b,x)}return mr(s,we(e));case "result":return null;case "message finished":if(s._type==="message"){let x=Lo(s);r[x.message.id]=x;}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=ec(s,n,i),u=Cn(t,e,c,o,r,l,[...a,s],i);return u?mr(s,{...u}):s}function xr(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 Ho(t){let e=t.content_type;if(e==="tool_result")return "result";if(e==="tool_invocation")return "invocation";let n=xr(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 Ko(t){return xr(t)?.id}function Qo(t){let e=xr(t);if(!e?.action_type)return null;let o=e.input?.query;return `${e.action_type}:${o||""}`}function Zo(t){let e=t.filter(r=>Ho(r)==="result"),n=new Set(e.map(r=>Ko(r)).filter(Boolean)),o=new Set(e.map(r=>Qo(r)).filter(Boolean));return t.filter(r=>{if(Ho(r)==="invocation"){let s=Ko(r),a=Qo(r);if(s&&n.has(s)||a&&o.has(a))return false}return true})}function Yo(t,e,n){let o=e;for(;o;){if(o===n)return true;o=t.byStepId[o]?.parentId??null;}return false}function _n(t,e){if(!e||!t.byStepId[e])return t;let n=new Set;for(let i of t.nodes)i.kind==="step"&&Yo(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 Sn(){return zustand.createStore((t,e)=>({globalState:fn(),invocationStates:{},invocationRootSteps:{},pendingInvocationQueue:[],pushEvent:(n,o)=>{let r=e(),s=cr(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&&!Yo(s,a,u)&&a)continue;let d=_n(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=_n(r.globalState,o);t({invocationRootSteps:{...r.invocationRootSteps,[n]:o},invocationStates:{...r.invocationStates,[n]:s},pendingInvocationQueue:r.pendingInvocationQueue.filter(a=>a!==n)});},reset:()=>{t({globalState:fn(),invocationStates:{},invocationRootSteps:{},pendingInvocationQueue:[]});}}))}function _c(t){return t.split("/").filter(Boolean)}function Xo(t={}){let e=$t(),[n,o]=ht.useState(null),[r,s]=ht.useState(false),[a,i]=ht.useState(null),[c,l]=ht.useState([]),u=ht.useRef(Sn()),p=zustand.useStore(u.current,x=>x.globalState),d=ht.useRef(null),m=ht.useRef(t.threadId);t.threadId!==m.current&&(m.current=t.threadId);let g=ht.useCallback(()=>{d.current&&(d.current.abort(),d.current=null);},[]),f=ht.useCallback(x=>{o(x),m.current=x.id;},[]),k=ht.useCallback(async x=>{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:x,botKey:t.botKey})){if(d.current?.signal.aborted)break;if(t.onEvent?.(I),e.useAgentEvents)u.current.getState().pushEvent(I);else {let j=I.type||"",Z=I.metadata||{},P=_c(Z.path||""),J={payload:I.payload,metadata:{path:Z.path||"",...Z}};try{Cn(j,J,P,h,y);}catch(G){console.error("Error handling SSE event:",G,j);}l(Object.values(y));}}let S=Object.values(y);l(S);let _=u.current.getState().globalState,v;_.rootStepId?v=yn(_):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:B(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=ht.useMemo(()=>{if(p.rootStepId)return yn(p);let x=c.flatMap(h=>h.contents||[]).filter(h=>h.user_visibility==="visible");return Zo(x).map(h=>({id:h.id,content_type:h.content_type,ui_content_type:B(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:k,cancel:g,setThread:f,agentStreamStore:u.current}}function Sc(t){return t?typeof t=="string"?t:typeof t=="object"&&t!==null&&"String"in t&&t.String||"":""}function ts(t){let e=Sc(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=yt(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 vc(t){return t.filter(e=>e.user_visibility!=="hidden").map(ts)}var wn=ht.createContext(null);function ns({store:t,children:e}){return jsxRuntime.jsx(wn.Provider,{value:t,children:e})}function rs(){return ht.useContext(wn)}function os(t){let e=ht.useContext(wn);return zustand.useStore(e,n=>t?n.invocationStates[t]:void 0)}function ss(){let t=ht.useContext(wn);return zustand.useStore(t,e=>e.globalState)}exports.AgentStreamStoreProvider=ns;exports.BarChart=It;exports.BotInvocationContent=an;exports.Chart=it;exports.ChartContainer=pe;exports.ChartContent=Je;exports.ChartLegend=An;exports.ChartLegendContent=Pn;exports.ChartNode=Hn;exports.ChartStyle=Ir;exports.ChartTooltip=Dn;exports.ChartTooltipContent=Rn;exports.CodeexecContent=on;exports.CodegenContent=nn;exports.CollapsibleCodeBlock=bt;exports.Content=Mt;exports.DatasetChart=Oe;exports.DatasetDownload=Qt;exports.DatasetTable=Me;exports.DownloadButtonNode=Zn;exports.ErdoProvider=Sr;exports.ErdoToolResult=Vo;exports.ErdoUI=hl;exports.ErrorBoundary=St;exports.ExecutionStatus=Hr;exports.ExpandableOutputContent=Ct;exports.FileDownloadsNode=Xn;exports.HeatmapChart=Wt;exports.InvocationEvent=Ue;exports.InvocationEvents=Dt;exports.InvocationStatus=zr;exports.JSONStreamParser=tt;exports.JsonContent=gt;exports.LineChart=Ft;exports.Loader=Eo;exports.Log=er;exports.LogContent=ze;exports.MarkdownContent=D;exports.MemoryContent=un;exports.Output=Ve;exports.PieChart=Jt;exports.ScatterChart=Gt;exports.SqlContent=Ze;exports.StatusSpinner=ft;exports.StderrText=ne;exports.StdoutText=ee;exports.StdwarnText=tn;exports.StepInvocation=je;exports.StepInvocationStatus=$e;exports.StepTreeContent=Mo;exports.SuggestionsNode=Yn;exports.TableContent=Ge;exports.TableNode=Kn;exports.TextContent=he;exports.TextMarkdownNode=Qn;exports.ThinkingContent=qe;exports.ToolGroupContent=re;exports.UIGenerationNodes=Yt;exports.WebParseContent=Ke;exports.WebSearchContent=He;exports.WritingLoader=sr;exports.agentStateToContents=yn;exports.cn=Q;exports.completeStreamingContent=Ao;exports.createAgentStreamStore=Sn;exports.createInitialAgentState=fn;exports.extractContentItems=Ro;exports.formatValue=at;exports.getErdoToolName=xn;exports.getErdoToolRenderType=ur;exports.handleAgentEvent=cr;exports.handleIncrementalMixedJsonParsing=ar;exports.handleSSEEvent=Cn;exports.hasRenderableAssistantOutput=Ml;exports.isErdoTool=Kl;exports.isJsonLike=ye;exports.isNullString=Ur;exports.isParsingComplete=Ma;exports.isParsingInProgress=Kt;exports.isWhitespaceChar=Rt;exports.nodeComponents=tr;exports.normalizeContent=ts;exports.normalizeContents=vc;exports.normalizeUIGenerationChunks=_e;exports.normalizeUINodes=Wn;exports.parseCompleteJson=$;exports.parseMixedJson=yt;exports.parseToDate=Nr;exports.resolveKeyFromData=zt;exports.sliceAgentStateToRoot=_n;exports.toSnakeCase=Vr;exports.unwrapNullString=B;exports.unwrapNullStringOr=ua;exports.useAgentStreamGlobalState=ss;exports.useAgentStreamStoreOptional=rs;exports.useChartZoom=De;exports.useDatasetContents=Ae;exports.useErdoConfig=$t;exports.useErdoConfigOptional=H;exports.useInvocationState=os;exports.useMultipleDatasetContents=Mr;exports.useMultipleDatasetRequests=fe;exports.useThread=Xo;