sqlmesh 0.217.1.dev1__py3-none-any.whl → 0.217.1.dev2__py3-none-any.whl

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.
Files changed (52) hide show
  1. sqlmesh/_version.py +2 -2
  2. {sqlmesh-0.217.1.dev1.dist-info → sqlmesh-0.217.1.dev2.dist-info}/METADATA +1 -1
  3. {sqlmesh-0.217.1.dev1.dist-info → sqlmesh-0.217.1.dev2.dist-info}/RECORD +50 -50
  4. web/client/dist/assets/{Audits-Ucsx1GzF.js → Audits-DmOtttlW.js} +1 -1
  5. web/client/dist/assets/{Banner-BWDzvavM.js → Banner-By2d9L64.js} +1 -1
  6. web/client/dist/assets/{ChevronDownIcon-D2VL13Ah.js → ChevronDownIcon-PISYWM2q.js} +1 -1
  7. web/client/dist/assets/{ChevronRightIcon-DWGYbf1l.js → ChevronRightIcon-zw3AzLpa.js} +1 -1
  8. web/client/dist/assets/{Content-Bikfy8fh.js → Content-8-7CK8lG.js} +1 -1
  9. web/client/dist/assets/{Content-DdHDZM3I.js → Content-CICRYUIV.js} +1 -1
  10. web/client/dist/assets/{Data-CzAJH7rW.js → Data-Bj1rO0oZ.js} +1 -1
  11. web/client/dist/assets/{DataCatalog-BJF11g8f.js → DataCatalog-BLsX4xAj.js} +1 -1
  12. web/client/dist/assets/{Editor-s0SBpV2y.js → Editor-36yOekac.js} +1 -1
  13. web/client/dist/assets/{Editor-DgLhgKnm.js → Editor-BtcZYFND.js} +1 -1
  14. web/client/dist/assets/{Errors-D0m0O1d3.js → Errors-DNqkDwah.js} +1 -1
  15. web/client/dist/assets/{FileExplorer-CEv0vXkt.js → FileExplorer-DHUeTEqB.js} +1 -1
  16. web/client/dist/assets/{Footer-BwzXn8Ew.js → Footer-DuDuvUFF.js} +1 -1
  17. web/client/dist/assets/{Header-6heDkEqG.js → Header-BpAW5_0X.js} +1 -1
  18. web/client/dist/assets/{Input-obuJsD6k.js → Input-B14KW2DA.js} +1 -1
  19. web/client/dist/assets/Lineage-CTLkabZt.js +1 -0
  20. web/client/dist/assets/{ListboxShow-HM9_qyrt.js → ListboxShow-C_Z7iHEF.js} +1 -1
  21. web/client/dist/assets/{ModelLineage-zWdKo0U2.js → ModelLineage-CyUV8mZ4.js} +1 -1
  22. web/client/dist/assets/{Models-Bcu66SRz.js → Models-OJLL2BGy.js} +1 -1
  23. web/client/dist/assets/{Page-BWEEQfIt.js → Page-BRM3FnUP.js} +1 -1
  24. web/client/dist/assets/{Plan-C4gXCqlf.js → Plan-C24S4Bhh.js} +1 -1
  25. web/client/dist/assets/{PlusCircleIcon-CVDO651q.js → PlusCircleIcon-D8IdkjNm.js} +1 -1
  26. web/client/dist/assets/{ReportErrors-BT6xFwAr.js → ReportErrors-m6yqqGsF.js} +1 -1
  27. web/client/dist/assets/{Root-ryJoBK4h.js → Root-9hMRk1I5.js} +1 -1
  28. web/client/dist/assets/{SearchList-DB04sPb9.js → SearchList-CZrmIhuX.js} +1 -1
  29. web/client/dist/assets/{SelectEnvironment-CUYcXUu6.js → SelectEnvironment-CJlMraV-.js} +1 -1
  30. web/client/dist/assets/{SourceList-Doo_9ZGp.js → SourceList-CHIXruA_.js} +1 -1
  31. web/client/dist/assets/{SourceListItem-D5Mj7Dly.js → SourceListItem-DokQ26y9.js} +1 -1
  32. web/client/dist/assets/{SplitPane-qHmkD1qy.js → SplitPane-DtlAHoz7.js} +1 -1
  33. web/client/dist/assets/{Tests-DH1Z74ML.js → Tests-sJImniqv.js} +1 -1
  34. web/client/dist/assets/{Welcome-DqUJUNMF.js → Welcome-Ces3XOIT.js} +1 -1
  35. web/client/dist/assets/{context-Dr54UHLi.js → context-A_iW5s73.js} +1 -1
  36. web/client/dist/assets/context-DxIabjls.js +71 -0
  37. web/client/dist/assets/{editor-DYIP1yQ4.js → editor-CejWga3_.js} +1 -1
  38. web/client/dist/assets/{file-DarlIDVi.js → file-DdlT51iE.js} +1 -1
  39. web/client/dist/assets/{floating-ui.react-dom-BH3TFvkM.js → floating-ui.react-dom-BKIKvzfh.js} +1 -1
  40. web/client/dist/assets/{help-Bl8wqaQc.js → help-CUs5FfFy.js} +1 -1
  41. web/client/dist/assets/{index-O3mjYpnE.js → index-BOhxhXrZ.js} +1 -1
  42. web/client/dist/assets/{index-D1sR7wpN.js → index-BqrQPWC7.js} +1 -1
  43. web/client/dist/assets/{plan-CehRrJUG.js → plan-BjijW8dQ.js} +1 -1
  44. web/client/dist/assets/{popover-CqgMRE0G.js → popover-DAZBBM1F.js} +1 -1
  45. web/client/dist/assets/{project-6gxepOhm.js → project-KrfbRrSM.js} +1 -1
  46. web/client/dist/index.html +1 -1
  47. web/client/dist/assets/Lineage-D0Hgdz2v.js +0 -1
  48. web/client/dist/assets/context-DgX0fp2E.js +0 -68
  49. {sqlmesh-0.217.1.dev1.dist-info → sqlmesh-0.217.1.dev2.dist-info}/WHEEL +0 -0
  50. {sqlmesh-0.217.1.dev1.dist-info → sqlmesh-0.217.1.dev2.dist-info}/entry_points.txt +0 -0
  51. {sqlmesh-0.217.1.dev1.dist-info → sqlmesh-0.217.1.dev2.dist-info}/licenses/LICENSE +0 -0
  52. {sqlmesh-0.217.1.dev1.dist-info → sqlmesh-0.217.1.dev2.dist-info}/top_level.txt +0 -0
