recce 1.32.0__py3-none-any.whl → 1.33.0__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 (121) hide show
  1. recce/VERSION +1 -1
  2. recce/data/404/index.html +2 -2
  3. recce/data/404.html +2 -2
  4. recce/data/__next.@lineage.!KHNsb3Qp.__PAGE__.txt +5 -5
  5. recce/data/__next.@lineage.!KHNsb3Qp.txt +3 -3
  6. recce/data/__next.__PAGE__.txt +2 -2
  7. recce/data/__next._full.txt +28 -27
  8. recce/data/__next._head.txt +4 -4
  9. recce/data/__next._index.txt +13 -14
  10. recce/data/__next._tree.txt +5 -6
  11. recce/data/_next/static/chunks/035a7671a771e554.js +1 -0
  12. recce/data/_next/static/chunks/0469d6dbe7e5e5c6.js +1 -0
  13. recce/data/_next/static/chunks/085956e602a71d0e.js +1 -0
  14. recce/data/_next/static/chunks/0e374f7a4e8ba94b.js +1 -0
  15. recce/data/_next/static/chunks/1e144f83eeaa3cad.js +1 -0
  16. recce/data/_next/static/chunks/24768c8a9b8ea4e8.js +1 -0
  17. recce/data/_next/static/chunks/284db09846920eac.js +1 -0
  18. recce/data/_next/static/chunks/2e29e56651f28b58.js +1 -0
  19. recce/data/_next/static/chunks/{39999944e7676c4f.js → 38209bcf5c3f085a.js} +2 -2
  20. recce/data/_next/static/chunks/3ecbbf24088b1b70.js +39 -0
  21. recce/data/_next/static/chunks/{ed46900f63166b58.css → 43e0b34d1dad593f.css} +2 -2
  22. recce/data/_next/static/chunks/590a607a354a39d0.js +109 -0
  23. recce/data/_next/static/chunks/{20e5889b8080b252.js → 5fec708d01d9cc6b.js} +1 -1
  24. recce/data/_next/static/chunks/66cc94583a244dd9.js +76 -0
  25. recce/data/_next/static/chunks/6867935c85099626.js +72 -0
  26. recce/data/_next/static/chunks/703ad3ff50b693f1.js +1 -0
  27. recce/data/_next/static/chunks/{8f55db26be2ff1a8.js → 7c58336818e16d77.js} +1 -1
  28. recce/data/_next/static/chunks/{21eb68f20f428055.css → 8a5bd6fe3abc8091.css} +0 -1
  29. recce/data/_next/static/chunks/a6dad97d9634a72d.js.map +1 -1
  30. recce/data/_next/static/chunks/afb72cce2decdf87.js +1 -0
  31. recce/data/_next/static/chunks/b690449897a7d0fd.js +1 -0
  32. recce/data/_next/static/chunks/{b860325dc46e47c2.js → b9a0c3a64f3ab353.js} +1 -1
  33. recce/data/_next/static/chunks/c06e87215f7dae7e.js +1 -0
  34. recce/data/_next/static/chunks/ca2c48a4a866492e.js +1 -0
  35. recce/data/_next/static/chunks/d7e9466be6347765.js +1 -0
  36. recce/data/_next/static/chunks/e1ca59a963ab8767.js +1 -0
  37. recce/data/_next/static/chunks/e1d9f34d7f495251.js +4 -0
  38. recce/data/_next/static/chunks/e5ddb0dd4a91208e.js +5 -0
  39. recce/data/_next/static/chunks/{5c4dfb0d09eaa401.js → e75ccd8c7d525cbb.js} +1 -1
  40. recce/data/_next/static/chunks/f37f6033cb92673e.js +46 -0
  41. recce/data/_next/static/chunks/f6d41978531cd9db.css +1 -0
  42. recce/data/_next/static/chunks/f888a53f6fb57c1d.js +1 -0
  43. recce/data/_next/static/chunks/f9a5496b33ace2b8.js +1 -0
  44. recce/data/_next/static/chunks/feff1d4254b9f39a.js +2 -0
  45. recce/data/_next/static/chunks/turbopack-1099edeeeb04ad28.js +4 -0
  46. recce/data/_not-found/__next._full.txt +19 -22
  47. recce/data/_not-found/__next._head.txt +4 -4
  48. recce/data/_not-found/__next._index.txt +10 -11
  49. recce/data/_not-found/__next._not-found.__PAGE__.txt +2 -2
  50. recce/data/_not-found/__next._not-found.txt +3 -3
  51. recce/data/_not-found/__next._tree.txt +4 -5
  52. recce/data/_not-found/index.html +2 -2
  53. recce/data/_not-found/index.txt +19 -22
  54. recce/data/checks/__next.@lineage.__DEFAULT__.txt +4 -4
  55. recce/data/checks/__next._full.txt +36 -32
  56. recce/data/checks/__next._head.txt +4 -4
  57. recce/data/checks/__next._index.txt +13 -14
  58. recce/data/checks/__next._tree.txt +5 -6
  59. recce/data/checks/__next.checks.__PAGE__.txt +6 -6
  60. recce/data/checks/__next.checks.txt +3 -3
  61. recce/data/checks/index.html +2 -2
  62. recce/data/checks/index.txt +36 -32
  63. recce/data/index.html +2 -2
  64. recce/data/index.txt +28 -27
  65. recce/data/lineage/__next.@lineage.__DEFAULT__.txt +4 -4
  66. recce/data/lineage/__next._full.txt +26 -27
  67. recce/data/lineage/__next._head.txt +4 -4
  68. recce/data/lineage/__next._index.txt +13 -14
  69. recce/data/lineage/__next._tree.txt +5 -6
  70. recce/data/lineage/__next.lineage.__PAGE__.txt +5 -5
  71. recce/data/lineage/__next.lineage.txt +3 -3
  72. recce/data/lineage/index.html +2 -2
  73. recce/data/lineage/index.txt +26 -27
  74. recce/data/query/__next.@lineage.__DEFAULT__.txt +4 -4
  75. recce/data/query/__next._full.txt +32 -32
  76. recce/data/query/__next._head.txt +4 -4
  77. recce/data/query/__next._index.txt +13 -14
  78. recce/data/query/__next._tree.txt +5 -6
  79. recce/data/query/__next.query.__PAGE__.txt +5 -5
  80. recce/data/query/__next.query.txt +3 -3
  81. recce/data/query/index.html +2 -2
  82. recce/data/query/index.txt +32 -32
  83. recce/models/types.py +16 -4
  84. {recce-1.32.0.dist-info → recce-1.33.0.dist-info}/METADATA +1 -1
  85. recce-1.33.0.dist-info/RECORD +185 -0
  86. recce/data/_next/static/chunks/058ff74552b21862.js +0 -1
  87. recce/data/_next/static/chunks/08774b5f5d2409cf.js +0 -1
  88. recce/data/_next/static/chunks/0c8a7df4da7d1abd.js +0 -1
  89. recce/data/_next/static/chunks/1123b11b9536380a.js +0 -1
  90. recce/data/_next/static/chunks/12a01e1b9d6c9851.js +0 -74
  91. recce/data/_next/static/chunks/12ce527381ac41a0.js +0 -9
  92. recce/data/_next/static/chunks/1c892b1043430ede.js +0 -1
  93. recce/data/_next/static/chunks/2192fa09d635fc40.js +0 -1
  94. recce/data/_next/static/chunks/22ffdfc5c7ffdcd5.js +0 -1
  95. recce/data/_next/static/chunks/2982366f89a5f741.js +0 -1
  96. recce/data/_next/static/chunks/2ada8753dabf1032.js +0 -48
  97. recce/data/_next/static/chunks/429ab504c7e69752.js +0 -1
  98. recce/data/_next/static/chunks/541d148d76987a33.js +0 -1
  99. recce/data/_next/static/chunks/5f81d085dcde10f2.js +0 -5
  100. recce/data/_next/static/chunks/6d8557f062aa4386.css +0 -1
  101. recce/data/_next/static/chunks/77c3815a3f1feea2.js +0 -1
  102. recce/data/_next/static/chunks/7e750f6f5f5542e3.js +0 -9
  103. recce/data/_next/static/chunks/94a3ae8b72310f75.js +0 -1
  104. recce/data/_next/static/chunks/94edc22174f48b9a.js +0 -48
  105. recce/data/_next/static/chunks/9d07ac7beaf2f874.js +0 -25
  106. recce/data/_next/static/chunks/a6681c810d31e8c7.js +0 -5
  107. recce/data/_next/static/chunks/bdfcf621148ad9ee.js +0 -1
  108. recce/data/_next/static/chunks/c81f26d58461bf9e.js +0 -1
  109. recce/data/_next/static/chunks/d2565e3572b1ead7.js +0 -38
  110. recce/data/_next/static/chunks/d5f5efef4d086997.js +0 -53
  111. recce/data/_next/static/chunks/de16e4ed3c137fec.js +0 -101
  112. recce/data/_next/static/chunks/ebdfbcf5fd8e998e.js +0 -1
  113. recce/data/_next/static/chunks/f2c59bf02f955ace.css +0 -1
  114. recce/data/_next/static/chunks/turbopack-0e990351bb10571c.js +0 -4
  115. recce-1.32.0.dist-info/RECORD +0 -187
  116. /recce/data/_next/static/{RYJxe423rD9uNY3Rlfp-c → F0rMEoNf2kTuuKytF3nVb}/_buildManifest.js +0 -0
  117. /recce/data/_next/static/{RYJxe423rD9uNY3Rlfp-c → F0rMEoNf2kTuuKytF3nVb}/_clientMiddlewareManifest.json +0 -0
  118. /recce/data/_next/static/{RYJxe423rD9uNY3Rlfp-c → F0rMEoNf2kTuuKytF3nVb}/_ssgManifest.js +0 -0
  119. {recce-1.32.0.dist-info → recce-1.33.0.dist-info}/WHEEL +0 -0
  120. {recce-1.32.0.dist-info → recce-1.33.0.dist-info}/entry_points.txt +0 -0
  121. {recce-1.32.0.dist-info → recce-1.33.0.dist-info}/licenses/LICENSE +0 -0
