var Oe=Object.defineProperty;var xe=Object.getOwnPropertySymbols;var Me=Object.prototype.hasOwnProperty,Te=Object.prototype.propertyIsEnumerable;var we=(xt,K,c)=>K in xt?Oe(xt,K,{enumerable:!0,configurable:!0,writable:!0,value:c}):xt[K]=c,Ae=(xt,K)=>{for(var c in K||(K={}))Me.call(K,c)&&we(xt,c,K[c]);if(xe)for(var c of xe(K))Te.call(K,c)&&we(xt,c,K[c]);return xt};import{a7 as jt,h as Le,r as ve,i as Ie,I as ke,o as Fe,t as Re,k as me,l as Zt,m as Lt,x as pe,y as ge,z as Ne,X as be,W as ye,J as _e,b as Ge,n as Be,a8 as He,C as Jt,p as re,q as Ue}from"./vendor.14d7a511.js";import{S as Ye}from"./sortable.esm.31e56bbd.js";import{_ as Xe,u as Ve}from"./index.c04616ec.js";import We from"./index.c2008091.js";import ze from"./index.628a8ca7.js";var Pe={};(function(xt){(function(){typeof Math.sgn=="undefined"&&(Math.sgn=function(p){return p==0?0:p>0?1:-1});var K={subtract:function(p,E){return{x:p.x-E.x,y:p.y-E.y}},dotProduct:function(p,E){return p.x*E.x+p.y*E.y},square:function(p){return Math.sqrt(p.x*p.x+p.y*p.y)},scale:function(p,E){return{x:p.x*E,y:p.y*E}}},c=64,X=Math.pow(2,-c-1),Z=function(p,E){for(var B=[],U=tt(p,E),Y=E.length-1,n=2*Y-1,o=h(U,n,B,0),t=K.subtract(p,E[0]),g=K.square(t),m=0,F=0;F=c)return B[0]=(p[0].x+p[E].x)/2,1;if(a(p,E))return B[0]=i(p,E),1;break}}v(p,E,.5,Y,n),o=h(Y,E,g,U+1),t=h(n,E,m,U+1);for(var F=0;Frt?rt=lt:lt0?1:-1,t=null;Y1&&(U.location=1),U.location<0&&(U.location=0),P(p,U.location)},r=function(p,E,B,U){U=U==null?0:U;var Y=j(p,E,U),n=P(p,Y.location),o=Math.atan(-1/n),t=B/2*Math.sin(o),g=B/2*Math.cos(o);return[{x:Y.point.x+g,y:Y.point.y+t},{x:Y.point.x-g,y:Y.point.y-t}]},d=function(p,E,B,U,Y){var n=U-E,o=p-B,t=p*(E-U)+E*(B-p),g=u(Y),m=[n*g[0][0]+o*g[1][0],n*g[0][1]+o*g[1][1],n*g[0][2]+o*g[1][2],n*g[0][3]+o*g[1][3]+t],F=y.apply(null,m),I=[];if(F!=null)for(var V=0;V<3;V++){var G=F[V],W=Math.pow(G,2),at=Math.pow(G,3),st=[g[0][0]*at+g[0][1]*W+g[0][2]*G+g[0][3],g[1][0]*at+g[1][1]*W+g[1][2]*G+g[1][3]],it;B-p!=0?it=(st[0]-p)/(B-p):it=(st[1]-E)/(U-E),G>=0&&G<=1&&it>=0&&it<=1&&I.push(st)}return I},l=function(p,E,B,U,Y){var n=[];return n.push.apply(n,d(p,E,p+B,E,Y)),n.push.apply(n,d(p+B,E,p+B,E+U,Y)),n.push.apply(n,d(p+B,E+U,p,E+U,Y)),n.push.apply(n,d(p,E+U,p,E,Y)),n},_=function(p,E){var B=[];return B.push.apply(B,d(p.x,p.y,p.x+p.w,p.y,E)),B.push.apply(B,d(p.x+p.w,p.y,p.x+p.w,p.y+p.h,E)),B.push.apply(B,d(p.x+p.w,p.y+p.h,p.x,p.y+p.h,E)),B.push.apply(B,d(p.x,p.y+p.h,p.x,p.y,E)),B};function x(p,E){return[-p[0][E]+3*p[1][E]+-3*p[2][E]+p[3][E],3*p[0][E]-6*p[1][E]+3*p[2][E],-3*p[0][E]+3*p[1][E],p[0][E]]}function u(p){return[x(p,"x"),x(p,"y")]}function k(p){return p<0?-1:p>0?1:0}function y(p,E,B,U){var Y=E/p,n=B/p,o=U/p,t=(3*n-Math.pow(Y,2))/9,g=(9*Y*n-27*o-2*Math.pow(Y,3))/54,m=Math.pow(t,3)+Math.pow(g,2),F,I,V=[];if(m>=0)F=k(g+Math.sqrt(m))*Math.pow(Math.abs(g+Math.sqrt(m)),1/3),I=k(g-Math.sqrt(m))*Math.pow(Math.abs(g-Math.sqrt(m)),1/3),V[0]=-Y/3+(F+I),V[1]=-Y/3-(F+I)/2,V[2]=-Y/3-(F+I)/2,Math.abs(Math.sqrt(3)*(F-I)/2)!==0&&(V[1]=-1,V[2]=-1);else{var G=Math.acos(g/Math.sqrt(-Math.pow(t,3)));V[0]=2*Math.sqrt(-t)*Math.cos(G/3)-Y/3,V[1]=2*Math.sqrt(-t)*Math.cos((G+2*Math.PI)/3)-Y/3,V[2]=2*Math.sqrt(-t)*Math.cos((G+4*Math.PI)/3)-Y/3}for(var W=0;W<3;W++)(V[W]<0||V[W]>1)&&(V[W]=-1);return V}var w=this.jsBezier={distanceFromCurve:Z,gradientAtPoint:P,gradientAtPointAlongCurveFrom:A,nearestPointOnCurve:$,pointOnCurve:C,pointAlongCurveFrom:R,perpendicularToCurveAt:r,locationAlongCurveFrom:N,getLength:M,lineIntersection:d,boxIntersection:l,boundingBoxIntersection:_,version:"0.9.0"};xt.jsBezier=w}).call(typeof window!="undefined"?window:jt),function(){var K=this,c=K.Biltong={version:"0.4.0"};xt.Biltong=c;var X=function(a){return Object.prototype.toString.call(a)==="[object Array]"},Z=function(a,i,v){return a=X(a)?a:[a.x,a.y],i=X(i)?i:[i.x,i.y],v(a,i)},$=c.gradient=function(a,i){return Z(a,i,function(v,D){return D[0]==v[0]?D[1]>v[1]?1/0:-1/0:D[1]==v[1]?D[0]>v[0]?0:-0:(D[1]-v[1])/(D[0]-v[0])})};c.normal=function(a,i){return-1/$(a,i)},c.lineLength=function(a,i){return Z(a,i,function(v,D){return Math.sqrt(Math.pow(D[1]-v[1],2)+Math.pow(D[0]-v[0],2))})};var tt=c.quadrant=function(a,i){return Z(a,i,function(v,D){return D[0]>v[0]||D[0]==v[0]?D[1]>v[1]?2:1:D[1]>v[1]?3:4})};c.theta=function(a,i){return Z(a,i,function(v,D){var L=$(v,D),C=Math.atan(L),f=tt(v,D);return(f==4||f==3)&&(C+=Math.PI),C<0&&(C+=2*Math.PI),C})},c.intersects=function(a,i){var v=a.x,D=a.x+a.w,L=a.y,C=a.y+a.h,f=i.x,e=i.x+i.w,j=i.y,M=i.y+i.h;return v<=f&&f<=D&&L<=j&&j<=C||v<=e&&e<=D&&L<=j&&j<=C||v<=f&&f<=D&&L<=M&&M<=C||v<=e&&f<=D&&L<=M&&M<=C||f<=v&&v<=e&&j<=L&&L<=M||f<=D&&D<=e&&j<=L&&L<=M||f<=v&&v<=e&&j<=C&&C<=M||f<=D&&v<=e&&j<=C&&C<=M},c.encloses=function(a,i,v){var D=a.x,L=a.x+a.w,C=a.y,f=a.y+a.h,e=i.x,j=i.x+i.w,M=i.y,R=i.y+i.h,N=function(P,A,r,d){return v?P<=A&&r>=d:Pd};return N(D,e,L,j)&&N(C,M,f,R)};var h=[null,[1,-1],[1,1],[-1,1],[-1,-1]],T=[null,[-1,-1],[-1,1],[1,1],[1,-1]];c.pointOnLine=function(a,i,v){var D=$(a,i),L=tt(a,i),C=v>0?h[L]:T[L],f=Math.atan(D),e=Math.abs(v*Math.sin(f))*C[1],j=Math.abs(v*Math.cos(f))*C[0];return{x:a.x+j,y:a.y+e}},c.perpendicularLineTo=function(a,i,v){var D=$(a,i),L=Math.atan(-1/D),C=v/2*Math.sin(L),f=v/2*Math.cos(L);return[{x:i.x+f,y:i.y+C},{x:i.x-f,y:i.y-C}]}}.call(typeof window!="undefined"?window:jt),function(){function K(n,o,t,g,m,F,I,V){return new Touch({target:o,identifier:Y(),pageX:t,pageY:g,screenX:m,screenY:F,clientX:I||m,clientY:V||F})}function c(){var n=[];return Array.prototype.push.apply(n,arguments),n.item=function(o){return this[o]},n}function X(n,o,t,g,m,F,I,V){return c(K.apply(null,arguments))}var Z=this,$=function(n,o,t){t=t||n.parentNode;for(var g=t.querySelectorAll(o),m=0;m-1&&d<9,_=function(n,o){if(n==null)return[0,0];var t=w(n),g=y(t,0);return[g[o+"X"],g[o+"Y"]]},x=function(n){return n==null?[0,0]:l?[n.clientX+document.documentElement.scrollLeft,n.clientY+document.documentElement.scrollTop]:_(n,"page")},u=function(n){return _(n,"screen")},k=function(n){return _(n,"client")},y=function(n,o){return n.item?n.item(o):n[o]},w=function(n){return n.touches&&n.touches.length>0?n.touches:n.changedTouches&&n.changedTouches.length>0?n.changedTouches:n.targetTouches&&n.targetTouches.length>0?n.targetTouches:[n]},p=function(n){return w(n).length},E=function(n,o,t,g){if(v(n,o,t),g.__tauid=t.__tauid,n.addEventListener)n.addEventListener(o,t,!1);else if(n.attachEvent){var m=o+t.__tauid;n["e"+m]=t,n[m]=function(){n["e"+m]&&n["e"+m](window.event)},n.attachEvent("on"+o,n[m])}},B=function(n,o,t){t!=null&&U(n,function(){var g=tt(this);if(D(g,o,t),t.__tauid!=null){if(g.removeEventListener)g.removeEventListener(o,t,!1),P&&r[o]&&g.removeEventListener(r[o],t,!1);else if(this.detachEvent){var m=o+t.__tauid;g[m]&&g.detachEvent("on"+o,g[m]),g[m]=null,g["e"+m]=null}}t.__taTouchProxy&&B(n,t.__taTouchProxy[1],t.__taTouchProxy[0])})},U=function(n,o){if(n!=null){n=typeof Window!="undefined"&&typeof n.top!="unknown"&&n==n.top?[n]:typeof n!="string"&&n.tagName==null&&n.length!=null?n:typeof n=="string"?document.querySelectorAll(n):[n];for(var t=0;t-1&&i<9,C=i===9,f=function(n){if(L)return[n.clientX+document.documentElement.scrollLeft,n.clientY+document.documentElement.scrollTop];var o=j(n),t=e(o,0);return C?[t.pageX||t.clientX,t.pageY||t.clientY]:[t.pageX,t.pageY]},e=function(n,o){return n.item?n.item(o):n[o]},j=function(n){return n.touches&&n.touches.length>0?n.touches:n.changedTouches&&n.changedTouches.length>0?n.changedTouches:n.targetTouches&&n.targetTouches.length>0?n.targetTouches:[n]},M={delegatedDraggable:"katavorio-delegated-draggable",draggable:"katavorio-draggable",droppable:"katavorio-droppable",drag:"katavorio-drag",selected:"katavorio-drag-selected",active:"katavorio-drag-active",hover:"katavorio-drag-hover",noSelect:"katavorio-drag-no-select",ghostProxy:"katavorio-ghost-proxy",clonedDrag:"katavorio-clone-drag"},R="katavorio-drag-scope",N=["stop","start","drag","drop","over","out","beforeStart"],P=function(){},A=function(){return!0},r=function(n,o,t){for(var g=0;g0){var yt=a(J,this.el,et.target||et.srcElement);if(yt!=null&&(q=yt[0],gt=yt[1]),gt==null)return}else gt=this.el;if(rt)if(it=gt.cloneNode(!0),this.params.addClass(it,M.clonedDrag),it.setAttribute("id",null),it.style.position="absolute",this.params.parent!=null){var Et=this.params.getPosition(this.el);it.style.left=Et[0]+"px",it.style.top=Et[1]+"px",this.params.parent.appendChild(it)}else{var wt=tt(gt);it.style.left=wt.left+"px",it.style.top=wt.top+"px",document.body.appendChild(it)}else it=gt;st&&_(et),F=f(et),it&&it.parentNode&&(at=[it.parentNode.scrollLeft,it.parentNode.scrollTop]),this.params.bind(document,"mousemove",this.moveListener),this.params.bind(document,"mouseup",this.upListener),m.markSelection(this),m.markPosses(this),this.params.addClass(document.body,t.noSelect),Vt("beforeStart",{el:this.el,pos:I,e:et,drag:this})}else this.params.consumeFilteredEvents&&_(et)}}}.bind(this),this.moveListener=function(et){if(F){if(!W){var _t=Vt("start",{el:this.el,pos:I,e:et,drag:this});if(_t!==!1){if(!F)return;this.mark(!0),W=!0}else this.abort()}if(F){Xt.length=0;var Pt=f(et),yt=Pt[0]-F[0],Et=Pt[1]-F[1],wt=this.params.ignoreZoom?1:m.getZoom();it&&it.parentNode&&(yt+=it.parentNode.scrollLeft-at[0],Et+=it.parentNode.scrollTop-at[1]),yt/=wt,Et/=wt,this.moveBy(yt,Et,et),m.updateSelection(yt,Et,this),m.updatePosses(yt,Et,this)}}}.bind(this),this.upListener=function(et){F&&(F=null,this.params.unbind(document,"mousemove",this.moveListener),this.params.unbind(document,"mouseup",this.upListener),this.params.removeClass(document.body,t.noSelect),this.unmark(et),m.unmarkSelection(this,et),m.unmarkPosses(this,et),this.stop(et),m.notifyPosseDragStop(this,et),W=!1,Xt.length=0,rt?(it&&it.parentNode&&it.parentNode.removeChild(it),it=null):Ut&&Ut(it,this.params.getPosition(it))===!0&&(this.params.setPosition(it,I),Vt("revert",it)))}.bind(this),this.getFilters=function(){return Yt},this.abort=function(){F!=null&&this.upListener()},this.getDragElement=function(et){return et?gt||this.el:it||this.el};var Tt={start:[],drag:[],stop:[],over:[],out:[],beforeStart:[],revert:[]};o.events.start&&Tt.start.push(o.events.start),o.events.beforeStart&&Tt.beforeStart.push(o.events.beforeStart),o.events.stop&&Tt.stop.push(o.events.stop),o.events.drag&&Tt.drag.push(o.events.drag),o.events.revert&&Tt.revert.push(o.events.revert),this.on=function(et,_t){Tt[et]&&Tt[et].push(_t)},this.off=function(et,_t){if(Tt[et]){for(var Pt=[],yt=0;yt0)for(var wt=0;wt0&&qt&&o.setPosition(gt,qt),Xt.sort(U);for(var Pt=0;Pto.rank?-1:0},Y=function(n){return n==null||(n=typeof n=="string"||n.constructor===String?document.getElementById(n):n,n==null)?null:(n._katavorio=n._katavorio||B(),n)};K.Katavorio=function(n){var o=[],t={};this._dragsByScope={},this._dropsByScope={};var g=1,m=function(J,q){l(J,function(Q){for(var ut=0;ut0};this.getMatchingDroppables=function(J){for(var q=[],Q={},ut=0;ut=0&&o.splice(ut,1),F(J[q],Q)&&l(J[q],function(vt){vt.destroy()}),delete J[q]}},lt=function(J,q,Q,ut){J=Y(J),J[q]&&J[q].off(Q,ut)};this.elementRemoved=function(J){J._katavorioDrag&&this.destroyDraggable(J),J._katavorioDrop&&this.destroyDroppable(J)},this.destroyDraggable=function(J,q,Q){arguments.length===1?dt(J,"_katavorioDrag",this._dragsByScope):lt(J,"_katavorioDrag",q,Q)},this.destroyDroppable=function(J,q,Q){arguments.length===1?dt(J,"_katavorioDrop",this._dropsByScope):lt(J,"_katavorioDrop",q,Q)},this.reset=function(){this._dragsByScope={},this._dropsByScope={},o=[],t={},bt={}};var bt={},gt=function(J,q,Q){var ut=$(q)?q:q.id,vt=$(q)?!0:q.active!==!1,St=bt[ut]||function(){var Ot={name:ut,members:[]};return bt[ut]=Ot,Ot}();return l(J,function(Ot){if(Ot._katavorioDrag){if(Q&&Ot._katavorioDrag.posseRoles[St.name]!=null)return;c(St.members,Ot._katavorioDrag),c(Ot._katavorioDrag.posses,St.name),Ot._katavorioDrag.posseRoles[St.name]=vt}}),St};this.addToPosse=function(J,q){for(var Q=[],ut=1;ut0}c.isNamedFunction=v;function D(n){for(var o in n)if(n.hasOwnProperty(o))return!1;return!0}c.isEmpty=D;function L(n){if($(n))return""+n;if(tt(n))return!!n;if(a(n))return new Date(n.getTime());if(i(n))return n;if(X(n)){for(var o=[],t=0;t=G.length,st=function(){return m[W[1]]||function(){return m[W[1]]=[],m[W[1]]}()};if(at)W?st()[W[3]]=t:m[F]=t;else if(W){var it=st();m=it[W[3]]||function(){return it[W[3]]={},it[W[3]]}()}else m=m[F]||function(){return m[F]={},m[F]}();return""}),n}}c.replace=f;function e(n,o,t){for(var g=0;g-1&&n.splice(t,1),t!==-1}c.removeWithFunction=R;function N(n,o){var t=n.indexOf(o);return t>-1&&n.splice(t,1),t!==-1}c.remove=N;function P(n,o,t){M(n,t)===-1&&n.push(o)}c.addWithFunction=P;function A(n,o,t,g){var m=n[o];return m==null&&(m=[],n[o]=m),m[g?"unshift":"push"](t),m}c.addToList=A;function r(n,o,t){return n.indexOf(o)===-1?(t?n.unshift(o):n.push(o),!0):!1}c.suggest=r;function d(n,o,t){var g;o=X(o)?o:[o];var m=function(G){for(var W=G.__proto__;W!=null;)if(W.prototype!=null){for(var at in W.prototype)W.prototype.hasOwnProperty(at)&&!n.prototype.hasOwnProperty(at)&&(n.prototype[at]=W.prototype[at]);W=W.prototype.__proto__}else W=null};for(g=0;g2)for(g=2;g>8&255]+l[n>>16&255]+l[n>>24&255]+"-"+l[o&255]+l[o>>8&255]+"-"+l[o>>16&15|64]+l[o>>24&255]+"-"+l[t&63|128]+l[t>>8&255]+"-"+l[t>>16&255]+l[t>>24&255]+l[g&255]+l[g>>8&255]+l[g>>16&255]+l[g>>24&255]}c.uuid=x;function u(n){if(n==null)return null;for(var o=n.replace(/^\s\s*/,""),t=/\s/,g=o.length;t.test(o.charAt(--g)););return o.slice(0,g+1)}c.fastTrim=u;function k(n,o){n=n.length==null||typeof n=="string"?[n]:n;for(var t=0;ttt.scrollTop+tt.offsetHeight)C[e]._jsPlumbProxies||(C[e]._jsPlumbProxies=C[e]._jsPlumbProxies||[],$.select({source:C[e]}).each(function(M){$.proxyConnection(M,0,tt,f,function(){return i("bottom",0,M.endpoints[0],M)},function(){return a("bottom",0,M.endpoints[0],M)}),C[e]._jsPlumbProxies.push([M,0])}),$.select({target:C[e]}).each(function(M){$.proxyConnection(M,1,tt,f,function(){return i("bottom",1,M.endpoints[1],M)},function(){return a("bottom",1,M.endpoints[1],M)}),C[e]._jsPlumbProxies.push([M,1])}));else if(C[e]._jsPlumbProxies){for(var j=0;j0)for(var s=0;s0){var H=Array.prototype.slice.call(arguments,1);try{for(var z=0,nt=b.length;z0?s.indexOf(S)!==-1:!b};this.getConnections=function(s,S){s?s.constructor===String&&(s={scope:s}):s={};for(var b=s.scope||e.getDefaultScope(),O=Bt(b,!0),H=Bt(s.source),z=Bt(s.target),nt=!S&&O.length>1?{}:[],ft=function(Dt,At){if(!S&&O.length>1){var Mt=nt[Dt];Mt==null&&(Mt=nt[Dt]=[]),Mt.push(At)}else nt.push(At)},ot=0,ct=x.length;ot0&&!Mt.isSource,he=mt&&H.length>0&&!Mt.isTarget;if(ue||he)continue t;nt.push(Mt)}}}}return Qt(nt)},this.getAllConnections=function(){return x},this.getDefaultScope=function(){return n},this.getEndpoint=F,this.getEndpoints=function(s){return u[P(s).id]||[]},this.getDefaultEndpointType=function(){return C.Endpoint},this.getDefaultConnectionType=function(){return C.Connection},this.getId=lt,this.draw=m,this.info=P,this.appendElement=g;var Yt=!1;this.isHoverSuspended=function(){return Yt},this.setHoverSuspended=function(s){Yt=s},this.hide=function(s,S){return rt(s,"none",S),e},this.idstamp=t;var te=function(s){if(!r&&s){var S=e.getElement(s);S.offsetParent&&e.setContainer(S.offsetParent)}},ee=function(){e.Defaults.Container&&e.setContainer(e.Defaults.Container)},ne=e.manage=function(s,S,b,O){return y[s]?O&&(y[s].info=kt({elId:s,timestamp:Y,recalc:!0})):(y[s]={el:S,endpoints:[],connections:[],rotation:0},y[s].info=kt({elId:s,timestamp:Y}),e.addClass(S,"jtk-managed"),b||e.fire("manageElement",{id:s,info:y[s].info,el:S})),y[s]};this.unmanage=function(s){if(y[s]){var S=y[s].el;e.removeClass(S,"jtk-managed"),delete y[s],e.fire("unmanageElement",{id:s,el:S})}},this.rotate=function(s,S,b){return y[s]&&(y[s].rotation=S,y[s].el.style.transform="rotate("+S+"deg)",y[s].el.style.transformOrigin="center center",b!==!0)?this.revalidate(s):{c:[],e:[]}},this.getRotation=function(s){return y[s]&&y[s].rotation||0};var kt=function(s){var S=s.timestamp,b=s.recalc,O=s.offset,H=s.elId,z;return U&&!S&&(S=Y),!b&&S&&S===p[H]?{o:s.offset||w[H],s:B[H]}:(b||!O&&w[H]==null?(z=y[H]?y[H].el:null,z!=null&&(B[H]=e.getSize(z),w[H]=e.getOffset(z),p[H]=S)):(w[H]=O||w[H],B[H]==null&&(z=y[H].el,z!=null&&(B[H]=e.getSize(z))),p[H]=S),w[H]&&!w[H].right&&(w[H].right=w[H].left+B[H][0],w[H].bottom=w[H].top+B[H][1],w[H].width=B[H][0],w[H].height=B[H][1],w[H].centerx=w[H].left+w[H].width/2,w[H].centery=w[H].top+w[H].height/2),{o:w[H],s:B[H]})};this.updateOffset=kt,this.init=function(){_||(ee(),e.router=new K.jsPlumb.DefaultRouter(e),e.anchorManager=e.router.anchorManager,_=!0,e.fire("ready",e))}.bind(this),this.log=l,this.jsPlumbUIComponent=a,this.makeAnchor=function(){var s,S=function(nt,ft){if(K.jsPlumb.Anchors[nt])return new K.jsPlumb.Anchors[nt](ft);if(!e.Defaults.DoNotThrowErrors)throw{msg:"jsPlumb: unknown anchor type '"+nt+"'"}};if(arguments.length===0)return null;var b=arguments[0],O=arguments[1],H=null;if(b.compute&&b.getOrientation)return b;if(typeof b=="string")H=S(arguments[0],{elementId:O,jsPlumbInstance:e});else if(c.isArray(b))if(c.isArray(b[0])||c.isString(b[0]))b.length===2&&c.isObject(b[1])?c.isString(b[0])?(s=K.jsPlumb.extend({elementId:O,jsPlumbInstance:e},b[1]),H=S(b[0],s)):(s=K.jsPlumb.extend({elementId:O,jsPlumbInstance:e,anchors:b[0]},b[1]),H=new K.jsPlumb.DynamicAnchor(s)):H=new C.DynamicAnchor({anchors:b,selector:null,elementId:O,jsPlumbInstance:e});else{var z={x:b[0],y:b[1],orientation:b.length>=4?[b[2],b[3]]:[0,0],offsets:b.length>=6?[b[4],b[5]]:[0,0],elementId:O,jsPlumbInstance:e,cssClass:b.length===7?b[6]:null};H=new K.jsPlumb.Anchor(z),H.clone=function(){return new K.jsPlumb.Anchor(z)}}return H.id||(H.id="anchor_"+t()),H},this.makeAnchors=function(s,S,b){for(var O=[],H=0,z=s.length;H0&&ot>=s.def.maxConnections},element:s.el,elementId:s.id,isSource:O,isTarget:H,addClass:function(ot){e.addClass(s.el,ot)},removeClass:function(ot){e.removeClass(s.el,ot)},onDrop:function(ot){var ct=ot.endpoints[0];ct.anchor.locked=!1},isDropAllowed:function(){return z.isDropAllowed.apply(z,arguments)},isRedrop:function(ot){return ot.suspendedElement!=null&&ot.suspendedEndpoint!=null&&ot.suspendedEndpoint.element===s.el},getEndpoint:function(ot){var ct=s.def.endpoint;if(ct==null||ct._jsPlumb==null){var ht=e.deriveEndpointAndAnchorSpec(ot.getType().join(" "),!0),Ct=ht.endpoints?K.jsPlumb.extend(S,{endpoint:s.def.def.endpoint||ht.endpoints[1]}):S;ht.anchors&&(Ct=K.jsPlumb.extend(Ct,{anchor:s.def.def.anchor||ht.anchors[1]})),ct=e.addEndpoint(s.el,Ct),ct._mtNew=!0}if(S.uniqueEndpoint&&(s.def.endpoint=ct),ct.setDeleteOnEmpty(!0),ot.isDetachable()&&ct.initDraggable(),ct.anchor.positionFinder!=null){var mt=e.getUIPosition(arguments,e.getZoom()),Dt=e.getOffset(s.el),At=e.getSize(s.el),Mt=mt==null?[0,0]:ct.anchor.positionFinder(mt,Dt,At,ct.anchor.constructorParams);ct.anchor.x=Mt[0],ct.anchor.y=Mt[1]}return ct},maybeCleanup:function(ot){ot._mtNew&&ot.connections.length===0?e.deleteObject({endpoint:ot}):delete ot._mtNew}}),ft=K.jsPlumb.dragEvents.drop;return b.scope=b.scope||S.scope||e.Defaults.Scope,b[ft]=c.wrap(b[ft],nt,!0),b.rank=S.rank||0,H&&(b[K.jsPlumb.dragEvents.over]=function(){return!0}),S.allowLoopback===!1&&(b.canDrop=function(ot){var ct=ot.getDragElement()._jsPlumbRelatedElement;return ct!==s.el}),e.initDroppable(s.el,b,"internal"),nt};this.makeTarget=function(s,S,b){var O=K.jsPlumb.extend({_jsPlumb:this},b);K.jsPlumb.extend(O,S);for(var H=O.maxConnections||-1,z=function(ct){var ht=P(ct),Ct=ht.id,mt=K.jsPlumb.extend({},O.dropOptions||{}),Dt=O.connectionType||"default";this.targetEndpointDefinitions[Ct]=this.targetEndpointDefinitions[Ct]||{},te(Ct),ht.el._isJsPlumbGroup&&mt.rank==null&&(mt.rank=-1);var At={def:K.jsPlumb.extend({},O),uniqueEndpoint:O.uniqueEndpoint,maxConnections:H,enabled:!0};O.createEndpoint&&(At.uniqueEndpoint=!0,At.endpoint=e.addEndpoint(ct,At.def),At.endpoint.setDeleteOnEmpty(!1)),ht.def=At,this.targetEndpointDefinitions[Ct][Dt]=At,Tt(ht,O,mt,O.isSource===!0,!0),ht.el._katavorioDrop[ht.el._katavorioDrop.length-1].targetDef=At}.bind(this),nt=s.length&&s.constructor!==String?s:[s],ft=0,ot=nt.length;ft=0&&Kt>=Ft.maxConnections)return ft&&ft({element:mt.el,maxConnections:nt},Nt),!1;var ie=K.jsPlumb.getPositionOnElement(Nt,At,N),Wt={};K.jsPlumb.extend(Wt,Ft.def),Wt.isTemporarySource=!0,Wt.anchor=[ie[0],ie[1],0,0],Wt.dragOptions=zt,Ft.def.scope&&(Wt.scope=Ft.def.scope),It=this.addEndpoint(Dt,Wt),ce=!0,It.setDeleteOnEmpty(!0),Ft.uniqueEndpoint&&(Ft.endpoint?It.finalEndpoint=Ft.endpoint:(Ft.endpoint=It,It.setDeleteOnEmpty(!1)));var $t=function(){e.off(It.canvas,"mouseup",$t),e.off(mt.el,"mouseup",$t),ce&&(ce=!1,e.deleteEndpoint(It))};e.on(It.canvas,"mouseup",$t),e.on(mt.el,"mouseup",$t);var de={};if(Ft.def.extract)for(var se in Ft.def.extract){var Se=(Nt.srcElement||Nt.target).getAttribute(se);Se&&(de[Ft.def.extract[se]]=Se)}e.trigger(It.canvas,"mousedown",Nt,de),c.consume(Nt)}}}.bind(this);this.on(mt.el,"mousedown",De),Mt.trigger=De,O.filter&&(c.isString(O.filter)||c.isFunction(O.filter))&&e.setDragFilter(mt.el,O.filter);var je=K.jsPlumb.extend({},O.dropOptions||{});Tt(mt,O,je,!0,O.isTarget===!0)}.bind(this),ct=s.length&&s.constructor!==String?s:[s],ht=0,Ct=ct.length;ht0;)O(nt.el.childNodes[0]);z||yt(nt,b)}};return e.batch(function(){O(s,!0)},S===!1),e},this.reset=function(s){e.silently(function(){Yt=!1,e.removeAllGroups(),e.removeGroupManager(),e.deleteEveryEndpoint(),s||e.unbind(),this.targetEndpointDefinitions={},this.sourceEndpointDefinitions={},x.length=0,this.doReset&&this.doReset()}.bind(this))},this.destroy=function(){this.reset(),r=null,d=null};var Et=function(s){s.canvas&&s.canvas.parentNode&&s.canvas.parentNode.removeChild(s.canvas),s.cleanup(),s.destroy()};this.clear=function(){e.select().each(Et),e.selectEndpoints().each(Et),u={},k={}},this.setDefaultScope=function(s){return n=s,e},this.deriveEndpointAndAnchorSpec=function(s,S){for(var b=((S?"":"default ")+s).split(/[\s]/),O=null,H=null,z=null,nt=null,ft=0;ft0)for(var A=0;A0?"add":"remove")+"Class"](i.endpointConnectedClass),this[(this.isFull()?"add":"remove")+"Class"](i.endpointFullClass)},this.detachFromConnection=function(P,A,r){A=A==null?this.connections.indexOf(P):A,A>=0&&(this.connections.splice(A,1),this[(this.connections.length>0?"add":"remove")+"Class"](i.endpointConnectedClass),this[(this.isFull()?"add":"remove")+"Class"](i.endpointFullClass)),!r&&L&&this.connections.length===0&&i.deleteObject({endpoint:this,fireEvent:!1,deleteAttachedObjects:r!==!0})},this.deleteEveryConnection=function(P){for(var A=this.connections.length,r=0;r0){var y=T(this,P.elementWithPrecedence),w=y.endpoints[0]===this?1:0,p=w===0?y.sourceId:y.targetId,E=i.getCachedData(p),B=E.o,U=E.s;k.index=w===0?1:0,k.connection=y,k.txy=[B.left,B.top],k.twh=U,k.tElement=y.endpoints[w],k.tRotation=i.getRotation(p)}else this.connections.length>0&&(k.connection=this.connections[0]);k.rotation=i.getRotation(this.elementId),_=this.anchor.compute(k)}this.endpoint.compute(_,this.anchor.getOrientation(this),this._jsPlumb.paintStyleInUse,x||this.paintStyleInUse),this.endpoint.paint(this._jsPlumb.paintStyleInUse,this.anchor),this.timestamp=A;for(var Y in this._jsPlumb.overlays)if(this._jsPlumb.overlays.hasOwnProperty(Y)){var n=this._jsPlumb.overlays[Y];n.isVisible()&&(this._jsPlumb.overlayPlacements[Y]=n.draw(this.endpoint,this._jsPlumb.paintStyleInUse),n.paint(this._jsPlumb.overlayPlacements[Y]))}}}},this.getTypeDescriptor=function(){return"endpoint"},this.isVisible=function(){return this._jsPlumb.visible},this.repaint=this.paint;var e=!1;this.initDraggable=function(){if(!e&&c.isDragSupported(this.element)){var P={id:null,element:null},A=null,r=!1,d=null,l=Z(this,P,i),_=a.dragOptions||{},x={},u=c.dragEvents.start,k=c.dragEvents.stop,y=c.dragEvents.drag,w=c.dragEvents.beforeStart,p,E=function(Y){p=Y.e.payload||{}},B=function(Y){A=this.connectorSelector();var n=!0;this.isEnabled()||(n=!1),A==null&&!this.isSource&&!this.isTemporarySource&&(n=!1),this.isSource&&this.isFull()&&!(A!=null&&this.dragAllowedWhenFull)&&(n=!1),A!=null&&!A.isDetachable(this)&&(this.isFull()?n=!1:A=null);var o=i.checkCondition(A==null?"beforeDrag":"beforeStartDetach",{endpoint:this,source:this.element,sourceId:this.elementId,connection:A});if(o===!1?n=!1:typeof o=="object"?c.extend(o,p||{}):o=p||{},n===!1)return i.stopDrag&&i.stopDrag(this.canvas),l.stopDrag(),!1;for(var t=0;t0&&this.connectionsDetachable!==!1}.bind(this),i.initDraggable(this.canvas,_,"internal"),this.canvas._jsPlumbRelatedElement=this.element,e=!0}};var j=a.endpoint||this._jsPlumb.instance.Defaults.Endpoint||c.Defaults.Endpoint;this.setEndpoint(j,!0);var M=a.anchor?a.anchor:a.anchors?a.anchors:i.Defaults.Anchor||"Top";this.setAnchor(M,!0);var R=["default",a.type||""].join(" ");this.addType(R,a.data,!0),this.canvas=this.endpoint.canvas,this.canvas._jsPlumb=this,this.initDraggable();var N=function(P,A,r,d){if(c.isDropSupported(this.element)){var l=a.dropOptions||i.Defaults.DropOptions||c.Defaults.DropOptions;l=c.extend({},l),l.scope=l.scope||this.scope;var _=c.dragEvents.drop,x=c.dragEvents.over,u=c.dragEvents.out,k=this,y=i.EndpointDropHandler({getEndpoint:function(){return k},jsPlumb:i,enabled:function(){return r!=null?r.isEnabled():!0},isFull:function(){return r.isFull()},element:this.element,elementId:this.elementId,isSource:this.isSource,isTarget:this.isTarget,addClass:function(w){k.addClass(w)},removeClass:function(w){k.removeClass(w)},isDropAllowed:function(){return k.isDropAllowed.apply(k,arguments)},reference:d,isRedrop:function(w,p){return w.suspendedEndpoint&&p.reference&&w.suspendedEndpoint.id===p.reference.id}});l[_]=X.wrap(l[_],y,!0),l[x]=X.wrap(l[x],function(){var w=c.getDragObject(arguments),p=i.getAttribute(c.getElement(w),"dragId"),E=i.getFloatingConnectionFor(p);if(E!=null){var B=i.getFloatingAnchorIndex(E),U=this.isTarget&&B!==0||E.suspendedEndpoint&&this.referenceEndpoint&&this.referenceEndpoint.id===E.suspendedEndpoint.id;if(U){var Y=i.checkCondition("checkDropAllowed",{sourceEndpoint:E.endpoints[B],targetEndpoint:this,connection:E});this[(Y?"add":"remove")+"Class"](i.endpointDropAllowedClass),this[(Y?"remove":"add")+"Class"](i.endpointDropForbiddenClass),E.endpoints[B].anchor.over(this.anchor,this)}}}.bind(this)),l[u]=X.wrap(l[u],function(){var w=c.getDragObject(arguments),p=w==null?null:i.getAttribute(c.getElement(w),"dragId"),E=p?i.getFloatingConnectionFor(p):null;if(E!=null){var B=i.getFloatingAnchorIndex(E),U=this.isTarget&&B!==0||E.suspendedEndpoint&&this.referenceEndpoint&&this.referenceEndpoint.id===E.suspendedEndpoint.id;U&&(this.removeClass(i.endpointDropAllowedClass),this.removeClass(i.endpointDropForbiddenClass),E.endpoints[B].anchor.out())}}.bind(this)),i.initDroppable(P,l,"internal",A)}}.bind(this);return this.anchor.isFloating||N(this.canvas,!(a._transient||this.anchor.isFloating),this,a.reference),this},X.extend(c.Endpoint,c.OverlayCapableJsPlumbUIComponent,{setVisible:function(a,i,v){if(this._jsPlumb.visible=a,this.canvas&&(this.canvas.style.display=a?"block":"none"),this[a?"showOverlays":"hideOverlays"](),!i){for(var D=0;D0)for(var o=N(B,R[w]),t=w==="right"||w==="top",g=C.getRotation(l),m=e(w,p,E,o,U,Y,t,g),F=function(at,st){a[at.id]=[st[0],st[1],st[2],st[3]],i[at.id]=n},I=0;I-1&&(v[x.targetId][y][0]=x,v[x.targetId][y][1]=x.endpoints[0],v[x.targetId][y][2]=x.endpoints[0].anchor.constructor===X.DynamicAnchor),c.addToList(v,_,[x,x.endpoints[1],x.endpoints[1].anchor.constructor===X.DynamicAnchor]),x.endpoints[1].anchor.isContinuous&&(x.source===x.target?x._jsPlumb.instance.removeElement(x.endpoints[1].canvas):x.endpoints[1].canvas.parentNode==null&&x._jsPlumb.instance.appendElement(x.endpoints[1].canvas)),x.updateConnectedClass()}}else if(k===1){var w=x.endpoints[0].elementId;x.target=u,x.targetId=_;var p=c.findWithFunction(v[w],function(B){return B[0].id===x.id}),E=c.findWithFunction(v[l],function(B){return B[0].id===x.id});p!==-1&&(v[w][p][0]=x,v[w][p][1]=x.endpoints[1],v[w][p][2]=x.endpoints[1].anchor.constructor===X.DynamicAnchor),E>-1&&(v[l].splice(E,1),c.addToList(v,_,[x,x.endpoints[0],x.endpoints[0].anchor.constructor===X.DynamicAnchor])),x.updateConnectedClass()}},this.rehomeEndpoint=function(l,_,x){var u=T[_]||[],k=C.getId(x);if(k!==_){var y=u.indexOf(l);if(y>-1){var w=u.splice(y,1)[0];D.add(w,k)}}for(var p=0;pu.dist?1:0});for(var d=N[0].source,l=N[0].target,_=0;_0?this.anchors[0]:null,i=a,v=function(L,C,f,e,j,M,R){var N=e[0]+L.x*j[0],P=e[1]+L.y*j[1],A=e[0]+j[0]/2,r=e[1]+j[1]/2;if(M!=null&&M!==0){var d=jsPlumbUtil.rotatePoint([N,P],[A,r],M);N=d[0],P=d[1]}return Math.sqrt(Math.pow(C-N,2)+Math.pow(f-P,2))+Math.sqrt(Math.pow(A-N,2)+Math.pow(r-P,2))},D=h.selector||function(L,C,f,e,j,M,R){for(var N=f[0]+e[0]/2,P=f[1]+e[1]/2,A=-1,r=1/0,d=0;d0?r:v+r:r*v;return Z.pointOnLine({x:C,y:e},{x:f,y:j},l)},this.gradientAtPoint=function(r){return D},this.pointAlongPathFrom=function(r,d,l){var _=this.pointOnPath(r,l),x=d<=0?{x:C,y:e}:{x:f,y:j};return d<=0&&Math.abs(d)>1&&(d*=-1),Z.pointOnLine(_,x,d)};var R=function(r,d,l){return l>=Math.min(r,d)&&l<=Math.max(r,d)},N=function(r,d,l){return Math.abs(l-r)d?d<=r&&r<=l:d>=r&&r>=l},A=P;this.lineIntersection=function(r,d,l,_){var x=Math.abs(Z.gradient({x:r,y:d},{x:l,y:_})),u=Math.abs(D),k=u===1/0?C:e-u*C,y=[],w=x===1/0?r:d-x*r;if(x!==u)if(x===1/0&&u===0)A(r,C,f)&&A(e,d,_)&&(y=[r,e]);else if(x===0&&u===1/0)A(d,e,j)&&A(C,r,l)&&(y=[C,d]);else{var p,E;x===1/0?(p=r,A(p,C,f)&&(E=u*r+k,A(E,d,_)&&(y=[p,E]))):x===0?(E=d,A(E,e,j)&&(p=(d-k)/u,A(p,r,l)&&(y=[p,E]))):(p=(w-k)/(u-x),E=u*p+k,A(p,C,f)&&A(E,e,j)&&(y=[p,E]))}return y},this.boxIntersection=function(r,d,l,_){var x=[];return x.push.apply(x,this.lineIntersection(r,d,r+l,d)),x.push.apply(x,this.lineIntersection(r+l,d,r+l,d+_)),x.push.apply(x,this.lineIntersection(r+l,d+_,r,d+_)),x.push.apply(x,this.lineIntersection(r,d+_,r,d)),x},this.boundingBoxIntersection=function(r){return this.boxIntersection(r.x,r.y,r.w,r.h)}},Arc:function(i){c.Segments.AbstractSegment.apply(this,arguments);var v=function(N,P){return Z.theta([i.cx,i.cy],[N,P])},D=function(N,P){if(N.anticlockwise){var A=N.startAngle0?0:1,M)),M};this.pointOnPath=function(j,M){return j=e(this.curve,j,M),K.jsBezier.pointOnCurve(this.curve,j)},this.gradientAtPoint=function(j,M){return j=e(this.curve,j,M),K.jsBezier.gradientAtPoint(this.curve,j)},this.pointAlongPathFrom=function(j,M,R){return j=e(this.curve,j,R),K.jsBezier.pointAlongCurveFrom(this.curve,j,M)},this.getLength=function(){return this.length},this.getBounds=function(){return this.bounds},this.findClosestPointOnPath=function(j,M){var R=K.jsBezier.nearestPointOnCurve({x:j,y:M},this.curve);return{d:Math.sqrt(Math.pow(R.point.x-j,2)+Math.pow(R.point.y-M,2)),x:R.point.x,y:R.point.y,l:1-R.location,s:this}},this.lineIntersection=function(j,M,R,N){return K.jsBezier.lineIntersection(j,M,R,N,this.curve)}}},c.SegmentRenderer={getPath:function(i,v){return{Straight:function(D){var L=i.getCoordinates();return(D?"M "+L.x1+" "+L.y1+" ":"")+"L "+L.x2+" "+L.y2},Bezier:function(D){var L=i.params;return(D?"M "+L.x2+" "+L.y2+" ":"")+"C "+L.cp2x+" "+L.cp2y+" "+L.cp1x+" "+L.cp1y+" "+L.x1+" "+L.y1},Arc:function(D){var L=i.params,C=i.sweep>Math.PI?1:0,f=i.anticlockwise?0:1;return(D?"M"+i.x1+" "+i.y1+" ":"")+"A "+i.radius+" "+L.r+" 0 "+C+","+f+" "+i.x2+" "+i.y2}}[i.type](v)}};var $=function(){this.resetBounds=function(){this.bounds={minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0}},this.resetBounds()};c.Connectors.AbstractConnector=function(i){$.apply(this,arguments);var v=[],D=0,L=[],C=[],f=i.stub||0,e=X.isArray(f)?f[0]:f,j=X.isArray(f)?f[1]:f,M=i.gap||0,R=X.isArray(M)?M[0]:M,N=X.isArray(M)?M[1]:M,P=null,A=null;this.getPathData=function(){for(var u="",k=0;k0?u/D:(D+u)/D),u===1)y=v.length-1,p=1;else if(u===0)p=0,y=0;else if(u>=.5){for(y=0,p=0,w=L.length-1;w>-1;w--)if(L[w][1]>=u&&L[w][0]<=u){y=w,p=(u-L[w][0])/C[w];break}}else for(y=L.length-1,p=1,w=0;w=u){y=w,p=(u-L[w][0])/C[w];break}return{segment:v[y],proportion:p,index:y}},l=function(u,k,y){if(!(y.x1===y.x2&&y.y1===y.y2)){var w=new c.Segments[k](y);v.push(w),D+=w.getLength(),u.updateBounds(w)}},_=function(){D=v.length=L.length=C.length=0};this.setSegments=function(u){P=[],D=0;for(var k=0;ko?0:1,g=[1,0][t];E=[],B=[],E[t]=u.sourcePos[t]>u.targetPos[t]?-1:1,B[t]=u.sourcePos[t]>u.targetPos[t]?1:-1,E[g]=0,B[g]=0}var m=y?n+R*E[0]:R*E[0],F=w?o+R*E[1]:R*E[1],I=y?N*B[0]:n+N*B[0],V=w?N*B[1]:o+N*B[1],G=E[0]*B[0]+E[1]*B[1],W={sx:m,sy:F,tx:I,ty:V,lw:p,xSpan:Math.abs(I-m),ySpan:Math.abs(V-F),mx:(m+I)/2,my:(F+V)/2,so:E,to:B,x:U,y:Y,w:n,h:o,segment:k,startStubX:m+E[0]*e,startStubY:F+E[1]*e,endStubX:I+B[0]*j,endStubY:V+B[1]*j,isXGreaterThanStubTimes2:Math.abs(m-I)>e+j,isYGreaterThanStubTimes2:Math.abs(F-V)>e+j,opposite:G===-1,perpendicular:G===0,orthogonal:G===1,sourceAxis:E[0]===0?"y":"x",points:[U,Y,n,o,m,F,I,V],stubs:[e,j]};return W.anchorOrientation=W.opposite?"opposite":W.orthogonal?"orthogonal":"perpendicular",W};return this.getSegments=function(){return v},this.updateBounds=function(u){var k=u.getBounds();this.bounds.minX=Math.min(this.bounds.minX,k.minX),this.bounds.maxX=Math.max(this.bounds.maxX,k.maxX),this.bounds.minY=Math.min(this.bounds.minY,k.minY),this.bounds.maxY=Math.max(this.bounds.maxY,k.maxY)},this.pointOnPath=function(u,k){var y=d(u,k);return y.segment&&y.segment.pointOnPath(y.proportion,!1)||[0,0]},this.gradientAtPoint=function(u,k){var y=d(u,k);return y.segment&&y.segment.gradientAtPoint(y.proportion,!1)||0},this.pointAlongPathFrom=function(u,k,y){var w=d(u,y);return w.segment&&w.segment.pointAlongPathFrom(w.proportion,k,!1)||[0,0]},this.compute=function(u){A=x.call(this,u),_(),this._compute(A,u),this.x=A.points[0],this.y=A.points[1],this.w=A.points[2],this.h=A.points[3],this.segment=A.segment,r()},{addSegment:l,prepareCompute:x,sourceStub:e,targetStub:j,maxStub:Math.max(e,j),sourceGap:R,targetGap:N,maxGap:Math.max(R,N)}},X.extend(c.Connectors.AbstractConnector,$),c.Endpoints.AbstractEndpoint=function(i){$.apply(this,arguments);var v=this.compute=function(D,L,C,f){var e=this._compute.apply(this,arguments);return this.x=e[0],this.y=e[1],this.w=e[2],this.h=e[3],this.bounds.minX=this.x,this.bounds.minY=this.y,this.bounds.maxX=this.x+this.w,this.bounds.maxY=this.y+this.h,e};return{compute:v,cssClass:i.cssClass}},X.extend(c.Endpoints.AbstractEndpoint,$),c.Endpoints.Dot=function(i){this.type="Dot",c.Endpoints.AbstractEndpoint.apply(this,arguments),i=i||{},this.radius=i.radius||10,this.defaultOffset=.5*this.radius,this.defaultInnerRadius=this.radius/3,this._compute=function(v,D,L,C){this.radius=L.radius||this.radius;var f=v[0]-this.radius,e=v[1]-this.radius,j=this.radius*2,M=this.radius*2;if(L.stroke){var R=L.strokeWidth||1;f-=R,e-=R,j+=R*2,M+=R*2}return[f,e,j,M,this.radius]}},X.extend(c.Endpoints.Dot,c.Endpoints.AbstractEndpoint),c.Endpoints.Rectangle=function(i){this.type="Rectangle",c.Endpoints.AbstractEndpoint.apply(this,arguments),i=i||{},this.width=i.width||20,this.height=i.height||20,this._compute=function(v,D,L,C){var f=L.width||this.width,e=L.height||this.height,j=v[0]-f/2,M=v[1]-e/2;return[j,M,f,e]}},X.extend(c.Endpoints.Rectangle,c.Endpoints.AbstractEndpoint);var tt=function(i){c.jsPlumbUIComponent.apply(this,arguments),this._jsPlumb.displayElements=[]};X.extend(tt,c.jsPlumbUIComponent,{getDisplayElements:function(){return this._jsPlumb.displayElements},appendDisplayElement:function(i){this._jsPlumb.displayElements.push(i)}}),c.Endpoints.Image=function(i){this.type="Image",tt.apply(this,arguments),c.Endpoints.AbstractEndpoint.apply(this,arguments);var v=i.onload,D=i.src||i.url,L=i.cssClass?" "+i.cssClass:"";this._jsPlumb.img=new Image,this._jsPlumb.ready=!1,this._jsPlumb.initialized=!1,this._jsPlumb.deleted=!1,this._jsPlumb.widthToUse=i.width,this._jsPlumb.heightToUse=i.height,this._jsPlumb.endpoint=i.endpoint,this._jsPlumb.img.onload=function(){this._jsPlumb!=null&&(this._jsPlumb.ready=!0,this._jsPlumb.widthToUse=this._jsPlumb.widthToUse||this._jsPlumb.img.width,this._jsPlumb.heightToUse=this._jsPlumb.heightToUse||this._jsPlumb.img.height,v&&v(this))}.bind(this),this._jsPlumb.endpoint.setImage=function(C,f){var e=C.constructor===String?C:C.src;v=f,this._jsPlumb.img.src=e,this.canvas!=null&&this.canvas.setAttribute("src",this._jsPlumb.img.src)}.bind(this),this._jsPlumb.endpoint.setImage(D,v),this._compute=function(C,f,e,j){return this.anchorPoint=C,this._jsPlumb.ready?[C[0]-this._jsPlumb.widthToUse/2,C[1]-this._jsPlumb.heightToUse/2,this._jsPlumb.widthToUse,this._jsPlumb.heightToUse]:[0,0,0,0]},this.canvas=c.createElement("img",{position:"absolute",margin:0,padding:0,outline:0},this._jsPlumb.instance.endpointClass+L),this._jsPlumb.widthToUse&&this.canvas.setAttribute("width",this._jsPlumb.widthToUse),this._jsPlumb.heightToUse&&this.canvas.setAttribute("height",this._jsPlumb.heightToUse),this._jsPlumb.instance.appendElement(this.canvas),this.actuallyPaint=function(C,f,e){if(!this._jsPlumb.deleted){this._jsPlumb.initialized||(this.canvas.setAttribute("src",this._jsPlumb.img.src),this.appendDisplayElement(this.canvas),this._jsPlumb.initialized=!0);var j=this.anchorPoint[0]-this._jsPlumb.widthToUse/2,M=this.anchorPoint[1]-this._jsPlumb.heightToUse/2;X.sizeElement(this.canvas,j,M,this._jsPlumb.widthToUse,this._jsPlumb.heightToUse)}},this.paint=function(C,f){this._jsPlumb!=null&&(this._jsPlumb.ready?this.actuallyPaint(C,f):K.setTimeout(function(){this.paint(C,f)}.bind(this),200))}},X.extend(c.Endpoints.Image,[tt,c.Endpoints.AbstractEndpoint],{cleanup:function(i){i&&(this._jsPlumb.deleted=!0,this.canvas&&this.canvas.parentNode.removeChild(this.canvas),this.canvas=null)}}),c.Endpoints.Blank=function(i){c.Endpoints.AbstractEndpoint.apply(this,arguments),this.type="Blank",tt.apply(this,arguments),this._compute=function(D,L,C,f){return[D[0],D[1],10,0]};var v=i.cssClass?" "+i.cssClass:"";this.canvas=c.createElement("div",{display:"block",width:"1px",height:"1px",background:"transparent",position:"absolute"},this._jsPlumb.instance.endpointClass+v),this._jsPlumb.instance.appendElement(this.canvas),this.paint=function(D,L){X.sizeElement(this.canvas,this.x,this.y,this.w,this.h)}},X.extend(c.Endpoints.Blank,[c.Endpoints.AbstractEndpoint,tt],{cleanup:function(){this.canvas&&this.canvas.parentNode&&this.canvas.parentNode.removeChild(this.canvas)}}),c.Endpoints.Triangle=function(i){this.type="Triangle",c.Endpoints.AbstractEndpoint.apply(this,arguments);var v=this;i=i||{},i.width=i.width||55,i.height=i.height||55,this.width=i.width,this.height=i.height,this._compute=function(D,L,C,f){var e=C.width||v.width,j=C.height||v.height,M=D[0]-e/2,R=D[1]-j/2;return[M,R,e,j]}};var h=c.Overlays.AbstractOverlay=function(i){this.visible=!0,this.isAppendedAtTopLevel=!0,this.component=i.component,this.loc=i.location==null?.5:i.location,this.endpointLoc=i.endpointLocation==null?[.5,.5]:i.endpointLocation,this.visible=i.visible!==!1};h.prototype={cleanup:function(i){i&&(this.component=null,this.canvas=null,this.endpointLoc=null)},reattach:function(i,v){},setVisible:function(i){this.visible=i,this.component.repaint()},isVisible:function(){return this.visible},hide:function(){this.setVisible(!1)},show:function(){this.setVisible(!0)},incrementLocation:function(i){this.loc+=i,this.component.repaint()},setLocation:function(i){this.loc=i,this.component.repaint()},getLocation:function(){return this.loc},updateFrom:function(){}},c.Overlays.Arrow=function(i){this.type="Arrow",h.apply(this,arguments),this.isAppendedAtTopLevel=!1,i=i||{};var v=this;this.length=i.length||20,this.width=i.width||20,this.id=i.id,this.direction=(i.direction||1)<0?-1:1;var D=i.paintStyle||{"stroke-width":1},L=i.foldback||.623;this.computeMaxSize=function(){return v.width*1.5},this.elementCreated=function(C,f){if(this.path=C,i.events)for(var e in i.events)c.on(C,e,i.events[e])},this.draw=function(C,f){var e,j,M,R,N;if(C.pointAlongPathFrom){if(X.isString(this.loc)||this.loc>1||this.loc<0){var P=parseInt(this.loc,10),A=this.loc<0?1:0;e=C.pointAlongPathFrom(A,P,!1),j=C.pointAlongPathFrom(A,P-this.direction*this.length/2,!1),M=Z.pointOnLine(e,j,this.length)}else if(this.loc===1){if(e=C.pointOnPath(this.loc),j=C.pointAlongPathFrom(this.loc,-this.length),M=Z.pointOnLine(e,j,this.length),this.direction===-1){var r=M;M=e,e=r}}else if(this.loc===0){if(M=C.pointOnPath(this.loc),j=C.pointAlongPathFrom(this.loc,this.length),e=Z.pointOnLine(M,j,this.length),this.direction===-1){var d=M;M=e,e=d}}else e=C.pointAlongPathFrom(this.loc,this.direction*this.length/2),j=C.pointOnPath(this.loc),M=Z.pointOnLine(e,j,this.length);R=Z.perpendicularLineTo(e,M,this.width),N=Z.pointOnLine(e,M,L*this.length);var l={hxy:e,tail:R,cxy:N},_=D.stroke||f.stroke,x=D.fill||f.stroke,u=D.strokeWidth||f.strokeWidth;return{component:C,d:l,"stroke-width":u,stroke:_,fill:x,minX:Math.min(e.x,R[0].x,R[1].x),maxX:Math.max(e.x,R[0].x,R[1].x),minY:Math.min(e.y,R[0].y,R[1].y),maxY:Math.max(e.y,R[0].y,R[1].y)}}else return{component:C,minX:0,maxX:0,minY:0,maxY:0}}},X.extend(c.Overlays.Arrow,h,{updateFrom:function(i){this.length=i.length||this.length,this.width=i.width||this.width,this.direction=i.direction!=null?i.direction:this.direction,this.foldback=i.foldback||this.foldback},cleanup:function(){this.path&&this.path.parentNode&&this.path.parentNode.removeChild(this.path)}}),c.Overlays.PlainArrow=function(i){i=i||{};var v=c.extend(i,{foldback:1});c.Overlays.Arrow.call(this,v),this.type="PlainArrow"},X.extend(c.Overlays.PlainArrow,c.Overlays.Arrow),c.Overlays.Diamond=function(i){i=i||{};var v=i.length||40,D=c.extend(i,{length:v/2,foldback:2});c.Overlays.Arrow.call(this,D),this.type="Diamond"},X.extend(c.Overlays.Diamond,c.Overlays.Arrow);var T=function(i,v){return(i._jsPlumb.cachedDimensions==null||v)&&(i._jsPlumb.cachedDimensions=i.getDimensions()),i._jsPlumb.cachedDimensions},a=function(i){c.jsPlumbUIComponent.apply(this,arguments),h.apply(this,arguments);var v=this.fire;this.fire=function(){v.apply(this,arguments),this.component&&this.component.fire.apply(this.component,arguments)},this.detached=!1,this.id=i.id,this._jsPlumb.div=null,this._jsPlumb.initialised=!1,this._jsPlumb.component=i.component,this._jsPlumb.cachedDimensions=null,this._jsPlumb.create=i.create,this._jsPlumb.initiallyInvisible=i.visible===!1,this.getElement=function(){if(this._jsPlumb.div==null){var D=this._jsPlumb.div=c.getElement(this._jsPlumb.create(this._jsPlumb.component));D.style.position="absolute",jsPlumb.addClass(D,this._jsPlumb.instance.overlayClass+" "+(this.cssClass?this.cssClass:i.cssClass?i.cssClass:"")),this._jsPlumb.instance.appendElement(D),this._jsPlumb.instance.getId(D),this.canvas=D;var L="translate(-50%, -50%)";D.style.webkitTransform=L,D.style.mozTransform=L,D.style.msTransform=L,D.style.oTransform=L,D.style.transform=L,D._jsPlumb=this,i.visible===!1&&(D.style.display="none")}return this._jsPlumb.div},this.draw=function(D,L,C){var f=T(this);if(f!=null&&f.length===2){var e={x:0,y:0};if(C)e={x:C[0],y:C[1]};else if(D.pointOnPath){var j=this.loc,M=!1;(X.isString(this.loc)||this.loc<0||this.loc>1)&&(j=parseInt(this.loc,10),M=!0),e=D.pointOnPath(j,M)}else{var R=this.loc.constructor===Array?this.loc:this.endpointLoc;e={x:R[0]*D.w,y:R[1]*D.h}}var N=e.x-f[0]/2,P=e.y-f[1]/2;return{component:D,d:{minx:N,miny:P,td:f,cxy:e},minX:N,maxX:N+f[0],minY:P,maxY:P+f[1]}}else return{minX:0,maxX:0,minY:0,maxY:0}}};X.extend(a,[c.jsPlumbUIComponent,h],{getDimensions:function(){return[1,1]},setVisible:function(i){this._jsPlumb.div&&(this._jsPlumb.div.style.display=i?"block":"none",i&&this._jsPlumb.initiallyInvisible&&(T(this,!0),this.component.repaint(),this._jsPlumb.initiallyInvisible=!1))},clearCachedDimensions:function(){this._jsPlumb.cachedDimensions=null},cleanup:function(i){i?this._jsPlumb.div!=null&&(this._jsPlumb.div._jsPlumb=null,this._jsPlumb.instance.removeElement(this._jsPlumb.div)):(this._jsPlumb&&this._jsPlumb.div&&this._jsPlumb.div.parentNode&&this._jsPlumb.div.parentNode.removeChild(this._jsPlumb.div),this.detached=!0)},reattach:function(i,v){this._jsPlumb.div!=null&&i.getContainer().appendChild(this._jsPlumb.div),this.detached=!1},computeMaxSize:function(){var i=T(this);return Math.max(i[0],i[1])},paint:function(i,v){this._jsPlumb.initialised||(this.getElement(),i.component.appendDisplayElement(this._jsPlumb.div),this._jsPlumb.initialised=!0,this.detached&&this._jsPlumb.div.parentNode.removeChild(this._jsPlumb.div)),this._jsPlumb.div.style.left=i.component.x+i.d.minx+"px",this._jsPlumb.div.style.top=i.component.y+i.d.miny+"px"}}),c.Overlays.Custom=function(i){this.type="Custom",a.apply(this,arguments)},X.extend(c.Overlays.Custom,a),c.Overlays.GuideLines=function(){var i=this;i.length=50,i.strokeWidth=5,this.type="GuideLines",h.apply(this,arguments),c.jsPlumbUIComponent.apply(this,arguments),this.draw=function(v,D){var L=v.pointAlongPathFrom(i.loc,i.length/2),C=v.pointOnPath(i.loc),f=Z.pointOnLine(L,C,i.length),e=Z.perpendicularLineTo(L,f,40),j=Z.perpendicularLineTo(f,L,20);return{connector:v,head:L,tail:f,headLine:j,tailLine:e,minX:Math.min(L.x,f.x,j[0].x,j[1].x),minY:Math.min(L.y,f.y,j[0].y,j[1].y),maxX:Math.max(L.x,f.x,j[0].x,j[1].x),maxY:Math.max(L.y,f.y,j[0].y,j[1].y)}}},c.Overlays.Label=function(i){this.labelStyle=i.labelStyle,this.cssClass=this.labelStyle!=null?this.labelStyle.cssClass:null;var v=c.extend({create:function(){return c.createElement("div")}},i);if(c.Overlays.Custom.call(this,v),this.type="Label",this.label=i.label||"",this.labelText=null,this.labelStyle){var D=this.getElement();if(this.labelStyle.font=this.labelStyle.font||"12px sans-serif",D.style.font=this.labelStyle.font,D.style.color=this.labelStyle.color||"black",this.labelStyle.fill&&(D.style.background=this.labelStyle.fill),this.labelStyle.borderWidth>0){var L=this.labelStyle.borderStyle?this.labelStyle.borderStyle:"black";D.style.border=this.labelStyle.borderWidth+"px solid "+L}this.labelStyle.padding&&(D.style.padding=this.labelStyle.padding)}},X.extend(c.Overlays.Label,c.Overlays.Custom,{cleanup:function(i){i&&(this.div=null,this.label=null,this.labelText=null,this.cssClass=null,this.labelStyle=null)},getLabel:function(){return this.label},setLabel:function(i){this.label=i,this.labelText=null,this.clearCachedDimensions(),this.update(),this.component.repaint()},getDimensions:function(){return this.update(),a.prototype.getDimensions.apply(this,arguments)},update:function(){if(typeof this.label=="function"){var i=this.label(this);this.getElement().innerHTML=i.replace(/\r\n/g,"
")}else this.labelText==null&&(this.labelText=this.label,this.getElement().innerHTML=this.labelText.replace(/\r\n/g,"
"))},updateFrom:function(i){i.label!=null&&this.setLabel(i.label)}})}.call(typeof window!="undefined"?window:jt),function(){var K=this,c=K.jsPlumbUtil,X=K.jsPlumbInstance,Z="jtk-group-collapsed",$="jtk-group-expanded",tt="[jtk-group-content]",h="elementDraggable",T="stop",a="revert",i="_groupManager",v="_jsPlumbGroup",D="_jsPlumbGroupDrag",L="group:addMember",C="group:removeMember",f="group:add",e="group:remove",j="group:expand",M="group:collapse",R="groupDragStop",N="connectionMoved",P="internal.connectionDetached",A="removeAll",r="orphanAll",d="show",l="hide",_=function(u){var k={},y={},w={},p=this;function E(t,g){for(var m=u.getContainer(),F=!1;!F;){if(t==null||t===m)return!1;if(t===g)return!0;t=t.parentNode}}u.bind("connection",function(t){var g=u.getGroupFor(t.source),m=u.getGroupFor(t.target);g!=null&&m!=null&&g===m?(y[t.connection.id]=g,w[t.connection.id]=g):(g!=null&&(c.suggest(g.connections.source,t.connection),y[t.connection.id]=g),m!=null&&(c.suggest(m.connections.target,t.connection),w[t.connection.id]=m))});function B(t){delete t.proxies;var g=y[t.id],m;g!=null&&(m=function(F){return F.id===t.id},c.removeWithFunction(g.connections.source,m),c.removeWithFunction(g.connections.target,m),delete y[t.id]),g=w[t.id],g!=null&&(m=function(F){return F.id===t.id},c.removeWithFunction(g.connections.source,m),c.removeWithFunction(g.connections.target,m),delete w[t.id])}u.bind(P,function(t){B(t.connection)}),u.bind(N,function(t){var g=t.index===0?y:w,m=g[t.connection.id];if(m){var F=m.connections[t.index===0?"source":"target"],I=F.indexOf(t.connection);I!==-1&&F.splice(I,1)}}),this.addGroup=function(t){u.addClass(t.getEl(),$),k[t.id]=t,t.manager=this,o(t),u.fire(f,{group:t})},this.addToGroup=function(t,g,m){if(t=this.getGroup(t),t){var F=t.getEl();if(g._isJsPlumbGroup)return;var I=g._jsPlumbGroup;if(I!==t){u.removeFromDragSelection(g);var V=u.getOffset(g,!0),G=t.collapsed?u.getOffset(F,!0):u.getOffset(t.getDragArea(),!0);I!=null&&(I.remove(g,!1,m,!1,t),p.updateConnectionsForGroup(I)),t.add(g,m);var W=function(rt,pt){var dt=pt===0?1:0;rt.each(function(lt){lt.setVisible(!1),lt.endpoints[dt].element._jsPlumbGroup===t?(lt.endpoints[dt].setVisible(!1),n(lt,dt,t)):(lt.endpoints[pt].setVisible(!1),Y(lt,pt,t))})};t.collapsed&&(W(u.select({source:g}),0),W(u.select({target:g}),1));var at=u.getId(g);u.dragManager.setParent(g,at,F,u.getId(F),V);var st={left:V.left-G.left,top:V.top-G.top};if(u.setPosition(g,st),u.dragManager.revalidateParent(g,at,V),p.updateConnectionsForGroup(t),u.revalidate(at),!m){var it={group:t,el:g,pos:st};I&&(it.sourceGroup=I),u.fire(L,it)}}}},this.removeFromGroup=function(t,g,m){if(t=this.getGroup(t),t){if(t.collapsed){var F=function(I,V){for(var G=0;G0?rt[0]:w},E=k.ghost===!0,B=E||k.constrain===!0,U=k.revert!==!1,Y=k.orphan===!0,n=k.prune===!0,o=k.dropOverride===!0,t=k.proxied!==!1,g=[];if(this.connections={source:[],target:[],internal:[]},this.getAnchor=function(rt,pt){return k.anchor||"Continuous"},this.getEndpoint=function(rt,pt){return k.endpoint||["Dot",{radius:10}]},this.collapsed=!1,k.draggable!==!1){var m={drag:function(){for(var rt=0;rt0&>0&&q0&&d[4]!==l[4]){var k=Math.min(M(d),M(l)),y=Math.min(C,k/2);d[2]-=_[0]*y,d[3]-=_[1]*y,l[0]+=x[0]*y,l[1]+=x[1]*y;var w=_[1]===x[0]&&x[0]===1||_[1]===x[0]&&x[0]===0&&_[0]!==x[1]||_[1]===x[0]&&x[0]===-1,p=l[1]>d[3]?1:-1,E=l[0]>d[2]?1:-1,B=p===E,U=B&&w||!B&&!w?l[0]:d[2],Y=B&&w||!B&&!w?d[3]:l[1];a.addSegment(P,Z,{x1:d[0],y1:d[1],x2:d[2],y2:d[3]}),a.addSegment(P,$,{r:y,x1:d[2],y1:d[3],x2:l[0],y2:l[1],cx:U,cy:Y,ac:w})}else{var n=d[2]===d[0]?0:d[2]>d[0]?r.lw/2:-(r.lw/2),o=d[3]===d[1]?0:d[3]>d[1]?r.lw/2:-(r.lw/2);a.addSegment(P,Z,{x1:d[0]-n,y1:d[1]-o,x2:d[2]+n,y2:d[3]+o})}d=l}l!=null&&a.addSegment(P,Z,{x1:l[0],y1:l[1],x2:l[2],y2:l[3]})};this.midpoint=i,this._compute=function(P,A){T=[],D=null,L=null;var r=function(){return[P.startStubX,P.startStubY,P.endStubX,P.endStubY]},d={perpendicular:r,orthogonal:r,opposite:function(o){var t=P,g=o==="x"?0:1,m={x:function(){return t.so[g]===1&&(t.startStubX>t.endStubX&&t.tx>t.startStubX||t.sx>t.endStubX&&t.tx>t.sx)||t.so[g]===-1&&(t.startStubXt.endStubY&&t.ty>t.startStubY||t.sy>t.endStubY&&t.ty>t.sy)||t.so[g]===-1&&(t.startStubYW[o][0],dt=m[o][it][0],lt=m[o][it][1],bt=g[o][it][rt];if(t.segment===bt[3]||t.segment===bt[2]&&pt)return F[o];if(t.segment===bt[2]&<=dt||t.segment===bt[1]&&!pt)return G[o];if(t.segment===bt[0]||t.segment===bt[1]&&pt)return V[o]},orthogonal:function(o,t,g,m,F){var I=P,V={x:I.so[0]===-1?Math.min(t,m):Math.max(t,m),y:I.so[1]===-1?Math.min(t,m):Math.max(t,m)}[o];return{x:[[V,g],[V,F],[m,F]],y:[[g,V],[F,V],[F,m]]}[o]},opposite:function(o,t,g,m){var F=P,I={x:"y",y:"x"}[o],V={x:"height",y:"width"}[o],G=F["is"+o.toUpperCase()+"GreaterThanStubTimes2"];if(A.sourceEndpoint.elementId===A.targetEndpoint.elementId){var W=g+(1-A.sourceEndpoint.anchor[I])*A.sourceInfo[V]+a.maxStub;return{x:[[t,W],[m,W]],y:[[W,t],[W,m]]}[o]}else{if(!G||F.so[_]===1&&t>m||F.so[_]===-1&&tm)return{x:[[p,F.sy],[p,F.ty]],y:[[F.sx,E],[F.tx,E]]}[o]}}},Y=U[P.anchorOrientation](P.sourceAxis,u,k,y,w);if(Y)for(var n=0;n=T?3:4},$=function(h,T,a,i,v,D,L,C,f){if(C<=f)return[h,T];if(a===1)return i[3]<=0&&v[3]>=1?[h+(i[2]<.5?-1*D:D),T]:i[2]>=1&&v[2]<=0?[h,T+(i[3]<.5?-1*L:L)]:[h+-1*D,T+-1*L];if(a===2)return i[3]>=1&&v[3]<=0?[h+(i[2]<.5?-1*D:D),T]:i[2]>=1&&v[2]<=0?[h,T+(i[3]<.5?-1*L:L)]:[h+D,T+-1*L];if(a===3)return i[3]>=1&&v[3]<=0?[h+(i[2]<.5?-1*D:D),T]:i[2]<=0&&v[2]>=1?[h,T+(i[3]<.5?-1*L:L)]:[h+-1*D,T+-1*L];if(a===4)return i[3]<=0&&v[3]>=1?[h+(i[2]<.5?-1*D:D),T]:i[2]<=0&&v[2]>=1?[h,T+(i[3]<.5?-1*L:L)]:[h+D,T+-1*L]},tt=function(h){h=h||{},this.type="StateMachine";var T=c.Connectors.AbstractBezierConnector.apply(this,arguments),a=h.curviness||10,i=h.margin||5,v=h.proximityLimit||80;h.orientation&&h.orientation;var D;this._computeBezier=function(L,C,f,e,j,M){var R=C.sourcePos[0]p?y.insertBefore(w,y.childNodes[p]):y.appendChild(w)};X.svg={node:N,attr:R,pos:P};var _=function(y){var w=y.pointerEventsSpec||"all",p={};c.jsPlumbUIComponent.apply(this,y.originalArgs),this.canvas=null,this.path=null,this.svg=null,this.bgCanvas=null;var E=y.cssClass+" "+(y.originalArgs[0].cssClass||""),B={style:"",width:0,height:0,"pointer-events":w,position:"absolute"};this.svg=N("svg",B),y.useDivWrapper?(this.canvas=c.createElement("div",{position:"absolute"}),X.sizeElement(this.canvas,0,0,1,1),this.canvas.className=E):(R(this.svg,{class:E}),this.canvas=this.svg),y._jsPlumb.appendElement(this.canvas,y.originalArgs[0].parent),y.useDivWrapper&&this.canvas.appendChild(this.svg);var U=[this.canvas];return this.getDisplayElements=function(){return U},this.appendDisplayElement=function(Y){U.push(Y)},this.paint=function(Y,n,o){if(Y!=null){var t=[this.x,this.y],g=[this.w,this.h],m;o!=null&&(o.xmin<0&&(t[0]+=o.xmin),o.ymin<0&&(t[1]+=o.ymin),g[0]=o.xmax+(o.xmin<0?-o.xmin:0),g[1]=o.ymax+(o.ymin<0?-o.ymin:0)),y.useDivWrapper?(X.sizeElement(this.canvas,t[0],t[1],g[0]>0?g[0]:1,g[1]>0?g[1]:1),t[0]=0,t[1]=0,m=P([0,0])):m=P([t[0],t[1]]),p.paint.apply(this,arguments),R(this.svg,{style:m,width:g[0]||1,height:g[1]||1})}},{renderer:p}};X.extend(_,c.jsPlumbUIComponent,{cleanup:function(y){y||this.typeId==null?(this.canvas&&(this.canvas._jsPlumb=null),this.svg&&(this.svg._jsPlumb=null),this.bgCanvas&&(this.bgCanvas._jsPlumb=null),this.canvas&&this.canvas.parentNode&&this.canvas.parentNode.removeChild(this.canvas),this.bgCanvas&&this.bgCanvas.parentNode&&this.canvas.parentNode.removeChild(this.canvas),this.svg=null,this.canvas=null,this.path=null,this.group=null,this._jsPlumb=null):(this.canvas&&this.canvas.parentNode&&this.canvas.parentNode.removeChild(this.canvas),this.bgCanvas&&this.bgCanvas.parentNode&&this.bgCanvas.parentNode.removeChild(this.bgCanvas))},reattach:function(y){var w=y.getContainer();this.canvas&&this.canvas.parentNode==null&&w.appendChild(this.canvas),this.bgCanvas&&this.bgCanvas.parentNode==null&&w.appendChild(this.bgCanvas)},setVisible:function(y){this.canvas&&(this.canvas.style.display=y?"block":"none")}}),c.ConnectorRenderers.svg=function(y){var w=this,p=_.apply(this,[{cssClass:y._jsPlumb.connectorClass,originalArgs:arguments,pointerEventsSpec:"none",_jsPlumb:y._jsPlumb}]);p.renderer.paint=function(E,B,U){var Y=w.getSegments(),n="",o=[0,0];if(U.xmin<0&&(o[0]=-U.xmin),U.ymin<0&&(o[1]=-U.ymin),Y.length>0){n=w.getPathData();var t={d:n,transform:"translate("+o[0]+","+o[1]+")","pointer-events":y["pointer-events"]||"visibleStroke"},g=null,m=[w.x,w.y,w.w,w.h];if(E.outlineStroke){var F=E.outlineWidth||1,I=E.strokeWidth+2*F;g=c.extend({},E),delete g.gradient,g.stroke=E.outlineStroke,g.strokeWidth=I,w.bgPath==null?(w.bgPath=N("path",t),c.addClass(w.bgPath,c.connectorOutlineClass),l(w.svg,w.bgPath,0)):R(w.bgPath,t),d(w.svg,w.bgPath,g,m,w)}w.path==null?(w.path=N("path",t),l(w.svg,w.path,E.outlineStroke?1:0)):R(w.path,t),d(w.svg,w.path,E,m,w)}}},X.extend(c.ConnectorRenderers.svg,_);var x=c.SvgEndpoint=function(y){var w=_.apply(this,[{cssClass:y._jsPlumb.endpointClass,originalArgs:arguments,pointerEventsSpec:"all",useDivWrapper:!0,_jsPlumb:y._jsPlumb}]);w.renderer.paint=function(p){var E=c.extend({},p);E.outlineStroke&&(E.stroke=E.outlineStroke),this.node==null?(this.node=this.makeNode(E),this.svg.appendChild(this.node)):this.updateNode!=null&&this.updateNode(this.node),d(this.svg,this.node,E,[this.x,this.y,this.w,this.h],this),P(this.node,[this.x,this.y])}.bind(this)};X.extend(x,_),c.Endpoints.svg.Dot=function(){c.Endpoints.Dot.apply(this,arguments),x.apply(this,arguments),this.makeNode=function(y){return N("circle",{cx:this.w/2,cy:this.h/2,r:this.radius})},this.updateNode=function(y){R(y,{cx:this.w/2,cy:this.h/2,r:this.radius})}},X.extend(c.Endpoints.svg.Dot,[c.Endpoints.Dot,x]),c.Endpoints.svg.Rectangle=function(){c.Endpoints.Rectangle.apply(this,arguments),x.apply(this,arguments),this.makeNode=function(y){return N("rect",{width:this.w,height:this.h})},this.updateNode=function(y){R(y,{width:this.w,height:this.h})}},X.extend(c.Endpoints.svg.Rectangle,[c.Endpoints.Rectangle,x]),c.Endpoints.svg.Image=c.Endpoints.Image,c.Endpoints.svg.Blank=c.Endpoints.Blank,c.Overlays.svg.Label=c.Overlays.Label,c.Overlays.svg.Custom=c.Overlays.Custom;var u=function(y,w){y.apply(this,w),c.jsPlumbUIComponent.apply(this,w),this.isAppendedAtTopLevel=!1,this.path=null,this.paint=function(E,B){if(E.component.svg&&B){this.path==null&&(this.path=N("path",{"pointer-events":"all"}),E.component.svg.appendChild(this.path),this.elementCreated&&this.elementCreated(this.path,E.component),this.canvas=E.component.svg);var U=w&&w.length===1&&w[0].cssClass||"",Y=[0,0];B.xmin<0&&(Y[0]=-B.xmin),B.ymin<0&&(Y[1]=-B.ymin),R(this.path,{d:p(E.d),class:U,stroke:E.stroke?E.stroke:null,fill:E.fill?E.fill:null,transform:"translate("+Y[0]+","+Y[1]+")"})}};var p=function(E){return isNaN(E.cxy.x)||isNaN(E.cxy.y)?"":"M"+E.hxy.x+","+E.hxy.y+" L"+E.tail[0].x+","+E.tail[0].y+" L"+E.cxy.x+","+E.cxy.y+" L"+E.tail[1].x+","+E.tail[1].y+" L"+E.hxy.x+","+E.hxy.y};this.transfer=function(E){E.canvas&&this.path&&this.path.parentNode&&(this.path.parentNode.removeChild(this.path),E.canvas.appendChild(this.path))}},k={cleanup:function(y){this.path!=null&&(y?this._jsPlumb.instance.removeElement(this.path):this.path.parentNode&&this.path.parentNode.removeChild(this.path))},reattach:function(y,w){this.path&&w.canvas&&w.canvas.appendChild(this.path)},setVisible:function(y){this.path!=null&&(this.path.style.display=y?"block":"none")}};X.extend(u,[c.jsPlumbUIComponent,c.Overlays.AbstractOverlay]),c.Overlays.svg.Arrow=function(){u.apply(this,[c.Overlays.Arrow,arguments])},X.extend(c.Overlays.svg.Arrow,[c.Overlays.Arrow,u],k),c.Overlays.svg.PlainArrow=function(){u.apply(this,[c.Overlays.PlainArrow,arguments])},X.extend(c.Overlays.svg.PlainArrow,[c.Overlays.PlainArrow,u],k),c.Overlays.svg.Diamond=function(){u.apply(this,[c.Overlays.Diamond,arguments])},X.extend(c.Overlays.svg.Diamond,[c.Overlays.Diamond,u],k),c.Overlays.svg.GuideLines=function(){var y=null,w=this,p,E;c.Overlays.GuideLines.apply(this,arguments),this.paint=function(U,Y){y==null&&(y=N("path"),U.connector.svg.appendChild(y),w.attachListeners(y,U.connector),w.attachListeners(y,w),p=N("path"),U.connector.svg.appendChild(p),w.attachListeners(p,U.connector),w.attachListeners(p,w),E=N("path"),U.connector.svg.appendChild(E),w.attachListeners(E,U.connector),w.attachListeners(E,w));var n=[0,0];Y.xmin<0&&(n[0]=-Y.xmin),Y.ymin<0&&(n[1]=-Y.ymin),R(y,{d:B(U.head,U.tail),stroke:"red",fill:null,transform:"translate("+n[0]+","+n[1]+")"}),R(p,{d:B(U.tailLine[0],U.tailLine[1]),stroke:"blue",fill:null,transform:"translate("+n[0]+","+n[1]+")"}),R(E,{d:B(U.headLine[0],U.headLine[1]),stroke:"green",fill:null,transform:"translate("+n[0]+","+n[1]+")"})};var B=function(U,Y){return"M "+U.x+","+U.y+" L"+Y.x+","+Y.y}},X.extend(c.Overlays.svg.GuideLines,c.Overlays.GuideLines)}.call(typeof window!="undefined"?window:jt),function(){var K=this,c=K.jsPlumb,X=K.jsPlumbUtil,Z=K.Katavorio,$=K.Biltong,tt=function(r){var d=r._mottle;return d||(d=r._mottle=new K.Mottle),d},h=function(r,d){d=d||"main";var l="_katavorio_"+d,_=r[l],x=r.getEventManager();return _||(_=new Z({bind:x.on,unbind:x.off,getSize:c.getSize,getConstrainingRectangle:function(u){return[u.parentNode.scrollWidth,u.parentNode.scrollHeight]},getPosition:function(u,k){var y=r.getOffset(u,k,u._katavorioDrag?u.offsetParent:null);return[y.left,y.top]},setPosition:function(u,k){u.style.left=k[0]+"px",u.style.top=k[1]+"px"},addClass:c.addClass,removeClass:c.removeClass,intersects:$.intersects,indexOf:function(u,k){return u.indexOf(k)},scope:r.getDefaultScope(),css:{noSelect:r.dragSelectClass,droppable:"jtk-droppable",draggable:"jtk-draggable",drag:"jtk-drag",selected:"jtk-drag-selected",active:"jtk-drag-active",hover:"jtk-drag-hover",ghostProxy:"jtk-ghost-proxy"}}),_.setZoom(r.getZoom()),r[l]=_,r.bind("zoom",_.setZoom)),_},T=function(r){var d=r.el._jsPlumbDragOptions,l=!0;return d.canDrag&&(l=d.canDrag()),l&&(this.setHoverSuspended(!0),this.select({source:r.el}).addClass(this.elementDraggingClass+" "+this.sourceElementDraggingClass,!0),this.select({target:r.el}).addClass(this.elementDraggingClass+" "+this.targetElementDraggingClass,!0),this.setConnectionBeingDragged(!0)),l},a=function(r){var d=this.getUIPosition(arguments,this.getZoom());if(d!=null){var l=r.el._jsPlumbDragOptions;this.draw(r.el,d,null,!0),l._dragging&&this.addClass(r.el,"jtk-dragged"),l._dragging=!0}},i=function(r){for(var d=r.selection,l,_=function(u){var k;u[1]!=null&&(l=this.getUIPosition([{el:u[2].el,pos:[u[1].left,u[1].top]}]),k=this.draw(u[2].el,l)),u[0]._jsPlumbDragOptions!=null&&delete u[0]._jsPlumbDragOptions._dragging,this.removeClass(u[0],"jtk-dragged"),this.select({source:u[2].el}).removeClass(this.elementDraggingClass+" "+this.sourceElementDraggingClass,!0),this.select({target:u[2].el}).removeClass(this.elementDraggingClass+" "+this.targetElementDraggingClass,!0),r.e._drawResult=r.e._drawResult||{c:[],e:[],a:[]},Array.prototype.push.apply(r.e._drawResult.c,k.c),Array.prototype.push.apply(r.e._drawResult.e,k.e),Array.prototype.push.apply(r.e._drawResult.a,k.a),this.getDragManager().dragEnded(u[2].el)}.bind(this),x=0;x0?r.touches:r.changedTouches&&r.changedTouches.length>0?r.changedTouches:r.targetTouches&&r.targetTouches.length>0?r.targetTouches:[r]},M=function(r){var d={},l=[],_={},x={},u={};this.register=function(k){var y=r.getId(k),w;d[y]||(d[y]=k,l.push(k),_[y]={});var p=function(E){if(E){for(var B=0;B0){w||(w=r.getOffset(k));var n=r.getOffset(U);_[y][Y]={id:Y,offset:{left:n.left-w.left,top:n.top-w.top}},u[Y]=y}p(E.childNodes[B])}}};p(k)},this.updateOffsets=function(k,y){if(k!=null){y=y||{};var w=jsPlumb.getElement(k),p=r.getId(w),E=_[p],B;if(E){for(var U in E)if(E.hasOwnProperty(U)){var Y=jsPlumb.getElement(U),n=y[U]||r.getOffset(Y);if(Y.offsetParent==null&&_[p][U]!=null)continue;B||(B=r.getOffset(w)),_[p][U]={id:U,offset:{left:n.left-B.left,top:n.top-B.top}},u[U]=p}}}},this.endpointAdded=function(k,y){y=y||r.getId(k);var w=document.body,p=k.parentNode;for(x[y]=x[y]?x[y]+1:1;p!=null&&p!==w;){var E=r.getId(p,null,!0);if(E&&d[E]){var B=r.getOffset(p);if(_[E][y]==null){var U=r.getOffset(k);_[E][y]={id:y,offset:{left:U.left-B.left,top:U.top-B.top}},u[y]=E}break}p=p.parentNode}},this.endpointDeleted=function(k){if(x[k.elementId]&&(x[k.elementId]--,x[k.elementId]<=0))for(var y in _)_.hasOwnProperty(y)&&_[y]&&(delete _[y][k.elementId],delete u[k.elementId])},this.changeId=function(k,y){_[y]=_[k],_[k]={},u[y]=u[k],u[k]=null},this.getElementsForDraggable=function(k){return _[k]},this.elementRemoved=function(k){var y=u[k];y&&(_[y]&&delete _[y][k],delete u[k])},this.reset=function(){d={},l=[],_={},x={}},this.dragEnded=function(k){if(k.offsetParent!=null){var y=r.getId(k),w=u[y];w&&this.updateOffsets(w)}},this.setParent=function(k,y,w,p,E){var B=u[y];_[p]||(_[p]={});var U=r.getOffset(w),Y=E||r.getOffset(k);B&&_[B]&&delete _[B][y],_[p][y]={id:y,offset:{left:Y.left-U.left,top:Y.top-U.top}},u[y]=p},this.clearParent=function(k,y){var w=u[y];w&&(delete _[w][y],delete u[y])},this.revalidateParent=function(k,y,w){var p=u[y];if(p){var E={};E[y]=w,this.updateOffsets(p,E),r.revalidate(p)}},this.getDragAncestor=function(k){var y=jsPlumb.getElement(k),w=r.getId(y),p=u[w];return p?jsPlumb.getElement(p):null}},R=function(r,d,l){d=X.fastTrim(d),typeof r.className.baseVal!="undefined"?r.className.baseVal=d:r.className=d;try{var _=r.classList;if(_!=null){for(;_.length>0;)_.remove(_.item(0));for(var x=0;x0||w.scrollLeft>0)&&(_.left-=w.scrollLeft,_.top-=w.scrollTop)}.bind(this);x!=null;)_.left+=x.offsetLeft,_.top+=x.offsetTop,u(x),x=d?x.offsetParent:x.offsetParent===l?null:x.offsetParent;if(l!=null&&!d&&(l.scrollTop>0||l.scrollLeft>0)){var k=r.offsetParent!=null?this.getStyle(r.offsetParent,"position"):"static",y=this.getStyle(r,"position");y!=="absolute"&&y!=="fixed"&&k!=="absolute"&&k!=="fixed"&&(_.left-=l.scrollLeft,_.top-=l.scrollTop)}return _},getPositionOnElement:function(r,d,l){var _=typeof d.getBoundingClientRect!="undefined"?d.getBoundingClientRect():{left:0,top:0,width:0,height:0},x=document.body,u=document.documentElement,k=window.pageYOffset||u.scrollTop||x.scrollTop,y=window.pageXOffset||u.scrollLeft||x.scrollLeft,w=u.clientTop||x.clientTop||0,p=u.clientLeft||x.clientLeft||0,E=0,B=0,U=_.top+k-w+E*l,Y=_.left+y-p+B*l,n=jsPlumb.pageLocation(r),o=_.width||d.offsetWidth*l,t=_.height||d.offsetHeight*l,g=(n[0]-Y)/o,m=(n[1]-U)/t;return[g,m]},getAbsolutePosition:function(r){var d=function(l){var _=r.style[l];if(_)return parseFloat(_.substring(0,_.length-2))};return[d("left"),d("top")]},setAbsolutePosition:function(r,d,l,_){l?this.animate(r,{left:"+="+(d[0]-l[0]),top:"+="+(d[1]-l[1])},_):(r.style.left=d[0]+"px",r.style.top=d[1]+"px")},getSize:function(r){return[r.offsetWidth,r.offsetHeight]},getWidth:function(r){return r.offsetWidth},getHeight:function(r){return r.offsetHeight},getRenderMode:function(){return"svg"},draggable:function(r,d){var l;return r=X.isArray(r)||r.length!=null&&!X.isString(r)?r:[r],Array.prototype.slice.call(r).forEach(function(_){l=this.info(_),l.el&&this._initDraggableIfNecessary(l.el,!0,d,l.id,!0)}.bind(this)),this},snapToGrid:function(r,d,l){var _=[],x=function(y){var w=this.info(y);if(w.el!=null&&w.el._katavorioDrag){var p=w.el._katavorioDrag.snap(d,l);this.revalidate(w.el),_.push([w.el,p])}}.bind(this);if(arguments.length===1||arguments.length===3)x(r,d,l);else{var u=this.getManagedElements();for(var k in u)x(k,arguments[0],arguments[1])}return _},initDraggable:function(r,d,l){h(this,l).draggable(r,d),r._jsPlumbDragOptions=d},destroyDraggable:function(r,d){h(this,d).destroyDraggable(r),r._jsPlumbDragOptions=null,r._jsPlumbRelatedElement=null},unbindDraggable:function(r,d,l,_){h(this,_).destroyDraggable(r,d,l)},setDraggable:function(r,d){return jsPlumb.each(r,function(l){this.isDragSupported(l)&&(this._draggableStates[this.getAttribute(l,"id")]=d,this.setElementDraggable(l,d))}.bind(this))},_draggableStates:{},toggleDraggable:function(r){var d;return jsPlumb.each(r,function(l){var _=this.getAttribute(l,"id");return d=this._draggableStates[_]==null?!1:this._draggableStates[_],d=!d,this._draggableStates[_]=d,this.setDraggable(l,d),d}.bind(this)),d},_initDraggableIfNecessary:function(r,d,l,_,x){if(!jsPlumb.headless){var u=d==null?!1:d;if(u&&jsPlumb.isDragSupported(r,this)){var k=l||this.Defaults.DragOptions;if(k=jsPlumb.extend({},k),jsPlumb.isAlreadyDraggable(r,this))l.force&&this.initDraggable(r,k);else{var y=jsPlumb.dragEvents.drag,w=jsPlumb.dragEvents.stop,p=jsPlumb.dragEvents.start;this.manage(_,r),k[p]=X.wrap(k[p],T.bind(this)),k[y]=X.wrap(k[y],a.bind(this)),k[w]=X.wrap(k[w],i.bind(this));var E=this.getId(r);this._draggableStates[E]=!0;var B=this._draggableStates[E];k.disabled=B==null?!1:!B,this.initDraggable(r,k),this.getDragManager().register(r),x&&this.fire("elementDraggable",{el:r,options:k})}}}},animationSupported:!0,getElement:function(r){return r==null?null:(r=typeof r=="string"?r:r.tagName==null&&r.length!=null&&r.enctype==null?r[0]:r,typeof r=="string"?document.getElementById(r):r)},removeElement:function(r){h(this).elementRemoved(r),this.getEventManager().remove(r)},doAnimate:function(r,d,l){l=l||{};var _=this.getOffset(r),x=v(_,d),u=x[0]-_.left,k=x[1]-_.top,y=l.duration||250,w=15,p=y/w,E=w/y*u,B=w/y*k,U=0,Y=setInterval(function(){c.setPosition(r,{left:_.left+E*(U+1),top:_.top+B*(U+1)}),l.step!=null&&l.step(U,Math.ceil(p)),U++,U>=p&&(window.clearInterval(Y),l.complete!=null&&l.complete())},w)},destroyDroppable:function(r,d){h(this,d).destroyDroppable(r)},unbindDroppable:function(r,d,l,_){h(this,_).destroyDroppable(r,d,l)},droppable:function(r,d){r=X.isArray(r)||r.length!=null&&!X.isString(r)?r:[r];var l;return d=d||{},d.allowLoopback=!1,Array.prototype.slice.call(r).forEach(function(_){l=this.info(_),l.el&&this.initDroppable(l.el,d)}.bind(this)),this},initDroppable:function(r,d,l){h(this,l).droppable(r,d)},isAlreadyDraggable:function(r){return r._katavorioDrag!=null},isDragSupported:function(r,d){return!0},isDropSupported:function(r,d){return!0},isElementDraggable:function(r){return r=c.getElement(r),r._katavorioDrag&&r._katavorioDrag.isEnabled()},getDragObject:function(r){return r[0].drag.getDragElement()},getDragScope:function(r){return r._katavorioDrag&&r._katavorioDrag.scopes.join(" ")||""},getDropEvent:function(r){return r[0].e},getUIPosition:function(r,d){var l=r[0].el;if(l.offsetParent==null)return null;var _=r[0].finalPos||r[0].pos,x={left:_[0],top:_[1]};if(l._katavorioDrag&&l.offsetParent!==this.getContainer()){var u=this.getOffset(l.offsetParent);x.left+=u.left,x.top+=u.top}return x},setDragFilter:function(r,d,l){r._katavorioDrag&&r._katavorioDrag.setFilter(d,l)},setElementDraggable:function(r,d){r=c.getElement(r),r._katavorioDrag&&r._katavorioDrag.setEnabled(d)},setDragScope:function(r,d){r._katavorioDrag&&r._katavorioDrag.k.setDragScope(r,d)},setDropScope:function(r,d){r._katavorioDrop&&r._katavorioDrop.length>0&&r._katavorioDrop[0].k.setDropScope(r,d)},addToPosse:function(r,d){var l=Array.prototype.slice.call(arguments,1),_=h(this);c.each(r,function(x){x=[c.getElement(x)],x.push.apply(x,l),_.addToPosse.apply(_,x)})},setPosse:function(r,d){var l=Array.prototype.slice.call(arguments,1),_=h(this);c.each(r,function(x){x=[c.getElement(x)],x.push.apply(x,l),_.setPosse.apply(_,x)})},removeFromPosse:function(r,d){var l=Array.prototype.slice.call(arguments,1),_=h(this);c.each(r,function(x){x=[c.getElement(x)],x.push.apply(x,l),_.removeFromPosse.apply(_,x)})},removeFromAllPosses:function(r){var d=h(this);c.each(r,function(l){d.removeFromAllPosses(c.getElement(l))})},setPosseState:function(r,d,l){var _=h(this);c.each(r,function(x){_.setPosseState(c.getElement(x),d,l)})},dragEvents:{start:"start",stop:"stop",drag:"drag",step:"step",over:"over",out:"out",drop:"drop",complete:"complete",beforeStart:"beforeStart"},animEvents:{step:"step",complete:"complete"},stopDrag:function(r){r._katavorioDrag&&r._katavorioDrag.abort()},addToDragSelection:function(r){var d=this.getElement(r);d!=null&&(d._isJsPlumbGroup||d._jsPlumbGroup==null)&&h(this).select(r)},removeFromDragSelection:function(r){h(this).deselect(r)},getDragSelection:function(){return h(this).getSelection()},clearDragSelection:function(){h(this).deselectAll()},trigger:function(r,d,l,_){this.getEventManager().trigger(r,d,l,_)},doReset:function(){for(var r in this)r.indexOf("_katavorio_")===0&&this[r].reset()},getEventManager:function(){return tt(this)},on:function(r,d,l){return this.getEventManager().on.apply(this,arguments),this},off:function(r,d,l){return this.getEventManager().off.apply(this,arguments),this}});var A=function(r){var d=function(){/complete|loaded|interactive/.test(document.readyState)&&typeof document.body!="undefined"&&document.body!=null?r():setTimeout(d,9)};d()};A(c.init)}.call(typeof window!="undefined"?window:jt)})(Pe);const qe=[{title:"\u5F55\u50CF",icon:"el-icon-video-camera-solid",isOpen:!0,id:1,children:[{icon:"el-icon-s-custom",name:"\u5C0F\u7C73",id:11,form:[{type:"input",label:"\u6D3B\u52A8\u540D\u79F01",prop:"name"}]},{icon:"el-icon-s-opportunity",name:"\u8D85\u5C0F\u7C73",id:12,form:[{type:"input",label:"\u6D3B\u52A8\u540D\u79F02",prop:"name"}]},{icon:"el-icon-s-data",name:"\u4E2D\u7C73",id:13,form:[{type:"input",label:"\u6D3B\u52A8\u540D\u79F03",prop:"name"}]},{icon:"el-icon-s-check",name:"\u5927\u7C73",id:14,form:[{type:"input",label:"\u6D3B\u52A8\u540D\u79F04",prop:"name"}]},{icon:"el-icon-s-grid",name:"\u8D85\u5927\u7C73",id:15,form:[{type:"input",label:"\u6D3B\u52A8\u540D\u79F05",prop:"name"}]},{icon:"el-icon-menu",name:"\u7D2B\u7C73",id:16,form:[{type:"input",label:"\u6D3B\u52A8\u540D\u79F06",prop:"name"}]}]},{title:"\u6587\u672C",isOpen:!0,icon:"el-icon-s-order",id:2,children:[{icon:"el-icon-share",name:"\u7EA2\u7C73",id:21,form:[{type:"input",label:"\u6D3B\u52A8\u540D\u79F07",prop:"name"}]},{icon:"el-icon-s-shop",name:"\u7C89\u7C73",id:22,form:[{type:"input",label:"\u6D3B\u52A8\u540D\u79F08",prop:"name"}]},{icon:"el-icon-s-marketing",name:"\u9ED1\u7C73",id:23,form:[{type:"input",label:"\u6D3B\u52A8\u540D\u79F09",prop:"name"}]}]},{title:"\u7535\u89C6",isOpen:!0,icon:"el-icon-s-platform",id:3,children:[{icon:"el-icon-s-flag",name:"\u767D\u7C73",id:31,form:[{type:"input",label:"\u6D3B\u52A8\u540D\u79F010",prop:"name"}]},{icon:"el-icon-s-comment",name:"\u7EFF\u7C73",id:32,form:[{type:"input",label:"\u6D3B\u52A8\u540D\u79F011",prop:"name"}]},{icon:"iconfont icon-fangkuang",name:"\u84DD\u7C73",id:33,form:[{type:"input",label:"\u6D3B\u52A8\u540D\u79F012",prop:"name"}]}]}],Ke={Anchors:["Top","TopCenter","TopRight","TopLeft","Right","RightMiddle","Bottom","BottomCenter","BottomRight","BottomLeft","Left","LeftMiddle"],Container:"workflow-right",Connector:["Bezier",{curviness:100}],ConnectionsDetachable:!1,DeleteEndpointsOnDetach:!1,Endpoint:["Blank",{Overlays:""}],EndpointStyle:{fill:"#1879ffa1",outlineWidth:1},LogEnabled:!0,PaintStyle:{stroke:"#E0E3E7",strokeWidth:1,outlineStroke:"transparent",outlineWidth:10},DragOptions:{cursor:"pointer",zIndex:2e3},Overlays:[["Arrow",{width:10,length:8,location:1,direction:1,foldback:.623}],["Label",{label:"",location:.5,cssClass:"aLabel"}]],RenderMode:"svg",HoverPaintStyle:{stroke:"#b0b2b5",strokeWidth:1},EndpointHoverStyle:{fill:"red"},Scope:"jsPlumb_DefaultScope"},$e={filter:".workflow-icon-drag",filterExclude:!1,anchor:"Continuous",allowLoopback:!0,maxConnections:-1},Ze={filter:".workflow-icon-drag",filterExclude:!1,anchor:"Continuous",allowLoopback:!0,dropOptions:{hoverClass:"ef-drop-hover"}};const Je=Le({name:"pagesWorkflow",components:{Contextmenu:We,Drawer:ze},setup(){const xt=ve(),K=ve(),c=ve(),X=Ve(),Z=Ie({leftNavList:[],jsPlumb:null,nodeList:[],nodeIndex:null,dropdownNode:{x:"",y:""},dropdownLine:{x:"",y:""},jsplumbDefaults:Ke,jsplumbMakeSource:$e,jsplumbMakeMakeTarget:Ze}),$=ke(()=>{let{isTagsview:f}=X.state.themeConfig.themeConfig,{isTagsViewCurrenFull:e}=X.state.tagsViewRoutes;return e?"30px":f?"114px":"80px"}),tt=ke(()=>{let{globalTitle:f}=X.state.themeConfig.themeConfig;return`${f}\u5DE5\u4F5C\u6D41`}),h=()=>{Z.leftNavList=qe},T=()=>{Z.leftNavList.forEach((f,e)=>{Ye.create(document.getElementById(`left${e}`),{group:{name:"PandaUi-1",pull:"clone",put:!1},animation:0,sort:!1,draggable:".workflow-left-item",forceFallback:!0,onEnd:function(j){const{name:M,icon:R}=j.clone.dataset,{layerX:N,layerY:P,clientX:A,clientY:r}=j.originalEvent,d=document.querySelector("#workflow-right"),{x:l,y:_,width:x,height:u}=d.getBoundingClientRect();if(Ax+l||r<_||_>_+u)Ge({type:"warning",message:"\u8BF7\u628A\u8282\u70B9\u62D6\u5165\u5230\u753B\u5E03\u4E2D"});else{const k=Math.random().toString(36).substr(2,12),y={nodeId:k,left:`${N-40}px`,top:`${P-15}px`,class:"workflow-right-clone",cloneItem:j.clone.innerHTML,name:M,icon:R};Z.nodeList.push(y),Be(()=>{Z.jsPlumb.makeSource(k,Z.jsplumbMakeSource),Z.jsPlumb.makeTarget(k,Z.jsplumbMakeMakeTarget),Z.jsPlumb.draggable(k,{containment:"parent",stop:w=>{Z.nodeList.forEach(p=>{p.nodeId===w.el.id&&(p.left=`${w.pos[0]}px`,p.top=`${w.pos[1]}px`)})}})})}}})})},a=f=>{f.isOpen=!f.isOpen},i=f=>{Z.nodeIndex=f},v=(f,e,j)=>{Z.nodeIndex=e;const{clientX:M,clientY:R}=j;Z.dropdownNode.x=M,Z.dropdownNode.y=R,f.index=e,f.type="node",xt.value.openContextmenu(f)},D=f=>{const{index:e,contextMenuClickId:j,name:M}=f;Z.leftNavList.map(R=>{R.children.map(N=>{N.name===M&&(f.form=N.form)})}),j===0?Z.nodeList.splice(e,1):j===1&&c.value.open(f)},L=(f,e)=>{const{contextMenuClickId:j}=f;Z.leftNavList.map(M=>{M.children.map(R=>{R.name===name&&(f.form=R.form)})}),j===0?Z.jsPlumb.deleteConnection(e):j===1&&c.value.open(f)},C=()=>{Pe.jsPlumb.ready(()=>{Z.jsPlumb=Pe.jsPlumb.getInstance({detachable:!1,Container:"workflow-right"}),Z.jsPlumb.importDefaults(Z.jsplumbDefaults),Z.jsPlumb.setSuspendDrawing(!1,!0),Z.jsPlumb.bind("contextmenu",(f,e)=>{e.preventDefault();const{clientX:j,clientY:M}=e;Z.dropdownLine.x=j,Z.dropdownLine.y=M;const R=Z.nodeList.find(P=>P.nodeId===f.targetId),N=Z.nodeList.findIndex(P=>P.nodeId===f.targetId);R.index=N,R.type="line",K.value.openContextmenu(R,f)}),Z.jsPlumb.bind("connection",f=>{const{sourceId:e,targetId:j}=f,M=Z.jsPlumb.getConnections({source:e,target:j})[0];M.setLabel("\u540C\u610F"),M.endpointStyle=[{fill:"#f35958"}],M.style.color="red"})})};return Fe(async()=>{await h(),T(),C()}),Ae({setViewHeight:$,setToolTitle:tt,onTitleClick:a,onItemCloneClick:i,onContextmenu:v,onCurrentNodeClick:D,onCurrentLineClick:L,contextmenuNodeRef:xt,contextmenuLineRef:K,drawerRef:c},Re(Z))}}),Qe={class:"workflow-form-container"},tn={class:"workflow"},en={class:"workflow-tool"},nn={class:"pl15"},sn=He('
',1),rn={class:"workflow-content"},on={id:"workflow-left"},an=["id"],ln=["onClick"],un=["data-name","data-icon"],hn={class:"workflow-left-item-icon"},cn={class:"font10 pl5 name"},fn={id:"workflow-right"},dn=["id","onClick","onContextmenu"],pn={class:"workflow-left-item-icon"},gn={class:"font10 pl5 name"};function vn(xt,K,c,X,Z,$){const tt=me("el-scrollbar"),h=me("Contextmenu"),T=me("Drawer");return Jt(),Zt("div",Qe,[Lt("div",{class:"layout-view-bg-white flex",style:_e({height:`calc(100vh - ${xt.setViewHeight}`})},[Lt("div",tn,[Lt("div",en,[Lt("div",nn,pe(xt.setToolTitle),1),sn]),Lt("div",rn,[Lt("div",on,[ge(tt,null,{default:Ne(()=>[(Jt(!0),Zt(be,null,ye(xt.leftNavList,(a,i)=>(Jt(),Zt("div",{id:`left${i}`,key:i,style:_e({height:a.isOpen?"auto":"50px",overflow:"hidden"}),class:"workflow-left-id"},[Lt("div",{class:"workflow-left-title",onClick:v=>xt.onTitleClick(a)},[Lt("span",null,pe(a.title),1),Lt("i",{class:re(a.isOpen?"el-icon-arrow-down":"el-icon-arrow-right")},null,2)],8,ln),(Jt(!0),Zt(be,null,ye(a.children,(v,D)=>(Jt(),Zt("div",{class:"workflow-left-item",key:D,"data-name":v.name,"data-icon":v.icon},[Lt("div",hn,[Lt("i",{class:re([v.icon,"workflow-icon-drag"])},null,2),Lt("div",cn,pe(v.name),1)])],8,un))),128))],12,an))),128))]),_:1})]),Lt("div",fn,[(Jt(!0),Zt(be,null,ye(xt.nodeList,(a,i)=>(Jt(),Zt("div",{key:i,id:a.nodeId,class:re(a.class),style:_e({left:a.left,top:a.top}),onClick:v=>xt.onItemCloneClick(i),onContextmenu:Ue(v=>xt.onContextmenu(a,i,v),["prevent"])},[Lt("div",{class:re(["workflow-right-box",{"workflow-right-active":xt.nodeIndex===i}])},[Lt("div",pn,[Lt("i",{class:re(["workflow-icon-drag",a.icon])},null,2),Lt("div",gn,pe(a.name),1)])],2)],46,dn))),128))])])])],4),ge(h,{dropdown:xt.dropdownNode,ref:"contextmenuNodeRef",onCurrent:xt.onCurrentNodeClick},null,8,["dropdown","onCurrent"]),ge(h,{dropdown:xt.dropdownLine,ref:"contextmenuLineRef",onCurrent:xt.onCurrentLineClick},null,8,["dropdown","onCurrent"]),ge(T,{ref:"drawerRef"},null,512)])}var En=Xe(Je,[["render",vn],["__scopeId","data-v-ba20bb20"]]);export{En as default};