hive-am 1.2.2 → 1.3.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.
Files changed (110) hide show
  1. package/CHANGELOG.md +15 -1
  2. package/package.json +1 -1
  3. package/server/dist/context.js +62 -0
  4. package/server/dist/db/migrations.js +7 -0
  5. package/server/dist/db.js +4 -4
  6. package/server/dist/history/claude.js +8 -2
  7. package/server/dist/http/routes/agents.js +1 -1
  8. package/server/dist/http/validate.js +2 -0
  9. package/server/dist/instructions.js +4 -0
  10. package/server/dist/models.js +2 -0
  11. package/server/dist/providers/claude.js +13 -1
  12. package/server/dist/providers/opencode-server.js +59 -0
  13. package/server/dist/providers/opencode.js +4 -1
  14. package/server/dist/stats.js +15 -3
  15. package/web/.next/BUILD_ID +1 -1
  16. package/web/.next/app-build-manifest.json +70 -70
  17. package/web/.next/app-path-routes-manifest.json +7 -7
  18. package/web/.next/build-manifest.json +2 -2
  19. package/web/.next/prerender-manifest.json +49 -49
  20. package/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  21. package/web/.next/server/app/_not-found.html +1 -1
  22. package/web/.next/server/app/_not-found.rsc +3 -3
  23. package/web/.next/server/app/agents/[id]/page.js +3 -3
  24. package/web/.next/server/app/agents/[id]/page.js.nft.json +1 -1
  25. package/web/.next/server/app/agents/[id]/page_client-reference-manifest.js +1 -1
  26. package/web/.next/server/app/agents/page.js +1 -1
  27. package/web/.next/server/app/agents/page_client-reference-manifest.js +1 -1
  28. package/web/.next/server/app/agents.html +1 -1
  29. package/web/.next/server/app/agents.rsc +4 -4
  30. package/web/.next/server/app/connections/page.js +1 -1
  31. package/web/.next/server/app/connections/page_client-reference-manifest.js +1 -1
  32. package/web/.next/server/app/connections.html +1 -1
  33. package/web/.next/server/app/connections.rsc +4 -4
  34. package/web/.next/server/app/index.html +1 -1
  35. package/web/.next/server/app/index.rsc +4 -4
  36. package/web/.next/server/app/page.js +1 -1
  37. package/web/.next/server/app/page.js.nft.json +1 -1
  38. package/web/.next/server/app/page_client-reference-manifest.js +1 -1
  39. package/web/.next/server/app/relations/page.js +1 -1
  40. package/web/.next/server/app/relations/page_client-reference-manifest.js +1 -1
  41. package/web/.next/server/app/relations.html +1 -1
  42. package/web/.next/server/app/relations.rsc +4 -4
  43. package/web/.next/server/app/resources/[id]/page.js +1 -1
  44. package/web/.next/server/app/resources/[id]/page.js.nft.json +1 -1
  45. package/web/.next/server/app/resources/[id]/page_client-reference-manifest.js +1 -1
  46. package/web/.next/server/app/resources/page.js +1 -1
  47. package/web/.next/server/app/resources/page.js.nft.json +1 -1
  48. package/web/.next/server/app/resources/page_client-reference-manifest.js +1 -1
  49. package/web/.next/server/app/resources.html +1 -1
  50. package/web/.next/server/app/resources.rsc +4 -4
  51. package/web/.next/server/app/schedules/page.js +1 -1
  52. package/web/.next/server/app/schedules/page_client-reference-manifest.js +1 -1
  53. package/web/.next/server/app/schedules.html +1 -1
  54. package/web/.next/server/app/schedules.rsc +4 -4
  55. package/web/.next/server/app/sessions/page.js +1 -1
  56. package/web/.next/server/app/sessions/page_client-reference-manifest.js +1 -1
  57. package/web/.next/server/app/sessions.html +1 -1
  58. package/web/.next/server/app/sessions.rsc +4 -4
  59. package/web/.next/server/app/skills/page.js +1 -1
  60. package/web/.next/server/app/skills/page_client-reference-manifest.js +1 -1
  61. package/web/.next/server/app/skills.html +1 -1
  62. package/web/.next/server/app/skills.rsc +4 -4
  63. package/web/.next/server/app/types/page.js +1 -1
  64. package/web/.next/server/app/types/page_client-reference-manifest.js +1 -1
  65. package/web/.next/server/app/types.html +1 -1
  66. package/web/.next/server/app/types.rsc +4 -4
  67. package/web/.next/server/app-paths-manifest.json +7 -7
  68. package/web/.next/server/chunks/143.js +1 -1
  69. package/web/.next/server/chunks/274.js +1 -1
  70. package/web/.next/server/chunks/306.js +1 -1
  71. package/web/.next/server/chunks/451.js +1 -0
  72. package/web/.next/server/chunks/505.js +1 -1
  73. package/web/.next/server/chunks/612.js +1 -1
  74. package/web/.next/server/chunks/716.js +2 -2
  75. package/web/.next/server/pages/404.html +1 -1
  76. package/web/.next/server/pages/500.html +1 -1
  77. package/web/.next/server/server-reference-manifest.json +1 -1
  78. package/web/.next/static/chunks/281-d8a0dcfaa6d064e4.js +1 -0
  79. package/web/.next/static/chunks/{291-efae53ea5f7ee92d.js → 291-23f314877fa39054.js} +1 -1
  80. package/web/.next/static/chunks/304-681348099f874a30.js +1 -0
  81. package/web/.next/static/chunks/350-0fe82e622e7a670f.js +1 -0
  82. package/web/.next/static/chunks/{491-6b4e6201f5110dff.js → 491-28f093772bd460ac.js} +1 -1
  83. package/web/.next/static/chunks/517-373a80c8ba432bdc.js +1 -0
  84. package/web/.next/static/chunks/654-92a63b3c4b412666.js +1 -0
  85. package/web/.next/static/chunks/705-780e48e55b0346bd.js +1 -0
  86. package/web/.next/static/chunks/{844-fe55292e0701f436.js → 844-519177e6198ca84f.js} +1 -1
  87. package/web/.next/static/chunks/app/agents/[id]/page-c005161cec5527d8.js +1 -0
  88. package/web/.next/static/chunks/app/agents/{page-f4c4c80f955f3967.js → page-9bb8cba69776c719.js} +1 -1
  89. package/web/.next/static/chunks/app/connections/{page-0936beaf02d863c6.js → page-eb11cfb1ffeab3ca.js} +1 -1
  90. package/web/.next/static/chunks/app/{layout-99620746d028dda8.js → layout-49b46c9b5aa512a8.js} +1 -1
  91. package/web/.next/static/chunks/app/{page-a7f292117b7d76bf.js → page-da042d146caeeab6.js} +1 -1
  92. package/web/.next/static/chunks/app/relations/{page-fba25393c8688714.js → page-a44fd515a3b0525e.js} +1 -1
  93. package/web/.next/static/chunks/app/resources/[id]/{page-d110d89bb8b5fca7.js → page-bf05836f97248ca7.js} +1 -1
  94. package/web/.next/static/chunks/app/resources/{page-bbd0b450d3f3131d.js → page-800f774e5cacf4c9.js} +1 -1
  95. package/web/.next/static/chunks/app/schedules/{page-a1124397fc760413.js → page-96976fff4ee23538.js} +1 -1
  96. package/web/.next/static/chunks/app/sessions/{page-0e322811b0cde724.js → page-a7534ebd90e982d6.js} +1 -1
  97. package/web/.next/static/chunks/app/skills/{page-22ea0ef89d9f7a13.js → page-bc1acd0663f36129.js} +1 -1
  98. package/web/.next/static/chunks/app/types/{page-18c4e1db2724d41d.js → page-ebd37e220f77c1f3.js} +1 -1
  99. package/web/.next/static/css/{b7a03c62468f4263.css → d42799b7e6a0e8a2.css} +1 -1
  100. package/web/.next/trace +29 -29
  101. package/web/.next/server/chunks/555.js +0 -1
  102. package/web/.next/static/chunks/176-aeaf907a6ea5627d.js +0 -1
  103. package/web/.next/static/chunks/350-56599dc3bf06066d.js +0 -1
  104. package/web/.next/static/chunks/486-13e08542f3a1cbac.js +0 -1
  105. package/web/.next/static/chunks/517-ccaf8cc5c733cbd8.js +0 -1
  106. package/web/.next/static/chunks/705-c7e75806f77b880c.js +0 -1
  107. package/web/.next/static/chunks/839-4aefe6e71be6e1ef.js +0 -1
  108. package/web/.next/static/chunks/app/agents/[id]/page-3faf40800981a736.js +0 -1
  109. /package/web/.next/static/{7BI__-ayGDTlOrSboD_bT → aSYzbHk1M5YeS_d3SQKTZ}/_buildManifest.js +0 -0
  110. /package/web/.next/static/{7BI__-ayGDTlOrSboD_bT → aSYzbHk1M5YeS_d3SQKTZ}/_ssgManifest.js +0 -0
@@ -1,2 +1,2 @@
1
- (()=>{var a={};a.id=964,a.ids=[964],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},976:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>d});let d=(0,c(85972).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/hugh/Documentos/projects/personal/hive-am/dist/stage/web/app/relations/page.tsx\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/hugh/Documentos/projects/personal/hive-am/dist/stage/web/app/relations/page.tsx","default")},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},3374:(a,b,c)=>{"use strict";a.exports=c(58027)},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},19121:a=>{"use strict";a.exports=require("next/dist/server/app-render/action-async-storage.external.js")},26713:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/is-bot")},28354:a=>{"use strict";a.exports=require("util")},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{"use strict";a.exports=require("path")},39639:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>fm});var d,e,f,g,h,i,j,k,l,m=c(55322),n=c(17027);function o(a){if("string"==typeof a||"number"==typeof a)return""+a;let b="";if(Array.isArray(a))for(let c=0,d;c<a.length;c++)""!==(d=o(a[c]))&&(b+=(b&&" ")+d);else for(let c in a)a[c]&&(b+=(b&&" ")+c);return b}var p={value:()=>{}};function q(){for(var a,b=0,c=arguments.length,d={};b<c;++b){if(!(a=arguments[b]+"")||a in d||/[\s.]/.test(a))throw Error("illegal type: "+a);d[a]=[]}return new r(d)}function r(a){this._=a}function s(a,b,c){for(var d=0,e=a.length;d<e;++d)if(a[d].name===b){a[d]=p,a=a.slice(0,d).concat(a.slice(d+1));break}return null!=c&&a.push({name:b,value:c}),a}function t(){}function u(a){return null==a?t:function(){return this.querySelector(a)}}function v(){return[]}function w(a){return null==a?v:function(){return this.querySelectorAll(a)}}function x(a){return function(){return this.matches(a)}}function y(a){return function(b){return b.matches(a)}}r.prototype=q.prototype={constructor:r,on:function(a,b){var c,d=this._,e=(a+"").trim().split(/^|\s+/).map(function(a){var b="",c=a.indexOf(".");if(c>=0&&(b=a.slice(c+1),a=a.slice(0,c)),a&&!d.hasOwnProperty(a))throw Error("unknown type: "+a);return{type:a,name:b}}),f=-1,g=e.length;if(arguments.length<2){for(;++f<g;)if((c=(a=e[f]).type)&&(c=function(a,b){for(var c,d=0,e=a.length;d<e;++d)if((c=a[d]).name===b)return c.value}(d[c],a.name)))return c;return}if(null!=b&&"function"!=typeof b)throw Error("invalid callback: "+b);for(;++f<g;)if(c=(a=e[f]).type)d[c]=s(d[c],a.name,b);else if(null==b)for(c in d)d[c]=s(d[c],a.name,null);return this},copy:function(){var a={},b=this._;for(var c in b)a[c]=b[c].slice();return new r(a)},call:function(a,b){if((c=arguments.length-2)>0)for(var c,d,e=Array(c),f=0;f<c;++f)e[f]=arguments[f+2];if(!this._.hasOwnProperty(a))throw Error("unknown type: "+a);for(d=this._[a],f=0,c=d.length;f<c;++f)d[f].value.apply(b,e)},apply:function(a,b,c){if(!this._.hasOwnProperty(a))throw Error("unknown type: "+a);for(var d=this._[a],e=0,f=d.length;e<f;++e)d[e].value.apply(b,c)}};var z=Array.prototype.find;function A(){return this.firstElementChild}var B=Array.prototype.filter;function C(){return Array.from(this.children)}function D(a){return Array(a.length)}function E(a,b){this.ownerDocument=a.ownerDocument,this.namespaceURI=a.namespaceURI,this._next=null,this._parent=a,this.__data__=b}function F(a,b,c,d,e,f){for(var g,h=0,i=b.length,j=f.length;h<j;++h)(g=b[h])?(g.__data__=f[h],d[h]=g):c[h]=new E(a,f[h]);for(;h<i;++h)(g=b[h])&&(e[h]=g)}function G(a,b,c,d,e,f,g){var h,i,j,k=new Map,l=b.length,m=f.length,n=Array(l);for(h=0;h<l;++h)(i=b[h])&&(n[h]=j=g.call(i,i.__data__,h,b)+"",k.has(j)?e[h]=i:k.set(j,i));for(h=0;h<m;++h)j=g.call(a,f[h],h,f)+"",(i=k.get(j))?(d[h]=i,i.__data__=f[h],k.delete(j)):c[h]=new E(a,f[h]);for(h=0;h<l;++h)(i=b[h])&&k.get(n[h])===i&&(e[h]=i)}function H(a){return a.__data__}function I(a,b){return a<b?-1:a>b?1:a>=b?0:NaN}E.prototype={constructor:E,appendChild:function(a){return this._parent.insertBefore(a,this._next)},insertBefore:function(a,b){return this._parent.insertBefore(a,b)},querySelector:function(a){return this._parent.querySelector(a)},querySelectorAll:function(a){return this._parent.querySelectorAll(a)}};var J="http://www.w3.org/1999/xhtml";let K={svg:"http://www.w3.org/2000/svg",xhtml:J,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function L(a){var b=a+="",c=b.indexOf(":");return c>=0&&"xmlns"!==(b=a.slice(0,c))&&(a=a.slice(c+1)),K.hasOwnProperty(b)?{space:K[b],local:a}:a}function M(a){return a.ownerDocument&&a.ownerDocument.defaultView||a.document&&a||a.defaultView}function N(a,b){return a.style.getPropertyValue(b)||M(a).getComputedStyle(a,null).getPropertyValue(b)}function O(a){return a.trim().split(/^|\s+/)}function P(a){return a.classList||new Q(a)}function Q(a){this._node=a,this._names=O(a.getAttribute("class")||"")}function R(a,b){for(var c=P(a),d=-1,e=b.length;++d<e;)c.add(b[d])}function S(a,b){for(var c=P(a),d=-1,e=b.length;++d<e;)c.remove(b[d])}function T(){this.textContent=""}function U(){this.innerHTML=""}function V(){this.nextSibling&&this.parentNode.appendChild(this)}function W(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function X(a){var b=L(a);return(b.local?function(a){return function(){return this.ownerDocument.createElementNS(a.space,a.local)}}:function(a){return function(){var b=this.ownerDocument,c=this.namespaceURI;return c===J&&b.documentElement.namespaceURI===J?b.createElement(a):b.createElementNS(c,a)}})(b)}function Y(){return null}function Z(){var a=this.parentNode;a&&a.removeChild(this)}function $(){var a=this.cloneNode(!1),b=this.parentNode;return b?b.insertBefore(a,this.nextSibling):a}function _(){var a=this.cloneNode(!0),b=this.parentNode;return b?b.insertBefore(a,this.nextSibling):a}function aa(a){return function(){var b=this.__on;if(b){for(var c,d=0,e=-1,f=b.length;d<f;++d)(c=b[d],a.type&&c.type!==a.type||c.name!==a.name)?b[++e]=c:this.removeEventListener(c.type,c.listener,c.options);++e?b.length=e:delete this.__on}}}function ab(a,b,c){return function(){var d,e=this.__on,f=function(a){b.call(this,a,this.__data__)};if(e){for(var g=0,h=e.length;g<h;++g)if((d=e[g]).type===a.type&&d.name===a.name){this.removeEventListener(d.type,d.listener,d.options),this.addEventListener(d.type,d.listener=f,d.options=c),d.value=b;return}}this.addEventListener(a.type,f,c),d={type:a.type,name:a.name,value:b,listener:f,options:c},e?e.push(d):this.__on=[d]}}function ac(a,b,c){var d=M(a),e=d.CustomEvent;"function"==typeof e?e=new e(b,c):(e=d.document.createEvent("Event"),c?(e.initEvent(b,c.bubbles,c.cancelable),e.detail=c.detail):e.initEvent(b,!1,!1)),a.dispatchEvent(e)}Q.prototype={add:function(a){0>this._names.indexOf(a)&&(this._names.push(a),this._node.setAttribute("class",this._names.join(" ")))},remove:function(a){var b=this._names.indexOf(a);b>=0&&(this._names.splice(b,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(a){return this._names.indexOf(a)>=0}};var ad=[null];function ae(a,b){this._groups=a,this._parents=b}function af(){return new ae([[document.documentElement]],ad)}function ag(a){return((a=Math.exp(a))+1/a)/2}ae.prototype=af.prototype={constructor:ae,select:function(a){"function"!=typeof a&&(a=u(a));for(var b=this._groups,c=b.length,d=Array(c),e=0;e<c;++e)for(var f,g,h=b[e],i=h.length,j=d[e]=Array(i),k=0;k<i;++k)(f=h[k])&&(g=a.call(f,f.__data__,k,h))&&("__data__"in f&&(g.__data__=f.__data__),j[k]=g);return new ae(d,this._parents)},selectAll:function(a){if("function"==typeof a){var b;b=a,a=function(){var a;return a=b.apply(this,arguments),null==a?[]:Array.isArray(a)?a:Array.from(a)}}else a=w(a);for(var c=this._groups,d=c.length,e=[],f=[],g=0;g<d;++g)for(var h,i=c[g],j=i.length,k=0;k<j;++k)(h=i[k])&&(e.push(a.call(h,h.__data__,k,i)),f.push(h));return new ae(e,f)},selectChild:function(a){var b;return this.select(null==a?A:(b="function"==typeof a?a:y(a),function(){return z.call(this.children,b)}))},selectChildren:function(a){var b;return this.selectAll(null==a?C:(b="function"==typeof a?a:y(a),function(){return B.call(this.children,b)}))},filter:function(a){"function"!=typeof a&&(a=x(a));for(var b=this._groups,c=b.length,d=Array(c),e=0;e<c;++e)for(var f,g=b[e],h=g.length,i=d[e]=[],j=0;j<h;++j)(f=g[j])&&a.call(f,f.__data__,j,g)&&i.push(f);return new ae(d,this._parents)},data:function(a,b){if(!arguments.length)return Array.from(this,H);var c=b?G:F,d=this._parents,e=this._groups;"function"!=typeof a&&(s=a,a=function(){return s});for(var f=e.length,g=Array(f),h=Array(f),i=Array(f),j=0;j<f;++j){var k=d[j],l=e[j],m=l.length,n="object"==typeof(r=a.call(k,k&&k.__data__,j,d))&&"length"in r?r:Array.from(r),o=n.length,p=h[j]=Array(o),q=g[j]=Array(o);c(k,l,p,q,i[j]=Array(m),n,b);for(var r,s,t,u,v=0,w=0;v<o;++v)if(t=p[v]){for(v>=w&&(w=v+1);!(u=q[w])&&++w<o;);t._next=u||null}}return(g=new ae(g,d))._enter=h,g._exit=i,g},enter:function(){return new ae(this._enter||this._groups.map(D),this._parents)},exit:function(){return new ae(this._exit||this._groups.map(D),this._parents)},join:function(a,b,c){var d=this.enter(),e=this,f=this.exit();return"function"==typeof a?(d=a(d))&&(d=d.selection()):d=d.append(a+""),null!=b&&(e=b(e))&&(e=e.selection()),null==c?f.remove():c(f),d&&e?d.merge(e).order():e},merge:function(a){for(var b=a.selection?a.selection():a,c=this._groups,d=b._groups,e=c.length,f=d.length,g=Math.min(e,f),h=Array(e),i=0;i<g;++i)for(var j,k=c[i],l=d[i],m=k.length,n=h[i]=Array(m),o=0;o<m;++o)(j=k[o]||l[o])&&(n[o]=j);for(;i<e;++i)h[i]=c[i];return new ae(h,this._parents)},selection:function(){return this},order:function(){for(var a=this._groups,b=-1,c=a.length;++b<c;)for(var d,e=a[b],f=e.length-1,g=e[f];--f>=0;)(d=e[f])&&(g&&4^d.compareDocumentPosition(g)&&g.parentNode.insertBefore(d,g),g=d);return this},sort:function(a){function b(b,c){return b&&c?a(b.__data__,c.__data__):!b-!c}a||(a=I);for(var c=this._groups,d=c.length,e=Array(d),f=0;f<d;++f){for(var g,h=c[f],i=h.length,j=e[f]=Array(i),k=0;k<i;++k)(g=h[k])&&(j[k]=g);j.sort(b)}return new ae(e,this._parents).order()},call:function(){var a=arguments[0];return arguments[0]=this,a.apply(null,arguments),this},nodes:function(){return Array.from(this)},node:function(){for(var a=this._groups,b=0,c=a.length;b<c;++b)for(var d=a[b],e=0,f=d.length;e<f;++e){var g=d[e];if(g)return g}return null},size:function(){let a=0;for(let b of this)++a;return a},empty:function(){return!this.node()},each:function(a){for(var b=this._groups,c=0,d=b.length;c<d;++c)for(var e,f=b[c],g=0,h=f.length;g<h;++g)(e=f[g])&&a.call(e,e.__data__,g,f);return this},attr:function(a,b){var c=L(a);if(arguments.length<2){var d=this.node();return c.local?d.getAttributeNS(c.space,c.local):d.getAttribute(c)}return this.each((null==b?c.local?function(a){return function(){this.removeAttributeNS(a.space,a.local)}}:function(a){return function(){this.removeAttribute(a)}}:"function"==typeof b?c.local?function(a,b){return function(){var c=b.apply(this,arguments);null==c?this.removeAttributeNS(a.space,a.local):this.setAttributeNS(a.space,a.local,c)}}:function(a,b){return function(){var c=b.apply(this,arguments);null==c?this.removeAttribute(a):this.setAttribute(a,c)}}:c.local?function(a,b){return function(){this.setAttributeNS(a.space,a.local,b)}}:function(a,b){return function(){this.setAttribute(a,b)}})(c,b))},style:function(a,b,c){return arguments.length>1?this.each((null==b?function(a){return function(){this.style.removeProperty(a)}}:"function"==typeof b?function(a,b,c){return function(){var d=b.apply(this,arguments);null==d?this.style.removeProperty(a):this.style.setProperty(a,d,c)}}:function(a,b,c){return function(){this.style.setProperty(a,b,c)}})(a,b,null==c?"":c)):N(this.node(),a)},property:function(a,b){return arguments.length>1?this.each((null==b?function(a){return function(){delete this[a]}}:"function"==typeof b?function(a,b){return function(){var c=b.apply(this,arguments);null==c?delete this[a]:this[a]=c}}:function(a,b){return function(){this[a]=b}})(a,b)):this.node()[a]},classed:function(a,b){var c=O(a+"");if(arguments.length<2){for(var d=P(this.node()),e=-1,f=c.length;++e<f;)if(!d.contains(c[e]))return!1;return!0}return this.each(("function"==typeof b?function(a,b){return function(){(b.apply(this,arguments)?R:S)(this,a)}}:b?function(a){return function(){R(this,a)}}:function(a){return function(){S(this,a)}})(c,b))},text:function(a){return arguments.length?this.each(null==a?T:("function"==typeof a?function(a){return function(){var b=a.apply(this,arguments);this.textContent=null==b?"":b}}:function(a){return function(){this.textContent=a}})(a)):this.node().textContent},html:function(a){return arguments.length?this.each(null==a?U:("function"==typeof a?function(a){return function(){var b=a.apply(this,arguments);this.innerHTML=null==b?"":b}}:function(a){return function(){this.innerHTML=a}})(a)):this.node().innerHTML},raise:function(){return this.each(V)},lower:function(){return this.each(W)},append:function(a){var b="function"==typeof a?a:X(a);return this.select(function(){return this.appendChild(b.apply(this,arguments))})},insert:function(a,b){var c="function"==typeof a?a:X(a),d=null==b?Y:"function"==typeof b?b:u(b);return this.select(function(){return this.insertBefore(c.apply(this,arguments),d.apply(this,arguments)||null)})},remove:function(){return this.each(Z)},clone:function(a){return this.select(a?_:$)},datum:function(a){return arguments.length?this.property("__data__",a):this.node().__data__},on:function(a,b,c){var d,e,f=(a+"").trim().split(/^|\s+/).map(function(a){var b="",c=a.indexOf(".");return c>=0&&(b=a.slice(c+1),a=a.slice(0,c)),{type:a,name:b}}),g=f.length;if(arguments.length<2){var h=this.node().__on;if(h){for(var i,j=0,k=h.length;j<k;++j)for(d=0,i=h[j];d<g;++d)if((e=f[d]).type===i.type&&e.name===i.name)return i.value}return}for(d=0,h=b?ab:aa;d<g;++d)this.each(h(f[d],b,c));return this},dispatch:function(a,b){return this.each(("function"==typeof b?function(a,b){return function(){return ac(this,a,b.apply(this,arguments))}}:function(a,b){return function(){return ac(this,a,b)}})(a,b))},[Symbol.iterator]:function*(){for(var a=this._groups,b=0,c=a.length;b<c;++b)for(var d,e=a[b],f=0,g=e.length;f<g;++f)(d=e[f])&&(yield d)}},(function(a,{sourceEvent:b,subject:c,target:d,identifier:e,active:f,x:g,y:h,dx:i,dy:j,dispatch:k}){Object.defineProperties(this,{type:{value:a,enumerable:!0,configurable:!0},sourceEvent:{value:b,enumerable:!0,configurable:!0},subject:{value:c,enumerable:!0,configurable:!0},target:{value:d,enumerable:!0,configurable:!0},identifier:{value:e,enumerable:!0,configurable:!0},active:{value:f,enumerable:!0,configurable:!0},x:{value:g,enumerable:!0,configurable:!0},y:{value:h,enumerable:!0,configurable:!0},dx:{value:i,enumerable:!0,configurable:!0},dy:{value:j,enumerable:!0,configurable:!0},_:{value:k}})}).prototype.on=function(){var a=this._.on.apply(this._,arguments);return a===this._?this:a},!function a(b,c,d){function e(a,e){var f,g,h=a[0],i=a[1],j=a[2],k=e[0],l=e[1],m=e[2],n=k-h,o=l-i,p=n*n+o*o;if(p<1e-12)g=Math.log(m/j)/b,f=function(a){return[h+a*n,i+a*o,j*Math.exp(b*a*g)]};else{var q=Math.sqrt(p),r=(m*m-j*j+d*p)/(2*j*c*q),s=(m*m-j*j-d*p)/(2*m*c*q),t=Math.log(Math.sqrt(r*r+1)-r);g=(Math.log(Math.sqrt(s*s+1)-s)-t)/b,f=function(a){var d,e,f=a*g,k=ag(t),l=j/(c*q)*(k*(((d=Math.exp(2*(d=b*f+t)))-1)/(d+1))-((e=Math.exp(e=t))-1/e)/2);return[h+l*n,i+l*o,j*k/ag(b*f+t)]}}return f.duration=1e3*g*b/Math.SQRT2,f}return e.rho=function(b){var c=Math.max(.001,+b),d=c*c;return a(c,d,d*d)},e}(Math.SQRT2,2,4);var ah,ai,aj=0,ak=0,al=0,am=0,an=0,ao=0,ap="object"==typeof performance&&performance.now?performance:Date,aq="object"==typeof window&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(a){setTimeout(a,17)};function ar(){return an||(aq(as),an=ap.now()+ao)}function as(){an=0}function at(){this._call=this._time=this._next=null}function au(a,b,c){var d=new at;return d.restart(a,b,c),d}function av(){an=(am=ap.now())+ao,aj=ak=0;try{ar(),++aj;for(var a,b=ah;b;)(a=an-b._time)>=0&&b._call.call(void 0,a),b=b._next;--aj}finally{aj=0,function(){for(var a,b,c=ah,d=1/0;c;)c._call?(d>c._time&&(d=c._time),a=c,c=c._next):(b=c._next,c._next=null,c=a?a._next=b:ah=b);ai=a,ax(d)}(),an=0}}function aw(){var a=ap.now(),b=a-am;b>1e3&&(ao-=b,am=a)}function ax(a){!aj&&(ak&&(ak=clearTimeout(ak)),a-an>24?(a<1/0&&(ak=setTimeout(av,a-ap.now()-ao)),al&&(al=clearInterval(al))):(al||(am=ap.now(),al=setInterval(aw,1e3)),aj=1,aq(av)))}function ay(a,b,c){var d=new at;return b=null==b?0:+b,d.restart(c=>{d.stop(),a(c+b)},b,c),d}at.prototype=au.prototype={constructor:at,restart:function(a,b,c){if("function"!=typeof a)throw TypeError("callback is not a function");c=(null==c?ar():+c)+(null==b?0:+b),this._next||ai===this||(ai?ai._next=this:ah=this,ai=this),this._call=a,this._time=c,ax()},stop:function(){this._call&&(this._call=null,this._time=1/0,ax())}};var az=q("start","end","cancel","interrupt"),aA=[];function aB(a,b,c,d,e,f){var g=a.__transition;if(g){if(c in g)return}else a.__transition={};!function(a,b,c){var d,e=a.__transition;function f(i){var j,k,l,m;if(1!==c.state)return h();for(j in e)if((m=e[j]).name===c.name){if(3===m.state)return ay(f);4===m.state?(m.state=6,m.timer.stop(),m.on.call("interrupt",a,a.__data__,m.index,m.group),delete e[j]):+j<b&&(m.state=6,m.timer.stop(),m.on.call("cancel",a,a.__data__,m.index,m.group),delete e[j])}if(ay(function(){3===c.state&&(c.state=4,c.timer.restart(g,c.delay,c.time),g(i))}),c.state=2,c.on.call("start",a,a.__data__,c.index,c.group),2===c.state){for(j=0,c.state=3,d=Array(l=c.tween.length),k=-1;j<l;++j)(m=c.tween[j].value.call(a,a.__data__,c.index,c.group))&&(d[++k]=m);d.length=k+1}}function g(b){for(var e=b<c.duration?c.ease.call(null,b/c.duration):(c.timer.restart(h),c.state=5,1),f=-1,g=d.length;++f<g;)d[f].call(a,e);5===c.state&&(c.on.call("end",a,a.__data__,c.index,c.group),h())}function h(){for(var d in c.state=6,c.timer.stop(),delete e[b],e)return;delete a.__transition}e[b]=c,c.timer=au(function(a){c.state=1,c.timer.restart(f,c.delay,c.time),c.delay<=a&&f(a-c.delay)},0,c.time)}(a,c,{name:b,index:d,group:e,on:az,tween:aA,time:f.time,delay:f.delay,duration:f.duration,ease:f.ease,timer:null,state:0})}function aC(a,b){var c=aE(a,b);if(c.state>0)throw Error("too late; already scheduled");return c}function aD(a,b){var c=aE(a,b);if(c.state>3)throw Error("too late; already running");return c}function aE(a,b){var c=a.__transition;if(!c||!(c=c[b]))throw Error("transition not found");return c}function aF(a,b){return a*=1,b*=1,function(c){return a*(1-c)+b*c}}var aG=180/Math.PI,aH={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function aI(a,b,c,d,e,f){var g,h,i;return(g=Math.sqrt(a*a+b*b))&&(a/=g,b/=g),(i=a*c+b*d)&&(c-=a*i,d-=b*i),(h=Math.sqrt(c*c+d*d))&&(c/=h,d/=h,i/=h),a*d<b*c&&(a=-a,b=-b,i=-i,g=-g),{translateX:e,translateY:f,rotate:Math.atan2(b,a)*aG,skewX:Math.atan(i)*aG,scaleX:g,scaleY:h}}function aJ(a,b,c,d){function e(a){return a.length?a.pop()+" ":""}return function(f,g){var h,i,j,k,l=[],m=[];return f=a(f),g=a(g),!function(a,d,e,f,g,h){if(a!==e||d!==f){var i=g.push("translate(",null,b,null,c);h.push({i:i-4,x:aF(a,e)},{i:i-2,x:aF(d,f)})}else(e||f)&&g.push("translate("+e+b+f+c)}(f.translateX,f.translateY,g.translateX,g.translateY,l,m),h=f.rotate,i=g.rotate,h!==i?(h-i>180?i+=360:i-h>180&&(h+=360),m.push({i:l.push(e(l)+"rotate(",null,d)-2,x:aF(h,i)})):i&&l.push(e(l)+"rotate("+i+d),j=f.skewX,k=g.skewX,j!==k?m.push({i:l.push(e(l)+"skewX(",null,d)-2,x:aF(j,k)}):k&&l.push(e(l)+"skewX("+k+d),!function(a,b,c,d,f,g){if(a!==c||b!==d){var h=f.push(e(f)+"scale(",null,",",null,")");g.push({i:h-4,x:aF(a,c)},{i:h-2,x:aF(b,d)})}else(1!==c||1!==d)&&f.push(e(f)+"scale("+c+","+d+")")}(f.scaleX,f.scaleY,g.scaleX,g.scaleY,l,m),f=g=null,function(a){for(var b,c=-1,d=m.length;++c<d;)l[(b=m[c]).i]=b.x(a);return l.join("")}}}var aK=aJ(function(a){let b=new("function"==typeof DOMMatrix?DOMMatrix:WebKitCSSMatrix)(a+"");return b.isIdentity?aH:aI(b.a,b.b,b.c,b.d,b.e,b.f)},"px, ","px)","deg)"),aL=aJ(function(a){return null==a?aH:(d||(d=document.createElementNS("http://www.w3.org/2000/svg","g")),d.setAttribute("transform",a),a=d.transform.baseVal.consolidate())?aI((a=a.matrix).a,a.b,a.c,a.d,a.e,a.f):aH},", ",")",")");function aM(a,b,c){var d=a._id;return a.each(function(){var a=aD(this,d);(a.value||(a.value={}))[b]=c.apply(this,arguments)}),function(a){return aE(a,d).value[b]}}function aN(a,b,c){a.prototype=b.prototype=c,c.constructor=a}function aO(a,b){var c=Object.create(a.prototype);for(var d in b)c[d]=b[d];return c}function aP(){}var aQ="\\s*([+-]?\\d+)\\s*",aR="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",aS="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",aT=/^#([0-9a-f]{3,8})$/,aU=RegExp(`^rgb\\(${aQ},${aQ},${aQ}\\)$`),aV=RegExp(`^rgb\\(${aS},${aS},${aS}\\)$`),aW=RegExp(`^rgba\\(${aQ},${aQ},${aQ},${aR}\\)$`),aX=RegExp(`^rgba\\(${aS},${aS},${aS},${aR}\\)$`),aY=RegExp(`^hsl\\(${aR},${aS},${aS}\\)$`),aZ=RegExp(`^hsla\\(${aR},${aS},${aS},${aR}\\)$`),a$={aliceblue:0xf0f8ff,antiquewhite:0xfaebd7,aqua:65535,aquamarine:8388564,azure:0xf0ffff,beige:0xf5f5dc,bisque:0xffe4c4,black:0,blanchedalmond:0xffebcd,blue:255,blueviolet:9055202,brown:0xa52a2a,burlywood:0xdeb887,cadetblue:6266528,chartreuse:8388352,chocolate:0xd2691e,coral:0xff7f50,cornflowerblue:6591981,cornsilk:0xfff8dc,crimson:0xdc143c,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:0xb8860b,darkgray:0xa9a9a9,darkgreen:25600,darkgrey:0xa9a9a9,darkkhaki:0xbdb76b,darkmagenta:9109643,darkolivegreen:5597999,darkorange:0xff8c00,darkorchid:0x9932cc,darkred:9109504,darksalmon:0xe9967a,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:0xff1493,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:0xb22222,floralwhite:0xfffaf0,forestgreen:2263842,fuchsia:0xff00ff,gainsboro:0xdcdcdc,ghostwhite:0xf8f8ff,gold:0xffd700,goldenrod:0xdaa520,gray:8421504,green:32768,greenyellow:0xadff2f,grey:8421504,honeydew:0xf0fff0,hotpink:0xff69b4,indianred:0xcd5c5c,indigo:4915330,ivory:0xfffff0,khaki:0xf0e68c,lavender:0xe6e6fa,lavenderblush:0xfff0f5,lawngreen:8190976,lemonchiffon:0xfffacd,lightblue:0xadd8e6,lightcoral:0xf08080,lightcyan:0xe0ffff,lightgoldenrodyellow:0xfafad2,lightgray:0xd3d3d3,lightgreen:9498256,lightgrey:0xd3d3d3,lightpink:0xffb6c1,lightsalmon:0xffa07a,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:0xb0c4de,lightyellow:0xffffe0,lime:65280,limegreen:3329330,linen:0xfaf0e6,magenta:0xff00ff,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:0xba55d3,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:0xc71585,midnightblue:1644912,mintcream:0xf5fffa,mistyrose:0xffe4e1,moccasin:0xffe4b5,navajowhite:0xffdead,navy:128,oldlace:0xfdf5e6,olive:8421376,olivedrab:7048739,orange:0xffa500,orangered:0xff4500,orchid:0xda70d6,palegoldenrod:0xeee8aa,palegreen:0x98fb98,paleturquoise:0xafeeee,palevioletred:0xdb7093,papayawhip:0xffefd5,peachpuff:0xffdab9,peru:0xcd853f,pink:0xffc0cb,plum:0xdda0dd,powderblue:0xb0e0e6,purple:8388736,rebeccapurple:6697881,red:0xff0000,rosybrown:0xbc8f8f,royalblue:4286945,saddlebrown:9127187,salmon:0xfa8072,sandybrown:0xf4a460,seagreen:3050327,seashell:0xfff5ee,sienna:0xa0522d,silver:0xc0c0c0,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:0xfffafa,springgreen:65407,steelblue:4620980,tan:0xd2b48c,teal:32896,thistle:0xd8bfd8,tomato:0xff6347,turquoise:4251856,violet:0xee82ee,wheat:0xf5deb3,white:0xffffff,whitesmoke:0xf5f5f5,yellow:0xffff00,yellowgreen:0x9acd32};function a_(){return this.rgb().formatHex()}function a0(){return this.rgb().formatRgb()}function a1(a){var b,c;return a=(a+"").trim().toLowerCase(),(b=aT.exec(a))?(c=b[1].length,b=parseInt(b[1],16),6===c?a2(b):3===c?new a5(b>>8&15|b>>4&240,b>>4&15|240&b,(15&b)<<4|15&b,1):8===c?a3(b>>24&255,b>>16&255,b>>8&255,(255&b)/255):4===c?a3(b>>12&15|b>>8&240,b>>8&15|b>>4&240,b>>4&15|240&b,((15&b)<<4|15&b)/255):null):(b=aU.exec(a))?new a5(b[1],b[2],b[3],1):(b=aV.exec(a))?new a5(255*b[1]/100,255*b[2]/100,255*b[3]/100,1):(b=aW.exec(a))?a3(b[1],b[2],b[3],b[4]):(b=aX.exec(a))?a3(255*b[1]/100,255*b[2]/100,255*b[3]/100,b[4]):(b=aY.exec(a))?bb(b[1],b[2]/100,b[3]/100,1):(b=aZ.exec(a))?bb(b[1],b[2]/100,b[3]/100,b[4]):a$.hasOwnProperty(a)?a2(a$[a]):"transparent"===a?new a5(NaN,NaN,NaN,0):null}function a2(a){return new a5(a>>16&255,a>>8&255,255&a,1)}function a3(a,b,c,d){return d<=0&&(a=b=c=NaN),new a5(a,b,c,d)}function a4(a,b,c,d){var e;return 1==arguments.length?((e=a)instanceof aP||(e=a1(e)),e)?new a5((e=e.rgb()).r,e.g,e.b,e.opacity):new a5:new a5(a,b,c,null==d?1:d)}function a5(a,b,c,d){this.r=+a,this.g=+b,this.b=+c,this.opacity=+d}function a6(){return`#${ba(this.r)}${ba(this.g)}${ba(this.b)}`}function a7(){let a=a8(this.opacity);return`${1===a?"rgb(":"rgba("}${a9(this.r)}, ${a9(this.g)}, ${a9(this.b)}${1===a?")":`, ${a})`}`}function a8(a){return isNaN(a)?1:Math.max(0,Math.min(1,a))}function a9(a){return Math.max(0,Math.min(255,Math.round(a)||0))}function ba(a){return((a=a9(a))<16?"0":"")+a.toString(16)}function bb(a,b,c,d){return d<=0?a=b=c=NaN:c<=0||c>=1?a=b=NaN:b<=0&&(a=NaN),new bd(a,b,c,d)}function bc(a){if(a instanceof bd)return new bd(a.h,a.s,a.l,a.opacity);if(a instanceof aP||(a=a1(a)),!a)return new bd;if(a instanceof bd)return a;var b=(a=a.rgb()).r/255,c=a.g/255,d=a.b/255,e=Math.min(b,c,d),f=Math.max(b,c,d),g=NaN,h=f-e,i=(f+e)/2;return h?(g=b===f?(c-d)/h+(c<d)*6:c===f?(d-b)/h+2:(b-c)/h+4,h/=i<.5?f+e:2-f-e,g*=60):h=i>0&&i<1?0:g,new bd(g,h,i,a.opacity)}function bd(a,b,c,d){this.h=+a,this.s=+b,this.l=+c,this.opacity=+d}function be(a){return(a=(a||0)%360)<0?a+360:a}function bf(a){return Math.max(0,Math.min(1,a||0))}function bg(a,b,c){return(a<60?b+(c-b)*a/60:a<180?c:a<240?b+(c-b)*(240-a)/60:b)*255}function bh(a,b,c,d,e){var f=a*a,g=f*a;return((1-3*a+3*f-g)*b+(4-6*f+3*g)*c+(1+3*a+3*f-3*g)*d+g*e)/6}aN(aP,a1,{copy(a){return Object.assign(new this.constructor,this,a)},displayable(){return this.rgb().displayable()},hex:a_,formatHex:a_,formatHex8:function(){return this.rgb().formatHex8()},formatHsl:function(){return bc(this).formatHsl()},formatRgb:a0,toString:a0}),aN(a5,a4,aO(aP,{brighter(a){return a=null==a?1.4285714285714286:Math.pow(1.4285714285714286,a),new a5(this.r*a,this.g*a,this.b*a,this.opacity)},darker(a){return a=null==a?.7:Math.pow(.7,a),new a5(this.r*a,this.g*a,this.b*a,this.opacity)},rgb(){return this},clamp(){return new a5(a9(this.r),a9(this.g),a9(this.b),a8(this.opacity))},displayable(){return -.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:a6,formatHex:a6,formatHex8:function(){return`#${ba(this.r)}${ba(this.g)}${ba(this.b)}${ba((isNaN(this.opacity)?1:this.opacity)*255)}`},formatRgb:a7,toString:a7})),aN(bd,function(a,b,c,d){return 1==arguments.length?bc(a):new bd(a,b,c,null==d?1:d)},aO(aP,{brighter(a){return a=null==a?1.4285714285714286:Math.pow(1.4285714285714286,a),new bd(this.h,this.s,this.l*a,this.opacity)},darker(a){return a=null==a?.7:Math.pow(.7,a),new bd(this.h,this.s,this.l*a,this.opacity)},rgb(){var a=this.h%360+(this.h<0)*360,b=isNaN(a)||isNaN(this.s)?0:this.s,c=this.l,d=c+(c<.5?c:1-c)*b,e=2*c-d;return new a5(bg(a>=240?a-240:a+120,e,d),bg(a,e,d),bg(a<120?a+240:a-120,e,d),this.opacity)},clamp(){return new bd(be(this.h),bf(this.s),bf(this.l),a8(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){let a=a8(this.opacity);return`${1===a?"hsl(":"hsla("}${be(this.h)}, ${100*bf(this.s)}%, ${100*bf(this.l)}%${1===a?")":`, ${a})`}`}}));let bi=a=>()=>a;function bj(a,b){var c=b-a;return c?function(b){return a+b*c}:bi(isNaN(a)?b:a)}let bk=function a(b){var c,d=1==(c=+b)?bj:function(a,b){var d,e,f;return b-a?(d=a,e=b,d=Math.pow(d,f=c),e=Math.pow(e,f)-d,f=1/f,function(a){return Math.pow(d+a*e,f)}):bi(isNaN(a)?b:a)};function e(a,b){var c=d((a=a4(a)).r,(b=a4(b)).r),e=d(a.g,b.g),f=d(a.b,b.b),g=bj(a.opacity,b.opacity);return function(b){return a.r=c(b),a.g=e(b),a.b=f(b),a.opacity=g(b),a+""}}return e.gamma=a,e}(1);function bl(a){return function(b){var c,d,e=b.length,f=Array(e),g=Array(e),h=Array(e);for(c=0;c<e;++c)d=a4(b[c]),f[c]=d.r||0,g[c]=d.g||0,h[c]=d.b||0;return f=a(f),g=a(g),h=a(h),d.opacity=1,function(a){return d.r=f(a),d.g=g(a),d.b=h(a),d+""}}}bl(function(a){var b=a.length-1;return function(c){var d=c<=0?c=0:c>=1?(c=1,b-1):Math.floor(c*b),e=a[d],f=a[d+1],g=d>0?a[d-1]:2*e-f,h=d<b-1?a[d+2]:2*f-e;return bh((c-d/b)*b,g,e,f,h)}}),bl(function(a){var b=a.length;return function(c){var d=Math.floor(((c%=1)<0?++c:c)*b),e=a[(d+b-1)%b],f=a[d%b],g=a[(d+1)%b],h=a[(d+2)%b];return bh((c-d/b)*b,e,f,g,h)}});var bm=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,bn=RegExp(bm.source,"g");function bo(a,b){var c,d,e,f,g,h=bm.lastIndex=bn.lastIndex=0,i=-1,j=[],k=[];for(a+="",b+="";(e=bm.exec(a))&&(f=bn.exec(b));)(g=f.index)>h&&(g=b.slice(h,g),j[i]?j[i]+=g:j[++i]=g),(e=e[0])===(f=f[0])?j[i]?j[i]+=f:j[++i]=f:(j[++i]=null,k.push({i:i,x:aF(e,f)})),h=bn.lastIndex;return h<b.length&&(g=b.slice(h),j[i]?j[i]+=g:j[++i]=g),j.length<2?k[0]?(c=k[0].x,function(a){return c(a)+""}):(d=b,function(){return d}):(b=k.length,function(a){for(var c,d=0;d<b;++d)j[(c=k[d]).i]=c.x(a);return j.join("")})}function bp(a,b){var c;return("number"==typeof b?aF:b instanceof a1?bk:(c=a1(b))?(b=c,bk):bo)(a,b)}var bq=af.prototype.constructor;function br(a){return function(){this.style.removeProperty(a)}}var bs=0;function bt(a,b,c,d){this._groups=a,this._parents=b,this._name=c,this._id=d}var bu=af.prototype;bt.prototype=(function(a){return af().transition(a)}).prototype={constructor:bt,select:function(a){var b=this._name,c=this._id;"function"!=typeof a&&(a=u(a));for(var d=this._groups,e=d.length,f=Array(e),g=0;g<e;++g)for(var h,i,j=d[g],k=j.length,l=f[g]=Array(k),m=0;m<k;++m)(h=j[m])&&(i=a.call(h,h.__data__,m,j))&&("__data__"in h&&(i.__data__=h.__data__),l[m]=i,aB(l[m],b,c,m,l,aE(h,c)));return new bt(f,this._parents,b,c)},selectAll:function(a){var b=this._name,c=this._id;"function"!=typeof a&&(a=w(a));for(var d=this._groups,e=d.length,f=[],g=[],h=0;h<e;++h)for(var i,j=d[h],k=j.length,l=0;l<k;++l)if(i=j[l]){for(var m,n=a.call(i,i.__data__,l,j),o=aE(i,c),p=0,q=n.length;p<q;++p)(m=n[p])&&aB(m,b,c,p,n,o);f.push(n),g.push(i)}return new bt(f,g,b,c)},selectChild:bu.selectChild,selectChildren:bu.selectChildren,filter:function(a){"function"!=typeof a&&(a=x(a));for(var b=this._groups,c=b.length,d=Array(c),e=0;e<c;++e)for(var f,g=b[e],h=g.length,i=d[e]=[],j=0;j<h;++j)(f=g[j])&&a.call(f,f.__data__,j,g)&&i.push(f);return new bt(d,this._parents,this._name,this._id)},merge:function(a){if(a._id!==this._id)throw Error();for(var b=this._groups,c=a._groups,d=b.length,e=c.length,f=Math.min(d,e),g=Array(d),h=0;h<f;++h)for(var i,j=b[h],k=c[h],l=j.length,m=g[h]=Array(l),n=0;n<l;++n)(i=j[n]||k[n])&&(m[n]=i);for(;h<d;++h)g[h]=b[h];return new bt(g,this._parents,this._name,this._id)},selection:function(){return new bq(this._groups,this._parents)},transition:function(){for(var a=this._name,b=this._id,c=++bs,d=this._groups,e=d.length,f=0;f<e;++f)for(var g,h=d[f],i=h.length,j=0;j<i;++j)if(g=h[j]){var k=aE(g,b);aB(g,a,c,j,h,{time:k.time+k.delay+k.duration,delay:0,duration:k.duration,ease:k.ease})}return new bt(d,this._parents,a,c)},call:bu.call,nodes:bu.nodes,node:bu.node,size:bu.size,empty:bu.empty,each:bu.each,on:function(a,b){var c,d,e,f,g,h,i=this._id;return arguments.length<2?aE(this.node(),i).on.on(a):this.each((c=i,d=a,e=b,h=(d+"").trim().split(/^|\s+/).every(function(a){var b=a.indexOf(".");return b>=0&&(a=a.slice(0,b)),!a||"start"===a})?aC:aD,function(){var a=h(this,c),b=a.on;b!==f&&(g=(f=b).copy()).on(d,e),a.on=g}))},attr:function(a,b){var c=L(a),d="transform"===c?aL:bp;return this.attrTween(a,"function"==typeof b?(c.local?function(a,b,c){var d,e,f;return function(){var g,h,i=c(this);return null==i?void this.removeAttributeNS(a.space,a.local):(g=this.getAttributeNS(a.space,a.local))===(h=i+"")?null:g===d&&h===e?f:(e=h,f=b(d=g,i))}}:function(a,b,c){var d,e,f;return function(){var g,h,i=c(this);return null==i?void this.removeAttribute(a):(g=this.getAttribute(a))===(h=i+"")?null:g===d&&h===e?f:(e=h,f=b(d=g,i))}})(c,d,aM(this,"attr."+a,b)):null==b?(c.local?function(a){return function(){this.removeAttributeNS(a.space,a.local)}}:function(a){return function(){this.removeAttribute(a)}})(c):(c.local?function(a,b,c){var d,e,f=c+"";return function(){var g=this.getAttributeNS(a.space,a.local);return g===f?null:g===d?e:e=b(d=g,c)}}:function(a,b,c){var d,e,f=c+"";return function(){var g=this.getAttribute(a);return g===f?null:g===d?e:e=b(d=g,c)}})(c,d,b))},attrTween:function(a,b){var c="attr."+a;if(arguments.length<2)return(c=this.tween(c))&&c._value;if(null==b)return this.tween(c,null);if("function"!=typeof b)throw Error();var d=L(a);return this.tween(c,(d.local?function(a,b){var c,d;function e(){var e=b.apply(this,arguments);return e!==d&&(c=(d=e)&&function(b){this.setAttributeNS(a.space,a.local,e.call(this,b))}),c}return e._value=b,e}:function(a,b){var c,d;function e(){var e=b.apply(this,arguments);return e!==d&&(c=(d=e)&&function(b){this.setAttribute(a,e.call(this,b))}),c}return e._value=b,e})(d,b))},style:function(a,b,c){var d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y="transform"==(a+="")?aK:bp;return null==b?this.styleTween(a,(d=a,function(){var a=N(this,d),b=(this.style.removeProperty(d),N(this,d));return a===b?null:a===e&&b===f?g:g=y(e=a,f=b)})).on("end.style."+a,br(a)):"function"==typeof b?this.styleTween(a,(h=a,i=aM(this,"style."+a,b),function(){var a=N(this,h),b=i(this),c=b+"";return null==b&&(this.style.removeProperty(h),c=b=N(this,h)),a===c?null:a===j&&c===k?l:(k=c,l=y(j=a,b))})).each((m=this._id,t="end."+(s="style."+(n=a)),function(){var a=aD(this,m),b=a.on,c=null==a.value[s]?r||(r=br(n)):void 0;(b!==o||q!==c)&&(p=(o=b).copy()).on(t,q=c),a.on=p})):this.styleTween(a,(u=a,x=b+"",function(){var a=N(this,u);return a===x?null:a===v?w:w=y(v=a,b)}),c).on("end.style."+a,null)},styleTween:function(a,b,c){var d="style."+(a+="");if(arguments.length<2)return(d=this.tween(d))&&d._value;if(null==b)return this.tween(d,null);if("function"!=typeof b)throw Error();return this.tween(d,function(a,b,c){var d,e;function f(){var f=b.apply(this,arguments);return f!==e&&(d=(e=f)&&function(b){this.style.setProperty(a,f.call(this,b),c)}),d}return f._value=b,f}(a,b,null==c?"":c))},text:function(a){var b,c;return this.tween("text","function"==typeof a?(b=aM(this,"text",a),function(){var a=b(this);this.textContent=null==a?"":a}):(c=null==a?"":a+"",function(){this.textContent=c}))},textTween:function(a){var b="text";if(arguments.length<1)return(b=this.tween(b))&&b._value;if(null==a)return this.tween(b,null);if("function"!=typeof a)throw Error();return this.tween(b,function(a){var b,c;function d(){var d=a.apply(this,arguments);return d!==c&&(b=(c=d)&&function(a){this.textContent=d.call(this,a)}),b}return d._value=a,d}(a))},remove:function(){var a;return this.on("end.remove",(a=this._id,function(){var b=this.parentNode;for(var c in this.__transition)if(+c!==a)return;b&&b.removeChild(this)}))},tween:function(a,b){var c=this._id;if(a+="",arguments.length<2){for(var d,e=aE(this.node(),c).tween,f=0,g=e.length;f<g;++f)if((d=e[f]).name===a)return d.value;return null}return this.each((null==b?function(a,b){var c,d;return function(){var e=aD(this,a),f=e.tween;if(f!==c){d=c=f;for(var g=0,h=d.length;g<h;++g)if(d[g].name===b){(d=d.slice()).splice(g,1);break}}e.tween=d}}:function(a,b,c){var d,e;if("function"!=typeof c)throw Error();return function(){var f=aD(this,a),g=f.tween;if(g!==d){e=(d=g).slice();for(var h={name:b,value:c},i=0,j=e.length;i<j;++i)if(e[i].name===b){e[i]=h;break}i===j&&e.push(h)}f.tween=e}})(c,a,b))},delay:function(a){var b=this._id;return arguments.length?this.each(("function"==typeof a?function(a,b){return function(){aC(this,a).delay=+b.apply(this,arguments)}}:function(a,b){return b*=1,function(){aC(this,a).delay=b}})(b,a)):aE(this.node(),b).delay},duration:function(a){var b=this._id;return arguments.length?this.each(("function"==typeof a?function(a,b){return function(){aD(this,a).duration=+b.apply(this,arguments)}}:function(a,b){return b*=1,function(){aD(this,a).duration=b}})(b,a)):aE(this.node(),b).duration},ease:function(a){var b=this._id;return arguments.length?this.each(function(a,b){if("function"!=typeof b)throw Error();return function(){aD(this,a).ease=b}}(b,a)):aE(this.node(),b).ease},easeVarying:function(a){var b;if("function"!=typeof a)throw Error();return this.each((b=this._id,function(){var c=a.apply(this,arguments);if("function"!=typeof c)throw Error();aD(this,b).ease=c}))},end:function(){var a,b,c=this,d=c._id,e=c.size();return new Promise(function(f,g){var h={value:g},i={value:function(){0==--e&&f()}};c.each(function(){var c=aD(this,d),e=c.on;e!==a&&((b=(a=e).copy())._.cancel.push(h),b._.interrupt.push(h),b._.end.push(i)),c.on=b}),0===e&&f()})},[Symbol.iterator]:bu[Symbol.iterator]};var bv={time:null,delay:0,duration:250,ease:function(a){return((a*=2)<=1?a*a*a:(a-=2)*a*a+2)/2}};function bw(a,b,c){this.k=a,this.x=b,this.y=c}af.prototype.interrupt=function(a){return this.each(function(){!function(a,b){var c,d,e,f=a.__transition,g=!0;if(f){for(e in b=null==b?null:b+"",f){if((c=f[e]).name!==b){g=!1;continue}d=c.state>2&&c.state<5,c.state=6,c.timer.stop(),c.on.call(d?"interrupt":"cancel",a,a.__data__,c.index,c.group),delete f[e]}g&&delete a.__transition}}(this,a)})},af.prototype.transition=function(a){var b,c;a instanceof bt?(b=a._id,a=a._name):(b=++bs,(c=bv).time=ar(),a=null==a?null:a+"");for(var d=this._groups,e=d.length,f=0;f<e;++f)for(var g,h=d[f],i=h.length,j=0;j<i;++j)(g=h[j])&&aB(g,a,b,j,h,c||function(a,b){for(var c;!(c=a.__transition)||!(c=c[b]);)if(!(a=a.parentNode))throw Error(`transition ${b} not found`);return c}(g,b));return new bt(d,this._parents,a,b)},bw.prototype={constructor:bw,scale:function(a){return 1===a?this:new bw(this.k*a,this.x,this.y)},translate:function(a,b){return 0===a&0===b?this:new bw(this.k,this.x+this.k*a,this.y+this.k*b)},apply:function(a){return[a[0]*this.k+this.x,a[1]*this.k+this.y]},applyX:function(a){return a*this.k+this.x},applyY:function(a){return a*this.k+this.y},invert:function(a){return[(a[0]-this.x)/this.k,(a[1]-this.y)/this.k]},invertX:function(a){return(a-this.x)/this.k},invertY:function(a){return(a-this.y)/this.k},rescaleX:function(a){return a.copy().domain(a.range().map(this.invertX,this).map(a.invert,a))},rescaleY:function(a){return a.copy().domain(a.range().map(this.invertY,this).map(a.invert,a))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}};new bw(1,0,0);bw.prototype;let bx={error001:(a="react")=>`Seems like you have not used ${"svelte"===a?"SvelteFlowProvider":"ReactFlowProvider"} as an ancestor. Help: https://${a}flow.dev/error#001`,error003:a=>`Node type "${a}" not found. Using fallback type "default".`,error005:()=>"Only child nodes can use a parent extent.",error006:()=>"Can't create edge. An edge needs a source and a target.",error009:a=>`Marker type "${a}" doesn't exist.`,error008:(a,{id:b,sourceHandle:c,targetHandle:d})=>`Couldn't create edge for ${a} handle id: "${"source"===a?c:d}", edge id: ${b}.`,error010:()=>"Handle: No node id found. Make sure to only use a Handle inside a custom Node.",error011:a=>`Edge type "${a}" not found. Using fallback type "default".`,error012:a=>`Node with id "${a}" does not exist, it may have been removed. This can happen when a node is deleted before the "onNodeClick" handler is called.`,error014:()=>"useNodeConnections: No node ID found. Call useNodeConnections inside a custom Node or provide a node ID.",error015:()=>"It seems that you are trying to drag a node that is not initialized. Please use onNodesChange as explained in the docs."},by=[[-1/0,-1/0],[1/0,1/0]],bz=["Enter"," ","Escape"],bA={"node.a11yDescription.default":"Press enter or space to select a node. Press delete to remove it and escape to cancel.","node.a11yDescription.keyboardDisabled":"Press enter or space to select a node. You can then use the arrow keys to move the node around. Press delete to remove it and escape to cancel.","node.a11yDescription.ariaLiveMessage":({direction:a,x:b,y:c})=>`Moved selected node ${a}. New position, x: ${b}, y: ${c}`,"edge.a11yDescription.default":"Press enter or space to select an edge. You can then press delete to remove it or escape to cancel.","controls.ariaLabel":"Control Panel","controls.zoomIn.ariaLabel":"Zoom In","controls.zoomOut.ariaLabel":"Zoom Out","controls.fitView.ariaLabel":"Fit View","controls.interactive.ariaLabel":"Toggle Interactivity","minimap.ariaLabel":"Mini Map","handle.ariaLabel":"Handle"};!function(a){a.Strict="strict",a.Loose="loose"}(e||(e={})),function(a){a.Free="free",a.Vertical="vertical",a.Horizontal="horizontal"}(f||(f={})),function(a){a.Partial="partial",a.Full="full"}(g||(g={}));let bB={inProgress:!1,isValid:null,from:null,fromHandle:null,fromPosition:null,fromNode:null,to:null,toHandle:null,toPosition:null,toNode:null,pointer:null};!function(a){a.Bezier="default",a.Straight="straight",a.Step="step",a.SmoothStep="smoothstep",a.SimpleBezier="simplebezier"}(h||(h={})),function(a){a.Arrow="arrow",a.ArrowClosed="arrowclosed"}(i||(i={})),function(a){a.Left="left",a.Top="top",a.Right="right",a.Bottom="bottom"}(j||(j={}));let bC={[j.Left]:j.Right,[j.Right]:j.Left,[j.Top]:j.Bottom,[j.Bottom]:j.Top},bD=a=>!!a&&"object"==typeof a&&"id"in a&&"source"in a&&"target"in a,bE=a=>!!a&&"object"==typeof a&&"id"in a&&"internals"in a&&!("source"in a)&&!("target"in a),bF=(a,b=[0,0])=>{let{width:c,height:d}=b5(a),e=a.origin??b,f=c*e[0],g=d*e[1];return{x:a.position.x-f,y:a.position.y-g}},bG=(a,b={})=>{let c={x:1/0,y:1/0,x2:-1/0,y2:-1/0},d=!1;return a.forEach(a=>{(void 0===b.filter||b.filter(a))&&(c=bP(c,bT(a)),d=!0)}),d?bR(c):{x:0,y:0,width:0,height:0}},bH=(a,b,[c,d,e]=[0,0,1],f=!1,g=!1)=>{let h=(b.x-c)/e,i=(b.y-d)/e,j=b.width/e,k=b.height/e,l=[];for(let b of a.values()){let{measured:a,selectable:c=!0,hidden:d=!1}=b;if(g&&!c||d)continue;let e=a.width??b.width??b.initialWidth??0,m=a.height??b.height??b.initialHeight??0,{x:n,y:o}=b.internals.positionAbsolute,p=bV(h,i,j,k,n,o,e,m),q=e*m,r=f&&p>0;(!b.internals.handleBounds||r||p>=q||b.dragging)&&l.push(b)}return l};async function bI({nodes:a,width:b,height:c,panZoom:d,minZoom:e,maxZoom:f},g){if(0===a.size)return!0;let h=b2(bG(function(a,b){let c=new Map,d=b?.nodes?new Set(b.nodes.map(a=>a.id)):null;return a.forEach(a=>{let e;if(b?.includeHiddenNodes){let{width:b,height:c}=b5(a);e=b>0&&c>0}else e=!!(a.measured.width&&a.measured.height&&!a.hidden);e&&(!d||d.has(a.id))&&c.set(a.id,a)}),c}(a,g)),b,c,g?.minZoom??e,g?.maxZoom??f,g?.padding??.1);return await d.setViewport(h,{duration:g?.duration,ease:g?.ease,interpolate:g?.interpolate}),!0}async function bJ({nodesToRemove:a=[],edgesToRemove:b=[],nodes:c,edges:d,onBeforeDelete:e}){let f=new Set(a.map(a=>a.id)),g=[];for(let a of c){if(!1===a.deletable)continue;let b=f.has(a.id),c=!b&&a.parentId&&g.find(b=>b.id===a.parentId);(b||c)&&g.push(a)}let h=new Set(b.map(a=>a.id)),i=d.filter(a=>!1!==a.deletable),j=((a,b)=>{let c=new Set;return a.forEach(a=>{c.add(a.id)}),b.filter(a=>c.has(a.source)||c.has(a.target))})(g,i);for(let a of i)h.has(a.id)&&!j.find(b=>b.id===a.id)&&j.push(a);if(!e)return{edges:j,nodes:g};let k=await e({nodes:g,edges:j});return"boolean"==typeof k?k?{edges:j,nodes:g}:{edges:[],nodes:[]}:k}let bK=(a,b=0,c=1)=>Math.min(Math.max(a,b),c),bL=(a={x:0,y:0},b,c)=>({x:bK(a.x,b[0][0],b[1][0]-(c?.width??0)),y:bK(a.y,b[0][1],b[1][1]-(c?.height??0))});function bM(a,b,c){let{width:d,height:e}=b5(c),{x:f,y:g}=c.internals.positionAbsolute;return bL(a,[[f,g],[f+d,g+e]],b)}let bN=(a,b,c)=>a<b?bK(Math.abs(a-b),1,b)/b:a>c?-bK(Math.abs(a-c),1,b)/b:0,bO=(a,b,c=15,d=40)=>[bN(a.x,d,b.width-d)*c,bN(a.y,d,b.height-d)*c],bP=(a,b)=>({x:Math.min(a.x,b.x),y:Math.min(a.y,b.y),x2:Math.max(a.x2,b.x2),y2:Math.max(a.y2,b.y2)}),bQ=({x:a,y:b,width:c,height:d})=>({x:a,y:b,x2:a+c,y2:b+d}),bR=({x:a,y:b,x2:c,y2:d})=>({x:a,y:b,width:c-a,height:d-b}),bS=(a,b=[0,0])=>{let{x:c,y:d}=bE(a)?a.internals.positionAbsolute:bF(a,b);return{x:c,y:d,width:a.measured?.width??a.width??a.initialWidth??0,height:a.measured?.height??a.height??a.initialHeight??0}},bT=(a,b=[0,0])=>{let{x:c,y:d}=bE(a)?a.internals.positionAbsolute:bF(a,b);return{x:c,y:d,x2:c+(a.measured?.width??a.width??a.initialWidth??0),y2:d+(a.measured?.height??a.height??a.initialHeight??0)}},bU=(a,b)=>bR(bP(bQ(a),bQ(b))),bV=(a,b,c,d,e,f,g,h)=>Math.ceil(Math.max(0,Math.min(a+c,e+g)-Math.max(a,e))*Math.max(0,Math.min(b+d,f+h)-Math.max(b,f))),bW=(a,b)=>bV(a.x,a.y,a.width,a.height,b.x,b.y,b.width,b.height),bX=a=>bY(a.width)&&bY(a.height)&&bY(a.x)&&bY(a.y),bY=a=>!isNaN(a)&&isFinite(a),bZ=(a,b)=>(a,b)=>{},b$=(a,b=[1,1])=>({x:b[0]*Math.round(a.x/b[0]),y:b[1]*Math.round(a.y/b[1])}),b_=({x:a,y:b},[c,d,e],f=!1,g=[1,1])=>{let h={x:(a-c)/e,y:(b-d)/e};return f?b$(h,g):h},b0=({x:a,y:b},[c,d,e])=>({x:a*e+c,y:b*e+d});function b1(a,b){if("number"==typeof a)return Math.floor((b-b/(1+a))*.5);if("string"==typeof a&&a.endsWith("px")){let b=parseFloat(a);if(!Number.isNaN(b))return Math.floor(b)}if("string"==typeof a&&a.endsWith("%")){let c=parseFloat(a);if(!Number.isNaN(c))return Math.floor(b*c*.01)}return console.error(`The padding value "${a}" is invalid. Please provide a number or a string with a valid unit (px or %).`),0}let b2=(a,b,c,d,e,f)=>{let g=function(a,b,c){if("string"==typeof a||"number"==typeof a){let d=b1(a,c),e=b1(a,b);return{top:d,right:e,bottom:d,left:e,x:2*e,y:2*d}}if("object"==typeof a){let d=b1(a.top??a.y??0,c),e=b1(a.bottom??a.y??0,c),f=b1(a.left??a.x??0,b),g=b1(a.right??a.x??0,b);return{top:d,right:g,bottom:e,left:f,x:f+g,y:d+e}}return{top:0,right:0,bottom:0,left:0,x:0,y:0}}(f,b,c),h=bK(Math.min((b-g.x)/a.width,(c-g.y)/a.height),d,e),i=a.x+a.width/2,j=a.y+a.height/2,k=b/2-i*h,l=c/2-j*h,m=function(a,b,c,d,e,f){let{x:g,y:h}=b0(a,[b,c,d]),{x:i,y:j}=b0({x:a.x+a.width,y:a.y+a.height},[b,c,d]);return{left:Math.floor(g),top:Math.floor(h),right:Math.floor(e-i),bottom:Math.floor(f-j)}}(a,k,l,h,b,c),n={left:Math.min(m.left-g.left,0),top:Math.min(m.top-g.top,0),right:Math.min(m.right-g.right,0),bottom:Math.min(m.bottom-g.bottom,0)};return{x:k-n.left+n.right,y:l-n.top+n.bottom,zoom:h}},b3=()=>"undefined"!=typeof navigator&&navigator?.userAgent?.indexOf("Mac")>=0;function b4(a){return null!=a&&"parent"!==a}function b5(a){return{width:a.measured?.width??a.width??a.initialWidth??0,height:a.measured?.height??a.height??a.initialHeight??0}}function b6(a){return(a.measured?.width??a.width??a.initialWidth)!==void 0&&(a.measured?.height??a.height??a.initialHeight)!==void 0}function b7(a,b){if(a.size!==b.size)return!1;for(let c of a)if(!b.has(c))return!1;return!0}function b8(a){return null===a?null:a?"valid":"invalid"}let b9=a=>({width:a.offsetWidth,height:a.offsetHeight}),ca=a=>a?.getRootNode?.()||window?.document,cb=["INPUT","SELECT","TEXTAREA"],cc=(a,b)=>{let c="clientX"in a,d=c?a.clientX:a.touches?.[0].clientX,e=c?a.clientY:a.touches?.[0].clientY;return{x:d-(b?.left??0),y:e-(b?.top??0)}},cd=(a,b,c,d,e)=>{let f=b.querySelectorAll(`.${a}`);return f&&f.length?Array.from(f).map(b=>{let f=b.getBoundingClientRect();return{id:b.getAttribute("data-handleid"),type:a,nodeId:e,position:b.getAttribute("data-handlepos"),x:(f.left-c.left)/d,y:(f.top-c.top)/d,...b9(b)}}):null};function ce({sourceX:a,sourceY:b,targetX:c,targetY:d,sourceControlX:e,sourceControlY:f,targetControlX:g,targetControlY:h}){let i=.125*a+.375*e+.375*g+.125*c,j=.125*b+.375*f+.375*h+.125*d,k=Math.abs(i-a),l=Math.abs(j-b);return[i,j,k,l]}function cf(a,b){return a>=0?.5*a:25*b*Math.sqrt(-a)}function cg({pos:a,x1:b,y1:c,x2:d,y2:e,c:f}){switch(a){case j.Left:return[b-cf(b-d,f),c];case j.Right:return[b+cf(d-b,f),c];case j.Top:return[b,c-cf(c-e,f)];case j.Bottom:return[b,c+cf(e-c,f)]}}function ch({sourceX:a,sourceY:b,sourcePosition:c=j.Bottom,targetX:d,targetY:e,targetPosition:f=j.Top,curvature:g=.25}){let[h,i]=cg({pos:c,x1:a,y1:b,x2:d,y2:e,c:g}),[k,l]=cg({pos:f,x1:d,y1:e,x2:a,y2:b,c:g}),[m,n,o,p]=ce({sourceX:a,sourceY:b,targetX:d,targetY:e,sourceControlX:h,sourceControlY:i,targetControlX:k,targetControlY:l});return[`M${a},${b} C${h},${i} ${k},${l} ${d},${e}`,m,n,o,p]}function ci({sourceX:a,sourceY:b,targetX:c,targetY:d}){let e=Math.abs(c-a)/2,f=Math.abs(d-b)/2;return[c<a?c+e:c-e,d<b?d+f:d-f,e,f]}let cj=({source:a,sourceHandle:b,target:c,targetHandle:d})=>`xy-edge__${a}${b||""}-${c}${d||""}`;function ck({sourceX:a,sourceY:b,targetX:c,targetY:d}){let[e,f,g,h]=ci({sourceX:a,sourceY:b,targetX:c,targetY:d});return[`M ${a},${b}L ${c},${d}`,e,f,g,h]}let cl={[j.Left]:{x:-1,y:0},[j.Right]:{x:1,y:0},[j.Top]:{x:0,y:-1},[j.Bottom]:{x:0,y:1}},cm=({source:a,sourcePosition:b=j.Bottom,target:c})=>b===j.Left||b===j.Right?a.x<c.x?{x:1,y:0}:{x:-1,y:0}:a.y<c.y?{x:0,y:1}:{x:0,y:-1},cn=(a,b)=>Math.sqrt(Math.pow(b.x-a.x,2)+Math.pow(b.y-a.y,2));function co({sourceX:a,sourceY:b,sourcePosition:c=j.Bottom,targetX:d,targetY:e,targetPosition:f=j.Top,borderRadius:g=5,centerX:h,centerY:i,offset:k=20,stepPosition:l=.5}){let[m,n,o,p,q]=function({source:a,sourcePosition:b=j.Bottom,target:c,targetPosition:d=j.Top,center:e,offset:f,stepPosition:g}){let h,i,k=cl[b],l=cl[d],m={x:a.x+k.x*f,y:a.y+k.y*f},n={x:c.x+l.x*f,y:c.y+l.y*f},o=cm({source:m,sourcePosition:b,target:n}),p=0!==o.x?"x":"y",q=o[p],r=[],s={x:0,y:0},t={x:0,y:0},[,,u,v]=ci({sourceX:a.x,sourceY:a.y,targetX:c.x,targetY:c.y});if(k[p]*l[p]==-1){"x"===p?(h=e.x??m.x+(n.x-m.x)*g,i=e.y??(m.y+n.y)/2):(h=e.x??(m.x+n.x)/2,i=e.y??m.y+(n.y-m.y)*g);let a=[{x:h,y:m.y},{x:h,y:n.y}],b=[{x:m.x,y:i},{x:n.x,y:i}];r=k[p]===q?"x"===p?a:b:"x"===p?b:a}else{let e=[{x:m.x,y:n.y}],g=[{x:n.x,y:m.y}];if(r="x"===p?k.x===q?g:e:k.y===q?e:g,b===d){let b=Math.abs(a[p]-c[p]);if(b<=f){let d=Math.min(f-1,f-b);k[p]===q?s[p]=(m[p]>a[p]?-1:1)*d:t[p]=(n[p]>c[p]?-1:1)*d}}if(b!==d){let a="x"===p?"y":"x",b=k[p]===l[a],c=m[a]>n[a],d=m[a]<n[a];(1===k[p]&&(!b&&c||b&&d)||1!==k[p]&&(!b&&d||b&&c))&&(r="x"===p?e:g)}let j={x:m.x+s.x,y:m.y+s.y},o={x:n.x+t.x,y:n.y+t.y};Math.max(Math.abs(j.x-r[0].x),Math.abs(o.x-r[0].x))>=Math.max(Math.abs(j.y-r[0].y),Math.abs(o.y-r[0].y))?(h=(j.x+o.x)/2,i=r[0].y):(h=r[0].x,i=(j.y+o.y)/2)}let w={x:m.x+s.x,y:m.y+s.y},x={x:n.x+t.x,y:n.y+t.y};return[[a,...w.x!==r[0].x||w.y!==r[0].y?[w]:[],...r,...x.x!==r[r.length-1].x||x.y!==r[r.length-1].y?[x]:[],c],h,i,u,v]}({source:{x:a,y:b},sourcePosition:c,target:{x:d,y:e},targetPosition:f,center:{x:h,y:i},offset:k,stepPosition:l}),r=`M${m[0].x} ${m[0].y}`;for(let a=1;a<m.length-1;a++)r+=function(a,b,c,d){let e=Math.min(cn(a,b)/2,cn(b,c)/2,d),{x:f,y:g}=b;if(a.x===f&&f===c.x||a.y===g&&g===c.y)return`L${f} ${g}`;if(a.y===g){let b=a.x<c.x?-1:1,d=a.y<c.y?1:-1;return`L ${f+e*b},${g}Q ${f},${g} ${f},${g+e*d}`}let h=a.x<c.x?1:-1,i=a.y<c.y?-1:1;return`L ${f},${g+e*i}Q ${f},${g} ${f+e*h},${g}`}(m[a-1],m[a],m[a+1],g);return[r+=`L${m[m.length-1].x} ${m[m.length-1].y}`,n,o,p,q]}function cp(a){return a&&!!(a.internals.handleBounds||a.handles?.length)&&!!(a.measured.width||a.width||a.initialWidth)}function cq(a){if(!a)return null;let b=[],c=[];for(let d of a)d.width=d.width??1,d.height=d.height??1,"source"===d.type?b.push(d):"target"===d.type&&c.push(d);return{source:b,target:c}}function cr(a,b,c=j.Left,d=!1){let e=(b?.x??0)+a.internals.positionAbsolute.x,f=(b?.y??0)+a.internals.positionAbsolute.y,{width:g,height:h}=b??b5(a);if(d)return{x:e+g/2,y:f+h/2};switch(b?.position??c){case j.Top:return{x:e+g/2,y:f};case j.Right:return{x:e+g,y:f+h/2};case j.Bottom:return{x:e+g/2,y:f+h};case j.Left:return{x:e,y:f+h/2}}}function cs(a,b){return a&&(b?a.find(a=>a.id===b):a[0])||null}function ct(a,b){if(!a)return"";if("string"==typeof a)return a;let c=b?`${b}__`:"";return`${c}${Object.keys(a).sort().map(b=>`${b}=${a[b]}`).join("&")}`}let cu={nodeOrigin:[0,0],nodeExtent:by,elevateNodesOnSelect:!0,zIndexMode:"basic",defaults:{}},cv={...cu,checkEquality:!0};function cw(a,b){let c={...a};for(let a in b)void 0!==b[a]&&(c[a]=b[a]);return c}function cx(a){return"manual"===a}function cy(a,b,c,d={}){let e=cw(cv,d),f={i:0},g=new Map(b),h=e?.elevateNodesOnSelect&&!cx(e.zIndexMode)?1e3:0,i=a.length>0,j=!1;for(let k of(b.clear(),c.clear(),a)){let a=g.get(k.id);if(e.checkEquality&&k===a?.internals.userNode)b.set(k.id,a);else{let c=bL(bF(k,e.nodeOrigin),b4(k.extent)?k.extent:e.nodeExtent,b5(k));a={...e.defaults,...k,measured:{width:k.measured?.width,height:k.measured?.height},internals:{positionAbsolute:c,handleBounds:function(a,b){if(!a.handles)return a.measured?b?.internals.handleBounds:void 0;let c=[],d=[];for(let b of a.handles){let e={id:b.id,width:b.width??1,height:b.height??1,nodeId:a.id,x:b.x,y:b.y,position:b.position,type:b.type};"source"===b.type?c.push(e):"target"===b.type&&d.push(e)}return{source:c,target:d}}(k,a),z:cA(k,h,e.zIndexMode),userNode:k}},b.set(k.id,a)}void 0!==a.measured&&void 0!==a.measured.width&&void 0!==a.measured.height||a.hidden||(i=!1),k.parentId&&cz(a,b,c,d,f),j||=k.selected??!1}return{nodesInitialized:i,hasSelectedNodes:j}}function cz(a,b,c,d,e){let{elevateNodesOnSelect:f,nodeOrigin:g,nodeExtent:h,zIndexMode:i}=cw(cu,d),j=a.parentId,k=b.get(j);if(!k)return void console.warn(`Parent node ${j} not found. Please make sure that parent nodes are in front of their child nodes in the nodes array.`);!function(a,b){if(!a.parentId)return;let c=b.get(a.parentId);c?c.set(a.id,a):b.set(a.parentId,new Map([[a.id,a]]))}(a,c),e&&!k.parentId&&void 0===k.internals.rootParentIndex&&"auto"===i&&(k.internals.rootParentIndex=++e.i,k.internals.z=k.internals.z+10*e.i),e&&void 0!==k.internals.rootParentIndex&&(e.i=k.internals.rootParentIndex);let{x:l,y:m,z:n}=function(a,b,c,d,e,f){let{x:g,y:h}=b.internals.positionAbsolute,i=b5(a),j=bF(a,c),k=b4(a.extent)?bL(j,a.extent,i):j,l=bL({x:g+k.x,y:h+k.y},d,i);"parent"===a.extent&&(l=bM(l,i,b));let m=cA(a,e,f),n=b.internals.z??0;return{x:l.x,y:l.y,z:n>=m?n+1:m}}(a,k,g,h,f&&!cx(i)?1e3:0,i),{positionAbsolute:o}=a.internals,p=l!==o.x||m!==o.y;(p||n!==a.internals.z)&&b.set(a.id,{...a,internals:{...a.internals,positionAbsolute:p?{x:l,y:m}:o,z:n}})}function cA(a,b,c){let d=bY(a.zIndex)?a.zIndex:0;return cx(c)?d:d+(a.selected?b:0)}function cB(a,b,c,d=[0,0]){let e=[],f=new Map;for(let c of a){let a=b.get(c.parentId);if(!a)continue;let d=bU(f.get(c.parentId)?.expandedRect??bS(a),c.rect);f.set(c.parentId,{expandedRect:d,parent:a})}return f.size>0&&f.forEach(({expandedRect:b,parent:f},g)=>{let h=f.internals.positionAbsolute,i=b5(f),j=f.origin??d,k=b.x<h.x?Math.round(Math.abs(h.x-b.x)):0,l=b.y<h.y?Math.round(Math.abs(h.y-b.y)):0,m=Math.max(i.width,Math.round(b.width)),n=Math.max(i.height,Math.round(b.height)),o=(m-i.width)*j[0],p=(n-i.height)*j[1];(k>0||l>0||o||p)&&(e.push({id:g,type:"position",position:{x:f.position.x-k+o,y:f.position.y-l+p}}),c.get(g)?.forEach(b=>{a.some(a=>a.id===b.id)||e.push({id:b.id,type:"position",position:{x:b.position.x+k,y:b.position.y+l}})})),(i.width<b.width||i.height<b.height||k||l)&&e.push({id:g,type:"dimensions",setAttributes:!0,dimensions:{width:m+(k?j[0]*k-o:0),height:n+(l?j[1]*l-p:0)}})}),e}async function cC({delta:a,panZoom:b,transform:c,translateExtent:d,width:e,height:f}){if(!b||!a.x&&!a.y)return!1;let g=await b.setViewportConstrained({x:c[0]+a.x,y:c[1]+a.y,zoom:c[2]},[[0,0],[e,f]],d);return!!g&&(g.x!==c[0]||g.y!==c[1]||g.k!==c[2])}function cD(a,b,c,d,e,f){let g=e,h=d.get(g)||new Map;d.set(g,h.set(c,b)),g=`${e}-${a}`;let i=d.get(g)||new Map;if(d.set(g,i.set(c,b)),f){g=`${e}-${a}-${f}`;let h=d.get(g)||new Map;d.set(g,h.set(c,b))}}function cE(a,b,c){for(let d of(a.clear(),b.clear(),c)){let{source:c,target:e,sourceHandle:f=null,targetHandle:g=null}=d,h={edgeId:d.id,source:c,target:e,sourceHandle:f,targetHandle:g},i=`${c}-${f}--${e}-${g}`;cD("source",h,`${e}-${g}--${c}-${f}`,a,c,f),cD("target",h,i,a,e,g),b.set(d.id,d)}}function cF(a,b,c,d,e,f=!1){let g=d.get(a);if(!g)return null;let h="strict"===e?g.internals.handleBounds?.[b]:[...g.internals.handleBounds?.source??[],...g.internals.handleBounds?.target??[]],i=(c?h?.find(a=>a.id===c):h?.[0])??null;return i&&f?{...i,...cr(g,i,i.position,!0)}:i}function cG(a,b){return a?a:b?.classList.contains("target")?"target":b?.classList.contains("source")?"source":null}let cH=()=>!0;function cI(a,{handle:b,connectionMode:c,fromNodeId:d,fromHandleId:f,fromType:g,doc:h,lib:i,flowId:j,isValidConnection:k=cH,nodeLookup:l}){let m="target"===g,n=b?h.querySelector(`.${i}-flow__handle[data-id="${j}-${b?.nodeId}-${b?.id}-${b?.type}"]`):null,{x:o,y:p}=cc(a),q=h.elementFromPoint(o,p),r=q?.classList.contains(`${i}-flow__handle`)?q:n,s={handleDomNode:r,isValid:!1,connection:null,toHandle:null};if(r){let a=cG(void 0,r),b=r.getAttribute("data-nodeid"),g=r.getAttribute("data-handleid"),h=r.classList.contains("connectable"),i=r.classList.contains("connectableend");if(!b||!a)return s;let j={source:m?b:d,sourceHandle:m?g:f,target:m?d:b,targetHandle:m?f:g};s.connection=j,s.isValid=h&&i&&(c===e.Strict?m&&"source"===a||!m&&"target"===a:b!==d||g!==f)&&k(j),s.toHandle=cF(b,a,g,l,c,!0)}return s}let cJ={onPointerDown:function(a,{connectionMode:b,connectionRadius:c,handleId:d,nodeId:e,edgeUpdaterType:f,isTarget:g,domNode:h,nodeLookup:i,lib:k,autoPanOnConnect:l,flowId:m,panBy:n,cancelConnection:o,onConnectStart:p,onConnect:q,onConnectEnd:r,isValidConnection:s=cH,onReconnectEnd:t,updateConnection:u,getTransform:v,getFromHandle:w,autoPanSpeed:x,dragThreshold:y=1,handleDomNode:z}){let A,B=ca(a.target),C=0,{x:D,y:E}=cc(a),F=cG(f,z),G=h?.getBoundingClientRect(),H=!1;if(!G||!F)return;let I=cF(e,F,d,i,b);if(!I)return;let J=cc(a,G),K=!1,L=null,M=!1,N=null,O={...I,nodeId:e,type:F,position:I.position},P=i.get(e),Q={inProgress:!0,isValid:null,from:cr(P,O,j.Left,!0),fromHandle:O,fromPosition:O.position,fromNode:P,to:J,toHandle:null,toPosition:bC[O.position],toNode:null,pointer:J};function R(){H=!0,u(Q),p?.(a,{nodeId:e,handleId:d,handleType:F})}function S(a){var f,h;let o;if(!H){let{x:b,y:c}=cc(a),d=b-D,e=c-E;if(!(d*d+e*e>y*y))return;R()}if(!w()||!O)return void T(a);let p=v();A=function(a,b,c,d){let e=[],f=1/0;for(let g of function(a,b,c){let d=[],e={x:a.x-c,y:a.y-c,width:2*c,height:2*c};for(let a of b.values())bW(e,bS(a))>0&&d.push(a);return d}(a,c,b+250))for(let c of[...g.internals.handleBounds?.source??[],...g.internals.handleBounds?.target??[]]){if(d.nodeId===c.nodeId&&d.type===c.type&&d.id===c.id)continue;let{x:h,y:i}=cr(g,c,c.position,!0),j=Math.sqrt(Math.pow(h-a.x,2)+Math.pow(i-a.y,2));j>b||(j<f?(e=[{...c,x:h,y:i}],f=j):j===f&&e.push({...c,x:h,y:i}))}if(!e.length)return null;if(e.length>1){let a="source"===d.type?"target":"source";return e.find(b=>b.type===a)??e[0]}return e[0]}(b_(J=cc(a,G),p,!1,[1,1]),c,i,O),K||(!function a(){if(!l||!G)return;let[b,c]=bO(J,G,x);n({x:b,y:c}),C=requestAnimationFrame(a)}(),K=!0);let q=cI(a,{handle:A,connectionMode:b,fromNodeId:e,fromHandleId:d,fromType:g?"target":"source",isValidConnection:s,doc:B,lib:k,flowId:m,nodeLookup:i});N=q.handleDomNode,L=q.connection,f=!!A,h=q.isValid,o=null,h?o=!0:f&&!h&&(o=!1),M=o;let r=i.get(e),t=r?cr(r,O,j.Left,!0):Q.from,z={...Q,from:t,isValid:M,to:q.toHandle&&M?b0({x:q.toHandle.x,y:q.toHandle.y},p):J,toHandle:q.toHandle,toPosition:M&&q.toHandle?q.toHandle.position:bC[O.position],toNode:q.toHandle?i.get(q.toHandle.nodeId):null,pointer:J};u(z),Q=z}function T(a){if(!("touches"in a)||!(a.touches.length>0)){if(H){(A||N)&&L&&M&&q?.(L);let{inProgress:b,...c}=Q,d={...c,toPosition:Q.toHandle?Q.toPosition:null};r?.(a,d),f&&t?.(a,d)}o(),cancelAnimationFrame(C),K=!1,M=!1,L=null,N=null,B.removeEventListener("mousemove",S),B.removeEventListener("mouseup",T),B.removeEventListener("touchmove",S),B.removeEventListener("touchend",T)}}0===y&&R(),B.addEventListener("mousemove",S),B.addEventListener("mouseup",T),B.addEventListener("touchmove",S),B.addEventListener("touchend",T)},isValid:cI};!function(a){a.Line="line",a.Handle="handle"}(k||(k={}));var cK=c(85764);let cL=a=>{let b,c=new Set,d=(a,d)=>{let e="function"==typeof a?a(b):a;if(!Object.is(e,b)){let a=b;b=(null!=d?d:"object"!=typeof e||null===e)?e:Object.assign({},b,e),c.forEach(c=>c(b,a))}},e=()=>b,f={setState:d,getState:e,getInitialState:()=>g,subscribe:a=>(c.add(a),()=>c.delete(a)),destroy:()=>{console.warn("[DEPRECATED] The `destroy` method will be unsupported in a future version. Instead use unsubscribe function returned by subscribe. Everything will be garbage-collected if store is garbage-collected."),c.clear()}},g=b=a(d,e,f);return f},{useDebugValue:cM}=n,{useSyncExternalStoreWithSelector:cN}=cK,cO=a=>a;function cP(a,b=cO,c){let d=cN(a.subscribe,a.getState,a.getServerState||a.getInitialState,b,c);return cM(d),d}let cQ=(a,b)=>{let c=(a=>a?cL(a):cL)(a),d=(a,d=b)=>cP(c,a,d);return Object.assign(d,c),d};function cR(a,b){if(Object.is(a,b))return!0;if("object"!=typeof a||null===a||"object"!=typeof b||null===b)return!1;if(a instanceof Map&&b instanceof Map){if(a.size!==b.size)return!1;for(let[c,d]of a)if(!Object.is(d,b.get(c)))return!1;return!0}if(a instanceof Set&&b instanceof Set){if(a.size!==b.size)return!1;for(let c of a)if(!b.has(c))return!1;return!0}let c=Object.keys(a);if(c.length!==Object.keys(b).length)return!1;for(let d of c)if(!Object.prototype.hasOwnProperty.call(b,d)||!Object.is(a[d],b[d]))return!1;return!0}var cS=c(37322);let cT=(0,n.createContext)(null),cU=cT.Provider,cV=bx.error001("react");function cW(a,b){let c=(0,n.useContext)(cT);if(null===c)throw Error(cV);return cP(c,a,b)}function cX(){let a=(0,n.useContext)(cT);if(null===a)throw Error(cV);return(0,n.useMemo)(()=>({getState:a.getState,setState:a.setState,subscribe:a.subscribe}),[a])}let cY={display:"none"},cZ={position:"absolute",width:1,height:1,margin:-1,border:0,padding:0,overflow:"hidden",clip:"rect(0px, 0px, 0px, 0px)",clipPath:"inset(100%)"},c$="react-flow__node-desc",c_="react-flow__edge-desc",c0=a=>a.ariaLiveMessage,c1=a=>a.ariaLabelConfig;function c2({rfId:a}){let b=cW(c0);return(0,m.jsx)("div",{id:`react-flow__aria-live-${a}`,"aria-live":"assertive","aria-atomic":"true",style:cZ,children:b})}function c3({rfId:a,disableKeyboardA11y:b}){let c=cW(c1);return(0,m.jsxs)(m.Fragment,{children:[(0,m.jsx)("div",{id:`${c$}-${a}`,style:cY,children:b?c["node.a11yDescription.default"]:c["node.a11yDescription.keyboardDisabled"]}),(0,m.jsx)("div",{id:`${c_}-${a}`,style:cY,children:c["edge.a11yDescription.default"]}),!b&&(0,m.jsx)(c2,{rfId:a})]})}let c4=(0,n.forwardRef)(({position:a="top-left",children:b,className:c,style:d,...e},f)=>{let g=`${a}`.split("-");return(0,m.jsx)("div",{className:o(["react-flow__panel",c,...g]),style:d,ref:f,...e,children:b})});c4.displayName="Panel";let c5="https://reactflow.dev?utm_source=attribution";function c6({proOptions:a,position:b="bottom-right"}){return a?.hideAttribution?null:(0,m.jsx)(c4,{position:b,className:"react-flow__attribution","data-message":`Please only hide this attribution when you are subscribed to React Flow Pro: ${c5}`,children:(0,m.jsx)("a",{href:c5,target:"_blank",rel:"noopener noreferrer","aria-label":"React Flow attribution",children:"React Flow"})})}let c7=a=>{let b=[],c=[];for(let[,c]of a.nodeLookup)c.selected&&b.push(c.internals.userNode);for(let[,b]of a.edgeLookup)b.selected&&c.push(b);return{selectedNodes:b,selectedEdges:c}},c8=a=>a.id;function c9(a,b){return cR(a.selectedNodes.map(c8),b.selectedNodes.map(c8))&&cR(a.selectedEdges.map(c8),b.selectedEdges.map(c8))}function da({onSelectionChange:a}){cX();let{selectedNodes:b,selectedEdges:c}=cW(c7,c9);return null}let db=a=>!!a.onSelectionChangeHandlers;function dc({onSelectionChange:a}){let b=cW(db);return a||b?(0,m.jsx)(da,{onSelectionChange:a}):null}let dd=[0,0],de={x:0,y:0,zoom:1},df=["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"],dg=a=>({setNodes:a.setNodes,setEdges:a.setEdges,setMinZoom:a.setMinZoom,setMaxZoom:a.setMaxZoom,setTranslateExtent:a.setTranslateExtent,setNodeExtent:a.setNodeExtent,reset:a.reset,setDefaultNodesAndEdges:a.setDefaultNodesAndEdges}),dh={translateExtent:by,nodeOrigin:dd,minZoom:.5,maxZoom:2,elementsSelectable:!0,noPanClassName:"nopan",rfId:"1"};function di(a){let{setNodes:b,setEdges:c,setMinZoom:d,setMaxZoom:e,setTranslateExtent:f,setNodeExtent:g,reset:h,setDefaultNodesAndEdges:i}=cW(dg,cR),j=cX(),k=(0,n.useRef)(dh);return(0,n.useEffect)(()=>{for(let h of df){let i=a[h];if(i!==k.current[h]&&void 0!==a[h])if("nodes"===h)b(i);else if("edges"===h)c(i);else if("minZoom"===h)d(i);else if("maxZoom"===h)e(i);else if("translateExtent"===h)f(i);else if("nodeExtent"===h)g(i);else if("ariaLabelConfig"===h)j.setState({ariaLabelConfig:{...bA,...i||{}}});else"fitView"===h?j.setState({fitViewQueued:i}):"fitViewOptions"===h?j.setState({fitViewOptions:i}):j.setState({[h]:i})}k.current=a},df.map(b=>a[b])),null}let dj="undefined"!=typeof document?document:null;function dk(a=null,b={target:dj,actInsideInputWithModifier:!0}){let[c,d]=(0,n.useState)(!1);(0,n.useRef)(!1),(0,n.useRef)(new Set([]));let[e,f]=(0,n.useMemo)(()=>{if(null!==a){let b=(Array.isArray(a)?a:[a]).filter(a=>"string"==typeof a).map(a=>a.replace(/\+/g,"\n").replace("\n\n","\n+").split("\n")),c=b.reduce((a,b)=>a.concat(...b),[]);return[b,c]}return[[],[]]},[a]);return c}function dl(a,b){let c=[],d=new Map,e=[];for(let b of a)if("add"===b.type){e.push(b);continue}else if("remove"===b.type||"replace"===b.type)d.set(b.id,[b]);else{let a=d.get(b.id);a?a.push(b):d.set(b.id,[b])}for(let a of b){let b=d.get(a.id);if(!b){c.push(a);continue}if("remove"===b[0].type)continue;if("replace"===b[0].type){c.push({...b[0].item});continue}let e={...a};for(let a of b){var f=a,g=e;switch(f.type){case"select":g.selected=f.selected;break;case"position":void 0!==f.position&&(g.position=f.position),void 0!==f.dragging&&(g.dragging=f.dragging);break;case"dimensions":void 0!==f.dimensions&&(g.measured={...f.dimensions},f.setAttributes&&((!0===f.setAttributes||"width"===f.setAttributes)&&(g.width=f.dimensions.width),(!0===f.setAttributes||"height"===f.setAttributes)&&(g.height=f.dimensions.height))),"boolean"==typeof f.resizing&&(g.resizing=f.resizing)}}c.push(e)}return e.length&&e.forEach(a=>{void 0!==a.index?c.splice(a.index,0,{...a.item}):c.push({...a.item})}),c}function dm(a,b){return{id:a,type:"select",selected:b}}function dn(a,b=new Set,c=!1){let d=[];for(let[e,f]of a){let a=b.has(e);(void 0!==f.selected||a)&&f.selected!==a&&(c&&(f.selected=a),d.push(dm(f.id,a)))}return d}function dp({items:a=[],lookup:b}){let c=[],d=new Map(a.map(a=>[a.id,a]));for(let[d,e]of a.entries()){let a=b.get(e.id),f=a?.internals?.userNode??a;void 0!==f&&f!==e&&c.push({id:e.id,item:e,type:"replace"}),void 0===f&&c.push({item:e,type:"add",index:d})}for(let[a]of b)void 0===d.get(a)&&c.push({id:a,type:"remove"});return c}function dq(a){return{id:a.id,type:"remove"}}let dr=bZ("React Flow","https://reactflow.dev/"),ds=a=>(a=>!!a&&"object"==typeof a&&"id"in a&&"position"in a&&!("source"in a)&&!("target"in a))(a);function dt(a){return(0,n.forwardRef)(a)}let du=n.useEffect;function dv(a){let[b,c]=(0,n.useState)(BigInt(0)),[d]=(0,n.useState)(()=>{var a;let b;return a=()=>c(a=>a+BigInt(1)),b=[],{get:()=>b,reset:()=>{b=[]},push:c=>{b.push(c),a()}}});return du(()=>{let b=d.get();b.length&&(a(b),d.reset())},[b]),d}let dw=(0,n.createContext)(null);function dx({children:a}){let b=cX(),c=dv((0,n.useCallback)(a=>{let{nodes:c=[],setNodes:d,hasDefaultNodes:e,onNodesChange:f,nodeLookup:g,fitViewQueued:h,onNodesChangeMiddlewareMap:i}=b.getState(),j=c;for(let b of a)j="function"==typeof b?b(j):b;let k=dp({items:j,lookup:g});for(let a of i.values())k=a(k);e&&d(j),k.length>0?f?.(k):h&&window.requestAnimationFrame(()=>{let{fitViewQueued:a,nodes:c,setNodes:d}=b.getState();a&&d(c)})},[])),d=dv((0,n.useCallback)(a=>{let{edges:c=[],setEdges:d,hasDefaultEdges:e,onEdgesChange:f,edgeLookup:g}=b.getState(),h=c;for(let b of a)h="function"==typeof b?b(h):b;e?d(h):f&&f(dp({items:h,lookup:g}))},[])),e=(0,n.useMemo)(()=>({nodeQueue:c,edgeQueue:d}),[]);return(0,m.jsx)(dw.Provider,{value:e,children:a})}let dy=a=>!!a.panZoom;function dz(){let a=(()=>{let a=cX();return(0,n.useMemo)(()=>({zoomIn:async b=>{let{panZoom:c}=a.getState();return!!c&&c.scaleBy(1.2,b)},zoomOut:async b=>{let{panZoom:c}=a.getState();return!!c&&c.scaleBy(1/1.2,b)},zoomTo:async(b,c)=>{let{panZoom:d}=a.getState();return!!d&&d.scaleTo(b,c)},getZoom:()=>a.getState().transform[2],setViewport:async(b,c)=>{let{transform:[d,e,f],panZoom:g}=a.getState();return!!g&&(await g.setViewport({x:b.x??d,y:b.y??e,zoom:b.zoom??f},c),!0)},getViewport:()=>{let[b,c,d]=a.getState().transform;return{x:b,y:c,zoom:d}},setCenter:async(b,c,d)=>a.getState().setCenter(b,c,d),fitBounds:async(b,c)=>{let{width:d,height:e,minZoom:f,maxZoom:g,panZoom:h}=a.getState(),i=b2(b,d,e,f,g,c?.padding??.1);return!!h&&(await h.setViewport(i,{duration:c?.duration,ease:c?.ease,interpolate:c?.interpolate}),!0)},screenToFlowPosition:(b,c={})=>{let{transform:d,snapGrid:e,snapToGrid:f,domNode:g}=a.getState();if(!g)return b;let{x:h,y:i}=g.getBoundingClientRect(),j={x:b.x-h,y:b.y-i},k=c.snapGrid??e;return b_(j,d,c.snapToGrid??f,k)},flowToScreenPosition:b=>{let{transform:c,domNode:d}=a.getState();if(!d)return b;let{x:e,y:f}=d.getBoundingClientRect(),g=b0(b,c);return{x:g.x+e,y:g.y+f}}}),[])})(),b=cX(),c=function(){let a=(0,n.useContext)(dw);if(!a)throw Error("useBatchContext must be used within a BatchProvider");return a}(),d=cW(dy),e=(0,n.useMemo)(()=>{let a=a=>b.getState().nodeLookup.get(a),d=a=>{c.nodeQueue.push(a)},e=a=>{c.edgeQueue.push(a)},f=a=>{let{nodeLookup:c,nodeOrigin:d}=b.getState(),e=ds(a)?a:c.get(a.id),f=e.parentId?function(a,b={width:0,height:0},c,d,e){let f={...a},g=d.get(c);if(g){let a=g.origin||e;f.x+=g.internals.positionAbsolute.x-(b.width??0)*a[0],f.y+=g.internals.positionAbsolute.y-(b.height??0)*a[1]}return f}(e.position,e.measured,e.parentId,c,d):e.position;return bS({...e,position:f,width:e.measured?.width??e.width,height:e.measured?.height??e.height})},g=(a,b,c={replace:!1})=>{d(d=>d.map(d=>{if(d.id===a){let a="function"==typeof b?b(d):b;return c.replace&&ds(a)?a:{...d,...a}}return d}))},h=(a,b,c={replace:!1})=>{e(d=>d.map(d=>{if(d.id===a){let a="function"==typeof b?b(d):b;return c.replace&&bD(a)?a:{...d,...a}}return d}))};return{getNodes:()=>b.getState().nodes.map(a=>({...a})),getNode:b=>a(b)?.internals.userNode,getInternalNode:a,getEdges:()=>{let{edges:a=[]}=b.getState();return a.map(a=>({...a}))},getEdge:a=>b.getState().edgeLookup.get(a),setNodes:d,setEdges:e,addNodes:a=>{let b=Array.isArray(a)?a:[a];c.nodeQueue.push(a=>[...a,...b])},addEdges:a=>{let b=Array.isArray(a)?a:[a];c.edgeQueue.push(a=>[...a,...b])},toObject:()=>{let{nodes:a=[],edges:c=[],transform:d}=b.getState(),[e,f,g]=d;return{nodes:a.map(a=>({...a})),edges:c.map(a=>({...a})),viewport:{x:e,y:f,zoom:g}}},deleteElements:async({nodes:a=[],edges:c=[]})=>{let{nodes:d,edges:e,onNodesDelete:f,onEdgesDelete:g,triggerNodeChanges:h,triggerEdgeChanges:i,onDelete:j,onBeforeDelete:k}=b.getState(),{nodes:l,edges:m}=await bJ({nodesToRemove:a,edgesToRemove:c,nodes:d,edges:e,onBeforeDelete:k}),n=m.length>0,o=l.length>0;if(n){let a=m.map(dq);g?.(m),i(a)}if(o){let a=l.map(dq);f?.(l),h(a)}return(o||n)&&j?.({nodes:l,edges:m}),{deletedNodes:l,deletedEdges:m}},getIntersectingNodes:(a,c=!0,d)=>{let e=bX(a),g=e?a:f(a),h=void 0!==d;return g?(d||b.getState().nodes).filter(d=>{let f=b.getState().nodeLookup.get(d.id);if(f&&!e&&(d.id===a.id||!f.internals.positionAbsolute))return!1;let i=bS(h?d:f),j=bW(i,g);return c&&j>0||j>=i.width*i.height||j>=g.width*g.height}):[]},isNodeIntersecting:(a,b,c=!0)=>{let d=bX(a)?a:f(a);if(!d)return!1;let e=bW(d,b);return c&&e>0||e>=b.width*b.height||e>=d.width*d.height},updateNode:g,updateNodeData:(a,b,c={replace:!1})=>{g(a,a=>{let d="function"==typeof b?b(a):b;return c.replace?{...a,data:d}:{...a,data:{...a.data,...d}}},c)},updateEdge:h,updateEdgeData:(a,b,c={replace:!1})=>{h(a,a=>{let d="function"==typeof b?b(a):b;return c.replace?{...a,data:d}:{...a,data:{...a.data,...d}}},c)},getNodesBounds:a=>{let{nodeLookup:c,nodeOrigin:d}=b.getState();return((a,b={nodeOrigin:[0,0]})=>{if(0===a.length)return{x:0,y:0,width:0,height:0};let c=!1,d=a.reduce((a,d)=>{let e="string"==typeof d,f=b.nodeLookup||e?void 0:d;return(b.nodeLookup&&(f=e?b.nodeLookup.get(d):bE(d)?d:b.nodeLookup.get(d.id)),f)?(c=!0,bP(a,bT(f,b.nodeOrigin))):a},{x:1/0,y:1/0,x2:-1/0,y2:-1/0});return c?bR(d):{x:0,y:0,width:0,height:0}})(a,{nodeLookup:c,nodeOrigin:d})},getHandleConnections:({type:a,id:c,nodeId:d})=>Array.from(b.getState().connectionLookup.get(`${d}-${a}${c?`-${c}`:""}`)?.values()??[]),getNodeConnections:({type:a,handleId:c,nodeId:d})=>Array.from(b.getState().connectionLookup.get(`${d}${a?c?`-${a}-${c}`:`-${a}`:""}`)?.values()??[]),fitView:async a=>{let d,e,f=b.getState().fitViewResolver??{promise:new Promise((a,b)=>{d=a,e=b}),resolve:d,reject:e};return b.setState({fitViewQueued:!0,fitViewOptions:a,fitViewResolver:f}),c.nodeQueue.push(a=>[...a]),f.promise}}},[]);return(0,n.useMemo)(()=>({...e,...a,viewportInitialized:d}),[d])}let dA=void 0,dB={position:"absolute",width:"100%",height:"100%",top:0,left:0},dC=a=>({userSelectionActive:a.userSelectionActive,lib:a.lib,connectionInProgress:a.connection.inProgress});function dD({onPaneContextMenu:a,zoomOnScroll:b=!0,zoomOnPinch:c=!0,panOnScroll:d=!1,panActivationKeyPressed:e,panOnScrollSpeed:g=.5,panOnScrollMode:h=f.Free,zoomOnDoubleClick:i=!0,panOnDrag:j=!0,defaultViewport:k,translateExtent:l,minZoom:o,maxZoom:p,zoomActivationKeyCode:q,preventScrolling:r=!0,children:s,noWheelClassName:t,noPanClassName:u,onViewportChange:v,isControlledViewport:w,paneClickDistance:x,selectionOnDrag:y}){let z=cX(),A=(0,n.useRef)(null),{userSelectionActive:B,lib:C,connectionInProgress:D}=cW(dC,cR);return dk(q),(0,n.useRef)(),cX(),(0,n.useCallback)(a=>{v?.({x:a[0],y:a[1],zoom:a[2]}),w||z.setState({transform:a})},[v,w]),(0,m.jsx)("div",{className:"react-flow__renderer",ref:A,style:dB,children:s})}let dE=a=>({userSelectionActive:a.userSelectionActive,userSelectionRect:a.userSelectionRect});function dF(){let{userSelectionActive:a,userSelectionRect:b}=cW(dE,cR);return a&&b?(0,m.jsx)("div",{className:"react-flow__selection react-flow__container",style:{width:b.width,height:b.height,transform:`translate(${b.x}px, ${b.y}px)`}}):null}let dG=(a,b)=>c=>{c.target===b.current&&a?.(c)},dH=a=>({userSelectionActive:a.userSelectionActive,elementsSelectable:a.elementsSelectable,dragging:a.paneDragging,panBy:a.panBy,autoPanSpeed:a.autoPanSpeed});function dI({isSelecting:a,selectionKeyPressed:b,selectionMode:c=g.Full,panOnDrag:d,autoPanOnSelection:e,paneClickDistance:f,selectionOnDrag:h,onSelectionStart:i,onSelectionEnd:j,onPaneClick:k,onPaneContextMenu:l,onPaneScroll:p,onPaneMouseEnter:q,onPaneMouseMove:r,onPaneMouseLeave:s,children:t}){let u=(0,n.useRef)(0),v=cX(),{userSelectionActive:w,elementsSelectable:x,dragging:y,panBy:z,autoPanSpeed:A}=cW(dH,cR),B=x&&(a||w),C=(0,n.useRef)(null),D=(0,n.useRef)(),E=(0,n.useRef)(new Set),F=(0,n.useRef)(new Set),G=(0,n.useRef)(!1),H=(0,n.useRef)(!1),I=(0,n.useRef)({x:0,y:0}),J=(0,n.useRef)(!1),K=a=>{if(H.current||G.current||v.getState().connection.inProgress){H.current=!1,G.current=!1;return}k?.(a),v.getState().resetSelectedElements(),v.setState({nodesSelectionActive:!1})};function L(a,b){let{userSelectionRect:d}=v.getState();if(!d)return;let{transform:e,nodeLookup:f,edgeLookup:h,connectionLookup:i,triggerNodeChanges:j,triggerEdgeChanges:k,defaultEdgeOptions:l}=v.getState(),m={x:d.startX,y:d.startY},{x:n,y:o}=b0(m,e),p={startX:m.x,startY:m.y,x:a<n?a:n,y:b<o?b:o,width:Math.abs(a-n),height:Math.abs(b-o)},q=E.current,r=F.current;E.current=new Set(bH(f,p,e,c===g.Partial,!0).map(a=>a.id)),F.current=new Set;let s=l?.selectable??!0;for(let a of E.current){let b=i.get(a);if(b)for(let{edgeId:a}of b.values()){let b=h.get(a);b&&(b.selectable??s)&&F.current.add(a)}}b7(q,E.current)||j(dn(f,E.current,!0)),b7(r,F.current)||k(dn(h,F.current)),v.setState({userSelectionRect:p,userSelectionActive:!0,nodesSelectionActive:!1})}let M=()=>{cancelAnimationFrame(u.current),u.current=0,J.current=!1},N=!0===d||Array.isArray(d)&&d.includes(0);return(0,m.jsxs)("div",{className:o(["react-flow__pane",{draggable:N,dragging:y,selection:a}]),onClick:B?void 0:dG(K,C),onContextMenu:dG(a=>{if(Array.isArray(d)&&d?.includes(2))return void a.preventDefault();l?.(a)},C),onWheel:dG(p?a=>p(a):void 0,C),onPointerEnter:B?void 0:q,onPointerMove:B?a=>{let{userSelectionRect:c,transform:d,resetSelectedElements:g}=v.getState();if(!D.current||!c)return;let{x:h,y:j}=cc(a.nativeEvent,D.current);I.current={x:h,y:j};let k=b0({x:c.startX,y:c.startY},d);if(!H.current){if(Math.hypot(h-k.x,j-k.y)<=(b?0:f))return;g(),i?.(a)}H.current=!0,J.current||(!function a(){if(!e||!D.current)return;let[b,c]=bO(I.current,D.current,A);z({x:b,y:c}).then(b=>{if(!H.current||!b){u.current=requestAnimationFrame(a);return}let{x:c,y:d}=I.current;L(c,d),u.current=requestAnimationFrame(a)})}(),J.current=!0),L(h,j)}:r,onPointerUp:a=>{if(!B){a.target===C.current&&v.getState().connection.inProgress&&(G.current=!0);return}0===a.button&&(a.target?.releasePointerCapture?.(a.pointerId),!w&&a.target===C.current&&v.getState().userSelectionRect&&K?.(a),v.setState({userSelectionActive:!1,userSelectionRect:null}),H.current&&(j?.(a),v.setState({nodesSelectionActive:E.current.size>0})),M())},onPointerCancel:B?a=>{a.target?.releasePointerCapture?.(a.pointerId),M()}:void 0,onPointerDownCapture:B?c=>{if("touch"===c.pointerType&&!1!==d&&!b)return;let{domNode:e,transform:f}=v.getState();if(D.current=e?.getBoundingClientRect(),!D.current)return;let g=c.target===C.current;if(!g&&c.target.closest(".nokey")||!a||!(h&&g||b)||0!==c.button||!c.isPrimary)return;c.target?.setPointerCapture?.(c.pointerId),H.current=!1;let{x:i,y:j}=cc(c.nativeEvent,D.current),k=b_({x:i,y:j},f);v.setState({userSelectionRect:{width:0,height:0,startX:k.x,startY:k.y,x:i,y:j}}),g||(c.stopPropagation(),c.preventDefault())}:void 0,onClickCapture:B?a=>{H.current&&(a.stopPropagation(),H.current=!1)}:void 0,onPointerLeave:s,ref:C,style:dB,children:[t,(0,m.jsx)(dF,{})]})}function dJ({id:a,store:b,unselect:c=!1,nodeRef:d}){let{addSelectedNodes:e,unselectNodesAndEdges:f,multiSelectionActive:g,nodeLookup:h,onError:i}=b.getState(),j=h.get(a);if(!j)return void i?.("012",bx.error012(a));b.setState({nodesSelectionActive:!1}),j.selected?(c||j.selected&&g)&&(f({nodes:[j],edges:[]}),requestAnimationFrame(()=>d?.current?.blur())):e([a])}function dK({nodeRef:a,disabled:b=!1,noDragClassName:c,handleSelector:d,nodeId:e,isSelectable:f,nodeClickDistance:g}){cX();let[h,i]=(0,n.useState)(!1);return(0,n.useRef)(),h}function dL(){let a=cX();return(0,n.useCallback)(b=>{let{nodeExtent:c,snapToGrid:d,snapGrid:e,nodesDraggable:f,onError:g,updateNodePositions:h,nodeLookup:i,nodeOrigin:j}=a.getState(),k=new Map,l=a=>a.selected&&(a.draggable||f&&void 0===a.draggable),m=d?e[0]:5,n=d?e[1]:5,o=b.direction.x*m*b.factor,p=b.direction.y*n*b.factor;for(let[,a]of i){if(!l(a))continue;let b={x:a.internals.positionAbsolute.x+o,y:a.internals.positionAbsolute.y+p};d&&(b=b$(b,e));let{position:f,positionAbsolute:h}=function({nodeId:a,nextPosition:b,nodeLookup:c,nodeOrigin:d=[0,0],nodeExtent:e,onError:f}){let g=c.get(a),h=g.parentId?c.get(g.parentId):void 0,{x:i,y:j}=h?h.internals.positionAbsolute:{x:0,y:0},k=g.origin??d,l=g.extent||e;if("parent"!==g.extent||g.expandParent)h&&b4(g.extent)&&(l=[[g.extent[0][0]+i,g.extent[0][1]+j],[g.extent[1][0]+i,g.extent[1][1]+j]]);else if(h){let{width:a,height:b}=b5(h);a&&b&&(l=[[i,j],[i+a,j+b]])}else f?.("005",bx.error005());let m=b4(l)?bL(b,l,g.measured):b;return(void 0===g.measured.width||void 0===g.measured.height)&&f?.("015",bx.error015()),{position:{x:m.x-i+(g.measured.width??0)*k[0],y:m.y-j+(g.measured.height??0)*k[1]},positionAbsolute:m}}({nodeId:a.id,nextPosition:b,nodeLookup:i,nodeExtent:c,nodeOrigin:j,onError:g});a.position=f,a.internals.positionAbsolute=h,k.set(a.id,a)}h(k)},[])}let dM=(0,n.createContext)(null),dN=dM.Provider;dM.Consumer;let dO=a=>({connectOnClick:a.connectOnClick,noPanClassName:a.noPanClassName,rfId:a.rfId}),dP=(0,n.createContext)(null);function dQ({children:a}){let b=cW(dO,cR);return(0,m.jsx)(dP.Provider,{value:b,children:a})}let dR={connectingFrom:!1,connectingTo:!1,clickConnecting:!1,isPossibleEndHandle:!0,connectionInProcess:!1,clickConnectionInProcess:!1,valid:!1},dS=(0,n.memo)(dt(function({type:a="source",position:b=j.Top,isValidConnection:c,isConnectable:d=!0,isConnectableStart:f=!0,isConnectableEnd:g=!0,id:h,onConnect:i,children:k,className:l,onMouseDown:p,onTouchStart:q,...r},s){let t=h||null,u="target"===a,v=cX(),w=(0,n.useContext)(dM),{connectOnClick:x,noPanClassName:y,rfId:z}=function(){let a=(0,n.useContext)(dP);if(!a)throw Error("useHandleConfig must be used within a HandleConfigProvider");return a}(),{connectingFrom:A,connectingTo:B,clickConnecting:C,isPossibleEndHandle:D,connectionInProcess:E,clickConnectionInProcess:F,valid:G}=cW(b=>{let{connectionClickStartHandle:c,connectionMode:d,connection:f}=b,{fromHandle:g,toHandle:h,isValid:i}=f;if(!g&&!c)return dR;let j=h?.nodeId===w&&h?.id===t&&h?.type===a;return{connectingFrom:g?.nodeId===w&&g?.id===t&&g?.type===a,connectingTo:j,clickConnecting:c?.nodeId===w&&c?.id===t&&c?.type===a,isPossibleEndHandle:d===e.Strict?g?.type!==a:w!==g?.nodeId||t!==g?.id,connectionInProcess:!!g,clickConnectionInProcess:!!c,valid:j&&i}},cR);w||v.getState().onError?.("010",bx.error010());let H=a=>{let{defaultEdgeOptions:b,onConnect:c,hasDefaultEdges:d}=v.getState(),e={...b,...a};if(d){let{edges:a,setEdges:b,onError:c}=v.getState();b(function(a,b,c={}){return((a,b,c={})=>{let d,e;if(!a.source||!a.target)return c.onError?.("006",bx.error006()),b;let f=c.getEdgeId||cj;return(e=d=bD(a)?{...a}:{...a,id:f(a)},b.some(a=>a.source===e.source&&a.target===e.target&&(a.sourceHandle===e.sourceHandle||!a.sourceHandle&&!e.sourceHandle)&&(a.targetHandle===e.targetHandle||!a.targetHandle&&!e.targetHandle)))?b:(null===d.sourceHandle&&delete d.sourceHandle,null===d.targetHandle&&delete d.targetHandle,b.concat(d))})(a,b,{...c,onError:c.onError??dr})}(e,a,{onError:c}))}c?.(e),i?.(e)},I=a=>{if(!w)return;let b="clientX"in a.nativeEvent;if(f&&(b&&0===a.button||!b)){let b=v.getState();cJ.onPointerDown(a.nativeEvent,{handleDomNode:a.currentTarget,autoPanOnConnect:b.autoPanOnConnect,connectionMode:b.connectionMode,connectionRadius:b.connectionRadius,domNode:b.domNode,nodeLookup:b.nodeLookup,lib:b.lib,isTarget:u,handleId:t,nodeId:w,flowId:b.rfId,panBy:b.panBy,cancelConnection:b.cancelConnection,onConnectStart:b.onConnectStart,onConnectEnd:(...a)=>v.getState().onConnectEnd?.(...a),updateConnection:b.updateConnection,onConnect:H,isValidConnection:c||((...a)=>v.getState().isValidConnection?.(...a)??!0),getTransform:()=>v.getState().transform,getFromHandle:()=>v.getState().connection.fromHandle,autoPanSpeed:b.autoPanSpeed,dragThreshold:b.connectionDragThreshold})}b?p?.(a):q?.(a)};return(0,m.jsx)("div",{"data-handleid":t,"data-nodeid":w,"data-handlepos":b,"data-id":`${z}-${w}-${t}-${a}`,className:o(["react-flow__handle",`react-flow__handle-${b}`,"nodrag",y,l,{source:!u,target:u,connectable:d,connectablestart:f,connectableend:g,clickconnecting:C,connectingfrom:A,connectingto:B,valid:G,connectionindicator:d&&(!E||D)&&(E||F?g:f)}]),onMouseDown:I,onTouchStart:I,onClick:x?b=>{let{onClickConnectStart:d,onClickConnectEnd:e,connectionClickStartHandle:g,connectionMode:h,isValidConnection:i,lib:j,rfId:k,nodeLookup:l,connection:m}=v.getState();if(!w||!g&&!f)return;if(!g){d?.(b.nativeEvent,{nodeId:w,handleId:t,handleType:a}),v.setState({connectionClickStartHandle:{nodeId:w,type:a,id:t}});return}let n=ca(b.target),o=c||i,{connection:p,isValid:q}=cJ.isValid(b.nativeEvent,{handle:{nodeId:w,id:t,type:a},connectionMode:h,fromNodeId:g.nodeId,fromHandleId:g.id||null,fromType:g.type,isValidConnection:o,flowId:k,doc:n,lib:j,nodeLookup:l});q&&p&&H(p);let r=structuredClone(m);delete r.inProgress,r.toPosition=r.toHandle?r.toHandle.position:null,e?.(b,r),v.setState({connectionClickStartHandle:null})}:void 0,ref:s,...r,children:k})})),dT={ArrowUp:{x:0,y:-1},ArrowDown:{x:0,y:1},ArrowLeft:{x:-1,y:0},ArrowRight:{x:1,y:0}},dU={input:function({data:a,isConnectable:b,sourcePosition:c=j.Bottom}){return(0,m.jsxs)(m.Fragment,{children:[a?.label,(0,m.jsx)(dS,{type:"source",position:c,isConnectable:b})]})},default:function({data:a,isConnectable:b,targetPosition:c=j.Top,sourcePosition:d=j.Bottom}){return(0,m.jsxs)(m.Fragment,{children:[(0,m.jsx)(dS,{type:"target",position:c,isConnectable:b}),a?.label,(0,m.jsx)(dS,{type:"source",position:d,isConnectable:b})]})},output:function({data:a,isConnectable:b,targetPosition:c=j.Top}){return(0,m.jsxs)(m.Fragment,{children:[(0,m.jsx)(dS,{type:"target",position:c,isConnectable:b}),a?.label]})},group:function(){return null}},dV=a=>{let{width:b,height:c,x:d,y:e}=bG(a.nodeLookup,{filter:a=>!!a.selected});return{width:bY(b)?b:null,height:bY(c)?c:null,userSelectionActive:a.userSelectionActive,transformString:`translate(${a.transform[0]}px,${a.transform[1]}px) scale(${a.transform[2]}) translate(${d}px,${e}px)`}};function dW({onSelectionContextMenu:a,noPanClassName:b,disableKeyboardA11y:c}){let d=cX(),{width:e,height:f,transformString:g,userSelectionActive:h}=cW(dV,cR),i=dL(),j=(0,n.useRef)(null),k=!h&&null!==e&&null!==f;if(dK({nodeRef:j,disabled:!k}),!k)return null;let l=a?b=>{a(b,d.getState().nodes.filter(a=>a.selected))}:void 0;return(0,m.jsx)("div",{className:o(["react-flow__nodesselection","react-flow__container",b]),style:{transform:g},children:(0,m.jsx)("div",{ref:j,className:"react-flow__nodesselection-rect",onContextMenu:l,tabIndex:c?void 0:-1,onKeyDown:c?void 0:a=>{Object.prototype.hasOwnProperty.call(dT,a.key)&&(a.preventDefault(),i({direction:dT[a.key],factor:a.shiftKey?4:1}))},style:{width:e,height:f}})})}let dX=void 0,dY=a=>({nodesSelectionActive:a.nodesSelectionActive,userSelectionActive:a.userSelectionActive});function dZ({children:a,onPaneClick:b,onPaneMouseEnter:c,onPaneMouseMove:d,onPaneMouseLeave:e,onPaneContextMenu:f,onPaneScroll:g,paneClickDistance:h,deleteKeyCode:i,selectionKeyCode:j,selectionOnDrag:k,selectionMode:l,onSelectionStart:n,onSelectionEnd:o,multiSelectionKeyCode:p,panActivationKeyCode:q,zoomActivationKeyCode:r,elementsSelectable:s,zoomOnScroll:t,zoomOnPinch:u,panOnScroll:v,panOnScrollSpeed:w,panOnScrollMode:x,zoomOnDoubleClick:y,panOnDrag:z,autoPanOnSelection:A,defaultViewport:B,translateExtent:C,minZoom:D,maxZoom:E,preventScrolling:F,onSelectionContextMenu:G,noWheelClassName:H,noPanClassName:I,disableKeyboardA11y:J,onViewportChange:K,isControlledViewport:L}){let{nodesSelectionActive:M,userSelectionActive:N}=cW(dY,cR),O=dk(j,{target:dX}),P=dk(q,{target:dX}),Q=P||z,R=P||v,S=k&&!0!==Q,T=O||N||S;return!function({deleteKeyCode:a,multiSelectionKeyCode:b}){cX();let{deleteElements:c}=dz();dk(a,{actInsideInputWithModifier:!1}),dk(b,{target:dA})}({deleteKeyCode:i,multiSelectionKeyCode:p}),(0,m.jsx)(dD,{onPaneContextMenu:f,elementsSelectable:s,zoomOnScroll:t,zoomOnPinch:u,panOnScroll:R,panActivationKeyPressed:P,panOnScrollSpeed:w,panOnScrollMode:x,zoomOnDoubleClick:y,panOnDrag:!O&&Q,defaultViewport:B,translateExtent:C,minZoom:D,maxZoom:E,zoomActivationKeyCode:r,preventScrolling:F,noWheelClassName:H,noPanClassName:I,onViewportChange:K,isControlledViewport:L,paneClickDistance:h,selectionOnDrag:S,children:(0,m.jsxs)(dI,{onSelectionStart:n,onSelectionEnd:o,onPaneClick:b,onPaneMouseEnter:c,onPaneMouseMove:d,onPaneMouseLeave:e,onPaneContextMenu:f,onPaneScroll:g,panOnDrag:Q,autoPanOnSelection:A,isSelecting:!!T,selectionMode:l,selectionKeyPressed:O,paneClickDistance:h,selectionOnDrag:S,children:[a,M&&(0,m.jsx)(dW,{onSelectionContextMenu:G,noPanClassName:I,disableKeyboardA11y:J})]})})}dZ.displayName="FlowRenderer";let d$=(0,n.memo)(dZ),d_=a=>a.updateNodeInternals;var d0=(0,n.memo)(function({id:a,onClick:b,onMouseEnter:c,onMouseMove:d,onMouseLeave:e,onContextMenu:f,onDoubleClick:g,nodesDraggable:h,elementsSelectable:i,nodesConnectable:j,nodesFocusable:k,resizeObserver:l,noDragClassName:p,noPanClassName:q,disableKeyboardA11y:r,rfId:s,nodeTypes:t,nodeClickDistance:u,onError:v}){let{node:w,internals:x,isParent:y}=cW(b=>{let c=b.nodeLookup.get(a),d=b.parentLookup.has(a);return{node:c,internals:c.internals,isParent:d}},cR),z=w.type||"default",A=t?.[z]||dU[z];void 0===A&&(v?.("003",bx.error003(z)),z="default",A=t?.default||dU.default);let B=!!(w.draggable||h&&void 0===w.draggable),C=!!(w.selectable||i&&void 0===w.selectable),D=!!(w.connectable||j&&void 0===w.connectable),E=!!(w.focusable||k&&void 0===w.focusable),F=cX(),G=b6(w),H=function({node:a,nodeType:b,hasDimensions:c,resizeObserver:d}){cX();let e=(0,n.useRef)(null);return(0,n.useRef)(null),(0,n.useRef)(a.sourcePosition),(0,n.useRef)(a.targetPosition),(0,n.useRef)(b),c&&a.internals.handleBounds,e}({node:w,nodeType:z,hasDimensions:G,resizeObserver:l}),I=dK({nodeRef:H,disabled:w.hidden||!B,noDragClassName:p,handleSelector:w.dragHandle,nodeId:a,isSelectable:C,nodeClickDistance:u}),J=dL();if(w.hidden)return null;let K=b5(w),L=void 0===w.internals.handleBounds?{width:w.width??w.initialWidth??w.style?.width,height:w.height??w.initialHeight??w.style?.height}:{width:w.width??w.style?.width,height:w.height??w.style?.height},M=C||B||b||c||d||e,N=c?a=>c(a,{...x.userNode}):void 0,O=d?a=>d(a,{...x.userNode}):void 0,P=e?a=>e(a,{...x.userNode}):void 0,Q=f?a=>f(a,{...x.userNode}):void 0,R=g?a=>g(a,{...x.userNode}):void 0;return(0,m.jsx)("div",{className:o(["react-flow__node",`react-flow__node-${z}`,{[q]:B},w.className,{selected:w.selected,selectable:C,parent:y,draggable:B,dragging:I}]),ref:H,style:{zIndex:x.z,transform:`translate(${x.positionAbsolute.x}px,${x.positionAbsolute.y}px)`,pointerEvents:M?"all":"none",visibility:G?"visible":"hidden",...w.style,...L},"data-id":a,"data-testid":`rf__node-${a}`,onMouseEnter:N,onMouseMove:O,onMouseLeave:P,onContextMenu:Q,onClick:c=>{let{selectNodesOnDrag:d,nodeDragThreshold:e}=F.getState();C&&(!d||!B||e>0)&&dJ({id:a,store:F,nodeRef:H}),b&&b(c,{...x.userNode})},onDoubleClick:R,onKeyDown:E?b=>{if(!function(a){let b=a.composedPath?.()?.[0]||a.target;return b?.nodeType===1&&(cb.includes(b.nodeName)||b.hasAttribute("contenteditable")||!!b.closest(".nokey"))}(b.nativeEvent)&&!r){if(bz.includes(b.key)&&C)dJ({id:a,store:F,unselect:"Escape"===b.key,nodeRef:H});else if(B&&w.selected&&Object.prototype.hasOwnProperty.call(dT,b.key)){b.preventDefault();let{ariaLabelConfig:a}=F.getState();F.setState({ariaLiveMessage:a["node.a11yDescription.ariaLiveMessage"]({direction:b.key.replace("Arrow","").toLowerCase(),x:~~x.positionAbsolute.x,y:~~x.positionAbsolute.y})}),J({direction:dT[b.key],factor:b.shiftKey?4:1})}}}:void 0,tabIndex:E?0:void 0,onFocus:E?()=>{if(r||!H.current?.matches(":focus-visible"))return;let{transform:b,width:c,height:d,autoPanOnNodeFocus:e,setCenter:f}=F.getState();e&&(bH(new Map([[a,w]]),{x:0,y:0,width:c,height:d},b,!0).length>0||f(w.position.x+K.width/2,w.position.y+K.height/2,{zoom:b[2]}))}:void 0,role:w.ariaRole??(E?"group":void 0),"aria-roledescription":"node","aria-describedby":r?void 0:`${c$}-${s}`,"aria-label":w.ariaLabel,...w.domAttributes,children:(0,m.jsx)(dN,{value:a,children:(0,m.jsx)(A,{id:a,data:w.data,type:z,positionAbsoluteX:x.positionAbsolute.x,positionAbsoluteY:x.positionAbsolute.y,selected:w.selected??!1,selectable:C,draggable:B,deletable:w.deletable??!0,isConnectable:D,sourcePosition:w.sourcePosition,targetPosition:w.targetPosition,dragging:I,dragHandle:w.dragHandle,zIndex:x.z,parentId:w.parentId,...K})})})});let d1=a=>({nodesConnectable:a.nodesConnectable,nodesFocusable:a.nodesFocusable,elementsSelectable:a.elementsSelectable,onError:a.onError});function d2(a){var b;let{nodesConnectable:c,nodesFocusable:d,elementsSelectable:e,onError:f}=cW(d1,cR),g=(b=a.onlyRenderVisibleElements,cW((0,n.useCallback)(a=>b?bH(a.nodeLookup,{x:0,y:0,width:a.width,height:a.height},a.transform,!0).map(a=>a.id):Array.from(a.nodeLookup.keys()),[b]),cR)),h=function(){let a=cW(d_),[b]=(0,n.useState)(()=>"undefined"==typeof ResizeObserver?null:new ResizeObserver(b=>{let c=new Map;b.forEach(a=>{let b=a.target.getAttribute("data-id");c.set(b,{id:b,nodeElement:a.target,force:!0})}),a(c)}));return b}();return(0,m.jsx)("div",{className:"react-flow__nodes",style:dB,children:g.map(b=>(0,m.jsx)(d0,{id:b,nodeTypes:a.nodeTypes,nodeExtent:a.nodeExtent,onClick:a.onNodeClick,onMouseEnter:a.onNodeMouseEnter,onMouseMove:a.onNodeMouseMove,onMouseLeave:a.onNodeMouseLeave,onContextMenu:a.onNodeContextMenu,onDoubleClick:a.onNodeDoubleClick,noDragClassName:a.noDragClassName,noPanClassName:a.noPanClassName,rfId:a.rfId,disableKeyboardA11y:a.disableKeyboardA11y,resizeObserver:h,nodesDraggable:a.nodesDraggable??!0,nodesConnectable:c,nodesFocusable:d,elementsSelectable:e,nodeClickDistance:a.nodeClickDistance,onError:f},b))})}d2.displayName="NodeRenderer";let d3=(0,n.memo)(d2),d4={[i.Arrow]:({color:a="none",strokeWidth:b=1})=>{let c={strokeWidth:b,...a&&{stroke:a}};return(0,m.jsx)("polyline",{className:"arrow",style:c,strokeLinecap:"round",fill:"none",strokeLinejoin:"round",points:"-5,-4 0,0 -5,4"})},[i.ArrowClosed]:({color:a="none",strokeWidth:b=1})=>{let c={strokeWidth:b,...a&&{stroke:a,fill:a}};return(0,m.jsx)("polyline",{className:"arrowclosed",style:c,strokeLinecap:"round",strokeLinejoin:"round",points:"-5,-4 0,0 -5,4 -5,-4"})}},d5=({id:a,type:b,color:c,width:d=12.5,height:e=12.5,markerUnits:f="strokeWidth",strokeWidth:g,orient:h="auto-start-reverse"})=>{let i=function(a){let b=cX();return(0,n.useMemo)(()=>Object.prototype.hasOwnProperty.call(d4,a)?d4[a]:(b.getState().onError?.("009",bx.error009(a)),null),[a])}(b);return i?(0,m.jsx)("marker",{className:"react-flow__arrowhead",id:a,markerWidth:`${d}`,markerHeight:`${e}`,viewBox:"-10 -10 20 20",markerUnits:f,orient:h,refX:"0",refY:"0",children:(0,m.jsx)(i,{color:c,strokeWidth:g})}):null},d6=({defaultColor:a,rfId:b})=>{let c=cW(a=>a.edges),d=cW(a=>a.defaultEdgeOptions),e=(0,n.useMemo)(()=>(function(a,{id:b,defaultColor:c,defaultMarkerStart:d,defaultMarkerEnd:e}){let f=new Set;return a.reduce((a,g)=>([g.markerStart||d,g.markerEnd||e].forEach(d=>{if(d&&"object"==typeof d){let e=ct(d,b);f.has(e)||(a.push({id:e,color:d.color||c,...d}),f.add(e))}}),a),[]).sort((a,b)=>a.id.localeCompare(b.id))})(c,{id:b,defaultColor:a,defaultMarkerStart:d?.markerStart,defaultMarkerEnd:d?.markerEnd}),[c,d,b,a]);return e.length?(0,m.jsx)("svg",{className:"react-flow__marker","aria-hidden":"true",children:(0,m.jsx)("defs",{children:e.map(a=>(0,m.jsx)(d5,{id:a.id,type:a.type,color:a.color,width:a.width,height:a.height,markerUnits:a.markerUnits,strokeWidth:a.strokeWidth,orient:a.orient},a.id))})}):null};d6.displayName="MarkerDefinitions";var d7=(0,n.memo)(d6);function d8({x:a,y:b,label:c,labelStyle:d,labelShowBg:e=!0,labelBgStyle:f,labelBgPadding:g=[2,4],labelBgBorderRadius:h=2,children:i,className:j,...k}){let[l,p]=(0,n.useState)({x:1,y:0,width:0,height:0}),q=o(["react-flow__edge-textwrapper",j]),r=(0,n.useRef)(null);return c?(0,m.jsxs)("g",{transform:`translate(${a-l.width/2} ${b-l.height/2})`,className:q,visibility:l.width?"visible":"hidden",...k,children:[e&&(0,m.jsx)("rect",{width:l.width+2*g[0],x:-g[0],y:-g[1],height:l.height+2*g[1],className:"react-flow__edge-textbg",style:f,rx:h,ry:h}),(0,m.jsx)("text",{className:"react-flow__edge-text",y:l.height/2,dy:"0.3em",ref:r,style:d,children:c}),i]}):null}d8.displayName="EdgeText";let d9=(0,n.memo)(d8);function ea({path:a,labelX:b,labelY:c,label:d,labelStyle:e,labelShowBg:f,labelBgStyle:g,labelBgPadding:h,labelBgBorderRadius:i,interactionWidth:j=20,...k}){return(0,m.jsxs)(m.Fragment,{children:[(0,m.jsx)("path",{...k,d:a,fill:"none",className:o(["react-flow__edge-path",k.className])}),j?(0,m.jsx)("path",{d:a,fill:"none",strokeOpacity:0,strokeWidth:j,className:"react-flow__edge-interaction"}):null,d&&bY(b)&&bY(c)?(0,m.jsx)(d9,{x:b,y:c,label:d,labelStyle:e,labelShowBg:f,labelBgStyle:g,labelBgPadding:h,labelBgBorderRadius:i}):null]})}function eb({pos:a,x1:b,y1:c,x2:d,y2:e}){return a===j.Left||a===j.Right?[.5*(b+d),c]:[b,.5*(c+e)]}function ec({sourceX:a,sourceY:b,sourcePosition:c=j.Bottom,targetX:d,targetY:e,targetPosition:f=j.Top}){let[g,h]=eb({pos:c,x1:a,y1:b,x2:d,y2:e}),[i,k]=eb({pos:f,x1:d,y1:e,x2:a,y2:b}),[l,m,n,o]=ce({sourceX:a,sourceY:b,targetX:d,targetY:e,sourceControlX:g,sourceControlY:h,targetControlX:i,targetControlY:k});return[`M${a},${b} C${g},${h} ${i},${k} ${d},${e}`,l,m,n,o]}function ed(a){return(0,n.memo)(({id:b,sourceX:c,sourceY:d,targetX:e,targetY:f,sourcePosition:g,targetPosition:h,label:i,labelStyle:j,labelShowBg:k,labelBgStyle:l,labelBgPadding:n,labelBgBorderRadius:o,style:p,markerEnd:q,markerStart:r,interactionWidth:s})=>{let[t,u,v]=ec({sourceX:c,sourceY:d,sourcePosition:g,targetX:e,targetY:f,targetPosition:h}),w=a.isInternal?void 0:b;return(0,m.jsx)(ea,{id:w,path:t,labelX:u,labelY:v,label:i,labelStyle:j,labelShowBg:k,labelBgStyle:l,labelBgPadding:n,labelBgBorderRadius:o,style:p,markerEnd:q,markerStart:r,interactionWidth:s})})}let ee=ed({isInternal:!1}),ef=ed({isInternal:!0});function eg(a){return(0,n.memo)(({id:b,sourceX:c,sourceY:d,targetX:e,targetY:f,label:g,labelStyle:h,labelShowBg:i,labelBgStyle:k,labelBgPadding:l,labelBgBorderRadius:n,style:o,sourcePosition:p=j.Bottom,targetPosition:q=j.Top,markerEnd:r,markerStart:s,pathOptions:t,interactionWidth:u})=>{let[v,w,x]=co({sourceX:c,sourceY:d,sourcePosition:p,targetX:e,targetY:f,targetPosition:q,borderRadius:t?.borderRadius,offset:t?.offset,stepPosition:t?.stepPosition}),y=a.isInternal?void 0:b;return(0,m.jsx)(ea,{id:y,path:v,labelX:w,labelY:x,label:g,labelStyle:h,labelShowBg:i,labelBgStyle:k,labelBgPadding:l,labelBgBorderRadius:n,style:o,markerEnd:r,markerStart:s,interactionWidth:u})})}ee.displayName="SimpleBezierEdge",ef.displayName="SimpleBezierEdgeInternal";let eh=eg({isInternal:!1}),ei=eg({isInternal:!0});function ej(a){return(0,n.memo)(({id:b,...c})=>{let d=a.isInternal?void 0:b;return(0,m.jsx)(eh,{...c,id:d,pathOptions:(0,n.useMemo)(()=>({borderRadius:0,offset:c.pathOptions?.offset}),[c.pathOptions?.offset])})})}eh.displayName="SmoothStepEdge",ei.displayName="SmoothStepEdgeInternal";let ek=ej({isInternal:!1}),el=ej({isInternal:!0});function em(a){return(0,n.memo)(({id:b,sourceX:c,sourceY:d,targetX:e,targetY:f,label:g,labelStyle:h,labelShowBg:i,labelBgStyle:j,labelBgPadding:k,labelBgBorderRadius:l,style:n,markerEnd:o,markerStart:p,interactionWidth:q})=>{let[r,s,t]=ck({sourceX:c,sourceY:d,targetX:e,targetY:f}),u=a.isInternal?void 0:b;return(0,m.jsx)(ea,{id:u,path:r,labelX:s,labelY:t,label:g,labelStyle:h,labelShowBg:i,labelBgStyle:j,labelBgPadding:k,labelBgBorderRadius:l,style:n,markerEnd:o,markerStart:p,interactionWidth:q})})}ek.displayName="StepEdge",el.displayName="StepEdgeInternal";let en=em({isInternal:!1}),eo=em({isInternal:!0});function ep(a){return(0,n.memo)(({id:b,sourceX:c,sourceY:d,targetX:e,targetY:f,sourcePosition:g=j.Bottom,targetPosition:h=j.Top,label:i,labelStyle:k,labelShowBg:l,labelBgStyle:n,labelBgPadding:o,labelBgBorderRadius:p,style:q,markerEnd:r,markerStart:s,pathOptions:t,interactionWidth:u})=>{let[v,w,x]=ch({sourceX:c,sourceY:d,sourcePosition:g,targetX:e,targetY:f,targetPosition:h,curvature:t?.curvature}),y=a.isInternal?void 0:b;return(0,m.jsx)(ea,{id:y,path:v,labelX:w,labelY:x,label:i,labelStyle:k,labelShowBg:l,labelBgStyle:n,labelBgPadding:o,labelBgBorderRadius:p,style:q,markerEnd:r,markerStart:s,interactionWidth:u})})}en.displayName="StraightEdge",eo.displayName="StraightEdgeInternal";let eq=ep({isInternal:!1}),er=ep({isInternal:!0});eq.displayName="BezierEdge",er.displayName="BezierEdgeInternal";let es={default:er,straight:eo,step:el,smoothstep:ei,simplebezier:ef},et={sourceX:null,sourceY:null,targetX:null,targetY:null,sourcePosition:null,targetPosition:null,zIndex:void 0},eu="react-flow__edgeupdater";function ev({position:a,centerX:b,centerY:c,radius:d=10,onMouseDown:e,onMouseEnter:f,onMouseOut:g,type:h}){return(0,m.jsx)("circle",{onMouseDown:e,onMouseEnter:f,onMouseOut:g,className:o([eu,`${eu}-${h}`]),cx:a===j.Left?b-d:a===j.Right?b+d:b,cy:a===j.Top?c-d:a===j.Bottom?c+d:c,r:d,stroke:"transparent",fill:"transparent"})}function ew({isReconnectable:a,reconnectRadius:b,edge:c,sourceX:d,sourceY:e,targetX:f,targetY:g,sourcePosition:h,targetPosition:i,onReconnect:j,onReconnectStart:k,onReconnectEnd:l,setReconnecting:n,setUpdateHover:o}){let p=cX(),q=(a,b)=>{if(0!==a.button)return;let{autoPanOnConnect:d,domNode:e,connectionMode:f,connectionRadius:g,lib:h,onConnectStart:i,cancelConnection:m,nodeLookup:o,rfId:q,panBy:r,updateConnection:s}=p.getState(),t="target"===b.type;cJ.onPointerDown(a.nativeEvent,{autoPanOnConnect:d,connectionMode:f,connectionRadius:g,domNode:e,handleId:b.id,nodeId:b.nodeId,nodeLookup:o,isTarget:t,edgeUpdaterType:b.type,lib:h,flowId:q,cancelConnection:m,panBy:r,isValidConnection:(...a)=>p.getState().isValidConnection?.(...a)??!0,onConnect:a=>j?.(c,a),onConnectStart:(d,e)=>{n(!0),k?.(a,c,b.type),i?.(d,e)},onConnectEnd:(...a)=>p.getState().onConnectEnd?.(...a),onReconnectEnd:(a,d)=>{n(!1),l?.(a,c,b.type,d)},updateConnection:s,getTransform:()=>p.getState().transform,getFromHandle:()=>p.getState().connection.fromHandle,dragThreshold:p.getState().connectionDragThreshold,handleDomNode:a.currentTarget})},r=()=>o(!0),s=()=>o(!1);return(0,m.jsxs)(m.Fragment,{children:[(!0===a||"source"===a)&&(0,m.jsx)(ev,{position:h,centerX:d,centerY:e,radius:b,onMouseDown:a=>q(a,{nodeId:c.target,id:c.targetHandle??null,type:"target"}),onMouseEnter:r,onMouseOut:s,type:"source"}),(!0===a||"target"===a)&&(0,m.jsx)(ev,{position:i,centerX:f,centerY:g,radius:b,onMouseDown:a=>q(a,{nodeId:c.source,id:c.sourceHandle??null,type:"source"}),onMouseEnter:r,onMouseOut:s,type:"target"})]})}var ex=(0,n.memo)(function({id:a,edgesFocusable:b,edgesReconnectable:c,elementsSelectable:d,onClick:f,onDoubleClick:g,onContextMenu:h,onMouseEnter:i,onMouseMove:k,onMouseLeave:l,reconnectRadius:p,onReconnect:q,onReconnectStart:r,onReconnectEnd:s,rfId:t,edgeTypes:u,noPanClassName:v,onError:w,disableKeyboardA11y:x}){let y=cW(b=>b.edgeLookup.get(a)),z=cW(a=>a.defaultEdgeOptions),A=(y=z?{...z,...y}:y).type||"default",B=u?.[A]||es[A];void 0===B&&(w?.("011",bx.error011(A)),A="default",B=u?.default||es.default);let C=!!(y.focusable||b&&void 0===y.focusable),D=void 0!==q&&(y.reconnectable||c&&void 0===y.reconnectable),E=!!(y.selectable||d&&void 0===y.selectable),F=(0,n.useRef)(null),[G,H]=(0,n.useState)(!1),[I,J]=(0,n.useState)(!1),K=cX(),{zIndex:L=y.zIndex,sourceX:M,sourceY:N,targetX:O,targetY:P,sourcePosition:Q,targetPosition:R}=cW((0,n.useCallback)(b=>{let c=b.nodeLookup.get(y.source),d=b.nodeLookup.get(y.target);if(!c||!d)return et;let f=function(a){let{sourceNode:b,targetNode:c}=a;if(!cp(b)||!cp(c))return null;let d=b.internals.handleBounds||cq(b.handles),f=c.internals.handleBounds||cq(c.handles),g=cs(d?.source??[],a.sourceHandle),h=cs(a.connectionMode===e.Strict?f?.target??[]:(f?.target??[]).concat(f?.source??[]),a.targetHandle);if(!g||!h)return a.onError?.("008",bx.error008(!g?"source":"target",{id:a.id,sourceHandle:a.sourceHandle,targetHandle:a.targetHandle})),null;let i=g?.position||j.Bottom,k=h?.position||j.Top,l=cr(b,g,i),m=cr(c,h,k);return{sourceX:l.x,sourceY:l.y,targetX:m.x,targetY:m.y,sourcePosition:i,targetPosition:k}}({id:a,sourceNode:c,targetNode:d,sourceHandle:y.sourceHandle||null,targetHandle:y.targetHandle||null,connectionMode:b.connectionMode,onError:w}),g=function({sourceNode:a,targetNode:b,selected:c=!1,zIndex:d=0,elevateOnSelect:e=!1,zIndexMode:f="basic"}){if("manual"===f)return d;let g=Math.max(a.parentId||e&&a.selected?a.internals.z:0,b.parentId||e&&b.selected?b.internals.z:0);return(e&&c?d+1e3:d)+g}({selected:y.selected,zIndex:y.zIndex,sourceNode:c,targetNode:d,elevateOnSelect:b.elevateEdgesOnSelect,zIndexMode:b.zIndexMode});return{...f||et,zIndex:g}},[y.source,y.target,y.sourceHandle,y.targetHandle,y.selected,y.zIndex,w]),cR),S=(0,n.useMemo)(()=>y.markerStart?`url('#${ct(y.markerStart,t)}')`:void 0,[y.markerStart,t]),T=(0,n.useMemo)(()=>y.markerEnd?`url('#${ct(y.markerEnd,t)}')`:void 0,[y.markerEnd,t]);if(y.hidden||null===M||null===N||null===O||null===P)return null;let U=g?a=>{g(a,{...y})}:void 0,V=h?a=>{h(a,{...y})}:void 0,W=i?a=>{i(a,{...y})}:void 0,X=k?a=>{k(a,{...y})}:void 0,Y=l?a=>{l(a,{...y})}:void 0;return(0,m.jsx)("svg",{style:{zIndex:L},children:(0,m.jsxs)("g",{className:o(["react-flow__edge",`react-flow__edge-${A}`,y.className,v,{selected:y.selected,animated:y.animated,inactive:!E&&!f,updating:G,selectable:E}]),onClick:b=>{let{addSelectedEdges:c,unselectNodesAndEdges:d,multiSelectionActive:e}=K.getState();E&&(K.setState({nodesSelectionActive:!1}),y.selected&&e?(d({nodes:[],edges:[y]}),F.current?.blur()):c([a])),f&&f(b,y)},onDoubleClick:U,onContextMenu:V,onMouseEnter:W,onMouseMove:X,onMouseLeave:Y,onKeyDown:C?b=>{if(!x&&bz.includes(b.key)&&E){let{unselectNodesAndEdges:c,addSelectedEdges:d}=K.getState();"Escape"===b.key?(F.current?.blur(),c({edges:[y]})):d([a])}}:void 0,tabIndex:C?0:void 0,role:y.ariaRole??(C?"group":"img"),"aria-roledescription":"edge","data-id":a,"data-testid":`rf__edge-${a}`,"aria-label":null===y.ariaLabel?void 0:y.ariaLabel||`Edge from ${y.source} to ${y.target}`,"aria-describedby":C?`${c_}-${t}`:void 0,ref:F,...y.domAttributes,children:[!I&&(0,m.jsx)(B,{id:a,source:y.source,target:y.target,type:y.type,selected:y.selected,animated:y.animated,selectable:E,deletable:y.deletable??!0,label:y.label,labelStyle:y.labelStyle,labelShowBg:y.labelShowBg,labelBgStyle:y.labelBgStyle,labelBgPadding:y.labelBgPadding,labelBgBorderRadius:y.labelBgBorderRadius,sourceX:M,sourceY:N,targetX:O,targetY:P,sourcePosition:Q,targetPosition:R,data:y.data,style:y.style,sourceHandleId:y.sourceHandle,targetHandleId:y.targetHandle,markerStart:S,markerEnd:T,pathOptions:"pathOptions"in y?y.pathOptions:void 0,interactionWidth:y.interactionWidth}),D&&(0,m.jsx)(ew,{edge:y,isReconnectable:D,reconnectRadius:p,onReconnect:q,onReconnectStart:r,onReconnectEnd:s,sourceX:M,sourceY:N,targetX:O,targetY:P,sourcePosition:Q,targetPosition:R,setUpdateHover:H,setReconnecting:J})]})})});let ey=a=>({edgesFocusable:a.edgesFocusable,edgesReconnectable:a.edgesReconnectable,elementsSelectable:a.elementsSelectable,connectionMode:a.connectionMode,onError:a.onError});function ez({defaultMarkerColor:a,onlyRenderVisibleElements:b,rfId:c,edgeTypes:d,noPanClassName:e,onReconnect:f,onEdgeContextMenu:g,onEdgeMouseEnter:h,onEdgeMouseMove:i,onEdgeMouseLeave:j,onEdgeClick:k,reconnectRadius:l,onEdgeDoubleClick:o,onReconnectStart:p,onReconnectEnd:q,disableKeyboardA11y:r}){let{edgesFocusable:s,edgesReconnectable:t,elementsSelectable:u,onError:v}=cW(ey,cR),w=cW((0,n.useCallback)(a=>{if(!b)return a.edges.map(a=>a.id);let c=[];if(a.width&&a.height)for(let b of a.edges){let d=a.nodeLookup.get(b.source),e=a.nodeLookup.get(b.target);d&&e&&function({sourceNode:a,targetNode:b,width:c,height:d,transform:e}){let f=bP(bT(a),bT(b));return f.x===f.x2&&(f.x2+=1),f.y===f.y2&&(f.y2+=1),bW({x:-e[0]/e[2],y:-e[1]/e[2],width:c/e[2],height:d/e[2]},bR(f))>0}({sourceNode:d,targetNode:e,width:a.width,height:a.height,transform:a.transform})&&c.push(b.id)}return c},[b]),cR);return(0,m.jsxs)("div",{className:"react-flow__edges",children:[(0,m.jsx)(d7,{defaultColor:a,rfId:c}),w.map(a=>(0,m.jsx)(ex,{id:a,edgesFocusable:s,edgesReconnectable:t,elementsSelectable:u,noPanClassName:e,onReconnect:f,onContextMenu:g,onMouseEnter:h,onMouseMove:i,onMouseLeave:j,onClick:k,reconnectRadius:l,onDoubleClick:o,onReconnectStart:p,onReconnectEnd:q,rfId:c,onError:v,edgeTypes:d,disableKeyboardA11y:r},a))]})}ez.displayName="EdgeRenderer";let eA=(0,n.memo)(ez),eB=a=>`translate(${a[0]}px,${a[1]}px) scale(${a[2]})`;function eC({children:a}){let b=cX(),c=(0,n.useRef)(null),[d]=(0,n.useState)(()=>b.getState().transform);return du(()=>{let a=null,d=()=>{let d=b.getState().transform;(!a||d[0]!==a[0]||d[1]!==a[1]||d[2]!==a[2])&&(a=d,c.current&&(c.current.style.transform=eB(d)))};return d(),b.subscribe(d)},[b]),(0,m.jsx)("div",{ref:c,className:"react-flow__viewport xyflow__viewport react-flow__container",style:{transform:eB(d)},children:a})}let eD=a=>a.panZoom?.syncViewport;function eE(a){return a.connection.inProgress?{...a.connection,to:b_(a.connection.to,a.transform)}:{...a.connection}}let eF=a=>({nodesConnectable:a.nodesConnectable,isValid:a.connection.isValid,inProgress:a.connection.inProgress,width:a.width,height:a.height});function eG({containerStyle:a,style:b,type:c,component:d}){let{nodesConnectable:e,width:f,height:g,isValid:h,inProgress:i}=cW(eF,cR);return f&&e&&i?(0,m.jsx)("svg",{style:a,width:f,height:g,className:"react-flow__connectionline react-flow__container",children:(0,m.jsx)("g",{className:o(["react-flow__connection",b8(h)]),children:(0,m.jsx)(eH,{style:b,type:c,CustomComponent:d,isValid:h})})}):null}let eH=({style:a,type:b=h.Bezier,CustomComponent:c,isValid:d})=>{let{inProgress:e,from:f,fromNode:g,fromHandle:i,fromPosition:j,to:k,toNode:l,toHandle:n,toPosition:o,pointer:p}=function(a){return cW(eE,cR)}();if(!e)return;if(c)return(0,m.jsx)(c,{connectionLineType:b,connectionLineStyle:a,fromNode:g,fromHandle:i,fromX:f.x,fromY:f.y,toX:k.x,toY:k.y,fromPosition:j,toPosition:o,connectionStatus:b8(d),toNode:l,toHandle:n,pointer:p});let q="",r={sourceX:f.x,sourceY:f.y,sourcePosition:j,targetX:k.x,targetY:k.y,targetPosition:o};switch(b){case h.Bezier:[q]=ch(r);break;case h.SimpleBezier:[q]=ec(r);break;case h.Step:[q]=co({...r,borderRadius:0});break;case h.SmoothStep:[q]=co(r);break;default:[q]=ck(r)}return(0,m.jsx)("path",{d:q,fill:"none",className:"react-flow__connection-path",style:a})};eH.displayName="ConnectionLine";let eI={};function eJ(a=eI){(0,n.useRef)(a),cX()}function eK({nodeTypes:a,edgeTypes:b,onInit:c,onNodeClick:d,onEdgeClick:e,onNodeDoubleClick:f,onEdgeDoubleClick:g,onNodeMouseEnter:h,onNodeMouseMove:i,onNodeMouseLeave:j,onNodeContextMenu:k,onSelectionContextMenu:l,onSelectionStart:o,onSelectionEnd:p,connectionLineType:q,connectionLineStyle:r,connectionLineComponent:s,connectionLineContainerStyle:t,selectionKeyCode:u,selectionOnDrag:v,selectionMode:w,multiSelectionKeyCode:x,panActivationKeyCode:y,zoomActivationKeyCode:z,deleteKeyCode:A,onlyRenderVisibleElements:B,elementsSelectable:C,defaultViewport:D,translateExtent:E,minZoom:F,maxZoom:G,preventScrolling:H,defaultMarkerColor:I,zoomOnScroll:J,zoomOnPinch:K,panOnScroll:L,panOnScrollSpeed:M,panOnScrollMode:N,zoomOnDoubleClick:O,panOnDrag:P,autoPanOnSelection:Q,onPaneClick:R,onPaneMouseEnter:S,onPaneMouseMove:T,onPaneMouseLeave:U,onPaneScroll:V,onPaneContextMenu:W,paneClickDistance:X,nodeClickDistance:Y,onEdgeContextMenu:Z,onEdgeMouseEnter:$,onEdgeMouseMove:_,onEdgeMouseLeave:aa,reconnectRadius:ab,onReconnect:ac,onReconnectStart:ad,onReconnectEnd:ae,noDragClassName:af,noWheelClassName:ag,noPanClassName:ah,disableKeyboardA11y:ai,nodeExtent:aj,rfId:ak,viewport:al,onViewportChange:am,nodesDraggable:an}){return eJ(a),eJ(b),cX(),(0,n.useRef)(!1),dz(),(0,n.useRef)(!1),cW(eD),cX(),(0,m.jsx)(d$,{onPaneClick:R,onPaneMouseEnter:S,onPaneMouseMove:T,onPaneMouseLeave:U,onPaneContextMenu:W,onPaneScroll:V,paneClickDistance:X,deleteKeyCode:A,selectionKeyCode:u,selectionOnDrag:v,selectionMode:w,onSelectionStart:o,onSelectionEnd:p,multiSelectionKeyCode:x,panActivationKeyCode:y,zoomActivationKeyCode:z,elementsSelectable:C,zoomOnScroll:J,zoomOnPinch:K,zoomOnDoubleClick:O,panOnScroll:L,panOnScrollSpeed:M,panOnScrollMode:N,panOnDrag:P,autoPanOnSelection:Q,defaultViewport:D,translateExtent:E,minZoom:F,maxZoom:G,onSelectionContextMenu:l,preventScrolling:H,noDragClassName:af,noWheelClassName:ag,noPanClassName:ah,disableKeyboardA11y:ai,onViewportChange:am,isControlledViewport:!!al,children:(0,m.jsxs)(eC,{children:[(0,m.jsx)(eA,{edgeTypes:b,onEdgeClick:e,onEdgeDoubleClick:g,onReconnect:ac,onReconnectStart:ad,onReconnectEnd:ae,onlyRenderVisibleElements:B,onEdgeContextMenu:Z,onEdgeMouseEnter:$,onEdgeMouseMove:_,onEdgeMouseLeave:aa,reconnectRadius:ab,defaultMarkerColor:I,noPanClassName:ah,disableKeyboardA11y:ai,rfId:ak}),(0,m.jsx)(eG,{style:r,type:q,component:s,containerStyle:t}),(0,m.jsx)("div",{className:"react-flow__edgelabel-renderer"}),(0,m.jsx)(d3,{nodeTypes:a,onNodeClick:d,onNodeDoubleClick:f,onNodeMouseEnter:h,onNodeMouseMove:i,onNodeMouseLeave:j,onNodeContextMenu:k,nodeClickDistance:Y,onlyRenderVisibleElements:B,noPanClassName:ah,noDragClassName:af,disableKeyboardA11y:ai,nodeExtent:aj,rfId:ak,nodesDraggable:an}),(0,m.jsx)("div",{className:"react-flow__viewport-portal"})]})})}eK.displayName="GraphView";let eL=(0,n.memo)(eK),eM=bZ("React Flow","https://reactflow.dev/"),eN=({nodes:a,edges:b,defaultNodes:c,defaultEdges:d,width:f,height:g,fitView:h,fitViewOptions:i,minZoom:j=.5,maxZoom:k=2,nodeOrigin:l,nodeExtent:m,zIndexMode:n="basic"}={})=>{let o=new Map,p=new Map,q=new Map,r=new Map,s=d??b??[],t=c??a??[],u=l??[0,0],v=m??by;cE(q,r,s);let{nodesInitialized:w}=cy(t,o,p,{nodeOrigin:u,nodeExtent:v,zIndexMode:n}),x=[0,0,1];if(h&&f&&g){let{x:a,y:b,zoom:c}=b2(bG(o,{filter:a=>!!((a.width||a.initialWidth)&&(a.height||a.initialHeight))}),f,g,j,k,i?.padding??.1);x=[a,b,c]}return{rfId:"1",width:f??0,height:g??0,transform:x,nodes:t,nodesInitialized:w,nodeLookup:o,parentLookup:p,edges:s,edgeLookup:r,connectionLookup:q,onNodesChange:null,onEdgesChange:null,hasDefaultNodes:void 0!==c,hasDefaultEdges:void 0!==d,panZoom:null,minZoom:j,maxZoom:k,translateExtent:by,nodeExtent:v,nodesSelectionActive:!1,userSelectionActive:!1,userSelectionRect:null,connectionMode:e.Strict,domNode:null,paneDragging:!1,noPanClassName:"nopan",nodeOrigin:u,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:h??!1,fitViewOptions:i,fitViewResolver:null,connection:{...bB},connectionClickStartHandle:null,connectOnClick:!0,ariaLiveMessage:"",autoPanOnConnect:!0,autoPanOnNodeDrag:!0,autoPanOnNodeFocus:!0,autoPanSpeed:15,connectionRadius:20,onError:eM,isValidConnection:void 0,onSelectionChangeHandlers:[],lib:"react",debug:!1,ariaLabelConfig:bA,zIndexMode:n,defaultEdgeOptions:void 0,onNodesChangeMiddlewareMap:new Map,onEdgesChangeMiddlewareMap:new Map,onNodesDelete:void 0,onEdgesDelete:void 0,onDelete:void 0,onBeforeDelete:void 0,onViewportChangeStart:void 0,onViewportChange:void 0,onViewportChangeEnd:void 0,onNodeDragStart:void 0,onNodeDrag:void 0,onNodeDragStop:void 0,onSelectionDragStart:void 0,onSelectionDrag:void 0,onSelectionDragStop:void 0,onMoveStart:void 0,onMove:void 0,onMoveEnd:void 0,onConnect:void 0,onConnectStart:void 0,onConnectEnd:void 0,onClickConnectStart:void 0,onClickConnectEnd:void 0}};function eO({initialNodes:a,initialEdges:b,defaultNodes:c,defaultEdges:d,initialWidth:e,initialHeight:f,initialMinZoom:g,initialMaxZoom:h,initialFitViewOptions:i,fitView:k,nodeOrigin:l,nodeExtent:o,zIndexMode:p,children:q}){let[r]=(0,n.useState)(()=>(({nodes:a,edges:b,defaultNodes:c,defaultEdges:d,width:e,height:f,fitView:g,fitViewOptions:h,minZoom:i,maxZoom:k,nodeOrigin:l,nodeExtent:m,zIndexMode:n})=>{let o,p;return o=(o,p)=>{async function q(){let{nodeLookup:a,panZoom:b,fitViewOptions:c,fitViewResolver:d,width:e,height:f,minZoom:g,maxZoom:h}=p();b&&(await bI({nodes:a,width:e,height:f,panZoom:b,minZoom:g,maxZoom:h},c),d?.resolve(!0),o({fitViewResolver:null}))}return{...eN({nodes:a,edges:b,width:e,height:f,fitView:g,fitViewOptions:h,minZoom:i,maxZoom:k,nodeOrigin:l,nodeExtent:m,defaultNodes:c,defaultEdges:d,zIndexMode:n}),setNodes:a=>{let{nodeLookup:b,parentLookup:c,nodeOrigin:d,nodeExtent:e,elevateNodesOnSelect:f,fitViewQueued:g,zIndexMode:h,nodesSelectionActive:i}=p(),{nodesInitialized:j,hasSelectedNodes:k}=cy(a,b,c,{nodeOrigin:d,nodeExtent:e,elevateNodesOnSelect:f,checkEquality:!0,zIndexMode:h}),l=i&&k;g&&j?(q(),o({nodes:a,nodesInitialized:j,fitViewQueued:!1,fitViewOptions:void 0,nodesSelectionActive:l})):o({nodes:a,nodesInitialized:j,nodesSelectionActive:l})},setEdges:a=>{let{connectionLookup:b,edgeLookup:c}=p();cE(b,c,a),o({edges:a})},setDefaultNodesAndEdges:(a,b)=>{if(a){let{setNodes:b}=p();b(a),o({hasDefaultNodes:!0})}if(b){let{setEdges:a}=p();a(b),o({hasDefaultEdges:!0})}},updateNodeInternals:a=>{let{triggerNodeChanges:b,nodeLookup:c,parentLookup:d,domNode:e,nodeOrigin:f,nodeExtent:g,debug:h,fitViewQueued:i,zIndexMode:j}=p(),{changes:k,updatedInternals:l}=function(a,b,c,d,e,f,g){let h=d?.querySelector(".xyflow__viewport"),i=!1;if(!h)return{changes:[],updatedInternals:i};let j=[],k=window.getComputedStyle(h),{m22:l}=new window.DOMMatrixReadOnly(k.transform),m=[];for(let d of a.values()){let a=b.get(d.id);if(!a)continue;if(a.hidden){b.set(a.id,{...a,internals:{...a.internals,handleBounds:void 0}}),i=!0;continue}let h=b9(d.nodeElement),k=a.measured.width!==h.width||a.measured.height!==h.height;if(h.width&&h.height&&(k||!a.internals.handleBounds||d.force)){let n=d.nodeElement.getBoundingClientRect(),o=b4(a.extent)?a.extent:f,{positionAbsolute:p}=a.internals;if(a.parentId&&"parent"===a.extent){let c=b.get(a.parentId);c&&(p=bM(p,h,c))}else o&&(p=bL(p,o,h));let q={...a,measured:h,internals:{...a.internals,positionAbsolute:p,handleBounds:{source:cd("source",d.nodeElement,n,l,a.id),target:cd("target",d.nodeElement,n,l,a.id)}}};b.set(a.id,q),a.parentId&&cz(q,b,c,{nodeOrigin:e,zIndexMode:g}),i=!0,k&&(j.push({id:a.id,type:"dimensions",dimensions:h}),a.expandParent&&a.parentId&&m.push({id:a.id,parentId:a.parentId,rect:bS(q,e)}))}}if(m.length>0){let a=cB(m,b,c,e);j.push(...a)}return{changes:j,updatedInternals:i}}(a,c,d,e,f,g,j);l&&(!function(a,b,c){let d=cw(cu,c);for(let c of a.values())if(c.parentId)cz(c,a,b,d);else{let a=bL(bF(c,d.nodeOrigin),b4(c.extent)?c.extent:d.nodeExtent,b5(c));c.internals.positionAbsolute=a}}(c,d,{nodeOrigin:f,nodeExtent:g,zIndexMode:j}),i?(q(),o({fitViewQueued:!1,fitViewOptions:void 0})):o({}),k?.length>0&&(h&&console.log("React Flow: trigger node changes",k),b?.(k)))},updateNodePositions:(a,b=!1)=>{let c=[],d=[],{nodeLookup:e,triggerNodeChanges:f,connection:g,updateConnection:h,onNodesChangeMiddlewareMap:i}=p();for(let[f,i]of a){let a=e.get(f),k=!!(a?.expandParent&&a?.parentId&&i?.position),l={id:f,type:"position",position:k?{x:Math.max(0,i.position.x),y:Math.max(0,i.position.y)}:i.position,dragging:b};if(a&&g.inProgress&&g.fromNode.id===a.id){let b=cr(a,g.fromHandle,j.Left,!0);h({...g,from:b})}k&&a.parentId&&c.push({id:f,parentId:a.parentId,rect:{...i.internals.positionAbsolute,width:i.measured.width??0,height:i.measured.height??0}}),d.push(l)}if(c.length>0){let{parentLookup:a,nodeOrigin:b}=p(),f=cB(c,e,a,b);d.push(...f)}for(let a of i.values())d=a(d);f(d)},triggerNodeChanges:a=>{let{onNodesChange:b,setNodes:c,nodes:d,hasDefaultNodes:e,debug:f}=p();a?.length&&(e&&c(dl(a,d)),f&&console.log("React Flow: trigger node changes",a),b?.(a))},triggerEdgeChanges:a=>{let{onEdgesChange:b,setEdges:c,edges:d,hasDefaultEdges:e,debug:f}=p();a?.length&&(e&&c(dl(a,d)),f&&console.log("React Flow: trigger edge changes",a),b?.(a))},addSelectedNodes:a=>{let{multiSelectionActive:b,edgeLookup:c,nodeLookup:d,triggerNodeChanges:e,triggerEdgeChanges:f}=p();if(b)return void e(a.map(a=>dm(a,!0)));e(dn(d,new Set([...a]),!0)),f(dn(c))},addSelectedEdges:a=>{let{multiSelectionActive:b,edgeLookup:c,nodeLookup:d,triggerNodeChanges:e,triggerEdgeChanges:f}=p();if(b)return void f(a.map(a=>dm(a,!0)));f(dn(c,new Set([...a]))),e(dn(d,new Set,!0))},unselectNodesAndEdges:({nodes:a,edges:b}={})=>{let{edges:c,nodes:d,nodeLookup:e,triggerNodeChanges:f,triggerEdgeChanges:g}=p(),h=[];for(let b of a||d){if(!b.selected)continue;let a=e.get(b.id);a&&(a.selected=!1),h.push(dm(b.id,!1))}let i=[];for(let a of b||c)a.selected&&i.push(dm(a.id,!1));f(h),g(i)},setMinZoom:a=>{let{panZoom:b,maxZoom:c}=p();b?.setScaleExtent([a,c]),o({minZoom:a})},setMaxZoom:a=>{let{panZoom:b,minZoom:c}=p();b?.setScaleExtent([c,a]),o({maxZoom:a})},setTranslateExtent:a=>{p().panZoom?.setTranslateExtent(a),o({translateExtent:a})},resetSelectedElements:()=>{let{edges:a,nodes:b,triggerNodeChanges:c,triggerEdgeChanges:d,elementsSelectable:e}=p();if(!e)return;let f=b.reduce((a,b)=>b.selected?[...a,dm(b.id,!1)]:a,[]),g=a.reduce((a,b)=>b.selected?[...a,dm(b.id,!1)]:a,[]);c(f),d(g)},setNodeExtent:a=>{let{nodes:b,nodeLookup:c,parentLookup:d,nodeOrigin:e,elevateNodesOnSelect:f,nodeExtent:g,zIndexMode:h}=p();(a[0][0]!==g[0][0]||a[0][1]!==g[0][1]||a[1][0]!==g[1][0]||a[1][1]!==g[1][1])&&(cy(b,c,d,{nodeOrigin:e,nodeExtent:a,elevateNodesOnSelect:f,checkEquality:!1,zIndexMode:h}),o({nodeExtent:a}))},panBy:a=>{let{transform:b,width:c,height:d,panZoom:e,translateExtent:f}=p();return cC({delta:a,panZoom:e,transform:b,translateExtent:f,width:c,height:d})},setCenter:async(a,b,c)=>{let{width:d,height:e,maxZoom:f,panZoom:g}=p();if(!g)return!1;let h=void 0!==c?.zoom?c.zoom:f;return await g.setViewport({x:d/2-a*h,y:e/2-b*h,zoom:h},{duration:c?.duration,ease:c?.ease,interpolate:c?.interpolate}),!0},cancelConnection:()=>{o({connection:{...bB}})},updateConnection:a=>{o({connection:a})},reset:()=>o({...eN()})}},p=Object.is,o?cQ(o,p):cQ})({nodes:a,edges:b,defaultNodes:c,defaultEdges:d,width:e,height:f,fitView:k,minZoom:g,maxZoom:h,fitViewOptions:i,nodeOrigin:l,nodeExtent:o,zIndexMode:p}));return(0,m.jsx)(cU,{value:r,children:(0,m.jsx)(dx,{children:(0,m.jsx)(dQ,{children:q})})})}function eP({children:a,nodes:b,edges:c,defaultNodes:d,defaultEdges:e,width:f,height:g,fitView:h,fitViewOptions:i,minZoom:j,maxZoom:k,nodeOrigin:l,nodeExtent:o,zIndexMode:p}){return(0,n.useContext)(cT)?(0,m.jsx)(m.Fragment,{children:a}):(0,m.jsx)(eO,{initialNodes:b,initialEdges:c,defaultNodes:d,defaultEdges:e,initialWidth:f,initialHeight:g,fitView:h,initialFitViewOptions:i,initialMinZoom:j,initialMaxZoom:k,nodeOrigin:l,nodeExtent:o,zIndexMode:p,children:a})}let eQ={width:"100%",height:"100%",overflow:"hidden",position:"relative",zIndex:0};var eR=dt(function({nodes:a,edges:b,defaultNodes:c,defaultEdges:d,className:e,nodeTypes:i,edgeTypes:j,onNodeClick:k,onEdgeClick:l,onInit:p,onMove:q,onMoveStart:r,onMoveEnd:s,onConnect:t,onConnectStart:u,onConnectEnd:v,onClickConnectStart:w,onClickConnectEnd:x,onNodeMouseEnter:y,onNodeMouseMove:z,onNodeMouseLeave:A,onNodeContextMenu:B,onNodeDoubleClick:C,onNodeDragStart:D,onNodeDrag:E,onNodeDragStop:F,onNodesDelete:G,onEdgesDelete:H,onDelete:I,onSelectionChange:J,onSelectionDragStart:K,onSelectionDrag:L,onSelectionDragStop:M,onSelectionContextMenu:N,onSelectionStart:O,onSelectionEnd:P,onBeforeDelete:Q,connectionMode:R,connectionLineType:S=h.Bezier,connectionLineStyle:T,connectionLineComponent:U,connectionLineContainerStyle:V,deleteKeyCode:W="Backspace",selectionKeyCode:X="Shift",selectionOnDrag:Y=!1,selectionMode:Z=g.Full,panActivationKeyCode:$="Space",multiSelectionKeyCode:_=b3()?"Meta":"Control",zoomActivationKeyCode:aa=b3()?"Meta":"Control",snapToGrid:ab,snapGrid:ac,onlyRenderVisibleElements:ad=!1,selectNodesOnDrag:ae,nodesDraggable:af,autoPanOnNodeFocus:ag,nodesConnectable:ah,nodesFocusable:ai,nodeOrigin:aj=dd,edgesFocusable:ak,edgesReconnectable:al,elementsSelectable:am=!0,defaultViewport:an=de,minZoom:ao=.5,maxZoom:ap=2,translateExtent:aq=by,preventScrolling:ar=!0,nodeExtent:as,defaultMarkerColor:at="#b1b1b7",zoomOnScroll:au=!0,zoomOnPinch:av=!0,panOnScroll:aw=!1,panOnScrollSpeed:ax=.5,panOnScrollMode:ay=f.Free,zoomOnDoubleClick:az=!0,panOnDrag:aA=!0,onPaneClick:aB,onPaneMouseEnter:aC,onPaneMouseMove:aD,onPaneMouseLeave:aE,onPaneScroll:aF,onPaneContextMenu:aG,paneClickDistance:aH=1,nodeClickDistance:aI=0,children:aJ,onReconnect:aK,onReconnectStart:aL,onReconnectEnd:aM,onEdgeContextMenu:aN,onEdgeDoubleClick:aO,onEdgeMouseEnter:aP,onEdgeMouseMove:aQ,onEdgeMouseLeave:aR,reconnectRadius:aS=10,onNodesChange:aT,onEdgesChange:aU,noDragClassName:aV="nodrag",noWheelClassName:aW="nowheel",noPanClassName:aX="nopan",fitView:aY,fitViewOptions:aZ,connectOnClick:a$,attributionPosition:a_,proOptions:a0,defaultEdgeOptions:a1,elevateNodesOnSelect:a2=!0,elevateEdgesOnSelect:a3=!1,disableKeyboardA11y:a4=!1,autoPanOnConnect:a5,autoPanOnNodeDrag:a6,autoPanOnSelection:a7=!0,autoPanSpeed:a8,connectionRadius:a9,isValidConnection:ba,onError:bb,style:bc,id:bd,nodeDragThreshold:be,connectionDragThreshold:bf,viewport:bg,onViewportChange:bh,width:bi,height:bj,colorMode:bk="light",debug:bl,onScroll:bm,ariaLabelConfig:bn,zIndexMode:bo="basic",...bp},bq){let br=bd||"1",bs=function(a){let[b,c]=(0,n.useState)("system"===a?null:a);return null!==b?b:"light"}(bk),bt=(0,n.useCallback)(a=>{a.currentTarget.scrollTo({top:0,left:0,behavior:"instant"}),bm?.(a)},[bm]);return(0,m.jsx)("div",{"data-testid":"rf__wrapper",...bp,onScroll:bt,style:{...bc,...eQ},ref:bq,className:o(["react-flow",e,bs]),id:bd,role:"application",children:(0,m.jsxs)(eP,{nodes:a,edges:b,width:bi,height:bj,fitView:aY,fitViewOptions:aZ,minZoom:ao,maxZoom:ap,nodeOrigin:aj,nodeExtent:as,zIndexMode:bo,children:[(0,m.jsx)(di,{nodes:a,edges:b,defaultNodes:c,defaultEdges:d,onConnect:t,onConnectStart:u,onConnectEnd:v,onClickConnectStart:w,onClickConnectEnd:x,nodesDraggable:af,autoPanOnNodeFocus:ag,nodesConnectable:ah,nodesFocusable:ai,edgesFocusable:ak,edgesReconnectable:al,elementsSelectable:am,elevateNodesOnSelect:a2,elevateEdgesOnSelect:a3,minZoom:ao,maxZoom:ap,nodeExtent:as,onNodesChange:aT,onEdgesChange:aU,snapToGrid:ab,snapGrid:ac,connectionMode:R,translateExtent:aq,connectOnClick:a$,defaultEdgeOptions:a1,fitView:aY,fitViewOptions:aZ,onNodesDelete:G,onEdgesDelete:H,onDelete:I,onNodeDragStart:D,onNodeDrag:E,onNodeDragStop:F,onSelectionDrag:L,onSelectionDragStart:K,onSelectionDragStop:M,onMove:q,onMoveStart:r,onMoveEnd:s,noPanClassName:aX,nodeOrigin:aj,rfId:br,autoPanOnConnect:a5,autoPanOnNodeDrag:a6,autoPanSpeed:a8,onError:bb,connectionRadius:a9,isValidConnection:ba,selectNodesOnDrag:ae,nodeDragThreshold:be,connectionDragThreshold:bf,onBeforeDelete:Q,debug:bl,ariaLabelConfig:bn,zIndexMode:bo}),(0,m.jsx)(eL,{onInit:p,onNodeClick:k,onEdgeClick:l,onNodeMouseEnter:y,onNodeMouseMove:z,onNodeMouseLeave:A,onNodeContextMenu:B,onNodeDoubleClick:C,nodeTypes:i,edgeTypes:j,connectionLineType:S,connectionLineStyle:T,connectionLineComponent:U,connectionLineContainerStyle:V,selectionKeyCode:X,selectionOnDrag:Y,selectionMode:Z,deleteKeyCode:W,multiSelectionKeyCode:_,panActivationKeyCode:$,zoomActivationKeyCode:aa,onlyRenderVisibleElements:ad,defaultViewport:an,translateExtent:aq,minZoom:ao,maxZoom:ap,preventScrolling:ar,zoomOnScroll:au,zoomOnPinch:av,zoomOnDoubleClick:az,panOnScroll:aw,panOnScrollSpeed:ax,panOnScrollMode:ay,panOnDrag:aA,autoPanOnSelection:a7,onPaneClick:aB,onPaneMouseEnter:aC,onPaneMouseMove:aD,onPaneMouseLeave:aE,onPaneScroll:aF,onPaneContextMenu:aG,paneClickDistance:aH,nodeClickDistance:aI,onSelectionContextMenu:N,onSelectionStart:O,onSelectionEnd:P,onReconnect:aK,onReconnectStart:aL,onReconnectEnd:aM,onEdgeContextMenu:aN,onEdgeDoubleClick:aO,onEdgeMouseEnter:aP,onEdgeMouseMove:aQ,onEdgeMouseLeave:aR,reconnectRadius:aS,defaultMarkerColor:at,noDragClassName:aV,noWheelClassName:aW,noPanClassName:aX,rfId:br,disableKeyboardA11y:a4,nodeExtent:as,viewport:bg,onViewportChange:bh,nodesDraggable:af}),(0,m.jsx)(dc,{onSelectionChange:J}),aJ,(0,m.jsx)(c6,{proOptions:a0,position:a_}),(0,m.jsx)(c3,{rfId:br,disableKeyboardA11y:a4})]})})});let eS=a=>a.domNode?.querySelector(".react-flow__edgelabel-renderer");function eT({children:a}){let b=cW(eS);return b?(0,cS.createPortal)(a,b):null}function eU({dimensions:a,lineWidth:b,variant:c,className:d}){return(0,m.jsx)("path",{strokeWidth:b,d:`M${a[0]/2} 0 V${a[1]} M0 ${a[1]/2} H${a[0]}`,className:o(["react-flow__background-pattern",c,d])})}function eV({radius:a,className:b}){return(0,m.jsx)("circle",{cx:a,cy:a,r:a,className:o(["react-flow__background-pattern","dots",b])})}bx.error014(),function(a){a.Lines="lines",a.Dots="dots",a.Cross="cross"}(l||(l={}));let eW={[l.Dots]:1,[l.Lines]:1,[l.Cross]:6},eX=a=>({transform:a.transform,patternId:`pattern-${a.rfId}`});function eY({id:a,variant:b=l.Dots,gap:c=20,size:d,lineWidth:e=1,offset:f=0,color:g,bgColor:h,style:i,className:j,patternClassName:k}){let p=(0,n.useRef)(null),{transform:q,patternId:r}=cW(eX,cR),s=d||eW[b],t=b===l.Dots,u=b===l.Cross,v=Array.isArray(c)?c:[c,c],w=[v[0]*q[2]||1,v[1]*q[2]||1],x=s*q[2],y=Array.isArray(f)?f:[f,f],z=u?[x,x]:w,A=[y[0]*q[2]+z[0]/2,y[1]*q[2]+z[1]/2],B=`${r}${a||""}`;return(0,m.jsxs)("svg",{className:o(["react-flow__background",j]),style:{...i,...dB,"--xy-background-color-props":h,"--xy-background-pattern-color-props":g},ref:p,"data-testid":"rf__background",children:[(0,m.jsx)("pattern",{id:B,x:q[0]%w[0],y:q[1]%w[1],width:w[0],height:w[1],patternUnits:"userSpaceOnUse",patternTransform:`translate(-${A[0]},-${A[1]})`,children:t?(0,m.jsx)(eV,{radius:x/2,className:k}):(0,m.jsx)(eU,{dimensions:z,lineWidth:e,variant:b,className:k})}),(0,m.jsx)("rect",{x:"0",y:"0",width:"100%",height:"100%",fill:`url(#${B})`})]})}eY.displayName="Background";let eZ=(0,n.memo)(eY);function e$(){return(0,m.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32",children:(0,m.jsx)("path",{d:"M32 18.133H18.133V32h-4.266V18.133H0v-4.266h13.867V0h4.266v13.867H32z"})})}function e_(){return(0,m.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 5",children:(0,m.jsx)("path",{d:"M0 0h32v4.2H0z"})})}function e0(){return(0,m.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 30",children:(0,m.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 e1(){return(0,m.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32",children:(0,m.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 e2(){return(0,m.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32",children:(0,m.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 e3({children:a,className:b,...c}){return(0,m.jsx)("button",{type:"button",className:o(["react-flow__controls-button",b]),...c,children:a})}let e4=a=>({isInteractive:a.nodesDraggable||a.nodesConnectable||a.elementsSelectable,minZoomReached:a.transform[2]<=a.minZoom,maxZoomReached:a.transform[2]>=a.maxZoom,ariaLabelConfig:a.ariaLabelConfig});function e5({style:a,showZoom:b=!0,showFitView:c=!0,showInteractive:d=!0,fitViewOptions:e,onZoomIn:f,onZoomOut:g,onFitView:h,onInteractiveChange:i,className:j,children:k,position:l="bottom-left",orientation:n="vertical","aria-label":p}){let q=cX(),{isInteractive:r,minZoomReached:s,maxZoomReached:t,ariaLabelConfig:u}=cW(e4,cR),{zoomIn:v,zoomOut:w,fitView:x}=dz();return(0,m.jsxs)(c4,{className:o(["react-flow__controls","horizontal"===n?"horizontal":"vertical",j]),position:l,style:a,"data-testid":"rf__controls","aria-label":p??u["controls.ariaLabel"],children:[b&&(0,m.jsxs)(m.Fragment,{children:[(0,m.jsx)(e3,{onClick:()=>{v(),f?.()},className:"react-flow__controls-zoomin",title:u["controls.zoomIn.ariaLabel"],"aria-label":u["controls.zoomIn.ariaLabel"],disabled:t,children:(0,m.jsx)(e$,{})}),(0,m.jsx)(e3,{onClick:()=>{w(),g?.()},className:"react-flow__controls-zoomout",title:u["controls.zoomOut.ariaLabel"],"aria-label":u["controls.zoomOut.ariaLabel"],disabled:s,children:(0,m.jsx)(e_,{})})]}),c&&(0,m.jsx)(e3,{className:"react-flow__controls-fitview",onClick:()=>{x(e),h?.()},title:u["controls.fitView.ariaLabel"],"aria-label":u["controls.fitView.ariaLabel"],children:(0,m.jsx)(e0,{})}),d&&(0,m.jsx)(e3,{className:"react-flow__controls-interactive",onClick:()=>{q.setState({nodesDraggable:!r,nodesConnectable:!r,elementsSelectable:!r}),i?.(!r)},title:u["controls.interactive.ariaLabel"],"aria-label":u["controls.interactive.ariaLabel"],children:r?(0,m.jsx)(e2,{}):(0,m.jsx)(e1,{})}),k]})}e5.displayName="Controls";let e6=(0,n.memo)(e5),e7=(0,n.memo)(function({id:a,x:b,y:c,width:d,height:e,style:f,color:g,strokeColor:h,strokeWidth:i,className:j,borderRadius:k,shapeRendering:l,selected:n,onClick:p}){let{background:q,backgroundColor:r}=f||{};return(0,m.jsx)("rect",{className:o(["react-flow__minimap-node",{selected:n},j]),x:b,y:c,rx:k,ry:k,width:d,height:e,style:{fill:g||q||r,stroke:h,strokeWidth:i},shapeRendering:l,onClick:p?b=>p(b,a):void 0})}),e8=a=>a.nodes.map(a=>a.id),e9=a=>a instanceof Function?a:()=>a,fa=(0,n.memo)(function({id:a,nodeColorFunc:b,nodeStrokeColorFunc:c,nodeClassNameFunc:d,nodeBorderRadius:e,nodeStrokeWidth:f,shapeRendering:g,NodeComponent:h,onClick:i}){let{node:j,x:k,y:l,width:n,height:o}=cW(b=>{let c=b.nodeLookup.get(a);if(!c)return{node:void 0,x:0,y:0,width:0,height:0};let d=c.internals.userNode,{x:e,y:f}=c.internals.positionAbsolute,{width:g,height:h}=b5(d);return{node:d,x:e,y:f,width:g,height:h}},cR);return j&&!j.hidden&&b6(j)?(0,m.jsx)(h,{x:k,y:l,width:n,height:o,style:j.style,selected:!!j.selected,className:d(j),color:b(j),borderRadius:e,strokeColor:c(j),strokeWidth:f,shapeRendering:g,onClick:i,id:j.id}):null});k.Line,k.Handle,c(97483);var fb=c(31251);let fc=(0,c(51537).A)("LayoutGrid",[["rect",{width:"7",height:"7",x:"3",y:"3",rx:"1",key:"1g98yp"}],["rect",{width:"7",height:"7",x:"14",y:"3",rx:"1",key:"6d4xhi"}],["rect",{width:"7",height:"7",x:"14",y:"14",rx:"1",key:"nxv5o0"}],["rect",{width:"7",height:"7",x:"3",y:"14",rx:"1",key:"1bb6yr"}]]);var fd=c(60570),fe=c(73269),ff=c(7371),fg=c(61162),fh=c(5207),fi=c(93884);let fj=a=>{let b=fg.hg[a%fg.hg.length];return`color-mix(in srgb, ${b} calc(100% - var(--series-mix, 0%)), white)`},fk={agent:function({data:a}){let{t:b}=(0,fi.s9)(),c=a.agent;return(0,m.jsxs)("div",{className:`rnode ${a.dim?"dim":""} ${a.active?"active":""}`,children:["worker"===c.role&&(0,m.jsx)(dS,{type:"target",position:j.Top}),(0,m.jsx)(fh._h,{agent:c}),(0,m.jsx)("b",{children:c.name}),(0,m.jsx)("small",{children:"orchestrator"===c.role?b("role.orchestrator"):fg.xq[c.provider].short}),"orchestrator"===c.role&&(0,m.jsx)(dS,{type:"source",position:j.Bottom})]})}},fl={link:function({id:a,sourceX:b,sourceY:c,targetX:d,targetY:e,sourcePosition:f,targetPosition:g,data:h}){let[i,j,k]=ch({sourceX:b,sourceY:c,targetX:d,targetY:e,sourcePosition:f,targetPosition:g,curvature:.35});return(0,m.jsxs)(m.Fragment,{children:[(0,m.jsx)(ea,{id:a,path:i,interactionWidth:26,style:{stroke:h.color,strokeWidth:h.active?4:2.5,opacity:h.dim?.15:1,transition:"opacity .15s, stroke-width .15s"}}),h.show&&(0,m.jsx)(eT,{children:(0,m.jsx)("button",{className:"edge-x nodrag nopan",style:{transform:`translate(-50%, -50%) translate(${j}px, ${k}px)`},onClick:h.onRemove,"aria-label":h.label,title:h.label,children:(0,m.jsx)(fb.A,{size:13,strokeWidth:3})})})]})}};function fm(){let{t:a,locale:b}=(0,fi.s9)(),{agents:c,refresh:d,ready:e,error:f,retry:g}=(0,fd.q5)(),h=(0,fh.dj)(),[i,j]=(0,fe.ud)("hive-rel-pos-v2",{}),[k,l]=(0,n.useState)([]),[o,p]=(0,n.useState)(null),[q,r]=(0,n.useState)(null),[s,t]=(0,n.useState)(null),[u,v]=(0,n.useState)(0);(0,n.useMemo)(()=>(function(a){let b=a.filter(a=>"orchestrator"===a.role),c=a.filter(a=>"worker"===a.role),d=a=>b.find(b=>b.worker_ids.includes(a.id)),e={},f=0;for(let a of b){let b=c.filter(b=>d(b)?.id===a.id),g=Math.max(1,b.length);b.forEach((a,b)=>e[a.id]={x:f+190*b,y:280}),e[a.id]={x:f+(g-1)*190/2,y:0},f+=190*g+114}return c.filter(a=>!d(a)).forEach((a,b)=>e[a.id]={x:f+190*b,y:280}),e})(c),[c]);let w=(0,n.useMemo)(()=>new Map(c.filter(a=>"orchestrator"===a.role).map((a,b)=>[a.id,b])),[c]),x=o??s,y=a=>c.find(b=>b.id===a)?.name??"?",z=(0,n.useCallback)(async(b,c,e)=>{try{await ff.FH.put(`/orchestrators/${b}/workers`,{worker_ids:c}),await d(["agents"]),h(e)}catch(b){h(b instanceof Error?b.message:a("rel.updateFailed"),"err")}},[d,h]),A=(0,n.useCallback)((b,d)=>{let e=c.find(a=>a.id===b);e&&z(b,e.worker_ids.filter(a=>a!==d),a("rel.disconnected",{worker:y(d),orchestrator:e.name}))},[c,z]),B=(0,n.useCallback)((b,d)=>{let e=c.find(a=>a.id===b);!e||e.worker_ids.includes(d)||z(b,[...e.worker_ids,d],a("rel.connected",{worker:y(d),orchestrator:e.name}))},[c,z]),C=(0,n.useMemo)(()=>c.filter(a=>"orchestrator"===a.role).flatMap(b=>b.worker_ids.map(d=>{let e=`${b.id}>${d}`,f=!!x&&(b.id===x||d===x);return{id:e,source:b.id,target:d,type:"link",animated:c.find(a=>a.id===d)?.status==="running",data:{color:fj(w.get(b.id)??0),dim:!!x&&!f,active:f||q===e,show:f||q===e,label:a("rel.disconnectLabel",{worker:y(d),orchestrator:b.name}),onRemove:()=>A(b.id,d)}}})),[c,x,q,w,A,b]),D=(0,n.useMemo)(()=>{let a=new Set(x?[x]:[]);if(x)for(let b of C)(b.source===x||b.target===x)&&(a.add(b.source),a.add(b.target));return k.map(b=>({...b,selected:b.id===s,data:{...b.data,dim:!!x&&!a.has(b.id),active:b.id===x}}))},[k,C,x,s]),E=(0,n.useCallback)(a=>{l(b=>dl(a,b));let b=a.filter(a=>"position"===a.type&&!a.dragging&&a.position);b.length&&j(a=>{let c={...a};for(let a of b)"position"===a.type&&a.position&&(c[a.id]=a.position);return c})},[]),F=c.find(a=>a.id===s),G=c.filter(a=>"orchestrator"===a.role),H=c.filter(a=>"worker"===a.role);return(0,m.jsxs)("div",{className:"page full rel",children:[(0,m.jsxs)("div",{className:"rel-hud",children:[(0,m.jsx)("h1",{children:a("nav.relations")}),(0,m.jsx)("p",{children:a("rel.hud")})]}),(0,m.jsx)("div",{className:"rel-tools",children:(0,m.jsxs)("button",{className:"btn sm",onClick:()=>{j({}),v(a=>a+1),h(a("rel.layoutReset"))},children:[(0,m.jsx)(fc,{size:14}),a("rel.autoArrange")]})}),e?0===c.length?(0,m.jsx)("div",{className:"rel-empty",children:(0,m.jsx)(fh.pp,{title:a("rel.empty.title"),body:a("rel.empty.body")})}):(0,m.jsxs)(eR,{nodes:D,edges:C,nodeTypes:fk,edgeTypes:fl,onNodesChange:E,onConnect:a=>{a.source&&a.target&&B(a.source,a.target)},onNodeMouseEnter:(a,b)=>p(b.id),onNodeMouseLeave:()=>p(null),onNodeClick:(a,b)=>t(a=>a===b.id?null:b.id),onPaneClick:()=>t(null),onEdgeMouseEnter:(a,b)=>r(b.id),onEdgeMouseLeave:()=>r(null),fitView:!0,fitViewOptions:{padding:.35,maxZoom:1.1},minZoom:.3,proOptions:{hideAttribution:!0},deleteKeyCode:null,nodesConnectable:!0,children:[(0,m.jsx)(eZ,{gap:28,color:"var(--line-strong)"}),(0,m.jsx)(e6,{showInteractive:!1})]},u):f?(0,m.jsx)("div",{className:"rel-empty",children:(0,m.jsx)(fh.lZ,{kind:"err",children:(0,m.jsxs)("div",{className:"row gap-s wrap",children:[(0,m.jsxs)("span",{className:"grow",children:[a("cx.loadFailed")," ",f]}),(0,m.jsx)("button",{className:"btn sm",onClick:()=>void g(),children:a("cx.retry")})]})})}):(0,m.jsx)("div",{className:"rel-empty comb-skel",role:"status","aria-label":a("cx.loading"),children:(0,m.jsx)("div",{className:"skel",style:{width:200,height:120}})}),F&&(0,m.jsxs)("aside",{className:"rel-panel card",children:[(0,m.jsxs)("div",{className:"row gap-l",children:[(0,m.jsx)(fh._h,{agent:F}),(0,m.jsxs)("div",{className:"grow",children:[(0,m.jsx)("b",{className:"rel-panel-name",children:F.name}),(0,m.jsx)("div",{className:"muted small",children:a(`role.${F.role}`)})]}),(0,m.jsx)("button",{className:"btn ghost icon sm",onClick:()=>t(null),"aria-label":a("common.close"),children:(0,m.jsx)(fb.A,{size:16})})]}),"orchestrator"===F.role?(0,m.jsxs)(m.Fragment,{children:[(0,m.jsx)("div",{className:"eyebrow",children:a("rel.delegatesTo",{count:F.worker_ids.length})}),0===F.worker_ids.length&&(0,m.jsx)("p",{className:"muted small m0",children:a("rel.noWorkers")}),F.worker_ids.map(b=>(0,m.jsxs)("div",{className:"relrow",children:[(0,m.jsx)("span",{className:"grow",children:y(b)}),(0,m.jsx)("button",{className:"btn sm",onClick:()=>A(F.id,b),children:a("rel.disconnect")})]},b)),(0,m.jsxs)("select",{className:"select",value:"",onChange:a=>a.target.value&&B(F.id,a.target.value),"aria-label":a("rel.connectWorker"),children:[(0,m.jsx)("option",{value:"",children:a("rel.connectWorker")}),H.filter(a=>!F.worker_ids.includes(a.id)).map(a=>(0,m.jsx)("option",{value:a.id,children:a.name},a.id))]})]}):(0,m.jsxs)(m.Fragment,{children:[(0,m.jsx)("div",{className:"eyebrow",children:a("rel.directedBy")}),0===G.filter(a=>a.worker_ids.includes(F.id)).length&&(0,m.jsx)("p",{className:"muted small m0",children:a("rel.noOrchestrators")}),G.filter(a=>a.worker_ids.includes(F.id)).map(b=>(0,m.jsxs)("div",{className:"relrow",children:[(0,m.jsx)("i",{className:"cdot cx-chip-dot",style:{background:fj(w.get(b.id)??0)}}),(0,m.jsx)("span",{className:"grow",children:b.name}),(0,m.jsx)("button",{className:"btn sm",onClick:()=>A(b.id,F.id),children:a("rel.disconnect")})]},b.id)),(0,m.jsxs)("select",{className:"select",value:"",onChange:a=>a.target.value&&B(a.target.value,F.id),"aria-label":a("rel.connectOrchestrator"),children:[(0,m.jsx)("option",{value:"",children:a("rel.connectOrchestrator")}),G.filter(a=>!a.worker_ids.includes(F.id)).map(a=>(0,m.jsx)("option",{value:a.id,children:a.name},a.id))]})]})]})]})}},41025:a=>{"use strict";a.exports=require("next/dist/server/app-render/dynamic-access-async-storage.external.js")},43209:(a,b,c)=>{"use strict";c.r(b),c.d(b,{GlobalError:()=>F.a,__next_app__:()=>L,handler:()=>N,pages:()=>K,routeModule:()=>M,tree:()=>J});var d=c(62009),e=c(51640),f=c(52679),g=c(69985),h=c(91790),i=c(81200),j=c(54530),k=c(35977),l=c(234),m=c(43472),n=c(12698),o=c(28976),p=c(54084),q=c(16307),r=c(53063),s=c(72428),t=c(261),u=c(48291),v=c(56032),w=c(26713),x=c(83370),y=c(10143),z=c(27155),A=c(77620),B=c(13428),C=c(50164),D=c(86439),E=c(2972),F=c.n(E),G=c(94672),H=c(18313),I={};for(let a in G)0>["default","tree","pages","GlobalError","__next_app__","routeModule","handler"].indexOf(a)&&(I[a]=()=>G[a]);c.d(b,I);let J={children:["",{children:["relations",{children:["__PAGE__",{},{page:[()=>Promise.resolve().then(c.bind(c,976)),"/home/hugh/Documentos/projects/personal/hive-am/dist/stage/web/app/relations/page.tsx"]}]},{metadata:{icon:[async a=>(await Promise.resolve().then(c.bind(c,84507))).default(a),async a=>(await Promise.resolve().then(c.bind(c,23575))).default(a)],apple:[async a=>(await Promise.resolve().then(c.bind(c,54287))).default(a)],openGraph:[],twitter:[],manifest:void 0}}]},{layout:[()=>Promise.resolve().then(c.bind(c,61918)),"/home/hugh/Documentos/projects/personal/hive-am/dist/stage/web/app/layout.tsx"],"global-error":[()=>Promise.resolve().then(c.t.bind(c,2972,23)),"next/dist/client/components/builtin/global-error.js"],"not-found":[()=>Promise.resolve().then(c.t.bind(c,96298,23)),"next/dist/client/components/builtin/not-found.js"],forbidden:[()=>Promise.resolve().then(c.t.bind(c,60075,23)),"next/dist/client/components/builtin/forbidden.js"],unauthorized:[()=>Promise.resolve().then(c.t.bind(c,79678,23)),"next/dist/client/components/builtin/unauthorized.js"],metadata:{icon:[async a=>(await Promise.resolve().then(c.bind(c,84507))).default(a),async a=>(await Promise.resolve().then(c.bind(c,23575))).default(a)],apple:[async a=>(await Promise.resolve().then(c.bind(c,54287))).default(a)],openGraph:[],twitter:[],manifest:void 0}}]}.children,K=["/home/hugh/Documentos/projects/personal/hive-am/dist/stage/web/app/relations/page.tsx"],L={require:c,loadChunk:()=>Promise.resolve()},M=new e.AppPageRouteModule({definition:{kind:f.RouteKind.APP_PAGE,page:"/relations/page",pathname:"/relations",bundlePath:"",filename:"",appPaths:[]},userland:{loaderTree:J},distDir:".next",relativeProjectDir:""});async function N(a,b,e){var E;let I="/relations/page";"/index"===I&&(I="/");let O=(0,i.getRequestMeta)(a,"postponed"),P=(0,i.getRequestMeta)(a,"minimalMode"),Q=await M.prepare(a,b,{srcPage:I,multiZoneDraftMode:!1});if(!Q)return b.statusCode=400,b.end("Bad Request"),null==e.waitUntil||e.waitUntil.call(e,Promise.resolve()),null;let{buildId:R,query:S,params:T,parsedUrl:U,pageIsDynamic:V,buildManifest:W,nextFontManifest:X,reactLoadableManifest:Y,serverActionsManifest:Z,clientReferenceManifest:$,subresourceIntegrityManifest:_,prerenderManifest:aa,isDraftMode:ab,resolvedPathname:ac,revalidateOnlyGenerated:ad,routerServerContext:ae,nextConfig:af,interceptionRoutePatterns:ag}=Q,ah=U.pathname||"/",ai=(0,t.normalizeAppPath)(I),{isOnDemandRevalidate:aj}=Q,ak=M.match(ah,aa),al=!!aa.routes[ac]&&(M.isDev||(0,d.isRouteCacheOwner)(ac,M.cacheOwner,aa.routes[ac])),am=!!(ak||al||aa.routes[ai]),an=a.headers["user-agent"]||"",ao=(0,w.getBotType)(an),ap=(0,r.isHtmlBotRequest)(a),aq=(0,i.getRequestMeta)(a,"isPrefetchRSCRequest")??"1"===a.headers[v.NEXT_ROUTER_PREFETCH_HEADER],ar=(0,i.getRequestMeta)(a,"isRSCRequest")??(0,o.f)(a.headers[v.RSC_HEADER]),as=(0,u.getIsPossibleServerAction)(a),at=(0,n.checkIsAppPPREnabled)(af.experimental.ppr)&&(null==(E=aa.routes[ai]??aa.dynamicRoutes[ai])?void 0:E.renderingMode)==="PARTIALLY_STATIC",au=!1,av=!1,aw=at?O:void 0,ax=at&&ar&&!aq,ay=(0,i.getRequestMeta)(a,"segmentPrefetchRSCRequest"),az=!an||(0,r.shouldServeStreamingMetadata)(an,af.htmlLimitedBots);ap&&at&&(am=!1,az=!1);let aA=!0===M.isDev||!am||"string"==typeof O||ax,aB=ap&&at,aC=null;ab||!am||aA||as||aw||ax||(aC=ac);let aD=aC;!aD&&M.isDev&&(aD=ac),M.isDev||ab||!am||!ar||ax||(0,l.d)(a.headers);let aE={...G,tree:J,pages:K,GlobalError:F(),handler:N,routeModule:M,__next_app__:L};Z&&$&&(0,q.setReferenceManifestsSingleton)({page:I,clientReferenceManifest:$,serverActionsManifest:Z,serverModuleMap:(0,s.createServerModuleMap)({serverActionsManifest:Z})});let aF=a.method||"GET",aG=(0,h.getTracer)(),aH=aG.getActiveScopeSpan();try{let d=M.getVaryHeader(ac,ag);b.setHeader("Vary",d);let g=async(c,d)=>{let e=new m.NodeNextRequest(a),f=new m.NodeNextResponse(b);return M.render(e,f,d).finally(()=>{if(!c)return;c.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let d=aG.getRootSpanAttributes();if(!d)return;if(d.get("next.span_type")!==j.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${d.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let e=d.get("next.route");if(e){let a=`${aF} ${e}`;c.setAttributes({"next.route":e,"http.route":e,"next.span_name":a}),c.updateName(a)}else c.updateName(`${aF} ${a.url}`)})},l=async({span:d,postponed:f,fallbackRouteParams:h})=>{let j={query:S,params:T,page:ai,sharedContext:{buildId:R},serverComponentsHmrCache:(0,i.getRequestMeta)(a,"serverComponentsHmrCache"),fallbackRouteParams:h,renderOpts:{App:()=>null,Document:()=>null,pageConfig:{},ComponentMod:aE,Component:(0,k.T)(aE),params:T,routeModule:M,page:I,postponed:f,shouldWaitOnAllReady:aB,serveStreamingMetadata:az,supportsDynamicResponse:"string"==typeof f||aA,buildManifest:W,nextFontManifest:X,reactLoadableManifest:Y,subresourceIntegrityManifest:_,serverActionsManifest:Z,clientReferenceManifest:$,setIsrStatus:null==ae?void 0:ae.setIsrStatus,dir:c(33873).join(process.cwd(),M.relativeProjectDir),isDraftMode:ab,isRevalidate:am&&!f&&!ax,botType:ao,isOnDemandRevalidate:aj,isPossibleServerAction:as,assetPrefix:af.assetPrefix,nextConfigOutput:af.output,crossOrigin:af.crossOrigin,trailingSlash:af.trailingSlash,previewProps:aa.preview,deploymentId:af.deploymentId,enableTainting:af.experimental.taint,htmlLimitedBots:af.htmlLimitedBots,devtoolSegmentExplorer:af.experimental.devtoolSegmentExplorer,reactMaxHeadersLength:af.reactMaxHeadersLength,multiZoneDraftMode:!1,incrementalCache:(0,i.getRequestMeta)(a,"incrementalCache"),cacheLifeProfiles:af.experimental.cacheLife,basePath:af.basePath,serverActions:af.experimental.serverActions,...au?{nextExport:!0,supportsDynamicResponse:!1,isStaticGeneration:!0,isRevalidate:!0,isDebugDynamicAccesses:au}:{},experimental:{isRoutePPREnabled:at,expireTime:af.expireTime,staleTimes:af.experimental.staleTimes,cacheComponents:!!af.experimental.cacheComponents,clientSegmentCache:!!af.experimental.clientSegmentCache,clientParamParsing:!!af.experimental.clientParamParsing,dynamicOnHover:!!af.experimental.dynamicOnHover,inlineCss:!!af.experimental.inlineCss,authInterrupts:!!af.experimental.authInterrupts,clientTraceMetadata:af.experimental.clientTraceMetadata||[]},waitUntil:e.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:()=>{},onInstrumentationRequestError:(b,c,d)=>M.onRequestError(a,b,d,ae),err:(0,i.getRequestMeta)(a,"invokeError"),dev:M.isDev}},l=await g(d,j),{metadata:m}=l,{cacheControl:n,headers:o={},fetchTags:p}=m;if(p&&(o[A.NEXT_CACHE_TAGS_HEADER]=p),a.fetchMetrics=m.fetchMetrics,am&&(null==n?void 0:n.revalidate)===0&&!M.isDev&&!at){let a=m.staticBailoutInfo,b=Object.defineProperty(Error(`Page changed from static to dynamic at runtime ${ac}${(null==a?void 0:a.description)?`, reason: ${a.description}`:""}
1
+ (()=>{var a={};a.id=964,a.ids=[964],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},976:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>d});let d=(0,c(85972).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/hugh/Documentos/projects/personal/hive-am/dist/stage/web/app/relations/page.tsx\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/hugh/Documentos/projects/personal/hive-am/dist/stage/web/app/relations/page.tsx","default")},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},3374:(a,b,c)=>{"use strict";a.exports=c(58027)},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},19121:a=>{"use strict";a.exports=require("next/dist/server/app-render/action-async-storage.external.js")},26713:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/is-bot")},28354:a=>{"use strict";a.exports=require("util")},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{"use strict";a.exports=require("path")},39639:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>fm});var d,e,f,g,h,i,j,k,l,m=c(55322),n=c(17027);function o(a){if("string"==typeof a||"number"==typeof a)return""+a;let b="";if(Array.isArray(a))for(let c=0,d;c<a.length;c++)""!==(d=o(a[c]))&&(b+=(b&&" ")+d);else for(let c in a)a[c]&&(b+=(b&&" ")+c);return b}var p={value:()=>{}};function q(){for(var a,b=0,c=arguments.length,d={};b<c;++b){if(!(a=arguments[b]+"")||a in d||/[\s.]/.test(a))throw Error("illegal type: "+a);d[a]=[]}return new r(d)}function r(a){this._=a}function s(a,b,c){for(var d=0,e=a.length;d<e;++d)if(a[d].name===b){a[d]=p,a=a.slice(0,d).concat(a.slice(d+1));break}return null!=c&&a.push({name:b,value:c}),a}function t(){}function u(a){return null==a?t:function(){return this.querySelector(a)}}function v(){return[]}function w(a){return null==a?v:function(){return this.querySelectorAll(a)}}function x(a){return function(){return this.matches(a)}}function y(a){return function(b){return b.matches(a)}}r.prototype=q.prototype={constructor:r,on:function(a,b){var c,d=this._,e=(a+"").trim().split(/^|\s+/).map(function(a){var b="",c=a.indexOf(".");if(c>=0&&(b=a.slice(c+1),a=a.slice(0,c)),a&&!d.hasOwnProperty(a))throw Error("unknown type: "+a);return{type:a,name:b}}),f=-1,g=e.length;if(arguments.length<2){for(;++f<g;)if((c=(a=e[f]).type)&&(c=function(a,b){for(var c,d=0,e=a.length;d<e;++d)if((c=a[d]).name===b)return c.value}(d[c],a.name)))return c;return}if(null!=b&&"function"!=typeof b)throw Error("invalid callback: "+b);for(;++f<g;)if(c=(a=e[f]).type)d[c]=s(d[c],a.name,b);else if(null==b)for(c in d)d[c]=s(d[c],a.name,null);return this},copy:function(){var a={},b=this._;for(var c in b)a[c]=b[c].slice();return new r(a)},call:function(a,b){if((c=arguments.length-2)>0)for(var c,d,e=Array(c),f=0;f<c;++f)e[f]=arguments[f+2];if(!this._.hasOwnProperty(a))throw Error("unknown type: "+a);for(d=this._[a],f=0,c=d.length;f<c;++f)d[f].value.apply(b,e)},apply:function(a,b,c){if(!this._.hasOwnProperty(a))throw Error("unknown type: "+a);for(var d=this._[a],e=0,f=d.length;e<f;++e)d[e].value.apply(b,c)}};var z=Array.prototype.find;function A(){return this.firstElementChild}var B=Array.prototype.filter;function C(){return Array.from(this.children)}function D(a){return Array(a.length)}function E(a,b){this.ownerDocument=a.ownerDocument,this.namespaceURI=a.namespaceURI,this._next=null,this._parent=a,this.__data__=b}function F(a,b,c,d,e,f){for(var g,h=0,i=b.length,j=f.length;h<j;++h)(g=b[h])?(g.__data__=f[h],d[h]=g):c[h]=new E(a,f[h]);for(;h<i;++h)(g=b[h])&&(e[h]=g)}function G(a,b,c,d,e,f,g){var h,i,j,k=new Map,l=b.length,m=f.length,n=Array(l);for(h=0;h<l;++h)(i=b[h])&&(n[h]=j=g.call(i,i.__data__,h,b)+"",k.has(j)?e[h]=i:k.set(j,i));for(h=0;h<m;++h)j=g.call(a,f[h],h,f)+"",(i=k.get(j))?(d[h]=i,i.__data__=f[h],k.delete(j)):c[h]=new E(a,f[h]);for(h=0;h<l;++h)(i=b[h])&&k.get(n[h])===i&&(e[h]=i)}function H(a){return a.__data__}function I(a,b){return a<b?-1:a>b?1:a>=b?0:NaN}E.prototype={constructor:E,appendChild:function(a){return this._parent.insertBefore(a,this._next)},insertBefore:function(a,b){return this._parent.insertBefore(a,b)},querySelector:function(a){return this._parent.querySelector(a)},querySelectorAll:function(a){return this._parent.querySelectorAll(a)}};var J="http://www.w3.org/1999/xhtml";let K={svg:"http://www.w3.org/2000/svg",xhtml:J,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function L(a){var b=a+="",c=b.indexOf(":");return c>=0&&"xmlns"!==(b=a.slice(0,c))&&(a=a.slice(c+1)),K.hasOwnProperty(b)?{space:K[b],local:a}:a}function M(a){return a.ownerDocument&&a.ownerDocument.defaultView||a.document&&a||a.defaultView}function N(a,b){return a.style.getPropertyValue(b)||M(a).getComputedStyle(a,null).getPropertyValue(b)}function O(a){return a.trim().split(/^|\s+/)}function P(a){return a.classList||new Q(a)}function Q(a){this._node=a,this._names=O(a.getAttribute("class")||"")}function R(a,b){for(var c=P(a),d=-1,e=b.length;++d<e;)c.add(b[d])}function S(a,b){for(var c=P(a),d=-1,e=b.length;++d<e;)c.remove(b[d])}function T(){this.textContent=""}function U(){this.innerHTML=""}function V(){this.nextSibling&&this.parentNode.appendChild(this)}function W(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function X(a){var b=L(a);return(b.local?function(a){return function(){return this.ownerDocument.createElementNS(a.space,a.local)}}:function(a){return function(){var b=this.ownerDocument,c=this.namespaceURI;return c===J&&b.documentElement.namespaceURI===J?b.createElement(a):b.createElementNS(c,a)}})(b)}function Y(){return null}function Z(){var a=this.parentNode;a&&a.removeChild(this)}function $(){var a=this.cloneNode(!1),b=this.parentNode;return b?b.insertBefore(a,this.nextSibling):a}function _(){var a=this.cloneNode(!0),b=this.parentNode;return b?b.insertBefore(a,this.nextSibling):a}function aa(a){return function(){var b=this.__on;if(b){for(var c,d=0,e=-1,f=b.length;d<f;++d)(c=b[d],a.type&&c.type!==a.type||c.name!==a.name)?b[++e]=c:this.removeEventListener(c.type,c.listener,c.options);++e?b.length=e:delete this.__on}}}function ab(a,b,c){return function(){var d,e=this.__on,f=function(a){b.call(this,a,this.__data__)};if(e){for(var g=0,h=e.length;g<h;++g)if((d=e[g]).type===a.type&&d.name===a.name){this.removeEventListener(d.type,d.listener,d.options),this.addEventListener(d.type,d.listener=f,d.options=c),d.value=b;return}}this.addEventListener(a.type,f,c),d={type:a.type,name:a.name,value:b,listener:f,options:c},e?e.push(d):this.__on=[d]}}function ac(a,b,c){var d=M(a),e=d.CustomEvent;"function"==typeof e?e=new e(b,c):(e=d.document.createEvent("Event"),c?(e.initEvent(b,c.bubbles,c.cancelable),e.detail=c.detail):e.initEvent(b,!1,!1)),a.dispatchEvent(e)}Q.prototype={add:function(a){0>this._names.indexOf(a)&&(this._names.push(a),this._node.setAttribute("class",this._names.join(" ")))},remove:function(a){var b=this._names.indexOf(a);b>=0&&(this._names.splice(b,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(a){return this._names.indexOf(a)>=0}};var ad=[null];function ae(a,b){this._groups=a,this._parents=b}function af(){return new ae([[document.documentElement]],ad)}function ag(a){return((a=Math.exp(a))+1/a)/2}ae.prototype=af.prototype={constructor:ae,select:function(a){"function"!=typeof a&&(a=u(a));for(var b=this._groups,c=b.length,d=Array(c),e=0;e<c;++e)for(var f,g,h=b[e],i=h.length,j=d[e]=Array(i),k=0;k<i;++k)(f=h[k])&&(g=a.call(f,f.__data__,k,h))&&("__data__"in f&&(g.__data__=f.__data__),j[k]=g);return new ae(d,this._parents)},selectAll:function(a){if("function"==typeof a){var b;b=a,a=function(){var a;return a=b.apply(this,arguments),null==a?[]:Array.isArray(a)?a:Array.from(a)}}else a=w(a);for(var c=this._groups,d=c.length,e=[],f=[],g=0;g<d;++g)for(var h,i=c[g],j=i.length,k=0;k<j;++k)(h=i[k])&&(e.push(a.call(h,h.__data__,k,i)),f.push(h));return new ae(e,f)},selectChild:function(a){var b;return this.select(null==a?A:(b="function"==typeof a?a:y(a),function(){return z.call(this.children,b)}))},selectChildren:function(a){var b;return this.selectAll(null==a?C:(b="function"==typeof a?a:y(a),function(){return B.call(this.children,b)}))},filter:function(a){"function"!=typeof a&&(a=x(a));for(var b=this._groups,c=b.length,d=Array(c),e=0;e<c;++e)for(var f,g=b[e],h=g.length,i=d[e]=[],j=0;j<h;++j)(f=g[j])&&a.call(f,f.__data__,j,g)&&i.push(f);return new ae(d,this._parents)},data:function(a,b){if(!arguments.length)return Array.from(this,H);var c=b?G:F,d=this._parents,e=this._groups;"function"!=typeof a&&(s=a,a=function(){return s});for(var f=e.length,g=Array(f),h=Array(f),i=Array(f),j=0;j<f;++j){var k=d[j],l=e[j],m=l.length,n="object"==typeof(r=a.call(k,k&&k.__data__,j,d))&&"length"in r?r:Array.from(r),o=n.length,p=h[j]=Array(o),q=g[j]=Array(o);c(k,l,p,q,i[j]=Array(m),n,b);for(var r,s,t,u,v=0,w=0;v<o;++v)if(t=p[v]){for(v>=w&&(w=v+1);!(u=q[w])&&++w<o;);t._next=u||null}}return(g=new ae(g,d))._enter=h,g._exit=i,g},enter:function(){return new ae(this._enter||this._groups.map(D),this._parents)},exit:function(){return new ae(this._exit||this._groups.map(D),this._parents)},join:function(a,b,c){var d=this.enter(),e=this,f=this.exit();return"function"==typeof a?(d=a(d))&&(d=d.selection()):d=d.append(a+""),null!=b&&(e=b(e))&&(e=e.selection()),null==c?f.remove():c(f),d&&e?d.merge(e).order():e},merge:function(a){for(var b=a.selection?a.selection():a,c=this._groups,d=b._groups,e=c.length,f=d.length,g=Math.min(e,f),h=Array(e),i=0;i<g;++i)for(var j,k=c[i],l=d[i],m=k.length,n=h[i]=Array(m),o=0;o<m;++o)(j=k[o]||l[o])&&(n[o]=j);for(;i<e;++i)h[i]=c[i];return new ae(h,this._parents)},selection:function(){return this},order:function(){for(var a=this._groups,b=-1,c=a.length;++b<c;)for(var d,e=a[b],f=e.length-1,g=e[f];--f>=0;)(d=e[f])&&(g&&4^d.compareDocumentPosition(g)&&g.parentNode.insertBefore(d,g),g=d);return this},sort:function(a){function b(b,c){return b&&c?a(b.__data__,c.__data__):!b-!c}a||(a=I);for(var c=this._groups,d=c.length,e=Array(d),f=0;f<d;++f){for(var g,h=c[f],i=h.length,j=e[f]=Array(i),k=0;k<i;++k)(g=h[k])&&(j[k]=g);j.sort(b)}return new ae(e,this._parents).order()},call:function(){var a=arguments[0];return arguments[0]=this,a.apply(null,arguments),this},nodes:function(){return Array.from(this)},node:function(){for(var a=this._groups,b=0,c=a.length;b<c;++b)for(var d=a[b],e=0,f=d.length;e<f;++e){var g=d[e];if(g)return g}return null},size:function(){let a=0;for(let b of this)++a;return a},empty:function(){return!this.node()},each:function(a){for(var b=this._groups,c=0,d=b.length;c<d;++c)for(var e,f=b[c],g=0,h=f.length;g<h;++g)(e=f[g])&&a.call(e,e.__data__,g,f);return this},attr:function(a,b){var c=L(a);if(arguments.length<2){var d=this.node();return c.local?d.getAttributeNS(c.space,c.local):d.getAttribute(c)}return this.each((null==b?c.local?function(a){return function(){this.removeAttributeNS(a.space,a.local)}}:function(a){return function(){this.removeAttribute(a)}}:"function"==typeof b?c.local?function(a,b){return function(){var c=b.apply(this,arguments);null==c?this.removeAttributeNS(a.space,a.local):this.setAttributeNS(a.space,a.local,c)}}:function(a,b){return function(){var c=b.apply(this,arguments);null==c?this.removeAttribute(a):this.setAttribute(a,c)}}:c.local?function(a,b){return function(){this.setAttributeNS(a.space,a.local,b)}}:function(a,b){return function(){this.setAttribute(a,b)}})(c,b))},style:function(a,b,c){return arguments.length>1?this.each((null==b?function(a){return function(){this.style.removeProperty(a)}}:"function"==typeof b?function(a,b,c){return function(){var d=b.apply(this,arguments);null==d?this.style.removeProperty(a):this.style.setProperty(a,d,c)}}:function(a,b,c){return function(){this.style.setProperty(a,b,c)}})(a,b,null==c?"":c)):N(this.node(),a)},property:function(a,b){return arguments.length>1?this.each((null==b?function(a){return function(){delete this[a]}}:"function"==typeof b?function(a,b){return function(){var c=b.apply(this,arguments);null==c?delete this[a]:this[a]=c}}:function(a,b){return function(){this[a]=b}})(a,b)):this.node()[a]},classed:function(a,b){var c=O(a+"");if(arguments.length<2){for(var d=P(this.node()),e=-1,f=c.length;++e<f;)if(!d.contains(c[e]))return!1;return!0}return this.each(("function"==typeof b?function(a,b){return function(){(b.apply(this,arguments)?R:S)(this,a)}}:b?function(a){return function(){R(this,a)}}:function(a){return function(){S(this,a)}})(c,b))},text:function(a){return arguments.length?this.each(null==a?T:("function"==typeof a?function(a){return function(){var b=a.apply(this,arguments);this.textContent=null==b?"":b}}:function(a){return function(){this.textContent=a}})(a)):this.node().textContent},html:function(a){return arguments.length?this.each(null==a?U:("function"==typeof a?function(a){return function(){var b=a.apply(this,arguments);this.innerHTML=null==b?"":b}}:function(a){return function(){this.innerHTML=a}})(a)):this.node().innerHTML},raise:function(){return this.each(V)},lower:function(){return this.each(W)},append:function(a){var b="function"==typeof a?a:X(a);return this.select(function(){return this.appendChild(b.apply(this,arguments))})},insert:function(a,b){var c="function"==typeof a?a:X(a),d=null==b?Y:"function"==typeof b?b:u(b);return this.select(function(){return this.insertBefore(c.apply(this,arguments),d.apply(this,arguments)||null)})},remove:function(){return this.each(Z)},clone:function(a){return this.select(a?_:$)},datum:function(a){return arguments.length?this.property("__data__",a):this.node().__data__},on:function(a,b,c){var d,e,f=(a+"").trim().split(/^|\s+/).map(function(a){var b="",c=a.indexOf(".");return c>=0&&(b=a.slice(c+1),a=a.slice(0,c)),{type:a,name:b}}),g=f.length;if(arguments.length<2){var h=this.node().__on;if(h){for(var i,j=0,k=h.length;j<k;++j)for(d=0,i=h[j];d<g;++d)if((e=f[d]).type===i.type&&e.name===i.name)return i.value}return}for(d=0,h=b?ab:aa;d<g;++d)this.each(h(f[d],b,c));return this},dispatch:function(a,b){return this.each(("function"==typeof b?function(a,b){return function(){return ac(this,a,b.apply(this,arguments))}}:function(a,b){return function(){return ac(this,a,b)}})(a,b))},[Symbol.iterator]:function*(){for(var a=this._groups,b=0,c=a.length;b<c;++b)for(var d,e=a[b],f=0,g=e.length;f<g;++f)(d=e[f])&&(yield d)}},(function(a,{sourceEvent:b,subject:c,target:d,identifier:e,active:f,x:g,y:h,dx:i,dy:j,dispatch:k}){Object.defineProperties(this,{type:{value:a,enumerable:!0,configurable:!0},sourceEvent:{value:b,enumerable:!0,configurable:!0},subject:{value:c,enumerable:!0,configurable:!0},target:{value:d,enumerable:!0,configurable:!0},identifier:{value:e,enumerable:!0,configurable:!0},active:{value:f,enumerable:!0,configurable:!0},x:{value:g,enumerable:!0,configurable:!0},y:{value:h,enumerable:!0,configurable:!0},dx:{value:i,enumerable:!0,configurable:!0},dy:{value:j,enumerable:!0,configurable:!0},_:{value:k}})}).prototype.on=function(){var a=this._.on.apply(this._,arguments);return a===this._?this:a},!function a(b,c,d){function e(a,e){var f,g,h=a[0],i=a[1],j=a[2],k=e[0],l=e[1],m=e[2],n=k-h,o=l-i,p=n*n+o*o;if(p<1e-12)g=Math.log(m/j)/b,f=function(a){return[h+a*n,i+a*o,j*Math.exp(b*a*g)]};else{var q=Math.sqrt(p),r=(m*m-j*j+d*p)/(2*j*c*q),s=(m*m-j*j-d*p)/(2*m*c*q),t=Math.log(Math.sqrt(r*r+1)-r);g=(Math.log(Math.sqrt(s*s+1)-s)-t)/b,f=function(a){var d,e,f=a*g,k=ag(t),l=j/(c*q)*(k*(((d=Math.exp(2*(d=b*f+t)))-1)/(d+1))-((e=Math.exp(e=t))-1/e)/2);return[h+l*n,i+l*o,j*k/ag(b*f+t)]}}return f.duration=1e3*g*b/Math.SQRT2,f}return e.rho=function(b){var c=Math.max(.001,+b),d=c*c;return a(c,d,d*d)},e}(Math.SQRT2,2,4);var ah,ai,aj=0,ak=0,al=0,am=0,an=0,ao=0,ap="object"==typeof performance&&performance.now?performance:Date,aq="object"==typeof window&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(a){setTimeout(a,17)};function ar(){return an||(aq(as),an=ap.now()+ao)}function as(){an=0}function at(){this._call=this._time=this._next=null}function au(a,b,c){var d=new at;return d.restart(a,b,c),d}function av(){an=(am=ap.now())+ao,aj=ak=0;try{ar(),++aj;for(var a,b=ah;b;)(a=an-b._time)>=0&&b._call.call(void 0,a),b=b._next;--aj}finally{aj=0,function(){for(var a,b,c=ah,d=1/0;c;)c._call?(d>c._time&&(d=c._time),a=c,c=c._next):(b=c._next,c._next=null,c=a?a._next=b:ah=b);ai=a,ax(d)}(),an=0}}function aw(){var a=ap.now(),b=a-am;b>1e3&&(ao-=b,am=a)}function ax(a){!aj&&(ak&&(ak=clearTimeout(ak)),a-an>24?(a<1/0&&(ak=setTimeout(av,a-ap.now()-ao)),al&&(al=clearInterval(al))):(al||(am=ap.now(),al=setInterval(aw,1e3)),aj=1,aq(av)))}function ay(a,b,c){var d=new at;return b=null==b?0:+b,d.restart(c=>{d.stop(),a(c+b)},b,c),d}at.prototype=au.prototype={constructor:at,restart:function(a,b,c){if("function"!=typeof a)throw TypeError("callback is not a function");c=(null==c?ar():+c)+(null==b?0:+b),this._next||ai===this||(ai?ai._next=this:ah=this,ai=this),this._call=a,this._time=c,ax()},stop:function(){this._call&&(this._call=null,this._time=1/0,ax())}};var az=q("start","end","cancel","interrupt"),aA=[];function aB(a,b,c,d,e,f){var g=a.__transition;if(g){if(c in g)return}else a.__transition={};!function(a,b,c){var d,e=a.__transition;function f(i){var j,k,l,m;if(1!==c.state)return h();for(j in e)if((m=e[j]).name===c.name){if(3===m.state)return ay(f);4===m.state?(m.state=6,m.timer.stop(),m.on.call("interrupt",a,a.__data__,m.index,m.group),delete e[j]):+j<b&&(m.state=6,m.timer.stop(),m.on.call("cancel",a,a.__data__,m.index,m.group),delete e[j])}if(ay(function(){3===c.state&&(c.state=4,c.timer.restart(g,c.delay,c.time),g(i))}),c.state=2,c.on.call("start",a,a.__data__,c.index,c.group),2===c.state){for(j=0,c.state=3,d=Array(l=c.tween.length),k=-1;j<l;++j)(m=c.tween[j].value.call(a,a.__data__,c.index,c.group))&&(d[++k]=m);d.length=k+1}}function g(b){for(var e=b<c.duration?c.ease.call(null,b/c.duration):(c.timer.restart(h),c.state=5,1),f=-1,g=d.length;++f<g;)d[f].call(a,e);5===c.state&&(c.on.call("end",a,a.__data__,c.index,c.group),h())}function h(){for(var d in c.state=6,c.timer.stop(),delete e[b],e)return;delete a.__transition}e[b]=c,c.timer=au(function(a){c.state=1,c.timer.restart(f,c.delay,c.time),c.delay<=a&&f(a-c.delay)},0,c.time)}(a,c,{name:b,index:d,group:e,on:az,tween:aA,time:f.time,delay:f.delay,duration:f.duration,ease:f.ease,timer:null,state:0})}function aC(a,b){var c=aE(a,b);if(c.state>0)throw Error("too late; already scheduled");return c}function aD(a,b){var c=aE(a,b);if(c.state>3)throw Error("too late; already running");return c}function aE(a,b){var c=a.__transition;if(!c||!(c=c[b]))throw Error("transition not found");return c}function aF(a,b){return a*=1,b*=1,function(c){return a*(1-c)+b*c}}var aG=180/Math.PI,aH={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function aI(a,b,c,d,e,f){var g,h,i;return(g=Math.sqrt(a*a+b*b))&&(a/=g,b/=g),(i=a*c+b*d)&&(c-=a*i,d-=b*i),(h=Math.sqrt(c*c+d*d))&&(c/=h,d/=h,i/=h),a*d<b*c&&(a=-a,b=-b,i=-i,g=-g),{translateX:e,translateY:f,rotate:Math.atan2(b,a)*aG,skewX:Math.atan(i)*aG,scaleX:g,scaleY:h}}function aJ(a,b,c,d){function e(a){return a.length?a.pop()+" ":""}return function(f,g){var h,i,j,k,l=[],m=[];return f=a(f),g=a(g),!function(a,d,e,f,g,h){if(a!==e||d!==f){var i=g.push("translate(",null,b,null,c);h.push({i:i-4,x:aF(a,e)},{i:i-2,x:aF(d,f)})}else(e||f)&&g.push("translate("+e+b+f+c)}(f.translateX,f.translateY,g.translateX,g.translateY,l,m),h=f.rotate,i=g.rotate,h!==i?(h-i>180?i+=360:i-h>180&&(h+=360),m.push({i:l.push(e(l)+"rotate(",null,d)-2,x:aF(h,i)})):i&&l.push(e(l)+"rotate("+i+d),j=f.skewX,k=g.skewX,j!==k?m.push({i:l.push(e(l)+"skewX(",null,d)-2,x:aF(j,k)}):k&&l.push(e(l)+"skewX("+k+d),!function(a,b,c,d,f,g){if(a!==c||b!==d){var h=f.push(e(f)+"scale(",null,",",null,")");g.push({i:h-4,x:aF(a,c)},{i:h-2,x:aF(b,d)})}else(1!==c||1!==d)&&f.push(e(f)+"scale("+c+","+d+")")}(f.scaleX,f.scaleY,g.scaleX,g.scaleY,l,m),f=g=null,function(a){for(var b,c=-1,d=m.length;++c<d;)l[(b=m[c]).i]=b.x(a);return l.join("")}}}var aK=aJ(function(a){let b=new("function"==typeof DOMMatrix?DOMMatrix:WebKitCSSMatrix)(a+"");return b.isIdentity?aH:aI(b.a,b.b,b.c,b.d,b.e,b.f)},"px, ","px)","deg)"),aL=aJ(function(a){return null==a?aH:(d||(d=document.createElementNS("http://www.w3.org/2000/svg","g")),d.setAttribute("transform",a),a=d.transform.baseVal.consolidate())?aI((a=a.matrix).a,a.b,a.c,a.d,a.e,a.f):aH},", ",")",")");function aM(a,b,c){var d=a._id;return a.each(function(){var a=aD(this,d);(a.value||(a.value={}))[b]=c.apply(this,arguments)}),function(a){return aE(a,d).value[b]}}function aN(a,b,c){a.prototype=b.prototype=c,c.constructor=a}function aO(a,b){var c=Object.create(a.prototype);for(var d in b)c[d]=b[d];return c}function aP(){}var aQ="\\s*([+-]?\\d+)\\s*",aR="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",aS="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",aT=/^#([0-9a-f]{3,8})$/,aU=RegExp(`^rgb\\(${aQ},${aQ},${aQ}\\)$`),aV=RegExp(`^rgb\\(${aS},${aS},${aS}\\)$`),aW=RegExp(`^rgba\\(${aQ},${aQ},${aQ},${aR}\\)$`),aX=RegExp(`^rgba\\(${aS},${aS},${aS},${aR}\\)$`),aY=RegExp(`^hsl\\(${aR},${aS},${aS}\\)$`),aZ=RegExp(`^hsla\\(${aR},${aS},${aS},${aR}\\)$`),a$={aliceblue:0xf0f8ff,antiquewhite:0xfaebd7,aqua:65535,aquamarine:8388564,azure:0xf0ffff,beige:0xf5f5dc,bisque:0xffe4c4,black:0,blanchedalmond:0xffebcd,blue:255,blueviolet:9055202,brown:0xa52a2a,burlywood:0xdeb887,cadetblue:6266528,chartreuse:8388352,chocolate:0xd2691e,coral:0xff7f50,cornflowerblue:6591981,cornsilk:0xfff8dc,crimson:0xdc143c,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:0xb8860b,darkgray:0xa9a9a9,darkgreen:25600,darkgrey:0xa9a9a9,darkkhaki:0xbdb76b,darkmagenta:9109643,darkolivegreen:5597999,darkorange:0xff8c00,darkorchid:0x9932cc,darkred:9109504,darksalmon:0xe9967a,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:0xff1493,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:0xb22222,floralwhite:0xfffaf0,forestgreen:2263842,fuchsia:0xff00ff,gainsboro:0xdcdcdc,ghostwhite:0xf8f8ff,gold:0xffd700,goldenrod:0xdaa520,gray:8421504,green:32768,greenyellow:0xadff2f,grey:8421504,honeydew:0xf0fff0,hotpink:0xff69b4,indianred:0xcd5c5c,indigo:4915330,ivory:0xfffff0,khaki:0xf0e68c,lavender:0xe6e6fa,lavenderblush:0xfff0f5,lawngreen:8190976,lemonchiffon:0xfffacd,lightblue:0xadd8e6,lightcoral:0xf08080,lightcyan:0xe0ffff,lightgoldenrodyellow:0xfafad2,lightgray:0xd3d3d3,lightgreen:9498256,lightgrey:0xd3d3d3,lightpink:0xffb6c1,lightsalmon:0xffa07a,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:0xb0c4de,lightyellow:0xffffe0,lime:65280,limegreen:3329330,linen:0xfaf0e6,magenta:0xff00ff,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:0xba55d3,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:0xc71585,midnightblue:1644912,mintcream:0xf5fffa,mistyrose:0xffe4e1,moccasin:0xffe4b5,navajowhite:0xffdead,navy:128,oldlace:0xfdf5e6,olive:8421376,olivedrab:7048739,orange:0xffa500,orangered:0xff4500,orchid:0xda70d6,palegoldenrod:0xeee8aa,palegreen:0x98fb98,paleturquoise:0xafeeee,palevioletred:0xdb7093,papayawhip:0xffefd5,peachpuff:0xffdab9,peru:0xcd853f,pink:0xffc0cb,plum:0xdda0dd,powderblue:0xb0e0e6,purple:8388736,rebeccapurple:6697881,red:0xff0000,rosybrown:0xbc8f8f,royalblue:4286945,saddlebrown:9127187,salmon:0xfa8072,sandybrown:0xf4a460,seagreen:3050327,seashell:0xfff5ee,sienna:0xa0522d,silver:0xc0c0c0,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:0xfffafa,springgreen:65407,steelblue:4620980,tan:0xd2b48c,teal:32896,thistle:0xd8bfd8,tomato:0xff6347,turquoise:4251856,violet:0xee82ee,wheat:0xf5deb3,white:0xffffff,whitesmoke:0xf5f5f5,yellow:0xffff00,yellowgreen:0x9acd32};function a_(){return this.rgb().formatHex()}function a0(){return this.rgb().formatRgb()}function a1(a){var b,c;return a=(a+"").trim().toLowerCase(),(b=aT.exec(a))?(c=b[1].length,b=parseInt(b[1],16),6===c?a2(b):3===c?new a5(b>>8&15|b>>4&240,b>>4&15|240&b,(15&b)<<4|15&b,1):8===c?a3(b>>24&255,b>>16&255,b>>8&255,(255&b)/255):4===c?a3(b>>12&15|b>>8&240,b>>8&15|b>>4&240,b>>4&15|240&b,((15&b)<<4|15&b)/255):null):(b=aU.exec(a))?new a5(b[1],b[2],b[3],1):(b=aV.exec(a))?new a5(255*b[1]/100,255*b[2]/100,255*b[3]/100,1):(b=aW.exec(a))?a3(b[1],b[2],b[3],b[4]):(b=aX.exec(a))?a3(255*b[1]/100,255*b[2]/100,255*b[3]/100,b[4]):(b=aY.exec(a))?bb(b[1],b[2]/100,b[3]/100,1):(b=aZ.exec(a))?bb(b[1],b[2]/100,b[3]/100,b[4]):a$.hasOwnProperty(a)?a2(a$[a]):"transparent"===a?new a5(NaN,NaN,NaN,0):null}function a2(a){return new a5(a>>16&255,a>>8&255,255&a,1)}function a3(a,b,c,d){return d<=0&&(a=b=c=NaN),new a5(a,b,c,d)}function a4(a,b,c,d){var e;return 1==arguments.length?((e=a)instanceof aP||(e=a1(e)),e)?new a5((e=e.rgb()).r,e.g,e.b,e.opacity):new a5:new a5(a,b,c,null==d?1:d)}function a5(a,b,c,d){this.r=+a,this.g=+b,this.b=+c,this.opacity=+d}function a6(){return`#${ba(this.r)}${ba(this.g)}${ba(this.b)}`}function a7(){let a=a8(this.opacity);return`${1===a?"rgb(":"rgba("}${a9(this.r)}, ${a9(this.g)}, ${a9(this.b)}${1===a?")":`, ${a})`}`}function a8(a){return isNaN(a)?1:Math.max(0,Math.min(1,a))}function a9(a){return Math.max(0,Math.min(255,Math.round(a)||0))}function ba(a){return((a=a9(a))<16?"0":"")+a.toString(16)}function bb(a,b,c,d){return d<=0?a=b=c=NaN:c<=0||c>=1?a=b=NaN:b<=0&&(a=NaN),new bd(a,b,c,d)}function bc(a){if(a instanceof bd)return new bd(a.h,a.s,a.l,a.opacity);if(a instanceof aP||(a=a1(a)),!a)return new bd;if(a instanceof bd)return a;var b=(a=a.rgb()).r/255,c=a.g/255,d=a.b/255,e=Math.min(b,c,d),f=Math.max(b,c,d),g=NaN,h=f-e,i=(f+e)/2;return h?(g=b===f?(c-d)/h+(c<d)*6:c===f?(d-b)/h+2:(b-c)/h+4,h/=i<.5?f+e:2-f-e,g*=60):h=i>0&&i<1?0:g,new bd(g,h,i,a.opacity)}function bd(a,b,c,d){this.h=+a,this.s=+b,this.l=+c,this.opacity=+d}function be(a){return(a=(a||0)%360)<0?a+360:a}function bf(a){return Math.max(0,Math.min(1,a||0))}function bg(a,b,c){return(a<60?b+(c-b)*a/60:a<180?c:a<240?b+(c-b)*(240-a)/60:b)*255}function bh(a,b,c,d,e){var f=a*a,g=f*a;return((1-3*a+3*f-g)*b+(4-6*f+3*g)*c+(1+3*a+3*f-3*g)*d+g*e)/6}aN(aP,a1,{copy(a){return Object.assign(new this.constructor,this,a)},displayable(){return this.rgb().displayable()},hex:a_,formatHex:a_,formatHex8:function(){return this.rgb().formatHex8()},formatHsl:function(){return bc(this).formatHsl()},formatRgb:a0,toString:a0}),aN(a5,a4,aO(aP,{brighter(a){return a=null==a?1.4285714285714286:Math.pow(1.4285714285714286,a),new a5(this.r*a,this.g*a,this.b*a,this.opacity)},darker(a){return a=null==a?.7:Math.pow(.7,a),new a5(this.r*a,this.g*a,this.b*a,this.opacity)},rgb(){return this},clamp(){return new a5(a9(this.r),a9(this.g),a9(this.b),a8(this.opacity))},displayable(){return -.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:a6,formatHex:a6,formatHex8:function(){return`#${ba(this.r)}${ba(this.g)}${ba(this.b)}${ba((isNaN(this.opacity)?1:this.opacity)*255)}`},formatRgb:a7,toString:a7})),aN(bd,function(a,b,c,d){return 1==arguments.length?bc(a):new bd(a,b,c,null==d?1:d)},aO(aP,{brighter(a){return a=null==a?1.4285714285714286:Math.pow(1.4285714285714286,a),new bd(this.h,this.s,this.l*a,this.opacity)},darker(a){return a=null==a?.7:Math.pow(.7,a),new bd(this.h,this.s,this.l*a,this.opacity)},rgb(){var a=this.h%360+(this.h<0)*360,b=isNaN(a)||isNaN(this.s)?0:this.s,c=this.l,d=c+(c<.5?c:1-c)*b,e=2*c-d;return new a5(bg(a>=240?a-240:a+120,e,d),bg(a,e,d),bg(a<120?a+240:a-120,e,d),this.opacity)},clamp(){return new bd(be(this.h),bf(this.s),bf(this.l),a8(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){let a=a8(this.opacity);return`${1===a?"hsl(":"hsla("}${be(this.h)}, ${100*bf(this.s)}%, ${100*bf(this.l)}%${1===a?")":`, ${a})`}`}}));let bi=a=>()=>a;function bj(a,b){var c=b-a;return c?function(b){return a+b*c}:bi(isNaN(a)?b:a)}let bk=function a(b){var c,d=1==(c=+b)?bj:function(a,b){var d,e,f;return b-a?(d=a,e=b,d=Math.pow(d,f=c),e=Math.pow(e,f)-d,f=1/f,function(a){return Math.pow(d+a*e,f)}):bi(isNaN(a)?b:a)};function e(a,b){var c=d((a=a4(a)).r,(b=a4(b)).r),e=d(a.g,b.g),f=d(a.b,b.b),g=bj(a.opacity,b.opacity);return function(b){return a.r=c(b),a.g=e(b),a.b=f(b),a.opacity=g(b),a+""}}return e.gamma=a,e}(1);function bl(a){return function(b){var c,d,e=b.length,f=Array(e),g=Array(e),h=Array(e);for(c=0;c<e;++c)d=a4(b[c]),f[c]=d.r||0,g[c]=d.g||0,h[c]=d.b||0;return f=a(f),g=a(g),h=a(h),d.opacity=1,function(a){return d.r=f(a),d.g=g(a),d.b=h(a),d+""}}}bl(function(a){var b=a.length-1;return function(c){var d=c<=0?c=0:c>=1?(c=1,b-1):Math.floor(c*b),e=a[d],f=a[d+1],g=d>0?a[d-1]:2*e-f,h=d<b-1?a[d+2]:2*f-e;return bh((c-d/b)*b,g,e,f,h)}}),bl(function(a){var b=a.length;return function(c){var d=Math.floor(((c%=1)<0?++c:c)*b),e=a[(d+b-1)%b],f=a[d%b],g=a[(d+1)%b],h=a[(d+2)%b];return bh((c-d/b)*b,e,f,g,h)}});var bm=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,bn=RegExp(bm.source,"g");function bo(a,b){var c,d,e,f,g,h=bm.lastIndex=bn.lastIndex=0,i=-1,j=[],k=[];for(a+="",b+="";(e=bm.exec(a))&&(f=bn.exec(b));)(g=f.index)>h&&(g=b.slice(h,g),j[i]?j[i]+=g:j[++i]=g),(e=e[0])===(f=f[0])?j[i]?j[i]+=f:j[++i]=f:(j[++i]=null,k.push({i:i,x:aF(e,f)})),h=bn.lastIndex;return h<b.length&&(g=b.slice(h),j[i]?j[i]+=g:j[++i]=g),j.length<2?k[0]?(c=k[0].x,function(a){return c(a)+""}):(d=b,function(){return d}):(b=k.length,function(a){for(var c,d=0;d<b;++d)j[(c=k[d]).i]=c.x(a);return j.join("")})}function bp(a,b){var c;return("number"==typeof b?aF:b instanceof a1?bk:(c=a1(b))?(b=c,bk):bo)(a,b)}var bq=af.prototype.constructor;function br(a){return function(){this.style.removeProperty(a)}}var bs=0;function bt(a,b,c,d){this._groups=a,this._parents=b,this._name=c,this._id=d}var bu=af.prototype;bt.prototype=(function(a){return af().transition(a)}).prototype={constructor:bt,select:function(a){var b=this._name,c=this._id;"function"!=typeof a&&(a=u(a));for(var d=this._groups,e=d.length,f=Array(e),g=0;g<e;++g)for(var h,i,j=d[g],k=j.length,l=f[g]=Array(k),m=0;m<k;++m)(h=j[m])&&(i=a.call(h,h.__data__,m,j))&&("__data__"in h&&(i.__data__=h.__data__),l[m]=i,aB(l[m],b,c,m,l,aE(h,c)));return new bt(f,this._parents,b,c)},selectAll:function(a){var b=this._name,c=this._id;"function"!=typeof a&&(a=w(a));for(var d=this._groups,e=d.length,f=[],g=[],h=0;h<e;++h)for(var i,j=d[h],k=j.length,l=0;l<k;++l)if(i=j[l]){for(var m,n=a.call(i,i.__data__,l,j),o=aE(i,c),p=0,q=n.length;p<q;++p)(m=n[p])&&aB(m,b,c,p,n,o);f.push(n),g.push(i)}return new bt(f,g,b,c)},selectChild:bu.selectChild,selectChildren:bu.selectChildren,filter:function(a){"function"!=typeof a&&(a=x(a));for(var b=this._groups,c=b.length,d=Array(c),e=0;e<c;++e)for(var f,g=b[e],h=g.length,i=d[e]=[],j=0;j<h;++j)(f=g[j])&&a.call(f,f.__data__,j,g)&&i.push(f);return new bt(d,this._parents,this._name,this._id)},merge:function(a){if(a._id!==this._id)throw Error();for(var b=this._groups,c=a._groups,d=b.length,e=c.length,f=Math.min(d,e),g=Array(d),h=0;h<f;++h)for(var i,j=b[h],k=c[h],l=j.length,m=g[h]=Array(l),n=0;n<l;++n)(i=j[n]||k[n])&&(m[n]=i);for(;h<d;++h)g[h]=b[h];return new bt(g,this._parents,this._name,this._id)},selection:function(){return new bq(this._groups,this._parents)},transition:function(){for(var a=this._name,b=this._id,c=++bs,d=this._groups,e=d.length,f=0;f<e;++f)for(var g,h=d[f],i=h.length,j=0;j<i;++j)if(g=h[j]){var k=aE(g,b);aB(g,a,c,j,h,{time:k.time+k.delay+k.duration,delay:0,duration:k.duration,ease:k.ease})}return new bt(d,this._parents,a,c)},call:bu.call,nodes:bu.nodes,node:bu.node,size:bu.size,empty:bu.empty,each:bu.each,on:function(a,b){var c,d,e,f,g,h,i=this._id;return arguments.length<2?aE(this.node(),i).on.on(a):this.each((c=i,d=a,e=b,h=(d+"").trim().split(/^|\s+/).every(function(a){var b=a.indexOf(".");return b>=0&&(a=a.slice(0,b)),!a||"start"===a})?aC:aD,function(){var a=h(this,c),b=a.on;b!==f&&(g=(f=b).copy()).on(d,e),a.on=g}))},attr:function(a,b){var c=L(a),d="transform"===c?aL:bp;return this.attrTween(a,"function"==typeof b?(c.local?function(a,b,c){var d,e,f;return function(){var g,h,i=c(this);return null==i?void this.removeAttributeNS(a.space,a.local):(g=this.getAttributeNS(a.space,a.local))===(h=i+"")?null:g===d&&h===e?f:(e=h,f=b(d=g,i))}}:function(a,b,c){var d,e,f;return function(){var g,h,i=c(this);return null==i?void this.removeAttribute(a):(g=this.getAttribute(a))===(h=i+"")?null:g===d&&h===e?f:(e=h,f=b(d=g,i))}})(c,d,aM(this,"attr."+a,b)):null==b?(c.local?function(a){return function(){this.removeAttributeNS(a.space,a.local)}}:function(a){return function(){this.removeAttribute(a)}})(c):(c.local?function(a,b,c){var d,e,f=c+"";return function(){var g=this.getAttributeNS(a.space,a.local);return g===f?null:g===d?e:e=b(d=g,c)}}:function(a,b,c){var d,e,f=c+"";return function(){var g=this.getAttribute(a);return g===f?null:g===d?e:e=b(d=g,c)}})(c,d,b))},attrTween:function(a,b){var c="attr."+a;if(arguments.length<2)return(c=this.tween(c))&&c._value;if(null==b)return this.tween(c,null);if("function"!=typeof b)throw Error();var d=L(a);return this.tween(c,(d.local?function(a,b){var c,d;function e(){var e=b.apply(this,arguments);return e!==d&&(c=(d=e)&&function(b){this.setAttributeNS(a.space,a.local,e.call(this,b))}),c}return e._value=b,e}:function(a,b){var c,d;function e(){var e=b.apply(this,arguments);return e!==d&&(c=(d=e)&&function(b){this.setAttribute(a,e.call(this,b))}),c}return e._value=b,e})(d,b))},style:function(a,b,c){var d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y="transform"==(a+="")?aK:bp;return null==b?this.styleTween(a,(d=a,function(){var a=N(this,d),b=(this.style.removeProperty(d),N(this,d));return a===b?null:a===e&&b===f?g:g=y(e=a,f=b)})).on("end.style."+a,br(a)):"function"==typeof b?this.styleTween(a,(h=a,i=aM(this,"style."+a,b),function(){var a=N(this,h),b=i(this),c=b+"";return null==b&&(this.style.removeProperty(h),c=b=N(this,h)),a===c?null:a===j&&c===k?l:(k=c,l=y(j=a,b))})).each((m=this._id,t="end."+(s="style."+(n=a)),function(){var a=aD(this,m),b=a.on,c=null==a.value[s]?r||(r=br(n)):void 0;(b!==o||q!==c)&&(p=(o=b).copy()).on(t,q=c),a.on=p})):this.styleTween(a,(u=a,x=b+"",function(){var a=N(this,u);return a===x?null:a===v?w:w=y(v=a,b)}),c).on("end.style."+a,null)},styleTween:function(a,b,c){var d="style."+(a+="");if(arguments.length<2)return(d=this.tween(d))&&d._value;if(null==b)return this.tween(d,null);if("function"!=typeof b)throw Error();return this.tween(d,function(a,b,c){var d,e;function f(){var f=b.apply(this,arguments);return f!==e&&(d=(e=f)&&function(b){this.style.setProperty(a,f.call(this,b),c)}),d}return f._value=b,f}(a,b,null==c?"":c))},text:function(a){var b,c;return this.tween("text","function"==typeof a?(b=aM(this,"text",a),function(){var a=b(this);this.textContent=null==a?"":a}):(c=null==a?"":a+"",function(){this.textContent=c}))},textTween:function(a){var b="text";if(arguments.length<1)return(b=this.tween(b))&&b._value;if(null==a)return this.tween(b,null);if("function"!=typeof a)throw Error();return this.tween(b,function(a){var b,c;function d(){var d=a.apply(this,arguments);return d!==c&&(b=(c=d)&&function(a){this.textContent=d.call(this,a)}),b}return d._value=a,d}(a))},remove:function(){var a;return this.on("end.remove",(a=this._id,function(){var b=this.parentNode;for(var c in this.__transition)if(+c!==a)return;b&&b.removeChild(this)}))},tween:function(a,b){var c=this._id;if(a+="",arguments.length<2){for(var d,e=aE(this.node(),c).tween,f=0,g=e.length;f<g;++f)if((d=e[f]).name===a)return d.value;return null}return this.each((null==b?function(a,b){var c,d;return function(){var e=aD(this,a),f=e.tween;if(f!==c){d=c=f;for(var g=0,h=d.length;g<h;++g)if(d[g].name===b){(d=d.slice()).splice(g,1);break}}e.tween=d}}:function(a,b,c){var d,e;if("function"!=typeof c)throw Error();return function(){var f=aD(this,a),g=f.tween;if(g!==d){e=(d=g).slice();for(var h={name:b,value:c},i=0,j=e.length;i<j;++i)if(e[i].name===b){e[i]=h;break}i===j&&e.push(h)}f.tween=e}})(c,a,b))},delay:function(a){var b=this._id;return arguments.length?this.each(("function"==typeof a?function(a,b){return function(){aC(this,a).delay=+b.apply(this,arguments)}}:function(a,b){return b*=1,function(){aC(this,a).delay=b}})(b,a)):aE(this.node(),b).delay},duration:function(a){var b=this._id;return arguments.length?this.each(("function"==typeof a?function(a,b){return function(){aD(this,a).duration=+b.apply(this,arguments)}}:function(a,b){return b*=1,function(){aD(this,a).duration=b}})(b,a)):aE(this.node(),b).duration},ease:function(a){var b=this._id;return arguments.length?this.each(function(a,b){if("function"!=typeof b)throw Error();return function(){aD(this,a).ease=b}}(b,a)):aE(this.node(),b).ease},easeVarying:function(a){var b;if("function"!=typeof a)throw Error();return this.each((b=this._id,function(){var c=a.apply(this,arguments);if("function"!=typeof c)throw Error();aD(this,b).ease=c}))},end:function(){var a,b,c=this,d=c._id,e=c.size();return new Promise(function(f,g){var h={value:g},i={value:function(){0==--e&&f()}};c.each(function(){var c=aD(this,d),e=c.on;e!==a&&((b=(a=e).copy())._.cancel.push(h),b._.interrupt.push(h),b._.end.push(i)),c.on=b}),0===e&&f()})},[Symbol.iterator]:bu[Symbol.iterator]};var bv={time:null,delay:0,duration:250,ease:function(a){return((a*=2)<=1?a*a*a:(a-=2)*a*a+2)/2}};function bw(a,b,c){this.k=a,this.x=b,this.y=c}af.prototype.interrupt=function(a){return this.each(function(){!function(a,b){var c,d,e,f=a.__transition,g=!0;if(f){for(e in b=null==b?null:b+"",f){if((c=f[e]).name!==b){g=!1;continue}d=c.state>2&&c.state<5,c.state=6,c.timer.stop(),c.on.call(d?"interrupt":"cancel",a,a.__data__,c.index,c.group),delete f[e]}g&&delete a.__transition}}(this,a)})},af.prototype.transition=function(a){var b,c;a instanceof bt?(b=a._id,a=a._name):(b=++bs,(c=bv).time=ar(),a=null==a?null:a+"");for(var d=this._groups,e=d.length,f=0;f<e;++f)for(var g,h=d[f],i=h.length,j=0;j<i;++j)(g=h[j])&&aB(g,a,b,j,h,c||function(a,b){for(var c;!(c=a.__transition)||!(c=c[b]);)if(!(a=a.parentNode))throw Error(`transition ${b} not found`);return c}(g,b));return new bt(d,this._parents,a,b)},bw.prototype={constructor:bw,scale:function(a){return 1===a?this:new bw(this.k*a,this.x,this.y)},translate:function(a,b){return 0===a&0===b?this:new bw(this.k,this.x+this.k*a,this.y+this.k*b)},apply:function(a){return[a[0]*this.k+this.x,a[1]*this.k+this.y]},applyX:function(a){return a*this.k+this.x},applyY:function(a){return a*this.k+this.y},invert:function(a){return[(a[0]-this.x)/this.k,(a[1]-this.y)/this.k]},invertX:function(a){return(a-this.x)/this.k},invertY:function(a){return(a-this.y)/this.k},rescaleX:function(a){return a.copy().domain(a.range().map(this.invertX,this).map(a.invert,a))},rescaleY:function(a){return a.copy().domain(a.range().map(this.invertY,this).map(a.invert,a))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}};new bw(1,0,0);bw.prototype;let bx={error001:(a="react")=>`Seems like you have not used ${"svelte"===a?"SvelteFlowProvider":"ReactFlowProvider"} as an ancestor. Help: https://${a}flow.dev/error#001`,error003:a=>`Node type "${a}" not found. Using fallback type "default".`,error005:()=>"Only child nodes can use a parent extent.",error006:()=>"Can't create edge. An edge needs a source and a target.",error009:a=>`Marker type "${a}" doesn't exist.`,error008:(a,{id:b,sourceHandle:c,targetHandle:d})=>`Couldn't create edge for ${a} handle id: "${"source"===a?c:d}", edge id: ${b}.`,error010:()=>"Handle: No node id found. Make sure to only use a Handle inside a custom Node.",error011:a=>`Edge type "${a}" not found. Using fallback type "default".`,error012:a=>`Node with id "${a}" does not exist, it may have been removed. This can happen when a node is deleted before the "onNodeClick" handler is called.`,error014:()=>"useNodeConnections: No node ID found. Call useNodeConnections inside a custom Node or provide a node ID.",error015:()=>"It seems that you are trying to drag a node that is not initialized. Please use onNodesChange as explained in the docs."},by=[[-1/0,-1/0],[1/0,1/0]],bz=["Enter"," ","Escape"],bA={"node.a11yDescription.default":"Press enter or space to select a node. Press delete to remove it and escape to cancel.","node.a11yDescription.keyboardDisabled":"Press enter or space to select a node. You can then use the arrow keys to move the node around. Press delete to remove it and escape to cancel.","node.a11yDescription.ariaLiveMessage":({direction:a,x:b,y:c})=>`Moved selected node ${a}. New position, x: ${b}, y: ${c}`,"edge.a11yDescription.default":"Press enter or space to select an edge. You can then press delete to remove it or escape to cancel.","controls.ariaLabel":"Control Panel","controls.zoomIn.ariaLabel":"Zoom In","controls.zoomOut.ariaLabel":"Zoom Out","controls.fitView.ariaLabel":"Fit View","controls.interactive.ariaLabel":"Toggle Interactivity","minimap.ariaLabel":"Mini Map","handle.ariaLabel":"Handle"};!function(a){a.Strict="strict",a.Loose="loose"}(e||(e={})),function(a){a.Free="free",a.Vertical="vertical",a.Horizontal="horizontal"}(f||(f={})),function(a){a.Partial="partial",a.Full="full"}(g||(g={}));let bB={inProgress:!1,isValid:null,from:null,fromHandle:null,fromPosition:null,fromNode:null,to:null,toHandle:null,toPosition:null,toNode:null,pointer:null};!function(a){a.Bezier="default",a.Straight="straight",a.Step="step",a.SmoothStep="smoothstep",a.SimpleBezier="simplebezier"}(h||(h={})),function(a){a.Arrow="arrow",a.ArrowClosed="arrowclosed"}(i||(i={})),function(a){a.Left="left",a.Top="top",a.Right="right",a.Bottom="bottom"}(j||(j={}));let bC={[j.Left]:j.Right,[j.Right]:j.Left,[j.Top]:j.Bottom,[j.Bottom]:j.Top},bD=a=>!!a&&"object"==typeof a&&"id"in a&&"source"in a&&"target"in a,bE=a=>!!a&&"object"==typeof a&&"id"in a&&"internals"in a&&!("source"in a)&&!("target"in a),bF=(a,b=[0,0])=>{let{width:c,height:d}=b5(a),e=a.origin??b,f=c*e[0],g=d*e[1];return{x:a.position.x-f,y:a.position.y-g}},bG=(a,b={})=>{let c={x:1/0,y:1/0,x2:-1/0,y2:-1/0},d=!1;return a.forEach(a=>{(void 0===b.filter||b.filter(a))&&(c=bP(c,bT(a)),d=!0)}),d?bR(c):{x:0,y:0,width:0,height:0}},bH=(a,b,[c,d,e]=[0,0,1],f=!1,g=!1)=>{let h=(b.x-c)/e,i=(b.y-d)/e,j=b.width/e,k=b.height/e,l=[];for(let b of a.values()){let{measured:a,selectable:c=!0,hidden:d=!1}=b;if(g&&!c||d)continue;let e=a.width??b.width??b.initialWidth??0,m=a.height??b.height??b.initialHeight??0,{x:n,y:o}=b.internals.positionAbsolute,p=bV(h,i,j,k,n,o,e,m),q=e*m,r=f&&p>0;(!b.internals.handleBounds||r||p>=q||b.dragging)&&l.push(b)}return l};async function bI({nodes:a,width:b,height:c,panZoom:d,minZoom:e,maxZoom:f},g){if(0===a.size)return!0;let h=b2(bG(function(a,b){let c=new Map,d=b?.nodes?new Set(b.nodes.map(a=>a.id)):null;return a.forEach(a=>{let e;if(b?.includeHiddenNodes){let{width:b,height:c}=b5(a);e=b>0&&c>0}else e=!!(a.measured.width&&a.measured.height&&!a.hidden);e&&(!d||d.has(a.id))&&c.set(a.id,a)}),c}(a,g)),b,c,g?.minZoom??e,g?.maxZoom??f,g?.padding??.1);return await d.setViewport(h,{duration:g?.duration,ease:g?.ease,interpolate:g?.interpolate}),!0}async function bJ({nodesToRemove:a=[],edgesToRemove:b=[],nodes:c,edges:d,onBeforeDelete:e}){let f=new Set(a.map(a=>a.id)),g=[];for(let a of c){if(!1===a.deletable)continue;let b=f.has(a.id),c=!b&&a.parentId&&g.find(b=>b.id===a.parentId);(b||c)&&g.push(a)}let h=new Set(b.map(a=>a.id)),i=d.filter(a=>!1!==a.deletable),j=((a,b)=>{let c=new Set;return a.forEach(a=>{c.add(a.id)}),b.filter(a=>c.has(a.source)||c.has(a.target))})(g,i);for(let a of i)h.has(a.id)&&!j.find(b=>b.id===a.id)&&j.push(a);if(!e)return{edges:j,nodes:g};let k=await e({nodes:g,edges:j});return"boolean"==typeof k?k?{edges:j,nodes:g}:{edges:[],nodes:[]}:k}let bK=(a,b=0,c=1)=>Math.min(Math.max(a,b),c),bL=(a={x:0,y:0},b,c)=>({x:bK(a.x,b[0][0],b[1][0]-(c?.width??0)),y:bK(a.y,b[0][1],b[1][1]-(c?.height??0))});function bM(a,b,c){let{width:d,height:e}=b5(c),{x:f,y:g}=c.internals.positionAbsolute;return bL(a,[[f,g],[f+d,g+e]],b)}let bN=(a,b,c)=>a<b?bK(Math.abs(a-b),1,b)/b:a>c?-bK(Math.abs(a-c),1,b)/b:0,bO=(a,b,c=15,d=40)=>[bN(a.x,d,b.width-d)*c,bN(a.y,d,b.height-d)*c],bP=(a,b)=>({x:Math.min(a.x,b.x),y:Math.min(a.y,b.y),x2:Math.max(a.x2,b.x2),y2:Math.max(a.y2,b.y2)}),bQ=({x:a,y:b,width:c,height:d})=>({x:a,y:b,x2:a+c,y2:b+d}),bR=({x:a,y:b,x2:c,y2:d})=>({x:a,y:b,width:c-a,height:d-b}),bS=(a,b=[0,0])=>{let{x:c,y:d}=bE(a)?a.internals.positionAbsolute:bF(a,b);return{x:c,y:d,width:a.measured?.width??a.width??a.initialWidth??0,height:a.measured?.height??a.height??a.initialHeight??0}},bT=(a,b=[0,0])=>{let{x:c,y:d}=bE(a)?a.internals.positionAbsolute:bF(a,b);return{x:c,y:d,x2:c+(a.measured?.width??a.width??a.initialWidth??0),y2:d+(a.measured?.height??a.height??a.initialHeight??0)}},bU=(a,b)=>bR(bP(bQ(a),bQ(b))),bV=(a,b,c,d,e,f,g,h)=>Math.ceil(Math.max(0,Math.min(a+c,e+g)-Math.max(a,e))*Math.max(0,Math.min(b+d,f+h)-Math.max(b,f))),bW=(a,b)=>bV(a.x,a.y,a.width,a.height,b.x,b.y,b.width,b.height),bX=a=>bY(a.width)&&bY(a.height)&&bY(a.x)&&bY(a.y),bY=a=>!isNaN(a)&&isFinite(a),bZ=(a,b)=>(a,b)=>{},b$=(a,b=[1,1])=>({x:b[0]*Math.round(a.x/b[0]),y:b[1]*Math.round(a.y/b[1])}),b_=({x:a,y:b},[c,d,e],f=!1,g=[1,1])=>{let h={x:(a-c)/e,y:(b-d)/e};return f?b$(h,g):h},b0=({x:a,y:b},[c,d,e])=>({x:a*e+c,y:b*e+d});function b1(a,b){if("number"==typeof a)return Math.floor((b-b/(1+a))*.5);if("string"==typeof a&&a.endsWith("px")){let b=parseFloat(a);if(!Number.isNaN(b))return Math.floor(b)}if("string"==typeof a&&a.endsWith("%")){let c=parseFloat(a);if(!Number.isNaN(c))return Math.floor(b*c*.01)}return console.error(`The padding value "${a}" is invalid. Please provide a number or a string with a valid unit (px or %).`),0}let b2=(a,b,c,d,e,f)=>{let g=function(a,b,c){if("string"==typeof a||"number"==typeof a){let d=b1(a,c),e=b1(a,b);return{top:d,right:e,bottom:d,left:e,x:2*e,y:2*d}}if("object"==typeof a){let d=b1(a.top??a.y??0,c),e=b1(a.bottom??a.y??0,c),f=b1(a.left??a.x??0,b),g=b1(a.right??a.x??0,b);return{top:d,right:g,bottom:e,left:f,x:f+g,y:d+e}}return{top:0,right:0,bottom:0,left:0,x:0,y:0}}(f,b,c),h=bK(Math.min((b-g.x)/a.width,(c-g.y)/a.height),d,e),i=a.x+a.width/2,j=a.y+a.height/2,k=b/2-i*h,l=c/2-j*h,m=function(a,b,c,d,e,f){let{x:g,y:h}=b0(a,[b,c,d]),{x:i,y:j}=b0({x:a.x+a.width,y:a.y+a.height},[b,c,d]);return{left:Math.floor(g),top:Math.floor(h),right:Math.floor(e-i),bottom:Math.floor(f-j)}}(a,k,l,h,b,c),n={left:Math.min(m.left-g.left,0),top:Math.min(m.top-g.top,0),right:Math.min(m.right-g.right,0),bottom:Math.min(m.bottom-g.bottom,0)};return{x:k-n.left+n.right,y:l-n.top+n.bottom,zoom:h}},b3=()=>"undefined"!=typeof navigator&&navigator?.userAgent?.indexOf("Mac")>=0;function b4(a){return null!=a&&"parent"!==a}function b5(a){return{width:a.measured?.width??a.width??a.initialWidth??0,height:a.measured?.height??a.height??a.initialHeight??0}}function b6(a){return(a.measured?.width??a.width??a.initialWidth)!==void 0&&(a.measured?.height??a.height??a.initialHeight)!==void 0}function b7(a,b){if(a.size!==b.size)return!1;for(let c of a)if(!b.has(c))return!1;return!0}function b8(a){return null===a?null:a?"valid":"invalid"}let b9=a=>({width:a.offsetWidth,height:a.offsetHeight}),ca=a=>a?.getRootNode?.()||window?.document,cb=["INPUT","SELECT","TEXTAREA"],cc=(a,b)=>{let c="clientX"in a,d=c?a.clientX:a.touches?.[0].clientX,e=c?a.clientY:a.touches?.[0].clientY;return{x:d-(b?.left??0),y:e-(b?.top??0)}},cd=(a,b,c,d,e)=>{let f=b.querySelectorAll(`.${a}`);return f&&f.length?Array.from(f).map(b=>{let f=b.getBoundingClientRect();return{id:b.getAttribute("data-handleid"),type:a,nodeId:e,position:b.getAttribute("data-handlepos"),x:(f.left-c.left)/d,y:(f.top-c.top)/d,...b9(b)}}):null};function ce({sourceX:a,sourceY:b,targetX:c,targetY:d,sourceControlX:e,sourceControlY:f,targetControlX:g,targetControlY:h}){let i=.125*a+.375*e+.375*g+.125*c,j=.125*b+.375*f+.375*h+.125*d,k=Math.abs(i-a),l=Math.abs(j-b);return[i,j,k,l]}function cf(a,b){return a>=0?.5*a:25*b*Math.sqrt(-a)}function cg({pos:a,x1:b,y1:c,x2:d,y2:e,c:f}){switch(a){case j.Left:return[b-cf(b-d,f),c];case j.Right:return[b+cf(d-b,f),c];case j.Top:return[b,c-cf(c-e,f)];case j.Bottom:return[b,c+cf(e-c,f)]}}function ch({sourceX:a,sourceY:b,sourcePosition:c=j.Bottom,targetX:d,targetY:e,targetPosition:f=j.Top,curvature:g=.25}){let[h,i]=cg({pos:c,x1:a,y1:b,x2:d,y2:e,c:g}),[k,l]=cg({pos:f,x1:d,y1:e,x2:a,y2:b,c:g}),[m,n,o,p]=ce({sourceX:a,sourceY:b,targetX:d,targetY:e,sourceControlX:h,sourceControlY:i,targetControlX:k,targetControlY:l});return[`M${a},${b} C${h},${i} ${k},${l} ${d},${e}`,m,n,o,p]}function ci({sourceX:a,sourceY:b,targetX:c,targetY:d}){let e=Math.abs(c-a)/2,f=Math.abs(d-b)/2;return[c<a?c+e:c-e,d<b?d+f:d-f,e,f]}let cj=({source:a,sourceHandle:b,target:c,targetHandle:d})=>`xy-edge__${a}${b||""}-${c}${d||""}`;function ck({sourceX:a,sourceY:b,targetX:c,targetY:d}){let[e,f,g,h]=ci({sourceX:a,sourceY:b,targetX:c,targetY:d});return[`M ${a},${b}L ${c},${d}`,e,f,g,h]}let cl={[j.Left]:{x:-1,y:0},[j.Right]:{x:1,y:0},[j.Top]:{x:0,y:-1},[j.Bottom]:{x:0,y:1}},cm=({source:a,sourcePosition:b=j.Bottom,target:c})=>b===j.Left||b===j.Right?a.x<c.x?{x:1,y:0}:{x:-1,y:0}:a.y<c.y?{x:0,y:1}:{x:0,y:-1},cn=(a,b)=>Math.sqrt(Math.pow(b.x-a.x,2)+Math.pow(b.y-a.y,2));function co({sourceX:a,sourceY:b,sourcePosition:c=j.Bottom,targetX:d,targetY:e,targetPosition:f=j.Top,borderRadius:g=5,centerX:h,centerY:i,offset:k=20,stepPosition:l=.5}){let[m,n,o,p,q]=function({source:a,sourcePosition:b=j.Bottom,target:c,targetPosition:d=j.Top,center:e,offset:f,stepPosition:g}){let h,i,k=cl[b],l=cl[d],m={x:a.x+k.x*f,y:a.y+k.y*f},n={x:c.x+l.x*f,y:c.y+l.y*f},o=cm({source:m,sourcePosition:b,target:n}),p=0!==o.x?"x":"y",q=o[p],r=[],s={x:0,y:0},t={x:0,y:0},[,,u,v]=ci({sourceX:a.x,sourceY:a.y,targetX:c.x,targetY:c.y});if(k[p]*l[p]==-1){"x"===p?(h=e.x??m.x+(n.x-m.x)*g,i=e.y??(m.y+n.y)/2):(h=e.x??(m.x+n.x)/2,i=e.y??m.y+(n.y-m.y)*g);let a=[{x:h,y:m.y},{x:h,y:n.y}],b=[{x:m.x,y:i},{x:n.x,y:i}];r=k[p]===q?"x"===p?a:b:"x"===p?b:a}else{let e=[{x:m.x,y:n.y}],g=[{x:n.x,y:m.y}];if(r="x"===p?k.x===q?g:e:k.y===q?e:g,b===d){let b=Math.abs(a[p]-c[p]);if(b<=f){let d=Math.min(f-1,f-b);k[p]===q?s[p]=(m[p]>a[p]?-1:1)*d:t[p]=(n[p]>c[p]?-1:1)*d}}if(b!==d){let a="x"===p?"y":"x",b=k[p]===l[a],c=m[a]>n[a],d=m[a]<n[a];(1===k[p]&&(!b&&c||b&&d)||1!==k[p]&&(!b&&d||b&&c))&&(r="x"===p?e:g)}let j={x:m.x+s.x,y:m.y+s.y},o={x:n.x+t.x,y:n.y+t.y};Math.max(Math.abs(j.x-r[0].x),Math.abs(o.x-r[0].x))>=Math.max(Math.abs(j.y-r[0].y),Math.abs(o.y-r[0].y))?(h=(j.x+o.x)/2,i=r[0].y):(h=r[0].x,i=(j.y+o.y)/2)}let w={x:m.x+s.x,y:m.y+s.y},x={x:n.x+t.x,y:n.y+t.y};return[[a,...w.x!==r[0].x||w.y!==r[0].y?[w]:[],...r,...x.x!==r[r.length-1].x||x.y!==r[r.length-1].y?[x]:[],c],h,i,u,v]}({source:{x:a,y:b},sourcePosition:c,target:{x:d,y:e},targetPosition:f,center:{x:h,y:i},offset:k,stepPosition:l}),r=`M${m[0].x} ${m[0].y}`;for(let a=1;a<m.length-1;a++)r+=function(a,b,c,d){let e=Math.min(cn(a,b)/2,cn(b,c)/2,d),{x:f,y:g}=b;if(a.x===f&&f===c.x||a.y===g&&g===c.y)return`L${f} ${g}`;if(a.y===g){let b=a.x<c.x?-1:1,d=a.y<c.y?1:-1;return`L ${f+e*b},${g}Q ${f},${g} ${f},${g+e*d}`}let h=a.x<c.x?1:-1,i=a.y<c.y?-1:1;return`L ${f},${g+e*i}Q ${f},${g} ${f+e*h},${g}`}(m[a-1],m[a],m[a+1],g);return[r+=`L${m[m.length-1].x} ${m[m.length-1].y}`,n,o,p,q]}function cp(a){return a&&!!(a.internals.handleBounds||a.handles?.length)&&!!(a.measured.width||a.width||a.initialWidth)}function cq(a){if(!a)return null;let b=[],c=[];for(let d of a)d.width=d.width??1,d.height=d.height??1,"source"===d.type?b.push(d):"target"===d.type&&c.push(d);return{source:b,target:c}}function cr(a,b,c=j.Left,d=!1){let e=(b?.x??0)+a.internals.positionAbsolute.x,f=(b?.y??0)+a.internals.positionAbsolute.y,{width:g,height:h}=b??b5(a);if(d)return{x:e+g/2,y:f+h/2};switch(b?.position??c){case j.Top:return{x:e+g/2,y:f};case j.Right:return{x:e+g,y:f+h/2};case j.Bottom:return{x:e+g/2,y:f+h};case j.Left:return{x:e,y:f+h/2}}}function cs(a,b){return a&&(b?a.find(a=>a.id===b):a[0])||null}function ct(a,b){if(!a)return"";if("string"==typeof a)return a;let c=b?`${b}__`:"";return`${c}${Object.keys(a).sort().map(b=>`${b}=${a[b]}`).join("&")}`}let cu={nodeOrigin:[0,0],nodeExtent:by,elevateNodesOnSelect:!0,zIndexMode:"basic",defaults:{}},cv={...cu,checkEquality:!0};function cw(a,b){let c={...a};for(let a in b)void 0!==b[a]&&(c[a]=b[a]);return c}function cx(a){return"manual"===a}function cy(a,b,c,d={}){let e=cw(cv,d),f={i:0},g=new Map(b),h=e?.elevateNodesOnSelect&&!cx(e.zIndexMode)?1e3:0,i=a.length>0,j=!1;for(let k of(b.clear(),c.clear(),a)){let a=g.get(k.id);if(e.checkEquality&&k===a?.internals.userNode)b.set(k.id,a);else{let c=bL(bF(k,e.nodeOrigin),b4(k.extent)?k.extent:e.nodeExtent,b5(k));a={...e.defaults,...k,measured:{width:k.measured?.width,height:k.measured?.height},internals:{positionAbsolute:c,handleBounds:function(a,b){if(!a.handles)return a.measured?b?.internals.handleBounds:void 0;let c=[],d=[];for(let b of a.handles){let e={id:b.id,width:b.width??1,height:b.height??1,nodeId:a.id,x:b.x,y:b.y,position:b.position,type:b.type};"source"===b.type?c.push(e):"target"===b.type&&d.push(e)}return{source:c,target:d}}(k,a),z:cA(k,h,e.zIndexMode),userNode:k}},b.set(k.id,a)}void 0!==a.measured&&void 0!==a.measured.width&&void 0!==a.measured.height||a.hidden||(i=!1),k.parentId&&cz(a,b,c,d,f),j||=k.selected??!1}return{nodesInitialized:i,hasSelectedNodes:j}}function cz(a,b,c,d,e){let{elevateNodesOnSelect:f,nodeOrigin:g,nodeExtent:h,zIndexMode:i}=cw(cu,d),j=a.parentId,k=b.get(j);if(!k)return void console.warn(`Parent node ${j} not found. Please make sure that parent nodes are in front of their child nodes in the nodes array.`);!function(a,b){if(!a.parentId)return;let c=b.get(a.parentId);c?c.set(a.id,a):b.set(a.parentId,new Map([[a.id,a]]))}(a,c),e&&!k.parentId&&void 0===k.internals.rootParentIndex&&"auto"===i&&(k.internals.rootParentIndex=++e.i,k.internals.z=k.internals.z+10*e.i),e&&void 0!==k.internals.rootParentIndex&&(e.i=k.internals.rootParentIndex);let{x:l,y:m,z:n}=function(a,b,c,d,e,f){let{x:g,y:h}=b.internals.positionAbsolute,i=b5(a),j=bF(a,c),k=b4(a.extent)?bL(j,a.extent,i):j,l=bL({x:g+k.x,y:h+k.y},d,i);"parent"===a.extent&&(l=bM(l,i,b));let m=cA(a,e,f),n=b.internals.z??0;return{x:l.x,y:l.y,z:n>=m?n+1:m}}(a,k,g,h,f&&!cx(i)?1e3:0,i),{positionAbsolute:o}=a.internals,p=l!==o.x||m!==o.y;(p||n!==a.internals.z)&&b.set(a.id,{...a,internals:{...a.internals,positionAbsolute:p?{x:l,y:m}:o,z:n}})}function cA(a,b,c){let d=bY(a.zIndex)?a.zIndex:0;return cx(c)?d:d+(a.selected?b:0)}function cB(a,b,c,d=[0,0]){let e=[],f=new Map;for(let c of a){let a=b.get(c.parentId);if(!a)continue;let d=bU(f.get(c.parentId)?.expandedRect??bS(a),c.rect);f.set(c.parentId,{expandedRect:d,parent:a})}return f.size>0&&f.forEach(({expandedRect:b,parent:f},g)=>{let h=f.internals.positionAbsolute,i=b5(f),j=f.origin??d,k=b.x<h.x?Math.round(Math.abs(h.x-b.x)):0,l=b.y<h.y?Math.round(Math.abs(h.y-b.y)):0,m=Math.max(i.width,Math.round(b.width)),n=Math.max(i.height,Math.round(b.height)),o=(m-i.width)*j[0],p=(n-i.height)*j[1];(k>0||l>0||o||p)&&(e.push({id:g,type:"position",position:{x:f.position.x-k+o,y:f.position.y-l+p}}),c.get(g)?.forEach(b=>{a.some(a=>a.id===b.id)||e.push({id:b.id,type:"position",position:{x:b.position.x+k,y:b.position.y+l}})})),(i.width<b.width||i.height<b.height||k||l)&&e.push({id:g,type:"dimensions",setAttributes:!0,dimensions:{width:m+(k?j[0]*k-o:0),height:n+(l?j[1]*l-p:0)}})}),e}async function cC({delta:a,panZoom:b,transform:c,translateExtent:d,width:e,height:f}){if(!b||!a.x&&!a.y)return!1;let g=await b.setViewportConstrained({x:c[0]+a.x,y:c[1]+a.y,zoom:c[2]},[[0,0],[e,f]],d);return!!g&&(g.x!==c[0]||g.y!==c[1]||g.k!==c[2])}function cD(a,b,c,d,e,f){let g=e,h=d.get(g)||new Map;d.set(g,h.set(c,b)),g=`${e}-${a}`;let i=d.get(g)||new Map;if(d.set(g,i.set(c,b)),f){g=`${e}-${a}-${f}`;let h=d.get(g)||new Map;d.set(g,h.set(c,b))}}function cE(a,b,c){for(let d of(a.clear(),b.clear(),c)){let{source:c,target:e,sourceHandle:f=null,targetHandle:g=null}=d,h={edgeId:d.id,source:c,target:e,sourceHandle:f,targetHandle:g},i=`${c}-${f}--${e}-${g}`;cD("source",h,`${e}-${g}--${c}-${f}`,a,c,f),cD("target",h,i,a,e,g),b.set(d.id,d)}}function cF(a,b,c,d,e,f=!1){let g=d.get(a);if(!g)return null;let h="strict"===e?g.internals.handleBounds?.[b]:[...g.internals.handleBounds?.source??[],...g.internals.handleBounds?.target??[]],i=(c?h?.find(a=>a.id===c):h?.[0])??null;return i&&f?{...i,...cr(g,i,i.position,!0)}:i}function cG(a,b){return a?a:b?.classList.contains("target")?"target":b?.classList.contains("source")?"source":null}let cH=()=>!0;function cI(a,{handle:b,connectionMode:c,fromNodeId:d,fromHandleId:f,fromType:g,doc:h,lib:i,flowId:j,isValidConnection:k=cH,nodeLookup:l}){let m="target"===g,n=b?h.querySelector(`.${i}-flow__handle[data-id="${j}-${b?.nodeId}-${b?.id}-${b?.type}"]`):null,{x:o,y:p}=cc(a),q=h.elementFromPoint(o,p),r=q?.classList.contains(`${i}-flow__handle`)?q:n,s={handleDomNode:r,isValid:!1,connection:null,toHandle:null};if(r){let a=cG(void 0,r),b=r.getAttribute("data-nodeid"),g=r.getAttribute("data-handleid"),h=r.classList.contains("connectable"),i=r.classList.contains("connectableend");if(!b||!a)return s;let j={source:m?b:d,sourceHandle:m?g:f,target:m?d:b,targetHandle:m?f:g};s.connection=j,s.isValid=h&&i&&(c===e.Strict?m&&"source"===a||!m&&"target"===a:b!==d||g!==f)&&k(j),s.toHandle=cF(b,a,g,l,c,!0)}return s}let cJ={onPointerDown:function(a,{connectionMode:b,connectionRadius:c,handleId:d,nodeId:e,edgeUpdaterType:f,isTarget:g,domNode:h,nodeLookup:i,lib:k,autoPanOnConnect:l,flowId:m,panBy:n,cancelConnection:o,onConnectStart:p,onConnect:q,onConnectEnd:r,isValidConnection:s=cH,onReconnectEnd:t,updateConnection:u,getTransform:v,getFromHandle:w,autoPanSpeed:x,dragThreshold:y=1,handleDomNode:z}){let A,B=ca(a.target),C=0,{x:D,y:E}=cc(a),F=cG(f,z),G=h?.getBoundingClientRect(),H=!1;if(!G||!F)return;let I=cF(e,F,d,i,b);if(!I)return;let J=cc(a,G),K=!1,L=null,M=!1,N=null,O={...I,nodeId:e,type:F,position:I.position},P=i.get(e),Q={inProgress:!0,isValid:null,from:cr(P,O,j.Left,!0),fromHandle:O,fromPosition:O.position,fromNode:P,to:J,toHandle:null,toPosition:bC[O.position],toNode:null,pointer:J};function R(){H=!0,u(Q),p?.(a,{nodeId:e,handleId:d,handleType:F})}function S(a){var f,h;let o;if(!H){let{x:b,y:c}=cc(a),d=b-D,e=c-E;if(!(d*d+e*e>y*y))return;R()}if(!w()||!O)return void T(a);let p=v();A=function(a,b,c,d){let e=[],f=1/0;for(let g of function(a,b,c){let d=[],e={x:a.x-c,y:a.y-c,width:2*c,height:2*c};for(let a of b.values())bW(e,bS(a))>0&&d.push(a);return d}(a,c,b+250))for(let c of[...g.internals.handleBounds?.source??[],...g.internals.handleBounds?.target??[]]){if(d.nodeId===c.nodeId&&d.type===c.type&&d.id===c.id)continue;let{x:h,y:i}=cr(g,c,c.position,!0),j=Math.sqrt(Math.pow(h-a.x,2)+Math.pow(i-a.y,2));j>b||(j<f?(e=[{...c,x:h,y:i}],f=j):j===f&&e.push({...c,x:h,y:i}))}if(!e.length)return null;if(e.length>1){let a="source"===d.type?"target":"source";return e.find(b=>b.type===a)??e[0]}return e[0]}(b_(J=cc(a,G),p,!1,[1,1]),c,i,O),K||(!function a(){if(!l||!G)return;let[b,c]=bO(J,G,x);n({x:b,y:c}),C=requestAnimationFrame(a)}(),K=!0);let q=cI(a,{handle:A,connectionMode:b,fromNodeId:e,fromHandleId:d,fromType:g?"target":"source",isValidConnection:s,doc:B,lib:k,flowId:m,nodeLookup:i});N=q.handleDomNode,L=q.connection,f=!!A,h=q.isValid,o=null,h?o=!0:f&&!h&&(o=!1),M=o;let r=i.get(e),t=r?cr(r,O,j.Left,!0):Q.from,z={...Q,from:t,isValid:M,to:q.toHandle&&M?b0({x:q.toHandle.x,y:q.toHandle.y},p):J,toHandle:q.toHandle,toPosition:M&&q.toHandle?q.toHandle.position:bC[O.position],toNode:q.toHandle?i.get(q.toHandle.nodeId):null,pointer:J};u(z),Q=z}function T(a){if(!("touches"in a)||!(a.touches.length>0)){if(H){(A||N)&&L&&M&&q?.(L);let{inProgress:b,...c}=Q,d={...c,toPosition:Q.toHandle?Q.toPosition:null};r?.(a,d),f&&t?.(a,d)}o(),cancelAnimationFrame(C),K=!1,M=!1,L=null,N=null,B.removeEventListener("mousemove",S),B.removeEventListener("mouseup",T),B.removeEventListener("touchmove",S),B.removeEventListener("touchend",T)}}0===y&&R(),B.addEventListener("mousemove",S),B.addEventListener("mouseup",T),B.addEventListener("touchmove",S),B.addEventListener("touchend",T)},isValid:cI};!function(a){a.Line="line",a.Handle="handle"}(k||(k={}));var cK=c(85764);let cL=a=>{let b,c=new Set,d=(a,d)=>{let e="function"==typeof a?a(b):a;if(!Object.is(e,b)){let a=b;b=(null!=d?d:"object"!=typeof e||null===e)?e:Object.assign({},b,e),c.forEach(c=>c(b,a))}},e=()=>b,f={setState:d,getState:e,getInitialState:()=>g,subscribe:a=>(c.add(a),()=>c.delete(a)),destroy:()=>{console.warn("[DEPRECATED] The `destroy` method will be unsupported in a future version. Instead use unsubscribe function returned by subscribe. Everything will be garbage-collected if store is garbage-collected."),c.clear()}},g=b=a(d,e,f);return f},{useDebugValue:cM}=n,{useSyncExternalStoreWithSelector:cN}=cK,cO=a=>a;function cP(a,b=cO,c){let d=cN(a.subscribe,a.getState,a.getServerState||a.getInitialState,b,c);return cM(d),d}let cQ=(a,b)=>{let c=(a=>a?cL(a):cL)(a),d=(a,d=b)=>cP(c,a,d);return Object.assign(d,c),d};function cR(a,b){if(Object.is(a,b))return!0;if("object"!=typeof a||null===a||"object"!=typeof b||null===b)return!1;if(a instanceof Map&&b instanceof Map){if(a.size!==b.size)return!1;for(let[c,d]of a)if(!Object.is(d,b.get(c)))return!1;return!0}if(a instanceof Set&&b instanceof Set){if(a.size!==b.size)return!1;for(let c of a)if(!b.has(c))return!1;return!0}let c=Object.keys(a);if(c.length!==Object.keys(b).length)return!1;for(let d of c)if(!Object.prototype.hasOwnProperty.call(b,d)||!Object.is(a[d],b[d]))return!1;return!0}var cS=c(37322);let cT=(0,n.createContext)(null),cU=cT.Provider,cV=bx.error001("react");function cW(a,b){let c=(0,n.useContext)(cT);if(null===c)throw Error(cV);return cP(c,a,b)}function cX(){let a=(0,n.useContext)(cT);if(null===a)throw Error(cV);return(0,n.useMemo)(()=>({getState:a.getState,setState:a.setState,subscribe:a.subscribe}),[a])}let cY={display:"none"},cZ={position:"absolute",width:1,height:1,margin:-1,border:0,padding:0,overflow:"hidden",clip:"rect(0px, 0px, 0px, 0px)",clipPath:"inset(100%)"},c$="react-flow__node-desc",c_="react-flow__edge-desc",c0=a=>a.ariaLiveMessage,c1=a=>a.ariaLabelConfig;function c2({rfId:a}){let b=cW(c0);return(0,m.jsx)("div",{id:`react-flow__aria-live-${a}`,"aria-live":"assertive","aria-atomic":"true",style:cZ,children:b})}function c3({rfId:a,disableKeyboardA11y:b}){let c=cW(c1);return(0,m.jsxs)(m.Fragment,{children:[(0,m.jsx)("div",{id:`${c$}-${a}`,style:cY,children:b?c["node.a11yDescription.default"]:c["node.a11yDescription.keyboardDisabled"]}),(0,m.jsx)("div",{id:`${c_}-${a}`,style:cY,children:c["edge.a11yDescription.default"]}),!b&&(0,m.jsx)(c2,{rfId:a})]})}let c4=(0,n.forwardRef)(({position:a="top-left",children:b,className:c,style:d,...e},f)=>{let g=`${a}`.split("-");return(0,m.jsx)("div",{className:o(["react-flow__panel",c,...g]),style:d,ref:f,...e,children:b})});c4.displayName="Panel";let c5="https://reactflow.dev?utm_source=attribution";function c6({proOptions:a,position:b="bottom-right"}){return a?.hideAttribution?null:(0,m.jsx)(c4,{position:b,className:"react-flow__attribution","data-message":`Please only hide this attribution when you are subscribed to React Flow Pro: ${c5}`,children:(0,m.jsx)("a",{href:c5,target:"_blank",rel:"noopener noreferrer","aria-label":"React Flow attribution",children:"React Flow"})})}let c7=a=>{let b=[],c=[];for(let[,c]of a.nodeLookup)c.selected&&b.push(c.internals.userNode);for(let[,b]of a.edgeLookup)b.selected&&c.push(b);return{selectedNodes:b,selectedEdges:c}},c8=a=>a.id;function c9(a,b){return cR(a.selectedNodes.map(c8),b.selectedNodes.map(c8))&&cR(a.selectedEdges.map(c8),b.selectedEdges.map(c8))}function da({onSelectionChange:a}){cX();let{selectedNodes:b,selectedEdges:c}=cW(c7,c9);return null}let db=a=>!!a.onSelectionChangeHandlers;function dc({onSelectionChange:a}){let b=cW(db);return a||b?(0,m.jsx)(da,{onSelectionChange:a}):null}let dd=[0,0],de={x:0,y:0,zoom:1},df=["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"],dg=a=>({setNodes:a.setNodes,setEdges:a.setEdges,setMinZoom:a.setMinZoom,setMaxZoom:a.setMaxZoom,setTranslateExtent:a.setTranslateExtent,setNodeExtent:a.setNodeExtent,reset:a.reset,setDefaultNodesAndEdges:a.setDefaultNodesAndEdges}),dh={translateExtent:by,nodeOrigin:dd,minZoom:.5,maxZoom:2,elementsSelectable:!0,noPanClassName:"nopan",rfId:"1"};function di(a){let{setNodes:b,setEdges:c,setMinZoom:d,setMaxZoom:e,setTranslateExtent:f,setNodeExtent:g,reset:h,setDefaultNodesAndEdges:i}=cW(dg,cR),j=cX(),k=(0,n.useRef)(dh);return(0,n.useEffect)(()=>{for(let h of df){let i=a[h];if(i!==k.current[h]&&void 0!==a[h])if("nodes"===h)b(i);else if("edges"===h)c(i);else if("minZoom"===h)d(i);else if("maxZoom"===h)e(i);else if("translateExtent"===h)f(i);else if("nodeExtent"===h)g(i);else if("ariaLabelConfig"===h)j.setState({ariaLabelConfig:{...bA,...i||{}}});else"fitView"===h?j.setState({fitViewQueued:i}):"fitViewOptions"===h?j.setState({fitViewOptions:i}):j.setState({[h]:i})}k.current=a},df.map(b=>a[b])),null}let dj="undefined"!=typeof document?document:null;function dk(a=null,b={target:dj,actInsideInputWithModifier:!0}){let[c,d]=(0,n.useState)(!1);(0,n.useRef)(!1),(0,n.useRef)(new Set([]));let[e,f]=(0,n.useMemo)(()=>{if(null!==a){let b=(Array.isArray(a)?a:[a]).filter(a=>"string"==typeof a).map(a=>a.replace(/\+/g,"\n").replace("\n\n","\n+").split("\n")),c=b.reduce((a,b)=>a.concat(...b),[]);return[b,c]}return[[],[]]},[a]);return c}function dl(a,b){let c=[],d=new Map,e=[];for(let b of a)if("add"===b.type){e.push(b);continue}else if("remove"===b.type||"replace"===b.type)d.set(b.id,[b]);else{let a=d.get(b.id);a?a.push(b):d.set(b.id,[b])}for(let a of b){let b=d.get(a.id);if(!b){c.push(a);continue}if("remove"===b[0].type)continue;if("replace"===b[0].type){c.push({...b[0].item});continue}let e={...a};for(let a of b){var f=a,g=e;switch(f.type){case"select":g.selected=f.selected;break;case"position":void 0!==f.position&&(g.position=f.position),void 0!==f.dragging&&(g.dragging=f.dragging);break;case"dimensions":void 0!==f.dimensions&&(g.measured={...f.dimensions},f.setAttributes&&((!0===f.setAttributes||"width"===f.setAttributes)&&(g.width=f.dimensions.width),(!0===f.setAttributes||"height"===f.setAttributes)&&(g.height=f.dimensions.height))),"boolean"==typeof f.resizing&&(g.resizing=f.resizing)}}c.push(e)}return e.length&&e.forEach(a=>{void 0!==a.index?c.splice(a.index,0,{...a.item}):c.push({...a.item})}),c}function dm(a,b){return{id:a,type:"select",selected:b}}function dn(a,b=new Set,c=!1){let d=[];for(let[e,f]of a){let a=b.has(e);(void 0!==f.selected||a)&&f.selected!==a&&(c&&(f.selected=a),d.push(dm(f.id,a)))}return d}function dp({items:a=[],lookup:b}){let c=[],d=new Map(a.map(a=>[a.id,a]));for(let[d,e]of a.entries()){let a=b.get(e.id),f=a?.internals?.userNode??a;void 0!==f&&f!==e&&c.push({id:e.id,item:e,type:"replace"}),void 0===f&&c.push({item:e,type:"add",index:d})}for(let[a]of b)void 0===d.get(a)&&c.push({id:a,type:"remove"});return c}function dq(a){return{id:a.id,type:"remove"}}let dr=bZ("React Flow","https://reactflow.dev/"),ds=a=>(a=>!!a&&"object"==typeof a&&"id"in a&&"position"in a&&!("source"in a)&&!("target"in a))(a);function dt(a){return(0,n.forwardRef)(a)}let du=n.useEffect;function dv(a){let[b,c]=(0,n.useState)(BigInt(0)),[d]=(0,n.useState)(()=>{var a;let b;return a=()=>c(a=>a+BigInt(1)),b=[],{get:()=>b,reset:()=>{b=[]},push:c=>{b.push(c),a()}}});return du(()=>{let b=d.get();b.length&&(a(b),d.reset())},[b]),d}let dw=(0,n.createContext)(null);function dx({children:a}){let b=cX(),c=dv((0,n.useCallback)(a=>{let{nodes:c=[],setNodes:d,hasDefaultNodes:e,onNodesChange:f,nodeLookup:g,fitViewQueued:h,onNodesChangeMiddlewareMap:i}=b.getState(),j=c;for(let b of a)j="function"==typeof b?b(j):b;let k=dp({items:j,lookup:g});for(let a of i.values())k=a(k);e&&d(j),k.length>0?f?.(k):h&&window.requestAnimationFrame(()=>{let{fitViewQueued:a,nodes:c,setNodes:d}=b.getState();a&&d(c)})},[])),d=dv((0,n.useCallback)(a=>{let{edges:c=[],setEdges:d,hasDefaultEdges:e,onEdgesChange:f,edgeLookup:g}=b.getState(),h=c;for(let b of a)h="function"==typeof b?b(h):b;e?d(h):f&&f(dp({items:h,lookup:g}))},[])),e=(0,n.useMemo)(()=>({nodeQueue:c,edgeQueue:d}),[]);return(0,m.jsx)(dw.Provider,{value:e,children:a})}let dy=a=>!!a.panZoom;function dz(){let a=(()=>{let a=cX();return(0,n.useMemo)(()=>({zoomIn:async b=>{let{panZoom:c}=a.getState();return!!c&&c.scaleBy(1.2,b)},zoomOut:async b=>{let{panZoom:c}=a.getState();return!!c&&c.scaleBy(1/1.2,b)},zoomTo:async(b,c)=>{let{panZoom:d}=a.getState();return!!d&&d.scaleTo(b,c)},getZoom:()=>a.getState().transform[2],setViewport:async(b,c)=>{let{transform:[d,e,f],panZoom:g}=a.getState();return!!g&&(await g.setViewport({x:b.x??d,y:b.y??e,zoom:b.zoom??f},c),!0)},getViewport:()=>{let[b,c,d]=a.getState().transform;return{x:b,y:c,zoom:d}},setCenter:async(b,c,d)=>a.getState().setCenter(b,c,d),fitBounds:async(b,c)=>{let{width:d,height:e,minZoom:f,maxZoom:g,panZoom:h}=a.getState(),i=b2(b,d,e,f,g,c?.padding??.1);return!!h&&(await h.setViewport(i,{duration:c?.duration,ease:c?.ease,interpolate:c?.interpolate}),!0)},screenToFlowPosition:(b,c={})=>{let{transform:d,snapGrid:e,snapToGrid:f,domNode:g}=a.getState();if(!g)return b;let{x:h,y:i}=g.getBoundingClientRect(),j={x:b.x-h,y:b.y-i},k=c.snapGrid??e;return b_(j,d,c.snapToGrid??f,k)},flowToScreenPosition:b=>{let{transform:c,domNode:d}=a.getState();if(!d)return b;let{x:e,y:f}=d.getBoundingClientRect(),g=b0(b,c);return{x:g.x+e,y:g.y+f}}}),[])})(),b=cX(),c=function(){let a=(0,n.useContext)(dw);if(!a)throw Error("useBatchContext must be used within a BatchProvider");return a}(),d=cW(dy),e=(0,n.useMemo)(()=>{let a=a=>b.getState().nodeLookup.get(a),d=a=>{c.nodeQueue.push(a)},e=a=>{c.edgeQueue.push(a)},f=a=>{let{nodeLookup:c,nodeOrigin:d}=b.getState(),e=ds(a)?a:c.get(a.id),f=e.parentId?function(a,b={width:0,height:0},c,d,e){let f={...a},g=d.get(c);if(g){let a=g.origin||e;f.x+=g.internals.positionAbsolute.x-(b.width??0)*a[0],f.y+=g.internals.positionAbsolute.y-(b.height??0)*a[1]}return f}(e.position,e.measured,e.parentId,c,d):e.position;return bS({...e,position:f,width:e.measured?.width??e.width,height:e.measured?.height??e.height})},g=(a,b,c={replace:!1})=>{d(d=>d.map(d=>{if(d.id===a){let a="function"==typeof b?b(d):b;return c.replace&&ds(a)?a:{...d,...a}}return d}))},h=(a,b,c={replace:!1})=>{e(d=>d.map(d=>{if(d.id===a){let a="function"==typeof b?b(d):b;return c.replace&&bD(a)?a:{...d,...a}}return d}))};return{getNodes:()=>b.getState().nodes.map(a=>({...a})),getNode:b=>a(b)?.internals.userNode,getInternalNode:a,getEdges:()=>{let{edges:a=[]}=b.getState();return a.map(a=>({...a}))},getEdge:a=>b.getState().edgeLookup.get(a),setNodes:d,setEdges:e,addNodes:a=>{let b=Array.isArray(a)?a:[a];c.nodeQueue.push(a=>[...a,...b])},addEdges:a=>{let b=Array.isArray(a)?a:[a];c.edgeQueue.push(a=>[...a,...b])},toObject:()=>{let{nodes:a=[],edges:c=[],transform:d}=b.getState(),[e,f,g]=d;return{nodes:a.map(a=>({...a})),edges:c.map(a=>({...a})),viewport:{x:e,y:f,zoom:g}}},deleteElements:async({nodes:a=[],edges:c=[]})=>{let{nodes:d,edges:e,onNodesDelete:f,onEdgesDelete:g,triggerNodeChanges:h,triggerEdgeChanges:i,onDelete:j,onBeforeDelete:k}=b.getState(),{nodes:l,edges:m}=await bJ({nodesToRemove:a,edgesToRemove:c,nodes:d,edges:e,onBeforeDelete:k}),n=m.length>0,o=l.length>0;if(n){let a=m.map(dq);g?.(m),i(a)}if(o){let a=l.map(dq);f?.(l),h(a)}return(o||n)&&j?.({nodes:l,edges:m}),{deletedNodes:l,deletedEdges:m}},getIntersectingNodes:(a,c=!0,d)=>{let e=bX(a),g=e?a:f(a),h=void 0!==d;return g?(d||b.getState().nodes).filter(d=>{let f=b.getState().nodeLookup.get(d.id);if(f&&!e&&(d.id===a.id||!f.internals.positionAbsolute))return!1;let i=bS(h?d:f),j=bW(i,g);return c&&j>0||j>=i.width*i.height||j>=g.width*g.height}):[]},isNodeIntersecting:(a,b,c=!0)=>{let d=bX(a)?a:f(a);if(!d)return!1;let e=bW(d,b);return c&&e>0||e>=b.width*b.height||e>=d.width*d.height},updateNode:g,updateNodeData:(a,b,c={replace:!1})=>{g(a,a=>{let d="function"==typeof b?b(a):b;return c.replace?{...a,data:d}:{...a,data:{...a.data,...d}}},c)},updateEdge:h,updateEdgeData:(a,b,c={replace:!1})=>{h(a,a=>{let d="function"==typeof b?b(a):b;return c.replace?{...a,data:d}:{...a,data:{...a.data,...d}}},c)},getNodesBounds:a=>{let{nodeLookup:c,nodeOrigin:d}=b.getState();return((a,b={nodeOrigin:[0,0]})=>{if(0===a.length)return{x:0,y:0,width:0,height:0};let c=!1,d=a.reduce((a,d)=>{let e="string"==typeof d,f=b.nodeLookup||e?void 0:d;return(b.nodeLookup&&(f=e?b.nodeLookup.get(d):bE(d)?d:b.nodeLookup.get(d.id)),f)?(c=!0,bP(a,bT(f,b.nodeOrigin))):a},{x:1/0,y:1/0,x2:-1/0,y2:-1/0});return c?bR(d):{x:0,y:0,width:0,height:0}})(a,{nodeLookup:c,nodeOrigin:d})},getHandleConnections:({type:a,id:c,nodeId:d})=>Array.from(b.getState().connectionLookup.get(`${d}-${a}${c?`-${c}`:""}`)?.values()??[]),getNodeConnections:({type:a,handleId:c,nodeId:d})=>Array.from(b.getState().connectionLookup.get(`${d}${a?c?`-${a}-${c}`:`-${a}`:""}`)?.values()??[]),fitView:async a=>{let d,e,f=b.getState().fitViewResolver??{promise:new Promise((a,b)=>{d=a,e=b}),resolve:d,reject:e};return b.setState({fitViewQueued:!0,fitViewOptions:a,fitViewResolver:f}),c.nodeQueue.push(a=>[...a]),f.promise}}},[]);return(0,n.useMemo)(()=>({...e,...a,viewportInitialized:d}),[d])}let dA=void 0,dB={position:"absolute",width:"100%",height:"100%",top:0,left:0},dC=a=>({userSelectionActive:a.userSelectionActive,lib:a.lib,connectionInProgress:a.connection.inProgress});function dD({onPaneContextMenu:a,zoomOnScroll:b=!0,zoomOnPinch:c=!0,panOnScroll:d=!1,panActivationKeyPressed:e,panOnScrollSpeed:g=.5,panOnScrollMode:h=f.Free,zoomOnDoubleClick:i=!0,panOnDrag:j=!0,defaultViewport:k,translateExtent:l,minZoom:o,maxZoom:p,zoomActivationKeyCode:q,preventScrolling:r=!0,children:s,noWheelClassName:t,noPanClassName:u,onViewportChange:v,isControlledViewport:w,paneClickDistance:x,selectionOnDrag:y}){let z=cX(),A=(0,n.useRef)(null),{userSelectionActive:B,lib:C,connectionInProgress:D}=cW(dC,cR);return dk(q),(0,n.useRef)(),cX(),(0,n.useCallback)(a=>{v?.({x:a[0],y:a[1],zoom:a[2]}),w||z.setState({transform:a})},[v,w]),(0,m.jsx)("div",{className:"react-flow__renderer",ref:A,style:dB,children:s})}let dE=a=>({userSelectionActive:a.userSelectionActive,userSelectionRect:a.userSelectionRect});function dF(){let{userSelectionActive:a,userSelectionRect:b}=cW(dE,cR);return a&&b?(0,m.jsx)("div",{className:"react-flow__selection react-flow__container",style:{width:b.width,height:b.height,transform:`translate(${b.x}px, ${b.y}px)`}}):null}let dG=(a,b)=>c=>{c.target===b.current&&a?.(c)},dH=a=>({userSelectionActive:a.userSelectionActive,elementsSelectable:a.elementsSelectable,dragging:a.paneDragging,panBy:a.panBy,autoPanSpeed:a.autoPanSpeed});function dI({isSelecting:a,selectionKeyPressed:b,selectionMode:c=g.Full,panOnDrag:d,autoPanOnSelection:e,paneClickDistance:f,selectionOnDrag:h,onSelectionStart:i,onSelectionEnd:j,onPaneClick:k,onPaneContextMenu:l,onPaneScroll:p,onPaneMouseEnter:q,onPaneMouseMove:r,onPaneMouseLeave:s,children:t}){let u=(0,n.useRef)(0),v=cX(),{userSelectionActive:w,elementsSelectable:x,dragging:y,panBy:z,autoPanSpeed:A}=cW(dH,cR),B=x&&(a||w),C=(0,n.useRef)(null),D=(0,n.useRef)(),E=(0,n.useRef)(new Set),F=(0,n.useRef)(new Set),G=(0,n.useRef)(!1),H=(0,n.useRef)(!1),I=(0,n.useRef)({x:0,y:0}),J=(0,n.useRef)(!1),K=a=>{if(H.current||G.current||v.getState().connection.inProgress){H.current=!1,G.current=!1;return}k?.(a),v.getState().resetSelectedElements(),v.setState({nodesSelectionActive:!1})};function L(a,b){let{userSelectionRect:d}=v.getState();if(!d)return;let{transform:e,nodeLookup:f,edgeLookup:h,connectionLookup:i,triggerNodeChanges:j,triggerEdgeChanges:k,defaultEdgeOptions:l}=v.getState(),m={x:d.startX,y:d.startY},{x:n,y:o}=b0(m,e),p={startX:m.x,startY:m.y,x:a<n?a:n,y:b<o?b:o,width:Math.abs(a-n),height:Math.abs(b-o)},q=E.current,r=F.current;E.current=new Set(bH(f,p,e,c===g.Partial,!0).map(a=>a.id)),F.current=new Set;let s=l?.selectable??!0;for(let a of E.current){let b=i.get(a);if(b)for(let{edgeId:a}of b.values()){let b=h.get(a);b&&(b.selectable??s)&&F.current.add(a)}}b7(q,E.current)||j(dn(f,E.current,!0)),b7(r,F.current)||k(dn(h,F.current)),v.setState({userSelectionRect:p,userSelectionActive:!0,nodesSelectionActive:!1})}let M=()=>{cancelAnimationFrame(u.current),u.current=0,J.current=!1},N=!0===d||Array.isArray(d)&&d.includes(0);return(0,m.jsxs)("div",{className:o(["react-flow__pane",{draggable:N,dragging:y,selection:a}]),onClick:B?void 0:dG(K,C),onContextMenu:dG(a=>{if(Array.isArray(d)&&d?.includes(2))return void a.preventDefault();l?.(a)},C),onWheel:dG(p?a=>p(a):void 0,C),onPointerEnter:B?void 0:q,onPointerMove:B?a=>{let{userSelectionRect:c,transform:d,resetSelectedElements:g}=v.getState();if(!D.current||!c)return;let{x:h,y:j}=cc(a.nativeEvent,D.current);I.current={x:h,y:j};let k=b0({x:c.startX,y:c.startY},d);if(!H.current){if(Math.hypot(h-k.x,j-k.y)<=(b?0:f))return;g(),i?.(a)}H.current=!0,J.current||(!function a(){if(!e||!D.current)return;let[b,c]=bO(I.current,D.current,A);z({x:b,y:c}).then(b=>{if(!H.current||!b){u.current=requestAnimationFrame(a);return}let{x:c,y:d}=I.current;L(c,d),u.current=requestAnimationFrame(a)})}(),J.current=!0),L(h,j)}:r,onPointerUp:a=>{if(!B){a.target===C.current&&v.getState().connection.inProgress&&(G.current=!0);return}0===a.button&&(a.target?.releasePointerCapture?.(a.pointerId),!w&&a.target===C.current&&v.getState().userSelectionRect&&K?.(a),v.setState({userSelectionActive:!1,userSelectionRect:null}),H.current&&(j?.(a),v.setState({nodesSelectionActive:E.current.size>0})),M())},onPointerCancel:B?a=>{a.target?.releasePointerCapture?.(a.pointerId),M()}:void 0,onPointerDownCapture:B?c=>{if("touch"===c.pointerType&&!1!==d&&!b)return;let{domNode:e,transform:f}=v.getState();if(D.current=e?.getBoundingClientRect(),!D.current)return;let g=c.target===C.current;if(!g&&c.target.closest(".nokey")||!a||!(h&&g||b)||0!==c.button||!c.isPrimary)return;c.target?.setPointerCapture?.(c.pointerId),H.current=!1;let{x:i,y:j}=cc(c.nativeEvent,D.current),k=b_({x:i,y:j},f);v.setState({userSelectionRect:{width:0,height:0,startX:k.x,startY:k.y,x:i,y:j}}),g||(c.stopPropagation(),c.preventDefault())}:void 0,onClickCapture:B?a=>{H.current&&(a.stopPropagation(),H.current=!1)}:void 0,onPointerLeave:s,ref:C,style:dB,children:[t,(0,m.jsx)(dF,{})]})}function dJ({id:a,store:b,unselect:c=!1,nodeRef:d}){let{addSelectedNodes:e,unselectNodesAndEdges:f,multiSelectionActive:g,nodeLookup:h,onError:i}=b.getState(),j=h.get(a);if(!j)return void i?.("012",bx.error012(a));b.setState({nodesSelectionActive:!1}),j.selected?(c||j.selected&&g)&&(f({nodes:[j],edges:[]}),requestAnimationFrame(()=>d?.current?.blur())):e([a])}function dK({nodeRef:a,disabled:b=!1,noDragClassName:c,handleSelector:d,nodeId:e,isSelectable:f,nodeClickDistance:g}){cX();let[h,i]=(0,n.useState)(!1);return(0,n.useRef)(),h}function dL(){let a=cX();return(0,n.useCallback)(b=>{let{nodeExtent:c,snapToGrid:d,snapGrid:e,nodesDraggable:f,onError:g,updateNodePositions:h,nodeLookup:i,nodeOrigin:j}=a.getState(),k=new Map,l=a=>a.selected&&(a.draggable||f&&void 0===a.draggable),m=d?e[0]:5,n=d?e[1]:5,o=b.direction.x*m*b.factor,p=b.direction.y*n*b.factor;for(let[,a]of i){if(!l(a))continue;let b={x:a.internals.positionAbsolute.x+o,y:a.internals.positionAbsolute.y+p};d&&(b=b$(b,e));let{position:f,positionAbsolute:h}=function({nodeId:a,nextPosition:b,nodeLookup:c,nodeOrigin:d=[0,0],nodeExtent:e,onError:f}){let g=c.get(a),h=g.parentId?c.get(g.parentId):void 0,{x:i,y:j}=h?h.internals.positionAbsolute:{x:0,y:0},k=g.origin??d,l=g.extent||e;if("parent"!==g.extent||g.expandParent)h&&b4(g.extent)&&(l=[[g.extent[0][0]+i,g.extent[0][1]+j],[g.extent[1][0]+i,g.extent[1][1]+j]]);else if(h){let{width:a,height:b}=b5(h);a&&b&&(l=[[i,j],[i+a,j+b]])}else f?.("005",bx.error005());let m=b4(l)?bL(b,l,g.measured):b;return(void 0===g.measured.width||void 0===g.measured.height)&&f?.("015",bx.error015()),{position:{x:m.x-i+(g.measured.width??0)*k[0],y:m.y-j+(g.measured.height??0)*k[1]},positionAbsolute:m}}({nodeId:a.id,nextPosition:b,nodeLookup:i,nodeExtent:c,nodeOrigin:j,onError:g});a.position=f,a.internals.positionAbsolute=h,k.set(a.id,a)}h(k)},[])}let dM=(0,n.createContext)(null),dN=dM.Provider;dM.Consumer;let dO=a=>({connectOnClick:a.connectOnClick,noPanClassName:a.noPanClassName,rfId:a.rfId}),dP=(0,n.createContext)(null);function dQ({children:a}){let b=cW(dO,cR);return(0,m.jsx)(dP.Provider,{value:b,children:a})}let dR={connectingFrom:!1,connectingTo:!1,clickConnecting:!1,isPossibleEndHandle:!0,connectionInProcess:!1,clickConnectionInProcess:!1,valid:!1},dS=(0,n.memo)(dt(function({type:a="source",position:b=j.Top,isValidConnection:c,isConnectable:d=!0,isConnectableStart:f=!0,isConnectableEnd:g=!0,id:h,onConnect:i,children:k,className:l,onMouseDown:p,onTouchStart:q,...r},s){let t=h||null,u="target"===a,v=cX(),w=(0,n.useContext)(dM),{connectOnClick:x,noPanClassName:y,rfId:z}=function(){let a=(0,n.useContext)(dP);if(!a)throw Error("useHandleConfig must be used within a HandleConfigProvider");return a}(),{connectingFrom:A,connectingTo:B,clickConnecting:C,isPossibleEndHandle:D,connectionInProcess:E,clickConnectionInProcess:F,valid:G}=cW(b=>{let{connectionClickStartHandle:c,connectionMode:d,connection:f}=b,{fromHandle:g,toHandle:h,isValid:i}=f;if(!g&&!c)return dR;let j=h?.nodeId===w&&h?.id===t&&h?.type===a;return{connectingFrom:g?.nodeId===w&&g?.id===t&&g?.type===a,connectingTo:j,clickConnecting:c?.nodeId===w&&c?.id===t&&c?.type===a,isPossibleEndHandle:d===e.Strict?g?.type!==a:w!==g?.nodeId||t!==g?.id,connectionInProcess:!!g,clickConnectionInProcess:!!c,valid:j&&i}},cR);w||v.getState().onError?.("010",bx.error010());let H=a=>{let{defaultEdgeOptions:b,onConnect:c,hasDefaultEdges:d}=v.getState(),e={...b,...a};if(d){let{edges:a,setEdges:b,onError:c}=v.getState();b(function(a,b,c={}){return((a,b,c={})=>{let d,e;if(!a.source||!a.target)return c.onError?.("006",bx.error006()),b;let f=c.getEdgeId||cj;return(e=d=bD(a)?{...a}:{...a,id:f(a)},b.some(a=>a.source===e.source&&a.target===e.target&&(a.sourceHandle===e.sourceHandle||!a.sourceHandle&&!e.sourceHandle)&&(a.targetHandle===e.targetHandle||!a.targetHandle&&!e.targetHandle)))?b:(null===d.sourceHandle&&delete d.sourceHandle,null===d.targetHandle&&delete d.targetHandle,b.concat(d))})(a,b,{...c,onError:c.onError??dr})}(e,a,{onError:c}))}c?.(e),i?.(e)},I=a=>{if(!w)return;let b="clientX"in a.nativeEvent;if(f&&(b&&0===a.button||!b)){let b=v.getState();cJ.onPointerDown(a.nativeEvent,{handleDomNode:a.currentTarget,autoPanOnConnect:b.autoPanOnConnect,connectionMode:b.connectionMode,connectionRadius:b.connectionRadius,domNode:b.domNode,nodeLookup:b.nodeLookup,lib:b.lib,isTarget:u,handleId:t,nodeId:w,flowId:b.rfId,panBy:b.panBy,cancelConnection:b.cancelConnection,onConnectStart:b.onConnectStart,onConnectEnd:(...a)=>v.getState().onConnectEnd?.(...a),updateConnection:b.updateConnection,onConnect:H,isValidConnection:c||((...a)=>v.getState().isValidConnection?.(...a)??!0),getTransform:()=>v.getState().transform,getFromHandle:()=>v.getState().connection.fromHandle,autoPanSpeed:b.autoPanSpeed,dragThreshold:b.connectionDragThreshold})}b?p?.(a):q?.(a)};return(0,m.jsx)("div",{"data-handleid":t,"data-nodeid":w,"data-handlepos":b,"data-id":`${z}-${w}-${t}-${a}`,className:o(["react-flow__handle",`react-flow__handle-${b}`,"nodrag",y,l,{source:!u,target:u,connectable:d,connectablestart:f,connectableend:g,clickconnecting:C,connectingfrom:A,connectingto:B,valid:G,connectionindicator:d&&(!E||D)&&(E||F?g:f)}]),onMouseDown:I,onTouchStart:I,onClick:x?b=>{let{onClickConnectStart:d,onClickConnectEnd:e,connectionClickStartHandle:g,connectionMode:h,isValidConnection:i,lib:j,rfId:k,nodeLookup:l,connection:m}=v.getState();if(!w||!g&&!f)return;if(!g){d?.(b.nativeEvent,{nodeId:w,handleId:t,handleType:a}),v.setState({connectionClickStartHandle:{nodeId:w,type:a,id:t}});return}let n=ca(b.target),o=c||i,{connection:p,isValid:q}=cJ.isValid(b.nativeEvent,{handle:{nodeId:w,id:t,type:a},connectionMode:h,fromNodeId:g.nodeId,fromHandleId:g.id||null,fromType:g.type,isValidConnection:o,flowId:k,doc:n,lib:j,nodeLookup:l});q&&p&&H(p);let r=structuredClone(m);delete r.inProgress,r.toPosition=r.toHandle?r.toHandle.position:null,e?.(b,r),v.setState({connectionClickStartHandle:null})}:void 0,ref:s,...r,children:k})})),dT={ArrowUp:{x:0,y:-1},ArrowDown:{x:0,y:1},ArrowLeft:{x:-1,y:0},ArrowRight:{x:1,y:0}},dU={input:function({data:a,isConnectable:b,sourcePosition:c=j.Bottom}){return(0,m.jsxs)(m.Fragment,{children:[a?.label,(0,m.jsx)(dS,{type:"source",position:c,isConnectable:b})]})},default:function({data:a,isConnectable:b,targetPosition:c=j.Top,sourcePosition:d=j.Bottom}){return(0,m.jsxs)(m.Fragment,{children:[(0,m.jsx)(dS,{type:"target",position:c,isConnectable:b}),a?.label,(0,m.jsx)(dS,{type:"source",position:d,isConnectable:b})]})},output:function({data:a,isConnectable:b,targetPosition:c=j.Top}){return(0,m.jsxs)(m.Fragment,{children:[(0,m.jsx)(dS,{type:"target",position:c,isConnectable:b}),a?.label]})},group:function(){return null}},dV=a=>{let{width:b,height:c,x:d,y:e}=bG(a.nodeLookup,{filter:a=>!!a.selected});return{width:bY(b)?b:null,height:bY(c)?c:null,userSelectionActive:a.userSelectionActive,transformString:`translate(${a.transform[0]}px,${a.transform[1]}px) scale(${a.transform[2]}) translate(${d}px,${e}px)`}};function dW({onSelectionContextMenu:a,noPanClassName:b,disableKeyboardA11y:c}){let d=cX(),{width:e,height:f,transformString:g,userSelectionActive:h}=cW(dV,cR),i=dL(),j=(0,n.useRef)(null),k=!h&&null!==e&&null!==f;if(dK({nodeRef:j,disabled:!k}),!k)return null;let l=a?b=>{a(b,d.getState().nodes.filter(a=>a.selected))}:void 0;return(0,m.jsx)("div",{className:o(["react-flow__nodesselection","react-flow__container",b]),style:{transform:g},children:(0,m.jsx)("div",{ref:j,className:"react-flow__nodesselection-rect",onContextMenu:l,tabIndex:c?void 0:-1,onKeyDown:c?void 0:a=>{Object.prototype.hasOwnProperty.call(dT,a.key)&&(a.preventDefault(),i({direction:dT[a.key],factor:a.shiftKey?4:1}))},style:{width:e,height:f}})})}let dX=void 0,dY=a=>({nodesSelectionActive:a.nodesSelectionActive,userSelectionActive:a.userSelectionActive});function dZ({children:a,onPaneClick:b,onPaneMouseEnter:c,onPaneMouseMove:d,onPaneMouseLeave:e,onPaneContextMenu:f,onPaneScroll:g,paneClickDistance:h,deleteKeyCode:i,selectionKeyCode:j,selectionOnDrag:k,selectionMode:l,onSelectionStart:n,onSelectionEnd:o,multiSelectionKeyCode:p,panActivationKeyCode:q,zoomActivationKeyCode:r,elementsSelectable:s,zoomOnScroll:t,zoomOnPinch:u,panOnScroll:v,panOnScrollSpeed:w,panOnScrollMode:x,zoomOnDoubleClick:y,panOnDrag:z,autoPanOnSelection:A,defaultViewport:B,translateExtent:C,minZoom:D,maxZoom:E,preventScrolling:F,onSelectionContextMenu:G,noWheelClassName:H,noPanClassName:I,disableKeyboardA11y:J,onViewportChange:K,isControlledViewport:L}){let{nodesSelectionActive:M,userSelectionActive:N}=cW(dY,cR),O=dk(j,{target:dX}),P=dk(q,{target:dX}),Q=P||z,R=P||v,S=k&&!0!==Q,T=O||N||S;return!function({deleteKeyCode:a,multiSelectionKeyCode:b}){cX();let{deleteElements:c}=dz();dk(a,{actInsideInputWithModifier:!1}),dk(b,{target:dA})}({deleteKeyCode:i,multiSelectionKeyCode:p}),(0,m.jsx)(dD,{onPaneContextMenu:f,elementsSelectable:s,zoomOnScroll:t,zoomOnPinch:u,panOnScroll:R,panActivationKeyPressed:P,panOnScrollSpeed:w,panOnScrollMode:x,zoomOnDoubleClick:y,panOnDrag:!O&&Q,defaultViewport:B,translateExtent:C,minZoom:D,maxZoom:E,zoomActivationKeyCode:r,preventScrolling:F,noWheelClassName:H,noPanClassName:I,onViewportChange:K,isControlledViewport:L,paneClickDistance:h,selectionOnDrag:S,children:(0,m.jsxs)(dI,{onSelectionStart:n,onSelectionEnd:o,onPaneClick:b,onPaneMouseEnter:c,onPaneMouseMove:d,onPaneMouseLeave:e,onPaneContextMenu:f,onPaneScroll:g,panOnDrag:Q,autoPanOnSelection:A,isSelecting:!!T,selectionMode:l,selectionKeyPressed:O,paneClickDistance:h,selectionOnDrag:S,children:[a,M&&(0,m.jsx)(dW,{onSelectionContextMenu:G,noPanClassName:I,disableKeyboardA11y:J})]})})}dZ.displayName="FlowRenderer";let d$=(0,n.memo)(dZ),d_=a=>a.updateNodeInternals;var d0=(0,n.memo)(function({id:a,onClick:b,onMouseEnter:c,onMouseMove:d,onMouseLeave:e,onContextMenu:f,onDoubleClick:g,nodesDraggable:h,elementsSelectable:i,nodesConnectable:j,nodesFocusable:k,resizeObserver:l,noDragClassName:p,noPanClassName:q,disableKeyboardA11y:r,rfId:s,nodeTypes:t,nodeClickDistance:u,onError:v}){let{node:w,internals:x,isParent:y}=cW(b=>{let c=b.nodeLookup.get(a),d=b.parentLookup.has(a);return{node:c,internals:c.internals,isParent:d}},cR),z=w.type||"default",A=t?.[z]||dU[z];void 0===A&&(v?.("003",bx.error003(z)),z="default",A=t?.default||dU.default);let B=!!(w.draggable||h&&void 0===w.draggable),C=!!(w.selectable||i&&void 0===w.selectable),D=!!(w.connectable||j&&void 0===w.connectable),E=!!(w.focusable||k&&void 0===w.focusable),F=cX(),G=b6(w),H=function({node:a,nodeType:b,hasDimensions:c,resizeObserver:d}){cX();let e=(0,n.useRef)(null);return(0,n.useRef)(null),(0,n.useRef)(a.sourcePosition),(0,n.useRef)(a.targetPosition),(0,n.useRef)(b),c&&a.internals.handleBounds,e}({node:w,nodeType:z,hasDimensions:G,resizeObserver:l}),I=dK({nodeRef:H,disabled:w.hidden||!B,noDragClassName:p,handleSelector:w.dragHandle,nodeId:a,isSelectable:C,nodeClickDistance:u}),J=dL();if(w.hidden)return null;let K=b5(w),L=void 0===w.internals.handleBounds?{width:w.width??w.initialWidth??w.style?.width,height:w.height??w.initialHeight??w.style?.height}:{width:w.width??w.style?.width,height:w.height??w.style?.height},M=C||B||b||c||d||e,N=c?a=>c(a,{...x.userNode}):void 0,O=d?a=>d(a,{...x.userNode}):void 0,P=e?a=>e(a,{...x.userNode}):void 0,Q=f?a=>f(a,{...x.userNode}):void 0,R=g?a=>g(a,{...x.userNode}):void 0;return(0,m.jsx)("div",{className:o(["react-flow__node",`react-flow__node-${z}`,{[q]:B},w.className,{selected:w.selected,selectable:C,parent:y,draggable:B,dragging:I}]),ref:H,style:{zIndex:x.z,transform:`translate(${x.positionAbsolute.x}px,${x.positionAbsolute.y}px)`,pointerEvents:M?"all":"none",visibility:G?"visible":"hidden",...w.style,...L},"data-id":a,"data-testid":`rf__node-${a}`,onMouseEnter:N,onMouseMove:O,onMouseLeave:P,onContextMenu:Q,onClick:c=>{let{selectNodesOnDrag:d,nodeDragThreshold:e}=F.getState();C&&(!d||!B||e>0)&&dJ({id:a,store:F,nodeRef:H}),b&&b(c,{...x.userNode})},onDoubleClick:R,onKeyDown:E?b=>{if(!function(a){let b=a.composedPath?.()?.[0]||a.target;return b?.nodeType===1&&(cb.includes(b.nodeName)||b.hasAttribute("contenteditable")||!!b.closest(".nokey"))}(b.nativeEvent)&&!r){if(bz.includes(b.key)&&C)dJ({id:a,store:F,unselect:"Escape"===b.key,nodeRef:H});else if(B&&w.selected&&Object.prototype.hasOwnProperty.call(dT,b.key)){b.preventDefault();let{ariaLabelConfig:a}=F.getState();F.setState({ariaLiveMessage:a["node.a11yDescription.ariaLiveMessage"]({direction:b.key.replace("Arrow","").toLowerCase(),x:~~x.positionAbsolute.x,y:~~x.positionAbsolute.y})}),J({direction:dT[b.key],factor:b.shiftKey?4:1})}}}:void 0,tabIndex:E?0:void 0,onFocus:E?()=>{if(r||!H.current?.matches(":focus-visible"))return;let{transform:b,width:c,height:d,autoPanOnNodeFocus:e,setCenter:f}=F.getState();e&&(bH(new Map([[a,w]]),{x:0,y:0,width:c,height:d},b,!0).length>0||f(w.position.x+K.width/2,w.position.y+K.height/2,{zoom:b[2]}))}:void 0,role:w.ariaRole??(E?"group":void 0),"aria-roledescription":"node","aria-describedby":r?void 0:`${c$}-${s}`,"aria-label":w.ariaLabel,...w.domAttributes,children:(0,m.jsx)(dN,{value:a,children:(0,m.jsx)(A,{id:a,data:w.data,type:z,positionAbsoluteX:x.positionAbsolute.x,positionAbsoluteY:x.positionAbsolute.y,selected:w.selected??!1,selectable:C,draggable:B,deletable:w.deletable??!0,isConnectable:D,sourcePosition:w.sourcePosition,targetPosition:w.targetPosition,dragging:I,dragHandle:w.dragHandle,zIndex:x.z,parentId:w.parentId,...K})})})});let d1=a=>({nodesConnectable:a.nodesConnectable,nodesFocusable:a.nodesFocusable,elementsSelectable:a.elementsSelectable,onError:a.onError});function d2(a){var b;let{nodesConnectable:c,nodesFocusable:d,elementsSelectable:e,onError:f}=cW(d1,cR),g=(b=a.onlyRenderVisibleElements,cW((0,n.useCallback)(a=>b?bH(a.nodeLookup,{x:0,y:0,width:a.width,height:a.height},a.transform,!0).map(a=>a.id):Array.from(a.nodeLookup.keys()),[b]),cR)),h=function(){let a=cW(d_),[b]=(0,n.useState)(()=>"undefined"==typeof ResizeObserver?null:new ResizeObserver(b=>{let c=new Map;b.forEach(a=>{let b=a.target.getAttribute("data-id");c.set(b,{id:b,nodeElement:a.target,force:!0})}),a(c)}));return b}();return(0,m.jsx)("div",{className:"react-flow__nodes",style:dB,children:g.map(b=>(0,m.jsx)(d0,{id:b,nodeTypes:a.nodeTypes,nodeExtent:a.nodeExtent,onClick:a.onNodeClick,onMouseEnter:a.onNodeMouseEnter,onMouseMove:a.onNodeMouseMove,onMouseLeave:a.onNodeMouseLeave,onContextMenu:a.onNodeContextMenu,onDoubleClick:a.onNodeDoubleClick,noDragClassName:a.noDragClassName,noPanClassName:a.noPanClassName,rfId:a.rfId,disableKeyboardA11y:a.disableKeyboardA11y,resizeObserver:h,nodesDraggable:a.nodesDraggable??!0,nodesConnectable:c,nodesFocusable:d,elementsSelectable:e,nodeClickDistance:a.nodeClickDistance,onError:f},b))})}d2.displayName="NodeRenderer";let d3=(0,n.memo)(d2),d4={[i.Arrow]:({color:a="none",strokeWidth:b=1})=>{let c={strokeWidth:b,...a&&{stroke:a}};return(0,m.jsx)("polyline",{className:"arrow",style:c,strokeLinecap:"round",fill:"none",strokeLinejoin:"round",points:"-5,-4 0,0 -5,4"})},[i.ArrowClosed]:({color:a="none",strokeWidth:b=1})=>{let c={strokeWidth:b,...a&&{stroke:a,fill:a}};return(0,m.jsx)("polyline",{className:"arrowclosed",style:c,strokeLinecap:"round",strokeLinejoin:"round",points:"-5,-4 0,0 -5,4 -5,-4"})}},d5=({id:a,type:b,color:c,width:d=12.5,height:e=12.5,markerUnits:f="strokeWidth",strokeWidth:g,orient:h="auto-start-reverse"})=>{let i=function(a){let b=cX();return(0,n.useMemo)(()=>Object.prototype.hasOwnProperty.call(d4,a)?d4[a]:(b.getState().onError?.("009",bx.error009(a)),null),[a])}(b);return i?(0,m.jsx)("marker",{className:"react-flow__arrowhead",id:a,markerWidth:`${d}`,markerHeight:`${e}`,viewBox:"-10 -10 20 20",markerUnits:f,orient:h,refX:"0",refY:"0",children:(0,m.jsx)(i,{color:c,strokeWidth:g})}):null},d6=({defaultColor:a,rfId:b})=>{let c=cW(a=>a.edges),d=cW(a=>a.defaultEdgeOptions),e=(0,n.useMemo)(()=>(function(a,{id:b,defaultColor:c,defaultMarkerStart:d,defaultMarkerEnd:e}){let f=new Set;return a.reduce((a,g)=>([g.markerStart||d,g.markerEnd||e].forEach(d=>{if(d&&"object"==typeof d){let e=ct(d,b);f.has(e)||(a.push({id:e,color:d.color||c,...d}),f.add(e))}}),a),[]).sort((a,b)=>a.id.localeCompare(b.id))})(c,{id:b,defaultColor:a,defaultMarkerStart:d?.markerStart,defaultMarkerEnd:d?.markerEnd}),[c,d,b,a]);return e.length?(0,m.jsx)("svg",{className:"react-flow__marker","aria-hidden":"true",children:(0,m.jsx)("defs",{children:e.map(a=>(0,m.jsx)(d5,{id:a.id,type:a.type,color:a.color,width:a.width,height:a.height,markerUnits:a.markerUnits,strokeWidth:a.strokeWidth,orient:a.orient},a.id))})}):null};d6.displayName="MarkerDefinitions";var d7=(0,n.memo)(d6);function d8({x:a,y:b,label:c,labelStyle:d,labelShowBg:e=!0,labelBgStyle:f,labelBgPadding:g=[2,4],labelBgBorderRadius:h=2,children:i,className:j,...k}){let[l,p]=(0,n.useState)({x:1,y:0,width:0,height:0}),q=o(["react-flow__edge-textwrapper",j]),r=(0,n.useRef)(null);return c?(0,m.jsxs)("g",{transform:`translate(${a-l.width/2} ${b-l.height/2})`,className:q,visibility:l.width?"visible":"hidden",...k,children:[e&&(0,m.jsx)("rect",{width:l.width+2*g[0],x:-g[0],y:-g[1],height:l.height+2*g[1],className:"react-flow__edge-textbg",style:f,rx:h,ry:h}),(0,m.jsx)("text",{className:"react-flow__edge-text",y:l.height/2,dy:"0.3em",ref:r,style:d,children:c}),i]}):null}d8.displayName="EdgeText";let d9=(0,n.memo)(d8);function ea({path:a,labelX:b,labelY:c,label:d,labelStyle:e,labelShowBg:f,labelBgStyle:g,labelBgPadding:h,labelBgBorderRadius:i,interactionWidth:j=20,...k}){return(0,m.jsxs)(m.Fragment,{children:[(0,m.jsx)("path",{...k,d:a,fill:"none",className:o(["react-flow__edge-path",k.className])}),j?(0,m.jsx)("path",{d:a,fill:"none",strokeOpacity:0,strokeWidth:j,className:"react-flow__edge-interaction"}):null,d&&bY(b)&&bY(c)?(0,m.jsx)(d9,{x:b,y:c,label:d,labelStyle:e,labelShowBg:f,labelBgStyle:g,labelBgPadding:h,labelBgBorderRadius:i}):null]})}function eb({pos:a,x1:b,y1:c,x2:d,y2:e}){return a===j.Left||a===j.Right?[.5*(b+d),c]:[b,.5*(c+e)]}function ec({sourceX:a,sourceY:b,sourcePosition:c=j.Bottom,targetX:d,targetY:e,targetPosition:f=j.Top}){let[g,h]=eb({pos:c,x1:a,y1:b,x2:d,y2:e}),[i,k]=eb({pos:f,x1:d,y1:e,x2:a,y2:b}),[l,m,n,o]=ce({sourceX:a,sourceY:b,targetX:d,targetY:e,sourceControlX:g,sourceControlY:h,targetControlX:i,targetControlY:k});return[`M${a},${b} C${g},${h} ${i},${k} ${d},${e}`,l,m,n,o]}function ed(a){return(0,n.memo)(({id:b,sourceX:c,sourceY:d,targetX:e,targetY:f,sourcePosition:g,targetPosition:h,label:i,labelStyle:j,labelShowBg:k,labelBgStyle:l,labelBgPadding:n,labelBgBorderRadius:o,style:p,markerEnd:q,markerStart:r,interactionWidth:s})=>{let[t,u,v]=ec({sourceX:c,sourceY:d,sourcePosition:g,targetX:e,targetY:f,targetPosition:h}),w=a.isInternal?void 0:b;return(0,m.jsx)(ea,{id:w,path:t,labelX:u,labelY:v,label:i,labelStyle:j,labelShowBg:k,labelBgStyle:l,labelBgPadding:n,labelBgBorderRadius:o,style:p,markerEnd:q,markerStart:r,interactionWidth:s})})}let ee=ed({isInternal:!1}),ef=ed({isInternal:!0});function eg(a){return(0,n.memo)(({id:b,sourceX:c,sourceY:d,targetX:e,targetY:f,label:g,labelStyle:h,labelShowBg:i,labelBgStyle:k,labelBgPadding:l,labelBgBorderRadius:n,style:o,sourcePosition:p=j.Bottom,targetPosition:q=j.Top,markerEnd:r,markerStart:s,pathOptions:t,interactionWidth:u})=>{let[v,w,x]=co({sourceX:c,sourceY:d,sourcePosition:p,targetX:e,targetY:f,targetPosition:q,borderRadius:t?.borderRadius,offset:t?.offset,stepPosition:t?.stepPosition}),y=a.isInternal?void 0:b;return(0,m.jsx)(ea,{id:y,path:v,labelX:w,labelY:x,label:g,labelStyle:h,labelShowBg:i,labelBgStyle:k,labelBgPadding:l,labelBgBorderRadius:n,style:o,markerEnd:r,markerStart:s,interactionWidth:u})})}ee.displayName="SimpleBezierEdge",ef.displayName="SimpleBezierEdgeInternal";let eh=eg({isInternal:!1}),ei=eg({isInternal:!0});function ej(a){return(0,n.memo)(({id:b,...c})=>{let d=a.isInternal?void 0:b;return(0,m.jsx)(eh,{...c,id:d,pathOptions:(0,n.useMemo)(()=>({borderRadius:0,offset:c.pathOptions?.offset}),[c.pathOptions?.offset])})})}eh.displayName="SmoothStepEdge",ei.displayName="SmoothStepEdgeInternal";let ek=ej({isInternal:!1}),el=ej({isInternal:!0});function em(a){return(0,n.memo)(({id:b,sourceX:c,sourceY:d,targetX:e,targetY:f,label:g,labelStyle:h,labelShowBg:i,labelBgStyle:j,labelBgPadding:k,labelBgBorderRadius:l,style:n,markerEnd:o,markerStart:p,interactionWidth:q})=>{let[r,s,t]=ck({sourceX:c,sourceY:d,targetX:e,targetY:f}),u=a.isInternal?void 0:b;return(0,m.jsx)(ea,{id:u,path:r,labelX:s,labelY:t,label:g,labelStyle:h,labelShowBg:i,labelBgStyle:j,labelBgPadding:k,labelBgBorderRadius:l,style:n,markerEnd:o,markerStart:p,interactionWidth:q})})}ek.displayName="StepEdge",el.displayName="StepEdgeInternal";let en=em({isInternal:!1}),eo=em({isInternal:!0});function ep(a){return(0,n.memo)(({id:b,sourceX:c,sourceY:d,targetX:e,targetY:f,sourcePosition:g=j.Bottom,targetPosition:h=j.Top,label:i,labelStyle:k,labelShowBg:l,labelBgStyle:n,labelBgPadding:o,labelBgBorderRadius:p,style:q,markerEnd:r,markerStart:s,pathOptions:t,interactionWidth:u})=>{let[v,w,x]=ch({sourceX:c,sourceY:d,sourcePosition:g,targetX:e,targetY:f,targetPosition:h,curvature:t?.curvature}),y=a.isInternal?void 0:b;return(0,m.jsx)(ea,{id:y,path:v,labelX:w,labelY:x,label:i,labelStyle:k,labelShowBg:l,labelBgStyle:n,labelBgPadding:o,labelBgBorderRadius:p,style:q,markerEnd:r,markerStart:s,interactionWidth:u})})}en.displayName="StraightEdge",eo.displayName="StraightEdgeInternal";let eq=ep({isInternal:!1}),er=ep({isInternal:!0});eq.displayName="BezierEdge",er.displayName="BezierEdgeInternal";let es={default:er,straight:eo,step:el,smoothstep:ei,simplebezier:ef},et={sourceX:null,sourceY:null,targetX:null,targetY:null,sourcePosition:null,targetPosition:null,zIndex:void 0},eu="react-flow__edgeupdater";function ev({position:a,centerX:b,centerY:c,radius:d=10,onMouseDown:e,onMouseEnter:f,onMouseOut:g,type:h}){return(0,m.jsx)("circle",{onMouseDown:e,onMouseEnter:f,onMouseOut:g,className:o([eu,`${eu}-${h}`]),cx:a===j.Left?b-d:a===j.Right?b+d:b,cy:a===j.Top?c-d:a===j.Bottom?c+d:c,r:d,stroke:"transparent",fill:"transparent"})}function ew({isReconnectable:a,reconnectRadius:b,edge:c,sourceX:d,sourceY:e,targetX:f,targetY:g,sourcePosition:h,targetPosition:i,onReconnect:j,onReconnectStart:k,onReconnectEnd:l,setReconnecting:n,setUpdateHover:o}){let p=cX(),q=(a,b)=>{if(0!==a.button)return;let{autoPanOnConnect:d,domNode:e,connectionMode:f,connectionRadius:g,lib:h,onConnectStart:i,cancelConnection:m,nodeLookup:o,rfId:q,panBy:r,updateConnection:s}=p.getState(),t="target"===b.type;cJ.onPointerDown(a.nativeEvent,{autoPanOnConnect:d,connectionMode:f,connectionRadius:g,domNode:e,handleId:b.id,nodeId:b.nodeId,nodeLookup:o,isTarget:t,edgeUpdaterType:b.type,lib:h,flowId:q,cancelConnection:m,panBy:r,isValidConnection:(...a)=>p.getState().isValidConnection?.(...a)??!0,onConnect:a=>j?.(c,a),onConnectStart:(d,e)=>{n(!0),k?.(a,c,b.type),i?.(d,e)},onConnectEnd:(...a)=>p.getState().onConnectEnd?.(...a),onReconnectEnd:(a,d)=>{n(!1),l?.(a,c,b.type,d)},updateConnection:s,getTransform:()=>p.getState().transform,getFromHandle:()=>p.getState().connection.fromHandle,dragThreshold:p.getState().connectionDragThreshold,handleDomNode:a.currentTarget})},r=()=>o(!0),s=()=>o(!1);return(0,m.jsxs)(m.Fragment,{children:[(!0===a||"source"===a)&&(0,m.jsx)(ev,{position:h,centerX:d,centerY:e,radius:b,onMouseDown:a=>q(a,{nodeId:c.target,id:c.targetHandle??null,type:"target"}),onMouseEnter:r,onMouseOut:s,type:"source"}),(!0===a||"target"===a)&&(0,m.jsx)(ev,{position:i,centerX:f,centerY:g,radius:b,onMouseDown:a=>q(a,{nodeId:c.source,id:c.sourceHandle??null,type:"source"}),onMouseEnter:r,onMouseOut:s,type:"target"})]})}var ex=(0,n.memo)(function({id:a,edgesFocusable:b,edgesReconnectable:c,elementsSelectable:d,onClick:f,onDoubleClick:g,onContextMenu:h,onMouseEnter:i,onMouseMove:k,onMouseLeave:l,reconnectRadius:p,onReconnect:q,onReconnectStart:r,onReconnectEnd:s,rfId:t,edgeTypes:u,noPanClassName:v,onError:w,disableKeyboardA11y:x}){let y=cW(b=>b.edgeLookup.get(a)),z=cW(a=>a.defaultEdgeOptions),A=(y=z?{...z,...y}:y).type||"default",B=u?.[A]||es[A];void 0===B&&(w?.("011",bx.error011(A)),A="default",B=u?.default||es.default);let C=!!(y.focusable||b&&void 0===y.focusable),D=void 0!==q&&(y.reconnectable||c&&void 0===y.reconnectable),E=!!(y.selectable||d&&void 0===y.selectable),F=(0,n.useRef)(null),[G,H]=(0,n.useState)(!1),[I,J]=(0,n.useState)(!1),K=cX(),{zIndex:L=y.zIndex,sourceX:M,sourceY:N,targetX:O,targetY:P,sourcePosition:Q,targetPosition:R}=cW((0,n.useCallback)(b=>{let c=b.nodeLookup.get(y.source),d=b.nodeLookup.get(y.target);if(!c||!d)return et;let f=function(a){let{sourceNode:b,targetNode:c}=a;if(!cp(b)||!cp(c))return null;let d=b.internals.handleBounds||cq(b.handles),f=c.internals.handleBounds||cq(c.handles),g=cs(d?.source??[],a.sourceHandle),h=cs(a.connectionMode===e.Strict?f?.target??[]:(f?.target??[]).concat(f?.source??[]),a.targetHandle);if(!g||!h)return a.onError?.("008",bx.error008(!g?"source":"target",{id:a.id,sourceHandle:a.sourceHandle,targetHandle:a.targetHandle})),null;let i=g?.position||j.Bottom,k=h?.position||j.Top,l=cr(b,g,i),m=cr(c,h,k);return{sourceX:l.x,sourceY:l.y,targetX:m.x,targetY:m.y,sourcePosition:i,targetPosition:k}}({id:a,sourceNode:c,targetNode:d,sourceHandle:y.sourceHandle||null,targetHandle:y.targetHandle||null,connectionMode:b.connectionMode,onError:w}),g=function({sourceNode:a,targetNode:b,selected:c=!1,zIndex:d=0,elevateOnSelect:e=!1,zIndexMode:f="basic"}){if("manual"===f)return d;let g=Math.max(a.parentId||e&&a.selected?a.internals.z:0,b.parentId||e&&b.selected?b.internals.z:0);return(e&&c?d+1e3:d)+g}({selected:y.selected,zIndex:y.zIndex,sourceNode:c,targetNode:d,elevateOnSelect:b.elevateEdgesOnSelect,zIndexMode:b.zIndexMode});return{...f||et,zIndex:g}},[y.source,y.target,y.sourceHandle,y.targetHandle,y.selected,y.zIndex,w]),cR),S=(0,n.useMemo)(()=>y.markerStart?`url('#${ct(y.markerStart,t)}')`:void 0,[y.markerStart,t]),T=(0,n.useMemo)(()=>y.markerEnd?`url('#${ct(y.markerEnd,t)}')`:void 0,[y.markerEnd,t]);if(y.hidden||null===M||null===N||null===O||null===P)return null;let U=g?a=>{g(a,{...y})}:void 0,V=h?a=>{h(a,{...y})}:void 0,W=i?a=>{i(a,{...y})}:void 0,X=k?a=>{k(a,{...y})}:void 0,Y=l?a=>{l(a,{...y})}:void 0;return(0,m.jsx)("svg",{style:{zIndex:L},children:(0,m.jsxs)("g",{className:o(["react-flow__edge",`react-flow__edge-${A}`,y.className,v,{selected:y.selected,animated:y.animated,inactive:!E&&!f,updating:G,selectable:E}]),onClick:b=>{let{addSelectedEdges:c,unselectNodesAndEdges:d,multiSelectionActive:e}=K.getState();E&&(K.setState({nodesSelectionActive:!1}),y.selected&&e?(d({nodes:[],edges:[y]}),F.current?.blur()):c([a])),f&&f(b,y)},onDoubleClick:U,onContextMenu:V,onMouseEnter:W,onMouseMove:X,onMouseLeave:Y,onKeyDown:C?b=>{if(!x&&bz.includes(b.key)&&E){let{unselectNodesAndEdges:c,addSelectedEdges:d}=K.getState();"Escape"===b.key?(F.current?.blur(),c({edges:[y]})):d([a])}}:void 0,tabIndex:C?0:void 0,role:y.ariaRole??(C?"group":"img"),"aria-roledescription":"edge","data-id":a,"data-testid":`rf__edge-${a}`,"aria-label":null===y.ariaLabel?void 0:y.ariaLabel||`Edge from ${y.source} to ${y.target}`,"aria-describedby":C?`${c_}-${t}`:void 0,ref:F,...y.domAttributes,children:[!I&&(0,m.jsx)(B,{id:a,source:y.source,target:y.target,type:y.type,selected:y.selected,animated:y.animated,selectable:E,deletable:y.deletable??!0,label:y.label,labelStyle:y.labelStyle,labelShowBg:y.labelShowBg,labelBgStyle:y.labelBgStyle,labelBgPadding:y.labelBgPadding,labelBgBorderRadius:y.labelBgBorderRadius,sourceX:M,sourceY:N,targetX:O,targetY:P,sourcePosition:Q,targetPosition:R,data:y.data,style:y.style,sourceHandleId:y.sourceHandle,targetHandleId:y.targetHandle,markerStart:S,markerEnd:T,pathOptions:"pathOptions"in y?y.pathOptions:void 0,interactionWidth:y.interactionWidth}),D&&(0,m.jsx)(ew,{edge:y,isReconnectable:D,reconnectRadius:p,onReconnect:q,onReconnectStart:r,onReconnectEnd:s,sourceX:M,sourceY:N,targetX:O,targetY:P,sourcePosition:Q,targetPosition:R,setUpdateHover:H,setReconnecting:J})]})})});let ey=a=>({edgesFocusable:a.edgesFocusable,edgesReconnectable:a.edgesReconnectable,elementsSelectable:a.elementsSelectable,connectionMode:a.connectionMode,onError:a.onError});function ez({defaultMarkerColor:a,onlyRenderVisibleElements:b,rfId:c,edgeTypes:d,noPanClassName:e,onReconnect:f,onEdgeContextMenu:g,onEdgeMouseEnter:h,onEdgeMouseMove:i,onEdgeMouseLeave:j,onEdgeClick:k,reconnectRadius:l,onEdgeDoubleClick:o,onReconnectStart:p,onReconnectEnd:q,disableKeyboardA11y:r}){let{edgesFocusable:s,edgesReconnectable:t,elementsSelectable:u,onError:v}=cW(ey,cR),w=cW((0,n.useCallback)(a=>{if(!b)return a.edges.map(a=>a.id);let c=[];if(a.width&&a.height)for(let b of a.edges){let d=a.nodeLookup.get(b.source),e=a.nodeLookup.get(b.target);d&&e&&function({sourceNode:a,targetNode:b,width:c,height:d,transform:e}){let f=bP(bT(a),bT(b));return f.x===f.x2&&(f.x2+=1),f.y===f.y2&&(f.y2+=1),bW({x:-e[0]/e[2],y:-e[1]/e[2],width:c/e[2],height:d/e[2]},bR(f))>0}({sourceNode:d,targetNode:e,width:a.width,height:a.height,transform:a.transform})&&c.push(b.id)}return c},[b]),cR);return(0,m.jsxs)("div",{className:"react-flow__edges",children:[(0,m.jsx)(d7,{defaultColor:a,rfId:c}),w.map(a=>(0,m.jsx)(ex,{id:a,edgesFocusable:s,edgesReconnectable:t,elementsSelectable:u,noPanClassName:e,onReconnect:f,onContextMenu:g,onMouseEnter:h,onMouseMove:i,onMouseLeave:j,onClick:k,reconnectRadius:l,onDoubleClick:o,onReconnectStart:p,onReconnectEnd:q,rfId:c,onError:v,edgeTypes:d,disableKeyboardA11y:r},a))]})}ez.displayName="EdgeRenderer";let eA=(0,n.memo)(ez),eB=a=>`translate(${a[0]}px,${a[1]}px) scale(${a[2]})`;function eC({children:a}){let b=cX(),c=(0,n.useRef)(null),[d]=(0,n.useState)(()=>b.getState().transform);return du(()=>{let a=null,d=()=>{let d=b.getState().transform;(!a||d[0]!==a[0]||d[1]!==a[1]||d[2]!==a[2])&&(a=d,c.current&&(c.current.style.transform=eB(d)))};return d(),b.subscribe(d)},[b]),(0,m.jsx)("div",{ref:c,className:"react-flow__viewport xyflow__viewport react-flow__container",style:{transform:eB(d)},children:a})}let eD=a=>a.panZoom?.syncViewport;function eE(a){return a.connection.inProgress?{...a.connection,to:b_(a.connection.to,a.transform)}:{...a.connection}}let eF=a=>({nodesConnectable:a.nodesConnectable,isValid:a.connection.isValid,inProgress:a.connection.inProgress,width:a.width,height:a.height});function eG({containerStyle:a,style:b,type:c,component:d}){let{nodesConnectable:e,width:f,height:g,isValid:h,inProgress:i}=cW(eF,cR);return f&&e&&i?(0,m.jsx)("svg",{style:a,width:f,height:g,className:"react-flow__connectionline react-flow__container",children:(0,m.jsx)("g",{className:o(["react-flow__connection",b8(h)]),children:(0,m.jsx)(eH,{style:b,type:c,CustomComponent:d,isValid:h})})}):null}let eH=({style:a,type:b=h.Bezier,CustomComponent:c,isValid:d})=>{let{inProgress:e,from:f,fromNode:g,fromHandle:i,fromPosition:j,to:k,toNode:l,toHandle:n,toPosition:o,pointer:p}=function(a){return cW(eE,cR)}();if(!e)return;if(c)return(0,m.jsx)(c,{connectionLineType:b,connectionLineStyle:a,fromNode:g,fromHandle:i,fromX:f.x,fromY:f.y,toX:k.x,toY:k.y,fromPosition:j,toPosition:o,connectionStatus:b8(d),toNode:l,toHandle:n,pointer:p});let q="",r={sourceX:f.x,sourceY:f.y,sourcePosition:j,targetX:k.x,targetY:k.y,targetPosition:o};switch(b){case h.Bezier:[q]=ch(r);break;case h.SimpleBezier:[q]=ec(r);break;case h.Step:[q]=co({...r,borderRadius:0});break;case h.SmoothStep:[q]=co(r);break;default:[q]=ck(r)}return(0,m.jsx)("path",{d:q,fill:"none",className:"react-flow__connection-path",style:a})};eH.displayName="ConnectionLine";let eI={};function eJ(a=eI){(0,n.useRef)(a),cX()}function eK({nodeTypes:a,edgeTypes:b,onInit:c,onNodeClick:d,onEdgeClick:e,onNodeDoubleClick:f,onEdgeDoubleClick:g,onNodeMouseEnter:h,onNodeMouseMove:i,onNodeMouseLeave:j,onNodeContextMenu:k,onSelectionContextMenu:l,onSelectionStart:o,onSelectionEnd:p,connectionLineType:q,connectionLineStyle:r,connectionLineComponent:s,connectionLineContainerStyle:t,selectionKeyCode:u,selectionOnDrag:v,selectionMode:w,multiSelectionKeyCode:x,panActivationKeyCode:y,zoomActivationKeyCode:z,deleteKeyCode:A,onlyRenderVisibleElements:B,elementsSelectable:C,defaultViewport:D,translateExtent:E,minZoom:F,maxZoom:G,preventScrolling:H,defaultMarkerColor:I,zoomOnScroll:J,zoomOnPinch:K,panOnScroll:L,panOnScrollSpeed:M,panOnScrollMode:N,zoomOnDoubleClick:O,panOnDrag:P,autoPanOnSelection:Q,onPaneClick:R,onPaneMouseEnter:S,onPaneMouseMove:T,onPaneMouseLeave:U,onPaneScroll:V,onPaneContextMenu:W,paneClickDistance:X,nodeClickDistance:Y,onEdgeContextMenu:Z,onEdgeMouseEnter:$,onEdgeMouseMove:_,onEdgeMouseLeave:aa,reconnectRadius:ab,onReconnect:ac,onReconnectStart:ad,onReconnectEnd:ae,noDragClassName:af,noWheelClassName:ag,noPanClassName:ah,disableKeyboardA11y:ai,nodeExtent:aj,rfId:ak,viewport:al,onViewportChange:am,nodesDraggable:an}){return eJ(a),eJ(b),cX(),(0,n.useRef)(!1),dz(),(0,n.useRef)(!1),cW(eD),cX(),(0,m.jsx)(d$,{onPaneClick:R,onPaneMouseEnter:S,onPaneMouseMove:T,onPaneMouseLeave:U,onPaneContextMenu:W,onPaneScroll:V,paneClickDistance:X,deleteKeyCode:A,selectionKeyCode:u,selectionOnDrag:v,selectionMode:w,onSelectionStart:o,onSelectionEnd:p,multiSelectionKeyCode:x,panActivationKeyCode:y,zoomActivationKeyCode:z,elementsSelectable:C,zoomOnScroll:J,zoomOnPinch:K,zoomOnDoubleClick:O,panOnScroll:L,panOnScrollSpeed:M,panOnScrollMode:N,panOnDrag:P,autoPanOnSelection:Q,defaultViewport:D,translateExtent:E,minZoom:F,maxZoom:G,onSelectionContextMenu:l,preventScrolling:H,noDragClassName:af,noWheelClassName:ag,noPanClassName:ah,disableKeyboardA11y:ai,onViewportChange:am,isControlledViewport:!!al,children:(0,m.jsxs)(eC,{children:[(0,m.jsx)(eA,{edgeTypes:b,onEdgeClick:e,onEdgeDoubleClick:g,onReconnect:ac,onReconnectStart:ad,onReconnectEnd:ae,onlyRenderVisibleElements:B,onEdgeContextMenu:Z,onEdgeMouseEnter:$,onEdgeMouseMove:_,onEdgeMouseLeave:aa,reconnectRadius:ab,defaultMarkerColor:I,noPanClassName:ah,disableKeyboardA11y:ai,rfId:ak}),(0,m.jsx)(eG,{style:r,type:q,component:s,containerStyle:t}),(0,m.jsx)("div",{className:"react-flow__edgelabel-renderer"}),(0,m.jsx)(d3,{nodeTypes:a,onNodeClick:d,onNodeDoubleClick:f,onNodeMouseEnter:h,onNodeMouseMove:i,onNodeMouseLeave:j,onNodeContextMenu:k,nodeClickDistance:Y,onlyRenderVisibleElements:B,noPanClassName:ah,noDragClassName:af,disableKeyboardA11y:ai,nodeExtent:aj,rfId:ak,nodesDraggable:an}),(0,m.jsx)("div",{className:"react-flow__viewport-portal"})]})})}eK.displayName="GraphView";let eL=(0,n.memo)(eK),eM=bZ("React Flow","https://reactflow.dev/"),eN=({nodes:a,edges:b,defaultNodes:c,defaultEdges:d,width:f,height:g,fitView:h,fitViewOptions:i,minZoom:j=.5,maxZoom:k=2,nodeOrigin:l,nodeExtent:m,zIndexMode:n="basic"}={})=>{let o=new Map,p=new Map,q=new Map,r=new Map,s=d??b??[],t=c??a??[],u=l??[0,0],v=m??by;cE(q,r,s);let{nodesInitialized:w}=cy(t,o,p,{nodeOrigin:u,nodeExtent:v,zIndexMode:n}),x=[0,0,1];if(h&&f&&g){let{x:a,y:b,zoom:c}=b2(bG(o,{filter:a=>!!((a.width||a.initialWidth)&&(a.height||a.initialHeight))}),f,g,j,k,i?.padding??.1);x=[a,b,c]}return{rfId:"1",width:f??0,height:g??0,transform:x,nodes:t,nodesInitialized:w,nodeLookup:o,parentLookup:p,edges:s,edgeLookup:r,connectionLookup:q,onNodesChange:null,onEdgesChange:null,hasDefaultNodes:void 0!==c,hasDefaultEdges:void 0!==d,panZoom:null,minZoom:j,maxZoom:k,translateExtent:by,nodeExtent:v,nodesSelectionActive:!1,userSelectionActive:!1,userSelectionRect:null,connectionMode:e.Strict,domNode:null,paneDragging:!1,noPanClassName:"nopan",nodeOrigin:u,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:h??!1,fitViewOptions:i,fitViewResolver:null,connection:{...bB},connectionClickStartHandle:null,connectOnClick:!0,ariaLiveMessage:"",autoPanOnConnect:!0,autoPanOnNodeDrag:!0,autoPanOnNodeFocus:!0,autoPanSpeed:15,connectionRadius:20,onError:eM,isValidConnection:void 0,onSelectionChangeHandlers:[],lib:"react",debug:!1,ariaLabelConfig:bA,zIndexMode:n,defaultEdgeOptions:void 0,onNodesChangeMiddlewareMap:new Map,onEdgesChangeMiddlewareMap:new Map,onNodesDelete:void 0,onEdgesDelete:void 0,onDelete:void 0,onBeforeDelete:void 0,onViewportChangeStart:void 0,onViewportChange:void 0,onViewportChangeEnd:void 0,onNodeDragStart:void 0,onNodeDrag:void 0,onNodeDragStop:void 0,onSelectionDragStart:void 0,onSelectionDrag:void 0,onSelectionDragStop:void 0,onMoveStart:void 0,onMove:void 0,onMoveEnd:void 0,onConnect:void 0,onConnectStart:void 0,onConnectEnd:void 0,onClickConnectStart:void 0,onClickConnectEnd:void 0}};function eO({initialNodes:a,initialEdges:b,defaultNodes:c,defaultEdges:d,initialWidth:e,initialHeight:f,initialMinZoom:g,initialMaxZoom:h,initialFitViewOptions:i,fitView:k,nodeOrigin:l,nodeExtent:o,zIndexMode:p,children:q}){let[r]=(0,n.useState)(()=>(({nodes:a,edges:b,defaultNodes:c,defaultEdges:d,width:e,height:f,fitView:g,fitViewOptions:h,minZoom:i,maxZoom:k,nodeOrigin:l,nodeExtent:m,zIndexMode:n})=>{let o,p;return o=(o,p)=>{async function q(){let{nodeLookup:a,panZoom:b,fitViewOptions:c,fitViewResolver:d,width:e,height:f,minZoom:g,maxZoom:h}=p();b&&(await bI({nodes:a,width:e,height:f,panZoom:b,minZoom:g,maxZoom:h},c),d?.resolve(!0),o({fitViewResolver:null}))}return{...eN({nodes:a,edges:b,width:e,height:f,fitView:g,fitViewOptions:h,minZoom:i,maxZoom:k,nodeOrigin:l,nodeExtent:m,defaultNodes:c,defaultEdges:d,zIndexMode:n}),setNodes:a=>{let{nodeLookup:b,parentLookup:c,nodeOrigin:d,nodeExtent:e,elevateNodesOnSelect:f,fitViewQueued:g,zIndexMode:h,nodesSelectionActive:i}=p(),{nodesInitialized:j,hasSelectedNodes:k}=cy(a,b,c,{nodeOrigin:d,nodeExtent:e,elevateNodesOnSelect:f,checkEquality:!0,zIndexMode:h}),l=i&&k;g&&j?(q(),o({nodes:a,nodesInitialized:j,fitViewQueued:!1,fitViewOptions:void 0,nodesSelectionActive:l})):o({nodes:a,nodesInitialized:j,nodesSelectionActive:l})},setEdges:a=>{let{connectionLookup:b,edgeLookup:c}=p();cE(b,c,a),o({edges:a})},setDefaultNodesAndEdges:(a,b)=>{if(a){let{setNodes:b}=p();b(a),o({hasDefaultNodes:!0})}if(b){let{setEdges:a}=p();a(b),o({hasDefaultEdges:!0})}},updateNodeInternals:a=>{let{triggerNodeChanges:b,nodeLookup:c,parentLookup:d,domNode:e,nodeOrigin:f,nodeExtent:g,debug:h,fitViewQueued:i,zIndexMode:j}=p(),{changes:k,updatedInternals:l}=function(a,b,c,d,e,f,g){let h=d?.querySelector(".xyflow__viewport"),i=!1;if(!h)return{changes:[],updatedInternals:i};let j=[],k=window.getComputedStyle(h),{m22:l}=new window.DOMMatrixReadOnly(k.transform),m=[];for(let d of a.values()){let a=b.get(d.id);if(!a)continue;if(a.hidden){b.set(a.id,{...a,internals:{...a.internals,handleBounds:void 0}}),i=!0;continue}let h=b9(d.nodeElement),k=a.measured.width!==h.width||a.measured.height!==h.height;if(h.width&&h.height&&(k||!a.internals.handleBounds||d.force)){let n=d.nodeElement.getBoundingClientRect(),o=b4(a.extent)?a.extent:f,{positionAbsolute:p}=a.internals;if(a.parentId&&"parent"===a.extent){let c=b.get(a.parentId);c&&(p=bM(p,h,c))}else o&&(p=bL(p,o,h));let q={...a,measured:h,internals:{...a.internals,positionAbsolute:p,handleBounds:{source:cd("source",d.nodeElement,n,l,a.id),target:cd("target",d.nodeElement,n,l,a.id)}}};b.set(a.id,q),a.parentId&&cz(q,b,c,{nodeOrigin:e,zIndexMode:g}),i=!0,k&&(j.push({id:a.id,type:"dimensions",dimensions:h}),a.expandParent&&a.parentId&&m.push({id:a.id,parentId:a.parentId,rect:bS(q,e)}))}}if(m.length>0){let a=cB(m,b,c,e);j.push(...a)}return{changes:j,updatedInternals:i}}(a,c,d,e,f,g,j);l&&(!function(a,b,c){let d=cw(cu,c);for(let c of a.values())if(c.parentId)cz(c,a,b,d);else{let a=bL(bF(c,d.nodeOrigin),b4(c.extent)?c.extent:d.nodeExtent,b5(c));c.internals.positionAbsolute=a}}(c,d,{nodeOrigin:f,nodeExtent:g,zIndexMode:j}),i?(q(),o({fitViewQueued:!1,fitViewOptions:void 0})):o({}),k?.length>0&&(h&&console.log("React Flow: trigger node changes",k),b?.(k)))},updateNodePositions:(a,b=!1)=>{let c=[],d=[],{nodeLookup:e,triggerNodeChanges:f,connection:g,updateConnection:h,onNodesChangeMiddlewareMap:i}=p();for(let[f,i]of a){let a=e.get(f),k=!!(a?.expandParent&&a?.parentId&&i?.position),l={id:f,type:"position",position:k?{x:Math.max(0,i.position.x),y:Math.max(0,i.position.y)}:i.position,dragging:b};if(a&&g.inProgress&&g.fromNode.id===a.id){let b=cr(a,g.fromHandle,j.Left,!0);h({...g,from:b})}k&&a.parentId&&c.push({id:f,parentId:a.parentId,rect:{...i.internals.positionAbsolute,width:i.measured.width??0,height:i.measured.height??0}}),d.push(l)}if(c.length>0){let{parentLookup:a,nodeOrigin:b}=p(),f=cB(c,e,a,b);d.push(...f)}for(let a of i.values())d=a(d);f(d)},triggerNodeChanges:a=>{let{onNodesChange:b,setNodes:c,nodes:d,hasDefaultNodes:e,debug:f}=p();a?.length&&(e&&c(dl(a,d)),f&&console.log("React Flow: trigger node changes",a),b?.(a))},triggerEdgeChanges:a=>{let{onEdgesChange:b,setEdges:c,edges:d,hasDefaultEdges:e,debug:f}=p();a?.length&&(e&&c(dl(a,d)),f&&console.log("React Flow: trigger edge changes",a),b?.(a))},addSelectedNodes:a=>{let{multiSelectionActive:b,edgeLookup:c,nodeLookup:d,triggerNodeChanges:e,triggerEdgeChanges:f}=p();if(b)return void e(a.map(a=>dm(a,!0)));e(dn(d,new Set([...a]),!0)),f(dn(c))},addSelectedEdges:a=>{let{multiSelectionActive:b,edgeLookup:c,nodeLookup:d,triggerNodeChanges:e,triggerEdgeChanges:f}=p();if(b)return void f(a.map(a=>dm(a,!0)));f(dn(c,new Set([...a]))),e(dn(d,new Set,!0))},unselectNodesAndEdges:({nodes:a,edges:b}={})=>{let{edges:c,nodes:d,nodeLookup:e,triggerNodeChanges:f,triggerEdgeChanges:g}=p(),h=[];for(let b of a||d){if(!b.selected)continue;let a=e.get(b.id);a&&(a.selected=!1),h.push(dm(b.id,!1))}let i=[];for(let a of b||c)a.selected&&i.push(dm(a.id,!1));f(h),g(i)},setMinZoom:a=>{let{panZoom:b,maxZoom:c}=p();b?.setScaleExtent([a,c]),o({minZoom:a})},setMaxZoom:a=>{let{panZoom:b,minZoom:c}=p();b?.setScaleExtent([c,a]),o({maxZoom:a})},setTranslateExtent:a=>{p().panZoom?.setTranslateExtent(a),o({translateExtent:a})},resetSelectedElements:()=>{let{edges:a,nodes:b,triggerNodeChanges:c,triggerEdgeChanges:d,elementsSelectable:e}=p();if(!e)return;let f=b.reduce((a,b)=>b.selected?[...a,dm(b.id,!1)]:a,[]),g=a.reduce((a,b)=>b.selected?[...a,dm(b.id,!1)]:a,[]);c(f),d(g)},setNodeExtent:a=>{let{nodes:b,nodeLookup:c,parentLookup:d,nodeOrigin:e,elevateNodesOnSelect:f,nodeExtent:g,zIndexMode:h}=p();(a[0][0]!==g[0][0]||a[0][1]!==g[0][1]||a[1][0]!==g[1][0]||a[1][1]!==g[1][1])&&(cy(b,c,d,{nodeOrigin:e,nodeExtent:a,elevateNodesOnSelect:f,checkEquality:!1,zIndexMode:h}),o({nodeExtent:a}))},panBy:a=>{let{transform:b,width:c,height:d,panZoom:e,translateExtent:f}=p();return cC({delta:a,panZoom:e,transform:b,translateExtent:f,width:c,height:d})},setCenter:async(a,b,c)=>{let{width:d,height:e,maxZoom:f,panZoom:g}=p();if(!g)return!1;let h=void 0!==c?.zoom?c.zoom:f;return await g.setViewport({x:d/2-a*h,y:e/2-b*h,zoom:h},{duration:c?.duration,ease:c?.ease,interpolate:c?.interpolate}),!0},cancelConnection:()=>{o({connection:{...bB}})},updateConnection:a=>{o({connection:a})},reset:()=>o({...eN()})}},p=Object.is,o?cQ(o,p):cQ})({nodes:a,edges:b,defaultNodes:c,defaultEdges:d,width:e,height:f,fitView:k,minZoom:g,maxZoom:h,fitViewOptions:i,nodeOrigin:l,nodeExtent:o,zIndexMode:p}));return(0,m.jsx)(cU,{value:r,children:(0,m.jsx)(dx,{children:(0,m.jsx)(dQ,{children:q})})})}function eP({children:a,nodes:b,edges:c,defaultNodes:d,defaultEdges:e,width:f,height:g,fitView:h,fitViewOptions:i,minZoom:j,maxZoom:k,nodeOrigin:l,nodeExtent:o,zIndexMode:p}){return(0,n.useContext)(cT)?(0,m.jsx)(m.Fragment,{children:a}):(0,m.jsx)(eO,{initialNodes:b,initialEdges:c,defaultNodes:d,defaultEdges:e,initialWidth:f,initialHeight:g,fitView:h,initialFitViewOptions:i,initialMinZoom:j,initialMaxZoom:k,nodeOrigin:l,nodeExtent:o,zIndexMode:p,children:a})}let eQ={width:"100%",height:"100%",overflow:"hidden",position:"relative",zIndex:0};var eR=dt(function({nodes:a,edges:b,defaultNodes:c,defaultEdges:d,className:e,nodeTypes:i,edgeTypes:j,onNodeClick:k,onEdgeClick:l,onInit:p,onMove:q,onMoveStart:r,onMoveEnd:s,onConnect:t,onConnectStart:u,onConnectEnd:v,onClickConnectStart:w,onClickConnectEnd:x,onNodeMouseEnter:y,onNodeMouseMove:z,onNodeMouseLeave:A,onNodeContextMenu:B,onNodeDoubleClick:C,onNodeDragStart:D,onNodeDrag:E,onNodeDragStop:F,onNodesDelete:G,onEdgesDelete:H,onDelete:I,onSelectionChange:J,onSelectionDragStart:K,onSelectionDrag:L,onSelectionDragStop:M,onSelectionContextMenu:N,onSelectionStart:O,onSelectionEnd:P,onBeforeDelete:Q,connectionMode:R,connectionLineType:S=h.Bezier,connectionLineStyle:T,connectionLineComponent:U,connectionLineContainerStyle:V,deleteKeyCode:W="Backspace",selectionKeyCode:X="Shift",selectionOnDrag:Y=!1,selectionMode:Z=g.Full,panActivationKeyCode:$="Space",multiSelectionKeyCode:_=b3()?"Meta":"Control",zoomActivationKeyCode:aa=b3()?"Meta":"Control",snapToGrid:ab,snapGrid:ac,onlyRenderVisibleElements:ad=!1,selectNodesOnDrag:ae,nodesDraggable:af,autoPanOnNodeFocus:ag,nodesConnectable:ah,nodesFocusable:ai,nodeOrigin:aj=dd,edgesFocusable:ak,edgesReconnectable:al,elementsSelectable:am=!0,defaultViewport:an=de,minZoom:ao=.5,maxZoom:ap=2,translateExtent:aq=by,preventScrolling:ar=!0,nodeExtent:as,defaultMarkerColor:at="#b1b1b7",zoomOnScroll:au=!0,zoomOnPinch:av=!0,panOnScroll:aw=!1,panOnScrollSpeed:ax=.5,panOnScrollMode:ay=f.Free,zoomOnDoubleClick:az=!0,panOnDrag:aA=!0,onPaneClick:aB,onPaneMouseEnter:aC,onPaneMouseMove:aD,onPaneMouseLeave:aE,onPaneScroll:aF,onPaneContextMenu:aG,paneClickDistance:aH=1,nodeClickDistance:aI=0,children:aJ,onReconnect:aK,onReconnectStart:aL,onReconnectEnd:aM,onEdgeContextMenu:aN,onEdgeDoubleClick:aO,onEdgeMouseEnter:aP,onEdgeMouseMove:aQ,onEdgeMouseLeave:aR,reconnectRadius:aS=10,onNodesChange:aT,onEdgesChange:aU,noDragClassName:aV="nodrag",noWheelClassName:aW="nowheel",noPanClassName:aX="nopan",fitView:aY,fitViewOptions:aZ,connectOnClick:a$,attributionPosition:a_,proOptions:a0,defaultEdgeOptions:a1,elevateNodesOnSelect:a2=!0,elevateEdgesOnSelect:a3=!1,disableKeyboardA11y:a4=!1,autoPanOnConnect:a5,autoPanOnNodeDrag:a6,autoPanOnSelection:a7=!0,autoPanSpeed:a8,connectionRadius:a9,isValidConnection:ba,onError:bb,style:bc,id:bd,nodeDragThreshold:be,connectionDragThreshold:bf,viewport:bg,onViewportChange:bh,width:bi,height:bj,colorMode:bk="light",debug:bl,onScroll:bm,ariaLabelConfig:bn,zIndexMode:bo="basic",...bp},bq){let br=bd||"1",bs=function(a){let[b,c]=(0,n.useState)("system"===a?null:a);return null!==b?b:"light"}(bk),bt=(0,n.useCallback)(a=>{a.currentTarget.scrollTo({top:0,left:0,behavior:"instant"}),bm?.(a)},[bm]);return(0,m.jsx)("div",{"data-testid":"rf__wrapper",...bp,onScroll:bt,style:{...bc,...eQ},ref:bq,className:o(["react-flow",e,bs]),id:bd,role:"application",children:(0,m.jsxs)(eP,{nodes:a,edges:b,width:bi,height:bj,fitView:aY,fitViewOptions:aZ,minZoom:ao,maxZoom:ap,nodeOrigin:aj,nodeExtent:as,zIndexMode:bo,children:[(0,m.jsx)(di,{nodes:a,edges:b,defaultNodes:c,defaultEdges:d,onConnect:t,onConnectStart:u,onConnectEnd:v,onClickConnectStart:w,onClickConnectEnd:x,nodesDraggable:af,autoPanOnNodeFocus:ag,nodesConnectable:ah,nodesFocusable:ai,edgesFocusable:ak,edgesReconnectable:al,elementsSelectable:am,elevateNodesOnSelect:a2,elevateEdgesOnSelect:a3,minZoom:ao,maxZoom:ap,nodeExtent:as,onNodesChange:aT,onEdgesChange:aU,snapToGrid:ab,snapGrid:ac,connectionMode:R,translateExtent:aq,connectOnClick:a$,defaultEdgeOptions:a1,fitView:aY,fitViewOptions:aZ,onNodesDelete:G,onEdgesDelete:H,onDelete:I,onNodeDragStart:D,onNodeDrag:E,onNodeDragStop:F,onSelectionDrag:L,onSelectionDragStart:K,onSelectionDragStop:M,onMove:q,onMoveStart:r,onMoveEnd:s,noPanClassName:aX,nodeOrigin:aj,rfId:br,autoPanOnConnect:a5,autoPanOnNodeDrag:a6,autoPanSpeed:a8,onError:bb,connectionRadius:a9,isValidConnection:ba,selectNodesOnDrag:ae,nodeDragThreshold:be,connectionDragThreshold:bf,onBeforeDelete:Q,debug:bl,ariaLabelConfig:bn,zIndexMode:bo}),(0,m.jsx)(eL,{onInit:p,onNodeClick:k,onEdgeClick:l,onNodeMouseEnter:y,onNodeMouseMove:z,onNodeMouseLeave:A,onNodeContextMenu:B,onNodeDoubleClick:C,nodeTypes:i,edgeTypes:j,connectionLineType:S,connectionLineStyle:T,connectionLineComponent:U,connectionLineContainerStyle:V,selectionKeyCode:X,selectionOnDrag:Y,selectionMode:Z,deleteKeyCode:W,multiSelectionKeyCode:_,panActivationKeyCode:$,zoomActivationKeyCode:aa,onlyRenderVisibleElements:ad,defaultViewport:an,translateExtent:aq,minZoom:ao,maxZoom:ap,preventScrolling:ar,zoomOnScroll:au,zoomOnPinch:av,zoomOnDoubleClick:az,panOnScroll:aw,panOnScrollSpeed:ax,panOnScrollMode:ay,panOnDrag:aA,autoPanOnSelection:a7,onPaneClick:aB,onPaneMouseEnter:aC,onPaneMouseMove:aD,onPaneMouseLeave:aE,onPaneScroll:aF,onPaneContextMenu:aG,paneClickDistance:aH,nodeClickDistance:aI,onSelectionContextMenu:N,onSelectionStart:O,onSelectionEnd:P,onReconnect:aK,onReconnectStart:aL,onReconnectEnd:aM,onEdgeContextMenu:aN,onEdgeDoubleClick:aO,onEdgeMouseEnter:aP,onEdgeMouseMove:aQ,onEdgeMouseLeave:aR,reconnectRadius:aS,defaultMarkerColor:at,noDragClassName:aV,noWheelClassName:aW,noPanClassName:aX,rfId:br,disableKeyboardA11y:a4,nodeExtent:as,viewport:bg,onViewportChange:bh,nodesDraggable:af}),(0,m.jsx)(dc,{onSelectionChange:J}),aJ,(0,m.jsx)(c6,{proOptions:a0,position:a_}),(0,m.jsx)(c3,{rfId:br,disableKeyboardA11y:a4})]})})});let eS=a=>a.domNode?.querySelector(".react-flow__edgelabel-renderer");function eT({children:a}){let b=cW(eS);return b?(0,cS.createPortal)(a,b):null}function eU({dimensions:a,lineWidth:b,variant:c,className:d}){return(0,m.jsx)("path",{strokeWidth:b,d:`M${a[0]/2} 0 V${a[1]} M0 ${a[1]/2} H${a[0]}`,className:o(["react-flow__background-pattern",c,d])})}function eV({radius:a,className:b}){return(0,m.jsx)("circle",{cx:a,cy:a,r:a,className:o(["react-flow__background-pattern","dots",b])})}bx.error014(),function(a){a.Lines="lines",a.Dots="dots",a.Cross="cross"}(l||(l={}));let eW={[l.Dots]:1,[l.Lines]:1,[l.Cross]:6},eX=a=>({transform:a.transform,patternId:`pattern-${a.rfId}`});function eY({id:a,variant:b=l.Dots,gap:c=20,size:d,lineWidth:e=1,offset:f=0,color:g,bgColor:h,style:i,className:j,patternClassName:k}){let p=(0,n.useRef)(null),{transform:q,patternId:r}=cW(eX,cR),s=d||eW[b],t=b===l.Dots,u=b===l.Cross,v=Array.isArray(c)?c:[c,c],w=[v[0]*q[2]||1,v[1]*q[2]||1],x=s*q[2],y=Array.isArray(f)?f:[f,f],z=u?[x,x]:w,A=[y[0]*q[2]+z[0]/2,y[1]*q[2]+z[1]/2],B=`${r}${a||""}`;return(0,m.jsxs)("svg",{className:o(["react-flow__background",j]),style:{...i,...dB,"--xy-background-color-props":h,"--xy-background-pattern-color-props":g},ref:p,"data-testid":"rf__background",children:[(0,m.jsx)("pattern",{id:B,x:q[0]%w[0],y:q[1]%w[1],width:w[0],height:w[1],patternUnits:"userSpaceOnUse",patternTransform:`translate(-${A[0]},-${A[1]})`,children:t?(0,m.jsx)(eV,{radius:x/2,className:k}):(0,m.jsx)(eU,{dimensions:z,lineWidth:e,variant:b,className:k})}),(0,m.jsx)("rect",{x:"0",y:"0",width:"100%",height:"100%",fill:`url(#${B})`})]})}eY.displayName="Background";let eZ=(0,n.memo)(eY);function e$(){return(0,m.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32",children:(0,m.jsx)("path",{d:"M32 18.133H18.133V32h-4.266V18.133H0v-4.266h13.867V0h4.266v13.867H32z"})})}function e_(){return(0,m.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 5",children:(0,m.jsx)("path",{d:"M0 0h32v4.2H0z"})})}function e0(){return(0,m.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 30",children:(0,m.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 e1(){return(0,m.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32",children:(0,m.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 e2(){return(0,m.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32",children:(0,m.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 e3({children:a,className:b,...c}){return(0,m.jsx)("button",{type:"button",className:o(["react-flow__controls-button",b]),...c,children:a})}let e4=a=>({isInteractive:a.nodesDraggable||a.nodesConnectable||a.elementsSelectable,minZoomReached:a.transform[2]<=a.minZoom,maxZoomReached:a.transform[2]>=a.maxZoom,ariaLabelConfig:a.ariaLabelConfig});function e5({style:a,showZoom:b=!0,showFitView:c=!0,showInteractive:d=!0,fitViewOptions:e,onZoomIn:f,onZoomOut:g,onFitView:h,onInteractiveChange:i,className:j,children:k,position:l="bottom-left",orientation:n="vertical","aria-label":p}){let q=cX(),{isInteractive:r,minZoomReached:s,maxZoomReached:t,ariaLabelConfig:u}=cW(e4,cR),{zoomIn:v,zoomOut:w,fitView:x}=dz();return(0,m.jsxs)(c4,{className:o(["react-flow__controls","horizontal"===n?"horizontal":"vertical",j]),position:l,style:a,"data-testid":"rf__controls","aria-label":p??u["controls.ariaLabel"],children:[b&&(0,m.jsxs)(m.Fragment,{children:[(0,m.jsx)(e3,{onClick:()=>{v(),f?.()},className:"react-flow__controls-zoomin",title:u["controls.zoomIn.ariaLabel"],"aria-label":u["controls.zoomIn.ariaLabel"],disabled:t,children:(0,m.jsx)(e$,{})}),(0,m.jsx)(e3,{onClick:()=>{w(),g?.()},className:"react-flow__controls-zoomout",title:u["controls.zoomOut.ariaLabel"],"aria-label":u["controls.zoomOut.ariaLabel"],disabled:s,children:(0,m.jsx)(e_,{})})]}),c&&(0,m.jsx)(e3,{className:"react-flow__controls-fitview",onClick:()=>{x(e),h?.()},title:u["controls.fitView.ariaLabel"],"aria-label":u["controls.fitView.ariaLabel"],children:(0,m.jsx)(e0,{})}),d&&(0,m.jsx)(e3,{className:"react-flow__controls-interactive",onClick:()=>{q.setState({nodesDraggable:!r,nodesConnectable:!r,elementsSelectable:!r}),i?.(!r)},title:u["controls.interactive.ariaLabel"],"aria-label":u["controls.interactive.ariaLabel"],children:r?(0,m.jsx)(e2,{}):(0,m.jsx)(e1,{})}),k]})}e5.displayName="Controls";let e6=(0,n.memo)(e5),e7=(0,n.memo)(function({id:a,x:b,y:c,width:d,height:e,style:f,color:g,strokeColor:h,strokeWidth:i,className:j,borderRadius:k,shapeRendering:l,selected:n,onClick:p}){let{background:q,backgroundColor:r}=f||{};return(0,m.jsx)("rect",{className:o(["react-flow__minimap-node",{selected:n},j]),x:b,y:c,rx:k,ry:k,width:d,height:e,style:{fill:g||q||r,stroke:h,strokeWidth:i},shapeRendering:l,onClick:p?b=>p(b,a):void 0})}),e8=a=>a.nodes.map(a=>a.id),e9=a=>a instanceof Function?a:()=>a,fa=(0,n.memo)(function({id:a,nodeColorFunc:b,nodeStrokeColorFunc:c,nodeClassNameFunc:d,nodeBorderRadius:e,nodeStrokeWidth:f,shapeRendering:g,NodeComponent:h,onClick:i}){let{node:j,x:k,y:l,width:n,height:o}=cW(b=>{let c=b.nodeLookup.get(a);if(!c)return{node:void 0,x:0,y:0,width:0,height:0};let d=c.internals.userNode,{x:e,y:f}=c.internals.positionAbsolute,{width:g,height:h}=b5(d);return{node:d,x:e,y:f,width:g,height:h}},cR);return j&&!j.hidden&&b6(j)?(0,m.jsx)(h,{x:k,y:l,width:n,height:o,style:j.style,selected:!!j.selected,className:d(j),color:b(j),borderRadius:e,strokeColor:c(j),strokeWidth:f,shapeRendering:g,onClick:i,id:j.id}):null});k.Line,k.Handle,c(97483);var fb=c(31251);let fc=(0,c(51537).A)("LayoutGrid",[["rect",{width:"7",height:"7",x:"3",y:"3",rx:"1",key:"1g98yp"}],["rect",{width:"7",height:"7",x:"14",y:"3",rx:"1",key:"6d4xhi"}],["rect",{width:"7",height:"7",x:"14",y:"14",rx:"1",key:"nxv5o0"}],["rect",{width:"7",height:"7",x:"3",y:"14",rx:"1",key:"1bb6yr"}]]);var fd=c(60570),fe=c(73269),ff=c(7371),fg=c(61162),fh=c(81963),fi=c(93884);let fj=a=>{let b=fg.hg[a%fg.hg.length];return`color-mix(in srgb, ${b} calc(100% - var(--series-mix, 0%)), white)`},fk={agent:function({data:a}){let{t:b}=(0,fi.s9)(),c=a.agent;return(0,m.jsxs)("div",{className:`rnode ${a.dim?"dim":""} ${a.active?"active":""}`,children:["worker"===c.role&&(0,m.jsx)(dS,{type:"target",position:j.Top}),(0,m.jsx)(fh._h,{agent:c}),(0,m.jsx)("b",{children:c.name}),(0,m.jsx)("small",{children:"orchestrator"===c.role?b("role.orchestrator"):fg.xq[c.provider].short}),"orchestrator"===c.role&&(0,m.jsx)(dS,{type:"source",position:j.Bottom})]})}},fl={link:function({id:a,sourceX:b,sourceY:c,targetX:d,targetY:e,sourcePosition:f,targetPosition:g,data:h}){let[i,j,k]=ch({sourceX:b,sourceY:c,targetX:d,targetY:e,sourcePosition:f,targetPosition:g,curvature:.35});return(0,m.jsxs)(m.Fragment,{children:[(0,m.jsx)(ea,{id:a,path:i,interactionWidth:26,style:{stroke:h.color,strokeWidth:h.active?4:2.5,opacity:h.dim?.15:1,transition:"opacity .15s, stroke-width .15s"}}),h.show&&(0,m.jsx)(eT,{children:(0,m.jsx)("button",{className:"edge-x nodrag nopan",style:{transform:`translate(-50%, -50%) translate(${j}px, ${k}px)`},onClick:h.onRemove,"aria-label":h.label,title:h.label,children:(0,m.jsx)(fb.A,{size:13,strokeWidth:3})})})]})}};function fm(){let{t:a,locale:b}=(0,fi.s9)(),{agents:c,refresh:d,ready:e,error:f,retry:g}=(0,fd.q5)(),h=(0,fh.dj)(),[i,j]=(0,fe.ud)("hive-rel-pos-v2",{}),[k,l]=(0,n.useState)([]),[o,p]=(0,n.useState)(null),[q,r]=(0,n.useState)(null),[s,t]=(0,n.useState)(null),[u,v]=(0,n.useState)(0);(0,n.useMemo)(()=>(function(a){let b=a.filter(a=>"orchestrator"===a.role),c=a.filter(a=>"worker"===a.role),d=a=>b.find(b=>b.worker_ids.includes(a.id)),e={},f=0;for(let a of b){let b=c.filter(b=>d(b)?.id===a.id),g=Math.max(1,b.length);b.forEach((a,b)=>e[a.id]={x:f+190*b,y:280}),e[a.id]={x:f+(g-1)*190/2,y:0},f+=190*g+114}return c.filter(a=>!d(a)).forEach((a,b)=>e[a.id]={x:f+190*b,y:280}),e})(c),[c]);let w=(0,n.useMemo)(()=>new Map(c.filter(a=>"orchestrator"===a.role).map((a,b)=>[a.id,b])),[c]),x=o??s,y=a=>c.find(b=>b.id===a)?.name??"?",z=(0,n.useCallback)(async(b,c,e)=>{try{await ff.FH.put(`/orchestrators/${b}/workers`,{worker_ids:c}),await d(["agents"]),h(e)}catch(b){h(b instanceof Error?b.message:a("rel.updateFailed"),"err")}},[d,h]),A=(0,n.useCallback)((b,d)=>{let e=c.find(a=>a.id===b);e&&z(b,e.worker_ids.filter(a=>a!==d),a("rel.disconnected",{worker:y(d),orchestrator:e.name}))},[c,z]),B=(0,n.useCallback)((b,d)=>{let e=c.find(a=>a.id===b);!e||e.worker_ids.includes(d)||z(b,[...e.worker_ids,d],a("rel.connected",{worker:y(d),orchestrator:e.name}))},[c,z]),C=(0,n.useMemo)(()=>c.filter(a=>"orchestrator"===a.role).flatMap(b=>b.worker_ids.map(d=>{let e=`${b.id}>${d}`,f=!!x&&(b.id===x||d===x);return{id:e,source:b.id,target:d,type:"link",animated:c.find(a=>a.id===d)?.status==="running",data:{color:fj(w.get(b.id)??0),dim:!!x&&!f,active:f||q===e,show:f||q===e,label:a("rel.disconnectLabel",{worker:y(d),orchestrator:b.name}),onRemove:()=>A(b.id,d)}}})),[c,x,q,w,A,b]),D=(0,n.useMemo)(()=>{let a=new Set(x?[x]:[]);if(x)for(let b of C)(b.source===x||b.target===x)&&(a.add(b.source),a.add(b.target));return k.map(b=>({...b,selected:b.id===s,data:{...b.data,dim:!!x&&!a.has(b.id),active:b.id===x}}))},[k,C,x,s]),E=(0,n.useCallback)(a=>{l(b=>dl(a,b));let b=a.filter(a=>"position"===a.type&&!a.dragging&&a.position);b.length&&j(a=>{let c={...a};for(let a of b)"position"===a.type&&a.position&&(c[a.id]=a.position);return c})},[]),F=c.find(a=>a.id===s),G=c.filter(a=>"orchestrator"===a.role),H=c.filter(a=>"worker"===a.role);return(0,m.jsxs)("div",{className:"page full rel",children:[(0,m.jsxs)("div",{className:"rel-hud",children:[(0,m.jsx)("h1",{children:a("nav.relations")}),(0,m.jsx)("p",{children:a("rel.hud")})]}),(0,m.jsx)("div",{className:"rel-tools",children:(0,m.jsxs)("button",{className:"btn sm",onClick:()=>{j({}),v(a=>a+1),h(a("rel.layoutReset"))},children:[(0,m.jsx)(fc,{size:14}),a("rel.autoArrange")]})}),e?0===c.length?(0,m.jsx)("div",{className:"rel-empty",children:(0,m.jsx)(fh.pp,{title:a("rel.empty.title"),body:a("rel.empty.body")})}):(0,m.jsxs)(eR,{nodes:D,edges:C,nodeTypes:fk,edgeTypes:fl,onNodesChange:E,onConnect:a=>{a.source&&a.target&&B(a.source,a.target)},onNodeMouseEnter:(a,b)=>p(b.id),onNodeMouseLeave:()=>p(null),onNodeClick:(a,b)=>t(a=>a===b.id?null:b.id),onPaneClick:()=>t(null),onEdgeMouseEnter:(a,b)=>r(b.id),onEdgeMouseLeave:()=>r(null),fitView:!0,fitViewOptions:{padding:.35,maxZoom:1.1},minZoom:.3,proOptions:{hideAttribution:!0},deleteKeyCode:null,nodesConnectable:!0,children:[(0,m.jsx)(eZ,{gap:28,color:"var(--line-strong)"}),(0,m.jsx)(e6,{showInteractive:!1})]},u):f?(0,m.jsx)("div",{className:"rel-empty",children:(0,m.jsx)(fh.lZ,{kind:"err",children:(0,m.jsxs)("div",{className:"row gap-s wrap",children:[(0,m.jsxs)("span",{className:"grow",children:[a("cx.loadFailed")," ",f]}),(0,m.jsx)("button",{className:"btn sm",onClick:()=>void g(),children:a("cx.retry")})]})})}):(0,m.jsx)("div",{className:"rel-empty comb-skel",role:"status","aria-label":a("cx.loading"),children:(0,m.jsx)("div",{className:"skel",style:{width:200,height:120}})}),F&&(0,m.jsxs)("aside",{className:"rel-panel card",children:[(0,m.jsxs)("div",{className:"row gap-l",children:[(0,m.jsx)(fh._h,{agent:F}),(0,m.jsxs)("div",{className:"grow",children:[(0,m.jsx)("b",{className:"rel-panel-name",children:F.name}),(0,m.jsx)("div",{className:"muted small",children:a(`role.${F.role}`)})]}),(0,m.jsx)("button",{className:"btn ghost icon sm",onClick:()=>t(null),"aria-label":a("common.close"),children:(0,m.jsx)(fb.A,{size:16})})]}),"orchestrator"===F.role?(0,m.jsxs)(m.Fragment,{children:[(0,m.jsx)("div",{className:"eyebrow",children:a("rel.delegatesTo",{count:F.worker_ids.length})}),0===F.worker_ids.length&&(0,m.jsx)("p",{className:"muted small m0",children:a("rel.noWorkers")}),F.worker_ids.map(b=>(0,m.jsxs)("div",{className:"relrow",children:[(0,m.jsx)("span",{className:"grow",children:y(b)}),(0,m.jsx)("button",{className:"btn sm",onClick:()=>A(F.id,b),children:a("rel.disconnect")})]},b)),(0,m.jsxs)("select",{className:"select",value:"",onChange:a=>a.target.value&&B(F.id,a.target.value),"aria-label":a("rel.connectWorker"),children:[(0,m.jsx)("option",{value:"",children:a("rel.connectWorker")}),H.filter(a=>!F.worker_ids.includes(a.id)).map(a=>(0,m.jsx)("option",{value:a.id,children:a.name},a.id))]})]}):(0,m.jsxs)(m.Fragment,{children:[(0,m.jsx)("div",{className:"eyebrow",children:a("rel.directedBy")}),0===G.filter(a=>a.worker_ids.includes(F.id)).length&&(0,m.jsx)("p",{className:"muted small m0",children:a("rel.noOrchestrators")}),G.filter(a=>a.worker_ids.includes(F.id)).map(b=>(0,m.jsxs)("div",{className:"relrow",children:[(0,m.jsx)("i",{className:"cdot cx-chip-dot",style:{background:fj(w.get(b.id)??0)}}),(0,m.jsx)("span",{className:"grow",children:b.name}),(0,m.jsx)("button",{className:"btn sm",onClick:()=>A(b.id,F.id),children:a("rel.disconnect")})]},b.id)),(0,m.jsxs)("select",{className:"select",value:"",onChange:a=>a.target.value&&B(a.target.value,F.id),"aria-label":a("rel.connectOrchestrator"),children:[(0,m.jsx)("option",{value:"",children:a("rel.connectOrchestrator")}),G.filter(a=>!a.worker_ids.includes(F.id)).map(a=>(0,m.jsx)("option",{value:a.id,children:a.name},a.id))]})]})]})]})}},41025:a=>{"use strict";a.exports=require("next/dist/server/app-render/dynamic-access-async-storage.external.js")},43209:(a,b,c)=>{"use strict";c.r(b),c.d(b,{GlobalError:()=>F.a,__next_app__:()=>L,handler:()=>N,pages:()=>K,routeModule:()=>M,tree:()=>J});var d=c(62009),e=c(51640),f=c(52679),g=c(69985),h=c(91790),i=c(81200),j=c(54530),k=c(35977),l=c(234),m=c(43472),n=c(12698),o=c(28976),p=c(54084),q=c(16307),r=c(53063),s=c(72428),t=c(261),u=c(48291),v=c(56032),w=c(26713),x=c(83370),y=c(10143),z=c(27155),A=c(77620),B=c(13428),C=c(50164),D=c(86439),E=c(2972),F=c.n(E),G=c(94672),H=c(18313),I={};for(let a in G)0>["default","tree","pages","GlobalError","__next_app__","routeModule","handler"].indexOf(a)&&(I[a]=()=>G[a]);c.d(b,I);let J={children:["",{children:["relations",{children:["__PAGE__",{},{page:[()=>Promise.resolve().then(c.bind(c,976)),"/home/hugh/Documentos/projects/personal/hive-am/dist/stage/web/app/relations/page.tsx"]}]},{metadata:{icon:[async a=>(await Promise.resolve().then(c.bind(c,84507))).default(a),async a=>(await Promise.resolve().then(c.bind(c,23575))).default(a)],apple:[async a=>(await Promise.resolve().then(c.bind(c,54287))).default(a)],openGraph:[],twitter:[],manifest:void 0}}]},{layout:[()=>Promise.resolve().then(c.bind(c,61918)),"/home/hugh/Documentos/projects/personal/hive-am/dist/stage/web/app/layout.tsx"],"global-error":[()=>Promise.resolve().then(c.t.bind(c,2972,23)),"next/dist/client/components/builtin/global-error.js"],"not-found":[()=>Promise.resolve().then(c.t.bind(c,96298,23)),"next/dist/client/components/builtin/not-found.js"],forbidden:[()=>Promise.resolve().then(c.t.bind(c,60075,23)),"next/dist/client/components/builtin/forbidden.js"],unauthorized:[()=>Promise.resolve().then(c.t.bind(c,79678,23)),"next/dist/client/components/builtin/unauthorized.js"],metadata:{icon:[async a=>(await Promise.resolve().then(c.bind(c,84507))).default(a),async a=>(await Promise.resolve().then(c.bind(c,23575))).default(a)],apple:[async a=>(await Promise.resolve().then(c.bind(c,54287))).default(a)],openGraph:[],twitter:[],manifest:void 0}}]}.children,K=["/home/hugh/Documentos/projects/personal/hive-am/dist/stage/web/app/relations/page.tsx"],L={require:c,loadChunk:()=>Promise.resolve()},M=new e.AppPageRouteModule({definition:{kind:f.RouteKind.APP_PAGE,page:"/relations/page",pathname:"/relations",bundlePath:"",filename:"",appPaths:[]},userland:{loaderTree:J},distDir:".next",relativeProjectDir:""});async function N(a,b,e){var E;let I="/relations/page";"/index"===I&&(I="/");let O=(0,i.getRequestMeta)(a,"postponed"),P=(0,i.getRequestMeta)(a,"minimalMode"),Q=await M.prepare(a,b,{srcPage:I,multiZoneDraftMode:!1});if(!Q)return b.statusCode=400,b.end("Bad Request"),null==e.waitUntil||e.waitUntil.call(e,Promise.resolve()),null;let{buildId:R,query:S,params:T,parsedUrl:U,pageIsDynamic:V,buildManifest:W,nextFontManifest:X,reactLoadableManifest:Y,serverActionsManifest:Z,clientReferenceManifest:$,subresourceIntegrityManifest:_,prerenderManifest:aa,isDraftMode:ab,resolvedPathname:ac,revalidateOnlyGenerated:ad,routerServerContext:ae,nextConfig:af,interceptionRoutePatterns:ag}=Q,ah=U.pathname||"/",ai=(0,t.normalizeAppPath)(I),{isOnDemandRevalidate:aj}=Q,ak=M.match(ah,aa),al=!!aa.routes[ac]&&(M.isDev||(0,d.isRouteCacheOwner)(ac,M.cacheOwner,aa.routes[ac])),am=!!(ak||al||aa.routes[ai]),an=a.headers["user-agent"]||"",ao=(0,w.getBotType)(an),ap=(0,r.isHtmlBotRequest)(a),aq=(0,i.getRequestMeta)(a,"isPrefetchRSCRequest")??"1"===a.headers[v.NEXT_ROUTER_PREFETCH_HEADER],ar=(0,i.getRequestMeta)(a,"isRSCRequest")??(0,o.f)(a.headers[v.RSC_HEADER]),as=(0,u.getIsPossibleServerAction)(a),at=(0,n.checkIsAppPPREnabled)(af.experimental.ppr)&&(null==(E=aa.routes[ai]??aa.dynamicRoutes[ai])?void 0:E.renderingMode)==="PARTIALLY_STATIC",au=!1,av=!1,aw=at?O:void 0,ax=at&&ar&&!aq,ay=(0,i.getRequestMeta)(a,"segmentPrefetchRSCRequest"),az=!an||(0,r.shouldServeStreamingMetadata)(an,af.htmlLimitedBots);ap&&at&&(am=!1,az=!1);let aA=!0===M.isDev||!am||"string"==typeof O||ax,aB=ap&&at,aC=null;ab||!am||aA||as||aw||ax||(aC=ac);let aD=aC;!aD&&M.isDev&&(aD=ac),M.isDev||ab||!am||!ar||ax||(0,l.d)(a.headers);let aE={...G,tree:J,pages:K,GlobalError:F(),handler:N,routeModule:M,__next_app__:L};Z&&$&&(0,q.setReferenceManifestsSingleton)({page:I,clientReferenceManifest:$,serverActionsManifest:Z,serverModuleMap:(0,s.createServerModuleMap)({serverActionsManifest:Z})});let aF=a.method||"GET",aG=(0,h.getTracer)(),aH=aG.getActiveScopeSpan();try{let d=M.getVaryHeader(ac,ag);b.setHeader("Vary",d);let g=async(c,d)=>{let e=new m.NodeNextRequest(a),f=new m.NodeNextResponse(b);return M.render(e,f,d).finally(()=>{if(!c)return;c.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let d=aG.getRootSpanAttributes();if(!d)return;if(d.get("next.span_type")!==j.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${d.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let e=d.get("next.route");if(e){let a=`${aF} ${e}`;c.setAttributes({"next.route":e,"http.route":e,"next.span_name":a}),c.updateName(a)}else c.updateName(`${aF} ${a.url}`)})},l=async({span:d,postponed:f,fallbackRouteParams:h})=>{let j={query:S,params:T,page:ai,sharedContext:{buildId:R},serverComponentsHmrCache:(0,i.getRequestMeta)(a,"serverComponentsHmrCache"),fallbackRouteParams:h,renderOpts:{App:()=>null,Document:()=>null,pageConfig:{},ComponentMod:aE,Component:(0,k.T)(aE),params:T,routeModule:M,page:I,postponed:f,shouldWaitOnAllReady:aB,serveStreamingMetadata:az,supportsDynamicResponse:"string"==typeof f||aA,buildManifest:W,nextFontManifest:X,reactLoadableManifest:Y,subresourceIntegrityManifest:_,serverActionsManifest:Z,clientReferenceManifest:$,setIsrStatus:null==ae?void 0:ae.setIsrStatus,dir:c(33873).join(process.cwd(),M.relativeProjectDir),isDraftMode:ab,isRevalidate:am&&!f&&!ax,botType:ao,isOnDemandRevalidate:aj,isPossibleServerAction:as,assetPrefix:af.assetPrefix,nextConfigOutput:af.output,crossOrigin:af.crossOrigin,trailingSlash:af.trailingSlash,previewProps:aa.preview,deploymentId:af.deploymentId,enableTainting:af.experimental.taint,htmlLimitedBots:af.htmlLimitedBots,devtoolSegmentExplorer:af.experimental.devtoolSegmentExplorer,reactMaxHeadersLength:af.reactMaxHeadersLength,multiZoneDraftMode:!1,incrementalCache:(0,i.getRequestMeta)(a,"incrementalCache"),cacheLifeProfiles:af.experimental.cacheLife,basePath:af.basePath,serverActions:af.experimental.serverActions,...au?{nextExport:!0,supportsDynamicResponse:!1,isStaticGeneration:!0,isRevalidate:!0,isDebugDynamicAccesses:au}:{},experimental:{isRoutePPREnabled:at,expireTime:af.expireTime,staleTimes:af.experimental.staleTimes,cacheComponents:!!af.experimental.cacheComponents,clientSegmentCache:!!af.experimental.clientSegmentCache,clientParamParsing:!!af.experimental.clientParamParsing,dynamicOnHover:!!af.experimental.dynamicOnHover,inlineCss:!!af.experimental.inlineCss,authInterrupts:!!af.experimental.authInterrupts,clientTraceMetadata:af.experimental.clientTraceMetadata||[]},waitUntil:e.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:()=>{},onInstrumentationRequestError:(b,c,d)=>M.onRequestError(a,b,d,ae),err:(0,i.getRequestMeta)(a,"invokeError"),dev:M.isDev}},l=await g(d,j),{metadata:m}=l,{cacheControl:n,headers:o={},fetchTags:p}=m;if(p&&(o[A.NEXT_CACHE_TAGS_HEADER]=p),a.fetchMetrics=m.fetchMetrics,am&&(null==n?void 0:n.revalidate)===0&&!M.isDev&&!at){let a=m.staticBailoutInfo,b=Object.defineProperty(Error(`Page changed from static to dynamic at runtime ${ac}${(null==a?void 0:a.description)?`, reason: ${a.description}`:""}
2
2
  see more here https://nextjs.org/docs/messages/app-static-to-dynamic-error`),"__NEXT_ERROR_CODE",{value:"E132",enumerable:!1,configurable:!0});if(null==a?void 0:a.stack){let c=a.stack;b.stack=b.message+c.substring(c.indexOf("\n"))}throw b}return{value:{kind:x.CachedRouteKind.APP_PAGE,html:l,headers:o,rscData:m.flightData,postponed:m.postponed,status:m.statusCode,segmentData:m.segmentData},cacheControl:n}},n=async({hasResolved:c,previousCacheEntry:d,isRevalidating:g,span:h})=>{let j,k=!1===M.isDev,m=c||b.writableEnded;if(aj&&ad&&!d&&!P)return(null==ae?void 0:ae.render404)?await ae.render404(a,b):(b.statusCode=404,b.end("This page could not be found")),null;if(ak&&(j=(0,y.parseFallbackField)(ak.fallback)),j===y.FallbackMode.PRERENDER&&(0,w.isBot)(an)&&(!at||ap)&&(j=y.FallbackMode.BLOCKING_STATIC_RENDER),(null==d?void 0:d.isStale)===-1&&(aj=!0),aj&&(j!==y.FallbackMode.NOT_FOUND||d)&&(j=y.FallbackMode.BLOCKING_STATIC_RENDER),!P&&j!==y.FallbackMode.BLOCKING_STATIC_RENDER&&aD&&!m&&!ab&&V&&(k||!al)){let b;if((k||ak)&&j===y.FallbackMode.NOT_FOUND)throw new D.NoFallbackError;if(at&&!ar){let c="string"==typeof(null==ak?void 0:ak.fallback)?ak.fallback:k?ai:null;if(b=await M.handleResponse({cacheKey:c,req:a,nextConfig:af,routeKind:f.RouteKind.APP_PAGE,isFallback:!0,prerenderManifest:aa,isRoutePPREnabled:at,responseGenerator:async()=>l({span:h,postponed:void 0,fallbackRouteParams:k||av?(0,p.u)(ai):null}),waitUntil:e.waitUntil}),null===b)return null;if(b)return delete b.cacheControl,b}}let n=aj||g||!aw?void 0:aw;if(au&&void 0!==n)return{cacheControl:{revalidate:1,expire:void 0},value:{kind:x.CachedRouteKind.PAGES,html:z.default.EMPTY,pageData:{},headers:void 0,status:void 0}};let o=V&&at&&((0,i.getRequestMeta)(a,"renderFallbackShell")||av)?(0,p.u)(ah):null;return l({span:h,postponed:n,fallbackRouteParams:o})},o=async c=>{var d,g,h,j,k;let m,o=await M.handleResponse({cacheKey:aC,responseGenerator:a=>n({span:c,...a}),routeKind:f.RouteKind.APP_PAGE,isOnDemandRevalidate:aj,isRoutePPREnabled:at,req:a,nextConfig:af,prerenderManifest:aa,waitUntil:e.waitUntil});if(ab&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate"),M.isDev&&b.setHeader("Cache-Control","no-store, must-revalidate"),!o){if(aC)throw Object.defineProperty(Error("invariant: cache entry required but not generated"),"__NEXT_ERROR_CODE",{value:"E62",enumerable:!1,configurable:!0});return null}if((null==(d=o.value)?void 0:d.kind)!==x.CachedRouteKind.APP_PAGE)throw Object.defineProperty(Error(`Invariant app-page handler received invalid cache entry ${null==(h=o.value)?void 0:h.kind}`),"__NEXT_ERROR_CODE",{value:"E707",enumerable:!1,configurable:!0});let p="string"==typeof o.value.postponed;am&&!ax&&(!p||aq)&&(P||b.setHeader("x-nextjs-cache",aj?"REVALIDATED":o.isMiss?"MISS":o.isStale?"STALE":"HIT"),b.setHeader(v.NEXT_IS_PRERENDER_HEADER,"1"));let{value:q}=o;if(aw)m={revalidate:0,expire:void 0};else if(P&&ar&&!aq&&at)m={revalidate:0,expire:void 0};else if(!M.isDev)if(ab)m={revalidate:0,expire:void 0};else if(am){if(o.cacheControl)if("number"==typeof o.cacheControl.revalidate){if(o.cacheControl.revalidate<1)throw Object.defineProperty(Error(`Invalid revalidate configuration provided: ${o.cacheControl.revalidate} < 1`),"__NEXT_ERROR_CODE",{value:"E22",enumerable:!1,configurable:!0});m={revalidate:o.cacheControl.revalidate,expire:(null==(j=o.cacheControl)?void 0:j.expire)??af.expireTime}}else m={revalidate:A.CACHE_ONE_YEAR,expire:void 0}}else b.getHeader("Cache-Control")||(m={revalidate:0,expire:void 0});if(o.cacheControl=m,"string"==typeof ay&&(null==q?void 0:q.kind)===x.CachedRouteKind.APP_PAGE&&q.segmentData){b.setHeader(v.NEXT_DID_POSTPONE_HEADER,"2");let c=null==(k=q.headers)?void 0:k[A.NEXT_CACHE_TAGS_HEADER];P&&am&&c&&"string"==typeof c&&b.setHeader(A.NEXT_CACHE_TAGS_HEADER,c);let d=q.segmentData.get(ay);return void 0!==d?(0,C.sendRenderResult)({req:a,res:b,generateEtags:af.generateEtags,poweredByHeader:af.poweredByHeader,result:z.default.fromStatic(d,v.RSC_CONTENT_TYPE_HEADER),cacheControl:o.cacheControl}):(b.statusCode=204,(0,C.sendRenderResult)({req:a,res:b,generateEtags:af.generateEtags,poweredByHeader:af.poweredByHeader,result:z.default.EMPTY,cacheControl:o.cacheControl}))}let r=(0,i.getRequestMeta)(a,"onCacheEntry");if(r&&await r({...o,value:{...o.value,kind:"PAGE"}},{url:(0,i.getRequestMeta)(a,"initURL")}))return null;if(p&&aw)throw Object.defineProperty(Error("Invariant: postponed state should not be present on a resume request"),"__NEXT_ERROR_CODE",{value:"E396",enumerable:!1,configurable:!0});if(q.headers){let a={...q.headers};for(let[c,d]of(P&&am||delete a[A.NEXT_CACHE_TAGS_HEADER],Object.entries(a)))if(void 0!==d)if(Array.isArray(d))for(let a of d)b.appendHeader(c,a);else"number"==typeof d&&(d=d.toString()),b.appendHeader(c,d)}let s=null==(g=q.headers)?void 0:g[A.NEXT_CACHE_TAGS_HEADER];if(P&&am&&s&&"string"==typeof s&&b.setHeader(A.NEXT_CACHE_TAGS_HEADER,s),!q.status||ar&&at||(b.statusCode=q.status),!P&&q.status&&H.RedirectStatusCode[q.status]&&ar&&(b.statusCode=200),p&&b.setHeader(v.NEXT_DID_POSTPONE_HEADER,"1"),ar&&!ab){if(void 0===q.rscData){if(q.postponed)throw Object.defineProperty(Error("Invariant: Expected postponed to be undefined"),"__NEXT_ERROR_CODE",{value:"E372",enumerable:!1,configurable:!0});return(0,C.sendRenderResult)({req:a,res:b,generateEtags:af.generateEtags,poweredByHeader:af.poweredByHeader,result:q.html,cacheControl:ax?{revalidate:0,expire:void 0}:o.cacheControl})}return(0,C.sendRenderResult)({req:a,res:b,generateEtags:af.generateEtags,poweredByHeader:af.poweredByHeader,result:z.default.fromStatic(q.rscData,v.RSC_CONTENT_TYPE_HEADER),cacheControl:o.cacheControl})}let t=q.html;if(!p||P||ar)return(0,C.sendRenderResult)({req:a,res:b,generateEtags:af.generateEtags,poweredByHeader:af.poweredByHeader,result:t,cacheControl:o.cacheControl});if(au)return t.push(new ReadableStream({start(a){a.enqueue(B.ENCODED_TAGS.CLOSED.BODY_AND_HTML),a.close()}})),(0,C.sendRenderResult)({req:a,res:b,generateEtags:af.generateEtags,poweredByHeader:af.poweredByHeader,result:t,cacheControl:{revalidate:0,expire:void 0}});let u=new TransformStream;return t.push(u.readable),l({span:c,postponed:q.postponed,fallbackRouteParams:null}).then(async a=>{var b,c;if(!a)throw Object.defineProperty(Error("Invariant: expected a result to be returned"),"__NEXT_ERROR_CODE",{value:"E463",enumerable:!1,configurable:!0});if((null==(b=a.value)?void 0:b.kind)!==x.CachedRouteKind.APP_PAGE)throw Object.defineProperty(Error(`Invariant: expected a page response, got ${null==(c=a.value)?void 0:c.kind}`),"__NEXT_ERROR_CODE",{value:"E305",enumerable:!1,configurable:!0});await a.value.html.pipeTo(u.writable)}).catch(a=>{u.writable.abort(a).catch(a=>{console.error("couldn't abort transformer",a)})}),(0,C.sendRenderResult)({req:a,res:b,generateEtags:af.generateEtags,poweredByHeader:af.poweredByHeader,result:t,cacheControl:{revalidate:0,expire:void 0}})};if(!aH)return await aG.withPropagatedContext(a.headers,()=>aG.trace(j.BaseServerSpan.handleRequest,{spanName:`${aF} ${a.url}`,kind:h.SpanKind.SERVER,attributes:{"http.method":aF,"http.target":a.url}},o));await o(aH)}catch(b){throw b instanceof D.NoFallbackError||await M.onRequestError(a,b,{routerKind:"App Router",routePath:I,routeType:"render",revalidateReason:(0,g.c)({isRevalidate:am,isOnDemandRevalidate:aj})},ae),b}}},47507:(a,b,c)=>{Promise.resolve().then(c.bind(c,39639))},47956:(a,b,c)=>{"use strict";var d=c(17027),e=c(3374),f="function"==typeof Object.is?Object.is:function(a,b){return a===b&&(0!==a||1/a==1/b)||a!=a&&b!=b},g=e.useSyncExternalStore,h=d.useRef,i=d.useEffect,j=d.useMemo,k=d.useDebugValue;b.useSyncExternalStoreWithSelector=function(a,b,c,d,e){var l=h(null);if(null===l.current){var m={hasValue:!1,value:null};l.current=m}else m=l.current;var n=g(a,(l=j(function(){function a(a){if(!i){if(i=!0,g=a,a=d(a),void 0!==e&&m.hasValue){var b=m.value;if(e(b,a))return h=b}return h=a}if(b=h,f(g,a))return b;var c=d(a);return void 0!==e&&e(b,c)?(g=a,b):(g=a,h=c)}var g,h,i=!1,j=void 0===c?null:c;return[function(){return a(b())},null===j?void 0:function(){return a(j())}]},[b,c,d,e]))[0],l[1]);return i(function(){m.hasValue=!0,m.value=n},[n]),k(n),n}},55511:a=>{"use strict";a.exports=require("crypto")},58027:(a,b,c)=>{"use strict";var d=c(17027),e="function"==typeof Object.is?Object.is:function(a,b){return a===b&&(0!==a||1/a==1/b)||a!=a&&b!=b},f=d.useState,g=d.useEffect,h=d.useLayoutEffect,i=d.useDebugValue;function j(a){var b=a.getSnapshot;a=a.value;try{var c=b();return!e(a,c)}catch(a){return!0}}var k="undefined"==typeof window||void 0===window.document||void 0===window.document.createElement?function(a,b){return b()}:function(a,b){var c=b(),d=f({inst:{value:c,getSnapshot:b}}),e=d[0].inst,k=d[1];return h(function(){e.value=c,e.getSnapshot=b,j(e)&&k({inst:e})},[a,c,b]),g(function(){return j(e)&&k({inst:e}),a(function(){j(e)&&k({inst:e})})},[a]),i(c),c};b.useSyncExternalStore=void 0!==d.useSyncExternalStore?d.useSyncExternalStore:k},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},71067:(a,b,c)=>{Promise.resolve().then(c.bind(c,976))},85764:(a,b,c)=>{"use strict";a.exports=c(47956)},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},97483:()=>{}};var b=require("../../webpack-runtime.js");b.C(a);var c=b.X(0,[691,790,274],()=>b(b.s=43209));module.exports=c})();