import{i as Nt,r as Y,R as Li,c as Dn,a as jn,b as qi,o as Hi,m as $n,d as Fn,g as Gi,j as H,e as Vi,S as Wi,f as Un,T as Bi}from"./index-BrDDv3Dl.js";function Xi(e,n){let r=0;for(let i of e)(i=+i)&&(r+=i);return r}var Ln=180/Math.PI,en={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function Dr(e,n,r,i,o,a){var s,u,f;return(s=Math.sqrt(e*e+n*n))&&(e/=s,n/=s),(f=e*r+n*i)&&(r-=e*f,i-=n*f),(u=Math.sqrt(r*r+i*i))&&(r/=u,i/=u,f/=u),e*i180?d+=360:d-l>180&&(l+=360),h.push({i:c.push(o(c)+"rotate(",null,i)-2,x:Nt(l,d)})):d&&c.push(o(c)+"rotate("+d+i)}function u(l,d,c,h){l!==d?h.push({i:c.push(o(c)+"skewX(",null,i)-2,x:Nt(l,d)}):d&&c.push(o(c)+"skewX("+d+i)}function f(l,d,c,h,g,y){if(l!==c||d!==h){var x=g.push(o(g)+"scale(",null,",",null,")");y.push({i:x-4,x:Nt(l,c)},{i:x-2,x:Nt(d,h)})}else(c!==1||h!==1)&&g.push(o(g)+"scale("+c+","+h+")")}return function(l,d){var c=[],h=[];return l=e(l),d=e(d),a(l.translateX,l.translateY,d.translateX,d.translateY,c,h),s(l.rotate,d.rotate,c,h),u(l.skewX,d.skewX,c,h),f(l.scaleX,l.scaleY,d.scaleX,d.scaleY,c,h),l=d=null,function(g){for(var y=-1,x=h.length,v;++ye.length)&&(n=e.length);for(var r=0,i=new Array(n);ra,methodNames:i=[],initPropNames:o=[]}={}){return Y.forwardRef((a,s)=>{const u=Y.useRef(),f=Y.useMemo(()=>{const c=Object.fromEntries(o.filter(h=>a.hasOwnProperty(h)).map(h=>[h,a[h]]));return e(c)},[]);Gn(()=>{f(r(u.current))},Y.useLayoutEffect),Gn(()=>f._destructor instanceof Function?f._destructor:void 0);const l=Y.useCallback((c,...h)=>f[c]instanceof Function?f[c](...h):void 0,[f]),d=Y.useRef({});return Object.keys(po(a,[...i,...o])).filter(c=>d.current[c]!==a[c]).forEach(c=>l(c,a[c])),d.current=a,Y.useImperativeHandle(s,()=>Object.fromEntries(i.map(c=>[c,(...h)=>l(c,...h)])),[l]),Li.createElement(n,{ref:u})})}function Gn(e,n=Y.useEffect){const r=Y.useRef(),i=Y.useRef(!1),o=Y.useRef(!1),[a,s]=Y.useState(0);i.current&&(o.current=!0),n(()=>(i.current||(r.current=e(),i.current=!0),s(u=>u+1),()=>{o.current&&(r.current&&r.current(),r.current=void 0,i.current=!1,o.current=!1)}),[])}var rn="http://www.w3.org/1999/xhtml";const Vn={svg:"http://www.w3.org/2000/svg",xhtml:rn,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function Ie(e){var n=e+="",r=n.indexOf(":");return r>=0&&(n=e.slice(0,r))!=="xmlns"&&(e=e.slice(r+1)),Vn.hasOwnProperty(n)?{space:Vn[n],local:e}:e}function yo(e){return function(){var n=this.ownerDocument,r=this.namespaceURI;return r===rn&&n.documentElement.namespaceURI===rn?n.createElement(e):n.createElementNS(r,e)}}function _o(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}function Fr(e){var n=Ie(e);return(n.local?_o:yo)(n)}function vo(){}function mn(e){return e==null?vo:function(){return this.querySelector(e)}}function mo(e){typeof e!="function"&&(e=mn(e));for(var n=this._groups,r=n.length,i=new Array(r),o=0;o=k&&(k=_+1);!(m=v[k])&&++k=0;)(s=i[o])&&(a&&s.compareDocumentPosition(a)^4&&a.parentNode.insertBefore(s,a),a=s);return this}function Go(e){e||(e=Vo);function n(c,h){return c&&h?e(c.__data__,h.__data__):!c-!h}for(var r=this._groups,i=r.length,o=new Array(i),a=0;an?1:e>=n?0:NaN}function Wo(){var e=arguments[0];return arguments[0]=this,e.apply(null,arguments),this}function Bo(){return Array.from(this)}function Xo(){for(var e=this._groups,n=0,r=e.length;n1?this.each((n==null?oa:typeof n=="function"?sa:aa)(e,n,r??"")):Ut(this.node(),e)}function Ut(e,n){return e.style.getPropertyValue(n)||Gr(e).getComputedStyle(e,null).getPropertyValue(n)}function la(e){return function(){delete this[e]}}function fa(e,n){return function(){this[e]=n}}function ca(e,n){return function(){var r=n.apply(this,arguments);r==null?delete this[e]:this[e]=r}}function ha(e,n){return arguments.length>1?this.each((n==null?la:typeof n=="function"?ca:fa)(e,n)):this.node()[e]}function Vr(e){return e.trim().split(/^|\s+/)}function bn(e){return e.classList||new Wr(e)}function Wr(e){this._node=e,this._names=Vr(e.getAttribute("class")||"")}Wr.prototype={add:function(e){var n=this._names.indexOf(e);n<0&&(this._names.push(e),this._node.setAttribute("class",this._names.join(" ")))},remove:function(e){var n=this._names.indexOf(e);n>=0&&(this._names.splice(n,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(e){return this._names.indexOf(e)>=0}};function Br(e,n){for(var r=bn(e),i=-1,o=n.length;++i=0&&(r=n.slice(i+1),n=n.slice(0,i)),{type:n,name:r}})}function Ua(e){return function(){var n=this.__on;if(n){for(var r=0,i=-1,o=n.length,a;r{}};function fe(){for(var e=0,n=arguments.length,r={},i;e=0&&(i=r.slice(o+1),r=r.slice(0,o)),r&&!n.hasOwnProperty(r))throw new Error("unknown type: "+r);return{type:r,name:i}})}_e.prototype=fe.prototype={constructor:_e,on:function(e,n){var r=this._,i=Za(e+"",r),o,a=-1,s=i.length;if(arguments.length<2){for(;++a0)for(var r=new Array(o),i=0,o,a;i()=>e;function on(e,{sourceEvent:n,subject:r,target:i,identifier:o,active:a,x:s,y:u,dx:f,dy:l,dispatch:d}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:n,enumerable:!0,configurable:!0},subject:{value:r,enumerable:!0,configurable:!0},target:{value:i,enumerable:!0,configurable:!0},identifier:{value:o,enumerable:!0,configurable:!0},active:{value:a,enumerable:!0,configurable:!0},x:{value:s,enumerable:!0,configurable:!0},y:{value:u,enumerable:!0,configurable:!0},dx:{value:f,enumerable:!0,configurable:!0},dy:{value:l,enumerable:!0,configurable:!0},_:{value:d}})}on.prototype.on=function(){var e=this._.on.apply(this._,arguments);return e===this._?this:e};function Ja(e){return!e.ctrlKey&&!e.button}function ts(){return this.parentNode}function es(e,n){return n??{x:e.x,y:e.y}}function ns(){return navigator.maxTouchPoints||"ontouchstart"in this}function rs(){var e=Ja,n=ts,r=es,i=ns,o={},a=fe("start","drag","end"),s=0,u,f,l,d,c=0;function h(w){w.on("mousedown.drag",g).filter(i).on("touchstart.drag",v).on("touchmove.drag",p,Qa).on("touchend.drag touchcancel.drag",_).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function g(w,m){if(!(d||!e.call(this,w,m))){var A=k(this,n.call(this,w,m),w,m,"mouse");A&&(st(w.view).on("mousemove.drag",y,ae).on("mouseup.drag",x,ae),Kr(w.view),He(w),l=!1,u=w.clientX,f=w.clientY,A("start",w))}}function y(w){if(Ft(w),!l){var m=w.clientX-u,A=w.clientY-f;l=m*m+A*A>c}o.mouse("drag",w)}function x(w){st(w.view).on("mousemove.drag mouseup.drag",null),Qr(w.view,l),Ft(w),o.mouse("end",w)}function v(w,m){if(e.call(this,w,m)){var A=w.changedTouches,S=n.call(this,w,m),T=A.length,z,P;for(z=0;z=0&&e._call.call(void 0,n),e=e._next;--Lt}function Bn(){Dt=(Ce=se.now())+De,Lt=Qt=0;try{os()}finally{Lt=0,ss(),Dt=0}}function as(){var e=se.now(),n=e-Ce;n>Jr&&(De-=n,Ce=e)}function ss(){for(var e,n=Ae,r,i=1/0;n;)n._call?(i>n._time&&(i=n._time),e=n,n=n._next):(r=n._next,n._next=null,n=e?e._next=r:Ae=r);Jt=e,an(i)}function an(e){if(!Lt){Qt&&(Qt=clearTimeout(Qt));var n=e-Dt;n>24?(e<1/0&&(Qt=setTimeout(Bn,e-se.now()-De)),Ht&&(Ht=clearInterval(Ht))):(Ht||(Ce=se.now(),Ht=setInterval(as,Jr)),Lt=1,ti(Bn))}}function Xn(e,n,r){var i=new Se;return n=n==null?0:+n,i.restart(o=>{i.stop(),e(o+n)},n,r),i}var us=fe("start","end","cancel","interrupt"),ls=[],ei=0,Yn=1,sn=2,ve=3,Zn=4,un=5,me=6;function je(e,n,r,i,o,a){var s=e.__transition;if(!s)e.__transition={};else if(r in s)return;fs(e,r,{name:n,index:i,group:o,on:us,tween:ls,time:a.time,delay:a.delay,duration:a.duration,ease:a.ease,timer:null,state:ei})}function kn(e,n){var r=dt(e,n);if(r.state>ei)throw new Error("too late; already scheduled");return r}function vt(e,n){var r=dt(e,n);if(r.state>ve)throw new Error("too late; already running");return r}function dt(e,n){var r=e.__transition;if(!r||!(r=r[n]))throw new Error("transition not found");return r}function fs(e,n,r){var i=e.__transition,o;i[n]=r,r.timer=wn(a,0,r.time);function a(l){r.state=Yn,r.timer.restart(s,r.delay,r.time),r.delay<=l&&s(l-r.delay)}function s(l){var d,c,h,g;if(r.state!==Yn)return f();for(d in i)if(g=i[d],g.name===r.name){if(g.state===ve)return Xn(s);g.state===Zn?(g.state=me,g.timer.stop(),g.on.call("interrupt",e,e.__data__,g.index,g.group),delete i[d]):+dsn&&i.state=0&&(n=n.slice(0,r)),!n||n==="start"})}function Us(e,n,r){var i,o,a=Fs(n)?kn:vt;return function(){var s=a(this,e),u=s.on;u!==i&&(o=(i=u).copy()).on(n,r),s.on=o}}function Ls(e,n){var r=this._id;return arguments.length<2?dt(this.node(),r).on.on(e):this.each(Us(r,e,n))}function qs(e){return function(){var n=this.parentNode;for(var r in this.__transition)if(+r!==e)return;n&&n.removeChild(this)}}function Hs(){return this.on("end.remove",qs(this._id))}function Gs(e){var n=this._name,r=this._id;typeof e!="function"&&(e=mn(e));for(var i=this._groups,o=i.length,a=new Array(o),s=0;s()=>e;function gu(e,{sourceEvent:n,target:r,transform:i,dispatch:o}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:n,enumerable:!0,configurable:!0},target:{value:r,enumerable:!0,configurable:!0},transform:{value:i,enumerable:!0,configurable:!0},_:{value:o}})}function St(e,n,r){this.k=e,this.x=n,this.y=r}St.prototype={constructor:St,scale:function(e){return e===1?this:new St(this.k*e,this.x,this.y)},translate:function(e,n){return e===0&n===0?this:new St(this.k,this.x+this.k*e,this.y+this.k*n)},apply:function(e){return[e[0]*this.k+this.x,e[1]*this.k+this.y]},applyX:function(e){return e*this.k+this.x},applyY:function(e){return e*this.k+this.y},invert:function(e){return[(e[0]-this.x)/this.k,(e[1]-this.y)/this.k]},invertX:function(e){return(e-this.x)/this.k},invertY:function(e){return(e-this.y)/this.k},rescaleX:function(e){return e.copy().domain(e.range().map(this.invertX,this).map(e.invert,e))},rescaleY:function(e){return e.copy().domain(e.range().map(this.invertY,this).map(e.invert,e))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}};var Cn=new St(1,0,0);pt.prototype=St.prototype;function pt(e){for(;!e.__zoom;)if(!(e=e.parentNode))return Cn;return e.__zoom}function Ge(e){e.stopImmediatePropagation()}function Gt(e){e.preventDefault(),e.stopImmediatePropagation()}function yu(e){return(!e.ctrlKey||e.type==="wheel")&&!e.button}function _u(){var e=this;return e instanceof SVGElement?(e=e.ownerSVGElement||e,e.hasAttribute("viewBox")?(e=e.viewBox.baseVal,[[e.x,e.y],[e.x+e.width,e.y+e.height]]):[[0,0],[e.width.baseVal.value,e.height.baseVal.value]]):[[0,0],[e.clientWidth,e.clientHeight]]}function Kn(){return this.__zoom||Cn}function vu(e){return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*(e.ctrlKey?10:1)}function mu(){return navigator.maxTouchPoints||"ontouchstart"in this}function bu(e,n,r){var i=e.invertX(n[0][0])-r[0][0],o=e.invertX(n[1][0])-r[1][0],a=e.invertY(n[0][1])-r[0][1],s=e.invertY(n[1][1])-r[1][1];return e.translate(o>i?(i+o)/2:Math.min(0,i)||Math.max(0,o),s>a?(a+s)/2:Math.min(0,a)||Math.max(0,s))}function xu(){var e=yu,n=_u,r=bu,i=vu,o=mu,a=[0,1/0],s=[[-1/0,-1/0],[1/0,1/0]],u=250,f=no,l=fe("start","zoom","end"),d,c,h,g=500,y=150,x=0,v=10;function p(C){C.property("__zoom",Kn).on("wheel.zoom",T,{passive:!1}).on("mousedown.zoom",z).on("dblclick.zoom",P).filter(o).on("touchstart.zoom",N).on("touchmove.zoom",I).on("touchend.zoom touchcancel.zoom",U).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}p.transform=function(C,E,M,R){var D=C.selection?C.selection():C;D.property("__zoom",Kn),C!==D?m(C,E,M,R):D.interrupt().each(function(){A(this,arguments).event(R).start().zoom(null,typeof E=="function"?E.apply(this,arguments):E).end()})},p.scaleBy=function(C,E,M,R){p.scaleTo(C,function(){var D=this.__zoom.k,$=typeof E=="function"?E.apply(this,arguments):E;return D*$},M,R)},p.scaleTo=function(C,E,M,R){p.transform(C,function(){var D=n.apply(this,arguments),$=this.__zoom,F=M==null?w(D):typeof M=="function"?M.apply(this,arguments):M,L=$.invert(F),q=typeof E=="function"?E.apply(this,arguments):E;return r(k(_($,q),F,L),D,s)},M,R)},p.translateBy=function(C,E,M,R){p.transform(C,function(){return r(this.__zoom.translate(typeof E=="function"?E.apply(this,arguments):E,typeof M=="function"?M.apply(this,arguments):M),n.apply(this,arguments),s)},null,R)},p.translateTo=function(C,E,M,R,D){p.transform(C,function(){var $=n.apply(this,arguments),F=this.__zoom,L=R==null?w($):typeof R=="function"?R.apply(this,arguments):R;return r(Cn.translate(L[0],L[1]).scale(F.k).translate(typeof E=="function"?-E.apply(this,arguments):-E,typeof M=="function"?-M.apply(this,arguments):-M),$,s)},R,D)};function _(C,E){return E=Math.max(a[0],Math.min(a[1],E)),E===C.k?C:new St(E,C.x,C.y)}function k(C,E,M){var R=E[0]-M[0]*C.k,D=E[1]-M[1]*C.k;return R===C.x&&D===C.y?C:new St(C.k,R,D)}function w(C){return[(+C[0][0]+ +C[1][0])/2,(+C[0][1]+ +C[1][1])/2]}function m(C,E,M,R){C.on("start.zoom",function(){A(this,arguments).event(R).start()}).on("interrupt.zoom end.zoom",function(){A(this,arguments).event(R).end()}).tween("zoom",function(){var D=this,$=arguments,F=A(D,$).event(R),L=n.apply(D,$),q=M==null?w(L):typeof M=="function"?M.apply(D,$):M,K=Math.max(L[1][0]-L[0][0],L[1][1]-L[0][1]),Z=D.__zoom,lt=typeof E=="function"?E.apply(D,$):E,mt=f(Z.invert(q).concat(K/Z.k),lt.invert(q).concat(K/lt.k));return function(ft){if(ft===1)ft=lt;else{var bt=mt(ft),qe=K/bt[2];ft=new St(qe,q[0]-bt[0]*qe,q[1]-bt[1]*qe)}F.zoom(null,ft)}})}function A(C,E,M){return!M&&C.__zooming||new S(C,E)}function S(C,E){this.that=C,this.args=E,this.active=0,this.sourceEvent=null,this.extent=n.apply(C,E),this.taps=0}S.prototype={event:function(C){return C&&(this.sourceEvent=C),this},start:function(){return++this.active===1&&(this.that.__zooming=this,this.emit("start")),this},zoom:function(C,E){return this.mouse&&C!=="mouse"&&(this.mouse[1]=E.invert(this.mouse[0])),this.touch0&&C!=="touch"&&(this.touch0[1]=E.invert(this.touch0[0])),this.touch1&&C!=="touch"&&(this.touch1[1]=E.invert(this.touch1[0])),this.that.__zoom=E,this.emit("zoom"),this},end:function(){return--this.active===0&&(delete this.that.__zooming,this.emit("end")),this},emit:function(C){var E=st(this.that).datum();l.call(C,this.that,new gu(C,{sourceEvent:this.sourceEvent,target:p,transform:this.that.__zoom,dispatch:l}),E)}};function T(C,...E){if(!e.apply(this,arguments))return;var M=A(this,E).event(C),R=this.__zoom,D=Math.max(a[0],Math.min(a[1],R.k*Math.pow(2,i.apply(this,arguments)))),$=gt(C);if(M.wheel)(M.mouse[0][0]!==$[0]||M.mouse[0][1]!==$[1])&&(M.mouse[1]=R.invert(M.mouse[0]=$)),clearTimeout(M.wheel);else{if(R.k===D)return;M.mouse=[$,R.invert($)],be(this),M.start()}Gt(C),M.wheel=setTimeout(F,y),M.zoom("mouse",r(k(_(R,D),M.mouse[0],M.mouse[1]),M.extent,s));function F(){M.wheel=null,M.end()}}function z(C,...E){if(h||!e.apply(this,arguments))return;var M=C.currentTarget,R=A(this,E,!0).event(C),D=st(C.view).on("mousemove.zoom",q,!0).on("mouseup.zoom",K,!0),$=gt(C,M),F=C.clientX,L=C.clientY;Kr(C.view),Ge(C),R.mouse=[$,this.__zoom.invert($)],be(this),R.start();function q(Z){if(Gt(Z),!R.moved){var lt=Z.clientX-F,mt=Z.clientY-L;R.moved=lt*lt+mt*mt>x}R.event(Z).zoom("mouse",r(k(R.that.__zoom,R.mouse[0]=gt(Z,M),R.mouse[1]),R.extent,s))}function K(Z){D.on("mousemove.zoom mouseup.zoom",null),Qr(Z.view,R.moved),Gt(Z),R.event(Z).end()}}function P(C,...E){if(e.apply(this,arguments)){var M=this.__zoom,R=gt(C.changedTouches?C.changedTouches[0]:C,this),D=M.invert(R),$=M.k*(C.shiftKey?.5:2),F=r(k(_(M,$),R,D),n.apply(this,E),s);Gt(C),u>0?st(this).transition().duration(u).call(m,F,R,C):st(this).call(p.transform,F,R,C)}}function N(C,...E){if(e.apply(this,arguments)){var M=C.touches,R=M.length,D=A(this,E,C.changedTouches.length===R).event(C),$,F,L,q;for(Ge(C),F=0;F=n||S<0||c&&T>=a}function p(){var A=Ve();if(v(A))return _(A);u=setTimeout(p,x(A))}function _(A){return u=void 0,h&&i?g(A):(i=o=void 0,s)}function k(){u!==void 0&&clearTimeout(u),l=0,i=f=o=u=void 0}function w(){return u===void 0?s:_(Ve())}function m(){var A=Ve(),S=v(A);if(i=arguments,o=this,f=A,S){if(u===void 0)return y(f);if(c)return clearTimeout(u),u=setTimeout(p,n),g(f)}return u===void 0&&(u=setTimeout(p,n)),s}return m.cancel=k,m.flush=w,m}var Bu="Expected a function";function Xu(e,n,r){var i=!0,o=!0;if(typeof e!="function")throw new TypeError(Bu);return Me(r)&&(i="leading"in r?!!r.leading:i,o="trailing"in r?!!r.trailing:o),si(e,n,{leading:i,maxWait:n,trailing:o})}var It=Object.freeze({Linear:Object.freeze({None:function(e){return e},In:function(e){return e},Out:function(e){return e},InOut:function(e){return e}}),Quadratic:Object.freeze({In:function(e){return e*e},Out:function(e){return e*(2-e)},InOut:function(e){return(e*=2)<1?.5*e*e:-.5*(--e*(e-2)-1)}}),Cubic:Object.freeze({In:function(e){return e*e*e},Out:function(e){return--e*e*e+1},InOut:function(e){return(e*=2)<1?.5*e*e*e:.5*((e-=2)*e*e+2)}}),Quartic:Object.freeze({In:function(e){return e*e*e*e},Out:function(e){return 1- --e*e*e*e},InOut:function(e){return(e*=2)<1?.5*e*e*e*e:-.5*((e-=2)*e*e*e-2)}}),Quintic:Object.freeze({In:function(e){return e*e*e*e*e},Out:function(e){return--e*e*e*e*e+1},InOut:function(e){return(e*=2)<1?.5*e*e*e*e*e:.5*((e-=2)*e*e*e*e+2)}}),Sinusoidal:Object.freeze({In:function(e){return 1-Math.sin((1-e)*Math.PI/2)},Out:function(e){return Math.sin(e*Math.PI/2)},InOut:function(e){return .5*(1-Math.sin(Math.PI*(.5-e)))}}),Exponential:Object.freeze({In:function(e){return e===0?0:Math.pow(1024,e-1)},Out:function(e){return e===1?1:1-Math.pow(2,-10*e)},InOut:function(e){return e===0?0:e===1?1:(e*=2)<1?.5*Math.pow(1024,e-1):.5*(-Math.pow(2,-10*(e-1))+2)}}),Circular:Object.freeze({In:function(e){return 1-Math.sqrt(1-e*e)},Out:function(e){return Math.sqrt(1- --e*e)},InOut:function(e){return(e*=2)<1?-.5*(Math.sqrt(1-e*e)-1):.5*(Math.sqrt(1-(e-=2)*e)+1)}}),Elastic:Object.freeze({In:function(e){return e===0?0:e===1?1:-Math.pow(2,10*(e-1))*Math.sin((e-1.1)*5*Math.PI)},Out:function(e){return e===0?0:e===1?1:Math.pow(2,-10*e)*Math.sin((e-.1)*5*Math.PI)+1},InOut:function(e){return e===0?0:e===1?1:(e*=2,e<1?-.5*Math.pow(2,10*(e-1))*Math.sin((e-1.1)*5*Math.PI):.5*Math.pow(2,-10*(e-1))*Math.sin((e-1.1)*5*Math.PI)+1)}}),Back:Object.freeze({In:function(e){var n=1.70158;return e===1?1:e*e*((n+1)*e-n)},Out:function(e){var n=1.70158;return e===0?0:--e*e*((n+1)*e+n)+1},InOut:function(e){var n=2.5949095;return(e*=2)<1?.5*(e*e*((n+1)*e-n)):.5*((e-=2)*e*((n+1)*e+n)+2)}}),Bounce:Object.freeze({In:function(e){return 1-It.Bounce.Out(1-e)},Out:function(e){return e<1/2.75?7.5625*e*e:e<2/2.75?7.5625*(e-=1.5/2.75)*e+.75:e<2.5/2.75?7.5625*(e-=2.25/2.75)*e+.9375:7.5625*(e-=2.625/2.75)*e+.984375},InOut:function(e){return e<.5?It.Bounce.In(e*2)*.5:It.Bounce.Out(e*2-1)*.5+.5}}),generatePow:function(e){return e===void 0&&(e=4),e=e1e4?1e4:e,{In:function(n){return Math.pow(n,e)},Out:function(n){return 1-Math.pow(1-n,e)},InOut:function(n){return n<.5?Math.pow(n*2,e)/2:(1-Math.pow(2-n*2,e))/2+.5}}}}),te=function(){return performance.now()},ui=(function(){function e(){this._tweens={},this._tweensAddedDuringUpdate={}}return e.prototype.getAll=function(){var n=this;return Object.keys(this._tweens).map(function(r){return n._tweens[r]})},e.prototype.removeAll=function(){this._tweens={}},e.prototype.add=function(n){this._tweens[n.getId()]=n,this._tweensAddedDuringUpdate[n.getId()]=n},e.prototype.remove=function(n){delete this._tweens[n.getId()],delete this._tweensAddedDuringUpdate[n.getId()]},e.prototype.update=function(n,r){n===void 0&&(n=te()),r===void 0&&(r=!1);var i=Object.keys(this._tweens);if(i.length===0)return!1;for(;i.length>0;){this._tweensAddedDuringUpdate={};for(var o=0;o1?a(e[r],e[r-1],r-i):a(e[o],e[o+1>r?r:o+1],i-o)},Utils:{Linear:function(e,n,r){return(n-e)*r+e}}},li=(function(){function e(){}return e.nextId=function(){return e._nextId++},e._nextId=0,e})(),fn=new ui,er=(function(){function e(n,r){r===void 0&&(r=fn),this._object=n,this._group=r,this._isPaused=!1,this._pauseStart=0,this._valuesStart={},this._valuesEnd={},this._valuesStartRepeat={},this._duration=1e3,this._isDynamic=!1,this._initialRepeat=0,this._repeat=0,this._yoyo=!1,this._isPlaying=!1,this._reversed=!1,this._delayTime=0,this._startTime=0,this._easingFunction=It.Linear.None,this._interpolationFunction=ln.Linear,this._chainedTweens=[],this._onStartCallbackFired=!1,this._onEveryStartCallbackFired=!1,this._id=li.nextId(),this._isChainStopped=!1,this._propertiesAreSetUp=!1,this._goToEnd=!1}return e.prototype.getId=function(){return this._id},e.prototype.isPlaying=function(){return this._isPlaying},e.prototype.isPaused=function(){return this._isPaused},e.prototype.getDuration=function(){return this._duration},e.prototype.to=function(n,r){if(r===void 0&&(r=1e3),this._isPlaying)throw new Error("Can not call Tween.to() while Tween is already started or paused. Stop the Tween first.");return this._valuesEnd=n,this._propertiesAreSetUp=!1,this._duration=r<0?0:r,this},e.prototype.duration=function(n){return n===void 0&&(n=1e3),this._duration=n<0?0:n,this},e.prototype.dynamic=function(n){return n===void 0&&(n=!1),this._isDynamic=n,this},e.prototype.start=function(n,r){if(n===void 0&&(n=te()),r===void 0&&(r=!1),this._isPlaying)return this;if(this._group&&this._group.add(this),this._repeat=this._initialRepeat,this._reversed){this._reversed=!1;for(var i in this._valuesStartRepeat)this._swapEndStartRepeatValues(i),this._valuesStart[i]=this._valuesStartRepeat[i]}if(this._isPlaying=!0,this._isPaused=!1,this._onStartCallbackFired=!1,this._onEveryStartCallbackFired=!1,this._isChainStopped=!1,this._startTime=n,this._startTime+=this._delayTime,!this._propertiesAreSetUp||r){if(this._propertiesAreSetUp=!0,!this._isDynamic){var o={};for(var a in this._valuesEnd)o[a]=this._valuesEnd[a];this._valuesEnd=o}this._setupProperties(this._object,this._valuesStart,this._valuesEnd,this._valuesStartRepeat,r)}return this},e.prototype.startFromCurrentValues=function(n){return this.start(n,!0)},e.prototype._setupProperties=function(n,r,i,o,a){for(var s in i){var u=n[s],f=Array.isArray(u),l=f?"array":typeof u,d=!f&&Array.isArray(i[s]);if(!(l==="undefined"||l==="function")){if(d){var c=i[s];if(c.length===0)continue;for(var h=[u],g=0,y=c.length;g"u"||a)&&(r[s]=u),f||(r[s]*=1),d?o[s]=i[s].slice().reverse():o[s]=r[s]||0}}},e.prototype.stop=function(){return this._isChainStopped||(this._isChainStopped=!0,this.stopChainedTweens()),this._isPlaying?(this._group&&this._group.remove(this),this._isPlaying=!1,this._isPaused=!1,this._onStopCallback&&this._onStopCallback(this._object),this):this},e.prototype.end=function(){return this._goToEnd=!0,this.update(1/0),this},e.prototype.pause=function(n){return n===void 0&&(n=te()),this._isPaused||!this._isPlaying?this:(this._isPaused=!0,this._pauseStart=n,this._group&&this._group.remove(this),this)},e.prototype.resume=function(n){return n===void 0&&(n=te()),!this._isPaused||!this._isPlaying?this:(this._isPaused=!1,this._startTime+=n-this._pauseStart,this._pauseStart=0,this._group&&this._group.add(this),this)},e.prototype.stopChainedTweens=function(){for(var n=0,r=this._chainedTweens.length;ns)return!1;r&&this.start(n,!0)}if(this._goToEnd=!1,nl)return 1;var v=Math.trunc(u/f),p=u-v*f,_=Math.min(p/i._duration,1);return _===0&&u===i._duration?1:_},c=d(),h=this._easingFunction(c);if(this._updateProperties(this._object,this._valuesStart,this._valuesEnd,h),this._onUpdateCallback&&this._onUpdateCallback(this._object,c),this._duration===0||u>=this._duration)if(this._repeat>0){var g=Math.min(Math.trunc((u-this._duration)/f)+1,this._repeat);isFinite(this._repeat)&&(this._repeat-=g);for(a in this._valuesStartRepeat)!this._yoyo&&typeof this._valuesEnd[a]=="string"&&(this._valuesStartRepeat[a]=this._valuesStartRepeat[a]+parseFloat(this._valuesEnd[a])),this._yoyo&&this._swapEndStartRepeatValues(a),this._valuesStart[a]=this._valuesStartRepeat[a];return this._yoyo&&(this._reversed=!this._reversed),this._startTime+=f*g,this._onRepeatCallback&&this._onRepeatCallback(this._object),this._onEveryStartCallbackFired=!1,!0}else{this._onCompleteCallback&&this._onCompleteCallback(this._object);for(var y=0,x=this._chainedTweens.length;ye.length)&&(n=e.length);for(var r=0,i=Array(n);r=0,a=!r&&o&&(n==="hex"||n==="hex6"||n==="hex3"||n==="hex4"||n==="hex8"||n==="name");return a?n==="name"&&this._a===0?this.toName():this.toRgbString():(n==="rgb"&&(i=this.toRgbString()),n==="prgb"&&(i=this.toPercentageRgbString()),(n==="hex"||n==="hex6")&&(i=this.toHexString()),n==="hex3"&&(i=this.toHexString(!0)),n==="hex4"&&(i=this.toHex8String(!0)),n==="hex8"&&(i=this.toHex8String()),n==="name"&&(i=this.toName()),n==="hsl"&&(i=this.toHslString()),n==="hsv"&&(i=this.toHsvString()),i||this.toHexString())},clone:function(){return j(this.toString())},_applyModification:function(n,r){var i=n.apply(null,[this].concat([].slice.call(r)));return this._r=i._r,this._g=i._g,this._b=i._b,this.setAlpha(i._a),this},lighten:function(){return this._applyModification(dl,arguments)},brighten:function(){return this._applyModification(pl,arguments)},darken:function(){return this._applyModification(gl,arguments)},desaturate:function(){return this._applyModification(fl,arguments)},saturate:function(){return this._applyModification(cl,arguments)},greyscale:function(){return this._applyModification(hl,arguments)},spin:function(){return this._applyModification(yl,arguments)},_applyCombination:function(n,r){return n.apply(null,[this].concat([].slice.call(r)))},analogous:function(){return this._applyCombination(ml,arguments)},complement:function(){return this._applyCombination(_l,arguments)},monochromatic:function(){return this._applyCombination(bl,arguments)},splitcomplement:function(){return this._applyCombination(vl,arguments)},triad:function(){return this._applyCombination(sr,[3])},tetrad:function(){return this._applyCombination(sr,[4])}};j.fromRatio=function(e,n){if(Pe(e)=="object"){var r={};for(var i in e)e.hasOwnProperty(i)&&(i==="a"?r[i]=e[i]:r[i]=ee(e[i]));e=r}return j(e,n)};function ol(e){var n={r:0,g:0,b:0},r=1,i=null,o=null,a=null,s=!1,u=!1;return typeof e=="string"&&(e=Cl(e)),Pe(e)=="object"&&(wt(e.r)&&wt(e.g)&&wt(e.b)?(n=al(e.r,e.g,e.b),s=!0,u=String(e.r).substr(-1)==="%"?"prgb":"rgb"):wt(e.h)&&wt(e.s)&&wt(e.v)?(i=ee(e.s),o=ee(e.v),n=ul(e.h,i,o),s=!0,u="hsv"):wt(e.h)&&wt(e.s)&&wt(e.l)&&(i=ee(e.s),a=ee(e.l),n=sl(e.h,i,a),s=!0,u="hsl"),e.hasOwnProperty("a")&&(r=e.a)),r=fi(r),{ok:s,format:e.format||u,r:Math.min(255,Math.max(n.r,0)),g:Math.min(255,Math.max(n.g,0)),b:Math.min(255,Math.max(n.b,0)),a:r}}function al(e,n,r){return{r:B(e,255)*255,g:B(n,255)*255,b:B(r,255)*255}}function rr(e,n,r){e=B(e,255),n=B(n,255),r=B(r,255);var i=Math.max(e,n,r),o=Math.min(e,n,r),a,s,u=(i+o)/2;if(i==o)a=s=0;else{var f=i-o;switch(s=u>.5?f/(2-i-o):f/(i+o),i){case e:a=(n-r)/f+(n1&&(c-=1),c<1/6?l+(d-l)*6*c:c<1/2?d:c<2/3?l+(d-l)*(2/3-c)*6:l}if(n===0)i=o=a=r;else{var u=r<.5?r*(1+n):r+n-r*n,f=2*r-u;i=s(f,u,e+1/3),o=s(f,u,e),a=s(f,u,e-1/3)}return{r:i*255,g:o*255,b:a*255}}function ir(e,n,r){e=B(e,255),n=B(n,255),r=B(r,255);var i=Math.max(e,n,r),o=Math.min(e,n,r),a,s,u=i,f=i-o;if(s=i===0?0:f/i,i==o)a=0;else{switch(i){case e:a=(n-r)/f+(n>1)+720)%360;--n;)i.h=(i.h+o)%360,a.push(j(i));return a}function bl(e,n){n=n||6;for(var r=j(e).toHsv(),i=r.h,o=r.s,a=r.v,s=[],u=1/n;n--;)s.push(j({h:i,s:o,v:a})),a=(a+u)%1;return s}j.mix=function(e,n,r){r=r===0?0:r||50;var i=j(e).toRgb(),o=j(n).toRgb(),a=r/100,s={r:(o.r-i.r)*a+i.r,g:(o.g-i.g)*a+i.g,b:(o.b-i.b)*a+i.b,a:(o.a-i.a)*a+i.a};return j(s)};j.readability=function(e,n){var r=j(e),i=j(n);return(Math.max(r.getLuminance(),i.getLuminance())+.05)/(Math.min(r.getLuminance(),i.getLuminance())+.05)};j.isReadable=function(e,n,r){var i=j.readability(e,n),o,a;switch(a=!1,o=Sl(r),o.level+o.size){case"AAsmall":case"AAAlarge":a=i>=4.5;break;case"AAlarge":a=i>=3;break;case"AAAsmall":a=i>=7;break}return a};j.mostReadable=function(e,n,r){var i=null,o=0,a,s,u,f;r=r||{},s=r.includeFallbackColors,u=r.level,f=r.size;for(var l=0;lo&&(o=a,i=j(n[l]));return j.isReadable(e,i,{level:u,size:f})||!s?i:(r.includeFallbackColors=!1,j.mostReadable(e,["#fff","#000"],r))};var cn=j.names={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"0ff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000",blanchedalmond:"ffebcd",blue:"00f",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",burntsienna:"ea7e5d",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"0ff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkgrey:"a9a9a9",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"f0f",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",grey:"808080",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgreen:"90ee90",lightgrey:"d3d3d3",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslategray:"789",lightslategrey:"789",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"0f0",limegreen:"32cd32",linen:"faf0e6",magenta:"f0f",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370db",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"db7093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"663399",red:"f00",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"fff",whitesmoke:"f5f5f5",yellow:"ff0",yellowgreen:"9acd32"},xl=j.hexNames=wl(cn);function wl(e){var n={};for(var r in e)e.hasOwnProperty(r)&&(n[e[r]]=r);return n}function fi(e){return e=parseFloat(e),(isNaN(e)||e<0||e>1)&&(e=1),e}function B(e,n){kl(e)&&(e="100%");var r=Al(e);return e=Math.min(n,Math.max(0,parseFloat(e))),r&&(e=parseInt(e*n,10)/100),Math.abs(e-n)<1e-6?1:e%n/parseFloat(n)}function $e(e){return Math.min(1,Math.max(0,e))}function rt(e){return parseInt(e,16)}function kl(e){return typeof e=="string"&&e.indexOf(".")!=-1&&parseFloat(e)===1}function Al(e){return typeof e=="string"&&e.indexOf("%")!=-1}function ht(e){return e.length==1?"0"+e:""+e}function ee(e){return e<=1&&(e=e*100+"%"),e}function ci(e){return Math.round(parseFloat(e)*255).toString(16)}function ur(e){return rt(e)/255}var ct=(function(){var e="[-\\+]?\\d+%?",n="[-\\+]?\\d*\\.\\d+%?",r="(?:"+n+")|(?:"+e+")",i="[\\s|\\(]+("+r+")[,|\\s]+("+r+")[,|\\s]+("+r+")\\s*\\)?",o="[\\s|\\(]+("+r+")[,|\\s]+("+r+")[,|\\s]+("+r+")[,|\\s]+("+r+")\\s*\\)?";return{CSS_UNIT:new RegExp(r),rgb:new RegExp("rgb"+i),rgba:new RegExp("rgba"+o),hsl:new RegExp("hsl"+i),hsla:new RegExp("hsla"+o),hsv:new RegExp("hsv"+i),hsva:new RegExp("hsva"+o),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/}})();function wt(e){return!!ct.CSS_UNIT.exec(e)}function Cl(e){e=e.replace(rl,"").replace(il,"").toLowerCase();var n=!1;if(cn[e])e=cn[e],n=!0;else if(e=="transparent")return{r:0,g:0,b:0,a:0,format:"name"};var r;return(r=ct.rgb.exec(e))?{r:r[1],g:r[2],b:r[3]}:(r=ct.rgba.exec(e))?{r:r[1],g:r[2],b:r[3],a:r[4]}:(r=ct.hsl.exec(e))?{h:r[1],s:r[2],l:r[3]}:(r=ct.hsla.exec(e))?{h:r[1],s:r[2],l:r[3],a:r[4]}:(r=ct.hsv.exec(e))?{h:r[1],s:r[2],v:r[3]}:(r=ct.hsva.exec(e))?{h:r[1],s:r[2],v:r[3],a:r[4]}:(r=ct.hex8.exec(e))?{r:rt(r[1]),g:rt(r[2]),b:rt(r[3]),a:ur(r[4]),format:n?"name":"hex8"}:(r=ct.hex6.exec(e))?{r:rt(r[1]),g:rt(r[2]),b:rt(r[3]),format:n?"name":"hex"}:(r=ct.hex4.exec(e))?{r:rt(r[1]+""+r[1]),g:rt(r[2]+""+r[2]),b:rt(r[3]+""+r[3]),a:ur(r[4]+""+r[4]),format:n?"name":"hex8"}:(r=ct.hex3.exec(e))?{r:rt(r[1]+""+r[1]),g:rt(r[2]+""+r[2]),b:rt(r[3]+""+r[3]),format:n?"name":"hex"}:!1}function Sl(e){var n,r;return e=e||{level:"AA",size:"small"},n=(e.level||"AA").toUpperCase(),r=(e.size||"small").toLowerCase(),n!=="AA"&&n!=="AAA"&&(n="AA"),r!=="small"&&r!=="large"&&(r="small"),{level:n,size:r}}function hn(e,n){(n==null||n>e.length)&&(n=e.length);for(var r=0,i=Array(n);r0&&arguments[0]!==void 0?arguments[0]:6;Pl(this,e),lr(this,Rt,void 0),lr(this,kt,void 0),fr(kt,this,n),this.reset()}return El(e,[{key:"reset",value:function(){fr(Rt,this,["__reserved for background__"])}},{key:"register",value:function(r){if(ot(Rt,this).length>=Math.pow(2,24-ot(kt,this)))return null;var i=ot(Rt,this).length,o=cr(i,ot(kt,this)),a=Fl(i+(o<<24-ot(kt,this)));return ot(Rt,this).push(r),a}},{key:"lookup",value:function(r){if(!r)return null;var i=typeof r=="string"?Ul(r):di.apply(void 0,Nl(r));if(!i)return null;var o=i&Math.pow(2,24-ot(kt,this))-1,a=i>>24-ot(kt,this)&Math.pow(2,ot(kt,this))-1;return cr(o,ot(kt,this))!==a||o>=ot(Rt,this).length?null:ot(Rt,this)[o]}}])})(),ce,X,pi,gi,zt,hr,yi,_i,We,xe,ne,vi,Tn,dn,pn,Oe={},Ee=[],ql=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,Fe=Array.isArray;function yt(e,n){for(var r in n)e[r]=n[r];return e}function Mn(e){e&&e.parentNode&&e.parentNode.removeChild(e)}function Hl(e,n,r){var i,o,a,s={};for(a in n)a=="key"?i=n[a]:a=="ref"?o=n[a]:s[a]=n[a];if(arguments.length>2&&(s.children=arguments.length>3?ce.call(arguments,2):r),typeof e=="function"&&e.defaultProps!=null)for(a in e.defaultProps)s[a]===void 0&&(s[a]=e.defaultProps[a]);return re(e,s,i,o,null)}function re(e,n,r,i,o){var a={type:e,props:n,key:r,ref:i,__k:null,__:null,__b:0,__e:null,__c:null,constructor:void 0,__v:o??++pi,__i:-1,__u:0};return o==null&&X.vnode!=null&&X.vnode(a),a}function Ue(e){return e.children}function we(e,n){this.props=e,this.context=n}function qt(e,n){if(n==null)return e.__?qt(e.__,e.__i+1):null;for(var r;nn&&zt.sort(_i),e=zt.shift(),n=zt.length,Gl(e)}finally{zt.length=ze.__r=0}}function bi(e,n,r,i,o,a,s,u,f,l,d){var c,h,g,y,x,v,p,_=i&&i.__k||Ee,k=n.length;for(f=Vl(r,n,_,f,k),c=0;c0?s=e.__k[a]=re(s.type,s.props,s.key,s.ref?s.ref:null,s.__v):e.__k[a]=s,f=a+h,s.__=e,s.__b=e.__b+1,u=null,(l=s.__i=Wl(s,r,f,c))!=-1&&(c--,(u=r[l])&&(u.__u|=2)),u==null||u.__v==null?(l==-1&&(o>d?h--:of?h--:h++,s.__u|=4))):e.__k[a]=null;if(c)for(a=0;a(d?1:0)){for(o=r-1,a=r+1;o>=0||a=0?o--:a++])!=null&&(2&l.__u)==0&&u==l.key&&f==l.type)return s}return-1}function pr(e,n,r){n[0]=="-"?e.setProperty(n,r??""):e[n]=r==null?"":typeof r!="number"||ql.test(n)?r:r+"px"}function ge(e,n,r,i,o){var a,s;t:if(n=="style")if(typeof r=="string")e.style.cssText=r;else{if(typeof i=="string"&&(e.style.cssText=i=""),i)for(n in i)r&&n in r||pr(e.style,n,"");if(r)for(n in r)i&&r[n]==i[n]||pr(e.style,n,r[n])}else if(n[0]=="o"&&n[1]=="n")a=n!=(n=n.replace(vi,"$1")),s=n.toLowerCase(),n=s in e||n=="onFocusOut"||n=="onFocusIn"?s.slice(2):n.slice(2),e.l||(e.l={}),e.l[n+a]=r,r?i?r[ne]=i[ne]:(r[ne]=Tn,e.addEventListener(n,a?pn:dn,a)):e.removeEventListener(n,a?pn:dn,a);else{if(o=="http://www.w3.org/2000/svg")n=n.replace(/xlink(H|:h)/,"h").replace(/sName$/,"s");else if(n!="width"&&n!="height"&&n!="href"&&n!="list"&&n!="form"&&n!="tabIndex"&&n!="download"&&n!="rowSpan"&&n!="colSpan"&&n!="role"&&n!="popover"&&n in e)try{e[n]=r??"";break t}catch{}typeof r=="function"||(r==null||r===!1&&n[4]!="-"?e.removeAttribute(n):e.setAttribute(n,n=="popover"&&r==1?"":r))}}function gr(e){return function(n){if(this.l){var r=this.l[n.type+e];if(n[xe]==null)n[xe]=Tn++;else if(n[xe]0?e:Fe(e)?e.map(Ai):e.constructor!==void 0?null:yt({},e)}function Bl(e,n,r,i,o,a,s,u,f){var l,d,c,h,g,y,x,v=r.props||Oe,p=n.props,_=n.type;if(_=="svg"?o="http://www.w3.org/2000/svg":_=="math"?o="http://www.w3.org/1998/Math/MathML":o||(o="http://www.w3.org/1999/xhtml"),a!=null){for(l=0;l2&&(u.children=arguments.length>3?ce.call(arguments,2):r),re(e.type,u,i||e.key,o||e.ref,null)}ce=Ee.slice,X={__e:function(e,n,r,i){for(var o,a,s;n=n.__;)if((o=n.__c)&&!o.__)try{if((a=o.constructor)&&a.getDerivedStateFromError!=null&&(o.setState(a.getDerivedStateFromError(e)),s=o.__d),o.componentDidCatch!=null&&(o.componentDidCatch(e,i||{}),s=o.__d),s)return o.__E=o}catch(u){e=u}throw e}},pi=0,gi=function(e){return e!=null&&e.constructor===void 0},we.prototype.setState=function(e,n){var r;r=this.__s!=null&&this.__s!=this.state?this.__s:this.__s=yt({},this.state),typeof e=="function"&&(e=e(yt({},r),this.props)),e&&yt(r,e),e!=null&&this.__v&&(n&&this._sb.push(n),dr(this))},we.prototype.forceUpdate=function(e){this.__v&&(this.__e=!0,e&&this.__h.push(e),dr(this))},we.prototype.render=Ue,zt=[],yi=typeof Promise=="function"?Promise.prototype.then.bind(Promise.resolve()):setTimeout,_i=function(e,n){return e.__v.__b-n.__v.__b},ze.__r=0,We=Math.random().toString(8),xe="__d"+We,ne="__a"+We,vi=/(PointerCapture)$|Capture$/i,Tn=0,dn=gr(!1),pn=gr(!0);function yr(e,n){(n==null||n>e.length)&&(n=e.length);for(var r=0,i=Array(n);r"u")){var i=document.head||document.getElementsByTagName("head")[0],o=document.createElement("style");o.type="text/css",r==="top"&&i.firstChild?i.insertBefore(o,i.firstChild):i.appendChild(o),o.styleSheet?o.styleSheet.cssText=e:o.appendChild(document.createTextNode(e))}}var lf=`.float-tooltip-kap { position: absolute; width: max-content; /* prevent shrinking near right edge */ max-width: max(50%, 150px); padding: 3px 5px; border-radius: 3px; font: 12px sans-serif; color: #eee; background: rgba(0,0,0,0.6); pointer-events: none; } `;uf(lf);var ff=Sn({props:{content:{default:!1},offsetX:{triggerUpdate:!1},offsetY:{triggerUpdate:!1}},init:function(n,r){var i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},o=i.style,a=o===void 0?{}:o,s=!!n&&Re(n)==="object"&&!!n.node&&typeof n.node=="function",u=st(s?n.node():n);u.style("position")==="static"&&u.style("position","relative"),r.tooltipEl=u.append("div").attr("class","float-tooltip-kap"),Object.entries(a).forEach(function(l){var d=ef(l,2),c=d[0],h=d[1];return r.tooltipEl.style(c,h)}),r.tooltipEl.style("left","-10000px").style("display","none");var f="tooltip-".concat(Math.round(Math.random()*1e12));r.mouseInside=!1,u.on("mousemove.".concat(f),function(l){r.mouseInside=!0;var d=gt(l),c=u.node(),h=c.offsetWidth,g=c.offsetHeight,y=[r.offsetX===null||r.offsetX===void 0?"-".concat(d[0]/h*100,"%"):typeof r.offsetX=="number"?"calc(-50% + ".concat(r.offsetX,"px)"):r.offsetX,r.offsetY===null||r.offsetY===void 0?g>130&&g-d[1]<100?"calc(-100% - 6px)":"21px":typeof r.offsetY=="number"?r.offsetY<0?"calc(-100% - ".concat(Math.abs(r.offsetY),"px)"):"".concat(r.offsetY,"px"):r.offsetY];r.tooltipEl.style("left",d[0]+"px").style("top",d[1]+"px").style("transform","translate(".concat(y.join(","),")")),r.content&&r.tooltipEl.style("display","inline")}),u.on("mouseover.".concat(f),function(){r.mouseInside=!0,r.content&&r.tooltipEl.style("display","inline")}),u.on("mouseout.".concat(f),function(){r.mouseInside=!1,r.tooltipEl.style("display","none")})},update:function(n){n.tooltipEl.style("display",n.content&&n.mouseInside?"inline":"none"),n.content?n.content instanceof HTMLElement?(n.tooltipEl.text(""),n.tooltipEl.append(function(){return n.content})):typeof n.content=="string"?n.tooltipEl.html(n.content):af(n.content)?(n.tooltipEl.text(""),sf(n.content,n.tooltipEl.node())):(n.tooltipEl.style("display","none"),console.warn("Tooltip content is invalid, skipping.",n.content,n.content.toString())):n.tooltipEl.text("")}});function cf(e,n,r){var i,o=1;e==null&&(e=0),n==null&&(n=0),r==null&&(r=0);function a(){var s,u=i.length,f,l=0,d=0,c=0;for(s=0;s=(f=(s+u)/2))?s=f:u=f,i=o,!(o=o[c=+d]))return i[c]=a,e;if(l=+e._x.call(null,o.data),n===l)return a.next=o,i?i[c]=a:e._root=a,e;do i=i?i[c]=new Array(2):e._root=new Array(2),(d=n>=(f=(s+u)/2))?s=f:u=f;while((c=+d)==(h=+(l>=f)));return i[h]=o,i[c]=a,e}function df(e){Array.isArray(e)||(e=Array.from(e));const n=e.length,r=new Float64Array(n);let i=1/0,o=-1/0;for(let a=0,s;ao&&(o=s));if(i>o)return this;this.cover(i).cover(o);for(let a=0;ae||e>=r;)switch(s=+(es||(a=l.x1)=c))&&(l=u[u.length-1],u[u.length-1]=u[u.length-1-d],u[u.length-1-d]=l)}else{var h=Math.abs(e-+this._x.call(null,f.data));h=(l=(s+u)/2))?s=l:u=l,n=r,!(r=r[c=+d]))return this;if(!r.length)break;n[c+1&1]&&(i=n,h=c)}for(;r.data!==e;)if(o=r,!(r=r.next))return this;return(a=r.next)&&delete r.next,o?(a?o.next=a:delete o.next,this):n?(a?n[c]=a:delete n[c],(r=n[0]||n[1])&&r===(n[1]||n[0])&&!r.length&&(i?i[h]=r:this._root=r),this):(this._root=a,this)}function mf(e){for(var n=0,r=e.length;n=(c=(u+l)/2))?u=c:l=c,(v=r>=(h=(f+d)/2))?f=h:d=h,o=a,!(a=a[p=v<<1|x]))return o[p]=s,e;if(g=+e._x.call(null,a.data),y=+e._y.call(null,a.data),n===g&&r===y)return s.next=a,o?o[p]=s:e._root=s,e;do o=o?o[p]=new Array(4):e._root=new Array(4),(x=n>=(c=(u+l)/2))?u=c:l=c,(v=r>=(h=(f+d)/2))?f=h:d=h;while((p=v<<1|x)===(_=(y>=h)<<1|g>=c));return o[_]=a,o[p]=s,e}function Tf(e){var n,r,i=e.length,o,a,s=new Array(i),u=new Array(i),f=1/0,l=1/0,d=-1/0,c=-1/0;for(r=0;rd&&(d=o),ac&&(c=a));if(f>d||l>c)return this;for(this.cover(f,l).cover(d,c),r=0;re||e>=o||i>n||n>=a;)switch(l=(nd||(u=y.y0)>c||(f=y.x1)=p)<<1|e>=v)&&(y=h[h.length-1],h[h.length-1]=h[h.length-1-x],h[h.length-1-x]=y)}else{var _=e-+this._x.call(null,g.data),k=n-+this._y.call(null,g.data),w=_*_+k*k;if(w=(h=(s+f)/2))?s=h:f=h,(x=c>=(g=(u+l)/2))?u=g:l=g,n=r,!(r=r[v=x<<1|y]))return this;if(!r.length)break;(n[v+1&3]||n[v+2&3]||n[v+3&3])&&(i=n,p=v)}for(;r.data!==e;)if(o=r,!(r=r.next))return this;return(a=r.next)&&delete r.next,o?(a?o.next=a:delete o.next,this):n?(a?n[v]=a:delete n[v],(r=n[0]||n[1]||n[2]||n[3])&&r===(n[3]||n[2]||n[1]||n[0])&&!r.length&&(i?i[p]=r:this._root=r),this):(this._root=a,this)}function Rf(e){for(var n=0,r=e.length;n=(y=(f+c)/2))?f=y:c=y,(m=r>=(x=(l+h)/2))?l=x:h=x,(A=i>=(v=(d+g)/2))?d=v:g=v,a=s,!(s=s[S=A<<2|m<<1|w]))return a[S]=u,e;if(p=+e._x.call(null,s.data),_=+e._y.call(null,s.data),k=+e._z.call(null,s.data),n===p&&r===_&&i===k)return u.next=s,a?a[S]=u:e._root=u,e;do a=a?a[S]=new Array(8):e._root=new Array(8),(w=n>=(y=(f+c)/2))?f=y:c=y,(m=r>=(x=(l+h)/2))?l=x:h=x,(A=i>=(v=(d+g)/2))?d=v:g=v;while((S=A<<2|m<<1|w)===(T=(k>=v)<<2|(_>=x)<<1|p>=y));return a[T]=s,a[S]=u,e}function Hf(e){Array.isArray(e)||(e=Array.from(e));const n=e.length,r=new Float64Array(n),i=new Float64Array(n),o=new Float64Array(n);let a=1/0,s=1/0,u=1/0,f=-1/0,l=-1/0,d=-1/0;for(let c=0,h,g,y,x;cf&&(f=g),yl&&(l=y),xd&&(d=x));if(a>f||s>l||u>d)return this;this.cover(a,s,u).cover(f,l,d);for(let c=0;ce||e>=s||o>n||n>=u||a>r||r>=f;)switch(h=(ry||(l=k.y0)>x||(d=k.z0)>v||(c=k.x1)=S)<<2|(n>=A)<<1|e>=m)&&(k=p[p.length-1],p[p.length-1]=p[p.length-1-w],p[p.length-1-w]=k)}else{var T=e-+this._x.call(null,_.data),z=n-+this._y.call(null,_.data),P=r-+this._z.call(null,_.data),N=T*T+z*z+P*P;if(NMath.sqrt((e-i)**2+(n-o)**2+(r-a)**2);function Yf(e,n,r,i){const o=[],a=e-i,s=n-i,u=r-i,f=e+i,l=n+i,d=r+i;return this.visit((c,h,g,y,x,v,p)=>{if(!c.length)do{const _=c.data;Xf(e,n,r,this._x(_),this._y(_),this._z(_))<=i&&o.push(_)}while(c=c.next);return h>f||g>l||y>d||x=(x=(s+l)/2))?s=x:l=x,(k=g>=(v=(u+d)/2))?u=v:d=v,(w=y>=(p=(f+c)/2))?f=p:c=p,n=r,!(r=r[m=w<<2|k<<1|_]))return this;if(!r.length)break;(n[m+1&7]||n[m+2&7]||n[m+3&7]||n[m+4&7]||n[m+5&7]||n[m+6&7]||n[m+7&7])&&(i=n,A=m)}for(;r.data!==e;)if(o=r,!(r=r.next))return this;return(a=r.next)&&delete r.next,o?(a?o.next=a:delete o.next,this):n?(a?n[m]=a:delete n[m],(r=n[0]||n[1]||n[2]||n[3]||n[4]||n[5]||n[6]||n[7])&&r===(n[7]||n[6]||n[5]||n[4]||n[3]||n[2]||n[1]||n[0])&&!r.length&&(i?i[A]=r:this._root=r),this):(this._root=a,this)}function Kf(e){for(var n=0,r=e.length;n1&&(z=S.y+S.vy-A.y-A.vy||Ct(d)),u>2&&(P=S.z+S.vz-A.z-A.vz||Ct(d)),N=Math.sqrt(T*T+z*z+P*P),N=(N-a[w])/N*p*i[w],T*=N,z*=N,P*=N,S.vx-=T*(I=l[w]),u>1&&(S.vy-=z*I),u>2&&(S.vz-=P*I),A.vx+=T*(I=1-I),u>1&&(A.vy+=z*I),u>2&&(A.vz+=P*I)}function y(){if(s){var p,_=s.length,k=e.length,w=new Map(s.map((A,S)=>[n(A,S,s),A])),m;for(p=0,f=new Array(_);ptypeof k=="function")||Math.random,u=_.find(k=>[1,2,3].includes(k))||2,y()},g.links=function(p){return arguments.length?(e=p,y(),g):e},g.id=function(p){return arguments.length?(n=p,g):n},g.iterations=function(p){return arguments.length?(c=+p,g):c},g.strength=function(p){return arguments.length?(r=typeof p=="function"?p:Tt(+p),x(),g):r},g.distance=function(p){return arguments.length?(o=typeof p=="function"?p:Tt(+p),v(),g):o},g}const fc=1664525,cc=1013904223,wr=4294967296;function hc(){let e=1;return()=>(e=(fc*e+cc)%wr)/wr}var kr=3;function Be(e){return e.x}function Ar(e){return e.y}function dc(e){return e.z}var pc=10,gc=Math.PI*(3-Math.sqrt(5)),yc=Math.PI*20/(9+Math.sqrt(221));function _c(e,n){n=n||2;var r=Math.min(kr,Math.max(1,Math.round(n))),i,o=1,a=.001,s=1-Math.pow(a,1/300),u=0,f=.6,l=new Map,d=wn(g),c=fe("tick","end"),h=hc();e==null&&(e=[]);function g(){y(),c.call("tick",i),o1&&(w.fy==null?w.y+=w.vy*=f:(w.y=w.fy,w.vy=0)),r>2&&(w.fz==null?w.z+=w.vz*=f:(w.z=w.fz,w.vz=0));return i}function x(){for(var p=0,_=e.length,k;p<_;++p){if(k=e[p],k.index=p,k.fx!=null&&(k.x=k.fx),k.fy!=null&&(k.y=k.fy),k.fz!=null&&(k.z=k.fz),isNaN(k.x)||r>1&&isNaN(k.y)||r>2&&isNaN(k.z)){var w=pc*(r>2?Math.cbrt(.5+p):r>1?Math.sqrt(.5+p):p),m=p*gc,A=p*yc;r===1?k.x=w:r===2?(k.x=w*Math.cos(m),k.y=w*Math.sin(m)):(k.x=w*Math.sin(m)*Math.cos(A),k.y=w*Math.cos(m),k.z=w*Math.sin(m)*Math.sin(A))}(isNaN(k.vx)||r>1&&isNaN(k.vy)||r>2&&isNaN(k.vz))&&(k.vx=0,r>1&&(k.vy=0),r>2&&(k.vz=0))}}function v(p){return p.initialize&&p.initialize(e,h,r),p}return x(),i={tick:y,restart:function(){return d.restart(g),i},stop:function(){return d.stop(),i},numDimensions:function(p){return arguments.length?(r=Math.min(kr,Math.max(1,Math.round(p))),l.forEach(v),i):r},nodes:function(p){return arguments.length?(e=p,x(),l.forEach(v),i):e},alpha:function(p){return arguments.length?(o=+p,i):o},alphaMin:function(p){return arguments.length?(a=+p,i):a},alphaDecay:function(p){return arguments.length?(s=+p,i):+s},alphaTarget:function(p){return arguments.length?(u=+p,i):u},velocityDecay:function(p){return arguments.length?(f=1-p,i):1-f},randomSource:function(p){return arguments.length?(h=p,l.forEach(v),i):h},force:function(p,_){return arguments.length>1?(_==null?l.delete(p):l.set(p,v(_)),i):l.get(p)},find:function(){var p=Array.prototype.slice.call(arguments),_=p.shift()||0,k=(r>1?p.shift():null)||0,w=(r>2?p.shift():null)||0,m=p.shift()||1/0,A=0,S=e.length,T,z,P,N,I,U;for(m*=m,A=0;A1?(c.on(p,_),i):c.on(p)}}}function vc(){var e,n,r,i,o,a=Tt(-30),s,u=1,f=1/0,l=.81;function d(y){var x,v=e.length,p=(n===1?Mi(e,Be):n===2?Oi(e,Be,Ar):n===3?zi(e,Be,Ar,dc):null).visitAfter(h);for(o=y,x=0;x1&&(y.y=w/_),n>2&&(y.z=m/_)}else{v=y,v.x=v.data.x,n>1&&(v.y=v.data.y),n>2&&(v.z=v.data.z);do x+=s[v.data.index];while(v=v.next)}y.value=x}function g(y,x,v,p,_){if(!y.value)return!0;var k=[v,p,_][n-1],w=y.x-r.x,m=n>1?y.y-r.y:0,A=n>2?y.z-r.z:0,S=k-x,T=w*w+m*m+A*A;if(S*S/l1&&m===0&&(m=Ct(i),T+=m*m),n>2&&A===0&&(A=Ct(i),T+=A*A),T1&&(r.vy+=m*y.value*o/T),n>2&&(r.vz+=A*y.value*o/T)),!0;if(y.length||T>=f)return;(y.data!==r||y.next)&&(w===0&&(w=Ct(i),T+=w*w),n>1&&m===0&&(m=Ct(i),T+=m*m),n>2&&A===0&&(A=Ct(i),T+=A*A),T1&&(r.vy+=m*S),n>2&&(r.vz+=A*S));while(y=y.next)}return d.initialize=function(y,...x){e=y,i=x.find(v=>typeof v=="function")||Math.random,n=x.find(v=>[1,2,3].includes(v))||2,c()},d.strength=function(y){return arguments.length?(a=typeof y=="function"?y:Tt(+y),c(),d):a},d.distanceMin=function(y){return arguments.length?(u=y*y,d):Math.sqrt(u)},d.distanceMax=function(y){return arguments.length?(f=y*y,d):Math.sqrt(f)},d.theta=function(y){return arguments.length?(l=y*y,d):Math.sqrt(l)},d}function mc(e,n,r,i){var o,a,s=Tt(.1),u,f;typeof e!="function"&&(e=Tt(+e)),n==null&&(n=0),r==null&&(r=0),i==null&&(i=0);function l(c){for(var h=0,g=o.length;h1&&(y.vy+=v*k),a>2&&(y.vz+=p*k)}}function d(){if(o){var c,h=o.length;for(u=new Array(h),f=new Array(h),c=0;c[1,2,3].includes(g))||2,d()},l.strength=function(c){return arguments.length?(s=typeof c=="function"?c:Tt(+c),d(),l):s},l.radius=function(c){return arguments.length?(e=typeof c=="function"?c:Tt(+c),d(),l):e},l.x=function(c){return arguments.length?(n=+c,l):n},l.y=function(c){return arguments.length?(r=+c,l):r},l.z=function(c){return arguments.length?(i=+c,l):i},l}const{abs:Wt,cos:At,sin:jt,acos:bc,atan2:Bt,sqrt:Ot,pow:at}=Math;function Xt(e){return e<0?-at(-e,1/3):at(e,1/3)}const Ri=Math.PI,ye=2*Ri,Et=Ri/2,xc=1e-6,Xe=Number.MAX_SAFE_INTEGER||9007199254740991,Ye=Number.MIN_SAFE_INTEGER||-9007199254740991,wc={x:0,y:0,z:0},O={Tvalues:[-.06405689286260563,.06405689286260563,-.1911188674736163,.1911188674736163,-.3150426796961634,.3150426796961634,-.4337935076260451,.4337935076260451,-.5454214713888396,.5454214713888396,-.6480936519369755,.6480936519369755,-.7401241915785544,.7401241915785544,-.820001985973903,.820001985973903,-.8864155270044011,.8864155270044011,-.9382745520027328,.9382745520027328,-.9747285559713095,.9747285559713095,-.9951872199970213,.9951872199970213],Cvalues:[.12793819534675216,.12793819534675216,.1258374563468283,.1258374563468283,.12167047292780339,.12167047292780339,.1155056680537256,.1155056680537256,.10744427011596563,.10744427011596563,.09761865210411388,.09761865210411388,.08619016153195327,.08619016153195327,.0733464814110803,.0733464814110803,.05929858491543678,.05929858491543678,.04427743881741981,.04427743881741981,.028531388628933663,.028531388628933663,.0123412297999872,.0123412297999872],arcfn:function(e,n){const r=n(e);let i=r.x*r.x+r.y*r.y;return typeof r.z<"u"&&(i+=r.z*r.z),Ot(i)},compute:function(e,n,r){if(e===0)return n[0].t=0,n[0];const i=n.length-1;if(e===1)return n[i].t=1,n[i];const o=1-e;let a=n;if(i===0)return n[0].t=e,n[0];if(i===1){const u={x:o*a[0].x+e*a[1].x,y:o*a[0].y+e*a[1].y,t:e};return r&&(u.z=o*a[0].z+e*a[1].z),u}if(i<4){let u=o*o,f=e*e,l,d,c,h=0;i===2?(a=[a[0],a[1],a[2],wc],l=u,d=o*e*2,c=f):i===3&&(l=u*o,d=u*e*3,c=o*f*3,h=e*f);const g={x:l*a[0].x+d*a[1].x+c*a[2].x+h*a[3].x,y:l*a[0].y+d*a[1].y+c*a[2].y+h*a[3].y,t:e};return r&&(g.z=l*a[0].z+d*a[1].z+c*a[2].z+h*a[3].z),g}const s=JSON.parse(JSON.stringify(n));for(;s.length>1;){for(let u=0;u1;o--,a--){const s=[];for(let u=0,f;u"u")e=.5;else if(e===0||e===1)return e;const r=at(e,n)+at(1-e,n),i=r-1;return Wt(i/r)},projectionratio:function(e,n){if(n!==2&&n!==3)return!1;if(typeof e>"u")e=.5;else if(e===0||e===1)return e;const r=at(1-e,n),i=at(e,n)+r;return r/i},lli8:function(e,n,r,i,o,a,s,u){const f=(e*i-n*r)*(o-s)-(e-r)*(o*u-a*s),l=(e*i-n*r)*(a-u)-(n-i)*(o*u-a*s),d=(e-r)*(a-u)-(n-i)*(o-s);return d==0?!1:{x:f/d,y:l/d}},lli4:function(e,n,r,i){const o=e.x,a=e.y,s=n.x,u=n.y,f=r.x,l=r.y,d=i.x,c=i.y;return O.lli8(o,a,s,u,f,l,d,c)},lli:function(e,n){return O.lli4(e,e.c,n,n.c)},makeline:function(e,n){return new W(e.x,e.y,(e.x+n.x)/2,(e.y+n.y)/2,n.x,n.y)},findbbox:function(e){let n=Xe,r=Xe,i=Ye,o=Ye;return e.forEach(function(a){const s=a.bbox();n>s.x.min&&(n=s.x.min),r>s.y.min&&(r=s.y.min),i0&&(d.c1=f,d.c2=l,d.s1=e,d.s2=r,a.push(d))})}),a},makeshape:function(e,n,r){const i=n.points.length,o=e.points.length,a=O.makeline(n.points[i-1],e.points[0]),s=O.makeline(e.points[o-1],n.points[0]),u={startcap:a,forward:e,back:n,endcap:s,bbox:O.findbbox([a,e,n,s])};return u.intersections=function(f){return O.shapeintersections(u,u.bbox,f,f.bbox,r)},u},getminmax:function(e,n,r){if(!r)return{min:0,max:0};let i=Xe,o=Ye,a,s;r.indexOf(0)===-1&&(r=[0].concat(r)),r.indexOf(1)===-1&&r.push(1);for(let u=0,f=r.length;uo&&(o=s[n]);return{min:i,mid:(i+o)/2,max:o,size:o-i}},align:function(e,n){const r=n.p1.x,i=n.p1.y,o=-Bt(n.p2.y-i,n.p2.x-r),a=function(s){return{x:(s.x-r)*At(o)-(s.y-i)*jt(o),y:(s.x-r)*jt(o)+(s.y-i)*At(o)}};return e.map(a)},roots:function(e,n){n=n||{p1:{x:0,y:0},p2:{x:1,y:0}};const r=e.length-1,i=O.align(e,n),o=function(S){return 0<=S&&S<=1};if(r===2){const S=i[0].y,T=i[1].y,z=i[2].y,P=S-2*T+z;if(P!==0){const N=-Ot(T*T-S*z),I=-S+T,U=-(N+I)/P,C=-(-N+I)/P;return[U,C].filter(o)}else if(T!==z&&P===0)return[(2*T-z)/(2*T-2*z)].filter(o);return[]}const a=i[0].y,s=i[1].y,u=i[2].y,f=i[3].y;let l=-a+3*s-3*u+f,d=3*a-6*s+3*u,c=-3*a+3*s,h=a;if(O.approximately(l,0)){if(O.approximately(d,0))return O.approximately(c,0)?[]:[-h/c].filter(o);const S=Ot(c*c-4*d*h),T=2*d;return[(S-c)/T,(-c-S)/T].filter(o)}d/=l,c/=l,h/=l;const g=(3*c-d*d)/3,y=g/3,x=(2*d*d*d-9*d*c+27*h)/27,v=x/2,p=v*v+y*y*y;let _,k,w,m,A;if(p<0){const S=-g/3,T=S*S*S,z=Ot(T),P=-x/(2*z),N=P<-1?-1:P>1?1:P,I=bc(N),U=Xt(z),C=2*U;return w=C*At(I/3)-d/3,m=C*At((I+ye)/3)-d/3,A=C*At((I+2*ye)/3)-d/3,[w,m,A].filter(o)}else{if(p===0)return _=v<0?Xt(-v):-Xt(v),w=2*_-d/3,m=-_-d/3,[w,m].filter(o);{const S=Ot(p);return _=Xt(-v+S),k=Xt(v+S),[_-k-d/3].filter(o)}}},droots:function(e){if(e.length===3){const n=e[0],r=e[1],i=e[2],o=n-2*r+i;if(o!==0){const a=-Ot(r*r-n*i),s=-n+r,u=-(a+s)/o,f=-(-a+s)/o;return[u,f]}else if(r!==i&&o===0)return[(2*r-i)/(2*(r-i))];return[]}if(e.length===2){const n=e[0],r=e[1];return n!==r?[n/(n-r)]:[]}return[]},curvature:function(e,n,r,i,o){let a,s,u,f,l=0,d=0;const c=O.compute(e,n),h=O.compute(e,r),g=c.x*c.x+c.y*c.y;if(i?(a=Ot(at(c.y*h.z-h.y*c.z,2)+at(c.z*h.x-h.z*c.x,2)+at(c.x*h.y-h.x*c.y,2)),s=at(g+c.z*c.z,3/2)):(a=c.x*h.y-c.y*h.x,s=at(g,3/2)),a===0||s===0)return{k:0,r:0};if(l=a/s,d=s/a,!o){const y=O.curvature(e-.001,n,r,i,!0).k,x=O.curvature(e+.001,n,r,i,!0).k;f=(x-l+(l-y))/2,u=(Wt(x-l)+Wt(l-y))/2}return{k:l,r:d,dk:f,adk:u}},inflections:function(e){if(e.length<4)return[];const n=O.align(e,{p1:e[0],p2:e.slice(-1)[0]}),r=n[2].x*n[1].y,i=n[3].x*n[1].y,o=n[1].x*n[2].y,a=n[3].x*n[2].y,s=18*(-3*r+2*i+3*o-a),u=18*(3*r-i-3*o),f=18*(o-r);if(O.approximately(s,0)){if(!O.approximately(u,0)){let h=-f/u;if(0<=h&&h<=1)return[h]}return[]}const l=2*s;if(O.approximately(l,0))return[];const d=u*u-4*s*f;if(d<0)return[];const c=Math.sqrt(d);return[(c-u)/l,-(u+c)/l].filter(function(h){return 0<=h&&h<=1})},bboxoverlap:function(e,n){const r=["x","y"],i=r.length;for(let o=0,a,s,u,f;o=f)return!1;return!0},expandbox:function(e,n){n.x.mine.x.max&&(e.x.max=n.x.max),n.y.max>e.y.max&&(e.y.max=n.y.max),n.z&&n.z.max>e.z.max&&(e.z.max=n.z.max),e.x.mid=(e.x.min+e.x.max)/2,e.y.mid=(e.y.min+e.y.max)/2,e.z&&(e.z.mid=(e.z.min+e.z.max)/2),e.x.size=e.x.max-e.x.min,e.y.size=e.y.max-e.y.min,e.z&&(e.z.size=e.z.max-e.z.min)},pairiteration:function(e,n,r){const i=e.bbox(),o=n.bbox(),a=1e5,s=r||.5;if(i.x.size+i.y.sizeA||A>S)&&(m+=ye),m>S&&(T=S,S=m,m=T)):S4){if(arguments.length!==1)throw new Error("Only new Bezier(point[]) is accepted for 4th and higher order curves");o=!0}}else if(a!==6&&a!==8&&a!==9&&a!==12&&arguments.length!==1)throw new Error("Only new Bezier(point[]) is accepted for 4th and higher order curves");const s=this._3d=!o&&(a===9||a===12)||n&&n[0]&&typeof n[0].z<"u",u=this.points=[];for(let g=0,y=s?3:2;gg+Yt(y.y),0)"u"&&(o=.5),o===0)return new W(r,r,i);if(o===1)return new W(n,r,r);const a=W.getABC(2,n,r,i,o);return new W(n,a.A,i)}static cubicFromPoints(n,r,i,o,a){typeof o>"u"&&(o=.5);const s=W.getABC(3,n,r,i,o);typeof a>"u"&&(a=O.dist(r,s.C));const u=a*(1-o)/o,f=O.dist(n,i),l=(i.x-n.x)/f,d=(i.y-n.y)/f,c=a*l,h=a*d,g=u*l,y=u*d,x={x:r.x-c,y:r.y-h},v={x:r.x+g,y:r.y+y},p=s.A,_={x:p.x+(x.x-p.x)/(1-o),y:p.y+(x.y-p.y)/(1-o)},k={x:p.x+(v.x-p.x)/o,y:p.y+(v.y-p.y)/o},w={x:n.x+(_.x-n.x)/o,y:n.y+(_.y-n.y)/o},m={x:i.x+(k.x-i.x)/(1-o),y:i.y+(k.y-i.y)/(1-o)};return new W(n,w,m,i)}static getUtils(){return O}getUtils(){return W.getUtils()}static get PolyBezier(){return ie}valueOf(){return this.toString()}toString(){return O.pointsToString(this.points)}toSVG(){if(this._3d)return!1;const n=this.points,r=n[0].x,i=n[0].y,o=["M",r,i,this.order===2?"Q":"C"];for(let a=1,s=n.length;a0}length(){return O.length(this.derivative.bind(this))}static getABC(n=2,r,i,o,a=.5){const s=O.projectionratio(a,n),u=1-s,f={x:s*r.x+u*o.x,y:s*r.y+u*o.y},l=O.abcratio(a,n);return{A:{x:i.x+(i.x-f.x)/l,y:i.y+(i.y-f.y)/l},B:i,C:f,S:r,E:o}}getABC(n,r){r=r||this.get(n);let i=this.points[0],o=this.points[this.order];return W.getABC(this.order,i,r,o,n)}getLUT(n){if(this.verify(),n=n||100,this._lut.length===n+1)return this._lut;this._lut=[],n++,this._lut=[];for(let r=0,i,o;r1?1:c,h=this.compute(c),h.t=c,h.d=l,h}get(n){return this.compute(n)}point(n){return this.points[n]}compute(n){return this.ratios?O.computeWithRatios(n,this.points,this.ratios,this._3d):O.compute(n,this.points,this._3d,this.ratios)}raise(){const n=this.points,r=[n[0]],i=n.length;for(let o=1,a,s;o1;){i=[];for(let s=0,u,f=r.length-1;s=0&&s<=1}),r=r.concat(n[i].sort(O.numberSort))}).bind(this)),n.values=r.sort(O.numberSort).filter(function(i,o){return r.indexOf(i)===o}),n}bbox(){const n=this.extrema(),r={};return this.dims.forEach((function(i){r[i]=O.getminmax(this,i,n[i])}).bind(this)),r}overlaps(n){const r=this.bbox(),i=n.bbox();return O.bboxoverlap(r,i)}offset(n,r){if(typeof r<"u"){const i=this.get(n),o=this.normal(n),a={c:i,n:o,x:i.x+o.x*r,y:i.y+o.y*r};return this._3d&&(a.z=i.z+o.z*r),a}if(this._linear){const i=this.normal(0),o=this.points.map(function(a){const s={x:a.x+n*i.x,y:a.y+n*i.y};return a.z&&i.z&&(s.z=a.z+n*i.z),s});return[new W(o)]}return this.reduce().map(function(i){return i._linear?i.offset(n)[0]:i.scale(n)})}simple(){if(this.order===3){const o=O.angle(this.points[0],this.points[3],this.points[1]),a=O.angle(this.points[0],this.points[3],this.points[2]);if(o>0&&a<0||o<0&&a>0)return!1}const n=this.normal(0),r=this.normal(1);let i=n.x*r.x+n.y*r.y;return this._3d&&(i+=n.z*r.z),Yt(Cc(i))(1-u/o)*r+u/o*i);return new W(this.points.map((s,u)=>({x:s.x+n.x*a[u],y:s.y+n.y*a[u]})))}scale(n){const r=this.order;let i=!1;if(typeof n=="function"&&(i=n),i&&r===2)return this.raise().scale(i);const o=this.clockwise,a=this.points;if(this._linear)return this.translate(this.normal(0),i?i(0):n,i?i(1):n);const s=i?i(0):n,u=i?i(1):n,f=[this.offset(0,10),this.offset(1,10)],l=[],d=O.lli4(f[0],f[0].c,f[1],f[1].c);if(!d)throw new Error("cannot scale this curve. Try reducing it first.");return[0,1].forEach(function(c){const h=l[c*r]=O.copy(a[c*r]);h.x+=(c?u:s)*f[c].n.x,h.y+=(c?u:s)*f[c].n.y}),i?([0,1].forEach(function(c){if(!(r===2&&c)){var h=a[c+1],g={x:h.x-d.x,y:h.y-d.y},y=i?i((c+1)/r):n;i&&!o&&(y=-y);var x=Zt(g.x*g.x+g.y*g.y);g.x/=x,g.y/=x,l[c+1]={x:h.x+y*g.x,y:h.y+y*g.y}}}),new W(l)):([0,1].forEach(c=>{if(r===2&&c)return;const h=l[c*r],g=this.derivative(c),y={x:h.x+g.x,y:h.y+g.y};l[c+1]=O.lli4(h,y,d,a[c+1])}),new W(l))}outline(n,r,i,o){if(r=r===void 0?n:r,this._linear){const m=this.normal(0),A=this.points[0],S=this.points[this.points.length-1];let T,z,P;i===void 0&&(i=n,o=r),T={x:A.x+m.x*n,y:A.y+m.y*n},P={x:S.x+m.x*i,y:S.y+m.y*i},z={x:(T.x+P.x)/2,y:(T.y+P.y)/2};const N=[T,z,P];T={x:A.x-m.x*r,y:A.y-m.y*r},P={x:S.x-m.x*o,y:S.y-m.y*o},z={x:(T.x+P.x)/2,y:(T.y+P.y)/2};const I=[P,z,T],U=O.makeline(I[2],N[0]),C=O.makeline(N[2],I[0]),E=[U,new W(N),C,new W(I)];return new ie(E)}const a=this.reduce(),s=a.length,u=[];let f=[],l,d=0,c=this.length();const h=typeof i<"u"&&typeof o<"u";function g(m,A,S,T,z){return function(P){const N=T/S,I=(T+z)/S,U=A-m;return O.map(P,0,1,m+N*U,m+I*U)}}a.forEach(function(m){const A=m.length();h?(u.push(m.scale(g(n,i,c,d,A))),f.push(m.scale(g(-r,-o,c,d,A)))):(u.push(m.scale(n)),f.push(m.scale(-r))),d+=A}),f=f.map(function(m){return l=m.points,l[3]?m.points=[l[3],l[2],l[1],l[0]]:m.points=[l[2],l[1],l[0]],m}).reverse();const y=u[0].points[0],x=u[s-1].points[u[s-1].points.length-1],v=f[s-1].points[f[s-1].points.length-1],p=f[0].points[0],_=O.makeline(v,y),k=O.makeline(x,p),w=[_].concat(u).concat([k]).concat(f);return new ie(w)}outlineshapes(n,r,i){r=r||n;const o=this.outline(n,r).curves,a=[];for(let s=1,u=o.length;s1,f.endcap.virtual=s{var u=this.get(s);return O.between(u.x,r,o)&&O.between(u.y,i,a)})}selfintersects(n){const r=this.reduce(),i=r.length-2,o=[];for(let a=0,s,u,f;a0&&(a=a.concat(u))}),a}arcs(n){return n=n||.5,this._iterate(n,[])}_error(n,r,i,o){const a=(o-i)/4,s=this.get(i+a),u=this.get(o-a),f=O.dist(n,r),l=O.dist(n,s),d=O.dist(n,u);return Yt(l-f)+Yt(d-f)}_iterate(n,r){let i=0,o=1,a;do{a=0,o=1;let s=this.get(i),u,f,l,d,c=!1,h=!1,g,y=o,x=1;do if(h=c,d=l,y=(i+o)/2,u=this.get(y),f=this.get(o),l=O.getccenter(s,u,f),l.interval={start:i,end:o},c=this._error(l,s,i,o)<=n,g=h&&!c,g||(x=o),c){if(o>=1){if(l.interval.end=x=1,d=l,o>1){let p={x:l.x+l.r*kc(l.e),y:l.y+l.r*Ac(l.e)};l.e+=O.angle({x:l.x,y:l.y},p,this.get(1))}break}o=o+(o-i)/2}else o=y;while(!g&&a++<100);if(a>=100)break;d=d||l,r.push(d),i=x}while(o<1);return r}}function yn(e,n){(n==null||n>e.length)&&(n=e.length);for(var r=0,i=Array(n);r0&&arguments[0]!==void 0?arguments[0]:[],n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1,o=(n instanceof Array?n.length?n:[void 0]:[n]).map(function(u){return{keyAccessor:u,isProp:!(u instanceof Function)}}),a=e.reduce(function(u,f){var l=u,d=f;return o.forEach(function(c,h){var g=c.keyAccessor,y=c.isProp,x;if(y){var v=d,p=v[g],_=Rc(v,[g].map($c));x=p,d=_}else x=g(d,h);h+11&&arguments[1]!==void 0?arguments[1]:1;l===o.length?Object.keys(f).forEach(function(d){return f[d]=r(f[d])}):Object.values(f).forEach(function(d){return u(d,l+1)})})(a);var s=a;return i&&(s=[],(function u(f){var l=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[];l.length===o.length?s.push({keys:l,vals:f}):Object.entries(f).forEach(function(d){var c=Ic(d,2),h=c[0],g=c[1];return u(g,[].concat(Dc(l),[h]))})})(a),n instanceof Array&&n.length===0&&s.length===1&&(s[0].keys=[])),s});function Uc(e){for(var n=e.length/6|0,r=new Array(n),i=0;i"u")){var i=document.head||document.getElementsByTagName("head")[0],o=document.createElement("style");o.type="text/css",r==="top"&&i.firstChild?i.insertBefore(o,i.firstChild):i.appendChild(o),o.styleSheet?o.styleSheet.cssText=e:o.appendChild(document.createTextNode(e))}}var Hc=`.force-graph-container canvas { display: block; user-select: none; outline: none; -webkit-tap-highlight-color: transparent; } .force-graph-container .clickable { cursor: pointer; } .force-graph-container .grabbable { cursor: move; cursor: grab; cursor: -moz-grab; cursor: -webkit-grab; } .force-graph-container .grabbable:active { cursor: grabbing; cursor: -moz-grabbing; cursor: -webkit-grabbing; } `;qc(Hc);function _n(e,n){(n==null||n>e.length)&&(n=e.length);for(var r=0,i=Array(n);r2&&arguments[2]!==void 0?arguments[2]:{},a=o.nodeFilter,s=a===void 0?function(){return!0}:a,u=o.onLoopError,f=u===void 0?function(g){throw"Invalid DAG structure! Found cycle in node path: ".concat(g.join(" -> "),".")}:u,l={};r.forEach(function(g){return l[n(g)]={data:g,out:[],depth:-1,skip:!s(g)}}),i.forEach(function(g){var y=g.source,x=g.target,v=w(y),p=w(x);if(!l.hasOwnProperty(v))throw"Missing source node with id: ".concat(v);if(!l.hasOwnProperty(p))throw"Missing target node with id: ".concat(p);var _=l[v],k=l[p];_.out.push(k);function w(m){return vn(m)==="object"?n(m):m}});var d=[];h(Object.values(l));var c=Object.assign.apply(Object,[{}].concat(ut(Object.entries(l).filter(function(g){var y=oe(g,2),x=y[1];return!x.skip}).map(function(g){var y=oe(g,2),x=y[0],v=y[1];return ue({},x,v.depth)}))));return c;function h(g){for(var y=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],x=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,v=function(){var w=g[p];if(y.indexOf(w)!==-1){var m=[].concat(ut(y.slice(y.indexOf(w))),[w]).map(function(A){return n(A.data)});return d.some(function(A){return A.length===m.length&&A.every(function(S,T){return S===m[T]})})||(d.push(m),f(m)),1}x>w.depth&&(w.depth=x,h(w.out,[].concat(ut(y),[w]),x+(w.skip?0:1)))},p=0,_=g.length;p<_;p++)v()}}var th=2,J=function(n,r){return r.onNeedsRedraw&&r.onNeedsRedraw()},Or=function(n,r){if(!r.isShadow){var i=G(r.linkDirectionalParticles);r.graphData.links.forEach(function(o){var a=Math.round(Math.abs(i(o)));a?o.__photons=ut(Array(a)).map(function(){return{}}):delete o.__photons})}},Ne=Sn({props:{graphData:{default:{nodes:[],links:[]},onChange:function(n,r){r.engineRunning=!1,Or(n,r)}},dagMode:{onChange:function(n,r){!n&&(r.graphData.nodes||[]).forEach(function(i){return i.fx=i.fy=void 0})}},dagLevelDistance:{},dagNodeFilter:{default:function(n){return!0}},onDagError:{triggerUpdate:!1},nodeRelSize:{default:4,triggerUpdate:!1,onChange:J},nodeId:{default:"id"},nodeVal:{default:"val",triggerUpdate:!1,onChange:J},nodeColor:{default:"color",triggerUpdate:!1,onChange:J},nodeAutoColorBy:{},nodeCanvasObject:{triggerUpdate:!1,onChange:J},nodeCanvasObjectMode:{default:function(){return"replace"},triggerUpdate:!1,onChange:J},nodeVisibility:{default:!0,triggerUpdate:!1,onChange:J},linkSource:{default:"source"},linkTarget:{default:"target"},linkVisibility:{default:!0,triggerUpdate:!1,onChange:J},linkColor:{default:"color",triggerUpdate:!1,onChange:J},linkAutoColorBy:{},linkLineDash:{triggerUpdate:!1,onChange:J},linkWidth:{default:1,triggerUpdate:!1,onChange:J},linkCurvature:{default:0,triggerUpdate:!1,onChange:J},linkCanvasObject:{triggerUpdate:!1,onChange:J},linkCanvasObjectMode:{default:function(){return"replace"},triggerUpdate:!1,onChange:J},linkDirectionalArrowLength:{default:0,triggerUpdate:!1,onChange:J},linkDirectionalArrowColor:{triggerUpdate:!1,onChange:J},linkDirectionalArrowRelPos:{default:.5,triggerUpdate:!1,onChange:J},linkDirectionalParticles:{default:0,triggerUpdate:!1,onChange:Or},linkDirectionalParticleSpeed:{default:.01,triggerUpdate:!1},linkDirectionalParticleOffset:{default:0,triggerUpdate:!1},linkDirectionalParticleWidth:{default:4,triggerUpdate:!1},linkDirectionalParticleColor:{triggerUpdate:!1},linkDirectionalParticleCanvasObject:{triggerUpdate:!1},globalScale:{default:1,triggerUpdate:!1},d3AlphaMin:{default:0,triggerUpdate:!1},d3AlphaDecay:{default:.0228,triggerUpdate:!1,onChange:function(n,r){r.forceLayout.alphaDecay(n)}},d3AlphaTarget:{default:0,triggerUpdate:!1,onChange:function(n,r){r.forceLayout.alphaTarget(n)}},d3VelocityDecay:{default:.4,triggerUpdate:!1,onChange:function(n,r){r.forceLayout.velocityDecay(n)}},warmupTicks:{default:0,triggerUpdate:!1},cooldownTicks:{default:1/0,triggerUpdate:!1},cooldownTime:{default:15e3,triggerUpdate:!1},onUpdate:{default:function(){},triggerUpdate:!1},onFinishUpdate:{default:function(){},triggerUpdate:!1},onEngineTick:{default:function(){},triggerUpdate:!1},onEngineStop:{default:function(){},triggerUpdate:!1},onNeedsRedraw:{triggerUpdate:!1},isShadow:{default:!1,triggerUpdate:!1}},methods:{d3Force:function(n,r,i){return i===void 0?n.forceLayout.force(r):(n.forceLayout.force(r,i),this)},d3ReheatSimulation:function(n){return n.forceLayout.alpha(1),this.resetCountdown(),this},resetCountdown:function(n){return n.cntTicks=0,n.startTickTime=new Date,n.engineRunning=!0,this},isEngineRunning:function(n){return!!n.engineRunning},tickFrame:function(n){return!n.isShadow&&r(),o(),!n.isShadow&&a(),!n.isShadow&&s(),i(),this;function r(){n.engineRunning&&(++n.cntTicks>n.cooldownTicks||new Date-n.startTickTime>n.cooldownTime||n.d3AlphaMin>0&&n.forceLayout.alpha()0){var I=Math.atan2(P.y-z.y,P.x-z.x),U=N*T,C={x:(z.x+P.x)/2+U*Math.cos(I-Math.PI/2),y:(z.y+P.y)/2+U*Math.sin(I-Math.PI/2)};S.__controlPoints=[C.x,C.y]}else{var E=T*70;S.__controlPoints=[P.x,P.y-E,P.x+E,P.y]}}}}function a(){var u=1.6,f=.2,l=G(n.linkDirectionalArrowLength),d=G(n.linkDirectionalArrowRelPos),c=G(n.linkVisibility),h=G(n.linkDirectionalArrowColor||n.linkColor),g=G(n.nodeVal),y=n.ctx;y.save(),n.graphData.links.filter(c).forEach(function(x){var v=l(x);if(!(!v||v<0)){var p=x.source,_=x.target;if(!(!p||!_||!p.hasOwnProperty("x")||!_.hasOwnProperty("x"))){var k=Math.sqrt(Math.max(0,g(p)||1))*n.nodeRelSize,w=Math.sqrt(Math.max(0,g(_)||1))*n.nodeRelSize,m=Math.min(1,Math.max(0,d(x))),A=h(x)||"rgba(0,0,0,0.28)",S=v/u/2,T=x.__controlPoints&&Tr(W,[p.x,p.y].concat(ut(x.__controlPoints),[_.x,_.y])),z=T?function(M){return T.get(M)}:function(M){return{x:p.x+(_.x-p.x)*M||0,y:p.y+(_.y-p.y)*M||0}},P=T?T.length():Math.sqrt(Math.pow(_.x-p.x,2)+Math.pow(_.y-p.y,2)),N=k+v+(P-k-w-v)*m,I=z(N/P),U=z((N-v)/P),C=z((N-v*(1-f))/P),E=Math.atan2(I.y-U.y,I.x-U.x)-Math.PI/2;y.beginPath(),y.moveTo(I.x,I.y),y.lineTo(U.x+S*Math.cos(E),U.y+S*Math.sin(E)),y.lineTo(C.x,C.y),y.lineTo(U.x-S*Math.cos(E),U.y-S*Math.sin(E)),y.fillStyle=A,y.fill()}}}),y.restore()}function s(){var u=G(n.linkDirectionalParticles),f=G(n.linkDirectionalParticleSpeed),l=G(n.linkDirectionalParticleOffset),d=G(n.linkDirectionalParticleWidth),c=G(n.linkVisibility),h=G(n.linkDirectionalParticleColor||n.linkColor),g=n.ctx;g.save(),n.graphData.links.filter(c).forEach(function(y){var x=u(y);if(!(!y.hasOwnProperty("__photons")||!y.__photons.length)){var v=y.source,p=y.target;if(!(!v||!p||!v.hasOwnProperty("x")||!p.hasOwnProperty("x"))){var _=f(y),k=Math.abs(l(y)),w=y.__photons||[],m=Math.max(0,d(y)/2)/Math.sqrt(n.globalScale),A=h(y)||"rgba(0,0,0,0.28)";g.fillStyle=A;var S=y.__controlPoints?Tr(W,[v.x,v.y].concat(ut(y.__controlPoints),[p.x,p.y])):null,T=0,z=!1;w.forEach(function(P){var N=!!P.__singleHop;if(P.hasOwnProperty("__progressRatio")||(P.__progressRatio=N?_<0?1:0:(T+k)/x),!N&&T++,P.__progressRatio+=_,P.__progressRatio>=1||P.__progressRatio<0)if(!N)P.__progressRatio=P.__progressRatio%1,P.__progressRatio<0&&P.__progressRatio++;else{z=!0;return}var I=P.__progressRatio,U=S?S.get(I):{x:v.x+(p.x-v.x)*I||0,y:v.y+(p.y-v.y)*I||0};n.linkDirectionalParticleCanvasObject?n.linkDirectionalParticleCanvasObject(U.x,U.y,y,g,n.globalScale):(g.beginPath(),g.arc(U.x,U.y,m,0,2*Math.PI,!1),g.fill())}),z&&(y.__photons=y.__photons.filter(function(P){return!P.__singleHop||P.__progressRatio<=1&&P.__progressRatio>=0}))}}}),g.restore()}},emitParticle:function(n,r){return r&&(!r.__photons&&(r.__photons=[]),r.__photons.push({__singleHop:!0})),this}},stateInit:function(){return{forceLayout:_c().force("link",lc()).force("charge",vc()).force("center",cf()).force("dagRadial",null).stop(),engineRunning:!1}},init:function(n,r){r.ctx=n},update:function(n,r){n.engineRunning=!1,n.onUpdate(),n.nodeAutoColorBy!==null&&Pr(n.graphData.nodes,G(n.nodeAutoColorBy),n.nodeColor),n.linkAutoColorBy!==null&&Pr(n.graphData.links,G(n.linkAutoColorBy),n.linkColor),n.graphData.links.forEach(function(h){h.source=h[n.linkSource],h.target=h[n.linkTarget]}),n.forceLayout.stop().alpha(1).nodes(n.graphData.nodes);var i=n.forceLayout.force("link");i&&i.id(function(h){return h[n.nodeId]}).links(n.graphData.links);var o=n.dagMode&&Jc(n.graphData,function(h){return h[n.nodeId]},{nodeFilter:n.dagNodeFilter,onLoopError:n.onDagError||void 0}),a=Math.max.apply(Math,ut(Object.values(o||[]))),s=n.dagLevelDistance||n.graphData.nodes.length/(a||1)*th*(["radialin","radialout"].indexOf(n.dagMode)!==-1?.7:1);if(["lr","rl","td","bu"].includes(r.dagMode)){var u=["lr","rl"].includes(r.dagMode)?"fx":"fy";n.graphData.nodes.filter(n.dagNodeFilter).forEach(function(h){return delete h[u]})}if(["lr","rl","td","bu"].includes(n.dagMode)){var f=["rl","bu"].includes(n.dagMode),l=function(g){return(o[g[n.nodeId]]-a/2)*s*(f?-1:1)},d=["lr","rl"].includes(n.dagMode)?"fx":"fy";n.graphData.nodes.filter(n.dagNodeFilter).forEach(function(h){return h[d]=l(h)})}n.forceLayout.force("dagRadial",["radialin","radialout"].indexOf(n.dagMode)!==-1?mc(function(h){var g=o[h[n.nodeId]]||-1;return(n.dagMode==="radialin"?a-g:g)*s}).strength(function(h){return n.dagNodeFilter(h)?1:0}):null);for(var c=0;c0&&n.forceLayout.alpha()1?u-1:0),l=1;l1&&arguments[1]!==void 0?arguments[1]:0,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:10,o=arguments.length,a=new Array(o>3?o-3:0),s=3;s1&&arguments[1]!==void 0?arguments[1]:function(){return!0},i=G(n.nodeVal),o=function(u){return Math.sqrt(Math.max(0,i(u)||1))*n.nodeRelSize},a=n.graphData.nodes.filter(r).map(function(s){return{x:s.x,y:s.y,r:o(s)}});return a.length?{x:[$n(a,function(s){return s.x-s.r}),Fn(a,function(s){return s.x+s.r})],y:[$n(a,function(s){return s.y-s.r}),Fn(a,function(s){return s.y+s.r})]}:null},pauseAnimation:function(n){return n.animationFrameRequestId&&(cancelAnimationFrame(n.animationFrameRequestId),n.animationFrameRequestId=null),this},resumeAnimation:function(n){return n.animationFrameRequestId||this._animationCycle(),this},_destructor:function(){this.pauseAnimation(),this.graphData({nodes:[],links:[]})}},ah),stateInit:function(){return{lastSetZoom:1,zoom:xu(),forceGraph:new Ne,shadowGraph:new Ne().cooldownTicks(0).nodeColor("__indexColor").linkColor("__indexColor").isShadow(!0),colorTracker:new Ll,tweenGroup:new ui}},init:function(n,r){var i=this;n.innerHTML="";var o=document.createElement("div");o.classList.add("force-graph-container"),o.style.position="relative",n.appendChild(o),r.canvas=document.createElement("canvas"),r.backgroundColor&&(r.canvas.style.background=r.backgroundColor),o.appendChild(r.canvas),r.shadowCanvas=document.createElement("canvas");var a=r.canvas.getContext("2d"),s=r.shadowCanvas.getContext("2d",{willReadFrequently:!0}),u={x:-1e12,y:-1e12},f=function(){var c=null,h=window.devicePixelRatio,g=u.x>0&&u.y>0?s.getImageData(u.x*h,u.y*h,1,1):null;return g&&(c=r.colorTracker.lookup(g.data)),c};st(r.canvas).call(rs().subject(function(){if(!r.enableNodeDrag)return null;var d=f();return d&&d.type==="Node"?d.d:null}).on("start",function(d){var c=d.subject;c.__initialDragPos={x:c.x,y:c.y,fx:c.fx,fy:c.fy},d.active||(c.fx=c.x,c.fy=c.y),r.canvas.classList.add("grabbable")}).on("drag",function(d){var c=d.subject,h=c.__initialDragPos,g=d,y=pt(r.canvas).k,x={x:h.x+(g.x-h.x)/y-c.x,y:h.y+(g.y-h.y)/y-c.y};["x","y"].forEach(function(v){return c["f".concat(v)]=c[v]=h[v]+(g[v]-h[v])/y}),!(!c.__dragged&&rh>=Math.sqrt(Xi(["x","y"].map(function(v){return Math.pow(d[v]-h[v],2)}))))&&(r.forceGraph.d3AlphaTarget(.3).resetCountdown(),r.isPointerDragging=!0,c.__dragged=!0,r.onNodeDrag(c,x))}).on("end",function(d){var c=d.subject,h=c.__initialDragPos,g={x:c.x-h.x,y:c.y-h.y};h.fx===void 0&&(c.fx=void 0),h.fy===void 0&&(c.fy=void 0),delete c.__initialDragPos,r.forceGraph.d3AlphaTarget()&&r.forceGraph.d3AlphaTarget(0).resetCountdown(),r.canvas.classList.remove("grabbable"),r.isPointerDragging=!1,c.__dragged&&(delete c.__dragged,r.onNodeDragEnd(c,g))})),r.zoom(r.zoom.__baseElem=st(r.canvas)),r.zoom.__baseElem.on("dblclick.zoom",null),r.zoom.filter(function(d){return!d.button&&r.enableZoomPanInteraction&&(d.type!=="wheel"||G(r.enableZoomInteraction)(d))&&(d.type==="wheel"||G(r.enablePanInteraction)(d))}).on("zoom",function(d){var c=d.transform;[a,s].forEach(function(h){Fi(h),h.translate(c.x,c.y),h.scale(c.k,c.k)}),r.isPointerDragging=!0,r.onZoom&&r.onZoom($t($t({},c),i.centerAt())),r.needsRedraw=!0}).on("end",function(d){r.isPointerDragging=!1,r.onZoomEnd&&r.onZoomEnd($t($t({},d.transform),i.centerAt()))}),Ze(r),r.forceGraph.onNeedsRedraw(function(){return r.needsRedraw=!0}).onFinishUpdate(function(){pt(r.canvas).k===r.lastSetZoom&&r.graphData.nodes.length&&(r.zoom.scaleTo(r.zoom.__baseElem,r.lastSetZoom=nh/Math.cbrt(r.graphData.nodes.length)),r.needsRedraw=!0)}),r.tooltip=new ff(o),["pointermove","pointerdown"].forEach(function(d){return o.addEventListener(d,function(c){d==="pointerdown"&&(r.isPointerPressed=!0,r.pointerDownEvent=c),!r.isPointerDragging&&c.type==="pointermove"&&r.onBackgroundClick&&(c.pressure>0||r.isPointerPressed)&&(c.pointerType==="mouse"||c.movementX===void 0||[c.movementX,c.movementY].some(function(y){return Math.abs(y)>1}))&&(r.isPointerDragging=!0);var h=g(o);u.x=c.pageX-h.left,u.y=c.pageY-h.top;function g(y){var x=y.getBoundingClientRect(),v=window.pageXOffset||document.documentElement.scrollLeft,p=window.pageYOffset||document.documentElement.scrollTop;return{top:x.top+p,left:x.left+v}}},{passive:!0})}),o.addEventListener("pointerup",function(d){if(r.isPointerPressed){if(r.isPointerPressed=!1,r.isPointerDragging){r.isPointerDragging=!1;return}var c=[d,r.pointerDownEvent];requestAnimationFrame(function(){if(d.button===0)if(r.hoverObj){var h=r["on".concat(r.hoverObj.type,"Click")];h&&h.apply(void 0,[r.hoverObj.d].concat(c))}else r.onBackgroundClick&&r.onBackgroundClick.apply(r,c);if(d.button===2)if(r.hoverObj){var g=r["on".concat(r.hoverObj.type,"RightClick")];g&&g.apply(void 0,[r.hoverObj.d].concat(c))}else r.onBackgroundRightClick&&r.onBackgroundRightClick.apply(r,c)})}},{passive:!0}),o.addEventListener("contextmenu",function(d){return!r.onBackgroundRightClick&&!r.onNodeRightClick&&!r.onLinkRightClick?!0:(d.preventDefault(),!1)}),r.forceGraph(a),r.shadowGraph(s);var l=Xu(function(){Er(s,r.width,r.height),r.shadowGraph.linkWidth(function(c){return G(r.linkWidth)(c)+r.linkHoverPrecision});var d=pt(r.canvas);r.shadowGraph.globalScale(d.k).tickFrame()},eh);r.flushShadowCanvas=l.flush,(this._animationCycle=function d(){var c=!r.autoPauseRedraw||!!r.needsRedraw||r.forceGraph.isEngineRunning()||r.graphData.links.some(function(k){return k.__photons&&k.__photons.length});if(r.needsRedraw=!1,r.enablePointerInteraction){var h=r.isPointerDragging?null:f();if(h!==r.hoverObj){var g=r.hoverObj,y=g?g.type:null,x=h?h.type:null;if(y&&y!==x){var v=r["on".concat(y,"Hover")];v&&v(null,g.d)}if(x){var p=r["on".concat(x,"Hover")];p&&p(h.d,y===x?g.d:null)}r.tooltip.content(h&&G(r["".concat(h.type.toLowerCase(),"Label")])(h.d)||null),r.canvas.classList[(h&&r["on".concat(x,"Click")]||!h&&r.onBackgroundClick)&&G(r.showPointerCursor)(h==null?void 0:h.d)?"add":"remove"]("clickable"),r.hoverObj=h}c&&l()}if(c){Er(a,r.width,r.height);var _=pt(r.canvas).k;r.onRenderFramePre&&r.onRenderFramePre(a,_),r.forceGraph.globalScale(_).tickFrame(),r.onRenderFramePost&&r.onRenderFramePost(a,_)}r.tweenGroup.update(),r.animationFrameRequestId=requestAnimationFrame(d)})()},update:function(n){}}),Ke={exports:{}},Qe,zr;function uh(){if(zr)return Qe;zr=1;var e="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";return Qe=e,Qe}var Je,Rr;function lh(){if(Rr)return Je;Rr=1;var e=uh();function n(){}function r(){}return r.resetWarningCache=n,Je=function(){function i(s,u,f,l,d,c){if(c!==e){var h=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw h.name="Invariant Violation",h}}i.isRequired=i;function o(){return i}var a={array:i,bigint:i,bool:i,func:i,number:i,object:i,string:i,symbol:i,any:i,arrayOf:o,element:i,elementType:i,instanceOf:o,node:i,objectOf:o,oneOf:o,oneOfType:o,shape:o,exact:o,checkPropTypes:r,resetWarningCache:n};return a.PropTypes=a,a},Je}var Nr;function fh(){return Nr||(Nr=1,Ke.exports=lh()()),Ke.exports}var ch=fh();const b=Gi(ch),Le={width:b.number,height:b.number,graphData:b.shape({nodes:b.arrayOf(b.object).isRequired,links:b.arrayOf(b.object).isRequired}),backgroundColor:b.string,nodeRelSize:b.number,nodeId:b.string,nodeLabel:b.oneOfType([b.string,b.func]),nodeVal:b.oneOfType([b.number,b.string,b.func]),nodeVisibility:b.oneOfType([b.bool,b.string,b.func]),nodeColor:b.oneOfType([b.string,b.func]),nodeAutoColorBy:b.oneOfType([b.string,b.func]),onNodeHover:b.func,onNodeClick:b.func,linkSource:b.string,linkTarget:b.string,linkLabel:b.oneOfType([b.string,b.func]),linkVisibility:b.oneOfType([b.bool,b.string,b.func]),linkColor:b.oneOfType([b.string,b.func]),linkAutoColorBy:b.oneOfType([b.string,b.func]),linkWidth:b.oneOfType([b.number,b.string,b.func]),linkCurvature:b.oneOfType([b.number,b.string,b.func]),linkDirectionalArrowLength:b.oneOfType([b.number,b.string,b.func]),linkDirectionalArrowColor:b.oneOfType([b.string,b.func]),linkDirectionalArrowRelPos:b.oneOfType([b.number,b.string,b.func]),linkDirectionalParticles:b.oneOfType([b.number,b.string,b.func]),linkDirectionalParticleSpeed:b.oneOfType([b.number,b.string,b.func]),linkDirectionalParticleOffset:b.oneOfType([b.number,b.string,b.func]),linkDirectionalParticleWidth:b.oneOfType([b.number,b.string,b.func]),linkDirectionalParticleColor:b.oneOfType([b.string,b.func]),onLinkHover:b.func,onLinkClick:b.func,dagMode:b.oneOf(["td","bu","lr","rl","zin","zout","radialin","radialout"]),dagLevelDistance:b.number,dagNodeFilter:b.func,onDagError:b.func,d3AlphaMin:b.number,d3AlphaDecay:b.number,d3VelocityDecay:b.number,warmupTicks:b.number,cooldownTicks:b.number,cooldownTime:b.number,onEngineTick:b.func,onEngineStop:b.func,getGraphBbox:b.func},Ui={zoomToFit:b.func,onNodeRightClick:b.func,onNodeDrag:b.func,onNodeDragEnd:b.func,onLinkRightClick:b.func,linkHoverPrecision:b.number,onBackgroundClick:b.func,onBackgroundRightClick:b.func,showPointerCursor:b.oneOfType([b.bool,b.func]),enablePointerInteraction:b.bool,enableNodeDrag:b.bool},Nn={showNavInfo:b.bool,nodeOpacity:b.number,nodeResolution:b.number,nodeThreeObject:b.oneOfType([b.object,b.string,b.func]),nodeThreeObjectExtend:b.oneOfType([b.bool,b.string,b.func]),nodePositionUpdate:b.func,linkOpacity:b.number,linkResolution:b.number,linkCurveRotation:b.oneOfType([b.number,b.string,b.func]),linkMaterial:b.oneOfType([b.object,b.string,b.func]),linkThreeObject:b.oneOfType([b.object,b.string,b.func]),linkThreeObjectExtend:b.oneOfType([b.bool,b.string,b.func]),linkPositionUpdate:b.func,linkDirectionalArrowResolution:b.number,linkDirectionalParticleResolution:b.number,linkDirectionalParticleThreeObject:b.oneOfType([b.object,b.string,b.func]),forceEngine:b.oneOf(["d3","ngraph"]),ngraphPhysics:b.object,numDimensions:b.oneOf([1,2,3])},hh=Object.assign({},Le,Ui,{linkLineDash:b.oneOfType([b.arrayOf(b.number),b.string,b.func]),nodeCanvasObjectMode:b.oneOfType([b.string,b.func]),nodeCanvasObject:b.func,nodePointerAreaPaint:b.func,linkCanvasObjectMode:b.oneOfType([b.string,b.func]),linkCanvasObject:b.func,linkPointerAreaPaint:b.func,linkDirectionalParticleCanvasObject:b.func,autoPauseRedraw:b.bool,minZoom:b.number,maxZoom:b.number,enableZoomInteraction:b.oneOfType([b.bool,b.func]),enablePanInteraction:b.oneOfType([b.bool,b.func]),onZoom:b.func,onZoomEnd:b.func,onRenderFramePre:b.func,onRenderFramePost:b.func});Object.assign({},Le,Ui,Nn,{enableNavigationControls:b.bool,controlType:b.oneOf(["trackball","orbit","fly"]),rendererConfig:b.object,extraRenderers:b.arrayOf(b.shape({render:b.func.isRequired}))});Object.assign({},Le,Nn,{nodeDesc:b.oneOfType([b.string,b.func]),linkDesc:b.oneOfType([b.string,b.func])});Object.assign({},Le,Nn,{markerAttrs:b.object,yOffset:b.number,glScale:b.number});const In=go(sh,{methodNames:["emitParticle","d3Force","d3ReheatSimulation","stopAnimation","pauseAnimation","resumeAnimation","centerAt","zoom","zoomToFit","getGraphBbox","screen2GraphCoords","graph2ScreenCoords"]});In.displayName="ForceGraph2D";In.propTypes=hh;const Kt={identity:"#00f5ff",knowledge:"#3b82f6",rules:"#d946ef",events:"#fbbf24"},Ir={identity:"Identität",knowledge:"Wissen",rules:"Regeln",events:"Ereignisse"},tn=new Set(["auto","agent","hermes"]),dh="rgba(15, 23, 42, 0.01)",ph="rgba(255, 255, 255, 0.05)",gh="rgba(99, 102, 241, 0.85)";function _h({data:e,onDelete:n}){const[r,i]=Y.useState(null),[o,a]=Y.useState(null),s=Y.useRef(null),u=Y.useRef(null),[f,l]=Y.useState({width:500,height:560});Y.useEffect(()=>{if(!s.current)return;const p=new ResizeObserver(_=>{for(let k of _)k.contentRect.width>0&&k.contentRect.height>0&&l({width:Math.floor(k.contentRect.width),height:Math.floor(k.contentRect.height)})});return p.observe(s.current),()=>p.disconnect()},[]);const d=Y.useMemo(()=>({nodes:e.nodes.map(p=>({...p})),links:e.edges.map(p=>({source:p.source,target:p.target,weight:p.weight||0}))}),[e]),c=Y.useMemo(()=>{const p={};return e.edges.forEach(_=>{p[_.source]=(p[_.source]||0)+1,p[_.target]=(p[_.target]||0)+1}),p},[e]);Y.useEffect(()=>{const p=u.current;if(!p)return;const _=p.d3Force("charge");_&&_.strength(-140);const k=p.d3Force("link");k&&k.distance(60)},[d]);const h=o||r,g=()=>{u.current&&u.current.zoomToFit(400,40)},y=r?e.nodes.find(p=>p.id===r)??null:null,x=Y.useMemo(()=>{if(!r)return[];const p=new Set;return e.edges.forEach(_=>{_.source===r&&p.add(_.target),_.target===r&&p.add(_.source)}),e.nodes.filter(_=>p.has(_.id))},[r,e]),v=Y.useMemo(()=>{if(!h)return new Set;const p=new Set;return e.edges.forEach(_=>{_.source===h&&p.add(_.target),_.target===h&&p.add(_.source)}),p},[h,e]);return e.nodes.length?H.jsxs("div",{className:"grid grid-cols-1 lg:grid-cols-[1fr_300px] gap-3",children:[H.jsxs("div",{className:"relative h-[calc(100vh-13rem)] min-h-[560px] rounded-2xl border border-border/60 overflow-hidden",ref:s,style:{background:"radial-gradient(circle at center, rgba(59, 130, 246, 0.08) 0%, #030712 100%)"},children:[H.jsx(In,{ref:u,width:f.width,height:f.height,graphData:d,backgroundColor:"rgba(0,0,0,0)",nodeRelSize:4,cooldownTicks:100,onNodeClick:p=>i(p.id),onBackgroundClick:()=>i(null),onNodeHover:p=>{a(p?p.id:null),s.current&&(s.current.style.cursor=p?"pointer":"default")},linkColor:p=>{const _=typeof p.source=="object"?p.source.id:p.source,k=typeof p.target=="object"?p.target.id:p.target;return h===_||h===k?gh:h?dh:ph},linkWidth:p=>{const _=typeof p.source=="object"?p.source.id:p.source,k=typeof p.target=="object"?p.target.id:p.target;return h===_||h===k?2.2:.8},linkDirectionalParticles:p=>{const _=typeof p.source=="object"?p.source.id:p.source,k=typeof p.target=="object"?p.target.id:p.target;return h===_||h===k?4:0},linkDirectionalParticleWidth:2.2,linkDirectionalParticleSpeed:.006,nodeCanvasObject:(p,_,k)=>{const w=p.x??0,m=p.y??0,A=5.5+Math.min(c[p.id]||0,12)*.9,S=Kt[p.category]||"#64748b",T=p.id===o,z=p.id===r,P=h&&p.id!==h&&!v.has(p.id),N=P?"#1e293b":S;P||(_.shadowColor=S,_.shadowBlur=T||z?12:6),_.beginPath(),_.arc(w,m,A,0,2*Math.PI,!1),_.fillStyle=N,_.fill(),_.shadowBlur=0,(T||z)&&(_.beginPath(),_.arc(w,m,A+2,0,2*Math.PI,!1),_.strokeStyle=z?"#ffffff":"rgba(255, 255, 255, 0.7)",_.lineWidth=1.5,_.stroke());const I=p.content.length>30?p.content.slice(0,29)+"…":p.content,C=(T||z?10:9)/Math.max(.6,k);_.font=`${T||z?"bold":"500"} ${C}px "Space Grotesk", sans-serif`;const E=_.measureText(I).width,M=4/Math.max(.6,k);_.fillStyle=P?"rgba(10, 15, 25, 0.45)":"rgba(8, 12, 20, 0.85)",_.beginPath();const R=w-E/2-M,D=m+A+5/Math.max(.6,k),$=E+M*2,F=C+M*1.5,L=4/Math.max(.6,k);_.beginPath(),_.moveTo(R+L,D),_.lineTo(R+$-L,D),_.quadraticCurveTo(R+$,D,R+$,D+L),_.lineTo(R+$,D+F-L),_.quadraticCurveTo(R+$,D+F,R+$-L,D+F),_.lineTo(R+L,D+F),_.quadraticCurveTo(R,D+F,R,D+F-L),_.lineTo(R,D+L),_.quadraticCurveTo(R,D,R+L,D),_.closePath(),_.fill(),_.strokeStyle=T||z?"rgba(255, 255, 255, 0.15)":"rgba(255, 255, 255, 0.05)",_.lineWidth=.5/Math.max(.6,k),_.stroke(),_.textAlign="center",_.textBaseline="top",_.fillStyle=P?"#475569":T||z?"#ffffff":"#cbd5e1",_.fillText(I,w,m+A+6/Math.max(.6,k))}}),H.jsxs("button",{onClick:g,title:"Knoten neu anordnen",className:"absolute right-3 top-3 z-10 flex items-center gap-1.5 rounded-lg border border-border/60 bg-background/50 px-2.5 py-1.5 text-[11px] text-muted-foreground hover:text-foreground backdrop-blur-sm transition-colors cursor-pointer",children:[H.jsx(Vi,{className:"h-3.5 w-3.5"})," Zentrieren"]}),H.jsx("div",{className:"absolute left-3 bottom-3 flex flex-wrap gap-2 rounded-lg bg-background/40 px-2.5 py-1.5 backdrop-blur-sm",children:Object.entries(Ir).map(([p,_])=>H.jsxs("span",{className:"flex items-center gap-1 text-[10px] text-muted-foreground",children:[H.jsx("span",{className:"h-2 w-2 rounded-full",style:{background:Kt[p]}}),_]},p))})]}),H.jsx("div",{className:"rounded-2xl border border-border/60 bg-card/45 backdrop-blur-md p-4 h-[calc(100vh-13rem)] min-h-[560px] overflow-y-auto scrollbar-thin",children:y?H.jsxs(H.Fragment,{children:[H.jsxs("div",{className:"flex items-center gap-2 mb-3",children:[H.jsx("span",{className:"w-3 h-3 rounded-full",style:{background:Kt[y.category],boxShadow:`0 0 0 2px ${tn.has(y.source)?"#34d399":"#475569"}`}}),H.jsx("span",{className:"text-[10px] font-bold uppercase tracking-wider",style:{color:Kt[y.category]},children:Ir[y.category]||y.category}),H.jsxs("span",{className:`ml-auto text-[10px] font-mono flex items-center gap-1 ${tn.has(y.source)?"text-emerald-400":"text-muted-foreground/70"}`,children:[tn.has(y.source)&&H.jsx(Wi,{className:"h-2.5 w-2.5"}),y.source]})]}),H.jsx("div",{className:"text-sm text-foreground leading-relaxed mb-4 break-words",children:y.content}),H.jsxs("div",{className:"text-[10px] font-bold uppercase tracking-wider text-muted-foreground/70 mb-2 flex items-center gap-1",children:[H.jsx(Un,{className:"h-3 w-3"})," verwandte Fakten"]}),H.jsx("div",{className:"flex flex-col gap-1.5 mb-4",children:x.length?x.map(p=>H.jsxs("button",{onClick:()=>i(p.id),className:"flex items-center gap-2 text-[11px] text-muted-foreground hover:text-foreground text-left transition-colors cursor-pointer",children:[H.jsx("span",{className:"w-1.5 h-1.5 rounded-full shrink-0",style:{background:Kt[p.category]}}),H.jsx("span",{className:"truncate",children:p.content})]},p.id)):H.jsx("span",{className:"text-[11px] text-muted-foreground/60",children:"—"})}),H.jsxs("button",{onClick:()=>{n(y.id),i(null)},className:"flex items-center gap-1.5 text-[11px] text-red-400 border border-red-500/20 rounded-lg px-2.5 py-1.5 hover:bg-red-500/5 transition-all cursor-pointer",children:[H.jsx(Bi,{className:"h-3.5 w-3.5"})," vergessen"]})]}):H.jsxs("div",{className:"h-full flex flex-col items-center justify-center text-center text-muted-foreground/70 gap-2 pt-24",children:[H.jsx(Un,{className:"h-6 w-6"}),H.jsx("div",{className:"text-xs max-w-[180px] leading-relaxed",children:"Auf einen Knoten klicken, um den Fakt und seine semantischen Nachbarn zu sehen. Hover hebt das Netz hervor."})]})})]}):H.jsx("div",{className:"text-xs text-muted-foreground border border-dashed border-border/60 rounded-2xl p-12 text-center",children:"Noch keine Fakten — der Graph füllt sich, sobald Hermes lernt oder du Einträge anlegst."})}export{_h as GraphView};