@@ -1 +1 @@
1
- import{r as u,R as oe,g as Le,j as t,i as k,c as b,v as H,f as mt,b as M,a as D,l as T,I as me,B as $,m as R,P as Ie,a4 as Ue,a5 as xt,a6 as ht,H as ce,S as Pe,af as Ke,ag as pt,d as et,s as gt,e as bt,q as vt,F as B,D as jt,a7 as wt,_ as Nt,ah as yt}from"./index-O3mjYpnE.js";import{u as le,M as Tt}from"./project-6gxepOhm.js";import{S as Ve}from"./SplitPane-qHmkD1qy.js";import{E as te,M as Et}from"./file-DarlIDVi.js";import{u as N}from"./editor-DYIP1yQ4.js";import{I as y}from"./Input-obuJsD6k.js";import{F as Pt,L as St}from"./ListboxShow-HM9_qyrt.js";import{B as Ye}from"./Banner-BWDzvavM.js";import{m as Ct,h as tt,s as kt,K as xe,ak as we,y as he,o as se,n as Te,a4 as ue,L as pe,$ as st,_ as lt,d as fe,r as Ne,a0 as Dt,a as q,g as re,T as U,q as It,W as Ft,X as Mt,Y as Rt,R as Ze}from"./popover-CqgMRE0G.js";import{g as $e,G as Lt,F as _t,T as At}from"./help-Bl8wqaQc.js";import{M as $t,u as nt,a as _e,b as zt,c as Ot,C as Qt}from"./context-DgX0fp2E.js";import{V as Fe,F as Bt,a as Wt}from"./PlusCircleIcon-CVDO651q.js";import{D as Ht}from"./ReportErrors-BT6xFwAr.js";import"./floating-ui.react-dom-BH3TFvkM.js";import"./index-D1sR7wpN.js";import"./_commonjs-dynamic-modules-TDtrdbi3.js";import"./help-B59vE3aE.js";import"./SourceList-Doo_9ZGp.js";function Gt({onFocus:e}){let[s,l]=u.useState(!0),n=Ct();return s?oe.createElement(tt,{as:"button",type:"button",features:kt.Focusable,onFocus:i=>{i.preventDefault();let r,a=50;function d(){if(a--<=0){r&&cancelAnimationFrame(r);return}if(e()){if(cancelAnimationFrame(r),!n.current)return;l(!1);return}r=requestAnimationFrame(d)}r=requestAnimationFrame(d)}}):null}const rt=u.createContext(null);function qt(){return{groups:new Map,get(e,s){var l;let n=this.groups.get(e);n||(n=new Map,this.groups.set(e,n));let i=(l=n.get(s))!=null?l:0;n.set(s,i+1);let r=Array.from(n.keys()).indexOf(s);function a(){let d=n.get(s);d>1?n.set(s,d-1):n.delete(s)}return[r,a]}}}function Ut({children:e}){let s=u.useRef(qt());return u.createElement(rt.Provider,{value:s},e)}function at(e){let s=u.useContext(rt);if(!s)throw new Error("You must wrap your component in a <StableCollection>");let l=u.useId(),[n,i]=s.current.get(e,l);return u.useEffect(()=>i,[]),n}var Vt=(e=>(e[e.Forwards=0]="Forwards",e[e.Backwards=1]="Backwards",e))(Vt||{}),Yt=(e=>(e[e.Less=-1]="Less",e[e.Equal=0]="Equal",e[e.Greater=1]="Greater",e))(Yt||{}),Zt=(e=>(e[e.SetSelectedIndex=0]="SetSelectedIndex",e[e.RegisterTab=1]="RegisterTab",e[e.UnregisterTab=2]="UnregisterTab",e[e.RegisterPanel=3]="RegisterPanel",e[e.UnregisterPanel=4]="UnregisterPanel",e))(Zt||{});let Xt={0(e,s){var l;let n=ue(e.tabs,f=>f.current),i=ue(e.panels,f=>f.current),r=n.filter(f=>{var g;return!((g=f.current)!=null&&g.hasAttribute("disabled"))}),a={...e,tabs:n,panels:i};if(s.index<0||s.index>n.length-1){let f=fe(Math.sign(s.index-e.selectedIndex),{[-1]:()=>1,0:()=>fe(Math.sign(s.index),{[-1]:()=>0,0:()=>0,1:()=>1}),1:()=>0});if(r.length===0)return a;let g=fe(f,{0:()=>n.indexOf(r[0]),1:()=>n.indexOf(r[r.length-1])});return{...a,selectedIndex:g===-1?e.selectedIndex:g}}let d=n.slice(0,s.index),p=[...n.slice(s.index),...d].find(f=>r.includes(f));if(!p)return a;let o=(l=n.indexOf(p))!=null?l:e.selectedIndex;return o===-1&&(o=e.selectedIndex),{...a,selectedIndex:o}},1(e,s){if(e.tabs.includes(s.tab))return e;let l=e.tabs[e.selectedIndex],n=ue([...e.tabs,s.tab],r=>r.current),i=e.selectedIndex;return e.info.current.isControlled||(i=n.indexOf(l),i===-1&&(i=e.selectedIndex)),{...e,tabs:n,selectedIndex:i}},2(e,s){return{...e,tabs:e.tabs.filter(l=>l!==s.tab)}},3(e,s){return e.panels.includes(s.panel)?e:{...e,panels:ue([...e.panels,s.panel],l=>l.current)}},4(e,s){return{...e,panels:e.panels.filter(l=>l!==s.panel)}}},ze=u.createContext(null);ze.displayName="TabsDataContext";function ie(e){let s=u.useContext(ze);if(s===null){let l=new Error(`<${e} /> is missing a parent <Tab.Group /> component.`);throw Error.captureStackTrace&&Error.captureStackTrace(l,ie),l}return s}let Oe=u.createContext(null);Oe.displayName="TabsActionsContext";function Qe(e){let s=u.useContext(Oe);if(s===null){let l=new Error(`<${e} /> is missing a parent <Tab.Group /> component.`);throw Error.captureStackTrace&&Error.captureStackTrace(l,Qe),l}return s}function Jt(e,s){return fe(s.type,Xt,e,s)}let Kt="div";function es(e,s){let{defaultIndex:l=0,vertical:n=!1,manual:i=!1,onChange:r,selectedIndex:a=null,...d}=e;const p=n?"vertical":"horizontal",o=i?"manual":"auto";let f=a!==null,g=we({isControlled:f}),E=he(s),[m,v]=u.useReducer(Jt,{info:g,selectedIndex:a??l,tabs:[],panels:[]}),I=u.useMemo(()=>({selectedIndex:m.selectedIndex}),[m.selectedIndex]),j=we(r||(()=>{})),c=we(m.tabs),w=u.useMemo(()=>({orientation:p,activation:o,...m}),[p,o,m]),h=se(P=>(v({type:1,tab:P}),()=>v({type:2,tab:P}))),C=se(P=>(v({type:3,panel:P}),()=>v({type:4,panel:P}))),L=se(P=>{_.current!==P&&j.current(P),f||v({type:0,index:P})}),_=we(f?e.selectedIndex:m.selectedIndex),z=u.useMemo(()=>({registerTab:h,registerPanel:C,change:L}),[]);Te(()=>{v({type:0,index:a??l})},[a]),Te(()=>{if(_.current===void 0||m.tabs.length<=0)return;let P=ue(m.tabs,G=>G.current);P.some((G,Y)=>m.tabs[Y]!==G)&&L(P.indexOf(m.tabs[_.current]))});let ne={ref:E},J=pe();return oe.createElement(Ut,null,oe.createElement(Oe.Provider,{value:z},oe.createElement(ze.Provider,{value:w},w.tabs.length<=0&&oe.createElement(Gt,{onFocus:()=>{var P,G;for(let Y of c.current)if(((P=Y.current)==null?void 0:P.tabIndex)===0)return(G=Y.current)==null||G.focus(),!0;return!1}}),J({ourProps:ne,theirProps:d,slot:I,defaultTag:Kt,name:"Tabs"}))))}let ts="div";function ss(e,s){let{orientation:l,selectedIndex:n}=ie("Tab.List"),i=he(s),r=u.useMemo(()=>({selectedIndex:n}),[n]),a=e,d={ref:i,role:"tablist","aria-orientation":l};return pe()({ourProps:d,theirProps:a,slot:r,defaultTag:ts,name:"Tabs.List"})}let ls="button";function ns(e,s){var l,n;let i=u.useId(),{id:r=`headlessui-tabs-tab-${i}`,disabled:a=!1,autoFocus:d=!1,...p}=e,{orientation:o,activation:f,selectedIndex:g,tabs:E,panels:m}=ie("Tab"),v=Qe("Tab"),I=ie("Tab"),[j,c]=u.useState(null),w=u.useRef(null),h=he(w,s,c);Te(()=>v.registerTab(w),[v,w]);let C=at("tabs"),L=E.indexOf(w);L===-1&&(L=C);let _=L===g,z=se(S=>{var Z;let je=S();if(je===Ne.Success&&f==="auto"){let ut=(Z=Dt(w))==null?void 0:Z.activeElement,qe=I.tabs.findIndex(ft=>ft.current===ut);qe!==-1&&v.change(qe)}return je}),ne=se(S=>{let Z=E.map(je=>je.current).filter(Boolean);if(S.key===q.Space||S.key===q.Enter){S.preventDefault(),S.stopPropagation(),v.change(L);return}switch(S.key){case q.Home:case q.PageUp:return S.preventDefault(),S.stopPropagation(),z(()=>re(Z,U.First));case q.End:case q.PageDown:return S.preventDefault(),S.stopPropagation(),z(()=>re(Z,U.Last))}if(z(()=>fe(o,{vertical(){return S.key===q.ArrowUp?re(Z,U.Previous|U.WrapAround):S.key===q.ArrowDown?re(Z,U.Next|U.WrapAround):Ne.Error},horizontal(){return S.key===q.ArrowLeft?re(Z,U.Previous|U.WrapAround):S.key===q.ArrowRight?re(Z,U.Next|U.WrapAround):Ne.Error}}))===Ne.Success)return S.preventDefault()}),J=u.useRef(!1),P=se(()=>{var S;J.current||(J.current=!0,(S=w.current)==null||S.focus({preventScroll:!0}),v.change(L),It(()=>{J.current=!1}))}),G=se(S=>{S.preventDefault()}),{isFocusVisible:Y,focusProps:ke}=st({autoFocus:d}),{isHovered:de,hoverProps:ve}=Ft({isDisabled:a}),{pressed:x,pressProps:F}=Mt({disabled:a}),O=u.useMemo(()=>({selected:_,hover:de,active:x,focus:Y,autofocus:d,disabled:a}),[_,de,Y,x,d,a]),De=lt({ref:h,onKeyDown:ne,onMouseDown:G,onClick:P,id:r,role:"tab",type:Rt(e,j),"aria-controls":(n=(l=m[L])==null?void 0:l.current)==null?void 0:n.id,"aria-selected":_,tabIndex:_?0:-1,disabled:a||void 0,autoFocus:d},ke,ve,F);return pe()({ourProps:De,theirProps:p,slot:O,defaultTag:ls,name:"Tabs.Tab"})}let rs="div";function as(e,s){let{selectedIndex:l}=ie("Tab.Panels"),n=he(s),i=u.useMemo(()=>({selectedIndex:l}),[l]),r=e,a={ref:n};return pe()({ourProps:a,theirProps:r,slot:i,defaultTag:rs,name:"Tabs.Panels"})}let os="div",is=Ze.RenderStrategy|Ze.Static;function cs(e,s){var l,n,i,r;let a=u.useId(),{id:d=`headlessui-tabs-panel-${a}`,tabIndex:p=0,...o}=e,{selectedIndex:f,tabs:g,panels:E}=ie("Tab.Panel"),m=Qe("Tab.Panel"),v=u.useRef(null),I=he(v,s);Te(()=>m.registerPanel(v),[m,v]);let j=at("panels"),c=E.indexOf(v);c===-1&&(c=j);let w=c===f,{isFocusVisible:h,focusProps:C}=st(),L=u.useMemo(()=>({selected:w,focus:h}),[w,h]),_=lt({ref:I,id:d,role:"tabpanel","aria-labelledby":(n=(l=g[c])==null?void 0:l.current)==null?void 0:n.id,tabIndex:w?p:-1},C),z=pe();return!w&&((i=o.unmount)==null||i)&&!((r=o.static)!=null&&r)?oe.createElement(tt,{"aria-hidden":"true",..._}):z({ourProps:_,theirProps:o,slot:L,defaultTag:os,features:is,visible:w,name:"Tabs.Panel"})}let ds=xe(ns),ot=xe(es),us=xe(ss),it=xe(as),ae=xe(cs),W=Object.assign(ds,{Group:ot,List:us,Panels:it,Panel:ae});function fs({title:e,titleId:s,...l},n){return u.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon",ref:n,"aria-labelledby":s},l),e?u.createElement("title",{id:s},e):null,u.createElement("path",{fillRule:"evenodd",d:"M3 6.75A.75.75 0 0 1 3.75 6h16.5a.75.75 0 0 1 0 1.5H3.75A.75.75 0 0 1 3 6.75ZM3 12a.75.75 0 0 1 .75-.75h16.5a.75.75 0 0 1 0 1.5H3.75A.75.75 0 0 1 3 12Zm0 5.25a.75.75 0 0 1 .75-.75h16.5a.75.75 0 0 1 0 1.5H3.75a.75.75 0 0 1-.75-.75Z",clipRule:"evenodd"}))}const ct=u.forwardRef(fs);function ms({title:e,titleId:s,...l},n){return u.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon",ref:n,"aria-labelledby":s},l),e?u.createElement("title",{id:s},e):null,u.createElement("path",{fillRule:"evenodd",d:"M12 3.75a.75.75 0 0 1 .75.75v6.75h6.75a.75.75 0 0 1 0 1.5h-6.75v6.75a.75.75 0 0 1-1.5 0v-6.75H4.5a.75.75 0 0 1 0-1.5h6.75V4.5a.75.75 0 0 1 .75-.75Z",clipRule:"evenodd"}))}const xs=u.forwardRef(ms);function hs({title:e,titleId:s,...l},n){return u.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon",ref:n,"aria-labelledby":s},l),e?u.createElement("title",{id:s},e):null,u.createElement("path",{d:"M15 3.75H9v16.5h6V3.75ZM16.5 20.25h3.375c1.035 0 1.875-.84 1.875-1.875V5.625c0-1.036-.84-1.875-1.875-1.875H16.5v16.5ZM4.125 3.75H7.5v16.5H4.125a1.875 1.875 0 0 1-1.875-1.875V5.625c0-1.036.84-1.875 1.875-1.875Z"}))}const ps=u.forwardRef(hs);function gs(e){switch(e){case te.SQL:return"SQL";case te.PY:return"Python";case te.YAML:case te.YML:return"YAML";default:return"Plain Text"}}function bs(e,s){return e.file.extension===te.SQL&&e.file.isLocal&&Le(s)}const A=function({text:s,children:l,className:n}){return t.jsxs("small",{className:b("font-bold whitespace-nowrap text-xs",n),children:[k(s)&&t.jsxs("span",{children:[s,": "]}),l]})};function vs({text:e,className:s}){return t.jsx("span",{className:b("font-normal",s),children:e})}function js({ok:e,className:s}){return t.jsx("span",{className:b("inline-block w-2 h-2 rounded-full",H(e)&&"bg-warning-500",mt(e)&&"bg-success-500",M(e)&&"bg-danger-500",s)})}A.Text=vs;A.Light=js;const Q={Model:"model",Test:"test",Macro:"macro",Hook:"hook",Log:"log",Config:"config",Seed:"seed",Metric:"metric",Schema:"schema",Unknown:"unknown"};function ws({tab:e}){const s=D(a=>a.isModel),l=N(a=>a.engine),n=N(a=>a.dialects),i=N(a=>a.refreshTab);u.useEffect(()=>{var d;const a=(d=n[0])==null?void 0:d.dialect_name;H(e.dialect)&&k(a)&&r(a)},[n,e]);function r(a){e.dialect=a,i(e),l.postMessage({topic:"dialect",payload:e.dialect})}return t.jsxs("div",{className:"flex w-full items-center px-2 min-h-[2rem] overflow-hidden",children:[e.file.isRemote&&t.jsx(A,{className:"mr-2",text:"Saved",children:t.jsx(A.Light,{ok:M(e.file.isChanged)})}),e.file.isRemote&&e.file.isSQL&&t.jsx(A,{className:"mr-2",text:"Formatted",children:t.jsx(A.Light,{ok:e.file.isFormatted})}),t.jsx(A,{className:"mr-2",text:"Language",children:t.jsx(A.Text,{text:gs(e.file.extension)})}),bs(e,n)&&t.jsx(A,{className:"mr-2",text:"Dialect",children:t.jsx(y,{size:T.sm,children:({className:a,size:d})=>t.jsx(y.Selector,{className:a,size:d,list:n.map(p=>({text:p.dialect_title,value:me(p.dialect_name)?"sqlglot":p.dialect_name})),onChange:r,value:e.dialect})})}),s(e.file.path)&&!me(e.dialect)&&t.jsx(A,{className:"mr-2",text:"Dialect",children:t.jsx(A.Text,{text:e.dialect})}),t.jsx(A,{className:"mr-2",text:"SQLMesh Type",children:t.jsx(A.Text,{text:Ns(e.file.path)})})]})}function Ns(e){return me(e)?Q.Unknown:e.startsWith("models")?Q.Model:e.startsWith("tests")?Q.Test:e.startsWith("logs")?Q.Log:e.startsWith("macros")?Q.Macro:e.startsWith("hooks")?Q.Hook:e.startsWith("seeds")?Q.Seed:e.startsWith("metrics")?Q.Metric:["config.yaml","config.yml","config.py"].includes(e)?Q.Config:["external_models.yaml","schema.yaml"].includes(e)?Q.Schema:Q.Unknown}function Xe({tab:e,title:s}){const l=u.useRef(null),n=D(g=>g.addConfirmation),i=le(g=>g.setSelectedFile),r=N(g=>g.closeTab),a=N(g=>g.tab),d=e.file.id===(a==null?void 0:a.file.id);return u.useEffect(()=>{H(e)||(e.el=l.current??void 0)},[l,e]),u.useEffect(()=>{H(a)||setTimeout(()=>{var g;(g=a.el)==null||g.scrollIntoView({behavior:"smooth",inline:"center"})},300)},[a]),t.jsx("li",{ref:l,className:b("inline-block py-1 pr-2 last-child:pr-0 overflow-hidden text-center overflow-ellipsis cursor-pointer"),onClick:p,children:t.jsxs("span",{className:b("flex border-2 justify-between items-center pl-1 pr-1 py-[0.125rem] min-w-[8rem] rounded-md group border-transparent border-r border-r-theme-darker dark:border-r-theme-lighter",d?"bg-neutral-200 border-neutral-200 text-neutral-900 dark:bg-dark-lighter dark:border-dark-lighter dark:text-primary-500":"bg-trasparent hover:bg-theme-darker dark:hover:bg-theme-lighter"),children:[t.jsx("small",{className:"text-xs",children:s}),t.jsx("small",{className:b("group-hover:hidden text-xs inline-block ml-3 mr-1 w-2 h-2 rounded-full",e.file.isChanged?"bg-warning-500":"bg-transparent")}),t.jsx(Pt,{className:"hidden group-hover:inline-block text-neutral-600 dark:text-neutral-100 w-4 h-4 ml-2 mr-0 cursor-pointer",onClick:o})]})});function p(g){g.stopPropagation(),i(e.file)}function o(g){g.stopPropagation(),f()}function f(){e.file.isChanged?n({headline:"Closing Tab",description:"All unsaved changes will be lost. Do you want to close the tab anyway?",yesText:"Yes, Close Tab",noText:"No, Cancel",action:()=>r(e.file)}):r(e.file)}}function ys(){const e=D(c=>c.modules),s=D(c=>c.models),l=D(c=>c.lastSelectedModel),n=D(c=>c.setLastSelectedModel),i=le(c=>c.files),r=le(c=>c.selectedFile),a=le(c=>c.setSelectedFile),d=N(c=>c.tab),p=N(c=>c.tabs),o=N(c=>c.replaceTab),f=N(c=>c.createTab),g=N(c=>c.selectTab),E=N(c=>c.addTab),[m,v]=u.useMemo(()=>{const c=[],w=[];return p.forEach(h=>{h.file.isLocal&&c.push(h),h.file.isRemote&&w.push(h)}),[c,w]},[p]);return u.useEffect(()=>{if(H(r)||(d==null?void 0:d.file)===r||r instanceof Tt||M(e.hasFiles))return;n(s.get(r.path));const c=f(r);k(d)&&d.file instanceof Et&&M(d.file.isChanged)&&d.file.isRemote&&M(p.has(r))?o(d,c):E(c),g(c)},[r,e]),u.useEffect(()=>{if(H(l))return;const c=i.get(l.path);H(c)||a(c)},[l]),t.jsxs("div",{className:"flex items-center bg-neutral-5",children:[t.jsx($,{className:"h-6 m-0 ml-1 mr-2 border-none",variant:R.Alternative,size:T.sm,onClick:I,children:t.jsx(xs,{className:"inline-block w-3 h-4"})}),t.jsxs("ul",{className:"w-full whitespace-nowrap min-h-[2rem] max-h-[2rem] overflow-hidden overflow-x-auto hover:scrollbar scrollbar--horizontal",children:[m.map((c,w)=>t.jsx(Xe,{tab:c,title:`Custom SQL ${w+1}`},c.id)),v.map(c=>t.jsx(Xe,{tab:c,title:c.file.name},c.id))]})]});function I(c){c.stopPropagation(),j()}function j(){const c=f();E(c),g(c),a(c.file)}}function Be({list:e,children:s=[],className:l,disabled:n=!1}){return t.jsxs(W.List,{className:b("w-full whitespace-nowrap px-2 flex justify-center items-center",n&&"cursor-not-allowed"),children:[t.jsx("div",{className:b("flex w-full overflow-hidden overflow-x-auto py-1 hover:scrollbar scrollbar--horizontal",l,n&&"opacity-50 pointer-events-none"),children:t.jsx("div",{className:"flex p-1 items-center bg-secondary-10 dark:bg-primary-10 cursor-pointer rounded-full overflow-hidden",children:e.map(i=>t.jsx(W,{className:({selected:r})=>b("text-xs px-2 py-0.5 mr-2 last:mr-0 rounded-full relative align-middle",r?"bg-secondary-500 text-secondary-100 cursor-default font-bold":"cursor-pointer font-medium text-secondary-400 dark:text-secondary-400"),children:i},i))})}),s]})}const Je=1440*60*1e3,Ts=1e3,Ee=50;function Es({tab:e,isOpen:s=!0,toggle:l}){const n=D(a=>a.models),i=D(a=>a.isModel),r=u.useMemo(()=>n.get(e.file.path),[e,n]);return t.jsx("div",{className:b("flex flex-col w-full h-full items-center overflow-hidden"),children:i(e.file.path)?k(r)&&t.jsx(Ps,{tab:e,model:r,isOpen:s,toggle:l}):t.jsx(Ss,{tab:e,isOpen:s,toggle:l})})}function Ps({tab:e,model:s,isOpen:l=!0,toggle:n}){const i=D(d=>d.environment),r=D(d=>d.environments),a=Array.from(r).filter(({isRemote:d})=>d).map(({name:d})=>({text:d,value:d}));return t.jsxs(W.Group,{children:[t.jsxs("div",{className:"flex w-full items-center",children:[t.jsx($,{className:b("h-6 w-6 !px-0 border-none bg-neutral-10 dark:bg-neutral-20",l?"text-secondary-500 dark:text-secondary-300":"text-neutral-500 dark:text-neutral-300"),variant:R.Info,size:T.sm,onClick:d=>{d.stopPropagation(),n==null||n()},children:t.jsx(ct,{className:"w-4 h-4"})}),l&&t.jsx(Be,{className:"flex justify-center items-center",list:["Evaluate","Columns",a.length>1&&i.isRemote&&"Diff"].filter(Boolean)})]}),l&&t.jsxs(W.Panels,{className:"h-full w-full overflow-hidden",children:[t.jsx(W.Panel,{unmount:!1,className:b("flex flex-col w-full h-full relative overflow-hidden","ring-white ring-opacity-60 ring-offset-2 ring-offset-blue-400 focus:outline-none focus:ring-2"),children:t.jsx(Ds,{model:s})}),t.jsx(W.Panel,{unmount:!1,className:"text-xs w-full h-full ring-white ring-opacity-60 ring-offset-2 ring-offset-blue-400 focus:outline-none focus:ring-2 px-2",children:t.jsx($t,{nodeId:s.fqn,columns:s.columns,disabled:M(s.isModelSQL),withHandles:!1,withSource:!1,withDescription:!0,limit:10})}),a.length>1&&i.isRemote&&t.jsx(W.Panel,{unmount:!1,className:b("flex flex-col w-full h-full relative overflow-hidden","ring-white ring-opacity-60 ring-offset-2 ring-offset-blue-400 focus:outline-none focus:ring-2"),children:t.jsx(Is,{tab:e,model:s,list:a.filter(({value:d})=>i.name!==d),target:{text:i.name,value:i.name}})})]})]})}function Ss({tab:e,isOpen:s=!0,toggle:l}){return t.jsxs(W.Group,{children:[t.jsxs("div",{className:"flex w-full items-center",children:[t.jsx($,{className:b("h-6 w-6 !px-0 border-none bg-neutral-10 dark:bg-neutral-20",s?"text-secondary-500 dark:text-secondary-300":"text-neutral-500 dark:text-neutral-300"),variant:R.Info,size:T.sm,onClick:n=>{n.stopPropagation(),l==null||l()},children:t.jsx(ct,{className:"w-4 h-4"})}),s&&t.jsx(Be,{className:"flex justify-center items-center",list:["Run Query","Diff"]})]}),s&&t.jsxs(W.Panels,{className:"h-full w-full overflow-hidden",children:[t.jsx(W.Panel,{unmount:!1,className:b("flex flex-col w-full h-full relative overflow-hidden","ring-white ring-opacity-60 ring-offset-2 ring-offset-blue-400 focus:outline-none focus:ring-2"),children:t.jsx(ks,{tab:e})}),t.jsx(W.Panel,{unmount:!1,className:b("flex flex-col w-full h-full relative overflow-hidden","ring-white ring-opacity-60 ring-offset-2 ring-offset-blue-400 focus:outline-none focus:ring-2"),children:t.jsx(Fs,{})})]})]})}function Cs({children:e}){return t.jsx("fieldset",{className:"flex my-3",children:e})}function Se({children:e}){return t.jsx("div",{className:"flex w-full h-full py-1 overflow-hidden overflow-y-auto hover:scrollbar scrollbar--vertical",children:e})}function Ce({children:e}){return t.jsx("div",{className:"flex w-full py-1 px-1 justify-end",children:e})}function ks({tab:e}){const s=N(p=>p.setPreviewQuery),l=N(p=>p.setPreviewTable),n=N(p=>p.engine),{refetch:i,isFetching:r,cancel:a}=pt({sql:e.file.content});u.useEffect(()=>()=>{a()},[]);function d(){l(void 0),s(e.file.content),i().then(({data:p})=>{l($e(p))})}return t.jsxs(t.Fragment,{children:[t.jsx(Se,{}),t.jsx(ce,{}),t.jsxs(Ce,{children:[t.jsx($,{size:T.sm,variant:R.Alternative,onClick:p=>{p.stopPropagation(),n.postMessage({topic:"format",payload:{sql:e.file.content,dialect:e.dialect}})},children:"Format"}),r?t.jsxs("div",{className:"flex items-center",children:[t.jsx(Pe,{className:"w-3"}),t.jsx("small",{className:"text-xs text-neutral-400 block mx-2",children:"Running Query..."}),t.jsx($,{size:T.sm,variant:R.Danger,onClick:p=>{p.stopPropagation(),a()},children:"Cancel"})]}):t.jsx($,{size:T.sm,variant:R.Alternative,disabled:r,onClick:p=>{p.stopPropagation(),d()},children:"Run Query"})]})]})}function Ds({model:e}){const s=D(m=>m.environment),l=D(m=>m.isModel),n=N(m=>m.setPreviewQuery),i=N(m=>m.setPreviewTable),[r,a]=u.useState({model:e.displayName,start:Ie(Ue(Date.now()-Je)),end:Ie(new Date),execution_time:Ie(Ue(Date.now()-Je)),limit:1e3}),{refetch:d}=xt({model:r.model,start:r.start,end:r.end,execution_time:r.execution_time,dialect:e.dialect,pretty:!0}),{refetch:p,isFetching:o,cancel:f}=ht(r),g=l(e.path)&&Object.values(r).every(Boolean);u.useEffect(()=>()=>{f()},[]);function E(){n(void 0),i(void 0),d().then(({data:m})=>{n(m==null?void 0:m.sql)}),p().then(({data:m})=>{i($e(m))})}return t.jsxs(t.Fragment,{children:[t.jsx(Se,{children:t.jsxs("form",{className:"w-full",children:[M(g)&&t.jsx(Cs,{children:t.jsx(Ye,{variant:R.Warning,children:t.jsxs(Ye.Description,{className:"w-full mr-2 text-sm",children:["Please fill out all fields to ",t.jsx("b",{children:"evaluate the model"}),"."]})})}),t.jsxs("fieldset",{className:"px-2 w-full text-neutral-500",children:[t.jsx(y,{className:"w-full mx-0",label:"Start Date",size:T.sm,children:({className:m})=>t.jsx(y.Textfield,{className:b(m,"w-full"),placeholder:"02/11/2023",value:r.start,onInput:v=>{v.stopPropagation(),a({...r,start:v.target.value??""})}})}),t.jsx(y,{className:"w-full mx-0",label:"End Date",size:T.sm,children:({className:m})=>t.jsx(y.Textfield,{className:b(m,"w-full"),placeholder:"02/13/2023",value:r.end,onInput:v=>{v.stopPropagation(),a({...r,end:v.target.value??""})}})}),t.jsx(y,{className:"w-full mx-0",label:"Execution Time",size:T.sm,children:({className:m})=>t.jsx(y.Textfield,{className:b(m,"w-full"),placeholder:"02/13/2023",value:r.execution_time,onInput:v=>{v.stopPropagation(),a({...r,execution_time:v.target.value??""})}})}),k(r.limit)&&t.jsx(y,{className:"w-full mx-0",label:"Limit",size:T.sm,children:({className:m})=>t.jsx(y.Textfield,{className:b(m,"w-full"),type:"number",placeholder:"1000",value:r.limit,onInput:v=>{v.stopPropagation(),a({...r,limit:v.target.valueAsNumber??Ts})}})})]})]})}),t.jsx(ce,{}),t.jsx(Ce,{children:t.jsx("div",{className:"flex w-full justify-end",children:l(e.path)&&o?t.jsxs("div",{className:"flex items-center",children:[t.jsx(Pe,{className:"w-3"}),t.jsx("small",{className:"text-xs text-neutral-400 block mx-2",children:"Evaluating..."}),t.jsx($,{size:T.sm,variant:R.Danger,onClick:m=>{m.stopPropagation(),f()},children:"Cancel"})]}):t.jsx($,{size:T.sm,variant:R.Alternative,disabled:M(g)||o||s.isInitialProd,onClick:m=>{m.stopPropagation(),E()},children:"Evaluate"})})})]})}function Is({tab:e,model:s,list:l,target:n}){const i=D(h=>h.isModel),r=N(h=>h.setPreviewDiff),[a,d]=u.useState(l[0].value),[p,o]=u.useState(Ee),[f,g]=u.useState(""),[E,m]=u.useState(""),{refetch:v,isFetching:I,cancel:j}=Ke({source:a,target:n.value,model_or_snapshot:s.name,limit:p,on:f,where:E}),c=u.useCallback(()=>{r(void 0),v().then(({data:h})=>{r(h)})},[s.name,s.hash]);u.useEffect(()=>()=>{j()},[]),u.useEffect(()=>{d(l[0].value)},[l]);const w=i(e.file.path)&&[a,n,p].every(Boolean);return t.jsxs(t.Fragment,{children:[t.jsx(Se,{children:t.jsx("form",{className:"w-full",children:t.jsxs("fieldset",{className:"px-2 w-full text-neutral-500",children:[t.jsx(y,{className:"w-full mx-0",label:"Source",disabled:l.length<2,size:T.sm,children:({disabled:h,className:C})=>t.jsx(y.Selector,{className:b(C,"w-full"),list:l,value:a,disabled:h,onChange:d})}),t.jsx(y,{className:"w-full mx-0",label:"Target",disabled:!0,children:({disabled:h,className:C})=>t.jsx(y.Textfield,{className:b(C,"w-full"),disabled:h,value:n.value})}),t.jsx(y,{className:"w-full mx-0",label:"Limit",size:T.sm,children:({className:h})=>t.jsx(y.Textfield,{className:b(h,"w-full"),type:"number",placeholder:"1000",value:p,onInput:C=>{C.stopPropagation(),o(C.target.valueAsNumber??Ee)}})}),t.jsx(y,{className:"w-full mx-0",label:"ON",size:T.sm,children:({className:h})=>t.jsx(y.Textfield,{className:b(h,"w-full"),placeholder:"s.id = t.id",value:f,onInput:C=>{C.stopPropagation(),g(C.target.value)}})}),t.jsx(y,{className:"w-full mx-0",label:"WHERE",size:T.sm,children:({className:h})=>t.jsx(y.Textfield,{className:b(h,"w-full"),placeholder:"id > 10",value:E,onInput:C=>{C.stopPropagation(),m(C.target.value)}})})]})})}),t.jsx(ce,{}),t.jsx(Ce,{children:t.jsx("div",{className:"flex w-full justify-end items-center px-2",children:I?t.jsxs("div",{className:"flex items-center",children:[t.jsx(Pe,{className:"w-3"}),t.jsx("small",{className:"text-xs text-neutral-400 block mx-2",children:"Getting Diff..."}),t.jsx($,{size:T.sm,variant:R.Danger,onClick:h=>{h.stopPropagation(),j()},children:"Cancel"})]}):t.jsx($,{className:"ml-2",size:T.sm,variant:R.Alternative,disabled:M(w)||I,onClick:h=>{h.stopPropagation(),c()},children:"Get Diff"})})})]})}function Fs(){const e=N(j=>j.setPreviewDiff),[s,l]=u.useState(""),[n,i]=u.useState(""),[r,a]=u.useState(Ee),[d,p]=u.useState(""),[o,f]=u.useState(""),{refetch:g,isFetching:E,cancel:m}=Ke({source:s,target:n,limit:r,on:d,where:o});u.useEffect(()=>()=>{m()},[]);function v(){e(void 0),g().then(({data:j})=>{e(j)})}const I=[s,n,r,d].every(Boolean);return t.jsxs(t.Fragment,{children:[t.jsx(Se,{children:t.jsx("form",{className:"w-full",children:t.jsxs("fieldset",{className:"px-2 w-full text-neutral-500",children:[t.jsx(y,{className:"w-full mx-0",label:"Source",size:T.sm,children:({className:j})=>t.jsx(y.Textfield,{className:b(j,"w-full"),placeholder:"exp.tst_model__dev",value:s,onInput:c=>{c.stopPropagation(),l(c.target.value)}})}),t.jsx(y,{className:"w-full mx-0",label:"Target",size:T.sm,children:({className:j})=>t.jsx(y.Textfield,{className:b(j,"w-full"),placeholder:"exp.tst_snapshot__1353336088",value:n,onInput:c=>{c.stopPropagation(),i(c.target.value)}})}),t.jsx(y,{className:"w-full mx-0",label:"Limit",size:T.sm,children:({className:j})=>t.jsx(y.Textfield,{className:b(j,"w-full"),type:"number",placeholder:"1000",value:r,onInput:c=>{c.stopPropagation(),a(c.target.valueAsNumber??Ee)}})}),t.jsx(y,{className:"w-full mx-0",label:"ON",size:T.sm,children:({className:j})=>t.jsx(y.Textfield,{className:b(j,"w-full"),placeholder:"s.id = t.id",value:d,onInput:c=>{c.stopPropagation(),p(c.target.value)}})}),t.jsx(y,{className:"w-full mx-0",label:"WHERE",size:T.sm,children:({className:j})=>t.jsx(y.Textfield,{className:b(j,"w-full"),placeholder:"id > 10",value:o,onInput:c=>{c.stopPropagation(),f(c.target.value)}})})]})})}),t.jsx(ce,{}),t.jsx(Ce,{children:E?t.jsxs("div",{className:"flex items-center",children:[t.jsx(Pe,{className:"w-3"}),t.jsx("small",{className:"text-xs text-neutral-400 block mx-2",children:"Getting Diff..."}),t.jsx($,{size:T.sm,variant:R.Danger,onClick:j=>{j.stopPropagation(),m()},children:"Cancel"})]}):t.jsx($,{className:"ml-2",size:T.sm,variant:R.Alternative,disabled:M(I)||E,onClick:j=>{j.stopPropagation(),v()},children:"Get Diff"})})]})}const ge="s__",be="t__",We="NULL";function Ms({source_schema:e,target_schema:s},l,n){const i=Array.from(new Set(n.flat())),r=Object.keys(e),a=Object.keys(s),p=Array.from(new Set(r.concat(a))).filter(g=>r.includes(g)&&a.includes(g)),o=r.filter(g=>!a.includes(g)),f=a.filter(g=>!r.includes(g));return{all:Array.from(new Set([i,l.modifiedColumns&&p,l.addedColumns&&f,l.removedColumns&&o].filter(Boolean).flat())),added:f.length,deleted:o.length,modified:p.length-i.length}}function Rs(e,s,l){const n=Object.values(e.row_diff.sample)[0]??{},i=[],r=[],a=[];return Object.keys(n).forEach(d=>{ee(e,d,l)?r.push(d):K(e,d,l)?i.push(d):a.push(d)}),{all:[s.modifiedRows&&a,s.addedRows&&r,s.removedRows&&i].filter(Boolean).flat(),added:r.length,deleted:i.length,modified:a.length}}function Ae(e,s,l){const n=V(e,ge,s,l),i=V(e,be,s,l);return n!==i}function K(e,s,l){return l.every(([n,i])=>{const r=V(e,ge,n,s),a=V(e,be,i,s);return k(r)&&H(a)})}function ee(e,s,l){return l.every(([n,i])=>{const r=V(e,ge,n,s),a=V(e,be,i,s);return H(r)&&k(a)})}function Me(e,s,l,n){return l in e.schema_diff.added||l in e.schema_diff.removed?!1:s.some(i=>M(ee(e,i,n))&&M(K(e,i,n))&&Ae(e,l,i))}function V(e,s,l,n){var i;return(i=e.row_diff.sample[`${s}${l}`])==null?void 0:i[n]}function Ls(e,s,l){return V(e,ge,s,l)??We}function _s(e,s,l){return V(e,be,s,l)??We}function As({diff:e}){const[s,l]=u.useState({modifiedRows:!0,addedRows:!0,removedRows:!0,modifiedColumns:!0,addedColumns:!0,removedColumns:!0}),n=Ms(e.schema_diff,s,e.on),i=Rs(e,s,e.on),r=s.addedRows&&!s.removedRows&&!s.modifiedRows,a=!s.addedRows&&s.removedRows&&!s.modifiedRows,d=Array.from(new Set(e.on.flat())),p=Object.values(e.row_diff.sample).some(o=>Object.keys(o).length>0);return t.jsxs("div",{className:"px-2 h-full flex flex-col rounded-lg",children:[p&&t.jsxs(t.Fragment,{children:[t.jsx(Os,{diff:e,rows:i,columns:n}),t.jsx("div",{className:"mt-2 mb-1 flex rounded-lg items-center",children:t.jsx("div",{className:"w-full flex justify-end items-center",children:t.jsx(St,{options:Object.keys(s).reduce((o,f)=>(o[f]=g=>l(E=>({...E,[f]:g})),o),{}),value:Object.keys(s).map(o=>M(s[o])?void 0:o).filter(Boolean)})})})]}),t.jsx("div",{className:"overflow-auto h-full hover:scrollbar scrollbar--horizontal scrollbar--vertical",children:t.jsxs("table",{cellPadding:0,cellSpacing:0,className:"w-full text-xs text-neutral-600 dark:text-neutral-200 font-normal border-separate",children:[t.jsx("thead",{className:"sticky bg-theme top-0 z-10",children:t.jsx("tr",{children:n.all.map(o=>t.jsx("th",{colSpan:Me(e,i.all,o,e.on)?2:1,className:b("text-left whitespace-nowrap py-1 px-2 font-bold",o in e.schema_diff.added?"border-t-2 border-l-2 border-r-2 border-success-500":o in e.schema_diff.removed?"border-t-2 border-l-2 border-r-2 border-danger-500":d.includes(o)?"border-brand-500 border-l-2 border-t-2 border-r-2":"border-r border-b border-neutral-100 dark:border-neutral-700 last:border-r-0",d.includes(o)?"bg-brand-10":"bg-neutral-5"),children:t.jsxs("div",{className:"flex justify-between",children:[t.jsxs("div",{className:"mr-2",children:[t.jsx("span",{children:o})," ",t.jsxs("small",{className:"text-neutral-500 font-medium",children:["(",e.schema_diff.source_schema[o]??e.schema_diff.target_schema[o],")"]})]}),M(d.includes(o))&&t.jsx("div",{className:"ml-2",children:t.jsxs("small",{className:"inline-block bg-neutral-10 px-2 py-0.5 rounded-full",children:[Math.round(i.all.filter(f=>Ae(e,o,f)).length/i.all.length*100),"%"]})})]})},o))})}),t.jsx("tbody",{children:Le(i.all)?i.all.map(o=>t.jsx("tr",{children:n.all.map(f=>Me(e,i.all,f,e.on)?t.jsxs(t.Fragment,{children:[t.jsx("td",{className:b("p-1 border-r border-b border-neutral-100 dark:border-neutral-700 last:border-r-0",ee(e,o,e.on)&&"bg-success-10 text-success-500",K(e,o,e.on)&&"bg-danger-5 text-danger-500"),children:t.jsx("div",{className:b("px-2 py-1 whitespace-nowrap font-bold rounded-md ",ee(e,o,e.on)&&"bg-success-10 text-success-500",K(e,o,e.on)&&"bg-danger-5 text-danger-500"),children:Ls(e,f,o)})},`${o}-${f}-source`),t.jsx("td",{className:b("p-1 border-r border-b border-neutral-100 dark:border-neutral-700 last:border-r-0",ee(e,o,e.on)&&"bg-success-10 text-success-500",K(e,o,e.on)&&"bg-danger-5 text-danger-500"),children:t.jsx("div",{className:b("px-2 py-1 whitespace-nowrap font-bold rounded-md",Ae(e,f,o)&&"bg-primary-10 text-primary-500",ee(e,o,e.on)&&"!bg-success-10 !text-success-500",K(e,o,e.on)&&"!bg-danger-5 !text-danger-500"),children:_s(e,f,o)})},`${o}-${f}-target`)]}):t.jsx("td",{className:b("p-1",f in e.schema_diff.added?"bg-success-10 border-l-2 border-r-2 border-success-500 text-success-500 font-bold":f in e.schema_diff.removed?"bg-danger-5 border-l-2 border-r-2 border-danger-500 !text-danger-500 font-bold":d.includes(f)?"border-brand-500 border-l-2 border-r-2":"border-r border-b border-neutral-100 dark:border-neutral-700 last:border-r-0",K(e,o,e.on)&&"!bg-danger-5 text-danger-500 font-bold",ee(e,o,e.on)&&"bg-success-10 text-success-500 font-bold"),children:t.jsx("div",{className:b("px-2 py-1 whitespace-nowrap rounded-md",(f in e.schema_diff.added||ee(e,o,e.on))&&"bg-success-10 text-success-500 font-bold",(f in e.schema_diff.removed||K(e,o,e.on))&&"!bg-danger-5 !text-danger-500 font-bold"),children:V(e,ge,f,o)??V(e,be,f,o)??We})},`${o}-${f}`))},o)):t.jsx(Lt,{columns:n.all.length>0?n.all.length:void 0})}),Le(i.all)&&t.jsx("tfoot",{className:"sticky bg-theme bottom-0",children:t.jsx("tr",{children:n.all.map(o=>Me(e,i.all,o,e.on)?t.jsxs(t.Fragment,{children:[t.jsx("th",{className:b("text-left whitespace-nowrap px-2 py-1 border-r border-t border-neutral-100 dark:border-neutral-700 last:border-r-0",d.includes(o)?"bg-brand-10":"bg-neutral-10"),children:"Source"},`${o}-source`),t.jsx("th",{className:b("text-left whitespace-nowrap px-2 py-1 border-r border-t border-neutral-100 dark:border-neutral-700 last:border-r-0",d.includes(o)?"bg-brand-10":"bg-primary-10"),children:"Target"},`${o}-target`)]}):t.jsxs("th",{className:b("text-left whitespace-nowrap px-2 py-1 font-bold",o in e.schema_diff.added?"border-b-2 border-l-2 border-r-2 border-success-500":o in e.schema_diff.removed?"border-b-2 border-l-2 border-r-2 border-danger-500":d.includes(o)?"border-brand-500 border-l-2 border-b-2 border-r-2":"border-r border-t border-neutral-100 dark:border-neutral-700 last:border-r-0",d.includes(o)?"bg-brand-10":"bg-neutral-10"),children:[(o in e.schema_diff.removed||a)&&t.jsx("span",{children:"Source"}),(o in e.schema_diff.added||r)&&t.jsx("span",{children:"Target"})]},o))})})]})}),t.jsxs("div",{className:"flex justify-between items-center px-2 mt-2",children:[t.jsx(_t,{count:i.all.length}),t.jsx($s,{})]})]})}function $s(){const e=[["Grain","bg-brand-500"],["Changed","bg-primary-500"],["Added","bg-success-500"],["Deleted","bg-danger-500"]];return t.jsx("div",{className:"flex text-xs",children:e.map(([s="",l])=>t.jsx(zs,{text:s,className:l},s))})}function zs({text:e,className:s}){return t.jsxs("div",{className:"flex ml-2 items-center",children:[t.jsx("span",{className:b("inline-block w-3 h-3 mr-2 rounded-full",s)}),t.jsx("small",{className:"text-neutral-600 dark:text-neutral-400",children:e})]})}function Os({diff:e,rows:s,columns:l}){return t.jsx(Fe,{defaultOpen:!1,children:({open:n})=>t.jsxs(t.Fragment,{children:[t.jsxs(Fe.Button,{className:"flex items-center w-full justify-between rounded-lg text-left text-sm px-4 pt-3 pb-2 bg-neutral-10 hover:bg-theme-darker dark:hover:bg-theme-lighter text-neutral-600 dark:text-neutral-400",children:[t.jsx("h2",{className:"whitespace-nowrap text-xl font-bold mb-1",children:"Stats"}),n?t.jsx(Bt,{className:"h-6 w-6 text-primary-500"}):t.jsx(Wt,{className:"h-6 w-6 text-primary-500"})]}),t.jsx(Fe.Panel,{className:"px-4 pb-2 text-sm text-neutral-500",children:t.jsxs("div",{className:"p-2 grid grid-cols-3 gap-4 mb-3",children:[t.jsx(Re,{text:"Row Count Change",children:t.jsxs("p",{className:"text-6xl font-light text-primary-500 mt-3",children:[Math.round(Math.abs(e.row_diff.count_pct_change)),t.jsx("small",{className:"text-sm",children:"%"})]})}),t.jsxs(Re,{text:"Column Count Change",count:s.all.length,children:[t.jsx("p",{className:"text-center text-6xl font-light text-primary-500 mt-3",children:s.modified}),t.jsx("p",{className:"text-center text-6xl font-light text-success-500 mt-3",children:s.added}),t.jsx("p",{className:"text-center text-6xl font-light text-danger-500 mt-3",children:s.deleted})]}),t.jsxs(Re,{text:"Column Changes",count:l.all.length,children:[t.jsx("p",{className:"text-center text-6xl font-light text-primary-500 mt-3",children:l.modified}),t.jsx("p",{className:"text-center text-6xl font-light text-success-500 mt-3",children:l.added}),t.jsx("p",{className:"text-center text-6xl font-light text-danger-500 mt-3",children:l.deleted})]})]})})]})})}function Re({text:e,children:s,className:l,count:n}){return t.jsxs("div",{className:b("rounded-xl overflow-hidden px-3 py-6 bg-primary-10",l),children:[t.jsxs("div",{className:"flex justify-between",children:[t.jsx("h3",{className:"text-neutral-500 dark:text-neutral-300 text-sm font-bold",children:e}),k(n)&&t.jsx("div",{children:t.jsx("small",{className:"inline-block px-2 py-0.5 bg-neutral-10 rounded-full",children:n})})]}),t.jsx("div",{className:"grid grid-cols-3 gap-2",children:s})]})}const Qs=u.lazy(async()=>await Nt(()=>import("./ModelLineage-zWdKo0U2.js"),[])),X={Query:"Query",Table:"Data Preview",Lineage:"Lineage",Diff:"Diff",Errors:"Errors"};function Bs({tab:e,className:s}){const{errors:l,removeError:n}=et(),i=gt(),r=D(h=>h.models),a=D(h=>h.isModel),d=N(h=>h.direction),p=N(h=>h.previewQuery),o=N(h=>h.previewTable),f=N(h=>h.previewDiff),g=N(h=>h.setDirection),[E,m]=u.useState(-1),v=nt(e.file.path,h=>{i(`${bt.DataCatalogModels}/${h.name}`)}),I=r.get(e.file.path),j=M(e.file.isEmpty)&&k(I)&&a(e.file.path),c=l.size>0,w=u.useMemo(()=>[k(o)&&X.Table,k(p)&&e.file.isRemote&&X.Query,j&&X.Lineage,k(f)&&X.Diff,c&&X.Errors].filter(Boolean),[e.id,o,p,f,j,l,c]);return u.useEffect(()=>{k(o)?m(w.indexOf(X.Table)):m(0)},[o]),u.useEffect(()=>{k(f)?m(w.indexOf(X.Diff)):m(0)},[f]),u.useEffect(()=>{k(j)?m(w.indexOf(X.Lineage)):m(0)},[j]),u.useEffect(()=>{m(c?w.indexOf(X.Errors):0)},[c]),u.useEffect(()=>{for(const h of l)vt([B.Fetchdf,B.EvaluateModel,B.RenderQuery,B.ColumnLineage,B.ModelLineage,B.TableDiff,B.Table,B.SaveFile],h.key)&&n(h)},[o,f,p,j]),t.jsx("div",{className:b("w-full h-full flex flex-col text-prose overflow-auto hover:scrollbar scrollbar--vertical",s),children:jt(w)?t.jsx("div",{className:"flex justify-center items-center w-full h-full",children:t.jsx("h3",{className:"text-md",children:"No Data To Preview"})}):t.jsxs(ot,{as:u.Fragment,onChange:m,selectedIndex:E,children:[t.jsx(Be,{list:w,children:t.jsx("div",{className:"ml-2",children:t.jsx($,{className:"!m-0 !py-0.5 px-[0.25rem] border-none",variant:R.Alternative,size:T.sm,onClick:()=>{g(d==="horizontal"?"vertical":"horizontal")},children:t.jsx(ps,{"aria-label":d==="horizontal"?"Use vertical layout":"Use horizontal layout",className:"text-primary-500 w-5"})})})},w.join("-")),t.jsxs(it,{className:"h-full w-full overflow-hidden",children:[k(o)&&t.jsx(ae,{unmount:!1,className:b("w-full h-full pt-4 relative px-2","ring-white ring-opacity-60 ring-offset-2 ring-offset-blue-400 focus:outline-none focus:ring-2"),children:t.jsx(At,{data:o})}),k(p)&&e.file.isRemote&&t.jsx(ae,{unmount:!1,className:"w-full h-full ring-white ring-opacity-60 ring-offset-2 ring-offset-blue-400 focus:outline-none focus:ring-2 p-2",children:t.jsx("div",{className:"w-full h-full p-2 bg-primary-10 rounded-lg overflow-auto hover:scrollbar scrollbar--horizontal scrollbar--vertical",children:t.jsx(_e,{type:te.SQL,content:p??"",extensions:v,className:"text-xs"})})}),j&&t.jsx(ae,{as:"div",unmount:!1,className:b("w-full h-full ring-white ring-opacity-60 ring-offset-2 ring-offset-blue-400 focus:outline-none focus:ring-2"),children:t.jsx(u.Suspense,{fallback:t.jsx(wt,{children:"Loading Model page..."}),children:t.jsx(Qs,{model:I})})}),k(f==null?void 0:f.row_diff)&&t.jsx(ae,{as:"div",unmount:!1,className:b("w-full h-full ring-white ring-opacity-60 ring-offset-2 ring-offset-blue-400 focus:outline-none focus:ring-2 py-2"),children:t.jsx(As,{diff:f},e.id)}),c&&t.jsx(ae,{unmount:!1,className:"w-full h-full ring-white ring-opacity-60 ring-offset-2 ring-offset-blue-400 focus:outline-none focus:ring-2 py-2",children:t.jsx("ul",{className:"w-full h-full p-2 overflow-auto hover:scrollbar scrollbar--vertical scrollbar--horizontal",children:Array.from(l).reverse().map(h=>t.jsx("li",{className:"bg-danger-10 mb-4 last:m-0 p-2 rounded-md",children:t.jsx(Ht,{scope:h.key,error:h})},h.id))})})]})]},e.id)})}const ye=32,Ws=2;function He(){const e=N(s=>s.tab);return t.jsxs("div",{className:"w-full h-full flex flex-col overflow-hidden",children:[t.jsx(ys,{}),t.jsx(ce,{}),H(e)?t.jsx(Ge,{}):t.jsx(dt,{tab:e})]})}function Ge(){return t.jsx("div",{className:"flex justify-center items-center w-full h-full",children:t.jsx("div",{className:"p-4 text-center text-theme-darker dark:text-theme-lighter",children:t.jsx("h2",{className:"text-3xl",children:"Select File or Add New SQL Tab"})})})}function dt({tab:e}){const{errors:s,addError:l,removeError:n}=et(),i=D(x=>x.environment),r=D(x=>x.models),a=D(x=>x.isModel),d=le(x=>x.files),p=le(x=>x.selectedFile),o=le(x=>x.setSelectedFile),f=N(x=>x.direction),g=N(x=>x.engine),E=N(x=>x.previewTable),m=N(x=>x.previewDiff),v=N(x=>x.refreshTab),I=N(x=>x.updateStoredTabsIds),j=N(x=>x.setPreviewQuery),c=N(x=>x.setPreviewTable),w=N(x=>x.setPreviewDiff),h=N(x=>x.setDialects),{setManuallySelectedColumn:C}=zt(),L=u.useCallback(function(x){o(d.get(x.path))},[d]),_=u.useCallback(function(x,F){C([x,F])},[]),z=Ot(),ne=nt(e.file.path,L,_),[J,P]=u.useState(!1),G=u.useMemo(()=>[...z,{key:"Mod-Enter",win:"Ctrl-Enter",preventDefault:!0,stopPropagation:!0,run(x){const F=x.state.doc.toString();c(void 0),j(F);for(const O of s)O.key===B.Fetchdf&&n(O);return yt({sql:F}).then(O=>{c($e(O))}).catch(O=>{l(B.Fetchdf,{...O,errorKey:B.Fetchdf,trigger:"Editor -> customSQLKeymaps",message:O.message,timestamp:Date.now(),origin:"useQueryTimeout"})}),!0}}],[z,s]);u.useEffect(()=>{P(!1),H(p)&&o(e==null?void 0:e.file)},[e.id]),u.useEffect(()=>(g.addEventListener("message",ve),()=>{g.removeEventListener("message",ve)}),[e.id,e.dialect]),u.useEffect(()=>{j(void 0),c(void 0),w(void 0),I()},[e.id,e.file.fingerprint]),u.useEffect(()=>{w(void 0)},[i]);function Y(){const x=r.get(e.file.path),F=M(e.file.isEmpty)&&k(x)&&a(e.file.path);return s.size>0||[E,m].some(Boolean)||F?[70,30]:[100,0]}function ke(){const x=r.get(e==null?void 0:e.file.path);return J&&(k(x)&&a(e.file.path)||e.file.isLocal)&&M(me(e.file.content))?[70,30]:[100,0]}function de(x){e.file.content=x,v(e)}function ve(x){if(x.data.topic==="dialects"){const F=r.get(e.file.path);e.dialect=(F==null?void 0:F.dialect)??e.dialect??"",h(x.data.payload),v(e)}if(x.data.topic==="format"){if(me(x.data.payload))return;e.file.content=x.data.payload,v(e)}}return t.jsxs(Ve,{className:b("w-full h-full overflow-hidden",f==="vertical"?"flex flex-col":"flex"),sizes:Y(),direction:f,minSize:[ye,0],snapOffset:0,children:[t.jsxs("div",{className:b("flex flex-col",f==="vertical"?"w-full ":"h-full"),children:[t.jsxs(Ve,{className:"flex h-full overflow-hidden",sizes:ke(),minSize:ye,snapOffset:ye,handleDrag:(x,F)=>{const De=F.parent.getBoundingClientRect().width*(x[1]??0)/100;P(De>=ye+Ws)},children:[t.jsxs("div",{className:"flex flex-col h-full",children:[e.file.isLocal&&t.jsx(_e,{type:te.SQL,dialect:e.dialect,keymaps:G,content:e.file.content,extensions:ne,onChange:de}),e.file.isRemote&&t.jsx(Qt,{keymaps:z,path:e.file.path,children:({file:x,keymaps:F})=>t.jsx(_e,{type:x.extension,dialect:e.dialect,extensions:ne,keymaps:F,content:x.content,onChange:de})})]}),t.jsx("div",{className:"flex flex-col h-full",children:t.jsx(Es,{tab:e,toggle:()=>P(x=>!x),isOpen:J})})]},e.id),t.jsx(ce,{}),t.jsx(ws,{tab:e},e.file.fingerprint)]}),t.jsx(Bs,{tab:e,className:b(f==="vertical"?"flex flex-col":"flex")})]},f)}He.Empty=Ge;He.Loading=Ge;He.Main=dt;export{He as default};
1
+ import{r as u,R as oe,g as Le,j as t,i as k,c as b,v as H,f as mt,b as M,a as D,l as T,I as me,B as $,m as R,P as Ie,a4 as Ue,a5 as xt,a6 as ht,H as ce,S as Pe,af as Ke,ag as pt,d as et,s as gt,e as bt,q as vt,F as B,D as jt,a7 as wt,_ as Nt,ah as yt}from"./index-BOhxhXrZ.js";import{u as le,M as Tt}from"./project-KrfbRrSM.js";import{S as Ve}from"./SplitPane-DtlAHoz7.js";import{E as te,M as Et}from"./file-DdlT51iE.js";import{u as N}from"./editor-CejWga3_.js";import{I as y}from"./Input-B14KW2DA.js";import{F as Pt,L as St}from"./ListboxShow-C_Z7iHEF.js";import{B as Ye}from"./Banner-By2d9L64.js";import{m as Ct,h as tt,s as kt,K as xe,ak as we,y as he,o as se,n as Te,a4 as ue,L as pe,$ as st,_ as lt,d as fe,r as Ne,a0 as Dt,a as q,g as re,T as U,q as It,W as Ft,X as Mt,Y as Rt,R as Ze}from"./popover-DAZBBM1F.js";import{g as $e,G as Lt,F as _t,T as At}from"./help-CUs5FfFy.js";import{M as $t,u as nt,a as _e,b as zt,c as Ot,C as Qt}from"./context-DxIabjls.js";import{V as Fe,F as Bt,a as Wt}from"./PlusCircleIcon-D8IdkjNm.js";import{D as Ht}from"./ReportErrors-m6yqqGsF.js";import"./floating-ui.react-dom-BKIKvzfh.js";import"./index-BqrQPWC7.js";import"./_commonjs-dynamic-modules-TDtrdbi3.js";import"./help-B59vE3aE.js";import"./SourceList-CHIXruA_.js";function Gt({onFocus:e}){let[s,l]=u.useState(!0),n=Ct();return s?oe.createElement(tt,{as:"button",type:"button",features:kt.Focusable,onFocus:i=>{i.preventDefault();let r,a=50;function d(){if(a--<=0){r&&cancelAnimationFrame(r);return}if(e()){if(cancelAnimationFrame(r),!n.current)return;l(!1);return}r=requestAnimationFrame(d)}r=requestAnimationFrame(d)}}):null}const rt=u.createContext(null);function qt(){return{groups:new Map,get(e,s){var l;let n=this.groups.get(e);n||(n=new Map,this.groups.set(e,n));let i=(l=n.get(s))!=null?l:0;n.set(s,i+1);let r=Array.from(n.keys()).indexOf(s);function a(){let d=n.get(s);d>1?n.set(s,d-1):n.delete(s)}return[r,a]}}}function Ut({children:e}){let s=u.useRef(qt());return u.createElement(rt.Provider,{value:s},e)}function at(e){let s=u.useContext(rt);if(!s)throw new Error("You must wrap your component in a <StableCollection>");let l=u.useId(),[n,i]=s.current.get(e,l);return u.useEffect(()=>i,[]),n}var Vt=(e=>(e[e.Forwards=0]="Forwards",e[e.Backwards=1]="Backwards",e))(Vt||{}),Yt=(e=>(e[e.Less=-1]="Less",e[e.Equal=0]="Equal",e[e.Greater=1]="Greater",e))(Yt||{}),Zt=(e=>(e[e.SetSelectedIndex=0]="SetSelectedIndex",e[e.RegisterTab=1]="RegisterTab",e[e.UnregisterTab=2]="UnregisterTab",e[e.RegisterPanel=3]="RegisterPanel",e[e.UnregisterPanel=4]="UnregisterPanel",e))(Zt||{});let Xt={0(e,s){var l;let n=ue(e.tabs,f=>f.current),i=ue(e.panels,f=>f.current),r=n.filter(f=>{var g;return!((g=f.current)!=null&&g.hasAttribute("disabled"))}),a={...e,tabs:n,panels:i};if(s.index<0||s.index>n.length-1){let f=fe(Math.sign(s.index-e.selectedIndex),{[-1]:()=>1,0:()=>fe(Math.sign(s.index),{[-1]:()=>0,0:()=>0,1:()=>1}),1:()=>0});if(r.length===0)return a;let g=fe(f,{0:()=>n.indexOf(r[0]),1:()=>n.indexOf(r[r.length-1])});return{...a,selectedIndex:g===-1?e.selectedIndex:g}}let d=n.slice(0,s.index),p=[...n.slice(s.index),...d].find(f=>r.includes(f));if(!p)return a;let o=(l=n.indexOf(p))!=null?l:e.selectedIndex;return o===-1&&(o=e.selectedIndex),{...a,selectedIndex:o}},1(e,s){if(e.tabs.includes(s.tab))return e;let l=e.tabs[e.selectedIndex],n=ue([...e.tabs,s.tab],r=>r.current),i=e.selectedIndex;return e.info.current.isControlled||(i=n.indexOf(l),i===-1&&(i=e.selectedIndex)),{...e,tabs:n,selectedIndex:i}},2(e,s){return{...e,tabs:e.tabs.filter(l=>l!==s.tab)}},3(e,s){return e.panels.includes(s.panel)?e:{...e,panels:ue([...e.panels,s.panel],l=>l.current)}},4(e,s){return{...e,panels:e.panels.filter(l=>l!==s.panel)}}},ze=u.createContext(null);ze.displayName="TabsDataContext";function ie(e){let s=u.useContext(ze);if(s===null){let l=new Error(`<${e} /> is missing a parent <Tab.Group /> component.`);throw Error.captureStackTrace&&Error.captureStackTrace(l,ie),l}return s}let Oe=u.createContext(null);Oe.displayName="TabsActionsContext";function Qe(e){let s=u.useContext(Oe);if(s===null){let l=new Error(`<${e} /> is missing a parent <Tab.Group /> component.`);throw Error.captureStackTrace&&Error.captureStackTrace(l,Qe),l}return s}function Jt(e,s){return fe(s.type,Xt,e,s)}let Kt="div";function es(e,s){let{defaultIndex:l=0,vertical:n=!1,manual:i=!1,onChange:r,selectedIndex:a=null,...d}=e;const p=n?"vertical":"horizontal",o=i?"manual":"auto";let f=a!==null,g=we({isControlled:f}),E=he(s),[m,v]=u.useReducer(Jt,{info:g,selectedIndex:a??l,tabs:[],panels:[]}),I=u.useMemo(()=>({selectedIndex:m.selectedIndex}),[m.selectedIndex]),j=we(r||(()=>{})),c=we(m.tabs),w=u.useMemo(()=>({orientation:p,activation:o,...m}),[p,o,m]),h=se(P=>(v({type:1,tab:P}),()=>v({type:2,tab:P}))),C=se(P=>(v({type:3,panel:P}),()=>v({type:4,panel:P}))),L=se(P=>{_.current!==P&&j.current(P),f||v({type:0,index:P})}),_=we(f?e.selectedIndex:m.selectedIndex),z=u.useMemo(()=>({registerTab:h,registerPanel:C,change:L}),[]);Te(()=>{v({type:0,index:a??l})},[a]),Te(()=>{if(_.current===void 0||m.tabs.length<=0)return;let P=ue(m.tabs,G=>G.current);P.some((G,Y)=>m.tabs[Y]!==G)&&L(P.indexOf(m.tabs[_.current]))});let ne={ref:E},J=pe();return oe.createElement(Ut,null,oe.createElement(Oe.Provider,{value:z},oe.createElement(ze.Provider,{value:w},w.tabs.length<=0&&oe.createElement(Gt,{onFocus:()=>{var P,G;for(let Y of c.current)if(((P=Y.current)==null?void 0:P.tabIndex)===0)return(G=Y.current)==null||G.focus(),!0;return!1}}),J({ourProps:ne,theirProps:d,slot:I,defaultTag:Kt,name:"Tabs"}))))}let ts="div";function ss(e,s){let{orientation:l,selectedIndex:n}=ie("Tab.List"),i=he(s),r=u.useMemo(()=>({selectedIndex:n}),[n]),a=e,d={ref:i,role:"tablist","aria-orientation":l};return pe()({ourProps:d,theirProps:a,slot:r,defaultTag:ts,name:"Tabs.List"})}let ls="button";function ns(e,s){var l,n;let i=u.useId(),{id:r=`headlessui-tabs-tab-${i}`,disabled:a=!1,autoFocus:d=!1,...p}=e,{orientation:o,activation:f,selectedIndex:g,tabs:E,panels:m}=ie("Tab"),v=Qe("Tab"),I=ie("Tab"),[j,c]=u.useState(null),w=u.useRef(null),h=he(w,s,c);Te(()=>v.registerTab(w),[v,w]);let C=at("tabs"),L=E.indexOf(w);L===-1&&(L=C);let _=L===g,z=se(S=>{var Z;let je=S();if(je===Ne.Success&&f==="auto"){let ut=(Z=Dt(w))==null?void 0:Z.activeElement,qe=I.tabs.findIndex(ft=>ft.current===ut);qe!==-1&&v.change(qe)}return je}),ne=se(S=>{let Z=E.map(je=>je.current).filter(Boolean);if(S.key===q.Space||S.key===q.Enter){S.preventDefault(),S.stopPropagation(),v.change(L);return}switch(S.key){case q.Home:case q.PageUp:return S.preventDefault(),S.stopPropagation(),z(()=>re(Z,U.First));case q.End:case q.PageDown:return S.preventDefault(),S.stopPropagation(),z(()=>re(Z,U.Last))}if(z(()=>fe(o,{vertical(){return S.key===q.ArrowUp?re(Z,U.Previous|U.WrapAround):S.key===q.ArrowDown?re(Z,U.Next|U.WrapAround):Ne.Error},horizontal(){return S.key===q.ArrowLeft?re(Z,U.Previous|U.WrapAround):S.key===q.ArrowRight?re(Z,U.Next|U.WrapAround):Ne.Error}}))===Ne.Success)return S.preventDefault()}),J=u.useRef(!1),P=se(()=>{var S;J.current||(J.current=!0,(S=w.current)==null||S.focus({preventScroll:!0}),v.change(L),It(()=>{J.current=!1}))}),G=se(S=>{S.preventDefault()}),{isFocusVisible:Y,focusProps:ke}=st({autoFocus:d}),{isHovered:de,hoverProps:ve}=Ft({isDisabled:a}),{pressed:x,pressProps:F}=Mt({disabled:a}),O=u.useMemo(()=>({selected:_,hover:de,active:x,focus:Y,autofocus:d,disabled:a}),[_,de,Y,x,d,a]),De=lt({ref:h,onKeyDown:ne,onMouseDown:G,onClick:P,id:r,role:"tab",type:Rt(e,j),"aria-controls":(n=(l=m[L])==null?void 0:l.current)==null?void 0:n.id,"aria-selected":_,tabIndex:_?0:-1,disabled:a||void 0,autoFocus:d},ke,ve,F);return pe()({ourProps:De,theirProps:p,slot:O,defaultTag:ls,name:"Tabs.Tab"})}let rs="div";function as(e,s){let{selectedIndex:l}=ie("Tab.Panels"),n=he(s),i=u.useMemo(()=>({selectedIndex:l}),[l]),r=e,a={ref:n};return pe()({ourProps:a,theirProps:r,slot:i,defaultTag:rs,name:"Tabs.Panels"})}let os="div",is=Ze.RenderStrategy|Ze.Static;function cs(e,s){var l,n,i,r;let a=u.useId(),{id:d=`headlessui-tabs-panel-${a}`,tabIndex:p=0,...o}=e,{selectedIndex:f,tabs:g,panels:E}=ie("Tab.Panel"),m=Qe("Tab.Panel"),v=u.useRef(null),I=he(v,s);Te(()=>m.registerPanel(v),[m,v]);let j=at("panels"),c=E.indexOf(v);c===-1&&(c=j);let w=c===f,{isFocusVisible:h,focusProps:C}=st(),L=u.useMemo(()=>({selected:w,focus:h}),[w,h]),_=lt({ref:I,id:d,role:"tabpanel","aria-labelledby":(n=(l=g[c])==null?void 0:l.current)==null?void 0:n.id,tabIndex:w?p:-1},C),z=pe();return!w&&((i=o.unmount)==null||i)&&!((r=o.static)!=null&&r)?oe.createElement(tt,{"aria-hidden":"true",..._}):z({ourProps:_,theirProps:o,slot:L,defaultTag:os,features:is,visible:w,name:"Tabs.Panel"})}let ds=xe(ns),ot=xe(es),us=xe(ss),it=xe(as),ae=xe(cs),W=Object.assign(ds,{Group:ot,List:us,Panels:it,Panel:ae});function fs({title:e,titleId:s,...l},n){return u.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon",ref:n,"aria-labelledby":s},l),e?u.createElement("title",{id:s},e):null,u.createElement("path",{fillRule:"evenodd",d:"M3 6.75A.75.75 0 0 1 3.75 6h16.5a.75.75 0 0 1 0 1.5H3.75A.75.75 0 0 1 3 6.75ZM3 12a.75.75 0 0 1 .75-.75h16.5a.75.75 0 0 1 0 1.5H3.75A.75.75 0 0 1 3 12Zm0 5.25a.75.75 0 0 1 .75-.75h16.5a.75.75 0 0 1 0 1.5H3.75a.75.75 0 0 1-.75-.75Z",clipRule:"evenodd"}))}const ct=u.forwardRef(fs);function ms({title:e,titleId:s,...l},n){return u.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon",ref:n,"aria-labelledby":s},l),e?u.createElement("title",{id:s},e):null,u.createElement("path",{fillRule:"evenodd",d:"M12 3.75a.75.75 0 0 1 .75.75v6.75h6.75a.75.75 0 0 1 0 1.5h-6.75v6.75a.75.75 0 0 1-1.5 0v-6.75H4.5a.75.75 0 0 1 0-1.5h6.75V4.5a.75.75 0 0 1 .75-.75Z",clipRule:"evenodd"}))}const xs=u.forwardRef(ms);function hs({title:e,titleId:s,...l},n){return u.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon",ref:n,"aria-labelledby":s},l),e?u.createElement("title",{id:s},e):null,u.createElement("path",{d:"M15 3.75H9v16.5h6V3.75ZM16.5 20.25h3.375c1.035 0 1.875-.84 1.875-1.875V5.625c0-1.036-.84-1.875-1.875-1.875H16.5v16.5ZM4.125 3.75H7.5v16.5H4.125a1.875 1.875 0 0 1-1.875-1.875V5.625c0-1.036.84-1.875 1.875-1.875Z"}))}const ps=u.forwardRef(hs);function gs(e){switch(e){case te.SQL:return"SQL";case te.PY:return"Python";case te.YAML:case te.YML:return"YAML";default:return"Plain Text"}}function bs(e,s){return e.file.extension===te.SQL&&e.file.isLocal&&Le(s)}const A=function({text:s,children:l,className:n}){return t.jsxs("small",{className:b("font-bold whitespace-nowrap text-xs",n),children:[k(s)&&t.jsxs("span",{children:[s,": "]}),l]})};function vs({text:e,className:s}){return t.jsx("span",{className:b("font-normal",s),children:e})}function js({ok:e,className:s}){return t.jsx("span",{className:b("inline-block w-2 h-2 rounded-full",H(e)&&"bg-warning-500",mt(e)&&"bg-success-500",M(e)&&"bg-danger-500",s)})}A.Text=vs;A.Light=js;const Q={Model:"model",Test:"test",Macro:"macro",Hook:"hook",Log:"log",Config:"config",Seed:"seed",Metric:"metric",Schema:"schema",Unknown:"unknown"};function ws({tab:e}){const s=D(a=>a.isModel),l=N(a=>a.engine),n=N(a=>a.dialects),i=N(a=>a.refreshTab);u.useEffect(()=>{var d;const a=(d=n[0])==null?void 0:d.dialect_name;H(e.dialect)&&k(a)&&r(a)},[n,e]);function r(a){e.dialect=a,i(e),l.postMessage({topic:"dialect",payload:e.dialect})}return t.jsxs("div",{className:"flex w-full items-center px-2 min-h-[2rem] overflow-hidden",children:[e.file.isRemote&&t.jsx(A,{className:"mr-2",text:"Saved",children:t.jsx(A.Light,{ok:M(e.file.isChanged)})}),e.file.isRemote&&e.file.isSQL&&t.jsx(A,{className:"mr-2",text:"Formatted",children:t.jsx(A.Light,{ok:e.file.isFormatted})}),t.jsx(A,{className:"mr-2",text:"Language",children:t.jsx(A.Text,{text:gs(e.file.extension)})}),bs(e,n)&&t.jsx(A,{className:"mr-2",text:"Dialect",children:t.jsx(y,{size:T.sm,children:({className:a,size:d})=>t.jsx(y.Selector,{className:a,size:d,list:n.map(p=>({text:p.dialect_title,value:me(p.dialect_name)?"sqlglot":p.dialect_name})),onChange:r,value:e.dialect})})}),s(e.file.path)&&!me(e.dialect)&&t.jsx(A,{className:"mr-2",text:"Dialect",children:t.jsx(A.Text,{text:e.dialect})}),t.jsx(A,{className:"mr-2",text:"SQLMesh Type",children:t.jsx(A.Text,{text:Ns(e.file.path)})})]})}function Ns(e){return me(e)?Q.Unknown:e.startsWith("models")?Q.Model:e.startsWith("tests")?Q.Test:e.startsWith("logs")?Q.Log:e.startsWith("macros")?Q.Macro:e.startsWith("hooks")?Q.Hook:e.startsWith("seeds")?Q.Seed:e.startsWith("metrics")?Q.Metric:["config.yaml","config.yml","config.py"].includes(e)?Q.Config:["external_models.yaml","schema.yaml"].includes(e)?Q.Schema:Q.Unknown}function Xe({tab:e,title:s}){const l=u.useRef(null),n=D(g=>g.addConfirmation),i=le(g=>g.setSelectedFile),r=N(g=>g.closeTab),a=N(g=>g.tab),d=e.file.id===(a==null?void 0:a.file.id);return u.useEffect(()=>{H(e)||(e.el=l.current??void 0)},[l,e]),u.useEffect(()=>{H(a)||setTimeout(()=>{var g;(g=a.el)==null||g.scrollIntoView({behavior:"smooth",inline:"center"})},300)},[a]),t.jsx("li",{ref:l,className:b("inline-block py-1 pr-2 last-child:pr-0 overflow-hidden text-center overflow-ellipsis cursor-pointer"),onClick:p,children:t.jsxs("span",{className:b("flex border-2 justify-between items-center pl-1 pr-1 py-[0.125rem] min-w-[8rem] rounded-md group border-transparent border-r border-r-theme-darker dark:border-r-theme-lighter",d?"bg-neutral-200 border-neutral-200 text-neutral-900 dark:bg-dark-lighter dark:border-dark-lighter dark:text-primary-500":"bg-trasparent hover:bg-theme-darker dark:hover:bg-theme-lighter"),children:[t.jsx("small",{className:"text-xs",children:s}),t.jsx("small",{className:b("group-hover:hidden text-xs inline-block ml-3 mr-1 w-2 h-2 rounded-full",e.file.isChanged?"bg-warning-500":"bg-transparent")}),t.jsx(Pt,{className:"hidden group-hover:inline-block text-neutral-600 dark:text-neutral-100 w-4 h-4 ml-2 mr-0 cursor-pointer",onClick:o})]})});function p(g){g.stopPropagation(),i(e.file)}function o(g){g.stopPropagation(),f()}function f(){e.file.isChanged?n({headline:"Closing Tab",description:"All unsaved changes will be lost. Do you want to close the tab anyway?",yesText:"Yes, Close Tab",noText:"No, Cancel",action:()=>r(e.file)}):r(e.file)}}function ys(){const e=D(c=>c.modules),s=D(c=>c.models),l=D(c=>c.lastSelectedModel),n=D(c=>c.setLastSelectedModel),i=le(c=>c.files),r=le(c=>c.selectedFile),a=le(c=>c.setSelectedFile),d=N(c=>c.tab),p=N(c=>c.tabs),o=N(c=>c.replaceTab),f=N(c=>c.createTab),g=N(c=>c.selectTab),E=N(c=>c.addTab),[m,v]=u.useMemo(()=>{const c=[],w=[];return p.forEach(h=>{h.file.isLocal&&c.push(h),h.file.isRemote&&w.push(h)}),[c,w]},[p]);return u.useEffect(()=>{if(H(r)||(d==null?void 0:d.file)===r||r instanceof Tt||M(e.hasFiles))return;n(s.get(r.path));const c=f(r);k(d)&&d.file instanceof Et&&M(d.file.isChanged)&&d.file.isRemote&&M(p.has(r))?o(d,c):E(c),g(c)},[r,e]),u.useEffect(()=>{if(H(l))return;const c=i.get(l.path);H(c)||a(c)},[l]),t.jsxs("div",{className:"flex items-center bg-neutral-5",children:[t.jsx($,{className:"h-6 m-0 ml-1 mr-2 border-none",variant:R.Alternative,size:T.sm,onClick:I,children:t.jsx(xs,{className:"inline-block w-3 h-4"})}),t.jsxs("ul",{className:"w-full whitespace-nowrap min-h-[2rem] max-h-[2rem] overflow-hidden overflow-x-auto hover:scrollbar scrollbar--horizontal",children:[m.map((c,w)=>t.jsx(Xe,{tab:c,title:`Custom SQL ${w+1}`},c.id)),v.map(c=>t.jsx(Xe,{tab:c,title:c.file.name},c.id))]})]});function I(c){c.stopPropagation(),j()}function j(){const c=f();E(c),g(c),a(c.file)}}function Be({list:e,children:s=[],className:l,disabled:n=!1}){return t.jsxs(W.List,{className:b("w-full whitespace-nowrap px-2 flex justify-center items-center",n&&"cursor-not-allowed"),children:[t.jsx("div",{className:b("flex w-full overflow-hidden overflow-x-auto py-1 hover:scrollbar scrollbar--horizontal",l,n&&"opacity-50 pointer-events-none"),children:t.jsx("div",{className:"flex p-1 items-center bg-secondary-10 dark:bg-primary-10 cursor-pointer rounded-full overflow-hidden",children:e.map(i=>t.jsx(W,{className:({selected:r})=>b("text-xs px-2 py-0.5 mr-2 last:mr-0 rounded-full relative align-middle",r?"bg-secondary-500 text-secondary-100 cursor-default font-bold":"cursor-pointer font-medium text-secondary-400 dark:text-secondary-400"),children:i},i))})}),s]})}const Je=1440*60*1e3,Ts=1e3,Ee=50;function Es({tab:e,isOpen:s=!0,toggle:l}){const n=D(a=>a.models),i=D(a=>a.isModel),r=u.useMemo(()=>n.get(e.file.path),[e,n]);return t.jsx("div",{className:b("flex flex-col w-full h-full items-center overflow-hidden"),children:i(e.file.path)?k(r)&&t.jsx(Ps,{tab:e,model:r,isOpen:s,toggle:l}):t.jsx(Ss,{tab:e,isOpen:s,toggle:l})})}function Ps({tab:e,model:s,isOpen:l=!0,toggle:n}){const i=D(d=>d.environment),r=D(d=>d.environments),a=Array.from(r).filter(({isRemote:d})=>d).map(({name:d})=>({text:d,value:d}));return t.jsxs(W.Group,{children:[t.jsxs("div",{className:"flex w-full items-center",children:[t.jsx($,{className:b("h-6 w-6 !px-0 border-none bg-neutral-10 dark:bg-neutral-20",l?"text-secondary-500 dark:text-secondary-300":"text-neutral-500 dark:text-neutral-300"),variant:R.Info,size:T.sm,onClick:d=>{d.stopPropagation(),n==null||n()},children:t.jsx(ct,{className:"w-4 h-4"})}),l&&t.jsx(Be,{className:"flex justify-center items-center",list:["Evaluate","Columns",a.length>1&&i.isRemote&&"Diff"].filter(Boolean)})]}),l&&t.jsxs(W.Panels,{className:"h-full w-full overflow-hidden",children:[t.jsx(W.Panel,{unmount:!1,className:b("flex flex-col w-full h-full relative overflow-hidden","ring-white ring-opacity-60 ring-offset-2 ring-offset-blue-400 focus:outline-none focus:ring-2"),children:t.jsx(Ds,{model:s})}),t.jsx(W.Panel,{unmount:!1,className:"text-xs w-full h-full ring-white ring-opacity-60 ring-offset-2 ring-offset-blue-400 focus:outline-none focus:ring-2 px-2",children:t.jsx($t,{nodeId:s.fqn,columns:s.columns,disabled:M(s.isModelSQL),withHandles:!1,withSource:!1,withDescription:!0,limit:10})}),a.length>1&&i.isRemote&&t.jsx(W.Panel,{unmount:!1,className:b("flex flex-col w-full h-full relative overflow-hidden","ring-white ring-opacity-60 ring-offset-2 ring-offset-blue-400 focus:outline-none focus:ring-2"),children:t.jsx(Is,{tab:e,model:s,list:a.filter(({value:d})=>i.name!==d),target:{text:i.name,value:i.name}})})]})]})}function Ss({tab:e,isOpen:s=!0,toggle:l}){return t.jsxs(W.Group,{children:[t.jsxs("div",{className:"flex w-full items-center",children:[t.jsx($,{className:b("h-6 w-6 !px-0 border-none bg-neutral-10 dark:bg-neutral-20",s?"text-secondary-500 dark:text-secondary-300":"text-neutral-500 dark:text-neutral-300"),variant:R.Info,size:T.sm,onClick:n=>{n.stopPropagation(),l==null||l()},children:t.jsx(ct,{className:"w-4 h-4"})}),s&&t.jsx(Be,{className:"flex justify-center items-center",list:["Run Query","Diff"]})]}),s&&t.jsxs(W.Panels,{className:"h-full w-full overflow-hidden",children:[t.jsx(W.Panel,{unmount:!1,className:b("flex flex-col w-full h-full relative overflow-hidden","ring-white ring-opacity-60 ring-offset-2 ring-offset-blue-400 focus:outline-none focus:ring-2"),children:t.jsx(ks,{tab:e})}),t.jsx(W.Panel,{unmount:!1,className:b("flex flex-col w-full h-full relative overflow-hidden","ring-white ring-opacity-60 ring-offset-2 ring-offset-blue-400 focus:outline-none focus:ring-2"),children:t.jsx(Fs,{})})]})]})}function Cs({children:e}){return t.jsx("fieldset",{className:"flex my-3",children:e})}function Se({children:e}){return t.jsx("div",{className:"flex w-full h-full py-1 overflow-hidden overflow-y-auto hover:scrollbar scrollbar--vertical",children:e})}function Ce({children:e}){return t.jsx("div",{className:"flex w-full py-1 px-1 justify-end",children:e})}function ks({tab:e}){const s=N(p=>p.setPreviewQuery),l=N(p=>p.setPreviewTable),n=N(p=>p.engine),{refetch:i,isFetching:r,cancel:a}=pt({sql:e.file.content});u.useEffect(()=>()=>{a()},[]);function d(){l(void 0),s(e.file.content),i().then(({data:p})=>{l($e(p))})}return t.jsxs(t.Fragment,{children:[t.jsx(Se,{}),t.jsx(ce,{}),t.jsxs(Ce,{children:[t.jsx($,{size:T.sm,variant:R.Alternative,onClick:p=>{p.stopPropagation(),n.postMessage({topic:"format",payload:{sql:e.file.content,dialect:e.dialect}})},children:"Format"}),r?t.jsxs("div",{className:"flex items-center",children:[t.jsx(Pe,{className:"w-3"}),t.jsx("small",{className:"text-xs text-neutral-400 block mx-2",children:"Running Query..."}),t.jsx($,{size:T.sm,variant:R.Danger,onClick:p=>{p.stopPropagation(),a()},children:"Cancel"})]}):t.jsx($,{size:T.sm,variant:R.Alternative,disabled:r,onClick:p=>{p.stopPropagation(),d()},children:"Run Query"})]})]})}function Ds({model:e}){const s=D(m=>m.environment),l=D(m=>m.isModel),n=N(m=>m.setPreviewQuery),i=N(m=>m.setPreviewTable),[r,a]=u.useState({model:e.displayName,start:Ie(Ue(Date.now()-Je)),end:Ie(new Date),execution_time:Ie(Ue(Date.now()-Je)),limit:1e3}),{refetch:d}=xt({model:r.model,start:r.start,end:r.end,execution_time:r.execution_time,dialect:e.dialect,pretty:!0}),{refetch:p,isFetching:o,cancel:f}=ht(r),g=l(e.path)&&Object.values(r).every(Boolean);u.useEffect(()=>()=>{f()},[]);function E(){n(void 0),i(void 0),d().then(({data:m})=>{n(m==null?void 0:m.sql)}),p().then(({data:m})=>{i($e(m))})}return t.jsxs(t.Fragment,{children:[t.jsx(Se,{children:t.jsxs("form",{className:"w-full",children:[M(g)&&t.jsx(Cs,{children:t.jsx(Ye,{variant:R.Warning,children:t.jsxs(Ye.Description,{className:"w-full mr-2 text-sm",children:["Please fill out all fields to ",t.jsx("b",{children:"evaluate the model"}),"."]})})}),t.jsxs("fieldset",{className:"px-2 w-full text-neutral-500",children:[t.jsx(y,{className:"w-full mx-0",label:"Start Date",size:T.sm,children:({className:m})=>t.jsx(y.Textfield,{className:b(m,"w-full"),placeholder:"02/11/2023",value:r.start,onInput:v=>{v.stopPropagation(),a({...r,start:v.target.value??""})}})}),t.jsx(y,{className:"w-full mx-0",label:"End Date",size:T.sm,children:({className:m})=>t.jsx(y.Textfield,{className:b(m,"w-full"),placeholder:"02/13/2023",value:r.end,onInput:v=>{v.stopPropagation(),a({...r,end:v.target.value??""})}})}),t.jsx(y,{className:"w-full mx-0",label:"Execution Time",size:T.sm,children:({className:m})=>t.jsx(y.Textfield,{className:b(m,"w-full"),placeholder:"02/13/2023",value:r.execution_time,onInput:v=>{v.stopPropagation(),a({...r,execution_time:v.target.value??""})}})}),k(r.limit)&&t.jsx(y,{className:"w-full mx-0",label:"Limit",size:T.sm,children:({className:m})=>t.jsx(y.Textfield,{className:b(m,"w-full"),type:"number",placeholder:"1000",value:r.limit,onInput:v=>{v.stopPropagation(),a({...r,limit:v.target.valueAsNumber??Ts})}})})]})]})}),t.jsx(ce,{}),t.jsx(Ce,{children:t.jsx("div",{className:"flex w-full justify-end",children:l(e.path)&&o?t.jsxs("div",{className:"flex items-center",children:[t.jsx(Pe,{className:"w-3"}),t.jsx("small",{className:"text-xs text-neutral-400 block mx-2",children:"Evaluating..."}),t.jsx($,{size:T.sm,variant:R.Danger,onClick:m=>{m.stopPropagation(),f()},children:"Cancel"})]}):t.jsx($,{size:T.sm,variant:R.Alternative,disabled:M(g)||o||s.isInitialProd,onClick:m=>{m.stopPropagation(),E()},children:"Evaluate"})})})]})}function Is({tab:e,model:s,list:l,target:n}){const i=D(h=>h.isModel),r=N(h=>h.setPreviewDiff),[a,d]=u.useState(l[0].value),[p,o]=u.useState(Ee),[f,g]=u.useState(""),[E,m]=u.useState(""),{refetch:v,isFetching:I,cancel:j}=Ke({source:a,target:n.value,model_or_snapshot:s.name,limit:p,on:f,where:E}),c=u.useCallback(()=>{r(void 0),v().then(({data:h})=>{r(h)})},[s.name,s.hash]);u.useEffect(()=>()=>{j()},[]),u.useEffect(()=>{d(l[0].value)},[l]);const w=i(e.file.path)&&[a,n,p].every(Boolean);return t.jsxs(t.Fragment,{children:[t.jsx(Se,{children:t.jsx("form",{className:"w-full",children:t.jsxs("fieldset",{className:"px-2 w-full text-neutral-500",children:[t.jsx(y,{className:"w-full mx-0",label:"Source",disabled:l.length<2,size:T.sm,children:({disabled:h,className:C})=>t.jsx(y.Selector,{className:b(C,"w-full"),list:l,value:a,disabled:h,onChange:d})}),t.jsx(y,{className:"w-full mx-0",label:"Target",disabled:!0,children:({disabled:h,className:C})=>t.jsx(y.Textfield,{className:b(C,"w-full"),disabled:h,value:n.value})}),t.jsx(y,{className:"w-full mx-0",label:"Limit",size:T.sm,children:({className:h})=>t.jsx(y.Textfield,{className:b(h,"w-full"),type:"number",placeholder:"1000",value:p,onInput:C=>{C.stopPropagation(),o(C.target.valueAsNumber??Ee)}})}),t.jsx(y,{className:"w-full mx-0",label:"ON",size:T.sm,children:({className:h})=>t.jsx(y.Textfield,{className:b(h,"w-full"),placeholder:"s.id = t.id",value:f,onInput:C=>{C.stopPropagation(),g(C.target.value)}})}),t.jsx(y,{className:"w-full mx-0",label:"WHERE",size:T.sm,children:({className:h})=>t.jsx(y.Textfield,{className:b(h,"w-full"),placeholder:"id > 10",value:E,onInput:C=>{C.stopPropagation(),m(C.target.value)}})})]})})}),t.jsx(ce,{}),t.jsx(Ce,{children:t.jsx("div",{className:"flex w-full justify-end items-center px-2",children:I?t.jsxs("div",{className:"flex items-center",children:[t.jsx(Pe,{className:"w-3"}),t.jsx("small",{className:"text-xs text-neutral-400 block mx-2",children:"Getting Diff..."}),t.jsx($,{size:T.sm,variant:R.Danger,onClick:h=>{h.stopPropagation(),j()},children:"Cancel"})]}):t.jsx($,{className:"ml-2",size:T.sm,variant:R.Alternative,disabled:M(w)||I,onClick:h=>{h.stopPropagation(),c()},children:"Get Diff"})})})]})}function Fs(){const e=N(j=>j.setPreviewDiff),[s,l]=u.useState(""),[n,i]=u.useState(""),[r,a]=u.useState(Ee),[d,p]=u.useState(""),[o,f]=u.useState(""),{refetch:g,isFetching:E,cancel:m}=Ke({source:s,target:n,limit:r,on:d,where:o});u.useEffect(()=>()=>{m()},[]);function v(){e(void 0),g().then(({data:j})=>{e(j)})}const I=[s,n,r,d].every(Boolean);return t.jsxs(t.Fragment,{children:[t.jsx(Se,{children:t.jsx("form",{className:"w-full",children:t.jsxs("fieldset",{className:"px-2 w-full text-neutral-500",children:[t.jsx(y,{className:"w-full mx-0",label:"Source",size:T.sm,children:({className:j})=>t.jsx(y.Textfield,{className:b(j,"w-full"),placeholder:"exp.tst_model__dev",value:s,onInput:c=>{c.stopPropagation(),l(c.target.value)}})}),t.jsx(y,{className:"w-full mx-0",label:"Target",size:T.sm,children:({className:j})=>t.jsx(y.Textfield,{className:b(j,"w-full"),placeholder:"exp.tst_snapshot__1353336088",value:n,onInput:c=>{c.stopPropagation(),i(c.target.value)}})}),t.jsx(y,{className:"w-full mx-0",label:"Limit",size:T.sm,children:({className:j})=>t.jsx(y.Textfield,{className:b(j,"w-full"),type:"number",placeholder:"1000",value:r,onInput:c=>{c.stopPropagation(),a(c.target.valueAsNumber??Ee)}})}),t.jsx(y,{className:"w-full mx-0",label:"ON",size:T.sm,children:({className:j})=>t.jsx(y.Textfield,{className:b(j,"w-full"),placeholder:"s.id = t.id",value:d,onInput:c=>{c.stopPropagation(),p(c.target.value)}})}),t.jsx(y,{className:"w-full mx-0",label:"WHERE",size:T.sm,children:({className:j})=>t.jsx(y.Textfield,{className:b(j,"w-full"),placeholder:"id > 10",value:o,onInput:c=>{c.stopPropagation(),f(c.target.value)}})})]})})}),t.jsx(ce,{}),t.jsx(Ce,{children:E?t.jsxs("div",{className:"flex items-center",children:[t.jsx(Pe,{className:"w-3"}),t.jsx("small",{className:"text-xs text-neutral-400 block mx-2",children:"Getting Diff..."}),t.jsx($,{size:T.sm,variant:R.Danger,onClick:j=>{j.stopPropagation(),m()},children:"Cancel"})]}):t.jsx($,{className:"ml-2",size:T.sm,variant:R.Alternative,disabled:M(I)||E,onClick:j=>{j.stopPropagation(),v()},children:"Get Diff"})})]})}const ge="s__",be="t__",We="NULL";function Ms({source_schema:e,target_schema:s},l,n){const i=Array.from(new Set(n.flat())),r=Object.keys(e),a=Object.keys(s),p=Array.from(new Set(r.concat(a))).filter(g=>r.includes(g)&&a.includes(g)),o=r.filter(g=>!a.includes(g)),f=a.filter(g=>!r.includes(g));return{all:Array.from(new Set([i,l.modifiedColumns&&p,l.addedColumns&&f,l.removedColumns&&o].filter(Boolean).flat())),added:f.length,deleted:o.length,modified:p.length-i.length}}function Rs(e,s,l){const n=Object.values(e.row_diff.sample)[0]??{},i=[],r=[],a=[];return Object.keys(n).forEach(d=>{ee(e,d,l)?r.push(d):K(e,d,l)?i.push(d):a.push(d)}),{all:[s.modifiedRows&&a,s.addedRows&&r,s.removedRows&&i].filter(Boolean).flat(),added:r.length,deleted:i.length,modified:a.length}}function Ae(e,s,l){const n=V(e,ge,s,l),i=V(e,be,s,l);return n!==i}function K(e,s,l){return l.every(([n,i])=>{const r=V(e,ge,n,s),a=V(e,be,i,s);return k(r)&&H(a)})}function ee(e,s,l){return l.every(([n,i])=>{const r=V(e,ge,n,s),a=V(e,be,i,s);return H(r)&&k(a)})}function Me(e,s,l,n){return l in e.schema_diff.added||l in e.schema_diff.removed?!1:s.some(i=>M(ee(e,i,n))&&M(K(e,i,n))&&Ae(e,l,i))}function V(e,s,l,n){var i;return(i=e.row_diff.sample[`${s}${l}`])==null?void 0:i[n]}function Ls(e,s,l){return V(e,ge,s,l)??We}function _s(e,s,l){return V(e,be,s,l)??We}function As({diff:e}){const[s,l]=u.useState({modifiedRows:!0,addedRows:!0,removedRows:!0,modifiedColumns:!0,addedColumns:!0,removedColumns:!0}),n=Ms(e.schema_diff,s,e.on),i=Rs(e,s,e.on),r=s.addedRows&&!s.removedRows&&!s.modifiedRows,a=!s.addedRows&&s.removedRows&&!s.modifiedRows,d=Array.from(new Set(e.on.flat())),p=Object.values(e.row_diff.sample).some(o=>Object.keys(o).length>0);return t.jsxs("div",{className:"px-2 h-full flex flex-col rounded-lg",children:[p&&t.jsxs(t.Fragment,{children:[t.jsx(Os,{diff:e,rows:i,columns:n}),t.jsx("div",{className:"mt-2 mb-1 flex rounded-lg items-center",children:t.jsx("div",{className:"w-full flex justify-end items-center",children:t.jsx(St,{options:Object.keys(s).reduce((o,f)=>(o[f]=g=>l(E=>({...E,[f]:g})),o),{}),value:Object.keys(s).map(o=>M(s[o])?void 0:o).filter(Boolean)})})})]}),t.jsx("div",{className:"overflow-auto h-full hover:scrollbar scrollbar--horizontal scrollbar--vertical",children:t.jsxs("table",{cellPadding:0,cellSpacing:0,className:"w-full text-xs text-neutral-600 dark:text-neutral-200 font-normal border-separate",children:[t.jsx("thead",{className:"sticky bg-theme top-0 z-10",children:t.jsx("tr",{children:n.all.map(o=>t.jsx("th",{colSpan:Me(e,i.all,o,e.on)?2:1,className:b("text-left whitespace-nowrap py-1 px-2 font-bold",o in e.schema_diff.added?"border-t-2 border-l-2 border-r-2 border-success-500":o in e.schema_diff.removed?"border-t-2 border-l-2 border-r-2 border-danger-500":d.includes(o)?"border-brand-500 border-l-2 border-t-2 border-r-2":"border-r border-b border-neutral-100 dark:border-neutral-700 last:border-r-0",d.includes(o)?"bg-brand-10":"bg-neutral-5"),children:t.jsxs("div",{className:"flex justify-between",children:[t.jsxs("div",{className:"mr-2",children:[t.jsx("span",{children:o})," ",t.jsxs("small",{className:"text-neutral-500 font-medium",children:["(",e.schema_diff.source_schema[o]??e.schema_diff.target_schema[o],")"]})]}),M(d.includes(o))&&t.jsx("div",{className:"ml-2",children:t.jsxs("small",{className:"inline-block bg-neutral-10 px-2 py-0.5 rounded-full",children:[Math.round(i.all.filter(f=>Ae(e,o,f)).length/i.all.length*100),"%"]})})]})},o))})}),t.jsx("tbody",{children:Le(i.all)?i.all.map(o=>t.jsx("tr",{children:n.all.map(f=>Me(e,i.all,f,e.on)?t.jsxs(t.Fragment,{children:[t.jsx("td",{className:b("p-1 border-r border-b border-neutral-100 dark:border-neutral-700 last:border-r-0",ee(e,o,e.on)&&"bg-success-10 text-success-500",K(e,o,e.on)&&"bg-danger-5 text-danger-500"),children:t.jsx("div",{className:b("px-2 py-1 whitespace-nowrap font-bold rounded-md ",ee(e,o,e.on)&&"bg-success-10 text-success-500",K(e,o,e.on)&&"bg-danger-5 text-danger-500"),children:Ls(e,f,o)})},`${o}-${f}-source`),t.jsx("td",{className:b("p-1 border-r border-b border-neutral-100 dark:border-neutral-700 last:border-r-0",ee(e,o,e.on)&&"bg-success-10 text-success-500",K(e,o,e.on)&&"bg-danger-5 text-danger-500"),children:t.jsx("div",{className:b("px-2 py-1 whitespace-nowrap font-bold rounded-md",Ae(e,f,o)&&"bg-primary-10 text-primary-500",ee(e,o,e.on)&&"!bg-success-10 !text-success-500",K(e,o,e.on)&&"!bg-danger-5 !text-danger-500"),children:_s(e,f,o)})},`${o}-${f}-target`)]}):t.jsx("td",{className:b("p-1",f in e.schema_diff.added?"bg-success-10 border-l-2 border-r-2 border-success-500 text-success-500 font-bold":f in e.schema_diff.removed?"bg-danger-5 border-l-2 border-r-2 border-danger-500 !text-danger-500 font-bold":d.includes(f)?"border-brand-500 border-l-2 border-r-2":"border-r border-b border-neutral-100 dark:border-neutral-700 last:border-r-0",K(e,o,e.on)&&"!bg-danger-5 text-danger-500 font-bold",ee(e,o,e.on)&&"bg-success-10 text-success-500 font-bold"),children:t.jsx("div",{className:b("px-2 py-1 whitespace-nowrap rounded-md",(f in e.schema_diff.added||ee(e,o,e.on))&&"bg-success-10 text-success-500 font-bold",(f in e.schema_diff.removed||K(e,o,e.on))&&"!bg-danger-5 !text-danger-500 font-bold"),children:V(e,ge,f,o)??V(e,be,f,o)??We})},`${o}-${f}`))},o)):t.jsx(Lt,{columns:n.all.length>0?n.all.length:void 0})}),Le(i.all)&&t.jsx("tfoot",{className:"sticky bg-theme bottom-0",children:t.jsx("tr",{children:n.all.map(o=>Me(e,i.all,o,e.on)?t.jsxs(t.Fragment,{children:[t.jsx("th",{className:b("text-left whitespace-nowrap px-2 py-1 border-r border-t border-neutral-100 dark:border-neutral-700 last:border-r-0",d.includes(o)?"bg-brand-10":"bg-neutral-10"),children:"Source"},`${o}-source`),t.jsx("th",{className:b("text-left whitespace-nowrap px-2 py-1 border-r border-t border-neutral-100 dark:border-neutral-700 last:border-r-0",d.includes(o)?"bg-brand-10":"bg-primary-10"),children:"Target"},`${o}-target`)]}):t.jsxs("th",{className:b("text-left whitespace-nowrap px-2 py-1 font-bold",o in e.schema_diff.added?"border-b-2 border-l-2 border-r-2 border-success-500":o in e.schema_diff.removed?"border-b-2 border-l-2 border-r-2 border-danger-500":d.includes(o)?"border-brand-500 border-l-2 border-b-2 border-r-2":"border-r border-t border-neutral-100 dark:border-neutral-700 last:border-r-0",d.includes(o)?"bg-brand-10":"bg-neutral-10"),children:[(o in e.schema_diff.removed||a)&&t.jsx("span",{children:"Source"}),(o in e.schema_diff.added||r)&&t.jsx("span",{children:"Target"})]},o))})})]})}),t.jsxs("div",{className:"flex justify-between items-center px-2 mt-2",children:[t.jsx(_t,{count:i.all.length}),t.jsx($s,{})]})]})}function $s(){const e=[["Grain","bg-brand-500"],["Changed","bg-primary-500"],["Added","bg-success-500"],["Deleted","bg-danger-500"]];return t.jsx("div",{className:"flex text-xs",children:e.map(([s="",l])=>t.jsx(zs,{text:s,className:l},s))})}function zs({text:e,className:s}){return t.jsxs("div",{className:"flex ml-2 items-center",children:[t.jsx("span",{className:b("inline-block w-3 h-3 mr-2 rounded-full",s)}),t.jsx("small",{className:"text-neutral-600 dark:text-neutral-400",children:e})]})}function Os({diff:e,rows:s,columns:l}){return t.jsx(Fe,{defaultOpen:!1,children:({open:n})=>t.jsxs(t.Fragment,{children:[t.jsxs(Fe.Button,{className:"flex items-center w-full justify-between rounded-lg text-left text-sm px-4 pt-3 pb-2 bg-neutral-10 hover:bg-theme-darker dark:hover:bg-theme-lighter text-neutral-600 dark:text-neutral-400",children:[t.jsx("h2",{className:"whitespace-nowrap text-xl font-bold mb-1",children:"Stats"}),n?t.jsx(Bt,{className:"h-6 w-6 text-primary-500"}):t.jsx(Wt,{className:"h-6 w-6 text-primary-500"})]}),t.jsx(Fe.Panel,{className:"px-4 pb-2 text-sm text-neutral-500",children:t.jsxs("div",{className:"p-2 grid grid-cols-3 gap-4 mb-3",children:[t.jsx(Re,{text:"Row Count Change",children:t.jsxs("p",{className:"text-6xl font-light text-primary-500 mt-3",children:[Math.round(Math.abs(e.row_diff.count_pct_change)),t.jsx("small",{className:"text-sm",children:"%"})]})}),t.jsxs(Re,{text:"Column Count Change",count:s.all.length,children:[t.jsx("p",{className:"text-center text-6xl font-light text-primary-500 mt-3",children:s.modified}),t.jsx("p",{className:"text-center text-6xl font-light text-success-500 mt-3",children:s.added}),t.jsx("p",{className:"text-center text-6xl font-light text-danger-500 mt-3",children:s.deleted})]}),t.jsxs(Re,{text:"Column Changes",count:l.all.length,children:[t.jsx("p",{className:"text-center text-6xl font-light text-primary-500 mt-3",children:l.modified}),t.jsx("p",{className:"text-center text-6xl font-light text-success-500 mt-3",children:l.added}),t.jsx("p",{className:"text-center text-6xl font-light text-danger-500 mt-3",children:l.deleted})]})]})})]})})}function Re({text:e,children:s,className:l,count:n}){return t.jsxs("div",{className:b("rounded-xl overflow-hidden px-3 py-6 bg-primary-10",l),children:[t.jsxs("div",{className:"flex justify-between",children:[t.jsx("h3",{className:"text-neutral-500 dark:text-neutral-300 text-sm font-bold",children:e}),k(n)&&t.jsx("div",{children:t.jsx("small",{className:"inline-block px-2 py-0.5 bg-neutral-10 rounded-full",children:n})})]}),t.jsx("div",{className:"grid grid-cols-3 gap-2",children:s})]})}const Qs=u.lazy(async()=>await Nt(()=>import("./ModelLineage-CyUV8mZ4.js"),[])),X={Query:"Query",Table:"Data Preview",Lineage:"Lineage",Diff:"Diff",Errors:"Errors"};function Bs({tab:e,className:s}){const{errors:l,removeError:n}=et(),i=gt(),r=D(h=>h.models),a=D(h=>h.isModel),d=N(h=>h.direction),p=N(h=>h.previewQuery),o=N(h=>h.previewTable),f=N(h=>h.previewDiff),g=N(h=>h.setDirection),[E,m]=u.useState(-1),v=nt(e.file.path,h=>{i(`${bt.DataCatalogModels}/${h.name}`)}),I=r.get(e.file.path),j=M(e.file.isEmpty)&&k(I)&&a(e.file.path),c=l.size>0,w=u.useMemo(()=>[k(o)&&X.Table,k(p)&&e.file.isRemote&&X.Query,j&&X.Lineage,k(f)&&X.Diff,c&&X.Errors].filter(Boolean),[e.id,o,p,f,j,l,c]);return u.useEffect(()=>{k(o)?m(w.indexOf(X.Table)):m(0)},[o]),u.useEffect(()=>{k(f)?m(w.indexOf(X.Diff)):m(0)},[f]),u.useEffect(()=>{k(j)?m(w.indexOf(X.Lineage)):m(0)},[j]),u.useEffect(()=>{m(c?w.indexOf(X.Errors):0)},[c]),u.useEffect(()=>{for(const h of l)vt([B.Fetchdf,B.EvaluateModel,B.RenderQuery,B.ColumnLineage,B.ModelLineage,B.TableDiff,B.Table,B.SaveFile],h.key)&&n(h)},[o,f,p,j]),t.jsx("div",{className:b("w-full h-full flex flex-col text-prose overflow-auto hover:scrollbar scrollbar--vertical",s),children:jt(w)?t.jsx("div",{className:"flex justify-center items-center w-full h-full",children:t.jsx("h3",{className:"text-md",children:"No Data To Preview"})}):t.jsxs(ot,{as:u.Fragment,onChange:m,selectedIndex:E,children:[t.jsx(Be,{list:w,children:t.jsx("div",{className:"ml-2",children:t.jsx($,{className:"!m-0 !py-0.5 px-[0.25rem] border-none",variant:R.Alternative,size:T.sm,onClick:()=>{g(d==="horizontal"?"vertical":"horizontal")},children:t.jsx(ps,{"aria-label":d==="horizontal"?"Use vertical layout":"Use horizontal layout",className:"text-primary-500 w-5"})})})},w.join("-")),t.jsxs(it,{className:"h-full w-full overflow-hidden",children:[k(o)&&t.jsx(ae,{unmount:!1,className:b("w-full h-full pt-4 relative px-2","ring-white ring-opacity-60 ring-offset-2 ring-offset-blue-400 focus:outline-none focus:ring-2"),children:t.jsx(At,{data:o})}),k(p)&&e.file.isRemote&&t.jsx(ae,{unmount:!1,className:"w-full h-full ring-white ring-opacity-60 ring-offset-2 ring-offset-blue-400 focus:outline-none focus:ring-2 p-2",children:t.jsx("div",{className:"w-full h-full p-2 bg-primary-10 rounded-lg overflow-auto hover:scrollbar scrollbar--horizontal scrollbar--vertical",children:t.jsx(_e,{type:te.SQL,content:p??"",extensions:v,className:"text-xs"})})}),j&&t.jsx(ae,{as:"div",unmount:!1,className:b("w-full h-full ring-white ring-opacity-60 ring-offset-2 ring-offset-blue-400 focus:outline-none focus:ring-2"),children:t.jsx(u.Suspense,{fallback:t.jsx(wt,{children:"Loading Model page..."}),children:t.jsx(Qs,{model:I})})}),k(f==null?void 0:f.row_diff)&&t.jsx(ae,{as:"div",unmount:!1,className:b("w-full h-full ring-white ring-opacity-60 ring-offset-2 ring-offset-blue-400 focus:outline-none focus:ring-2 py-2"),children:t.jsx(As,{diff:f},e.id)}),c&&t.jsx(ae,{unmount:!1,className:"w-full h-full ring-white ring-opacity-60 ring-offset-2 ring-offset-blue-400 focus:outline-none focus:ring-2 py-2",children:t.jsx("ul",{className:"w-full h-full p-2 overflow-auto hover:scrollbar scrollbar--vertical scrollbar--horizontal",children:Array.from(l).reverse().map(h=>t.jsx("li",{className:"bg-danger-10 mb-4 last:m-0 p-2 rounded-md",children:t.jsx(Ht,{scope:h.key,error:h})},h.id))})})]})]},e.id)})}const ye=32,Ws=2;function He(){const e=N(s=>s.tab);return t.jsxs("div",{className:"w-full h-full flex flex-col overflow-hidden",children:[t.jsx(ys,{}),t.jsx(ce,{}),H(e)?t.jsx(Ge,{}):t.jsx(dt,{tab:e})]})}function Ge(){return t.jsx("div",{className:"flex justify-center items-center w-full h-full",children:t.jsx("div",{className:"p-4 text-center text-theme-darker dark:text-theme-lighter",children:t.jsx("h2",{className:"text-3xl",children:"Select File or Add New SQL Tab"})})})}function dt({tab:e}){const{errors:s,addError:l,removeError:n}=et(),i=D(x=>x.environment),r=D(x=>x.models),a=D(x=>x.isModel),d=le(x=>x.files),p=le(x=>x.selectedFile),o=le(x=>x.setSelectedFile),f=N(x=>x.direction),g=N(x=>x.engine),E=N(x=>x.previewTable),m=N(x=>x.previewDiff),v=N(x=>x.refreshTab),I=N(x=>x.updateStoredTabsIds),j=N(x=>x.setPreviewQuery),c=N(x=>x.setPreviewTable),w=N(x=>x.setPreviewDiff),h=N(x=>x.setDialects),{setManuallySelectedColumn:C}=zt(),L=u.useCallback(function(x){o(d.get(x.path))},[d]),_=u.useCallback(function(x,F){C([x,F])},[]),z=Ot(),ne=nt(e.file.path,L,_),[J,P]=u.useState(!1),G=u.useMemo(()=>[...z,{key:"Mod-Enter",win:"Ctrl-Enter",preventDefault:!0,stopPropagation:!0,run(x){const F=x.state.doc.toString();c(void 0),j(F);for(const O of s)O.key===B.Fetchdf&&n(O);return yt({sql:F}).then(O=>{c($e(O))}).catch(O=>{l(B.Fetchdf,{...O,errorKey:B.Fetchdf,trigger:"Editor -> customSQLKeymaps",message:O.message,timestamp:Date.now(),origin:"useQueryTimeout"})}),!0}}],[z,s]);u.useEffect(()=>{P(!1),H(p)&&o(e==null?void 0:e.file)},[e.id]),u.useEffect(()=>(g.addEventListener("message",ve),()=>{g.removeEventListener("message",ve)}),[e.id,e.dialect]),u.useEffect(()=>{j(void 0),c(void 0),w(void 0),I()},[e.id,e.file.fingerprint]),u.useEffect(()=>{w(void 0)},[i]);function Y(){const x=r.get(e.file.path),F=M(e.file.isEmpty)&&k(x)&&a(e.file.path);return s.size>0||[E,m].some(Boolean)||F?[70,30]:[100,0]}function ke(){const x=r.get(e==null?void 0:e.file.path);return J&&(k(x)&&a(e.file.path)||e.file.isLocal)&&M(me(e.file.content))?[70,30]:[100,0]}function de(x){e.file.content=x,v(e)}function ve(x){if(x.data.topic==="dialects"){const F=r.get(e.file.path);e.dialect=(F==null?void 0:F.dialect)??e.dialect??"",h(x.data.payload),v(e)}if(x.data.topic==="format"){if(me(x.data.payload))return;e.file.content=x.data.payload,v(e)}}return t.jsxs(Ve,{className:b("w-full h-full overflow-hidden",f==="vertical"?"flex flex-col":"flex"),sizes:Y(),direction:f,minSize:[ye,0],snapOffset:0,children:[t.jsxs("div",{className:b("flex flex-col",f==="vertical"?"w-full ":"h-full"),children:[t.jsxs(Ve,{className:"flex h-full overflow-hidden",sizes:ke(),minSize:ye,snapOffset:ye,handleDrag:(x,F)=>{const De=F.parent.getBoundingClientRect().width*(x[1]??0)/100;P(De>=ye+Ws)},children:[t.jsxs("div",{className:"flex flex-col h-full",children:[e.file.isLocal&&t.jsx(_e,{type:te.SQL,dialect:e.dialect,keymaps:G,content:e.file.content,extensions:ne,onChange:de}),e.file.isRemote&&t.jsx(Qt,{keymaps:z,path:e.file.path,children:({file:x,keymaps:F})=>t.jsx(_e,{type:x.extension,dialect:e.dialect,extensions:ne,keymaps:F,content:x.content,onChange:de})})]}),t.jsx("div",{className:"flex flex-col h-full",children:t.jsx(Es,{tab:e,toggle:()=>P(x=>!x),isOpen:J})})]},e.id),t.jsx(ce,{}),t.jsx(ws,{tab:e},e.file.fingerprint)]}),t.jsx(Bs,{tab:e,className:b(f==="vertical"?"flex flex-col":"flex")})]},f)}He.Empty=Ge;He.Loading=Ge;He.Main=dt;export{He as default};
@@ -1 +1 @@
1
- import{d as f,a as i,r,v as j,F as E,j as e,L as c,S as d,_ as l}from"./index-O3mjYpnE.js";import{u as p}from"./project-6gxepOhm.js";import{P as v}from"./Page-BWEEQfIt.js";import"./file-DarlIDVi.js";import"./SplitPane-qHmkD1qy.js";const b=r.lazy(()=>l(()=>import("./FileExplorer-CEv0vXkt.js"),[])),P=r.lazy(()=>l(()=>import("./context-Dr54UHLi.js"),[])),L=r.lazy(()=>l(()=>import("./Editor-s0SBpV2y.js"),[])),N=r.lazy(()=>l(()=>import("./context-DgX0fp2E.js").then(t=>t.v),[]));function w(){const{addError:t}=f(),m=i(s=>s.modules),n=i(s=>s.models),u=i(s=>s.setLastSelectedModel),x=p(s=>s.files),h=r.useCallback(function(o){const a=n.get(o);j(a)||u(a)},[x,n]),_=r.useCallback(function(o){t(E.ColumnLineage,o)},[]);return e.jsx(v,{sidebar:m.hasFiles?e.jsx(r.Suspense,{fallback:e.jsx("div",{className:"flex justify-center items-center w-full h-full",children:e.jsxs(c,{className:"inline-block",children:[e.jsx(d,{className:"w-3 h-3 border border-neutral-10 mr-4"}),e.jsx("h3",{className:"text-md",children:"Getting Files..."})]})}),children:e.jsx(P,{children:e.jsx(b,{})})}):void 0,content:e.jsx(r.Suspense,{fallback:e.jsx("div",{className:"flex justify-center items-center w-full h-full",children:e.jsxs(c,{className:"inline-block",children:[e.jsx(d,{className:"w-3 h-3 border border-neutral-10 mr-4"}),e.jsx("h3",{className:"text-md",children:"Getting Editor Ready..."})]})}),children:e.jsx(N,{showColumns:!0,handleClickModel:h,handleError:_,children:e.jsx(L,{})})})})}export{w as default};
1
+ import{d as f,a as i,r,v as j,F as E,j as e,L as c,S as d,_ as l}from"./index-BOhxhXrZ.js";import{u as p}from"./project-KrfbRrSM.js";import{P as v}from"./Page-BRM3FnUP.js";import"./file-DdlT51iE.js";import"./SplitPane-DtlAHoz7.js";const b=r.lazy(()=>l(()=>import("./FileExplorer-DHUeTEqB.js"),[])),P=r.lazy(()=>l(()=>import("./context-A_iW5s73.js"),[])),L=r.lazy(()=>l(()=>import("./Editor-36yOekac.js"),[])),N=r.lazy(()=>l(()=>import("./context-DxIabjls.js").then(t=>t.v),[]));function w(){const{addError:t}=f(),m=i(s=>s.modules),n=i(s=>s.models),u=i(s=>s.setLastSelectedModel),x=p(s=>s.files),h=r.useCallback(function(o){const a=n.get(o);j(a)||u(a)},[x,n]),_=r.useCallback(function(o){t(E.ColumnLineage,o)},[]);return e.jsx(v,{sidebar:m.hasFiles?e.jsx(r.Suspense,{fallback:e.jsx("div",{className:"flex justify-center items-center w-full h-full",children:e.jsxs(c,{className:"inline-block",children:[e.jsx(d,{className:"w-3 h-3 border border-neutral-10 mr-4"}),e.jsx("h3",{className:"text-md",children:"Getting Files..."})]})}),children:e.jsx(P,{children:e.jsx(b,{})})}):void 0,content:e.jsx(r.Suspense,{fallback:e.jsx("div",{className:"flex justify-center items-center w-full h-full",children:e.jsxs(c,{className:"inline-block",children:[e.jsx(d,{className:"w-3 h-3 border border-neutral-10 mr-4"}),e.jsx("h3",{className:"text-md",children:"Getting Editor Ready..."})]})}),children:e.jsx(N,{showColumns:!0,handleClickModel:h,handleError:_,children:e.jsx(L,{})})})})}export{w as default};
@@ -1 +1 @@
1
- import{x as j,s as v,d as y,r as l,D as N,e as i,v as g,j as r,O as h,m,H as D,B as k,l as S,i as A}from"./index-O3mjYpnE.js";import{P as z}from"./Page-BWEEQfIt.js";import{S as C}from"./SourceList-Doo_9ZGp.js";import{S as I}from"./SourceListItem-D5Mj7Dly.js";import"./SplitPane-qHmkD1qy.js";import"./Input-obuJsD6k.js";import"./floating-ui.react-dom-BH3TFvkM.js";import"./index-D1sR7wpN.js";function w(){const{pathname:c}=j(),a=v(),{errors:o,removeError:u,clearErrors:f}=y(),t=l.useMemo(()=>Array.from(o).reverse(),[o]);l.useEffect(()=>{var e;if(N(t))setTimeout(()=>a(i.Home));else{const s=(e=t[0])==null?void 0:e.id;g(s)?a(i.Errors,{replace:!0}):a(i.Errors+"/"+s,{replace:!0})}},[t]);function d(e){const s=t.find(n=>n.id===e);A(s)&&u(s)}return r.jsx(z,{sidebar:r.jsxs("div",{className:"flex flex-col h-full w-full",children:[r.jsx(C,{keyId:"id",keyName:"key",keyDescription:"message",to:i.Errors,items:t,isActive:e=>`${i.Errors}/${e}`===c,types:t.reduce((e,s)=>Object.assign(e,{[s.id]:s.status}),{}),listItem:({id:e,to:s,name:n,description:p,text:x,disabled:E=!1})=>r.jsx(I,{to:s,name:n,text:x,description:p,variant:m.Danger,disabled:E,handleDelete:()=>d(e)})}),r.jsx(D,{}),o.size>0&&r.jsx("div",{className:"flex justify-end",children:r.jsx(k,{size:S.sm,variant:m.Neutral,onClick:()=>f(),children:"Clear All"})})]}),content:r.jsx(h,{})})}export{w as default};
1
+ import{x as j,s as v,d as y,r as l,D as N,e as i,v as g,j as r,O as h,m,H as D,B as k,l as S,i as A}from"./index-BOhxhXrZ.js";import{P as z}from"./Page-BRM3FnUP.js";import{S as C}from"./SourceList-CHIXruA_.js";import{S as I}from"./SourceListItem-DokQ26y9.js";import"./SplitPane-DtlAHoz7.js";import"./Input-B14KW2DA.js";import"./floating-ui.react-dom-BKIKvzfh.js";import"./index-BqrQPWC7.js";function w(){const{pathname:c}=j(),a=v(),{errors:o,removeError:u,clearErrors:f}=y(),t=l.useMemo(()=>Array.from(o).reverse(),[o]);l.useEffect(()=>{var e;if(N(t))setTimeout(()=>a(i.Home));else{const s=(e=t[0])==null?void 0:e.id;g(s)?a(i.Errors,{replace:!0}):a(i.Errors+"/"+s,{replace:!0})}},[t]);function d(e){const s=t.find(n=>n.id===e);A(s)&&u(s)}return r.jsx(z,{sidebar:r.jsxs("div",{className:"flex flex-col h-full w-full",children:[r.jsx(C,{keyId:"id",keyName:"key",keyDescription:"message",to:i.Errors,items:t,isActive:e=>`${i.Errors}/${e}`===c,types:t.reduce((e,s)=>Object.assign(e,{[s.id]:s.status}),{}),listItem:({id:e,to:s,name:n,description:p,text:x,disabled:E=!1})=>r.jsx(I,{to:s,name:n,text:x,description:p,variant:m.Danger,disabled:E,handleDelete:()=>d(e)})}),r.jsx(D,{}),o.size>0&&r.jsx("div",{className:"flex justify-end",children:r.jsx(k,{size:S.sm,variant:m.Neutral,onClick:()=>f(),children:"Clear All"})})]}),content:r.jsx(h,{})})}export{w as default};