=g&&(g=y+1);!(_=S[g])&&++g=0;)(s=r[i])&&(o&&s.compareDocumentPosition(o)^4&&o.parentNode.insertBefore(s,o),o=s);return this}function XJ(e){e||(e=YJ);function t(d,f){return d&&f?e(d.__data__,f.__data__):!d-!f}for(var n=this._groups,r=n.length,i=new Array(r),o=0;ot?1:e>=t?0:NaN}function QJ(){var e=arguments[0];return arguments[0]=this,e.apply(null,arguments),this}function ZJ(){return Array.from(this)}function JJ(){for(var e=this._groups,t=0,n=e.length;t1?this.each((t==null?cee:typeof t=="function"?fee:dee)(e,t,n??"")):tc(this.node(),e)}function tc(e,t){return e.style.getPropertyValue(t)||j7(e).getComputedStyle(e,null).getPropertyValue(t)}function pee(e){return function(){delete this[e]}}function gee(e,t){return function(){this[e]=t}}function mee(e,t){return function(){var n=t.apply(this,arguments);n==null?delete this[e]:this[e]=n}}function yee(e,t){return arguments.length>1?this.each((t==null?pee:typeof t=="function"?mee:gee)(e,t)):this.node()[e]}function V7(e){return e.trim().split(/^|\s+/)}function Wx(e){return e.classList||new z7(e)}function z7(e){this._node=e,this._names=V7(e.getAttribute("class")||"")}z7.prototype={add:function(e){var t=this._names.indexOf(e);t<0&&(this._names.push(e),this._node.setAttribute("class",this._names.join(" ")))},remove:function(e){var t=this._names.indexOf(e);t>=0&&(this._names.splice(t,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(e){return this._names.indexOf(e)>=0}};function U7(e,t){for(var n=Wx(e),r=-1,i=t.length;++r=0&&(n=t.slice(r+1),t=t.slice(0,r)),{type:t,name:n}})}function Hee(e){return function(){var t=this.__on;if(t){for(var n=0,r=-1,i=t.length,o;n()=>e;function q_(e,{sourceEvent:t,subject:n,target:r,identifier:i,active:o,x:s,y:a,dx:l,dy:u,dispatch:c}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:t,enumerable:!0,configurable:!0},subject:{value:n,enumerable:!0,configurable:!0},target:{value:r,enumerable:!0,configurable:!0},identifier:{value:i,enumerable:!0,configurable:!0},active:{value:o,enumerable:!0,configurable:!0},x:{value:s,enumerable:!0,configurable:!0},y:{value:a,enumerable:!0,configurable:!0},dx:{value:l,enumerable:!0,configurable:!0},dy:{value:u,enumerable:!0,configurable:!0},_:{value:c}})}q_.prototype.on=function(){var e=this._.on.apply(this._,arguments);return e===this._?this:e};function tte(e){return!e.ctrlKey&&!e.button}function nte(){return this.parentNode}function rte(e,t){return t??{x:e.x,y:e.y}}function ite(){return navigator.maxTouchPoints||"ontouchstart"in this}function ote(){var e=tte,t=nte,n=rte,r=ite,i={},o=P0("start","drag","end"),s=0,a,l,u,c,d=0;function f(b){b.on("mousedown.drag",h).filter(r).on("touchstart.drag",S).on("touchmove.drag",v,ete).on("touchend.drag touchcancel.drag",y).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function h(b,_){if(!(c||!e.call(this,b,_))){var w=g(this,t.call(this,b,_),b,_,"mouse");w&&(fi(b.view).on("mousemove.drag",p,Af).on("mouseup.drag",m,Af),W7(b.view),wb(b),u=!1,a=b.clientX,l=b.clientY,w("start",b))}}function p(b){if(Ru(b),!u){var _=b.clientX-a,w=b.clientY-l;u=_*_+w*w>d}i.mouse("drag",b)}function m(b){fi(b.view).on("mousemove.drag mouseup.drag",null),K7(b.view,u),Ru(b),i.mouse("end",b)}function S(b,_){if(e.call(this,b,_)){var w=b.changedTouches,x=t.call(this,b,_),T=w.length,P,E;for(P=0;P>8&15|t>>4&240,t>>4&15|t&240,(t&15)<<4|t&15,1):n===8?xp(t>>24&255,t>>16&255,t>>8&255,(t&255)/255):n===4?xp(t>>12&15|t>>8&240,t>>8&15|t>>4&240,t>>4&15|t&240,((t&15)<<4|t&15)/255):null):(t=ate.exec(e))?new hr(t[1],t[2],t[3],1):(t=lte.exec(e))?new hr(t[1]*255/100,t[2]*255/100,t[3]*255/100,1):(t=ute.exec(e))?xp(t[1],t[2],t[3],t[4]):(t=cte.exec(e))?xp(t[1]*255/100,t[2]*255/100,t[3]*255/100,t[4]):(t=dte.exec(e))?OT(t[1],t[2]/100,t[3]/100,1):(t=fte.exec(e))?OT(t[1],t[2]/100,t[3]/100,t[4]):TT.hasOwnProperty(e)?AT(TT[e]):e==="transparent"?new hr(NaN,NaN,NaN,0):null}function AT(e){return new hr(e>>16&255,e>>8&255,e&255,1)}function xp(e,t,n,r){return r<=0&&(e=t=n=NaN),new hr(e,t,n,r)}function gte(e){return e instanceof bh||(e=Of(e)),e?(e=e.rgb(),new hr(e.r,e.g,e.b,e.opacity)):new hr}function W_(e,t,n,r){return arguments.length===1?gte(e):new hr(e,t,n,r??1)}function hr(e,t,n,r){this.r=+e,this.g=+t,this.b=+n,this.opacity=+r}Kx(hr,W_,X7(bh,{brighter(e){return e=e==null?Rm:Math.pow(Rm,e),new hr(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?kf:Math.pow(kf,e),new hr(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new hr(Va(this.r),Va(this.g),Va(this.b),Om(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:kT,formatHex:kT,formatHex8:mte,formatRgb:RT,toString:RT}));function kT(){return`#${Ia(this.r)}${Ia(this.g)}${Ia(this.b)}`}function mte(){return`#${Ia(this.r)}${Ia(this.g)}${Ia(this.b)}${Ia((isNaN(this.opacity)?1:this.opacity)*255)}`}function RT(){const e=Om(this.opacity);return`${e===1?"rgb(":"rgba("}${Va(this.r)}, ${Va(this.g)}, ${Va(this.b)}${e===1?")":`, ${e})`}`}function Om(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function Va(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function Ia(e){return e=Va(e),(e<16?"0":"")+e.toString(16)}function OT(e,t,n,r){return r<=0?e=t=n=NaN:n<=0||n>=1?e=t=NaN:t<=0&&(e=NaN),new hi(e,t,n,r)}function Y7(e){if(e instanceof hi)return new hi(e.h,e.s,e.l,e.opacity);if(e instanceof bh||(e=Of(e)),!e)return new hi;if(e instanceof hi)return e;e=e.rgb();var t=e.r/255,n=e.g/255,r=e.b/255,i=Math.min(t,n,r),o=Math.max(t,n,r),s=NaN,a=o-i,l=(o+i)/2;return a?(t===o?s=(n-r)/a+(n0&&l<1?0:s,new hi(s,a,l,e.opacity)}function yte(e,t,n,r){return arguments.length===1?Y7(e):new hi(e,t,n,r??1)}function hi(e,t,n,r){this.h=+e,this.s=+t,this.l=+n,this.opacity=+r}Kx(hi,yte,X7(bh,{brighter(e){return e=e==null?Rm:Math.pow(Rm,e),new hi(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?kf:Math.pow(kf,e),new hi(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,t=isNaN(e)||isNaN(this.s)?0:this.s,n=this.l,r=n+(n<.5?n:1-n)*t,i=2*n-r;return new hr(xb(e>=240?e-240:e+120,i,r),xb(e,i,r),xb(e<120?e+240:e-120,i,r),this.opacity)},clamp(){return new hi(MT(this.h),Cp(this.s),Cp(this.l),Om(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(){const e=Om(this.opacity);return`${e===1?"hsl(":"hsla("}${MT(this.h)}, ${Cp(this.s)*100}%, ${Cp(this.l)*100}%${e===1?")":`, ${e})`}`}}));function MT(e){return e=(e||0)%360,e<0?e+360:e}function Cp(e){return Math.max(0,Math.min(1,e||0))}function xb(e,t,n){return(e<60?t+(n-t)*e/60:e<180?n:e<240?t+(n-t)*(240-e)/60:t)*255}const Q7=e=>()=>e;function vte(e,t){return function(n){return e+n*t}}function bte(e,t,n){return e=Math.pow(e,n),t=Math.pow(t,n)-e,n=1/n,function(r){return Math.pow(e+r*t,n)}}function Ste(e){return(e=+e)==1?Z7:function(t,n){return n-t?bte(t,n,e):Q7(isNaN(t)?n:t)}}function Z7(e,t){var n=t-e;return n?vte(e,n):Q7(isNaN(e)?t:e)}const IT=function e(t){var n=Ste(t);function r(i,o){var s=n((i=W_(i)).r,(o=W_(o)).r),a=n(i.g,o.g),l=n(i.b,o.b),u=Z7(i.opacity,o.opacity);return function(c){return i.r=s(c),i.g=a(c),i.b=l(c),i.opacity=u(c),i+""}}return r.gamma=e,r}(1);function cs(e,t){return e=+e,t=+t,function(n){return e*(1-n)+t*n}}var K_=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,Cb=new RegExp(K_.source,"g");function _te(e){return function(){return e}}function wte(e){return function(t){return e(t)+""}}function xte(e,t){var n=K_.lastIndex=Cb.lastIndex=0,r,i,o,s=-1,a=[],l=[];for(e=e+"",t=t+"";(r=K_.exec(e))&&(i=Cb.exec(t));)(o=i.index)>n&&(o=t.slice(n,o),a[s]?a[s]+=o:a[++s]=o),(r=r[0])===(i=i[0])?a[s]?a[s]+=i:a[++s]=i:(a[++s]=null,l.push({i:s,x:cs(r,i)})),n=Cb.lastIndex;return n180?c+=360:c-u>180&&(u+=360),f.push({i:d.push(i(d)+"rotate(",null,r)-2,x:cs(u,c)})):c&&d.push(i(d)+"rotate("+c+r)}function a(u,c,d,f){u!==c?f.push({i:d.push(i(d)+"skewX(",null,r)-2,x:cs(u,c)}):c&&d.push(i(d)+"skewX("+c+r)}function l(u,c,d,f,h,p){if(u!==d||c!==f){var m=h.push(i(h)+"scale(",null,",",null,")");p.push({i:m-4,x:cs(u,d)},{i:m-2,x:cs(c,f)})}else(d!==1||f!==1)&&h.push(i(h)+"scale("+d+","+f+")")}return function(u,c){var d=[],f=[];return u=e(u),c=e(c),o(u.translateX,u.translateY,c.translateX,c.translateY,d,f),s(u.rotate,c.rotate,d,f),a(u.skewX,c.skewX,d,f),l(u.scaleX,u.scaleY,c.scaleX,c.scaleY,d,f),u=c=null,function(h){for(var p=-1,m=f.length,S;++p=0&&e._call.call(void 0,t),e=e._next;--nc}function LT(){tl=(Im=Mf.now())+k0,nc=fd=0;try{Ite()}finally{nc=0,Dte(),tl=0}}function Nte(){var e=Mf.now(),t=e-Im;t>tM&&(k0-=t,Im=e)}function Dte(){for(var e,t=Mm,n,r=1/0;t;)t._call?(r>t._time&&(r=t._time),e=t,t=t._next):(n=t._next,t._next=null,t=e?e._next=n:Mm=n);hd=e,Y_(r)}function Y_(e){if(!nc){fd&&(fd=clearTimeout(fd));var t=e-tl;t>24?(e<1/0&&(fd=setTimeout(LT,e-Mf.now()-k0)),Gc&&(Gc=clearInterval(Gc))):(Gc||(Im=Mf.now(),Gc=setInterval(Nte,tM)),nc=1,nM(LT))}}function $T(e,t,n){var r=new Nm;return t=t==null?0:+t,r.restart(i=>{r.stop(),e(i+t)},t,n),r}var Lte=P0("start","end","cancel","interrupt"),$te=[],iM=0,FT=1,Q_=2,pg=3,BT=4,Z_=5,gg=6;function R0(e,t,n,r,i,o){var s=e.__transition;if(!s)e.__transition={};else if(n in s)return;Fte(e,n,{name:t,index:r,group:i,on:Lte,tween:$te,time:o.time,delay:o.delay,duration:o.duration,ease:o.ease,timer:null,state:iM})}function Yx(e,t){var n=Pi(e,t);if(n.state>iM)throw new Error("too late; already scheduled");return n}function so(e,t){var n=Pi(e,t);if(n.state>pg)throw new Error("too late; already running");return n}function Pi(e,t){var n=e.__transition;if(!n||!(n=n[t]))throw new Error("transition not found");return n}function Fte(e,t,n){var r=e.__transition,i;r[t]=n,n.timer=rM(o,0,n.time);function o(u){n.state=FT,n.timer.restart(s,n.delay,n.time),n.delay<=u&&s(u-n.delay)}function s(u){var c,d,f,h;if(n.state!==FT)return l();for(c in r)if(h=r[c],h.name===n.name){if(h.state===pg)return $T(s);h.state===BT?(h.state=gg,h.timer.stop(),h.on.call("interrupt",e,e.__data__,h.index,h.group),delete r[c]):+cQ_&&r.state=0&&(t=t.slice(0,n)),!t||t==="start"})}function pne(e,t,n){var r,i,o=hne(t)?Yx:so;return function(){var s=o(this,e),a=s.on;a!==r&&(i=(r=a).copy()).on(t,n),s.on=i}}function gne(e,t){var n=this._id;return arguments.length<2?Pi(this.node(),n).on.on(e):this.each(pne(n,e,t))}function mne(e){return function(){var t=this.parentNode;for(var n in this.__transition)if(+n!==e)return;t&&t.removeChild(this)}}function yne(){return this.on("end.remove",mne(this._id))}function vne(e){var t=this._name,n=this._id;typeof e!="function"&&(e=qx(e));for(var r=this._groups,i=r.length,o=new Array(i),s=0;s()=>e;function Une(e,{sourceEvent:t,target:n,transform:r,dispatch:i}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:t,enumerable:!0,configurable:!0},target:{value:n,enumerable:!0,configurable:!0},transform:{value:r,enumerable:!0,configurable:!0},_:{value:i}})}function Po(e,t,n){this.k=e,this.x=t,this.y=n}Po.prototype={constructor:Po,scale:function(e){return e===1?this:new Po(this.k*e,this.x,this.y)},translate:function(e,t){return e===0&t===0?this:new Po(this.k,this.x+this.k*e,this.y+this.k*t)},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 Ms=new Po(1,0,0);Po.prototype;function Tb(e){e.stopImmediatePropagation()}function Hc(e){e.preventDefault(),e.stopImmediatePropagation()}function Gne(e){return(!e.ctrlKey||e.type==="wheel")&&!e.button}function Hne(){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 jT(){return this.__zoom||Ms}function qne(e){return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*(e.ctrlKey?10:1)}function Wne(){return navigator.maxTouchPoints||"ontouchstart"in this}function Kne(e,t,n){var r=e.invertX(t[0][0])-n[0][0],i=e.invertX(t[1][0])-n[1][0],o=e.invertY(t[0][1])-n[0][1],s=e.invertY(t[1][1])-n[1][1];return e.translate(i>r?(r+i)/2:Math.min(0,r)||Math.max(0,i),s>o?(o+s)/2:Math.min(0,o)||Math.max(0,s))}function Xne(){var e=Gne,t=Hne,n=Kne,r=qne,i=Wne,o=[0,1/0],s=[[-1/0,-1/0],[1/0,1/0]],a=250,l=Ote,u=P0("start","zoom","end"),c,d,f,h=500,p=150,m=0,S=10;function v(C){C.property("__zoom",jT).on("wheel.zoom",T,{passive:!1}).on("mousedown.zoom",P).on("dblclick.zoom",E).filter(i).on("touchstart.zoom",A).on("touchmove.zoom",$).on("touchend.zoom touchcancel.zoom",I).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}v.transform=function(C,R,M,N){var O=C.selection?C.selection():C;O.property("__zoom",jT),C!==O?_(C,R,M,N):O.interrupt().each(function(){w(this,arguments).event(N).start().zoom(null,typeof R=="function"?R.apply(this,arguments):R).end()})},v.scaleBy=function(C,R,M,N){v.scaleTo(C,function(){var O=this.__zoom.k,D=typeof R=="function"?R.apply(this,arguments):R;return O*D},M,N)},v.scaleTo=function(C,R,M,N){v.transform(C,function(){var O=t.apply(this,arguments),D=this.__zoom,L=M==null?b(O):typeof M=="function"?M.apply(this,arguments):M,j=D.invert(L),U=typeof R=="function"?R.apply(this,arguments):R;return n(g(y(D,U),L,j),O,s)},M,N)},v.translateBy=function(C,R,M,N){v.transform(C,function(){return n(this.__zoom.translate(typeof R=="function"?R.apply(this,arguments):R,typeof M=="function"?M.apply(this,arguments):M),t.apply(this,arguments),s)},null,N)},v.translateTo=function(C,R,M,N,O){v.transform(C,function(){var D=t.apply(this,arguments),L=this.__zoom,j=N==null?b(D):typeof N=="function"?N.apply(this,arguments):N;return n(Ms.translate(j[0],j[1]).scale(L.k).translate(typeof R=="function"?-R.apply(this,arguments):-R,typeof M=="function"?-M.apply(this,arguments):-M),D,s)},N,O)};function y(C,R){return R=Math.max(o[0],Math.min(o[1],R)),R===C.k?C:new Po(R,C.x,C.y)}function g(C,R,M){var N=R[0]-M[0]*C.k,O=R[1]-M[1]*C.k;return N===C.x&&O===C.y?C:new Po(C.k,N,O)}function b(C){return[(+C[0][0]+ +C[1][0])/2,(+C[0][1]+ +C[1][1])/2]}function _(C,R,M,N){C.on("start.zoom",function(){w(this,arguments).event(N).start()}).on("interrupt.zoom end.zoom",function(){w(this,arguments).event(N).end()}).tween("zoom",function(){var O=this,D=arguments,L=w(O,D).event(N),j=t.apply(O,D),U=M==null?b(j):typeof M=="function"?M.apply(O,D):M,G=Math.max(j[1][0]-j[0][0],j[1][1]-j[0][1]),W=O.__zoom,X=typeof R=="function"?R.apply(O,D):R,Y=l(W.invert(U).concat(G/W.k),X.invert(U).concat(G/X.k));return function(B){if(B===1)B=X;else{var H=Y(B),Q=G/H[2];B=new Po(Q,U[0]-H[0]*Q,U[1]-H[1]*Q)}L.zoom(null,B)}})}function w(C,R,M){return!M&&C.__zooming||new x(C,R)}function x(C,R){this.that=C,this.args=R,this.active=0,this.sourceEvent=null,this.extent=t.apply(C,R),this.taps=0}x.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,R){return this.mouse&&C!=="mouse"&&(this.mouse[1]=R.invert(this.mouse[0])),this.touch0&&C!=="touch"&&(this.touch0[1]=R.invert(this.touch0[0])),this.touch1&&C!=="touch"&&(this.touch1[1]=R.invert(this.touch1[0])),this.that.__zoom=R,this.emit("zoom"),this},end:function(){return--this.active===0&&(delete this.that.__zooming,this.emit("end")),this},emit:function(C){var R=fi(this.that).datum();u.call(C,this.that,new Une(C,{sourceEvent:this.sourceEvent,target:v,type:C,transform:this.that.__zoom,dispatch:u}),R)}};function T(C,...R){if(!e.apply(this,arguments))return;var M=w(this,R).event(C),N=this.__zoom,O=Math.max(o[0],Math.min(o[1],N.k*Math.pow(2,r.apply(this,arguments)))),D=$i(C);if(M.wheel)(M.mouse[0][0]!==D[0]||M.mouse[0][1]!==D[1])&&(M.mouse[1]=N.invert(M.mouse[0]=D)),clearTimeout(M.wheel);else{if(N.k===O)return;M.mouse=[D,N.invert(D)],mg(this),M.start()}Hc(C),M.wheel=setTimeout(L,p),M.zoom("mouse",n(g(y(N,O),M.mouse[0],M.mouse[1]),M.extent,s));function L(){M.wheel=null,M.end()}}function P(C,...R){if(f||!e.apply(this,arguments))return;var M=C.currentTarget,N=w(this,R,!0).event(C),O=fi(C.view).on("mousemove.zoom",U,!0).on("mouseup.zoom",G,!0),D=$i(C,M),L=C.clientX,j=C.clientY;W7(C.view),Tb(C),N.mouse=[D,this.__zoom.invert(D)],mg(this),N.start();function U(W){if(Hc(W),!N.moved){var X=W.clientX-L,Y=W.clientY-j;N.moved=X*X+Y*Y>m}N.event(W).zoom("mouse",n(g(N.that.__zoom,N.mouse[0]=$i(W,M),N.mouse[1]),N.extent,s))}function G(W){O.on("mousemove.zoom mouseup.zoom",null),K7(W.view,N.moved),Hc(W),N.event(W).end()}}function E(C,...R){if(e.apply(this,arguments)){var M=this.__zoom,N=$i(C.changedTouches?C.changedTouches[0]:C,this),O=M.invert(N),D=M.k*(C.shiftKey?.5:2),L=n(g(y(M,D),N,O),t.apply(this,R),s);Hc(C),a>0?fi(this).transition().duration(a).call(_,L,N,C):fi(this).call(v.transform,L,N,C)}}function A(C,...R){if(e.apply(this,arguments)){var M=C.touches,N=M.length,O=w(this,R,C.changedTouches.length===N).event(C),D,L,j,U;for(Tb(C),L=0;L"[React Flow]: Seems like you have not used zustand provider as an ancestor. Help: https://reactflow.dev/error#001",error002:()=>"It looks like you've created a new nodeTypes or edgeTypes object. If this wasn't on purpose please define the nodeTypes/edgeTypes outside of the component or memoize them.",error003:e=>`Node type "${e}" not found. Using fallback type "default".`,error004:()=>"The React Flow parent container needs a width and a height to render the graph.",error005:()=>"Only child nodes can use a parent extent.",error006:()=>"Can't create edge. An edge needs a source and a target.",error007:e=>`The old edge with id=${e} does not exist.`,error009:e=>`Marker type "${e}" doesn't exist.`,error008:(e,t)=>`Couldn't create edge for ${e?"target":"source"} handle id: "${e?t.targetHandle:t.sourceHandle}", edge id: ${t.id}.`,error010:()=>"Handle: No node id found. Make sure to only use a Handle inside a custom Node.",error011:e=>`Edge type "${e}" not found. Using fallback type "default".`},lM=qs.error001();function Vt(e,t){const n=k.useContext(O0);if(n===null)throw new Error(lM);return yJ(n,e,t)}const Vn=()=>{const e=k.useContext(O0);if(e===null)throw new Error(lM);return k.useMemo(()=>({getState:e.getState,setState:e.setState,subscribe:e.subscribe,destroy:e.destroy}),[e])},Qne=e=>e.userSelectionActive?"none":"all";function Zne({position:e,children:t,className:n,style:r,...i}){const o=Vt(Qne),s=`${e}`.split("-");return K.jsx("div",{className:ti(["react-flow__panel",n,...s]),style:{...r,pointerEvents:o},...i,children:t})}function Jne({proOptions:e,position:t="bottom-right"}){return e!=null&&e.hideAttribution?null:K.jsx(Zne,{position:t,className:"react-flow__attribution","data-message":"Please only hide this attribution when you are subscribed to React Flow Pro: https://pro.reactflow.dev",children:K.jsx("a",{href:"https://reactflow.dev",target:"_blank",rel:"noopener noreferrer","aria-label":"React Flow attribution",children:"React Flow"})})}const ere=({x:e,y:t,label:n,labelStyle:r={},labelShowBg:i=!0,labelBgStyle:o={},labelBgPadding:s=[2,4],labelBgBorderRadius:a=2,children:l,className:u,...c})=>{const d=k.useRef(null),[f,h]=k.useState({x:0,y:0,width:0,height:0}),p=ti(["react-flow__edge-textwrapper",u]);return k.useEffect(()=>{if(d.current){const m=d.current.getBBox();h({x:m.x,y:m.y,width:m.width,height:m.height})}},[n]),typeof n>"u"||!n?null:K.jsxs("g",{transform:`translate(${e-f.width/2} ${t-f.height/2})`,className:p,visibility:f.width?"visible":"hidden",...c,children:[i&&K.jsx("rect",{width:f.width+2*s[0],x:-s[0],y:-s[1],height:f.height+2*s[1],className:"react-flow__edge-textbg",style:o,rx:a,ry:a}),K.jsx("text",{className:"react-flow__edge-text",y:f.height/2,dy:"0.3em",ref:d,style:r,children:n}),l]})};var tre=k.memo(ere);const Zx=e=>({width:e.offsetWidth,height:e.offsetHeight}),rc=(e,t=0,n=1)=>Math.min(Math.max(e,t),n),Jx=(e={x:0,y:0},t)=>({x:rc(e.x,t[0][0],t[1][0]),y:rc(e.y,t[0][1],t[1][1])}),VT=(e,t,n)=>en?-rc(Math.abs(e-n),1,50)/50:0,uM=(e,t)=>{const n=VT(e.x,35,t.width-35)*20,r=VT(e.y,35,t.height-35)*20;return[n,r]},cM=e=>{var t;return((t=e.getRootNode)==null?void 0:t.call(e))||(window==null?void 0:window.document)},dM=(e,t)=>({x:Math.min(e.x,t.x),y:Math.min(e.y,t.y),x2:Math.max(e.x2,t.x2),y2:Math.max(e.y2,t.y2)}),Dm=({x:e,y:t,width:n,height:r})=>({x:e,y:t,x2:e+n,y2:t+r}),fM=({x:e,y:t,x2:n,y2:r})=>({x:e,y:t,width:n-e,height:r-t}),zT=e=>({...e.positionAbsolute||{x:0,y:0},width:e.width||0,height:e.height||0}),B3e=(e,t)=>fM(dM(Dm(e),Dm(t))),J_=(e,t)=>{const n=Math.max(0,Math.min(e.x+e.width,t.x+t.width)-Math.max(e.x,t.x)),r=Math.max(0,Math.min(e.y+e.height,t.y+t.height)-Math.max(e.y,t.y));return Math.ceil(n*r)},nre=e=>Kr(e.width)&&Kr(e.height)&&Kr(e.x)&&Kr(e.y),Kr=e=>!isNaN(e)&&isFinite(e),on=Symbol.for("internals"),hM=["Enter"," ","Escape"],rre=(e,t)=>{},ire=e=>"nativeEvent"in e;function e2(e){var i,o;const t=ire(e)?e.nativeEvent:e,n=((o=(i=t.composedPath)==null?void 0:i.call(t))==null?void 0:o[0])||e.target;return["INPUT","SELECT","TEXTAREA"].includes(n==null?void 0:n.nodeName)||(n==null?void 0:n.hasAttribute("contenteditable"))||!!(n!=null&&n.closest(".nokey"))}const pM=e=>"clientX"in e,Is=(e,t)=>{var o,s;const n=pM(e),r=n?e.clientX:(o=e.touches)==null?void 0:o[0].clientX,i=n?e.clientY:(s=e.touches)==null?void 0:s[0].clientY;return{x:r-((t==null?void 0:t.left)??0),y:i-((t==null?void 0:t.top)??0)}},Sh=({id:e,path:t,labelX:n,labelY:r,label:i,labelStyle:o,labelShowBg:s,labelBgStyle:a,labelBgPadding:l,labelBgBorderRadius:u,style:c,markerEnd:d,markerStart:f,interactionWidth:h=20})=>K.jsxs(K.Fragment,{children:[K.jsx("path",{id:e,style:c,d:t,fill:"none",className:"react-flow__edge-path",markerEnd:d,markerStart:f}),h&&K.jsx("path",{d:t,fill:"none",strokeOpacity:0,strokeWidth:h,className:"react-flow__edge-interaction"}),i&&Kr(n)&&Kr(r)?K.jsx(tre,{x:n,y:r,label:i,labelStyle:o,labelShowBg:s,labelBgStyle:a,labelBgPadding:l,labelBgBorderRadius:u}):null]});Sh.displayName="BaseEdge";function qc(e,t,n){return n===void 0?n:r=>{const i=t().edges.find(o=>o.id===e);i&&n(r,{...i})}}function gM({sourceX:e,sourceY:t,targetX:n,targetY:r}){const i=Math.abs(n-e)/2,o=n{const[S,v,y]=yM({sourceX:e,sourceY:t,sourcePosition:i,targetX:n,targetY:r,targetPosition:o});return K.jsx(Sh,{path:S,labelX:v,labelY:y,label:s,labelStyle:a,labelShowBg:l,labelBgStyle:u,labelBgPadding:c,labelBgBorderRadius:d,style:f,markerEnd:h,markerStart:p,interactionWidth:m})});eC.displayName="SimpleBezierEdge";const GT={[pe.Left]:{x:-1,y:0},[pe.Right]:{x:1,y:0},[pe.Top]:{x:0,y:-1},[pe.Bottom]:{x:0,y:1}},ore=({source:e,sourcePosition:t=pe.Bottom,target:n})=>t===pe.Left||t===pe.Right?e.xMath.sqrt(Math.pow(t.x-e.x,2)+Math.pow(t.y-e.y,2));function sre({source:e,sourcePosition:t=pe.Bottom,target:n,targetPosition:r=pe.Top,center:i,offset:o}){const s=GT[t],a=GT[r],l={x:e.x+s.x*o,y:e.y+s.y*o},u={x:n.x+a.x*o,y:n.y+a.y*o},c=ore({source:l,sourcePosition:t,target:u}),d=c.x!==0?"x":"y",f=c[d];let h=[],p,m;const[S,v,y,g]=gM({sourceX:e.x,sourceY:e.y,targetX:n.x,targetY:n.y});if(s[d]*a[d]===-1){p=i.x||S,m=i.y||v;const _=[{x:p,y:l.y},{x:p,y:u.y}],w=[{x:l.x,y:m},{x:u.x,y:m}];s[d]===f?h=d==="x"?_:w:h=d==="x"?w:_}else{const _=[{x:l.x,y:u.y}],w=[{x:u.x,y:l.y}];if(d==="x"?h=s.x===f?w:_:h=s.y===f?_:w,t!==r){const x=d==="x"?"y":"x",T=s[d]===a[x],P=l[x]>u[x],E=l[x]{let g="";return y>0&&y{const[v,y,g]=t2({sourceX:e,sourceY:t,sourcePosition:d,targetX:n,targetY:r,targetPosition:f,borderRadius:m==null?void 0:m.borderRadius,offset:m==null?void 0:m.offset});return K.jsx(Sh,{path:v,labelX:y,labelY:g,label:i,labelStyle:o,labelShowBg:s,labelBgStyle:a,labelBgPadding:l,labelBgBorderRadius:u,style:c,markerEnd:h,markerStart:p,interactionWidth:S})});M0.displayName="SmoothStepEdge";const tC=k.memo(e=>{var t;return K.jsx(M0,{...e,pathOptions:k.useMemo(()=>{var n;return{borderRadius:0,offset:(n=e.pathOptions)==null?void 0:n.offset}},[(t=e.pathOptions)==null?void 0:t.offset])})});tC.displayName="StepEdge";function lre({sourceX:e,sourceY:t,targetX:n,targetY:r}){const[i,o,s,a]=gM({sourceX:e,sourceY:t,targetX:n,targetY:r});return[`M ${e},${t}L ${n},${r}`,i,o,s,a]}const nC=k.memo(({sourceX:e,sourceY:t,targetX:n,targetY:r,label:i,labelStyle:o,labelShowBg:s,labelBgStyle:a,labelBgPadding:l,labelBgBorderRadius:u,style:c,markerEnd:d,markerStart:f,interactionWidth:h})=>{const[p,m,S]=lre({sourceX:e,sourceY:t,targetX:n,targetY:r});return K.jsx(Sh,{path:p,labelX:m,labelY:S,label:i,labelStyle:o,labelShowBg:s,labelBgStyle:a,labelBgPadding:l,labelBgBorderRadius:u,style:c,markerEnd:d,markerStart:f,interactionWidth:h})});nC.displayName="StraightEdge";function Pp(e,t){return e>=0?.5*e:t*25*Math.sqrt(-e)}function qT({pos:e,x1:t,y1:n,x2:r,y2:i,c:o}){switch(e){case pe.Left:return[t-Pp(t-r,o),n];case pe.Right:return[t+Pp(r-t,o),n];case pe.Top:return[t,n-Pp(n-i,o)];case pe.Bottom:return[t,n+Pp(i-n,o)]}}function vM({sourceX:e,sourceY:t,sourcePosition:n=pe.Bottom,targetX:r,targetY:i,targetPosition:o=pe.Top,curvature:s=.25}){const[a,l]=qT({pos:n,x1:e,y1:t,x2:r,y2:i,c:s}),[u,c]=qT({pos:o,x1:r,y1:i,x2:e,y2:t,c:s}),[d,f,h,p]=mM({sourceX:e,sourceY:t,targetX:r,targetY:i,sourceControlX:a,sourceControlY:l,targetControlX:u,targetControlY:c});return[`M${e},${t} C${a},${l} ${u},${c} ${r},${i}`,d,f,h,p]}const $m=k.memo(({sourceX:e,sourceY:t,targetX:n,targetY:r,sourcePosition:i=pe.Bottom,targetPosition:o=pe.Top,label:s,labelStyle:a,labelShowBg:l,labelBgStyle:u,labelBgPadding:c,labelBgBorderRadius:d,style:f,markerEnd:h,markerStart:p,pathOptions:m,interactionWidth:S})=>{const[v,y,g]=vM({sourceX:e,sourceY:t,sourcePosition:i,targetX:n,targetY:r,targetPosition:o,curvature:m==null?void 0:m.curvature});return K.jsx(Sh,{path:v,labelX:y,labelY:g,label:s,labelStyle:a,labelShowBg:l,labelBgStyle:u,labelBgPadding:c,labelBgBorderRadius:d,style:f,markerEnd:h,markerStart:p,interactionWidth:S})});$m.displayName="BezierEdge";const rC=k.createContext(null),ure=rC.Provider;rC.Consumer;const cre=()=>k.useContext(rC),dre=e=>"id"in e&&"source"in e&&"target"in e,fre=({source:e,sourceHandle:t,target:n,targetHandle:r})=>`reactflow__edge-${e}${t||""}-${n}${r||""}`,n2=(e,t)=>typeof e>"u"?"":typeof e=="string"?e:`${t?`${t}__`:""}${Object.keys(e).sort().map(r=>`${r}=${e[r]}`).join("&")}`,hre=(e,t)=>t.some(n=>n.source===e.source&&n.target===e.target&&(n.sourceHandle===e.sourceHandle||!n.sourceHandle&&!e.sourceHandle)&&(n.targetHandle===e.targetHandle||!n.targetHandle&&!e.targetHandle)),bM=(e,t)=>{if(!e.source||!e.target)return t;let n;return dre(e)?n={...e}:n={...e,id:fre(e)},hre(n,t)?t:t.concat(n)},SM=({x:e,y:t},[n,r,i],o,[s,a])=>{const l={x:(e-n)/i,y:(t-r)/i};return o?{x:s*Math.round(l.x/s),y:a*Math.round(l.y/a)}:l},pre=({x:e,y:t},[n,r,i])=>({x:e*i+n,y:t*i+r}),Iu=(e,t=[0,0])=>{if(!e)return{x:0,y:0,positionAbsolute:{x:0,y:0}};const n=(e.width??0)*t[0],r=(e.height??0)*t[1],i={x:e.position.x-n,y:e.position.y-r};return{...i,positionAbsolute:e.positionAbsolute?{x:e.positionAbsolute.x-n,y:e.positionAbsolute.y-r}:i}},_M=(e,t=[0,0])=>{if(e.length===0)return{x:0,y:0,width:0,height:0};const n=e.reduce((r,i)=>{const{x:o,y:s}=Iu(i,t).positionAbsolute;return dM(r,Dm({x:o,y:s,width:i.width||0,height:i.height||0}))},{x:1/0,y:1/0,x2:-1/0,y2:-1/0});return fM(n)},wM=(e,t,[n,r,i]=[0,0,1],o=!1,s=!1,a=[0,0])=>{const l={x:(t.x-n)/i,y:(t.y-r)/i,width:t.width/i,height:t.height/i},u=[];return e.forEach(c=>{const{width:d,height:f,selectable:h=!0,hidden:p=!1}=c;if(s&&!h||p)return!1;const{positionAbsolute:m}=Iu(c,a),S={x:m.x,y:m.y,width:d||0,height:f||0},v=J_(l,S),y=typeof d>"u"||typeof f>"u"||d===null||f===null,g=o&&v>0,b=(d||0)*(f||0);(y||g||v>=b||c.dragging)&&u.push(c)}),u},xM=(e,t)=>{const n=e.map(r=>r.id);return t.filter(r=>n.includes(r.source)||n.includes(r.target))},CM=(e,t,n,r,i,o=.1)=>{const s=t/(e.width*(1+o)),a=n/(e.height*(1+o)),l=Math.min(s,a),u=rc(l,r,i),c=e.x+e.width/2,d=e.y+e.height/2,f=t/2-c*u,h=n/2-d*u;return[f,h,u]},xa=(e,t=0)=>e.transition().duration(t);function WT(e,t,n,r){return(t[n]||[]).reduce((i,o)=>{var s,a;return`${e.id}-${o.id}-${n}`!==r&&i.push({id:o.id||null,type:n,nodeId:e.id,x:(((s=e.positionAbsolute)==null?void 0:s.x)??0)+o.x+o.width/2,y:(((a=e.positionAbsolute)==null?void 0:a.y)??0)+o.y+o.height/2}),i},[])}function gre(e,t,n,r,i,o){const{x:s,y:a}=Is(e),u=t.elementsFromPoint(s,a).find(p=>p.classList.contains("react-flow__handle"));if(u){const p=u.getAttribute("data-nodeid");if(p){const m=iC(void 0,u),S=u.getAttribute("data-handleid"),v=o({nodeId:p,id:S,type:m});if(v)return{handle:{id:S,type:m,nodeId:p,x:n.x,y:n.y},validHandleResult:v}}}let c=[],d=1/0;if(i.forEach(p=>{const m=Math.sqrt((p.x-n.x)**2+(p.y-n.y)**2);if(m<=r){const S=o(p);m<=d&&(mp.isValid),h=c.some(({handle:p})=>p.type==="target");return c.find(({handle:p,validHandleResult:m})=>h?p.type==="target":f?m.isValid:!0)||c[0]}const mre={source:null,target:null,sourceHandle:null,targetHandle:null},TM=()=>({handleDomNode:null,isValid:!1,connection:mre,endHandle:null});function EM(e,t,n,r,i,o,s){const a=i==="target",l=s.querySelector(`.react-flow__handle[data-id="${e==null?void 0:e.nodeId}-${e==null?void 0:e.id}-${e==null?void 0:e.type}"]`),u={...TM(),handleDomNode:l};if(l){const c=iC(void 0,l),d=l.getAttribute("data-nodeid"),f=l.getAttribute("data-handleid"),h=l.classList.contains("connectable"),p=l.classList.contains("connectableend"),m={source:a?d:n,sourceHandle:a?f:r,target:a?n:d,targetHandle:a?r:f};u.connection=m,h&&p&&(t===nl.Strict?a&&c==="source"||!a&&c==="target":d!==n||f!==r)&&(u.endHandle={nodeId:d,handleId:f,type:c},u.isValid=o(m))}return u}function yre({nodes:e,nodeId:t,handleId:n,handleType:r}){return e.reduce((i,o)=>{if(o[on]){const{handleBounds:s}=o[on];let a=[],l=[];s&&(a=WT(o,s,"source",`${t}-${n}-${r}`),l=WT(o,s,"target",`${t}-${n}-${r}`)),i.push(...a,...l)}return i},[])}function iC(e,t){return e||(t!=null&&t.classList.contains("target")?"target":t!=null&&t.classList.contains("source")?"source":null)}function Eb(e){e==null||e.classList.remove("valid","connecting","react-flow__handle-valid","react-flow__handle-connecting")}function vre(e,t){let n=null;return t?n="valid":e&&!t&&(n="invalid"),n}function PM({event:e,handleId:t,nodeId:n,onConnect:r,isTarget:i,getState:o,setState:s,isValidConnection:a,edgeUpdaterType:l,onEdgeUpdateEnd:u}){const c=cM(e.target),{connectionMode:d,domNode:f,autoPanOnConnect:h,connectionRadius:p,onConnectStart:m,panBy:S,getNodes:v,cancelConnection:y}=o();let g=0,b;const{x:_,y:w}=Is(e),x=c==null?void 0:c.elementFromPoint(_,w),T=iC(l,x),P=f==null?void 0:f.getBoundingClientRect();if(!P||!T)return;let E,A=Is(e,P),$=!1,I=null,C=!1,R=null;const M=yre({nodes:v(),nodeId:n,handleId:t,handleType:T}),N=()=>{if(!h)return;const[L,j]=uM(A,P);S({x:L,y:j}),g=requestAnimationFrame(N)};s({connectionPosition:A,connectionStatus:null,connectionNodeId:n,connectionHandleId:t,connectionHandleType:T,connectionStartHandle:{nodeId:n,handleId:t,type:T},connectionEndHandle:null}),m==null||m(e,{nodeId:n,handleId:t,handleType:T});function O(L){const{transform:j}=o();A=Is(L,P);const{handle:U,validHandleResult:G}=gre(L,c,SM(A,j,!1,[1,1]),p,M,W=>EM(W,d,n,t,i?"target":"source",a,c));if(b=U,$||(N(),$=!0),R=G.handleDomNode,I=G.connection,C=G.isValid,s({connectionPosition:b&&C?pre({x:b.x,y:b.y},j):A,connectionStatus:vre(!!b,C),connectionEndHandle:G.endHandle}),!b&&!C&&!R)return Eb(E);I.source!==I.target&&R&&(Eb(E),E=R,R.classList.add("connecting","react-flow__handle-connecting"),R.classList.toggle("valid",C),R.classList.toggle("react-flow__handle-valid",C))}function D(L){var j,U;(b||R)&&I&&C&&(r==null||r(I)),(U=(j=o()).onConnectEnd)==null||U.call(j,L),l&&(u==null||u(L)),Eb(E),y(),cancelAnimationFrame(g),$=!1,C=!1,I=null,R=null,c.removeEventListener("mousemove",O),c.removeEventListener("mouseup",D),c.removeEventListener("touchmove",O),c.removeEventListener("touchend",D)}c.addEventListener("mousemove",O),c.addEventListener("mouseup",D),c.addEventListener("touchmove",O),c.addEventListener("touchend",D)}const KT=()=>!0,bre=e=>({connectionStartHandle:e.connectionStartHandle,connectOnClick:e.connectOnClick,noPanClassName:e.noPanClassName}),Sre=(e,t,n)=>r=>{const{connectionStartHandle:i,connectionEndHandle:o,connectionClickStartHandle:s}=r;return{connecting:(i==null?void 0:i.nodeId)===e&&(i==null?void 0:i.handleId)===t&&(i==null?void 0:i.type)===n||(o==null?void 0:o.nodeId)===e&&(o==null?void 0:o.handleId)===t&&(o==null?void 0:o.type)===n,clickConnecting:(s==null?void 0:s.nodeId)===e&&(s==null?void 0:s.handleId)===t&&(s==null?void 0:s.type)===n}},AM=k.forwardRef(({type:e="source",position:t=pe.Top,isValidConnection:n,isConnectable:r=!0,isConnectableStart:i=!0,isConnectableEnd:o=!0,id:s,onConnect:a,children:l,className:u,onMouseDown:c,onTouchStart:d,...f},h)=>{var P,E;const p=s||null,m=e==="target",S=Vn(),v=cre(),{connectOnClick:y,noPanClassName:g}=Vt(bre,br),{connecting:b,clickConnecting:_}=Vt(Sre(v,p,e),br);v||(E=(P=S.getState()).onError)==null||E.call(P,"010",qs.error010());const w=A=>{const{defaultEdgeOptions:$,onConnect:I,hasDefaultEdges:C}=S.getState(),R={...$,...A};if(C){const{edges:M,setEdges:N}=S.getState();N(bM(R,M))}I==null||I(R),a==null||a(R)},x=A=>{if(!v)return;const $=pM(A);i&&($&&A.button===0||!$)&&PM({event:A,handleId:p,nodeId:v,onConnect:w,isTarget:m,getState:S.getState,setState:S.setState,isValidConnection:n||S.getState().isValidConnection||KT}),$?c==null||c(A):d==null||d(A)},T=A=>{const{onClickConnectStart:$,onClickConnectEnd:I,connectionClickStartHandle:C,connectionMode:R,isValidConnection:M}=S.getState();if(!v||!C&&!i)return;if(!C){$==null||$(A,{nodeId:v,handleId:p,handleType:e}),S.setState({connectionClickStartHandle:{nodeId:v,type:e,handleId:p}});return}const N=cM(A.target),O=n||M||KT,{connection:D,isValid:L}=EM({nodeId:v,id:p,type:e},R,C.nodeId,C.handleId||null,C.type,O,N);L&&w(D),I==null||I(A),S.setState({connectionClickStartHandle:null})};return K.jsx("div",{"data-handleid":p,"data-nodeid":v,"data-handlepos":t,"data-id":`${v}-${p}-${e}`,className:ti(["react-flow__handle",`react-flow__handle-${t}`,"nodrag",g,u,{source:!m,target:m,connectable:r,connectablestart:i,connectableend:o,connecting:_,connectionindicator:r&&(i&&!b||o&&b)}]),onMouseDown:x,onTouchStart:x,onClick:y?T:void 0,ref:h,...f,children:l})});AM.displayName="Handle";var Fm=k.memo(AM);const kM=({data:e,isConnectable:t,targetPosition:n=pe.Top,sourcePosition:r=pe.Bottom})=>K.jsxs(K.Fragment,{children:[K.jsx(Fm,{type:"target",position:n,isConnectable:t}),e==null?void 0:e.label,K.jsx(Fm,{type:"source",position:r,isConnectable:t})]});kM.displayName="DefaultNode";var r2=k.memo(kM);const RM=({data:e,isConnectable:t,sourcePosition:n=pe.Bottom})=>K.jsxs(K.Fragment,{children:[e==null?void 0:e.label,K.jsx(Fm,{type:"source",position:n,isConnectable:t})]});RM.displayName="InputNode";var OM=k.memo(RM);const MM=({data:e,isConnectable:t,targetPosition:n=pe.Top})=>K.jsxs(K.Fragment,{children:[K.jsx(Fm,{type:"target",position:n,isConnectable:t}),e==null?void 0:e.label]});MM.displayName="OutputNode";var IM=k.memo(MM);const oC=()=>null;oC.displayName="GroupNode";const _re=e=>({selectedNodes:e.getNodes().filter(t=>t.selected),selectedEdges:e.edges.filter(t=>t.selected)}),Ap=e=>e.id;function wre(e,t){return br(e.selectedNodes.map(Ap),t.selectedNodes.map(Ap))&&br(e.selectedEdges.map(Ap),t.selectedEdges.map(Ap))}const NM=k.memo(({onSelectionChange:e})=>{const t=Vn(),{selectedNodes:n,selectedEdges:r}=Vt(_re,wre);return k.useEffect(()=>{var o,s;const i={nodes:n,edges:r};e==null||e(i),(s=(o=t.getState()).onSelectionChange)==null||s.call(o,i)},[n,r,e]),null});NM.displayName="SelectionListener";const xre=e=>!!e.onSelectionChange;function Cre({onSelectionChange:e}){const t=Vt(xre);return e||t?K.jsx(NM,{onSelectionChange:e}):null}const Tre=e=>({setNodes:e.setNodes,setEdges:e.setEdges,setDefaultNodesAndEdges:e.setDefaultNodesAndEdges,setMinZoom:e.setMinZoom,setMaxZoom:e.setMaxZoom,setTranslateExtent:e.setTranslateExtent,setNodeExtent:e.setNodeExtent,reset:e.reset});function Dl(e,t){k.useEffect(()=>{typeof e<"u"&&t(e)},[e])}function Ae(e,t,n){k.useEffect(()=>{typeof t<"u"&&n({[e]:t})},[t])}const Ere=({nodes:e,edges:t,defaultNodes:n,defaultEdges:r,onConnect:i,onConnectStart:o,onConnectEnd:s,onClickConnectStart:a,onClickConnectEnd:l,nodesDraggable:u,nodesConnectable:c,nodesFocusable:d,edgesFocusable:f,edgesUpdatable:h,elevateNodesOnSelect:p,minZoom:m,maxZoom:S,nodeExtent:v,onNodesChange:y,onEdgesChange:g,elementsSelectable:b,connectionMode:_,snapGrid:w,snapToGrid:x,translateExtent:T,connectOnClick:P,defaultEdgeOptions:E,fitView:A,fitViewOptions:$,onNodesDelete:I,onEdgesDelete:C,onNodeDrag:R,onNodeDragStart:M,onNodeDragStop:N,onSelectionDrag:O,onSelectionDragStart:D,onSelectionDragStop:L,noPanClassName:j,nodeOrigin:U,rfId:G,autoPanOnConnect:W,autoPanOnNodeDrag:X,onError:Y,connectionRadius:B,isValidConnection:H})=>{const{setNodes:Q,setEdges:J,setDefaultNodesAndEdges:ne,setMinZoom:te,setMaxZoom:xe,setTranslateExtent:ve,setNodeExtent:ce,reset:Ne}=Vt(Tre,br),se=Vn();return k.useEffect(()=>{const gt=r==null?void 0:r.map(vn=>({...vn,...E}));return ne(n,gt),()=>{Ne()}},[]),Ae("defaultEdgeOptions",E,se.setState),Ae("connectionMode",_,se.setState),Ae("onConnect",i,se.setState),Ae("onConnectStart",o,se.setState),Ae("onConnectEnd",s,se.setState),Ae("onClickConnectStart",a,se.setState),Ae("onClickConnectEnd",l,se.setState),Ae("nodesDraggable",u,se.setState),Ae("nodesConnectable",c,se.setState),Ae("nodesFocusable",d,se.setState),Ae("edgesFocusable",f,se.setState),Ae("edgesUpdatable",h,se.setState),Ae("elementsSelectable",b,se.setState),Ae("elevateNodesOnSelect",p,se.setState),Ae("snapToGrid",x,se.setState),Ae("snapGrid",w,se.setState),Ae("onNodesChange",y,se.setState),Ae("onEdgesChange",g,se.setState),Ae("connectOnClick",P,se.setState),Ae("fitViewOnInit",A,se.setState),Ae("fitViewOnInitOptions",$,se.setState),Ae("onNodesDelete",I,se.setState),Ae("onEdgesDelete",C,se.setState),Ae("onNodeDrag",R,se.setState),Ae("onNodeDragStart",M,se.setState),Ae("onNodeDragStop",N,se.setState),Ae("onSelectionDrag",O,se.setState),Ae("onSelectionDragStart",D,se.setState),Ae("onSelectionDragStop",L,se.setState),Ae("noPanClassName",j,se.setState),Ae("nodeOrigin",U,se.setState),Ae("rfId",G,se.setState),Ae("autoPanOnConnect",W,se.setState),Ae("autoPanOnNodeDrag",X,se.setState),Ae("onError",Y,se.setState),Ae("connectionRadius",B,se.setState),Ae("isValidConnection",H,se.setState),Dl(e,Q),Dl(t,J),Dl(m,te),Dl(S,xe),Dl(T,ve),Dl(v,ce),null},XT={display:"none"},Pre={position:"absolute",width:1,height:1,margin:-1,border:0,padding:0,overflow:"hidden",clip:"rect(0px, 0px, 0px, 0px)",clipPath:"inset(100%)"},DM="react-flow__node-desc",LM="react-flow__edge-desc",Are="react-flow__aria-live",kre=e=>e.ariaLiveMessage;function Rre({rfId:e}){const t=Vt(kre);return K.jsx("div",{id:`${Are}-${e}`,"aria-live":"assertive","aria-atomic":"true",style:Pre,children:t})}function Ore({rfId:e,disableKeyboardA11y:t}){return K.jsxs(K.Fragment,{children:[K.jsxs("div",{id:`${DM}-${e}`,style:XT,children:["Press enter or space to select a node.",!t&&"You can then use the arrow keys to move the node around."," Press delete to remove it and escape to cancel."," "]}),K.jsx("div",{id:`${LM}-${e}`,style:XT,children:"Press enter or space to select an edge. You can then press delete to remove it or escape to cancel."}),!t&&K.jsx(Rre,{rfId:e})]})}const Mre=(e,t,n)=>n===pe.Left?e-t:n===pe.Right?e+t:e,Ire=(e,t,n)=>n===pe.Top?e-t:n===pe.Bottom?e+t:e,YT="react-flow__edgeupdater",QT=({position:e,centerX:t,centerY:n,radius:r=10,onMouseDown:i,onMouseEnter:o,onMouseOut:s,type:a})=>K.jsx("circle",{onMouseDown:i,onMouseEnter:o,onMouseOut:s,className:ti([YT,`${YT}-${a}`]),cx:Mre(t,r,e),cy:Ire(n,r,e),r,stroke:"transparent",fill:"transparent"}),Nre=()=>!0;var Ll=e=>{const t=({id:n,className:r,type:i,data:o,onClick:s,onEdgeDoubleClick:a,selected:l,animated:u,label:c,labelStyle:d,labelShowBg:f,labelBgStyle:h,labelBgPadding:p,labelBgBorderRadius:m,style:S,source:v,target:y,sourceX:g,sourceY:b,targetX:_,targetY:w,sourcePosition:x,targetPosition:T,elementsSelectable:P,hidden:E,sourceHandleId:A,targetHandleId:$,onContextMenu:I,onMouseEnter:C,onMouseMove:R,onMouseLeave:M,edgeUpdaterRadius:N,onEdgeUpdate:O,onEdgeUpdateStart:D,onEdgeUpdateEnd:L,markerEnd:j,markerStart:U,rfId:G,ariaLabel:W,isFocusable:X,isUpdatable:Y,pathOptions:B,interactionWidth:H})=>{const Q=k.useRef(null),[J,ne]=k.useState(!1),[te,xe]=k.useState(!1),ve=Vn(),ce=k.useMemo(()=>`url(#${n2(U,G)})`,[U,G]),Ne=k.useMemo(()=>`url(#${n2(j,G)})`,[j,G]);if(E)return null;const se=Ht=>{const{edges:xt,addSelectedEdges:wr}=ve.getState();if(P&&(ve.setState({nodesSelectionActive:!1}),wr([n])),s){const $r=xt.find(ri=>ri.id===n);s(Ht,$r)}},gt=qc(n,ve.getState,a),vn=qc(n,ve.getState,I),Mt=qc(n,ve.getState,C),ut=qc(n,ve.getState,R),tt=qc(n,ve.getState,M),Gt=(Ht,xt)=>{if(Ht.button!==0)return;const{edges:wr,isValidConnection:$r}=ve.getState(),ri=xt?y:v,uo=(xt?$:A)||null,Sn=xt?"target":"source",ii=$r||Nre,ca=xt,ki=wr.find(nt=>nt.id===n);xe(!0),D==null||D(Ht,ki,Sn);const da=nt=>{xe(!1),L==null||L(nt,ki,Sn)};PM({event:Ht,handleId:uo,nodeId:ri,onConnect:nt=>O==null?void 0:O(ki,nt),isTarget:ca,getState:ve.getState,setState:ve.setState,isValidConnection:ii,edgeUpdaterType:Sn,onEdgeUpdateEnd:da})},sr=Ht=>Gt(Ht,!0),ni=Ht=>Gt(Ht,!1),Lr=()=>ne(!0),On=()=>ne(!1),bn=!P&&!s,Un=Ht=>{var xt;if(hM.includes(Ht.key)&&P){const{unselectNodesAndEdges:wr,addSelectedEdges:$r,edges:ri}=ve.getState();Ht.key==="Escape"?((xt=Q.current)==null||xt.blur(),wr({edges:[ri.find(Sn=>Sn.id===n)]})):$r([n])}};return K.jsxs("g",{className:ti(["react-flow__edge",`react-flow__edge-${i}`,r,{selected:l,animated:u,inactive:bn,updating:J}]),onClick:se,onDoubleClick:gt,onContextMenu:vn,onMouseEnter:Mt,onMouseMove:ut,onMouseLeave:tt,onKeyDown:X?Un:void 0,tabIndex:X?0:void 0,role:X?"button":void 0,"data-testid":`rf__edge-${n}`,"aria-label":W===null?void 0:W||`Edge from ${v} to ${y}`,"aria-describedby":X?`${LM}-${G}`:void 0,ref:Q,children:[!te&&K.jsx(e,{id:n,source:v,target:y,selected:l,animated:u,label:c,labelStyle:d,labelShowBg:f,labelBgStyle:h,labelBgPadding:p,labelBgBorderRadius:m,data:o,style:S,sourceX:g,sourceY:b,targetX:_,targetY:w,sourcePosition:x,targetPosition:T,sourceHandleId:A,targetHandleId:$,markerStart:ce,markerEnd:Ne,pathOptions:B,interactionWidth:H}),Y&&K.jsxs(K.Fragment,{children:[(Y==="source"||Y===!0)&&K.jsx(QT,{position:x,centerX:g,centerY:b,radius:N,onMouseDown:sr,onMouseEnter:Lr,onMouseOut:On,type:"source"}),(Y==="target"||Y===!0)&&K.jsx(QT,{position:T,centerX:_,centerY:w,radius:N,onMouseDown:ni,onMouseEnter:Lr,onMouseOut:On,type:"target"})]})]})};return t.displayName="EdgeWrapper",k.memo(t)};function Dre(e){const t={default:Ll(e.default||$m),straight:Ll(e.bezier||nC),step:Ll(e.step||tC),smoothstep:Ll(e.step||M0),simplebezier:Ll(e.simplebezier||eC)},n={},r=Object.keys(e).filter(i=>!["default","bezier"].includes(i)).reduce((i,o)=>(i[o]=Ll(e[o]||$m),i),n);return{...t,...r}}function ZT(e,t,n=null){const r=((n==null?void 0:n.x)||0)+t.x,i=((n==null?void 0:n.y)||0)+t.y,o=(n==null?void 0:n.width)||t.width,s=(n==null?void 0:n.height)||t.height;switch(e){case pe.Top:return{x:r+o/2,y:i};case pe.Right:return{x:r+o,y:i+s/2};case pe.Bottom:return{x:r+o/2,y:i+s};case pe.Left:return{x:r,y:i+s/2}}}function JT(e,t){return e?e.length===1||!t?e[0]:t&&e.find(n=>n.id===t)||null:null}const Lre=(e,t,n,r,i,o)=>{const s=ZT(n,e,t),a=ZT(o,r,i);return{sourceX:s.x,sourceY:s.y,targetX:a.x,targetY:a.y}};function $re({sourcePos:e,targetPos:t,sourceWidth:n,sourceHeight:r,targetWidth:i,targetHeight:o,width:s,height:a,transform:l}){const u={x:Math.min(e.x,t.x),y:Math.min(e.y,t.y),x2:Math.max(e.x+n,t.x+i),y2:Math.max(e.y+r,t.y+o)};u.x===u.x2&&(u.x2+=1),u.y===u.y2&&(u.y2+=1);const c=Dm({x:(0-l[0])/l[2],y:(0-l[1])/l[2],width:s/l[2],height:a/l[2]}),d=Math.max(0,Math.min(c.x2,u.x2)-Math.max(c.x,u.x)),f=Math.max(0,Math.min(c.y2,u.y2)-Math.max(c.y,u.y));return Math.ceil(d*f)>0}function eE(e){var r,i,o,s,a;const t=((r=e==null?void 0:e[on])==null?void 0:r.handleBounds)||null,n=t&&(e==null?void 0:e.width)&&(e==null?void 0:e.height)&&typeof((i=e==null?void 0:e.positionAbsolute)==null?void 0:i.x)<"u"&&typeof((o=e==null?void 0:e.positionAbsolute)==null?void 0:o.y)<"u";return[{x:((s=e==null?void 0:e.positionAbsolute)==null?void 0:s.x)||0,y:((a=e==null?void 0:e.positionAbsolute)==null?void 0:a.y)||0,width:(e==null?void 0:e.width)||0,height:(e==null?void 0:e.height)||0},t,!!n]}function $M(e,t){if(!e.parentNode)return!1;const n=t.get(e.parentNode);return n?n.selected?!0:$M(n,t):!1}function tE(e,t,n){let r=e;do{if(r!=null&&r.matches(t))return!0;if(r===n.current)return!1;r=r.parentElement}while(r);return!1}function Fre(e,t,n,r){return Array.from(e.values()).filter(i=>(i.selected||i.id===r)&&(!i.parentNode||!$M(i,e))&&(i.draggable||t&&typeof i.draggable>"u")).map(i=>{var o,s;return{id:i.id,position:i.position||{x:0,y:0},positionAbsolute:i.positionAbsolute||{x:0,y:0},distance:{x:n.x-(((o=i.positionAbsolute)==null?void 0:o.x)??0),y:n.y-(((s=i.positionAbsolute)==null?void 0:s.y)??0)},delta:{x:0,y:0},extent:i.extent,parentNode:i.parentNode,width:i.width,height:i.height}})}function Bre(e,t){return!t||t==="parent"?t:[t[0],[t[1][0]-(e.width||0),t[1][1]-(e.height||0)]]}function FM(e,t,n,r,i=[0,0],o){const s=Bre(e,e.extent||r);let a=s;if(e.extent==="parent")if(e.parentNode&&e.width&&e.height){const c=n.get(e.parentNode),{x:d,y:f}=Iu(c,i).positionAbsolute;a=c&&Kr(d)&&Kr(f)&&Kr(c.width)&&Kr(c.height)?[[d+e.width*i[0],f+e.height*i[1]],[d+c.width-e.width+e.width*i[0],f+c.height-e.height+e.height*i[1]]]:a}else o==null||o("005",qs.error005()),a=s;else if(e.extent&&e.parentNode){const c=n.get(e.parentNode),{x:d,y:f}=Iu(c,i).positionAbsolute;a=[[e.extent[0][0]+d,e.extent[0][1]+f],[e.extent[1][0]+d,e.extent[1][1]+f]]}let l={x:0,y:0};if(e.parentNode){const c=n.get(e.parentNode);l=Iu(c,i).positionAbsolute}const u=a?Jx(t,a):t;return{position:{x:u.x-l.x,y:u.y-l.y},positionAbsolute:u}}function Pb({nodeId:e,dragItems:t,nodeInternals:n}){const r=t.map(i=>({...n.get(i.id),position:i.position,positionAbsolute:i.positionAbsolute}));return[e?r.find(i=>i.id===e):r[0],r]}const nE=(e,t,n,r)=>{const i=t.querySelectorAll(e);if(!i||!i.length)return null;const o=Array.from(i),s=t.getBoundingClientRect(),a={x:s.width*r[0],y:s.height*r[1]};return o.map(l=>{const u=l.getBoundingClientRect();return{id:l.getAttribute("data-handleid"),position:l.getAttribute("data-handlepos"),x:(u.left-s.left-a.x)/n,y:(u.top-s.top-a.y)/n,...Zx(l)}})};function Wc(e,t,n){return n===void 0?n:r=>{const i=t().nodeInternals.get(e);n(r,{...i})}}function i2({id:e,store:t,unselect:n=!1,nodeRef:r}){const{addSelectedNodes:i,unselectNodesAndEdges:o,multiSelectionActive:s,nodeInternals:a}=t.getState(),l=a.get(e);t.setState({nodesSelectionActive:!1}),l.selected?(n||l.selected&&s)&&(o({nodes:[l]}),requestAnimationFrame(()=>{var u;return(u=r==null?void 0:r.current)==null?void 0:u.blur()})):i([e])}function jre(){const e=Vn();return k.useCallback(({sourceEvent:n})=>{const{transform:r,snapGrid:i,snapToGrid:o}=e.getState(),s=n.touches?n.touches[0].clientX:n.clientX,a=n.touches?n.touches[0].clientY:n.clientY,l={x:(s-r[0])/r[2],y:(a-r[1])/r[2]};return{xSnapped:o?i[0]*Math.round(l.x/i[0]):l.x,ySnapped:o?i[1]*Math.round(l.y/i[1]):l.y,...l}},[])}function Ab(e){return(t,n,r)=>e==null?void 0:e(t,r)}function BM({nodeRef:e,disabled:t=!1,noDragClassName:n,handleSelector:r,nodeId:i,isSelectable:o,selectNodesOnDrag:s}){const a=Vn(),[l,u]=k.useState(!1),c=k.useRef([]),d=k.useRef({x:null,y:null}),f=k.useRef(0),h=k.useRef(null),p=k.useRef({x:0,y:0}),m=k.useRef(null),S=k.useRef(!1),v=jre();return k.useEffect(()=>{if(e!=null&&e.current){const y=fi(e.current),g=({x:_,y:w})=>{const{nodeInternals:x,onNodeDrag:T,onSelectionDrag:P,updateNodePositions:E,nodeExtent:A,snapGrid:$,snapToGrid:I,nodeOrigin:C,onError:R}=a.getState();d.current={x:_,y:w};let M=!1;if(c.current=c.current.map(O=>{const D={x:_-O.distance.x,y:w-O.distance.y};I&&(D.x=$[0]*Math.round(D.x/$[0]),D.y=$[1]*Math.round(D.y/$[1]));const L=FM(O,D,x,A,C,R);return M=M||O.position.x!==L.position.x||O.position.y!==L.position.y,O.position=L.position,O.positionAbsolute=L.positionAbsolute,O}),!M)return;E(c.current,!0,!0),u(!0);const N=i?T:Ab(P);if(N&&m.current){const[O,D]=Pb({nodeId:i,dragItems:c.current,nodeInternals:x});N(m.current,O,D)}},b=()=>{if(!h.current)return;const[_,w]=uM(p.current,h.current);if(_!==0||w!==0){const{transform:x,panBy:T}=a.getState();d.current.x=(d.current.x??0)-_/x[2],d.current.y=(d.current.y??0)-w/x[2],T({x:_,y:w})&&g(d.current)}f.current=requestAnimationFrame(b)};if(t)y.on(".drag",null);else{const _=ote().on("start",w=>{var M;const{nodeInternals:x,multiSelectionActive:T,domNode:P,nodesDraggable:E,unselectNodesAndEdges:A,onNodeDragStart:$,onSelectionDragStart:I}=a.getState(),C=i?$:Ab(I);!s&&!T&&i&&((M=x.get(i))!=null&&M.selected||A()),i&&o&&s&&i2({id:i,store:a,nodeRef:e});const R=v(w);if(d.current=R,c.current=Fre(x,E,R,i),C&&c.current){const[N,O]=Pb({nodeId:i,dragItems:c.current,nodeInternals:x});C(w.sourceEvent,N,O)}h.current=(P==null?void 0:P.getBoundingClientRect())||null,p.current=Is(w.sourceEvent,h.current)}).on("drag",w=>{const x=v(w),{autoPanOnNodeDrag:T}=a.getState();!S.current&&T&&(S.current=!0,b()),(d.current.x!==x.xSnapped||d.current.y!==x.ySnapped)&&c.current&&(m.current=w.sourceEvent,p.current=Is(w.sourceEvent,h.current),g(x))}).on("end",w=>{if(u(!1),S.current=!1,cancelAnimationFrame(f.current),c.current){const{updateNodePositions:x,nodeInternals:T,onNodeDragStop:P,onSelectionDragStop:E}=a.getState(),A=i?P:Ab(E);if(x(c.current,!1,!1),A){const[$,I]=Pb({nodeId:i,dragItems:c.current,nodeInternals:T});A(w.sourceEvent,$,I)}}}).filter(w=>{const x=w.target;return!w.button&&(!n||!tE(x,`.${n}`,e))&&(!r||tE(x,r,e))});return y.call(_),()=>{y.on(".drag",null)}}}},[e,t,n,r,o,a,i,s,v]),l}function jM(){const e=Vn();return k.useCallback(n=>{const{nodeInternals:r,nodeExtent:i,updateNodePositions:o,getNodes:s,snapToGrid:a,snapGrid:l,onError:u,nodesDraggable:c}=e.getState(),d=s().filter(y=>y.selected&&(y.draggable||c&&typeof y.draggable>"u")),f=a?l[0]:5,h=a?l[1]:5,p=n.isShiftPressed?4:1,m=n.x*f*p,S=n.y*h*p,v=d.map(y=>{if(y.positionAbsolute){const g={x:y.positionAbsolute.x+m,y:y.positionAbsolute.y+S};a&&(g.x=l[0]*Math.round(g.x/l[0]),g.y=l[1]*Math.round(g.y/l[1]));const{positionAbsolute:b,position:_}=FM(y,g,r,i,void 0,u);y.position=_,y.positionAbsolute=b}return y});o(v,!0,!1)},[])}const Nu={ArrowUp:{x:0,y:-1},ArrowDown:{x:0,y:1},ArrowLeft:{x:-1,y:0},ArrowRight:{x:1,y:0}};var Kc=e=>{const t=({id:n,type:r,data:i,xPos:o,yPos:s,xPosOrigin:a,yPosOrigin:l,selected:u,onClick:c,onMouseEnter:d,onMouseMove:f,onMouseLeave:h,onContextMenu:p,onDoubleClick:m,style:S,className:v,isDraggable:y,isSelectable:g,isConnectable:b,isFocusable:_,selectNodesOnDrag:w,sourcePosition:x,targetPosition:T,hidden:P,resizeObserver:E,dragHandle:A,zIndex:$,isParent:I,noDragClassName:C,noPanClassName:R,initialized:M,disableKeyboardA11y:N,ariaLabel:O,rfId:D})=>{const L=Vn(),j=k.useRef(null),U=k.useRef(x),G=k.useRef(T),W=k.useRef(r),X=g||y||c||d||f||h,Y=jM(),B=Wc(n,L.getState,d),H=Wc(n,L.getState,f),Q=Wc(n,L.getState,h),J=Wc(n,L.getState,p),ne=Wc(n,L.getState,m),te=ce=>{if(g&&(!w||!y)&&i2({id:n,store:L,nodeRef:j}),c){const Ne=L.getState().nodeInternals.get(n);c(ce,{...Ne})}},xe=ce=>{if(!e2(ce))if(hM.includes(ce.key)&&g){const Ne=ce.key==="Escape";i2({id:n,store:L,unselect:Ne,nodeRef:j})}else!N&&y&&u&&Object.prototype.hasOwnProperty.call(Nu,ce.key)&&(L.setState({ariaLiveMessage:`Moved selected node ${ce.key.replace("Arrow","").toLowerCase()}. New position, x: ${~~o}, y: ${~~s}`}),Y({x:Nu[ce.key].x,y:Nu[ce.key].y,isShiftPressed:ce.shiftKey}))};k.useEffect(()=>{if(j.current&&!P){const ce=j.current;return E==null||E.observe(ce),()=>E==null?void 0:E.unobserve(ce)}},[P]),k.useEffect(()=>{const ce=W.current!==r,Ne=U.current!==x,se=G.current!==T;j.current&&(ce||Ne||se)&&(ce&&(W.current=r),Ne&&(U.current=x),se&&(G.current=T),L.getState().updateNodeDimensions([{id:n,nodeElement:j.current,forceUpdate:!0}]))},[n,r,x,T]);const ve=BM({nodeRef:j,disabled:P||!y,noDragClassName:C,handleSelector:A,nodeId:n,isSelectable:g,selectNodesOnDrag:w});return P?null:K.jsx("div",{className:ti(["react-flow__node",`react-flow__node-${r}`,{[R]:y},v,{selected:u,selectable:g,parent:I,dragging:ve}]),ref:j,style:{zIndex:$,transform:`translate(${a}px,${l}px)`,pointerEvents:X?"all":"none",visibility:M?"visible":"hidden",...S},"data-id":n,"data-testid":`rf__node-${n}`,onMouseEnter:B,onMouseMove:H,onMouseLeave:Q,onContextMenu:J,onClick:te,onDoubleClick:ne,onKeyDown:_?xe:void 0,tabIndex:_?0:void 0,role:_?"button":void 0,"aria-describedby":N?void 0:`${DM}-${D}`,"aria-label":O,children:K.jsx(ure,{value:n,children:K.jsx(e,{id:n,data:i,type:r,xPos:o,yPos:s,selected:u,isConnectable:b,sourcePosition:x,targetPosition:T,dragging:ve,dragHandle:A,zIndex:$})})})};return t.displayName="NodeWrapper",k.memo(t)};function Vre(e){const t={input:Kc(e.input||OM),default:Kc(e.default||r2),output:Kc(e.output||IM),group:Kc(e.group||oC)},n={},r=Object.keys(e).filter(i=>!["input","default","output","group"].includes(i)).reduce((i,o)=>(i[o]=Kc(e[o]||r2),i),n);return{...t,...r}}const zre=({x:e,y:t,width:n,height:r,origin:i})=>!n||!r?{x:e,y:t}:i[0]<0||i[1]<0||i[0]>1||i[1]>1?{x:e,y:t}:{x:e-n*i[0],y:t-r*i[1]},Ure=typeof document<"u"?document:null;var Nf=(e=null,t={target:Ure})=>{const[n,r]=k.useState(!1),i=k.useRef(!1),o=k.useRef(new Set([])),[s,a]=k.useMemo(()=>{if(e!==null){const u=(Array.isArray(e)?e:[e]).filter(d=>typeof d=="string").map(d=>d.split("+")),c=u.reduce((d,f)=>d.concat(...f),[]);return[u,c]}return[[],[]]},[e]);return k.useEffect(()=>{var l,u;if(e!==null){const c=h=>{if(i.current=h.ctrlKey||h.metaKey||h.shiftKey,!i.current&&e2(h))return!1;const p=iE(h.code,a);o.current.add(h[p]),rE(s,o.current,!1)&&(h.preventDefault(),r(!0))},d=h=>{if(!i.current&&e2(h))return!1;const p=iE(h.code,a);rE(s,o.current,!0)?(r(!1),o.current.clear()):o.current.delete(h[p]),i.current=!1},f=()=>{o.current.clear(),r(!1)};return(l=t==null?void 0:t.target)==null||l.addEventListener("keydown",c),(u=t==null?void 0:t.target)==null||u.addEventListener("keyup",d),window.addEventListener("blur",f),()=>{var h,p;(h=t==null?void 0:t.target)==null||h.removeEventListener("keydown",c),(p=t==null?void 0:t.target)==null||p.removeEventListener("keyup",d),window.removeEventListener("blur",f)}}},[e,r]),n};function rE(e,t,n){return e.filter(r=>n||r.length===t.size).some(r=>r.every(i=>t.has(i)))}function iE(e,t){return t.includes(e)?"code":"key"}function VM(e,t,n,r){var s,a;if(!e.parentNode)return n;const i=t.get(e.parentNode),o=Iu(i,r);return VM(i,t,{x:(n.x??0)+o.x,y:(n.y??0)+o.y,z:(((s=i[on])==null?void 0:s.z)??0)>(n.z??0)?((a=i[on])==null?void 0:a.z)??0:n.z??0},r)}function zM(e,t,n){e.forEach(r=>{var i;if(r.parentNode&&!e.has(r.parentNode))throw new Error(`Parent node ${r.parentNode} not found`);if(r.parentNode||n!=null&&n[r.id]){const{x:o,y:s,z:a}=VM(r,e,{...r.position,z:((i=r[on])==null?void 0:i.z)??0},t);r.positionAbsolute={x:o,y:s},r[on].z=a,n!=null&&n[r.id]&&(r[on].isParent=!0)}})}function kb(e,t,n,r){const i=new Map,o={},s=r?1e3:0;return e.forEach(a=>{var d;const l=(Kr(a.zIndex)?a.zIndex:0)+(a.selected?s:0),u=t.get(a.id),c={width:u==null?void 0:u.width,height:u==null?void 0:u.height,...a,positionAbsolute:{x:a.position.x,y:a.position.y}};a.parentNode&&(c.parentNode=a.parentNode,o[a.parentNode]=!0),Object.defineProperty(c,on,{enumerable:!1,value:{handleBounds:(d=u==null?void 0:u[on])==null?void 0:d.handleBounds,z:l}}),i.set(a.id,c)}),zM(i,n,o),i}function UM(e,t={}){const{getNodes:n,width:r,height:i,minZoom:o,maxZoom:s,d3Zoom:a,d3Selection:l,fitViewOnInitDone:u,fitViewOnInit:c,nodeOrigin:d}=e(),f=t.initial&&!u&&c;if(a&&l&&(f||!t.initial)){const p=n().filter(S=>{var y;const v=t.includeHiddenNodes?S.width&&S.height:!S.hidden;return(y=t.nodes)!=null&&y.length?v&&t.nodes.some(g=>g.id===S.id):v}),m=p.every(S=>S.width&&S.height);if(p.length>0&&m){const S=_M(p,d),[v,y,g]=CM(S,r,i,t.minZoom??o,t.maxZoom??s,t.padding??.1),b=Ms.translate(v,y).scale(g);return typeof t.duration=="number"&&t.duration>0?a.transform(xa(l,t.duration),b):a.transform(l,b),!0}}return!1}function Gre(e,t){return e.forEach(n=>{const r=t.get(n.id);r&&t.set(r.id,{...r,[on]:r[on],selected:n.selected})}),new Map(t)}function Hre(e,t){return t.map(n=>{const r=e.find(i=>i.id===n.id);return r&&(n.selected=r.selected),n})}function kp({changedNodes:e,changedEdges:t,get:n,set:r}){const{nodeInternals:i,edges:o,onNodesChange:s,onEdgesChange:a,hasDefaultNodes:l,hasDefaultEdges:u}=n();e!=null&&e.length&&(l&&r({nodeInternals:Gre(e,i)}),s==null||s(e)),t!=null&&t.length&&(u&&r({edges:Hre(t,o)}),a==null||a(t))}const $l=()=>{},qre={zoomIn:$l,zoomOut:$l,zoomTo:$l,getZoom:()=>1,setViewport:$l,getViewport:()=>({x:0,y:0,zoom:1}),fitView:()=>!1,setCenter:$l,fitBounds:$l,project:e=>e,viewportInitialized:!1},Wre=e=>({d3Zoom:e.d3Zoom,d3Selection:e.d3Selection}),Kre=()=>{const e=Vn(),{d3Zoom:t,d3Selection:n}=Vt(Wre,br);return k.useMemo(()=>n&&t?{zoomIn:i=>t.scaleBy(xa(n,i==null?void 0:i.duration),1.2),zoomOut:i=>t.scaleBy(xa(n,i==null?void 0:i.duration),1/1.2),zoomTo:(i,o)=>t.scaleTo(xa(n,o==null?void 0:o.duration),i),getZoom:()=>e.getState().transform[2],setViewport:(i,o)=>{const[s,a,l]=e.getState().transform,u=Ms.translate(i.x??s,i.y??a).scale(i.zoom??l);t.transform(xa(n,o==null?void 0:o.duration),u)},getViewport:()=>{const[i,o,s]=e.getState().transform;return{x:i,y:o,zoom:s}},fitView:i=>UM(e.getState,i),setCenter:(i,o,s)=>{const{width:a,height:l,maxZoom:u}=e.getState(),c=typeof(s==null?void 0:s.zoom)<"u"?s.zoom:u,d=a/2-i*c,f=l/2-o*c,h=Ms.translate(d,f).scale(c);t.transform(xa(n,s==null?void 0:s.duration),h)},fitBounds:(i,o)=>{const{width:s,height:a,minZoom:l,maxZoom:u}=e.getState(),[c,d,f]=CM(i,s,a,l,u,(o==null?void 0:o.padding)??.1),h=Ms.translate(c,d).scale(f);t.transform(xa(n,o==null?void 0:o.duration),h)},project:i=>{const{transform:o,snapToGrid:s,snapGrid:a}=e.getState();return SM(i,o,s,a)},viewportInitialized:!0}:qre,[t,n])};function GM(){const e=Kre(),t=Vn(),n=k.useCallback(()=>t.getState().getNodes().map(m=>({...m})),[]),r=k.useCallback(m=>t.getState().nodeInternals.get(m),[]),i=k.useCallback(()=>{const{edges:m=[]}=t.getState();return m.map(S=>({...S}))},[]),o=k.useCallback(m=>{const{edges:S=[]}=t.getState();return S.find(v=>v.id===m)},[]),s=k.useCallback(m=>{const{getNodes:S,setNodes:v,hasDefaultNodes:y,onNodesChange:g}=t.getState(),b=S(),_=typeof m=="function"?m(b):m;if(y)v(_);else if(g){const w=_.length===0?b.map(x=>({type:"remove",id:x.id})):_.map(x=>({item:x,type:"reset"}));g(w)}},[]),a=k.useCallback(m=>{const{edges:S=[],setEdges:v,hasDefaultEdges:y,onEdgesChange:g}=t.getState(),b=typeof m=="function"?m(S):m;if(y)v(b);else if(g){const _=b.length===0?S.map(w=>({type:"remove",id:w.id})):b.map(w=>({item:w,type:"reset"}));g(_)}},[]),l=k.useCallback(m=>{const S=Array.isArray(m)?m:[m],{getNodes:v,setNodes:y,hasDefaultNodes:g,onNodesChange:b}=t.getState();if(g){const w=[...v(),...S];y(w)}else if(b){const _=S.map(w=>({item:w,type:"add"}));b(_)}},[]),u=k.useCallback(m=>{const S=Array.isArray(m)?m:[m],{edges:v=[],setEdges:y,hasDefaultEdges:g,onEdgesChange:b}=t.getState();if(g)y([...v,...S]);else if(b){const _=S.map(w=>({item:w,type:"add"}));b(_)}},[]),c=k.useCallback(()=>{const{getNodes:m,edges:S=[],transform:v}=t.getState(),[y,g,b]=v;return{nodes:m().map(_=>({..._})),edges:S.map(_=>({..._})),viewport:{x:y,y:g,zoom:b}}},[]),d=k.useCallback(({nodes:m,edges:S})=>{const{nodeInternals:v,getNodes:y,edges:g,hasDefaultNodes:b,hasDefaultEdges:_,onNodesDelete:w,onEdgesDelete:x,onNodesChange:T,onEdgesChange:P}=t.getState(),E=(m||[]).map(R=>R.id),A=(S||[]).map(R=>R.id),$=y().reduce((R,M)=>{const N=!E.includes(M.id)&&M.parentNode&&R.find(D=>D.id===M.parentNode);return(typeof M.deletable=="boolean"?M.deletable:!0)&&(E.includes(M.id)||N)&&R.push(M),R},[]),I=g.filter(R=>typeof R.deletable=="boolean"?R.deletable:!0),C=I.filter(R=>A.includes(R.id));if($||C){const R=xM($,I),M=[...C,...R],N=M.reduce((O,D)=>(O.includes(D.id)||O.push(D.id),O),[]);if((_||b)&&(_&&t.setState({edges:g.filter(O=>!N.includes(O.id))}),b&&($.forEach(O=>{v.delete(O.id)}),t.setState({nodeInternals:new Map(v)}))),N.length>0&&(x==null||x(M),P&&P(N.map(O=>({id:O,type:"remove"})))),$.length>0&&(w==null||w($),T)){const O=$.map(D=>({id:D.id,type:"remove"}));T(O)}}},[]),f=k.useCallback(m=>{const S=nre(m),v=S?null:t.getState().nodeInternals.get(m.id);return[S?m:zT(v),v,S]},[]),h=k.useCallback((m,S=!0,v)=>{const[y,g,b]=f(m);return y?(v||t.getState().getNodes()).filter(_=>{if(!b&&(_.id===g.id||!_.positionAbsolute))return!1;const w=zT(_),x=J_(w,y);return S&&x>0||x>=m.width*m.height}):[]},[]),p=k.useCallback((m,S,v=!0)=>{const[y]=f(m);if(!y)return!1;const g=J_(y,S);return v&&g>0||g>=m.width*m.height},[]);return k.useMemo(()=>({...e,getNodes:n,getNode:r,getEdges:i,getEdge:o,setNodes:s,setEdges:a,addNodes:l,addEdges:u,toObject:c,deleteElements:d,getIntersectingNodes:h,isNodeIntersecting:p}),[e,n,r,i,o,s,a,l,u,c,d,h,p])}var Xre=({deleteKeyCode:e,multiSelectionKeyCode:t})=>{const n=Vn(),{deleteElements:r}=GM(),i=Nf(e),o=Nf(t);k.useEffect(()=>{if(i){const{edges:s,getNodes:a}=n.getState(),l=a().filter(c=>c.selected),u=s.filter(c=>c.selected);r({nodes:l,edges:u}),n.setState({nodesSelectionActive:!1})}},[i]),k.useEffect(()=>{n.setState({multiSelectionActive:o})},[o])};function Yre(e){const t=Vn();k.useEffect(()=>{let n;const r=()=>{var o,s;if(!e.current)return;const i=Zx(e.current);(i.height===0||i.width===0)&&((s=(o=t.getState()).onError)==null||s.call(o,"004",qs.error004())),t.setState({width:i.width||500,height:i.height||500})};return r(),window.addEventListener("resize",r),e.current&&(n=new ResizeObserver(()=>r()),n.observe(e.current)),()=>{window.removeEventListener("resize",r),n&&e.current&&n.unobserve(e.current)}},[])}const sC={position:"absolute",width:"100%",height:"100%",top:0,left:0},Qre=(e,t)=>e.x!==t.x||e.y!==t.y||e.zoom!==t.k,Rb=e=>({x:e.x,y:e.y,zoom:e.k}),Fl=(e,t)=>e.target.closest(`.${t}`),oE=(e,t)=>t===2&&Array.isArray(e)&&e.includes(2),Zre=e=>({d3Zoom:e.d3Zoom,d3Selection:e.d3Selection,d3ZoomHandler:e.d3ZoomHandler,userSelectionActive:e.userSelectionActive}),Jre=({onMove:e,onMoveStart:t,onMoveEnd:n,onPaneContextMenu:r,zoomOnScroll:i=!0,zoomOnPinch:o=!0,panOnScroll:s=!1,panOnScrollSpeed:a=.5,panOnScrollMode:l=Mu.Free,zoomOnDoubleClick:u=!0,elementsSelectable:c,panOnDrag:d=!0,defaultViewport:f,translateExtent:h,minZoom:p,maxZoom:m,zoomActivationKeyCode:S,preventScrolling:v=!0,children:y,noWheelClassName:g,noPanClassName:b})=>{const _=k.useRef(),w=Vn(),x=k.useRef(!1),T=k.useRef(!1),P=k.useRef(null),E=k.useRef({x:0,y:0,zoom:0}),{d3Zoom:A,d3Selection:$,d3ZoomHandler:I,userSelectionActive:C}=Vt(Zre,br),R=Nf(S),M=k.useRef(0);return Yre(P),k.useEffect(()=>{if(P.current){const N=P.current.getBoundingClientRect(),O=Xne().scaleExtent([p,m]).translateExtent(h),D=fi(P.current).call(O),L=Ms.translate(f.x,f.y).scale(rc(f.zoom,p,m)),j=[[0,0],[N.width,N.height]],U=O.constrain()(L,j,h);O.transform(D,U),w.setState({d3Zoom:O,d3Selection:D,d3ZoomHandler:D.on("wheel.zoom"),transform:[U.x,U.y,U.k],domNode:P.current.closest(".react-flow")})}},[]),k.useEffect(()=>{$&&A&&(s&&!R&&!C?$.on("wheel.zoom",N=>{if(Fl(N,g))return!1;N.preventDefault(),N.stopImmediatePropagation();const O=$.property("__zoom").k||1;if(N.ctrlKey&&o){const U=$i(N),G=-N.deltaY*(N.deltaMode===1?.05:N.deltaMode?1:.002)*10,W=O*Math.pow(2,G);A.scaleTo($,W,U);return}const D=N.deltaMode===1?20:1,L=l===Mu.Vertical?0:N.deltaX*D,j=l===Mu.Horizontal?0:N.deltaY*D;A.translateBy($,-(L/O)*a,-(j/O)*a)},{passive:!1}):typeof I<"u"&&$.on("wheel.zoom",function(N,O){if(!v||Fl(N,g))return null;N.preventDefault(),I.call(this,N,O)},{passive:!1}))},[C,s,l,$,A,I,R,o,v,g]),k.useEffect(()=>{A&&A.on("start",N=>{var D;if(!N.sourceEvent)return null;M.current=N.sourceEvent.button;const{onViewportChangeStart:O}=w.getState();if(x.current=!0,((D=N.sourceEvent)==null?void 0:D.type)==="mousedown"&&w.setState({paneDragging:!0}),t||O){const L=Rb(N.transform);E.current=L,O==null||O(L),t==null||t(N.sourceEvent,L)}})},[A,t]),k.useEffect(()=>{A&&(C&&!x.current?A.on("zoom",null):C||A.on("zoom",N=>{const{onViewportChange:O}=w.getState();if(w.setState({transform:[N.transform.x,N.transform.y,N.transform.k]}),T.current=!!(r&&oE(d,M.current??0)),e||O){const D=Rb(N.transform);O==null||O(D),e==null||e(N.sourceEvent,D)}}))},[C,A,e,d,r]),k.useEffect(()=>{A&&A.on("end",N=>{if(!N.sourceEvent)return null;const{onViewportChangeEnd:O}=w.getState();if(x.current=!1,w.setState({paneDragging:!1}),r&&oE(d,M.current??0)&&!T.current&&r(N.sourceEvent),T.current=!1,(n||O)&&Qre(E.current,N.transform)){const D=Rb(N.transform);E.current=D,clearTimeout(_.current),_.current=setTimeout(()=>{O==null||O(D),n==null||n(N.sourceEvent,D)},s?150:0)}})},[A,s,d,n,r]),k.useEffect(()=>{A&&A.filter(N=>{const O=R||i,D=o&&N.ctrlKey;if(N.button===1&&N.type==="mousedown"&&(Fl(N,"react-flow__node")||Fl(N,"react-flow__edge")))return!0;if(!d&&!O&&!s&&!u&&!o||C||!u&&N.type==="dblclick"||Fl(N,g)&&N.type==="wheel"||Fl(N,b)&&N.type!=="wheel"||!o&&N.ctrlKey&&N.type==="wheel"||!O&&!s&&!D&&N.type==="wheel"||!d&&(N.type==="mousedown"||N.type==="touchstart")||Array.isArray(d)&&!d.includes(N.button)&&(N.type==="mousedown"||N.type==="touchstart"))return!1;const L=Array.isArray(d)&&d.includes(N.button)||!N.button||N.button<=1;return(!N.ctrlKey||N.type==="wheel")&&L})},[C,A,i,o,s,u,d,c,R]),K.jsx("div",{className:"react-flow__renderer",ref:P,style:sC,children:y})},eie=e=>({userSelectionActive:e.userSelectionActive,userSelectionRect:e.userSelectionRect});function tie(){const{userSelectionActive:e,userSelectionRect:t}=Vt(eie,br);return e&&t?K.jsx("div",{className:"react-flow__selection react-flow__container",style:{width:t.width,height:t.height,transform:`translate(${t.x}px, ${t.y}px)`}}):null}function sE(e,t){const n=e.find(r=>r.id===t.parentNode);if(n){const r=t.position.x+t.width-n.width,i=t.position.y+t.height-n.height;if(r>0||i>0||t.position.x<0||t.position.y<0){if(n.style={...n.style},n.style.width=n.style.width??n.width,n.style.height=n.style.height??n.height,r>0&&(n.style.width+=r),i>0&&(n.style.height+=i),t.position.x<0){const o=Math.abs(t.position.x);n.position.x=n.position.x-o,n.style.width+=o,t.position.x=0}if(t.position.y<0){const o=Math.abs(t.position.y);n.position.y=n.position.y-o,n.style.height+=o,t.position.y=0}n.width=n.style.width,n.height=n.style.height}}}function HM(e,t){if(e.some(r=>r.type==="reset"))return e.filter(r=>r.type==="reset").map(r=>r.item);const n=e.filter(r=>r.type==="add").map(r=>r.item);return t.reduce((r,i)=>{const o=e.filter(a=>a.id===i.id);if(o.length===0)return r.push(i),r;const s={...i};for(const a of o)if(a)switch(a.type){case"select":{s.selected=a.selected;break}case"position":{typeof a.position<"u"&&(s.position=a.position),typeof a.positionAbsolute<"u"&&(s.positionAbsolute=a.positionAbsolute),typeof a.dragging<"u"&&(s.dragging=a.dragging),s.expandParent&&sE(r,s);break}case"dimensions":{typeof a.dimensions<"u"&&(s.width=a.dimensions.width,s.height=a.dimensions.height),typeof a.updateStyle<"u"&&(s.style={...s.style||{},...a.dimensions}),typeof a.resizing=="boolean"&&(s.resizing=a.resizing),s.expandParent&&sE(r,s);break}case"remove":return r}return r.push(s),r},n)}function qM(e,t){return HM(e,t)}function nie(e,t){return HM(e,t)}const ds=(e,t)=>({id:e,type:"select",selected:t});function du(e,t){return e.reduce((n,r)=>{const i=t.includes(r.id);return!r.selected&&i?(r.selected=!0,n.push(ds(r.id,!0))):r.selected&&!i&&(r.selected=!1,n.push(ds(r.id,!1))),n},[])}const Ob=(e,t)=>n=>{n.target===t.current&&(e==null||e(n))},rie=e=>({userSelectionActive:e.userSelectionActive,elementsSelectable:e.elementsSelectable,dragging:e.paneDragging}),WM=k.memo(({isSelecting:e,selectionMode:t=If.Full,panOnDrag:n,onSelectionStart:r,onSelectionEnd:i,onPaneClick:o,onPaneContextMenu:s,onPaneScroll:a,onPaneMouseEnter:l,onPaneMouseMove:u,onPaneMouseLeave:c,children:d})=>{const f=k.useRef(null),h=Vn(),p=k.useRef(0),m=k.useRef(0),S=k.useRef(),{userSelectionActive:v,elementsSelectable:y,dragging:g}=Vt(rie,br),b=()=>{h.setState({userSelectionActive:!1,userSelectionRect:null}),p.current=0,m.current=0},_=I=>{o==null||o(I),h.getState().resetSelectedElements(),h.setState({nodesSelectionActive:!1})},w=I=>{if(Array.isArray(n)&&(n!=null&&n.includes(2))){I.preventDefault();return}s==null||s(I)},x=a?I=>a(I):void 0,T=I=>{const{resetSelectedElements:C,domNode:R}=h.getState();if(S.current=R==null?void 0:R.getBoundingClientRect(),!y||!e||I.button!==0||I.target!==f.current||!S.current)return;const{x:M,y:N}=Is(I,S.current);C(),h.setState({userSelectionRect:{width:0,height:0,startX:M,startY:N,x:M,y:N}}),r==null||r(I)},P=I=>{const{userSelectionRect:C,nodeInternals:R,edges:M,transform:N,onNodesChange:O,onEdgesChange:D,nodeOrigin:L,getNodes:j}=h.getState();if(!e||!S.current||!C)return;h.setState({userSelectionActive:!0,nodesSelectionActive:!1});const U=Is(I,S.current),G=C.startX??0,W=C.startY??0,X={...C,x:U.xJ.id),Q=B.map(J=>J.id);if(p.current!==Q.length){p.current=Q.length;const J=du(Y,Q);J.length&&(O==null||O(J))}if(m.current!==H.length){m.current=H.length;const J=du(M,H);J.length&&(D==null||D(J))}h.setState({userSelectionRect:X})},E=I=>{if(I.button!==0)return;const{userSelectionRect:C}=h.getState();!v&&C&&I.target===f.current&&(_==null||_(I)),h.setState({nodesSelectionActive:p.current>0}),b(),i==null||i(I)},A=I=>{v&&(h.setState({nodesSelectionActive:p.current>0}),i==null||i(I)),b()},$=y&&(e||v);return K.jsxs("div",{className:ti(["react-flow__pane",{dragging:g,selection:e}]),onClick:$?void 0:Ob(_,f),onContextMenu:Ob(w,f),onWheel:Ob(x,f),onMouseEnter:$?void 0:l,onMouseDown:$?T:void 0,onMouseMove:$?P:u,onMouseUp:$?E:void 0,onMouseLeave:$?A:c,ref:f,style:sC,children:[d,K.jsx(tie,{})]})});WM.displayName="Pane";const iie=e=>{const t=e.getNodes().filter(n=>n.selected);return{..._M(t,e.nodeOrigin),transformString:`translate(${e.transform[0]}px,${e.transform[1]}px) scale(${e.transform[2]})`,userSelectionActive:e.userSelectionActive}};function oie({onSelectionContextMenu:e,noPanClassName:t,disableKeyboardA11y:n}){const r=Vn(),{width:i,height:o,x:s,y:a,transformString:l,userSelectionActive:u}=Vt(iie,br),c=jM(),d=k.useRef(null);if(k.useEffect(()=>{var p;n||(p=d.current)==null||p.focus({preventScroll:!0})},[n]),BM({nodeRef:d}),u||!i||!o)return null;const f=e?p=>{const m=r.getState().getNodes().filter(S=>S.selected);e(p,m)}:void 0,h=p=>{Object.prototype.hasOwnProperty.call(Nu,p.key)&&c({x:Nu[p.key].x,y:Nu[p.key].y,isShiftPressed:p.shiftKey})};return K.jsx("div",{className:ti(["react-flow__nodesselection","react-flow__container",t]),style:{transform:l},children:K.jsx("div",{ref:d,className:"react-flow__nodesselection-rect",onContextMenu:f,tabIndex:n?void 0:-1,onKeyDown:n?void 0:h,style:{width:i,height:o,top:a,left:s}})})}var sie=k.memo(oie);const aie=e=>e.nodesSelectionActive,KM=({children:e,onPaneClick:t,onPaneMouseEnter:n,onPaneMouseMove:r,onPaneMouseLeave:i,onPaneContextMenu:o,onPaneScroll:s,deleteKeyCode:a,onMove:l,onMoveStart:u,onMoveEnd:c,selectionKeyCode:d,selectionOnDrag:f,selectionMode:h,onSelectionStart:p,onSelectionEnd:m,multiSelectionKeyCode:S,panActivationKeyCode:v,zoomActivationKeyCode:y,elementsSelectable:g,zoomOnScroll:b,zoomOnPinch:_,panOnScroll:w,panOnScrollSpeed:x,panOnScrollMode:T,zoomOnDoubleClick:P,panOnDrag:E,defaultViewport:A,translateExtent:$,minZoom:I,maxZoom:C,preventScrolling:R,onSelectionContextMenu:M,noWheelClassName:N,noPanClassName:O,disableKeyboardA11y:D})=>{const L=Vt(aie),j=Nf(d),G=Nf(v)||E,W=j||f&&G!==!0;return Xre({deleteKeyCode:a,multiSelectionKeyCode:S}),K.jsx(Jre,{onMove:l,onMoveStart:u,onMoveEnd:c,onPaneContextMenu:o,elementsSelectable:g,zoomOnScroll:b,zoomOnPinch:_,panOnScroll:w,panOnScrollSpeed:x,panOnScrollMode:T,zoomOnDoubleClick:P,panOnDrag:!j&&G,defaultViewport:A,translateExtent:$,minZoom:I,maxZoom:C,zoomActivationKeyCode:y,preventScrolling:R,noWheelClassName:N,noPanClassName:O,children:K.jsxs(WM,{onSelectionStart:p,onSelectionEnd:m,onPaneClick:t,onPaneMouseEnter:n,onPaneMouseMove:r,onPaneMouseLeave:i,onPaneContextMenu:o,onPaneScroll:s,panOnDrag:G,isSelecting:!!W,selectionMode:h,children:[e,L&&K.jsx(sie,{onSelectionContextMenu:M,noPanClassName:O,disableKeyboardA11y:D})]})})};KM.displayName="FlowRenderer";var lie=k.memo(KM);function uie(e){return Vt(k.useCallback(n=>e?wM(n.nodeInternals,{x:0,y:0,width:n.width,height:n.height},n.transform,!0):n.getNodes(),[e]))}const cie=e=>({nodesDraggable:e.nodesDraggable,nodesConnectable:e.nodesConnectable,nodesFocusable:e.nodesFocusable,elementsSelectable:e.elementsSelectable,updateNodeDimensions:e.updateNodeDimensions,onError:e.onError}),XM=e=>{const{nodesDraggable:t,nodesConnectable:n,nodesFocusable:r,elementsSelectable:i,updateNodeDimensions:o,onError:s}=Vt(cie,br),a=uie(e.onlyRenderVisibleElements),l=k.useRef(),u=k.useMemo(()=>{if(typeof ResizeObserver>"u")return null;const c=new ResizeObserver(d=>{const f=d.map(h=>({id:h.target.getAttribute("data-id"),nodeElement:h.target,forceUpdate:!0}));o(f)});return l.current=c,c},[]);return k.useEffect(()=>()=>{var c;(c=l==null?void 0:l.current)==null||c.disconnect()},[]),K.jsx("div",{className:"react-flow__nodes",style:sC,children:a.map(c=>{var _,w;let d=c.type||"default";e.nodeTypes[d]||(s==null||s("003",qs.error003(d)),d="default");const f=e.nodeTypes[d]||e.nodeTypes.default,h=!!(c.draggable||t&&typeof c.draggable>"u"),p=!!(c.selectable||i&&typeof c.selectable>"u"),m=!!(c.connectable||n&&typeof c.connectable>"u"),S=!!(c.focusable||r&&typeof c.focusable>"u"),v=e.nodeExtent?Jx(c.positionAbsolute,e.nodeExtent):c.positionAbsolute,y=(v==null?void 0:v.x)??0,g=(v==null?void 0:v.y)??0,b=zre({x:y,y:g,width:c.width??0,height:c.height??0,origin:e.nodeOrigin});return K.jsx(f,{id:c.id,className:c.className,style:c.style,type:d,data:c.data,sourcePosition:c.sourcePosition||pe.Bottom,targetPosition:c.targetPosition||pe.Top,hidden:c.hidden,xPos:y,yPos:g,xPosOrigin:b.x,yPosOrigin:b.y,selectNodesOnDrag:e.selectNodesOnDrag,onClick:e.onNodeClick,onMouseEnter:e.onNodeMouseEnter,onMouseMove:e.onNodeMouseMove,onMouseLeave:e.onNodeMouseLeave,onContextMenu:e.onNodeContextMenu,onDoubleClick:e.onNodeDoubleClick,selected:!!c.selected,isDraggable:h,isSelectable:p,isConnectable:m,isFocusable:S,resizeObserver:u,dragHandle:c.dragHandle,zIndex:((_=c[on])==null?void 0:_.z)??0,isParent:!!((w=c[on])!=null&&w.isParent),noDragClassName:e.noDragClassName,noPanClassName:e.noPanClassName,initialized:!!c.width&&!!c.height,rfId:e.rfId,disableKeyboardA11y:e.disableKeyboardA11y,ariaLabel:c.ariaLabel},c.id)})})};XM.displayName="NodeRenderer";var die=k.memo(XM);const fie=[{level:0,isMaxLevel:!0,edges:[]}];function hie(e,t,n=!1){let r=-1;const i=e.reduce((s,a)=>{var c,d;const l=Kr(a.zIndex);let u=l?a.zIndex:0;if(n){const f=t.get(a.target),h=t.get(a.source),p=a.selected||(f==null?void 0:f.selected)||(h==null?void 0:h.selected),m=Math.max(((c=h==null?void 0:h[on])==null?void 0:c.z)||0,((d=f==null?void 0:f[on])==null?void 0:d.z)||0,1e3);u=(l?a.zIndex:0)+(p?m:0)}return s[u]?s[u].push(a):s[u]=[a],r=u>r?u:r,s},{}),o=Object.entries(i).map(([s,a])=>{const l=+s;return{edges:a,level:l,isMaxLevel:l===r}});return o.length===0?fie:o}function pie(e,t,n){const r=Vt(k.useCallback(i=>e?i.edges.filter(o=>{const s=t.get(o.source),a=t.get(o.target);return(s==null?void 0:s.width)&&(s==null?void 0:s.height)&&(a==null?void 0:a.width)&&(a==null?void 0:a.height)&&$re({sourcePos:s.positionAbsolute||{x:0,y:0},targetPos:a.positionAbsolute||{x:0,y:0},sourceWidth:s.width,sourceHeight:s.height,targetWidth:a.width,targetHeight:a.height,width:i.width,height:i.height,transform:i.transform})}):i.edges,[e,t]));return hie(r,t,n)}const gie=({color:e="none",strokeWidth:t=1})=>K.jsx("polyline",{stroke:e,strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:t,fill:"none",points:"-5,-4 0,0 -5,4"}),mie=({color:e="none",strokeWidth:t=1})=>K.jsx("polyline",{stroke:e,strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:t,fill:e,points:"-5,-4 0,0 -5,4 -5,-4"}),aE={[Lm.Arrow]:gie,[Lm.ArrowClosed]:mie};function yie(e){const t=Vn();return k.useMemo(()=>{var i,o;return Object.prototype.hasOwnProperty.call(aE,e)?aE[e]:((o=(i=t.getState()).onError)==null||o.call(i,"009",qs.error009(e)),null)},[e])}const vie=({id:e,type:t,color:n,width:r=12.5,height:i=12.5,markerUnits:o="strokeWidth",strokeWidth:s,orient:a="auto-start-reverse"})=>{const l=yie(t);return l?K.jsx("marker",{className:"react-flow__arrowhead",id:e,markerWidth:`${r}`,markerHeight:`${i}`,viewBox:"-10 -10 20 20",markerUnits:o,orient:a,refX:"0",refY:"0",children:K.jsx(l,{color:n,strokeWidth:s})}):null},bie=({defaultColor:e,rfId:t})=>n=>{const r=[];return n.edges.reduce((i,o)=>([o.markerStart,o.markerEnd].forEach(s=>{if(s&&typeof s=="object"){const a=n2(s,t);r.includes(a)||(i.push({id:a,color:s.color||e,...s}),r.push(a))}}),i),[]).sort((i,o)=>i.id.localeCompare(o.id))},YM=({defaultColor:e,rfId:t})=>{const n=Vt(k.useCallback(bie({defaultColor:e,rfId:t}),[e,t]),(r,i)=>!(r.length!==i.length||r.some((o,s)=>o.id!==i[s].id)));return K.jsx("defs",{children:n.map(r=>K.jsx(vie,{id:r.id,type:r.type,color:r.color,width:r.width,height:r.height,markerUnits:r.markerUnits,strokeWidth:r.strokeWidth,orient:r.orient},r.id))})};YM.displayName="MarkerDefinitions";var Sie=k.memo(YM);const _ie=e=>({nodesConnectable:e.nodesConnectable,edgesFocusable:e.edgesFocusable,edgesUpdatable:e.edgesUpdatable,elementsSelectable:e.elementsSelectable,width:e.width,height:e.height,connectionMode:e.connectionMode,nodeInternals:e.nodeInternals,onError:e.onError}),QM=({defaultMarkerColor:e,onlyRenderVisibleElements:t,elevateEdgesOnSelect:n,rfId:r,edgeTypes:i,noPanClassName:o,onEdgeUpdate:s,onEdgeContextMenu:a,onEdgeMouseEnter:l,onEdgeMouseMove:u,onEdgeMouseLeave:c,onEdgeClick:d,edgeUpdaterRadius:f,onEdgeDoubleClick:h,onEdgeUpdateStart:p,onEdgeUpdateEnd:m,children:S})=>{const{edgesFocusable:v,edgesUpdatable:y,elementsSelectable:g,width:b,height:_,connectionMode:w,nodeInternals:x,onError:T}=Vt(_ie,br),P=pie(t,x,n);return b?K.jsxs(K.Fragment,{children:[P.map(({level:E,edges:A,isMaxLevel:$})=>K.jsxs("svg",{style:{zIndex:E},width:b,height:_,className:"react-flow__edges react-flow__container",children:[$&&K.jsx(Sie,{defaultColor:e,rfId:r}),K.jsx("g",{children:A.map(I=>{const[C,R,M]=eE(x.get(I.source)),[N,O,D]=eE(x.get(I.target));if(!M||!D)return null;let L=I.type||"default";i[L]||(T==null||T("011",qs.error011(L)),L="default");const j=i[L]||i.default,U=w===nl.Strict?O.target:(O.target??[]).concat(O.source??[]),G=JT(R.source,I.sourceHandle),W=JT(U,I.targetHandle),X=(G==null?void 0:G.position)||pe.Bottom,Y=(W==null?void 0:W.position)||pe.Top,B=!!(I.focusable||v&&typeof I.focusable>"u"),H=typeof s<"u"&&(I.updatable||y&&typeof I.updatable>"u");if(!G||!W)return T==null||T("008",qs.error008(G,I)),null;const{sourceX:Q,sourceY:J,targetX:ne,targetY:te}=Lre(C,G,X,N,W,Y);return K.jsx(j,{id:I.id,className:ti([I.className,o]),type:L,data:I.data,selected:!!I.selected,animated:!!I.animated,hidden:!!I.hidden,label:I.label,labelStyle:I.labelStyle,labelShowBg:I.labelShowBg,labelBgStyle:I.labelBgStyle,labelBgPadding:I.labelBgPadding,labelBgBorderRadius:I.labelBgBorderRadius,style:I.style,source:I.source,target:I.target,sourceHandleId:I.sourceHandle,targetHandleId:I.targetHandle,markerEnd:I.markerEnd,markerStart:I.markerStart,sourceX:Q,sourceY:J,targetX:ne,targetY:te,sourcePosition:X,targetPosition:Y,elementsSelectable:g,onEdgeUpdate:s,onContextMenu:a,onMouseEnter:l,onMouseMove:u,onMouseLeave:c,onClick:d,edgeUpdaterRadius:f,onEdgeDoubleClick:h,onEdgeUpdateStart:p,onEdgeUpdateEnd:m,rfId:r,ariaLabel:I.ariaLabel,isFocusable:B,isUpdatable:H,pathOptions:"pathOptions"in I?I.pathOptions:void 0,interactionWidth:I.interactionWidth},I.id)})})]},E)),S]}):null};QM.displayName="EdgeRenderer";var wie=k.memo(QM);const xie=e=>`translate(${e.transform[0]}px,${e.transform[1]}px) scale(${e.transform[2]})`;function Cie({children:e}){const t=Vt(xie);return K.jsx("div",{className:"react-flow__viewport react-flow__container",style:{transform:t},children:e})}function Tie(e){const t=GM(),n=k.useRef(!1);k.useEffect(()=>{!n.current&&t.viewportInitialized&&e&&(setTimeout(()=>e(t),1),n.current=!0)},[e,t.viewportInitialized])}const Eie={[pe.Left]:pe.Right,[pe.Right]:pe.Left,[pe.Top]:pe.Bottom,[pe.Bottom]:pe.Top},ZM=({nodeId:e,handleType:t,style:n,type:r=ys.Bezier,CustomComponent:i,connectionStatus:o})=>{var w,x,T;const{fromNode:s,handleId:a,toX:l,toY:u,connectionMode:c}=Vt(k.useCallback(P=>({fromNode:P.nodeInternals.get(e),handleId:P.connectionHandleId,toX:(P.connectionPosition.x-P.transform[0])/P.transform[2],toY:(P.connectionPosition.y-P.transform[1])/P.transform[2],connectionMode:P.connectionMode}),[e]),br),d=(w=s==null?void 0:s[on])==null?void 0:w.handleBounds;let f=d==null?void 0:d[t];if(c===nl.Loose&&(f=f||(d==null?void 0:d[t==="source"?"target":"source"])),!s||!f)return null;const h=a?f.find(P=>P.id===a):f[0],p=h?h.x+h.width/2:(s.width??0)/2,m=h?h.y+h.height/2:s.height??0,S=(((x=s.positionAbsolute)==null?void 0:x.x)??0)+p,v=(((T=s.positionAbsolute)==null?void 0:T.y)??0)+m,y=h==null?void 0:h.position,g=y?Eie[y]:null;if(!y||!g)return null;if(i)return K.jsx(i,{connectionLineType:r,connectionLineStyle:n,fromNode:s,fromHandle:h,fromX:S,fromY:v,toX:l,toY:u,fromPosition:y,toPosition:g,connectionStatus:o});let b="";const _={sourceX:S,sourceY:v,sourcePosition:y,targetX:l,targetY:u,targetPosition:g};return r===ys.Bezier?[b]=vM(_):r===ys.Step?[b]=t2({..._,borderRadius:0}):r===ys.SmoothStep?[b]=t2(_):r===ys.SimpleBezier?[b]=yM(_):b=`M${S},${v} ${l},${u}`,K.jsx("path",{d:b,fill:"none",className:"react-flow__connection-path",style:n})};ZM.displayName="ConnectionLine";const Pie=e=>({nodeId:e.connectionNodeId,handleType:e.connectionHandleType,nodesConnectable:e.nodesConnectable,connectionStatus:e.connectionStatus,width:e.width,height:e.height});function Aie({containerStyle:e,style:t,type:n,component:r}){const{nodeId:i,handleType:o,nodesConnectable:s,width:a,height:l,connectionStatus:u}=Vt(Pie,br);return!(i&&o&&a&&s)?null:K.jsx("svg",{style:e,width:a,height:l,className:"react-flow__edges react-flow__connectionline react-flow__container",children:K.jsx("g",{className:ti(["react-flow__connection",u]),children:K.jsx(ZM,{nodeId:i,handleType:o,style:t,type:n,CustomComponent:r,connectionStatus:u})})})}const JM=({nodeTypes:e,edgeTypes:t,onMove:n,onMoveStart:r,onMoveEnd:i,onInit:o,onNodeClick:s,onEdgeClick:a,onNodeDoubleClick:l,onEdgeDoubleClick:u,onNodeMouseEnter:c,onNodeMouseMove:d,onNodeMouseLeave:f,onNodeContextMenu:h,onSelectionContextMenu:p,onSelectionStart:m,onSelectionEnd:S,connectionLineType:v,connectionLineStyle:y,connectionLineComponent:g,connectionLineContainerStyle:b,selectionKeyCode:_,selectionOnDrag:w,selectionMode:x,multiSelectionKeyCode:T,panActivationKeyCode:P,zoomActivationKeyCode:E,deleteKeyCode:A,onlyRenderVisibleElements:$,elementsSelectable:I,selectNodesOnDrag:C,defaultViewport:R,translateExtent:M,minZoom:N,maxZoom:O,preventScrolling:D,defaultMarkerColor:L,zoomOnScroll:j,zoomOnPinch:U,panOnScroll:G,panOnScrollSpeed:W,panOnScrollMode:X,zoomOnDoubleClick:Y,panOnDrag:B,onPaneClick:H,onPaneMouseEnter:Q,onPaneMouseMove:J,onPaneMouseLeave:ne,onPaneScroll:te,onPaneContextMenu:xe,onEdgeUpdate:ve,onEdgeContextMenu:ce,onEdgeMouseEnter:Ne,onEdgeMouseMove:se,onEdgeMouseLeave:gt,edgeUpdaterRadius:vn,onEdgeUpdateStart:Mt,onEdgeUpdateEnd:ut,noDragClassName:tt,noWheelClassName:Gt,noPanClassName:sr,elevateEdgesOnSelect:ni,disableKeyboardA11y:Lr,nodeOrigin:On,nodeExtent:bn,rfId:Un})=>(Tie(o),K.jsx(lie,{onPaneClick:H,onPaneMouseEnter:Q,onPaneMouseMove:J,onPaneMouseLeave:ne,onPaneContextMenu:xe,onPaneScroll:te,deleteKeyCode:A,selectionKeyCode:_,selectionOnDrag:w,selectionMode:x,onSelectionStart:m,onSelectionEnd:S,multiSelectionKeyCode:T,panActivationKeyCode:P,zoomActivationKeyCode:E,elementsSelectable:I,onMove:n,onMoveStart:r,onMoveEnd:i,zoomOnScroll:j,zoomOnPinch:U,zoomOnDoubleClick:Y,panOnScroll:G,panOnScrollSpeed:W,panOnScrollMode:X,panOnDrag:B,defaultViewport:R,translateExtent:M,minZoom:N,maxZoom:O,onSelectionContextMenu:p,preventScrolling:D,noDragClassName:tt,noWheelClassName:Gt,noPanClassName:sr,disableKeyboardA11y:Lr,children:K.jsxs(Cie,{children:[K.jsx(wie,{edgeTypes:t,onEdgeClick:a,onEdgeDoubleClick:u,onEdgeUpdate:ve,onlyRenderVisibleElements:$,onEdgeContextMenu:ce,onEdgeMouseEnter:Ne,onEdgeMouseMove:se,onEdgeMouseLeave:gt,onEdgeUpdateStart:Mt,onEdgeUpdateEnd:ut,edgeUpdaterRadius:vn,defaultMarkerColor:L,noPanClassName:sr,elevateEdgesOnSelect:!!ni,disableKeyboardA11y:Lr,rfId:Un,children:K.jsx(Aie,{style:y,type:v,component:g,containerStyle:b})}),K.jsx("div",{className:"react-flow__edgelabel-renderer"}),K.jsx(die,{nodeTypes:e,onNodeClick:s,onNodeDoubleClick:l,onNodeMouseEnter:c,onNodeMouseMove:d,onNodeMouseLeave:f,onNodeContextMenu:h,selectNodesOnDrag:C,onlyRenderVisibleElements:$,noPanClassName:sr,noDragClassName:tt,disableKeyboardA11y:Lr,nodeOrigin:On,nodeExtent:bn,rfId:Un})]})}));JM.displayName="GraphView";var kie=k.memo(JM);const o2=[[Number.NEGATIVE_INFINITY,Number.NEGATIVE_INFINITY],[Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY]],rs={rfId:"1",width:0,height:0,transform:[0,0,1],nodeInternals:new Map,edges:[],onNodesChange:null,onEdgesChange:null,hasDefaultNodes:!1,hasDefaultEdges:!1,d3Zoom:null,d3Selection:null,d3ZoomHandler:void 0,minZoom:.5,maxZoom:2,translateExtent:o2,nodeExtent:o2,nodesSelectionActive:!1,userSelectionActive:!1,userSelectionRect:null,connectionNodeId:null,connectionHandleId:null,connectionHandleType:"source",connectionPosition:{x:0,y:0},connectionStatus:null,connectionMode:nl.Strict,domNode:null,paneDragging:!1,noPanClassName:"nopan",nodeOrigin:[0,0],snapGrid:[15,15],snapToGrid:!1,nodesDraggable:!0,nodesConnectable:!0,nodesFocusable:!0,edgesFocusable:!0,edgesUpdatable:!0,elementsSelectable:!0,elevateNodesOnSelect:!0,fitViewOnInit:!1,fitViewOnInitDone:!1,fitViewOnInitOptions:void 0,multiSelectionActive:!1,connectionStartHandle:null,connectionEndHandle:null,connectionClickStartHandle:null,connectOnClick:!0,ariaLiveMessage:"",autoPanOnConnect:!0,autoPanOnNodeDrag:!0,connectionRadius:20,onError:rre,isValidConnection:void 0},Rie=()=>gJ((e,t)=>({...rs,setNodes:n=>{const{nodeInternals:r,nodeOrigin:i,elevateNodesOnSelect:o}=t();e({nodeInternals:kb(n,r,i,o)})},getNodes:()=>Array.from(t().nodeInternals.values()),setEdges:n=>{const{defaultEdgeOptions:r={}}=t();e({edges:n.map(i=>({...r,...i}))})},setDefaultNodesAndEdges:(n,r)=>{const i=typeof n<"u",o=typeof r<"u",s=i?kb(n,new Map,t().nodeOrigin,t().elevateNodesOnSelect):new Map;e({nodeInternals:s,edges:o?r:[],hasDefaultNodes:i,hasDefaultEdges:o})},updateNodeDimensions:n=>{const{onNodesChange:r,nodeInternals:i,fitViewOnInit:o,fitViewOnInitDone:s,fitViewOnInitOptions:a,domNode:l,nodeOrigin:u}=t(),c=l==null?void 0:l.querySelector(".react-flow__viewport");if(!c)return;const d=window.getComputedStyle(c),{m22:f}=new window.DOMMatrixReadOnly(d.transform),h=n.reduce((m,S)=>{const v=i.get(S.id);if(v){const y=Zx(S.nodeElement);!!(y.width&&y.height&&(v.width!==y.width||v.height!==y.height||S.forceUpdate))&&(i.set(v.id,{...v,[on]:{...v[on],handleBounds:{source:nE(".source",S.nodeElement,f,u),target:nE(".target",S.nodeElement,f,u)}},...y}),m.push({id:v.id,type:"dimensions",dimensions:y}))}return m},[]);zM(i,u);const p=s||o&&!s&&UM(t,{initial:!0,...a});e({nodeInternals:new Map(i),fitViewOnInitDone:p}),(h==null?void 0:h.length)>0&&(r==null||r(h))},updateNodePositions:(n,r=!0,i=!1)=>{const{triggerNodeChanges:o}=t(),s=n.map(a=>{const l={id:a.id,type:"position",dragging:i};return r&&(l.positionAbsolute=a.positionAbsolute,l.position=a.position),l});o(s)},triggerNodeChanges:n=>{const{onNodesChange:r,nodeInternals:i,hasDefaultNodes:o,nodeOrigin:s,getNodes:a,elevateNodesOnSelect:l}=t();if(n!=null&&n.length){if(o){const u=qM(n,a()),c=kb(u,i,s,l);e({nodeInternals:c})}r==null||r(n)}},addSelectedNodes:n=>{const{multiSelectionActive:r,edges:i,getNodes:o}=t();let s,a=null;r?s=n.map(l=>ds(l,!0)):(s=du(o(),n),a=du(i,[])),kp({changedNodes:s,changedEdges:a,get:t,set:e})},addSelectedEdges:n=>{const{multiSelectionActive:r,edges:i,getNodes:o}=t();let s,a=null;r?s=n.map(l=>ds(l,!0)):(s=du(i,n),a=du(o(),[])),kp({changedNodes:a,changedEdges:s,get:t,set:e})},unselectNodesAndEdges:({nodes:n,edges:r}={})=>{const{edges:i,getNodes:o}=t(),s=n||o(),a=r||i,l=s.map(c=>(c.selected=!1,ds(c.id,!1))),u=a.map(c=>ds(c.id,!1));kp({changedNodes:l,changedEdges:u,get:t,set:e})},setMinZoom:n=>{const{d3Zoom:r,maxZoom:i}=t();r==null||r.scaleExtent([n,i]),e({minZoom:n})},setMaxZoom:n=>{const{d3Zoom:r,minZoom:i}=t();r==null||r.scaleExtent([i,n]),e({maxZoom:n})},setTranslateExtent:n=>{var r;(r=t().d3Zoom)==null||r.translateExtent(n),e({translateExtent:n})},resetSelectedElements:()=>{const{edges:n,getNodes:r}=t(),o=r().filter(a=>a.selected).map(a=>ds(a.id,!1)),s=n.filter(a=>a.selected).map(a=>ds(a.id,!1));kp({changedNodes:o,changedEdges:s,get:t,set:e})},setNodeExtent:n=>{const{nodeInternals:r}=t();r.forEach(i=>{i.positionAbsolute=Jx(i.position,n)}),e({nodeExtent:n,nodeInternals:new Map(r)})},panBy:n=>{const{transform:r,width:i,height:o,d3Zoom:s,d3Selection:a,translateExtent:l}=t();if(!s||!a||!n.x&&!n.y)return!1;const u=Ms.translate(r[0]+n.x,r[1]+n.y).scale(r[2]),c=[[0,0],[i,o]],d=s==null?void 0:s.constrain()(u,c,l);return s.transform(a,d),r[0]!==d.x||r[1]!==d.y||r[2]!==d.k},cancelConnection:()=>e({connectionNodeId:rs.connectionNodeId,connectionHandleId:rs.connectionHandleId,connectionHandleType:rs.connectionHandleType,connectionStatus:rs.connectionStatus,connectionStartHandle:rs.connectionStartHandle,connectionEndHandle:rs.connectionEndHandle}),reset:()=>e({...rs})})),eI=({children:e})=>{const t=k.useRef(null);return t.current||(t.current=Rie()),K.jsx(Yne,{value:t.current,children:e})};eI.displayName="ReactFlowProvider";const tI=({children:e})=>k.useContext(O0)?K.jsx(K.Fragment,{children:e}):K.jsx(eI,{children:e});tI.displayName="ReactFlowWrapper";function lE(e,t){return k.useRef(null),k.useMemo(()=>t(e),[e])}const Oie={input:OM,default:r2,output:IM,group:oC},Mie={default:$m,straight:nC,step:tC,smoothstep:M0,simplebezier:eC},Iie=[0,0],Nie=[15,15],Die={x:0,y:0,zoom:1},Lie={width:"100%",height:"100%",overflow:"hidden",position:"relative",zIndex:0},$ie=k.forwardRef(({nodes:e,edges:t,defaultNodes:n,defaultEdges:r,className:i,nodeTypes:o=Oie,edgeTypes:s=Mie,onNodeClick:a,onEdgeClick:l,onInit:u,onMove:c,onMoveStart:d,onMoveEnd:f,onConnect:h,onConnectStart:p,onConnectEnd:m,onClickConnectStart:S,onClickConnectEnd:v,onNodeMouseEnter:y,onNodeMouseMove:g,onNodeMouseLeave:b,onNodeContextMenu:_,onNodeDoubleClick:w,onNodeDragStart:x,onNodeDrag:T,onNodeDragStop:P,onNodesDelete:E,onEdgesDelete:A,onSelectionChange:$,onSelectionDragStart:I,onSelectionDrag:C,onSelectionDragStop:R,onSelectionContextMenu:M,onSelectionStart:N,onSelectionEnd:O,connectionMode:D=nl.Strict,connectionLineType:L=ys.Bezier,connectionLineStyle:j,connectionLineComponent:U,connectionLineContainerStyle:G,deleteKeyCode:W="Backspace",selectionKeyCode:X="Shift",selectionOnDrag:Y=!1,selectionMode:B=If.Full,panActivationKeyCode:H="Space",multiSelectionKeyCode:Q="Meta",zoomActivationKeyCode:J="Meta",snapToGrid:ne=!1,snapGrid:te=Nie,onlyRenderVisibleElements:xe=!1,selectNodesOnDrag:ve=!0,nodesDraggable:ce,nodesConnectable:Ne,nodesFocusable:se,nodeOrigin:gt=Iie,edgesFocusable:vn,edgesUpdatable:Mt,elementsSelectable:ut,defaultViewport:tt=Die,minZoom:Gt=.5,maxZoom:sr=2,translateExtent:ni=o2,preventScrolling:Lr=!0,nodeExtent:On,defaultMarkerColor:bn="#b1b1b7",zoomOnScroll:Un=!0,zoomOnPinch:Ht=!0,panOnScroll:xt=!1,panOnScrollSpeed:wr=.5,panOnScrollMode:$r=Mu.Free,zoomOnDoubleClick:ri=!0,panOnDrag:uo=!0,onPaneClick:Sn,onPaneMouseEnter:ii,onPaneMouseMove:ca,onPaneMouseLeave:ki,onPaneScroll:da,onPaneContextMenu:Ct,children:nt,onEdgeUpdate:_n,onEdgeContextMenu:ln,onEdgeDoubleClick:Mn,onEdgeMouseEnter:Gn,onEdgeMouseMove:ar,onEdgeMouseLeave:Ri,onEdgeUpdateStart:Hn,onEdgeUpdateEnd:wn,edgeUpdaterRadius:co=10,onNodesChange:Zo,onEdgesChange:Jo,noDragClassName:Al="nodrag",noWheelClassName:fo="nowheel",noPanClassName:qn="nopan",fitView:fa=!1,fitViewOptions:h1,connectOnClick:p1=!0,attributionPosition:g1,proOptions:m1,defaultEdgeOptions:es,elevateNodesOnSelect:y1=!0,elevateEdgesOnSelect:v1=!1,disableKeyboardA11y:Hh=!1,autoPanOnConnect:b1=!0,autoPanOnNodeDrag:S1=!0,connectionRadius:_1=20,isValidConnection:Ac,onError:w1,style:kl,id:Rl,...x1},Ol)=>{const qh=lE(o,Vre),C1=lE(s,Dre),kc=Rl||"1";return K.jsx("div",{...x1,style:{...kl,...Lie},ref:Ol,className:ti(["react-flow",i]),"data-testid":"rf__wrapper",id:Rl,children:K.jsxs(tI,{children:[K.jsx(kie,{onInit:u,onMove:c,onMoveStart:d,onMoveEnd:f,onNodeClick:a,onEdgeClick:l,onNodeMouseEnter:y,onNodeMouseMove:g,onNodeMouseLeave:b,onNodeContextMenu:_,onNodeDoubleClick:w,nodeTypes:qh,edgeTypes:C1,connectionLineType:L,connectionLineStyle:j,connectionLineComponent:U,connectionLineContainerStyle:G,selectionKeyCode:X,selectionOnDrag:Y,selectionMode:B,deleteKeyCode:W,multiSelectionKeyCode:Q,panActivationKeyCode:H,zoomActivationKeyCode:J,onlyRenderVisibleElements:xe,selectNodesOnDrag:ve,defaultViewport:tt,translateExtent:ni,minZoom:Gt,maxZoom:sr,preventScrolling:Lr,zoomOnScroll:Un,zoomOnPinch:Ht,zoomOnDoubleClick:ri,panOnScroll:xt,panOnScrollSpeed:wr,panOnScrollMode:$r,panOnDrag:uo,onPaneClick:Sn,onPaneMouseEnter:ii,onPaneMouseMove:ca,onPaneMouseLeave:ki,onPaneScroll:da,onPaneContextMenu:Ct,onSelectionContextMenu:M,onSelectionStart:N,onSelectionEnd:O,onEdgeUpdate:_n,onEdgeContextMenu:ln,onEdgeDoubleClick:Mn,onEdgeMouseEnter:Gn,onEdgeMouseMove:ar,onEdgeMouseLeave:Ri,onEdgeUpdateStart:Hn,onEdgeUpdateEnd:wn,edgeUpdaterRadius:co,defaultMarkerColor:bn,noDragClassName:Al,noWheelClassName:fo,noPanClassName:qn,elevateEdgesOnSelect:v1,rfId:kc,disableKeyboardA11y:Hh,nodeOrigin:gt,nodeExtent:On}),K.jsx(Ere,{nodes:e,edges:t,defaultNodes:n,defaultEdges:r,onConnect:h,onConnectStart:p,onConnectEnd:m,onClickConnectStart:S,onClickConnectEnd:v,nodesDraggable:ce,nodesConnectable:Ne,nodesFocusable:se,edgesFocusable:vn,edgesUpdatable:Mt,elementsSelectable:ut,elevateNodesOnSelect:y1,minZoom:Gt,maxZoom:sr,nodeExtent:On,onNodesChange:Zo,onEdgesChange:Jo,snapToGrid:ne,snapGrid:te,connectionMode:D,translateExtent:ni,connectOnClick:p1,defaultEdgeOptions:es,fitView:fa,fitViewOptions:h1,onNodesDelete:E,onEdgesDelete:A,onNodeDragStart:x,onNodeDrag:T,onNodeDragStop:P,onSelectionDrag:C,onSelectionDragStart:I,onSelectionDragStop:R,noPanClassName:qn,nodeOrigin:gt,rfId:kc,autoPanOnConnect:b1,autoPanOnNodeDrag:S1,onError:w1,connectionRadius:_1,isValidConnection:Ac}),K.jsx(Cre,{onSelectionChange:$}),nt,K.jsx(Jne,{proOptions:m1,position:g1}),K.jsx(Ore,{rfId:kc,disableKeyboardA11y:Hh})]})})});$ie.displayName="ReactFlow";var nI={},I0={},N0={};Object.defineProperty(N0,"__esModule",{value:!0});N0.createLogMethods=void 0;var Fie=function(){return{debug:console.debug.bind(console),error:console.error.bind(console),fatal:console.error.bind(console),info:console.info.bind(console),trace:console.debug.bind(console),warn:console.warn.bind(console)}};N0.createLogMethods=Fie;var aC={},D0={};Object.defineProperty(D0,"__esModule",{value:!0});D0.boolean=void 0;const Bie=function(e){switch(Object.prototype.toString.call(e)){case"[object String]":return["true","t","yes","y","on","1"].includes(e.trim().toLowerCase());case"[object Number]":return e.valueOf()===1;case"[object Boolean]":return e.valueOf();default:return!1}};D0.boolean=Bie;var L0={};Object.defineProperty(L0,"__esModule",{value:!0});L0.isBooleanable=void 0;const jie=function(e){switch(Object.prototype.toString.call(e)){case"[object String]":return["true","t","yes","y","on","1","false","f","no","n","off","0"].includes(e.trim().toLowerCase());case"[object Number]":return[0,1].includes(e.valueOf());case"[object Boolean]":return!0;default:return!1}};L0.isBooleanable=jie;(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.isBooleanable=e.boolean=void 0;const t=D0;Object.defineProperty(e,"boolean",{enumerable:!0,get:function(){return t.boolean}});const n=L0;Object.defineProperty(e,"isBooleanable",{enumerable:!0,get:function(){return n.isBooleanable}})})(aC);var uE=Object.prototype.toString,rI=function(t){var n=uE.call(t),r=n==="[object Arguments]";return r||(r=n!=="[object Array]"&&t!==null&&typeof t=="object"&&typeof t.length=="number"&&t.length>=0&&uE.call(t.callee)==="[object Function]"),r},Mb,cE;function Vie(){if(cE)return Mb;cE=1;var e;if(!Object.keys){var t=Object.prototype.hasOwnProperty,n=Object.prototype.toString,r=rI,i=Object.prototype.propertyIsEnumerable,o=!i.call({toString:null},"toString"),s=i.call(function(){},"prototype"),a=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],l=function(f){var h=f.constructor;return h&&h.prototype===f},u={$applicationCache:!0,$console:!0,$external:!0,$frame:!0,$frameElement:!0,$frames:!0,$innerHeight:!0,$innerWidth:!0,$onmozfullscreenchange:!0,$onmozfullscreenerror:!0,$outerHeight:!0,$outerWidth:!0,$pageXOffset:!0,$pageYOffset:!0,$parent:!0,$scrollLeft:!0,$scrollTop:!0,$scrollX:!0,$scrollY:!0,$self:!0,$webkitIndexedDB:!0,$webkitStorageInfo:!0,$window:!0},c=function(){if(typeof window>"u")return!1;for(var f in window)try{if(!u["$"+f]&&t.call(window,f)&&window[f]!==null&&typeof window[f]=="object")try{l(window[f])}catch{return!0}}catch{return!0}return!1}(),d=function(f){if(typeof window>"u"||!c)return l(f);try{return l(f)}catch{return!1}};e=function(h){var p=h!==null&&typeof h=="object",m=n.call(h)==="[object Function]",S=r(h),v=p&&n.call(h)==="[object String]",y=[];if(!p&&!m&&!S)throw new TypeError("Object.keys called on a non-object");var g=s&&m;if(v&&h.length>0&&!t.call(h,0))for(var b=0;b0)for(var _=0;_"u"||!cn?Re:cn(Uint8Array),Ua={"%AggregateError%":typeof AggregateError>"u"?Re:AggregateError,"%Array%":Array,"%ArrayBuffer%":typeof ArrayBuffer>"u"?Re:ArrayBuffer,"%ArrayIteratorPrototype%":Bl&&cn?cn([][Symbol.iterator]()):Re,"%AsyncFromSyncIteratorPrototype%":Re,"%AsyncFunction%":Yl,"%AsyncGenerator%":Yl,"%AsyncGeneratorFunction%":Yl,"%AsyncIteratorPrototype%":Yl,"%Atomics%":typeof Atomics>"u"?Re:Atomics,"%BigInt%":typeof BigInt>"u"?Re:BigInt,"%BigInt64Array%":typeof BigInt64Array>"u"?Re:BigInt64Array,"%BigUint64Array%":typeof BigUint64Array>"u"?Re:BigUint64Array,"%Boolean%":Boolean,"%DataView%":typeof DataView>"u"?Re:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":Error,"%eval%":eval,"%EvalError%":EvalError,"%Float32Array%":typeof Float32Array>"u"?Re:Float32Array,"%Float64Array%":typeof Float64Array>"u"?Re:Float64Array,"%FinalizationRegistry%":typeof FinalizationRegistry>"u"?Re:FinalizationRegistry,"%Function%":oI,"%GeneratorFunction%":Yl,"%Int8Array%":typeof Int8Array>"u"?Re:Int8Array,"%Int16Array%":typeof Int16Array>"u"?Re:Int16Array,"%Int32Array%":typeof Int32Array>"u"?Re:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":Bl&&cn?cn(cn([][Symbol.iterator]())):Re,"%JSON%":typeof JSON=="object"?JSON:Re,"%Map%":typeof Map>"u"?Re:Map,"%MapIteratorPrototype%":typeof Map>"u"||!Bl||!cn?Re:cn(new Map()[Symbol.iterator]()),"%Math%":Math,"%Number%":Number,"%Object%":Object,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":typeof Promise>"u"?Re:Promise,"%Proxy%":typeof Proxy>"u"?Re:Proxy,"%RangeError%":RangeError,"%ReferenceError%":ReferenceError,"%Reflect%":typeof Reflect>"u"?Re:Reflect,"%RegExp%":RegExp,"%Set%":typeof Set>"u"?Re:Set,"%SetIteratorPrototype%":typeof Set>"u"||!Bl||!cn?Re:cn(new Set()[Symbol.iterator]()),"%SharedArrayBuffer%":typeof SharedArrayBuffer>"u"?Re:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":Bl&&cn?cn(""[Symbol.iterator]()):Re,"%Symbol%":Bl?Symbol:Re,"%SyntaxError%":ic,"%ThrowTypeError%":roe,"%TypedArray%":ooe,"%TypeError%":Du,"%Uint8Array%":typeof Uint8Array>"u"?Re:Uint8Array,"%Uint8ClampedArray%":typeof Uint8ClampedArray>"u"?Re:Uint8ClampedArray,"%Uint16Array%":typeof Uint16Array>"u"?Re:Uint16Array,"%Uint32Array%":typeof Uint32Array>"u"?Re:Uint32Array,"%URIError%":URIError,"%WeakMap%":typeof WeakMap>"u"?Re:WeakMap,"%WeakRef%":typeof WeakRef>"u"?Re:WeakRef,"%WeakSet%":typeof WeakSet>"u"?Re:WeakSet};if(cn)try{null.error}catch(e){var soe=cn(cn(e));Ua["%Error.prototype%"]=soe}var aoe=function e(t){var n;if(t==="%AsyncFunction%")n=Nb("async function () {}");else if(t==="%GeneratorFunction%")n=Nb("function* () {}");else if(t==="%AsyncGeneratorFunction%")n=Nb("async function* () {}");else if(t==="%AsyncGenerator%"){var r=e("%AsyncGeneratorFunction%");r&&(n=r.prototype)}else if(t==="%AsyncIteratorPrototype%"){var i=e("%AsyncGenerator%");i&&cn&&(n=cn(i.prototype))}return Ua[t]=n,n},gE={"%ArrayBufferPrototype%":["ArrayBuffer","prototype"],"%ArrayPrototype%":["Array","prototype"],"%ArrayProto_entries%":["Array","prototype","entries"],"%ArrayProto_forEach%":["Array","prototype","forEach"],"%ArrayProto_keys%":["Array","prototype","keys"],"%ArrayProto_values%":["Array","prototype","values"],"%AsyncFunctionPrototype%":["AsyncFunction","prototype"],"%AsyncGenerator%":["AsyncGeneratorFunction","prototype"],"%AsyncGeneratorPrototype%":["AsyncGeneratorFunction","prototype","prototype"],"%BooleanPrototype%":["Boolean","prototype"],"%DataViewPrototype%":["DataView","prototype"],"%DatePrototype%":["Date","prototype"],"%ErrorPrototype%":["Error","prototype"],"%EvalErrorPrototype%":["EvalError","prototype"],"%Float32ArrayPrototype%":["Float32Array","prototype"],"%Float64ArrayPrototype%":["Float64Array","prototype"],"%FunctionPrototype%":["Function","prototype"],"%Generator%":["GeneratorFunction","prototype"],"%GeneratorPrototype%":["GeneratorFunction","prototype","prototype"],"%Int8ArrayPrototype%":["Int8Array","prototype"],"%Int16ArrayPrototype%":["Int16Array","prototype"],"%Int32ArrayPrototype%":["Int32Array","prototype"],"%JSONParse%":["JSON","parse"],"%JSONStringify%":["JSON","stringify"],"%MapPrototype%":["Map","prototype"],"%NumberPrototype%":["Number","prototype"],"%ObjectPrototype%":["Object","prototype"],"%ObjProto_toString%":["Object","prototype","toString"],"%ObjProto_valueOf%":["Object","prototype","valueOf"],"%PromisePrototype%":["Promise","prototype"],"%PromiseProto_then%":["Promise","prototype","then"],"%Promise_all%":["Promise","all"],"%Promise_reject%":["Promise","reject"],"%Promise_resolve%":["Promise","resolve"],"%RangeErrorPrototype%":["RangeError","prototype"],"%ReferenceErrorPrototype%":["ReferenceError","prototype"],"%RegExpPrototype%":["RegExp","prototype"],"%SetPrototype%":["Set","prototype"],"%SharedArrayBufferPrototype%":["SharedArrayBuffer","prototype"],"%StringPrototype%":["String","prototype"],"%SymbolPrototype%":["Symbol","prototype"],"%SyntaxErrorPrototype%":["SyntaxError","prototype"],"%TypedArrayPrototype%":["TypedArray","prototype"],"%TypeErrorPrototype%":["TypeError","prototype"],"%Uint8ArrayPrototype%":["Uint8Array","prototype"],"%Uint8ClampedArrayPrototype%":["Uint8ClampedArray","prototype"],"%Uint16ArrayPrototype%":["Uint16Array","prototype"],"%Uint32ArrayPrototype%":["Uint32Array","prototype"],"%URIErrorPrototype%":["URIError","prototype"],"%WeakMapPrototype%":["WeakMap","prototype"],"%WeakSetPrototype%":["WeakSet","prototype"]},_h=iI,Bm=noe,loe=_h.call(Function.call,Array.prototype.concat),uoe=_h.call(Function.apply,Array.prototype.splice),mE=_h.call(Function.call,String.prototype.replace),jm=_h.call(Function.call,String.prototype.slice),coe=_h.call(Function.call,RegExp.prototype.exec),doe=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,foe=/\\(\\)?/g,hoe=function(t){var n=jm(t,0,1),r=jm(t,-1);if(n==="%"&&r!=="%")throw new ic("invalid intrinsic syntax, expected closing `%`");if(r==="%"&&n!=="%")throw new ic("invalid intrinsic syntax, expected opening `%`");var i=[];return mE(t,doe,function(o,s,a,l){i[i.length]=a?mE(l,foe,"$1"):s||o}),i},poe=function(t,n){var r=t,i;if(Bm(gE,r)&&(i=gE[r],r="%"+i[0]+"%"),Bm(Ua,r)){var o=Ua[r];if(o===Yl&&(o=aoe(r)),typeof o>"u"&&!n)throw new Du("intrinsic "+t+" exists, but is not available. Please file an issue!");return{alias:i,name:r,value:o}}throw new ic("intrinsic "+t+" does not exist!")},goe=function(t,n){if(typeof t!="string"||t.length===0)throw new Du("intrinsic name must be a non-empty string");if(arguments.length>1&&typeof n!="boolean")throw new Du('"allowMissing" argument must be a boolean');if(coe(/^%?[^%]*%?$/,t)===null)throw new ic("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var r=hoe(t),i=r.length>0?r[0]:"",o=poe("%"+i+"%",n),s=o.name,a=o.value,l=!1,u=o.alias;u&&(i=u[0],uoe(r,loe([0,1],u)));for(var c=1,d=!0;c=r.length){var m=za(a,f);d=!!m,d&&"get"in m&&!("originalValue"in m.get)?a=m.get:a=a[f]}else d=Bm(a,f),a=a[f];d&&!l&&(Ua[s]=a)}}return a},moe=goe,s2=moe("%Object.defineProperty%",!0),a2=function(){if(s2)try{return s2({},"a",{value:1}),!0}catch{return!1}return!1};a2.hasArrayLengthDefineBug=function(){if(!a2())return null;try{return s2([],"length",{value:1}).length!==1}catch{return!0}};var yoe=a2,voe=Gie,boe=typeof Symbol=="function"&&typeof Symbol("foo")=="symbol",Soe=Object.prototype.toString,_oe=Array.prototype.concat,sI=Object.defineProperty,woe=function(e){return typeof e=="function"&&Soe.call(e)==="[object Function]"},xoe=yoe(),aI=sI&&xoe,Coe=function(e,t,n,r){if(t in e){if(r===!0){if(e[t]===n)return}else if(!woe(r)||!r())return}aI?sI(e,t,{configurable:!0,enumerable:!1,value:n,writable:!0}):e[t]=n},lI=function(e,t){var n=arguments.length>2?arguments[2]:{},r=voe(t);boe&&(r=_oe.call(r,Object.getOwnPropertySymbols(t)));for(var i=0;i":return t>e;case":<":return t=":return t>=e;case":<=":return t<=e;default:throw new Error("Unimplemented comparison operator: ".concat(n))}};j0.testComparisonRange=Hoe;var V0={};Object.defineProperty(V0,"__esModule",{value:!0});V0.testRange=void 0;var qoe=function(e,t){return typeof e=="number"?!(et.max||e===t.max&&!t.maxInclusive):!1};V0.testRange=qoe;(function(e){var t=Ee&&Ee.__assign||function(){return t=Object.assign||function(c){for(var d,f=1,h=arguments.length;f0?{path:l.path,query:new RegExp("("+l.keywords.map(function(u){return(0,Xoe.escapeRegexString)(u.trim())}).join("|")+")")}:{path:l.path}})};z0.highlight=Qoe;var U0={},gI={exports:{}};(function(e){(function(t,n){e.exports?e.exports=n():t.nearley=n()})(Ee,function(){function t(u,c,d){return this.id=++t.highestId,this.name=u,this.symbols=c,this.postprocess=d,this}t.highestId=0,t.prototype.toString=function(u){var c=typeof u>"u"?this.symbols.map(l).join(" "):this.symbols.slice(0,u).map(l).join(" ")+" ● "+this.symbols.slice(u).map(l).join(" ");return this.name+" → "+c};function n(u,c,d,f){this.rule=u,this.dot=c,this.reference=d,this.data=[],this.wantedBy=f,this.isComplete=this.dot===u.symbols.length}n.prototype.toString=function(){return"{"+this.rule.toString(this.dot)+"}, from: "+(this.reference||0)},n.prototype.nextState=function(u){var c=new n(this.rule,this.dot+1,this.reference,this.wantedBy);return c.left=this,c.right=u,c.isComplete&&(c.data=c.build(),c.right=void 0),c},n.prototype.build=function(){var u=[],c=this;do u.push(c.right.data),c=c.left;while(c.left);return u.reverse(),u},n.prototype.finish=function(){this.rule.postprocess&&(this.data=this.rule.postprocess(this.data,this.reference,s.fail))};function r(u,c){this.grammar=u,this.index=c,this.states=[],this.wants={},this.scannable=[],this.completed={}}r.prototype.process=function(u){for(var c=this.states,d=this.wants,f=this.completed,h=0;h0&&c.push(" ^ "+f+" more lines identical to this"),f=0,c.push(" "+m)),d=m}},s.prototype.getSymbolDisplay=function(u){return a(u)},s.prototype.buildFirstStateStack=function(u,c){if(c.indexOf(u)!==-1)return null;if(u.wantedBy.length===0)return[u];var d=u.wantedBy[0],f=[u].concat(c),h=this.buildFirstStateStack(d,f);return h===null?null:[u].concat(h)},s.prototype.save=function(){var u=this.table[this.current];return u.lexerState=this.lexerState,u},s.prototype.restore=function(u){var c=u.index;this.current=c,this.table[c]=u,this.table.splice(c+1),this.lexerState=u.lexerState,this.results=this.finish()},s.prototype.rewind=function(u){if(!this.options.keepHistory)throw new Error("set option `keepHistory` to enable rewinding");this.restore(this.table[u])},s.prototype.finish=function(){var u=[],c=this.grammar.start,d=this.table[this.table.length-1];return d.states.forEach(function(f){f.rule.name===c&&f.dot===f.rule.symbols.length&&f.reference===0&&f.data!==s.fail&&u.push(f)}),u.map(function(f){return f.data})};function a(u){var c=typeof u;if(c==="string")return u;if(c==="object"){if(u.literal)return JSON.stringify(u.literal);if(u instanceof RegExp)return"character matching "+u;if(u.type)return u.type+" token";if(u.test)return"token matching "+String(u.test);throw new Error("Unknown symbol type: "+u)}}function l(u){var c=typeof u;if(c==="string")return u;if(c==="object"){if(u.literal)return JSON.stringify(u.literal);if(u instanceof RegExp)return u.toString();if(u.type)return"%"+u.type;if(u.test)return"<"+String(u.test)+">";throw new Error("Unknown symbol type: "+u)}}return{Parser:s,Grammar:i,Rule:t}})})(gI);var Zoe=gI.exports,rl={},mI={},na={};na.__esModule=void 0;na.__esModule=!0;var Joe=typeof Object.setPrototypeOf=="function",ese=typeof Object.getPrototypeOf=="function",tse=typeof Object.defineProperty=="function",nse=typeof Object.create=="function",rse=typeof Object.prototype.hasOwnProperty=="function",ise=function(t,n){Joe?Object.setPrototypeOf(t,n):t.__proto__=n};na.setPrototypeOf=ise;var ose=function(t){return ese?Object.getPrototypeOf(t):t.__proto__||t.prototype};na.getPrototypeOf=ose;var yE=!1,sse=function e(t,n,r){if(tse&&!yE)try{Object.defineProperty(t,n,r)}catch{yE=!0,e(t,n,r)}else t[n]=r.value};na.defineProperty=sse;var yI=function(t,n){return rse?t.hasOwnProperty(t,n):t[n]===void 0};na.hasOwnProperty=yI;var ase=function(t,n){if(nse)return Object.create(t,n);var r=function(){};r.prototype=t;var i=new r;if(typeof n>"u")return i;if(typeof n=="null")throw new Error("PropertyDescriptors must not be null.");if(typeof n=="object")for(var o in n)yI(n,o)&&(i[o]=n[o].value);return i};na.objectCreate=ase;(function(e){e.__esModule=void 0,e.__esModule=!0;var t=na,n=t.setPrototypeOf,r=t.getPrototypeOf,i=t.defineProperty,o=t.objectCreate,s=new Error().toString()==="[object Error]",a="";function l(u){var c=this.constructor,d=c.name||function(){var S=c.toString().match(/^function\s*([^\s(]+)/);return S===null?a||"Error":S[1]}(),f=d==="Error",h=f?a:d,p=Error.apply(this,arguments);if(n(p,r(this)),!(p instanceof c)||!(p instanceof l)){var p=this;Error.apply(this,arguments),i(p,"message",{configurable:!0,enumerable:!1,value:u,writable:!0})}if(i(p,"name",{configurable:!0,enumerable:!1,value:h,writable:!0}),Error.captureStackTrace&&Error.captureStackTrace(p,f?l:c),p.stack===void 0){var m=new Error(u);m.name=p.name,p.stack=m.stack}return s&&i(p,"toString",{configurable:!0,enumerable:!1,value:function(){return(this.name||"Error")+(typeof this.message>"u"?"":": "+this.message)},writable:!0}),p}a=l.name||"ExtendableError",l.prototype=o(Error.prototype,{constructor:{value:Error,enumerable:!1,writable:!0,configurable:!0}}),e.ExtendableError=l,e.default=e.ExtendableError})(mI);var vI=Ee&&Ee.__extends||function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,i){r.__proto__=i}||function(r,i){for(var o in i)Object.prototype.hasOwnProperty.call(i,o)&&(r[o]=i[o])},e(t,n)};return function(t,n){if(typeof n!="function"&&n!==null)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");e(t,n);function r(){this.constructor=t}t.prototype=n===null?Object.create(n):(r.prototype=n.prototype,new r)}}();Object.defineProperty(rl,"__esModule",{value:!0});rl.SyntaxError=rl.LiqeError=void 0;var lse=mI,bI=function(e){vI(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t}(lse.ExtendableError);rl.LiqeError=bI;var use=function(e){vI(t,e);function t(n,r,i,o){var s=e.call(this,n)||this;return s.message=n,s.offset=r,s.line=i,s.column=o,s}return t}(bI);rl.SyntaxError=use;var cC={},Vm=Ee&&Ee.__assign||function(){return Vm=Object.assign||function(e){for(var t,n=1,r=arguments.length;n"}],postprocess:function(e){return e.join("")}},{name:"comparison_operator$subexpression$1",symbols:["comparison_operator$subexpression$1$string$2"]},{name:"comparison_operator$subexpression$1$string$3",symbols:[{literal:":"},{literal:"<"}],postprocess:function(e){return e.join("")}},{name:"comparison_operator$subexpression$1",symbols:["comparison_operator$subexpression$1$string$3"]},{name:"comparison_operator$subexpression$1$string$4",symbols:[{literal:":"},{literal:">"},{literal:"="}],postprocess:function(e){return e.join("")}},{name:"comparison_operator$subexpression$1",symbols:["comparison_operator$subexpression$1$string$4"]},{name:"comparison_operator$subexpression$1$string$5",symbols:[{literal:":"},{literal:"<"},{literal:"="}],postprocess:function(e){return e.join("")}},{name:"comparison_operator$subexpression$1",symbols:["comparison_operator$subexpression$1$string$5"]},{name:"comparison_operator",symbols:["comparison_operator$subexpression$1"],postprocess:function(e,t){return{location:{start:t,end:t+e[0][0].length},type:"ComparisonOperator",operator:e[0][0]}}},{name:"regex",symbols:["regex_body","regex_flags"],postprocess:function(e){return e.join("")}},{name:"regex_body$ebnf$1",symbols:[]},{name:"regex_body$ebnf$1",symbols:["regex_body$ebnf$1","regex_body_char"],postprocess:function(e){return e[0].concat([e[1]])}},{name:"regex_body",symbols:[{literal:"/"},"regex_body$ebnf$1",{literal:"/"}],postprocess:function(e){return"/"+e[1].join("")+"/"}},{name:"regex_body_char",symbols:[/[^\\]/],postprocess:po},{name:"regex_body_char",symbols:[{literal:"\\"},/[^\\]/],postprocess:function(e){return"\\"+e[1]}},{name:"regex_flags",symbols:[]},{name:"regex_flags$ebnf$1",symbols:[/[gmiyusd]/]},{name:"regex_flags$ebnf$1",symbols:["regex_flags$ebnf$1",/[gmiyusd]/],postprocess:function(e){return e[0].concat([e[1]])}},{name:"regex_flags",symbols:["regex_flags$ebnf$1"],postprocess:function(e){return e[0].join("")}},{name:"unquoted_value$ebnf$1",symbols:[]},{name:"unquoted_value$ebnf$1",symbols:["unquoted_value$ebnf$1",/[a-zA-Z\.\-_*@#$]/],postprocess:function(e){return e[0].concat([e[1]])}},{name:"unquoted_value",symbols:[/[a-zA-Z_*@#$]/,"unquoted_value$ebnf$1"],postprocess:function(e){return e[0]+e[1].join("")}}],ParserStart:"main"};cC.default=cse;var SI={},G0={},Ch={};Object.defineProperty(Ch,"__esModule",{value:!0});Ch.isSafePath=void 0;var dse=/^(\.(?:[_a-zA-Z][a-zA-Z\d_]*|\0|[1-9]\d*))+$/u,fse=function(e){return dse.test(e)};Ch.isSafePath=fse;Object.defineProperty(G0,"__esModule",{value:!0});G0.createGetValueFunctionBody=void 0;var hse=Ch,pse=function(e){if(!(0,hse.isSafePath)(e))throw new Error("Unsafe path.");var t="return subject"+e;return t.replace(/(\.(\d+))/g,".[$2]").replace(/\./g,"?.")};G0.createGetValueFunctionBody=pse;(function(e){var t=Ee&&Ee.__assign||function(){return t=Object.assign||function(o){for(var s,a=1,l=arguments.length;a\d+) col (?\d+)/,Sse=function(e){if(e.trim()==="")return{location:{end:0,start:0},type:"EmptyExpression"};var t=new wI.default.Parser(vse),n;try{n=t.feed(e).results}catch(o){if(typeof(o==null?void 0:o.message)=="string"&&typeof(o==null?void 0:o.offset)=="number"){var r=o.message.match(bse);throw r?new gse.SyntaxError("Syntax error at line ".concat(r.groups.line," column ").concat(r.groups.column),o.offset,Number(r.groups.line),Number(r.groups.column)):o}throw o}if(n.length===0)throw new Error("Found no parsings.");if(n.length>1)throw new Error("Ambiguous results.");var i=(0,yse.hydrateAst)(n[0]);return i};U0.parse=Sse;var H0={};Object.defineProperty(H0,"__esModule",{value:!0});H0.test=void 0;var _se=wh,wse=function(e,t){return(0,_se.filter)(e,[t]).length===1};H0.test=wse;var xI={};(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.serialize=void 0;var t=function(o,s){return s==="double"?'"'.concat(o,'"'):s==="single"?"'".concat(o,"'"):o},n=function(o){if(o.type==="LiteralExpression")return o.quoted&&typeof o.value=="string"?t(o.value,o.quotes):String(o.value);if(o.type==="RegexExpression")return String(o.value);if(o.type==="RangeExpression"){var s=o.range,a=s.min,l=s.max,u=s.minInclusive,c=s.maxInclusive;return"".concat(u?"[":"{").concat(a," TO ").concat(l).concat(c?"]":"}")}if(o.type==="EmptyExpression")return"";throw new Error("Unexpected AST type.")},r=function(o){if(o.type!=="Tag")throw new Error("Expected a tag expression.");var s=o.field,a=o.expression,l=o.operator;if(s.type==="ImplicitField")return n(a);var u=s.quoted?t(s.name,s.quotes):s.name,c=" ".repeat(a.location.start-l.location.end);return u+l.operator+c+n(a)},i=function(o){if(o.type==="ParenthesizedExpression"){if(!("location"in o.expression))throw new Error("Expected location in expression.");if(!o.location.end)throw new Error("Expected location end.");var s=" ".repeat(o.expression.location.start-(o.location.start+1)),a=" ".repeat(o.location.end-o.expression.location.end-1);return"(".concat(s).concat((0,e.serialize)(o.expression)).concat(a,")")}if(o.type==="Tag")return r(o);if(o.type==="LogicalExpression"){var l="";return o.operator.type==="BooleanOperator"?(l+=" ".repeat(o.operator.location.start-o.left.location.end),l+=o.operator.operator,l+=" ".repeat(o.right.location.start-o.operator.location.end)):l=" ".repeat(o.right.location.start-o.left.location.end),"".concat((0,e.serialize)(o.left)).concat(l).concat((0,e.serialize)(o.right))}if(o.type==="UnaryOperator")return(o.operator==="NOT"?"NOT ":o.operator)+(0,e.serialize)(o.operand);if(o.type==="EmptyExpression")return"";throw new Error("Unexpected AST type.")};e.serialize=i})(xI);var q0={};Object.defineProperty(q0,"__esModule",{value:!0});q0.isSafeUnquotedExpression=void 0;var xse=function(e){return/^[#$*@A-Z_a-z][#$*.@A-Z_a-z-]*$/.test(e)};q0.isSafeUnquotedExpression=xse;(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.isSafeUnquotedExpression=e.serialize=e.SyntaxError=e.LiqeError=e.test=e.parse=e.highlight=e.filter=void 0;var t=wh;Object.defineProperty(e,"filter",{enumerable:!0,get:function(){return t.filter}});var n=z0;Object.defineProperty(e,"highlight",{enumerable:!0,get:function(){return n.highlight}});var r=U0;Object.defineProperty(e,"parse",{enumerable:!0,get:function(){return r.parse}});var i=H0;Object.defineProperty(e,"test",{enumerable:!0,get:function(){return i.test}});var o=rl;Object.defineProperty(e,"LiqeError",{enumerable:!0,get:function(){return o.LiqeError}}),Object.defineProperty(e,"SyntaxError",{enumerable:!0,get:function(){return o.SyntaxError}});var s=xI;Object.defineProperty(e,"serialize",{enumerable:!0,get:function(){return s.serialize}});var a=q0;Object.defineProperty(e,"isSafeUnquotedExpression",{enumerable:!0,get:function(){return a.isSafeUnquotedExpression}})})(pI);var Th={},CI={},il={};Object.defineProperty(il,"__esModule",{value:!0});il.ROARR_LOG_FORMAT_VERSION=il.ROARR_VERSION=void 0;il.ROARR_VERSION="5.0.0";il.ROARR_LOG_FORMAT_VERSION="2.0.0";var Eh={};Object.defineProperty(Eh,"__esModule",{value:!0});Eh.logLevels=void 0;Eh.logLevels={debug:20,error:50,fatal:60,info:30,trace:10,warn:40};var TI={},W0={};Object.defineProperty(W0,"__esModule",{value:!0});W0.hasOwnProperty=void 0;const Cse=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);W0.hasOwnProperty=Cse;(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.hasOwnProperty=void 0;var t=W0;Object.defineProperty(e,"hasOwnProperty",{enumerable:!0,get:function(){return t.hasOwnProperty}})})(TI);var EI={},K0={},X0={};Object.defineProperty(X0,"__esModule",{value:!0});X0.tokenize=void 0;const Tse=/(?:%(?([+0-]|-\+))?(?\d+)?(?\d+\$)?(?\.\d+)?(?[%BCESb-iosux]))|(\\%)/g,Ese=e=>{let t;const n=[];let r=0,i=0,o=null;for(;(t=Tse.exec(e))!==null;){t.index>i&&(o={literal:e.slice(i,t.index),type:"literal"},n.push(o));const s=t[0];i=t.index+s.length,s==="\\%"||s==="%%"?o&&o.type==="literal"?o.literal+="%":(o={literal:"%",type:"literal"},n.push(o)):t.groups&&(o={conversion:t.groups.conversion,flag:t.groups.flag||null,placeholder:s,position:t.groups.position?Number.parseInt(t.groups.position,10)-1:r++,precision:t.groups.precision?Number.parseInt(t.groups.precision.slice(1),10):null,type:"placeholder",width:t.groups.width?Number.parseInt(t.groups.width,10):null},n.push(o))}return i<=e.length-1&&(o&&o.type==="literal"?o.literal+=e.slice(i):n.push({literal:e.slice(i),type:"literal"})),n};X0.tokenize=Ese;Object.defineProperty(K0,"__esModule",{value:!0});K0.createPrintf=void 0;const vE=aC,Pse=X0,Ase=(e,t)=>t.placeholder,kse=e=>{var t;const n=(o,s,a)=>a==="-"?o.padEnd(s," "):a==="-+"?((Number(o)>=0?"+":"")+o).padEnd(s," "):a==="+"?((Number(o)>=0?"+":"")+o).padStart(s," "):a==="0"?o.padStart(s,"0"):o.padStart(s," "),r=(t=e==null?void 0:e.formatUnboundExpression)!==null&&t!==void 0?t:Ase,i={};return(o,...s)=>{let a=i[o];a||(a=i[o]=Pse.tokenize(o));let l="";for(const u of a)if(u.type==="literal")l+=u.literal;else{let c=s[u.position];if(c===void 0)l+=r(o,u,s);else if(u.conversion==="b")l+=vE.boolean(c)?"true":"false";else if(u.conversion==="B")l+=vE.boolean(c)?"TRUE":"FALSE";else if(u.conversion==="c")l+=c;else if(u.conversion==="C")l+=String(c).toUpperCase();else if(u.conversion==="i"||u.conversion==="d")c=String(Math.trunc(c)),u.width!==null&&(c=n(c,u.width,u.flag)),l+=c;else if(u.conversion==="e")l+=Number(c).toExponential();else if(u.conversion==="E")l+=Number(c).toExponential().toUpperCase();else if(u.conversion==="f")u.precision!==null&&(c=Number(c).toFixed(u.precision)),u.width!==null&&(c=n(String(c),u.width,u.flag)),l+=c;else if(u.conversion==="o")l+=(Number.parseInt(String(c),10)>>>0).toString(8);else if(u.conversion==="s")u.width!==null&&(c=n(String(c),u.width,u.flag)),l+=c;else if(u.conversion==="S")u.width!==null&&(c=n(String(c),u.width,u.flag)),l+=String(c).toUpperCase();else if(u.conversion==="u")l+=Number.parseInt(String(c),10)>>>0;else if(u.conversion==="x")c=(Number.parseInt(String(c),10)>>>0).toString(16),u.width!==null&&(c=n(String(c),u.width,u.flag)),l+=c;else throw new Error("Unknown format specifier.")}return l}};K0.createPrintf=kse;(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.printf=e.createPrintf=void 0;const t=K0;Object.defineProperty(e,"createPrintf",{enumerable:!0,get:function(){return t.createPrintf}}),e.printf=t.createPrintf()})(EI);var l2={exports:{}};(function(e,t){const{hasOwnProperty:n}=Object.prototype,r=S();r.configure=S,r.stringify=r,r.default=r,t.stringify=r,t.configure=S,e.exports=r;const i=/[\u0000-\u001f\u0022\u005c\ud800-\udfff]|[\ud800-\udbff](?![\udc00-\udfff])|(?:[^\ud800-\udbff]|^)[\udc00-\udfff]/;function o(v){return v.length<5e3&&!i.test(v)?`"${v}"`:JSON.stringify(v)}function s(v){if(v.length>200)return v.sort();for(let y=1;yg;)v[b]=v[b-1],b--;v[b]=g}return v}const a=Object.getOwnPropertyDescriptor(Object.getPrototypeOf(Object.getPrototypeOf(new Int8Array)),Symbol.toStringTag).get;function l(v){return a.call(v)!==void 0&&v.length!==0}function u(v,y,g){v.length= 1`)}return g===void 0?1/0:g}function h(v){return v===1?"1 item":`${v} items`}function p(v){const y=new Set;for(const g of v)(typeof g=="string"||typeof g=="number")&&y.add(String(g));return y}function m(v){if(n.call(v,"strict")){const y=v.strict;if(typeof y!="boolean")throw new TypeError('The "strict" argument must be of type boolean');if(y)return g=>{let b=`Object can not safely be stringified. Received type ${typeof g}`;throw typeof g!="function"&&(b+=` (${g.toString()})`),new Error(b)}}}function S(v){v={...v};const y=m(v);y&&(v.bigint===void 0&&(v.bigint=!1),"circularValue"in v||(v.circularValue=Error));const g=c(v),b=d(v,"bigint"),_=d(v,"deterministic"),w=f(v,"maximumDepth"),x=f(v,"maximumBreadth");function T(I,C,R,M,N,O){let D=C[I];switch(typeof D=="object"&&D!==null&&typeof D.toJSON=="function"&&(D=D.toJSON(I)),D=M.call(C,I,D),typeof D){case"string":return o(D);case"object":{if(D===null)return"null";if(R.indexOf(D)!==-1)return g;let L="",j=",";const U=O;if(Array.isArray(D)){if(D.length===0)return"[]";if(wx){const ne=D.length-x-1;L+=`${j}"... ${h(ne)} not stringified"`}return N!==""&&(L+=`
+${U}`),R.pop(),`[${L}]`}let G=Object.keys(D);const W=G.length;if(W===0)return"{}";if(wx){const H=W-x;L+=`${Y}"...":${X}"${h(H)} not stringified"`,Y=j}return N!==""&&Y.length>1&&(L=`
+${O}${L}
+${U}`),R.pop(),`{${L}}`}case"number":return isFinite(D)?String(D):y?y(D):"null";case"boolean":return D===!0?"true":"false";case"undefined":return;case"bigint":if(b)return String(D);default:return y?y(D):void 0}}function P(I,C,R,M,N,O){switch(typeof C=="object"&&C!==null&&typeof C.toJSON=="function"&&(C=C.toJSON(I)),typeof C){case"string":return o(C);case"object":{if(C===null)return"null";if(R.indexOf(C)!==-1)return g;const D=O;let L="",j=",";if(Array.isArray(C)){if(C.length===0)return"[]";if(wx){const B=C.length-x-1;L+=`${j}"... ${h(B)} not stringified"`}return N!==""&&(L+=`
+${D}`),R.pop(),`[${L}]`}R.push(C);let U="";N!==""&&(O+=N,j=`,
+${O}`,U=" ");let G="";for(const W of M){const X=P(W,C[W],R,M,N,O);X!==void 0&&(L+=`${G}${o(W)}:${U}${X}`,G=j)}return N!==""&&G.length>1&&(L=`
+${O}${L}
+${D}`),R.pop(),`{${L}}`}case"number":return isFinite(C)?String(C):y?y(C):"null";case"boolean":return C===!0?"true":"false";case"undefined":return;case"bigint":if(b)return String(C);default:return y?y(C):void 0}}function E(I,C,R,M,N){switch(typeof C){case"string":return o(C);case"object":{if(C===null)return"null";if(typeof C.toJSON=="function"){if(C=C.toJSON(I),typeof C!="object")return E(I,C,R,M,N);if(C===null)return"null"}if(R.indexOf(C)!==-1)return g;const O=N;if(Array.isArray(C)){if(C.length===0)return"[]";if(wx){const J=C.length-x-1;X+=`${Y}"... ${h(J)} not stringified"`}return X+=`
+${O}`,R.pop(),`[${X}]`}let D=Object.keys(C);const L=D.length;if(L===0)return"{}";if(wx){const X=L-x;U+=`${G}"...": "${h(X)} not stringified"`,G=j}return G!==""&&(U=`
+${N}${U}
+${O}`),R.pop(),`{${U}}`}case"number":return isFinite(C)?String(C):y?y(C):"null";case"boolean":return C===!0?"true":"false";case"undefined":return;case"bigint":if(b)return String(C);default:return y?y(C):void 0}}function A(I,C,R){switch(typeof C){case"string":return o(C);case"object":{if(C===null)return"null";if(typeof C.toJSON=="function"){if(C=C.toJSON(I),typeof C!="object")return A(I,C,R);if(C===null)return"null"}if(R.indexOf(C)!==-1)return g;let M="";if(Array.isArray(C)){if(C.length===0)return"[]";if(wx){const W=C.length-x-1;M+=`,"... ${h(W)} not stringified"`}return R.pop(),`[${M}]`}let N=Object.keys(C);const O=N.length;if(O===0)return"{}";if(wx){const j=O-x;M+=`${D}"...":"${h(j)} not stringified"`}return R.pop(),`{${M}}`}case"number":return isFinite(C)?String(C):y?y(C):"null";case"boolean":return C===!0?"true":"false";case"undefined":return;case"bigint":if(b)return String(C);default:return y?y(C):void 0}}function $(I,C,R){if(arguments.length>1){let M="";if(typeof R=="number"?M=" ".repeat(Math.min(R,10)):typeof R=="string"&&(M=R.slice(0,10)),C!=null){if(typeof C=="function")return T("",{"":I},[],C,M,"");if(Array.isArray(C))return P("",I,[],p(C),M,"")}if(M.length!==0)return E("",I,[],M,"")}return A("",I,[])}return $}})(l2,l2.exports);var Rse=l2.exports;(function(e){var t=Ee&&Ee.__importDefault||function(g){return g&&g.__esModule?g:{default:g}};Object.defineProperty(e,"__esModule",{value:!0}),e.createLogger=void 0;const n=il,r=Eh,i=TI,o=EI,s=t(lC),a=t(Rse);let l=!1;const u=(0,s.default)(),c=()=>u.ROARR,d=()=>({messageContext:{},transforms:[]}),f=()=>{const g=c().asyncLocalStorage;if(!g)throw new Error("AsyncLocalContext is unavailable.");const b=g.getStore();return b||d()},h=()=>!!c().asyncLocalStorage,p=()=>{if(h()){const g=f();return(0,i.hasOwnProperty)(g,"sequenceRoot")&&(0,i.hasOwnProperty)(g,"sequence")&&typeof g.sequence=="number"?String(g.sequenceRoot)+"."+String(g.sequence++):String(c().sequence++)}return String(c().sequence++)},m=(g,b)=>(_,w,x,T,P,E,A,$,I,C)=>{g.child({logLevel:b})(_,w,x,T,P,E,A,$,I,C)},S=1e3,v=(g,b)=>(_,w,x,T,P,E,A,$,I,C)=>{const R=(0,a.default)({a:_,b:w,c:x,d:T,e:P,f:E,g:A,h:$,i:I,j:C,logLevel:b});if(!R)throw new Error("Expected key to be a string");const M=c().onceLog;M.has(R)||(M.add(R),M.size>S&&M.clear(),g.child({logLevel:b})(_,w,x,T,P,E,A,$,I,C))},y=(g,b={},_=[])=>{const w=(x,T,P,E,A,$,I,C,R,M)=>{const N=Date.now(),O=p();let D;h()?D=f():D=d();let L,j;if(typeof x=="string"?L={...D.messageContext,...b}:L={...D.messageContext,...b,...x},typeof x=="string"&&T===void 0)j=x;else if(typeof x=="string"){if(!x.includes("%"))throw new Error("When a string parameter is followed by other arguments, then it is assumed that you are attempting to format a message using printf syntax. You either forgot to add printf bindings or if you meant to add context to the log message, pass them in an object as the first parameter.");j=(0,o.printf)(x,T,P,E,A,$,I,C,R,M)}else{let G=T;if(typeof T!="string")if(T===void 0)G="";else throw new TypeError("Message must be a string. Received "+typeof T+".");j=(0,o.printf)(G,P,E,A,$,I,C,R,M)}let U={context:L,message:j,sequence:O,time:N,version:n.ROARR_LOG_FORMAT_VERSION};for(const G of[...D.transforms,..._])if(U=G(U),typeof U!="object"||U===null)throw new Error("Message transform function must return a message object.");g(U)};return w.child=x=>{let T;return h()?T=f():T=d(),typeof x=="function"?(0,e.createLogger)(g,{...T.messageContext,...b,...x},[x,..._]):(0,e.createLogger)(g,{...T.messageContext,...b,...x},_)},w.getContext=()=>{let x;return h()?x=f():x=d(),{...x.messageContext,...b}},w.adopt=async(x,T)=>{if(!h())return l===!1&&(l=!0,g({context:{logLevel:r.logLevels.warn,package:"roarr"},message:"async_hooks are unavailable; Roarr.adopt will not function as expected",sequence:p(),time:Date.now(),version:n.ROARR_LOG_FORMAT_VERSION})),x();const P=f();let E;(0,i.hasOwnProperty)(P,"sequenceRoot")&&(0,i.hasOwnProperty)(P,"sequence")&&typeof P.sequence=="number"?E=P.sequenceRoot+"."+String(P.sequence++):E=String(c().sequence++);let A={...P.messageContext};const $=[...P.transforms];typeof T=="function"?$.push(T):A={...A,...T};const I=c().asyncLocalStorage;if(!I)throw new Error("Async local context unavailable.");return I.run({messageContext:A,sequence:0,sequenceRoot:E,transforms:$},()=>x())},w.debug=m(w,r.logLevels.debug),w.debugOnce=v(w,r.logLevels.debug),w.error=m(w,r.logLevels.error),w.errorOnce=v(w,r.logLevels.error),w.fatal=m(w,r.logLevels.fatal),w.fatalOnce=v(w,r.logLevels.fatal),w.info=m(w,r.logLevels.info),w.infoOnce=v(w,r.logLevels.info),w.trace=m(w,r.logLevels.trace),w.traceOnce=v(w,r.logLevels.trace),w.warn=m(w,r.logLevels.warn),w.warnOnce=v(w,r.logLevels.warn),w};e.createLogger=y})(CI);var Y0={},Ose=function(t,n){for(var r=t.split("."),i=n.split("."),o=0;o<3;o++){var s=Number(r[o]),a=Number(i[o]);if(s>a)return 1;if(a>s)return-1;if(!isNaN(s)&&isNaN(a))return 1;if(isNaN(s)&&!isNaN(a))return-1}return 0},Mse=Ee&&Ee.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Y0,"__esModule",{value:!0});Y0.createRoarrInitialGlobalStateBrowser=void 0;const bE=il,SE=Mse(Ose),Ise=e=>{const t=(e.versions||[]).concat();return t.length>1&&t.sort(SE.default),t.includes(bE.ROARR_VERSION)||t.push(bE.ROARR_VERSION),t.sort(SE.default),{sequence:0,...e,versions:t}};Y0.createRoarrInitialGlobalStateBrowser=Ise;var Q0={};Object.defineProperty(Q0,"__esModule",{value:!0});Q0.getLogLevelName=void 0;const Nse=e=>e<=10?"trace":e<=20?"debug":e<=30?"info":e<=40?"warn":e<=50?"error":"fatal";Q0.getLogLevelName=Nse;(function(e){var t=Ee&&Ee.__importDefault||function(d){return d&&d.__esModule?d:{default:d}};Object.defineProperty(e,"__esModule",{value:!0}),e.getLogLevelName=e.logLevels=e.Roarr=e.ROARR=void 0;const n=CI,r=Y0,o=(0,t(lC).default)(),s=(0,r.createRoarrInitialGlobalStateBrowser)(o.ROARR||{});e.ROARR=s,o.ROARR=s;const a=d=>JSON.stringify(d),l=(0,n.createLogger)(d=>{var f;s.write&&s.write(((f=s.serializeMessage)!==null&&f!==void 0?f:a)(d))});e.Roarr=l;var u=Eh;Object.defineProperty(e,"logLevels",{enumerable:!0,get:function(){return u.logLevels}});var c=Q0;Object.defineProperty(e,"getLogLevelName",{enumerable:!0,get:function(){return c.getLogLevelName}})})(Th);var Dse=Ee&&Ee.__rest||function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,r=Object.getOwnPropertySymbols(e);i0?h("%c ".concat(f," %c").concat(c?" [".concat(String(c),"]:"):"","%c ").concat(a.message," %O"),m,S,v,d):h("%c ".concat(f," %c").concat(c?" [".concat(String(c),"]:"):"","%c ").concat(a.message),m,S,v)}}};I0.createLogWriter=Gse;(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.createLogWriter=void 0;var t=I0;Object.defineProperty(e,"createLogWriter",{enumerable:!0,get:function(){return t.createLogWriter}})})(nI);Th.ROARR.write=nI.createLogWriter();const AI={};Th.Roarr.child(AI);const Z0=T0(Th.Roarr.child(AI)),fe=e=>Z0.get().child({namespace:e}),j3e=["trace","debug","info","warn","error","fatal"],V3e={trace:10,debug:20,info:30,warn:40,error:50,fatal:60};function Hse(){const e=[];return function(t,n){if(typeof n!="object"||n===null)return n;for(;e.length>0&&e.at(-1)!==this;)e.pop();return e.includes(n)?"[Circular]":(e.push(n),n)}}const Df=Vs("nodes/receivedOpenAPISchema",async(e,{dispatch:t,rejectWithValue:n})=>{const r=fe("system");try{const o=await(await fetch("openapi.json")).json();return r.info({openAPISchema:o},"Received OpenAPI schema"),JSON.parse(JSON.stringify(o,Hse()))}catch(i){return n({error:i})}}),kI={nodes:[],edges:[],schema:null,invocationTemplates:{},connectionStartParams:null,shouldShowGraphOverlay:!1,shouldShowFieldTypeLegend:!1,shouldShowMinimapPanel:!0,editorInstance:void 0,progressNodeSize:{width:512,height:512}},RI=Pt({name:"nodes",initialState:kI,reducers:{nodesChanged:(e,t)=>{e.nodes=qM(t.payload,e.nodes)},nodeAdded:(e,t)=>{e.nodes.push(t.payload)},edgesChanged:(e,t)=>{e.edges=nie(t.payload,e.edges)},connectionStarted:(e,t)=>{e.connectionStartParams=t.payload},connectionMade:(e,t)=>{e.edges=bM(t.payload,e.edges)},connectionEnded:e=>{e.connectionStartParams=null},fieldValueChanged:(e,t)=>{const{nodeId:n,fieldName:r,value:i}=t.payload,o=e.nodes.findIndex(s=>s.id===n);o>-1&&(e.nodes[o].data.inputs[r].value=i)},imageCollectionFieldValueChanged:(e,t)=>{const{nodeId:n,fieldName:r,value:i}=t.payload,o=e.nodes.findIndex(a=>a.id===n);if(o===-1)return;const s=Ln(e.nodes[o].data.inputs[r].value);if(!s){e.nodes[o].data.inputs[r].value=i;return}e.nodes[o].data.inputs[r].value=nY(s.concat(i),"image_name")},shouldShowGraphOverlayChanged:(e,t)=>{e.shouldShowGraphOverlay=t.payload},shouldShowFieldTypeLegendChanged:(e,t)=>{e.shouldShowFieldTypeLegend=t.payload},shouldShowMinimapPanelChanged:(e,t)=>{e.shouldShowMinimapPanel=t.payload},nodeTemplatesBuilt:(e,t)=>{e.invocationTemplates=t.payload},nodeEditorReset:e=>{e.nodes=[],e.edges=[]},setEditorInstance:(e,t)=>{e.editorInstance=t.payload},loadFileNodes:(e,t)=>{e.nodes=t.payload},loadFileEdges:(e,t)=>{e.edges=t.payload},setProgressNodeSize:(e,t)=>{e.progressNodeSize=t.payload}},extraReducers:e=>{e.addCase(Df.fulfilled,(t,n)=>{t.schema=n.payload})}}),{nodesChanged:z3e,edgesChanged:U3e,nodeAdded:G3e,fieldValueChanged:u2,connectionMade:H3e,connectionStarted:q3e,connectionEnded:W3e,shouldShowGraphOverlayChanged:K3e,shouldShowFieldTypeLegendChanged:X3e,shouldShowMinimapPanelChanged:Y3e,nodeTemplatesBuilt:dC,nodeEditorReset:OI,imageCollectionFieldValueChanged:Q3e,setEditorInstance:Z3e,loadFileNodes:J3e,loadFileEdges:e5e,setProgressNodeSize:t5e}=RI.actions,qse=RI.reducer,MI={esrganModelName:"RealESRGAN_x4plus.pth"},II=Pt({name:"postprocessing",initialState:MI,reducers:{esrganModelNameChanged:(e,t)=>{e.esrganModelName=t.payload}}}),{esrganModelNameChanged:n5e}=II.actions,Wse=II.reducer,Kse={positiveStylePrompt:"",negativeStylePrompt:"",shouldConcatSDXLStylePrompt:!0,shouldUseSDXLRefiner:!1,sdxlImg2ImgDenoisingStrength:.7,refinerModel:null,refinerSteps:20,refinerCFGScale:7.5,refinerScheduler:"euler",refinerAestheticScore:6,refinerStart:.7},NI=Pt({name:"sdxl",initialState:Kse,reducers:{setPositiveStylePromptSDXL:(e,t)=>{e.positiveStylePrompt=t.payload},setNegativeStylePromptSDXL:(e,t)=>{e.negativeStylePrompt=t.payload},setShouldConcatSDXLStylePrompt:(e,t)=>{e.shouldConcatSDXLStylePrompt=t.payload},setShouldUseSDXLRefiner:(e,t)=>{e.shouldUseSDXLRefiner=t.payload},setSDXLImg2ImgDenoisingStrength:(e,t)=>{e.sdxlImg2ImgDenoisingStrength=t.payload},refinerModelChanged:(e,t)=>{e.refinerModel=t.payload},setRefinerSteps:(e,t)=>{e.refinerSteps=t.payload},setRefinerCFGScale:(e,t)=>{e.refinerCFGScale=t.payload},setRefinerScheduler:(e,t)=>{e.refinerScheduler=t.payload},setRefinerAestheticScore:(e,t)=>{e.refinerAestheticScore=t.payload},setRefinerStart:(e,t)=>{e.refinerStart=t.payload}}}),{setPositiveStylePromptSDXL:r5e,setNegativeStylePromptSDXL:i5e,setShouldConcatSDXLStylePrompt:o5e,setShouldUseSDXLRefiner:Xse,setSDXLImg2ImgDenoisingStrength:s5e,refinerModelChanged:wE,setRefinerSteps:a5e,setRefinerCFGScale:l5e,setRefinerScheduler:u5e,setRefinerAestheticScore:c5e,setRefinerStart:d5e}=NI.actions,Yse=NI.reducer,Ph=ue("app/userInvoked"),Qse={type:"logger",log(e){this.output("log",e)},warn(e){this.output("warn",e)},error(e){this.output("error",e)},output(e,t){console&&console[e]&&console[e].apply(console,t)}};class zm{constructor(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};this.init(t,n)}init(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};this.prefix=n.prefix||"i18next:",this.logger=t||Qse,this.options=n,this.debug=n.debug}log(){for(var t=arguments.length,n=new Array(t),r=0;r{this.observers[r]=this.observers[r]||[],this.observers[r].push(n)}),this}off(t,n){if(this.observers[t]){if(!n){delete this.observers[t];return}this.observers[t]=this.observers[t].filter(r=>r!==n)}}emit(t){for(var n=arguments.length,r=new Array(n>1?n-1:0),i=1;i{s(...r)}),this.observers["*"]&&[].concat(this.observers["*"]).forEach(s=>{s.apply(s,[t,...r])})}}function Xc(){let e,t;const n=new Promise((r,i)=>{e=r,t=i});return n.resolve=e,n.reject=t,n}function xE(e){return e==null?"":""+e}function Zse(e,t,n){e.forEach(r=>{t[r]&&(n[r]=t[r])})}function fC(e,t,n){function r(s){return s&&s.indexOf("###")>-1?s.replace(/###/g,"."):s}function i(){return!e||typeof e=="string"}const o=typeof t!="string"?[].concat(t):t.split(".");for(;o.length>1;){if(i())return{};const s=r(o.shift());!e[s]&&n&&(e[s]=new n),Object.prototype.hasOwnProperty.call(e,s)?e=e[s]:e={}}return i()?{}:{obj:e,k:r(o.shift())}}function CE(e,t,n){const{obj:r,k:i}=fC(e,t,Object);r[i]=n}function Jse(e,t,n,r){const{obj:i,k:o}=fC(e,t,Object);i[o]=i[o]||[],r&&(i[o]=i[o].concat(n)),r||i[o].push(n)}function Um(e,t){const{obj:n,k:r}=fC(e,t);if(n)return n[r]}function eae(e,t,n){const r=Um(e,n);return r!==void 0?r:Um(t,n)}function DI(e,t,n){for(const r in t)r!=="__proto__"&&r!=="constructor"&&(r in e?typeof e[r]=="string"||e[r]instanceof String||typeof t[r]=="string"||t[r]instanceof String?n&&(e[r]=t[r]):DI(e[r],t[r],n):e[r]=t[r]);return e}function jl(e){return e.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")}var tae={"&":"&","<":"<",">":">",'"':""","'":"'","/":"/"};function nae(e){return typeof e=="string"?e.replace(/[&<>"'\/]/g,t=>tae[t]):e}const rae=[" ",",","?","!",";"];function iae(e,t,n){t=t||"",n=n||"";const r=rae.filter(s=>t.indexOf(s)<0&&n.indexOf(s)<0);if(r.length===0)return!0;const i=new RegExp(`(${r.map(s=>s==="?"?"\\?":s).join("|")})`);let o=!i.test(e);if(!o){const s=e.indexOf(n);s>0&&!i.test(e.substring(0,s))&&(o=!0)}return o}function Gm(e,t){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:".";if(!e)return;if(e[t])return e[t];const r=t.split(n);let i=e;for(let o=0;oo+s;)s++,a=r.slice(o,o+s).join(n),l=i[a];if(l===void 0)return;if(l===null)return null;if(t.endsWith(a)){if(typeof l=="string")return l;if(a&&typeof l[a]=="string")return l[a]}const u=r.slice(o+s).join(n);return u?Gm(l,u,n):void 0}i=i[r[o]]}return i}function Hm(e){return e&&e.indexOf("_")>0?e.replace("_","-"):e}class TE extends J0{constructor(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{ns:["translation"],defaultNS:"translation"};super(),this.data=t||{},this.options=n,this.options.keySeparator===void 0&&(this.options.keySeparator="."),this.options.ignoreJSONStructure===void 0&&(this.options.ignoreJSONStructure=!0)}addNamespaces(t){this.options.ns.indexOf(t)<0&&this.options.ns.push(t)}removeNamespaces(t){const n=this.options.ns.indexOf(t);n>-1&&this.options.ns.splice(n,1)}getResource(t,n,r){let i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{};const o=i.keySeparator!==void 0?i.keySeparator:this.options.keySeparator,s=i.ignoreJSONStructure!==void 0?i.ignoreJSONStructure:this.options.ignoreJSONStructure;let a=[t,n];r&&typeof r!="string"&&(a=a.concat(r)),r&&typeof r=="string"&&(a=a.concat(o?r.split(o):r)),t.indexOf(".")>-1&&(a=t.split("."));const l=Um(this.data,a);return l||!s||typeof r!="string"?l:Gm(this.data&&this.data[t]&&this.data[t][n],r,o)}addResource(t,n,r,i){let o=arguments.length>4&&arguments[4]!==void 0?arguments[4]:{silent:!1};const s=o.keySeparator!==void 0?o.keySeparator:this.options.keySeparator;let a=[t,n];r&&(a=a.concat(s?r.split(s):r)),t.indexOf(".")>-1&&(a=t.split("."),i=n,n=a[1]),this.addNamespaces(n),CE(this.data,a,i),o.silent||this.emit("added",t,n,r,i)}addResources(t,n,r){let i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{silent:!1};for(const o in r)(typeof r[o]=="string"||Object.prototype.toString.apply(r[o])==="[object Array]")&&this.addResource(t,n,o,r[o],{silent:!0});i.silent||this.emit("added",t,n,r)}addResourceBundle(t,n,r,i,o){let s=arguments.length>5&&arguments[5]!==void 0?arguments[5]:{silent:!1},a=[t,n];t.indexOf(".")>-1&&(a=t.split("."),i=r,r=n,n=a[1]),this.addNamespaces(n);let l=Um(this.data,a)||{};i?DI(l,r,o):l={...l,...r},CE(this.data,a,l),s.silent||this.emit("added",t,n,r)}removeResourceBundle(t,n){this.hasResourceBundle(t,n)&&delete this.data[t][n],this.removeNamespaces(n),this.emit("removed",t,n)}hasResourceBundle(t,n){return this.getResource(t,n)!==void 0}getResourceBundle(t,n){return n||(n=this.options.defaultNS),this.options.compatibilityAPI==="v1"?{...this.getResource(t,n)}:this.getResource(t,n)}getDataByLanguage(t){return this.data[t]}hasLanguageSomeTranslations(t){const n=this.getDataByLanguage(t);return!!(n&&Object.keys(n)||[]).find(i=>n[i]&&Object.keys(n[i]).length>0)}toJSON(){return this.data}}var LI={processors:{},addPostProcessor(e){this.processors[e.name]=e},handle(e,t,n,r,i){return e.forEach(o=>{this.processors[o]&&(t=this.processors[o].process(t,n,r,i))}),t}};const EE={};class qm extends J0{constructor(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};super(),Zse(["resourceStore","languageUtils","pluralResolver","interpolator","backendConnector","i18nFormat","utils"],t,this),this.options=n,this.options.keySeparator===void 0&&(this.options.keySeparator="."),this.logger=qi.create("translator")}changeLanguage(t){t&&(this.language=t)}exists(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{interpolation:{}};if(t==null)return!1;const r=this.resolve(t,n);return r&&r.res!==void 0}extractFromKey(t,n){let r=n.nsSeparator!==void 0?n.nsSeparator:this.options.nsSeparator;r===void 0&&(r=":");const i=n.keySeparator!==void 0?n.keySeparator:this.options.keySeparator;let o=n.ns||this.options.defaultNS||[];const s=r&&t.indexOf(r)>-1,a=!this.options.userDefinedKeySeparator&&!n.keySeparator&&!this.options.userDefinedNsSeparator&&!n.nsSeparator&&!iae(t,r,i);if(s&&!a){const l=t.match(this.interpolator.nestingRegexp);if(l&&l.length>0)return{key:t,namespaces:o};const u=t.split(r);(r!==i||r===i&&this.options.ns.indexOf(u[0])>-1)&&(o=u.shift()),t=u.join(i)}return typeof o=="string"&&(o=[o]),{key:t,namespaces:o}}translate(t,n,r){if(typeof n!="object"&&this.options.overloadTranslationOptionHandler&&(n=this.options.overloadTranslationOptionHandler(arguments)),typeof n=="object"&&(n={...n}),n||(n={}),t==null)return"";Array.isArray(t)||(t=[String(t)]);const i=n.returnDetails!==void 0?n.returnDetails:this.options.returnDetails,o=n.keySeparator!==void 0?n.keySeparator:this.options.keySeparator,{key:s,namespaces:a}=this.extractFromKey(t[t.length-1],n),l=a[a.length-1],u=n.lng||this.language,c=n.appendNamespaceToCIMode||this.options.appendNamespaceToCIMode;if(u&&u.toLowerCase()==="cimode"){if(c){const b=n.nsSeparator||this.options.nsSeparator;return i?{res:`${l}${b}${s}`,usedKey:s,exactUsedKey:s,usedLng:u,usedNS:l}:`${l}${b}${s}`}return i?{res:s,usedKey:s,exactUsedKey:s,usedLng:u,usedNS:l}:s}const d=this.resolve(t,n);let f=d&&d.res;const h=d&&d.usedKey||s,p=d&&d.exactUsedKey||s,m=Object.prototype.toString.apply(f),S=["[object Number]","[object Function]","[object RegExp]"],v=n.joinArrays!==void 0?n.joinArrays:this.options.joinArrays,y=!this.i18nFormat||this.i18nFormat.handleAsObject;if(y&&f&&(typeof f!="string"&&typeof f!="boolean"&&typeof f!="number")&&S.indexOf(m)<0&&!(typeof v=="string"&&m==="[object Array]")){if(!n.returnObjects&&!this.options.returnObjects){this.options.returnedObjectHandler||this.logger.warn("accessing an object - but returnObjects options is not enabled!");const b=this.options.returnedObjectHandler?this.options.returnedObjectHandler(h,f,{...n,ns:a}):`key '${s} (${this.language})' returned an object instead of string.`;return i?(d.res=b,d):b}if(o){const b=m==="[object Array]",_=b?[]:{},w=b?p:h;for(const x in f)if(Object.prototype.hasOwnProperty.call(f,x)){const T=`${w}${o}${x}`;_[x]=this.translate(T,{...n,joinArrays:!1,ns:a}),_[x]===T&&(_[x]=f[x])}f=_}}else if(y&&typeof v=="string"&&m==="[object Array]")f=f.join(v),f&&(f=this.extendTranslation(f,t,n,r));else{let b=!1,_=!1;const w=n.count!==void 0&&typeof n.count!="string",x=qm.hasDefaultValue(n),T=w?this.pluralResolver.getSuffix(u,n.count,n):"",P=n.ordinal&&w?this.pluralResolver.getSuffix(u,n.count,{ordinal:!1}):"",E=n[`defaultValue${T}`]||n[`defaultValue${P}`]||n.defaultValue;!this.isValidLookup(f)&&x&&(b=!0,f=E),this.isValidLookup(f)||(_=!0,f=s);const $=(n.missingKeyNoValueFallbackToKey||this.options.missingKeyNoValueFallbackToKey)&&_?void 0:f,I=x&&E!==f&&this.options.updateMissing;if(_||b||I){if(this.logger.log(I?"updateKey":"missingKey",u,l,s,I?E:f),o){const N=this.resolve(s,{...n,keySeparator:!1});N&&N.res&&this.logger.warn("Seems the loaded translations were in flat JSON format instead of nested. Either set keySeparator: false on init or make sure your translations are published in nested format.")}let C=[];const R=this.languageUtils.getFallbackCodes(this.options.fallbackLng,n.lng||this.language);if(this.options.saveMissingTo==="fallback"&&R&&R[0])for(let N=0;N{const L=x&&D!==f?D:$;this.options.missingKeyHandler?this.options.missingKeyHandler(N,l,O,L,I,n):this.backendConnector&&this.backendConnector.saveMissing&&this.backendConnector.saveMissing(N,l,O,L,I,n),this.emit("missingKey",N,l,O,f)};this.options.saveMissing&&(this.options.saveMissingPlurals&&w?C.forEach(N=>{this.pluralResolver.getSuffixes(N,n).forEach(O=>{M([N],s+O,n[`defaultValue${O}`]||E)})}):M(C,s,E))}f=this.extendTranslation(f,t,n,d,r),_&&f===s&&this.options.appendNamespaceToMissingKey&&(f=`${l}:${s}`),(_||b)&&this.options.parseMissingKeyHandler&&(this.options.compatibilityAPI!=="v1"?f=this.options.parseMissingKeyHandler(this.options.appendNamespaceToMissingKey?`${l}:${s}`:s,b?f:void 0):f=this.options.parseMissingKeyHandler(f))}return i?(d.res=f,d):f}extendTranslation(t,n,r,i,o){var s=this;if(this.i18nFormat&&this.i18nFormat.parse)t=this.i18nFormat.parse(t,{...this.options.interpolation.defaultVariables,...r},i.usedLng,i.usedNS,i.usedKey,{resolved:i});else if(!r.skipInterpolation){r.interpolation&&this.interpolator.init({...r,interpolation:{...this.options.interpolation,...r.interpolation}});const u=typeof t=="string"&&(r&&r.interpolation&&r.interpolation.skipOnVariables!==void 0?r.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables);let c;if(u){const f=t.match(this.interpolator.nestingRegexp);c=f&&f.length}let d=r.replace&&typeof r.replace!="string"?r.replace:r;if(this.options.interpolation.defaultVariables&&(d={...this.options.interpolation.defaultVariables,...d}),t=this.interpolator.interpolate(t,d,r.lng||this.language,r),u){const f=t.match(this.interpolator.nestingRegexp),h=f&&f.length;c1&&arguments[1]!==void 0?arguments[1]:{},r,i,o,s,a;return typeof t=="string"&&(t=[t]),t.forEach(l=>{if(this.isValidLookup(r))return;const u=this.extractFromKey(l,n),c=u.key;i=c;let d=u.namespaces;this.options.fallbackNS&&(d=d.concat(this.options.fallbackNS));const f=n.count!==void 0&&typeof n.count!="string",h=f&&!n.ordinal&&n.count===0&&this.pluralResolver.shouldUseIntlApi(),p=n.context!==void 0&&(typeof n.context=="string"||typeof n.context=="number")&&n.context!=="",m=n.lngs?n.lngs:this.languageUtils.toResolveHierarchy(n.lng||this.language,n.fallbackLng);d.forEach(S=>{this.isValidLookup(r)||(a=S,!EE[`${m[0]}-${S}`]&&this.utils&&this.utils.hasLoadedNamespace&&!this.utils.hasLoadedNamespace(a)&&(EE[`${m[0]}-${S}`]=!0,this.logger.warn(`key "${i}" for languages "${m.join(", ")}" won't get resolved as namespace "${a}" was not yet loaded`,"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!")),m.forEach(v=>{if(this.isValidLookup(r))return;s=v;const y=[c];if(this.i18nFormat&&this.i18nFormat.addLookupKeys)this.i18nFormat.addLookupKeys(y,c,v,S,n);else{let b;f&&(b=this.pluralResolver.getSuffix(v,n.count,n));const _=`${this.options.pluralSeparator}zero`,w=`${this.options.pluralSeparator}ordinal${this.options.pluralSeparator}`;if(f&&(y.push(c+b),n.ordinal&&b.indexOf(w)===0&&y.push(c+b.replace(w,this.options.pluralSeparator)),h&&y.push(c+_)),p){const x=`${c}${this.options.contextSeparator}${n.context}`;y.push(x),f&&(y.push(x+b),n.ordinal&&b.indexOf(w)===0&&y.push(x+b.replace(w,this.options.pluralSeparator)),h&&y.push(x+_))}}let g;for(;g=y.pop();)this.isValidLookup(r)||(o=g,r=this.getResource(v,S,g,n))}))})}),{res:r,usedKey:i,exactUsedKey:o,usedLng:s,usedNS:a}}isValidLookup(t){return t!==void 0&&!(!this.options.returnNull&&t===null)&&!(!this.options.returnEmptyString&&t==="")}getResource(t,n,r){let i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{};return this.i18nFormat&&this.i18nFormat.getResource?this.i18nFormat.getResource(t,n,r,i):this.resourceStore.getResource(t,n,r,i)}static hasDefaultValue(t){const n="defaultValue";for(const r in t)if(Object.prototype.hasOwnProperty.call(t,r)&&n===r.substring(0,n.length)&&t[r]!==void 0)return!0;return!1}}function $b(e){return e.charAt(0).toUpperCase()+e.slice(1)}class PE{constructor(t){this.options=t,this.supportedLngs=this.options.supportedLngs||!1,this.logger=qi.create("languageUtils")}getScriptPartFromCode(t){if(t=Hm(t),!t||t.indexOf("-")<0)return null;const n=t.split("-");return n.length===2||(n.pop(),n[n.length-1].toLowerCase()==="x")?null:this.formatLanguageCode(n.join("-"))}getLanguagePartFromCode(t){if(t=Hm(t),!t||t.indexOf("-")<0)return t;const n=t.split("-");return this.formatLanguageCode(n[0])}formatLanguageCode(t){if(typeof t=="string"&&t.indexOf("-")>-1){const n=["hans","hant","latn","cyrl","cans","mong","arab"];let r=t.split("-");return this.options.lowerCaseLng?r=r.map(i=>i.toLowerCase()):r.length===2?(r[0]=r[0].toLowerCase(),r[1]=r[1].toUpperCase(),n.indexOf(r[1].toLowerCase())>-1&&(r[1]=$b(r[1].toLowerCase()))):r.length===3&&(r[0]=r[0].toLowerCase(),r[1].length===2&&(r[1]=r[1].toUpperCase()),r[0]!=="sgn"&&r[2].length===2&&(r[2]=r[2].toUpperCase()),n.indexOf(r[1].toLowerCase())>-1&&(r[1]=$b(r[1].toLowerCase())),n.indexOf(r[2].toLowerCase())>-1&&(r[2]=$b(r[2].toLowerCase()))),r.join("-")}return this.options.cleanCode||this.options.lowerCaseLng?t.toLowerCase():t}isSupportedCode(t){return(this.options.load==="languageOnly"||this.options.nonExplicitSupportedLngs)&&(t=this.getLanguagePartFromCode(t)),!this.supportedLngs||!this.supportedLngs.length||this.supportedLngs.indexOf(t)>-1}getBestMatchFromCodes(t){if(!t)return null;let n;return t.forEach(r=>{if(n)return;const i=this.formatLanguageCode(r);(!this.options.supportedLngs||this.isSupportedCode(i))&&(n=i)}),!n&&this.options.supportedLngs&&t.forEach(r=>{if(n)return;const i=this.getLanguagePartFromCode(r);if(this.isSupportedCode(i))return n=i;n=this.options.supportedLngs.find(o=>{if(o===i)return o;if(!(o.indexOf("-")<0&&i.indexOf("-")<0)&&o.indexOf(i)===0)return o})}),n||(n=this.getFallbackCodes(this.options.fallbackLng)[0]),n}getFallbackCodes(t,n){if(!t)return[];if(typeof t=="function"&&(t=t(n)),typeof t=="string"&&(t=[t]),Object.prototype.toString.apply(t)==="[object Array]")return t;if(!n)return t.default||[];let r=t[n];return r||(r=t[this.getScriptPartFromCode(n)]),r||(r=t[this.formatLanguageCode(n)]),r||(r=t[this.getLanguagePartFromCode(n)]),r||(r=t.default),r||[]}toResolveHierarchy(t,n){const r=this.getFallbackCodes(n||this.options.fallbackLng||[],t),i=[],o=s=>{s&&(this.isSupportedCode(s)?i.push(s):this.logger.warn(`rejecting language code not found in supportedLngs: ${s}`))};return typeof t=="string"&&(t.indexOf("-")>-1||t.indexOf("_")>-1)?(this.options.load!=="languageOnly"&&o(this.formatLanguageCode(t)),this.options.load!=="languageOnly"&&this.options.load!=="currentOnly"&&o(this.getScriptPartFromCode(t)),this.options.load!=="currentOnly"&&o(this.getLanguagePartFromCode(t))):typeof t=="string"&&o(this.formatLanguageCode(t)),r.forEach(s=>{i.indexOf(s)<0&&o(this.formatLanguageCode(s))}),i}}let oae=[{lngs:["ach","ak","am","arn","br","fil","gun","ln","mfe","mg","mi","oc","pt","pt-BR","tg","tl","ti","tr","uz","wa"],nr:[1,2],fc:1},{lngs:["af","an","ast","az","bg","bn","ca","da","de","dev","el","en","eo","es","et","eu","fi","fo","fur","fy","gl","gu","ha","hi","hu","hy","ia","it","kk","kn","ku","lb","mai","ml","mn","mr","nah","nap","nb","ne","nl","nn","no","nso","pa","pap","pms","ps","pt-PT","rm","sco","se","si","so","son","sq","sv","sw","ta","te","tk","ur","yo"],nr:[1,2],fc:2},{lngs:["ay","bo","cgg","fa","ht","id","ja","jbo","ka","km","ko","ky","lo","ms","sah","su","th","tt","ug","vi","wo","zh"],nr:[1],fc:3},{lngs:["be","bs","cnr","dz","hr","ru","sr","uk"],nr:[1,2,5],fc:4},{lngs:["ar"],nr:[0,1,2,3,11,100],fc:5},{lngs:["cs","sk"],nr:[1,2,5],fc:6},{lngs:["csb","pl"],nr:[1,2,5],fc:7},{lngs:["cy"],nr:[1,2,3,8],fc:8},{lngs:["fr"],nr:[1,2],fc:9},{lngs:["ga"],nr:[1,2,3,7,11],fc:10},{lngs:["gd"],nr:[1,2,3,20],fc:11},{lngs:["is"],nr:[1,2],fc:12},{lngs:["jv"],nr:[0,1],fc:13},{lngs:["kw"],nr:[1,2,3,4],fc:14},{lngs:["lt"],nr:[1,2,10],fc:15},{lngs:["lv"],nr:[1,2,0],fc:16},{lngs:["mk"],nr:[1,2],fc:17},{lngs:["mnk"],nr:[0,1,2],fc:18},{lngs:["mt"],nr:[1,2,11,20],fc:19},{lngs:["or"],nr:[2,1],fc:2},{lngs:["ro"],nr:[1,2,20],fc:20},{lngs:["sl"],nr:[5,1,2,3],fc:21},{lngs:["he","iw"],nr:[1,2,20,21],fc:22}],sae={1:function(e){return+(e>1)},2:function(e){return+(e!=1)},3:function(e){return 0},4:function(e){return e%10==1&&e%100!=11?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2},5:function(e){return e==0?0:e==1?1:e==2?2:e%100>=3&&e%100<=10?3:e%100>=11?4:5},6:function(e){return e==1?0:e>=2&&e<=4?1:2},7:function(e){return e==1?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2},8:function(e){return e==1?0:e==2?1:e!=8&&e!=11?2:3},9:function(e){return+(e>=2)},10:function(e){return e==1?0:e==2?1:e<7?2:e<11?3:4},11:function(e){return e==1||e==11?0:e==2||e==12?1:e>2&&e<20?2:3},12:function(e){return+(e%10!=1||e%100==11)},13:function(e){return+(e!==0)},14:function(e){return e==1?0:e==2?1:e==3?2:3},15:function(e){return e%10==1&&e%100!=11?0:e%10>=2&&(e%100<10||e%100>=20)?1:2},16:function(e){return e%10==1&&e%100!=11?0:e!==0?1:2},17:function(e){return e==1||e%10==1&&e%100!=11?0:1},18:function(e){return e==0?0:e==1?1:2},19:function(e){return e==1?0:e==0||e%100>1&&e%100<11?1:e%100>10&&e%100<20?2:3},20:function(e){return e==1?0:e==0||e%100>0&&e%100<20?1:2},21:function(e){return e%100==1?1:e%100==2?2:e%100==3||e%100==4?3:0},22:function(e){return e==1?0:e==2?1:(e<0||e>10)&&e%10==0?2:3}};const aae=["v1","v2","v3"],lae=["v4"],AE={zero:0,one:1,two:2,few:3,many:4,other:5};function uae(){const e={};return oae.forEach(t=>{t.lngs.forEach(n=>{e[n]={numbers:t.nr,plurals:sae[t.fc]}})}),e}class cae{constructor(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};this.languageUtils=t,this.options=n,this.logger=qi.create("pluralResolver"),(!this.options.compatibilityJSON||lae.includes(this.options.compatibilityJSON))&&(typeof Intl>"u"||!Intl.PluralRules)&&(this.options.compatibilityJSON="v3",this.logger.error("Your environment seems not to be Intl API compatible, use an Intl.PluralRules polyfill. Will fallback to the compatibilityJSON v3 format handling.")),this.rules=uae()}addRule(t,n){this.rules[t]=n}getRule(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(this.shouldUseIntlApi())try{return new Intl.PluralRules(Hm(t),{type:n.ordinal?"ordinal":"cardinal"})}catch{return}return this.rules[t]||this.rules[this.languageUtils.getLanguagePartFromCode(t)]}needsPlural(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};const r=this.getRule(t,n);return this.shouldUseIntlApi()?r&&r.resolvedOptions().pluralCategories.length>1:r&&r.numbers.length>1}getPluralFormsOfKey(t,n){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};return this.getSuffixes(t,r).map(i=>`${n}${i}`)}getSuffixes(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};const r=this.getRule(t,n);return r?this.shouldUseIntlApi()?r.resolvedOptions().pluralCategories.sort((i,o)=>AE[i]-AE[o]).map(i=>`${this.options.prepend}${n.ordinal?`ordinal${this.options.prepend}`:""}${i}`):r.numbers.map(i=>this.getSuffix(t,i,n)):[]}getSuffix(t,n){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};const i=this.getRule(t,r);return i?this.shouldUseIntlApi()?`${this.options.prepend}${r.ordinal?`ordinal${this.options.prepend}`:""}${i.select(n)}`:this.getSuffixRetroCompatible(i,n):(this.logger.warn(`no plural rule found for: ${t}`),"")}getSuffixRetroCompatible(t,n){const r=t.noAbs?t.plurals(n):t.plurals(Math.abs(n));let i=t.numbers[r];this.options.simplifyPluralSuffix&&t.numbers.length===2&&t.numbers[0]===1&&(i===2?i="plural":i===1&&(i=""));const o=()=>this.options.prepend&&i.toString()?this.options.prepend+i.toString():i.toString();return this.options.compatibilityJSON==="v1"?i===1?"":typeof i=="number"?`_plural_${i.toString()}`:o():this.options.compatibilityJSON==="v2"||this.options.simplifyPluralSuffix&&t.numbers.length===2&&t.numbers[0]===1?o():this.options.prepend&&r.toString()?this.options.prepend+r.toString():r.toString()}shouldUseIntlApi(){return!aae.includes(this.options.compatibilityJSON)}}function kE(e,t,n){let r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:".",i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,o=eae(e,t,n);return!o&&i&&typeof n=="string"&&(o=Gm(e,n,r),o===void 0&&(o=Gm(t,n,r))),o}class dae{constructor(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};this.logger=qi.create("interpolator"),this.options=t,this.format=t.interpolation&&t.interpolation.format||(n=>n),this.init(t)}init(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};t.interpolation||(t.interpolation={escapeValue:!0});const n=t.interpolation;this.escape=n.escape!==void 0?n.escape:nae,this.escapeValue=n.escapeValue!==void 0?n.escapeValue:!0,this.useRawValueToEscape=n.useRawValueToEscape!==void 0?n.useRawValueToEscape:!1,this.prefix=n.prefix?jl(n.prefix):n.prefixEscaped||"{{",this.suffix=n.suffix?jl(n.suffix):n.suffixEscaped||"}}",this.formatSeparator=n.formatSeparator?n.formatSeparator:n.formatSeparator||",",this.unescapePrefix=n.unescapeSuffix?"":n.unescapePrefix||"-",this.unescapeSuffix=this.unescapePrefix?"":n.unescapeSuffix||"",this.nestingPrefix=n.nestingPrefix?jl(n.nestingPrefix):n.nestingPrefixEscaped||jl("$t("),this.nestingSuffix=n.nestingSuffix?jl(n.nestingSuffix):n.nestingSuffixEscaped||jl(")"),this.nestingOptionsSeparator=n.nestingOptionsSeparator?n.nestingOptionsSeparator:n.nestingOptionsSeparator||",",this.maxReplaces=n.maxReplaces?n.maxReplaces:1e3,this.alwaysFormat=n.alwaysFormat!==void 0?n.alwaysFormat:!1,this.resetRegExp()}reset(){this.options&&this.init(this.options)}resetRegExp(){const t=`${this.prefix}(.+?)${this.suffix}`;this.regexp=new RegExp(t,"g");const n=`${this.prefix}${this.unescapePrefix}(.+?)${this.unescapeSuffix}${this.suffix}`;this.regexpUnescape=new RegExp(n,"g");const r=`${this.nestingPrefix}(.+?)${this.nestingSuffix}`;this.nestingRegexp=new RegExp(r,"g")}interpolate(t,n,r,i){let o,s,a;const l=this.options&&this.options.interpolation&&this.options.interpolation.defaultVariables||{};function u(p){return p.replace(/\$/g,"$$$$")}const c=p=>{if(p.indexOf(this.formatSeparator)<0){const y=kE(n,l,p,this.options.keySeparator,this.options.ignoreJSONStructure);return this.alwaysFormat?this.format(y,void 0,r,{...i,...n,interpolationkey:p}):y}const m=p.split(this.formatSeparator),S=m.shift().trim(),v=m.join(this.formatSeparator).trim();return this.format(kE(n,l,S,this.options.keySeparator,this.options.ignoreJSONStructure),v,r,{...i,...n,interpolationkey:S})};this.resetRegExp();const d=i&&i.missingInterpolationHandler||this.options.missingInterpolationHandler,f=i&&i.interpolation&&i.interpolation.skipOnVariables!==void 0?i.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables;return[{regex:this.regexpUnescape,safeValue:p=>u(p)},{regex:this.regexp,safeValue:p=>this.escapeValue?u(this.escape(p)):u(p)}].forEach(p=>{for(a=0;o=p.regex.exec(t);){const m=o[1].trim();if(s=c(m),s===void 0)if(typeof d=="function"){const v=d(t,o,i);s=typeof v=="string"?v:""}else if(i&&Object.prototype.hasOwnProperty.call(i,m))s="";else if(f){s=o[0];continue}else this.logger.warn(`missed to pass in variable ${m} for interpolating ${t}`),s="";else typeof s!="string"&&!this.useRawValueToEscape&&(s=xE(s));const S=p.safeValue(s);if(t=t.replace(o[0],S),f?(p.regex.lastIndex+=s.length,p.regex.lastIndex-=o[0].length):p.regex.lastIndex=0,a++,a>=this.maxReplaces)break}}),t}nest(t,n){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},i,o,s;function a(l,u){const c=this.nestingOptionsSeparator;if(l.indexOf(c)<0)return l;const d=l.split(new RegExp(`${c}[ ]*{`));let f=`{${d[1]}`;l=d[0],f=this.interpolate(f,s);const h=f.match(/'/g),p=f.match(/"/g);(h&&h.length%2===0&&!p||p.length%2!==0)&&(f=f.replace(/'/g,'"'));try{s=JSON.parse(f),u&&(s={...u,...s})}catch(m){return this.logger.warn(`failed parsing options string in nesting for key ${l}`,m),`${l}${c}${f}`}return delete s.defaultValue,l}for(;i=this.nestingRegexp.exec(t);){let l=[];s={...r},s=s.replace&&typeof s.replace!="string"?s.replace:s,s.applyPostProcessor=!1,delete s.defaultValue;let u=!1;if(i[0].indexOf(this.formatSeparator)!==-1&&!/{.*}/.test(i[1])){const c=i[1].split(this.formatSeparator).map(d=>d.trim());i[1]=c.shift(),l=c,u=!0}if(o=n(a.call(this,i[1].trim(),s),s),o&&i[0]===t&&typeof o!="string")return o;typeof o!="string"&&(o=xE(o)),o||(this.logger.warn(`missed to resolve ${i[1]} for nesting ${t}`),o=""),u&&(o=l.reduce((c,d)=>this.format(c,d,r.lng,{...r,interpolationkey:i[1].trim()}),o.trim())),t=t.replace(i[0],o),this.regexp.lastIndex=0}return t}}function fae(e){let t=e.toLowerCase().trim();const n={};if(e.indexOf("(")>-1){const r=e.split("(");t=r[0].toLowerCase().trim();const i=r[1].substring(0,r[1].length-1);t==="currency"&&i.indexOf(":")<0?n.currency||(n.currency=i.trim()):t==="relativetime"&&i.indexOf(":")<0?n.range||(n.range=i.trim()):i.split(";").forEach(s=>{if(!s)return;const[a,...l]=s.split(":"),u=l.join(":").trim().replace(/^'+|'+$/g,"");n[a.trim()]||(n[a.trim()]=u),u==="false"&&(n[a.trim()]=!1),u==="true"&&(n[a.trim()]=!0),isNaN(u)||(n[a.trim()]=parseInt(u,10))})}return{formatName:t,formatOptions:n}}function Vl(e){const t={};return function(r,i,o){const s=i+JSON.stringify(o);let a=t[s];return a||(a=e(Hm(i),o),t[s]=a),a(r)}}class hae{constructor(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};this.logger=qi.create("formatter"),this.options=t,this.formats={number:Vl((n,r)=>{const i=new Intl.NumberFormat(n,{...r});return o=>i.format(o)}),currency:Vl((n,r)=>{const i=new Intl.NumberFormat(n,{...r,style:"currency"});return o=>i.format(o)}),datetime:Vl((n,r)=>{const i=new Intl.DateTimeFormat(n,{...r});return o=>i.format(o)}),relativetime:Vl((n,r)=>{const i=new Intl.RelativeTimeFormat(n,{...r});return o=>i.format(o,r.range||"day")}),list:Vl((n,r)=>{const i=new Intl.ListFormat(n,{...r});return o=>i.format(o)})},this.init(t)}init(t){const r=(arguments.length>1&&arguments[1]!==void 0?arguments[1]:{interpolation:{}}).interpolation;this.formatSeparator=r.formatSeparator?r.formatSeparator:r.formatSeparator||","}add(t,n){this.formats[t.toLowerCase().trim()]=n}addCached(t,n){this.formats[t.toLowerCase().trim()]=Vl(n)}format(t,n,r){let i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{};return n.split(this.formatSeparator).reduce((a,l)=>{const{formatName:u,formatOptions:c}=fae(l);if(this.formats[u]){let d=a;try{const f=i&&i.formatParams&&i.formatParams[i.interpolationkey]||{},h=f.locale||f.lng||i.locale||i.lng||r;d=this.formats[u](a,h,{...c,...i,...f})}catch(f){this.logger.warn(f)}return d}else this.logger.warn(`there was no format function for ${u}`);return a},t)}}function pae(e,t){e.pending[t]!==void 0&&(delete e.pending[t],e.pendingCount--)}class gae extends J0{constructor(t,n,r){let i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{};super(),this.backend=t,this.store=n,this.services=r,this.languageUtils=r.languageUtils,this.options=i,this.logger=qi.create("backendConnector"),this.waitingReads=[],this.maxParallelReads=i.maxParallelReads||10,this.readingCalls=0,this.maxRetries=i.maxRetries>=0?i.maxRetries:5,this.retryTimeout=i.retryTimeout>=1?i.retryTimeout:350,this.state={},this.queue=[],this.backend&&this.backend.init&&this.backend.init(r,i.backend,i)}queueLoad(t,n,r,i){const o={},s={},a={},l={};return t.forEach(u=>{let c=!0;n.forEach(d=>{const f=`${u}|${d}`;!r.reload&&this.store.hasResourceBundle(u,d)?this.state[f]=2:this.state[f]<0||(this.state[f]===1?s[f]===void 0&&(s[f]=!0):(this.state[f]=1,c=!1,s[f]===void 0&&(s[f]=!0),o[f]===void 0&&(o[f]=!0),l[d]===void 0&&(l[d]=!0)))}),c||(a[u]=!0)}),(Object.keys(o).length||Object.keys(s).length)&&this.queue.push({pending:s,pendingCount:Object.keys(s).length,loaded:{},errors:[],callback:i}),{toLoad:Object.keys(o),pending:Object.keys(s),toLoadLanguages:Object.keys(a),toLoadNamespaces:Object.keys(l)}}loaded(t,n,r){const i=t.split("|"),o=i[0],s=i[1];n&&this.emit("failedLoading",o,s,n),r&&this.store.addResourceBundle(o,s,r),this.state[t]=n?-1:2;const a={};this.queue.forEach(l=>{Jse(l.loaded,[o],s),pae(l,t),n&&l.errors.push(n),l.pendingCount===0&&!l.done&&(Object.keys(l.loaded).forEach(u=>{a[u]||(a[u]={});const c=l.loaded[u];c.length&&c.forEach(d=>{a[u][d]===void 0&&(a[u][d]=!0)})}),l.done=!0,l.errors.length?l.callback(l.errors):l.callback())}),this.emit("loaded",a),this.queue=this.queue.filter(l=>!l.done)}read(t,n,r){let i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0,o=arguments.length>4&&arguments[4]!==void 0?arguments[4]:this.retryTimeout,s=arguments.length>5?arguments[5]:void 0;if(!t.length)return s(null,{});if(this.readingCalls>=this.maxParallelReads){this.waitingReads.push({lng:t,ns:n,fcName:r,tried:i,wait:o,callback:s});return}this.readingCalls++;const a=(u,c)=>{if(this.readingCalls--,this.waitingReads.length>0){const d=this.waitingReads.shift();this.read(d.lng,d.ns,d.fcName,d.tried,d.wait,d.callback)}if(u&&c&&i{this.read.call(this,t,n,r,i+1,o*2,s)},o);return}s(u,c)},l=this.backend[r].bind(this.backend);if(l.length===2){try{const u=l(t,n);u&&typeof u.then=="function"?u.then(c=>a(null,c)).catch(a):a(null,u)}catch(u){a(u)}return}return l(t,n,a)}prepareLoading(t,n){let r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},i=arguments.length>3?arguments[3]:void 0;if(!this.backend)return this.logger.warn("No backend was added via i18next.use. Will not load resources."),i&&i();typeof t=="string"&&(t=this.languageUtils.toResolveHierarchy(t)),typeof n=="string"&&(n=[n]);const o=this.queueLoad(t,n,r,i);if(!o.toLoad.length)return o.pending.length||i(),null;o.toLoad.forEach(s=>{this.loadOne(s)})}load(t,n,r){this.prepareLoading(t,n,{},r)}reload(t,n,r){this.prepareLoading(t,n,{reload:!0},r)}loadOne(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"";const r=t.split("|"),i=r[0],o=r[1];this.read(i,o,"read",void 0,void 0,(s,a)=>{s&&this.logger.warn(`${n}loading namespace ${o} for language ${i} failed`,s),!s&&a&&this.logger.log(`${n}loaded namespace ${o} for language ${i}`,a),this.loaded(t,s,a)})}saveMissing(t,n,r,i,o){let s=arguments.length>5&&arguments[5]!==void 0?arguments[5]:{},a=arguments.length>6&&arguments[6]!==void 0?arguments[6]:()=>{};if(this.services.utils&&this.services.utils.hasLoadedNamespace&&!this.services.utils.hasLoadedNamespace(n)){this.logger.warn(`did not save key "${r}" as the namespace "${n}" was not yet loaded`,"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!");return}if(!(r==null||r==="")){if(this.backend&&this.backend.create){const l={...s,isUpdate:o},u=this.backend.create.bind(this.backend);if(u.length<6)try{let c;u.length===5?c=u(t,n,r,i,l):c=u(t,n,r,i),c&&typeof c.then=="function"?c.then(d=>a(null,d)).catch(a):a(null,c)}catch(c){a(c)}else u(t,n,r,i,a,l)}!t||!t[0]||this.store.addResource(t[0],n,r,i)}}}function RE(){return{debug:!1,initImmediate:!0,ns:["translation"],defaultNS:["translation"],fallbackLng:["dev"],fallbackNS:!1,supportedLngs:!1,nonExplicitSupportedLngs:!1,load:"all",preload:!1,simplifyPluralSuffix:!0,keySeparator:".",nsSeparator:":",pluralSeparator:"_",contextSeparator:"_",partialBundledLanguages:!1,saveMissing:!1,updateMissing:!1,saveMissingTo:"fallback",saveMissingPlurals:!0,missingKeyHandler:!1,missingInterpolationHandler:!1,postProcess:!1,postProcessPassResolved:!1,returnNull:!1,returnEmptyString:!0,returnObjects:!1,joinArrays:!1,returnedObjectHandler:!1,parseMissingKeyHandler:!1,appendNamespaceToMissingKey:!1,appendNamespaceToCIMode:!1,overloadTranslationOptionHandler:function(t){let n={};if(typeof t[1]=="object"&&(n=t[1]),typeof t[1]=="string"&&(n.defaultValue=t[1]),typeof t[2]=="string"&&(n.tDescription=t[2]),typeof t[2]=="object"||typeof t[3]=="object"){const r=t[3]||t[2];Object.keys(r).forEach(i=>{n[i]=r[i]})}return n},interpolation:{escapeValue:!0,format:(e,t,n,r)=>e,prefix:"{{",suffix:"}}",formatSeparator:",",unescapePrefix:"-",nestingPrefix:"$t(",nestingSuffix:")",nestingOptionsSeparator:",",maxReplaces:1e3,skipOnVariables:!0}}}function OE(e){return typeof e.ns=="string"&&(e.ns=[e.ns]),typeof e.fallbackLng=="string"&&(e.fallbackLng=[e.fallbackLng]),typeof e.fallbackNS=="string"&&(e.fallbackNS=[e.fallbackNS]),e.supportedLngs&&e.supportedLngs.indexOf("cimode")<0&&(e.supportedLngs=e.supportedLngs.concat(["cimode"])),e}function Rp(){}function mae(e){Object.getOwnPropertyNames(Object.getPrototypeOf(e)).forEach(n=>{typeof e[n]=="function"&&(e[n]=e[n].bind(e))})}class Lf extends J0{constructor(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},n=arguments.length>1?arguments[1]:void 0;if(super(),this.options=OE(t),this.services={},this.logger=qi,this.modules={external:[]},mae(this),n&&!this.isInitialized&&!t.isClone){if(!this.options.initImmediate)return this.init(t,n),this;setTimeout(()=>{this.init(t,n)},0)}}init(){var t=this;let n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=arguments.length>1?arguments[1]:void 0;typeof n=="function"&&(r=n,n={}),!n.defaultNS&&n.defaultNS!==!1&&n.ns&&(typeof n.ns=="string"?n.defaultNS=n.ns:n.ns.indexOf("translation")<0&&(n.defaultNS=n.ns[0]));const i=RE();this.options={...i,...this.options,...OE(n)},this.options.compatibilityAPI!=="v1"&&(this.options.interpolation={...i.interpolation,...this.options.interpolation}),n.keySeparator!==void 0&&(this.options.userDefinedKeySeparator=n.keySeparator),n.nsSeparator!==void 0&&(this.options.userDefinedNsSeparator=n.nsSeparator);function o(c){return c?typeof c=="function"?new c:c:null}if(!this.options.isClone){this.modules.logger?qi.init(o(this.modules.logger),this.options):qi.init(null,this.options);let c;this.modules.formatter?c=this.modules.formatter:typeof Intl<"u"&&(c=hae);const d=new PE(this.options);this.store=new TE(this.options.resources,this.options);const f=this.services;f.logger=qi,f.resourceStore=this.store,f.languageUtils=d,f.pluralResolver=new cae(d,{prepend:this.options.pluralSeparator,compatibilityJSON:this.options.compatibilityJSON,simplifyPluralSuffix:this.options.simplifyPluralSuffix}),c&&(!this.options.interpolation.format||this.options.interpolation.format===i.interpolation.format)&&(f.formatter=o(c),f.formatter.init(f,this.options),this.options.interpolation.format=f.formatter.format.bind(f.formatter)),f.interpolator=new dae(this.options),f.utils={hasLoadedNamespace:this.hasLoadedNamespace.bind(this)},f.backendConnector=new gae(o(this.modules.backend),f.resourceStore,f,this.options),f.backendConnector.on("*",function(h){for(var p=arguments.length,m=new Array(p>1?p-1:0),S=1;S1?p-1:0),S=1;S
{h.init&&h.init(this)})}if(this.format=this.options.interpolation.format,r||(r=Rp),this.options.fallbackLng&&!this.services.languageDetector&&!this.options.lng){const c=this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);c.length>0&&c[0]!=="dev"&&(this.options.lng=c[0])}!this.services.languageDetector&&!this.options.lng&&this.logger.warn("init: no languageDetector is used and no lng is defined"),["getResource","hasResourceBundle","getResourceBundle","getDataByLanguage"].forEach(c=>{this[c]=function(){return t.store[c](...arguments)}}),["addResource","addResources","addResourceBundle","removeResourceBundle"].forEach(c=>{this[c]=function(){return t.store[c](...arguments),t}});const l=Xc(),u=()=>{const c=(d,f)=>{this.isInitialized&&!this.initializedStoreOnce&&this.logger.warn("init: i18next is already initialized. You should call init just once!"),this.isInitialized=!0,this.options.isClone||this.logger.log("initialized",this.options),this.emit("initialized",this.options),l.resolve(f),r(d,f)};if(this.languages&&this.options.compatibilityAPI!=="v1"&&!this.isInitialized)return c(null,this.t.bind(this));this.changeLanguage(this.options.lng,c)};return this.options.resources||!this.options.initImmediate?u():setTimeout(u,0),l}loadResources(t){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Rp;const i=typeof t=="string"?t:this.language;if(typeof t=="function"&&(r=t),!this.options.resources||this.options.partialBundledLanguages){if(i&&i.toLowerCase()==="cimode")return r();const o=[],s=a=>{if(!a)return;this.services.languageUtils.toResolveHierarchy(a).forEach(u=>{o.indexOf(u)<0&&o.push(u)})};i?s(i):this.services.languageUtils.getFallbackCodes(this.options.fallbackLng).forEach(l=>s(l)),this.options.preload&&this.options.preload.forEach(a=>s(a)),this.services.backendConnector.load(o,this.options.ns,a=>{!a&&!this.resolvedLanguage&&this.language&&this.setResolvedLanguage(this.language),r(a)})}else r(null)}reloadResources(t,n,r){const i=Xc();return t||(t=this.languages),n||(n=this.options.ns),r||(r=Rp),this.services.backendConnector.reload(t,n,o=>{i.resolve(),r(o)}),i}use(t){if(!t)throw new Error("You are passing an undefined module! Please check the object you are passing to i18next.use()");if(!t.type)throw new Error("You are passing a wrong module! Please check the object you are passing to i18next.use()");return t.type==="backend"&&(this.modules.backend=t),(t.type==="logger"||t.log&&t.warn&&t.error)&&(this.modules.logger=t),t.type==="languageDetector"&&(this.modules.languageDetector=t),t.type==="i18nFormat"&&(this.modules.i18nFormat=t),t.type==="postProcessor"&&LI.addPostProcessor(t),t.type==="formatter"&&(this.modules.formatter=t),t.type==="3rdParty"&&this.modules.external.push(t),this}setResolvedLanguage(t){if(!(!t||!this.languages)&&!(["cimode","dev"].indexOf(t)>-1))for(let n=0;n-1)&&this.store.hasLanguageSomeTranslations(r)){this.resolvedLanguage=r;break}}}changeLanguage(t,n){var r=this;this.isLanguageChangingTo=t;const i=Xc();this.emit("languageChanging",t);const o=l=>{this.language=l,this.languages=this.services.languageUtils.toResolveHierarchy(l),this.resolvedLanguage=void 0,this.setResolvedLanguage(l)},s=(l,u)=>{u?(o(u),this.translator.changeLanguage(u),this.isLanguageChangingTo=void 0,this.emit("languageChanged",u),this.logger.log("languageChanged",u)):this.isLanguageChangingTo=void 0,i.resolve(function(){return r.t(...arguments)}),n&&n(l,function(){return r.t(...arguments)})},a=l=>{!t&&!l&&this.services.languageDetector&&(l=[]);const u=typeof l=="string"?l:this.services.languageUtils.getBestMatchFromCodes(l);u&&(this.language||o(u),this.translator.language||this.translator.changeLanguage(u),this.services.languageDetector&&this.services.languageDetector.cacheUserLanguage&&this.services.languageDetector.cacheUserLanguage(u)),this.loadResources(u,c=>{s(c,u)})};return!t&&this.services.languageDetector&&!this.services.languageDetector.async?a(this.services.languageDetector.detect()):!t&&this.services.languageDetector&&this.services.languageDetector.async?this.services.languageDetector.detect.length===0?this.services.languageDetector.detect().then(a):this.services.languageDetector.detect(a):a(t),i}getFixedT(t,n,r){var i=this;const o=function(s,a){let l;if(typeof a!="object"){for(var u=arguments.length,c=new Array(u>2?u-2:0),d=2;d`${l.keyPrefix}${f}${p}`):h=l.keyPrefix?`${l.keyPrefix}${f}${s}`:s,i.t(h,l)};return typeof t=="string"?o.lng=t:o.lngs=t,o.ns=n,o.keyPrefix=r,o}t(){return this.translator&&this.translator.translate(...arguments)}exists(){return this.translator&&this.translator.exists(...arguments)}setDefaultNamespace(t){this.options.defaultNS=t}hasLoadedNamespace(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(!this.isInitialized)return this.logger.warn("hasLoadedNamespace: i18next was not initialized",this.languages),!1;if(!this.languages||!this.languages.length)return this.logger.warn("hasLoadedNamespace: i18n.languages were undefined or empty",this.languages),!1;const r=n.lng||this.resolvedLanguage||this.languages[0],i=this.options?this.options.fallbackLng:!1,o=this.languages[this.languages.length-1];if(r.toLowerCase()==="cimode")return!0;const s=(a,l)=>{const u=this.services.backendConnector.state[`${a}|${l}`];return u===-1||u===2};if(n.precheck){const a=n.precheck(this,s);if(a!==void 0)return a}return!!(this.hasResourceBundle(r,t)||!this.services.backendConnector.backend||this.options.resources&&!this.options.partialBundledLanguages||s(r,t)&&(!i||s(o,t)))}loadNamespaces(t,n){const r=Xc();return this.options.ns?(typeof t=="string"&&(t=[t]),t.forEach(i=>{this.options.ns.indexOf(i)<0&&this.options.ns.push(i)}),this.loadResources(i=>{r.resolve(),n&&n(i)}),r):(n&&n(),Promise.resolve())}loadLanguages(t,n){const r=Xc();typeof t=="string"&&(t=[t]);const i=this.options.preload||[],o=t.filter(s=>i.indexOf(s)<0);return o.length?(this.options.preload=i.concat(o),this.loadResources(s=>{r.resolve(),n&&n(s)}),r):(n&&n(),Promise.resolve())}dir(t){if(t||(t=this.resolvedLanguage||(this.languages&&this.languages.length>0?this.languages[0]:this.language)),!t)return"rtl";const n=["ar","shu","sqr","ssh","xaa","yhd","yud","aao","abh","abv","acm","acq","acw","acx","acy","adf","ads","aeb","aec","afb","ajp","apc","apd","arb","arq","ars","ary","arz","auz","avl","ayh","ayl","ayn","ayp","bbz","pga","he","iw","ps","pbt","pbu","pst","prp","prd","ug","ur","ydd","yds","yih","ji","yi","hbo","men","xmn","fa","jpr","peo","pes","prs","dv","sam","ckb"],r=this.services&&this.services.languageUtils||new PE(RE());return n.indexOf(r.getLanguagePartFromCode(t))>-1||t.toLowerCase().indexOf("-arab")>1?"rtl":"ltr"}static createInstance(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},n=arguments.length>1?arguments[1]:void 0;return new Lf(t,n)}cloneInstance(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Rp;const r=t.forkResourceStore;r&&delete t.forkResourceStore;const i={...this.options,...t,isClone:!0},o=new Lf(i);return(t.debug!==void 0||t.prefix!==void 0)&&(o.logger=o.logger.clone(t)),["store","services","language"].forEach(a=>{o[a]=this[a]}),o.services={...this.services},o.services.utils={hasLoadedNamespace:o.hasLoadedNamespace.bind(o)},r&&(o.store=new TE(this.store.data,i),o.services.resourceStore=o.store),o.translator=new qm(o.services,i),o.translator.on("*",function(a){for(var l=arguments.length,u=new Array(l>1?l-1:0),c=1;ctypeof e=="string"?{title:e,status:"info",isClosable:!0,duration:2500}:{status:"info",isClosable:!0,duration:2500,...e},$I={isConnected:!1,isProcessing:!1,isGFPGANAvailable:!0,isESRGANAvailable:!0,shouldConfirmOnDelete:!0,currentStep:0,totalSteps:0,currentIteration:0,totalIterations:0,currentStatusHasSteps:!1,isCancelable:!0,enableImageDebugging:!1,toastQueue:[],progressImage:null,shouldAntialiasProgressImage:!1,sessionId:null,cancelType:"immediate",isCancelScheduled:!1,subscribedNodeIds:[],wereModelsReceived:!1,wasSchemaParsed:!1,consoleLogLevel:"debug",shouldLogToConsole:!0,statusTranslationKey:"common.statusDisconnected",canceledSession:"",isPersisted:!1,language:"en",isUploading:!1,isNodesEnabled:!1,shouldUseNSFWChecker:!1,shouldUseWatermarker:!1},FI=Pt({name:"system",initialState:$I,reducers:{setIsProcessing:(e,t)=>{e.isProcessing=t.payload},setCurrentStatus:(e,t)=>{e.statusTranslationKey=t.payload},setShouldConfirmOnDelete:(e,t)=>{e.shouldConfirmOnDelete=t.payload},setIsCancelable:(e,t)=>{e.isCancelable=t.payload},setEnableImageDebugging:(e,t)=>{e.enableImageDebugging=t.payload},addToast:(e,t)=>{e.toastQueue.push(t.payload)},clearToastQueue:e=>{e.toastQueue=[]},cancelScheduled:e=>{e.isCancelScheduled=!0},scheduledCancelAborted:e=>{e.isCancelScheduled=!1},cancelTypeChanged:(e,t)=>{e.cancelType=t.payload},subscribedNodeIdsSet:(e,t)=>{e.subscribedNodeIds=t.payload},consoleLogLevelChanged:(e,t)=>{e.consoleLogLevel=t.payload},shouldLogToConsoleChanged:(e,t)=>{e.shouldLogToConsole=t.payload},shouldAntialiasProgressImageChanged:(e,t)=>{e.shouldAntialiasProgressImage=t.payload},isPersistedChanged:(e,t)=>{e.isPersisted=t.payload},languageChanged:(e,t)=>{e.language=t.payload},progressImageSet(e,t){e.progressImage=t.payload},setIsNodesEnabled(e,t){e.isNodesEnabled=t.payload},shouldUseNSFWCheckerChanged(e,t){e.shouldUseNSFWChecker=t.payload},shouldUseWatermarkerChanged(e,t){e.shouldUseWatermarker=t.payload}},extraReducers(e){e.addCase(s7,(t,n)=>{t.sessionId=n.payload.sessionId,t.canceledSession=""}),e.addCase(l7,t=>{t.sessionId=null}),e.addCase(r7,t=>{t.isConnected=!0,t.isCancelable=!0,t.isProcessing=!1,t.currentStatusHasSteps=!1,t.currentStep=0,t.totalSteps=0,t.currentIteration=0,t.totalIterations=0,t.statusTranslationKey="common.statusConnected"}),e.addCase(o7,t=>{t.isConnected=!1,t.isProcessing=!1,t.isCancelable=!0,t.currentStatusHasSteps=!1,t.currentStep=0,t.totalSteps=0,t.statusTranslationKey="common.statusDisconnected"}),e.addCase(c7,t=>{t.isCancelable=!0,t.isProcessing=!0,t.currentStatusHasSteps=!1,t.currentStep=0,t.totalSteps=0,t.statusTranslationKey="common.statusGenerating"}),e.addCase(m7,(t,n)=>{const{step:r,total_steps:i,progress_image:o}=n.payload.data;t.isProcessing=!0,t.isCancelable=!0,t.currentStatusHasSteps=!0,t.currentStep=r+1,t.totalSteps=i,t.progressImage=o??null,t.statusTranslationKey="common.statusGenerating"}),e.addCase(d7,(t,n)=>{const{data:r}=n.payload;t.currentStatusHasSteps=!1,t.currentStep=0,t.totalSteps=0,t.statusTranslationKey="common.statusProcessingComplete",t.canceledSession===r.graph_execution_state_id&&(t.isProcessing=!1,t.isCancelable=!0)}),e.addCase(p7,t=>{t.isProcessing=!1,t.isCancelable=!1,t.isCancelScheduled=!1,t.currentStep=0,t.totalSteps=0,t.statusTranslationKey="common.statusConnected",t.progressImage=null}),e.addCase(Ph,t=>{t.isProcessing=!0,t.isCancelable=!0,t.currentStatusHasSteps=!1,t.statusTranslationKey="common.statusPreparing"}),e.addCase(hl.fulfilled,(t,n)=>{t.canceledSession=n.meta.arg.session_id,t.isProcessing=!1,t.isCancelable=!1,t.isCancelScheduled=!1,t.currentStep=0,t.totalSteps=0,t.statusTranslationKey="common.statusConnected",t.progressImage=null,t.toastQueue.push(Ga({title:kd("toast.canceled"),status:"warning"}))}),e.addCase(dC,t=>{t.wasSchemaParsed=!0}),e.addMatcher(MO,(t,n)=>{var r;t.isProcessing=!1,t.isCancelable=!1,t.isCancelScheduled=!1,t.currentStep=0,t.totalSteps=0,t.statusTranslationKey="common.statusConnected",t.progressImage=null,t.toastQueue.push(Ga({title:kd("toast.serverError"),status:"error",description:((r=n.payload)==null?void 0:r.status)===422?"Validation Error":void 0}))}),e.addMatcher(_ae,(t,n)=>{t.isProcessing=!1,t.isCancelable=!0,t.currentStatusHasSteps=!1,t.currentStep=0,t.totalSteps=0,t.statusTranslationKey="common.statusError",t.progressImage=null,t.toastQueue.push(Ga({title:kd("toast.serverError"),status:"error",description:YX(n.payload.data.error_type)}))})}}),{setIsProcessing:f5e,setShouldConfirmOnDelete:h5e,setCurrentStatus:p5e,setIsCancelable:g5e,setEnableImageDebugging:m5e,addToast:Ft,clearToastQueue:y5e,cancelScheduled:v5e,scheduledCancelAborted:b5e,cancelTypeChanged:S5e,subscribedNodeIdsSet:_5e,consoleLogLevelChanged:w5e,shouldLogToConsoleChanged:x5e,isPersistedChanged:C5e,shouldAntialiasProgressImageChanged:T5e,languageChanged:E5e,progressImageSet:yae,setIsNodesEnabled:P5e,shouldUseNSFWCheckerChanged:vae,shouldUseWatermarkerChanged:bae}=FI.actions,Sae=FI.reducer,_ae=ei(Ux,S7,w7),wae={searchFolder:null,advancedAddScanModel:null},BI=Pt({name:"modelmanager",initialState:wae,reducers:{setSearchFolder:(e,t)=>{e.searchFolder=t.payload},setAdvancedAddScanModel:(e,t)=>{e.advancedAddScanModel=t.payload}}}),{setSearchFolder:A5e,setAdvancedAddScanModel:k5e}=BI.actions,xae=BI.reducer,jI={shift:!1},VI=Pt({name:"hotkeys",initialState:jI,reducers:{shiftKeyPressed:(e,t)=>{e.shift=t.payload}}}),{shiftKeyPressed:R5e}=VI.actions,Cae=VI.reducer,Tae=nF(DV);zI=c2=void 0;var Eae=Tae,Pae=function(){var t=[],n=[],r=void 0,i=function(u){return r=u,function(c){return function(d){return Eae.compose.apply(void 0,n)(c)(d)}}},o=function(){for(var u,c,d=arguments.length,f=Array(d),h=0;h=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(u){throw u},f:i}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
+In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var o=!0,s=!1,a;return{s:function(){n=n.call(e)},n:function(){var u=n.next();return o=u.done,u},e:function(u){s=!0,a=u},f:function(){try{!o&&n.return!=null&&n.return()}finally{if(s)throw a}}}}function GI(e,t){if(e){if(typeof e=="string")return IE(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return IE(e,t)}}function IE(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&arguments[0]!==void 0?arguments[0]:{},n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=arguments.length>2?arguments[2]:void 0,i=r.prefix,o=r.driver,s=r.persistWholeStore,a=r.serialize;try{var l=s?Vae:zae;yield l(t,n,{prefix:i,driver:o,serialize:a})}catch(u){console.warn("redux-remember: persist error",u)}});return function(){return e.apply(this,arguments)}}();function $E(e,t,n,r,i,o,s){try{var a=e[o](s),l=a.value}catch(u){n(u);return}a.done?t(l):Promise.resolve(l).then(r,i)}function FE(e){return function(){var t=this,n=arguments;return new Promise(function(r,i){var o=e.apply(t,n);function s(l){$E(o,r,i,s,a,"next",l)}function a(l){$E(o,r,i,s,a,"throw",l)}s(void 0)})}}var Gae=function(){var e=FE(function*(t,n,r){var i=r.prefix,o=r.driver,s=r.serialize,a=r.unserialize,l=r.persistThrottle,u=r.persistDebounce,c=r.persistWholeStore;yield Lae(t,n,{prefix:i,driver:o,unserialize:a,persistWholeStore:c});var d={},f=function(){var h=FE(function*(){var p=UI(t.getState(),n);yield Uae(p,d,{prefix:i,driver:o,serialize:s,persistWholeStore:c}),pC(p,d)||t.dispatch({type:Oae,payload:p}),d=p});return function(){return h.apply(this,arguments)}}();u&&u>0?t.subscribe(Iae(f,u)):t.subscribe(Mae(f,l))});return function(n,r,i){return e.apply(this,arguments)}}();const Hae=Gae;function $f(e){"@babel/helpers - typeof";return $f=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},$f(e)}function BE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function jb(e){for(var t=1;t0&&arguments[0]!==void 0?arguments[0]:n.state,i=arguments.length>1?arguments[1]:void 0;i.type&&(i.type==="@@INIT"||i.type.startsWith("@@redux/INIT"))&&(n.state=jb({},r));var o=typeof t=="function"?t:pc(t);switch(i.type){case d2:return n.state=o(jb(jb({},n.state),i.payload||{}),{type:d2}),n.state;default:return o(r,i)}}},Yae=function(t,n){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},i=r.prefix,o=i===void 0?"@@remember-":i,s=r.serialize,a=s===void 0?function(S,v){return JSON.stringify(S)}:s,l=r.unserialize,u=l===void 0?function(S,v){return JSON.parse(S)}:l,c=r.persistThrottle,d=c===void 0?100:c,f=r.persistDebounce,h=r.persistWholeStore,p=h===void 0?!1:h;if(!t)throw Error("redux-remember error: driver required");if(!Array.isArray(n))throw Error("redux-remember error: rememberedKeys needs to be an array");var m=function(v){return function(y,g,b){var _=v(y,g,b);return Hae(_,n,{driver:t,prefix:o,serialize:a,unserialize:u,persistThrottle:d,persistDebounce:f,persistWholeStore:p}),_}};return m};const O5e=["chakra-ui-color-mode","i18nextLng","ROARR_FILTER","ROARR_LOG"],Qae="@@invokeai-",Zae=["cursorPosition","isCanvasInitialized","doesCanvasNeedScaling"],Jae=["pendingControlImages"],ele=["selection","selectedBoardId","galleryView"],tle=["schema","invocationTemplates"],nle=[],rle=[],ile=["currentIteration","currentStep","isCancelable","isConnected","isESRGANAvailable","isGFPGANAvailable","isProcessing","totalIterations","totalSteps","isCancelScheduled","progressImage","wereModelsReceived","wasSchemaParsed","isPersisted","isUploading"],ole=["shouldShowImageDetails"],sle={canvas:Zae,gallery:ele,generation:nle,nodes:tle,postprocessing:rle,system:ile,ui:ole,controlNet:Jae},ale=(e,t)=>{const n=_0(e,sle[t]);return JSON.stringify(n)},lle={canvas:NO,gallery:k7,generation:Wo,nodes:kI,postprocessing:MI,system:$I,config:gO,ui:kO,hotkeys:jI,controlNet:z_},ule=(e,t)=>gX(JSON.parse(e),lle[t]),qI=ue("nodes/textToImageGraphBuilt"),WI=ue("nodes/imageToImageGraphBuilt"),KI=ue("nodes/canvasGraphBuilt"),XI=ue("nodes/nodesGraphBuilt"),cle=ei(qI,WI,KI,XI),dle=e=>{if(cle(e)&&e.payload.nodes){const t={};return{...e,payload:{...e.payload,nodes:t}}}return Df.fulfilled.match(e)?{...e,payload:""}:dC.match(e)?{...e,payload:""}:e},fle=["canvas/setCursorPosition","canvas/setStageCoordinates","canvas/setStageScale","canvas/setIsDrawing","canvas/setBoundingBoxCoordinates","canvas/setBoundingBoxDimensions","canvas/setIsDrawing","canvas/addPointToCurrentLine","socket/socketGeneratorProgress","socket/appSocketGeneratorProgress","hotkeys/shiftKeyPressed","@@REMEMBER_PERSISTED"],hle=e=>e,ple=()=>{le({actionCreator:FQ,effect:async(e,{dispatch:t,getState:n})=>{const r=fe("canvas"),i=n(),{sessionId:o,isProcessing:s}=i.system,a=e.payload;if(s){if(!a){r.debug("No canvas session, skipping cancel");return}if(a!==o){r.debug({canvasSessionId:a,session_id:o},"Canvas session does not match global session, skipping cancel");return}t(hl({session_id:o}))}}})};ue("app/appStarted");const gle=()=>{le({matcher:he.endpoints.listImages.matchFulfilled,effect:async(e,{dispatch:t,unsubscribe:n,cancelActiveListeners:r})=>{if(e.meta.arg.queryCacheKey!==di({board_id:"none",categories:gi}))return;r(),n();const i=e.payload;i.ids.length>0&&t(Os(i.ids[0]))}})},gC=Hs.injectEndpoints({endpoints:e=>({getAppVersion:e.query({query:()=>({url:"app/version",method:"GET"}),providesTags:["AppVersion"],keepUnusedDataFor:864e5}),getAppConfig:e.query({query:()=>({url:"app/config",method:"GET"}),providesTags:["AppConfig"],keepUnusedDataFor:864e5})})}),{useGetAppVersionQuery:M5e,useGetAppConfigQuery:I5e}=gC,mle=()=>{le({matcher:gC.endpoints.getAppConfig.matchFulfilled,effect:async(e,{getState:t,dispatch:n})=>{const{infill_methods:r=[],nsfw_methods:i=[],watermarking_methods:o=[]}=e.payload,s=t().generation.infillMethod;r.includes(s)||n(yQ(r[0])),i.includes("nsfw_checker")||n(vae(!1)),o.includes("invisible_watermark")||n(bae(!1))}})},yle=ue("app/appStarted"),vle=()=>{le({actionCreator:yle,effect:async(e,{unsubscribe:t,cancelActiveListeners:n})=>{n(),t()}})},mC={memoizeOptions:{resultEqualityCheck:S0}},YI=(e,t)=>{var d;const{generation:n,canvas:r,nodes:i,controlNet:o}=e,s=((d=n.initialImage)==null?void 0:d.imageName)===t,a=r.layerState.objects.some(f=>f.kind==="image"&&f.imageName===t),l=i.nodes.some(f=>Ea(f.data.inputs,h=>{var p;return h.type==="image"&&((p=h.value)==null?void 0:p.image_name)===t})),u=Ea(o.controlNets,f=>f.controlImage===t||f.processedControlImage===t);return{isInitialImage:s,isCanvasImage:a,isNodesImage:l,isControlNetImage:u}},ble=Jn([e=>e],e=>{const{imageToDelete:t}=e.imageDeletion;if(!t)return;const{image_name:n}=t;return YI(e,n)},mC),Sle=()=>{le({matcher:ec.endpoints.deleteBoardAndImages.matchFulfilled,effect:async(e,{dispatch:t,getState:n})=>{const{deleted_images:r}=e.payload;let i=!1,o=!1,s=!1,a=!1;const l=n();r.forEach(u=>{const c=YI(l,u);c.isInitialImage&&!i&&(t(EO()),i=!0),c.isCanvasImage&&!o&&(t(LO()),o=!0),c.isNodesImage&&!s&&(t(OI()),s=!0),c.isControlNetImage&&!a&&(t(T7()),a=!0)})}})},_le=()=>{le({matcher:ei(U_,Am),effect:async(e,{getState:t,dispatch:n,condition:r,cancelActiveListeners:i})=>{i();const o=t(),s=U_.match(e)?e.payload:o.gallery.selectedBoardId,l=(Am.match(e)?e.payload:o.gallery.galleryView)==="images"?gi:_s,u={board_id:s??"none",categories:l};if(await r(()=>he.endpoints.listImages.select(u)(t()).isSuccess,5e3)){const{data:d}=he.endpoints.listImages.select(u)(t());d!=null&&d.ids.length?n(Os(d.ids[0]??null)):n(Os(null))}else n(Os(null))}})},wle=ue("canvas/canvasSavedToGallery"),xle=ue("canvas/canvasCopiedToClipboard"),Cle=ue("canvas/canvasDownloadedAsImage"),Tle=ue("canvas/canvasMerged"),Ele=ue("canvas/stagingAreaImageSaved");let QI=null,ZI=null;const N5e=e=>{QI=e},tv=()=>QI,D5e=e=>{ZI=e},Ple=()=>ZI,Ale=async e=>new Promise((t,n)=>{e.toBlob(r=>{if(r){t(r);return}n("Unable to create Blob")})}),Km=async(e,t)=>await Ale(e.toCanvas(t)),yC=async e=>{const t=tv();if(!t)return;const{shouldCropToBoundingBoxOnSave:n,boundingBoxCoordinates:r,boundingBoxDimensions:i}=e.canvas,o=t.clone();o.scale({x:1,y:1});const s=o.getAbsolutePosition(),a=n?{x:r.x+s.x,y:r.y+s.y,width:i.width,height:i.height}:o.getClientRect();return Km(o,a)},kle=e=>{navigator.clipboard.write([new ClipboardItem({[e.type]:e})])},Rle=()=>{le({actionCreator:xle,effect:async(e,{dispatch:t,getState:n})=>{const r=Z0.get().child({namespace:"canvasCopiedToClipboardListener"}),i=n(),o=await yC(i);if(!o){r.error("Problem getting base layer blob"),t(Ft({title:"Problem Copying Canvas",description:"Unable to export base layer",status:"error"}));return}kle(o),t(Ft({title:"Canvas Copied to Clipboard",status:"success"}))}})},Ole=(e,t)=>{const n=URL.createObjectURL(e),r=document.createElement("a");r.href=n,r.download=t,document.body.appendChild(r),r.click(),document.body.removeChild(r),r.remove()},Mle=()=>{le({actionCreator:Cle,effect:async(e,{dispatch:t,getState:n})=>{const r=Z0.get().child({namespace:"canvasSavedToGalleryListener"}),i=n(),o=await yC(i);if(!o){r.error("Problem getting base layer blob"),t(Ft({title:"Problem Downloading Canvas",description:"Unable to export base layer",status:"error"}));return}Ole(o,"canvas.png"),t(Ft({title:"Canvas Downloaded",status:"success"}))}})},Ile=async()=>{const e=tv();if(!e)return;const t=e.clone();return t.scale({x:1,y:1}),Km(t,t.getClientRect())},Nle=()=>{le({actionCreator:Tle,effect:async(e,{dispatch:t})=>{const n=Z0.get().child({namespace:"canvasCopiedToClipboardListener"}),r=await Ile();if(!r){n.error("Problem getting base layer blob"),t(Ft({title:"Problem Merging Canvas",description:"Unable to export base layer",status:"error"}));return}const i=tv();if(!i){n.error("Problem getting canvas base layer"),t(Ft({title:"Problem Merging Canvas",description:"Unable to export base layer",status:"error"}));return}const o=i.getClientRect({relativeTo:i.getParent()}),s=await t(he.endpoints.uploadImage.initiate({file:new File([r],"mergedCanvas.png",{type:"image/png"}),image_category:"general",is_intermediate:!0,postUploadAction:{type:"TOAST",toastOptions:{title:"Canvas Merged"}}})).unwrap(),{image_name:a}=s;t(BQ({kind:"image",layer:"base",imageName:a,...o}))}})},Dle=()=>{le({actionCreator:wle,effect:async(e,{dispatch:t,getState:n})=>{const r=fe("canvas"),i=n(),o=await yC(i);if(!o){r.error("Problem getting base layer blob"),t(Ft({title:"Problem Saving Canvas",description:"Unable to export base layer",status:"error"}));return}t(he.endpoints.uploadImage.initiate({file:new File([o],"savedCanvas.png",{type:"image/png"}),image_category:"general",is_intermediate:!1,board_id:i.gallery.autoAddBoardId,crop_visible:!0,postUploadAction:{type:"TOAST",toastOptions:{title:"Canvas Saved to Gallery"}}}))}})},Lle=(e,t,n)=>{if(!(tJ.match(e)||bT.match(e)||Hx.match(e)||nJ.match(e)||ST.match(e))||ST.match(e)&&n.controlNet.controlNets[e.payload.controlNetId].shouldAutoConfig===!0)return!1;const{controlImage:i,processorType:o,shouldAutoConfig:s}=t.controlNet.controlNets[e.payload.controlNetId];if(bT.match(e)&&!s)return!1;const a=o!=="none",l=t.system.isProcessing;return a&&!l&&!!i},$le=()=>{le({predicate:Lle,effect:async(e,{dispatch:t,cancelActiveListeners:n,delay:r})=>{const i=fe("session"),{controlNetId:o}=e.payload;n(),i.trace("ControlNet auto-process triggered"),await r(300),t(Gx({controlNetId:o}))}})},pl=ue("system/sessionReadyToInvoke"),JI=e=>(e==null?void 0:e.type)==="image_output",Fle=()=>{le({actionCreator:Gx,effect:async(e,{dispatch:t,getState:n,take:r})=>{const i=fe("session"),{controlNetId:o}=e.payload,s=n().controlNet.controlNets[o];if(!s.controlImage){i.error("Unable to process ControlNet image");return}const a={nodes:{[s.processorNode.id]:{...s.processorNode,is_intermediate:!0,image:{image_name:s.controlImage}}}},l=t(Rn({graph:a})),[u]=await r(f=>Rn.fulfilled.match(f)&&f.meta.requestId===l.requestId),c=u.payload.id;t(pl());const[d]=await r(f=>zx.match(f)&&f.payload.data.graph_execution_state_id===c);if(JI(d.payload.data.result)){const{image_name:f}=d.payload.data.result.image,[{payload:h}]=await r(m=>he.endpoints.getImageDTO.matchFulfilled(m)&&m.payload.image_name===f),p=h;i.debug({controlNetId:e.payload,processedControlImage:p},"ControlNet image processed"),t(eJ({controlNetId:o,processedControlImage:p.image_name}))}}})},Ble=()=>{le({matcher:he.endpoints.addImageToBoard.matchFulfilled,effect:e=>{const t=fe("images"),{board_id:n,imageDTO:r}=e.meta.arg.originalArgs;t.debug({board_id:n,imageDTO:r},"Image added to board")}})},jle=()=>{le({matcher:he.endpoints.addImageToBoard.matchRejected,effect:e=>{const t=fe("images"),{board_id:n,imageDTO:r}=e.meta.arg.originalArgs;t.debug({board_id:n,imageDTO:r},"Problem adding image to board")}})},L5e=e=>e.gallery,$5e=Jn(e=>e,e=>e.gallery.selection[e.gallery.selection.length-1],mC),Vle=Jn([e=>e],e=>{const{selectedBoardId:t,galleryView:n}=e.gallery;return{board_id:t??"none",categories:n==="images"?gi:_s,offset:0,limit:GQ,is_intermediate:!1}},mC),eN=ue("imageDeletion/imageDeletionConfirmed"),zle=()=>{le({actionCreator:eN,effect:async(e,{dispatch:t,getState:n,condition:r})=>{const{imageDTO:i,imageUsage:o}=e.payload;t(M7(!1));const{image_name:s}=i,a=n();if(a.gallery.selection[a.gallery.selection.length-1]===s){const d=Vle(a),{data:f}=he.endpoints.listImages.select(d)(a),h=(f==null?void 0:f.ids)??[],p=h.findIndex(y=>y.toString()===s),m=h.filter(y=>y.toString()!==s),S=Ss(p,0,m.length-1),v=m[S];t(Os(v||null))}o.isCanvasImage&&t(LO()),o.isControlNetImage&&t(T7()),o.isInitialImage&&t(EO()),o.isNodesImage&&t(OI());const{requestId:u}=t(he.endpoints.deleteImage.initiate(i));await r(d=>he.endpoints.deleteImage.matchFulfilled(d)&&d.meta.requestId===u,3e4)&&t(Hs.util.invalidateTags([{type:"Board",id:i.board_id}]))}})},Ule=()=>{le({matcher:he.endpoints.deleteImage.matchPending,effect:()=>{}})},Gle=()=>{le({matcher:he.endpoints.deleteImage.matchFulfilled,effect:e=>{fe("images").debug({imageDTO:e.meta.arg.originalArgs},"Image deleted")}})},Hle=()=>{le({matcher:he.endpoints.deleteImage.matchRejected,effect:e=>{fe("images").debug({imageDTO:e.meta.arg.originalArgs},"Unable to delete image")}})},tN=ue("dnd/dndDropped"),qle=()=>{le({actionCreator:tN,effect:async(e,{dispatch:t})=>{const n=fe("images"),{activeData:r,overData:i}=e.payload;if(n.debug({activeData:r,overData:i},"Image or selection dropped"),i.actionType==="SET_CURRENT_IMAGE"&&r.payloadType==="IMAGE_DTO"&&r.payload.imageDTO){t(Os(r.payload.imageDTO.image_name));return}if(i.actionType==="SET_INITIAL_IMAGE"&&r.payloadType==="IMAGE_DTO"&&r.payload.imageDTO){t(C0(r.payload.imageDTO));return}if(i.actionType==="ADD_TO_BATCH"&&r.payloadType==="IMAGE_DTO"&&r.payload.imageDTO){t(G_([r.payload.imageDTO.image_name]));return}if(i.actionType==="ADD_TO_BATCH"&&r.payloadType==="IMAGE_NAMES"){t(G_(r.payload.image_names));return}if(i.actionType==="SET_CONTROLNET_IMAGE"&&r.payloadType==="IMAGE_DTO"&&r.payload.imageDTO){const{controlNetId:o}=i.context;t(Hx({controlImage:r.payload.imageDTO.image_name,controlNetId:o}));return}if(i.actionType==="SET_CANVAS_INITIAL_IMAGE"&&r.payloadType==="IMAGE_DTO"&&r.payload.imageDTO){t($O(r.payload.imageDTO));return}if(i.actionType==="SET_NODES_IMAGE"&&r.payloadType==="IMAGE_DTO"&&r.payload.imageDTO){const{fieldName:o,nodeId:s}=i.context;t(u2({nodeId:s,fieldName:o,value:r.payload.imageDTO}));return}if(i.actionType==="SET_MULTI_NODES_IMAGE"&&r.payloadType==="IMAGE_DTO"&&r.payload.imageDTO){const{fieldName:o,nodeId:s}=i.context;t(u2({nodeId:s,fieldName:o,value:[r.payload.imageDTO]}));return}if(i.actionType==="MOVE_BOARD"&&r.payloadType==="IMAGE_DTO"&&r.payload.imageDTO){const{imageDTO:o}=r.payload,{boardId:s}=i.context;if(!s){t(he.endpoints.removeImageFromBoard.initiate({imageDTO:o}));return}t(he.endpoints.addImageToBoard.initiate({imageDTO:o,board_id:s}));return}}})},Wle=()=>{le({matcher:he.endpoints.removeImageFromBoard.matchFulfilled,effect:e=>{const t=fe("images"),n=e.meta.arg.originalArgs;t.debug({imageDTO:n},"Image removed from board")}})},Kle=()=>{le({matcher:he.endpoints.removeImageFromBoard.matchRejected,effect:e=>{const t=fe("images"),n=e.meta.arg.originalArgs;t.debug({imageDTO:n},"Problem removing image from board")}})},Xle=()=>{le({actionCreator:dJ,effect:async(e,{dispatch:t,getState:n})=>{const r=e.payload,i=n(),{shouldConfirmOnDelete:o}=i.system,s=ble(n());if(!s)return;const a=s.isCanvasImage||s.isInitialImage||s.isControlNetImage||s.isNodesImage;if(o||a){t(M7(!0));return}t(eN({imageDTO:r,imageUsage:s}))}})},ga={title:"Image Uploaded",status:"success"},Yle=()=>{le({matcher:he.endpoints.uploadImage.matchFulfilled,effect:(e,{dispatch:t,getState:n})=>{const r=fe("images"),i=e.payload,o=n(),{autoAddBoardId:s}=o.gallery;r.debug({imageDTO:i},"Image uploaded");const{postUploadAction:a}=e.meta.arg.originalArgs;if(!(e.payload.is_intermediate&&!a)){if((a==null?void 0:a.type)==="TOAST"){const{toastOptions:l}=a;if(!s)t(Ft({...ga,...l}));else{t(he.endpoints.addImageToBoard.initiate({board_id:s,imageDTO:i}));const{data:u}=ec.endpoints.listAllBoards.select()(o),c=u==null?void 0:u.find(f=>f.board_id===s),d=c?`Added to board ${c.board_name}`:`Added to board ${s}`;t(Ft({...ga,description:d}))}return}if((a==null?void 0:a.type)==="SET_CANVAS_INITIAL_IMAGE"){t($O(i)),t(Ft({...ga,description:"Set as canvas initial image"}));return}if((a==null?void 0:a.type)==="SET_CONTROLNET_IMAGE"){const{controlNetId:l}=a;t(Hx({controlNetId:l,controlImage:i.image_name})),t(Ft({...ga,description:"Set as control image"}));return}if((a==null?void 0:a.type)==="SET_INITIAL_IMAGE"){t(C0(i)),t(Ft({...ga,description:"Set as initial image"}));return}if((a==null?void 0:a.type)==="SET_NODES_IMAGE"){const{nodeId:l,fieldName:u}=a;t(u2({nodeId:l,fieldName:u,value:i})),t(Ft({...ga,description:`Set as node field ${u}`}));return}if((a==null?void 0:a.type)==="ADD_TO_BATCH"){t(G_([i.image_name])),t(Ft({...ga,description:"Added to batch"}));return}}}})},Qle=()=>{le({matcher:he.endpoints.uploadImage.matchRejected,effect:(e,{dispatch:t})=>{const n=fe("images"),r={arg:{..._0(e.meta.arg.originalArgs,["file","postUploadAction"]),file:""}};n.error({...r},"Image upload failed"),t(Ft({title:"Image Upload Failed",description:e.error.message,status:"error"}))}})},Zle=ue("generation/initialImageSelected"),Jle=ue("generation/modelSelected"),eue=()=>{le({actionCreator:Zle,effect:(e,{dispatch:t})=>{if(!e.payload){t(Ft(Ga({title:kd("toast.imageNotLoadedDesc"),status:"error"})));return}t(C0(e.payload)),t(Ft(Ga(kd("toast.sentToImageToImage"))))}})},tue=()=>{le({actionCreator:Jle,effect:(e,{getState:t,dispatch:n})=>{var l;const r=fe("models"),i=t(),o=xf.safeParse(e.payload);if(!o.success){r.error({error:o.error.format()},"Failed to parse main model");return}const s=o.data,{base_model:a}=s;if(((l=i.generation.model)==null?void 0:l.base_model)!==a){let u=0;Qa(i.lora.loras,(f,h)=>{f.base_model!==a&&(n(N7(h)),u+=1)});const{vae:c}=i.generation;c&&c.base_model!==a&&(n(PO(null)),u+=1);const{controlNets:d}=i.controlNet;Qa(d,(f,h)=>{var p;((p=f.model)==null?void 0:p.base_model)!==a&&(n(C7({controlNetId:h})),u+=1)}),u>0&&n(Ft(Ga({title:`Base model changed, cleared ${u} incompatible submodel${u===1?"":"s"}`,status:"warning"})))}n(ja(s))}})},jE=cl({sortComparer:(e,t)=>e.model_name.localeCompare(t.model_name)}),VE=cl({sortComparer:(e,t)=>e.model_name.localeCompare(t.model_name)}),zE=cl({sortComparer:(e,t)=>e.model_name.localeCompare(t.model_name)}),UE=cl({sortComparer:(e,t)=>e.model_name.localeCompare(t.model_name)}),GE=cl({sortComparer:(e,t)=>e.model_name.localeCompare(t.model_name)}),nue=({base_model:e,model_type:t,model_name:n})=>`${e}/${t}/${n}`,Yc=e=>{const t=[];return e.forEach(n=>{const r={...Ln(n),id:nue(n)};t.push(r)}),t},xo=Hs.injectEndpoints({endpoints:e=>({getMainModels:e.query({query:t=>{const n={model_type:"main",base_models:t};return`models/?${F_.stringify(n,{arrayFormat:"none"})}`},providesTags:(t,n,r)=>{const i=[{type:"MainModel",id:Le}];return t&&i.push(...t.ids.map(o=>({type:"MainModel",id:o}))),i},transformResponse:(t,n,r)=>{const i=Yc(t.models);return jE.setAll(jE.getInitialState(),i)}}),updateMainModels:e.mutation({query:({base_model:t,model_name:n,body:r})=>({url:`models/${t}/main/${n}`,method:"PATCH",body:r}),invalidatesTags:[{type:"MainModel",id:Le},{type:"SDXLRefinerModel",id:Le}]}),importMainModels:e.mutation({query:({body:t})=>({url:"models/import",method:"POST",body:t}),invalidatesTags:[{type:"MainModel",id:Le},{type:"SDXLRefinerModel",id:Le}]}),addMainModels:e.mutation({query:({body:t})=>({url:"models/add",method:"POST",body:t}),invalidatesTags:[{type:"MainModel",id:Le},{type:"SDXLRefinerModel",id:Le}]}),deleteMainModels:e.mutation({query:({base_model:t,model_name:n})=>({url:`models/${t}/main/${n}`,method:"DELETE"}),invalidatesTags:[{type:"MainModel",id:Le},{type:"SDXLRefinerModel",id:Le}]}),convertMainModels:e.mutation({query:({base_model:t,model_name:n,params:r})=>({url:`models/convert/${t}/main/${n}`,method:"PUT",params:r}),invalidatesTags:[{type:"MainModel",id:Le},{type:"SDXLRefinerModel",id:Le}]}),mergeMainModels:e.mutation({query:({base_model:t,body:n})=>({url:`models/merge/${t}`,method:"PUT",body:n}),invalidatesTags:[{type:"MainModel",id:Le},{type:"SDXLRefinerModel",id:Le}]}),syncModels:e.mutation({query:()=>({url:"models/sync",method:"POST"}),invalidatesTags:[{type:"MainModel",id:Le},{type:"SDXLRefinerModel",id:Le}]}),getLoRAModels:e.query({query:()=>({url:"models/",params:{model_type:"lora"}}),providesTags:(t,n,r)=>{const i=[{type:"LoRAModel",id:Le}];return t&&i.push(...t.ids.map(o=>({type:"LoRAModel",id:o}))),i},transformResponse:(t,n,r)=>{const i=Yc(t.models);return VE.setAll(VE.getInitialState(),i)}}),updateLoRAModels:e.mutation({query:({base_model:t,model_name:n,body:r})=>({url:`models/${t}/lora/${n}`,method:"PATCH",body:r}),invalidatesTags:[{type:"LoRAModel",id:Le}]}),deleteLoRAModels:e.mutation({query:({base_model:t,model_name:n})=>({url:`models/${t}/lora/${n}`,method:"DELETE"}),invalidatesTags:[{type:"LoRAModel",id:Le}]}),getControlNetModels:e.query({query:()=>({url:"models/",params:{model_type:"controlnet"}}),providesTags:(t,n,r)=>{const i=[{type:"ControlNetModel",id:Le}];return t&&i.push(...t.ids.map(o=>({type:"ControlNetModel",id:o}))),i},transformResponse:(t,n,r)=>{const i=Yc(t.models);return zE.setAll(zE.getInitialState(),i)}}),getVaeModels:e.query({query:()=>({url:"models/",params:{model_type:"vae"}}),providesTags:(t,n,r)=>{const i=[{type:"VaeModel",id:Le}];return t&&i.push(...t.ids.map(o=>({type:"VaeModel",id:o}))),i},transformResponse:(t,n,r)=>{const i=Yc(t.models);return GE.setAll(GE.getInitialState(),i)}}),getTextualInversionModels:e.query({query:()=>({url:"models/",params:{model_type:"embedding"}}),providesTags:(t,n,r)=>{const i=[{type:"TextualInversionModel",id:Le}];return t&&i.push(...t.ids.map(o=>({type:"TextualInversionModel",id:o}))),i},transformResponse:(t,n,r)=>{const i=Yc(t.models);return UE.setAll(UE.getInitialState(),i)}}),getModelsInFolder:e.query({query:t=>({url:`/models/search?${F_.stringify(t,{})}`}),providesTags:(t,n,r)=>{const i=[{type:"ScannedModels",id:Le}];return t&&i.push(...t.map(o=>({type:"ScannedModels",id:o}))),i}}),getCheckpointConfigs:e.query({query:()=>({url:"/models/ckpt_confs"})})})}),{useGetMainModelsQuery:F5e,useGetControlNetModelsQuery:B5e,useGetLoRAModelsQuery:j5e,useGetTextualInversionModelsQuery:V5e,useGetVaeModelsQuery:z5e,useUpdateMainModelsMutation:U5e,useDeleteMainModelsMutation:G5e,useImportMainModelsMutation:H5e,useAddMainModelsMutation:q5e,useConvertMainModelsMutation:W5e,useMergeMainModelsMutation:K5e,useDeleteLoRAModelsMutation:X5e,useUpdateLoRAModelsMutation:Y5e,useSyncModelsMutation:Q5e,useGetModelsInFolderQuery:Z5e,useGetCheckpointConfigsQuery:J5e}=xo,rue=()=>{le({predicate:(e,t)=>xo.endpoints.getMainModels.matchFulfilled(t)&&!t.meta.arg.originalArgs.includes("sdxl-refiner"),effect:async(e,{getState:t,dispatch:n})=>{const r=fe("models");r.info({models:e.payload.entities},`Main models loaded (${e.payload.ids.length})`);const i=t().generation.model;if(Ea(e.payload.entities,u=>(u==null?void 0:u.model_name)===(i==null?void 0:i.model_name)&&(u==null?void 0:u.base_model)===(i==null?void 0:i.base_model)))return;const s=e.payload.ids[0],a=e.payload.entities[s];if(!a){n(ja(null));return}const l=xf.safeParse(a);if(!l.success){r.error({error:l.error.format()},"Failed to parse main model");return}n(ja(l.data))}}),le({predicate:(e,t)=>xo.endpoints.getMainModels.matchFulfilled(t)&&t.meta.arg.originalArgs.includes("sdxl-refiner"),effect:async(e,{getState:t,dispatch:n})=>{const r=fe("models");r.info({models:e.payload.entities},`SDXL Refiner models loaded (${e.payload.ids.length})`);const i=t().sdxl.refinerModel;if(Ea(e.payload.entities,u=>(u==null?void 0:u.model_name)===(i==null?void 0:i.model_name)&&(u==null?void 0:u.base_model)===(i==null?void 0:i.base_model)))return;const s=e.payload.ids[0],a=e.payload.entities[s];if(!a){n(wE(null)),n(Xse(!1));return}const l=xf.safeParse(a);if(!l.success){r.error({error:l.error.format()},"Failed to parse SDXL Refiner Model");return}n(wE(l.data))}}),le({matcher:xo.endpoints.getVaeModels.matchFulfilled,effect:async(e,{getState:t,dispatch:n})=>{const r=fe("models");r.info({models:e.payload.entities},`VAEs loaded (${e.payload.ids.length})`);const i=t().generation.vae;if(i===null||Ea(e.payload.entities,u=>(u==null?void 0:u.model_name)===(i==null?void 0:i.model_name)&&(u==null?void 0:u.base_model)===(i==null?void 0:i.base_model)))return;const s=e.payload.ids[0],a=e.payload.entities[s];if(!a){n(ja(null));return}const l=pQ.safeParse(a);if(!l.success){r.error({error:l.error.format()},"Failed to parse VAE model");return}n(PO(l.data))}}),le({matcher:xo.endpoints.getLoRAModels.matchFulfilled,effect:async(e,{getState:t,dispatch:n})=>{fe("models").info({models:e.payload.entities},`LoRAs loaded (${e.payload.ids.length})`);const i=t().lora.loras;Qa(i,(o,s)=>{Ea(e.payload.entities,l=>(l==null?void 0:l.model_name)===(o==null?void 0:o.model_name)&&(l==null?void 0:l.base_model)===(o==null?void 0:o.base_model))||n(N7(s))})}}),le({matcher:xo.endpoints.getControlNetModels.matchFulfilled,effect:async(e,{getState:t,dispatch:n})=>{fe("models").info({models:e.payload.entities},`ControlNet models loaded (${e.payload.ids.length})`);const i=t().controlNet.controlNets;Qa(i,(o,s)=>{Ea(e.payload.entities,l=>{var u,c;return(l==null?void 0:l.model_name)===((u=o==null?void 0:o.model)==null?void 0:u.model_name)&&(l==null?void 0:l.base_model)===((c=o==null?void 0:o.model)==null?void 0:c.base_model)})||n(C7({controlNetId:s}))})}}),le({matcher:xo.endpoints.getTextualInversionModels.matchFulfilled,effect:async e=>{fe("models").info({models:e.payload.entities},`Embeddings loaded (${e.payload.ids.length})`)}})},ra=e=>JSON.parse(JSON.stringify(e)),h2=e=>!("$ref"in e),iue=e=>!("$ref"in e),e4e=500,oue={integer:"integer",float:"float",number:"float",string:"string",boolean:"boolean",enum:"enum",ImageField:"image",image_collection:"image_collection",LatentsField:"latents",ConditioningField:"conditioning",UNetField:"unet",ClipField:"clip",VaeField:"vae",model:"model",refiner_model:"refiner_model",vae_model:"vae_model",lora_model:"lora_model",controlnet_model:"controlnet_model",ControlNetModelField:"controlnet_model",array:"array",item:"item",ColorField:"color",ControlField:"control",control:"control",cfg_scale:"float",control_weight:"float"},sue=500,Dt=e=>`var(--invokeai-colors-${e}-${sue})`,t4e={integer:{color:"red",colorCssVar:Dt("red"),title:"Integer",description:"Integers are whole numbers, without a decimal point."},float:{color:"orange",colorCssVar:Dt("orange"),title:"Float",description:"Floats are numbers with a decimal point."},string:{color:"yellow",colorCssVar:Dt("yellow"),title:"String",description:"Strings are text."},boolean:{color:"green",colorCssVar:Dt("green"),title:"Boolean",description:"Booleans are true or false."},enum:{color:"blue",colorCssVar:Dt("blue"),title:"Enum",description:"Enums are values that may be one of a number of options."},image:{color:"purple",colorCssVar:Dt("purple"),title:"Image",description:"Images may be passed between nodes."},image_collection:{color:"purple",colorCssVar:Dt("purple"),title:"Image Collection",description:"A collection of images."},latents:{color:"pink",colorCssVar:Dt("pink"),title:"Latents",description:"Latents may be passed between nodes."},conditioning:{color:"cyan",colorCssVar:Dt("cyan"),title:"Conditioning",description:"Conditioning may be passed between nodes."},unet:{color:"red",colorCssVar:Dt("red"),title:"UNet",description:"UNet submodel."},clip:{color:"green",colorCssVar:Dt("green"),title:"Clip",description:"Tokenizer and text_encoder submodels."},vae:{color:"blue",colorCssVar:Dt("blue"),title:"Vae",description:"Vae submodel."},control:{color:"cyan",colorCssVar:Dt("cyan"),title:"Control",description:"Control info passed between nodes."},model:{color:"teal",colorCssVar:Dt("teal"),title:"Model",description:"Models are models."},refiner_model:{color:"teal",colorCssVar:Dt("teal"),title:"Refiner Model",description:"Models are models."},vae_model:{color:"teal",colorCssVar:Dt("teal"),title:"VAE",description:"Models are models."},lora_model:{color:"teal",colorCssVar:Dt("teal"),title:"LoRA",description:"Models are models."},controlnet_model:{color:"teal",colorCssVar:Dt("teal"),title:"ControlNet",description:"Models are models."},array:{color:"gray",colorCssVar:Dt("gray"),title:"Array",description:"TODO: Array type description."},item:{color:"gray",colorCssVar:Dt("gray"),title:"Collection Item",description:"TODO: Collection Item type description."},color:{color:"gray",colorCssVar:Dt("gray"),title:"Color",description:"A RGBA color."}},n4e=250,Vb=e=>e.$ref.split("/").slice(-1)[0],aue=({schemaObject:e,baseField:t})=>{const n={...t,type:"integer",inputRequirement:"always",inputKind:"any",default:e.default??0};return e.multipleOf!==void 0&&(n.multipleOf=e.multipleOf),e.maximum!==void 0&&(n.maximum=e.maximum),e.exclusiveMaximum!==void 0&&(n.exclusiveMaximum=e.exclusiveMaximum),e.minimum!==void 0&&(n.minimum=e.minimum),e.exclusiveMinimum!==void 0&&(n.exclusiveMinimum=e.exclusiveMinimum),n},lue=({schemaObject:e,baseField:t})=>{const n={...t,type:"float",inputRequirement:"always",inputKind:"any",default:e.default??0};return e.multipleOf!==void 0&&(n.multipleOf=e.multipleOf),e.maximum!==void 0&&(n.maximum=e.maximum),e.exclusiveMaximum!==void 0&&(n.exclusiveMaximum=e.exclusiveMaximum),e.minimum!==void 0&&(n.minimum=e.minimum),e.exclusiveMinimum!==void 0&&(n.exclusiveMinimum=e.exclusiveMinimum),n},uue=({schemaObject:e,baseField:t})=>{const n={...t,type:"string",inputRequirement:"always",inputKind:"any",default:e.default??""};return e.minLength!==void 0&&(n.minLength=e.minLength),e.maxLength!==void 0&&(n.maxLength=e.maxLength),e.pattern!==void 0&&(n.pattern=e.pattern),n},cue=({schemaObject:e,baseField:t})=>({...t,type:"boolean",inputRequirement:"always",inputKind:"any",default:e.default??!1}),due=({schemaObject:e,baseField:t})=>({...t,type:"model",inputRequirement:"always",inputKind:"direct",default:e.default??void 0}),fue=({schemaObject:e,baseField:t})=>({...t,type:"refiner_model",inputRequirement:"always",inputKind:"direct",default:e.default??void 0}),hue=({schemaObject:e,baseField:t})=>({...t,type:"vae_model",inputRequirement:"always",inputKind:"direct",default:e.default??void 0}),pue=({schemaObject:e,baseField:t})=>({...t,type:"lora_model",inputRequirement:"always",inputKind:"direct",default:e.default??void 0}),gue=({schemaObject:e,baseField:t})=>({...t,type:"controlnet_model",inputRequirement:"always",inputKind:"direct",default:e.default??void 0}),mue=({schemaObject:e,baseField:t})=>({...t,type:"image",inputRequirement:"always",inputKind:"any",default:e.default??void 0}),yue=({schemaObject:e,baseField:t})=>({...t,type:"image_collection",inputRequirement:"always",inputKind:"any",default:e.default??void 0}),vue=({schemaObject:e,baseField:t})=>({...t,type:"latents",inputRequirement:"always",inputKind:"connection",default:e.default??void 0}),bue=({schemaObject:e,baseField:t})=>({...t,type:"conditioning",inputRequirement:"always",inputKind:"connection",default:e.default??void 0}),Sue=({schemaObject:e,baseField:t})=>({...t,type:"unet",inputRequirement:"always",inputKind:"connection",default:e.default??void 0}),_ue=({schemaObject:e,baseField:t})=>({...t,type:"clip",inputRequirement:"always",inputKind:"connection",default:e.default??void 0}),wue=({schemaObject:e,baseField:t})=>({...t,type:"vae",inputRequirement:"always",inputKind:"connection",default:e.default??void 0}),xue=({schemaObject:e,baseField:t})=>({...t,type:"control",inputRequirement:"always",inputKind:"connection",default:e.default??void 0}),Cue=({schemaObject:e,baseField:t})=>{const n=e.enum??[];return{...t,type:"enum",enumType:e.type??"string",options:n,inputRequirement:"always",inputKind:"direct",default:e.default??n[0]}},HE=({baseField:e})=>({...e,type:"array",inputRequirement:"always",inputKind:"direct",default:[]}),qE=({baseField:e})=>({...e,type:"item",inputRequirement:"always",inputKind:"direct",default:void 0}),Tue=({schemaObject:e,baseField:t})=>({...t,type:"color",inputRequirement:"always",inputKind:"direct",default:e.default??{r:127,g:127,b:127,a:255}}),nN=(e,t,n)=>{let r="";n&&t in n?r=n[t]:e.type?e.enum?r="enum":e.type&&(r=e.type):e.allOf?r=Vb(e.allOf[0]):e.anyOf?r=Vb(e.anyOf[0]):e.oneOf&&(r=Vb(e.oneOf[0]));const i=oue[r];if(!i)throw`Field type "${r}" is unknown!`;return i},Eue=(e,t,n)=>{const r=nN(e,t,n),i={name:t,title:e.title??"",description:e.description??""};if(["image"].includes(r))return mue({schemaObject:e,baseField:i});if(["image_collection"].includes(r))return yue({schemaObject:e,baseField:i});if(["latents"].includes(r))return vue({schemaObject:e,baseField:i});if(["conditioning"].includes(r))return bue({schemaObject:e,baseField:i});if(["unet"].includes(r))return Sue({schemaObject:e,baseField:i});if(["clip"].includes(r))return _ue({schemaObject:e,baseField:i});if(["vae"].includes(r))return wue({schemaObject:e,baseField:i});if(["control"].includes(r))return xue({schemaObject:e,baseField:i});if(["model"].includes(r))return due({schemaObject:e,baseField:i});if(["refiner_model"].includes(r))return fue({schemaObject:e,baseField:i});if(["vae_model"].includes(r))return hue({schemaObject:e,baseField:i});if(["lora_model"].includes(r))return pue({schemaObject:e,baseField:i});if(["controlnet_model"].includes(r))return gue({schemaObject:e,baseField:i});if(["enum"].includes(r))return Cue({schemaObject:e,baseField:i});if(["integer"].includes(r))return aue({schemaObject:e,baseField:i});if(["number","float"].includes(r))return lue({schemaObject:e,baseField:i});if(["string"].includes(r))return uue({schemaObject:e,baseField:i});if(["boolean"].includes(r))return cue({schemaObject:e,baseField:i});if(["array"].includes(r))return HE({schemaObject:e,baseField:i});if(["item"].includes(r))return qE({schemaObject:e,baseField:i});if(["color"].includes(r))return Tue({schemaObject:e,baseField:i});if(["array"].includes(r))return HE({schemaObject:e,baseField:i});if(["item"].includes(r))return qE({schemaObject:e,baseField:i})},Pue=(e,t,n)=>{const r=e.$ref.split("/").slice(-1)[0],i=t.components.schemas[r];return h2(i)?Lx(i.properties,(s,a,l)=>{if(!["type","id"].includes(l)&&!["object"].includes(a.type)&&h2(a)){const u=nN(a,l,n);s[l]={name:l,title:a.title??"",description:a.description??"",type:u}}return s},{}):{}},Aue=e=>e==="l2i"?["id","type","metadata"]:["id","type","is_intermediate","metadata"],kue=["Graph","InvocationMeta","MetadataAccumulatorInvocation"],Rue=e=>{var r;return oO((r=e.components)==null?void 0:r.schemas,(i,o)=>o.includes("Invocation")&&!o.includes("InvocationOutput")&&!kue.some(s=>o.includes(s))).reduce((i,o)=>{var s,a,l,u,c;if(iue(o)){const d=o.properties.type.default,f=Aue(d),h=((s=o.ui)==null?void 0:s.title)??o.title.replace("Invocation",""),p=(a=o.ui)==null?void 0:a.type_hints,m={};if(d==="collect"){const g=o.properties.item;m.item={type:"item",name:"item",description:g.description??"",title:"Collection Item",inputKind:"connection",inputRequirement:"always",default:void 0}}else if(d==="iterate"){const g=o.properties.collection;m.collection={type:"array",name:"collection",title:g.title??"",default:[],description:g.description??"",inputRequirement:"always",inputKind:"connection"}}else Lx(o.properties,(g,b,_)=>{if(!f.includes(_)&&h2(b)){const w=Eue(b,_,p);w&&(g[_]=w)}return g},m);const S=o.output;let v;if(d==="iterate"){const g=(u=(l=e.components)==null?void 0:l.schemas)==null?void 0:u.IterateInvocationOutput;v={item:{name:"item",title:(g==null?void 0:g.title)??"",description:(g==null?void 0:g.description)??"",type:"array"}}}else v=Pue(S,e,p);const y={title:h,type:d,tags:((c=o.ui)==null?void 0:c.tags)??[],description:o.description??"",inputs:m,outputs:v};Object.assign(i,{[d]:y})}return i},{})},Oue=()=>{le({actionCreator:Df.fulfilled,effect:(e,{dispatch:t})=>{const n=fe("system"),r=e.payload;n.debug({schemaJSON:r},"Dereferenced OpenAPI schema");const i=Rue(r);n.debug({nodeTemplates:ra(i)},`Built ${hO(i)} node templates`),t(dC(i))}}),le({actionCreator:Df.rejected,effect:()=>{fe("system").error("Problem dereferencing OpenAPI Schema")}})},Mue=[EvalError,RangeError,ReferenceError,SyntaxError,TypeError,URIError,globalThis.DOMException,globalThis.AssertionError,globalThis.SystemError].filter(Boolean).map(e=>[e.name,e]),Iue=new Map(Mue),Nue=[{property:"name",enumerable:!1},{property:"message",enumerable:!1},{property:"stack",enumerable:!1},{property:"code",enumerable:!0},{property:"cause",enumerable:!1}],p2=Symbol(".toJSON was called"),Due=e=>{e[p2]=!0;const t=e.toJSON();return delete e[p2],t},Lue=e=>Iue.get(e)??Error,rN=({from:e,seen:t,to:n,forceEnumerable:r,maxDepth:i,depth:o,useToJSON:s,serialize:a})=>{if(!n)if(Array.isArray(e))n=[];else if(!a&&WE(e)){const u=Lue(e.name);n=new u}else n={};if(t.push(e),o>=i)return n;if(s&&typeof e.toJSON=="function"&&e[p2]!==!0)return Due(e);const l=u=>rN({from:u,seen:[...t],forceEnumerable:r,maxDepth:i,depth:o,useToJSON:s,serialize:a});for(const[u,c]of Object.entries(e)){if(typeof Buffer=="function"&&Buffer.isBuffer(c)){n[u]="[object Buffer]";continue}if(c!==null&&typeof c=="object"&&typeof c.pipe=="function"){n[u]="[object Stream]";continue}if(typeof c!="function"){if(!c||typeof c!="object"){n[u]=c;continue}if(!t.includes(e[u])){o++,n[u]=l(e[u]);continue}n[u]="[Circular]"}}for(const{property:u,enumerable:c}of Nue)typeof e[u]<"u"&&e[u]!==null&&Object.defineProperty(n,u,{value:WE(e[u])?l(e[u]):e[u],enumerable:r?!0:c,configurable:!0,writable:!0});return n};function vC(e,t={}){const{maxDepth:n=Number.POSITIVE_INFINITY,useToJSON:r=!0}=t;return typeof e=="object"&&e!==null?rN({from:e,seen:[],forceEnumerable:!0,maxDepth:n,depth:0,useToJSON:r,serialize:!0}):typeof e=="function"?`[Function: ${e.name??"anonymous"}]`:e}function WE(e){return!!e&&typeof e=="object"&&"name"in e&&"message"in e&&"stack"in e}const $ue=()=>{le({actionCreator:hl.pending,effect:()=>{}})},Fue=()=>{le({actionCreator:hl.fulfilled,effect:e=>{const t=fe("session"),{session_id:n}=e.meta.arg;t.debug({session_id:n},`Session canceled (${n})`)}})},Bue=()=>{le({actionCreator:hl.rejected,effect:e=>{const t=fe("session"),{session_id:n}=e.meta.arg;if(e.payload){const{error:r}=e.payload;t.error({session_id:n,error:vC(r)},"Problem canceling session")}}})},jue=()=>{le({actionCreator:Rn.pending,effect:()=>{}})},Vue=()=>{le({actionCreator:Rn.fulfilled,effect:e=>{const t=fe("session"),n=e.payload;t.debug({session:ra(n)},`Session created (${n.id})`)}})},zue=()=>{le({actionCreator:Rn.rejected,effect:e=>{const t=fe("session");if(e.payload){const{error:n,status:r}=e.payload,i=ra(e.meta.arg);t.error({graph:i,status:r,error:vC(n)},"Problem creating session")}}})},Uue=()=>{le({actionCreator:yh.pending,effect:()=>{}})},Gue=()=>{le({actionCreator:yh.fulfilled,effect:e=>{const t=fe("session"),{session_id:n}=e.meta.arg;t.debug({session_id:n},`Session invoked (${n})`)}})},Hue=()=>{le({actionCreator:yh.rejected,effect:e=>{const t=fe("session"),{session_id:n}=e.meta.arg;if(e.payload){const{error:r}=e.payload;t.error({session_id:n,error:vC(r)},"Problem invoking session")}}})},que=()=>{le({actionCreator:pl,effect:(e,{getState:t,dispatch:n})=>{const r=fe("session"),{sessionId:i}=t().system;i&&(r.debug({session_id:i},`Session ready to invoke (${i})})`),n(yh({session_id:i})))}})},Wue=()=>{le({actionCreator:n7,effect:(e,{dispatch:t,getState:n})=>{fe("socketio").debug("Connected");const{nodes:i,config:o}=n(),{disabledTabs:s}=o;!i.schema&&!s.includes("nodes")&&t(Df()),t(r7(e.payload)),t(xo.util.invalidateTags([{type:"MainModel",id:Le},{type:"SDXLRefinerModel",id:Le},{type:"LoRAModel",id:Le},{type:"ControlNetModel",id:Le},{type:"VaeModel",id:Le},{type:"TextualInversionModel",id:Le},{type:"ScannedModels",id:Le}])),t(gC.util.invalidateTags(["AppConfig","AppVersion"]))}})},Kue=()=>{le({actionCreator:i7,effect:(e,{dispatch:t})=>{fe("socketio").debug("Disconnected"),t(o7(e.payload))}})},Xue=()=>{le({actionCreator:g7,effect:(e,{dispatch:t,getState:n})=>{const r=fe("socketio");if(n().system.canceledSession===e.payload.data.graph_execution_state_id){r.trace(e.payload,"Ignored generator progress for canceled session");return}r.trace(e.payload,`Generator progress (${e.payload.data.node.type})`),t(m7(e.payload))}})},Yue=()=>{le({actionCreator:h7,effect:(e,{dispatch:t})=>{fe("socketio").debug(e.payload,"Session complete"),t(p7(e.payload))}})},Que=["dataURL_image"],Zue=()=>{le({actionCreator:zx,effect:async(e,{dispatch:t,getState:n})=>{const r=fe("socketio"),{data:i}=e.payload;r.debug({data:ra(i)},`Invocation complete (${e.payload.data.node.type})`);const o=e.payload.data.graph_execution_state_id,{cancelType:s,isCancelScheduled:a}=n().system;s==="scheduled"&&a&&t(hl({session_id:o}));const{result:l,node:u,graph_execution_state_id:c}=i;if(JI(l)&&!Que.includes(u.type)){const{image_name:d}=l.image,{canvas:f,gallery:h}=n(),p=await t(he.endpoints.getImageDTO.initiate(d)).unwrap();if(c===f.layerState.stagingArea.sessionId&&t($Q(p)),!p.is_intermediate){const{autoAddBoardId:m}=h;t(m?he.endpoints.addImageToBoard.initiate({board_id:m,imageDTO:p}):he.util.updateQueryData("listImages",{board_id:"none",categories:gi},y=>{const g=y.total,_=Kn.addOne(y,p).total-g;y.total=y.total+_})),t(he.util.invalidateTags([{type:"BoardImagesTotal",id:m??"none"},{type:"BoardAssetsTotal",id:m??"none"}]));const{selectedBoardId:S,shouldAutoSwitch:v}=h;v&&(m&&m!==S?(t(U_(m)),t(Am("images"))):m||t(Am("images")),t(Os(p.image_name)))}t(yae(null))}t(d7(e.payload))}})},Jue=()=>{le({actionCreator:f7,effect:(e,{dispatch:t})=>{fe("socketio").error(e.payload,`Invocation error (${e.payload.data.node.type})`),t(Ux(e.payload))}})},ece=()=>{le({actionCreator:_7,effect:(e,{dispatch:t})=>{fe("socketio").error(e.payload,`Invocation retrieval error (${e.payload.data.graph_execution_state_id})`),t(w7(e.payload))}})},tce=()=>{le({actionCreator:u7,effect:(e,{dispatch:t,getState:n})=>{const r=fe("socketio");if(n().system.canceledSession===e.payload.data.graph_execution_state_id){r.trace(e.payload,"Ignored invocation started for canceled session");return}r.debug(e.payload,`Invocation started (${e.payload.data.node.type})`),t(c7(e.payload))}})},nce=()=>{le({actionCreator:y7,effect:(e,{dispatch:t})=>{const n=fe("socketio"),{base_model:r,model_name:i,model_type:o,submodel:s}=e.payload.data;let a=`Model load started: ${r}/${o}/${i}`;s&&(a=a.concat(`/${s}`)),n.debug(e.payload,a),t(ZZ(e.payload))}}),le({actionCreator:v7,effect:(e,{dispatch:t})=>{const n=fe("socketio"),{base_model:r,model_name:i,model_type:o,submodel:s}=e.payload.data;let a=`Model load complete: ${r}/${o}/${i}`;s&&(a=a.concat(`/${s}`)),n.debug(e.payload,a),t(JZ(e.payload))}})},rce=()=>{le({actionCreator:b7,effect:(e,{dispatch:t})=>{fe("socketio").error(e.payload,`Session retrieval error (${e.payload.data.graph_execution_state_id})`),t(S7(e.payload))}})},ice=()=>{le({actionCreator:Vx,effect:(e,{dispatch:t})=>{fe("socketio").debug(e.payload,"Subscribed"),t(s7(e.payload))}})},oce=()=>{le({actionCreator:a7,effect:(e,{dispatch:t})=>{fe("socketio").debug(e.payload,"Unsubscribed"),t(l7(e.payload))}})},sce=()=>{le({actionCreator:Ele,effect:async(e,{dispatch:t,getState:n})=>{const{imageDTO:r}=e.payload;try{const i=await t(he.endpoints.changeImageIsIntermediate.initiate({imageDTO:r,is_intermediate:!1})).unwrap(),{autoAddBoardId:o}=n().gallery;o&&await t(he.endpoints.addImageToBoard.initiate({imageDTO:i,board_id:o})),t(Ft({title:"Image Saved",status:"success"}))}catch(i){t(Ft({title:"Image Saving Failed",description:i==null?void 0:i.message,status:"error"}))}}})},r4e=["sd-1","sd-2","sdxl","sdxl-refiner"],ace=["sd-1","sd-2","sdxl"],i4e=["sdxl-refiner"],lce=()=>{le({actionCreator:OO,effect:(e,{getState:t,dispatch:n})=>{if(e.payload==="unifiedCanvas"){const{data:i}=xo.endpoints.getMainModels.select(ace)(t());if(!i){n(ja(null));return}const o=[];Qa(i.entities,u=>{u&&["sd-1","sd-2"].includes(u.base_model)&&o.push(u)});const s=o[0];if(!s){n(ja(null));return}const{base_model:a,model_name:l}=s;n(ja({base_model:a,model_name:l}))}}})},Be="positive_conditioning",qe="negative_conditioning",dn="text_to_latents",We="latents_to_image",fu="nsfw_checker",Qc="invisible_watermark",$e="noise",Fi="rand_int",Co="range_of_size",lr="iterate",pt="main_model_loader",Zc="vae_loader",uce="lora_loader",it="clip_skip",bt="image_to_latents",Kt="latents_to_latents",Qn="resize_image",Ii="inpaint",Op="control_net_collect",zb="dynamic_prompt",Ke="metadata_accumulator",KE="esrgan",en="sdxl_model_loader",is="t2l_sdxl",Ni="l2l_sdxl",zl="sdxl_refiner_model_loader",Mp="sdxl_refiner_positive_conditioning",Ip="sdxl_refiner_negative_conditioning",ma="l2l_sdxl_refiner",bC="text_to_image_graph",cce="sdxl_text_to_image_graph",dce="sxdl_image_to_image_graph",Xm="image_to_image_graph",iN="inpaint_graph",fce=({image_name:e,esrganModelName:t})=>{const n={id:KE,type:"esrgan",image:{image_name:e},model_name:t,is_intermediate:!1};return{id:"adhoc-esrgan-graph",nodes:{[KE]:n},edges:[]}},hce=ue("upscale/upscaleRequested"),pce=()=>{le({actionCreator:hce,effect:async(e,{dispatch:t,getState:n,take:r})=>{const{image_name:i}=e.payload,{esrganModelName:o}=n().postprocessing,s=fce({image_name:i,esrganModelName:o});t(Rn({graph:s})),await r(Rn.fulfilled.match),t(pl())}})},gce=e=>{const t=window.open("");t&&e.forEach(n=>{const r=new Image;r.src=n.base64,t.document.write(n.caption),t.document.write(""),t.document.write(r.outerHTML),t.document.write("")})},XE=e=>new Promise((t,n)=>{const r=new FileReader;r.onload=i=>t(r.result),r.onerror=i=>n(r.error),r.onabort=i=>n(new Error("Read aborted")),r.readAsDataURL(e)});var SC={exports:{}},nv={},oN={},Pe={};(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e._registerNode=e.Konva=e.glob=void 0;var t=Math.PI/180;function n(){return typeof window<"u"&&({}.toString.call(window)==="[object Window]"||{}.toString.call(window)==="[object global]")}e.glob=typeof Ee<"u"?Ee:typeof window<"u"?window:typeof WorkerGlobalScope<"u"?self:{},e.Konva={_global:e.glob,version:"9.2.0",isBrowser:n(),isUnminified:/param/.test((function(i){}).toString()),dblClickWindow:400,getAngle(i){return e.Konva.angleDeg?i*t:i},enableTrace:!1,pointerEventsEnabled:!0,autoDrawEnabled:!0,hitOnDragEnabled:!1,capturePointerEventsEnabled:!1,_mouseListenClick:!1,_touchListenClick:!1,_pointerListenClick:!1,_mouseInDblClickWindow:!1,_touchInDblClickWindow:!1,_pointerInDblClickWindow:!1,_mouseDblClickPointerId:null,_touchDblClickPointerId:null,_pointerDblClickPointerId:null,pixelRatio:typeof window<"u"&&window.devicePixelRatio||1,dragDistance:3,angleDeg:!0,showWarnings:!0,dragButtons:[0,1],isDragging(){return e.Konva.DD.isDragging},isDragReady(){return!!e.Konva.DD.node},releaseCanvasOnDestroy:!0,document:e.glob.document,_injectGlobal(i){e.glob.Konva=i}};const r=i=>{e.Konva[i.prototype.getClassName()]=i};e._registerNode=r,e.Konva._injectGlobal(e.Konva)})(Pe);var Ot={};(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.Util=e.Transform=void 0;const t=Pe;class n{constructor(b=[1,0,0,1,0,0]){this.dirty=!1,this.m=b&&b.slice()||[1,0,0,1,0,0]}reset(){this.m[0]=1,this.m[1]=0,this.m[2]=0,this.m[3]=1,this.m[4]=0,this.m[5]=0}copy(){return new n(this.m)}copyInto(b){b.m[0]=this.m[0],b.m[1]=this.m[1],b.m[2]=this.m[2],b.m[3]=this.m[3],b.m[4]=this.m[4],b.m[5]=this.m[5]}point(b){var _=this.m;return{x:_[0]*b.x+_[2]*b.y+_[4],y:_[1]*b.x+_[3]*b.y+_[5]}}translate(b,_){return this.m[4]+=this.m[0]*b+this.m[2]*_,this.m[5]+=this.m[1]*b+this.m[3]*_,this}scale(b,_){return this.m[0]*=b,this.m[1]*=b,this.m[2]*=_,this.m[3]*=_,this}rotate(b){var _=Math.cos(b),w=Math.sin(b),x=this.m[0]*_+this.m[2]*w,T=this.m[1]*_+this.m[3]*w,P=this.m[0]*-w+this.m[2]*_,E=this.m[1]*-w+this.m[3]*_;return this.m[0]=x,this.m[1]=T,this.m[2]=P,this.m[3]=E,this}getTranslation(){return{x:this.m[4],y:this.m[5]}}skew(b,_){var w=this.m[0]+this.m[2]*_,x=this.m[1]+this.m[3]*_,T=this.m[2]+this.m[0]*b,P=this.m[3]+this.m[1]*b;return this.m[0]=w,this.m[1]=x,this.m[2]=T,this.m[3]=P,this}multiply(b){var _=this.m[0]*b.m[0]+this.m[2]*b.m[1],w=this.m[1]*b.m[0]+this.m[3]*b.m[1],x=this.m[0]*b.m[2]+this.m[2]*b.m[3],T=this.m[1]*b.m[2]+this.m[3]*b.m[3],P=this.m[0]*b.m[4]+this.m[2]*b.m[5]+this.m[4],E=this.m[1]*b.m[4]+this.m[3]*b.m[5]+this.m[5];return this.m[0]=_,this.m[1]=w,this.m[2]=x,this.m[3]=T,this.m[4]=P,this.m[5]=E,this}invert(){var b=1/(this.m[0]*this.m[3]-this.m[1]*this.m[2]),_=this.m[3]*b,w=-this.m[1]*b,x=-this.m[2]*b,T=this.m[0]*b,P=b*(this.m[2]*this.m[5]-this.m[3]*this.m[4]),E=b*(this.m[1]*this.m[4]-this.m[0]*this.m[5]);return this.m[0]=_,this.m[1]=w,this.m[2]=x,this.m[3]=T,this.m[4]=P,this.m[5]=E,this}getMatrix(){return this.m}decompose(){var b=this.m[0],_=this.m[1],w=this.m[2],x=this.m[3],T=this.m[4],P=this.m[5],E=b*x-_*w;let A={x:T,y:P,rotation:0,scaleX:0,scaleY:0,skewX:0,skewY:0};if(b!=0||_!=0){var $=Math.sqrt(b*b+_*_);A.rotation=_>0?Math.acos(b/$):-Math.acos(b/$),A.scaleX=$,A.scaleY=E/$,A.skewX=(b*w+_*x)/E,A.skewY=0}else if(w!=0||x!=0){var I=Math.sqrt(w*w+x*x);A.rotation=Math.PI/2-(x>0?Math.acos(-w/I):-Math.acos(w/I)),A.scaleX=E/I,A.scaleY=I,A.skewX=0,A.skewY=(b*w+_*x)/E}return A.rotation=e.Util._getRotation(A.rotation),A}}e.Transform=n;var r="[object Array]",i="[object Number]",o="[object String]",s="[object Boolean]",a=Math.PI/180,l=180/Math.PI,u="#",c="",d="0",f="Konva warning: ",h="Konva error: ",p="rgb(",m={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,132,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,255,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,203],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[119,128,144],slategrey:[119,128,144],snow:[255,255,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],transparent:[255,255,255,0],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,5]},S=/rgb\((\d{1,3}),(\d{1,3}),(\d{1,3})\)/,v=[];const y=typeof requestAnimationFrame<"u"&&requestAnimationFrame||function(g){setTimeout(g,60)};e.Util={_isElement(g){return!!(g&&g.nodeType==1)},_isFunction(g){return!!(g&&g.constructor&&g.call&&g.apply)},_isPlainObject(g){return!!g&&g.constructor===Object},_isArray(g){return Object.prototype.toString.call(g)===r},_isNumber(g){return Object.prototype.toString.call(g)===i&&!isNaN(g)&&isFinite(g)},_isString(g){return Object.prototype.toString.call(g)===o},_isBoolean(g){return Object.prototype.toString.call(g)===s},isObject(g){return g instanceof Object},isValidSelector(g){if(typeof g!="string")return!1;var b=g[0];return b==="#"||b==="."||b===b.toUpperCase()},_sign(g){return g===0||g>0?1:-1},requestAnimFrame(g){v.push(g),v.length===1&&y(function(){const b=v;v=[],b.forEach(function(_){_()})})},createCanvasElement(){var g=document.createElement("canvas");try{g.style=g.style||{}}catch{}return g},createImageElement(){return document.createElement("img")},_isInDocument(g){for(;g=g.parentNode;)if(g==document)return!0;return!1},_urlToImage(g,b){var _=e.Util.createImageElement();_.onload=function(){b(_)},_.src=g},_rgbToHex(g,b,_){return((1<<24)+(g<<16)+(b<<8)+_).toString(16).slice(1)},_hexToRgb(g){g=g.replace(u,c);var b=parseInt(g,16);return{r:b>>16&255,g:b>>8&255,b:b&255}},getRandomColor(){for(var g=(Math.random()*16777215<<0).toString(16);g.length<6;)g=d+g;return u+g},getRGB(g){var b;return g in m?(b=m[g],{r:b[0],g:b[1],b:b[2]}):g[0]===u?this._hexToRgb(g.substring(1)):g.substr(0,4)===p?(b=S.exec(g.replace(/ /g,"")),{r:parseInt(b[1],10),g:parseInt(b[2],10),b:parseInt(b[3],10)}):{r:0,g:0,b:0}},colorToRGBA(g){return g=g||"black",e.Util._namedColorToRBA(g)||e.Util._hex3ColorToRGBA(g)||e.Util._hex4ColorToRGBA(g)||e.Util._hex6ColorToRGBA(g)||e.Util._hex8ColorToRGBA(g)||e.Util._rgbColorToRGBA(g)||e.Util._rgbaColorToRGBA(g)||e.Util._hslColorToRGBA(g)},_namedColorToRBA(g){var b=m[g.toLowerCase()];return b?{r:b[0],g:b[1],b:b[2],a:1}:null},_rgbColorToRGBA(g){if(g.indexOf("rgb(")===0){g=g.match(/rgb\(([^)]+)\)/)[1];var b=g.split(/ *, */).map(Number);return{r:b[0],g:b[1],b:b[2],a:1}}},_rgbaColorToRGBA(g){if(g.indexOf("rgba(")===0){g=g.match(/rgba\(([^)]+)\)/)[1];var b=g.split(/ *, */).map((_,w)=>_.slice(-1)==="%"?w===3?parseInt(_)/100:parseInt(_)/100*255:Number(_));return{r:b[0],g:b[1],b:b[2],a:b[3]}}},_hex8ColorToRGBA(g){if(g[0]==="#"&&g.length===9)return{r:parseInt(g.slice(1,3),16),g:parseInt(g.slice(3,5),16),b:parseInt(g.slice(5,7),16),a:parseInt(g.slice(7,9),16)/255}},_hex6ColorToRGBA(g){if(g[0]==="#"&&g.length===7)return{r:parseInt(g.slice(1,3),16),g:parseInt(g.slice(3,5),16),b:parseInt(g.slice(5,7),16),a:1}},_hex4ColorToRGBA(g){if(g[0]==="#"&&g.length===5)return{r:parseInt(g[1]+g[1],16),g:parseInt(g[2]+g[2],16),b:parseInt(g[3]+g[3],16),a:parseInt(g[4]+g[4],16)/255}},_hex3ColorToRGBA(g){if(g[0]==="#"&&g.length===4)return{r:parseInt(g[1]+g[1],16),g:parseInt(g[2]+g[2],16),b:parseInt(g[3]+g[3],16),a:1}},_hslColorToRGBA(g){if(/hsl\((\d+),\s*([\d.]+)%,\s*([\d.]+)%\)/g.test(g)){const[b,..._]=/hsl\((\d+),\s*([\d.]+)%,\s*([\d.]+)%\)/g.exec(g),w=Number(_[0])/360,x=Number(_[1])/100,T=Number(_[2])/100;let P,E,A;if(x===0)return A=T*255,{r:Math.round(A),g:Math.round(A),b:Math.round(A),a:1};T<.5?P=T*(1+x):P=T+x-T*x;const $=2*T-P,I=[0,0,0];for(let C=0;C<3;C++)E=w+1/3*-(C-1),E<0&&E++,E>1&&E--,6*E<1?A=$+(P-$)*6*E:2*E<1?A=P:3*E<2?A=$+(P-$)*(2/3-E)*6:A=$,I[C]=A*255;return{r:Math.round(I[0]),g:Math.round(I[1]),b:Math.round(I[2]),a:1}}},haveIntersection(g,b){return!(b.x>g.x+g.width||b.x+b.widthg.y+g.height||b.y+b.height1?(P=_,E=w,A=(_-x)*(_-x)+(w-T)*(w-T)):(P=g+I*(_-g),E=b+I*(w-b),A=(P-x)*(P-x)+(E-T)*(E-T))}return[P,E,A]},_getProjectionToLine(g,b,_){var w=e.Util.cloneObject(g),x=Number.MAX_VALUE;return b.forEach(function(T,P){if(!(!_&&P===b.length-1)){var E=b[(P+1)%b.length],A=e.Util._getProjectionToSegment(T.x,T.y,E.x,E.y,g.x,g.y),$=A[0],I=A[1],C=A[2];Cb.length){var P=b;b=g,g=P}for(w=0;w{b.width=0,b.height=0})},drawRoundedRectPath(g,b,_,w){let x=0,T=0,P=0,E=0;typeof w=="number"?x=T=P=E=Math.min(w,b/2,_/2):(x=Math.min(w[0]||0,b/2,_/2),T=Math.min(w[1]||0,b/2,_/2),E=Math.min(w[2]||0,b/2,_/2),P=Math.min(w[3]||0,b/2,_/2)),g.moveTo(x,0),g.lineTo(b-T,0),g.arc(b-T,T,T,Math.PI*3/2,0,!1),g.lineTo(b,_-E),g.arc(b-E,_-E,E,0,Math.PI/2,!1),g.lineTo(P,_),g.arc(P,_-P,P,Math.PI/2,Math.PI,!1),g.lineTo(0,x),g.arc(x,x,x,Math.PI,Math.PI*3/2,!1)}}})(Ot);var wt={},Te={},de={};Object.defineProperty(de,"__esModule",{value:!0});de.getComponentValidator=de.getBooleanValidator=de.getNumberArrayValidator=de.getFunctionValidator=de.getStringOrGradientValidator=de.getStringValidator=de.getNumberOrAutoValidator=de.getNumberOrArrayOfNumbersValidator=de.getNumberValidator=de.alphaComponent=de.RGBComponent=void 0;const Ko=Pe,Nt=Ot;function Xo(e){return Nt.Util._isString(e)?'"'+e+'"':Object.prototype.toString.call(e)==="[object Number]"||Nt.Util._isBoolean(e)?e:Object.prototype.toString.call(e)}function mce(e){return e>255?255:e<0?0:Math.round(e)}de.RGBComponent=mce;function yce(e){return e>1?1:e<1e-4?1e-4:e}de.alphaComponent=yce;function vce(){if(Ko.Konva.isUnminified)return function(e,t){return Nt.Util._isNumber(e)||Nt.Util.warn(Xo(e)+' is a not valid value for "'+t+'" attribute. The value should be a number.'),e}}de.getNumberValidator=vce;function bce(e){if(Ko.Konva.isUnminified)return function(t,n){let r=Nt.Util._isNumber(t),i=Nt.Util._isArray(t)&&t.length==e;return!r&&!i&&Nt.Util.warn(Xo(t)+' is a not valid value for "'+n+'" attribute. The value should be a number or Array('+e+")"),t}}de.getNumberOrArrayOfNumbersValidator=bce;function Sce(){if(Ko.Konva.isUnminified)return function(e,t){var n=Nt.Util._isNumber(e),r=e==="auto";return n||r||Nt.Util.warn(Xo(e)+' is a not valid value for "'+t+'" attribute. The value should be a number or "auto".'),e}}de.getNumberOrAutoValidator=Sce;function _ce(){if(Ko.Konva.isUnminified)return function(e,t){return Nt.Util._isString(e)||Nt.Util.warn(Xo(e)+' is a not valid value for "'+t+'" attribute. The value should be a string.'),e}}de.getStringValidator=_ce;function wce(){if(Ko.Konva.isUnminified)return function(e,t){const n=Nt.Util._isString(e),r=Object.prototype.toString.call(e)==="[object CanvasGradient]"||e&&e.addColorStop;return n||r||Nt.Util.warn(Xo(e)+' is a not valid value for "'+t+'" attribute. The value should be a string or a native gradient.'),e}}de.getStringOrGradientValidator=wce;function xce(){if(Ko.Konva.isUnminified)return function(e,t){return Nt.Util._isFunction(e)||Nt.Util.warn(Xo(e)+' is a not valid value for "'+t+'" attribute. The value should be a function.'),e}}de.getFunctionValidator=xce;function Cce(){if(Ko.Konva.isUnminified)return function(e,t){const n=Int8Array?Object.getPrototypeOf(Int8Array):null;return n&&e instanceof n||(Nt.Util._isArray(e)?e.forEach(function(r){Nt.Util._isNumber(r)||Nt.Util.warn('"'+t+'" attribute has non numeric element '+r+". Make sure that all elements are numbers.")}):Nt.Util.warn(Xo(e)+' is a not valid value for "'+t+'" attribute. The value should be a array of numbers.')),e}}de.getNumberArrayValidator=Cce;function Tce(){if(Ko.Konva.isUnminified)return function(e,t){var n=e===!0||e===!1;return n||Nt.Util.warn(Xo(e)+' is a not valid value for "'+t+'" attribute. The value should be a boolean.'),e}}de.getBooleanValidator=Tce;function Ece(e){if(Ko.Konva.isUnminified)return function(t,n){return t==null||Nt.Util.isObject(t)||Nt.Util.warn(Xo(t)+' is a not valid value for "'+n+'" attribute. The value should be an object with properties '+e),t}}de.getComponentValidator=Ece;(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.Factory=void 0;const t=Ot,n=de;var r="get",i="set";e.Factory={addGetterSetter(o,s,a,l,u){e.Factory.addGetter(o,s,a),e.Factory.addSetter(o,s,l,u),e.Factory.addOverloadedGetterSetter(o,s)},addGetter(o,s,a){var l=r+t.Util._capitalize(s);o.prototype[l]=o.prototype[l]||function(){var u=this.attrs[s];return u===void 0?a:u}},addSetter(o,s,a,l){var u=i+t.Util._capitalize(s);o.prototype[u]||e.Factory.overWriteSetter(o,s,a,l)},overWriteSetter(o,s,a,l){var u=i+t.Util._capitalize(s);o.prototype[u]=function(c){return a&&c!==void 0&&c!==null&&(c=a.call(this,c,s)),this._setAttr(s,c),l&&l.call(this),this}},addComponentsGetterSetter(o,s,a,l,u){var c=a.length,d=t.Util._capitalize,f=r+d(s),h=i+d(s),p,m;o.prototype[f]=function(){var v={};for(p=0;p{this._setAttr(s+d(b),void 0)}),this._fireChangeEvent(s,y,v),u&&u.call(this),this},e.Factory.addOverloadedGetterSetter(o,s)},addOverloadedGetterSetter(o,s){var a=t.Util._capitalize(s),l=i+a,u=r+a;o.prototype[s]=function(){return arguments.length?(this[l](arguments[0]),this):this[u]()}},addDeprecatedGetterSetter(o,s,a,l){t.Util.error("Adding deprecated "+s);var u=r+t.Util._capitalize(s),c=s+" property is deprecated and will be removed soon. Look at Konva change log for more information.";o.prototype[u]=function(){t.Util.error(c);var d=this.attrs[s];return d===void 0?a:d},e.Factory.addSetter(o,s,l,function(){t.Util.error(c)}),e.Factory.addOverloadedGetterSetter(o,s)},backCompat(o,s){t.Util.each(s,function(a,l){var u=o.prototype[l],c=r+t.Util._capitalize(a),d=i+t.Util._capitalize(a);function f(){u.apply(this,arguments),t.Util.error('"'+a+'" method is deprecated and will be removed soon. Use ""'+l+'" instead.')}o.prototype[a]=f,o.prototype[c]=f,o.prototype[d]=f})},afterSetFilter(){this._filterUpToDate=!1}}})(Te);var _i={},Oo={};Object.defineProperty(Oo,"__esModule",{value:!0});Oo.HitContext=Oo.SceneContext=Oo.Context=void 0;const sN=Ot,Pce=Pe;function Ace(e){var t=[],n=e.length,r=sN.Util,i,o;for(i=0;itypeof c=="number"?Math.floor(c):c)),o+=kce+u.join(YE)+Rce)):(o+=a.property,t||(o+=Dce+a.val)),o+=Ice;return o}clearTrace(){this.traceArr=[]}_trace(t){var n=this.traceArr,r;n.push(t),r=n.length,r>=$ce&&n.shift()}reset(){var t=this.getCanvas().getPixelRatio();this.setTransform(1*t,0,0,1*t,0,0)}getCanvas(){return this.canvas}clear(t){var n=this.getCanvas();t?this.clearRect(t.x||0,t.y||0,t.width||0,t.height||0):this.clearRect(0,0,n.getWidth()/n.pixelRatio,n.getHeight()/n.pixelRatio)}_applyLineCap(t){const n=t.attrs.lineCap;n&&this.setAttr("lineCap",n)}_applyOpacity(t){var n=t.getAbsoluteOpacity();n!==1&&this.setAttr("globalAlpha",n)}_applyLineJoin(t){const n=t.attrs.lineJoin;n&&this.setAttr("lineJoin",n)}setAttr(t,n){this._context[t]=n}arc(t,n,r,i,o,s){this._context.arc(t,n,r,i,o,s)}arcTo(t,n,r,i,o){this._context.arcTo(t,n,r,i,o)}beginPath(){this._context.beginPath()}bezierCurveTo(t,n,r,i,o,s){this._context.bezierCurveTo(t,n,r,i,o,s)}clearRect(t,n,r,i){this._context.clearRect(t,n,r,i)}clip(...t){this._context.clip.apply(this._context,t)}closePath(){this._context.closePath()}createImageData(t,n){var r=arguments;if(r.length===2)return this._context.createImageData(t,n);if(r.length===1)return this._context.createImageData(t)}createLinearGradient(t,n,r,i){return this._context.createLinearGradient(t,n,r,i)}createPattern(t,n){return this._context.createPattern(t,n)}createRadialGradient(t,n,r,i,o,s){return this._context.createRadialGradient(t,n,r,i,o,s)}drawImage(t,n,r,i,o,s,a,l,u){var c=arguments,d=this._context;c.length===3?d.drawImage(t,n,r):c.length===5?d.drawImage(t,n,r,i,o):c.length===9&&d.drawImage(t,n,r,i,o,s,a,l,u)}ellipse(t,n,r,i,o,s,a,l){this._context.ellipse(t,n,r,i,o,s,a,l)}isPointInPath(t,n,r,i){return r?this._context.isPointInPath(r,t,n,i):this._context.isPointInPath(t,n,i)}fill(...t){this._context.fill.apply(this._context,t)}fillRect(t,n,r,i){this._context.fillRect(t,n,r,i)}strokeRect(t,n,r,i){this._context.strokeRect(t,n,r,i)}fillText(t,n,r,i){i?this._context.fillText(t,n,r,i):this._context.fillText(t,n,r)}measureText(t){return this._context.measureText(t)}getImageData(t,n,r,i){return this._context.getImageData(t,n,r,i)}lineTo(t,n){this._context.lineTo(t,n)}moveTo(t,n){this._context.moveTo(t,n)}rect(t,n,r,i){this._context.rect(t,n,r,i)}putImageData(t,n,r){this._context.putImageData(t,n,r)}quadraticCurveTo(t,n,r,i){this._context.quadraticCurveTo(t,n,r,i)}restore(){this._context.restore()}rotate(t){this._context.rotate(t)}save(){this._context.save()}scale(t,n){this._context.scale(t,n)}setLineDash(t){this._context.setLineDash?this._context.setLineDash(t):"mozDash"in this._context?this._context.mozDash=t:"webkitLineDash"in this._context&&(this._context.webkitLineDash=t)}getLineDash(){return this._context.getLineDash()}setTransform(t,n,r,i,o,s){this._context.setTransform(t,n,r,i,o,s)}stroke(t){t?this._context.stroke(t):this._context.stroke()}strokeText(t,n,r,i){this._context.strokeText(t,n,r,i)}transform(t,n,r,i,o,s){this._context.transform(t,n,r,i,o,s)}translate(t,n){this._context.translate(t,n)}_enableTrace(){var t=this,n=QE.length,r=this.setAttr,i,o,s=function(a){var l=t[a],u;t[a]=function(){return o=Ace(Array.prototype.slice.call(arguments,0)),u=l.apply(t,arguments),t._trace({method:a,args:o}),u}};for(i=0;i{i.dragStatus==="dragging"&&(r=!0)}),r},justDragged:!1,get node(){var r;return e.DD._dragElements.forEach(i=>{r=i.node}),r},_dragElements:new Map,_drag(r){const i=[];e.DD._dragElements.forEach((o,s)=>{const{node:a}=o,l=a.getStage();l.setPointersPositions(r),o.pointerId===void 0&&(o.pointerId=n.Util._getFirstPointerId(r));const u=l._changedPointerPositions.find(f=>f.id===o.pointerId);if(u){if(o.dragStatus!=="dragging"){var c=a.dragDistance(),d=Math.max(Math.abs(u.x-o.startPointerPos.x),Math.abs(u.y-o.startPointerPos.y));if(d{o.fire("dragmove",{type:"dragmove",target:o,evt:r},!0)})},_endDragBefore(r){const i=[];e.DD._dragElements.forEach(o=>{const{node:s}=o,a=s.getStage();if(r&&a.setPointersPositions(r),!a._changedPointerPositions.find(c=>c.id===o.pointerId))return;(o.dragStatus==="dragging"||o.dragStatus==="stopped")&&(e.DD.justDragged=!0,t.Konva._mouseListenClick=!1,t.Konva._touchListenClick=!1,t.Konva._pointerListenClick=!1,o.dragStatus="stopped");const u=o.node.getLayer()||o.node instanceof t.Konva.Stage&&o.node;u&&i.indexOf(u)===-1&&i.push(u)}),i.forEach(o=>{o.draw()})},_endDragAfter(r){e.DD._dragElements.forEach((i,o)=>{i.dragStatus==="stopped"&&i.node.fire("dragend",{type:"dragend",target:i.node,evt:r},!0),i.dragStatus!=="dragging"&&e.DD._dragElements.delete(o)})}},t.Konva.isBrowser&&(window.addEventListener("mouseup",e.DD._endDragBefore,!0),window.addEventListener("touchend",e.DD._endDragBefore,!0),window.addEventListener("mousemove",e.DD._drag),window.addEventListener("touchmove",e.DD._drag),window.addEventListener("mouseup",e.DD._endDragAfter,!1),window.addEventListener("touchend",e.DD._endDragAfter,!1))})(ov);Object.defineProperty(wt,"__esModule",{value:!0});wt.Node=void 0;const ke=Ot,Ah=Te,Dp=_i,ya=Pe,Br=ov,zt=de;var bg="absoluteOpacity",Lp="allEventListeners",bo="absoluteTransform",ZE="absoluteScale",va="canvas",Hce="Change",qce="children",Wce="konva",g2="listening",JE="mouseenter",e6="mouseleave",t6="set",n6="Shape",Sg=" ",r6="stage",ss="transform",Kce="Stage",m2="visible",Xce=["xChange.konva","yChange.konva","scaleXChange.konva","scaleYChange.konva","skewXChange.konva","skewYChange.konva","rotationChange.konva","offsetXChange.konva","offsetYChange.konva","transformsEnabledChange.konva"].join(Sg);let Yce=1,Se=class y2{constructor(t){this._id=Yce++,this.eventListeners={},this.attrs={},this.index=0,this._allEventListeners=null,this.parent=null,this._cache=new Map,this._attachedDepsListeners=new Map,this._lastPos=null,this._batchingTransformChange=!1,this._needClearTransformCache=!1,this._filterUpToDate=!1,this._isUnderCache=!1,this._dragEventId=null,this._shouldFireChangeEvents=!1,this.setAttrs(t),this._shouldFireChangeEvents=!0}hasChildren(){return!1}_clearCache(t){(t===ss||t===bo)&&this._cache.get(t)?this._cache.get(t).dirty=!0:t?this._cache.delete(t):this._cache.clear()}_getCache(t,n){var r=this._cache.get(t),i=t===ss||t===bo,o=r===void 0||i&&r.dirty===!0;return o&&(r=n.call(this),this._cache.set(t,r)),r}_calculate(t,n,r){if(!this._attachedDepsListeners.get(t)){const i=n.map(o=>o+"Change.konva").join(Sg);this.on(i,()=>{this._clearCache(t)}),this._attachedDepsListeners.set(t,!0)}return this._getCache(t,r)}_getCanvasCache(){return this._cache.get(va)}_clearSelfAndDescendantCache(t){this._clearCache(t),t===bo&&this.fire("absoluteTransformChange")}clearCache(){if(this._cache.has(va)){const{scene:t,filter:n,hit:r}=this._cache.get(va);ke.Util.releaseCanvas(t,n,r),this._cache.delete(va)}return this._clearSelfAndDescendantCache(),this._requestDraw(),this}cache(t){var n=t||{},r={};(n.x===void 0||n.y===void 0||n.width===void 0||n.height===void 0)&&(r=this.getClientRect({skipTransform:!0,relativeTo:this.getParent()}));var i=Math.ceil(n.width||r.width),o=Math.ceil(n.height||r.height),s=n.pixelRatio,a=n.x===void 0?Math.floor(r.x):n.x,l=n.y===void 0?Math.floor(r.y):n.y,u=n.offset||0,c=n.drawBorder||!1,d=n.hitCanvasPixelRatio||1;if(!i||!o){ke.Util.error("Can not cache the node. Width or height of the node equals 0. Caching is skipped.");return}i+=u*2+1,o+=u*2+1,a-=u,l-=u;var f=new Dp.SceneCanvas({pixelRatio:s,width:i,height:o}),h=new Dp.SceneCanvas({pixelRatio:s,width:0,height:0,willReadFrequently:!0}),p=new Dp.HitCanvas({pixelRatio:d,width:i,height:o}),m=f.getContext(),S=p.getContext();return p.isCache=!0,f.isCache=!0,this._cache.delete(va),this._filterUpToDate=!1,n.imageSmoothingEnabled===!1&&(f.getContext()._context.imageSmoothingEnabled=!1,h.getContext()._context.imageSmoothingEnabled=!1),m.save(),S.save(),m.translate(-a,-l),S.translate(-a,-l),this._isUnderCache=!0,this._clearSelfAndDescendantCache(bg),this._clearSelfAndDescendantCache(ZE),this.drawScene(f,this),this.drawHit(p,this),this._isUnderCache=!1,m.restore(),S.restore(),c&&(m.save(),m.beginPath(),m.rect(0,0,i,o),m.closePath(),m.setAttr("strokeStyle","red"),m.setAttr("lineWidth",5),m.stroke(),m.restore()),this._cache.set(va,{scene:f,filter:h,hit:p,x:a,y:l}),this._requestDraw(),this}isCached(){return this._cache.has(va)}getClientRect(t){throw new Error('abstract "getClientRect" method call')}_transformedRect(t,n){var r=[{x:t.x,y:t.y},{x:t.x+t.width,y:t.y},{x:t.x+t.width,y:t.y+t.height},{x:t.x,y:t.y+t.height}],i,o,s,a,l=this.getAbsoluteTransform(n);return r.forEach(function(u){var c=l.point(u);i===void 0&&(i=s=c.x,o=a=c.y),i=Math.min(i,c.x),o=Math.min(o,c.y),s=Math.max(s,c.x),a=Math.max(a,c.y)}),{x:i,y:o,width:s-i,height:a-o}}_drawCachedSceneCanvas(t){t.save(),t._applyOpacity(this),t._applyGlobalCompositeOperation(this);const n=this._getCanvasCache();t.translate(n.x,n.y);var r=this._getCachedSceneCanvas(),i=r.pixelRatio;t.drawImage(r._canvas,0,0,r.width/i,r.height/i),t.restore()}_drawCachedHitCanvas(t){var n=this._getCanvasCache(),r=n.hit;t.save(),t.translate(n.x,n.y),t.drawImage(r._canvas,0,0,r.width/r.pixelRatio,r.height/r.pixelRatio),t.restore()}_getCachedSceneCanvas(){var t=this.filters(),n=this._getCanvasCache(),r=n.scene,i=n.filter,o=i.getContext(),s,a,l,u;if(t){if(!this._filterUpToDate){var c=r.pixelRatio;i.setSize(r.width/r.pixelRatio,r.height/r.pixelRatio);try{for(s=t.length,o.clear(),o.drawImage(r._canvas,0,0,r.getWidth()/c,r.getHeight()/c),a=o.getImageData(0,0,i.getWidth(),i.getHeight()),l=0;l{var n,r;if(!t)return this;for(n in t)n!==qce&&(r=t6+ke.Util._capitalize(n),ke.Util._isFunction(this[r])?this[r](t[n]):this._setAttr(n,t[n]))}),this}isListening(){return this._getCache(g2,this._isListening)}_isListening(t){if(!this.listening())return!1;const r=this.getParent();return r&&r!==t&&this!==t?r._isListening(t):!0}isVisible(){return this._getCache(m2,this._isVisible)}_isVisible(t){if(!this.visible())return!1;const r=this.getParent();return r&&r!==t&&this!==t?r._isVisible(t):!0}shouldDrawHit(t,n=!1){if(t)return this._isVisible(t)&&this._isListening(t);var r=this.getLayer(),i=!1;Br.DD._dragElements.forEach(s=>{s.dragStatus==="dragging"&&(s.node.nodeType==="Stage"||s.node.getLayer()===r)&&(i=!0)});var o=!n&&!ya.Konva.hitOnDragEnabled&&i;return this.isListening()&&this.isVisible()&&!o}show(){return this.visible(!0),this}hide(){return this.visible(!1),this}getZIndex(){return this.index||0}getAbsoluteZIndex(){var t=this.getDepth(),n=this,r=0,i,o,s,a;function l(u){for(i=[],o=u.length,s=0;s0&&i[0].getDepth()<=t&&l(i)}return n.nodeType!==Kce&&l(n.getStage().getChildren()),r}getDepth(){for(var t=0,n=this.parent;n;)t++,n=n.parent;return t}_batchTransformChanges(t){this._batchingTransformChange=!0,t(),this._batchingTransformChange=!1,this._needClearTransformCache&&(this._clearCache(ss),this._clearSelfAndDescendantCache(bo)),this._needClearTransformCache=!1}setPosition(t){return this._batchTransformChanges(()=>{this.x(t.x),this.y(t.y)}),this}getPosition(){return{x:this.x(),y:this.y()}}getRelativePointerPosition(){if(!this.getStage())return null;var t=this.getStage().getPointerPosition();if(!t)return null;var n=this.getAbsoluteTransform().copy();return n.invert(),n.point(t)}getAbsolutePosition(t){let n=!1,r=this.parent;for(;r;){if(r.isCached()){n=!0;break}r=r.parent}n&&!t&&(t=!0);var i=this.getAbsoluteTransform(t).getMatrix(),o=new ke.Transform,s=this.offset();return o.m=i.slice(),o.translate(s.x,s.y),o.getTranslation()}setAbsolutePosition(t){var n=this._clearTransform();this.attrs.x=n.x,this.attrs.y=n.y,delete n.x,delete n.y,this._clearCache(ss);var r=this._getAbsoluteTransform().copy();return r.invert(),r.translate(t.x,t.y),t={x:this.attrs.x+r.getTranslation().x,y:this.attrs.y+r.getTranslation().y},this._setTransform(n),this.setPosition({x:t.x,y:t.y}),this._clearCache(ss),this._clearSelfAndDescendantCache(bo),this}_setTransform(t){var n;for(n in t)this.attrs[n]=t[n]}_clearTransform(){var t={x:this.x(),y:this.y(),rotation:this.rotation(),scaleX:this.scaleX(),scaleY:this.scaleY(),offsetX:this.offsetX(),offsetY:this.offsetY(),skewX:this.skewX(),skewY:this.skewY()};return this.attrs.x=0,this.attrs.y=0,this.attrs.rotation=0,this.attrs.scaleX=1,this.attrs.scaleY=1,this.attrs.offsetX=0,this.attrs.offsetY=0,this.attrs.skewX=0,this.attrs.skewY=0,t}move(t){var n=t.x,r=t.y,i=this.x(),o=this.y();return n!==void 0&&(i+=n),r!==void 0&&(o+=r),this.setPosition({x:i,y:o}),this}_eachAncestorReverse(t,n){var r=[],i=this.getParent(),o,s;if(!(n&&n._id===this._id)){for(r.unshift(this);i&&(!n||i._id!==n._id);)r.unshift(i),i=i.parent;for(o=r.length,s=0;s0?(this.parent.children.splice(t,1),this.parent.children.splice(t-1,0,this),this.parent._setChildrenIndices(),!0):!1}moveToBottom(){if(!this.parent)return ke.Util.warn("Node has no parent. moveToBottom function is ignored."),!1;var t=this.index;return t>0?(this.parent.children.splice(t,1),this.parent.children.unshift(this),this.parent._setChildrenIndices(),!0):!1}setZIndex(t){if(!this.parent)return ke.Util.warn("Node has no parent. zIndex parameter is ignored."),this;(t<0||t>=this.parent.children.length)&&ke.Util.warn("Unexpected value "+t+" for zIndex property. zIndex is just index of a node in children of its parent. Expected value is from 0 to "+(this.parent.children.length-1)+".");var n=this.index;return this.parent.children.splice(n,1),this.parent.children.splice(t,0,this),this.parent._setChildrenIndices(),this}getAbsoluteOpacity(){return this._getCache(bg,this._getAbsoluteOpacity)}_getAbsoluteOpacity(){var t=this.opacity(),n=this.getParent();return n&&!n._isUnderCache&&(t*=n.getAbsoluteOpacity()),t}moveTo(t){return this.getParent()!==t&&(this._remove(),t.add(this)),this}toObject(){var t={},n=this.getAttrs(),r,i,o,s,a;t.attrs={};for(r in n)i=n[r],a=ke.Util.isObject(i)&&!ke.Util._isPlainObject(i)&&!ke.Util._isArray(i),!a&&(o=typeof this[r]=="function"&&this[r],delete n[r],s=o?o.call(this):null,n[r]=i,s!==i&&(t.attrs[r]=i));return t.className=this.getClassName(),ke.Util._prepareToStringify(t)}toJSON(){return JSON.stringify(this.toObject())}getParent(){return this.parent}findAncestors(t,n,r){var i=[];n&&this._isMatch(t)&&i.push(this);for(var o=this.parent;o;){if(o===r)return i;o._isMatch(t)&&i.push(o),o=o.parent}return i}isAncestorOf(t){return!1}findAncestor(t,n,r){return this.findAncestors(t,n,r)[0]}_isMatch(t){if(!t)return!1;if(typeof t=="function")return t(this);var n=t.replace(/ /g,"").split(","),r=n.length,i,o;for(i=0;i{try{const i=t==null?void 0:t.callback;i&&delete t.callback,ke.Util._urlToImage(this.toDataURL(t),function(o){n(o),i==null||i(o)})}catch(i){r(i)}})}toBlob(t){return new Promise((n,r)=>{try{const i=t==null?void 0:t.callback;i&&delete t.callback,this.toCanvas(t).toBlob(o=>{n(o),i==null||i(o)})}catch(i){r(i)}})}setSize(t){return this.width(t.width),this.height(t.height),this}getSize(){return{width:this.width(),height:this.height()}}getClassName(){return this.className||this.nodeType}getType(){return this.nodeType}getDragDistance(){return this.attrs.dragDistance!==void 0?this.attrs.dragDistance:this.parent?this.parent.getDragDistance():ya.Konva.dragDistance}_off(t,n,r){var i=this.eventListeners[t],o,s,a;for(o=0;o=0;if(r&&!this.isDragging()){var i=!1;Br.DD._dragElements.forEach(o=>{this.isAncestorOf(o.node)&&(i=!0)}),i||this._createDragElement(t)}})}_dragChange(){if(this.attrs.draggable)this._listenDrag();else{this._dragCleanup();var t=this.getStage();if(!t)return;const n=Br.DD._dragElements.get(this._id),r=n&&n.dragStatus==="dragging",i=n&&n.dragStatus==="ready";r?this.stopDrag():i&&Br.DD._dragElements.delete(this._id)}}_dragCleanup(){this.off("mousedown.konva"),this.off("touchstart.konva")}isClientRectOnScreen(t={x:0,y:0}){const n=this.getStage();if(!n)return!1;const r={x:-t.x,y:-t.y,width:n.width()+2*t.x,height:n.height()+2*t.y};return ke.Util.haveIntersection(r,this.getClientRect())}static create(t,n){return ke.Util._isString(t)&&(t=JSON.parse(t)),this._createNode(t,n)}static _createNode(t,n){var r=y2.prototype.getClassName.call(t),i=t.children,o,s,a;n&&(t.attrs.container=n),ya.Konva[r]||(ke.Util.warn('Can not find a node with class name "'+r+'". Fallback to "Shape".'),r="Shape");const l=ya.Konva[r];if(o=new l(t.attrs),i)for(s=i.length,a=0;a0}removeChildren(){return this.getChildren().forEach(t=>{t.parent=null,t.index=0,t.remove()}),this.children=[],this._requestDraw(),this}destroyChildren(){return this.getChildren().forEach(t=>{t.parent=null,t.index=0,t.destroy()}),this.children=[],this._requestDraw(),this}add(...t){if(t.length===0)return this;if(t.length>1){for(var n=0;n0?n[0]:void 0}_generalFind(t,n){var r=[];return this._descendants(i=>{const o=i._isMatch(t);return o&&r.push(i),!!(o&&n)}),r}_descendants(t){let n=!1;const r=this.getChildren();for(const i of r){if(n=t(i),n)return!0;if(i.hasChildren()&&(n=i._descendants(t),n))return!0}return!1}toObject(){var t=Ub.Node.prototype.toObject.call(this);return t.children=[],this.getChildren().forEach(n=>{t.children.push(n.toObject())}),t}isAncestorOf(t){for(var n=t.getParent();n;){if(n._id===this._id)return!0;n=n.getParent()}return!1}clone(t){var n=Ub.Node.prototype.clone.call(this,t);return this.getChildren().forEach(function(r){n.add(r.clone())}),n}getAllIntersections(t){var n=[];return this.find("Shape").forEach(function(r){r.isVisible()&&r.intersects(t)&&n.push(r)}),n}_clearSelfAndDescendantCache(t){var n;super._clearSelfAndDescendantCache(t),!this.isCached()&&((n=this.children)===null||n===void 0||n.forEach(function(r){r._clearSelfAndDescendantCache(t)}))}_setChildrenIndices(){var t;(t=this.children)===null||t===void 0||t.forEach(function(n,r){n.index=r}),this._requestDraw()}drawScene(t,n){var r=this.getLayer(),i=t||r&&r.getCanvas(),o=i&&i.getContext(),s=this._getCanvasCache(),a=s&&s.scene,l=i&&i.isCache;if(!this.isVisible()&&!l)return this;if(a){o.save();var u=this.getAbsoluteTransform(n).getMatrix();o.transform(u[0],u[1],u[2],u[3],u[4],u[5]),this._drawCachedSceneCanvas(o),o.restore()}else this._drawChildren("drawScene",i,n);return this}drawHit(t,n){if(!this.shouldDrawHit(n))return this;var r=this.getLayer(),i=t||r&&r.hitCanvas,o=i&&i.getContext(),s=this._getCanvasCache(),a=s&&s.hit;if(a){o.save();var l=this.getAbsoluteTransform(n).getMatrix();o.transform(l[0],l[1],l[2],l[3],l[4],l[5]),this._drawCachedHitCanvas(o),o.restore()}else this._drawChildren("drawHit",i,n);return this}_drawChildren(t,n,r){var i,o=n&&n.getContext(),s=this.clipWidth(),a=this.clipHeight(),l=this.clipFunc(),u=s&&a||l;const c=r===this;if(u){o.save();var d=this.getAbsoluteTransform(r),f=d.getMatrix();o.transform(f[0],f[1],f[2],f[3],f[4],f[5]),o.beginPath();let S;if(l)S=l.call(this,o,this);else{var h=this.clipX(),p=this.clipY();o.rect(h,p,s,a)}o.clip.apply(o,S),f=d.copy().invert().getMatrix(),o.transform(f[0],f[1],f[2],f[3],f[4],f[5])}var m=!c&&this.globalCompositeOperation()!=="source-over"&&t==="drawScene";m&&(o.save(),o._applyGlobalCompositeOperation(this)),(i=this.children)===null||i===void 0||i.forEach(function(S){S[t](n,r)}),m&&o.restore(),u&&o.restore()}getClientRect(t){var n;t=t||{};var r=t.skipTransform,i=t.relativeTo,o,s,a,l,u={x:1/0,y:1/0,width:0,height:0},c=this;(n=this.children)===null||n===void 0||n.forEach(function(m){if(m.visible()){var S=m.getClientRect({relativeTo:c,skipShadow:t.skipShadow,skipStroke:t.skipStroke});S.width===0&&S.height===0||(o===void 0?(o=S.x,s=S.y,a=S.x+S.width,l=S.y+S.height):(o=Math.min(o,S.x),s=Math.min(s,S.y),a=Math.max(a,S.x+S.width),l=Math.max(l,S.y+S.height)))}});for(var d=this.find("Shape"),f=!1,h=0;hY.indexOf("pointer")>=0?"pointer":Y.indexOf("touch")>=0?"touch":"mouse",U=Y=>{const B=j(Y);if(B==="pointer")return i.Konva.pointerEventsEnabled&&L.pointer;if(B==="touch")return L.touch;if(B==="mouse")return L.mouse};function G(Y={}){return(Y.clipFunc||Y.clipWidth||Y.clipHeight)&&t.Util.warn("Stage does not support clipping. Please use clip for Layers or Groups."),Y}const W="Pointer position is missing and not registered by the stage. Looks like it is outside of the stage container. You can set it manually from event: stage.setPointersPositions(event);";e.stages=[];class X extends r.Container{constructor(B){super(G(B)),this._pointerPositions=[],this._changedPointerPositions=[],this._buildDOM(),this._bindContentEvents(),e.stages.push(this),this.on("widthChange.konva heightChange.konva",this._resizeDOM),this.on("visibleChange.konva",this._checkVisibility),this.on("clipWidthChange.konva clipHeightChange.konva clipFuncChange.konva",()=>{G(this.attrs)}),this._checkVisibility()}_validateAdd(B){const H=B.getType()==="Layer",Q=B.getType()==="FastLayer";H||Q||t.Util.throw("You may only add layers to the stage.")}_checkVisibility(){if(!this.content)return;const B=this.visible()?"":"none";this.content.style.display=B}setContainer(B){if(typeof B===c){if(B.charAt(0)==="."){var H=B.slice(1);B=document.getElementsByClassName(H)[0]}else{var Q;B.charAt(0)!=="#"?Q=B:Q=B.slice(1),B=document.getElementById(Q)}if(!B)throw"Can not find container in document with id "+Q}return this._setAttr("container",B),this.content&&(this.content.parentElement&&this.content.parentElement.removeChild(this.content),B.appendChild(this.content)),this}shouldDrawHit(){return!0}clear(){var B=this.children,H=B.length,Q;for(Q=0;Q-1&&e.stages.splice(H,1),t.Util.releaseCanvas(this.bufferCanvas._canvas,this.bufferHitCanvas._canvas),this}getPointerPosition(){const B=this._pointerPositions[0]||this._changedPointerPositions[0];return B?{x:B.x,y:B.y}:(t.Util.warn(W),null)}_getPointerById(B){return this._pointerPositions.find(H=>H.id===B)}getPointersPositions(){return this._pointerPositions}getStage(){return this}getContent(){return this.content}_toKonvaCanvas(B){B=B||{},B.x=B.x||0,B.y=B.y||0,B.width=B.width||this.width(),B.height=B.height||this.height();var H=new o.SceneCanvas({width:B.width,height:B.height,pixelRatio:B.pixelRatio||1}),Q=H.getContext()._context,J=this.children;return(B.x||B.y)&&Q.translate(-1*B.x,-1*B.y),J.forEach(function(ne){if(ne.isVisible()){var te=ne._toKonvaCanvas(B);Q.drawImage(te._canvas,B.x,B.y,te.getWidth()/te.getPixelRatio(),te.getHeight()/te.getPixelRatio())}}),H}getIntersection(B){if(!B)return null;var H=this.children,Q=H.length,J=Q-1,ne;for(ne=J;ne>=0;ne--){const te=H[ne].getIntersection(B);if(te)return te}return null}_resizeDOM(){var B=this.width(),H=this.height();this.content&&(this.content.style.width=B+d,this.content.style.height=H+d),this.bufferCanvas.setSize(B,H),this.bufferHitCanvas.setSize(B,H),this.children.forEach(Q=>{Q.setSize({width:B,height:H}),Q.draw()})}add(B,...H){if(arguments.length>1){for(var Q=0;QO&&t.Util.warn("The stage has "+J+" layers. Recommended maximum number of layers is 3-5. Adding more layers into the stage may drop the performance. Rethink your tree structure, you can use Konva.Group."),B.setSize({width:this.width(),height:this.height()}),B.draw(),i.Konva.isBrowser&&this.content.appendChild(B.canvas._canvas),this}getParent(){return null}getLayer(){return null}hasPointerCapture(B){return l.hasPointerCapture(B,this)}setPointerCapture(B){l.setPointerCapture(B,this)}releaseCapture(B){l.releaseCapture(B,this)}getLayers(){return this.children}_bindContentEvents(){i.Konva.isBrowser&&D.forEach(([B,H])=>{this.content.addEventListener(B,Q=>{this[H](Q)},{passive:!1})})}_pointerenter(B){this.setPointersPositions(B);const H=U(B.type);this._fire(H.pointerenter,{evt:B,target:this,currentTarget:this})}_pointerover(B){this.setPointersPositions(B);const H=U(B.type);this._fire(H.pointerover,{evt:B,target:this,currentTarget:this})}_getTargetShape(B){let H=this[B+"targetShape"];return H&&!H.getStage()&&(H=null),H}_pointerleave(B){const H=U(B.type),Q=j(B.type);if(H){this.setPointersPositions(B);var J=this._getTargetShape(Q),ne=!s.DD.isDragging||i.Konva.hitOnDragEnabled;J&&ne?(J._fireAndBubble(H.pointerout,{evt:B}),J._fireAndBubble(H.pointerleave,{evt:B}),this._fire(H.pointerleave,{evt:B,target:this,currentTarget:this}),this[Q+"targetShape"]=null):ne&&(this._fire(H.pointerleave,{evt:B,target:this,currentTarget:this}),this._fire(H.pointerout,{evt:B,target:this,currentTarget:this})),this.pointerPos=void 0,this._pointerPositions=[]}}_pointerdown(B){const H=U(B.type),Q=j(B.type);if(H){this.setPointersPositions(B);var J=!1;this._changedPointerPositions.forEach(ne=>{var te=this.getIntersection(ne);if(s.DD.justDragged=!1,i.Konva["_"+Q+"ListenClick"]=!0,!(te&&te.isListening()))return;i.Konva.capturePointerEventsEnabled&&te.setPointerCapture(ne.id),this[Q+"ClickStartShape"]=te,te._fireAndBubble(H.pointerdown,{evt:B,pointerId:ne.id}),J=!0;const ve=B.type.indexOf("touch")>=0;te.preventDefault()&&B.cancelable&&ve&&B.preventDefault()}),J||this._fire(H.pointerdown,{evt:B,target:this,currentTarget:this,pointerId:this._pointerPositions[0].id})}}_pointermove(B){const H=U(B.type),Q=j(B.type);if(!H)return;s.DD.isDragging&&s.DD.node.preventDefault()&&B.cancelable&&B.preventDefault(),this.setPointersPositions(B);var J=!s.DD.isDragging||i.Konva.hitOnDragEnabled;if(!J)return;var ne={};let te=!1;var xe=this._getTargetShape(Q);this._changedPointerPositions.forEach(ve=>{const ce=l.getCapturedShape(ve.id)||this.getIntersection(ve),Ne=ve.id,se={evt:B,pointerId:Ne};var gt=xe!==ce;if(gt&&xe&&(xe._fireAndBubble(H.pointerout,Object.assign({},se),ce),xe._fireAndBubble(H.pointerleave,Object.assign({},se),ce)),ce){if(ne[ce._id])return;ne[ce._id]=!0}ce&&ce.isListening()?(te=!0,gt&&(ce._fireAndBubble(H.pointerover,Object.assign({},se),xe),ce._fireAndBubble(H.pointerenter,Object.assign({},se),xe),this[Q+"targetShape"]=ce),ce._fireAndBubble(H.pointermove,Object.assign({},se))):xe&&(this._fire(H.pointerover,{evt:B,target:this,currentTarget:this,pointerId:Ne}),this[Q+"targetShape"]=null)}),te||this._fire(H.pointermove,{evt:B,target:this,currentTarget:this,pointerId:this._changedPointerPositions[0].id})}_pointerup(B){const H=U(B.type),Q=j(B.type);if(!H)return;this.setPointersPositions(B);const J=this[Q+"ClickStartShape"],ne=this[Q+"ClickEndShape"];var te={};let xe=!1;this._changedPointerPositions.forEach(ve=>{const ce=l.getCapturedShape(ve.id)||this.getIntersection(ve);if(ce){if(ce.releaseCapture(ve.id),te[ce._id])return;te[ce._id]=!0}const Ne=ve.id,se={evt:B,pointerId:Ne};let gt=!1;i.Konva["_"+Q+"InDblClickWindow"]?(gt=!0,clearTimeout(this[Q+"DblTimeout"])):s.DD.justDragged||(i.Konva["_"+Q+"InDblClickWindow"]=!0,clearTimeout(this[Q+"DblTimeout"])),this[Q+"DblTimeout"]=setTimeout(function(){i.Konva["_"+Q+"InDblClickWindow"]=!1},i.Konva.dblClickWindow),ce&&ce.isListening()?(xe=!0,this[Q+"ClickEndShape"]=ce,ce._fireAndBubble(H.pointerup,Object.assign({},se)),i.Konva["_"+Q+"ListenClick"]&&J&&J===ce&&(ce._fireAndBubble(H.pointerclick,Object.assign({},se)),gt&&ne&&ne===ce&&ce._fireAndBubble(H.pointerdblclick,Object.assign({},se)))):(this[Q+"ClickEndShape"]=null,i.Konva["_"+Q+"ListenClick"]&&this._fire(H.pointerclick,{evt:B,target:this,currentTarget:this,pointerId:Ne}),gt&&this._fire(H.pointerdblclick,{evt:B,target:this,currentTarget:this,pointerId:Ne}))}),xe||this._fire(H.pointerup,{evt:B,target:this,currentTarget:this,pointerId:this._changedPointerPositions[0].id}),i.Konva["_"+Q+"ListenClick"]=!1,B.cancelable&&Q!=="touch"&&B.preventDefault()}_contextmenu(B){this.setPointersPositions(B);var H=this.getIntersection(this.getPointerPosition());H&&H.isListening()?H._fireAndBubble($,{evt:B}):this._fire($,{evt:B,target:this,currentTarget:this})}_wheel(B){this.setPointersPositions(B);var H=this.getIntersection(this.getPointerPosition());H&&H.isListening()?H._fireAndBubble(N,{evt:B}):this._fire(N,{evt:B,target:this,currentTarget:this})}_pointercancel(B){this.setPointersPositions(B);const H=l.getCapturedShape(B.pointerId)||this.getIntersection(this.getPointerPosition());H&&H._fireAndBubble(_,l.createEvent(B)),l.releaseCapture(B.pointerId)}_lostpointercapture(B){l.releaseCapture(B.pointerId)}setPointersPositions(B){var H=this._getContentPosition(),Q=null,J=null;B=B||window.event,B.touches!==void 0?(this._pointerPositions=[],this._changedPointerPositions=[],Array.prototype.forEach.call(B.touches,ne=>{this._pointerPositions.push({id:ne.identifier,x:(ne.clientX-H.left)/H.scaleX,y:(ne.clientY-H.top)/H.scaleY})}),Array.prototype.forEach.call(B.changedTouches||B.touches,ne=>{this._changedPointerPositions.push({id:ne.identifier,x:(ne.clientX-H.left)/H.scaleX,y:(ne.clientY-H.top)/H.scaleY})})):(Q=(B.clientX-H.left)/H.scaleX,J=(B.clientY-H.top)/H.scaleY,this.pointerPos={x:Q,y:J},this._pointerPositions=[{x:Q,y:J,id:t.Util._getFirstPointerId(B)}],this._changedPointerPositions=[{x:Q,y:J,id:t.Util._getFirstPointerId(B)}])}_setPointerPosition(B){t.Util.warn('Method _setPointerPosition is deprecated. Use "stage.setPointersPositions(event)" instead.'),this.setPointersPositions(B)}_getContentPosition(){if(!this.content||!this.content.getBoundingClientRect)return{top:0,left:0,scaleX:1,scaleY:1};var B=this.content.getBoundingClientRect();return{top:B.top,left:B.left,scaleX:B.width/this.content.clientWidth||1,scaleY:B.height/this.content.clientHeight||1}}_buildDOM(){if(this.bufferCanvas=new o.SceneCanvas({width:this.width(),height:this.height()}),this.bufferHitCanvas=new o.HitCanvas({pixelRatio:1,width:this.width(),height:this.height()}),!!i.Konva.isBrowser){var B=this.container();if(!B)throw"Stage has no container. A container is required.";B.innerHTML="",this.content=document.createElement("div"),this.content.style.position="relative",this.content.style.userSelect="none",this.content.className="konvajs-content",this.content.setAttribute("role","presentation"),B.appendChild(this.content),this._resizeDOM()}}cache(){return t.Util.warn("Cache function is not allowed for stage. You may use cache only for layers, groups and shapes."),this}clearCache(){return this}batchDraw(){return this.getChildren().forEach(function(B){B.batchDraw()}),this}}e.Stage=X,X.prototype.nodeType=u,(0,a._registerNode)(X),n.Factory.addGetterSetter(X,"container")})(uN);var kh={},sn={};(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.Shape=e.shapes=void 0;const t=Pe,n=Ot,r=Te,i=wt,o=de,s=Pe,a=Tr;var l="hasShadow",u="shadowRGBA",c="patternImage",d="linearGradient",f="radialGradient";let h;function p(){return h||(h=n.Util.createCanvasElement().getContext("2d"),h)}e.shapes={};function m(P){const E=this.attrs.fillRule;E?P.fill(E):P.fill()}function S(P){P.stroke()}function v(P){P.fill()}function y(P){P.stroke()}function g(){this._clearCache(l)}function b(){this._clearCache(u)}function _(){this._clearCache(c)}function w(){this._clearCache(d)}function x(){this._clearCache(f)}class T extends i.Node{constructor(E){super(E);let A;for(;A=n.Util.getRandomColor(),!(A&&!(A in e.shapes)););this.colorKey=A,e.shapes[A]=this}getContext(){return n.Util.warn("shape.getContext() method is deprecated. Please do not use it."),this.getLayer().getContext()}getCanvas(){return n.Util.warn("shape.getCanvas() method is deprecated. Please do not use it."),this.getLayer().getCanvas()}getSceneFunc(){return this.attrs.sceneFunc||this._sceneFunc}getHitFunc(){return this.attrs.hitFunc||this._hitFunc}hasShadow(){return this._getCache(l,this._hasShadow)}_hasShadow(){return this.shadowEnabled()&&this.shadowOpacity()!==0&&!!(this.shadowColor()||this.shadowBlur()||this.shadowOffsetX()||this.shadowOffsetY())}_getFillPattern(){return this._getCache(c,this.__getFillPattern)}__getFillPattern(){if(this.fillPatternImage()){var E=p();const A=E.createPattern(this.fillPatternImage(),this.fillPatternRepeat()||"repeat");if(A&&A.setTransform){const $=new n.Transform;$.translate(this.fillPatternX(),this.fillPatternY()),$.rotate(t.Konva.getAngle(this.fillPatternRotation())),$.scale(this.fillPatternScaleX(),this.fillPatternScaleY()),$.translate(-1*this.fillPatternOffsetX(),-1*this.fillPatternOffsetY());const I=$.getMatrix(),C=typeof DOMMatrix>"u"?{a:I[0],b:I[1],c:I[2],d:I[3],e:I[4],f:I[5]}:new DOMMatrix(I);A.setTransform(C)}return A}}_getLinearGradient(){return this._getCache(d,this.__getLinearGradient)}__getLinearGradient(){var E=this.fillLinearGradientColorStops();if(E){for(var A=p(),$=this.fillLinearGradientStartPoint(),I=this.fillLinearGradientEndPoint(),C=A.createLinearGradient($.x,$.y,I.x,I.y),R=0;Rthis.fillEnabled()&&!!(this.fill()||this.fillPatternImage()||this.fillLinearGradientColorStops()||this.fillRadialGradientColorStops()))}hasStroke(){return this._calculate("hasStroke",["strokeEnabled","strokeWidth","stroke","strokeLinearGradientColorStops"],()=>this.strokeEnabled()&&this.strokeWidth()&&!!(this.stroke()||this.strokeLinearGradientColorStops()))}hasHitStroke(){const E=this.hitStrokeWidth();return E==="auto"?this.hasStroke():this.strokeEnabled()&&!!E}intersects(E){var A=this.getStage(),$=A.bufferHitCanvas,I;return $.getContext().clear(),this.drawHit($,null,!0),I=$.context.getImageData(Math.round(E.x),Math.round(E.y),1,1).data,I[3]>0}destroy(){return i.Node.prototype.destroy.call(this),delete e.shapes[this.colorKey],delete this.colorKey,this}_useBufferCanvas(E){var A;if(!this.getStage()||!((A=this.attrs.perfectDrawEnabled)!==null&&A!==void 0?A:!0))return!1;const I=E||this.hasFill(),C=this.hasStroke(),R=this.getAbsoluteOpacity()!==1;if(I&&C&&R)return!0;const M=this.hasShadow(),N=this.shadowForStrokeEnabled();return!!(I&&C&&M&&N)}setStrokeHitEnabled(E){n.Util.warn("strokeHitEnabled property is deprecated. Please use hitStrokeWidth instead."),E?this.hitStrokeWidth("auto"):this.hitStrokeWidth(0)}getStrokeHitEnabled(){return this.hitStrokeWidth()!==0}getSelfRect(){var E=this.size();return{x:this._centroid?-E.width/2:0,y:this._centroid?-E.height/2:0,width:E.width,height:E.height}}getClientRect(E={}){const A=E.skipTransform,$=E.relativeTo,I=this.getSelfRect(),R=!E.skipStroke&&this.hasStroke()&&this.strokeWidth()||0,M=I.width+R,N=I.height+R,O=!E.skipShadow&&this.hasShadow(),D=O?this.shadowOffsetX():0,L=O?this.shadowOffsetY():0,j=M+Math.abs(D),U=N+Math.abs(L),G=O&&this.shadowBlur()||0,W=j+G*2,X=U+G*2,Y={width:W,height:X,x:-(R/2+G)+Math.min(D,0)+I.x,y:-(R/2+G)+Math.min(L,0)+I.y};return A?Y:this._transformedRect(Y,$)}drawScene(E,A){var $=this.getLayer(),I=E||$.getCanvas(),C=I.getContext(),R=this._getCanvasCache(),M=this.getSceneFunc(),N=this.hasShadow(),O,D,L,j=I.isCache,U=A===this;if(!this.isVisible()&&!U)return this;if(R){C.save();var G=this.getAbsoluteTransform(A).getMatrix();return C.transform(G[0],G[1],G[2],G[3],G[4],G[5]),this._drawCachedSceneCanvas(C),C.restore(),this}if(!M)return this;if(C.save(),this._useBufferCanvas()&&!j){O=this.getStage(),D=O.bufferCanvas,L=D.getContext(),L.clear(),L.save(),L._applyLineJoin(this);var W=this.getAbsoluteTransform(A).getMatrix();L.transform(W[0],W[1],W[2],W[3],W[4],W[5]),M.call(this,L,this),L.restore();var X=D.pixelRatio;N&&C._applyShadow(this),C._applyOpacity(this),C._applyGlobalCompositeOperation(this),C.drawImage(D._canvas,0,0,D.width/X,D.height/X)}else{if(C._applyLineJoin(this),!U){var W=this.getAbsoluteTransform(A).getMatrix();C.transform(W[0],W[1],W[2],W[3],W[4],W[5]),C._applyOpacity(this),C._applyGlobalCompositeOperation(this)}N&&C._applyShadow(this),M.call(this,C,this)}return C.restore(),this}drawHit(E,A,$=!1){if(!this.shouldDrawHit(A,$))return this;var I=this.getLayer(),C=E||I.hitCanvas,R=C&&C.getContext(),M=this.hitFunc()||this.sceneFunc(),N=this._getCanvasCache(),O=N&&N.hit;if(this.colorKey||n.Util.warn("Looks like your canvas has a destroyed shape in it. Do not reuse shape after you destroyed it. If you want to reuse shape you should call remove() instead of destroy()"),O){R.save();var D=this.getAbsoluteTransform(A).getMatrix();return R.transform(D[0],D[1],D[2],D[3],D[4],D[5]),this._drawCachedHitCanvas(R),R.restore(),this}if(!M)return this;if(R.save(),R._applyLineJoin(this),!(this===A)){var j=this.getAbsoluteTransform(A).getMatrix();R.transform(j[0],j[1],j[2],j[3],j[4],j[5])}return M.call(this,R,this),R.restore(),this}drawHitFromCache(E=0){var A=this._getCanvasCache(),$=this._getCachedSceneCanvas(),I=A.hit,C=I.getContext(),R=I.getWidth(),M=I.getHeight(),N,O,D,L,j,U;C.clear(),C.drawImage($._canvas,0,0,R,M);try{for(N=C.getImageData(0,0,R,M),O=N.data,D=O.length,L=n.Util._hexToRgb(this.colorKey),j=0;jE?(O[j]=L.r,O[j+1]=L.g,O[j+2]=L.b,O[j+3]=255):O[j+3]=0;C.putImageData(N,0,0)}catch(G){n.Util.error("Unable to draw hit graph from cached scene canvas. "+G.message)}return this}hasPointerCapture(E){return a.hasPointerCapture(E,this)}setPointerCapture(E){a.setPointerCapture(E,this)}releaseCapture(E){a.releaseCapture(E,this)}}e.Shape=T,T.prototype._fillFunc=m,T.prototype._strokeFunc=S,T.prototype._fillFuncHit=v,T.prototype._strokeFuncHit=y,T.prototype._centroid=!1,T.prototype.nodeType="Shape",(0,s._registerNode)(T),T.prototype.eventListeners={},T.prototype.on.call(T.prototype,"shadowColorChange.konva shadowBlurChange.konva shadowOffsetChange.konva shadowOpacityChange.konva shadowEnabledChange.konva",g),T.prototype.on.call(T.prototype,"shadowColorChange.konva shadowOpacityChange.konva shadowEnabledChange.konva",b),T.prototype.on.call(T.prototype,"fillPriorityChange.konva fillPatternImageChange.konva fillPatternRepeatChange.konva fillPatternScaleXChange.konva fillPatternScaleYChange.konva fillPatternOffsetXChange.konva fillPatternOffsetYChange.konva fillPatternXChange.konva fillPatternYChange.konva fillPatternRotationChange.konva",_),T.prototype.on.call(T.prototype,"fillPriorityChange.konva fillLinearGradientColorStopsChange.konva fillLinearGradientStartPointXChange.konva fillLinearGradientStartPointYChange.konva fillLinearGradientEndPointXChange.konva fillLinearGradientEndPointYChange.konva",w),T.prototype.on.call(T.prototype,"fillPriorityChange.konva fillRadialGradientColorStopsChange.konva fillRadialGradientStartPointXChange.konva fillRadialGradientStartPointYChange.konva fillRadialGradientEndPointXChange.konva fillRadialGradientEndPointYChange.konva fillRadialGradientStartRadiusChange.konva fillRadialGradientEndRadiusChange.konva",x),r.Factory.addGetterSetter(T,"stroke",void 0,(0,o.getStringOrGradientValidator)()),r.Factory.addGetterSetter(T,"strokeWidth",2,(0,o.getNumberValidator)()),r.Factory.addGetterSetter(T,"fillAfterStrokeEnabled",!1),r.Factory.addGetterSetter(T,"hitStrokeWidth","auto",(0,o.getNumberOrAutoValidator)()),r.Factory.addGetterSetter(T,"strokeHitEnabled",!0,(0,o.getBooleanValidator)()),r.Factory.addGetterSetter(T,"perfectDrawEnabled",!0,(0,o.getBooleanValidator)()),r.Factory.addGetterSetter(T,"shadowForStrokeEnabled",!0,(0,o.getBooleanValidator)()),r.Factory.addGetterSetter(T,"lineJoin"),r.Factory.addGetterSetter(T,"lineCap"),r.Factory.addGetterSetter(T,"sceneFunc"),r.Factory.addGetterSetter(T,"hitFunc"),r.Factory.addGetterSetter(T,"dash"),r.Factory.addGetterSetter(T,"dashOffset",0,(0,o.getNumberValidator)()),r.Factory.addGetterSetter(T,"shadowColor",void 0,(0,o.getStringValidator)()),r.Factory.addGetterSetter(T,"shadowBlur",0,(0,o.getNumberValidator)()),r.Factory.addGetterSetter(T,"shadowOpacity",1,(0,o.getNumberValidator)()),r.Factory.addComponentsGetterSetter(T,"shadowOffset",["x","y"]),r.Factory.addGetterSetter(T,"shadowOffsetX",0,(0,o.getNumberValidator)()),r.Factory.addGetterSetter(T,"shadowOffsetY",0,(0,o.getNumberValidator)()),r.Factory.addGetterSetter(T,"fillPatternImage"),r.Factory.addGetterSetter(T,"fill",void 0,(0,o.getStringOrGradientValidator)()),r.Factory.addGetterSetter(T,"fillPatternX",0,(0,o.getNumberValidator)()),r.Factory.addGetterSetter(T,"fillPatternY",0,(0,o.getNumberValidator)()),r.Factory.addGetterSetter(T,"fillLinearGradientColorStops"),r.Factory.addGetterSetter(T,"strokeLinearGradientColorStops"),r.Factory.addGetterSetter(T,"fillRadialGradientStartRadius",0),r.Factory.addGetterSetter(T,"fillRadialGradientEndRadius",0),r.Factory.addGetterSetter(T,"fillRadialGradientColorStops"),r.Factory.addGetterSetter(T,"fillPatternRepeat","repeat"),r.Factory.addGetterSetter(T,"fillEnabled",!0),r.Factory.addGetterSetter(T,"strokeEnabled",!0),r.Factory.addGetterSetter(T,"shadowEnabled",!0),r.Factory.addGetterSetter(T,"dashEnabled",!0),r.Factory.addGetterSetter(T,"strokeScaleEnabled",!0),r.Factory.addGetterSetter(T,"fillPriority","color"),r.Factory.addComponentsGetterSetter(T,"fillPatternOffset",["x","y"]),r.Factory.addGetterSetter(T,"fillPatternOffsetX",0,(0,o.getNumberValidator)()),r.Factory.addGetterSetter(T,"fillPatternOffsetY",0,(0,o.getNumberValidator)()),r.Factory.addComponentsGetterSetter(T,"fillPatternScale",["x","y"]),r.Factory.addGetterSetter(T,"fillPatternScaleX",1,(0,o.getNumberValidator)()),r.Factory.addGetterSetter(T,"fillPatternScaleY",1,(0,o.getNumberValidator)()),r.Factory.addComponentsGetterSetter(T,"fillLinearGradientStartPoint",["x","y"]),r.Factory.addComponentsGetterSetter(T,"strokeLinearGradientStartPoint",["x","y"]),r.Factory.addGetterSetter(T,"fillLinearGradientStartPointX",0),r.Factory.addGetterSetter(T,"strokeLinearGradientStartPointX",0),r.Factory.addGetterSetter(T,"fillLinearGradientStartPointY",0),r.Factory.addGetterSetter(T,"strokeLinearGradientStartPointY",0),r.Factory.addComponentsGetterSetter(T,"fillLinearGradientEndPoint",["x","y"]),r.Factory.addComponentsGetterSetter(T,"strokeLinearGradientEndPoint",["x","y"]),r.Factory.addGetterSetter(T,"fillLinearGradientEndPointX",0),r.Factory.addGetterSetter(T,"strokeLinearGradientEndPointX",0),r.Factory.addGetterSetter(T,"fillLinearGradientEndPointY",0),r.Factory.addGetterSetter(T,"strokeLinearGradientEndPointY",0),r.Factory.addComponentsGetterSetter(T,"fillRadialGradientStartPoint",["x","y"]),r.Factory.addGetterSetter(T,"fillRadialGradientStartPointX",0),r.Factory.addGetterSetter(T,"fillRadialGradientStartPointY",0),r.Factory.addComponentsGetterSetter(T,"fillRadialGradientEndPoint",["x","y"]),r.Factory.addGetterSetter(T,"fillRadialGradientEndPointX",0),r.Factory.addGetterSetter(T,"fillRadialGradientEndPointY",0),r.Factory.addGetterSetter(T,"fillPatternRotation",0),r.Factory.addGetterSetter(T,"fillRule",void 0,(0,o.getStringValidator)()),r.Factory.backCompat(T,{dashArray:"dash",getDashArray:"getDash",setDashArray:"getDash",drawFunc:"sceneFunc",getDrawFunc:"getSceneFunc",setDrawFunc:"setSceneFunc",drawHitFunc:"hitFunc",getDrawHitFunc:"getHitFunc",setDrawHitFunc:"setHitFunc"})})(sn);Object.defineProperty(kh,"__esModule",{value:!0});kh.Layer=void 0;const go=Ot,Gb=gl,Ul=wt,wC=Te,i6=_i,tde=de,nde=sn,rde=Pe;var ide="#",ode="beforeDraw",sde="draw",fN=[{x:0,y:0},{x:-1,y:-1},{x:1,y:-1},{x:1,y:1},{x:-1,y:1}],ade=fN.length;class vc extends Gb.Container{constructor(t){super(t),this.canvas=new i6.SceneCanvas,this.hitCanvas=new i6.HitCanvas({pixelRatio:1}),this._waitingForDraw=!1,this.on("visibleChange.konva",this._checkVisibility),this._checkVisibility(),this.on("imageSmoothingEnabledChange.konva",this._setSmoothEnabled),this._setSmoothEnabled()}createPNGStream(){return this.canvas._canvas.createPNGStream()}getCanvas(){return this.canvas}getNativeCanvasElement(){return this.canvas._canvas}getHitCanvas(){return this.hitCanvas}getContext(){return this.getCanvas().getContext()}clear(t){return this.getContext().clear(t),this.getHitCanvas().getContext().clear(t),this}setZIndex(t){super.setZIndex(t);var n=this.getStage();return n&&n.content&&(n.content.removeChild(this.getNativeCanvasElement()),t