@datarecce/ui 1.51.0-nightly.20260601 → 1.51.0
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/{RunProgress-Ce4Xxtcm.d.ts → RunProgress-DMnOxPYv.d.ts} +2 -2
- package/dist/{RunProgress-Ce4Xxtcm.d.ts.map → RunProgress-DMnOxPYv.d.ts.map} +1 -1
- package/dist/ScreenshotDataGrid-CFWyhxE7.d.ts.map +1 -1
- package/dist/{SplitPane-8hUyjJhr.d.ts → SplitPane-DKjK6eiV.d.ts} +3 -3
- package/dist/{SplitPane-8hUyjJhr.d.ts.map → SplitPane-DKjK6eiV.d.ts.map} +1 -1
- package/dist/advanced.d.ts +7 -7
- package/dist/advanced.js +1 -1
- package/dist/{api-q-W5VIDl.d.ts → api-CVXkhvDl.d.ts} +2 -2
- package/dist/{api-q-W5VIDl.d.ts.map → api-CVXkhvDl.d.ts.map} +1 -1
- package/dist/api-D50B0UMd.js +3 -0
- package/dist/api-D50B0UMd.js.map +1 -0
- package/dist/api.d.ts +3 -3
- package/dist/api.js +1 -1
- package/dist/components-run.d.ts +3 -3
- package/dist/components-run.js +1 -1
- package/dist/components.d.ts +7 -7
- package/dist/components.js +1 -1
- package/dist/contexts.d.ts +3 -3
- package/dist/hooks-D15-EL7C.js +7 -0
- package/dist/hooks-D15-EL7C.js.map +1 -0
- package/dist/hooks.d.ts +1 -1
- package/dist/hooks.js +1 -1
- package/dist/{index-Savy2cwH.d.ts → index-CBfydi66.d.ts} +7 -1
- package/dist/index-CBfydi66.d.ts.map +1 -0
- package/dist/{index-Cjvpycm5.d.ts → index-CDG2V3lk.d.ts} +5 -5
- package/dist/{index-Cjvpycm5.d.ts.map → index-CDG2V3lk.d.ts.map} +1 -1
- package/dist/{index-DXTForo0.d.ts → index-C_rwHada.d.ts} +2 -2
- package/dist/{index-DXTForo0.d.ts.map → index-C_rwHada.d.ts.map} +1 -1
- package/dist/{index-CoOoWmTE.d.ts → index-CitmP9e7.d.ts} +4 -4
- package/dist/{index-CoOoWmTE.d.ts.map → index-CitmP9e7.d.ts.map} +1 -1
- package/dist/{index-CpKuSfgP.d.ts → index-D8FcsCIF.d.ts} +6 -89
- package/dist/index-D8FcsCIF.d.ts.map +1 -0
- package/dist/{index-0iU8URM1.d.ts → index-Zui-8enI.d.ts} +3 -3
- package/dist/{index-0iU8URM1.d.ts.map → index-Zui-8enI.d.ts.map} +1 -1
- package/dist/{index-CsndKwzi.d.ts → index-ebgKX4Gr.d.ts} +3 -3
- package/dist/{index-CsndKwzi.d.ts.map → index-ebgKX4Gr.d.ts.map} +1 -1
- package/dist/index.d.ts +11 -11
- package/dist/index.js +1 -1
- package/dist/{instanceInfo-CPsslDex.d.ts → instanceInfo-DZJ47qaP.d.ts} +186 -5
- package/dist/{instanceInfo-CPsslDex.d.ts.map → instanceInfo-DZJ47qaP.d.ts.map} +1 -1
- package/dist/keepAlive-DbC0X4zr.js.map +1 -1
- package/dist/lib/api/track.d.ts +1 -1
- package/dist/lib/api/track.js.map +1 -1
- package/dist/{lineage-D_ryGNeE.d.ts → lineage-D_TBiJDk.d.ts} +8 -8
- package/dist/{lineage-D_ryGNeE.d.ts.map → lineage-D_TBiJDk.d.ts.map} +1 -1
- package/dist/primitives.d.ts +5 -5
- package/dist/primitives.js +1 -1
- package/dist/result.d.ts +1 -1
- package/dist/result.js +1 -1
- package/dist/{src-DG37rUfw.js → src-D3Oco6am.js} +2 -2
- package/dist/{src-DG37rUfw.js.map → src-D3Oco6am.js.map} +1 -1
- package/dist/{types-DJQ8ES4B.d.ts → types-3N6OUHk6.d.ts} +95 -4
- package/dist/types-3N6OUHk6.d.ts.map +1 -0
- package/dist/{types-DistVaGz.d.ts → types-CxqTcNx7.d.ts} +2 -2
- package/dist/{types-DistVaGz.d.ts.map → types-CxqTcNx7.d.ts.map} +1 -1
- package/dist/types.d.ts +7 -7
- package/dist/utils.d.ts +1 -1
- package/package.json +1 -1
- package/dist/api-rVbRZrM4.js +0 -3
- package/dist/api-rVbRZrM4.js.map +0 -1
- package/dist/hooks-Bpd6jU-G.js +0 -7
- package/dist/hooks-Bpd6jU-G.js.map +0 -1
- package/dist/index-CpKuSfgP.d.ts.map +0 -1
- package/dist/index-Savy2cwH.d.ts.map +0 -1
- package/dist/types-DJQ8ES4B.d.ts.map +0 -1
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import{$ as e,C as t,D as n,G as r,I as i,L as a,Q as o,S as s,W as c,X as l,Y as u,_t as d,ct as f,dt as p,et as m,f as h,ft as g,h as _,ht as v,it as y,lt as b,nt as x,ot as S,st as C,ut as w,vt as T,x as E,yt as D}from"./api-D50B0UMd.js";import{d as O,f as k,l as A,s as ee}from"./keepAlive-DbC0X4zr.js";import{n as te,r as ne}from"./fetchClient-BVyYwVMf.js";import{A as re,E as ie,N as ae,S as oe,T as se,b as ce,f as j,g as le,j as M,n as ue,v as de,y as fe}from"./utils-Br2xknRC.js";import{_ as pe,f as N,g as me,p as he,t as ge}from"./theme-Db-mFBbo.js";import{n as P}from"./colors-BbPSDR1X.js";import{$ as _e,At as ve,Dt as ye,Et as be,Lt as xe,Mt as Se,Nt as Ce,Ot as we,Pt as F,Q as Te,S as Ee,St as De,Tt as Oe,at as ke,b as Ae,c as je,ct as Me,dt as I,et as Ne,i as Pe,it as Fe,jt as Ie,kt as Le,l as Re,pt as ze,r as Be,s as Ve,wt as He,y as Ue}from"./utils-DV3twX_X.js";import{fetchGitHubAvatar as We,fetchUser as Ge}from"./lib/api/user.js";import{PUBLIC_API_URL as Ke,RECCE_SUPPORT_CALENDAR_URL as qe}from"./lib/const.js";import{EXPLORE_FORM_EVENT as Je,isExploreAction as Ye,trackCopyToClipboard as Xe,trackExploreActionForm as Ze,trackHistoryAction as Qe,trackSingleEnvironment as $e}from"./lib/api/track.js";import et from"./lib/result/ResultErrorFallback.js";import{useMutation as tt,useQuery as nt,useQueryClient as rt}from"@tanstack/react-query";import{Fragment as it,createContext as at,forwardRef as ot,memo as L,useCallback as R,useContext as st,useEffect as z,useId as ct,useImperativeHandle as lt,useMemo as B,useRef as V,useState as H}from"react";import{Fragment as U,jsx as W,jsxs as G}from"react/jsx-runtime";import K from"@mui/material/Box";import q from"@mui/material/Button";import ut from"@mui/material/Dialog";import dt from"@mui/material/DialogActions";import ft from"@mui/material/DialogContent";import pt from"@mui/material/DialogTitle";import mt from"@mui/material/Link";import J from"@mui/material/Stack";import Y from"@mui/material/Typography";import{LuChartBarBig as ht,LuExternalLink as gt}from"react-icons/lu";import _t from"@mui/material/CssBaseline";import{ThemeProvider as vt,alpha as yt,useTheme as bt}from"@mui/material/styles";import{useTheme as xt}from"next-themes";import{AllCommunityModule as St,ModuleRegistry as Ct}from"ag-grid-community";import X from"@mui/material/IconButton";import wt from"next/link";import{IoClose as Tt}from"react-icons/io5";import Et from"@mui/material/Divider";import Dt from"@mui/material/CircularProgress";import Z from"@mui/material/Tooltip";import{FaCheckCircle as Ot,FaRegCheckCircle as kt}from"react-icons/fa";import{PiBookmarkSimple as At,PiCaretDown as jt,PiChatText as Mt,PiCheck as Nt,PiCheckCircle as Pt,PiCircle as Ft,PiClipboardText as It,PiCopy as Lt,PiDotsThreeVertical as Rt,PiDownloadSimple as zt,PiImage as Bt,PiInfo as Vt,PiNotePencil as Ht,PiPencilSimple as Ut,PiPlusCircle as Wt,PiRepeat as Gt,PiSelectionPlus as Kt,PiTable as qt,PiTrashSimple as Jt,PiWarning as Yt,PiX as Xt}from"react-icons/pi";import Zt from"@mui/material/Chip";import{BaseEdge as Qt,EdgeLabelRenderer as $t,Handle as en,NodeToolbar as tn,Position as nn,getBezierPath as rn}from"@xyflow/react";import an from"file-saver";import on from"@mui/material/Checkbox";import sn from"@mui/material/FormControlLabel";import cn from"@mui/material/ButtonGroup";import{useTimeout as ln}from"usehooks-ts";import un from"@mui/material/Alert";import dn from"@mui/material/InputBase";import fn from"@mui/material/Menu";import Q from"@mui/material/MenuItem";import pn from"lodash";import{VscKebabVertical as mn,VscKey as hn}from"react-icons/vsc";import gn from"@mui/material/ListSubheader";import _n from"@mui/material/FormControl";import vn from"@mui/material/FormLabel";import yn from"@mui/material/NativeSelect";import{Box as bn}from"@mui/material";import xn from"@mui/material/TextField";import{format as Sn,formatDistanceToNow as Cn}from"date-fns";import wn from"@mui/material/Tab";import Tn from"@mui/material/Tabs";import En from"@mui/material/List";import Dn from"@mui/material/ListItem";import On from"yaml";import{PostgreSQL as kn,sql as An}from"@codemirror/lang-sql";import{yaml as jn}from"@codemirror/lang-yaml";import{EditorState as Mn,Prec as Nn}from"@codemirror/state";import{EditorView as Pn,keymap as Fn,lineNumbers as In}from"@codemirror/view";import{githubDark as Ln,githubLight as Rn}from"@uiw/codemirror-theme-github";import zn from"@uiw/react-codemirror";import Bn from"@mui/material/Avatar";import Vn from"@mui/material/Popover";import Hn from"@mui/material/LinearProgress";import{BarElement as Un,CategoryScale as Wn,Chart as Gn,Legend as Kn,LinearScale as qn,TimeSeriesScale as Jn,Title as Yn,Tooltip as Xn}from"chart.js";import{Bar as Zn,Chart as Qn}from"react-chartjs-2";import $n from"@mui/material/AlertTitle";import{AgGridReact as er}from"ag-grid-react";import{MergeView as tr,unifiedMergeView as nr}from"@codemirror/merge";import rr from"react-markdown";import{Prism as ir}from"react-syntax-highlighter";import{oneDark as ar}from"react-syntax-highlighter/dist/esm/styles/prism";import or from"remark-gfm";import sr from"react-split";import{amber as cr}from"@mui/material/colors";import{usePathname as lr,useRouter as ur}from"next/navigation";import{MdFormatListNumberedRtl as dr,MdSchema as fr}from"react-icons/md";import{TbAlignBoxLeftStretch as pr,TbBrandStackshare as mr,TbChartHistogram as hr,TbEyeEdit as gr,TbEyeSearch as _r,TbSql as vr}from"react-icons/tb";import yr from"@mui/material/Autocomplete";import br from"@mui/material/DialogContentText";import xr from"@mui/material/ListItemIcon";import Sr from"@mui/material/ListItemText";import{FiInfo as Cr}from"react-icons/fi";import{FaPlay as wr}from"react-icons/fa6";import{ErrorBoundary as Tr}from"@sentry/react";import{snapdom as Er}from"@zumer/snapdom";function Dr({children:e,forcedTheme:t,enableCssBaseline:n=!1}){let{resolvedTheme:r}=xt();return z(()=>{(t??r)===`dark`?document.documentElement.classList.add(`dark`):document.documentElement.classList.remove(`dark`)},[t,r]),G(vt,{theme:ge,children:[n&&W(_t,{}),e]})}const Or=at({checks:[],isLoading:!1});Or.displayName=`RecceCheckContext`;function kr({children:e,checks:t=[],isLoading:n=!1,error:r,selectedCheckId:i,onSelectCheck:a,onCreateCheck:o,onUpdateCheck:s,onDeleteCheck:c,onReorderChecks:l,refetchChecks:u,latestSelectedCheckId:d,setLatestSelectedCheckId:f}){let p=i??d,m=a??f,h=B(()=>({checks:t,isLoading:n,error:r,selectedCheckId:p,onSelectCheck:m,onCreateCheck:o,onUpdateCheck:s,onDeleteCheck:c,onReorderChecks:l,refetchChecks:u,latestSelectedCheckId:p,setLatestSelectedCheckId:m}),[t,n,r,p,m,o,s,c,l,u]);return W(Or.Provider,{value:h,children:e})}function Ar(){return st(Or)}const jr=at({sql:``,isExecuting:!1});jr.displayName=`RecceQueryContext`;function Mr({children:e,sql:t=``,isExecuting:n=!1,error:r,baseResult:i,currentResult:a,onSqlChange:o,onExecute:s,onCancel:c,sqlQuery:l,setSqlQuery:u,primaryKeys:d,setPrimaryKeys:f,isCustomQueries:p,setCustomQueries:m,baseSqlQuery:h,setBaseSqlQuery:g}){let _=B(()=>({sql:t,isExecuting:n,error:r,baseResult:i,currentResult:a,onSqlChange:o,onExecute:s,onCancel:c,sqlQuery:l,setSqlQuery:u,primaryKeys:d,setPrimaryKeys:f,isCustomQueries:p,setCustomQueries:m,baseSqlQuery:h,setBaseSqlQuery:g}),[t,n,r,i,a,o,s,c,l,u,d,f,p,m,h,g]);return W(jr.Provider,{value:_,children:e})}function Nr(){return st(jr)}function Pr({children:e}){let[t,n]=H(``);return W(kr,{selectedCheckId:t,onSelectCheck:n,latestSelectedCheckId:t,setLatestSelectedCheckId:n,children:e})}const Fr=()=>{};function Ir(){let e=Ar();return{latestSelectedCheckId:e.latestSelectedCheckId??``,setLatestSelectedCheckId:e.setLatestSelectedCheckId??Fr}}const Lr={INTEGER:`integer`,INT:`integer`,BIGINT:`integer`,SMALLINT:`integer`,TINYINT:`integer`,INT64:`integer`,INT32:`integer`,INT16:`integer`,INT8:`integer`,INT4:`integer`,INT2:`integer`,MEDIUMINT:`integer`,SERIAL:`integer`,BIGSERIAL:`integer`,SMALLSERIAL:`integer`,DOUBLE:`number`,FLOAT:`number`,REAL:`number`,NUMERIC:`number`,DECIMAL:`number`,NUMBER:`number`,FLOAT64:`number`,FLOAT32:`number`,"DOUBLE PRECISION":`number`,VARCHAR:`text`,TEXT:`text`,STRING:`text`,CHAR:`text`,"CHARACTER VARYING":`text`,CHARACTER:`text`,NCHAR:`text`,NVARCHAR:`text`,VARCHAR2:`text`,NVARCHAR2:`text`,CLOB:`text`,NCLOB:`text`,TINYTEXT:`text`,MEDIUMTEXT:`text`,LONGTEXT:`text`,BOOLEAN:`boolean`,BOOL:`boolean`,DATE:`date`,TIMESTAMP:`datetime`,DATETIME:`datetime`,TIMESTAMP_NTZ:`datetime`,TIMESTAMP_LTZ:`datetime`,TIMESTAMP_TZ:`datetime`,TIMESTAMPTZ:`datetime`,"TIMESTAMP WITH TIME ZONE":`datetime`,"TIMESTAMP WITHOUT TIME ZONE":`datetime`,"TIMESTAMP WITH LOCAL TIME ZONE":`datetime`,DATETIME2:`datetime`,SMALLDATETIME:`datetime`,DATETIMEOFFSET:`datetime`,TIME:`time`,TIMETZ:`time`,"TIME WITH TIME ZONE":`time`,"TIME WITHOUT TIME ZONE":`time`,BINARY:`binary`,VARBINARY:`binary`,BYTES:`binary`,BLOB:`binary`,BYTEA:`binary`,TINYBLOB:`binary`,MEDIUMBLOB:`binary`,LONGBLOB:`binary`,JSON:`json`,JSONB:`json`,VARIANT:`json`,OBJECT:`json`,STRUCT:`json`,MAP:`json`,ARRAY:`array`,LIST:`array`,GEOGRAPHY:`geography`,GEOMETRY:`geography`,POINT:`geography`,LINESTRING:`geography`,POLYGON:`geography`,MULTIPOINT:`geography`,MULTILINESTRING:`geography`,MULTIPOLYGON:`geography`,GEOMETRYCOLLECTION:`geography`,SDO_GEOMETRY:`geography`};function Rr(e){let t=e.trim().toUpperCase();if(!t)return`unknown`;if(/^TINYINT\s*\(\s*1\s*\)$/.test(t))return`boolean`;let n=t.indexOf(`(`);return Lr[n===-1?t:t.slice(0,n).trimEnd()]??`unknown`}const zr=.6,Br=18/30;function Vr({size:e=`1em`,style:t,className:n,children:r}){return G(`svg`,{viewBox:`0 0 30 18`,width:e,height:typeof e==`number`?e*Br:`${Br}em`,style:t,className:n,"aria-hidden":`true`,children:[W(`rect`,{x:zr,y:zr,width:30-zr*2,height:18-zr*2,rx:3,fill:`none`,stroke:`currentColor`,strokeWidth:1.2}),r]})}function Hr({text:e,size:t,style:n,className:r}){return W(Vr,{size:t,style:n,className:r,children:W(`text`,{x:30/2,y:18/2,textAnchor:`middle`,dominantBaseline:`central`,fontSize:10.5,fontFamily:`monospace`,fontWeight:500,fill:`currentColor`,children:e})})}function Ur(e){return W(Hr,{text:`123`,...e})}function Wr(e){return W(Hr,{text:`1.2`,...e})}function Gr(e){return W(Hr,{text:`abc`,...e})}function Kr(e){return W(Hr,{text:`T/F`,...e})}function qr({size:e,style:t,className:n}){let r=ct(),i=zr,a=zr,o=18-zr*2;return G(Vr,{size:e,style:t,className:n,children:[G(`mask`,{id:r,children:[W(`rect`,{x:i,y:a,width:15-i,height:o,fill:`white`}),W(`text`,{x:15/2,y:18/2,textAnchor:`middle`,dominantBaseline:`central`,fontSize:10,fontFamily:`monospace`,fontWeight:700,fill:`black`,children:`0`})]}),W(`path`,{d:`M15 ${a} H${i+3} Q${i} ${a} ${i} ${a+3} V${a+o-3} Q${i} ${a+o} ${i+3} ${a+o} H15 Z`,fill:`currentColor`,mask:`url(#${r})`}),W(`text`,{x:22.5,y:18/2,textAnchor:`middle`,dominantBaseline:`central`,fontSize:10,fontFamily:`monospace`,fontWeight:700,fill:`currentColor`,children:`1`})]})}function Jr(e){return W(Hr,{text:`{ }`,...e})}function Yr({size:e,style:t,className:n}){return G(Vr,{size:e,style:t,className:n,children:[G(`g`,{stroke:`currentColor`,fill:`none`,strokeWidth:1.2,strokeLinecap:`round`,children:[W(`line`,{x1:6,y1:5,x2:4,y2:5}),W(`line`,{x1:4,y1:5,x2:4,y2:13}),W(`line`,{x1:4,y1:13,x2:6,y2:13}),W(`line`,{x1:24,y1:5,x2:26,y2:5}),W(`line`,{x1:26,y1:5,x2:26,y2:13}),W(`line`,{x1:26,y1:13,x2:24,y2:13})]}),W(`text`,{x:30/2,y:18/2,textAnchor:`middle`,dominantBaseline:`central`,fontSize:9,fontFamily:`monospace`,fontWeight:500,fill:`currentColor`,children:`1,2`})]})}function Xr(e){return W(Hr,{text:`···`,...e})}function Zr({size:e,style:t,className:n}){return W(Vr,{size:e,style:t,className:n,children:G(`g`,{stroke:`currentColor`,fill:`none`,strokeWidth:1,strokeLinecap:`round`,strokeLinejoin:`round`,transform:`translate(9, 2.5)`,children:[W(`rect`,{x:0,y:2,width:11,height:9.5,rx:1.2}),W(`line`,{x1:3,y1:.5,x2:3,y2:3.5}),W(`line`,{x1:8,y1:.5,x2:8,y2:3.5}),W(`line`,{x1:0,y1:5.5,x2:11,y2:5.5})]})})}function Qr({size:e,style:t,className:n}){return W(Vr,{size:e,style:t,className:n,children:G(`g`,{stroke:`currentColor`,fill:`none`,strokeWidth:1,strokeLinecap:`round`,strokeLinejoin:`round`,transform:`translate(4, 2.5)`,children:[W(`rect`,{x:0,y:2,width:9.5,height:8.5,rx:1.2}),W(`line`,{x1:2.5,y1:.5,x2:2.5,y2:3.5}),W(`line`,{x1:7,y1:.5,x2:7,y2:3.5}),W(`line`,{x1:0,y1:5,x2:9.5,y2:5}),W(`circle`,{cx:17,cy:8.5,r:3.2}),W(`line`,{x1:17,y1:6.8,x2:17,y2:8.5}),W(`line`,{x1:17,y1:8.5,x2:18.3,y2:9.5})]})})}function $r({size:e,style:t,className:n}){return W(Vr,{size:e,style:t,className:n,children:G(`g`,{stroke:`currentColor`,fill:`none`,strokeWidth:1,strokeLinecap:`round`,strokeLinejoin:`round`,transform:`translate(10, 3.5)`,children:[W(`circle`,{cx:5,cy:5.5,r:5}),W(`line`,{x1:5,y1:3,x2:5,y2:5.5}),W(`line`,{x1:5,y1:5.5,x2:7,y2:6.8})]})})}function ei({size:e,style:t,className:n}){return W(Vr,{size:e,style:t,className:n,children:G(`g`,{stroke:`currentColor`,fill:`none`,strokeWidth:1,strokeLinecap:`round`,strokeLinejoin:`round`,children:[W(`path`,{d:`M15 14.5 C15 14.5 10.5 11 10.5 8 A4.5 4.5 0 0 1 19.5 8 C19.5 11 15 14.5 15 14.5 Z`,strokeWidth:1.2}),W(`circle`,{cx:15,cy:8,r:1.5,fill:`currentColor`,stroke:`none`})]})})}function ti(e){let{name:t,status:n,baseType:r,currentType:i,cllAvailable:a,impacted:o}=e,s;switch(n){case`added`:s=i?`${t} added ${i}`:`${t} added`;break;case`removed`:return`deleted ${t}`;case`type_changed`:s=`${t}, was ${r} now ${i}`;break;case`definition_changed`:s=i?`${t} ${i} changed definition`:`${t} changed definition`;break;case`definition_unknown`:s=i?`${t} ${i} change status unknown`:`${t} change status unknown`;break;case`unchanged`:s=i?`${t} ${i}`:t;break;default:s=r&&i&&r!==i?`${t}, was ${r} now ${i}`:i?`${t} ${i}`:t;break}return o&&(s+=` · impacted`),a&&(s+=` · Click for column lineage`),s}const ni={integer:Ur,number:Wr,text:Gr,boolean:Kr,date:Zr,datetime:Qr,time:$r,binary:qr,json:Jr,array:Yr,geography:ei,unknown:Xr};function ri({type:e,size:t,style:n,className:r,disableTooltip:i}){let a=ni[Rr(e)],o=W(`span`,{"data-testid":`data-type-icon`,style:{display:`inline-flex`,alignItems:`center`,lineHeight:0},children:W(a,{size:t,style:n,className:r})});return i?o:W(Z,{title:e,placement:`top`,arrow:!0,children:o})}const ii=.35,ai=.1,oi=.15,si=`opacity(0.4) grayscale(40%)`,ci=e=>W(`svg`,{stroke:`currentColor`,fill:`currentColor`,strokeWidth:`0`,viewBox:`0 0 16 16`,height:`1em`,width:`1em`,xmlns:`http://www.w3.org/2000/svg`,...e,children:W(`path`,{fillRule:`evenodd`,clipRule:`evenodd`,d:`M1.5 1h13l.5.5v13l-.5.5h-13l-.5-.5v-13l.5-.5zM2 2v12h12V2H2zm6.5 2.5v2.5h2.5v1H8.5v2.5h-1V8H5V7h2.5V4.5h1z`})}),li=e=>W(`svg`,{stroke:`currentColor`,fill:`currentColor`,strokeWidth:`0`,viewBox:`0 0 16 16`,height:`1em`,width:`1em`,xmlns:`http://www.w3.org/2000/svg`,...e,children:W(`path`,{fillRule:`evenodd`,clipRule:`evenodd`,d:`M1.5 1h13l.5.5v13l-.5.5h-13l-.5-.5v-13l.5-.5zM2 2v12h12V2H2zm3 5.5h6v1H5v-1z`})}),ui=e=>G(`svg`,{stroke:`currentColor`,fill:`currentColor`,strokeWidth:`0`,viewBox:`0 0 16 16`,height:`1em`,width:`1em`,xmlns:`http://www.w3.org/2000/svg`,...e,children:[W(`path`,{d:`M1.5 1h13l.5.5v13l-.5.5h-13l-.5-.5v-13l.5-.5zM2 2v12h12V2H2z`}),W(`path`,{d:`M10.6 8.7c-.1.1-.3.2-.5.2h-.1l-1.4-.3c-.5-.1-1.1-.3-1.8-.3-.6 0-1 .2-1.3.5-.2.2-.2.4-.2.7v.1l-.9.3v-.2c0-.3 0-.6.1-.9.2-.4.5-.8 1-1.1.5-.4 1.2-.5 2-.5h.2l1.5.4h.1c.5.1 1 .3 1.5.3.6 0 .9-.2 1.2-.4.2-.2.3-.5.3-.8v-.3l.8-.3h.1v.3c0 .6-.2 1.2-.6 1.6-.2.2-.3.4-.5.5l-.5.2z`})]}),di=e=>W(`svg`,{stroke:`currentColor`,fill:`currentColor`,strokeWidth:`0`,viewBox:`0 0 16 16`,height:`1em`,width:`1em`,xmlns:`http://www.w3.org/2000/svg`,...e,children:W(`path`,{fillRule:`evenodd`,clipRule:`evenodd`,d:`M8 11a3 3 0 1 0 0-6 3 3 0 0 0 0 6z`})}),fi=e=>G(`svg`,{stroke:`currentColor`,fill:`currentColor`,strokeWidth:`0`,viewBox:`0 0 16 16`,height:`1em`,width:`1em`,xmlns:`http://www.w3.org/2000/svg`,...e,children:[W(`path`,{fillRule:`evenodd`,clipRule:`evenodd`,d:`M1.5 1h13l.5.5v13l-.5.5h-13l-.5-.5v-13l.5-.5zM2 2v12h12V2H2z`}),W(`path`,{d:`M7.5 4h1v5h-1V4zm0 6h1v1.5h-1V10z`})]}),pi=e=>W(`svg`,{stroke:`currentColor`,fill:`currentColor`,strokeWidth:`0`,viewBox:`0 0 512 512`,height:`1em`,width:`1em`,xmlns:`http://www.w3.org/2000/svg`,...e,children:W(`path`,{d:`M239.1 6.3l-208 78c-18.7 7-31.1 25-31.1 45v225.1c0 18.2 10.3 34.8 26.5 42.9l208 104c13.5 6.8 29.4 6.8 42.9 0l208-104c16.3-8.1 26.5-24.8 26.5-42.9V129.3c0-20-12.4-37.9-31.1-44.9l-208-78C262 2.2 250 2.2 239.1 6.3zM256 68.4l192 72v1.1l-192 78-192-78v-1.1l192-72zm32 356V275.5l160-65v133.9l-160 80z`})}),mi=e=>W(`svg`,{stroke:`currentColor`,fill:`currentColor`,strokeWidth:`0`,viewBox:`0 0 448 512`,height:`1em`,width:`1em`,xmlns:`http://www.w3.org/2000/svg`,...e,children:W(`path`,{d:`M448 73.143v45.714C448 159.143 347.667 192 224 192S0 159.143 0 118.857V73.143C0 32.857 100.333 0 224 0s224 32.857 224 73.143zM448 176v102.857C448 319.143 347.667 352 224 352S0 319.143 0 278.857V176c48.125 33.143 136.208 48.572 224 48.572S399.874 209.143 448 176zm0 160v102.857C448 479.143 347.667 512 224 512S0 479.143 0 438.857V336c48.125 33.143 136.208 48.572 224 48.572S399.874 369.143 448 336z`})}),hi=e=>W(`svg`,{stroke:`currentColor`,fill:`currentColor`,strokeWidth:`0`,viewBox:`0 0 512 512`,height:`1em`,width:`1em`,xmlns:`http://www.w3.org/2000/svg`,...e,children:W(`path`,{d:`M64 96H0c0 123.7 100.3 224 224 224v144c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V320C288 196.3 187.7 96 64 96zm384-64c-84.2 0-157.4 46.5-195.7 115.2 27.7 30.2 48.2 66.9 59 107.6C424 243.1 512 147.9 512 32h-64z`})}),gi=e=>W(`svg`,{stroke:`currentColor`,fill:`currentColor`,strokeWidth:`0`,viewBox:`0 0 512 512`,height:`1em`,width:`1em`,xmlns:`http://www.w3.org/2000/svg`,...e,children:W(`path`,{d:`M512 144v288c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V144c0-26.5 21.5-48 48-48h88l12.3-32.9c7-18.7 24.9-31.1 44.9-31.1h125.5c20 0 37.9 12.4 44.9 31.1L376 96h88c26.5 0 48 21.5 48 48zM376 288c0-66.2-53.8-120-120-120s-120 53.8-120 120 53.8 120 120 120 120-53.8 120-120zm-32 0c0 48.5-39.5 88-88 88s-88-39.5-88-88 39.5-88 88-88 88 39.5 88 88z`})}),_i=e=>W(`svg`,{stroke:`currentColor`,fill:`currentColor`,strokeWidth:`0`,viewBox:`0 0 448 512`,height:`1em`,width:`1em`,xmlns:`http://www.w3.org/2000/svg`,...e,children:W(`path`,{d:`M160 80c0-26.5 21.5-48 48-48h32c26.5 0 48 21.5 48 48v352c0 26.5-21.5 48-48 48h-32c-26.5 0-48-21.5-48-48V80zM0 272c0-26.5 21.5-48 48-48h32c26.5 0 48 21.5 48 48v160c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V272zM368 96h32c26.5 0 48 21.5 48 48v288c0 26.5-21.5 48-48 48h-32c-26.5 0-48-21.5-48-48V144c0-26.5 21.5-48 48-48z`})}),vi=e=>W(`svg`,{stroke:`currentColor`,fill:`currentColor`,strokeWidth:`0`,viewBox:`0 0 512 512`,height:`1em`,width:`1em`,xmlns:`http://www.w3.org/2000/svg`,...e,children:W(`path`,{d:`M0 256a256 256 0 1 1 512 0A256 256 0 1 1 0 256zm320 96c0-15.9-5.8-30.4-15.3-41.6l76.6-147.4c6.1-11.8 1.5-26.3-10.2-32.4s-26.2-1.5-32.4 10.2L262.1 288.3c-2-.2-4-.3-6.1-.3c-35.3 0-64 28.7-64 64s28.7 64 64 64s64-28.7 64-64z`})}),yi=e=>W(`svg`,{stroke:`currentColor`,fill:`currentColor`,strokeWidth:`0`,viewBox:`0 0 512 512`,height:`1em`,width:`1em`,xmlns:`http://www.w3.org/2000/svg`,...e,children:W(`path`,{d:`M418.4 157.9c35.3-8.3 61.6-40 61.6-77.9c0-44.2-35.8-80-80-80c-43.4 0-78.7 34.5-80 77.5L136.2 151.1C121.7 136.8 101.9 128 80 128c-44.2 0-80 35.8-80 80s35.8 80 80 80c12.2 0 23.8-2.7 34.1-7.6L259.7 407.8c-2.4 7.6-3.7 15.8-3.7 24.2c0 44.2 35.8 80 80 80s80-35.8 80-80c0-27.7-14-52.1-35.4-66.4l37.8-207.7zM156.3 232.2c2.2-6.9 3.5-14.2 3.7-21.7l183.8-73.5c3.6 3.5 7.4 6.7 11.6 9.5L317.6 354.1c-5.5 1.3-10.8 3.1-15.8 5.5L156.3 232.2z`})}),bi=e=>W(`svg`,{stroke:`currentColor`,fill:`currentColor`,strokeWidth:`0`,viewBox:`0 0 512 512`,height:`1em`,width:`1em`,xmlns:`http://www.w3.org/2000/svg`,...e,children:W(`path`,{d:`M256 128C141.4 128 37.5 193.3 1.6 246.1c-2.1 3.2-2.1 7.5 0 10.7C37.5 309.7 141.4 384 256 384s218.5-74.3 254.4-127.2c2.1-3.2 2.1-7.5 0-10.7C474.5 193.3 370.6 128 256 128zm0 208c-53 0-96-43-96-96s43-96 96-96 96 43 96 96-43 96-96 96zm0-144c-26.5 0-48 21.5-48 48s21.5 48 48 48 48-21.5 48-48-21.5-48-48-48z`})}),xi=e=>{let t=ct(),n=`inc-bottom-${t}`,r=`inc-top-${t}`;return G(`svg`,{stroke:`currentColor`,fill:`currentColor`,strokeWidth:`0`,viewBox:`0 0 512 512`,height:`1em`,width:`1em`,xmlns:`http://www.w3.org/2000/svg`,...e,children:[G(`defs`,{children:[W(`clipPath`,{id:n,children:W(`rect`,{x:`0`,y:`200`,width:`512`,height:`312`})}),W(`clipPath`,{id:r,children:W(`rect`,{x:`0`,y:`0`,width:`512`,height:`200`})})]}),W(`path`,{clipPath:`url(#${n})`,d:`M239.1 6.3l-208 78c-18.7 7-31.1 25-31.1 45v225.1c0 18.2 10.3 34.8 26.5 42.9l208 104c13.5 6.8 29.4 6.8 42.9 0l208-104c16.3-8.1 26.5-24.8 26.5-42.9V129.3c0-20-12.4-37.9-31.1-44.9l-208-78C262 2.2 250 2.2 239.1 6.3zM256 68.4l192 72v1.1l-192 78-192-78v-1.1l192-72zm32 356V275.5l160-65v133.9l-160 80z`}),W(`path`,{clipPath:`url(#${r})`,d:`M239.1 6.3l-208 78c-18.7 7-31.1 25-31.1 45v225.1c0 18.2 10.3 34.8 26.5 42.9l208 104c13.5 6.8 29.4 6.8 42.9 0l208-104c16.3-8.1 26.5-24.8 26.5-42.9V129.3c0-20-12.4-37.9-31.1-44.9l-208-78C262 2.2 250 2.2 239.1 6.3zM256 68.4l192 72v1.1l-192 78-192-78v-1.1l192-72zm32 356V275.5l160-65v133.9l-160 80z`,fill:`none`,stroke:`currentColor`,strokeWidth:`12`,strokeDasharray:`20 12`})]})},Si=e=>W(`svg`,{stroke:`currentColor`,fill:`none`,strokeWidth:`0`,viewBox:`0 0 512 512`,height:`1em`,width:`1em`,xmlns:`http://www.w3.org/2000/svg`,...e,children:W(`path`,{d:`M239.1 6.3l-208 78c-18.7 7-31.1 25-31.1 45v225.1c0 18.2 10.3 34.8 26.5 42.9l208 104c13.5 6.8 29.4 6.8 42.9 0l208-104c16.3-8.1 26.5-24.8 26.5-42.9V129.3c0-20-12.4-37.9-31.1-44.9l-208-78C262 2.2 250 2.2 239.1 6.3zM256 68.4l192 72v1.1l-192 78-192-78v-1.1l192-72zm32 356V275.5l160-65v133.9l-160 80z`,fill:`none`,stroke:`currentColor`,strokeWidth:`12`,strokeDasharray:`20 12`})}),Ci=e=>G(`svg`,{stroke:`currentColor`,fill:`currentColor`,strokeWidth:`0`,viewBox:`0 0 512 512`,height:`1em`,width:`1em`,xmlns:`http://www.w3.org/2000/svg`,...e,children:[W(`g`,{transform:`translate(0, 0) scale(0.75)`,children:W(`path`,{d:`M239.1 6.3l-208 78c-18.7 7-31.1 25-31.1 45v225.1c0 18.2 10.3 34.8 26.5 42.9l208 104c13.5 6.8 29.4 6.8 42.9 0l208-104c16.3-8.1 26.5-24.8 26.5-42.9V129.3c0-20-12.4-37.9-31.1-44.9l-208-78C262 2.2 250 2.2 239.1 6.3zM256 68.4l192 72v1.1l-192 78-192-78v-1.1l192-72zm32 356V275.5l160-65v133.9l-160 80z`})}),W(`g`,{transform:`translate(250, 260) scale(0.5)`,children:W(`path`,{d:`M256 128C141.4 128 37.5 193.3 1.6 246.1c-2.1 3.2-2.1 7.5 0 10.7C37.5 309.7 141.4 384 256 384s218.5-74.3 254.4-127.2c2.1-3.2 2.1-7.5 0-10.7C474.5 193.3 370.6 128 256 128zm0 208c-53 0-96-43-96-96s43-96 96-96 96 43 96 96-43 96-96 96zm0-144c-26.5 0-48 21.5-48 48s21.5 48 48 48 48-21.5 48-48-21.5-48-48-48z`})})]}),wi={added:ci,removed:li,modified:ui,impacted:fi};function Ti(e,t){return e===`cll`?{colors:$,bg:t?Ii:Fi}:{colors:Mi,bg:t?Pi:Ni}}function Ei(e,t,n=`default`){let r=e??`unchanged`,{colors:i,bg:a}=Ti(n,t),o=i[r],s=a[r];return{color:o,hexColor:o,backgroundColor:s,hexBackgroundColor:s,icon:wi[r]}}function Di(e){return Ei(`impacted`,e,`cll`)}function Oi(e,t){let{changeStatus:n,isImpacted:r,newCllExperience:i}=e;return i&&r&&(!n||n===`unchanged`)?Di(t):Ei(n,t,i?`cll`:`default`)}function ki(e){switch(e){case`model`:return{color:P.cyan[200],icon:pi};case`source`:return{color:P.green[300],icon:mi};case`seed`:return{color:P.green[500],icon:hi};case`snapshot`:return{color:P.green[500],icon:gi};case`metric`:return{color:P.rose[200],icon:_i};case`exposure`:return{color:P.rose[200],icon:vi};case`semantic_model`:return{color:P.rose[400],icon:yi};default:return{color:`inherit`,icon:void 0}}}function Ai(e){switch(e){case`table`:return{color:P.cyan[200],icon:pi};case`view`:return{color:P.fuchsia[300],icon:bi};case`incremental`:return{color:P.iochmara[300],icon:xi};case`ephemeral`:return{color:P.neutral[400],icon:Si};case`materialized_view`:case`dynamic_table`:case`streaming_table`:return{color:P.fuchsia[200],icon:Ci};default:return{color:`inherit`,icon:void 0}}}function ji(e,t,n){return t?`${e} - ${t===`model`&&n||t}`:e}const Mi={added:P.green[500],removed:P.red[500],modified:P.amber[500],unchanged:P.neutral[500]},Ni={added:P.green[100],removed:P.red[200],modified:P.amber[100],unchanged:P.white},Pi={added:P.green[900],removed:P.red[950],modified:P.amber[900],unchanged:P.neutral[700]},$={added:`rgb(46 160 67)`,removed:`rgb(248 81 73)`,modified:`rgb(212 133 11)`,impacted:`rgb(252 211 77)`,unchanged:P.neutral[500]},Fi={added:`rgb(222 248 227)`,removed:`rgb(252 225 224)`,modified:`rgb(255 237 175)`,impacted:`rgb(254 249 227)`,unchanged:P.white},Ii={added:`rgb(30 58 30)`,removed:`rgb(68 35 35)`,modified:`rgb(75 65 33)`,impacted:`rgb(50 44 24)`,unchanged:`rgb(38 38 38)`},Li=`252 211 77`,Ri={light:$.impacted,dark:`rgb(${Li})`},zi={light:`rgb(${Li} / 0.35)`,dark:`rgb(${Li} / 0.18)`},Bi={light:`rgb(146 64 14)`,dark:`rgb(${Li})`},Vi=$.modified,Hi={light:`rgb(255 173 21 / 0.25)`,dark:`rgb(255 173 21 / 0.2)`},Ui={light:`rgb(160 100 0)`,dark:`rgb(255 200 80)`},Wi={light:$.added,dark:`rgb(80 200 100)`},Gi={light:`rgb(46 160 67 / 0.2)`,dark:`rgb(46 160 67 / 0.2)`},Ki={light:`rgb(22 110 40)`,dark:Wi.dark},qi=24,Ji=280,Yi={passthrough:{letter:`P`,color:`default`},renamed:{letter:`R`,color:`warning`},derived:{letter:`D`,color:`warning`},source:{letter:`S`,color:`info`},unknown:{letter:`U`,color:`error`}};function Xi({size:e=14}){return G(`svg`,{width:e,height:e,viewBox:`0 0 16 16`,fill:`currentColor`,xmlns:`http://www.w3.org/2000/svg`,children:[W(`circle`,{cx:`8`,cy:`3`,r:`1.5`}),W(`circle`,{cx:`8`,cy:`8`,r:`1.5`}),W(`circle`,{cx:`8`,cy:`13`,r:`1.5`})]})}function Zi({changeStatus:e,newCllExperience:t}){if(!e)return null;let n=(t?$:Mi)[e];return W(K,{sx:{width:14,height:14,borderRadius:`50%`,backgroundColor:n,color:`white`,fontSize:10,fontWeight:`bold`,display:`flex`,alignItems:`center`,justifyContent:`center`,flexShrink:0},children:{added:`+`,removed:`-`,modified:`~`}[e]})}function Qi({transformationType:e}){if(!e)return null;let t=Yi[e];return W(Zt,{label:t.letter,size:`small`,color:t.color,sx:{fontSize:`8pt`,height:18,minWidth:18,"& .MuiChip-label":{px:.5}}})}function $i({id:e,data:t,showContent:n=!0,showChangeAnalysis:r=!1,isDark:i=!1,newCllExperience:a,onColumnClick:o,onContextMenu:s}){let{column:c,type:l,transformationType:u,changeStatus:d,isHighlighted:f=!0,isFocused:p=!1,isImpacted:m=!1}=t,h=a??t.newCllExperience??!1,[g,_]=H(!1);if(!n)return null;let v=r&&d,y=h&&d?(i?Ii:Fi)[d]:void 0,b=h&&d?$[d]:void 0,x=m&&!d?Di(i):void 0,S=y??x?.backgroundColor,C=b??x?.color,w=h&&i?`#262626`:`background.paper`,T=h&&i?`#333333`:`action.hover`,E=h&&i?`#404040`:`action.selected`,D=h&&i?`#ffffff`:`text.primary`;return G(K,{onClick:()=>o?.(e),sx:{display:`flex`,width:280,padding:`0px 10px`,border:`1px solid`,borderColor:`divider`,backgroundColor:S||(p?E:g?T:w),borderLeft:C?`3px solid ${C}`:void 0,filter:f?`none`:si,cursor:`pointer`,transition:`background-color 0.15s ease`},onMouseEnter:()=>_(!0),onMouseLeave:()=>_(!1),children:[G(K,{sx:{display:`flex`,fontSize:`11px`,color:D,width:`100%`,gap:`6px`,alignItems:`center`,height:`23px`},children:[v?W(Zi,{changeStatus:d,newCllExperience:h}):W(Qi,{transformationType:u}),W(K,{sx:{overflow:`hidden`,textOverflow:`ellipsis`,whiteSpace:`nowrap`,flexGrow:1,height:`25px`,lineHeight:`25px`},children:c}),g&&s?W(K,{sx:{display:`inline-flex`,alignItems:`center`,cursor:`pointer`,"&:hover":{color:`text.primary`}},onClick:t=>{t.preventDefault(),t.stopPropagation(),s(t,e)},"data-testid":`column-kebab-menu`,children:W(Xi,{size:14})}):l&&W(ri,{type:l,style:{flexShrink:0,opacity:.7,fontSize:`1rem`}})]}),W(en,{type:`target`,position:nn.Left,isConnectable:!1,style:{left:0,visibility:`hidden`}}),W(en,{type:`source`,position:nn.Right,isConnectable:!1,style:{right:0,visibility:`hidden`}})]})}const ea=L($i);ea.displayName=`LineageColumnNode`;function ta({id:e,sourceX:t,sourceY:n,targetX:r,targetY:i,sourcePosition:a,targetPosition:o,data:s,selected:c}){let l=s?.changeStatus??`unchanged`,u=s?.isHighlighted??!1,d=s?.label,[f,p,m]=rn({sourceX:t,sourceY:n,sourcePosition:a,targetX:r,targetY:i,targetPosition:o}),h=$[l];return G(U,{children:[W(Qt,{id:e,path:f,style:{stroke:h,strokeWidth:u||c?2.5:1.5,opacity:u||c?1:.6}}),d&&W($t,{children:W(`div`,{style:{position:`absolute`,transform:`translate(-50%, -50%) translate(${p}px,${m}px)`,fontSize:10,fontWeight:500,background:`white`,padding:`2px 4px`,borderRadius:4,pointerEvents:`all`},children:d})})]})}const na=L(ta);na.displayName=`LineageEdge`;function ra({changedOnly:e,onChange:t}){return W(sn,{control:W(on,{checked:e??!1,onChange:()=>{t()},size:`small`}),label:`Changed only`,slotProps:{typography:{variant:`body2`}}})}function ia({value:e,onChange:t,textOn:n,textOff:r}){return G(cn,{variant:`outlined`,size:`xsmall`,sx:{borderRadius:1},children:[W(q,{onClick:()=>{t(!1)},sx:{color:e?`text.disabled`:`text.primary`,bgcolor:e?`action.hover`:`background.paper`,borderColor:`divider`,"&:hover":{bgcolor:e?`action.selected`:`background.paper`,borderColor:`divider`}},children:r??`Off`}),W(q,{onClick:()=>{t(!0)},sx:{color:e?`text.primary`:`text.disabled`,bgcolor:e?`background.paper`:`action.hover`,borderColor:`divider`,"&:hover":{bgcolor:e?`background.paper`:`action.selected`,borderColor:`divider`}},children:n??`On`})]})}function aa({displayMode:e,onDisplayModeChanged:t}){return G(U,{children:[e===`inline`&&G(U,{children:[W(ze,{value:`Base`,colorPalette:`red`,grayOut:!1,fontSize:`10pt`,noCopy:!0}),W(ze,{value:`Current`,colorPalette:`green`,grayOut:!1,fontSize:`10pt`,noCopy:!0})]}),W(ia,{value:e===`side_by_side`,onChange:e=>{t(e?`side_by_side`:`inline`)},textOff:`Inline`,textOn:`Side by side`})]})}const oa=e=>{let{defaultValues:t,suggestionList:n,onValuesChange:r,className:i}=e,[a,o]=H(t??[]),[s,c]=H(``),[l,u]=H(!1),[d,f]=H(null),p=V(null),m=!!d,h=t=>t.length>1?`${t.length} ${e.unitName}s selected`:t.length===1?t[0]:``,g=e=>{f(e.currentTarget),setTimeout(()=>p.current?.focus(),100)},_=()=>{f(null),u(!1)},v=e=>{a.includes(e)||(c(``),o([...a,e]),r([...a,e]))},y=()=>{c(``),o([]),r([])},b=e=>{o(a.filter(t=>t!==e)),r(a.filter(t=>t!==e))},x=s.toLowerCase(),S=n?.filter(e=>x===``||e.toLowerCase().includes(x)).filter(e=>!a.includes(e))??[],C=()=>{switch(e.size){case`2xs`:return`0.625rem`;case`xs`:return`0.75rem`;case`sm`:return`0.875rem`;default:return`0.875rem`}};return G(K,{sx:{display:`flex`,alignItems:`center`,width:e.width},className:i,children:[G(q,{variant:`outlined`,color:`neutral`,size:`small`,onClick:g,disabled:e.disabled,sx:{width:`100%`,height:(()=>{switch(e.size){case`2xs`:return 24;case`xs`:return 28;case`sm`:return 32;default:return 36}})(),justifyContent:`space-between`,textTransform:`none`,fontSize:C(),fontWeight:`normal`,px:1},children:[W(Y,{component:`span`,sx:{fontSize:C(),color:a.length>0?`text.primary`:`text.secondary`,overflow:`hidden`,textOverflow:`ellipsis`,whiteSpace:`nowrap`},children:h(a)||e.placeholder||``}),a.length>0&&W(Y,{component:`span`,onClick:e=>{e.stopPropagation(),y()},sx:{fontSize:C(),color:`primary.main`,cursor:`pointer`,ml:1,"&:hover":{textDecoration:`underline`}},children:`Clear`})]}),G(fn,{anchorEl:d,open:m,onClose:_,slotProps:{paper:{sx:{width:e.width,fontSize:C()}}},children:[W(K,{sx:{px:.5,py:.5},children:G(K,{sx:{border:`1px solid`,borderColor:`divider`,borderRadius:1,p:.5,display:`flex`,flexWrap:`wrap`,gap:.5,alignItems:`center`},className:`no-track-pii-safe`,children:[a.map(e=>W(Zt,{label:e,size:`small`,onDelete:()=>b(e),sx:{height:22,fontSize:C()}},e)),W(dn,{inputRef:p,placeholder:`Filter or add custom keys`,value:s,onChange:e=>{c(e.target.value),u(!0)},onKeyDown:e=>{e.key!==`Escape`&&e.stopPropagation();let t=e.target,n=t.value.trim().replace(`,`,``);switch(e.key){case`,`:case`Enter`:e.preventDefault(),n&&(v(n),c(``));break;case`Backspace`:t.value===``&&a.length>0&&(o(a.slice(0,-1)),r(a.slice(0,-1)));break;default:break}},onBlur:()=>{p.current&&l&&p.current.focus()},sx:{flex:1,minWidth:120,fontSize:C(),"& input":{p:.5}}})]})}),W(Et,{}),s!==``&&!n?.includes(s)&&G(Q,{onClick:()=>{v(s),u(!1)},sx:{fontSize:C()},children:[`Add '`,s,`' to the list`]}),S.slice(0,10).map((e,t)=>W(Q,{onClick:()=>{v(e)},sx:{fontSize:C()},children:e},pn.uniqueId(`option-${t}`))),S.length>10&&W(Z,{title:`Please use filter to find more items`,placement:`top`,children:G(K,{sx:{px:1.5,py:.5,color:`text.secondary`,fontSize:`8pt`},children:[`and `,S.length-10,` more items...`]})})]})]})};function sa(e){let t=[`CHAR`,`VARCHAR`,`TINYTEXT`,`TEXT`,`MEDIUMTEXT`,`LONGTEXT`,`NCHAR`,`NVARCHAR`,`VARCHAR2`,`NVARCHAR2`,`CLOB`,`NCLOB`,`VARCHAR(MAX)`,`XML`,`JSON`],n=e.trim().toUpperCase();return t.includes(n)?!0:/^(VARCHAR|NVARCHAR|VARCHAR2|NVARCHAR2|CHAR|NCHAR)\(\d+\)$/.test(n)}function ca(e){return[`BOOLEAN`,`TINYINT(1)`,`BIT`,`NUMBER(1)`,`BOOL`].includes(e.toUpperCase())}function la(e){return[`DATE`,`DATETIME`,`TIMESTAMP`,`TIME`,`YEAR`,`DATETIME2`,`SMALLDATETIME`,`DATETIMEOFFSET`,`INTERVAL`,`TIMESTAMPTZ`,`TIMETZ`,`TIMESTAMP WITH TIME ZONE`,`TIMESTAMP WITH LOCAL TIME ZONE`,`TIMESTAMP_LTZ`,`TIMESTAMP_NTZ`,`TIMESTAMP_TZ`].includes(e.toUpperCase())}function ua(e){return!sa(e)&&!ca(e)&&!la(e)}function da({params:e,onParamsChanged:t,setIsReadyToExecute:n}){let{columns:r,isLoading:i,error:a}=vu(e.model),o=r.filter(e=>!sa(e.type)&&!ca(e.type)&&!la(e.type));return i?W(K,{children:`Loading...`}):r.length===0||a?W(K,{children:`Error: Please provide the 'catalog.json' to list column candidates`}):W(K,{sx:{m:`16px`},children:G(_n,{fullWidth:!0,disabled:o.length===0,children:[W(vn,{sx:{mb:1},children:`Pick a column to show Histogram Diff`}),G(yn,{value:e.column_name,onChange:r=>{let i=r.target.value;n(!!i);let a=o.find(e=>e.name===i)?.type??``;t({...e,column_name:i,column_type:a})},children:[W(`option`,{value:``,children:o.length===0?`No numeric column is available`:`Select column`}),o.map(e=>G(`option`,{value:e.name,className:`no-track-pii-safe`,children:[e.name,` : `,e.type]},e.name))]})]})})}const fa=[{status:`added`,label:`Added`,description:`Newly added resource`},{status:`removed`,label:`Removed`,description:`Removed resource`},{status:`modified`,label:`Modified`,description:`Modified resource`},{status:`impacted`,label:`Impacted`,description:`Downstream of a modified resource`}],pa=[{type:`passthrough`,label:`Passthrough`,description:`Column passes through unchanged`},{type:`renamed`,label:`Renamed`,description:`Column was renamed from source`},{type:`derived`,label:`Derived`,description:`Column is derived from other columns`},{type:`source`,label:`Source`,description:`Original source column`},{type:`unknown`,label:`Unknown`,description:`Transformation type could not be determined`}],ma={added:{color:Mi.added,symbol:`+`},removed:{color:Mi.removed,symbol:`-`},modified:{color:Mi.modified,symbol:`~`}},ha={added:{color:$.added,symbol:`+`},removed:{color:$.removed,symbol:`-`},modified:{color:$.modified,symbol:`~`},impacted:{color:$.impacted,symbol:`!`}},ga={passthrough:{letter:`P`,color:`default`},renamed:{letter:`R`,color:`warning`},derived:{letter:`D`,color:`warning`},source:{letter:`S`,color:`info`},unknown:{letter:`U`,color:`error`}};function _a({status:e,newCllExperience:t}){let n=(t?ha:ma)[e];return W(K,{sx:{width:16,height:16,borderRadius:`50%`,backgroundColor:n.color,color:`white`,fontSize:10,fontWeight:`bold`,display:`flex`,alignItems:`center`,justifyContent:`center`,flexShrink:0},children:n.symbol})}function va({type:e}){let t=ga[e];return W(Zt,{label:t.letter,size:`small`,color:t.color,sx:{fontSize:`8pt`,height:18,minWidth:18,"& .MuiChip-label":{px:.5}}})}function ya({variant:e,showTooltips:t=!0,title:n,className:r,newCllExperience:i=!1}){let a=i?fa:fa.filter(e=>e.status!==`impacted`),o=e===`changeStatus`?a:pa;return G(K,{className:r,sx:{bgcolor:`background.paper`,padding:`12px`,border:`1px solid`,borderColor:`divider`,borderRadius:1,fontSize:`0.875rem`},children:[n&&W(Y,{variant:`caption`,sx:{display:`block`,fontWeight:600,mb:1,color:`text.secondary`},children:n}),e===`changeStatus`&&o.map(e=>{let n=G(K,{sx:{display:`flex`,alignItems:`center`,gap:`8px`,mb:`4px`,"&:last-child":{mb:0}},children:[W(_a,{status:e.status,newCllExperience:i}),W(Y,{variant:`body2`,children:e.label})]},e.status);return t&&e.description?W(Z,{title:e.description,placement:`right`,children:n},e.status):n}),e===`transformation`&&o.map(e=>{let n=G(K,{sx:{display:`flex`,alignItems:`center`,gap:`8px`,mb:`4px`,"&:last-child":{mb:0}},children:[W(va,{type:e.type}),W(Y,{variant:`body2`,children:e.label})]},e.type);return t&&e.description?W(Z,{title:e.description,placement:`right`,children:n},e.type):n})]})}const ba={badge:{fontSize:`0.65rem`,fontWeight:700,lineHeight:1,height:16,minWidth:16,px:.5,borderRadius:`3px`},titleChip:{fontSize:`1rem`,fontWeight:600,lineHeight:1.4,height:`auto`,minWidth:0,px:1,py:.25,borderRadius:`6px`}};function xa({tokens:e,variant:t=`badge`,testId:n,ariaLabel:r,children:i,sx:a,...o}){return W(bn,{"data-testid":n,"aria-label":r,sx:[{display:`inline-flex`,alignItems:`center`,justifyContent:`center`,backgroundColor:e.badgeBg,border:`1px solid ${e.badgeBorder}`,color:e.fg},ba[t],...Array.isArray(a)?a:a?[a]:[]],...o,children:i})}function Sa(e,t){return{isWholeModelChanged:t.wholeModelChangedNodeIds.has(e),isWholeModelImpacted:t.wholeModelImpactedNodeIds.has(e)}}const Ca={changed:{tooltip:`Whole-model change`,ariaLabel:`whole-model change`},impacted:{tooltip:`Whole-model impact`,ariaLabel:`whole-model impact`}},wa={additive:{text:`ADD`,tooltip:`Additive change`,ariaLabel:`additive change`,testId:`whole-model-additive-badge`},"column-changed":{text:`COLUMN`,tooltip:`Column-only change`,ariaLabel:`column-only change`,testId:`column-changed-badge`},"column-impacted":{text:`COLUMN`,tooltip:`Column-only impact`,ariaLabel:`column-only impact`,testId:`column-impacted-badge`}};function Ta(e){return e.wholeModelImpact?e.isWholeModelChanged?`changed`:e.isWholeModelImpacted?`impacted`:null:null}function Ea(e){return!e.wholeModelImpact||e.isWholeModelChanged||e.isWholeModelImpacted?null:e.changeCategory===`non_breaking`?`additive`:e.changeCategory===`partial_breaking`?`column-changed`:e.isImpacted?`column-impacted`:null}function Da(e,t){let n=Ta(e);return n?{kind:n,...Ca[n],tokens:ka(n,t)}:null}function Oa(e,t){let n=Ea(e);return n?{kind:n,...wa[n],tokens:ka(n,t)}:null}function ka(e,t){let n=t?`dark`:`light`;return e===`changed`||e===`column-changed`?{stripeAccent:`var(--schema-color-changed-accent)`,fg:Ui[n],badgeBg:Hi[n],badgeBorder:Vi}:e===`additive`?{stripeAccent:`var(--schema-color-added-accent)`,fg:Ki[n],badgeBg:Gi[n],badgeBorder:Wi[n]}:{stripeAccent:`var(--schema-color-impacted-accent)`,fg:Bi[n],badgeBg:zi[n],badgeBorder:Ri[n]}}function Aa(e){let t=Ta(e);if(t)return Ca[t].tooltip;let n=Ea(e);if(n)return wa[n].tooltip}function ja(e,t){let n=ji(e.name,e.resourceType,e.materialized),r=Aa(t);return r?`${n} - ${r}`:n}const Ma={breaking:`Model-Wide Change`,non_breaking:`Additive Change`,partial_breaking:`Column Change`,unknown:`Unknown`},Na=()=>W(`svg`,{stroke:`currentColor`,fill:`currentColor`,strokeWidth:`0`,viewBox:`0 0 16 16`,height:`1em`,width:`1em`,xmlns:`http://www.w3.org/2000/svg`,children:W(`path`,{d:`M8 3a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3zm0 6.5a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3zm0 6.5a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3z`})});function Pa({name:e,color:t}){return W(K,{sx:{flex:1,color:t,overflow:`hidden`,textOverflow:`ellipsis`,whiteSpace:`nowrap`},children:W(`span`,{children:e})})}function Fa({id:e,data:t,selected:n,interactive:r=!1,selectMode:i=`normal`,isNodeSelected:a=!1,isFocused:o=!1,isHighlighted:s=!0,showContent:c=!0,actionTag:l,showChangeAnalysis:u=!1,changeCategory:d,runsAggregatedTag:f,hasParents:p=!0,hasChildren:m=!0,columnCount:h=0,columnHeight:g=28,isDark:_=!1,newCllExperience:v,isImpacted:y,isWholeModelChanged:b=!1,isWholeModelImpacted:x=!1,wholeModelImpact:S=!1,onNodeClick:C,onNodeDoubleClick:w,onSelect:T,onContextMenu:E}){let[D,O]=H(!1),k=V(null),A=R(()=>{k.current&&=(clearTimeout(k.current),null)},[]),ee=R(()=>{A(),O(!0)},[A]),te=R(()=>{A(),k.current=setTimeout(()=>O(!1),500)},[A]);z(()=>()=>A(),[A]);let{label:ne,changeStatus:re=`unchanged`,isSelected:ie,resourceType:ae,materialized:oe}=t,se=v??t.newCllExperience??!1,ce=y??t.isImpacted??!1,j=a||ie||n||!1,le=h>0,M=i===`action_result`&&l,{icon:ue,color:de,backgroundColor:fe}=Oi({changeStatus:re,isImpacted:ce,newCllExperience:se},_),{icon:pe}=ae===`model`&&oe?Ai(oe):ki(ae),N=de,me=(()=>{let e=_?`#1e1e1e`:`#ffffff`;return c?i===`selecting`?j?de:e:i===`action_result`?M?o||j||D?fe:de:e:o||j||D?fe:e:o||j||D?de:fe})(),he=(()=>{let e=_?`#ffffff`:`#000000`,t=_?`#000000`:`#ffffff`;return i===`selecting`?j?t:e:i===`action_result`&&M&&!j?t:e})(),ge=(()=>{let e=_?`#ffffff`:`#000000`,t=_?`#000000`:`#ffffff`;return i===`selecting`?j?t:e:i===`action_result`&&M&&!j?t:e})(),P=(()=>{let e=_?`#ffffff`:`#000000`,t=_?`#000000`:`#ffffff`;return i===`selecting`?j?t:de:i===`action_result`?M&&!j?t:e:de})(),_e=se?`none`:i===`action_result`?M?`none`:si:s||o||j||D?`none`:si,ve=t=>{i!==`action_result`&&(t.stopPropagation(),T?.(e))},ye=t=>{t.preventDefault(),t.stopPropagation(),E?.(t,e)},be={wholeModelImpact:S,isWholeModelChanged:b,isWholeModelImpacted:x,isImpacted:ce,changeCategory:d},xe=Oa(be,_),Se=ja({name:ne,resourceType:ae,materialized:oe},be),Ce=u&&d&&(!S||d===`unknown`)?Ma[d]:null;return G(K,{onClick:()=>C?.(e),onDoubleClick:()=>w?.(e),onMouseEnter:ee,onMouseLeave:te,sx:{display:`flex`,flexDirection:`column`,width:300,cursor:i===`selecting`?`pointer`:`inherit`,transition:`box-shadow 0.2s ease-in-out`,padding:0,filter:_e},children:[W(tn,{isVisible:D,position:nn.Right,offset:6,align:`center`,children:W(K,{onMouseEnter:ee,onMouseLeave:te,sx:{display:`flex`,alignItems:`center`,gap:.75,"&::before":{content:`""`,position:`absolute`,top:0,bottom:0,right:`100%`,width:`12px`},position:`relative`,px:.75,py:.5,borderRadius:1,backgroundColor:`background.paper`,border:`1px solid`,borderColor:`divider`,boxShadow:`0 2px 6px rgb(0 0 0 / 0.15), 0 1px 2px rgb(0 0 0 / 0.1)`},children:E&&W(K,{"data-testid":`lineage-node-kebab`,onClick:ye,sx:{cursor:`pointer`,color:`text.secondary`,"&:hover":{color:`text.primary`}},children:W(Na,{})})})}),G(K,{sx:{display:`flex`,borderColor:N,borderWidth:`2px`,borderStyle:`solid`,borderTopLeftRadius:8,borderTopRightRadius:8,borderBottomLeftRadius:le?0:8,borderBottomRightRadius:le?0:8,backgroundColor:me,height:60},children:[W(K,{sx:{display:`flex`,bgcolor:de,padding:r?`8px`:`2px`,borderRightWidth:`2px`,borderRightStyle:`solid`,borderColor:i===`selecting`?`#00000020`:N,alignItems:`top`,visibility:c?`inherit`:`hidden`},children:r&&W(on,{checked:i===`selecting`&&j||i===`action_result`&&!!M,onClick:ve,disabled:i===`action_result`,size:`small`,sx:{padding:0,color:`inherit`,"&.Mui-checked":{color:`inherit`}}})}),G(K,{sx:{display:`flex`,flex:`1 0 auto`,mx:.5,width:100,flexDirection:`column`},children:[W(Z,{title:Se,placement:`top`,children:G(K,{sx:{display:`flex`,width:`100%`,textAlign:`left`,fontWeight:600,flex:1,p:.5,gap:`5px`,alignItems:`center`,visibility:c?`inherit`:`hidden`},children:[W(Pa,{name:ne,color:he}),xe&&W(xa,{tokens:xe.tokens,testId:xe.testId,ariaLabel:xe.ariaLabel,children:xe.text}),pe&&W(K,{sx:{fontSize:16,color:ge},children:W(pe,{"aria-hidden":`true`})}),re&&ue&&W(K,{sx:{color:P},children:W(ue,{"aria-hidden":`true`})})]})}),W(K,{sx:{display:`flex`,flex:`1 0 auto`,mx:.5,flexDirection:`column`,paddingBottom:.5,visibility:c?`inherit`:`hidden`},children:W(J,{direction:`row`,spacing:1,children:l?G(U,{children:[W(K,{sx:{flexGrow:1}}),l]}):Ce?W(Y,{sx:{height:20,color:`text.secondary`,fontSize:`9pt`,margin:0,fontWeight:600},children:Ce}):i!==`action_result`&&f?f:null})})]})]}),le&&W(K,{sx:{p:`10px 10px`,borderColor:N,borderWidth:`2px`,borderStyle:`solid`,borderTopWidth:0,borderBottomLeftRadius:8,borderBottomRightRadius:8},children:W(K,{sx:{height:`${h*g}px`,overflow:`auto`}})}),p&&W(en,{type:`target`,position:nn.Left,isConnectable:!1}),m&&W(en,{type:`source`,position:nn.Right,isConnectable:!1})]})}const Ia=L(Fa);Ia.displayName=`LineageNode`;const La=e=>({display:`inline-flex`,alignItems:`center`,borderRadius:16,px:1,py:.25,fontSize:`0.75rem`,bgcolor:e?`grey.700`:`grey.100`,color:e?`grey.100`:`inherit`}),Ra={mr:.5,display:`flex`,alignItems:`center`},za={table:`table`,view:`view`,incremental:`incremental`,ephemeral:`ephemeral`,materialized_view:`mat. view`,dynamic_table:`dyn. table`,streaming_table:`stream. table`};function Ba(e){return za[e]??e}function Va({resourceType:e,materialized:t,"data-testid":n}){let r=F(),i=e===`model`&&t!=null,{icon:a}=i?Ai(t):ki(e),o=i?Ba(t):e;return W(Z,{arrow:!0,title:i?`Materialization strategy`:`Type of resource`,children:G(K,{component:`span`,sx:La(r),"data-testid":n,children:[a&&W(K,{component:`span`,sx:Ra,children:W(a,{"aria-hidden":`true`})}),o]})})}const Ha=L(Va);Ha.displayName=`NodeTag`;const Ua=()=>G(K,{component:`span`,sx:{display:`flex`,flexDirection:`column`,gap:`2px`,"& > span":{width:4,height:4,borderRadius:`50%`,backgroundColor:`currentColor`}},children:[W(`span`,{}),W(`span`,{}),W(`span`,{})]});function Wa({checkId:e,primaryActions:t=[],secondaryActions:n=[],onAction:r,variant:i=`combined`,size:a=`small`,menuIcon:o,className:s}){let[c,l]=H(null),u=!!c,d=e=>{e.stopPropagation(),l(e.currentTarget)},f=()=>{l(null)},p=t=>{f(),r?.(e,t)},m=e=>{let t=W(q,{variant:`outlined`,size:a,disabled:e.disabled,onClick:()=>p(e.type),startIcon:e.icon,color:e.destructive?`error`:`inherit`,children:e.label},e.type);return e.disabled&&e.disabledTooltip?W(Z,{title:e.disabledTooltip,children:W(`span`,{children:t})},e.type):t};if(i===`menu`){let e=[...t,...n];return G(K,{className:s,children:[W(X,{onClick:d,size:a,children:o||W(Ua,{})}),W(fn,{anchorEl:c,open:u,onClose:f,children:e.map(e=>G(Q,{onClick:()=>p(e.type),disabled:e.disabled,sx:{color:e.destructive?`error.main`:`inherit`},children:[e.icon&&W(K,{component:`span`,sx:{mr:1,display:`flex`},children:e.icon}),e.label]},e.type))})]})}return i===`buttons`?W(K,{className:s,sx:{display:`flex`,gap:1},children:W(cn,{size:a,variant:`outlined`,children:t.map(m)})}):G(K,{className:s,sx:{display:`flex`,gap:1},children:[t.length>0&&W(cn,{size:a,variant:`outlined`,children:t.map(m)}),n.length>0&&G(U,{children:[W(X,{onClick:d,size:a,children:o||W(Ua,{})}),W(fn,{anchorEl:c,open:u,onClose:f,children:n.map(e=>G(Q,{onClick:()=>p(e.type),disabled:e.disabled,sx:{color:e.destructive?`error.main`:`inherit`},children:[e.icon&&W(K,{component:`span`,sx:{mr:1,display:`flex`},children:e.icon}),e.label]},e.type))})]})]})}const Ga=L(Wa);Ga.displayName=`CheckActions`;function Ka({name:e,onNameChange:t,placeholder:n=`Unnamed check`,disabled:r=!1,className:i}){let[a,o]=H(!1),[s,c]=H(e),l=V(null);z(()=>{c(e)},[e]);let u=R(()=>{r||(c(e),o(!0))},[r,e]),d=R(()=>{let n=s.trim();n&&n!==e&&t?.(n),o(!1)},[s,e,t]),f=R(t=>{t.key===`Enter`?(t.preventDefault(),d()):t.key===`Escape`&&(t.preventDefault(),c(e),o(!1))},[d,e]),p=R(e=>{c(e.target.value)},[]);return z(()=>{let e=e=>{l.current&&!l.current.contains(e.target)&&d()};return a&&document.addEventListener(`mousedown`,e),()=>{document.removeEventListener(`mousedown`,e)}},[a,d]),z(()=>{a&&l.current&&(l.current.focus(),l.current.select())},[a]),W(K,{className:i,sx:{flex:`2`,fontSize:`1rem`,fontWeight:500,overflow:`hidden`,color:`text.primary`,cursor:r?`default`:`pointer`},children:a?W(xn,{inputRef:l,value:s,onChange:p,onKeyDown:f,placeholder:n,size:`small`,sx:{width:`100%`},variant:`outlined`}):W(K,{sx:{flex:`0 1 auto`,textOverflow:`ellipsis`,whiteSpace:`nowrap`,overflow:`hidden`,"&:hover":{textDecoration:r?`none`:`underline`}},onClick:u,children:e||W(K,{component:`span`,sx:{color:`text.secondary`,fontStyle:`italic`},children:n})})})}const qa=L(Ka);qa.displayName=`CheckBreadcrumb`;function Ja(e){return{query:`Q`,query_base:`Q`,query_diff:`QD`,schema_diff:`SD`,lineage_diff:`LD`,profile:`P`,profile_diff:`PD`,row_count:`R`,row_count_diff:`RD`,value_diff:`VD`,histogram_diff:`H`,top_k_diff:`TK`,simple:`•`}[e]||`?`}function Ya(e){return{query:`#3b82f6`,query_base:`#3b82f6`,query_diff:`#8b5cf6`,schema_diff:`#06b6d4`,lineage_diff:`#10b981`,profile:`#f59e0b`,profile_diff:`#f97316`,row_count:`#ec4899`,row_count_diff:`#ef4444`,value_diff:`#6366f1`,histogram_diff:`#14b8a6`,top_k_diff:`#a855f7`,simple:`#6b7280`}[e]||`#6b7280`}function Xa(e){if(!e)return`Check may be outdated`;let t=new Date(e);if(Number.isNaN(t.getTime()))return`Check may be outdated`;if(t.getTime()>Date.now())return`Check may be outdated — last run: just now`;try{return`Check may be outdated — last run: ${Cn(t,{addSuffix:!0})}`}catch{return`Check may be outdated`}}const Za={recce_ai:{label:`AI`,color:`#7c3aed`,bg:`rgb(124 58 237 / 0.12)`},user:{label:`User`,color:`#059669`,bg:`rgb(5 150 105 / 0.12)`},preset_system:{label:`Preset`,color:`#2563eb`,bg:`rgb(37 99 235 / 0.12)`}};function Qa({check:e,isSelected:t=!1,onClick:n,onApprovalChange:r,disableApproval:i=!1,disabledApprovalTooltip:a,disabled:o=!1,className:s}){let c=()=>{!o&&n&&n(e.id)},l=W(on,{checked:e.isApproved??!1,onChange:(t,n)=>{r&&r(e.id,n)},onClick:e=>{e.stopPropagation()},disabled:i||o,size:`small`,sx:{padding:`4px`,"&.Mui-disabled":{opacity:.5}}});return G(K,{className:s,onClick:c,sx:{display:`flex`,alignItems:`center`,gap:1,padding:`8px 12px`,cursor:o?`default`:`pointer`,borderLeft:t?`3px solid`:`3px solid transparent`,borderLeftColor:t?`primary.main`:`transparent`,backgroundColor:t?`action.selected`:`transparent`,opacity:o?.6:1,transition:`background-color 0.15s ease`,"&:hover":{backgroundColor:o?`transparent`:t?`action.selected`:`action.hover`}},children:[W(Zt,{label:Ja(e.type),size:`small`,sx:{minWidth:32,height:24,fontSize:`0.7rem`,fontWeight:600,backgroundColor:`${Ya(e.type)}20`,color:Ya(e.type),"& .MuiChip-label":{px:1}}}),W(Y,{variant:`body2`,sx:{flexGrow:1,overflow:`hidden`,textOverflow:`ellipsis`,whiteSpace:`nowrap`},children:e.name}),e.isOutdated&&W(Z,{title:Xa(e.lastRunAt),children:W(Zt,{label:`Outdated`,size:`small`,sx:{height:20,fontSize:`0.65rem`,fontWeight:500,backgroundColor:`rgb(245 158 11 / 0.12)`,color:`#b45309`,flexShrink:0,"& .MuiChip-label":{px:.75}}})}),e.actorType&&!e.isPreset&&Za[e.actorType]&&W(Zt,{label:Za[e.actorType].label,size:`small`,sx:{height:20,fontSize:`0.65rem`,fontWeight:500,backgroundColor:Za[e.actorType].bg,color:Za[e.actorType].color,flexShrink:0,"& .MuiChip-label":{px:.75}}}),e.isPreset&&W(Zt,{label:`Preset`,size:`small`,variant:`outlined`,sx:{height:20,fontSize:`0.65rem`}}),i&&a?W(Z,{title:a,children:W(`span`,{children:l})}):l]})}const $a=L(Qa);$a.displayName=`CheckCard`;function eo({value:e,onChange:t,placeholder:n=`Add description here`,disabled:r=!1,className:i}){let[a,o]=H(!1),[s,c]=H(e??``);z(()=>{c(e??``)},[e]);let l=R(()=>{r||(o(!0),c(e??``))},[r,e]),u=R(()=>{let e=s.trim();t?.(e||void 0),o(!1)},[s,t]),d=R(()=>{c(e??``),o(!1)},[e]),f=R(e=>{e.key===`Enter`&&(e.metaKey||e.ctrlKey)&&(e.preventDefault(),u()),e.key===`Escape`&&(e.preventDefault(),d())},[u,d]);return a?G(K,{className:i,sx:{height:`100%`},children:[W(xn,{multiline:!0,fullWidth:!0,minRows:3,value:s,onChange:e=>c(e.target.value),onKeyDown:f,placeholder:n,autoFocus:!0,sx:{"& .MuiInputBase-root":{fontSize:`0.875rem`}}}),G(J,{direction:`row`,spacing:1,sx:{mt:1},children:[W(q,{variant:`contained`,size:`small`,onClick:u,children:`Update`}),W(mt,{component:`button`,variant:`body2`,onClick:d,sx:{cursor:`pointer`},children:`Cancel`})]}),G(Y,{variant:`caption`,sx:{color:`text.secondary`,display:`block`,mt:.5},children:[navigator.platform.includes(`Mac`)?`⌘`:`Ctrl`,`+Enter to save, Escape to cancel`]})]}):W(K,{className:i,onClick:l,sx:{height:`100%`,overflow:`auto`,cursor:r?`default`:`pointer`,padding:1,borderRadius:1,"&:hover":{backgroundColor:r?`transparent`:`action.hover`}},children:e?W(Y,{variant:`body2`,sx:{whiteSpace:`pre-wrap`,wordBreak:`break-word`},children:e}):W(Y,{variant:`body2`,sx:{color:`text.secondary`,fontStyle:`italic`},children:n})})}const to=L(eo);to.displayName=`CheckDescription`;function no({checkId:e,name:t,type:n,description:r,isApproved:i=!1,tabs:a=[],defaultTab:o,primaryActions:s=[],secondaryActions:c=[],onAction:l,onDescriptionChange:u,onNameChange:d,disabled:f=!1,headerContent:p,sidebarContent:m,className:h}){let[g,_]=H(o??a[0]?.id),[v,y]=H(!1),[b,x]=H(t),S=()=>{f||(y(!0),x(t))},C=()=>{b.trim()&&b!==t&&d?.(b.trim()),y(!1)},w=e=>{e.key===`Enter`?C():e.key===`Escape`&&(x(t),y(!1))},T=a.find(e=>e.id===g)?.content;return G(K,{className:h,sx:{display:`flex`,flexDirection:`column`,height:`100%`,overflow:`hidden`},children:[G(K,{sx:{p:2,borderBottom:1,borderColor:`divider`},children:[p,G(K,{sx:{display:`flex`,alignItems:`flex-start`,justifyContent:`space-between`,gap:2},children:[G(K,{sx:{flexGrow:1,minWidth:0},children:[v?W(`input`,{type:`text`,value:b,onChange:e=>x(e.target.value),onBlur:C,onKeyDown:w,autoFocus:!0,style:{fontSize:`1.25rem`,fontWeight:500,border:`none`,borderBottom:`2px solid`,borderColor:`currentColor`,outline:`none`,background:`transparent`,width:`100%`}}):W(Y,{variant:`h6`,onClick:S,sx:{cursor:f?`default`:`pointer`,overflow:`hidden`,textOverflow:`ellipsis`,whiteSpace:`nowrap`,"&:hover":{textDecoration:f?`none`:`underline`}},children:t}),G(Y,{variant:`caption`,sx:{color:`text.secondary`},children:[n,` `,i&&`• Approved`]})]}),W(Ga,{checkId:e,primaryActions:s,secondaryActions:c,onAction:l})]})]}),G(K,{sx:{display:`flex`,flexGrow:1,overflow:`hidden`},children:[G(K,{sx:{flexGrow:1,display:`flex`,flexDirection:`column`,overflow:`hidden`},children:[G(K,{sx:{p:2,borderBottom:1,borderColor:`divider`},children:[W(Y,{variant:`subtitle2`,sx:{mb:1},children:`Description`}),W(to,{value:r,onChange:u,disabled:f})]}),a.length>0&&G(U,{children:[W(K,{sx:{borderBottom:1,borderColor:`divider`},children:W(Tn,{value:g,onChange:(e,t)=>_(t),children:a.map(e=>W(wn,{value:e.id,label:e.label},e.id))})}),W(K,{sx:{flexGrow:1,overflow:`auto`,p:2},children:T})]})]}),m&&G(U,{children:[W(Et,{orientation:`vertical`,flexItem:!0}),W(K,{sx:{width:350,flexShrink:0,overflow:`auto`},children:m})]})]})]})}const ro=L(no);ro.displayName=`CheckDetail`;function io({title:e=`No checks yet`,description:t=`Create your first check to start validating data changes`,icon:n,actionText:r,onAction:i,isLoading:a=!1,helperText:o,className:s}){return W(K,{className:s,sx:{display:`flex`,flexDirection:`column`,alignItems:`center`,justifyContent:`center`,textAlign:`center`,padding:4,minHeight:300},children:G(J,{spacing:2,sx:{alignItems:`center`},children:[n&&W(K,{sx:{color:`text.secondary`,fontSize:48,mb:1},children:n}),W(Y,{variant:`h6`,sx:{fontWeight:500,color:`text.primary`},children:e}),W(Y,{variant:`body2`,sx:{color:`text.secondary`,maxWidth:400},children:t}),r&&i&&W(q,{variant:`contained`,onClick:i,disabled:a,sx:{mt:2},children:a?`Creating...`:r}),o&&W(Y,{variant:`caption`,sx:{color:`text.secondary`,mt:1},children:o})]})})}const ao=L(io);ao.displayName=`CheckEmptyState`;function oo({checks:e,selectedId:t,onCheckSelect:n,onApprovalChange:r,disableApproval:i=!1,disabledApprovalTooltip:a,title:o,className:s,isLoading:c=!1,emptyContent:l}){return c?W(K,{className:s,sx:{display:`flex`,alignItems:`center`,justifyContent:`center`,height:200},children:W(Y,{sx:{color:`text.secondary`},children:`Loading checks...`})}):e.length===0?G(K,{className:s,children:[o&&W(Y,{variant:`subtitle2`,sx:{px:2,py:1,color:`text.secondary`},children:o}),l||W(K,{sx:{display:`flex`,alignItems:`center`,justifyContent:`center`,height:200},children:W(Y,{sx:{color:`text.secondary`},children:`No checks`})})]}):G(K,{className:s,sx:{height:`100%`,overflow:`auto`},children:[o&&W(Y,{variant:`subtitle2`,sx:{px:2,py:1,color:`text.secondary`},children:o}),W(En,{disablePadding:!0,children:e.map(e=>W(Dn,{disablePadding:!0,children:W($a,{check:e,isSelected:t===e.id,onClick:n,onApprovalChange:r,disableApproval:i,disabledApprovalTooltip:a})},e.id))})]})}const so=L(oo);so.displayName=`CheckList`;function co(e){switch(e){case`sql`:return An({dialect:kn});case`yaml`:return jn();default:return null}}function lo({value:e,onChange:t,language:n=`sql`,readOnly:r=!1,lineNumbers:i=!0,wordWrap:a=!0,fontSize:o=14,height:s=`100%`,className:c=``,theme:l=`light`,keyBindings:u=[]}){let d=B(()=>{let e=[Pn.theme({"&":{fontSize:`${o}px`},".cm-content":{fontFamily:`'JetBrains Mono', 'Fira Code', monospace`},".cm-gutters":{fontFamily:`'JetBrains Mono', 'Fira Code', monospace`}})],t=co(n);return t&&e.push(t),a&&e.push(Pn.lineWrapping),u.length>0&&e.push(Nn.highest(Fn.of(u))),e},[n,o,a,u]),f=B(()=>l===`dark`?Ln:Rn,[l]);return W(zn,{value:e,onChange:e=>{t&&t(e)},extensions:d,readOnly:r,basicSetup:{lineNumbers:i,foldGutter:!0,highlightActiveLineGutter:!r,highlightActiveLine:!r,tabSize:2},height:s,className:`${c} no-track-pii-safe`,theme:f})}function uo({name:e,description:t,type:n,params:r,viewOptions:i}){let a={name:e,description:t,type:n,params:r};return i&&(a.view_options=i),On.stringify({checks:[a]})}function fo({yamlTemplate:e,height:t=`300px`}){return W(lo,{value:e,language:`yaml`,readOnly:!0,lineNumbers:!1,wordWrap:!0,fontSize:14,theme:F()?`dark`:`light`,height:t})}const po=L(fo);po.displayName=`PresetCheckTemplateView`;const mo={apiPrefix:``,authToken:void 0,baseUrl:void 0,apiClient:te({baseURL:Ke??``})};function ho(){return O()??mo}function go({userId:e,enabled:t=!0}){let{apiClient:n}=ho(),r=e?.toString(),{data:i,isLoading:a}=nt({queryKey:k.user(),queryFn:()=>Ge(n),enabled:t&&!!r,retry:!1,staleTime:300*1e3}),o=!!(i&&r&&i.id===r)&&i?.login_type===`github`,s=!!(t&&o&&r),{data:c,isLoading:l}=nt({queryKey:[`github-avatar`,r],queryFn:()=>r?We(r):Promise.resolve(null),enabled:s,retry:!1,staleTime:300*1e3});return{avatarUrl:typeof c==`string`?c:null,isLoading:a||s&&l,isGitHubUser:!!o}}function _o({onSubmit:e,isSubmitting:t=!1,placeholder:n=`Add a comment...`,submitLabel:r=`Comment`,submittingLabel:i=`Submitting...`,className:a}){let o=F(),[s,c]=H(``),l=R(()=>{let t=s.trim();t&&(e(t),c(``))},[s,e]),u=R(e=>{e.key===`Enter`&&(e.metaKey||e.ctrlKey)&&(e.preventDefault(),l())},[l]);return G(K,{className:a,children:[W(xn,{value:s,onChange:R(e=>{c(e.target.value)},[]),onKeyDown:u,placeholder:n,size:`small`,multiline:!0,fullWidth:!0,minRows:3,disabled:t,sx:{"& .MuiOutlinedInput-root":{bgcolor:`background.paper`,"&:hover .MuiOutlinedInput-notchedOutline":{borderColor:o?`grey.500`:`grey.400`},"&.Mui-focused .MuiOutlinedInput-notchedOutline":{borderColor:`iochmara.400`,boxShadow:`0 0 0 1px #4299E1`}},"& .MuiOutlinedInput-notchedOutline":{borderColor:o?`grey.600`:void 0}}}),W(J,{direction:`row`,sx:{justifyContent:`flex-end`,mt:2},children:W(q,{size:`small`,color:`iochmara`,variant:`contained`,onClick:l,disabled:!s.trim()||t,children:t?i:r})})]})}const vo=L(_o);vo.displayName=`CommentInput`;function yo(e){switch(e.event_type){case`check_created`:return`create`;case`comment`:return`comment`;case`approval_change`:return e.new_value===`true`?`approve`:`unapprove`;case`description_change`:case`name_change`:return`edit`;case`preset_applied`:return`preset`;default:return`edit`}}function bo({event:e}){let t=yo(e),n={create:Wt,comment:Mt,approve:Pt,unapprove:Ft,edit:Ht,preset:At},r={create:`primary.main`,comment:`grey.500`,approve:`success.main`,unapprove:`grey.400`,edit:`warning.main`,preset:`secondary.main`},i=n[t],a=r[t];return W(K,{component:i,sx:{color:a,fontSize:16}})}function xo({actor:e}){let t=(e.fullname||e.login||`User`).charAt(0).toUpperCase();return W(Bn,{src:e.avatarUrl||void 0,sx:{width:24,height:24,fontSize:`0.75rem`},children:t})}function So({event:e}){let{actor:t}=e,n=t.fullname||t.login||`Someone`,r=Cn(new Date(e.created_at),{addSuffix:!0}),i=``;switch(e.event_type){case`check_created`:i=`created this check`;break;case`approval_change`:i=e.new_value===`true`?`approved this check`:`unapproved this check`;break;case`description_change`:i=`updated the description`;break;case`name_change`:i=`renamed this check`;break;case`preset_applied`:i=`applied a preset`;break;default:i=`made a change`}return G(K,{sx:{display:`flex`,gap:1,alignItems:`flex-start`,py:1},children:[W(K,{sx:{pt:`2px`},children:W(bo,{event:e})}),W(K,{sx:{flex:1},children:G(J,{direction:`row`,spacing:.5,sx:{flexWrap:`wrap`,alignItems:`center`},children:[W(xo,{actor:t}),W(Y,{variant:`body2`,sx:{fontWeight:`500`},children:n}),W(Y,{variant:`body2`,sx:{color:`text.secondary`},children:i}),W(Y,{variant:`caption`,sx:{color:`text.disabled`},children:r})]})})]})}const Co=L(So);Co.displayName=`StateChangeEvent`;function wo({event:e,currentUserId:t,onEdit:n,onDelete:r,markdownRenderer:i}){let a=F(),[o,s]=H(!1),[c,l]=H(e.content||``),[u,d]=H(!1),[f,p]=H(!1),[m,h]=H(null),g=!!m,{actor:_}=e,v=_.fullname||_.login||`Someone`,y=Cn(new Date(e.created_at),{addSuffix:!0}),b=t&&String(_.user_id)===String(t),x=R(()=>{l(e.content||``),s(!0)},[e.content]),S=R(()=>{l(e.content||``),s(!1)},[e.content]),C=R(async()=>{let t=c.trim();if(!t||t===e.content){S();return}if(n){d(!0);try{await n(e.id,t),s(!1)}finally{d(!1)}}},[c,e.content,e.id,n,S]),w=R(e=>{e.key===`Escape`?S():e.key===`Enter`&&(e.metaKey||e.ctrlKey)&&(e.preventDefault(),C())},[S,C]),T=R(e=>{h(e.currentTarget)},[]),E=R(()=>{h(null)},[]),D=R(async()=>{if(r){p(!0);try{await r(e.id),E()}finally{p(!1)}}},[r,e.id,E]),O=R(e=>{l(e.target.value)},[]);return e.is_deleted?G(K,{sx:{display:`flex`,gap:1,alignItems:`center`,py:1},children:[W(K,{sx:{pt:`2px`,display:`flex`,alignItems:`center`},children:W(bo,{event:e})}),W(K,{sx:{display:`flex`,flex:1,alignItems:`center`},children:W(Y,{variant:`body2`,sx:{color:`text.disabled`,fontStyle:`italic`},children:`Comment deleted`})})]}):G(K,{sx:{display:`flex`,gap:1,alignItems:`flex-start`,py:1},children:[W(K,{sx:{pt:`2px`},children:W(bo,{event:e})}),G(K,{sx:{flex:1},children:[G(J,{direction:`row`,spacing:.5,sx:{flexWrap:`wrap`,alignItems:`center`,mb:.5},children:[W(xo,{actor:_}),G(Y,{variant:`body2`,sx:{fontWeight:`500`},children:[v,b&&G(Y,{component:`span`,variant:`body2`,sx:{color:`text.secondary`},children:[` `,`(Author)`]})]}),W(Y,{variant:`caption`,sx:{color:`text.disabled`},children:y}),e.is_edited&&W(Y,{variant:`caption`,sx:{color:`text.disabled`},children:`(edited)`})]}),o?G(K,{children:[W(xn,{value:c,onChange:O,onKeyDown:w,size:`small`,multiline:!0,minRows:3,fullWidth:!0,disabled:u,autoFocus:!0,sx:{"& .MuiOutlinedInput-root":{bgcolor:`background.paper`,"&:focus-within":{borderColor:`primary.main`}}}}),G(J,{direction:`row`,spacing:1,sx:{justifyContent:`flex-end`,mt:1},children:[W(q,{size:`small`,variant:`text`,onClick:S,disabled:u,children:`Cancel`}),W(q,{size:`small`,variant:`contained`,onClick:C,disabled:!c.trim()||u,children:u?`Saving...`:`Save`})]})]}):G(K,{sx:{bgcolor:a?`grey.800`:`grey.50`,borderRadius:1,p:1,border:`1px solid`,borderColor:a?`grey.700`:`grey.200`,position:`relative`,"&:hover .comment-actions":{opacity:1}},children:[i?W(i,{content:e.content||``}):W(Y,{variant:`body2`,sx:{whiteSpace:`pre-wrap`},children:e.content}),b&&(n||r)&&G(J,{className:`comment-actions`,direction:`row`,spacing:0,sx:{position:`absolute`,top:4,right:4,opacity:0,transition:`opacity 0.2s`},children:[n&&W(Z,{title:`Edit comment`,children:W(X,{"aria-label":`Edit comment`,size:`small`,onClick:x,children:W(Ut,{})})}),r&&G(U,{children:[W(Z,{title:`Delete comment`,children:W(X,{"aria-label":`Delete comment`,size:`small`,color:`error`,onClick:T,children:W(Jt,{})})}),W(Vn,{open:g,anchorEl:m,onClose:E,anchorOrigin:{vertical:`bottom`,horizontal:`center`},transformOrigin:{vertical:`top`,horizontal:`center`},children:G(K,{sx:{p:2},children:[W(Y,{variant:`body2`,sx:{mb:2},children:`Delete this comment?`}),G(J,{direction:`row`,spacing:1,sx:{justifyContent:`flex-end`},children:[W(q,{size:`small`,variant:`text`,onClick:E,disabled:f,children:`Cancel`}),W(q,{size:`small`,variant:`contained`,color:`error`,onClick:D,disabled:f,children:f?`Deleting...`:`Delete`})]})]})})]})]})]})]})]})}const To=L(wo);To.displayName=`CommentEvent`;function Eo({event:e,currentUserId:t,onEdit:n,onDelete:r,markdownRenderer:i,className:a}){return e.event_type===`comment`?W(K,{className:a,children:W(To,{event:e,currentUserId:t,onEdit:n,onDelete:r,markdownRenderer:i})}):W(K,{className:a,children:W(Co,{event:e})})}const Do=L(Eo);Do.displayName=`TimelineEvent`;function Oo({name:e,isChecked:t}){return`${t?`✅ `:``}${e}`}function ko({description:e,fallback:t=`_(no description)_`}){return(e??``)||t}function Ao({type:e,hasResult:t,hasError:n}){return e===`schema_diff`||e===`lineage_diff`?!1:!t||n}function jo({sql:e,label:t=`SQL`}){return`**${t}**
|
|
3
|
+
\`\`\`sql
|
|
4
|
+
${e}
|
|
5
|
+
\`\`\``}const Mo=`recce:canceledRuns`,No=`recce:canceledRuns:changed`;function Po(){if(typeof window>`u`)return[];try{let e=window.localStorage.getItem(Mo);if(!e)return[];let t=JSON.parse(e);return Array.isArray(t)?t.filter(e=>typeof e==`string`):[]}catch{return[]}}function Fo(e){if(!(typeof window>`u`))try{window.localStorage.setItem(Mo,JSON.stringify(e))}catch{}}function Io(){let[e,t]=H(()=>Po());return z(()=>{if(typeof window>`u`)return;let e=e=>{if(e.key===Mo){if(e.newValue==null){t(Po());return}try{let n=JSON.parse(e.newValue);if(!Array.isArray(n)){t([]);return}t(n.filter(e=>typeof e==`string`))}catch{t(Po())}}},n=()=>t(Po());return window.addEventListener(`storage`,e),window.addEventListener(No,n),()=>{window.removeEventListener(`storage`,e),window.removeEventListener(No,n)}},[]),{has:R(t=>e.includes(t),[e]),add:R(e=>{let n=Po();if(n.includes(e)){t(n);return}let r=[...n,e],i=r.length>200?r.slice(r.length-200):r;if(Fo(i),t(i),typeof window<`u`)try{window.dispatchEvent(new Event(No))}catch{}},[])}}function Lo(e){return e.status?e.status:e.result?`Finished`:e.error?`Failed`:`Finished`}function Ro(e){switch(e){case`Running`:return{color:`blue`,label:`Running`};case`Finished`:return{color:`green`,label:`Finished`};case`Failed`:return{color:`red`,label:`Failed`};case`Cancelled`:return{color:`grey`,label:`Cancelled`};default:return{color:`green`,label:`Finished`}}}function zo({status:e,showSpinner:t=!0,size:n=`small`,className:r}){let{color:i,label:a}=Ro(e);return G(K,{className:r,sx:{display:`inline-flex`,alignItems:`center`,gap:.5},children:[e===`Running`&&t&&W(Dt,{size:n===`small`?12:16,color:`primary`}),W(Y,{component:`span`,sx:{fontWeight:500,fontSize:n===`small`?`0.75rem`:`0.875rem`,color:`${i}.500`},children:a})]})}const Bo=L(zo);Bo.displayName=`RunStatusBadge`;function Vo(e){if(e==null)return null;let t=new Date,n=new Date;return n.setDate(t.getDate()-1),t.toDateString()===e.toDateString()?`Today`:n.toDateString()===e.toDateString()?`Yesterday`:e.toLocaleDateString(`en-US`,{month:`short`,day:`numeric`})}function Ho(e){if(e==null)return null;let t=new Date,n=new Date;n.setDate(t.getDate()-1);let r=e.toLocaleTimeString(`en-US`,{hour:`2-digit`,minute:`2-digit`,hour12:!1});return t.toDateString()===e.toDateString()?`Today, ${r}`:n.toDateString()===e.toDateString()?`Yesterday, ${r}`:`${e.toLocaleDateString(`en-US`,{month:`short`,day:`numeric`})}, ${r}`}function Uo({status:e,runAt:t,className:n}){let r=t?Ho(typeof t==`string`?new Date(t):t):null;return G(K,{className:n,sx:{display:`flex`,alignItems:`center`,gap:.5,fontSize:`0.75rem`,color:`text.secondary`},children:[W(Bo,{status:e,size:`small`}),r&&G(U,{children:[W(Y,{component:`span`,sx:{fontSize:`inherit`},children:`•`}),W(Y,{component:`span`,sx:{fontSize:`inherit`,overflow:`hidden`,textOverflow:`ellipsis`,whiteSpace:`nowrap`},children:r})]})]})}const Wo=L(Uo);Wo.displayName=`RunStatusWithDate`;function Go({run:e,className:t}){return W(Wo,{status:Lo(e),runAt:e.run_at,className:t})}const Ko=L(Go);Ko.displayName=`RunStatusAndDate`;function qo({run:e,isSelected:t=!1,icon:n,onClick:r,onAddToChecklist:i,onGoToCheck:a,addToChecklistIcon:o,goToCheckIcon:s,hideAddToChecklist:c=!1,disableAddToChecklist:l=!1,className:u}){let d=F(),f=Io().has(e.id)?`Cancelled`:e.status,p=e.checkId!=null,m=!c&&!p&&(i||l);return G(K,{className:u,onClick:()=>r?.(e.id),sx:e=>({display:`flex`,flexDirection:`column`,width:`100%`,p:`8px 16px`,cursor:`pointer`,borderBottom:1,borderColor:`divider`,borderLeft:`4px solid`,borderLeftColor:t?`warning.main`:`transparent`,bgcolor:t?d?`warning.dark`:`warning.light`:`transparent`,"&:hover":{bgcolor:t?d?`warning.dark`:`warning.light`:e.palette.action.hover}}),children:[G(K,{sx:{display:`flex`,alignItems:`center`,gap:1.5},children:[n&&W(K,{sx:{fontSize:16,color:`text.secondary`,flexShrink:0},children:n}),W(Y,{sx:{flex:1,fontSize:`0.875rem`,fontWeight:500,overflow:`hidden`,textOverflow:`ellipsis`,whiteSpace:`nowrap`,color:e.name?`text.primary`:`text.secondary`},children:e.name?.trim()||`<no name>`}),p&&a&&W(Z,{title:`Go to Check`,children:W(X,{size:`small`,onClick:t=>{t.stopPropagation(),e.checkId&&a(e.checkId)},sx:{p:.5},children:s||W(K,{component:`span`,sx:{fontSize:14,color:`success.main`},children:`✓`})})}),m&&W(Z,{title:l?`You don't have permission to add checks`:`Add to Checklist`,children:W(`span`,{children:W(X,{size:`small`,disabled:l,onClick:t=>{t.stopPropagation(),i?.(e.id)},sx:{p:.5},children:o||W(K,{component:`span`,sx:{fontSize:14},children:`○`})})})})]}),W(Wo,{status:f,runAt:e.runAt})]})}const Jo=L(qo);Jo.displayName=`RunListItem`;const Yo=L(function({date:e}){return W(K,{sx:{width:`100%`,p:`8px 16px`,borderBottom:1,borderColor:`divider`,color:`text.secondary`,fontSize:`0.75rem`,fontWeight:500,bgcolor:`action.hover`},children:e})});function Xo({runs:e,selectedId:t,isLoading:n=!1,onRunSelect:r,onAddToChecklist:i,onGoToCheck:a,getRunIcon:o,hideAddToChecklist:s=!1,disableAddToChecklist:c=!1,title:l=`Runs`,headerActions:u,emptyMessage:d=`No runs`,loadingMessage:f=`Loading...`,groupByDate:p=!1,addToChecklistIcon:m,goToCheckIcon:h,className:g}){return G(K,{className:g,sx:{display:`flex`,flexDirection:`column`,height:`100%`,width:`100%`},children:[G(J,{direction:`row`,sx:{alignItems:`center`,flex:`0 0 auto`,px:2,py:1.5,borderBottom:1,borderColor:`divider`},children:[W(Y,{variant:`h6`,children:l}),W(K,{sx:{flex:1}}),u]}),W(K,{sx:{flex:1,overflow:`auto`},children:n?W(K,{sx:{display:`flex`,justifyContent:`center`,alignItems:`center`,height:`100%`,color:`text.secondary`},children:f}):(()=>{if(e.length===0)return W(K,{sx:{display:`flex`,justifyContent:`center`,alignItems:`center`,height:`100%`,color:`text.secondary`,p:4},children:d});let n=null;return e.map(e=>{let l=e.runAt?Vo(new Date(e.runAt)):null,u=p&&l&&n!==l;return n=l,G(K,{children:[u&&W(Yo,{date:l}),W(Jo,{run:e,isSelected:e.id===t,icon:o?.(e.type),onClick:r,onAddToChecklist:i,onGoToCheck:a,hideAddToChecklist:s,disableAddToChecklist:c,addToChecklistIcon:m,goToCheckIcon:h})]},e.id)})})()})]})}const Zo=L(Xo);Zo.displayName=`RunList`;function Qo({status:e,progress:t,message:n,errorMessage:r,variant:i=`spinner`,showStatus:a=!0,icon:o,className:s}){let c=e===`Running`,l=e===`Failed`,u=t!==void 0&&t>=0;return G(K,{className:s,sx:{display:`flex`,flexDirection:`column`,alignItems:`center`,justifyContent:`center`,gap:2,p:3,textAlign:`center`},children:[o?W(K,{sx:{fontSize:40,color:`text.secondary`},children:o}):c&&G(U,{children:[i===`spinner`&&W(Dt,{size:40,color:`primary`}),i===`circular`&&W(Dt,{size:60,variant:u?`determinate`:`indeterminate`,value:t,color:`primary`})]}),c&&i===`linear`&&G(K,{sx:{width:`100%`,maxWidth:300},children:[W(Hn,{variant:u?`determinate`:`indeterminate`,value:t,sx:{height:8,borderRadius:4}}),u&&G(Y,{variant:`caption`,sx:{color:`text.secondary`,mt:.5,display:`block`},children:[Math.round(t),`%`]})]}),a&&W(Bo,{status:e,size:`medium`}),n&&!l&&W(Y,{variant:`body2`,sx:{color:`text.secondary`},children:n}),l&&r&&W(K,{sx:{p:2,bgcolor:`error.light`,borderRadius:1,maxWidth:400},children:W(Y,{variant:`body2`,sx:{color:`error.contrastText`},children:r})})]})}const $o=L(Qo);$o.displayName=`RunProgress`;function es({visible:e=!0,opacity:t=.8,...n}){return e?W(K,{sx:{position:`absolute`,inset:0,display:`flex`,alignItems:`center`,justifyContent:`center`,bgcolor:`rgba(255, 255, 255, ${t})`,zIndex:10,".dark &":{bgcolor:`rgba(0, 0, 0, ${t})`}},children:W($o,{...n})}):null}const ts=L(es);ts.displayName=`RunProgressOverlay`;function ns({warnings:e,children:t,className:n}){let r=F(),i=e&&e.length>0;return G(K,{className:n,sx:{display:`flex`,borderBottom:`1px solid`,borderColor:`divider`,justifyContent:`flex-end`,gap:`5px`,alignItems:`center`,px:`10px`,bgcolor:i?r?P.amber[900]:P.amber[100]:`inherit`,color:i?r?P.amber[200]:P.amber[800]:`inherit`},children:[W(K,{sx:{display:`flex`,flexDirection:`column`,alignItems:`flex-start`,gap:0},children:e?.map((e,t)=>G(K,{children:[W(Yt,{color:r?P.amber[400]:P.amber[600],style:{verticalAlign:`middle`,marginRight:4}}),e]},e))}),W(K,{sx:{flex:1,minHeight:`32px`}}),t]})}const rs=L(ns);rs.displayName=`RunToolbar`,Gn.register(Un,Jn,qn,Wn,Yn,Kn,Xn);function is(e,t){let n=e[t],r=e[t+1];return`${Fe(n)} - ${Fe(r)}`}function as({title:e,dataType:t=`numeric`,samples:n=0,min:r=0,max:i=0,binEdges:a,baseData:o,currentData:s,animate:c=!1,hideAxis:l=!1,theme:u=`light`,height:d=300,className:f}){let p=u===`dark`,m=he(p),h=N(p),g=t===`datetime`,_=B(()=>{let e=a.slice(0,-1).map((e,t)=>is(a,t)),t=(e,t,n)=>{let r=e.counts??[];return{label:t,data:g?r.map((e,t)=>[a[t],e]):r,backgroundColor:n,borderColor:n,hoverBackgroundColor:n,borderWidth:0,categoryPercentage:1,barPercentage:1,xAxisID:`x`}};return{labels:e,datasets:[t(s,s.label??`Current`,h.currentWithAlpha),t(o,o.label??`Base`,h.baseWithAlpha)]}},[a,o,s,h,g]),v=B(()=>{let u=Math.max(...s.counts,...o.counts),d=a.slice(0,-1).map((e,t)=>is(a,t)),f=g?`Date Range`:t===`string`?`Text Length`:`Value Range`;return{responsive:!0,maintainAspectRatio:!1,animation:c?void 0:!1,plugins:{legend:{reverse:!0,labels:{color:m.textColor}},title:{display:!0,text:e,font:{size:20},color:m.textColor},tooltip:{mode:`index`,intersect:!1,backgroundColor:m.tooltipBackgroundColor,titleColor:m.tooltipTextColor,bodyColor:m.tooltipTextColor,borderColor:m.borderColor,borderWidth:1,callbacks:{title([{dataIndex:e}]){return`${f}\n${is(a,e)}`},label({datasetIndex:e,dataIndex:t,dataset:r}){let i=(e===0?s.counts:o.counts)[t],a=n>0?ke(i/n):``;return`${r.label}: ${i}${a?` (${a})`:``}`}}}},scales:{x:g?{display:!l,type:`timeseries`,min:r,max:i,adapters:{date:{}},time:{minUnit:`day`},grid:{display:!1},ticks:{minRotation:30,maxRotation:30,maxTicksLimit:8,color:m.textColor}}:{display:!l,type:`category`,grid:{display:!1},ticks:{callback(e,t){return d[t]},color:m.textColor},stacked:!0},y:{display:!l,type:`linear`,max:u,border:{dash:[2,2],color:m.borderColor},grid:{color:m.gridColor},ticks:{maxTicksLimit:8,color:m.textColor,callback(e){return Fe(e)}},beginAtZero:!0}}}},[e,t,g,n,r,i,a,o,s,l,c,m]);return W(`div`,{className:f,style:{height:d},children:W(Qn,{type:`bar`,options:v,data:_})})}const os=L(as);os.displayName=`HistogramChart`;const ss=`Paired baseline and current continuous distribution`,cs=`Paired baseline and current categorical distribution`;function ls({ariaLabel:e,className:t,children:n}){return G(`svg`,{width:140,height:28,viewBox:`0 0 140 28`,className:t,style:{display:`block`,overflow:`visible`},role:`img`,"aria-label":e,children:[W(`title`,{children:e}),n]})}function us({y:e,stroke:t}){return W(`line`,{x1:0,y1:e,x2:140,y2:e,stroke:t,strokeWidth:.5})}function ds(e,t,n){return`${e} [base: ${`${(t*100).toFixed(1)}%`}, current: ${`${(n*100).toFixed(1)}%`}]`}function fs(e,t,n){return`${e} [${t===null?`not in base top-K`:`base rank: ${t}`}, ${n===null?`not in current top-K`:`current rank: ${n}`}]`}function ps({data:e,formatValue:t=Fe,className:n}){let r=F(),i=N(r),a=he(r),o=i.base,s=i.current,c=a.borderColor,l=`phc-overlap-${ct().replace(/:/g,``)}`,u=B(()=>hs(e,140),[e]);return u.bins.length===0?W(ls,{ariaLabel:ss,className:n}):G(ls,{ariaLabel:ss,className:n,children:[W(`defs`,{children:G(`pattern`,{id:l,patternUnits:`userSpaceOnUse`,width:4,height:4,children:[W(`rect`,{x:0,y:0,width:2,height:2,fill:o}),W(`rect`,{x:2,y:2,width:2,height:2,fill:o}),W(`rect`,{x:2,y:0,width:2,height:2,fill:s}),W(`rect`,{x:0,y:2,width:2,height:2,fill:s})]})}),u.bins.map((e,n)=>{let r=e.baseDensity/u.maxDensity*26,i=e.currentDensity/u.maxDensity*26,a=Math.min(r,i),c=Math.max(r,i),d=r>i?o:s,f=Math.max(.5,e.width-.25),p=gs(e,t);return G(`g`,{children:[W(`rect`,{x:e.x,y:0,width:e.width,height:26,fill:`none`,pointerEvents:`all`,children:W(`title`,{children:p})}),a>0&&W(`rect`,{x:e.x,y:26-a,width:f,height:a,fill:`url(#${l})`,pointerEvents:`none`}),c>a&&W(`rect`,{x:e.x,y:26-c,width:f,height:c-a,fill:d,pointerEvents:`none`})]},n)}),W(us,{y:26,stroke:c})]})}function ms(e,t,n){if(n<e[0]||n>e[e.length-1])return 0;for(let r=0;r<t.length;r+=1)if(n>=e[r]&&n<e[r+1])return t[r];return t[t.length-1]}function hs(e,t){let{baseBinEdges:n,currentBinEdges:r,baseDensity:i,currentDensity:a}=e,o=i.length>0&&n.length===i.length+1,s=a.length>0&&r.length===a.length+1;if(!o||!s)return{bins:[],maxDensity:0,minVal:0,maxVal:0};let c=Math.min(n[0],r[0]),l=Math.max(n[n.length-1],r[r.length-1]),u=l-c,d=[];if(u<=0||!Number.isFinite(u)){let e=Math.max(i.length,a.length),n=t/e;for(let t=0;t<e;t+=1)d.push({x:t*n,width:n,baseDensity:i[t]??0,currentDensity:a[t]??0,lo:c,hi:l})}else{let e=Array.from(new Set([...n,...r])).sort((e,t)=>e-t);for(let o=0;o<e.length-1;o+=1){let s=e[o],l=e[o+1];if(l<=s)continue;let f=(s+l)/2;d.push({x:(s-c)/u*t,width:(l-s)/u*t,baseDensity:ms(n,i,f),currentDensity:ms(r,a,f),lo:s,hi:l})}}if(d.length>0){let e=d[d.length-1];e.width=Math.max(0,t-e.x)}let f=[];for(let e of d)f.push(e.baseDensity,e.currentDensity);return{bins:d,maxDensity:Math.max(1e-9,...f),minVal:c,maxVal:l}}function gs(e,t){let n=e.hi-e.lo,r=n>0?e.baseDensity*n:0,i=n>0?e.currentDensity*n:0;return ds(`${t(e.lo)}–${t(e.hi)}`,r,i)}function _s({data:e,formatValue:t=ys,className:n}){let r=F(),i=N(r),a=he(r),o=i.base,s=i.current,c=a.borderColor,l=a.secondaryTextColor,u=B(()=>vs(e,26,t),[e,26,t]);if(u.length===0)return W(ls,{ariaLabel:cs,className:n});let d=140/Math.max(1,u.length),f=d*.1,p=d-f*2,m=Math.max(1,Math.min(2,p*.1)),h=Math.max(1,(p-m)/2);return G(ls,{ariaLabel:cs,className:n,children:[u.map((e,t)=>{let n=t*d,r=n+f,i=n+f+h+m;return G(`g`,{children:[W(`rect`,{x:n,y:0,width:d,height:26,fill:`none`,pointerEvents:`all`,children:W(`title`,{children:e.hoverTitle})}),e.baseH>0&&W(`rect`,{x:r,y:26-e.baseH,width:h,height:e.baseH,fill:o,pointerEvents:`none`}),e.currH>0&&W(`rect`,{x:i,y:26-e.currH,width:h,height:e.currH,fill:s,pointerEvents:`none`})]},t)}),W(us,{y:26,stroke:c}),e.trimmed&&G(`g`,{pointerEvents:`none`,children:[W(`rect`,{x:102,y:1,width:37,height:10,fill:a.overlayBackgroundColor,rx:2,"data-testid":`trimmed-marker-bg`}),W(`text`,{x:139,y:9,fontFamily:`system-ui, -apple-system, sans-serif`,fontSize:8,fill:l,textAnchor:`end`,children:`trimmed`})]})]})}function vs(e,t,n){if(e.mode===`ranks`){let{slots:r}=Ss(e);return r.map(r=>({baseH:bs(r.baseRank,e.k,t),currH:bs(r.currRank,e.k,t),hoverTitle:fs(n(r.value),r.baseRank,r.currRank)}))}let{slots:r,maxProp:i}=xs(e);return r.map(e=>({baseH:e.baseProp/i*t,currH:e.currProp/i*t,hoverTitle:ds(n(e.value),e.baseProp,e.currProp)}))}function ys(e){return String(e)}function bs(e,t,n){if(e===null||t<=0)return 0;let r=(t-e+1)/t*n;return Math.max(0,Math.min(n,r))}function xs(e){let{values:t,baseCounts:n,currentCounts:r,baseTotal:i,currentTotal:a}=e;if(!Array.isArray(t)||!Array.isArray(n)||!Array.isArray(r)||t.length===0||t.length!==n.length||t.length!==r.length)return{slots:[],maxProp:0};let o=t.map((e,t)=>{let o=n[t]??0,s=r[t]??0;return{value:e,baseCount:o,currCount:s,baseProp:i>0?o/i:0,currProp:a>0?s/a:0}}),s=[];for(let e of o)s.push(e.baseProp),s.push(e.currProp);return{slots:o,maxProp:Math.max(1e-9,...s)}}function Ss(e){let{values:t,baseRanks:n,currentRanks:r}=e;if(!Array.isArray(t)||!Array.isArray(n)||!Array.isArray(r)||t.length===0||t.length!==n.length||t.length!==r.length)return{slots:[]};let i=t.map((e,t)=>({value:e,baseRank:n[t]??null,currRank:r[t]??null})),a=i.filter(e=>e.baseRank!==null||e.currRank!==null);return a.length<i.length&&console.warn(`[PairedHistogramDiscrete] computeRanksSlots: dropped ${i.length-a.length} value(s) absent from both base and current top-K (Stage B contract violation).`),{slots:a}}function Cs({reason:e,adapterType:t,className:n}){let r=e??`This warehouse doesn't expose native HLL / approx-percentile / approx-top-k aggregates, so paired column distributions aren't available here.`;return G(un,{severity:`info`,variant:`outlined`,className:n,sx:{fontSize:`0.75rem`,py:.5,px:1,"& .MuiAlert-message":{py:.5}},role:`status`,"aria-live":`polite`,"data-testid":`profile-distribution-unsupported-banner`,children:[W($n,{sx:{fontSize:`0.75rem`,fontWeight:600,mb:.25},children:t?`Paired distributions unavailable on ${t}`:`Paired distributions unavailable on this adapter`}),r]})}Ct.registerModules([St]);function ws({emptyMessage:e}){return W(K,{sx:{display:`flex`,height:`35px`,alignItems:`center`,justifyContent:`center`,bgcolor:`grey.100`,textAlign:`center`,gridColumn:`1/-1`},children:W(Y,{sx:{fontWeight:600},children:e??`No rows`})})}function Ts({style:e,className:t,columnDefs:n,rowData:r,columns:i,rows:a,getRowId:o,rowHeight:s=32,headerHeight:c=36,defaultColDef:l,defaultColumnOptions:u,renderers:d,rowClassName:f,containerClassName:p,...m},h){let g=V(null),_=V(null);lt(h,()=>({api:_.current,element:g.current}),[]);let v=F(),y=B(()=>v?me:pe,[v]),b=n??i,x=r??a,S=l??u,C=B(()=>({resizable:!0,suppressMovable:!0,...S}),[S]),w=B(()=>{if(d?.noRowsFallback)return()=>d.noRowsFallback},[d?.noRowsFallback]),T=B(()=>o||(e=>{let t=e.data;if(t?.__rowKey!==void 0)return String(t.__rowKey);let n=e.data?.rowIndex;return String(n??Math.random())}),[o]),E=B(()=>b?`grid-${b.filter(e=>`field`in e&&e.pinned===`left`).map(e=>e.field).sort().join(`,`)}`:`grid`,[b]);return W(K,{ref:g,className:[t,p].filter(Boolean).join(` `)||void 0,sx:{flex:1,minHeight:0,width:`100%`,overflow:`hidden`,"& .ag-root-wrapper":{border:`none`,height:`100%`},"& .ag-header":{borderBottom:`1px solid var(--ag-border-color)`},"& .ag-row":{borderBottom:`1px solid var(--ag-border-color)`},"& .ag-cell":{borderRight:`1px solid var(--ag-border-color)`},"& .ag-header-cell":{borderRight:`1px solid var(--ag-border-color)`},"& .diff-cell-added":{backgroundColor:v?`#1a4d1a !important`:`#cefece !important`,color:`var(--mui-palette-text-primary)`},"& .diff-cell-removed":{backgroundColor:v?`#5c1f1f !important`:`#ffc5c5 !important`,color:`var(--mui-palette-text-primary)`},"& .diff-cell-modified":{backgroundColor:v?`#713F12 !important`:`#FEF3C7 !important`,color:`var(--mui-palette-text-primary)`},"& .diff-header-added":{backgroundColor:`#15803d !important`,color:`white`},"& .diff-header-removed":{backgroundColor:`#f43f5e !important`,color:`white`},"& .diff-header-modified":{backgroundColor:`#f59e0b !important`,color:`white`},"& .index-column":{color:`var(--mui-palette-text-secondary)`,textAlign:`right`},"& .ag-pinned-left-cols-container .ag-cell":{backgroundColor:v?`#2d2d2d`:`#f5f5f5`}},children:W(er,{theme:y,columnDefs:b,rowData:x,getRowId:T,rowHeight:s,headerHeight:c,defaultColDef:C,suppressCellFocus:!0,suppressRowHoverHighlight:!1,animateRows:!1,enableCellTextSelection:!0,ensureDomOrder:!0,rowClass:f,noRowsOverlayComponent:w,onGridReady:e=>{_.current=e.api},...m},E)})}const Es=ot(Ts);Gn.register(Wn,Un,qn,Kn,Xn);function Ds(e,t){let n=Math.min(t,e.counts.length),r=e.counts.slice(0,n),i=r.reduce((e,t)=>e+t,0),a=e.valids-i,o=r.map((t,n)=>{let r=e.values[n],i,a=!1;return r==null?(i=`(null)`,a=!0):typeof r==`string`&&r.length===0?(i=`(empty)`,a=!0):i=String(r),{label:i,count:t,isSpecial:a}});return a>0&&o.push({label:`(others)`,count:a,isSpecial:!0}),o}function Os({count:e,total:t,color:n,theme:r=`light`,height:i=16}){let a=r===`dark`,o=he(a),s=N(a),c=n??s.current,l=B(()=>({labels:[``],datasets:[{indexAxis:`y`,data:[e],backgroundColor:c,hoverBackgroundColor:c,borderWidth:0,borderColor:c,barPercentage:1,categoryPercentage:.6}]}),[e,c]),u=B(()=>({responsive:!0,maintainAspectRatio:!1,indexAxis:`y`,scales:{x:{display:!1,max:t,grid:{display:!1},ticks:{color:o.textColor}},y:{display:!1,ticks:{color:o.textColor}}},plugins:{tooltip:{enabled:!1}},animation:!1}),[t,o]);return W(`div`,{style:{height:i,width:`100%`},children:W(Zn,{data:l,options:u})})}const ks=L(Os);ks.displayName=`SingleBarChart`;function As({data:e,maxItems:t=10,theme:n=`light`,className:r}){let i=N(n===`dark`);return W(K,{className:r,sx:{width:`100%`},children:B(()=>Ds(e,t),[e,t]).map(t=>G(it,{children:[G(K,{sx:{display:`flex`,alignItems:`center`,width:`100%`,"&:hover":{bgcolor:`action.hover`},px:1.5},children:[W(Z,{title:t.label,placement:`top-start`,children:W(Y,{sx:{width:`14em`,fontSize:`0.875rem`,color:t.isSpecial?`grey.400`:`inherit`,overflow:`hidden`,textOverflow:`ellipsis`,whiteSpace:`nowrap`},children:t.label})}),W(K,{sx:{display:`flex`,height:`2em`,width:`10em`},children:W(ks,{count:t.count,total:e.valids,color:i.current,theme:n})}),W(Z,{title:String(t.count),placement:`top-start`,children:W(Y,{sx:{ml:2.5,mr:1,fontSize:`0.875rem`,width:`4em`,overflow:`hidden`,textOverflow:`ellipsis`,whiteSpace:`nowrap`},children:Fe(t.count)})}),W(Y,{sx:{color:`grey.400`,fontSize:`0.875rem`,width:`4em`},children:ke(t.count/e.valids)})]}),W(Et,{})]},t.label))})}const js=L(As);js.displayName=`TopKSummaryList`;function Ms({baseData:e,currentData:t,maxItems:n=10,showComparison:r=!1,theme:i=`light`,title:a,className:o}){let s=i===`dark`,c=N(s),l=he(s),u=B(()=>Ds(t,n),[t,n]),d=B(()=>e?Ds(e,n):[],[e,n]),f=r&&e&&d.length>0,p=t.valids||1,m=e?.valids||1,h=B(()=>u.map((e,t)=>({current:e,base:f?d[t]??null:null})).filter(({current:e,base:t})=>!(e.label===`(others)`&&e.count===0&&(!t||t.count===0))),[u,d,f]),g=B(()=>{let e=h.map(({current:e})=>e.label),t=[{label:`Current`,data:h.map(({current:e})=>e.count/p),backgroundColor:c.current,hoverBackgroundColor:c.current,borderWidth:0,borderRadius:3,barPercentage:f?.9:1,categoryPercentage:f?.75:.6}];return f&&t.push({label:`Base`,data:h.map(({base:e})=>(e?.count??0)/m),backgroundColor:c.base,hoverBackgroundColor:c.base,borderWidth:0,borderRadius:3,barPercentage:.9,categoryPercentage:.75}),{labels:e,datasets:t}},[h,c,f,p,m]),_=B(()=>({responsive:!0,maintainAspectRatio:!1,indexAxis:`y`,layout:{padding:{right:80}},scales:{x:{display:!1,grid:{display:!1}},y:{grid:{display:!1},ticks:{padding:8,color:e=>h[e.index]?.current.isSpecial?`#9ca3af`:l.textColor}}},plugins:{legend:{display:!!f,position:`top`,align:`center`,reverse:!0,labels:{boxWidth:32,boxHeight:12,borderRadius:3,useBorderRadius:!0,color:l.textColor}},tooltip:{mode:`index`,callbacks:{label:e=>{let t=e.parsed.x??0,n=e.dataset.label===`Base`?m:p,r=Math.round(t*n);return`${e.dataset.label}: ${Fe(r)} (${ke(t)})`}}}},animation:!1}),[h,l,f,m,p]),v={id:`barLabels`,afterDatasetsDraw(e){let{ctx:t}=e;t.save(),t.font=`11px system-ui, sans-serif`,t.textBaseline=`middle`;let n=he(s);for(let r=0;r<e.data.datasets.length;r++){let i=e.data.datasets[r],a=i.label===`Base`?m:p,o=e.getDatasetMeta(r);for(let e=0;e<o.data.length;e++){let{x:r,y:s,base:c}=o.data[e],l=i.data[e]??0;if(l===0)continue;let u=Math.round(l*a),d=r-c,f=Fe(u),p=ke(l)??``,m=t.measureText(f).width;m+8<d?(t.fillStyle=n.barLabelColor,t.textAlign=`left`,t.fillText(f,c+4,s),t.fillStyle=n.secondaryTextColor,t.textAlign=`left`,t.fillText(p,r+4,s)):(t.fillStyle=n.textColor,t.textAlign=`left`,t.fillText(f,r+4,s),t.fillStyle=n.secondaryTextColor,t.fillText(p,r+4+m+4,s))}}t.restore()}},y=h.length*(f?46:32)+(f?30:0);return G(K,{className:o,sx:{width:`100%`,px:2,py:2},children:[a&&W(Y,{variant:`subtitle1`,sx:{fontWeight:500,mb:1},children:a}),W(`div`,{style:{height:Math.max(y,50)},children:W(Zn,{data:g,options:_,plugins:[v]})})]})}const Ns=L(Ms);Ns.displayName=`TopKBarChart`;function Ps(e){switch(e){case`sql`:return An();case`yaml`:return jn();default:return null}}function Fs(e){return[Pn.theme({"&":{backgroundColor:e?`#1e1e1e`:`#ffffff`,color:e?`#d4d4d4`:`#1f2937`},".cm-content":{caretColor:e?`#d4d4d4`:`#1f2937`,fontFamily:`'JetBrains Mono', 'Fira Code', monospace`,fontSize:`13px`},".cm-gutters":{backgroundColor:e?`#252526`:`#f5f5f5`,color:e?`#858585`:`#6b7280`,border:`none`},".cm-activeLineGutter":{backgroundColor:e?`#2a2d2e`:`#e5e7eb`},".cm-activeLine":{backgroundColor:e?`#2a2d2e40`:`#f3f4f640`},".cm-changedLine":{backgroundColor:e?`#3d3d0050`:`#fff3c550`},".cm-changedText":{backgroundColor:e?`#5c5c0080`:`#fef08a80`},".cm-deletedChunk":{backgroundColor:e?`#5c1f1f50`:`#ffc5c550`},".cm-insertedChunk":{backgroundColor:e?`#1a4d1a50`:`#cefece50`}},{dark:e})]}function Is({original:e,modified:t,language:n=`text`,readOnly:r=!0,lineNumbers:i=!0,sideBySide:a=!0,height:o=`400px`,theme:s=`light`,onModifiedChange:c,className:l}){let u=V(null),d=V(null),f=s===`dark`;return z(()=>{if(!u.current)return;d.current&&=(d.current instanceof tr,d.current.destroy(),null);let o=[...Fs(f)];i&&o.push(In());let s=Ps(n);if(s&&o.push(s),r&&o.push(Mn.readOnly.of(!0)),c&&!r&&o.push(Pn.updateListener.of(e=>{e.docChanged&&c(e.state.doc.toString())})),a)d.current=new tr({a:{doc:e,extensions:[...o]},b:{doc:t,extensions:[...o]},parent:u.current,orientation:`a-b`,highlightChanges:!0,gutter:!0,collapseUnchanged:{margin:3,minSize:4}});else{let n=[...o,nr({original:e,highlightChanges:!0,gutter:!0,mergeControls:!1,collapseUnchanged:{margin:3,minSize:4}})];d.current=new Pn({state:Mn.create({doc:t,extensions:n}),parent:u.current})}return()=>{d.current&&=(d.current instanceof tr,d.current.destroy(),null)}},[e,t,n,r,i,a,f,c]),W(K,{ref:u,className:l,sx:{height:o,width:`100%`,overflow:`auto`,border:`1px solid`,borderColor:f?`grey.700`:`grey.300`,borderRadius:1,"& .cm-editor":{height:`100%`},"& .cm-scroller":{overflow:`auto`},"& .cm-merge-view":{height:`100%`},"& .cm-merge-view > div":{height:`100%`}}})}const Ls=L(Is);Ls.displayName=`DiffEditor`;function Rs({title:e,description:t,icon:n,actionLabel:r,onAction:i,secondaryActionLabel:a,onSecondaryAction:o,theme:s=`light`,paddingY:c=8,className:l,children:u}){let d=s===`dark`;return G(K,{className:l,sx:{display:`flex`,flexDirection:`column`,alignItems:`center`,justifyContent:`center`,textAlign:`center`,py:c,px:4,height:`100%`,minHeight:200},children:[n&&W(K,{sx:{mb:2,color:d?`grey.500`:`grey.400`,"& svg":{width:48,height:48}},children:n}),W(Y,{variant:`h6`,sx:{fontWeight:500,color:d?`grey.300`:`grey.700`,mb:+!!t},children:e}),t&&W(Y,{variant:`body2`,sx:{color:d?`grey.400`:`grey.500`,maxWidth:400,mb:r||a?3:0},children:t}),(r||a)&&G(K,{sx:{display:`flex`,gap:2,mt:1},children:[r&&i&&W(q,{variant:`contained`,onClick:i,size:`small`,children:r}),a&&o&&W(q,{variant:`outlined`,onClick:o,size:`small`,children:a})]}),u&&W(K,{sx:{mt:3},children:u})]})}const zs=L(Rs);zs.displayName=`EmptyState`;function Bs(e,t=60){if(e.length<=t)return e;try{let n=new URL(e),r=n.hostname,i=n.pathname+n.search+n.hash;if(r.length>=t-3)return r.substring(0,t-3)+`...`;let a=t-r.length-3;return i.length>a?`${r}${i.substring(0,a)}...`:e}catch{return e.substring(0,t-3)+`...`}}function Vs({isOpen:e,url:t,onConfirm:n,onCancel:r}){let i=V(null);return G(ut,{open:e,onClose:r,maxWidth:`sm`,fullWidth:!0,"aria-labelledby":`external-link-dialog-title`,children:[G(pt,{id:`external-link-dialog-title`,sx:{display:`flex`,alignItems:`center`,gap:1},children:[W(K,{component:Yt,sx:{color:`amber.500`,fontSize:20}}),`External Link`]}),W(X,{"aria-label":`close`,onClick:r,sx:{position:`absolute`,right:8,top:8,color:`grey.500`},children:W(Tt,{})}),G(ft,{children:[W(Y,{sx:{mb:1.5},children:`This link will take you to an external website outside of Recce. Are you sure you want to continue?`}),W(K,{sx:{bgcolor:`grey.50`,p:1,borderRadius:1,border:`1px solid`,borderColor:`grey.200`},children:W(K,{component:`code`,sx:{fontSize:`0.875rem`,wordBreak:`break-all`,whiteSpace:`pre-wrap`,bgcolor:`transparent`,fontFamily:`monospace`},children:Bs(t,100)})})]}),G(dt,{sx:{gap:1},children:[W(q,{ref:i,variant:`outlined`,onClick:r,children:`Cancel`}),W(q,{color:`iochmara`,variant:`contained`,onClick:n,children:`Open Link`})]})]})}function Hs(e,t){if(!e||e.startsWith(`/`)||e.startsWith(`#`)||e.startsWith(`?`))return!1;try{let n=new URL(e,window.location.origin);return!t.some(e=>n.hostname===e||n.hostname.endsWith(`.${e}`))}catch{return!1}}function Us({href:e,children:t,internalDomains:n}){let[r,i]=H(!1),[a,o]=H(null),s=t=>{e&&Hs(e,n)&&(t.preventDefault(),o(e),i(!0))},c=()=>{a&&window.open(a,`_blank`,`noopener,noreferrer`),i(!1),o(null)},l=()=>{i(!1),o(null)},u=e?Hs(e,n):!1;return G(U,{children:[G(mt,{href:e,onClick:s,sx:{color:`primary.main`,textDecoration:`underline`,"&:hover":{color:`iochmara.600`}},target:`_blank`,rel:u?`noopener noreferrer`:void 0,children:[t,u&&` ↗`]}),W(Vs,{isOpen:r,url:a||``,onConfirm:c,onCancel:l})]})}function Ws({className:e,children:t,isDark:n=!1}){let r=/language-(\w+)/.exec(e||``),i=r?r[1]:void 0,a=String(t).replace(/\n$/,``);return!r&&!String(t).includes(`
|
|
6
|
+
`)?W(K,{component:`code`,sx:{bgcolor:n?`grey.800`:`grey.100`,color:n?`grey.200`:`inherit`,px:1,py:.5,borderRadius:.5,fontSize:`0.9em`,fontFamily:`monospace`},children:t}):W(K,{sx:{my:2,borderRadius:1,overflow:`hidden`,fontSize:`0.875rem`},children:W(ir,{style:ar,language:i,PreTag:`div`,customStyle:{margin:0,borderRadius:`6px`,fontSize:`0.85em`},children:a})})}function Gs({content:e,fontSize:t=`0.875rem`,internalDomains:n=[]}){let r=F(),i=[window.location.hostname,`reccehq.com`,`datarecce.io`,`localhost`,...n];return W(K,{className:`markdown-content`,children:W(rr,{remarkPlugins:[or],components:{a:({href:e,children:t})=>W(Us,{href:e,internalDomains:i,children:t}),code:e=>W(Ws,{...e,isDark:r}),p:({children:e})=>W(Y,{component:`p`,sx:{fontSize:t,mb:2,"&:last-child":{mb:0}},children:e}),h1:({children:e})=>W(Y,{sx:{fontSize:`1.25rem`,fontWeight:`bold`,mb:2,mt:3},children:e}),h2:({children:e})=>W(Y,{sx:{fontSize:`1.125rem`,fontWeight:`bold`,mb:2,mt:3},children:e}),h3:({children:e})=>W(Y,{sx:{fontSize:`1rem`,fontWeight:600,mb:2,mt:2},children:e}),ul:({children:e})=>W(K,{component:`ul`,sx:{pl:4,mb:2,listStyleType:`disc`},children:e}),ol:({children:e})=>W(K,{component:`ol`,sx:{pl:4,mb:2,listStyleType:`decimal`},children:e}),li:({children:e})=>W(K,{component:`li`,sx:{fontSize:t,mb:1},children:e}),blockquote:({children:e})=>W(K,{sx:{borderLeft:`3px solid`,borderLeftColor:r?`grey.600`:`grey.300`,pl:3,py:1,my:2,color:r?`grey.400`:`grey.600`,fontStyle:`italic`},children:e}),table:({children:e})=>W(K,{sx:{overflowX:`auto`,my:2},children:W(K,{component:`table`,sx:{width:`100%`,fontSize:t,border:`1px solid`,borderColor:r?`grey.700`:`grey.200`,borderRadius:1},children:e})}),thead:({children:e})=>W(K,{component:`thead`,sx:{bgcolor:r?`grey.800`:`grey.50`},children:e}),tbody:({children:e})=>W(K,{component:`tbody`,children:e}),tr:({children:e})=>W(K,{component:`tr`,sx:{borderBottom:`1px solid`,borderColor:r?`grey.700`:`grey.200`},children:e}),th:({children:e})=>W(K,{component:`th`,sx:{px:2,py:1,fontWeight:600,textAlign:`left`},children:e}),td:({children:e})=>W(K,{component:`td`,sx:{px:2,py:1},children:e}),hr:()=>W(K,{component:`hr`,sx:{my:3,borderColor:r?`grey.700`:`grey.200`}}),strong:({children:e})=>W(Y,{component:`strong`,sx:{fontWeight:600},children:e}),em:({children:e})=>W(Y,{component:`em`,sx:{fontStyle:`italic`},children:e}),del:({children:e})=>W(Y,{component:`del`,sx:{textDecoration:`line-through`,color:`grey.500`},children:e})},children:e})})}const Ks=ot(function({backgroundColor:e=`white`,blockSize:t,children:n,...r},i){return W(K,{ref:i,...r,sx:{overflowY:`auto`,overflowX:`hidden`,...r.sx},children:W(K,{sx:{backgroundColor:e,height:`100%`,blockSize:t},children:n})})});function qs({children:e,direction:t=`horizontal`,sizes:n,minSizes:r=0,maxSizes:i,gutterSize:a=5,snapOffset:o=30,dragInterval:s=1,onDragEnd:c,onDrag:l,theme:u,style:d,className:f}){let p=F(),m=u?u===`dark`:p,h={display:`flex`,flexDirection:t===`horizontal`?`row`:`column`,height:`100%`,width:`100%`,...d};return W(K,{className:f,sx:{height:`100%`,width:`100%`,"& .gutter":{backgroundColor:`divider`,backgroundRepeat:`no-repeat`,backgroundPosition:`50%`,transition:`background-color 0.15s ease`,"&:hover":{backgroundColor:m?`grey.600`:`grey.300`}},"& .gutter.gutter-horizontal":{cursor:`col-resize`},"& .gutter.gutter-vertical":{cursor:`row-resize`}},children:W(sr,{style:h,direction:t,sizes:n,minSize:r,maxSize:i,gutterSize:a,snapOffset:o,dragInterval:s,onDragEnd:c,onDrag:l,children:e})})}const Js=L(qs);Js.displayName=`SplitPane`;function Ys(e){let{style:t,children:n,gutterSize:r=5,minSize:i,maxSize:a,sizes:o,snapOffset:s,dragInterval:c,onDragEnd:l,onDrag:u,className:d}=e;return W(Js,{direction:`horizontal`,gutterSize:r,minSizes:i,maxSizes:a,sizes:o,snapOffset:typeof s==`number`?s:void 0,dragInterval:c,onDragEnd:l,onDrag:u,style:t,className:d,children:n})}function Xs(e){let{style:t,children:n,gutterSize:r=5,minSize:i,maxSize:a,sizes:o,snapOffset:s,dragInterval:c,onDragEnd:l,onDrag:u,className:d}=e;return W(Js,{direction:`vertical`,gutterSize:r,minSizes:i,maxSizes:a,sizes:o,snapOffset:typeof s==`number`?s:void 0,dragInterval:c,onDragEnd:l,onDrag:u,style:t,className:d,children:n})}const Zs={mode:`multiRow`,checkboxes:!0,headerCheckbox:!0,enableClickSelection:!1};function Qs({warning:e,isDark:t}){return G(K,{sx:{display:`flex`,alignItems:`center`,gap:.5,fontSize:`0.75rem`},children:[W(Yt,{color:t?cr[400]:cr[600]}),W(K,{children:e})]})}function $s({toolbar:e,warnings:t,warningStyle:n=`alert`,isDark:r}){return!e&&(!t||t.length===0)?null:G(K,{sx:{display:`flex`,alignItems:`center`,gap:1,px:1,py:.5,borderBottom:1,borderColor:`divider`,bgcolor:n===`amber`&&t&&t.length>0?r?cr[900]:cr[100]:r?`grey.900`:`grey.50`,color:n===`amber`&&t&&t.length>0?r?cr[200]:cr[800]:void 0},children:[n===`amber`?t?.map(e=>W(Qs,{warning:e,isDark:r},e)):t?.map(e=>W(un,{severity:`warning`,sx:{py:0,fontSize:`0.75rem`},children:e},e)),W(K,{sx:{flex:1}}),e]})}function ec(e){let{displayName:t,typeGuard:n,expectedRunType:r,screenshotWrapper:i,transformData:a,emptyState:o=`No data`,conditionalEmptyState:s,enableRowSelection:c}=e;function l({run:e,viewOptions:t,onViewOptionsChanged:l,onAddToChecklist:u},d){let f=F();if(!n(e))throw Error(`Run type must be ${r}`);let p=B(()=>a(e,{viewOptions:t,onViewOptionsChanged:l,onAddToChecklist:u,isDark:f}),[e,t,l,u,f]),m=s?.(e,t);return m==null?p?.renderNull?null:!p||p.isEmpty?p?.toolbar||p?.warnings&&p.warnings.length>0?G(K,{sx:{display:`flex`,flexDirection:`column`,bgcolor:f?`grey.900`:`grey.50`,height:`100%`},children:[W($s,{toolbar:p?.toolbar,warnings:p?.warnings,warningStyle:p?.warningStyle,isDark:f}),W(K,{sx:{display:`flex`,alignItems:`center`,justifyContent:`center`,flex:1},children:p?.emptyMessage??o})]}):W(K,{sx:{display:`flex`,alignItems:`center`,justifyContent:`center`,bgcolor:f?`grey.900`:`grey.50`,height:`100%`},children:o}):i===`grid`?G(K,{sx:{display:`flex`,flexDirection:`column`,height:`100%`},children:[p.header,W($s,{toolbar:p.toolbar,warnings:p.warnings,warningStyle:p.warningStyle,isDark:f}),W(Es,{ref:d,style:{blockSize:`auto`,maxHeight:`100%`,overflow:`auto`,fontSize:`0.875rem`,borderWidth:1},columns:p.columns??[],rows:p.rows??[],renderers:{noRowsFallback:W(ws,{emptyMessage:p.noRowsMessage})},defaultColumnOptions:p.defaultColumnOptions,rowSelection:c?Zs:void 0}),p.footer]}):G(K,{sx:{display:`flex`,flexDirection:`column`,height:`100%`},children:[p.header,W($s,{toolbar:p.toolbar,warnings:p.warnings,warningStyle:p.warningStyle,isDark:f}),W(Ks,{ref:d,backgroundColor:f?`#1f2937`:`white`,sx:{height:`100%`},children:p.content}),p.footer]}):W(K,{sx:{display:`flex`,alignItems:`center`,justifyContent:`center`,bgcolor:f?`grey.900`:`grey.50`,height:`100%`},children:m})}return l.displayName=t,ot(l)}const tc=`0.1.0`;function nc(e){return y(e)}const rc=ec({displayName:`HistogramDiffResultView`,typeGuard:nc,expectedRunType:`histogram_diff`,screenshotWrapper:`box`,conditionalEmptyState:e=>{let t=e.result?.base,n=e.result?.current;return!t||!n?W(`div`,{children:`Loading...`}):null},transformData:(e,{isDark:t})=>{let n=e.params,r=e.result?.base,i=e.result?.current,a=e.result?.min,o=e.result?.max,s=e.result?.bin_edges??[];if(!r||!i)return{isEmpty:!0};let c=e.params?.column_type??`numeric`,l=c===`datetime`?`datetime`:c===`string`?`string`:`numeric`;return{content:G(K,{sx:{display:`flex`,flexDirection:`row`},children:[W(K,{sx:{flex:1}}),W(K,{sx:{width:`80%`,height:`35vh`,m:4},children:W(os,{title:`Model ${n.model}.${n.column_name}`,dataType:l,baseData:{counts:r.counts},currentData:{counts:i.counts},min:a,max:o,samples:r.total,binEdges:s,theme:t?`dark`:`light`})}),W(K,{sx:{flex:1}})]})}}});function ic({model:e,row:t,singleEnv:n,cllRunning:r,showMenu:i=!0,onViewCode:a,isImpacted:o}){let s=le(),{isActionAvailable:c}=fe(),{runAction:l}=M(),{featureToggles:u}=ie(),{name:d,baseType:f,currentType:p,baseIndex:m,currentIndex:h,reordered:g,definitionChanged:_,changeUnknown:v}=t,y=p??f??t.type,b=m===void 0&&h!==void 0,x=m!==void 0&&h===void 0,S=!b&&!x&&f!==p,C=!b&&!x&&(f!==p||g===!0),w=n?`unchanged`:b?`added`:x?`removed`:S?`type_changed`:_?`definition_changed`:v?`definition_unknown`:`unchanged`,[T,E]=H(null),D=!!T,O=e=>{e.stopPropagation(),E(e.currentTarget)},k=()=>{E(null)},A=()=>{l(`profile_diff`,{model:e.name,columns:[d]},{showForm:!1,trackProps:{action:`profile_diff`,source:`schema_column_menu`,node_count:1}})},ee=()=>{l(`histogram_diff`,{model:e.name,column_name:d,column_type:y},{showForm:!1,trackProps:{action:`histogram_diff`,source:`schema_column_menu`,node_count:1}})},te=()=>{l(`top_k_diff`,{model:e.name,column_name:d,k:50},{showForm:!1,trackProps:{action:`top_k_diff`,source:`schema_column_menu`,node_count:1}})},ne=()=>{l(`value_diff`,{model:e.name,columns:[d]},{showForm:!0,trackProps:{action:`value_diff`,source:`schema_column_menu`,node_count:1}})},re=!f||!p;return W(Z,{title:ti({name:d,status:w,baseType:f,currentType:p,cllAvailable:!(s===void 0||!c(`change_analysis`)||m!==void 0&&h===void 0),impacted:!!o&&!b&&!x&&!C&&!_}),placement:`top`,children:G(K,{sx:{display:`flex`,alignItems:`center`,gap:`3px`},children:[C&&W(`span`,{className:`schema-change-badge schema-change-badge-changed`,children:`~`}),b&&W(`span`,{className:`schema-change-badge schema-change-badge-added`,children:`+`}),x&&W(`span`,{className:`schema-change-badge schema-change-badge-removed`,children:`-`}),o&&!b&&!x&&!C&&!_&&!v&&W(`span`,{className:`schema-change-badge schema-change-badge-impacted`,children:`!`}),_&&W(Z,{title:`Definition changed — click to view code`,placement:`top`,onMouseOver:e=>e.stopPropagation(),children:a?W(`button`,{type:`button`,className:`schema-change-badge schema-change-badge-changed schema-change-badge-clickable`,onClick:e=>{e.stopPropagation(),a()},children:`~`}):W(`span`,{className:`schema-change-badge schema-change-badge-changed`,children:`~`})}),v&&!b&&!x&&!C&&!_&&W(Z,{title:`Change status unknown — analyzer couldn't resolve column dependencies`,placement:`top`,onMouseOver:e=>e.stopPropagation(),children:W(`span`,{className:`schema-change-badge schema-change-badge-unknown`,children:`?`})}),W(K,{sx:{overflow:`hidden`,textOverflow:`ellipsis`,whiteSpace:`nowrap`},children:d}),S?G(K,{component:`span`,sx:{display:`inline-flex`,alignItems:`center`,gap:`0.125rem`,ml:`0.25rem`,fontSize:`1.6rem`},children:[f&&W(K,{component:`span`,sx:{textDecoration:`line-through`,opacity:.6},children:W(ri,{type:f,disableTooltip:!0})}),W(K,{component:`span`,sx:{fontSize:`0.7em`,opacity:.5},children:`→`}),p&&W(ri,{type:p,disableTooltip:!0})]}):y&&W(K,{component:`span`,sx:{ml:`0.25rem`,fontSize:`1.6rem`},children:W(ri,{type:y,disableTooltip:!0})}),W(K,{sx:{flex:1}}),r&&W(Dt,{size:12,color:`inherit`}),i&&!n&&e.resource_type!==`source`&&G(U,{children:[W(X,{"aria-label":`Column options`,className:`row-context-menu`,size:`small`,disabled:u.disableDatabaseQuery,onClick:O,children:W(mn,{})}),G(fn,{anchorEl:T,open:D,onClose:k,slotProps:{list:{sx:{lineHeight:`20px`}}},children:[W(gn,{sx:{m:0,p:`4px 12px`,lineHeight:`20px`},children:`Diff`}),W(Q,{onClick:()=>{A(),k()},disabled:re,sx:{fontSize:`0.85rem`},children:`Profile Diff`}),W(Q,{onClick:()=>{ee(),k()},disabled:re||(y?!ua(y):!0),sx:{fontSize:`0.85rem`},children:`Histogram Diff`}),W(Q,{onClick:()=>{te(),k()},disabled:re,sx:{fontSize:`0.85rem`},children:`Top-k Diff`}),W(Q,{onClick:()=>{ne(),k()},disabled:re,sx:{fontSize:`0.85rem`},children:`Value Diff`})]})]})]})})}function ac(e,t,n,r){return i=>{let a=i.data;return a?W(ic,{model:e,row:a,cllRunning:t?.get(a.name)??!1,showMenu:n,onViewCode:r,isImpacted:a.isImpacted}):null}}function oc(e,t,n){return r=>{let i=r.data;return i?W(ic,{model:e,row:i,cllRunning:t?.get(i.name)??!1,singleEnv:!0,showMenu:n}):null}}function sc(e){if(!e.data)return null;let{baseIndex:t,currentIndex:n,reordered:r}=e.data;return r&&t!==void 0&&n!==void 0&&t!==n?G(`span`,{children:[W(`span`,{className:`schema-index-old`,children:t}),W(`span`,{className:`schema-index-new`,children:n})]}):W(`span`,{children:n===void 0?t??`-`:n??`-`})}function cc(e={},t={}){let n={},r=Te(Object.keys(e),Object.keys(t));Object.entries(r).forEach(([e,t])=>{n[e]={name:e,reordered:t===`reordered`,__status:void 0}});let i=0;return Object.entries(e).forEach(([e,t])=>{t!=null&&(n[e].baseIndex=i+=1,n[e].baseType=t.type)}),i=0,Object.entries(t).forEach(([e,t])=>{t!=null&&(n[e].currentIndex=i+=1,n[e].currentType=t.type)}),n}function lc(e,t={}){let{node:n,cllRunningMap:r,showMenu:i,columnChanges:a,onViewCode:o,impactedColumns:s,nodeId:c}=t,l=[{field:`index`,headerName:``,resizable:!0,minWidth:35,width:35,cellRenderer:sc,cellClass:`schema-column schema-column-index`},{field:`name`,headerName:`Name`,resizable:!0,cellRenderer:n?ac(n,r,i,o):void 0,cellClass:`schema-column`,valueGetter:e=>{let t=e.data;return t?`${t.name}|${t.definitionChanged??!1}|${t.isImpacted??!1}|${t.changeUnknown??!1}`:``}}],u=Object.values(e);if(a)for(let e of u){let t=e.baseIndex===void 0,n=e.currentIndex===void 0,r=!t&&!n&&e.baseType!==e.currentType,i=a[e.name];i===`modified`&&!t&&!n&&!r&&!e.reordered?e.definitionChanged=!0:i===`unknown`&&!t&&!n&&!r&&!e.reordered&&(e.changeUnknown=!0)}if(s&&c)for(let e of u){let t=`${c}_${e.name}`;s.has(t)&&(e.isImpacted=!0)}return{columns:l,rows:u}}function uc(e={},t={}){let{node:n,cllRunningMap:r,showMenu:i}=t,a=Object.entries(e).filter(([e,t])=>t!=null).map(([e,t],n)=>({name:e,index:n+1,type:t.type,__status:void 0}));return{columns:[{field:`index`,headerName:``,resizable:!0,minWidth:35,width:35,cellClass:`schema-column schema-column-index`},{field:`name`,headerName:`Name`,resizable:!0,cellRenderer:n?oc(n,r,i):void 0,cellClass:`schema-column`}],rows:a}}function dc({columnName:e,primaryKeys:t}){return W(K,{sx:{display:`flex`,justifyContent:`center`,alignItems:`center`,height:`100%`},children:t.includes(e)&&W(hn,{})})}function fc({params:e,column:t}){let{runAction:n}=M(),{featureToggles:r}=ie(),[i,a]=H(null),o=!!i,s=e=>{a(e.currentTarget)},c=()=>{a(null)},l=(t,r)=>{n(`value_diff_detail`,{...e,...t},r)};return G(K,{sx:{display:`flex`},children:[W(K,{sx:{overflow:`hidden`,textOverflow:`ellipsis`,whiteSpace:`nowrap`},children:t}),W(K,{sx:{flex:1}}),W(X,{"aria-label":`Column options`,className:`row-context-menu`,size:`small`,disabled:r.disableDatabaseQuery,onClick:s,children:W(Rt,{})}),G(fn,{anchorEl:i,open:o,onClose:c,slotProps:{list:{sx:{lineHeight:`20px`}}},children:[W(gn,{sx:{fontSize:`8pt`,lineHeight:`20px`},children:`Action`}),W(Q,{onClick:()=>{l({},{showForm:!0}),c()},sx:{fontSize:`10pt`},children:`Show mismatched values...`}),G(Q,{onClick:()=>{l({columns:[t]},{showForm:!1}),c()},sx:{fontSize:`10pt`},children:[`Show mismatched values for '`,t,`'`]})]})]})}function pc({value:e}){let t=`N/A`;return e!=null&&(t=e>.9999&&e<1?`~99.99 %`:e<1e-4&&e>0?`~0.01 %`:`${(e*100).toFixed(2)} %`),W(K,{sx:{textAlign:`right`},children:t})}function mc(e){return t=>{let n=t.data;return n?W(dc,{columnName:String(n[0]),primaryKeys:e}):null}}function hc(e){return t=>{let n=t.data,r=t.colDef?.field??``;return n?W(fc,{column:String(n[r]),params:e}):null}}function gc(e){let t=e.data,n=e.colDef?.field??``;return t?W(pc,{value:t[n]}):null}const _c=[{key:`0`,name:`Column`,type:`text`},{key:`1`,name:`Matched`,type:`number`},{key:`2`,name:`Matched %`,type:`number`}];function vc(e){let t=e.data;if(!t)return;let n=t[2];return n!=null&&n<1?`diff-cell-modified`:void 0}function yc(e,t){let n=e==null,r=t==null;return n&&r?0:n?1:r?-1:e-t}const bc={PRIMARY_KEY_INDICATOR:`__is_pk__`,COLUMN_NAME:`0`,MATCHED_COUNT:`1`,MATCHED_PERCENT:`2`};function xc(e,t){return[{field:bc.PRIMARY_KEY_INDICATOR,headerName:``,width:30,maxWidth:30,sortable:!1,cellRenderer:mc(e)},{field:bc.COLUMN_NAME,headerName:`Column`,resizable:!0,cellRenderer:hc(t),cellClass:`cell-show-context-menu`},{field:bc.MATCHED_COUNT,headerName:`Matched`,resizable:!0,cellClass:vc},{field:bc.MATCHED_PERCENT,headerName:`Matched %`,resizable:!0,sort:`asc`,comparator:yc,cellRenderer:gc,cellClass:vc}]}function Sc(e,t){let{params:n}=t,r=Array.isArray(n.primary_key)?n.primary_key:[n.primary_key],i={...e.data,columns:_c};return{columns:xc(r,n),rows:_e(i)}}function Cc(e){if(w(e)||f(e))return e.result?{kind:`query`,result:e.result}:null;if(b(e))return e.result?e.result.diff&&e.params?.primary_keys?{kind:`query_diff_joined`,result:e.result,primaryKeys:e.params.primary_keys}:{kind:`query_diff_separate`,result:e.result}:null;if(T(e))return!e.result||!e.params?null:{kind:`value_diff`,result:e.result,params:e.params};if(d(e)){if(!e.result||!e.params?.primary_key)return null;let t=e.params.primary_key,n=Array.isArray(t)?t:[t];return{kind:`value_diff_detail`,result:e.result,primaryKeys:n}}return C(e)?e.result?.current?{kind:`profile`,result:e.result}:null:S(e)?e.result?{kind:`profile_diff`,result:e.result}:null:g(e)?e.result?{kind:`row_count`,result:e.result}:null:p(e)&&e.result?{kind:`row_count_diff`,result:e.result}:null}function wc(e){let t=e.data;if(!t)return null;let n=e.colDef?.field??``,r=String(Ne(t,n)??e.value??``),i=String(Ne(t,`data_type`)??``)||void 0;return W(Z,{title:ti({name:r,currentType:i}),placement:`top`,children:G(K,{sx:{display:`flex`,alignItems:`center`,gap:`6px`,overflow:`hidden`,height:`100%`},children:[W(K,{sx:{overflow:`hidden`,textOverflow:`ellipsis`,whiteSpace:`nowrap`},children:r}),i&&W(K,{component:`span`,sx:{fontSize:`1.6rem`},children:W(ri,{type:i,disableTooltip:!0})})]})})}function Tc(e){let t=e.data;if(!t)return null;let n=e.colDef?.field??``,r=String(Ne(t,n)??e.value??``),i=Ne(t,`base__data_type`),a=i==null?void 0:String(i),o=Ne(t,`current__data_type`),s=o==null?void 0:String(o),c=a!=null&&s!=null&&a!==s,l=s??a;return W(Z,{title:ti({name:r,baseType:a,currentType:s}),placement:`top`,children:G(K,{sx:{display:`flex`,alignItems:`center`,gap:`6px`,overflow:`hidden`,height:`100%`},children:[W(K,{sx:{overflow:`hidden`,textOverflow:`ellipsis`,whiteSpace:`nowrap`},children:r}),c?G(K,{component:`span`,sx:{display:`inline-flex`,alignItems:`center`,gap:`0.125rem`,fontSize:`1.6rem`},children:[W(K,{component:`span`,sx:{textDecoration:`line-through`,opacity:.6},children:W(ri,{type:a,disableTooltip:!0})}),W(K,{component:`span`,sx:{fontSize:`0.7em`,opacity:.5},children:`→`}),W(ri,{type:s,disableTooltip:!0})]}):l&&W(K,{component:`span`,sx:{fontSize:`1.6rem`},children:W(ri,{type:l,disableTooltip:!0})})]})})}function Ec(e){if(!e)return!1;let t=e.toLowerCase();return t===`data_type`||t===`base__data_type`||t===`current__data_type`}function Dc(e){let t=e.rows.length>0&&Object.hasOwn(e.rows[0],`base__data_type`),n=e.columns.filter(e=>{if(`children`in e&&e.children){let t=e.children.filter(e=>!Ec(e.field));return t.length===0?!1:(e.children=t,!0)}return!Ec(e.field)}).map(e=>{if(`children`in e&&e.children)return{...e,children:e.children.map(e=>{let t=e;return t.field?.toLowerCase()===`column_name`?{...t,cellRenderer:wc}:e})};let n=e;return n.field?.toLowerCase()===`column_name`?{...n,cellRenderer:t?Tc:wc}:e});return{...e,columns:n}}function Oc(e){return e.current?.columns.find(e=>e.name.toLowerCase()===`column_name`)?.name??`column_name`}function kc(e,t={}){let n=Cc(e);if(!n)return null;switch(n.kind){case`query`:return Ae(n.result,{primaryKeys:t.primaryKeys,pinnedColumns:t.pinnedColumns,columnsRenderMode:t.columnsRenderMode,onPrimaryKeyChange:t.onPrimaryKeyChange,onPinnedColumnsChange:t.onPinnedColumnsChange,onColumnsRenderModeChanged:t.onColumnsRenderModeChanged});case`query_diff_separate`:return Ue(n.result.base,n.result.current,t);case`query_diff_joined`:return n.result.diff?Ee(n.result.diff,n.primaryKeys,{changedOnly:t.changedOnly,pinnedColumns:t.pinnedColumns,onPinnedColumnsChange:t.onPinnedColumnsChange,baseTitle:t.baseTitle,currentTitle:t.currentTitle,displayMode:t.displayMode,columnsRenderMode:t.columnsRenderMode,onColumnsRenderModeChanged:t.onColumnsRenderModeChanged}):null;case`value_diff`:return Sc(n.result,{params:n.params});case`value_diff_detail`:return Ee(n.result,n.primaryKeys,{changedOnly:t.changedOnly,pinnedColumns:t.pinnedColumns,onPinnedColumnsChange:t.onPinnedColumnsChange,displayMode:t.displayMode,columnsRenderMode:t.columnsRenderMode,onColumnsRenderModeChanged:t.onColumnsRenderModeChanged});case`profile`:{if(!n.result.current)return null;let e=Oc(n.result);return Dc(Ae(n.result.current,{primaryKeys:[e],pinnedColumns:t.pinnedColumns,onPinnedColumnsChange:t.onPinnedColumnsChange,columnsRenderMode:t.columnsRenderMode,onColumnsRenderModeChanged:t.onColumnsRenderModeChanged}))}case`profile_diff`:{let e=Oc(n.result);return Dc(Ue(n.result.base,n.result.current,{primaryKeys:[e],pinnedColumns:t.pinnedColumns,onPinnedColumnsChange:t.onPinnedColumnsChange,displayMode:t.displayMode,columnsRenderMode:t.columnsRenderMode,onColumnsRenderModeChanged:t.onColumnsRenderModeChanged}))}case`row_count`:return Re(n.result);case`row_count_diff`:return je(n.result);default:return null}}function Ac(e,t){switch(e.type){case`single`:return Ae(e.dataframe,t??{});case`dual`:return Ue(e.base,e.current,t??{});case`joined`:return Ee(e.dataframe,e.primaryKeys,t??{});case`schema_diff`:{let n=t??{};return lc(cc(e.base,e.current),n)}case`schema_single`:return uc(e.columns,t??{})}}function jc({params:e,onParamsChanged:t,setIsReadyToExecute:n}){let[r,i]=H(!e.columns||e.columns.length===0),a=e.model,{columns:o,isLoading:s,error:c}=vu(e.model);z(()=>{n(!!a)},[a,n]);let l=o.map(e=>e.name);return s?W(K,{children:`Loading...`}):l.length===0||c?W(K,{children:`Error: Please provide the 'catalog.json' to list column candidates`}):G(J,{spacing:5,sx:{m:`8px 24px`,pb:`200px`},children:[G(K,{children:[W(Y,{variant:`body2`,sx:{mb:1},children:`Model`}),W(xn,{fullWidth:!0,size:`small`,value:e.model,slotProps:{input:{readOnly:!0}}})]}),G(K,{children:[W(Y,{variant:`body2`,sx:{mb:1},children:`Columns`}),W(sn,{control:W(on,{checked:r,onChange:n=>{i(n.target.checked),t({...e,columns:void 0})},size:`small`}),label:`All columns`,sx:{mb:`10px`}}),!r&&W(yr,{multiple:!0,size:`small`,disableCloseOnSelect:!0,options:l,value:e.columns??[],onChange:(n,r)=>{t({...e,columns:r.length===0?void 0:r})},renderInput:t=>W(xn,{...t,placeholder:(e.columns??[]).length===0?`Select columns`:``,className:`no-track-pii-safe`})})]})]})}const Mc=e=>typeof e==`object`&&!!e&&`type`in e&&S(e),Nc=ec({displayName:`ProfileResultView`,typeGuard:e=>typeof e==`object`&&!!e&&`type`in e&&C(e),expectedRunType:`profile`,screenshotWrapper:`grid`,transformData:(e,{viewOptions:t,onViewOptionsChanged:n})=>{let r=kc(e,{pinnedColumns:t?.pinned_columns??[],onPinnedColumnsChange:e=>{n&&n({...t,pinned_columns:e})},columnsRenderMode:{distinct_proportion:`percent`,not_null_proportion:`percent`,...t?.columnsRenderMode},onColumnsRenderModeChanged:e=>{let r={...t?.columnsRenderMode??{},...e};n&&n({...t,columnsRenderMode:r})}})??{columns:[],rows:[]};return{columns:r.columns,rows:r.rows,isEmpty:r.columns.length===0}}}),Pc=ec({displayName:`ProfileDiffResultView`,typeGuard:Mc,expectedRunType:`profile_diff`,screenshotWrapper:`grid`,transformData:(e,{viewOptions:t,onViewOptionsChanged:n})=>{let r=t?.pinned_columns??[],i=t?.display_mode??`inline`,a=kc(e,{pinnedColumns:r,onPinnedColumnsChange:e=>{n&&n({...t,pinned_columns:e})},displayMode:i,columnsRenderMode:{distinct_proportion:`percent`,not_null_proportion:`percent`,...t?.columnsRenderMode},onColumnsRenderModeChanged:e=>{let r={...t?.columnsRenderMode??{},...e};n&&n({...t,columnsRenderMode:r})}})??{columns:[],rows:[]},o=W(rs,{children:W(aa,{displayMode:i,onDisplayModeChanged:e=>{n&&n({...t,display_mode:e})}})});return{columns:a.columns,rows:a.rows,header:o,isEmpty:a.columns.length===0}}});function Fc(e){return b(e)}const Ic=ec({displayName:`QueryDiffResultView`,typeGuard:Fc,expectedRunType:`query_diff`,screenshotWrapper:`grid`,enableRowSelection:!0,emptyState:`No data`,transformData:(e,{viewOptions:t,onViewOptionsChanged:n})=>{let r=e.result&&`diff`in e.result&&e.result.diff!=null,i,a;e.params&&e.params.current_model&&(i=`Original`,a=`Editor`);let o=t?.changed_only??!1,s=t?.pinned_columns??[],c=t?.display_mode??`inline`,l=t?.columnsRenderMode??{},u=r?[]:t?.primary_keys??[],d=e=>{let r={...t?.columnsRenderMode??{},...e};n&&n({...t,columnsRenderMode:r})},f=r?void 0:e=>{n&&n({...t,primary_keys:e})},p=e=>{n&&n({...t,pinned_columns:e})},m;if(r&&e.result?.diff){let t=e.params?.primary_keys??[];m=Ee(e.result.diff,t,{changedOnly:o,pinnedColumns:s,onPinnedColumnsChange:p,columnsRenderMode:l,onColumnsRenderModeChanged:d,baseTitle:i,currentTitle:a,displayMode:c})}else m=Ue(e.result?.base,e.result?.current,{changedOnly:o,pinnedColumns:s,onPinnedColumnsChange:p,columnsRenderMode:l,onColumnsRenderModeChanged:d,baseTitle:i,currentTitle:a,displayMode:c,primaryKeys:u,onPrimaryKeyChange:f});let h=[];if(!r&&u.length>0){let e=u.join(`, `);m.invalidPKeyBase&&m.invalidPKeyCurrent?h.push(`Warning: The primary key '${e}' is not unique in the base and current environments`):m.invalidPKeyBase?h.push(`Warning: The primary key '${e}' is not unique in the base environment`):m.invalidPKeyCurrent&&h.push(`Warning: The primary key '${e}' is not unique in the current environment`)}let g=r?e.result?.diff?.limit??0:e.result?.current?.limit??0,_=r?e.result?.diff?.more:e.result?.current?.more||e.result?.base?.more;if(g>0&&_&&h.push(`Warning: Displayed results are limited to ${g.toLocaleString()} records. To ensure complete data retrieval, consider applying a LIMIT or WHERE clause to constrain the result set.`),m.columns.length===0)return{isEmpty:!0};let v=G(U,{children:[W(aa,{displayMode:c,onDisplayModeChanged:e=>{n&&n({...t,display_mode:e})}}),W(ra,{changedOnly:t?.changed_only,onChange:()=>{let e=!t?.changed_only;n&&n({...t,changed_only:e})}})]});return r&&o&&m.rows.length===0?{isEmpty:!0,emptyMessage:`No change`,toolbar:v,warnings:h.length>0?h:void 0}:{columns:m.columns,rows:m.rows,warnings:h.length>0?h:void 0,toolbar:v,defaultColumnOptions:{resizable:!0,maxWidth:800,minWidth:35},noRowsMessage:`No mismatched rows`}}});function Lc(e){return w(e)||f(e)}const Rc=ec({displayName:`QueryResultView`,typeGuard:Lc,expectedRunType:`query`,screenshotWrapper:`grid`,enableRowSelection:!0,emptyState:`No data`,transformData:(e,{viewOptions:t,onViewOptionsChanged:n,onAddToChecklist:r})=>{let i=t?.pinned_columns??[],a=t?.columnsRenderMode??{},o=e=>{let r={...t?.columnsRenderMode??{},...e};n&&n({...t,columnsRenderMode:r})},s=e=>{n&&n({...t,pinned_columns:e})};if(!e.result)return{isEmpty:!0};let c=Ae(e.result,{pinnedColumns:i,onPinnedColumnsChange:s,columnsRenderMode:a,onColumnsRenderModeChanged:o});if(c.columns.length===0)return{isEmpty:!0};let l=e.result,u=l?l.limit??0:0,d=[];u>0&&l?.more&&d.push(`Warning: Displayed results are limited to ${u.toLocaleString()} records. To ensure complete data retrieval, consider applying a LIMIT or WHERE clause to constrain the result set.`);let f=r?W(q,{sx:{my:`5px`},size:`small`,color:`iochmara`,variant:`contained`,onClick:()=>{r(e)},children:`Add to Checklist`}):void 0;return{columns:c.columns,rows:c.rows,warnings:d.length>0?d:void 0,warningStyle:`amber`,toolbar:f,defaultColumnOptions:{resizable:!0,maxWidth:800,minWidth:35}}}});function zc(e){return g(e)}function Bc(e){return p(e)}function Vc(e){if(!e.result)return null;let t=Re(e.result);return{columns:t.columns,rows:t.rows,isEmpty:t.rows.length===0}}function Hc(e){if(!e.result)return null;let t=je(e.result);return{columns:t.columns,rows:t.rows,isEmpty:t.rows.length===0}}const Uc=ec({displayName:`RowCountResultView`,typeGuard:zc,expectedRunType:`row_count`,screenshotWrapper:`grid`,transformData:Vc,emptyState:`No nodes matched`}),Wc=ec({displayName:`RowCountDiffResultView`,typeGuard:Bc,expectedRunType:`row_count_diff`,screenshotWrapper:`grid`,transformData:Hc,emptyState:`No nodes matched`});function Gc({params:e,onParamsChanged:t,setIsReadyToExecute:n}){let{columns:r,isLoading:i,error:a}=vu(e.model),o=r.map(e=>e.name);return z(()=>{n(!!e.column_name)},[e,n]),i?W(K,{children:`Loading...`}):o.length===0||a?W(K,{children:`Error: Please provide the 'catalog.json' to list column candidates`}):W(K,{sx:{m:`16px`},children:G(_n,{fullWidth:!0,children:[W(vn,{sx:{mb:1},children:`Pick a column to show top-k`}),G(yn,{value:e.column_name,onChange:n=>{let r=n.target.value;t({...e,column_name:r})},children:[W(`option`,{value:``,children:`Select column`}),o.map(e=>W(`option`,{value:e,className:`no-track-pii-safe`,children:e},e))]})]})})}function Kc(e){return v(e)}function qc({model:e,columnName:t}){return G(Y,{variant:`h5`,sx:{pt:4,textAlign:`center`,color:F()?`grey.200`:`grey.600`},children:[`Model `,e,`.`,t]})}function Jc({showAll:e,onToggle:t}){return W(K,{sx:{display:`flex`,p:5,justifyContent:`start`},children:W(mt,{component:`button`,onClick:t,sx:{color:`iochmara.main`,cursor:`pointer`},children:e?`View Only Top-10`:`View More Items`})})}function Yc(e,{viewOptions:t,onViewOptionsChanged:n,isDark:r}){let i=e.result,a=e.params;if(!i)return{isEmpty:!0};let o=i.base,s=i.current,c=t?.show_all??!1,l=!c,u=o.values.length>10||s.values.length>10?W(Jc,{showAll:c,onToggle:()=>{n&&n({...t,show_all:!c})}}):void 0;return{content:G(U,{children:[W(qc,{model:a.model,columnName:a.column_name}),G(J,{direction:`row`,sx:{alignItems:`center`},children:[W(K,{sx:{flex:1}}),W(Ns,{baseData:o,currentData:s,showComparison:!0,maxItems:l?10:void 0,theme:r?`dark`:`light`}),W(K,{sx:{flex:1}})]})]}),footer:u}}const Xc=ec({displayName:`TopKDiffResultView`,typeGuard:Kc,expectedRunType:`top_k_diff`,screenshotWrapper:`box`,emptyState:`No data`,transformData:Yc});function Zc(e){return d(e)}const Qc=ec({displayName:`ValueDiffDetailResultView`,typeGuard:Zc,expectedRunType:`value_diff_detail`,screenshotWrapper:`grid`,emptyState:`No data`,transformData:(e,{viewOptions:t,onViewOptionsChanged:n})=>{let r=t?.changed_only??!1,i=t?.pinned_columns??[],a=t?.display_mode??`inline`,o=t?.columnsRenderMode??{},s=e.params?.primary_key;if(!s||!e.result)return{isEmpty:!0};let c=Array.isArray(s)?s:[s],l=Ee(e.result,c,{changedOnly:r,pinnedColumns:i,onPinnedColumnsChange:e=>{n&&n({...t,pinned_columns:e})},columnsRenderMode:o,onColumnsRenderModeChanged:e=>{let r={...t?.columnsRenderMode??{},...e};n&&n({...t,columnsRenderMode:r})},displayMode:a});if(l.columns.length===0)return{isEmpty:!0};let u=e.result?.limit??0,d=[];u>0&&e.result?.more&&d.push(`Warning: Displayed results are limited to ${u.toLocaleString()} records. To ensure complete data retrieval, consider applying a LIMIT or WHERE clause to constrain the result set.`);let f=G(U,{children:[W(aa,{displayMode:a,onDisplayModeChanged:e=>{n&&n({...t,display_mode:e})}}),W(ra,{changedOnly:t?.changed_only,onChange:()=>{let e=!t?.changed_only;n&&n({...t,changed_only:e})}})]});return r&&l.rows.length===0?{isEmpty:!0,emptyMessage:`No change`,toolbar:f,warnings:d.length>0?d:void 0,warningStyle:`amber`}:{columns:l.columns,rows:l.rows,warnings:d.length>0?d:void 0,warningStyle:`amber`,toolbar:f,defaultColumnOptions:{resizable:!0,maxWidth:800,minWidth:35},noRowsMessage:`No mismatched rows`}}});function $c({params:e,onParamsChanged:t,setIsReadyToExecute:n}){let[r,i]=H(!e.columns||e.columns.length===0),a=e.model,o=e.primary_key,{columns:s,primaryKey:c,isLoading:l,error:u}=vu(e.model);z(()=>{!o&&c&&t({...e,primary_key:c})},[o,c,e,t]),z(()=>{n(!!(o&&a))},[o,a,n]);let d=s.map(e=>e.name),f=Array.isArray(o)?o:o?[o]:void 0;return l?W(K,{children:`Loading...`}):d.length===0||u?W(K,{children:`Error: Please provide the 'catalog.json' to list column candidates`}):G(J,{spacing:5,sx:{m:`8px 24px`,pb:`200px`},children:[G(K,{children:[W(Y,{variant:`body2`,sx:{mb:1},children:`Model`}),W(xn,{fullWidth:!0,size:`small`,value:e.model,slotProps:{input:{readOnly:!0}}})]}),G(K,{children:[W(Y,{variant:`body2`,sx:{mb:1},children:`Primary key`}),W(yr,{multiple:!0,size:`small`,disableCloseOnSelect:!0,options:d,value:(f??[]).filter(e=>e!==void 0),onChange:(n,r)=>{t({...e,primary_key:r.length===1?r[0]:r})},renderInput:e=>W(xn,{...e,placeholder:(f??[]).length===0?`Select primary key`:``,className:`no-track-pii-safe`})})]}),G(K,{children:[W(Y,{variant:`body2`,sx:{mb:1},children:`Columns`}),W(sn,{control:W(on,{checked:r,onChange:n=>{i(n.target.checked),t({...e,columns:void 0})},size:`small`}),label:`All columns`,sx:{mb:`10px`}}),!r&&W(yr,{multiple:!0,size:`small`,disableCloseOnSelect:!0,options:d,value:e.columns??[],onChange:(n,r)=>{t({...e,columns:r.length===0?void 0:r})},renderInput:t=>W(xn,{...t,placeholder:(e.columns??[]).length===0?`Select columns`:``,className:`no-track-pii-safe`})})]})]})}function el(e){return T(e)}function tl({params:e,summary:t}){let n=t.total-t.added-t.removed;return G(K,{sx:{px:`16px`,pt:`5px`,pb:`5px`},children:[`Model: `,e.model,`, `,t.total,` total (`,n,` common,`,` `,t.added,` added, `,t.removed,` removed)`]})}function nl(e){if(!e.result||!e.params)return{renderNull:!0};let t=Sc(e.result,{params:e.params});return t?{columns:t.columns,rows:t.rows,isEmpty:!1,header:W(tl,{params:e.params,summary:e.result.summary})}:{renderNull:!0}}const rl=ec({displayName:`ValueDiffResultView`,typeGuard:el,expectedRunType:`value_diff`,screenshotWrapper:`grid`,transformData:nl}),il={lineage_diff:{title:`Lineage Diff`,icon:mr},schema_diff:{title:`Schema Diff`,icon:fr},query:{title:`Query`,icon:vr,RunResultView:Rc},query_base:{title:`Query Base`,icon:vr,RunResultView:Rc},query_diff:{title:`Query Diff`,icon:vr,RunResultView:Ic},row_count:{title:`Row Count`,icon:dr,RunResultView:Uc},row_count_diff:{title:`Row Count Diff`,icon:dr,RunResultView:Wc},profile:{title:`Profile`,icon:_r,RunResultView:Nc,RunForm:jc},profile_diff:{title:`Profile Diff`,icon:_r,RunResultView:Pc,RunForm:jc},value_diff:{title:`Value Diff`,icon:pr,RunResultView:rl,RunForm:$c},value_diff_detail:{title:`Value Diff Detail`,icon:pr,RunResultView:Qc,RunForm:$c},top_k_diff:{title:`Top-K Diff`,icon:ht,RunResultView:Xc,RunForm:Gc},histogram_diff:{title:`Histogram Diff`,icon:hr,RunResultView:rc,RunForm:da},simple:{title:`Simple`,icon:gr}};function al(e){return il[e]}const ol=il;function sl(e){let t={...il};for(let[n,r]of Object.entries(e))r&&n in t&&(t[n]={...t[n],...r});return t}function cl(e){return t=>e[t]}function ll(e){return{id:e.run_id,name:e.name,type:e.type,status:e.status??`Finished`,runAt:e.run_at,checkId:e.check_id}}function ul(){let{closeHistory:e,showRunId:t,runId:r}=M(),{featureToggles:i}=ie(),{apiClient:a}=ho(),s=ur(),c=rt(),{basePath:l}=ae(),{data:u,isLoading:d}=nt({queryKey:k.runs(),queryFn:async()=>await o(a),retry:!1}),f=B(()=>(u??[]).map(ll),[u]),p=R(e=>{Qe({name:`click_run`}),t(e,!1)},[t]),m=R(async e=>{Qe({name:`add_to_checklist`});let t=await n(e,void 0,a);await c.invalidateQueries({queryKey:k.checks()}),s.push(`${l}/checks/?id=${t.check_id}`)},[a,c,s.push,l]),h=R(e=>{Qe({name:`go_to_check`}),s.push(`${l}/checks/?id=${e}`)},[s.push,l]),g=R(()=>{Qe({name:`hide`}),e()},[e]),_=R(e=>{let t=al(e)?.icon;return t?W(t,{}):null},[]),v=W(X,{"aria-label":`Close History`,onClick:g,children:W(Xt,{})});return W(Zo,{runs:f,selectedId:r,isLoading:d,onRunSelect:p,onAddToChecklist:m,onGoToCheck:h,getRunIcon:_,hideAddToChecklist:i.disableUpdateChecklist&&!i.checklistPermissionDenied,disableAddToChecklist:i.checklistPermissionDenied,title:`History`,headerActions:v,emptyMessage:`No runs`,loadingMessage:`Loading...`,groupByDate:!0,addToChecklistIcon:W(kt,{}),goToCheckIcon:W(Ot,{color:`green`})})}const dl=({size:e=16})=>G(`svg`,{width:e,height:e,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:2,strokeLinecap:`round`,strokeLinejoin:`round`,children:[W(`circle`,{cx:`12`,cy:`12`,r:`10`}),W(`path`,{d:`M12 16v-4`}),W(`path`,{d:`M12 8h.01`})]});function fl({isOpen:e,onClose:t,onExecute:n,type:r,title:i,params:a,RunForm:o,onCancel:s,onExecuteClick:c,documentationUrl:l,InfoIcon:u=dl}){let[d,f]=H(a??{}),[p,m]=H(null),[h,g]=H(!1),_=V(!1),v=()=>{_.current||s?.(),_.current=!1,t()};return G(ut,{open:e,onClose:v,maxWidth:`sm`,fullWidth:!0,scroll:`paper`,slotProps:{paper:{sx:{height:`75%`,minHeight:`400px`}}},children:[G(pt,{sx:{display:`flex`,alignItems:`center`},children:[i,` `,l&&G(U,{children:[W(X,{size:`small`,"aria-label":`Click this button to learn more about the SQL behind`,onMouseEnter:e=>m(e.currentTarget),onMouseLeave:()=>m(null),onClick:()=>window.open(l,`_blank`),children:W(K,{component:u,sx:{fontSize:`16px`}})}),W(Vn,{open:!!p,anchorEl:p,onClose:()=>m(null),anchorOrigin:{vertical:`bottom`,horizontal:`right`},transformOrigin:{vertical:`top`,horizontal:`right`},disableRestoreFocus:!0,sx:{pointerEvents:`none`},slotProps:{paper:{sx:{bgcolor:`black`,color:`white`,p:1}}},children:G(Y,{sx:{fontSize:`0.875rem`},children:[`Click`,` `,W(mt,{href:l,target:`_blank`,sx:{textDecoration:`underline`,color:`white`,"&:hover":{color:`iochmara.300`}},children:`here`}),` `,`to learn more about the SQL behind`]})})]})]}),W(X,{"aria-label":`close`,onClick:v,sx:{position:`absolute`,right:8,top:8,color:`grey.500`},children:W(Tt,{})}),W(ft,{sx:{p:0,overflow:`auto`,borderTop:`1px solid`,borderBottom:`1px solid`,borderColor:`divider`},children:W(K,{sx:{contain:`layout`},children:o&&W(o,{params:d,onParamsChanged:f,setIsReadyToExecute:g})})}),W(dt,{children:W(J,{direction:`row`,spacing:`10px`,children:W(q,{disabled:!h,color:`iochmara`,variant:`contained`,onClick:()=>{_.current=!0,c?.(),n(r,d)},children:`Execute`})})})]})}const pl=e=>({value_diff:`https://docs.reccehq.com/features/lineage/#value-diff`,profile_diff:`https://docs.reccehq.com/features/lineage/#profile-diff`,histogram_diff:`https://docs.reccehq.com/features/lineage/#histogram-diff`,top_k_diff:`https://docs.reccehq.com/features/lineage/#top-k-diff`})[e]||null;function ml({isOpen:e,onClose:t,onExecute:n,type:r,title:i,params:a,initialRun:o,RunForm:s}){return W(fl,{isOpen:e,onClose:t,onExecute:n,type:r,title:i,params:a,initialRun:o,RunForm:s,onCancel:()=>{Ye(r)&&Ze({action:r,event:Je.CANCEL})},onExecuteClick:()=>{Ye(r)&&Ze({action:r,event:Je.EXECUTE})},documentationUrl:pl(r),InfoIcon:Vt})}const hl=ot(function({isRunning:e,runId:t,progress:n,error:r,run:i,onCancel:a,viewOptions:o,onViewOptionsChanged:s,RunResultView:c,children:l,ErrorBoundary:u,errorBoundaryFallback:d},f){let p=F(),m=Io(),h=r?.response?.data?.detail??i?.error,g=i?.run_id??t,_=g!=null&&m.has(g),v=i?.status===`Cancelled`||_;if(h)return G(un,{severity:`error`,sx:p?{bgcolor:`error.dark`,color:`common.white`,"& .MuiAlert-icon":{color:`common.white`}}:void 0,children:[`Error: `,W(`span`,{className:`no-track-pii-safe`,children:h})]});if(v)return W(K,{sx:{display:`flex`,alignItems:`center`,justifyContent:`center`,p:`1rem`,height:`100%`,bgcolor:p?`grey.900`:`grey.50`},children:W(J,{spacing:1,sx:{alignItems:`center`},children:W(Y,{children:`Cancelled`})})});if((e||i?.status===`Running`)&&!_){let e=`Loading...`;n?.message?e=n.message:i?.progress?.message&&(e=i.progress.message);let t=n?.percentage==null?void 0:n.percentage*100;return W(K,{sx:{display:`flex`,alignItems:`center`,justifyContent:`center`,p:`1rem`,height:`100%`,bgcolor:p?`grey.900`:`grey.50`},children:G(J,{spacing:2,sx:{alignItems:`center`},children:[G(J,{direction:`row`,spacing:1,sx:{alignItems:`center`},children:[t==null?W(Dt,{size:32}):G(K,{sx:{position:`relative`,display:`inline-flex`},children:[W(Dt,{variant:`determinate`,value:t,size:32}),W(K,{sx:{top:0,left:0,bottom:0,right:0,position:`absolute`,display:`flex`,alignItems:`center`,justifyContent:`center`},children:W(Y,{variant:`caption`,component:`div`,sx:{fontSize:`0.6rem`},children:`${Math.round(t)}%`})})]}),W(Y,{className:`no-track-pii-safe`,children:e})]}),W(q,{variant:`contained`,onClick:a,size:`small`,children:`Cancel`})]})})}if(!i)return W(K,{sx:{display:`flex`,alignItems:`center`,justifyContent:`center`,bgcolor:p?`grey.900`:`grey.50`,height:`100%`},children:W(Dt,{size:32})});if(l&&c)throw Error(`RunView requires either a children or a RunResultView prop, but not both.`);if(!l&&!c)throw Error(`RunView requires at least one of children or RunResultView prop.`);return W(K,{sx:{height:`100%`,contain:`layout`,overflow:`auto`,bgcolor:p?`grey.900`:`grey.50`},className:`no-track-pii-safe`,children:(()=>{let e=c&&(i.error??i.result)?W(c,{ref:f,run:i,viewOptions:o,onViewOptionsChanged:s}):null,t=l?.({run:i,viewOptions:o,onViewOptionsChanged:s});return u&&e?G(U,{children:[W(u,{fallback:d,children:e}),t]}):G(U,{children:[e,t]})})()})});hl.displayName=`RunView`;const gl=L(({type:e,params:t})=>{let n=F();return W(lo,{value:On.stringify({type:e,params:t},null,2),language:`yaml`,readOnly:!0,lineNumbers:!1,wordWrap:!0,fontSize:14,height:`100%`,theme:n?`dark`:`light`,className:`no-track-pii-safe`})});gl.displayName=`ParamView`;function _l(e,t){return t!=null&&t>0?`${e} (${He(t)})`:e}const vl=L(({open:e,rowCount:t,onContinue:n,onCancel:r})=>G(ut,{open:e,onClose:r,children:[W(pt,{children:`Large Export Warning`}),W(ft,{children:G(br,{children:[`You are about to download `,W(`strong`,{children:He(t)}),`. This may take a while and produce a large file. Are you sure you want to continue?`]})}),G(dt,{children:[W(q,{onClick:r,children:`Cancel`}),W(q,{onClick:n,variant:`contained`,children:`Continue`})]})]}));vl.displayName=`LargeExportWarningDialog`;const yl=L(({disableExport:e,onCopyAsImage:t,onMouseEnter:n,onMouseLeave:r,csvExport:i,label:a=`Export`})=>{let[o,s]=H(null),c=!!o,[l,u]=H(!1),[d,f]=H(null),p=i?.totalRowCount??0,m=p>1e5,h=e=>{s(e.currentTarget)},g=()=>{s(null)},_=e=>{m?(f(()=>e),u(!0)):(e(),g())};return G(U,{children:[W(q,{size:`small`,variant:`outlined`,color:`neutral`,onClick:h,endIcon:W(jt,{}),sx:{textTransform:`none`},children:a}),G(fn,{anchorEl:o,open:c,onClose:g,children:[G(Q,{onClick:async()=>{await t(),g()},onMouseEnter:n,onMouseLeave:r,disabled:e,children:[W(xr,{children:W(Bt,{})}),W(Sr,{children:`Copy as Image`})]}),G(Q,{onClick:async()=>{await i?.copyAsTSV?.(),g()},disabled:e||!i?.canExportCSV,children:[W(xr,{children:W(It,{})}),W(Sr,{children:`Copy as Text`})]}),G(Q,{onClick:async()=>{await i?.copyAsCSV(),g()},disabled:e||!i?.canExportCSV,children:[W(xr,{children:W(qt,{})}),W(Sr,{children:`Copy as CSV`})]}),i?.copySelectedRows&&G(Q,{onClick:async()=>{await i.copySelectedRows?.(),g()},disabled:e,children:[W(xr,{children:W(Kt,{})}),W(Sr,{children:`Copy Selected Rows`})]}),G(Q,{onClick:()=>_(()=>i?.downloadAsCSV()),disabled:e||!i?.canExportCSV,children:[W(xr,{children:W(zt,{})}),W(Sr,{children:_l(`Download as CSV`,i?.totalRowCount)})]}),G(Q,{onClick:()=>_(()=>i?.downloadAsTSV?.()),disabled:e||!i?.canExportCSV,children:[W(xr,{children:W(zt,{})}),W(Sr,{children:_l(`Download as TSV`,i?.totalRowCount)})]}),i?.downloadAsExcel&&G(Q,{onClick:()=>_(()=>i?.downloadAsExcel?.()),disabled:e||!i?.canExportCSV,children:[W(xr,{children:W(zt,{})}),W(Sr,{children:_l(`Download as Excel`,i?.totalRowCount)})]})]}),W(vl,{open:l,rowCount:p,onContinue:()=>{u(!1),d?.(),f(null),g()},onCancel:()=>{u(!1),f(null)}})]})});yl.displayName=`DefaultExportMenu`;const bl=L(({runId:e,run:t,disableUpdateChecklist:n,checklistPermissionDenied:r,hasError:i,onGoToCheck:a,onAddToChecklist:o})=>{let s=Io();if(e&&s.has(e))return null;let c=t?.check_id,l=!e||!t?.result||i;return n&&!r?null:c?W(q,{disabled:l,size:`small`,variant:`contained`,onClick:()=>a?.(c),startIcon:W(Nt,{}),sx:{textTransform:`none`},children:`Go to Check`}):W(Z,{title:r?`You don't have permission to add checks`:``,children:W(`span`,{children:W(q,{disabled:l||r,size:`small`,variant:`contained`,onClick:o,startIcon:W(Nt,{}),sx:{textTransform:`none`},children:`Add to Checklist`})})})});bl.displayName=`DefaultAddToCheckButton`;const xl=L(({run:e})=>{let t=Io(),n=e.run_id&&t.has(e.run_id)?`Cancelled`:e.status||(e.result?`Finished`:e.error?`Failed`:`unknown`),r=e=>{switch(e.toLowerCase()){case`finished`:return`success.main`;case`failed`:return`error.main`;case`running`:return`primary.main`;default:return`text.secondary`}},i=e.run_at?Cn(new Date(e.run_at),{addSuffix:!0}):`Unknown time`;return G(Y,{variant:`body2`,sx:{color:`text.secondary`},children:[W(K,{component:`span`,sx:{fontWeight:600,color:r(n)},children:n}),`・`,i]})});xl.displayName=`RunStatusAndDateDisplay`;function Sl({runId:e,run:t,isRunning:n,error:r,viewOptions:i,onViewOptionsChanged:a,isSingleEnvironment:o,disableDatabaseQuery:s,disableShare:c,disableUpdateChecklist:l,checklistPermissionDenied:u,onClose:d,onCancel:f,onRerun:p,onCopyAsImage:m,onCopyMouseEnter:h,onCopyMouseLeave:g,csvExport:_,onTrackCopyToClipboard:v,onGoToCheck:y,onAddToChecklist:b,SingleEnvironmentNotification:x,SqlEditorComponent:S,DualSqlEditorComponent:C,RunResultView:w,resultViewRef:T,children:E}){let D=F(),O=Io(),k=e?O.has(e):!1,[A,ee]=H(`result`),[te,ne]=H(!0),re=t?.type===`query`||t?.type===`query_diff`||t?.type===`query_base`,ie=!e||!t?.result||!!r||A!==`result`||k,ae=R(async()=>{await m?.(),v&&v(t?.type??`unknown`,`run`)},[m,v,t?.type]),oe=t?.type===`query_diff`,se=t?.params;return G(K,{sx:{display:`flex`,flexDirection:`column`,height:`100%`,bgcolor:D?`grey.900`:`grey.50`},children:[o&&te&&x&&W(x,{runType:t?.type,onClose:()=>ne(!1)}),G(K,{sx:{display:`flex`,alignItems:`center`,borderBottom:1,borderColor:`divider`,mb:`1px`},children:[G(Tn,{value:A,onChange:(e,t)=>ee(t),children:[W(wn,{label:`Result`,value:`result`}),W(wn,{label:`Params`,value:`params`}),re&&W(wn,{label:`Query`,value:`query`})]}),W(K,{sx:{flexGrow:1}}),G(J,{direction:`row`,spacing:1,sx:{alignItems:`center`,overflow:`hidden`,pr:1},children:[t&&W(xl,{run:t}),W(q,{variant:`outlined`,color:`neutral`,disabled:!e||n||s,size:`small`,onClick:p,startIcon:W(Gt,{}),sx:{textTransform:`none`},children:`Rerun`}),W(yl,{run:t,disableExport:ie,onCopyAsImage:ae,onMouseEnter:h,onMouseLeave:g,csvExport:_,label:c?`Export`:`Share`}),W(bl,{runId:e,run:t,disableUpdateChecklist:l,checklistPermissionDenied:u,hasError:!!r,onGoToCheck:y,onAddToChecklist:b}),W(X,{size:`small`,onClick:d,children:W(Tt,{})})]})]}),A===`result`&&(w||E)&&W(hl,{ref:T,runId:e,isRunning:n,error:r,run:t,onCancel:f,viewOptions:i,onViewOptionsChanged:a,RunResultView:w,children:E}),A===`params`&&t&&W(gl,{type:t.type,params:t.params}),A===`query`&&t&&re&&se?.sql_template&&W(U,{children:oe&&C?W(C,{value:se.sql_template,baseValue:se.base_sql_template,readOnly:!0}):S?W(S,{value:se.sql_template,readOnly:!0}):W(lo,{value:se.sql_template,language:`sql`,readOnly:!0,theme:`dark`,height:`100%`})})]})}const Cl=L(Sl);Cl.displayName=`RunResultPane`;function wl(e){let t=e.getSelectedNodes();if(t.length===0)return null;let n=e.getAllDisplayedColumns().filter(e=>e.getColId()!==`ag-Grid-SelectionColumn`);return n.length===0?null:be(n.map(e=>{let t=e.getColDef();return String(t.headerName??t.field??e.getColId())}),t.map(t=>n.map(n=>e.getCellValue({rowNode:t,colKey:n,useFormatter:!0})??``)))}const Tl=e=>G(K,{sx:{display:`flex`,flex:1,minHeight:`48px`,m:`4px`,px:`16px`,py:`12px`,bgcolor:`primary.50`,border:`1px solid`,borderRadius:`4px`,borderColor:`primary.400`,alignItems:e.align??`center`,gap:`12px`},children:[W(K,{component:Cr,sx:{width:`20px`,height:`20px`,color:`primary.900`}}),e.children,W(K,{sx:{flexGrow:1}}),W(X,{size:`small`,onClick:e.onClose,children:W(Tt,{})})]}),El=()=>G(mt,{href:`https://docs.reccehq.com/get-started/#prepare-dbt-artifacts`,target:`_blank`,sx:{color:`primary.main`,fontWeight:`bold`,textDecoration:`underline`,display:`inline-flex`,alignItems:`center`,gap:.5},children:[`Learn how `,W(gt,{})]});function Dl({value:e,onChange:t,onRun:n,onRunBase:r,onRunDiff:i,label:a,CustomEditor:o,options:s={},manifestData:c,schemas:l,...u}){let{featureToggles:d}=ie(),f=F(),p=e=>{t&&t(e)},m=``;c&&(m=c.generated_at?Pe(c.generated_at):``);let h=B(()=>{let e=[];return n&&e.push({key:`Mod-Enter`,run:()=>(n(),!0)}),r&&e.push({key:`Alt-Enter`,run:()=>(r(),!0)}),i&&e.push({key:`Mod-Shift-Enter`,run:()=>(i(),!0)}),e},[n,r,i]);return G(U,{children:[(a??n??r)&&G(J,{direction:`row`,sx:{bgcolor:yt(f?P.neutral[600]:P.neutral[200],.7),height:`40px`,minHeight:`40px`,fontSize:`14px`,alignItems:`center`,m:0,p:`0px 16px`,flex:`0 0 40px`},children:[W(Y,{component:`strong`,sx:{fontWeight:`bold`},className:`no-track-pii-safe`,children:a?a.toUpperCase():``}),c&&G(`span`,{className:`ml-1`,children:[`(`,l&&G(`span`,{className:`no-track-pii-safe`,children:[l,`, `]}),W(`span`,{children:m}),`)`]}),W(K,{sx:{flexGrow:1}}),(n??r)&&W(q,{size:`xsmall`,variant:`outlined`,onClick:n??r,sx:{bgcolor:`background.paper`,p:`6px 12px`},disabled:d.disableDatabaseQuery,startIcon:W(wr,{}),children:`Run Query`})]}),o??W(lo,{value:e,onChange:p,language:`sql`,readOnly:s.readOnly??!1,lineNumbers:s.lineNumbers!==`off`,wordWrap:s.wordWrap!==`off`,fontSize:s.fontSize??16,keyBindings:h,theme:f?`dark`:`light`,className:`no-track-pii-safe max-h-dvh h-full`})]})}function Ol({value:e,baseValue:t,onChange:n,onChangeBase:r,onRun:i,onRunBase:a,onRunDiff:o,options:s={},labels:c,SetupGuide:l,...u}){let d=c?c[0]:`Base`,f=c?c[1]:`Current`,{envInfo:p,lineageGraph:m}=fe(),h,g;p?.dbt?.base&&p.dbt.current&&(h=p.dbt.base,g=p.dbt.current);let[_,v]=Ve(m);return W(U,{children:G(J,{direction:`row`,sx:{height:`100%`,gap:0},children:[W(J,{sx:{height:`100%`,width:`50%`,gap:0,borderRight:`1px solid`,borderRightColor:`divider`},children:W(Dl,{label:d,value:t??``,onChange:r,onRunBase:a,options:s,CustomEditor:l,manifestData:h??void 0,schemas:Array.from(_).join(`, `),...u})}),W(J,{sx:{height:`100%`,width:`50%`,gap:0},children:W(Dl,{label:f,value:e,onChange:n,onRun:i,options:s,manifestData:g??void 0,schemas:Array.from(v).join(`, `),...u})})]})})}const kl=({runType:e,onClose:t})=>{switch(e){case`row_count`:return W(Tl,{onClose:t,children:G(Y,{children:[`Enable row count diffing, and other Recce features, by configuring a base dbt environment to compare against. `,W(El,{})]})});case`profile`:return W(Tl,{onClose:t,children:G(Y,{children:[`Enable data-profile diffing, and other Recce features, by configuring a base dbt environment to compare against.`,` `,W(El,{})]})});default:return null}},Al=({value:e,readOnly:t})=>W(Dl,{value:e,options:{readOnly:t}}),jl=({value:e,baseValue:t,readOnly:n})=>W(Ol,{value:e,baseValue:t,options:{readOnly:n}}),Ml=({runId:e,onClose:t,isSingleEnvironment:r})=>{let{featureToggles:i}=ie(),{runAction:a}=M(),{error:o,run:s,onCancel:c,isRunning:l}=yu(e),[u,d]=H(),f=rt(),p=ur(),{apiClient:m}=ho(),{basePath:h}=ae(),g;s&&D(s.type)&&(g=al(s.type).RunResultView);let{ref:_,onCopyToClipboard:v,onMouseEnter:y,onMouseLeave:b}=cu(),x=pu({run:s,runId:e,viewOptions:u}),S=!!s?.type&&[`query`,`query_base`,`query_diff`].includes(s.type),C=R(async()=>{let e=_.current?.api;if(!e)return;let t=wl(e);if(!t){I.create({title:`No rows selected`,description:`Select rows with the checkboxes, then copy.`,type:`info`,duration:3e3});return}try{await ve(t),I.create({title:`Copied to clipboard`,description:`Selected rows copied — paste into any spreadsheet`,type:`success`,duration:2e3}),Xe({type:s?.type??`unknown`,from:`run-selection`})}catch(e){console.error(`Failed to copy selected rows:`,e),I.create({title:`Copy failed`,description:`Failed to copy to clipboard`,type:`error`,duration:3e3})}},[_,s?.type]),w=R(()=>{s&&a(s.type,s.params)},[s,a]),T=R(async()=>{await v(),Xe({type:s?.type??`unknown`,from:`run`})},[v,s?.type]),E=R(e=>{p.push(`${h}/checks/?id=${e}`)},[p.push,h]),O=R(async()=>{if(e)try{let t=await n(e,u,m);await f.invalidateQueries({queryKey:k.checks()}),p.push(`${h}/checks/?id=${t.check_id}`)}catch(e){ne(e)&&e.status===403?I.error({title:`Permission denied`,description:`You don't have permission to add checks. Contact your org admin for access.`}):I.error({title:`Failed to create check`,description:e instanceof Error?e.message:`An unexpected error occurred`})}},[e,u,m,f,p.push,h]);return W(Cl,{runId:e,run:s,isRunning:l,error:o,viewOptions:u,onViewOptionsChanged:d,isSingleEnvironment:r,disableDatabaseQuery:i.disableDatabaseQuery,disableShare:i.disableShare,disableUpdateChecklist:i.disableUpdateChecklist,checklistPermissionDenied:i.checklistPermissionDenied,onClose:t,onCancel:c,onRerun:w,onCopyAsImage:T,onCopyMouseEnter:y,onCopyMouseLeave:b,csvExport:{...x,copySelectedRows:S?C:void 0},onGoToCheck:E,onAddToChecklist:O,SingleEnvironmentNotification:kl,SqlEditorComponent:Al,DualSqlEditorComponent:jl,RunResultView:g,resultViewRef:_})},Nl=({onClose:e,isSingleEnvironment:t})=>{let{runId:n}=M();return W(Ml,{runId:n,onClose:e,isSingleEnvironment:t})};function Pl({error:e,resetError:t}){let{background:n,text:r}=bu();return W(K,{sx:{height:`100%`,bgcolor:n.subtle,display:`flex`,alignItems:`center`,justifyContent:`center`},children:G(K,{sx:{p:4,display:`flex`,flexDirection:`column`,justifyContent:`flex-start`,bgcolor:`background.paper`,border:`solid 1px`,borderColor:`divider`,minHeight:`200px`},children:[W(Y,{variant:`h6`,sx:{width:`800px`},children:`You have encountered an error`}),W(K,{sx:{flex:1,fontSize:`10pt`,color:r.secondary},children:String(e)}),W(q,{sx:{justifySelf:`center`,alignSelf:`center`,mt:`20px`},color:`iochmara`,variant:`contained`,size:`small`,onClick:t,children:`Reset`})]})})}const Fl=e=>W(Pl,{error:e.error,resetError:e.resetError}),Il=({children:e,fallback:t=Fl})=>W(Tr,{fallback:t,children:e}),Ll=ot(function(e,t){return W(hl,{...e,ErrorBoundary:Il,errorBoundaryFallback:et,ref:t})});Ll.displayName=`RunViewOss`;const Rl={mode:`per_node`,status:`pending`,completed:0,total:0,actions:{}},zl=(e,t)=>{let{onActionStarted:n,onActionNodeUpdated:r,onActionCompleted:i,onTrackAction:a,trackingSource:o=`lineage_view_top_bar`}=t,s=A(),c=V({...Rl}).current,u=Io(),{showRunId:d}=M(),f=async(t,a,o)=>{c.mode=`multi_nodes`,c.actions={};let l=c.mode,u=c.actions;n(),c.status=`running`;let f=[];for(let t of e){let e=a(t);e?(u[t.id]={mode:l,status:`skipped`,skipReason:e},r(t)):(u[t.id]={mode:l,status:`pending`},f.push(t))}let p=o(f);try{let{run_id:e}=await m(t,p,{nowait:!0},s);for(d(e),c.currentRun={run_id:e},c.total=1;;){let t=await x(e,2,s);c.currentRun=t;let n=t.error?`failure`:t.result?`success`:`running`;for(let e of f)u[e.id]={mode:l,status:n,run:t},r(e);if(t.error||t.result)break}}catch{}if(c.completed=1,c.status===`canceling`){c.status=`canceled`,i();return}c.status=`completed`,i()},p=async(t,a)=>{c.mode=`per_node`,c.actions={};let o=c.mode,l=c.actions;n(),c.status=`running`;for(let t of e)l[t.id]={mode:o,status:`pending`},r(t);c.completed=0,c.total=e.length;for(let n of e){let{params:e,skipReason:u}=a(n);if(u)l[n.id]={mode:o,status:`skipped`,skipReason:u},r(n);else try{let{run_id:i}=await m(t,e,{nowait:!0},s);for(c.currentRun={run_id:i},l[n.id]={mode:o,status:`running`},r(n);;){let e=await x(i,2,s);c.currentRun=e;let t=e.error?`failure`:e.result?`success`:`running`;if(l[n.id]={mode:o,status:t,run:e},r(n),e.error||e.result)break}}catch{}finally{c.currentRun=void 0}if(c.completed++,c.status===`canceling`){c.status=`canceled`,i();return}}c.status=`completed`,i()};return{actionState:c,runRowCount:async()=>{a?.({action:`row_count`,source:o,node_count:e.length});for(let t of e)t.data.resourceType!==`model`&&(c.actions[t.id]={mode:`multi_nodes`,status:`skipped`,skipReason:`Not a model`},r(t));await f(`row_count`,e=>{if(e.data.resourceType!==`model`)return`Not a model`},e=>({node_names:e.map(e=>e.data.name)}))},runRowCountDiff:async()=>{a?.({action:`row_count_diff`,source:o,node_count:e.length});for(let t of e)t.data.resourceType!==`model`&&(c.actions[t.id]={mode:`multi_nodes`,status:`skipped`,skipReason:`Not a model`},r(t));await f(`row_count_diff`,e=>{if(e.data.resourceType!==`model`)return`Not a model`},e=>({node_names:e.map(e=>e.data.name)}))},runValueDiff:async()=>{a?.({action:`value_diff`,source:o,node_count:e.length}),await p(`value_diff`,e=>({skipReason:`No primary key found. The first unique column is used as primary key.`}))},addLineageDiffCheck:async()=>await E({node_ids:e.map(e=>e.id)},s),addSchemaDiffCheck:async()=>{let t;return t=e.length===1?await _({node_id:e[0].id},s):await _({node_id:e.map(e=>e.id)},s),t},cancel:()=>{c.status=`canceling`;let e=c.currentRun?.run_id;return e&&(u.add(e),l(e,s)),Promise.resolve()},reset:()=>{Object.assign(c,Rl)}}};function Bl({connect:e,idleSeconds:t}){return G(U,{children:[W(pt,{children:`Server Disconnected`}),W(ft,{children:t!=null&&t>0?G(Y,{children:[`The server has been idle for `,Be(t),` and was automatically stopped. Please restart the Recce server to continue.`]}):W(Y,{children:`The server connection has been lost. Please restart the Recce server and try again.`})}),W(dt,{children:W(q,{color:`iochmara`,variant:`contained`,onClick:()=>{e()},children:`Retry`})})]})}function Vl({shareUrl:e,mode:t,supportCalendarUrl:n,LinkComponent:r}){let i={"read only":{title:`Share Instance Expired`,body:`This Share Instance has expired. Please restart the share instance.`,action:`Restart`,link:e},"metadata only":{title:`Preview Instance Expired`,body:`This Preview Instance has expired. To browse more, please book a meeting with us.`,action:`Contact us`,link:n}}[t],a=W(q,{color:`iochmara`,variant:`contained`,children:i.action});return G(U,{children:[W(pt,{children:i.title}),W(ft,{children:W(Y,{children:i.body})}),W(dt,{children:t===`read only`?W(r||`a`,{href:i.link,children:a}):W(q,{color:`iochmara`,variant:`contained`,onClick:()=>window.open(i.link,`_blank`),children:i.action})})]})}function Hl(e){let{apiClient:n}=ho();return nt({queryKey:k.lineage(),queryFn:()=>t(n),...e})}function Ul({enabled:e=!0,baseUrl:t,apiPrefix:n}={}){let[r,i]=H(void 0),a=V({ws:void 0,status:`pending`,artifactsUpdatedToastId:void 0}),[o,s]=H(e?`pending`:`connected`),[c,l]=H(void 0);z(()=>{a.current.status=o},[o]),z(()=>{a.current.artifactsUpdatedToastId=r},[r]);let u=rt(),d=R(()=>{u.invalidateQueries({queryKey:k.lineage()}),u.invalidateQueries({queryKey:k.checks()}),u.invalidateQueries({queryKey:k.runs()})},[u]),f=R(()=>{function e(e){return e.replace(/(http)(s)?:\/\//,`ws$2://`)}let r=t??Ke,o=n?`${n}/ws`:`/api/ws`,c=new WebSocket(`${e(r)}${o}`);a.current.ws=c,c.onopen=()=>{c.send(`ping`)},c.onmessage=e=>{if(e.data===`pong`){a.current.status===`disconnected`&&d(),s(`connected`);return}try{let t=JSON.parse(e.data);if(`type`in t&&t.type===`metadata_updated`){d();return}let n=t;if(n.command===`refresh`){let{eventType:e,srcPath:t}=n.event,[r,o]=t.split(`/`).slice(-2),s=o.replace(/\.[^/.]+$/,``),c=`${r}-${s}-${e}`;a.current.artifactsUpdatedToastId??i(I.create({id:c,description:`Detected ${r} ${s} ${e}`,type:`info`,duration:5e3,closable:!0})),d()}else if(n.command===`relaunch`)l(`relaunch`);else{let{id:e,title:t,description:r,status:a,duration:o}=n.event;i(I.create({id:e||`broadcast`,title:t,description:r,type:a??`info`,duration:o??5e3,closable:!0}))}}catch(e){console.error(e)}},c.onerror=e=>{console.error(`An error occurred during Handling WebSockets`,e)},c.onclose=()=>{s(e=>e===`connected`?`disconnected`:e),a.current.ws=void 0}},[d,t,n]);return z(()=>{if(!e)return;let t=a.current;return f(),()=>{t.ws&&t.ws.close()}},[f,e]),{connectionStatus:o,connect:f,envStatus:c}}function Wl({children:e}){let{idleTimeout:t,remainingSeconds:n,isEnabled:r,setDisconnected:i,resetConnection:a}=oe(),{apiClient:o,apiPrefix:s,baseUrl:c}=ho(),l=Hl(),d=nt({queryKey:k.runsAggregated(),queryFn:()=>u(o)}),f=B(()=>{let e=l.data?.lineage;if(e?.nodes)return ue(e)},[l.data]),p=l.error?.message,{state_metadata:m,lineage:h,sqlmesh:g,demo:_,codespace:v,review_mode:y,cloud_mode:b,file_mode:x,filename:S,adapter_type:C,git:w,pull_request:T,support_tasks:E}=l.data??{demo:!1},D={stateMetadata:m,adapterType:C,git:w,pullRequest:T,dbt:{base:h?.metadata?.base?.manifest_metadata,current:h?.metadata?.current?.manifest_metadata},sqlmesh:g},{connectionStatus:O,connect:A,envStatus:te}=Ul({enabled:!0,baseUrl:c,apiPrefix:s});z(()=>{O===`disconnected`?i():O===`connected`&&a()},[O,i,a]);let{data:ne,isLoading:re}=j(),{featureToggles:ae,shareUrl:se}=ie(),[ce,le]=H(!1),[M,fe]=H(!1),pe=rt(),N=!re&&te===`relaunch`&&ne?.single_env_onboarding===!0&&ne.show_relaunch_hint;N!==M&&(fe(N),le(N)),z(()=>{N&&ce&&$e({action:`target_base_added`})},[N,ce]);let me=()=>{le(!1),ee(o),pe.invalidateQueries({queryKey:k.flag()})},he=R(()=>{d.refetch()},[d]),ge=R(()=>{d.refetch()},[d]);return G(U,{children:[W(de,{lineageGraph:f,envInfo:D,reviewMode:y,cloudMode:b,fileMode:x,fileName:S,isDemoSite:_??!1,isCodespace:v,isLoading:l.isLoading,error:p,supportTasks:E,onRefetchLineageGraph:he,runsAggregated:d.data,onRefetchRunsAggregated:ge,children:e}),W(ut,{open:O===`disconnected`,onClose:()=>void 0,children:se&&ae.mode!==null?W(Vl,{shareUrl:se,mode:ae.mode,supportCalendarUrl:qe,LinkComponent:({href:e,children:t})=>W(wt,{href:e,passHref:!0,children:t})}):W(Bl,{connect:A,idleSeconds:r&&t!==null&&n!==null&&n<=5?t-Math.max(0,n):void 0})}),ne?.single_env_onboarding&&G(ut,{open:ce,onClose:me,children:[W(pt,{children:`Target-base Added`}),W(X,{"aria-label":`close`,onClick:me,sx:{position:`absolute`,right:8,top:8,color:`grey.500`},children:W(Tt,{})}),W(ft,{children:W(Y,{children:`Please restart the Recce server.`})}),W(dt,{children:W(q,{color:`iochmara`,variant:`contained`,onClick:me,children:`Got it!`})})]})]})}const Gl=`select * from {{ ref("mymodel") }}`;function Kl({children:e}){let[t,n]=H(Gl),[r,i]=H(Gl),[a,o]=H(!1),[s,c]=H();return W(Mr,{sql:t,sqlQuery:t,setSqlQuery:n,primaryKeys:s,setPrimaryKeys:c,isCustomQueries:a,setCustomQueries:o,baseSqlQuery:r,setBaseSqlQuery:i,children:e})}const ql=e=>{},Jl=e=>{},Yl=e=>{},Xl=e=>{};function Zl(){let e=Nr();return{sqlQuery:e.sqlQuery??`select * from {{ ref("mymodel") }}`,setSqlQuery:e.setSqlQuery??ql,primaryKeys:e.primaryKeys,setPrimaryKeys:e.setPrimaryKeys??Jl,isCustomQueries:e.isCustomQueries??!1,setCustomQueries:e.setCustomQueries??Yl,baseSqlQuery:e.baseSqlQuery??`select * from {{ ref("mymodel") }}`,setBaseSqlQuery:e.setBaseSqlQuery??Xl}}function Ql(e){z(()=>{e()},[e,lr()])}function $l({children:t}){let{apiClient:n}=ho(),[r,i]=H(),[a,o]=H(!1),s=R(()=>o(!0),[]),c=R(()=>o(!1),[]),l=ur(),u=lr(),d=rt(),{basePath:f}=ae(),p=V(null);Ql(c);let h=R(async(e,t)=>{t!==!1&&await d.invalidateQueries({queryKey:k.runs()})},[d]),g=R(async(t,r,a)=>{try{let o=new Date().getTime().toString(),c,h=a;if(h?.showLast){let i=await e(t,r,1,n);i.length===1&&(c=i[0])}let g=al(t);if(!g)throw Error(`Run type ${t} does not have a result view`);let _=g.RunResultView,{title:v,RunForm:y}=g;if(_===void 0)throw Error(`Run type ${t} does not have a result view`);if(y===void 0||!a?.showForm){let{run_id:e}=await m(t,r,{nowait:!0,trackProps:h?.trackProps},n);await d.invalidateQueries({queryKey:k.runs()}),p.current&&p.current(e);let i=`${f}/lineage`;u.startsWith(`${i}/`)&&u!==i&&l.push(i);return}i({session:o,title:v,type:t,params:r,lastRun:c,options:h,RunForm:y}),s();return}catch(e){I.create({title:`Failed to submit a run`,description:e instanceof Error?e.message:void 0,type:`error`,duration:5e3,closable:!0});return}},[s,d,n,u,l,f]),_=R(async(e,t)=>{try{c();let{run_id:i}=await m(e,t,{nowait:!0,trackProps:r?.options?.trackProps},n);p.current&&p.current(i)}catch(e){I.create({title:`Failed to submit a run`,description:e instanceof Error?e.message:void 0,type:`error`,duration:5e3,closable:!0})}},[c,r?.options?.trackProps,n]);return G(re,{onRunAction:g,onShowRunId:h,children:[W(eu,{showRunIdRef:p,children:t}),r&&W(ml,{isOpen:a,onClose:c,onExecute:_,title:r.title,type:r.type,params:r.params,initialRun:r.lastRun,RunForm:r.options?.showForm&&r.RunForm?r.RunForm:void 0},r.session)]})}function eu({children:e,showRunIdRef:t}){let{showRunId:n}=M();return z(()=>(t.current=n,()=>{t.current=null}),[n,t]),W(U,{children:e})}const tu=at(void 0);function nu({children:e}){let[t,n]=H(),[r,i]=H(!1),[a,o]=H(),{apiClient:s}=ho();return W(tu.Provider,{value:{shareUrl:t,isLoading:r,error:a,handleShareClick:async()=>{i(!0),o(void 0),n(void 0);try{let e=await h(s);if(e.status!==`success`){o(e.message);return}n(e.share_url)}catch(e){o(e.message)}finally{i(!1)}}},children:e})}const ru=()=>{let e=st(tu);if(!e)throw Error(`useRecceShareStateContext must be used within a RecceShareStateContextProvider`);return e};function iu({children:e}){return W(se,{children:W(nu,{children:W(Kl,{children:W(Wl,{children:W($l,{children:W(Pr,{children:e})})})})})})}const au=e=>`element`in e?e.element:e,ou=`ignore-screenshot`;function su({imageType:e=`png`,backgroundColor:t=null,boardEffect:n=!0,shadowEffect:r=!1,borderStyle:i=`solid 1px ${P.neutral[300]}`,borderRadius:a=`10px`,onSuccess:o,onError:s,ignoreElements:c}){let[l,u]=H(`idle`),d=V(null),{onOpen:f,setImgBlob:p,ImageDownloadModal:m}=lu(),h=async()=>{if(!d.current)throw console.error(`No node to use for screenshot`),Error(`No node to use for screenshot`);let e=au(d.current);if(!e)throw console.error(`Could not get HTMLElement from ref`),Error(`Could not get HTMLElement from ref`);let o=e.style.overflow,s=e.style.border,l=e.style.borderRadius,f=e.style.backgroundColor,p=e.style.height;function m(){let t=e;t&&(t.style.overflow=o,t.style.border=s,t.style.borderRadius=l,t.style.backgroundColor=f,t.style.height=p)}let h=document.createElement(`style`);document.head.appendChild(h),h.sheet?.insertRule(`body > div:last-child img { display: inline-block; }`);try{e.style.overflow=`hidden`,e.style.border=n?i:``,e.style.borderRadius=n?a:``,e.style.backgroundColor=t??P.neutral[100],e.style.height=`${String(e.offsetHeight)}px`;let o=c?e=>!c(e):void 0;u(`loading`);let s=await Er.toCanvas(e,{filter:o,filterMode:`remove`,backgroundColor:t??P.neutral[100]}),l=r?document.createElement(`canvas`):s;if(r){l.width=s.width+80,l.height=s.height+80;let e=l.getContext(`2d`);if(e)e.shadowColor=`rgba(0, 0, 0, 0.5)`,e.shadowBlur=20,e.shadowOffsetX=10,e.shadowOffsetY=10,e.drawImage(s,40,40);else throw console.error(`Error getting canvas context`),Error(`Error getting canvas context to add shadow effect`)}return await(await fetch(l.toDataURL())).blob()}catch(e){throw console.error(`Error converting to image`,e),e}finally{h.remove(),m()}};return{status:l,isLoading:l===`loading`,isErrored:l===`error`,isSuccess:l===`success`,copyToClipboard:async()=>{try{await navigator.clipboard.write([new ClipboardItem({[`image/${e}`]:h()})]),u(`success`),o&&o()}catch(e){e.message===`ClipboardItem is not defined`?(p(await h()),f(),u(`success`)):(u(`error`),console.error(`Error copying to clipboard`,e),s&&s(e))}},ImageDownloadModal:m,ref:d}}function cu(e){let{successToast:t,failToast:n}=Me(),{isLoading:r,copyToClipboard:i,ImageDownloadModal:a,ref:o}=su({imageType:`png`,shadowEffect:!0,backgroundColor:e?.backgroundColor??P.neutral[100],onSuccess:()=>{t(`Copied the query result as an image to clipboard`)},onError:e=>{console.error(`Error taking screenshot`,e),n(`Failed to copy image to clipboard`,e)}}),s=R(()=>{if(o.current){let e=au(o.current);e&&(e.style.boxShadow=`rgba(0, 0, 0, 0.25) 0px 54px 55px, rgba(0, 0, 0, 0.12) 0px -12px 30px, rgba(0, 0, 0, 0.12) 0px 4px 6px, rgba(0, 0, 0, 0.17) 0px 12px 13px, rgba(0, 0, 0, 0.09) 0px -3px 5px`,e.style.transition=`box-shadow 0.5s ease-in-out`)}},[o]),c=R(()=>{if(o.current){let e=au(o.current);e&&(e.style.boxShadow=``)}},[o]),l=R(async()=>{if(o.current){await i();let e=au(o.current);e&&(e.style.boxShadow=``)}else n(`Failed to copy image to clipboard`,`No content to copy`)},[o,i,n]);function u({imageType:e=`png`,...t}){return G(U,{children:[W(q,{size:`small`,sx:{position:`absolute`,bottom:16,right:16},disabled:r,onMouseEnter:s,onMouseLeave:c,onClick:l,startIcon:W(Lt,{}),...t,children:`Copy to Clipboard`}),W(a,{})]})}return{ref:o,CopyToClipboardButton:u,onMouseEnter:s,onMouseLeave:c,onCopyToClipboard:l}}function lu(){let[e,t]=H(!1),[n,r]=H(),i=()=>t(!0),a=()=>t(!1);function o(){let[t,r]=H();return z(()=>{if(!n)return;let e=new FileReader;e.readAsDataURL(n),e.onloadend=e=>{e.target?.result!=null&&r(e.target.result)}},[]),G(ut,{open:e,onClose:a,maxWidth:`sm`,fullWidth:!0,children:[W(pt,{children:`Screenshot Preview`}),W(X,{"aria-label":`close`,onClick:a,sx:{position:`absolute`,right:8,top:8,color:`grey.500`},children:W(Tt,{})}),G(ft,{children:[G(J,{sx:{px:`10px`,gap:`10px`},children:[G(J,{direction:`row`,spacing:`5px`,sx:{alignItems:`center`},children:[W(K,{component:Vt,sx:{color:`error.main`}}),W(Y,{sx:{fontWeight:500,display:`inline`},children:`Copy to the Clipboard`}),` `,`is not supported in the current browser`]}),W(Y,{children:`Please download it directly`})]}),W(K,{component:`img`,src:t,alt:`screenshot`,sx:{maxWidth:`100%`}})]}),G(dt,{children:[W(q,{sx:{mr:1.5},onClick:a,children:`Close`}),W(q,{color:`iochmara`,variant:`contained`,onClick:()=>{n&&(an(n,`recce-screenshot-${Sn(new Date,`yyyy-MM-dd-HH-mm-ss`)}.png`),a())},children:`Download`})]})]})}return{onOpen:i,setImgBlob:r,ImageDownloadModal:o}}function uu(e,t={}){let{enabled:n=!0}=t,o=rt(),{apiClient:s}=ho(),{data:l,isLoading:u,error:d,refetch:f}=nt({queryKey:k.checkEvents(e),queryFn:()=>c(e,s),enabled:n,refetchInterval:1e4,refetchIntervalInBackground:!1}),p=tt({mutationFn:t=>i(e,t,s),onSuccess:async()=>{await o.invalidateQueries({queryKey:k.checkEvents(e)})}}),m=tt({mutationFn:({eventId:t,content:n})=>r(e,t,n,s),onSuccess:async()=>{await o.invalidateQueries({queryKey:k.checkEvents(e)})}}),h=tt({mutationFn:t=>a(e,t,s),onSuccess:async()=>{await o.invalidateQueries({queryKey:k.checkEvents(e)})}});return{events:l??[],isLoading:u,error:d,refetch:f,createComment:p.mutate,isCreatingComment:p.isPending,createCommentError:p.error,updateComment:m.mutateAsync,isUpdatingComment:m.isPending,updateCommentError:m.error,deleteComment:h.mutateAsync,isDeletingComment:h.isPending,deleteCommentError:h.error}}const du={TOAST_ID:`lifetime-countdown`,WARNING_THRESHOLD:60,UPDATE_INTERVAL:1e3,MESSAGE:e=>`The server will be closed in ${e} seconds.`,STYLE:{fontFamily:`monospace`}};function fu(e){let t=I,[n,r]=H(null),i=V(void 0),a=R(()=>{if(!e)return 0;let t=new Date,n=Math.floor((e.getTime()-t.getTime())/1e3);return Math.max(0,n)},[e]),o=R(()=>{n!=null&&(t.remove(n),r(null))},[n]),s=R(()=>{if(n==null)return;let e=a();if(e<=0){o();return}t.update(n,{description:du.MESSAGE(e)})},[n,a,o]),c=R(()=>{if(!e)return;o();let n=a();n<=0||(r(t.create({id:du.TOAST_ID,description:du.MESSAGE(n)})),i.current=setInterval(s,du.UPDATE_INTERVAL))},[e,a,s,o]),l=a();ln(c,e?Math.max(0,l-du.WARNING_THRESHOLD)*1e3:null),z(()=>o,[o])}function pu({run:e,runId:t,viewOptions:n}){let r=B(()=>!e?.type||!e?.result?!1:we(e.type),[e?.type,e?.result]),i=B(()=>{if(!e?.result)return null;let t=e.result;if(`total_row_count`in t&&typeof t.total_row_count==`number`)return t.total_row_count;let n=t.base,r=t.current,i=typeof n?.total_row_count==`number`?n.total_row_count:null,a=typeof r?.total_row_count==`number`?r.total_row_count:null;return i!==null&&a!==null?Math.max(i,a):i??a},[e?.result]),a=R(()=>{if(!e?.type||!e?.result)return null;let t={displayMode:n?.display_mode,primaryKeys:e?.params?.primary_keys};return ye(e.type,e.result,t)},[e?.type,e?.result,e?.params,n]),o=R(()=>{let e=a();return e?Oe(e.columns,e.rows):null},[a]),s=R(()=>{let e=a();return e?be(e.columns,e.rows):null},[a]),c=R(e=>{if(!t)return;let n=document.createElement(`a`);n.href=`/api/runs/${t}/export?format=${e}`,document.body.appendChild(n),n.click(),document.body.removeChild(n)},[t]),l=R(async()=>{let e=o();if(!e){I.create({title:`Export failed`,description:`Unable to extract data for CSV export`,type:`error`,duration:3e3});return}try{await ve(e),I.create({title:`Copied to clipboard`,description:`CSV data copied successfully`,type:`success`,duration:2e3})}catch(e){console.error(`Failed to copy CSV to clipboard:`,e),I.create({title:`Copy failed`,description:`Failed to copy to clipboard`,type:`error`,duration:3e3})}},[o]),u=B(()=>e?.type===`query_diff`&&!!e?.params?.primary_keys,[e?.type,e?.params]),d=R(()=>{if(t&&!u&&[`query`,`query_base`,`query_diff`].includes(e?.type??``)){c(`csv`);return}let n=o();if(!n){I.create({title:`Export failed`,description:`Unable to extract data for CSV export`,type:`error`,duration:3e3});return}try{let t=De(e?.type??``,e?.params);Ie(n,t),I.create({title:`Downloaded`,description:t,type:`success`,duration:3e3})}catch(e){console.error(`Failed to download CSV file:`,e),I.create({title:`Download failed`,description:`Failed to download CSV file`,type:`error`,duration:3e3})}},[t,e,u,o,c]),f=R(async()=>{let e=s();if(!e){I.create({title:`Export failed`,description:`Unable to extract data for export`,type:`error`,duration:3e3});return}try{await ve(e),I.create({title:`Copied to clipboard`,description:`Text data copied — paste into any spreadsheet`,type:`success`,duration:2e3})}catch(e){console.error(`Failed to copy TSV to clipboard:`,e),I.create({title:`Copy failed`,description:`Failed to copy to clipboard`,type:`error`,duration:3e3})}},[s]),p=R(()=>{if(t&&!u&&[`query`,`query_base`,`query_diff`].includes(e?.type??``)){c(`tsv`);return}let n=s();if(!n){I.create({title:`Export failed`,description:`Unable to extract data for export`,type:`error`,duration:3e3});return}try{let t=De(e?.type??``,e?.params).replace(/\.csv$/,`.tsv`);Ce(n,t),I.create({title:`Downloaded`,description:t,type:`success`,duration:3e3})}catch(e){console.error(`Failed to download TSV file:`,e),I.create({title:`Download failed`,description:`Failed to download TSV file`,type:`error`,duration:3e3})}},[t,e,u,s,c]);return{canExportCSV:r,totalRowCount:i,copyAsCSV:l,copyAsTSV:f,downloadAsCSV:d,downloadAsExcel:R(async()=>{if(t&&!u&&[`query`,`query_base`,`query_diff`].includes(e?.type??``)){c(`xlsx`);return}let n=a();if(!n){I.create({title:`Export failed`,description:`Unable to extract data for export`,type:`error`,duration:3e3});return}try{let t=await Le(n.columns,n.rows),r=De(e?.type??``,e?.params).replace(/\.csv$/,`.xlsx`);Se(t,r),I.create({title:`Downloaded`,description:r,type:`success`,duration:3e3})}catch(e){console.error(`Failed to download Excel file:`,e),I.create({title:`Download failed`,description:`Failed to download Excel file`,type:`error`,duration:3e3})}},[t,e,u,a,c]),downloadAsTSV:p}}function mu({description:e,onLike:t,onDislike:n,onClickLink:r,externalLink:i,externalLinkText:a}){return G(K,{sx:{display:`flex`,gap:4,justifyContent:`center`,alignContent:`center`,alignItems:`center`},children:[e,W(X,{"aria-label":`thumbs up`,onClick:t,sx:{width:`32px`,height:`32px`},children:W(K,{component:`img`,src:`/imgs/feedback/thumbs-up.png`,alt:`like`})}),W(X,{"aria-label":`thumbs down`,onClick:n,sx:{width:`32px`,height:`32px`},children:W(K,{component:`img`,src:`/imgs/feedback/thumbs-down.png`,alt:`dislike`})}),i&&a&&G(mt,{href:i,target:`_blank`,onClick:r,sx:{textDecoration:`underline`},children:[a,` `,W(gt,{})]})]})}function hu(e){let{feedbackId:t,description:n,onFeedbackSubmit:r,externalLink:i,externalLinkText:a}=e,[o,s]=H(void 0);function c(e=!1){let c=localStorage.getItem(t);o??(c===`true`&&!e||s(I.create({id:t,duration:void 0,type:`success`,description:W(J,{direction:`row`,children:W(mu,{description:n,onLike:()=>{r(`like`),I.dismiss(t),localStorage.setItem(t,`true`)},onDislike:()=>{r(`dislike`),I.dismiss(t),localStorage.setItem(t,`true`)},externalLink:i,externalLinkText:a,onClickLink:()=>{r(`link`)}})})})))}return{feedbackToast:c,closeToast:()=>{o&&I.dismiss(o)}}}function gu(e){let[t,n]=H(void 0),{guideId:r,description:i,externalLinkText:a,onExternalLinkClick:o}=e;function s(){t??n(I.create({id:r,duration:3e3,type:`success`,description:i,action:{label:a??`link`,onClick:()=>{o&&o()}}}))}return{guideToast:s,closeGuideToast:()=>{t&&I.dismiss(t)}}}function _u(e,t){let n=[];return e.forEach(e=>{n.some(t=>t.name===e.name)||n.push(e)}),t.forEach(e=>{n.some(t=>t.name===e.name)||n.push(e)}),n}function vu(e,t){let{lineageGraph:n}=fe(),r=O(),i=t??r?.apiClient,a=pn.find(n?.nodes,{data:{name:e}}),o=!!i&&!!a?.id,{data:c,isLoading:l,error:u}=nt({queryKey:[`modelDetail`,a?.id],queryFn:()=>{if(!a?.id||!i)throw Error(`useModelColumns: missing node id or api client`);return s(a.id,i)},enabled:o,staleTime:300*1e3}),{columns:d,primaryKey:f}=B(()=>{let e=c?.model;return!e?.base.columns||!e.current.columns?{columns:[],primaryKey:e?.current.primary_key}:{columns:_u(Object.values(e.base.columns),Object.values(e.current.columns)),primaryKey:e.current.primary_key}},[c]);return{columns:d,primaryKey:f,isLoading:o?l:!1,error:u?u instanceof Error?u:Error(String(u)):null}}const yu=e=>{let{apiClient:t}=ho(),n=rt(),r=Io(),[i,a]=H(!!e),[,o]=ce(),s=V(null);z(()=>{e&&(a(!0),s.current=null)},[e]);let c=e?r.has(e):!1,u=i&&!c,{error:d,data:f}=nt({queryKey:k.run(e??``),queryFn:async()=>await x(e??``,u?2:0,t),enabled:!!e&&!c,refetchInterval:u?50:!1,retry:!1});z(()=>{if(!f)return;let e=f.status?.toLowerCase();d||f.result||f.error||e&&e!==`running`?s.current!==f.run_id&&(s.current=f.run_id,a(!1)):e===`running`&&!c&&(s.current=null,a(!0))},[f,d,c]),z(()=>{(d||f?.result||f?.error)&&(f?.type===`row_count_diff`||f?.type===`row_count`)&&o?.()},[f,d,o]);let p=r.add,m=R(()=>e?(n.setQueryData(k.run(e),e=>e&&{...e,status:`Cancelled`}),p(e),a(!1),s.current=e,l(e,t),Promise.resolve()):Promise.resolve(),[e,t,n,p]),h;return f&&D(f.type)&&(h=al(f.type).RunResultView),{run:f,isRunning:i,error:d,onCancel:m,RunResultView:h}};function bu(){let e=bt(),t=xe(),n=F(),[r,i]=H(!1);z(()=>{i(!0)},[]);let a=r?t?t.resolvedMode===`dark`:n:!1;return{isDark:a,theme:e,background:{default:a?P.neutral[900]:P.white,paper:a?P.neutral[800]:P.white,subtle:a?P.neutral[800]:P.neutral[50],emphasized:a?P.neutral[700]:P.neutral[100]},text:{primary:a?P.neutral[50]:P.neutral[900],secondary:a?P.neutral[400]:P.neutral[600],disabled:a?P.neutral[500]:P.neutral[400],inverted:a?P.neutral[900]:P.neutral[50]},border:{light:a?P.neutral[700]:P.neutral[200],default:a?P.neutral[600]:P.neutral[300],strong:a?P.neutral[500]:P.neutral[400]},status:{added:{bg:a?P.green[900]:P.green[100],text:a?P.neutral[50]:P.neutral[900]},removed:{bg:a?P.red[950]:P.red[200],text:a?P.neutral[50]:P.neutral[900]},modified:{bg:a?P.yellow[900]:P.amber[100],text:a?P.neutral[50]:P.neutral[900]}},interactive:{hover:a?P.neutral[700]:P.neutral[100],active:a?P.neutral[600]:P.neutral[200],focus:P.iochmara[500]}}}export{Ac as $,Ha as $t,Tl as A,si as An,Wo as At,il as B,Nr as Bn,go as Bt,zl as C,$ as Cn,rs as Ct,Ol as D,Ei as Dn,Jo as Dt,Nl as E,Bi as En,Zo as Et,ul as F,ti as Fn,Oo as Ft,Gc as G,so as Gt,$c as H,Ar as Hn,po as Ht,cl as I,Rr as In,jo as It,Rc as J,to as Jt,Wc as K,ao as Kt,sl as L,Pr as Ln,Ao as Lt,hl as M,oi as Mn,Ho as Mt,ml as N,ii as Nn,Lo as Nt,Dl as O,ki as On,Ko as Ot,fl as P,ri as Pn,ko as Pt,jc as Q,Ga as Qt,ol as R,Ir as Rn,Do as Rt,Hl as S,Mi as Sn,os as St,Il as T,zi as Tn,ts as Tt,Qc as U,Dr as Un,uo as Ut,rl as V,kr as Vn,ho as Vt,Xc as W,lo as Wt,Pc as X,$a as Xt,Ic as Y,Za as Yt,Nc as Z,qa as Zt,$l as _,ea as _n,ws as _t,gu as a,Sa as an,tc as at,Zl as b,ui as bn,_s as bt,fu as c,da as cn,Xs as ct,su as d,aa as dn,Gs as dt,La as en,cc as et,cu as f,ia as fn,Vs as ft,ru as g,Ji as gn,Ns as gt,nu as h,qi as hn,Ls as ht,vu as i,Da as in,rc as it,Cl as j,ai as jn,Vo as jt,El as k,Oi as kn,Bo as kt,uu as l,ua as ln,Js as lt,iu as m,na as mn,zs as mt,yu as n,Ia as nn,uc as nt,hu as o,xa as on,ec as ot,lu as p,ra as pn,Bs as pt,Uc as q,ro as qt,_u as r,ja as rn,ic as rt,pu as s,ya as sn,Ys as st,bu as t,Ra as tn,lc as tt,ou as u,oa as un,Ks as ut,Kl as v,ci as vn,Es as vt,Ll as w,Ri as wn,$o as wt,Wl as x,li as xn,ps as xt,Gl as y,di as yn,Cs as yt,al as z,Mr as zn,vo as zt};
|
|
7
|
+
//# sourceMappingURL=hooks-D15-EL7C.js.map
|