@@ -1,48 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,107983,(e,t,n)=>{"use strict";var o=e.r(922946),a="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t},i=o.useState,r=o.useEffect,l=o.useLayoutEffect,s=o.useDebugValue;function d(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!a(e,n)}catch(e){return!0}}var c="undefined"==typeof window||void 0===window.document||void 0===window.document.createElement?function(e,t){return t()}:function(e,t){var n=t(),o=i({inst:{value:n,getSnapshot:t}}),a=o[0].inst,c=o[1];return l(function(){a.value=n,a.getSnapshot=t,d(a)&&c({inst:a})},[e,n,t]),r(function(){return d(a)&&c({inst:a}),e(function(){d(a)&&c({inst:a})})},[e]),s(n),n};n.useSyncExternalStore=void 0!==o.useSyncExternalStore?o.useSyncExternalStore:c},33347,(e,t,n)=>{"use strict";t.exports=e.r(107983)},683842,(e,t,n)=>{"use strict";var o=e.r(922946),a=e.r(33347),i="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t},r=a.useSyncExternalStore,l=o.useRef,s=o.useEffect,d=o.useMemo,c=o.useDebugValue;n.useSyncExternalStoreWithSelector=function(e,t,n,o,a){var u=l(null);if(null===u.current){var f={hasValue:!1,value:null};u.current=f}else f=u.current;var p=r(e,(u=d(function(){function e(e){if(!s){if(s=!0,r=e,e=o(e),void 0!==a&&f.hasValue){var t=f.value;if(a(t,e))return l=t}return l=e}if(t=l,i(r,e))return t;var n=o(e);return void 0!==a&&a(t,n)?(r=e,t):(r=e,l=n)}var r,l,s=!1,d=void 0===n?null:n;return[function(){return e(t())},null===d?void 0:function(){return e(d())}]},[t,n,o,a]))[0],u[1]);return s(function(){f.hasValue=!0,f.value=p},[p]),c(p),p}},551165,(e,t,n)=>{"use strict";t.exports=e.r(683842)},918132,953131,323194,987923,2216,703351,525519,248859,88515,166598,904451,632951,676502,163669,636819,592355,832421,739145,428537,224779,765996,637418,634513,e=>{"use strict";e.i(210175);var t,n,o=e.i(20277),a=e.i(922946);function i(e){if("string"==typeof e||"number"==typeof e)return""+e;let t="";if(Array.isArray(e))for(let n=0,o;n<e.length;n++)""!==(o=i(e[n]))&&(t+=(t&&" ")+o);else for(let n in e)e[n]&&(t+=(t&&" ")+n);return t}var r=e.i(292002),l=e.i(551165);let s={get url(){return`file://${e.P("node_modules/.pnpm/zustand@4.5.7_@types+react@19.2.7_react@19.2.3/node_modules/zustand/esm/vanilla.mjs")}`}},d=e=>{let t,n=new Set,o=(e,o)=>{let a="function"==typeof e?e(t):e;if(!Object.is(a,t)){let e=t;t=(null!=o?o:"object"!=typeof a||null===a)?a:Object.assign({},t,a),n.forEach(n=>n(t,e))}},a=()=>t,i={setState:o,getState:a,getInitialState:()=>r,subscribe:e=>(n.add(e),()=>n.delete(e)),destroy:()=>{(s.env?s.env.MODE:void 0)!=="production"&&console.warn("[DEPRECATED] The `destroy` method will be unsupported in a future version. Instead use unsubscribe function returned by subscribe. Everything will be garbage-collected if store is garbage-collected."),n.clear()}},r=t=e(o,a,i);return i},{useDebugValue:c}=a.default,{useSyncExternalStoreWithSelector:u}=l.default,f=e=>e;function p(e,t=f,n){let o=u(e.subscribe,e.getState,e.getServerState||e.getInitialState,t,n);return c(o),o}let g=(e,t)=>{let n=e?d(e):d,o=(e,o=t)=>p(n,e,o);return Object.assign(o,n),o};function m(e,t){if(Object.is(e,t))return!0;if("object"!=typeof e||null===e||"object"!=typeof t||null===t)return!1;if(e instanceof Map&&t instanceof Map){if(e.size!==t.size)return!1;for(let[n,o]of e)if(!Object.is(o,t.get(n)))return!1;return!0}if(e instanceof Set&&t instanceof Set){if(e.size!==t.size)return!1;for(let n of e)if(!t.has(n))return!1;return!0}let n=Object.keys(e);if(n.length!==Object.keys(t).length)return!1;for(let o of n)if(!Object.prototype.hasOwnProperty.call(t,o)||!Object.is(e[o],t[o]))return!1;return!0}e.i(173440);let h=(0,a.createContext)(null),x=h.Provider,y=r.errorMessages.error001();function b(e,t){let n=(0,a.useContext)(h);if(null===n)throw Error(y);return p(n,e,t)}function w(){let e=(0,a.useContext)(h);if(null===e)throw Error(y);return(0,a.useMemo)(()=>({getState:e.getState,setState:e.setState,subscribe:e.subscribe}),[e])}let v={display:"none"},C={position:"absolute",width:1,height:1,margin:-1,border:0,padding:0,overflow:"hidden",clip:"rect(0px, 0px, 0px, 0px)",clipPath:"inset(100%)"},S="react-flow__node-desc",j="react-flow__edge-desc",_=e=>e.ariaLiveMessage,k=e=>e.ariaLabelConfig;function E({rfId:e}){let t=b(_);return(0,o.jsx)("div",{id:`react-flow__aria-live-${e}`,"aria-live":"assertive","aria-atomic":"true",style:C,children:t})}function R({rfId:e,disableKeyboardA11y:t}){let n=b(k);return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)("div",{id:`${S}-${e}`,style:v,children:t?n["node.a11yDescription.default"]:n["node.a11yDescription.keyboardDisabled"]}),(0,o.jsx)("div",{id:`${j}-${e}`,style:v,children:n["edge.a11yDescription.default"]}),!t&&(0,o.jsx)(E,{rfId:e})]})}let N=(0,a.forwardRef)(({position:e="top-left",children:t,className:n,style:a,...r},l)=>{let s=`${e}`.split("-");return(0,o.jsx)("div",{className:i(["react-flow__panel",n,...s]),style:a,ref:l,...r,children:t})});function I({proOptions:e,position:t="bottom-right"}){return e?.hideAttribution?null:(0,o.jsx)(N,{position:t,className:"react-flow__attribution","data-message":"Please only hide this attribution when you are subscribed to React Flow Pro: https://pro.reactflow.dev",children:(0,o.jsx)("a",{href:"https://reactflow.dev",target:"_blank",rel:"noopener noreferrer","aria-label":"React Flow attribution",children:"React Flow"})})}N.displayName="Panel";let L=e=>{let t=[],n=[];for(let[,n]of e.nodeLookup)n.selected&&t.push(n.internals.userNode);for(let[,t]of e.edgeLookup)t.selected&&n.push(t);return{selectedNodes:t,selectedEdges:n}},M=e=>e.id;function O(e,t){return m(e.selectedNodes.map(M),t.selectedNodes.map(M))&&m(e.selectedEdges.map(M),t.selectedEdges.map(M))}function D({onSelectionChange:e}){let t=w(),{selectedNodes:n,selectedEdges:o}=b(L,O);return(0,a.useEffect)(()=>{let a={nodes:n,edges:o};e?.(a),t.getState().onSelectionChangeHandlers.forEach(e=>e(a))},[n,o,e]),null}let P=e=>!!e.onSelectionChangeHandlers;function A({onSelectionChange:e}){let t=b(P);return e||t?(0,o.jsx)(D,{onSelectionChange:e}):null}let T=[0,0],z={x:0,y:0,zoom:1},F=["nodes","edges","defaultNodes","defaultEdges","onConnect","onConnectStart","onConnectEnd","onClickConnectStart","onClickConnectEnd","nodesDraggable","autoPanOnNodeFocus","nodesConnectable","nodesFocusable","edgesFocusable","edgesReconnectable","elevateNodesOnSelect","elevateEdgesOnSelect","minZoom","maxZoom","nodeExtent","onNodesChange","onEdgesChange","elementsSelectable","connectionMode","snapGrid","snapToGrid","translateExtent","connectOnClick","defaultEdgeOptions","fitView","fitViewOptions","onNodesDelete","onEdgesDelete","onDelete","onNodeDrag","onNodeDragStart","onNodeDragStop","onSelectionDrag","onSelectionDragStart","onSelectionDragStop","onMoveStart","onMove","onMoveEnd","noPanClassName","nodeOrigin","autoPanOnConnect","autoPanOnNodeDrag","onError","connectionRadius","isValidConnection","selectNodesOnDrag","nodeDragThreshold","connectionDragThreshold","onBeforeDelete","debug","autoPanSpeed","ariaLabelConfig","zIndexMode","rfId"],V=e=>({setNodes:e.setNodes,setEdges:e.setEdges,setMinZoom:e.setMinZoom,setMaxZoom:e.setMaxZoom,setTranslateExtent:e.setTranslateExtent,setNodeExtent:e.setNodeExtent,reset:e.reset,setDefaultNodesAndEdges:e.setDefaultNodesAndEdges}),B={translateExtent:r.infiniteExtent,nodeOrigin:T,minZoom:.5,maxZoom:2,elementsSelectable:!0,noPanClassName:"nopan",rfId:"1"};function $(e){let{setNodes:t,setEdges:n,setMinZoom:o,setMaxZoom:i,setTranslateExtent:l,setNodeExtent:s,reset:d,setDefaultNodesAndEdges:c}=b(V,m),u=w();(0,a.useEffect)(()=>(c(e.defaultNodes,e.defaultEdges),()=>{f.current=B,d()}),[]);let f=(0,a.useRef)(B);return(0,a.useEffect)(()=>{for(let a of F){let d=e[a];d!==f.current[a]&&void 0!==e[a]&&("nodes"===a?t(d):"edges"===a?n(d):"minZoom"===a?o(d):"maxZoom"===a?i(d):"translateExtent"===a?l(d):"nodeExtent"===a?s(d):"ariaLabelConfig"===a?u.setState({ariaLabelConfig:(0,r.mergeAriaLabelConfig)(d)}):"fitView"===a?u.setState({fitViewQueued:d}):"fitViewOptions"===a?u.setState({fitViewOptions:d}):u.setState({[a]:d}))}f.current=e},F.map(t=>e[t])),null}function H(){return"undefined"!=typeof window&&window.matchMedia?window.matchMedia("(prefers-color-scheme: dark)"):null}let W="undefined"!=typeof document?document:null;function G(e=null,t={target:W,actInsideInputWithModifier:!0}){let[n,o]=(0,a.useState)(!1),i=(0,a.useRef)(!1),l=(0,a.useRef)(new Set([])),[s,d]=(0,a.useMemo)(()=>{if(null!==e){let t=(Array.isArray(e)?e:[e]).filter(e=>"string"==typeof e).map(e=>e.replace("+","\n").replace("\n\n","\n+").split("\n")),n=t.reduce((e,t)=>e.concat(...t),[]);return[t,n]}return[[],[]]},[e]);return(0,a.useEffect)(()=>{let n=t?.target??W,a=t?.actInsideInputWithModifier??!0;if(null!==e){let e=e=>{if(i.current=e.ctrlKey||e.metaKey||e.shiftKey||e.altKey,(!i.current||i.current&&!a)&&(0,r.isInputDOMNode)(e))return!1;let n=X(e.code,d);if(l.current.add(e[n]),U(s,l.current,!1)){let n=e.composedPath?.()?.[0]||e.target,a=n?.nodeName==="BUTTON"||n?.nodeName==="A";!1!==t.preventDefault&&(i.current||!a)&&e.preventDefault(),o(!0)}},c=e=>{let t=X(e.code,d);U(s,l.current,!0)?(o(!1),l.current.clear()):l.current.delete(e[t]),"Meta"===e.key&&l.current.clear(),i.current=!1},u=()=>{l.current.clear(),o(!1)};return n?.addEventListener("keydown",e),n?.addEventListener("keyup",c),window.addEventListener("blur",u),window.addEventListener("contextmenu",u),()=>{n?.removeEventListener("keydown",e),n?.removeEventListener("keyup",c),window.removeEventListener("blur",u),window.removeEventListener("contextmenu",u)}}},[e,o]),n}function U(e,t,n){return e.filter(e=>n||e.length===t.size).some(e=>e.every(e=>t.has(e)))}function X(e,t){return t.includes(e)?"code":"key"}function K(e,t){let n=[],o=new Map,a=[];for(let t of e)if("add"===t.type){a.push(t);continue}else if("remove"===t.type||"replace"===t.type)o.set(t.id,[t]);else{let e=o.get(t.id);e?e.push(t):o.set(t.id,[t])}for(let e of t){let t=o.get(e.id);if(!t){n.push(e);continue}if("remove"===t[0].type)continue;if("replace"===t[0].type){n.push({...t[0].item});continue}let a={...e};for(let e of t){var i=e,r=a;switch(i.type){case"select":r.selected=i.selected;break;case"position":void 0!==i.position&&(r.position=i.position),void 0!==i.dragging&&(r.dragging=i.dragging);break;case"dimensions":void 0!==i.dimensions&&(r.measured={...i.dimensions},i.setAttributes&&((!0===i.setAttributes||"width"===i.setAttributes)&&(r.width=i.dimensions.width),(!0===i.setAttributes||"height"===i.setAttributes)&&(r.height=i.dimensions.height))),"boolean"==typeof i.resizing&&(r.resizing=i.resizing)}}n.push(a)}return a.length&&a.forEach(e=>{void 0!==e.index?n.splice(e.index,0,{...e.item}):n.push({...e.item})}),n}function Z(e,t){return{id:e,type:"select",selected:t}}function Q(e,t=new Set,n=!1){let o=[];for(let[a,i]of e){let e=t.has(a);(void 0!==i.selected||e)&&i.selected!==e&&(n&&(i.selected=e),o.push(Z(i.id,e)))}return o}function q({items:e=[],lookup:t}){let n=[],o=new Map(e.map(e=>[e.id,e]));for(let[o,a]of e.entries()){let e=t.get(a.id),i=e?.internals?.userNode??e;void 0!==i&&i!==a&&n.push({id:a.id,item:a,type:"replace"}),void 0===i&&n.push({item:a,type:"add",index:o})}for(let[e]of t)void 0===o.get(e)&&n.push({id:e,type:"remove"});return n}function Y(e){return{id:e.id,type:"remove"}}let J=e=>(0,r.isNodeBase)(e);function ee(e){return(0,a.forwardRef)(e)}let et="undefined"!=typeof window?a.useLayoutEffect:a.useEffect;function en(e){let[t,n]=(0,a.useState)(BigInt(0)),[o]=(0,a.useState)(()=>{var e;let t;return e=()=>n(e=>e+BigInt(1)),t=[],{get:()=>t,reset:()=>{t=[]},push:n=>{t.push(n),e()}}});return et(()=>{let t=o.get();t.length&&(e(t),o.reset())},[t]),o}let eo=(0,a.createContext)(null);function ea({children:e}){let t=w(),n=en((0,a.useCallback)(e=>{let{nodes:n=[],setNodes:o,hasDefaultNodes:a,onNodesChange:i,nodeLookup:r,fitViewQueued:l,onNodesChangeMiddlewareMap:s}=t.getState(),d=n;for(let t of e)d="function"==typeof t?t(d):t;let c=q({items:d,lookup:r});for(let e of s.values())c=e(c);a&&o(d),c.length>0?i?.(c):l&&window.requestAnimationFrame(()=>{let{fitViewQueued:e,nodes:n,setNodes:o}=t.getState();e&&o(n)})},[])),i=en((0,a.useCallback)(e=>{let{edges:n=[],setEdges:o,hasDefaultEdges:a,onEdgesChange:i,edgeLookup:r}=t.getState(),l=n;for(let t of e)l="function"==typeof t?t(l):t;a?o(l):i&&i(q({items:l,lookup:r}))},[])),r=(0,a.useMemo)(()=>({nodeQueue:n,edgeQueue:i}),[]);return(0,o.jsx)(eo.Provider,{value:r,children:e})}let ei=e=>!!e.panZoom;function er(){let e,t=(e=w(),(0,a.useMemo)(()=>({zoomIn:t=>{let{panZoom:n}=e.getState();return n?n.scaleBy(1.2,{duration:t?.duration}):Promise.resolve(!1)},zoomOut:t=>{let{panZoom:n}=e.getState();return n?n.scaleBy(1/1.2,{duration:t?.duration}):Promise.resolve(!1)},zoomTo:(t,n)=>{let{panZoom:o}=e.getState();return o?o.scaleTo(t,{duration:n?.duration}):Promise.resolve(!1)},getZoom:()=>e.getState().transform[2],setViewport:async(t,n)=>{let{transform:[o,a,i],panZoom:r}=e.getState();return r?(await r.setViewport({x:t.x??o,y:t.y??a,zoom:t.zoom??i},n),Promise.resolve(!0)):Promise.resolve(!1)},getViewport:()=>{let[t,n,o]=e.getState().transform;return{x:t,y:n,zoom:o}},setCenter:async(t,n,o)=>e.getState().setCenter(t,n,o),fitBounds:async(t,n)=>{let{width:o,height:a,minZoom:i,maxZoom:l,panZoom:s}=e.getState(),d=(0,r.getViewportForBounds)(t,o,a,i,l,n?.padding??.1);return s?(await s.setViewport(d,{duration:n?.duration,ease:n?.ease,interpolate:n?.interpolate}),Promise.resolve(!0)):Promise.resolve(!1)},screenToFlowPosition:(t,n={})=>{let{transform:o,snapGrid:a,snapToGrid:i,domNode:l}=e.getState();if(!l)return t;let{x:s,y:d}=l.getBoundingClientRect(),c={x:t.x-s,y:t.y-d},u=n.snapGrid??a,f=n.snapToGrid??i;return(0,r.pointToRendererPoint)(c,o,f,u)},flowToScreenPosition:t=>{let{transform:n,domNode:o}=e.getState();if(!o)return t;let{x:a,y:i}=o.getBoundingClientRect(),l=(0,r.rendererPointToPoint)(t,n);return{x:l.x+a,y:l.y+i}}}),[])),n=w(),o=function(){let e=(0,a.useContext)(eo);if(!e)throw Error("useBatchContext must be used within a BatchProvider");return e}(),i=b(ei),l=(0,a.useMemo)(()=>{let e=e=>n.getState().nodeLookup.get(e),t=e=>{o.nodeQueue.push(e)},a=e=>{o.edgeQueue.push(e)},i=e=>{let{nodeLookup:t,nodeOrigin:o}=n.getState(),a=J(e)?e:t.get(e.id),i=a.parentId?(0,r.evaluateAbsolutePosition)(a.position,a.measured,a.parentId,t,o):a.position,l={...a,position:i,width:a.measured?.width??a.width,height:a.measured?.height??a.height};return(0,r.nodeToRect)(l)},l=(e,n,o={replace:!1})=>{t(t=>t.map(t=>{if(t.id===e){let e="function"==typeof n?n(t):n;return o.replace&&J(e)?e:{...t,...e}}return t}))},s=(e,t,n={replace:!1})=>{a(o=>o.map(o=>{if(o.id===e){let e="function"==typeof t?t(o):t;return n.replace&&(0,r.isEdgeBase)(e)?e:{...o,...e}}return o}))};return{getNodes:()=>n.getState().nodes.map(e=>({...e})),getNode:t=>e(t)?.internals.userNode,getInternalNode:e,getEdges:()=>{let{edges:e=[]}=n.getState();return e.map(e=>({...e}))},getEdge:e=>n.getState().edgeLookup.get(e),setNodes:t,setEdges:a,addNodes:e=>{let t=Array.isArray(e)?e:[e];o.nodeQueue.push(e=>[...e,...t])},addEdges:e=>{let t=Array.isArray(e)?e:[e];o.edgeQueue.push(e=>[...e,...t])},toObject:()=>{let{nodes:e=[],edges:t=[],transform:o}=n.getState(),[a,i,r]=o;return{nodes:e.map(e=>({...e})),edges:t.map(e=>({...e})),viewport:{x:a,y:i,zoom:r}}},deleteElements:async({nodes:e=[],edges:t=[]})=>{let{nodes:o,edges:a,onNodesDelete:i,onEdgesDelete:l,triggerNodeChanges:s,triggerEdgeChanges:d,onDelete:c,onBeforeDelete:u}=n.getState(),{nodes:f,edges:p}=await (0,r.getElementsToRemove)({nodesToRemove:e,edgesToRemove:t,nodes:o,edges:a,onBeforeDelete:u}),g=p.length>0,m=f.length>0;if(g){let e=p.map(Y);l?.(p),d(e)}if(m){let e=f.map(Y);i?.(f),s(e)}return(m||g)&&c?.({nodes:f,edges:p}),{deletedNodes:f,deletedEdges:p}},getIntersectingNodes:(e,t=!0,o)=>{let a=(0,r.isRectObject)(e),l=a?e:i(e),s=void 0!==o;return l?(o||n.getState().nodes).filter(o=>{let i=n.getState().nodeLookup.get(o.id);if(i&&!a&&(o.id===e.id||!i.internals.positionAbsolute))return!1;let d=(0,r.nodeToRect)(s?o:i),c=(0,r.getOverlappingArea)(d,l);return t&&c>0||c>=d.width*d.height||c>=l.width*l.height}):[]},isNodeIntersecting:(e,t,n=!0)=>{let o=(0,r.isRectObject)(e)?e:i(e);if(!o)return!1;let a=(0,r.getOverlappingArea)(o,t);return n&&a>0||a>=t.width*t.height||a>=o.width*o.height},updateNode:l,updateNodeData:(e,t,n={replace:!1})=>{l(e,e=>{let o="function"==typeof t?t(e):t;return n.replace?{...e,data:o}:{...e,data:{...e.data,...o}}},n)},updateEdge:s,updateEdgeData:(e,t,n={replace:!1})=>{s(e,e=>{let o="function"==typeof t?t(e):t;return n.replace?{...e,data:o}:{...e,data:{...e.data,...o}}},n)},getNodesBounds:e=>{let{nodeLookup:t,nodeOrigin:o}=n.getState();return(0,r.getNodesBounds)(e,{nodeLookup:t,nodeOrigin:o})},getHandleConnections:({type:e,id:t,nodeId:o})=>Array.from(n.getState().connectionLookup.get(`${o}-${e}${t?`-${t}`:""}`)?.values()??[]),getNodeConnections:({type:e,handleId:t,nodeId:o})=>Array.from(n.getState().connectionLookup.get(`${o}${e?t?`-${e}-${t}`:`-${e}`:""}`)?.values()??[]),fitView:async e=>{let t=n.getState().fitViewResolver??(0,r.withResolvers)();return n.setState({fitViewQueued:!0,fitViewOptions:e,fitViewResolver:t}),o.nodeQueue.push(e=>[...e]),t.promise}}},[]);return(0,a.useMemo)(()=>({...l,...t,viewportInitialized:i}),[i])}let el=e=>e.selected,es="undefined"!=typeof window?window:void 0,ed={position:"absolute",width:"100%",height:"100%",top:0,left:0},ec=e=>({userSelectionActive:e.userSelectionActive,lib:e.lib,connectionInProgress:e.connection.inProgress});function eu({onPaneContextMenu:e,zoomOnScroll:t=!0,zoomOnPinch:n=!0,panOnScroll:i=!1,panOnScrollSpeed:l=.5,panOnScrollMode:s=r.PanOnScrollMode.Free,zoomOnDoubleClick:d=!0,panOnDrag:c=!0,defaultViewport:u,translateExtent:f,minZoom:p,maxZoom:g,zoomActivationKeyCode:h,preventScrolling:x=!0,children:y,noWheelClassName:v,noPanClassName:C,onViewportChange:S,isControlledViewport:j,paneClickDistance:_,selectionOnDrag:k}){let E,R=w(),N=(0,a.useRef)(null),{userSelectionActive:I,lib:L,connectionInProgress:M}=b(ec,m),O=G(h),D=(0,a.useRef)();E=w(),(0,a.useEffect)(()=>{let e=()=>{if(!N.current||!(N.current.checkVisibility?.()??!0))return!1;let e=(0,r.getDimensions)(N.current);(0===e.height||0===e.width)&&E.getState().onError?.("004",r.errorMessages.error004()),E.setState({width:e.width||500,height:e.height||500})};if(N.current){e(),window.addEventListener("resize",e);let t=new ResizeObserver(()=>e());return t.observe(N.current),()=>{window.removeEventListener("resize",e),t&&N.current&&t.unobserve(N.current)}}},[]);let P=(0,a.useCallback)(e=>{S?.({x:e[0],y:e[1],zoom:e[2]}),j||R.setState({transform:e})},[S,j]);return(0,a.useEffect)(()=>{if(N.current){D.current=(0,r.XYPanZoom)({domNode:N.current,minZoom:p,maxZoom:g,translateExtent:f,viewport:u,onDraggingChange:e=>R.setState({paneDragging:e}),onPanZoomStart:(e,t)=>{let{onViewportChangeStart:n,onMoveStart:o}=R.getState();o?.(e,t),n?.(t)},onPanZoom:(e,t)=>{let{onViewportChange:n,onMove:o}=R.getState();o?.(e,t),n?.(t)},onPanZoomEnd:(e,t)=>{let{onViewportChangeEnd:n,onMoveEnd:o}=R.getState();o?.(e,t),n?.(t)}});let{x:e,y:t,zoom:n}=D.current.getViewport();return R.setState({panZoom:D.current,transform:[e,t,n],domNode:N.current.closest(".react-flow")}),()=>{D.current?.destroy()}}},[]),(0,a.useEffect)(()=>{D.current?.update({onPaneContextMenu:e,zoomOnScroll:t,zoomOnPinch:n,panOnScroll:i,panOnScrollSpeed:l,panOnScrollMode:s,zoomOnDoubleClick:d,panOnDrag:c,zoomActivationKeyPressed:O,preventScrolling:x,noPanClassName:C,userSelectionActive:I,noWheelClassName:v,lib:L,onTransformChange:P,connectionInProgress:M,selectionOnDrag:k,paneClickDistance:_})},[e,t,n,i,l,s,d,c,O,x,C,I,v,L,P,M,k,_]),(0,o.jsx)("div",{className:"react-flow__renderer",ref:N,style:ed,children:y})}let ef=e=>({userSelectionActive:e.userSelectionActive,userSelectionRect:e.userSelectionRect});function ep(){let{userSelectionActive:e,userSelectionRect:t}=b(ef,m);return e&&t?(0,o.jsx)("div",{className:"react-flow__selection react-flow__container",style:{width:t.width,height:t.height,transform:`translate(${t.x}px, ${t.y}px)`}}):null}let eg=(e,t)=>n=>{n.target===t.current&&e?.(n)},em=e=>({userSelectionActive:e.userSelectionActive,elementsSelectable:e.elementsSelectable,connectionInProgress:e.connection.inProgress,dragging:e.paneDragging});function eh({isSelecting:e,selectionKeyPressed:t,selectionMode:n=r.SelectionMode.Full,panOnDrag:l,paneClickDistance:s,selectionOnDrag:d,onSelectionStart:c,onSelectionEnd:u,onPaneClick:f,onPaneContextMenu:p,onPaneScroll:g,onPaneMouseEnter:h,onPaneMouseMove:x,onPaneMouseLeave:y,children:v}){let C=w(),{userSelectionActive:S,elementsSelectable:j,dragging:_,connectionInProgress:k}=b(em,m),E=j&&(e||S),R=(0,a.useRef)(null),N=(0,a.useRef)(),I=(0,a.useRef)(new Set),L=(0,a.useRef)(new Set),M=(0,a.useRef)(!1),O=e=>{if(M.current||k){M.current=!1;return}f?.(e),C.getState().resetSelectedElements(),C.setState({nodesSelectionActive:!1})},D=!0===l||Array.isArray(l)&&l.includes(0);return(0,o.jsxs)("div",{className:i(["react-flow__pane",{draggable:D,dragging:_,selection:e}]),onClick:E?void 0:eg(O,R),onContextMenu:eg(e=>{Array.isArray(l)&&l?.includes(2)?e.preventDefault():p?.(e)},R),onWheel:eg(g?e=>g(e):void 0,R),onPointerEnter:E?void 0:h,onPointerMove:E?e=>{let{userSelectionRect:o,transform:a,nodeLookup:i,edgeLookup:l,connectionLookup:d,triggerNodeChanges:u,triggerEdgeChanges:f,defaultEdgeOptions:p,resetSelectedElements:g}=C.getState();if(!N.current||!o)return;let{x:m,y:h}=(0,r.getEventPosition)(e.nativeEvent,N.current),{startX:x,startY:y}=o;if(!M.current){if(Math.hypot(m-x,h-y)<=(t?0:s))return;g(),c?.(e)}M.current=!0;let b={startX:x,startY:y,x:m<x?m:x,y:h<y?h:y,width:Math.abs(m-x),height:Math.abs(h-y)},w=I.current,v=L.current;I.current=new Set((0,r.getNodesInside)(i,b,a,n===r.SelectionMode.Partial,!0).map(e=>e.id)),L.current=new Set;let S=p?.selectable??!0;for(let e of I.current){let t=d.get(e);if(t)for(let{edgeId:e}of t.values()){let t=l.get(e);t&&(t.selectable??S)&&L.current.add(e)}}(0,r.areSetsEqual)(w,I.current)||u(Q(i,I.current,!0)),(0,r.areSetsEqual)(v,L.current)||f(Q(l,L.current)),C.setState({userSelectionRect:b,userSelectionActive:!0,nodesSelectionActive:!1})}:x,onPointerUp:E?e=>{0===e.button&&(e.target?.releasePointerCapture?.(e.pointerId),!S&&e.target===R.current&&C.getState().userSelectionRect&&O?.(e),C.setState({userSelectionActive:!1,userSelectionRect:null}),M.current&&(u?.(e),C.setState({nodesSelectionActive:I.current.size>0})))}:void 0,onPointerDownCapture:E?n=>{let{domNode:o}=C.getState();if(N.current=o?.getBoundingClientRect(),!N.current)return;let a=n.target===R.current;if(!a&&n.target.closest(".nokey")||!e||!(d&&a||t)||0!==n.button||!n.isPrimary)return;n.target?.setPointerCapture?.(n.pointerId),M.current=!1;let{x:i,y:l}=(0,r.getEventPosition)(n.nativeEvent,N.current);C.setState({userSelectionRect:{width:0,height:0,startX:i,startY:l,x:i,y:l}}),a||(n.stopPropagation(),n.preventDefault())}:void 0,onClickCapture:E?e=>{M.current&&(e.stopPropagation(),M.current=!1)}:void 0,onPointerLeave:y,ref:R,style:ed,children:[v,(0,o.jsx)(ep,{})]})}function ex({id:e,store:t,unselect:n=!1,nodeRef:o}){let{addSelectedNodes:a,unselectNodesAndEdges:i,multiSelectionActive:l,nodeLookup:s,onError:d}=t.getState(),c=s.get(e);c?(t.setState({nodesSelectionActive:!1}),c.selected?(n||c.selected&&l)&&(i({nodes:[c],edges:[]}),requestAnimationFrame(()=>o?.current?.blur())):a([e])):d?.("012",r.errorMessages.error012(e))}function ey({nodeRef:e,disabled:t=!1,noDragClassName:n,handleSelector:o,nodeId:i,isSelectable:l,nodeClickDistance:s}){let d=w(),[c,u]=(0,a.useState)(!1),f=(0,a.useRef)();return(0,a.useEffect)(()=>{f.current=(0,r.XYDrag)({getStoreItems:()=>d.getState(),onNodeMouseDown:t=>{ex({id:t,store:d,nodeRef:e})},onDragStart:()=>{u(!0)},onDragStop:()=>{u(!1)}})},[]),(0,a.useEffect)(()=>{if(t)f.current?.destroy();else if(e.current)return f.current?.update({noDragClassName:n,handleSelector:o,domNode:e.current,isSelectable:l,nodeId:i,nodeClickDistance:s}),()=>{f.current?.destroy()}},[n,o,t,l,e,i]),c}function eb(){let e=w();return(0,a.useCallback)(t=>{let{nodeExtent:n,snapToGrid:o,snapGrid:a,nodesDraggable:i,onError:l,updateNodePositions:s,nodeLookup:d,nodeOrigin:c}=e.getState(),u=new Map,f=e=>e.selected&&(e.draggable||i&&void 0===e.draggable),p=o?a[0]:5,g=o?a[1]:5,m=t.direction.x*p*t.factor,h=t.direction.y*g*t.factor;for(let[,e]of d){if(!f(e))continue;let t={x:e.internals.positionAbsolute.x+m,y:e.internals.positionAbsolute.y+h};o&&(t=(0,r.snapPosition)(t,a));let{position:i,positionAbsolute:s}=(0,r.calculateNodePosition)({nodeId:e.id,nextPosition:t,nodeLookup:d,nodeExtent:n,nodeOrigin:c,onError:l});e.position=i,e.internals.positionAbsolute=s,u.set(e.id,e)}s(u)},[])}let ew=(0,a.createContext)(null),ev=ew.Provider;ew.Consumer;let eC=()=>(0,a.useContext)(ew),eS=e=>({connectOnClick:e.connectOnClick,noPanClassName:e.noPanClassName,rfId:e.rfId}),ej=(0,a.memo)(ee(function({type:e="source",position:t=r.Position.Top,isValidConnection:n,isConnectable:a=!0,isConnectableStart:l=!0,isConnectableEnd:s=!0,id:d,onConnect:c,children:u,className:f,onMouseDown:p,onTouchStart:g,...h},x){let y=d||null,v="target"===e,C=w(),S=eC(),{connectOnClick:j,noPanClassName:_,rfId:k}=b(eS,m),{connectingFrom:E,connectingTo:R,clickConnecting:N,isPossibleEndHandle:I,connectionInProcess:L,clickConnectionInProcess:M,valid:O}=b(t=>{let{connectionClickStartHandle:n,connectionMode:o,connection:a}=t,{fromHandle:i,toHandle:l,isValid:s}=a,d=l?.nodeId===S&&l?.id===y&&l?.type===e;return{connectingFrom:i?.nodeId===S&&i?.id===y&&i?.type===e,connectingTo:d,clickConnecting:n?.nodeId===S&&n?.id===y&&n?.type===e,isPossibleEndHandle:o===r.ConnectionMode.Strict?i?.type!==e:S!==i?.nodeId||y!==i?.id,connectionInProcess:!!i,clickConnectionInProcess:!!n,valid:d&&s}},m);S||C.getState().onError?.("010",r.errorMessages.error010());let D=e=>{let{defaultEdgeOptions:t,onConnect:n,hasDefaultEdges:o}=C.getState(),a={...t,...e};if(o){let{edges:e,setEdges:t}=C.getState();t((0,r.addEdge)(a,e))}n?.(a),c?.(a)},P=e=>{if(!S)return;let t=(0,r.isMouseEvent)(e.nativeEvent);if(l&&(t&&0===e.button||!t)){let t=C.getState();r.XYHandle.onPointerDown(e.nativeEvent,{handleDomNode:e.currentTarget,autoPanOnConnect:t.autoPanOnConnect,connectionMode:t.connectionMode,connectionRadius:t.connectionRadius,domNode:t.domNode,nodeLookup:t.nodeLookup,lib:t.lib,isTarget:v,handleId:y,nodeId:S,flowId:t.rfId,panBy:t.panBy,cancelConnection:t.cancelConnection,onConnectStart:t.onConnectStart,onConnectEnd:t.onConnectEnd,updateConnection:t.updateConnection,onConnect:D,isValidConnection:n||t.isValidConnection,getTransform:()=>C.getState().transform,getFromHandle:()=>C.getState().connection.fromHandle,autoPanSpeed:t.autoPanSpeed,dragThreshold:t.connectionDragThreshold})}t?p?.(e):g?.(e)};return(0,o.jsx)("div",{"data-handleid":y,"data-nodeid":S,"data-handlepos":t,"data-id":`${k}-${S}-${y}-${e}`,className:i(["react-flow__handle",`react-flow__handle-${t}`,"nodrag",_,f,{source:!v,target:v,connectable:a,connectablestart:l,connectableend:s,clickconnecting:N,connectingfrom:E,connectingto:R,valid:O,connectionindicator:a&&(!L||I)&&(L||M?s:l)}]),onMouseDown:P,onTouchStart:P,onClick:j?t=>{let{onClickConnectStart:o,onClickConnectEnd:a,connectionClickStartHandle:i,connectionMode:s,isValidConnection:d,lib:c,rfId:u,nodeLookup:f,connection:p}=C.getState();if(!S||!i&&!l)return;if(!i){o?.(t.nativeEvent,{nodeId:S,handleId:y,handleType:e}),C.setState({connectionClickStartHandle:{nodeId:S,type:e,id:y}});return}let g=(0,r.getHostForElement)(t.target),m=n||d,{connection:h,isValid:x}=r.XYHandle.isValid(t.nativeEvent,{handle:{nodeId:S,id:y,type:e},connectionMode:s,fromNodeId:i.nodeId,fromHandleId:i.id||null,fromType:i.type,isValidConnection:m,flowId:u,doc:g,lib:c,nodeLookup:f});x&&h&&D(h);let b=structuredClone(p);delete b.inProgress,b.toPosition=b.toHandle?b.toHandle.position:null,a?.(t,b),C.setState({connectionClickStartHandle:null})}:void 0,ref:x,...h,children:u})})),e_={ArrowUp:{x:0,y:-1},ArrowDown:{x:0,y:1},ArrowLeft:{x:-1,y:0},ArrowRight:{x:1,y:0}},ek={input:function({data:e,isConnectable:t,sourcePosition:n=r.Position.Bottom}){return(0,o.jsxs)(o.Fragment,{children:[e?.label,(0,o.jsx)(ej,{type:"source",position:n,isConnectable:t})]})},default:function({data:e,isConnectable:t,targetPosition:n=r.Position.Top,sourcePosition:a=r.Position.Bottom}){return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(ej,{type:"target",position:n,isConnectable:t}),e?.label,(0,o.jsx)(ej,{type:"source",position:a,isConnectable:t})]})},output:function({data:e,isConnectable:t,targetPosition:n=r.Position.Top}){return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(ej,{type:"target",position:n,isConnectable:t}),e?.label]})},group:function(){return null}},eE=e=>{let{width:t,height:n,x:o,y:a}=(0,r.getInternalNodesBounds)(e.nodeLookup,{filter:e=>!!e.selected});return{width:(0,r.isNumeric)(t)?t:null,height:(0,r.isNumeric)(n)?n:null,userSelectionActive:e.userSelectionActive,transformString:`translate(${e.transform[0]}px,${e.transform[1]}px) scale(${e.transform[2]}) translate(${o}px,${a}px)`}};function eR({onSelectionContextMenu:e,noPanClassName:t,disableKeyboardA11y:n}){let r=w(),{width:l,height:s,transformString:d,userSelectionActive:c}=b(eE,m),u=eb(),f=(0,a.useRef)(null);if((0,a.useEffect)(()=>{n||f.current?.focus({preventScroll:!0})},[n]),ey({nodeRef:f}),c||!l||!s)return null;let p=e?t=>{e(t,r.getState().nodes.filter(e=>e.selected))}:void 0;return(0,o.jsx)("div",{className:i(["react-flow__nodesselection","react-flow__container",t]),style:{transform:d},children:(0,o.jsx)("div",{ref:f,className:"react-flow__nodesselection-rect",onContextMenu:p,tabIndex:n?void 0:-1,onKeyDown:n?void 0:e=>{Object.prototype.hasOwnProperty.call(e_,e.key)&&(e.preventDefault(),u({direction:e_[e.key],factor:e.shiftKey?4:1}))},style:{width:l,height:s}})})}let eN="undefined"!=typeof window?window:void 0,eI=e=>({nodesSelectionActive:e.nodesSelectionActive,userSelectionActive:e.userSelectionActive});function eL({children:e,onPaneClick:t,onPaneMouseEnter:n,onPaneMouseMove:i,onPaneMouseLeave:r,onPaneContextMenu:l,onPaneScroll:s,paneClickDistance:d,deleteKeyCode:c,selectionKeyCode:u,selectionOnDrag:f,selectionMode:p,onSelectionStart:g,onSelectionEnd:h,multiSelectionKeyCode:x,panActivationKeyCode:y,zoomActivationKeyCode:v,elementsSelectable:C,zoomOnScroll:S,zoomOnPinch:j,panOnScroll:_,panOnScrollSpeed:k,panOnScrollMode:E,zoomOnDoubleClick:R,panOnDrag:N,defaultViewport:I,translateExtent:L,minZoom:M,maxZoom:O,preventScrolling:D,onSelectionContextMenu:P,noWheelClassName:A,noPanClassName:T,disableKeyboardA11y:z,onViewportChange:F,isControlledViewport:V}){let{nodesSelectionActive:B,userSelectionActive:$}=b(eI,m),H=G(u,{target:eN}),W=G(y,{target:eN}),U=W||N,X=W||_,K=f&&!0!==U,Z=H||$||K;return!function({deleteKeyCode:e,multiSelectionKeyCode:t}){let n=w(),{deleteElements:o}=er(),i=G(e,{actInsideInputWithModifier:!1}),r=G(t,{target:es});(0,a.useEffect)(()=>{if(i){let{edges:e,nodes:t}=n.getState();o({nodes:t.filter(el),edges:e.filter(el)}),n.setState({nodesSelectionActive:!1})}},[i]),(0,a.useEffect)(()=>{n.setState({multiSelectionActive:r})},[r])}({deleteKeyCode:c,multiSelectionKeyCode:x}),(0,o.jsx)(eu,{onPaneContextMenu:l,elementsSelectable:C,zoomOnScroll:S,zoomOnPinch:j,panOnScroll:X,panOnScrollSpeed:k,panOnScrollMode:E,zoomOnDoubleClick:R,panOnDrag:!H&&U,defaultViewport:I,translateExtent:L,minZoom:M,maxZoom:O,zoomActivationKeyCode:v,preventScrolling:D,noWheelClassName:A,noPanClassName:T,onViewportChange:F,isControlledViewport:V,paneClickDistance:d,selectionOnDrag:K,children:(0,o.jsxs)(eh,{onSelectionStart:g,onSelectionEnd:h,onPaneClick:t,onPaneMouseEnter:n,onPaneMouseMove:i,onPaneMouseLeave:r,onPaneContextMenu:l,onPaneScroll:s,panOnDrag:U,isSelecting:!!Z,selectionMode:p,selectionKeyPressed:H,paneClickDistance:d,selectionOnDrag:K,children:[e,B&&(0,o.jsx)(eR,{onSelectionContextMenu:P,noPanClassName:T,disableKeyboardA11y:z})]})})}eL.displayName="FlowRenderer";let eM=(0,a.memo)(eL),eO=e=>e.updateNodeInternals;var eD=(0,a.memo)(function({id:e,onClick:t,onMouseEnter:n,onMouseMove:l,onMouseLeave:s,onContextMenu:d,onDoubleClick:c,nodesDraggable:u,elementsSelectable:f,nodesConnectable:p,nodesFocusable:g,resizeObserver:h,noDragClassName:x,noPanClassName:y,disableKeyboardA11y:v,rfId:C,nodeTypes:j,nodeClickDistance:_,onError:k}){let{node:E,internals:R,isParent:N}=b(t=>{let n=t.nodeLookup.get(e),o=t.parentLookup.has(e);return{node:n,internals:n.internals,isParent:o}},m),I=E.type||"default",L=j?.[I]||ek[I];void 0===L&&(k?.("003",r.errorMessages.error003(I)),I="default",L=j?.default||ek.default);let M=!!(E.draggable||u&&void 0===E.draggable),O=!!(E.selectable||f&&void 0===E.selectable),D=!!(E.connectable||p&&void 0===E.connectable),P=!!(E.focusable||g&&void 0===E.focusable),A=w(),T=(0,r.nodeHasDimensions)(E),z=function({node:e,nodeType:t,hasDimensions:n,resizeObserver:o}){let i=w(),r=(0,a.useRef)(null),l=(0,a.useRef)(null),s=(0,a.useRef)(e.sourcePosition),d=(0,a.useRef)(e.targetPosition),c=(0,a.useRef)(t),u=n&&!!e.internals.handleBounds;return(0,a.useEffect)(()=>{!r.current||e.hidden||u&&l.current===r.current||(l.current&&o?.unobserve(l.current),o?.observe(r.current),l.current=r.current)},[u,e.hidden]),(0,a.useEffect)(()=>()=>{l.current&&(o?.unobserve(l.current),l.current=null)},[]),(0,a.useEffect)(()=>{if(r.current){let n=c.current!==t,o=s.current!==e.sourcePosition,a=d.current!==e.targetPosition;(n||o||a)&&(c.current=t,s.current=e.sourcePosition,d.current=e.targetPosition,i.getState().updateNodeInternals(new Map([[e.id,{id:e.id,nodeElement:r.current,force:!0}]])))}},[e.id,t,e.sourcePosition,e.targetPosition]),r}({node:E,nodeType:I,hasDimensions:T,resizeObserver:h}),F=ey({nodeRef:z,disabled:E.hidden||!M,noDragClassName:x,handleSelector:E.dragHandle,nodeId:e,isSelectable:O,nodeClickDistance:_}),V=eb();if(E.hidden)return null;let B=(0,r.getNodeDimensions)(E),$=void 0===E.internals.handleBounds?{width:E.width??E.initialWidth??E.style?.width,height:E.height??E.initialHeight??E.style?.height}:{width:E.width??E.style?.width,height:E.height??E.style?.height},H=O||M||t||n||l||s,W=n?e=>n(e,{...R.userNode}):void 0,G=l?e=>l(e,{...R.userNode}):void 0,U=s?e=>s(e,{...R.userNode}):void 0,X=d?e=>d(e,{...R.userNode}):void 0,K=c?e=>c(e,{...R.userNode}):void 0;return(0,o.jsx)("div",{className:i(["react-flow__node",`react-flow__node-${I}`,{[y]:M},E.className,{selected:E.selected,selectable:O,parent:N,draggable:M,dragging:F}]),ref:z,style:{zIndex:R.z,transform:`translate(${R.positionAbsolute.x}px,${R.positionAbsolute.y}px)`,pointerEvents:H?"all":"none",visibility:T?"visible":"hidden",...E.style,...$},"data-id":e,"data-testid":`rf__node-${e}`,onMouseEnter:W,onMouseMove:G,onMouseLeave:U,onContextMenu:X,onClick:n=>{let{selectNodesOnDrag:o,nodeDragThreshold:a}=A.getState();O&&(!o||!M||a>0)&&ex({id:e,store:A,nodeRef:z}),t&&t(n,{...R.userNode})},onDoubleClick:K,onKeyDown:P?t=>{if(!(0,r.isInputDOMNode)(t.nativeEvent)&&!v){if(r.elementSelectionKeys.includes(t.key)&&O)ex({id:e,store:A,unselect:"Escape"===t.key,nodeRef:z});else if(M&&E.selected&&Object.prototype.hasOwnProperty.call(e_,t.key)){t.preventDefault();let{ariaLabelConfig:e}=A.getState();A.setState({ariaLiveMessage:e["node.a11yDescription.ariaLiveMessage"]({direction:t.key.replace("Arrow","").toLowerCase(),x:~~R.positionAbsolute.x,y:~~R.positionAbsolute.y})}),V({direction:e_[t.key],factor:t.shiftKey?4:1})}}}:void 0,tabIndex:P?0:void 0,onFocus:P?()=>{if(v||!z.current?.matches(":focus-visible"))return;let{transform:t,width:n,height:o,autoPanOnNodeFocus:a,setCenter:i}=A.getState();!a||(0,r.getNodesInside)(new Map([[e,E]]),{x:0,y:0,width:n,height:o},t,!0).length>0||i(E.position.x+B.width/2,E.position.y+B.height/2,{zoom:t[2]})}:void 0,role:E.ariaRole??(P?"group":void 0),"aria-roledescription":"node","aria-describedby":v?void 0:`${S}-${C}`,"aria-label":E.ariaLabel,...E.domAttributes,children:(0,o.jsx)(ev,{value:e,children:(0,o.jsx)(L,{id:e,data:E.data,type:I,positionAbsoluteX:R.positionAbsolute.x,positionAbsoluteY:R.positionAbsolute.y,selected:E.selected??!1,selectable:O,draggable:M,deletable:E.deletable??!0,isConnectable:D,sourcePosition:E.sourcePosition,targetPosition:E.targetPosition,dragging:F,dragHandle:E.dragHandle,zIndex:R.z,parentId:E.parentId,...B})})})});let eP=e=>({nodesDraggable:e.nodesDraggable,nodesConnectable:e.nodesConnectable,nodesFocusable:e.nodesFocusable,elementsSelectable:e.elementsSelectable,onError:e.onError});function eA(e){var t;let{nodesDraggable:n,nodesConnectable:i,nodesFocusable:l,elementsSelectable:s,onError:d}=b(eP,m),c=(t=e.onlyRenderVisibleElements,b((0,a.useCallback)(e=>t?(0,r.getNodesInside)(e.nodeLookup,{x:0,y:0,width:e.width,height:e.height},e.transform,!0).map(e=>e.id):Array.from(e.nodeLookup.keys()),[t]),m)),u=function(){let e=b(eO),[t]=(0,a.useState)(()=>"undefined"==typeof ResizeObserver?null:new ResizeObserver(t=>{let n=new Map;t.forEach(e=>{let t=e.target.getAttribute("data-id");n.set(t,{id:t,nodeElement:e.target,force:!0})}),e(n)}));return(0,a.useEffect)(()=>()=>{t?.disconnect()},[t]),t}();return(0,o.jsx)("div",{className:"react-flow__nodes",style:ed,children:c.map(t=>(0,o.jsx)(eD,{id:t,nodeTypes:e.nodeTypes,nodeExtent:e.nodeExtent,onClick:e.onNodeClick,onMouseEnter:e.onNodeMouseEnter,onMouseMove:e.onNodeMouseMove,onMouseLeave:e.onNodeMouseLeave,onContextMenu:e.onNodeContextMenu,onDoubleClick:e.onNodeDoubleClick,noDragClassName:e.noDragClassName,noPanClassName:e.noPanClassName,rfId:e.rfId,disableKeyboardA11y:e.disableKeyboardA11y,resizeObserver:u,nodesDraggable:n,nodesConnectable:i,nodesFocusable:l,elementsSelectable:s,nodeClickDistance:e.nodeClickDistance,onError:d},t))})}eA.displayName="NodeRenderer";let eT=(0,a.memo)(eA),ez={[r.MarkerType.Arrow]:({color:e="none",strokeWidth:t=1})=>{let n={strokeWidth:t,...e&&{stroke:e}};return(0,o.jsx)("polyline",{className:"arrow",style:n,strokeLinecap:"round",fill:"none",strokeLinejoin:"round",points:"-5,-4 0,0 -5,4"})},[r.MarkerType.ArrowClosed]:({color:e="none",strokeWidth:t=1})=>{let n={strokeWidth:t,...e&&{stroke:e,fill:e}};return(0,o.jsx)("polyline",{className:"arrowclosed",style:n,strokeLinecap:"round",strokeLinejoin:"round",points:"-5,-4 0,0 -5,4 -5,-4"})}},eF=({id:e,type:t,color:n,width:i=12.5,height:l=12.5,markerUnits:s="strokeWidth",strokeWidth:d,orient:c="auto-start-reverse"})=>{let u,f=(u=w(),(0,a.useMemo)(()=>Object.prototype.hasOwnProperty.call(ez,t)?ez[t]:(u.getState().onError?.("009",r.errorMessages.error009(t)),null),[t]));return f?(0,o.jsx)("marker",{className:"react-flow__arrowhead",id:e,markerWidth:`${i}`,markerHeight:`${l}`,viewBox:"-10 -10 20 20",markerUnits:s,orient:c,refX:"0",refY:"0",children:(0,o.jsx)(f,{color:n,strokeWidth:d})}):null},eV=({defaultColor:e,rfId:t})=>{let n=b(e=>e.edges),i=b(e=>e.defaultEdgeOptions),l=(0,a.useMemo)(()=>(0,r.createMarkerIds)(n,{id:t,defaultColor:e,defaultMarkerStart:i?.markerStart,defaultMarkerEnd:i?.markerEnd}),[n,i,t,e]);return l.length?(0,o.jsx)("svg",{className:"react-flow__marker","aria-hidden":"true",children:(0,o.jsx)("defs",{children:l.map(e=>(0,o.jsx)(eF,{id:e.id,type:e.type,color:e.color,width:e.width,height:e.height,markerUnits:e.markerUnits,strokeWidth:e.strokeWidth,orient:e.orient},e.id))})}):null};eV.displayName="MarkerDefinitions";var eB=(0,a.memo)(eV);function e$({x:e,y:t,label:n,labelStyle:r,labelShowBg:l=!0,labelBgStyle:s,labelBgPadding:d=[2,4],labelBgBorderRadius:c=2,children:u,className:f,...p}){let[g,m]=(0,a.useState)({x:1,y:0,width:0,height:0}),h=i(["react-flow__edge-textwrapper",f]),x=(0,a.useRef)(null);return((0,a.useEffect)(()=>{if(x.current){let e=x.current.getBBox();m({x:e.x,y:e.y,width:e.width,height:e.height})}},[n]),n)?(0,o.jsxs)("g",{transform:`translate(${e-g.width/2} ${t-g.height/2})`,className:h,visibility:g.width?"visible":"hidden",...p,children:[l&&(0,o.jsx)("rect",{width:g.width+2*d[0],x:-d[0],y:-d[1],height:g.height+2*d[1],className:"react-flow__edge-textbg",style:s,rx:c,ry:c}),(0,o.jsx)("text",{className:"react-flow__edge-text",y:g.height/2,dy:"0.3em",ref:x,style:r,children:n}),u]}):null}e$.displayName="EdgeText";let eH=(0,a.memo)(e$);function eW({path:e,labelX:t,labelY:n,label:a,labelStyle:l,labelShowBg:s,labelBgStyle:d,labelBgPadding:c,labelBgBorderRadius:u,interactionWidth:f=20,...p}){return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)("path",{...p,d:e,fill:"none",className:i(["react-flow__edge-path",p.className])}),f?(0,o.jsx)("path",{d:e,fill:"none",strokeOpacity:0,strokeWidth:f,className:"react-flow__edge-interaction"}):null,a&&(0,r.isNumeric)(t)&&(0,r.isNumeric)(n)?(0,o.jsx)(eH,{x:t,y:n,label:a,labelStyle:l,labelShowBg:s,labelBgStyle:d,labelBgPadding:c,labelBgBorderRadius:u}):null]})}function eG({pos:e,x1:t,y1:n,x2:o,y2:a}){return e===r.Position.Left||e===r.Position.Right?[.5*(t+o),n]:[t,.5*(n+a)]}function eU({sourceX:e,sourceY:t,sourcePosition:n=r.Position.Bottom,targetX:o,targetY:a,targetPosition:i=r.Position.Top}){let[l,s]=eG({pos:n,x1:e,y1:t,x2:o,y2:a}),[d,c]=eG({pos:i,x1:o,y1:a,x2:e,y2:t}),[u,f,p,g]=(0,r.getBezierEdgeCenter)({sourceX:e,sourceY:t,targetX:o,targetY:a,sourceControlX:l,sourceControlY:s,targetControlX:d,targetControlY:c});return[`M${e},${t} C${l},${s} ${d},${c} ${o},${a}`,u,f,p,g]}function eX(e){return(0,a.memo)(({id:t,sourceX:n,sourceY:a,targetX:i,targetY:r,sourcePosition:l,targetPosition:s,label:d,labelStyle:c,labelShowBg:u,labelBgStyle:f,labelBgPadding:p,labelBgBorderRadius:g,style:m,markerEnd:h,markerStart:x,interactionWidth:y})=>{let[b,w,v]=eU({sourceX:n,sourceY:a,sourcePosition:l,targetX:i,targetY:r,targetPosition:s}),C=e.isInternal?void 0:t;return(0,o.jsx)(eW,{id:C,path:b,labelX:w,labelY:v,label:d,labelStyle:c,labelShowBg:u,labelBgStyle:f,labelBgPadding:p,labelBgBorderRadius:g,style:m,markerEnd:h,markerStart:x,interactionWidth:y})})}let eK=eX({isInternal:!1}),eZ=eX({isInternal:!0});function eQ(e){return(0,a.memo)(({id:t,sourceX:n,sourceY:a,targetX:i,targetY:l,label:s,labelStyle:d,labelShowBg:c,labelBgStyle:u,labelBgPadding:f,labelBgBorderRadius:p,style:g,sourcePosition:m=r.Position.Bottom,targetPosition:h=r.Position.Top,markerEnd:x,markerStart:y,pathOptions:b,interactionWidth:w})=>{let[v,C,S]=(0,r.getSmoothStepPath)({sourceX:n,sourceY:a,sourcePosition:m,targetX:i,targetY:l,targetPosition:h,borderRadius:b?.borderRadius,offset:b?.offset,stepPosition:b?.stepPosition}),j=e.isInternal?void 0:t;return(0,o.jsx)(eW,{id:j,path:v,labelX:C,labelY:S,label:s,labelStyle:d,labelShowBg:c,labelBgStyle:u,labelBgPadding:f,labelBgBorderRadius:p,style:g,markerEnd:x,markerStart:y,interactionWidth:w})})}eK.displayName="SimpleBezierEdge",eZ.displayName="SimpleBezierEdgeInternal";let eq=eQ({isInternal:!1}),eY=eQ({isInternal:!0});function eJ(e){return(0,a.memo)(({id:t,...n})=>{let i=e.isInternal?void 0:t;return(0,o.jsx)(eq,{...n,id:i,pathOptions:(0,a.useMemo)(()=>({borderRadius:0,offset:n.pathOptions?.offset}),[n.pathOptions?.offset])})})}eq.displayName="SmoothStepEdge",eY.displayName="SmoothStepEdgeInternal";let e0=eJ({isInternal:!1}),e1=eJ({isInternal:!0});function e2(e){return(0,a.memo)(({id:t,sourceX:n,sourceY:a,targetX:i,targetY:l,label:s,labelStyle:d,labelShowBg:c,labelBgStyle:u,labelBgPadding:f,labelBgBorderRadius:p,style:g,markerEnd:m,markerStart:h,interactionWidth:x})=>{let[y,b,w]=(0,r.getStraightPath)({sourceX:n,sourceY:a,targetX:i,targetY:l}),v=e.isInternal?void 0:t;return(0,o.jsx)(eW,{id:v,path:y,labelX:b,labelY:w,label:s,labelStyle:d,labelShowBg:c,labelBgStyle:u,labelBgPadding:f,labelBgBorderRadius:p,style:g,markerEnd:m,markerStart:h,interactionWidth:x})})}e0.displayName="StepEdge",e1.displayName="StepEdgeInternal";let e3=e2({isInternal:!1}),e5=e2({isInternal:!0});function e4(e){return(0,a.memo)(({id:t,sourceX:n,sourceY:a,targetX:i,targetY:l,sourcePosition:s=r.Position.Bottom,targetPosition:d=r.Position.Top,label:c,labelStyle:u,labelShowBg:f,labelBgStyle:p,labelBgPadding:g,labelBgBorderRadius:m,style:h,markerEnd:x,markerStart:y,pathOptions:b,interactionWidth:w})=>{let[v,C,S]=(0,r.getBezierPath)({sourceX:n,sourceY:a,sourcePosition:s,targetX:i,targetY:l,targetPosition:d,curvature:b?.curvature}),j=e.isInternal?void 0:t;return(0,o.jsx)(eW,{id:j,path:v,labelX:C,labelY:S,label:c,labelStyle:u,labelShowBg:f,labelBgStyle:p,labelBgPadding:g,labelBgBorderRadius:m,style:h,markerEnd:x,markerStart:y,interactionWidth:w})})}e3.displayName="StraightEdge",e5.displayName="StraightEdgeInternal";let e6=e4({isInternal:!1}),e7=e4({isInternal:!0});e6.displayName="BezierEdge",e7.displayName="BezierEdgeInternal";let e8={default:e7,straight:e5,step:e1,smoothstep:eY,simplebezier:eZ},e9={sourceX:null,sourceY:null,targetX:null,targetY:null,sourcePosition:null,targetPosition:null},te="react-flow__edgeupdater";function tt({position:e,centerX:t,centerY:n,radius:a=10,onMouseDown:l,onMouseEnter:s,onMouseOut:d,type:c}){return(0,o.jsx)("circle",{onMouseDown:l,onMouseEnter:s,onMouseOut:d,className:i([te,`${te}-${c}`]),cx:e===r.Position.Left?t-a:e===r.Position.Right?t+a:t,cy:e===r.Position.Top?n-a:e===r.Position.Bottom?n+a:n,r:a,stroke:"transparent",fill:"transparent"})}function tn({isReconnectable:e,reconnectRadius:t,edge:n,sourceX:a,sourceY:i,targetX:l,targetY:s,sourcePosition:d,targetPosition:c,onReconnect:u,onReconnectStart:f,onReconnectEnd:p,setReconnecting:g,setUpdateHover:m}){let h=w(),x=(e,t)=>{if(0!==e.button)return;let{autoPanOnConnect:o,domNode:a,isValidConnection:i,connectionMode:l,connectionRadius:s,lib:d,onConnectStart:c,onConnectEnd:m,cancelConnection:x,nodeLookup:y,rfId:b,panBy:w,updateConnection:v}=h.getState(),C="target"===t.type;r.XYHandle.onPointerDown(e.nativeEvent,{autoPanOnConnect:o,connectionMode:l,connectionRadius:s,domNode:a,handleId:t.id,nodeId:t.nodeId,nodeLookup:y,isTarget:C,edgeUpdaterType:t.type,lib:d,flowId:b,cancelConnection:x,panBy:w,isValidConnection:i,onConnect:e=>u?.(n,e),onConnectStart:(o,a)=>{g(!0),f?.(e,n,t.type),c?.(o,a)},onConnectEnd:m,onReconnectEnd:(e,o)=>{g(!1),p?.(e,n,t.type,o)},updateConnection:v,getTransform:()=>h.getState().transform,getFromHandle:()=>h.getState().connection.fromHandle,dragThreshold:h.getState().connectionDragThreshold,handleDomNode:e.currentTarget})},y=()=>m(!0),b=()=>m(!1);return(0,o.jsxs)(o.Fragment,{children:[(!0===e||"source"===e)&&(0,o.jsx)(tt,{position:d,centerX:a,centerY:i,radius:t,onMouseDown:e=>x(e,{nodeId:n.target,id:n.targetHandle??null,type:"target"}),onMouseEnter:y,onMouseOut:b,type:"source"}),(!0===e||"target"===e)&&(0,o.jsx)(tt,{position:c,centerX:l,centerY:s,radius:t,onMouseDown:e=>x(e,{nodeId:n.source,id:n.sourceHandle??null,type:"source"}),onMouseEnter:y,onMouseOut:b,type:"target"})]})}var to=(0,a.memo)(function({id:e,edgesFocusable:t,edgesReconnectable:n,elementsSelectable:l,onClick:s,onDoubleClick:d,onContextMenu:c,onMouseEnter:u,onMouseMove:f,onMouseLeave:p,reconnectRadius:g,onReconnect:h,onReconnectStart:x,onReconnectEnd:y,rfId:v,edgeTypes:C,noPanClassName:S,onError:_,disableKeyboardA11y:k}){let E=b(t=>t.edgeLookup.get(e)),R=b(e=>e.defaultEdgeOptions),N=(E=R?{...R,...E}:E).type||"default",I=C?.[N]||e8[N];void 0===I&&(_?.("011",r.errorMessages.error011(N)),N="default",I=C?.default||e8.default);let L=!!(E.focusable||t&&void 0===E.focusable),M=void 0!==h&&(E.reconnectable||n&&void 0===E.reconnectable),O=!!(E.selectable||l&&void 0===E.selectable),D=(0,a.useRef)(null),[P,A]=(0,a.useState)(!1),[T,z]=(0,a.useState)(!1),F=w(),{zIndex:V,sourceX:B,sourceY:$,targetX:H,targetY:W,sourcePosition:G,targetPosition:U}=b((0,a.useCallback)(t=>{let n=t.nodeLookup.get(E.source),o=t.nodeLookup.get(E.target);if(!n||!o)return{zIndex:E.zIndex,...e9};let a=(0,r.getEdgePosition)({id:e,sourceNode:n,targetNode:o,sourceHandle:E.sourceHandle||null,targetHandle:E.targetHandle||null,connectionMode:t.connectionMode,onError:_});return{zIndex:(0,r.getElevatedEdgeZIndex)({selected:E.selected,zIndex:E.zIndex,sourceNode:n,targetNode:o,elevateOnSelect:t.elevateEdgesOnSelect,zIndexMode:t.zIndexMode}),...a||e9}},[E.source,E.target,E.sourceHandle,E.targetHandle,E.selected,E.zIndex]),m),X=(0,a.useMemo)(()=>E.markerStart?`url('#${(0,r.getMarkerId)(E.markerStart,v)}')`:void 0,[E.markerStart,v]),K=(0,a.useMemo)(()=>E.markerEnd?`url('#${(0,r.getMarkerId)(E.markerEnd,v)}')`:void 0,[E.markerEnd,v]);if(E.hidden||null===B||null===$||null===H||null===W)return null;let Z=d?e=>{d(e,{...E})}:void 0,Q=c?e=>{c(e,{...E})}:void 0,q=u?e=>{u(e,{...E})}:void 0,Y=f?e=>{f(e,{...E})}:void 0,J=p?e=>{p(e,{...E})}:void 0;return(0,o.jsx)("svg",{style:{zIndex:V},children:(0,o.jsxs)("g",{className:i(["react-flow__edge",`react-flow__edge-${N}`,E.className,S,{selected:E.selected,animated:E.animated,inactive:!O&&!s,updating:P,selectable:O}]),onClick:t=>{let{addSelectedEdges:n,unselectNodesAndEdges:o,multiSelectionActive:a}=F.getState();O&&(F.setState({nodesSelectionActive:!1}),E.selected&&a?(o({nodes:[],edges:[E]}),D.current?.blur()):n([e])),s&&s(t,E)},onDoubleClick:Z,onContextMenu:Q,onMouseEnter:q,onMouseMove:Y,onMouseLeave:J,onKeyDown:L?t=>{if(!k&&r.elementSelectionKeys.includes(t.key)&&O){let{unselectNodesAndEdges:n,addSelectedEdges:o}=F.getState();"Escape"===t.key?(D.current?.blur(),n({edges:[E]})):o([e])}}:void 0,tabIndex:L?0:void 0,role:E.ariaRole??(L?"group":"img"),"aria-roledescription":"edge","data-id":e,"data-testid":`rf__edge-${e}`,"aria-label":null===E.ariaLabel?void 0:E.ariaLabel||`Edge from ${E.source} to ${E.target}`,"aria-describedby":L?`${j}-${v}`:void 0,ref:D,...E.domAttributes,children:[!T&&(0,o.jsx)(I,{id:e,source:E.source,target:E.target,type:E.type,selected:E.selected,animated:E.animated,selectable:O,deletable:E.deletable??!0,label:E.label,labelStyle:E.labelStyle,labelShowBg:E.labelShowBg,labelBgStyle:E.labelBgStyle,labelBgPadding:E.labelBgPadding,labelBgBorderRadius:E.labelBgBorderRadius,sourceX:B,sourceY:$,targetX:H,targetY:W,sourcePosition:G,targetPosition:U,data:E.data,style:E.style,sourceHandleId:E.sourceHandle,targetHandleId:E.targetHandle,markerStart:X,markerEnd:K,pathOptions:"pathOptions"in E?E.pathOptions:void 0,interactionWidth:E.interactionWidth}),M&&(0,o.jsx)(tn,{edge:E,isReconnectable:M,reconnectRadius:g,onReconnect:h,onReconnectStart:x,onReconnectEnd:y,sourceX:B,sourceY:$,targetX:H,targetY:W,sourcePosition:G,targetPosition:U,setUpdateHover:A,setReconnecting:z})]})})});let ta=e=>({edgesFocusable:e.edgesFocusable,edgesReconnectable:e.edgesReconnectable,elementsSelectable:e.elementsSelectable,connectionMode:e.connectionMode,onError:e.onError});function ti({defaultMarkerColor:e,onlyRenderVisibleElements:t,rfId:n,edgeTypes:i,noPanClassName:l,onReconnect:s,onEdgeContextMenu:d,onEdgeMouseEnter:c,onEdgeMouseMove:u,onEdgeMouseLeave:f,onEdgeClick:p,reconnectRadius:g,onEdgeDoubleClick:h,onReconnectStart:x,onReconnectEnd:y,disableKeyboardA11y:w}){let{edgesFocusable:v,edgesReconnectable:C,elementsSelectable:S,onError:j}=b(ta,m),_=b((0,a.useCallback)(e=>{if(!t)return e.edges.map(e=>e.id);let n=[];if(e.width&&e.height)for(let t of e.edges){let o=e.nodeLookup.get(t.source),a=e.nodeLookup.get(t.target);o&&a&&(0,r.isEdgeVisible)({sourceNode:o,targetNode:a,width:e.width,height:e.height,transform:e.transform})&&n.push(t.id)}return n},[t]),m);return(0,o.jsxs)("div",{className:"react-flow__edges",children:[(0,o.jsx)(eB,{defaultColor:e,rfId:n}),_.map(e=>(0,o.jsx)(to,{id:e,edgesFocusable:v,edgesReconnectable:C,elementsSelectable:S,noPanClassName:l,onReconnect:s,onContextMenu:d,onMouseEnter:c,onMouseMove:u,onMouseLeave:f,onClick:p,reconnectRadius:g,onDoubleClick:h,onReconnectStart:x,onReconnectEnd:y,rfId:n,onError:j,edgeTypes:i,disableKeyboardA11y:w},e))]})}ti.displayName="EdgeRenderer";let tr=(0,a.memo)(ti),tl=e=>`translate(${e.transform[0]}px,${e.transform[1]}px) scale(${e.transform[2]})`;function ts({children:e}){let t=b(tl);return(0,o.jsx)("div",{className:"react-flow__viewport xyflow__viewport react-flow__container",style:{transform:t},children:e})}let td=e=>e.panZoom?.syncViewport;function tc(e){return e.connection.inProgress?{...e.connection,to:(0,r.pointToRendererPoint)(e.connection.to,e.transform)}:{...e.connection}}let tu=e=>({nodesConnectable:e.nodesConnectable,isValid:e.connection.isValid,inProgress:e.connection.inProgress,width:e.width,height:e.height});function tf({containerStyle:e,style:t,type:n,component:a}){let{nodesConnectable:l,width:s,height:d,isValid:c,inProgress:u}=b(tu,m);return s&&l&&u?(0,o.jsx)("svg",{style:e,width:s,height:d,className:"react-flow__connectionline react-flow__container",children:(0,o.jsx)("g",{className:i(["react-flow__connection",(0,r.getConnectionStatus)(c)]),children:(0,o.jsx)(tp,{style:t,type:n,CustomComponent:a,isValid:c})})}):null}let tp=({style:e,type:t=r.ConnectionLineType.Bezier,CustomComponent:n,isValid:a})=>{let{inProgress:i,from:l,fromNode:s,fromHandle:d,fromPosition:c,to:u,toNode:f,toHandle:p,toPosition:g,pointer:h}=b(tc,m);if(!i)return;if(n)return(0,o.jsx)(n,{connectionLineType:t,connectionLineStyle:e,fromNode:s,fromHandle:d,fromX:l.x,fromY:l.y,toX:u.x,toY:u.y,fromPosition:c,toPosition:g,connectionStatus:(0,r.getConnectionStatus)(a),toNode:f,toHandle:p,pointer:h});let x="",y={sourceX:l.x,sourceY:l.y,sourcePosition:c,targetX:u.x,targetY:u.y,targetPosition:g};switch(t){case r.ConnectionLineType.Bezier:[x]=(0,r.getBezierPath)(y);break;case r.ConnectionLineType.SimpleBezier:[x]=eU(y);break;case r.ConnectionLineType.Step:[x]=(0,r.getSmoothStepPath)({...y,borderRadius:0});break;case r.ConnectionLineType.SmoothStep:[x]=(0,r.getSmoothStepPath)(y);break;default:[x]=(0,r.getStraightPath)(y)}return(0,o.jsx)("path",{d:x,fill:"none",className:"react-flow__connection-path",style:e})};tp.displayName="ConnectionLine";let tg={};function tm(e=tg){(0,a.useRef)(e),w(),(0,a.useEffect)(()=>{},[e])}function th({nodeTypes:e,edgeTypes:t,onInit:n,onNodeClick:i,onEdgeClick:r,onNodeDoubleClick:l,onEdgeDoubleClick:s,onNodeMouseEnter:d,onNodeMouseMove:c,onNodeMouseLeave:u,onNodeContextMenu:f,onSelectionContextMenu:p,onSelectionStart:g,onSelectionEnd:m,connectionLineType:h,connectionLineStyle:x,connectionLineComponent:y,connectionLineContainerStyle:v,selectionKeyCode:C,selectionOnDrag:S,selectionMode:j,multiSelectionKeyCode:_,panActivationKeyCode:k,zoomActivationKeyCode:E,deleteKeyCode:R,onlyRenderVisibleElements:N,elementsSelectable:I,defaultViewport:L,translateExtent:M,minZoom:O,maxZoom:D,preventScrolling:P,defaultMarkerColor:A,zoomOnScroll:T,zoomOnPinch:z,panOnScroll:F,panOnScrollSpeed:V,panOnScrollMode:B,zoomOnDoubleClick:$,panOnDrag:H,onPaneClick:W,onPaneMouseEnter:G,onPaneMouseMove:U,onPaneMouseLeave:X,onPaneScroll:K,onPaneContextMenu:Z,paneClickDistance:Q,nodeClickDistance:q,onEdgeContextMenu:Y,onEdgeMouseEnter:J,onEdgeMouseMove:ee,onEdgeMouseLeave:et,reconnectRadius:en,onReconnect:eo,onReconnectStart:ea,onReconnectEnd:ei,noDragClassName:el,noWheelClassName:es,noPanClassName:ed,disableKeyboardA11y:ec,nodeExtent:eu,rfId:ef,viewport:ep,onViewportChange:eg}){let em,eh,ex,ey;return tm(e),tm(t),w(),(0,a.useRef)(!1),(0,a.useEffect)(()=>{},[]),em=er(),eh=(0,a.useRef)(!1),(0,a.useEffect)(()=>{!eh.current&&em.viewportInitialized&&n&&(setTimeout(()=>n(em),1),eh.current=!0)},[n,em.viewportInitialized]),ex=b(td),ey=w(),(0,a.useEffect)(()=>{ep&&(ex?.(ep),ey.setState({transform:[ep.x,ep.y,ep.zoom]}))},[ep,ex]),(0,o.jsx)(eM,{onPaneClick:W,onPaneMouseEnter:G,onPaneMouseMove:U,onPaneMouseLeave:X,onPaneContextMenu:Z,onPaneScroll:K,paneClickDistance:Q,deleteKeyCode:R,selectionKeyCode:C,selectionOnDrag:S,selectionMode:j,onSelectionStart:g,onSelectionEnd:m,multiSelectionKeyCode:_,panActivationKeyCode:k,zoomActivationKeyCode:E,elementsSelectable:I,zoomOnScroll:T,zoomOnPinch:z,zoomOnDoubleClick:$,panOnScroll:F,panOnScrollSpeed:V,panOnScrollMode:B,panOnDrag:H,defaultViewport:L,translateExtent:M,minZoom:O,maxZoom:D,onSelectionContextMenu:p,preventScrolling:P,noDragClassName:el,noWheelClassName:es,noPanClassName:ed,disableKeyboardA11y:ec,onViewportChange:eg,isControlledViewport:!!ep,children:(0,o.jsxs)(ts,{children:[(0,o.jsx)(tr,{edgeTypes:t,onEdgeClick:r,onEdgeDoubleClick:s,onReconnect:eo,onReconnectStart:ea,onReconnectEnd:ei,onlyRenderVisibleElements:N,onEdgeContextMenu:Y,onEdgeMouseEnter:J,onEdgeMouseMove:ee,onEdgeMouseLeave:et,reconnectRadius:en,defaultMarkerColor:A,noPanClassName:ed,disableKeyboardA11y:ec,rfId:ef}),(0,o.jsx)(tf,{style:x,type:h,component:y,containerStyle:v}),(0,o.jsx)("div",{className:"react-flow__edgelabel-renderer"}),(0,o.jsx)(eT,{nodeTypes:e,onNodeClick:i,onNodeDoubleClick:l,onNodeMouseEnter:d,onNodeMouseMove:c,onNodeMouseLeave:u,onNodeContextMenu:f,nodeClickDistance:q,onlyRenderVisibleElements:N,noPanClassName:ed,noDragClassName:el,disableKeyboardA11y:ec,nodeExtent:eu,rfId:ef}),(0,o.jsx)("div",{className:"react-flow__viewport-portal"})]})})}th.displayName="GraphView";let tx=(0,a.memo)(th),ty=({nodes:e,edges:t,defaultNodes:n,defaultEdges:o,width:a,height:i,fitView:l,fitViewOptions:s,minZoom:d=.5,maxZoom:c=2,nodeOrigin:u,nodeExtent:f,zIndexMode:p="basic"}={})=>{let g=new Map,m=new Map,h=new Map,x=new Map,y=o??t??[],b=n??e??[],w=u??[0,0],v=f??r.infiniteExtent;(0,r.updateConnectionLookup)(h,x,y);let C=(0,r.adoptUserNodes)(b,g,m,{nodeOrigin:w,nodeExtent:v,zIndexMode:p}),S=[0,0,1];if(l&&a&&i){let e=(0,r.getInternalNodesBounds)(g,{filter:e=>!!((e.width||e.initialWidth)&&(e.height||e.initialHeight))}),{x:t,y:n,zoom:o}=(0,r.getViewportForBounds)(e,a,i,d,c,s?.padding??.1);S=[t,n,o]}return{rfId:"1",width:a??0,height:i??0,transform:S,nodes:b,nodesInitialized:C,nodeLookup:g,parentLookup:m,edges:y,edgeLookup:x,connectionLookup:h,onNodesChange:null,onEdgesChange:null,hasDefaultNodes:void 0!==n,hasDefaultEdges:void 0!==o,panZoom:null,minZoom:d,maxZoom:c,translateExtent:r.infiniteExtent,nodeExtent:v,nodesSelectionActive:!1,userSelectionActive:!1,userSelectionRect:null,connectionMode:r.ConnectionMode.Strict,domNode:null,paneDragging:!1,noPanClassName:"nopan",nodeOrigin:w,nodeDragThreshold:1,connectionDragThreshold:1,snapGrid:[15,15],snapToGrid:!1,nodesDraggable:!0,nodesConnectable:!0,nodesFocusable:!0,edgesFocusable:!0,edgesReconnectable:!0,elementsSelectable:!0,elevateNodesOnSelect:!0,elevateEdgesOnSelect:!0,selectNodesOnDrag:!0,multiSelectionActive:!1,fitViewQueued:l??!1,fitViewOptions:s,fitViewResolver:null,connection:{...r.initialConnection},connectionClickStartHandle:null,connectOnClick:!0,ariaLiveMessage:"",autoPanOnConnect:!0,autoPanOnNodeDrag:!0,autoPanOnNodeFocus:!0,autoPanSpeed:15,connectionRadius:20,onError:r.devWarn,isValidConnection:void 0,onSelectionChangeHandlers:[],lib:"react",debug:!1,ariaLabelConfig:r.defaultAriaLabelConfig,zIndexMode:p,onNodesChangeMiddlewareMap:new Map,onEdgesChangeMiddlewareMap:new Map}};function tb({initialNodes:e,initialEdges:t,defaultNodes:n,defaultEdges:i,initialWidth:l,initialHeight:s,initialMinZoom:d,initialMaxZoom:c,initialFitViewOptions:u,fitView:f,nodeOrigin:p,nodeExtent:m,zIndexMode:h,children:y}){let[b]=(0,a.useState)(()=>(({nodes:e,edges:t,defaultNodes:n,defaultEdges:o,width:a,height:i,fitView:l,fitViewOptions:s,minZoom:d,maxZoom:c,nodeOrigin:u,nodeExtent:f,zIndexMode:p})=>{let m,h;return m=(g,m)=>{async function h(){let{nodeLookup:e,panZoom:t,fitViewOptions:n,fitViewResolver:o,width:a,height:i,minZoom:l,maxZoom:s}=m();t&&(await (0,r.fitViewport)({nodes:e,width:a,height:i,panZoom:t,minZoom:l,maxZoom:s},n),o?.resolve(!0),g({fitViewResolver:null}))}return{...ty({nodes:e,edges:t,width:a,height:i,fitView:l,fitViewOptions:s,minZoom:d,maxZoom:c,nodeOrigin:u,nodeExtent:f,defaultNodes:n,defaultEdges:o,zIndexMode:p}),setNodes:e=>{let{nodeLookup:t,parentLookup:n,nodeOrigin:o,elevateNodesOnSelect:a,fitViewQueued:i,zIndexMode:l}=m(),s=(0,r.adoptUserNodes)(e,t,n,{nodeOrigin:o,nodeExtent:f,elevateNodesOnSelect:a,checkEquality:!0,zIndexMode:l});i&&s?(h(),g({nodes:e,nodesInitialized:s,fitViewQueued:!1,fitViewOptions:void 0})):g({nodes:e,nodesInitialized:s})},setEdges:e=>{let{connectionLookup:t,edgeLookup:n}=m();(0,r.updateConnectionLookup)(t,n,e),g({edges:e})},setDefaultNodesAndEdges:(e,t)=>{if(e){let{setNodes:t}=m();t(e),g({hasDefaultNodes:!0})}if(t){let{setEdges:e}=m();e(t),g({hasDefaultEdges:!0})}},updateNodeInternals:e=>{let{triggerNodeChanges:t,nodeLookup:n,parentLookup:o,domNode:a,nodeOrigin:i,nodeExtent:l,debug:s,fitViewQueued:d,zIndexMode:c}=m(),{changes:u,updatedInternals:f}=(0,r.updateNodeInternals)(e,n,o,a,i,l,c);f&&((0,r.updateAbsolutePositions)(n,o,{nodeOrigin:i,nodeExtent:l,zIndexMode:c}),d?(h(),g({fitViewQueued:!1,fitViewOptions:void 0})):g({}),u?.length>0&&(s&&console.log("React Flow: trigger node changes",u),t?.(u)))},updateNodePositions:(e,t=!1)=>{let n=[],o=[],{nodeLookup:a,triggerNodeChanges:i,connection:l,updateConnection:s,onNodesChangeMiddlewareMap:d}=m();for(let[i,d]of e){let e=a.get(i),c=!!(e?.expandParent&&e?.parentId&&d?.position),u={id:i,type:"position",position:c?{x:Math.max(0,d.position.x),y:Math.max(0,d.position.y)}:d.position,dragging:t};if(e&&l.inProgress&&l.fromNode.id===e.id){let t=(0,r.getHandlePosition)(e,l.fromHandle,r.Position.Left,!0);s({...l,from:t})}c&&e.parentId&&n.push({id:i,parentId:e.parentId,rect:{...d.internals.positionAbsolute,width:d.measured.width??0,height:d.measured.height??0}}),o.push(u)}if(n.length>0){let{parentLookup:e,nodeOrigin:t}=m(),i=(0,r.handleExpandParent)(n,a,e,t);o.push(...i)}for(let e of d.values())o=e(o);i(o)},triggerNodeChanges:e=>{let{onNodesChange:t,setNodes:n,nodes:o,hasDefaultNodes:a,debug:i}=m();e?.length&&(a&&n(K(e,o)),i&&console.log("React Flow: trigger node changes",e),t?.(e))},triggerEdgeChanges:e=>{let{onEdgesChange:t,setEdges:n,edges:o,hasDefaultEdges:a,debug:i}=m();e?.length&&(a&&n(K(e,o)),i&&console.log("React Flow: trigger edge changes",e),t?.(e))},addSelectedNodes:e=>{let{multiSelectionActive:t,edgeLookup:n,nodeLookup:o,triggerNodeChanges:a,triggerEdgeChanges:i}=m();t?a(e.map(e=>Z(e,!0))):(a(Q(o,new Set([...e]),!0)),i(Q(n)))},addSelectedEdges:e=>{let{multiSelectionActive:t,edgeLookup:n,nodeLookup:o,triggerNodeChanges:a,triggerEdgeChanges:i}=m();t?i(e.map(e=>Z(e,!0))):(i(Q(n,new Set([...e]))),a(Q(o,new Set,!0)))},unselectNodesAndEdges:({nodes:e,edges:t}={})=>{let{edges:n,nodes:o,nodeLookup:a,triggerNodeChanges:i,triggerEdgeChanges:r}=m(),l=(e||o).map(e=>{let t=a.get(e.id);return t&&(t.selected=!1),Z(e.id,!1)}),s=(t||n).map(e=>Z(e.id,!1));i(l),r(s)},setMinZoom:e=>{let{panZoom:t,maxZoom:n}=m();t?.setScaleExtent([e,n]),g({minZoom:e})},setMaxZoom:e=>{let{panZoom:t,minZoom:n}=m();t?.setScaleExtent([n,e]),g({maxZoom:e})},setTranslateExtent:e=>{m().panZoom?.setTranslateExtent(e),g({translateExtent:e})},resetSelectedElements:()=>{let{edges:e,nodes:t,triggerNodeChanges:n,triggerEdgeChanges:o,elementsSelectable:a}=m();if(!a)return;let i=t.reduce((e,t)=>t.selected?[...e,Z(t.id,!1)]:e,[]),r=e.reduce((e,t)=>t.selected?[...e,Z(t.id,!1)]:e,[]);n(i),o(r)},setNodeExtent:e=>{let{nodes:t,nodeLookup:n,parentLookup:o,nodeOrigin:a,elevateNodesOnSelect:i,nodeExtent:l,zIndexMode:s}=m();(e[0][0]!==l[0][0]||e[0][1]!==l[0][1]||e[1][0]!==l[1][0]||e[1][1]!==l[1][1])&&((0,r.adoptUserNodes)(t,n,o,{nodeOrigin:a,nodeExtent:e,elevateNodesOnSelect:i,checkEquality:!1,zIndexMode:s}),g({nodeExtent:e}))},panBy:e=>{let{transform:t,width:n,height:o,panZoom:a,translateExtent:i}=m();return(0,r.panBy)({delta:e,panZoom:a,transform:t,translateExtent:i,width:n,height:o})},setCenter:async(e,t,n)=>{let{width:o,height:a,maxZoom:i,panZoom:r}=m();if(!r)return Promise.resolve(!1);let l=void 0!==n?.zoom?n.zoom:i;return await r.setViewport({x:o/2-e*l,y:a/2-t*l,zoom:l},{duration:n?.duration,ease:n?.ease,interpolate:n?.interpolate}),Promise.resolve(!0)},cancelConnection:()=>{g({connection:{...r.initialConnection}})},updateConnection:e=>{g({connection:e})},reset:()=>g({...ty()})}},h=Object.is,m?g(m,h):g})({nodes:e,edges:t,defaultNodes:n,defaultEdges:i,width:l,height:s,fitView:f,minZoom:d,maxZoom:c,fitViewOptions:u,nodeOrigin:p,nodeExtent:m,zIndexMode:h}));return(0,o.jsx)(x,{value:b,children:(0,o.jsx)(ea,{children:y})})}function tw({children:e,nodes:t,edges:n,defaultNodes:i,defaultEdges:r,width:l,height:s,fitView:d,fitViewOptions:c,minZoom:u,maxZoom:f,nodeOrigin:p,nodeExtent:g,zIndexMode:m}){return(0,a.useContext)(h)?(0,o.jsx)(o.Fragment,{children:e}):(0,o.jsx)(tb,{initialNodes:t,initialEdges:n,defaultNodes:i,defaultEdges:r,initialWidth:l,initialHeight:s,fitView:d,initialFitViewOptions:c,initialMinZoom:u,initialMaxZoom:f,nodeOrigin:p,nodeExtent:g,zIndexMode:m,children:e})}let tv={width:"100%",height:"100%",overflow:"hidden",position:"relative",zIndex:0};var tC=ee(function({nodes:e,edges:t,defaultNodes:n,defaultEdges:l,className:s,nodeTypes:d,edgeTypes:c,onNodeClick:u,onEdgeClick:f,onInit:p,onMove:g,onMoveStart:m,onMoveEnd:h,onConnect:x,onConnectStart:y,onConnectEnd:b,onClickConnectStart:w,onClickConnectEnd:v,onNodeMouseEnter:C,onNodeMouseMove:S,onNodeMouseLeave:j,onNodeContextMenu:_,onNodeDoubleClick:k,onNodeDragStart:E,onNodeDrag:N,onNodeDragStop:L,onNodesDelete:M,onEdgesDelete:O,onDelete:D,onSelectionChange:P,onSelectionDragStart:F,onSelectionDrag:V,onSelectionDragStop:B,onSelectionContextMenu:W,onSelectionStart:G,onSelectionEnd:U,onBeforeDelete:X,connectionMode:K,connectionLineType:Z=r.ConnectionLineType.Bezier,connectionLineStyle:Q,connectionLineComponent:q,connectionLineContainerStyle:Y,deleteKeyCode:J="Backspace",selectionKeyCode:ee="Shift",selectionOnDrag:et=!1,selectionMode:en=r.SelectionMode.Full,panActivationKeyCode:eo="Space",multiSelectionKeyCode:ea=(0,r.isMacOs)()?"Meta":"Control",zoomActivationKeyCode:ei=(0,r.isMacOs)()?"Meta":"Control",snapToGrid:er,snapGrid:el,onlyRenderVisibleElements:es=!1,selectNodesOnDrag:ed,nodesDraggable:ec,autoPanOnNodeFocus:eu,nodesConnectable:ef,nodesFocusable:ep,nodeOrigin:eg=T,edgesFocusable:em,edgesReconnectable:eh,elementsSelectable:ex=!0,defaultViewport:ey=z,minZoom:eb=.5,maxZoom:ew=2,translateExtent:ev=r.infiniteExtent,preventScrolling:eC=!0,nodeExtent:eS,defaultMarkerColor:ej="#b1b1b7",zoomOnScroll:e_=!0,zoomOnPinch:ek=!0,panOnScroll:eE=!1,panOnScrollSpeed:eR=.5,panOnScrollMode:eN=r.PanOnScrollMode.Free,zoomOnDoubleClick:eI=!0,panOnDrag:eL=!0,onPaneClick:eM,onPaneMouseEnter:eO,onPaneMouseMove:eD,onPaneMouseLeave:eP,onPaneScroll:eA,onPaneContextMenu:eT,paneClickDistance:ez=1,nodeClickDistance:eF=0,children:eV,onReconnect:eB,onReconnectStart:e$,onReconnectEnd:eH,onEdgeContextMenu:eW,onEdgeDoubleClick:eG,onEdgeMouseEnter:eU,onEdgeMouseMove:eX,onEdgeMouseLeave:eK,reconnectRadius:eZ=10,onNodesChange:eQ,onEdgesChange:eq,noDragClassName:eY="nodrag",noWheelClassName:eJ="nowheel",noPanClassName:e0="nopan",fitView:e1,fitViewOptions:e2,connectOnClick:e3,attributionPosition:e5,proOptions:e4,defaultEdgeOptions:e6,elevateNodesOnSelect:e7=!0,elevateEdgesOnSelect:e8=!1,disableKeyboardA11y:e9=!1,autoPanOnConnect:te,autoPanOnNodeDrag:tt,autoPanSpeed:tn,connectionRadius:to,isValidConnection:ta,onError:ti,style:tr,id:tl,nodeDragThreshold:ts,connectionDragThreshold:td,viewport:tc,onViewportChange:tu,width:tf,height:tp,colorMode:tg="light",debug:tm,onScroll:th,ariaLabelConfig:ty,zIndexMode:tb="basic",...tC},tS){let tj=tl||"1",t_=function(e){let[t,n]=(0,a.useState)("system"===e?null:e);return(0,a.useEffect)(()=>{if("system"!==e)return void n(e);let t=H(),o=()=>n(t?.matches?"dark":"light");return o(),t?.addEventListener("change",o),()=>{t?.removeEventListener("change",o)}},[e]),null!==t?t:H()?.matches?"dark":"light"}(tg),tk=(0,a.useCallback)(e=>{e.currentTarget.scrollTo({top:0,left:0,behavior:"instant"}),th?.(e)},[th]);return(0,o.jsx)("div",{"data-testid":"rf__wrapper",...tC,onScroll:tk,style:{...tr,...tv},ref:tS,className:i(["react-flow",s,t_]),id:tl,role:"application",children:(0,o.jsxs)(tw,{nodes:e,edges:t,width:tf,height:tp,fitView:e1,fitViewOptions:e2,minZoom:eb,maxZoom:ew,nodeOrigin:eg,nodeExtent:eS,zIndexMode:tb,children:[(0,o.jsx)(tx,{onInit:p,onNodeClick:u,onEdgeClick:f,onNodeMouseEnter:C,onNodeMouseMove:S,onNodeMouseLeave:j,onNodeContextMenu:_,onNodeDoubleClick:k,nodeTypes:d,edgeTypes:c,connectionLineType:Z,connectionLineStyle:Q,connectionLineComponent:q,connectionLineContainerStyle:Y,selectionKeyCode:ee,selectionOnDrag:et,selectionMode:en,deleteKeyCode:J,multiSelectionKeyCode:ea,panActivationKeyCode:eo,zoomActivationKeyCode:ei,onlyRenderVisibleElements:es,defaultViewport:ey,translateExtent:ev,minZoom:eb,maxZoom:ew,preventScrolling:eC,zoomOnScroll:e_,zoomOnPinch:ek,zoomOnDoubleClick:eI,panOnScroll:eE,panOnScrollSpeed:eR,panOnScrollMode:eN,panOnDrag:eL,onPaneClick:eM,onPaneMouseEnter:eO,onPaneMouseMove:eD,onPaneMouseLeave:eP,onPaneScroll:eA,onPaneContextMenu:eT,paneClickDistance:ez,nodeClickDistance:eF,onSelectionContextMenu:W,onSelectionStart:G,onSelectionEnd:U,onReconnect:eB,onReconnectStart:e$,onReconnectEnd:eH,onEdgeContextMenu:eW,onEdgeDoubleClick:eG,onEdgeMouseEnter:eU,onEdgeMouseMove:eX,onEdgeMouseLeave:eK,reconnectRadius:eZ,defaultMarkerColor:ej,noDragClassName:eY,noWheelClassName:eJ,noPanClassName:e0,rfId:tj,disableKeyboardA11y:e9,nodeExtent:eS,viewport:tc,onViewportChange:tu}),(0,o.jsx)($,{nodes:e,edges:t,defaultNodes:n,defaultEdges:l,onConnect:x,onConnectStart:y,onConnectEnd:b,onClickConnectStart:w,onClickConnectEnd:v,nodesDraggable:ec,autoPanOnNodeFocus:eu,nodesConnectable:ef,nodesFocusable:ep,edgesFocusable:em,edgesReconnectable:eh,elementsSelectable:ex,elevateNodesOnSelect:e7,elevateEdgesOnSelect:e8,minZoom:eb,maxZoom:ew,nodeExtent:eS,onNodesChange:eQ,onEdgesChange:eq,snapToGrid:er,snapGrid:el,connectionMode:K,translateExtent:ev,connectOnClick:e3,defaultEdgeOptions:e6,fitView:e1,fitViewOptions:e2,onNodesDelete:M,onEdgesDelete:O,onDelete:D,onNodeDragStart:E,onNodeDrag:N,onNodeDragStop:L,onSelectionDrag:V,onSelectionDragStart:F,onSelectionDragStop:B,onMove:g,onMoveStart:m,onMoveEnd:h,noPanClassName:e0,nodeOrigin:eg,rfId:tj,autoPanOnConnect:te,autoPanOnNodeDrag:tt,autoPanSpeed:tn,onError:ti,connectionRadius:to,isValidConnection:ta,selectNodesOnDrag:ed,nodeDragThreshold:ts,connectionDragThreshold:td,onBeforeDelete:X,debug:tm,ariaLabelConfig:ty,zIndexMode:tb}),(0,o.jsx)(A,{onSelectionChange:P}),eV,(0,o.jsx)(I,{proOptions:e4,position:e5}),(0,o.jsx)(R,{rfId:tj,disableKeyboardA11y:e9})]})})});function tS(e){let[t,n]=(0,a.useState)(e),o=(0,a.useCallback)(e=>n(t=>K(e,t)),[]);return[t,n,o]}function tj(e){let[t,n]=(0,a.useState)(e),o=(0,a.useCallback)(e=>n(t=>K(e,t)),[]);return[t,n,o]}function t_({dimensions:e,lineWidth:t,variant:n,className:a}){return(0,o.jsx)("path",{strokeWidth:t,d:`M${e[0]/2} 0 V${e[1]} M0 ${e[1]/2} H${e[0]}`,className:i(["react-flow__background-pattern",n,a])})}function tk({radius:e,className:t}){return(0,o.jsx)("circle",{cx:e,cy:e,r:e,className:i(["react-flow__background-pattern","dots",t])})}r.errorMessages.error014(),(t=n||(n={})).Lines="lines",t.Dots="dots",t.Cross="cross";let tE={[n.Dots]:1,[n.Lines]:1,[n.Cross]:6},tR=e=>({transform:e.transform,patternId:`pattern-${e.rfId}`});function tN({id:e,variant:t=n.Dots,gap:r=20,size:l,lineWidth:s=1,offset:d=0,color:c,bgColor:u,style:f,className:p,patternClassName:g}){let h=(0,a.useRef)(null),{transform:x,patternId:y}=b(tR,m),w=l||tE[t],v=t===n.Dots,C=t===n.Cross,S=Array.isArray(r)?r:[r,r],j=[S[0]*x[2]||1,S[1]*x[2]||1],_=w*x[2],k=Array.isArray(d)?d:[d,d],E=C?[_,_]:j,R=[k[0]*x[2]||1+E[0]/2,k[1]*x[2]||1+E[1]/2],N=`${y}${e||""}`;return(0,o.jsxs)("svg",{className:i(["react-flow__background",p]),style:{...f,...ed,"--xy-background-color-props":u,"--xy-background-pattern-color-props":c},ref:h,"data-testid":"rf__background",children:[(0,o.jsx)("pattern",{id:N,x:x[0]%j[0],y:x[1]%j[1],width:j[0],height:j[1],patternUnits:"userSpaceOnUse",patternTransform:`translate(-${R[0]},-${R[1]})`,children:v?(0,o.jsx)(tk,{radius:_/2,className:g}):(0,o.jsx)(t_,{dimensions:E,lineWidth:s,variant:t,className:g})}),(0,o.jsx)("rect",{x:"0",y:"0",width:"100%",height:"100%",fill:`url(#${N})`})]})}tN.displayName="Background";let tI=(0,a.memo)(tN);function tL(){return(0,o.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32",children:(0,o.jsx)("path",{d:"M32 18.133H18.133V32h-4.266V18.133H0v-4.266h13.867V0h4.266v13.867H32z"})})}function tM(){return(0,o.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 5",children:(0,o.jsx)("path",{d:"M0 0h32v4.2H0z"})})}function tO(){return(0,o.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 30",children:(0,o.jsx)("path",{d:"M3.692 4.63c0-.53.4-.938.939-.938h5.215V0H4.708C2.13 0 0 2.054 0 4.63v5.216h3.692V4.631zM27.354 0h-5.2v3.692h5.17c.53 0 .984.4.984.939v5.215H32V4.631A4.624 4.624 0 0027.354 0zm.954 24.83c0 .532-.4.94-.939.94h-5.215v3.768h5.215c2.577 0 4.631-2.13 4.631-4.707v-5.139h-3.692v5.139zm-23.677.94c-.531 0-.939-.4-.939-.94v-5.138H0v5.139c0 2.577 2.13 4.707 4.708 4.707h5.138V25.77H4.631z"})})}function tD(){return(0,o.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32",children:(0,o.jsx)("path",{d:"M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0 8 0 4.571 3.429 4.571 7.619v3.048H3.048A3.056 3.056 0 000 13.714v15.238A3.056 3.056 0 003.048 32h18.285a3.056 3.056 0 003.048-3.048V13.714a3.056 3.056 0 00-3.048-3.047zM12.19 24.533a3.056 3.056 0 01-3.047-3.047 3.056 3.056 0 013.047-3.048 3.056 3.056 0 013.048 3.048 3.056 3.056 0 01-3.048 3.047zm4.724-13.866H7.467V7.619c0-2.59 2.133-4.724 4.723-4.724 2.591 0 4.724 2.133 4.724 4.724v3.048z"})})}function tP(){return(0,o.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32",children:(0,o.jsx)("path",{d:"M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0c-4.114 1.828-1.37 2.133.305 2.438 1.676.305 4.42 2.59 4.42 5.181v3.048H3.047A3.056 3.056 0 000 13.714v15.238A3.056 3.056 0 003.048 32h18.285a3.056 3.056 0 003.048-3.048V13.714a3.056 3.056 0 00-3.048-3.047zM12.19 24.533a3.056 3.056 0 01-3.047-3.047 3.056 3.056 0 013.047-3.048 3.056 3.056 0 013.048 3.048 3.056 3.056 0 01-3.048 3.047z"})})}function tA({children:e,className:t,...n}){return(0,o.jsx)("button",{type:"button",className:i(["react-flow__controls-button",t]),...n,children:e})}let tT=e=>({isInteractive:e.nodesDraggable||e.nodesConnectable||e.elementsSelectable,minZoomReached:e.transform[2]<=e.minZoom,maxZoomReached:e.transform[2]>=e.maxZoom,ariaLabelConfig:e.ariaLabelConfig});function tz({style:e,showZoom:t=!0,showFitView:n=!0,showInteractive:a=!0,fitViewOptions:r,onZoomIn:l,onZoomOut:s,onFitView:d,onInteractiveChange:c,className:u,children:f,position:p="bottom-left",orientation:g="vertical","aria-label":h}){let x=w(),{isInteractive:y,minZoomReached:v,maxZoomReached:C,ariaLabelConfig:S}=b(tT,m),{zoomIn:j,zoomOut:_,fitView:k}=er();return(0,o.jsxs)(N,{className:i(["react-flow__controls","horizontal"===g?"horizontal":"vertical",u]),position:p,style:e,"data-testid":"rf__controls","aria-label":h??S["controls.ariaLabel"],children:[t&&(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(tA,{onClick:()=>{j(),l?.()},className:"react-flow__controls-zoomin",title:S["controls.zoomIn.ariaLabel"],"aria-label":S["controls.zoomIn.ariaLabel"],disabled:C,children:(0,o.jsx)(tL,{})}),(0,o.jsx)(tA,{onClick:()=>{_(),s?.()},className:"react-flow__controls-zoomout",title:S["controls.zoomOut.ariaLabel"],"aria-label":S["controls.zoomOut.ariaLabel"],disabled:v,children:(0,o.jsx)(tM,{})})]}),n&&(0,o.jsx)(tA,{className:"react-flow__controls-fitview",onClick:()=>{k(r),d?.()},title:S["controls.fitView.ariaLabel"],"aria-label":S["controls.fitView.ariaLabel"],children:(0,o.jsx)(tO,{})}),a&&(0,o.jsx)(tA,{className:"react-flow__controls-interactive",onClick:()=>{x.setState({nodesDraggable:!y,nodesConnectable:!y,elementsSelectable:!y}),c?.(!y)},title:S["controls.interactive.ariaLabel"],"aria-label":S["controls.interactive.ariaLabel"],children:y?(0,o.jsx)(tP,{}):(0,o.jsx)(tD,{})}),f]})}tz.displayName="Controls";let tF=(0,a.memo)(tz),tV=(0,a.memo)(function({id:e,x:t,y:n,width:a,height:r,style:l,color:s,strokeColor:d,strokeWidth:c,className:u,borderRadius:f,shapeRendering:p,selected:g,onClick:m}){let{background:h,backgroundColor:x}=l||{};return(0,o.jsx)("rect",{className:i(["react-flow__minimap-node",{selected:g},u]),x:t,y:n,rx:f,ry:f,width:a,height:r,style:{fill:s||h||x,stroke:d,strokeWidth:c},shapeRendering:p,onClick:m?t=>m(t,e):void 0})}),tB=e=>e.nodes.map(e=>e.id),t$=e=>e instanceof Function?e:()=>e,tH=(0,a.memo)(function({id:e,nodeColorFunc:t,nodeStrokeColorFunc:n,nodeClassNameFunc:a,nodeBorderRadius:i,nodeStrokeWidth:l,shapeRendering:s,NodeComponent:d,onClick:c}){let{node:u,x:f,y:p,width:g,height:h}=b(t=>{let{internals:n}=t.nodeLookup.get(e),o=n.userNode,{x:a,y:i}=n.positionAbsolute,{width:l,height:s}=(0,r.getNodeDimensions)(o);return{node:o,x:a,y:i,width:l,height:s}},m);return u&&!u.hidden&&(0,r.nodeHasDimensions)(u)?(0,o.jsx)(d,{x:f,y:p,width:g,height:h,style:u.style,selected:!!u.selected,className:a(u),color:t(u),borderRadius:i,strokeColor:n(u),strokeWidth:l,shapeRendering:s,onClick:c,id:u.id}):null});var tW=(0,a.memo)(function({nodeStrokeColor:e,nodeColor:t,nodeClassName:n="",nodeBorderRadius:a=5,nodeStrokeWidth:i,nodeComponent:r=tV,onClick:l}){let s=b(tB,m),d=t$(t),c=t$(e),u=t$(n),f="undefined"==typeof window||window.chrome?"crispEdges":"geometricPrecision";return(0,o.jsx)(o.Fragment,{children:s.map(e=>(0,o.jsx)(tH,{id:e,nodeColorFunc:d,nodeStrokeColorFunc:c,nodeClassNameFunc:u,nodeBorderRadius:a,nodeStrokeWidth:i,NodeComponent:r,onClick:l,shapeRendering:f},e))})});let tG=e=>!e.hidden,tU=e=>{let t={x:-e.transform[0]/e.transform[2],y:-e.transform[1]/e.transform[2],width:e.width/e.transform[2],height:e.height/e.transform[2]};return{viewBB:t,boundingRect:e.nodeLookup.size>0?(0,r.getBoundsOfRects)((0,r.getInternalNodesBounds)(e.nodeLookup,{filter:tG}),t):t,rfId:e.rfId,panZoom:e.panZoom,translateExtent:e.translateExtent,flowWidth:e.width,flowHeight:e.height,ariaLabelConfig:e.ariaLabelConfig}};function tX({style:e,className:t,nodeStrokeColor:n,nodeColor:l,nodeClassName:s="",nodeBorderRadius:d=5,nodeStrokeWidth:c,nodeComponent:u,bgColor:f,maskColor:p,maskStrokeColor:g,maskStrokeWidth:h,position:x="bottom-right",onClick:y,onNodeClick:v,pannable:C=!1,zoomable:S=!1,ariaLabel:j,inversePan:_,zoomStep:k=1,offsetScale:E=5}){let R=w(),I=(0,a.useRef)(null),{boundingRect:L,viewBB:M,rfId:O,panZoom:D,translateExtent:P,flowWidth:A,flowHeight:T,ariaLabelConfig:z}=b(tU,m),F=e?.width??200,V=e?.height??150,B=Math.max(L.width/F,L.height/V),$=B*F,H=B*V,W=E*B,G=L.x-($-L.width)/2-W,U=L.y-(H-L.height)/2-W,X=$+2*W,K=H+2*W,Z=`react-flow__minimap-desc-${O}`,Q=(0,a.useRef)(0),q=(0,a.useRef)();Q.current=B,(0,a.useEffect)(()=>{if(I.current&&D)return q.current=(0,r.XYMinimap)({domNode:I.current,panZoom:D,getTransform:()=>R.getState().transform,getViewScale:()=>Q.current}),()=>{q.current?.destroy()}},[D]),(0,a.useEffect)(()=>{q.current?.update({translateExtent:P,width:A,height:T,inversePan:_,pannable:C,zoomStep:k,zoomable:S})},[C,S,_,k,P,A,T]);let Y=y?e=>{let[t,n]=q.current?.pointer(e)||[0,0];y(e,{x:t,y:n})}:void 0,J=v?(0,a.useCallback)((e,t)=>{v(e,R.getState().nodeLookup.get(t).internals.userNode)},[]):void 0,ee=j??z["minimap.ariaLabel"];return(0,o.jsx)(N,{position:x,style:{...e,"--xy-minimap-background-color-props":"string"==typeof f?f:void 0,"--xy-minimap-mask-background-color-props":"string"==typeof p?p:void 0,"--xy-minimap-mask-stroke-color-props":"string"==typeof g?g:void 0,"--xy-minimap-mask-stroke-width-props":"number"==typeof h?h*B:void 0,"--xy-minimap-node-background-color-props":"string"==typeof l?l:void 0,"--xy-minimap-node-stroke-color-props":"string"==typeof n?n:void 0,"--xy-minimap-node-stroke-width-props":"number"==typeof c?c:void 0},className:i(["react-flow__minimap",t]),"data-testid":"rf__minimap",children:(0,o.jsxs)("svg",{width:F,height:V,viewBox:`${G} ${U} ${X} ${K}`,className:"react-flow__minimap-svg",role:"img","aria-labelledby":Z,ref:I,onClick:Y,children:[ee&&(0,o.jsx)("title",{id:Z,children:ee}),(0,o.jsx)(tW,{onClick:J,nodeColor:l,nodeStrokeColor:n,nodeBorderRadius:d,nodeClassName:s,nodeStrokeWidth:c,nodeComponent:u}),(0,o.jsx)("path",{className:"react-flow__minimap-mask",d:`M${G-W},${U-W}h${X+2*W}v${K+2*W}h${-X-2*W}z
2
- M${M.x},${M.y}h${M.width}v${M.height}h${-M.width}z`,fillRule:"evenodd",pointerEvents:"none"})]})})}tX.displayName="MiniMap";let tK=(0,a.memo)(tX),tZ={[r.ResizeControlVariant.Line]:"right",[r.ResizeControlVariant.Handle]:"bottom-right"};(0,a.memo)(function({nodeId:e,position:t,variant:n=r.ResizeControlVariant.Handle,className:l,style:s,children:d,color:c,minWidth:u=10,minHeight:f=10,maxWidth:p=Number.MAX_VALUE,maxHeight:g=Number.MAX_VALUE,keepAspectRatio:h=!1,resizeDirection:x,autoScale:y=!0,shouldResize:v,onResizeStart:C,onResize:S,onResizeEnd:j}){let _,k=eC(),E="string"==typeof e?e:k,R=w(),N=(0,a.useRef)(null),I=n===r.ResizeControlVariant.Handle,L=b((0,a.useCallback)((_=I&&y,e=>_?`${Math.max(1/e.transform[2],1)}`:void 0),[I,y]),m),M=(0,a.useRef)(null),O=t??tZ[n];(0,a.useEffect)(()=>{if(N.current&&E)return M.current||(M.current=(0,r.XYResizer)({domNode:N.current,nodeId:E,getStoreItems:()=>{let{nodeLookup:e,transform:t,snapGrid:n,snapToGrid:o,nodeOrigin:a,domNode:i}=R.getState();return{nodeLookup:e,transform:t,snapGrid:n,snapToGrid:o,nodeOrigin:a,paneDomNode:i}},onChange:(e,t)=>{let{triggerNodeChanges:n,nodeLookup:o,parentLookup:a,nodeOrigin:i}=R.getState(),l=[],s={x:e.x,y:e.y},d=o.get(E);if(d&&d.expandParent&&d.parentId){let t=d.origin??i,n=e.width??d.measured.width??0,c=e.height??d.measured.height??0,u={id:d.id,parentId:d.parentId,rect:{width:n,height:c,...(0,r.evaluateAbsolutePosition)({x:e.x??d.position.x,y:e.y??d.position.y},{width:n,height:c},d.parentId,o,t)}},f=(0,r.handleExpandParent)([u],o,a,i);l.push(...f),s.x=e.x?Math.max(t[0]*n,e.x):void 0,s.y=e.y?Math.max(t[1]*c,e.y):void 0}if(void 0!==s.x&&void 0!==s.y){let e={id:E,type:"position",position:{...s}};l.push(e)}if(void 0!==e.width&&void 0!==e.height){let t={id:E,type:"dimensions",resizing:!0,setAttributes:!x||("horizontal"===x?"width":"height"),dimensions:{width:e.width,height:e.height}};l.push(t)}for(let e of t){let t={...e,type:"position"};l.push(t)}n(l)},onEnd:({width:e,height:t})=>{R.getState().triggerNodeChanges([{id:E,type:"dimensions",resizing:!1,dimensions:{width:e,height:t}}])}})),M.current.update({controlPosition:O,boundaries:{minWidth:u,minHeight:f,maxWidth:p,maxHeight:g},keepAspectRatio:h,resizeDirection:x,onResizeStart:C,onResize:S,onResizeEnd:j,shouldResize:v}),()=>{M.current?.destroy()}},[O,u,f,p,g,h,C,S,j,v]);let D=O.split("-");return(0,o.jsx)("div",{className:i(["react-flow__resize-control","nodrag",...D,n,l]),ref:N,style:{...s,scale:L,...c&&{[I?"backgroundColor":"borderColor"]:c}},children:d})}),e.s(["Background",()=>tI,"BackgroundVariant",()=>n,"BaseEdge",()=>eW,"ControlButton",()=>tA,"Controls",()=>tF,"Handle",()=>ej,"MiniMap",()=>tK,"Panel",()=>N,"ReactFlow",()=>tC,"ReactFlowProvider",()=>tb,"useEdgesState",()=>tj,"useNodesState",()=>tS,"useReactFlow",()=>er,"useStore",()=>b],918132);var tQ=e.i(705443);async function tq(e,t=tQ.axiosClient){return(await t.post("/api/cll",e)).data}async function tY(e,t=tQ.axiosClient){return(await t.post("/api/checks",{type:"lineage_diff",params:{},view_options:e})).data}async function tJ(e,t=tQ.axiosClient){return(await t.post("/api/checks",{type:"schema_diff",params:e})).data}async function t0(e,t=tQ.axiosClient){return(await t.post("/api/select",e)).data}e.s(["getCll",()=>tq],953131),e.s(["createLineageDiffCheck",()=>tY],323194),e.s(["createSchemaDiffCheck",()=>tJ],987923),e.s(["select",()=>t0],2216);var t1=e.i(811347),t2=e.i(242092),t3=e.i(960247);function t5(){let e=(0,t1.useTheme)(),{resolvedTheme:t}=(0,t2.useTheme)(),[n,o]=(0,a.useState)(!1);(0,a.useEffect)(()=>{o(!0)},[]);let i=!!n&&"dark"===t;return{isDark:i,theme:e,background:{default:i?t3.colors.neutral[900]:t3.colors.white,paper:i?t3.colors.neutral[800]:t3.colors.white,subtle:i?t3.colors.neutral[800]:t3.colors.neutral[50],emphasized:i?t3.colors.neutral[700]:t3.colors.neutral[100]},text:{primary:i?t3.colors.neutral[50]:t3.colors.neutral[900],secondary:i?t3.colors.neutral[400]:t3.colors.neutral[600],disabled:i?t3.colors.neutral[500]:t3.colors.neutral[400],inverted:i?t3.colors.neutral[900]:t3.colors.neutral[50]},border:{light:i?t3.colors.neutral[700]:t3.colors.neutral[200],default:i?t3.colors.neutral[600]:t3.colors.neutral[300],strong:i?t3.colors.neutral[500]:t3.colors.neutral[400]},status:{added:{bg:i?t3.colors.green[900]:t3.colors.green[100],text:i?t3.colors.neutral[50]:t3.colors.neutral[900]},removed:{bg:i?t3.colors.red[950]:t3.colors.red[200],text:i?t3.colors.neutral[50]:t3.colors.neutral[900]},modified:{bg:i?t3.colors.yellow[900]:t3.colors.amber[100],text:i?t3.colors.neutral[50]:t3.colors.neutral[900]}},interactive:{hover:i?t3.colors.neutral[700]:t3.colors.neutral[100],active:i?t3.colors.neutral[600]:t3.colors.neutral[200],focus:t3.colors.iochmara[500]}}}e.s(["useThemeColors",()=>t5],703351);var t4=e.i(324066),t6=e.i(76130),t7=e.i(610985),t8=e.i(336277),t9=e.i(187726);function ne({onClose:e}){let{cancel:t,actionState:n}=(0,t9.useLineageViewContextSafe)();return(0,o.jsx)(t4.default,{sx:{bgcolor:"background.paper",borderRadius:1,boxShadow:6},children:(0,o.jsxs)(t8.default,{direction:"row",divider:(0,o.jsx)(t7.default,{orientation:"vertical",flexItem:!0}),spacing:2,sx:{p:"5px 15px",mt:2},children:[(0,o.jsxs)(t4.default,{sx:{fontSize:"10pt"},children:["Progress: ","per_node"===n.mode?`${n.completed} / ${n.total}`:n.currentRun?.progress?.percentage?`${100*n.currentRun.progress.percentage}%`:"completed"===n.status?"100%":"0%"," ","canceled"===n.status?" (canceled)":""]}),"running"===n.status||"canceling"===n.status?(0,o.jsx)(t6.default,{size:"small",variant:"outlined",onClick:t,disabled:"canceling"===n.status,children:"canceling"===n.status?"Canceling":"Cancel"}):(0,o.jsx)(t8.default,{direction:"row",children:(0,o.jsx)(t6.default,{size:"small",variant:"outlined",onClick:e,children:"Close"})})]})})}e.s(["ActionControl",()=>ne],525519);var nt=e.i(197068),nn=e.i(569210),no=e.i(65086),na=e.i(224378);let ni=na.VscDiffAdded,nr=na.VscDiffRemoved,nl=na.VscDiffModified;function ns(e,t){if("added"===e){let e=String((0,t3.token)("colors.green.solid")),n=t?String((0,t3.token)("colors.green.muted")):String((0,t3.token)("colors.green.subtle"));return{color:e,hexColor:e,backgroundColor:n,hexBackgroundColor:n,icon:ni}}if("removed"===e){let e=String((0,t3.token)("colors.red.solid")),n=t?String((0,t3.token)("colors.red.muted")):String((0,t3.token)("colors.red.subtle"));return{color:e,hexColor:e,backgroundColor:n,hexBackgroundColor:n,icon:nr}}if("modified"===e){let e=String((0,t3.token)("colors.amber.emphasized")),n=t?String((0,t3.token)("colors.amber.emphasized")):String((0,t3.token)("colors.amber.subtle"));return{color:e,hexColor:e,backgroundColor:n,hexBackgroundColor:n,icon:nl}}let n=String((0,t3.token)("colors.gray.focusRing")),o=t?"#404040":"#ffffff";return{color:n,hexColor:n,backgroundColor:o,hexBackgroundColor:o,icon:void 0}}function nd(e){if("model"===e)return{color:String((0,t3.token)("colors.cyan.subtle")),icon:nn.FaCube};if("metric"===e)return{color:String((0,t3.token)("colors.rose.subtle")),icon:no.FaChartSimple};if("source"===e)return{color:String((0,t3.token)("colors.green.muted")),icon:nn.FaDatabase};if("exposure"===e)return{color:String((0,t3.token)("colors.rose.subtle")),icon:no.FaGauge};if("semantic_model"===e)return{color:String((0,t3.token)("colors.rose.focusRing")),icon:no.FaCircleNodes};else if("seed"===e)return{color:String((0,t3.token)("colors.green.emphasized")),icon:nn.FaSeedling};else if("snapshot"===e)return{color:String((0,t3.token)("colors.green.emphasized")),icon:nn.FaCamera};else return{color:"inherit",icon:void 0}}function nc(){return(0,o.jsx)(t4.default,{sx:{bgcolor:"background.paper",padding:"12px",border:"1px solid",borderColor:"divider",fontSize:"0.875rem"},children:Object.entries({added:["Added","Added resource"],removed:["Removed","Removed resource"],modified:["Modified","Modified resource"]}).map(([e,[t,n]])=>{let{icon:a,color:i}=ns(e);return(0,o.jsx)(nt.default,{title:n,placement:"right",children:(0,o.jsxs)(t4.default,{sx:{display:"flex",alignItems:"center",gap:"6px",mb:"2px"},children:[a&&(0,o.jsx)(t4.default,{component:a,sx:{color:i}})," ",t]})},e)})})}e.s(["getIconForChangeStatus",()=>ns,"getIconForResourceType",()=>nd],248859),e.s(["ChangeStatusLegend",()=>nc],88515);var nu=e.i(924011),nf=e.i(73371);e.i(939338),e.i(359143);var np=e.i(427938),ng=e.i(388797),nm=e.i(916955),nh=e.i(286568);let nx=()=>{let{lineageGraph:e}=(0,nm.useLineageGraphContext)(),{centerNode:t,viewOptions:n}=(0,t9.useLineageViewContextSafe)(),a=n.column_level_lineage;if(!e)return(0,o.jsx)(o.Fragment,{});if(!a)return"Default View";if(void 0===a.node_id)return(0,o.jsx)(np.default,{component:"span",children:"Impact Radius for All Changed Models"});let i=a.node_id in e.nodes?e.nodes[a.node_id].data.name:a.node_id;if(a.column){let e=`${a.node_id}_${a.column}`;return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsxs)(np.default,{component:"span",sx:{mr:"5px"},children:["Column Lineage for"," "]}),(0,o.jsxs)(t4.default,{component:"code",onClick:()=>{t(e)},sx:e=>({cursor:"pointer",fontFamily:"monospace",bgcolor:"dark"===e.palette.mode?"grey.700":"grey.100",px:.5,borderRadius:.5}),children:[i,".",a.column]})]})}{let e=a.node_id;return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(np.default,{component:"span",sx:{mr:"5px"},children:"Impact Radius for"}),(0,o.jsx)(t4.default,{component:"code",onClick:()=>{t(e)},sx:e=>({cursor:"pointer",fontFamily:"monospace",bgcolor:"dark"===e.palette.mode?"grey.700":"grey.100",px:.5,borderRadius:.5}),children:i})]})}};e.s(["ColumnLevelLineageControl",0,({action:e})=>{let{showColumnLevelLineage:t,resetColumnLevelLineage:n,interactive:a,viewOptions:i}=(0,t9.useLineageViewContextSafe)(),{data:r}=(0,nh.useRecceServerFlag)(),l=r?.single_env_onboarding??!1,{lineageGraph:s}=(0,nm.useLineageGraphContext)(),d=!s?.catalogMetadata.current;return(0,o.jsxs)(t8.default,{direction:"row",spacing:"5px",children:[!l&&(0,o.jsx)(t4.default,{sx:{borderRadius:1,boxShadow:3},children:(0,o.jsx)(nt.default,{enterDelay:50,title:d?"Please provide catalog.json to enable Impact Radius":"",placement:"top",children:(0,o.jsx)("span",{children:(0,o.jsx)(t6.default,{size:"small",variant:"outlined",color:"neutral",sx:{whiteSpace:"nowrap",display:"inline-flex",bgcolor:"background.paper"},disabled:!a||d,startIcon:(0,o.jsx)(nn.FaRegDotCircle,{}),onClick:()=>{t({no_upstream:!0,change_analysis:!0})},children:"Impact Radius"})})})}),i.column_level_lineage&&(0,o.jsxs)(t8.default,{direction:"row",alignItems:"center",sx:{borderRadius:1,boxShadow:3,border:"1px solid",borderColor:"divider",bgcolor:"background.paper",fontSize:"0.8rem",p:"0 0.625rem"},children:[(0,o.jsx)(nx,{}),e.isError&&(0,o.jsx)(nt.default,{title:`Error: ${e.error.message}`,placement:"bottom",children:(0,o.jsx)(np.default,{component:"span",sx:{color:"error.main",ml:"2px",display:"inline-flex",alignItems:"center"},children:(0,o.jsx)(t4.default,{component:ng.PiInfo,sx:{color:"error.main",fontSize:"14px"}})})}),e.isPending?(0,o.jsx)(nu.default,{size:12,sx:{ml:"2px"}}):(0,o.jsx)(nf.default,{size:"small",sx:{ml:"2px"},"aria-label":"Reset Column Level Lineage",onClick:()=>{n()},children:(0,o.jsx)(ng.PiX,{size:"10px"})})]})]})}],166598);var ny=e.i(325782),nb=e.i(523043);let nw=({changeStatus:e})=>{if(!e)return(0,o.jsx)(o.Fragment,{});let{color:t,icon:n}=ns(e);return n?(0,o.jsx)(t4.default,{component:n,sx:{fontSize:14,display:"inline-flex",color:t}}):(0,o.jsx)(o.Fragment,{})},nv=({transformationType:e,legend:t})=>{let n="U",a="error";return("passthrough"===e?(n="P",a="default"):"renamed"===e?(n="R",a="warning"):"derived"===e?(n="D",a="warning"):"source"===e?(n="S",a="info"):(n="U",a="error"),e)?(0,o.jsx)(ny.default,{label:n,size:"small",color:a,sx:{fontSize:"8pt",height:18,minWidth:18,"& .MuiChip-label":{px:.5}}}):(0,o.jsx)(o.Fragment,{})};function nC(e){let{id:t,data:n}=e,{id:i}=n.node,{column:l,type:s,transformationType:d,changeStatus:c}=n,u=b(e=>e.transform[2]>.3),{background:f,text:p,border:g}=t5(),{viewOptions:m,showContextMenu:h,isNodeHighlighted:x,isNodeShowingChangeAnalysis:y}=(0,t9.useLineageViewContextSafe)(),w=m.column_level_lineage?.node_id,v=l===m.column_level_lineage?.column&&i===w,[C,S]=a.default.useState(!1),j=x(t),_=y(i);return u?(0,o.jsxs)(t4.default,{sx:{display:"flex",width:280,padding:"0px 10px",border:"1px solid",borderColor:g.default,backgroundColor:v?f.subtle:"inherit","&:hover":{backgroundColor:f.subtle},filter:j?"none":"opacity(0.2) grayscale(50%)",cursor:"pointer"},onMouseEnter:()=>{S(!0)},onMouseLeave:()=>{S(!1)},children:[(0,o.jsxs)(t4.default,{sx:{display:"flex",fontSize:"11px",color:p.primary,width:"100%",gap:"3px",alignItems:"center",height:`${nb.COLUMN_HEIGHT-1}px`},children:[_&&c?(0,o.jsx)(nw,{changeStatus:c}):(0,o.jsx)(nv,{transformationType:d}),(0,o.jsx)(t4.default,{sx:{height:`${nb.COLUMN_HEIGHT+1}px`},children:l}),(0,o.jsx)(t4.default,{sx:{flexGrow:1}}),C?(0,o.jsx)(t4.default,{component:na.VscKebabVertical,sx:{fontSize:14,display:"inline-flex",cursor:"pointer","&:hover":{color:p.primary}},onClick:t=>{t.preventDefault(),t.stopPropagation(),h(t,e)}}):(0,o.jsx)(t4.default,{sx:{height:`${nb.COLUMN_HEIGHT+1} px`},children:s})]}),(0,o.jsx)(ej,{type:"target",position:r.Position.Left,isConnectable:!1,style:{left:0,visibility:"hidden"}}),(0,o.jsx)(ej,{type:"source",position:r.Position.Right,isConnectable:!1,style:{right:0,visibility:"hidden"}})]}):(0,o.jsx)(o.Fragment,{})}function nS(){return(0,o.jsx)(t4.default,{sx:{bgcolor:"background.paper",padding:"12px",border:"1px solid",borderColor:"divider",fontSize:"0.875rem"},children:Object.entries({passthrough:["Pass Through","The column is directly selected from the upstream table."],renamed:["Renamed","The column is selected from the upstream table but with a different name."],derived:["Derived","The column is created through transformations applied to upstream columns, such as calculations, conditions, functions, or aggregations."],source:["Source","The column is not derived from any upstream data. It may originate from a seed/source node, literal value, or data generation function."],unknown:["Unknown","We have no information about the transformation type. This could be due to a parse error, or other unknown reason."]}).map(([e,[t,n]])=>(0,o.jsx)(nt.default,{title:n,placement:"right",children:(0,o.jsxs)(t4.default,{sx:{display:"flex",alignItems:"center",gap:"6px",mb:"2px"},children:[(0,o.jsx)(nv,{legend:!0,transformationType:e})," ",t]})},e))})}function nj(e){let{source:t,target:n,sourceX:a,sourceY:i,targetX:l,targetY:s,sourcePosition:d,targetPosition:c,style:u={},markerEnd:f,data:p}=e,g={...u},{isEdgeHighlighted:m}=(0,t9.useLineageViewContextSafe)();p?.changeStatus&&(g.stroke=ns(p.changeStatus).hexColor,g.strokeDasharray="5"),m(t,n)||(g.filter="opacity(0.2) grayscale(50%)");let[h]=(0,r.getBezierPath)({sourceX:a,sourceY:i,sourcePosition:d,targetX:l,targetY:s,targetPosition:c});return(0,o.jsx)(o.Fragment,{children:(0,o.jsx)(eW,{path:h,markerEnd:f,style:{...g,...u}})})}e.s(["GraphColumnNode",()=>nC,"TransformationType",0,nv],904451),e.s(["ColumnLevelLineageLegend",()=>nS],632951),e.s(["default",()=>nj],676502);var n_=e.i(652058),nk=e.i(372230);function nE(e,t){if(!e||!t)return;let n=Object.keys(e),o=Object.keys(t);if(n.length!==o.length)return!0;for(let e=0;e<n.length;e++)if(n[e]!==o[e])return!0;for(let n of o)if(!e[n]||e[n].type!==t[n]?.type)return!0;return!1}e.s(["isSchemaChanged",()=>nE],163669);var nR=e.i(862754),nN=e.i(7284),nI=e.i(778024),nL=e.i(51071),nM=e.i(446547),nO=e.i(73205),nD=e.i(519273),nP=e.i(435983),nA=e.i(446519);function nT(e){return(0,nA.default)("MuiSkeleton",e)}(0,nP.default)("MuiSkeleton",["root","text","rectangular","rounded","circular","pulse","wave","withChildren","fitContent","heightAuto"]);let nz=nL.keyframes`
3
- 0% {
4
- opacity: 1;
5
- }
6
-
7
- 50% {
8
- opacity: 0.4;
9
- }
10
-
11
- 100% {
12
- opacity: 1;
13
- }
14
- `,nF=nL.keyframes`
15
- 0% {
16
- transform: translateX(-100%);
17
- }
18
-
19
- 50% {
20
- /* +0.5s of delay between each loop */
21
- transform: translateX(100%);
22
- }
23
-
24
- 100% {
25
- transform: translateX(100%);
26
- }
27
- `,nV="string"!=typeof nz?nL.css`
28
- animation: ${nz} 2s ease-in-out 0.5s infinite;
29
- `:null,nB="string"!=typeof nF?nL.css`
30
- &::after {
31
- animation: ${nF} 2s linear 0.5s infinite;
32
- }
33
- `:null,n$=(0,nM.styled)("span",{name:"MuiSkeleton",slot:"Root",overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,t[n.variant],!1!==n.animation&&t[n.animation],n.hasChildren&&t.withChildren,n.hasChildren&&!n.width&&t.fitContent,n.hasChildren&&!n.height&&t.heightAuto]}})((0,nO.default)(({theme:e})=>{let t=String(e.shape.borderRadius).match(/[\d.\-+]*\s*(.*)/)[1]||"px",n=parseFloat(e.shape.borderRadius);return{display:"block",backgroundColor:e.vars?e.vars.palette.Skeleton.bg:e.alpha(e.palette.text.primary,"light"===e.palette.mode?.11:.13),height:"1.2em",variants:[{props:{variant:"text"},style:{marginTop:0,marginBottom:0,height:"auto",transformOrigin:"0 55%",transform:"scale(1, 0.60)",borderRadius:`${n}${t}/${Math.round(n/.6*10)/10}${t}`,"&:empty:before":{content:'"\\00a0"'}}},{props:{variant:"circular"},style:{borderRadius:"50%"}},{props:{variant:"rounded"},style:{borderRadius:(e.vars||e).shape.borderRadius}},{props:({ownerState:e})=>e.hasChildren,style:{"& > *":{visibility:"hidden"}}},{props:({ownerState:e})=>e.hasChildren&&!e.width,style:{maxWidth:"fit-content"}},{props:({ownerState:e})=>e.hasChildren&&!e.height,style:{height:"auto"}},{props:{animation:"pulse"},style:nV||{animation:`${nz} 2s ease-in-out 0.5s infinite`}},{props:{animation:"wave"},style:{position:"relative",overflow:"hidden",WebkitMaskImage:"-webkit-radial-gradient(white, black)","&::after":{background:`linear-gradient(
34
- 90deg,
35
- transparent,
36
- ${(e.vars||e).palette.action.hover},
37
- transparent
38
- )`,content:'""',position:"absolute",transform:"translateX(-100%)",bottom:0,left:0,right:0,top:0}}},{props:{animation:"wave"},style:nB||{"&::after":{animation:`${nF} 2s linear 0.5s infinite`}}}]}})),nH=a.forwardRef(function(e,t){let n=(0,nD.useDefaultProps)({props:e,name:"MuiSkeleton"}),{animation:a="pulse",className:i,component:r="span",height:l,style:s,variant:d="text",width:c,...u}=n,f={...n,animation:a,component:r,variant:d,hasChildren:!!u.children},p=(e=>{let{classes:t,variant:n,animation:o,hasChildren:a,width:i,height:r}=e;return(0,nI.default)({root:["root",n,o,a&&"withChildren",a&&!i&&"fitContent",a&&!r&&"heightAuto"]},nT,t)})(f);return(0,o.jsx)(n$,{as:r,ref:t,className:(0,nN.default)(p.root,i),ownerState:f,...u,style:{width:c,height:l,...s}})});var nW=e.i(84723),nG=e.i(42409),nU=e.i(913369),nX=e.i(912007);let nK=e=>({display:"inline-flex",alignItems:"center",borderRadius:16,px:1,py:.25,fontSize:"0.75rem",bgcolor:"dark"===e.palette.mode?"grey.700":"grey.100",color:"dark"===e.palette.mode?"grey.100":"inherit"}),nZ={mr:.5,display:"flex",alignItems:"center"};function nQ({node:e}){let{icon:t}=nd(e.data.resourceType);return(0,o.jsx)(nt.default,{arrow:!0,title:"Type of resource",children:(0,o.jsxs)(t4.default,{component:"span",sx:nK,children:[t&&(0,o.jsx)(t4.default,{component:"span",sx:nZ,children:(0,o.jsx)(t,{})}),e.data.resourceType]})})}function nq({rowCount:e}){let t=e.base,n=e.curr,a=null===e.base?"N/A":`${e.base} rows`,i=null===e.curr?"N/A":`${e.curr} rows`;return null===t&&null===n?(0,o.jsx)(o.Fragment,{children:" Failed to load"}):null===t||null===n?(0,o.jsxs)(t8.default,{direction:"row",alignItems:"center",spacing:.5,children:[(0,o.jsx)(np.default,{variant:"body2",component:"span",children:a}),(0,o.jsx)(nW.FiArrowRight,{}),(0,o.jsx)(np.default,{variant:"body2",component:"span",children:i})]}):t===n?(0,o.jsxs)(t8.default,{direction:"row",alignItems:"center",spacing:.5,children:[(0,o.jsx)(np.default,{variant:"body2",component:"span",children:i}),(0,o.jsx)(t4.default,{component:"span",sx:{color:"grey.500",display:"flex"},children:(0,o.jsx)(nG.RiSwapLine,{})}),(0,o.jsx)(np.default,{variant:"body2",component:"span",sx:{color:"grey.500"},children:"No Change"})]}):t<n?(0,o.jsxs)(t8.default,{direction:"row",alignItems:"center",spacing:.5,children:[(0,o.jsx)(np.default,{variant:"body2",component:"span",children:i}),(0,o.jsx)(t4.default,{component:"span",sx:{color:"success.main",display:"flex"},children:(0,o.jsx)(nG.RiArrowUpSFill,{})}),(0,o.jsx)(np.default,{variant:"body2",component:"span",sx:{color:"success.main"},children:(0,n_.deltaPercentageString)(t,n)})]}):(0,o.jsxs)(t8.default,{direction:"row",alignItems:"center",spacing:.5,children:[(0,o.jsx)(np.default,{variant:"body2",component:"span",children:i}),(0,o.jsx)(t4.default,{component:"span",sx:{color:"error.main",display:"flex"},children:(0,o.jsx)(nG.RiArrowDownSFill,{})}),(0,o.jsx)(np.default,{variant:"body2",component:"span",sx:{color:"error.main"},children:(0,n_.deltaPercentageString)(t,n)})]})}function nY({rowCount:e,node:t,onRefresh:n,isFetching:a}){let{featureToggles:i}=(0,nX.useRecceInstanceContext)(),{runsAggregated:r}=(0,nm.useLineageGraphContext)(),l=r?.[t.id]?.row_count_diff.result,s=(0,nk.findByRunType)("row_count_diff").icon,d=e??l,c=d?`${d.base??"N/A"} -> ${d.curr??"N/A"} rows`:"";return(0,o.jsx)(nt.default,{title:c,children:(0,o.jsx)(nU.default,{display:"metadata only"===i.mode,children:(0,o.jsxs)(t4.default,{component:"span",sx:e=>({...nK(e),gap:.5}),children:[(0,o.jsx)(s,{}),null!=d||a?a?(0,o.jsx)(nH,{width:30,height:16}):null!=d?(0,o.jsx)(nq,{rowCount:d}):(0,o.jsx)(np.default,{variant:"caption",children:"row count"}):(0,o.jsx)(np.default,{variant:"caption",children:"row count"}),n&&(0,o.jsx)(nf.default,{"aria-label":"Query Row Count",size:"small",onClick:n,disabled:i.disableDatabaseQuery,sx:{p:0,ml:.5},children:(0,o.jsx)(ng.PiRepeat,{size:12})})]})})})}function nJ({rowCount:e,node:t,onRefresh:n,isFetching:a}){let i,{runsAggregated:r}=(0,nm.useLineageGraphContext)(),l=r?.[t.id]?.row_count.result,s=(0,nk.findByRunType)("row_count").icon,d=e??l;if(d){let e=d.curr??"N/A";i=`${e} rows`}return(0,o.jsxs)(t4.default,{component:"span",sx:nK,children:[(0,o.jsx)(t4.default,{component:"span",sx:nZ,children:(0,o.jsx)(s,{})}),d||a?a?(0,o.jsx)(nH,{width:30,height:16}):(0,o.jsx)(np.default,{variant:"caption",children:i}):(0,o.jsx)(np.default,{variant:"caption",children:"row count"}),n&&(0,o.jsx)(nf.default,{"aria-label":"Query Row Count",size:"small",onClick:n,disabled:"base"===t.data.from,sx:{p:0,ml:.5},children:(0,o.jsx)(ng.PiRepeat,{size:12})})]})}e.s(["ResourceTypeTag",()=>nQ,"RowCountDiffTag",()=>nY,"RowCountTag",()=>nJ],636819);let n0=({node:e,action:t})=>{let{status:n,skipReason:a,run:i}=t;if("pending"===n)return(0,o.jsx)(nu.default,{size:16});if("skipped"===n)return(0,o.jsx)(ny.default,{size:"small",label:(0,o.jsxs)(t8.default,{direction:"row",sx:{fontSize:"10pt",color:"grey.500",alignItems:"center",gap:"3px"},children:[(0,o.jsx)(t4.default,{children:"Skipped"}),a&&(0,o.jsx)(nt.default,{title:a,children:(0,o.jsx)(t4.default,{component:"span",sx:{display:"flex"},children:(0,o.jsx)(ng.PiInfo,{})})})]}),sx:{bgcolor:"grey.100"}});if(!i)return(0,o.jsx)(nu.default,{size:16});let{error:r,run_id:l,progress:s}=i;if("running"===n)if(s?.percentage===void 0)return(0,o.jsx)(nu.default,{size:16});else return(0,o.jsx)(nu.default,{variant:"determinate",value:100*s.percentage,size:16});if(r)return(0,o.jsxs)(t8.default,{direction:"row",sx:{fontSize:"10pt",color:"gray",alignItems:"center"},children:[(0,o.jsx)(t4.default,{children:"Error"}),a&&(0,o.jsx)(nt.default,{title:r,children:(0,o.jsx)(t4.default,{component:"span",sx:{display:"flex"},children:(0,o.jsx)(ng.PiWarning,{})})})]});if((0,nR.isValueDiffRun)(i)&&i.result){let e=i.result,t=0;for(let n of e.data.data)n[2]<1&&t++;return(0,o.jsx)(ny.default,{size:"small",sx:{bgcolor:t>0?"error.light":"success.light"},label:(0,o.jsx)(t8.default,{direction:"row",sx:{fontSize:"10pt",color:t>0?"error.main":"success.main",alignItems:"center",gap:"3px"},children:t>0?`${t} columns mismatched`:"All columns match"})})}if((0,nR.isRowCountDiffRun)(i)&&i.result){let t=i.result;return(0,o.jsx)(nY,{rowCount:t[e.data.name],node:e})}if((0,nR.isRowCountRun)(i)&&i.result){let t=i.result;return(0,o.jsx)(nJ,{rowCount:t[e.data.name],node:e})}return(0,o.jsx)(o.Fragment,{children:l})};function n1({rowCount:e}){let t,n=e.base,a=e.curr,i=null===e.base?"N/A":`${e.base} Rows`,r=null===e.curr?"N/A":`${e.curr} Rows`,l="default";null===n&&null===a?(t="Failed to load",l="default"):null===n||null===a?(t=`${i} -> ${r}`,l=null===n?"success":"error"):n===a?(t="=",l="default"):n!==a&&(t=`${(0,n_.deltaPercentageString)(n,a)} Rows`,l=n<a?"success":"error");let s=(0,nk.findByRunType)("row_count_diff").icon;return(0,o.jsx)(ny.default,{size:"small",color:l,icon:s?(0,o.jsx)(s,{}):void 0,label:t,sx:{height:20,fontSize:"0.7rem"}})}let n2={breaking:"Breaking",non_breaking:"Non Breaking",partial_breaking:"Partial Breaking",unknown:"Unknown"},n3=({id:e,inverted:t})=>{let n,a,{lineageGraph:i,runsAggregated:r}=(0,nm.useLineageGraphContext)(),{text:l,isDark:s}=t5(),d=r?.[e],c=i?.nodes[e];if(!d&&!c)return(0,o.jsx)(o.Fragment,{});if(c?.data.data.base&&c.data.data.current&&(n=nE(c.data.data.base.columns,c.data.data.current.columns)),d?.row_count_diff){let e=d.row_count_diff.result;a=e.curr!==e.base}let u=t?l.inverted:ns("modified").color,f=t?l.secondary:s?"grey.700":"grey.100",p=(0,nk.findByRunType)("schema_diff").icon;return(0,o.jsxs)(t4.default,{sx:{display:"flex",flex:1,alignItems:"center"},children:[void 0!==n&&(0,o.jsx)(nt.default,{title:`Schema (${n?"changed":"no change"})`,enterDelay:500,children:(0,o.jsx)(t4.default,{sx:{height:16},children:p&&(0,o.jsx)(t4.default,{component:p,sx:{color:n?u:f}})})}),(0,o.jsx)(t4.default,{sx:{flexGrow:1}}),d?.row_count_diff&&void 0!==a&&(0,o.jsx)(nt.default,{title:`Row count (${a?"changed":"="})`,enterDelay:500,children:(0,o.jsx)(t4.default,{children:(0,o.jsx)(n1,{rowCount:d.row_count_diff.result})})})]})},n5=({checked:e,onClick:t})=>(0,o.jsx)(t4.default,{onClick:t,sx:{alignSelf:"center",display:"flex",alignItems:"center",cursor:"pointer"},children:e?(0,o.jsx)(t4.default,{component:nn.FaCheckSquare,sx:{fontSize:20}}):(0,o.jsx)(t4.default,{component:nn.FaRegSquare,sx:{fontSize:20}})}),n4=({name:e,color:t,resourceType:n})=>(0,o.jsx)(t4.default,{sx:{flex:1,color:t,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:(0,o.jsx)(nt.default,{title:"model"===n?e:`${e} (${n})`,placement:"top",children:(0,o.jsx)("span",{children:e})})});function n6(e){let{data:t}=e,{id:n,resourceType:i,changeStatus:l}=t,s=b(e=>e.transform[2]>.3),{background:d,text:c,isDark:u}=t5(),{icon:f}=nd(i),[p,g]=(0,a.useState)(!1),{interactive:m,selectNode:h,selectMode:x,focusedNode:y,getNodeAction:w,getNodeColumnSet:v,isNodeHighlighted:C,isNodeSelected:S,isNodeShowingChangeAnalysis:j,showContextMenu:_,viewOptions:k,cll:E,showColumnLevelLineage:R}=(0,t9.useLineageViewContextSafe)(),N=E?.current.nodes[n]?.change_category,I=C(n),L=S(n),M=k.column_level_lineage?.node_id===n&&void 0===k.column_level_lineage.column,O=y?.id===n||M,D=j(n),{icon:P,color:A,backgroundColor:T}=l?ns(l,u):{icon:void 0,color:String((0,t3.token)("colors.gray.400")),backgroundColor:u?String((0,t3.token)("colors.gray.700")):String((0,t3.token)("colors.gray.100"))},z=t.name,F=v(t.id),V=F.size>0,B="action_result"===x?w(t.id):void 0,$=s?"selecting"===x?L?A:d.paper:"action_result"!==x?O||L||p?T:d.paper:B?O||L||p?T:A:d.paper:O||L||p?A:T,H="selecting"===x?L?c.inverted:c.primary:"action_result"===x&&B&&!L?c.inverted:c.primary,W="selecting"===x?L?c.inverted:c.primary:"action_result"===x&&B&&!L?c.inverted:c.primary,G="selecting"===x?L?c.inverted:A:"action_result"===x?B&&!L?c.inverted:c.primary:A;return(0,o.jsxs)(t4.default,{sx:{display:"flex",flexDirection:"column",width:300,cursor:"selecting"===x?"pointer":"inherit",transition:"box-shadow 0.2s ease-in-out",padding:0,filter:"action_result"===x?B?"none":"opacity(0.2) grayscale(50%)":I||O||L||p?"none":"opacity(0.2) grayscale(50%)"},onMouseEnter:()=>{g(!0)},onMouseLeave:()=>{g(!1)},children:[(0,o.jsxs)(t4.default,{sx:{display:"flex",borderColor:A,borderWidth:"2px",borderStyle:"solid",borderTopLeftRadius:8,borderTopRightRadius:8,borderBottomLeftRadius:8*!V,borderBottomRightRadius:8*!V,backgroundColor:$,height:60},children:[(0,o.jsx)(t4.default,{sx:{display:"flex",bgcolor:A,padding:m?"8px":"2px",borderRightWidth:"2px",borderRightStyle:"solid",borderColor:"selecting"===x?"#00000020":A,alignItems:"top",visibility:s?"inherit":"hidden"},children:m&&(0,o.jsx)(n5,{checked:"selecting"===x&&L||"action_result"===x&&!!B,onClick:e=>{"action_result"!==x&&(e.stopPropagation(),h(t.id))}})}),(0,o.jsxs)(t4.default,{sx:{display:"flex",flex:"1 0 auto",mx:.5,width:100,flexDirection:"column"},children:[(0,o.jsxs)(t4.default,{sx:{display:"flex",width:"100%",textAlign:"left",fontWeight:600,flex:1,p:.5,gap:"5px",alignItems:"center",visibility:s?"inherit":"hidden"},children:[(0,o.jsx)(n4,{name:z,color:H,resourceType:i}),p?(0,o.jsxs)(o.Fragment,{children:["modified"===l&&(0,o.jsx)(nt.default,{title:"Show Impact Radius",placement:"top",enterDelay:500,children:(0,o.jsx)(t4.default,{sx:{display:"flex",alignItems:"center",justifyContent:"center"},children:(0,o.jsx)(t4.default,{component:nn.FaRegDotCircle,sx:{fontSize:14,color:c.secondary,cursor:"pointer","&:hover":{color:c.primary}},onClick:e=>{e.preventDefault(),e.stopPropagation(),R({node_id:n,change_analysis:!0,no_upstream:!0})}})})}),(0,o.jsx)(t4.default,{component:na.VscKebabVertical,sx:{color:c.secondary,cursor:"pointer","&:hover":{color:c.primary}},onClick:t=>{t.preventDefault(),t.stopPropagation(),_(t,e)}})]}):(0,o.jsxs)(o.Fragment,{children:[f&&(0,o.jsx)(t4.default,{component:f,sx:{fontSize:16,color:W}}),l&&P&&(0,o.jsx)(t4.default,{component:P,sx:{color:G}})]})]}),(0,o.jsx)(t4.default,{sx:{display:"flex",flex:"1 0 auto",mx:.5,flexDirection:"column",paddingBottom:.5,visibility:s?"inherit":"hidden"},children:(0,o.jsx)(t8.default,{direction:"row",spacing:1,children:B?(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(t4.default,{sx:{flexGrow:1}}),(0,o.jsx)(n0,{node:t,action:B})]}):D?(0,o.jsx)(t4.default,{sx:{height:20,color:c.secondary,fontSize:"9pt",margin:0,fontWeight:600},children:N?n2[N]:""}):"action_result"!==x&&"model"===t.resourceType?(0,o.jsx)(n3,{id:t.id,inverted:"selecting"===x&&L}):(0,o.jsx)(o.Fragment,{})})})]})]}),V&&(0,o.jsx)(t4.default,{sx:{p:"10px 10px",borderColor:A,borderWidth:"2px",borderStyle:"solid",borderTopWidth:0,borderBottomLeftRadius:8,borderBottomRightRadius:8},children:(0,o.jsx)(t4.default,{sx:{height:`${F.size*nb.COLUMN_HEIGHT}px`,overflow:"auto"}})}),Object.keys(t.parents).length>0&&(0,o.jsx)(ej,{type:"target",position:r.Position.Left,isConnectable:!1}),Object.keys(t.children).length>0&&(0,o.jsx)(ej,{type:"source",position:r.Position.Right,isConnectable:!1})]})}e.s(["GraphNode",()=>n6],592355);var n7=e.i(135301),n8=e.i(263712),n9=e.i(955343);function oe(e){return(0,n9.GenIcon)({tag:"svg",attr:{viewBox:"0 0 24 24"},child:[{tag:"path",attr:{d:"M6 18h12v2H6zm6-14.414-6.707 6.707 1.414 1.414L11 7.414V16h2V7.414l4.293 4.293 1.414-1.414z"},child:[]}]})(e)}function ot(e){return(0,n9.GenIcon)({tag:"svg",attr:{viewBox:"0 0 24 24"},child:[{tag:"path",attr:{d:"M6 18h12v2H6zm5-14v8.586L6.707 8.293 5.293 9.707 12 16.414l6.707-6.707-1.414-1.414L13 12.586V4z"},child:[]}]})(e)}var on=e.i(203158),oo=e.i(675155);function oa(e,t){let n=(0,oo.mergeKeys)(e,t);if(0===n.length)return[];if(0===e.length||0===t.length)return n.map((e,t)=>t===n.length-1?e:e+",");let o="";return n.forEach(n=>{e.includes(n)&&t.includes(n)&&(o=n)}),n.map((a,i)=>{let r;return(r=e.includes(a)?t.includes(a)?a:`--- ${a} (Removed)`:`--- ${a} (Added)`,a===o||i===n.length-1)?r:r+","})}e.s(["formatSelectColumns",()=>oa],832421);var oi=e.i(29134),or=e.i(475119),ol=e.i(505251),os=e.i(400905),od=e.i(645364);let oc=({menuItems:e,open:t,onClose:n,x:a,y:i})=>{let{featureToggles:r}=(0,nX.useRecceInstanceContext)();return(0,o.jsx)(n7.default,{open:t,onClose:n,anchorReference:"anchorPosition",anchorPosition:{top:i,left:a},slotProps:{paper:{sx:{fontSize:"0.85rem",width:"250px"}}},children:0===e.length?(0,o.jsx)(n8.default,{disabled:!0,children:"No action available"},"no action"):e.map(({isSeparator:e,label:t,isDisabled:a,action:i,itemIcon:l})=>{if(e)return(0,o.jsx)(t7.default,{},t);{let e=(0,o.jsxs)(n8.default,{disabled:a,onClick:()=>{i&&i(),n()},children:[l," ",t]},t);return a?(0,o.jsx)(nU.default,{display:"metadata only"===r.mode,children:e},t):e}})})},ou=({isOpen:e,onClose:t,x:n,y:a,node:i})=>{let r=[],{selectParentNodes:l,selectChildNodes:s,getNodeColumnSet:d,selectMode:c,cll:u,showColumnLevelLineage:f}=(0,t9.useLineageViewContextSafe)(),{runAction:p}=(0,oi.useRecceActionContext)(),{featureToggles:g}=(0,nX.useRecceInstanceContext)(),{isActionAvailable:m}=(0,nm.useLineageGraphContext)(),{data:h}=(0,nh.useRecceServerFlag)(),{lineageGraph:x}=(0,nm.useLineageGraphContext)(),y=!x?.catalogMetadata.current,b=h?.single_env_onboarding??!1,w=g.disableDatabaseQuery,{primaryKey:v}=(0,os.default)(i?.data?.data.name),{setSqlQuery:C,setPrimaryKeys:S}=(0,or.useRecceQueryContext)(),[,j]=(0,ol.useAppLocation)();if(!i?.data)return(0,o.jsx)(o.Fragment,{});let _=i.data,k=_.resourceType,E=Array.from(d(i.id)),R={source:"lineage_model_node"};if("modified"===_.changeStatus&&r.push({label:"Show Impact Radius",itemIcon:(0,o.jsx)(nn.FaRegDotCircle,{}),isDisabled:y,action:()=>{f({node_id:i.id,change_analysis:!0,no_upstream:!0})}}),!c&&k&&["model","seed","snapshot"].includes(k)){r.length>0&&r.push({label:"select group one",isSeparator:!0});let e=(0,nk.findByRunType)(b?"query":"query_diff"),t=oa(Object.keys(_.data.base?.columns??{}),Object.keys(_.data.current?.columns??{})),n=`select * from {{ ref("${_.name}") }}`;if(t.length&&(n=`select
39
- ${t.join("\n ")}
40
- from {{ ref("${_.name}") }}`),r.push({label:"Query",itemIcon:(0,o.jsx)(t4.default,{component:e.icon,sx:{display:"inline-flex"}}),isDisabled:w,action:()=>{C(n),m("query_diff_with_primary_key")&&S(void 0!==v?[v]:void 0),j("/query")}}),E.length>0)if(void 0!==u){let t=new Set;v&&t.add(v),E.forEach(e=>{t.add(e)}),r.push({label:"Query Related Columns",itemIcon:(0,o.jsx)(t4.default,{component:e.icon,sx:{display:"inline-flex"}}),isDisabled:w,action:()=>{C(`select
41
- ${Array.from(t).join(",\n ")}
42
- from {{ ref("${_.name}") }}`),m("query_diff_with_primary_key")&&S(void 0!==v?[v]:void 0),j("/query")}})}else{let t=Object.entries(_.change?.columns??{}).filter(([,e])=>"modified"===e).map(([e])=>e);if(t.length>0){let n=new Set;v&&n.add(v),t.forEach(e=>{n.add(e)}),r.push({label:"Query Modified Columns",itemIcon:(0,o.jsx)(t4.default,{component:e.icon,sx:{display:"inline-flex"}}),isDisabled:w,action:()=>{C(`select
43
- ${Array.from(n).join(",\n ")}
44
- from {{ ref("${_.name}") }}`),m("query_diff_with_primary_key")&&S(void 0!==v?[v]:void 0),j("/query")}})}}let a=(0,nk.findByRunType)(b?"row_count":"row_count_diff");r.push({label:a.title,itemIcon:(0,o.jsx)(t4.default,{component:a.icon,sx:{display:"inline-flex"}}),isDisabled:w,action:()=>{(0,on.trackExploreAction)({action:b?on.EXPLORE_ACTION.ROW_COUNT:on.EXPLORE_ACTION.ROW_COUNT_DIFF,source:on.EXPLORE_SOURCE.LINEAGE_VIEW_CONTEXT_MENU,node_count:1}),p(b?"row_count":"row_count_diff",{node_names:[_.name]},{showForm:!1,trackProps:R})}});let l=(0,nk.findByRunType)(b?"profile":"profile_diff");if(r.push({label:l.title,itemIcon:(0,o.jsx)(t4.default,{component:l.icon,sx:{display:"inline-flex"}}),isDisabled:w,action:()=>{let e=Array.from(d(i.id));(0,on.trackExploreAction)({action:b?on.EXPLORE_ACTION.PROFILE:on.EXPLORE_ACTION.PROFILE_DIFF,source:on.EXPLORE_SOURCE.LINEAGE_VIEW_CONTEXT_MENU,node_count:1}),p(b?"profile":"profile_diff",{model:_.name,columns:e},{showForm:!0,trackProps:R})}}),!b){let e=(0,nk.findByRunType)("value_diff");r.push({label:e.title,itemIcon:(0,o.jsx)(t4.default,{component:e.icon,sx:{display:"inline-flex"}}),isDisabled:w,action:()=>{let e=Array.from(d(i.id));(0,on.trackExploreAction)({action:on.EXPLORE_ACTION.VALUE_DIFF,source:on.EXPLORE_SOURCE.LINEAGE_VIEW_CONTEXT_MENU,node_count:1}),p("value_diff",{model:_.name,columns:e},{showForm:!0,trackProps:R})}})}}return b||(r.length>0&&r.push({label:"select group two",isSeparator:!0}),r.push({label:"Select Parent Nodes",itemIcon:(0,o.jsx)(oe,{}),action:()=>{(0,on.trackLineageSelection)({action:on.LINEAGE_SELECTION_ACTION.SELECT_PARENT_NODES}),l(i.id,1)}}),r.push({label:"Select Child Nodes",itemIcon:(0,o.jsx)(ot,{}),action:()=>{(0,on.trackLineageSelection)({action:on.LINEAGE_SELECTION_ACTION.SELECT_CHILD_NODES}),s(i.id,1)}}),r.push({label:"Select All Upstream Nodes",itemIcon:(0,o.jsx)(oe,{}),action:()=>{(0,on.trackLineageSelection)({action:on.LINEAGE_SELECTION_ACTION.SELECT_ALL_UPSTREAM}),l(i.id)}}),r.push({label:"Select All Downstream Nodes",itemIcon:(0,o.jsx)(ot,{}),action:()=>{(0,on.trackLineageSelection)({action:on.LINEAGE_SELECTION_ACTION.SELECT_ALL_DOWNSTREAM}),s(i.id)}})),(0,o.jsx)(oc,{x:n,y:a,menuItems:r,open:e,onClose:t})},of=({isOpen:e,onClose:t,x:n,y:a,node:i})=>{let r=[],{runAction:l}=(0,oi.useRecceActionContext)(),{isActionAvailable:s}=(0,nm.useLineageGraphContext)(),{featureToggles:d}=(0,nX.useRecceInstanceContext)(),{data:c}=(0,nh.useRecceServerFlag)(),u=c?.single_env_onboarding??!1,f=d.disableDatabaseQuery;if(i?.data===void 0)return(0,o.jsx)(o.Fragment,{});let p=i.data,g=p.node,m=p.column,h=p.type,x={source:"lineage_column_node"},y=g.data.base?.columns?.[m]===void 0||g.data.current?.columns?.[m]===void 0,b=(0,nk.findByRunType)(u?"profile":"profile_diff");if(r.push({label:b.title,itemIcon:(0,o.jsx)(t4.default,{component:b.icon,sx:{display:"inline-flex"}}),action:()=>{(0,on.trackExploreAction)({action:on.EXPLORE_ACTION.PROFILE_DIFF,source:on.EXPLORE_SOURCE.LINEAGE_VIEW_CONTEXT_MENU,node_count:1}),l("profile_diff",{model:g.name,columns:[m]},{showForm:!1,trackProps:x})},isDisabled:y||!s("profile_diff")||f}),!u){let e=(0,nk.findByRunType)("histogram_diff");r.push({label:e.title,itemIcon:(0,o.jsx)(t4.default,{component:e.icon,sx:{display:"inline-flex"}}),action:()=>{(0,on.trackExploreAction)({action:on.EXPLORE_ACTION.HISTOGRAM_DIFF,source:on.EXPLORE_SOURCE.LINEAGE_VIEW_CONTEXT_MENU,node_count:1}),l("histogram_diff",{model:g.name,column_name:m,column_type:h},{showForm:!1,trackProps:x})},isDisabled:y||!h||!(0,od.supportsHistogramDiff)(h)||f});let t=(0,nk.findByRunType)("top_k_diff");r.push({label:t.title,itemIcon:(0,o.jsx)(t4.default,{component:t.icon,sx:{display:"inline-flex"}}),action:()=>{(0,on.trackExploreAction)({action:on.EXPLORE_ACTION.TOP_K_DIFF,source:on.EXPLORE_SOURCE.LINEAGE_VIEW_CONTEXT_MENU,node_count:1}),l("top_k_diff",{model:g.name,column_name:m,k:50},{showForm:!1,trackProps:x})},isDisabled:y||f});let n=(0,nk.findByRunType)("value_diff");r.push({label:n.title,itemIcon:(0,o.jsx)(t4.default,{component:n.icon,sx:{display:"inline-flex"}}),action:()=>{(0,on.trackExploreAction)({action:on.EXPLORE_ACTION.VALUE_DIFF,source:on.EXPLORE_SOURCE.LINEAGE_VIEW_CONTEXT_MENU,node_count:1}),l("value_diff",{model:g.name,columns:[m]},{showForm:!0,trackProps:x})},isDisabled:y||f})}return(0,o.jsx)(oc,{x:n,y:a,menuItems:r,open:e,onClose:t})};e.s(["LineageViewContextMenu",0,({isOpen:e,onClose:t,x:n,y:a,node:i})=>{let{featureToggles:r}=(0,nX.useRecceInstanceContext)();return r.disableViewActionDropdown?(0,o.jsx)(oc,{menuItems:[],open:e,onClose:t,x:n,y:a}):i&&(0,nb.isLineageGraphNode)(i)?(0,o.jsx)(ou,{x:n,y:a,isOpen:e,onClose:t,node:i}):i&&(0,nb.isLineageGraphColumnNode)(i)?(0,o.jsx)(of,{x:n,y:a,isOpen:e,onClose:t,node:i}):void 0},"useLineageViewContextMenu",0,()=>{let[e,t]=(0,a.useState)(!1),n=()=>t(!1),[o,i]=(0,a.useState)({x:0,y:0}),[r,l]=(0,a.useState)();return{props:{x:o.x,y:o.y,node:r,isOpen:e,onClose:n},showContextMenu:(e,n,o)=>{i({x:e,y:n}),l(o),t(!0)},closeContextMenu:()=>{i({x:0,y:0}),l(void 0),n()}}}],739145);var op=e.i(603338);let og="recce",om={recommendationIgnored:`${og}-recommendation-ignored`,recommendationShowed:`${og}-recommendation-showed`,prevRefreshTimeStamp:`${og}-prev-refresh-timestamp`,lineageNotificationDismissed:`${og}-lineage-notification-dismissed`};function oh({notification:e,type:t}){let n=om.lineageNotificationDismissed,[i,r]=(0,a.useState)(()=>"true"!==sessionStorage.getItem(n));return null!==e&&i?(0,o.jsxs)(t4.default,{sx:{width:"100%",display:"flex",flexDirection:"row",p:"5px 10px",gap:"5px",alignItems:"flex-start",borderRadius:1,boxShadow:4,border:"1px solid",borderColor:"neutral.light",bgcolor:{info:"iochmara.light",success:"success.light",warning:"warning.light",error:"error.light"}[t]},children:[e,(0,o.jsx)(t4.default,{sx:{flex:1}}),(0,o.jsx)(nf.default,{size:"small",onClick:()=>{sessionStorage.setItem(n,"true"),r(!1)},children:(0,o.jsx)(op.IoClose,{})})]}):null}e.s(["LineageViewNotification",()=>oh],428537);var ox=e.i(562903),oy=e.i(233799),ob=e.i(754228),ow=e.i(571167),ov=e.i(130115),oC=e.i(670857),oS=e.i(634665),oj=e.i(664766),o_=e.i(2936);let ok=e=>({fontSize:"8pt",bgcolor:"dark"===e.palette.mode?"grey.700":"grey.100",px:.5,borderRadius:1}),oE=()=>(0,o.jsxs)(t8.default,{alignItems:"flex-start",spacing:0,children:[(0,o.jsx)(np.default,{fontSize:"10pt",color:"text.secondary",pb:1,children:"Select nodes by dbt node selector syntax"}),(0,o.jsxs)(np.default,{fontSize:"8pt",children:[(0,o.jsx)(t4.default,{component:"code",sx:ok,children:"model_name"})," ","Select a node"]}),(0,o.jsxs)(np.default,{fontSize:"8pt",children:[(0,o.jsx)(t4.default,{component:"code",sx:ok,children:"model_name+"})," ","Select downstream nodes"]}),(0,o.jsxs)(np.default,{fontSize:"8pt",children:[(0,o.jsx)(t4.default,{component:"code",sx:ok,children:"+model_name"})," ","Select upstream nodes"]}),(0,o.jsxs)(np.default,{fontSize:"8pt",children:[(0,o.jsx)(t4.default,{component:"code",sx:ok,children:"model*"})," ","Select by wildcard"]})]}),oR=({isDisabled:e})=>{let[t,n]=(0,a.useState)(null),{viewOptions:i,onViewOptionsChanged:r}=(0,t9.useLineageViewContextSafe)(),l=i.view_mode??"changed_models",s=()=>{n(null)},d=e=>{r({...i,view_mode:e}),s()},c=nd("model").icon;return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(t6.default,{size:"xsmall",variant:"outlined",color:"neutral",onClick:e=>{n(e.currentTarget)},disabled:e,startIcon:c&&(0,o.jsx)(c,{}),endIcon:(0,o.jsx)(ng.PiCaretDown,{}),sx:{minWidth:100,textTransform:"none",fontSize:"0.75rem"},children:"changed_models"===l?"Changed Models":"All"}),(0,o.jsxs)(n7.default,{anchorEl:t,open:!!t,onClose:s,children:[(0,o.jsx)(ov.default,{sx:{lineHeight:"32px",bgcolor:"transparent"},children:"mode"}),(0,o.jsxs)(oS.default,{value:l,children:[(0,o.jsx)(n8.default,{onClick:()=>d("changed_models"),children:(0,o.jsx)(oy.default,{value:"changed_models",control:(0,o.jsx)(oC.default,{size:"small",sx:{py:0}}),label:"Changed Models",sx:{m:0}})}),(0,o.jsx)(n8.default,{onClick:()=>d("all"),children:(0,o.jsx)(oy.default,{value:"all",control:(0,o.jsx)(oC.default,{size:"small",sx:{py:0}}),label:"All",sx:{m:0}})})]})]})]})},oN=({isDisabled:e})=>{let[t,n]=(0,a.useState)(null),{lineageGraph:i}=(0,nm.useLineageGraphContext)(),{viewOptions:r,onViewOptionsChanged:l}=(0,t9.useLineageViewContextSafe)(),s=new Set;for(let e of Object.values(i?.nodes??{}))e.data.packageName&&s.add(e.data.packageName);let d=i?.manifestMetadata.current?.project_name,c=r.packages?new Set(r.packages):d?new Set([d]):s,u=c.size===s.size,f=0===c.size,p=1===c.size?Array.from(c)[0]:u?"All Packages":f?"No Package":`${c.size} Packages`;return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(t6.default,{size:"xsmall",variant:"outlined",color:"neutral",onClick:e=>{n(e.currentTarget)},disabled:e,startIcon:(0,o.jsx)(nW.FiPackage,{}),endIcon:(0,o.jsx)(ng.PiCaretDown,{}),sx:{minWidth:100,textTransform:"none",fontSize:"0.75rem"},children:p}),(0,o.jsxs)(n7.default,{anchorEl:t,open:!!t,onClose:()=>{n(null)},children:[(0,o.jsx)(ov.default,{sx:{lineHeight:"32px",bgcolor:"transparent"},children:"Select Packages"}),(0,o.jsxs)(n8.default,{onClick:()=>{u?l({...r,packages:[]}):l({...r,packages:Array.from(s)})},children:[(0,o.jsx)(ox.default,{checked:u,indeterminate:!u&&!f,size:"small",sx:{py:0}}),(0,o.jsx)(ow.default,{children:"Select All"})]}),(0,o.jsx)(t7.default,{}),Array.from(s).map(e=>(0,o.jsxs)(n8.default,{onClick:()=>{let t;(t=new Set(c)).has(e)?t.delete(e):t.add(e),l({...r,packages:Array.from(t)})},children:[(0,o.jsx)(ox.default,{checked:c.has(e),size:"small",sx:{py:0}}),(0,o.jsx)(ow.default,{className:"no-track-pii-safe",children:e})]},e))]})]})},oI=e=>{let[t,n]=(0,a.useState)(e.value),{data:i}=(0,nh.useRecceServerFlag)(),r=(0,a.useRef)(null);return(0,a.useEffect)(()=>{r.current&&(r.current.value=e.value)},[e.value]),(0,o.jsx)(nt.default,{title:i?.single_env_onboarding?e.tooltipComponent:"",placement:"bottom-start",slotProps:{tooltip:{sx:{width:"18.75rem",p:2,boxShadow:3,border:1,borderRadius:1,color:"text.primary",bgcolor:"background.paper"}}},children:(0,o.jsx)(oj.default,{inputRef:r,size:"small",placeholder:"with selectors",disabled:e.isDisabled,value:t,onChange:e=>{n(e.target.value)},onKeyUp:o=>{"Enter"===o.key?e.onChange(t):"Escape"===o.key&&(o.preventDefault(),n(e.value),r.current&&r.current.blur())},onBlur:()=>{n(e.value)},sx:{"& .MuiInputBase-root":{width:"18.75rem",height:24,fontSize:"0.75rem"},"& .MuiInputBase-input":{py:.5,px:1}}})})},oL=({isDisabled:e})=>{let{viewOptions:t,onViewOptionsChanged:n}=(0,t9.useLineageViewContextSafe)();return(0,o.jsx)(oI,{isDisabled:e,value:t.select??"",onChange:e=>{n({...t,select:e||void 0})},tooltipComponent:(0,o.jsx)(oE,{})})},oM=({isDisabled:e})=>{let{viewOptions:t,onViewOptionsChanged:n}=(0,t9.useLineageViewContextSafe)();return(0,o.jsx)(oI,{isDisabled:e,value:t.exclude??"",onChange:e=>{n({...t,exclude:e||void 0})}})},oO=e=>(0,o.jsxs)(t4.default,{style:e.style,sx:{maxWidth:300},children:[(0,o.jsx)(np.default,{fontSize:"8pt",children:(e.label??"").trim()||(0,o.jsx)(o.Fragment,{children:" "})}),e.children]});e.s(["LineageViewTopBar",0,()=>{let{deselect:e,focusedNode:t,selectedNodes:n,...i}=(0,t9.useLineageViewContextSafe)(),{featureToggles:r}=(0,nX.useRecceInstanceContext)(),{data:l}=(0,nh.useRecceServerFlag)(),s=l?.single_env_onboarding,[d,c]=(0,a.useState)(null),u=!!d,f=n.length>0,p=!t&&!f,g=e=>{c(e.currentTarget)},m=()=>{c(null)},h=(0,nk.findByRunType)("row_count_diff").icon,x=(0,nk.findByRunType)("value_diff").icon,y=(0,nk.findByRunType)("lineage_diff").icon,b=(0,nk.findByRunType)("schema_diff").icon;return(0,o.jsx)(t8.default,{direction:"row",alignItems:"center",borderBottom:1,borderColor:"neutral.light",sx:{width:"100%",p:"4pt 8pt",gap:"0.5rem"},children:(0,o.jsxs)(t8.default,{direction:"row",alignItems:"center",sx:{flex:1,gap:"0.5rem"},children:[(0,o.jsx)(o_.default,{}),(0,o.jsx)(oO,{label:"Mode",style:{flexShrink:1},children:(0,o.jsx)(oR,{isDisabled:f})}),(0,o.jsx)(oO,{label:"Package",style:{flexShrink:1},children:(0,o.jsx)(oN,{isDisabled:f})}),(0,o.jsx)(oO,{label:"Select",style:{flexShrink:1},children:(0,o.jsx)(oL,{isDisabled:f})}),(0,o.jsx)(oO,{label:"Exclude",style:{flexShrink:1},children:(0,o.jsx)(oM,{isDisabled:f})}),(0,o.jsx)(t4.default,{sx:{flexGrow:1}}),f&&(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(oO,{label:"",style:{flexShrink:0},children:(0,o.jsx)(np.default,{fontSize:"9pt",color:"text.secondary",children:n.length>1?`${n.length} nodes selected`:`${n.length} node selected`})}),(0,o.jsx)(oO,{label:"",children:(0,o.jsx)(t6.default,{variant:"outlined",color:"neutral",size:"xsmall",onClick:()=>{e()},sx:{textTransform:"none",fontSize:"9pt"},children:"Deselect"})}),s&&(0,o.jsx)(oO,{label:"Explore",children:(0,o.jsxs)(t4.default,{sx:{display:"inline-flex"},children:[(0,o.jsx)(t6.default,{size:"xsmall",color:"neutral",variant:"outlined",onClick:g,endIcon:(0,o.jsx)(ng.PiCaretDown,{}),sx:{textTransform:"none",fontSize:"0.75rem"},children:"Actions"}),(0,o.jsx)(n7.default,{anchorEl:d,open:u,onClose:m,anchorOrigin:{vertical:"bottom",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:"right"},children:(0,o.jsxs)(n8.default,{disabled:r.disableDatabaseQuery,onClick:async()=>{await i.runRowCount(),m()},children:[(0,o.jsx)(ob.default,{children:(0,o.jsx)(h,{fontSize:"small"})}),(0,o.jsx)(ow.default,{children:"Row Count"})]})})]})})]}),!s&&(0,o.jsx)(oO,{label:"Explore",children:(0,o.jsxs)(t4.default,{sx:{display:"inline-flex"},children:[(0,o.jsx)(t6.default,{size:"xsmall",color:"neutral",variant:"outlined",disabled:r.disableViewActionDropdown,onClick:g,endIcon:(0,o.jsx)(ng.PiCaretDown,{}),sx:{textTransform:"none",fontSize:"0.75rem"},children:"Actions"}),(0,o.jsxs)(n7.default,{anchorEl:d,open:u,onClose:m,anchorOrigin:{vertical:"bottom",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:"right"},children:[(0,o.jsx)(ov.default,{sx:{lineHeight:"32px",bgcolor:"transparent"},children:"Diff"}),(0,o.jsx)(nU.default,{display:"metadata only"===r.mode,children:(0,o.jsxs)(n8.default,{disabled:r.disableDatabaseQuery,onClick:async()=>{await i.runRowCountDiff(),m()},children:[(0,o.jsx)(ob.default,{children:(0,o.jsx)(h,{fontSize:"small"})}),(0,o.jsx)(ow.default,{children:"Row Count Diff"})]})}),(0,o.jsx)(nU.default,{display:"metadata only"===r.mode,children:(0,o.jsxs)(n8.default,{disabled:r.disableDatabaseQuery,onClick:async()=>{await i.runValueDiff(),m()},children:[(0,o.jsx)(ob.default,{children:(0,o.jsx)(x,{fontSize:"small"})}),(0,o.jsx)(ow.default,{children:"Value Diff"})]})}),(0,o.jsx)(t7.default,{}),(0,o.jsx)(ov.default,{sx:{lineHeight:"32px",bgcolor:"transparent"},children:"Add to Checklist"}),(0,o.jsxs)(n8.default,{disabled:!(p||f&&n.length>1),onClick:()=>{i.addLineageDiffCheck(i.viewOptions.view_mode),m()},children:[(0,o.jsx)(ob.default,{children:(0,o.jsx)(y,{fontSize:"small"})}),(0,o.jsx)(ow.default,{children:"Lineage Diff"})]}),(0,o.jsxs)(n8.default,{onClick:()=>{i.addSchemaDiffCheck(),m()},children:[(0,o.jsx)(ob.default,{children:(0,o.jsx)(b,{fontSize:"small"})}),(0,o.jsx)(ow.default,{children:"Schema Diff"})]})]})]})})]})})}],224779),e.s(["DisableTooltipMessages",0,{add_or_remove:"Unavailable for added or removed resources."}],765996);var oD=e.i(388846);e.i(49931);var oP=e.i(716396),oA=e.i(162234);let oT=(0,a.forwardRef)(function({base:e,current:t,showMenu:n=!0},i){let r,l,s=(0,t9.useLineageViewContext)(),[d,c]=(0,a.useState)(null),[u,f]=(0,a.useState)(new Map),{columns:p,rows:g}=(0,a.useMemo)(()=>{let o=t?.resource_type??e?.resource_type,a=o&&["model","seed","snapshot","source"].includes(o)?t??e:void 0;return(0,oP.createDataGridFromData)({type:"schema_diff",base:e?.columns,current:t?.columns},{node:a,cllRunningMap:u,showMenu:n})},[e,t,u,n]),{lineageGraph:m}=(0,nm.useLineageGraphContext)(),h=!m?.catalogMetadata.base,x=!m?.catalogMetadata.current;h&&x?r="catalog.json not found on both environments. Run `recce debug` to troubleshoot.":h?r="catalog.json not found on base environment. Run `recce debug` to troubleshoot.":x&&(r="catalog.json not found on current environment. Run `recce debug` to troubleshoot.");let y=e&&void 0===e.columns,b=t&&void 0===t.columns;y&&b?l="catalog.json is outdated on both environments. Update catalog.json to get schema information.":b?l="catalog.json is outdated on current environment. Update catalog.json to get schema information.":y&&(l="catalog.json is outdated on base environment. Update catalog.json to get schema information.");let w=async n=>{(0,on.trackColumnLevelLineage)({action:"view",source:"schema_column"}),f(e=>new Map(e).set(n,!0));let o=t?.id??e?.id;o&&await s?.showColumnLevelLineage({node_id:o,column:n}),f(e=>new Map(e).set(n,!1))},v=(0,a.useCallback)(n=>{let o=t?.id??e?.id;return`${o}-${n.data.name}`},[t?.id,e?.id]),C=s?.viewOptions.column_level_lineage,S=C?`${C.node_id}-${C.column}`:null;(0,a.useEffect)(()=>{if(d&&(d.deselectAll(),S)){let e=d.getRowNode(S);e&&e.setSelected(!0)}},[d,S]);let j=(0,a.useCallback)(e=>{c(e.api)},[]),_=async e=>{let t=e.event?.target;if(t?.closest(".row-context-menu"))return;let n=e.data;n&&(void 0===n.baseIndex||void 0!==n.currentIndex)&&await w(n.name)};return(0,o.jsxs)(t4.default,{sx:{display:"flex",flexDirection:"column",height:"100%"},children:[r?(0,o.jsx)(oD.default,{severity:"warning",sx:{fontSize:"12px",p:1},children:r}):l?(0,o.jsx)(oD.default,{severity:"warning",sx:{fontSize:"12px",p:1},children:l}):(0,o.jsx)(o.Fragment,{}),g.length>0&&(0,o.jsx)(oA.ScreenshotDataGrid,{style:{blockSize:"auto",maxHeight:"100%",overflow:"auto",fontSize:"0.8rem",borderWidth:1},columns:p,rows:g,rowHeight:35,renderers:{noRowsFallback:(0,o.jsx)(oA.EmptyRowsRenderer,{})},className:"rdg-light no-track-pii-safe",ref:i,getRowId:v,getRowClass:e=>{let t,n=e.data;if(!n)return"row-normal";if(void 0===n.baseIndex)t="row-added";else{if(void 0===n.currentIndex)return"row-removed";t="row-normal"}return void 0!==s&&(t+=" row-selectable"),t},onCellClicked:_,onGridReady:j,rowSelection:{mode:"singleRow"}})]})}),oz=(0,a.forwardRef)(function({current:e,showMenu:t=!0},n){let i,r,l=(0,t9.useLineageViewContext)(),[s,d]=(0,a.useState)(null),[c,u]=(0,a.useState)(new Map),{columns:f,rows:p}=(0,a.useMemo)(()=>(0,oP.createDataGridFromData)({type:"schema_single",columns:e?.columns},{node:e,cllRunningMap:c,showMenu:t}),[e,c,t]),{lineageGraph:g}=(0,nm.useLineageGraphContext)();g?.catalogMetadata.current||(i="catalog.json not found. Run `recce debug` to troubleshoot."),e&&void 0===e.columns&&(r="catalog.json is outdated. Update catalog.json to get schema information.");let m=async t=>{(0,on.trackColumnLevelLineage)({action:"view",source:"schema_column"}),u(e=>new Map(e).set(t,!0));let n=e?.id;n&&await l?.showColumnLevelLineage({node_id:n,column:t}),u(e=>new Map(e).set(t,!1))},h=(0,a.useCallback)(t=>{let n=e?.id;return`${n}-${t.data.name}`},[e?.id]),x=l?.viewOptions.column_level_lineage,y=x?`${x.node_id}-${x.column}`:null;(0,a.useEffect)(()=>{if(s&&(s.deselectAll(),y)){let e=s.getRowNode(y);e&&e.setSelected(!0)}},[s,y]);let b=(0,a.useCallback)(e=>{d(e.api)},[]),w=async e=>{let t=e.event?.target;if(t?.closest(".row-context-menu"))return;let n=e.data;n&&await m(n.name)};return(0,o.jsxs)(t4.default,{sx:{display:"flex",flexDirection:"column",height:"100%"},children:[i?(0,o.jsx)(oD.default,{severity:"warning",sx:{fontSize:"12px",p:1},children:i}):r?(0,o.jsx)(oD.default,{severity:"warning",sx:{fontSize:"12px",p:1},children:r}):(0,o.jsx)(o.Fragment,{}),p.length>0&&(0,o.jsx)(oA.ScreenshotDataGrid,{style:{blockSize:"auto",maxHeight:"100%",overflow:"auto",fontSize:"10pt",borderWidth:1},columns:f,rows:p,renderers:{noRowsFallback:(0,o.jsx)(oA.EmptyRowsRenderer,{})},ref:n,getRowId:h,getRowClass:e=>void 0!==l?"row-normal row-selectable":"row-normal",onCellClicked:w,onGridReady:b,rowSelection:{mode:"singleRow"}})]})});e.s(["SchemaView",0,oT,"SingleEnvSchemaView",0,oz],637418);var oF=e.i(468836),oV=e.i(772510),oB=e.i(845209);e.i(909139);var o$=e.i(750060),oH=e.i(113145);e.s(["NodeSqlView",0,({node:e})=>{let[t,n]=(0,a.useState)(!1),[i,r]=(0,a.useState)(!1),{data:l,isLoading:s}=(0,nh.useRecceServerFlag)(),d="dark"===(0,t1.useTheme)().palette.mode,c=l?.single_env_onboarding;if(s)return(0,o.jsx)(o.Fragment,{});if("model"!==e.data.resourceType&&"snapshot"!==e.data.resourceType)return"Not available";let u=e.data.data.base?.raw_code,f=e.data.data.current?.raw_code,p=e.data.data.base?.name??e.data.data.current?.name??"";return(0,o.jsxs)(t4.default,{className:"no-track-pii-safe",sx:{position:"relative",height:"100%"},onMouseEnter:()=>{r(!0)},onMouseLeave:()=>{r(!1)},children:[c?(0,o.jsx)(o$.CodeEditor,{language:"sql",value:u??"",readOnly:!0,lineNumbers:!0,wordWrap:!1,theme:d?"dark":"light"}):(0,o.jsx)(oH.DiffEditor,{original:u??"",modified:f??"",language:"sql",readOnly:!0,lineNumbers:!0,sideBySide:!1,theme:d?"dark":"light",height:"100%"}),(0,o.jsx)(nf.default,{onClick:()=>n(!0),size:"medium","aria-label":"Expand",sx:{position:"absolute",top:"5px",right:"20px",opacity:i?.5:.1,transition:"opacity 0.3s ease-in-out"},children:(0,o.jsx)(nn.FaExpandArrowsAlt,{})}),(0,o.jsxs)(oF.default,{open:t,onClose:()=>n(!1),maxWidth:"sm",fullWidth:!0,slotProps:{paper:{sx:{height:"75%",overflowY:"auto"}}},children:[(0,o.jsxs)(oB.default,{sx:{display:"flex",alignItems:"center"},children:[c?(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)("code",{children:p})," Model Code"]}):(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)("code",{children:p})," Model Code Diff"]}),(0,o.jsx)(t4.default,{sx:{flex:1}}),(0,o.jsx)(nf.default,{size:"small",onClick:()=>n(!1),children:(0,o.jsx)(op.IoClose,{})})]}),(0,o.jsx)(oV.default,{children:c?(0,o.jsx)(o$.CodeEditor,{language:"sql",value:u??"",fontSize:16,readOnly:!0,lineNumbers:!0,wordWrap:!1,theme:d?"dark":"light"}):(0,o.jsx)(oH.DiffEditor,{original:u??"",modified:f??"",language:"sql",theme:d?"dark":"light",className:"text-base"})})]})]})}],634513)},581435,e=>{"use strict";var t=e.i(487122),n=e.i(868422);function o(e,o){return(0,n.formatDistance)(e,(0,t.constructFrom)(e,Date.now()),o)}e.s(["formatDistanceToNow",()=>o],581435)},302061,e=>{"use strict";var t=e.i(20277),n=e.i(324066),o=e.i(76130),a=e.i(924011),i=e.i(610985),r=e.i(336277),l=e.i(427938),s=e.i(918132),d=e.i(292002),c=e.i(922946),u=e.i(523043),f=e.i(130209),p=e.i(838208),g=e.i(84723),m=e.i(960247),h=e.i(377855),x=e.i(953131),y=e.i(323194),b=e.i(987923),w=e.i(2216),v=e.i(203158),C=e.i(862754),S=e.i(396357),j=e.i(916955),_=e.i(29134),k=e.i(912007),E=e.i(224882),R=e.i(505251),N=e.i(453330),I=e.i(269324),L=e.i(703351),M=e.i(435843),O=e.i(525519),D=e.i(88515),P=e.i(166598),A=e.i(632951),T=e.i(904451),z=e.i(676502),F=e.i(592355),V=e.i(81167),B=e.i(187726),$=e.i(739145),H=e.i(428537),W=e.i(224779),G=e.i(73371),U=e.i(407670),X=e.i(132136),K=e.i(197068),Z=e.i(603338),Q=e.i(913369),q=e.i(765996),Y=e.i(832421),J=e.i(475119),ee=e.i(400905),et=e.i(727653),en=e.i(372230),eo=e.i(637418),ea=e.i(634513),ei=e.i(636819),er=e.i(325782),el=e.i(468836),es=e.i(772510),ed=e.i(896425),ec=e.i(811347),eu=e.i(581435),ef=e.i(955343);function ep(e){return(0,ef.GenIcon)({tag:"svg",attr:{viewBox:"0 0 1024 1024"},child:[{tag:"path",attr:{d:"M512 472a40 40 0 1 0 80 0 40 40 0 1 0-80 0zm367 352.9L696.3 352V178H768v-68H256v68h71.7v174L145 824.9c-2.8 7.4-4.3 15.2-4.3 23.1 0 35.3 28.7 64 64 64h614.6c7.9 0 15.7-1.5 23.1-4.3 33-12.7 49.4-49.8 36.6-82.8zM395.7 364.7V180h232.6v184.7L719.2 600c-20.7-5.3-42.1-8-63.9-8-61.2 0-119.2 21.5-165.3 60a188.78 188.78 0 0 1-121.3 43.9c-32.7 0-64.1-8.3-91.8-23.7l118.8-307.5zM210.5 844l41.7-107.8c35.7 18.1 75.4 27.8 116.6 27.8 61.2 0 119.2-21.5 165.3-60 33.9-28.2 76.3-43.9 121.3-43.9 35 0 68.4 9.5 97.6 27.1L813.5 844h-603z"},child:[]}]})(e)}var eg=e.i(224378);e.i(909139);var em=e.i(113145),eh=e.i(507524),ex=e.i(638337),ey=e.i(461566),eb=e.i(939338),ew=e.i(901407);function ev({description:e,onLike:o,onDislike:a,onClickLink:i,externalLink:r,externalLinkText:l}){return(0,t.jsxs)(n.default,{sx:{display:"flex",gap:4,justifyContent:"center",alignContent:"center",alignItems:"center"},children:[e,(0,t.jsx)(G.default,{"aria-label":"thumbs up",onClick:o,sx:{width:"32px",height:"32px"},children:(0,t.jsx)(n.default,{component:"img",src:"/imgs/feedback/thumbs-up.png",alt:"like"})}),(0,t.jsx)(G.default,{"aria-label":"thumbs down",onClick:a,sx:{width:"32px",height:"32px"},children:(0,t.jsx)(n.default,{component:"img",src:"/imgs/feedback/thumbs-down.png",alt:"dislike"})}),r&&l&&(0,t.jsxs)(eb.default,{href:r,target:"_blank",onClick:i,sx:{textDecoration:"underline"},children:[l," ",(0,t.jsx)(ew.LuExternalLink,{})]})]})}var eC=e.i(286568),eS=e.i(65089),ej=e.i(182809),e_=e.i(170660);function ek({current:e,primaryKeys:a,setPrimaryKeys:i,onRunResultOpen:s,runQuery:d,isPending:c}){return(0,t.jsxs)(r.default,{direction:"row",justifyContent:"flex-end",alignItems:"center",sx:{p:"4pt 8pt",gap:"5px",height:"54px",borderBottom:"1px solid",borderBottomColor:"divider",flex:"0 0 54px"},children:[(0,t.jsxs)(n.default,{children:[(0,t.jsxs)(l.default,{variant:"h6",component:"h2",sx:{display:"flex",alignItems:"center",gap:"5px"},children:[(0,t.jsx)(n.default,{component:ep,sx:{fontSize:"1.2em"}}),"Sandbox"]}),(0,t.jsxs)(l.default,{sx:{fontSize:"0.75rem",color:"grey.500"},children:["Compare the run results based on the modified SQL code of model"," ",(0,t.jsx)("b",{children:e?.name})]})]}),(0,t.jsx)(n.default,{sx:{flexGrow:1}}),(0,t.jsx)(ej.QueryForm,{defaultPrimaryKeys:a,onPrimaryKeysChange:i}),(0,t.jsx)(K.default,{title:"Run diff to see the changes",children:(0,t.jsx)(o.default,{size:"small",sx:{mt:"16px",fontSize:"14px"},onClick:()=>{s(),d()},color:"iochmara",variant:"contained",disabled:c,children:c?"Running...":"Run Diff"})})]})}function eE({currentModelID:e,height:n="32px",flex:o="0 0 auto"}){let a="dark"===(0,ec.useTheme)().palette.mode,{lineageGraph:i,envInfo:s}=(0,j.useLineageGraphContext)(),d="0 16px",c=(0,eS.formatTimestamp)(s?.dbt?.current?.generated_at??""),u=(0,eu.formatDistanceToNow)(c,{addSuffix:!0}),f="N/A";if(i?.nodes[e]){let t=i.nodes[e];t.data.data.current?.schema&&(f=t.data.data.current.schema)}return(0,t.jsxs)(r.default,{direction:"row",sx:{gap:0,height:n,flex:o,fontSize:"14px",alignItems:"center",m:0,bgcolor:a?(0,ed.alpha)(m.colors.neutral[700],.5):(0,ed.alpha)(m.colors.neutral[100],.5)},children:[(0,t.jsx)(r.default,{sx:{width:"50%"},children:(0,t.jsxs)(l.default,{sx:{fontWeight:"bold",margin:d},children:["ORIGINAL (Schema: ",f,", Last Updated: ",u,")"]})}),(0,t.jsx)(r.default,{sx:{width:"50%"},children:(0,t.jsx)(l.default,{sx:{fontWeight:"bold",margin:d},children:"SANDBOX EDITOR"})})]})}function eR({current:e,onChange:n}){let o="dark"===(0,ec.useTheme)().palette.mode;return(0,t.jsx)(em.DiffEditor,{original:e?.raw_code??"",modified:e?.raw_code??"",language:"sql",readOnly:!1,lineNumbers:!0,sideBySide:!0,theme:o?"dark":"light",height:"100%",onModifiedChange:n})}function eN({isOpen:e,onClose:o,current:a}){let[i,s]=(0,c.useState)(!1),[d,u]=(0,c.useState)(a?.raw_code??""),[p,g]=(0,c.useState)(e),{showRunId:m,clearRunResult:x}=(0,_.useRecceActionContext)(),{primaryKeys:y,setPrimaryKeys:b}=(0,J.useRecceQueryContext)(),{data:w,isLoading:C}=(0,eC.useRecceServerFlag)(),{apiClient:j}=(0,S.useApiConfig)(),k=async()=>{let e=eh.submitQueryDiff,t={current_model:a?.name??"",primary_keys:y,sql_template:d},{run_id:n}=await e(t,{nowait:!0},j);return m(n),await (0,ey.waitRun)(n,void 0,j)},{mutate:E,isPending:R}=(0,f.useMutation)({mutationFn:k,onSuccess(e){e.error?(0,v.trackPreviewChange)({action:"run",node:a?.name,status:"failure"}):((0,v.trackPreviewChange)({action:"run",node:a?.name,status:"success"}),setTimeout(()=>{N()},1e3),!C&&w?.single_env_onboarding&&setTimeout(()=>{L()},2e3))}}),{feedbackToast:N,closeToast:I}=function(e){let{feedbackId:n,description:o,onFeedbackSubmit:a,externalLink:i,externalLinkText:l}=e,[s,d]=(0,c.useState)(void 0);return{feedbackToast:function(e=!1){let c=localStorage.getItem(n);null!=s||("true"!==c||e)&&d(h.toaster.create({id:n,duration:void 0,type:"success",description:(0,t.jsx)(r.default,{direction:"row",children:(0,t.jsx)(ev,{description:o,onLike:()=>{a("like"),h.toaster.dismiss(n),localStorage.setItem(n,"true")},onDislike:()=>{a("dislike"),h.toaster.dismiss(n),localStorage.setItem(n,"true")},externalLink:i,externalLinkText:l,onClickLink:()=>{a("link")}})})}))},closeToast:()=>{s&&h.toaster.dismiss(s)}}}({feedbackId:ex.localStorageKeys.previewChangeFeedbackID,description:"Enjoy preview change?",onFeedbackSubmit:e=>{switch(e){case"like":(0,v.trackPreviewChangeFeedback)({feedback:"like",node:a?.name});break;case"dislike":(0,v.trackPreviewChangeFeedback)({feedback:"dislike",node:a?.name});break;case"link":(0,v.trackPreviewChangeFeedback)({feedback:"form",node:a?.name});break;default:console.log("Not support feedback type")}},externalLink:"https://docs.google.com/forms/d/e/1FAIpQLSd7Lei7Ijwo7MinWaI0K6rzZi_21gV1BKetmiNEX254kDziDA/viewform?usp=header",externalLinkText:"Give us feedback"}),{guideToast:L,closeGuideToast:O}=function(e){let[t,n]=(0,c.useState)(void 0),{guideId:o,description:a,externalLinkText:i,onExternalLinkClick:r}=e;return{guideToast:function(){null==t&&n(h.toaster.create({id:o,duration:3e3,type:"success",description:a,action:{label:i??"link",onClick:()=>{r&&r()}}}))},closeGuideToast:()=>{t&&h.toaster.dismiss(t)}}}({guideId:ex.localStorageKeys.prepareEnvGuideID,description:"Want to compare data changes with production data?",externalLink:"https://docs.datarecce.io/get-started/#prepare-dbt-artifacts",externalLinkText:"Learn how.",onExternalLinkClick:()=>{(0,v.trackSingleEnvironment)({action:"external_link",from:"preview_changes",node:a?.name})}});e!==p&&(g(e),e&&u(a?.raw_code??""));let D=()=>{o(),s(!1),x(),I(),O(),(0,v.trackPreviewChange)({action:"close",node:a?.name})};return(0,t.jsxs)(el.default,{open:e,onClose:D,maxWidth:!1,fullWidth:!0,slotProps:{paper:{sx:{width:"100%",height:"100%",maxWidth:"100%",maxHeight:"100%",m:0}}},children:[(0,t.jsxs)(n.default,{sx:{height:"40px",bgcolor:"cyan.600",px:0,py:2,display:"flex",alignItems:"center"},children:[(0,t.jsxs)(r.default,{direction:"row",alignItems:"center",sx:{height:"100%",gap:"10px"},children:[(0,t.jsx)(n.default,{component:"img",sx:{width:"20px",height:"20px",ml:"18px"},src:"/logo/recce-logo-white.png",alt:"recce-logo-white"}),(0,t.jsx)(l.default,{variant:"h6",component:"h1",sx:{fontFamily:'"Montserrat", sans-serif',fontSize:"1.125rem",color:"common.white"},children:"RECCE"}),(0,t.jsx)(er.default,{label:"Experiment",size:"small",variant:"outlined",sx:{fontSize:"0.875rem",color:"common.white",borderColor:"rgba(255,255,255,0.5)"}})]}),(0,t.jsx)(G.default,{"aria-label":"close",onClick:D,sx:{position:"absolute",right:8,top:4,color:"common.white"},children:(0,t.jsx)(Z.IoClose,{})})]}),(0,t.jsx)(es.default,{sx:{p:0},children:(0,t.jsxs)(M.VSplit,{sizes:i?[50,50]:[100,0],minSize:100*!!i,gutterSize:5*!!i,style:{flex:"1",contain:"size",height:"100%"},children:[(0,t.jsxs)(r.default,{sx:{height:"100%",m:0,p:0},children:[(0,t.jsx)(ek,{current:a,primaryKeys:y??[],setPrimaryKeys:b,onRunResultOpen:()=>s(!0),runQuery:E,isPending:R}),(0,t.jsx)(eE,{height:"32px",flex:"0 0 auto",currentModelID:a?.id??""}),(0,t.jsx)(eR,{current:a,onChange:u})]}),i?(0,t.jsx)(e_.RunResultPane,{onClose:()=>s(!1),disableAddToChecklist:!0}):(0,t.jsx)(n.default,{})]})}),(0,t.jsx)(n.default,{sx:{position:"fixed",bottom:16,right:16,opacity:.5},children:(0,t.jsx)(K.default,{title:"Give us feedback",children:(0,t.jsx)(G.default,{"aria-label":"feedback",size:"medium",onClick:()=>{N(!0)},children:(0,t.jsx)(eg.VscFeedback,{})})})})]})}function eI({children:e,value:n,index:o}){return n===o?(0,t.jsx)(t.Fragment,{children:e}):null}function eL({node:e,onCloseNode:o}){let a="model"===e.data.resourceType||"seed"===e.data.resourceType||"source"===e.data.resourceType||"snapshot"===e.data.resourceType,[i,s]=(0,c.useState)(!1),[d,u]=(0,c.useState)(!0),[f,p]=(0,c.useState)(0),{runAction:g}=(0,_.useRecceActionContext)(),{isActionAvailable:m}=(0,j.useLineageGraphContext)(),h=()=>{(0,v.trackExploreAction)({action:v.EXPLORE_ACTION.ROW_COUNT,source:v.EXPLORE_SOURCE.SCHEMA_ROW_COUNT_BUTTON,node_count:1}),g("row_count",{node_names:[e.data.name]},{showForm:!1,showLast:!1})},x=()=>{(0,v.trackExploreAction)({action:v.EXPLORE_ACTION.ROW_COUNT_DIFF,source:v.EXPLORE_SOURCE.SCHEMA_ROW_COUNT_BUTTON,node_count:1}),g("row_count_diff",{node_names:[e.data.name]},{showForm:!1,showLast:!1})},{singleEnv:y}=(0,k.useRecceInstanceContext)(),b=(e,t)=>e?q.DisableTooltipMessages.add_or_remove:m(t)?"":"This action is not supported yet.",w=Object.keys(e.data.data.base?.columns??{}),C=Object.keys(e.data.data.current?.columns??{}),S="model"===e.data.resourceType||"seed"===e.data.resourceType||"snapshot"===e.data.resourceType;return(0,t.jsxs)(n.default,{sx:{height:"100%",display:"grid",gridTemplateRows:"auto auto auto 1fr"},children:[(0,t.jsxs)(r.default,{direction:"row",alignItems:"center",children:[(0,t.jsx)(n.default,{sx:{flex:"0 1 20%",p:2},children:(0,t.jsx)(l.default,{variant:"subtitle1",fontWeight:600,className:"no-track-pii-safe",children:e.data.name})}),(0,t.jsx)(n.default,{sx:{flexGrow:1}}),!y&&S&&(0,t.jsx)(eO,{node:e,onSandboxOpen:()=>s(!0)}),(0,t.jsx)(n.default,{sx:{flex:"0 1 1%"},children:(0,t.jsx)(G.default,{size:"small",onClick:o,children:(0,t.jsx)(Z.IoClose,{})})})]}),(0,t.jsx)(n.default,{sx:{color:"text.secondary",pl:2},children:(0,t.jsxs)(r.default,{direction:"row",spacing:1,children:[(0,t.jsx)(ei.ResourceTypeTag,{node:e}),S&&(y?(0,t.jsx)(ei.RowCountTag,{node:e,onRefresh:h}):(0,t.jsx)(ei.RowCountDiffTag,{node:e,onRefresh:x}))]})}),S&&(0,t.jsx)(n.default,{sx:{pl:2,py:1},children:y?(0,t.jsx)(eM,{node:e,baseColumns:w,currentColumns:C,refetchRowCount:h,disableReason:b}):(0,t.jsx)(eD,{node:e,baseColumns:w,currentColumns:C,disableReason:b,refetchRowCountDiff:x})}),a&&(0,t.jsxs)(n.default,{sx:{overflow:"auto",display:"flex",flexDirection:"column"},children:[y&&d&&(0,t.jsx)(n.default,{sx:{p:1.5},children:(0,t.jsx)(et.RecceNotification,{onClose:()=>u(!1),align:"flex-start",children:(0,t.jsxs)(l.default,{variant:"body2",children:["Enable the Recce Checklist and start adding checks for better data validation and review.",(0,t.jsx)("br",{}),(0,t.jsx)(et.LearnHowLink,{})]})})}),(0,t.jsxs)(X.default,{value:f,onChange:(e,t)=>p(t),sx:{borderBottom:1,borderColor:"divider"},children:[(0,t.jsx)(U.default,{label:"Columns"}),(0,t.jsx)(U.default,{label:"Code"})]}),(0,t.jsxs)(n.default,{sx:{overflow:"auto",height:"calc(100% - 48px)"},children:[(0,t.jsx)(eI,{value:f,index:0,children:(0,t.jsx)(n.default,{sx:{overflowY:"auto",height:"100%"},children:y?(0,t.jsx)(eo.SingleEnvSchemaView,{current:e.data.data.current}):(0,t.jsx)(eo.SchemaView,{base:e.data.data.base,current:e.data.data.current})})}),(0,t.jsx)(eI,{value:f,index:1,children:(0,t.jsx)(n.default,{sx:{height:"100%"},children:(0,t.jsx)(ea.NodeSqlView,{node:e})})})]})]}),(0,t.jsx)(eN,{isOpen:i,onClose:()=>s(!1),current:e.data.data.current})]})}function eM({node:e,baseColumns:n,currentColumns:a,refetchRowCount:i,disableReason:l}){let[,s]=(0,R.useAppLocation)(),{setSqlQuery:d}=(0,J.useRecceQueryContext)(),{runAction:c}=(0,_.useRecceActionContext)(),{envInfo:u}=(0,j.useLineageGraphContext)(),f="added"===e.data.changeStatus||"removed"===e.data.changeStatus,p=(0,Y.formatSelectColumns)(n,a),g=`select * from {{ ref("${e.data.name}") }}`;p.length&&(g=`select
45
- ${p.join("\n ")}
46
- from {{ ref("${e.data.name}") }}`);let m=(0,en.findByRunType)("query").icon,h=(0,en.findByRunType)("row_count").icon,x=(0,en.findByRunType)("profile").icon;return(0,t.jsxs)(r.default,{direction:"row",alignItems:"center",flexWrap:"wrap",gap:1,children:[(0,t.jsx)(o.default,{size:"xsmall",variant:"outlined",color:"neutral",startIcon:(0,t.jsx)(m,{fontSize:"small"}),onClick:()=>{u?.adapterType==="dbt"?d(g):u?.adapterType==="sqlmesh"&&d(`select * from ${e.data.name}`),s("/query")},sx:{textTransform:"none"},children:"Query"}),(0,t.jsx)(o.default,{size:"xsmall",variant:"outlined",color:"neutral",startIcon:(0,t.jsx)(h,{fontSize:"small"}),onClick:()=>{i()},sx:{textTransform:"none"},children:"Row Count"}),(0,t.jsx)(K.default,{title:l(f,"profile"),placement:"top",children:(0,t.jsx)("span",{children:(0,t.jsx)(o.default,{size:"xsmall",variant:"outlined",color:"neutral",startIcon:(0,t.jsx)(x,{fontSize:"small"}),onClick:()=>{(0,v.trackExploreAction)({action:v.EXPLORE_ACTION.PROFILE,source:v.EXPLORE_SOURCE.NODE_SIDEBAR_SINGLE_ENV,node_count:1}),c("profile",{model:e.data.name},{showForm:!0,showLast:!1})},disabled:f,sx:{textTransform:"none"},children:"Profile"})})})]})}function eO({node:e,onSandboxOpen:n}){let[,a]=(0,R.useAppLocation)(),{featureToggles:i}=(0,k.useRecceInstanceContext)(),{isActionAvailable:l}=(0,j.useLineageGraphContext)(),{setPrimaryKeys:s}=(0,J.useRecceQueryContext)(),{primaryKey:d}=(0,ee.default)(e.data.name),{apiClient:u}=(0,S.useApiConfig)(),f="metadata only"===i.mode,p=(0,c.useCallback)(async()=>{let t=e.id,n=await (0,b.createSchemaDiffCheck)({node_id:t},u);a(`/checks/?id=${n.check_id}`)},[e,a,u]),g=(0,en.findByRunType)("schema_diff").icon,m=(0,en.findByRunType)("sandbox").icon;return(0,t.jsxs)(r.default,{direction:"row",alignItems:"center",sx:{mr:1},flexWrap:"wrap",gap:1,children:[(0,t.jsx)(o.default,{size:"xsmall",variant:"outlined",color:"neutral",startIcon:(0,t.jsx)(g,{fontSize:"small"}),onClick:()=>{p()},sx:{textTransform:"none"},children:"Add schema diff to checklist"}),(0,t.jsx)(Q.default,{display:f,children:(0,t.jsx)(o.default,{size:"xsmall",variant:"outlined",color:"neutral",startIcon:(0,t.jsx)(m,{fontSize:"small"}),onClick:()=>{l("query_diff_with_primary_key")&&s(void 0!==d?[d]:void 0),n(),(0,v.trackPreviewChange)({action:"explore",node:e.data.name})},disabled:i.disableDatabaseQuery,sx:{textTransform:"none"},children:"Sandbox"})})]})}function eD({node:e,baseColumns:n,currentColumns:a,disableReason:i,refetchRowCountDiff:s}){let[,d]=(0,R.useAppLocation)(),{runAction:c}=(0,_.useRecceActionContext)(),{setSqlQuery:u,setPrimaryKeys:f}=(0,J.useRecceQueryContext)(),{envInfo:p,isActionAvailable:g}=(0,j.useLineageGraphContext)(),{featureToggles:m}=(0,k.useRecceInstanceContext)(),{primaryKey:h}=(0,ee.default)(e.data.name),x="metadata only"===m.mode,y="added"===e.data.changeStatus||"removed"===e.data.changeStatus,b=(0,Y.formatSelectColumns)(n,a),w=`select * from {{ ref("${e.data.name}") }}`;b.length&&(w=`select
47
- ${b.join("\n ")}
48
- from {{ ref("${e.data.name}") }}`);let C=(0,en.findByRunType)("query_diff").icon,S=(0,en.findByRunType)("row_count_diff").icon,E=(0,en.findByRunType)("profile_diff").icon,N=(0,en.findByRunType)("value_diff").icon,I=(0,en.findByRunType)("top_k_diff").icon,L=(0,en.findByRunType)("histogram_diff").icon,M=(e,n)=>{if(x)return(0,t.jsx)(Q.default,{display:!0,children:e});let o=i(y,n);return(0,t.jsx)(K.default,{title:o,placement:"top",children:(0,t.jsx)("span",{children:e})})};return(0,t.jsxs)(r.default,{direction:"row",alignItems:"center",flexWrap:"wrap",gap:2,children:[(0,t.jsx)(l.default,{variant:"caption",fontWeight:"bold",children:"Diff"}),(0,t.jsxs)(r.default,{direction:"row",alignItems:"center",flexWrap:"wrap",gap:1,width:"93%",children:[(0,t.jsx)(Q.default,{display:x,children:(0,t.jsx)(o.default,{size:"xsmall",variant:"outlined",color:"neutral",startIcon:(0,t.jsx)(S,{fontSize:"small"}),onClick:()=>{s()},disabled:m.disableDatabaseQuery,sx:{textTransform:"none"},children:"Row Count"})}),M((0,t.jsx)(o.default,{size:"xsmall",variant:"outlined",color:"neutral",startIcon:(0,t.jsx)(E,{fontSize:"small"}),onClick:()=>{(0,v.trackExploreAction)({action:v.EXPLORE_ACTION.PROFILE_DIFF,source:v.EXPLORE_SOURCE.NODE_SIDEBAR_MULTI_ENV,node_count:1}),c("profile_diff",{model:e.data.name},{showForm:!0,showLast:!1})},disabled:y||m.disableDatabaseQuery,sx:{textTransform:"none"},children:"Profile"}),"profile_diff"),M((0,t.jsx)(o.default,{size:"xsmall",variant:"outlined",color:"neutral",startIcon:(0,t.jsx)(N,{fontSize:"small"}),onClick:()=>{(0,v.trackExploreAction)({action:v.EXPLORE_ACTION.VALUE_DIFF,source:v.EXPLORE_SOURCE.NODE_SIDEBAR_MULTI_ENV,node_count:1}),c("value_diff",{model:e.data.name},{showForm:!0,showLast:!1})},disabled:y||m.disableDatabaseQuery,sx:{textTransform:"none"},children:"Value"}),"value_diff"),M((0,t.jsx)(o.default,{size:"xsmall",variant:"outlined",color:"neutral",startIcon:(0,t.jsx)(I,{fontSize:"small"}),onClick:()=>{(0,v.trackExploreAction)({action:v.EXPLORE_ACTION.TOP_K_DIFF,source:v.EXPLORE_SOURCE.NODE_SIDEBAR_MULTI_ENV,node_count:1}),c("top_k_diff",{model:e.data.name,column_name:"",k:50},{showForm:!0})},disabled:y||m.disableDatabaseQuery,sx:{textTransform:"none"},children:"Top-K"}),"top_k_diff"),M((0,t.jsx)(o.default,{size:"xsmall",variant:"outlined",color:"neutral",startIcon:(0,t.jsx)(L,{fontSize:"small"}),onClick:()=>{(0,v.trackExploreAction)({action:v.EXPLORE_ACTION.HISTOGRAM_DIFF,source:v.EXPLORE_SOURCE.NODE_SIDEBAR_MULTI_ENV,node_count:1}),c("histogram_diff",{model:e.data.name,column_name:"",column_type:""},{showForm:!0})},disabled:y||m.disableDatabaseQuery,sx:{textTransform:"none"},children:"Histogram"}),"histogram_diff"),(0,t.jsx)(Q.default,{display:x,children:(0,t.jsx)(o.default,{size:"xsmall",variant:"outlined",color:"neutral",startIcon:(0,t.jsx)(C,{fontSize:"small"}),onClick:()=>{p?.adapterType==="dbt"?u(w):p?.adapterType==="sqlmesh"&&u(`select * from ${e.data.name}`),g("query_diff_with_primary_key")&&f(void 0!==h?[h]:void 0),d("/query")},disabled:m.disableDatabaseQuery,sx:{textTransform:"none"},children:"Query"})})]})]})}var eP=e.i(388797),eA=e.i(830520),eT=e.i(373921);function ez(){let{featureToggles:e}=(0,k.useRecceInstanceContext)(),{data:a}=(0,eA.useRecceInstanceInfo)();return"metadata only"!==e.mode?null:(0,t.jsx)(n.default,{sx:{display:"flex",alignItems:"center",width:"100%",px:1,py:.25,bgcolor:"cyan.50"},children:(0,t.jsxs)(r.default,{direction:"row",alignItems:"center",sx:{flex:1,fontSize:"0.875rem",color:"cyan.600"},spacing:1,children:[(0,t.jsx)(n.default,{component:eP.PiInfo}),(0,t.jsx)(l.default,{sx:{fontSize:"inherit",color:"inherit"},children:"Query functions disabled without a data warehouse connection."}),(0,t.jsx)(o.default,{sx:{bgcolor:"iochmara.400"},size:"small",variant:"contained",onClick:()=>{window.open((0,eT.getSettingsUrl)(a),"_blank")},children:"Connect to Data Warehouse"})]})})}var eF=e.i(783586),eV=e.i(248859);let eB={mode:"per_node",status:"pending",completed:0,total:0,actions:{}};var e$=e.i(11321),eH=e.i(845209);let eW=function(){let[e,a]=(0,c.useState)(!1),[i,l]=(0,c.useState)(0),[s,d]=(0,c.useState)(),u=(0,c.useRef)(null),f=(0,c.useCallback)(e=>(l(e),new Promise(e=>{d(()=>e),a(!0)})),[]),p=()=>{(0,v.trackExploreActionForm)({action:v.EXPLORE_ACTION.VALUE_DIFF,event:v.EXPLORE_FORM_EVENT.CANCEL}),s?.(!1),a(!1)};return{confirm:f,AlertDialog:(0,t.jsxs)(el.default,{open:e,onClose:p,maxWidth:"md",fullWidth:!0,"aria-labelledby":"value-diff-alert-dialog-title",children:[(0,t.jsxs)(eH.default,{id:"value-diff-alert-dialog-title",sx:{fontSize:"1.125rem",fontWeight:"bold"},children:["Value Diff on ",i," nodes"]}),(0,t.jsx)(G.default,{"aria-label":"close",onClick:p,sx:{position:"absolute",right:8,top:8,color:"grey.500"},children:(0,t.jsx)(Z.IoClose,{})}),(0,t.jsx)(es.default,{children:(0,t.jsx)(r.default,{spacing:"20px",children:(0,t.jsxs)(n.default,{children:["Value diff will be executed on ",i," nodes in the Lineage, which can add extra costs to your bill."]})})}),(0,t.jsxs)(e$.default,{sx:{gap:.5},children:[(0,t.jsx)(o.default,{ref:u,onClick:p,variant:"outlined",color:"neutral",children:"Cancel"}),(0,t.jsx)(o.default,{color:"iochmara",variant:"contained",onClick:()=>{(0,v.trackExploreActionForm)({action:v.EXPLORE_ACTION.VALUE_DIFF,event:v.EXPLORE_FORM_EVENT.EXECUTE}),s?.(!0),a(!1)},sx:{ml:1.5},children:"Execute"})]})]})}},eG={lineageGraphNode:F.GraphNode,lineageGraphColumnNode:T.GraphColumnNode},eU=[],eX={lineageGraphEdge:z.default},eK=e=>e.data.changeStatus?(0,eV.getIconForChangeStatus)(e.data.changeStatus).hexColor:m.colors.neutral[400],eZ=(0,c.forwardRef)(function({interactive:e=!1,...T},z){var F;let G,{isDark:U}=(0,L.useThemeColors)(),{apiClient:X}=(0,S.useApiConfig)(),K=(0,s.useReactFlow)(),Z=(0,c.useRef)(null),{successToast:Q,failToast:q}=(0,N.useClipBoardToast)(),{copyToClipboard:Y,ImageDownloadModal:J,ref:ee}=(0,E.useCopyToClipboard)({renderLibrary:"html-to-image",imageType:"png",shadowEffect:!0,backgroundColor:U?m.colors.neutral[900]:m.colors.neutral[50],ignoreElements:e=>{try{return e.classList.contains(E.IGNORE_SCREENSHOT_CLASS)}catch{if(e.className)return e.className.includes(E.IGNORE_SCREENSHOT_CLASS);return!1}},onSuccess:()=>{Q("Copied the Lineage View as an image to clipboard")},onError:e=>{console.error("Error taking screenshot",e),q("Failed to copy image to clipboard",e)}}),[et,en,eo]=(0,s.useNodesState)(eU),[ea,ei,er]=(0,s.useEdgesState)([]),{lineageGraph:el,retchLineageGraph:es,isLoading:ed,error:ec,refetchRunsAggregated:eu}=(0,j.useLineageGraphContext)(),{featureToggles:ef,singleEnv:ep}=(0,k.useRecceInstanceContext)(),{runId:eg,showRunId:em,closeRunResult:eh,runAction:ex,isRunResultOpen:eb}=(0,_.useRecceActionContext)(),{run:ew}=(0,I.useRun)(eg),[ev,eC]=(0,c.useState)({...T.viewOptions}),eS=(0,c.useCallback)((e,t,n,o,a)=>{let i=e.filter(u.isLineageGraphNode),r=Object.fromEntries(Object.entries(Object.groupBy(i,e=>e.data.changeStatus??"unchanged")).map(([e,t])=>[`nodes_${e}`,t?.length??0])),l={node_count:i.length,view_mode:t,impact_radius_enabled:n,right_sidebar_open:a,...r};o&&(l.cll_column_active=!0),(0,v.trackLineageViewRender)(l)},[]),ej=(0,c.useRef)([]).current,[e_,ek]=(0,c.useState)(void 0),eE=(0,f.useMutation)({mutationFn:e=>(0,x.getCll)(e,X)}),[eR,eN]=(0,c.useState)({}),eI=(0,c.useCallback)(e=>et.filter(u.isLineageGraphNode).find(t=>t.data.name===e),[et]);(0,c.useImperativeHandle)(z,()=>({copyToClipboard:Y}));let eM=(0,c.useMemo)(()=>!!(el&&el.modifiedSet.length>0),[el]),eO=ev.view_mode??"changed_models",eD=(0,c.useMemo)(()=>et.filter(e=>"lineageGraphNode"===e.type).map(e=>e.id),[et]),eP=(0,c.useMemo)(()=>el?eD.map(e=>el.nodes[e]):[],[el,eD]),[eA,eT]=(0,c.useState)(),eV=eA?el?.nodes[eA]:void 0,[e$,eH]=(0,c.useState)(),[eZ,eQ]=(0,c.useState)(new Set),eq=(0,c.useMemo)(()=>el?Array.from(eZ).map(e=>el.nodes[e]):[],[el,eZ]),eY=((e,{onActionStarted:t,onActionNodeUpdated:n,onActionCompleted:o})=>{let{apiClient:a}=(0,S.useApiConfig)(),i=(0,c.useRef)({...eB}).current,{showRunId:r}=(0,_.useRecceActionContext)(),l=async(l,s,d)=>{i.mode="multi_nodes",i.actions={};let c=i.mode,u=i.actions;t(),i.status="running";let f=[];for(let t of e){let e=s(t);e?(u[t.id]={mode:c,status:"skipped",skipReason:e},n(t)):(u[t.id]={mode:c,status:"pending"},f.push(t))}let p=d(f);try{let{run_id:e}=await (0,ey.submitRun)(l,p,{nowait:!0},a);for(r(e),i.currentRun={run_id:e},i.total=1;;){let t=await (0,ey.waitRun)(e,2,a);i.currentRun=t;let o=t.error?"failure":t.result?"success":"running";for(let e of f)u[e.id]={mode:c,status:o,run:t},n(e);if(t.error||t.result)break}}catch(e){}if(i.completed=1,"canceling"===i.status){i.status="canceled",o();return}i.status="completed",o()},s=async(r,l)=>{i.mode="per_node",i.actions={};let s=i.mode,d=i.actions;for(let o of(t(),i.status="running",e))d[o.id]={mode:s,status:"pending"},n(o);for(let t of(i.completed=0,i.total=e.length,e)){let{params:e,skipReason:c}=l(t);if(c)d[t.id]={mode:s,status:"skipped",skipReason:c},n(t);else try{let{run_id:o}=await (0,ey.submitRun)(r,e,{nowait:!0},a);for(i.currentRun={run_id:o},d[t.id]={mode:s,status:"running"},n(t);;){let e=await (0,ey.waitRun)(o,2,a);i.currentRun=e;let r=e.error?"failure":e.result?"success":"running";if(d[t.id]={mode:s,status:r,run:e},n(t),e.error||e.result)break}}catch(e){}finally{i.currentRun=void 0}if(i.completed++,"canceling"===i.status){i.status="canceled",o();return}}i.status="completed",o()},d=async()=>{(0,v.trackExploreAction)({action:v.EXPLORE_ACTION.ROW_COUNT,source:v.EXPLORE_SOURCE.LINEAGE_VIEW_TOP_BAR,node_count:e.length});let t=[];for(let o of e)"model"!==o.data.resourceType?(i.actions[o.id]={mode:"multi_nodes",status:"skipped",skipReason:"Not a model"},n(o)):t.push(o.data.name);await l("row_count",e=>{if("model"!==e.data.resourceType)return"Not a model"},e=>({node_names:e.map(e=>e.data.name)}))},u=async()=>{(0,v.trackExploreAction)({action:v.EXPLORE_ACTION.ROW_COUNT_DIFF,source:v.EXPLORE_SOURCE.LINEAGE_VIEW_TOP_BAR,node_count:e.length});let t=[];for(let o of e)"model"!==o.data.resourceType?(i.actions[o.id]={mode:"multi_nodes",status:"skipped",skipReason:"Not a model"},n(o)):t.push(o.data.name);await l("row_count_diff",e=>{if("model"!==e.data.resourceType)return"Not a model"},e=>({node_names:e.map(e=>e.data.name)}))},f=async()=>{i.status="canceling",i.currentRun?.run_id&&await (0,ey.cancelRun)(i.currentRun.run_id,a)};return{actionState:i,runRowCount:d,runRowCountDiff:u,runValueDiff:async()=>{(0,v.trackExploreAction)({action:v.EXPLORE_ACTION.VALUE_DIFF,source:v.EXPLORE_SOURCE.LINEAGE_VIEW_TOP_BAR,node_count:e.length}),await s("value_diff",e=>{let t=e.data.data.current?.primary_key;return t?{params:{model:e.data.name,primary_key:t}}:{skipReason:"No primary key found. The first unique column is used as primary key."}})},addLineageDiffCheck:async()=>{let t=e.map(e=>e.id);return await (0,y.createLineageDiffCheck)({node_ids:t},a)},addSchemaDiffCheck:async()=>{let t;if(1===e.length)t=await (0,b.createSchemaDiffCheck)({node_id:e[0].id},a);else{let n=e.map(e=>e.id);t=await (0,b.createSchemaDiffCheck)({node_id:n},a)}return t},cancel:f,reset:()=>{Object.assign(i,eB)}}})(eq.length>0?eq:eP,{onActionStarted:()=>{eH("action_result")},onActionNodeUpdated:e=>{en(t=>t.map(t=>t.id===e.id?{...t}:t))},onActionCompleted:()=>{}}),eJ=(0,c.useMemo)(()=>{if(!el)return new Set;let e=new Set;if(e_){for(let[t,n]of Object.entries(e_.current.nodes))!1!==n.impacted&&e.add(t);for(let t of Object.keys(e_.current.columns))e.add(t)}else e="action_result"===e$?new Set(Object.keys(eY.actionState.actions)):eV?(0,V.union)((0,u.selectUpstream)(el,[eV.id]),(0,u.selectDownstream)(el,[eV.id])):eM?(0,u.selectDownstream)(el,el.modifiedSet):new Set(eD);return new Set(e)},[el,e_,e$,eV,eM,eY.actionState.actions,eD]),e0=(0,$.useLineageViewContextMenu)(),e1=()=>{e0.closeContextMenu()};(0,c.useLayoutEffect)(()=>{(async()=>{let e,t;if(!el)return;if(ev.node_ids)t=ev.node_ids;else{let e=el.manifestMetadata.current?.project_name,n={view_mode:ev.view_mode??(eM?"changed_models":"all"),packages:e?[e]:void 0,...T.viewOptions};try{t=(await (0,w.select)({select:n.select,exclude:n.exclude,packages:n.packages,view_mode:n.view_mode},X)).nodes}catch(e){n.view_mode="all",t=(await (0,w.select)({select:n.select,exclude:n.exclude,packages:n.packages,view_mode:n.view_mode},X)).nodes}eC(n)}if(ev.column_level_lineage)try{e=await eE.mutateAsync(ev.column_level_lineage)}catch(e){if(e instanceof p.AxiosError)return void h.toaster.create({title:"Column Level Lineage error",description:e.response?.data.detail??e.message,type:"error",closable:!0})}let[n,o,a]=(0,u.toReactFlow)(el,{selectedNodes:t,cll:e});(0,u.layout)(n,o),en(n),ei(o),eN(a),ek(e),eS(n,ev.view_mode??"changed_models",ev.column_level_lineage?.change_analysis??!1,!!ev.column_level_lineage?.column,!!eA||!!ew)})()},[el]);let e2=()=>{eT(void 0)},e3=async e=>{let t=et.find(t=>t.id===e);if(t){if(t.parentId){let e=t.parentId;t=et.find(t=>t.id===e)??t}if(null!=t.measured){let{width:e,height:n}=t.measured;if(e&&n){let o=t.position.x+e/2,a=t.position.y+n/2,i=K.getZoom();await K.setCenter(o,a,{zoom:i,duration:200})}}}},e5=(()=>{let[,e]=(0,R.useAppLocation)();return(0,c.useCallback)(t=>{t.check_id&&e(`/checks/?id=${t.check_id}`)},[e])})();F=async()=>{"selecting"!==e$&&(eA?await e3(eA):await K.fitView({nodes:et,duration:200}))},G=(0,c.useRef)({width:0,height:0}),(0,c.useEffect)(()=>{let e=Z.current,t=new ResizeObserver(e=>{for(let t of e){let e=t.contentRect.width,n=t.contentRect.height;(Math.abs(n-G.current.height)>10||Math.abs(e-G.current.width)>10)&&G.current.height>0&&n>0&&G.current.width>0&&e>0&&F(),G.current={width:e,height:n}}});return e&&t.observe(e),()=>{e&&t.unobserve(e)}},[F,Z]);let e4=async(e,t=!1)=>{let n=ev.column_level_lineage;await e9({...ev,column_level_lineage:e},!1),t||ej.push(n),e?.node_id?eT(e.node_id):eT(void 0)},e6=async e=>{if(e){if(0===ej.length)return;let e=ej.pop();e?await e4(e,!0):await e4(void 0,!0)}else await e4(void 0,!0)},e7=(t,n)=>{if(e&&el){if((0,u.isLineageGraphColumnNode)(n))return void(!e$&&e4({node_id:n.data.node.id,column:n.data.column}));if(e1(),e$)if("action_result"===e$){let e=eY.actionState.actions[n.id];e.run?.run_id&&em(e.run.run_id),eT(n.id)}else{let e=new Set(eZ);eZ.has(n.id)?e.delete(n.id):e.add(n.id),eQ(e),0===e.size&&eH(void 0)}else eT(n.id)}},e8=async e=>{let t,n,{viewOptions:o=ev}=e,{fitView:a}=e;if(!el)return;if(ev.select!==o.select||ev.exclude!==o.exclude||ev.packages!==o.packages||ev.view_mode!==o.view_mode){try{let e=await (0,w.select)({select:o.select,exclude:o.exclude,packages:o.packages,view_mode:o.view_mode},X);o={...o,column_level_lineage:void 0},t=e.nodes}catch(e){e instanceof p.AxiosError&&h.toaster.create({title:"Select node error",description:e.response?.data.detail??e.message,type:"error",closable:!0});return}eT(void 0)}else t=et.map(e=>e.id);if(o.column_level_lineage)try{n=await eE.mutateAsync(o.column_level_lineage)}catch(e){if(e instanceof p.AxiosError)return void h.toaster.create({title:"Column Level Lineage error",description:e.response?.data.detail??e.message,type:"error",closable:!0})}let[i,r,l]=(0,u.toReactFlow)(el,{selectedNodes:t,cll:n});en(i),ei(r),eN(l),ek(n),eS(i,o.view_mode??"changed_models",o.column_level_lineage?.change_analysis??!1,!!o.column_level_lineage?.column,!!eA||!!ew),ew&&((0,C.isTopKDiffRun)(ew)||(0,C.isProfileDiffRun)(ew)||(0,C.isHistogramDiffRun)(ew)||(0,C.isValueDiffRun)(ew)||(0,C.isValueDiffDetailRun)(ew))&&ew.params?.model&&!eI(ew.params.model)&&eh(),a&&(await new Promise(e=>setTimeout(e,1)),K.fitView({nodes:i,duration:200}))},e9=async(e,t=!0)=>{eC(e),await e8({viewOptions:e,fitView:t})},te=eW();(0,c.useEffect)(()=>{let t=ew?.type;if(e&&eb&&!(!t||["query_diff","query","row_count"].includes(t))&&!e$){let e;((0,C.isTopKDiffRun)(ew)||(0,C.isProfileDiffRun)(ew)||(0,C.isHistogramDiffRun)(ew)||(0,C.isValueDiffRun)(ew)||(0,C.isValueDiffDetailRun)(ew))&&(e=ew.params?.model);let t=new MouseEvent("click",{bubbles:!0,cancelable:!0,view:window});if(e){let n=eI(e);n?(0,u.isLineageGraphNode)(n)&&eV!==n.data.data&&e7(t,n):e9({...ev,view_mode:"all"})}else e2()}},[ew,ev,eb,e$,eI,eV,e]);let tt=(t,n)=>{if(!e||"action_result"===e$)return;t.preventDefault();let o=ee.current,a=o.getBoundingClientRect(),i=t.clientX-a.left,r=t.clientY-a.top+o.offsetTop;e0.showContextMenu(i,r,n)},tn=()=>{eH(void 0),eQ(new Set),eT(void 0),eh(),eu?.()},to={interactive:e,nodes:et,focusedNode:eV,selectedNodes:eq,viewOptions:ev,showContextMenu:tt,onViewOptionsChanged:e9,selectMode:e$,selectNode:e=>{if(e$){if("selecting"===e$){let t=new Set(eZ);eZ.has(e)?t.delete(e):t.add(e),eQ(t),0===t.size&&eH(void 0)}}else el&&(eQ(new Set([e])),eH("selecting"),eT(void 0),eY.reset())},selectParentNodes:(e,t=1e3)=>{if("action_result"===e$||void 0===el)return;!e$&&(eH("selecting"),eY.reset(),ev.column_level_lineage&&e9({...ev,column_level_lineage:void 0}));let n=(0,u.selectUpstream)(el,[e],t);eQ((0,V.union)(eZ,n))},selectChildNodes:(e,t=1e3)=>{if("action_result"===e$||void 0===el)return;!e$&&(eH("selecting"),eY.reset(),ev.column_level_lineage&&e9({...ev,column_level_lineage:void 0}));let n=(0,u.selectDownstream)(el,[e],t);eQ((0,V.union)(eZ,n))},deselect:tn,isNodeHighlighted:e=>eJ.has(e),isNodeSelected:e=>eZ.has(e),isEdgeHighlighted:(e,t)=>e_?e in e_.current.parent_map&&t in e_.current.parent_map[e]:eJ.has(e)&&eJ.has(t),isNodeShowingChangeAnalysis:e=>{if(!el)return!1;let t=e in el.nodes?el.nodes[e]:void 0;if(ev.column_level_lineage?.change_analysis){let n=ev.column_level_lineage;return n.node_id&&!n.column?n.node_id===e&&!!t?.data.changeStatus:!!t?.data.changeStatus}return!1},getNodeAction:e=>eY.actionState.actions[e],getNodeColumnSet:e=>e in eR?new Set(eR[e]):new Set,runRowCount:async()=>{"selecting"===e$?(await eY.runRowCount(),(0,v.trackMultiNodesAction)({type:"row_count",selected:"multi"})):eV?(ex("row_count",{node_names:[eV.data.name]},{showForm:!1,showLast:!1}),(0,v.trackMultiNodesAction)({type:"row_count",selected:"single"})):(ex("row_count",{select:ev.select,exclude:ev.exclude,packages:ev.packages,view_mode:ev.view_mode}),(0,v.trackMultiNodesAction)({type:"row_count",selected:"none"}))},runRowCountDiff:async()=>{"selecting"===e$?(await eY.runRowCountDiff(),(0,v.trackMultiNodesAction)({type:"row_count_diff",selected:"multi"})):eV?(ex("row_count_diff",{node_names:[eV.data.name]},{showForm:!1,showLast:!1}),(0,v.trackMultiNodesAction)({type:"row_count_diff",selected:"single"})):(ex("row_count_diff",{select:ev.select,exclude:ev.exclude,packages:ev.packages,view_mode:ev.view_mode}),(0,v.trackMultiNodesAction)({type:"row_count_diff",selected:"none"}))},runValueDiff:async()=>{if(eV)ex("value_diff",{model:eV.data.name},{showForm:!0,showLast:!1}),(0,v.trackMultiNodesAction)({type:"value_diff",selected:"single"});else{let e="selecting"===e$?eq.length:eD.length;await te.confirm(e)&&(await eY.runValueDiff(),(0,v.trackMultiNodesAction)({type:"value_diff",selected:"selecting"===e$?"multi":"none"}))}},addLineageDiffCheck:async()=>{let e;"selecting"===e$?(e=await eY.addLineageDiffCheck(),tn(),(0,v.trackMultiNodesAction)({type:"lineage_diff",selected:"multi"})):eV||(e=await (0,y.createLineageDiffCheck)(ev,X),(0,v.trackMultiNodesAction)({type:"lineage_diff",selected:"none"})),e&&e5(e)},addSchemaDiffCheck:async()=>{let e;"selecting"===e$?eq.length>0&&(e=await eY.addSchemaDiffCheck(),tn(),(0,v.trackMultiNodesAction)({type:"schema_diff",selected:"multi"})):eV?(e=await (0,b.createSchemaDiffCheck)({node_id:eV.id},X),(0,v.trackMultiNodesAction)({type:"schema_diff",selected:"single"})):(e=await (0,b.createSchemaDiffCheck)({select:ev.select,exclude:ev.exclude,packages:ev.packages,view_mode:ev.view_mode},X),(0,v.trackMultiNodesAction)({type:"schema_diff",selected:"none"})),e&&e5(e)},cancel:eY.cancel,actionState:eY.actionState,centerNode:e3,cll:e_,showColumnLevelLineage:e4,resetColumnLevelLineage:e6};return ed?(0,t.jsx)(n.default,{sx:{width:"100%",height:"100%",display:"flex",alignItems:"center",justifyContent:"center"},children:(0,t.jsx)(a.default,{size:48})}):ec?(0,t.jsx)(n.default,{sx:{height:"100%",display:"flex",alignItems:"center",justifyContent:"center"},children:(0,t.jsxs)(r.default,{alignItems:"center",spacing:1,children:[(0,t.jsx)(n.default,{children:"Failed to load lineage data. This could be because the server has been terminated or there is a network error."}),(0,t.jsxs)(n.default,{children:["[Reason: ",ec,"]"]}),(0,t.jsx)(o.default,{color:"iochmara",variant:"contained",onClick:()=>{es&&es()},children:"Retry"})]})}):el&&et!=eU?"changed_models"!==eO||el.modifiedSet.length?(0,t.jsxs)(B.LineageViewContext.Provider,{value:to,children:[(0,t.jsxs)(M.HSplit,{sizes:eV?[70,30]:[100,0],minSize:400*!!eV,gutterSize:5*!!eV,style:{height:"100%",width:"100%"},children:[(0,t.jsxs)(r.default,{ref:Z,divider:(0,t.jsx)(i.default,{sx:{borderColor:"grey.200"}}),spacing:0,sx:{contain:"strict",position:"relative"},children:[e&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(W.LineageViewTopBar,{}),"metadata only"===ef.mode&&(0,t.jsx)(ez,{})]}),(0,t.jsxs)(s.ReactFlow,{proOptions:{hideAttribution:!0},nodeTypes:eG,edgeTypes:eX,nodes:et,edges:ea,onNodesChange:eo,onEdgesChange:er,onNodeClick:e7,onNodeContextMenu:tt,onClick:e1,onInit:async()=>{if(eM)await K.fitView();else{let e=(0,d.getNodesBounds)(et,{});await K.setCenter(e.x+e.width/2,e.y+e.height/2,{zoom:1})}},maxZoom:1,minZoom:.1,nodesDraggable:e,ref:ee,colorMode:U?"dark":"light",children:[(0,t.jsx)(s.Background,{id:"lineage-bg",variant:s.BackgroundVariant.Dots,color:U?m.colors.neutral[700]:m.colors.neutral[300],gap:20,size:2}),(0,t.jsx)(s.Controls,{showInteractive:!1,position:"top-right",className:E.IGNORE_SCREENSHOT_CLASS,style:{backgroundColor:U?m.colors.neutral[700]:void 0,borderColor:U?m.colors.neutral[600]:void 0},children:(0,t.jsx)(s.ControlButton,{title:"copy image",onClick:async()=>{await Y(),(0,v.trackCopyToClipboard)({type:eO,from:"lineage_view"})},style:{backgroundColor:U?m.colors.neutral[700]:void 0,color:U?m.colors.neutral[200]:void 0},children:(0,t.jsx)(n.default,{component:g.FiCopy})})}),(0,t.jsx)(J,{}),(0,t.jsx)(s.Panel,{position:"bottom-left",children:(0,t.jsxs)(r.default,{spacing:"5px",children:[eM&&(0,t.jsx)(D.ChangeStatusLegend,{}),ev.column_level_lineage&&(0,t.jsx)(A.ColumnLevelLineageLegend,{})]})}),(0,t.jsx)(s.Panel,{position:"top-center",children:(0,t.jsx)(H.LineageViewNotification,{notification:ep?(0,t.jsx)(eF.BaseEnvironmentSetupNotification,{}):null,type:"info"})}),(0,t.jsx)(s.Panel,{position:"top-left",children:(0,t.jsxs)(r.default,{spacing:"5px",children:[(0,t.jsx)(P.ColumnLevelLineageControl,{action:eE}),0==et.length&&(0,t.jsx)(l.default,{sx:{fontSize:"1.25rem",color:"grey",opacity:.5},children:"No nodes"})]})}),(0,t.jsx)(s.MiniMap,{nodeColor:eK,nodeStrokeWidth:3,zoomable:!0,pannable:!0,bgColor:U?m.colors.neutral[800]:void 0,maskColor:U?`${m.colors.neutral[900]}99`:`${m.colors.neutral[100]}99`}),"action_result"===e$&&(0,t.jsx)(s.Panel,{position:"bottom-center",className:E.IGNORE_SCREENSHOT_CLASS,children:(0,t.jsx)(O.ActionControl,{onClose:()=>{tn()}})})]}),(0,t.jsx)($.LineageViewContextMenu,{...e0.props})]}),eV?(0,t.jsx)(n.default,{sx:{borderLeft:"solid 1px",borderColor:"divider",height:"100%"},children:(0,t.jsx)(eL,{node:eV,onCloseNode:e2})}):(0,t.jsx)(n.default,{})]}),te.AlertDialog]}):(0,t.jsx)(n.default,{sx:{height:"100%",display:"flex",alignItems:"center",justifyContent:"center"},children:(0,t.jsxs)(r.default,{alignItems:"center",spacing:1,children:[(0,t.jsx)(t.Fragment,{children:"No change detected"}),(0,t.jsx)(o.default,{color:"iochmara",variant:"contained",onClick:async()=>{await e9({...ev,view_mode:"all"})},children:"Show all nodes"})]})}):(0,t.jsx)(t.Fragment,{})});e.s(["LineageView",0,eZ],302061)}]);
@@ -1 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,130209,e=>{"use strict";var t=e.i(922946),a=e.i(599973),r=e.i(889747),i=e.i(279743),o=e.i(204039),l=class extends i.Subscribable{#e;#t=void 0;#a;#r;constructor(e,t){super(),this.#e=e,this.setOptions(t),this.bindMethods(),this.#i()}bindMethods(){this.mutate=this.mutate.bind(this),this.reset=this.reset.bind(this)}setOptions(e){let t=this.options;this.options=this.#e.defaultMutationOptions(e),(0,o.shallowEqualObjects)(this.options,t)||this.#e.getMutationCache().notify({type:"observerOptionsUpdated",mutation:this.#a,observer:this}),t?.mutationKey&&this.options.mutationKey&&(0,o.hashKey)(t.mutationKey)!==(0,o.hashKey)(this.options.mutationKey)?this.reset():this.#a?.state.status==="pending"&&this.#a.setOptions(this.options)}onUnsubscribe(){this.hasListeners()||this.#a?.removeObserver(this)}onMutationUpdate(e){this.#i(),this.#o(e)}getCurrentResult(){return this.#t}reset(){this.#a?.removeObserver(this),this.#a=void 0,this.#i(),this.#o()}mutate(e,t){return this.#r=t,this.#a?.removeObserver(this),this.#a=this.#e.getMutationCache().build(this.#e,this.options),this.#a.addObserver(this),this.#a.execute(e)}#i(){let e=this.#a?.state??(0,a.getDefaultState)();this.#t={...e,isPending:"pending"===e.status,isSuccess:"success"===e.status,isError:"error"===e.status,isIdle:"idle"===e.status,mutate:this.mutate,reset:this.reset}}#o(e){r.notifyManager.batch(()=>{if(this.#r&&this.hasListeners()){let t=this.#t.variables,a=this.#t.context,r={client:this.#e,meta:this.options.meta,mutationKey:this.options.mutationKey};e?.type==="success"?(this.#r.onSuccess?.(e.data,t,a,r),this.#r.onSettled?.(e.data,null,t,a,r)):e?.type==="error"&&(this.#r.onError?.(e.error,t,a,r),this.#r.onSettled?.(void 0,e.error,t,a,r))}this.listeners.forEach(e=>{e(this.#t)})})}},n=e.i(63257);function s(e,a){let i=(0,n.useQueryClient)(a),[s]=t.useState(()=>new l(i,e));t.useEffect(()=>{s.setOptions(e)},[s,e]);let d=t.useSyncExternalStore(t.useCallback(e=>s.subscribe(r.notifyManager.batchCalls(e)),[s]),()=>s.getCurrentResult(),()=>s.getCurrentResult()),c=t.useCallback((e,t)=>{s.mutate(e,t).catch(o.noop)},[s]);if(d.error&&(0,o.shouldThrowError)(s.options.throwOnError,[d.error]))throw d.error;return{...d,mutate:c,mutateAsync:d.mutate}}e.s(["useMutation",()=>s],130209)},913369,e=>{"use strict";var t=e.i(20277),a=e.i(324066),r=e.i(939338),i=e.i(359143),o=e.i(922946),l=e.i(180806);function n({children:e,display:n}){let[s,d]=(0,o.useState)(!1),c=(0,o.useRef)(null),u=(0,o.useRef)(null),p=(0,o.useCallback)(()=>{c.current&&(clearTimeout(c.current),c.current=null),d(!0)},[]),f=(0,o.useCallback)(()=>{c.current=setTimeout(()=>{d(!1)},100)},[]);return n?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(a.default,{ref:u,onMouseEnter:p,onMouseLeave:f,sx:{display:"contents"},children:e}),(0,t.jsxs)(i.default,{open:s,anchorEl:u.current,onClose:()=>d(!1),anchorOrigin:{vertical:"bottom",horizontal:"left"},transformOrigin:{vertical:"top",horizontal:"left"},disableAutoFocus:!0,disableEnforceFocus:!0,sx:{pointerEvents:"none"},slotProps:{paper:{onMouseEnter:p,onMouseLeave:f,sx:{bgcolor:"grey.600",color:"white",p:1.5,pointerEvents:"auto"}}},children:["Connect to a data warehouse to unlock Diff."," ",(0,t.jsx)(r.default,{href:l.RECCE_SUPPORT_CALENDAR_URL,target:"_blank",sx:{color:"white",textDecoration:"underline"},children:"Learn more"}),"."]})]}):e}e.s(["default",()=>n])},2936,507524,e=>{"use strict";var t=e.i(20277),a=e.i(324066),r=e.i(76130),i=e.i(224378),o=e.i(203158),l=e.i(29134);function n(){let{isHistoryOpen:e,showHistory:n}=(0,l.useRecceActionContext)();if(!e)return(0,t.jsxs)(a.default,{children:[(0,t.jsx)(a.default,{sx:{fontSize:"8pt"},children:"History"}),(0,t.jsx)(r.default,{size:"xsmall",variant:"outlined",color:"neutral",startIcon:(0,t.jsx)(i.VscHistory,{}),onClick:()=>{(0,o.trackHistoryAction)({name:e?"hide":"show"}),n()},children:"Show"})]})}e.s(["default",()=>n],2936);var s=e.i(705443),d=e.i(461566);async function c(e,t,a=s.axiosClient){return await (0,d.submitRun)("query",e,t,a)}async function u(e,t,a=s.axiosClient){return await (0,d.submitRun)("query_base",e,t,a)}async function p(e,t,a=s.axiosClient){return await (0,d.submitRun)("query_diff",e,t,a)}e.s(["submitQuery",()=>c,"submitQueryBase",()=>u,"submitQueryDiff",()=>p],507524)},505172,e=>{"use strict";e.i(210175);var t=e.i(922946),a=e.i(7284),r=e.i(778024),i=e.i(427447),o=e.i(446547),l=e.i(73205),n=e.i(519273),s=e.i(981335),d=e.i(723938),c=e.i(577950),u=e.i(838443),p=e.i(435983),f=e.i(446519);function h(e){return(0,f.default)("MuiListItem",e)}(0,p.default)("MuiListItem",["root","container","dense","alignItemsFlexStart","divider","gutters","padding","secondaryAction"]);let m=(0,p.default)("MuiListItemButton",["root","focusVisible","dense","alignItemsFlexStart","disabled","divider","gutters","selected"]);function g(e){return(0,f.default)("MuiListItemSecondaryAction",e)}(0,p.default)("MuiListItemSecondaryAction",["root","disableGutters"]);var x=e.i(20277);let y=(0,o.styled)("div",{name:"MuiListItemSecondaryAction",slot:"Root",overridesResolver:(e,t)=>{let{ownerState:a}=e;return[t.root,a.disableGutters&&t.disableGutters]}})({position:"absolute",right:16,top:"50%",transform:"translateY(-50%)",variants:[{props:({ownerState:e})=>e.disableGutters,style:{right:0}}]}),v=t.forwardRef(function(e,i){let o=(0,n.useDefaultProps)({props:e,name:"MuiListItemSecondaryAction"}),{className:l,...s}=o,d=t.useContext(u.default),c={...o,disableGutters:d.disableGutters},p=(e=>{let{disableGutters:t,classes:a}=e;return(0,r.default)({root:["root",t&&"disableGutters"]},g,a)})(c);return(0,x.jsx)(y,{className:(0,a.default)(p.root,l),ownerState:c,ref:i,...s})});v.muiName="ListItemSecondaryAction";let b=(0,o.styled)("div",{name:"MuiListItem",slot:"Root",overridesResolver:(e,t)=>{let{ownerState:a}=e;return[t.root,a.dense&&t.dense,"flex-start"===a.alignItems&&t.alignItemsFlexStart,a.divider&&t.divider,!a.disableGutters&&t.gutters,!a.disablePadding&&t.padding,a.hasSecondaryAction&&t.secondaryAction]}})((0,l.default)(({theme:e})=>({display:"flex",justifyContent:"flex-start",alignItems:"center",position:"relative",textDecoration:"none",width:"100%",boxSizing:"border-box",textAlign:"left",variants:[{props:({ownerState:e})=>!e.disablePadding,style:{paddingTop:8,paddingBottom:8}},{props:({ownerState:e})=>!e.disablePadding&&e.dense,style:{paddingTop:4,paddingBottom:4}},{props:({ownerState:e})=>!e.disablePadding&&!e.disableGutters,style:{paddingLeft:16,paddingRight:16}},{props:({ownerState:e})=>!e.disablePadding&&!!e.secondaryAction,style:{paddingRight:48}},{props:({ownerState:e})=>!!e.secondaryAction,style:{[`& > .${m.root}`]:{paddingRight:48}}},{props:{alignItems:"flex-start"},style:{alignItems:"flex-start"}},{props:({ownerState:e})=>e.divider,style:{borderBottom:`1px solid ${(e.vars||e).palette.divider}`,backgroundClip:"padding-box"}},{props:({ownerState:e})=>e.button,style:{transition:e.transitions.create("background-color",{duration:e.transitions.duration.shortest}),"&:hover":{textDecoration:"none",backgroundColor:(e.vars||e).palette.action.hover,"@media (hover: none)":{backgroundColor:"transparent"}}}},{props:({ownerState:e})=>e.hasSecondaryAction,style:{paddingRight:48}}]}))),C=(0,o.styled)("li",{name:"MuiListItem",slot:"Container"})({position:"relative"}),S=t.forwardRef(function(e,o){let l=(0,n.useDefaultProps)({props:e,name:"MuiListItem"}),{alignItems:p="center",children:f,className:m,component:g,components:y={},componentsProps:S={},ContainerComponent:j="li",ContainerProps:{className:w,...$}={},dense:R=!1,disableGutters:k=!1,disablePadding:I=!1,divider:M=!1,secondaryAction:L,slotProps:z={},slots:O={},...P}=l,E=t.useContext(u.default),A=t.useMemo(()=>({dense:R||E.dense||!1,alignItems:p,disableGutters:k}),[p,E.dense,R,k]),T=t.useRef(null),H=t.Children.toArray(f),V=H.length&&(0,s.default)(H[H.length-1],["ListItemSecondaryAction"]),D={...l,alignItems:p,dense:A.dense,disableGutters:k,disablePadding:I,divider:M,hasSecondaryAction:V},N=(e=>{let{alignItems:t,classes:a,dense:i,disableGutters:o,disablePadding:l,divider:n,hasSecondaryAction:s}=e;return(0,r.default)({root:["root",i&&"dense",!o&&"gutters",!l&&"padding",n&&"divider","flex-start"===t&&"alignItemsFlexStart",s&&"secondaryAction"],container:["container"],secondaryAction:["secondaryAction"]},h,a)})(D),B=(0,d.default)(T,o),[F,_]=(0,c.default)("secondaryAction",{elementType:v,externalForwardedProps:{slots:O,slotProps:z},ownerState:D,className:N.secondaryAction}),G=O.root||y.Root||b,K=z.root||S.root||{},Z={className:(0,a.default)(N.root,K.className,m),...P},U=g||"li";return V?(U=Z.component||g?U:"div","li"===j&&("li"===U?U="div":"li"===Z.component&&(Z.component="div")),(0,x.jsx)(u.default.Provider,{value:A,children:(0,x.jsxs)(C,{as:j,className:(0,a.default)(N.container,w),ref:B,ownerState:D,...$,children:[(0,x.jsx)(G,{...K,...!(0,i.default)(G)&&{as:U,ownerState:{...D,...K.ownerState}},...Z,children:H}),H.pop()]})})):(0,x.jsx)(u.default.Provider,{value:A,children:(0,x.jsxs)(G,{...K,as:U,ref:B,...!(0,i.default)(G)&&{ownerState:{...D,...K.ownerState}},...Z,children:[H,L&&(0,x.jsx)(F,{..._,children:L})]})})});e.s(["default",0,S],505172)},42409,e=>{"use strict";var t=e.i(955343);function a(e){return(0,t.GenIcon)({tag:"svg",attr:{viewBox:"0 0 24 24",fill:"currentColor"},child:[{tag:"path",attr:{d:"M12 16L6 10H18L12 16Z"},child:[]}]})(e)}function r(e){return(0,t.GenIcon)({tag:"svg",attr:{viewBox:"0 0 24 24",fill:"currentColor"},child:[{tag:"path",attr:{d:"M12 8L18 14H6L12 8Z"},child:[]}]})(e)}function i(e){return(0,t.GenIcon)({tag:"svg",attr:{viewBox:"0 0 24 24",fill:"currentColor"},child:[{tag:"path",attr:{d:"M3 3H21C21.5523 3 22 3.44772 22 4V20C22 20.5523 21.5523 21 21 21H3C2.44772 21 2 20.5523 2 20V4C2 3.44772 2.44772 3 3 3ZM4 5V19H20V5H4ZM12 15H18V17H12V15ZM8.66685 12L5.83842 9.17157L7.25264 7.75736L11.4953 12L7.25264 16.2426L5.83842 14.8284L8.66685 12Z"},child:[]}]})(e)}function o(e){return(0,t.GenIcon)({tag:"svg",attr:{viewBox:"0 0 24 24",fill:"currentColor"},child:[{tag:"path",attr:{d:"M18 3C19.6569 3 21 4.34315 21 6C21 7.65685 19.6569 9 18 9H15C13.6941 9 12.5831 8.16562 12.171 7.0009L11 7C9.9 7 9 7.9 9 9L9.0009 9.17102C10.1656 9.58312 11 10.6941 11 12C11 13.3059 10.1656 14.4169 9.0009 14.829L9 15C9 16.1 9.9 17 11 17L12.1707 17.0001C12.5825 15.8349 13.6937 15 15 15H18C19.6569 15 21 16.3431 21 18C21 19.6569 19.6569 21 18 21H15C13.6941 21 12.5831 20.1656 12.171 19.0009L11 19C8.79 19 7 17.21 7 15H5C3.34315 15 2 13.6569 2 12C2 10.3431 3.34315 9 5 9H7C7 6.79086 8.79086 5 11 5L12.1707 5.00009C12.5825 3.83485 13.6937 3 15 3H18ZM18 17H15C14.4477 17 14 17.4477 14 18C14 18.5523 14.4477 19 15 19H18C18.5523 19 19 18.5523 19 18C19 17.4477 18.5523 17 18 17ZM8 11H5C4.44772 11 4 11.4477 4 12C4 12.5523 4.44772 13 5 13H8C8.55228 13 9 12.5523 9 12C9 11.4477 8.55228 11 8 11ZM18 5H15C14.4477 5 14 5.44772 14 6C14 6.55228 14.4477 7 15 7H18C18.5523 7 19 6.55228 19 6C19 5.44772 18.5523 5 18 5Z"},child:[]}]})(e)}function l(e){return(0,t.GenIcon)({tag:"svg",attr:{viewBox:"0 0 24 24",fill:"currentColor"},child:[{tag:"path",attr:{d:"M12.0049 22.0027C6.48204 22.0027 2.00488 17.5256 2.00488 12.0027C2.00488 6.4799 6.48204 2.00275 12.0049 2.00275C17.5277 2.00275 22.0049 6.4799 22.0049 12.0027C22.0049 17.5256 17.5277 22.0027 12.0049 22.0027ZM12.0049 20.0027C16.4232 20.0027 20.0049 16.421 20.0049 12.0027C20.0049 7.58447 16.4232 4.00275 12.0049 4.00275C7.5866 4.00275 4.00488 7.58447 4.00488 12.0027C4.00488 16.421 7.5866 20.0027 12.0049 20.0027ZM7.00488 9.00275L10.0049 5.50275L13.0049 9.00275H11.0049V13.0027H9.00488V9.00275H7.00488ZM17.0049 15.0027L14.0049 18.5027L11.0049 15.0027H13.0049V11.0027H15.0049V15.0027H17.0049Z"},child:[]}]})(e)}e.s(["RiArrowDownSFill",()=>a,"RiArrowUpSFill",()=>r,"RiMindMap",()=>o,"RiSwapLine",()=>l,"RiTerminalBoxLine",()=>i])},783586,e=>{"use strict";var t=e.i(20277),a=e.i(324066),r=e.i(76130),i=e.i(939338),o=e.i(228628),l=e.i(505172),n=e.i(336277),s=e.i(427938),d=e.i(42409);function c(){return(0,t.jsx)(n.default,{sx:{flex:1,height:"100%",minHeight:0,m:1,p:2,bgcolor:"iochmara.50",borderRadius:2,boxShadow:2,justifyContent:"center"},children:(0,t.jsxs)(n.default,{sx:{width:"80%",overflowY:"auto",gap:3,px:4,pb:4},alignSelf:"center",children:[(0,t.jsxs)(n.default,{alignItems:"center",spacing:2,children:[(0,t.jsx)(a.default,{sx:{p:1,bgcolor:"background.paper",borderRadius:"50%",display:"flex",alignItems:"center",justifyContent:"center",boxShadow:2},children:(0,t.jsx)(a.default,{component:d.RiTerminalBoxLine,sx:{fontSize:28,color:"iochmara.500"}})}),(0,t.jsx)(s.default,{variant:"h5",sx:{mt:2},children:"Wait, there's more!"}),(0,t.jsxs)(s.default,{sx:{textAlign:"center"},children:["Recce is currently running in"," ",(0,t.jsx)(s.default,{component:"span",sx:{fontWeight:"bold"},children:"limited functionality mode"})," ","so you can run queries but"," ",(0,t.jsx)(s.default,{component:"span",sx:{fontWeight:"bold"},children:"can't diff the results yet!"})]})]}),(0,t.jsxs)(n.default,{spacing:1,children:[(0,t.jsx)(s.default,{children:"To unlock the full power of Recce, set up a base environment of dbt artifacts for comparison."}),(0,t.jsx)(s.default,{children:"Once configured, you'll be able to:"}),(0,t.jsxs)(o.default,{sx:{listStyleType:"disc",pl:2},children:[(0,t.jsx)(l.default,{sx:{display:"list-item",p:0},children:(0,t.jsx)(s.default,{children:"Run statistical data diffs"})}),(0,t.jsx)(l.default,{sx:{display:"list-item",p:0},children:(0,t.jsx)(s.default,{children:"Run query diffs"})}),(0,t.jsx)(l.default,{sx:{display:"list-item",p:0},children:(0,t.jsx)(s.default,{children:"Save checks to your Recce Checklist"})}),(0,t.jsx)(l.default,{sx:{display:"list-item",p:0},children:(0,t.jsx)(s.default,{children:"...and more!"})})]}),(0,t.jsx)(s.default,{children:"Take the next step toward better data impact assessment."})]}),(0,t.jsx)(n.default,{sx:{width:"100%",mt:3},children:(0,t.jsx)(r.default,{color:"iochmara",variant:"contained",size:"large",onClick:()=>{window.open("https://docs.datarecce.io/get-started/#prepare-dbt-artifacts","_blank")},children:"Start Now"})})]})})}function u(){return(0,t.jsxs)(n.default,{direction:"row",spacing:"10px",alignItems:"flex-start",children:[(0,t.jsx)(a.default,{component:d.RiMindMap,sx:{color:"iochmara.main",fontSize:20}}),(0,t.jsxs)(n.default,{spacing:"5px",children:[(0,t.jsxs)(s.default,{sx:{fontWeight:700},children:["Single Environment Mode"," ",(0,t.jsx)(s.default,{component:"span",sx:{color:"error.main",fontWeight:600},children:"Limited Functionality"})]}),(0,t.jsx)(s.default,{sx:{fontSize:"0.875rem"},children:"Single Environment Mode allows you to explore your dbt project but won't show data comparisons between environments."}),(0,t.jsx)(s.default,{sx:{fontSize:"0.875rem"},children:"To set up full environment comparison:"}),(0,t.jsxs)(o.default,{sx:{pl:2},children:[(0,t.jsx)(l.default,{sx:{p:0,display:"list-item"},children:(0,t.jsx)(s.default,{sx:{fontSize:"0.875rem"},children:"Run `recce debug` for setup assistance"})}),(0,t.jsx)(l.default,{sx:{p:0,display:"list-item"},children:(0,t.jsxs)(s.default,{sx:{fontSize:"0.875rem"},children:["Visit"," ",(0,t.jsx)(i.default,{sx:{color:"primary.main",fontWeight:500},target:"_blank",href:"https://docs.datarecce.io/configure-diff/",children:"docs"})," ","for configuration details"]})})]})]})]})}e.s(["BaseEnvironmentSetupGuide",()=>c,"BaseEnvironmentSetupNotification",()=>u])},325782,e=>{"use strict";e.i(210175);var t=e.i(922946),a=e.i(7284),r=e.i(778024),i=e.i(36297),o=e.i(20277);let l=(0,i.default)((0,o.jsx)("path",{d:"M12 2C6.47 2 2 6.47 2 12s4.47 10 10 10 10-4.47 10-10S17.53 2 12 2zm5 13.59L15.59 17 12 13.41 8.41 17 7 15.59 10.59 12 7 8.41 8.41 7 12 10.59 15.59 7 17 8.41 13.41 12 17 15.59z"}),"Cancel");var n=e.i(723938),s=e.i(578509),d=e.i(98648),c=e.i(446547),u=e.i(73205),p=e.i(860223),f=e.i(519273),h=e.i(435983),m=e.i(446519);function g(e){return(0,m.default)("MuiChip",e)}let x=(0,h.default)("MuiChip",["root","sizeSmall","sizeMedium","colorDefault","colorError","colorInfo","colorPrimary","colorSecondary","colorSuccess","colorWarning","disabled","clickable","clickableColorPrimary","clickableColorSecondary","deletable","deletableColorPrimary","deletableColorSecondary","outlined","filled","outlinedPrimary","outlinedSecondary","filledPrimary","filledSecondary","avatar","avatarSmall","avatarMedium","avatarColorPrimary","avatarColorSecondary","icon","iconSmall","iconMedium","iconColorPrimary","iconColorSecondary","label","labelSmall","labelMedium","deleteIcon","deleteIconSmall","deleteIconMedium","deleteIconColorPrimary","deleteIconColorSecondary","deleteIconOutlinedColorPrimary","deleteIconOutlinedColorSecondary","deleteIconFilledColorPrimary","deleteIconFilledColorSecondary","focusVisible"]);var y=e.i(577950);let v=(0,c.styled)("div",{name:"MuiChip",slot:"Root",overridesResolver:(e,t)=>{let{ownerState:a}=e,{color:r,iconColor:i,clickable:o,onDelete:l,size:n,variant:d}=a;return[{[`& .${x.avatar}`]:t.avatar},{[`& .${x.avatar}`]:t[`avatar${(0,s.default)(n)}`]},{[`& .${x.avatar}`]:t[`avatarColor${(0,s.default)(r)}`]},{[`& .${x.icon}`]:t.icon},{[`& .${x.icon}`]:t[`icon${(0,s.default)(n)}`]},{[`& .${x.icon}`]:t[`iconColor${(0,s.default)(i)}`]},{[`& .${x.deleteIcon}`]:t.deleteIcon},{[`& .${x.deleteIcon}`]:t[`deleteIcon${(0,s.default)(n)}`]},{[`& .${x.deleteIcon}`]:t[`deleteIconColor${(0,s.default)(r)}`]},{[`& .${x.deleteIcon}`]:t[`deleteIcon${(0,s.default)(d)}Color${(0,s.default)(r)}`]},t.root,t[`size${(0,s.default)(n)}`],t[`color${(0,s.default)(r)}`],o&&t.clickable,o&&"default"!==r&&t[`clickableColor${(0,s.default)(r)}`],l&&t.deletable,l&&"default"!==r&&t[`deletableColor${(0,s.default)(r)}`],t[d],t[`${d}${(0,s.default)(r)}`]]}})((0,u.default)(({theme:e})=>{let t="light"===e.palette.mode?e.palette.grey[700]:e.palette.grey[300];return{maxWidth:"100%",fontFamily:e.typography.fontFamily,fontSize:e.typography.pxToRem(13),display:"inline-flex",alignItems:"center",justifyContent:"center",height:32,lineHeight:1.5,color:(e.vars||e).palette.text.primary,backgroundColor:(e.vars||e).palette.action.selected,borderRadius:16,whiteSpace:"nowrap",transition:e.transitions.create(["background-color","box-shadow"]),cursor:"unset",outline:0,textDecoration:"none",border:0,padding:0,verticalAlign:"middle",boxSizing:"border-box",[`&.${x.disabled}`]:{opacity:(e.vars||e).palette.action.disabledOpacity,pointerEvents:"none"},[`& .${x.avatar}`]:{marginLeft:5,marginRight:-6,width:24,height:24,color:e.vars?e.vars.palette.Chip.defaultAvatarColor:t,fontSize:e.typography.pxToRem(12)},[`& .${x.avatarColorPrimary}`]:{color:(e.vars||e).palette.primary.contrastText,backgroundColor:(e.vars||e).palette.primary.dark},[`& .${x.avatarColorSecondary}`]:{color:(e.vars||e).palette.secondary.contrastText,backgroundColor:(e.vars||e).palette.secondary.dark},[`& .${x.avatarSmall}`]:{marginLeft:4,marginRight:-4,width:18,height:18,fontSize:e.typography.pxToRem(10)},[`& .${x.icon}`]:{marginLeft:5,marginRight:-6},[`& .${x.deleteIcon}`]:{WebkitTapHighlightColor:"transparent",color:e.alpha((e.vars||e).palette.text.primary,.26),fontSize:22,cursor:"pointer",margin:"0 5px 0 -6px","&:hover":{color:e.alpha((e.vars||e).palette.text.primary,.4)}},variants:[{props:{size:"small"},style:{height:24,[`& .${x.icon}`]:{fontSize:18,marginLeft:4,marginRight:-4},[`& .${x.deleteIcon}`]:{fontSize:16,marginRight:4,marginLeft:-4}}},...Object.entries(e.palette).filter((0,p.default)(["contrastText"])).map(([t])=>({props:{color:t},style:{backgroundColor:(e.vars||e).palette[t].main,color:(e.vars||e).palette[t].contrastText,[`& .${x.deleteIcon}`]:{color:e.alpha((e.vars||e).palette[t].contrastText,.7),"&:hover, &:active":{color:(e.vars||e).palette[t].contrastText}}}})),{props:e=>e.iconColor===e.color,style:{[`& .${x.icon}`]:{color:e.vars?e.vars.palette.Chip.defaultIconColor:t}}},{props:e=>e.iconColor===e.color&&"default"!==e.color,style:{[`& .${x.icon}`]:{color:"inherit"}}},{props:{onDelete:!0},style:{[`&.${x.focusVisible}`]:{backgroundColor:e.alpha((e.vars||e).palette.action.selected,`${(e.vars||e).palette.action.selectedOpacity} + ${(e.vars||e).palette.action.focusOpacity}`)}}},...Object.entries(e.palette).filter((0,p.default)(["dark"])).map(([t])=>({props:{color:t,onDelete:!0},style:{[`&.${x.focusVisible}`]:{background:(e.vars||e).palette[t].dark}}})),{props:{clickable:!0},style:{userSelect:"none",WebkitTapHighlightColor:"transparent",cursor:"pointer","&:hover":{backgroundColor:e.alpha((e.vars||e).palette.action.selected,`${(e.vars||e).palette.action.selectedOpacity} + ${(e.vars||e).palette.action.hoverOpacity}`)},[`&.${x.focusVisible}`]:{backgroundColor:e.alpha((e.vars||e).palette.action.selected,`${(e.vars||e).palette.action.selectedOpacity} + ${(e.vars||e).palette.action.focusOpacity}`)},"&:active":{boxShadow:(e.vars||e).shadows[1]}}},...Object.entries(e.palette).filter((0,p.default)(["dark"])).map(([t])=>({props:{color:t,clickable:!0},style:{[`&:hover, &.${x.focusVisible}`]:{backgroundColor:(e.vars||e).palette[t].dark}}})),{props:{variant:"outlined"},style:{backgroundColor:"transparent",border:e.vars?`1px solid ${e.vars.palette.Chip.defaultBorder}`:`1px solid ${"light"===e.palette.mode?e.palette.grey[400]:e.palette.grey[700]}`,[`&.${x.clickable}:hover`]:{backgroundColor:(e.vars||e).palette.action.hover},[`&.${x.focusVisible}`]:{backgroundColor:(e.vars||e).palette.action.focus},[`& .${x.avatar}`]:{marginLeft:4},[`& .${x.avatarSmall}`]:{marginLeft:2},[`& .${x.icon}`]:{marginLeft:4},[`& .${x.iconSmall}`]:{marginLeft:2},[`& .${x.deleteIcon}`]:{marginRight:5},[`& .${x.deleteIconSmall}`]:{marginRight:3}}},...Object.entries(e.palette).filter((0,p.default)()).map(([t])=>({props:{variant:"outlined",color:t},style:{color:(e.vars||e).palette[t].main,border:`1px solid ${e.alpha((e.vars||e).palette[t].main,.7)}`,[`&.${x.clickable}:hover`]:{backgroundColor:e.alpha((e.vars||e).palette[t].main,(e.vars||e).palette.action.hoverOpacity)},[`&.${x.focusVisible}`]:{backgroundColor:e.alpha((e.vars||e).palette[t].main,(e.vars||e).palette.action.focusOpacity)},[`& .${x.deleteIcon}`]:{color:e.alpha((e.vars||e).palette[t].main,.7),"&:hover, &:active":{color:(e.vars||e).palette[t].main}}}}))]}})),b=(0,c.styled)("span",{name:"MuiChip",slot:"Label",overridesResolver:(e,t)=>{let{ownerState:a}=e,{size:r}=a;return[t.label,t[`label${(0,s.default)(r)}`]]}})({overflow:"hidden",textOverflow:"ellipsis",paddingLeft:12,paddingRight:12,whiteSpace:"nowrap",variants:[{props:{variant:"outlined"},style:{paddingLeft:11,paddingRight:11}},{props:{size:"small"},style:{paddingLeft:8,paddingRight:8}},{props:{size:"small",variant:"outlined"},style:{paddingLeft:7,paddingRight:7}}]});function C(e){return"Backspace"===e.key||"Delete"===e.key}let S=t.forwardRef(function(e,i){let c=(0,f.useDefaultProps)({props:e,name:"MuiChip"}),{avatar:u,className:p,clickable:h,color:m="default",component:x,deleteIcon:S,disabled:j=!1,icon:w,label:$,onClick:R,onDelete:k,onKeyDown:I,onKeyUp:M,size:L="medium",variant:z="filled",tabIndex:O,skipFocusWhenDisabled:P=!1,slots:E={},slotProps:A={},...T}=c,H=t.useRef(null),V=(0,n.default)(H,i),D=e=>{e.stopPropagation(),k&&k(e)},N=!1!==h&&!!R||h,B=N||k?d.default:x||"div",F={...c,component:B,disabled:j,size:L,color:m,iconColor:t.isValidElement(w)&&w.props.color||m,onDelete:!!k,clickable:N,variant:z},_=(e=>{let{classes:t,disabled:a,size:i,color:o,iconColor:l,onDelete:n,clickable:d,variant:c}=e,u={root:["root",c,a&&"disabled",`size${(0,s.default)(i)}`,`color${(0,s.default)(o)}`,d&&"clickable",d&&`clickableColor${(0,s.default)(o)}`,n&&"deletable",n&&`deletableColor${(0,s.default)(o)}`,`${c}${(0,s.default)(o)}`],label:["label",`label${(0,s.default)(i)}`],avatar:["avatar",`avatar${(0,s.default)(i)}`,`avatarColor${(0,s.default)(o)}`],icon:["icon",`icon${(0,s.default)(i)}`,`iconColor${(0,s.default)(l)}`],deleteIcon:["deleteIcon",`deleteIcon${(0,s.default)(i)}`,`deleteIconColor${(0,s.default)(o)}`,`deleteIcon${(0,s.default)(c)}Color${(0,s.default)(o)}`]};return(0,r.default)(u,g,t)})(F),G=B===d.default?{component:x||"div",focusVisibleClassName:_.focusVisible,...k&&{disableRipple:!0}}:{},K=null;k&&(K=S&&t.isValidElement(S)?t.cloneElement(S,{className:(0,a.default)(S.props.className,_.deleteIcon),onClick:D}):(0,o.jsx)(l,{className:_.deleteIcon,onClick:D}));let Z=null;u&&t.isValidElement(u)&&(Z=t.cloneElement(u,{className:(0,a.default)(_.avatar,u.props.className)}));let U=null;w&&t.isValidElement(w)&&(U=t.cloneElement(w,{className:(0,a.default)(_.icon,w.props.className)}));let W={slots:E,slotProps:A},[q,Q]=(0,y.default)("root",{elementType:v,externalForwardedProps:{...W,...T},ownerState:F,shouldForwardComponentProp:!0,ref:V,className:(0,a.default)(_.root,p),additionalProps:{disabled:!!N&&!!j||void 0,tabIndex:P&&j?-1:O,...G},getSlotProps:e=>({...e,onClick:t=>{e.onClick?.(t),R?.(t)},onKeyDown:t=>{e.onKeyDown?.(t),t.currentTarget===t.target&&C(t)&&t.preventDefault(),I&&I(t)},onKeyUp:t=>{e.onKeyUp?.(t),t.currentTarget===t.target&&k&&C(t)&&k(t),M&&M(t)}})}),[Y,J]=(0,y.default)("label",{elementType:b,externalForwardedProps:W,ownerState:F,className:_.label});return(0,o.jsxs)(q,{as:B,...Q,children:[Z||U,(0,o.jsx)(Y,{...J,children:$}),K]})});e.s(["default",0,S],325782)},182809,373921,e=>{"use strict";var t=e.i(20277),a=e.i(324066),r=e.i(336277),i=e.i(197068),o=e.i(427938),l=e.i(922946),n=e.i(388797),s=e.i(916955),d=e.i(76130),c=e.i(325782),u=e.i(610985),p=e.i(278903),f=e.i(135301),h=e.i(263712),m=e.i(228337);let g=e=>{let{defaultValues:r,suggestionList:n,onValuesChange:s,className:g}=e,[x,y]=(0,l.useState)(r??[]),[v,b]=(0,l.useState)(""),[C,S]=(0,l.useState)(!1),[j,w]=(0,l.useState)(null),$=(0,l.useRef)(null),R=e=>{x.includes(e)||(b(""),y([...x,e]),s([...x,e]))},k=v.toLowerCase(),I=n?.filter(e=>""===k||e.toLowerCase().includes(k)).filter(e=>!x.includes(e))??[],M=()=>{switch(e.size){case"2xs":return"0.625rem";case"xs":return"0.75rem";default:return"0.875rem"}};return(0,t.jsxs)(a.default,{sx:{display:"flex",alignItems:"center",width:e.width},className:g,children:[(0,t.jsxs)(d.default,{variant:"outlined",color:"neutral",size:"small",onClick:e=>{w(e.currentTarget),setTimeout(()=>$.current?.focus(),100)},disabled:e.disabled,sx:{width:"100%",height:(()=>{switch(e.size){case"2xs":return 24;case"xs":return 28;case"sm":return 32;default:return 36}})(),justifyContent:"space-between",textTransform:"none",fontSize:M(),fontWeight:"normal",px:1},children:[(0,t.jsx)(o.default,{component:"span",sx:{fontSize:M(),color:x.length>0?"text.primary":"text.secondary",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:(x.length>1?`${x.length} ${e.unitName}s selected`:1===x.length?x[0]:"")||e.placeholder||""}),x.length>0&&(0,t.jsx)(o.default,{component:"span",onClick:e=>{e.stopPropagation(),b(""),y([]),s([])},sx:{fontSize:M(),color:"primary.main",cursor:"pointer",ml:1,"&:hover":{textDecoration:"underline"}},children:"Clear"})]}),(0,t.jsxs)(f.default,{anchorEl:j,open:!!j,onClose:()=>{w(null),S(!1)},slotProps:{paper:{sx:{width:e.width,fontSize:M()}}},children:[(0,t.jsx)(a.default,{sx:{px:.5,py:.5},children:(0,t.jsxs)(a.default,{sx:{border:"1px solid",borderColor:"divider",borderRadius:1,p:.5,display:"flex",flexWrap:"wrap",gap:.5,alignItems:"center"},className:"no-track-pii-safe",children:[x.map(e=>(0,t.jsx)(c.default,{label:e,size:"small",onDelete:()=>{y(x.filter(t=>t!==e)),s(x.filter(t=>t!==e))},sx:{height:22,fontSize:M()}},e)),(0,t.jsx)(p.default,{inputRef:$,placeholder:"Filter or add custom keys",value:v,onChange:e=>{b(e.target.value),S(!0)},onKeyDown:e=>{"Escape"!==e.key&&e.stopPropagation();let t=e.target,a=t.value.trim().replace(",","");switch(e.key){case",":case"Enter":e.preventDefault(),a&&(R(a),b(""));break;case"Backspace":""===t.value&&x.length>0&&(y(x.slice(0,-1)),s(x.slice(0,-1)))}},onBlur:()=>{$.current&&C&&$.current.focus()},sx:{flex:1,minWidth:120,fontSize:M(),"& input":{p:.5}}})]})}),(0,t.jsx)(u.default,{}),""!==v&&!n?.includes(v)&&(0,t.jsxs)(h.default,{onClick:()=>{R(v),S(!1)},sx:{fontSize:M()},children:["Add '",v,"' to the list"]}),I.slice(0,10).map((e,a)=>(0,t.jsx)(h.default,{onClick:()=>{R(e)},sx:{fontSize:M()},children:e},m.default.uniqueId(`option-${a}`))),I.length>10&&(0,t.jsx)(i.default,{title:"Please use filter to find more items",placement:"top",children:(0,t.jsxs)(a.default,{px:1.5,py:.5,color:"text.secondary",fontSize:"8pt",children:["and ",I.length-10," more items..."]})})]})]})};e.s(["QueryForm",0,({defaultPrimaryKeys:e,onPrimaryKeysChange:d,...c})=>{let{lineageGraph:u,isActionAvailable:p}=(0,s.useLineageGraphContext)(),f=(0,l.useMemo)(()=>{if(!u)return[];let e=new Set;for(let t in u.nodes){let a=u.nodes[t];Object.entries({...a.data.data.base?.columns??{},...a.data.data.current?.columns??{}}).forEach(([t,a])=>{a?.unique&&e.add(t)})}return Array.from(e).sort()},[u]);return(0,t.jsx)(a.default,{sx:{display:"flex"},...c,children:(0,t.jsxs)(r.default,{spacing:0,sx:{m:"0 0.5rem"},children:[(0,t.jsxs)(r.default,{direction:"row",alignItems:"center",spacing:.5,children:[(0,t.jsx)(o.default,{component:"label",sx:{fontSize:"0.625rem",color:"text.secondary"},children:"Diff with Primary Key(s) (suggested)"}),(0,t.jsx)(i.default,{title:"Provide a primary key to perform query diff in data warehouse and only return changed rows.",placement:"bottom-end",children:(0,t.jsx)(a.default,{component:"span",sx:{display:"flex",color:"grey.600",cursor:"help"},children:(0,t.jsx)(n.PiInfo,{fontSize:"0.75rem"})})})]}),(0,t.jsx)(g,{className:"no-track-pii-safe",unitName:"key",defaultValues:e,suggestionList:f,onValuesChange:d,size:"2xs",width:"240px",placeholder:"Select or type to add keys",disabled:!p("query_diff_with_primary_key")})]})})}],182809);var x=e.i(180806);function y(e){return e?.organization_name&&e.web_url?`${e.web_url}/organizations/${e.organization_name}/settings`:x.RECCE_SUPPORT_CALENDAR_URL}e.s(["getSettingsUrl",()=>y],373921)}]);