speckit-assistant 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.next/BUILD_ID +1 -0
- package/.next/app-build-manifest.json +71 -0
- package/.next/app-path-routes-manifest.json +10 -0
- package/.next/build-manifest.json +33 -0
- package/.next/cache/.previewinfo +1 -0
- package/.next/cache/.rscinfo +1 -0
- package/.next/cache/webpack/client-production/0.pack +0 -0
- package/.next/cache/webpack/client-production/1.pack +0 -0
- package/.next/cache/webpack/client-production/10.pack +0 -0
- package/.next/cache/webpack/client-production/11.pack +0 -0
- package/.next/cache/webpack/client-production/12.pack +0 -0
- package/.next/cache/webpack/client-production/13.pack +0 -0
- package/.next/cache/webpack/client-production/14.pack +0 -0
- package/.next/cache/webpack/client-production/15.pack +0 -0
- package/.next/cache/webpack/client-production/16.pack +0 -0
- package/.next/cache/webpack/client-production/17.pack +0 -0
- package/.next/cache/webpack/client-production/18.pack +0 -0
- package/.next/cache/webpack/client-production/19.pack +0 -0
- package/.next/cache/webpack/client-production/2.pack +0 -0
- package/.next/cache/webpack/client-production/20.pack +0 -0
- package/.next/cache/webpack/client-production/21.pack +0 -0
- package/.next/cache/webpack/client-production/22.pack +0 -0
- package/.next/cache/webpack/client-production/3.pack +0 -0
- package/.next/cache/webpack/client-production/4.pack +0 -0
- package/.next/cache/webpack/client-production/5.pack +0 -0
- package/.next/cache/webpack/client-production/6.pack +0 -0
- package/.next/cache/webpack/client-production/7.pack +0 -0
- package/.next/cache/webpack/client-production/8.pack +0 -0
- package/.next/cache/webpack/client-production/9.pack +0 -0
- package/.next/cache/webpack/client-production/index.pack +0 -0
- package/.next/cache/webpack/client-production/index.pack.old +0 -0
- package/.next/cache/webpack/edge-server-production/0.pack +0 -0
- package/.next/cache/webpack/edge-server-production/index.pack +0 -0
- package/.next/cache/webpack/server-production/0.pack +0 -0
- package/.next/cache/webpack/server-production/1.pack +0 -0
- package/.next/cache/webpack/server-production/10.pack +0 -0
- package/.next/cache/webpack/server-production/11.pack +0 -0
- package/.next/cache/webpack/server-production/12.pack +0 -0
- package/.next/cache/webpack/server-production/13.pack +0 -0
- package/.next/cache/webpack/server-production/14.pack +0 -0
- package/.next/cache/webpack/server-production/15.pack +0 -0
- package/.next/cache/webpack/server-production/16.pack +0 -0
- package/.next/cache/webpack/server-production/17.pack +0 -0
- package/.next/cache/webpack/server-production/18.pack +0 -0
- package/.next/cache/webpack/server-production/19.pack +0 -0
- package/.next/cache/webpack/server-production/2.pack +0 -0
- package/.next/cache/webpack/server-production/20.pack +0 -0
- package/.next/cache/webpack/server-production/3.pack +0 -0
- package/.next/cache/webpack/server-production/4.pack +0 -0
- package/.next/cache/webpack/server-production/5.pack +0 -0
- package/.next/cache/webpack/server-production/6.pack +0 -0
- package/.next/cache/webpack/server-production/7.pack +0 -0
- package/.next/cache/webpack/server-production/8.pack +0 -0
- package/.next/cache/webpack/server-production/9.pack +0 -0
- package/.next/cache/webpack/server-production/index.pack +0 -0
- package/.next/cache/webpack/server-production/index.pack.old +0 -0
- package/.next/diagnostics/build-diagnostics.json +6 -0
- package/.next/diagnostics/framework.json +1 -0
- package/.next/export-marker.json +6 -0
- package/.next/images-manifest.json +58 -0
- package/.next/next-minimal-server.js.nft.json +1 -0
- package/.next/next-server.js.nft.json +1 -0
- package/.next/package.json +1 -0
- package/.next/prerender-manifest.json +61 -0
- package/.next/react-loadable-manifest.json +1 -0
- package/.next/required-server-files.json +320 -0
- package/.next/routes-manifest.json +53 -0
- package/.next/server/app/_not-found/page.js +2 -0
- package/.next/server/app/_not-found/page.js.nft.json +1 -0
- package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -0
- package/.next/server/app/_not-found.html +1 -0
- package/.next/server/app/_not-found.meta +8 -0
- package/.next/server/app/_not-found.rsc +15 -0
- package/.next/server/app/api/feature/route.js +1 -0
- package/.next/server/app/api/feature/route.js.nft.json +1 -0
- package/.next/server/app/api/feature/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/file/route.js +1 -0
- package/.next/server/app/api/file/route.js.nft.json +1 -0
- package/.next/server/app/api/file/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/phase/route.js +4 -0
- package/.next/server/app/api/phase/route.js.nft.json +1 -0
- package/.next/server/app/api/phase/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/state/route.js +1 -0
- package/.next/server/app/api/state/route.js.nft.json +1 -0
- package/.next/server/app/api/state/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/state/watch/route.js +4 -0
- package/.next/server/app/api/state/watch/route.js.nft.json +1 -0
- package/.next/server/app/api/state/watch/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/task/route.js +1 -0
- package/.next/server/app/api/task/route.js.nft.json +1 -0
- package/.next/server/app/api/task/route_client-reference-manifest.js +1 -0
- package/.next/server/app/index.html +1 -0
- package/.next/server/app/index.meta +7 -0
- package/.next/server/app/index.rsc +20 -0
- package/.next/server/app/page.js +14 -0
- package/.next/server/app/page.js.nft.json +1 -0
- package/.next/server/app/page_client-reference-manifest.js +1 -0
- package/.next/server/app-paths-manifest.json +10 -0
- package/.next/server/chunks/355.js +22 -0
- package/.next/server/chunks/6.js +9 -0
- package/.next/server/chunks/607.js +6 -0
- package/.next/server/chunks/643.js +1 -0
- package/.next/server/chunks/897.js +9 -0
- package/.next/server/functions-config-manifest.json +4 -0
- package/.next/server/interception-route-rewrite-manifest.js +1 -0
- package/.next/server/middleware-build-manifest.js +1 -0
- package/.next/server/middleware-manifest.json +6 -0
- package/.next/server/middleware-react-loadable-manifest.js +1 -0
- package/.next/server/next-font-manifest.js +1 -0
- package/.next/server/next-font-manifest.json +1 -0
- package/.next/server/pages/404.html +1 -0
- package/.next/server/pages/500.html +1 -0
- package/.next/server/pages/_app.js +1 -0
- package/.next/server/pages/_app.js.nft.json +1 -0
- package/.next/server/pages/_document.js +1 -0
- package/.next/server/pages/_document.js.nft.json +1 -0
- package/.next/server/pages/_error.js +19 -0
- package/.next/server/pages/_error.js.nft.json +1 -0
- package/.next/server/pages-manifest.json +6 -0
- package/.next/server/server-reference-manifest.js +1 -0
- package/.next/server/server-reference-manifest.json +1 -0
- package/.next/server/webpack-runtime.js +1 -0
- package/.next/static/chunks/590-a6568595ecd2a994.js +1 -0
- package/.next/static/chunks/8381d2c4-9707dccab70b742b.js +1 -0
- package/.next/static/chunks/920-f9bfc1b0d0402c3e.js +1 -0
- package/.next/static/chunks/acfafb44-8249079a6627ac92.js +1 -0
- package/.next/static/chunks/app/_not-found/page-be798b363e27e8c5.js +1 -0
- package/.next/static/chunks/app/api/feature/route-bb3c1a82e892ab58.js +1 -0
- package/.next/static/chunks/app/api/file/route-bb3c1a82e892ab58.js +1 -0
- package/.next/static/chunks/app/api/phase/route-bb3c1a82e892ab58.js +1 -0
- package/.next/static/chunks/app/api/state/route-bb3c1a82e892ab58.js +1 -0
- package/.next/static/chunks/app/api/state/watch/route-bb3c1a82e892ab58.js +1 -0
- package/.next/static/chunks/app/api/task/route-bb3c1a82e892ab58.js +1 -0
- package/.next/static/chunks/app/layout-3226c76a5f7f74bc.js +1 -0
- package/.next/static/chunks/app/page-8a5248f7704cde29.js +1 -0
- package/.next/static/chunks/framework-20dd4f6054cc5446.js +1 -0
- package/.next/static/chunks/main-91029f76ac1b7110.js +1 -0
- package/.next/static/chunks/main-app-b9ad56d6b1dfa941.js +1 -0
- package/.next/static/chunks/pages/_app-aa33dc41c3472021.js +1 -0
- package/.next/static/chunks/pages/_error-78b0b3b591df0e73.js +1 -0
- package/.next/static/chunks/polyfills-42372ed130431b0a.js +1 -0
- package/.next/static/chunks/webpack-c460f8e58a9e9eff.js +1 -0
- package/.next/static/css/008a05b0ad6b854a.css +31 -0
- package/.next/static/css/6fd2e11db3a59771.css +3 -0
- package/.next/static/fWuQ3yoHovA7Cre6u89W7/_buildManifest.js +1 -0
- package/.next/static/fWuQ3yoHovA7Cre6u89W7/_ssgManifest.js +1 -0
- package/.next/trace +3 -0
- package/.next/types/app/api/feature/route.ts +347 -0
- package/.next/types/app/api/file/route.ts +347 -0
- package/.next/types/app/api/phase/route.ts +347 -0
- package/.next/types/app/api/state/route.ts +347 -0
- package/.next/types/app/api/state/watch/route.ts +347 -0
- package/.next/types/app/api/task/route.ts +347 -0
- package/.next/types/app/layout.ts +84 -0
- package/.next/types/app/page.ts +84 -0
- package/.next/types/cache-life.d.ts +141 -0
- package/.next/types/package.json +1 -0
- package/.next/types/routes.d.ts +78 -0
- package/.next/types/validator.ts +124 -0
- package/LICENSE +21 -0
- package/README.md +284 -0
- package/bin/adapters/di.js +9 -0
- package/bin/adapters/primary/api/utils.js +57 -0
- package/bin/adapters/secondary/agent/ProcessAgentRunner.js +161 -0
- package/bin/adapters/secondary/fs/FSWorkspaceRepository.js +283 -0
- package/bin/app/api/feature/route.js +35 -0
- package/bin/app/api/file/route.js +36 -0
- package/bin/app/api/phase/route.js +55 -0
- package/bin/app/api/state/route.js +28 -0
- package/bin/app/api/state/watch/route.js +92 -0
- package/bin/app/api/task/route.js +20 -0
- package/bin/bin/cli.js +317 -0
- package/bin/cli.js +85 -0
- package/bin/domain/models/types.js +2 -0
- package/bin/domain/ports/in/WorkflowUseCases.js +2 -0
- package/bin/domain/ports/out/AgentRunnerPort.js +2 -0
- package/bin/domain/ports/out/WorkspaceRepositoryPort.js +2 -0
- package/bin/domain/services/WorkflowService.js +174 -0
- package/next.config.ts +13 -0
- package/package.json +53 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[314],{5014:(e,t,n)=>{n.d(t,{Gc:()=>tv,H2:()=>t_,VS:()=>tC,h7:()=>ey});var o,l=n(8886),r=n(9398),a=n(5955),i=n(4201),s=n(3933),d=n(8221);n(8339);let c=(0,r.createContext)(null),u=c.Provider,g=i.xc.error001("react");function f(e,t){let n=(0,r.useContext)(c);if(null===n)throw Error(g);return(0,s.n)(n,e,t)}function p(){let e=(0,r.useContext)(c);if(null===e)throw Error(g);return(0,r.useMemo)(()=>({getState:e.getState,setState:e.setState,subscribe:e.subscribe}),[e])}let h={display:"none"},m={position:"absolute",width:1,height:1,margin:-1,border:0,padding:0,overflow:"hidden",clip:"rect(0px, 0px, 0px, 0px)",clipPath:"inset(100%)"},v="react-flow__node-desc",y="react-flow__edge-desc",b=e=>e.ariaLiveMessage,x=e=>e.ariaLabelConfig;function S(e){let{rfId:t}=e,n=f(b);return(0,l.jsx)("div",{id:"".concat("react-flow__aria-live","-").concat(t),"aria-live":"assertive","aria-atomic":"true",style:m,children:n})}function w(e){let{rfId:t,disableKeyboardA11y:n}=e,o=f(x);return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)("div",{id:"".concat(v,"-").concat(t),style:h,children:n?o["node.a11yDescription.default"]:o["node.a11yDescription.keyboardDisabled"]}),(0,l.jsx)("div",{id:"".concat(y,"-").concat(t),style:h,children:o["edge.a11yDescription.default"]}),!n&&(0,l.jsx)(S,{rfId:t})]})}let C=(0,r.forwardRef)((e,t)=>{let{position:n="top-left",children:o,className:r,style:i,...s}=e,d="".concat(n).split("-");return(0,l.jsx)("div",{className:(0,a.A)(["react-flow__panel",r,...d]),style:i,ref:t,...s,children:o})});function E(e){let{proOptions:t,position:n="bottom-right"}=e;return(null==t?void 0:t.hideAttribution)?null:(0,l.jsx)(C,{position:n,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,l.jsx)("a",{href:"https://reactflow.dev",target:"_blank",rel:"noopener noreferrer","aria-label":"React Flow attribution",children:"React Flow"})})}C.displayName="Panel";let N=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}},k=e=>e.id;function M(e,t){return(0,d.x)(e.selectedNodes.map(k),t.selectedNodes.map(k))&&(0,d.x)(e.selectedEdges.map(k),t.selectedEdges.map(k))}function P(e){let{onSelectionChange:t}=e,n=p(),{selectedNodes:o,selectedEdges:l}=f(N,M);return(0,r.useEffect)(()=>{let e={nodes:o,edges:l};null==t||t(e),n.getState().onSelectionChangeHandlers.forEach(t=>t(e))},[o,l,t]),null}let j=e=>!!e.onSelectionChangeHandlers;function D(e){let{onSelectionChange:t}=e,n=f(j);return t||n?(0,l.jsx)(P,{onSelectionChange:t}):null}let A=[0,0],_={x:0,y:0,zoom:1},I=["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"],O=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}),R={translateExtent:i.ZO,nodeOrigin:A,minZoom:.5,maxZoom:2,elementsSelectable:!0,noPanClassName:"nopan",rfId:"1"};function L(e){let{setNodes:t,setEdges:n,setMinZoom:o,setMaxZoom:l,setTranslateExtent:a,setNodeExtent:s,reset:c,setDefaultNodesAndEdges:u}=f(O,d.x),g=p();(0,r.useEffect)(()=>(u(e.defaultNodes,e.defaultEdges),()=>{h.current=R,c()}),[]);let h=(0,r.useRef)(R);return(0,r.useEffect)(()=>{for(let r of I){let d=e[r];d!==h.current[r]&&void 0!==e[r]&&("nodes"===r?t(d):"edges"===r?n(d):"minZoom"===r?o(d):"maxZoom"===r?l(d):"translateExtent"===r?a(d):"nodeExtent"===r?s(d):"ariaLabelConfig"===r?g.setState({ariaLabelConfig:(0,i.Q6)(d)}):"fitView"===r?g.setState({fitViewQueued:d}):"fitViewOptions"===r?g.setState({fitViewOptions:d}):g.setState({[r]:d}))}h.current=e},I.map(t=>e[t])),null}function z(){return"undefined"!=typeof window&&window.matchMedia?window.matchMedia("(prefers-color-scheme: dark)"):null}let B="undefined"!=typeof document?document:null;function V(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{target:B,actInsideInputWithModifier:!0},[n,o]=(0,r.useState)(!1),l=(0,r.useRef)(!1),a=(0,r.useRef)(new Set([])),[s,d]=(0,r.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,r.useEffect)(()=>{var n,r;let c=null!=(n=null==t?void 0:t.target)?n:B,u=null==(r=null==t?void 0:t.actInsideInputWithModifier)||r;if(null!==e){let e=e=>{if(l.current=e.ctrlKey||e.metaKey||e.shiftKey||e.altKey,(!l.current||l.current&&!u)&&(0,i.v5)(e))return!1;let n=F(e.code,d);if(a.current.add(e[n]),H(s,a.current,!1)){var r,c;let n=(null==(c=e.composedPath)||null==(r=c.call(e))?void 0:r[0])||e.target,a=(null==n?void 0:n.nodeName)==="BUTTON"||(null==n?void 0:n.nodeName)==="A";!1!==t.preventDefault&&(l.current||!a)&&e.preventDefault(),o(!0)}},n=e=>{let t=F(e.code,d);H(s,a.current,!0)?(o(!1),a.current.clear()):a.current.delete(e[t]),"Meta"===e.key&&a.current.clear(),l.current=!1},r=()=>{a.current.clear(),o(!1)};return null==c||c.addEventListener("keydown",e),null==c||c.addEventListener("keyup",n),window.addEventListener("blur",r),window.addEventListener("contextmenu",r),()=>{null==c||c.removeEventListener("keydown",e),null==c||c.removeEventListener("keyup",n),window.removeEventListener("blur",r),window.removeEventListener("contextmenu",r)}}},[e,o]),n}function H(e,t,n){return e.filter(e=>n||e.length===t.size).some(e=>e.every(e=>t.has(e)))}function F(e,t){return t.includes(e)?"code":"key"}function T(e,t){let n=[],o=new Map,l=[];for(let t of e)if("add"===t.type){l.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 l={...e};for(let e of t){var r=e,a=l;switch(r.type){case"select":a.selected=r.selected;break;case"position":void 0!==r.position&&(a.position=r.position),void 0!==r.dragging&&(a.dragging=r.dragging);break;case"dimensions":void 0!==r.dimensions&&(a.measured={...r.dimensions},r.setAttributes&&((!0===r.setAttributes||"width"===r.setAttributes)&&(a.width=r.dimensions.width),(!0===r.setAttributes||"height"===r.setAttributes)&&(a.height=r.dimensions.height))),"boolean"==typeof r.resizing&&(a.resizing=r.resizing)}}n.push(l)}return l.length&&l.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 X(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new Set,n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],o=[];for(let[l,r]of e){let e=t.has(l);(void 0!==r.selected||e)&&r.selected!==e&&(n&&(r.selected=e),o.push(Z(r.id,e)))}return o}function K(e){let{items:t=[],lookup:n}=e,o=[],l=new Map(t.map(e=>[e.id,e]));for(let[e,l]of t.entries()){var r,a;let t=n.get(l.id),i=null!=(a=null==t||null==(r=t.internals)?void 0:r.userNode)?a:t;void 0!==i&&i!==l&&o.push({id:l.id,item:l,type:"replace"}),void 0===i&&o.push({item:l,type:"add",index:e})}for(let[e]of n)void 0===l.get(e)&&o.push({id:e,type:"remove"});return o}function W(e){return{id:e.id,type:"remove"}}let Y=(0,i.kr)("React Flow","https://reactflow.dev/"),Q=e=>(0,i.oB)(e);function U(e){return(0,r.forwardRef)(e)}let q="undefined"!=typeof window?r.useLayoutEffect:r.useEffect;function G(e){let[t,n]=(0,r.useState)(BigInt(0)),[o]=(0,r.useState)(()=>{var e;let t;return e=()=>n(e=>e+BigInt(1)),t=[],{get:()=>t,reset:()=>{t=[]},push:n=>{t.push(n),e()}}});return q(()=>{let t=o.get();t.length&&(e(t),o.reset())},[t]),o}let $=(0,r.createContext)(null);function J(e){let{children:t}=e,n=p(),o=G((0,r.useCallback)(e=>{let{nodes:t=[],setNodes:o,hasDefaultNodes:l,onNodesChange:r,nodeLookup:a,fitViewQueued:i,onNodesChangeMiddlewareMap:s}=n.getState(),d=t;for(let t of e)d="function"==typeof t?t(d):t;let c=K({items:d,lookup:a});for(let e of s.values())c=e(c);l&&o(d),c.length>0?null==r||r(c):i&&window.requestAnimationFrame(()=>{let{fitViewQueued:e,nodes:t,setNodes:o}=n.getState();e&&o(t)})},[])),a=G((0,r.useCallback)(e=>{let{edges:t=[],setEdges:o,hasDefaultEdges:l,onEdgesChange:r,edgeLookup:a}=n.getState(),i=t;for(let t of e)i="function"==typeof t?t(i):t;l?o(i):r&&r(K({items:i,lookup:a}))},[])),i=(0,r.useMemo)(()=>({nodeQueue:o,edgeQueue:a}),[]);return(0,l.jsx)($.Provider,{value:i,children:t})}let ee=e=>!!e.panZoom;function et(){let e=(()=>{let e=p();return(0,r.useMemo)(()=>({zoomIn:async t=>{let{panZoom:n}=e.getState();return!!n&&n.scaleBy(1.2,t)},zoomOut:async t=>{let{panZoom:n}=e.getState();return!!n&&n.scaleBy(1/1.2,t)},zoomTo:async(t,n)=>{let{panZoom:o}=e.getState();return!!o&&o.scaleTo(t,n)},getZoom:()=>e.getState().transform[2],setViewport:async(t,n)=>{var o,l,r;let{transform:[a,i,s],panZoom:d}=e.getState();return!!d&&(await d.setViewport({x:null!=(o=t.x)?o:a,y:null!=(l=t.y)?l:i,zoom:null!=(r=t.zoom)?r:s},n),!0)},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)=>{var o;let{width:l,height:r,minZoom:a,maxZoom:s,panZoom:d}=e.getState(),c=(0,i.R4)(t,l,r,a,s,null!=(o=null==n?void 0:n.padding)?o:.1);return!!d&&(await d.setViewport(c,{duration:null==n?void 0:n.duration,ease:null==n?void 0:n.ease,interpolate:null==n?void 0:n.interpolate}),!0)},screenToFlowPosition:function(t){var n,o;let l=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},{transform:r,snapGrid:a,snapToGrid:s,domNode:d}=e.getState();if(!d)return t;let{x:c,y:u}=d.getBoundingClientRect(),g={x:t.x-c,y:t.y-u},f=null!=(n=l.snapGrid)?n:a,p=null!=(o=l.snapToGrid)?o:s;return(0,i.Ff)(g,r,p,f)},flowToScreenPosition:t=>{let{transform:n,domNode:o}=e.getState();if(!o)return t;let{x:l,y:r}=o.getBoundingClientRect(),a=(0,i.zj)(t,n);return{x:a.x+l,y:a.y+r}}}),[])})(),t=p(),n=function(){let e=(0,r.useContext)($);if(!e)throw Error("useBatchContext must be used within a BatchProvider");return e}(),o=f(ee),l=(0,r.useMemo)(()=>{let e=e=>t.getState().nodeLookup.get(e),o=e=>{n.nodeQueue.push(e)},l=e=>{n.edgeQueue.push(e)},r=e=>{var n,o,l,r;let{nodeLookup:a,nodeOrigin:s}=t.getState(),d=Q(e)?e:a.get(e.id),c=d.parentId?(0,i.us)(d.position,d.measured,d.parentId,a,s):d.position,u={...d,position:c,width:null!=(l=null==(n=d.measured)?void 0:n.width)?l:d.width,height:null!=(r=null==(o=d.measured)?void 0:o.height)?r:d.height};return(0,i.kM)(u)},a=function(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{replace:!1};o(o=>o.map(o=>{if(o.id===e){let e="function"==typeof t?t(o):t;return n.replace&&Q(e)?e:{...o,...e}}return o}))},s=function(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{replace:!1};l(o=>o.map(o=>{if(o.id===e){let e="function"==typeof t?t(o):t;return n.replace&&(0,i.b$)(e)?e:{...o,...e}}return o}))};return{getNodes:()=>t.getState().nodes.map(e=>({...e})),getNode:t=>{var n;return null==(n=e(t))?void 0:n.internals.userNode},getInternalNode:e,getEdges:()=>{let{edges:e=[]}=t.getState();return e.map(e=>({...e}))},getEdge:e=>t.getState().edgeLookup.get(e),setNodes:o,setEdges:l,addNodes:e=>{let t=Array.isArray(e)?e:[e];n.nodeQueue.push(e=>[...e,...t])},addEdges:e=>{let t=Array.isArray(e)?e:[e];n.edgeQueue.push(e=>[...e,...t])},toObject:()=>{let{nodes:e=[],edges:n=[],transform:o}=t.getState(),[l,r,a]=o;return{nodes:e.map(e=>({...e})),edges:n.map(e=>({...e})),viewport:{x:l,y:r,zoom:a}}},deleteElements:async e=>{let{nodes:n=[],edges:o=[]}=e,{nodes:l,edges:r,onNodesDelete:a,onEdgesDelete:s,triggerNodeChanges:d,triggerEdgeChanges:c,onDelete:u,onBeforeDelete:g}=t.getState(),{nodes:f,edges:p}=await (0,i.Tq)({nodesToRemove:n,edgesToRemove:o,nodes:l,edges:r,onBeforeDelete:g}),h=p.length>0,m=f.length>0;if(h){let e=p.map(W);null==s||s(p),c(e)}if(m){let e=f.map(W);null==a||a(f),d(e)}return(m||h)&&(null==u||u({nodes:f,edges:p})),{deletedNodes:f,deletedEdges:p}},getIntersectingNodes:function(e){let n=!(arguments.length>1)||void 0===arguments[1]||arguments[1],o=arguments.length>2?arguments[2]:void 0,l=(0,i.mW)(e),a=l?e:r(e),s=void 0!==o;return a?(o||t.getState().nodes).filter(o=>{let r=t.getState().nodeLookup.get(o.id);if(r&&!l&&(o.id===e.id||!r.internals.positionAbsolute))return!1;let d=(0,i.kM)(s?o:r),c=(0,i.X6)(d,a);return n&&c>0||c>=d.width*d.height||c>=a.width*a.height}):[]},isNodeIntersecting:function(e,t){let n=!(arguments.length>2)||void 0===arguments[2]||arguments[2],o=(0,i.mW)(e)?e:r(e);if(!o)return!1;let l=(0,i.X6)(o,t);return n&&l>0||l>=t.width*t.height||l>=o.width*o.height},updateNode:a,updateNodeData:function(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{replace:!1};a(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:function(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{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:n,nodeOrigin:o}=t.getState();return(0,i.Jo)(e,{nodeLookup:n,nodeOrigin:o})},getHandleConnections:e=>{var n,o;let{type:l,id:r,nodeId:a}=e;return Array.from(null!=(o=null==(n=t.getState().connectionLookup.get("".concat(a,"-").concat(l).concat(r?"-".concat(r):"")))?void 0:n.values())?o:[])},getNodeConnections:e=>{var n,o;let{type:l,handleId:r,nodeId:a}=e;return Array.from(null!=(o=null==(n=t.getState().connectionLookup.get("".concat(a).concat(l?r?"-".concat(l,"-").concat(r):"-".concat(l):"")))?void 0:n.values())?o:[])},fitView:async e=>{var o;let l=null!=(o=t.getState().fitViewResolver)?o:(0,i.YN)();return t.setState({fitViewQueued:!0,fitViewOptions:e,fitViewResolver:l}),n.nodeQueue.push(e=>[...e]),l.promise}}},[]);return(0,r.useMemo)(()=>({...l,...e,viewportInitialized:o}),[o])}let en=e=>e.selected,eo="undefined"!=typeof window?window:void 0,el={position:"absolute",width:"100%",height:"100%",top:0,left:0},er=e=>({userSelectionActive:e.userSelectionActive,lib:e.lib,connectionInProgress:e.connection.inProgress});function ea(e){let{onPaneContextMenu:t,zoomOnScroll:n=!0,zoomOnPinch:o=!0,panOnScroll:a=!1,panOnScrollSpeed:s=.5,panOnScrollMode:c=i.ny.Free,zoomOnDoubleClick:u=!0,panOnDrag:g=!0,defaultViewport:h,translateExtent:m,minZoom:v,maxZoom:y,zoomActivationKeyCode:b,preventScrolling:x=!0,children:S,noWheelClassName:w,noPanClassName:C,onViewportChange:E,isControlledViewport:N,paneClickDistance:k,selectionOnDrag:M}=e,P=p(),j=(0,r.useRef)(null),{userSelectionActive:D,lib:A,connectionInProgress:_}=f(er,d.x),I=V(b),O=(0,r.useRef)(),R=p();(0,r.useEffect)(()=>{let e=()=>{var e,t,n,o,l;if(!j.current||!(null==(n=null==(e=(t=j.current).checkVisibility)?void 0:e.call(t))||n))return!1;let r=(0,i.Eo)(j.current);(0===r.height||0===r.width)&&(null==(o=(l=R.getState()).onError)||o.call(l,"004",i.xc.error004())),R.setState({width:r.width||500,height:r.height||500})};if(j.current){e(),window.addEventListener("resize",e);let t=new ResizeObserver(()=>e());return t.observe(j.current),()=>{window.removeEventListener("resize",e),t&&j.current&&t.unobserve(j.current)}}},[]);let L=(0,r.useCallback)(e=>{null==E||E({x:e[0],y:e[1],zoom:e[2]}),N||P.setState({transform:e})},[E,N]);return(0,r.useEffect)(()=>{if(j.current){O.current=(0,i.kO)({domNode:j.current,minZoom:v,maxZoom:y,translateExtent:m,viewport:h,onDraggingChange:e=>P.setState(t=>t.paneDragging===e?t:{paneDragging:e}),onPanZoomStart:(e,t)=>{let{onViewportChangeStart:n,onMoveStart:o}=P.getState();null==o||o(e,t),null==n||n(t)},onPanZoom:(e,t)=>{let{onViewportChange:n,onMove:o}=P.getState();null==o||o(e,t),null==n||n(t)},onPanZoomEnd:(e,t)=>{let{onViewportChangeEnd:n,onMoveEnd:o}=P.getState();null==o||o(e,t),null==n||n(t)}});let{x:e,y:t,zoom:n}=O.current.getViewport();return P.setState({panZoom:O.current,transform:[e,t,n],domNode:j.current.closest(".react-flow")}),()=>{var e;null==(e=O.current)||e.destroy()}}},[]),(0,r.useEffect)(()=>{var e;null==(e=O.current)||e.update({onPaneContextMenu:t,zoomOnScroll:n,zoomOnPinch:o,panOnScroll:a,panOnScrollSpeed:s,panOnScrollMode:c,zoomOnDoubleClick:u,panOnDrag:g,zoomActivationKeyPressed:I,preventScrolling:x,noPanClassName:C,userSelectionActive:D,noWheelClassName:w,lib:A,onTransformChange:L,connectionInProgress:_,selectionOnDrag:M,paneClickDistance:k})},[t,n,o,a,s,c,u,g,I,x,C,D,w,A,L,_,M,k]),(0,l.jsx)("div",{className:"react-flow__renderer",ref:j,style:el,children:S})}let ei=e=>({userSelectionActive:e.userSelectionActive,userSelectionRect:e.userSelectionRect});function es(){let{userSelectionActive:e,userSelectionRect:t}=f(ei,d.x);return e&&t?(0,l.jsx)("div",{className:"react-flow__selection react-flow__container",style:{width:t.width,height:t.height,transform:"translate(".concat(t.x,"px, ").concat(t.y,"px)")}}):null}let ed=(e,t)=>n=>{n.target===t.current&&(null==e||e(n))},ec=e=>({userSelectionActive:e.userSelectionActive,elementsSelectable:e.elementsSelectable,connectionInProgress:e.connection.inProgress,dragging:e.paneDragging,panBy:e.panBy,autoPanSpeed:e.autoPanSpeed});function eu(e){let{isSelecting:t,selectionKeyPressed:n,selectionMode:o=i.Qc.Full,panOnDrag:s,autoPanOnSelection:c,paneClickDistance:u,selectionOnDrag:g,onSelectionStart:h,onSelectionEnd:m,onPaneClick:v,onPaneContextMenu:y,onPaneScroll:b,onPaneMouseEnter:x,onPaneMouseMove:S,onPaneMouseLeave:w,children:C}=e,E=(0,r.useRef)(0),N=p(),{userSelectionActive:k,elementsSelectable:M,dragging:P,connectionInProgress:j,panBy:D,autoPanSpeed:A}=f(ec,d.x),_=M&&(t||k),I=(0,r.useRef)(null),O=(0,r.useRef)(),R=(0,r.useRef)(new Set),L=(0,r.useRef)(new Set),z=(0,r.useRef)(!1),B=(0,r.useRef)({x:0,y:0}),V=(0,r.useRef)(!1),H=e=>{if(z.current||j){z.current=!1;return}null==v||v(e),N.getState().resetSelectedElements(),N.setState({nodesSelectionActive:!1})};function F(e,t){var n,l;let{userSelectionRect:r}=N.getState();if(!r)return;let{transform:a,nodeLookup:s,edgeLookup:d,connectionLookup:c,triggerNodeChanges:u,triggerEdgeChanges:g,defaultEdgeOptions:f}=N.getState(),p={x:r.startX,y:r.startY},{x:h,y:m}=(0,i.zj)(p,a),v={startX:p.x,startY:p.y,x:e<h?e:h,y:t<m?t:m,width:Math.abs(e-h),height:Math.abs(t-m)},y=R.current,b=L.current;R.current=new Set((0,i.U$)(s,v,a,o===i.Qc.Partial,!0).map(e=>e.id)),L.current=new Set;let x=null==(n=null==f?void 0:f.selectable)||n;for(let e of R.current){let t=c.get(e);if(t)for(let{edgeId:e}of t.values()){let t=d.get(e);t&&(null!=(l=t.selectable)?l:x)&&L.current.add(e)}}(0,i._s)(y,R.current)||u(X(s,R.current,!0)),(0,i._s)(b,L.current)||g(X(d,L.current)),N.setState({userSelectionRect:v,userSelectionActive:!0,nodesSelectionActive:!1})}let T=()=>{cancelAnimationFrame(E.current),E.current=0,V.current=!1};(0,r.useEffect)(()=>()=>T(),[]);let Z=!0===s||Array.isArray(s)&&s.includes(0);return(0,l.jsxs)("div",{className:(0,a.A)(["react-flow__pane",{draggable:Z,dragging:P,selection:t}]),onClick:_?void 0:ed(H,I),onContextMenu:ed(e=>{if(Array.isArray(s)&&(null==s?void 0:s.includes(2)))return void e.preventDefault();null==y||y(e)},I),onWheel:ed(b?e=>b(e):void 0,I),onPointerEnter:_?void 0:x,onPointerMove:_?e=>{let{userSelectionRect:t,transform:o,resetSelectedElements:l}=N.getState();if(!O.current||!t)return;let{x:r,y:a}=(0,i.q1)(e.nativeEvent,O.current);B.current={x:r,y:a};let s=(0,i.zj)({x:t.startX,y:t.startY},o);if(!z.current){if(Math.hypot(r-s.x,a-s.y)<=(n?0:u))return;l(),null==h||h(e)}z.current=!0,V.current||(!function e(){if(!c||!O.current)return;let[t,n]=(0,i._7)(B.current,O.current,A);D({x:t,y:n}).then(t=>{if(!z.current||!t){E.current=requestAnimationFrame(e);return}let{x:n,y:o}=B.current;F(n,o),E.current=requestAnimationFrame(e)})}(),V.current=!0),F(r,a)}:S,onPointerUp:_?e=>{var t,n;0===e.button&&(null==(n=e.target)||null==(t=n.releasePointerCapture)||t.call(n,e.pointerId),!k&&e.target===I.current&&N.getState().userSelectionRect&&(null==H||H(e)),N.setState({userSelectionActive:!1,userSelectionRect:null}),z.current&&(null==m||m(e),N.setState({nodesSelectionActive:R.current.size>0})),T())}:void 0,onPointerCancel:_?e=>{var t,n;null==(n=e.target)||null==(t=n.releasePointerCapture)||t.call(n,e.pointerId),T()}:void 0,onPointerDownCapture:_?e=>{var o,l;let{domNode:r,transform:a}=N.getState();if(O.current=null==r?void 0:r.getBoundingClientRect(),!O.current)return;let s=e.target===I.current;if(!s&&e.target.closest(".nokey")||!t||!(g&&s||n)||0!==e.button||!e.isPrimary)return;null==(l=e.target)||null==(o=l.setPointerCapture)||o.call(l,e.pointerId),z.current=!1;let{x:d,y:c}=(0,i.q1)(e.nativeEvent,O.current),u=(0,i.Ff)({x:d,y:c},a);N.setState({userSelectionRect:{width:0,height:0,startX:u.x,startY:u.y,x:d,y:c}}),s||(e.stopPropagation(),e.preventDefault())}:void 0,onClickCapture:_?e=>{z.current&&(e.stopPropagation(),z.current=!1)}:void 0,onPointerLeave:w,ref:I,style:el,children:[C,(0,l.jsx)(es,{})]})}function eg(e){let{id:t,store:n,unselect:o=!1,nodeRef:l}=e,{addSelectedNodes:r,unselectNodesAndEdges:a,multiSelectionActive:s,nodeLookup:d,onError:c}=n.getState(),u=d.get(t);if(!u){null==c||c("012",i.xc.error012(t));return}n.setState({nodesSelectionActive:!1}),u.selected?(o||u.selected&&s)&&(a({nodes:[u],edges:[]}),requestAnimationFrame(()=>{var e;return null==l||null==(e=l.current)?void 0:e.blur()})):r([t])}function ef(e){let{nodeRef:t,disabled:n=!1,noDragClassName:o,handleSelector:l,nodeId:a,isSelectable:s,nodeClickDistance:d}=e,c=p(),[u,g]=(0,r.useState)(!1),f=(0,r.useRef)();return(0,r.useEffect)(()=>{f.current=(0,i.I$)({getStoreItems:()=>c.getState(),onNodeMouseDown:e=>{eg({id:e,store:c,nodeRef:t})},onDragStart:()=>{g(!0)},onDragStop:()=>{g(!1)}})},[]),(0,r.useEffect)(()=>{if(!n&&t.current&&f.current)return f.current.update({noDragClassName:o,handleSelector:l,domNode:t.current,isSelectable:s,nodeId:a,nodeClickDistance:d}),()=>{var e;null==(e=f.current)||e.destroy()}},[o,l,n,s,t,a,d]),u}function ep(){let e=p();return(0,r.useCallback)(t=>{let{nodeExtent:n,snapToGrid:o,snapGrid:l,nodesDraggable:r,onError:a,updateNodePositions:s,nodeLookup:d,nodeOrigin:c}=e.getState(),u=new Map,g=e=>e.selected&&(e.draggable||r&&void 0===e.draggable),f=o?l[0]:5,p=o?l[1]:5,h=t.direction.x*f*t.factor,m=t.direction.y*p*t.factor;for(let[,e]of d){if(!g(e))continue;let t={x:e.internals.positionAbsolute.x+h,y:e.internals.positionAbsolute.y+m};o&&(t=(0,i.s_)(t,l));let{position:r,positionAbsolute:s}=(0,i.aE)({nodeId:e.id,nextPosition:t,nodeLookup:d,nodeExtent:n,nodeOrigin:c,onError:a});e.position=r,e.internals.positionAbsolute=s,u.set(e.id,e)}s(u)},[])}let eh=(0,r.createContext)(null),em=eh.Provider;eh.Consumer;let ev=e=>({connectOnClick:e.connectOnClick,noPanClassName:e.noPanClassName,rfId:e.rfId}),ey=(0,r.memo)(U(function(e,t){let{type:n="source",position:o=i.yX.Top,isValidConnection:s,isConnectable:c=!0,isConnectableStart:u=!0,isConnectableEnd:g=!0,id:h,onConnect:m,children:v,className:y,onMouseDown:b,onTouchStart:x,...S}=e,w=h||null,C="target"===n,E=p(),N=(0,r.useContext)(eh),{connectOnClick:k,noPanClassName:M,rfId:P}=f(ev,d.x),{connectingFrom:j,connectingTo:D,clickConnecting:A,isPossibleEndHandle:_,connectionInProcess:I,clickConnectionInProcess:O,valid:R}=f(e=>{let{connectionClickStartHandle:t,connectionMode:o,connection:l}=e,{fromHandle:r,toHandle:a,isValid:s}=l,d=(null==a?void 0:a.nodeId)===N&&(null==a?void 0:a.id)===w&&(null==a?void 0:a.type)===n;return{connectingFrom:(null==r?void 0:r.nodeId)===N&&(null==r?void 0:r.id)===w&&(null==r?void 0:r.type)===n,connectingTo:d,clickConnecting:(null==t?void 0:t.nodeId)===N&&(null==t?void 0:t.id)===w&&(null==t?void 0:t.type)===n,isPossibleEndHandle:o===i.WZ.Strict?(null==r?void 0:r.type)!==n:N!==(null==r?void 0:r.nodeId)||w!==(null==r?void 0:r.id),connectionInProcess:!!r,clickConnectionInProcess:!!t,valid:d&&s}},d.x);if(!N){var L,z;null==(L=(z=E.getState()).onError)||L.call(z,"010",i.xc.error010())}let B=e=>{let{defaultEdgeOptions:t,onConnect:n,hasDefaultEdges:o}=E.getState(),l={...t,...e};if(o){let{edges:e,setEdges:t,onError:n}=E.getState();t(function(e,t){var n;let o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return(0,i.rN)(e,t,{...o,onError:null!=(n=o.onError)?n:Y})}(l,e,{onError:n}))}null==n||n(l),null==m||m(l)},V=e=>{if(!N)return;let t=(0,i.Er)(e.nativeEvent);if(u&&(t&&0===e.button||!t)){let t=E.getState();i.aQ.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:C,handleId:w,nodeId:N,flowId:t.rfId,panBy:t.panBy,cancelConnection:t.cancelConnection,onConnectStart:t.onConnectStart,onConnectEnd:function(){for(var e,t,n=arguments.length,o=Array(n),l=0;l<n;l++)o[l]=arguments[l];return null==(e=(t=E.getState()).onConnectEnd)?void 0:e.call(t,...o)},updateConnection:t.updateConnection,onConnect:B,isValidConnection:s||function(){for(var e,t,n,o=arguments.length,l=Array(o),r=0;r<o;r++)l[r]=arguments[r];return null==(n=null==(e=(t=E.getState()).isValidConnection)?void 0:e.call(t,...l))||n},getTransform:()=>E.getState().transform,getFromHandle:()=>E.getState().connection.fromHandle,autoPanSpeed:t.autoPanSpeed,dragThreshold:t.connectionDragThreshold})}t?null==b||b(e):null==x||x(e)};return(0,l.jsx)("div",{"data-handleid":w,"data-nodeid":N,"data-handlepos":o,"data-id":"".concat(P,"-").concat(N,"-").concat(w,"-").concat(n),className:(0,a.A)(["react-flow__handle","react-flow__handle-".concat(o),"nodrag",M,y,{source:!C,target:C,connectable:c,connectablestart:u,connectableend:g,clickconnecting:A,connectingfrom:j,connectingto:D,valid:R,connectionindicator:c&&(!I||_)&&(I||O?g:u)}]),onMouseDown:V,onTouchStart:V,onClick:k?e=>{let{onClickConnectStart:t,onClickConnectEnd:o,connectionClickStartHandle:l,connectionMode:r,isValidConnection:a,lib:d,rfId:c,nodeLookup:g,connection:f}=E.getState();if(!N||!l&&!u)return;if(!l){null==t||t(e.nativeEvent,{nodeId:N,handleId:w,handleType:n}),E.setState({connectionClickStartHandle:{nodeId:N,type:n,id:w}});return}let p=(0,i.oj)(e.target),h=s||a,{connection:m,isValid:v}=i.aQ.isValid(e.nativeEvent,{handle:{nodeId:N,id:w,type:n},connectionMode:r,fromNodeId:l.nodeId,fromHandleId:l.id||null,fromType:l.type,isValidConnection:h,flowId:c,doc:p,lib:d,nodeLookup:g});v&&m&&B(m);let y=structuredClone(f);delete y.inProgress,y.toPosition=y.toHandle?y.toHandle.position:null,null==o||o(e,y),E.setState({connectionClickStartHandle:null})}:void 0,ref:t,...S,children:v})})),eb={ArrowUp:{x:0,y:-1},ArrowDown:{x:0,y:1},ArrowLeft:{x:-1,y:0},ArrowRight:{x:1,y:0}},ex={input:function(e){let{data:t,isConnectable:n,sourcePosition:o=i.yX.Bottom}=e;return(0,l.jsxs)(l.Fragment,{children:[null==t?void 0:t.label,(0,l.jsx)(ey,{type:"source",position:o,isConnectable:n})]})},default:function(e){let{data:t,isConnectable:n,targetPosition:o=i.yX.Top,sourcePosition:r=i.yX.Bottom}=e;return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(ey,{type:"target",position:o,isConnectable:n}),null==t?void 0:t.label,(0,l.jsx)(ey,{type:"source",position:r,isConnectable:n})]})},output:function(e){let{data:t,isConnectable:n,targetPosition:o=i.yX.Top}=e;return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(ey,{type:"target",position:o,isConnectable:n}),null==t?void 0:t.label]})},group:function(){return null}},eS=e=>{let{width:t,height:n,x:o,y:l}=(0,i.aZ)(e.nodeLookup,{filter:e=>!!e.selected});return{width:(0,i.kf)(t)?t:null,height:(0,i.kf)(n)?n:null,userSelectionActive:e.userSelectionActive,transformString:"translate(".concat(e.transform[0],"px,").concat(e.transform[1],"px) scale(").concat(e.transform[2],") translate(").concat(o,"px,").concat(l,"px)")}};function ew(e){let{onSelectionContextMenu:t,noPanClassName:n,disableKeyboardA11y:o}=e,i=p(),{width:s,height:c,transformString:u,userSelectionActive:g}=f(eS,d.x),h=ep(),m=(0,r.useRef)(null);(0,r.useEffect)(()=>{if(!o){var e;null==(e=m.current)||e.focus({preventScroll:!0})}},[o]);let v=!g&&null!==s&&null!==c;if(ef({nodeRef:m,disabled:!v}),!v)return null;let y=t?e=>{t(e,i.getState().nodes.filter(e=>e.selected))}:void 0;return(0,l.jsx)("div",{className:(0,a.A)(["react-flow__nodesselection","react-flow__container",n]),style:{transform:u},children:(0,l.jsx)("div",{ref:m,className:"react-flow__nodesselection-rect",onContextMenu:y,tabIndex:o?void 0:-1,onKeyDown:o?void 0:e=>{Object.prototype.hasOwnProperty.call(eb,e.key)&&(e.preventDefault(),h({direction:eb[e.key],factor:e.shiftKey?4:1}))},style:{width:s,height:c}})})}let eC="undefined"!=typeof window?window:void 0,eE=e=>({nodesSelectionActive:e.nodesSelectionActive,userSelectionActive:e.userSelectionActive});function eN(e){let{children:t,onPaneClick:n,onPaneMouseEnter:o,onPaneMouseMove:a,onPaneMouseLeave:i,onPaneContextMenu:s,onPaneScroll:c,paneClickDistance:u,deleteKeyCode:g,selectionKeyCode:h,selectionOnDrag:m,selectionMode:v,onSelectionStart:y,onSelectionEnd:b,multiSelectionKeyCode:x,panActivationKeyCode:S,zoomActivationKeyCode:w,elementsSelectable:C,zoomOnScroll:E,zoomOnPinch:N,panOnScroll:k,panOnScrollSpeed:M,panOnScrollMode:P,zoomOnDoubleClick:j,panOnDrag:D,autoPanOnSelection:A,defaultViewport:_,translateExtent:I,minZoom:O,maxZoom:R,preventScrolling:L,onSelectionContextMenu:z,noWheelClassName:B,noPanClassName:H,disableKeyboardA11y:F,onViewportChange:T,isControlledViewport:Z}=e,{nodesSelectionActive:X,userSelectionActive:K}=f(eE,d.x),W=V(h,{target:eC}),Y=V(S,{target:eC}),Q=Y||D,U=Y||k,q=m&&!0!==Q,G=W||K||q;return!function(e){let{deleteKeyCode:t,multiSelectionKeyCode:n}=e,o=p(),{deleteElements:l}=et(),a=V(t,{actInsideInputWithModifier:!1}),i=V(n,{target:eo});(0,r.useEffect)(()=>{if(a){let{edges:e,nodes:t}=o.getState();l({nodes:t.filter(en),edges:e.filter(en)}),o.setState({nodesSelectionActive:!1})}},[a]),(0,r.useEffect)(()=>{o.setState({multiSelectionActive:i})},[i])}({deleteKeyCode:g,multiSelectionKeyCode:x}),(0,l.jsx)(ea,{onPaneContextMenu:s,elementsSelectable:C,zoomOnScroll:E,zoomOnPinch:N,panOnScroll:U,panOnScrollSpeed:M,panOnScrollMode:P,zoomOnDoubleClick:j,panOnDrag:!W&&Q,defaultViewport:_,translateExtent:I,minZoom:O,maxZoom:R,zoomActivationKeyCode:w,preventScrolling:L,noWheelClassName:B,noPanClassName:H,onViewportChange:T,isControlledViewport:Z,paneClickDistance:u,selectionOnDrag:q,children:(0,l.jsxs)(eu,{onSelectionStart:y,onSelectionEnd:b,onPaneClick:n,onPaneMouseEnter:o,onPaneMouseMove:a,onPaneMouseLeave:i,onPaneContextMenu:s,onPaneScroll:c,panOnDrag:Q,autoPanOnSelection:A,isSelecting:!!G,selectionMode:v,selectionKeyPressed:W,paneClickDistance:u,selectionOnDrag:q,children:[t,X&&(0,l.jsx)(ew,{onSelectionContextMenu:z,noPanClassName:H,disableKeyboardA11y:F})]})})}eN.displayName="FlowRenderer";let ek=(0,r.memo)(eN),eM=e=>e.updateNodeInternals;var eP=(0,r.memo)(function(e){var t,n,o,s,c,u,g,h,m,y,b,x,S;let{id:w,onClick:C,onMouseEnter:E,onMouseMove:N,onMouseLeave:k,onContextMenu:M,onDoubleClick:P,nodesDraggable:j,elementsSelectable:D,nodesConnectable:A,nodesFocusable:_,resizeObserver:I,noDragClassName:O,noPanClassName:R,disableKeyboardA11y:L,rfId:z,nodeTypes:B,nodeClickDistance:V,onError:H}=e,{node:F,internals:T,isParent:Z}=f(e=>{let t=e.nodeLookup.get(w),n=e.parentLookup.has(w);return{node:t,internals:t.internals,isParent:n}},d.x),X=F.type||"default",K=(null==B?void 0:B[X])||ex[X];void 0===K&&(null==H||H("003",i.xc.error003(X)),X="default",K=(null==B?void 0:B.default)||ex.default);let W=!!(F.draggable||j&&void 0===F.draggable),Y=!!(F.selectable||D&&void 0===F.selectable),Q=!!(F.connectable||A&&void 0===F.connectable),U=!!(F.focusable||_&&void 0===F.focusable),q=p(),G=(0,i.QE)(F),$=function(e){let{node:t,nodeType:n,hasDimensions:o,resizeObserver:l}=e,a=p(),i=(0,r.useRef)(null),s=(0,r.useRef)(null),d=(0,r.useRef)(t.sourcePosition),c=(0,r.useRef)(t.targetPosition),u=(0,r.useRef)(n),g=o&&!!t.internals.handleBounds;return(0,r.useEffect)(()=>{!i.current||t.hidden||g&&s.current===i.current||(s.current&&(null==l||l.unobserve(s.current)),null==l||l.observe(i.current),s.current=i.current)},[g,t.hidden]),(0,r.useEffect)(()=>()=>{s.current&&(null==l||l.unobserve(s.current),s.current=null)},[]),(0,r.useEffect)(()=>{if(i.current){let e=u.current!==n,o=d.current!==t.sourcePosition,l=c.current!==t.targetPosition;(e||o||l)&&(u.current=n,d.current=t.sourcePosition,c.current=t.targetPosition,a.getState().updateNodeInternals(new Map([[t.id,{id:t.id,nodeElement:i.current,force:!0}]])))}},[t.id,n,t.sourcePosition,t.targetPosition]),i}({node:F,nodeType:X,hasDimensions:G,resizeObserver:I}),J=ef({nodeRef:$,disabled:F.hidden||!W,noDragClassName:O,handleSelector:F.dragHandle,nodeId:w,isSelectable:Y,nodeClickDistance:V}),ee=ep();if(F.hidden)return null;let et=(0,i.uD)(F),en=void 0===F.internals.handleBounds?{width:null!=(m=null!=(h=F.width)?h:F.initialWidth)?m:null==(u=F.style)?void 0:u.width,height:null!=(b=null!=(y=F.height)?y:F.initialHeight)?b:null==(g=F.style)?void 0:g.height}:{width:null!=(x=F.width)?x:null==(s=F.style)?void 0:s.width,height:null!=(S=F.height)?S:null==(c=F.style)?void 0:c.height},eo=Y||W||C||E||N||k,el=E?e=>E(e,{...T.userNode}):void 0,er=N?e=>N(e,{...T.userNode}):void 0,ea=k?e=>k(e,{...T.userNode}):void 0,ei=M?e=>M(e,{...T.userNode}):void 0,es=P?e=>P(e,{...T.userNode}):void 0;return(0,l.jsx)("div",{className:(0,a.A)(["react-flow__node","react-flow__node-".concat(X),{[R]:W},F.className,{selected:F.selected,selectable:Y,parent:Z,draggable:W,dragging:J}]),ref:$,style:{zIndex:T.z,transform:"translate(".concat(T.positionAbsolute.x,"px,").concat(T.positionAbsolute.y,"px)"),pointerEvents:eo?"all":"none",visibility:G?"visible":"hidden",...F.style,...en},"data-id":w,"data-testid":"rf__node-".concat(w),onMouseEnter:el,onMouseMove:er,onMouseLeave:ea,onContextMenu:ei,onClick:e=>{let{selectNodesOnDrag:t,nodeDragThreshold:n}=q.getState();Y&&(!t||!W||n>0)&&eg({id:w,store:q,nodeRef:$}),C&&C(e,{...T.userNode})},onDoubleClick:es,onKeyDown:U?e=>{if(!(0,i.v5)(e.nativeEvent)&&!L){if(i.tn.includes(e.key)&&Y)eg({id:w,store:q,unselect:"Escape"===e.key,nodeRef:$});else if(W&&F.selected&&Object.prototype.hasOwnProperty.call(eb,e.key)){e.preventDefault();let{ariaLabelConfig:t}=q.getState();q.setState({ariaLiveMessage:t["node.a11yDescription.ariaLiveMessage"]({direction:e.key.replace("Arrow","").toLowerCase(),x:~~T.positionAbsolute.x,y:~~T.positionAbsolute.y})}),ee({direction:eb[e.key],factor:e.shiftKey?4:1})}}}:void 0,tabIndex:U?0:void 0,onFocus:U?()=>{var e;if(L||!(null==(e=$.current)?void 0:e.matches(":focus-visible")))return;let{transform:t,width:n,height:o,autoPanOnNodeFocus:l,setCenter:r}=q.getState();l&&((0,i.U$)(new Map([[w,F]]),{x:0,y:0,width:n,height:o},t,!0).length>0||r(F.position.x+et.width/2,F.position.y+et.height/2,{zoom:t[2]}))}:void 0,role:null!=(t=F.ariaRole)?t:U?"group":void 0,"aria-roledescription":"node","aria-describedby":L?void 0:"".concat(v,"-").concat(z),"aria-label":F.ariaLabel,...F.domAttributes,children:(0,l.jsx)(em,{value:w,children:(0,l.jsx)(K,{id:w,data:F.data,type:X,positionAbsoluteX:T.positionAbsolute.x,positionAbsoluteY:T.positionAbsolute.y,selected:null!=(n=F.selected)&&n,selectable:Y,draggable:W,deletable:null==(o=F.deletable)||o,isConnectable:Q,sourcePosition:F.sourcePosition,targetPosition:F.targetPosition,dragging:J,dragHandle:F.dragHandle,zIndex:T.z,parentId:F.parentId,...et})})})});let ej=e=>({nodesDraggable:e.nodesDraggable,nodesConnectable:e.nodesConnectable,nodesFocusable:e.nodesFocusable,elementsSelectable:e.elementsSelectable,onError:e.onError});function eD(e){var t;let{nodesDraggable:n,nodesConnectable:o,nodesFocusable:a,elementsSelectable:s,onError:c}=f(ej,d.x),u=(t=e.onlyRenderVisibleElements,f((0,r.useCallback)(e=>t?(0,i.U$)(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]),d.x)),g=function(){let e=f(eM),[t]=(0,r.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,r.useEffect)(()=>()=>{null==t||t.disconnect()},[t]),t}();return(0,l.jsx)("div",{className:"react-flow__nodes",style:el,children:u.map(t=>(0,l.jsx)(eP,{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:g,nodesDraggable:n,nodesConnectable:o,nodesFocusable:a,elementsSelectable:s,nodeClickDistance:e.nodeClickDistance,onError:c},t))})}eD.displayName="NodeRenderer";let eA=(0,r.memo)(eD),e_={[i.TG.Arrow]:e=>{let{color:t="none",strokeWidth:n=1}=e,o={strokeWidth:n,...t&&{stroke:t}};return(0,l.jsx)("polyline",{className:"arrow",style:o,strokeLinecap:"round",fill:"none",strokeLinejoin:"round",points:"-5,-4 0,0 -5,4"})},[i.TG.ArrowClosed]:e=>{let{color:t="none",strokeWidth:n=1}=e,o={strokeWidth:n,...t&&{stroke:t,fill:t}};return(0,l.jsx)("polyline",{className:"arrowclosed",style:o,strokeLinecap:"round",strokeLinejoin:"round",points:"-5,-4 0,0 -5,4 -5,-4"})}},eI=e=>{let{id:t,type:n,color:o,width:a=12.5,height:s=12.5,markerUnits:d="strokeWidth",strokeWidth:c,orient:u="auto-start-reverse"}=e,g=function(e){let t=p();return(0,r.useMemo)(()=>{if(!Object.prototype.hasOwnProperty.call(e_,e)){var n,o;return null==(n=(o=t.getState()).onError)||n.call(o,"009",i.xc.error009(e)),null}return e_[e]},[e])}(n);return g?(0,l.jsx)("marker",{className:"react-flow__arrowhead",id:t,markerWidth:"".concat(a),markerHeight:"".concat(s),viewBox:"-10 -10 20 20",markerUnits:d,orient:u,refX:"0",refY:"0",children:(0,l.jsx)(g,{color:o,strokeWidth:c})}):null},eO=e=>{let{defaultColor:t,rfId:n}=e,o=f(e=>e.edges),a=f(e=>e.defaultEdgeOptions),s=(0,r.useMemo)(()=>(0,i.Hm)(o,{id:n,defaultColor:t,defaultMarkerStart:null==a?void 0:a.markerStart,defaultMarkerEnd:null==a?void 0:a.markerEnd}),[o,a,n,t]);return s.length?(0,l.jsx)("svg",{className:"react-flow__marker","aria-hidden":"true",children:(0,l.jsx)("defs",{children:s.map(e=>(0,l.jsx)(eI,{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};eO.displayName="MarkerDefinitions";var eR=(0,r.memo)(eO);function eL(e){let{x:t,y:n,label:o,labelStyle:i,labelShowBg:s=!0,labelBgStyle:d,labelBgPadding:c=[2,4],labelBgBorderRadius:u=2,children:g,className:f,...p}=e,[h,m]=(0,r.useState)({x:1,y:0,width:0,height:0}),v=(0,a.A)(["react-flow__edge-textwrapper",f]),y=(0,r.useRef)(null);return((0,r.useEffect)(()=>{if(y.current){let e=y.current.getBBox();m({x:e.x,y:e.y,width:e.width,height:e.height})}},[o]),o)?(0,l.jsxs)("g",{transform:"translate(".concat(t-h.width/2," ").concat(n-h.height/2,")"),className:v,visibility:h.width?"visible":"hidden",...p,children:[s&&(0,l.jsx)("rect",{width:h.width+2*c[0],x:-c[0],y:-c[1],height:h.height+2*c[1],className:"react-flow__edge-textbg",style:d,rx:u,ry:u}),(0,l.jsx)("text",{className:"react-flow__edge-text",y:h.height/2,dy:"0.3em",ref:y,style:i,children:o}),g]}):null}eL.displayName="EdgeText";let ez=(0,r.memo)(eL);function eB(e){let{path:t,labelX:n,labelY:o,label:r,labelStyle:s,labelShowBg:d,labelBgStyle:c,labelBgPadding:u,labelBgBorderRadius:g,interactionWidth:f=20,...p}=e;return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)("path",{...p,d:t,fill:"none",className:(0,a.A)(["react-flow__edge-path",p.className])}),f?(0,l.jsx)("path",{d:t,fill:"none",strokeOpacity:0,strokeWidth:f,className:"react-flow__edge-interaction"}):null,r&&(0,i.kf)(n)&&(0,i.kf)(o)?(0,l.jsx)(ez,{x:n,y:o,label:r,labelStyle:s,labelShowBg:d,labelBgStyle:c,labelBgPadding:u,labelBgBorderRadius:g}):null]})}function eV(e){let{pos:t,x1:n,y1:o,x2:l,y2:r}=e;return t===i.yX.Left||t===i.yX.Right?[.5*(n+l),o]:[n,.5*(o+r)]}function eH(e){let{sourceX:t,sourceY:n,sourcePosition:o=i.yX.Bottom,targetX:l,targetY:r,targetPosition:a=i.yX.Top}=e,[s,d]=eV({pos:o,x1:t,y1:n,x2:l,y2:r}),[c,u]=eV({pos:a,x1:l,y1:r,x2:t,y2:n}),[g,f,p,h]=(0,i.e_)({sourceX:t,sourceY:n,targetX:l,targetY:r,sourceControlX:s,sourceControlY:d,targetControlX:c,targetControlY:u});return["M".concat(t,",").concat(n," C").concat(s,",").concat(d," ").concat(c,",").concat(u," ").concat(l,",").concat(r),g,f,p,h]}function eF(e){return(0,r.memo)(t=>{let{id:n,sourceX:o,sourceY:r,targetX:a,targetY:i,sourcePosition:s,targetPosition:d,label:c,labelStyle:u,labelShowBg:g,labelBgStyle:f,labelBgPadding:p,labelBgBorderRadius:h,style:m,markerEnd:v,markerStart:y,interactionWidth:b}=t,[x,S,w]=eH({sourceX:o,sourceY:r,sourcePosition:s,targetX:a,targetY:i,targetPosition:d}),C=e.isInternal?void 0:n;return(0,l.jsx)(eB,{id:C,path:x,labelX:S,labelY:w,label:c,labelStyle:u,labelShowBg:g,labelBgStyle:f,labelBgPadding:p,labelBgBorderRadius:h,style:m,markerEnd:v,markerStart:y,interactionWidth:b})})}let eT=eF({isInternal:!1}),eZ=eF({isInternal:!0});function eX(e){return(0,r.memo)(t=>{let{id:n,sourceX:o,sourceY:r,targetX:a,targetY:s,label:d,labelStyle:c,labelShowBg:u,labelBgStyle:g,labelBgPadding:f,labelBgBorderRadius:p,style:h,sourcePosition:m=i.yX.Bottom,targetPosition:v=i.yX.Top,markerEnd:y,markerStart:b,pathOptions:x,interactionWidth:S}=t,[w,C,E]=(0,i.oN)({sourceX:o,sourceY:r,sourcePosition:m,targetX:a,targetY:s,targetPosition:v,borderRadius:null==x?void 0:x.borderRadius,offset:null==x?void 0:x.offset,stepPosition:null==x?void 0:x.stepPosition}),N=e.isInternal?void 0:n;return(0,l.jsx)(eB,{id:N,path:w,labelX:C,labelY:E,label:d,labelStyle:c,labelShowBg:u,labelBgStyle:g,labelBgPadding:f,labelBgBorderRadius:p,style:h,markerEnd:y,markerStart:b,interactionWidth:S})})}eT.displayName="SimpleBezierEdge",eZ.displayName="SimpleBezierEdgeInternal";let eK=eX({isInternal:!1}),eW=eX({isInternal:!0});function eY(e){return(0,r.memo)(t=>{var n;let{id:o,...a}=t,i=e.isInternal?void 0:o;return(0,l.jsx)(eK,{...a,id:i,pathOptions:(0,r.useMemo)(()=>{var e;return{borderRadius:0,offset:null==(e=a.pathOptions)?void 0:e.offset}},[null==(n=a.pathOptions)?void 0:n.offset])})})}eK.displayName="SmoothStepEdge",eW.displayName="SmoothStepEdgeInternal";let eQ=eY({isInternal:!1}),eU=eY({isInternal:!0});function eq(e){return(0,r.memo)(t=>{let{id:n,sourceX:o,sourceY:r,targetX:a,targetY:s,label:d,labelStyle:c,labelShowBg:u,labelBgStyle:g,labelBgPadding:f,labelBgBorderRadius:p,style:h,markerEnd:m,markerStart:v,interactionWidth:y}=t,[b,x,S]=(0,i.ah)({sourceX:o,sourceY:r,targetX:a,targetY:s}),w=e.isInternal?void 0:n;return(0,l.jsx)(eB,{id:w,path:b,labelX:x,labelY:S,label:d,labelStyle:c,labelShowBg:u,labelBgStyle:g,labelBgPadding:f,labelBgBorderRadius:p,style:h,markerEnd:m,markerStart:v,interactionWidth:y})})}eQ.displayName="StepEdge",eU.displayName="StepEdgeInternal";let eG=eq({isInternal:!1}),e$=eq({isInternal:!0});function eJ(e){return(0,r.memo)(t=>{let{id:n,sourceX:o,sourceY:r,targetX:a,targetY:s,sourcePosition:d=i.yX.Bottom,targetPosition:c=i.yX.Top,label:u,labelStyle:g,labelShowBg:f,labelBgStyle:p,labelBgPadding:h,labelBgBorderRadius:m,style:v,markerEnd:y,markerStart:b,pathOptions:x,interactionWidth:S}=t,[w,C,E]=(0,i.Fp)({sourceX:o,sourceY:r,sourcePosition:d,targetX:a,targetY:s,targetPosition:c,curvature:null==x?void 0:x.curvature}),N=e.isInternal?void 0:n;return(0,l.jsx)(eB,{id:N,path:w,labelX:C,labelY:E,label:u,labelStyle:g,labelShowBg:f,labelBgStyle:p,labelBgPadding:h,labelBgBorderRadius:m,style:v,markerEnd:y,markerStart:b,interactionWidth:S})})}eG.displayName="StraightEdge",e$.displayName="StraightEdgeInternal";let e0=eJ({isInternal:!1}),e1=eJ({isInternal:!0});e0.displayName="BezierEdge",e1.displayName="BezierEdgeInternal";let e3={default:e1,straight:e$,step:eU,smoothstep:eW,simplebezier:eZ},e2={sourceX:null,sourceY:null,targetX:null,targetY:null,sourcePosition:null,targetPosition:null},e4="react-flow__edgeupdater";function e5(e){let{position:t,centerX:n,centerY:o,radius:r=10,onMouseDown:s,onMouseEnter:d,onMouseOut:c,type:u}=e;return(0,l.jsx)("circle",{onMouseDown:s,onMouseEnter:d,onMouseOut:c,className:(0,a.A)([e4,"".concat(e4,"-").concat(u)]),cx:t===i.yX.Left?n-r:t===i.yX.Right?n+r:n,cy:t===i.yX.Top?o-r:t===i.yX.Bottom?o+r:o,r:r,stroke:"transparent",fill:"transparent"})}function e6(e){let{isReconnectable:t,reconnectRadius:n,edge:o,sourceX:r,sourceY:a,targetX:s,targetY:d,sourcePosition:c,targetPosition:u,onReconnect:g,onReconnectStart:f,onReconnectEnd:h,setReconnecting:m,setUpdateHover:v}=e,y=p(),b=(e,t)=>{if(0!==e.button)return;let{autoPanOnConnect:n,domNode:l,connectionMode:r,connectionRadius:a,lib:s,onConnectStart:d,cancelConnection:c,nodeLookup:u,rfId:p,panBy:v,updateConnection:b}=y.getState(),x="target"===t.type;i.aQ.onPointerDown(e.nativeEvent,{autoPanOnConnect:n,connectionMode:r,connectionRadius:a,domNode:l,handleId:t.id,nodeId:t.nodeId,nodeLookup:u,isTarget:x,edgeUpdaterType:t.type,lib:s,flowId:p,cancelConnection:c,panBy:v,isValidConnection:function(){for(var e,t,n,o=arguments.length,l=Array(o),r=0;r<o;r++)l[r]=arguments[r];return null==(n=null==(e=(t=y.getState()).isValidConnection)?void 0:e.call(t,...l))||n},onConnect:e=>null==g?void 0:g(o,e),onConnectStart:(n,l)=>{m(!0),null==f||f(e,o,t.type),null==d||d(n,l)},onConnectEnd:function(){for(var e,t,n=arguments.length,o=Array(n),l=0;l<n;l++)o[l]=arguments[l];return null==(e=(t=y.getState()).onConnectEnd)?void 0:e.call(t,...o)},onReconnectEnd:(e,n)=>{m(!1),null==h||h(e,o,t.type,n)},updateConnection:b,getTransform:()=>y.getState().transform,getFromHandle:()=>y.getState().connection.fromHandle,dragThreshold:y.getState().connectionDragThreshold,handleDomNode:e.currentTarget})},x=()=>v(!0),S=()=>v(!1);return(0,l.jsxs)(l.Fragment,{children:[(!0===t||"source"===t)&&(0,l.jsx)(e5,{position:c,centerX:r,centerY:a,radius:n,onMouseDown:e=>{var t;return b(e,{nodeId:o.target,id:null!=(t=o.targetHandle)?t:null,type:"target"})},onMouseEnter:x,onMouseOut:S,type:"source"}),(!0===t||"target"===t)&&(0,l.jsx)(e5,{position:u,centerX:s,centerY:d,radius:n,onMouseDown:e=>{var t;return b(e,{nodeId:o.source,id:null!=(t=o.sourceHandle)?t:null,type:"source"})},onMouseEnter:x,onMouseOut:S,type:"target"})]})}var e8=(0,r.memo)(function(e){var t,n;let{id:o,edgesFocusable:s,edgesReconnectable:c,elementsSelectable:u,onClick:g,onDoubleClick:h,onContextMenu:m,onMouseEnter:v,onMouseMove:b,onMouseLeave:x,reconnectRadius:S,onReconnect:w,onReconnectStart:C,onReconnectEnd:E,rfId:N,edgeTypes:k,noPanClassName:M,onError:P,disableKeyboardA11y:j}=e,D=f(e=>e.edgeLookup.get(o)),A=f(e=>e.defaultEdgeOptions),_=(D=A?{...A,...D}:D).type||"default",I=(null==k?void 0:k[_])||e3[_];void 0===I&&(null==P||P("011",i.xc.error011(_)),_="default",I=(null==k?void 0:k.default)||e3.default);let O=!!(D.focusable||s&&void 0===D.focusable),R=void 0!==w&&(D.reconnectable||c&&void 0===D.reconnectable),L=!!(D.selectable||u&&void 0===D.selectable),z=(0,r.useRef)(null),[B,V]=(0,r.useState)(!1),[H,F]=(0,r.useState)(!1),T=p(),{zIndex:Z,sourceX:X,sourceY:K,targetX:W,targetY:Y,sourcePosition:Q,targetPosition:U}=f((0,r.useCallback)(e=>{let t=e.nodeLookup.get(D.source),n=e.nodeLookup.get(D.target);if(!t||!n)return{zIndex:D.zIndex,...e2};let l=(0,i.b5)({id:o,sourceNode:t,targetNode:n,sourceHandle:D.sourceHandle||null,targetHandle:D.targetHandle||null,connectionMode:e.connectionMode,onError:P});return{zIndex:(0,i.qX)({selected:D.selected,zIndex:D.zIndex,sourceNode:t,targetNode:n,elevateOnSelect:e.elevateEdgesOnSelect,zIndexMode:e.zIndexMode}),...l||e2}},[D.source,D.target,D.sourceHandle,D.targetHandle,D.selected,D.zIndex]),d.x),q=(0,r.useMemo)(()=>D.markerStart?"url('#".concat((0,i.aW)(D.markerStart,N),"')"):void 0,[D.markerStart,N]),G=(0,r.useMemo)(()=>D.markerEnd?"url('#".concat((0,i.aW)(D.markerEnd,N),"')"):void 0,[D.markerEnd,N]);if(D.hidden||null===X||null===K||null===W||null===Y)return null;let $=h?e=>{h(e,{...D})}:void 0,J=m?e=>{m(e,{...D})}:void 0,ee=v?e=>{v(e,{...D})}:void 0,et=b?e=>{b(e,{...D})}:void 0,en=x?e=>{x(e,{...D})}:void 0;return(0,l.jsx)("svg",{style:{zIndex:Z},children:(0,l.jsxs)("g",{className:(0,a.A)(["react-flow__edge","react-flow__edge-".concat(_),D.className,M,{selected:D.selected,animated:D.animated,inactive:!L&&!g,updating:B,selectable:L}]),onClick:e=>{let{addSelectedEdges:t,unselectNodesAndEdges:n,multiSelectionActive:l}=T.getState();if(L)if(T.setState({nodesSelectionActive:!1}),D.selected&&l){var r;n({nodes:[],edges:[D]}),null==(r=z.current)||r.blur()}else t([o]);g&&g(e,D)},onDoubleClick:$,onContextMenu:J,onMouseEnter:ee,onMouseMove:et,onMouseLeave:en,onKeyDown:O?e=>{if(!j&&i.tn.includes(e.key)&&L){let{unselectNodesAndEdges:n,addSelectedEdges:l}=T.getState();if("Escape"===e.key){var t;null==(t=z.current)||t.blur(),n({edges:[D]})}else l([o])}}:void 0,tabIndex:O?0:void 0,role:null!=(t=D.ariaRole)?t:O?"group":"img","aria-roledescription":"edge","data-id":o,"data-testid":"rf__edge-".concat(o),"aria-label":null===D.ariaLabel?void 0:D.ariaLabel||"Edge from ".concat(D.source," to ").concat(D.target),"aria-describedby":O?"".concat(y,"-").concat(N):void 0,ref:z,...D.domAttributes,children:[!H&&(0,l.jsx)(I,{id:o,source:D.source,target:D.target,type:D.type,selected:D.selected,animated:D.animated,selectable:L,deletable:null==(n=D.deletable)||n,label:D.label,labelStyle:D.labelStyle,labelShowBg:D.labelShowBg,labelBgStyle:D.labelBgStyle,labelBgPadding:D.labelBgPadding,labelBgBorderRadius:D.labelBgBorderRadius,sourceX:X,sourceY:K,targetX:W,targetY:Y,sourcePosition:Q,targetPosition:U,data:D.data,style:D.style,sourceHandleId:D.sourceHandle,targetHandleId:D.targetHandle,markerStart:q,markerEnd:G,pathOptions:"pathOptions"in D?D.pathOptions:void 0,interactionWidth:D.interactionWidth}),R&&(0,l.jsx)(e6,{edge:D,isReconnectable:R,reconnectRadius:S,onReconnect:w,onReconnectStart:C,onReconnectEnd:E,sourceX:X,sourceY:K,targetX:W,targetY:Y,sourcePosition:Q,targetPosition:U,setUpdateHover:V,setReconnecting:F})]})})});let e7=e=>({edgesFocusable:e.edgesFocusable,edgesReconnectable:e.edgesReconnectable,elementsSelectable:e.elementsSelectable,connectionMode:e.connectionMode,onError:e.onError});function e9(e){let{defaultMarkerColor:t,onlyRenderVisibleElements:n,rfId:o,edgeTypes:a,noPanClassName:s,onReconnect:c,onEdgeContextMenu:u,onEdgeMouseEnter:g,onEdgeMouseMove:p,onEdgeMouseLeave:h,onEdgeClick:m,reconnectRadius:v,onEdgeDoubleClick:y,onReconnectStart:b,onReconnectEnd:x,disableKeyboardA11y:S}=e,{edgesFocusable:w,edgesReconnectable:C,elementsSelectable:E,onError:N}=f(e7,d.x),k=f((0,r.useCallback)(e=>{if(!n)return e.edges.map(e=>e.id);let t=[];if(e.width&&e.height)for(let n of e.edges){let o=e.nodeLookup.get(n.source),l=e.nodeLookup.get(n.target);o&&l&&(0,i.uj)({sourceNode:o,targetNode:l,width:e.width,height:e.height,transform:e.transform})&&t.push(n.id)}return t},[n]),d.x);return(0,l.jsxs)("div",{className:"react-flow__edges",children:[(0,l.jsx)(eR,{defaultColor:t,rfId:o}),k.map(e=>(0,l.jsx)(e8,{id:e,edgesFocusable:w,edgesReconnectable:C,elementsSelectable:E,noPanClassName:s,onReconnect:c,onContextMenu:u,onMouseEnter:g,onMouseMove:p,onMouseLeave:h,onClick:m,reconnectRadius:v,onDoubleClick:y,onReconnectStart:b,onReconnectEnd:x,rfId:o,onError:N,edgeTypes:a,disableKeyboardA11y:S},e))]})}e9.displayName="EdgeRenderer";let te=(0,r.memo)(e9),tt=e=>"translate(".concat(e.transform[0],"px,").concat(e.transform[1],"px) scale(").concat(e.transform[2],")");function tn(e){let{children:t}=e,n=f(tt);return(0,l.jsx)("div",{className:"react-flow__viewport xyflow__viewport react-flow__container",style:{transform:n},children:t})}let to=e=>{var t;return null==(t=e.panZoom)?void 0:t.syncViewport};function tl(e){return e.connection.inProgress?{...e.connection,to:(0,i.Ff)(e.connection.to,e.transform)}:{...e.connection}}let tr=e=>({nodesConnectable:e.nodesConnectable,isValid:e.connection.isValid,inProgress:e.connection.inProgress,width:e.width,height:e.height});function ta(e){let{containerStyle:t,style:n,type:o,component:r}=e,{nodesConnectable:s,width:c,height:u,isValid:g,inProgress:p}=f(tr,d.x);return c&&s&&p?(0,l.jsx)("svg",{style:t,width:c,height:u,className:"react-flow__connectionline react-flow__container",children:(0,l.jsx)("g",{className:(0,a.A)(["react-flow__connection",(0,i.HF)(g)]),children:(0,l.jsx)(ti,{style:n,type:o,CustomComponent:r,isValid:g})})}):null}let ti=e=>{let{style:t,type:n=i.Do.Bezier,CustomComponent:o,isValid:r}=e,{inProgress:a,from:s,fromNode:c,fromHandle:u,fromPosition:g,to:p,toNode:h,toHandle:m,toPosition:v,pointer:y}=function(e){return f(tl,d.x)}();if(!a)return;if(o)return(0,l.jsx)(o,{connectionLineType:n,connectionLineStyle:t,fromNode:c,fromHandle:u,fromX:s.x,fromY:s.y,toX:p.x,toY:p.y,fromPosition:g,toPosition:v,connectionStatus:(0,i.HF)(r),toNode:h,toHandle:m,pointer:y});let b="",x={sourceX:s.x,sourceY:s.y,sourcePosition:g,targetX:p.x,targetY:p.y,targetPosition:v};switch(n){case i.Do.Bezier:[b]=(0,i.Fp)(x);break;case i.Do.SimpleBezier:[b]=eH(x);break;case i.Do.Step:[b]=(0,i.oN)({...x,borderRadius:0});break;case i.Do.SmoothStep:[b]=(0,i.oN)(x);break;default:[b]=(0,i.ah)(x)}return(0,l.jsx)("path",{d:b,fill:"none",className:"react-flow__connection-path",style:t})};ti.displayName="ConnectionLine";let ts={};function td(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:ts;(0,r.useRef)(e),p(),(0,r.useEffect)(()=>{},[e])}function tc(e){let{nodeTypes:t,edgeTypes:n,onInit:o,onNodeClick:a,onEdgeClick:i,onNodeDoubleClick:s,onEdgeDoubleClick:d,onNodeMouseEnter:c,onNodeMouseMove:u,onNodeMouseLeave:g,onNodeContextMenu:h,onSelectionContextMenu:m,onSelectionStart:v,onSelectionEnd:y,connectionLineType:b,connectionLineStyle:x,connectionLineComponent:S,connectionLineContainerStyle:w,selectionKeyCode:C,selectionOnDrag:E,selectionMode:N,multiSelectionKeyCode:k,panActivationKeyCode:M,zoomActivationKeyCode:P,deleteKeyCode:j,onlyRenderVisibleElements:D,elementsSelectable:A,defaultViewport:_,translateExtent:I,minZoom:O,maxZoom:R,preventScrolling:L,defaultMarkerColor:z,zoomOnScroll:B,zoomOnPinch:V,panOnScroll:H,panOnScrollSpeed:F,panOnScrollMode:T,zoomOnDoubleClick:Z,panOnDrag:X,autoPanOnSelection:K,onPaneClick:W,onPaneMouseEnter:Y,onPaneMouseMove:Q,onPaneMouseLeave:U,onPaneScroll:q,onPaneContextMenu:G,paneClickDistance:$,nodeClickDistance:J,onEdgeContextMenu:ee,onEdgeMouseEnter:en,onEdgeMouseMove:eo,onEdgeMouseLeave:el,reconnectRadius:er,onReconnect:ea,onReconnectStart:ei,onReconnectEnd:es,noDragClassName:ed,noWheelClassName:ec,noPanClassName:eu,disableKeyboardA11y:eg,nodeExtent:ef,rfId:ep,viewport:eh,onViewportChange:em}=e;td(t),td(n),p(),(0,r.useRef)(!1),(0,r.useEffect)(()=>{},[]);let ev=et(),ey=(0,r.useRef)(!1);return(0,r.useEffect)(()=>{!ey.current&&ev.viewportInitialized&&o&&(setTimeout(()=>o(ev),1),ey.current=!0)},[o,ev.viewportInitialized]),!function(e){let t=f(to),n=p();(0,r.useEffect)(()=>{e&&(null==t||t(e),n.setState({transform:[e.x,e.y,e.zoom]}))},[e,t])}(eh),(0,l.jsx)(ek,{onPaneClick:W,onPaneMouseEnter:Y,onPaneMouseMove:Q,onPaneMouseLeave:U,onPaneContextMenu:G,onPaneScroll:q,paneClickDistance:$,deleteKeyCode:j,selectionKeyCode:C,selectionOnDrag:E,selectionMode:N,onSelectionStart:v,onSelectionEnd:y,multiSelectionKeyCode:k,panActivationKeyCode:M,zoomActivationKeyCode:P,elementsSelectable:A,zoomOnScroll:B,zoomOnPinch:V,zoomOnDoubleClick:Z,panOnScroll:H,panOnScrollSpeed:F,panOnScrollMode:T,panOnDrag:X,autoPanOnSelection:K,defaultViewport:_,translateExtent:I,minZoom:O,maxZoom:R,onSelectionContextMenu:m,preventScrolling:L,noDragClassName:ed,noWheelClassName:ec,noPanClassName:eu,disableKeyboardA11y:eg,onViewportChange:em,isControlledViewport:!!eh,children:(0,l.jsxs)(tn,{children:[(0,l.jsx)(te,{edgeTypes:n,onEdgeClick:i,onEdgeDoubleClick:d,onReconnect:ea,onReconnectStart:ei,onReconnectEnd:es,onlyRenderVisibleElements:D,onEdgeContextMenu:ee,onEdgeMouseEnter:en,onEdgeMouseMove:eo,onEdgeMouseLeave:el,reconnectRadius:er,defaultMarkerColor:z,noPanClassName:eu,disableKeyboardA11y:eg,rfId:ep}),(0,l.jsx)(ta,{style:x,type:b,component:S,containerStyle:w}),(0,l.jsx)("div",{className:"react-flow__edgelabel-renderer"}),(0,l.jsx)(eA,{nodeTypes:t,onNodeClick:a,onNodeDoubleClick:s,onNodeMouseEnter:c,onNodeMouseMove:u,onNodeMouseLeave:g,onNodeContextMenu:h,nodeClickDistance:J,onlyRenderVisibleElements:D,noPanClassName:eu,noDragClassName:ed,disableKeyboardA11y:eg,nodeExtent:ef,rfId:ep}),(0,l.jsx)("div",{className:"react-flow__viewport-portal"})]})})}tc.displayName="GraphView";let tu=(0,r.memo)(tc),tg=(0,i.kr)("React Flow","https://reactflow.dev/"),tf=function(){var e,t,n;let{nodes:o,edges:l,defaultNodes:r,defaultEdges:a,width:s,height:d,fitView:c,fitViewOptions:u,minZoom:g=.5,maxZoom:f=2,nodeOrigin:p,nodeExtent:h,zIndexMode:m="basic"}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},v=new Map,y=new Map,b=new Map,x=new Map,S=null!=(e=null!=a?a:l)?e:[],w=null!=(t=null!=r?r:o)?t:[],C=null!=p?p:[0,0],E=null!=h?h:i.ZO;(0,i.qn)(b,x,S);let{nodesInitialized:N}=(0,i.bi)(w,v,y,{nodeOrigin:C,nodeExtent:E,zIndexMode:m}),k=[0,0,1];if(c&&s&&d){let e=(0,i.aZ)(v,{filter:e=>!!((e.width||e.initialWidth)&&(e.height||e.initialHeight))}),{x:t,y:o,zoom:l}=(0,i.R4)(e,s,d,g,f,null!=(n=null==u?void 0:u.padding)?n:.1);k=[t,o,l]}return{rfId:"1",width:null!=s?s:0,height:null!=d?d:0,transform:k,nodes:w,nodesInitialized:N,nodeLookup:v,parentLookup:y,edges:S,edgeLookup:x,connectionLookup:b,onNodesChange:null,onEdgesChange:null,hasDefaultNodes:void 0!==r,hasDefaultEdges:void 0!==a,panZoom:null,minZoom:g,maxZoom:f,translateExtent:i.ZO,nodeExtent:E,nodesSelectionActive:!1,userSelectionActive:!1,userSelectionRect:null,connectionMode:i.WZ.Strict,domNode:null,paneDragging:!1,noPanClassName:"nopan",nodeOrigin:C,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:null!=c&&c,fitViewOptions:u,fitViewResolver:null,connection:{...i.bK},connectionClickStartHandle:null,connectOnClick:!0,ariaLiveMessage:"",autoPanOnConnect:!0,autoPanOnNodeDrag:!0,autoPanOnNodeFocus:!0,autoPanSpeed:15,connectionRadius:20,onError:tg,isValidConnection:void 0,onSelectionChangeHandlers:[],lib:"react",debug:!1,ariaLabelConfig:i.tM,zIndexMode:m,onNodesChangeMiddlewareMap:new Map,onEdgesChangeMiddlewareMap:new Map}};function tp(e){let{initialNodes:t,initialEdges:n,defaultNodes:o,defaultEdges:a,initialWidth:d,initialHeight:c,initialMinZoom:g,initialMaxZoom:f,initialFitViewOptions:p,fitView:h,nodeOrigin:m,nodeExtent:v,zIndexMode:y,children:b}=e,[x]=(0,r.useState)(()=>(e=>{let{nodes:t,edges:n,defaultNodes:o,defaultEdges:l,width:r,height:a,fitView:d,fitViewOptions:c,minZoom:u,maxZoom:g,nodeOrigin:f,nodeExtent:p,zIndexMode:h}=e;return(0,s.h)((e,s)=>{async function m(){let{nodeLookup:t,panZoom:n,fitViewOptions:o,fitViewResolver:l,width:r,height:a,minZoom:d,maxZoom:c}=s();n&&(await (0,i.IO)({nodes:t,width:r,height:a,panZoom:n,minZoom:d,maxZoom:c},o),null==l||l.resolve(!0),e({fitViewResolver:null}))}return{...tf({nodes:t,edges:n,width:r,height:a,fitView:d,fitViewOptions:c,minZoom:u,maxZoom:g,nodeOrigin:f,nodeExtent:p,defaultNodes:o,defaultEdges:l,zIndexMode:h}),setNodes:t=>{let{nodeLookup:n,parentLookup:o,nodeOrigin:l,elevateNodesOnSelect:r,fitViewQueued:a,zIndexMode:d,nodesSelectionActive:c}=s(),{nodesInitialized:u,hasSelectedNodes:g}=(0,i.bi)(t,n,o,{nodeOrigin:l,nodeExtent:p,elevateNodesOnSelect:r,checkEquality:!0,zIndexMode:d}),f=c&&g;a&&u?(m(),e({nodes:t,nodesInitialized:u,fitViewQueued:!1,fitViewOptions:void 0,nodesSelectionActive:f})):e({nodes:t,nodesInitialized:u,nodesSelectionActive:f})},setEdges:t=>{let{connectionLookup:n,edgeLookup:o}=s();(0,i.qn)(n,o,t),e({edges:t})},setDefaultNodesAndEdges:(t,n)=>{if(t){let{setNodes:n}=s();n(t),e({hasDefaultNodes:!0})}if(n){let{setEdges:t}=s();t(n),e({hasDefaultEdges:!0})}},updateNodeInternals:t=>{let{triggerNodeChanges:n,nodeLookup:o,parentLookup:l,domNode:r,nodeOrigin:a,nodeExtent:d,debug:c,fitViewQueued:u,zIndexMode:g}=s(),{changes:f,updatedInternals:p}=(0,i.uL)(t,o,l,r,a,d,g);p&&((0,i.vS)(o,l,{nodeOrigin:a,nodeExtent:d,zIndexMode:g}),u?(m(),e({fitViewQueued:!1,fitViewOptions:void 0})):e({}),(null==f?void 0:f.length)>0&&(c&&console.log("React Flow: trigger node changes",f),null==n||n(f)))},updateNodePositions:function(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=[],o=[],{nodeLookup:l,triggerNodeChanges:r,connection:a,updateConnection:d,onNodesChangeMiddlewareMap:c}=s();for(let[r,s]of e){let e=l.get(r),c=!!((null==e?void 0:e.expandParent)&&(null==e?void 0:e.parentId)&&(null==s?void 0:s.position)),f={id:r,type:"position",position:c?{x:Math.max(0,s.position.x),y:Math.max(0,s.position.y)}:s.position,dragging:t};if(e&&a.inProgress&&a.fromNode.id===e.id){let t=(0,i.M_)(e,a.fromHandle,i.yX.Left,!0);d({...a,from:t})}if(c&&e.parentId){var u,g;n.push({id:r,parentId:e.parentId,rect:{...s.internals.positionAbsolute,width:null!=(u=s.measured.width)?u:0,height:null!=(g=s.measured.height)?g:0}})}o.push(f)}if(n.length>0){let{parentLookup:e,nodeOrigin:t}=s(),r=(0,i.r8)(n,l,e,t);o.push(...r)}for(let e of c.values())o=e(o);r(o)},triggerNodeChanges:e=>{let{onNodesChange:t,setNodes:n,nodes:o,hasDefaultNodes:l,debug:r}=s();(null==e?void 0:e.length)&&(l&&n(T(e,o)),r&&console.log("React Flow: trigger node changes",e),null==t||t(e))},triggerEdgeChanges:e=>{let{onEdgesChange:t,setEdges:n,edges:o,hasDefaultEdges:l,debug:r}=s();(null==e?void 0:e.length)&&(l&&n(T(e,o)),r&&console.log("React Flow: trigger edge changes",e),null==t||t(e))},addSelectedNodes:e=>{let{multiSelectionActive:t,edgeLookup:n,nodeLookup:o,triggerNodeChanges:l,triggerEdgeChanges:r}=s();if(t)return void l(e.map(e=>Z(e,!0)));l(X(o,new Set([...e]),!0)),r(X(n))},addSelectedEdges:e=>{let{multiSelectionActive:t,edgeLookup:n,nodeLookup:o,triggerNodeChanges:l,triggerEdgeChanges:r}=s();if(t)return void r(e.map(e=>Z(e,!0)));r(X(n,new Set([...e]))),l(X(o,new Set,!0))},unselectNodesAndEdges:function(){let{nodes:e,edges:t}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},{edges:n,nodes:o,nodeLookup:l,triggerNodeChanges:r,triggerEdgeChanges:a}=s(),i=[];for(let t of e||o){if(!t.selected)continue;let e=l.get(t.id);e&&(e.selected=!1),i.push(Z(t.id,!1))}let d=[];for(let e of t||n)e.selected&&d.push(Z(e.id,!1));r(i),a(d)},setMinZoom:t=>{let{panZoom:n,maxZoom:o}=s();null==n||n.setScaleExtent([t,o]),e({minZoom:t})},setMaxZoom:t=>{let{panZoom:n,minZoom:o}=s();null==n||n.setScaleExtent([o,t]),e({maxZoom:t})},setTranslateExtent:t=>{var n;null==(n=s().panZoom)||n.setTranslateExtent(t),e({translateExtent:t})},resetSelectedElements:()=>{let{edges:e,nodes:t,triggerNodeChanges:n,triggerEdgeChanges:o,elementsSelectable:l}=s();if(!l)return;let r=t.reduce((e,t)=>t.selected?[...e,Z(t.id,!1)]:e,[]),a=e.reduce((e,t)=>t.selected?[...e,Z(t.id,!1)]:e,[]);n(r),o(a)},setNodeExtent:t=>{let{nodes:n,nodeLookup:o,parentLookup:l,nodeOrigin:r,elevateNodesOnSelect:a,nodeExtent:d,zIndexMode:c}=s();(t[0][0]!==d[0][0]||t[0][1]!==d[0][1]||t[1][0]!==d[1][0]||t[1][1]!==d[1][1])&&((0,i.bi)(n,o,l,{nodeOrigin:r,nodeExtent:t,elevateNodesOnSelect:a,checkEquality:!1,zIndexMode:c}),e({nodeExtent:t}))},panBy:e=>{let{transform:t,width:n,height:o,panZoom:l,translateExtent:r}=s();return(0,i.No)({delta:e,panZoom:l,transform:t,translateExtent:r,width:n,height:o})},setCenter:async(e,t,n)=>{let{width:o,height:l,maxZoom:r,panZoom:a}=s();if(!a)return!1;let i=void 0!==(null==n?void 0:n.zoom)?n.zoom:r;return await a.setViewport({x:o/2-e*i,y:l/2-t*i,zoom:i},{duration:null==n?void 0:n.duration,ease:null==n?void 0:n.ease,interpolate:null==n?void 0:n.interpolate}),!0},cancelConnection:()=>{e({connection:{...i.bK}})},updateConnection:t=>{e({connection:t})},reset:()=>e({...tf()})}},Object.is)})({nodes:t,edges:n,defaultNodes:o,defaultEdges:a,width:d,height:c,fitView:h,minZoom:g,maxZoom:f,fitViewOptions:p,nodeOrigin:m,nodeExtent:v,zIndexMode:y}));return(0,l.jsx)(u,{value:x,children:(0,l.jsx)(J,{children:b})})}function th(e){let{children:t,nodes:n,edges:o,defaultNodes:a,defaultEdges:i,width:s,height:d,fitView:u,fitViewOptions:g,minZoom:f,maxZoom:p,nodeOrigin:h,nodeExtent:m,zIndexMode:v}=e;return(0,r.useContext)(c)?(0,l.jsx)(l.Fragment,{children:t}):(0,l.jsx)(tp,{initialNodes:n,initialEdges:o,defaultNodes:a,defaultEdges:i,initialWidth:s,initialHeight:d,fitView:u,initialFitViewOptions:g,initialMinZoom:f,initialMaxZoom:p,nodeOrigin:h,nodeExtent:m,zIndexMode:v,children:t})}let tm={width:"100%",height:"100%",overflow:"hidden",position:"relative",zIndex:0};var tv=U(function(e,t){let{nodes:n,edges:o,defaultNodes:s,defaultEdges:d,className:c,nodeTypes:u,edgeTypes:g,onNodeClick:f,onEdgeClick:p,onInit:h,onMove:m,onMoveStart:v,onMoveEnd:y,onConnect:b,onConnectStart:x,onConnectEnd:S,onClickConnectStart:C,onClickConnectEnd:N,onNodeMouseEnter:k,onNodeMouseMove:M,onNodeMouseLeave:P,onNodeContextMenu:j,onNodeDoubleClick:I,onNodeDragStart:O,onNodeDrag:R,onNodeDragStop:B,onNodesDelete:V,onEdgesDelete:H,onDelete:F,onSelectionChange:T,onSelectionDragStart:Z,onSelectionDrag:X,onSelectionDragStop:K,onSelectionContextMenu:W,onSelectionStart:Y,onSelectionEnd:Q,onBeforeDelete:U,connectionMode:q,connectionLineType:G=i.Do.Bezier,connectionLineStyle:$,connectionLineComponent:J,connectionLineContainerStyle:ee,deleteKeyCode:et="Backspace",selectionKeyCode:en="Shift",selectionOnDrag:eo=!1,selectionMode:el=i.Qc.Full,panActivationKeyCode:er="Space",multiSelectionKeyCode:ea=(0,i.Ue)()?"Meta":"Control",zoomActivationKeyCode:ei=(0,i.Ue)()?"Meta":"Control",snapToGrid:es,snapGrid:ed,onlyRenderVisibleElements:ec=!1,selectNodesOnDrag:eu,nodesDraggable:eg,autoPanOnNodeFocus:ef,nodesConnectable:ep,nodesFocusable:eh,nodeOrigin:em=A,edgesFocusable:ev,edgesReconnectable:ey,elementsSelectable:eb=!0,defaultViewport:ex=_,minZoom:eS=.5,maxZoom:ew=2,translateExtent:eC=i.ZO,preventScrolling:eE=!0,nodeExtent:eN,defaultMarkerColor:ek="#b1b1b7",zoomOnScroll:eM=!0,zoomOnPinch:eP=!0,panOnScroll:ej=!1,panOnScrollSpeed:eD=.5,panOnScrollMode:eA=i.ny.Free,zoomOnDoubleClick:e_=!0,panOnDrag:eI=!0,onPaneClick:eO,onPaneMouseEnter:eR,onPaneMouseMove:eL,onPaneMouseLeave:ez,onPaneScroll:eB,onPaneContextMenu:eV,paneClickDistance:eH=1,nodeClickDistance:eF=0,children:eT,onReconnect:eZ,onReconnectStart:eX,onReconnectEnd:eK,onEdgeContextMenu:eW,onEdgeDoubleClick:eY,onEdgeMouseEnter:eQ,onEdgeMouseMove:eU,onEdgeMouseLeave:eq,reconnectRadius:eG=10,onNodesChange:e$,onEdgesChange:eJ,noDragClassName:e0="nodrag",noWheelClassName:e1="nowheel",noPanClassName:e3="nopan",fitView:e2,fitViewOptions:e4,connectOnClick:e5,attributionPosition:e6,proOptions:e8,defaultEdgeOptions:e7,elevateNodesOnSelect:e9=!0,elevateEdgesOnSelect:te=!1,disableKeyboardA11y:tt=!1,autoPanOnConnect:tn,autoPanOnNodeDrag:to,autoPanOnSelection:tl=!0,autoPanSpeed:tr,connectionRadius:ta,isValidConnection:ti,onError:ts,style:td,id:tc,nodeDragThreshold:tg,connectionDragThreshold:tf,viewport:tp,onViewportChange:tv,width:ty,height:tb,colorMode:tx="light",debug:tS,onScroll:tw,ariaLabelConfig:tC,zIndexMode:tE="basic",...tN}=e,tk=tc||"1",tM=function(e){var t;let[n,o]=(0,r.useState)("system"===e?null:e);return(0,r.useEffect)(()=>{if("system"!==e)return void o(e);let t=z(),n=()=>o((null==t?void 0:t.matches)?"dark":"light");return n(),null==t||t.addEventListener("change",n),()=>{null==t||t.removeEventListener("change",n)}},[e]),null!==n?n:(null==(t=z())?void 0:t.matches)?"dark":"light"}(tx),tP=(0,r.useCallback)(e=>{e.currentTarget.scrollTo({top:0,left:0,behavior:"instant"}),null==tw||tw(e)},[tw]);return(0,l.jsx)("div",{"data-testid":"rf__wrapper",...tN,onScroll:tP,style:{...td,...tm},ref:t,className:(0,a.A)(["react-flow",c,tM]),id:tc,role:"application",children:(0,l.jsxs)(th,{nodes:n,edges:o,width:ty,height:tb,fitView:e2,fitViewOptions:e4,minZoom:eS,maxZoom:ew,nodeOrigin:em,nodeExtent:eN,zIndexMode:tE,children:[(0,l.jsx)(L,{nodes:n,edges:o,defaultNodes:s,defaultEdges:d,onConnect:b,onConnectStart:x,onConnectEnd:S,onClickConnectStart:C,onClickConnectEnd:N,nodesDraggable:eg,autoPanOnNodeFocus:ef,nodesConnectable:ep,nodesFocusable:eh,edgesFocusable:ev,edgesReconnectable:ey,elementsSelectable:eb,elevateNodesOnSelect:e9,elevateEdgesOnSelect:te,minZoom:eS,maxZoom:ew,nodeExtent:eN,onNodesChange:e$,onEdgesChange:eJ,snapToGrid:es,snapGrid:ed,connectionMode:q,translateExtent:eC,connectOnClick:e5,defaultEdgeOptions:e7,fitView:e2,fitViewOptions:e4,onNodesDelete:V,onEdgesDelete:H,onDelete:F,onNodeDragStart:O,onNodeDrag:R,onNodeDragStop:B,onSelectionDrag:X,onSelectionDragStart:Z,onSelectionDragStop:K,onMove:m,onMoveStart:v,onMoveEnd:y,noPanClassName:e3,nodeOrigin:em,rfId:tk,autoPanOnConnect:tn,autoPanOnNodeDrag:to,autoPanSpeed:tr,onError:ts,connectionRadius:ta,isValidConnection:ti,selectNodesOnDrag:eu,nodeDragThreshold:tg,connectionDragThreshold:tf,onBeforeDelete:U,debug:tS,ariaLabelConfig:tC,zIndexMode:tE}),(0,l.jsx)(tu,{onInit:h,onNodeClick:f,onEdgeClick:p,onNodeMouseEnter:k,onNodeMouseMove:M,onNodeMouseLeave:P,onNodeContextMenu:j,onNodeDoubleClick:I,nodeTypes:u,edgeTypes:g,connectionLineType:G,connectionLineStyle:$,connectionLineComponent:J,connectionLineContainerStyle:ee,selectionKeyCode:en,selectionOnDrag:eo,selectionMode:el,deleteKeyCode:et,multiSelectionKeyCode:ea,panActivationKeyCode:er,zoomActivationKeyCode:ei,onlyRenderVisibleElements:ec,defaultViewport:ex,translateExtent:eC,minZoom:eS,maxZoom:ew,preventScrolling:eE,zoomOnScroll:eM,zoomOnPinch:eP,zoomOnDoubleClick:e_,panOnScroll:ej,panOnScrollSpeed:eD,panOnScrollMode:eA,panOnDrag:eI,autoPanOnSelection:tl,onPaneClick:eO,onPaneMouseEnter:eR,onPaneMouseMove:eL,onPaneMouseLeave:ez,onPaneScroll:eB,onPaneContextMenu:eV,paneClickDistance:eH,nodeClickDistance:eF,onSelectionContextMenu:W,onSelectionStart:Y,onSelectionEnd:Q,onReconnect:eZ,onReconnectStart:eX,onReconnectEnd:eK,onEdgeContextMenu:eW,onEdgeDoubleClick:eY,onEdgeMouseEnter:eQ,onEdgeMouseMove:eU,onEdgeMouseLeave:eq,reconnectRadius:eG,defaultMarkerColor:ek,noDragClassName:e0,noWheelClassName:e1,noPanClassName:e3,rfId:tk,disableKeyboardA11y:tt,nodeExtent:eN,viewport:tp,onViewportChange:tv}),(0,l.jsx)(D,{onSelectionChange:T}),eT,(0,l.jsx)(E,{proOptions:e8,position:e6}),(0,l.jsx)(w,{rfId:tk,disableKeyboardA11y:tt})]})})});function ty(e){let{dimensions:t,lineWidth:n,variant:o,className:r}=e;return(0,l.jsx)("path",{strokeWidth:n,d:"M".concat(t[0]/2," 0 V").concat(t[1]," M0 ").concat(t[1]/2," H").concat(t[0]),className:(0,a.A)(["react-flow__background-pattern",o,r])})}function tb(e){let{radius:t,className:n}=e;return(0,l.jsx)("circle",{cx:t,cy:t,r:t,className:(0,a.A)(["react-flow__background-pattern","dots",n])})}i.xc.error014(),function(e){e.Lines="lines",e.Dots="dots",e.Cross="cross"}(o||(o={}));let tx={[o.Dots]:1,[o.Lines]:1,[o.Cross]:6},tS=e=>({transform:e.transform,patternId:"pattern-".concat(e.rfId)});function tw(e){let{id:t,variant:n=o.Dots,gap:i=20,size:s,lineWidth:c=1,offset:u=0,color:g,bgColor:p,style:h,className:m,patternClassName:v}=e,y=(0,r.useRef)(null),{transform:b,patternId:x}=f(tS,d.x),S=s||tx[n],w=n===o.Dots,C=n===o.Cross,E=Array.isArray(i)?i:[i,i],N=[E[0]*b[2]||1,E[1]*b[2]||1],k=S*b[2],M=Array.isArray(u)?u:[u,u],P=C?[k,k]:N,j=[M[0]*b[2]||1+P[0]/2,M[1]*b[2]||1+P[1]/2],D="".concat(x).concat(t||"");return(0,l.jsxs)("svg",{className:(0,a.A)(["react-flow__background",m]),style:{...h,...el,"--xy-background-color-props":p,"--xy-background-pattern-color-props":g},ref:y,"data-testid":"rf__background",children:[(0,l.jsx)("pattern",{id:D,x:b[0]%N[0],y:b[1]%N[1],width:N[0],height:N[1],patternUnits:"userSpaceOnUse",patternTransform:"translate(-".concat(j[0],",-").concat(j[1],")"),children:w?(0,l.jsx)(tb,{radius:k/2,className:v}):(0,l.jsx)(ty,{dimensions:P,lineWidth:c,variant:n,className:v})}),(0,l.jsx)("rect",{x:"0",y:"0",width:"100%",height:"100%",fill:"url(#".concat(D,")")})]})}tw.displayName="Background";let tC=(0,r.memo)(tw);function tE(){return(0,l.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32",children:(0,l.jsx)("path",{d:"M32 18.133H18.133V32h-4.266V18.133H0v-4.266h13.867V0h4.266v13.867H32z"})})}function tN(){return(0,l.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 5",children:(0,l.jsx)("path",{d:"M0 0h32v4.2H0z"})})}function tk(){return(0,l.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 30",children:(0,l.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 tM(){return(0,l.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32",children:(0,l.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,l.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32",children:(0,l.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 tj(e){let{children:t,className:n,...o}=e;return(0,l.jsx)("button",{type:"button",className:(0,a.A)(["react-flow__controls-button",n]),...o,children:t})}let tD=e=>({isInteractive:e.nodesDraggable||e.nodesConnectable||e.elementsSelectable,minZoomReached:e.transform[2]<=e.minZoom,maxZoomReached:e.transform[2]>=e.maxZoom,ariaLabelConfig:e.ariaLabelConfig});function tA(e){let{style:t,showZoom:n=!0,showFitView:o=!0,showInteractive:r=!0,fitViewOptions:i,onZoomIn:s,onZoomOut:c,onFitView:u,onInteractiveChange:g,className:h,children:m,position:v="bottom-left",orientation:y="vertical","aria-label":b}=e,x=p(),{isInteractive:S,minZoomReached:w,maxZoomReached:E,ariaLabelConfig:N}=f(tD,d.x),{zoomIn:k,zoomOut:M,fitView:P}=et();return(0,l.jsxs)(C,{className:(0,a.A)(["react-flow__controls","horizontal"===y?"horizontal":"vertical",h]),position:v,style:t,"data-testid":"rf__controls","aria-label":null!=b?b:N["controls.ariaLabel"],children:[n&&(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(tj,{onClick:()=>{k(),null==s||s()},className:"react-flow__controls-zoomin",title:N["controls.zoomIn.ariaLabel"],"aria-label":N["controls.zoomIn.ariaLabel"],disabled:E,children:(0,l.jsx)(tE,{})}),(0,l.jsx)(tj,{onClick:()=>{M(),null==c||c()},className:"react-flow__controls-zoomout",title:N["controls.zoomOut.ariaLabel"],"aria-label":N["controls.zoomOut.ariaLabel"],disabled:w,children:(0,l.jsx)(tN,{})})]}),o&&(0,l.jsx)(tj,{className:"react-flow__controls-fitview",onClick:()=>{P(i),null==u||u()},title:N["controls.fitView.ariaLabel"],"aria-label":N["controls.fitView.ariaLabel"],children:(0,l.jsx)(tk,{})}),r&&(0,l.jsx)(tj,{className:"react-flow__controls-interactive",onClick:()=>{x.setState({nodesDraggable:!S,nodesConnectable:!S,elementsSelectable:!S}),null==g||g(!S)},title:N["controls.interactive.ariaLabel"],"aria-label":N["controls.interactive.ariaLabel"],children:S?(0,l.jsx)(tP,{}):(0,l.jsx)(tM,{})}),m]})}tA.displayName="Controls";let t_=(0,r.memo)(tA),tI=(0,r.memo)(function(e){let{id:t,x:n,y:o,width:r,height:i,style:s,color:d,strokeColor:c,strokeWidth:u,className:g,borderRadius:f,shapeRendering:p,selected:h,onClick:m}=e,{background:v,backgroundColor:y}=s||{};return(0,l.jsx)("rect",{className:(0,a.A)(["react-flow__minimap-node",{selected:h},g]),x:n,y:o,rx:f,ry:f,width:r,height:i,style:{fill:d||v||y,stroke:c,strokeWidth:u},shapeRendering:p,onClick:m?e=>m(e,t):void 0})}),tO=e=>e.nodes.map(e=>e.id),tR=e=>e instanceof Function?e:()=>e,tL=(0,r.memo)(function(e){let{id:t,nodeColorFunc:n,nodeStrokeColorFunc:o,nodeClassNameFunc:r,nodeBorderRadius:a,nodeStrokeWidth:s,shapeRendering:c,NodeComponent:u,onClick:g}=e,{node:p,x:h,y:m,width:v,height:y}=f(e=>{let n=e.nodeLookup.get(t);if(!n)return{node:void 0,x:0,y:0,width:0,height:0};let o=n.internals.userNode,{x:l,y:r}=n.internals.positionAbsolute,{width:a,height:s}=(0,i.uD)(o);return{node:o,x:l,y:r,width:a,height:s}},d.x);return p&&!p.hidden&&(0,i.QE)(p)?(0,l.jsx)(u,{x:h,y:m,width:v,height:y,style:p.style,selected:!!p.selected,className:r(p),color:n(p),borderRadius:a,strokeColor:o(p),strokeWidth:s,shapeRendering:c,onClick:g,id:p.id}):null});i.xN.Line,i.xN.Handle}}]);
|