react-semaphor 0.0.663 → 0.0.664
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/chunks/{dashboard-plus-Dvpx3lQA.js → dashboard-plus-B9-pj2AX.js} +1 -1
- package/dist/chunks/{dashboard-plus--B5BxEsz.js → dashboard-plus-Bp_x5o9D.js} +1 -1
- package/dist/chunks/{index-DFmCb7Dw.js → index-CuIonuI2.js} +6 -3
- package/dist/chunks/{index-Chy9tOxv.js → index-Ywgaa5lZ.js} +2 -2
- package/dist/dashboard/index.cjs +1 -1
- package/dist/dashboard/index.js +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.js +3 -3
- package/dist/surfboard/index.cjs +1 -1
- package/dist/surfboard/index.js +1 -1
- package/dist/types/dashboard.d.ts +1 -1
- package/dist/types/main.d.ts +1 -1
- package/dist/types/surfboard.d.ts +1 -1
- package/dist/types/types.d.ts +1 -1
- package/package.json +1 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { jsxs as a, jsx as e, Fragment as K } from "react/jsx-runtime";
|
|
2
|
-
import { L as ie, M as Cn, u as X, N as Tt, O as Mt, P as _, Q as It, T as He, V as wn, I as nt, W as Ke, X as mt, Y as el, Z as Ge, _ as ht, $ as pt, a0 as ft, a1 as At, a2 as U, a3 as Me, a4 as aa, a5 as xe, a6 as Sn, a7 as ga, a8 as _i, a9 as Dr, aa as kn, ab as Y, ac as Dn, ad as Vi, ae as tl, af as Bi, ag as ji, ah as xa, ai as me, j as Tr, aj as Gi, ak as Ui, al as $t, am as Fe, an as ue, ao as Se, ap as ut, aq as Pe, ar as Pa, as as Na, at as La, au as $i, av as ba, aw as st, ax as qe, ay as We, az as ns, aA as Ze, aB as we, aC as Qe, aD as Tn, aE as Is, aF as Da, aG as la, aH as qt, aI as rs, aJ as ls, aK as Yi, aL as Ca, aM as Mn, aN as In, aO as An, aP as En, R as Ut, aQ as al, aR as qi, aS as On, aT as is, aU as Rn, aV as Fn, aW as za, aX as _a, aY as Va, aZ as Pn, a_ as zs, a$ as Ln, b0 as sl, b1 as nl, b2 as zn, b3 as he, b4 as pe, b5 as fe, b6 as ge, b7 as te, b8 as rl, b9 as ll, ba as Wi, bb as Ki, bc as ia, bd as Ji, be as Hi, bf as yt, bg as Nt, bh as Te, bi as it, bj as wt, J as E, bk as Rt, bl as _s, bm as Vs, bn as il, bo as Qi, bp as Xe, bq as Ta, br as oa, bs as As, bt as ol, bu as cl, bv as Zi, bw as _n, bx as Vn, by as Bn, bz as jn, bA as Gn, bB as Un, bC as $n, bD as Yn, bE as ks, bF as Bs, bG as os, K as le, bH as Xi, bI as Dt, bJ as eo, bK as ze, bL as ca, bM as dl, bN as Es, bO as to, bP as qn, bQ as Os, bR as Wn, bS as Ds, bT as Ba, bU as Kn, bV as ao, bW as so, bX as no, bY as ro, bZ as lo, i as io, b_ as ul, b$ as Ja, c0 as Ft, c1 as Pt, c2 as Wt, c3 as Kt, c4 as cs, c5 as ds, c6 as us, c7 as ms, c8 as ma, c9 as ja, ca as Ma, cb as Ia, cc as Et, cd as hs, A as Lt, r as ml, q as hl, l as St, ce as Ot, cf as Be, cg as oo, ch as sa, ci as Xt, cj as pl, ck as co, k as fl, cl as Ha, cm as Qt, cn as uo, n as ea, m as _t, o as Vt, co as cn, cp as js, cq as Gs, cr as Ga, cs as Us, ct as na, x as Mr, cu as ps, cv as Qa, cw as Ir, cx as mo, cy as ho, cz as po, cA as gl, cB as fo, cC as go, cD as xl, cE as xo, cF as $s, cG as vo, cH as yo, cI as dn, cJ as Bt, cK as Ue, cL as jt, cM as No, cN as bo, cO as Co, cP as Jn, cQ as wo, cR as vl, cS as Hn, cT as So, cU as yl, cV as ta, cW as Nl, cX as ko, cY as Do, cZ as Za, c_ as To, c$ as Qn, d0 as Mo, d1 as Io, d2 as Ar, d3 as Ao, E as fs, b as Zn, d4 as Xn, d5 as Eo, d6 as Oo, d7 as er, d8 as Ro, d9 as Fo, da as Po, db as bl, dc as tr, dd as Cl, de as wl, df as Sl, dg as kl, dh as Dl, di as ar, dj as sr, dk as Tl, dl as Ml, dm as Il, dn as nr, dp as Ys, dq as qs, dr as Lo, ds as zo, dt as da, du as _o, dv as Vo, dw as Bo, dx as jo, dy as Go, dz as Uo, dA as ot, dB as ct, dC as Ne, dD as be, dE as Ce, dF as Zt, dG as $o, dH as Yo, dI as qo, dJ as Wo, dK as Ko, y as Jo, dL as Er, dM as Al, dN as Ho, dO as Qo, dP as lt, dQ as Ns, dR as Or, dS as Zo, dT as Rr, dU as Fr, dV as Xo, dW as ec, dX as tc, dY as ac, dZ as rr, d_ as lr, d$ as ir, e0 as Ua, e1 as or, e2 as ra, e3 as sc, e4 as Ws, e5 as El, e6 as nc, e7 as rc, e8 as Pr, e9 as lc, ea as ic, eb as oc, ec as cc, ed as dc, w as Lr, ee as zr, ef as uc, eg as mc, eh as un, ei as hc, ej as Ol, ek as pc, el as fc, em as gc, en as xc, eo as vc, ep as yc, eq as Nc, er as bc, es as Cc, et as wc, eu as Sc, ev as kc, ew as Dc, ex as Tc, ey as Rl, ez as Mc, eA as Ic, eB as mn, eC as Ac, eD as Ts, eE as Ms, eF as $a, eG as Ec, eH as _r, eI as Oc, eJ as hn, eK as Fl, eL as cr, eM as dr, eN as Zs, eO as ur, eP as Rc, eQ as Fc, eR as Pc, eS as Xa, eT as Lc, eU as zc, eV as pn, eW as _c, eX as Vc, eY as Bc, eZ as fn, e_ as gn, e$ as Rs, f0 as jc, f1 as Aa, f2 as es, f3 as Gc, f4 as Uc, f5 as $c, f6 as Yc, f7 as qc, f8 as Wc, f9 as Kc, fa as Jc, F as Pl, fb as Hc, p as Qc, fc as Zc, B as Xc, fd as ed, fe as td, ff as ad, fg as Ll, fh as zl, fi as sd, fj as _l, fk as nd, fl as rd, S as ld, fm as id, U as od, fn as cd, C as dd } from "./index-
|
|
2
|
+
import { L as ie, M as Cn, u as X, N as Tt, O as Mt, P as _, Q as It, T as He, V as wn, I as nt, W as Ke, X as mt, Y as el, Z as Ge, _ as ht, $ as pt, a0 as ft, a1 as At, a2 as U, a3 as Me, a4 as aa, a5 as xe, a6 as Sn, a7 as ga, a8 as _i, a9 as Dr, aa as kn, ab as Y, ac as Dn, ad as Vi, ae as tl, af as Bi, ag as ji, ah as xa, ai as me, j as Tr, aj as Gi, ak as Ui, al as $t, am as Fe, an as ue, ao as Se, ap as ut, aq as Pe, ar as Pa, as as Na, at as La, au as $i, av as ba, aw as st, ax as qe, ay as We, az as ns, aA as Ze, aB as we, aC as Qe, aD as Tn, aE as Is, aF as Da, aG as la, aH as qt, aI as rs, aJ as ls, aK as Yi, aL as Ca, aM as Mn, aN as In, aO as An, aP as En, R as Ut, aQ as al, aR as qi, aS as On, aT as is, aU as Rn, aV as Fn, aW as za, aX as _a, aY as Va, aZ as Pn, a_ as zs, a$ as Ln, b0 as sl, b1 as nl, b2 as zn, b3 as he, b4 as pe, b5 as fe, b6 as ge, b7 as te, b8 as rl, b9 as ll, ba as Wi, bb as Ki, bc as ia, bd as Ji, be as Hi, bf as yt, bg as Nt, bh as Te, bi as it, bj as wt, J as E, bk as Rt, bl as _s, bm as Vs, bn as il, bo as Qi, bp as Xe, bq as Ta, br as oa, bs as As, bt as ol, bu as cl, bv as Zi, bw as _n, bx as Vn, by as Bn, bz as jn, bA as Gn, bB as Un, bC as $n, bD as Yn, bE as ks, bF as Bs, bG as os, K as le, bH as Xi, bI as Dt, bJ as eo, bK as ze, bL as ca, bM as dl, bN as Es, bO as to, bP as qn, bQ as Os, bR as Wn, bS as Ds, bT as Ba, bU as Kn, bV as ao, bW as so, bX as no, bY as ro, bZ as lo, i as io, b_ as ul, b$ as Ja, c0 as Ft, c1 as Pt, c2 as Wt, c3 as Kt, c4 as cs, c5 as ds, c6 as us, c7 as ms, c8 as ma, c9 as ja, ca as Ma, cb as Ia, cc as Et, cd as hs, A as Lt, r as ml, q as hl, l as St, ce as Ot, cf as Be, cg as oo, ch as sa, ci as Xt, cj as pl, ck as co, k as fl, cl as Ha, cm as Qt, cn as uo, n as ea, m as _t, o as Vt, co as cn, cp as js, cq as Gs, cr as Ga, cs as Us, ct as na, x as Mr, cu as ps, cv as Qa, cw as Ir, cx as mo, cy as ho, cz as po, cA as gl, cB as fo, cC as go, cD as xl, cE as xo, cF as $s, cG as vo, cH as yo, cI as dn, cJ as Bt, cK as Ue, cL as jt, cM as No, cN as bo, cO as Co, cP as Jn, cQ as wo, cR as vl, cS as Hn, cT as So, cU as yl, cV as ta, cW as Nl, cX as ko, cY as Do, cZ as Za, c_ as To, c$ as Qn, d0 as Mo, d1 as Io, d2 as Ar, d3 as Ao, E as fs, b as Zn, d4 as Xn, d5 as Eo, d6 as Oo, d7 as er, d8 as Ro, d9 as Fo, da as Po, db as bl, dc as tr, dd as Cl, de as wl, df as Sl, dg as kl, dh as Dl, di as ar, dj as sr, dk as Tl, dl as Ml, dm as Il, dn as nr, dp as Ys, dq as qs, dr as Lo, ds as zo, dt as da, du as _o, dv as Vo, dw as Bo, dx as jo, dy as Go, dz as Uo, dA as ot, dB as ct, dC as Ne, dD as be, dE as Ce, dF as Zt, dG as $o, dH as Yo, dI as qo, dJ as Wo, dK as Ko, y as Jo, dL as Er, dM as Al, dN as Ho, dO as Qo, dP as lt, dQ as Ns, dR as Or, dS as Zo, dT as Rr, dU as Fr, dV as Xo, dW as ec, dX as tc, dY as ac, dZ as rr, d_ as lr, d$ as ir, e0 as Ua, e1 as or, e2 as ra, e3 as sc, e4 as Ws, e5 as El, e6 as nc, e7 as rc, e8 as Pr, e9 as lc, ea as ic, eb as oc, ec as cc, ed as dc, w as Lr, ee as zr, ef as uc, eg as mc, eh as un, ei as hc, ej as Ol, ek as pc, el as fc, em as gc, en as xc, eo as vc, ep as yc, eq as Nc, er as bc, es as Cc, et as wc, eu as Sc, ev as kc, ew as Dc, ex as Tc, ey as Rl, ez as Mc, eA as Ic, eB as mn, eC as Ac, eD as Ts, eE as Ms, eF as $a, eG as Ec, eH as _r, eI as Oc, eJ as hn, eK as Fl, eL as cr, eM as dr, eN as Zs, eO as ur, eP as Rc, eQ as Fc, eR as Pc, eS as Xa, eT as Lc, eU as zc, eV as pn, eW as _c, eX as Vc, eY as Bc, eZ as fn, e_ as gn, e$ as Rs, f0 as jc, f1 as Aa, f2 as es, f3 as Gc, f4 as Uc, f5 as $c, f6 as Yc, f7 as qc, f8 as Wc, f9 as Kc, fa as Jc, F as Pl, fb as Hc, p as Qc, fc as Zc, B as Xc, fd as ed, fe as td, ff as ad, fg as Ll, fh as zl, fi as sd, fj as _l, fk as nd, fl as rd, S as ld, fm as id, U as od, fn as cd, C as dd } from "./index-CuIonuI2.js";
|
|
3
3
|
import * as ua from "react";
|
|
4
4
|
import je, { useState as V, useRef as xt, useEffect as Ie, useMemo as Le, useCallback as De, useContext as mr, Suspense as Vl } from "react";
|
|
5
5
|
import "react-dom";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";const e=require("react/jsx-runtime"),s=require("./index-
|
|
1
|
+
"use strict";const e=require("react/jsx-runtime"),s=require("./index-Ywgaa5lZ.js"),A=require("react");require("react-dom");function ta(t){const n=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const a in t)if(a!=="default"){const r=Object.getOwnPropertyDescriptor(t,a);Object.defineProperty(n,a,r.get?r:{enumerable:!0,get:()=>t[a]})}}return n.default=t,Object.freeze(n)}const Ee=ta(A);/**
|
|
2
2
|
* @license lucide-react v0.453.0 - ISC
|
|
3
3
|
*
|
|
4
4
|
* This source code is licensed under the ISC license.
|
|
@@ -88925,7 +88925,7 @@ function uVe({
|
|
|
88925
88925
|
iconColor: "text-yellow-600 dark:text-yellow-500",
|
|
88926
88926
|
accentBg: "bg-yellow-100 dark:bg-yellow-900/30",
|
|
88927
88927
|
accentText: "text-yellow-900 dark:text-yellow-200"
|
|
88928
|
-
}, J = () => U ? q ? "Configuration validation failed. Retrying..." : "Configuration validation failed" : z === "group_by_error" ? q ? "SQL grouping error. Retrying..." : "SQL grouping error" : z === "syntax_error" ? q ? "SQL syntax error. Retrying..." : "SQL syntax error" : z === "type_mismatch" ? q ? "Data type mismatch. Retrying..." : "Data type mismatch" : q ? "
|
|
88928
|
+
}, J = () => U ? q ? "Configuration validation failed. Retrying..." : "Configuration validation failed" : z === "group_by_error" ? q ? "SQL grouping error. Retrying..." : "SQL grouping error" : z === "syntax_error" ? q ? "SQL syntax error. Retrying..." : "SQL syntax error" : z === "type_mismatch" ? q ? "Data type mismatch. Retrying..." : "Data type mismatch" : q ? "Retrying..." : "Couldn't generate this visual";
|
|
88929
88929
|
return /* @__PURE__ */ _(Be, { children: [
|
|
88930
88930
|
/* @__PURE__ */ p(dg, { open: s, onOpenChange: l, children: /* @__PURE__ */ _(
|
|
88931
88931
|
"div",
|
|
@@ -88953,7 +88953,7 @@ function uVe({
|
|
|
88953
88953
|
{
|
|
88954
88954
|
className: `rounded-md ${Y.accentBg} p-2 ${Y.accentText}`,
|
|
88955
88955
|
children: [
|
|
88956
|
-
/* @__PURE__ */ p("span", { className: "font-semibold", children: "
|
|
88956
|
+
/* @__PURE__ */ p("span", { className: "font-semibold", children: "Fix:" }),
|
|
88957
88957
|
" ",
|
|
88958
88958
|
D
|
|
88959
88959
|
]
|
|
@@ -96000,8 +96000,9 @@ function QK(e) {
|
|
|
96000
96000
|
label: f.label,
|
|
96001
96001
|
description: f.description,
|
|
96002
96002
|
connectionId: o,
|
|
96003
|
+
dialect: f.dialect,
|
|
96003
96004
|
connectionType: i == null ? void 0 : i.type,
|
|
96004
|
-
dialect:
|
|
96005
|
+
// dialect: selectedConnection?.dialect,
|
|
96005
96006
|
type: "model",
|
|
96006
96007
|
database: f.database,
|
|
96007
96008
|
// TODO: this is always undefined
|
|
@@ -96806,6 +96807,7 @@ function jGe({
|
|
|
96806
96807
|
type: "dataset",
|
|
96807
96808
|
connectionId: C.connectionId,
|
|
96808
96809
|
connectionType: C.connectionType,
|
|
96810
|
+
dialect: C.dialect,
|
|
96809
96811
|
datamodelId: C.datamodelId,
|
|
96810
96812
|
sql: C.sql
|
|
96811
96813
|
};
|
|
@@ -96833,6 +96835,7 @@ function jGe({
|
|
|
96833
96835
|
type: "dataset",
|
|
96834
96836
|
connectionId: M.connectionId,
|
|
96835
96837
|
connectionType: M.connectionType,
|
|
96838
|
+
dialect: M.dialect,
|
|
96836
96839
|
datamodelId: M.datamodelId,
|
|
96837
96840
|
sql: M.sql
|
|
96838
96841
|
})
|
|
@@ -932,7 +932,7 @@ prismjs/prism.js:
|
|
|
932
932
|
`))+1))}const i="#".repeat(o),a=n.enter("headingAtx"),l=n.enter("phrasing");s.move(i+" ");let c=n.containerPhrasing(e,{before:"# ",after:`
|
|
933
933
|
`,...s.current()});return/^[\t ]/.test(c)&&(c=gg(c.charCodeAt(0))+c.slice(1)),c=c?i+" "+c:i,n.options.closeAtx&&(c+=" "+i),l(),a(),c}_K.peek=T7e;function _K(e){return e.value||""}function T7e(){return"<"}jK.peek=A7e;function jK(e,t,n,r){const o=jP(n),s=o==='"'?"Quote":"Apostrophe",i=n.enter("image");let a=n.enter("label");const l=n.createTracker(r);let c=l.move("![");return c+=l.move(n.safe(e.alt,{before:c,after:"]",...l.current()})),c+=l.move("]("),a(),!e.url&&e.title||/[\0- \u007F]/.test(e.url)?(a=n.enter("destinationLiteral"),c+=l.move("<"),c+=l.move(n.safe(e.url,{before:c,after:">",...l.current()})),c+=l.move(">")):(a=n.enter("destinationRaw"),c+=l.move(n.safe(e.url,{before:c,after:e.title?" ":")",...l.current()}))),a(),e.title&&(a=n.enter(`title${s}`),c+=l.move(" "+o),c+=l.move(n.safe(e.title,{before:c,after:o,...l.current()})),c+=l.move(o),a()),c+=l.move(")"),i(),c}function A7e(){return"!"}MK.peek=I7e;function MK(e,t,n,r){const o=e.referenceType,s=n.enter("imageReference");let i=n.enter("label");const a=n.createTracker(r);let l=a.move("![");const c=n.safe(e.alt,{before:l,after:"]",...a.current()});l+=a.move(c+"]["),i();const u=n.stack;n.stack=[],i=n.enter("reference");const f=n.safe(n.associationId(e),{before:l,after:"]",...a.current()});return i(),n.stack=u,s(),o==="full"||!c||c!==f?l+=a.move(f+"]"):o==="shortcut"?l=l.slice(0,-1):l+=a.move("]"),l}function I7e(){return"!"}RK.peek=O7e;function RK(e,t,n){let r=e.value||"",o="`",s=-1;for(;new RegExp("(^|[^`])"+o+"([^`]|$)").test(r);)o+="`";for(/[^ \r\n]/.test(r)&&(/^[ \r\n]/.test(r)&&/[ \r\n]$/.test(r)||/^`|`$/.test(r))&&(r=" "+r+" ");++s<n.unsafe.length;){const i=n.unsafe[s],a=n.compilePattern(i);let l;if(i.atBreak)for(;l=a.exec(r);){let c=l.index;r.charCodeAt(c)===10&&r.charCodeAt(c-1)===13&&c--,r=r.slice(0,c)+" "+r.slice(l.index+1)}}return o+r+o}function O7e(){return"`"}function PK(e,t){const n=yP(e);return!!(!t.options.resourceLink&&e.url&&!e.title&&e.children&&e.children.length===1&&e.children[0].type==="text"&&(n===e.url||"mailto:"+n===e.url)&&/^[a-z][a-z+.-]+:/i.test(e.url)&&!/[\0- <>\u007F]/.test(e.url))}DK.peek=F7e;function DK(e,t,n,r){const o=jP(n),s=o==='"'?"Quote":"Apostrophe",i=n.createTracker(r);let a,l;if(PK(e,n)){const u=n.stack;n.stack=[],a=n.enter("autolink");let f=i.move("<");return f+=i.move(n.containerPhrasing(e,{before:f,after:">",...i.current()})),f+=i.move(">"),a(),n.stack=u,f}a=n.enter("link"),l=n.enter("label");let c=i.move("[");return c+=i.move(n.containerPhrasing(e,{before:c,after:"](",...i.current()})),c+=i.move("]("),l(),!e.url&&e.title||/[\0- \u007F]/.test(e.url)?(l=n.enter("destinationLiteral"),c+=i.move("<"),c+=i.move(n.safe(e.url,{before:c,after:">",...i.current()})),c+=i.move(">")):(l=n.enter("destinationRaw"),c+=i.move(n.safe(e.url,{before:c,after:e.title?" ":")",...i.current()}))),l(),e.title&&(l=n.enter(`title${s}`),c+=i.move(" "+o),c+=i.move(n.safe(e.title,{before:c,after:o,...i.current()})),c+=i.move(o),l()),c+=i.move(")"),a(),c}function F7e(e,t,n){return PK(e,n)?"<":"["}TK.peek=$7e;function TK(e,t,n,r){const o=e.referenceType,s=n.enter("linkReference");let i=n.enter("label");const a=n.createTracker(r);let l=a.move("[");const c=n.containerPhrasing(e,{before:l,after:"]",...a.current()});l+=a.move(c+"]["),i();const u=n.stack;n.stack=[],i=n.enter("reference");const f=n.safe(n.associationId(e),{before:l,after:"]",...a.current()});return i(),n.stack=u,s(),o==="full"||!c||c!==f?l+=a.move(f+"]"):o==="shortcut"?l=l.slice(0,-1):l+=a.move("]"),l}function $7e(){return"["}function MP(e){const t=e.options.bullet||"*";if(t!=="*"&&t!=="+"&&t!=="-")throw new Error("Cannot serialize items with `"+t+"` for `options.bullet`, expected `*`, `+`, or `-`");return t}function L7e(e){const t=MP(e),n=e.options.bulletOther;if(!n)return t==="*"?"-":"*";if(n!=="*"&&n!=="+"&&n!=="-")throw new Error("Cannot serialize items with `"+n+"` for `options.bulletOther`, expected `*`, `+`, or `-`");if(n===t)throw new Error("Expected `bullet` (`"+t+"`) and `bulletOther` (`"+n+"`) to be different");return n}function z7e(e){const t=e.options.bulletOrdered||".";if(t!=="."&&t!==")")throw new Error("Cannot serialize items with `"+t+"` for `options.bulletOrdered`, expected `.` or `)`");return t}function AK(e){const t=e.options.rule||"*";if(t!=="*"&&t!=="-"&&t!=="_")throw new Error("Cannot serialize rules with `"+t+"` for `options.rule`, expected `*`, `-`, or `_`");return t}function B7e(e,t,n,r){const o=n.enter("list"),s=n.bulletCurrent;let i=e.ordered?z7e(n):MP(n);const a=e.ordered?i==="."?")":".":L7e(n);let l=t&&n.bulletLastUsed?i===n.bulletLastUsed:!1;if(!e.ordered){const u=e.children?e.children[0]:void 0;if((i==="*"||i==="-")&&u&&(!u.children||!u.children[0])&&n.stack[n.stack.length-1]==="list"&&n.stack[n.stack.length-2]==="listItem"&&n.stack[n.stack.length-3]==="list"&&n.stack[n.stack.length-4]==="listItem"&&n.indexStack[n.indexStack.length-1]===0&&n.indexStack[n.indexStack.length-2]===0&&n.indexStack[n.indexStack.length-3]===0&&(l=!0),AK(n)===i&&u){let f=-1;for(;++f<e.children.length;){const h=e.children[f];if(h&&h.type==="listItem"&&h.children&&h.children[0]&&h.children[0].type==="thematicBreak"){l=!0;break}}}}l&&(i=a),n.bulletCurrent=i;const c=n.containerFlow(e,r);return n.bulletLastUsed=i,n.bulletCurrent=s,o(),c}function V7e(e){const t=e.options.listItemIndent||"one";if(t!=="tab"&&t!=="one"&&t!=="mixed")throw new Error("Cannot serialize items with `"+t+"` for `options.listItemIndent`, expected `tab`, `one`, or `mixed`");return t}function H7e(e,t,n,r){const o=V7e(n);let s=n.bulletCurrent||MP(n);t&&t.type==="list"&&t.ordered&&(s=(typeof t.start=="number"&&t.start>-1?t.start:1)+(n.options.incrementListMarker===!1?0:t.children.indexOf(e))+s);let i=s.length+1;(o==="tab"||o==="mixed"&&(t&&t.type==="list"&&t.spread||e.spread))&&(i=Math.ceil(i/4)*4);const a=n.createTracker(r);a.move(s+" ".repeat(i-s.length)),a.shift(i);const l=n.enter("listItem"),c=n.indentLines(n.containerFlow(e,a.current()),u);return l(),c;function u(f,h,p){return h?(p?"":" ".repeat(i))+f:(p?s:s+" ".repeat(i-s.length))+f}}function U7e(e,t,n,r){const o=n.enter("paragraph"),s=n.enter("phrasing"),i=n.containerPhrasing(e,r);return s(),o(),i}const W7e=W1(["break","delete","emphasis","footnote","footnoteReference","image","imageReference","inlineCode","inlineMath","link","linkReference","mdxJsxTextElement","mdxTextExpression","strong","text","textDirective"]);function q7e(e,t,n,r){return(e.children.some(function(i){return W7e(i)})?n.containerPhrasing:n.containerFlow).call(n,e,r)}function G7e(e){const t=e.options.strong||"*";if(t!=="*"&&t!=="_")throw new Error("Cannot serialize strong with `"+t+"` for `options.strong`, expected `*`, or `_`");return t}IK.peek=Y7e;function IK(e,t,n,r){const o=G7e(n),s=n.enter("strong"),i=n.createTracker(r),a=i.move(o+o);let l=i.move(n.containerPhrasing(e,{after:o,before:a,...i.current()}));const c=l.charCodeAt(0),u=Sv(r.before.charCodeAt(r.before.length-1),c,o);u.inside&&(l=gg(c)+l.slice(1));const f=l.charCodeAt(l.length-1),h=Sv(r.after.charCodeAt(0),f,o);h.inside&&(l=l.slice(0,-1)+gg(f));const p=i.move(o+o);return s(),n.attentionEncodeSurroundingInfo={after:h.outside,before:u.outside},a+l+p}function Y7e(e,t,n){return n.options.strong||"*"}function Z7e(e,t,n,r){return n.safe(e.value,r)}function K7e(e){const t=e.options.ruleRepetition||3;if(t<3)throw new Error("Cannot serialize rules with repetition `"+t+"` for `options.ruleRepetition`, expected `3` or more");return t}function X7e(e,t,n){const r=(AK(n)+(n.options.ruleSpaces?" ":"")).repeat(K7e(n));return n.options.ruleSpaces?r.slice(0,-1):r}const OK={blockquote:v7e,break:PF,code:k7e,definition:j7e,emphasis:kK,hardBreak:PF,heading:D7e,html:_K,image:jK,imageReference:MK,inlineCode:RK,link:DK,linkReference:TK,list:B7e,listItem:H7e,paragraph:U7e,root:q7e,strong:IK,text:Z7e,thematicBreak:X7e};function Q7e(){return{enter:{table:J7e,tableData:DF,tableHeader:DF,tableRow:tBe},exit:{codeText:nBe,table:eBe,tableData:I2,tableHeader:I2,tableRow:I2}}}function J7e(e){const t=e._align;this.enter({type:"table",align:t.map(function(n){return n==="none"?null:n}),children:[]},e),this.data.inTable=!0}function eBe(e){this.exit(e),this.data.inTable=void 0}function tBe(e){this.enter({type:"tableRow",children:[]},e)}function I2(e){this.exit(e)}function DF(e){this.enter({type:"tableCell",children:[]},e)}function nBe(e){let t=this.resume();this.data.inTable&&(t=t.replace(/\\([\\|])/g,rBe));const n=this.stack[this.stack.length-1];n.type,n.value=t,this.exit(e)}function rBe(e,t){return t==="|"?t:e}function oBe(e){const t=e||{},n=t.tableCellPadding,r=t.tablePipeAlign,o=t.stringLength,s=n?" ":"|";return{unsafe:[{character:"\r",inConstruct:"tableCell"},{character:`
|
|
934
934
|
`,inConstruct:"tableCell"},{atBreak:!0,character:"|",after:"[ :-]"},{character:"|",inConstruct:"tableCell"},{atBreak:!0,character:":",after:"-"},{atBreak:!0,character:"-",after:"[:|-]"}],handlers:{inlineCode:h,table:i,tableCell:l,tableRow:a}};function i(p,m,g,b){return c(u(p,g,b),p.align)}function a(p,m,g,b){const y=f(p,g,b),x=c([y]);return x.slice(0,x.indexOf(`
|
|
935
|
-
`))}function l(p,m,g,b){const y=g.enter("tableCell"),x=g.enter("phrasing"),v=g.containerPhrasing(p,{...b,before:s,after:s});return x(),y(),v}function c(p,m){return y7e(p,{align:m,alignDelimiters:r,padding:n,stringLength:o})}function u(p,m,g){const b=p.children;let y=-1;const x=[],v=m.enter("table");for(;++y<b.length;)x[y]=f(b[y],m,g);return v(),x}function f(p,m,g){const b=p.children;let y=-1;const x=[],v=m.enter("tableRow");for(;++y<b.length;)x[y]=l(b[y],p,m,g);return v(),x}function h(p,m,g){let b=OK.inlineCode(p,m,g);return g.stack.includes("tableCell")&&(b=b.replace(/\|/g,"\\$&")),b}}function sBe(){return{exit:{taskListCheckValueChecked:TF,taskListCheckValueUnchecked:TF,paragraph:aBe}}}function iBe(){return{unsafe:[{atBreak:!0,character:"-",after:"[:|-]"}],handlers:{listItem:lBe}}}function TF(e){const t=this.stack[this.stack.length-2];t.type,t.checked=e.type==="taskListCheckValueChecked"}function aBe(e){const t=this.stack[this.stack.length-2];if(t&&t.type==="listItem"&&typeof t.checked=="boolean"){const n=this.stack[this.stack.length-1];n.type;const r=n.children[0];if(r&&r.type==="text"){const o=t.children;let s=-1,i;for(;++s<o.length;){const a=o[s];if(a.type==="paragraph"){i=a;break}}i===n&&(r.value=r.value.slice(1),r.value.length===0?n.children.shift():n.position&&r.position&&typeof r.position.start.offset=="number"&&(r.position.start.column++,r.position.start.offset++,n.position.start=Object.assign({},r.position.start)))}}this.exit(e)}function lBe(e,t,n,r){const o=e.children[0],s=typeof e.checked=="boolean"&&o&&o.type==="paragraph",i="["+(e.checked?"x":" ")+"] ",a=n.createTracker(r);s&&a.move(i);let l=OK.listItem(e,t,n,{...r,...a.current()});return s&&(l=l.replace(/^(?:[*+-]|\d+\.)([\r\n]| {1,3})/,c)),l;function c(u){return u+i}}function cBe(){return[B9e(),l7e(),f7e(),Q7e(),sBe()]}function uBe(e){return{extensions:[V9e(),c7e(e),h7e(),oBe(e),iBe()]}}const dBe={tokenize:bBe,partial:!0},FK={tokenize:yBe,partial:!0},$K={tokenize:xBe,partial:!0},LK={tokenize:vBe,partial:!0},fBe={tokenize:wBe,partial:!0},zK={name:"wwwAutolink",tokenize:mBe,previous:VK},BK={name:"protocolAutolink",tokenize:gBe,previous:HK},ol={name:"emailAutolink",tokenize:pBe,previous:UK},ca={};function hBe(){return{text:ca}}let Cc=48;for(;Cc<123;)ca[Cc]=ol,Cc++,Cc===58?Cc=65:Cc===91&&(Cc=97);ca[43]=ol;ca[45]=ol;ca[46]=ol;ca[95]=ol;ca[72]=[ol,BK];ca[104]=[ol,BK];ca[87]=[ol,zK];ca[119]=[ol,zK];function pBe(e,t,n){const r=this;let o,s;return i;function i(f){return!Vk(f)||!UK.call(r,r.previous)||RP(r.events)?n(f):(e.enter("literalAutolink"),e.enter("literalAutolinkEmail"),a(f))}function a(f){return Vk(f)?(e.consume(f),a):f===64?(e.consume(f),l):n(f)}function l(f){return f===46?e.check(fBe,u,c)(f):f===45||f===95||Ur(f)?(s=!0,e.consume(f),l):u(f)}function c(f){return e.consume(f),o=!0,l}function u(f){return s&&o&&oo(r.previous)?(e.exit("literalAutolinkEmail"),e.exit("literalAutolink"),t(f)):n(f)}}function mBe(e,t,n){const r=this;return o;function o(i){return i!==87&&i!==119||!VK.call(r,r.previous)||RP(r.events)?n(i):(e.enter("literalAutolink"),e.enter("literalAutolinkWww"),e.check(dBe,e.attempt(FK,e.attempt($K,s),n),n)(i))}function s(i){return e.exit("literalAutolinkWww"),e.exit("literalAutolink"),t(i)}}function gBe(e,t,n){const r=this;let o="",s=!1;return i;function i(f){return(f===72||f===104)&&HK.call(r,r.previous)&&!RP(r.events)?(e.enter("literalAutolink"),e.enter("literalAutolinkHttp"),o+=String.fromCodePoint(f),e.consume(f),a):n(f)}function a(f){if(oo(f)&&o.length<5)return o+=String.fromCodePoint(f),e.consume(f),a;if(f===58){const h=o.toLowerCase();if(h==="http"||h==="https")return e.consume(f),l}return n(f)}function l(f){return f===47?(e.consume(f),s?c:(s=!0,l)):n(f)}function c(f){return f===null||yv(f)||pn(f)||Lu(f)||V1(f)?n(f):e.attempt(FK,e.attempt($K,u),n)(f)}function u(f){return e.exit("literalAutolinkHttp"),e.exit("literalAutolink"),t(f)}}function bBe(e,t,n){let r=0;return o;function o(i){return(i===87||i===119)&&r<3?(r++,e.consume(i),o):i===46&&r===3?(e.consume(i),s):n(i)}function s(i){return i===null?n(i):t(i)}}function yBe(e,t,n){let r,o,s;return i;function i(c){return c===46||c===95?e.check(LK,l,a)(c):c===null||pn(c)||Lu(c)||c!==45&&V1(c)?l(c):(s=!0,e.consume(c),i)}function a(c){return c===95?r=!0:(o=r,r=void 0),e.consume(c),i}function l(c){return o||r||!s?n(c):t(c)}}function xBe(e,t){let n=0,r=0;return o;function o(i){return i===40?(n++,e.consume(i),o):i===41&&r<n?s(i):i===33||i===34||i===38||i===39||i===41||i===42||i===44||i===46||i===58||i===59||i===60||i===63||i===93||i===95||i===126?e.check(LK,t,s)(i):i===null||pn(i)||Lu(i)?t(i):(e.consume(i),o)}function s(i){return i===41&&r++,e.consume(i),o}}function vBe(e,t,n){return r;function r(a){return a===33||a===34||a===39||a===41||a===42||a===44||a===46||a===58||a===59||a===63||a===95||a===126?(e.consume(a),r):a===38?(e.consume(a),s):a===93?(e.consume(a),o):a===60||a===null||pn(a)||Lu(a)?t(a):n(a)}function o(a){return a===null||a===40||a===91||pn(a)||Lu(a)?t(a):r(a)}function s(a){return oo(a)?i(a):n(a)}function i(a){return a===59?(e.consume(a),r):oo(a)?(e.consume(a),i):n(a)}}function wBe(e,t,n){return r;function r(s){return e.consume(s),o}function o(s){return Ur(s)?n(s):t(s)}}function VK(e){return e===null||e===40||e===42||e===95||e===91||e===93||e===126||pn(e)}function HK(e){return!oo(e)}function UK(e){return!(e===47||Vk(e))}function Vk(e){return e===43||e===45||e===46||e===95||Ur(e)}function RP(e){let t=e.length,n=!1;for(;t--;){const r=e[t][1];if((r.type==="labelLink"||r.type==="labelImage")&&!r._balanced){n=!0;break}if(r._gfmAutolinkLiteralWalkedInto){n=!1;break}}return e.length>0&&!n&&(e[e.length-1][1]._gfmAutolinkLiteralWalkedInto=!0),n}const SBe={tokenize:RBe,partial:!0};function CBe(){return{document:{91:{name:"gfmFootnoteDefinition",tokenize:_Be,continuation:{tokenize:jBe},exit:MBe}},text:{91:{name:"gfmFootnoteCall",tokenize:kBe},93:{name:"gfmPotentialFootnoteCall",add:"after",tokenize:EBe,resolveTo:NBe}}}}function EBe(e,t,n){const r=this;let o=r.events.length;const s=r.parser.gfmFootnotes||(r.parser.gfmFootnotes=[]);let i;for(;o--;){const l=r.events[o][1];if(l.type==="labelImage"){i=l;break}if(l.type==="gfmFootnoteCall"||l.type==="labelLink"||l.type==="label"||l.type==="image"||l.type==="link")break}return a;function a(l){if(!i||!i._balanced)return n(l);const c=Xs(r.sliceSerialize({start:i.end,end:r.now()}));return c.codePointAt(0)!==94||!s.includes(c.slice(1))?n(l):(e.enter("gfmFootnoteCallLabelMarker"),e.consume(l),e.exit("gfmFootnoteCallLabelMarker"),t(l))}}function NBe(e,t){let n=e.length;for(;n--;)if(e[n][1].type==="labelImage"&&e[n][0]==="enter"){e[n][1];break}e[n+1][1].type="data",e[n+3][1].type="gfmFootnoteCallLabelMarker";const r={type:"gfmFootnoteCall",start:Object.assign({},e[n+3][1].start),end:Object.assign({},e[e.length-1][1].end)},o={type:"gfmFootnoteCallMarker",start:Object.assign({},e[n+3][1].end),end:Object.assign({},e[n+3][1].end)};o.end.column++,o.end.offset++,o.end._bufferIndex++;const s={type:"gfmFootnoteCallString",start:Object.assign({},o.end),end:Object.assign({},e[e.length-1][1].start)},i={type:"chunkString",contentType:"string",start:Object.assign({},s.start),end:Object.assign({},s.end)},a=[e[n+1],e[n+2],["enter",r,t],e[n+3],e[n+4],["enter",o,t],["exit",o,t],["enter",s,t],["enter",i,t],["exit",i,t],["exit",s,t],e[e.length-2],e[e.length-1],["exit",r,t]];return e.splice(n,e.length-n+1,...a),e}function kBe(e,t,n){const r=this,o=r.parser.gfmFootnotes||(r.parser.gfmFootnotes=[]);let s=0,i;return a;function a(f){return e.enter("gfmFootnoteCall"),e.enter("gfmFootnoteCallLabelMarker"),e.consume(f),e.exit("gfmFootnoteCallLabelMarker"),l}function l(f){return f!==94?n(f):(e.enter("gfmFootnoteCallMarker"),e.consume(f),e.exit("gfmFootnoteCallMarker"),e.enter("gfmFootnoteCallString"),e.enter("chunkString").contentType="string",c)}function c(f){if(s>999||f===93&&!i||f===null||f===91||pn(f))return n(f);if(f===93){e.exit("chunkString");const h=e.exit("gfmFootnoteCallString");return o.includes(Xs(r.sliceSerialize(h)))?(e.enter("gfmFootnoteCallLabelMarker"),e.consume(f),e.exit("gfmFootnoteCallLabelMarker"),e.exit("gfmFootnoteCall"),t):n(f)}return pn(f)||(i=!0),s++,e.consume(f),f===92?u:c}function u(f){return f===91||f===92||f===93?(e.consume(f),s++,c):c(f)}}function _Be(e,t,n){const r=this,o=r.parser.gfmFootnotes||(r.parser.gfmFootnotes=[]);let s,i=0,a;return l;function l(m){return e.enter("gfmFootnoteDefinition")._container=!0,e.enter("gfmFootnoteDefinitionLabel"),e.enter("gfmFootnoteDefinitionLabelMarker"),e.consume(m),e.exit("gfmFootnoteDefinitionLabelMarker"),c}function c(m){return m===94?(e.enter("gfmFootnoteDefinitionMarker"),e.consume(m),e.exit("gfmFootnoteDefinitionMarker"),e.enter("gfmFootnoteDefinitionLabelString"),e.enter("chunkString").contentType="string",u):n(m)}function u(m){if(i>999||m===93&&!a||m===null||m===91||pn(m))return n(m);if(m===93){e.exit("chunkString");const g=e.exit("gfmFootnoteDefinitionLabelString");return s=Xs(r.sliceSerialize(g)),e.enter("gfmFootnoteDefinitionLabelMarker"),e.consume(m),e.exit("gfmFootnoteDefinitionLabelMarker"),e.exit("gfmFootnoteDefinitionLabel"),h}return pn(m)||(a=!0),i++,e.consume(m),m===92?f:u}function f(m){return m===91||m===92||m===93?(e.consume(m),i++,u):u(m)}function h(m){return m===58?(e.enter("definitionMarker"),e.consume(m),e.exit("definitionMarker"),o.includes(s)||o.push(s),zt(e,p,"gfmFootnoteDefinitionWhitespace")):n(m)}function p(m){return t(m)}}function jBe(e,t,n){return e.check(Tb,t,e.attempt(SBe,t,n))}function MBe(e){e.exit("gfmFootnoteDefinition")}function RBe(e,t,n){const r=this;return zt(e,o,"gfmFootnoteDefinitionIndent",5);function o(s){const i=r.events[r.events.length-1];return i&&i[1].type==="gfmFootnoteDefinitionIndent"&&i[2].sliceSerialize(i[1],!0).length===4?t(s):n(s)}}function PBe(e){let n=(e||{}).singleTilde;const r={name:"strikethrough",tokenize:s,resolveAll:o};return n==null&&(n=!0),{text:{126:r},insideSpan:{null:[r]},attentionMarkers:{null:[126]}};function o(i,a){let l=-1;for(;++l<i.length;)if(i[l][0]==="enter"&&i[l][1].type==="strikethroughSequenceTemporary"&&i[l][1]._close){let c=l;for(;c--;)if(i[c][0]==="exit"&&i[c][1].type==="strikethroughSequenceTemporary"&&i[c][1]._open&&i[l][1].end.offset-i[l][1].start.offset===i[c][1].end.offset-i[c][1].start.offset){i[l][1].type="strikethroughSequence",i[c][1].type="strikethroughSequence";const u={type:"strikethrough",start:Object.assign({},i[c][1].start),end:Object.assign({},i[l][1].end)},f={type:"strikethroughText",start:Object.assign({},i[c][1].end),end:Object.assign({},i[l][1].start)},h=[["enter",u,a],["enter",i[c][1],a],["exit",i[c][1],a],["enter",f,a]],p=a.parser.constructs.insideSpan.null;p&&Yo(h,h.length,0,H1(p,i.slice(c+1,l),a)),Yo(h,h.length,0,[["exit",f,a],["enter",i[l][1],a],["exit",i[l][1],a],["exit",u,a]]),Yo(i,c-1,l-c+3,h),l=c+h.length-2;break}}for(l=-1;++l<i.length;)i[l][1].type==="strikethroughSequenceTemporary"&&(i[l][1].type="data");return i}function s(i,a,l){const c=this.previous,u=this.events;let f=0;return h;function h(m){return c===126&&u[u.length-1][1].type!=="characterEscape"?l(m):(i.enter("strikethroughSequenceTemporary"),p(m))}function p(m){const g=nh(c);if(m===126)return f>1?l(m):(i.consume(m),f++,p);if(f<2&&!n)return l(m);const b=i.exit("strikethroughSequenceTemporary"),y=nh(m);return b._open=!y||y===2&&!!g,b._close=!g||g===2&&!!y,a(m)}}}class DBe{constructor(){this.map=[]}add(t,n,r){TBe(this,t,n,r)}consume(t){if(this.map.sort(function(s,i){return s[0]-i[0]}),this.map.length===0)return;let n=this.map.length;const r=[];for(;n>0;)n-=1,r.push(t.slice(this.map[n][0]+this.map[n][1]),this.map[n][2]),t.length=this.map[n][0];r.push(t.slice()),t.length=0;let o=r.pop();for(;o;){for(const s of o)t.push(s);o=r.pop()}this.map.length=0}}function TBe(e,t,n,r){let o=0;if(!(n===0&&r.length===0)){for(;o<e.map.length;){if(e.map[o][0]===t){e.map[o][1]+=n,e.map[o][2].push(...r);return}o+=1}e.map.push([t,n,r])}}function ABe(e,t){let n=!1;const r=[];for(;t<e.length;){const o=e[t];if(n){if(o[0]==="enter")o[1].type==="tableContent"&&r.push(e[t+1][1].type==="tableDelimiterMarker"?"left":"none");else if(o[1].type==="tableContent"){if(e[t-1][1].type==="tableDelimiterMarker"){const s=r.length-1;r[s]=r[s]==="left"?"center":"right"}}else if(o[1].type==="tableDelimiterRow")break}else o[0]==="enter"&&o[1].type==="tableDelimiterRow"&&(n=!0);t+=1}return r}function IBe(){return{flow:{null:{name:"table",tokenize:OBe,resolveAll:FBe}}}}function OBe(e,t,n){const r=this;let o=0,s=0,i;return a;function a(j){let A=r.events.length-1;for(;A>-1;){const T=r.events[A][1].type;if(T==="lineEnding"||T==="linePrefix")A--;else break}const R=A>-1?r.events[A][1].type:null,F=R==="tableHead"||R==="tableRow"?C:l;return F===C&&r.parser.lazy[r.now().line]?n(j):F(j)}function l(j){return e.enter("tableHead"),e.enter("tableRow"),c(j)}function c(j){return j===124||(i=!0,s+=1),u(j)}function u(j){return j===null?n(j):Ye(j)?s>1?(s=0,r.interrupt=!0,e.exit("tableRow"),e.enter("lineEnding"),e.consume(j),e.exit("lineEnding"),p):n(j):Nt(j)?zt(e,u,"whitespace")(j):(s+=1,i&&(i=!1,o+=1),j===124?(e.enter("tableCellDivider"),e.consume(j),e.exit("tableCellDivider"),i=!0,u):(e.enter("data"),f(j)))}function f(j){return j===null||j===124||pn(j)?(e.exit("data"),u(j)):(e.consume(j),j===92?h:f)}function h(j){return j===92||j===124?(e.consume(j),f):f(j)}function p(j){return r.interrupt=!1,r.parser.lazy[r.now().line]?n(j):(e.enter("tableDelimiterRow"),i=!1,Nt(j)?zt(e,m,"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(j):m(j))}function m(j){return j===45||j===58?b(j):j===124?(i=!0,e.enter("tableCellDivider"),e.consume(j),e.exit("tableCellDivider"),g):S(j)}function g(j){return Nt(j)?zt(e,b,"whitespace")(j):b(j)}function b(j){return j===58?(s+=1,i=!0,e.enter("tableDelimiterMarker"),e.consume(j),e.exit("tableDelimiterMarker"),y):j===45?(s+=1,y(j)):j===null||Ye(j)?w(j):S(j)}function y(j){return j===45?(e.enter("tableDelimiterFiller"),x(j)):S(j)}function x(j){return j===45?(e.consume(j),x):j===58?(i=!0,e.exit("tableDelimiterFiller"),e.enter("tableDelimiterMarker"),e.consume(j),e.exit("tableDelimiterMarker"),v):(e.exit("tableDelimiterFiller"),v(j))}function v(j){return Nt(j)?zt(e,w,"whitespace")(j):w(j)}function w(j){return j===124?m(j):j===null||Ye(j)?!i||o!==s?S(j):(e.exit("tableDelimiterRow"),e.exit("tableHead"),t(j)):S(j)}function S(j){return n(j)}function C(j){return e.enter("tableRow"),k(j)}function k(j){return j===124?(e.enter("tableCellDivider"),e.consume(j),e.exit("tableCellDivider"),k):j===null||Ye(j)?(e.exit("tableRow"),t(j)):Nt(j)?zt(e,k,"whitespace")(j):(e.enter("data"),_(j))}function _(j){return j===null||j===124||pn(j)?(e.exit("data"),k(j)):(e.consume(j),j===92?M:_)}function M(j){return j===92||j===124?(e.consume(j),_):_(j)}}function FBe(e,t){let n=-1,r=!0,o=0,s=[0,0,0,0],i=[0,0,0,0],a=!1,l=0,c,u,f;const h=new DBe;for(;++n<e.length;){const p=e[n],m=p[1];p[0]==="enter"?m.type==="tableHead"?(a=!1,l!==0&&(AF(h,t,l,c,u),u=void 0,l=0),c={type:"table",start:Object.assign({},m.start),end:Object.assign({},m.end)},h.add(n,0,[["enter",c,t]])):m.type==="tableRow"||m.type==="tableDelimiterRow"?(r=!0,f=void 0,s=[0,0,0,0],i=[0,n+1,0,0],a&&(a=!1,u={type:"tableBody",start:Object.assign({},m.start),end:Object.assign({},m.end)},h.add(n,0,[["enter",u,t]])),o=m.type==="tableDelimiterRow"?2:u?3:1):o&&(m.type==="data"||m.type==="tableDelimiterMarker"||m.type==="tableDelimiterFiller")?(r=!1,i[2]===0&&(s[1]!==0&&(i[0]=i[1],f=l0(h,t,s,o,void 0,f),s=[0,0,0,0]),i[2]=n)):m.type==="tableCellDivider"&&(r?r=!1:(s[1]!==0&&(i[0]=i[1],f=l0(h,t,s,o,void 0,f)),s=i,i=[s[1],n,0,0])):m.type==="tableHead"?(a=!0,l=n):m.type==="tableRow"||m.type==="tableDelimiterRow"?(l=n,s[1]!==0?(i[0]=i[1],f=l0(h,t,s,o,n,f)):i[1]!==0&&(f=l0(h,t,i,o,n,f)),o=0):o&&(m.type==="data"||m.type==="tableDelimiterMarker"||m.type==="tableDelimiterFiller")&&(i[3]=n)}for(l!==0&&AF(h,t,l,c,u),h.consume(t.events),n=-1;++n<t.events.length;){const p=t.events[n];p[0]==="enter"&&p[1].type==="table"&&(p[1]._align=ABe(t.events,n))}return e}function l0(e,t,n,r,o,s){const i=r===1?"tableHeader":r===2?"tableDelimiter":"tableData",a="tableContent";n[0]!==0&&(s.end=Object.assign({},Ad(t.events,n[0])),e.add(n[0],0,[["exit",s,t]]));const l=Ad(t.events,n[1]);if(s={type:i,start:Object.assign({},l),end:Object.assign({},l)},e.add(n[1],0,[["enter",s,t]]),n[2]!==0){const c=Ad(t.events,n[2]),u=Ad(t.events,n[3]),f={type:a,start:Object.assign({},c),end:Object.assign({},u)};if(e.add(n[2],0,[["enter",f,t]]),r!==2){const h=t.events[n[2]],p=t.events[n[3]];if(h[1].end=Object.assign({},p[1].end),h[1].type="chunkText",h[1].contentType="text",n[3]>n[2]+1){const m=n[2]+1,g=n[3]-n[2]-1;e.add(m,g,[])}}e.add(n[3]+1,0,[["exit",f,t]])}return o!==void 0&&(s.end=Object.assign({},Ad(t.events,o)),e.add(o,0,[["exit",s,t]]),s=void 0),s}function AF(e,t,n,r,o){const s=[],i=Ad(t.events,n);o&&(o.end=Object.assign({},i),s.push(["exit",o,t])),r.end=Object.assign({},i),s.push(["exit",r,t]),e.add(n+1,0,s)}function Ad(e,t){const n=e[t],r=n[0]==="enter"?"start":"end";return n[1][r]}const $Be={name:"tasklistCheck",tokenize:zBe};function LBe(){return{text:{91:$Be}}}function zBe(e,t,n){const r=this;return o;function o(l){return r.previous!==null||!r._gfmTasklistFirstContentOfListItem?n(l):(e.enter("taskListCheck"),e.enter("taskListCheckMarker"),e.consume(l),e.exit("taskListCheckMarker"),s)}function s(l){return pn(l)?(e.enter("taskListCheckValueUnchecked"),e.consume(l),e.exit("taskListCheckValueUnchecked"),i):l===88||l===120?(e.enter("taskListCheckValueChecked"),e.consume(l),e.exit("taskListCheckValueChecked"),i):n(l)}function i(l){return l===93?(e.enter("taskListCheckMarker"),e.consume(l),e.exit("taskListCheckMarker"),e.exit("taskListCheck"),a):n(l)}function a(l){return Ye(l)?t(l):Nt(l)?e.check({tokenize:BBe},t,n)(l):n(l)}}function BBe(e,t,n){return zt(e,r,"whitespace");function r(o){return o===null?n(o):t(o)}}function VBe(e){return KZ([hBe(),CBe(),PBe(e),IBe(),LBe()])}const HBe={};function UBe(e){const t=this,n=e||HBe,r=t.data(),o=r.micromarkExtensions||(r.micromarkExtensions=[]),s=r.fromMarkdownExtensions||(r.fromMarkdownExtensions=[]),i=r.toMarkdownExtensions||(r.toMarkdownExtensions=[]);o.push(VBe(n)),s.push(cBe()),i.push(uBe(n))}function IF({text:e,handleRun:t,className:n}){const r=ee(s=>s.themeStyle),o={p:({node:s,...i})=>d.jsx("p",{className:Y("text-sm leading-relaxed mb-4 text-foreground/90",n),...i}),code:({node:s,...i})=>{var l,c;const a=(c=(l=s==null?void 0:s.children)==null?void 0:l[0])==null?void 0:c.value;return a&&/^#([0-9a-fA-F]{6})$/.test(a)?d.jsx("code",{className:Y("rounded-lg bg-muted px-2.5 py-1.5 text-sm font-mono",n),style:{backgroundColor:a},...i}):d.jsx("code",{className:Y("rounded-lg bg-muted/50 border border-border/50 px-2 py-1 text-sm font-mono text-foreground/80 transition-colors hover:bg-muted/70",n),...i})},pre:s=>d.jsx(I9e,{...s,handleRun:t}),ul:({node:s,...i})=>d.jsx("ul",{className:Y("mb-4 ml-6 list-disc space-y-2 text-sm marker:text-muted-foreground",n),...i}),ol:({node:s,...i})=>d.jsx("ol",{className:Y("mb-4 ml-6 list-decimal space-y-2 text-sm marker:text-muted-foreground",n),...i}),li:({node:s,...i})=>d.jsx("li",{className:Y("pl-2 leading-relaxed text-foreground/90",n),...i}),a:({node:s,...i})=>d.jsx("a",{target:"_blank",rel:"noopener noreferrer",className:Y("text-blue-600 underline underline-offset-2 decoration-1 transition-all hover:text-blue-700 hover:decoration-2",n),...i}),h1:({node:s,...i})=>d.jsx("h1",{className:Y("text-2xl font-semibold tracking-tight mb-4 mt-6 text-foreground",n),...i}),h2:({node:s,...i})=>d.jsx("h2",{className:Y("text-xl font-semibold tracking-tight mb-3 mt-5 text-foreground",n),...i}),h3:({node:s,...i})=>d.jsx("h3",{className:Y("text-lg font-medium mb-2 mt-4 text-foreground",n),...i}),h4:({node:s,...i})=>d.jsx("h4",{className:Y("text-base font-medium mb-2 mt-3 text-foreground/90",n),...i}),strong:({node:s,...i})=>d.jsx("strong",{className:Y("font-semibold text-foreground",n),...i}),blockquote:({node:s,...i})=>d.jsx("blockquote",{className:Y("my-4 border-l-4 border-muted-foreground/30 bg-muted/20 pl-4 pr-4 py-3 italic text-foreground/80 rounded-r-md",n),...i}),table:({node:s,...i})=>d.jsx("div",{className:"my-6 overflow-x-auto rounded-lg border border-border/50 shadow-sm",children:d.jsx("table",{className:Y("w-full table-auto border-collapse text-sm",n),...i})}),thead:({node:s,...i})=>{var a,l,c,u,f,h;return d.jsx("thead",{style:{backgroundColor:(c=(l=(a=r==null?void 0:r.chart)==null?void 0:a.dataset)==null?void 0:l.backgroundColor)==null?void 0:c[0],color:Ia((h=(f=(u=r==null?void 0:r.chart)==null?void 0:u.dataset)==null?void 0:f.backgroundColor)==null?void 0:h[0])},className:"sticky top-0",...i})},tr:({node:s,...i})=>d.jsx("tr",{className:Y("border-b border-border/30 transition-colors hover:bg-muted/30 last:border-0",n),...i}),th:({node:s,...i})=>d.jsx("th",{className:Y("px-4 py-3 text-left font-medium text-sm tracking-wide",n),...i}),td:({node:s,...i})=>d.jsx("td",{className:Y("px-4 py-3 align-top text-foreground/90",n),...i})};return d.jsx(kze,{components:o,remarkPlugins:[UBe],children:e})}const zu=["image/png","image/jpeg","image/jpg","image/gif","image/webp"],WBe=["application/pdf","text/plain","text/markdown"],qBe=["text/csv","application/json","text/xml","application/xml"],GBe=["text/javascript","application/javascript","text/typescript","application/x-typescript","text/x-python","application/x-python-code","text/x-sql","application/sql"],YBe=[...zu,...WBe,...qBe,...GBe],WK=10*1024*1024,va=5,qK={".png":"image/png",".jpg":"image/jpeg",".jpeg":"image/jpeg",".gif":"image/gif",".webp":"image/webp",".pdf":"application/pdf",".txt":"text/plain",".md":"text/markdown",".csv":"text/csv",".json":"application/json",".xml":"text/xml",".js":"text/javascript",".jsx":"text/javascript",".ts":"text/typescript",".tsx":"text/typescript",".py":"text/x-python",".sql":"text/x-sql"};function ZBe(e){if(YBe.includes(e.type))return!0;const t=PP(e.name);return t?Object.prototype.hasOwnProperty.call(qK,t):!1}function PP(e){const t=e.lastIndexOf(".");return t===-1?"":e.substring(t).toLowerCase()}function GK(e){if(e.type)return e.type;const t=PP(e.name);return qK[t]||"application/octet-stream"}function KBe(e){return e.size<=WK}function bg(e){if(e===0)return"0 Bytes";const t=1024,n=["Bytes","KB","MB","GB"],r=Math.floor(Math.log(e)/Math.log(t));return Math.round(e/Math.pow(t,r)*100)/100+" "+n[r]}function OF(e){return new Promise((t,n)=>{const r=new FileReader;r.onload=()=>{const s=r.result.split(",")[1];t(s)},r.onerror=n,r.readAsDataURL(e)})}function XBe(e){return new Promise((t,n)=>{if(!zu.includes(GK(e))){n(new Error("Not an image file"));return}const r=new FileReader;r.onload=()=>t(r.result),r.onerror=n,r.readAsDataURL(e)})}async function DP(e){const t=GK(e),n=zu.includes(t),r={id:crypto.randomUUID(),name:e.name,size:e.size,type:t};if(n)try{r.preview=await XBe(e),r.data=r.preview.split(",")[1]}catch(o){console.error("Failed to create image preview:",o),r.data=await OF(e)}else r.data=await OF(e);return r}function YK(e){const t=[],n=[];for(const r of e)ZBe(r)?KBe(r)?t.push(r):n.push({file:r,error:`File too large: ${bg(r.size)} (max ${bg(WK)})`}):n.push({file:r,error:`File type not supported: ${r.type||PP(r.name)}`});return{valid:t,errors:n}}function QBe(e){var r;const t=(r=e.clipboardData)==null?void 0:r.items;if(!t)return[];const n=[];for(let o=0;o<t.length;o++){const s=t[o];if(s.kind==="file"){const i=s.getAsFile();i&&zu.includes(i.type)&&n.push(i)}}return n}function JBe({files:e,onRemove:t,showRemove:n=!0,className:r=""}){if(e.length===0)return null;const o=s=>zu.includes(s)?Wne:s.includes("pdf")||s.includes("text")?Xo:s.includes("javascript")||s.includes("typescript")||s.includes("python")||s.includes("sql")?Une:X3;return d.jsx("div",{className:`flex flex-wrap gap-2 ${r}`,children:e.map(s=>{const i=o(s.type),a=zu.includes(s.type);return d.jsxs("div",{className:"group relative flex items-center gap-2 rounded-lg border border-border bg-muted/50 p-2 transition-colors hover:bg-muted",children:[a&&s.preview?d.jsx("div",{className:"relative h-12 w-12 overflow-hidden rounded",children:d.jsx("img",{src:s.preview,alt:s.name,className:"h-full w-full object-cover"})}):d.jsx("div",{className:"flex h-12 w-12 items-center justify-center rounded bg-background",children:d.jsx(i,{className:"h-6 w-6 text-muted-foreground"})}),d.jsxs("div",{className:"flex flex-col",children:[d.jsx("span",{className:"max-w-[150px] truncate text-xs font-medium",children:s.name}),d.jsx("span",{className:"text-xs text-muted-foreground",children:bg(s.size)}),s.uploadProgress!==void 0&&s.uploadProgress<100&&d.jsx(TR,{value:s.uploadProgress,className:"mt-1 h-1 w-full"})]}),n&&t&&d.jsx(ce,{variant:"ghost",size:"icon",className:"absolute -right-2 -top-2 h-5 w-5 rounded-full bg-background opacity-0 shadow-sm transition-opacity group-hover:opacity-100",onClick:()=>t(s.id),children:d.jsx(Dn,{className:"h-3 w-3"})})]},s.id)})})}function eVe({file:e,className:t=""}){return zu.includes(e.type)&&e.preview?d.jsxs("div",{className:`inline-block ${t}`,children:[d.jsx("img",{src:e.preview,alt:e.name,className:"max-h-64 max-w-full rounded-lg border border-border"}),d.jsxs("div",{className:"mt-1 text-xs text-muted-foreground",children:[e.name," • ",bg(e.size)]})]}):d.jsxs("div",{className:`inline-flex items-center gap-2 rounded-lg border border-border bg-muted/50 px-3 py-2 ${t}`,children:[d.jsx(Xo,{className:"h-4 w-4 text-muted-foreground"}),d.jsx("span",{className:"text-sm",children:e.name}),d.jsxs("span",{className:"text-xs text-muted-foreground",children:["(",bg(e.size),")"]})]})}const FF={"tool-getTableColumns":{"input-streaming":"Fetching table columns...","input-available":"Reading column definitions..."},"tool-getChartDataFromSqlAndPython":{"input-streaming":"Fetching data...","input-available":"Synthesizing response..."},"tool-getChartDataFromCardConfig":{"input-streaming":"Fetching data...","input-available":"Synthesizing response..."},"tool-getForecastDataFromSqlAndPython":{"input-streaming":"Fetching data...","input-available":"Synthesizing response..."},"tool-getChartSQLSyntax":{"input-streaming":"Generating SQL syntax...","input-available":"SQL syntax generated"},"tool-validateCardConfigFormat":{"input-streaming":"Validating card config format...","input-available":"Card config format validated"},"tool-generateQueryConfig":{"input-streaming":"Generating query config...","input-available":"Sending query config..."},"tool-askForMoreInfo":{"input-streaming":"Asking for more information...","input-available":"More information requested"},"tool-createChartFromSql":{"input-streaming":"Creating chart...","input-available":"Chart created"},"tool-getUserSql":{"input-streaming":"Getting SQL...","input-available":"SQL retrieved"},"tool-inspectTableData":{"input-streaming":"Inspecting table data...","input-available":"Analyzing data..."}};function ZK(e,t){var r;if((r=FF[e])!=null&&r[t])return FF[e][t];const n=e.replace("tool-","").replace(/([A-Z])/g," $1").toLowerCase().trim();return t==="input-streaming"?`Processing ${n}...`:`Preparing ${n} response...`}var TP="Collapsible",[tVe,KK]=pr(TP),[nVe,AP]=tVe(TP),XK=E.forwardRef((e,t)=>{const{__scopeCollapsible:n,open:r,defaultOpen:o,disabled:s,onOpenChange:i,...a}=e,[l=!1,c]=kr({prop:r,defaultProp:o,onChange:i});return d.jsx(nVe,{scope:n,disabled:s,contentId:Yn(),open:l,onOpenToggle:E.useCallback(()=>c(u=>!u),[c]),children:d.jsx(Te.div,{"data-state":$P(l),"data-disabled":s?"":void 0,...a,ref:t})})});XK.displayName=TP;var QK="CollapsibleTrigger",IP=E.forwardRef((e,t)=>{const{__scopeCollapsible:n,...r}=e,o=AP(QK,n);return d.jsx(Te.button,{type:"button","aria-controls":o.contentId,"aria-expanded":o.open||!1,"data-state":$P(o.open),"data-disabled":o.disabled?"":void 0,disabled:o.disabled,...r,ref:t,onClick:Se(e.onClick,o.onOpenToggle)})});IP.displayName=QK;var OP="CollapsibleContent",FP=E.forwardRef((e,t)=>{const{forceMount:n,...r}=e,o=AP(OP,e.__scopeCollapsible);return d.jsx(Zn,{present:n||o.open,children:({present:s})=>d.jsx(rVe,{...r,ref:t,present:s})})});FP.displayName=OP;var rVe=E.forwardRef((e,t)=>{const{__scopeCollapsible:n,present:r,children:o,...s}=e,i=AP(OP,n),[a,l]=E.useState(r),c=E.useRef(null),u=rt(t,c),f=E.useRef(0),h=f.current,p=E.useRef(0),m=p.current,g=i.open||a,b=E.useRef(g),y=E.useRef(void 0);return E.useEffect(()=>{const x=requestAnimationFrame(()=>b.current=!1);return()=>cancelAnimationFrame(x)},[]),Nr(()=>{const x=c.current;if(x){y.current=y.current||{transitionDuration:x.style.transitionDuration,animationName:x.style.animationName},x.style.transitionDuration="0s",x.style.animationName="none";const v=x.getBoundingClientRect();f.current=v.height,p.current=v.width,b.current||(x.style.transitionDuration=y.current.transitionDuration,x.style.animationName=y.current.animationName),l(r)}},[i.open,r]),d.jsx(Te.div,{"data-state":$P(i.open),"data-disabled":i.disabled?"":void 0,id:i.contentId,hidden:!g,...s,ref:u,style:{"--radix-collapsible-content-height":h?`${h}px`:void 0,"--radix-collapsible-content-width":m?`${m}px`:void 0,...e.style},children:g&&o})});function $P(e){return e?"open":"closed"}var JK=XK,oVe=IP,sVe=FP;const rh=JK,oh=IP,sh=FP;function iVe({part:e,showTools:t}){if(!t)return null;const{input:n,output:r,...o}=e;return e.type,d.jsx("div",{className:"space-y-3",children:t&&d.jsxs(rh,{children:[d.jsxs("div",{className:"inline-flex items-center gap-2",children:[d.jsxs(oh,{className:"rounded-md border border-foreground/20 p-1 px-2 font-mono text-xs text-foreground/80 hover:bg-foreground/5",children:[d.jsx("span",{className:"font-bold",children:"Tool:"})," ",e.type.split("-")[1]]}),wm]}),d.jsx(sh,{className:"mt-2 font-mono text-xs",children:d.jsxs("div",{className:"space-y-2 px-2",children:[d.jsxs("div",{className:"space-y-1",children:[d.jsx("span",{children:"Args:"}),d.jsx(zl,{language:"json",code:JSON.stringify(o,null,2)})]}),d.jsxs("div",{className:"space-y-1",children:[d.jsx("span",{children:"Input:"}),d.jsx(zl,{language:"json",code:JSON.stringify(n,null,2)})]}),d.jsxs("div",{className:"space-y-1",children:[d.jsx("span",{children:"Output:"}),d.jsx(zl,{language:"json",code:JSON.stringify(r,null,2)})]})]})})]})})}function aVe(){const{authToken:e,tokenProps:t}=qe(),{currentUser:n}=Qi(),r=Xi({mutationFn:async o=>{if(!(e!=null&&e.accessToken))throw new Error("No authentication token available");const i=`${t.apiServiceUrl||""}/v1/feedback`,a={...o,user:n,tokenContext:t},l=await nc(i,e.accessToken,a,"POST");if(!l||!l.success)throw new Error((l==null?void 0:l.error)||"Failed to send feedback");return l},onSuccess:o=>{Ge.success(`Feedback sent successfully! Issue: ${o.issueNumber}`,{duration:5e3})},onError:o=>{console.error("Feedback submission error:",o),Ge.error("Failed to send feedback. Please try again later.",{duration:5e3})}});return{sendFeedback:r.mutate,sendFeedbackAsync:r.mutateAsync,isLoading:r.isPending,isSuccess:r.isSuccess,isError:r.isError,error:r.error,data:r.data,reset:r.reset}}function LP(e,t,n){return{category:e,userMessage:n,systemState:t,metadata:{url:window.location.href,userAgent:navigator.userAgent,timestamp:new Date().toISOString(),viewport:`${window.innerWidth}x${window.innerHeight}`}}}function Cv({open:e,onOpenChange:t,feedbackData:n}){var g,b,y,x,v,w,S,C,k,_,M,j,A;const[r,o]=N.useState(""),[s,i]=N.useState(!1),{sendFeedback:a,isLoading:l,isSuccess:c,data:u,reset:f}=aVe(),h=()=>{const R={...n,userMessage:r.trim()||void 0};a(R)},p=()=>{o(""),i(!1),f(),t(!1)},m={category:n.category,error:{message:(g=n.systemState)==null?void 0:g.errorMessage,sql:(b=n.systemState)==null?void 0:b.generatedSql,errorSql:(y=n.systemState)==null?void 0:y.errorSql},assistantType:(x=n.systemState)==null?void 0:x.assistantType,toolType:(v=n.systemState)==null?void 0:v.toolType,userQuery:(w=n.systemState)==null?void 0:w.userQuery,messages:(S=n.systemState)==null?void 0:S.messages,aiContext:(C=n.systemState)==null?void 0:C.aiContext,toolInput:(k=n.systemState)==null?void 0:k.toolInput,toolOutput:(_=n.systemState)==null?void 0:_.toolOutput,cardConfig:(M=n.systemState)==null?void 0:M.cardConfig,dataSource:(j=n.systemState)==null?void 0:j.dataSource,filters:(A=n.systemState)==null?void 0:A.dashboardFilters,metadata:n.metadata};return d.jsx(Rs,{open:e,onOpenChange:p,children:d.jsxs(ts,{className:"max-w-2xl",children:[d.jsxs(ns,{children:[d.jsx(rs,{children:c?"Feedback Sent Successfully":n.category==="dashboard-assistant"?"Report Dashboard Assistant Issue":n.category==="editor-assistant"?"Report Editor Assistant Issue":"Report Query Generation Issue"}),d.jsx(ai,{children:c?`Your feedback has been submitted with issue number: ${u==null?void 0:u.issueNumber}`:n.category==="dashboard-assistant"||n.category==="editor-assistant"?"Help us improve by reporting this AI assistant issue. Your feedback will be sent to our support team.":"Help us improve by reporting this query generation issue. Your feedback will be sent to our support team."})]}),!c&&d.jsxs(d.Fragment,{children:[d.jsxs("div",{className:"space-y-4",children:[d.jsxs("div",{className:"space-y-2",children:[d.jsx(fe,{htmlFor:"message",children:"Additional Information (Optional)"}),d.jsx(fh,{id:"message",placeholder:"Please describe what you were trying to do when this error occurred...",value:r,onChange:R=>o(R.target.value),className:"min-h-[100px] resize-none ring-inset focus-visible:ring-1 focus-visible:ring-ring focus-visible:ring-offset-0",disabled:l})]}),d.jsxs(rh,{open:s,onOpenChange:i,children:[d.jsxs("div",{className:"flex items-center gap-1",children:[d.jsx(oh,{asChild:!0,children:d.jsxs(ce,{variant:"ghost",size:"sm",className:"flex flex-1 items-center justify-between p-2 hover:bg-muted",children:[d.jsx("span",{className:"text-sm font-medium",children:"View data to be sent"}),s?d.jsx(Eo,{className:"h-4 w-4"}):d.jsx(Qs,{className:"h-4 w-4"})]})}),d.jsx(Fu,{text:JSON.stringify(m,null,2),className:"h-8 w-8 shrink-0"})]}),d.jsx(sh,{className:"mt-2",children:d.jsx(qi,{className:"h-[300px] w-full rounded-md border bg-muted/50 p-4",children:d.jsx("div",{className:"text-xs overflow-auto break-all whitespace-pre-wrap",children:d.jsx(zl,{code:JSON.stringify(m,null,2),language:"json"})})})})]})]}),d.jsxs(Ps,{children:[d.jsx(ce,{variant:"outline",onClick:p,disabled:l,children:"Cancel"}),d.jsx(ce,{onClick:h,disabled:l,className:"min-w-[100px]",children:l?d.jsxs(d.Fragment,{children:[d.jsx(Ns,{className:"mr-2 h-4 w-4 animate-spin"}),"Sending..."]}):"Send Feedback"})]})]}),c&&d.jsxs("div",{className:"flex flex-col items-center space-y-4 py-6",children:[d.jsx(Bne,{className:"h-12 w-12 text-green-600"}),d.jsxs("div",{className:"text-center",children:[d.jsx("p",{className:"text-lg font-medium",children:"Thank you for your feedback!"}),d.jsxs("p",{className:"mt-2 text-sm text-muted-foreground",children:["Issue Number:"," ",d.jsx("span",{className:"font-mono font-medium",children:u==null?void 0:u.issueNumber})]}),d.jsx("p",{className:"mt-1 text-sm text-muted-foreground",children:"Our support team will review your feedback and take appropriate action."})]}),d.jsx(ce,{onClick:p,className:"mt-4",children:"Close"})]})]})})}var ih=(e=>(e.QUERY_GENERATION="query-generation",e.DASHBOARD_ASSISTANT="dashboard-assistant",e.EDITOR_ASSISTANT="editor-assistant",e))(ih||{});function lVe({part:e,messages:t}){const[n,r]=N.useState(!1),[o,s]=N.useState(null),i=h6(),a=Fg(),{tokenProps:l}=N.useContext(Tg);Qi();const c=()=>{var g;const u=t==null?void 0:t.filter(b=>b.role==="user").pop(),f=(g=u==null?void 0:u.parts)==null?void 0:g.find(b=>b.type==="text"),h=(f==null?void 0:f.text)||"",p=i==="dashboard"?ih.DASHBOARD_ASSISTANT:ih.EDITOR_ASSISTANT,m=LP(p,{errorMessage:e.errorText||"Tool invocation error occurred",toolType:e.type,toolInput:e.input,toolOutput:null,assistantType:i,userQuery:h,messages:t,aiContext:a});s(m),r(!0)};return d.jsxs(d.Fragment,{children:[d.jsxs(rh,{children:[d.jsxs("div",{className:"flex items-center justify-between",children:[d.jsx(oh,{className:"",children:d.jsxs(fe,{className:"flex cursor-pointer items-center hover:text-foreground",children:[d.jsx(T_,{className:"mr-2 size-4 text-yellow-500"}),"Recovering from Error"]})}),d.jsxs(ce,{variant:"ghost",size:"sm",className:"gap-1 text-[11px]",onClick:c,"aria-label":"Send feedback",children:[d.jsx(j_,{className:"h-3 w-3"}),"Send Feedback"]})]}),d.jsx(sh,{className:"mt-2 text-xs",children:d.jsxs("div",{className:"relative space-y-2 rounded-md border border-yellow-500 bg-yellow-50 p-4 text-black/80 dark:border-yellow-500/80 dark:bg-yellow-500/10 dark:text-white/80",children:[d.jsxs(fe,{className:"text-xs",children:["Tool Invocation Error (",e.type.split("-")[1],")"]}),d.jsx("p",{children:e.errorText})]})})]}),o&&d.jsx(Cv,{open:n,onOpenChange:u=>{r(u),u||s(null)},feedbackData:o})]})}const ah={connectionId:"",connectionType:"none",mode:"semanticDomain",selectedEntities:[]},$F=N.memo(({cfg:e,onDatapointClick:t})=>d.jsx(p1,{cfg:e,onDatapointClick:t}),(e,t)=>JSON.stringify(e.cfg)===JSON.stringify(t.cfg)&&e.onDatapointClick===t.onDatapointClick);function cVe({part:e,onAddToDashboard:t,messages:n}){var I,B;const r=e.output,o=e.input,[s,i]=N.useState(!1),[a,l]=N.useState(!1),[c,u]=N.useState("visual"),[f,h]=N.useState(!1),[p,m]=N.useState(null),g=N.useMemo(()=>(e==null?void 0:e.toolCallId)??br(),[e]),{queueMessage:b}=hh(),y=h6(),x=Fg(),{tokenProps:v}=N.useContext(Tg);Qi();const w=()=>{const L=e.toolCallId;$().label;const P=`Can you explain how this visual was calculated? [ref: ${L}]`;b("dashboard",P)},S=()=>{var W;console.log("Send Feedback clicked",{activeAssistantType:y,messages:n,output:r,input:o,part:e});const L=n==null?void 0:n.filter(U=>U.role==="user").pop(),P=(W=L==null?void 0:L.parts)==null?void 0:W.find(U=>U.type==="text"),H=(P==null?void 0:P.text)||"",q=y==="dashboard"?ih.DASHBOARD_ASSISTANT:ih.EDITOR_ASSISTANT;console.log("Feedback category:",q);const K=LP(q,{errorMessage:(r==null?void 0:r.error)||"An error occurred while generating the visualization",toolType:e.type,toolInput:o,toolOutput:r,assistantType:y,userQuery:H,messages:n,aiContext:x,cardConfig:o==null?void 0:o.cardConfig,dataSource:r==null?void 0:r.dataSource,generatedSql:o==null?void 0:o.sql});console.log("Feedback payload prepared:",K),m(K),h(!0)},C=o==null?void 0:o.chartType,k=o==null?void 0:o.connectionId,_=o==null?void 0:o.cardConfig,M=o==null?void 0:o.chartTitle,j=o==null?void 0:o.sql,A=(I=r==null?void 0:r.data)==null?void 0:I.userSql,R=o==null?void 0:o.python,F=(B=r==null?void 0:r.data)==null?void 0:B.records,T=r==null?void 0:r.dataSource,D=N.useMemo(()=>C?{id:g,config:_,type:C,dataSource:T,preferences:{tablePrefs:{pageSize:10}}}:null,[g,_,C,T]),O=N.useMemo(()=>!D||C==="pivotTable"?null:OM({card:D,cardType:C,data:F||[],queryConfig:{}}),[D,C,F]),z=N.useMemo(()=>{var K,W,U,G;if(C!=="pivotTable"||!r)return null;const L=((K=r.data)==null?void 0:K.pivotSchema)||[],P=((W=r.data)==null?void 0:W.subtotalColumns)||[],H=(U=r.data)==null?void 0:U.columnSubtotalMeta,q=(G=r.data)==null?void 0:G.groupByColumns;return{records:F||[],pivotSchema:L,subtotalColumns:P,columnSubtotalMeta:H,groupByColumns:q}},[C,r,F]),V=lb(D,z),$=()=>{const L=D?av(D):!1,P=g1.find(q=>q.id===C),H=P==null?void 0:P.icon;return R?{type:"advanced",label:"Advanced Analysis",icons:[nu,KD]}:L&&H?{type:"standard",label:"Standard Analysis",icons:[H]}:{type:"sql",label:"SQL Analysis",icons:[nu]}};if(!r)return null;if(r.error){const L=r.errorType||"unknown",P=r.hint||"",H=r.rootCause||r.error,q=r.shouldRetry!==!1,K=r.validationErrors||[],W=r.suggestions||[],U=K.length>0,G=U?{border:"border-purple-500/60 dark:border-purple-500/50",bg:"bg-purple-50 dark:bg-purple-500/10",text:"text-purple-800 dark:text-purple-300",iconColor:"text-purple-600 dark:text-purple-500",accentBg:"bg-purple-100 dark:bg-purple-900/30",accentText:"text-purple-900 dark:text-purple-200"}:{border:"border-yellow-500/60 dark:border-yellow-500/50",bg:"bg-yellow-50 dark:bg-yellow-500/10",text:"text-yellow-800 dark:text-yellow-300",iconColor:"text-yellow-600 dark:text-yellow-500",accentBg:"bg-yellow-100 dark:bg-yellow-900/30",accentText:"text-yellow-900 dark:text-yellow-200"},Q=()=>U?q?"Configuration validation failed. Retrying...":"Configuration validation failed":L==="group_by_error"?q?"SQL grouping error. Retrying...":"SQL grouping error":L==="syntax_error"?q?"SQL syntax error. Retrying...":"SQL syntax error":L==="type_mismatch"?q?"Data type mismatch. Retrying...":"Data type mismatch":q?"Couldn't generate this visual. Retrying...":"Couldn't generate this visual";return d.jsxs(d.Fragment,{children:[d.jsx(rh,{open:a,onOpenChange:l,children:d.jsxs("div",{className:`relative space-y-2 rounded-md border ${G.border} ${G.bg} p-3 text-xs`,children:[d.jsxs("div",{className:"flex items-center gap-2",children:[d.jsx(T_,{className:`size-4 shrink-0 ${G.iconColor}`,"aria-hidden":"true"}),d.jsx("span",{className:`font-medium ${G.text}`,children:Q()})]}),U&&d.jsx("div",{className:`text-[10px] ${G.text} opacity-80`,children:"Self-healing defense: Config validated before execution"}),H&&H!==r.error&&d.jsxs("div",{className:"text-foreground/80",children:[d.jsx("span",{className:"font-semibold",children:"Issue:"})," ",H]}),P&&d.jsxs("div",{className:`rounded-md ${G.accentBg} p-2 ${G.accentText}`,children:[d.jsx("span",{className:"font-semibold",children:"Hint:"})," ",P]}),K.length>0&&d.jsxs("div",{className:"space-y-1",children:[d.jsx("div",{className:`font-semibold ${G.text}`,children:"Configuration issues found:"}),d.jsxs("ul",{className:"ml-4 list-disc space-y-0.5",children:[K.slice(0,3).map((re,J)=>d.jsx("li",{className:"text-foreground/70 dark:text-foreground/60",children:re},J)),K.length>3&&d.jsxs("li",{className:"text-muted-foreground",children:["...and ",K.length-3," more"]})]})]}),d.jsxs("div",{className:"flex items-center justify-between pt-1",children:[d.jsx(oh,{asChild:!0,children:d.jsxs(ce,{variant:"ghost",size:"sm",className:`gap-1 text-[11px] ${G.text}`,children:[a?"Hide":"View"," technical details",d.jsx(Eo,{className:`h-3 w-3 transition-transform ${a?"rotate-180":""}`})]})}),d.jsxs(ce,{variant:"ghost",size:"sm",className:`gap-1 text-[11px] ${G.text}`,onClick:S,children:[d.jsx(j_,{className:"h-3 w-3"}),"Report Issue"]})]}),d.jsxs(sh,{className:"mt-2 space-y-2",children:[W.length>0&&d.jsxs("div",{className:"rounded-md border border-blue-500/40 bg-background/60 p-2 dark:bg-background/40",children:[d.jsx("div",{className:"mb-1 text-[11px] font-semibold text-blue-900 dark:text-blue-200",children:"Suggested fixes:"}),d.jsx("ul",{className:"ml-3 list-disc space-y-1",children:W.map((re,J)=>d.jsx("li",{className:"text-[11px] leading-relaxed text-foreground/80",children:re},J))})]}),d.jsxs("div",{className:`rounded-md border ${G.border} bg-background/60 p-2 dark:bg-background/40`,children:[d.jsx("div",{className:`mb-1 text-[11px] font-semibold ${G.text}`,children:"Raw error:"}),d.jsx("pre",{className:"max-h-48 overflow-auto whitespace-pre-wrap break-words font-mono text-[11px] leading-relaxed text-foreground/80",children:r.error})]})]})]})}),p&&d.jsx(Cv,{open:f,onOpenChange:re=>{h(re),re||m(null)},feedbackData:p})]})}return d.jsxs(d.Fragment,{children:[d.jsxs($i,{className:"grid w-full max-w-full grid-cols-1 border border-muted bg-background shadow-sm",children:[d.jsx(Li,{className:"pb-3",children:d.jsxs("div",{className:"flex items-center justify-between",children:[d.jsx("div",{className:"space-y-1",children:d.jsx("h3",{className:"text-base font-semibold text-foreground",children:M||"Untitled Chart"})}),d.jsxs("div",{className:"flex items-center gap-2",children:[C!=="table"&&C!=="pivotTable"&&d.jsx(ea,{value:c,onValueChange:u,children:d.jsxs(ci,{className:"h-8",children:[d.jsx(Qn,{value:"visual",className:"h-7 w-7 p-0","aria-label":"View as chart",children:d.jsx(Ag,{className:"h-3.5 w-3.5"})}),d.jsx(Qn,{value:"table",className:"h-7 w-7 p-0","aria-label":"View as table",children:d.jsx(Zv,{className:"h-3.5 w-3.5"})})]})}),d.jsx(ce,{variant:"outline",size:"sm",className:"h-8 w-8 p-0",onClick:()=>{t==null||t({sql:j||"",data:F||[],dataSource:T||ah,cardConfig:_,cardTitle:M||"Untitled Chart",connectionId:k||"",cardType:C||"bar",python:R||""})},"aria-label":"Add visual to dashboard",children:d.jsx(ks,{className:"h-4 w-4"})})]})]})}),d.jsxs(Va,{className:"space-y-4",children:[d.jsx("div",{className:Y("isolate flex w-full grow flex-col",C!=="table"&&C!=="pivotTable"&&"min-h-[360px]"),children:d.jsx("div",{className:"flex grow flex-col",children:C==="table"&&D?d.jsx("div",{className:"min-w-0",children:d.jsx(Jm,{card:D,data:F||[],isLoading:!1})}):C==="pivotTable"&&V&&D?d.jsx(m1,{data:V.data,card:D,options:V.options}):O&&C!=="table"&&C!=="pivotTable"?c==="table"?d.jsx("div",{className:"min-w-0 pb-6",children:d.jsx(Jm,{card:D,data:F||[],isLoading:!1})}):d.jsx($F,{cfg:O}):O&&d.jsx($F,{cfg:O})})}),(j||R||D&&av(D))&&d.jsxs(rh,{open:s,onOpenChange:i,children:[d.jsxs("div",{className:"flex items-center justify-between border-t border-muted/40 pb-2 pt-2",children:[d.jsx("div",{className:"flex items-center gap-2",children:(()=>{const L=$();return d.jsxs("div",{className:"flex items-center gap-1.5 text-xs text-muted-foreground",children:[L.icons.map((P,H)=>d.jsx(P,{className:"h-3 w-3"},H)),d.jsx("span",{children:L.label}),d.jsx(ce,{variant:"ghost",size:"sm",className:"h-4 w-4 p-0 hover:text-foreground",onClick:w,title:"Ask for explanation",children:d.jsx(uh,{className:"h-3 w-3"})})]})})()}),d.jsx(oh,{asChild:!0,children:d.jsxs(ce,{variant:"ghost",size:"sm",className:"gap-1 text-xs",children:[s?"Hide Details":"Show Details",d.jsx(Eo,{className:`h-3 w-3 transition-transform ${s?"rotate-180":""}`})]})})]}),d.jsxs(sh,{className:"space-y-3 pb-6",children:[A&&d.jsxs("div",{className:"space-y-2",children:[d.jsxs("div",{className:"flex items-center justify-between gap-2",children:[d.jsxs("div",{className:"flex items-center gap-2",children:[d.jsx(nu,{className:"h-4 w-4 text-blue-600"}),d.jsx("span",{className:"text-sm font-medium text-foreground",children:"SQL Query"})]}),d.jsx(Fu,{text:A,className:"-mr-1"})]}),d.jsx("div",{className:"rounded-md border bg-muted/30",children:d.jsx(zl,{language:"sql",code:A})})]}),R&&d.jsxs("div",{className:"space-y-2",children:[d.jsxs("div",{className:"flex items-center justify-between gap-2",children:[d.jsxs("div",{className:"flex items-center gap-2",children:[d.jsx(KD,{className:"h-4 w-4 text-green-600"}),d.jsx("span",{className:"text-sm font-medium text-foreground",children:"Python"})]}),d.jsx(Fu,{text:R,className:"-mr-1"})]}),d.jsx("div",{className:"rounded-md border bg-muted/30",children:d.jsx(zl,{language:"python",code:R})})]})]})]})]})]}),p&&d.jsx(Cv,{open:f,onOpenChange:L=>{h(L),L||m(null)},feedbackData:p})]})}const uVe=["tool-getChartDataFromSqlAndPython","tool-getChartDataFromCardConfig","tool-getForecastDataFromSqlAndPython","tool-generateQueryConfig"];function dVe({part:e,idx:t,showTools:n,onAddToDashboard:r,messages:o}){if(!e.state)return null;if(e.state==="input-streaming"||e.state==="input-available"){const s=ZK(e.type,e.state);return d.jsx(fVe,{text:s})}if(e.state==="output-available"){const s=uVe.includes(e.type);return d.jsxs("div",{className:"my-2 space-y-2",children:[d.jsx(iVe,{part:e,showTools:n}),s&&r&&d.jsx(cVe,{part:e,onAddToDashboard:r,messages:o})]},t)}return e.state==="output-error"?d.jsx("div",{className:"mt-2",children:d.jsx(lVe,{part:e,messages:o})},t):d.jsx("div",{},t)}function fVe({text:e}){return d.jsx("div",{className:"mt-2 animate-pulse text-xs text-muted-foreground",children:e})}function hVe({errorMessage:e}){return d.jsxs("div",{className:"flex items-start gap-2 rounded-md bg-red-500/10 p-2 text-sm text-red-500 backdrop-blur-sm",children:[d.jsx(T_,{className:"mt-0.5 h-4 w-4 shrink-0"}),d.jsx("span",{children:e})]})}function pVe({text:e,files:t}){return d.jsxs("div",{className:"group relative rounded-md border border-border/50 bg-muted/50 p-3 text-sm",children:[d.jsx(ere,{className:"float-left mr-2 mt-0.5 size-3.5"}),d.jsxs("div",{className:"space-y-2",children:[e&&d.jsx("div",{className:"whitespace-pre-line",children:e}),t&&t.length>0&&d.jsx("div",{className:"flex flex-wrap gap-2",children:t.map(n=>d.jsx(eVe,{file:n},n.id))})]}),e&&d.jsx("div",{className:"absolute right-1 top-1 opacity-0 transition-opacity group-hover:opacity-100",children:d.jsx(Fu,{text:e,className:"h-6"})})]})}function mVe({text:e}){const t=e.split("|"),n=t[0],r=t[1]||"{}",o=JSON.parse(r);return d.jsxs("div",{className:"space-y-1 text-xs",children:[d.jsxs("div",{children:[d.jsx("span",{className:"font-bold",children:"System Message:"})," ",n]}),d.jsxs("div",{className:"space-y-1",children:[d.jsx("span",{className:"font-mono text-xs",children:"Scope:"}),d.jsx(Z$e,{children:JSON.stringify(o,null,2)})]})]})}function eX({status:e,errorMessage:t}){return e==="submitted"?d.jsx("div",{className:"mt-2 animate-pulse text-xs text-muted-foreground",children:"Thinking..."}):e==="streaming"?d.jsx("div",{className:"mt-2 text-xs text-muted-foreground",children:d.jsx(Tu,{size:"sm","aria-label":"chat-status"})}):e==="error"?d.jsx("div",{className:"mt-2 text-xs text-muted-foreground",children:d.jsx(hVe,{errorMessage:t})}):null}function tX({messages:e,showTools:t=!1,onAddToDashboard:n,showSystemMessage:r=!1,handleRun:o}){return d.jsx("div",{children:e==null?void 0:e.map((s,i)=>{var a,l,c;if(s.role==="user"){const u=((a=s.parts)==null?void 0:a.filter(m=>m.type==="text"))||[],f=((l=s.parts)==null?void 0:l.filter(m=>m.type==="file"))||[],h=u.map(m=>m.text).join(`
|
|
935
|
+
`))}function l(p,m,g,b){const y=g.enter("tableCell"),x=g.enter("phrasing"),v=g.containerPhrasing(p,{...b,before:s,after:s});return x(),y(),v}function c(p,m){return y7e(p,{align:m,alignDelimiters:r,padding:n,stringLength:o})}function u(p,m,g){const b=p.children;let y=-1;const x=[],v=m.enter("table");for(;++y<b.length;)x[y]=f(b[y],m,g);return v(),x}function f(p,m,g){const b=p.children;let y=-1;const x=[],v=m.enter("tableRow");for(;++y<b.length;)x[y]=l(b[y],p,m,g);return v(),x}function h(p,m,g){let b=OK.inlineCode(p,m,g);return g.stack.includes("tableCell")&&(b=b.replace(/\|/g,"\\$&")),b}}function sBe(){return{exit:{taskListCheckValueChecked:TF,taskListCheckValueUnchecked:TF,paragraph:aBe}}}function iBe(){return{unsafe:[{atBreak:!0,character:"-",after:"[:|-]"}],handlers:{listItem:lBe}}}function TF(e){const t=this.stack[this.stack.length-2];t.type,t.checked=e.type==="taskListCheckValueChecked"}function aBe(e){const t=this.stack[this.stack.length-2];if(t&&t.type==="listItem"&&typeof t.checked=="boolean"){const n=this.stack[this.stack.length-1];n.type;const r=n.children[0];if(r&&r.type==="text"){const o=t.children;let s=-1,i;for(;++s<o.length;){const a=o[s];if(a.type==="paragraph"){i=a;break}}i===n&&(r.value=r.value.slice(1),r.value.length===0?n.children.shift():n.position&&r.position&&typeof r.position.start.offset=="number"&&(r.position.start.column++,r.position.start.offset++,n.position.start=Object.assign({},r.position.start)))}}this.exit(e)}function lBe(e,t,n,r){const o=e.children[0],s=typeof e.checked=="boolean"&&o&&o.type==="paragraph",i="["+(e.checked?"x":" ")+"] ",a=n.createTracker(r);s&&a.move(i);let l=OK.listItem(e,t,n,{...r,...a.current()});return s&&(l=l.replace(/^(?:[*+-]|\d+\.)([\r\n]| {1,3})/,c)),l;function c(u){return u+i}}function cBe(){return[B9e(),l7e(),f7e(),Q7e(),sBe()]}function uBe(e){return{extensions:[V9e(),c7e(e),h7e(),oBe(e),iBe()]}}const dBe={tokenize:bBe,partial:!0},FK={tokenize:yBe,partial:!0},$K={tokenize:xBe,partial:!0},LK={tokenize:vBe,partial:!0},fBe={tokenize:wBe,partial:!0},zK={name:"wwwAutolink",tokenize:mBe,previous:VK},BK={name:"protocolAutolink",tokenize:gBe,previous:HK},ol={name:"emailAutolink",tokenize:pBe,previous:UK},ca={};function hBe(){return{text:ca}}let Cc=48;for(;Cc<123;)ca[Cc]=ol,Cc++,Cc===58?Cc=65:Cc===91&&(Cc=97);ca[43]=ol;ca[45]=ol;ca[46]=ol;ca[95]=ol;ca[72]=[ol,BK];ca[104]=[ol,BK];ca[87]=[ol,zK];ca[119]=[ol,zK];function pBe(e,t,n){const r=this;let o,s;return i;function i(f){return!Vk(f)||!UK.call(r,r.previous)||RP(r.events)?n(f):(e.enter("literalAutolink"),e.enter("literalAutolinkEmail"),a(f))}function a(f){return Vk(f)?(e.consume(f),a):f===64?(e.consume(f),l):n(f)}function l(f){return f===46?e.check(fBe,u,c)(f):f===45||f===95||Ur(f)?(s=!0,e.consume(f),l):u(f)}function c(f){return e.consume(f),o=!0,l}function u(f){return s&&o&&oo(r.previous)?(e.exit("literalAutolinkEmail"),e.exit("literalAutolink"),t(f)):n(f)}}function mBe(e,t,n){const r=this;return o;function o(i){return i!==87&&i!==119||!VK.call(r,r.previous)||RP(r.events)?n(i):(e.enter("literalAutolink"),e.enter("literalAutolinkWww"),e.check(dBe,e.attempt(FK,e.attempt($K,s),n),n)(i))}function s(i){return e.exit("literalAutolinkWww"),e.exit("literalAutolink"),t(i)}}function gBe(e,t,n){const r=this;let o="",s=!1;return i;function i(f){return(f===72||f===104)&&HK.call(r,r.previous)&&!RP(r.events)?(e.enter("literalAutolink"),e.enter("literalAutolinkHttp"),o+=String.fromCodePoint(f),e.consume(f),a):n(f)}function a(f){if(oo(f)&&o.length<5)return o+=String.fromCodePoint(f),e.consume(f),a;if(f===58){const h=o.toLowerCase();if(h==="http"||h==="https")return e.consume(f),l}return n(f)}function l(f){return f===47?(e.consume(f),s?c:(s=!0,l)):n(f)}function c(f){return f===null||yv(f)||pn(f)||Lu(f)||V1(f)?n(f):e.attempt(FK,e.attempt($K,u),n)(f)}function u(f){return e.exit("literalAutolinkHttp"),e.exit("literalAutolink"),t(f)}}function bBe(e,t,n){let r=0;return o;function o(i){return(i===87||i===119)&&r<3?(r++,e.consume(i),o):i===46&&r===3?(e.consume(i),s):n(i)}function s(i){return i===null?n(i):t(i)}}function yBe(e,t,n){let r,o,s;return i;function i(c){return c===46||c===95?e.check(LK,l,a)(c):c===null||pn(c)||Lu(c)||c!==45&&V1(c)?l(c):(s=!0,e.consume(c),i)}function a(c){return c===95?r=!0:(o=r,r=void 0),e.consume(c),i}function l(c){return o||r||!s?n(c):t(c)}}function xBe(e,t){let n=0,r=0;return o;function o(i){return i===40?(n++,e.consume(i),o):i===41&&r<n?s(i):i===33||i===34||i===38||i===39||i===41||i===42||i===44||i===46||i===58||i===59||i===60||i===63||i===93||i===95||i===126?e.check(LK,t,s)(i):i===null||pn(i)||Lu(i)?t(i):(e.consume(i),o)}function s(i){return i===41&&r++,e.consume(i),o}}function vBe(e,t,n){return r;function r(a){return a===33||a===34||a===39||a===41||a===42||a===44||a===46||a===58||a===59||a===63||a===95||a===126?(e.consume(a),r):a===38?(e.consume(a),s):a===93?(e.consume(a),o):a===60||a===null||pn(a)||Lu(a)?t(a):n(a)}function o(a){return a===null||a===40||a===91||pn(a)||Lu(a)?t(a):r(a)}function s(a){return oo(a)?i(a):n(a)}function i(a){return a===59?(e.consume(a),r):oo(a)?(e.consume(a),i):n(a)}}function wBe(e,t,n){return r;function r(s){return e.consume(s),o}function o(s){return Ur(s)?n(s):t(s)}}function VK(e){return e===null||e===40||e===42||e===95||e===91||e===93||e===126||pn(e)}function HK(e){return!oo(e)}function UK(e){return!(e===47||Vk(e))}function Vk(e){return e===43||e===45||e===46||e===95||Ur(e)}function RP(e){let t=e.length,n=!1;for(;t--;){const r=e[t][1];if((r.type==="labelLink"||r.type==="labelImage")&&!r._balanced){n=!0;break}if(r._gfmAutolinkLiteralWalkedInto){n=!1;break}}return e.length>0&&!n&&(e[e.length-1][1]._gfmAutolinkLiteralWalkedInto=!0),n}const SBe={tokenize:RBe,partial:!0};function CBe(){return{document:{91:{name:"gfmFootnoteDefinition",tokenize:_Be,continuation:{tokenize:jBe},exit:MBe}},text:{91:{name:"gfmFootnoteCall",tokenize:kBe},93:{name:"gfmPotentialFootnoteCall",add:"after",tokenize:EBe,resolveTo:NBe}}}}function EBe(e,t,n){const r=this;let o=r.events.length;const s=r.parser.gfmFootnotes||(r.parser.gfmFootnotes=[]);let i;for(;o--;){const l=r.events[o][1];if(l.type==="labelImage"){i=l;break}if(l.type==="gfmFootnoteCall"||l.type==="labelLink"||l.type==="label"||l.type==="image"||l.type==="link")break}return a;function a(l){if(!i||!i._balanced)return n(l);const c=Xs(r.sliceSerialize({start:i.end,end:r.now()}));return c.codePointAt(0)!==94||!s.includes(c.slice(1))?n(l):(e.enter("gfmFootnoteCallLabelMarker"),e.consume(l),e.exit("gfmFootnoteCallLabelMarker"),t(l))}}function NBe(e,t){let n=e.length;for(;n--;)if(e[n][1].type==="labelImage"&&e[n][0]==="enter"){e[n][1];break}e[n+1][1].type="data",e[n+3][1].type="gfmFootnoteCallLabelMarker";const r={type:"gfmFootnoteCall",start:Object.assign({},e[n+3][1].start),end:Object.assign({},e[e.length-1][1].end)},o={type:"gfmFootnoteCallMarker",start:Object.assign({},e[n+3][1].end),end:Object.assign({},e[n+3][1].end)};o.end.column++,o.end.offset++,o.end._bufferIndex++;const s={type:"gfmFootnoteCallString",start:Object.assign({},o.end),end:Object.assign({},e[e.length-1][1].start)},i={type:"chunkString",contentType:"string",start:Object.assign({},s.start),end:Object.assign({},s.end)},a=[e[n+1],e[n+2],["enter",r,t],e[n+3],e[n+4],["enter",o,t],["exit",o,t],["enter",s,t],["enter",i,t],["exit",i,t],["exit",s,t],e[e.length-2],e[e.length-1],["exit",r,t]];return e.splice(n,e.length-n+1,...a),e}function kBe(e,t,n){const r=this,o=r.parser.gfmFootnotes||(r.parser.gfmFootnotes=[]);let s=0,i;return a;function a(f){return e.enter("gfmFootnoteCall"),e.enter("gfmFootnoteCallLabelMarker"),e.consume(f),e.exit("gfmFootnoteCallLabelMarker"),l}function l(f){return f!==94?n(f):(e.enter("gfmFootnoteCallMarker"),e.consume(f),e.exit("gfmFootnoteCallMarker"),e.enter("gfmFootnoteCallString"),e.enter("chunkString").contentType="string",c)}function c(f){if(s>999||f===93&&!i||f===null||f===91||pn(f))return n(f);if(f===93){e.exit("chunkString");const h=e.exit("gfmFootnoteCallString");return o.includes(Xs(r.sliceSerialize(h)))?(e.enter("gfmFootnoteCallLabelMarker"),e.consume(f),e.exit("gfmFootnoteCallLabelMarker"),e.exit("gfmFootnoteCall"),t):n(f)}return pn(f)||(i=!0),s++,e.consume(f),f===92?u:c}function u(f){return f===91||f===92||f===93?(e.consume(f),s++,c):c(f)}}function _Be(e,t,n){const r=this,o=r.parser.gfmFootnotes||(r.parser.gfmFootnotes=[]);let s,i=0,a;return l;function l(m){return e.enter("gfmFootnoteDefinition")._container=!0,e.enter("gfmFootnoteDefinitionLabel"),e.enter("gfmFootnoteDefinitionLabelMarker"),e.consume(m),e.exit("gfmFootnoteDefinitionLabelMarker"),c}function c(m){return m===94?(e.enter("gfmFootnoteDefinitionMarker"),e.consume(m),e.exit("gfmFootnoteDefinitionMarker"),e.enter("gfmFootnoteDefinitionLabelString"),e.enter("chunkString").contentType="string",u):n(m)}function u(m){if(i>999||m===93&&!a||m===null||m===91||pn(m))return n(m);if(m===93){e.exit("chunkString");const g=e.exit("gfmFootnoteDefinitionLabelString");return s=Xs(r.sliceSerialize(g)),e.enter("gfmFootnoteDefinitionLabelMarker"),e.consume(m),e.exit("gfmFootnoteDefinitionLabelMarker"),e.exit("gfmFootnoteDefinitionLabel"),h}return pn(m)||(a=!0),i++,e.consume(m),m===92?f:u}function f(m){return m===91||m===92||m===93?(e.consume(m),i++,u):u(m)}function h(m){return m===58?(e.enter("definitionMarker"),e.consume(m),e.exit("definitionMarker"),o.includes(s)||o.push(s),zt(e,p,"gfmFootnoteDefinitionWhitespace")):n(m)}function p(m){return t(m)}}function jBe(e,t,n){return e.check(Tb,t,e.attempt(SBe,t,n))}function MBe(e){e.exit("gfmFootnoteDefinition")}function RBe(e,t,n){const r=this;return zt(e,o,"gfmFootnoteDefinitionIndent",5);function o(s){const i=r.events[r.events.length-1];return i&&i[1].type==="gfmFootnoteDefinitionIndent"&&i[2].sliceSerialize(i[1],!0).length===4?t(s):n(s)}}function PBe(e){let n=(e||{}).singleTilde;const r={name:"strikethrough",tokenize:s,resolveAll:o};return n==null&&(n=!0),{text:{126:r},insideSpan:{null:[r]},attentionMarkers:{null:[126]}};function o(i,a){let l=-1;for(;++l<i.length;)if(i[l][0]==="enter"&&i[l][1].type==="strikethroughSequenceTemporary"&&i[l][1]._close){let c=l;for(;c--;)if(i[c][0]==="exit"&&i[c][1].type==="strikethroughSequenceTemporary"&&i[c][1]._open&&i[l][1].end.offset-i[l][1].start.offset===i[c][1].end.offset-i[c][1].start.offset){i[l][1].type="strikethroughSequence",i[c][1].type="strikethroughSequence";const u={type:"strikethrough",start:Object.assign({},i[c][1].start),end:Object.assign({},i[l][1].end)},f={type:"strikethroughText",start:Object.assign({},i[c][1].end),end:Object.assign({},i[l][1].start)},h=[["enter",u,a],["enter",i[c][1],a],["exit",i[c][1],a],["enter",f,a]],p=a.parser.constructs.insideSpan.null;p&&Yo(h,h.length,0,H1(p,i.slice(c+1,l),a)),Yo(h,h.length,0,[["exit",f,a],["enter",i[l][1],a],["exit",i[l][1],a],["exit",u,a]]),Yo(i,c-1,l-c+3,h),l=c+h.length-2;break}}for(l=-1;++l<i.length;)i[l][1].type==="strikethroughSequenceTemporary"&&(i[l][1].type="data");return i}function s(i,a,l){const c=this.previous,u=this.events;let f=0;return h;function h(m){return c===126&&u[u.length-1][1].type!=="characterEscape"?l(m):(i.enter("strikethroughSequenceTemporary"),p(m))}function p(m){const g=nh(c);if(m===126)return f>1?l(m):(i.consume(m),f++,p);if(f<2&&!n)return l(m);const b=i.exit("strikethroughSequenceTemporary"),y=nh(m);return b._open=!y||y===2&&!!g,b._close=!g||g===2&&!!y,a(m)}}}class DBe{constructor(){this.map=[]}add(t,n,r){TBe(this,t,n,r)}consume(t){if(this.map.sort(function(s,i){return s[0]-i[0]}),this.map.length===0)return;let n=this.map.length;const r=[];for(;n>0;)n-=1,r.push(t.slice(this.map[n][0]+this.map[n][1]),this.map[n][2]),t.length=this.map[n][0];r.push(t.slice()),t.length=0;let o=r.pop();for(;o;){for(const s of o)t.push(s);o=r.pop()}this.map.length=0}}function TBe(e,t,n,r){let o=0;if(!(n===0&&r.length===0)){for(;o<e.map.length;){if(e.map[o][0]===t){e.map[o][1]+=n,e.map[o][2].push(...r);return}o+=1}e.map.push([t,n,r])}}function ABe(e,t){let n=!1;const r=[];for(;t<e.length;){const o=e[t];if(n){if(o[0]==="enter")o[1].type==="tableContent"&&r.push(e[t+1][1].type==="tableDelimiterMarker"?"left":"none");else if(o[1].type==="tableContent"){if(e[t-1][1].type==="tableDelimiterMarker"){const s=r.length-1;r[s]=r[s]==="left"?"center":"right"}}else if(o[1].type==="tableDelimiterRow")break}else o[0]==="enter"&&o[1].type==="tableDelimiterRow"&&(n=!0);t+=1}return r}function IBe(){return{flow:{null:{name:"table",tokenize:OBe,resolveAll:FBe}}}}function OBe(e,t,n){const r=this;let o=0,s=0,i;return a;function a(j){let A=r.events.length-1;for(;A>-1;){const T=r.events[A][1].type;if(T==="lineEnding"||T==="linePrefix")A--;else break}const R=A>-1?r.events[A][1].type:null,F=R==="tableHead"||R==="tableRow"?C:l;return F===C&&r.parser.lazy[r.now().line]?n(j):F(j)}function l(j){return e.enter("tableHead"),e.enter("tableRow"),c(j)}function c(j){return j===124||(i=!0,s+=1),u(j)}function u(j){return j===null?n(j):Ye(j)?s>1?(s=0,r.interrupt=!0,e.exit("tableRow"),e.enter("lineEnding"),e.consume(j),e.exit("lineEnding"),p):n(j):Nt(j)?zt(e,u,"whitespace")(j):(s+=1,i&&(i=!1,o+=1),j===124?(e.enter("tableCellDivider"),e.consume(j),e.exit("tableCellDivider"),i=!0,u):(e.enter("data"),f(j)))}function f(j){return j===null||j===124||pn(j)?(e.exit("data"),u(j)):(e.consume(j),j===92?h:f)}function h(j){return j===92||j===124?(e.consume(j),f):f(j)}function p(j){return r.interrupt=!1,r.parser.lazy[r.now().line]?n(j):(e.enter("tableDelimiterRow"),i=!1,Nt(j)?zt(e,m,"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(j):m(j))}function m(j){return j===45||j===58?b(j):j===124?(i=!0,e.enter("tableCellDivider"),e.consume(j),e.exit("tableCellDivider"),g):S(j)}function g(j){return Nt(j)?zt(e,b,"whitespace")(j):b(j)}function b(j){return j===58?(s+=1,i=!0,e.enter("tableDelimiterMarker"),e.consume(j),e.exit("tableDelimiterMarker"),y):j===45?(s+=1,y(j)):j===null||Ye(j)?w(j):S(j)}function y(j){return j===45?(e.enter("tableDelimiterFiller"),x(j)):S(j)}function x(j){return j===45?(e.consume(j),x):j===58?(i=!0,e.exit("tableDelimiterFiller"),e.enter("tableDelimiterMarker"),e.consume(j),e.exit("tableDelimiterMarker"),v):(e.exit("tableDelimiterFiller"),v(j))}function v(j){return Nt(j)?zt(e,w,"whitespace")(j):w(j)}function w(j){return j===124?m(j):j===null||Ye(j)?!i||o!==s?S(j):(e.exit("tableDelimiterRow"),e.exit("tableHead"),t(j)):S(j)}function S(j){return n(j)}function C(j){return e.enter("tableRow"),k(j)}function k(j){return j===124?(e.enter("tableCellDivider"),e.consume(j),e.exit("tableCellDivider"),k):j===null||Ye(j)?(e.exit("tableRow"),t(j)):Nt(j)?zt(e,k,"whitespace")(j):(e.enter("data"),_(j))}function _(j){return j===null||j===124||pn(j)?(e.exit("data"),k(j)):(e.consume(j),j===92?M:_)}function M(j){return j===92||j===124?(e.consume(j),_):_(j)}}function FBe(e,t){let n=-1,r=!0,o=0,s=[0,0,0,0],i=[0,0,0,0],a=!1,l=0,c,u,f;const h=new DBe;for(;++n<e.length;){const p=e[n],m=p[1];p[0]==="enter"?m.type==="tableHead"?(a=!1,l!==0&&(AF(h,t,l,c,u),u=void 0,l=0),c={type:"table",start:Object.assign({},m.start),end:Object.assign({},m.end)},h.add(n,0,[["enter",c,t]])):m.type==="tableRow"||m.type==="tableDelimiterRow"?(r=!0,f=void 0,s=[0,0,0,0],i=[0,n+1,0,0],a&&(a=!1,u={type:"tableBody",start:Object.assign({},m.start),end:Object.assign({},m.end)},h.add(n,0,[["enter",u,t]])),o=m.type==="tableDelimiterRow"?2:u?3:1):o&&(m.type==="data"||m.type==="tableDelimiterMarker"||m.type==="tableDelimiterFiller")?(r=!1,i[2]===0&&(s[1]!==0&&(i[0]=i[1],f=l0(h,t,s,o,void 0,f),s=[0,0,0,0]),i[2]=n)):m.type==="tableCellDivider"&&(r?r=!1:(s[1]!==0&&(i[0]=i[1],f=l0(h,t,s,o,void 0,f)),s=i,i=[s[1],n,0,0])):m.type==="tableHead"?(a=!0,l=n):m.type==="tableRow"||m.type==="tableDelimiterRow"?(l=n,s[1]!==0?(i[0]=i[1],f=l0(h,t,s,o,n,f)):i[1]!==0&&(f=l0(h,t,i,o,n,f)),o=0):o&&(m.type==="data"||m.type==="tableDelimiterMarker"||m.type==="tableDelimiterFiller")&&(i[3]=n)}for(l!==0&&AF(h,t,l,c,u),h.consume(t.events),n=-1;++n<t.events.length;){const p=t.events[n];p[0]==="enter"&&p[1].type==="table"&&(p[1]._align=ABe(t.events,n))}return e}function l0(e,t,n,r,o,s){const i=r===1?"tableHeader":r===2?"tableDelimiter":"tableData",a="tableContent";n[0]!==0&&(s.end=Object.assign({},Ad(t.events,n[0])),e.add(n[0],0,[["exit",s,t]]));const l=Ad(t.events,n[1]);if(s={type:i,start:Object.assign({},l),end:Object.assign({},l)},e.add(n[1],0,[["enter",s,t]]),n[2]!==0){const c=Ad(t.events,n[2]),u=Ad(t.events,n[3]),f={type:a,start:Object.assign({},c),end:Object.assign({},u)};if(e.add(n[2],0,[["enter",f,t]]),r!==2){const h=t.events[n[2]],p=t.events[n[3]];if(h[1].end=Object.assign({},p[1].end),h[1].type="chunkText",h[1].contentType="text",n[3]>n[2]+1){const m=n[2]+1,g=n[3]-n[2]-1;e.add(m,g,[])}}e.add(n[3]+1,0,[["exit",f,t]])}return o!==void 0&&(s.end=Object.assign({},Ad(t.events,o)),e.add(o,0,[["exit",s,t]]),s=void 0),s}function AF(e,t,n,r,o){const s=[],i=Ad(t.events,n);o&&(o.end=Object.assign({},i),s.push(["exit",o,t])),r.end=Object.assign({},i),s.push(["exit",r,t]),e.add(n+1,0,s)}function Ad(e,t){const n=e[t],r=n[0]==="enter"?"start":"end";return n[1][r]}const $Be={name:"tasklistCheck",tokenize:zBe};function LBe(){return{text:{91:$Be}}}function zBe(e,t,n){const r=this;return o;function o(l){return r.previous!==null||!r._gfmTasklistFirstContentOfListItem?n(l):(e.enter("taskListCheck"),e.enter("taskListCheckMarker"),e.consume(l),e.exit("taskListCheckMarker"),s)}function s(l){return pn(l)?(e.enter("taskListCheckValueUnchecked"),e.consume(l),e.exit("taskListCheckValueUnchecked"),i):l===88||l===120?(e.enter("taskListCheckValueChecked"),e.consume(l),e.exit("taskListCheckValueChecked"),i):n(l)}function i(l){return l===93?(e.enter("taskListCheckMarker"),e.consume(l),e.exit("taskListCheckMarker"),e.exit("taskListCheck"),a):n(l)}function a(l){return Ye(l)?t(l):Nt(l)?e.check({tokenize:BBe},t,n)(l):n(l)}}function BBe(e,t,n){return zt(e,r,"whitespace");function r(o){return o===null?n(o):t(o)}}function VBe(e){return KZ([hBe(),CBe(),PBe(e),IBe(),LBe()])}const HBe={};function UBe(e){const t=this,n=e||HBe,r=t.data(),o=r.micromarkExtensions||(r.micromarkExtensions=[]),s=r.fromMarkdownExtensions||(r.fromMarkdownExtensions=[]),i=r.toMarkdownExtensions||(r.toMarkdownExtensions=[]);o.push(VBe(n)),s.push(cBe()),i.push(uBe(n))}function IF({text:e,handleRun:t,className:n}){const r=ee(s=>s.themeStyle),o={p:({node:s,...i})=>d.jsx("p",{className:Y("text-sm leading-relaxed mb-4 text-foreground/90",n),...i}),code:({node:s,...i})=>{var l,c;const a=(c=(l=s==null?void 0:s.children)==null?void 0:l[0])==null?void 0:c.value;return a&&/^#([0-9a-fA-F]{6})$/.test(a)?d.jsx("code",{className:Y("rounded-lg bg-muted px-2.5 py-1.5 text-sm font-mono",n),style:{backgroundColor:a},...i}):d.jsx("code",{className:Y("rounded-lg bg-muted/50 border border-border/50 px-2 py-1 text-sm font-mono text-foreground/80 transition-colors hover:bg-muted/70",n),...i})},pre:s=>d.jsx(I9e,{...s,handleRun:t}),ul:({node:s,...i})=>d.jsx("ul",{className:Y("mb-4 ml-6 list-disc space-y-2 text-sm marker:text-muted-foreground",n),...i}),ol:({node:s,...i})=>d.jsx("ol",{className:Y("mb-4 ml-6 list-decimal space-y-2 text-sm marker:text-muted-foreground",n),...i}),li:({node:s,...i})=>d.jsx("li",{className:Y("pl-2 leading-relaxed text-foreground/90",n),...i}),a:({node:s,...i})=>d.jsx("a",{target:"_blank",rel:"noopener noreferrer",className:Y("text-blue-600 underline underline-offset-2 decoration-1 transition-all hover:text-blue-700 hover:decoration-2",n),...i}),h1:({node:s,...i})=>d.jsx("h1",{className:Y("text-2xl font-semibold tracking-tight mb-4 mt-6 text-foreground",n),...i}),h2:({node:s,...i})=>d.jsx("h2",{className:Y("text-xl font-semibold tracking-tight mb-3 mt-5 text-foreground",n),...i}),h3:({node:s,...i})=>d.jsx("h3",{className:Y("text-lg font-medium mb-2 mt-4 text-foreground",n),...i}),h4:({node:s,...i})=>d.jsx("h4",{className:Y("text-base font-medium mb-2 mt-3 text-foreground/90",n),...i}),strong:({node:s,...i})=>d.jsx("strong",{className:Y("font-semibold text-foreground",n),...i}),blockquote:({node:s,...i})=>d.jsx("blockquote",{className:Y("my-4 border-l-4 border-muted-foreground/30 bg-muted/20 pl-4 pr-4 py-3 italic text-foreground/80 rounded-r-md",n),...i}),table:({node:s,...i})=>d.jsx("div",{className:"my-6 overflow-x-auto rounded-lg border border-border/50 shadow-sm",children:d.jsx("table",{className:Y("w-full table-auto border-collapse text-sm",n),...i})}),thead:({node:s,...i})=>{var a,l,c,u,f,h;return d.jsx("thead",{style:{backgroundColor:(c=(l=(a=r==null?void 0:r.chart)==null?void 0:a.dataset)==null?void 0:l.backgroundColor)==null?void 0:c[0],color:Ia((h=(f=(u=r==null?void 0:r.chart)==null?void 0:u.dataset)==null?void 0:f.backgroundColor)==null?void 0:h[0])},className:"sticky top-0",...i})},tr:({node:s,...i})=>d.jsx("tr",{className:Y("border-b border-border/30 transition-colors hover:bg-muted/30 last:border-0",n),...i}),th:({node:s,...i})=>d.jsx("th",{className:Y("px-4 py-3 text-left font-medium text-sm tracking-wide",n),...i}),td:({node:s,...i})=>d.jsx("td",{className:Y("px-4 py-3 align-top text-foreground/90",n),...i})};return d.jsx(kze,{components:o,remarkPlugins:[UBe],children:e})}const zu=["image/png","image/jpeg","image/jpg","image/gif","image/webp"],WBe=["application/pdf","text/plain","text/markdown"],qBe=["text/csv","application/json","text/xml","application/xml"],GBe=["text/javascript","application/javascript","text/typescript","application/x-typescript","text/x-python","application/x-python-code","text/x-sql","application/sql"],YBe=[...zu,...WBe,...qBe,...GBe],WK=10*1024*1024,va=5,qK={".png":"image/png",".jpg":"image/jpeg",".jpeg":"image/jpeg",".gif":"image/gif",".webp":"image/webp",".pdf":"application/pdf",".txt":"text/plain",".md":"text/markdown",".csv":"text/csv",".json":"application/json",".xml":"text/xml",".js":"text/javascript",".jsx":"text/javascript",".ts":"text/typescript",".tsx":"text/typescript",".py":"text/x-python",".sql":"text/x-sql"};function ZBe(e){if(YBe.includes(e.type))return!0;const t=PP(e.name);return t?Object.prototype.hasOwnProperty.call(qK,t):!1}function PP(e){const t=e.lastIndexOf(".");return t===-1?"":e.substring(t).toLowerCase()}function GK(e){if(e.type)return e.type;const t=PP(e.name);return qK[t]||"application/octet-stream"}function KBe(e){return e.size<=WK}function bg(e){if(e===0)return"0 Bytes";const t=1024,n=["Bytes","KB","MB","GB"],r=Math.floor(Math.log(e)/Math.log(t));return Math.round(e/Math.pow(t,r)*100)/100+" "+n[r]}function OF(e){return new Promise((t,n)=>{const r=new FileReader;r.onload=()=>{const s=r.result.split(",")[1];t(s)},r.onerror=n,r.readAsDataURL(e)})}function XBe(e){return new Promise((t,n)=>{if(!zu.includes(GK(e))){n(new Error("Not an image file"));return}const r=new FileReader;r.onload=()=>t(r.result),r.onerror=n,r.readAsDataURL(e)})}async function DP(e){const t=GK(e),n=zu.includes(t),r={id:crypto.randomUUID(),name:e.name,size:e.size,type:t};if(n)try{r.preview=await XBe(e),r.data=r.preview.split(",")[1]}catch(o){console.error("Failed to create image preview:",o),r.data=await OF(e)}else r.data=await OF(e);return r}function YK(e){const t=[],n=[];for(const r of e)ZBe(r)?KBe(r)?t.push(r):n.push({file:r,error:`File too large: ${bg(r.size)} (max ${bg(WK)})`}):n.push({file:r,error:`File type not supported: ${r.type||PP(r.name)}`});return{valid:t,errors:n}}function QBe(e){var r;const t=(r=e.clipboardData)==null?void 0:r.items;if(!t)return[];const n=[];for(let o=0;o<t.length;o++){const s=t[o];if(s.kind==="file"){const i=s.getAsFile();i&&zu.includes(i.type)&&n.push(i)}}return n}function JBe({files:e,onRemove:t,showRemove:n=!0,className:r=""}){if(e.length===0)return null;const o=s=>zu.includes(s)?Wne:s.includes("pdf")||s.includes("text")?Xo:s.includes("javascript")||s.includes("typescript")||s.includes("python")||s.includes("sql")?Une:X3;return d.jsx("div",{className:`flex flex-wrap gap-2 ${r}`,children:e.map(s=>{const i=o(s.type),a=zu.includes(s.type);return d.jsxs("div",{className:"group relative flex items-center gap-2 rounded-lg border border-border bg-muted/50 p-2 transition-colors hover:bg-muted",children:[a&&s.preview?d.jsx("div",{className:"relative h-12 w-12 overflow-hidden rounded",children:d.jsx("img",{src:s.preview,alt:s.name,className:"h-full w-full object-cover"})}):d.jsx("div",{className:"flex h-12 w-12 items-center justify-center rounded bg-background",children:d.jsx(i,{className:"h-6 w-6 text-muted-foreground"})}),d.jsxs("div",{className:"flex flex-col",children:[d.jsx("span",{className:"max-w-[150px] truncate text-xs font-medium",children:s.name}),d.jsx("span",{className:"text-xs text-muted-foreground",children:bg(s.size)}),s.uploadProgress!==void 0&&s.uploadProgress<100&&d.jsx(TR,{value:s.uploadProgress,className:"mt-1 h-1 w-full"})]}),n&&t&&d.jsx(ce,{variant:"ghost",size:"icon",className:"absolute -right-2 -top-2 h-5 w-5 rounded-full bg-background opacity-0 shadow-sm transition-opacity group-hover:opacity-100",onClick:()=>t(s.id),children:d.jsx(Dn,{className:"h-3 w-3"})})]},s.id)})})}function eVe({file:e,className:t=""}){return zu.includes(e.type)&&e.preview?d.jsxs("div",{className:`inline-block ${t}`,children:[d.jsx("img",{src:e.preview,alt:e.name,className:"max-h-64 max-w-full rounded-lg border border-border"}),d.jsxs("div",{className:"mt-1 text-xs text-muted-foreground",children:[e.name," • ",bg(e.size)]})]}):d.jsxs("div",{className:`inline-flex items-center gap-2 rounded-lg border border-border bg-muted/50 px-3 py-2 ${t}`,children:[d.jsx(Xo,{className:"h-4 w-4 text-muted-foreground"}),d.jsx("span",{className:"text-sm",children:e.name}),d.jsxs("span",{className:"text-xs text-muted-foreground",children:["(",bg(e.size),")"]})]})}const FF={"tool-getTableColumns":{"input-streaming":"Fetching table columns...","input-available":"Reading column definitions..."},"tool-getChartDataFromSqlAndPython":{"input-streaming":"Fetching data...","input-available":"Synthesizing response..."},"tool-getChartDataFromCardConfig":{"input-streaming":"Fetching data...","input-available":"Synthesizing response..."},"tool-getForecastDataFromSqlAndPython":{"input-streaming":"Fetching data...","input-available":"Synthesizing response..."},"tool-getChartSQLSyntax":{"input-streaming":"Generating SQL syntax...","input-available":"SQL syntax generated"},"tool-validateCardConfigFormat":{"input-streaming":"Validating card config format...","input-available":"Card config format validated"},"tool-generateQueryConfig":{"input-streaming":"Generating query config...","input-available":"Sending query config..."},"tool-askForMoreInfo":{"input-streaming":"Asking for more information...","input-available":"More information requested"},"tool-createChartFromSql":{"input-streaming":"Creating chart...","input-available":"Chart created"},"tool-getUserSql":{"input-streaming":"Getting SQL...","input-available":"SQL retrieved"},"tool-inspectTableData":{"input-streaming":"Inspecting table data...","input-available":"Analyzing data..."}};function ZK(e,t){var r;if((r=FF[e])!=null&&r[t])return FF[e][t];const n=e.replace("tool-","").replace(/([A-Z])/g," $1").toLowerCase().trim();return t==="input-streaming"?`Processing ${n}...`:`Preparing ${n} response...`}var TP="Collapsible",[tVe,KK]=pr(TP),[nVe,AP]=tVe(TP),XK=E.forwardRef((e,t)=>{const{__scopeCollapsible:n,open:r,defaultOpen:o,disabled:s,onOpenChange:i,...a}=e,[l=!1,c]=kr({prop:r,defaultProp:o,onChange:i});return d.jsx(nVe,{scope:n,disabled:s,contentId:Yn(),open:l,onOpenToggle:E.useCallback(()=>c(u=>!u),[c]),children:d.jsx(Te.div,{"data-state":$P(l),"data-disabled":s?"":void 0,...a,ref:t})})});XK.displayName=TP;var QK="CollapsibleTrigger",IP=E.forwardRef((e,t)=>{const{__scopeCollapsible:n,...r}=e,o=AP(QK,n);return d.jsx(Te.button,{type:"button","aria-controls":o.contentId,"aria-expanded":o.open||!1,"data-state":$P(o.open),"data-disabled":o.disabled?"":void 0,disabled:o.disabled,...r,ref:t,onClick:Se(e.onClick,o.onOpenToggle)})});IP.displayName=QK;var OP="CollapsibleContent",FP=E.forwardRef((e,t)=>{const{forceMount:n,...r}=e,o=AP(OP,e.__scopeCollapsible);return d.jsx(Zn,{present:n||o.open,children:({present:s})=>d.jsx(rVe,{...r,ref:t,present:s})})});FP.displayName=OP;var rVe=E.forwardRef((e,t)=>{const{__scopeCollapsible:n,present:r,children:o,...s}=e,i=AP(OP,n),[a,l]=E.useState(r),c=E.useRef(null),u=rt(t,c),f=E.useRef(0),h=f.current,p=E.useRef(0),m=p.current,g=i.open||a,b=E.useRef(g),y=E.useRef(void 0);return E.useEffect(()=>{const x=requestAnimationFrame(()=>b.current=!1);return()=>cancelAnimationFrame(x)},[]),Nr(()=>{const x=c.current;if(x){y.current=y.current||{transitionDuration:x.style.transitionDuration,animationName:x.style.animationName},x.style.transitionDuration="0s",x.style.animationName="none";const v=x.getBoundingClientRect();f.current=v.height,p.current=v.width,b.current||(x.style.transitionDuration=y.current.transitionDuration,x.style.animationName=y.current.animationName),l(r)}},[i.open,r]),d.jsx(Te.div,{"data-state":$P(i.open),"data-disabled":i.disabled?"":void 0,id:i.contentId,hidden:!g,...s,ref:u,style:{"--radix-collapsible-content-height":h?`${h}px`:void 0,"--radix-collapsible-content-width":m?`${m}px`:void 0,...e.style},children:g&&o})});function $P(e){return e?"open":"closed"}var JK=XK,oVe=IP,sVe=FP;const rh=JK,oh=IP,sh=FP;function iVe({part:e,showTools:t}){if(!t)return null;const{input:n,output:r,...o}=e;return e.type,d.jsx("div",{className:"space-y-3",children:t&&d.jsxs(rh,{children:[d.jsxs("div",{className:"inline-flex items-center gap-2",children:[d.jsxs(oh,{className:"rounded-md border border-foreground/20 p-1 px-2 font-mono text-xs text-foreground/80 hover:bg-foreground/5",children:[d.jsx("span",{className:"font-bold",children:"Tool:"})," ",e.type.split("-")[1]]}),wm]}),d.jsx(sh,{className:"mt-2 font-mono text-xs",children:d.jsxs("div",{className:"space-y-2 px-2",children:[d.jsxs("div",{className:"space-y-1",children:[d.jsx("span",{children:"Args:"}),d.jsx(zl,{language:"json",code:JSON.stringify(o,null,2)})]}),d.jsxs("div",{className:"space-y-1",children:[d.jsx("span",{children:"Input:"}),d.jsx(zl,{language:"json",code:JSON.stringify(n,null,2)})]}),d.jsxs("div",{className:"space-y-1",children:[d.jsx("span",{children:"Output:"}),d.jsx(zl,{language:"json",code:JSON.stringify(r,null,2)})]})]})})]})})}function aVe(){const{authToken:e,tokenProps:t}=qe(),{currentUser:n}=Qi(),r=Xi({mutationFn:async o=>{if(!(e!=null&&e.accessToken))throw new Error("No authentication token available");const i=`${t.apiServiceUrl||""}/v1/feedback`,a={...o,user:n,tokenContext:t},l=await nc(i,e.accessToken,a,"POST");if(!l||!l.success)throw new Error((l==null?void 0:l.error)||"Failed to send feedback");return l},onSuccess:o=>{Ge.success(`Feedback sent successfully! Issue: ${o.issueNumber}`,{duration:5e3})},onError:o=>{console.error("Feedback submission error:",o),Ge.error("Failed to send feedback. Please try again later.",{duration:5e3})}});return{sendFeedback:r.mutate,sendFeedbackAsync:r.mutateAsync,isLoading:r.isPending,isSuccess:r.isSuccess,isError:r.isError,error:r.error,data:r.data,reset:r.reset}}function LP(e,t,n){return{category:e,userMessage:n,systemState:t,metadata:{url:window.location.href,userAgent:navigator.userAgent,timestamp:new Date().toISOString(),viewport:`${window.innerWidth}x${window.innerHeight}`}}}function Cv({open:e,onOpenChange:t,feedbackData:n}){var g,b,y,x,v,w,S,C,k,_,M,j,A;const[r,o]=N.useState(""),[s,i]=N.useState(!1),{sendFeedback:a,isLoading:l,isSuccess:c,data:u,reset:f}=aVe(),h=()=>{const R={...n,userMessage:r.trim()||void 0};a(R)},p=()=>{o(""),i(!1),f(),t(!1)},m={category:n.category,error:{message:(g=n.systemState)==null?void 0:g.errorMessage,sql:(b=n.systemState)==null?void 0:b.generatedSql,errorSql:(y=n.systemState)==null?void 0:y.errorSql},assistantType:(x=n.systemState)==null?void 0:x.assistantType,toolType:(v=n.systemState)==null?void 0:v.toolType,userQuery:(w=n.systemState)==null?void 0:w.userQuery,messages:(S=n.systemState)==null?void 0:S.messages,aiContext:(C=n.systemState)==null?void 0:C.aiContext,toolInput:(k=n.systemState)==null?void 0:k.toolInput,toolOutput:(_=n.systemState)==null?void 0:_.toolOutput,cardConfig:(M=n.systemState)==null?void 0:M.cardConfig,dataSource:(j=n.systemState)==null?void 0:j.dataSource,filters:(A=n.systemState)==null?void 0:A.dashboardFilters,metadata:n.metadata};return d.jsx(Rs,{open:e,onOpenChange:p,children:d.jsxs(ts,{className:"max-w-2xl",children:[d.jsxs(ns,{children:[d.jsx(rs,{children:c?"Feedback Sent Successfully":n.category==="dashboard-assistant"?"Report Dashboard Assistant Issue":n.category==="editor-assistant"?"Report Editor Assistant Issue":"Report Query Generation Issue"}),d.jsx(ai,{children:c?`Your feedback has been submitted with issue number: ${u==null?void 0:u.issueNumber}`:n.category==="dashboard-assistant"||n.category==="editor-assistant"?"Help us improve by reporting this AI assistant issue. Your feedback will be sent to our support team.":"Help us improve by reporting this query generation issue. Your feedback will be sent to our support team."})]}),!c&&d.jsxs(d.Fragment,{children:[d.jsxs("div",{className:"space-y-4",children:[d.jsxs("div",{className:"space-y-2",children:[d.jsx(fe,{htmlFor:"message",children:"Additional Information (Optional)"}),d.jsx(fh,{id:"message",placeholder:"Please describe what you were trying to do when this error occurred...",value:r,onChange:R=>o(R.target.value),className:"min-h-[100px] resize-none ring-inset focus-visible:ring-1 focus-visible:ring-ring focus-visible:ring-offset-0",disabled:l})]}),d.jsxs(rh,{open:s,onOpenChange:i,children:[d.jsxs("div",{className:"flex items-center gap-1",children:[d.jsx(oh,{asChild:!0,children:d.jsxs(ce,{variant:"ghost",size:"sm",className:"flex flex-1 items-center justify-between p-2 hover:bg-muted",children:[d.jsx("span",{className:"text-sm font-medium",children:"View data to be sent"}),s?d.jsx(Eo,{className:"h-4 w-4"}):d.jsx(Qs,{className:"h-4 w-4"})]})}),d.jsx(Fu,{text:JSON.stringify(m,null,2),className:"h-8 w-8 shrink-0"})]}),d.jsx(sh,{className:"mt-2",children:d.jsx(qi,{className:"h-[300px] w-full rounded-md border bg-muted/50 p-4",children:d.jsx("div",{className:"text-xs overflow-auto break-all whitespace-pre-wrap",children:d.jsx(zl,{code:JSON.stringify(m,null,2),language:"json"})})})})]})]}),d.jsxs(Ps,{children:[d.jsx(ce,{variant:"outline",onClick:p,disabled:l,children:"Cancel"}),d.jsx(ce,{onClick:h,disabled:l,className:"min-w-[100px]",children:l?d.jsxs(d.Fragment,{children:[d.jsx(Ns,{className:"mr-2 h-4 w-4 animate-spin"}),"Sending..."]}):"Send Feedback"})]})]}),c&&d.jsxs("div",{className:"flex flex-col items-center space-y-4 py-6",children:[d.jsx(Bne,{className:"h-12 w-12 text-green-600"}),d.jsxs("div",{className:"text-center",children:[d.jsx("p",{className:"text-lg font-medium",children:"Thank you for your feedback!"}),d.jsxs("p",{className:"mt-2 text-sm text-muted-foreground",children:["Issue Number:"," ",d.jsx("span",{className:"font-mono font-medium",children:u==null?void 0:u.issueNumber})]}),d.jsx("p",{className:"mt-1 text-sm text-muted-foreground",children:"Our support team will review your feedback and take appropriate action."})]}),d.jsx(ce,{onClick:p,className:"mt-4",children:"Close"})]})]})})}var ih=(e=>(e.QUERY_GENERATION="query-generation",e.DASHBOARD_ASSISTANT="dashboard-assistant",e.EDITOR_ASSISTANT="editor-assistant",e))(ih||{});function lVe({part:e,messages:t}){const[n,r]=N.useState(!1),[o,s]=N.useState(null),i=h6(),a=Fg(),{tokenProps:l}=N.useContext(Tg);Qi();const c=()=>{var g;const u=t==null?void 0:t.filter(b=>b.role==="user").pop(),f=(g=u==null?void 0:u.parts)==null?void 0:g.find(b=>b.type==="text"),h=(f==null?void 0:f.text)||"",p=i==="dashboard"?ih.DASHBOARD_ASSISTANT:ih.EDITOR_ASSISTANT,m=LP(p,{errorMessage:e.errorText||"Tool invocation error occurred",toolType:e.type,toolInput:e.input,toolOutput:null,assistantType:i,userQuery:h,messages:t,aiContext:a});s(m),r(!0)};return d.jsxs(d.Fragment,{children:[d.jsxs(rh,{children:[d.jsxs("div",{className:"flex items-center justify-between",children:[d.jsx(oh,{className:"",children:d.jsxs(fe,{className:"flex cursor-pointer items-center hover:text-foreground",children:[d.jsx(T_,{className:"mr-2 size-4 text-yellow-500"}),"Recovering from Error"]})}),d.jsxs(ce,{variant:"ghost",size:"sm",className:"gap-1 text-[11px]",onClick:c,"aria-label":"Send feedback",children:[d.jsx(j_,{className:"h-3 w-3"}),"Send Feedback"]})]}),d.jsx(sh,{className:"mt-2 text-xs",children:d.jsxs("div",{className:"relative space-y-2 rounded-md border border-yellow-500 bg-yellow-50 p-4 text-black/80 dark:border-yellow-500/80 dark:bg-yellow-500/10 dark:text-white/80",children:[d.jsxs(fe,{className:"text-xs",children:["Tool Invocation Error (",e.type.split("-")[1],")"]}),d.jsx("p",{children:e.errorText})]})})]}),o&&d.jsx(Cv,{open:n,onOpenChange:u=>{r(u),u||s(null)},feedbackData:o})]})}const ah={connectionId:"",connectionType:"none",mode:"semanticDomain",selectedEntities:[]},$F=N.memo(({cfg:e,onDatapointClick:t})=>d.jsx(p1,{cfg:e,onDatapointClick:t}),(e,t)=>JSON.stringify(e.cfg)===JSON.stringify(t.cfg)&&e.onDatapointClick===t.onDatapointClick);function cVe({part:e,onAddToDashboard:t,messages:n}){var I,B;const r=e.output,o=e.input,[s,i]=N.useState(!1),[a,l]=N.useState(!1),[c,u]=N.useState("visual"),[f,h]=N.useState(!1),[p,m]=N.useState(null),g=N.useMemo(()=>(e==null?void 0:e.toolCallId)??br(),[e]),{queueMessage:b}=hh(),y=h6(),x=Fg(),{tokenProps:v}=N.useContext(Tg);Qi();const w=()=>{const L=e.toolCallId;$().label;const P=`Can you explain how this visual was calculated? [ref: ${L}]`;b("dashboard",P)},S=()=>{var W;console.log("Send Feedback clicked",{activeAssistantType:y,messages:n,output:r,input:o,part:e});const L=n==null?void 0:n.filter(U=>U.role==="user").pop(),P=(W=L==null?void 0:L.parts)==null?void 0:W.find(U=>U.type==="text"),H=(P==null?void 0:P.text)||"",q=y==="dashboard"?ih.DASHBOARD_ASSISTANT:ih.EDITOR_ASSISTANT;console.log("Feedback category:",q);const K=LP(q,{errorMessage:(r==null?void 0:r.error)||"An error occurred while generating the visualization",toolType:e.type,toolInput:o,toolOutput:r,assistantType:y,userQuery:H,messages:n,aiContext:x,cardConfig:o==null?void 0:o.cardConfig,dataSource:r==null?void 0:r.dataSource,generatedSql:o==null?void 0:o.sql});console.log("Feedback payload prepared:",K),m(K),h(!0)},C=o==null?void 0:o.chartType,k=o==null?void 0:o.connectionId,_=o==null?void 0:o.cardConfig,M=o==null?void 0:o.chartTitle,j=o==null?void 0:o.sql,A=(I=r==null?void 0:r.data)==null?void 0:I.userSql,R=o==null?void 0:o.python,F=(B=r==null?void 0:r.data)==null?void 0:B.records,T=r==null?void 0:r.dataSource,D=N.useMemo(()=>C?{id:g,config:_,type:C,dataSource:T,preferences:{tablePrefs:{pageSize:10}}}:null,[g,_,C,T]),O=N.useMemo(()=>!D||C==="pivotTable"?null:OM({card:D,cardType:C,data:F||[],queryConfig:{}}),[D,C,F]),z=N.useMemo(()=>{var K,W,U,G;if(C!=="pivotTable"||!r)return null;const L=((K=r.data)==null?void 0:K.pivotSchema)||[],P=((W=r.data)==null?void 0:W.subtotalColumns)||[],H=(U=r.data)==null?void 0:U.columnSubtotalMeta,q=(G=r.data)==null?void 0:G.groupByColumns;return{records:F||[],pivotSchema:L,subtotalColumns:P,columnSubtotalMeta:H,groupByColumns:q}},[C,r,F]),V=lb(D,z),$=()=>{const L=D?av(D):!1,P=g1.find(q=>q.id===C),H=P==null?void 0:P.icon;return R?{type:"advanced",label:"Advanced Analysis",icons:[nu,KD]}:L&&H?{type:"standard",label:"Standard Analysis",icons:[H]}:{type:"sql",label:"SQL Analysis",icons:[nu]}};if(!r)return null;if(r.error){const L=r.errorType||"unknown",P=r.hint||"",H=r.rootCause||r.error,q=r.shouldRetry!==!1,K=r.validationErrors||[],W=r.suggestions||[],U=K.length>0,G=U?{border:"border-purple-500/60 dark:border-purple-500/50",bg:"bg-purple-50 dark:bg-purple-500/10",text:"text-purple-800 dark:text-purple-300",iconColor:"text-purple-600 dark:text-purple-500",accentBg:"bg-purple-100 dark:bg-purple-900/30",accentText:"text-purple-900 dark:text-purple-200"}:{border:"border-yellow-500/60 dark:border-yellow-500/50",bg:"bg-yellow-50 dark:bg-yellow-500/10",text:"text-yellow-800 dark:text-yellow-300",iconColor:"text-yellow-600 dark:text-yellow-500",accentBg:"bg-yellow-100 dark:bg-yellow-900/30",accentText:"text-yellow-900 dark:text-yellow-200"},Q=()=>U?q?"Configuration validation failed. Retrying...":"Configuration validation failed":L==="group_by_error"?q?"SQL grouping error. Retrying...":"SQL grouping error":L==="syntax_error"?q?"SQL syntax error. Retrying...":"SQL syntax error":L==="type_mismatch"?q?"Data type mismatch. Retrying...":"Data type mismatch":q?"Retrying...":"Couldn't generate this visual";return d.jsxs(d.Fragment,{children:[d.jsx(rh,{open:a,onOpenChange:l,children:d.jsxs("div",{className:`relative space-y-2 rounded-md border ${G.border} ${G.bg} p-3 text-xs`,children:[d.jsxs("div",{className:"flex items-center gap-2",children:[d.jsx(T_,{className:`size-4 shrink-0 ${G.iconColor}`,"aria-hidden":"true"}),d.jsx("span",{className:`font-medium ${G.text}`,children:Q()})]}),U&&d.jsx("div",{className:`text-[10px] ${G.text} opacity-80`,children:"Self-healing defense: Config validated before execution"}),H&&H!==r.error&&d.jsxs("div",{className:"text-foreground/80",children:[d.jsx("span",{className:"font-semibold",children:"Issue:"})," ",H]}),P&&d.jsxs("div",{className:`rounded-md ${G.accentBg} p-2 ${G.accentText}`,children:[d.jsx("span",{className:"font-semibold",children:"Fix:"})," ",P]}),K.length>0&&d.jsxs("div",{className:"space-y-1",children:[d.jsx("div",{className:`font-semibold ${G.text}`,children:"Configuration issues found:"}),d.jsxs("ul",{className:"ml-4 list-disc space-y-0.5",children:[K.slice(0,3).map((re,J)=>d.jsx("li",{className:"text-foreground/70 dark:text-foreground/60",children:re},J)),K.length>3&&d.jsxs("li",{className:"text-muted-foreground",children:["...and ",K.length-3," more"]})]})]}),d.jsxs("div",{className:"flex items-center justify-between pt-1",children:[d.jsx(oh,{asChild:!0,children:d.jsxs(ce,{variant:"ghost",size:"sm",className:`gap-1 text-[11px] ${G.text}`,children:[a?"Hide":"View"," technical details",d.jsx(Eo,{className:`h-3 w-3 transition-transform ${a?"rotate-180":""}`})]})}),d.jsxs(ce,{variant:"ghost",size:"sm",className:`gap-1 text-[11px] ${G.text}`,onClick:S,children:[d.jsx(j_,{className:"h-3 w-3"}),"Report Issue"]})]}),d.jsxs(sh,{className:"mt-2 space-y-2",children:[W.length>0&&d.jsxs("div",{className:"rounded-md border border-blue-500/40 bg-background/60 p-2 dark:bg-background/40",children:[d.jsx("div",{className:"mb-1 text-[11px] font-semibold text-blue-900 dark:text-blue-200",children:"Suggested fixes:"}),d.jsx("ul",{className:"ml-3 list-disc space-y-1",children:W.map((re,J)=>d.jsx("li",{className:"text-[11px] leading-relaxed text-foreground/80",children:re},J))})]}),d.jsxs("div",{className:`rounded-md border ${G.border} bg-background/60 p-2 dark:bg-background/40`,children:[d.jsx("div",{className:`mb-1 text-[11px] font-semibold ${G.text}`,children:"Raw error:"}),d.jsx("pre",{className:"max-h-48 overflow-auto whitespace-pre-wrap break-words font-mono text-[11px] leading-relaxed text-foreground/80",children:r.error})]})]})]})}),p&&d.jsx(Cv,{open:f,onOpenChange:re=>{h(re),re||m(null)},feedbackData:p})]})}return d.jsxs(d.Fragment,{children:[d.jsxs($i,{className:"grid w-full max-w-full grid-cols-1 border border-muted bg-background shadow-sm",children:[d.jsx(Li,{className:"pb-3",children:d.jsxs("div",{className:"flex items-center justify-between",children:[d.jsx("div",{className:"space-y-1",children:d.jsx("h3",{className:"text-base font-semibold text-foreground",children:M||"Untitled Chart"})}),d.jsxs("div",{className:"flex items-center gap-2",children:[C!=="table"&&C!=="pivotTable"&&d.jsx(ea,{value:c,onValueChange:u,children:d.jsxs(ci,{className:"h-8",children:[d.jsx(Qn,{value:"visual",className:"h-7 w-7 p-0","aria-label":"View as chart",children:d.jsx(Ag,{className:"h-3.5 w-3.5"})}),d.jsx(Qn,{value:"table",className:"h-7 w-7 p-0","aria-label":"View as table",children:d.jsx(Zv,{className:"h-3.5 w-3.5"})})]})}),d.jsx(ce,{variant:"outline",size:"sm",className:"h-8 w-8 p-0",onClick:()=>{t==null||t({sql:j||"",data:F||[],dataSource:T||ah,cardConfig:_,cardTitle:M||"Untitled Chart",connectionId:k||"",cardType:C||"bar",python:R||""})},"aria-label":"Add visual to dashboard",children:d.jsx(ks,{className:"h-4 w-4"})})]})]})}),d.jsxs(Va,{className:"space-y-4",children:[d.jsx("div",{className:Y("isolate flex w-full grow flex-col",C!=="table"&&C!=="pivotTable"&&"min-h-[360px]"),children:d.jsx("div",{className:"flex grow flex-col",children:C==="table"&&D?d.jsx("div",{className:"min-w-0",children:d.jsx(Jm,{card:D,data:F||[],isLoading:!1})}):C==="pivotTable"&&V&&D?d.jsx(m1,{data:V.data,card:D,options:V.options}):O&&C!=="table"&&C!=="pivotTable"?c==="table"?d.jsx("div",{className:"min-w-0 pb-6",children:d.jsx(Jm,{card:D,data:F||[],isLoading:!1})}):d.jsx($F,{cfg:O}):O&&d.jsx($F,{cfg:O})})}),(j||R||D&&av(D))&&d.jsxs(rh,{open:s,onOpenChange:i,children:[d.jsxs("div",{className:"flex items-center justify-between border-t border-muted/40 pb-2 pt-2",children:[d.jsx("div",{className:"flex items-center gap-2",children:(()=>{const L=$();return d.jsxs("div",{className:"flex items-center gap-1.5 text-xs text-muted-foreground",children:[L.icons.map((P,H)=>d.jsx(P,{className:"h-3 w-3"},H)),d.jsx("span",{children:L.label}),d.jsx(ce,{variant:"ghost",size:"sm",className:"h-4 w-4 p-0 hover:text-foreground",onClick:w,title:"Ask for explanation",children:d.jsx(uh,{className:"h-3 w-3"})})]})})()}),d.jsx(oh,{asChild:!0,children:d.jsxs(ce,{variant:"ghost",size:"sm",className:"gap-1 text-xs",children:[s?"Hide Details":"Show Details",d.jsx(Eo,{className:`h-3 w-3 transition-transform ${s?"rotate-180":""}`})]})})]}),d.jsxs(sh,{className:"space-y-3 pb-6",children:[A&&d.jsxs("div",{className:"space-y-2",children:[d.jsxs("div",{className:"flex items-center justify-between gap-2",children:[d.jsxs("div",{className:"flex items-center gap-2",children:[d.jsx(nu,{className:"h-4 w-4 text-blue-600"}),d.jsx("span",{className:"text-sm font-medium text-foreground",children:"SQL Query"})]}),d.jsx(Fu,{text:A,className:"-mr-1"})]}),d.jsx("div",{className:"rounded-md border bg-muted/30",children:d.jsx(zl,{language:"sql",code:A})})]}),R&&d.jsxs("div",{className:"space-y-2",children:[d.jsxs("div",{className:"flex items-center justify-between gap-2",children:[d.jsxs("div",{className:"flex items-center gap-2",children:[d.jsx(KD,{className:"h-4 w-4 text-green-600"}),d.jsx("span",{className:"text-sm font-medium text-foreground",children:"Python"})]}),d.jsx(Fu,{text:R,className:"-mr-1"})]}),d.jsx("div",{className:"rounded-md border bg-muted/30",children:d.jsx(zl,{language:"python",code:R})})]})]})]})]})]}),p&&d.jsx(Cv,{open:f,onOpenChange:L=>{h(L),L||m(null)},feedbackData:p})]})}const uVe=["tool-getChartDataFromSqlAndPython","tool-getChartDataFromCardConfig","tool-getForecastDataFromSqlAndPython","tool-generateQueryConfig"];function dVe({part:e,idx:t,showTools:n,onAddToDashboard:r,messages:o}){if(!e.state)return null;if(e.state==="input-streaming"||e.state==="input-available"){const s=ZK(e.type,e.state);return d.jsx(fVe,{text:s})}if(e.state==="output-available"){const s=uVe.includes(e.type);return d.jsxs("div",{className:"my-2 space-y-2",children:[d.jsx(iVe,{part:e,showTools:n}),s&&r&&d.jsx(cVe,{part:e,onAddToDashboard:r,messages:o})]},t)}return e.state==="output-error"?d.jsx("div",{className:"mt-2",children:d.jsx(lVe,{part:e,messages:o})},t):d.jsx("div",{},t)}function fVe({text:e}){return d.jsx("div",{className:"mt-2 animate-pulse text-xs text-muted-foreground",children:e})}function hVe({errorMessage:e}){return d.jsxs("div",{className:"flex items-start gap-2 rounded-md bg-red-500/10 p-2 text-sm text-red-500 backdrop-blur-sm",children:[d.jsx(T_,{className:"mt-0.5 h-4 w-4 shrink-0"}),d.jsx("span",{children:e})]})}function pVe({text:e,files:t}){return d.jsxs("div",{className:"group relative rounded-md border border-border/50 bg-muted/50 p-3 text-sm",children:[d.jsx(ere,{className:"float-left mr-2 mt-0.5 size-3.5"}),d.jsxs("div",{className:"space-y-2",children:[e&&d.jsx("div",{className:"whitespace-pre-line",children:e}),t&&t.length>0&&d.jsx("div",{className:"flex flex-wrap gap-2",children:t.map(n=>d.jsx(eVe,{file:n},n.id))})]}),e&&d.jsx("div",{className:"absolute right-1 top-1 opacity-0 transition-opacity group-hover:opacity-100",children:d.jsx(Fu,{text:e,className:"h-6"})})]})}function mVe({text:e}){const t=e.split("|"),n=t[0],r=t[1]||"{}",o=JSON.parse(r);return d.jsxs("div",{className:"space-y-1 text-xs",children:[d.jsxs("div",{children:[d.jsx("span",{className:"font-bold",children:"System Message:"})," ",n]}),d.jsxs("div",{className:"space-y-1",children:[d.jsx("span",{className:"font-mono text-xs",children:"Scope:"}),d.jsx(Z$e,{children:JSON.stringify(o,null,2)})]})]})}function eX({status:e,errorMessage:t}){return e==="submitted"?d.jsx("div",{className:"mt-2 animate-pulse text-xs text-muted-foreground",children:"Thinking..."}):e==="streaming"?d.jsx("div",{className:"mt-2 text-xs text-muted-foreground",children:d.jsx(Tu,{size:"sm","aria-label":"chat-status"})}):e==="error"?d.jsx("div",{className:"mt-2 text-xs text-muted-foreground",children:d.jsx(hVe,{errorMessage:t})}):null}function tX({messages:e,showTools:t=!1,onAddToDashboard:n,showSystemMessage:r=!1,handleRun:o}){return d.jsx("div",{children:e==null?void 0:e.map((s,i)=>{var a,l,c;if(s.role==="user"){const u=((a=s.parts)==null?void 0:a.filter(m=>m.type==="text"))||[],f=((l=s.parts)==null?void 0:l.filter(m=>m.type==="file"))||[],h=u.map(m=>m.text).join(`
|
|
936
936
|
`).trim(),p=f.map((m,g)=>{var x,v;let b="",y;if((x=m.url)!=null&&x.startsWith("data:")){const w=m.url.match(/data:[^;]+;base64,(.+)/);w&&(b=w[1],(v=m.mediaType)!=null&&v.startsWith("image/")&&(y=m.url))}return{id:`${s.id||i}-file-${g}`,name:m.filename||`File ${g+1}`,size:0,type:m.mediaType||"application/octet-stream",data:b,preview:y}});return d.jsx(pVe,{text:h||void 0,files:p.length>0?p:void 0},s.id||i)}return(c=s.parts)==null?void 0:c.map((u,f)=>{var p;const h=`${s.id||i}-${f}`;switch(u.type){case"text":return s.role==="assistant"?d.jsx("div",{className:"my-2",children:d.jsx(IF,{text:u.text,handleRun:o,onAddToDashboard:n})},h):s.role==="system"&&r?d.jsx(mVe,{text:u.text},h):null;case"reasoning":return u.state==="streaming"?d.jsx("div",{className:"mt-2 animate-pulse",children:u.text?d.jsx(IF,{className:"text-xs text-muted-foreground",text:u.text}):d.jsx("div",{className:"text-xs text-muted-foreground",children:"Reasoning..."})},h):null;default:return(p=u.type)!=null&&p.startsWith("tool-")||u.type==="dynamic-tool"?d.jsx(dVe,{part:u,idx:h,showTools:t,onAddToDashboard:n,messages:e},h):null}})})})}function nX({placeholders:e,onClick:t}){return d.jsx("div",{className:"grid grid-cols-2 gap-2 text-foreground/80",children:e==null?void 0:e.map(n=>d.jsxs("div",{onClick:()=>t(n),className:"cursor-pointer rounded-md border border-border p-4 hover:bg-muted/50",children:[d.jsx("p",{className:"text-sm font-semibold",children:n.title}),d.jsx("p",{className:"text-sm text-muted-foreground/70 dark:text-muted-foreground/50",children:n.subtitle})]},n.title))})}var rX="vercel.ai.error",gVe=Symbol.for(rX),oX,bVe=class sX extends Error{constructor({name:t,message:n,cause:r}){super(n),this[oX]=!0,this.name=t,this.cause=r}static isInstance(t){return sX.hasMarker(t,rX)}static hasMarker(t,n){const r=Symbol.for(n);return t!=null&&typeof t=="object"&&r in t&&typeof t[r]=="boolean"&&t[r]===!0}};oX=gVe;var Ql=bVe;function iX(e){return e==null?"unknown error":typeof e=="string"?e:e instanceof Error?e.message:JSON.stringify(e)}var aX="AI_InvalidArgumentError",lX=`vercel.ai.error.${aX}`,yVe=Symbol.for(lX),cX,xVe=class extends Ql{constructor({message:e,cause:t,argument:n}){super({name:aX,message:e,cause:t}),this[cX]=!0,this.argument=n}static isInstance(e){return Ql.hasMarker(e,lX)}};cX=yVe;var uX="AI_JSONParseError",dX=`vercel.ai.error.${uX}`,vVe=Symbol.for(dX),fX,LF=class extends Ql{constructor({text:e,cause:t}){super({name:uX,message:`JSON parsing failed: Text: ${e}.
|
|
937
937
|
Error message: ${iX(t)}`,cause:t}),this[fX]=!0,this.text=e}static isInstance(e){return Ql.hasMarker(e,dX)}};fX=vVe;var hX="AI_TypeValidationError",pX=`vercel.ai.error.${hX}`,wVe=Symbol.for(pX),mX,SVe=class Hk extends Ql{constructor({value:t,cause:n}){super({name:hX,message:`Type validation failed: Value: ${JSON.stringify(t)}.
|
|
938
938
|
Error message: ${iX(n)}`,cause:n}),this[mX]=!0,this.value=t}static isInstance(t){return Ql.hasMarker(t,pX)}static wrap({value:t,cause:n}){return Hk.isInstance(n)&&n.value===t?n:new Hk({value:t,cause:n})}};mX=wVe;var Ev=SVe;class zF extends Error{constructor(t,n){super(t),this.name="ParseError",this.type=n.type,this.field=n.field,this.value=n.value,this.line=n.line}}function O2(e){}function CVe(e){if(typeof e=="function")throw new TypeError("`callbacks` must be an object, got a function instead. Did you mean `{onEvent: fn}`?");const{onEvent:t=O2,onError:n=O2,onRetry:r=O2,onComment:o}=e;let s="",i=!0,a,l="",c="";function u(g){const b=i?g.replace(/^\xEF\xBB\xBF/,""):g,[y,x]=EVe(`${s}${b}`);for(const v of y)f(v);s=x,i=!1}function f(g){if(g===""){p();return}if(g.startsWith(":")){o&&o(g.slice(g.startsWith(": ")?2:1));return}const b=g.indexOf(":");if(b!==-1){const y=g.slice(0,b),x=g[b+1]===" "?2:1,v=g.slice(b+x);h(y,v,g);return}h(g,"",g)}function h(g,b,y){switch(g){case"event":c=b;break;case"data":l=`${l}${b}
|
|
@@ -974,7 +974,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
974
974
|
|
|
975
975
|
`)},flush(e){e.enqueue(`data: [DONE]
|
|
976
976
|
|
|
977
|
-
`)}})}});var $Ge=vr([wn({type:Qe("text-start"),id:Me(),providerMetadata:Hn.optional()}),wn({type:Qe("text-delta"),id:Me(),delta:Me(),providerMetadata:Hn.optional()}),wn({type:Qe("text-end"),id:Me(),providerMetadata:Hn.optional()}),wn({type:Qe("error"),errorText:Me()}),wn({type:Qe("tool-input-start"),toolCallId:Me(),toolName:Me(),providerExecuted:mr().optional(),dynamic:mr().optional()}),wn({type:Qe("tool-input-delta"),toolCallId:Me(),inputTextDelta:Me()}),wn({type:Qe("tool-input-available"),toolCallId:Me(),toolName:Me(),input:Bo(),providerExecuted:mr().optional(),providerMetadata:Hn.optional(),dynamic:mr().optional()}),wn({type:Qe("tool-input-error"),toolCallId:Me(),toolName:Me(),input:Bo(),providerExecuted:mr().optional(),providerMetadata:Hn.optional(),dynamic:mr().optional(),errorText:Me()}),wn({type:Qe("tool-output-available"),toolCallId:Me(),output:Bo(),providerExecuted:mr().optional(),dynamic:mr().optional()}),wn({type:Qe("tool-output-error"),toolCallId:Me(),errorText:Me(),providerExecuted:mr().optional(),dynamic:mr().optional()}),wn({type:Qe("reasoning"),text:Me(),providerMetadata:Hn.optional()}),wn({type:Qe("reasoning-start"),id:Me(),providerMetadata:Hn.optional()}),wn({type:Qe("reasoning-delta"),id:Me(),delta:Me(),providerMetadata:Hn.optional()}),wn({type:Qe("reasoning-end"),id:Me(),providerMetadata:Hn.optional()}),wn({type:Qe("reasoning-part-finish")}),wn({type:Qe("source-url"),sourceId:Me(),url:Me(),title:Me().optional(),providerMetadata:Hn.optional()}),wn({type:Qe("source-document"),sourceId:Me(),mediaType:Me(),title:Me(),filename:Me().optional(),providerMetadata:Hn.optional()}),wn({type:Qe("file"),url:Me(),mediaType:Me(),providerMetadata:Hn.optional()}),wn({type:Me().startsWith("data-"),id:Me().optional(),data:Bo(),transient:mr().optional()}),wn({type:Qe("start-step")}),wn({type:Qe("finish-step")}),wn({type:Qe("start"),messageId:Me().optional(),messageMetadata:Bo().optional()}),wn({type:Qe("finish"),messageMetadata:Bo().optional()}),wn({type:Qe("abort")}),wn({type:Qe("message-metadata"),messageMetadata:Bo()})]);function LGe(e){return e.type.startsWith("data-")}function sQ(e,t){if(e===void 0&&t===void 0)return;if(e===void 0)return t;if(t===void 0)return e;const n={...e};for(const r in t)if(Object.prototype.hasOwnProperty.call(t,r)){const o=t[r];if(o===void 0)continue;const s=r in e?e[r]:void 0,i=o!==null&&typeof o=="object"&&!Array.isArray(o)&&!(o instanceof Date)&&!(o instanceof RegExp),a=s!=null&&typeof s=="object"&&!Array.isArray(s)&&!(s instanceof Date)&&!(s instanceof RegExp);i&&a?n[r]=sQ(s,o):n[r]=o}return n}function zGe(e){const t=["ROOT"];let n=-1,r=null;function o(l,c,u){switch(l){case'"':{n=c,t.pop(),t.push(u),t.push("INSIDE_STRING");break}case"f":case"t":case"n":{n=c,r=c,t.pop(),t.push(u),t.push("INSIDE_LITERAL");break}case"-":{t.pop(),t.push(u),t.push("INSIDE_NUMBER");break}case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":{n=c,t.pop(),t.push(u),t.push("INSIDE_NUMBER");break}case"{":{n=c,t.pop(),t.push(u),t.push("INSIDE_OBJECT_START");break}case"[":{n=c,t.pop(),t.push(u),t.push("INSIDE_ARRAY_START");break}}}function s(l,c){switch(l){case",":{t.pop(),t.push("INSIDE_OBJECT_AFTER_COMMA");break}case"}":{n=c,t.pop();break}}}function i(l,c){switch(l){case",":{t.pop(),t.push("INSIDE_ARRAY_AFTER_COMMA");break}case"]":{n=c,t.pop();break}}}for(let l=0;l<e.length;l++){const c=e[l];switch(t[t.length-1]){case"ROOT":o(c,l,"FINISH");break;case"INSIDE_OBJECT_START":{switch(c){case'"':{t.pop(),t.push("INSIDE_OBJECT_KEY");break}case"}":{n=l,t.pop();break}}break}case"INSIDE_OBJECT_AFTER_COMMA":{switch(c){case'"':{t.pop(),t.push("INSIDE_OBJECT_KEY");break}}break}case"INSIDE_OBJECT_KEY":{switch(c){case'"':{t.pop(),t.push("INSIDE_OBJECT_AFTER_KEY");break}}break}case"INSIDE_OBJECT_AFTER_KEY":{switch(c){case":":{t.pop(),t.push("INSIDE_OBJECT_BEFORE_VALUE");break}}break}case"INSIDE_OBJECT_BEFORE_VALUE":{o(c,l,"INSIDE_OBJECT_AFTER_VALUE");break}case"INSIDE_OBJECT_AFTER_VALUE":{s(c,l);break}case"INSIDE_STRING":{switch(c){case'"':{t.pop(),n=l;break}case"\\":{t.push("INSIDE_STRING_ESCAPE");break}default:n=l}break}case"INSIDE_ARRAY_START":{switch(c){case"]":{n=l,t.pop();break}default:{n=l,o(c,l,"INSIDE_ARRAY_AFTER_VALUE");break}}break}case"INSIDE_ARRAY_AFTER_VALUE":{switch(c){case",":{t.pop(),t.push("INSIDE_ARRAY_AFTER_COMMA");break}case"]":{n=l,t.pop();break}default:{n=l;break}}break}case"INSIDE_ARRAY_AFTER_COMMA":{o(c,l,"INSIDE_ARRAY_AFTER_VALUE");break}case"INSIDE_STRING_ESCAPE":{t.pop(),n=l;break}case"INSIDE_NUMBER":{switch(c){case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":{n=l;break}case"e":case"E":case"-":case".":break;case",":{t.pop(),t[t.length-1]==="INSIDE_ARRAY_AFTER_VALUE"&&i(c,l),t[t.length-1]==="INSIDE_OBJECT_AFTER_VALUE"&&s(c,l);break}case"}":{t.pop(),t[t.length-1]==="INSIDE_OBJECT_AFTER_VALUE"&&s(c,l);break}case"]":{t.pop(),t[t.length-1]==="INSIDE_ARRAY_AFTER_VALUE"&&i(c,l);break}default:{t.pop();break}}break}case"INSIDE_LITERAL":{const f=e.substring(r,l+1);!"false".startsWith(f)&&!"true".startsWith(f)&&!"null".startsWith(f)?(t.pop(),t[t.length-1]==="INSIDE_OBJECT_AFTER_VALUE"?s(c,l):t[t.length-1]==="INSIDE_ARRAY_AFTER_VALUE"&&i(c,l)):n=l;break}}}let a=e.slice(0,n+1);for(let l=t.length-1;l>=0;l--)switch(t[l]){case"INSIDE_STRING":{a+='"';break}case"INSIDE_OBJECT_KEY":case"INSIDE_OBJECT_AFTER_KEY":case"INSIDE_OBJECT_AFTER_COMMA":case"INSIDE_OBJECT_START":case"INSIDE_OBJECT_BEFORE_VALUE":case"INSIDE_OBJECT_AFTER_VALUE":{a+="}";break}case"INSIDE_ARRAY_START":case"INSIDE_ARRAY_AFTER_COMMA":case"INSIDE_ARRAY_AFTER_VALUE":{a+="]";break}case"INSIDE_LITERAL":{const u=e.substring(r,e.length);"true".startsWith(u)?a+="true".slice(u.length):"false".startsWith(u)?a+="false".slice(u.length):"null".startsWith(u)&&(a+="null".slice(u.length))}}return a}async function iQ(e){if(e===void 0)return{value:void 0,state:"undefined-input"};let t=await Pv({text:e});return t.success?{value:t.value,state:"successful-parse"}:(t=await Pv({text:zGe(e)}),t.success?{value:t.value,state:"repaired-parse"}:{value:void 0,state:"failed-parse"})}function bm(e){return e.type.startsWith("tool-")}function d$(e){return e.type.split("-").slice(1).join("-")}function BGe({lastMessage:e,messageId:t}){return{message:(e==null?void 0:e.role)==="assistant"?e:{id:t,metadata:void 0,role:"assistant",parts:[]},activeTextParts:{},activeReasoningParts:{},partialToolCalls:{}}}function VGe({stream:e,messageMetadataSchema:t,dataPartSchemas:n,runUpdateMessageJob:r,onError:o,onToolCall:s,onData:i}){return e.pipeThrough(new TransformStream({async transform(a,l){await r(async({state:c,write:u})=>{var f,h,p,m;function g(w){const C=c.message.parts.filter(bm).find(k=>k.toolCallId===w);if(C==null)throw new Error("tool-output-error must be preceded by a tool-input-available");return C}function b(w){const C=c.message.parts.filter(k=>k.type==="dynamic-tool").find(k=>k.toolCallId===w);if(C==null)throw new Error("tool-output-error must be preceded by a tool-input-available");return C}function y(w){var S;const C=c.message.parts.find(M=>bm(M)&&M.toolCallId===w.toolCallId),k=w,_=C;C!=null?(C.state=w.state,_.input=k.input,_.output=k.output,_.errorText=k.errorText,_.rawInput=k.rawInput,_.providerExecuted=(S=k.providerExecuted)!=null?S:C.providerExecuted,k.providerMetadata!=null&&C.state==="input-available"&&(C.callProviderMetadata=k.providerMetadata)):c.message.parts.push({type:`tool-${w.toolName}`,toolCallId:w.toolCallId,state:w.state,input:k.input,output:k.output,rawInput:k.rawInput,errorText:k.errorText,providerExecuted:k.providerExecuted,...k.providerMetadata!=null?{callProviderMetadata:k.providerMetadata}:{}})}function x(w){var S;const C=c.message.parts.find(M=>M.type==="dynamic-tool"&&M.toolCallId===w.toolCallId),k=w,_=C;C!=null?(C.state=w.state,_.toolName=w.toolName,_.input=k.input,_.output=k.output,_.errorText=k.errorText,_.rawInput=(S=k.rawInput)!=null?S:_.rawInput,k.providerMetadata!=null&&C.state==="input-available"&&(C.callProviderMetadata=k.providerMetadata)):c.message.parts.push({type:"dynamic-tool",toolName:w.toolName,toolCallId:w.toolCallId,state:w.state,input:k.input,output:k.output,errorText:k.errorText,...k.providerMetadata!=null?{callProviderMetadata:k.providerMetadata}:{}})}async function v(w){if(w!=null){const S=c.message.metadata!=null?sQ(c.message.metadata,w):w;t!=null&&await c$({value:S,schema:t}),c.message.metadata=S}}switch(a.type){case"text-start":{const w={type:"text",text:"",providerMetadata:a.providerMetadata,state:"streaming"};c.activeTextParts[a.id]=w,c.message.parts.push(w),u();break}case"text-delta":{const w=c.activeTextParts[a.id];w.text+=a.delta,w.providerMetadata=(f=a.providerMetadata)!=null?f:w.providerMetadata,u();break}case"text-end":{const w=c.activeTextParts[a.id];w.state="done",w.providerMetadata=(h=a.providerMetadata)!=null?h:w.providerMetadata,delete c.activeTextParts[a.id],u();break}case"reasoning-start":{const w={type:"reasoning",text:"",providerMetadata:a.providerMetadata,state:"streaming"};c.activeReasoningParts[a.id]=w,c.message.parts.push(w),u();break}case"reasoning-delta":{const w=c.activeReasoningParts[a.id];w.text+=a.delta,w.providerMetadata=(p=a.providerMetadata)!=null?p:w.providerMetadata,u();break}case"reasoning-end":{const w=c.activeReasoningParts[a.id];w.providerMetadata=(m=a.providerMetadata)!=null?m:w.providerMetadata,w.state="done",delete c.activeReasoningParts[a.id],u();break}case"file":{c.message.parts.push({type:"file",mediaType:a.mediaType,url:a.url}),u();break}case"source-url":{c.message.parts.push({type:"source-url",sourceId:a.sourceId,url:a.url,title:a.title,providerMetadata:a.providerMetadata}),u();break}case"source-document":{c.message.parts.push({type:"source-document",sourceId:a.sourceId,mediaType:a.mediaType,title:a.title,filename:a.filename,providerMetadata:a.providerMetadata}),u();break}case"tool-input-start":{const w=c.message.parts.filter(bm);c.partialToolCalls[a.toolCallId]={text:"",toolName:a.toolName,index:w.length,dynamic:a.dynamic},a.dynamic?x({toolCallId:a.toolCallId,toolName:a.toolName,state:"input-streaming",input:void 0}):y({toolCallId:a.toolCallId,toolName:a.toolName,state:"input-streaming",input:void 0,providerExecuted:a.providerExecuted}),u();break}case"tool-input-delta":{const w=c.partialToolCalls[a.toolCallId];w.text+=a.inputTextDelta;const{value:S}=await iQ(w.text);w.dynamic?x({toolCallId:a.toolCallId,toolName:w.toolName,state:"input-streaming",input:S}):y({toolCallId:a.toolCallId,toolName:w.toolName,state:"input-streaming",input:S}),u();break}case"tool-input-available":{a.dynamic?x({toolCallId:a.toolCallId,toolName:a.toolName,state:"input-available",input:a.input,providerMetadata:a.providerMetadata}):y({toolCallId:a.toolCallId,toolName:a.toolName,state:"input-available",input:a.input,providerExecuted:a.providerExecuted,providerMetadata:a.providerMetadata}),u(),s&&!a.providerExecuted&&await s({toolCall:a});break}case"tool-input-error":{a.dynamic?x({toolCallId:a.toolCallId,toolName:a.toolName,state:"output-error",input:a.input,errorText:a.errorText,providerMetadata:a.providerMetadata}):y({toolCallId:a.toolCallId,toolName:a.toolName,state:"output-error",input:void 0,rawInput:a.input,errorText:a.errorText,providerExecuted:a.providerExecuted,providerMetadata:a.providerMetadata}),u();break}case"tool-output-available":{if(a.dynamic){const w=b(a.toolCallId);x({toolCallId:a.toolCallId,toolName:w.toolName,state:"output-available",input:w.input,output:a.output})}else{const w=g(a.toolCallId);y({toolCallId:a.toolCallId,toolName:d$(w),state:"output-available",input:w.input,output:a.output,providerExecuted:a.providerExecuted})}u();break}case"tool-output-error":{if(a.dynamic){const w=b(a.toolCallId);x({toolCallId:a.toolCallId,toolName:w.toolName,state:"output-error",input:w.input,errorText:a.errorText})}else{const w=g(a.toolCallId);y({toolCallId:a.toolCallId,toolName:d$(w),state:"output-error",input:w.input,rawInput:w.rawInput,errorText:a.errorText})}u();break}case"start-step":{c.message.parts.push({type:"step-start"});break}case"finish-step":{c.activeTextParts={},c.activeReasoningParts={};break}case"start":{a.messageId!=null&&(c.message.id=a.messageId),await v(a.messageMetadata),(a.messageId!=null||a.messageMetadata!=null)&&u();break}case"finish":{await v(a.messageMetadata),a.messageMetadata!=null&&u();break}case"message-metadata":{await v(a.messageMetadata),a.messageMetadata!=null&&u();break}case"error":{o==null||o(new Error(a.errorText));break}default:if(LGe(a)){(n==null?void 0:n[a.type])!=null&&await c$({value:a.data,schema:n[a.type]});const w=a;if(w.transient){i==null||i(w);break}const S=w.id!=null?c.message.parts.find(C=>w.type===C.type&&w.id===C.id):void 0;S!=null?S.data=w.data:c.message.parts.push(w),i==null||i(w),u()}}l.enqueue(a)})}}))}async function HGe({stream:e,onError:t}){const n=e.getReader();try{for(;;){const{done:r}=await n.read();if(r)break}}catch(r){t==null||t(r)}finally{n.releaseLock()}}$b({prefix:"aitxt",size:24});$b({prefix:"aiobj",size:24});var UGe=class{constructor(){this.queue=[],this.isProcessing=!1}async processQueue(){if(!this.isProcessing){for(this.isProcessing=!0;this.queue.length>0;)await this.queue[0](),this.queue.shift();this.isProcessing=!1}}async run(e){return new Promise((t,n)=>{this.queue.push(async()=>{try{await e(),t()}catch(r){n(r)}}),this.processQueue()})}};$b({prefix:"aiobj",size:24});var WGe={};jGe(WGe,{object:()=>GGe,text:()=>qGe});var qGe=()=>({type:"text",responseFormat:{type:"text"},async parsePartial({text:e}){return{partial:e}},async parseOutput({text:e}){return e}}),GGe=({schema:e})=>{const t=kGe(e);return{type:"object",responseFormat:{type:"json",schema:t.jsonSchema},async parsePartial({text:n}){const r=await iQ(n);switch(r.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":return{partial:r.value};default:{const o=r.state;throw new Error(`Unsupported parse state: ${o}`)}}},async parseOutput({text:n},r){const o=await Pv({text:n});if(!o.success)throw new u$({message:"No object generated: could not parse the response.",cause:o.error,text:n,response:r.response,usage:r.usage,finishReason:r.finishReason});const s=await GP({value:o.value,schema:t});if(!s.success)throw new u$({message:"No object generated: response did not match schema.",cause:s.error,text:n,response:r.response,usage:r.usage,finishReason:r.finishReason});return s.value}}},YGe=qd({name:Me(),version:Me()}),ZP=qd({_meta:or(Lt({}).loose())}),Sg=ZP,ZGe=Lt({method:Me(),params:or(ZP)}),KGe=qd({experimental:or(Lt({}).loose()),logging:or(Lt({}).loose()),prompts:or(qd({listChanged:or(mr())})),resources:or(qd({subscribe:or(mr()),listChanged:or(mr())})),tools:or(qd({listChanged:or(mr())}))});Sg.extend({protocolVersion:Me(),capabilities:KGe,serverInfo:YGe,instructions:or(Me())});var XGe=Sg.extend({nextCursor:or(Me())}),QGe=Lt({name:Me(),description:or(Me()),inputSchema:Lt({type:Qe("object"),properties:or(Lt({}).loose())}).loose()}).loose();XGe.extend({tools:pc(QGe)});var JGe=Lt({type:Qe("text"),text:Me()}).loose(),eYe=Lt({type:Qe("image"),data:zX(),mimeType:Me()}).loose(),aQ=Lt({uri:Me(),mimeType:or(Me())}).loose(),tYe=aQ.extend({text:Me()}),nYe=aQ.extend({blob:zX()}),rYe=Lt({type:Qe("resource"),resource:vr([tYe,nYe])}).loose();Sg.extend({content:pc(vr([JGe,eYe,rYe])),isError:mr().default(!1).optional()}).or(Sg.extend({toolResult:Bo()}));var X1="2.0",oYe=Lt({jsonrpc:Qe(X1),id:vr([Me(),vg().int()])}).merge(ZGe).strict(),sYe=Lt({jsonrpc:Qe(X1),id:vr([Me(),vg().int()]),result:Sg}).strict(),iYe=Lt({jsonrpc:Qe(X1),id:vr([Me(),vg().int()]),error:Lt({code:vg().int(),message:Me(),data:or(Bo())})}).strict(),aYe=Lt({jsonrpc:Qe(X1)}).merge(Lt({method:Me(),params:or(ZP)})).strict();vr([oYe,aYe,sYe,iYe]);async function lYe(e){if(e==null)return[];if(!globalThis.FileList||!(e instanceof globalThis.FileList))throw new Error("FileList is not supported in the current environment");return Promise.all(Array.from(e).map(async t=>{const{name:n,type:r}=t,o=await new Promise((s,i)=>{const a=new FileReader;a.onload=l=>{var c;s((c=l.target)==null?void 0:c.result)},a.onerror=l=>i(l),a.readAsDataURL(t)});return{type:"file",mediaType:r,filename:n,url:o}}))}var cYe=class{constructor({api:e="/api/chat",credentials:t,headers:n,body:r,fetch:o,prepareSendMessagesRequest:s,prepareReconnectToStreamRequest:i}){this.api=e,this.credentials=t,this.headers=n,this.body=r,this.fetch=o,this.prepareSendMessagesRequest=s,this.prepareReconnectToStreamRequest=i}async sendMessages({abortSignal:e,...t}){var n,r,o,s,i;const a=await jd(this.body),l=await jd(this.headers),c=await jd(this.credentials),u=await((n=this.prepareSendMessagesRequest)==null?void 0:n.call(this,{api:this.api,id:t.chatId,messages:t.messages,body:{...a,...t.body},headers:{...l,...t.headers},credentials:c,requestMetadata:t.metadata,trigger:t.trigger,messageId:t.messageId})),f=(r=u==null?void 0:u.api)!=null?r:this.api,h=(u==null?void 0:u.headers)!==void 0?u.headers:{...l,...t.headers},p=(u==null?void 0:u.body)!==void 0?u.body:{...a,...t.body,id:t.chatId,messages:t.messages,trigger:t.trigger,messageId:t.messageId},m=(o=u==null?void 0:u.credentials)!=null?o:c,b=await((s=this.fetch)!=null?s:globalThis.fetch)(f,{method:"POST",headers:{"Content-Type":"application/json",...h},body:JSON.stringify(p),credentials:m,signal:e});if(!b.ok)throw new Error((i=await b.text())!=null?i:"Failed to fetch the chat response.");if(!b.body)throw new Error("The response body is empty.");return this.processResponseStream(b.body)}async reconnectToStream(e){var t,n,r,o,s;const i=await jd(this.body),a=await jd(this.headers),l=await jd(this.credentials),c=await((t=this.prepareReconnectToStreamRequest)==null?void 0:t.call(this,{api:this.api,id:e.chatId,body:{...i,...e.body},headers:{...a,...e.headers},credentials:l,requestMetadata:e.metadata})),u=(n=c==null?void 0:c.api)!=null?n:`${this.api}/${e.chatId}/stream`,f=(c==null?void 0:c.headers)!==void 0?c.headers:{...a,...e.headers},h=(r=c==null?void 0:c.credentials)!=null?r:l,m=await((o=this.fetch)!=null?o:globalThis.fetch)(u,{method:"GET",headers:f,credentials:h});if(m.status===204)return null;if(!m.ok)throw new Error((s=await m.text())!=null?s:"Failed to fetch the chat response.");if(!m.body)throw new Error("The response body is empty.");return this.processResponseStream(m.body)}},KP=class extends cYe{constructor(e={}){super(e)}processResponseStream(e){return vGe({stream:e,schema:$Ge}).pipeThrough(new TransformStream({async transform(t,n){if(!t.success)throw t.error;n.enqueue(t.value)}}))}},uYe=class{constructor({generateId:e=uGe,id:t=e(),transport:n=new KP,messageMetadataSchema:r,dataPartSchemas:o,state:s,onError:i,onToolCall:a,onFinish:l,onData:c,sendAutomaticallyWhen:u}){this.activeResponse=void 0,this.jobExecutor=new UGe,this.sendMessage=async(f,h)=>{var p,m,g,b;if(f==null){await this.makeRequest({trigger:"submit-message",messageId:(p=this.lastMessage)==null?void 0:p.id,...h});return}let y;if("text"in f||"files"in f?y={parts:[...Array.isArray(f.files)?f.files:await lYe(f.files),..."text"in f&&f.text!=null?[{type:"text",text:f.text}]:[]]}:y=f,f.messageId!=null){const x=this.state.messages.findIndex(v=>v.id===f.messageId);if(x===-1)throw new Error(`message with id ${f.messageId} not found`);if(this.state.messages[x].role!=="user")throw new Error(`message with id ${f.messageId} is not a user message`);this.state.messages=this.state.messages.slice(0,x+1),this.state.replaceMessage(x,{...y,id:f.messageId,role:(m=y.role)!=null?m:"user",metadata:f.metadata})}else this.state.pushMessage({...y,id:(g=y.id)!=null?g:this.generateId(),role:(b=y.role)!=null?b:"user",metadata:f.metadata});await this.makeRequest({trigger:"submit-message",messageId:f.messageId,...h})},this.regenerate=async({messageId:f,...h}={})=>{const p=f==null?this.state.messages.length-1:this.state.messages.findIndex(m=>m.id===f);if(p===-1)throw new Error(`message ${f} not found`);this.state.messages=this.state.messages.slice(0,this.messages[p].role==="assistant"?p:p+1),await this.makeRequest({trigger:"regenerate-message",messageId:f,...h})},this.resumeStream=async(f={})=>{await this.makeRequest({trigger:"resume-stream",...f})},this.clearError=()=>{this.status==="error"&&(this.state.error=void 0,this.setStatus({status:"ready"}))},this.addToolResult=async({tool:f,toolCallId:h,output:p})=>this.jobExecutor.run(async()=>{var m,g;const b=this.state.messages,y=b[b.length-1];this.state.replaceMessage(b.length-1,{...y,parts:y.parts.map(x=>bm(x)&&x.toolCallId===h?{...x,state:"output-available",output:p}:x)}),this.activeResponse&&(this.activeResponse.state.message.parts=this.activeResponse.state.message.parts.map(x=>bm(x)&&x.toolCallId===h?{...x,state:"output-available",output:p,errorText:void 0}:x)),this.status!=="streaming"&&this.status!=="submitted"&&((m=this.sendAutomaticallyWhen)!=null&&m.call(this,{messages:this.state.messages}))&&this.makeRequest({trigger:"submit-message",messageId:(g=this.lastMessage)==null?void 0:g.id})}),this.stop=async()=>{var f;this.status!=="streaming"&&this.status!=="submitted"||(f=this.activeResponse)!=null&&f.abortController&&this.activeResponse.abortController.abort()},this.id=t,this.transport=n,this.generateId=e,this.messageMetadataSchema=r,this.dataPartSchemas=o,this.state=s,this.onError=i,this.onToolCall=a,this.onFinish=l,this.onData=c,this.sendAutomaticallyWhen=u}get status(){return this.state.status}setStatus({status:e,error:t}){this.status!==e&&(this.state.status=e,this.state.error=t)}get error(){return this.state.error}get messages(){return this.state.messages}get lastMessage(){return this.state.messages[this.state.messages.length-1]}set messages(e){this.state.messages=e}async makeRequest({trigger:e,metadata:t,headers:n,body:r,messageId:o}){var s,i,a;this.setStatus({status:"submitted",error:void 0});const l=this.lastMessage;try{const c={state:BGe({lastMessage:this.state.snapshot(l),messageId:this.generateId()}),abortController:new AbortController};this.activeResponse=c;let u;if(e==="resume-stream"){const h=await this.transport.reconnectToStream({chatId:this.id,metadata:t,headers:n,body:r});if(h==null){this.setStatus({status:"ready"});return}u=h}else u=await this.transport.sendMessages({chatId:this.id,messages:this.state.messages,abortSignal:c.abortController.signal,metadata:t,headers:n,body:r,trigger:e,messageId:o});const f=h=>this.jobExecutor.run(()=>h({state:c.state,write:()=>{var p;this.setStatus({status:"streaming"}),c.state.message.id===((p=this.lastMessage)==null?void 0:p.id)?this.state.replaceMessage(this.state.messages.length-1,c.state.message):this.state.pushMessage(c.state.message)}}));await HGe({stream:VGe({stream:u,onToolCall:this.onToolCall,onData:this.onData,messageMetadataSchema:this.messageMetadataSchema,dataPartSchemas:this.dataPartSchemas,runUpdateMessageJob:f,onError:h=>{throw h}}),onError:h=>{throw h}}),(s=this.onFinish)==null||s.call(this,{message:c.state.message}),this.setStatus({status:"ready"})}catch(c){if(c.name==="AbortError")return this.setStatus({status:"ready"}),null;this.onError&&c instanceof Error&&this.onError(c),this.setStatus({status:"error",error:c})}finally{this.activeResponse=void 0}(i=this.sendAutomaticallyWhen)!=null&&i.call(this,{messages:this.state.messages})&&await this.makeRequest({trigger:"submit-message",messageId:(a=this.lastMessage)==null?void 0:a.id,metadata:t,headers:n,body:r})}};function dYe(e,t){if(typeof e!="function")throw new TypeError(`Expected the first argument to be a \`function\`, got \`${typeof e}\`.`);let n,r=0;return function(...s){clearTimeout(n);const i=Date.now(),a=i-r,l=t-a;l<=0?(r=i,e.apply(this,s)):n=setTimeout(()=>{r=Date.now(),e.apply(this,s)},l)}}var fYe=dYe;const hYe=Bu(fYe);var pYe=s_(),lQ=(e,t,n)=>{if(!t.has(e))throw TypeError("Cannot "+n)},Sn=(e,t,n)=>(lQ(e,t,"read from private field"),n?n.call(e):t.get(e)),gi=(e,t,n)=>{if(t.has(e))throw TypeError("Cannot add the same private member more than once");t instanceof WeakSet?t.add(e):t.set(e,n)},yl=(e,t,n,r)=>(lQ(e,t,"write to private field"),t.set(e,n),n);function mYe(e,t){return t!=null?hYe(e,t):e}var ss,z0,B0,Tp,Ap,Ip,Id,Yk,Zk,gYe=class{constructor(e=[]){gi(this,ss,void 0),gi(this,z0,"ready"),gi(this,B0,void 0),gi(this,Tp,new Set),gi(this,Ap,new Set),gi(this,Ip,new Set),this.pushMessage=t=>{yl(this,ss,Sn(this,ss).concat(t)),Sn(this,Id).call(this)},this.popMessage=()=>{yl(this,ss,Sn(this,ss).slice(0,-1)),Sn(this,Id).call(this)},this.replaceMessage=(t,n)=>{yl(this,ss,[...Sn(this,ss).slice(0,t),this.snapshot(n),...Sn(this,ss).slice(t+1)]),Sn(this,Id).call(this)},this.snapshot=t=>structuredClone(t),this["~registerMessagesCallback"]=(t,n)=>{const r=n?mYe(t,n):t;return Sn(this,Tp).add(r),()=>{Sn(this,Tp).delete(r)}},this["~registerStatusCallback"]=t=>(Sn(this,Ap).add(t),()=>{Sn(this,Ap).delete(t)}),this["~registerErrorCallback"]=t=>(Sn(this,Ip).add(t),()=>{Sn(this,Ip).delete(t)}),gi(this,Id,()=>{Sn(this,Tp).forEach(t=>t())}),gi(this,Yk,()=>{Sn(this,Ap).forEach(t=>t())}),gi(this,Zk,()=>{Sn(this,Ip).forEach(t=>t())}),yl(this,ss,e)}get status(){return Sn(this,z0)}set status(e){yl(this,z0,e),Sn(this,Yk).call(this)}get error(){return Sn(this,B0)}set error(e){yl(this,B0,e),Sn(this,Zk).call(this)}get messages(){return Sn(this,ss)}set messages(e){yl(this,ss,[...e]),Sn(this,Id).call(this)}};ss=new WeakMap;z0=new WeakMap;B0=new WeakMap;Tp=new WeakMap;Ap=new WeakMap;Ip=new WeakMap;Id=new WeakMap;Yk=new WeakMap;Zk=new WeakMap;var Od,f$=class extends uYe{constructor({messages:e,...t}){const n=new gYe(e);super({...t,state:n}),gi(this,Od,void 0),this["~registerMessagesCallback"]=(r,o)=>Sn(this,Od)["~registerMessagesCallback"](r,o),this["~registerStatusCallback"]=r=>Sn(this,Od)["~registerStatusCallback"](r),this["~registerErrorCallback"]=r=>Sn(this,Od)["~registerErrorCallback"](r),yl(this,Od,n)}};Od=new WeakMap;function cQ({experimental_throttle:e,resume:t=!1,...n}={}){const r=N.useRef("chat"in n?n.chat:new f$(n));("chat"in n&&n.chat!==r.current||"id"in n&&r.current.id!==n.id)&&(r.current="chat"in n?n.chat:new f$(n));const s="id"in n?n.id:null,i=N.useCallback(f=>r.current["~registerMessagesCallback"](f,e),[e,s]),a=N.useSyncExternalStore(i,()=>r.current.messages,()=>r.current.messages),l=N.useSyncExternalStore(r.current["~registerStatusCallback"],()=>r.current.status,()=>r.current.status),c=N.useSyncExternalStore(r.current["~registerErrorCallback"],()=>r.current.error,()=>r.current.error),u=N.useCallback(f=>{typeof f=="function"&&(f=f(r.current.messages)),r.current.messages=f},[r]);return N.useEffect(()=>{t&&r.current.resumeStream()},[t,r]),{id:r.current.id,messages:a,setMessages:u,sendMessage:r.current.sendMessage,regenerate:r.current.regenerate,clearError:r.current.clearError,stop:r.current.stop,error:c,resumeStream:r.current.resumeStream,status:l,addToolResult:r.current.addToolResult}}function bYe(e,t){return e.some(n=>n.tableName&&n.tableName===t.tableName||n.datamodelName&&n.datamodelName===t.datamodelName)}function yYe(e){return e.filter((n,r,o)=>r===o.findIndex(s=>s.tableName===n.tableName&&s.datamodelName===n.datamodelName))}function xYe(e,t){return e.filter(n=>!(n.connectionId===t.connectionId&&n.tableName===t.tableName&&n.datamodelName===t.datamodelName))}function vYe(e){return e.toLowerCase()==="clickhouse"?"{database_name}.{table_name}":e.toLowerCase()==="postgres"?"{schema_name}.{table_name}":"{table_name}"}function uQ(e){return e.map(r=>{const o=r.connectionType==="API"||r.connectionType==="S3"||r.connectionType==="S3Tables"?"DuckDb":r.connectionType;return r.datamodelName?{...r,databaseName:"",schemaName:"",tableName:"",connectionType:o,tableReferenceFormat:"dm.{table_name}"}:{...r,connectionType:o,tableReferenceFormat:vYe(o)}}).filter(r=>r.datamodelName?r.connectionId&&r.datamodelName&&r.connectionType:r.connectionId&&r.tableName&&r.connectionType)}function dQ(e){var n,r;if(!e)return"";let t="";try{const o=JSON.parse((e==null?void 0:e.message)||"{}");t=((r=(n=o==null?void 0:o.error)==null?void 0:n.lastError)==null?void 0:r.message)||(o==null?void 0:o.error)||e.message}catch{t=e.message}return t}function wYe(){const{authToken:e,tokenProps:t}=qe(),n=ee(g=>g.dashboard.aiScopeTables),{sendMessage:r,messages:o,setMessages:s,regenerate:i,status:a,addToolResult:l,error:c,stop:u,clearError:f}=cQ({transport:new KP({api:`${t.apiServiceUrl}/v1/assistant`,headers:()=>({Authorization:`Bearer ${e==null?void 0:e.accessToken}`}),body:()=>{const g=li.getState();return{assistantId:"dashboard-assistant",aiContext:g.currentAIContext,reasoningEffort:g.reasoningEffort,showReasoning:g.showReasoning}},credentials:"omit",prepareSendMessagesRequest:({messages:g,body:b})=>({body:{...b,messages:f6(g)}})}),onToolCall:h,onFinish(){}});async function h({toolCall:g}){g.toolName==="getCurrentTableScope"&&l({tool:g.toolName,toolCallId:g.toolCallId,output:{tables:uQ(n||[])}})}const p=!["ready","error"].includes(a),m=dQ(c);return{sendMessage:r,regenerate:i,isLoading:p,messages:o,setMessages:s,status:a,stop:u,errorMessage:m,clearError:f}}const Gd=N.forwardRef(({children:e,className:t,tooltip:n,onClick:r,openDelay:o=300,buttonProps:s,...i},a)=>d.jsx(td,{children:d.jsxs(Gi,{delayDuration:o,children:[d.jsx(Yi,{asChild:!0,children:d.jsx(ce,{ref:a,size:"sm",variant:"ghost",onClick:r,...i,...s,className:Y(`${Qd}`,t),children:e})}),n&&d.jsx(Ka,{side:"bottom",sideOffset:10,children:n})]})}));Gd.displayName="IconButton";function fQ(){const{authToken:e,tokenProps:t}=qe(),n=Ute(e==null?void 0:e.accessToken);function r(){if(!n||!(e!=null&&e.accessToken))return!1}const{data:o,isLoading:s,isFetching:i,isError:a}=bn({queryKey:["assistant-profile",n],queryFn:()=>qn(`${t.apiServiceUrl}/v1/assistant/${n}`,(e==null?void 0:e.accessToken)||""),enabled:r()});return{assistantProfile:o==null?void 0:o.assistantProfile,isLoading:s,isFetching:i,isError:a}}function hQ({seedQuestions:e,handleSeedQuestionClick:t}){return e.length===0?null:d.jsxs("div",{className:"overflow-x-auto rounded-md border bg-muted/40 p-4",children:[d.jsxs("div",{className:"mb-3 flex items-center",children:[d.jsx(q3,{className:"mr-2 h-4 w-4 text-muted-foreground"}),d.jsx("h3",{className:"font-medium",children:"Example Questions"})]}),d.jsx("div",{className:"flex flex-wrap gap-2",children:e.map((n,r)=>d.jsx(ce,{variant:"outline",size:"sm",onClick:()=>t(n),className:"text-sm",children:n},r))})]})}const SYe=e=>{switch(e){case"table":return d.jsx(Zv,{className:"h-4 w-4"});case"view":return d.jsx(ch,{className:"h-4 w-4"});case"model":return d.jsx(k_,{className:"h-4 w-4"});case"file":return d.jsx(Xo,{className:"h-4 w-4"});case"dataset":return d.jsx(nu,{className:"h-4 w-4"});case"upload":return d.jsx(Kv,{className:"h-4 w-4"});case"url":return d.jsx(__,{className:"h-4 w-4"});default:return d.jsx(Yv,{className:"h-4 w-4"})}},f0=e=>e.label||(e==null?void 0:e.name),h$=e=>"description"in e?e.description:`${e.type} from ${e.database||"database"}`;function CYe({isOpen:e,onSelect:t,onDeselect:n,onClose:r,availableEntities:o,selectedEntities:s,onTabComplete:i,onSelectAll:a,onRemoveAll:l,onAddContext:c}){const[u,f]=N.useState(""),[h,p]=N.useState(""),m=o.filter(w=>{if(!u)return!0;const S=f0(w).toLowerCase(),C=h$(w).toLowerCase(),k=u.toLowerCase();return S.includes(k)||C.includes(k)});N.useEffect(()=>{e||(f(""),p(""))},[e]),N.useEffect(()=>{m.length>0&&!h&&p(f0(m[0]))},[m,h]);const g=()=>{if(!h)return;const w=m.find(S=>f0(S)===h);w&&(s.some(C=>"id"in w&&"id"in C?w.id===C.id:w.name===C.name&&w.connectionId===C.connectionId)||t(w),i(w),r())},b=w=>{(w.key==="Tab"||w.key==="Enter")&&(w.preventDefault(),g())};if(!e)return null;const y=w=>s.some(S=>"id"in w&&"id"in S?w.id===S.id:w.name===S.name&&w.connectionId===S.connectionId),x=s.length===o.length,v=s.length>0;return d.jsx(d.Fragment,{children:d.jsxs(Iw,{shouldFilter:!1,value:h,onValueChange:p,onKeyDown:b,children:[d.jsx(Ow,{placeholder:"Search entities...",value:u,onValueChange:f,className:"border-0",autoFocus:!0}),d.jsxs("div",{className:"flex items-center justify-between px-3 py-2 text-xs",children:[d.jsxs(z_,{children:[s.length," ",s.length===1?"entity":"entities"," selected",x&&" (all)"]}),d.jsxs("div",{className:"flex items-center gap-2",children:[d.jsxs("button",{onClick:w=>{w.preventDefault(),w.stopPropagation(),a==null||a()},onMouseDown:w=>{w.preventDefault(),w.stopPropagation()},disabled:x,className:"flex items-center gap-1 text-muted-foreground hover:text-foreground disabled:cursor-not-allowed disabled:opacity-50",title:x?"All entities already selected":"Select all entities",children:[d.jsx(Qne,{className:"h-3.5 w-3.5"}),d.jsx("span",{children:"All"})]}),v&&d.jsxs("button",{onClick:w=>{w.preventDefault(),w.stopPropagation(),l==null||l()},onMouseDown:w=>{w.preventDefault(),w.stopPropagation()},className:"flex items-center gap-1 text-red-600 hover:text-red-800",title:"Remove all selected entities",children:[d.jsx(Jne,{className:"h-3.5 w-3.5"}),d.jsx("span",{children:"Clear"})]})]})]}),d.jsxs(Fw,{className:"min-h-60",children:[d.jsx($w,{children:d.jsxs("div",{className:"flex flex-col items-center justify-center py-4",children:[d.jsx("p",{className:"mb-3 text-sm text-muted-foreground",children:"No entities found."}),d.jsxs(ce,{onClick:w=>{w.preventDefault(),w.stopPropagation(),c==null||c()},onMouseDown:w=>{w.preventDefault(),w.stopPropagation()},size:"sm",variant:"outline",className:"flex items-center gap-2",children:[d.jsx(ks,{className:"h-4 w-4"}),"Add Datasets"]})]})}),d.jsx(Lw,{children:m.map((w,S)=>{const C=y(w),k="id"in w?w.id:`${w.connectionId}-${w.name}`,_=f0(w);return d.jsxs(zw,{value:_,onSelect:()=>{C?n==null||n(w):t(w)},onMouseDown:M=>{M.preventDefault(),M.stopPropagation()},className:Y("flex cursor-pointer items-start gap-2 p-2 hover:bg-gray-100"),children:[d.jsx("div",{className:"mt-0.5 flex h-5 w-5 shrink-0 items-center justify-center",children:SYe(w.type)}),d.jsxs("div",{className:"min-w-0 flex-1",children:[d.jsx("div",{className:"truncate font-medium",children:_}),d.jsx("div",{className:"truncate text-xs text-muted-foreground",children:h$(w)})]}),C&&d.jsx("div",{className:"ml-1 flex h-5 w-5 shrink-0 items-center justify-center rounded-full bg-foreground/80",children:d.jsx(Fr,{className:"h-3 w-3 text-background"})})]},k)})})]})]})})}const p$=e=>{switch(e){case"table":return d.jsx(Zv,{className:"h-3 w-3"});case"view":return d.jsx(ch,{className:"h-3 w-3"});case"model":return d.jsx(k_,{className:"h-3 w-3"});case"file":return d.jsx(Xo,{className:"h-3 w-3"});case"dataset":return d.jsx(nu,{className:"h-3 w-3"});case"upload":return d.jsx(Kv,{className:"h-3 w-3"});case"url":return d.jsx(__,{className:"h-3 w-3"});default:return d.jsx(Yv,{className:"h-3 w-3"})}},Kk=e=>e.name||e.name,EYe=e=>{const t=Kk(e),n="description"in e?e.description:"",r=e.database||"",o=e.schema||"";return d.jsxs("div",{className:"space-y-1",children:[d.jsx("div",{className:"font-medium",children:t}),n&&d.jsx("div",{className:"text-sm text-muted-foreground",children:n}),d.jsxs("div",{className:"text-xs text-muted-foreground",children:["Type: ",e.type,r&&` • Database: ${r}`,o&&` • Schema: ${o}`]})]})};function NYe({entities:e,availableEntities:t,onRemoveEntity:n,onRemoveEntities:r}){const[o,s]=N.useState(!1),i=e.length>0;e.length,t.length,e.length<t.length;const a=e.length>=3?e.slice(0,2):e,l=e.length>=3?e.slice(2):[],c=l.length>0;return d.jsx(td,{children:d.jsx("div",{className:"space-y-2",children:i&&d.jsxs("div",{className:"flex flex-wrap gap-1",children:[a.map((u,f)=>{const h="id"in u?u.id:`${u.connectionId}-${u.name}`;return d.jsxs(Gi,{children:[d.jsx(Yi,{asChild:!0,children:d.jsxs(Mt,{variant:"secondary",className:"group relative cursor-pointer gap-2 transition-colors hover:border-red-200 hover:bg-red-50 dark:hover:border-red-800 dark:hover:bg-red-950",children:[p$(u.type),d.jsx("span",{className:"max-w-24 truncate text-xs",children:Kk(u)}),d.jsx("button",{className:"rounded-full p-0.5 transition-opacity hover:bg-red-100 group-hover:opacity-100",onClick:()=>n(u),children:d.jsx(Dn,{className:"h-3 w-3"})})]})}),d.jsx(Ka,{side:"top",className:"max-w-xs",children:EYe(u)})]},h)}),c&&d.jsxs(Gi,{open:o,onOpenChange:s,children:[d.jsx(Yi,{asChild:!0,children:d.jsxs(Mt,{variant:"secondary",className:"flex cursor-pointer items-center gap-1 transition-colors hover:bg-secondary/80",onClick:()=>s(!0),children:[d.jsx(Z3,{className:"h-3 w-3"}),d.jsxs("span",{className:"text-xs",children:[l.length," more"]}),d.jsx("button",{className:"rounded-full p-0.5 transition-opacity hover:bg-red-100 group-hover:opacity-100",onClick:()=>r(l),children:d.jsx(Dn,{className:"h-3 w-3"})})]})}),d.jsx(Ka,{side:"top",className:"max-h-60 max-w-xs overflow-y-auto p-2",children:d.jsxs("div",{className:"space-y-2",children:[d.jsx("div",{className:"text-sm font-medium",children:"Additional Datasets"}),d.jsx("div",{className:"space-y-2",children:l.map(u=>{const f="id"in u?u.id:`${u.connectionId}-${u.name}`;return d.jsxs("div",{className:"group flex items-center justify-between gap-2",children:[d.jsxs("div",{className:"flex items-start gap-2",children:[d.jsx("div",{className:"flex h-5 w-5 shrink-0 items-center justify-center",children:p$(u.type)}),d.jsxs("div",{className:"min-w-0 flex-1",children:[d.jsx("div",{className:"truncate text-sm font-medium",children:Kk(u)}),d.jsxs("div",{className:"truncate text-xs text-muted-foreground",children:[u.type," ",u.database?`• ${u.database}`:""]})]})]}),d.jsx(ce,{variant:"ghost",size:"sm",className:"h-6 w-6 p-0 opacity-0 group-hover:opacity-100",onClick:()=>{n(u),l.length===1&&s(!1)},children:d.jsx(Dn,{className:"h-3 w-3"})})]},f)})})]})})]})]})})})}function pQ(e){return e.type==="dataset"&&e.label||e.name}function kYe(e){const t=[];return t.push({label:"Type",value:e.type}),t.push({label:"Name",value:e.name}),e.connectionType&&t.push({label:"Connection",value:e.connectionType}),e.database&&t.push({label:"Database",value:e.database}),e.schema&&t.push({label:"Schema",value:e.schema}),e.type==="dataset"&&e.label&&t.push({label:"Label",value:e.label}),e.type==="dataset"&&e.description&&t.push({label:"Description",value:e.description}),e.type==="model"&&e.label&&t.push({label:"Label",value:e.label}),e.type==="model"&&e.description&&t.push({label:"Description",value:e.description}),t}function _Ye({selectedEntities:e,onDeselectEntity:t}){return e.length===0?null:d.jsxs("div",{className:"mb-4 space-y-2",children:[d.jsxs(fe,{className:"mb-2 text-xs font-medium text-muted-foreground",children:["Selected Entities (",e.length,")"]}),d.jsx("div",{className:"max-h-32 overflow-y-auto rounded-md border border-border/50 p-2",children:d.jsx("div",{className:"flex flex-wrap gap-1",children:e.map((n,r)=>d.jsxs(Mt,{variant:"secondary",className:"group relative cursor-pointer pr-6 text-xs transition-colors hover:border-red-200 hover:bg-red-50 dark:hover:border-red-800 dark:hover:bg-red-950",children:[d.jsxs("span",{className:"mr-1 text-gray-500",children:["[",n.type,"]"]}),pQ(n),d.jsx("button",{onClick:o=>{o.stopPropagation(),t(n)},className:"absolute right-1 top-1/2 -translate-y-1/2 rounded-full p-0.5 opacity-0 transition-opacity hover:bg-red-100 group-hover:opacity-100",children:d.jsx(Dn,{className:"h-2.5 w-2.5 text-red-500"})})]},`${n.type}-${n.name}-${r}`))})})]})}function mQ(e){const{tokenProps:t}=qe(),n=ee(l=>l.authToken)||e;Ae(l=>l.selectedConnectionId),Ae(l=>{var c,u;return(u=(c=l==null?void 0:l.card)==null?void 0:c.dataSource)==null?void 0:u.connectionId});const{refetch:r,isPending:o,data:s,isLoading:i,isError:a}=bn({queryKey:["semantic-domains"],queryFn:()=>qn(`${t.apiServiceUrl}/v1/domains`,(n==null?void 0:n.accessToken)||""),enabled:!!(n!=null&&n.accessToken)});return{isPending:o,error:a,semanticDomainsData:s,semanticDomains:(s==null?void 0:s.domains)||[],isSemanticDomainsLoading:i,isSemanticDomainsError:a,refetchSemanticDomains:r}}function jYe(e,t){const{tokenProps:n}=qe(),r=ee(c=>c.authToken)||t,{refetch:o,isPending:s,data:i,isLoading:a,isError:l}=bn({queryKey:["datasets",e],queryFn:()=>qn(`${n.apiServiceUrl}/v1/datasets`,(r==null?void 0:r.accessToken)||"",{domainId:e}),enabled:!!(r!=null&&r.accessToken)&&!!e});return{isPending:s,error:l,datasets:(i==null?void 0:i.datasets)||[],isDatasetsLoading:a,isDatasetsError:l,refetchDatasets:o}}function MYe(e){var g,b;const{tokenProps:t}=qe(),n=ee(y=>y.authToken)||e,{connections:r}=Ji(e),o=Ae(y=>{var x,v;return(v=(x=y==null?void 0:y.card)==null?void 0:x.dataSource)==null?void 0:v.connectionId}),s=r==null?void 0:r.find(y=>y.id===o),i=s==null?void 0:s.type,a=s==null?void 0:s.capabilities,l=((g=a==null?void 0:a.labels)==null?void 0:g.database)||"Database";function c(y){return o&&y?!(y==="API"||y==="S3"):!1}const{data:u,isPending:f,error:h,refetch:p}=bn({queryKey:["databases",o],queryFn:()=>qn(`${t.apiServiceUrl}/v1/databases`,(n==null?void 0:n.accessToken)||"",{connection_id:o}),enabled:c(i)}),m=(b=u==null?void 0:u.databases)==null?void 0:b.map(y=>({id:y.database_name,name:y.database_name}));return{isPending:f,error:h,databases:m||[],refetch:p,label:l}}function RYe(e){var g;const{tokenProps:t}=qe(),n=ee(b=>b.authToken)||e,{connections:r}=Ji(e),o=Ae(b=>{var y,x;return(x=(y=b==null?void 0:b.card)==null?void 0:y.dataSource)==null?void 0:x.connectionId}),s=Ae(b=>{var y,x,v;return(v=(x=(y=b==null?void 0:b.card)==null?void 0:y.dataSource)==null?void 0:x.dbSelection)==null?void 0:v.database}),i=r==null?void 0:r.find(b=>b.id===o),a=i==null?void 0:i.capabilities,l=((g=a==null?void 0:a.labels)==null?void 0:g.schema)||"Schema";function c(){return!(!o||(i==null?void 0:i.type)==="API"||(i==null?void 0:i.type)==="S3"||!s||!(a!=null&&a.path.includes("schema")))}const{data:u,isPending:f,error:h,refetch:p}=bn({queryKey:["schemas",o,s],queryFn:()=>qn(`${t.apiServiceUrl}/v1/schemas`,(n==null?void 0:n.accessToken)||"",{connection_id:o,database_name:s}),enabled:c()}),m=u==null?void 0:u.schemas.map(b=>({id:b.schema_name,name:b.schema_name}));return{isPending:f,error:h,schemas:m||[],refetch:p,label:l}}function gQ(e){const{tokenProps:t}=qe(),n=ee(h=>h.authToken)||e,{connections:r}=Ji(e),o=Ae(h=>{var p,m;return(m=(p=h==null?void 0:h.card)==null?void 0:p.dataSource)==null?void 0:m.connectionId}),s=r.find(h=>h.id===o);function i(){return!(!(n!=null&&n.accessToken)||!o)}const{data:a,isPending:l,error:c,refetch:u}=bn({queryKey:["dataModels",o],queryFn:()=>qn(`${t.apiServiceUrl}/v1/datamodels`,(n==null?void 0:n.accessToken)||"",{connection_id:o}),enabled:i()}),f=a==null?void 0:a.datamodels.map(h=>({id:h.id,name:h.name,label:h.label,description:h.description,connectionId:o,connectionType:s==null?void 0:s.type,dialect:s==null?void 0:s.dialect,type:"model",database:h.database,schema:h.schema}));return{isPending:l,error:c,dataModels:f||[],refetch:u}}function PYe(){var S,C,k;const e=Ae(_=>_.card.dataSource);Ae(_=>_.actions.updateDirectSource);const t=Ae(_=>_.actions.updateDataSource),[n,r]=N.useState(""),{selectedConnection:o,error:s}=Ji(),{databases:i,isPending:a,error:l,label:c}=MYe(),{schemas:u,isPending:f,error:h,label:p}=RYe(),{error:m}=gQ(),g=o==null?void 0:o.capabilities.path.includes("schema"),b=o==null?void 0:o.capabilities.path.includes("database"),y=c==null?void 0:c.toLowerCase(),x=p==null?void 0:p.toLowerCase(),v=_=>{e&&t({...e,dbSelection:{database:_,schema:"",entityType:"table"},selectedEntities:(e==null?void 0:e.selectedEntities)||[]})},w=_=>{var j;if(!((j=e==null?void 0:e.dbSelection)!=null&&j.database))return;const M=e.dbSelection||{database:"",schema:"",entityType:"table"};t({...e,dbSelection:{...M,schema:_},selectedEntities:(e==null?void 0:e.selectedEntities)||[]})};return d.jsxs(d.Fragment,{children:[(s||l||h||m)&&d.jsxs("div",{className:"rounded-md border border-red-200 bg-red-50 p-3",children:[d.jsx("div",{className:"flex items-center",children:d.jsxs("div",{className:"text-sm text-red-800",children:[d.jsx("strong",{children:"Error loading data:"}),d.jsxs("ul",{className:"mt-1 list-inside list-disc",children:[s&&d.jsxs("li",{children:["Connections: ",s]}),l&&d.jsxs("li",{children:[c,": ",l.message]}),h&&d.jsxs("li",{children:[p,": ",h.message]}),m&&d.jsxs("li",{children:["Data Models: ",m.message]})]})]})}),d.jsx(ce,{variant:"outline",size:"sm",className:"mt-2",onClick:()=>window.location.reload(),children:"Retry"})]}),d.jsxs("div",{className:"space-y-4",children:[b&&d.jsxs("div",{className:"space-y-2",children:[d.jsx(fe,{className:"text-sm font-medium",children:c}),d.jsxs(Tt,{value:((S=e==null?void 0:e.dbSelection)==null?void 0:S.database)||"",onValueChange:v,disabled:a,children:[d.jsx(_t,{className:"w-full",children:d.jsxs("div",{className:"flex items-center gap-2",children:[a&&d.jsx(Ns,{className:"h-4 w-4 animate-spin"}),d.jsx($t,{placeholder:l?`Error loading ${y}`:a?`Loading ${y}...`:`Select ${y}...`})]})}),d.jsx(jt,{children:i.map(_=>d.jsx(we,{className:"hover:bg-muted",value:_.id,children:_.name},_.id))})]})]}),((C=e==null?void 0:e.dbSelection)==null?void 0:C.database)&&g&&d.jsxs("div",{className:"space-y-2",children:[d.jsx(fe,{className:"text-sm font-medium",children:p}),d.jsxs(Tt,{value:((k=e==null?void 0:e.dbSelection)==null?void 0:k.schema)||"",onValueChange:w,disabled:f,children:[d.jsx(_t,{className:"w-full",children:d.jsxs("div",{className:"flex items-center gap-2",children:[f&&d.jsx(Ns,{className:"h-4 w-4 animate-spin"}),d.jsx($t,{placeholder:h?`Error loading ${x}`:f?`Loading ${x}...`:`Select ${x}...`})]})}),d.jsx(jt,{children:u.map(_=>d.jsx(we,{className:"hover:bg-muted",value:_.id,children:_.name},_.id))})]})]})]})]})}function DYe(){const e=Ae(l=>l.card.dataSource),t=Ae(l=>l.actions.updateDataSource),[n,r]=N.useState(!1),o=l=>{if(!l||(e==null?void 0:e.mode)!=="upload")return;const c=Array.from(l).map(f=>({id:`file-${Date.now()}-${Math.random()}`,name:f.name,type:"upload",connectionId:"default",connectionType:"none",label:f.name,description:`Uploaded ${new Date().toLocaleString()}`,originalName:f.name,file:f})),u=(e==null?void 0:e.selectedEntities)||[];t({...e,selectedEntities:[...u,...c]})},s=l=>{if(!e)return;const c=(e.selectedEntities||[]).filter(u=>u.id!==l);t({...e,selectedEntities:c})},i=l=>{if(l===0)return"0 Bytes";const c=1024,u=["Bytes","KB","MB","GB"],f=Math.floor(Math.log(l)/Math.log(c));return Number.parseFloat((l/Math.pow(c,f)).toFixed(2))+" "+u[f]},a=(e==null?void 0:e.selectedEntities)||[];return d.jsxs("div",{className:"space-y-4",children:[d.jsxs("div",{className:"space-y-2",children:[d.jsx(fe,{className:"text-sm font-medium",children:"Upload Files"}),d.jsxs("div",{className:`rounded-lg border-2 border-dashed p-6 text-center transition-colors ${n?"border-blue-400 bg-blue-50":"border-gray-300 hover:border-gray-400"}`,onDragOver:l=>{l.preventDefault(),r(!0)},onDragLeave:()=>r(!1),onDrop:l=>{l.preventDefault(),r(!1),o(l.dataTransfer.files)},children:[d.jsx(Kv,{className:"mx-auto mb-2 h-8 w-8 text-gray-400"}),d.jsx("p",{className:"mb-2 text-sm text-gray-600",children:"Drag and drop files here, or click to select"}),d.jsx("input",{type:"file",multiple:!0,className:"hidden",id:"file-upload",onChange:l=>o(l.target.files),accept:".csv,.json,.xlsx,.xls"}),d.jsx(ce,{variant:"outline",size:"sm",onClick:()=>{var l;return(l=document.getElementById("file-upload"))==null?void 0:l.click()},children:"Select Files"}),d.jsx("p",{className:"mt-2 text-xs text-gray-500",children:"Supports CSV, JSON, Excel files"})]})]}),a.length>0&&d.jsxs("div",{className:"space-y-2",children:[d.jsxs(fe,{className:"text-xs text-gray-600",children:["Uploaded Files (",a.length,")"]}),d.jsx("div",{className:"max-h-40 space-y-1 overflow-y-auto",children:a.map(l=>d.jsxs("div",{className:"flex items-center justify-between rounded border bg-gray-50 p-2",children:[d.jsxs("div",{className:"flex min-w-0 items-center gap-2",children:[d.jsx(Xo,{className:"h-4 w-4 flex-shrink-0 text-gray-500"}),d.jsxs("div",{className:"min-w-0",children:[d.jsx("p",{className:"truncate text-sm text-gray-700",children:l.originalName}),d.jsx("p",{className:"text-xs text-gray-500",children:l.file?i(l.file.size):""})]})]}),d.jsx(ce,{variant:"ghost",size:"sm",className:"h-6 w-6 flex-shrink-0 p-0",onClick:()=>s(l.id),children:d.jsx(Dn,{className:"h-3 w-3"})})]},l.id))})]})]})}function TYe(){const e=Ae(f=>f.card.dataSource),t=Ae(f=>f.actions.updateDataSource),[n,r]=N.useState(""),[o,s]=N.useState(""),[i,a]=N.useState("api"),l=()=>{if(!n.trim()||!o.trim()||!e)return;const f={id:`url-${Date.now()}-${Math.random()}`,name:n.trim(),type:"url",connectionId:"default",connectionType:"none",label:n.trim(),description:`URL source of type ${i}`,url:o.trim(),sourceType:i,originalName:n.trim()},h=(e==null?void 0:e.selectedEntities)||[];t({...e,selectedEntities:[...h,f]}),r(""),s(""),a("api")},c=f=>{if(!e)return;const h=(e.selectedEntities||[]).filter(p=>p.id!==f);t({...e,selectedEntities:h})},u=(e==null?void 0:e.selectedEntities)||[];return d.jsxs("div",{className:"space-y-4",children:[d.jsxs("div",{className:"space-y-2",children:[d.jsx(fe,{className:"text-sm font-medium text-gray-700",children:"URL Sources"}),d.jsxs("div",{className:"space-y-3 rounded-lg border bg-gray-50 p-3",children:[d.jsxs("div",{className:"space-y-2",children:[d.jsx(fe,{className:"text-xs text-gray-600",children:"Source Name"}),d.jsx(Wr,{placeholder:"e.g., Sales API, Customer Data",value:n,onChange:f=>r(f.target.value),className:"h-8 text-sm"})]}),d.jsxs("div",{className:"space-y-2",children:[d.jsx(fe,{className:"text-xs text-gray-600",children:"URL"}),d.jsx(Wr,{placeholder:"https://api.example.com/data",value:o,onChange:f=>s(f.target.value),className:"h-8 text-sm"})]}),d.jsxs("div",{className:"space-y-2",children:[d.jsx(fe,{className:"text-xs text-gray-600",children:"Type"}),d.jsxs("select",{value:i,onChange:f=>a(f.target.value),className:"h-8 w-full rounded-md border border-gray-300 px-2 text-sm",children:[d.jsx("option",{value:"api",children:"API Endpoint"}),d.jsx("option",{value:"csv",children:"CSV File"}),d.jsx("option",{value:"json",children:"JSON File"})]})]}),d.jsxs(ce,{onClick:l,disabled:!n.trim()||!o.trim(),size:"sm",className:"w-full",children:[d.jsx(ks,{className:"mr-1 h-3 w-3"}),"Add Source"]})]})]}),u.length>0&&d.jsxs("div",{className:"space-y-2",children:[d.jsxs(fe,{className:"text-xs text-gray-600",children:["Added Sources (",u.length,")"]}),d.jsx("div",{className:"max-h-40 space-y-1 overflow-y-auto",children:u.map(f=>d.jsxs("div",{className:"flex items-center justify-between rounded border bg-gray-50 p-2",children:[d.jsxs("div",{className:"flex min-w-0 items-center gap-2",children:[d.jsx(Yv,{className:"h-4 w-4 flex-shrink-0 text-gray-500"}),d.jsxs("div",{className:"min-w-0",children:[d.jsx("p",{className:"truncate text-sm text-gray-700",children:f.name}),d.jsx("p",{className:"truncate text-xs text-gray-500",children:f.url})]})]}),d.jsx(ce,{variant:"ghost",size:"sm",className:"h-6 w-6 flex-shrink-0 p-0",onClick:()=>c(f.id),children:d.jsx(Dn,{className:"h-3 w-3"})})]},f.id))})]})]})}function AYe(e,t){var x,v;const{tokenProps:n}=qe(),r=ee(w=>w.authToken)||t,{connections:o}=Ji(t),s=Ae(w=>{var S,C;return(C=(S=w==null?void 0:w.card)==null?void 0:S.dataSource)==null?void 0:C.connectionId}),i=Ae(w=>{var S,C,k;return(k=(C=(S=w==null?void 0:w.card)==null?void 0:S.dataSource)==null?void 0:C.dbSelection)==null?void 0:k.database}),a=Ae(w=>{var S,C,k;return(k=(C=(S=w==null?void 0:w.card)==null?void 0:S.dataSource)==null?void 0:C.dbSelection)==null?void 0:k.schema}),l=o==null?void 0:o.find(w=>w.id===s),c=l==null?void 0:l.capabilities,u=((x=c==null?void 0:c.labels)==null?void 0:x.schema)||"Schema";function f(){return s?(l==null?void 0:l.type)==="API"||(l==null?void 0:l.type)==="S3"?!0:!(!i||c!=null&&c.path.includes("schema")&&!a):!1}const{data:h,isPending:p,isLoading:m,error:g,refetch:b}=bn({queryKey:[e,s,i,a],queryFn:()=>qn(`${n.apiServiceUrl}/v1/${e}s`,(r==null?void 0:r.accessToken)||"",{connection_id:s,database_name:i,schema_name:a}),enabled:f()}),y=(v=h==null?void 0:h[`${e}s`])==null?void 0:v.map(w=>{var S;return{connectionId:l==null?void 0:l.id,connectionType:l==null?void 0:l.type,dialect:l==null?void 0:l.dialect,type:e,dbObjectType:(S=w==null?void 0:w.table_type)==null?void 0:S.toLowerCase(),id:w[`${e}_name`],database:i,schema:a,name:w[`${e}_name`]}});return{isPending:p,isLoading:m,error:g,entities:y||[],refetch:b,label:u}}function Dv({title:e,message:t}){return d.jsx("div",{className:"rounded-xl border border-destructive/40 bg-destructive/10 p-4 text-destructive shadow-sm",children:d.jsxs("div",{className:"flex items-start gap-4",children:[d.jsx(Tf,{className:"h-6 w-6 flex-shrink-0"}),d.jsxs("div",{className:"flex-1",children:[d.jsx("h4",{className:"text-base font-semibold",children:e}),t&&d.jsx("p",{className:"mt-1 text-sm text-destructive/90",children:t})]})]})})}function IYe({dataSource:e,onSelectionChange:t,selectedEntities:n,onRegisterSelectAll:r}){const{connections:o,isPending:s}=Ji(),[i,a]=N.useState(""),[l,c]=N.useState(""),[u,f]=N.useState("tables"),{updateDataSource:h,setSelectedConnectionId:p}=jo(),{entities:m,isLoading:g,error:b}=AYe("table"),{dataModels:y,isPending:x,error:v}=gQ(),w=j=>{const A=o.find(F=>F.id===j);if(!A)return;const R=A.type==="upload"?"upload":A.type==="url"?"url":"database";h({...e,connectionId:j,connectionType:A.type,mode:R,dbSelection:{database:"",schema:"",entityType:"table"}}),p(j)},S=j=>{var T,D;const A=n||[],R=A.some(O=>O.name===j.name&&O.type===j.type);let F;if(R)F=A.filter(O=>!(O.name===j.name&&O.type===j.type));else{const O={connectionId:e.connectionId,connectionType:e.connectionType,type:j.type,dbObjectType:j.dbObjectType,database:((T=e.dbSelection)==null?void 0:T.database)||"",schema:((D=e.dbSelection)==null?void 0:D.schema)||"",name:j.name,dialect:j.dialect};F=[...A,O]}t==null||t(F)},C=j=>{const A=n||[],R=A.some(T=>T.type==="model"&&T.name===j.name);let F;R?F=A.filter(T=>!(T.type==="model"&&T.name===j.name)):F=[...A,j],t==null||t(F)},k=m.filter(j=>j.name.toLowerCase().includes(i.toLowerCase())),_=y.filter(j=>j.name.toLowerCase().includes(l.toLowerCase())),M=N.useCallback(()=>{if(!t)return;const j=n||[];let A=[...j];if(u==="tables"){const F=k.filter(T=>!j.some(D=>D.name===T.name&&D.type==="table")).map(T=>{var D,O;return{connectionId:e.connectionId,connectionType:e.connectionType,type:"table",dbObjectType:T.dbObjectType,database:((D=e.dbSelection)==null?void 0:D.database)||"",schema:((O=e.dbSelection)==null?void 0:O.schema)||"",name:T.name,dialect:T.dialect}});A=[...j,...F]}else if(u==="datamodels"){const R=_.filter(F=>!j.some(T=>T.name===F.name&&T.type==="model"));A=[...j,...R]}t(A)},[u,k,_,n,e,t]);return N.useEffect(()=>{r&&r(M)},[r,M]),d.jsxs("div",{className:"space-y-4",children:[d.jsxs("div",{className:"space-y-2",children:[d.jsx(fe,{className:"font-medium= text-sm",children:"Connection"}),d.jsxs(Tt,{value:(e==null?void 0:e.connectionId)||"",onValueChange:w,disabled:s,children:[d.jsx(_t,{className:"w-full",children:d.jsx($t,{placeholder:s?"Loading connections...":"Select connection..."})}),d.jsx(jt,{children:o.map(j=>d.jsx(we,{className:"hover:bg-muted",value:j.id,children:d.jsxs("div",{className:"flex min-w-0 items-center gap-2",children:[d.jsx(nu,{className:"h-4 w-4 flex-shrink-0"}),d.jsx("span",{className:"truncate",children:j.name}),d.jsx(Mt,{variant:"secondary",className:"flex-shrink-0 text-xs",children:j.type})]})},j.id))})]})]}),(e==null?void 0:e.connectionId)&&d.jsxs(d.Fragment,{children:[e.connectionType==="upload"&&d.jsx(DYe,{}),e.connectionType==="url"&&d.jsx(TYe,{}),e.connectionType!=="upload"&&e.connectionType!=="url"&&d.jsxs(d.Fragment,{children:[d.jsx(PYe,{}),d.jsx("div",{className:"space-y-4",children:d.jsx("div",{className:"space-y-2",children:d.jsxs(ea,{defaultValue:"tables",value:u,onValueChange:j=>f(j),className:"w-full",children:[d.jsxs(ci,{className:"grid w-full grid-cols-2",children:[d.jsx(Qn,{value:"tables",children:"Tables & Views"}),d.jsx(Qn,{value:"datamodels",children:"Data Models"})]}),d.jsxs($r,{value:"tables",className:"space-y-2",children:[d.jsx(Cr,{placeholder:"Search tables and views...",value:i,onChange:j=>a(j.target.value),className:"h-8 text-sm",disabled:g}),d.jsx("div",{className:"max-h-40 space-y-1 overflow-y-auto",children:g?d.jsx("div",{className:"py-4 text-center text-sm",children:"Loading tables..."}):b?d.jsx(Dv,{title:"Error loading tables",message:b.message||"Failed to load tables. Please try again.",onRetry:()=>window.location.reload()}):k.length===0?d.jsx("div",{className:"py-4 text-center text-sm",children:"No tables or views found"}):k.map(j=>{const A=n.some(R=>R.name===j.name&&R.type==="table");return d.jsxs("div",{className:"group flex cursor-pointer items-center space-x-2 rounded p-2 hover:bg-muted",onClick:()=>S(j),children:[d.jsx(Ln,{id:`table-${j.name}`,checked:A,onCheckedChange:()=>S(j),onClick:R=>R.stopPropagation(),disabled:g}),d.jsxs(fe,{className:"flex flex-1 cursor-pointer items-center gap-2",children:[j.name,j.dbObjectType==="view"&&d.jsx(Mt,{variant:"secondary",className:"text-xs group-hover:border-border",children:"View"})]})]},j.name)})})]}),d.jsxs($r,{value:"datamodels",className:"space-y-2",children:[d.jsx(Cr,{placeholder:"Search data models...",value:l,onChange:j=>c(j.target.value),className:"h-8 text-sm",disabled:x}),d.jsx("div",{className:"max-h-40 space-y-1 overflow-y-auto",children:x?d.jsx("div",{className:"py-4 text-center text-sm",children:"Loading data models..."}):v?d.jsx(Dv,{title:"Error loading data models",message:v.message||"Failed to load data models. Please try again.",onRetry:()=>window.location.reload()}):_.length===0?d.jsx("div",{className:"py-4 text-center text-sm",children:"No data models found"}):_.map(j=>{const A=n.some(R=>R.name===j.name&&R.type==="model");return d.jsxs("div",{className:"flex cursor-pointer items-start space-x-2 rounded p-2 hover:bg-muted",onClick:()=>C(j),children:[d.jsx(Ln,{id:`dataModel-${j.name}`,checked:A,onCheckedChange:()=>C(j),onClick:R=>R.stopPropagation(),disabled:x}),d.jsxs("div",{className:"flex flex-1 cursor-pointer flex-col gap-1",children:[d.jsx(fe,{className:"cursor-pointer",children:j.name}),d.jsx("span",{className:"text-xs text-muted-foreground",children:j.description})]})]},j.name)})})]})]})})})]})]})]})}function OYe({dataSource:e,onDataSourceUpdate:t,onSelectionChange:n,selectedEntities:r,allowedDomainIds:o=[],isRestricted:s=!1,autoSelectedDomainId:i,onRegisterSelectAll:a}){var S;const[l,c]=N.useState(""),u=N.useCallback(C=>{const k={...e,connectionId:e.connectionId||"none",connectionType:e.connectionType||"none",mode:"semanticDomain",semanticDomainId:C};t({...k})},[e,t]);N.useEffect(()=>{i&&!(e!=null&&e.semanticDomainId)&&u(i)},[i,e==null?void 0:e.semanticDomainId,u]);const{semanticDomains:f,isPending:h,error:p}=mQ(),m=s?f.filter(C=>o.includes(C.id)):f,{datasets:g,isPending:b,error:y}=jYe(e==null?void 0:e.semanticDomainId),x=C=>{const k=r||[],_=k.some(j=>j.id===C.id&&j.type==="dataset");let M;if(_)M=k.filter(j=>!(j.id===C.id&&j.type==="dataset"));else{const j={id:C.id,datasetType:C.type,name:C.name||C.table,label:C.label,domainId:C.domainId,description:C.description,database:C.database,schema:C.schema,type:"dataset",connectionId:C.connectionId,connectionType:C.connectionType,datamodelId:C.datamodelId,sql:C.sql};M=[...k,j]}n==null||n(M)},v=g.filter(C=>C.name.toLowerCase().includes(l.toLowerCase())),w=N.useCallback(()=>{if(!n||!(e!=null&&e.semanticDomainId))return;const C=r||[],_=v.filter(j=>!C.some(A=>A.id===j.id&&A.type==="dataset")).map(j=>({id:j.id,datasetType:j.type,name:j.name||j.table,label:j.label,domainId:j.domainId,description:j.description,database:j.database,schema:j.schema,type:"dataset",connectionId:j.connectionId,connectionType:j.connectionType,datamodelId:j.datamodelId,sql:j.sql})),M=[...C,..._];n(M)},[v,r,e==null?void 0:e.semanticDomainId,n]);return N.useEffect(()=>{a&&a(w)},[a,w]),d.jsxs("div",{className:"space-y-4",children:[d.jsxs("div",{className:"space-y-2",children:[d.jsx(fe,{className:"text-sm font-medium",children:"Semantic Domain"}),d.jsxs(Tt,{value:(e==null?void 0:e.semanticDomainId)||"",onValueChange:u,disabled:h||s&&!!i,children:[d.jsx(_t,{className:"w-full",children:d.jsx($t,{placeholder:h?"Loading semantic domains...":s&&i?"Loading domain...":"Select semantic domain...",children:((S=m.find(C=>C.id===(e==null?void 0:e.semanticDomainId)))==null?void 0:S.label)||"Select semantic domain"})}),d.jsx(jt,{children:m.map(C=>d.jsx(we,{className:"hover:bg-muted",value:C.id,children:d.jsxs("div",{className:"flex flex-col items-start",children:[d.jsx("span",{className:"font-medium",children:C.label}),d.jsx("span",{className:"text-xs",children:C.description})]})},C.id))})]}),p&&d.jsx(Dv,{title:"Error loading semantic models",message:p.message})]}),(e==null?void 0:e.semanticDomainId)&&d.jsxs("div",{className:"space-y-2",children:[d.jsx(fe,{className:"text-sm font-medium text-gray-700",children:"Datasets"}),d.jsxs("div",{className:"space-y-2",children:[d.jsx(Cr,{placeholder:"Search datasets...",value:l,onChange:C=>c(C.target.value),className:"h-8 text-sm",disabled:b}),d.jsx("div",{className:"max-h-40 space-y-1 overflow-y-auto",children:b?d.jsx("div",{className:"py-4 text-center text-sm text-gray-500",children:"Loading datasets..."}):y?d.jsx(Dv,{title:"Error loading datasets",message:y.message||"Failed to load datasets. Please try again.",onRetry:()=>window.location.reload()}):v.length===0?d.jsx("div",{className:"py-4 text-center text-sm text-gray-500",children:l?"No datasets match your search":"No datasets available"}):v.map(C=>{const k=r.some(_=>_.id===C.id&&_.type==="dataset");return d.jsxs("div",{className:"flex cursor-pointer items-start space-x-2 rounded p-2 hover:bg-gray-50",onClick:()=>x(C),children:[d.jsx(Ln,{id:`dataset-${C.id}`,checked:k,onCheckedChange:()=>x(C),onClick:_=>_.stopPropagation(),disabled:b}),d.jsxs("div",{className:"flex flex-1 flex-col gap-1",children:[d.jsx(fe,{className:"cursor-pointer font-medium",children:C.label||C.name}),d.jsx("span",{className:"text-xs text-gray-500",children:C.description})]})]},C.label||C.name)})})]})]})]})}function XP({open:e,onOpenChange:t,dataSource:n,fallbackDataSource:r,dialogMode:o,incomingSelectedEntities:s}){const{tokenProps:i}=qe(),{allowedSemanticDomains:a}=i,[l,c]=N.useState([]),{updateDataSource:u}=jo(),f=ee(R=>R.isVisualEditing),h=ee(R=>R.dashboard.aiContext),{setAiContext:p}=on(),m=N.useRef(null),[g,b]=N.useState(!1);mQ();const y=a&&a.length>0,x=!y,v=y&&a.length===1?a[0]:void 0,w=N.useCallback(R=>{u({...n,connectionId:(n==null?void 0:n.connectionId)||"",connectionType:(n==null?void 0:n.connectionType)||"",mode:R,selectedEntities:(n==null?void 0:n.selectedEntities)||[]})},[n,u]),S=N.useCallback(R=>{u({...n,...R})},[n,u]);N.useEffect(()=>{y&&n.mode!=="semanticDomain"&&w("semanticDomain")},[y,n.mode,w]),N.useEffect(()=>{v&&!n.semanticDomainId&&S({semanticDomainId:v})},[v,n.semanticDomainId,S]),N.useEffect(()=>{e?c(s||[]):(m.current=null,b(!1))},[e,n==null?void 0:n.selectedEntities,o,u,s,n]);const C=R=>{const F=l.filter(T=>!(T.name===R.name&&T.type===R.type));c(F)},k=()=>{c([]),o==="aiContext"&&(p({...h,selectedEntities:[]}),t(!1)),o==="dataSource"&&(u({...r,...n,selectedEntities:[]}),t(!1))},_=N.useCallback(R=>{c(R)},[]),M=N.useCallback(()=>{m.current&&m.current()},[]),j=N.useCallback(R=>{m.current=R,b(!0)},[]);function A(){var R,F;if(o==="aiContext")f&&u(n),p({...h,selectedEntities:l}),t(!1);else if(o==="dataSource"){if(n.mode==="semanticDomain"){const T=(R=l==null?void 0:l[0])==null?void 0:R.connectionId,D=(F=l==null?void 0:l[0])==null?void 0:F.connectionType;u({...n,connectionId:T,connectionType:D,selectedEntities:l})}else u({...n,selectedEntities:l});t(!1)}}return d.jsx(Rs,{open:e,onOpenChange:t,children:d.jsx(ts,{className:"flex max-w-2xl flex-col",children:d.jsxs("div",{children:[d.jsxs(ns,{className:"flex-shrink-0",children:[d.jsx(rs,{children:o==="aiContext"?"Data Context":"Select Data Source"}),d.jsx(ai,{children:o==="aiContext"?"Set the overall data scope for the dashboard":"Select data sets to analyze"})]}),d.jsx("div",{className:"flex-1 grow overflow-y-auto py-4",children:d.jsxs("div",{className:"space-y-4",children:[x&&d.jsx("div",{className:"space-y-2",children:d.jsx(ea,{defaultValue:(n==null?void 0:n.mode)||"database",value:(n==null?void 0:n.mode)||"database",onValueChange:w,className:"w-full",children:d.jsxs(ci,{className:"grid w-full grid-cols-2",children:[d.jsx(Qn,{value:"database",children:"Direct Source"}),d.jsx(Qn,{value:"semanticDomain",children:"Semantic Domain"})]})})}),(n==null?void 0:n.mode)==="semanticDomain"&&d.jsx(OYe,{dataSource:n,onDataSourceUpdate:S,selectedEntities:l,onSelectionChange:_,allowedDomainIds:a||[],isRestricted:y,autoSelectedDomainId:v,onRegisterSelectAll:j}),(n==null?void 0:n.mode)==="database"&&x&&d.jsx(IYe,{dataSource:n,onDataSourceUpdate:S,selectedEntities:l,onSelectionChange:_,onRegisterSelectAll:j})]})}),d.jsx(_Ye,{selectedEntities:l,onDeselectEntity:C}),d.jsx(Ps,{className:"flex-shrink-0",children:d.jsx("div",{className:"flex w-full justify-between",children:d.jsxs("div",{className:"flex grow justify-end gap-2",children:[d.jsx(ce,{variant:"outline",onClick:M,disabled:!g,children:"Select All"}),d.jsx(ce,{variant:"outline",onClick:k,disabled:l.length===0,children:"Clear All"}),d.jsx(ce,{variant:"outline",onClick:()=>t(!1),children:"Close"}),d.jsx(ce,{onClick:A,disabled:l.length===0,children:"Add"})]})})})]})})})}function FYe({onFilesSelected:e,disabled:t=!1,currentFileCount:n=0,className:r}){const o=N.useRef(null),s=async a=>{const l=Array.from(a.target.files||[]);if(l.length===0)return;const c=va-n;if(l.length>c){Ge.error(`You can only attach ${va} files per message. You have ${c} slot(s) remaining.`);return}const{valid:u,errors:f}=YK(l);if(f.forEach(({file:h,error:p})=>{Ge.error(`${h.name}: ${p}`)}),u.length>0)try{const h=await Promise.all(u.map(p=>DP(p)));e(h)}catch(h){console.error("Failed to process files:",h),Ge.error("Failed to process one or more files")}o.current&&(o.current.value="")},i=()=>{var a;(a=o.current)==null||a.click()};return d.jsxs(d.Fragment,{children:[d.jsx("input",{ref:o,type:"file",multiple:!0,accept:".png,.jpg,.jpeg,.gif,.webp,.pdf,.txt,.md,.csv,.json,.xml,.js,.jsx,.ts,.tsx,.py,.sql",onChange:s,className:"hidden",disabled:t||n>=va}),d.jsx(ce,{variant:"secondary",size:"sm",className:`h-7 px-2 ${r}`,onClick:i,disabled:t||n>=va,title:n>=va?`Maximum ${va} files allowed`:"Attach files",children:d.jsx(M_,{className:"h-4 w-4 text-muted-foreground"})})]})}function $Ye({children:e,onFilesDropped:t,disabled:n=!1,currentFileCount:r=0,className:o}){const[s,i]=N.useState(!1),a=N.useCallback(f=>{f.preventDefault(),f.stopPropagation(),n||i(!0)},[n]),l=N.useCallback(f=>{f.preventDefault(),f.stopPropagation();const h=f.currentTarget.getBoundingClientRect(),p=f.clientX,m=f.clientY;(p<h.left||p>=h.right||m<h.top||m>=h.bottom)&&i(!1)},[]),c=N.useCallback(f=>{f.preventDefault(),f.stopPropagation()},[]),u=N.useCallback(async f=>{if(f.preventDefault(),f.stopPropagation(),i(!1),n)return;const h=Array.from(f.dataTransfer.files);if(h.length===0)return;const p=va-r;if(h.length>p){Ge.error(`You can only attach ${va} files per message. You have ${p} slot(s) remaining.`);return}const{valid:m,errors:g}=YK(h);if(g.forEach(({file:b,error:y})=>{Ge.error(`${b.name}: ${y}`)}),m.length>0)try{const b=await Promise.all(m.map(y=>DP(y)));t(b),Ge.success(`${b.length} file(s) attached successfully`)}catch(b){console.error("Failed to process files:",b),Ge.error("Failed to process one or more files")}},[n,r,t]);return d.jsxs("div",{className:Y("relative",o),onDragEnter:a,onDragLeave:l,onDragOver:c,onDrop:u,children:[e,s&&!n&&d.jsx("div",{className:"pointer-events-none absolute inset-0 z-50 flex items-center justify-center rounded-lg border-2 border-dashed border-primary bg-primary/5 backdrop-blur-sm",children:d.jsxs("div",{className:"flex flex-col items-center gap-2",children:[d.jsx(Kv,{className:"h-8 w-8 text-primary"}),d.jsx("p",{className:"text-sm font-medium text-primary",children:"Drop files here to upload"}),d.jsxs("p",{className:"text-xs text-muted-foreground",children:[va-r," slot(s) available"]})]})})]})}const QP=E.forwardRef(({className:e,...t},n)=>d.jsx(Bw,{className:Y("peer inline-flex h-[22px] w-[36px] shrink-0 cursor-pointer items-center rounded-full border-2 border-transparent transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary data-[state=unchecked]:bg-input",e),...t,ref:n,children:d.jsx(Y9,{className:Y("pointer-events-none block size-4 rounded-full bg-background shadow-lg ring-0 transition-transform data-[state=checked]:translate-x-4 data-[state=unchecked]:translate-x-0")})}));QP.displayName=Bw.displayName;function bQ(e,[t,n]){return Math.min(n,Math.max(t,e))}function Yd(e,t,{checkForDefaultPrevented:n=!0}={}){return function(o){if(e==null||e(o),n===!1||!o.defaultPrevented)return t==null?void 0:t(o)}}function m$(e,t){if(typeof e=="function")return e(t);e!=null&&(e.current=t)}function LYe(...e){return t=>{let n=!1;const r=e.map(o=>{const s=m$(o,t);return!n&&typeof s=="function"&&(n=!0),s});if(n)return()=>{for(let o=0;o<r.length;o++){const s=r[o];typeof s=="function"?s():m$(e[o],null)}}}}function tc(...e){return E.useCallback(LYe(...e),e)}function yQ(e,t=[]){let n=[];function r(s,i){const a=E.createContext(i),l=n.length;n=[...n,i];const c=f=>{var y;const{scope:h,children:p,...m}=f,g=((y=h==null?void 0:h[e])==null?void 0:y[l])||a,b=E.useMemo(()=>m,Object.values(m));return d.jsx(g.Provider,{value:b,children:p})};c.displayName=s+"Provider";function u(f,h){var g;const p=((g=h==null?void 0:h[e])==null?void 0:g[l])||a,m=E.useContext(p);if(m)return m;if(i!==void 0)return i;throw new Error(`\`${f}\` must be used within \`${s}\``)}return[c,u]}const o=()=>{const s=n.map(i=>E.createContext(i));return function(a){const l=(a==null?void 0:a[e])||s;return E.useMemo(()=>({[`__scope${e}`]:{...a,[e]:l}}),[a,l])}};return o.scopeName=e,[r,zYe(o,...t)]}function zYe(...e){const t=e[0];if(e.length===1)return t;const n=()=>{const r=e.map(o=>({useScope:o(),scopeName:o.scopeName}));return function(s){const i=r.reduce((a,{useScope:l,scopeName:c})=>{const f=l(s)[`__scope${c}`];return{...a,...f}},{});return E.useMemo(()=>({[`__scope${t.scopeName}`]:i}),[i])}};return n.scopeName=t.scopeName,n}var xQ=globalThis!=null&&globalThis.document?E.useLayoutEffect:()=>{},BYe=E[" useInsertionEffect ".trim().toString()]||xQ;function VYe({prop:e,defaultProp:t,onChange:n=()=>{},caller:r}){const[o,s,i]=HYe({defaultProp:t,onChange:n}),a=e!==void 0,l=a?e:o;{const u=E.useRef(e!==void 0);E.useEffect(()=>{const f=u.current;f!==a&&console.warn(`${r} is changing from ${f?"controlled":"uncontrolled"} to ${a?"controlled":"uncontrolled"}. Components should not switch from controlled to uncontrolled (or vice versa). Decide between using a controlled or uncontrolled value for the lifetime of the component.`),u.current=a},[a,r])}const c=E.useCallback(u=>{var f;if(a){const h=UYe(u)?u(e):u;h!==e&&((f=i.current)==null||f.call(i,h))}else s(u)},[a,e,s,i]);return[l,c]}function HYe({defaultProp:e,onChange:t}){const[n,r]=E.useState(e),o=E.useRef(n),s=E.useRef(t);return BYe(()=>{s.current=t},[t]),E.useEffect(()=>{var i;o.current!==n&&((i=s.current)==null||i.call(s,n),o.current=n)},[n,o]),[n,r,s]}function UYe(e){return typeof e=="function"}var WYe=E.createContext(void 0);function qYe(e){const t=E.useContext(WYe);return e||t||"ltr"}function GYe(e){const t=E.useRef({value:e,previous:e});return E.useMemo(()=>(t.current.value!==e&&(t.current.previous=t.current.value,t.current.value=e),t.current.previous),[e])}function YYe(e){const[t,n]=E.useState(void 0);return xQ(()=>{if(e){n({width:e.offsetWidth,height:e.offsetHeight});const r=new ResizeObserver(o=>{if(!Array.isArray(o)||!o.length)return;const s=o[0];let i,a;if("borderBoxSize"in s){const l=s.borderBoxSize,c=Array.isArray(l)?l[0]:l;i=c.inlineSize,a=c.blockSize}else i=e.offsetWidth,a=e.offsetHeight;n({width:i,height:a})});return r.observe(e,{box:"border-box"}),()=>r.unobserve(e)}else n(void 0)},[e]),t}var ZYe=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"],Lb=ZYe.reduce((e,t)=>{const n=Js(`Primitive.${t}`),r=E.forwardRef((o,s)=>{const{asChild:i,...a}=o,l=i?n:t;return typeof window<"u"&&(window[Symbol.for("radix-ui")]=!0),d.jsx(l,{...a,ref:s})});return r.displayName=`Primitive.${t}`,{...e,[t]:r}},{});function KYe(e){const t=e+"CollectionProvider",[n,r]=yQ(t),[o,s]=n(t,{collectionRef:{current:null},itemMap:new Map}),i=g=>{const{scope:b,children:y}=g,x=N.useRef(null),v=N.useRef(new Map).current;return d.jsx(o,{scope:b,itemMap:v,collectionRef:x,children:y})};i.displayName=t;const a=e+"CollectionSlot",l=Js(a),c=N.forwardRef((g,b)=>{const{scope:y,children:x}=g,v=s(a,y),w=tc(b,v.collectionRef);return d.jsx(l,{ref:w,children:x})});c.displayName=a;const u=e+"CollectionItemSlot",f="data-radix-collection-item",h=Js(u),p=N.forwardRef((g,b)=>{const{scope:y,children:x,...v}=g,w=N.useRef(null),S=tc(b,w),C=s(u,y);return N.useEffect(()=>(C.itemMap.set(w,{ref:w,...v}),()=>void C.itemMap.delete(w))),d.jsx(h,{[f]:"",ref:S,children:x})});p.displayName=u;function m(g){const b=s(e+"CollectionConsumer",g);return N.useCallback(()=>{const x=b.collectionRef.current;if(!x)return[];const v=Array.from(x.querySelectorAll(`[${f}]`));return Array.from(b.itemMap.values()).sort((C,k)=>v.indexOf(C.ref.current)-v.indexOf(k.ref.current))},[b.collectionRef,b.itemMap])}return[{Provider:i,Slot:c,ItemSlot:p},m,r]}var vQ=["PageUp","PageDown"],wQ=["ArrowUp","ArrowDown","ArrowLeft","ArrowRight"],SQ={"from-left":["Home","PageDown","ArrowDown","ArrowLeft"],"from-right":["Home","PageDown","ArrowDown","ArrowRight"],"from-bottom":["Home","PageDown","ArrowDown","ArrowLeft"],"from-top":["Home","PageDown","ArrowUp","ArrowLeft"]},zh="Slider",[Xk,XYe,QYe]=KYe(zh),[CQ,eQe]=yQ(zh,[QYe]),[JYe,Q1]=CQ(zh),EQ=E.forwardRef((e,t)=>{const{name:n,min:r=0,max:o=100,step:s=1,orientation:i="horizontal",disabled:a=!1,minStepsBetweenThumbs:l=0,defaultValue:c=[r],value:u,onValueChange:f=()=>{},onValueCommit:h=()=>{},inverted:p=!1,form:m,...g}=e,b=E.useRef(new Set),y=E.useRef(0),v=i==="horizontal"?eZe:tZe,[w=[],S]=VYe({prop:u,defaultProp:c,onChange:A=>{var F;(F=[...b.current][y.current])==null||F.focus(),f(A)}}),C=E.useRef(w);function k(A){const R=iZe(w,A);j(A,R)}function _(A){j(A,y.current)}function M(){const A=C.current[y.current];w[y.current]!==A&&h(w)}function j(A,R,{commit:F}={commit:!1}){const T=uZe(s),D=dZe(Math.round((A-r)/s)*s+r,T),O=bQ(D,[r,o]);S((z=[])=>{const V=oZe(z,O,R);if(cZe(V,l*s)){y.current=V.indexOf(O);const $=String(V)!==String(z);return $&&F&&h(V),$?V:z}else return z})}return d.jsx(JYe,{scope:e.__scopeSlider,name:n,disabled:a,min:r,max:o,valueIndexToChangeRef:y,thumbs:b.current,values:w,orientation:i,form:m,children:d.jsx(Xk.Provider,{scope:e.__scopeSlider,children:d.jsx(Xk.Slot,{scope:e.__scopeSlider,children:d.jsx(v,{"aria-disabled":a,"data-disabled":a?"":void 0,...g,ref:t,onPointerDown:Yd(g.onPointerDown,()=>{a||(C.current=w)}),min:r,max:o,inverted:p,onSlideStart:a?void 0:k,onSlideMove:a?void 0:_,onSlideEnd:a?void 0:M,onHomeKeyDown:()=>!a&&j(r,0,{commit:!0}),onEndKeyDown:()=>!a&&j(o,w.length-1,{commit:!0}),onStepKeyDown:({event:A,direction:R})=>{if(!a){const D=vQ.includes(A.key)||A.shiftKey&&wQ.includes(A.key)?10:1,O=y.current,z=w[O],V=s*D*R;j(z+V,O,{commit:!0})}}})})})})});EQ.displayName=zh;var[NQ,kQ]=CQ(zh,{startEdge:"left",endEdge:"right",size:"width",direction:1}),eZe=E.forwardRef((e,t)=>{const{min:n,max:r,dir:o,inverted:s,onSlideStart:i,onSlideMove:a,onSlideEnd:l,onStepKeyDown:c,...u}=e,[f,h]=E.useState(null),p=tc(t,v=>h(v)),m=E.useRef(void 0),g=qYe(o),b=g==="ltr",y=b&&!s||!b&&s;function x(v){const w=m.current||f.getBoundingClientRect(),S=[0,w.width],k=JP(S,y?[n,r]:[r,n]);return m.current=w,k(v-w.left)}return d.jsx(NQ,{scope:e.__scopeSlider,startEdge:y?"left":"right",endEdge:y?"right":"left",direction:y?1:-1,size:"width",children:d.jsx(_Q,{dir:g,"data-orientation":"horizontal",...u,ref:p,style:{...u.style,"--radix-slider-thumb-transform":"translateX(-50%)"},onSlideStart:v=>{const w=x(v.clientX);i==null||i(w)},onSlideMove:v=>{const w=x(v.clientX);a==null||a(w)},onSlideEnd:()=>{m.current=void 0,l==null||l()},onStepKeyDown:v=>{const S=SQ[y?"from-left":"from-right"].includes(v.key);c==null||c({event:v,direction:S?-1:1})}})})}),tZe=E.forwardRef((e,t)=>{const{min:n,max:r,inverted:o,onSlideStart:s,onSlideMove:i,onSlideEnd:a,onStepKeyDown:l,...c}=e,u=E.useRef(null),f=tc(t,u),h=E.useRef(void 0),p=!o;function m(g){const b=h.current||u.current.getBoundingClientRect(),y=[0,b.height],v=JP(y,p?[r,n]:[n,r]);return h.current=b,v(g-b.top)}return d.jsx(NQ,{scope:e.__scopeSlider,startEdge:p?"bottom":"top",endEdge:p?"top":"bottom",size:"height",direction:p?1:-1,children:d.jsx(_Q,{"data-orientation":"vertical",...c,ref:f,style:{...c.style,"--radix-slider-thumb-transform":"translateY(50%)"},onSlideStart:g=>{const b=m(g.clientY);s==null||s(b)},onSlideMove:g=>{const b=m(g.clientY);i==null||i(b)},onSlideEnd:()=>{h.current=void 0,a==null||a()},onStepKeyDown:g=>{const y=SQ[p?"from-bottom":"from-top"].includes(g.key);l==null||l({event:g,direction:y?-1:1})}})})}),_Q=E.forwardRef((e,t)=>{const{__scopeSlider:n,onSlideStart:r,onSlideMove:o,onSlideEnd:s,onHomeKeyDown:i,onEndKeyDown:a,onStepKeyDown:l,...c}=e,u=Q1(zh,n);return d.jsx(Lb.span,{...c,ref:t,onKeyDown:Yd(e.onKeyDown,f=>{f.key==="Home"?(i(f),f.preventDefault()):f.key==="End"?(a(f),f.preventDefault()):vQ.concat(wQ).includes(f.key)&&(l(f),f.preventDefault())}),onPointerDown:Yd(e.onPointerDown,f=>{const h=f.target;h.setPointerCapture(f.pointerId),f.preventDefault(),u.thumbs.has(h)?h.focus():r(f)}),onPointerMove:Yd(e.onPointerMove,f=>{f.target.hasPointerCapture(f.pointerId)&&o(f)}),onPointerUp:Yd(e.onPointerUp,f=>{const h=f.target;h.hasPointerCapture(f.pointerId)&&(h.releasePointerCapture(f.pointerId),s(f))})})}),jQ="SliderTrack",MQ=E.forwardRef((e,t)=>{const{__scopeSlider:n,...r}=e,o=Q1(jQ,n);return d.jsx(Lb.span,{"data-disabled":o.disabled?"":void 0,"data-orientation":o.orientation,...r,ref:t})});MQ.displayName=jQ;var Qk="SliderRange",RQ=E.forwardRef((e,t)=>{const{__scopeSlider:n,...r}=e,o=Q1(Qk,n),s=kQ(Qk,n),i=E.useRef(null),a=tc(t,i),l=o.values.length,c=o.values.map(h=>TQ(h,o.min,o.max)),u=l>1?Math.min(...c):0,f=100-Math.max(...c);return d.jsx(Lb.span,{"data-orientation":o.orientation,"data-disabled":o.disabled?"":void 0,...r,ref:a,style:{...e.style,[s.startEdge]:u+"%",[s.endEdge]:f+"%"}})});RQ.displayName=Qk;var Jk="SliderThumb",PQ=E.forwardRef((e,t)=>{const n=XYe(e.__scopeSlider),[r,o]=E.useState(null),s=tc(t,a=>o(a)),i=E.useMemo(()=>r?n().findIndex(a=>a.ref.current===r):-1,[n,r]);return d.jsx(nZe,{...e,ref:s,index:i})}),nZe=E.forwardRef((e,t)=>{const{__scopeSlider:n,index:r,name:o,...s}=e,i=Q1(Jk,n),a=kQ(Jk,n),[l,c]=E.useState(null),u=tc(t,x=>c(x)),f=l?i.form||!!l.closest("form"):!0,h=YYe(l),p=i.values[r],m=p===void 0?0:TQ(p,i.min,i.max),g=sZe(r,i.values.length),b=h==null?void 0:h[a.size],y=b?aZe(b,m,a.direction):0;return E.useEffect(()=>{if(l)return i.thumbs.add(l),()=>{i.thumbs.delete(l)}},[l,i.thumbs]),d.jsxs("span",{style:{transform:"var(--radix-slider-thumb-transform)",position:"absolute",[a.startEdge]:`calc(${m}% + ${y}px)`},children:[d.jsx(Xk.ItemSlot,{scope:e.__scopeSlider,children:d.jsx(Lb.span,{role:"slider","aria-label":e["aria-label"]||g,"aria-valuemin":i.min,"aria-valuenow":p,"aria-valuemax":i.max,"aria-orientation":i.orientation,"data-orientation":i.orientation,"data-disabled":i.disabled?"":void 0,tabIndex:i.disabled?void 0:0,...s,ref:u,style:p===void 0?{display:"none"}:e.style,onFocus:Yd(e.onFocus,()=>{i.valueIndexToChangeRef.current=r})})}),f&&d.jsx(DQ,{name:o??(i.name?i.name+(i.values.length>1?"[]":""):void 0),form:i.form,value:p},r)]})});PQ.displayName=Jk;var rZe="RadioBubbleInput",DQ=E.forwardRef(({__scopeSlider:e,value:t,...n},r)=>{const o=E.useRef(null),s=tc(o,r),i=GYe(t);return E.useEffect(()=>{const a=o.current;if(!a)return;const l=window.HTMLInputElement.prototype,u=Object.getOwnPropertyDescriptor(l,"value").set;if(i!==t&&u){const f=new Event("input",{bubbles:!0});u.call(a,t),a.dispatchEvent(f)}},[i,t]),d.jsx(Lb.input,{style:{display:"none"},...n,ref:s,defaultValue:t})});DQ.displayName=rZe;function oZe(e=[],t,n){const r=[...e];return r[n]=t,r.sort((o,s)=>o-s)}function TQ(e,t,n){const s=100/(n-t)*(e-t);return bQ(s,[0,100])}function sZe(e,t){return t>2?`Value ${e+1} of ${t}`:t===2?["Minimum","Maximum"][e]:void 0}function iZe(e,t){if(e.length===1)return 0;const n=e.map(o=>Math.abs(o-t)),r=Math.min(...n);return n.indexOf(r)}function aZe(e,t,n){const r=e/2,s=JP([0,50],[0,r]);return(r-s(t)*n)*n}function lZe(e){return e.slice(0,-1).map((t,n)=>e[n+1]-t)}function cZe(e,t){if(t>0){const n=lZe(e);return Math.min(...n)>=t}return!0}function JP(e,t){return n=>{if(e[0]===e[1]||t[0]===t[1])return t[0];const r=(t[1]-t[0])/(e[1]-e[0]);return t[0]+r*(n-e[0])}}function uZe(e){return(String(e).split(".")[1]||"").length}function dZe(e,t){const n=Math.pow(10,t);return Math.round(e*n)/n}var AQ=EQ,fZe=MQ,hZe=RQ,pZe=PQ;const IQ=E.forwardRef(({className:e,...t},n)=>d.jsxs(AQ,{ref:n,className:Y("relative flex w-full touch-none select-none items-center",e),...t,children:[d.jsx(fZe,{className:"relative h-2 w-full grow overflow-hidden rounded-full bg-secondary",children:d.jsx(hZe,{className:"absolute h-full bg-primary"})}),d.jsx(pZe,{className:"block h-5 w-5 rounded-full border-2 border-primary bg-background ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50"})]}));IQ.displayName=AQ.displayName;const fp=["low","medium","high"],g$={low:"Low",medium:"Medium",high:"High"},mZe={low:"bg-green-100 text-green-700 dark:bg-green-950 dark:text-green-300",medium:"bg-amber-100 text-amber-700 dark:bg-amber-950 dark:text-amber-300",high:"bg-orange-100 text-orange-700 dark:bg-orange-950 dark:text-orange-300"};function gZe({value:e,onValueChange:t}){const n=l=>fp.indexOf(l),r=l=>fp[l],[o,s]=N.useState([n(e)]);N.useEffect(()=>{const l=fp.indexOf(e);s([l])},[e]);const i=l=>{s(l),t(r(l[0]))},a=fp[o[0]];return d.jsxs("div",{className:"w-full space-y-3",children:[d.jsxs("div",{className:"flex justify-between items-center",children:[d.jsx("span",{className:"text-sm font-medium",children:"Reasoning Effort"}),d.jsx("span",{className:`text-xs px-2 py-0.5 rounded-md font-medium ${mZe[a]}`,children:g$[a]})]}),d.jsx(IQ,{className:"[&_[role=slider]]:focus:outline-none [&_[role=slider]]:focus:ring-0 [&_[role=slider]]:focus:ring-offset-0 [&_[role=slider]]:focus-visible:outline-none [&_[role=slider]]:focus-visible:ring-0 [&_[role=slider]]:focus-visible:ring-offset-0",value:o,min:0,max:2,step:1,onValueChange:i}),d.jsx("div",{className:"flex justify-between text-xs text-muted-foreground px-1",children:fp.map(l=>d.jsx("span",{children:g$[l]},l))})]})}const eD=N.forwardRef(({input:e,setInput:t,handleInputChange:n,handleSubmit:r,isLoading:o,stop:s,onFocus:i,status:a,assistantType:l},c)=>{const[u,f]=N.useState(!1),[h,p]=N.useState(!1),[m,g]=N.useState(!1),b=N.useRef(null),y=Fg(),x=gie(),v=mie(),{setCurrentAIContext:w,updateSelectedEntities:S,setReasoningEffort:C,setShowReasoning:k}=tw(),{queueMessage:_}=hh(),{addFileAttachment:M,removeFileAttachment:j,clearFileAttachments:A,getFileAttachments:R}=H_(),F=V_(l),T=Ae(U=>U.card.dataSource),D=ee(U=>{var G;return(G=U.dashboard.aiContext)==null?void 0:G.selectedEntities});N.useEffect(()=>{c&&"current"in c&&(c.current=b.current)},[c]);const O=N.useCallback(()=>{const U=b.current;if(U){if(!e||e.length===0){U.style.height="10px";return}U.style.height="auto";const G=Math.min(Math.max(U.scrollHeight,10),200);U.style.height=`${G}px`}},[e]);N.useEffect(()=>{O()},[O]),N.useEffect(()=>{const U=setTimeout(()=>{O()},0);return()=>clearTimeout(U)},[O]);const z=()=>{const U=e.trim();!U&&F.length===0||(a!=="ready"?(_(l,U,F),t(""),A(l)):r({preventDefault:()=>{}}))},V=U=>{U.key==="Enter"&&!U.shiftKey&&(U.preventDefault(),z()),U.key==="@"&&f(!0)},$=N.useCallback(U=>{const G=QBe(U.nativeEvent);G.length>0&&(U.preventDefault(),G.forEach(async Q=>{const re=await DP(Q);M(l,re)}))},[M,l]),I=N.useCallback(U=>{U.forEach(G=>{M(l,G)})},[M,l]),B=N.useCallback(U=>{U.forEach(G=>{M(l,G)})},[M,l]),L=N.useCallback(U=>{j(l,U)},[j,l]),P=U=>{if(y.selectedEntities.some(Q=>Q.id&&Q.id===U.id||Q.name===U.name)){const Q=y.selectedEntities.filter(re=>!(re.id&&re.id===U.id||re.name===U.name));w({selectedEntities:Q})}else{const Q=[...y.selectedEntities,U];w({selectedEntities:Q})}},H=U=>{P(U)},q=U=>{var re;if(!y.selectedEntities.some(J=>J.id&&J.id===U.id||J.name===U.name)){const J=[...y.selectedEntities,U];w({selectedEntities:J})}const Q="label"in U?U.label:U.name;t(e+`@${Q} `),f(!1),(re=b.current)==null||re.focus()},K=U=>{const G=y.selectedEntities.filter(J=>!(J.id&&J.id===U.id||J.name===U.name));w({selectedEntities:G});const re=`@${"label"in U?U.label:U.name}`;e.includes(re)&&t(e.replace(re,"").trim())},W=U=>{const G=new Set(U.map(J=>J.id||J.name)),Q=y.selectedEntities.filter(J=>!G.has(J.id||J.name));w({selectedEntities:Q});let re=e;U.forEach(J=>{const ae=`@${"label"in J?J.label:J.name}`;re=re.replace(ae,"").trim()}),t(re)};return d.jsxs($Ye,{onFilesDropped:I,currentFileCount:F.length,disabled:o,className:"space-y-4",children:[d.jsx(NYe,{entities:y.selectedEntities,availableEntities:D||[],onRemoveEntity:K,onRemoveEntities:W}),F.length>0&&d.jsx(JBe,{files:F,onRemove:L,showRemove:!o,className:"mb-2"}),d.jsxs("div",{className:"rounded-lg border border-border bg-background shadow-sm focus-within:ring-1 focus-within:ring-foreground/40",children:[d.jsx("textarea",{ref:b,value:e,onChange:n,onKeyDown:V,onPaste:$,onFocus:()=>{O(),i==null||i()},placeholder:"Ask a question...",className:"max-h-[200px] min-h-[40px] w-full resize-none overflow-y-auto border-0 bg-transparent px-3 py-2 text-sm text-foreground placeholder:text-muted-foreground/50 focus:outline-none focus:ring-0",style:{height:"40px",lineHeight:"1.5"}}),d.jsxs("div",{className:"flex items-center justify-between border-foreground/10 px-3 py-2",children:[d.jsxs("div",{className:"flex items-center gap-2",children:[d.jsxs(bs,{open:u,onOpenChange:f,children:[d.jsx(ys,{asChild:!0,children:d.jsx(ce,{variant:"secondary",size:"sm",className:"h-7 px-2",title:"Add entity",children:d.jsx(One,{className:"h-4 w-4 text-muted-foreground"})})}),d.jsx(xs,{className:"w-80 p-0",align:"start",side:"top",sideOffset:8,onOpenAutoFocus:U=>U.preventDefault(),children:d.jsx(CYe,{isOpen:!0,onSelect:P,onDeselect:H,onClose:()=>{var U;f(!1),(U=b.current)==null||U.focus()},availableEntities:D||[],selectedEntities:y.selectedEntities,onTabComplete:q,onSelectAll:()=>{D&&w({selectedEntities:D})},onRemoveAll:()=>{w({selectedEntities:[]})},onAddContext:()=>{f(!1),p(!0)}})})]}),d.jsx(FYe,{onFilesSelected:B,disabled:o,currentFileCount:F.length}),d.jsxs(bs,{open:m,onOpenChange:g,children:[d.jsx(ys,{asChild:!0,children:d.jsx(ce,{variant:"secondary",size:"sm",className:"h-7 px-2",title:"Reasoning settings",children:d.jsx(tx,{className:"h-4 w-4 text-muted-foreground"})})}),d.jsx(xs,{className:"w-72",align:"start",side:"top",sideOffset:8,children:d.jsxs("div",{className:"space-y-4",children:[d.jsx(gZe,{value:v,onValueChange:U=>{C(U)}}),d.jsxs("div",{className:"flex items-center space-x-2",children:[d.jsx(QP,{id:"show-reasoning",checked:x,onCheckedChange:k}),d.jsx(fe,{htmlFor:"show-reasoning",className:"font-normal",children:"Show reasoning"})]})]})})]})]}),d.jsxs("div",{className:"flex items-center gap-2",children:[o&&d.jsx(ce,{className:"rounded-full",size:"sm",onClick:s,children:d.jsx(Kne,{className:"size-3.5 bg-background"})}),!o&&d.jsx(ce,{disabled:!e.trim()&&F.length===0,size:"sm",variant:a!=="ready"?"secondary":"default",onClick:z,title:a!=="ready"?"Message will be queued":void 0,children:d.jsx(uL,{className:"size-4"})})]})]})]}),d.jsx(XP,{incomingSelectedEntities:y.selectedEntities,open:h,onOpenChange:p,dataSource:T||ah,fallbackDataSource:ah,dialogMode:"aiContext"})]})});eD.displayName="ChatInputWithContext";function OQ({assistantType:e,className:t}){const n=p6(e),{removeFromQueue:r}=hh();return n.length===0?null:d.jsxs("div",{className:Y("space-y-2",t),children:[d.jsxs("div",{className:"flex items-center gap-1 text-xs text-muted-foreground",children:[d.jsx(Ha,{className:"h-3 w-3"}),d.jsxs("span",{children:["Pending messages (",n.length,")"]})]}),d.jsx("div",{className:"space-y-2",children:n.map(o=>d.jsx("div",{className:"group relative rounded-lg border border-dashed border-muted-foreground/30 bg-muted/30 px-3 py-2 text-sm animate-in fade-in-0 slide-in-from-bottom-1",children:d.jsxs("div",{className:"flex items-start justify-between gap-2",children:[d.jsx("div",{className:"flex-1 space-y-1",children:d.jsx("p",{className:"break-words text-foreground/70",children:o.text})}),d.jsx(ce,{variant:"ghost",size:"sm",className:"h-6 w-6 p-0 opacity-0 transition-opacity group-hover:opacity-100",onClick:()=>r(e,o.id),title:"Remove from queue",children:d.jsx(Dn,{className:"h-3 w-3"})})]})},o.id))})]})}function FQ({assistantType:e,status:t,isLoading:n,sendMessage:r}){const o=p6(e),{dequeueMessage:s}=hh();N.useEffect(()=>{if(t!=="ready"||n||!(o&&o.length>0))return;const a=s(e);a&&r({role:"user",parts:[{type:"text",text:a.text}]})},[t,n,o,s,r,e])}function $Q(e,t={}){const{threshold:n=50,delay:r=0,dependencies:o=[],forceScrollOnStream:s=!0}=t,i=N.useRef(null),[a,l]=N.useState(!0),[c,u]=N.useState(!0),[f,h]=N.useState(!1),[p,m]=N.useState(0),g=N.useRef(),b=N.useRef(e.length),y=N.useRef(!1),x=N.useRef(!1),v=N.useRef(0),w=N.useRef(0),S=N.useRef(),C=N.useCallback(()=>{const j=i.current;if(!j)return!0;const{scrollTop:A,scrollHeight:R,clientHeight:F}=j;return R-A-F<=n},[n]),k=N.useCallback((j={})=>{const A=i.current;if(!A)return;const{force:R=!1,instant:F=!1}=j;if(!a&&!R)return;const D=Date.now()-w.current;if(!R&&!F&&D<10)return;g.current&&clearTimeout(g.current),S.current&&clearTimeout(S.current);const O=()=>{x.current=!0,w.current=Date.now(),requestAnimationFrame(()=>{A&&(A.scrollTop=A.scrollHeight,u(!0),h(!1),m(0),setTimeout(()=>{x.current=!1},20))})};!F&&r>0?S.current=setTimeout(O,r):O()},[a,r]),_=N.useCallback(()=>{const j=i.current;if(!j||x.current)return;const A=j.scrollTop,R=Math.abs(A-v.current);v.current=A,R>5&&(y.current=!0);const F=C();u(F),F?(l(!0),h(!1),m(0),y.current=!1):y.current&&l(!1),y.current&&setTimeout(()=>{y.current=!1},200)},[C]),M=N.useCallback(()=>{m(0),h(!1)},[]);return N.useEffect(()=>(S.current&&clearTimeout(S.current),S.current=setTimeout(()=>{let j=!1;if(s&&e.length>0){const F=e[e.length-1];(F==null?void 0:F.role)==="assistant"&&(j=!0,y.current=!1)}if((a||j)&&!y.current){const F=e.length>50&&!j;k({instant:F})}const A=e.length!==b.current,R=e.length>b.current;A&&(b.current=e.length,!a&&!j&&R&&(h(!0),m(F=>F+1)))},5),()=>{S.current&&clearTimeout(S.current)}),[e,o,k,a,s]),N.useEffect(()=>{k({instant:!0})},[k]),N.useEffect(()=>()=>{g.current&&clearTimeout(g.current),S.current&&clearTimeout(S.current)},[]),{scrollRef:i,isAutoScrollEnabled:a,isAtBottom:c,hasNewMessages:f,newMessageCount:p,scrollToBottom:k,handleScroll:_,resetNewMessageCount:M}}function LQ(e,t={}){const{maxVisibleMessages:n=50,initialLoadCount:r=20,loadMoreCount:o=10}=t,[s,i]=N.useState(r),a=N.useMemo(()=>{if(e.length<=s)return e;const h=Math.max(0,e.length-s);return e.slice(h)},[e,s]),l=e.length>s,c=s>=e.length,u=N.useCallback(()=>{i(h=>Math.min(h+o,n))},[o,n]),f=N.useCallback(()=>{i(r)},[r]);return N.useEffect(()=>{c&&e.length>s&&s<n&&i(Math.min(e.length,n))},[e.length,s,c,n]),{visibleMessages:a,hasMoreMessages:l,totalMessageCount:e.length,loadMoreMessages:u,resetMessageWindow:f,isShowingAll:c}}function zQ(e){var n;if(!e||e.length===0)return{hasActiveTools:!1};const t=e[e.length-1];if(!(t!=null&&t.parts))return{hasActiveTools:!1};for(const r of t.parts){if(r.type==="reasoning"&&"state"in r&&r.state==="streaming")return{hasActiveTools:!0,activeToolText:r.text||"Reasoning...",toolType:"reasoning"};if(((n=r.type)!=null&&n.startsWith("tool-")||r.type==="dynamic-tool")&&"state"in r&&["input-streaming","input-available"].includes(r.state)){const o=r,s=o.state;return{hasActiveTools:!0,activeToolText:ZK(o.type,s),toolType:o.type}}}return{hasActiveTools:!1}}const bZe=[{title:"Show top 3 insights",subtitle:"from this dataset"},{title:"Create a bar chart for",subtitle:"sales by product category"}];function yZe({open:e,setOpen:t}){const[n,r]=N.useState(!1),[o,s]=N.useState(wm),[i,a]=N.useState(!1),[l,c]=N.useState(!1),{isLocalDev:u,isConsoleMode:f}=O1(),h=N.useRef(null);ee(be=>be.dashboard.aiScopeTables);const p=ee(be=>be.isDashboardEditing),m=ee(be=>be.selectedSheetId),{setDataSource:g}=jo(),{addFrame:b,setSelectedFrameId:y,setIsDashboardEditing:x}=on(),v=Fg(),{setCurrentAIContext:w,updateSelectedEntities:S,setReasoningEffort:C,setShowReasoning:k}=tw(),{clearQueue:_}=hh(),{clearFileAttachments:M,getFileAttachments:j}=H_(),A=V_("dashboard"),R=ee(be=>be.dashboard.aiContext),F=Ae(be=>be.card.dataSource),{assistantProfile:T}=fQ(),D=ee(be=>be.handleOpenAssistantProfile),{sendMessage:O,isLoading:z,messages:V,setMessages:$,status:I,stop:B,errorMessage:L,clearError:P}=wYe(),[H,q]=N.useState(""),K=be=>{q(be.target.value)};function W({sql:be,data:ze,cardTitle:ot,connectionId:Rt,cardType:Vt,python:Zt,cardConfig:xe,dataSource:yt}){if(console.log("handleAddNewFrame",{sql:be,data:ze,cardTitle:ot,connectionId:Rt,cardType:Vt,python:Zt,cardConfig:xe,dataSource:yt}),!m)return;const In={id:br(),title:ot||"Title",preferences:{onClickFilter:[{columnIndex:0,expression:""}],chartOptions:{indexAxis:Vt==="horizontalBar"?"y":"x"}},type:Vt,sql:be,python:Zt,dataSource:yt,config:xe,connectionId:Rt},ye={id:br(),cards:[In],activeCardId:In.id};x(!0),b(m,ye,"end"),y(ye.id)}const U=be=>{be.preventDefault();const ze=H.trim();if(!ze&&A.length===0)return;const ot=[];ze&&ot.push({type:"text",text:ze}),A.forEach(Rt=>{Rt.data&&ot.push({type:"file",mediaType:Rt.type,filename:Rt.name,url:`data:${Rt.type};base64,${Rt.data}`})}),O({role:"user",parts:ot}),q(""),M("dashboard"),ge({force:!0})};N.useEffect(()=>{var be;e&&((be=h.current)==null||be.focus())},[e]),FQ({assistantType:"dashboard",status:I,isLoading:z,sendMessage:O});const{hasActiveTools:G}=zQ(V),{visibleMessages:Q,hasMoreMessages:re,totalMessageCount:J,loadMoreMessages:ne,resetMessageWindow:ae}=LQ(V,{maxVisibleMessages:15,initialLoadCount:10,loadMoreCount:5}),{scrollRef:se,isAtBottom:oe,hasNewMessages:Ne,newMessageCount:ue,scrollToBottom:ge,handleScroll:Pe,resetNewMessageCount:at}=$Q(Q,{threshold:50,delay:0,dependencies:[I,V.length]});function Ve(be){jn();const ze={role:"user",parts:[{type:"text",text:be.title+" "+be.subtitle}]};O(ze)}function We(be){jn(),O({role:"user",parts:[{type:"text",text:be}]})}function xn(){var ot;const be=(ot=R==null?void 0:R.selectedEntities)==null?void 0:ot[0],ze={connectionId:(be==null?void 0:be.connectionId)||"",connectionType:(be==null?void 0:be.connectionType)||"",mode:(be==null?void 0:be.type)==="dataset"?"semanticDomain":"database",dbSelection:{database:(be==null?void 0:be.database)||"",schema:(be==null?void 0:be.schema)||"",entityType:(be==null?void 0:be.type)||"table"},selectedEntities:(R==null?void 0:R.selectedEntities)||[]};g(ze),c(!0)}function jn(){v.selectedEntities.length===0&&w({selectedEntities:(R==null?void 0:R.selectedEntities)||[]})}const ie=(H==null?void 0:H.length)===0&&(V==null?void 0:V.filter(be=>be.role==="user").length)===0;function me(){return d.jsx("div",{"data-role":"header",children:d.jsx("div",{className:"text-lg font-semibold",children:"Assistant"})})}function Re(){return d.jsxs(hb,{children:[d.jsx(pb,{asChild:!0,children:d.jsx(Gd,{className:"h-7 p-2 text-muted-foreground/50 hover:text-foreground",children:d.jsx(qv,{className:"size-3.5"})})}),d.jsxs(_h,{align:"end",children:[d.jsx(df,{children:"Options"}),d.jsx(mb,{}),d.jsx(lm,{checked:n,onCheckedChange:r,children:"Token Usage"}),d.jsx(lm,{checked:o,onCheckedChange:s,children:"Tool Invocations"}),d.jsx(lm,{checked:i,onCheckedChange:a,children:"System Message"})]})]})}return d.jsxs("div",{"data-role":"dashboard-assistant",className:"flex h-full grow flex-col justify-between break-words px-6 py-4",children:[d.jsxs("div",{"data-role":"header-section",className:"flex items-start justify-between gap-2",children:[me(),D&&d.jsx(ce,{variant:"outline",size:"sm",className:"h-7 p-2",onClick:D,children:(T==null?void 0:T.name)||"Default Profile"}),d.jsxs("div",{"data-role":"header-actions",className:"flex items-center",children:[f&&Re(),u&&d.jsx(Fu,{text:JSON.stringify(V,null,2),className:"h-7 p-2"}),(p||wm)&&d.jsx(Gd,{tooltip:"Add Context",className:"h-7 p-2 text-muted-foreground/50 hover:text-foreground",onClick:xn,children:d.jsx(ji,{className:"size-4"})}),d.jsx(Gd,{className:"h-7 p-2 text-muted-foreground/50 hover:text-foreground",tooltip:"New Chat",onClick:()=>{$([]),_("dashboard"),P(),ae()},children:d.jsx(fL,{className:"size-4"})}),d.jsx(Gd,{className:"h-7 p-2 text-muted-foreground/50 hover:text-foreground",onClick:()=>{t(!1)},children:d.jsx(Dn,{className:"size-4"})})]})]}),d.jsxs(ed,{"data-role":"dashboard-assistant-scroll-area",ref:se,className:"mt-4 flex flex-1 basis-0 flex-col flex-wrap justify-end pr-2",onScroll:Pe,children:[d.jsxs("div",{className:"space-y-3 pb-4",children:[re&&d.jsx("div",{className:"flex justify-center py-2",children:d.jsxs(ce,{variant:"outline",size:"sm",onClick:ne,className:"text-xs",children:["Load ",Math.min(5,J-Q.length)," ","more messages (",J-Q.length," ","hidden)"]})}),d.jsx(tX,{showTools:o,showSystemMessage:i,messages:Q,onAddToDashboard:W}),!G&&d.jsx(eX,{status:I,errorMessage:L})]}),d.jsx(Za,{orientation:"horizontal"})]}),!oe&&d.jsx("div",{className:"absolute bottom-24 right-8 z-10",children:d.jsxs(ce,{onClick:()=>{ge({force:!0}),at()},size:"sm",variant:"secondary",className:"rounded-full shadow-lg","aria-label":"Scroll to bottom",children:[d.jsx(Eo,{className:"h-4 w-4"}),Ne&&ue>0&&d.jsx("span",{className:"ml-1.5 flex h-5 w-5 items-center justify-center rounded-full bg-primary text-xs text-primary-foreground",children:ue>9?"9+":ue})]})}),d.jsxs("div",{className:"space-y-3",children:[!T&&ie&&d.jsx(nX,{onClick:Ve,placeholders:bZe}),d.jsx("div",{children:ie&&T&&d.jsx(hQ,{seedQuestions:T.seedQuestions||[],handleSeedQuestionClick:We})}),d.jsx(OQ,{assistantType:"dashboard",className:"mb-3"}),d.jsx(eD,{ref:h,setInput:q,stop:B,input:H,handleInputChange:K,handleSubmit:be=>{jn(),U(be),ge({force:!0})},isLoading:z,status:I,assistantType:"dashboard",onFocus:()=>{}})]}),d.jsx(XP,{incomingSelectedEntities:(R==null?void 0:R.selectedEntities)||[],open:l,onOpenChange:c,dataSource:F||ah,fallbackDataSource:ah,dialogMode:"aiContext"})]})}function xZe(e){const t=e.current,{getSelectedFrame:n,addFrame:r,setSelectedFrameId:o}=on(),s=ee(u=>u.dashboard.sheets),a=ee(u=>u.selectedSheetId)??(s==null?void 0:s[0].id),l=ee(u=>u.isDashboardEditing),c=ee(u=>u.isVisualEditing);N.useEffect(()=>{if(!l||c)return;async function u(p){const m=p.ctrlKey||p.metaKey;m&&p.key==="c"?(await f(),Ge.success("Card copied to clipboard"),p.preventDefault()):m&&p.key==="v"&&(await h(),p.preventDefault())}async function f(){try{const p=n();p&&await navigator.clipboard.writeText(JSON.stringify(p))}catch(p){console.error("Failed to copy text:",p)}}async function h(){if(!a)return null;try{const p=await navigator.clipboard.readText();try{const m=JSON.parse(p);if(m&&m.id){m.id=br();const g=m.activeCardId;m.cards.forEach(b=>{const y=b.id;b.id=br(),y===g&&(m.activeCardId=b.id,b.title=`${b.title} (Copy)`)}),r(a,m),o(m.id)}}catch(m){console.error("Failed to parse clipboard contents: ",m)}return p}catch(p){return console.error("Failed to paste text:",p),null}}return t==null||t.addEventListener("keydown",u),()=>t==null?void 0:t.removeEventListener("keydown",u)},[r,n,o,a,l,c,t])}function BQ(e,t){const[n,r]=N.useState(()=>{const o=localStorage.getItem(e);return o?JSON.parse(o):t});return N.useEffect(()=>{localStorage.setItem(e,JSON.stringify(n))},[n,e]),[n,r]}function VQ(){var F;const{showAssistant:e}=qe(),{preferences:t}=O1(),n=((F=t==null?void 0:t.cardDisplay)==null?void 0:F.mode)==="print",r=N.useRef(null),o=N.useRef(null),[s,i]=N.useState(!1),[a,l]=BQ("dashboardAssistantOpen",!1),c=ee(T=>T.isVisualEditing),u=ee(T=>T.themeStyle),f=ee(T=>{var D;return(D=T.dashboard)==null?void 0:D.sheets}),h=ee(T=>T.isDashboardEditing),p=ee(T=>T.selectedSheetId),{setSelectedSheetId:m,setSheetTitle:g,addSheet:b,setSheets:y}=on();xZe(o);const{setActiveAssistantType:x}=tw();N.useEffect(()=>{a&&x("dashboard")},[a,x]);function v(T){var D,O;T?((D=r.current)==null||D.resize(40),l(!0),x("dashboard")):(l(!1),(O=r.current)==null||O.resize(0),x(null))}function w(){const T={id:br(),title:"New Sheet"};b(T),m(T.id)}function S(T){T<1?(l(!1),x(null)):(l(!0),x("dashboard"))}function C(){return(u==null?void 0:u.canvasTheme)==="muted"||!(u!=null&&u.canvasTheme)?"hsl(var(--semaphor-muted))":(u==null?void 0:u.canvasTheme)==="clear"?"":u==null?void 0:u.canvasTheme}const k=(T,D)=>{T.dataTransfer.setData("tabIndex",D.toString())},_=T=>{T.preventDefault()},M=(T,D)=>{const O=T.dataTransfer.getData("tabIndex");if(O===D.toString())return;const z=Array.from(f||[]),[V]=z.splice(parseInt(O),1);z.splice(D,0,V),y(z)};function j(){var T,D;if(f&&f.length>1||h)return d.jsxs(ci,{role:"tab-list",className:"flex h-11 items-center justify-start gap-2 rounded-none border-b border-b-muted bg-transparent px-2.5 py-3",children:[f==null?void 0:f.map((O,z)=>d.jsxs(Qn,{draggable:!0,onDragStart:V=>k(V,z),onDragOver:_,onDrop:V=>M(V,z),style:{borderRadius:u==null?void 0:u.controlInputRadius},onClick:()=>m(O.id),className:"flex items-center gap-1 rounded-none border px-2 py-1",value:O.id,children:[d.jsx(ag,{enabled:h&&O.id===p,text:O.title,onSave:V=>g(O.id,V),children:O.title},O.id),h&&p===O.id&&f.length>1&&d.jsx(Dn,{className:"ml-1 size-3",onClick:()=>i(!0)})]},O.id)),h&&d.jsx("div",{style:{borderRadius:(D=(T=u==null?void 0:u.chart)==null?void 0:T.options)==null?void 0:D.borderRadius},className:"flex h-7 items-center justify-center border-none bg-muted p-2 hover:cursor-pointer dark:border-l-background",onClick:w,children:d.jsx(ks,{className:"size-3"})})]})}function A(){return d.jsx("div",{ref:o,style:{},className:"grow",children:f==null?void 0:f.map(T=>d.jsx($r,{style:{backgroundColor:C()},className:Y("mt-0",{}),value:T.id,children:d.jsx(m$e,{sheet:T})},T.id))})}function R(){var T;return d.jsxs(ea,{"data-role":"dashboard-tabs-container",className:Y("relative flex h-full flex-col",u==null?void 0:u.dashboardTabsContainer),onValueChange:D=>{m(D)},value:p||((T=f==null?void 0:f[0])==null?void 0:T.id),children:[j(),d.jsx(ed,{"data-role":"dashboard-tabs-content",className:"flex-1 grow basis-0 overflow-y-auto",children:A()}),d.jsx(Y$e,{open:s,setOpen:i})]})}return f?d.jsxs(d.Fragment,{children:[d.jsxs(AZ,{className:"flex-1 basis-0 overflow-y-auto",direction:"horizontal",children:[d.jsx(Mk,{children:R()}),e===!0&&d.jsxs(d.Fragment,{children:[d.jsx(G$e,{open:a,onTabClick:v,withHandle:!0}),d.jsx(Mk,{className:"flex grow","data-role":"dashboard-assistant-panel",onResize:S,defaultSize:a?40:0,ref:r,children:d.jsx("div",{className:"grow overflow-y-auto",children:d.jsx(yZe,{open:a,setOpen:v})})})]})]}),e===!0&&!n&&!a&&!c&&d.jsx("div",{className:"fixed bottom-6 right-6 z-50",children:d.jsx(ce,{size:"sm",variant:"outline",className:"h-12 w-12 rounded-full border-border bg-background p-0 shadow-lg hover:bg-muted",onClick:()=>v(!0),title:"Open Assistant",children:d.jsx(dL,{className:"h-5 w-5"})})})]}):null}function HQ({children:e}){return d.jsx(ii,{style:{height:"100%",width:"100%"},children:d.jsx(Xte,{defaultTheme:"system",storageKey:"vite-ui-theme",children:d.jsx(td,{delayDuration:0,children:e})})})}function UQ({children:e,preferences:t}){const{currentUser:n}=Qi(),r=N.useMemo(()=>{var o,s;return{preferences:t||{},isLocalDev:((o=t==null?void 0:t.uiMode)==null?void 0:o.developer)||!1,isConsoleMode:((s=t==null?void 0:t.uiMode)==null?void 0:s.console)||!1}},[t]);return d.jsx(lZ.Provider,{value:r,children:d.jsx(sP,{displayPreferences:t==null?void 0:t.cardDisplay,currentUser:n,children:e})})}function WQ(e){if(typeof window>"u")return null;const{preferences:t}=e;return d.jsx(Ah,{FallbackComponent:vR,children:d.jsx(j3,{dashboardProps:e,children:d.jsx(HQ,{children:d.jsx(UQ,{preferences:t,children:d.jsx("main",{className:"flex h-full flex-col",children:d.jsx(g6,{...e,type:"dashboard",children:d.jsx(VQ,{})})})})})})})}const vZe=e=>{const{currentContext:t,currentMode:n,selectedUsers:r,usersToRemove:o,usersToUpdate:s,selectedGroups:i=[],groupsToRemove:a=[],groupsToUpdate:l=[],selectedTenant:c,orgWideRole:u,allTenantsRole:f,tenantWideRole:h}=e;if(!t||!n)return null;switch(t){case"org-tab":if(n==="allOrgUsers")return{context:"org-tab",mode:"allOrgUsers",orgWideRole:u};if(n==="specificOrgUsers")return{context:"org-tab",mode:"specificOrgUsers",selectedUsers:r,usersToRemove:o,usersToUpdate:s};break;case"tenant-tab":if(n==="allTenants")return{context:"tenant-tab",mode:"allTenants",allTenantsRole:f};if(n==="allTenantUsers")return c?{context:"tenant-tab",mode:"allTenantUsers",tenantId:c,tenantWideRole:h}:null;if(n==="specificTenantUsers")return c?{context:"tenant-tab",mode:"specificTenantUsers",tenantId:c,selectedUsers:r,usersToRemove:o,usersToUpdate:s}:null;break;case"tenant-dialog":if(n==="allTenantUsers")return{context:"tenant-dialog",mode:"allTenantUsers",tenantWideRole:h};if(n==="specificTenantUsers")return{context:"tenant-dialog",mode:"specificTenantUsers",selectedUsers:r,usersToRemove:o,usersToUpdate:s};break;case"group-share":if(n==="specificGroups")return{context:"group-share",mode:"specificGroups",selectedGroups:i,groupsToRemove:a,groupsToUpdate:l};break}return null},qQ=e=>{var t,n,r;switch(e.context){case"org-tab":return e.mode==="specificOrgUsers"?e.selectedUsers.length>0||e.usersToRemove.length>0||e.usersToUpdate.length>0:!0;case"tenant-tab":if(e.mode==="allTenantUsers"||e.mode==="specificTenantUsers"){if(!e.tenantId)return!1;if(e.mode==="specificTenantUsers")return e.selectedUsers.length>0||e.usersToRemove.length>0||e.usersToUpdate.length>0}return!0;case"tenant-dialog":return e.mode==="specificTenantUsers"?e.selectedUsers.length>0||e.usersToRemove.length>0||e.usersToUpdate.length>0:!0;case"group-share":return e.mode==="specificGroups"?(((t=e.selectedGroups)==null?void 0:t.length)??0)>0||(((n=e.groupsToRemove)==null?void 0:n.length)??0)>0||(((r=e.groupsToUpdate)==null?void 0:r.length)??0)>0:!0}return!1};function GQ(e){var y;const{tokenProps:t}=qe(),n=ee(x=>x.authToken)||e,r=Ae(x=>x.selectedConnectionId),o=Ae(x=>x.selectedDatabaseName),s=Ae(x=>x.selectedDatamodelId),i=Ae(x=>x.selectedSchemaName),a=Ae(x=>x.selectedTableName),{selectedConnection:l}=Ji(),c=l==null?void 0:l.type,{data:u,isLoading:f,isFetching:h,isError:p,refetch:m}=bn({queryKey:["columns",r,o,s,i,a],queryFn:()=>qn(`${t.apiServiceUrl}/v1/columns`,(n==null?void 0:n.accessToken)||"",{connection_id:r,datamodel_id:s||"",database_name:o,schema_name:i,table_name:a}),enabled:g(c)});function g(x){return n!=null&&n.accessToken?!!(r&&o&&o!=="NA"&&i&&a||r&&(x==="S3"||x==="API")||s&&s):!1}return{columns:(y=u==null?void 0:u.columns)==null?void 0:y.map(x=>({...x,data_type:x.data_type.toLowerCase()})),isColumnsLoading:f,isColumnsFetching:h,isColumnsError:p,refetchColumns:m}}function wZe(e,t){const[n,r]=N.useState(e);return N.useEffect(()=>{const o=setTimeout(()=>{r(e)},t);return()=>{clearTimeout(o)}},[e,t]),n}const b$={searchQuery:"",debouncedSearchQuery:"",selectedUsers:[],usersToRemove:[],usersToUpdate:[],selectedGroups:[],groupsToRemove:[],groupsToUpdate:[],selectedTab:"org",currentContext:"org-tab",currentMode:null,orgWideRole:"VIEWER",allTenantsRole:"VIEWER",tenantWideRole:"VIEWER",groupWideRole:"VIEWER",selectedTenant:"",message:""},Yr=Xa()(Pg(e=>({...b$,actions:{setSearchQuery:t=>{e(n=>{n.searchQuery=t})},setDebouncedSearchQuery:t=>{e(n=>{n.debouncedSearchQuery=t})},setSelectedUsers:t=>{e(n=>{n.selectedUsers=t})},addSelectedUser:t=>{e(n=>{n.selectedUsers.some(o=>o.id===t.id)||n.selectedUsers.push(t)})},removeSelectedUser:t=>{e(n=>{n.selectedUsers=n.selectedUsers.filter(r=>r.id!==t)})},updateSelectedUserRole:(t,n)=>{e(r=>{const o=r.selectedUsers.find(s=>s.id===t);o&&(o.role=n)})},setUsersToRemove:t=>{e(n=>{n.usersToRemove=t})},addUserToRemove:t=>{e(n=>{n.usersToRemove.includes(t)||n.usersToRemove.push(t)})},removeUserFromRemove:t=>{e(n=>{n.usersToRemove=n.usersToRemove.filter(r=>r!==t)})},setUsersToUpdate:t=>{e(n=>{n.usersToUpdate=t})},addUserToUpdate:t=>{e(n=>{n.usersToUpdate=n.usersToUpdate.filter(r=>r.id!==t.id),n.usersToUpdate.push(t)})},removeUserFromUpdate:t=>{e(n=>{n.usersToUpdate=n.usersToUpdate.filter(r=>r.id!==t)})},setSelectedTenant:t=>{e(n=>{n.selectedTenant=t})},setSelectedTab:t=>{e(n=>{n.selectedTab=t})},setCurrentContext:t=>{e(n=>{n.currentContext=t})},setCurrentMode:t=>{e(n=>{n.currentMode=t})},setOrgWideRole:t=>{e(n=>{n.orgWideRole=t})},setAllTenantsRole:t=>{e(n=>{n.allTenantsRole=t})},setTenantWideRole:t=>{e(n=>{n.tenantWideRole=t})},setGroupWideRole:t=>{e(n=>{n.groupWideRole=t})},setSelectedGroups:t=>{e(n=>{n.selectedGroups=t})},addSelectedGroup:t=>{e(n=>{n.selectedGroups.some(o=>o.id===t.id)||n.selectedGroups.push(t)})},removeSelectedGroup:t=>{e(n=>{n.selectedGroups=n.selectedGroups.filter(r=>r.id!==t)})},updateSelectedGroupRole:(t,n)=>{e(r=>{const o=r.selectedGroups.find(s=>s.id===t);o&&(o.role=n)})},setGroupsToRemove:t=>{e(n=>{n.groupsToRemove=t})},addGroupToRemove:t=>{e(n=>{n.groupsToRemove.includes(t)||n.groupsToRemove.push(t)})},removeGroupFromRemove:t=>{e(n=>{n.groupsToRemove=n.groupsToRemove.filter(r=>r!==t)})},setGroupsToUpdate:t=>{e(n=>{n.groupsToUpdate=t})},addGroupToUpdate:t=>{e(n=>{const r=n.groupsToUpdate.findIndex(o=>o.id===t.id);r!==-1?n.groupsToUpdate[r]=t:n.groupsToUpdate.push(t)})},removeGroupFromUpdate:t=>{e(n=>{n.groupsToUpdate=n.groupsToUpdate.filter(r=>r.id!==t)})},setMessage:t=>{e(n=>{n.message=t})},validateShareData:t=>qQ(t),resetShareState:()=>{e(t=>{Object.assign(t,b$)})},resetUserSelections:()=>{e(t=>{t.selectedUsers=[],t.usersToRemove=[],t.usersToUpdate=[]})},resetGroupSelections:()=>{e(t=>{t.selectedGroups=[],t.groupsToRemove=[],t.groupsToUpdate=[]})}}}))),YQ=()=>Yr(e=>e.searchQuery),SZe=()=>Yr(e=>e.selectedUsers),CZe=()=>Yr(e=>e.usersToRemove),EZe=()=>Yr(e=>e.usersToUpdate),NZe=()=>Yr(e=>e.selectedTenant),kZe=()=>Yr(e=>e.selectedTab),_Ze=()=>Yr(e=>e.currentContext),jZe=()=>Yr(e=>e.currentMode),MZe=()=>Yr(e=>e.orgWideRole),RZe=()=>Yr(e=>e.allTenantsRole),PZe=()=>Yr(e=>e.tenantWideRole),DZe=()=>Yr(e=>e.groupWideRole),TZe=()=>Yr(e=>e.selectedGroups),AZe=()=>Yr(e=>e.groupsToRemove),IZe=()=>Yr(e=>e.groupsToUpdate),ZQ=()=>Yr(e=>e.actions),OZe=()=>{const e=YQ(),t=wZe(e,300),n=ZQ();return N.useEffect(()=>{n.setDebouncedSearchQuery(t)},[t,n]),{searchQuery:e,debouncedSearchQuery:t,setSearchQuery:n.setSearchQuery}};function FZe(e,t=[]){let n=[];function r(s,i){const a=E.createContext(i),l=n.length;n=[...n,i];const c=f=>{var y;const{scope:h,children:p,...m}=f,g=((y=h==null?void 0:h[e])==null?void 0:y[l])||a,b=E.useMemo(()=>m,Object.values(m));return d.jsx(g.Provider,{value:b,children:p})};c.displayName=s+"Provider";function u(f,h){var g;const p=((g=h==null?void 0:h[e])==null?void 0:g[l])||a,m=E.useContext(p);if(m)return m;if(i!==void 0)return i;throw new Error(`\`${f}\` must be used within \`${s}\``)}return[c,u]}const o=()=>{const s=n.map(i=>E.createContext(i));return function(a){const l=(a==null?void 0:a[e])||s;return E.useMemo(()=>({[`__scope${e}`]:{...a,[e]:l}}),[a,l])}};return o.scopeName=e,[r,$Ze(o,...t)]}function $Ze(...e){const t=e[0];if(e.length===1)return t;const n=()=>{const r=e.map(o=>({useScope:o(),scopeName:o.scopeName}));return function(s){const i=r.reduce((a,{useScope:l,scopeName:c})=>{const f=l(s)[`__scope${c}`];return{...a,...f}},{});return E.useMemo(()=>({[`__scope${t.scopeName}`]:i}),[i])}};return n.scopeName=t.scopeName,n}function LZe(e){const t=E.useRef(e);return E.useEffect(()=>{t.current=e}),E.useMemo(()=>(...n)=>{var r;return(r=t.current)==null?void 0:r.call(t,...n)},[])}var e_=globalThis!=null&&globalThis.document?E.useLayoutEffect:()=>{},zZe=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"],tD=zZe.reduce((e,t)=>{const n=Js(`Primitive.${t}`),r=E.forwardRef((o,s)=>{const{asChild:i,...a}=o,l=i?n:t;return typeof window<"u"&&(window[Symbol.for("radix-ui")]=!0),d.jsx(l,{...a,ref:s})});return r.displayName=`Primitive.${t}`,{...e,[t]:r}},{});function BZe(){return pYe.useSyncExternalStore(VZe,()=>!0,()=>!1)}function VZe(){return()=>{}}var nD="Avatar",[HZe,tQe]=FZe(nD),[UZe,KQ]=HZe(nD),XQ=E.forwardRef((e,t)=>{const{__scopeAvatar:n,...r}=e,[o,s]=E.useState("idle");return d.jsx(UZe,{scope:n,imageLoadingStatus:o,onImageLoadingStatusChange:s,children:d.jsx(tD.span,{...r,ref:t})})});XQ.displayName=nD;var QQ="AvatarImage",JQ=E.forwardRef((e,t)=>{const{__scopeAvatar:n,src:r,onLoadingStatusChange:o=()=>{},...s}=e,i=KQ(QQ,n),a=WZe(r,s),l=LZe(c=>{o(c),i.onImageLoadingStatusChange(c)});return e_(()=>{a!=="idle"&&l(a)},[a,l]),a==="loaded"?d.jsx(tD.img,{...s,ref:t,src:r}):null});JQ.displayName=QQ;var eJ="AvatarFallback",tJ=E.forwardRef((e,t)=>{const{__scopeAvatar:n,delayMs:r,...o}=e,s=KQ(eJ,n),[i,a]=E.useState(r===void 0);return E.useEffect(()=>{if(r!==void 0){const l=window.setTimeout(()=>a(!0),r);return()=>window.clearTimeout(l)}},[r]),i&&s.imageLoadingStatus!=="loaded"?d.jsx(tD.span,{...o,ref:t}):null});tJ.displayName=eJ;function y$(e,t){return e?t?(e.src!==t&&(e.src=t),e.complete&&e.naturalWidth>0?"loaded":"loading"):"error":"idle"}function WZe(e,{referrerPolicy:t,crossOrigin:n}){const r=BZe(),o=E.useRef(null),s=r?(o.current||(o.current=new window.Image),o.current):null,[i,a]=E.useState(()=>y$(s,e));return e_(()=>{a(y$(s,e))},[s,e]),e_(()=>{const l=f=>()=>{a(f)};if(!s)return;const c=l("loaded"),u=l("error");return s.addEventListener("load",c),s.addEventListener("error",u),t&&(s.referrerPolicy=t),typeof n=="string"&&(s.crossOrigin=n),()=>{s.removeEventListener("load",c),s.removeEventListener("error",u)}},[s,n,t]),i}var nJ=XQ,rJ=JQ,oJ=tJ;const sJ=E.forwardRef(({className:e,...t},n)=>d.jsx(nJ,{ref:n,className:Y("relative flex h-10 w-10 shrink-0 overflow-hidden rounded-full",e),...t}));sJ.displayName=nJ.displayName;const qZe=E.forwardRef(({className:e,...t},n)=>d.jsx(rJ,{ref:n,className:Y("aspect-square h-full w-full",e),...t}));qZe.displayName=rJ.displayName;const iJ=E.forwardRef(({className:e,...t},n)=>d.jsx(oJ,{ref:n,className:Y("flex h-full w-full items-center justify-center rounded-full bg-muted",e),...t}));iJ.displayName=oJ.displayName;function aJ(e,t){var ze,ot,Rt,Vt,Zt;const{tokenProps:n}=qe(),r=es(),o=qe().authToken||e,s=Ae(xe=>xe.selectedConnectionId),i=Ae(xe=>xe.card),{queryKey:a}=Ice(i),l=Ae(xe=>xe.selectedDatamodelId),c=Ae(xe=>xe.isDevMode),u=Ae(xe=>xe.selectedDatabaseName),f=Ae(xe=>xe.selectedSchemaName),h=Ae(xe=>xe.selectedTableName),p=Ae(xe=>xe.actions.setSelectedConnectionId),m=Ae(xe=>xe.actions.setSelectedDatamodelId),g=Ae(xe=>xe.actions.setSelectedDatabaseName),b=Ae(xe=>xe.actions.setSelectedSchemaName),y=Ae(xe=>xe.actions.setSelectedTableName);Ae(xe=>xe.actions.setCardSql);const{setQueryConfig:x}=jo();function v(xe){return s&&u&&f&&u!=="NA"?!0:s&&xe==="API"?!1:!!(s&&xe==="S3")}function w(xe){return s&&xe?!(xe==="API"||xe==="S3"):!1}const{refetchConnections:S,connectionsData:C,isConnectionsLoading:k,isConnectionsError:_,selectedConnection:M}=Ji(e),{refetch:j,data:A,isLoading:R,isError:F}=bn({queryKey:["models",s],queryFn:()=>qn(`${n.apiServiceUrl}/v1/datamodels`,(o==null?void 0:o.accessToken)||"",{connection_id:s}),enabled:!!(o!=null&&o.accessToken)&&!!s}),T=M==null?void 0:M.type,D=(M==null?void 0:M.type)==="API"||(M==null?void 0:M.type)==="S3",{data:O,isLoading:z,isFetching:V,isError:$,refetch:I}=bn({queryKey:["databases",s],queryFn:()=>qn(`${n.apiServiceUrl}/v1/databases`,(o==null?void 0:o.accessToken)||"",{connection_id:s}),enabled:w(T)}),{data:B,isLoading:L,isFetching:P,isError:H,refetch:q}=bn({queryKey:["schemas",s,u],queryFn:()=>qn(`${n.apiServiceUrl}/v1/schemas`,(o==null?void 0:o.accessToken)||"",{connection_id:s,database_name:u}),enabled:!!s&&!!u&&!D&&u!=="NA"}),{data:K,isLoading:W,isFetching:U,isError:G,refetch:Q}=bn({queryKey:["tables",s,u,f],queryFn:()=>qn(`${n.apiServiceUrl}/v1/tables`,(o==null?void 0:o.accessToken)||"",{connection_id:s,database_name:u,schema_name:f}),enabled:v(T)}),{columns:re,isColumnsLoading:J,isColumnsFetching:ne,isColumnsError:ae,refetchColumns:se}=GQ(e);N.useEffect(()=>{(T==="S3"||T==="API")&&(g(""),b(""),m(""),T==="API"&&y("api"))},[T,y,g,b,m]);const oe=(M==null?void 0:M.type)==="API"?(ze=M==null?void 0:M.type)==null?void 0:ze.toLowerCase():h||"",Ne=D?"":f||"";function ue(xe){y(xe),x(void 0),c||(r.setQueryData(a,null),r.removeQueries({queryKey:a,exact:!0}))}function ge(xe){b(xe),y("")}function Pe(xe){g(xe==="none"?"":xe),b(""),y(""),xe!=="none"&&xe!==""&&m("")}function at(xe){p(xe)}function Ve(xe){m(xe==="none"?"":xe),xe!=="none"&&xe!==""&&g("")}O&&((ot=O==null?void 0:O.databases)==null?void 0:ot.length)>0,B&&((Rt=B==null?void 0:B.schemas)==null?void 0:Rt.length)>0;const We=C==null?void 0:C.connections.map(xe=>({id:xe.id,name:xe.name,type:xe.type})),xn=(Vt=A==null?void 0:A.datamodels)==null?void 0:Vt.map(xe=>({id:xe.id,name:xe.name})),jn=O==null?void 0:O.databases.map(xe=>({id:xe.database_name,name:xe.database_name})),ie=B==null?void 0:B.schemas.map(xe=>({id:xe.schema_name,name:xe.schema_name})),me=K==null?void 0:K.tables.map(xe=>({id:xe.table_name,name:xe.table_name})),Re=(Zt=A==null?void 0:A.datamodels.find(xe=>xe.id===l))==null?void 0:Zt.name,be=e3({schemaName:Ne,tableName:oe,modelName:Re,connectionType:T,databaseName:u||""});return{connectionItems:We,selectedConnectionId:s,selectedConnection:M,isConnectionsLoading:k,isConnectionsError:_,modelItems:xn,selectedDatamodelId:l,selectedDatamodelName:Re,isModelsLoading:R,isModelsError:F,selectedDatabaseName:u,databaseItems:jn,isDatabasesLoadingOrFetching:z||V,isDatabaseError:$,schemaItems:ie,selectedSchemaName:f,isSchemaLoadingOrFetching:L||P,isSchemaError:H,tableItems:me,selectedTableName:h,isTableLoadingOrFetching:W||U,isTableError:G,columns:re,isColumnsLoadingOrFetching:J||ne,isColumnsError:ae,isNonDbConnection:D,connectionType:T,tableName:oe,formattedTableName:be,schemaName:Ne,refetchConnections:S,refetchModels:j,refetchDatabases:I,refetchSchemas:q,refetchTables:Q,refetchColumns:se,handleConnectionChange:at,handleDatamodelChange:Ve,handleDatabaseChange:Pe,handleSchemaChange:ge,handleTableChange:ue}}function GZe(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function x$(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),n.push.apply(n,r)}return n}function v$(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?x$(Object(n),!0).forEach(function(r){GZe(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):x$(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function YZe(e,t){if(e==null)return{};var n={},r=Object.keys(e),o,s;for(s=0;s<r.length;s++)o=r[s],!(t.indexOf(o)>=0)&&(n[o]=e[o]);return n}function ZZe(e,t){if(e==null)return{};var n=YZe(e,t),r,o;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(o=0;o<s.length;o++)r=s[o],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}function KZe(e,t){return XZe(e)||QZe(e,t)||JZe(e,t)||eKe()}function XZe(e){if(Array.isArray(e))return e}function QZe(e,t){if(!(typeof Symbol>"u"||!(Symbol.iterator in Object(e)))){var n=[],r=!0,o=!1,s=void 0;try{for(var i=e[Symbol.iterator](),a;!(r=(a=i.next()).done)&&(n.push(a.value),!(t&&n.length===t));r=!0);}catch(l){o=!0,s=l}finally{try{!r&&i.return!=null&&i.return()}finally{if(o)throw s}}return n}}function JZe(e,t){if(e){if(typeof e=="string")return w$(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return w$(e,t)}}function w$(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function eKe(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
977
|
+
`)}})}});var $Ge=vr([wn({type:Qe("text-start"),id:Me(),providerMetadata:Hn.optional()}),wn({type:Qe("text-delta"),id:Me(),delta:Me(),providerMetadata:Hn.optional()}),wn({type:Qe("text-end"),id:Me(),providerMetadata:Hn.optional()}),wn({type:Qe("error"),errorText:Me()}),wn({type:Qe("tool-input-start"),toolCallId:Me(),toolName:Me(),providerExecuted:mr().optional(),dynamic:mr().optional()}),wn({type:Qe("tool-input-delta"),toolCallId:Me(),inputTextDelta:Me()}),wn({type:Qe("tool-input-available"),toolCallId:Me(),toolName:Me(),input:Bo(),providerExecuted:mr().optional(),providerMetadata:Hn.optional(),dynamic:mr().optional()}),wn({type:Qe("tool-input-error"),toolCallId:Me(),toolName:Me(),input:Bo(),providerExecuted:mr().optional(),providerMetadata:Hn.optional(),dynamic:mr().optional(),errorText:Me()}),wn({type:Qe("tool-output-available"),toolCallId:Me(),output:Bo(),providerExecuted:mr().optional(),dynamic:mr().optional()}),wn({type:Qe("tool-output-error"),toolCallId:Me(),errorText:Me(),providerExecuted:mr().optional(),dynamic:mr().optional()}),wn({type:Qe("reasoning"),text:Me(),providerMetadata:Hn.optional()}),wn({type:Qe("reasoning-start"),id:Me(),providerMetadata:Hn.optional()}),wn({type:Qe("reasoning-delta"),id:Me(),delta:Me(),providerMetadata:Hn.optional()}),wn({type:Qe("reasoning-end"),id:Me(),providerMetadata:Hn.optional()}),wn({type:Qe("reasoning-part-finish")}),wn({type:Qe("source-url"),sourceId:Me(),url:Me(),title:Me().optional(),providerMetadata:Hn.optional()}),wn({type:Qe("source-document"),sourceId:Me(),mediaType:Me(),title:Me(),filename:Me().optional(),providerMetadata:Hn.optional()}),wn({type:Qe("file"),url:Me(),mediaType:Me(),providerMetadata:Hn.optional()}),wn({type:Me().startsWith("data-"),id:Me().optional(),data:Bo(),transient:mr().optional()}),wn({type:Qe("start-step")}),wn({type:Qe("finish-step")}),wn({type:Qe("start"),messageId:Me().optional(),messageMetadata:Bo().optional()}),wn({type:Qe("finish"),messageMetadata:Bo().optional()}),wn({type:Qe("abort")}),wn({type:Qe("message-metadata"),messageMetadata:Bo()})]);function LGe(e){return e.type.startsWith("data-")}function sQ(e,t){if(e===void 0&&t===void 0)return;if(e===void 0)return t;if(t===void 0)return e;const n={...e};for(const r in t)if(Object.prototype.hasOwnProperty.call(t,r)){const o=t[r];if(o===void 0)continue;const s=r in e?e[r]:void 0,i=o!==null&&typeof o=="object"&&!Array.isArray(o)&&!(o instanceof Date)&&!(o instanceof RegExp),a=s!=null&&typeof s=="object"&&!Array.isArray(s)&&!(s instanceof Date)&&!(s instanceof RegExp);i&&a?n[r]=sQ(s,o):n[r]=o}return n}function zGe(e){const t=["ROOT"];let n=-1,r=null;function o(l,c,u){switch(l){case'"':{n=c,t.pop(),t.push(u),t.push("INSIDE_STRING");break}case"f":case"t":case"n":{n=c,r=c,t.pop(),t.push(u),t.push("INSIDE_LITERAL");break}case"-":{t.pop(),t.push(u),t.push("INSIDE_NUMBER");break}case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":{n=c,t.pop(),t.push(u),t.push("INSIDE_NUMBER");break}case"{":{n=c,t.pop(),t.push(u),t.push("INSIDE_OBJECT_START");break}case"[":{n=c,t.pop(),t.push(u),t.push("INSIDE_ARRAY_START");break}}}function s(l,c){switch(l){case",":{t.pop(),t.push("INSIDE_OBJECT_AFTER_COMMA");break}case"}":{n=c,t.pop();break}}}function i(l,c){switch(l){case",":{t.pop(),t.push("INSIDE_ARRAY_AFTER_COMMA");break}case"]":{n=c,t.pop();break}}}for(let l=0;l<e.length;l++){const c=e[l];switch(t[t.length-1]){case"ROOT":o(c,l,"FINISH");break;case"INSIDE_OBJECT_START":{switch(c){case'"':{t.pop(),t.push("INSIDE_OBJECT_KEY");break}case"}":{n=l,t.pop();break}}break}case"INSIDE_OBJECT_AFTER_COMMA":{switch(c){case'"':{t.pop(),t.push("INSIDE_OBJECT_KEY");break}}break}case"INSIDE_OBJECT_KEY":{switch(c){case'"':{t.pop(),t.push("INSIDE_OBJECT_AFTER_KEY");break}}break}case"INSIDE_OBJECT_AFTER_KEY":{switch(c){case":":{t.pop(),t.push("INSIDE_OBJECT_BEFORE_VALUE");break}}break}case"INSIDE_OBJECT_BEFORE_VALUE":{o(c,l,"INSIDE_OBJECT_AFTER_VALUE");break}case"INSIDE_OBJECT_AFTER_VALUE":{s(c,l);break}case"INSIDE_STRING":{switch(c){case'"':{t.pop(),n=l;break}case"\\":{t.push("INSIDE_STRING_ESCAPE");break}default:n=l}break}case"INSIDE_ARRAY_START":{switch(c){case"]":{n=l,t.pop();break}default:{n=l,o(c,l,"INSIDE_ARRAY_AFTER_VALUE");break}}break}case"INSIDE_ARRAY_AFTER_VALUE":{switch(c){case",":{t.pop(),t.push("INSIDE_ARRAY_AFTER_COMMA");break}case"]":{n=l,t.pop();break}default:{n=l;break}}break}case"INSIDE_ARRAY_AFTER_COMMA":{o(c,l,"INSIDE_ARRAY_AFTER_VALUE");break}case"INSIDE_STRING_ESCAPE":{t.pop(),n=l;break}case"INSIDE_NUMBER":{switch(c){case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":{n=l;break}case"e":case"E":case"-":case".":break;case",":{t.pop(),t[t.length-1]==="INSIDE_ARRAY_AFTER_VALUE"&&i(c,l),t[t.length-1]==="INSIDE_OBJECT_AFTER_VALUE"&&s(c,l);break}case"}":{t.pop(),t[t.length-1]==="INSIDE_OBJECT_AFTER_VALUE"&&s(c,l);break}case"]":{t.pop(),t[t.length-1]==="INSIDE_ARRAY_AFTER_VALUE"&&i(c,l);break}default:{t.pop();break}}break}case"INSIDE_LITERAL":{const f=e.substring(r,l+1);!"false".startsWith(f)&&!"true".startsWith(f)&&!"null".startsWith(f)?(t.pop(),t[t.length-1]==="INSIDE_OBJECT_AFTER_VALUE"?s(c,l):t[t.length-1]==="INSIDE_ARRAY_AFTER_VALUE"&&i(c,l)):n=l;break}}}let a=e.slice(0,n+1);for(let l=t.length-1;l>=0;l--)switch(t[l]){case"INSIDE_STRING":{a+='"';break}case"INSIDE_OBJECT_KEY":case"INSIDE_OBJECT_AFTER_KEY":case"INSIDE_OBJECT_AFTER_COMMA":case"INSIDE_OBJECT_START":case"INSIDE_OBJECT_BEFORE_VALUE":case"INSIDE_OBJECT_AFTER_VALUE":{a+="}";break}case"INSIDE_ARRAY_START":case"INSIDE_ARRAY_AFTER_COMMA":case"INSIDE_ARRAY_AFTER_VALUE":{a+="]";break}case"INSIDE_LITERAL":{const u=e.substring(r,e.length);"true".startsWith(u)?a+="true".slice(u.length):"false".startsWith(u)?a+="false".slice(u.length):"null".startsWith(u)&&(a+="null".slice(u.length))}}return a}async function iQ(e){if(e===void 0)return{value:void 0,state:"undefined-input"};let t=await Pv({text:e});return t.success?{value:t.value,state:"successful-parse"}:(t=await Pv({text:zGe(e)}),t.success?{value:t.value,state:"repaired-parse"}:{value:void 0,state:"failed-parse"})}function bm(e){return e.type.startsWith("tool-")}function d$(e){return e.type.split("-").slice(1).join("-")}function BGe({lastMessage:e,messageId:t}){return{message:(e==null?void 0:e.role)==="assistant"?e:{id:t,metadata:void 0,role:"assistant",parts:[]},activeTextParts:{},activeReasoningParts:{},partialToolCalls:{}}}function VGe({stream:e,messageMetadataSchema:t,dataPartSchemas:n,runUpdateMessageJob:r,onError:o,onToolCall:s,onData:i}){return e.pipeThrough(new TransformStream({async transform(a,l){await r(async({state:c,write:u})=>{var f,h,p,m;function g(w){const C=c.message.parts.filter(bm).find(k=>k.toolCallId===w);if(C==null)throw new Error("tool-output-error must be preceded by a tool-input-available");return C}function b(w){const C=c.message.parts.filter(k=>k.type==="dynamic-tool").find(k=>k.toolCallId===w);if(C==null)throw new Error("tool-output-error must be preceded by a tool-input-available");return C}function y(w){var S;const C=c.message.parts.find(M=>bm(M)&&M.toolCallId===w.toolCallId),k=w,_=C;C!=null?(C.state=w.state,_.input=k.input,_.output=k.output,_.errorText=k.errorText,_.rawInput=k.rawInput,_.providerExecuted=(S=k.providerExecuted)!=null?S:C.providerExecuted,k.providerMetadata!=null&&C.state==="input-available"&&(C.callProviderMetadata=k.providerMetadata)):c.message.parts.push({type:`tool-${w.toolName}`,toolCallId:w.toolCallId,state:w.state,input:k.input,output:k.output,rawInput:k.rawInput,errorText:k.errorText,providerExecuted:k.providerExecuted,...k.providerMetadata!=null?{callProviderMetadata:k.providerMetadata}:{}})}function x(w){var S;const C=c.message.parts.find(M=>M.type==="dynamic-tool"&&M.toolCallId===w.toolCallId),k=w,_=C;C!=null?(C.state=w.state,_.toolName=w.toolName,_.input=k.input,_.output=k.output,_.errorText=k.errorText,_.rawInput=(S=k.rawInput)!=null?S:_.rawInput,k.providerMetadata!=null&&C.state==="input-available"&&(C.callProviderMetadata=k.providerMetadata)):c.message.parts.push({type:"dynamic-tool",toolName:w.toolName,toolCallId:w.toolCallId,state:w.state,input:k.input,output:k.output,errorText:k.errorText,...k.providerMetadata!=null?{callProviderMetadata:k.providerMetadata}:{}})}async function v(w){if(w!=null){const S=c.message.metadata!=null?sQ(c.message.metadata,w):w;t!=null&&await c$({value:S,schema:t}),c.message.metadata=S}}switch(a.type){case"text-start":{const w={type:"text",text:"",providerMetadata:a.providerMetadata,state:"streaming"};c.activeTextParts[a.id]=w,c.message.parts.push(w),u();break}case"text-delta":{const w=c.activeTextParts[a.id];w.text+=a.delta,w.providerMetadata=(f=a.providerMetadata)!=null?f:w.providerMetadata,u();break}case"text-end":{const w=c.activeTextParts[a.id];w.state="done",w.providerMetadata=(h=a.providerMetadata)!=null?h:w.providerMetadata,delete c.activeTextParts[a.id],u();break}case"reasoning-start":{const w={type:"reasoning",text:"",providerMetadata:a.providerMetadata,state:"streaming"};c.activeReasoningParts[a.id]=w,c.message.parts.push(w),u();break}case"reasoning-delta":{const w=c.activeReasoningParts[a.id];w.text+=a.delta,w.providerMetadata=(p=a.providerMetadata)!=null?p:w.providerMetadata,u();break}case"reasoning-end":{const w=c.activeReasoningParts[a.id];w.providerMetadata=(m=a.providerMetadata)!=null?m:w.providerMetadata,w.state="done",delete c.activeReasoningParts[a.id],u();break}case"file":{c.message.parts.push({type:"file",mediaType:a.mediaType,url:a.url}),u();break}case"source-url":{c.message.parts.push({type:"source-url",sourceId:a.sourceId,url:a.url,title:a.title,providerMetadata:a.providerMetadata}),u();break}case"source-document":{c.message.parts.push({type:"source-document",sourceId:a.sourceId,mediaType:a.mediaType,title:a.title,filename:a.filename,providerMetadata:a.providerMetadata}),u();break}case"tool-input-start":{const w=c.message.parts.filter(bm);c.partialToolCalls[a.toolCallId]={text:"",toolName:a.toolName,index:w.length,dynamic:a.dynamic},a.dynamic?x({toolCallId:a.toolCallId,toolName:a.toolName,state:"input-streaming",input:void 0}):y({toolCallId:a.toolCallId,toolName:a.toolName,state:"input-streaming",input:void 0,providerExecuted:a.providerExecuted}),u();break}case"tool-input-delta":{const w=c.partialToolCalls[a.toolCallId];w.text+=a.inputTextDelta;const{value:S}=await iQ(w.text);w.dynamic?x({toolCallId:a.toolCallId,toolName:w.toolName,state:"input-streaming",input:S}):y({toolCallId:a.toolCallId,toolName:w.toolName,state:"input-streaming",input:S}),u();break}case"tool-input-available":{a.dynamic?x({toolCallId:a.toolCallId,toolName:a.toolName,state:"input-available",input:a.input,providerMetadata:a.providerMetadata}):y({toolCallId:a.toolCallId,toolName:a.toolName,state:"input-available",input:a.input,providerExecuted:a.providerExecuted,providerMetadata:a.providerMetadata}),u(),s&&!a.providerExecuted&&await s({toolCall:a});break}case"tool-input-error":{a.dynamic?x({toolCallId:a.toolCallId,toolName:a.toolName,state:"output-error",input:a.input,errorText:a.errorText,providerMetadata:a.providerMetadata}):y({toolCallId:a.toolCallId,toolName:a.toolName,state:"output-error",input:void 0,rawInput:a.input,errorText:a.errorText,providerExecuted:a.providerExecuted,providerMetadata:a.providerMetadata}),u();break}case"tool-output-available":{if(a.dynamic){const w=b(a.toolCallId);x({toolCallId:a.toolCallId,toolName:w.toolName,state:"output-available",input:w.input,output:a.output})}else{const w=g(a.toolCallId);y({toolCallId:a.toolCallId,toolName:d$(w),state:"output-available",input:w.input,output:a.output,providerExecuted:a.providerExecuted})}u();break}case"tool-output-error":{if(a.dynamic){const w=b(a.toolCallId);x({toolCallId:a.toolCallId,toolName:w.toolName,state:"output-error",input:w.input,errorText:a.errorText})}else{const w=g(a.toolCallId);y({toolCallId:a.toolCallId,toolName:d$(w),state:"output-error",input:w.input,rawInput:w.rawInput,errorText:a.errorText})}u();break}case"start-step":{c.message.parts.push({type:"step-start"});break}case"finish-step":{c.activeTextParts={},c.activeReasoningParts={};break}case"start":{a.messageId!=null&&(c.message.id=a.messageId),await v(a.messageMetadata),(a.messageId!=null||a.messageMetadata!=null)&&u();break}case"finish":{await v(a.messageMetadata),a.messageMetadata!=null&&u();break}case"message-metadata":{await v(a.messageMetadata),a.messageMetadata!=null&&u();break}case"error":{o==null||o(new Error(a.errorText));break}default:if(LGe(a)){(n==null?void 0:n[a.type])!=null&&await c$({value:a.data,schema:n[a.type]});const w=a;if(w.transient){i==null||i(w);break}const S=w.id!=null?c.message.parts.find(C=>w.type===C.type&&w.id===C.id):void 0;S!=null?S.data=w.data:c.message.parts.push(w),i==null||i(w),u()}}l.enqueue(a)})}}))}async function HGe({stream:e,onError:t}){const n=e.getReader();try{for(;;){const{done:r}=await n.read();if(r)break}}catch(r){t==null||t(r)}finally{n.releaseLock()}}$b({prefix:"aitxt",size:24});$b({prefix:"aiobj",size:24});var UGe=class{constructor(){this.queue=[],this.isProcessing=!1}async processQueue(){if(!this.isProcessing){for(this.isProcessing=!0;this.queue.length>0;)await this.queue[0](),this.queue.shift();this.isProcessing=!1}}async run(e){return new Promise((t,n)=>{this.queue.push(async()=>{try{await e(),t()}catch(r){n(r)}}),this.processQueue()})}};$b({prefix:"aiobj",size:24});var WGe={};jGe(WGe,{object:()=>GGe,text:()=>qGe});var qGe=()=>({type:"text",responseFormat:{type:"text"},async parsePartial({text:e}){return{partial:e}},async parseOutput({text:e}){return e}}),GGe=({schema:e})=>{const t=kGe(e);return{type:"object",responseFormat:{type:"json",schema:t.jsonSchema},async parsePartial({text:n}){const r=await iQ(n);switch(r.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":return{partial:r.value};default:{const o=r.state;throw new Error(`Unsupported parse state: ${o}`)}}},async parseOutput({text:n},r){const o=await Pv({text:n});if(!o.success)throw new u$({message:"No object generated: could not parse the response.",cause:o.error,text:n,response:r.response,usage:r.usage,finishReason:r.finishReason});const s=await GP({value:o.value,schema:t});if(!s.success)throw new u$({message:"No object generated: response did not match schema.",cause:s.error,text:n,response:r.response,usage:r.usage,finishReason:r.finishReason});return s.value}}},YGe=qd({name:Me(),version:Me()}),ZP=qd({_meta:or(Lt({}).loose())}),Sg=ZP,ZGe=Lt({method:Me(),params:or(ZP)}),KGe=qd({experimental:or(Lt({}).loose()),logging:or(Lt({}).loose()),prompts:or(qd({listChanged:or(mr())})),resources:or(qd({subscribe:or(mr()),listChanged:or(mr())})),tools:or(qd({listChanged:or(mr())}))});Sg.extend({protocolVersion:Me(),capabilities:KGe,serverInfo:YGe,instructions:or(Me())});var XGe=Sg.extend({nextCursor:or(Me())}),QGe=Lt({name:Me(),description:or(Me()),inputSchema:Lt({type:Qe("object"),properties:or(Lt({}).loose())}).loose()}).loose();XGe.extend({tools:pc(QGe)});var JGe=Lt({type:Qe("text"),text:Me()}).loose(),eYe=Lt({type:Qe("image"),data:zX(),mimeType:Me()}).loose(),aQ=Lt({uri:Me(),mimeType:or(Me())}).loose(),tYe=aQ.extend({text:Me()}),nYe=aQ.extend({blob:zX()}),rYe=Lt({type:Qe("resource"),resource:vr([tYe,nYe])}).loose();Sg.extend({content:pc(vr([JGe,eYe,rYe])),isError:mr().default(!1).optional()}).or(Sg.extend({toolResult:Bo()}));var X1="2.0",oYe=Lt({jsonrpc:Qe(X1),id:vr([Me(),vg().int()])}).merge(ZGe).strict(),sYe=Lt({jsonrpc:Qe(X1),id:vr([Me(),vg().int()]),result:Sg}).strict(),iYe=Lt({jsonrpc:Qe(X1),id:vr([Me(),vg().int()]),error:Lt({code:vg().int(),message:Me(),data:or(Bo())})}).strict(),aYe=Lt({jsonrpc:Qe(X1)}).merge(Lt({method:Me(),params:or(ZP)})).strict();vr([oYe,aYe,sYe,iYe]);async function lYe(e){if(e==null)return[];if(!globalThis.FileList||!(e instanceof globalThis.FileList))throw new Error("FileList is not supported in the current environment");return Promise.all(Array.from(e).map(async t=>{const{name:n,type:r}=t,o=await new Promise((s,i)=>{const a=new FileReader;a.onload=l=>{var c;s((c=l.target)==null?void 0:c.result)},a.onerror=l=>i(l),a.readAsDataURL(t)});return{type:"file",mediaType:r,filename:n,url:o}}))}var cYe=class{constructor({api:e="/api/chat",credentials:t,headers:n,body:r,fetch:o,prepareSendMessagesRequest:s,prepareReconnectToStreamRequest:i}){this.api=e,this.credentials=t,this.headers=n,this.body=r,this.fetch=o,this.prepareSendMessagesRequest=s,this.prepareReconnectToStreamRequest=i}async sendMessages({abortSignal:e,...t}){var n,r,o,s,i;const a=await jd(this.body),l=await jd(this.headers),c=await jd(this.credentials),u=await((n=this.prepareSendMessagesRequest)==null?void 0:n.call(this,{api:this.api,id:t.chatId,messages:t.messages,body:{...a,...t.body},headers:{...l,...t.headers},credentials:c,requestMetadata:t.metadata,trigger:t.trigger,messageId:t.messageId})),f=(r=u==null?void 0:u.api)!=null?r:this.api,h=(u==null?void 0:u.headers)!==void 0?u.headers:{...l,...t.headers},p=(u==null?void 0:u.body)!==void 0?u.body:{...a,...t.body,id:t.chatId,messages:t.messages,trigger:t.trigger,messageId:t.messageId},m=(o=u==null?void 0:u.credentials)!=null?o:c,b=await((s=this.fetch)!=null?s:globalThis.fetch)(f,{method:"POST",headers:{"Content-Type":"application/json",...h},body:JSON.stringify(p),credentials:m,signal:e});if(!b.ok)throw new Error((i=await b.text())!=null?i:"Failed to fetch the chat response.");if(!b.body)throw new Error("The response body is empty.");return this.processResponseStream(b.body)}async reconnectToStream(e){var t,n,r,o,s;const i=await jd(this.body),a=await jd(this.headers),l=await jd(this.credentials),c=await((t=this.prepareReconnectToStreamRequest)==null?void 0:t.call(this,{api:this.api,id:e.chatId,body:{...i,...e.body},headers:{...a,...e.headers},credentials:l,requestMetadata:e.metadata})),u=(n=c==null?void 0:c.api)!=null?n:`${this.api}/${e.chatId}/stream`,f=(c==null?void 0:c.headers)!==void 0?c.headers:{...a,...e.headers},h=(r=c==null?void 0:c.credentials)!=null?r:l,m=await((o=this.fetch)!=null?o:globalThis.fetch)(u,{method:"GET",headers:f,credentials:h});if(m.status===204)return null;if(!m.ok)throw new Error((s=await m.text())!=null?s:"Failed to fetch the chat response.");if(!m.body)throw new Error("The response body is empty.");return this.processResponseStream(m.body)}},KP=class extends cYe{constructor(e={}){super(e)}processResponseStream(e){return vGe({stream:e,schema:$Ge}).pipeThrough(new TransformStream({async transform(t,n){if(!t.success)throw t.error;n.enqueue(t.value)}}))}},uYe=class{constructor({generateId:e=uGe,id:t=e(),transport:n=new KP,messageMetadataSchema:r,dataPartSchemas:o,state:s,onError:i,onToolCall:a,onFinish:l,onData:c,sendAutomaticallyWhen:u}){this.activeResponse=void 0,this.jobExecutor=new UGe,this.sendMessage=async(f,h)=>{var p,m,g,b;if(f==null){await this.makeRequest({trigger:"submit-message",messageId:(p=this.lastMessage)==null?void 0:p.id,...h});return}let y;if("text"in f||"files"in f?y={parts:[...Array.isArray(f.files)?f.files:await lYe(f.files),..."text"in f&&f.text!=null?[{type:"text",text:f.text}]:[]]}:y=f,f.messageId!=null){const x=this.state.messages.findIndex(v=>v.id===f.messageId);if(x===-1)throw new Error(`message with id ${f.messageId} not found`);if(this.state.messages[x].role!=="user")throw new Error(`message with id ${f.messageId} is not a user message`);this.state.messages=this.state.messages.slice(0,x+1),this.state.replaceMessage(x,{...y,id:f.messageId,role:(m=y.role)!=null?m:"user",metadata:f.metadata})}else this.state.pushMessage({...y,id:(g=y.id)!=null?g:this.generateId(),role:(b=y.role)!=null?b:"user",metadata:f.metadata});await this.makeRequest({trigger:"submit-message",messageId:f.messageId,...h})},this.regenerate=async({messageId:f,...h}={})=>{const p=f==null?this.state.messages.length-1:this.state.messages.findIndex(m=>m.id===f);if(p===-1)throw new Error(`message ${f} not found`);this.state.messages=this.state.messages.slice(0,this.messages[p].role==="assistant"?p:p+1),await this.makeRequest({trigger:"regenerate-message",messageId:f,...h})},this.resumeStream=async(f={})=>{await this.makeRequest({trigger:"resume-stream",...f})},this.clearError=()=>{this.status==="error"&&(this.state.error=void 0,this.setStatus({status:"ready"}))},this.addToolResult=async({tool:f,toolCallId:h,output:p})=>this.jobExecutor.run(async()=>{var m,g;const b=this.state.messages,y=b[b.length-1];this.state.replaceMessage(b.length-1,{...y,parts:y.parts.map(x=>bm(x)&&x.toolCallId===h?{...x,state:"output-available",output:p}:x)}),this.activeResponse&&(this.activeResponse.state.message.parts=this.activeResponse.state.message.parts.map(x=>bm(x)&&x.toolCallId===h?{...x,state:"output-available",output:p,errorText:void 0}:x)),this.status!=="streaming"&&this.status!=="submitted"&&((m=this.sendAutomaticallyWhen)!=null&&m.call(this,{messages:this.state.messages}))&&this.makeRequest({trigger:"submit-message",messageId:(g=this.lastMessage)==null?void 0:g.id})}),this.stop=async()=>{var f;this.status!=="streaming"&&this.status!=="submitted"||(f=this.activeResponse)!=null&&f.abortController&&this.activeResponse.abortController.abort()},this.id=t,this.transport=n,this.generateId=e,this.messageMetadataSchema=r,this.dataPartSchemas=o,this.state=s,this.onError=i,this.onToolCall=a,this.onFinish=l,this.onData=c,this.sendAutomaticallyWhen=u}get status(){return this.state.status}setStatus({status:e,error:t}){this.status!==e&&(this.state.status=e,this.state.error=t)}get error(){return this.state.error}get messages(){return this.state.messages}get lastMessage(){return this.state.messages[this.state.messages.length-1]}set messages(e){this.state.messages=e}async makeRequest({trigger:e,metadata:t,headers:n,body:r,messageId:o}){var s,i,a;this.setStatus({status:"submitted",error:void 0});const l=this.lastMessage;try{const c={state:BGe({lastMessage:this.state.snapshot(l),messageId:this.generateId()}),abortController:new AbortController};this.activeResponse=c;let u;if(e==="resume-stream"){const h=await this.transport.reconnectToStream({chatId:this.id,metadata:t,headers:n,body:r});if(h==null){this.setStatus({status:"ready"});return}u=h}else u=await this.transport.sendMessages({chatId:this.id,messages:this.state.messages,abortSignal:c.abortController.signal,metadata:t,headers:n,body:r,trigger:e,messageId:o});const f=h=>this.jobExecutor.run(()=>h({state:c.state,write:()=>{var p;this.setStatus({status:"streaming"}),c.state.message.id===((p=this.lastMessage)==null?void 0:p.id)?this.state.replaceMessage(this.state.messages.length-1,c.state.message):this.state.pushMessage(c.state.message)}}));await HGe({stream:VGe({stream:u,onToolCall:this.onToolCall,onData:this.onData,messageMetadataSchema:this.messageMetadataSchema,dataPartSchemas:this.dataPartSchemas,runUpdateMessageJob:f,onError:h=>{throw h}}),onError:h=>{throw h}}),(s=this.onFinish)==null||s.call(this,{message:c.state.message}),this.setStatus({status:"ready"})}catch(c){if(c.name==="AbortError")return this.setStatus({status:"ready"}),null;this.onError&&c instanceof Error&&this.onError(c),this.setStatus({status:"error",error:c})}finally{this.activeResponse=void 0}(i=this.sendAutomaticallyWhen)!=null&&i.call(this,{messages:this.state.messages})&&await this.makeRequest({trigger:"submit-message",messageId:(a=this.lastMessage)==null?void 0:a.id,metadata:t,headers:n,body:r})}};function dYe(e,t){if(typeof e!="function")throw new TypeError(`Expected the first argument to be a \`function\`, got \`${typeof e}\`.`);let n,r=0;return function(...s){clearTimeout(n);const i=Date.now(),a=i-r,l=t-a;l<=0?(r=i,e.apply(this,s)):n=setTimeout(()=>{r=Date.now(),e.apply(this,s)},l)}}var fYe=dYe;const hYe=Bu(fYe);var pYe=s_(),lQ=(e,t,n)=>{if(!t.has(e))throw TypeError("Cannot "+n)},Sn=(e,t,n)=>(lQ(e,t,"read from private field"),n?n.call(e):t.get(e)),gi=(e,t,n)=>{if(t.has(e))throw TypeError("Cannot add the same private member more than once");t instanceof WeakSet?t.add(e):t.set(e,n)},yl=(e,t,n,r)=>(lQ(e,t,"write to private field"),t.set(e,n),n);function mYe(e,t){return t!=null?hYe(e,t):e}var ss,z0,B0,Tp,Ap,Ip,Id,Yk,Zk,gYe=class{constructor(e=[]){gi(this,ss,void 0),gi(this,z0,"ready"),gi(this,B0,void 0),gi(this,Tp,new Set),gi(this,Ap,new Set),gi(this,Ip,new Set),this.pushMessage=t=>{yl(this,ss,Sn(this,ss).concat(t)),Sn(this,Id).call(this)},this.popMessage=()=>{yl(this,ss,Sn(this,ss).slice(0,-1)),Sn(this,Id).call(this)},this.replaceMessage=(t,n)=>{yl(this,ss,[...Sn(this,ss).slice(0,t),this.snapshot(n),...Sn(this,ss).slice(t+1)]),Sn(this,Id).call(this)},this.snapshot=t=>structuredClone(t),this["~registerMessagesCallback"]=(t,n)=>{const r=n?mYe(t,n):t;return Sn(this,Tp).add(r),()=>{Sn(this,Tp).delete(r)}},this["~registerStatusCallback"]=t=>(Sn(this,Ap).add(t),()=>{Sn(this,Ap).delete(t)}),this["~registerErrorCallback"]=t=>(Sn(this,Ip).add(t),()=>{Sn(this,Ip).delete(t)}),gi(this,Id,()=>{Sn(this,Tp).forEach(t=>t())}),gi(this,Yk,()=>{Sn(this,Ap).forEach(t=>t())}),gi(this,Zk,()=>{Sn(this,Ip).forEach(t=>t())}),yl(this,ss,e)}get status(){return Sn(this,z0)}set status(e){yl(this,z0,e),Sn(this,Yk).call(this)}get error(){return Sn(this,B0)}set error(e){yl(this,B0,e),Sn(this,Zk).call(this)}get messages(){return Sn(this,ss)}set messages(e){yl(this,ss,[...e]),Sn(this,Id).call(this)}};ss=new WeakMap;z0=new WeakMap;B0=new WeakMap;Tp=new WeakMap;Ap=new WeakMap;Ip=new WeakMap;Id=new WeakMap;Yk=new WeakMap;Zk=new WeakMap;var Od,f$=class extends uYe{constructor({messages:e,...t}){const n=new gYe(e);super({...t,state:n}),gi(this,Od,void 0),this["~registerMessagesCallback"]=(r,o)=>Sn(this,Od)["~registerMessagesCallback"](r,o),this["~registerStatusCallback"]=r=>Sn(this,Od)["~registerStatusCallback"](r),this["~registerErrorCallback"]=r=>Sn(this,Od)["~registerErrorCallback"](r),yl(this,Od,n)}};Od=new WeakMap;function cQ({experimental_throttle:e,resume:t=!1,...n}={}){const r=N.useRef("chat"in n?n.chat:new f$(n));("chat"in n&&n.chat!==r.current||"id"in n&&r.current.id!==n.id)&&(r.current="chat"in n?n.chat:new f$(n));const s="id"in n?n.id:null,i=N.useCallback(f=>r.current["~registerMessagesCallback"](f,e),[e,s]),a=N.useSyncExternalStore(i,()=>r.current.messages,()=>r.current.messages),l=N.useSyncExternalStore(r.current["~registerStatusCallback"],()=>r.current.status,()=>r.current.status),c=N.useSyncExternalStore(r.current["~registerErrorCallback"],()=>r.current.error,()=>r.current.error),u=N.useCallback(f=>{typeof f=="function"&&(f=f(r.current.messages)),r.current.messages=f},[r]);return N.useEffect(()=>{t&&r.current.resumeStream()},[t,r]),{id:r.current.id,messages:a,setMessages:u,sendMessage:r.current.sendMessage,regenerate:r.current.regenerate,clearError:r.current.clearError,stop:r.current.stop,error:c,resumeStream:r.current.resumeStream,status:l,addToolResult:r.current.addToolResult}}function bYe(e,t){return e.some(n=>n.tableName&&n.tableName===t.tableName||n.datamodelName&&n.datamodelName===t.datamodelName)}function yYe(e){return e.filter((n,r,o)=>r===o.findIndex(s=>s.tableName===n.tableName&&s.datamodelName===n.datamodelName))}function xYe(e,t){return e.filter(n=>!(n.connectionId===t.connectionId&&n.tableName===t.tableName&&n.datamodelName===t.datamodelName))}function vYe(e){return e.toLowerCase()==="clickhouse"?"{database_name}.{table_name}":e.toLowerCase()==="postgres"?"{schema_name}.{table_name}":"{table_name}"}function uQ(e){return e.map(r=>{const o=r.connectionType==="API"||r.connectionType==="S3"||r.connectionType==="S3Tables"?"DuckDb":r.connectionType;return r.datamodelName?{...r,databaseName:"",schemaName:"",tableName:"",connectionType:o,tableReferenceFormat:"dm.{table_name}"}:{...r,connectionType:o,tableReferenceFormat:vYe(o)}}).filter(r=>r.datamodelName?r.connectionId&&r.datamodelName&&r.connectionType:r.connectionId&&r.tableName&&r.connectionType)}function dQ(e){var n,r;if(!e)return"";let t="";try{const o=JSON.parse((e==null?void 0:e.message)||"{}");t=((r=(n=o==null?void 0:o.error)==null?void 0:n.lastError)==null?void 0:r.message)||(o==null?void 0:o.error)||e.message}catch{t=e.message}return t}function wYe(){const{authToken:e,tokenProps:t}=qe(),n=ee(g=>g.dashboard.aiScopeTables),{sendMessage:r,messages:o,setMessages:s,regenerate:i,status:a,addToolResult:l,error:c,stop:u,clearError:f}=cQ({transport:new KP({api:`${t.apiServiceUrl}/v1/assistant`,headers:()=>({Authorization:`Bearer ${e==null?void 0:e.accessToken}`}),body:()=>{const g=li.getState();return{assistantId:"dashboard-assistant",aiContext:g.currentAIContext,reasoningEffort:g.reasoningEffort,showReasoning:g.showReasoning}},credentials:"omit",prepareSendMessagesRequest:({messages:g,body:b})=>({body:{...b,messages:f6(g)}})}),onToolCall:h,onFinish(){}});async function h({toolCall:g}){g.toolName==="getCurrentTableScope"&&l({tool:g.toolName,toolCallId:g.toolCallId,output:{tables:uQ(n||[])}})}const p=!["ready","error"].includes(a),m=dQ(c);return{sendMessage:r,regenerate:i,isLoading:p,messages:o,setMessages:s,status:a,stop:u,errorMessage:m,clearError:f}}const Gd=N.forwardRef(({children:e,className:t,tooltip:n,onClick:r,openDelay:o=300,buttonProps:s,...i},a)=>d.jsx(td,{children:d.jsxs(Gi,{delayDuration:o,children:[d.jsx(Yi,{asChild:!0,children:d.jsx(ce,{ref:a,size:"sm",variant:"ghost",onClick:r,...i,...s,className:Y(`${Qd}`,t),children:e})}),n&&d.jsx(Ka,{side:"bottom",sideOffset:10,children:n})]})}));Gd.displayName="IconButton";function fQ(){const{authToken:e,tokenProps:t}=qe(),n=Ute(e==null?void 0:e.accessToken);function r(){if(!n||!(e!=null&&e.accessToken))return!1}const{data:o,isLoading:s,isFetching:i,isError:a}=bn({queryKey:["assistant-profile",n],queryFn:()=>qn(`${t.apiServiceUrl}/v1/assistant/${n}`,(e==null?void 0:e.accessToken)||""),enabled:r()});return{assistantProfile:o==null?void 0:o.assistantProfile,isLoading:s,isFetching:i,isError:a}}function hQ({seedQuestions:e,handleSeedQuestionClick:t}){return e.length===0?null:d.jsxs("div",{className:"overflow-x-auto rounded-md border bg-muted/40 p-4",children:[d.jsxs("div",{className:"mb-3 flex items-center",children:[d.jsx(q3,{className:"mr-2 h-4 w-4 text-muted-foreground"}),d.jsx("h3",{className:"font-medium",children:"Example Questions"})]}),d.jsx("div",{className:"flex flex-wrap gap-2",children:e.map((n,r)=>d.jsx(ce,{variant:"outline",size:"sm",onClick:()=>t(n),className:"text-sm",children:n},r))})]})}const SYe=e=>{switch(e){case"table":return d.jsx(Zv,{className:"h-4 w-4"});case"view":return d.jsx(ch,{className:"h-4 w-4"});case"model":return d.jsx(k_,{className:"h-4 w-4"});case"file":return d.jsx(Xo,{className:"h-4 w-4"});case"dataset":return d.jsx(nu,{className:"h-4 w-4"});case"upload":return d.jsx(Kv,{className:"h-4 w-4"});case"url":return d.jsx(__,{className:"h-4 w-4"});default:return d.jsx(Yv,{className:"h-4 w-4"})}},f0=e=>e.label||(e==null?void 0:e.name),h$=e=>"description"in e?e.description:`${e.type} from ${e.database||"database"}`;function CYe({isOpen:e,onSelect:t,onDeselect:n,onClose:r,availableEntities:o,selectedEntities:s,onTabComplete:i,onSelectAll:a,onRemoveAll:l,onAddContext:c}){const[u,f]=N.useState(""),[h,p]=N.useState(""),m=o.filter(w=>{if(!u)return!0;const S=f0(w).toLowerCase(),C=h$(w).toLowerCase(),k=u.toLowerCase();return S.includes(k)||C.includes(k)});N.useEffect(()=>{e||(f(""),p(""))},[e]),N.useEffect(()=>{m.length>0&&!h&&p(f0(m[0]))},[m,h]);const g=()=>{if(!h)return;const w=m.find(S=>f0(S)===h);w&&(s.some(C=>"id"in w&&"id"in C?w.id===C.id:w.name===C.name&&w.connectionId===C.connectionId)||t(w),i(w),r())},b=w=>{(w.key==="Tab"||w.key==="Enter")&&(w.preventDefault(),g())};if(!e)return null;const y=w=>s.some(S=>"id"in w&&"id"in S?w.id===S.id:w.name===S.name&&w.connectionId===S.connectionId),x=s.length===o.length,v=s.length>0;return d.jsx(d.Fragment,{children:d.jsxs(Iw,{shouldFilter:!1,value:h,onValueChange:p,onKeyDown:b,children:[d.jsx(Ow,{placeholder:"Search entities...",value:u,onValueChange:f,className:"border-0",autoFocus:!0}),d.jsxs("div",{className:"flex items-center justify-between px-3 py-2 text-xs",children:[d.jsxs(z_,{children:[s.length," ",s.length===1?"entity":"entities"," selected",x&&" (all)"]}),d.jsxs("div",{className:"flex items-center gap-2",children:[d.jsxs("button",{onClick:w=>{w.preventDefault(),w.stopPropagation(),a==null||a()},onMouseDown:w=>{w.preventDefault(),w.stopPropagation()},disabled:x,className:"flex items-center gap-1 text-muted-foreground hover:text-foreground disabled:cursor-not-allowed disabled:opacity-50",title:x?"All entities already selected":"Select all entities",children:[d.jsx(Qne,{className:"h-3.5 w-3.5"}),d.jsx("span",{children:"All"})]}),v&&d.jsxs("button",{onClick:w=>{w.preventDefault(),w.stopPropagation(),l==null||l()},onMouseDown:w=>{w.preventDefault(),w.stopPropagation()},className:"flex items-center gap-1 text-red-600 hover:text-red-800",title:"Remove all selected entities",children:[d.jsx(Jne,{className:"h-3.5 w-3.5"}),d.jsx("span",{children:"Clear"})]})]})]}),d.jsxs(Fw,{className:"min-h-60",children:[d.jsx($w,{children:d.jsxs("div",{className:"flex flex-col items-center justify-center py-4",children:[d.jsx("p",{className:"mb-3 text-sm text-muted-foreground",children:"No entities found."}),d.jsxs(ce,{onClick:w=>{w.preventDefault(),w.stopPropagation(),c==null||c()},onMouseDown:w=>{w.preventDefault(),w.stopPropagation()},size:"sm",variant:"outline",className:"flex items-center gap-2",children:[d.jsx(ks,{className:"h-4 w-4"}),"Add Datasets"]})]})}),d.jsx(Lw,{children:m.map((w,S)=>{const C=y(w),k="id"in w?w.id:`${w.connectionId}-${w.name}`,_=f0(w);return d.jsxs(zw,{value:_,onSelect:()=>{C?n==null||n(w):t(w)},onMouseDown:M=>{M.preventDefault(),M.stopPropagation()},className:Y("flex cursor-pointer items-start gap-2 p-2 hover:bg-gray-100"),children:[d.jsx("div",{className:"mt-0.5 flex h-5 w-5 shrink-0 items-center justify-center",children:SYe(w.type)}),d.jsxs("div",{className:"min-w-0 flex-1",children:[d.jsx("div",{className:"truncate font-medium",children:_}),d.jsx("div",{className:"truncate text-xs text-muted-foreground",children:h$(w)})]}),C&&d.jsx("div",{className:"ml-1 flex h-5 w-5 shrink-0 items-center justify-center rounded-full bg-foreground/80",children:d.jsx(Fr,{className:"h-3 w-3 text-background"})})]},k)})})]})]})})}const p$=e=>{switch(e){case"table":return d.jsx(Zv,{className:"h-3 w-3"});case"view":return d.jsx(ch,{className:"h-3 w-3"});case"model":return d.jsx(k_,{className:"h-3 w-3"});case"file":return d.jsx(Xo,{className:"h-3 w-3"});case"dataset":return d.jsx(nu,{className:"h-3 w-3"});case"upload":return d.jsx(Kv,{className:"h-3 w-3"});case"url":return d.jsx(__,{className:"h-3 w-3"});default:return d.jsx(Yv,{className:"h-3 w-3"})}},Kk=e=>e.name||e.name,EYe=e=>{const t=Kk(e),n="description"in e?e.description:"",r=e.database||"",o=e.schema||"";return d.jsxs("div",{className:"space-y-1",children:[d.jsx("div",{className:"font-medium",children:t}),n&&d.jsx("div",{className:"text-sm text-muted-foreground",children:n}),d.jsxs("div",{className:"text-xs text-muted-foreground",children:["Type: ",e.type,r&&` • Database: ${r}`,o&&` • Schema: ${o}`]})]})};function NYe({entities:e,availableEntities:t,onRemoveEntity:n,onRemoveEntities:r}){const[o,s]=N.useState(!1),i=e.length>0;e.length,t.length,e.length<t.length;const a=e.length>=3?e.slice(0,2):e,l=e.length>=3?e.slice(2):[],c=l.length>0;return d.jsx(td,{children:d.jsx("div",{className:"space-y-2",children:i&&d.jsxs("div",{className:"flex flex-wrap gap-1",children:[a.map((u,f)=>{const h="id"in u?u.id:`${u.connectionId}-${u.name}`;return d.jsxs(Gi,{children:[d.jsx(Yi,{asChild:!0,children:d.jsxs(Mt,{variant:"secondary",className:"group relative cursor-pointer gap-2 transition-colors hover:border-red-200 hover:bg-red-50 dark:hover:border-red-800 dark:hover:bg-red-950",children:[p$(u.type),d.jsx("span",{className:"max-w-24 truncate text-xs",children:Kk(u)}),d.jsx("button",{className:"rounded-full p-0.5 transition-opacity hover:bg-red-100 group-hover:opacity-100",onClick:()=>n(u),children:d.jsx(Dn,{className:"h-3 w-3"})})]})}),d.jsx(Ka,{side:"top",className:"max-w-xs",children:EYe(u)})]},h)}),c&&d.jsxs(Gi,{open:o,onOpenChange:s,children:[d.jsx(Yi,{asChild:!0,children:d.jsxs(Mt,{variant:"secondary",className:"flex cursor-pointer items-center gap-1 transition-colors hover:bg-secondary/80",onClick:()=>s(!0),children:[d.jsx(Z3,{className:"h-3 w-3"}),d.jsxs("span",{className:"text-xs",children:[l.length," more"]}),d.jsx("button",{className:"rounded-full p-0.5 transition-opacity hover:bg-red-100 group-hover:opacity-100",onClick:()=>r(l),children:d.jsx(Dn,{className:"h-3 w-3"})})]})}),d.jsx(Ka,{side:"top",className:"max-h-60 max-w-xs overflow-y-auto p-2",children:d.jsxs("div",{className:"space-y-2",children:[d.jsx("div",{className:"text-sm font-medium",children:"Additional Datasets"}),d.jsx("div",{className:"space-y-2",children:l.map(u=>{const f="id"in u?u.id:`${u.connectionId}-${u.name}`;return d.jsxs("div",{className:"group flex items-center justify-between gap-2",children:[d.jsxs("div",{className:"flex items-start gap-2",children:[d.jsx("div",{className:"flex h-5 w-5 shrink-0 items-center justify-center",children:p$(u.type)}),d.jsxs("div",{className:"min-w-0 flex-1",children:[d.jsx("div",{className:"truncate text-sm font-medium",children:Kk(u)}),d.jsxs("div",{className:"truncate text-xs text-muted-foreground",children:[u.type," ",u.database?`• ${u.database}`:""]})]})]}),d.jsx(ce,{variant:"ghost",size:"sm",className:"h-6 w-6 p-0 opacity-0 group-hover:opacity-100",onClick:()=>{n(u),l.length===1&&s(!1)},children:d.jsx(Dn,{className:"h-3 w-3"})})]},f)})})]})})]})]})})})}function pQ(e){return e.type==="dataset"&&e.label||e.name}function kYe(e){const t=[];return t.push({label:"Type",value:e.type}),t.push({label:"Name",value:e.name}),e.connectionType&&t.push({label:"Connection",value:e.connectionType}),e.database&&t.push({label:"Database",value:e.database}),e.schema&&t.push({label:"Schema",value:e.schema}),e.type==="dataset"&&e.label&&t.push({label:"Label",value:e.label}),e.type==="dataset"&&e.description&&t.push({label:"Description",value:e.description}),e.type==="model"&&e.label&&t.push({label:"Label",value:e.label}),e.type==="model"&&e.description&&t.push({label:"Description",value:e.description}),t}function _Ye({selectedEntities:e,onDeselectEntity:t}){return e.length===0?null:d.jsxs("div",{className:"mb-4 space-y-2",children:[d.jsxs(fe,{className:"mb-2 text-xs font-medium text-muted-foreground",children:["Selected Entities (",e.length,")"]}),d.jsx("div",{className:"max-h-32 overflow-y-auto rounded-md border border-border/50 p-2",children:d.jsx("div",{className:"flex flex-wrap gap-1",children:e.map((n,r)=>d.jsxs(Mt,{variant:"secondary",className:"group relative cursor-pointer pr-6 text-xs transition-colors hover:border-red-200 hover:bg-red-50 dark:hover:border-red-800 dark:hover:bg-red-950",children:[d.jsxs("span",{className:"mr-1 text-gray-500",children:["[",n.type,"]"]}),pQ(n),d.jsx("button",{onClick:o=>{o.stopPropagation(),t(n)},className:"absolute right-1 top-1/2 -translate-y-1/2 rounded-full p-0.5 opacity-0 transition-opacity hover:bg-red-100 group-hover:opacity-100",children:d.jsx(Dn,{className:"h-2.5 w-2.5 text-red-500"})})]},`${n.type}-${n.name}-${r}`))})})]})}function mQ(e){const{tokenProps:t}=qe(),n=ee(l=>l.authToken)||e;Ae(l=>l.selectedConnectionId),Ae(l=>{var c,u;return(u=(c=l==null?void 0:l.card)==null?void 0:c.dataSource)==null?void 0:u.connectionId});const{refetch:r,isPending:o,data:s,isLoading:i,isError:a}=bn({queryKey:["semantic-domains"],queryFn:()=>qn(`${t.apiServiceUrl}/v1/domains`,(n==null?void 0:n.accessToken)||""),enabled:!!(n!=null&&n.accessToken)});return{isPending:o,error:a,semanticDomainsData:s,semanticDomains:(s==null?void 0:s.domains)||[],isSemanticDomainsLoading:i,isSemanticDomainsError:a,refetchSemanticDomains:r}}function jYe(e,t){const{tokenProps:n}=qe(),r=ee(c=>c.authToken)||t,{refetch:o,isPending:s,data:i,isLoading:a,isError:l}=bn({queryKey:["datasets",e],queryFn:()=>qn(`${n.apiServiceUrl}/v1/datasets`,(r==null?void 0:r.accessToken)||"",{domainId:e}),enabled:!!(r!=null&&r.accessToken)&&!!e});return{isPending:s,error:l,datasets:(i==null?void 0:i.datasets)||[],isDatasetsLoading:a,isDatasetsError:l,refetchDatasets:o}}function MYe(e){var g,b;const{tokenProps:t}=qe(),n=ee(y=>y.authToken)||e,{connections:r}=Ji(e),o=Ae(y=>{var x,v;return(v=(x=y==null?void 0:y.card)==null?void 0:x.dataSource)==null?void 0:v.connectionId}),s=r==null?void 0:r.find(y=>y.id===o),i=s==null?void 0:s.type,a=s==null?void 0:s.capabilities,l=((g=a==null?void 0:a.labels)==null?void 0:g.database)||"Database";function c(y){return o&&y?!(y==="API"||y==="S3"):!1}const{data:u,isPending:f,error:h,refetch:p}=bn({queryKey:["databases",o],queryFn:()=>qn(`${t.apiServiceUrl}/v1/databases`,(n==null?void 0:n.accessToken)||"",{connection_id:o}),enabled:c(i)}),m=(b=u==null?void 0:u.databases)==null?void 0:b.map(y=>({id:y.database_name,name:y.database_name}));return{isPending:f,error:h,databases:m||[],refetch:p,label:l}}function RYe(e){var g;const{tokenProps:t}=qe(),n=ee(b=>b.authToken)||e,{connections:r}=Ji(e),o=Ae(b=>{var y,x;return(x=(y=b==null?void 0:b.card)==null?void 0:y.dataSource)==null?void 0:x.connectionId}),s=Ae(b=>{var y,x,v;return(v=(x=(y=b==null?void 0:b.card)==null?void 0:y.dataSource)==null?void 0:x.dbSelection)==null?void 0:v.database}),i=r==null?void 0:r.find(b=>b.id===o),a=i==null?void 0:i.capabilities,l=((g=a==null?void 0:a.labels)==null?void 0:g.schema)||"Schema";function c(){return!(!o||(i==null?void 0:i.type)==="API"||(i==null?void 0:i.type)==="S3"||!s||!(a!=null&&a.path.includes("schema")))}const{data:u,isPending:f,error:h,refetch:p}=bn({queryKey:["schemas",o,s],queryFn:()=>qn(`${t.apiServiceUrl}/v1/schemas`,(n==null?void 0:n.accessToken)||"",{connection_id:o,database_name:s}),enabled:c()}),m=u==null?void 0:u.schemas.map(b=>({id:b.schema_name,name:b.schema_name}));return{isPending:f,error:h,schemas:m||[],refetch:p,label:l}}function gQ(e){const{tokenProps:t}=qe(),n=ee(h=>h.authToken)||e,{connections:r}=Ji(e),o=Ae(h=>{var p,m;return(m=(p=h==null?void 0:h.card)==null?void 0:p.dataSource)==null?void 0:m.connectionId}),s=r.find(h=>h.id===o);function i(){return!(!(n!=null&&n.accessToken)||!o)}const{data:a,isPending:l,error:c,refetch:u}=bn({queryKey:["dataModels",o],queryFn:()=>qn(`${t.apiServiceUrl}/v1/datamodels`,(n==null?void 0:n.accessToken)||"",{connection_id:o}),enabled:i()}),f=a==null?void 0:a.datamodels.map(h=>({id:h.id,name:h.name,label:h.label,description:h.description,connectionId:o,dialect:h.dialect,connectionType:s==null?void 0:s.type,type:"model",database:h.database,schema:h.schema}));return{isPending:l,error:c,dataModels:f||[],refetch:u}}function PYe(){var S,C,k;const e=Ae(_=>_.card.dataSource);Ae(_=>_.actions.updateDirectSource);const t=Ae(_=>_.actions.updateDataSource),[n,r]=N.useState(""),{selectedConnection:o,error:s}=Ji(),{databases:i,isPending:a,error:l,label:c}=MYe(),{schemas:u,isPending:f,error:h,label:p}=RYe(),{error:m}=gQ(),g=o==null?void 0:o.capabilities.path.includes("schema"),b=o==null?void 0:o.capabilities.path.includes("database"),y=c==null?void 0:c.toLowerCase(),x=p==null?void 0:p.toLowerCase(),v=_=>{e&&t({...e,dbSelection:{database:_,schema:"",entityType:"table"},selectedEntities:(e==null?void 0:e.selectedEntities)||[]})},w=_=>{var j;if(!((j=e==null?void 0:e.dbSelection)!=null&&j.database))return;const M=e.dbSelection||{database:"",schema:"",entityType:"table"};t({...e,dbSelection:{...M,schema:_},selectedEntities:(e==null?void 0:e.selectedEntities)||[]})};return d.jsxs(d.Fragment,{children:[(s||l||h||m)&&d.jsxs("div",{className:"rounded-md border border-red-200 bg-red-50 p-3",children:[d.jsx("div",{className:"flex items-center",children:d.jsxs("div",{className:"text-sm text-red-800",children:[d.jsx("strong",{children:"Error loading data:"}),d.jsxs("ul",{className:"mt-1 list-inside list-disc",children:[s&&d.jsxs("li",{children:["Connections: ",s]}),l&&d.jsxs("li",{children:[c,": ",l.message]}),h&&d.jsxs("li",{children:[p,": ",h.message]}),m&&d.jsxs("li",{children:["Data Models: ",m.message]})]})]})}),d.jsx(ce,{variant:"outline",size:"sm",className:"mt-2",onClick:()=>window.location.reload(),children:"Retry"})]}),d.jsxs("div",{className:"space-y-4",children:[b&&d.jsxs("div",{className:"space-y-2",children:[d.jsx(fe,{className:"text-sm font-medium",children:c}),d.jsxs(Tt,{value:((S=e==null?void 0:e.dbSelection)==null?void 0:S.database)||"",onValueChange:v,disabled:a,children:[d.jsx(_t,{className:"w-full",children:d.jsxs("div",{className:"flex items-center gap-2",children:[a&&d.jsx(Ns,{className:"h-4 w-4 animate-spin"}),d.jsx($t,{placeholder:l?`Error loading ${y}`:a?`Loading ${y}...`:`Select ${y}...`})]})}),d.jsx(jt,{children:i.map(_=>d.jsx(we,{className:"hover:bg-muted",value:_.id,children:_.name},_.id))})]})]}),((C=e==null?void 0:e.dbSelection)==null?void 0:C.database)&&g&&d.jsxs("div",{className:"space-y-2",children:[d.jsx(fe,{className:"text-sm font-medium",children:p}),d.jsxs(Tt,{value:((k=e==null?void 0:e.dbSelection)==null?void 0:k.schema)||"",onValueChange:w,disabled:f,children:[d.jsx(_t,{className:"w-full",children:d.jsxs("div",{className:"flex items-center gap-2",children:[f&&d.jsx(Ns,{className:"h-4 w-4 animate-spin"}),d.jsx($t,{placeholder:h?`Error loading ${x}`:f?`Loading ${x}...`:`Select ${x}...`})]})}),d.jsx(jt,{children:u.map(_=>d.jsx(we,{className:"hover:bg-muted",value:_.id,children:_.name},_.id))})]})]})]})]})}function DYe(){const e=Ae(l=>l.card.dataSource),t=Ae(l=>l.actions.updateDataSource),[n,r]=N.useState(!1),o=l=>{if(!l||(e==null?void 0:e.mode)!=="upload")return;const c=Array.from(l).map(f=>({id:`file-${Date.now()}-${Math.random()}`,name:f.name,type:"upload",connectionId:"default",connectionType:"none",label:f.name,description:`Uploaded ${new Date().toLocaleString()}`,originalName:f.name,file:f})),u=(e==null?void 0:e.selectedEntities)||[];t({...e,selectedEntities:[...u,...c]})},s=l=>{if(!e)return;const c=(e.selectedEntities||[]).filter(u=>u.id!==l);t({...e,selectedEntities:c})},i=l=>{if(l===0)return"0 Bytes";const c=1024,u=["Bytes","KB","MB","GB"],f=Math.floor(Math.log(l)/Math.log(c));return Number.parseFloat((l/Math.pow(c,f)).toFixed(2))+" "+u[f]},a=(e==null?void 0:e.selectedEntities)||[];return d.jsxs("div",{className:"space-y-4",children:[d.jsxs("div",{className:"space-y-2",children:[d.jsx(fe,{className:"text-sm font-medium",children:"Upload Files"}),d.jsxs("div",{className:`rounded-lg border-2 border-dashed p-6 text-center transition-colors ${n?"border-blue-400 bg-blue-50":"border-gray-300 hover:border-gray-400"}`,onDragOver:l=>{l.preventDefault(),r(!0)},onDragLeave:()=>r(!1),onDrop:l=>{l.preventDefault(),r(!1),o(l.dataTransfer.files)},children:[d.jsx(Kv,{className:"mx-auto mb-2 h-8 w-8 text-gray-400"}),d.jsx("p",{className:"mb-2 text-sm text-gray-600",children:"Drag and drop files here, or click to select"}),d.jsx("input",{type:"file",multiple:!0,className:"hidden",id:"file-upload",onChange:l=>o(l.target.files),accept:".csv,.json,.xlsx,.xls"}),d.jsx(ce,{variant:"outline",size:"sm",onClick:()=>{var l;return(l=document.getElementById("file-upload"))==null?void 0:l.click()},children:"Select Files"}),d.jsx("p",{className:"mt-2 text-xs text-gray-500",children:"Supports CSV, JSON, Excel files"})]})]}),a.length>0&&d.jsxs("div",{className:"space-y-2",children:[d.jsxs(fe,{className:"text-xs text-gray-600",children:["Uploaded Files (",a.length,")"]}),d.jsx("div",{className:"max-h-40 space-y-1 overflow-y-auto",children:a.map(l=>d.jsxs("div",{className:"flex items-center justify-between rounded border bg-gray-50 p-2",children:[d.jsxs("div",{className:"flex min-w-0 items-center gap-2",children:[d.jsx(Xo,{className:"h-4 w-4 flex-shrink-0 text-gray-500"}),d.jsxs("div",{className:"min-w-0",children:[d.jsx("p",{className:"truncate text-sm text-gray-700",children:l.originalName}),d.jsx("p",{className:"text-xs text-gray-500",children:l.file?i(l.file.size):""})]})]}),d.jsx(ce,{variant:"ghost",size:"sm",className:"h-6 w-6 flex-shrink-0 p-0",onClick:()=>s(l.id),children:d.jsx(Dn,{className:"h-3 w-3"})})]},l.id))})]})]})}function TYe(){const e=Ae(f=>f.card.dataSource),t=Ae(f=>f.actions.updateDataSource),[n,r]=N.useState(""),[o,s]=N.useState(""),[i,a]=N.useState("api"),l=()=>{if(!n.trim()||!o.trim()||!e)return;const f={id:`url-${Date.now()}-${Math.random()}`,name:n.trim(),type:"url",connectionId:"default",connectionType:"none",label:n.trim(),description:`URL source of type ${i}`,url:o.trim(),sourceType:i,originalName:n.trim()},h=(e==null?void 0:e.selectedEntities)||[];t({...e,selectedEntities:[...h,f]}),r(""),s(""),a("api")},c=f=>{if(!e)return;const h=(e.selectedEntities||[]).filter(p=>p.id!==f);t({...e,selectedEntities:h})},u=(e==null?void 0:e.selectedEntities)||[];return d.jsxs("div",{className:"space-y-4",children:[d.jsxs("div",{className:"space-y-2",children:[d.jsx(fe,{className:"text-sm font-medium text-gray-700",children:"URL Sources"}),d.jsxs("div",{className:"space-y-3 rounded-lg border bg-gray-50 p-3",children:[d.jsxs("div",{className:"space-y-2",children:[d.jsx(fe,{className:"text-xs text-gray-600",children:"Source Name"}),d.jsx(Wr,{placeholder:"e.g., Sales API, Customer Data",value:n,onChange:f=>r(f.target.value),className:"h-8 text-sm"})]}),d.jsxs("div",{className:"space-y-2",children:[d.jsx(fe,{className:"text-xs text-gray-600",children:"URL"}),d.jsx(Wr,{placeholder:"https://api.example.com/data",value:o,onChange:f=>s(f.target.value),className:"h-8 text-sm"})]}),d.jsxs("div",{className:"space-y-2",children:[d.jsx(fe,{className:"text-xs text-gray-600",children:"Type"}),d.jsxs("select",{value:i,onChange:f=>a(f.target.value),className:"h-8 w-full rounded-md border border-gray-300 px-2 text-sm",children:[d.jsx("option",{value:"api",children:"API Endpoint"}),d.jsx("option",{value:"csv",children:"CSV File"}),d.jsx("option",{value:"json",children:"JSON File"})]})]}),d.jsxs(ce,{onClick:l,disabled:!n.trim()||!o.trim(),size:"sm",className:"w-full",children:[d.jsx(ks,{className:"mr-1 h-3 w-3"}),"Add Source"]})]})]}),u.length>0&&d.jsxs("div",{className:"space-y-2",children:[d.jsxs(fe,{className:"text-xs text-gray-600",children:["Added Sources (",u.length,")"]}),d.jsx("div",{className:"max-h-40 space-y-1 overflow-y-auto",children:u.map(f=>d.jsxs("div",{className:"flex items-center justify-between rounded border bg-gray-50 p-2",children:[d.jsxs("div",{className:"flex min-w-0 items-center gap-2",children:[d.jsx(Yv,{className:"h-4 w-4 flex-shrink-0 text-gray-500"}),d.jsxs("div",{className:"min-w-0",children:[d.jsx("p",{className:"truncate text-sm text-gray-700",children:f.name}),d.jsx("p",{className:"truncate text-xs text-gray-500",children:f.url})]})]}),d.jsx(ce,{variant:"ghost",size:"sm",className:"h-6 w-6 flex-shrink-0 p-0",onClick:()=>c(f.id),children:d.jsx(Dn,{className:"h-3 w-3"})})]},f.id))})]})]})}function AYe(e,t){var x,v;const{tokenProps:n}=qe(),r=ee(w=>w.authToken)||t,{connections:o}=Ji(t),s=Ae(w=>{var S,C;return(C=(S=w==null?void 0:w.card)==null?void 0:S.dataSource)==null?void 0:C.connectionId}),i=Ae(w=>{var S,C,k;return(k=(C=(S=w==null?void 0:w.card)==null?void 0:S.dataSource)==null?void 0:C.dbSelection)==null?void 0:k.database}),a=Ae(w=>{var S,C,k;return(k=(C=(S=w==null?void 0:w.card)==null?void 0:S.dataSource)==null?void 0:C.dbSelection)==null?void 0:k.schema}),l=o==null?void 0:o.find(w=>w.id===s),c=l==null?void 0:l.capabilities,u=((x=c==null?void 0:c.labels)==null?void 0:x.schema)||"Schema";function f(){return s?(l==null?void 0:l.type)==="API"||(l==null?void 0:l.type)==="S3"?!0:!(!i||c!=null&&c.path.includes("schema")&&!a):!1}const{data:h,isPending:p,isLoading:m,error:g,refetch:b}=bn({queryKey:[e,s,i,a],queryFn:()=>qn(`${n.apiServiceUrl}/v1/${e}s`,(r==null?void 0:r.accessToken)||"",{connection_id:s,database_name:i,schema_name:a}),enabled:f()}),y=(v=h==null?void 0:h[`${e}s`])==null?void 0:v.map(w=>{var S;return{connectionId:l==null?void 0:l.id,connectionType:l==null?void 0:l.type,dialect:l==null?void 0:l.dialect,type:e,dbObjectType:(S=w==null?void 0:w.table_type)==null?void 0:S.toLowerCase(),id:w[`${e}_name`],database:i,schema:a,name:w[`${e}_name`]}});return{isPending:p,isLoading:m,error:g,entities:y||[],refetch:b,label:u}}function Dv({title:e,message:t}){return d.jsx("div",{className:"rounded-xl border border-destructive/40 bg-destructive/10 p-4 text-destructive shadow-sm",children:d.jsxs("div",{className:"flex items-start gap-4",children:[d.jsx(Tf,{className:"h-6 w-6 flex-shrink-0"}),d.jsxs("div",{className:"flex-1",children:[d.jsx("h4",{className:"text-base font-semibold",children:e}),t&&d.jsx("p",{className:"mt-1 text-sm text-destructive/90",children:t})]})]})})}function IYe({dataSource:e,onSelectionChange:t,selectedEntities:n,onRegisterSelectAll:r}){const{connections:o,isPending:s}=Ji(),[i,a]=N.useState(""),[l,c]=N.useState(""),[u,f]=N.useState("tables"),{updateDataSource:h,setSelectedConnectionId:p}=jo(),{entities:m,isLoading:g,error:b}=AYe("table"),{dataModels:y,isPending:x,error:v}=gQ(),w=j=>{const A=o.find(F=>F.id===j);if(!A)return;const R=A.type==="upload"?"upload":A.type==="url"?"url":"database";h({...e,connectionId:j,connectionType:A.type,mode:R,dbSelection:{database:"",schema:"",entityType:"table"}}),p(j)},S=j=>{var T,D;const A=n||[],R=A.some(O=>O.name===j.name&&O.type===j.type);let F;if(R)F=A.filter(O=>!(O.name===j.name&&O.type===j.type));else{const O={connectionId:e.connectionId,connectionType:e.connectionType,type:j.type,dbObjectType:j.dbObjectType,database:((T=e.dbSelection)==null?void 0:T.database)||"",schema:((D=e.dbSelection)==null?void 0:D.schema)||"",name:j.name,dialect:j.dialect};F=[...A,O]}t==null||t(F)},C=j=>{const A=n||[],R=A.some(T=>T.type==="model"&&T.name===j.name);let F;R?F=A.filter(T=>!(T.type==="model"&&T.name===j.name)):F=[...A,j],t==null||t(F)},k=m.filter(j=>j.name.toLowerCase().includes(i.toLowerCase())),_=y.filter(j=>j.name.toLowerCase().includes(l.toLowerCase())),M=N.useCallback(()=>{if(!t)return;const j=n||[];let A=[...j];if(u==="tables"){const F=k.filter(T=>!j.some(D=>D.name===T.name&&D.type==="table")).map(T=>{var D,O;return{connectionId:e.connectionId,connectionType:e.connectionType,type:"table",dbObjectType:T.dbObjectType,database:((D=e.dbSelection)==null?void 0:D.database)||"",schema:((O=e.dbSelection)==null?void 0:O.schema)||"",name:T.name,dialect:T.dialect}});A=[...j,...F]}else if(u==="datamodels"){const R=_.filter(F=>!j.some(T=>T.name===F.name&&T.type==="model"));A=[...j,...R]}t(A)},[u,k,_,n,e,t]);return N.useEffect(()=>{r&&r(M)},[r,M]),d.jsxs("div",{className:"space-y-4",children:[d.jsxs("div",{className:"space-y-2",children:[d.jsx(fe,{className:"font-medium= text-sm",children:"Connection"}),d.jsxs(Tt,{value:(e==null?void 0:e.connectionId)||"",onValueChange:w,disabled:s,children:[d.jsx(_t,{className:"w-full",children:d.jsx($t,{placeholder:s?"Loading connections...":"Select connection..."})}),d.jsx(jt,{children:o.map(j=>d.jsx(we,{className:"hover:bg-muted",value:j.id,children:d.jsxs("div",{className:"flex min-w-0 items-center gap-2",children:[d.jsx(nu,{className:"h-4 w-4 flex-shrink-0"}),d.jsx("span",{className:"truncate",children:j.name}),d.jsx(Mt,{variant:"secondary",className:"flex-shrink-0 text-xs",children:j.type})]})},j.id))})]})]}),(e==null?void 0:e.connectionId)&&d.jsxs(d.Fragment,{children:[e.connectionType==="upload"&&d.jsx(DYe,{}),e.connectionType==="url"&&d.jsx(TYe,{}),e.connectionType!=="upload"&&e.connectionType!=="url"&&d.jsxs(d.Fragment,{children:[d.jsx(PYe,{}),d.jsx("div",{className:"space-y-4",children:d.jsx("div",{className:"space-y-2",children:d.jsxs(ea,{defaultValue:"tables",value:u,onValueChange:j=>f(j),className:"w-full",children:[d.jsxs(ci,{className:"grid w-full grid-cols-2",children:[d.jsx(Qn,{value:"tables",children:"Tables & Views"}),d.jsx(Qn,{value:"datamodels",children:"Data Models"})]}),d.jsxs($r,{value:"tables",className:"space-y-2",children:[d.jsx(Cr,{placeholder:"Search tables and views...",value:i,onChange:j=>a(j.target.value),className:"h-8 text-sm",disabled:g}),d.jsx("div",{className:"max-h-40 space-y-1 overflow-y-auto",children:g?d.jsx("div",{className:"py-4 text-center text-sm",children:"Loading tables..."}):b?d.jsx(Dv,{title:"Error loading tables",message:b.message||"Failed to load tables. Please try again.",onRetry:()=>window.location.reload()}):k.length===0?d.jsx("div",{className:"py-4 text-center text-sm",children:"No tables or views found"}):k.map(j=>{const A=n.some(R=>R.name===j.name&&R.type==="table");return d.jsxs("div",{className:"group flex cursor-pointer items-center space-x-2 rounded p-2 hover:bg-muted",onClick:()=>S(j),children:[d.jsx(Ln,{id:`table-${j.name}`,checked:A,onCheckedChange:()=>S(j),onClick:R=>R.stopPropagation(),disabled:g}),d.jsxs(fe,{className:"flex flex-1 cursor-pointer items-center gap-2",children:[j.name,j.dbObjectType==="view"&&d.jsx(Mt,{variant:"secondary",className:"text-xs group-hover:border-border",children:"View"})]})]},j.name)})})]}),d.jsxs($r,{value:"datamodels",className:"space-y-2",children:[d.jsx(Cr,{placeholder:"Search data models...",value:l,onChange:j=>c(j.target.value),className:"h-8 text-sm",disabled:x}),d.jsx("div",{className:"max-h-40 space-y-1 overflow-y-auto",children:x?d.jsx("div",{className:"py-4 text-center text-sm",children:"Loading data models..."}):v?d.jsx(Dv,{title:"Error loading data models",message:v.message||"Failed to load data models. Please try again.",onRetry:()=>window.location.reload()}):_.length===0?d.jsx("div",{className:"py-4 text-center text-sm",children:"No data models found"}):_.map(j=>{const A=n.some(R=>R.name===j.name&&R.type==="model");return d.jsxs("div",{className:"flex cursor-pointer items-start space-x-2 rounded p-2 hover:bg-muted",onClick:()=>C(j),children:[d.jsx(Ln,{id:`dataModel-${j.name}`,checked:A,onCheckedChange:()=>C(j),onClick:R=>R.stopPropagation(),disabled:x}),d.jsxs("div",{className:"flex flex-1 cursor-pointer flex-col gap-1",children:[d.jsx(fe,{className:"cursor-pointer",children:j.name}),d.jsx("span",{className:"text-xs text-muted-foreground",children:j.description})]})]},j.name)})})]})]})})})]})]})]})}function OYe({dataSource:e,onDataSourceUpdate:t,onSelectionChange:n,selectedEntities:r,allowedDomainIds:o=[],isRestricted:s=!1,autoSelectedDomainId:i,onRegisterSelectAll:a}){var S;const[l,c]=N.useState(""),u=N.useCallback(C=>{const k={...e,connectionId:e.connectionId||"none",connectionType:e.connectionType||"none",mode:"semanticDomain",semanticDomainId:C};t({...k})},[e,t]);N.useEffect(()=>{i&&!(e!=null&&e.semanticDomainId)&&u(i)},[i,e==null?void 0:e.semanticDomainId,u]);const{semanticDomains:f,isPending:h,error:p}=mQ(),m=s?f.filter(C=>o.includes(C.id)):f,{datasets:g,isPending:b,error:y}=jYe(e==null?void 0:e.semanticDomainId),x=C=>{const k=r||[],_=k.some(j=>j.id===C.id&&j.type==="dataset");let M;if(_)M=k.filter(j=>!(j.id===C.id&&j.type==="dataset"));else{const j={id:C.id,datasetType:C.type,name:C.name||C.table,label:C.label,domainId:C.domainId,description:C.description,database:C.database,schema:C.schema,type:"dataset",connectionId:C.connectionId,connectionType:C.connectionType,dialect:C.dialect,datamodelId:C.datamodelId,sql:C.sql};M=[...k,j]}n==null||n(M)},v=g.filter(C=>C.name.toLowerCase().includes(l.toLowerCase())),w=N.useCallback(()=>{if(!n||!(e!=null&&e.semanticDomainId))return;const C=r||[],_=v.filter(j=>!C.some(A=>A.id===j.id&&A.type==="dataset")).map(j=>({id:j.id,datasetType:j.type,name:j.name||j.table,label:j.label,domainId:j.domainId,description:j.description,database:j.database,schema:j.schema,type:"dataset",connectionId:j.connectionId,connectionType:j.connectionType,dialect:j.dialect,datamodelId:j.datamodelId,sql:j.sql})),M=[...C,..._];n(M)},[v,r,e==null?void 0:e.semanticDomainId,n]);return N.useEffect(()=>{a&&a(w)},[a,w]),d.jsxs("div",{className:"space-y-4",children:[d.jsxs("div",{className:"space-y-2",children:[d.jsx(fe,{className:"text-sm font-medium",children:"Semantic Domain"}),d.jsxs(Tt,{value:(e==null?void 0:e.semanticDomainId)||"",onValueChange:u,disabled:h||s&&!!i,children:[d.jsx(_t,{className:"w-full",children:d.jsx($t,{placeholder:h?"Loading semantic domains...":s&&i?"Loading domain...":"Select semantic domain...",children:((S=m.find(C=>C.id===(e==null?void 0:e.semanticDomainId)))==null?void 0:S.label)||"Select semantic domain"})}),d.jsx(jt,{children:m.map(C=>d.jsx(we,{className:"hover:bg-muted",value:C.id,children:d.jsxs("div",{className:"flex flex-col items-start",children:[d.jsx("span",{className:"font-medium",children:C.label}),d.jsx("span",{className:"text-xs",children:C.description})]})},C.id))})]}),p&&d.jsx(Dv,{title:"Error loading semantic models",message:p.message})]}),(e==null?void 0:e.semanticDomainId)&&d.jsxs("div",{className:"space-y-2",children:[d.jsx(fe,{className:"text-sm font-medium text-gray-700",children:"Datasets"}),d.jsxs("div",{className:"space-y-2",children:[d.jsx(Cr,{placeholder:"Search datasets...",value:l,onChange:C=>c(C.target.value),className:"h-8 text-sm",disabled:b}),d.jsx("div",{className:"max-h-40 space-y-1 overflow-y-auto",children:b?d.jsx("div",{className:"py-4 text-center text-sm text-gray-500",children:"Loading datasets..."}):y?d.jsx(Dv,{title:"Error loading datasets",message:y.message||"Failed to load datasets. Please try again.",onRetry:()=>window.location.reload()}):v.length===0?d.jsx("div",{className:"py-4 text-center text-sm text-gray-500",children:l?"No datasets match your search":"No datasets available"}):v.map(C=>{const k=r.some(_=>_.id===C.id&&_.type==="dataset");return d.jsxs("div",{className:"flex cursor-pointer items-start space-x-2 rounded p-2 hover:bg-gray-50",onClick:()=>x(C),children:[d.jsx(Ln,{id:`dataset-${C.id}`,checked:k,onCheckedChange:()=>x(C),onClick:_=>_.stopPropagation(),disabled:b}),d.jsxs("div",{className:"flex flex-1 flex-col gap-1",children:[d.jsx(fe,{className:"cursor-pointer font-medium",children:C.label||C.name}),d.jsx("span",{className:"text-xs text-gray-500",children:C.description})]})]},C.label||C.name)})})]})]})]})}function XP({open:e,onOpenChange:t,dataSource:n,fallbackDataSource:r,dialogMode:o,incomingSelectedEntities:s}){const{tokenProps:i}=qe(),{allowedSemanticDomains:a}=i,[l,c]=N.useState([]),{updateDataSource:u}=jo(),f=ee(R=>R.isVisualEditing),h=ee(R=>R.dashboard.aiContext),{setAiContext:p}=on(),m=N.useRef(null),[g,b]=N.useState(!1);mQ();const y=a&&a.length>0,x=!y,v=y&&a.length===1?a[0]:void 0,w=N.useCallback(R=>{u({...n,connectionId:(n==null?void 0:n.connectionId)||"",connectionType:(n==null?void 0:n.connectionType)||"",mode:R,selectedEntities:(n==null?void 0:n.selectedEntities)||[]})},[n,u]),S=N.useCallback(R=>{u({...n,...R})},[n,u]);N.useEffect(()=>{y&&n.mode!=="semanticDomain"&&w("semanticDomain")},[y,n.mode,w]),N.useEffect(()=>{v&&!n.semanticDomainId&&S({semanticDomainId:v})},[v,n.semanticDomainId,S]),N.useEffect(()=>{e?c(s||[]):(m.current=null,b(!1))},[e,n==null?void 0:n.selectedEntities,o,u,s,n]);const C=R=>{const F=l.filter(T=>!(T.name===R.name&&T.type===R.type));c(F)},k=()=>{c([]),o==="aiContext"&&(p({...h,selectedEntities:[]}),t(!1)),o==="dataSource"&&(u({...r,...n,selectedEntities:[]}),t(!1))},_=N.useCallback(R=>{c(R)},[]),M=N.useCallback(()=>{m.current&&m.current()},[]),j=N.useCallback(R=>{m.current=R,b(!0)},[]);function A(){var R,F;if(o==="aiContext")f&&u(n),p({...h,selectedEntities:l}),t(!1);else if(o==="dataSource"){if(n.mode==="semanticDomain"){const T=(R=l==null?void 0:l[0])==null?void 0:R.connectionId,D=(F=l==null?void 0:l[0])==null?void 0:F.connectionType;u({...n,connectionId:T,connectionType:D,selectedEntities:l})}else u({...n,selectedEntities:l});t(!1)}}return d.jsx(Rs,{open:e,onOpenChange:t,children:d.jsx(ts,{className:"flex max-w-2xl flex-col",children:d.jsxs("div",{children:[d.jsxs(ns,{className:"flex-shrink-0",children:[d.jsx(rs,{children:o==="aiContext"?"Data Context":"Select Data Source"}),d.jsx(ai,{children:o==="aiContext"?"Set the overall data scope for the dashboard":"Select data sets to analyze"})]}),d.jsx("div",{className:"flex-1 grow overflow-y-auto py-4",children:d.jsxs("div",{className:"space-y-4",children:[x&&d.jsx("div",{className:"space-y-2",children:d.jsx(ea,{defaultValue:(n==null?void 0:n.mode)||"database",value:(n==null?void 0:n.mode)||"database",onValueChange:w,className:"w-full",children:d.jsxs(ci,{className:"grid w-full grid-cols-2",children:[d.jsx(Qn,{value:"database",children:"Direct Source"}),d.jsx(Qn,{value:"semanticDomain",children:"Semantic Domain"})]})})}),(n==null?void 0:n.mode)==="semanticDomain"&&d.jsx(OYe,{dataSource:n,onDataSourceUpdate:S,selectedEntities:l,onSelectionChange:_,allowedDomainIds:a||[],isRestricted:y,autoSelectedDomainId:v,onRegisterSelectAll:j}),(n==null?void 0:n.mode)==="database"&&x&&d.jsx(IYe,{dataSource:n,onDataSourceUpdate:S,selectedEntities:l,onSelectionChange:_,onRegisterSelectAll:j})]})}),d.jsx(_Ye,{selectedEntities:l,onDeselectEntity:C}),d.jsx(Ps,{className:"flex-shrink-0",children:d.jsx("div",{className:"flex w-full justify-between",children:d.jsxs("div",{className:"flex grow justify-end gap-2",children:[d.jsx(ce,{variant:"outline",onClick:M,disabled:!g,children:"Select All"}),d.jsx(ce,{variant:"outline",onClick:k,disabled:l.length===0,children:"Clear All"}),d.jsx(ce,{variant:"outline",onClick:()=>t(!1),children:"Close"}),d.jsx(ce,{onClick:A,disabled:l.length===0,children:"Add"})]})})})]})})})}function FYe({onFilesSelected:e,disabled:t=!1,currentFileCount:n=0,className:r}){const o=N.useRef(null),s=async a=>{const l=Array.from(a.target.files||[]);if(l.length===0)return;const c=va-n;if(l.length>c){Ge.error(`You can only attach ${va} files per message. You have ${c} slot(s) remaining.`);return}const{valid:u,errors:f}=YK(l);if(f.forEach(({file:h,error:p})=>{Ge.error(`${h.name}: ${p}`)}),u.length>0)try{const h=await Promise.all(u.map(p=>DP(p)));e(h)}catch(h){console.error("Failed to process files:",h),Ge.error("Failed to process one or more files")}o.current&&(o.current.value="")},i=()=>{var a;(a=o.current)==null||a.click()};return d.jsxs(d.Fragment,{children:[d.jsx("input",{ref:o,type:"file",multiple:!0,accept:".png,.jpg,.jpeg,.gif,.webp,.pdf,.txt,.md,.csv,.json,.xml,.js,.jsx,.ts,.tsx,.py,.sql",onChange:s,className:"hidden",disabled:t||n>=va}),d.jsx(ce,{variant:"secondary",size:"sm",className:`h-7 px-2 ${r}`,onClick:i,disabled:t||n>=va,title:n>=va?`Maximum ${va} files allowed`:"Attach files",children:d.jsx(M_,{className:"h-4 w-4 text-muted-foreground"})})]})}function $Ye({children:e,onFilesDropped:t,disabled:n=!1,currentFileCount:r=0,className:o}){const[s,i]=N.useState(!1),a=N.useCallback(f=>{f.preventDefault(),f.stopPropagation(),n||i(!0)},[n]),l=N.useCallback(f=>{f.preventDefault(),f.stopPropagation();const h=f.currentTarget.getBoundingClientRect(),p=f.clientX,m=f.clientY;(p<h.left||p>=h.right||m<h.top||m>=h.bottom)&&i(!1)},[]),c=N.useCallback(f=>{f.preventDefault(),f.stopPropagation()},[]),u=N.useCallback(async f=>{if(f.preventDefault(),f.stopPropagation(),i(!1),n)return;const h=Array.from(f.dataTransfer.files);if(h.length===0)return;const p=va-r;if(h.length>p){Ge.error(`You can only attach ${va} files per message. You have ${p} slot(s) remaining.`);return}const{valid:m,errors:g}=YK(h);if(g.forEach(({file:b,error:y})=>{Ge.error(`${b.name}: ${y}`)}),m.length>0)try{const b=await Promise.all(m.map(y=>DP(y)));t(b),Ge.success(`${b.length} file(s) attached successfully`)}catch(b){console.error("Failed to process files:",b),Ge.error("Failed to process one or more files")}},[n,r,t]);return d.jsxs("div",{className:Y("relative",o),onDragEnter:a,onDragLeave:l,onDragOver:c,onDrop:u,children:[e,s&&!n&&d.jsx("div",{className:"pointer-events-none absolute inset-0 z-50 flex items-center justify-center rounded-lg border-2 border-dashed border-primary bg-primary/5 backdrop-blur-sm",children:d.jsxs("div",{className:"flex flex-col items-center gap-2",children:[d.jsx(Kv,{className:"h-8 w-8 text-primary"}),d.jsx("p",{className:"text-sm font-medium text-primary",children:"Drop files here to upload"}),d.jsxs("p",{className:"text-xs text-muted-foreground",children:[va-r," slot(s) available"]})]})})]})}const QP=E.forwardRef(({className:e,...t},n)=>d.jsx(Bw,{className:Y("peer inline-flex h-[22px] w-[36px] shrink-0 cursor-pointer items-center rounded-full border-2 border-transparent transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary data-[state=unchecked]:bg-input",e),...t,ref:n,children:d.jsx(Y9,{className:Y("pointer-events-none block size-4 rounded-full bg-background shadow-lg ring-0 transition-transform data-[state=checked]:translate-x-4 data-[state=unchecked]:translate-x-0")})}));QP.displayName=Bw.displayName;function bQ(e,[t,n]){return Math.min(n,Math.max(t,e))}function Yd(e,t,{checkForDefaultPrevented:n=!0}={}){return function(o){if(e==null||e(o),n===!1||!o.defaultPrevented)return t==null?void 0:t(o)}}function m$(e,t){if(typeof e=="function")return e(t);e!=null&&(e.current=t)}function LYe(...e){return t=>{let n=!1;const r=e.map(o=>{const s=m$(o,t);return!n&&typeof s=="function"&&(n=!0),s});if(n)return()=>{for(let o=0;o<r.length;o++){const s=r[o];typeof s=="function"?s():m$(e[o],null)}}}}function tc(...e){return E.useCallback(LYe(...e),e)}function yQ(e,t=[]){let n=[];function r(s,i){const a=E.createContext(i),l=n.length;n=[...n,i];const c=f=>{var y;const{scope:h,children:p,...m}=f,g=((y=h==null?void 0:h[e])==null?void 0:y[l])||a,b=E.useMemo(()=>m,Object.values(m));return d.jsx(g.Provider,{value:b,children:p})};c.displayName=s+"Provider";function u(f,h){var g;const p=((g=h==null?void 0:h[e])==null?void 0:g[l])||a,m=E.useContext(p);if(m)return m;if(i!==void 0)return i;throw new Error(`\`${f}\` must be used within \`${s}\``)}return[c,u]}const o=()=>{const s=n.map(i=>E.createContext(i));return function(a){const l=(a==null?void 0:a[e])||s;return E.useMemo(()=>({[`__scope${e}`]:{...a,[e]:l}}),[a,l])}};return o.scopeName=e,[r,zYe(o,...t)]}function zYe(...e){const t=e[0];if(e.length===1)return t;const n=()=>{const r=e.map(o=>({useScope:o(),scopeName:o.scopeName}));return function(s){const i=r.reduce((a,{useScope:l,scopeName:c})=>{const f=l(s)[`__scope${c}`];return{...a,...f}},{});return E.useMemo(()=>({[`__scope${t.scopeName}`]:i}),[i])}};return n.scopeName=t.scopeName,n}var xQ=globalThis!=null&&globalThis.document?E.useLayoutEffect:()=>{},BYe=E[" useInsertionEffect ".trim().toString()]||xQ;function VYe({prop:e,defaultProp:t,onChange:n=()=>{},caller:r}){const[o,s,i]=HYe({defaultProp:t,onChange:n}),a=e!==void 0,l=a?e:o;{const u=E.useRef(e!==void 0);E.useEffect(()=>{const f=u.current;f!==a&&console.warn(`${r} is changing from ${f?"controlled":"uncontrolled"} to ${a?"controlled":"uncontrolled"}. Components should not switch from controlled to uncontrolled (or vice versa). Decide between using a controlled or uncontrolled value for the lifetime of the component.`),u.current=a},[a,r])}const c=E.useCallback(u=>{var f;if(a){const h=UYe(u)?u(e):u;h!==e&&((f=i.current)==null||f.call(i,h))}else s(u)},[a,e,s,i]);return[l,c]}function HYe({defaultProp:e,onChange:t}){const[n,r]=E.useState(e),o=E.useRef(n),s=E.useRef(t);return BYe(()=>{s.current=t},[t]),E.useEffect(()=>{var i;o.current!==n&&((i=s.current)==null||i.call(s,n),o.current=n)},[n,o]),[n,r,s]}function UYe(e){return typeof e=="function"}var WYe=E.createContext(void 0);function qYe(e){const t=E.useContext(WYe);return e||t||"ltr"}function GYe(e){const t=E.useRef({value:e,previous:e});return E.useMemo(()=>(t.current.value!==e&&(t.current.previous=t.current.value,t.current.value=e),t.current.previous),[e])}function YYe(e){const[t,n]=E.useState(void 0);return xQ(()=>{if(e){n({width:e.offsetWidth,height:e.offsetHeight});const r=new ResizeObserver(o=>{if(!Array.isArray(o)||!o.length)return;const s=o[0];let i,a;if("borderBoxSize"in s){const l=s.borderBoxSize,c=Array.isArray(l)?l[0]:l;i=c.inlineSize,a=c.blockSize}else i=e.offsetWidth,a=e.offsetHeight;n({width:i,height:a})});return r.observe(e,{box:"border-box"}),()=>r.unobserve(e)}else n(void 0)},[e]),t}var ZYe=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"],Lb=ZYe.reduce((e,t)=>{const n=Js(`Primitive.${t}`),r=E.forwardRef((o,s)=>{const{asChild:i,...a}=o,l=i?n:t;return typeof window<"u"&&(window[Symbol.for("radix-ui")]=!0),d.jsx(l,{...a,ref:s})});return r.displayName=`Primitive.${t}`,{...e,[t]:r}},{});function KYe(e){const t=e+"CollectionProvider",[n,r]=yQ(t),[o,s]=n(t,{collectionRef:{current:null},itemMap:new Map}),i=g=>{const{scope:b,children:y}=g,x=N.useRef(null),v=N.useRef(new Map).current;return d.jsx(o,{scope:b,itemMap:v,collectionRef:x,children:y})};i.displayName=t;const a=e+"CollectionSlot",l=Js(a),c=N.forwardRef((g,b)=>{const{scope:y,children:x}=g,v=s(a,y),w=tc(b,v.collectionRef);return d.jsx(l,{ref:w,children:x})});c.displayName=a;const u=e+"CollectionItemSlot",f="data-radix-collection-item",h=Js(u),p=N.forwardRef((g,b)=>{const{scope:y,children:x,...v}=g,w=N.useRef(null),S=tc(b,w),C=s(u,y);return N.useEffect(()=>(C.itemMap.set(w,{ref:w,...v}),()=>void C.itemMap.delete(w))),d.jsx(h,{[f]:"",ref:S,children:x})});p.displayName=u;function m(g){const b=s(e+"CollectionConsumer",g);return N.useCallback(()=>{const x=b.collectionRef.current;if(!x)return[];const v=Array.from(x.querySelectorAll(`[${f}]`));return Array.from(b.itemMap.values()).sort((C,k)=>v.indexOf(C.ref.current)-v.indexOf(k.ref.current))},[b.collectionRef,b.itemMap])}return[{Provider:i,Slot:c,ItemSlot:p},m,r]}var vQ=["PageUp","PageDown"],wQ=["ArrowUp","ArrowDown","ArrowLeft","ArrowRight"],SQ={"from-left":["Home","PageDown","ArrowDown","ArrowLeft"],"from-right":["Home","PageDown","ArrowDown","ArrowRight"],"from-bottom":["Home","PageDown","ArrowDown","ArrowLeft"],"from-top":["Home","PageDown","ArrowUp","ArrowLeft"]},zh="Slider",[Xk,XYe,QYe]=KYe(zh),[CQ,eQe]=yQ(zh,[QYe]),[JYe,Q1]=CQ(zh),EQ=E.forwardRef((e,t)=>{const{name:n,min:r=0,max:o=100,step:s=1,orientation:i="horizontal",disabled:a=!1,minStepsBetweenThumbs:l=0,defaultValue:c=[r],value:u,onValueChange:f=()=>{},onValueCommit:h=()=>{},inverted:p=!1,form:m,...g}=e,b=E.useRef(new Set),y=E.useRef(0),v=i==="horizontal"?eZe:tZe,[w=[],S]=VYe({prop:u,defaultProp:c,onChange:A=>{var F;(F=[...b.current][y.current])==null||F.focus(),f(A)}}),C=E.useRef(w);function k(A){const R=iZe(w,A);j(A,R)}function _(A){j(A,y.current)}function M(){const A=C.current[y.current];w[y.current]!==A&&h(w)}function j(A,R,{commit:F}={commit:!1}){const T=uZe(s),D=dZe(Math.round((A-r)/s)*s+r,T),O=bQ(D,[r,o]);S((z=[])=>{const V=oZe(z,O,R);if(cZe(V,l*s)){y.current=V.indexOf(O);const $=String(V)!==String(z);return $&&F&&h(V),$?V:z}else return z})}return d.jsx(JYe,{scope:e.__scopeSlider,name:n,disabled:a,min:r,max:o,valueIndexToChangeRef:y,thumbs:b.current,values:w,orientation:i,form:m,children:d.jsx(Xk.Provider,{scope:e.__scopeSlider,children:d.jsx(Xk.Slot,{scope:e.__scopeSlider,children:d.jsx(v,{"aria-disabled":a,"data-disabled":a?"":void 0,...g,ref:t,onPointerDown:Yd(g.onPointerDown,()=>{a||(C.current=w)}),min:r,max:o,inverted:p,onSlideStart:a?void 0:k,onSlideMove:a?void 0:_,onSlideEnd:a?void 0:M,onHomeKeyDown:()=>!a&&j(r,0,{commit:!0}),onEndKeyDown:()=>!a&&j(o,w.length-1,{commit:!0}),onStepKeyDown:({event:A,direction:R})=>{if(!a){const D=vQ.includes(A.key)||A.shiftKey&&wQ.includes(A.key)?10:1,O=y.current,z=w[O],V=s*D*R;j(z+V,O,{commit:!0})}}})})})})});EQ.displayName=zh;var[NQ,kQ]=CQ(zh,{startEdge:"left",endEdge:"right",size:"width",direction:1}),eZe=E.forwardRef((e,t)=>{const{min:n,max:r,dir:o,inverted:s,onSlideStart:i,onSlideMove:a,onSlideEnd:l,onStepKeyDown:c,...u}=e,[f,h]=E.useState(null),p=tc(t,v=>h(v)),m=E.useRef(void 0),g=qYe(o),b=g==="ltr",y=b&&!s||!b&&s;function x(v){const w=m.current||f.getBoundingClientRect(),S=[0,w.width],k=JP(S,y?[n,r]:[r,n]);return m.current=w,k(v-w.left)}return d.jsx(NQ,{scope:e.__scopeSlider,startEdge:y?"left":"right",endEdge:y?"right":"left",direction:y?1:-1,size:"width",children:d.jsx(_Q,{dir:g,"data-orientation":"horizontal",...u,ref:p,style:{...u.style,"--radix-slider-thumb-transform":"translateX(-50%)"},onSlideStart:v=>{const w=x(v.clientX);i==null||i(w)},onSlideMove:v=>{const w=x(v.clientX);a==null||a(w)},onSlideEnd:()=>{m.current=void 0,l==null||l()},onStepKeyDown:v=>{const S=SQ[y?"from-left":"from-right"].includes(v.key);c==null||c({event:v,direction:S?-1:1})}})})}),tZe=E.forwardRef((e,t)=>{const{min:n,max:r,inverted:o,onSlideStart:s,onSlideMove:i,onSlideEnd:a,onStepKeyDown:l,...c}=e,u=E.useRef(null),f=tc(t,u),h=E.useRef(void 0),p=!o;function m(g){const b=h.current||u.current.getBoundingClientRect(),y=[0,b.height],v=JP(y,p?[r,n]:[n,r]);return h.current=b,v(g-b.top)}return d.jsx(NQ,{scope:e.__scopeSlider,startEdge:p?"bottom":"top",endEdge:p?"top":"bottom",size:"height",direction:p?1:-1,children:d.jsx(_Q,{"data-orientation":"vertical",...c,ref:f,style:{...c.style,"--radix-slider-thumb-transform":"translateY(50%)"},onSlideStart:g=>{const b=m(g.clientY);s==null||s(b)},onSlideMove:g=>{const b=m(g.clientY);i==null||i(b)},onSlideEnd:()=>{h.current=void 0,a==null||a()},onStepKeyDown:g=>{const y=SQ[p?"from-bottom":"from-top"].includes(g.key);l==null||l({event:g,direction:y?-1:1})}})})}),_Q=E.forwardRef((e,t)=>{const{__scopeSlider:n,onSlideStart:r,onSlideMove:o,onSlideEnd:s,onHomeKeyDown:i,onEndKeyDown:a,onStepKeyDown:l,...c}=e,u=Q1(zh,n);return d.jsx(Lb.span,{...c,ref:t,onKeyDown:Yd(e.onKeyDown,f=>{f.key==="Home"?(i(f),f.preventDefault()):f.key==="End"?(a(f),f.preventDefault()):vQ.concat(wQ).includes(f.key)&&(l(f),f.preventDefault())}),onPointerDown:Yd(e.onPointerDown,f=>{const h=f.target;h.setPointerCapture(f.pointerId),f.preventDefault(),u.thumbs.has(h)?h.focus():r(f)}),onPointerMove:Yd(e.onPointerMove,f=>{f.target.hasPointerCapture(f.pointerId)&&o(f)}),onPointerUp:Yd(e.onPointerUp,f=>{const h=f.target;h.hasPointerCapture(f.pointerId)&&(h.releasePointerCapture(f.pointerId),s(f))})})}),jQ="SliderTrack",MQ=E.forwardRef((e,t)=>{const{__scopeSlider:n,...r}=e,o=Q1(jQ,n);return d.jsx(Lb.span,{"data-disabled":o.disabled?"":void 0,"data-orientation":o.orientation,...r,ref:t})});MQ.displayName=jQ;var Qk="SliderRange",RQ=E.forwardRef((e,t)=>{const{__scopeSlider:n,...r}=e,o=Q1(Qk,n),s=kQ(Qk,n),i=E.useRef(null),a=tc(t,i),l=o.values.length,c=o.values.map(h=>TQ(h,o.min,o.max)),u=l>1?Math.min(...c):0,f=100-Math.max(...c);return d.jsx(Lb.span,{"data-orientation":o.orientation,"data-disabled":o.disabled?"":void 0,...r,ref:a,style:{...e.style,[s.startEdge]:u+"%",[s.endEdge]:f+"%"}})});RQ.displayName=Qk;var Jk="SliderThumb",PQ=E.forwardRef((e,t)=>{const n=XYe(e.__scopeSlider),[r,o]=E.useState(null),s=tc(t,a=>o(a)),i=E.useMemo(()=>r?n().findIndex(a=>a.ref.current===r):-1,[n,r]);return d.jsx(nZe,{...e,ref:s,index:i})}),nZe=E.forwardRef((e,t)=>{const{__scopeSlider:n,index:r,name:o,...s}=e,i=Q1(Jk,n),a=kQ(Jk,n),[l,c]=E.useState(null),u=tc(t,x=>c(x)),f=l?i.form||!!l.closest("form"):!0,h=YYe(l),p=i.values[r],m=p===void 0?0:TQ(p,i.min,i.max),g=sZe(r,i.values.length),b=h==null?void 0:h[a.size],y=b?aZe(b,m,a.direction):0;return E.useEffect(()=>{if(l)return i.thumbs.add(l),()=>{i.thumbs.delete(l)}},[l,i.thumbs]),d.jsxs("span",{style:{transform:"var(--radix-slider-thumb-transform)",position:"absolute",[a.startEdge]:`calc(${m}% + ${y}px)`},children:[d.jsx(Xk.ItemSlot,{scope:e.__scopeSlider,children:d.jsx(Lb.span,{role:"slider","aria-label":e["aria-label"]||g,"aria-valuemin":i.min,"aria-valuenow":p,"aria-valuemax":i.max,"aria-orientation":i.orientation,"data-orientation":i.orientation,"data-disabled":i.disabled?"":void 0,tabIndex:i.disabled?void 0:0,...s,ref:u,style:p===void 0?{display:"none"}:e.style,onFocus:Yd(e.onFocus,()=>{i.valueIndexToChangeRef.current=r})})}),f&&d.jsx(DQ,{name:o??(i.name?i.name+(i.values.length>1?"[]":""):void 0),form:i.form,value:p},r)]})});PQ.displayName=Jk;var rZe="RadioBubbleInput",DQ=E.forwardRef(({__scopeSlider:e,value:t,...n},r)=>{const o=E.useRef(null),s=tc(o,r),i=GYe(t);return E.useEffect(()=>{const a=o.current;if(!a)return;const l=window.HTMLInputElement.prototype,u=Object.getOwnPropertyDescriptor(l,"value").set;if(i!==t&&u){const f=new Event("input",{bubbles:!0});u.call(a,t),a.dispatchEvent(f)}},[i,t]),d.jsx(Lb.input,{style:{display:"none"},...n,ref:s,defaultValue:t})});DQ.displayName=rZe;function oZe(e=[],t,n){const r=[...e];return r[n]=t,r.sort((o,s)=>o-s)}function TQ(e,t,n){const s=100/(n-t)*(e-t);return bQ(s,[0,100])}function sZe(e,t){return t>2?`Value ${e+1} of ${t}`:t===2?["Minimum","Maximum"][e]:void 0}function iZe(e,t){if(e.length===1)return 0;const n=e.map(o=>Math.abs(o-t)),r=Math.min(...n);return n.indexOf(r)}function aZe(e,t,n){const r=e/2,s=JP([0,50],[0,r]);return(r-s(t)*n)*n}function lZe(e){return e.slice(0,-1).map((t,n)=>e[n+1]-t)}function cZe(e,t){if(t>0){const n=lZe(e);return Math.min(...n)>=t}return!0}function JP(e,t){return n=>{if(e[0]===e[1]||t[0]===t[1])return t[0];const r=(t[1]-t[0])/(e[1]-e[0]);return t[0]+r*(n-e[0])}}function uZe(e){return(String(e).split(".")[1]||"").length}function dZe(e,t){const n=Math.pow(10,t);return Math.round(e*n)/n}var AQ=EQ,fZe=MQ,hZe=RQ,pZe=PQ;const IQ=E.forwardRef(({className:e,...t},n)=>d.jsxs(AQ,{ref:n,className:Y("relative flex w-full touch-none select-none items-center",e),...t,children:[d.jsx(fZe,{className:"relative h-2 w-full grow overflow-hidden rounded-full bg-secondary",children:d.jsx(hZe,{className:"absolute h-full bg-primary"})}),d.jsx(pZe,{className:"block h-5 w-5 rounded-full border-2 border-primary bg-background ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50"})]}));IQ.displayName=AQ.displayName;const fp=["low","medium","high"],g$={low:"Low",medium:"Medium",high:"High"},mZe={low:"bg-green-100 text-green-700 dark:bg-green-950 dark:text-green-300",medium:"bg-amber-100 text-amber-700 dark:bg-amber-950 dark:text-amber-300",high:"bg-orange-100 text-orange-700 dark:bg-orange-950 dark:text-orange-300"};function gZe({value:e,onValueChange:t}){const n=l=>fp.indexOf(l),r=l=>fp[l],[o,s]=N.useState([n(e)]);N.useEffect(()=>{const l=fp.indexOf(e);s([l])},[e]);const i=l=>{s(l),t(r(l[0]))},a=fp[o[0]];return d.jsxs("div",{className:"w-full space-y-3",children:[d.jsxs("div",{className:"flex justify-between items-center",children:[d.jsx("span",{className:"text-sm font-medium",children:"Reasoning Effort"}),d.jsx("span",{className:`text-xs px-2 py-0.5 rounded-md font-medium ${mZe[a]}`,children:g$[a]})]}),d.jsx(IQ,{className:"[&_[role=slider]]:focus:outline-none [&_[role=slider]]:focus:ring-0 [&_[role=slider]]:focus:ring-offset-0 [&_[role=slider]]:focus-visible:outline-none [&_[role=slider]]:focus-visible:ring-0 [&_[role=slider]]:focus-visible:ring-offset-0",value:o,min:0,max:2,step:1,onValueChange:i}),d.jsx("div",{className:"flex justify-between text-xs text-muted-foreground px-1",children:fp.map(l=>d.jsx("span",{children:g$[l]},l))})]})}const eD=N.forwardRef(({input:e,setInput:t,handleInputChange:n,handleSubmit:r,isLoading:o,stop:s,onFocus:i,status:a,assistantType:l},c)=>{const[u,f]=N.useState(!1),[h,p]=N.useState(!1),[m,g]=N.useState(!1),b=N.useRef(null),y=Fg(),x=gie(),v=mie(),{setCurrentAIContext:w,updateSelectedEntities:S,setReasoningEffort:C,setShowReasoning:k}=tw(),{queueMessage:_}=hh(),{addFileAttachment:M,removeFileAttachment:j,clearFileAttachments:A,getFileAttachments:R}=H_(),F=V_(l),T=Ae(U=>U.card.dataSource),D=ee(U=>{var G;return(G=U.dashboard.aiContext)==null?void 0:G.selectedEntities});N.useEffect(()=>{c&&"current"in c&&(c.current=b.current)},[c]);const O=N.useCallback(()=>{const U=b.current;if(U){if(!e||e.length===0){U.style.height="10px";return}U.style.height="auto";const G=Math.min(Math.max(U.scrollHeight,10),200);U.style.height=`${G}px`}},[e]);N.useEffect(()=>{O()},[O]),N.useEffect(()=>{const U=setTimeout(()=>{O()},0);return()=>clearTimeout(U)},[O]);const z=()=>{const U=e.trim();!U&&F.length===0||(a!=="ready"?(_(l,U,F),t(""),A(l)):r({preventDefault:()=>{}}))},V=U=>{U.key==="Enter"&&!U.shiftKey&&(U.preventDefault(),z()),U.key==="@"&&f(!0)},$=N.useCallback(U=>{const G=QBe(U.nativeEvent);G.length>0&&(U.preventDefault(),G.forEach(async Q=>{const re=await DP(Q);M(l,re)}))},[M,l]),I=N.useCallback(U=>{U.forEach(G=>{M(l,G)})},[M,l]),B=N.useCallback(U=>{U.forEach(G=>{M(l,G)})},[M,l]),L=N.useCallback(U=>{j(l,U)},[j,l]),P=U=>{if(y.selectedEntities.some(Q=>Q.id&&Q.id===U.id||Q.name===U.name)){const Q=y.selectedEntities.filter(re=>!(re.id&&re.id===U.id||re.name===U.name));w({selectedEntities:Q})}else{const Q=[...y.selectedEntities,U];w({selectedEntities:Q})}},H=U=>{P(U)},q=U=>{var re;if(!y.selectedEntities.some(J=>J.id&&J.id===U.id||J.name===U.name)){const J=[...y.selectedEntities,U];w({selectedEntities:J})}const Q="label"in U?U.label:U.name;t(e+`@${Q} `),f(!1),(re=b.current)==null||re.focus()},K=U=>{const G=y.selectedEntities.filter(J=>!(J.id&&J.id===U.id||J.name===U.name));w({selectedEntities:G});const re=`@${"label"in U?U.label:U.name}`;e.includes(re)&&t(e.replace(re,"").trim())},W=U=>{const G=new Set(U.map(J=>J.id||J.name)),Q=y.selectedEntities.filter(J=>!G.has(J.id||J.name));w({selectedEntities:Q});let re=e;U.forEach(J=>{const ae=`@${"label"in J?J.label:J.name}`;re=re.replace(ae,"").trim()}),t(re)};return d.jsxs($Ye,{onFilesDropped:I,currentFileCount:F.length,disabled:o,className:"space-y-4",children:[d.jsx(NYe,{entities:y.selectedEntities,availableEntities:D||[],onRemoveEntity:K,onRemoveEntities:W}),F.length>0&&d.jsx(JBe,{files:F,onRemove:L,showRemove:!o,className:"mb-2"}),d.jsxs("div",{className:"rounded-lg border border-border bg-background shadow-sm focus-within:ring-1 focus-within:ring-foreground/40",children:[d.jsx("textarea",{ref:b,value:e,onChange:n,onKeyDown:V,onPaste:$,onFocus:()=>{O(),i==null||i()},placeholder:"Ask a question...",className:"max-h-[200px] min-h-[40px] w-full resize-none overflow-y-auto border-0 bg-transparent px-3 py-2 text-sm text-foreground placeholder:text-muted-foreground/50 focus:outline-none focus:ring-0",style:{height:"40px",lineHeight:"1.5"}}),d.jsxs("div",{className:"flex items-center justify-between border-foreground/10 px-3 py-2",children:[d.jsxs("div",{className:"flex items-center gap-2",children:[d.jsxs(bs,{open:u,onOpenChange:f,children:[d.jsx(ys,{asChild:!0,children:d.jsx(ce,{variant:"secondary",size:"sm",className:"h-7 px-2",title:"Add entity",children:d.jsx(One,{className:"h-4 w-4 text-muted-foreground"})})}),d.jsx(xs,{className:"w-80 p-0",align:"start",side:"top",sideOffset:8,onOpenAutoFocus:U=>U.preventDefault(),children:d.jsx(CYe,{isOpen:!0,onSelect:P,onDeselect:H,onClose:()=>{var U;f(!1),(U=b.current)==null||U.focus()},availableEntities:D||[],selectedEntities:y.selectedEntities,onTabComplete:q,onSelectAll:()=>{D&&w({selectedEntities:D})},onRemoveAll:()=>{w({selectedEntities:[]})},onAddContext:()=>{f(!1),p(!0)}})})]}),d.jsx(FYe,{onFilesSelected:B,disabled:o,currentFileCount:F.length}),d.jsxs(bs,{open:m,onOpenChange:g,children:[d.jsx(ys,{asChild:!0,children:d.jsx(ce,{variant:"secondary",size:"sm",className:"h-7 px-2",title:"Reasoning settings",children:d.jsx(tx,{className:"h-4 w-4 text-muted-foreground"})})}),d.jsx(xs,{className:"w-72",align:"start",side:"top",sideOffset:8,children:d.jsxs("div",{className:"space-y-4",children:[d.jsx(gZe,{value:v,onValueChange:U=>{C(U)}}),d.jsxs("div",{className:"flex items-center space-x-2",children:[d.jsx(QP,{id:"show-reasoning",checked:x,onCheckedChange:k}),d.jsx(fe,{htmlFor:"show-reasoning",className:"font-normal",children:"Show reasoning"})]})]})})]})]}),d.jsxs("div",{className:"flex items-center gap-2",children:[o&&d.jsx(ce,{className:"rounded-full",size:"sm",onClick:s,children:d.jsx(Kne,{className:"size-3.5 bg-background"})}),!o&&d.jsx(ce,{disabled:!e.trim()&&F.length===0,size:"sm",variant:a!=="ready"?"secondary":"default",onClick:z,title:a!=="ready"?"Message will be queued":void 0,children:d.jsx(uL,{className:"size-4"})})]})]})]}),d.jsx(XP,{incomingSelectedEntities:y.selectedEntities,open:h,onOpenChange:p,dataSource:T||ah,fallbackDataSource:ah,dialogMode:"aiContext"})]})});eD.displayName="ChatInputWithContext";function OQ({assistantType:e,className:t}){const n=p6(e),{removeFromQueue:r}=hh();return n.length===0?null:d.jsxs("div",{className:Y("space-y-2",t),children:[d.jsxs("div",{className:"flex items-center gap-1 text-xs text-muted-foreground",children:[d.jsx(Ha,{className:"h-3 w-3"}),d.jsxs("span",{children:["Pending messages (",n.length,")"]})]}),d.jsx("div",{className:"space-y-2",children:n.map(o=>d.jsx("div",{className:"group relative rounded-lg border border-dashed border-muted-foreground/30 bg-muted/30 px-3 py-2 text-sm animate-in fade-in-0 slide-in-from-bottom-1",children:d.jsxs("div",{className:"flex items-start justify-between gap-2",children:[d.jsx("div",{className:"flex-1 space-y-1",children:d.jsx("p",{className:"break-words text-foreground/70",children:o.text})}),d.jsx(ce,{variant:"ghost",size:"sm",className:"h-6 w-6 p-0 opacity-0 transition-opacity group-hover:opacity-100",onClick:()=>r(e,o.id),title:"Remove from queue",children:d.jsx(Dn,{className:"h-3 w-3"})})]})},o.id))})]})}function FQ({assistantType:e,status:t,isLoading:n,sendMessage:r}){const o=p6(e),{dequeueMessage:s}=hh();N.useEffect(()=>{if(t!=="ready"||n||!(o&&o.length>0))return;const a=s(e);a&&r({role:"user",parts:[{type:"text",text:a.text}]})},[t,n,o,s,r,e])}function $Q(e,t={}){const{threshold:n=50,delay:r=0,dependencies:o=[],forceScrollOnStream:s=!0}=t,i=N.useRef(null),[a,l]=N.useState(!0),[c,u]=N.useState(!0),[f,h]=N.useState(!1),[p,m]=N.useState(0),g=N.useRef(),b=N.useRef(e.length),y=N.useRef(!1),x=N.useRef(!1),v=N.useRef(0),w=N.useRef(0),S=N.useRef(),C=N.useCallback(()=>{const j=i.current;if(!j)return!0;const{scrollTop:A,scrollHeight:R,clientHeight:F}=j;return R-A-F<=n},[n]),k=N.useCallback((j={})=>{const A=i.current;if(!A)return;const{force:R=!1,instant:F=!1}=j;if(!a&&!R)return;const D=Date.now()-w.current;if(!R&&!F&&D<10)return;g.current&&clearTimeout(g.current),S.current&&clearTimeout(S.current);const O=()=>{x.current=!0,w.current=Date.now(),requestAnimationFrame(()=>{A&&(A.scrollTop=A.scrollHeight,u(!0),h(!1),m(0),setTimeout(()=>{x.current=!1},20))})};!F&&r>0?S.current=setTimeout(O,r):O()},[a,r]),_=N.useCallback(()=>{const j=i.current;if(!j||x.current)return;const A=j.scrollTop,R=Math.abs(A-v.current);v.current=A,R>5&&(y.current=!0);const F=C();u(F),F?(l(!0),h(!1),m(0),y.current=!1):y.current&&l(!1),y.current&&setTimeout(()=>{y.current=!1},200)},[C]),M=N.useCallback(()=>{m(0),h(!1)},[]);return N.useEffect(()=>(S.current&&clearTimeout(S.current),S.current=setTimeout(()=>{let j=!1;if(s&&e.length>0){const F=e[e.length-1];(F==null?void 0:F.role)==="assistant"&&(j=!0,y.current=!1)}if((a||j)&&!y.current){const F=e.length>50&&!j;k({instant:F})}const A=e.length!==b.current,R=e.length>b.current;A&&(b.current=e.length,!a&&!j&&R&&(h(!0),m(F=>F+1)))},5),()=>{S.current&&clearTimeout(S.current)}),[e,o,k,a,s]),N.useEffect(()=>{k({instant:!0})},[k]),N.useEffect(()=>()=>{g.current&&clearTimeout(g.current),S.current&&clearTimeout(S.current)},[]),{scrollRef:i,isAutoScrollEnabled:a,isAtBottom:c,hasNewMessages:f,newMessageCount:p,scrollToBottom:k,handleScroll:_,resetNewMessageCount:M}}function LQ(e,t={}){const{maxVisibleMessages:n=50,initialLoadCount:r=20,loadMoreCount:o=10}=t,[s,i]=N.useState(r),a=N.useMemo(()=>{if(e.length<=s)return e;const h=Math.max(0,e.length-s);return e.slice(h)},[e,s]),l=e.length>s,c=s>=e.length,u=N.useCallback(()=>{i(h=>Math.min(h+o,n))},[o,n]),f=N.useCallback(()=>{i(r)},[r]);return N.useEffect(()=>{c&&e.length>s&&s<n&&i(Math.min(e.length,n))},[e.length,s,c,n]),{visibleMessages:a,hasMoreMessages:l,totalMessageCount:e.length,loadMoreMessages:u,resetMessageWindow:f,isShowingAll:c}}function zQ(e){var n;if(!e||e.length===0)return{hasActiveTools:!1};const t=e[e.length-1];if(!(t!=null&&t.parts))return{hasActiveTools:!1};for(const r of t.parts){if(r.type==="reasoning"&&"state"in r&&r.state==="streaming")return{hasActiveTools:!0,activeToolText:r.text||"Reasoning...",toolType:"reasoning"};if(((n=r.type)!=null&&n.startsWith("tool-")||r.type==="dynamic-tool")&&"state"in r&&["input-streaming","input-available"].includes(r.state)){const o=r,s=o.state;return{hasActiveTools:!0,activeToolText:ZK(o.type,s),toolType:o.type}}}return{hasActiveTools:!1}}const bZe=[{title:"Show top 3 insights",subtitle:"from this dataset"},{title:"Create a bar chart for",subtitle:"sales by product category"}];function yZe({open:e,setOpen:t}){const[n,r]=N.useState(!1),[o,s]=N.useState(wm),[i,a]=N.useState(!1),[l,c]=N.useState(!1),{isLocalDev:u,isConsoleMode:f}=O1(),h=N.useRef(null);ee(be=>be.dashboard.aiScopeTables);const p=ee(be=>be.isDashboardEditing),m=ee(be=>be.selectedSheetId),{setDataSource:g}=jo(),{addFrame:b,setSelectedFrameId:y,setIsDashboardEditing:x}=on(),v=Fg(),{setCurrentAIContext:w,updateSelectedEntities:S,setReasoningEffort:C,setShowReasoning:k}=tw(),{clearQueue:_}=hh(),{clearFileAttachments:M,getFileAttachments:j}=H_(),A=V_("dashboard"),R=ee(be=>be.dashboard.aiContext),F=Ae(be=>be.card.dataSource),{assistantProfile:T}=fQ(),D=ee(be=>be.handleOpenAssistantProfile),{sendMessage:O,isLoading:z,messages:V,setMessages:$,status:I,stop:B,errorMessage:L,clearError:P}=wYe(),[H,q]=N.useState(""),K=be=>{q(be.target.value)};function W({sql:be,data:ze,cardTitle:ot,connectionId:Rt,cardType:Vt,python:Zt,cardConfig:xe,dataSource:yt}){if(console.log("handleAddNewFrame",{sql:be,data:ze,cardTitle:ot,connectionId:Rt,cardType:Vt,python:Zt,cardConfig:xe,dataSource:yt}),!m)return;const In={id:br(),title:ot||"Title",preferences:{onClickFilter:[{columnIndex:0,expression:""}],chartOptions:{indexAxis:Vt==="horizontalBar"?"y":"x"}},type:Vt,sql:be,python:Zt,dataSource:yt,config:xe,connectionId:Rt},ye={id:br(),cards:[In],activeCardId:In.id};x(!0),b(m,ye,"end"),y(ye.id)}const U=be=>{be.preventDefault();const ze=H.trim();if(!ze&&A.length===0)return;const ot=[];ze&&ot.push({type:"text",text:ze}),A.forEach(Rt=>{Rt.data&&ot.push({type:"file",mediaType:Rt.type,filename:Rt.name,url:`data:${Rt.type};base64,${Rt.data}`})}),O({role:"user",parts:ot}),q(""),M("dashboard"),ge({force:!0})};N.useEffect(()=>{var be;e&&((be=h.current)==null||be.focus())},[e]),FQ({assistantType:"dashboard",status:I,isLoading:z,sendMessage:O});const{hasActiveTools:G}=zQ(V),{visibleMessages:Q,hasMoreMessages:re,totalMessageCount:J,loadMoreMessages:ne,resetMessageWindow:ae}=LQ(V,{maxVisibleMessages:15,initialLoadCount:10,loadMoreCount:5}),{scrollRef:se,isAtBottom:oe,hasNewMessages:Ne,newMessageCount:ue,scrollToBottom:ge,handleScroll:Pe,resetNewMessageCount:at}=$Q(Q,{threshold:50,delay:0,dependencies:[I,V.length]});function Ve(be){jn();const ze={role:"user",parts:[{type:"text",text:be.title+" "+be.subtitle}]};O(ze)}function We(be){jn(),O({role:"user",parts:[{type:"text",text:be}]})}function xn(){var ot;const be=(ot=R==null?void 0:R.selectedEntities)==null?void 0:ot[0],ze={connectionId:(be==null?void 0:be.connectionId)||"",connectionType:(be==null?void 0:be.connectionType)||"",mode:(be==null?void 0:be.type)==="dataset"?"semanticDomain":"database",dbSelection:{database:(be==null?void 0:be.database)||"",schema:(be==null?void 0:be.schema)||"",entityType:(be==null?void 0:be.type)||"table"},selectedEntities:(R==null?void 0:R.selectedEntities)||[]};g(ze),c(!0)}function jn(){v.selectedEntities.length===0&&w({selectedEntities:(R==null?void 0:R.selectedEntities)||[]})}const ie=(H==null?void 0:H.length)===0&&(V==null?void 0:V.filter(be=>be.role==="user").length)===0;function me(){return d.jsx("div",{"data-role":"header",children:d.jsx("div",{className:"text-lg font-semibold",children:"Assistant"})})}function Re(){return d.jsxs(hb,{children:[d.jsx(pb,{asChild:!0,children:d.jsx(Gd,{className:"h-7 p-2 text-muted-foreground/50 hover:text-foreground",children:d.jsx(qv,{className:"size-3.5"})})}),d.jsxs(_h,{align:"end",children:[d.jsx(df,{children:"Options"}),d.jsx(mb,{}),d.jsx(lm,{checked:n,onCheckedChange:r,children:"Token Usage"}),d.jsx(lm,{checked:o,onCheckedChange:s,children:"Tool Invocations"}),d.jsx(lm,{checked:i,onCheckedChange:a,children:"System Message"})]})]})}return d.jsxs("div",{"data-role":"dashboard-assistant",className:"flex h-full grow flex-col justify-between break-words px-6 py-4",children:[d.jsxs("div",{"data-role":"header-section",className:"flex items-start justify-between gap-2",children:[me(),D&&d.jsx(ce,{variant:"outline",size:"sm",className:"h-7 p-2",onClick:D,children:(T==null?void 0:T.name)||"Default Profile"}),d.jsxs("div",{"data-role":"header-actions",className:"flex items-center",children:[f&&Re(),u&&d.jsx(Fu,{text:JSON.stringify(V,null,2),className:"h-7 p-2"}),(p||wm)&&d.jsx(Gd,{tooltip:"Add Context",className:"h-7 p-2 text-muted-foreground/50 hover:text-foreground",onClick:xn,children:d.jsx(ji,{className:"size-4"})}),d.jsx(Gd,{className:"h-7 p-2 text-muted-foreground/50 hover:text-foreground",tooltip:"New Chat",onClick:()=>{$([]),_("dashboard"),P(),ae()},children:d.jsx(fL,{className:"size-4"})}),d.jsx(Gd,{className:"h-7 p-2 text-muted-foreground/50 hover:text-foreground",onClick:()=>{t(!1)},children:d.jsx(Dn,{className:"size-4"})})]})]}),d.jsxs(ed,{"data-role":"dashboard-assistant-scroll-area",ref:se,className:"mt-4 flex flex-1 basis-0 flex-col flex-wrap justify-end pr-2",onScroll:Pe,children:[d.jsxs("div",{className:"space-y-3 pb-4",children:[re&&d.jsx("div",{className:"flex justify-center py-2",children:d.jsxs(ce,{variant:"outline",size:"sm",onClick:ne,className:"text-xs",children:["Load ",Math.min(5,J-Q.length)," ","more messages (",J-Q.length," ","hidden)"]})}),d.jsx(tX,{showTools:o,showSystemMessage:i,messages:Q,onAddToDashboard:W}),!G&&d.jsx(eX,{status:I,errorMessage:L})]}),d.jsx(Za,{orientation:"horizontal"})]}),!oe&&d.jsx("div",{className:"absolute bottom-24 right-8 z-10",children:d.jsxs(ce,{onClick:()=>{ge({force:!0}),at()},size:"sm",variant:"secondary",className:"rounded-full shadow-lg","aria-label":"Scroll to bottom",children:[d.jsx(Eo,{className:"h-4 w-4"}),Ne&&ue>0&&d.jsx("span",{className:"ml-1.5 flex h-5 w-5 items-center justify-center rounded-full bg-primary text-xs text-primary-foreground",children:ue>9?"9+":ue})]})}),d.jsxs("div",{className:"space-y-3",children:[!T&&ie&&d.jsx(nX,{onClick:Ve,placeholders:bZe}),d.jsx("div",{children:ie&&T&&d.jsx(hQ,{seedQuestions:T.seedQuestions||[],handleSeedQuestionClick:We})}),d.jsx(OQ,{assistantType:"dashboard",className:"mb-3"}),d.jsx(eD,{ref:h,setInput:q,stop:B,input:H,handleInputChange:K,handleSubmit:be=>{jn(),U(be),ge({force:!0})},isLoading:z,status:I,assistantType:"dashboard",onFocus:()=>{}})]}),d.jsx(XP,{incomingSelectedEntities:(R==null?void 0:R.selectedEntities)||[],open:l,onOpenChange:c,dataSource:F||ah,fallbackDataSource:ah,dialogMode:"aiContext"})]})}function xZe(e){const t=e.current,{getSelectedFrame:n,addFrame:r,setSelectedFrameId:o}=on(),s=ee(u=>u.dashboard.sheets),a=ee(u=>u.selectedSheetId)??(s==null?void 0:s[0].id),l=ee(u=>u.isDashboardEditing),c=ee(u=>u.isVisualEditing);N.useEffect(()=>{if(!l||c)return;async function u(p){const m=p.ctrlKey||p.metaKey;m&&p.key==="c"?(await f(),Ge.success("Card copied to clipboard"),p.preventDefault()):m&&p.key==="v"&&(await h(),p.preventDefault())}async function f(){try{const p=n();p&&await navigator.clipboard.writeText(JSON.stringify(p))}catch(p){console.error("Failed to copy text:",p)}}async function h(){if(!a)return null;try{const p=await navigator.clipboard.readText();try{const m=JSON.parse(p);if(m&&m.id){m.id=br();const g=m.activeCardId;m.cards.forEach(b=>{const y=b.id;b.id=br(),y===g&&(m.activeCardId=b.id,b.title=`${b.title} (Copy)`)}),r(a,m),o(m.id)}}catch(m){console.error("Failed to parse clipboard contents: ",m)}return p}catch(p){return console.error("Failed to paste text:",p),null}}return t==null||t.addEventListener("keydown",u),()=>t==null?void 0:t.removeEventListener("keydown",u)},[r,n,o,a,l,c,t])}function BQ(e,t){const[n,r]=N.useState(()=>{const o=localStorage.getItem(e);return o?JSON.parse(o):t});return N.useEffect(()=>{localStorage.setItem(e,JSON.stringify(n))},[n,e]),[n,r]}function VQ(){var F;const{showAssistant:e}=qe(),{preferences:t}=O1(),n=((F=t==null?void 0:t.cardDisplay)==null?void 0:F.mode)==="print",r=N.useRef(null),o=N.useRef(null),[s,i]=N.useState(!1),[a,l]=BQ("dashboardAssistantOpen",!1),c=ee(T=>T.isVisualEditing),u=ee(T=>T.themeStyle),f=ee(T=>{var D;return(D=T.dashboard)==null?void 0:D.sheets}),h=ee(T=>T.isDashboardEditing),p=ee(T=>T.selectedSheetId),{setSelectedSheetId:m,setSheetTitle:g,addSheet:b,setSheets:y}=on();xZe(o);const{setActiveAssistantType:x}=tw();N.useEffect(()=>{a&&x("dashboard")},[a,x]);function v(T){var D,O;T?((D=r.current)==null||D.resize(40),l(!0),x("dashboard")):(l(!1),(O=r.current)==null||O.resize(0),x(null))}function w(){const T={id:br(),title:"New Sheet"};b(T),m(T.id)}function S(T){T<1?(l(!1),x(null)):(l(!0),x("dashboard"))}function C(){return(u==null?void 0:u.canvasTheme)==="muted"||!(u!=null&&u.canvasTheme)?"hsl(var(--semaphor-muted))":(u==null?void 0:u.canvasTheme)==="clear"?"":u==null?void 0:u.canvasTheme}const k=(T,D)=>{T.dataTransfer.setData("tabIndex",D.toString())},_=T=>{T.preventDefault()},M=(T,D)=>{const O=T.dataTransfer.getData("tabIndex");if(O===D.toString())return;const z=Array.from(f||[]),[V]=z.splice(parseInt(O),1);z.splice(D,0,V),y(z)};function j(){var T,D;if(f&&f.length>1||h)return d.jsxs(ci,{role:"tab-list",className:"flex h-11 items-center justify-start gap-2 rounded-none border-b border-b-muted bg-transparent px-2.5 py-3",children:[f==null?void 0:f.map((O,z)=>d.jsxs(Qn,{draggable:!0,onDragStart:V=>k(V,z),onDragOver:_,onDrop:V=>M(V,z),style:{borderRadius:u==null?void 0:u.controlInputRadius},onClick:()=>m(O.id),className:"flex items-center gap-1 rounded-none border px-2 py-1",value:O.id,children:[d.jsx(ag,{enabled:h&&O.id===p,text:O.title,onSave:V=>g(O.id,V),children:O.title},O.id),h&&p===O.id&&f.length>1&&d.jsx(Dn,{className:"ml-1 size-3",onClick:()=>i(!0)})]},O.id)),h&&d.jsx("div",{style:{borderRadius:(D=(T=u==null?void 0:u.chart)==null?void 0:T.options)==null?void 0:D.borderRadius},className:"flex h-7 items-center justify-center border-none bg-muted p-2 hover:cursor-pointer dark:border-l-background",onClick:w,children:d.jsx(ks,{className:"size-3"})})]})}function A(){return d.jsx("div",{ref:o,style:{},className:"grow",children:f==null?void 0:f.map(T=>d.jsx($r,{style:{backgroundColor:C()},className:Y("mt-0",{}),value:T.id,children:d.jsx(m$e,{sheet:T})},T.id))})}function R(){var T;return d.jsxs(ea,{"data-role":"dashboard-tabs-container",className:Y("relative flex h-full flex-col",u==null?void 0:u.dashboardTabsContainer),onValueChange:D=>{m(D)},value:p||((T=f==null?void 0:f[0])==null?void 0:T.id),children:[j(),d.jsx(ed,{"data-role":"dashboard-tabs-content",className:"flex-1 grow basis-0 overflow-y-auto",children:A()}),d.jsx(Y$e,{open:s,setOpen:i})]})}return f?d.jsxs(d.Fragment,{children:[d.jsxs(AZ,{className:"flex-1 basis-0 overflow-y-auto",direction:"horizontal",children:[d.jsx(Mk,{children:R()}),e===!0&&d.jsxs(d.Fragment,{children:[d.jsx(G$e,{open:a,onTabClick:v,withHandle:!0}),d.jsx(Mk,{className:"flex grow","data-role":"dashboard-assistant-panel",onResize:S,defaultSize:a?40:0,ref:r,children:d.jsx("div",{className:"grow overflow-y-auto",children:d.jsx(yZe,{open:a,setOpen:v})})})]})]}),e===!0&&!n&&!a&&!c&&d.jsx("div",{className:"fixed bottom-6 right-6 z-50",children:d.jsx(ce,{size:"sm",variant:"outline",className:"h-12 w-12 rounded-full border-border bg-background p-0 shadow-lg hover:bg-muted",onClick:()=>v(!0),title:"Open Assistant",children:d.jsx(dL,{className:"h-5 w-5"})})})]}):null}function HQ({children:e}){return d.jsx(ii,{style:{height:"100%",width:"100%"},children:d.jsx(Xte,{defaultTheme:"system",storageKey:"vite-ui-theme",children:d.jsx(td,{delayDuration:0,children:e})})})}function UQ({children:e,preferences:t}){const{currentUser:n}=Qi(),r=N.useMemo(()=>{var o,s;return{preferences:t||{},isLocalDev:((o=t==null?void 0:t.uiMode)==null?void 0:o.developer)||!1,isConsoleMode:((s=t==null?void 0:t.uiMode)==null?void 0:s.console)||!1}},[t]);return d.jsx(lZ.Provider,{value:r,children:d.jsx(sP,{displayPreferences:t==null?void 0:t.cardDisplay,currentUser:n,children:e})})}function WQ(e){if(typeof window>"u")return null;const{preferences:t}=e;return d.jsx(Ah,{FallbackComponent:vR,children:d.jsx(j3,{dashboardProps:e,children:d.jsx(HQ,{children:d.jsx(UQ,{preferences:t,children:d.jsx("main",{className:"flex h-full flex-col",children:d.jsx(g6,{...e,type:"dashboard",children:d.jsx(VQ,{})})})})})})})}const vZe=e=>{const{currentContext:t,currentMode:n,selectedUsers:r,usersToRemove:o,usersToUpdate:s,selectedGroups:i=[],groupsToRemove:a=[],groupsToUpdate:l=[],selectedTenant:c,orgWideRole:u,allTenantsRole:f,tenantWideRole:h}=e;if(!t||!n)return null;switch(t){case"org-tab":if(n==="allOrgUsers")return{context:"org-tab",mode:"allOrgUsers",orgWideRole:u};if(n==="specificOrgUsers")return{context:"org-tab",mode:"specificOrgUsers",selectedUsers:r,usersToRemove:o,usersToUpdate:s};break;case"tenant-tab":if(n==="allTenants")return{context:"tenant-tab",mode:"allTenants",allTenantsRole:f};if(n==="allTenantUsers")return c?{context:"tenant-tab",mode:"allTenantUsers",tenantId:c,tenantWideRole:h}:null;if(n==="specificTenantUsers")return c?{context:"tenant-tab",mode:"specificTenantUsers",tenantId:c,selectedUsers:r,usersToRemove:o,usersToUpdate:s}:null;break;case"tenant-dialog":if(n==="allTenantUsers")return{context:"tenant-dialog",mode:"allTenantUsers",tenantWideRole:h};if(n==="specificTenantUsers")return{context:"tenant-dialog",mode:"specificTenantUsers",selectedUsers:r,usersToRemove:o,usersToUpdate:s};break;case"group-share":if(n==="specificGroups")return{context:"group-share",mode:"specificGroups",selectedGroups:i,groupsToRemove:a,groupsToUpdate:l};break}return null},qQ=e=>{var t,n,r;switch(e.context){case"org-tab":return e.mode==="specificOrgUsers"?e.selectedUsers.length>0||e.usersToRemove.length>0||e.usersToUpdate.length>0:!0;case"tenant-tab":if(e.mode==="allTenantUsers"||e.mode==="specificTenantUsers"){if(!e.tenantId)return!1;if(e.mode==="specificTenantUsers")return e.selectedUsers.length>0||e.usersToRemove.length>0||e.usersToUpdate.length>0}return!0;case"tenant-dialog":return e.mode==="specificTenantUsers"?e.selectedUsers.length>0||e.usersToRemove.length>0||e.usersToUpdate.length>0:!0;case"group-share":return e.mode==="specificGroups"?(((t=e.selectedGroups)==null?void 0:t.length)??0)>0||(((n=e.groupsToRemove)==null?void 0:n.length)??0)>0||(((r=e.groupsToUpdate)==null?void 0:r.length)??0)>0:!0}return!1};function GQ(e){var y;const{tokenProps:t}=qe(),n=ee(x=>x.authToken)||e,r=Ae(x=>x.selectedConnectionId),o=Ae(x=>x.selectedDatabaseName),s=Ae(x=>x.selectedDatamodelId),i=Ae(x=>x.selectedSchemaName),a=Ae(x=>x.selectedTableName),{selectedConnection:l}=Ji(),c=l==null?void 0:l.type,{data:u,isLoading:f,isFetching:h,isError:p,refetch:m}=bn({queryKey:["columns",r,o,s,i,a],queryFn:()=>qn(`${t.apiServiceUrl}/v1/columns`,(n==null?void 0:n.accessToken)||"",{connection_id:r,datamodel_id:s||"",database_name:o,schema_name:i,table_name:a}),enabled:g(c)});function g(x){return n!=null&&n.accessToken?!!(r&&o&&o!=="NA"&&i&&a||r&&(x==="S3"||x==="API")||s&&s):!1}return{columns:(y=u==null?void 0:u.columns)==null?void 0:y.map(x=>({...x,data_type:x.data_type.toLowerCase()})),isColumnsLoading:f,isColumnsFetching:h,isColumnsError:p,refetchColumns:m}}function wZe(e,t){const[n,r]=N.useState(e);return N.useEffect(()=>{const o=setTimeout(()=>{r(e)},t);return()=>{clearTimeout(o)}},[e,t]),n}const b$={searchQuery:"",debouncedSearchQuery:"",selectedUsers:[],usersToRemove:[],usersToUpdate:[],selectedGroups:[],groupsToRemove:[],groupsToUpdate:[],selectedTab:"org",currentContext:"org-tab",currentMode:null,orgWideRole:"VIEWER",allTenantsRole:"VIEWER",tenantWideRole:"VIEWER",groupWideRole:"VIEWER",selectedTenant:"",message:""},Yr=Xa()(Pg(e=>({...b$,actions:{setSearchQuery:t=>{e(n=>{n.searchQuery=t})},setDebouncedSearchQuery:t=>{e(n=>{n.debouncedSearchQuery=t})},setSelectedUsers:t=>{e(n=>{n.selectedUsers=t})},addSelectedUser:t=>{e(n=>{n.selectedUsers.some(o=>o.id===t.id)||n.selectedUsers.push(t)})},removeSelectedUser:t=>{e(n=>{n.selectedUsers=n.selectedUsers.filter(r=>r.id!==t)})},updateSelectedUserRole:(t,n)=>{e(r=>{const o=r.selectedUsers.find(s=>s.id===t);o&&(o.role=n)})},setUsersToRemove:t=>{e(n=>{n.usersToRemove=t})},addUserToRemove:t=>{e(n=>{n.usersToRemove.includes(t)||n.usersToRemove.push(t)})},removeUserFromRemove:t=>{e(n=>{n.usersToRemove=n.usersToRemove.filter(r=>r!==t)})},setUsersToUpdate:t=>{e(n=>{n.usersToUpdate=t})},addUserToUpdate:t=>{e(n=>{n.usersToUpdate=n.usersToUpdate.filter(r=>r.id!==t.id),n.usersToUpdate.push(t)})},removeUserFromUpdate:t=>{e(n=>{n.usersToUpdate=n.usersToUpdate.filter(r=>r.id!==t)})},setSelectedTenant:t=>{e(n=>{n.selectedTenant=t})},setSelectedTab:t=>{e(n=>{n.selectedTab=t})},setCurrentContext:t=>{e(n=>{n.currentContext=t})},setCurrentMode:t=>{e(n=>{n.currentMode=t})},setOrgWideRole:t=>{e(n=>{n.orgWideRole=t})},setAllTenantsRole:t=>{e(n=>{n.allTenantsRole=t})},setTenantWideRole:t=>{e(n=>{n.tenantWideRole=t})},setGroupWideRole:t=>{e(n=>{n.groupWideRole=t})},setSelectedGroups:t=>{e(n=>{n.selectedGroups=t})},addSelectedGroup:t=>{e(n=>{n.selectedGroups.some(o=>o.id===t.id)||n.selectedGroups.push(t)})},removeSelectedGroup:t=>{e(n=>{n.selectedGroups=n.selectedGroups.filter(r=>r.id!==t)})},updateSelectedGroupRole:(t,n)=>{e(r=>{const o=r.selectedGroups.find(s=>s.id===t);o&&(o.role=n)})},setGroupsToRemove:t=>{e(n=>{n.groupsToRemove=t})},addGroupToRemove:t=>{e(n=>{n.groupsToRemove.includes(t)||n.groupsToRemove.push(t)})},removeGroupFromRemove:t=>{e(n=>{n.groupsToRemove=n.groupsToRemove.filter(r=>r!==t)})},setGroupsToUpdate:t=>{e(n=>{n.groupsToUpdate=t})},addGroupToUpdate:t=>{e(n=>{const r=n.groupsToUpdate.findIndex(o=>o.id===t.id);r!==-1?n.groupsToUpdate[r]=t:n.groupsToUpdate.push(t)})},removeGroupFromUpdate:t=>{e(n=>{n.groupsToUpdate=n.groupsToUpdate.filter(r=>r.id!==t)})},setMessage:t=>{e(n=>{n.message=t})},validateShareData:t=>qQ(t),resetShareState:()=>{e(t=>{Object.assign(t,b$)})},resetUserSelections:()=>{e(t=>{t.selectedUsers=[],t.usersToRemove=[],t.usersToUpdate=[]})},resetGroupSelections:()=>{e(t=>{t.selectedGroups=[],t.groupsToRemove=[],t.groupsToUpdate=[]})}}}))),YQ=()=>Yr(e=>e.searchQuery),SZe=()=>Yr(e=>e.selectedUsers),CZe=()=>Yr(e=>e.usersToRemove),EZe=()=>Yr(e=>e.usersToUpdate),NZe=()=>Yr(e=>e.selectedTenant),kZe=()=>Yr(e=>e.selectedTab),_Ze=()=>Yr(e=>e.currentContext),jZe=()=>Yr(e=>e.currentMode),MZe=()=>Yr(e=>e.orgWideRole),RZe=()=>Yr(e=>e.allTenantsRole),PZe=()=>Yr(e=>e.tenantWideRole),DZe=()=>Yr(e=>e.groupWideRole),TZe=()=>Yr(e=>e.selectedGroups),AZe=()=>Yr(e=>e.groupsToRemove),IZe=()=>Yr(e=>e.groupsToUpdate),ZQ=()=>Yr(e=>e.actions),OZe=()=>{const e=YQ(),t=wZe(e,300),n=ZQ();return N.useEffect(()=>{n.setDebouncedSearchQuery(t)},[t,n]),{searchQuery:e,debouncedSearchQuery:t,setSearchQuery:n.setSearchQuery}};function FZe(e,t=[]){let n=[];function r(s,i){const a=E.createContext(i),l=n.length;n=[...n,i];const c=f=>{var y;const{scope:h,children:p,...m}=f,g=((y=h==null?void 0:h[e])==null?void 0:y[l])||a,b=E.useMemo(()=>m,Object.values(m));return d.jsx(g.Provider,{value:b,children:p})};c.displayName=s+"Provider";function u(f,h){var g;const p=((g=h==null?void 0:h[e])==null?void 0:g[l])||a,m=E.useContext(p);if(m)return m;if(i!==void 0)return i;throw new Error(`\`${f}\` must be used within \`${s}\``)}return[c,u]}const o=()=>{const s=n.map(i=>E.createContext(i));return function(a){const l=(a==null?void 0:a[e])||s;return E.useMemo(()=>({[`__scope${e}`]:{...a,[e]:l}}),[a,l])}};return o.scopeName=e,[r,$Ze(o,...t)]}function $Ze(...e){const t=e[0];if(e.length===1)return t;const n=()=>{const r=e.map(o=>({useScope:o(),scopeName:o.scopeName}));return function(s){const i=r.reduce((a,{useScope:l,scopeName:c})=>{const f=l(s)[`__scope${c}`];return{...a,...f}},{});return E.useMemo(()=>({[`__scope${t.scopeName}`]:i}),[i])}};return n.scopeName=t.scopeName,n}function LZe(e){const t=E.useRef(e);return E.useEffect(()=>{t.current=e}),E.useMemo(()=>(...n)=>{var r;return(r=t.current)==null?void 0:r.call(t,...n)},[])}var e_=globalThis!=null&&globalThis.document?E.useLayoutEffect:()=>{},zZe=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"],tD=zZe.reduce((e,t)=>{const n=Js(`Primitive.${t}`),r=E.forwardRef((o,s)=>{const{asChild:i,...a}=o,l=i?n:t;return typeof window<"u"&&(window[Symbol.for("radix-ui")]=!0),d.jsx(l,{...a,ref:s})});return r.displayName=`Primitive.${t}`,{...e,[t]:r}},{});function BZe(){return pYe.useSyncExternalStore(VZe,()=>!0,()=>!1)}function VZe(){return()=>{}}var nD="Avatar",[HZe,tQe]=FZe(nD),[UZe,KQ]=HZe(nD),XQ=E.forwardRef((e,t)=>{const{__scopeAvatar:n,...r}=e,[o,s]=E.useState("idle");return d.jsx(UZe,{scope:n,imageLoadingStatus:o,onImageLoadingStatusChange:s,children:d.jsx(tD.span,{...r,ref:t})})});XQ.displayName=nD;var QQ="AvatarImage",JQ=E.forwardRef((e,t)=>{const{__scopeAvatar:n,src:r,onLoadingStatusChange:o=()=>{},...s}=e,i=KQ(QQ,n),a=WZe(r,s),l=LZe(c=>{o(c),i.onImageLoadingStatusChange(c)});return e_(()=>{a!=="idle"&&l(a)},[a,l]),a==="loaded"?d.jsx(tD.img,{...s,ref:t,src:r}):null});JQ.displayName=QQ;var eJ="AvatarFallback",tJ=E.forwardRef((e,t)=>{const{__scopeAvatar:n,delayMs:r,...o}=e,s=KQ(eJ,n),[i,a]=E.useState(r===void 0);return E.useEffect(()=>{if(r!==void 0){const l=window.setTimeout(()=>a(!0),r);return()=>window.clearTimeout(l)}},[r]),i&&s.imageLoadingStatus!=="loaded"?d.jsx(tD.span,{...o,ref:t}):null});tJ.displayName=eJ;function y$(e,t){return e?t?(e.src!==t&&(e.src=t),e.complete&&e.naturalWidth>0?"loaded":"loading"):"error":"idle"}function WZe(e,{referrerPolicy:t,crossOrigin:n}){const r=BZe(),o=E.useRef(null),s=r?(o.current||(o.current=new window.Image),o.current):null,[i,a]=E.useState(()=>y$(s,e));return e_(()=>{a(y$(s,e))},[s,e]),e_(()=>{const l=f=>()=>{a(f)};if(!s)return;const c=l("loaded"),u=l("error");return s.addEventListener("load",c),s.addEventListener("error",u),t&&(s.referrerPolicy=t),typeof n=="string"&&(s.crossOrigin=n),()=>{s.removeEventListener("load",c),s.removeEventListener("error",u)}},[s,n,t]),i}var nJ=XQ,rJ=JQ,oJ=tJ;const sJ=E.forwardRef(({className:e,...t},n)=>d.jsx(nJ,{ref:n,className:Y("relative flex h-10 w-10 shrink-0 overflow-hidden rounded-full",e),...t}));sJ.displayName=nJ.displayName;const qZe=E.forwardRef(({className:e,...t},n)=>d.jsx(rJ,{ref:n,className:Y("aspect-square h-full w-full",e),...t}));qZe.displayName=rJ.displayName;const iJ=E.forwardRef(({className:e,...t},n)=>d.jsx(oJ,{ref:n,className:Y("flex h-full w-full items-center justify-center rounded-full bg-muted",e),...t}));iJ.displayName=oJ.displayName;function aJ(e,t){var ze,ot,Rt,Vt,Zt;const{tokenProps:n}=qe(),r=es(),o=qe().authToken||e,s=Ae(xe=>xe.selectedConnectionId),i=Ae(xe=>xe.card),{queryKey:a}=Ice(i),l=Ae(xe=>xe.selectedDatamodelId),c=Ae(xe=>xe.isDevMode),u=Ae(xe=>xe.selectedDatabaseName),f=Ae(xe=>xe.selectedSchemaName),h=Ae(xe=>xe.selectedTableName),p=Ae(xe=>xe.actions.setSelectedConnectionId),m=Ae(xe=>xe.actions.setSelectedDatamodelId),g=Ae(xe=>xe.actions.setSelectedDatabaseName),b=Ae(xe=>xe.actions.setSelectedSchemaName),y=Ae(xe=>xe.actions.setSelectedTableName);Ae(xe=>xe.actions.setCardSql);const{setQueryConfig:x}=jo();function v(xe){return s&&u&&f&&u!=="NA"?!0:s&&xe==="API"?!1:!!(s&&xe==="S3")}function w(xe){return s&&xe?!(xe==="API"||xe==="S3"):!1}const{refetchConnections:S,connectionsData:C,isConnectionsLoading:k,isConnectionsError:_,selectedConnection:M}=Ji(e),{refetch:j,data:A,isLoading:R,isError:F}=bn({queryKey:["models",s],queryFn:()=>qn(`${n.apiServiceUrl}/v1/datamodels`,(o==null?void 0:o.accessToken)||"",{connection_id:s}),enabled:!!(o!=null&&o.accessToken)&&!!s}),T=M==null?void 0:M.type,D=(M==null?void 0:M.type)==="API"||(M==null?void 0:M.type)==="S3",{data:O,isLoading:z,isFetching:V,isError:$,refetch:I}=bn({queryKey:["databases",s],queryFn:()=>qn(`${n.apiServiceUrl}/v1/databases`,(o==null?void 0:o.accessToken)||"",{connection_id:s}),enabled:w(T)}),{data:B,isLoading:L,isFetching:P,isError:H,refetch:q}=bn({queryKey:["schemas",s,u],queryFn:()=>qn(`${n.apiServiceUrl}/v1/schemas`,(o==null?void 0:o.accessToken)||"",{connection_id:s,database_name:u}),enabled:!!s&&!!u&&!D&&u!=="NA"}),{data:K,isLoading:W,isFetching:U,isError:G,refetch:Q}=bn({queryKey:["tables",s,u,f],queryFn:()=>qn(`${n.apiServiceUrl}/v1/tables`,(o==null?void 0:o.accessToken)||"",{connection_id:s,database_name:u,schema_name:f}),enabled:v(T)}),{columns:re,isColumnsLoading:J,isColumnsFetching:ne,isColumnsError:ae,refetchColumns:se}=GQ(e);N.useEffect(()=>{(T==="S3"||T==="API")&&(g(""),b(""),m(""),T==="API"&&y("api"))},[T,y,g,b,m]);const oe=(M==null?void 0:M.type)==="API"?(ze=M==null?void 0:M.type)==null?void 0:ze.toLowerCase():h||"",Ne=D?"":f||"";function ue(xe){y(xe),x(void 0),c||(r.setQueryData(a,null),r.removeQueries({queryKey:a,exact:!0}))}function ge(xe){b(xe),y("")}function Pe(xe){g(xe==="none"?"":xe),b(""),y(""),xe!=="none"&&xe!==""&&m("")}function at(xe){p(xe)}function Ve(xe){m(xe==="none"?"":xe),xe!=="none"&&xe!==""&&g("")}O&&((ot=O==null?void 0:O.databases)==null?void 0:ot.length)>0,B&&((Rt=B==null?void 0:B.schemas)==null?void 0:Rt.length)>0;const We=C==null?void 0:C.connections.map(xe=>({id:xe.id,name:xe.name,type:xe.type})),xn=(Vt=A==null?void 0:A.datamodels)==null?void 0:Vt.map(xe=>({id:xe.id,name:xe.name})),jn=O==null?void 0:O.databases.map(xe=>({id:xe.database_name,name:xe.database_name})),ie=B==null?void 0:B.schemas.map(xe=>({id:xe.schema_name,name:xe.schema_name})),me=K==null?void 0:K.tables.map(xe=>({id:xe.table_name,name:xe.table_name})),Re=(Zt=A==null?void 0:A.datamodels.find(xe=>xe.id===l))==null?void 0:Zt.name,be=e3({schemaName:Ne,tableName:oe,modelName:Re,connectionType:T,databaseName:u||""});return{connectionItems:We,selectedConnectionId:s,selectedConnection:M,isConnectionsLoading:k,isConnectionsError:_,modelItems:xn,selectedDatamodelId:l,selectedDatamodelName:Re,isModelsLoading:R,isModelsError:F,selectedDatabaseName:u,databaseItems:jn,isDatabasesLoadingOrFetching:z||V,isDatabaseError:$,schemaItems:ie,selectedSchemaName:f,isSchemaLoadingOrFetching:L||P,isSchemaError:H,tableItems:me,selectedTableName:h,isTableLoadingOrFetching:W||U,isTableError:G,columns:re,isColumnsLoadingOrFetching:J||ne,isColumnsError:ae,isNonDbConnection:D,connectionType:T,tableName:oe,formattedTableName:be,schemaName:Ne,refetchConnections:S,refetchModels:j,refetchDatabases:I,refetchSchemas:q,refetchTables:Q,refetchColumns:se,handleConnectionChange:at,handleDatamodelChange:Ve,handleDatabaseChange:Pe,handleSchemaChange:ge,handleTableChange:ue}}function GZe(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function x$(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),n.push.apply(n,r)}return n}function v$(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?x$(Object(n),!0).forEach(function(r){GZe(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):x$(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function YZe(e,t){if(e==null)return{};var n={},r=Object.keys(e),o,s;for(s=0;s<r.length;s++)o=r[s],!(t.indexOf(o)>=0)&&(n[o]=e[o]);return n}function ZZe(e,t){if(e==null)return{};var n=YZe(e,t),r,o;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(o=0;o<s.length;o++)r=s[o],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}function KZe(e,t){return XZe(e)||QZe(e,t)||JZe(e,t)||eKe()}function XZe(e){if(Array.isArray(e))return e}function QZe(e,t){if(!(typeof Symbol>"u"||!(Symbol.iterator in Object(e)))){var n=[],r=!0,o=!1,s=void 0;try{for(var i=e[Symbol.iterator](),a;!(r=(a=i.next()).done)&&(n.push(a.value),!(t&&n.length===t));r=!0);}catch(l){o=!0,s=l}finally{try{!r&&i.return!=null&&i.return()}finally{if(o)throw s}}return n}}function JZe(e,t){if(e){if(typeof e=="string")return w$(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return w$(e,t)}}function w$(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function eKe(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
978
978
|
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function tKe(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function S$(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),n.push.apply(n,r)}return n}function C$(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?S$(Object(n),!0).forEach(function(r){tKe(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):S$(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function nKe(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return function(r){return t.reduceRight(function(o,s){return s(o)},r)}}function Op(e){return function t(){for(var n=this,r=arguments.length,o=new Array(r),s=0;s<r;s++)o[s]=arguments[s];return o.length>=e.length?e.apply(this,o):function(){for(var i=arguments.length,a=new Array(i),l=0;l<i;l++)a[l]=arguments[l];return t.apply(n,[].concat(o,a))}}}function Tv(e){return{}.toString.call(e).includes("Object")}function rKe(e){return!Object.keys(e).length}function Cg(e){return typeof e=="function"}function oKe(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function sKe(e,t){return Tv(t)||Bl("changeType"),Object.keys(t).some(function(n){return!oKe(e,n)})&&Bl("changeField"),t}function iKe(e){Cg(e)||Bl("selectorType")}function aKe(e){Cg(e)||Tv(e)||Bl("handlerType"),Tv(e)&&Object.values(e).some(function(t){return!Cg(t)})&&Bl("handlersType")}function lKe(e){e||Bl("initialIsRequired"),Tv(e)||Bl("initialType"),rKe(e)&&Bl("initialContent")}function cKe(e,t){throw new Error(e[t]||e.default)}var uKe={initialIsRequired:"initial state is required",initialType:"initial state should be an object",initialContent:"initial state shouldn't be an empty object",handlerType:"handler should be an object or a function",handlersType:"all handlers should be a functions",selectorType:"selector should be a function",changeType:"provided value of changes should be an object",changeField:'it seams you want to change a field in the state which is not specified in the "initial" state',default:"an unknown error accured in `state-local` package"},Bl=Op(cKe)(uKe),h0={changes:sKe,selector:iKe,handler:aKe,initial:lKe};function dKe(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};h0.initial(e),h0.handler(t);var n={current:e},r=Op(pKe)(n,t),o=Op(hKe)(n),s=Op(h0.changes)(e),i=Op(fKe)(n);function a(){var c=arguments.length>0&&arguments[0]!==void 0?arguments[0]:function(u){return u};return h0.selector(c),c(n.current)}function l(c){nKe(r,o,s,i)(c)}return[a,l]}function fKe(e,t){return Cg(t)?t(e.current):t}function hKe(e,t){return e.current=C$(C$({},e.current),t),t}function pKe(e,t,n){return Cg(t)?t(e.current):Object.keys(n).forEach(function(r){var o;return(o=t[r])===null||o===void 0?void 0:o.call(t,e.current[r])}),n}var mKe={create:dKe},gKe={paths:{vs:"https://cdn.jsdelivr.net/npm/monaco-editor@0.52.2/min/vs"}};function bKe(e){return function t(){for(var n=this,r=arguments.length,o=new Array(r),s=0;s<r;s++)o[s]=arguments[s];return o.length>=e.length?e.apply(this,o):function(){for(var i=arguments.length,a=new Array(i),l=0;l<i;l++)a[l]=arguments[l];return t.apply(n,[].concat(o,a))}}}function yKe(e){return{}.toString.call(e).includes("Object")}function xKe(e){return e||E$("configIsRequired"),yKe(e)||E$("configType"),e.urls?(vKe(),{paths:{vs:e.urls.monacoBase}}):e}function vKe(){console.warn(lJ.deprecation)}function wKe(e,t){throw new Error(e[t]||e.default)}var lJ={configIsRequired:"the configuration object is required",configType:"the configuration object should be an object",default:"an unknown error accured in `@monaco-editor/loader` package",deprecation:`Deprecation warning!
|
|
979
979
|
You are using deprecated way of configuration.
|
|
980
980
|
|
package/dist/dashboard/index.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../chunks/index-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../chunks/index-Ywgaa5lZ.js"),r=require("../types/index.cjs");exports.Dashboard=e.Dashboard;exports.EMPTY_SELECTION=r.EMPTY_SELECTION;
|
package/dist/dashboard/index.js
CHANGED
package/dist/index.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./chunks/index-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./chunks/index-Ywgaa5lZ.js"),C=require("./types/index.cjs"),s=require("./chunks/dashboard-plus-Bp_x5o9D.js"),o=require("react/jsx-runtime"),T=require("react");require("react-dom");function h(a){const{displayPreferences:i,...u}=a,d={...u,id:a.dashboardId};return o.jsx(e.ErrorBoundary,{FallbackComponent:e.Fallback,children:o.jsx(e.SemaphorContextProvider,{dashboardProps:d,children:o.jsx(e.UXProvider,{children:o.jsx(e.DisplayPreferencesProvider,{displayPreferences:i,children:o.jsx(e.Container,{type:"visual",...d,children:o.jsx(g,{cardId:a.cardId})})})})})})}function g({cardId:a}){const i=e.useDashboardStore(t=>{var n;return(n=t.dashboard)==null?void 0:n.sheets}),{card:u,frame:d}=T.useMemo(()=>{const t=i==null?void 0:i.flatMap(r=>r.frames),n=t==null?void 0:t.flatMap(r=>r==null?void 0:r.cards),c=n==null?void 0:n.find(r=>(r==null?void 0:r.id)===a),M=t==null?void 0:t.find(r=>{var Y;return(Y=r==null?void 0:r.cards)==null?void 0:Y.find(l=>(l==null?void 0:l.id)===a)});return{card:c,frame:M}},[i,a]);return!u||!d?o.jsx(e.FallbackVisual,{error:new Error("Card not found"),resetErrorBoundary:()=>{},customerFacingMessage:`Card not found with ID: ${a}`}):o.jsx("main",{className:"flex h-full grow flex-col",children:o.jsx(e.ErrorBoundary,{FallbackComponent:({error:t,resetErrorBoundary:n})=>o.jsx(e.FallbackVisual,{error:t,resetErrorBoundary:n,customerFacingMessage:"Error creating visual. Please try again."}),children:o.jsx(e.DashboardCard,{card:u,frame:d})})})}const S=["MM-DD-YYYY","YYYY-MM-DD","MM/DD/YYYY","DD/MM/YYYY","MMMM DD, YYYY","MMM DD, YYYY","DD MMM YYYY","Week of MMM DD, YYYY","Week of MMMM DD, YYYY","YYYY-WW","MMM YYYY","MMMM YYYY","YYYY-MM","MM/YYYY","YYYY MMM","Q1 YYYY","YYYY Q1","1st Quarter YYYY","YYYY-Q1","Quarter 1, YYYY","YYYY","YY","custom"];var D=(a=>(a.SUBTOTAL="__SUBTOTAL__",a.TOTAL="__TOTAL__",a.ALL="__ALL__",a))(D||{});exports.Dashboard=e.Dashboard;exports.DashboardWC=e.DashboardWC;exports.ResourceType=e.ResourceType;exports.SemaphorContextProvider=e.SemaphorContextProvider;exports.SemaphorDataProvider=e.SemaphorQueryClient;exports.SemaphorQueryClient=e.SemaphorQueryClient;exports.createSqlGenConfig=e.createSqlGenConfig;exports.downloadPdf=e.downloadPdf;exports.fmt=e.fmt;exports.getColumnDataType=e.getColumnDataType;exports.getFilterValueType=e.getFilterValueType;exports.getFormattedTableNameForQuery=e.getFormattedTableNameForQuery;exports.getQualifiedTableName=e.getQualifiedTableName;exports.getSql=e.getSql;exports.invalidateToken=e.invalidateToken;exports.isBooleanDataType=e.isBooleanDataType;exports.isColumnInSqlGen=e.isColumnInSqlGen;exports.isDateDataType=e.isDateDataType;exports.isNumberDataType=e.isNumberDataType;exports.isTextDataType=e.isTextDataType;exports.resolveDataType=e.resolveDataType;exports.resolveDatamodelName=e.resolveDatamodelName;exports.useCard=e.useCard;exports.useCurrentActiveCard=e.useCurrentActiveCard;exports.useCurrentCardConfig=e.useCurrentCardConfig;exports.useCurrentSheetActiveCards=e.useCurrentSheetActiveCards;exports.useDashboardActions=e.useDashboardActions;exports.useDashboardStore=e.useDashboardStore;exports.useDataColumns=e.useDataColumns;exports.useDateFilterHook=e.useDateFilterHook;exports.useEditorActions=e.useEditorActions;exports.useEditorAside=e.useEditorAside;exports.useEditorStore=e.useEditorStore;exports.useTextFilterHook=e.useTextFilterHook;exports.EMPTY_SELECTION=C.EMPTY_SELECTION;exports.AdvancedModeToggle=s.AdvancedModeToggle;exports.ResourceManagementPanel=s.ResourceManagementPanel;exports.ScheduleDashboard=s.ScheduleDashboard;exports.SelectComponent=s.SelectComponent;exports.ShareDialog=s.ShareDialog;exports.Surfboard=s.DashboardPlus;exports.VisualBadge=s.VisualBadge;exports.VisualEditingControls=s.VisualEditingControls;exports.cleanCard=s.cleanCard;exports.getDashbaordStateWithoutData=s.getDashbaordStateWithoutData;exports.DATE_FORMAT_VALUES=S;exports.PivotMarkerEnum=D;exports.Visual=h;
|
package/dist/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { E as u, F as c, S as h, U as f, a as p, C as T, u as m, b as l, c as C } from "./chunks/index-
|
|
2
|
-
import { D as L, h as k, R as Q, f as V, f as B, r as w, j as N, l as O, t as W, s as R, x as U, y as q, q as I, i as G, p as H, v as j, o as z, n as J, m as K, z as X, w as $, g as Z, B as aa, H as ea, G as sa, I as ra, k as oa, d as ta, K as Ya, A as na, J as ia, e as da } from "./chunks/index-
|
|
1
|
+
import { E as u, F as c, S as h, U as f, a as p, C as T, u as m, b as l, c as C } from "./chunks/index-CuIonuI2.js";
|
|
2
|
+
import { D as L, h as k, R as Q, f as V, f as B, r as w, j as N, l as O, t as W, s as R, x as U, y as q, q as I, i as G, p as H, v as j, o as z, n as J, m as K, z as X, w as $, g as Z, B as aa, H as ea, G as sa, I as ra, k as oa, d as ta, K as Ya, A as na, J as ia, e as da } from "./chunks/index-CuIonuI2.js";
|
|
3
3
|
import { EMPTY_SELECTION as ua } from "./types/index.js";
|
|
4
|
-
import { A as Da, R as ca, b as ha, c as fa, S as pa, D as Ta, a as ma, V as Ca, d as ga, g as ba } from "./chunks/dashboard-plus-
|
|
4
|
+
import { A as Da, R as ca, b as ha, c as fa, S as pa, D as Ta, a as ma, V as Ca, d as ga, g as ba } from "./chunks/dashboard-plus-B9-pj2AX.js";
|
|
5
5
|
import { jsx as s } from "react/jsx-runtime";
|
|
6
6
|
import { useMemo as g } from "react";
|
|
7
7
|
import "react-dom";
|
package/dist/surfboard/index.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../chunks/dashboard-plus
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../chunks/dashboard-plus-Bp_x5o9D.js"),r=require("../types/index.cjs");exports.Surfboard=e.DashboardPlus;exports.EMPTY_SELECTION=r.EMPTY_SELECTION;
|
package/dist/surfboard/index.js
CHANGED
|
@@ -347,7 +347,7 @@ export declare type DateOptions = {
|
|
|
347
347
|
options: Intl.DateTimeFormatOptions;
|
|
348
348
|
};
|
|
349
349
|
|
|
350
|
-
declare type Dialect = 'mysql' | '
|
|
350
|
+
declare type Dialect = 'mysql' | 'postgres' | 'bigquery' | 'redshift' | 'snowflake' | 'clickhouse' | 'duckdb';
|
|
351
351
|
|
|
352
352
|
export declare type DisplayDataType = 'string' | 'date' | 'number' | 'html' | 'none';
|
|
353
353
|
|
package/dist/types/main.d.ts
CHANGED
|
@@ -650,7 +650,7 @@ export declare type DateOptions = {
|
|
|
650
650
|
|
|
651
651
|
export { DateRange }
|
|
652
652
|
|
|
653
|
-
export declare type Dialect = 'mysql' | '
|
|
653
|
+
export declare type Dialect = 'mysql' | 'postgres' | 'bigquery' | 'redshift' | 'snowflake' | 'clickhouse' | 'duckdb';
|
|
654
654
|
|
|
655
655
|
export declare type DisplayDataType = 'string' | 'date' | 'number' | 'html' | 'none';
|
|
656
656
|
|
|
@@ -350,7 +350,7 @@ export declare type DateOptions = {
|
|
|
350
350
|
options: Intl.DateTimeFormatOptions;
|
|
351
351
|
};
|
|
352
352
|
|
|
353
|
-
declare type Dialect = 'mysql' | '
|
|
353
|
+
declare type Dialect = 'mysql' | 'postgres' | 'bigquery' | 'redshift' | 'snowflake' | 'clickhouse' | 'duckdb';
|
|
354
354
|
|
|
355
355
|
export declare type DisplayDataType = 'string' | 'date' | 'number' | 'html' | 'none';
|
|
356
356
|
|
package/dist/types/types.d.ts
CHANGED
|
@@ -344,7 +344,7 @@ export declare type DateOptions = {
|
|
|
344
344
|
options: Intl.DateTimeFormatOptions;
|
|
345
345
|
};
|
|
346
346
|
|
|
347
|
-
declare type Dialect = 'mysql' | '
|
|
347
|
+
declare type Dialect = 'mysql' | 'postgres' | 'bigquery' | 'redshift' | 'snowflake' | 'clickhouse' | 'duckdb';
|
|
348
348
|
|
|
349
349
|
export declare type DisplayDataType = 'string' | 'date' | 'number' | 'html' | 'none';
|
|
350
350
|
|