diff --git a/.github/workflows/cicd_new.yml b/.github/workflows/cicd_new.yml index 8429490bf..b2586eef9 100644 --- a/.github/workflows/cicd_new.yml +++ b/.github/workflows/cicd_new.yml @@ -3,7 +3,7 @@ name: CICD on: push: branches: - - main + - koway927 workflow_dispatch: jobs: @@ -22,7 +22,7 @@ jobs: run: docker push cliu232/networking-platform-cicd deploy: needs: build - runs-on: ubuntu-latest + runs-on: self-hosted steps: - name: Pull image from docker hub run: docker pull cliu232/networking-platform-cicd diff --git a/Dockerfile b/Dockerfile index e2a68606f..7e5c96924 100644 --- a/Dockerfile +++ b/Dockerfile @@ -13,10 +13,11 @@ RUN npm run build # Step 2: Server With Nginx -FROM nginx:1.23-alpine +FROM nginx:1.18-alpine WORKDIR /usr/share/nginx/html RUN rm -rf * COPY --from=build /app/build . +COPY default.conf /etc/nginx/conf.d/default.conf EXPOSE 80 ENTRYPOINT [ "nginx", "-g", "daemon off;" ] diff --git a/build/asset-manifest.json b/build/asset-manifest.json new file mode 100644 index 000000000..a699b7f1b --- /dev/null +++ b/build/asset-manifest.json @@ -0,0 +1,61 @@ +{ + "files": { + "main.css": "/static/css/main.9722b64e.css", + "main.js": "/static/js/main.4774647d.js", + "static/js/787.917857b7.chunk.js": "/static/js/787.917857b7.chunk.js", + "static/media/tcp_lesson_answer.png": "/static/media/tcp_lesson_answer.9f17ef9f0e55775a7c97.png", + "static/media/Rectangle 343.png": "/static/media/Rectangle 343.aa1065cabeadcb1554dd.png", + "static/media/forwarding_lesson_answer.png": "/static/media/forwarding_lesson_answer.6f9b8397c8419d1004f8.png", + "static/media/Moneyverse Crypto Galaxy.png": "/static/media/Moneyverse Crypto Galaxy.0ce74c2477181e3031a4.png", + "static/media/ip_lesson_answer.png": "/static/media/ip_lesson_answer.4c748f42bb60665a6d0b.png", + "static/media/email_lesson_answer.png": "/static/media/email_lesson_answer.2e65103d93b47fad28b6.png", + "static/media/http_lesson_answer.png": "/static/media/http_lesson_answer.fad9802b439f89ad42c8.png", + "static/media/blue_jay_view.png": "/static/media/blue_jay_view.41833792aa24d9e91774.png", + "static/media/wifi_lesson_answer.png": "/static/media/wifi_lesson_answer.70bbef27189fd1b308d7.png", + "static/media/Stuck at Home Home Office.png": "/static/media/Stuck at Home Home Office.575d9c399c3555ad931d.png", + "static/media/dns_lesson_answer.png": "/static/media/dns_lesson_answer.0a96f2b17aa0ce57be49.png", + "static/media/tls_lesson_answer.png": "/static/media/tls_lesson_answer.e1c0c52601732320fac0.png", + "static/media/Happy Bunch Chat.png": "/static/media/Happy Bunch Chat.d235e89c5d96a61e260b.png", + "static/media/Humaaans Wireframe.png": "/static/media/Humaaans Wireframe.345fd8864d374163fc1f.png", + "static/media/Humaaans Graphs.png": "/static/media/Humaaans Graphs.e06c7b37e3101cdd93c7.png", + "static/media/inter-latin-ext-700-normal.woff": "/static/media/inter-latin-ext-700-normal.4c2578dbd1ff5ea14172.woff", + "static/media/inter-latin-ext-400-normal.woff": "/static/media/inter-latin-ext-400-normal.40b3b0d5e09a90fb6e3e.woff", + "static/media/inter-latin-ext-700-normal.woff2": "/static/media/inter-latin-ext-700-normal.65678f6198b402319e15.woff2", + "static/media/inter-latin-700-normal.woff": "/static/media/inter-latin-700-normal.91c4ed20ea233963e54f.woff", + "static/media/BlueJay.png": "/static/media/BlueJay.a844cd75f67b1e9acda6.png", + "static/media/inter-latin-ext-400-normal.woff2": "/static/media/inter-latin-ext-400-normal.0f9e8d4e940df8f6edfe.woff2", + "static/media/inter-latin-400-normal.woff": "/static/media/inter-latin-400-normal.08a02fd275ecea6ef662.woff", + "static/media/inter-latin-700-normal.woff2": "/static/media/inter-latin-700-normal.b4118e4ad76754e71d0b.woff2", + "static/media/inter-latin-400-normal.woff2": "/static/media/inter-latin-400-normal.f1535355a7df553be385.woff2", + "static/media/Uncollected_Parrot.png": "/static/media/Uncollected_Parrot.32577e791111715f58cc.png", + "static/media/inter-cyrillic-ext-700-normal.woff": "/static/media/inter-cyrillic-ext-700-normal.e4e658bd15474bdf1f72.woff", + "static/media/inter-cyrillic-ext-400-normal.woff": "/static/media/inter-cyrillic-ext-400-normal.cd2ad378115f549d3c5b.woff", + "static/media/Palz Plant Green Leaves.png": "/static/media/Palz Plant Green Leaves.fc035dce0ff009c7ebce.png", + "static/media/inter-greek-700-normal.woff": "/static/media/inter-greek-700-normal.9e418f84ee90e15d0251.woff", + "static/media/inter-greek-400-normal.woff": "/static/media/inter-greek-400-normal.1eeaf1d0bde712085ffc.woff", + "static/media/inter-cyrillic-ext-700-normal.woff2": "/static/media/inter-cyrillic-ext-700-normal.b5907ba78848350cc015.woff2", + "static/media/inter-cyrillic-ext-400-normal.woff2": "/static/media/inter-cyrillic-ext-400-normal.ac62c8eba7f954b48546.woff2", + "static/media/inter-cyrillic-700-normal.woff": "/static/media/inter-cyrillic-700-normal.0f46f8d8d4c86e97ab79.woff", + "static/media/inter-cyrillic-400-normal.woff": "/static/media/inter-cyrillic-400-normal.fa67b2dd0048a5433bd5.woff", + "static/media/inter-greek-700-normal.woff2": "/static/media/inter-greek-700-normal.9cab44e73e21bce8d0ec.woff2", + "static/media/inter-greek-400-normal.woff2": "/static/media/inter-greek-400-normal.be0e76b30a7663adf9eb.woff2", + "static/media/inter-greek-ext-700-normal.woff": "/static/media/inter-greek-ext-700-normal.967ff698d058fd7afc94.woff", + "static/media/inter-greek-ext-400-normal.woff": "/static/media/inter-greek-ext-400-normal.708f2f7425851a3b7633.woff", + "static/media/inter-cyrillic-700-normal.woff2": "/static/media/inter-cyrillic-700-normal.544acdec5810964d78ff.woff2", + "static/media/inter-vietnamese-700-normal.woff": "/static/media/inter-vietnamese-700-normal.d734ef5c1391f85dfa86.woff", + "static/media/inter-cyrillic-400-normal.woff2": "/static/media/inter-cyrillic-400-normal.fa78d8d6788399bf6527.woff2", + "static/media/inter-vietnamese-400-normal.woff": "/static/media/inter-vietnamese-400-normal.6eab7f5e6cae783b49bf.woff", + "static/media/inter-greek-ext-700-normal.woff2": "/static/media/inter-greek-ext-700-normal.31161fccc41bc72f7c30.woff2", + "static/media/inter-greek-ext-400-normal.woff2": "/static/media/inter-greek-ext-400-normal.1e2b9039d9ecdbea5d80.woff2", + "static/media/inter-vietnamese-700-normal.woff2": "/static/media/inter-vietnamese-700-normal.20cbef325a3893fe67ad.woff2", + "static/media/inter-vietnamese-400-normal.woff2": "/static/media/inter-vietnamese-400-normal.5952d3d3c5df5a2f8e09.woff2", + "index.html": "/index.html", + "main.9722b64e.css.map": "/static/css/main.9722b64e.css.map", + "main.4774647d.js.map": "/static/js/main.4774647d.js.map", + "787.917857b7.chunk.js.map": "/static/js/787.917857b7.chunk.js.map" + }, + "entrypoints": [ + "static/css/main.9722b64e.css", + "static/js/main.4774647d.js" + ] +} \ No newline at end of file diff --git a/build/favicon.ico b/build/favicon.ico new file mode 100644 index 000000000..a11777cc4 Binary files /dev/null and b/build/favicon.ico differ diff --git a/build/index.html b/build/index.html new file mode 100644 index 000000000..a78af02db --- /dev/null +++ b/build/index.html @@ -0,0 +1 @@ +
e.id)),E=S.map((e=>e.id));if(g.current!==E.length){g.current=E.length;const e=gk(x,E);e.length&&(null===c||void 0===c||c(e))}if(v.current!==k.length){v.current=k.length;const e=gk(l,k);e.length&&(null===u||void 0===u||u(e))}m.setState({userSelectionRect:w})}:d,onMouseUp:A?e=>{if(0!==e.button)return;const{userSelectionRect:t}=m.getState();!b&&t&&e.target===p.current&&(null===k||void 0===k||k(e)),m.setState({nodesSelectionActive:g.current>0}),S(),null===i||void 0===i||i(e)}:void 0,onMouseLeave:A?e=>{b&&(m.setState({nodesSelectionActive:g.current>0}),null===i||void 0===i||i(e)),S()}:f,ref:p,style:rk},h,t.createElement(dk,null))}));function wk(e,t){if(!e.parentNode)return!1;const n=t.get(e.parentNode);return!!n&&(!!n.selected||wk(n,t))}function xk(e,t,n){let r=e;do{var o;if(null!==(o=r)&&void 0!==o&&o.matches(t))return!0;if(r===n.current)return!1;r=r.parentElement}while(r);return!1}function Sk(e,t,n,r){return Array.from(e.values()).filter((n=>(n.selected||n.id===r)&&(!n.parentNode||!wk(n,e))&&(n.draggable||t&&"undefined"===typeof n.draggable))).map((e=>{var t,r,o,a;return{id:e.id,position:e.position||{x:0,y:0},positionAbsolute:e.positionAbsolute||{x:0,y:0},distance:{x:n.x-(null!==(t=null===(r=e.positionAbsolute)||void 0===r?void 0:r.x)&&void 0!==t?t:0),y:n.y-(null!==(o=null===(a=e.positionAbsolute)||void 0===a?void 0:a.y)&&void 0!==o?o:0)},delta:{x:0,y:0},extent:e.extent,parentNode:e.parentNode,width:e.width,height:e.height,expandParent:e.expandParent}}))}function kk(e,t,n,r){let o=arguments.length>4&&void 0!==arguments[4]?arguments[4]:[0,0],a=arguments.length>5?arguments[5]:void 0;const i=function(e,t){return t&&"parent"!==t?[t[0],[t[1][0]-(e.width||0),t[1][1]-(e.height||0)]]:t}(e,e.extent||r);let l=i;if("parent"!==e.extent||e.expandParent){if(e.extent&&e.parentNode&&"parent"!==e.extent){const t=n.get(e.parentNode),{x:r,y:a}=Zx(t,o).positionAbsolute;l=[[e.extent[0][0]+r,e.extent[0][1]+a],[e.extent[1][0]+r,e.extent[1][1]+a]]}}else if(e.parentNode&&e.width&&e.height){const t=n.get(e.parentNode),{x:r,y:a}=Zx(t,o).positionAbsolute;l=t&&fx(r)&&fx(a)&&fx(t.width)&&fx(t.height)?[[r+e.width*o[0],a+e.height*o[1]],[r+t.width-e.width+e.width*o[0],a+t.height-e.height+e.height*o[1]]]:l}else null===a||void 0===a||a("005",Yw.error005()),l=i;let s={x:0,y:0};if(e.parentNode){const t=n.get(e.parentNode);s=Zx(t,o).positionAbsolute}const c=l&&"parent"!==l?nx(t,l):t;return{position:{x:c.x-s.x,y:c.y-s.y},positionAbsolute:c}}function Ek(e){let{nodeId:t,dragItems:n,nodeInternals:r}=e;const o=n.map((e=>({...r.get(e.id),position:e.position,positionAbsolute:e.positionAbsolute})));return[t?o.find((e=>e.id===t)):o[0],o]}bk.displayName="Pane";const Ak=(e,t,n,r)=>{const o=t.querySelectorAll(e);if(!o||!o.length)return null;const a=Array.from(o),i=t.getBoundingClientRect(),l=i.width*r[0],s=i.height*r[1];return a.map((e=>{const t=e.getBoundingClientRect();return{id:e.getAttribute("data-handleid"),position:e.getAttribute("data-handlepos"),x:(t.left-i.left-l)/n,y:(t.top-i.top-s)/n,...ex(e)}}))};function Ck(e,t,n){return void 0===n?n:r=>{const o=t().nodeInternals.get(e);o&&n(r,{...o})}}function Ok(e){let{id:t,store:n,unselect:r=!1,nodeRef:o}=e;const{addSelectedNodes:a,unselectNodesAndEdges:i,multiSelectionActive:l,nodeInternals:s,onError:c}=n.getState(),u=s.get(t);u?(n.setState({nodesSelectionActive:!1}),u.selected?(r||u.selected&&l)&&(i({nodes:[u],edges:[]}),requestAnimationFrame((()=>{var e;return null===o||void 0===o||null===(e=o.current)||void 0===e?void 0:e.blur()}))):a([t])):null===c||void 0===c||c("012",Yw.error012(t))}function Nk(e){return(t,n,r)=>null===e||void 0===e?void 0:e(t,r)}function jk(e){let{nodeRef:n,disabled:r=!1,noDragClassName:o,handleSelector:a,nodeId:i,isSelectable:l,selectNodesOnDrag:s}=e;const c=Qw(),[u,d]=(0,t.useState)(!1),f=(0,t.useRef)([]),h=(0,t.useRef)({x:null,y:null}),p=(0,t.useRef)(0),m=(0,t.useRef)(null),g=(0,t.useRef)({x:0,y:0}),v=(0,t.useRef)(null),y=(0,t.useRef)(!1),b=(0,t.useRef)(!1),w=function(){const e=Qw(),n=(0,t.useCallback)((t=>{let{sourceEvent:n}=t;const{transform:r,snapGrid:o,snapToGrid:a}=e.getState(),i=n.touches?n.touches[0].clientX:n.clientX,l=n.touches?n.touches[0].clientY:n.clientY,s={x:(i-r[0])/r[2],y:(l-r[1])/r[2]};return{xSnapped:a?o[0]*Math.round(s.x/o[0]):s.x,ySnapped:a?o[1]*Math.round(s.y/o[1]):s.y,...s}}),[]);return n}();return(0,t.useEffect)((()=>{if(null!==n&&void 0!==n&&n.current){const e=py(n.current),t=e=>{let{x:t,y:n}=e;const{nodeInternals:r,onNodeDrag:o,onSelectionDrag:a,updateNodePositions:l,nodeExtent:s,snapGrid:u,snapToGrid:p,nodeOrigin:m,onError:g}=c.getState();h.current={x:t,y:n};let y=!1,b={x:0,y:0,x2:0,y2:0};if(f.current.length>1&&s){const e=$x(f.current,m);b=lx(e)}if(f.current=f.current.map((e=>{const o={x:t-e.distance.x,y:n-e.distance.y};p&&(o.x=u[0]*Math.round(o.x/u[0]),o.y=u[1]*Math.round(o.y/u[1]));const a=[[s[0][0],s[0][1]],[s[1][0],s[1][1]]];var i,l;f.current.length>1&&s&&!e.extent&&(a[0][0]=e.positionAbsolute.x-b.x+s[0][0],a[1][0]=e.positionAbsolute.x+(null!==(i=e.width)&&void 0!==i?i:0)-b.x2+s[1][0],a[0][1]=e.positionAbsolute.y-b.y+s[0][1],a[1][1]=e.positionAbsolute.y+(null!==(l=e.height)&&void 0!==l?l:0)-b.y2+s[1][1]);const c=kk(e,o,r,a,m,g);return y=y||e.position.x!==c.position.x||e.position.y!==c.position.y,e.position=c.position,e.positionAbsolute=c.positionAbsolute,e})),!y)return;l(f.current,!0,!0),d(!0);const w=i?o:Nk(a);if(w&&v.current){const[e,t]=Ek({nodeId:i,dragItems:f.current,nodeInternals:r});w(v.current,e,t)}},u=()=>{if(!m.current)return;const[e,n]=ox(g.current,m.current);if(0!==e||0!==n){var r,o;const{transform:a,panBy:i}=c.getState();h.current.x=(null!==(r=h.current.x)&&void 0!==r?r:0)-e/a[2],h.current.y=(null!==(o=h.current.y)&&void 0!==o?o:0)-n/a[2],i({x:e,y:n})&&t(h.current)}p.current=requestAnimationFrame(u)},x=e=>{const{nodeInternals:t,multiSelectionActive:r,nodesDraggable:o,unselectNodesAndEdges:a,onNodeDragStart:u,onSelectionDragStart:d}=c.getState();b.current=!0;const p=i?u:Nk(d);var m;s&&l||r||!i||(null!==(m=t.get(i))&&void 0!==m&&m.selected||a());i&&l&&s&&Ok({id:i,store:c,nodeRef:n});const g=w(e);if(h.current=g,f.current=Sk(t,o,g,i),p&&f.current){const[n,r]=Ek({nodeId:i,dragItems:f.current,nodeInternals:t});p(e.sourceEvent,n,r)}};if(!r){const r=function(){var e,t,n,r,o=Bw,a=Fw,i=Uw,l=Ww,s={},c=ev("start","drag","end"),u=0,d=0;function f(e){e.on("mousedown.drag",h).filter(l).on("touchstart.drag",g).on("touchmove.drag",v,my).on("touchend.drag touchcancel.drag",y).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function h(i,l){if(!r&&o.call(this,i,l)){var s=b(this,a.call(this,i,l),i,l,"mouse");s&&(py(i.view).on("mousemove.drag",p,gy).on("mouseup.drag",m,gy),by(i.view),vy(i),n=!1,e=i.clientX,t=i.clientY,s("start",i))}}function p(r){if(yy(r),!n){var o=r.clientX-e,a=r.clientY-t;n=o*o+a*a>d}s.mouse("drag",r)}function m(e){py(e.view).on("mousemove.drag mouseup.drag",null),wy(e.view,n),yy(e),s.mouse("end",e)}function g(e,t){if(o.call(this,e,t)){var n,r,i=e.changedTouches,l=a.call(this,e,t),s=i.length;for(n=0;n a||125d?(a.sortIndex=c,f(t,a),null===h(r)&&a===h(t)&&(B?(E(L),L=-1):B=!0,K(H,c-d))):(a.sortIndex=e,f(r,a),A||z||(A=!0,I(J)));return a};\nexports.unstable_shouldYield=M;exports.unstable_wrapCallback=function(a){var b=y;return function(){var c=y;y=b;try{return a.apply(this,arguments)}finally{y=c}}};\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/scheduler.production.min.js');\n} else {\n module.exports = require('./cjs/scheduler.development.js');\n}\n","/**\n * @license React\n * use-sync-external-store-shim.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n'use strict';var e=require(\"react\");function h(a,b){return a===b&&(0!==a||1/a===1/b)||a!==a&&b!==b}var k=\"function\"===typeof Object.is?Object.is:h,l=e.useState,m=e.useEffect,n=e.useLayoutEffect,p=e.useDebugValue;function q(a,b){var d=b(),f=l({inst:{value:d,getSnapshot:b}}),c=f[0].inst,g=f[1];n(function(){c.value=d;c.getSnapshot=b;r(c)&&g({inst:c})},[a,d,b]);m(function(){r(c)&&g({inst:c});return a(function(){r(c)&&g({inst:c})})},[a]);p(d);return d}\nfunction r(a){var b=a.getSnapshot;a=a.value;try{var d=b();return!k(a,d)}catch(f){return!0}}function t(a,b){return b()}var u=\"undefined\"===typeof window||\"undefined\"===typeof window.document||\"undefined\"===typeof window.document.createElement?t:q;exports.useSyncExternalStore=void 0!==e.useSyncExternalStore?e.useSyncExternalStore:u;\n","/**\n * @license React\n * use-sync-external-store-shim/with-selector.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n'use strict';var h=require(\"react\"),n=require(\"use-sync-external-store/shim\");function p(a,b){return a===b&&(0!==a||1/a===1/b)||a!==a&&b!==b}var q=\"function\"===typeof Object.is?Object.is:p,r=n.useSyncExternalStore,t=h.useRef,u=h.useEffect,v=h.useMemo,w=h.useDebugValue;\nexports.useSyncExternalStoreWithSelector=function(a,b,e,l,g){var c=t(null);if(null===c.current){var f={hasValue:!1,value:null};c.current=f}else f=c.current;c=v(function(){function a(a){if(!c){c=!0;d=a;a=l(a);if(void 0!==g&&f.hasValue){var b=f.value;if(g(b,a))return k=b}return k=a}b=k;if(q(d,a))return b;var e=l(a);if(void 0!==g&&g(b,e))return b;d=a;return k=e}var c=!1,d,k,m=void 0===e?null:e;return[function(){return a(b())},null===m?void 0:function(){return a(m())}]},[b,e,l,g]);var d=r(a,c[0],c[1]);\nu(function(){f.hasValue=!0;f.value=d},[d]);w(d);return d};\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('../cjs/use-sync-external-store-shim.production.min.js');\n} else {\n module.exports = require('../cjs/use-sync-external-store-shim.development.js');\n}\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('../cjs/use-sync-external-store-shim/with-selector.production.min.js');\n} else {\n module.exports = require('../cjs/use-sync-external-store-shim/with-selector.development.js');\n}\n","var map = {\n\t\"./dns_lesson_answer.png\": 720,\n\t\"./email_lesson_answer.png\": 182,\n\t\"./forwarding_lesson_answer.png\": 226,\n\t\"./http_lesson_answer.png\": 221,\n\t\"./ip_lesson_answer.png\": 910,\n\t\"./tcp_lesson_answer.png\": 684,\n\t\"./tls_lesson_answer.png\": 746,\n\t\"./wifi_lesson_answer.png\": 853\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 877;","var map = {\n\t\"./dns_lesson.json\": 623,\n\t\"./email_lesson.json\": 699,\n\t\"./forwarding_lesson.json\": 582,\n\t\"./http_lesson.json\": 454,\n\t\"./ip_lesson.json\": 32,\n\t\"./tcp_lesson.json\": 935,\n\t\"./tls_lesson.json\": 645,\n\t\"./wifi_lesson.json\": 943\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 992;","/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames () {\n\t\tvar classes = '';\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (arg) {\n\t\t\t\tclasses = appendClass(classes, parseValue(arg));\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction parseValue (arg) {\n\t\tif (typeof arg === 'string' || typeof arg === 'number') {\n\t\t\treturn arg;\n\t\t}\n\n\t\tif (typeof arg !== 'object') {\n\t\t\treturn '';\n\t\t}\n\n\t\tif (Array.isArray(arg)) {\n\t\t\treturn classNames.apply(null, arg);\n\t\t}\n\n\t\tif (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {\n\t\t\treturn arg.toString();\n\t\t}\n\n\t\tvar classes = '';\n\n\t\tfor (var key in arg) {\n\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\tclasses = appendClass(classes, key);\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction appendClass (value, newClass) {\n\t\tif (!newClass) {\n\t\t\treturn value;\n\t\t}\n\t\n\t\tif (value) {\n\t\t\treturn value + ' ' + newClass;\n\t\t}\n\t\n\t\treturn value + newClass;\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","var getProto = Object.getPrototypeOf ? (obj) => (Object.getPrototypeOf(obj)) : (obj) => (obj.__proto__);\nvar leafPrototypes;\n// create a fake namespace object\n// mode & 1: value is a module id, require it\n// mode & 2: merge all properties of value into the ns\n// mode & 4: return value when already ns object\n// mode & 16: return value when it's Promise-like\n// mode & 8|1: behave like require\n__webpack_require__.t = function(value, mode) {\n\tif(mode & 1) value = this(value);\n\tif(mode & 8) return value;\n\tif(typeof value === 'object' && value) {\n\t\tif((mode & 4) && value.__esModule) return value;\n\t\tif((mode & 16) && typeof value.then === 'function') return value;\n\t}\n\tvar ns = Object.create(null);\n\t__webpack_require__.r(ns);\n\tvar def = {};\n\tleafPrototypes = leafPrototypes || [null, getProto({}), getProto([]), getProto(getProto)];\n\tfor(var current = mode & 2 && value; typeof current == 'object' && !~leafPrototypes.indexOf(current); current = getProto(current)) {\n\t\tObject.getOwnPropertyNames(current).forEach((key) => (def[key] = () => (value[key])));\n\t}\n\tdef['default'] = () => (value);\n\t__webpack_require__.d(ns, def);\n\treturn ns;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.f = {};\n// This file contains only the entry chunk.\n// The chunk loading function for additional chunks\n__webpack_require__.e = (chunkId) => {\n\treturn Promise.all(Object.keys(__webpack_require__.f).reduce((promises, key) => {\n\t\t__webpack_require__.f[key](chunkId, promises);\n\t\treturn promises;\n\t}, []));\n};","// This function allow to reference async chunks\n__webpack_require__.u = (chunkId) => {\n\t// return url for filenames based on template\n\treturn \"static/js/\" + chunkId + \".\" + \"917857b7\" + \".chunk.js\";\n};","// This function allow to reference async chunks\n__webpack_require__.miniCssF = (chunkId) => {\n\t// return url for filenames based on template\n\treturn undefined;\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","var inProgress = {};\nvar dataWebpackPrefix = \"project:\";\n// loadScript function to load a script via script tag\n__webpack_require__.l = (url, done, key, chunkId) => {\n\tif(inProgress[url]) { inProgress[url].push(done); return; }\n\tvar script, needAttach;\n\tif(key !== undefined) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tfor(var i = 0; i < scripts.length; i++) {\n\t\t\tvar s = scripts[i];\n\t\t\tif(s.getAttribute(\"src\") == url || s.getAttribute(\"data-webpack\") == dataWebpackPrefix + key) { script = s; break; }\n\t\t}\n\t}\n\tif(!script) {\n\t\tneedAttach = true;\n\t\tscript = document.createElement('script');\n\n\t\tscript.charset = 'utf-8';\n\t\tscript.timeout = 120;\n\t\tif (__webpack_require__.nc) {\n\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n\t\t}\n\t\tscript.setAttribute(\"data-webpack\", dataWebpackPrefix + key);\n\n\t\tscript.src = url;\n\t}\n\tinProgress[url] = [done];\n\tvar onScriptComplete = (prev, event) => {\n\t\t// avoid mem leaks in IE.\n\t\tscript.onerror = script.onload = null;\n\t\tclearTimeout(timeout);\n\t\tvar doneFns = inProgress[url];\n\t\tdelete inProgress[url];\n\t\tscript.parentNode && script.parentNode.removeChild(script);\n\t\tdoneFns && doneFns.forEach((fn) => (fn(event)));\n\t\tif(prev) return prev(event);\n\t}\n\tvar timeout = setTimeout(onScriptComplete.bind(null, undefined, { type: 'timeout', target: script }), 120000);\n\tscript.onerror = onScriptComplete.bind(null, script.onerror);\n\tscript.onload = onScriptComplete.bind(null, script.onload);\n\tneedAttach && document.head.appendChild(script);\n};","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.p = \"/\";","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t179: 0\n};\n\n__webpack_require__.f.j = (chunkId, promises) => {\n\t\t// JSONP chunk loading for javascript\n\t\tvar installedChunkData = __webpack_require__.o(installedChunks, chunkId) ? installedChunks[chunkId] : undefined;\n\t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n\t\t\t// a Promise means \"currently loading\".\n\t\t\tif(installedChunkData) {\n\t\t\t\tpromises.push(installedChunkData[2]);\n\t\t\t} else {\n\t\t\t\tif(true) { // all chunks have JS\n\t\t\t\t\t// setup Promise in chunk cache\n\t\t\t\t\tvar promise = new Promise((resolve, reject) => (installedChunkData = installedChunks[chunkId] = [resolve, reject]));\n\t\t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n\t\t\t\t\t// start chunk loading\n\t\t\t\t\tvar url = __webpack_require__.p + __webpack_require__.u(chunkId);\n\t\t\t\t\t// create error before stack unwound to get useful stacktrace later\n\t\t\t\t\tvar error = new Error();\n\t\t\t\t\tvar loadingEnded = (event) => {\n\t\t\t\t\t\tif(__webpack_require__.o(installedChunks, chunkId)) {\n\t\t\t\t\t\t\tinstalledChunkData = installedChunks[chunkId];\n\t\t\t\t\t\t\tif(installedChunkData !== 0) installedChunks[chunkId] = undefined;\n\t\t\t\t\t\t\tif(installedChunkData) {\n\t\t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n\t\t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n\t\t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n\t\t\t\t\t\t\t\terror.type = errorType;\n\t\t\t\t\t\t\t\terror.request = realSrc;\n\t\t\t\t\t\t\t\tinstalledChunkData[1](error);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t\t\t__webpack_require__.l(url, loadingEnded, \"chunk-\" + chunkId, chunkId);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n};\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n// no on chunks loaded\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = (parentChunkLoadingFunction, data) => {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some((id) => (installedChunks[id] !== 0))) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunkproject\"] = self[\"webpackChunkproject\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","import user_4_fill from '../Images/user_4_fill.png';\r\nimport humaaansGraph from '../Images/Humaaans Graphs.png';\r\nimport '../Styles/Home.modules.css';\r\n\r\ninterface Props {\r\n getStartedHandler: () => void;\r\n aboutUsHandler: () => void;\r\n contactHandler: () => void;\r\n FAQHandler: () => void;\r\n ProfileHandler: () => void;\r\n}\r\n\r\nfunction Home({getStartedHandler, aboutUsHandler, contactHandler, FAQHandler, ProfileHandler}: Props) {\r\n return (\r\n {const{domNode:t,nodeDragThreshold:n}=c.getState();0===n&&x(e);const r=w(e);h.current=r,m.current=(null===t||void 0===t?void 0:t.getBoundingClientRect())||null,g.current=yx(e.sourceEvent,m.current)})).on("drag",(e=>{const n=w(e),{autoPanOnNodeDrag:r,nodeDragThreshold:o}=c.getState();if(!y.current&&b.current&&r&&(y.current=!0,u()),!b.current){var a,i,l,s;const t=n.xSnapped-(null!==(a=null===h||void 0===h||null===(i=h.current)||void 0===i?void 0:i.x)&&void 0!==a?a:0),r=n.ySnapped-(null!==(l=null===h||void 0===h||null===(s=h.current)||void 0===s?void 0:s.y)&&void 0!==l?l:0);Math.sqrt(t*t+r*r)>o&&x(e)}(h.current.x!==n.xSnapped||h.current.y!==n.ySnapped)&&f.current&&b.current&&(v.current=e.sourceEvent,g.current=yx(e.sourceEvent,m.current),t(n))})).on("end",(e=>{if(b.current&&(d(!1),y.current=!1,b.current=!1,cancelAnimationFrame(p.current),f.current)){const{updateNodePositions:t,nodeInternals:n,onNodeDragStop:r,onSelectionDragStop:o}=c.getState(),a=i?r:Nk(o);if(t(f.current,!1,!1),a){const[t,r]=Ek({nodeId:i,dragItems:f.current,nodeInternals:n});a(e.sourceEvent,t,r)}}})).filter((e=>{const t=e.target;return!e.button&&(!o||!xk(t,".".concat(o),n))&&(!a||xk(t,a,n))}));return e.call(r),()=>{e.on(".drag",null)}}e.on(".drag",null)}}),[n,r,o,a,l,c,i,s,w]),u}function Pk(){const e=Qw(),n=(0,t.useCallback)((t=>{const{nodeInternals:n,nodeExtent:r,updateNodePositions:o,getNodes:a,snapToGrid:i,snapGrid:l,onError:s,nodesDraggable:c}=e.getState(),u=a().filter((e=>e.selected&&(e.draggable||c&&"undefined"===typeof e.draggable))),d=i?l[0]:5,f=i?l[1]:5,h=t.isShiftPressed?4:1,p=t.x*d*h,m=t.y*f*h,g=u.map((e=>{if(e.positionAbsolute){const t={x:e.positionAbsolute.x+p,y:e.positionAbsolute.y+m};i&&(t.x=l[0]*Math.round(t.x/l[0]),t.y=l[1]*Math.round(t.y/l[1]));const{positionAbsolute:o,position:a}=kk(e,t,n,r,void 0,s);e.position=a,e.positionAbsolute=o}return e}));o(g,!0,!1)}),[]);return n}const Mk={ArrowUp:{x:0,y:-1},ArrowDown:{x:0,y:1},ArrowLeft:{x:-1,y:0},ArrowRight:{x:1,y:0}};var Tk=e=>{const n=n=>{let{id:r,type:o,data:a,xPos:i,yPos:l,xPosOrigin:s,yPosOrigin:c,selected:u,onClick:d,onMouseEnter:f,onMouseMove:h,onMouseLeave:p,onContextMenu:m,onDoubleClick:g,style:v,className:y,isDraggable:b,isSelectable:w,isConnectable:x,isFocusable:S,selectNodesOnDrag:k,sourcePosition:E,targetPosition:A,hidden:C,resizeObserver:O,dragHandle:N,zIndex:j,isParent:P,noDragClassName:M,noPanClassName:T,initialized:_,disableKeyboardA11y:R,ariaLabel:I,rfId:L,hasHandleBounds:z}=n;const H=Qw(),D=(0,t.useRef)(null),B=(0,t.useRef)(E),F=(0,t.useRef)(A),U=(0,t.useRef)(o),W=w||b||d||f||h||p,V=Pk(),X=Ck(r,H.getState,f),Y=Ck(r,H.getState,h),q=Ck(r,H.getState,p),K=Ck(r,H.getState,m),Q=Ck(r,H.getState,g);(0,t.useEffect)((()=>()=>{D.current&&(null===O||void 0===O||O.unobserve(D.current))}),[]),(0,t.useEffect)((()=>{if(D.current&&!C){const e=D.current;_&&z||(null===O||void 0===O||O.unobserve(e),null===O||void 0===O||O.observe(e))}}),[C,_,z]),(0,t.useEffect)((()=>{const e=U.current!==o,t=B.current!==E,n=F.current!==A;D.current&&(e||t||n)&&(e&&(U.current=o),t&&(B.current=E),n&&(F.current=A),H.getState().updateNodeDimensions([{id:r,nodeElement:D.current,forceUpdate:!0}]))}),[r,o,E,A]);const G=jk({nodeRef:D,disabled:C||!b,noDragClassName:M,handleSelector:N,nodeId:r,isSelectable:w,selectNodesOnDrag:k});return C?null:t.createElement("div",{className:Dg(["react-flow__node","react-flow__node-".concat(o),{[T]:b},y,{selected:u,selectable:w,parent:P,dragging:G}]),ref:D,style:{zIndex:j,transform:"translate(".concat(s,"px,").concat(c,"px)"),pointerEvents:W?"all":"none",visibility:_?"visible":"hidden",...v},"data-id":r,"data-testid":"rf__node-".concat(r),onMouseEnter:X,onMouseMove:Y,onMouseLeave:q,onContextMenu:K,onClick:e=>{const{nodeDragThreshold:t}=H.getState();if(w&&(!k||!b||t>0)&&Ok({id:r,store:H,nodeRef:D}),d){const t=H.getState().nodeInternals.get(r);t&&d(e,{...t})}},onDoubleClick:Q,onKeyDown:S?e=>{if(!gx(e))if(px.includes(e.key)&&w){const t="Escape"===e.key;Ok({id:r,store:H,unselect:t,nodeRef:D})}else!R&&b&&u&&Object.prototype.hasOwnProperty.call(Mk,e.key)&&(H.setState({ariaLiveMessage:"Moved selected node ".concat(e.key.replace("Arrow","").toLowerCase(),". New position, x: ").concat(~~i,", y: ").concat(~~l)}),V({x:Mk[e.key].x,y:Mk[e.key].y,isShiftPressed:e.shiftKey}))}:void 0,tabIndex:S?0:void 0,role:S?"button":void 0,"aria-describedby":R?void 0:"".concat(IS,"-").concat(L),"aria-label":I},t.createElement(Yx,{value:r},t.createElement(e,{id:r,data:a,type:o,xPos:i,yPos:l,selected:u,isConnectable:x,sourcePosition:E,targetPosition:A,dragging:G,dragHandle:N,zIndex:j})))};return n.displayName="NodeWrapper",(0,t.memo)(n)};const _k=e=>{const t=e.getNodes().filter((e=>e.selected));return{...$x(t,e.nodeOrigin),transformString:"translate(".concat(e.transform[0],"px,").concat(e.transform[1],"px) scale(").concat(e.transform[2],")"),userSelectionActive:e.userSelectionActive}};var Rk=(0,t.memo)((function(e){let{onSelectionContextMenu:n,noPanClassName:r,disableKeyboardA11y:o}=e;const a=Qw(),{width:i,height:l,x:s,y:c,transformString:u,userSelectionActive:d}=Kw(_k,Kg),f=Pk(),h=(0,t.useRef)(null);if((0,t.useEffect)((()=>{var e;o||(null===(e=h.current)||void 0===e||e.focus({preventScroll:!0}))}),[o]),jk({nodeRef:h}),d||!i||!l)return null;const p=n?e=>{const t=a.getState().getNodes().filter((e=>e.selected));n(e,t)}:void 0;return t.createElement("div",{className:Dg(["react-flow__nodesselection","react-flow__container",r]),style:{transform:u}},t.createElement("div",{ref:h,className:"react-flow__nodesselection-rect",onContextMenu:p,tabIndex:o?void 0:-1,onKeyDown:o?void 0:e=>{Object.prototype.hasOwnProperty.call(Mk,e.key)&&f({x:Mk[e.key].x,y:Mk[e.key].y,isShiftPressed:e.shiftKey})},style:{width:i,height:l,top:c,left:s}}))}));const Ik=e=>e.nodesSelectionActive,Lk=e=>{let{children:n,onPaneClick:r,onPaneMouseEnter:o,onPaneMouseMove:a,onPaneMouseLeave:i,onPaneContextMenu:l,onPaneScroll:s,deleteKeyCode:c,onMove:u,onMoveStart:d,onMoveEnd:f,selectionKeyCode:h,selectionOnDrag:p,selectionMode:m,onSelectionStart:g,onSelectionEnd:v,multiSelectionKeyCode:y,panActivationKeyCode:b,zoomActivationKeyCode:w,elementsSelectable:x,zoomOnScroll:S,zoomOnPinch:k,panOnScroll:E,panOnScrollSpeed:A,panOnScrollMode:C,zoomOnDoubleClick:O,panOnDrag:N,defaultViewport:j,translateExtent:P,minZoom:M,maxZoom:T,preventScrolling:_,onSelectionContextMenu:R,noWheelClassName:I,noPanClassName:L,disableKeyboardA11y:z}=e;const H=Kw(Ik),D=FS(h),B=FS(b),F=B||N,U=B||E,W=D||p&&!0!==F;return(e=>{let{deleteKeyCode:n,multiSelectionKeyCode:r}=e;const o=Qw(),{deleteElements:a}=tk(),i=FS(n,nk),l=FS(r);(0,t.useEffect)((()=>{if(i){const{edges:e,getNodes:t}=o.getState(),n=t().filter((e=>e.selected)),r=e.filter((e=>e.selected));a({nodes:n,edges:r}),o.setState({nodesSelectionActive:!1})}}),[i]),(0,t.useEffect)((()=>{o.setState({multiSelectionActive:l})}),[l])})({deleteKeyCode:c,multiSelectionKeyCode:y}),t.createElement(ck,{onMove:u,onMoveStart:d,onMoveEnd:f,onPaneContextMenu:l,elementsSelectable:x,zoomOnScroll:S,zoomOnPinch:k,panOnScroll:U,panOnScrollSpeed:A,panOnScrollMode:C,zoomOnDoubleClick:O,panOnDrag:!D&&F,defaultViewport:j,translateExtent:P,minZoom:M,maxZoom:T,zoomActivationKeyCode:w,preventScrolling:_,noWheelClassName:I,noPanClassName:L},t.createElement(bk,{onSelectionStart:g,onSelectionEnd:v,onPaneClick:r,onPaneMouseEnter:o,onPaneMouseMove:a,onPaneMouseLeave:i,onPaneContextMenu:l,onPaneScroll:s,panOnDrag:F,isSelecting:!!W,selectionMode:m},n,H&&t.createElement(Rk,{onSelectionContextMenu:R,noPanClassName:L,disableKeyboardA11y:z})))};Lk.displayName="FlowRenderer";var zk=(0,t.memo)(Lk);function Hk(e){const t={input:Tk(e.input||bS),default:Tk(e.default||vS),output:Tk(e.output||xS),group:Tk(e.group||SS)},n=Object.keys(e).filter((e=>!["input","default","output","group"].includes(e))).reduce(((t,n)=>(t[n]=Tk(e[n]||vS),t)),{});return{...t,...n}}const Dk=e=>({nodesDraggable:e.nodesDraggable,nodesConnectable:e.nodesConnectable,nodesFocusable:e.nodesFocusable,elementsSelectable:e.elementsSelectable,updateNodeDimensions:e.updateNodeDimensions,onError:e.onError}),Bk=e=>{const{nodesDraggable:n,nodesConnectable:r,nodesFocusable:o,elementsSelectable:a,updateNodeDimensions:i,onError:l}=Kw(Dk,Kg),s=(c=e.onlyRenderVisibleElements,Kw((0,t.useCallback)((e=>c?eS(e.nodeInternals,{x:0,y:0,width:e.width,height:e.height},e.transform,!0):e.getNodes()),[c])));var c;const u=(0,t.useRef)(),d=(0,t.useMemo)((()=>{if("undefined"===typeof ResizeObserver)return null;const e=new ResizeObserver((e=>{const t=e.map((e=>({id:e.target.getAttribute("data-id"),nodeElement:e.target,forceUpdate:!0})));i(t)}));return u.current=e,e}),[]);return(0,t.useEffect)((()=>()=>{var e;null===u||void 0===u||null===(e=u.current)||void 0===e||e.disconnect()}),[]),t.createElement("div",{className:"react-flow__nodes",style:rk},s.map((i=>{var s,c,u,f,h,p,m,g;let v=i.type||"default";e.nodeTypes[v]||(null===l||void 0===l||l("003",Yw.error003(v)),v="default");const y=e.nodeTypes[v]||e.nodeTypes.default,b=!!(i.draggable||n&&"undefined"===typeof i.draggable),w=!!(i.selectable||a&&"undefined"===typeof i.selectable),x=!!(i.connectable||r&&"undefined"===typeof i.connectable),S=!!(i.focusable||o&&"undefined"===typeof i.focusable),k=e.nodeExtent?nx(i.positionAbsolute,e.nodeExtent):i.positionAbsolute,E=null!==(s=null===k||void 0===k?void 0:k.x)&&void 0!==s?s:0,A=null!==(c=null===k||void 0===k?void 0:k.y)&&void 0!==c?c:0,C=(e=>{let{x:t,y:n,width:r,height:o,origin:a}=e;return r&&o?a[0]<0||a[1]<0||a[0]>1||a[1]>1?{x:t,y:n}:{x:t-r*a[0],y:n-o*a[1]}:{x:t,y:n}})({x:E,y:A,width:null!==(u=i.width)&&void 0!==u?u:0,height:null!==(f=i.height)&&void 0!==f?f:0,origin:e.nodeOrigin});return t.createElement(y,{key:i.id,id:i.id,className:i.className,style:i.style,type:v,data:i.data,sourcePosition:i.sourcePosition||jx.Bottom,targetPosition:i.targetPosition||jx.Top,hidden:i.hidden,xPos:E,yPos:A,xPosOrigin:C.x,yPosOrigin:C.y,selectNodesOnDrag:e.selectNodesOnDrag,onClick:e.onNodeClick,onMouseEnter:e.onNodeMouseEnter,onMouseMove:e.onNodeMouseMove,onMouseLeave:e.onNodeMouseLeave,onContextMenu:e.onNodeContextMenu,onDoubleClick:e.onNodeDoubleClick,selected:!!i.selected,isDraggable:b,isSelectable:w,isConnectable:x,isFocusable:S,resizeObserver:d,dragHandle:i.dragHandle,zIndex:null!==(h=null===(p=i[hx])||void 0===p?void 0:p.z)&&void 0!==h?h:0,isParent:!(null===(m=i[hx])||void 0===m||!m.isParent),noDragClassName:e.noDragClassName,noPanClassName:e.noPanClassName,initialized:!!i.width&&!!i.height,rfId:e.rfId,disableKeyboardA11y:e.disableKeyboardA11y,ariaLabel:i.ariaLabel,hasHandleBounds:!(null===(g=i[hx])||void 0===g||!g.handleBounds)})})))};Bk.displayName="NodeRenderer";var Fk=(0,t.memo)(Bk);const Uk=(e,t,n)=>n===jx.Left?e-t:n===jx.Right?e+t:e,Wk=(e,t,n)=>n===jx.Top?e-t:n===jx.Bottom?e+t:e,Vk="react-flow__edgeupdater",Xk=e=>{let{position:n,centerX:r,centerY:o,radius:a=10,onMouseDown:i,onMouseEnter:l,onMouseOut:s,type:c}=e;return t.createElement("circle",{onMouseDown:i,onMouseEnter:l,onMouseOut:s,className:Dg([Vk,"".concat(Vk,"-").concat(c)]),cx:Uk(r,a,n),cy:Wk(o,a,n),r:a,stroke:"transparent",fill:"transparent"})},Yk=()=>!0;var qk=e=>{const n=n=>{let{id:r,className:o,type:a,data:i,onClick:l,onEdgeDoubleClick:s,selected:c,animated:u,label:d,labelStyle:f,labelShowBg:h,labelBgStyle:p,labelBgPadding:m,labelBgBorderRadius:g,style:v,source:y,target:b,sourceX:w,sourceY:x,targetX:S,targetY:k,sourcePosition:E,targetPosition:A,elementsSelectable:C,hidden:O,sourceHandleId:N,targetHandleId:j,onContextMenu:P,onMouseEnter:M,onMouseMove:T,onMouseLeave:_,edgeUpdaterRadius:R,onEdgeUpdate:I,onEdgeUpdateStart:L,onEdgeUpdateEnd:z,markerEnd:H,markerStart:D,rfId:B,ariaLabel:F,isFocusable:U,isUpdatable:W,pathOptions:V,interactionWidth:X}=n;const Y=(0,t.useRef)(null),[q,K]=(0,t.useState)(!1),[Q,G]=(0,t.useState)(!1),J=Qw(),Z=(0,t.useMemo)((()=>"url('#".concat(Kx(D,B),"')")),[D,B]),$=(0,t.useMemo)((()=>"url('#".concat(Kx(H,B),"')")),[H,B]);if(O)return null;const ee=xx(r,J.getState,s),te=xx(r,J.getState,P),ne=xx(r,J.getState,M),re=xx(r,J.getState,T),oe=xx(r,J.getState,_),ae=(e,t)=>{if(0!==e.button)return;const{edges:n,isValidConnection:o}=J.getState(),a=t?b:y,i=(t?j:N)||null,l=t?"target":"source",s=o||Yk,c=t,u=n.find((e=>e.id===r));G(!0),null===L||void 0===L||L(e,u,l);dS({event:e,handleId:i,nodeId:a,onConnect:e=>null===I||void 0===I?void 0:I(u,e),isTarget:c,getState:J.getState,setState:J.setState,isValidConnection:s,edgeUpdaterType:l,onEdgeUpdateEnd:e=>{G(!1),null===z||void 0===z||z(e,u,l)}})},ie=()=>K(!0),le=()=>K(!1),se=!C&&!l;return t.createElement("g",{className:Dg(["react-flow__edge","react-flow__edge-".concat(a),o,{selected:c,animated:u,inactive:se,updating:q}]),onClick:e=>{const{edges:t,addSelectedEdges:n,unselectNodesAndEdges:o,multiSelectionActive:a}=J.getState(),i=t.find((e=>e.id===r));if(i){var s;if(C)if(J.setState({nodesSelectionActive:!1}),i.selected&&a)o({nodes:[],edges:[i]}),null===(s=Y.current)||void 0===s||s.blur();else n([r]);l&&l(e,i)}},onDoubleClick:ee,onContextMenu:te,onMouseEnter:ne,onMouseMove:re,onMouseLeave:oe,onKeyDown:U?e=>{if(px.includes(e.key)&&C){const{unselectNodesAndEdges:n,addSelectedEdges:o,edges:a}=J.getState();var t;if("Escape"===e.key)null===(t=Y.current)||void 0===t||t.blur(),n({edges:[a.find((e=>e.id===r))]});else o([r])}}:void 0,tabIndex:U?0:void 0,role:U?"button":"img","data-testid":"rf__edge-".concat(r),"aria-label":null===F?void 0:F||"Edge from ".concat(y," to ").concat(b),"aria-describedby":U?"".concat(LS,"-").concat(B):void 0,ref:Y},!Q&&t.createElement(e,{id:r,source:y,target:b,selected:c,animated:u,label:d,labelStyle:f,labelShowBg:h,labelBgStyle:p,labelBgPadding:m,labelBgBorderRadius:g,data:i,style:v,sourceX:w,sourceY:x,targetX:S,targetY:k,sourcePosition:E,targetPosition:A,sourceHandleId:N,targetHandleId:j,markerStart:Z,markerEnd:$,pathOptions:V,interactionWidth:X}),W&&t.createElement(t.Fragment,null,("source"===W||!0===W)&&t.createElement(Xk,{position:E,centerX:w,centerY:x,radius:R,onMouseDown:e=>ae(e,!0),onMouseEnter:ie,onMouseOut:le,type:"source"}),("target"===W||!0===W)&&t.createElement(Xk,{position:A,centerX:S,centerY:k,radius:R,onMouseDown:e=>ae(e,!1),onMouseEnter:ie,onMouseOut:le,type:"target"})))};return n.displayName="EdgeWrapper",(0,t.memo)(n)};function Kk(e){const t={default:qk(e.default||Vx),straight:qk(e.bezier||Bx),step:qk(e.step||Hx),smoothstep:qk(e.step||zx),simplebezier:qk(e.simplebezier||Tx)},n=Object.keys(e).filter((e=>!["default","bezier"].includes(e))).reduce(((t,n)=>(t[n]=qk(e[n]||Vx),t)),{});return{...t,...n}}function Qk(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;const r=((null===n||void 0===n?void 0:n.x)||0)+t.x,o=((null===n||void 0===n?void 0:n.y)||0)+t.y,a=(null===n||void 0===n?void 0:n.width)||t.width,i=(null===n||void 0===n?void 0:n.height)||t.height;switch(e){case jx.Top:return{x:r+a/2,y:o};case jx.Right:return{x:r+a,y:o+i/2};case jx.Bottom:return{x:r+a/2,y:o+i};case jx.Left:return{x:r,y:o+i/2}}}function Gk(e,t){return e?1!==e.length&&t?t&&e.find((e=>e.id===t))||null:e[0]:null}function Jk(e){var t,n,r,o,a;const i=(null===e||void 0===e||null===(t=e[hx])||void 0===t?void 0:t.handleBounds)||null,l=i&&(null===e||void 0===e?void 0:e.width)&&(null===e||void 0===e?void 0:e.height)&&"undefined"!==typeof(null===e||void 0===e||null===(n=e.positionAbsolute)||void 0===n?void 0:n.x)&&"undefined"!==typeof(null===e||void 0===e||null===(r=e.positionAbsolute)||void 0===r?void 0:r.y);return[{x:(null===e||void 0===e||null===(o=e.positionAbsolute)||void 0===o?void 0:o.x)||0,y:(null===e||void 0===e||null===(a=e.positionAbsolute)||void 0===a?void 0:a.y)||0,width:(null===e||void 0===e?void 0:e.width)||0,height:(null===e||void 0===e?void 0:e.height)||0},i,!!l]}const Zk=[{level:0,isMaxLevel:!0,edges:[]}];function $k(e,n,r){const o=Kw((0,t.useCallback)((t=>e?t.edges.filter((e=>{const r=n.get(e.source),o=n.get(e.target);return(null===r||void 0===r?void 0:r.width)&&(null===r||void 0===r?void 0:r.height)&&(null===o||void 0===o?void 0:o.width)&&(null===o||void 0===o?void 0:o.height)&&function(e){let{sourcePos:t,targetPos:n,sourceWidth:r,sourceHeight:o,targetWidth:a,targetHeight:i,width:l,height:s,transform:c}=e;const u={x:Math.min(t.x,n.x),y:Math.min(t.y,n.y),x2:Math.max(t.x+r,n.x+a),y2:Math.max(t.y+o,n.y+i)};u.x===u.x2&&(u.x2+=1),u.y===u.y2&&(u.y2+=1);const d=lx({x:(0-c[0])/c[2],y:(0-c[1])/c[2],width:l/c[2],height:s/c[2]}),f=Math.max(0,Math.min(d.x2,u.x2)-Math.max(d.x,u.x)),h=Math.max(0,Math.min(d.y2,u.y2)-Math.max(d.y,u.y));return Math.ceil(f*h)>0}({sourcePos:r.positionAbsolute||{x:0,y:0},targetPos:o.positionAbsolute||{x:0,y:0},sourceWidth:r.width,sourceHeight:r.height,targetWidth:o.width,targetHeight:o.height,width:t.width,height:t.height,transform:t.transform})})):t.edges),[e,n]));return function(e,t){let n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=-1;const o=e.reduce(((e,o)=>{const a=fx(o.zIndex);let i=a?o.zIndex:0;if(n){var l,s;const e=t.get(o.target),n=t.get(o.source),r=o.selected||(null===e||void 0===e?void 0:e.selected)||(null===n||void 0===n?void 0:n.selected),c=Math.max((null===n||void 0===n||null===(l=n[hx])||void 0===l?void 0:l.z)||0,(null===e||void 0===e||null===(s=e[hx])||void 0===s?void 0:s.z)||0,1e3);i=(a?o.zIndex:0)+(r?c:0)}return e[i]?e[i].push(o):e[i]=[o],r=i>r?i:r,e}),{}),a=Object.entries(o).map((e=>{let[t,n]=e;const o=+t;return{edges:n,level:o,isMaxLevel:o===r}}));return 0===a.length?Zk:a}(o,n,r)}const eE={[Nx.Arrow]:e=>{let{color:n="none",strokeWidth:r=1}=e;return t.createElement("polyline",{style:{stroke:n,strokeWidth:r},strokeLinecap:"round",strokeLinejoin:"round",fill:"none",points:"-5,-4 0,0 -5,4"})},[Nx.ArrowClosed]:e=>{let{color:n="none",strokeWidth:r=1}=e;return t.createElement("polyline",{style:{stroke:n,fill:n,strokeWidth:r},strokeLinecap:"round",strokeLinejoin:"round",points:"-5,-4 0,0 -5,4 -5,-4"})}};const tE=e=>{let{id:n,type:r,color:o,width:a=12.5,height:i=12.5,markerUnits:l="strokeWidth",strokeWidth:s,orient:c="auto-start-reverse"}=e;const u=function(e){const n=Qw();return(0,t.useMemo)((()=>{var t,r;return Object.prototype.hasOwnProperty.call(eE,e)?eE[e]:(null===(t=(r=n.getState()).onError)||void 0===t||t.call(r,"009",Yw.error009(e)),null)}),[e])}(r);return u?t.createElement("marker",{className:"react-flow__arrowhead",id:n,markerWidth:"".concat(a),markerHeight:"".concat(i),viewBox:"-10 -10 20 20",markerUnits:l,orient:c,refX:"0",refY:"0"},t.createElement(u,{color:o,strokeWidth:s})):null},nE=e=>{let{defaultColor:n,rfId:r}=e;const o=Kw((0,t.useCallback)((e=>{let{defaultColor:t,rfId:n}=e;return e=>{const r=[];return e.edges.reduce(((e,o)=>([o.markerStart,o.markerEnd].forEach((o=>{if(o&&"object"===typeof o){const a=Kx(o,n);r.includes(a)||(e.push({id:a,color:o.color||t,...o}),r.push(a))}})),e)),[]).sort(((e,t)=>e.id.localeCompare(t.id)))}})({defaultColor:n,rfId:r}),[n,r]),((e,t)=>!(e.length!==t.length||e.some(((e,n)=>e.id!==t[n].id)))));return t.createElement("defs",null,o.map((e=>t.createElement(tE,{id:e.id,key:e.id,type:e.type,color:e.color,width:e.width,height:e.height,markerUnits:e.markerUnits,strokeWidth:e.strokeWidth,orient:e.orient}))))};nE.displayName="MarkerDefinitions";var rE=(0,t.memo)(nE);const oE=e=>({nodesConnectable:e.nodesConnectable,edgesFocusable:e.edgesFocusable,edgesUpdatable:e.edgesUpdatable,elementsSelectable:e.elementsSelectable,width:e.width,height:e.height,connectionMode:e.connectionMode,nodeInternals:e.nodeInternals,onError:e.onError}),aE=e=>{let{defaultMarkerColor:n,onlyRenderVisibleElements:r,elevateEdgesOnSelect:o,rfId:a,edgeTypes:i,noPanClassName:l,onEdgeUpdate:s,onEdgeContextMenu:c,onEdgeMouseEnter:u,onEdgeMouseMove:d,onEdgeMouseLeave:f,onEdgeClick:h,edgeUpdaterRadius:p,onEdgeDoubleClick:m,onEdgeUpdateStart:g,onEdgeUpdateEnd:v,children:y}=e;const{edgesFocusable:b,edgesUpdatable:w,elementsSelectable:x,width:S,height:k,connectionMode:E,nodeInternals:A,onError:C}=Kw(oE,Kg),O=$k(r,A,o);return S?t.createElement(t.Fragment,null,O.map((e=>{let{level:r,edges:o,isMaxLevel:y}=e;return t.createElement("svg",{key:r,style:{zIndex:r},width:S,height:k,className:"react-flow__edges react-flow__container"},y&&t.createElement(rE,{defaultColor:n,rfId:a}),t.createElement("g",null,o.map((e=>{var n,r;const[o,y,S]=Jk(A.get(e.source)),[k,O,N]=Jk(A.get(e.target));if(!S||!N)return null;let j=e.type||"default";i[j]||(null===C||void 0===C||C("011",Yw.error011(j)),j="default");const P=i[j]||i.default,M=E===Ex.Strict?O.target:(null!==(n=O.target)&&void 0!==n?n:[]).concat(null!==(r=O.source)&&void 0!==r?r:[]),T=Gk(y.source,e.sourceHandle),_=Gk(M,e.targetHandle),R=(null===T||void 0===T?void 0:T.position)||jx.Bottom,I=(null===_||void 0===_?void 0:_.position)||jx.Top,L=!!(e.focusable||b&&"undefined"===typeof e.focusable),z="undefined"!==typeof s&&(e.updatable||w&&"undefined"===typeof e.updatable);if(!T||!_)return null===C||void 0===C||C("008",Yw.error008(T,e)),null;const{sourceX:H,sourceY:D,targetX:B,targetY:F}=((e,t,n,r,o,a)=>{const i=Qk(n,e,t),l=Qk(a,r,o);return{sourceX:i.x,sourceY:i.y,targetX:l.x,targetY:l.y}})(o,T,R,k,_,I);return t.createElement(P,{key:e.id,id:e.id,className:Dg([e.className,l]),type:j,data:e.data,selected:!!e.selected,animated:!!e.animated,hidden:!!e.hidden,label:e.label,labelStyle:e.labelStyle,labelShowBg:e.labelShowBg,labelBgStyle:e.labelBgStyle,labelBgPadding:e.labelBgPadding,labelBgBorderRadius:e.labelBgBorderRadius,style:e.style,source:e.source,target:e.target,sourceHandleId:e.sourceHandle,targetHandleId:e.targetHandle,markerEnd:e.markerEnd,markerStart:e.markerStart,sourceX:H,sourceY:D,targetX:B,targetY:F,sourcePosition:R,targetPosition:I,elementsSelectable:x,onEdgeUpdate:s,onContextMenu:c,onMouseEnter:u,onMouseMove:d,onMouseLeave:f,onClick:h,edgeUpdaterRadius:p,onEdgeDoubleClick:m,onEdgeUpdateStart:g,onEdgeUpdateEnd:v,rfId:a,ariaLabel:e.ariaLabel,isFocusable:L,isUpdatable:z,pathOptions:"pathOptions"in e?e.pathOptions:void 0,interactionWidth:e.interactionWidth})}))))})),y):null};aE.displayName="EdgeRenderer";var iE=(0,t.memo)(aE);const lE=e=>"translate(".concat(e.transform[0],"px,").concat(e.transform[1],"px) scale(").concat(e.transform[2],")");function sE(e){let{children:n}=e;const r=Kw(lE);return t.createElement("div",{className:"react-flow__viewport react-flow__container",style:{transform:r}},n)}const cE={[jx.Left]:jx.Right,[jx.Right]:jx.Left,[jx.Top]:jx.Bottom,[jx.Bottom]:jx.Top},uE=e=>{var n,r,o,a,i,l,s;let{nodeId:c,handleType:u,style:d,type:f=Ox.Bezier,CustomComponent:h,connectionStatus:p}=e;const{fromNode:m,handleId:g,toX:v,toY:y,connectionMode:b}=Kw((0,t.useCallback)((e=>({fromNode:e.nodeInternals.get(c),handleId:e.connectionHandleId,toX:(e.connectionPosition.x-e.transform[0])/e.transform[2],toY:(e.connectionPosition.y-e.transform[1])/e.transform[2],connectionMode:e.connectionMode})),[c]),Kg),w=null===m||void 0===m||null===(n=m[hx])||void 0===n?void 0:n.handleBounds;let x=null===w||void 0===w?void 0:w[u];if(b===Ex.Loose&&(x=x||(null===w||void 0===w?void 0:w["source"===u?"target":"source"])),!m||!x)return null;const S=g?x.find((e=>e.id===g)):x[0],k=S?S.x+S.width/2:(null!==(r=m.width)&&void 0!==r?r:0)/2,E=S?S.y+S.height/2:null!==(o=m.height)&&void 0!==o?o:0,A=(null!==(a=null===(i=m.positionAbsolute)||void 0===i?void 0:i.x)&&void 0!==a?a:0)+k,C=(null!==(l=null===(s=m.positionAbsolute)||void 0===s?void 0:s.y)&&void 0!==l?l:0)+E,O=null===S||void 0===S?void 0:S.position,N=O?cE[O]:null;if(!O||!N)return null;if(h)return t.createElement(h,{connectionLineType:f,connectionLineStyle:d,fromNode:m,fromHandle:S,fromX:A,fromY:C,toX:v,toY:y,fromPosition:O,toPosition:N,connectionStatus:p});let j="";const P={sourceX:A,sourceY:C,sourcePosition:O,targetX:v,targetY:y,targetPosition:N};return f===Ox.Bezier?[j]=Wx(P):f===Ox.Step?[j]=Lx({...P,borderRadius:0}):f===Ox.SmoothStep?[j]=Lx(P):f===Ox.SimpleBezier?[j]=Mx(P):j="M".concat(A,",").concat(C," ").concat(v,",").concat(y),t.createElement("path",{d:j,fill:"none",className:"react-flow__connection-path",style:d})};uE.displayName="ConnectionLine";const dE=e=>({nodeId:e.connectionNodeId,handleType:e.connectionHandleType,nodesConnectable:e.nodesConnectable,connectionStatus:e.connectionStatus,width:e.width,height:e.height});function fE(e){let{containerStyle:n,style:r,type:o,component:a}=e;const{nodeId:i,handleType:l,nodesConnectable:s,width:c,height:u,connectionStatus:d}=Kw(dE,Kg);return!!(i&&l&&c&&s)?t.createElement("svg",{style:n,width:c,height:u,className:"react-flow__edges react-flow__connectionline react-flow__container"},t.createElement("g",{className:Dg(["react-flow__connection",d])},t.createElement(uE,{nodeId:i,handleType:l,style:r,type:o,CustomComponent:a,connectionStatus:d}))):null}function hE(e,n){(0,t.useRef)(null),Qw();return(0,t.useMemo)((()=>n(e)),[e])}const pE=e=>{let{nodeTypes:n,edgeTypes:r,onMove:o,onMoveStart:a,onMoveEnd:i,onInit:l,onNodeClick:s,onEdgeClick:c,onNodeDoubleClick:u,onEdgeDoubleClick:d,onNodeMouseEnter:f,onNodeMouseMove:h,onNodeMouseLeave:p,onNodeContextMenu:m,onSelectionContextMenu:g,onSelectionStart:v,onSelectionEnd:y,connectionLineType:b,connectionLineStyle:w,connectionLineComponent:x,connectionLineContainerStyle:S,selectionKeyCode:k,selectionOnDrag:E,selectionMode:A,multiSelectionKeyCode:C,panActivationKeyCode:O,zoomActivationKeyCode:N,deleteKeyCode:j,onlyRenderVisibleElements:P,elementsSelectable:M,selectNodesOnDrag:T,defaultViewport:_,translateExtent:R,minZoom:I,maxZoom:L,preventScrolling:z,defaultMarkerColor:H,zoomOnScroll:D,zoomOnPinch:B,panOnScroll:F,panOnScrollSpeed:U,panOnScrollMode:W,zoomOnDoubleClick:V,panOnDrag:X,onPaneClick:Y,onPaneMouseEnter:q,onPaneMouseMove:K,onPaneMouseLeave:Q,onPaneScroll:G,onPaneContextMenu:J,onEdgeUpdate:Z,onEdgeContextMenu:$,onEdgeMouseEnter:ee,onEdgeMouseMove:te,onEdgeMouseLeave:ne,edgeUpdaterRadius:re,onEdgeUpdateStart:oe,onEdgeUpdateEnd:ae,noDragClassName:ie,noWheelClassName:le,noPanClassName:se,elevateEdgesOnSelect:ce,disableKeyboardA11y:ue,nodeOrigin:de,nodeExtent:fe,rfId:he}=e;const pe=hE(n,Hk),me=hE(r,Kk);return function(e){const n=tk(),r=(0,t.useRef)(!1);(0,t.useEffect)((()=>{!r.current&&n.viewportInitialized&&e&&(setTimeout((()=>e(n)),1),r.current=!0)}),[e,n.viewportInitialized])}(l),t.createElement(zk,{onPaneClick:Y,onPaneMouseEnter:q,onPaneMouseMove:K,onPaneMouseLeave:Q,onPaneContextMenu:J,onPaneScroll:G,deleteKeyCode:j,selectionKeyCode:k,selectionOnDrag:E,selectionMode:A,onSelectionStart:v,onSelectionEnd:y,multiSelectionKeyCode:C,panActivationKeyCode:O,zoomActivationKeyCode:N,elementsSelectable:M,onMove:o,onMoveStart:a,onMoveEnd:i,zoomOnScroll:D,zoomOnPinch:B,zoomOnDoubleClick:V,panOnScroll:F,panOnScrollSpeed:U,panOnScrollMode:W,panOnDrag:X,defaultViewport:_,translateExtent:R,minZoom:I,maxZoom:L,onSelectionContextMenu:g,preventScrolling:z,noDragClassName:ie,noWheelClassName:le,noPanClassName:se,disableKeyboardA11y:ue},t.createElement(sE,null,t.createElement(iE,{edgeTypes:me,onEdgeClick:c,onEdgeDoubleClick:d,onEdgeUpdate:Z,onlyRenderVisibleElements:P,onEdgeContextMenu:$,onEdgeMouseEnter:ee,onEdgeMouseMove:te,onEdgeMouseLeave:ne,onEdgeUpdateStart:oe,onEdgeUpdateEnd:ae,edgeUpdaterRadius:re,defaultMarkerColor:H,noPanClassName:se,elevateEdgesOnSelect:!!ce,disableKeyboardA11y:ue,rfId:he},t.createElement(fE,{style:w,type:b,component:x,containerStyle:S})),t.createElement("div",{className:"react-flow__edgelabel-renderer"}),t.createElement(Fk,{nodeTypes:pe,onNodeClick:s,onNodeDoubleClick:u,onNodeMouseEnter:f,onNodeMouseMove:h,onNodeMouseLeave:p,onNodeContextMenu:m,selectNodesOnDrag:T,onlyRenderVisibleElements:P,noPanClassName:se,noDragClassName:ie,disableKeyboardA11y:ue,nodeOrigin:de,nodeExtent:fe,rfId:he})))};pE.displayName="GraphView";var mE=(0,t.memo)(pE);const gE=[[Number.NEGATIVE_INFINITY,Number.NEGATIVE_INFINITY],[Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY]],vE={rfId:"1",width:0,height:0,transform:[0,0,1],nodeInternals:new Map,edges:[],onNodesChange:null,onEdgesChange:null,hasDefaultNodes:!1,hasDefaultEdges:!1,d3Zoom:null,d3Selection:null,d3ZoomHandler:void 0,minZoom:.5,maxZoom:2,translateExtent:gE,nodeExtent:gE,nodesSelectionActive:!1,userSelectionActive:!1,userSelectionRect:null,connectionNodeId:null,connectionHandleId:null,connectionHandleType:"source",connectionPosition:{x:0,y:0},connectionStatus:null,connectionMode:Ex.Strict,domNode:null,paneDragging:!1,noPanClassName:"nopan",nodeOrigin:[0,0],nodeDragThreshold:0,snapGrid:[15,15],snapToGrid:!1,nodesDraggable:!0,nodesConnectable:!0,nodesFocusable:!0,edgesFocusable:!0,edgesUpdatable:!0,elementsSelectable:!0,elevateNodesOnSelect:!0,fitViewOnInit:!1,fitViewOnInitDone:!1,fitViewOnInitOptions:void 0,onSelectionChange:[],multiSelectionActive:!1,connectionStartHandle:null,connectionEndHandle:null,connectionClickStartHandle:null,connectOnClick:!0,ariaLiveMessage:"",autoPanOnConnect:!0,autoPanOnNodeDrag:!0,connectionRadius:20,onError:mx,isValidConnection:void 0},yE=()=>{return e=(e,t)=>({...vE,setNodes:n=>{const{nodeInternals:r,nodeOrigin:o,elevateNodesOnSelect:a}=t();e({nodeInternals:YS(n,r,o,a)})},getNodes:()=>Array.from(t().nodeInternals.values()),setEdges:n=>{const{defaultEdgeOptions:r={}}=t();e({edges:n.map((e=>({...r,...e})))})},setDefaultNodesAndEdges:(n,r)=>{const o="undefined"!==typeof n,a="undefined"!==typeof r,i=o?YS(n,new Map,t().nodeOrigin,t().elevateNodesOnSelect):new Map;e({nodeInternals:i,edges:a?r:[],hasDefaultNodes:o,hasDefaultEdges:a})},updateNodeDimensions:n=>{const{onNodesChange:r,nodeInternals:o,fitViewOnInit:a,fitViewOnInitDone:i,fitViewOnInitOptions:l,domNode:s,nodeOrigin:c}=t(),u=null===s||void 0===s?void 0:s.querySelector(".react-flow__viewport");if(!u)return;const d=window.getComputedStyle(u),{m22:f}=new window.DOMMatrixReadOnly(d.transform),h=n.reduce(((e,t)=>{const n=o.get(t.id);if(n){const r=ex(t.nodeElement);r.width&&r.height&&(n.width!==r.width||n.height!==r.height||t.forceUpdate)&&(o.set(n.id,{...n,[hx]:{...n[hx],handleBounds:{source:Ak(".source",t.nodeElement,f,c),target:Ak(".target",t.nodeElement,f,c)}},...r}),e.push({id:n.id,type:"dimensions",dimensions:r}))}return e}),[]);XS(o,c);const p=i||a&&!i&&qS(t,{initial:!0,...l});e({nodeInternals:new Map(o),fitViewOnInitDone:p}),(null===h||void 0===h?void 0:h.length)>0&&(null===r||void 0===r||r(h))},updateNodePositions:function(e){let n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],r=arguments.length>2&&void 0!==arguments[2]&&arguments[2];const{triggerNodeChanges:o}=t(),a=e.map((e=>{const t={id:e.id,type:"position",dragging:r};return n&&(t.positionAbsolute=e.positionAbsolute,t.position=e.position),t}));o(a)},triggerNodeChanges:n=>{const{onNodesChange:r,nodeInternals:o,hasDefaultNodes:a,nodeOrigin:i,getNodes:l,elevateNodesOnSelect:s}=t();if(null!==n&&void 0!==n&&n.length){if(a){const t=YS(pk(n,l()),o,i,s);e({nodeInternals:t})}null===r||void 0===r||r(n)}},addSelectedNodes:n=>{const{multiSelectionActive:r,edges:o,getNodes:a}=t();let i,l=null;r?i=n.map((e=>mk(e,!0))):(i=gk(a(),n),l=gk(o,[])),GS({changedNodes:i,changedEdges:l,get:t,set:e})},addSelectedEdges:n=>{const{multiSelectionActive:r,edges:o,getNodes:a}=t();let i,l=null;r?i=n.map((e=>mk(e,!0))):(i=gk(o,n),l=gk(a(),[])),GS({changedNodes:l,changedEdges:i,get:t,set:e})},unselectNodesAndEdges:function(){let{nodes:n,edges:r}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const{edges:o,getNodes:a}=t(),i=r||o;GS({changedNodes:(n||a()).map((e=>(e.selected=!1,mk(e.id,!1)))),changedEdges:i.map((e=>mk(e.id,!1))),get:t,set:e})},setMinZoom:n=>{const{d3Zoom:r,maxZoom:o}=t();null===r||void 0===r||r.scaleExtent([n,o]),e({minZoom:n})},setMaxZoom:n=>{const{d3Zoom:r,minZoom:o}=t();null===r||void 0===r||r.scaleExtent([o,n]),e({maxZoom:n})},setTranslateExtent:n=>{var r;null===(r=t().d3Zoom)||void 0===r||r.translateExtent(n),e({translateExtent:n})},resetSelectedElements:()=>{const{edges:n,getNodes:r}=t();GS({changedNodes:r().filter((e=>e.selected)).map((e=>mk(e.id,!1))),changedEdges:n.filter((e=>e.selected)).map((e=>mk(e.id,!1))),get:t,set:e})},setNodeExtent:n=>{const{nodeInternals:r}=t();r.forEach((e=>{e.positionAbsolute=nx(e.position,n)})),e({nodeExtent:n,nodeInternals:new Map(r)})},panBy:e=>{const{transform:n,width:r,height:o,d3Zoom:a,d3Selection:i,translateExtent:l}=t();if(!a||!i||!e.x&&!e.y)return!1;const s=Nw.translate(n[0]+e.x,n[1]+e.y).scale(n[2]),c=[[0,0],[r,o]],u=null===a||void 0===a?void 0:a.constrain()(s,c,l);return a.transform(i,u),n[0]!==u.x||n[1]!==u.y||n[2]!==u.k},cancelConnection:()=>e({connectionNodeId:vE.connectionNodeId,connectionHandleId:vE.connectionHandleId,connectionHandleType:vE.connectionHandleType,connectionStatus:vE.connectionStatus,connectionStartHandle:vE.connectionStartHandle,connectionEndHandle:vE.connectionEndHandle}),reset:()=>e({...vE})}),t=Object.is,e?qg(e,t):qg;var e,t},bE=e=>{let{children:n}=e;const r=(0,t.useRef)(null);return r.current||(r.current=yE()),t.createElement(Xw,{value:r.current},n)};bE.displayName="ReactFlowProvider";const wE=e=>{let{children:n}=e;return(0,t.useContext)(Vw)?t.createElement(t.Fragment,null,n):t.createElement(bE,null,n)};wE.displayName="ReactFlowWrapper";const xE={input:bS,default:vS,output:xS,group:SS},SE={default:Vx,straight:Bx,step:Hx,smoothstep:zx,simplebezier:Tx},kE=[0,0],EE=[15,15],AE={x:0,y:0,zoom:1},CE={width:"100%",height:"100%",overflow:"hidden",position:"relative",zIndex:0},OE=(0,t.forwardRef)(((e,n)=>{let{nodes:r,edges:o,defaultNodes:a,defaultEdges:i,className:l,nodeTypes:s=xE,edgeTypes:c=SE,onNodeClick:u,onEdgeClick:d,onInit:f,onMove:h,onMoveStart:p,onMoveEnd:m,onConnect:g,onConnectStart:v,onConnectEnd:y,onClickConnectStart:b,onClickConnectEnd:w,onNodeMouseEnter:x,onNodeMouseMove:S,onNodeMouseLeave:k,onNodeContextMenu:E,onNodeDoubleClick:A,onNodeDragStart:C,onNodeDrag:O,onNodeDragStop:N,onNodesDelete:j,onEdgesDelete:P,onSelectionChange:M,onSelectionDragStart:T,onSelectionDrag:_,onSelectionDragStop:R,onSelectionContextMenu:I,onSelectionStart:L,onSelectionEnd:z,connectionMode:H=Ex.Strict,connectionLineType:D=Ox.Bezier,connectionLineStyle:B,connectionLineComponent:F,connectionLineContainerStyle:U,deleteKeyCode:W="Backspace",selectionKeyCode:V="Shift",selectionOnDrag:X=!1,selectionMode:Y=Cx.Full,panActivationKeyCode:q="Space",multiSelectionKeyCode:K=(bx()?"Meta":"Control"),zoomActivationKeyCode:Q=(bx()?"Meta":"Control"),snapToGrid:G=!1,snapGrid:J=EE,onlyRenderVisibleElements:Z=!1,selectNodesOnDrag:$=!0,nodesDraggable:ee,nodesConnectable:te,nodesFocusable:ne,nodeOrigin:re=kE,edgesFocusable:oe,edgesUpdatable:ae,elementsSelectable:ie,defaultViewport:le=AE,minZoom:se=.5,maxZoom:ce=2,translateExtent:ue=gE,preventScrolling:de=!0,nodeExtent:fe,defaultMarkerColor:he="#b1b1b7",zoomOnScroll:pe=!0,zoomOnPinch:me=!0,panOnScroll:ge=!1,panOnScrollSpeed:ve=.5,panOnScrollMode:ye=Ax.Free,zoomOnDoubleClick:be=!0,panOnDrag:we=!0,onPaneClick:xe,onPaneMouseEnter:Se,onPaneMouseMove:ke,onPaneMouseLeave:Ee,onPaneScroll:Ae,onPaneContextMenu:Ce,children:Oe,onEdgeUpdate:Ne,onEdgeContextMenu:je,onEdgeDoubleClick:Pe,onEdgeMouseEnter:Me,onEdgeMouseMove:Te,onEdgeMouseLeave:_e,onEdgeUpdateStart:Re,onEdgeUpdateEnd:Ie,edgeUpdaterRadius:Le=10,onNodesChange:ze,onEdgesChange:He,noDragClassName:De="nodrag",noWheelClassName:Be="nowheel",noPanClassName:Fe="nopan",fitView:Ue=!1,fitViewOptions:We,connectOnClick:Ve=!0,attributionPosition:Xe,proOptions:Ye,defaultEdgeOptions:qe,elevateNodesOnSelect:Ke=!0,elevateEdgesOnSelect:Qe=!1,disableKeyboardA11y:Ge=!1,autoPanOnConnect:Je=!0,autoPanOnNodeDrag:Ze=!0,connectionRadius:$e=20,isValidConnection:et,onError:tt,style:nt,id:rt,nodeDragThreshold:ot,...at}=e;const it=rt||"1";return t.createElement("div",{...at,style:{...nt,...CE},ref:n,className:Dg(["react-flow",l]),"data-testid":"rf__wrapper",id:rt},t.createElement(wE,null,t.createElement(mE,{onInit:f,onMove:h,onMoveStart:p,onMoveEnd:m,onNodeClick:u,onEdgeClick:d,onNodeMouseEnter:x,onNodeMouseMove:S,onNodeMouseLeave:k,onNodeContextMenu:E,onNodeDoubleClick:A,nodeTypes:s,edgeTypes:c,connectionLineType:D,connectionLineStyle:B,connectionLineComponent:F,connectionLineContainerStyle:U,selectionKeyCode:V,selectionOnDrag:X,selectionMode:Y,deleteKeyCode:W,multiSelectionKeyCode:K,panActivationKeyCode:q,zoomActivationKeyCode:Q,onlyRenderVisibleElements:Z,selectNodesOnDrag:$,defaultViewport:le,translateExtent:ue,minZoom:se,maxZoom:ce,preventScrolling:de,zoomOnScroll:pe,zoomOnPinch:me,zoomOnDoubleClick:be,panOnScroll:ge,panOnScrollSpeed:ve,panOnScrollMode:ye,panOnDrag:we,onPaneClick:xe,onPaneMouseEnter:Se,onPaneMouseMove:ke,onPaneMouseLeave:Ee,onPaneScroll:Ae,onPaneContextMenu:Ce,onSelectionContextMenu:I,onSelectionStart:L,onSelectionEnd:z,onEdgeUpdate:Ne,onEdgeContextMenu:je,onEdgeDoubleClick:Pe,onEdgeMouseEnter:Me,onEdgeMouseMove:Te,onEdgeMouseLeave:_e,onEdgeUpdateStart:Re,onEdgeUpdateEnd:Ie,edgeUpdaterRadius:Le,defaultMarkerColor:he,noDragClassName:De,noWheelClassName:Be,noPanClassName:Fe,elevateEdgesOnSelect:Qe,rfId:it,disableKeyboardA11y:Ge,nodeOrigin:re,nodeExtent:fe}),t.createElement(TS,{nodes:r,edges:o,defaultNodes:a,defaultEdges:i,onConnect:g,onConnectStart:v,onConnectEnd:y,onClickConnectStart:b,onClickConnectEnd:w,nodesDraggable:ee,nodesConnectable:te,nodesFocusable:ne,edgesFocusable:oe,edgesUpdatable:ae,elementsSelectable:ie,elevateNodesOnSelect:Ke,minZoom:se,maxZoom:ce,nodeExtent:fe,onNodesChange:ze,onEdgesChange:He,snapToGrid:G,snapGrid:J,connectionMode:H,translateExtent:ue,connectOnClick:Ve,defaultEdgeOptions:qe,fitView:Ue,fitViewOptions:We,onNodesDelete:j,onEdgesDelete:P,onNodeDragStart:C,onNodeDrag:O,onNodeDragStop:N,onSelectionDrag:_,onSelectionDragStart:T,onSelectionDragStop:R,noPanClassName:Fe,nodeOrigin:re,rfId:it,autoPanOnConnect:Je,autoPanOnNodeDrag:Ze,onError:tt,connectionRadius:$e,isValidConnection:et,nodeDragThreshold:ot}),t.createElement(NS,{onSelectionChange:M}),Oe,t.createElement(Zw,{proOptions:Ye,position:Xe}),t.createElement(BS,{rfId:it,disableKeyboardA11y:Ge})))}));OE.displayName="ReactFlow";const NE=e=>{var t;return null===(t=e.domNode)||void 0===t?void 0:t.querySelector(".react-flow__edgelabel-renderer")};function jE(e){let{children:t}=e;const n=Kw(NE);return n?(0,xr.createPortal)(t,n):null}function PE(e){return n=>{const[r,o]=(0,t.useState)(n),a=(0,t.useCallback)((t=>o((n=>e(t,n)))),[]);return[r,o,a]}}const ME=PE(pk),TE=PE((function(e,t){return hk(e,t)}));function _E(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(const[n,r]of e)if(!Object.is(r,t.get(n)))return!1;return!0}if(e instanceof Set&&t instanceof Set){if(e.size!==t.size)return!1;for(const n of e)if(!t.has(n))return!1;return!0}const n=Object.keys(e);if(n.length!==Object.keys(t).length)return!1;for(const r of n)if(!Object.prototype.hasOwnProperty.call(t,r)||!Object.is(e[r],t[r]))return!1;return!0}function RE(){return t.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32"},t.createElement("path",{d:"M32 18.133H18.133V32h-4.266V18.133H0v-4.266h13.867V0h4.266v13.867H32z"}))}function IE(){return t.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 5"},t.createElement("path",{d:"M0 0h32v4.2H0z"}))}function LE(){return t.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 30"},t.createElement("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 zE(){return t.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32"},t.createElement("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 HE(){return t.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32"},t.createElement("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"}))}const DE=e=>{let{children:n,className:r,...o}=e;return t.createElement("button",{type:"button",className:Dg(["react-flow__controls-button",r]),...o},n)};DE.displayName="ControlButton";const BE=e=>({isInteractive:e.nodesDraggable||e.nodesConnectable||e.elementsSelectable,minZoomReached:e.transform[2]<=e.minZoom,maxZoomReached:e.transform[2]>=e.maxZoom}),FE=e=>{let{style:n,showZoom:r=!0,showFitView:o=!0,showInteractive:a=!0,fitViewOptions:i,onZoomIn:l,onZoomOut:s,onFitView:c,onInteractiveChange:u,className:d,children:f,position:h="bottom-left"}=e;const p=Qw(),[m,g]=(0,t.useState)(!1),{isInteractive:v,minZoomReached:y,maxZoomReached:b}=Kw(BE,_E),{zoomIn:w,zoomOut:x,fitView:S}=tk();if((0,t.useEffect)((()=>{g(!0)}),[]),!m)return null;return t.createElement(Jw,{className:Dg(["react-flow__controls",d]),position:h,style:n,"data-testid":"rf__controls"},r&&t.createElement(t.Fragment,null,t.createElement(DE,{onClick:()=>{w(),null===l||void 0===l||l()},className:"react-flow__controls-zoomin",title:"zoom in","aria-label":"zoom in",disabled:b},t.createElement(RE,null)),t.createElement(DE,{onClick:()=>{x(),null===s||void 0===s||s()},className:"react-flow__controls-zoomout",title:"zoom out","aria-label":"zoom out",disabled:y},t.createElement(IE,null))),o&&t.createElement(DE,{className:"react-flow__controls-fitview",onClick:()=>{S(i),null===c||void 0===c||c()},title:"fit view","aria-label":"fit view"},t.createElement(LE,null)),a&&t.createElement(DE,{className:"react-flow__controls-interactive",onClick:()=>{p.setState({nodesDraggable:!v,nodesConnectable:!v,elementsSelectable:!v}),null===u||void 0===u||u(!v)},title:"toggle interactivity","aria-label":"toggle interactivity"},v?t.createElement(HE,null):t.createElement(zE,null)),f)};FE.displayName="Controls";var UE=(0,t.memo)(FE);function WE(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(const[n,r]of e)if(!Object.is(r,t.get(n)))return!1;return!0}if(e instanceof Set&&t instanceof Set){if(e.size!==t.size)return!1;for(const n of e)if(!t.has(n))return!1;return!0}const n=Object.keys(e);if(n.length!==Object.keys(t).length)return!1;for(const r of n)if(!Object.prototype.hasOwnProperty.call(t,r)||!Object.is(e[r],t[r]))return!1;return!0}const VE=e=>{let{id:n,x:r,y:o,width:a,height:i,style:l,color:s,strokeColor:c,strokeWidth:u,className:d,borderRadius:f,shapeRendering:h,onClick:p,selected:m}=e;const{background:g,backgroundColor:v}=l||{},y=s||g||v;return t.createElement("rect",{className:Dg(["react-flow__minimap-node",{selected:m},d]),x:r,y:o,rx:f,ry:f,width:a,height:i,fill:y,stroke:c,strokeWidth:u,shapeRendering:h,onClick:p?e=>p(e,n):void 0})};VE.displayName="MiniMapNode";var XE=(0,t.memo)(VE);const YE=e=>e.nodeOrigin,qE=e=>e.getNodes().filter((e=>!e.hidden&&e.width&&e.height)),KE=e=>e instanceof Function?e:()=>e;var QE=(0,t.memo)((function(e){let{nodeStrokeColor:n="transparent",nodeColor:r="#e2e2e2",nodeClassName:o="",nodeBorderRadius:a=5,nodeStrokeWidth:i=2,nodeComponent:l=XE,onClick:s}=e;const c=Kw(qE,WE),u=Kw(YE),d=KE(r),f=KE(n),h=KE(o),p="undefined"===typeof window||window.chrome?"crispEdges":"geometricPrecision";return t.createElement(t.Fragment,null,c.map((e=>{const{x:n,y:r}=Zx(e,u).positionAbsolute;return t.createElement(l,{key:e.id,x:n,y:r,width:e.width,height:e.height,style:e.style,selected:e.selected,className:h(e),color:d(e),borderRadius:a,strokeColor:f(e),strokeWidth:i,shapeRendering:p,onClick:s,id:e.id})})))}));const GE=e=>{const t=e.getNodes(),n={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:n,boundingRect:t.length>0?(r=$x(t,e.nodeOrigin),o=n,sx(ix(lx(r),lx(o)))):n,rfId:e.rfId};var r,o};function JE(e){var n,r;let{style:o,className:a,nodeStrokeColor:i="transparent",nodeColor:l="#e2e2e2",nodeClassName:s="",nodeBorderRadius:c=5,nodeStrokeWidth:u=2,nodeComponent:d,maskColor:f="rgb(240, 240, 240, 0.6)",maskStrokeColor:h="none",maskStrokeWidth:p=1,position:m="bottom-right",onClick:g,onNodeClick:v,pannable:y=!1,zoomable:b=!1,ariaLabel:w="React Flow mini map",inversePan:x=!1,zoomStep:S=10,offsetScale:k=5}=e;const E=Qw(),A=(0,t.useRef)(null),{boundingRect:C,viewBB:O,rfId:N}=Kw(GE,WE),j=null!==(n=null===o||void 0===o?void 0:o.width)&&void 0!==n?n:200,P=null!==(r=null===o||void 0===o?void 0:o.height)&&void 0!==r?r:150,M=C.width/j,T=C.height/P,_=Math.max(M,T),R=_*j,I=_*P,L=k*_,z=C.x-(R-C.width)/2-L,H=C.y-(I-C.height)/2-L,D=R+2*L,B=I+2*L,F="".concat("react-flow__minimap-desc","-").concat(N),U=(0,t.useRef)(0);U.current=_,(0,t.useEffect)((()=>{if(A.current){const e=py(A.current),t=e=>{const{transform:t,d3Selection:n,d3Zoom:r}=E.getState();if("wheel"!==e.sourceEvent.type||!n||!r)return;const o=-e.sourceEvent.deltaY*(1===e.sourceEvent.deltaMode?.05:e.sourceEvent.deltaMode?1:.002)*S,a=t[2]*Math.pow(2,o);r.scaleTo(n,a)},n=e=>{const{transform:t,d3Selection:n,d3Zoom:r,translateExtent:o,width:a,height:i}=E.getState();if("mousemove"!==e.sourceEvent.type||!n||!r)return;const l=U.current*Math.max(1,t[2])*(x?-1:1),s={x:t[0]-e.sourceEvent.movementX*l,y:t[1]-e.sourceEvent.movementY*l},c=[[0,0],[a,i]],u=Nw.translate(s.x,s.y).scale(t[2]),d=r.constrain()(u,c,o);r.transform(n,d)},r=zw().on("zoom",y?n:null).on("zoom.wheel",b?t:null);return e.call(r),()=>{e.on("zoom",null)}}}),[y,b,x,S]);const W=g?e=>{const t=ky(e);g(e,{x:t[0],y:t[1]})}:void 0,V=v?(e,t)=>{const n=E.getState().nodeInternals.get(t);v(e,n)}:void 0;return t.createElement(Jw,{position:m,style:o,className:Dg(["react-flow__minimap",a]),"data-testid":"rf__minimap"},t.createElement("svg",{width:j,height:P,viewBox:"".concat(z," ").concat(H," ").concat(D," ").concat(B),role:"img","aria-labelledby":F,ref:A,onClick:W},w&&t.createElement("title",{id:F},w),t.createElement(QE,{onClick:V,nodeColor:l,nodeStrokeColor:i,nodeBorderRadius:c,nodeClassName:s,nodeStrokeWidth:u,nodeComponent:d}),t.createElement("path",{className:"react-flow__minimap-mask",d:"M".concat(z-L,",").concat(H-L,"h").concat(D+2*L,"v").concat(B+2*L,"h").concat(-D-2*L,"z\n M").concat(O.x,",").concat(O.y,"h").concat(O.width,"v").concat(O.height,"h").concat(-O.width,"z"),fill:f,fillRule:"evenodd",stroke:h,strokeWidth:p,pointerEvents:"none"})))}JE.displayName="MiniMap";var ZE=(0,t.memo)(JE);function $E(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(const[n,r]of e)if(!Object.is(r,t.get(n)))return!1;return!0}if(e instanceof Set&&t instanceof Set){if(e.size!==t.size)return!1;for(const n of e)if(!t.has(n))return!1;return!0}const n=Object.keys(e);if(n.length!==Object.keys(t).length)return!1;for(const r of n)if(!Object.prototype.hasOwnProperty.call(t,r)||!Object.is(e[r],t[r]))return!1;return!0}var eA;function tA(e){let{color:n,dimensions:r,lineWidth:o}=e;return t.createElement("path",{stroke:n,strokeWidth:o,d:"M".concat(r[0]/2," 0 V").concat(r[1]," M0 ").concat(r[1]/2," H").concat(r[0])})}function nA(e){let{color:n,radius:r}=e;return t.createElement("circle",{cx:r,cy:r,r:r,fill:n})}!function(e){e.Lines="lines",e.Dots="dots",e.Cross="cross"}(eA||(eA={}));const rA={[eA.Dots]:"#91919a",[eA.Lines]:"#eee",[eA.Cross]:"#e2e2e2"},oA={[eA.Dots]:1,[eA.Lines]:1,[eA.Cross]:6},aA=e=>({transform:e.transform,patternId:"pattern-".concat(e.rfId)});function iA(e){let{id:n,variant:r=eA.Dots,gap:o=20,size:a,lineWidth:i=1,offset:l=2,color:s,style:c,className:u}=e;const d=(0,t.useRef)(null),{transform:f,patternId:h}=Kw(aA,$E),p=s||rA[r],m=a||oA[r],g=r===eA.Dots,v=r===eA.Cross,y=Array.isArray(o)?o:[o,o],b=[y[0]*f[2]||1,y[1]*f[2]||1],w=m*f[2],x=v?[w,w]:b,S=g?[w/l,w/l]:[x[0]/l,x[1]/l];return t.createElement("svg",{className:Dg(["react-flow__background",u]),style:{...c,position:"absolute",width:"100%",height:"100%",top:0,left:0},ref:d,"data-testid":"rf__background"},t.createElement("pattern",{id:h+n,x:f[0]%b[0],y:f[1]%b[1],width:b[0],height:b[1],patternUnits:"userSpaceOnUse",patternTransform:"translate(-".concat(S[0],",-").concat(S[1],")")},g?t.createElement(nA,{color:p,radius:w/l}):t.createElement(tA,{dimensions:x,color:p,lineWidth:i})),t.createElement("rect",{x:"0",y:"0",width:"100%",height:"100%",fill:"url(#".concat(h+n,")")}))}iA.displayName="Background";var lA=(0,t.memo)(iA);const sA=e=>e.connectionNodeId,cA=(0,t.memo)((e=>{let{data:n,isConnectable:r,id:o}=e;const a=JSON.parse(n.label),[i,s]=(0,t.useState)(!1),c=!!Kw(sA);return(0,l.jsxs)("div",{className:"customNode",children:[(0,l.jsxs)("div",{className:"mainblock",style:{background:a.color},children:[(0,l.jsx)("button",{className:"editbutton",onClick:()=>{s((e=>!e))},children:"Edit"}),a.label]}),!c&&(0,l.jsx)(mS,{className:"customHandle",position:jx.Right,type:"source"}),(0,l.jsx)(mS,{className:"customHandle",position:jx.Left,type:"target",isConnectableStart:!1})]})}));function uA(e,t){const{width:n,height:r,positionAbsolute:o}=e,a=t.positionAbsolute,i=n/2,l=r/2,s=o.x+i,c=o.y+l,u=a.x+t.width/2,d=a.y+t.height/2,f=(u-s)/(2*i)-(d-c)/(2*l),h=(u-s)/(2*i)+(d-c)/(2*l),p=1/(Math.abs(f)+Math.abs(h)),m=p*f,g=p*h;return{x:i*(m+g)+s,y:l*(-m+g)+c}}function dA(e,t){const n={...e.positionAbsolute,...e},r=Math.round(n.x),o=Math.round(n.y),a=Math.round(t.x),i=Math.round(t.y);return a<=r+1?jx.Left:a>=r+n.width-1?jx.Right:i<=o+1?jx.Top:i>=n.y+n.height-1?jx.Bottom:jx.Top}const fA=function(e){const{setEdges:n}=tk(),[r,o]=(0,t.useState)("None"),a=Kw((0,t.useCallback)((t=>t.nodeInternals.get(e.source)),[e.source])),i=Kw((0,t.useCallback)((t=>t.nodeInternals.get(e.target)),[e.target]));if(!a||!i)return null;if(i===a){const t=.4*a.width,n=a.height,r="M ".concat(a.position.x+.5*a.width," ").concat(a.position.y+a.height," A ").concat(t," ").concat(n," 0 1 0 ").concat(a.position.x+.5*a.width," ").concat(a.position.y),o=a.position.x+1.4*a.width,i=(a.position.y+a.height+a.position.y)/2;return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)("path",{id:e.id,className:"react-flow__edge-path",d:r,markerEnd:e.markerEnd,style:e.style}),(0,l.jsx)(jE,{children:(0,l.jsx)("div",{style:{position:"absolute",transform:"translate(-50%, -50%) translate(".concat(o,"px,").concat(i,"px)"),fontSize:12,pointerEvents:"all"},className:"nodrag nopan",children:(0,l.jsx)("select",{children:e.data.options.map((e=>(0,l.jsx)("option",{children:e})))})})})]})}const{sx:s,sy:c,tx:u,ty:d}=function(e,t){const n=uA(e,t),r=uA(t,e),o=dA(e,n),a=dA(t,r);return{sx:n.x,sy:n.y,tx:r.x,ty:r.y,sourcePos:o,targetPos:a}}(a,i),f=function(e,t,n,r,o){const a=(e+n)/2,i=(t+r)/2;return{path:"M ".concat(e," ").concat(t," Q ").concat(a," ").concat(i+o," ").concat(n," ").concat(r),labelX:a,labelY:i+o}}(s,c,u,d,s{o(t.target.value),n((n=>n.map((n=>n.id===e.id?{...n,data:{options:e.data.options,selectedOption:t.target.value}}:n))))},children:e.data.options.map(((e,t)=>(0,l.jsx)("option",{children:e},t)))})})})]})};const hA=function(e){let{fromX:t,fromY:n,toX:r,toY:o,connectionLineStyle:a}=e;const[i]=Dx({sourceX:t,sourceY:n,targetX:r,targetY:o});return(0,l.jsxs)("g",{children:[(0,l.jsx)("path",{style:a,fill:"none",d:i}),(0,l.jsx)("circle",{cx:r,cy:o,fill:"black",r:3,stroke:"black",strokeWidth:1.5})]})};let pA=0;const mA={customNode:cA},gA={customEdge:fA},vA={strokeWidth:3,stroke:"black"},yA={style:{strokeWidth:3,stroke:"black"},type:"floating",markerEnd:{type:Nx.ArrowClosed,color:"black"}},bA=[{id:"begin",position:{x:100,y:200},data:{label:"begin"},sourcePosition:"right",targetPosition:"left"},{id:"end",position:{x:1e3,y:200},data:{label:"end"},sourcePosition:"right",targetPosition:"left"}],wA=[];function xA(e){const n=e=>"".concat(e,"_").concat(pA++),[r,o,a]=ME(bA),[i,s,c]=TE(wA),[u,d]=(0,t.useState)(null),f=(0,t.useRef)(null);(0,t.useEffect)((()=>{e.onSolutionChange({nodes:r,edges:i})}),[r,i]);const h=(0,t.useCallback)((t=>{const n={...t,type:"customEdge",data:{options:e.options,selectedOption:"None"}};s((e=>Qx(n,e)))}),[s]),p=(0,t.useCallback)((e=>{e.preventDefault(),e.dataTransfer.dropEffect="move"}),[]),m=(0,t.useCallback)((e=>{e.preventDefault();const t=e.dataTransfer.getData("application/reactflow");if("undefined"===typeof t||!t)return;const r=u.screenToFlowPosition({x:e.clientX,y:e.clientY}),a=JSON.parse(t),i={id:n(a.label),position:r,type:"customNode",data:{label:t},sourcePosition:"right",targetPosition:"left"};o((e=>e.concat(i)))}),[u]);return(0,l.jsx)("div",{className:"flowcontainer",ref:f,children:(0,l.jsxs)(OE,{nodes:r,edges:i,onNodesChange:a,onEdgesChange:c,onConnect:h,onInit:d,onDrop:m,onDragOver:p,nodeTypes:mA,edgeTypes:gA,defaultEdgeOptions:yA,connectionLineComponent:hA,connectionLineStyle:vA,children:[(0,l.jsx)(UE,{}),(0,l.jsx)(ZE,{}),(0,l.jsx)(lA,{variant:"dots",gap:12,size:1})]})})}const SA=function(e){return(0,l.jsxs)("div",{className:"sidebar",children:[(0,l.jsx)("div",{className:"description",children:"Select suitable nodes and drag them to the pane on the right"}),e.nodes.map(((e,t)=>(0,l.jsx)("div",{style:{background:e.color},className:"dndnode",onDragStart:t=>((e,t)=>{e.dataTransfer.setData("application/reactflow",JSON.stringify(t)),e.dataTransfer.effectAllowed="move"})(t,e),draggable:!0,children:e.label},t)))]})},kA=e=>{let{username:t,redirects:n}=e;const r=be(),o=e=>r("/".concat(e.toLowerCase()));return(0,l.jsxs)("div",{children:[(0,l.jsxs)("div",{className:"border",children:[(0,l.jsx)("button",{className:"homebutton",onClick:()=>o("Progress"),children:"Website.com"}),(0,l.jsxs)("div",{id:"top-buttons_",children:[(0,l.jsx)("button",{className:"info-button_",onClick:()=>o("about"),children:" About Us "}),(0,l.jsx)("button",{className:"info-button_",onClick:()=>o("contact"),children:" Contact "}),(0,l.jsx)("button",{className:"info-button_",onClick:()=>o("faq"),children:" FAQ "}),(0,l.jsx)("button",{id:"red-name-button_",onClick:()=>o("profile"),children:t})]})]}),(0,l.jsx)("div",{className:"page-title_",children:n.map(((e,t)=>(0,l.jsxs)("span",{id:"page-title-button_",onClick:e.page_handler,children:[e.page_name," ",t Welcome To Our Computer Networking World!
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n