Home
last modified time | relevance | path

Searched refs:sourceRef (Results 1 – 6 of 6) sorted by relevance

/plugin/bpmnioeditor/vendor/bpmnio-js/
H A Dbpmn-modeler.production.min.js34sourceRef.default!==n&&(Ar(n.sourceRef,"bpmn:ExclusiveGateway")||Ar(n.sourceRef,"bpmn:InclusiveGat…
H A Dbpmn-modeler.development.js35435 if (businessObject.sourceRef.default !== businessObject &&
35438 is$1(businessObject.sourceRef, 'bpmn:ComplexGateway') ||
35439 is$1(businessObject.sourceRef, 'bpmn:Activity'))) {
35466 if ((is$1(businessObject.sourceRef, 'bpmn:ExclusiveGateway') ||
35467 is$1(businessObject.sourceRef, 'bpmn:InclusiveGateway') ||
35468 is$1(businessObject.sourceRef, 'bpmn:ComplexGateway') ||
35469 is$1(businessObject.sourceRef, 'bpmn:Activity')) &&
35470 businessObject.sourceRef.default === businessObject) {
48700 if (businessObject.sourceRef !== newSource) {
48702 … remove(businessObject.sourceRef && businessObject.sourceRef.get('outgoing'), businessObject);
[all …]
/plugin/bpmnio/vendor/bpmn-js/dist/
H A Dbpmn-modeler.production.min.js7 */var Pt=/,?([a-z]),?/gi,At=parseFloat,Mt=Math,Tt=Mt.PI,Dt=Mt.min,Bt=Mt.max,Nt=Mt.pow,jt=Mt.abs,Ot=/([a-z])[\s,]*((-?\d*\.?\d*(?:e[-+]?\d+)?[\s]*,?[\s]*)+)/gi,Lt=/(-?\d*\.?\d*(?:e[-+]?\d+)?)[\s]*,?[\s]*/gi,$t=Array.isArray||function(e){return e instanceof Array};function It(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function Ft(e){if("function"==typeof e||Object(e)!==e)return e;var t=new e.constructor;for(var n in e)It(e,n)&&(t[n]=Ft(e[n]));return t}function zt(e){var t=zt.ps=zt.ps||{};return t[e]?t[e].sleep=100:t[e]={sleep:100},setTimeout((function(){for(var n in t)It(t,n)&&n!=e&&(t[n].sleep--,!t[n].sleep&&delete t[n])})),t[e]}function Ht(e,t,n,i){return 1===arguments.length&&(t=e.y,n=e.width,i=e.height,e=e.x),{x:e,y:t,width:n,height:i,x2:e+n,y2:t+i}}function Vt(){return this.join(",").replace(Pt,"$1")}function Gt(e){var t=Ft(e);return t.toString=Vt,t}function Wt(e,t,n,i,r,o,a,s,c){var p=1-c,l=Nt(p,3),u=Nt(p,2),h=c*c*c,d=l*t+3*u*c*i+3*p*c*c*o+h*s;return{x:Zt(l*e+3*u*c*n+3*p*c*c*r+h*a),y:Zt(d)}}function Ut(e){var t=function(e,t,n,i,r,o,a,s){for(var c,p,l,u,h,d,f,m,v=[],y=[[],[]],g=0;g<2;++g)if(0==g?(p=6*e-12*n+6*r,c=-3*e+9*n-9*r+3*a,l=3*n-3*e):(p=6*t-12*i+6*o,c=-3*t+9*i-9*o+3*s,l=3*i-3*t),jt(c)<1e-12){if(jt(p)<1e-12)continue;0<(u=-l/p)&&u<1&&v.push(u)}else f=p*p-4*l*c,m=Mt.sqrt(f),f<0||(0<(h=(-p+m)/(2*c))&&h<1&&v.push(h),0<(d=(-p-m)/(2*c))&&d<1&&v.push(d));var b,_=v.length,x=_;for(;_--;)b=1-(u=v[_]),y[0][_]=b*b*b*e+3*b*b*u*n+3*b*u*u*r+u*u*u*a,y[1][_]=b*b*b*t+3*b*b*u*i+3*b*u*u*o+u*u*u*s;return y[0][x]=e,y[1][x]=t,y[0][x+1]=a,y[1][x+1]=s,y[0].length=y[1].length=x+2,{x0:Dt(...y[0]),y0:Dt(...y[1]),x1:Bt(...y[0]),y1:Bt(...y[1])}}(...e);return Ht(t.x0,t.y0,t.x1-t.x0,t.y1-t.y0)}function qt(e,t,n){return t>=e.x&&t<=e.x+e.width&&n>=e.y&&n<=e.y+e.height}function Kt(e,t,n,i,r){return e*(e*(-3*t+9*n-9*i+3*r)+6*t-12*n+6*i)-3*t+3*n}function Yt(e,t,n,i,r,o,a,s,c){null==c&&(c=1);for(var p=(c=c>1?1:c<0?0:c)/2,l=[-.1252,.1252,-.3678,.3678,-.5873,.5873,-.7699,.7699,-.9041,.9041,-.9816,.9816],u=[.2491,.2491,.2335,.2335,.2032,.2032,.1601,.1601,.1069,.1069,.0472,.0472],h=0,d=0;d<12;d++){var f=p*l[d]+p,m=Kt(f,e,n,r,a),v=Kt(f,t,i,o,s),y=m*m+v*v;h+=u[d]*Mt.sqrt(y)}return p*h}function Xt(e,t,n,i,r,o,a,s){if(!(Bt(e,n)<Dt(r,a)||Dt(e,n)>Bt(r,a)||Bt(t,i)<Dt(o,s)||Dt(t,i)>Bt(o,s))){var c=(e*i-t*n)*(o-s)-(t-i)*(r*s-o*a),p=(e-n)*(o-s)-(t-i)*(r-a);if(p){var l=Zt(((e*i-t*n)*(r-a)-(e-n)*(r*s-o*a))/p),u=Zt(c/p),h=+l.toFixed(2),d=+u.toFixed(2);if(!(h<+Dt(e,n).toFixed(2)||h>+Bt(e,n).toFixed(2)||h<+Dt(r,a).toFixed(2)||h>+Bt(r,a).toFixed(2)||d<+Dt(t,i).toFixed(2)||d>+Bt(t,i).toFixed(2)||d<+Dt(o,s).toFixed(2)||d>+Bt(o,s).toFixed(2)))return{x:l,y:u}}}}function Zt(e){return Math.round(1e11*e)/1e11}function Qt(e,t,n){if(!function(e,t){return e=Ht(e),qt(t=Ht(t),e.x,e.y)||qt(t,e.x2,e.y)||qt(t,e.x,e.y2)||qt(t,e.x2,e.y2)||qt(e,t.x,t.y)||qt(e,t.x2,t.y)||qt(e,t.x,t.y2)||qt(e,t.x2,t.y2)||(e.x<t.x2&&e.x>t.x||t.x<e.x2&&t.x>e.x)&&(e.y<t.y2&&e.y>t.y||t.y<e.y2&&t.y>e.y)}(Ut(e),Ut(t)))return n?0:[];for(var i=Yt(...e),r=Yt(...t),o=tn(e)?1:~~(i/5)||1,a=tn(t)?1:~~(r/5)||1,s=[],c=[],p={},l=n?0:[],u=0;u<o+1;u++){var h=Wt(...e,u/o);s.push({x:h.x,y:h.y,t:u/o})}for(u=0;u<a+1;u++)h=Wt(...t,u/a),c.push({x:h.x,y:h.y,t:u/a});for(u=0;u<o;u++)for(var d=0;d<a;d++){var f,m=s[u],v=s[u+1],y=c[d],g=c[d+1],b=jt(v.x-m.x)<.01?"y":"x",_=jt(g.x-y.x)<.01?"y":"x",x=Xt(m.x,m.y,v.x,v.y,y.x,y.y,g.x,g.y);if(x){if(p[f=x.x.toFixed(9)+"#"+x.y.toFixed(9)])continue;p[f]=!0;var w=m.t+jt((x[b]-m[b])/(v[b]-m[b]))*(v.t-m.t),E=y.t+jt((x[_]-y[_])/(g[_]-y[_]))*(g.t-y.t);w>=0&&w<=1&&E>=0&&E<=1&&(n?l++:l.push({x:x.x,y:x.y,t1:w,t2:E}))}}return l}function Jt(e,t,n){e=an(e),t=an(t);for(var i,r,o,a,s,c,p,l,u,h,d=n?0:[],f=0,m=e.length;f<m;f++){var v=e[f];if("M"==v[0])i=s=v[1],r=c=v[2];else{"C"==v[0]?(i=(u=[i,r,...v.slice(1)])[6],r=u[7]):(u=[i,r,i,r,s,c,s,c],i=s,r=c);for(var y=0,g=t.length;y<g;y++){var b=t[y];if("M"==b[0])o=p=b[1],a=l=b[2];else{"C"==b[0]?(o=(h=[o,a,...b.slice(1)])[6],a=h[7]):(h=[o,a,o,a,p,l,p,l],o=p,a=l);var _=Qt(u,h,n);if(n)d+=_;else{for(var x=0,w=_.length;x<w;x++)_[x].segment1=f,_[x].segment2=y,_[x].bez1=u,_[x].bez2=h;d=d.concat(_)}}}}}return d}function en(e){var t=zt(e);if(t.abs)return Gt(t.abs);if($t(e)&&$t(e&&e[0])||(e=function(e){if(!e)return null;var t=zt(e);if(t.arr)return Ft(t.arr);var n={a:7,c:6,h:1,l:2,m:2,q:4,s:4,t:2,v:1,z:0},i=[];return $t(e)&&$t(e[0])&&(i=Ft(e)),i.length||String(e).replace(Ot,(function(e,t,r){var o=[],a=t.toLowerCase();for(r.replace(Lt,(function(e,t){t&&o.push(+t)})),"m"==a&&o.length>2&&(i.push([t,...o.splice(0,2)]),a="l",t="m"==t?"l":"L");o.length>=n[a]&&(i.push([t,...o.splice(0,n[a])]),n[a]););})),i.toString=zt.toString,t.arr=Ft(i),i}(e)),!e||!e.length)return[["M",0,0]];var n,i=[],r=0,o=0,a=0,s=0,c=0;"M"==e[0][0]&&(a=r=+e[0][1],s=o=+e[0][2],c++,i[0]=["M",r,o]);for(var p,l,u=c,h=e.length;u<h;u++){if(i.push(p=[]),(n=(l=e[u])[0])!=n.toUpperCase())switch(p[0]=n.toUpperCase(),p[0]){case"A":p[1]=l[1],p[2]=l[2],p[3]=l[3],p[4]=l[4],p[5]=l[5],p[6]=+l[6]+r,p[7]=+l[7]+o;break;case"V":p[1]=+l[1]+o;break;case"H":p[1]=+l[1]+r;break;case"M":a=+l[1]+r,s=+l[2]+o;default:for(var d=1,f=l.length;d<f;d++)p[d]=+l[d]+(d%2?r:o)}else for(var m=0,v=l.length;m<v;m++)p[m]=l[m];switch(n=n.toUpperCase(),p[0]){case"Z":r=+a,o=+s;break;case"H":r=p[1];break;case"V":o=p[1];break;case"M":a=p[p.length-2],s=p[p.length-1];default:r=p[p.length-2],o=p[p.length-1]}}return i.toString=Vt,t.abs=Gt(i),i}function tn(e){return e[0]===e[2]&&e[1]===e[3]&&e[4]===e[6]&&e[5]===e[7]}function nn(e,t,n,i){return[e,t,n,i,n,i]}function rn(e,t,n,i,r,o){var a=1/3,s=2/3;return[a*e+s*n,a*t+s*i,a*r+s*n,a*o+s*i,r,o]}function on(e,t,n,i,r,o,a,s,c,p){var l,u=120*Tt/180,h=Tt/180*(+r||0),d=[],f=function(e){return function t(){var n=Array.prototype.slice.call(arguments,0).join("␀"),i=t.cache=t.cache||{},r=t.count=t.count||[];return It(i,n)?(function(e,t){for(var n=0,i=e.length;n<i;n++)if(e[n]===t)return e.push(e.splice(n,1)[0])}(r,n),i[n]):(r.length>=1e3&&delete i[r.shift()],r.push(n),i[n]=e(...arguments),i[n])}}((function(e,t,n){return{x:e*Mt.cos(n)-t*Mt.sin(n),y:e*Mt.sin(n)+t*Mt.cos(n)}}));if(p)E=p[0],S=p[1],x=p[2],w=p[3];else{e=(l=f(e,t,-h)).x,t=l.y;var m=(e-(s=(l=f(s,c,-h)).x))/2,v=(t-(c=l.y))/2,y=m*m/(n*n)+v*v/(i*i);y>1&&(n*=y=Mt.sqrt(y),i*=y);var g=n*n,b=i*i,_=(o==a?-1:1)*Mt.sqrt(jt((g*b-g*v*v-b*m*m)/(g*v*v+b*m*m))),x=_*n*v/i+(e+s)/2,w=_*-i*m/n+(t+c)/2,E=Mt.asin(((t-w)/i).toFixed(9)),S=Mt.asin(((c-w)/i).toFixed(9));(E=e<x?Tt-E:E)<0&&(E=2*Tt+E),(S=s<x?Tt-S:S)<0&&(S=2*Tt+S),a&&E>S&&(E-=2*Tt),!a&&S>E&&(S-=2*Tt)}var C=S-E;if(jt(C)>u){var k=S,R=s,P=c;S=E+u*(a&&S>E?1:-1),d=on(s=x+n*Mt.cos(S),c=w+i*Mt.sin(S),n,i,r,0,a,R,P,[S,k,x,w])}C=S-E;var A=Mt.cos(E),M=Mt.sin(E),T=Mt.cos(S),D=Mt.sin(S),B=Mt.tan(C/4),N=4/3*n*B,j=4/3*i*B,O=[e,t],L=[e+N*M,t-j*A],$=[s+N*D,c-j*T],I=[s,c];if(L[0]=2*O[0]-L[0],L[1]=2*O[1]-L[1],p)return[L,$,I].concat(d);for(var F=[],z=0,H=(d=[L,$,I].concat(d).join().split(",")).length;z<H;z++)F[z]=z%2?f(d[z-1],d[z],h).y:f(d[z],d[z+1],h).x;return F}function an(e){var t=zt(e);if(t.curve)return Gt(t.curve);for(var n=en(e),i={x:0,y:0,bx:0,by:0,X:0,Y:0,qx:null,qy:null},r=function(e,t,n){var i,r;if(!e)return["C",t.x,t.y,t.x,t.y,t.x,t.y];switch(!(e[0]in{T:1,Q:1})&&(t.qx=t.qy=null),e[0]){case"M":t.X=e[1],t.Y=e[2];break;case"A":e=["C",...on(t.x,t.y,...e.slice(1))];break;case"S":"C"==n||"S"==n?(i=2*t.x-t.bx,r=2*t.y-t.by):(i=t.x,r=t.y),e=["C",i,r,...e.slice(1)];break;case"T":"Q"==n||"T"==n?(t.qx=2*t.x-t.qx,t.qy=2*t.y-t.qy):(t.qx=t.x,t.qy=t.y),e=["C",...rn(t.x,t.y,t.qx,t.qy,e[1],e[2])];break;case"Q":t.qx=e[1],t.qy=e[2],e=["C",...rn(t.x,t.y,e[1],e[2],e[3],e[4])];break;case"L":e=["C",...nn(t.x,t.y,e[1],e[2])];break;case"H":e=["C",...nn(t.x,t.y,e[1],t.y)];break;case"V":e=["C",...nn(t.x,t.y,t.x,e[1])];break;case"Z":e=["C",...nn(t.x,t.y,t.X,t.Y)]}return e},o=function(e,t){if(e[t].length>7){e[t].shift();for(var i=e[t];i.length;)a[t]="A",e.splice(t++,0,["C",...i.splice(0,6)]);e.splice(t,1),l=n.length}},a=[],s="",c="",p=0,l=n.length;p<l;p++){n[p]&&(s=n[p][0]),"C"!=s&&(a[p]=s,p&&(c=a[p-1])),n[p]=r(n[p],i,c),"A"!=a[p]&&"C"==s&&(a[p]="C"),o(n,p);var u=n[p],h=u.length;i.x=u[h-2],i.y=u[h-1],i.bx=At(u[h-4])||i.x,i.by=At(u[h-3])||i.y}return t.curve=Gt(n),n}function sn(e){return l(e)&&f(e,"waypoints")}function cn(e){return l(e)&&f(e,"labelTarget")}function pn(e){return{x:Math.round(e.x),y:Math.round(e.y),width:Math.round(e.width),height:Math.round(e.height)}}function ln(e){return{x:Math.round(e.x),y:Math.round(e.y)}}function un(e){return{top:e.y,right:e.x+(e.width||0),bottom:e.y+(e.height||0),left:e.x}}function hn(e){return{x:e.left,y:e.top,width:e.right-e.left,height:e.bottom-e.top}}function dn(e){for(var t=e.waypoints,n=t.reduce((function(e,n,i){var r=t[i-1];if(r){var o=e[e.length-1],a=o&&o.endLength||0,s=function(e,t){return Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2))}(r,n);e.push({start:r,end:n,startLength:a,endLength:a+s,length:s})}return e}),[]),i=n.reduce((function(e,t){return e+t.length}),0),r=i/2,o=0,a=n[o];a.endLength<r;)a=n[++o];var s=(r-a.startLength)/a.length;return{x:a.start.x+(a.end.x-a.start.x)*s,y:a.start.y+(a.end.y-a.start.y)*s}}function fn(e){return sn(e)?dn(e):ln({x:(t=e).x+(t.width||0)/2,y:t.y+(t.height||0)/2});var t}function mn(e,t,n){l(n=n||0)||(n={x:n,y:n});var i=un(e),r=un(t),o=i.bottom+n.y<=r.top,a=i.left-n.x>=r.right,s=i.top-n.y>=r.bottom,c=o?"top":s?"bottom":null,p=i.right+n.x<=r.left?"left":a?"right":null;return p&&c?c+"-"+p:p||c||"intersect"}function vn(e,t,n){var i=function(e,t){return Jt(e,t)}(e,t);return 1===i.length||2===i.length&&wt(i[0],i[1])<1?ln(i[0]):i.length>1?(i=A(i,(function(e){var t=Math.floor(100*e.t2)||1;return t=((t=100-t)<10?"0":"")+t,e.segment2+"#"+t})),ln(i[n?0:i.length-1])):null}function yn(e,t){return Math.round(e*t)/t}function gn(e){return u(e)?e+"px":e}function bn(e,t,n){const i=Ae("g");we(i).add(t);const r=void 0!==n?n:e.childNodes.length-1;return e.insertBefore(i,e.childNodes[r]||null),i}const _n={shape:["x","y","width","height"],connection:["waypoints"]};function xn(e,t,n,i){this._eventBus=t,this._elementRegistry=i,this._graphicsFactory=n,this._rootsIdx=0,this._layers={},this._planes=[],this._rootElement=null,this._focused=!1,this._init(e||{})}function wn(e,t){const n="matrix("+t.a+","+t.b+","+t.c+","+t.d+","+t.e+","+t.f+")";e.setAttribute("transform",n)}xn.$inject=["config.canvas","eventBus","graphicsFactory","elementRegistry"],xn.prototype._init=function(e){const t=this._eventBus,n=this._container=function(e){const t=(e=L({},{width:"100%",height:"100%"},e)).container||document.body,n=document.createElement("div");return n.setAttribute("class","djs-container djs-parent"),q(n,{position:"relative",overflow:"hidden",width:gn(e.width),height:gn(e.height)}),t.appendChild(n),n}(e),i=this._svg=Ae("svg");_e(i,{width:"100%",height:"100%"}),K(i,"tabindex",0),e.autoFocus&&t.on("element.hover",(()=>{this.restoreFocus()})),t.on("element.mousedown",500,(e=>{this.focus()})),i.addEventListener("focusin",(()=>{this._setFocused(!0)})),i.addEventListener("focusout",(()=>{this._setFocused(!1)})),ye(n,i);const r=this._viewport=bn(i,"viewport");e.deferUpdate&&(this._viewboxChanged=j(O(this._viewboxChanged,this),300)),t.on("diagram.init",(()=>{t.fire("canvas.init",{svg:i,viewport:r})})),t.on(["shape.added","connection.added","shape.removed","connection.removed","elements.changed","root.set"],(()=>{delete this._cachedViewbox})),t.on("diagram.destroy",500,this._destroy,this),t.on("diagram.clear",500,this._clear,this)},xn.prototype._destroy=function(){this._eventBus.fire("canvas.destroy",{svg:this._svg,viewport:this._viewport});const e=this._container.parentNode;e&&e.removeChild(this._container),delete this._svg,delete this._container,delete this._layers,delete this._planes,delete this._rootElement,delete this._viewport},xn.prototype._setFocused=function(e){e!=this._focused&&(this._focused=e,this._eventBus.fire("canvas.focus.changed",{focused:e}))},xn.prototype._clear=function(){this._elementRegistry.getAll().forEach((e=>{const t=ft(e);"root"===t?this.removeRootElement(e):this._removeElement(e,t)})),this._planes=[],this._rootElement=null,delete this._cachedViewbox},xn.prototype.focus=function(){this._svg.focus({preventScroll:!0}),this._setFocused(!0)},xn.prototype.restoreFocus=function(){document.activeElement===document.body&&this.focus()},xn.prototype.isFocused=function(){return this._focused},xn.prototype.getDefaultLayer=function(){return this.getLayer("base",0)},xn.prototype.getLayer=function(e,t){if(!e)throw new Error("must specify a name");let n=this._layers[e];if(n||(n=this._layers[e]=this._createLayer(e,t)),void 0!==t&&n.index!==t)throw new Error("layer <"+e+"> already created at index <"+t+">");return n.group},xn.prototype._getChildIndex=function(e){return _(this._layers,(function(t,n){return n.visible&&e>=n.index&&t++,t}),0)},xn.prototype._createLayer=function(e,t){void 0===t&&(t=1);const n=this._getChildIndex(t);return{group:bn(this._viewport,"layer-"+e,n),index:t,visible:!0}},xn.prototype.showLayer=function(e){if(!e)throw new Error("must specify a name");const t=this._layers[e];if(!t)throw new Error("layer <"+e+"> does not exist");const n=this._viewport,i=t.group,r=t.index;if(t.visible)return i;const o=this._getChildIndex(r);return n.insertBefore(i,n.childNodes[o]||null),t.visible=!0,i},xn.prototype.hideLayer=function(e){if(!e)throw new Error("must specify a name");const t=this._layers[e];if(!t)throw new Error("layer <"+e+"> does not exist");const n=t.group;return t.visible?(Fe(n),t.visible=!1,n):n},xn.prototype._removeLayer=function(e){const t=this._layers[e];t&&(delete this._layers[e],Fe(t.group))},xn.prototype.getActiveLayer=function(){const e=this._findPlaneForRoot(this.getRootElement());return e?e.layer:null},xn.prototype.findRoot=function(e){if("string"==typeof e&&(e=this._elementRegistry.get(e)),!e)return;const t=this._findPlaneForRoot(function(e){for(;e.parent;)e=e.parent;return e}(e))||{};return t.rootElement},xn.prototype.getRootElements=function(){return this._planes.map((function(e){return e.rootElement}))},xn.prototype._findPlaneForRoot=function(e){return m(this._planes,(function(t){return t.rootElement===e}))},xn.prototype.getContainer=function(){return this._container},xn.prototype._updateMarker=function(e,t,n){let i;e.id||(e=this._elementRegistry.get(e)),e.markers=e.markers||new Set,i=this._elementRegistry._elements[e.id],i&&(g([i.gfx,i.secondaryGfx],(function(i){i&&(n?(e.markers.add(t),we(i).add(t)):(e.markers.delete(t),we(i).remove(t)))})),this._eventBus.fire("element.marker.update",{element:e,gfx:i.gfx,marker:t,add:!!n}))},xn.prototype.addMarker=function(e,t){this._updateMarker(e,t,!0)},xn.prototype.removeMarker=function(e,t){this._updateMarker(e,t,!1)},xn.prototype.hasMarker=function(e,t){return e.id||(e=this._elementRegistry.get(e)),!!e.markers&&e.markers.has(t)},xn.prototype.toggleMarker=function(e,t){this.hasMarker(e,t)?this.removeMarker(e,t):this.addMarker(e,t)},xn.prototype.getRootElement=function(){const e=this._rootElement;return e||this._planes.length?e:this.setRootElement(this.addRootElement(null))},xn.prototype.addRootElement=function(e){const t=this._rootsIdx++;e||(e={id:"__implicitroot_"+t,children:[],isImplicit:!0});const n=e.layer="root-"+t;this._ensureValid("root",e);const i=this.getLayer(n,0);return this.hideLayer(n),this._addRoot(e,i),this._planes.push({rootElement:e,layer:i}),e},xn.prototype.removeRootElement=function(e){"string"==typeof e&&(e=this._elementRegistry.get(e));if(this._findPlaneForRoot(e))return this._removeRoot(e),this._removeLayer(e.layer),this._planes=this._planes.filter((function(t){return t.rootElement!==e})),this._rootElement===e&&(this._rootElement=null),e},xn.prototype.setRootElement=function(e){if(e===this._rootElement)return e;let t;if(!e)throw new Error("rootElement required");return t=this._findPlaneForRoot(e),t||(e=this.addRootElement(e)),this._setRoot(e),e},xn.prototype._removeRoot=function(e){const t=this._elementRegistry,n=this._eventBus;n.fire("root.remove",{element:e}),n.fire("root.removed",{element:e}),t.remove(e)},xn.prototype._addRoot=function(e,t){const n=this._elementRegistry,i=this._eventBus;i.fire("root.add",{element:e}),n.add(e,t),i.fire("root.added",{element:e,gfx:t})},xn.prototype._setRoot=function(e,t){const n=this._rootElement;n&&(this._elementRegistry.updateGraphics(n,null,!0),this.hideLayer(n.layer)),e&&(t||(t=this._findPlaneForRoot(e).layer),this._elementRegistry.updateGraphics(e,this._svg,!0),this.showLayer(e.layer)),this._rootElement=e,this._eventBus.fire("root.set",{element:e})},xn.prototype._ensureValid=function(e,t){if(!t.id)throw new Error("element must have an id");if(this._elementRegistry.get(t.id))throw new Error("element <"+t.id+"> already exists");const n=_n[e],i=x(n,(function(e){return void 0!==t[e]}));if(!i)throw new Error("must supply { "+n.join(", ")+" } with "+e)},xn.prototype._setParent=function(e,t,n){_t(t.children,e,n),e.parent=t},xn.prototype._addElement=function(e,t,n,i){n=n||this.getRootElement();const r=this._eventBus,o=this._graphicsFactory;this._ensureValid(e,t),r.fire(e+".add",{element:t,parent:n}),this._setParent(t,n,i);const a=o.create(e,t,i);return this._elementRegistry.add(t,a),o.update(e,t,a),r.fire(e+".added",{element:t,gfx:a}),t},xn.prototype.addShape=function(e,t,n){return this._addElement("shape",e,t,n)},xn.prototype.addConnection=function(e,t,n){return this._addElement("connection",e,t,n)},xn.prototype._removeElement=function(e,t){const n=this._elementRegistry,i=this._graphicsFactory,r=this._eventBus;if(e=n.get(e.id||e))return r.fire(t+".remove",{element:e}),i.remove(e),bt(e.parent&&e.parent.children,e),e.parent=null,r.fire(t+".removed",{element:e}),n.remove(e),e},xn.prototype.removeShape=function(e){return this._removeElement(e,"shape")},xn.prototype.removeConnection=function(e){return this._removeElement(e,"connection")},xn.prototype.getGraphics=function(e,t){return this._elementRegistry.getGraphics(e,t)},xn.prototype._changeViewbox=function(e){this._eventBus.fire("canvas.viewbox.changing"),e.apply(this),this._cachedViewbox=null,this._viewboxChanged()},xn.prototype._viewboxChanged=function(){this._eventBus.fire("canvas.viewbox.changed",{viewbox:this.viewbox()})},xn.prototype.viewbox=function(e){if(void 0===e&&this._cachedViewbox)return structuredClone(this._cachedViewbox);const t=this._viewport,n=this.getSize();let i,r,o,a,s,c,p;return e?(this._changeViewbox((function(){s=Math.min(n.width/e.width,n.height/e.height);const i=this._svg.createSVGMatrix().scale(s).translate(-e.x,-e.y);He(t,i)})),e):(o=this._rootElement?this.getActiveLayer():null,i=o&&o.getBBox()||{},a=He(t),r=a?a.matrix:function(e,t,n,i,r,o){var a=Te().createSVGMatrix();switch(arguments.length){case 0:return a;case 1:return De(a,e);case 6:return De(a,{a:e,b:t,c:n,d:i,e:r,f:o})}}(),s=yn(r.a,1e3),c=yn(-r.e||0,1e3),p=yn(-r.f||0,1e3),e=this._cachedViewbox={x:c?c/s:0,y:p?p/s:0,width:n.width/s,height:n.height/s,scale:s,inner:{width:i.width||0,height:i.height||0,x:i.x||0,y:i.y||0},outer:n})},xn.prototype.scroll=function(e){const t=this._viewport;let n=t.getCTM();return e&&this._changeViewbox((function(){e=L({dx:0,dy:0},e||{}),n=this._svg.createSVGMatrix().translate(e.dx,e.dy).multiply(n),wn(t,n)})),{x:n.e,y:n.f}},xn.prototype.scrollToElement=function(e,t){let n=100;"string"==typeof e&&(e=this._elementRegistry.get(e));const i=this.findRoot(e);if(i!==this.getRootElement()&&this.setRootElement(i),i===e)return;t||(t={}),"number"==typeof t&&(n=t),t={top:t.top||n,right:t.right||n,bottom:t.bottom||n,left:t.left||n};const r=ht(e),o=un(r),a=this.viewbox(),s=this.zoom();let c,p;a.y+=t.top/s,a.x+=t.left/s,a.width-=(t.right+t.left)/s,a.height-=(t.bottom+t.top)/s;const l=un(a);if(r.width<a.width&&r.height<a.height){const e=Math.max(0,o.right-l.right),t=Math.min(0,o.left-l.left),n=Math.max(0,o.bottom-l.bottom),i=Math.min(0,o.top-l.top);c=e||t,p=n||i}else c=r.x-a.x,p=r.y-a.y;this.scroll({dx:-c*s,dy:-p*s})},xn.prototype.zoom=function(e,t){if(!e)return this.viewbox(e).scale;if("fit-viewport"===e)return this._fitViewport(t);let n,i;return this._changeViewbox((function(){"object"!=typeof t&&(n=this.viewbox().outer,t={x:n.width/2,y:n.height/2}),i=this._setZoom(e,t)})),yn(i.a,1e3)},xn.prototype._fitViewport=function(e){const t=this.viewbox(),n=t.outer,i=t.inner;let r,o;return i.x>=0&&i.y>=0&&i.x+i.width<=n.width&&i.y+i.height<=n.height&&!e?o={x:0,y:0,width:Math.max(i.width+i.x,n.width),height:Math.max(i.height+i.y,n.height)}:(r=Math.min(1,n.width/i.width,n.height/i.height),o={x:i.x+(e?i.width/2-n.width/r/2:0),y:i.y+(e?i.height/2-n.height/r/2:0),width:n.width/r,height:n.height/r}),this.viewbox(o),this.viewbox(!1).scale},xn.prototype._setZoom=function(e,t){const n=this._svg,i=this._viewport,r=n.createSVGMatrix(),o=n.createSVGPoint();let a,s,c,p,l;c=i.getCTM();const u=c.a;return t?(a=L(o,t),s=a.matrixTransform(c.inverse()),p=r.translate(s.x,s.y).scale(1/u*e).translate(-s.x,-s.y),l=c.multiply(p)):l=r.scale(e),wn(this._viewport,l),l},xn.prototype.getSize=function(){return{width:this._container.clientWidth,height:this._container.clientHeight}},xn.prototype.getAbsoluteBBox=function(e){const t=this.viewbox();let n;if(e.waypoints){n=this.getGraphics(e).getBBox()}else n=e;return{x:n.x*t.scale-t.x*t.scale,y:n.y*t.scale-t.y*t.scale,width:n.width*t.scale,height:n.height*t.scale}},xn.prototype.resized=function(){delete this._cachedViewbox,this._eventBus.fire("canvas.resized")};var En="data-element-id";function Sn(e){this._elements={},this._eventBus=e}function Cn(e,t,n){var i=function(e,t,n,i){var r=n.inverse;return Object.defineProperty(e,"remove",{value:function(e){var n=this.indexOf(e);return-1!==n&&(this.splice(n,1),t.unset(e,r,i)),e}}),Object.defineProperty(e,"contains",{value:function(e){return-1!==this.indexOf(e)}}),Object.defineProperty(e,"add",{value:function(e,n){var o=this.indexOf(e);if(void 0===n){if(-1!==o)return;n=this.length}-1!==o&&this.splice(o,1),this.splice(n,0,e),-1===o&&t.set(e,r,i)}}),Object.defineProperty(e,"__refs_collection",{value:!0}),e}(n[t.name]||[],e,t,n);Object.defineProperty(n,t.name,{enumerable:t.enumerable,value:i}),i.length&&i.forEach((function(i){e.set(i,t.inverse,n)}))}function kn(e,t){if(!(this instanceof kn))return new kn(e,t);e.inverse=t,t.inverse=e,this.props={},this.props[e.name]=e,this.props[t.name]=t}Sn.$inject=["eventBus"],Sn.prototype.add=function(e,t,n){var i=e.id;this._validateId(i),_e(t,En,i),n&&_e(n,En,i),this._elements[i]={element:e,gfx:t,secondaryGfx:n}},Sn.prototype.remove=function(e){var t=this._elements,n=e.id||e,i=n&&t[n];i&&(_e(i.gfx,En,""),i.secondaryGfx&&_e(i.secondaryGfx,En,""),delete t[n])},Sn.prototype.updateId=function(e,t){this._validateId(t),"string"==typeof e&&(e=this.get(e)),this._eventBus.fire("element.updateId",{element:e,newId:t});var n=this.getGraphics(e),i=this.getGraphics(e,!0);this.remove(e),e.id=t,this.add(e,n,i)},Sn.prototype.updateGraphics=function(e,t,n){var i=e.id||e,r=this._elements[i];return n?r.secondaryGfx=t:r.gfx=t,t&&_e(t,En,i),t},Sn.prototype.get=function(e){var t;t="string"==typeof e?e:e&&_e(e,En);var n=this._elements[t];return n&&n.element},Sn.prototype.filter=function(e){var t=[];return this.forEach((function(n,i){e(n,i)&&t.push(n)})),t},Sn.prototype.find=function(e){for(var t=this._elements,n=Object.keys(t),i=0;i<n.length;i++){var r=t[n[i]],o=r.element;if(e(o,r.gfx))return o}},Sn.prototype.getAll=function(){return this.filter((function(e){return e}))},Sn.prototype.forEach=function(e){var t=this._elements;Object.keys(t).forEach((function(n){var i=t[n],r=i.element,o=i.gfx;return e(r,o)}))},Sn.prototype.getGraphics=function(e,t){var n=e.id||e,i=this._elements[n];return i&&(t?i.secondaryGfx:i.gfx)},Sn.prototype._validateId=function(e){if(!e)throw new Error("element must have an id");if(this._elements[e])throw new Error("element with id "+e+" already added")},kn.prototype.bind=function(e,t){if("string"==typeof t){if(!this.props[t])throw new Error("no property <"+t+"> in ref");t=this.props[t]}t.collection?Cn(this,t,e):function(e,t,n){var i=t.inverse,r=n[t.name];Object.defineProperty(n,t.name,{configurable:t.configurable,enumerable:t.enumerable,get:function(){return r},set:function(t){if(t!==r){var o=r;r=null,o&&e.unset(o,i,n),r=t,e.set(r,i,n)}}})}(this,t,e)},kn.prototype.ensureRefsCollection=function(e,t){var n=e[t.name];return function(e){return!0===e.__refs_collection}(n)||Cn(this,t,e),n},kn.prototype.ensureBound=function(e,t){(function(e,t){return Object.prototype.hasOwnProperty.call(e,t.name||t)})(e,t)||this.bind(e,t)},kn.prototype.unset=function(e,t,n){e&&(this.ensureBound(e,t),t.collection?this.ensureRefsCollection(e,t).remove(n):e[t.name]=void 0)},kn.prototype.set=function(e,t,n){e&&(this.ensureBound(e,t),t.collection?this.ensureRefsCollection(e,t).add(n):e[t.name]=n)};var Rn=new kn({name:"children",enumerable:!0,collection:!0},{name:"parent"}),Pn=new kn({name:"labels",enumerable:!0,collection:!0},{name:"labelTarget"}),An=new kn({name:"attachers",collection:!0},{name:"host"}),Mn=new kn({name:"outgoing",collection:!0},{name:"source"}),Tn=new kn({name:"incoming",collection:!0},{name:"target"});function Dn(){Object.defineProperty(this,"businessObject",{writable:!0}),Object.defineProperty(this,"label",{get:function(){return this.labels[0]},set:function(e){var t=this.label,n=this.labels;!e&&t?n.remove(t):n.add(e,0)}}),Rn.bind(this,"parent"),Pn.bind(this,"labels"),Mn.bind(this,"outgoing"),Tn.bind(this,"incoming")}function Bn(){Dn.call(this),Rn.bind(this,"children"),An.bind(this,"host"),An.bind(this,"attachers")}function Nn(){Dn.call(this),Rn.bind(this,"children")}function jn(){Bn.call(this),Pn.bind(this,"labelTarget")}function On(){Dn.call(this),Mn.bind(this,"source"),Tn.bind(this,"target")}e(Bn,Dn),e(Nn,Bn),e(jn,Bn),e(On,Dn);var Ln={connection:On,shape:Bn,label:jn,root:Nn};function $n(){this._uid=12}$n.prototype.createRoot=function(e){return this.create("root",e)},$n.prototype.createLabel=function(e){return this.create("label",e)},$n.prototype.createShape=function(e){return this.create("shape",e)},$n.prototype.createConnection=function(e){return this.create("connection",e)},$n.prototype.create=function(e,t){return(t=L({},t||{})).id||(t.id=e+"_"+this._uid++),function(e,t){var n=Ln[e];if(!n)throw new Error("unknown type: <"+e+">");return L(new n,t)}(e,t)};var In="__fn",Fn=Array.prototype.slice;function zn(){this._listeners={},this.on("diagram.destroy",1,this._destroy,this)}function Hn(){}function Vn(e){return e.childNodes[0]}function Gn(e,t,n,i,r){var o=Be();o.setTranslate(t,n);var a=Be();a.setRotate(i||0,0,0);var s=Be();s.setScale(1,1),He(e,[o,a,s])}function Wn(e,t,n){var i=Be();i.setTranslate(t,n),He(e,i)}function Un(e,t){var n=Be();n.setRotate(t,0,0),He(e,n)}function qn(e,t){this._eventBus=e,this._elementRegistry=t}function Kn(e,t,n){var i=n||t.firstChild;e!==i&&t.insertBefore(e,i)}zn.prototype.on=function(e,t,n,i){if(e=p(e)?e:[e],h(t)&&(i=n,n=t,t=1e3),!u(t))throw new Error("priority must be a number");var r=n;i&&((r=O(n,i))[In]=n[In]||n);var o=this;e.forEach((function(e){o._addListener(e,{priority:t,callback:r,next:null})}))},zn.prototype.once=function(e,t,n,i){var r=this;if(h(t)&&(i=n,n=t,t=1e3),!u(t))throw new Error("priority must be a number");function o(){o.__isTomb=!0;var t=n.apply(i,arguments);return r.off(e,o),t}o[In]=n,this.on(e,t,o)},zn.prototype.off=function(e,t){e=p(e)?e:[e];var n=this;e.forEach((function(e){n._removeListener(e,t)}))},zn.prototype.createEvent=function(e){var t=new Hn;return t.init(e),t},zn.prototype.fire=function(e,t){var n,i,r,o;if(o=Fn.call(arguments),"object"==typeof e&&(e=(t=e).type),!e)throw new Error("no event type specified");if(i=this._listeners[e]){n=t instanceof Hn?t:this.createEvent(t),o[0]=n;var a=n.type;e!==a&&(n.type=e);try{r=this._invokeListeners(n,o,i)}finally{e!==a&&(n.type=a)}return void 0===r&&n.defaultPrevented&&(r=!1),r}},zn.prototype.handleError=function(e){return!1===this.fire("error",{error:e})},zn.prototype._destroy=function(){this._listeners={}},zn.prototype._invokeListeners=function(e,t,n){for(var i;n&&!e.cancelBubble;)i=this._invokeListener(e,t,n),n=n.next;return i},zn.prototype._invokeListener=function(e,t,n){var i;if(n.callback.__isTomb)return i;try{i=function(e,t){return e.apply(null,t)}(n.callback,t),void 0!==i&&(e.returnValue=i,e.stopPropagation()),!1===i&&e.preventDefault()}catch(e){if(!this.handleError(e))throw console.error("unhandled error in event listener",e),e}return i},zn.prototype._addListener=function(e,t){var n,i=this._getListeners(e);if(i){for(;i;){if(i.priority<t.priority)return t.next=i,void(n?n.next=t:this._setListeners(e,t));n=i,i=i.next}n.next=t}else this._setListeners(e,t)},zn.prototype._getListeners=function(e){return this._listeners[e]},zn.prototype._setListeners=function(e,t){this._listeners[e]=t},zn.prototype._removeListener=function(e,t){var n,i,r,o=this._getListeners(e);if(t)for(;o;)n=o.next,(r=o.callback)!==t&&r[In]!==t||(i?i.next=n:this._setListeners(e,n)),i=o,o=n;else this._setListeners(e,null)},Hn.prototype.stopPropagation=function(){this.cancelBubble=!0},Hn.prototype.preventDefault=function(){this.defaultPrevented=!0},Hn.prototype.init=function(e){L(this,e||{})},qn.$inject=["eventBus","elementRegistry"],qn.prototype._getChildrenContainer=function(e){var t,n=this._elementRegistry.getGraphics(e);return e.parent?(t=function(e){return e.parentNode.childNodes[1]}(n),t||(we(t=Ae("g")).add("djs-children"),ye(n.parentNode,t))):t=n,t},qn.prototype._clear=function(e){var t=Vn(e);return Q(t),t},qn.prototype._createContainer=function(e,t,n,i){var r=Ae("g");we(r).add("djs-group"),void 0!==n?Kn(r,t,t.childNodes[n]):ye(t,r);var o=Ae("g");we(o).add("djs-element"),we(o).add("djs-"+e),i&&we(o).add("djs-frame"),ye(r,o);var a=Ae("g");return we(a).add("djs-visual"),ye(o,a),o},qn.prototype.create=function(e,t,n){var i=this._getChildrenContainer(t.parent);return this._createContainer(e,i,n,mt(t))},qn.prototype.updateContainments=function(e){var t,n=this,i=this._elementRegistry;t=_(e,(function(e,t){return t.parent&&(e[t.parent.id]=t.parent),e}),{}),g(t,(function(e){var t=e.children;if(t){var r=n._getChildrenContainer(e);g(t.slice().reverse(),(function(e){Kn(i.getGraphics(e).parentNode,r)}))}}))},qn.prototype.drawShape=function(e,t,n={}){return this._eventBus.fire("render.shape",{gfx:e,element:t,attrs:n})},qn.prototype.getShapePath=function(e){return this._eventBus.fire("render.getShapePath",e)},qn.prototype.drawConnection=function(e,t,n={}){return this._eventBus.fire("render.connection",{gfx:e,element:t,attrs:n})},qn.prototype.getConnectionPath=function(e){return this._eventBus.fire("render.getConnectionPath",e)},qn.prototype.update=function(e,t,n){if(t.parent){var i=this._clear(n);if("shape"===e)this.drawShape(i,t),Wn(n,t.x,t.y);else{if("connection"!==e)throw new Error("unknown type: "+e);this.drawConnection(i,t)}t.hidden?_e(n,"display","none"):_e(n,"display","block")}},qn.prototype.remove=function(e){Fe(this._elementRegistry.getGraphics(e).parentNode)};var Yn={__depends__:[gt],__init__:["canvas"],canvas:["type",xn],elementRegistry:["type",Sn],elementFactory:["type",$n],eventBus:["type",zn],graphicsFactory:["type",qn]};function Xn(e){return function(e){var t=new Ze(e);return t.init(),t}([{config:["value",e=e||{}]},Yn].concat(e.modules||[]))}function Zn(e,t){this._injector=t||Xn(e),this.get("eventBus").fire("diagram.init")}function Qn(){}function Jn(e,t){this.model=e,this.properties=t}Zn.prototype.get=function(e,t){return this._injector.get(e,t)},Zn.prototype.invoke=function(e,t,n){return this._injector.invoke(e,t,n)},Zn.prototype.destroy=function(){this.get("eventBus").fire("diagram.destroy")},Zn.prototype.clear=function(){this.get("eventBus").fire("diagram.clear")},Qn.prototype.get=function(e){return this.$model.properties.get(this,e)},Qn.prototype.set=function(e,t){this.$model.properties.set(this,e,t)},Jn.prototype.createType=function(e){var t=this.model,n=this.properties,i=Object.create(Qn.prototype);g(e.properties,(function(e){e.isMany||void 0===e.default||(i[e.name]=e.default)})),n.defineModel(i,t),n.defineDescriptor(i,e);var r=e.ns.name;function o(e){n.define(this,"$type",{value:r,enumerable:!0}),n.define(this,"$attrs",{value:{}}),n.define(this,"$parent",{writable:!0}),g(e,O((function(e,t){this.set(t,e)}),this))}return o.prototype=i,o.hasType=i.$instanceOf=this.model.hasType,n.defineModel(o,t),n.defineDescriptor(o,e),o};var ei={String:!0,Boolean:!0,Integer:!0,Real:!0,Element:!0},ti={String:function(e){return e},Boolean:function(e){return"true"===e},Integer:function(e){return parseInt(e,10)},Real:function(e){return parseFloat(e)}};function ni(e,t){var n=ti[e];return n?n(t):t}function ii(e){return!!ei[e]}function ri(e){return!!ti[e]}function oi(e,t){var n,i,r=e.split(/:/);if(1===r.length)n=e,i=t;else{if(2!==r.length)throw new Error("expected <prefix:localName> or <localName>, got "+e);n=r[1],i=r[0]}return{name:e=(i?i+":":"")+n,prefix:i,localName:n}}function ai(e){this.ns=e,this.name=e.name,this.allTypes=[],this.allTypesByName={},this.properties=[],this.propertiesByName={}}function si(e,t){this.packageMap={},this.typeMap={},this.packages=[],this.properties=t,g(e,O(this.registerPackage,this))}function ci(e,t,n){var i=t[n];if(i in e)throw new Error("package with "+n+" <"+i+"> already defined")}function pi(e){this.model=e}function li(e,t,n){Object.defineProperty(e,t.name,{enumerable:!t.isReference,writable:!0,value:n,configurable:!0})}function ui(e){return e.replace(/^:/,"")}function hi(e,t={}){this.properties=new pi(this),this.factory=new Jn(this,this.properties),this.registry=new si(e,this.properties),this.typeCache={},this.config=t}ai.prototype.build=function(){return $(this,["ns","name","allTypes","allTypesByName","properties","propertiesByName","bodyProperty","idProperty"])},ai.prototype.addProperty=function(e,t,n){"boolean"==typeof t&&(n=t,t=void 0),this.addNamedProperty(e,!1!==n);var i=this.properties;void 0!==t?i.splice(t,0,e):i.push(e)},ai.prototype.replaceProperty=function(e,t,n){var i=e.ns,r=this.properties,o=this.propertiesByName,a=e.name!==t.name;if(e.isId){if(!t.isId)throw new Error("property <"+t.ns.name+"> must be id property to refine <"+e.ns.name+">");this.setIdProperty(t,!1)}if(e.isBody){if(!t.isBody)throw new Error("property <"+t.ns.name+"> must be body property to refine <"+e.ns.name+">");this.setBodyProperty(t,!1)}var s=r.indexOf(e);if(-1===s)throw new Error("property <"+i.name+"> not found in property list");r.splice(s,1),this.addProperty(t,n?void 0:s,a),o[i.name]=o[i.localName]=t},ai.prototype.redefineProperty=function(e,t,n){var i=e.ns.prefix,r=t.split("#"),o=oi(r[0],i),a=oi(r[1],o.prefix).name,s=this.propertiesByName[a];if(!s)throw new Error("refined property <"+a+"> not found");this.replaceProperty(s,e,n),delete e.redefines},ai.prototype.addNamedProperty=function(e,t){var n=e.ns,i=this.propertiesByName;t&&(this.assertNotDefined(e,n.name),this.assertNotDefined(e,n.localName)),i[n.name]=i[n.localName]=e},ai.prototype.removeNamedProperty=function(e){var t=e.ns,n=this.propertiesByName;delete n[t.name],delete n[t.localName]},ai.prototype.setBodyProperty=function(e,t){if(t&&this.bodyProperty)throw new Error("body property defined multiple times (<"+this.bodyProperty.ns.name+">, <"+e.ns.name+">)");this.bodyProperty=e},ai.prototype.setIdProperty=function(e,t){if(t&&this.idProperty)throw new Error("id property defined multiple times (<"+this.idProperty.ns.name+">, <"+e.ns.name+">)");this.idProperty=e},ai.prototype.assertNotTrait=function(e){if((e.extends||[]).length)throw new Error(`cannot create <${e.name}> extending <${e.extends}>`)},ai.prototype.assertNotDefined=function(e,t){var n=e.name,i=this.propertiesByName[n];if(i)throw new Error("property <"+n+"> already defined; override of <"+i.definedBy.ns.name+"#"+i.ns.name+"> by <"+e.definedBy.ns.name+"#"+e.ns.name+"> not allowed without redefines")},ai.prototype.hasProperty=function(e){return this.propertiesByName[e]},ai.prototype.addTrait=function(e,t){t&&this.assertNotTrait(e);var n=this.allTypesByName,i=this.allTypes,r=e.name;r in n||(g(e.properties,O((function(n){n=L({},n,{name:n.ns.localName,inherited:t}),Object.defineProperty(n,"definedBy",{value:e});var i=n.replaces,r=n.redefines;i||r?this.redefineProperty(n,i||r,i):(n.isBody&&this.setBodyProperty(n),n.isId&&this.setIdProperty(n),this.addProperty(n))}),this)),i.push(e),n[r]=e)},si.prototype.getPackage=function(e){return this.packageMap[e]},si.prototype.getPackages=function(){return this.packages},si.prototype.registerPackage=function(e){e=L({},e);var t=this.packageMap;ci(t,e,"prefix"),ci(t,e,"uri"),g(e.types,O((function(t){this.registerType(t,e)}),this)),t[e.uri]=t[e.prefix]=e,this.packages.push(e)},si.prototype.registerType=function(e,t){var n=oi((e=L({},e,{superClass:(e.superClass||[]).slice(),extends:(e.extends||[]).slice(),properties:(e.properties||[]).slice(),meta:L(e.meta||{})})).name,t.prefix),i=n.name,r={};g(e.properties,O((function(e){var t=oi(e.name,n.prefix),i=t.name;ii(e.type)||(e.type=oi(e.type,t.prefix).name),L(e,{ns:t,name:i}),r[i]=e}),this)),L(e,{ns:n,name:i,propertiesByName:r}),g(e.extends,O((function(e){var t=oi(e,n.prefix),r=this.typeMap[t.name];r.traits=r.traits||[],r.traits.push(i)}),this)),this.definePackage(e,t),this.typeMap[i]=e},si.prototype.mapTypes=function(e,t,n){var i=ii(e.name)?{name:e.name}:this.typeMap[e.name],r=this;function o(n,i){var o=oi(n,ii(n)?"":e.prefix);r.mapTypes(o,t,i)}function a(e){return o(e,!0)}if(!i)throw new Error("unknown type <"+e.name+">");g(i.superClass,n?a:function(e){return o(e,!1)}),t(i,!n),g(i.traits,a)},si.prototype.getEffectiveDescriptor=function(e){var t=oi(e),n=new ai(t);this.mapTypes(t,(function(e,t){n.addTrait(e,t)}));var i=n.build();return this.definePackage(i,i.allTypes[i.allTypes.length-1].$pkg),i},si.prototype.definePackage=function(e,t){this.properties.define(e,"$pkg",{value:t})},pi.prototype.set=function(e,t,n){if(!d(t)||!t.length)throw new TypeError("property name must be a non-empty string");var i=this.getProperty(e,t),r=i&&i.name;void 0===n?i?delete e[r]:delete e.$attrs[ui(t)]:i?r in e?e[r]=n:li(e,i,n):e.$attrs[ui(t)]=n},pi.prototype.get=function(e,t){var n=this.getProperty(e,t);if(!n)return e.$attrs[ui(t)];var i=n.name;return!e[i]&&n.isMany&&li(e,n,[]),e[i]},pi.prototype.define=function(e,t,n){if(!n.writable){var i=n.value;delete(n=L({},n,{get:function(){return i}})).value}Object.defineProperty(e,t,n)},pi.prototype.defineDescriptor=function(e,t){this.define(e,"$descriptor",{value:t})},pi.prototype.defineModel=function(e,t){this.define(e,"$model",{value:t})},pi.prototype.getProperty=function(e,t){var n=this.model,i=n.getPropertyDescriptor(e,t);if(i)return i;if(t.includes(":"))return null;const r=n.config.strict;if(void 0!==r){const n=new TypeError(`unknown property <${t}> on <${e.$type}>`);if(r)throw n;"undefined"!=typeof console&&console.warn(n)}return null},hi.prototype.create=function(e,t){var n=this.getType(e);if(!n)throw new Error("unknown type <"+e+">");return new n(t)},hi.prototype.getType=function(e){var t=this.typeCache,n=d(e)?e:e.ns.name,i=t[n];return i||(e=this.registry.getEffectiveDescriptor(n),i=t[n]=this.factory.createType(e)),i},hi.prototype.createAny=function(e,t,n){var i=oi(e),r={$type:e,$instanceOf:function(e){return e===this.$type},get:function(e){return this[e]},set:function(e,t){!function(e,t,n){let i=e;g(t,(function(e,r){if("number"!=typeof e&&"string"!=typeof e)throw new Error("illegal key type: "+typeof e+". Key should be of type number or string.");if("constructor"===e)throw new Error("illegal key: constructor");if("__proto__"===e)throw new Error("illegal key: __proto__");let o=t[r+1],p=i[e];s(o)&&c(p)&&(p=i[e]=isNaN(+o)?{}:[]),a(o)?a(n)?delete i[e]:i[e]=n:i=p}))}(this,[e],t)}},o={name:e,isGeneric:!0,ns:{prefix:i.prefix,localName:i.localName,uri:t}};return this.properties.defineDescriptor(r,o),this.properties.defineModel(r,this),this.properties.define(r,"get",{enumerable:!1,writable:!0}),this.properties.define(r,"set",{enumerable:!1,writable:!0}),this.properties.define(r,"$parent",{enumerable:!1,writable:!0}),this.properties.define(r,"$instanceOf",{enumerable:!1,writable:!0}),g(n,(function(e,t){l(e)&&void 0!==e.value?r[e.name]=e.value:r[t]=e})),r},hi.prototype.getPackage=function(e){return this.registry.getPackage(e)},hi.prototype.getPackages=function(){return this.registry.getPackages()},hi.prototype.getElementDescriptor=function(e){return e.$descriptor},hi.prototype.hasType=function(e,t){return void 0===t&&(t=e,e=this),t in e.$model.getElementDescriptor(e).allTypesByName},hi.prototype.getPropertyDescriptor=function(e,t){return this.getElementDescriptor(e).propertiesByName[t]},hi.prototype.getTypeDescriptor=function(e){return this.registry.typeMap[e]};var di=String.fromCharCode,fi=Object.prototype.hasOwnProperty,mi=/&#(\d+);|&#x([0-9a-f]+);|&(\w+);/gi,vi={amp:"&",apos:"'",gt:">",lt:"<",quot:'"'};function yi(e,t,n,i){return i?fi.call(vi,i)?vi[i]:"&"+i+";":di(t||parseInt(n,16))}function gi(e){return e.length>3&&-1!==e.indexOf("&")?e.replace(mi,yi):e}Object.keys(vi).forEach((function(e){vi[e.toUpperCase()]=vi[e]}));var bi="non-whitespace outside of root node";function _i(e){return new Error(e)}function xi(e){return"missing namespace for prefix <"+e+">"}function wi(e){return{get:e,enumerable:!0}}function Ei(e){var t,n={};for(t in e)n[t]=e[t];return n}function Si(e){return e+"$uri"}function Ci(){return{line:0,column:0}}function ki(e){throw e}function Ri(e){if(!this)return new Ri(e);var t,n,i,r,o,a,s,c,p,l=e&&e.proxy,u=ki,h=Ci,d=!1,f=!1,m=null,v=!1;function y(e){e instanceof Error||(e=_i(e)),m=e,u(e,h)}function g(e){o&&(e instanceof Error||(e=_i(e)),o(e,h))}this.on=function(e,p){if("function"!=typeof p)throw _i("required args <name, cb>");switch(e){case"openTag":n=p;break;case"text":t=p;break;case"closeTag":i=p;break;case"error":u=p;break;case"warn":o=p;break;case"cdata":r=p;break;case"attention":c=p;break;case"question":s=p;break;case"comment":a=p;break;default:throw _i("unsupported event: "+e)}return this},this.ns=function(e){if(void 0===e&&(e={}),"object"!=typeof e)throw _i("required args <nsMap={}>");var t,n={};for(t in e)n[t]=e[t];return f=!0,p=n,this},this.parse=function(e){if("string"!=typeof e)throw _i("required args <xml=string>");return m=null,function(e){var o,u,m,b,_,x,w,E,S,C,k,R=f?[]:null,P=f?function(e){var t,n,i={};for(t in e)i[n=e[t]]=n,i[Si(n)]=t;return i}(p):null,A=[],M=0,T=!1,D=!1,B=0,N=0,j="",O=0;function L(){if(null!==k)return k;var e,t,n,i,r,o,a,s,c,l,u,h=f&&P.xmlns,m=f&&d?[]:null,v=O,y=j,b=y.length,_={},x={};e:for(;v<b;v++)if(c=!1,!(32===(l=y.charCodeAt(v))||l<14&&l>8)){for((l<65||l>122||l>90&&l<97)&&95!==l&&58!==l&&(g("illegal first char attribute name"),c=!0),u=v+1;u<b;u++)if(!((l=y.charCodeAt(u))>96&&l<123||l>64&&l<91||l>47&&l<59||46===l||45===l||95===l)){if(32===l||l<14&&l>8){g("missing attribute value"),v=u;continue e}if(61===l)break;g("illegal attribute name char"),c=!0}if("xmlns:xmlns"===(s=y.substring(v,u))&&(g("illegal declaration of xmlns"),c=!0),34===(l=y.charCodeAt(u+1)))-1===(u=y.indexOf('"',v=u+2))&&-1!==(u=y.indexOf("'",v))&&(g("attribute value quote missmatch"),c=!0);else if(39===l)-1===(u=y.indexOf("'",v=u+2))&&-1!==(u=y.indexOf('"',v))&&(g("attribute value quote missmatch"),c=!0);else for(g("missing attribute value quotes"),c=!0,u+=1;u<b&&!(32===(l=y.charCodeAt(u+1))||l<14&&l>8);u++);for(-1===u&&(g("missing closing quotes"),u=b,c=!0),c||(o=y.substring(v,u)),v=u;u+1<b&&!(32===(l=y.charCodeAt(u+1))||l<14&&l>8);u++)v===u&&(g("illegal character after attribute end"),c=!0);if(v=u+1,!c)if(s in x)g("attribute <"+s+"> already defined");else if(x[s]=!0,f)if(d){if(null!==(r="xmlns"===s?"xmlns":120===s.charCodeAt(0)&&"xmlns:"===s.substr(0,6)?s.substr(6):null)){if(e=gi(o),t=Si(r),!(a=p[e])){if("xmlns"===r||t in P&&P[t]!==e)do{a="ns"+M++}while(void 0!==P[a]);else a=r;p[e]=a}P[r]!==a&&(i||(P=Ei(P),i=!0),P[r]=a,"xmlns"===r&&(P[Si(a)]=e,h=a),P[t]=e),_[s]=o;continue}m.push(s,o)}else-1!==(l=s.indexOf(":"))?(n=P[s.substring(0,l)])?_[s=h===n?s.substr(l+1):n+s.substr(l)]=o:g(xi(s.substring(0,l))):_[s]=o;else _[s]=o}if(d)for(v=0,b=m.length;v<b;v++){if(s=m[v++],o=m[v],-1!==(l=s.indexOf(":"))){if(!(n=P[s.substring(0,l)])){g(xi(s.substring(0,l)));continue}s=h===n?s.substr(l+1):n+s.substr(l)}_[s]=o}return k=_}function $(){for(var t,n,i=/(\r\n|\r|\n)/g,r=0,o=0,a=0,s=N;B>=a&&(t=i.exec(e))&&!((s=t[0].length+t.index)>B);)r+=1,a=s;return-1==B?(o=s,n=e.substring(N)):0===N?n=e.substring(N,B):(o=B-a,n=-1==N?e.substring(B):e.substring(B,N+1)),{data:n,line:r,column:o}}h=$,l&&(C=Object.create({},{name:wi((function(){return E})),originalName:wi((function(){return S})),attrs:wi(L),ns:wi((function(){return P}))}));for(;-1!==N;){if(-1===(B=60===e.charCodeAt(N)?N:e.indexOf("<",N)))return A.length?y("unexpected end of file"):0===N?y("missing start tag"):void(N<e.length&&e.substring(N).trim()&&g(bi));if(N!==B)if(A.length){if(t&&(t(e.substring(N,B),gi,h),v))return}else if(e.substring(N,B).trim()&&(g(bi),v))return;if(33===(_=e.charCodeAt(B+1))){if(91===(b=e.charCodeAt(B+2))&&"CDATA["===e.substr(B+3,6)){if(-1===(N=e.indexOf("]]>",B)))return y("unclosed cdata");if(r&&(r(e.substring(B+9,N),h),v))return;N+=3;continue}if(45===b&&45===e.charCodeAt(B+3)){if(-1===(N=e.indexOf("--\x3e",B)))return y("unclosed comment");if(a&&(a(e.substring(B+4,N),gi,h),v))return;N+=3;continue}}if(63!==_){for(u=B+1;;u++){if(x=e.charCodeAt(u),isNaN(x))return N=-1,y("unclosed tag");if(34===x)u=-1!==(b=e.indexOf('"',u+1))?b:u;else if(39===x)u=-1!==(b=e.indexOf("'",u+1))?b:u;else if(62===x){N=u;break}}if(33!==_){if(k={},47===_){if(T=!1,D=!0,!A.length)return y("missing open tag");if(u=E=A.pop(),b=B+2+u.length,e.substring(B+2,b)!==u)return y("closing tag mismatch");for(;b<N;b++)if(!(32===(_=e.charCodeAt(b))||_>8&&_<14))return y("close tag")}else{if(47===e.charCodeAt(N-1)?(u=E=e.substring(B+1,N-1),T=!0,D=!0):(u=E=e.substring(B+1,N),T=!0,D=!1),!(_>96&&_<123||_>64&&_<91||95===_||58===_))return y("illegal first char nodeName");for(b=1,m=u.length;b<m;b++)if(!((_=u.charCodeAt(b))>96&&_<123||_>64&&_<91||_>47&&_<59||45===_||95===_||46==_)){if(32===_||_<14&&_>8){E=u.substring(0,b),k=null;break}return y("invalid nodeName")}D||A.push(E)}if(f){if(o=P,T&&(D||R.push(o),null===k&&(d=-1!==u.indexOf("xmlns",b))&&(O=b,j=u,L(),d=!1)),S=E,-1!==(_=E.indexOf(":"))){if(!(w=P[E.substring(0,_)]))return y("missing namespace on <"+S+">");E=E.substr(_+1)}else w=P.xmlns;w&&(E=w+":"+E)}if(T&&(O=b,j=u,n&&(l?n(C,gi,D,h):n(E,L,gi,D,h),v)))return;if(D){if(i&&(i(l?C:E,gi,T,h),v))return;f&&(P=T?o:R.pop())}N+=1}else{if(c&&(c(e.substring(B,N+1),gi,h),v))return;N+=1}}else{if(-1===(N=e.indexOf("?>",B)))return y("unclosed question");if(s&&(s(e.substring(B,N+2),h),v))return;N+=2}}}(e),h=Ci,v=!1,m},this.stop=function(){v=!0}}function Pi(e){return e.xml&&"lowerCase"===e.xml.tagAlias}var Ai={xsi:"http://www.w3.org/2001/XMLSchema-instance",xml:"http://www.w3.org/XML/1998/namespace"},Mi="property";function Ti(e){return e.xml&&e.xml.serialize}function Di(e,t){return Pi(t)?e.prefix+":"+((n=e.localName).charAt(0).toUpperCase()+n.slice(1)):e.name;var n}function Bi(e){return new Error(e)}function Ni(e){return e.$descriptor}function ji(e){L(this,e),this.elementsById={},this.references=[],this.warnings=[],this.addReference=function(e){this.references.push(e)},this.addElement=function(e){if(!e)throw Bi("expected element");var t,n=this.elementsById,i=Ni(e).idProperty;if(i&&(t=e.get(i.name))){if(!/^([a-z][\w-.]*:)?[a-z_][\w-.]*$/i.test(t))throw new Error("illegal ID <"+t+">");if(n[t])throw Bi("duplicate ID <"+t+">");n[t]=e}},this.addWarning=function(e){this.warnings.push(e)}}function Oi(){}function Li(){}function $i(){}function Ii(e,t){this.property=e,this.context=t}function Fi(e,t){this.element=t,this.propertyDesc=e}function zi(){}function Hi(e,t,n){this.model=e,this.type=e.getType(t),this.context=n}function Vi(e,t,n){Hi.call(this,e,t,n)}function Gi(e,t,n){this.model=e,this.context=n}function Wi(e){e instanceof hi&&(e={model:e}),L(this,{lax:!1},e)}Oi.prototype.handleEnd=function(){},Oi.prototype.handleText=function(){},Oi.prototype.handleNode=function(){},Li.prototype=Object.create(Oi.prototype),Li.prototype.handleNode=function(){return this},$i.prototype=Object.create(Oi.prototype),$i.prototype.handleText=function(e){this.body=(this.body||"")+e},Ii.prototype=Object.create($i.prototype),Ii.prototype.handleNode=function(e){if(this.element)throw Bi("expected no sub nodes");return this.element=this.createReference(e),this},Ii.prototype.handleEnd=function(){this.element.id=this.body},Ii.prototype.createReference=function(e){return{property:this.property.ns.name,id:""}},Fi.prototype=Object.create($i.prototype),Fi.prototype.handleEnd=function(){var e=this.body||"",t=this.element,n=this.propertyDesc;e=ni(n.type,e),n.isMany?t.get(n.name).push(e):t.set(n.name,e)},zi.prototype=Object.create($i.prototype),zi.prototype.handleNode=function(e){var t=this,n=this.element;return n?t=this.handleChild(e):(n=this.element=this.createElement(e),this.context.addElement(n)),t},Hi.prototype=Object.create(zi.prototype),Hi.prototype.addReference=function(e){this.context.addReference(e)},Hi.prototype.handleText=function(e){if(!Ni(this.element).bodyProperty)throw Bi("unexpected body text <"+e+">");$i.prototype.handleText.call(this,e)},Hi.prototype.handleEnd=function(){var e=this.body,t=this.element,n=Ni(t).bodyProperty;n&&void 0!==e&&(e=ni(n.type,e),t.set(n.name,e))},Hi.prototype.createElement=function(e){var t,n=e.attributes,i=this.type,r=Ni(i),o=this.context,a=new i({}),s=this.model;return g(n,(function(e,n){var i=r.propertiesByName[n];i&&i.isReference?i.isMany?g(e.split(" "),(function(e){o.addReference({element:a,property:i.ns.name,id:e})})):o.addReference({element:a,property:i.ns.name,id:e}):(i?e=ni(i.type,e):"xmlns"===n?n=":"+n:(t=oi(n,r.ns.prefix),s.getPackage(t.prefix)&&o.addWarning({message:"unknown attribute <"+n+">",element:a,property:n,value:e})),a.set(n,e))})),a},Hi.prototype.getPropertyForNode=function(e){var t=oi(e.name),n=this.type,i=this.model,r=Ni(n),o=t.name,a=r.propertiesByName[o];if(a&&!a.isAttr){const t=function(e){const t=Ti(e);return t!==Mi&&(t||null)}(a);if(t){const n=e.attributes[t];if(n){const t=function(e,t,n){const i=oi(e,t.xmlns),r=oi(`${t[i.prefix]||i.prefix}:${i.localName}`);return function(e,t){var n=e.name,i=e.localName,r=t&&t.xml&&t.xml.typePrefix;return r&&0===i.indexOf(r)?e.prefix+":"+i.slice(r.length):n}(r,n.getPackage(r.prefix))}(n,e.ns,i);return L({},a,{effectiveType:Ni(i.getType(t)).name})}}return a}var s=i.getPackage(t.prefix);if(s){const e=Di(t,s),n=i.getType(e);if(a=m(r.properties,(function(e){return!e.isVirtual&&!e.isReference&&!e.isAttribute&&n.hasType(e.type)})),a)return L({},a,{effectiveType:Ni(n).name})}else if(a=m(r.properties,(function(e){return!e.isReference&&!e.isAttribute&&"Element"===e.type})),a)return a;throw Bi("unrecognized element <"+t.name+">")},Hi.prototype.toString=function(){return"ElementDescriptor["+Ni(this.type).name+"]"},Hi.prototype.valueHandler=function(e,t){return new Fi(e,t)},Hi.prototype.referenceHandler=function(e){return new Ii(e,this.context)},Hi.prototype.handler=function(e){return"Element"===e?new Gi(this.model,e,this.context):new Hi(this.model,e,this.context)},Hi.prototype.handleChild=function(e){var t,n,i,r;if(t=this.getPropertyForNode(e),i=this.element,ri(n=t.effectiveType||t.type))return this.valueHandler(t,i);var o=(r=t.isReference?this.referenceHandler(t).handleNode(e):this.handler(n).handleNode(e)).element;return void 0!==o&&(t.isMany?i.get(t.name).push(o):i.set(t.name,o),t.isReference?(L(o,{element:i}),this.context.addReference(o)):o.$parent=i),r},Vi.prototype=Object.create(Hi.prototype),Vi.prototype.createElement=function(e){var t=e.name,n=oi(t),i=this.model,r=this.type,o=i.getPackage(n.prefix),a=o&&Di(n,o)||t;if(!r.hasType(a))throw Bi("unexpected element <"+e.originalName+">");return Hi.prototype.createElement.call(this,e)},Gi.prototype=Object.create(zi.prototype),Gi.prototype.createElement=function(e){var t=e.name,n=oi(t).prefix,i=e.ns[n+"$uri"],r=e.attributes;return this.model.createAny(t,i,r)},Gi.prototype.handleChild=function(e){var t=new Gi(this.model,"Element",this.context).handleNode(e),n=this.element,i=t.element;return void 0!==i&&((n.$children=n.$children||[]).push(i),i.$parent=n),t},Gi.prototype.handleEnd=function(){this.body&&(this.element.$body=this.body)},Wi.prototype.fromXML=function(e,t,n){var i=t.rootHandler;t instanceof Hi?(i=t,t={}):"string"==typeof t?(i=this.handler(t),t={}):"string"==typeof i&&(i=this.handler(i));var r=this.model,o=this.lax,a=new ji(L({},t,{rootHandler:i})),s=new Ri({proxy:!0}),c=function(){var e=[];return Object.defineProperty(e,"peek",{value:function(){return this[this.length-1]}}),e}();function p(e,t,n){var i=t(),r=i.line,o=i.column,s=i.data;"<"===s.charAt(0)&&-1!==s.indexOf(" ")&&(s=s.slice(0,s.indexOf(" "))+">");var c="unparsable content "+(s?s+" ":"")+"detected\n\tline: "+r+"\n\tcolumn: "+o+"\n\tnested error: "+e.message;if(n)return a.addWarning({message:c,error:e}),!0;throw Bi(c)}function l(e,t){return p(e,t,!0)}i.context=a,c.push(i);var u=/^<\?xml /i,h=/ encoding="([^"]+)"/i,d=/^utf-8$/i;function f(e,t){try{c.peek().handleText(e)}catch(e){l(e,t)}}var m=r.getPackages().reduce((function(e,t){return e[t.uri]=t.prefix,e}),Object.entries(Ai).reduce((function(e,[t,n]){return e[n]=t,e}),r.config&&r.config.nsMap||{}));return s.ns(m).on("openTag",(function(e,t,n,i){var r=e.attrs||{},a=Object.keys(r).reduce((function(e,n){var i=t(r[n]);return e[n]=i,e}),{});!function(e,t){var n=c.peek();try{c.push(n.handleNode(e))}catch(e){p(e,t,o)&&c.push(new Li)}}({name:e.name,originalName:e.originalName,attributes:a,ns:e.ns},i)})).on("question",(function(e){if(u.test(e)){var t=h.exec(e),n=t&&t[1];n&&!d.test(n)&&a.addWarning({message:"unsupported document encoding <"+n+">, falling back to UTF-8"})}})).on("closeTag",(function(){c.pop().handleEnd()})).on("cdata",f).on("text",(function(e,t,n){!function(e,t){e.trim()&&f(e,t)}(t(e),n)})).on("error",p).on("warn",l),new Promise((function(t,n){var r;try{s.parse(e),function(){var e,t,n=a.elementsById,i=a.references;for(e=0;t=i[e];e++){var r=t.element,o=n[t.id],s=Ni(r).propertiesByName[t.property];if(o||a.addWarning({message:"unresolved reference <"+t.id+">",element:t.element,property:t.property,value:t.id}),s.isMany){var c=r.get(s.name),p=c.indexOf(t);-1===p&&(p=c.length),o?c[p]=o:c.splice(p,1)}else r.set(s.name,o)}}()}catch(e){r=e}var o=i.element;r||o||(r=Bi("failed to parse document as <"+i.type.$descriptor.name+">"));var c=a.warnings,p=a.references,l=a.elementsById;return r?(r.warnings=c,n(r)):t({rootElement:o,elementsById:l,references:p,warnings:c})}))},Wi.prototype.handler=function(e){return new Vi(this.model,e)};var Ui=/<|>|'|"|&|\n\r|\n/g,qi=/<|>|&/g;function Ki(e){this.prefixMap={},this.uriMap={},this.used={},this.wellknown=[],this.custom=[],this.parent=e,this.defaultPrefixMap=e&&e.defaultPrefixMap||{}}function Yi(e,t){return Pi(t)?(n=e).charAt(0).toLowerCase()+n.slice(1):e;var n}function Xi(e,t){e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}})}function Zi(e){return d(e)?e:(e.prefix?e.prefix+":":"")+e.localName}Ki.prototype.mapDefaultPrefixes=function(e){this.defaultPrefixMap=e},Ki.prototype.defaultUriByPrefix=function(e){return this.defaultPrefixMap[e]},Ki.prototype.byUri=function(e){return this.uriMap[e]||this.parent&&this.parent.byUri(e)},Ki.prototype.add=function(e,t){this.uriMap[e.uri]=e,t?this.wellknown.push(e):this.custom.push(e),this.mapPrefix(e.prefix,e.uri)},Ki.prototype.uriByPrefix=function(e){return this.prefixMap[e||"xmlns"]||this.parent&&this.parent.uriByPrefix(e)},Ki.prototype.mapPrefix=function(e,t){this.prefixMap[e||"xmlns"]=t},Ki.prototype.getNSKey=function(e){return void 0!==e.prefix?e.uri+"|"+e.prefix:e.uri},Ki.prototype.logUsed=function(e){var t=e.uri,n=this.getNSKey(e);this.used[n]=this.byUri(t),this.parent&&this.parent.logUsed(e)},Ki.prototype.getUsed=function(e){return[].concat(this.wellknown,this.custom).filter((e=>{var t=this.getNSKey(e);return this.used[t]}))};var Qi={"\n":"#10","\n\r":"#10",'"':"#34","'":"#39","<":"#60",">":"#62","&":"#38"},Ji={"<":"lt",">":"gt","&":"amp"};function er(e,t,n){return(e=d(e)?e:""+e).replace(t,(function(e){return"&"+n[e]+";"}))}function tr(e){this.tagName=e}function nr(){}function ir(e){this.tagName=e}function rr(e,t){this.body=[],this.attrs=[],this.parent=e,this.propertyDescriptor=t}function or(e,t,n){rr.call(this,e,t),this.serialization=n}function ar(){this.value="",this.write=function(e){this.value+=e}}function sr(e,t){var n=[""];this.append=function(t){return e.write(t),this},this.appendNewLine=function(){return t&&e.write("\n"),this},this.appendIndent=function(){return t&&e.write(n.join(" ")),this},this.indent=function(){return n.push(""),this},this.unindent=function(){return n.pop(),this}}function cr(e){return e=L({format:!1,preamble:!0},e||{}),{toXML:function(t,n){var i=n||new ar,r=new sr(i,e.format);e.preamble&&r.append('<?xml version="1.0" encoding="UTF-8"?>\n');var o=new rr,a=t.$model;if(o.getNamespaces().mapDefaultPrefixes(function(e){const t=e.config&&e.config.nsMap||{},n={};for(const e in Ai)n[e]=Ai[e];for(const e in t){n[t[e]]=e}for(const t of e.getPackages())n[t.prefix]=t.uri;return n}(a)),o.build(t).serializeTo(r),!n)return i.value}}}function pr(e,t){hi.call(this,e,t)}tr.prototype.build=function(e){return this.element=e,this},tr.prototype.serializeTo=function(e){e.appendIndent().append("<"+this.tagName+">"+this.element.id+"</"+this.tagName+">").appendNewLine()},nr.prototype.serializeValue=nr.prototype.serializeTo=function(e){e.append(this.escape?er(this.value,qi,Ji):this.value)},nr.prototype.build=function(e,t){return this.value=t,"String"===e.type&&-1!==t.search(qi)&&(this.escape=!0),this},Xi(ir,nr),ir.prototype.serializeTo=function(e){e.appendIndent().append("<"+this.tagName+">"),this.serializeValue(e),e.append("</"+this.tagName+">").appendNewLine()},rr.prototype.build=function(e){this.element=e;var t,n,i=e.$descriptor,r=this.propertyDescriptor,o=i.isGeneric;return t=o?this.parseGenericNsAttributes(e):this.parseNsAttributes(e),this.ns=r?this.nsPropertyTagName(r):this.nsTagName(i),this.tagName=this.addTagName(this.ns),o?this.parseGenericContainments(e):(n=function(e){return y(e.$descriptor.properties,(function(t){var n=t.name;if(t.isVirtual)return!1;if(!f(e,n))return!1;var i=e[n];return i!==t.default&&null!==i&&(!t.isMany||i.length)}))}(e),this.parseAttributes(y(n,(function(e){return e.isAttr}))),this.parseContainments(function(e){return y(e,(function(e){return!e.isAttr}))}(n))),this.parseGenericAttributes(e,t),this},rr.prototype.nsTagName=function(e){return function(e,t){return t.isGeneric?L({localName:t.ns.localName},e):L({localName:Yi(t.ns.localName,t.$pkg)},e)}(this.logNamespaceUsed(e.ns),e)},rr.prototype.nsPropertyTagName=function(e){return function(e,t){return L({localName:t.ns.localName},e)}(this.logNamespaceUsed(e.ns),e)},rr.prototype.isLocalNs=function(e){return e.uri===this.ns.uri},rr.prototype.nsAttributeName=function(e){var t;if(t=d(e)?oi(e):e.ns,e.inherited)return{localName:t.localName};var n=this.logNamespaceUsed(t);return this.getNamespaces().logUsed(n),this.isLocalNs(n)?{localName:t.localName}:L({localName:t.localName},n)},rr.prototype.parseGenericNsAttributes=function(e){return Object.entries(e).filter((([t,n])=>!t.startsWith("$")&&this.parseNsAttribute(e,t,n))).map((([e,t])=>({name:e,value:t})))},rr.prototype.parseGenericContainments=function(e){var t=e.$body;t&&this.body.push((new nr).build({type:"String"},t));var n=e.$children;n&&g(n,(e=>{this.body.push(new rr(this).build(e))}))},rr.prototype.parseNsAttribute=function(e,t,n){var i,r=e.$model,o=oi(t);if("xmlns"===o.prefix&&(i={prefix:o.localName,uri:n}),o.prefix||"xmlns"!==o.localName||(i={uri:n}),!i)return{name:t,value:n};if(r&&r.getPackage(n))this.logNamespace(i,!0,!0);else{var a=this.logNamespaceUsed(i,!0);this.getNamespaces().logUsed(a)}},rr.prototype.parseNsAttributes=function(e){var t=this,n=e.$attrs,i=[];return g(n,(function(n,r){var o=t.parseNsAttribute(e,r,n);o&&i.push(o)})),i},rr.prototype.parseGenericAttributes=function(e,t){var n=this;g(t,(function(t){try{n.addAttribute(n.nsAttributeName(t.name),t.value)}catch(n){"undefined"!=typeof console&&console.warn(`missing namespace information for <${t.name}=${t.value}> on`,e,n)}}))},rr.prototype.parseContainments=function(e){var t=this,n=this.body,i=this.element;g(e,(function(e){var r=i.get(e.name),o=e.isReference;if(e.isMany||(r=[r]),e.isBody)n.push((new nr).build(e,r[0]));else if(ri(e.type))g(r,(function(i){n.push(new ir(t.addTagName(t.nsPropertyTagName(e))).build(e,i))}));else if(o)g(r,(function(i){n.push(new tr(t.addTagName(t.nsPropertyTagName(e))).build(i))}));else{var a=Ti(e);g(r,(function(i){var r;r=a?a===Mi?new rr(t,e):new or(t,e,a):new rr(t),n.push(r.build(i))}))}}))},rr.prototype.getNamespaces=function(e){var t,n=this.namespaces,i=this.parent;return n||(t=i&&i.getNamespaces(),e||!t?this.namespaces=n=new Ki(t):n=t),n},rr.prototype.logNamespace=function(e,t,n){var i=this.getNamespaces(n),r=e.uri,o=e.prefix;return i.byUri(r)&&!n||i.add(e,t),i.mapPrefix(o,r),e},rr.prototype.logNamespaceUsed=function(e,t){var n,i,r,o=this.getNamespaces(t),a=e.prefix,s=e.uri;if(!a&&!s)return{localName:e.localName};if(r=o.defaultUriByPrefix(a),!(s=s||r||o.uriByPrefix(a)))throw new Error("no namespace uri given for prefix <"+a+">");if((e=o.byUri(s))||a||(e=this.logNamespace({uri:s},r===s,!0)),!e){for(n=a,i=1;o.uriByPrefix(n);)n=a+"_"+i++;e=this.logNamespace({prefix:n,uri:s},r===s)}return a&&o.mapPrefix(a,s),e},rr.prototype.parseAttributes=function(e){var t=this,n=this.element;g(e,(function(e){var i=n.get(e.name);if(e.isReference)if(e.isMany){var r=[];g(i,(function(e){r.push(e.id)})),i=r.join(" ")}else i=i.id;t.addAttribute(t.nsAttributeName(e),i)}))},rr.prototype.addTagName=function(e){var t=this.logNamespaceUsed(e);return this.getNamespaces().logUsed(t),Zi(e)},rr.prototype.addAttribute=function(e,t){var n=this.attrs;d(t)&&(t=er(t,Ui,Qi));var i=v(n,(function(t){return t.name.localName===e.localName&&t.name.uri===e.uri&&t.name.prefix===e.prefix})),r={name:e,value:t};-1!==i?n.splice(i,1,r):n.push(r)},rr.prototype.serializeAttributes=function(e){var t=this.attrs,n=this.namespaces;n&&(t=function(e){return e.getUsed().filter((function(e){return"xml"!==e.prefix})).map((function(e){return{name:"xmlns"+(e.prefix?":"+e.prefix:""),value:e.uri}}))}(n).concat(t)),g(t,(function(t){e.append(" ").append(Zi(t.name)).append('="').append(t.value).append('"')}))},rr.prototype.serializeTo=function(e){var t=this.body[0],n=t&&t.constructor!==nr;e.appendIndent().append("<"+this.tagName),this.serializeAttributes(e),e.append(t?">":" />"),t&&(n&&e.appendNewLine().indent(),g(this.body,(function(t){t.serializeTo(e)})),n&&e.unindent().appendIndent(),e.append("</"+this.tagName+">")),e.appendNewLine()},Xi(or,rr),or.prototype.parseNsAttributes=function(e){var t=rr.prototype.parseNsAttributes.call(this,e).filter((e=>e.name!==this.serialization)),n=e.$descriptor;if(n.name===this.propertyDescriptor.type)return t;var i=this.typeNs=this.nsTagName(n);this.getNamespaces().logUsed(this.typeNs);var r=e.$model.getPackage(i.uri),o=r.xml&&r.xml.typePrefix||"";return this.addAttribute(this.nsAttributeName(this.serialization),(i.prefix?i.prefix+":":"")+o+n.ns.localName),t},or.prototype.isLocalNs=function(e){return e.uri===(this.typeNs||this.ns).uri},pr.prototype=Object.create(hi.prototype),pr.prototype.fromXML=function(e,t,n){d(t)||(n=t,t="bpmn:Definitions");var i=new Wi(L({model:this,lax:!0},n)),r=i.handler(t);return i.fromXML(e,r)},pr.prototype.toXML=function(e,t){var n=new cr(t);return new Promise((function(t,i){try{return t({xml:n.toXML(e)})}catch(e){return i(e)}}))};const lr={bpmn:{name:"BPMN20",uri:"http://www.omg.org/spec/BPMN/20100524/MODEL",prefix:"bpmn",associations:[],types:[{name:"Interface",superClass:["RootElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"operations",type:"Operation",isMany:!0},{name:"implementationRef",isAttr:!0,type:"String"}]},{name:"Operation",superClass:["BaseElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"inMessageRef",type:"Message",isReference:!0},{name:"outMessageRef",type:"Message",isReference:!0},{name:"errorRef",type:"Error",isMany:!0,isReference:!0},{name:"implementationRef",isAttr:!0,type:"String"}]},{name:"EndPoint",superClass:["RootElement"]},{name:"Auditing",superClass:["BaseElement"]},{name:"GlobalTask",superClass:["CallableElement"],properties:[{name:"resources",type:"ResourceRole",isMany:!0}]},{name:"Monitoring",superClass:["BaseElement"]},{name:"Performer",superClass:["ResourceRole"]},{name:"Process",superClass:["FlowElementsContainer","CallableElement"],properties:[{name:"processType",type:"ProcessType",isAttr:!0},{name:"isClosed",isAttr:!0,type:"Boolean"},{name:"auditing",type:"Auditing"},{name:"monitoring",type:"Monitoring"},{name:"properties",type:"Property",isMany:!0},{name:"laneSets",isMany:!0,replaces:"FlowElementsContainer#laneSets",type:"LaneSet"},{name:"flowElements",isMany:!0,replaces:"FlowElementsContainer#flowElements",type:"FlowElement"},{name:"artifacts",type:"Artifact",isMany:!0},{name:"resources",type:"ResourceRole",isMany:!0},{name:"correlationSubscriptions",type:"CorrelationSubscription",isMany:!0},{name:"supports",type:"Process",isMany:!0,isReference:!0},{name:"definitionalCollaborationRef",type:"Collaboration",isAttr:!0,isReference:!0},{name:"isExecutable",isAttr:!0,type:"Boolean"}]},{name:"LaneSet",superClass:["BaseElement"],properties:[{name:"lanes",type:"Lane",isMany:!0},{name:"name",isAttr:!0,type:"String"}]},{name:"Lane",superClass:["BaseElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"partitionElementRef",type:"BaseElement",isAttr:!0,isReference:!0},{name:"partitionElement",type:"BaseElement"},{name:"flowNodeRef",type:"FlowNode",isMany:!0,isReference:!0},{name:"childLaneSet",type:"LaneSet",xml:{serialize:"xsi:type"}}]},{name:"GlobalManualTask",superClass:["GlobalTask"]},{name:"ManualTask",superClass:["Task"]},{name:"UserTask",superClass:["Task"],properties:[{name:"renderings",type:"Rendering",isMany:!0},{name:"implementation",isAttr:!0,type:"String"}]},{name:"Rendering",superClass:["BaseElement"]},{name:"HumanPerformer",superClass:["Performer"]},{name:"PotentialOwner",superClass:["HumanPerformer"]},{name:"GlobalUserTask",superClass:["GlobalTask"],properties:[{name:"implementation",isAttr:!0,type:"String"},{name:"renderings",type:"Rendering",isMany:!0}]},{name:"Gateway",isAbstract:!0,superClass:["FlowNode"],properties:[{name:"gatewayDirection",type:"GatewayDirection",default:"Unspecified",isAttr:!0}]},{name:"EventBasedGateway",superClass:["Gateway"],properties:[{name:"instantiate",default:!1,isAttr:!0,type:"Boolean"},{name:"eventGatewayType",type:"EventBasedGatewayType",isAttr:!0,default:"Exclusive"}]},{name:"ComplexGateway",superClass:["Gateway"],properties:[{name:"activationCondition",type:"Expression",xml:{serialize:"xsi:type"}},{name:"default",type:"SequenceFlow",isAttr:!0,isReference:!0}]},{name:"ExclusiveGateway",superClass:["Gateway"],properties:[{name:"default",type:"SequenceFlow",isAttr:!0,isReference:!0}]},{name:"InclusiveGateway",superClass:["Gateway"],properties:[{name:"default",type:"SequenceFlow",isAttr:!0,isReference:!0}]},{name:"ParallelGateway",superClass:["Gateway"]},{name:"RootElement",isAbstract:!0,superClass:["BaseElement"]},{name:"Relationship",superClass:["BaseElement"],properties:[{name:"type",isAttr:!0,type:"String"},{name:"direction",type:"RelationshipDirection",isAttr:!0},{name:"source",isMany:!0,isReference:!0,type:"Element"},{name:"target",isMany:!0,isReference:!0,type:"Element"}]},{name:"BaseElement",isAbstract:!0,properties:[{name:"id",isAttr:!0,type:"String",isId:!0},{name:"documentation",type:"Documentation",isMany:!0},{name:"extensionDefinitions",type:"ExtensionDefinition",isMany:!0,isReference:!0},{name:"extensionElements",type:"ExtensionElements"}]},{name:"Extension",properties:[{name:"mustUnderstand",default:!1,isAttr:!0,type:"Boolean"},{name:"definition",type:"ExtensionDefinition",isAttr:!0,isReference:!0}]},{name:"ExtensionDefinition",properties:[{name:"name",isAttr:!0,type:"String"},{name:"extensionAttributeDefinitions",type:"ExtensionAttributeDefinition",isMany:!0}]},{name:"ExtensionAttributeDefinition",properties:[{name:"name",isAttr:!0,type:"String"},{name:"type",isAttr:!0,type:"String"},{name:"isReference",default:!1,isAttr:!0,type:"Boolean"},{name:"extensionDefinition",type:"ExtensionDefinition",isAttr:!0,isReference:!0}]},{name:"ExtensionElements",properties:[{name:"valueRef",isAttr:!0,isReference:!0,type:"Element"},{name:"values",type:"Element",isMany:!0},{name:"extensionAttributeDefinition",type:"ExtensionAttributeDefinition",isAttr:!0,isReference:!0}]},{name:"Documentation",superClass:["BaseElement"],properties:[{name:"text",type:"String",isBody:!0},{name:"textFormat",default:"text/plain",isAttr:!0,type:"String"}]},{name:"Event",isAbstract:!0,superClass:["FlowNode","InteractionNode"],properties:[{name:"properties",type:"Property",isMany:!0}]},{name:"IntermediateCatchEvent",superClass:["CatchEvent"]},{name:"IntermediateThrowEvent",superClass:["ThrowEvent"]},{name:"EndEvent",superClass:["ThrowEvent"]},{name:"StartEvent",superClass:["CatchEvent"],properties:[{name:"isInterrupting",default:!0,isAttr:!0,type:"Boolean"}]},{name:"ThrowEvent",isAbstract:!0,superClass:["Event"],properties:[{name:"dataInputs",type:"DataInput",isMany:!0},{name:"dataInputAssociations",type:"DataInputAssociation",isMany:!0},{name:"inputSet",type:"InputSet"},{name:"eventDefinitions",type:"EventDefinition",isMany:!0},{name:"eventDefinitionRef",type:"EventDefinition",isMany:!0,isReference:!0}]},{name:"CatchEvent",isAbstract:!0,superClass:["Event"],properties:[{name:"parallelMultiple",isAttr:!0,type:"Boolean",default:!1},{name:"dataOutputs",type:"DataOutput",isMany:!0},{name:"dataOutputAssociations",type:"DataOutputAssociation",isMany:!0},{name:"outputSet",type:"OutputSet"},{name:"eventDefinitions",type:"EventDefinition",isMany:!0},{name:"eventDefinitionRef",type:"EventDefinition",isMany:!0,isReference:!0}]},{name:"BoundaryEvent",superClass:["CatchEvent"],properties:[{name:"cancelActivity",default:!0,isAttr:!0,type:"Boolean"},{name:"attachedToRef",type:"Activity",isAttr:!0,isReference:!0}]},{name:"EventDefinition",isAbstract:!0,superClass:["RootElement"]},{name:"CancelEventDefinition",superClass:["EventDefinition"]},{name:"ErrorEventDefinition",superClass:["EventDefinition"],properties:[{name:"errorRef",type:"Error",isAttr:!0,isReference:!0}]},{name:"TerminateEventDefinition",superClass:["EventDefinition"]},{name:"EscalationEventDefinition",superClass:["EventDefinition"],properties:[{name:"escalationRef",type:"Escalation",isAttr:!0,isReference:!0}]},{name:"Escalation",properties:[{name:"structureRef",type:"ItemDefinition",isAttr:!0,isReference:!0},{name:"name",isAttr:!0,type:"String"},{name:"escalationCode",isAttr:!0,type:"String"}],superClass:["RootElement"]},{name:"CompensateEventDefinition",superClass:["EventDefinition"],properties:[{name:"waitForCompletion",isAttr:!0,type:"Boolean",default:!0},{name:"activityRef",type:"Activity",isAttr:!0,isReference:!0}]},{name:"TimerEventDefinition",superClass:["EventDefinition"],properties:[{name:"timeDate",type:"Expression",xml:{serialize:"xsi:type"}},{name:"timeCycle",type:"Expression",xml:{serialize:"xsi:type"}},{name:"timeDuration",type:"Expression",xml:{serialize:"xsi:type"}}]},{name:"LinkEventDefinition",superClass:["EventDefinition"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"target",type:"LinkEventDefinition",isReference:!0},{name:"source",type:"LinkEventDefinition",isMany:!0,isReference:!0}]},{name:"MessageEventDefinition",superClass:["EventDefinition"],properties:[{name:"messageRef",type:"Message",isAttr:!0,isReference:!0},{name:"operationRef",type:"Operation",isAttr:!0,isReference:!0}]},{name:"ConditionalEventDefinition",superClass:["EventDefinition"],properties:[{name:"condition",type:"Expression",xml:{serialize:"xsi:type"}}]},{name:"SignalEventDefinition",superClass:["EventDefinition"],properties:[{name:"signalRef",type:"Signal",isAttr:!0,isReference:!0}]},{name:"Signal",superClass:["RootElement"],properties:[{name:"structureRef",type:"ItemDefinition",isAttr:!0,isReference:!0},{name:"name",isAttr:!0,type:"String"}]},{name:"ImplicitThrowEvent",superClass:["ThrowEvent"]},{name:"DataState",superClass:["BaseElement"],properties:[{name:"name",isAttr:!0,type:"String"}]},{name:"ItemAwareElement",superClass:["BaseElement"],properties:[{name:"itemSubjectRef",type:"ItemDefinition",isAttr:!0,isReference:!0},{name:"dataState",type:"DataState"}]},{name:"DataAssociation",superClass:["BaseElement"],properties:[{name:"sourceRef",type:"ItemAwareElement",isMany:!0,isReference:!0},{name:"targetRef",type:"ItemAwareElement",isReference:!0},{name:"transformation",type:"FormalExpression",xml:{serialize:"property"}},{name:"assignment",type:"Assignment",isMany:!0}]},{name:"DataInput",superClass:["ItemAwareElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"isCollection",default:!1,isAttr:!0,type:"Boolean"},{name:"inputSetRef",type:"InputSet",isMany:!0,isVirtual:!0,isReference:!0},{name:"inputSetWithOptional",type:"InputSet",isMany:!0,isVirtual:!0,isReference:!0},{name:"inputSetWithWhileExecuting",type:"InputSet",isMany:!0,isVirtual:!0,isReference:!0}]},{name:"DataOutput",superClass:["ItemAwareElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"isCollection",default:!1,isAttr:!0,type:"Boolean"},{name:"outputSetRef",type:"OutputSet",isMany:!0,isVirtual:!0,isReference:!0},{name:"outputSetWithOptional",type:"OutputSet",isMany:!0,isVirtual:!0,isReference:!0},{name:"outputSetWithWhileExecuting",type:"OutputSet",isMany:!0,isVirtual:!0,isReference:!0}]},{name:"InputSet",superClass:["BaseElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"dataInputRefs",type:"DataInput",isMany:!0,isReference:!0},{name:"optionalInputRefs",type:"DataInput",isMany:!0,isReference:!0},{name:"whileExecutingInputRefs",type:"DataInput",isMany:!0,isReference:!0},{name:"outputSetRefs",type:"OutputSet",isMany:!0,isReference:!0}]},{name:"OutputSet",superClass:["BaseElement"],properties:[{name:"dataOutputRefs",type:"DataOutput",isMany:!0,isReference:!0},{name:"name",isAttr:!0,type:"String"},{name:"inputSetRefs",type:"InputSet",isMany:!0,isReference:!0},{name:"optionalOutputRefs",type:"DataOutput",isMany:!0,isReference:!0},{name:"whileExecutingOutputRefs",type:"DataOutput",isMany:!0,isReference:!0}]},{name:"Property",superClass:["ItemAwareElement"],properties:[{name:"name",isAttr:!0,type:"String"}]},{name:"DataInputAssociation",superClass:["DataAssociation"]},{name:"DataOutputAssociation",superClass:["DataAssociation"]},{name:"InputOutputSpecification",superClass:["BaseElement"],properties:[{name:"dataInputs",type:"DataInput",isMany:!0},{name:"dataOutputs",type:"DataOutput",isMany:!0},{name:"inputSets",type:"InputSet",isMany:!0},{name:"outputSets",type:"OutputSet",isMany:!0}]},{name:"DataObject",superClass:["FlowElement","ItemAwareElement"],properties:[{name:"isCollection",default:!1,isAttr:!0,type:"Boolean"}]},{name:"InputOutputBinding",properties:[{name:"inputDataRef",type:"InputSet",isAttr:!0,isReference:!0},{name:"outputDataRef",type:"OutputSet",isAttr:!0,isReference:!0},{name:"operationRef",type:"Operation",isAttr:!0,isReference:!0}]},{name:"Assignment",superClass:["BaseElement"],properties:[{name:"from",type:"Expression",xml:{serialize:"xsi:type"}},{name:"to",type:"Expression",xml:{serialize:"xsi:type"}}]},{name:"DataStore",superClass:["RootElement","ItemAwareElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"capacity",isAttr:!0,type:"Integer"},{name:"isUnlimited",default:!0,isAttr:!0,type:"Boolean"}]},{name:"DataStoreReference",superClass:["ItemAwareElement","FlowElement"],properties:[{name:"dataStoreRef",type:"DataStore",isAttr:!0,isReference:!0}]},{name:"DataObjectReference",superClass:["ItemAwareElement","FlowElement"],properties:[{name:"dataObjectRef",type:"DataObject",isAttr:!0,isReference:!0}]},{name:"ConversationLink",superClass:["BaseElement"],properties:[{name:"sourceRef",type:"InteractionNode",isAttr:!0,isReference:!0},{name:"targetRef",type:"InteractionNode",isAttr:!0,isReference:!0},{name:"name",isAttr:!0,type:"String"}]},{name:"ConversationAssociation",superClass:["BaseElement"],properties:[{name:"innerConversationNodeRef",type:"ConversationNode",isAttr:!0,isReference:!0},{name:"outerConversationNodeRef",type:"ConversationNode",isAttr:!0,isReference:!0}]},{name:"CallConversation",superClass:["ConversationNode"],properties:[{name:"calledCollaborationRef",type:"Collaboration",isAttr:!0,isReference:!0},{name:"participantAssociations",type:"ParticipantAssociation",isMany:!0}]},{name:"Conversation",superClass:["ConversationNode"]},{name:"SubConversation",superClass:["ConversationNode"],properties:[{name:"conversationNodes",type:"ConversationNode",isMany:!0}]},{name:"ConversationNode",isAbstract:!0,superClass:["InteractionNode","BaseElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"participantRef",type:"Participant",isMany:!0,isReference:!0},{name:"messageFlowRefs",type:"MessageFlow",isMany:!0,isReference:!0},{name:"correlationKeys",type:"CorrelationKey",isMany:!0}]},{name:"GlobalConversation",superClass:["Collaboration"]},{name:"PartnerEntity",superClass:["RootElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"participantRef",type:"Participant",isMany:!0,isReference:!0}]},{name:"PartnerRole",superClass:["RootElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"participantRef",type:"Participant",isMany:!0,isReference:!0}]},{name:"CorrelationProperty",superClass:["RootElement"],properties:[{name:"correlationPropertyRetrievalExpression",type:"CorrelationPropertyRetrievalExpression",isMany:!0},{name:"name",isAttr:!0,type:"String"},{name:"type",type:"ItemDefinition",isAttr:!0,isReference:!0}]},{name:"Error",superClass:["RootElement"],properties:[{name:"structureRef",type:"ItemDefinition",isAttr:!0,isReference:!0},{name:"name",isAttr:!0,type:"String"},{name:"errorCode",isAttr:!0,type:"String"}]},{name:"CorrelationKey",superClass:["BaseElement"],properties:[{name:"correlationPropertyRef",type:"CorrelationProperty",isMany:!0,isReference:!0},{name:"name",isAttr:!0,type:"String"}]},{name:"Expression",superClass:["BaseElement"],isAbstract:!1,properties:[{name:"body",isBody:!0,type:"String"}]},{name:"FormalExpression",superClass:["Expression"],properties:[{name:"language",isAttr:!0,type:"String"},{name:"evaluatesToTypeRef",type:"ItemDefinition",isAttr:!0,isReference:!0}]},{name:"Message",superClass:["RootElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"itemRef",type:"ItemDefinition",isAttr:!0,isReference:!0}]},{name:"ItemDefinition",superClass:["RootElement"],properties:[{name:"itemKind",type:"ItemKind",isAttr:!0},{name:"structureRef",isAttr:!0,type:"String"},{name:"isCollection",default:!1,isAttr:!0,type:"Boolean"},{name:"import",type:"Import",isAttr:!0,isReference:!0}]},{name:"FlowElement",isAbstract:!0,superClass:["BaseElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"auditing",type:"Auditing"},{name:"monitoring",type:"Monitoring"},{name:"categoryValueRef",type:"CategoryValue",isMany:!0,isReference:!0}]},{name:"SequenceFlow",superClass:["FlowElement"],properties:[{name:"isImmediate",isAttr:!0,type:"Boolean"},{name:"conditionExpression",type:"Expression",xml:{serialize:"xsi:type"}},{name:"sourceRef",type:"FlowNode",isAttr:!0,isReference:!0},{name:"targetRef",type:"FlowNode",isAttr:!0,isReference:!0}]},{name:"FlowElementsContainer",isAbstract:!0,superClass:["BaseElement"],properties:[{name:"laneSets",type:"LaneSet",isMany:!0},{name:"flowElements",type:"FlowElement",isMany:!0}]},{name:"CallableElement",isAbstract:!0,superClass:["RootElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"ioSpecification",type:"InputOutputSpecification",xml:{serialize:"property"}},{name:"supportedInterfaceRef",type:"Interface",isMany:!0,isReference:!0},{name:"ioBinding",type:"InputOutputBinding",isMany:!0,xml:{serialize:"property"}}]},{name:"FlowNode",isAbstract:!0,superClass:["FlowElement"],properties:[{name:"incoming",type:"SequenceFlow",isMany:!0,isReference:!0},{name:"outgoing",type:"SequenceFlow",isMany:!0,isReference:!0},{name:"lanes",type:"Lane",isMany:!0,isVirtual:!0,isReference:!0}]},{name:"CorrelationPropertyRetrievalExpression",superClass:["BaseElement"],properties:[{name:"messagePath",type:"FormalExpression"},{name:"messageRef",type:"Message",isAttr:!0,isReference:!0}]},{name:"CorrelationPropertyBinding",superClass:["BaseElement"],properties:[{name:"dataPath",type:"FormalExpression"},{name:"correlationPropertyRef",type:"CorrelationProperty",isAttr:!0,isReference:!0}]},{name:"Resource",superClass:["RootElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"resourceParameters",type:"ResourceParameter",isMany:!0}]},{name:"ResourceParameter",superClass:["BaseElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"isRequired",isAttr:!0,type:"Boolean"},{name:"type",type:"ItemDefinition",isAttr:!0,isReference:!0}]},{name:"CorrelationSubscription",superClass:["BaseElement"],properties:[{name:"correlationKeyRef",type:"CorrelationKey",isAttr:!0,isReference:!0},{name:"correlationPropertyBinding",type:"CorrelationPropertyBinding",isMany:!0}]},{name:"MessageFlow",superClass:["BaseElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"sourceRef",type:"InteractionNode",isAttr:!0,isReference:!0},{name:"targetRef",type:"InteractionNode",isAttr:!0,isReference:!0},{name:"messageRef",type:"Message",isAttr:!0,isReference:!0}]},{name:"MessageFlowAssociation",superClass:["BaseElement"],properties:[{name:"innerMessageFlowRef",type:"MessageFlow",isAttr:!0,isReference:!0},{name:"outerMessageFlowRef",type:"MessageFlow",isAttr:!0,isReference:!0}]},{name:"InteractionNode",isAbstract:!0,properties:[{name:"incomingConversationLinks",type:"ConversationLink",isMany:!0,isVirtual:!0,isReference:!0},{name:"outgoingConversationLinks",type:"ConversationLink",isMany:!0,isVirtual:!0,isReference:!0}]},{name:"Participant",superClass:["InteractionNode","BaseElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"interfaceRef",type:"Interface",isMany:!0,isReference:!0},{name:"participantMultiplicity",type:"ParticipantMultiplicity"},{name:"endPointRefs",type:"EndPoint",isMany:!0,isReference:!0},{name:"processRef",type:"Process",isAttr:!0,isReference:!0}]},{name:"ParticipantAssociation",superClass:["BaseElement"],properties:[{name:"innerParticipantRef",type:"Participant",isAttr:!0,isReference:!0},{name:"outerParticipantRef",type:"Participant",isAttr:!0,isReference:!0}]},{name:"ParticipantMultiplicity",properties:[{name:"minimum",default:0,isAttr:!0,type:"Integer"},{name:"maximum",default:1,isAttr:!0,type:"Integer"}],superClass:["BaseElement"]},{name:"Collaboration",superClass:["RootElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"isClosed",isAttr:!0,type:"Boolean"},{name:"participants",type:"Participant",isMany:!0},{name:"messageFlows",type:"MessageFlow",isMany:!0},{name:"artifacts",type:"Artifact",isMany:!0},{name:"conversations",type:"ConversationNode",isMany:!0},{name:"conversationAssociations",type:"ConversationAssociation"},{name:"participantAssociations",type:"ParticipantAssociation",isMany:!0},{name:"messageFlowAssociations",type:"MessageFlowAssociation",isMany:!0},{name:"correlationKeys",type:"CorrelationKey",isMany:!0},{name:"choreographyRef",type:"Choreography",isMany:!0,isReference:!0},{name:"conversationLinks",type:"ConversationLink",isMany:!0}]},{name:"ChoreographyActivity",isAbstract:!0,superClass:["FlowNode"],properties:[{name:"participantRef",type:"Participant",isMany:!0,isReference:!0},{name:"initiatingParticipantRef",type:"Participant",isAttr:!0,isReference:!0},{name:"correlationKeys",type:"CorrelationKey",isMany:!0},{name:"loopType",type:"ChoreographyLoopType",default:"None",isAttr:!0}]},{name:"CallChoreography",superClass:["ChoreographyActivity"],properties:[{name:"calledChoreographyRef",type:"Choreography",isAttr:!0,isReference:!0},{name:"participantAssociations",type:"ParticipantAssociation",isMany:!0}]},{name:"SubChoreography",superClass:["ChoreographyActivity","FlowElementsContainer"],properties:[{name:"artifacts",type:"Artifact",isMany:!0}]},{name:"ChoreographyTask",superClass:["ChoreographyActivity"],properties:[{name:"messageFlowRef",type:"MessageFlow",isMany:!0,isReference:!0}]},{name:"Choreography",superClass:["Collaboration","FlowElementsContainer"]},{name:"GlobalChoreographyTask",superClass:["Choreography"],properties:[{name:"initiatingParticipantRef",type:"Participant",isAttr:!0,isReference:!0}]},{name:"TextAnnotation",superClass:["Artifact"],properties:[{name:"text",type:"String"},{name:"textFormat",default:"text/plain",isAttr:!0,type:"String"}]},{name:"Group",superClass:["Artifact"],properties:[{name:"categoryValueRef",type:"CategoryValue",isAttr:!0,isReference:!0}]},{name:"Association",superClass:["Artifact"],properties:[{name:"associationDirection",type:"AssociationDirection",isAttr:!0},{name:"sourceRef",type:"BaseElement",isAttr:!0,isReference:!0},{name:"targetRef",type:"BaseElement",isAttr:!0,isReference:!0}]},{name:"Category",superClass:["RootElement"],properties:[{name:"categoryValue",type:"CategoryValue",isMany:!0},{name:"name",isAttr:!0,type:"String"}]},{name:"Artifact",isAbstract:!0,superClass:["BaseElement"]},{name:"CategoryValue",superClass:["BaseElement"],properties:[{name:"categorizedFlowElements",type:"FlowElement",isMany:!0,isVirtual:!0,isReference:!0},{name:"value",isAttr:!0,type:"String"}]},{name:"Activity",isAbstract:!0,superClass:["FlowNode"],properties:[{name:"isForCompensation",default:!1,isAttr:!0,type:"Boolean"},{name:"default",type:"SequenceFlow",isAttr:!0,isReference:!0},{name:"ioSpecification",type:"InputOutputSpecification",xml:{serialize:"property"}},{name:"boundaryEventRefs",type:"BoundaryEvent",isMany:!0,isReference:!0},{name:"properties",type:"Property",isMany:!0},{name:"dataInputAssociations",type:"DataInputAssociation",isMany:!0},{name:"dataOutputAssociations",type:"DataOutputAssociation",isMany:!0},{name:"startQuantity",default:1,isAttr:!0,type:"Integer"},{name:"resources",type:"ResourceRole",isMany:!0},{name:"completionQuantity",default:1,isAttr:!0,type:"Integer"},{name:"loopCharacteristics",type:"LoopCharacteristics"}]},{name:"ServiceTask",superClass:["Task"],properties:[{name:"implementation",isAttr:!0,type:"String"},{name:"operationRef",type:"Operation",isAttr:!0,isReference:!0}]},{name:"SubProcess",superClass:["Activity","FlowElementsContainer","InteractionNode"],properties:[{name:"triggeredByEvent",default:!1,isAttr:!0,type:"Boolean"},{name:"artifacts",type:"Artifact",isMany:!0}]},{name:"LoopCharacteristics",isAbstract:!0,superClass:["BaseElement"]},{name:"MultiInstanceLoopCharacteristics",superClass:["LoopCharacteristics"],properties:[{name:"isSequential",default:!1,isAttr:!0,type:"Boolean"},{name:"behavior",type:"MultiInstanceBehavior",default:"All",isAttr:!0},{name:"loopCardinality",type:"Expression",xml:{serialize:"xsi:type"}},{name:"loopDataInputRef",type:"ItemAwareElement",isReference:!0},{name:"loopDataOutputRef",type:"ItemAwareElement",isReference:!0},{name:"inputDataItem",type:"DataInput",xml:{serialize:"property"}},{name:"outputDataItem",type:"DataOutput",xml:{serialize:"property"}},{name:"complexBehaviorDefinition",type:"ComplexBehaviorDefinition",isMany:!0},{name:"completionCondition",type:"Expression",xml:{serialize:"xsi:type"}},{name:"oneBehaviorEventRef",type:"EventDefinition",isAttr:!0,isReference:!0},{name:"noneBehaviorEventRef",type:"EventDefinition",isAttr:!0,isReference:!0}]},{name:"StandardLoopCharacteristics",superClass:["LoopCharacteristics"],properties:[{name:"testBefore",default:!1,isAttr:!0,type:"Boolean"},{name:"loopCondition",type:"Expression",xml:{serialize:"xsi:type"}},{name:"loopMaximum",type:"Integer",isAttr:!0}]},{name:"CallActivity",superClass:["Activity","InteractionNode"],properties:[{name:"calledElement",type:"String",isAttr:!0}]},{name:"Task",superClass:["Activity","InteractionNode"]},{name:"SendTask",superClass:["Task"],properties:[{name:"implementation",isAttr:!0,type:"String"},{name:"operationRef",type:"Operation",isAttr:!0,isReference:!0},{name:"messageRef",type:"Message",isAttr:!0,isReference:!0}]},{name:"ReceiveTask",superClass:["Task"],properties:[{name:"implementation",isAttr:!0,type:"String"},{name:"instantiate",default:!1,isAttr:!0,type:"Boolean"},{name:"operationRef",type:"Operation",isAttr:!0,isReference:!0},{name:"messageRef",type:"Message",isAttr:!0,isReference:!0}]},{name:"ScriptTask",superClass:["Task"],properties:[{name:"scriptFormat",isAttr:!0,type:"String"},{name:"script",type:"String"}]},{name:"BusinessRuleTask",superClass:["Task"],properties:[{name:"implementation",isAttr:!0,type:"String"}]},{name:"AdHocSubProcess",superClass:["SubProcess"],properties:[{name:"completionCondition",type:"Expression",xml:{serialize:"xsi:type"}},{name:"ordering",type:"AdHocOrdering",isAttr:!0},{name:"cancelRemainingInstances",default:!0,isAttr:!0,type:"Boolean"}]},{name:"Transaction",superClass:["SubProcess"],properties:[{name:"protocol",isAttr:!0,type:"String"},{name:"method",isAttr:!0,type:"String"}]},{name:"GlobalScriptTask",superClass:["GlobalTask"],properties:[{name:"scriptLanguage",isAttr:!0,type:"String"},{name:"script",isAttr:!0,type:"String"}]},{name:"GlobalBusinessRuleTask",superClass:["GlobalTask"],properties:[{name:"implementation",isAttr:!0,type:"String"}]},{name:"ComplexBehaviorDefinition",superClass:["BaseElement"],properties:[{name:"condition",type:"FormalExpression"},{name:"event",type:"ImplicitThrowEvent"}]},{name:"ResourceRole",superClass:["BaseElement"],properties:[{name:"resourceRef",type:"Resource",isReference:!0},{name:"resourceParameterBindings",type:"ResourceParameterBinding",isMany:!0},{name:"resourceAssignmentExpression",type:"ResourceAssignmentExpression"},{name:"name",isAttr:!0,type:"String"}]},{name:"ResourceParameterBinding",properties:[{name:"expression",type:"Expression",xml:{serialize:"xsi:type"}},{name:"parameterRef",type:"ResourceParameter",isAttr:!0,isReference:!0}],superClass:["BaseElement"]},{name:"ResourceAssignmentExpression",properties:[{name:"expression",type:"Expression",xml:{serialize:"xsi:type"}}],superClass:["BaseElement"]},{name:"Import",properties:[{name:"importType",isAttr:!0,type:"String"},{name:"location",isAttr:!0,type:"String"},{name:"namespace",isAttr:!0,type:"String"}]},{name:"Definitions",superClass:["BaseElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"targetNamespace",isAttr:!0,type:"String"},{name:"expressionLanguage",default:"http://www.w3.org/1999/XPath",isAttr:!0,type:"String"},{name:"typeLanguage",default:"http://www.w3.org/2001/XMLSchema",isAttr:!0,type:"String"},{name:"imports",type:"Import",isMany:!0},{name:"extensions",type:"Extension",isMany:!0},{name:"rootElements",type:"RootElement",isMany:!0},{name:"diagrams",isMany:!0,type:"bpmndi:BPMNDiagram"},{name:"exporter",isAttr:!0,type:"String"},{name:"relationships",type:"Relationship",isMany:!0},{name:"exporterVersion",isAttr:!0,type:"String"}]}],enumerations:[{name:"ProcessType",literalValues:[{name:"None"},{name:"Public"},{name:"Private"}]},{name:"GatewayDirection",literalValues:[{name:"Unspecified"},{name:"Converging"},{name:"Diverging"},{name:"Mixed"}]},{name:"EventBasedGatewayType",literalValues:[{name:"Parallel"},{name:"Exclusive"}]},{name:"RelationshipDirection",literalValues:[{name:"None"},{name:"Forward"},{name:"Backward"},{name:"Both"}]},{name:"ItemKind",literalValues:[{name:"Physical"},{name:"Information"}]},{name:"ChoreographyLoopType",literalValues:[{name:"None"},{name:"Standard"},{name:"MultiInstanceSequential"},{name:"MultiInstanceParallel"}]},{name:"AssociationDirection",literalValues:[{name:"None"},{name:"One"},{name:"Both"}]},{name:"MultiInstanceBehavior",literalValues:[{name:"None"},{name:"One"},{name:"All"},{name:"Complex"}]},{name:"AdHocOrdering",literalValues:[{name:"Parallel"},{name:"Sequential"}]}],xml:{tagAlias:"lowerCase",typePrefix:"t"}},bpmndi:{name:"BPMNDI",uri:"http://www.omg.org/spec/BPMN/20100524/DI",prefix:"bpmndi",types:[{name:"BPMNDiagram",properties:[{name:"plane",type:"BPMNPlane",redefines:"di:Diagram#rootElement"},{name:"labelStyle",type:"BPMNLabelStyle",isMany:!0}],superClass:["di:Diagram"]},{name:"BPMNPlane",properties:[{name:"bpmnElement",isAttr:!0,isReference:!0,type:"bpmn:BaseElement",redefines:"di:DiagramElement#modelElement"}],superClass:["di:Plane"]},{name:"BPMNShape",properties:[{name:"bpmnElement",isAttr:!0,isReference:!0,type:"bpmn:BaseElement",redefines:"di:DiagramElement#modelElement"},{name:"isHorizontal",isAttr:!0,type:"Boolean"},{name:"isExpanded",isAttr:!0,type:"Boolean"},{name:"isMarkerVisible",isAttr:!0,type:"Boolean"},{name:"label",type:"BPMNLabel"},{name:"isMessageVisible",isAttr:!0,type:"Boolean"},{name:"participantBandKind",type:"ParticipantBandKind",isAttr:!0},{name:"choreographyActivityShape",type:"BPMNShape",isAttr:!0,isReference:!0}],superClass:["di:LabeledShape"]},{name:"BPMNEdge",properties:[{name:"label",type:"BPMNLabel"},{name:"bpmnElement",isAttr:!0,isReference:!0,type:"bpmn:BaseElement",redefines:"di:DiagramElement#modelElement"},{name:"sourceElement",isAttr:!0,isReference:!0,type:"di:DiagramElement",redefines:"di:Edge#source"},{name:"targetElement",isAttr:!0,isReference:!0,type:"di:DiagramElement",redefines:"di:Edge#target"},{name:"messageVisibleKind",type:"MessageVisibleKind",isAttr:!0,default:"initiating"}],superClass:["di:LabeledEdge"]},{name:"BPMNLabel",properties:[{name:"labelStyle",type:"BPMNLabelStyle",isAttr:!0,isReference:!0,redefines:"di:DiagramElement#style"}],superClass:["di:Label"]},{name:"BPMNLabelStyle",properties:[{name:"font",type:"dc:Font"}],superClass:["di:Style"]}],enumerations:[{name:"ParticipantBandKind",literalValues:[{name:"top_initiating"},{name:"middle_initiating"},{name:"bottom_initiating"},{name:"top_non_initiating"},{name:"middle_non_initiating"},{name:"bottom_non_initiating"}]},{name:"MessageVisibleKind",literalValues:[{name:"initiating"},{name:"non_initiating"}]}],associations:[]},dc:{name:"DC",uri:"http://www.omg.org/spec/DD/20100524/DC",prefix:"dc",types:[{name:"Boolean"},{name:"Integer"},{name:"Real"},{name:"String"},{name:"Font",properties:[{name:"name",type:"String",isAttr:!0},{name:"size",type:"Real",isAttr:!0},{name:"isBold",type:"Boolean",isAttr:!0},{name:"isItalic",type:"Boolean",isAttr:!0},{name:"isUnderline",type:"Boolean",isAttr:!0},{name:"isStrikeThrough",type:"Boolean",isAttr:!0}]},{name:"Point",properties:[{name:"x",type:"Real",default:"0",isAttr:!0},{name:"y",type:"Real",default:"0",isAttr:!0}]},{name:"Bounds",properties:[{name:"x",type:"Real",default:"0",isAttr:!0},{name:"y",type:"Real",default:"0",isAttr:!0},{name:"width",type:"Real",isAttr:!0},{name:"height",type:"Real",isAttr:!0}]}],associations:[]},di:{name:"DI",uri:"http://www.omg.org/spec/DD/20100524/DI",prefix:"di",types:[{name:"DiagramElement",isAbstract:!0,properties:[{name:"id",isAttr:!0,isId:!0,type:"String"},{name:"extension",type:"Extension"},{name:"owningDiagram",type:"Diagram",isReadOnly:!0,isVirtual:!0,isReference:!0},{name:"owningElement",type:"DiagramElement",isReadOnly:!0,isVirtual:!0,isReference:!0},{name:"modelElement",isReadOnly:!0,isVirtual:!0,isReference:!0,type:"Element"},{name:"style",type:"Style",isReadOnly:!0,isVirtual:!0,isReference:!0},{name:"ownedElement",type:"DiagramElement",isReadOnly:!0,isMany:!0,isVirtual:!0}]},{name:"Node",isAbstract:!0,superClass:["DiagramElement"]},{name:"Edge",isAbstract:!0,superClass:["DiagramElement"],properties:[{name:"source",type:"DiagramElement",isReadOnly:!0,isVirtual:!0,isReference:!0},{name:"target",type:"DiagramElement",isReadOnly:!0,isVirtual:!0,isReference:!0},{name:"waypoint",isUnique:!1,isMany:!0,type:"dc:Point",xml:{serialize:"xsi:type"}}]},{name:"Diagram",isAbstract:!0,properties:[{name:"id",isAttr:!0,isId:!0,type:"String"},{name:"rootElement",type:"DiagramElement",isReadOnly:!0,isVirtual:!0},{name:"name",isAttr:!0,type:"String"},{name:"documentation",isAttr:!0,type:"String"},{name:"resolution",isAttr:!0,type:"Real"},{name:"ownedStyle",type:"Style",isReadOnly:!0,isMany:!0,isVirtual:!0}]},{name:"Shape",isAbstract:!0,superClass:["Node"],properties:[{name:"bounds",type:"dc:Bounds"}]},{name:"Plane",isAbstract:!0,superClass:["Node"],properties:[{name:"planeElement",type:"DiagramElement",subsettedProperty:"DiagramElement-ownedElement",isMany:!0}]},{name:"LabeledEdge",isAbstract:!0,superClass:["Edge"],properties:[{name:"ownedLabel",type:"Label",isReadOnly:!0,subsettedProperty:"DiagramElement-ownedElement",isMany:!0,isVirtual:!0}]},{name:"LabeledShape",isAbstract:!0,superClass:["Shape"],properties:[{name:"ownedLabel",type:"Label",isReadOnly:!0,subsettedProperty:"DiagramElement-ownedElement",isMany:!0,isVirtual:!0}]},{name:"Label",isAbstract:!0,superClass:["Node"],properties:[{name:"bounds",type:"dc:Bounds"}]},{name:"Style",isAbstract:!0,properties:[{name:"id",isAttr:!0,isId:!0,type:"String"}]},{name:"Extension",properties:[{name:"values",isMany:!0,type:"Element"}]}],associations:[],xml:{tagAlias:"lowerCase"}},bioc:{name:"bpmn.io colors for BPMN",uri:"http://bpmn.io/schema/bpmn/biocolor/1.0",prefix:"bioc",types:[{name:"ColoredShape",extends:["bpmndi:BPMNShape"],properties:[{name:"stroke",isAttr:!0,type:"String"},{name:"fill",isAttr:!0,type:"String"}]},{name:"ColoredEdge",extends:["bpmndi:BPMNEdge"],properties:[{name:"stroke",isAttr:!0,type:"String"},{name:"fill",isAttr:!0,type:"String"}]}],enumerations:[],associations:[]},color:{name:"BPMN in Color",uri:"http://www.omg.org/spec/BPMN/non-normative/color/1.0",prefix:"color",types:[{name:"ColoredLabel",extends:["bpmndi:BPMNLabel"],properties:[{name:"color",isAttr:!0,type:"String"}]},{name:"ColoredShape",extends:["bpmndi:BPMNShape"],properties:[{name:"background-color",isAttr:!0,type:"String"},{name:"border-color",isAttr:!0,type:"String"}]},{name:"ColoredEdge",extends:["bpmndi:BPMNEdge"],properties:[{name:"border-color",isAttr:!0,type:"String"}]}],enumerations:[],associations:[]}};function ur(e,t){return new pr(L({},lr,e),t)}function hr(e){return e?"<"+e.$type+(e.id?' id="'+e.id:"")+'" />':"<null>"}function dr(e){f(e,"di")||Object.defineProperty(e,"di",{enumerable:!1,get:function(){throw new Error("Tried to access di from the businessObject. The di is available through the diagram element only. For more information, see https://github.com/bpmn-io/bpmn-js/issues/1472")}})}function fr(e,t){return e.$instanceOf(t)}function mr(e){var t={},n=[],i={};function r(e,t){return function(n){e(n,t)}}function o(e){t[e.id]=e}function a(t,n){try{var r=i[t.id]&&function(t,n){if(t.gfx)throw new Error(`already rendered ${hr(t)}`);return e.element(t,i[t.id],n)}(t,n);return o(t),r}catch(e){s(e.message,{element:t,error:e}),console.error(`failed to import ${hr(t)}`,e)}}function s(t,n){e.error(t,n)}var c=this.registerDi=function(e){var t=e.bpmnElement;t?i[t.id]?s(`multiple DI elements defined for ${hr(t)}`,{element:t}):(i[t.id]=e,dr(t)):s(`no bpmnElement referenced in ${hr(e)}`,{element:e})};function p(e){var t;t=e.plane,c(t),g(t.planeElement,l)}function l(e){c(e)}this.handleDefinitions=function(o,a){var l=o.diagrams;if(a&&-1===l.indexOf(a))throw new Error("diagram not part of <bpmn:Definitions />");if(!a&&l&&l.length&&(a=l[0]),!a)throw new Error("no diagram to display");i={},p(a);var f=a.plane;if(!f)throw new Error(`no plane for ${hr(a)}`);var v=f.bpmnElement;if(!v){if(v=function(e){return m(e.rootElements,(function(e){return fr(e,"bpmn:Process")||fr(e,"bpmn:Collaboration")}))}(o),!v)throw new Error("no process or collaboration to display");s(`correcting missing bpmnElement on ${hr(f)} to ${hr(v)}`),f.bpmnElement=v,c(f)}var b,_,w=function(t,n){return e.root(t,i[t.id],n)}(v,f);if(fr(v,"bpmn:Process")||fr(v,"bpmn:SubProcess"))h(v,w);else{if(!fr(v,"bpmn:Collaboration"))throw new Error(`unsupported bpmnElement for ${hr(f)}: ${hr(v)}`);_=w,g((b=v).participants,r(A,_)),x(b.artifacts,_),n.push((function(){!function(e,t){g(e,r(d,t))}(b.messageFlows,_)})),function(e,n){var i=y(e,(function(e){return!t[e.id]&&fr(e,"bpmn:Process")&&e.laneSets}));i.forEach(r(h,n))}(o.rootElements,w)}u(n)};var u=this.handleDeferred=function(){for(;n.length;)n.shift()()};function h(e,t){P(e,t),w(e.ioSpecification,t),x(e.artifacts,t),o(e)}function d(e,t){a(e,t)}function f(e,t){a(e,t)}function v(e,t){a(e,t)}function b(e,t){a(e,t)}function _(e,t){a(e,t)}function x(e,t){g(e,(function(e){fr(e,"bpmn:Association")?n.push((function(){_(e,t)})):_(e,t)}))}function w(e,t){e&&(g(e.dataInputs,r(v,t)),g(e.dataOutputs,r(b,t)))}var E=this.handleSubProcess=function(e,t){P(e,t),x(e.artifacts,t)};function S(e,t){var i=a(e,t);fr(e,"bpmn:SubProcess")&&E(e,i||t),fr(e,"bpmn:Activity")&&w(e.ioSpecification,t),n.push((function(){g(e.dataInputAssociations,r(f,t)),g(e.dataOutputAssociations,r(f,t))}))}function C(e,t){a(e,t)}function k(e,t){n.push((function(){var n=a(e,t);e.childLaneSet&&R(e.childLaneSet,n||t),function(e){g(e.flowNodeRef,(function(t){var n=t.get("lanes");n&&n.push(e)}))}(e)}))}function R(e,t){g(e.lanes,r(k,t))}function P(e,t){!function(e,t){g(e,(function(e){fr(e,"bpmn:SequenceFlow")?n.push((function(){!function(e,t){a(e,t)}(e,t)})):fr(e,"bpmn:BoundaryEvent")?n.unshift((function(){S(e,t)})):fr(e,"bpmn:FlowNode")?S(e,t):fr(e,"bpmn:DataObject")||(fr(e,"bpmn:DataStoreReference")||fr(e,"bpmn:DataObjectReference")?C(e,t):s(`unrecognized flowElement ${hr(e)} in context ${hr(t&&t.businessObject)}`,{element:e,context:t}))}))}(e.flowElements,t),e.laneSets&&function(e,t){g(e,r(R,t))}(e.laneSets,t)}function A(e,t){var n=a(e,t),i=e.processRef;i&&h(i,n||t)}}function vr(e,t){var n=gr(e);return n&&"function"==typeof n.$instanceOf&&n.$instanceOf(t)}function yr(e,t){return w(t,(function(t){return vr(e,t)}))}function gr(e){return e&&e.businessObject||e}function br(e){return e&&e.di}function _r(e,t,n){var i,r,o,a=[];function s(e,t){var n=new mr({root:function(e,t){return i.add(e,t)},element:function(e,t,n){return i.add(e,t,n)},error:function(e,t){a.push({message:e,context:t})}});t=t||e.diagrams&&e.diagrams[0];var r=function(e,t){if(!t||!t.plane)return;var n,i=t.plane.bpmnElement,r=i;vr(i,"bpmn:Process")||vr(i,"bpmn:Collaboration")||(r=function(e){var t=e;for(;t;){if(vr(t,"bpmn:Process"))return t;t=t.$parent}}
197 `,this._current.container)},Tc.prototype.open=function(e,t,n,i){if(!e)throw new Error("target is missing");if(!t)throw new Error("providers for <"+t+"> not found");if(!n)throw new Error("position is missing");this.isOpen()&&this.close();const{entries:r,headerEntries:o,emptyPlaceholder:a}=this._getContext(e,t);this._current={position:n,providerId:t,target:e,entries:r,headerEntries:o,emptyPlaceholder:a,container:this._createContainer({provider:t}),options:i},this._emit("open"),this._bindAutoClose(),this._render()},Tc.prototype.refresh=function(){if(!this.isOpen())return;const{target:e,providerId:t}=this._current,{entries:n,headerEntries:i,emptyPlaceholder:r}=this._getContext(e,t);this._current={...this._current,entries:n,headerEntries:i,emptyPlaceholder:r},this._emit("refresh"),this._render()},Tc.prototype._getContext=function(e,t){const n=this._getProviders(t);if(!n||!n.length)throw new Error("provider for <"+t+"> not found");const i=this._getEntries(e,n),r=this._getHeaderEntries(e,n);return{entries:i,headerEntries:r,emptyPlaceholder:this._getEmptyPlaceholder(n),empty:!(Object.keys(i).length||Object.keys(r).length)}},Tc.prototype.close=function(){this.isOpen()&&(this._emit("close"),this.reset(),this._canvas.restoreFocus(),this._current=null)},Tc.prototype.reset=function(){const e=this._current.container;Ws(null,e),ve(e)},Tc.prototype._emit=function(e,t){this._eventBus.fire(`popupMenu.${e}`,t)},Tc.prototype._onOpened=function(){this._emit("opened")},Tc.prototype._onClosed=function(){this._emit("closed")},Tc.prototype._createContainer=function(e){var t=this._canvas.getContainer();const n=he(`<div class="djs-popup-parent djs-scrollable" data-popup=${e.provider}></div>`);return t.appendChild(n),n},Tc.prototype._bindAutoClose=function(){this._eventBus.once(Mc,this.close,this)},Tc.prototype._unbindAutoClose=function(){this._eventBus.off(Mc,this.close,this)},Tc.prototype._updateScale=function(){var e,t,n=this._canvas.zoom(),i=this._config.scale,r=n;return!0!==i&&(!1===i?(e=1,t=1):(e=i.min,t=i.max),s(e)&&n<e&&(r=e),s(t)&&n>t&&(r=t)),r},Tc.prototype._ensureVisible=function(e,t){var n=document.documentElement.getBoundingClientRect(),i=e.getBoundingClientRect(),r={},o=t.x,a=t.y;return t.x+i.width>n.width&&(r.x=!0),t.y+i.height>n.height&&(r.y=!0),r.x&&r.y?(o=t.x-i.width,a=t.y-i.height):r.x?(o=t.x-i.width,a=t.y):r.y&&t.y<i.height?(o=t.x,a=10):r.y&&(o=t.x,a=t.y-i.height),t.y<n.top&&(a=t.y+i.height),{x:o,y:a}},Tc.prototype.isEmpty=function(e,t){if(!e)throw new Error("target is missing");if(!t)throw new Error("provider ID is missing");const n=this._getProviders(t);return!n||!n.length||this._getContext(e,t).empty},Tc.prototype.registerProvider=function(e,t,n){n||(n=t,t=1e3),this._eventBus.on("popupMenu.getProviders."+e,t,(function(e){e.providers.push(n)}))},Tc.prototype._getProviders=function(e){var t=this._eventBus.createEvent({type:"popupMenu.getProviders."+e,providers:[]});return this._eventBus.fire(t),t.providers},Tc.prototype._getEntries=function(e,t){var n={};return g(t,(function(t){if(t.getPopupMenuEntries){var i=t.getPopupMenuEntries(e);h(i)?n=i(n):g(i,(function(e,t){n[t]=e}))}else g(t.getEntries(e),(function(e){var t=e.id;if(!t)throw new Error("entry ID is missing");n[t]=I(e,["id"])}))})),n},Tc.prototype._getHeaderEntries=function(e,t){var n={};return g(t,(function(t){if(t.getPopupMenuHeaderEntries){var i=t.getPopupMenuHeaderEntries(e);h(i)?n=i(n):g(i,(function(e,t){n[t]=e}))}else{if(!t.getHeaderEntries)return;g(t.getHeaderEntries(e),(function(e){var t=e.id;if(!t)throw new Error("entry ID is missing");n[t]=I(e,["id"])}))}})),n},Tc.prototype._getEmptyPlaceholder=function(e){const t=e.find((e=>h(e.getEmptyPlaceholder)));return t&&t.getEmptyPlaceholder()},Tc.prototype.isOpen=function(){return!!this._current},Tc.prototype.trigger=function(e,t,n="click"){if(e.preventDefault(),!t){let n=K(J(e.delegateTarget||e.target,".entry",!0),"data-id");t={id:n,...this._getEntry(n)}}const i=t.action;if(!1!==this._emit("trigger",{entry:t,event:e}))if(h(i)){if("click"===n)return i(e,t)}else if(i[n])return i[n](e,t)},Tc.prototype._getEntry=function(e){var t=this._current.entries[e]||this._current.headerEntries[e];if(!t)throw new Error("entry not found");return t};var Oc={search:["value",function(e,t,n){const{keys:i}=n;if(!(t=t.trim().toLowerCase()))throw new Error("<pattern> must not be empty");const r=t.trim().toLowerCase().split(/\s+/);return e.flatMap((e=>{const t=function(e,t,n){const{matchedWords:i,tokens:r}=n.reduce(((n,i)=>{const r=e[i],{tokens:o,matchedWords:a}=function(e,t){if(!e)return{tokens:[],matchedWords:{}};const n=[],i={},r=t.map(jc),o=[`(?<all>${r.join("\\s+")})`,...r].join("|"),a=new RegExp(o,"ig");let s,c=0;for(;s=a.exec(e);){const[r]=s,o=s.index,a=s.index+r.length,p=0===o,l=a===e.length,u=!!s.groups.all,h=p||/\s/.test(e.charAt(o-1)),d=l||/\s/.test(e.charAt(a+1));s.index>c&&n.push({value:e.slice(c,s.index),index:c}),n.push({value:r,index:s.index,match:!0,wordStart:h,wordEnd:d,start:p,end:l,all:u});const f=u?t:[r];for(const e of f)i[e.toLowerCase()]=!0;c=s.index+r.length}c<e.length&&n.push({value:e.slice(c),index:c});return{tokens:n,matchedWords:i}}(r,t);return{tokens:{...n.tokens,[i]:o},matchedWords:{...n.matchedWords,...a}}}),{matchedWords:{},tokens:{}});if(Object.keys(i).length!==t.length)return null;return r}(e,r,i);return t?{item:e,tokens:t}:[]})).sort(function(e){return(t,n)=>{for(const i of e){const e=Dc(t.tokens[i],n.tokens[i]);if(0!==e)return e;const r=Nc(t.item[i],n.item[i]);if(0!==r)return r}return 0}}(i))}]},Lc={__depends__:[Oc],__init__:["popupMenu"],popupMenu:["type",Tc]},$c={align:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 2000 2000">\n <line x1="200" y1="150" x2="200" y2="1850" style="stroke:currentColor;stroke-width:100;stroke-linecap:round;"/>\n <rect x="500" y="150" width="1300" height="700" rx="1" style="fill:none;stroke:currentColor;stroke-width:100;"></rect>\n <rect x="500" y="1150" width="700" height="700" rx="1" style="fill:currentColor;stroke:currentColor;stroke-width:100;opacity:.5;"></rect>\n </svg>',bottom:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1800 1800">\n <line x1="150" y1="1650" x2="1650" y2="1650" style="stroke:currentColor;stroke-width:100;stroke-linecap:round;"/>\n <rect x="150" y="350" width="600" height="1300" rx="1" style="fill:none;stroke:currentColor;stroke-width:100;"></rect>\n <rect x="1050" y="850" width="600" height="800" rx="1" style="fill:currentColor;stroke:currentColor;stroke-width:100;opacity:.5;"></rect>\n </svg>',center:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1800 1800">\n <line x1="900" y1="150" x2="900" y2="1650" style="stroke:currentColor;stroke-width:100;stroke-linecap:round;"/>\n <rect x="250" y="150" width="1300" height="600" rx="1" style="fill:none;stroke:currentColor;stroke-width:100;"></rect>\n <rect x="500" y="1050" width="800" height="600" rx="1" style="fill:currentColor;stroke:currentColor;stroke-width:100;opacity:.5;"></rect>\n </svg>',left:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1800 1800">\n <line x1="100" y1="150" x2="100" y2="1650" style="stroke:currentColor;stroke-width:100;stroke-linecap:round;"/>\n <rect x="100" y="150" width="1300" height="600" rx="1" style="fill:none;stroke:currentColor;stroke-width:100;"></rect>\n <rect x="100" y="1050" width="800" height="600" rx="1" style="fill:currentColor;stroke:currentColor;stroke-width:100;opacity:.5;"></rect>\n </svg>',right:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1800 1800">\n <line x1="1650" y1="150" x2="1650" y2="1650" style="stroke:currentColor;stroke-width:100;stroke-linecap:round;"/>\n <rect x="350" y="150" width="1300" height="600" rx="1" style="fill:none;stroke:currentColor;stroke-width:100;"></rect>\n <rect x="850" y="1050" width="800" height="600" rx="1" style="fill:currentColor;stroke:currentColor;stroke-width:100;opacity:.5;"></rect>\n </svg>',top:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1800 1800">\n <line x1="150" y1="150" x2="1650" y2="150" style="stroke:currentColor;stroke-width:100;stroke-linecap:round;"/>\n <rect x="150" y="150" width="600" height="1300" rx="1" style="fill:none;stroke:currentColor;stroke-width:100;"></rect>\n <rect x="1050" y="150" width="600" height="800" rx="1" style="fill:currentColor;stroke:currentColor;stroke-width:100;opacity:.5;"></rect>\n </svg>',middle:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1800 1800">\n <line x1="150" y1="900" x2="1650" y2="900" style="stroke:currentColor;stroke-width:100;stroke-linecap:round;"/>\n <rect x="150" y="250" width="600" height="1300" rx="1" style="fill:none;stroke:currentColor;stroke-width:100;"></rect>\n <rect x="1050" y="500" width="600" height="800" rx="1" style="fill:currentColor;stroke:currentColor;stroke-width:100;opacity:.5;"></rect>\n </svg>'};function Ic(e,t,n,i){e.registerProvider(900,this),this._contextPad=e,this._popupMenu=t,this._translate=n,this._canvas=i}Ic.$inject=["contextPad","popupMenu","translate","canvas"],Ic.prototype.getMultiElementContextPadEntries=function(e){var t={};return this._isAllowed(e)&&L(t,this._getEntries(e)),t},Ic.prototype._isAllowed=function(e){return!this._popupMenu.isEmpty(e,"align-elements")},Ic.prototype._getEntries=function(){var e=this;return{"align-elements":{group:"align-elements",title:e._translate("Align elements"),html:`<div class="entry">${$c.align}</div>`,action:{click:function(t,n){var i=e._getMenuPosition(n);L(i,{cursor:{x:t.x,y:t.y}}),e._popupMenu.open(n,"align-elements",i)}}}}},Ic.prototype._getMenuPosition=function(e){var t=this._contextPad.getPad(e).html.getBoundingClientRect();return{x:t.left,y:t.bottom+5}};var Fc=["left","center","right","top","middle","bottom"];function zc(e,t,n,i){this._alignElements=t,this._translate=n,this._popupMenu=e,this._rules=i,e.registerProvider("align-elements",this)}function Hc(e){Do.call(this,e),this.init()}function Vc(e){Hc.call(this,e)}zc.$inject=["popupMenu","alignElements","translate","rules"],zc.prototype.getPopupMenuEntries=function(e){var t={};return this._isAllowed(e)&&L(t,this._getEntries(e)),t},zc.prototype._isAllowed=function(e){return this._rules.allowed("elements.align",{elements:e})},zc.prototype._getEntries=function(e){var t=this._alignElements,n=this._translate,i=this._popupMenu,r={};return g(Fc,(function(o){r["align-elements-"+o]={group:"align",title:n("Align elements "+o),className:"bjs-align-elements-menu-entry",imageHtml:$c[o],action:function(){t.trigger(e,o),i.close()}}})),r},Hc.$inject=["eventBus"],e(Hc,Do),Hc.prototype.addRule=function(e,t,n){var i=this;"string"==typeof e&&(e=[e]),e.forEach((function(e){i.canExecute(e,t,(function(e,t,i){return n(e)}),!0)}))},Hc.prototype.init=function(){},Vc.$inject=["eventBus"],e(Vc,Hc),Vc.prototype.init=function(){this.addRule("elements.align",(function(e){var t=y(e.elements,(function(e){return!(e.waypoints||e.host||e.labelTarget)}));return!((t=st(t)).length<2)&&t}))};var Gc={__depends__:[is,vs,Lc],__init__:["alignElementsContextPadProvider","alignElementsMenuProvider","bpmnAlignElements"],alignElementsContextPadProvider:["type",Ic],alignElementsMenuProvider:["type",zc],bpmnAlignElements:["type",Vc]};function Wc(e,t,n,i){for(var r;r=qc(e,n,t);)n=i(t,n,r);return n}function Uc(e){return function(t,n,i){var r={x:n.x,y:n.y};return["x","y"].forEach((function(o){var a=e[o];if(a){var s="x"===o?"width":"height",c=a.margin,p=a.minDistance;r[o]=c<0?Math.min(i[o]+c-t[s]/2,n[o]-p+c):Math.max(i[o]+i[s]+c+t[s]/2,n[o]+p+c)}})),r}}function qc(e,t,n){var i={x:t.x-n.width/2,y:t.y-n.height/2,width:n.width,height:n.height},r=function(e){var t=Kc(e);e.host&&(t=t.concat(Kc(e.host)));e.attachers&&(t=t.concat(e.attachers.reduce((function(e,t){return e.concat(Kc(t))}),[])));return t}(e);return m(r,(function(e){return e!==n&&"intersect"===mn(e,i,10)}))}function Kc(e){return(t=e,t.outgoing.map((function(e){return e.target}))).concat(function(e){return e.incoming.map((function(e){return e.source}))}(e));var t}function Yc(){return!0}function Xc(e,t,n){e.on("autoPlace",100,(function(e){var t=e.shape;return function(e,t,n){n||(n={});var i=n.defaultDistance||50,r=fn(e),o=un(e);return{x:o.right+i+t.width/2,y:r.y}}(e.source,t)})),e.on("autoPlace.end",(function(e){n.scrollToElement(e.shape)})),this.append=function(n,i,r){e.fire("autoPlace.start",{source:n,shape:i});var o=e.fire("autoPlace",{source:n,shape:i}),a=t.appendShape(n,i,o,n.parent,r);return e.fire("autoPlace.end",{source:n,shape:a}),a}}function Zc(e,t){e.on("autoPlace.end",500,(function(e){t.select(e.shape)}))}Xc.$inject=["eventBus","modeling","canvas"],Zc.$inject=["eventBus","selection"];var Qc={__init__:["autoPlaceSelectionBehavior"],autoPlace:["type",Xc],autoPlaceSelectionBehavior:["type",Zc]};function Jc(e,t){for(d(t)&&(t=[t]);e=e.parent;)if(yr(e,t))return e;return null}function ep(e,t){var n=Jc(e,"bpmn:Process");if(n)return!0;var i,r=["bpmn:Participant","bpmn:Lane"];if(n=Jc(e,r))return Lr(n);if(yr(e,r))return Lr(e);for(i=gr(e);i&&!vr(i,"bpmn:Process");i=i.$parent);if(!t)return!0;var o=t.find((function(e){var t=gr(e);return t&&t.get("processRef")===i}));return!o||Lr(o)}function tp(e,t,n){var i=ep(e,n);return vr(t,"bpmn:TextAnnotation")?function(e,t,n){var i=un(e),r=n?{x:i.right+t.width/2,y:i.top-50-t.height/2}:{x:i.right+50+t.width/2,y:i.bottom+t.height/2};sn(e)&&(r=fn(e),n?(r.x+=100,r.y-=50):(r.x+=100,r.y+=50));var o={margin:n?-30:30,minDistance:20},a=n?{y:o}:{x:o};return Wc(e,t,r,Uc(a))}(e,t,i):yr(t,["bpmn:DataObjectReference","bpmn:DataStoreReference"])?function(e,t,n){var i=un(e),r=n?{x:i.right-10+t.width/2,y:i.bottom+40+t.width/2}:{x:i.left-40-t.width/2,y:i.bottom-10+t.height/2},o={margin:30,minDistance:30},a=n?{x:o}:{y:o};return Wc(e,t,r,Uc(a))}(e,t,i):vr(t,"bpmn:FlowNode")?function(e,t,n){var i=un(e),r=fn(e),o=n?{directionHint:"e",minDistance:80,baseOrientation:"left",boundaryOrientation:"top",start:"top",end:"bottom"}:{directionHint:"s",minDistance:90,baseOrientation:"top",boundaryOrientation:"left",start:"left",end:"right"},a=function(e,t){t||(t={});var n=t.defaultDistance||50,i=t.direction||"e",r=t.filter,o=t.getWeight||function(t){return t.source===e?1:-1},a=t.maxDistance||250,s=t.reference||"start";function c(e,t){return"n"===i?"start"===s?un(e).top-un(t).bottom:"center"===s?un(e).top-fn(t).y:un(e).top-un(t).top:"w"===i?"start"===s?un(e).left-un(t).right:"center"===s?un(e).left-fn(t).x:un(e).left-un(t).left:"s"===i?"start"===s?un(t).top-un(e).bottom:"center"===s?fn(t).y-un(e).bottom:un(t).bottom-un(e).bottom:"start"===s?un(t).left-un(e).right:"center"===s?fn(t).x-un(e).right:un(t).right-un(e).right}r||(r=Yc);var p=e.incoming.filter(r).map((function(t){var n=o(t),i=n<0?c(t.source,e):c(e,t.source);return{id:t.source.id,distance:i,weight:n}})),l=e.outgoing.filter(r).map((function(t){var n=o(t),i=n>0?c(e,t.target):c(t.target,e);return{id:t.target.id,distance:i,weight:n}})),u=_(p.concat(l).reduce((function(e,t){return e[t.id+"__weight_"+t.weight]=t,e}),{}),(function(e,t){var n=t.distance,i=t.weight;return n<0||n>a||(e[String(n)]||(e[String(n)]=0),e[String(n)]+=1*i,(!e.distance||e[e.distance]<e[String(n)])&&(e.distance=n)),e}),{});return u.distance||n}(e,{filter:function(e){return vr(e,"bpmn:SequenceFlow")},direction:o.directionHint}),s=30,c=o.minDistance,p=o.baseOrientation;vr(e,"bpmn:BoundaryEvent")&&-1!==(p=mn(e,e.host,-25)).indexOf(o.boundaryOrientation)&&(s*=-1);var l=n?{x:i.right+a+t.width/2,y:r.y+np(p,c,o)}:{x:r.x+np(p,c,o),y:i.bottom+a+t.height/2},u={margin:s,minDistance:c},h=n?{y:u}:{x:u};return Wc(e,t,l,Uc(h))}(e,t,i):void 0}function np(e,t,n){return e.includes(n.start)?-1*t:e.includes(n.end)?t:0}function ip(e,t){e.on("autoPlace",(function(e){var n=e.shape;return tp(e.source,n,t)}))}ip.$inject=["eventBus","elementRegistry"];var rp={__depends__:[Qc],__init__:["bpmnAutoPlace"],bpmnAutoPlace:["type",ip]};function op(e,t,n,r){Do.call(this,e),this._elementRegistry=t,this._modeling=n,this._rules=r;var o=this;this.postExecuted(["shape.create"],(function(e){var t=e.context,n=t.hints||{},i=t.shape,r=t.parent||t.newParent;!1!==n.autoResize&&o._expand([i],r)})),this.postExecuted(["elements.move"],(function(e){var t=e.context,n=i(C(t.closure.topLevel)),r=t.hints,a=!r||r.autoResize;!1!==a&&g(k(n,(function(e){return e.parent.id})),(function(e,t){p(a)&&(e=e.filter((function(e){return m(a,M({id:e.id}))}))),o._expand(e,t)}))})),this.postExecuted(["shape.toggleCollapse"],(function(e){var t=e.context,n=t.hints,i=t.shape;n&&!1===n.autoResize||i.collapsed||o._expand(i.children||[],i)})),this.postExecuted(["shape.resize"],(function(e){var t=e.context,n=t.hints,i=t.shape,r=i.parent;n&&!1===n.autoResize||r&&o._expand([i],r)}))}function ap(e){e.invoke(op,this)}function sp(e){Hc.call(this,e);var t=this;this.addRule("element.autoResize",(function(e){return t.canResize(e.elements,e.target)}))}function cp(e,t){sp.call(this,e),this._modeling=t}op.$inject=["eventBus","elementRegistry","modeling","rules"],e(op,Do),op.prototype._getOptimalBounds=function(e,t){var n=this.getOffset(t),i=this.getPadding(t),r=un(ht(e)),o=un(t),a={};return r.top-o.top<i.top&&(a.top=r.top-n.top),r.left-o.left<i.left&&(a.left=r.left-n.left),o.right-r.right<i.right&&(a.right=r.right+n.right),o.bottom-r.bottom<i.bottom&&(a.bottom=r.bottom+n.bottom),hn(L({},o,a))},op.prototype._expand=function(e,t){if("string"==typeof t&&(t=this._elementRegistry.get(t)),this._rules.allowed("element.autoResize",{elements:e,target:t})){var n=this._getOptimalBounds(e,t);if(function(e,t){return e.x!==t.x||e.y!==t.y||e.width!==t.width||e.height!==t.height}(n,t)){var i=function(e,t){var n="";e=un(e),t=un(t),e.top>t.top&&(n=n.concat("n"));e.right<t.right&&(n=n.concat("w"));e.bottom<t.bottom&&(n=n.concat("s"));e.left>t.left&&(n=n.concat("e"));return n}($(t,["x","y","width","height"]),n);this.resize(t,n,{autoResize:i});var r=t.parent;r&&this._expand([t],r)}}},op.prototype.getOffset=function(e){return{top:60,bottom:60,left:100,right:100}},op.prototype.getPadding=function(e){return{top:2,bottom:2,left:15,right:15}},op.prototype.resize=function(e,t,n){this._modeling.resizeShape(e,t,null,n)},ap.$inject=["injector"],e(ap,op),ap.prototype.resize=function(e,t,n){vr(e,"bpmn:Participant")?this._modeling.resizeLane(e,t,null,n):this._modeling.resizeShape(e,t,null,n)},sp.$inject=["eventBus"],e(sp,Hc),sp.prototype.canResize=function(e,t){return!1},e(cp,sp),cp.$inject=["eventBus","modeling"],cp.prototype.canResize=function(e,t){if(vr(t.di,"bpmndi:BPMNPlane"))return!1;if(!vr(t,"bpmn:Participant")&&!vr(t,"bpmn:Lane")&&!vr(t,"bpmn:SubProcess"))return!1;var n=!0;return g(e,(function(e){(vr(e,"bpmn:Lane")||cn(e))&&(n=!1)})),n};var pp={__init__:["bpmnAutoResize","bpmnAutoResizeProvider"],bpmnAutoResize:["type",ap],bpmnAutoResizeProvider:["type",cp]};function lp(e,t,n){var i,r,o=this,a=n.get("dragging",!1);a&&t.on("drag.start",(function(n){t.once("drag.move",1500,(function(t){!function(t){if(!t.hover){var n=t.originalEvent,i=o._findTargetGfx(n),r=i&&e.get(i);i&&r&&(t.stopPropagation(),a.hover({element:r,gfx:i}),a.move(n))}}(t)}))})),t.on("element.hover",(function(e){i=e.gfx,r=e.element})),t.on("element.hover",1500,(function(e){r&&t.fire("element.out",{element:r,gfx:i})})),t.on("element.out",(function(){i=null,r=null})),this._findTargetGfx=function(e){var t;if(e instanceof MouseEvent)return t=ra(e),function(e){return J(e,"svg, .djs-element",!0)}(document.elementFromPoint(t.x,t.y))}}lp.$inject=["elementRegistry","eventBus","injector"];var up={__init__:["hoverFix"],hoverFix:["type",lp]},hp=Math.round,dp="djs-drag-active";function fp(e){e.preventDefault()}function mp(e,t,n,i){var r,o={threshold:5,trapClick:!0};function a(e){var n=t.viewbox(),i=t._container.getBoundingClientRect();return{x:n.x+(e.x-i.left)/n.scale,y:n.y+(e.y-i.top)/n.scale}}function s(t,n){n=n||r;var i=e.createEvent(L({},n.payload,n.data,{isTouch:n.isTouch}));return!1!==e.fire("drag."+t,i)&&e.fire(n.prefix+"."+t,i)}function c(e,i){var o,c=r.payload,p=r.displacement,l=r.globalStart,u=ra(e),h=Ha(u,l),d=r.localStart,f=a(u),v=Ha(f,d);if(!r.active&&(i||(o=h,Math.sqrt(Math.pow(o.x,2)+Math.pow(o.y,2))>r.threshold))){if(L(c,{x:hp(d.x+p.x),y:hp(d.y+p.y),dx:0,dy:0},{originalEvent:e}),!1===s("start"))return m();r.active=!0,r.keepSelection||(c.previousSelection=n.get(),n.select(null)),r.cursor&&$a(r.cursor),t.addMarker(t.getRootElement(),dp)}ia(e),r.active&&(L(c,{x:hp(f.x+p.x),y:hp(f.y+p.y),dx:hp(v.x),dy:hp(v.y)},{originalEvent:e}),s("move"))}function p(e){var t=!0;r.active&&(e&&(r.payload.originalEvent=e,ia(e)),t=s("end")),!1===t&&s("rejected"),s("ended",v(!0!==t))}function l(e){Ra("Escape",e)&&(fp(e),m())}function u(t){var n;r.active&&(n=Fa(e),setTimeout(n,400),fp(t)),p(t)}function h(e){c(e)}function d(e){var t=r.payload;t.hoverGfx=e.gfx,t.hover=e.element,s("hover")}function f(e){s("out");var t=r.payload;t.hoverGfx=null,t.hover=null}function m(e){var t;if(r){var n=r.active;n&&s("cancel"),t=v(e),n&&s("canceled",t)}}function v(o){var a,v;s("cleanup"),Ia(),v=r.trapClick?u:p,oe.unbind(document,"mousemove",c),oe.unbind(document,"dragstart",fp),oe.unbind(document,"selectstart",fp),oe.unbind(document,"mousedown",v,!0),oe.unbind(document,"mouseup",v,!0),oe.unbind(document,"keyup",l),oe.unbind(document,"touchstart",h,!0),oe.unbind(document,"touchcancel",m,!0),oe.unbind(document,"touchmove",c,!0),oe.unbind(document,"touchend",p,!0),e.off("element.hover",d),e.off("element.out",f),t.removeMarker(t.getRootElement(),dp);var y=r.payload.previousSelection;return!1!==o&&y&&!n.get().length&&function(e){var t=e.filter((function(e){return i.get(e.id)}));t.length&&n.select(t)}(y),a=r,r=null,a}e.on("diagram.destroy",m),this.init=function(t,n,i,v){r&&m(!1),"string"==typeof n&&(v=i,i=n,n=null);var y,g,b,_,x,w=(v=L({},o,v||{})).data||{};_=v.trapClick?u:p,t?(y=na(t)||t,g=ra(t),ia(t),"dragstart"===y.type&&fp(y)):(y=null,g={x:0,y:0}),b=a(g),n||(n=b),x=function(e){return"undefined"!=typeof TouchEvent&&e instanceof TouchEvent}(y),r=L({prefix:i,data:w,payload:{},globalStart:g,displacement:Ha(n,b),localStart:b,isTouch:x},v),v.manual||(x?(oe.bind(document,"touchstart",h,!0),oe.bind(document,"touchcancel",m,!0),oe.bind(document,"touchmove",c,!0),oe.bind(document,"touchend",p,!0)):(oe.bind(document,"mousemove",c),oe.bind(document,"dragstart",fp),oe.bind(document,"selectstart",fp),oe.bind(document,"mousedown",_,!0),oe.bind(document,"mouseup",_,!0)),oe.bind(document,"keyup",l),e.on("element.hover",d),e.on("element.out",f)),s("init"),v.autoActivate&&c(t,!0)},this.move=c,this.hover=d,this.out=f,this.end=p,this.cancel=m,this.context=function(){return r},this.setOptions=function(e){L(o,e)}}mp.$inject=["eventBus","canvas","selection","elementRegistry"];var vp={__depends__:[up,_a],dragging:["type",mp]};function yp(e,t,n){this._canvas=n,this._opts=L({scrollThresholdIn:[20,20,20,20],scrollThresholdOut:[0,0,0,0],scrollRepeatTimeout:15,scrollStep:10},e);var i=this;t.on("drag.move",(function(e){var t=i._toBorderPoint(e);i.startScroll(t)})),t.on(["drag.cleanup"],(function(){i.stopScroll()}))}function gp(e,t,n){return t<e&&e<n}yp.$inject=["config.autoScroll","eventBus","canvas"],yp.prototype.startScroll=function(e){var t=this._canvas,n=this._opts,i=this,r=t.getContainer().getBoundingClientRect(),o=[e.x,e.y,r.width-e.x,r.height-e.y];this.stopScroll();for(var a=0,s=0,c=0;c<4;c++)gp(o[c],n.scrollThresholdOut[c],n.scrollThresholdIn[c])&&(0===c?a=n.scrollStep:1==c?s=n.scrollStep:2==c?a=-n.scrollStep:3==c&&(s=-n.scrollStep));0===a&&0===s||(t.scroll({dx:a,dy:s}),this._scrolling=setTimeout((function(){i.startScroll(e)}),n.scrollRepeatTimeout))},yp.prototype.stopScroll=function(){clearTimeout(this._scrolling)},yp.prototype.setOptions=function(e){this._opts=L({},this._opts,e)},yp.prototype._toBorderPoint=function(e){var t=this._canvas._container.getBoundingClientRect(),n=ra(e.originalEvent);return{x:n.x-t.left,y:n.y-t.top}};var bp={__depends__:[vp],__init__:["autoScroll"],autoScroll:["type",yp]};function _p(e){this._commandStack=e.get("commandStack",!1)}_p.$inject=["injector"],_p.prototype.allowed=function(e,t){var n=!0,i=this._commandStack;return i&&(n=i.canExecute(e,t)),void 0===n||n};var xp={__init__:["rules"],rules:["type",_p]},wp=Math.round,Ep=Math.max;function Sp(e,t){return function(e,t){var n,i;for(n=0;i=e[n];n++)if(wt(i,t)<=10)return{point:e[n],bendpoint:!0,index:n};return null}(e,t)||function(e,t){var n,i,r=Jt(function(e,t){return[["M",e.x,e.y],["m",0,-t],["a",t,t,0,1,1,0,2*t],["a",t,t,0,1,1,0,-2*t],["z"]]}(t,10),(n=[],e.forEach((function(e,t){n.push([0===t?"M":"L",e.x,e.y])})),n)),o=r[0],a=r[r.length-1];return o?o!==a?o.segment2!==a.segment2?{point:e[i=Ep(o.segment2,a.segment2)-1],bendpoint:!0,index:i}:{point:{x:wp(o.x+a.x)/2,y:wp(o.y+a.y)/2},index:o.segment2}:{point:{x:wp(o.x),y:wp(o.y)},index:o.segment2}:null}(e,t)}function Cp(e){return Math.sqrt(Math.pow(e.x,2)+Math.pow(e.y,2))}function kp(e){return Math.atan((e[1].y-e[0].y)/(e[1].x-e[0].x))}function Rp(e,t){var n=t[0],i=t[1],r={x:i.x-n.x,y:i.y-n.y},o=function(e,t,n){var i=[{n:e[0]-n[0],lambda:t[0]},{n:e[1]-n[1],lambda:t[1]}];return-(i[0].n*t[0]+i[1].n*t[1])/(i[0].lambda*t[0]+i[1].lambda*t[1])}([n.x,n.y],[r.x,r.y],[e.x,e.y]);return{x:n.x+o*r.x,y:n.y+o*r.y}}function Pp(e,t){var n=Rp(e,t);return Cp({x:n.x-e.x,y:n.y-e.y})}function Ap(e,t){return Cp({x:e.x-t.x,y:e.y-t.y})}var Mp="djs-bendpoint",Tp="djs-segment-dragger";function Dp(e,t,n){var i=function(e,t){var n,i=ra(t),r=e._container.getBoundingClientRect();n={x:r.left,y:r.top};var o=e.viewbox();return{x:o.x+(i.x-n.x)/o.scale,y:o.y+(i.y-n.y)/o.scale}}(e,n);return Sp(t,i)}function Bp(e,t){var n=Ae("g");we(n).add(Mp),ye(e,n);var i=Ae("circle");_e(i,{cx:0,cy:0,r:4}),we(i).add("djs-visual"),ye(n,i);var r=Ae("circle");return _e(r,{cx:0,cy:0,r:10}),we(r).add("djs-hit"),ye(n,r),t&&we(n).add(t),n}function Np(e,t,n,i){var r=Ae("g");ye(e,r);var o=function(e,t,n){var i=t.x-e.x,r=t.y-e.y;return Op("h"===n?i:r)}(t,n,i),a=Ae("rect");_e(a,{x:-9,y:-3,width:18,height:6}),we(a).add("djs-visual"),ye(r,a);var s=Ae("rect");return _e(s,{x:-o/2,y:-8.5,width:o,height:17}),we(s).add("djs-hit"),ye(r,s),Un(r,"v"===i?90:0),r}function jp(e,t,n){var i=Ae("g"),r=Rt(t,n),o=St(t,n);return ye(e,i),Np(i,t,n,o),we(i).add(Tp),we(i).add("h"===o?"horizontal":"vertical"),Wn(i,r.x,r.y),i}function Op(e){return Math.abs(Math.round(2*e/3))}function Lp(e,t){var n=function(e,t){for(var n,i=t.waypoints,r=1/0,o=0;o<i.length-1;o++){var a=Pp(e,[i[o],i[o+1]]);a<r&&(r=a,n=o)}return[i[n],i[n+1]]}(e,t);return Rp(e,n)}function $p(e,t,n,i,r){function o(e,n){var o,a=n.waypoints,s=Dp(t,a,e);if(s)return o=function(e,t){var n,i,r=e.waypoints;return t.index<=0||t.bendpoint?null:(i=St((n={start:r[t.index-1],end:r[t.index]}).start,n.end))?Op("h"===i?n.end.x-n.start.x:n.end.y-n.start.y)/2:null}(n,s),!function(e,t,n){var i,r,o,a,s,c,p=e.index,l=e.point;return!(p<=0||e.bendpoint)&&(o=Rt(i=t[p-1],r=t[p]),a=St(i,r),s=Math.abs(l.x-o.x),c=Math.abs(l.y-o.y),a&&s<=n&&c<=n)}(s,a,o)?i.start(e,n,s.index,!s.bendpoint):r.start(e,n,s.index),!0}function a(e,t,i){oe.bind(e,t,(function(e){n.triggerMouseEvent(t,e,i),e.stopPropagation()}))}function s(e,n){var i=t.getLayer("overlays"),r=fe('.djs-bendpoints[data-element-id="'+Oo(e.id)+'"]',i);return!r&&n&&(_e(r=Ae("g"),{"data-element-id":e.id}),we(r).add("djs-bendpoints"),ye(i,r),a(r,"mousedown",e),a(r,"click",e),a(r,"dblclick",e)),r}function c(e,t){return fe('.djs-segment-dragger[data-segment-idx="'+e+'"]',t)}function p(e,t){t.waypoints.forEach((function(t,n){var i=Bp(e);ye(e,i),Wn(i,t.x,t.y)})),Bp(e,"floating")}function l(e,t){for(var n,i,r,o=t.waypoints,s=1;s<o.length;s++)St(n=o[s-1],i=o[s])&&(_e(r=jp(e,n,i),{"data-segment-idx":s}),a(r,"mousemove",t))}function u(e){var t=s(e);return t||(p(t=s(e,!0),e),l(t,e)),t}function h(e){var t=s(e);t&&(!function(e){g(me("."+Tp,e),(function(e){Fe(e)}))}(t),function(e){g(me("."+Mp,e),(function(e){Fe(e)}))}(t),l(t,e),p(t,e))}function d(e,t,n){var i,r,o=c(t.index,e),a=n[t.index-1],s=n[t.index],p=t.point,l=Rt(a,s),u=St(a,s);o&&(i=function(e){return fe(".djs-visual",e)}(o),r={x:p.x-l.x,y:p.y-l.y},"v"===u&&(r={x:r.y,y:r.x}),Wn(i,r.x,r.y))}e.on("connection.changed",(function(e){h(e.element)})),e.on("connection.remove",(function(e){var t=s(e.element);t&&Fe(t)})),e.on("element.marker.update",(function(e){var t,n=e.element;n.waypoints&&(t=u(n),e.add?we(t).add(e.marker):we(t).remove(e.marker))})),e.on("element.mousemove",(function(e){var n,i,r=e.element,o=r.waypoints;if(o){if(n=s(r,!0),!(i=Dp(t,o,e.originalEvent)))return;!function(e,t){var n=fe(".floating",e),i=t.point;n&&Wn(n,i.x,i.y)}(n,i),i.bendpoint||d(n,i,o)}})),e.on("element.mousedown",(function(e){if(sa(e)){var t=e.originalEvent,n=e.element;if(n.waypoints)return o(t,n)}})),e.on("selection.changed",(function(e){var t=e.newSelection[0];t&&t.waypoints&&u(t)})),e.on("element.hover",(function(e){var t=e.element;t.waypoints&&(u(t),n.registerEvent(e.gfx,"mousemove","element.mousemove"))})),e.on("element.out",(function(e){n.unregisterEvent(e.gfx,"mousemove","element.mousemove")})),e.on("element.updateId",(function(e){var t=e.element,n=e.newId;if(t.waypoints){var i=s(t);i&&_e(i,{"data-element-id":n})}})),this.addHandles=u,this.updateHandles=h,this.getBendpointsContainer=s,this.getSegmentDragger=c}$p.$inject=["eventBus","canvas","interactionEvents","bendpointMove","connectionSegmentMove"];var Ip=Math.round,Fp="reconnectStart",zp="reconnectEnd",Hp="updateWaypoints";function Vp(e,t,n,i,r,o){this._injector=e,this.start=function(e,t,o,a){var s,c=n.getGraphics(t),p=t.source,l=t.target,u=t.waypoints,h=(s=a||0!==o?a||o!==u.length-1?Hp:zp:Fp)===Hp?"connection.updateWaypoints":"connection.reconnect",d=r.allowed(h,{connection:t,source:p,target:l});!1===d&&(d=r.allowed(h,{connection:t,source:l,target:p})),!1!==d&&i.init(e,"bendpoint.move",{data:{connection:t,connectionGfx:c,context:{allowed:d,bendpointIndex:o,connection:t,source:p,target:l,insert:a,type:s}}})},t.on("bendpoint.move.hover",(function(e){var t,n=e.context,i=n.connection,o=i.source,a=i.target,s=e.hover,c=n.type;if(n.hover=s,s){var p=c===Hp?"connection.updateWaypoints":"connection.reconnect";if(t=n.allowed=r.allowed(p,{connection:i,source:c===Fp?s:o,target:c===zp?s:a}))return n.source=c===Fp?s:o,void(n.target=c===zp?s:a);!1===t&&(t=n.allowed=r.allowed(p,{connection:i,source:c===zp?s:a,target:c===Fp?s:o})),t&&(n.source=c===zp?s:a,n.target=c===Fp?s:o)}})),t.on(["bendpoint.move.out","bendpoint.move.cleanup"],(function(e){var t=e.context,n=t.type;t.hover=null,t.source=null,t.target=null,n!==Hp&&(t.allowed=!1)})),t.on("bendpoint.move.end",(function(e){var t=e.context,n=t.allowed,i=t.bendpointIndex,r=t.connection,a=t.insert,s=r.waypoints.slice(),c=t.source,p=t.target,l=t.type,u=t.hints||{},h={x:Ip(e.x),y:Ip(e.y)};if(!n)return!1;l===Hp?(a?s.splice(i,0,h):s[i]=h,u.bendpointMove={insert:a,bendpointIndex:i},s=this.cropWaypoints(r,s),o.updateWaypoints(r,function(e){e=e.slice();for(var t,n,i,r=0;e[r];)t=e[r],n=e[r-1],0===wt(t,i=e[r+1])||Et(n,i,t)?e.splice(r,1):r++;return e}(s),u)):(l===Fp?(u.docking="source",Gp(t)&&(u.docking="target",u.newWaypoints=s.reverse())):l===zp&&(u.docking="target",Gp(t)&&(u.docking="source",u.newWaypoints=s.reverse())),o.reconnect(r,c,p,h,u))}),this)}function Gp(e){var t=e.hover,n=e.source,i=e.target,r=e.type;return r===Fp?t&&i&&t===i&&n!==i:r===zp?t&&n&&t===n&&n!==i:void 0}Vp.$inject=["injector","eventBus","canvas","dragging","rules","modeling"],Vp.prototype.cropWaypoints=function(e,t){var n=this._injector.get("connectionDocking",!1);if(!n)return t;var i=e.waypoints;return e.waypoints=t,e.waypoints=n.getCroppedWaypoints(e),t=e.waypoints,e.waypoints=i,t};var Wp="updateWaypoints",Up="connect-ok",qp="connect-not-ok",Kp="connect-hover",Yp="djs-updating",Xp="djs-dragging";function Zp(e,t,n,i){this._injector=t;var r=t.get("connectionPreview",!1);n.on("bendpoint.move.start",(function(e){var t=e.context,n=t.bendpointIndex,r=t.connection,o=t.insert,a=r.waypoints,s=a.slice();t.waypoints=a,o&&s.splice(n,0,{x:e.x,y:e.y}),r.waypoints=s,we(t.draggerGfx=Bp(i.getLayer("overlays"))).add("djs-dragging"),i.addMarker(r,Xp),i.addMarker(r,Yp)})),n.on("bendpoint.move.hover",(function(e){var t=e.context,n=t.allowed,r=t.hover,o=t.type;if(r){if(i.addMarker(r,Kp),o===Wp)return;n?(i.removeMarker(r,qp),i.addMarker(r,Up)):!1===n&&(i.removeMarker(r,Up),i.addMarker(r,qp))}})),n.on(["bendpoint.move.out","bendpoint.move.cleanup"],1100,(function(e){var t=e.context,n=t.hover,r=t.target;n&&(i.removeMarker(n,Kp),i.removeMarker(n,r?Up:qp))})),n.on("bendpoint.move.move",(function(t){var n=t.context,i=n.allowed,o=n.bendpointIndex,a=n.draggerGfx,s=n.hover,c=n.type,p=n.connection,l=p.source,u=p.target,h=p.waypoints.slice(),d={x:t.x,y:t.y},f=n.hints||{},m={};r&&(f.connectionStart&&(m.connectionStart=f.connectionStart),f.connectionEnd&&(m.connectionEnd=f.connectionEnd),"reconnectStart"===c?Gp(n)?(m.connectionEnd=m.connectionEnd||d,m.source=u,m.target=s||l,h=h.reverse()):(m.connectionStart=m.connectionStart||d,m.source=s||l,m.target=u):"reconnectEnd"===c?Gp(n)?(m.connectionStart=m.connectionStart||d,m.source=s||u,m.target=l,h=h.reverse()):(m.connectionEnd=m.connectionEnd||d,m.source=l,m.target=s||u):(m.noCropping=!0,m.noLayout=!0,h[o]=d),c===Wp&&(h=e.cropWaypoints(p,h)),m.waypoints=h,r.drawPreview(n,i,m)),Wn(a,t.x,t.y)}),this),n.on(["bendpoint.move.end","bendpoint.move.cancel"],1100,(function(e){var t=e.context,n=t.connection,o=t.draggerGfx,a=t.hover,s=t.target,c=t.waypoints;n.waypoints=c,Fe(o),i.removeMarker(n,Yp),i.removeMarker(n,Xp),a&&(i.removeMarker(a,Up),i.removeMarker(a,s?Up:qp)),r&&r.cleanUp(t)}))}Zp.$inject=["bendpointMove","injector","eventBus","canvas"];var Qp="connect-hover",Jp="djs-updating";function el(e,t,n){return tl(e,t,e[t]+n)}function tl(e,t,n){return{x:"x"===t?n:e.x,y:"y"===t?n:e.y}}function nl(e){return"x"===e?"y":"x"}function il(e,t,n){var i,r;return e.original?e.original:(i=fn(t),tl(e,r=nl(n),i[r]))}function rl(e,t,n,i,r,o){var a=e.get("connectionDocking",!1);function s(e,t){if(!a)return t;var n,i=e.waypoints;return e.waypoints=t,n=a.getCroppedWaypoints(e),e.waypoints=i,n}function c(e){r.update("connection",e.connection,e.connectionGfx)}function p(e,t,n){var i=e.newWaypoints,r=function(e,t,n,i){var r=Math.max(t[i],n[i]),o=Math.min(t[i],n[i]);return tl(t,i,Math.min(Math.max(o+20,e[i]),r-20))}(n,i[e.segmentStartIndex+t],i[e.segmentEndIndex+t],nl(e.axis));Wn(e.draggerGfx,r.x,r.y)}this.start=function(e,t,r){var o,a,s,c,p=n.getGraphics(t),l=r-1,u=r,h=t.waypoints,d=h[l],f=h[u],m=Dp(n,h,e);(a=St(d,f))&&(s="v"===a?"x":"y",0===l&&(d=il(d,t.source,s)),u===h.length-1&&(f=il(f,t.target,s)),o={connection:t,segmentStartIndex:l,segmentEndIndex:u,segmentStart:d,segmentEnd:f,axis:s,dragPosition:c=m?m.point:{x:(d.x+f.x)/2,y:(d.y+f.y)/2}},i.init(e,c,"connectionSegment.move",{cursor:"x"===s?"resize-ew":"resize-ns",data:{connection:t,connectionGfx:p,context:o}}))},t.on("connectionSegment.move.start",(function(e){var t=e.context,i=e.connection,r=n.getLayer("overlays");t.originalWaypoints=i.waypoints.slice(),t.draggerGfx=jp(r,t.segmentStart,t.segmentEnd),we(t.draggerGfx).add("djs-dragging"),n.addMarker(i,Jp)})),t.on("connectionSegment.move.move",(function(e){var t,n,i=e.context,r=i.connection,o=i.segmentStartIndex,a=i.segmentEndIndex,l=i.segmentStart,u=i.segmentEnd,h=i.axis,d=i.originalWaypoints.slice(),f=el(l,h,e["d"+h]),m=el(u,h,e["d"+h]),v=d.length,y=0;d[o]=f,d[a]=m,o<2&&(t=mn(r.source,f),1===o?"intersect"===t&&(d.shift(),d[0]=f,y--):"intersect"!==t&&(d.unshift(l),y++)),a>v-3&&(n=mn(r.target,m),a===v-2?"intersect"===n&&(d.pop(),d[d.length-1]=m):"intersect"!==n&&d.push(u)),i.newWaypoints=r.waypoints=s(r,d),p(i,y,e),i.newSegmentStartIndex=o+y,c(e)})),t.on("connectionSegment.move.hover",(function(e){e.context.hover=e.hover,n.addMarker(e.hover,Qp)})),t.on(["connectionSegment.move.out","connectionSegment.move.cleanup"],(function(e){var t=e.context.hover;t&&n.removeMarker(t,Qp)})),t.on("connectionSegment.move.cleanup",(function(e){var t=e.context,i=t.connection;t.draggerGfx&&Fe(t.draggerGfx),n.removeMarker(i,Jp)})),t.on(["connectionSegment.move.cancel","connectionSegment.move.end"],(function(e){var t=e.context;t.connection.waypoints=t.originalWaypoints,c(e)})),t.on("connectionSegment.move.end",(function(e){var t=e.context,n=t.connection,i=t.newWaypoints,r=t.newSegmentStartIndex;i=i.map((function(e){return{original:e.original,x:Math.round(e.x),y:Math.round(e.y)}}));var a=function(e,t){var n=0,i=e.filter((function(i,r){return!Et(e[r-1],e[r+1],i)||(n=r<=t?n-1:n,!1)}));return{waypoints:i,segmentOffset:n}}(i,r),c=s(n,a.waypoints),p=a.segmentOffset,l={segmentMove:{segmentStartIndex:t.segmentStartIndex,newSegmentStartIndex:r+p}};o.updateWaypoints(n,c,l)}))}rl.$inject=["injector","eventBus","canvas","dragging","graphicsFactory","modeling"];var ol=Math.abs,al=Math.round;function sl(e){return{x:e.x,y:e.y}}function cl(e){return{x:e.x+e.width,y:e.y+e.height}}function pl(e,t){return!e||isNaN(e.x)||isNaN(e.y)?t:{x:al(e.x+e.width/2),y:al(e.y+e.height/2)}}function ll(e,t){var n=e.snapped;return!!n&&("string"==typeof t?n[t]:n.x&&n.y)}function ul(e,t,n){if("string"!=typeof t)throw new Error("axis must be in [x, y]");if("number"!=typeof n&&!1!==n)throw new Error("value must be Number or false");var i,r=e[t],o=e.snapped=e.snapped||{};return!1===n?o[t]=!1:(o[t]=!0,i=n-r,e[t]+=i,e["d"+t]+=i),r}function hl(e){return e.children||[]}var dl=Math.abs,fl=Math.round;function ml(e){function t(e,t){if(p(e)){for(var n=e.length;n--;)if(dl(e[n]-t)<=10)return e[n]}else{var i=t%(e=+e);if(i<10)return t-i;if(i>e-10)return t-i+e}return t}function n(e,t){return e.waypoints?Lp(t,e):e.width?{x:fl(e.width/2+e.x),y:fl(e.height/2+e.y)}:void 0}e.on("connectionSegment.move.move",1500,(function(e){var i,r,o=function(e){var t=e.context,i=t.snapPoints,r=t.connection,o=r.waypoints,a=t.segmentStart,s=t.segmentStartIndex,c=t.segmentEnd,p=t.segmentEndIndex,l=t.axis;if(i)return i;var u=[o[s-1],a,c,o[p+1]];return s<2&&u.unshift(n(r.source,e)),p>o.length-3&&u.unshift(n(r.target,e)),t.snapPoints=i={horizontal:[],vertical:[]},g(u,(function(e){e&&(e=e.original||e,"y"===l&&i.horizontal.push(e.y),"x"===l&&i.vertical.push(e.x))})),i}(e),a=e.x,s=e.y;if(o){var c=a-(i=t(o.vertical,a)),p=s-(r=t(o.horizontal,s));L(e,{dx:e.dx-c,dy:e.dy-p,x:i,y:r}),(c||-1!==o.vertical.indexOf(a))&&ul(e,"x",i),(p||-1!==o.horizontal.indexOf(s))&&ul(e,"y",r)}})),e.on(["connect.hover","connect.move","connect.end"],1500,(function(e){var t=e.context.hover,i=t&&n(t,e);sn(t)&&i&&i.x&&i.y&&(ul(e,"x",i.x),ul(e,"y",i.y))})),e.on(["bendpoint.move.move","bendpoint.move.end"],1500,(function(e){var i,r,o=e.context,a=function(e){var t=e.snapPoints,n=e.connection.waypoints,i=e.bendpointIndex;if(t)return t;var r=[n[i-1],n[i+1]];return e.snapPoints=t={horizontal:[],vertical:[]},g(r,(function(e){e&&(e=e.original||e,t.horizontal.push(e.y),t.vertical.push(e.x))})),t}(o),s=o.hover,c=s&&n(s,e),p=e.x,l=e.y;if(a){var u=p-(i=t(c?a.vertical.concat([c.x]):a.vertical,p)),h=l-(r=t(c?a.horizontal.concat([c.y]):a.horizontal,l));L(e,{dx:e.dx-u,dy:e.dy-h,x:e.x-u,y:e.y-h}),(u||-1!==a.vertical.indexOf(p))&&ul(e,"x",i),(h||-1!==a.horizontal.indexOf(l))&&ul(e,"y",r)}}))}ml.$inject=["eventBus"];var vl={__depends__:[vp,xp],__init__:["bendpoints","bendpointSnapping","bendpointMovePreview"],bendpoints:["type",$p],bendpointMove:["type",Vp],bendpointMovePreview:["type",Zp],connectionSegmentMove:["type",rl],bendpointSnapping:["type",ml]};function yl(e,t,n,i){function r(e,t){return i.allowed("connection.create",{source:e,target:t})}e.on("connect.hover",(function(e){var t,n=e.context,i=n.start,o=e.hover;if(n.hover=o,!c(t=n.canExecute=r(i,o))){if(!1!==t)return n.source=i,void(n.target=o);c(t=n.canExecute=r(o,i))||!1!==t&&(n.source=o,n.target=i)}})),e.on(["connect.out","connect.cleanup"],(function(e){var t=e.context;t.hover=null,t.source=null,t.target=null,t.canExecute=!1})),e.on("connect.end",(function(e){var t=e.context,i=t.canExecute,r=t.connectionStart,o={x:e.x,y:e.y},a=t.source,s=t.target;if(!i)return!1;var c=null,p={connectionStart:gl(t)?o:r,connectionEnd:gl(t)?r:o};l(i)&&(c=i),t.connection=n.connect(a,s,c,p)})),this.start=function(e,n,i,r){l(i)||(r=i,i=fn(n)),t.init(e,"connect",{autoActivate:r,data:{shape:n,context:{start:n,connectionStart:i}}})}}function gl(e){var t=e.hover,n=e.source,i=e.target;return t&&n&&t===n&&n!==i}yl.$inject=["eventBus","dragging","modeling","rules"];var bl="connect-ok",_l="connect-not-ok";function xl(e,t,n){var i=e.get("connectionPreview",!1);i&&t.on("connect.move",(function(e){var t=e.context,n=t.canExecute,r=t.hover,o=t.source,a=t.start,s=t.startPosition,c=t.target,p=t.connectionStart||s,l=t.connectionEnd||{x:e.x,y:e.y},u=p,h=l;gl(t)&&(u=l,h=p),i.drawPreview(t,n,{source:o||a,target:c||r,connectionStart:u,connectionEnd:h})})),t.on("connect.hover",900,(function(e){var t=e.context,i=e.hover,r=t.canExecute;null!==r&&n.addMarker(i,r?bl:_l)})),t.on(["connect.out","connect.cleanup"],1100,(function(e){var t=e.hover;t&&(n.removeMarker(t,bl),n.removeMarker(t,_l))})),i&&t.on("connect.cleanup",(function(e){i.cleanUp(e.context)}))}xl.$inject=["injector","eventBus","canvas"];var wl={__depends__:[_a,xp,vp],__init__:["connectPreview"],connect:["type",yl],connectPreview:["type",xl]};function El(e,t,n,i){this._canvas=t,this._graphicsFactory=n,this._elementFactory=i,this._connectionDocking=e.get("connectionDocking",!1),this._layouter=e.get("layouter",!1)}El.$inject=["injector","canvas","graphicsFactory","elementFactory"],El.prototype.drawPreview=function(e,t,n){n=n||{};var i,r,o,a=e.connectionPreviewGfx,s=e.getConnection,c=n.source,p=n.target,l=n.waypoints,u=n.connectionStart,h=n.connectionEnd,d=n.noLayout,f=n.noCropping,m=n.noNoop,v=this;a||(a=e.connectionPreviewGfx=this.createConnectionPreviewGfx()),Se(a),s||(s=e.getConnection=(r=function(e,t,n){return v.getConnection(e,t,n)},o={},function(e){var t=JSON.stringify(e),n=o[t];return n||(n=o[t]=r.apply(null,arguments)),n})),t&&(i=s(t,c,p)),i?(i.waypoints=l||[],this._layouter&&!d&&(i.waypoints=this._layouter.layoutConnection(i,{source:c,target:p,connectionStart:u,connectionEnd:h,waypoints:n.waypoints||i.waypoints})),i.waypoints&&i.waypoints.length||(i.waypoints=[c?fn(c):u,p?fn(p):h]),this._connectionDocking&&(c||p)&&!f&&(i.waypoints=this._connectionDocking.getCroppedWaypoints(i,c,p)),this._graphicsFactory.drawConnection(a,i,{stroke:"var(--element-dragger-color)"})):!m&&this.drawNoopPreview(a,n)},El.prototype.drawNoopPreview=function(e,t){var n=t.source,i=t.target,r=t.connectionStart||fn(n),o=t.connectionEnd||fn(i),a=this.cropWaypoints(r,o,n,i);ye(e,this.createNoopConnection(a[0],a[1]))},El.prototype.cropWaypoints=function(e,t,n,i){var r=this._graphicsFactory,o=n&&r.getShapePath(n),a=i&&r.getShapePath(i),s=r.getConnectionPath({waypoints:[e,t]});return[e=n&&vn(o,s,!0)||e,t=i&&vn(a,s,!1)||t]},El.prototype.cleanUp=function(e){e&&e.connectionPreviewGfx&&Fe(e.connectionPreviewGfx)},El.prototype.getConnection=function(e){var t=function(e){return l(e)?e:{}}(e);return this._elementFactory.createConnection(t)},El.prototype.createConnectionPreviewGfx=function(){var e=Ae("g");return _e(e,{pointerEvents:"none"}),we(e).add("djs-dragger"),ye(this._canvas.getActiveLayer(),e),e},El.prototype.createNoopConnection=function(e,t){return ot([e,t],{stroke:"#333",strokeDasharray:[1],strokeWidth:2,"pointer-events":"none"})};var Sl={__init__:["connectionPreview"],connectionPreview:["type",El]};const Cl=new Eo("ps");var kl=["marker-start","marker-mid","marker-end"],Rl=["circle","ellipse","line","path","polygon","polyline","path","rect"];function Pl(e,t,n,i){this._elementRegistry=e,this._canvas=n,this._styles=i}Pl.$inject=["elementRegistry","eventBus","canvas","styles"],Pl.prototype.cleanUp=function(){console.warn("PreviewSupport#cleanUp is deprecated and will be removed in future versions. You do not need to manually clean up previews anymore. cf. https://github.com/bpmn-io/diagram-js/pull/906")},Pl.prototype.getGfx=function(e){return this._elementRegistry.getGraphics(e)},Pl.prototype.addDragger=function(e,t,n,i="djs-dragger"){var r=Ce(n=n||this.getGfx(e)),o=n.getBoundingClientRect();return this._cloneMarkers(Vn(r),i),_e(r,this._styles.cls(i,[],{x:o.top,y:o.left})),ye(t,r),_e(r,"data-preview-support-element-id",e.id),r},Pl.prototype.addFrame=function(e,t){var n=Ae("rect",{class:"djs-resize-overlay",width:e.width,height:e.height,x:e.x,y:e.y});return ye(t,n),_e(n,"data-preview-support-element-id",e.id),n},Pl.prototype._cloneMarkers=function(e,t="djs-dragger",n=e){var i=this;e.childNodes&&e.childNodes.forEach((e=>{i._cloneMarkers(e,t,n)})),function(e){return-1!==Rl.indexOf(e.nodeName)}(e)&&kl.forEach((function(r){if(_e(e,r)){var o=function(e,t,n){var i=(r=_e(e,t),r.match(/url\(['"]?#([^'"]*)['"]?\)/)[1]);var r;return fe("marker#"+i,n||document)}(e,r,i._canvas.getContainer());o&&i._cloneMarker(n,e,o,r,t)}}))},Pl.prototype._cloneMarker=function(e,t,n,i,r="djs-dragger"){var o=[n.id,r,Cl.next()].join("-"),a=fe("marker#"+n.id,e);e=e||this._canvas._svg;var s=a||Ce(n);s.id=o,we(s).add(r);var c=fe(":scope > defs",e);c||ye(e,c=Ae("defs")),ye(c,s),_e(t,i,"url(#"+s.id+")")};var Al={__init__:["previewSupport"],previewSupport:["type",Pl]};const Ml="complex-preview";class Tl{constructor(e,t,n){this._canvas=e,this._graphicsFactory=t,this._previewSupport=n,this._markers=[]}create(e){this.cleanUp();const{created:t=[],moved:n=[],removed:i=[],resized:r=[]}=e,o=this._canvas.getLayer(Ml);t.filter((e=>!function(e){return e.hidden}(e))).forEach((e=>{let t;sn(e)?(t=this._graphicsFactory._createContainer("connection",Ae("g")),this._graphicsFactory.drawConnection(Vn(t),e)):(t=this._graphicsFactory._createContainer("shape",Ae("g")),this._graphicsFactory.drawShape(Vn(t),e),Wn(t,e.x,e.y)),this._previewSupport.addDragger(e,o,t)})),n.forEach((({element:e,delta:t})=>{this._previewSupport.addDragger(e,o,void 0,"djs-dragging"),this._canvas.addMarker(e,"djs-element-hidden"),this._markers.push([e,"djs-element-hidden"]);const n=this._previewSupport.addDragger(e,o);sn(e)?Wn(n,t.x,t.y):Wn(n,e.x+t.x,e.y+t.y)})),i.forEach((e=>{this._previewSupport.addDragger(e,o,void 0,"djs-dragging"),this._canvas.addMarker(e,"djs-element-hidden"),this._markers.push([e,"djs-element-hidden"])})),r.forEach((({shape:e,bounds:t})=>{this._canvas.addMarker(e,"djs-hidden"),this._markers.push([e,"djs-hidden"]),this._previewSupport.addDragger(e,o,void 0,"djs-dragging");const n=this._graphicsFactory._createContainer("shape",Ae("g"));this._graphicsFactory.drawShape(Vn(n),e,{width:t.width,height:t.height}),Wn(n,t.x,t.y),this._previewSupport.addDragger(e,o,n)}))}cleanUp(){Se(this._canvas.getLayer(Ml)),this._markers.forEach((([e,t])=>this._canvas.removeMarker(e,t))),this._markers=[]}show(){this._canvas.showLayer(Ml)}hide(){this._canvas.hideLayer(Ml)}}Tl.$inject=["canvas","graphicsFactory","previewSupport"];var Dl={__depends__:[Al],__init__:["complexPreview"],complexPreview:["type",Tl]},Bl=["top","bottom","left","right"],Nl=10;function jl(e,t){function n(e){if(Hr(e)&&!sn(e)){var n=function(e){var t=fn(e.label),n=fn(e),i=Ol(n,t);if(r=i,-1===Bl.indexOf(r))return;var r;var o=function(e){var t=fn(e),n=[].concat(e.incoming.map((function(e){return e.waypoints[e.waypoints.length-2]})),e.outgoing.map((function(e){return e.waypoints[1]}))).map((function(e){return Ol(t,e)}));return n}(e);if(e.host){var a=function(e){var t,n=e.host,i=fn(e),r=mn(i,n);t=r.indexOf("-")>=0?r.split("-"):[r];var o=Bl.filter((function(e){return-1===t.indexOf(e)}));return o}(e);o=o.concat(a)}var s=Bl.filter((function(e){return-1===o.indexOf(e)}));if(-1!==s.indexOf(i))return;return s[0]}(e);n&&function(e,n){var i=fn(e),r=e.label,o=fn(r);if(!r.parent)return;var a,s=un(e);switch(n){case"top":a={x:i.x,y:s.top-Nl-r.height/2};break;case"left":a={x:s.left-Nl-r.width/2,y:i.y};break;case"bottom":a={x:i.x,y:s.bottom+Nl+r.height/2};break;case"right":a={x:s.right+Nl+r.width/2,y:i.y}}var c=Ha(a,o);t.moveShape(r,c)}(e,n)}}Do.call(this,e),this.postExecuted(["connection.create","connection.layout","connection.updateWaypoints"],(function(e){var t=e.context,i=t.connection,r=i.source,o=i.target;!1!==(t.hints||{}).createElementsBehavior&&(n(r),n(o))})),this.postExecuted(["label.create"],(function(e){var t=e.context,i=t.shape;!1!==(t.hints||{}).createElementsBehavior&&n(i.labelTarget)})),this.postExecuted(["elements.create"],(function(e){var t=e.context,i=t.elements;!1!==(t.hints||{}).createElementsBehavior&&i.forEach((function(e){n(e)}))}))}function Ol(e,t){return mn(t,e,5)}function Ll(e){Do.call(this,e),this.preExecute("shape.append",(function(e){var t=e.source,n=e.shape;e.position||(vr(n,"bpmn:TextAnnotation")?e.position={x:t.x+t.width/2+75,y:t.y-50-n.height/2}:e.position={x:t.x+t.width+80+n.width/2,y:t.y+t.height/2})}),!0)}function $l(e,t){e.invoke(Do,this),this.postExecute("shape.move",(function(e){var n=e.newParent,i=e.shape;g(y(i.incoming.concat(i.outgoing),(function(e){return vr(e,"bpmn:Association")})),(function(e){t.moveConnection(e,{x:0,y:0},n)}))}),!0)}e(jl,Do),jl.$inject=["eventBus","modeling"],e(Ll,Do),Ll.$inject=["eventBus"],e($l,Do),$l.$inject=["injector","modeling"];function Il(e,t){t.invoke(Do,this),this._bpmnReplace=e;var n=this;this.postExecuted("elements.create",500,(function(e){var t=e.elements;1===(t=t.filter((function(e){return Fl(e,e.host)}))).length&&t.map((function(e){return t.indexOf(e)})).forEach((function(i){var r=t[i];e.elements[i]=n._replaceShape(t[i],r)}))}),!0),this.preExecute("elements.move",500,(function(e){var t=e.shapes,i=e.newHost;if(1===t.length){var r=t[0];Fl(r,i)&&(e.shapes=[n._replaceShape(r,i)])}}),!0)}function Fl(e,t){return!cn(e)&&yr(e,["bpmn:IntermediateThrowEvent","bpmn:IntermediateCatchEvent"])&&!!t}function zl(e,t){function n(e){return y(e.attachers,(function(e){return vr(e,"bpmn:BoundaryEvent")}))}Do.call(this,e),this.postExecute("connection.create",(function(e){var i=e.context.source,r=e.context.target,o=n(r);vr(i,"bpmn:EventBasedGateway")&&vr(r,"bpmn:ReceiveTask")&&o.length>0&&t.removeElements(o)})),this.postExecute("connection.reconnect",(function(e){var i=e.context.oldSource,r=e.context.newSource;vr(i,"bpmn:Gateway")&&vr(r,"bpmn:EventBasedGateway")&&g(r.outgoing,(function(e){var i=e.target,r=n(i);vr(i,"bpmn:ReceiveTask")&&r.length>0&&t.removeElements(r)}))}))}function Hl(e,t,n){function i(e){t.updateProperties(e,{isForCompensation:!0})}function r(e){t.updateProperties(e,{isForCompensation:void 0})}Do.call(this,e),this.preExecute("shape.replace",(function(e){const{newData:n,oldShape:i}=e;if(Gl(e.oldShape)&&"bpmn:CompensateEventDefinition"!==n.eventDefinitionType||"bpmn:BoundaryEvent"!==n.type){const t=i.outgoing.find((({target:e})=>Vl(e)));t&&t.target&&(e._connectionTarget=t.target)}else if(!Gl(e.oldShape)&&"bpmn:CompensateEventDefinition"===n.eventDefinitionType&&"bpmn:BoundaryEvent"===n.type){const n=i.outgoing.find((({target:e})=>Wl(e)));n&&n.target&&(e._connectionTarget=n.target),function(e){const n=e.outgoing.filter((e=>vr(e,"bpmn:SequenceFlow")));t.removeElements(n)}(i)}}),!0),this.postExecuted("shape.replace",(function(e){const{_connectionTarget:n,newShape:i}=e;n&&t.connect(i,n)}),!0),this.preExecute("connection.create",(function(e){const n=e.connection,r=e.source,o=e.target;Gl(r)&&Wl(o)&&(i(o),function(e,n){const i=e.outgoing.filter((e=>vr(e,"bpmn:Association"))),r=i.filter((e=>Vl(e.target)&&!n.includes(e)));r.forEach((e=>t.removeConnection(e)))}(r,[n]))}),!0),this.postExecuted("connection.delete",(function(e){const t=e.source,n=e.target;Gl(t)&&Vl(n)&&r(n)}),!0),this.postExecuted("connection.reconnect",(function(e){const t=e.newTarget,n=e.oldSource,o=e.oldTarget;if(o!==t){const e=n;Vl(o)&&r(o),Gl(e)&&Wl(t)&&i(t)}}),!0),this.postExecuted("element.updateProperties",(function(e){const{element:i}=e;Vl(i)?(function(e){for(const i of e.incoming)n.canConnect(i.source,e)||t.removeConnection(i);for(const i of e.outgoing)n.canConnect(e,i.target)||t.removeConnection(i)}(i),function(e){const n=e.attachers.slice();if(!n.length)return;t.removeElements(n)}(i)):Wl(i)&&function(e){const n=e.incoming.filter((e=>Gl(e.source)));t.removeElements(n)}(i)}),!0)}function Vl(e){const t=gr(e);return t&&t.get("isForCompensation")}function Gl(e){return e&&vr(e,"bpmn:BoundaryEvent")&&Ir(e,"bpmn:CompensateEventDefinition")}function Wl(e){return e&&vr(e,"bpmn:Activity")&&!$r(e)}function Ul(e){e.invoke(Do,this),this.preExecute("shape.create",1500,(function(e){var t=e.context,n=t.parent,i=t.shape;vr(n,"bpmn:Lane")&&!vr(i,"bpmn:Lane")&&(t.parent=Jc(n,"bpmn:Participant"))}))}function ql(e,t){Do.call(this,e),this.preExecute("shape.create",(function(e){var n=e.context.shape;if(vr(n,"bpmn:DataObjectReference")&&"label"!==n.type){var i=t.create("bpmn:DataObject");n.businessObject.dataObjectRef=i}}))}Il.$inject=["bpmnReplace","injector"],e(Il,Do),Il.prototype._replaceShape=function(e,t){var n,i=(n=gr(e).eventDefinitions)&&n[0],r={type:"bpmn:BoundaryEvent",host:t};return i&&(r.eventDefinitionType=i.$type),this._bpmnReplace.replaceElement(e,r,{layoutConnection:!1})},zl.$inject=["eventBus","modeling"],e(zl,Do),e(Hl,Do),Hl.$inject=["eventBus","modeling","bpmnRules"],Ul.$inject=["injector"],e(Ul,Do),ql.$inject=["eventBus","bpmnFactory"],e(ql,Do);var Kl=20,Yl=20,Xl=2e3;function Zl(e,t,n){function i(){var t=e.getRootElement();return vr(t,"bpmn:Collaboration")?t:n.makeCollaboration()}Do.call(this,t),t.on(["create.start","shape.move.start"],Xl,(function(t){var n=t.context,i=n.shape,r=e.getRootElement();if(vr(i,"bpmn:Participant")&&vr(r,"bpmn:Process")&&r.children.length){var o=r.children.filter((function(e){return!vr(e,"bpmn:Group")&&!cn(e)&&!sn(e)}));if(o.length){var a=ht(o),s=function(e,t){t={width:t.width+40+30,height:t.height+40};var n=Math.max(e.width,t.width),i=Math.max(e.height,t.height);return{x:-n/2,y:-i/2,width:n,height:i}}(i,a);L(i,s),n.createConstraints=function(e,t){return t=un(t),{bottom:t.top+e.height/2-Yl,left:t.right-e.width/2+Kl,top:t.bottom-e.height/2+Yl,right:t.left+e.width/2-Kl-30}}(i,a)}}})),t.on("create.start",Xl,(function(n){var i=n.context.shape,r=e.getRootElement(),o=e.getGraphics(r);function a(e){e.element=r,e.gfx=o}vr(i,"bpmn:Participant")&&vr(r,"bpmn:Process")&&(t.on("element.hover",Xl,a),t.once("create.cleanup",(function(){t.off("element.hover",a)})))})),this.preExecute("elements.create",Xl,(function(e){var t,n=e.elements,r=e.parent,o=function(e){return m(e,(function(e){return vr(e,"bpmn:Participant")}))}(n);o&&vr(r,"bpmn:Process")&&(e.parent=i(),(t=e.hints=e.hints||{}).participant=o,t.process=r,t.processRef=gr(o).get("processRef"))}),!0),this.preExecute("shape.create",(function(e){var t=e.parent,n=e.shape;vr(n,"bpmn:Participant")&&vr(t,"bpmn:Process")&&(e.parent=i(),e.process=t,e.processRef=gr(n).get("processRef"))}),!0),this.execute("shape.create",(function(e){var t=e.hints||{},n=e.process||t.process,i=e.shape,r=t.participant;!n||r&&i!==r||gr(i).set("processRef",gr(n))}),!0),this.revert("shape.create",(function(e){var t=e.hints||{},n=e.process||t.process,i=e.processRef||t.processRef,r=e.shape,o=t.participant;!n||o&&r!==o||gr(r).set("processRef",i)}),!0),this.postExecute("shape.create",(function(e){var t=e.hints||{},i=e.process||e.hints.process,r=e.shape,o=t.participant;if(i){var a=i.children.slice();o?r===o&&n.moveElements(a,{x:0,y:0},o):n.moveElements(a,{x:0,y:0},r)}}),!0)}Zl.$inject=["canvas","eventBus","modeling"],e(Zl,Do);var Ql="__targetRef_placeholder";function Jl(e,t){function n(e,n){var i=e.get("properties"),r=m(i,(function(e){return e.name===Ql}));return!r&&n&&_t(i,r=t.create("bpmn:Property",{name:Ql})),r}function i(e,t){var i=n(e);i&&(function(e,t,n){return m(e.get("dataInputAssociations"),(function(e){return e!==n&&e.targetRef===t}))}(e,i,t)||bt(e.get("properties"),i))}function r(e){var t,r=e.context,o=r.connection,a=o.businessObject,s=o.target,c=s&&s.businessObject,p=r.newTarget,l=p&&p.businessObject,u=r.oldTarget||r.target,h=u&&u.businessObject,d=o.businessObject;h&&h!==c&&i(h,a),l&&l!==c&&i(l,a),c?(t=n(c,!0),d.targetRef=t):d.targetRef=null}Do.call(this,e),this.executed(["connection.create","connection.delete","connection.move","connection.reconnect"],eu(r)),this.reverted(["connection.create","connection.delete","connection.move","connection.reconnect"],eu(r))}function eu(e){return function(t){if(vr(t.context.connection,"bpmn:DataInputAssociation"))return e(t)}}function tu(e){this._bpmnUpdater=e}function nu(e,t,n,i){function r(e){return e.children.filter((function(e){return vr(e,"bpmn:DataStoreReference")&&!e.labelTarget}))}function o(e,i){var r=e.businessObject||e;if(i=i||n.filter((function(e){return vr(e,"bpmn:Participant")&&gr(e).processRef}))[0]){var o=i.businessObject||i;t.execute("dataStore.updateContainment",{dataStoreBo:r,dataStoreDi:br(e),newSemanticParent:o.processRef||o,newDiParent:br(i)})}}Do.call(this,i),t.registerHandler("dataStore.updateContainment",tu),this.preExecute("shape.create",(function(e){var t=e.context,n=t.shape;vr(n,"bpmn:DataStoreReference")&&"label"!==n.type&&(t.hints||(t.hints={}),t.hints.autoResize=!1)})),this.preExecute("elements.move",(function(e){var t=e.context,n=t.shapes;n.filter((function(e){return vr(e,"bpmn:DataStoreReference")})).length&&(t.hints||(t.hints={}),t.hints.autoResize=n.filter((function(e){return!vr(e,"bpmn:DataStoreReference")})))})),this.postExecute("shape.create",(function(e){var t=e.context.shape,n=t.parent;vr(t,"bpmn:DataStoreReference")&&"label"!==t.type&&vr(n,"bpmn:Collaboration")&&o(t)})),this.postExecute("shape.move",(function(e){var t=e.context,n=t.shape,i=t.oldParent,r=n.parent;vr(i,"bpmn:Collaboration")||vr(n,"bpmn:DataStoreReference")&&"label"!==n.type&&vr(r,"bpmn:Collaboration")&&o(n,vr(i,"bpmn:Participant")?i:function(e,t){for(;e.parent;){if(vr(e.parent,t))return e.parent;e=e.parent}}(i,"bpmn:Participant"))})),this.postExecute("shape.delete",(function(t){var n=t.context.shape,i=e.getRootElement();yr(n,["bpmn:Participant","bpmn:SubProcess"])&&vr(i,"bpmn:Collaboration")&&r(i).filter((function(e){return function(e,t){var n=e.businessObject||e,i=t.businessObject||t;for(;n.$parent;){if(n.$parent===i.processRef||i)return!0;n=n.$parent}return!1}(e,n)})).forEach((function(e){o(e)}))})),this.postExecute("canvas.updateRoot",(function(e){var t=e.context,n=t.oldRoot,i=t.newRoot;r(n).forEach((function(e){vr(i,"bpmn:Process")&&o(e,i)}))}))}Jl.$inject=["eventBus","bpmnFactory"],e(Jl,Do),tu.$inject=["bpmnUpdater"],tu.prototype.execute=function(e){var t=e.dataStoreBo,n=e.dataStoreDi,i=e.newSemanticParent,r=e.newDiParent;return e.oldSemanticParent=t.$parent,e.oldDiParent=n.$parent,this._bpmnUpdater.updateSemanticParent(t,i),this._bpmnUpdater.updateDiParent(n,r),[]},tu.prototype.revert=function(e){var t=e.dataStoreBo,n=e.dataStoreDi,i=e.oldSemanticParent,r=e.oldDiParent;return this._bpmnUpdater.updateSemanticParent(t,i),this._bpmnUpdater.updateDiParent(n,r),[]},nu.$inject=["canvas","commandStack","elementRegistry","eventBus"],e(nu,Do);var iu=Math.max,ru=Math.min;function ou(e,t){return{top:e.top-t.top,right:e.right-t.right,bottom:e.bottom-t.bottom,left:e.left-t.left}}function au(e,t,n){var i=t[e],r=n.min&&n.min[e],o=n.max&&n.max[e];return u(r)&&(i=(/top|left/.test(e)?ru:iu)(i,r)),u(o)&&(i=(/top|left/.test(e)?iu:ru)(i,o)),i}function su(e,t){return void 0!==e?e:20}function cu(e){return!e.waypoints&&"label"!==e.type}function pu(e,t){var n;if((n=void 0===e.length?y(e.children,cu):e).length)return function(e,t){var n,i,r,o;return"object"==typeof t?(n=su(t.left),i=su(t.right),r=su(t.top),o=su(t.bottom)):n=i=r=o=su(t),{x:e.x-n,y:e.y-r,width:e.width+n+i,height:e.height+r+o}}(ht(n),t)}var lu=Math.abs;var uu=["bpmn:Participant","bpmn:Process","bpmn:SubProcess"],hu=30;function du(e,t){return t=t||[],e.children.filter((function(e){vr(e,"bpmn:Lane")&&(du(e,t),t.push(e))})),t}function fu(e){return e.children.filter((function(e){return vr(e,"bpmn:Lane")}))}function mu(e){return Jc(e,uu)||e}function vu(e,t){var n=mu(e),i=du(n,vr(n,"bpmn:Process")?[]:[n]),r=un(e),o=un(t),a=function(e,t){return ou(un(t),un(e))}(e,t),s=[],c=Lr(e);return i.forEach((function(t){if(t!==e){var n,i,p=c?0:a.top,l=c?a.right:0,u=c?0:a.bottom,h=c?a.left:0,d=un(t);a.top&&(lu(d.bottom-r.top)<10&&(u=o.top-d.bottom),lu(d.top-r.top)<5&&(p=o.top-d.top)),a.left&&(lu(d.right-r.left)<10&&(l=o.left-d.right),lu(d.left-r.left)<5&&(h=o.left-d.left)),a.bottom&&(lu(d.top-r.bottom)<10&&(p=o.bottom-d.top),lu(d.bottom-r.bottom)<5&&(u=o.bottom-d.bottom)),a.right&&(lu(d.left-r.right)<10&&(h=o.right-d.left),lu(d.right-r.right)<5&&(l=o.right-d.right)),(p||l||u||h)&&s.push({shape:t,newBounds:(n=t,i={top:p,right:l,bottom:u,left:h},{x:n.x+(i.left||0),y:n.y+(i.top||0),width:n.width-(i.left||0)+(i.right||0),height:n.height-(i.top||0)+(i.bottom||0)})})}})),s}function yu(e,t){Do.call(this,e),this.postExecuted("shape.delete",500,(function(e){var n=e.context,i=n.hints,r=n.shape,o=n.oldParent;vr(r,"bpmn:Lane")&&(i&&i.nested||function(e,n){var i,r,o,a,s,c=Lr(e),p=fu(n),l=[],u=[],h=[],d=[];lt(p,(function(t){return c?t.y>e.y?u.push(t):l.push(t):t.x>e.x?d.push(t):h.push(t),t.children})),p.length&&(i=c?u.length&&l.length?e.height/2:e.height:d.length&&h.length?e.width/2:e.width,l.length&&(r=t.calculateAdjustments(l,"y",i,e.y-10),t.makeSpace(r.movingShapes,r.resizingShapes,{x:0,y:i},"s")),u.length&&(o=t.calculateAdjustments(u,"y",-i,e.y+e.height+10),t.makeSpace(o.movingShapes,o.resizingShapes,{x:0,y:-i},"n")),h.length&&(a=t.calculateAdjustments(h,"x",i,e.x-10),t.makeSpace(a.movingShapes,a.resizingShapes,{x:i,y:0},"e")),d.length&&(s=t.calculateAdjustments(d,"x",-i,e.x+e.width+10),t.makeSpace(s.movingShapes,s.resizingShapes,{x:-i,y:0},"w")))}(r,o))}))}yu.$inject=["eventBus","spaceTool"],e(yu,Do);function gu(e,t){t.invoke(Do,this),this._bpmnReplace=e;var n=this;this.postExecuted("elements.create",500,(function(e){var t=e.elements;t.filter((function(e){return bu(e,e.host)})).map((function(e){return t.indexOf(e)})).forEach((function(i){e.elements[i]=n._replaceShape(t[i])}))}),!0),this.preExecute("elements.move",500,(function(e){var t=e.shapes,i=e.newHost;t.forEach((function(e,r){var o,a=e.host;bu(e,(o=a,-1!==t.indexOf(o)?a:i))&&(t[r]=n._replaceShape(e))}))}),!0)}function bu(e,t){return!cn(e)&&vr(e,"bpmn:BoundaryEvent")&&!t}function _u(e,t,n){function i(e,i,r){var o,a,s,c,p,l,h,d,f=i.waypoints,m=e.outgoing.slice(),v=e.incoming.slice(),g=Sp(f,d=u(r.width)?fn(r):r);if(g){if(o=f.slice(0,g.index),a=f.slice(g.index+(g.bendpoint?1:0)),!o.length||!a.length)return;s=g.bendpoint?f[g.index]:d,1!==o.length&&xu(e,o[o.length-1])||o.push(wu(s)),1!==a.length&&xu(e,a[0])||a.unshift(wu(s))}c=i.source,p=i.target,t.canConnect(c,e,i)&&(n.reconnectEnd(i,e,o||d),l=i),t.canConnect(e,p,i)&&(l?h=n.connect(e,p,{type:i.type,waypoints:a}):(n.reconnectStart(i,e,a||d),h=i));var b=[].concat(l&&y(v,(function(e){return e.source===l.source}))||[],h&&y(m,(function(e){return e.target===h.target}))||[]);b.length&&n.removeElements(b)}Do.call(this,e),this.preExecute("elements.move",(function(e){var n=e.newParent,i=e.shapes,r=e.delta,o=i[0];if(o&&n){n&&n.waypoints&&(e.newParent=n=n.parent);var a=fn(o),s={x:a.x+r.x,y:a.y+r.y},c=m(n.children,(function(e){return t.canInsert(i,e)&&Sp(e.waypoints,s)}));c&&(e.targetFlow=c,e.position=s)}}),!0),this.postExecuted("elements.move",(function(e){var t=e.shapes,n=e.targetFlow,r=e.position;n&&i(t[0],n,r)}),!0),this.preExecute("shape.create",(function(e){var n=e.parent,i=e.shape;t.canInsert(i,n)&&(e.targetFlow=n,e.parent=n.parent)}),!0),this.postExecuted("shape.create",(function(e){var t=e.shape,n=e.targetFlow,r=e.position;n&&i(t,n,r)}),!0)}function xu(e,t){var n=t.x,i=t.y;return n>=e.x&&n<=e.x+e.width&&i>=e.y&&i<=e.y+e.height}function wu(e){return L({},e)}function Eu(e,t){Do.call(this,e),this.preExecuted("connection.create",(function(e){var n=e.context,i=n.connection,r=n.source,o=n.target,a=n.hints;if((!a||!1!==a.createElementsBehavior)&&Su(i)){(vr(r,"bpmn:EventBasedGateway")?o.incoming.filter((e=>e!==i&&Su(e))):o.incoming.filter((e=>e!==i&&Su(e)&&vr(e.source,"bpmn:EventBasedGateway")))).forEach((function(e){t.removeConnection(e)}))}})),this.preExecuted("shape.replace",(function(e){var n=e.context.newShape;vr(n,"bpmn:EventBasedGateway")&&n.outgoing.filter(Su).reduce((function(e,t){return e.includes(t.target)?e:e.concat(t.target)}),[]).forEach((function(e){e.incoming.filter(Su).forEach((function(i){const r=e.incoming.filter(Su).filter((function(e){return e.source===n}));(i.source!==n||r.length>1)&&t.removeConnection(i)}))}))}))}function Su(e){return vr(e,"bpmn:SequenceFlow")}gu.$inject=["bpmnReplace","injector"],e(gu,Do),gu.prototype._replaceShape=function(e){var t,n,i=(n=gr(e).eventDefinitions)&&n[0];return t=i?{type:"bpmn:IntermediateCatchEvent",eventDefinitionType:i.$type}:{type:"bpmn:IntermediateThrowEvent"},this._bpmnReplace.replaceElement(e,t,{layoutConnection:!1})},e(_u,Do),_u.$inject=["eventBus","bpmnRules","modeling"],Eu.$inject=["eventBus","modeling"],e(Eu,Do);var Cu=1500;function ku(e,t,n){t.on(["create.hover","create.move","create.out","create.end","shape.move.hover","shape.move.move","shape.move.out","shape.move.end"],Cu,(function(t){var i=t.context.shape||t.shape,r=t.hover;vr(r,"bpmn:Lane")&&!yr(i,["bpmn:Lane","bpmn:Participant"])&&(t.hover=mu(r),t.hoverGfx=e.getGraphics(t.hover));var o=n.getRootElement();r!==o&&(i.labelTarget||yr(i,["bpmn:Group","bpmn:TextAnnotation"]))&&(t.hover=o,t.hoverGfx=e.getGraphics(t.hover))})),t.on(["connect.hover","connect.out","connect.end","connect.cleanup","global-connect.hover","global-connect.out","global-connect.end","global-connect.cleanup"],Cu,(function(t){var n=t.hover;vr(n,"bpmn:Lane")&&(t.hover=mu(n)||n,t.hoverGfx=e.getGraphics(t.hover))})),t.on(["bendpoint.move.hover"],Cu,(function(t){var n=t.context,i=t.hover,r=n.type;vr(i,"bpmn:Lane")&&/reconnect/.test(r)&&(t.hover=mu(i)||i,t.hoverGfx=e.getGraphics(t.hover))})),t.on(["connect.start"],Cu,(function(e){var t=e.context,n=t.start;vr(n,"bpmn:Lane")&&(t.start=mu(n)||n)})),t.on("shape.move.start",2e3,(function(e){var t=e.shape;vr(t,"bpmn:Lane")&&(e.shape=mu(t)||t)})),t.on("spaceTool.move",2e3,(function(e){var t=e.hover;t&&vr(t,"bpmn:Lane")&&(e.hover=mu(t))}))}ku.$inject=["elementRegistry","eventBus","canvas"];function Ru(e,t,n,i,r,o){function a(e,t,i){var r=n.filter((function(e){return vr(e,"bpmn:Group")})).filter((function(e){return e.businessObject!==i}));t&&!function(e,t){return e.some((function(e){var n=gr(e);return(n.categoryValueRef&&n.categoryValueRef.$parent)===t}))}(r,t)&&function(e){var t=e.$parent;t&&(bt(t.get("rootElements"),e),e.$parent=null)}(t),e&&!function(e,t){return e.some((function(e){return gr(e).categoryValueRef===t}))}(r,e)&&function(e){var t=e.$parent;t&&(bt(t.get("categoryValue"),e),e.$parent=null)}(e)}function s(e,n){return function(e,t,n){return _t(t.get("categoryValue"),e),e.$parent=t,_t(n.get("rootElements"),t),t.$parent=n,e}(e,n,t.getDefinitions())}function c(n,i){var r=gr(n),o=r.categoryValueRef;o||(o=r.categoryValueRef=i.categoryValue=i.categoryValue||function(e){return e.create("bpmn:CategoryValue")}(e));var a=o.$parent;a||(a=o.$parent=i.category=i.category||function(e){return e.create("bpmn:Category")}(e)),s(o,a,t.getDefinitions())}function p(e,t){var n=t.category,i=t.categoryValue,r=gr(e);i?(r.categoryValueRef=null,a(i,n,r)):a(null,r.categoryValueRef.$parent,r)}function l(t,n){var i=e.create(t.$type);return o.copyElement(t,i,null,n)}r.invoke(Do,this),this.execute("label.create",(function(e){var t=e.context,n=t.labelTarget;vr(n,"bpmn:Group")&&c(n,t)})),this.revert("label.create",(function(e){var t=e.context,n=t.labelTarget;vr(n,"bpmn:Group")&&p(n,t)})),this.execute("shape.delete",(function(e){var t=e.context,n=t.shape,i=gr(n);if(vr(n,"bpmn:Group")&&!n.labelTarget){var r=t.categoryValue=i.categoryValueRef;r&&(a(r,t.category=r.$parent,i),i.categoryValueRef=null)}})),this.reverted("shape.delete",(function(e){var t=e.context,n=t.shape;if(vr(n,"bpmn:Group")&&!n.labelTarget){var i=t.category,r=t.categoryValue,o=gr(n);r&&(o.categoryValueRef=r,s(r,i))}})),this.execute("shape.create",(function(e){var t=e.context,n=t.shape;vr(n,"bpmn:Group")&&!n.labelTarget&&gr(n).categoryValueRef&&c(n,t)})),this.reverted("shape.create",(function(e){var t=e.context,n=t.shape;vr(n,"bpmn:Group")&&!n.labelTarget&&gr(n).categoryValueRef&&p(n,t)})),i.on("copyPaste.copyElement",770,(function(e){var t=e.descriptor,n=e.element;if(vr(n,"bpmn:Group")&&!n.labelTarget){var i=gr(n);if(i.categoryValueRef){var r=i.categoryValueRef;t.categoryValue=l(r,!0),r.$parent&&(t.category=l(r.$parent,!0))}}})),i.on("copyPaste.pasteElement",770,(function(e){var t=e.descriptor,n=t.businessObject,i=t.categoryValue,r=t.category;i&&(i=n.categoryValueRef=l(i)),r&&(i.$parent=l(r)),delete t.category,delete t.categoryValue}))}function Pu(e,t,n,i){var r,o,a,s;return 0==(r=(i.y-n.y)*(t.x-e.x)-(i.x-n.x)*(t.y-e.y))?null:(o=e.y-n.y,a=e.x-n.x,s=((i.x-n.x)*o-(i.y-n.y)*a)/r,{x:Math.round(e.x+s*(t.x-e.x)),y:Math.round(e.y+s*(t.y-e.y))})}function Au(e){function t(e,t,n){var i,r={x:n.x,y:n.y-50},o={x:n.x-50,y:n.y},a=Pu(e,t,n,r),s=Pu(e,t,n,o);i=a&&s?Mu(a,n)>Mu(s,n)?s:a:a||s,e.original=i}e.on("bpmnElement.added",(function(e){var n,i,r=e.element;r.waypoints&&(t((i=(n=r).waypoints)[0],i[1],fn(n.source)),t(i[i.length-1],i[i.length-2],fn(n.target)))}))}function Mu(e,t){return Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2))}function Tu(e){Do.call(this,e);var t=["bpmn:Participant","bpmn:Lane"];this.executed(["shape.move","shape.create","shape.resize"],(function(e){var n=e.context.shape,i=gr(n),r=br(n);if(yr(i,t)){var o=r.get("isHorizontal");void 0===o&&(o=!0),r.set("isHorizontal",o)}}))}Ru.$inject=["bpmnFactory","bpmnjs","elementRegistry","eventBus","injector","moddleCopy"],e(Ru,Do),Au.$inject=["eventBus"],Tu.$inject=["eventBus"],e(Tu,Do);var Du=Math.sqrt,Bu=Math.min,Nu=Math.max,ju=Math.abs;function Ou(e){return Math.pow(e,2)}function Lu(e,t){return Du(Ou(e.x-t.x)+Ou(e.y-t.y))}function $u(e,t,n,i){var r=t.x-e.x,o=t.y-e.y,a=n.x-e.x,s=n.y-e.y,c=r*r+o*o,p=(r*a+o*s)/c,l=p*p-(a*a+s*s-i*i)/c;if(l<0&&l>-1e-6&&(l=0),l<0)return[];var u=Du(l),h=-p+u,d=-p-u,f={x:e.x-r*h,y:e.y-o*h};return 0===l?[f]:[f,{x:e.x-r*d,y:e.y-o*d}].filter((function(n){return function(e,t,n){return Iu(e.x,t.x,n.x)&&Iu(e.y,t.y,n.y)}(n,e,t)}))}function Iu(e,t,n){return e>=Bu(t,n)-Fu&&e<=Nu(t,n)+Fu}var Fu=.1;function zu(e,t){return ju(e.x-t.x)<=Fu&&ju(e.y-t.y)<=Fu}function Hu(e,t,n,i){var r=0,o=0,a={point:e,delta:{x:0,y:0}},s=function(e,t){var n,i,r,o,a,s,c,p,l,u,h,d,f=0;for(f=0;f<t.length-1;f++){if(zu(n=t[f],i=t[f+1])?s=[n]:(r=Lu(e,n),o=Lu(e,i),s=$u(n,i,e,Bu(r,o))),s.length<1)throw new Error("expected between [1, 2] circle -> line intersections");1===s.length&&(c={type:"bendpoint",position:s[0],segmentIndex:f,bendpointIndex:zu(n,s[0])?f:f+1}),2===s.length&&(h=s[0],d=s[1],c={type:"segment",position:a={x:(h.x+d.x)/2,y:(h.y+d.y)/2},segmentIndex:f,relativeLocation:Lu(n,a)/Lu(n,i)}),p=Lu(c.position,e),(!u||l>p)&&(u=c,l=p)}return u}(e,n),c=s.segmentIndex,p=function(e,t,n,i){var r=n.segmentIndex,o=t.length-e.length;if(i.segmentMove){var a=i.segmentMove.segmentStartIndex,s=i.segmentMove.newSegmentStartIndex;return r===a?s:r>=s?r+o<s?s:r+o:r}if(i.bendpointMove){var c,p=i.bendpointMove.insert,l=i.bendpointMove.bendpointIndex;return 0===o?r:(r>=l&&(c=p?r+1:r-1),r<l&&(c=r,p&&"bendpoint"!==n.type&&l-1===r&&Vu(t,l)<n.relativeLocation&&c++),c)}return 0===o?r:i.connectionStart&&0===r?0:i.connectionEnd&&r===e.length-2?t.length-2:Math.floor((t.length-2)/2)}(n,t,s,i);if(p<0||p>t.length-2||null===p)return a;var l,u,h=Gu(n,c),d=Gu(t,p),f=s.position,m=function(e,t){var n=Ap(e[0],e[1]),i=Ap(e[0],t);return 0===n?0:i/n}(h,f),v=(l=d,u=kp(h),kp(l)-u);if("bendpoint"===s.type){var y=t.length-n.length,g=s.bendpointIndex,b=n[g];if(-1!==t.indexOf(b))return a;if(0===y){var _=t[g];return{delta:{x:r=_.x-s.position.x,y:o=_.y-s.position.y},point:{x:e.x+r,y:e.y+o}}}y<0&&0!==g&&g<n.length-1&&(m=Vu(n,g))}var x,w,E={x:(d[1].x-d[0].x)*m+d[0].x,y:(d[1].y-d[0].y)*m+d[0].y},S=(x={x:e.x-f.x,y:e.y-f.y},(w=v)?{x:Math.cos(w)*x.x-Math.sin(w)*x.y,y:Math.sin(w)*x.x+Math.cos(w)*x.y}:x);return r=E.x+S.x-e.x,o=E.y+S.y-e.y,{point:ln(E),delta:ln({x:r,y:o})}}function Vu(e,t){var n=Ap(e[t-1],e[t]);return n/(n+Ap(e[t],e[t+1]))}function Gu(e,t){return[e[t],e[t+1]]}function Wu(e,t,n){var i=za(t),r=za(n),o=Ha(e,i),a=o.x*(n.width/t.width),s=o.y*(n.height/t.height);return ln({x:r.x+a,y:r.y+s})}function Uu(e,t,n){var i=za(e),r=za(t),o=za(n),a=Ha(e,i),s=Ha(i,r),c=function(e,t,n){var i=un(t),r=un(n);if(function(e,t){return function(e,t){return e.right!==t.right&&e.left!==t.left}(e,t)||function(e,t){return e.top!==t.top&&e.bottom!==t.bottom}(e,t)}(i,r))return null;var o,a,s,c=mn(t,e);if("top"===c)o={x:0,y:r.bottom-i.bottom};else if("bottom"===c)o={x:0,y:r.top-i.top};else if("right"===c)o={x:r.left-i.left,y:0};else{if("left"!==c)return null;o={x:r.right-i.right,y:0}}if(a={x:e.x+o.x,y:e.y+o.y},s=mn(n,a),s!==c)return null;return o}(i,t,n);if(c)return c;var p=s.x*(n.width/t.width),l=s.y*(n.height/t.height),u=o.x+p,h=o.y+l;return ln({x:u+a.x-e.x,y:h+a.y-e.y})}var qu="name",Ku="text";function Yu(e,t,n,i){function r(e){var n=e.context,r=n.element,o=n.properties;if(qu in o&&t.updateLabel(r,o[qu]),Ku in o&&vr(r,"bpmn:TextAnnotation")){var a=i.getTextAnnotationBounds({x:r.x,y:r.y,width:r.width,height:r.height},o[Ku]||"");t.updateLabel(r,o.text,a)}}function o(e){var t=e.context,n=t.connection,i=n.label,r=L({},t.hints),o=t.newWaypoints||n.waypoints,a=t.oldWaypoints;return void 0===r.startChanged&&(r.startChanged=!!r.connectionStart),void 0===r.endChanged&&(r.endChanged=!!r.connectionEnd),function(e,t,n,i){return Hu(fn(e),t,n,i).delta}(i,o,a,r)}Do.call(this,e),this.postExecute("element.updateProperties",r),this.postExecute("element.updateModdleProperties",(e=>{gr(e.context.element)===e.context.moddleElement&&r(e)})),this.postExecute(["shape.create","connection.create"],(function(e){var n=e.context;if(!1!==(n.hints||{}).createElementsBehavior){var i=n.shape||n.connection;!cn(i)&&zr(i)&&Ur(i)&&t.updateLabel(i,Ur(i))}})),this.postExecute("shape.delete",(function(e){var n=e.context,i=n.labelTarget,r=n.hints||{};i&&!1!==r.unsetLabel&&t.updateLabel(i,null,null,{removeShape:!1})})),this.postExecute(["connection.layout","connection.updateWaypoints"],(function(e){var n=e.context;if(!1!==(n.hints||{}).labelBehavior){var i,r=n.connection.label;r&&r.parent&&(i=o(e),t.moveShape(r,i))}})),this.postExecute(["shape.replace"],(function(e){var t=e.context,n=t.newShape,i=t.oldShape,r=gr(n);r&&zr(r)&&i.label&&n.label&&(n.label.x=i.label.x,n.label.y=i.label.y)})),this.postExecute("shape.resize",(function(e){var n,i=e.context,r=i.shape,o=i.newBounds,a=i.oldBounds;if(Hr(r)){var s=r.label,c=function(e,t){if(!t.length)return;var n=function(e,t){var n=t.map((function(t){return{line:t,distance:Pp(e,t)}}));return A(n,"distance")[0].line}(e,t);return Rp(e,n)}(fn(s),[[{x:(n=a).x,y:n.y},{x:n.x+(n.width||0),y:n.y}],[{x:n.x+(n.width||0),y:n.y},{x:n.x+(n.width||0),y:n.y+(n.height||0)}],[{x:n.x,y:n.y+(n.height||0)},{x:n.x+(n.width||0),y:n.y+(n.height||0)}],[{x:n.x,y:n.y},{x:n.x,y:n.y+(n.height||0)}]]),p=Xu(c,a,o);t.moveShape(s,p)}}))}function Xu(e,t,n){return ln(Ha(Wu(e,t,n),e))}function Zu(e,t){function n(e,t){var n=e.context,i=n.connection,r=L({},n.hints),o=n.newWaypoints||i.waypoints,a=n.oldWaypoints;return void 0===r.startChanged&&(r.startChanged=!!r.connectionStart),void 0===r.endChanged&&(r.endChanged=!!r.connectionEnd),function(e,t,n,i){return Hu(e,t,n,i).point}(t,o,a,r)}Do.call(this,e),this.postExecute(["connection.layout","connection.updateWaypoints"],(function(e){var i=e.context.connection,r=i.outgoing;i.incoming.forEach((function(i){var r=i.waypoints[i.waypoints.length-1],o=n(e,r),a=[].concat(i.waypoints.slice(0,-1),[o]);t.updateWaypoints(i,a)})),r.forEach((function(i){var r=i.waypoints[0],o=n(e,r),a=[].concat([o],i.waypoints.slice(1));t.updateWaypoints(i,a)}))})),this.postExecute(["connection.move"],(function(e){var n=e.context,i=n.connection,r=i.outgoing,o=i.incoming,a=n.delta;o.forEach((function(e){var n=e.waypoints[e.waypoints.length-1],i={x:n.x+a.x,y:n.y+a.y},r=[].concat(e.waypoints.slice(0,-1),[i]);t.updateWaypoints(e,r)})),r.forEach((function(e){var n=e.waypoints[0],i={x:n.x+a.x,y:n.y+a.y},r=[].concat([i],e.waypoints.slice(1));t.updateWaypoints(e,r)}))}))}function Qu(e,t,n){var i=ih(e),r=rh(i,t),o=i[0];return r.length?r[r.length-1]:Wu(o.original||o,n,t)}function Ju(e,t,n){var i=ih(e),r=rh(i,t),o=i[i.length-1];return r.length?r[0]:Wu(o.original||o,n,t)}function eh(e,t,n){var i=ih(e),r=nh(t,n),o=i[0];return Wu(o.original||o,r,t)}function th(e,t,n){var i=ih(e),r=nh(t,n),o=i[i.length-1];return Wu(o.original||o,r,t)}function nh(e,t){return{x:e.x-t.x,y:e.y-t.y,width:e.width,height:e.height}}function ih(e){var t=e.waypoints;if(!t.length)throw new Error("connection#"+e.id+": no waypoints");return t}function rh(e,t){return y(E(e,oh),(function(e){return function(e,t){return"intersect"===mn(t,e,1)}(e,t)}))}function oh(e){return e.original||e}function ah(e,t){Do.call(this,e),this.postExecute("shape.replace",(function(e){var n=e.oldShape,i=e.newShape;if(function(e,t){return vr(e,"bpmn:Participant")&&Or(e)&&vr(t,"bpmn:Participant")&&!Or(t)}(n,i)){var r,o,a,s,c=(o=ut([r=n],!1),a=[],s=[],o.forEach((function(e){e!==r&&(e.incoming.forEach((function(e){vr(e,"bpmn:MessageFlow")&&a.push(e)})),e.outgoing.forEach((function(e){vr(e,"bpmn:MessageFlow")&&s.push(e)})))}),[]),{incoming:a,outgoing:s});c.incoming.forEach((function(e){var r=Ju(e,i,n);t.reconnectEnd(e,i,r)})),c.outgoing.forEach((function(e){var r=Qu(e,i,n);t.reconnectStart(e,i,r)}))}}),!0)}e(Yu,Do),Yu.$inject=["eventBus","modeling","bpmnFactory","textRenderer"],e(Zu,Do),Zu.$inject=["eventBus","modeling"],ah.$inject=["eventBus","modeling"],e(ah,Do);const sh=["bpmn:MessageEventDefinition","bpmn:TimerEventDefinition","bpmn:EscalationEventDefinition","bpmn:ConditionalEventDefinition","bpmn:SignalEventDefinition"];function ch(e){const t=gr(e);if(!(vr(t,"bpmn:BoundaryEvent")||vr(t,"bpmn:StartEvent")&&$r(t.$parent)))return!1;const n=t.get("eventDefinitions");return!(!n||!n.length)&&sh.some((e=>vr(n[0],e)))}function ph(e){return vr(e,"bpmn:BoundaryEvent")?"cancelActivity":"isInterrupting"}function lh(e,t){e.invoke(Do,this),this.postExecuted("shape.replace",(function(e){const n=e.context.oldShape,i=e.context.newShape,r=e.context.hints;if(!ch(i))return;const o=ph(i);if(r.targetElement&&void 0!==r.targetElement[o])return;const a=gr(n).get(o);a!==gr(i).get(o)&&t.updateProperties(i,{[o]:a})}))}function uh(e,t){Do.call(this,e),this.preExecute("shape.resize",(function(e){var n=e.shape,i=br(n),r=i&&i.get("label");r&&r.get("bounds")&&t.updateModdleProperties(n,r,{bounds:void 0})}),!0)}function hh(e,t,n){Do.call(this,e),this.preExecute("shape.delete",(function(e){var i=e.context.shape;if(1===i.incoming.length&&1===i.outgoing.length){var r=i.incoming[0],o=i.outgoing[0];if(vr(r,"bpmn:SequenceFlow")&&vr(o,"bpmn:SequenceFlow")&&t.canConnect(r.source,o.target,r)){var a=function(e,t){var n=Pu(dh(e[e.length-2]),dh(e[e.length-1]),dh(t[1]),dh(t[0]));return n?[].concat(e.slice(0,e.length-1),[n],t.slice(1)):[dh(e[0]),dh(t[t.length-1])]}(r.waypoints,o.waypoints);n.reconnectEnd(r,o.target,a)}}}))}function dh(e){return e.original||e}function fh(e,t){Do.call(this,e),this.preExecute("shape.delete",(function(e){var t=e.shape,n=t.parent;vr(t,"bpmn:Participant")&&(e.collaborationRoot=n)}),!0),this.postExecute("shape.delete",(function(e){var n=e.collaborationRoot;if(n&&!n.businessObject.participants.length){var i=t.makeProcess(),r=n.children.slice();t.moveElements(r,{x:0,y:0},i)}}),!0)}function mh(e,t,n,i){Do.call(this,e);var r=i.get("dragging",!1);function o(e){var i,r,o=e.source,a=e.target;e.parent&&(vr(e,"bpmn:SequenceFlow")&&(n.canConnectSequenceFlow(o,a)||(r=!0),n.canConnectMessageFlow(o,a)&&(i="bpmn:MessageFlow")),vr(e,"bpmn:MessageFlow")&&(n.canConnectMessageFlow(o,a)||(r=!0),n.canConnectSequenceFlow(o,a)&&(i="bpmn:SequenceFlow")),r&&t.removeConnection(e),i&&t.connect(o,a,{type:i,waypoints:e.waypoints.slice()}))}this.postExecuted("elements.move",(function(e){g(e.closure.allConnections,o)}),!0),this.preExecute("connection.reconnect",(function(e){var i,o,a=e.context,s=a.connection,c=a.newSource||s.source,p=a.newTarget||s.target;(i=n.canConnect(c,p))&&i.type!==s.type&&(o=t.connect(c,p,{type:i.type,associationDirection:i.associationDirection,waypoints:s.waypoints.slice()}),s.parent&&t.removeConnection(s),a.connection=o,r&&function(e,t){var n,i=r.context(),o=i&&i.payload.previousSelection;if(!o||!o.length)return;if(-1===(n=o.indexOf(e)))return;o.splice(n,1,t)}(s,o))})),this.postExecuted("element.updateProperties",(function(e){var n,i=e.context,r=i.properties,o=i.element,a=o.businessObject;r.default&&(n=m(o.outgoing,M({id:o.businessObject.default.id})))&&t.updateProperties(n,{conditionExpression:void 0}),r.conditionExpression&&a.sourceRef.default===a&&t.updateProperties(o.source,{default:void 0})}))}function vh(e,t,n,i,r,o){i.invoke(Do,this),this._bpmnReplace=e,this._elementRegistry=n,this._selection=o,this.postExecuted(["elements.create"],500,(function(e){var n=e.context,i=n.parent,r=n.elements,o=_(r,(function(e,n){var r=t.canReplace([n],n.host||n.parent||i);return r?e.concat(r.replacements):e}),[]);o.length&&this._replaceElements(r,o)}),this),this.postExecuted(["elements.move"],500,(function(e){var n=e.context,i=n.newParent,r=n.newHost,o=[];g(n.closure.topLevel,(function(e){o=$r(e)?o.concat(e.children):o.concat(e)})),1===o.length&&r&&(i=r);var a=t.canReplace(o,i);a&&this._replaceElements(o,a.replacements,r)}),this),this.postExecute(["shape.replace"],1500,(function(e){var n,i=e.context,r=i.oldShape,o=i.newShape,a=r.attachers;a&&a.length&&(n=t.canReplace(a,o),this._replaceElements(a,n.replacements))}),this),this.postExecuted(["shape.replace"],1500,(function(e){var t=e.context,n=t.oldShape,i=t.newShape;r.unclaimId(n.businessObject.id,n.businessObject),r.updateProperties(i,{id:n.id})}))}lh.$inject=["injector","modeling"],e(lh,Do),e(uh,Do),uh.$inject=["eventBus","modeling"],e(hh,Do),hh.$inject=["eventBus","bpmnRules","modeling"],fh.$inject=["eventBus","modeling"],e(fh,Do),e(mh,Do),mh.$inject=["eventBus","modeling","bpmnRules","injector"],e(vh,Do),vh.prototype._replaceElements=function(e,t){var n=this._elementRegistry,i=this._bpmnReplace,r=this._selection;g(t,(function(t){var r={type:t.newElementType},o=n.get(t.oldElementId),a=e.indexOf(o);e[a]=i.replaceElement(o,r,{select:!1})})),t&&r.select(e)},vh.$inject=["bpmnReplace","bpmnRules","elementRegistry","injector","modeling","selection"];var yh={width:140,height:120},gh={width:300,height:60},bh={width:60,height:300},_h={width:300,height:150},xh={width:150,height:300},wh={width:140,height:120},Eh={width:50,height:30};function Sh(e){e.on("resize.start",1500,(function(e){var t=e.context,n=t.shape,i=t.direction,r=t.balanced;(vr(n,"bpmn:Lane")||vr(n,"bpmn:Participant"))&&(t.resizeConstraints=function(e,t,n){var i=mu(e),r=!0,o=!0,a=du(i,[i]),s=un(e),c={},p={},l=Lr(e),u=l?gh:bh;/n/.test(t)?p.top=s.bottom-u.height:/e/.test(t)?p.right=s.left+u.width:/s/.test(t)?p.bottom=s.top+u.height:/w/.test(t)&&(p.left=s.right-u.width);a.forEach((function(e){var i=un(e);l?(i.top<s.top-10&&(r=!1),i.bottom>s.bottom+10&&(o=!1)):(i.left<s.left-10&&(r=!1),i.right>s.right+10&&(o=!1)),/n/.test(t)&&(n&&Ch(s.top-i.bottom)<10&&Mh(c,"top",i.top+u.height),Ch(s.top-i.top)<5&&Ah(p,"top",i.bottom-u.height)),/e/.test(t)&&(n&&Ch(s.right-i.left)<10&&Ah(c,"right",i.right-u.width),Ch(s.right-i.right)<5&&Mh(p,"right",i.left+u.width)),/s/.test(t)&&(n&&Ch(s.bottom-i.top)<10&&Ah(c,"bottom",i.bottom-u.height),Ch(s.bottom-i.bottom)<5&&Mh(p,"bottom",i.top+u.height)),/w/.test(t)&&(n&&Ch(s.left-i.right)<10&&Mh(c,"left",i.left+u.width),Ch(s.left-i.left)<5&&Ah(p,"left",i.right-u.width))}));var h=i.children.filter((function(e){return!e.hidden&&!e.waypoints&&(vr(e,"bpmn:FlowElement")||vr(e,"bpmn:Artifact"))})),d=l?Th:Dh;return h.forEach((function(e){var n=un(e);!/n/.test(t)||l&&!r||Ah(p,"top",n.top-d.top),/e/.test(t)&&(l||o)&&Mh(p,"right",n.right+d.right),!/s/.test(t)||l&&!o||Mh(p,"bottom",n.bottom+d.bottom),/w/.test(t)&&(l||r)&&Ah(p,"left",n.left-d.left)})),{min:p,max:c}}(n,i,r)),vr(n,"bpmn:SubProcess")&&Or(n)&&(t.minDimensions=wh),vr(n,"bpmn:TextAnnotation")&&(t.minDimensions=Eh)}))}Sh.$inject=["eventBus"];var Ch=Math.abs,kh=Math.min,Rh=Math.max;function Ph(e,t,n,i){var r=e[t];e[t]=void 0===r?n:i(n,r)}function Ah(e,t,n){return Ph(e,t,n,kh)}function Mh(e,t,n){return Ph(e,t,n,Rh)}var Th={top:20,left:50,right:20,bottom:20},Dh={top:50,left:20,right:20,bottom:20};function Bh(e,t){e.on("resize.start",1501,(function(e){var t=e.context,n=t.shape;(vr(n,"bpmn:Lane")||vr(n,"bpmn:Participant"))&&(t.balanced=!ca(e))})),e.on("resize.end",1001,(function(e){var n=e.context,i=n.shape,r=n.canExecute,o=n.newBounds;if(vr(i,"bpmn:Lane")||vr(i,"bpmn:Participant"))return r&&(o=pn(o),t.resizeLane(i,o,n.balanced)),!1}))}Bh.$inject=["eventBus","modeling"];function Nh(e,t,n,i,r){function o(e){return yr(e,["bpmn:ReceiveTask","bpmn:SendTask"])||function(e,t){p(t)||(t=[t]);return w(t,(function(t){return Ir(e,t)}))}(e,["bpmn:ErrorEventDefinition","bpmn:EscalationEventDefinition","bpmn:MessageEventDefinition","bpmn:SignalEventDefinition"])}function a(t){return!!m(e.getDefinitions().get("rootElements"),M({id:t.id}))}function s(e){return vr(e,"bpmn:ErrorEventDefinition")?"errorRef":vr(e,"bpmn:EscalationEventDefinition")?"escalationRef":vr(e,"bpmn:MessageEventDefinition")?"messageRef":vr(e,"bpmn:SignalEventDefinition")?"signalRef":void 0}function c(e){if(yr(e,["bpmn:ReceiveTask","bpmn:SendTask"]))return e.get("messageRef");var t=e.get("eventDefinitions")[0];return t.get(s(t))}n.invoke(Do,this),this.executed(["shape.create","element.updateProperties","element.updateModdleProperties"],(function(t){var n=t.shape||t.element;if(o(n)){var i=c(gr(n));i&&!a(i)&&(_t(e.getDefinitions().get("rootElements"),i),t.addedRootElement=i)}}),!0),this.reverted(["shape.create","element.updateProperties","element.updateModdleProperties"],(function(t){var n=t.addedRootElement;n&&bt(e.getDefinitions().get("rootElements"),n)}),!0),t.on("copyPaste.copyElement",(function(e){var t=e.descriptor,n=e.element;if(!n.labelTarget&&o(n)){var i=c(gr(n));i&&(t.referencedRootElement=i)}})),t.on("copyPaste.pasteElement",500,(function(e){var t=e.descriptor,n=t.businessObject,o=t.referencedRootElement;o&&(a(o)||(o=i.copyElement(o,r.create(o.$type))),function(e,t){if(yr(e,["bpmn:ReceiveTask","bpmn:SendTask"]))return e.set("messageRef",t);var n=e.get("eventDefinitions")[0];n.set(s(n),t)}(n,o),delete t.referencedRootElement)}))}Nh.$inject=["bpmnjs","eventBus","injector","moddleCopy","bpmnFactory"],e(Nh,Do);var jh=Math.max;function Oh(e){e.on("spaceTool.getMinDimensions",(function(e){var t=e.shapes,n=e.axis,i=e.start,r={};return g(t,(function(e){var t=e.id;vr(e,"bpmn:Participant")&&(r[t]=function(e,t,n){var i=Lr(e);if(r=e,!fu(r).length)return i?_h:xh;var r;var o=function(e){return"x"===e}(t),a={};a=o?i?_h:{width:$h(e,n,o),height:xh.height}:i?{width:_h.width,height:Lh(e,n,o)}:xh;return a}(e,n,i)),vr(e,"bpmn:Lane")&&(r[t]=Lr(e)?gh:bh),vr(e,"bpmn:SubProcess")&&Or(e)&&(r[t]=wh),vr(e,"bpmn:TextAnnotation")&&(r[t]=Eh),vr(e,"bpmn:Group")&&(r[t]=yh)})),r}))}function Lh(e,t,n){var i;return i=function(e,t,n){var i,r=fu(e);return i=Ih(r,t,n),e.height-i.height+gh.height}(e,t,n),jh(_h.height,i)}function $h(e,t,n){var i;return i=function(e,t,n){var i,r=fu(e);return i=Ih(r,t,n),e.width-i.width+bh.width}(e,t,n),jh(xh.width,i)}function Ih(e,t,n){var i,r,o;for(i=0;i<e.length;i++)if(r=e[i],!n&&t>=r.y&&t<=r.y+r.height||n&&t>=r.x&&t<=r.x+r.width)return(o=fu(r)).length?Ih(o,t,n):r}Oh.$inject=["eventBus"];var Fh=180,zh=160;function Hh(e,t,n,i,r,o,a){Do.call(this,t),this._canvas=e,this._eventBus=t,this._modeling=n,this._elementFactory=i,this._bpmnFactory=r,this._bpmnjs=o,this._elementRegistry=a;var s=this;function c(e){return vr(e,"bpmn:SubProcess")&&!Or(e)}function p(t){var n=t.shape,i=t.newRootElement,r=gr(n);i=s._addDiagram(i||r),t.newRootElement=e.addRootElement(i)}function l(t){var n=gr(t.shape);s._removeDiagram(n);var i=t.newRootElement=a.get(zo(n));e.removeRootElement(i)}this.executed("shape.create",(function(e){c(e.shape)&&p(e)}),!0),this.postExecuted("shape.create",(function(e){var t=e.shape,n=e.newRootElement;n&&t.children&&(s._showRecursively(t.children),s._moveChildrenToShape(t,n))}),!0),this.reverted("shape.create",(function(e){c(e.shape)&&l(e)}),!0),this.preExecuted("shape.delete",(function(e){var t=e.shape;if(c(t)){var i=a.get(zo(t));i&&n.removeElements(i.children.slice())}}),!0),this.executed("shape.delete",(function(e){c(e.shape)&&l(e)}),!0),this.reverted("shape.delete",(function(e){c(e.shape)&&p(e)}),!0),this.preExecuted("shape.replace",(function(t){var n=t.oldShape,i=t.newShape;c(n)&&c(i)&&(t.oldRoot=e.removeRootElement(zo(n)))}),!0),this.postExecuted("shape.replace",(function(t){var i=t.newShape,r=t.oldRoot,o=e.findRoot(zo(i));if(r&&o){var a=r.children;n.moveElements(a,{x:0,y:0},o)}}),!0),this.executed("element.updateProperties",(function(e){var t=e.element;if(vr(t,"bpmn:SubProcess")){var n=e.properties,i=e.oldProperties.id,r=n.id;if(i!==r){if(Vo(t))return a.updateId(t,Ho(r)),void a.updateId(i,r);a.get(Ho(i))&&a.updateId(Ho(i),Ho(r))}}}),!0),this.reverted("element.updateProperties",(function(e){var t=e.element;if(vr(t,"bpmn:SubProcess")){var n=e.properties,i=e.oldProperties.id,r=n.id;if(i!==r){if(Vo(t))return a.updateId(t,Ho(i)),void a.updateId(r,i);var o=a.get(Ho(r));o&&a.updateId(o,Ho(i))}}}),!0),t.on("element.changed",(function(e){var n=e.element;if(Vo(n)){var i=n,r=a.get(Fo(i));r&&r!==i&&t.fire("element.changed",{element:r})}})),this.executed("shape.toggleCollapse",400,(function(e){var t=e.shape;vr(t,"bpmn:SubProcess")&&(Or(t)?l(e):(p(e),s._showRecursively(t.children)))}),!0),this.reverted("shape.toggleCollapse",400,(function(e){var t=e.shape;vr(t,"bpmn:SubProcess")&&(Or(t)?l(e):(p(e),s._showRecursively(t.children)))}),!0),this.postExecuted("shape.toggleCollapse",600,(function(e){var t=e.shape;if(vr(t,"bpmn:SubProcess")){var n=e.newRootElement;n&&(Or(t)?s._moveChildrenToShape(n,t):s._moveChildrenToShape(t,n))}}),!0),t.on("copyPaste.createTree",(function(e){var t=e.element,n=e.children;if(c(t)){var i=zo(t),r=a.get(i);r&&n.push.apply(n,r.children)}})),t.on("copyPaste.copyElement",(function(e){var t=e.descriptor,n=e.element,i=e.elements,r=n.parent;if(vr(br(r),"bpmndi:BPMNPlane")){var o=Fo(r),a=m(i,(function(e){return e.id===o}));a&&(t.parent=a.id)}})),t.on("copyPaste.pasteElement",(function(e){var t=e.descriptor;t.parent&&(c(t.parent)||t.parent.hidden)&&(t.hidden=!0)}))}function Vh(e,t){e.invoke(Do,this),this.postExecuted("shape.replace",(function(e){var n=e.context.oldShape,i=e.context.newShape;if(vr(i,"bpmn:SubProcess")&&(vr(n,"bpmn:Task")||vr(n,"bpmn:CallActivity"))&&Or(i)){var r,o={x:(r=i).x+r.width/6,y:r.y+r.height/2};t.createShape({type:"bpmn:StartEvent"},o,i)}}))}function Gh(e){Do.call(this,e),this.preExecute("connection.create",(function(e){const{target:t}=e;vr(t,"bpmn:TextAnnotation")&&(e.parent=t.parent)}),!0),this.preExecute(["shape.create","shape.resize","elements.move"],(function(e){const t=e.shapes||[e.shape];1===t.length&&vr(t[0],"bpmn:TextAnnotation")&&(e.hints=e.hints||{},e.hints.autoResize=!1)}),!0)}function Wh(e,t){Do.call(this,e),this.postExecuted("shape.toggleCollapse",1500,(function(e){var n=e.shape;if(!Or(n)){var i=ut(n);i.forEach((function(e){var t=e.incoming.slice(),n=e.outgoing.slice();g(t,(function(e){r(e,!0)})),g(n,(function(e){r(e,!1)}))}))}function r(e,r){-1!==i.indexOf(e.source)&&-1!==i.indexOf(e.target)||(r?t.reconnectEnd(e,n,fn(n)):t.reconnectStart(e,n,fn(n)))}}),!0)}e(Hh,Do),Hh.prototype._moveChildrenToShape=function(e,t){var n,i=this._modeling,r=e.children;if(r){var o=(r=r.concat(r.reduce((function(t,n){return n.label&&n.label.parent!==e?t.concat(n.label):t}),[]))).filter((function(e){return!e.hidden}));if(o.length){var a=ht(o);if(t.x){var s=fn(t),c=fn(a);n={x:s.x-c.x,y:s.y-c.y}}else n={x:Fh-a.x,y:zh-a.y};i.moveElements(r,n,t,{autoResize:!1})}else i.moveElements(r,{x:0,y:0},t,{autoResize:!1})}},Hh.prototype._showRecursively=function(e,t){var n=this,i=[];return e.forEach((function(e){e.hidden=!!t,i=i.concat(e),e.children&&(i=i.concat(n._showRecursively(e.children,e.collapsed||t)))})),i},Hh.prototype._addDiagram=function(e){var t=this._bpmnjs.getDefinitions().diagrams;return e.businessObject||(e=this._createNewDiagram(e)),t.push(e.di.$parent),e},Hh.prototype._createNewDiagram=function(e){var t=this._bpmnFactory,n=this._elementFactory,i=t.create("bpmndi:BPMNPlane",{bpmnElement:e}),r=t.create("bpmndi:BPMNDiagram",{plane:i});return i.$parent=r,n.createRoot({id:zo(e),type:e.$type,di:i,businessObject:e,collapsed:!0})},Hh.prototype._removeDiagram=function(e){var t=this._bpmnjs.getDefinitions().diagrams,n=m(t,(function(t){return t.plane.bpmnElement.id===e.id}));return t.splice(t.indexOf(n),1),n},Hh.$inject=["canvas","eventBus","modeling","elementFactory","bpmnFactory","bpmnjs","elementRegistry"],Vh.$inject=["injector","modeling"],e(Vh,Do),e(Gh,Do),Gh.$inject=["eventBus"],e(Wh,Do),Wh.$inject=["eventBus","modeling"];function Uh(e,t,n){Do.call(this,e),this.executed(["shape.toggleCollapse"],500,(function(e){var t,n=e.context.shape;vr(n,"bpmn:SubProcess")&&(n.collapsed?br(n).isExpanded=!1:((t=n.children).length&&t.forEach((function(e){"label"!==e.type||e.businessObject.name||(e.hidden=!0)})),br(n).isExpanded=!0))})),this.reverted(["shape.toggleCollapse"],500,(function(e){var t=e.context.shape;t.collapsed?br(t).isExpanded=!1:br(t).isExpanded=!0})),this.postExecuted(["shape.toggleCollapse"],500,(function(e){var i,r=e.context.shape,o=t.getDefaultSize(r);i=r.collapsed?function(e,t){return{x:e.x+(e.width-t.width)/2,y:e.y+(e.height-t.height)/2,width:t.width,height:t.height}}(r,o):function(e,t){var n,i,r,o=e.children,a=t;return n=(r=o,r.filter((function(e){return!e.hidden}))).concat([e]),(i=pu(n))?(a.width=Math.max(i.width,a.width),a.height=Math.max(i.height,a.height),a.x=i.x+(i.width-a.width)/2,a.y=i.y+(i.height-a.height)/2):(a.x=e.x+(e.width-a.width)/2,a.y=e.y+(e.height-a.height)/2),a}(r,o),n.resizeShape(r,i,null,{autoResize:!r.collapsed&&"nwse"})}))}function qh(e,t,n,i){t.invoke(Do,this),this.preExecute("shape.delete",(function(e){var t=e.context.shape,r=t.businessObject;cn(t)||(vr(t,"bpmn:Participant")&&Or(t)&&n.ids.unclaim(r.processRef.id),i.unclaimId(r.id,r))})),this.preExecute("connection.delete",(function(e){var t=e.context.connection.businessObject;i.unclaimId(t.id,t)})),this.preExecute("canvas.updateRoot",(function(){var t=e.getRootElement(),i=t.businessObject;vr(t,"bpmn:Collaboration")&&n.ids.unclaim(i.id)}))}function Kh(e,t){Do.call(this,e),this.preExecute("connection.delete",(function(e){var n=e.context.connection,i=n.source;(function(e,t){if(!vr(e,"bpmn:SequenceFlow"))return!1;var n=gr(t),i=gr(e);return n.get("default")===i})(n,i)&&t.updateProperties(i,{default:null})}))}e(Uh,Do),Uh.$inject=["eventBus","elementFactory","modeling"],e(qh,Do),qh.$inject=["canvas","injector","moddle","modeling"],e(Kh,Do),Kh.$inject=["eventBus","modeling"];function Yh(e,t){var n;function i(){if(!n)throw new Error("out of bounds release");return n}Do.call(this,e);var r=["spaceTool","lane.add","lane.resize","lane.split","elements.create","elements.delete","elements.move","shape.create","shape.delete","shape.move","shape.resize"];this.preExecute(r,5e3,(function(e){(n=n||new Xh).enter()})),this.postExecuted(r,500,(function(e){!function(){if(!n)throw new Error("out of bounds release");var e=n.leave();e&&(t.updateLaneRefs(n.flowNodes,n.lanes),n=null)}()})),this.preExecute(["shape.create","shape.move","shape.delete","shape.resize"],(function(e){var t=e.context.shape,n=i();t.labelTarget||(vr(t,"bpmn:Lane")&&n.addLane(t),vr(t,"bpmn:FlowNode")&&n.addFlowNode(t))}))}function Xh(){this.flowNodes=[],this.lanes=[],this.counter=0,this.addLane=function(e){this.lanes.push(e)},this.addFlowNode=function(e){this.flowNodes.push(e)},this.enter=function(){this.counter++},this.leave=function(){return this.counter--,!this.counter}}function Zh(e,t){Do.call(this,e),this.postExecuted("elements.create",(function(e){const n=e.context.elements;for(const e of n)Qh(e)&&!Jh(e)&&t.updateProperties(e,{isForCompensation:void 0})}))}function Qh(e){const t=gr(e);return t&&t.isForCompensation}function Jh(e){return e.incoming.filter((e=>function(e){return e&&vr(e,"bpmn:BoundaryEvent")&&Ir(e,"bpmn:CompensateEventDefinition")}(e.source))).length>0}Yh.$inject=["eventBus","modeling"],e(Yh,Do),e(Zh,Do),Zh.$inject=["eventBus","modeling"];var ed={__init__:["adaptiveLabelPositioningBehavior","appendBehavior","associationBehavior","attachEventBehavior","boundaryEventBehavior","compensateBoundaryEventBehaviour","createBehavior","createDataObjectBehavior","createParticipantBehavior","dataInputAssociationBehavior","dataStoreBehavior","deleteLaneBehavior","detachEventBehavior","dropOnFlowBehavior","eventBasedGatewayBehavior","fixHoverBehavior","groupBehavior","importDockingFix","isHorizontalFix","labelBehavior","layoutConnectionBehavior","messageFlowBehavior","nonInterruptingBehavior","removeElementBehavior","removeEmbeddedLabelBoundsBehavior","removeParticipantBehavior","replaceConnectionBehavior","replaceElementBehaviour","resizeBehavior","resizeLaneBehavior","rootElementReferenceBehavior","spaceToolBehavior","subProcessPlaneBehavior","subProcessStartEventBehavior","textAnnotationBehavior","toggleCollapseConnectionBehaviour","toggleElementCollapseBehaviour","unclaimIdBehavior","updateFlowNodeRefsBehavior","unsetDefaultFlowBehavior","setCompensationActivityAfterPasteBehavior"],adaptiveLabelPositioningBehavior:["type",jl],appendBehavior:["type",Ll],associationBehavior:["type",$l],attachEventBehavior:["type",Il],boundaryEventBehavior:["type",zl],compensateBoundaryEventBehaviour:["type",Hl],createBehavior:["type",Ul],createDataObjectBehavior:["type",ql],createParticipantBehavior:["type",Zl],dataInputAssociationBehavior:["type",Jl],dataStoreBehavior:["type",nu],deleteLaneBehavior:["type",yu],detachEventBehavior:["type",gu],dropOnFlowBehavior:["type",_u],eventBasedGatewayBehavior:["type",Eu],fixHoverBehavior:["type",ku],groupBehavior:["type",Ru],importDockingFix:["type",Au],isHorizontalFix:["type",Tu],labelBehavior:["type",Yu],layoutConnectionBehavior:["type",Zu],messageFlowBehavior:["type",ah],nonInterruptingBehavior:["type",lh],removeElementBehavior:["type",hh],removeEmbeddedLabelBoundsBehavior:["type",uh],removeParticipantBehavior:["type",fh],replaceConnectionBehavior:["type",mh],replaceElementBehaviour:["type",vh],resizeBehavior:["type",Sh],resizeLaneBehavior:["type",Bh],rootElementReferenceBehavior:["type",Nh],spaceToolBehavior:["type",Oh],subProcessPlaneBehavior:["type",Hh],subProcessStartEventBehavior:["type",Vh],textAnnotationBehavior:["type",Gh],toggleCollapseConnectionBehaviour:["type",Wh],toggleElementCollapseBehaviour:["type",Uh],unclaimIdBehavior:["type",qh],unsetDefaultFlowBehavior:["type",Kh],updateFlowNodeRefsBehavior:["type",Yh],setCompensationActivityAfterPasteBehavior:["type",Zh]};function td(e,t){var n=mn(e,t,-15);return"intersect"!==n?n:null}function nd(e){Hc.call(this,e)}function id(e){return!e||cn(e)}function rd(e){do{if(vr(e,"bpmn:Process"))return gr(e);if(vr(e,"bpmn:Participant"))return gr(e).processRef||gr(e)}while(e=e.parent)}function od(e){return vr(e,"bpmn:TextAnnotation")}function ad(e){return vr(e,"bpmn:Group")&&!e.labelTarget}function sd(e){return vr(e,"bpmn:BoundaryEvent")&&ud(e,"bpmn:CompensateEventDefinition")}function cd(e){return gr(e).isForCompensation}function pd(e){for(var t=e;t=t.parent;){if(vr(t,"bpmn:FlowElementsContainer"))return gr(t);if(vr(t,"bpmn:Participant"))return gr(t).processRef}return null}function ld(e,t){return pd(e)===pd(t)}function ud(e,t){return!!m(gr(e).eventDefinitions||[],(function(e){return vr(e,t)}))}function hd(e,t){return(gr(e).eventDefinitions||[]).every((function(e){return vr(e,t)}))}function dd(e,t){var n=function(e){for(var t=[];e;)(e=e.parent)&&t.push(e);return t}(t);return-1!==n.indexOf(e)}function fd(e,t,n){if(id(e)||id(t))return null;if(!vr(n,"bpmn:DataAssociation")){if(Pd(e,t))return{type:"bpmn:MessageFlow"};if(Ad(e,t))return{type:"bpmn:SequenceFlow"}}var i=Md(e,t);return i||(Rd(e,t)?{type:"bpmn:Association",associationDirection:"One"}:!!kd(e,t)&&{type:"bpmn:Association",associationDirection:"None"})}function md(e,t){return!(!cn(e)&&!ad(e))||!(vr(t,"bpmn:Participant")&&!Or(t))&&(vr(e,"bpmn:Participant")?vr(t,"bpmn:Process")||vr(t,"bpmn:Collaboration"):yr(e,["bpmn:DataInput","bpmn:DataOutput"])&&e.parent?t===e.parent:vr(e,"bpmn:Lane")?vr(t,"bpmn:Participant")||vr(t,"bpmn:Lane"):!(vr(e,"bpmn:BoundaryEvent")&&!function(e){return gr(e).cancelActivity&&(gd(e)||bd(e))}(e))&&(vr(e,"bpmn:FlowElement")&&!vr(e,"bpmn:DataStoreReference")?vr(t,"bpmn:FlowElementsContainer")?Or(t):yr(t,["bpmn:Participant","bpmn:Lane"]):vr(e,"bpmn:DataStoreReference")&&vr(t,"bpmn:Collaboration")?w(gr(t).get("participants"),(function(e){return!!e.get("processRef")})):yr(e,["bpmn:Artifact","bpmn:DataAssociation","bpmn:DataStoreReference"])?yr(t,["bpmn:Collaboration","bpmn:Lane","bpmn:Participant","bpmn:Process","bpmn:SubProcess"]):!!vr(e,"bpmn:MessageFlow")&&(vr(t,"bpmn:Collaboration")||e.source.parent==t||e.target.parent==t)))}function vd(e){return vr(e,"bpmn:Lane")}function yd(e){return!!function(e){return!cn(e)&&vr(e,"bpmn:BoundaryEvent")}(e)||(!(!vr(e,"bpmn:IntermediateThrowEvent")||!gd(e))||vr(e,"bpmn:IntermediateCatchEvent")&&bd(e))}function gd(e){var t=gr(e);return t&&!(t.eventDefinitions&&t.eventDefinitions.length)}function bd(e){return _d(e,["bpmn:MessageEventDefinition","bpmn:TimerEventDefinition","bpmn:SignalEventDefinition","bpmn:ConditionalEventDefinition"])}function _d(e,t){return t.some((function(t){return ud(e,t)}))}function xd(e,t,n,i){if(Array.isArray(e)||(e=[e]),1!==e.length)return!1;var r=e[0];return!cn(r)&&(!!yd(r)&&(!$r(t)&&(!(!vr(t,"bpmn:Activity")||cd(t))&&(!(i&&!td(i,t))&&(!function(e){return vr(e,"bpmn:ReceiveTask")&&m(e.incoming,(function(e){return vr(e.source,"bpmn:EventBasedGateway")}))}(t)&&"attach")))))}function wd(e,t,n){if(!t)return!1;var i={replacements:[]};return g(e,(function(e){$r(t)||vr(e,"bpmn:StartEvent")&&"label"!==e.type&&md(e,t)&&(function(e){return e&&!1!==gr(e).isInterrupting}(e)||i.replacements.push({oldElementId:e.id,newElementType:"bpmn:StartEvent"}),(function(e){return Ir(e,"bpmn:ErrorEventDefinition")}(e)||function(e){return Ir(e,"bpmn:EscalationEventDefinition")}(e)||function(e){return Ir(e,"bpmn:CompensateEventDefinition")}(e))&&i.replacements.push({oldElementId:e.id,newElementType:"bpmn:StartEvent"}),_d(e,["bpmn:MessageEventDefinition","bpmn:TimerEventDefinition","bpmn:SignalEventDefinition","bpmn:ConditionalEventDefinition"])&&vr(t,"bpmn:SubProcess")&&i.replacements.push({oldElementId:e.id,newElementType:"bpmn:StartEvent"})),vr(t,"bpmn:Transaction")||ud(e,"bpmn:CancelEventDefinition")&&"label"!==e.type&&(vr(e,"bpmn:EndEvent")&&md(e,t)&&i.replacements.push({oldElementId:e.id,newElementType:"bpmn:EndEvent"}),vr(e,"bpmn:BoundaryEvent")&&xd(e,t,0,n)&&i.replacements.push({oldElementId:e.id,newElementType:"bpmn:BoundaryEvent"}))})),!!i.replacements.length&&i}function Ed(e,t){return!w(e,vd)&&(!t||e.every((function(e){return md(e,t)})))}function Sd(e,t,n,i){return!!t&&(!(!cn(e)&&!ad(e))||!function(e,t){return e===t}(n,t)&&((!n||!dd(n,t))&&(md(e,t)||Td(e,t))))}function Cd(e,t){return vr(e,"bpmn:SubProcess")?Or(e)&&(!t||t.width>=100&&t.height>=80):!!vr(e,"bpmn:Lane")||(!!vr(e,"bpmn:Participant")||(!!od(e)||!!ad(e)))}function kd(e,t){return!dd(t,e)&&!dd(e,t)&&(!!function(e,t){var n=od(e),i=od(t);return(n||i)&&n!==i}(e,t)||!!Md(e,t))}function Rd(e,t){return ld(e,t)&&sd(e)&&vr(t,"bpmn:Activity")&&(n=e,!t.attachers.includes(n))&&!$r(t);var n}function Pd(e,t){return!(Bd(e)&&!Bd(t))&&(vr(n=e,"bpmn:InteractionNode")&&!vr(n,"bpmn:BoundaryEvent")&&(!vr(n,"bpmn:Event")||vr(n,"bpmn:ThrowEvent")&&hd(n,"bpmn:MessageEventDefinition"))&&function(e){return vr(e,"bpmn:InteractionNode")&&!cd(e)&&(!vr(e,"bpmn:Event")||vr(e,"bpmn:CatchEvent")&&hd(e,"bpmn:MessageEventDefinition"))&&!(vr(e,"bpmn:BoundaryEvent")&&!ud(e,"bpmn:MessageEventDefinition"))}(t)&&!function(e,t){return rd(e)===rd(t)}(e,t));var n}function Ad(e,t){return vr(n=e,"bpmn:FlowNode")&&!vr(n,"bpmn:EndEvent")&&!$r(n)&&!(vr(n,"bpmn:IntermediateThrowEvent")&&ud(n,"bpmn:LinkEventDefinition"))&&!sd(n)&&!cd(n)&&function(e){return vr(e,"bpmn:FlowNode")&&!vr(e,"bpmn:StartEvent")&&!vr(e,"bpmn:BoundaryEvent")&&!$r(e)&&!(vr(e,"bpmn:IntermediateCatchEvent")&&ud(e,"bpmn:LinkEventDefinition"))&&!cd(e)}(t)&&ld(e,t)&&!(vr(e,"bpmn:EventBasedGateway")&&!function(e){return vr(e,"bpmn:ReceiveTask")||vr(e,"bpmn:IntermediateCatchEvent")&&(ud(e,"bpmn:MessageEventDefinition")||ud(e,"bpmn:TimerEventDefinition")||ud(e,"bpmn:ConditionalEventDefinition")||ud(e,"bpmn:SignalEventDefinition"))}(t));var n}function Md(e,t){return yr(e,["bpmn:DataObjectReference","bpmn:DataStoreReference"])&&yr(t,["bpmn:Activity","bpmn:ThrowEvent"])?{type:"bpmn:DataInputAssociation"}:!(!yr(t,["bpmn:DataObjectReference","bpmn:DataStoreReference"])||!yr(e,["bpmn:Activity","bpmn:CatchEvent"]))&&{type:"bpmn:DataOutputAssociation"}}function Td(e,t,n){if(!t)return!1;if(Array.isArray(e)){if(1!==e.length)return!1;e=e[0]}return t.source!==e&&t.target!==e&&(yr(t,["bpmn:SequenceFlow","bpmn:MessageFlow"])&&!cn(t)&&vr(e,"bpmn:FlowNode")&&!vr(e,"bpmn:BoundaryEvent")&&md(e,t.parent))}function Dd(e,t){return!!cn(t)||!(vr(t,"bpmn:Lane")&&!function(e,t){return e&&t&&-1!==e.indexOf(t)}(e,t.parent))}function Bd(e){return Jc(e,"bpmn:Process")||Jc(e,"bpmn:Collaboration")}e(nd,Hc),nd.$inject=["eventBus"],nd.prototype.init=function(){this.addRule("connection.start",(function(e){return function(e){if(id(e))return null;return yr(e,["bpmn:FlowNode","bpmn:InteractionNode","bpmn:DataObjectReference","bpmn:DataStoreReference","bpmn:Group","bpmn:TextAnnotation"])}(e.source)})),this.addRule("connection.create",(function(e){var t=e.source,n=e.target,i=e.hints||{},r=i.targetParent;if(i.targetAttach)return!1;r&&(n.parent=r);try{return fd(t,n)}finally{r&&(n.parent=null)}})),this.addRule("connection.reconnect",(function(e){var t=e.connection;return fd(e.source,e.target,t)})),this.addRule("connection.updateWaypoints",(function(e){return{type:e.connection.type}})),this.addRule("shape.resize",(function(e){return Cd(e.shape,e.newBounds)})),this.addRule("elements.create",(function(e){var t=e.elements,n=e.position,i=e.target;return!(sn(i)&&!Td(t,i))&&x(t,(function(e){return sn(e)?fd(e.source,e.target,e):e.host?xd(e,e.host,null,n):Sd(e,i,null)}))})),this.addRule("elements.move",(function(e){var t=e.target,n=e.shapes,i=e.position;return xd(n,t,null,i)||wd(n,t,i)||Ed(n,t)||Td(n,t)})),this.addRule("shape.create",(function(e){return Sd(e.shape,e.target,e.source,e.position)})),this.addRule("shape.attach",(function(e){return xd(e.shape,e.target,null,e.position)})),this.addRule("element.copy",(function(e){var t=e.element;return Dd(e.elements,t)}))},nd.prototype.canConnectMessageFlow=Pd,nd.prototype.canConnectSequenceFlow=Ad,nd.prototype.canConnectDataAssociation=Md,nd.prototype.canConnectAssociation=kd,nd.prototype.canConnectCompensationAssociation=Rd,nd.prototype.canMove=Ed,nd.prototype.canAttach=xd,nd.prototype.canReplace=wd,nd.prototype.canDrop=md,nd.prototype.canInsert=Td,nd.prototype.canCreate=Sd,nd.prototype.canConnect=fd,nd.prototype.canResize=Cd,nd.prototype.canCopy=Dd;var Nd={__depends__:[xp],__init__:["bpmnRules"],bpmnRules:["type",nd]};function jd(e,t){e.on("saveXML.start",2e3,(function(){g(t.getRootElements(),(function(e){var t,n=br(e);t=E(y(ut([e],!1),(function(t){return t!==e&&!t.labelTarget})),br),n.set("planeElement",t)}))}))}jd.$inject=["eventBus","canvas"];var Od={__init__:["bpmnDiOrdering"],bpmnDiOrdering:["type",jd]};function Ld(e){Do.call(this,e);var t=this;this.preExecute(["shape.create","connection.create"],(function(e){var n=e.context,i=n.shape||n.connection,r=n.parent,o=t.getOrdering(i,r);o&&(void 0!==o.parent&&(n.parent=o.parent),n.parentIndex=o.index)})),this.preExecute(["shape.move","connection.move"],(function(e){var n=e.context,i=n.shape||n.connection,r=n.newParent||i.parent,o=t.getOrdering(i,r);o&&(void 0!==o.parent&&(n.newParent=o.parent),n.newParentIndex=o.index)}))}function $d(e,t){Ld.call(this,e);var n=[{type:"bpmn:SubProcess",order:{level:6}},{type:"bpmn:SequenceFlow",order:{level:9,containers:["bpmn:Participant","bpmn:FlowElementsContainer"]}},{type:"bpmn:DataAssociation",order:{level:9,containers:["bpmn:Collaboration","bpmn:FlowElementsContainer"]}},{type:"bpmn:TextAnnotation",order:{level:9}},{type:"bpmn:MessageFlow",order:{level:9,containers:["bpmn:Collaboration"]}},{type:"bpmn:Association",order:{level:6,containers:["bpmn:Participant","bpmn:FlowElementsContainer","bpmn:Collaboration"]}},{type:"bpmn:BoundaryEvent",order:{level:8}},{type:"bpmn:Group",order:{level:10,containers:["bpmn:Collaboration","bpmn:FlowElementsContainer"]}},{type:"bpmn:FlowElement",order:{level:5}},{type:"bpmn:Participant",order:{level:-2}},{type:"bpmn:Lane",order:{level:-1}}];function i(e){var t=e.order;if(t||(e.order=t=function(e){if(e.labelTarget)return{level:10};var t=m(n,(function(t){return yr(e,[t.type])}));return t&&t.order||{level:1}}(e)),!t)throw new Error(`no order for <${e.id}>`);return t}this.getOrdering=function(e,n){if(e.labelTarget||vr(e,"bpmn:TextAnnotation"))return{parent:t.findRoot(n)||t.getRootElement(),index:-1};var r=i(e);r.containers&&(n=function(e,t,n){for(var i=t;i&&!yr(i,n);)i=i.parent;if(!i)throw new Error(`no parent for <${e.id}> in <${t&&t.id}>`);return i}(e,n,r.containers));var o=n.children.indexOf(e),a=v(n.children,(function(t){return!(!e.labelTarget&&t.labelTarget)&&r.level<i(t).level}));return-1!==a&&-1!==o&&o<a&&(a-=1),{index:a,parent:n}}}Ld.prototype.getOrdering=function(e,t){return null},e(Ld,Do),$d.$inject=["eventBus","canvas"],e($d,Ld);var Id={__init__:["bpmnOrderingProvider"],bpmnOrderingProvider:["type",$d]};function Fd(){}Fd.prototype.get=function(){return this._data},Fd.prototype.set=function(e){this._data=e},Fd.prototype.clear=function(){var e=this._data;return delete this._data,e},Fd.prototype.isEmpty=function(){return!this._data};var zd={clipboard:["type",Fd]},Hd="drop-ok",Vd="drop-not-ok",Gd="attach-ok",Wd="new-parent",Ud="create";function qd(e,t,n,i,r){function o(t,n){[Gd,Hd,Vd,Wd].forEach((function(i){i===n?e.addMarker(t,i):e.removeMarker(t,i)}))}function a(){var e=t.context();e&&e.prefix===Ud&&t.cancel()}n.on(["create.move","create.hover"],(function(e){var t=e.context,n=t.elements,i=e.hover,a=t.source,s=t.hints||{};if(!i)return t.canExecute=!1,void(t.target=null);Kd(e);var c={x:e.x,y:e.y},p=t.canExecute=i&&function(e,t,n,i,o){if(!t)return!1;var a=m(e=y(e,(function(t){var n=t.labelTarget;return!(t.parent||cn(t)&&-1!==e.indexOf(n))})),(function(e){return!sn(e)})),s=!1,c=!1,p=!1;Yd(e)&&(s=r.allowed("shape.attach",{position:n,shape:a,target:t})),s||(p=Yd(e)?r.allowed("shape.create",{position:n,shape:a,source:i,target:t}):r.allowed("elements.create",{elements:e,position:n,target:t}));var l=o.connectionTarget;return p||s?(a&&i&&(c=r.allowed("connection.create",{source:l===i?a:i,target:l===i?i:a,hints:{targetParent:t,targetAttach:s}})),{attach:s,connect:c}):(null===p||null===s)&&null}(n,i,c,a,s);i&&null!==p&&(t.target=i,p&&p.attach?o(i,Gd):o(i,p?Wd:Vd))})),n.on(["create.end","create.out","create.cleanup"],(function(e){var t=e.hover;t&&o(t,null)})),n.on("create.end",(function(e){var t=e.context,n=t.source,r=t.shape,o=t.elements,a=t.target,s=t.canExecute,c=s&&s.attach,p=s&&s.connect,l=t.hints||{};if(!1===s||!a)return!1;Kd(e);var u={x:e.x,y:e.y};r=p?i.appendShape(n,r,u,a,{attach:c,connection:!0===p?{}:p,connectionTarget:l.connectionTarget}):m(o=i.createElements(o,u,a,L({},l,{attach:c})),(function(e){return!sn(e)})),L(t,{elements:o,shape:r}),L(e,{elements:o,shape:r})})),n.on("create.init",(function(){n.on("elements.changed",a),n.once(["create.cancel","create.end"],2e3,(function(){n.off("elements.changed",a)}))})),this.start=function(e,n,i){p(n)||(n=[n]);var r=m(n,(function(e){return!sn(e)}));if(r){i=L({elements:n,hints:{},shape:r},i||{}),g(n,(function(e){u(e.x)||(e.x=0),u(e.y)||(e.y=0)}));var o=ht(y(n,(function(e){return!e.hidden})));g(n,(function(e){sn(e)&&(e.waypoints=E(e.waypoints,(function(e){return{x:e.x-o.x-o.width/2,y:e.y-o.y-o.height/2}}))),L(e,{x:e.x-o.x-o.width/2,y:e.y-o.y-o.height/2})})),t.init(e,Ud,{cursor:"grabbing",autoActivate:!0,data:{shape:r,elements:n,context:i}})}}}function Kd(e){var t=e.context.createConstraints;t&&(t.left&&(e.x=Math.max(e.x,t.left)),t.right&&(e.x=Math.min(e.x,t.right)),t.top&&(e.y=Math.max(e.y,t.top)),t.bottom&&(e.y=Math.min(e.y,t.bottom)))}function Yd(e){return e&&1===e.length&&!sn(e[0])}qd.$inject=["canvas","dragging","eventBus","modeling","rules"];function Xd(e,t,n,i,r){t.on("create.move",750,(function(t){var o=t.hover,a=t.context,s=a.elements,c=a.dragGroup;c||(c=a.dragGroup=function(e){var t=Ae("g");_e(t,r.cls("djs-drag-group",["no-events"]));var o=Ae("g");return e.forEach((function(e){var r;e.hidden||(e.waypoints?(r=n._createContainer("connection",o),n.drawConnection(Vn(r),e)):(r=n._createContainer("shape",o),n.drawShape(Vn(r),e),Wn(r,e.x,e.y)),i.addDragger(e,t,r))})),t}(s)),o?(c.parentNode||ye(e.getActiveLayer(),c),Wn(c,t.x,t.y)):Fe(c)})),t.on("create.cleanup",(function(e){var t=e.context.dragGroup;t&&Fe(t)}))}Xd.$inject=["canvas","eventBus","graphicsFactory","previewSupport","styles"];var Zd={__depends__:[vp,Al,xp,_a],__init__:["create","createPreview"],create:["type",qd],createPreview:["type",Xd]};function Qd(e){var t=this;function n(e){t._lastMoveEvent=e}this._lastMoveEvent=null,e.on("canvas.init",(function(e){(t._svg=e.svg).addEventListener("mousemove",n)})),e.on("canvas.destroy",(function(){t._lastMouseEvent=null,t._svg.removeEventListener("mousemove",n)}))}Qd.$inject=["eventBus"],Qd.prototype.getLastMoveEvent=function(){return this._lastMoveEvent||function(e,t){var n=document.createEvent("MouseEvent"),i=e,r=t,o=e,a=t;n.initMouseEvent&&n.initMouseEvent("mousemove",!0,!0,window,0,i,r,o,a,!1,!1,!1,!1,0,null);return n}(0,0)};var Jd={__init__:["mouse"],mouse:["type",Qd]};function ef(e,t,n,i,r,o,a,s){this._canvas=e,this._create=t,this._clipboard=n,this._elementFactory=i,this._eventBus=r,this._modeling=o,this._mouse=a,this._rules=s,r.on("copyPaste.copyElement",(function(e){var t=e.descriptor,n=e.element,i=e.elements;t.priority=1,t.id=n.id;var r=m(i,(function(e){return e===n.parent}));r&&(t.parent=n.parent.id),function(e){return!!e.host}(n)&&(t.priority=2,t.host=n.host.id),sn(n)&&(t.priority=3,t.source=n.source.id,t.target=n.target.id,t.waypoints=function(e){return E(e.waypoints,(function(e){return(e=tf(e)).original&&(e.original=tf(e.original)),e}))}(n)),cn(n)&&(t.priority=4,t.labelTarget=n.labelTarget.id),g(["x","y","width","height"],(function(e){u(n[e])&&(t[e]=n[e])})),t.hidden=n.hidden,t.collapsed=n.collapsed})),r.on("copyPaste.pasteElements",(function(e){L(e.hints,{createElementsBehavior:!1})}))}function tf(e){return L({},e)}function nf(e,t){var n=t.indexOf(e);return-1===n?t:t.splice(n,1)}ef.$inject=["canvas","create","clipboard","elementFactory","eventBus","modeling","mouse","rules"],ef.prototype.copy=function(e){var t,n;return p(e)||(e=e?[e]:[]),n=!1===(t=this._eventBus.fire("copyPaste.canCopyElements",{elements:e}))?{}:this.createTree(p(t)?t:e),this._clipboard.set(n),this._eventBus.fire("copyPaste.elementsCopied",{elements:e,tree:n}),n},ef.prototype.paste=function(e){var t=this._clipboard.get();if(!this._clipboard.isEmpty()){var n=e&&e.hints||{};this._eventBus.fire("copyPaste.pasteElements",{hints:n});var i=this._createElements(t);if(e&&e.element&&e.point)return this._paste(i,e.element,e.point,n);this._create.start(this._mouse.getLastMoveEvent(),i,{hints:n||{}})}},ef.prototype._paste=function(e,t,n,i){g(e,(function(e){u(e.x)||(e.x=0),u(e.y)||(e.y=0)}));var r=ht(e);return g(e,(function(e){sn(e)&&(e.waypoints=E(e.waypoints,(function(e){return{x:e.x-r.x-r.width/2,y:e.y-r.y-r.height/2}}))),L(e,{x:e.x-r.x-r.width/2,y:e.y-r.y-r.height/2})})),this._modeling.createElements(e,n,t,L({},i))},ef.prototype._createElements=function(e){var t=this,n=this._eventBus,i={},r=[];return g(e,(function(e,o){g(e=A(e,"priority"),(function(e){var o,a=L({},I(e,["priority"]));return i[e.parent]?a.parent=i[e.parent]:delete a.parent,n.fire("copyPaste.pasteElement",{cache:i,descriptor:a}),sn(a)?(a.source=i[e.source],a.target=i[e.target],o=i[e.id]=t.createConnection(a),void r.push(o)):cn(a)?(a.labelTarget=i[a.labelTarget],o=i[e.id]=t.createLabel(a),void r.push(o)):(a.host&&(a.host=i[a.host]),o=i[e.id]=t.createShape(a),void r.push(o))}))})),r},ef.prototype.createConnection=function(e){return this._elementFactory.createConnection(I(e,["id"]))},ef.prototype.createLabel=function(e){return this._elementFactory.createLabel(I(e,["id"]))},ef.prototype.createShape=function(e){return this._elementFactory.createShape(I(e,["id"]))},ef.prototype.hasRelations=function(e,t){var n,i;return!(sn(e)&&(n=m(t,M({id:e.source.id})),i=m(t,M({id:e.target.id})),!n||!i))&&!(cn(e)&&!m(t,M({id:e.labelTarget.id})))},ef.prototype.createTree=function(e){var t=this._rules,n=this,i={},r=[];function o(e,t){var n=m(r,(function(t){return e===t.element}));n?n.depth<t&&(r=function(e,t){var n=t.indexOf(e);-1!==n&&t.splice(n,1);return t}(n,r),r.push({element:n.element,depth:t})):r.push({element:e,depth:t})}return lt(st(e),(function(e,t,i){if(!cn(e)){g(e.labels,(function(e){o(e,i)})),g([e.attachers,e.incoming,e.outgoing],(function(e){e&&e.length&&g(e,(function(e){g(e.labels,(function(e){o(e,i)})),o(e,i)}))})),o(e,i);var r=[];return e.children&&(r=e.children.slice()),n._eventBus.fire("copyPaste.createTree",{element:e,children:r}),r}})),e=E(r,(function(e){return e.element})),r=E(r,(function(t){return t.descriptor={},n._eventBus.fire("copyPaste.copyElement",{descriptor:t.descriptor,element:t.element,elements:e}),t})),r=A(r,(function(e){return e.descriptor.priority})),e=E(r,(function(e){return e.element})),g(r,(function(r){var o=r.depth;n.hasRelations(r.element,e)?!function(e,n){return t.allowed("element.copy",{element:e,elements:n})}(r.element,e)?nf(r.element,e):(i[o]||(i[o]=[]),i[o].push(r.descriptor)):nf(r.element,e)})),i};var rf={__depends__:[zd,Zd,Jd,xp],__init__:["copyPaste"],copyPaste:["type",ef]};function of(e,t,n){p(n)||(n=[n]),g(n,(function(n){a(e[n])||(t[n]=e[n])}))}function af(e,t,n){function i(t,i){var r=e.create(t.$type);return n.copyElement(t,r,null,i)}t.on("copyPaste.copyElement",750,(function(e){var t=e.descriptor,n=e.element,r=gr(n);if(cn(n))return t;var o=t.businessObject=i(r,!0),a=t.di=i(br(n),!0);a.bpmnElement=o,of(o,t,"name"),of(a,t,"isExpanded"),r.default&&(t.default=r.default.id)}));var r="-bpmn-js-refs";t.on("copyPaste.pasteElement",(function(e){var t=e.cache,n=e.descriptor,r=n.businessObject,o=n.di;if(cn(n))return n.businessObject=gr(t[n.labelTarget]),void(n.di=br(t[n.labelTarget]));r=n.businessObject=i(r),(o=n.di=i(o)).bpmnElement=r,of(n,r,["isExpanded","name"]),n.type=r.$type})),t.on("copyPaste.copyElement",750,(function(e){var t=e.descriptor,n=e.element;if(vr(n,"bpmn:Participant")){var r=gr(n);r.processRef&&(t.processRef=i(r.processRef,!0))}})),t.on("copyPaste.pasteElement",(function(e){var t=e.descriptor,n=t.processRef;n&&(t.processRef=i(n))})),t.on("copyPaste.pasteElement",750,(function(e){var t=e.cache;!function(e,t){e[r]=t}(t,function(e,t,n){var i=gr(e);return e.default&&(n[e.default]={element:i,property:"default"}),e.host&&(gr(e).attachedToRef=gr(t[e.host])),I(n,_(n,(function(t,n,r){var o=n.element,a=n.property;return r===e.id&&(o.set(a,i),t.push(e.id)),t}),[]))}(e.descriptor,t,function(e){return e[r]=e[r]||{}}(t)))}))}af.$inject=["bpmnFactory","eventBus","moddleCopy"];var sf=["artifacts","dataInputAssociations","dataOutputAssociations","default","flowElements","lanes","incoming","outgoing","categoryValue"];function cf(e,t,n){this._bpmnFactory=t,this._eventBus=e,this._moddle=n,e.on("moddleCopy.canCopyProperties",(function(e){var t=e.propertyNames;if(t&&t.length)return A(t,(function(e){return"extensionElements"===e}))})),e.on("moddleCopy.canCopyProperty",(function(e){var t=e.parent,n=l(t)&&t.$descriptor,i=e.propertyName;return(!i||-1===sf.indexOf(i))&&(!(i&&n&&!m(n.properties,M({name:i})))&&void 0)})),e.on("moddleCopy.canSetCopiedProperty",(function(e){var t,n,i=e.property;if(n="bpmn:ExtensionElements",(t=i)&&h(t.$instanceOf)&&t.$instanceOf(n)&&(!i.values||!i.values.length))return!1}))}function pf(e,t){return _(e.properties,(function(e,n){return t&&n.default?e:e.concat(n.name)}),[])}cf.$inject=["eventBus","bpmnFactory","moddle"],cf.prototype.copyElement=function(e,t,n,i=!1){var r=this;n&&!p(n)&&(n=[n]),n=n||pf(e.$descriptor);var o=this._eventBus.fire("moddleCopy.canCopyProperties",{propertyNames:n,sourceElement:e,targetElement:t,clone:i});return!1===o||(p(o)&&(n=o),g(n,(function(n){var o;f(e,n)&&(o=e.get(n));var a=r.copyProperty(o,t,n,i);s(a)&&(!1!==r._eventBus.fire("moddleCopy.canSetCopiedProperty",{parent:t,property:a,propertyName:n})&&t.set(n,a))}))),t},cf.prototype.copyProperty=function(e,t,n,i=!1){var r=this,o=this._eventBus.fire("moddleCopy.canCopyProperty",{parent:t,property:e,propertyName:n,clone:i});if(!1!==o){if(o)return l(o)&&o.$type&&!o.$parent&&(o.$parent=t),o;var a=this._moddle.getPropertyDescriptor(t,n);if(!a.isReference){if(a.isId)return e&&this._copyId(e,t,i);if(p(e))return _(e,(function(e,a){return(o=r.copyProperty(a,t,n,i))?e.concat(o):e}),[]);if(l(e)&&e.$type){if(this._moddle.getElementDescriptor(e).isGeneric)return;return(o=r._bpmnFactory.create(e.$type)).$parent=t,o=r.copyElement(e,o,null,i)}return e}}},cf.prototype._copyId=function(e,t,n=!1){return n?e:this._moddle.ids.assigned(e)?void 0:(this._moddle.ids.claim(e,t),e)};var lf={__depends__:[rf],__init__:["bpmnCopyPaste","moddleCopy"],bpmnCopyPaste:["type",af],moddleCopy:["type",cf]},uf=Math.round;function hf(e,t){this._modeling=e,this._eventBus=t}function df(e,t){t.on("replace.end",500,(function(t){const{newElement:n,hints:i={}}=t;!1!==i.select&&e.select(n)}))}hf.$inject=["modeling","eventBus"],hf.prototype.replaceElement=function(e,t,n){if(e.waypoints)return null;var i=this._modeling,r=this._eventBus;r.fire("replace.start",{element:e,attrs:t,hints:n});var o=t.width||e.width,a=t.height||e.height,s=t.x||e.x,c=t.y||e.y,p=uf(s+o/2),l=uf(c+a/2),u=i.replaceShape(e,L({},t,{x:p,y:l,width:o,height:a}),n);return r.fire("replace.end",{element:e,newElement:u,hints:n}),u},df.$inject=["selection","eventBus"];var ff={__init__:["replace","replaceSelectionBehavior"],replaceSelectionBehavior:["type",df],replace:["type",hf]};var mf=["cancelActivity","instantiate","eventGatewayType","triggeredByEvent","isInterrupting"];function vf(e,t,n,i,r,o){this.replaceElement=function(s,c,l){l=l||{};var u=c.type,h=s.businessObject;if(yf(h)&&("bpmn:SubProcess"===u||"bpmn:AdHocSubProcess"===u)&&function(e,t){var n=e&&f(e,"collapsed")?e.collapsed:!Or(e);return n!==(t&&(f(t,"collapsed")||f(t,"isExpanded"))?f(t,"collapsed")?t.collapsed:!t.isExpanded:n)}(s,c))return i.toggleCollapse(s),s;var d=e.create(u),m={type:u,businessObject:d,di:{}};"bpmn:ExclusiveGateway"===u&&(m.di.isMarkerVisible=!0),function(e,t,n){p(n)||(n=[n]),g(n,(function(n){a(e[n])||(t[n]=e[n])}))}(s.di,m.di,["fill","stroke","background-color","border-color","color"]);var v=function(e,t){return e.filter((function(e){return t.includes(e)}))}(pf(h.$descriptor),pf(d.$descriptor,!0));L(d,$(c,mf));var b=y(v,(function(e){return"eventDefinitions"===e?gf(s,c.eventDefinitionType):"loopCharacteristics"===e?!$r(d):!f(d,e)&&(("processRef"!==e||!1!==c.isExpanded)&&("triggeredByEvent"!==e&&("isForCompensation"!==e||!$r(d))))}));if(d=n.copyElement(h,d,b),c.eventDefinitionType&&(gf(d,c.eventDefinitionType)||(m.eventDefinitionType=c.eventDefinitionType,m.eventDefinitionAttrs=c.eventDefinitionAttrs)),vr(h,"bpmn:Activity")){if(yf(h))m.isExpanded=Or(s);else if(c&&f(c,"isExpanded")){m.isExpanded=c.isExpanded;var _=t.getDefaultSize(d,{isExpanded:m.isExpanded});m.width=_.width,m.height=_.height,m.x=s.x-(m.width-s.width)/2,m.y=s.y-(m.height-s.height)/2}Or(s)&&!vr(h,"bpmn:Task")&&m.isExpanded&&(m.width=s.width,m.height=s.height)}if(yf(h)&&!yf(d)&&(l.moveChildren=!1),vr(h,"bpmn:Participant")){!0===c.isExpanded?d.processRef=e.create("bpmn:Process"):l.moveChildren=!1;var x=Lr(s);br(s).isHorizontal||(br(m).isHorizontal=x),m.width=x?s.width:t.getDefaultSize(m).width,m.height=x?t.getDefaultSize(m).height:s.height}return o.allowed("shape.resize",{shape:d})||(m.height=t.getDefaultSize(m).height,m.width=t.getDefaultSize(m).width),d.name=h.name,yr(h,["bpmn:ExclusiveGateway","bpmn:InclusiveGateway","bpmn:Activity"])&&yr(d,["bpmn:ExclusiveGateway","bpmn:InclusiveGateway","bpmn:Activity"])&&(d.default=h.default),c.host&&!vr(h,"bpmn:BoundaryEvent")&&vr(d,"bpmn:BoundaryEvent")&&(m.host=c.host),"bpmn:DataStoreReference"!==m.type&&"bpmn:DataObjectReference"!==m.type||(m.x=s.x+(s.width-m.width)/2),r.replaceElement(s,m,{...l,targetElement:c})}}function yf(e){return vr(e,"bpmn:SubProcess")}function gf(e,t){var n=gr(e);return t&&n.get("eventDefinitions").some((function(e){return vr(e,t)}))}vf.$inject=["bpmnFactory","elementFactory","moddleCopy","modeling","replace","rules"];var bf={__depends__:[lf,ff,_a],bpmnReplace:["type",vf]};function _f(e){this._eventBus=e,this._tools=[],this._active=null}_f.$inject=["eventBus"],_f.prototype.registerTool=function(e,t){var n=this._tools;if(!t)throw new Error('A tool has to be registered with it\'s "events"');n.push(e),this.bindEvents(e,t)},_f.prototype.isActive=function(e){return e&&this._active===e},_f.prototype.length=function(e){return this._tools.length},_f.prototype.setActive=function(e){var t=this._eventBus;this._active!==e&&(this._active=e,t.fire("tool-manager.update",{tool:e}))},_f.prototype.bindEvents=function(e,t){var n=this._eventBus,i=[];n.on(t.tool+".init",(function(t){t.context.reactivate||!this.isActive(e)?this.setActive(e):this.setActive(null)}),this),g(t,(function(e){i.push(e+".ended"),i.push(e+".canceled")})),n.on(i,250,(function(e){this._active&&(function(e){var t=e.originalEvent&&e.originalEvent.target;return t&&J(t,'.group[data-group="tools"]')}(e)||this.setActive(null))}),this)};var xf={__depends__:[vp],__init__:["toolManager"],toolManager:["type",_f]};function wf(e,t){return-1!==e.indexOf(t)}var Ef=Math.abs,Sf=Math.round,Cf={x:"width",y:"height"},kf="crosshair",Rf={n:"top",w:"left",s:"bottom",e:"right"},Pf={n:"s",w:"e",s:"n",e:"w"};function Af(e,t,n,i,r,o,a){this._canvas=e,this._dragging=t,this._eventBus=n,this._modeling=i,this._rules=r,this._toolManager=o,this._mouse=a;var s=this;o.registerTool("space",{tool:"spaceTool.selection",dragging:"spaceTool"}),n.on("spaceTool.selection.end",(function(e){n.once("spaceTool.selection.ended",(function(){s.activateMakeSpace(e.originalEvent)}))})),n.on("spaceTool.move",1500,(function(e){var t=e.context,n=t.initialized;n||(n=t.initialized=s.init(e,t)),n&&Tf(e)})),n.on("spaceTool.end",(function(e){var t=e.context,i=t.axis,r=t.direction,o=t.movingShapes,a=t.resizingShapes,c=t.start;if(t.initialized){Tf(e);var p={x:0,y:0};p[i]=Sf(e["d"+i]),s.makeSpace(o,a,p,r,c),n.once("spaceTool.ended",(function(e){s.activateSelection(e.originalEvent,!0,!0)}))}}))}function Mf(e){return{top:e.top-20,right:e.right+20,bottom:e.bottom+20,left:e.left-20}}function Tf(e){var t,n,i=e.context.spaceToolConstraints;i&&(u(i.left)&&(t=Math.max(e.x,i.left),e.dx=e.dx+t-e.x,e.x=t),u(i.right)&&(t=Math.min(e.x,i.right),e.dx=e.dx+t-e.x,e.x=t),u(i.top)&&(n=Math.max(e.y,i.top),e.dy=e.dy+n-e.y,e.y=n),u(i.bottom)&&(n=Math.min(e.y,i.bottom),e.dy=e.dy+n-e.y,e.y=n))}function Df(e,t){return-1!==e.indexOf(t)}Af.$inject=["canvas","dragging","eventBus","modeling","rules","toolManager","mouse"],Af.prototype.activateSelection=function(e,t,n){this._dragging.init(e,"spaceTool.selection",{autoActivate:t,cursor:kf,data:{context:{reactivate:n}},trapClick:!1})},Af.prototype.activateMakeSpace=function(e){this._dragging.init(e,"spaceTool",{autoActivate:!0,cursor:kf,data:{context:{}}})},Af.prototype.makeSpace=function(e,t,n,i,r){return this._modeling.createSpace(e,t,n,i,r)},Af.prototype.init=function(e,t){var n=Ef(e.dx)>Ef(e.dy)?"x":"y",i=e["d"+n],r=e[n]-i;if(Ef(i)<5)return!1;i<0&&(i*=-1),ca(e)&&(i*=-1);var o=function(e,t){if("x"===e){if(t>0)return"e";if(t<0)return"w"}if("y"===e){if(t>0)return"s";if(t<0)return"n"}return null}(n,i),a=this._canvas.getRootElement();!pa(e)&&e.hover&&(a=e.hover);var s=[...ut(a,!0),...a.attachers||[]],c=this.calculateAdjustments(s,n,i,r),p=function(e,t,n,i,r){var o=e.movingShapes,a=e.resizingShapes;if(!a.length)return;var s,c,p={};return g(a,(function(e){var l,h,d,f,m,v,g=e.attachers,b=e.children,_=un(e),x=y(b,(function(e){return!(sn(e)||cn(e)||Df(o,e)||Df(a,e))})),w=y(b,(function(e){return!sn(e)&&!cn(e)&&Df(o,e)})),E=[],S=[];x.length&&(h=Mf(un(ht(x))),l=i-_[Rf[n]]+h[Rf[n]],"n"===n?p.bottom=c=u(c)?Math.min(c,l):l:"w"===n?p.right=c=u(c)?Math.min(c,l):l:"s"===n?p.top=s=u(s)?Math.max(s,l):l:"e"===n&&(p.left=s=u(s)?Math.max(s,l):l)),w.length&&(d=Mf(un(ht(w))),l=i-d[Rf[Pf[n]]]+_[Rf[Pf[n]]],"n"===n?p.bottom=c=u(c)?Math.min(c,l):l:"w"===n?p.right=c=u(c)?Math.min(c,l):l:"s"===n?p.top=s=u(s)?Math.max(s,l):l:"e"===n&&(p.left=s=u(s)?Math.max(s,l):l)),g&&g.length&&(g.forEach((function(e){Df(o,e)?E.push(e):S.push(e)})),E.length&&(f=un(ht(E.map(fn))),m=_[Rf[Pf[n]]]-(f[Rf[Pf[n]]]-i)),S.length&&(v=un(ht(S.map(fn)))[Rf[n]]-(_[Rf[n]]-i)),"n"===n?(l=Math.min(m||1/0,v||1/0),p.bottom=c=u(c)?Math.min(c,l):l):"w"===n?(l=Math.min(m||1/0,v||1/0),p.right=c=u(c)?Math.min(c,l):l):"s"===n?(l=Math.max(m||-1/0,v||-1/0),p.top=s=u(s)?Math.max(s,l):l):"e"===n&&(l=Math.max(m||-1/0,v||-1/0),p.left=s=u(s)?Math.max(s,l):l));var C=r&&r[e.id];C&&("n"===n?(l=i+e[Cf[t]]-C[Cf[t]],p.bottom=c=u(c)?Math.min(c,l):l):"w"===n?(l=i+e[Cf[t]]-C[Cf[t]],p.right=c=u(c)?Math.min(c,l):l):"s"===n?(l=i-e[Cf[t]]+C[Cf[t]],p.top=s=u(s)?Math.max(s,l):l):"e"===n&&(l=i-e[Cf[t]]+C[Cf[t]],p.left=s=u(s)?Math.max(s,l):l))})),p}(c,n,o,r,this._eventBus.fire("spaceTool.getMinDimensions",{axis:n,direction:o,shapes:c.resizingShapes,start:r}));return L(t,c,{axis:n,direction:o,spaceToolConstraints:p,start:r}),$a("resize-"+("x"===n?"ew":"ns")),!0},Af.prototype.calculateAdjustments=function(e,t,n,i){var r=this._rules,o=[],a=[],s=[],c=[];function p(e){o.includes(e)||o.push(e);var t=e.label;t&&!o.includes(t)&&o.push(t)}g(e,(function(e){if(e.parent&&!cn(e))if(sn(e))c.push(e);else{var o=e[t],l=o+e[Cf[t]];if(function(e){return!!e.host}(e)&&(n>0&&fn(e)[t]>i||n<0&&fn(e)[t]<i))s.push(e);else{var u;if(!(n>0&&o>i||n<0&&l<i))return o<i&&l>i&&r.allowed("shape.resize",{shape:e})?(u=e,void(a.includes(u)||a.push(u))):void 0;p(e)}}})),g(o,(function(e){var t=e.attachers;t&&g(t,(function(e){p(e)}))}));var l=o.concat(a);return g(s,(function(e){var t=e.host;Df(l,t)&&p(e)})),l=o.concat(a),g(c,(function(e){var t=e.source,n=e.target,i=e.label;Df(l,t)&&Df(l,n)&&i&&p(i)})),{movingShapes:o,resizingShapes:a}},Af.prototype.toggle=function(){if(this.isActive())return this._dragging.cancel();var e=this._mouse.getLastMoveEvent();this.activateSelection(e,!!e)},Af.prototype.isActive=function(){var e=this._dragging.context();return!!e&&/^spaceTool/.test(e.prefix)};var Bf="djs-dragging",Nf="djs-resizing",jf=Math.max;function Of(e,t,n,i,r){function o(e,t){g(e,(function(e){r.addDragger(e,t),n.addMarker(e,Bf)}))}e.on("spaceTool.selection.start",(function(e){var t=n.getLayer("space"),r=e.context,o="M 0,-10000 L 0,10000",a="M -10000,0 L 10000,0",s=Ae("g");_e(s,i.cls("djs-crosshair-group",["no-events"])),ye(t,s);var c=Ae("path");_e(c,"d",o),we(c).add("djs-crosshair"),ye(s,c);var p=Ae("path");_e(p,"d",a),we(p).add("djs-crosshair"),ye(s,p),r.crosshairGroup=s})),e.on("spaceTool.selection.move",(function(e){Wn(e.context.crosshairGroup,e.x,e.y)})),e.on("spaceTool.selection.cleanup",(function(e){var t=e.context.crosshairGroup;t&&Fe(t)})),e.on("spaceTool.move",250,(function(e){var a=e.context,s=a.line,c=a.axis,p=a.movingShapes,l=a.resizingShapes;if(a.initialized){if(!a.dragGroup){var u=n.getLayer("space");_e(s=Ae("path"),"d","M0,0 L0,0"),we(s).add("djs-crosshair"),ye(u,s),a.line=s;var h=Ae("g");_e(h,i.cls("djs-drag-group",["no-events"])),ye(n.getActiveLayer(),h),o(p,h),o(a.movingConnections=t.filter((function(e){var t=!1;g(p,(function(n){g(n.outgoing,(function(n){e===n&&(t=!0)}))}));var n=!1;g(p,(function(t){g(t.incoming,(function(t){e===t&&(n=!0)}))}));var i=!1;g(l,(function(t){g(t.outgoing,(function(t){e===t&&(i=!0)}))}));var r=!1;return g(l,(function(t){g(t.incoming,(function(t){e===t&&(r=!0)}))})),sn(e)&&(t||i)&&(n||r)})),h),a.dragGroup=h}if(!a.frameGroup){var d=Ae("g");_e(d,i.cls("djs-frame-group",["no-events"])),ye(n.getActiveLayer(),d);var f=[];g(l,(function(e){var t=r.addFrame(e,d),i=t.getBBox();f.push({element:t,initialBounds:i}),n.addMarker(e,Nf)})),a.frameGroup=d,a.frames=f}_e(s,{d:{x:"M"+e.x+", -10000 L"+e.x+", 10000",y:"M -10000, "+e.y+" L 10000, "+e.y}[c]});var m={x:e.dx,y:e.dy};m[{x:"y",y:"x"}[a.axis]]=0,Wn(a.dragGroup,m.x,m.y),g(a.frames,(function(e){var t,n,i=e.element,r=e.initialBounds;"e"===a.direction?_e(i,{width:jf(r.width+m.x,5)}):_e(i,{width:t=jf(r.width-m.x,5),x:r.x+r.width-t}),"s"===a.direction?_e(i,{height:jf(r.height+m.y,5)}):_e(i,{height:n=jf(r.height-m.y,5),y:r.y+r.height-n})}))}})),e.on("spaceTool.cleanup",(function(e){var t=e.context,i=t.movingShapes,r=t.movingConnections,o=t.resizingShapes,a=t.line,s=t.dragGroup,c=t.frameGroup;g(i,(function(e){n.removeMarker(e,Bf)})),g(r,(function(e){n.removeMarker(e,Bf)})),s&&(Fe(a),Fe(s)),g(o,(function(e){n.removeMarker(e,Nf)})),c&&Fe(c)}))}Of.$inject=["eventBus","elementRegistry","canvas","styles","previewSupport"];var Lf={__init__:["spaceToolPreview"],__depends__:[vp,xp,xf,Al,Jd],spaceTool:["type",Af],spaceToolPreview:["type",Of]};function $f(e,t){e.invoke(Af,this),this._canvas=t}$f.$inject=["injector","canvas"],e($f,Af),$f.prototype.calculateAdjustments=function(e,t,n,i){var r=this._canvas.getRootElement(),o=e[0]===r?null:e[0],a=[];o&&(a=C(dt(r.children.filter((e=>vr(e,"bpmn:Artifact"))),ht(o))));const s=[...e,...a];var c=Af.prototype.calculateAdjustments.call(this,s,t,n,i);return c.resizingShapes=c.resizingShapes.filter((function(e){return!vr(e,"bpmn:TextAnnotation")&&(!function(e){return vr(e,"bpmn:Participant")&&!gr(e).processRef}(e)||!("y"===t&&Lr(e)||"x"===t&&!Lr(e)))})),c};var If={__depends__:[Lf],spaceTool:["type",$f]};function Ff(e,t){this._handlerMap={},this._stack=[],this._stackIdx=-1,this._currentExecution={actions:[],dirty:[],trigger:null},this._injector=t,this._eventBus=e,this._uid=1,e.on(["diagram.destroy","diagram.clear"],(function(){this.clear(!1)}),this)}Ff.$inject=["eventBus","injector"],Ff.prototype.execute=function(e,t){if(!e)throw new Error("command required");this._currentExecution.trigger="execute";const n={command:e,context:t};this._pushAction(n),this._internalExecute(n),this._popAction()},Ff.prototype.canExecute=function(e,t){const n={command:e,context:t},i=this._getHandler(e);let r=this._fire(e,"canExecute",n);if(void 0===r){if(!i)return!1;i.canExecute&&(r=i.canExecute(t))}return r},Ff.prototype.clear=function(e){this._stack.length=0,this._stackIdx=-1,!1!==e&&this._fire("changed",{trigger:"clear"})},Ff.prototype.undo=function(){let e,t=this._getUndoAction();if(t){for(this._currentExecution.trigger="undo",this._pushAction(t);t&&(this._internalUndo(t),e=this._getUndoAction(),e&&e.id===t.id);)t=e;this._popAction()}},Ff.prototype.redo=function(){let e,t=this._getRedoAction();if(t){for(this._currentExecution.trigger="redo",this._pushAction(t);t&&(this._internalExecute(t,!0),e=this._getRedoAction(),e&&e.id===t.id);)t=e;this._popAction()}},Ff.prototype.register=function(e,t){this._setHandler(e,t)},Ff.prototype.registerHandler=function(e,t){if(!e||!t)throw new Error("command and handlerCls must be defined");const n=this._injector.instantiate(t);this.register(e,n)},Ff.prototype.canUndo=function(){return!!this._getUndoAction()},Ff.prototype.canRedo=function(){return!!this._getRedoAction()},Ff.prototype._getRedoAction=function(){return this._stack[this._stackIdx+1]},Ff.prototype._getUndoAction=function(){return this._stack[this._stackIdx]},Ff.prototype._internalUndo=function(e){const t=e.command,n=e.context,i=this._getHandler(t);this._atomicDo((()=>{this._fire(t,"revert",e),i.revert&&this._markDirty(i.revert(n)),this._revertedAction(e),this._fire(t,"reverted",e)}))},Ff.prototype._fire=function(e,t,n){arguments.length<3&&(n=t,t=null);const i=t?[e+"."+t,t]:[e];let r;n=this._eventBus.createEvent(n);for(const e of i)if(r=this._eventBus.fire("commandStack."+e,n),n.cancelBubble)break;return r},Ff.prototype._createId=function(){return this._uid++},Ff.prototype._atomicDo=function(e){const t=this._currentExecution;t.atomic=!0;try{e()}finally{t.atomic=!1}},Ff.prototype._internalExecute=function(e,t){const n=e.command,i=e.context,r=this._getHandler(n);if(!r)throw new Error("no command handler registered for <"+n+">");this._pushAction(e),t||(this._fire(n,"preExecute",e),r.preExecute&&r.preExecute(i),this._fire(n,"preExecuted",e)),this._atomicDo((()=>{this._fire(n,"execute",e),r.execute&&this._markDirty(r.execute(i)),this._executedAction(e,t),this._fire(n,"executed",e)})),t||(this._fire(n,"postExecute",e),r.postExecute&&r.postExecute(i),this._fire(n,"postExecuted",e)),this._popAction()},Ff.prototype._pushAction=function(e){const t=this._currentExecution,n=t.actions,i=n[0];if(t.atomic)throw new Error("illegal invocation in <execute> or <revert> phase (action: "+e.command+")");e.id||(e.id=i&&i.id||this._createId()),n.push(e)},Ff.prototype._popAction=function(){const e=this._currentExecution,t=e.trigger,n=e.actions,i=e.dirty;n.pop(),n.length||(this._eventBus.fire("elements.changed",{elements:R("id",i.reverse())}),i.length=0,this._fire("changed",{trigger:t}),e.trigger=null)},Ff.prototype._markDirty=function(e){const t=this._currentExecution;e&&(e=p(e)?e:[e],t.dirty=t.dirty.concat(e))},Ff.prototype._executedAction=function(e,t){const n=++this._stackIdx;t||this._stack.splice(n,this._stack.length,e)},Ff.prototype._revertedAction=function(e){this._stackIdx--},Ff.prototype._getHandler=function(e){return this._handlerMap[e]},Ff.prototype._setHandler=function(e,t){if(!e||!t)throw new Error("command and handler required");if(this._handlerMap[e])throw new Error("overriding handler for command <"+e+">");this._handlerMap[e]=t};var zf={commandStack:["type",Ff]};function Hf(e,t){if("function"!=typeof t)throw new Error("removeFn iterator must be a function");if(e){for(var n;n=e[0];)t(n);return e}}function Vf(e,t,n){Do.call(this,t);var i=e.get("movePreview",!1);t.on("shape.move.start",1400,(function(e){var t=e.context,n=t.shapes,i=t.validatedShapes;t.shapes=Gf(n),t.validatedShapes=Gf(i)})),i&&t.on("shape.move.start",250,(function(e){var t=e.context,n=t.shapes,r=[];g(n,(function(e){g(e.labels,(function(n){n.hidden||-1!==t.shapes.indexOf(n)||r.push(n),e.labelTarget&&r.push(e)}))})),g(r,(function(e){i.makeDraggable(t,e,!0)}))})),this.preExecuted("elements.move",1400,(function(e){var t=e.context.closure,n=t.enclosedElements,i=[];g(n,(function(e){g(e.labels,(function(e){n[e.id]||i.push(e)}))})),t.addAll(i)})),this.preExecute(["connection.delete","shape.delete"],(function(e){var t=e.context;Hf((t.connection||t.shape).labels,(function(e){n.removeShape(e,{nested:!0})}))})),this.execute("shape.delete",(function(e){var t=e.context,n=t.shape,i=n.labelTarget;i&&(t.labelTargetIndex=xt(i.labels,n),t.labelTarget=i,n.labelTarget=null)})),this.revert("shape.delete",(function(e){var t=e.context,n=t.shape,i=t.labelTarget,r=t.labelTargetIndex;i&&(_t(i.labels,n,r),n.labelTarget=i)}))}function Gf(e){return y(e,(function(t){return-1===e.indexOf(t.labelTarget)}))}e(Vf,Do),Vf.$inject=["injector","eventBus","modeling"];var Wf={__init__:["labelSupport"],labelSupport:["type",Vf]},Uf="attach-ok";function qf(e,t,n,i,r){Do.call(this,t);var o=e.get("movePreview",!1);t.on("shape.move.start",1401,(function(e){var t,n,i=e.context,r=i.shapes,o=i.validatedShapes;i.shapes=(n=Kf(t=r),P("id",t,n)),i.validatedShapes=function(e){var t=k(e,"id");return y(e,(function(e){for(;e;){if(e.host&&t[e.host.id])return!1;e=e.parent}return!0}))}(o)})),o&&t.on("shape.move.start",251,(function(e){var t=e.context;g(Kf(t.shapes),(function(e){o.makeDraggable(t,e,!0),g(e.labels,(function(e){o.makeDraggable(t,e,!0)}))}))})),o&&t.on("shape.move.start",(function(e){var i=e.context.shapes;if(1===i.length){var r=i[0].host;r&&(n.addMarker(r,Uf),t.once(["shape.move.out","shape.move.cleanup"],(function(){n.removeMarker(r,Uf)})))}})),this.preExecuted("elements.move",1401,(function(e){var t=e.context,n=t.closure;g(Kf(t.shapes),(function(e){n.add(e,n.topLevel[e.host.id])}))})),this.postExecuted("elements.move",(function(e){var t=e.context,n=t.shapes,i=t.newHost;i&&1!==n.length||g(i?n:y(n,(function(e){var t,i=e.host;return function(e){return!!e.host}(e)&&(t=i,!(-1!==n.indexOf(t)))})),(function(e){r.updateAttachment(e,i)}))})),this.postExecuted("elements.move",(function(e){g(e.context.shapes,(function(e){g(e.attachers,(function(e){g(e.outgoing.slice(),(function(e){i.allowed("connection.reconnect",{connection:e,source:e.source,target:e.target})||r.removeConnection(e)})),g(e.incoming.slice(),(function(e){i.allowed("connection.reconnect",{connection:e,source:e.source,target:e.target})||r.removeConnection(e)}))}))}))})),this.postExecute("shape.create",(function(e){var t=e.context,n=t.shape,i=t.host;i&&r.updateAttachment(n,i)})),this.postExecute("shape.replace",(function(e){var t=e.context,n=t.oldShape,o=t.newShape;Hf(n.attachers,(function(e){"attach"===i.allowed("elements.move",{target:o,shapes:[e]})?r.updateAttachment(e,o):r.removeShape(e)})),o.attachers.length&&g(o.attachers,(function(e){var t=Uu(e,n,o);r.moveShape(e,t,e.parent)}))})),this.postExecute("shape.resize",(function(e){var t=e.context,n=t.shape,i=t.oldBounds,o=t.newBounds,a=n.attachers;!1!==(t.hints||{}).attachSupport&&g(a,(function(e){var t=Uu(e,i,o);r.moveShape(e,t,e.parent),g(e.labels,(function(e){r.moveShape(e,t,e.parent)}))}))})),this.preExecute("shape.delete",(function(e){var t=e.context.shape;Hf(t.attachers,(function(e){r.removeShape(e)})),t.host&&r.updateAttachment(t,null)}))}function Kf(e){return i(E(e,(function(e){return e.attachers||[]})))}e(qf,Do),qf.$inject=["injector","eventBus","canvas","rules","modeling"];var Yf={__depends__:[xp],__init__:["attachSupport"],attachSupport:["type",qf]};function Xf(e){this._model=e}function Zf(e,t,n){Do.call(this,e),this._bpmnFactory=t;var i=this;function r(e){g(e.context.oldRoot.children,(function(e){vr(e,"bpmn:BaseElement")&&i.updateParent(e)}))}function o(e){var t=e.context.shape;vr(t,"bpmn:BaseElement")&&i.updateBounds(t)}function a(e){i.updateConnection(e.context)}function s(e){i.updateConnectionWaypoints(e.context.connection)}function c(e){i.updateAttachment(e.context)}function p(e){const{element:n}=e.context,i=Ur(n),r=br(n),o=r&&r.get("label");zr(n)||Vo(n)||(i&&!o?r.set("label",t.create("bpmndi:BPMNLabel")):!i&&o&&r.set("label",void 0))}this.executed(["connection.layout","connection.create"],(function(e){var t,i=e.context,r=i.hints||{};i.cropped||!1===r.createElementsBehavior||((t=i.connection).waypoints=n.getCroppedWaypoints(t),i.cropped=!0)})),this.reverted(["connection.layout"],(function(e){delete e.context.cropped})),this.executed(["shape.move","shape.create","shape.delete","connection.create","connection.move","connection.delete"],Qf((function(e){var t=e.context;i.updateParent(t.shape||t.connection,t.oldParent)}))),this.reverted(["shape.move","shape.create","shape.delete","connection.create","connection.move","connection.delete"],Qf((function(e){var t=e.context,n=t.shape||t.connection,r=t.parent||t.newParent;i.updateParent(n,r)}))),this.executed(["canvas.updateRoot"],r),this.reverted(["canvas.updateRoot"],r),this.executed(["shape.move","shape.create","shape.resize"],Qf((function(e){"label"!==e.context.shape.type&&o(e)}))),this.reverted(["shape.move","shape.create","shape.resize"],Qf((function(e){"label"!==e.context.shape.type&&o(e)}))),e.on("shape.changed",(function(e){"label"===e.element.type&&o({context:{shape:e.element}})})),this.executed(["connection.create","connection.move","connection.delete","connection.reconnect"],Qf(a)),this.reverted(["connection.create","connection.move","connection.delete","connection.reconnect"],Qf(a)),this.executed(["connection.layout","connection.move","connection.updateWaypoints"],Qf(s)),this.reverted(["connection.layout","connection.move","connection.updateWaypoints"],Qf(s)),this.executed("connection.reconnect",Qf((function(e){var t=e.context,n=t.connection,i=t.oldSource,r=t.newSource,o=gr(n),a=gr(i),s=gr(r);o.conditionExpression&&!yr(s,["bpmn:Activity","bpmn:ExclusiveGateway","bpmn:InclusiveGateway"])&&(t.oldConditionExpression=o.conditionExpression,delete o.conditionExpression),i!==r&&a.default===o&&(t.oldDefault=a.default,delete a.default)}))),this.reverted("connection.reconnect",Qf((function(e){var t=e.context,n=t.connection,i=t.oldSource,r=t.newSource,o=gr(n),a=gr(i),s=gr(r);t.oldConditionExpression&&(o.conditionExpression=t.oldConditionExpression),t.oldDefault&&(a.default=t.oldDefault,delete s.default)}))),this.executed(["element.updateAttachment"],Qf(c)),this.reverted(["element.updateAttachment"],Qf(c)),this.executed("element.updateLabel",Qf(p)),this.reverted("element.updateLabel",Qf(p))}function Qf(e){return function(t){var n=t.context;vr(n.shape||n.connection||n.element,"bpmn:BaseElement")&&e(t)}}function Jf(e,t){$n.call(this),this._bpmnFactory=e,this._moddle=t}function em(e,t,n){return void 0===t[n]?t:(e[n]=t[n],I(t,[n]))}function tm(e,t){this._modeling=e,this._canvas=t}function nm(e){this._modeling=e}function im(e,t){this._canvas=e,this._layouter=t}Xf.$inject=["moddle"],Xf.prototype._needsId=function(e){return yr(e,["bpmn:RootElement","bpmn:FlowElement","bpmn:MessageFlow","bpmn:DataAssociation","bpmn:Artifact","bpmn:Participant","bpmn:Lane","bpmn:LaneSet","bpmn:Process","bpmn:Collaboration","bpmndi:BPMNShape","bpmndi:BPMNEdge","bpmndi:BPMNDiagram","bpmndi:BPMNPlane","bpmn:Property","bpmn:CategoryValue"])},Xf.prototype._ensureId=function(e){var t;e.id?this._model.ids.claim(e.id,e):(t=vr(e,"bpmn:Activity")?"Activity":vr(e,"bpmn:Event")?"Event":vr(e,"bpmn:Gateway")?"Gateway":yr(e,["bpmn:SequenceFlow","bpmn:MessageFlow"])?"Flow":(e.$type||"").replace(/^[^:]*:/g,""),t+="_",!e.id&&this._needsId(e)&&(e.id=this._model.ids.nextPrefixed(t,e)))},Xf.prototype.create=function(e,t){var n=this._model.create(e,t||{});return this._ensureId(n),n},Xf.prototype.createDiLabel=function(){return this.create("bpmndi:BPMNLabel",{bounds:this.createDiBounds()})},Xf.prototype.createDiShape=function(e,t){return this.create("bpmndi:BPMNShape",L({bpmnElement:e,bounds:this.createDiBounds()},t))},Xf.prototype.createDiBounds=function(e){return this.create("dc:Bounds",e)},Xf.prototype.createDiWaypoints=function(e){var t=this;return E(e,(function(e){return t.createDiWaypoint(e)}))},Xf.prototype.createDiWaypoint=function(e){return this.create("dc:Point",$(e,["x","y"]))},Xf.prototype.createDiEdge=function(e,t){return this.create("bpmndi:BPMNEdge",L({bpmnElement:e,waypoint:this.createDiWaypoints([])},t))},Xf.prototype.createDiPlane=function(e,t){return this.create("bpmndi:BPMNPlane",L({bpmnElement:e},t))},e(Zf,Do),Zf.$inject=["eventBus","bpmnFactory","connectionDocking"],Zf.prototype.updateAttachment=function(e){var t=e.shape,n=t.businessObject,i=t.host;n.attachedToRef=i&&i.businessObject},Zf.prototype.updateParent=function(e,t){if(!(cn(e)||vr(e,"bpmn:DataStoreReference")&&e.parent&&vr(e.parent,"bpmn:Collaboration"))){var n=e.parent,i=e.businessObject,r=br(e),o=n&&n.businessObject,a=br(n);vr(e,"bpmn:FlowNode")&&this.updateFlowNodeRefs(i,o,t&&t.businessObject),vr(e,"bpmn:DataOutputAssociation")&&(o=e.source?e.source.businessObject:null),vr(e,"bpmn:DataInputAssociation")&&(o=e.target?e.target.businessObject:null),this.updateSemanticParent(i,o),vr(e,"bpmn:DataObjectReference")&&i.dataObjectRef&&this.updateSemanticParent(i.dataObjectRef,o),this.updateDiParent(r,a)}},Zf.prototype.updateBounds=function(e){var t=br(e),n=function(e){if(!vr(e,"bpmn:Activity"))return;var t=br(e);if(!t)return;var n=t.get("label");if(!n)return;return n.get("bounds")}(e);if(n){var i=Ha(n,t.get("bounds"));L(n,{x:e.x+i.x,y:e.y+i.y})}var r=cn(e)?this._getLabel(t):t,o=r.bounds;o||(o=this._bpmnFactory.createDiBounds(),r.set("bounds",o)),L(o,{x:e.x,y:e.y,width:e.width,height:e.height})},Zf.prototype.updateFlowNodeRefs=function(e,t,n){n!==t&&(vr(n,"bpmn:Lane")&&bt(n.get("flowNodeRef"),e),vr(t,"bpmn:Lane")&&_t(t.get("flowNodeRef"),e))},Zf.prototype.updateDiConnection=function(e,t,n){var i=br(e),r=br(t),o=br(n);i.sourceElement&&i.sourceElement.bpmnElement!==gr(t)&&(i.sourceElement=t&&r),i.targetElement&&i.targetElement.bpmnElement!==gr(n)&&(i.targetElement=n&&o)},Zf.prototype.updateDiParent=function(e,t){if(t&&!vr(t,"bpmndi:BPMNPlane")&&(t=t.$parent),e.$parent!==t){var n=(t||e.$parent).get("planeElement");t?(n.push(e),e.$parent=t):(bt(n,e),e.$parent=null)}},Zf.prototype.getLaneSet=function(e){var t,n;return vr(e,"bpmn:Lane")?((t=e.childLaneSet)||(t=this._bpmnFactory.create("bpmn:LaneSet"),e.childLaneSet=t,t.$parent=e),t):(vr(e,"bpmn:Participant")&&(e=e.processRef),(t=(n=e.get("laneSets"))[0])||((t=this._bpmnFactory.create("bpmn:LaneSet")).$parent=e,n.push(t)),t)},Zf.prototype.updateSemanticParent=function(e,t,n){var i;if(e.$parent!==t&&(!vr(e,"bpmn:DataInput")&&!vr(e,"bpmn:DataOutput")||(vr(t,"bpmn:Participant")&&"processRef"in t&&(t=t.processRef),!("ioSpecification"in t)||t.ioSpecification!==e.$parent))){if(vr(e,"bpmn:Lane"))t&&(t=this.getLaneSet(t)),i="lanes";else if(vr(e,"bpmn:FlowElement")){if(t)if(vr(t,"bpmn:Participant"))t=t.processRef;else if(vr(t,"bpmn:Lane"))do{t=t.$parent.$parent}while(vr(t,"bpmn:Lane"));i="flowElements"}else if(vr(e,"bpmn:Artifact")){for(;t&&!vr(t,"bpmn:Process")&&!vr(t,"bpmn:SubProcess")&&!vr(t,"bpmn:Collaboration");){if(vr(t,"bpmn:Participant")){t=t.processRef;break}t=t.$parent}i="artifacts"}else if(vr(e,"bpmn:MessageFlow"))i="messageFlows";else if(vr(e,"bpmn:Participant")){i="participants";var r,o=e.processRef;o&&(r=function(e){for(;e&&!vr(e,"bpmn:Definitions");)e=e.$parent;return e}(e.$parent||t),e.$parent&&(bt(r.get("rootElements"),o),o.$parent=null),t&&(_t(r.get("rootElements"),o),o.$parent=r))}else vr(e,"bpmn:DataOutputAssociation")?i="dataOutputAssociations":vr(e,"bpmn:DataInputAssociation")&&(i="dataInputAssociations");if(!i)throw new Error(`no parent for <${e.id}> in <${t.id}>`);var a;if(e.$parent&&bt(a=e.$parent.get(i),e),t?((a=t.get(i)).push(e),e.$parent=t):e.$parent=null,n){var s=n.get(i);bt(a,e),t&&(s||(s=[],t.set(i,s)),s.push(e))}}},Zf.prototype.updateConnectionWaypoints=function(e){br(e).set("waypoint",this._bpmnFactory.createDiWaypoints(e.waypoints))},Zf.prototype.updateConnection=function(e){var t,n=e.connection,i=gr(n),r=n.source,o=gr(r),a=n.target,s=gr(n.target);if(vr(i,"bpmn:DataAssociation"))vr(i,"bpmn:DataInputAssociation")?(i.get("sourceRef")[0]=o,t=e.parent||e.newParent||s,this.updateSemanticParent(i,s,t)):vr(i,"bpmn:DataOutputAssociation")&&(t=e.parent||e.newParent||o,this.updateSemanticParent(i,o,t),i.targetRef=s);else{var c=vr(i,"bpmn:SequenceFlow");i.sourceRef!==o&&(c&&(bt(i.sourceRef&&i.sourceRef
[all...]
/plugin/bpmnio/vendor/dmn-js/dist/
H A Ddmn-modeler.production.min.js2 !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e="undefined"!=typeof globalThis?globalThis:e||self).DmnJS=t()}(this,(function(){"use strict";const e=Object.prototype.toString,t=Object.prototype.hasOwnProperty;function n(e){return void 0===e}function i(e){return void 0!==e}function o(e){return null==e}function r(t){return"[object Array]"===e.call(t)}function s(t){return"[object Object]"===e.call(t)}function a(t){return"[object Number]"===e.call(t)}function l(t){const n=e.call(t);return"[object Function]"===n||"[object AsyncFunction]"===n||"[object GeneratorFunction]"===n||"[object AsyncGeneratorFunction]"===n||"[object Proxy]"===n}function c(t){return"[object String]"===e.call(t)}function u(e,n){return!o(e)&&t.call(e,n)}function h(e,t){const n=k(t);let i;return p(e,(function(e,t){if(n(e,t))return i=e,!1})),i}function d(e,t){const n=k(t);let i=[];return p(e,(function(e,t){n(e,t)&&i.push(e)})),i}function p(e,t){let i,o;if(n(e))return;const s=r(e)?S:E;for(let n in e)if(u(e,n)&&(i=e[n],o=t(i,s(n)),!1===o))return i}function f(e,t,n){return p(e,(function(e,i){n=t(n,e,i)})),n}function g(e,t){return!!f(e,(function(e,n,i){return e&&t(n,i)}),!0)}function m(e,t){return!!h(e,t)}function v(e,t){let n=[];return p(e,(function(e,i){n.push(t(e,i))})),n}function y(e){return e&&Object.keys(e)||[]}function x(e){return v(e,(e=>e))}function b(e,t,n={}){return t=O(t),p(e,(function(e){let i=t(e)||"_",o=n[i];o||(o=n[i]=[]),o.push(e)})),n}function _(e,...t){e=O(e);let n={};return p(t,(t=>b(t,e,n))),v(n,(function(e,t){return e[0]}))}function w(e,t){t=O(t);let n=[];return p(e,(function(e,i){let o=t(e,i),r={d:o,v:e};for(var s=0;s<n.length;s++){let{d:e}=n[s];if(o<e)return void n.splice(s,0,r)}n.push(r)})),v(n,(e=>e.v))}function C(e){return function(t){return g(e,(function(e,n){return t[n]===e}))}}function O(e){return l(e)?e:t=>t[e]}function k(e){return l(e)?e:t=>t===e}function E(e){return e}function S(e){return Number(e)}function R(e,t){let n,i,o,r;function s(n){let s=Date.now(),c=n?0:r+t-s;if(c>0)return a(c);e.apply(o,i),l()}function a(e){n=setTimeout(s,e)}function l(){n&&clearTimeout(n),n=r=i=o=void 0}function c(...e){r=Date.now(),i=e,o=this,n||a(t)}return c.flush=function(){n&&s(!0),l()},c.cancel=l,c}function T(e,t){return e.bind(t)}function M(e,...t){return Object.assign(e,...t)}function A(e,t){let n={},i=Object(e);return p(t,(function(t){t in i&&(n[t]=e[t])})),n}function P(e,t){let n={};return p(Object(e),(function(e,i){-1===t.indexOf(i)&&(n[i]=e)})),n}var D="__fn",$=Array.prototype.slice;function j(){this._listeners={},this.on("diagram.destroy",1,this._destroy,this)}function I(){}j.prototype.on=function(e,t,n,i){if(e=r(e)?e:[e],l(t)&&(i=n,n=t,t=1e3),!a(t))throw new Error("priority must be a number");var o=n;i&&((o=T(n,i))[D]=n[D]||n);var s=this;e.forEach((function(e){s._addListener(e,{priority:t,callback:o,next:null})}))},j.prototype.once=function(e,t,n,i){var o=this;if(l(t)&&(i=n,n=t,t=1e3),!a(t))throw new Error("priority must be a number");function r(){r.__isTomb=!0;var t=n.apply(i,arguments);return o.off(e,r),t}r[D]=n,this.on(e,t,r)},j.prototype.off=function(e,t){e=r(e)?e:[e];var n=this;e.forEach((function(e){n._removeListener(e,t)}))},j.prototype.createEvent=function(e){var t=new I;return t.init(e),t},j.prototype.fire=function(e,t){var n,i,o,r;if(r=$.call(arguments),"object"==typeof e&&(e=(t=e).type),!e)throw new Error("no event type specified");if(i=this._listeners[e]){n=t instanceof I?t:this.createEvent(t),r[0]=n;var s=n.type;e!==s&&(n.type=e);try{o=this._invokeListeners(n,r,i)}finally{e!==s&&(n.type=s)}return void 0===o&&n.defaultPrevented&&(o=!1),o}},j.prototype.handleError=function(e){return!1===this.fire("error",{error:e})},j.prototype._destroy=function(){this._listeners={}},j.prototype._invokeListeners=function(e,t,n){for(var i;n&&!e.cancelBubble;)i=this._invokeListener(e,t,n),n=n.next;return i},j.prototype._invokeListener=function(e,t,n){var i;if(n.callback.__isTomb)return i;try{i=function(e,t){return e.apply(null,t)}(n.callback,t),void 0!==i&&(e.returnValue=i,e.stopPropagation()),!1===i&&e.preventDefault()}catch(e){if(!this.handleError(e))throw console.error("unhandled error in event listener",e),e}return i},j.prototype._addListener=function(e,t){var n,i=this._getListeners(e);if(i){for(;i;){if(i.priority<t.priority)return t.next=i,void(n?n.next=t:this._setListeners(e,t));n=i,i=i.next}n.next=t}else this._setListeners(e,t)},j.prototype._getListeners=function(e){return this._listeners[e]},j.prototype._setListeners=function(e,t){this._listeners[e]=t},j.prototype._removeListener=function(e,t){var n,i,o,r=this._getListeners(e);if(t)for(;r;)n=r.next,(o=r.callback)!==t&&o[D]!==t||(i?i.next=n:this._setListeners(e,n)),i=r,r=n;else this._setListeners(e,null)},I.prototype.stopPropagation=function(){this.cancelBubble=!0},I.prototype.preventDefault=function(){this.defaultPrevented=!0},I.prototype.init=function(e){M(this,e||{})};var B=Object.prototype.toString;function L(){return L=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e},L.apply(this,arguments)}function N(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),i=1;i<t;i++)n[i-1]=arguments[i];return L.apply(void 0,[e].concat(n))}var q=Object.prototype.toString,V=Object.prototype.hasOwnProperty;function F(e){return"[object String]"===q.call(e)}function z(e,t){return V.call(e,t)}function Q(e,t){var n;if(void 0!==e){var i=function(e){return"[object Array]"===q.call(e)}(e)?W:H;for(var o in e)if(z(e,o)&&!1===t(n=e[o],i(o)))return n}}function H(e){return e}function W(e){return Number(e)}function U(e,t){return e.bind(t)}function X(){return X=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e},X.apply(this,arguments)}function K(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),i=1;i<t;i++)n[i-1]=arguments[i];return X.apply(void 0,[e].concat(n))}function G(){}function Y(e,t){this.model=e,this.properties=t}G.prototype.get=function(e){return this.$model.properties.get(this,e)},G.prototype.set=function(e,t){this.$model.properties.set(this,e,t)},Y.prototype.createType=function(e){var t=this.model,n=this.properties,i=Object.create(G.prototype);Q(e.properties,(function(e){e.isMany||void 0===e.default||(i[e.name]=e.default)})),n.defineModel(i,t),n.defineDescriptor(i,e);var o=e.ns.name;function r(e){n.define(this,"$type",{value:o,enumerable:!0}),n.define(this,"$attrs",{value:{}}),n.define(this,"$parent",{writable:!0}),Q(e,U((function(e,t){this.set(t,e)}),this))}return r.prototype=i,r.hasType=i.$instanceOf=this.model.hasType,n.defineModel(r,t),n.defineDescriptor(r,e),r};var Z={String:!0,Boolean:!0,Integer:!0,Real:!0,Element:!0},J={String:function(e){return e},Boolean:function(e){return"true"===e},Integer:function(e){return parseInt(e,10)},Real:function(e){return parseFloat(e)}};function ee(e,t){var n=J[e];return n?n(t):t}function te(e){return!!Z[e]}function ne(e){return!!J[e]}function ie(e,t){var n,i,o=e.split(/:/);if(1===o.length)n=e,i=t;else{if(2!==o.length)throw new Error("expected <prefix:localName> or <localName>, got "+e);n=o[1],i=o[0]}return{name:e=(i?i+":":"")+n,prefix:i,localName:n}}function oe(e){this.ns=e,this.name=e.name,this.allTypes=[],this.allTypesByName={},this.properties=[],this.propertiesByName={}}function re(e,t){this.packageMap={},this.typeMap={},this.packages=[],this.properties=t,Q(e,U(this.registerPackage,this))}function se(e,t,n){var i=t[n];if(i in e)throw new Error("package with "+n+" <"+i+"> already defined")}function ae(e){this.model=e}function le(e,t,n){Object.defineProperty(e,t.name,{enumerable:!t.isReference,writable:!0,value:n,configurable:!0})}function ce(e){this.properties=new ae(this),this.factory=new Y(this,this.properties),this.registry=new re(e,this.properties),this.typeCache={}}oe.prototype.build=function(){return e=this,t=["ns","name","allTypes","allTypesByName","properties","propertiesByName","bodyProperty","idProperty"],n={},i=Object(e),Q(t,(function(t){t in i&&(n[t]=e[t])})),n;var e,t,n,i},oe.prototype.addProperty=function(e,t,n){"boolean"==typeof t&&(n=t,t=void 0),this.addNamedProperty(e,!1!==n);var i=this.properties;void 0!==t?i.splice(t,0,e):i.push(e)},oe.prototype.replaceProperty=function(e,t,n){var i=e.ns,o=this.properties,r=this.propertiesByName,s=e.name!==t.name;if(e.isId){if(!t.isId)throw new Error("property <"+t.ns.name+"> must be id property to refine <"+e.ns.name+">");this.setIdProperty(t,!1)}if(e.isBody){if(!t.isBody)throw new Error("property <"+t.ns.name+"> must be body property to refine <"+e.ns.name+">");this.setBodyProperty(t,!1)}var a=o.indexOf(e);if(-1===a)throw new Error("property <"+i.name+"> not found in property list");o.splice(a,1),this.addProperty(t,n?void 0:a,s),r[i.name]=r[i.localName]=t},oe.prototype.redefineProperty=function(e,t,n){var i=e.ns.prefix,o=t.split("#"),r=ie(o[0],i),s=ie(o[1],r.prefix).name,a=this.propertiesByName[s];if(!a)throw new Error("refined property <"+s+"> not found");this.replaceProperty(a,e,n),delete e.redefines},oe.prototype.addNamedProperty=function(e,t){var n=e.ns,i=this.propertiesByName;t&&(this.assertNotDefined(e,n.name),this.assertNotDefined(e,n.localName)),i[n.name]=i[n.localName]=e},oe.prototype.removeNamedProperty=function(e){var t=e.ns,n=this.propertiesByName;delete n[t.name],delete n[t.localName]},oe.prototype.setBodyProperty=function(e,t){if(t&&this.bodyProperty)throw new Error("body property defined multiple times (<"+this.bodyProperty.ns.name+">, <"+e.ns.name+">)");this.bodyProperty=e},oe.prototype.setIdProperty=function(e,t){if(t&&this.idProperty)throw new Error("id property defined multiple times (<"+this.idProperty.ns.name+">, <"+e.ns.name+">)");this.idProperty=e},oe.prototype.assertNotDefined=function(e,t){var n=e.name,i=this.propertiesByName[n];if(i)throw new Error("property <"+n+"> already defined; override of <"+i.definedBy.ns.name+"#"+i.ns.name+"> by <"+e.definedBy.ns.name+"#"+e.ns.name+"> not allowed without redefines")},oe.prototype.hasProperty=function(e){return this.propertiesByName[e]},oe.prototype.addTrait=function(e,t){var n=this.allTypesByName,i=this.allTypes,o=e.name;o in n||(Q(e.properties,U((function(n){n=K({},n,{name:n.ns.localName,inherited:t}),Object.defineProperty(n,"definedBy",{value:e});var i=n.replaces,o=n.redefines;i||o?this.redefineProperty(n,i||o,i):(n.isBody&&this.setBodyProperty(n),n.isId&&this.setIdProperty(n),this.addProperty(n))}),this)),i.push(e),n[o]=e)},re.prototype.getPackage=function(e){return this.packageMap[e]},re.prototype.getPackages=function(){return this.packages},re.prototype.registerPackage=function(e){e=K({},e);var t=this.packageMap;se(t,e,"prefix"),se(t,e,"uri"),Q(e.types,U((function(t){this.registerType(t,e)}),this)),t[e.uri]=t[e.prefix]=e,this.packages.push(e)},re.prototype.registerType=function(e,t){var n=ie((e=K({},e,{superClass:(e.superClass||[]).slice(),extends:(e.extends||[]).slice(),properties:(e.properties||[]).slice(),meta:K(e.meta||{})})).name,t.prefix),i=n.name,o={};Q(e.properties,U((function(e){var t=ie(e.name,n.prefix),i=t.name;te(e.type)||(e.type=ie(e.type,t.prefix).name),K(e,{ns:t,name:i}),o[i]=e}),this)),K(e,{ns:n,name:i,propertiesByName:o}),Q(e.extends,U((function(e){var t=this.typeMap[e];t.traits=t.traits||[],t.traits.push(i)}),this)),this.definePackage(e,t),this.typeMap[i]=e},re.prototype.mapTypes=function(e,t,n){var i=te(e.name)?{name:e.name}:this.typeMap[e.name],o=this;function r(e){return s(e,!0)}function s(n,i){var r=ie(n,te(n)?"":e.prefix);o.mapTypes(r,t,i)}if(!i)throw new Error("unknown type <"+e.name+">");Q(i.superClass,n?r:s),t(i,!n),Q(i.traits,r)},re.prototype.getEffectiveDescriptor=function(e){var t=ie(e),n=new oe(t);this.mapTypes(t,(function(e,t){n.addTrait(e,t)}));var i=n.build();return this.definePackage(i,i.allTypes[i.allTypes.length-1].$pkg),i},re.prototype.definePackage=function(e,t){this.properties.define(e,"$pkg",{value:t})},ae.prototype.set=function(e,t,n){if(!F(t)||!t.length)throw new TypeError("property name must be a non-empty string");var i=this.model.getPropertyDescriptor(e,t),o=i&&i.name;void 0===n?i?delete e[o]:delete e.$attrs[t]:i?o in e?e[o]=n:le(e,i,n):e.$attrs[t]=n},ae.prototype.get=function(e,t){var n=this.model.getPropertyDescriptor(e,t);if(!n)return e.$attrs[t];var i=n.name;return!e[i]&&n.isMany&&le(e,n,[]),e[i]},ae.prototype.define=function(e,t,n){if(!n.writable){var i=n.value;delete(n=K({},n,{get:function(){return i}})).value}Object.defineProperty(e,t,n)},ae.prototype.defineDescriptor=function(e,t){this.define(e,"$descriptor",{value:t})},ae.prototype.defineModel=function(e,t){this.define(e,"$model",{value:t})},ce.prototype.create=function(e,t){var n=this.getType(e);if(!n)throw new Error("unknown type <"+e+">");return new n(t)},ce.prototype.getType=function(e){var t=this.typeCache,n=F(e)?e:e.ns.name,i=t[n];return i||(e=this.registry.getEffectiveDescriptor(n),i=t[n]=this.factory.createType(e)),i},ce.prototype.createAny=function(e,t,n){var i=ie(e),o={$type:e,$instanceOf:function(e){return e===this.$type}},r={name:e,isGeneric:!0,ns:{prefix:i.prefix,localName:i.localName,uri:t}};return this.properties.defineDescriptor(o,r),this.properties.defineModel(o,this),this.properties.define(o,"$parent",{enumerable:!1,writable:!0}),this.properties.define(o,"$instanceOf",{enumerable:!1,writable:!0}),Q(n,(function(e,t){var n;n=e,"[object Object]"===q.call(n)&&void 0!==e.value?o[e.name]=e.value:o[t]=e})),o},ce.prototype.getPackage=function(e){return this.registry.getPackage(e)},ce.prototype.getPackages=function(){return this.registry.getPackages()},ce.prototype.getElementDescriptor=function(e){return e.$descriptor},ce.prototype.hasType=function(e,t){return void 0===t&&(t=e,e=this),t in e.$model.getElementDescriptor(e).allTypesByName},ce.prototype.getPropertyDescriptor=function(e,t){return this.getElementDescriptor(e).propertiesByName[t]},ce.prototype.getTypeDescriptor=function(e){return this.registry.typeMap[e]};var ue=Object.prototype.toString,he=Object.prototype.hasOwnProperty;function de(e){return"[object Array]"===ue.call(e)}function pe(e){return"[object String]"===ue.call(e)}function fe(e,t){return he.call(e,t)}function ge(e,t){var n;return t=ye(t),ve(e,(function(e,i){if(t(e,i))return n=e,!1})),n}function me(e,t){var n=[];return ve(e,(function(e,i){t(e,i)&&n.push(e)})),n}function ve(e,t){var n;if(void 0!==e){var i=de(e)?be:xe;for(var o in e)if(fe(e,o)&&!1===t(n=e[o],i(o)))return n}}function ye(e){return t=e,"[object Function]"===(n=ue.call(t))||"[object AsyncFunction]"===n||"[object GeneratorFunction]"===n||"[object AsyncGeneratorFunction]"===n||"[object Proxy]"===n?e:function(t){return t===e};var t,n}function xe(e){return e}function be(e){return Number(e)}function _e(){return _e=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e},_e.apply(this,arguments)}function we(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),i=1;i<t;i++)n[i-1]=arguments[i];return _e.apply(void 0,[e].concat(n))}var Ce=String.fromCharCode,Oe=Object.prototype.hasOwnProperty,ke=/&#(\d+);|&#x([0-9a-f]+);|&(\w+);/gi,Ee={amp:"&",apos:"'",gt:">",lt:"<",quot:'"'};function Se(e,t,n,i){return i?Oe.call(Ee,i)?Ee[i]:"&"+i+";":Ce(t||parseInt(n,16))}function Re(e){return e.length>3&&-1!==e.indexOf("&")?e.replace(ke,Se):e}Object.keys(Ee).forEach((function(e){Ee[e.toUpperCase()]=Ee[e]}));var Te="xsi:type",Me="non-whitespace outside of root node";function Ae(e){return new Error(e)}function Pe(e){return"missing namespace for prefix <"+e+">"}function De(e){return{get:e,enumerable:!0}}function $e(e){var t,n={};for(t in e)n[t]=e[t];return n}function je(e){return e+"$uri"}function Ie(){return{line:0,column:0}}function Be(e){throw e}function Le(e){if(!this)return new Le(e);var t,n,i,o,r,s,a,l,c,u=e&&e.proxy,h=Be,d=Ie,p=!1,f=!1,g=null,m=!1;function v(e){e instanceof Error||(e=Ae(e)),g=e,h(e,d)}function y(e){r&&(e instanceof Error||(e=Ae(e)),r(e,d))}this.on=function(e,c){if("function"!=typeof c)throw Ae("required args <name, cb>");switch(e){case"openTag":n=c;break;case"text":t=c;break;case"closeTag":i=c;break;case"error":h=c;break;case"warn":r=c;break;case"cdata":o=c;break;case"attention":l=c;break;case"question":a=c;break;case"comment":s=c;break;default:throw Ae("unsupported event: "+e)}return this},this.ns=function(e){if(void 0===e&&(e={}),"object"!=typeof e)throw Ae("required args <nsMap={}>");var t,n={};for(t in e)n[t]=e[t];return n["http://www.w3.org/2001/XMLSchema-instance"]="xsi",f=!0,c=n,this},this.parse=function(e){if("string"!=typeof e)throw Ae("required args <xml=string>");return g=null,function(e){var r,h,g,x,b,_,w,C,O,k,E,S=f?[]:null,R=f?function(e){var t,n,i={};for(t in e)i[n=e[t]]=n,i[je(n)]=t;return i}(c):null,T=[],M=0,A=!1,P=!1,D=0,$=0,j="",I=0;function B(){if(null!==E)return E;var e,t,n,i,o,r,s,a,l,u,h,d=f&&R.xmlns,g=f&&p?[]:null,m=I,v=j,x=v.length,b={},_={};e:for(;m<x;m++)if(l=!1,!(32===(u=v.charCodeAt(m))||u<14&&u>8)){for((u<65||u>122||u>90&&u<97)&&95!==u&&58!==u&&(y("illegal first char attribute name"),l=!0),h=m+1;h<x;h++)if(!((u=v.charCodeAt(h))>96&&u<123||u>64&&u<91||u>47&&u<59||46===u||45===u||95===u)){if(32===u||u<14&&u>8){y("missing attribute value"),m=h;continue e}if(61===u)break;y("illegal attribute name char"),l=!0}if("xmlns:xmlns"===(a=v.substring(m,h))&&(y("illegal declaration of xmlns"),l=!0),34===(u=v.charCodeAt(h+1)))-1===(h=v.indexOf('"',m=h+2))&&-1!==(h=v.indexOf("'",m))&&(y("attribute value quote missmatch"),l=!0);else if(39===u)-1===(h=v.indexOf("'",m=h+2))&&-1!==(h=v.indexOf('"',m))&&(y("attribute value quote missmatch"),l=!0);else for(y("missing attribute value quotes"),l=!0,h+=1;h<x&&!(32===(u=v.charCodeAt(h+1))||u<14&&u>8);h++);for(-1===h&&(y("missing closing quotes"),h=x,l=!0),l||(r=v.substring(m,h)),m=h;h+1<x&&!(32===(u=v.charCodeAt(h+1))||u<14&&u>8);h++)m===h&&(y("illegal character after attribute end"),l=!0);if(m=h+1,!l)if(a in _)y("attribute <"+a+"> already defined");else if(_[a]=!0,f)if(p){if(null!==(o="xmlns"===a?"xmlns":120===a.charCodeAt(0)&&"xmlns:"===a.substr(0,6)?a.substr(6):null)){if(e=Re(r),t=je(o),!(s=c[e])){if("xmlns"===o||t in R&&R[t]!==e)do{s="ns"+M++}while(void 0!==R[s]);else s=o;c[e]=s}R[o]!==s&&(i||(R=$e(R),i=!0),R[o]=s,"xmlns"===o&&(R[je(s)]=e,d=s),R[t]=e),b[a]=r;continue}g.push(a,r)}else-1!==(u=a.indexOf(":"))?(n=R[a.substring(0,u)])?((a=d===n?a.substr(u+1):n+a.substr(u))===Te&&(-1!==(u=r.indexOf(":"))?(n=r.substring(0,u),r=(n=R[n]||n)+r.substring(u)):r=d+":"+r),b[a]=r):y(Pe(a.substring(0,u))):b[a]=r;else b[a]=r}if(p)for(m=0,x=g.length;m<x;m++){if(a=g[m++],r=g[m],-1!==(u=a.indexOf(":"))){if(!(n=R[a.substring(0,u)])){y(Pe(a.substring(0,u)));continue}(a=d===n?a.substr(u+1):n+a.substr(u))===Te&&(-1!==(u=r.indexOf(":"))?(n=r.substring(0,u),r=(n=R[n]||n)+r.substring(u)):r=d+":"+r)}b[a]=r}return E=b}function L(){for(var t,n,i=/(\r\n|\r|\n)/g,o=0,r=0,s=0,a=$;D>=s&&(t=i.exec(e))&&!((a=t[0].length+t.index)>D);)o+=1,s=a;return-1==D?(r=a,n=e.substring($)):0===$?n=e.substring($,D):(r=D-s,n=-1==$?e.substring(D):e.substring(D,$+1)),{data:n,line:o,column:r}}d=L,u&&(k=Object.create({},{name:De((function(){return C})),originalName:De((function(){return O})),attrs:De(B),ns:De((function(){return R}))}));for(;-1!==$;){if(-1===(D=60===e.charCodeAt($)?$:e.indexOf("<",$)))return T.length?v("unexpected end of file"):0===$?v("missing start tag"):void($<e.length&&e.substring($).trim()&&y(Me));if($!==D)if(T.length){if(t&&(t(e.substring($,D),Re,d),m))return}else if(e.substring($,D).trim()&&(y(Me),m))return;if(33===(b=e.charCodeAt(D+1))){if(91===(x=e.charCodeAt(D+2))&&"CDATA["===e.substr(D+3,6)){if(-1===($=e.indexOf("]]>",D)))return v("unclosed cdata");if(o&&(o(e.substring(D+9,$),d),m))return;$+=3;continue}if(45===x&&45===e.charCodeAt(D+3)){if(-1===($=e.indexOf("--\x3e",D)))return v("unclosed comment");if(s&&(s(e.substring(D+4,$),Re,d),m))return;$+=3;continue}}if(63!==b){for(h=D+1;;h++){if(_=e.charCodeAt(h),isNaN(_))return $=-1,v("unclosed tag");if(34===_)h=-1!==(x=e.indexOf('"',h+1))?x:h;else if(39===_)h=-1!==(x=e.indexOf("'",h+1))?x:h;else if(62===_){$=h;break}}if(33!==b){if(E={},47===b){if(A=!1,P=!0,!T.length)return v("missing open tag");if(h=C=T.pop(),x=D+2+h.length,e.substring(D+2,x)!==h)return v("closing tag mismatch");for(;x<$;x++)if(!(32===(b=e.charCodeAt(x))||b>8&&b<14))return v("close tag")}else{if(47===e.charCodeAt($-1)?(h=C=e.substring(D+1,$-1),A=!0,P=!0):(h=C=e.substring(D+1,$),A=!0,P=!1),!(b>96&&b<123||b>64&&b<91||95===b||58===b))return v("illegal first char nodeName");for(x=1,g=h.length;x<g;x++)if(!((b=h.charCodeAt(x))>96&&b<123||b>64&&b<91||b>47&&b<59||45===b||95===b||46==b)){if(32===b||b<14&&b>8){C=h.substring(0,x),E=null;break}return v("invalid nodeName")}P||T.push(C)}if(f){if(r=R,A&&(P||S.push(r),null===E&&(p=-1!==h.indexOf("xmlns",x))&&(I=x,j=h,B(),p=!1)),O=C,-1!==(b=C.indexOf(":"))){if(!(w=R[C.substring(0,b)]))return v("missing namespace on <"+O+">");C=C.substr(b+1)}else w=R.xmlns;w&&(C=w+":"+C)}if(A&&(I=x,j=h,n&&(u?n(k,Re,P,d):n(C,B,Re,P,d),m)))return;if(P){if(i&&(i(u?k:C,Re,A,d),m))return;f&&(R=A?r:S.pop())}$+=1}else{if(l&&(l(e.substring(D,$+1),Re,d),m))return;$+=1}}else{if(-1===($=e.indexOf("?>",D)))return v("unclosed question");if(a&&(a(e.substring(D,$+2),d),m))return;$+=2}}}(e),d=Ie,m=!1,g},this.stop=function(){m=!0}}function Ne(e){return e.xml&&"lowerCase"===e.xml.tagAlias}var qe={xsi:"http://www.w3.org/2001/XMLSchema-instance",xml:"http://www.w3.org/XML/1998/namespace"},Ve="xsi:type";function Fe(e){return e.xml&&e.xml.serialize}function ze(e){return Fe(e)===Ve}function Qe(e,t){return Ne(t)?e.prefix+":"+((n=e.localName).charAt(0).toUpperCase()+n.slice(1)):e.name;var n}function He(e){return new Error(e)}function We(e){return e.$descriptor}function Ue(e){we(this,e),this.elementsById={},this.references=[],this.warnings=[],this.addReference=function(e){this.references.push(e)},this.addElement=function(e){if(!e)throw He("expected element");var t,n=this.elementsById,i=We(e).idProperty;if(i&&(t=e.get(i.name))){if(!/^([a-z][\w-.]*:)?[a-z_][\w-.]*$/i.test(t))throw new Error("illegal ID <"+t+">");if(n[t])throw He("duplicate ID <"+t+">");n[t]=e}},this.addWarning=function(e){this.warnings.push(e)}}function Xe(){}function Ke(){}function Ge(){}function Ye(e,t){this.property=e,this.context=t}function Ze(e,t){this.element=t,this.propertyDesc=e}function Je(){}function et(e,t,n){this.model=e,this.type=e.getType(t),this.context=n}function tt(e,t,n){et.call(this,e,t,n)}function nt(e,t,n){this.model=e,this.context=n}function it(e){e instanceof ce&&(e={model:e}),we(this,{lax:!1},e)}Xe.prototype.handleEnd=function(){},Xe.prototype.handleText=function(){},Xe.prototype.handleNode=function(){},Ke.prototype=Object.create(Xe.prototype),Ke.prototype.handleNode=function(){return this},Ge.prototype=Object.create(Xe.prototype),Ge.prototype.handleText=function(e){this.body=(this.body||"")+e},Ye.prototype=Object.create(Ge.prototype),Ye.prototype.handleNode=function(e){if(this.element)throw He("expected no sub nodes");return this.element=this.createReference(e),this},Ye.prototype.handleEnd=function(){this.element.id=this.body},Ye.prototype.createReference=function(e){return{property:this.property.ns.name,id:""}},Ze.prototype=Object.create(Ge.prototype),Ze.prototype.handleEnd=function(){var e=this.body||"",t=this.element,n=this.propertyDesc;e=ee(n.type,e),n.isMany?t.get(n.name).push(e):t.set(n.name,e)},Je.prototype=Object.create(Ge.prototype),Je.prototype.handleNode=function(e){var t=this,n=this.element;return n?t=this.handleChild(e):(n=this.element=this.createElement(e),this.context.addElement(n)),t},et.prototype=Object.create(Je.prototype),et.prototype.addReference=function(e){this.context.addReference(e)},et.prototype.handleText=function(e){if(!We(this.element).bodyProperty)throw He("unexpected body text <"+e+">");Ge.prototype.handleText.call(this,e)},et.prototype.handleEnd=function(){var e=this.body,t=this.element,n=We(t).bodyProperty;n&&void 0!==e&&(e=ee(n.type,e),t.set(n.name,e))},et.prototype.createElement=function(e){var t,n=e.attributes,i=this.type,o=We(i),r=this.context,s=new i({}),a=this.model;return ve(n,(function(e,n){var i=o.propertiesByName[n];i&&i.isReference?i.isMany?ve(e.split(" "),(function(e){r.addReference({element:s,property:i.ns.name,id:e})})):r.addReference({element:s,property:i.ns.name,id:e}):(i?e=ee(i.type,e):"xmlns"!==n&&(t=ie(n,o.ns.prefix),a.getPackage(t.prefix)&&r.addWarning({message:"unknown attribute <"+n+">",element:s,property:n,value:e})),s.set(n,e))})),s},et.prototype.getPropertyForNode=function(e){var t,n,i=ie(e.name),o=this.type,r=this.model,s=We(o),a=i.name,l=s.propertiesByName[a];if(l&&!l.isAttr)return ze(l)&&(t=e.attributes[Ve])?(t=function(e,t){var n=ie(e);return function(e,t){var n=e.name,i=e.localName,o=t.xml&&t.xml.typePrefix;return o&&0===i.indexOf(o)?e.prefix+":"+i.slice(o.length):n}(n,t.getPackage(n.prefix))}(t,r),we({},l,{effectiveType:We(n=r.getType(t)).name})):l;var c=r.getPackage(i.prefix);if(c){if(t=Qe(i,c),n=r.getType(t),l=ge(s.properties,(function(e){return!e.isVirtual&&!e.isReference&&!e.isAttribute&&n.hasType(e.type)})),l)return we({},l,{effectiveType:We(n).name})}else if(l=ge(s.properties,(function(e){return!e.isReference&&!e.isAttribute&&"Element"===e.type})),l)return l;throw He("unrecognized element <"+i.name+">")},et.prototype.toString=function(){return"ElementDescriptor["+We(this.type).name+"]"},et.prototype.valueHandler=function(e,t){return new Ze(e,t)},et.prototype.referenceHandler=function(e){return new Ye(e,this.context)},et.prototype.handler=function(e){return"Element"===e?new nt(this.model,e,this.context):new et(this.model,e,this.context)},et.prototype.handleChild=function(e){var t,n,i,o;if(t=this.getPropertyForNode(e),i=this.element,ne(n=t.effectiveType||t.type))return this.valueHandler(t,i);var r=(o=t.isReference?this.referenceHandler(t).handleNode(e):this.handler(n).handleNode(e)).element;return void 0!==r&&(t.isMany?i.get(t.name).push(r):i.set(t.name,r),t.isReference?(we(r,{element:i}),this.context.addReference(r)):r.$parent=i),o},tt.prototype=Object.create(et.prototype),tt.prototype.createElement=function(e){var t=e.name,n=ie(t),i=this.model,o=this.type,r=i.getPackage(n.prefix),s=r&&Qe(n,r)||t;if(!o.hasType(s))throw He("unexpected element <"+e.originalName+">");return et.prototype.createElement.call(this,e)},nt.prototype=Object.create(Je.prototype),nt.prototype.createElement=function(e){var t=e.name,n=ie(t).prefix,i=e.ns[n+"$uri"],o=e.attributes;return this.model.createAny(t,i,o)},nt.prototype.handleChild=function(e){var t=new nt(this.model,"Element",this.context).handleNode(e),n=this.element,i=t.element;return void 0!==i&&((n.$children=n.$children||[]).push(i),i.$parent=n),t},nt.prototype.handleEnd=function(){this.body&&(this.element.$body=this.body)},it.prototype.fromXML=function(e,t,n){var i=t.rootHandler;t instanceof et?(i=t,t={}):"string"==typeof t?(i=this.handler(t),t={}):"string"==typeof i&&(i=this.handler(i));var o=this.model,r=this.lax,s=new Ue(we({},t,{rootHandler:i})),a=new Le({proxy:!0}),l=function(){var e=[];return Object.defineProperty(e,"peek",{value:function(){return this[this.length-1]}}),e}();function c(e,t,n){var i=t(),o=i.line,r=i.column,a=i.data;"<"===a.charAt(0)&&-1!==a.indexOf(" ")&&(a=a.slice(0,a.indexOf(" "))+">");var l="unparsable content "+(a?a+" ":"")+"detected\n\tline: "+o+"\n\tcolumn: "+r+"\n\tnested error: "+e.message;if(n)return s.addWarning({message:l,error:e}),!0;throw He(l)}function u(e,t){return c(e,t,!0)}i.context=s,l.push(i);var h=/^<\?xml /i,d=/ encoding="([^"]+)"/i,p=/^utf-8$/i;function f(e,t){try{l.peek().handleText(e)}catch(e){u(e,t)}}var g=o.getPackages().reduce((function(e,t){return e[t.uri]=t.prefix,e}),{"http://www.w3.org/XML/1998/namespace":"xml"});return a.ns(g).on("openTag",(function(e,t,n,i){var o=e.attrs||{},s=Object.keys(o).reduce((function(e,n){var i=t(o[n]);return e[n]=i,e}),{});!function(e,t){var n=l.peek();try{l.push(n.handleNode(e))}catch(e){c(e,t,r)&&l.push(new Ke)}}({name:e.name,originalName:e.originalName,attributes:s,ns:e.ns},i)})).on("question",(function(e){if(h.test(e)){var t=d.exec(e),n=t&&t[1];n&&!p.test(n)&&s.addWarning({message:"unsupported document encoding <"+n+">, falling back to UTF-8"})}})).on("closeTag",(function(){l.pop().handleEnd()})).on("cdata",f).on("text",(function(e,t,n){!function(e,t){e.trim()&&f(e,t)}(t(e),n)})).on("error",c).on("warn",u),new Promise((function(t,n){var o;try{a.parse(e),function(){var e,t,n=s.elementsById,i=s.references;for(e=0;t=i[e];e++){var o=t.element,r=n[t.id],a=We(o).propertiesByName[t.property];if(r||s.addWarning({message:"unresolved reference <"+t.id+">",element:t.element,property:t.property,value:t.id}),a.isMany){var l=o.get(a.name),c=l.indexOf(t);-1===c&&(c=l.length),r?l[c]=r:l.splice(c,1)}else o.set(a.name,r)}}()}catch(e){o=e}var r=i.element;o||r||(o=He("failed to parse document as <"+i.type.$descriptor.name+">"));var l=s.warnings,c=s.references,u=s.elementsById;return o?(o.warnings=l,n(o)):t({rootElement:r,elementsById:u,references:c,warnings:l})}))},it.prototype.handler=function(e){return new tt(this.model,e)};var ot=/<|>|'|"|&|\n\r|\n/g,rt=/<|>|&/g;function st(e){var t={},n={},i={},o=[],r=[];this.byUri=function(t){return n[t]||e&&e.byUri(t)},this.add=function(e,t){n[e.uri]=e,t?o.push(e):r.push(e),this.mapPrefix(e.prefix,e.uri)},this.uriByPrefix=function(e){return t[e||"xmlns"]},this.mapPrefix=function(e,n){t[e||"xmlns"]=n},this.getNSKey=function(e){return void 0!==e.prefix?e.uri+"|"+e.prefix:e.uri},this.logUsed=function(t){var n=t.uri,o=this.getNSKey(t);i[o]=this.byUri(n),e&&e.logUsed(t)},this.getUsed=function(e){var t=this;return[].concat(o,r).filter((function(e){var n=t.getNSKey(e);return i[n]}))}}function at(e,t){return Ne(t)?function(e){return e.charAt(0).toLowerCase()+e.slice(1)}(e):e}function lt(e,t){e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}})}function ct(e){return pe(e)?e:(e.prefix?e.prefix+":":"")+e.localName}var ut={"\n":"#10","\n\r":"#10",'"':"#34","'":"#39","<":"#60",">":"#62","&":"#38"},ht={"<":"lt",">":"gt","&":"amp"};function dt(e,t,n){return(e=pe(e)?e:""+e).replace(t,(function(e){return"&"+n[e]+";"}))}function pt(e){this.tagName=e}function ft(){}function gt(e){this.tagName=e}function mt(e,t){this.body=[],this.attrs=[],this.parent=e,this.propertyDescriptor=t}function vt(e,t){mt.call(this,e,t)}function yt(){this.value="",this.write=function(e){this.value+=e}}function xt(e,t){var n=[""];this.append=function(t){return e.write(t),this},this.appendNewLine=function(){return t&&e.write("\n"),this},this.appendIndent=function(){return t&&e.write(n.join(" ")),this},this.indent=function(){return n.push(""),this},this.unindent=function(){return n.pop(),this}}function bt(e){return e=we({format:!1,preamble:!0},e||{}),{toXML:function(t,n){var i=n||new yt,o=new xt(i,e.format);if(e.preamble&&o.append('<?xml version="1.0" encoding="UTF-8"?>\n'),(new mt).build(t).serializeTo(o),!n)return i.value}}}function _t(e,t){ce.call(this,e,t)}pt.prototype.build=function(e){return this.element=e,this},pt.prototype.serializeTo=function(e){e.appendIndent().append("<"+this.tagName+">"+this.element.id+"</"+this.tagName+">").appendNewLine()},ft.prototype.serializeValue=ft.prototype.serializeTo=function(e){e.append(this.escape?dt(this.value,rt,ht):this.value)},ft.prototype.build=function(e,t){return this.value=t,"String"===e.type&&-1!==t.search(rt)&&(this.escape=!0),this},lt(gt,ft),gt.prototype.serializeTo=function(e){e.appendIndent().append("<"+this.tagName+">"),this.serializeValue(e),e.append("</"+this.tagName+">").appendNewLine()},mt.prototype.build=function(e){this.element=e;var t,n,i=e.$descriptor,o=this.propertyDescriptor,r=i.isGeneric;return t=r?this.parseGeneric(e):this.parseNsAttributes(e),this.ns=o?this.nsPropertyTagName(o):this.nsTagName(i),this.tagName=this.addTagName(this.ns),r||(n=function(e){return me(e.$descriptor.properties,(function(t){var n=t.name;if(t.isVirtual)return!1;if(!fe(e,n))return!1;var i=e[n];return i!==t.default&&null!==i&&(!t.isMany||i.length)}))}(e),this.parseAttributes(function(e){return me(e,(function(e){return e.isAttr}))}(n)),this.parseContainments(function(e){return me(e,(function(e){return!e.isAttr}))}(n))),this.parseGenericAttributes(e,t),this},mt.prototype.nsTagName=function(e){return function(e,t){return t.isGeneric?we({localName:t.ns.localName},e):we({localName:at(t.ns.localName,t.$pkg)},e)}(this.logNamespaceUsed(e.ns),e)},mt.prototype.nsPropertyTagName=function(e){return function(e,t){return we({localName:t.ns.localName},e)}(this.logNamespaceUsed(e.ns),e)},mt.prototype.isLocalNs=function(e){return e.uri===this.ns.uri},mt.prototype.nsAttributeName=function(e){var t;if(t=pe(e)?ie(e):e.ns,e.inherited)return{localName:t.localName};var n=this.logNamespaceUsed(t);return this.getNamespaces().logUsed(n),this.isLocalNs(n)?{localName:t.localName}:we({localName:t.localName},n)},mt.prototype.parseGeneric=function(e){var t=this,n=this.body,i=[];return ve(e,(function(o,r){"$body"===r?n.push((new ft).build({type:"String"},o)):"$children"===r?ve(o,(function(e){n.push(new mt(t).build(e))})):0!==r.indexOf("$")&&t.parseNsAttribute(e,r,o)&&i.push({name:r,value:o})})),i},mt.prototype.parseNsAttribute=function(e,t,n){var i,o=e.$model,r=ie(t);if("xmlns"===r.prefix&&(i={prefix:r.localName,uri:n}),r.prefix||"xmlns"!==r.localName||(i={uri:n}),!i)return{name:t,value:n};if(o&&o.getPackage(n))this.logNamespace(i,!0,!0);else{var s=this.logNamespaceUsed(i,!0);this.getNamespaces().logUsed(s)}},mt.prototype.parseNsAttributes=function(e,t){var n=this,i=e.$attrs,o=[];return ve(i,(function(t,i){var r=n.parseNsAttribute(e,i,t);r&&o.push(r)})),o},mt.prototype.parseGenericAttributes=function(e,t){var n=this;ve(t,(function(t){if(t.name!==Ve)try{n.addAttribute(n.nsAttributeName(t.name),t.value)}catch(n){console.warn("missing namespace information for ",t.name,"=",t.value,"on",e,n)}}))},mt.prototype.parseContainments=function(e){var t=this,n=this.body,i=this.element;ve(e,(function(e){var o=i.get(e.name),r=e.isReference;if(e.isMany||(o=[o]),e.isBody)n.push((new ft).build(e,o[0]));else if(ne(e.type))ve(o,(function(i){n.push(new gt(t.addTagName(t.nsPropertyTagName(e))).build(e,i))}));else if(r)ve(o,(function(i){n.push(new pt(t.addTagName(t.nsPropertyTagName(e))).build(i))}));else{var s=ze(e),a=function(e){return"property"===Fe(e)}(e);ve(o,(function(i){var o;o=s?new vt(t,e):a?new mt(t,e):new mt(t),n.push(o.build(i))}))}}))},mt.prototype.getNamespaces=function(e){var t,n=this.namespaces,i=this.parent;return n||(t=i&&i.getNamespaces(),e||!t?this.namespaces=n=new st(t):n=t),n},mt.prototype.logNamespace=function(e,t,n){var i=this.getNamespaces(n),o=e.uri,r=e.prefix;return i.byUri(o)&&!n||i.add(e,t),i.mapPrefix(r,o),e},mt.prototype.logNamespaceUsed=function(e,t){var n,i,o,r=this.element.$model,s=this.getNamespaces(t),a=e.prefix,l=e.uri;if(!a&&!l)return{localName:e.localName};if(o=qe[a]||r&&(r.getPackage(a)||{}).uri,!(l=l||o||s.uriByPrefix(a)))throw new Error("no namespace uri given for prefix <"+a+">");if(!(e=s.byUri(l))){for(n=a,i=1;s.uriByPrefix(n);)n=a+"_"+i++;e=this.logNamespace({prefix:n,uri:l},o===l)}return a&&s.mapPrefix(a,l),e},mt.prototype.parseAttributes=function(e){var t=this,n=this.element;ve(e,(function(e){var i=n.get(e.name);if(e.isReference)if(e.isMany){var o=[];ve(i,(function(e){o.push(e.id)})),i=o.join(" ")}else i=i.id;t.addAttribute(t.nsAttributeName(e),i)}))},mt.prototype.addTagName=function(e){var t=this.logNamespaceUsed(e);return this.getNamespaces().logUsed(t),ct(e)},mt.prototype.addAttribute=function(e,t){var n=this.attrs;pe(t)&&(t=dt(t,ot,ut));var i=function(e,t){t=ye(t);var n=de(e)?-1:void 0;return ve(e,(function(e,i){if(t(e,i))return n=i,!1})),n}(n,(function(t){return t.name.localName===e.localName&&t.name.uri===e.uri&&t.name.prefix===e.prefix})),o={name:e,value:t};-1!==i?n.splice(i,1,o):n.push(o)},mt.prototype.serializeAttributes=function(e){var t=this.attrs,n=this.namespaces;n&&(t=function(e){return e.getUsed().filter((function(e){return"xml"!==e.prefix})).map((function(e){return{name:"xmlns"+(e.prefix?":"+e.prefix:""),value:e.uri}}))}(n).concat(t)),ve(t,(function(t){e.append(" ").append(ct(t.name)).append('="').append(t.value).append('"')}))},mt.prototype.serializeTo=function(e){var t=this.body[0],n=t&&t.constructor!==ft;e.appendIndent().append("<"+this.tagName),this.serializeAttributes(e),e.append(t?">":" />"),t&&(n&&e.appendNewLine().indent(),ve(this.body,(function(t){t.serializeTo(e)})),n&&e.unindent().appendIndent(),e.append("</"+this.tagName+">")),e.appendNewLine()},lt(vt,mt),vt.prototype.parseNsAttributes=function(e){var t=mt.prototype.parseNsAttributes.call(this,e),n=e.$descriptor;if(n.name===this.propertyDescriptor.type)return t;var i=this.typeNs=this.nsTagName(n);this.getNamespaces().logUsed(this.typeNs);var o=e.$model.getPackage(i.uri),r=o.xml&&o.xml.typePrefix||"";return this.addAttribute(this.nsAttributeName(Ve),(i.prefix?i.prefix+":":"")+r+n.ns.localName),t},vt.prototype.isLocalNs=function(e){return e.uri===(this.typeNs||this.ns).uri},_t.prototype=Object.create(ce.prototype),_t.prototype.fromXML=function(e,t,n){var i;i=t,"[object String]"!==B.call(i)&&(n=t,t="dmn:Definitions");var o=new it(N({model:this,lax:!0},n)),r=o.handler(t);return o.fromXML(e,r)},_t.prototype.toXML=function(e,t){var n=new bt(t);return new Promise((function(t,i){try{return t({xml:n.toXML(e)})}catch(e){return i(e)}}))};var wt={dc:{name:"DC",prefix:"dc",uri:"http://www.omg.org/spec/DMN/20180521/DC/",types:[{name:"Dimension",properties:[{name:"width",isAttr:!0,type:"Real"},{name:"height",isAttr:!0,type:"Real"}]},{name:"Bounds",properties:[{name:"height",isAttr:!0,type:"Real"},{name:"width",isAttr:!0,type:"Real"},{name:"x",isAttr:!0,type:"Real"},{name:"y",isAttr:!0,type:"Real"}]},{name:"Point",properties:[{name:"x",isAttr:!0,type:"Real"},{name:"y",isAttr:!0,type:"Real"}]},{name:"Color",properties:[{name:"red",type:"UML_Standard_Profile.mdzip:eee_1045467100323_917313_65"},{name:"green",type:"UML_Standard_Profile.mdzip:eee_1045467100323_917313_65"},{name:"blue",type:"UML_Standard_Profile.mdzip:eee_1045467100323_917313_65"}]}],associations:[],enumerations:[{name:"AlignmentKind",literalValues:[{name:"start"},{name:"center"},{name:"end"}]}]},di:{name:"DI",prefix:"di",uri:"http://www.omg.org/spec/DMN/20180521/DI/",types:[{name:"DiagramElement",isAbstract:!0,properties:[{name:"extension",type:"Extension"},{name:"id",isAttr:!0,isId:!0,type:"String"},{name:"style",isReference:!0,type:"Style",xml:{serialize:"property"}},{name:"sharedStyle",isReference:!0,isVirtual:!0,type:"Style"}]},{name:"Diagram",superClass:["DiagramElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"documentation",isAttr:!0,type:"String"},{name:"resolution",isAttr:!0,type:"Real"}]},{name:"Shape",isAbstract:!0,properties:[{name:"bounds",type:"dc:Bounds"}],superClass:["DiagramElement"]},{name:"Edge",isAbstract:!0,properties:[{name:"waypoint",type:"dc:Point",isMany:!0,xml:{serialize:"property"}}],superClass:["DiagramElement"]},{name:"Style",isAbstract:!0,properties:[{name:"id",isAttr:!0,isId:!0,type:"String"}]},{name:"Extension",properties:[{name:"values",isMany:!0,type:"Element"}]}],associations:[],enumerations:[],xml:{tagAlias:"lowerCase"}},dmn:{name:"DMN",prefix:"dmn",uri:"https://www.omg.org/spec/DMN/20191111/MODEL/",types:[{name:"AuthorityRequirement",superClass:["DMNElement"],properties:[{name:"requiredAuthority",type:"DMNElementReference",xml:{serialize:"property"}},{name:"requiredDecision",type:"DMNElementReference",xml:{serialize:"property"}},{name:"requiredInput",type:"DMNElementReference",xml:{serialize:"property"}}]},{name:"ItemDefinition",superClass:["NamedElement"],properties:[{name:"typeRef",type:"String"},{name:"allowedValues",type:"UnaryTests",xml:{serialize:"property"}},{name:"typeLanguage",type:"String",isAttr:!0},{name:"itemComponent",type:"ItemDefinition",isMany:!0,xml:{serialize:"property"}},{name:"functionItem",type:"FunctionItem"},{name:"isCollection",isAttr:!0,type:"Boolean"}]},{name:"Definitions",superClass:["NamedElement"],properties:[{name:"import",type:"Import",isMany:!0},{name:"itemDefinition",type:"ItemDefinition",isMany:!0},{name:"drgElement",type:"DRGElement",isMany:!0},{name:"artifact",type:"Artifact",isMany:!0},{name:"elementCollection",type:"ElementCollection",isMany:!0},{name:"businessContextElement",type:"BusinessContextElement",isMany:!0},{name:"namespace",type:"String",isAttr:!0},{name:"expressionLanguage",type:"String",isAttr:!0},{name:"typeLanguage",type:"String",isAttr:!0},{name:"exporter",isAttr:!0,type:"String"},{name:"exporterVersion",isAttr:!0,type:"String"},{name:"dmnDI",type:"dmndi:DMNDI"}]},{name:"KnowledgeSource",superClass:["DRGElement"],properties:[{name:"authorityRequirement",type:"AuthorityRequirement",isMany:!0},{name:"type",type:"String"},{name:"owner",type:"DMNElementReference",xml:{serialize:"property"}},{name:"locationURI",type:"String",isAttr:!0}]},{name:"DecisionRule",superClass:["DMNElement"],properties:[{name:"inputEntry",type:"UnaryTests",isMany:!0,xml:{serialize:"property"}},{name:"outputEntry",type:"LiteralExpression",isMany:!0,xml:{serialize:"property"}},{name:"annotationEntry",type:"RuleAnnotation",isMany:!0,xml:{serialize:"property"}}]},{name:"Expression",isAbstract:!0,superClass:["DMNElement"],properties:[{name:"typeRef",isAttr:!0,type:"String"}]},{name:"InformationItem",superClass:["NamedElement"],properties:[{name:"typeRef",isAttr:!0,type:"String"}]},{name:"Decision",superClass:["DRGElement"],properties:[{name:"question",type:"String",xml:{serialize:"property"}},{name:"allowedAnswers",type:"String",xml:{serialize:"property"}},{name:"variable",type:"InformationItem",xml:{serialize:"property"}},{name:"informationRequirement",type:"InformationRequirement",isMany:!0},{name:"knowledgeRequirement",type:"KnowledgeRequirement",isMany:!0},{name:"authorityRequirement",type:"AuthorityRequirement",isMany:!0},{name:"supportedObjective",isMany:!0,type:"DMNElementReference",xml:{serialize:"property"}},{name:"impactedPerformanceIndicator",type:"DMNElementReference",isMany:!0,xml:{serialize:"property"}},{name:"decisionMaker",type:"DMNElementReference",isMany:!0,xml:{serialize:"property"}},{name:"decisionOwner",type:"DMNElementReference",isMany:!0,xml:{serialize:"property"}},{name:"usingProcess",isMany:!0,type:"DMNElementReference",xml:{serialize:"property"}},{name:"usingTask",isMany:!0,type:"DMNElementReference",xml:{serialize:"property"}},{name:"decisionLogic",type:"Expression"}]},{name:"Invocation",superClass:["Expression"],properties:[{name:"calledFunction",type:"Expression"},{name:"binding",type:"Binding",isMany:!0}]},{name:"OrganisationalUnit",superClass:["BusinessContextElement"],properties:[{name:"decisionMade",type:"Decision",isReference:!0,isMany:!0},{name:"decisionOwned",type:"Decision",isReference:!0,isMany:!0}]},{name:"Import",superClass:["NamedElement"],properties:[{name:"importType",type:"String",isAttr:!0},{name:"locationURI",type:"String",isAttr:!0},{name:"namespace",type:"String",isAttr:!0}]},{name:"InformationRequirement",superClass:["DMNElement"],properties:[{name:"requiredDecision",type:"DMNElementReference",xml:{serialize:"property"}},{name:"requiredInput",type:"DMNElementReference",xml:{serialize:"property"}}]},{name:"ElementCollection",superClass:["NamedElement"],properties:[{name:"drgElement",type:"DMNElementReference",isMany:!0,xml:{serialize:"property"}}]},{name:"DRGElement",isAbstract:!0,superClass:["NamedElement"],properties:[]},{name:"InputData",superClass:["DRGElement"],properties:[{name:"variable",type:"InformationItem",xml:{serialize:"property"}}]},{name:"DMNElement",isAbstract:!0,properties:[{name:"description",type:"String"},{name:"extensionElements",type:"ExtensionElements"},{name:"id",type:"String",isAttr:!0,isId:!0},{name:"extensionAttribute",type:"ExtensionAttribute",isMany:!0},{name:"label",isAttr:!0,type:"String"}]},{name:"InputClause",superClass:["DMNElement"],properties:[{name:"inputExpression",type:"LiteralExpression",xml:{serialize:"property"}},{name:"inputValues",type:"UnaryTests",xml:{serialize:"property"}}]},{name:"DecisionTable",superClass:["Expression"],properties:[{name:"input",type:"InputClause",isMany:!0,xml:{serialize:"property"}},{name:"output",type:"OutputClause",isMany:!0,xml:{serialize:"property"}},{name:"annotation",type:"RuleAnnotationClause",isMany:!0,xml:{serialize:"property"}},{name:"rule",type:"DecisionRule",isMany:!0,xml:{serialize:"property"}},{name:"hitPolicy",type:"HitPolicy",isAttr:!0,default:"UNIQUE"},{name:"aggregation",type:"BuiltinAggregator",isAttr:!0},{name:"preferredOrientation",type:"DecisionTableOrientation",isAttr:!0},{name:"outputLabel",isAttr:!0,type:"String"}]},{name:"LiteralExpression",superClass:["Expression"],properties:[{name:"expressionLanguage",type:"String",isAttr:!0},{name:"text",type:"String"},{name:"importedValues",type:"ImportedValues"}]},{name:"Binding",properties:[{name:"parameter",type:"InformationItem",xml:{serialize:"property"}},{name:"bindingFormula",type:"Expression"}]},{name:"KnowledgeRequirement",superClass:["DMNElement"],properties:[{name:"requiredKnowledge",type:"DMNElementReference",xml:{serialize:"property"}}]},{name:"BusinessKnowledgeModel",superClass:["Invocable"],properties:[{name:"encapsulatedLogic",type:"FunctionDefinition",xml:{serialize:"property"}},{name:"knowledgeRequirement",type:"KnowledgeRequirement",isMany:!0},{name:"authorityRequirement",type:"AuthorityRequirement",isMany:!0}]},{name:"BusinessContextElement",isAbstract:!0,superClass:["NamedElement"],properties:[{name:"URI",type:"String",isAttr:!0}]},{name:"PerformanceIndicator",superClass:["BusinessContextElement"],properties:[{name:"impactingDecision",type:"DMNElementReference",isMany:!0,xml:{serialize:"property"}}]},{name:"FunctionDefinition",superClass:["Expression"],properties:[{name:"formalParameter",type:"InformationItem",isMany:!0,xml:{serialize:"property"}},{name:"body",type:"Expression"},{name:"kind",type:"FunctionKind",isAttr:!0}]},{name:"Context",superClass:["Expression"],properties:[{name:"contextEntry",type:"ContextEntry",isMany:!0}]},{name:"ContextEntry",superClass:["DMNElement"],properties:[{name:"variable",type:"InformationItem",xml:{serialize:"property"}},{name:"value",type:"Expression"}]},{name:"List",superClass:["Expression"],properties:[{name:"elements",isMany:!0,type:"Expression"}]},{name:"Relation",superClass:["Expression"],properties:[{name:"column",type:"InformationItem",isMany:!0,xml:{serialize:"property"}},{name:"row",type:"List",isMany:!0,xml:{serialize:"property"}}]},{name:"OutputClause",superClass:["DMNElement"],properties:[{name:"outputValues",type:"UnaryTests",xml:{serialize:"property"}},{name:"defaultOutputEntry",type:"LiteralExpression",xml:{serialize:"property"}},{name:"name",isAttr:!0,type:"String"},{name:"typeRef",isAttr:!0,type:"String"}]},{name:"UnaryTests",superClass:["Expression"],properties:[{name:"text",type:"String"},{name:"expressionLanguage",type:"String",isAttr:!0}]},{name:"NamedElement",isAbstract:!0,superClass:["DMNElement"],properties:[{name:"name",isAttr:!0,type:"String"}]},{name:"ImportedValues",superClass:["Import"],properties:[{name:"importedElement",type:"String"},{name:"expressionLanguage",type:"String",isAttr:!0}]},{name:"DecisionService",superClass:["Invocable"],properties:[{name:"outputDecision",type:"DMNElementReference",isMany:!0,xml:{serialize:"property"}},{name:"encapsulatedDecision",type:"DMNElementReference",isMany:!0,xml:{serialize:"property"}},{name:"inputDecision",type:"DMNElementReference",isMany:!0,xml:{serialize:"property"}},{name:"inputData",type:"DMNElementReference",isMany:!0,xml:{serialize:"property"}}]},{name:"ExtensionElements",properties:[{name:"values",type:"Element",isMany:!0}]},{name:"ExtensionAttribute",properties:[{name:"value",type:"Element"},{name:"valueRef",type:"Element",isAttr:!0,isReference:!0},{name:"name",isAttr:!0,type:"String"}]},{name:"Element",isAbstract:!0,properties:[{name:"extensionAttribute",type:"ExtensionAttribute",isAttr:!0,isReference:!0},{name:"elements",type:"ExtensionElements",isAttr:!0,isReference:!0}]},{name:"Artifact",isAbstract:!0,superClass:["DMNElement"],properties:[]},{name:"Association",superClass:["Artifact"],properties:[{name:"sourceRef",type:"DMNElementReference",xml:{serialize:"property"}},{name:"targetRef",type:"DMNElementReference",xml:{serialize:"property"}},{name:"associationDirection",type:"AssociationDirection",isAttr:!0}]},{name:"TextAnnotation",superClass:["Artifact"],properties:[{name:"text",type:"String"},{name:"textFormat",isAttr:!0,type:"String",default:"text/plain"}]},{name:"RuleAnnotationClause",properties:[{name:"name",isAttr:!0,type:"String"}]},{name:"RuleAnnotation",properties:[{name:"text",type:"String"}]},{name:"Invocable",isAbstract:!0,superClass:["DRGElement"],properties:[{name:"variable",type:"InformationItem",xml:{serialize:"property"}}]},{name:"Group",superClass:["Artifact"],properties:[{name:"name",isAttr:!0,type:"String"}]},{name:"FunctionItem",superClass:["DMNElement"],properties:[{name:"parameters",isMany:!0,type:"InformationItem",xml:{serialize:"property"}},{name:"outputTypeRef",isAttr:!0,type:"String"}]},{name:"DMNElementReference",properties:[{isAttr:!0,name:"href",type:"String"}]}],enumerations:[{name:"HitPolicy",literalValues:[{name:"UNIQUE"},{name:"FIRST"},{name:"PRIORITY"},{name:"ANY"},{name:"COLLECT"},{name:"RULE ORDER"},{name:"OUTPUT ORDER"}]},{name:"BuiltinAggregator",literalValues:[{name:"SUM"},{name:"COUNT"},{name:"MIN"},{name:"MAX"}]},{name:"DecisionTableOrientation",literalValues:[{name:"Rule-as-Row"},{name:"Rule-as-Column"},{name:"CrossTable"}]},{name:"AssociationDirection",literalValues:[{name:"None"},{name:"One"},{name:"Both"}]},{name:"FunctionKind",literalValues:[{name:"FEEL"},{name:"Java"},{name:"PMML"}]}],associations:[],xml:{tagAlias:"lowerCase"}},dmndi:{name:"DMNDI",prefix:"dmndi",uri:"https://www.omg.org/spec/DMN/20191111/DMNDI/",types:[{name:"DMNDI",properties:[{name:"diagrams",type:"DMNDiagram",isMany:!0},{name:"styles",type:"DMNStyle",isMany:!0}]},{name:"DMNStyle",superClass:["di:Style"],properties:[{name:"fillColor",type:"dc:Color",isAttr:!0},{name:"strokeColor",type:"dc:Color",isAttr:!0},{name:"fontColor",type:"dc:Color",isAttr:!0},{name:"fontSize",isAttr:!0,type:"Real"},{name:"fontFamily",isAttr:!0,type:"String"},{name:"fontItalic",isAttr:!0,type:"Boolean"},{name:"fontBold",isAttr:!0,type:"Boolean"},{name:"fontUnderline",isAttr:!0,type:"Boolean"},{name:"fontStrikeThrough",isAttr:!0,type:"Boolean"},{name:"labelHorizontalAlignment",type:"dc:AlignmentKind",isAttr:!0},{name:"labelVerticalAlignment",type:"dc:AlignmentKind",isAttr:!0}]},{name:"DMNDiagram",superClass:["di:Diagram"],properties:[{name:"dmnElementRef",type:"dmn:DMNElement",isAttr:!0,isReference:!0},{name:"size",type:"Size"},{name:"localStyle",type:"DMNStyle",isVirtual:!0},{name:"sharedStyle",type:"DMNStyle",isVirtual:!0,isReference:!0,redefines:"di:DiagramElement#sharedStyle"},{name:"diagramElements",type:"DMNDiagramElement",isMany:!0}]},{name:"DMNDiagramElement",isAbstract:!0,superClass:["di:DiagramElement"],properties:[{name:"dmnElementRef",type:"dmn:DMNElement",isAttr:!0,isReference:!0},{name:"sharedStyle",type:"DMNStyle",isVirtual:!0,isReference:!0,redefines:"di:DiagramElement#sharedStyle"},{name:"localStyle",type:"DMNStyle",isVirtual:!0},{name:"label",type:"DMNLabel"}]},{name:"DMNLabel",superClass:["di:Shape"],properties:[{name:"text",type:"Text"}]},{name:"DMNShape",superClass:["di:Shape","DMNDiagramElement"],properties:[{name:"isListedInputData",isAttr:!0,type:"Boolean"},{name:"decisionServiceDividerLine",type:"DMNDecisionServiceDividerLine"},{name:"isCollapsed",isAttr:!0,type:"Boolean"}]},{name:"DMNEdge",superClass:["di:Edge","DMNDiagramElement"],properties:[{name:"sourceElement",type:"DMNDiagramElement",isAttr:!0,isReference:!0},{name:"targetElement",type:"DMNDiagramElement",isAttr:!0,isReference:!0}]},{name:"DMNDecisionServiceDividerLine",superClass:["di:Edge"]},{name:"Text",properties:[{name:"text",isBody:!0,type:"String"}]},{name:"Size",superClass:["dc:Dimension"]}],associations:[],enumerations:[]},biodi:{name:"bpmn.io DI for DMN",uri:"http://bpmn.io/schema/dmn/biodi/2.0",prefix:"biodi",xml:{tagAlias:"lowerCase"},types:[{name:"DecisionTable",isAbstract:!0,extends:["dmn:DecisionTable"],properties:[{name:"annotationsWidth",isAttr:!0,type:"Integer"}]},{name:"OutputClause",isAbstract:!0,extends:["dmn:OutputClause"],properties:[{name:"width",isAttr:!0,type:"Integer"}]},{name:"InputClause",isAbstract:!0,extends:["dmn:InputClause"],properties:[{name:"width",isAttr:!0,type:"Integer"}]}]}};function Ct(e,t){return new _t(N({},wt,e),t)}function Ot(e,t){return t.forEach((function(t){t&&"string"!=typeof t&&!Array.isArray(t)&&Object.keys(t).forEach((function(n){if("default"!==n&&!(n in e)){var i=Object.getOwnPropertyDescriptor(t,n);Object.defineProperty(e,n,i.get?i:{enumerable:!0,get:function(){return t[n]}})}}))})),Object.freeze(e)}const kt=Object.prototype.toString,Et=Object.prototype.hasOwnProperty;function St(e,t){return Et.call(e,t)}function Rt(e,t){let n,i;if(void 0===e)return;const o=function(e){return"[object Array]"===kt.call(e)}(e)?Mt:Tt;for(let r in e)if(St(e,r)&&(n=e[r],i=t(n,o(r)),!1===i))return n}function Tt(e){return e}function Mt(e){return Number(e)}function At(e,...t){const n=e.style;return Rt(t,(function(e){e&&Rt(e,(function(e,t){n[t]=e}))})),e}function Pt(e,t,n){return 2==arguments.length?e.getAttribute(t):null===n?e.removeAttribute(t):(e.setAttribute(t,n),e)}const Dt=Object.prototype.toString;function $t(e){return new jt(e)}function jt(e){if(!e||!e.nodeType)throw new Error("A DOM element reference is required");this.el=e,this.list=e.classList}function It(e){for(var t;t=e.firstChild;)e.removeChild(t);return e}function Bt(e,t,n){var i=n?e:e.parentNode;return i&&"function"==typeof i.closest&&i.closest(t)||null}jt.prototype.add=function(e){return this.list.add(e),this},jt.prototype.remove=function(e){return"[object RegExp]"==Dt.call(e)?this.removeMatching(e):(this.list.remove(e),this)},jt.prototype.removeMatching=function(e){const t=this.array();for(let n=0;n<t.length;n++)e.test(t[n])&&this.remove(t[n]);return this},jt.prototype.toggle=function(e,t){return void 0!==t?t!==this.list.toggle(e,t)&&this.list.toggle(e):this.list.toggle(e),this},jt.prototype.array=function(){return Array.from(this.list)},jt.prototype.has=jt.prototype.contains=function(e){return this.list.contains(e)};var Lt,Nt,qt,Vt={};function Ft(){Lt=window.addEventListener?"addEventListener":"attachEvent",Nt=window.removeEventListener?"removeEventListener":"detachEvent",qt="addEventListener"!==Lt?"on":""}var zt=Ot({__proto__:null,bind:Vt.bind=function(e,t,n,i){return Lt||Ft(),e[Lt](qt+t,n,i||!1),n},unbind:Vt.unbind=function(e,t,n,i){return Nt||Ft(),e[Nt](qt+t,n,i||!1),n},default:Vt},[Vt]),Qt=["focus","blur"];var Ht,Wt={bind:function(e,t,n,i,o){return-1!==Qt.indexOf(n)&&(o=!0),zt.bind(e,n,(function(n){var o=n.target||n.srcElement;n.delegateTarget=Bt(o,t,!0),n.delegateTarget&&i.call(e,n)}),o)},unbind:function(e,t,n,i){return-1!==Qt.indexOf(t)&&(i=!0),zt.unbind(e,t,n,i)}},Ut=function(e,t){if("string"!=typeof e)throw new TypeError("String expected");t||(t=document);var n=/<([\w:]+)/.exec(e);if(!n)return t.createTextNode(e);e=e.replace(/^\s+|\s+$/g,"");var i=n[1];if("body"==i){return(l=t.createElement("html")).innerHTML=e,l.removeChild(l.lastChild)}var o=Object.prototype.hasOwnProperty.call(Kt,i)?Kt[i]:Kt._default,r=o[0],s=o[1],a=o[2],l=t.createElement("div");l.innerHTML=s+e+a;for(;r--;)l=l.lastChild;if(l.firstChild==l.lastChild)return l.removeChild(l.firstChild);var c=t.createDocumentFragment();for(;l.firstChild;)c.appendChild(l.removeChild(l.firstChild));return c},Xt=!1;"undefined"!=typeof document&&((Ht=document.createElement("div")).innerHTML=' <link/><table></table><a href="/a">a</a><input type="checkbox"/>',Xt=!Ht.getElementsByTagName("link").length,Ht=void 0);var Kt={legend:[1,"<fieldset>","</fieldset>"],tr:[2,"<table><tbody>","</tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],_default:Xt?[1,"X<div>","</div>"]:[0,"",""]};Kt.td=Kt.th=[3,"<table><tbody><tr>","</tr></tbody></table>"],Kt.option=Kt.optgroup=[1,'<select multiple="multiple">',"</select>"],Kt.thead=Kt.tbody=Kt.colgroup=Kt.caption=Kt.tfoot=[1,"<table>","</table>"],Kt.polyline=Kt.ellipse=Kt.polygon=Kt.circle=Kt.text=Kt.line=Kt.path=Kt.rect=Kt.g=[1,'<svg xmlns="http://www.w3.org/2000/svg" version="1.1">',"</svg>"];var Gt=Ut;function Yt(e,t){return e&&"function"==typeof e.matches&&e.matches(t)||!1}function Zt(e,t){return(t=t||document).querySelector(e)}function Jt(e,t){return(t=t||document).querySelectorAll(e)}function en(e){e.parentNode&&e.parentNode.removeChild(e)}function tn(e){return function(){if(!window.Promise)throw new Error("Promises is not supported in this environment. Please polyfill Promise.");var t=arguments.length;if(!(t>=1&&l(arguments[t-1])))return e.apply(this,arguments);var n=arguments[t-1];console.warn(new Error("Passing callbacks to "+function(e){return e.replace("bound ","")}(e.name)+" is deprecated and will be removed in a future major release. Please switch to promises: https://bpmn.io/l/moving-to-promises.html"));var i=Array.prototype.slice.call(arguments,0,-1);e.apply(this,i).then((function(e){var t=Object.keys(e)[0];return n(null,e[t])}),(function(e){return n(e,e.warnings)}))}}const nn={width:"100%",height:"100%",position:"relative"};class on{constructor(e={}){this._eventBus=new j,this._viewsChanged=R(this._viewsChanged,0),this._views=[],this._viewers={},this.open=tn(this.open.bind(this)),this.importXML=tn(this.importXML.bind(this)),this.saveXML=tn(this.saveXML.bind(this)),this._init(e)}importXML(e,t){var n=this;return t=t||{open:!0},new Promise((function(o,r){var s=n._activeView;n._clear().then((()=>{var a;e=n._emit("import.parse.start",{xml:e})||e,n._moddle.fromXML(e,"dmn:Definitions").then((e=>{var l=e.rootElement,c=e.references,u=e.elementsById;if(a=e.warnings,l=n._emit("import.parse.complete",i({error:null,definitions:l,elementsById:u,references:c,warnings:a}))||l,n._setDefinitions(l),!t.open)return n._emit("import.done",{error:null,warnings:a}),void o({warnings:a});var h=n._getInitialView(n._views,s);if(!h){var d=new Error("no displayable contents");return n._emit("import.done",{error:d,warnings:a}),d.warnings=a,r(d)}n.open(h).then((e=>({warnings:e.warnings}))).catch((e=>({error:e,warnings:e.warnings}))).then((e=>{var t=[].concat(a,e.warnings);n._emit("import.done",{error:e.error,warnings:t}),e.error?(e.error.warnings=t,r(e.error)):o({warnings:t})}))})).catch((t=>(a=t.warnings,t=function(e,t){if("failed to parse document as <dmn:Definitions>"!==e.message)return null;var n=-1!==t.indexOf('"http://www.omg.org/spec/DMN/20151101/dmn.xsd"')?"1.1":-1!==t.indexOf('"http://www.omg.org/spec/DMN/20180521/MODEL/"')&&"1.2";if(!n)return null;return e=new Error("unsupported DMN "+n+" file detected; only DMN 1.3 files can be opened"),console.error("Cannot open what looks like a DMN "+n+" diagram. Please refer to https://bpmn.io/l/dmn-compatibility.html to learn how to make the toolkit compatible with older DMN files",e),e}(t,e)||function(e){var t=/unparsable content <([^>]+)> detected([\s\S]*)$/.exec(e.message);if(!t)return null;return e.message="unparsable content <"+t[1]+"> detected; this may indicate an invalid DMN 1.3 diagram file"+t[2],e}(t)||t,n._emit("import.parse.complete",i({error:t,warnings:a})),n._emit("import.done",{error:t,warnings:a}),t.warnings=a,r(t))))})).catch((e=>(n._emit("import.done",{error:e,warnings:[]}),e.warnings=[],r(e))))}));function i(e){var t=n._eventBus.createEvent(e);return Object.defineProperty(t,"context",{enumerable:!0,get:function(){return console.warn(new Error("import.parse.complete <context> is deprecated and will be removed in future library versions")),{warnings:e.warnings,references:e.references,elementsById:e.elementsById}}}),t}}getDefinitions(){return this._definitions}getActiveView(){return this._activeView}getActiveViewer(){var e=this.getActiveView();return e&&this._getViewer(e)}getView(e){return this._views.filter((function(t){return t.element===e}))[0]}getViews(){return this._views}saveXML(e){var t=this;e=e||{};var n=this._definitions;return new Promise((function(i,o){n?(n=t._emit("saveXML.start",{definitions:n})||n,t._moddle.toXML(n,e).then((function(e){var n=e.xml;return{xml:n=t._emit("saveXML.serialized",{xml:n})||n}})).catch((e=>({error:e}))).then((e=>{t._emit("saveXML.done",e),e.error?o(e.error):i({xml:e.xml})}))):o(new Error("no definitions loaded"))}))}on(...e){this._eventBus.on(...e)}off(...e){this._eventBus.off(...e)}once(...e){this._eventBus.once(...e)}attachTo(e){e.get&&e.constructor.prototype.jquery&&(e=e.get(0)),"string"==typeof e&&(e=Zt(e)),e.appendChild(this._container),this._emit("attach",{})}detach(){this._emit("detach",{}),en(this._container)}destroy(){Object.keys(this._viewers).forEach((e=>{ln(this._viewers[e],"destroy")})),en(this._container)}_init(e){this._options=e,this._moddle=this._createModdle(e),this._viewers={},this._views=[];const t=Gt('<div class="dmn-js-parent"></div>'),n=M({},nn,e);M(t.style,{width:rn(n.width),height:rn(n.height),position:n.position}),this._container=t,e.container&&this.attachTo(e.container)}_clear(){return this._switchView(null)}open(e){return this._switchView(e)}_setDefinitions(e){this._definitions=e,this._updateViews()}_viewsChanged=()=>{this._emit("views.changed",{views:this._views,activeView:this._activeView})};_updateViews(){var e=this._definitions;if(!e)return this._views=[],void this._switchView(null);var t=this._getViewProviders(),n=[e,...e.drgElement||[]],i=this._views,o=[];for(var r of n){var s=h(t,(function(e){return"string"==typeof e.opens?e.opens===r.$type:e.opens(r)}));if(s){var a={element:r,id:r.id,name:r.name,type:s.id};o.push(a)}}var l,c=this._activeView;if(!c||(l=h(o,(function(e){return sn(c,e)}))||this._getInitialView(o),l)){var u=!sn(c,l)||an(c,l),d=i.length!==o.length||!g(o,(function(e){return h(i,(function(t){return sn(t,e)&&!an(t,e)}))}));this._activeView=l,this._views=o,(u||d)&&this._viewsChanged()}else this._switchView(null)}_getInitialView(e,t){var n;return t&&(n=h(e,(function(e){return sn(e,t)}))||h(e,(function(e){return e.type===t}))),n||e[0]}_switchView(e){var t=this;return new Promise((function(n,i){var o,r=(e,o)=>{t._viewsChanged(),e?i(e):n(o)},s=t.getActiveView(),a=e&&t._getViewer(e),l=e&&e.element;if(s&&(o=t._getViewer(s))!==a&&(ln(o,"clear"),o.detach()),t._activeView=e,a)return o!==a&&a.attachTo(t._container),t._emit("import.render.start",{view:e,element:l}),void a.open(l).then((n=>{t._emit("import.render.complete",{view:e,error:null,warnings:n.warnings}),r(null,n)})).catch((n=>{t._emit("import.render.complete",{view:e,error:n,warnings:n.warnings}),r(n,null)}));r()}))}_getViewer(e){var t=e.type,n=this._viewers[t];return n||(n=this._viewers[t]=this._createViewer(e.type),this._emit("viewer.created",{type:t,viewer:n})),n}_createViewer(e){var t=h(this._getViewProviders(),(function(t){return t.id===e}));if(!t)throw new Error("no provider for view type <"+e+">");var n=t.constructor,i=this._options[e]||{};return new n({...this._options.common||{},...i,additionalModules:[...i.additionalModules||[],{_parent:["value",this],moddle:["value",this._moddle]}]})}_emit(...e){return this._eventBus.fire(...e)}_createModdle(e){return new Ct(e.moddleExtensions)}_getViewProviders(){return[]}}function rn(e){return e+(a(e)?"px":"")}function sn(e,t){return i(e)?!!i(t)&&(e.element===t.element||e.id===t.id):!i(t)}function an(e,t){return!e||!t||e.name!==t.name}function ln(e,t){l(e[t])&&e[t]()}var cn=function(e,t){return e(t={exports:{}},t.exports),t.exports}((function(e){var t=e.exports=function(e,n){if(n||(n=16),void 0===e&&(e=128),e<=0)return"0";for(var i=Math.log(Math.pow(2,e))/Math.log(n),o=2;i===1/0;o*=2)i=Math.log(Math.pow(2,e/o))/Math.log(n)*o;var r=i-Math.floor(i),s="";for(o=0;o<Math.floor(i);o++){s=Math.floor(Math.random()*n).toString(n)+s}if(r){var a=Math.pow(n,r);s=Math.floor(Math.random()*a).toString(n)+s}var l=parseInt(s,n);return l!==1/0&&l>=Math.pow(2,e)?t(e,n):s};t.rack=function(e,n,i){var o=function(o){var s=0;do{if(s++>10){if(!i)throw new Error("too many ID collisions, use more bits");e+=i}var a=t(e,n)}while(Object.hasOwnProperty.call(r,a));return r[a]=o,a},r=o.hats={};return o.get=function(e){return o.hats[e]},o.set=function(e,t){return o.hats[e]=t,o},o.bits=e||128,o.base=n||16,o}}));function un(e){if(!(this instanceof un))return new un(e);e=e||[128,36,1],this._seed=e.length?cn.rack(e[0],e[1],e[2]):e}function hn(e,t){var n=fn(e);return n&&"function"==typeof n.$instanceOf&&n.$instanceOf(t)}function dn(e){return hn(e,"dmn:InputClause")}function pn(e){return hn(e,"dmn:OutputClause")}function fn(e){return e&&e.businessObject||e}function gn(e,t){return m(t,(function(t){return hn(e,t)}))}function mn(e){var t=fn(e);if(hn(t,"dmn:Decision"))return t.get("decisionLogic");if(hn(t,"dmn:BusinessKnowledgeModel")){var n=t.get("encapsulatedLogic");return n&&n.get("body")}}un.prototype.next=function(e){return this._seed(e||!0)},un.prototype.nextPrefixed=function(e,t){var n;do{n=e+this.next(!0)}while(this.assigned(n));return this.claim(n,t),n},un.prototype.claim=function(e,t){this._seed.set(e,t||!0)},un.prototype.assigned=function(e){return this._seed.get(e)||!1},un.prototype.unclaim=function(e){delete this._seed.hats[e]},un.prototype.clear=function(){var e,t=this._seed.hats;for(e in t)this.unclaim(e)};class vn extends on{_init(e){super._init(e),this.on("import.parse.complete",(e=>{e.error||this._collectIds(e.definitions,e.elementsById)})),this.on("destroy",(()=>{this._moddle.ids.clear()})),this.on("viewer.created",(({viewer:e})=>{e.on("elements.changed",(({elements:e})=>{var t=e.some((function(e){return gn(e,["dmn:Decision","dmn:Definitions","dmn:BusinessKnowledgeModel"])}));t&&this._updateViews()}))}))}_collectIds(e,t){var n,i=e.$model.ids;for(n in i.clear(),t)i.claim(n,t[n])}_createModdle(e){var t=super._createModdle(e);return t.ids=new un([32,36,1]),t}}function yn(e,t){t&&(e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}))}const xn=/^class[ {]/;function bn(e){return Array.isArray(e)}function _n(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function wn(...e){1===e.length&&bn(e[0])&&(e=e[0]);const t=(e=[...e]).pop();return t.$inject=e,t}const Cn=/constructor\s*[^(]*\(\s*([^)]*)\)/m,On=/^(?:async\s+)?(?:function\s*[^(]*)?(?:\(\s*([^)]*)\)|(\w+))/m,kn=/\/\*([^*]*)\*\//m;function En(e){if("function"!=typeof e)throw new Error(`Cannot annotate "${e}". Expected a function!`);const t=e.toString().match(function(e){return xn.test(e.toString())}(e)?Cn:On);if(!t)return[];const n=t[1]||t[2];return n&&n.split(",").map((e=>{const t=e.match(kn);return(t&&t[1]||e).trim()}))||[]}function Sn(e,t){const n=t||{get:function(e,t){if(i.push(e),!1===t)return null;throw a(`No provider for "${e}"!`)}},i=[],o=this._providers=Object.create(n._providers||null),r=this._instances=Object.create(null),s=r.injector=this,a=function(e){const t=i.join(" -> ");return i.length=0,new Error(t?`${e} (Resolving: ${t})`:e)};function l(e,t){if(!o[e]&&e.includes(".")){const t=e.split(".");let n=l(t.shift());for(;t.length;)n=n[t.shift()];return n}if(_n(r,e))return r[e];if(_n(o,e)){if(-1!==i.indexOf(e))throw i.push(e),a("Cannot resolve circular dependency!");return i.push(e),r[e]=o[e][0](o[e][1]),i.pop(),r[e]}return n.get(e,t)}function c(e,t){if(void 0===t&&(t={}),"function"!=typeof e){if(!bn(e))throw a(`Cannot invoke "${e}". Expected a function!`);e=wn(e.slice())}return{fn:e,dependencies:(e.$inject||En(e)).map((e=>_n(t,e)?t[e]:l(e)))}}function u(e){const{fn:t,dependencies:n}=c(e);return new(Function.prototype.bind.call(t,null,...n))}function h(e,t,n){const{fn:i,dependencies:o}=c(e,n);return i.apply(t,o)}function d(e){return wn((t=>e.get(t)))}function p(e,t){if(t&&t.length){const n=Object.create(null),i=Object.create(null),r=[],s=[],a=[];let l,c,u,h;for(let e in o)l=o[e],-1!==t.indexOf(e)&&("private"===l[2]?(c=r.indexOf(l[3]),-1===c?(u=l[3].createChild([],t),h=d(u),r.push(l[3]),s.push(u),a.push(h),n[e]=[h,e,"private",u]):n[e]=[a[c],e,"private",s[c]]):n[e]=[l[2],l[1]],i[e]=!0),"factory"!==l[2]&&"type"!==l[2]||!l[1].$scope||t.forEach((t=>{-1!==l[1].$scope.indexOf(t)&&(n[e]=[l[2],l[1]],i[t]=!0)}));t.forEach((e=>{if(!i[e])throw new Error('No provider for "'+e+'". Cannot use provider from the parent!')})),e.unshift(n)}return new Sn(e,s)}const f={factory:h,type:u,value:function(e){return e}};function g(e,t){const n=e.__init__||[];return function(){n.forEach((e=>{"string"==typeof e?t.get(e):t.invoke(e)}))}}function m(e){const t=e.__exports__;if(t){const n=e.__modules__,i=Object.keys(e).reduce(((t,n)=>("__exports__"!==n&&"__modules__"!==n&&"__init__"!==n&&"__depends__"!==n&&(t[n]=e[n]),t)),Object.create(null)),r=p((n||[]).concat(i)),s=wn((function(e){return r.get(e)}));t.forEach((function(e){o[e]=[s,e,"private",r]}));const a=(e.__init__||[]).slice();return a.unshift((function(){r.init()})),g(e=Object.assign({},e,{__init__:a}),r)}return Object.keys(e).forEach((function(t){if("__init__"===t||"__depends__"===t)return;const n=e[t];if("private"===n[2])return void(o[t]=n);const i=n[0],r=n[1];o[t]=[f[i],Rn(i,r),i]})),g(e,s)}function v(e,t){return-1!==e.indexOf(t)||-1!==(e=(t.__depends__||[]).reduce(v,e)).indexOf(t)?e:e.concat(t)}this.get=l,this.invoke=h,this.instantiate=u,this.createChild=p,this.init=function(e){const t=e.reduce(v,[]).map(m);let n=!1;return function(){n||(n=!0,t.forEach((e=>e())))}}(e)}function Rn(e,t){return"value"!==e&&bn(t)&&(t=wn(t.slice())),t}var Tn=1e3;function Mn(e,t){var n=this;t=t||Tn,e.on(["render.shape","render.connection"],t,(function(e,t){var i=e.type,o=t.element,r=t.gfx,s=t.attrs;if(n.canRender(o))return"render.shape"===i?n.drawShape(r,o,s):n.drawConnection(r,o,s)})),e.on(["render.getShapePath","render.getConnectionPath"],t,(function(e,t){if(n.canRender(t))return"render.getShapePath"===e.type?n.getShapePath(t):n.getConnectionPath(t)}))}function An(e,t){return function(e,t){t.appendChild(function(e,t){if(e.ownerDocument!==t.ownerDocument)try{return t.ownerDocument.importNode(e,!0)}catch(e){}return e}(e,t))}(t,e),e}Mn.prototype.canRender=function(e){},Mn.prototype.drawShape=function(e,t){},Mn.prototype.drawConnection=function(e,t){},Mn.prototype.getShapePath=function(e){},Mn.prototype.getConnectionPath=function(e){};var Pn=2,Dn={"alignment-baseline":1,"baseline-shift":1,clip:1,"clip-path":1,"clip-rule":1,color:1,"color-interpolation":1,"color-interpolation-filters":1,"color-profile":1,"color-rendering":1,cursor:1,direction:1,display:1,"dominant-baseline":1,"enable-background":1,fill:1,"fill-opacity":1,"fill-rule":1,filter:1,"flood-color":1,"flood-opacity":1,font:1,"font-family":1,"font-size":Pn,"font-size-adjust":1,"font-stretch":1,"font-style":1,"font-variant":1,"font-weight":1,"glyph-orientation-horizontal":1,"glyph-orientation-vertical":1,"image-rendering":1,kerning:1,"letter-spacing":1,"lighting-color":1,marker:1,"marker-end":1,"marker-mid":1,"marker-start":1,mask:1,opacity:1,overflow:1,"pointer-events":1,"shape-rendering":1,"stop-color":1,"stop-opacity":1,stroke:1,"stroke-dasharray":1,"stroke-dashoffset":1,"stroke-linecap":1,"stroke-linejoin":1,"stroke-miterlimit":1,"stroke-opacity":1,"stroke-width":Pn,"text-anchor":1,"text-decoration":1,"text-rendering":1,"unicode-bidi":1,visibility:1,"word-spacing":1,"writing-mode":1};function $n(e,t,n){var i=t.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase(),o=Dn[i];o?(o===Pn&&"number"==typeof n&&(n=String(n)+"px"),e.style[i]=n):e.setAttributeNS(null,t,n)}function jn(e,t,n){if("string"==typeof t){if(void 0===n)return function(e,t){return Dn[t]?e.style[t]:e.getAttributeNS(null,t)}(e,t);$n(e,t,n)}else!function(e,t){var n,i,o=Object.keys(t);for(n=0;i=o[n];n++)$n(e,i,t[i])}(e,t);return e}const In=Object.prototype.toString;function Bn(e){return new Ln(e)}function Ln(e){if(!e||!e.nodeType)throw new Error("A DOM element reference is required");this.el=e,this.list=e.classList}function Nn(e){for(var t;t=e.firstChild;)e.removeChild(t);return e}function qn(e){return e.cloneNode(!0)}Ln.prototype.add=function(e){return this.list.add(e),this},Ln.prototype.remove=function(e){return"[object RegExp]"==In.call(e)?this.removeMatching(e):(this.list.remove(e),this)},Ln.prototype.removeMatching=function(e){const t=this.array();for(let n=0;n<t.length;n++)e.test(t[n])&&this.remove(t[n]);return this},Ln.prototype.toggle=function(e,t){return void 0!==t?t!==this.list.toggle(e,t)&&this.list.toggle(e):this.list.toggle(e),this},Ln.prototype.array=function(){return Array.from(this.list)},Ln.prototype.has=Ln.prototype.contains=function(e){return this.list.contains(e)};var Vn={svg:"http://www.w3.org/2000/svg"},Fn='<svg xmlns="'+Vn.svg+'"';function zn(e){var t=!1;"<svg"===e.substring(0,4)?-1===e.indexOf(Vn.svg)&&(e=Fn+e.substring(4)):(e=Fn+">"+e+"</svg>",t=!0);var n=function(e){var t;return t=new DOMParser,t.async=!1,t.parseFromString(e,"text/xml")}(e);if(!t)return n;for(var i=document.createDocumentFragment(),o=n.firstChild;o.firstChild;)i.appendChild(o.firstChild);return i}function Qn(e,t){var n;return"<"===(e=e.trim()).charAt(0)?(n=zn(e).firstChild,n=document.importNode(n,!0)):n=document.createElementNS(Vn.svg,e),t&&jn(n,t),n}var Hn=null;function Wn(){return null===Hn&&(Hn=Qn("svg")),Hn}function Un(e,t){var n,i,o=Object.keys(t);for(n=0;i=o[n];n++)e[i]=t[i];return e}function Xn(e){return Wn().createSVGTransform()}var Kn=/([&<>]{1})/g,Gn=/([&<>\n\r"]{1})/g,Yn={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"'"};function Zn(e,t){return e.replace(t,(function(e,t){return Yn[t]||t}))}function Jn(e,t){var n,i,o,r,s;switch(e.nodeType){case 3:t.push(Zn(e.textContent,Kn));break;case 1:if(t.push("<",e.tagName),e.hasAttributes())for(n=0,i=(o=e.attributes).length;n<i;++n)r=o.item(n),t.push(" ",r.name,'="',Zn(r.value,Gn),'"');if(e.hasChildNodes()){for(t.push(">"),n=0,i=(s=e.childNodes).length;n<i;++n)Jn(s.item(n),t);t.push("</",e.tagName,">")}else t.push("/>");break;case 8:t.push("\x3c!--",Zn(e.nodeValue,Kn),"--\x3e");break;case 4:t.push("<![CDATA[",e.nodeValue,"]]>");break;default:throw new Error("unable to handle node "+e.nodeType)}return t}function ei(e,t){return function(e){for(var t=e.firstChild,n=[];t;)Jn(t,n),t=t.nextSibling;return n.join("")}(e)}function ti(e){var t=e.parentNode;return t&&t.removeChild(e),e}function ni(e,t){return t instanceof SVGMatrix?e.createSVGTransformFromMatrix(t):t}function ii(e,t){var n=e.transform.baseVal;return t&&(Array.isArray(t)||(t=[t]),function(e,t){var n,i;for(e.clear(),n=0;i=t[n];n++)e.appendItem(ni(e,i))}(n,t)),n.consolidate()}function oi(e){return e.flat().join(",").replace(/,?([A-z]),?/g,"$1")}function ri(e){return["L",e.x,e.y]}function si(e,t){const n=e.length,i=[(o=e[0],["M",o.x,o.y])];var o,r,s,a;for(let o=1;o<n;o++){const n=e[o-1],l=e[o],c=e[o+1];if(!c||!t){i.push(ri(l));continue}const u=Math.min(t,li(l.x-n.x,l.y-n.y),li(c.x-l.x,c.y-l.y));if(!u){i.push(ri(l));continue}const h=ai(l,n,u),d=ai(l,n,.5*u),p=ai(l,c,u),f=ai(l,c,.5*u);i.push(ri(h)),i.push((s=f,a=p,["C",(r=d).x,r.y,s.x,s.y,a.x,a.y]))}return i}function ai(e,t,n){const i=t.x-e.x,o=t.y-e.y,r=n/li(i,o);return{x:e.x+i*r,y:e.y+o*r}}function li(e,t){return Math.sqrt(Math.pow(e,2)+Math.pow(t,2))}function ci(e,t,n){a(t)&&(n=t,t=null),t||(t={});const i=Qn("path",t);return a(n)&&(i.dataset.cornerRadius=String(n)),ui(i,e)}function ui(e,t){return jn(e,{d:oi(si(t,parseInt(e.dataset.cornerRadius,10)||0))}),e}function hi(e){return d(e,(function(t){return!h(e,(function(e){return e!==t&&di(t,e)}))}))}function di(e,t){if(t){if(e===t)return t;if(e.parent)return di(e.parent,t)}}function pi(e,t,n){var i=!n;return e.push(t),i}function fi(e,t,n){n=n||0,r(e)||(e=[e]),p(e,(function(e,i){var o=t(e,i,n);r(o)&&o.length&&fi(o,t,n+1)}))}function gi(e,t){return function(e,t,n){var i=[],o=[];return fi(e,(function(e,n,r){pi(i,e,t);var s=e.children;if(s&&pi(o,s,t))return s})),i}(e,!t)}function mi(e,t){var n,i,o,s;return t=!!t,r(e)||(e=[e]),p(e,(function(e){var r=e;e.waypoints&&!t&&(r=mi(e.waypoints,!0));var a=r.x,l=r.y,c=r.height||0,u=r.width||0;(a<n||void 0===n)&&(n=a),(l<i||void 0===i)&&(i=l),(a+u>o||void 0===o)&&(o=a+u),(l+c>s||void 0===s)&&(s=l+c)})),{x:n,y:i,height:s-i,width:o-n}}function vi(e){return"waypoints"in e?"connection":"x"in e?"shape":"root"}function yi(e){return!(!e||!e.isFrame)}function xi(e,t){return M({},e||{},t||{})}function bi(e,t){Mn.call(this,e,1),this.CONNECTION_STYLE=t.style(["no-fill"],{strokeWidth:5,stroke:"fuchsia"}),this.SHAPE_STYLE=t.style({fill:"white",stroke:"fuchsia",strokeWidth:2}),this.FRAME_STYLE=t.style(["no-fill"],{stroke:"fuchsia",strokeDasharray:4,strokeWidth:2})}yn(bi,Mn),bi.prototype.canRender=function(){return!0},bi.prototype.drawShape=function(e,t,n){var i=Qn("rect");return jn(i,{x:0,y:0,width:t.width||0,height:t.height||0}),yi(t)?jn(i,M({},this.FRAME_STYLE,n||{})):jn(i,M({},this.SHAPE_STYLE,n||{})),An(e,i),i},bi.prototype.drawConnection=function(e,t,n){var i=ci(t.waypoints,M({},this.CONNECTION_STYLE,n||{}));return An(e,i),i},bi.prototype.getShapePath=function(e){var t=e.x,n=e.y,i=e.width;return oi([["M",t,n],["l",i,0],["l",0,e.height],["l",-i,0],["z"]])},bi.prototype.getConnectionPath=function(e){var t,n,i=e.waypoints,o=[];for(t=0;n=i[t];t++)n=n.original||n,o.push([0===t?"M":"L",n.x,n.y]);return oi(o)},bi.$inject=["eventBus","styles"];var _i={__init__:["defaultRenderer"],defaultRenderer:["type",bi],styles:["type",function(){var e={"no-fill":{fill:"none"},"no-border":{strokeOpacity:0},"no-events":{pointerEvents:"none"}},t=this;this.cls=function(e,t,n){return M(this.style(t,n),{class:e})},this.style=function(t,n){r(t)||n||(n=t,t=[]);var i=f(t,(function(t,n){return M(t,e[n]||{})}),{});return n?M(i,n):i},this.computeStyle=function(e,n,i){return r(n)||(i=n,n=[]),t.style(n||[],M({},i,e||{}))}}]};function wi(e,t){if(!e||!t)return-1;var n=e.indexOf(t);return-1!==n&&e.splice(n,1),n}function Ci(e,t,n){if(e&&t){"number"!=typeof n&&(n=-1);var i=e.indexOf(t);if(-1!==i){if(i===n)return;if(-1===n)return;e.splice(i,1)}-1!==n?e.splice(n,0,t):e.push(t)}}function Oi(e,t){return e&&t?e.indexOf(t):-1}function ki(e,t){return e&&t?Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2)):-1}function Ei(e,t,n,i){if(void 0===i&&(i=5),!e||!t||!n)return!1;var o=(t.x-e.x)*(n.y-e.y)-(t.y-e.y)*(n.x-e.x),r=ki(e,t);return Math.abs(o/r)<=i}var Si=2;function Ri(e,t){var n=Array.from(arguments).flat();const i={x:"v",y:"h"};for(const[e,t]of Object.entries(i))if(Ti(e,n))return t;return!1}function Ti(e,t){const n=t[0];return g(t,(function(t){return Math.abs(n[e]-t[e])<=Si}))}function Mi(e,t){return{x:Math.round(e.x+(t.x-e.x)/2),y:Math.round(e.y+(t.y-e.y)/2)}}
15 */function Is(e){var t=Gt('<a href="http://bpmn.io" target="_blank" class="bjs-powered-by" title="Powered by bpmn.io" style="position: absolute; bottom: 15px; right: 15px; z-index: 100;">'+js+"</a>");e.appendChild(t),zt.bind(t,"click",(function(e){!function(){Ns||(Ns=Gt(qs),Wt.bind(Ns,".backdrop","click",(function(e){document.body.removeChild(Ns)})));document.body.appendChild(Ns)}(),e.preventDefault()}))}class Bs extends Ds{constructor(e,t){super(e,t),this.node=null}componentDidMount(){Is(this.node)}render(){return vr(1,"div",null,null,1,null,null,(e=>this.node=e))}}function Ls(e){return e.join(";")}var Ns,qs='<div class="bjs-powered-by-lightbox" style="'+Ls(["z-index: 1001","position: fixed","top: 0","left: 0","right: 0","bottom: 0"])+'"><div class="backdrop" style="'+Ls(["width: 100%","height: 100%","background: rgba(40,40,40,0.2)"])+'"></div><div class="notice" style="'+Ls(["position: absolute","left: 50%","top: 40%","transform: translate(-50%)","width: 260px","padding: 10px","background: white","box-shadow: 0 1px 4px rgba(0,0,0,0.3)","font-family: Helvetica, Arial, sans-serif","font-size: 14px","display: flex","line-height: 1.3"])+'"><a href="https://bpmn.io" target="_blank" rel="noopener" style="margin: 15px 20px 15px 10px; align-self: center;">'+js+'</a><span>Web-based tooling for BPMN, DMN and CMMN diagrams powered by <a href="https://bpmn.io" target="_blank" rel="noopener">bpmn.io</a>.</span></div></div>';var Vs=new un,Fs="hsl(225, 10%, 15%)";function zs(e,t,n,i,o,r){Mn.call(this,t);var a=Vs.next(),l=i.computeStyle,c={},u=e&&e.defaultFillColor||"white",h=e&&e.defaultStrokeColor||Fs,d=e&&e.defaultLabelColor;function p(e,t,n){var i=e+"-"+Hs(t)+"-"+Hs(n)+"-"+a;return c[i]||function(e,t,n,i){if("association-start"===t){var o=Qn("path");jn(o,{d:"M 11 5 L 1 10 L 11 15"}),f(e,{element:o,attrs:{fill:"none",stroke:i,strokeWidth:1.5},ref:{x:1,y:10},scale:.5})}else if("association-end"===t){var r=Qn("path");jn(r,{d:"M 1 5 L 11 10 L 1 15"}),f(e,{element:r,attrs:{fill:"none",stroke:i,strokeWidth:1.5},ref:{x:12,y:10},scale:.5})}else if("information-requirement-end"===t){var s=Qn("path");jn(s,{d:"M 1 5 L 11 10 L 1 15 Z"}),f(e,{element:s,attrs:{fill:i,stroke:"none"},ref:{x:11,y:10},scale:1})}else if("knowledge-requirement-end"===t){var a=Qn("path");jn(a,{d:"M 1 3 L 11 10 L 1 17"}),f(e,{element:a,attrs:{fill:"none",stroke:i,strokeWidth:2},ref:{x:11,y:10},scale:.8})}else if("authority-requirement-end"===t){var l=Qn("circle");jn(l,{cx:3,cy:3,r:3}),f(e,{element:l,attrs:{fill:i,stroke:"none"},ref:{x:3,y:3},scale:.9})}}(i,e,0,n),"url(#"+i+")"}function f(e,t){var n=M({strokeWidth:1,strokeLinecap:"round",strokeDasharray:"none"},t.attrs),i=t.ref||{x:0,y:0},o=t.scale||1;"none"===n.strokeDasharray&&(n.strokeDasharray=[1e4,1]);var s=Qn("marker");jn(t.element,n),An(s,t.element),jn(s,{id:e,viewBox:"0 0 20 20",refX:i.x,refY:i.y,markerWidth:20*o,markerHeight:20*o,orient:"auto"});var a=Zt("defs",r._svg);a||(a=Qn("defs"),An(r._svg,a)),An(a,s),c[e]=s}function g(e,t,n,i,o,r){s(o)&&(r=o,o=0),o=o||0,r=l(r,{stroke:Fs,strokeWidth:2,fill:"white"});var a=Qn("rect");return jn(a,{x:o,y:o,width:t-2*o,height:n-2*o,rx:i,ry:i}),jn(a,r),An(e,a),a}function m(e,t,n){var i=o.createText(t||"",n);return Pt(i,"class","djs-label"),An(e,i),i}function v(e,t,n,i){var o=function(e){return fn(e).name}(t);return m(e,o,i=M({box:t,align:n,padding:5,style:{fill:Xs(t,d,h)}},i))}function y(e,t,n){n=l(n,["no-fill"],{strokeWidth:2,stroke:Fs});var i=Qn("path");return jn(i,{d:t}),jn(i,n),An(e,i),i}var x={"dmn:Decision":function(e,t){var n=g(e,t.width,t.height,0,{stroke:Ws(t,h),fill:Us(t,u)});return v(e,t,"center-middle"),n},"dmn:KnowledgeSource":function(e,t){var i=y(e,n.getScaledPath("KNOWLEDGE_SOURCE",{xScaleFactor:1.021,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:0,my:.075}}),{strokeWidth:2,fill:Us(t,u),stroke:Ws(t,h)});return v(e,t,"center-middle"),i},"dmn:BusinessKnowledgeModel":function(e,t){var i=y(e,n.getScaledPath("BUSINESS_KNOWLEDGE_MODEL",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:0,my:.3}}),{strokeWidth:2,fill:Us(t,u),stroke:Ws(t,h)});return v(e,t,"center-middle"),i},"dmn:InputData":function(e,t){var n=g(e,t.width,t.height,22,{stroke:Ws(t,h),fill:Us(t,u)});return v(e,t,"center-middle"),n},"dmn:TextAnnotation":function(e,t){var i=g(e,t.width,t.height,0,0,{fill:"none",stroke:"none"});return y(e,n.getScaledPath("TEXT_ANNOTATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:0,my:0}}),{stroke:Ws(t,h)}),m(e,Qs(t).text||"",{style:{fill:Xs(t,d,h)},box:t,align:"left-top",padding:5}),i},"dmn:Association":function(e,t){var n=Qs(t),i=Us(t,u),o=Ws(t,h),r={stroke:o,strokeDasharray:"0.5, 5",strokeLinecap:"round",strokeLinejoin:"round",fill:"none"};return"One"!==n.associationDirection&&"Both"!==n.associationDirection||(r.markerEnd=p("association-end",i,o)),"Both"===n.associationDirection&&(r.markerStart=p("association-start",i,o)),b(e,t.waypoints,r)},"dmn:InformationRequirement":function(e,t){var n=Us(t,u),i=Ws(t,h),o={stroke:i,strokeWidth:1,strokeLinecap:"round",strokeLinejoin:"round",markerEnd:p("information-requirement-end",n,i)};return b(e,t.waypoints,o)},"dmn:KnowledgeRequirement":function(e,t){var n=Us(t,u),i=Ws(t,h),o={stroke:i,strokeWidth:1,strokeDasharray:5,strokeLinecap:"round",strokeLinejoin:"round",markerEnd:p("knowledge-requirement-end",n,i)};return b(e,t.waypoints,o)},"dmn:AuthorityRequirement":function(e,t){var n=Us(t,u),i=Ws(t,h),o={stroke:i,strokeWidth:1.5,strokeDasharray:5,strokeLinecap:"round",strokeLinejoin:"round",markerEnd:p("authority-requirement-end",n,i)};return b(e,t.waypoints,o)}};function b(e,t,n){var i=ci(t,n=l(n,["no-fill"],{stroke:Fs,strokeWidth:2,fill:"none"}));return An(e,i),i}this.canRender=function(e){return hn(e,"dmn:DMNElement")||hn(e,"dmn:InformationRequirement")||hn(e,"dmn:KnowledgeRequirement")||hn(e,"dmn:AuthorityRequirement")},this.drawShape=function(e,t){var n=x[t.type];return n?n(e,t):Mn.prototype.drawShape.apply(this,[e,t])},this.drawConnection=function(e,t){var n=t.type,i=x[n];return i?i(e,t):Mn.prototype.drawConnection.apply(this,[e,t])}}function Qs(e){return e.businessObject}function Hs(e){return e.replace(/[^0-9a-zA-z]+/g,"_")}function Ws(e,t){return t}function Us(e,t){return t}function Xs(e,t,n){return t||Ws(0,n)}yn(zs,Mn),zs.$inject=["config.drdRenderer","eventBus","pathMap","styles","textRenderer","canvas"];var Ks=0,Gs={width:150,height:50};function Ys(e,t){var n;t.textContent=e;try{var i,o=""===e;return t.textContent=o?"dummy":e,i={width:(n=t.getBBox()).width+2*n.x,height:n.height},o&&(i.width=0),i}catch(e){return console.log(e),{width:0,height:0}}}function Zs(e,t,n){for(var i,o=e.shift(),r=o;;){if((i=Ys(r,n)).width=r?i.width:0," "===r||""===r||i.width<Math.round(t)||r.length<2)return Js(e,r,o,i);r=ta(r,i.width,t)}}function Js(e,t,n,i){if(t.length<n.length){var o=n.slice(t.length).trim();e.unshift(o)}return{width:i.width,height:i.height,text:t}}var ea="­";function ta(e,t,n){var i=Math.max(e.length*(n/t),1),o=function(e,t){var n,i=e.split(/(\s|-|\u00AD)/g),o=[],r=0;if(i.length>1)for(;n=i.shift();){if(!(n.length+r<t)){"-"!==n&&n!==ea||o.pop();break}o.push(n),r+=n.length}var s=o[o.length-1];return s&&s===ea&&(o[o.length-1]="-"),o.join("")}(e,i);return o||(o=e.slice(0,Math.max(Math.round(i-1),1))),o}function na(e){this._config=M({},{size:Gs,padding:Ks,style:{},align:"center-top"},e||{})}na.prototype.createText=function(e,t){return this.layoutText(e,t).element},na.prototype.getDimensions=function(e,t){return this.layoutText(e,t).dimensions},na.prototype.layoutText=function(e,t){var n=M({},this._config.size,t.box),i=M({},this._config.style,t.style),o=function(e){var t=e.split("-");return{horizontal:t[0]||"center",vertical:t[1]||"top"}}(t.align||this._config.align),r=function(e){return s(e)?M({top:0,left:0,right:0,bottom:0},e):{top:e,left:e,right:e,bottom:e}}(void 0!==t.padding?t.padding:this._config.padding),a=t.fitBox||!1,l=function(e){if("fontSize"in e&&"lineHeight"in e)return e.lineHeight*parseInt(e.fontSize,10)}(i),c=e.split(/\u00AD?\r?\n/),u=[],h=n.width-r.left-r.right,d=Qn("text");for(jn(d,{x:0,y:0}),jn(d,i),An(function(){var e=document.getElementById("helper-svg");return e||(jn(e=Qn("svg"),{id:"helper-svg"}),At(e,{visibility:"hidden",position:"fixed",width:0,height:0}),document.body.appendChild(e)),e}(),d);c.length;)u.push(Zs(c,h,d));"middle"===o.vertical&&(r.top=r.bottom=0);var g=f(u,(function(e,t,n){return e+(l||t.height)}),0)+r.top+r.bottom,m=f(u,(function(e,t,n){return t.width>e?t.width:e}),0),v=r.top;"middle"===o.vertical&&(v+=(n.height-g)/2),v-=(l||u[0].height)/4;var y=Qn("text");return jn(y,i),p(u,(function(e){var t;switch(v+=l||e.height,o.horizontal){case"left":t=r.left;break;case"right":t=(a?m:h)-r.right-e.width;break;default:t=Math.max(((a?m:h)-e.width)/2+r.left,0)}var n=Qn("tspan");jn(n,{x:t,y:v}),n.textContent=e.text,An(y,n)})),ti(d),{dimensions:{width:m,height:g},element:y}};function ia(e){var t=M({fontFamily:"Arial, sans-serif",fontSize:12,fontWeight:"normal",lineHeight:1.2},e&&e.defaultStyle||{}),n=parseInt(t.fontSize,10)-1,i=M({},t,{fontSize:n},e&&e.externalStyle||{}),o=new na({style:t});this.getExternalLabelBounds=function(e,t){var n=o.getDimensions(t,{box:{width:90,height:30,x:e.width/2+e.x,y:e.height/2+e.y},style:i});return{x:Math.round(e.x+e.width/2-n.width/2),y:Math.round(e.y),width:Math.ceil(n.width),height:Math.ceil(n.height)}},this.getTextAnnotationBounds=function(e,n){var i=o.getDimensions(n,{box:e,style:t,align:"left-top",padding:5});return{x:e.x,y:e.y,width:e.width,height:Math.max(30,Math.round(i.height))}},this.createText=function(e,t){return o.createText(e,t||{})},this.getDefaultStyle=function(){return t},this.getExternalStyle=function(){return i}}ia.$inject=["config.textRenderer"];var oa=/\{([^{}]+)\}/g,ra=/(?:(?:^|\.)(.+?)(?=\[|\.|$|\()|\[('|")(.+?)\2\])(\(\))?/g;var sa={__init__:["drdRenderer"],drdRenderer:["type",zs],textRenderer:["type",ia],pathMap:["type",function(){this.pathMap={KNOWLEDGE_SOURCE:{d:"m {mx},{my} l 0,{e.y0} c {e.x0},{e.y1} {e.x1},-{e.y2} {e.x2},-{e.y3} c {e.x3},-{e.y4} {e.x4},{e.y5} {e.x5},{e.y6} l 0,-{e.y7}z",width:100,height:65,widthElements:[29.8,48.4,67.2,12.2,19.8,30.8],heightElements:[55.3,19.7,4.2,6.7,2.3,1.6,6.2,54.6]},BUSINESS_KNOWLEDGE_MODEL:{d:"m {mx},{my} l {e.x0},-{e.y0} l {e.x1},0 l 0,{e.y1} l -{e.x2},{e.y2} l -{e.x3},0z",width:125,height:45,widthElements:[13.8,109.2,13.8,109.1],heightElements:[13.2,29.8,13.2]},TEXT_ANNOTATION:{d:"m {mx}, {my} m 10,0 l -10,0 l 0,{e.y0} l 10,0",width:10,height:30,widthElements:[10],heightElements:[30]}},this.getRawPath=function(e){return this.pathMap[e].d},this.getScaledPath=function(e,t){var n,i,o=this.pathMap[e];t.abspos?(n=t.abspos.x,i=t.abspos.y):(n=t.containerWidth*t.position.mx,i=t.containerHeight*t.position.my);var r={};if(t.position){for(var s=t.containerHeight/o.height*t.yScaleFactor,a=t.containerWidth/o.width*t.xScaleFactor,l=0;l<o.heightElements.length;l++)r["y"+l]=o.heightElements[l]*s;for(var c=0;c<o.widthElements.length;c++)r["x"+c]=o.widthElements[c]*a}var u,h,d=(u=o.d,h={mx:n,my:i,e:r},String(u).replace(oa,(function(e,t){return function(e,t,n){var i=n;return t.replace(ra,(function(e,t,n,o,r){t=t||o,i&&(t in i&&(i=i[t]),"function"==typeof i&&r&&(i=i()))})),i=(null==i||i==n?e:i)+""}(e,t,h)})));return d}}]};function aa(e,t,n,i){this._eventBus=e,this._canvas=t,this._elementRegistry=i,this._elementFactory=n}function la(e,t){return M({id:e.id,type:e.$type,businessObject:e},t)}function ca(e){return e.split("#").pop()}aa.$inject=["eventBus","canvas","elementFactory","elementRegistry"],aa.prototype.root=function(e){var t=this._elementFactory.createRoot(la(e));return this._canvas.setRootElement(t),t},aa.prototype.add=function(e){var t,n,i,o,r,s,a=this._elementFactory,l=this._canvas,c=this._eventBus,u=e.di;if(u.$instanceOf("dmndi:DMNShape"))s=u.bounds,r=la(e,{x:Math.round(s.x),y:Math.round(s.y),width:Math.round(s.width),height:Math.round(s.height)}),t=a.createShape(r),l.addShape(t),c.fire("drdElement.added",{element:t,di:u});else{if(!u.$instanceOf("dmndi:DMNEdge"))throw new Error("unknown di for element "+e.id);n=function(e){var t=e.waypoint;if(t)return v(t,(function(e){var t={x:e.x,y:e.y};return M({original:t},t)}))}(u),i=this._getSource(e),o=this._getTarget(e),i&&o&&(r=la(e,{hidden:!1,source:i,target:o,waypoints:n}),t=a.createConnection(r),l.addConnection(t),c.fire("drdElement.added",{element:t,di:u}))}return t},aa.prototype._getSource=function(e){var t,n;if(hn(e,"dmn:Association")?n=e.sourceRef:hn(e,"dmn:InformationRequirement")?n=e.requiredDecision||e.requiredInput:hn(e,"dmn:KnowledgeRequirement")?n=e.requiredKnowledge:hn(e,"dmn:AuthorityRequirement")&&(n=e.requiredDecision||e.requiredInput||e.requiredAuthority),n&&(t=n.href),t)return this._getShape(ca(t))},aa.prototype._getTarget=function(e){return hn(e,"dmn:Association")?e.targetRef&&this._getShape(ca(e.targetRef.href)):this._getShape(e.$parent.id)},aa.prototype._getShape=function(e){return this._elementRegistry.get(e)};var ua={__depends__:[sa,{drdImporter:["type",aa]}]};var ha={translate:["value",function(e,t){return t=t||{},e.replace(/{([^}]+)}/g,(function(e,n){return t[n]||"{"+n+"}"}))}]};function da(e){e&&"function"==typeof e.stopPropagation&&e.stopPropagation()}function pa(e){return e.originalEvent||e.srcEvent}function fa(e){da(e),da(pa(e))}function ga(e){return e.pointers&&e.pointers.length&&(e=e.pointers[0]),e.touches&&e.touches.length&&(e=e.touches[0]),e?{x:e.clientX,y:e.clientY}:null}function ma(){return/mac/i.test(navigator.platform)}function va(e,t){return(pa(e)||e).button===t}function ya(e){return va(e,0)}function xa(e){var t=pa(e)||e;return!!ya(e)&&(ma()?t.metaKey:t.ctrlKey)}function ba(e){var t=pa(e)||e;return ya(e)&&t.shiftKey}function _a(e){return!0}function wa(e){return ya(e)||function(e){return va(e,1)}(e)}function Ca(e,t,n){var i=this;function o(n,i,o){var r,s;(function(e,t){var n=l[e]||ya;return!n(t)})(n,i)||(o?s=t.getGraphics(o):(r=i.delegateTarget||i.target)&&(s=r,o=t.get(s)),s&&o&&!1===e.fire(n,{element:o,gfx:s,originalEvent:i})&&(i.stopPropagation(),i.preventDefault()))}var r={};function s(e){return r[e]}var a={click:"element.click",contextmenu:"element.contextmenu",dblclick:"element.dblclick",mousedown:"element.mousedown",mousemove:"element.mousemove",mouseover:"element.hover",mouseout:"element.out",mouseup:"element.mouseup"},l={"element.contextmenu":_a,"element.mousedown":wa,"element.mouseup":wa,"element.click":wa,"element.dblclick":wa};var c="svg, .djs-element";function u(e,t,n,i){var s=r[n]=function(e){o(n,e)};i&&(l[n]=i),s.$delegate=Wt.bind(e,c,t,s)}function h(e,t,n){var i=s(n);i&&Wt.unbind(e,t,i.$delegate)}e.on("canvas.destroy",(function(e){!function(e){p(a,(function(t,n){h(e,n,t)}))}(e.svg)})),e.on("canvas.init",(function(e){!function(e){p(a,(function(t,n){u(e,n,t)}))}(e.svg)})),e.on(["shape.added","connection.added"],(function(t){var n=t.element,i=t.gfx;e.fire("interactionEvents.createHit",{element:n,gfx:i})})),e.on(["shape.changed","connection.changed"],500,(function(t){var n=t.element,i=t.gfx;e.fire("interactionEvents.updateHit",{element:n,gfx:i})})),e.on("interactionEvents.createHit",500,(function(e){var t=e.element,n=e.gfx;i.createDefaultHit(t,n)})),e.on("interactionEvents.updateHit",(function(e){var t=e.element,n=e.gfx;i.updateDefaultHit(t,n)}));var d=m("djs-hit djs-hit-stroke"),f=m("djs-hit djs-hit-click-stroke"),g={all:m("djs-hit djs-hit-all"),"click-stroke":f,stroke:d,"no-move":m("djs-hit djs-hit-no-move")};function m(e,t){return t=M({stroke:"white",strokeWidth:15},t||{}),n.cls(e,["no-fill","no-border"],t)}function v(e,t){var n=g[t];if(!n)throw new Error("invalid hit type <"+t+">");return jn(e,n),e}function y(e,t){An(e,t)}this.removeHits=function(e){p(Jt(".djs-hit",e),ti)},this.createDefaultHit=function(e,t){var n,i=e.waypoints,o=e.isFrame;return i?this.createWaypointsHit(t,i):(n=o?"stroke":"all",this.createBoxHit(t,n,{width:e.width,height:e.height}))},this.createWaypointsHit=function(e,t){var n=ci(t);return v(n,"stroke"),y(e,n),n},this.createBoxHit=function(e,t,n){n=M({x:0,y:0},n);var i=Qn("rect");return v(i,t),jn(i,n),y(e,i),i},this.updateDefaultHit=function(e,t){var n=Zt(".djs-hit",t);if(n)return e.waypoints?ui(n,e.waypoints):jn(n,{width:e.width,height:e.height}),n},this.fire=o,this.triggerMouseEvent=function(e,t,n){var i=a[e];if(!i)throw new Error("unmapped DOM event name <"+e+">");return o(i,t,n)},this.mouseHandler=s,this.registerEvent=u,this.unregisterEvent=h}Ca.$inject=["eventBus","elementRegistry","styles"];var Oa={__init__:["interactionEvents"],interactionEvents:["type",Ca]};function ka(e,t){this._eventBus=e,this._canvas=t,this._selectedElements=[];var n=this;e.on(["shape.remove","connection.remove"],(function(e){var t=e.element;n.deselect(t)})),e.on(["diagram.clear","root.set"],(function(e){n.select(null)}))}ka.$inject=["eventBus","canvas"],ka.prototype.deselect=function(e){var t=this._selectedElements,n=t.indexOf(e);if(-1!==n){var i=t.slice();t.splice(n,1),this._eventBus.fire("selection.changed",{oldSelection:i,newSelection:t})}},ka.prototype.get=function(){return this._selectedElements},ka.prototype.isSelected=function(e){return-1!==this._selectedElements.indexOf(e)},ka.prototype.select=function(e,t){var n=this._selectedElements,i=n.slice();r(e)||(e=e?[e]:[]);var o=this._canvas,s=o.getRootElement();e=e.filter((function(e){var t=o.findRoot(e);return s===t})),t?p(e,(function(e){-1===n.indexOf(e)&&n.push(e)})):this._selectedElements=n=e.slice(),this._eventBus.fire("selection.changed",{oldSelection:i,newSelection:n})};var Ea="hover",Sa="selected";function Ra(e,t){function n(t,n){e.addMarker(t,n)}function i(t,n){e.removeMarker(t,n)}this._canvas=e,t.on("element.hover",(function(e){n(e.element,Ea)})),t.on("element.out",(function(e){i(e.element,Ea)})),t.on("selection.changed",(function(e){var t=e.oldSelection,o=e.newSelection;p(t,(function(e){-1===o.indexOf(e)&&function(e){i(e,Sa)}(e)})),p(o,(function(e){-1===t.indexOf(e)&&function(e){n(e,Sa)}(e)}))}))}function Ta(e,t,n,i){e.on("create.end",500,(function(e){var n=e.context,i=n.canExecute,o=n.elements,s=(n.hints||{}).autoSelect;if(i){if(!1===s)return;r(s)?t.select(s):t.select(o.filter(Ma))}})),e.on("connect.end",500,(function(e){var n=e.context.connection;n&&t.select(n)})),e.on("shape.move.end",500,(function(e){var n=e.previousSelection||[],o=i.get(e.context.shape.id);h(n,(function(e){return o.id===e.id}))||t.select(o)})),e.on("element.click",(function(e){if(ya(e)){var i=e.element;i===n.getRootElement()&&(i=null);var o=t.isSelected(i),r=t.get().length>1,s=ba(e);if(o&&r)return s?t.deselect(i):t.select(i);o?t.deselect(i):t.select(i,s)}}))}function Ma(e){return!e.hidden}Ra.$inject=["canvas","eventBus"],Ta.$inject=["eventBus","selection","canvas","elementRegistry"];var Aa={__init__:["selectionVisuals","selectionBehavior"],__depends__:[Oa],selection:["type",ka],selectionVisuals:["type",Ra],selectionBehavior:["type",Ta]};function Pa(e){this._counter=0,this._prefix=(e?e+"-":"")+Math.floor(1e9*Math.random())+"-"}Pa.prototype.next=function(){return this._prefix+ ++this._counter};var Da=new Pa("ov");function $a(e,t,n,i){var o,r;this._eventBus=t,this._canvas=n,this._elementRegistry=i,this._ids=Da,this._overlayDefaults=M({show:null,scale:!0},e&&e.defaults),this._overlays={},this._overlayContainers=[],this._overlayRoot=(o=n.getContainer(),At(r=Gt('<div class="djs-overlay-container" />'),{position:"absolute",width:0,height:0}),o.insertBefore(r,o.firstChild),r),this._init()}function ja(e,t,n){At(e,{left:t+"px",top:n+"px"})}function Ia(e,t){e.style.display=!1===t?"none":""}function Ba(e,t){e.style["transform-origin"]="top left",["","-ms-","-webkit-"].forEach((function(n){e.style[n+"transform"]=t}))}$a.$inject=["config.overlays","eventBus","canvas","elementRegistry"],$a.prototype.get=function(e){if(c(e)&&(e={id:e}),c(e.element)&&(e.element=this._elementRegistry.get(e.element)),e.element){var t=this._getOverlayContainer(e.element,!0);return t?e.type?d(t.overlays,C({type:e.type})):t.overlays.slice():[]}return e.type?d(this._overlays,C({type:e.type})):e.id?this._overlays[e.id]:null},$a.prototype.add=function(e,t,n){if(s(t)&&(n=t,t=null),e.id||(e=this._elementRegistry.get(e)),!n.position)throw new Error("must specifiy overlay position");if(!n.html)throw new Error("must specifiy overlay html");if(!e)throw new Error("invalid element specified");var i=this._ids.next();return n=M({},this._overlayDefaults,n,{id:i,type:t,element:e,html:n.html}),this._addOverlay(n),i},$a.prototype.remove=function(e){var t=this.get(e)||[];r(t)||(t=[t]);var n=this;p(t,(function(e){var t=n._getOverlayContainer(e.element,!0);if(e&&(en(e.html),en(e.htmlContainer),delete e.htmlContainer,delete e.element,delete n._overlays[e.id]),t){var i=t.overlays.indexOf(e);-1!==i&&t.overlays.splice(i,1)}}))},$a.prototype.isShown=function(){return"none"!==this._overlayRoot.style.display},$a.prototype.show=function(){Ia(this._overlayRoot)},$a.prototype.hide=function(){Ia(this._overlayRoot,!1)},$a.prototype.clear=function(){this._overlays={},this._overlayContainers=[],It(this._overlayRoot)},$a.prototype._updateOverlayContainer=function(e){var t=e.element,n=e.html,i=t.x,o=t.y;if(t.waypoints){var r=mi(t);i=r.x,o=r.y}ja(n,i,o),Pt(e.html,"data-container-id",t.id)},$a.prototype._updateOverlay=function(e){var t,n,i=e.position,o=e.htmlContainer,r=e.element,s=i.left,a=i.top;void 0!==i.right&&(t=r.waypoints?mi(r).width:r.width,s=-1*i.right+t);void 0!==i.bottom&&(n=r.waypoints?mi(r).height:r.height,a=-1*i.bottom+n);ja(o,s||0,a||0),this._updateOverlayVisibilty(e,this._canvas.viewbox())},$a.prototype._createOverlayContainer=function(e){var t=Gt('<div class="djs-overlays" />');At(t,{position:"absolute"}),this._overlayRoot.appendChild(t);var n={html:t,element:e,overlays:[]};return this._updateOverlayContainer(n),this._overlayContainers.push(n),n},$a.prototype._updateRoot=function(e){var t=e.scale||1,n="matrix("+[t,0,0,t,-1*e.x*t,-1*e.y*t].join(",")+")";Ba(this._overlayRoot,n)},$a.prototype._getOverlayContainer=function(e,t){var n=h(this._overlayContainers,(function(t){return t.element===e}));return n||t?n:this._createOverlayContainer(e)},$a.prototype._addOverlay=function(e){var t,n,i=e.id,o=e.element,r=e.html;r.get&&r.constructor.prototype.jquery&&(r=r.get(0)),c(r)&&(r=Gt(r)),n=this._getOverlayContainer(o),At(t=Gt('<div class="djs-overlay" data-overlay-id="'+i+'">'),{position:"absolute"}),t.appendChild(r),e.type&&$t(t).add("djs-overlay-"+e.type),Ia(t,this._canvas.findRoot(o)===this._canvas.getRootElement()),e.htmlContainer=t,n.overlays.push(e),n.html.appendChild(t),this._overlays[i]=e,this._updateOverlay(e),this._updateOverlayVisibilty(e,this._canvas.viewbox())},$a.prototype._updateOverlayVisibilty=function(e,t){var n=e.show,o=this._canvas.findRoot(e.element),r=n&&n.minZoom,s=n&&n.maxZoom,a=e.htmlContainer,l=!0;(o!==this._canvas.getRootElement()||n&&(i(r)&&r>t.scale||i(s)&&s<t.scale))&&(l=!1),Ia(a,l),this._updateOverlayScale(e,t)},$a.prototype._updateOverlayScale=function(e,t){var n,o,r,s=e.scale,a=e.htmlContainer,l="";!0!==s&&(!1===s?(n=1,o=1):(n=s.min,o=s.max),i(n)&&t.scale<n&&(r=(1/t.scale||1)*n),i(o)&&t.scale>o&&(r=(1/t.scale||1)*o)),i(r)&&(l="scale("+r+","+r+")"),Ba(a,l)},$a.prototype._updateOverlaysVisibilty=function(e){var t=this;p(this._overlays,(function(n){t._updateOverlayVisibilty(n,e)}))},$a.prototype._init=function(){var e=this._eventBus,t=this;e.on("canvas.viewbox.changing",(function(e){t.hide()})),e.on("canvas.viewbox.changed",(function(e){var n;n=e.viewbox,t._updateRoot(n),t._updateOverlaysVisibilty(n),t.show()})),e.on(["shape.remove","connection.remove"],(function(e){var n=e.element;p(t.get({element:n}),(function(e){t.remove(e.id)}));var i=t._getOverlayContainer(n);if(i){en(i.html);var o=t._overlayContainers.indexOf(i);-1!==o&&t._overlayContainers.splice(o,1)}})),e.on("element.changed",500,(function(e){var n=e.element,i=t._getOverlayContainer(n,!0);i&&(p(i.overlays,(function(e){t._updateOverlay(e)})),t._updateOverlayContainer(i))})),e.on("element.marker.update",(function(e){var n=t._getOverlayContainer(e.element,!0);n&&$t(n.html)[e.add?"add":"remove"](e.marker)})),e.on("root.set",(function(){t._updateOverlaysVisibilty(t._canvas.viewbox())})),e.on("diagram.clear",this.clear,this)};var La={__init__:["overlays"],overlays:["type",$a]};function Na(e,t,n){this._eventBus=e,this._canvas=t,this._translate=n,e.on("diagram.init",(function(){this._init()}),this),e.on("import.done",(function(e){e.error||this.update()}),this),this.HTML_MARKUP='<div class="dmn-definitions"><div class="dmn-definitions-name" title="'+this._translate("Definition name")+'" spellcheck="false"></div><div class="dmn-definitions-id" title="'+this._translate("Definition ID")+'" spellcheck="false"></div></div>'}function qa(e,t){function n(e,n){$t(t.getContainer()).toggle(e,n)}e.on("palette.create",(function(){n("with-palette",!0)})),e.on("palette.changed",(function(e){n("with-palette-two-column",e.twoColumn)}))}Na.$inject=["eventBus","canvas","translate"],Na.prototype._init=function(){var e=this._canvas,t=this._eventBus,n=e.getContainer(),i=this._container=Gt(this.HTML_MARKUP);n.appendChild(i),this.nameElement=Zt(".dmn-definitions-name",this._container),this.idElement=Zt(".dmn-definitions-id",this._container),Wt.bind(i,".dmn-definitions-name, .dmn-definitions-id","mousedown",(function(e){e.stopPropagation()})),t.fire("definitionIdView.create",{html:i})},Na.prototype.update=function(){var e=this._canvas.getRootElement().businessObject;this.nameElement.textContent=e.name,this.idElement.textContent=e.id},qa.$inject=["eventBus","canvas"];var Va={__depends__:[ha],__init__:["definitionPropertiesView","definitionPropertiesPaletteAdapter"],definitionPropertiesView:["type",Na],definitionPropertiesPaletteAdapter:["type",qa]},Fa=[{className:"dmn-icon-decision-table",matches:function(e){var t=fn(e);return hn(t,"dmn:Decision")&&hn(t.decisionLogic,"dmn:DecisionTable")},title:"Open decision table"},{className:"dmn-icon-literal-expression",matches:function(e){return hn(mn(e),"dmn:LiteralExpression")},title:"Open literal expression"}];class za{constructor(e,t,n,i,o){this._injector=e,this._eventBus=t,this._overlays=n,this._translate=o,this._config=i||{enabled:!0},t.on(["shape.added"],(({element:e})=>{for(let t=0;t<Fa.length;t++){const{matches:n,className:i,title:o}=Fa[t];n&&n(e)&&this.addOverlay(e,i,o)}}))}addOverlay(e,t,n){const i=!1!==this._config.enabled,o=this._getOverlayNode(t,n,i),r=this._overlays.add(e,{position:{top:2,left:2},html:o});i&&($t(o).add("interactive"),this.bindEventListener(e,o,r))}_getOverlayNode(e,t,n){const i=document.createElement("div");if(i.className="drill-down-overlay",!n){const t=document.createElement("span");return t.className=e,i.appendChild(t),i}const o=document.createElement("button");return o.type="button",o.className=e,o.title=this._translate(t),i.appendChild(o),i}bindEventListener(e,t,n){const i=this._overlays,o=this._eventBus,r=i._overlayRoot;Wt.bind(r,'[data-overlay-id="'+n+'"]',"click",(()=>{!1!==o.fire("drillDown.click",{element:e})&&this.drillDown(e)}))}drillDown(e){const t=this._injector.get("_parent",!1);if(!t)return!1;const n=t.getView(e.businessObject);return!!n&&(t.open(n),!0)}}za.$inject=["injector","eventBus","overlays","config.drillDown","translate"];var Qa={__depends__:[La,ha],__init__:["drillDown"],drillDown:["type",za]};
191 `,this._current.container)},nd.prototype.open=function(e,t,n,i){if(!e)throw new Error("target is missing");if(!t)throw new Error("providers for <"+t+"> not found");if(!n)throw new Error("position is missing");this.isOpen()&&this.close();const{entries:o,headerEntries:r,emptyPlaceholder:s}=this._getContext(e,t);this._current={position:n,providerId:t,target:e,entries:o,headerEntries:r,emptyPlaceholder:s,container:this._createContainer({provider:t}),options:i},this._emit("open"),this._bindAutoClose(),this._render()},nd.prototype.refresh=function(){if(!this.isOpen())return;const{target:e,providerId:t}=this._current,{entries:n,headerEntries:i,emptyPlaceholder:o}=this._getContext(e,t);this._current={...this._current,entries:n,headerEntries:i,emptyPlaceholder:o},this._emit("refresh"),this._render()},nd.prototype._getContext=function(e,t){const n=this._getProviders(t);if(!n||!n.length)throw new Error("provider for <"+t+"> not found");const i=this._getEntries(e,n),o=this._getHeaderEntries(e,n);return{entries:i,headerEntries:o,emptyPlaceholder:this._getEmptyPlaceholder(n),empty:!(Object.keys(i).length||Object.keys(o).length)}},nd.prototype.close=function(){this.isOpen()&&(this._emit("close"),this.reset(),this._canvas.restoreFocus(),this._current=null)},nd.prototype.reset=function(){const e=this._current.container;mh(null,e),en(e)},nd.prototype._emit=function(e,t){this._eventBus.fire(`popupMenu.${e}`,t)},nd.prototype._onOpened=function(){this._emit("opened")},nd.prototype._onClosed=function(){this._emit("closed")},nd.prototype._createContainer=function(e){var t=this._canvas.getContainer();const n=Gt(`<div class="djs-popup-parent djs-scrollable" data-popup=${e.provider}></div>`);return t.appendChild(n),n},nd.prototype._bindAutoClose=function(){this._eventBus.once(td,this.close,this)},nd.prototype._unbindAutoClose=function(){this._eventBus.off(td,this.close,this)},nd.prototype._updateScale=function(){var e,t,n=this._canvas.zoom(),o=this._config.scale,r=n;return!0!==o&&(!1===o?(e=1,t=1):(e=o.min,t=o.max),i(e)&&n<e&&(r=e),i(t)&&n>t&&(r=t)),r},nd.prototype._ensureVisible=function(e,t){var n=document.documentElement.getBoundingClientRect(),i=e.getBoundingClientRect(),o={},r=t.x,s=t.y;return t.x+i.width>n.width&&(o.x=!0),t.y+i.height>n.height&&(o.y=!0),o.x&&o.y?(r=t.x-i.width,s=t.y-i.height):o.x?(r=t.x-i.width,s=t.y):o.y&&t.y<i.height?(r=t.x,s=10):o.y&&(r=t.x,s=t.y-i.height),t.y<n.top&&(s=t.y+i.height),{x:r,y:s}},nd.prototype.isEmpty=function(e,t){if(!e)throw new Error("target is missing");if(!t)throw new Error("provider ID is missing");const n=this._getProviders(t);return!n||!n.length||this._getContext(e,t).empty},nd.prototype.registerProvider=function(e,t,n){n||(n=t,t=1e3),this._eventBus.on("popupMenu.getProviders."+e,t,(function(e){e.providers.push(n)}))},nd.prototype._getProviders=function(e){var t=this._eventBus.createEvent({type:"popupMenu.getProviders."+e,providers:[]});return this._eventBus.fire(t),t.providers},nd.prototype._getEntries=function(e,t){var n={};return p(t,(function(t){if(t.getPopupMenuEntries){var i=t.getPopupMenuEntries(e);l(i)?n=i(n):p(i,(function(e,t){n[t]=e}))}else p(t.getEntries(e),(function(e){var t=e.id;if(!t)throw new Error("entry ID is missing");n[t]=P(e,["id"])}))})),n},nd.prototype._getHeaderEntries=function(e,t){var n={};return p(t,(function(t){if(t.getPopupMenuHeaderEntries){var i=t.getPopupMenuHeaderEntries(e);l(i)?n=i(n):p(i,(function(e,t){n[t]=e}))}else{if(!t.getHeaderEntries)return;p(t.getHeaderEntries(e),(function(e){var t=e.id;if(!t)throw new Error("entry ID is missing");n[t]=P(e,["id"])}))}})),n},nd.prototype._getEmptyPlaceholder=function(e){const t=e.find((e=>l(e.getEmptyPlaceholder)));return t&&t.getEmptyPlaceholder()},nd.prototype.isOpen=function(){return!!this._current},nd.prototype.trigger=function(e,t,n="click"){if(e.preventDefault(),!t){let n=Pt(Bt(e.delegateTarget||e.target,".entry",!0),"data-id");t={id:n,...this._getEntry(n)}}const i=t.action;if(!1!==this._emit("trigger",{entry:t,event:e}))if(l(i)){if("click"===n)return i(e,t)}else if(i[n])return i[n](e,t)},nd.prototype._getEntry=function(e){var t=this._current.entries[e]||this._current.headerEntries[e];if(!t)throw new Error("entry not found");return t};var ad={search:["value",function(e,t,n){const{keys:i}=n,o=t.trim().toLowerCase().split(/\s+/);return e.flatMap((e=>{const t=function(e,t,n){const{matchedWords:i,tokens:o}=n.reduce(((n,i)=>{const o=e[i],{tokens:r,matchedWords:s}=function(e,t){if(!e)return{tokens:[],matchedWords:{}};const n=[],i={},o=t.map(sd).flatMap((e=>["(?<wordStart>\\b"+e+")",e])).join("|"),r=new RegExp(o,"ig");let s,a=0;for(;s=r.exec(e);){const[t]=s;s.index>a&&n.push({value:e.slice(a,s.index),index:a}),n.push({value:t,index:s.index,match:!0,wordStart:!!s.groups.wordStart,start:0===s.index}),i[t.toLowerCase()]=!0,a=s.index+t.length}a<e.length&&n.push({value:e.slice(a),index:a});return{tokens:n,matchedWords:i}}(o,t);return{tokens:{...n.tokens,[i]:r},matchedWords:{...n.matchedWords,...s}}}),{matchedWords:{},tokens:{}});if(Object.keys(i).length!==t.length)return null;return o}(e,o,i);return t?{item:e,tokens:t}:[]})).sort(function(e){return(t,n)=>{for(const i of e){const e=id(t.tokens[i],n.tokens[i]);if(0!==e)return e;const o=rd(t.item[i],n.item[i]);if(0!==o)return o}return 0}}(i))}]},ld={__depends__:[ad],__init__:["popupMenu"],popupMenu:["type",nd]},cd=Math.round;function ud(e,t){this._modeling=e,this._eventBus=t}function hd(e,t){t.on("replace.end",500,(function(t){const{newElement:n,hints:i={}}=t;!1!==i.select&&e.select(n)}))}ud.$inject=["modeling","eventBus"],ud.prototype.replaceElement=function(e,t,n){if(e.waypoints)return null;var i=this._modeling,o=this._eventBus;o.fire("replace.start",{element:e,attrs:t,hints:n});var r=t.width||e.width,s=t.height||e.height,a=t.x||e.x,l=t.y||e.y,c=cd(a+r/2),u=cd(l+s/2),h=i.replaceShape(e,M({},t,{x:c,y:u,width:r,height:s}),n);return o.fire("replace.end",{element:e,newElement:h,hints:n}),h},hd.$inject=["selection","eventBus"];var dd={__init__:["replace","replaceSelectionBehavior"],replaceSelectionBehavior:["type",hd],replace:["type",ud]};function pd(e,t,n,i){this.replaceElement=function(n,i,o){o=o||{};var r=i.type,s=n.businessObject,a=e.create(r),l={type:r,businessObject:a};if(l.width=n.width,l.height=n.height,a.name=s.name,i.table){var c=e.create("dmn:DecisionTable");c.$parent=a;var u=e.create("dmn:OutputClause");u.typeRef="string",u.$parent=c,c.output=[u];var h=e.create("dmn:InputClause");h.$parent=c;var d=e.create("dmn:LiteralExpression",{typeRef:"string"});h.inputExpression=d,d.$parent=h,c.input=[h],fd(a,c,e)}if(i.expression){var p=e.create("dmn:LiteralExpression"),f=e.create("dmn:InformationItem",{name:s.name});fd(a,p,e,f)}return t.replaceElement(n,l,o)}}function fd(e,t,n,i){if(hn(e,"dmn:Decision"))e.decisionLogic=t,t.$parent=e;else if(hn(e,"dmn:BusinessKnowledgeModel")){var o=n.create("dmn:FunctionDefinition",{body:t});e.encapsulatedLogic=o,o.$parent=e,t.$parent=o}i&&(e.variable=i,i.$parent=e)}pd.$inject=["drdFactory","replace","selection","modeling"];var gd={__depends__:[dd,Aa],drdReplace:["type",pd]},md=[{label:"Empty",actionName:"replace-with-empty-decision",className:"dmn-icon-clear",target:{type:"dmn:Decision",table:!1,expression:!1}},{label:"Decision table",actionName:"replace-with-decision-table",className:"dmn-icon-decision-table",target:{type:"dmn:Decision",table:!0,expression:!1}},{label:"Literal expression",actionName:"replace-with-literal-expression",className:"dmn-icon-literal-expression",target:{type:"dmn:Decision",table:!1,expression:!0}}],vd=[{label:"Empty",actionName:"replace-with-empty",className:"dmn-icon-clear",target:{type:"dmn:BusinessKnowledgeModel",table:!1,expression:!1}},{label:"Literal Expression",actionName:"replace-with-literal-expression",className:"dmn-icon-literal-expression",target:{type:"dmn:BusinessKnowledgeModel",table:!1,expression:!0}}];function yd(e,t,n,i,o,r){this._popupMenu=e,this._modeling=t,this._moddle=n,this._drdReplace=i,this._rules=o,this._translate=r,this.register()}yd.$inject=["popupMenu","modeling","moddle","drdReplace","rules","translate"],yd.prototype.register=function(){this._popupMenu.registerProvider("dmn-replace",this)},yd.prototype.getEntries=function(e){var t,n,i=e.businessObject;return this._rules.allowed("shape.replace",{element:e})?hn(i,"dmn:Decision")?(n=mn(i),t=d(md,(function(e){var t="replace-with-empty-decision"===e.actionName&&n,i="replace-with-decision-table"===e.actionName&&!hn(n,"dmn:DecisionTable"),o="replace-with-literal-expression"===e.actionName&&!hn(n,"dmn:LiteralExpression");return t||i||o})),this._createEntries(e,t)):hn(i,"dmn:BusinessKnowledgeModel")?(n=mn(i),t=d(vd,(function(e){var t="replace-with-empty"===e.actionName&&n,i="replace-with-decision-table"===e.actionName&&!hn(n,"dmn:DecisionTable"),o="replace-with-literal-expression"===e.actionName&&!hn(n,"dmn:LiteralExpression");return t||i||o})),this._createEntries(e,t)):[]:[]},yd.prototype._createEntries=function(e,t){var n=[],i=this;return p(t,(function(t){var o=i._createMenuEntry(t,e);n.push(o)})),n},yd.prototype._createMenuEntry=function(e,t,n){var i=this._drdReplace.replaceElement;return n=n||function(){return i(t,e.target)},{label:(0,this._translate)(e.label),className:e.className,id:e.actionName,action:n}},yd.prototype.getHeaderEntries=function(e){return[]};var xd={__depends__:[ha,ld,gd],__init__:["replaceMenuProvider"],replaceMenuProvider:["type",yd]};function bd(e,t,n,i,o,r,s,a,l,c,u,h){u=u||{},t.registerProvider(this),this._contextPad=t,this._modeling=n,this._elementFactory=i,this._connect=o,this._create=r,this._rules=s,this._popupMenu=a,this._canvas=l,this._translate=c,!1!==u.autoPlace&&(this._autoPlace=h.get("autoPlace",!1)),e.on("create.end",250,(function(e){var n=e.context.shape;if(xa(e)){var i=t.getEntries(n);i.replace&&i.replace.action.click(e,n)}}))}bd.$inject=["eventBus","contextPad","modeling","elementFactory","connect","create","rules","popupMenu","canvas","translate","config.contextPad","injector"],bd.prototype.getContextPadEntries=function(e){var t=this._modeling,n=this._elementFactory,i=this._connect,o=this._create,s=this._popupMenu,a=this._contextPad,l=this._rules,c=this._translate,u=this._autoPlace,h={};if("label"===e.type)return h;var d=e.businessObject;function p(e,t,n){i.start(e,t,n)}function f(e,t,i,r){function s(t,i){var s=n.createShape(M({type:e},r));o.start(t,s,{source:i,hints:{connectionTarget:i}})}var a=u?function(t,i){var o=n.createShape(M({type:e},r));u.append(i,o,{connectionTarget:i})}:s;return{group:"model",className:t,title:i,action:{dragstart:s,click:a}}}hn(d,"dmn:Decision")&&M(h,{"append.decision":f("dmn:Decision","dmn-icon-decision",c("Append decision"))}),gn(d,["dmn:BusinessKnowledgeModel","dmn:Decision","dmn:KnowledgeSource"])&&M(h,{"append.knowledge-source":f("dmn:KnowledgeSource","dmn-icon-knowledge-source",c("Append knowledge source"))}),gn(d,["dmn:BusinessKnowledgeModel","dmn:Decision"])&&M(h,{"append.business-knowledge-model":f("dmn:BusinessKnowledgeModel","dmn-icon-business-knowledge",c("Append business knowledge model"))}),gn(d,["dmn:Decision","dmn:KnowledgeSource"])&&M(h,{"append.input-data":f("dmn:InputData","dmn-icon-input-data",c("Append input data"))}),hn(d,"dmn:DRGElement")&&M(h,{"append.text-annotation":f("dmn:TextAnnotation","dmn-icon-text-annotation",c("Add text annotation")),connect:{group:"connect",className:"dmn-icon-connection-multi",title:c("Connect to other element"),action:{click:p,dragstart:p}}}),hn(d,"dmn:TextAnnotation")&&M(h,{connect:{group:"connect",className:"dmn-icon-connection-multi",title:c("Connect to other element"),action:{click:p,dragstart:p}}}),s.isEmpty(e,"dmn-replace")||M(h,{replace:{group:"edit",className:"dmn-icon-screw-wrench",title:c("Change type"),action:{click:function(e,t){var n=M(function(e){var t=a.getPad(e).html.getBoundingClientRect();return{x:t.left,y:t.bottom+5}}(t),{cursor:{x:e.x,y:e.y}});s.open(t,"dmn-replace",n)}}}});var g=l.allowed("elements.delete",{elements:[e]});return r(g)&&(g=g[0]===e),g&&M(h,{delete:{group:"edit",className:"dmn-icon-trash",title:c("Delete"),action:{click:function(n){t.removeElements([e])}}}}),h};var _d={__depends__:[ha,du,Aa,yu,zu,xd],__init__:["contextPadProvider"],contextPadProvider:["type",bd]};function wd(e,t,n,i){this._canvas=t,this._graphicsFactory=n,this._elementFactory=i,this._connectionDocking=e.get("connectionDocking",!1),this._layouter=e.get("layouter",!1)}wd.$inject=["injector","canvas","graphicsFactory","elementFactory"],wd.prototype.drawPreview=function(e,t,n){n=n||{};var i,o,r,s=e.connectionPreviewGfx,a=e.getConnection,l=n.source,c=n.target,u=n.waypoints,h=n.connectionStart,d=n.connectionEnd,p=n.noLayout,f=n.noCropping,g=n.noNoop,m=this;s||(s=e.connectionPreviewGfx=this.createConnectionPreviewGfx()),Nn(s),a||(a=e.getConnection=(o=function(e,t,n){return m.getConnection(e,t,n)},r={},function(e){var t=JSON.stringify(e),n=r[t];return n||(n=r[t]=o.apply(null,arguments)),n})),t&&(i=a(t,l,c)),i?(i.waypoints=u||[],this._layouter&&!p&&(i.waypoints=this._layouter.layoutConnection(i,{source:l,target:c,connectionStart:h,connectionEnd:d,waypoints:n.waypoints||i.waypoints})),i.waypoints&&i.waypoints.length||(i.waypoints=[l?mo(l):h,c?mo(c):d]),this._connectionDocking&&(l||c)&&!f&&(i.waypoints=this._connectionDocking.getCroppedWaypoints(i,l,c)),this._graphicsFactory.drawConnection(s,i,{stroke:"var(--element-dragger-color)"})):!g&&this.drawNoopPreview(s,n)},wd.prototype.drawNoopPreview=function(e,t){var n=t.source,i=t.target,o=t.connectionStart||mo(n),r=t.connectionEnd||mo(i),s=this.cropWaypoints(o,r,n,i);An(e,this.createNoopConnection(s[0],s[1]))},wd.prototype.cropWaypoints=function(e,t,n,i){var o=this._graphicsFactory,r=n&&o.getShapePath(n),s=i&&o.getShapePath(i),a=o.getConnectionPath({waypoints:[e,t]});return[e=n&&yo(r,a,!0)||e,t=i&&yo(s,a,!1)||t]},wd.prototype.cleanUp=function(e){e&&e.connectionPreviewGfx&&ti(e.connectionPreviewGfx)},wd.prototype.getConnection=function(e){var t=function(e){return s(e)?e:{}}(e);return this._elementFactory.createConnection(t)},wd.prototype.createConnectionPreviewGfx=function(){var e=Qn("g");return jn(e,{pointerEvents:"none"}),Bn(e).add("djs-dragger"),An(this._canvas.getActiveLayer(),e),e},wd.prototype.createNoopConnection=function(e,t){return ci([e,t],{stroke:"#333",strokeDasharray:[1],strokeWidth:2,"pointer-events":"none"})};var Cd={__init__:["connectionPreview"],connectionPreview:["type",wd]};const Od=/\s/,kd=/^([a-z][\w-.]*:)?[a-z_][\w-.]*$/i,Ed=/^[a-z_][\w-.]*$/i,Sd=/\$\{([^}]*)\}/g;function Rd(e,t){const n=e.$model.ids.assigned(t);return t?n&&n!==e?"Element must have unique ID.":function(e){if(e=function(e){return e.replace(Sd,"$1")}(e),function(e){return Od.test(e)}(e))return"Id must not contain spaces.";if(!Ed.test(e))return kd.test(e)?"Id must not contain prefix.":"Id must be a valid QName."}(t):"Element must have ID."}function Td(e,t,n,i,o){this._eventBus=e,this._modeling=t,this._canvas=n,this._definitionPropertiesView=i,this._translate=o,e.on("definitionIdView.create",(function(e){this._container=e.html;var t=Zt(".dmn-definitions-name",this._container),n=Zt(".dmn-definitions-id",this._container);this._setup(t,"name"),this._setup(n,"id")}),this)}Td.$inject=["eventBus","modeling","canvas","definitionPropertiesView","translate"],Td.prototype.update=function(e,t){var n=this._canvas.getRootElement(),i={};if(i[e]=t,"id"===e){var o=Rd(fn(n),t);if(o)return void this._addErrorMessage(o);this._clearErrorMessage()}this._modeling.updateProperties(n,i)},Td.prototype._setup=function(e,t){var n=this;e.setAttribute("contenteditable",!0),e.addEventListener("input",R((function(e){var i=e.target.value||e.target.textContent;n.update(t,i.trim())}),300)),e.addEventListener("keydown",(function(t){13===t.keyCode&&(e.blur(),window.getSelection().removeAllRanges())})),e.addEventListener("blur",(function(){n._clearErrorMessage(),n._definitionPropertiesView.update()}))},Td.prototype._addErrorMessage=function(e){const t='<span class="dmn-definitions-error-message">'+this._translate(e)+"</span>";var n=Zt(".dmn-definitions-id",this._container);this._clearErrorMessage(),$t(n).add("dmn-definitions-error"),n.parentElement.appendChild(Gt(t))},Td.prototype._clearErrorMessage=function(){var e=Zt(".dmn-definitions-id",this._container);if($t(e).has("dmn-definitions-error")){$t(e).remove("dmn-definitions-error");const t=Zt(".dmn-definitions-error-message",this._container);e.parentNode.removeChild(t)}};var Md={__depends__:[Va],__init__:["definitionPropertiesEdit","definitionPropertiesPaletteAdapter"],definitionPropertiesEdit:["type",Td],definitionPropertiesPaletteAdapter:["type",qa]},Ad={horizontal:["x","width"],vertical:["y","height"]};function Pd(e,t){this._modeling=e,this._filters=[],this.registerFilter((function(e){var n=t.allowed("elements.distribute",{elements:e});return r(n)?n:n?e:[]}))}Pd.$inject=["modeling","rules"],Pd.prototype.registerFilter=function(e){if("function"!=typeof e)throw new Error("the filter has to be a function");this._filters.push(e)},Pd.prototype.trigger=function(e,t){var n,i,o=this._modeling;if(!(e.length<3||(this._setOrientation(t),i=this._filterElements(e),(n=this._createGroups(i)).length<=2)))return o.distributeElements(n,this._axis,this._dimension),n},Pd.prototype._filterElements=function(e){var t=this._filters,n=this._axis,i=this._dimension,o=[].concat(e);return t.length?(p(t,(function(e){o=e(o,n,i)})),o):e},Pd.prototype._createGroups=function(e){var t=[],n=this,i=this._axis,o=this._dimension;if(!i)throw new Error('must have a defined "axis" and "dimension"');return p(w(e,i),(function(e,r){var s,a=n._findRange(e,i,o),l=t[t.length-1];l&&n._hasIntersection(l.range,a)?t[t.length-1].elements.push(e):(s={range:a,elements:[e]},t.push(s))})),t},Pd.prototype._setOrientation=function(e){var t=Ad[e];this._axis=t[0],this._dimension=t[1]},Pd.prototype._hasIntersection=function(e,t){return Math.max(e.min,e.max)>=Math.min(t.min,t.max)&&Math.min(e.min,e.max)<=Math.max(t.min,t.max)},Pd.prototype._findRange=function(e){var t=e[this._axis];return{min:t+5,max:t+e[this._dimension]-5}};var Dd={__init__:["distributeElements"],distributeElements:["type",Pd]};function $d(e){e.registerFilter((function(e){return d(e,(function(e){var t=gn(e,["dmn:AuthorityRequirement","dmn:InformationRequirement","dmn:KnowledgeRequirement","dmn:Association","dmn:TextAnnotation"]);return!(e.labelTarget||t)}))}))}$d.$inject=["distributeElements"];var jd={__depends__:[Dd],__init__:["drdDistributeElements"],drdDistributeElements:["type",$d]},Id="is not a registered action";function Bd(e,t){this._actions={};var n=this;e.on("diagram.init",(function(){n._registerDefaultActions(t),e.fire("editorActions.init",{editorActions:n})}))}function Ld(e,t){return new Error(e+" "+t)}Bd.$inject=["eventBus","injector"],Bd.prototype._registerDefaultActions=function(e){var t=e.get("commandStack",!1),n=e.get("modeling",!1),i=e.get("selection",!1),o=e.get("zoomScroll",!1),s=e.get("copyPaste",!1),a=e.get("canvas",!1),l=e.get("rules",!1),c=e.get("keyboardMove",!1),u=e.get("keyboardMoveSelection",!1);t&&(this.register("undo",(function(){t.undo()})),this.register("redo",(function(){t.redo()}))),s&&i&&this.register("copy",(function(){var e=i.get();if(e.length)return s.copy(e)})),s&&this.register("paste",(function(){s.paste()})),o&&this.register("stepZoom",(function(e){o.stepZoom(e.value)})),a&&this.register("zoom",(function(e){a.zoom(e.value)})),n&&i&&l&&this.register("removeSelection",(function(){var e=i.get();if(e.length){var t,o=l.allowed("elements.delete",{elements:e});!1!==o&&(t=r(o)?o:e).length&&n.removeElements(t.slice())}})),c&&this.register("moveCanvas",(function(e){c.moveCanvas(e)})),u&&this.register("moveSelection",(function(e){u.moveSelection(e.direction,e.accelerated)}))},Bd.prototype.trigger=function(e,t){if(!this._actions[e])throw Ld(e,Id);return this._actions[e](t)},Bd.prototype.register=function(e,t){var n=this;if("string"==typeof e)return this._registerAction(e,t);p(e,(function(e,t){n._registerAction(t,e)}))},Bd.prototype._registerAction=function(e,t){if(this.isRegistered(e))throw Ld(e,"is already registered");this._actions[e]=t},Bd.prototype.unregister=function(e){if(!this.isRegistered(e))throw Ld(e,Id);this._actions[e]=void 0},Bd.prototype.getActions=function(){return Object.keys(this._actions)},Bd.prototype.isRegistered=function(e){return!!this._actions[e]};var Nd={__init__:["editorActions"],editorActions:["type",Bd]};function qd(e){e.invoke(Bd,this)}yn(qd,Bd),qd.$inject=["injector"],qd.prototype._registerDefaultActions=function(e){Bd.prototype._registerDefaultActions.call(this,e);const t=e.get("canvas",!1),n=e.get("elementRegistry",!1),i=e.get("selection",!1),o=e.get("lassoTool",!1),r=e.get("handTool",!1),s=e.get("directEditing",!1),a=e.get("distributeElements",!1),l=e.get("alignElements",!1),c=e.get("searchPad",!1);t&&n&&i&&this._registerAction("selectElements",(function(){var e=t.getRootElement(),o=n.filter((function(t){return t!==e}));return i.select(o),o})),i&&a&&this._registerAction("distributeElements",(function(e){var t=i.get(),n=e.type;t.length>2&&a.trigger(t,n)})),i&&l&&this._registerAction("alignElements",(function(e){var t=i.get(),n=e.type;t.length>1&&l.trigger(t,n)})),o&&this._registerAction("lassoTool",(function(){o.toggle()})),r&&this._registerAction("handTool",(function(){r.toggle()})),i&&s&&this._registerAction("directEditing",(function(){var e=i.get();e.length&&s.activate(e[0])})),i&&c&&this._registerAction("find",(function(){c.toggle()}))};var Vd={__depends__:[Nd],editorActions:["type",qd]};function Fd(e){return e.dmnDI&&e.dmnDI.diagrams&&e.dmnDI.diagrams[0]}function zd(e,t,n,i){n.on("import.start",(({definitions:n})=>{Fd(n)||function(n){var o=n.dmnDI;o||(o=e.create("dmndi:DMNDI"),n.set("dmnDI",o));var r=e.create("dmndi:DMNDiagram");o.set("diagrams",[r]);var s=0;p(n.get("drgElement"),(function(n){if(hn(n,"dmn:Decision")){var o=t._getDefaultSize(n),a=e.createDiShape(n,{x:150+30*s,y:150+30*s,width:o.width,height:o.height});i.updateDiParent(a,r),s++}}))}(n)}))}zd.$inject=["drdFactory","elementFactory","eventBus","drdUpdater"];var Qd={__init__:["diGenerator"],diGenerator:["type",zd]};function Hd(e,t,n){return n||(n="round"),Math[n](e/t)*t}function Wd(e,t,n){var i=!n||!1!==n.active;this._eventBus=t;var o=this;t.on("diagram.init",800,(function(){o.setActive(i)})),t.on(["create.move","create.end","bendpoint.move.move","bendpoint.move.end","connect.move","connect.end","connectionSegment.move.move","connectionSegment.move.end","resize.move","resize.end","shape.move.move","shape.move.end"],1200,(function(t){var n=t.originalEvent;if(!(!o.active||n&&pl(n))){var i=t.context,r=i.gridSnappingContext;r||(r=i.gridSnappingContext={}),["x","y"].forEach((function(n){var i={},r=function(e,t,n){var i=e.context,o=e.shape,r=i.gridSnappingContext,s=r.snapLocation,l=r.snapOffset;if(l&&a(l[t]))return l[t];l||(l=r.snapOffset={});a(l[t])||(l[t]=0);if(!o)return l[t];n.get(o.id)||(Ud(t)?l[t]+=o[t]+o.width/2:l[t]+=o[t]+o.height/2);if(!s)return l[t];"x"===t?/left/.test(s)?l[t]-=o.width/2:/right/.test(s)&&(l[t]+=o.width/2):/top/.test(s)?l[t]-=o.height/2:/bottom/.test(s)&&(l[t]+=o.height/2);return l[t]}(t,n,e);r&&(i.offset=r);var s=function(e,t){var n=e.context,i=n.createConstraints,o=n.resizeConstraints||{},r=n.gridSnappingContext,s=r.snapConstraints;if(s&&s[t])return s[t];s||(s=r.snapConstraints={});s[t]||(s[t]={});var a=n.direction;i&&(Ud(t)?(s.x.min=i.left,s.x.max=i.right):(s.y.min=i.top,s.y.max=i.bottom));var l=o.min,c=o.max;l&&(Ud(t)?Kd(a)?s.x.max=l.left:s.x.min=l.right:Xd(a)?s.y.max=l.top:s.y.min=l.bottom);c&&(Ud(t)?Kd(a)?s.x.min=c.left:s.x.max=c.right:Xd(a)?s.y.min=c.top:s.y.max=c.bottom);return s[t]}(t,n);s&&M(i,s),eu(t,n)||o.snapEvent(t,n,i)}))}}))}function Ud(e){return"x"===e}function Xd(e){return-1!==e.indexOf("n")}function Kd(e){return-1!==e.indexOf("w")}Wd.prototype.snapEvent=function(e,t,n){tu(e,t,this.snapValue(e[t],n))},Wd.prototype.getGridSpacing=function(){return 10},Wd.prototype.snapValue=function(e,t){var n,i,o=0;return t&&t.offset&&(o=t.offset),e=Hd(e+=o,10),t&&t.min&&a(n=t.min)&&(n=Hd(n+o,10,"ceil"),e=Math.max(e,n)),t&&t.max&&a(i=t.max)&&(i=Hd(i+o,10,"floor"),e=Math.min(e,i)),e-=o},Wd.prototype.isActive=function(){return this.active},Wd.prototype.setActive=function(e){this.active=e,this._eventBus.fire("gridSnapping.toggle",{active:e})},Wd.prototype.toggleActive=function(){this.setActive(!this.active)},Wd.$inject=["elementRegistry","eventBus","config.gridSnapping"];function Gd(e){this._eventBus=e}function Yd(e){return function(t,n,i,o,r){(l(t)||a(t))&&(r=o,o=i,i=n,n=t,t=null),this.on(t,e,n,i,o,r)}}function Zd(e,t){Gd.call(this,e),this._gridSnapping=t;var n=this;this.preExecute("shape.resize",(function(e){var t=e.context,i=(t.hints||{}).autoResize;if(i){var o=t.shape,r=t.newBounds;c(i)?t.newBounds=n.snapComplex(r,i):t.newBounds=n.snapSimple(o,r)}}))}Gd.$inject=["eventBus"],Gd.prototype.on=function(e,t,n,i,o,c){if((l(t)||a(t))&&(c=o,o=i,i=n,n=t,t=null),l(n)&&(c=o,o=i,i=n,n=1e3),s(o)&&(c=o,o=!1),!l(i))throw new Error("handlerFn must be a function");r(e)||(e=[e]);var u=this._eventBus;p(e,(function(e){var r=["commandStack",e,t].filter((function(e){return e})).join(".");u.on(r,n,o?function(e,t){return function(n){return e.call(t||null,n.context,n.command,n)}}(i,c):i,c)}))},Gd.prototype.canExecute=Yd("canExecute"),Gd.prototype.preExecute=Yd("preExecute"),Gd.prototype.preExecuted=Yd("preExecuted"),Gd.prototype.execute=Yd("execute"),Gd.prototype.executed=Yd("executed"),Gd.prototype.postExecute=Yd("postExecute"),Gd.prototype.postExecuted=Yd("postExecuted"),Gd.prototype.revert=Yd("revert"),Gd.prototype.reverted=Yd("reverted"),Zd.$inject=["eventBus","gridSnapping","modeling"],yn(Zd,Gd),Zd.prototype.snapSimple=function(e,t){var n=this._gridSnapping;return t.width=n.snapValue(t.width,{min:t.width}),t.height=n.snapValue(t.height,{min:t.height}),t.x=e.x+e.width/2-t.width/2,t.y=e.y+e.height/2-t.height/2,t},Zd.prototype.snapComplex=function(e,t){return/w|e/.test(t)&&(e=this.snapHorizontally(e,t)),/n|s/.test(t)&&(e=this.snapVertically(e,t)),e},Zd.prototype.snapHorizontally=function(e,t){var n=this._gridSnapping,i=/w/.test(t),o=/e/.test(t),r={};return r.width=n.snapValue(e.width,{min:e.width}),o&&(i?(r.x=n.snapValue(e.x,{max:e.x}),r.width+=n.snapValue(e.x-r.x,{min:e.x-r.x})):e.x=e.x+e.width-r.width),M(e,r),e},Zd.prototype.snapVertically=function(e,t){var n=this._gridSnapping,i=/n/.test(t),o=/s/.test(t),r={};return r.height=n.snapValue(e.height,{min:e.height}),i&&(o?(r.y=n.snapValue(e.y,{max:e.y}),r.height+=n.snapValue(e.y-r.y,{min:e.y-r.y})):e.y=e.y+e.height-r.height),M(e,r),e};function Jd(e,t){e.on(["spaceTool.move","spaceTool.end"],2e3,(function(e){var n,i=e.context;i.initialized&&("x"===i.axis?(n=t.snapValue(e.dx),e.x=e.x+n-e.dx,e.dx=n):(n=t.snapValue(e.dy),e.y=e.y+n-e.dy,e.dy=n))}))}Jd.$inject=["eventBus","gridSnapping"];var ep={__depends__:[{__init__:["gridSnappingResizeBehavior","gridSnappingSpaceToolBehavior"],gridSnappingResizeBehavior:["type",Zd],gridSnappingSpaceToolBehavior:["type",Jd]}],__init__:["gridSnapping"],gridSnapping:["type",Wd]},tp="keyboard.keydown",np="Keyboard binding is now implicit; explicit binding to an element got removed. For more information, see https://github.com/bpmn-io/diagram-js/issues/661";function ip(e,t){var n=this;this._config=e=e||{},this._eventBus=t,this._keydownHandler=this._keydownHandler.bind(this),this._keyupHandler=this._keyupHandler.bind(this),t.on("diagram.destroy",(function(){n._fire("destroy"),n.unbind()})),e.bindTo&&console.error("unsupported configuration <keyboard.bindTo>",new Error(np));var i=e&&!1!==e.bind;t.on("canvas.init",(function(e){n._target=e.svg,i&&n.bind(),n._fire("init")}))}ip.$inject=["config.keyboard","eventBus"],ip.prototype._keydownHandler=function(e){this._keyHandler(e,tp)},ip.prototype._keyupHandler=function(e){this._keyHandler(e,"keyboard.keyup")},ip.prototype._keyHandler=function(e,t){if(!this._isEventIgnored(e)){var n={keyEvent:e};this._eventBus.fire(t||tp,n)&&e.preventDefault()}},ip.prototype._isEventIgnored=function(e){return!1},ip.prototype.bind=function(e){e&&console.error("unsupported argument <node>",new Error(np)),this.unbind(),e=this._node=this._target,zt.bind(e,"keydown",this._keydownHandler),zt.bind(e,"keyup",this._keyupHandler),this._fire("bind")},ip.prototype.getBinding=function(){return this._node},ip.prototype.unbind=function(){var e=this._node;e&&(this._fire("unbind"),zt.unbind(e,"keydown",this._keydownHandler),zt.unbind(e,"keyup",this._keyupHandler)),this._node=null},ip.prototype._fire=function(e){this._eventBus.fire("keyboard."+e,{node:this._node})},ip.prototype.addListener=function(e,t,n){l(e)&&(n=t,t=e,e=1e3),this._eventBus.on(n||tp,e,t)},ip.prototype.removeListener=function(e,t){this._eventBus.off(t||tp,e)},ip.prototype.hasModifier=function(e){return e.ctrlKey||e.metaKey||e.shiftKey||e.altKey},ip.prototype.isCmd=pl,ip.prototype.isShift=gl,ip.prototype.isKey=fl;var op=500;function rp(e,t){var n=this;e.on("editorActions.init",op,(function(e){var i=e.editorActions;n.registerBindings(t,i)}))}rp.$inject=["eventBus","keyboard"],rp.prototype.registerBindings=function(e,t){function n(n,i){t.isRegistered(n)&&e.addListener(i)}n("undo",(function(e){if(ml(e.keyEvent))return t.trigger("undo"),!0})),n("redo",(function(e){if(vl(e.keyEvent))return t.trigger("redo"),!0})),n("copy",(function(e){if(function(e){return pl(e)&&fl(cl,e)}(e.keyEvent))return t.trigger("copy"),!0})),n("paste",(function(e){if(function(e){return pl(e)&&fl(ul,e)}(e.keyEvent))return t.trigger("paste"),!0})),n("stepZoom",(function(e){var n=e.keyEvent;if(fl(["+","Add","="],n)&&pl(n))return t.trigger("stepZoom",{value:1}),!0})),n("stepZoom",(function(e){var n=e.keyEvent;if(fl(["-","Subtract"],n)&&pl(n))return t.trigger("stepZoom",{value:-1}),!0})),n("zoom",(function(e){var n=e.keyEvent;if(fl("0",n)&&pl(n))return t.trigger("zoom",{value:1}),!0})),n("removeSelection",(function(e){if(fl(["Backspace","Delete","Del"],e.keyEvent))return t.trigger("removeSelection"),!0}))};var sp={__init__:["keyboard","keyboardBindings"],keyboard:["type",ip],keyboardBindings:["type",rp]};function ap(e){e.invoke(rp,this)}yn(ap,rp),ap.$inject=["injector"],ap.prototype.registerBindings=function(e,t){function n(n,i){t.isRegistered(n)&&e.addListener(i)}rp.prototype.registerBindings.call(this,e,t),n("selectElements",(function(n){var i=n.keyEvent;if(e.isKey(["a","A"],i)&&e.isCmd(i))return t.trigger("selectElements"),!0})),n("lassoTool",(function(n){var i=n.keyEvent;if(!e.hasModifier(i))return e.isKey(["l","L"],i)?(t.trigger("lassoTool"),!0):void 0})),n("handTool",(function(n){var i=n.keyEvent;if(!e.hasModifier(i))return e.isKey(["h","H"],i)?(t.trigger("handTool"),!0):void 0})),n("directEditing",(function(n){var i=n.keyEvent;if(!e.hasModifier(i))return e.isKey(["e","E"],i)?(t.trigger("directEditing"),!0):void 0})),n("find",(function(n){var i=n.keyEvent;if(e.isKey(["f","F"],i)&&e.isCmd(i))return t.trigger("find"),!0}))};var lp={__depends__:[sp],__init__:["keyboardBindings"],keyboardBindings:["type",ap]},cp={moveSpeed:50,moveSpeedAccelerated:200};function up(e,t,n){var i=this;this._config=M({},cp,e||{}),t.addListener((function(e){var n=e.keyEvent,o=i._config;if(!t.isCmd(n))return;if(t.isKey(["ArrowLeft","Left","ArrowUp","Up","ArrowDown","Down","ArrowRight","Right"],n)){var r,s=t.isShift(n)?o.moveSpeedAccelerated:o.moveSpeed;switch(n.key){case"ArrowLeft":case"Left":r="left";break;case"ArrowUp":case"Up":r="up";break;case"ArrowRight":case"Right":r="right";break;case"ArrowDown":case"Down":r="down"}return i.moveCanvas({speed:s,direction:r}),!0}})),this.moveCanvas=function(e){var t=0,i=0,o=e.speed/Math.min(Math.sqrt(n.viewbox().scale),1);switch(e.direction){case"left":t=o;break;case"up":i=o;break;case"right":t=-o;break;case"down":i=-o}n.scroll({dx:t,dy:i})}}up.$inject=["config.keyboardMove","keyboard","canvas"];var hp={__depends__:[sp],__init__:["keyboardMove"],keyboardMove:["type",up]},dp={moveSpeed:1,moveSpeedAccelerated:10},pp="left",fp="right",gp="down",mp={ArrowLeft:pp,Left:pp,ArrowUp:"up",Up:"up",ArrowRight:fp,Right:fp,ArrowDown:gp,Down:gp},vp={left:function(e){return{x:-e,y:0}},up:function(e){return{x:0,y:-e}},right:function(e){return{x:e,y:0}},down:function(e){return{x:0,y:e}}};function yp(e,t,n,i,o){var r=this;this._config=M({},dp,e||{}),t.addListener(1500,(function(e){var n=e.keyEvent,i=mp[n.key];if(i&&!t.isCmd(n)){var o=t.isShift(n);return r.moveSelection(i,o),!0}})),this.moveSelection=function(e,t){var r=o.get();if(r.length){var s=this._config[t?"moveSpeedAccelerated":"moveSpeed"],a=vp[e](s);i.allowed("elements.move",{shapes:r})&&n.moveElements(r,a)}}}yp.$inject=["config.keyboardMoveSelection","keyboard","modeling","rules","selection"];var xp={__depends__:[sp,Aa],__init__:["keyboardMoveSelection"],keyboardMoveSelection:["type",yp]};function bp(e,t){this._handlerMap={},this._stack=[],this._stackIdx=-1,this._currentExecution={actions:[],dirty:[],trigger:null},this._injector=t,this._eventBus=e,this._uid=1,e.on(["diagram.destroy","diagram.clear"],(function(){this.clear(!1)}),this)}bp.$inject=["eventBus","injector"],bp.prototype.execute=function(e,t){if(!e)throw new Error("command required");this._currentExecution.trigger="execute";const n={command:e,context:t};this._pushAction(n),this._internalExecute(n),this._popAction()},bp.prototype.canExecute=function(e,t){const n={command:e,context:t},i=this._getHandler(e);let o=this._fire(e,"canExecute",n);if(void 0===o){if(!i)return!1;i.canExecute&&(o=i.canExecute(t))}return o},bp.prototype.clear=function(e){this._stack.length=0,this._stackIdx=-1,!1!==e&&this._fire("changed",{trigger:"clear"})},bp.prototype.undo=function(){let e,t=this._getUndoAction();if(t){for(this._currentExecution.trigger="undo",this._pushAction(t);t&&(this._internalUndo(t),e=this._getUndoAction(),e&&e.id===t.id);)t=e;this._popAction()}},bp.prototype.redo=function(){let e,t=this._getRedoAction();if(t){for(this._currentExecution.trigger="redo",this._pushAction(t);t&&(this._internalExecute(t,!0),e=this._getRedoAction(),e&&e.id===t.id);)t=e;this._popAction()}},bp.prototype.register=function(e,t){this._setHandler(e,t)},bp.prototype.registerHandler=function(e,t){if(!e||!t)throw new Error("command and handlerCls must be defined");const n=this._injector.instantiate(t);this.register(e,n)},bp.prototype.canUndo=function(){return!!this._getUndoAction()},bp.prototype.canRedo=function(){return!!this._getRedoAction()},bp.prototype._getRedoAction=function(){return this._stack[this._stackIdx+1]},bp.prototype._getUndoAction=function(){return this._stack[this._stackIdx]},bp.prototype._internalUndo=function(e){const t=e.command,n=e.context,i=this._getHandler(t);this._atomicDo((()=>{this._fire(t,"revert",e),i.revert&&this._markDirty(i.revert(n)),this._revertedAction(e),this._fire(t,"reverted",e)}))},bp.prototype._fire=function(e,t,n){arguments.length<3&&(n=t,t=null);const i=t?[e+"."+t,t]:[e];let o;n=this._eventBus.createEvent(n);for(const e of i)if(o=this._eventBus.fire("commandStack."+e,n),n.cancelBubble)break;return o},bp.prototype._createId=function(){return this._uid++},bp.prototype._atomicDo=function(e){const t=this._currentExecution;t.atomic=!0;try{e()}finally{t.atomic=!1}},bp.prototype._internalExecute=function(e,t){const n=e.command,i=e.context,o=this._getHandler(n);if(!o)throw new Error("no command handler registered for <"+n+">");this._pushAction(e),t||(this._fire(n,"preExecute",e),o.preExecute&&o.preExecute(i),this._fire(n,"preExecuted",e)),this._atomicDo((()=>{this._fire(n,"execute",e),o.execute&&this._markDirty(o.execute(i)),this._executedAction(e,t),this._fire(n,"executed",e)})),t||(this._fire(n,"postExecute",e),o.postExecute&&o.postExecute(i),this._fire(n,"postExecuted",e)),this._popAction()},bp.prototype._pushAction=function(e){const t=this._currentExecution,n=t.actions,i=n[0];if(t.atomic)throw new Error("illegal invocation in <execute> or <revert> phase (action: "+e.command+")");e.id||(e.id=i&&i.id||this._createId()),n.push(e)},bp.prototype._popAction=function(){const e=this._currentExecution,t=e.trigger,n=e.actions,i=e.dirty;n.pop(),n.length||(this._eventBus.fire("elements.changed",{elements:_("id",i.reverse())}),i.length=0,this._fire("changed",{trigger:t}),e.trigger=null)},bp.prototype._markDirty=function(e){const t=this._currentExecution;e&&(e=r(e)?e:[e],t.dirty=t.dirty.concat(e))},bp.prototype._executedAction=function(e,t){const n=++this._stackIdx;t||this._stack.splice(n,this._stack.length,e)},bp.prototype._revertedAction=function(e){this._stackIdx--},bp.prototype._getHandler=function(e){return this._handlerMap[e]},bp.prototype._setHandler=function(e,t){if(!e||!t)throw new Error("command and handler required");if(this._handlerMap[e])throw new Error("overriding handler for command <"+e+">");this._handlerMap[e]=t};var _p={commandStack:["type",bp]};function wp(e,t,n,i){e.on("element.changed",(function(i){var o=i.element;(o.parent||o===t.getRootElement())&&(i.gfx=n.getGraphics(o)),i.gfx&&e.fire(vi(o)+".changed",i)})),e.on("elements.changed",(function(t){var n=t.elements;n.forEach((function(t){e.fire("element.changed",{element:t})})),i.updateContainments(n)})),e.on("shape.changed",(function(e){i.update("shape",e.element,e.gfx)})),e.on("connection.changed",(function(e){i.update("connection",e.element,e.gfx)}))}wp.$inject=["eventBus","canvas","elementRegistry","graphicsFactory"];var Cp={__init__:["changeSupport"],changeSupport:["type",wp]},Op=Math.min,kp=Math.max;function Ep(e){e.preventDefault()}function Sp(e){e.stopPropagation()}function Rp(e){this.container=e.container,this.parent=Gt('<div class="djs-direct-editing-parent"><div class="djs-direct-editing-content" contenteditable="true"></div></div>'),this.content=Zt("[contenteditable]",this.parent),this.keyHandler=e.keyHandler||function(){},this.resizeHandler=e.resizeHandler||function(){},this.autoResize=T(this.autoResize,this),this.handlePaste=T(this.handlePaste,this)}function Tp(e,t){this._eventBus=e,this._canvas=t,this._providers=[],this._textbox=new Rp({container:t.getContainer(),keyHandler:T(this._handleKey,this),resizeHandler:T(this._handleResize,this)})}Rp.prototype.create=function(e,t,n,i){var o=this.parent,r=this.content,s=this.container;i=this.options=i||{};var a=A(t=this.style=t||{},["width","height","maxWidth","maxHeight","minWidth","minHeight","left","top","backgroundColor","position","overflow","border","wordWrap","textAlign","outline","transform"]);M(o.style,{width:e.width+"px",height:e.height+"px",maxWidth:e.maxWidth+"px",maxHeight:e.maxHeight+"px",minWidth:e.minWidth+"px",minHeight:e.minHeight+"px",left:e.x+"px",top:e.y+"px",backgroundColor:"#ffffff",position:"absolute",overflow:"visible",border:"1px solid #ccc",boxSizing:"border-box",wordWrap:"normal",textAlign:"center",outline:"none"},a);var l=A(t,["fontFamily","fontSize","fontWeight","lineHeight","padding","paddingTop","paddingRight","paddingBottom","paddingLeft"]);return M(r.style,{boxSizing:"border-box",width:"100%",outline:"none",wordWrap:"break-word"},l),i.centerVertically&&M(r.style,{position:"absolute",top:"50%",transform:"translate(0, -50%)"},l),r.innerText=n,zt.bind(r,"keydown",this.keyHandler),zt.bind(r,"mousedown",Sp),zt.bind(r,"paste",this.handlePaste),i.autoResize&&zt.bind(r,"input",this.autoResize),i.resizable&&this.resizable(t),s.appendChild(o),this.setSelection(r.lastChild,r.lastChild&&r.lastChild.length),o},Rp.prototype.handlePaste=function(e){var t,n=this.options,i=this.style;if(e.preventDefault(),t=e.clipboardData?e.clipboardData.getData("text/plain"):window.clipboardData.getData("Text"),this.insertText(t),n.autoResize){var o=this.autoResize(i);o&&this.resizeHandler(o)}},Rp.prototype.insertText=function(e){e=function(e){return e.replace(/\r\n|\r|\n/g,"\n")}(e),document.execCommand("insertText",!1,e)||this._insertTextIE(e)},Rp.prototype._insertTextIE=function(e){var t,n,i,o=this.getSelection(),r=o.startContainer,s=o.endContainer,a=o.startOffset,l=o.endOffset,c=o.commonAncestorContainer,u=(t=c.childNodes,[].slice.call(t));if(function(e){return e.nodeType===Node.TEXT_NODE}(c)){var h=r.textContent;r.textContent=h.substring(0,a)+e+h.substring(l),n=r,i=a+e.length}else if(r===this.content&&s===this.content){var d=document.createTextNode(e);this.content.insertBefore(d,u[a]),n=d,i=d.textContent.length}else{var p=u.indexOf(r),f=u.indexOf(s);u.forEach((function(t,n){n===p?t.textContent=r.textContent.substring(0,a)+e+s.textContent.substring(l):n>p&&n<=f&&en(t)})),n=r,i=a+e.length}n&&void 0!==i&&setTimeout((function(){self.setSelection(n,i)}))},Rp.prototype.autoResize=function(){var e=this.parent,t=this.content,n=parseInt(this.style.fontSize)||12;if(t.scrollHeight>e.offsetHeight||t.scrollHeight<e.offsetHeight-n){var i=e.getBoundingClientRect(),o=t.scrollHeight;e.style.height=o+"px",this.resizeHandler({width:i.width,height:i.height,dx:0,dy:o-i.height})}},Rp.prototype.resizable=function(){var e=this,t=this.parent,n=this.resizeHandle,i=parseInt(this.style.minWidth)||0,o=parseInt(this.style.minHeight)||0,r=parseInt(this.style.maxWidth)||1/0,s=parseInt(this.style.maxHeight)||1/0;if(!n){var a,l,c,u;n=this.resizeHandle=Gt('<div class="djs-direct-editing-resize-handle"></div>');var h=function(n){Ep(n),Sp(n);var h=Op(kp(c+n.clientX-a,i),r),d=Op(kp(u+n.clientY-l,o),s);t.style.width=h+"px",t.style.height=d+"px",e.resizeHandler({width:c,height:u,dx:n.clientX-a,dy:n.clientY-l})},d=function(e){Ep(e),Sp(e),zt.unbind(document,"mousemove",h,!1),zt.unbind(document,"mouseup",d,!1)};zt.bind(n,"mousedown",(function(e){Ep(e),Sp(e),a=e.clientX,l=e.clientY;var n=t.getBoundingClientRect();c=n.width,u=n.height,zt.bind(document,"mousemove",h),zt.bind(document,"mouseup",d)}))}M(n.style,{position:"absolute",bottom:"0px",right:"0px",cursor:"nwse-resize",width:"0",height:"0",borderTop:(parseInt(this.style.fontSize)/4||3)+"px solid transparent",borderRight:(parseInt(this.style.fontSize)/4||3)+"px solid #ccc",borderBottom:(parseInt(this.style.fontSize)/4||3)+"px solid #ccc",borderLeft:(parseInt(this.style.fontSize)/4||3)+"px solid transparent"}),t.appendChild(n)},Rp.prototype.destroy=function(){var e=this.parent,t=this.content,n=this.resizeHandle;t.innerText="",e.removeAttribute("style"),t.removeAttribute("style"),zt.unbind(t,"keydown",this.keyHandler),zt.unbind(t,"mousedown",Sp),zt.unbind(t,"input",this.autoResize),zt.unbind(t,"paste",this.handlePaste),n&&(n.removeAttribute("style"),en(n)),en(e)},Rp.prototype.getValue=function(){return this.content.innerText.trim()},Rp.prototype.getSelection=function(){return window.getSelection().getRangeAt(0)},Rp.prototype.setSelection=function(e,t){var n=document.createRange();null===e?n.selectNodeContents(this.content):(n.setStart(e,t),n.setEnd(e,t));var i=window.getSelection();i.removeAllRanges(),i.addRange(n)},Tp.$inject=["eventBus","canvas"],Tp.prototype.registerProvider=function(e){this._providers.push(e)},Tp.prototype.isActive=function(e){return!(!this._active||e&&this._active.element!==e)},Tp.prototype.cancel=function(){this._active&&(this._fire("cancel"),this.close())},Tp.prototype._fire=function(e,t){this._eventBus.fire("directEditing."+e,t||{active:this._active})},Tp.prototype.close=function(){this._textbox.destroy(),this._fire("deactivate"),this._active=null,this.resizable=void 0,this._canvas.restoreFocus&&this._canvas.restoreFocus()},Tp.prototype.complete=function(){var e=this._active;if(e){var t,n=e.context.bounds,i=this.$textbox.getBoundingClientRect(),o=this.getValue();o===e.context.text&&i.height===n.height&&i.width===n.width||(t=this._textbox.container.getBoundingClientRect(),e.provider.update(e.element,o,e.context.text,{x:i.left-t.left,y:i.top-t.top,width:i.width,height:i.height})),this._fire("complete"),this.close()}},Tp.prototype.getValue=function(){return this._textbox.getValue()},Tp.prototype._handleKey=function(e){e.stopPropagation();var t=e.keyCode||e.charCode;return 27===t?(e.preventDefault(),this.cancel()):13!==t||e.shiftKey?void 0:(e.preventDefault(),this.complete())},Tp.prototype._handleResize=function(e){this._fire("resize",e)},Tp.prototype.activate=function(e){var t;this.isActive()&&this.cancel();var n=h(this._providers,(function(n){return(t=n.activate(e))?n:null}));return t&&(this.$textbox=this._textbox.create(t.bounds,t.style,t.text,t.options),this._active={element:e,context:t,provider:n},t.options&&t.options.resizable&&(this.resizable=!0),this._fire("activate")),!!t};var Mp={__depends__:[Oa],__init__:["directEditing"],directEditing:["type",Tp]},Ap="djs-label-hidden";function Pp(e,t,n,i,o){this._canvas=e,this._modeling=i,this._textRenderer=o,this._eventBus=n,t.registerProvider(this),n.on("element.dblclick",(function(e){t.activate(e.element)})),n.on(["autoPlace.start","canvas.viewbox.changing","drag.init","drillDown.click","element.mousedown","popupMenu.open","selection.changed"],(function(){t.complete()})),n.on(["commandStack.changed"],(function(){t.cancel()})),n.on("create.end",500,(function(e){var n=e.shape;(hn(n,"dmn:Decision")||hn(n,"dmn:InputData")||hn(n,"dmn:BusinessKnowledgeModel")||hn(n,"dmn:KnowledgeSource")||hn(n,"dmn:TextAnnotation"))&&t.activate(n)})),n.on("autoPlace.end",500,(function(e){t.activate(e.shape)})),this._eventBus.on(["directEditing.complete","directEditing.cancel"],(function(t){var n=t.active;if(n){var i=n.element.label||n.element;e.removeMarker(i,Ap)}}))}Pp.$inject=["canvas","directEditing","eventBus","modeling","textRenderer"],Pp.prototype.activate=function(e){var t=wl(e);if(i(t)){var n={text:t};M(n,this.getEditingBBox(e));var o={},r=n.style||{};return hn(e,"dmn:DRGElement")&&(M(o,{centerVertically:!0}),M(r,{backgroundColor:null,border:null})),hn(e,"dmn:TextAnnotation")&&M(o,{resizable:!0}),M(n,{options:o,style:r}),this._canvas.addMarker(e,Ap),n}},Pp.prototype.getEditingBBox=function(e){var t=this._canvas,n=e.label||e,i=t.getAbsoluteBBox(n),o={x:i.x,y:i.y},r=t.zoom(),s=this._textRenderer.getDefaultStyle(),a=s.fontSize*r,l=s.lineHeight,c={fontFamily:this._textRenderer.getDefaultStyle().fontFamily,fontWeight:this._textRenderer.getDefaultStyle().fontWeight};return hn(e,"dmn:DRGElement")&&(M(o,{width:i.width,height:i.height}),M(c,{fontSize:a+"px",lineHeight:l,paddingTop:7*r+"px",paddingBottom:7*r+"px",paddingLeft:5*r+"px",paddingRight:5*r+"px"})),hn(e,"dmn:TextAnnotation")&&(M(o,{width:i.width,height:i.height,minWidth:30*r,minHeight:10*r}),M(c,{textAlign:"left",paddingTop:5*r+"px",paddingBottom:7*r+"px",paddingLeft:7*r+"px",paddingRight:5*r+"px",fontSize:a+"px",lineHeight:l})),{bounds:o,style:c}},Pp.prototype.update=function(e,t,n,i){var o,r,s;hn(e,"dmn:TextAnnotation")&&(r=this._canvas.getAbsoluteBBox(e),o={x:e.x,y:e.y,width:e.width/r.width*i.width,height:e.height/r.height*i.height}),(s=t)&&s.trim()||(t=null),this._modeling.updateLabel(e,t,o)};var Dp={__depends__:[_p,Cp,Mp],__init__:["labelEditingProvider"],labelEditingProvider:["type",Pp]};function $p(e,t){t.invoke(Gd,this),this.preExecute("connection.create",(function(t){var n=t.connection,i=n.businessObject,o=t.source,r=t.target;hn(n,"dmn:Association")?((i.sourceRef=e.create("dmn:DMNElementReference",{href:"#"+o.id})).$parent=i,(i.targetRef=e.create("dmn:DMNElementReference",{href:"#"+r.id})).$parent=i):(i["required"+function(e){if(hn(e,"dmn:BusinessKnowledgeModel"))return"Knowledge";if(hn(e,"dmn:Decision"))return"Decision";if(hn(e,"dmn:InputData"))return"Input";if(hn(e,"dmn:KnowledgeSource"))return"Authority"}(o)]=e.create("dmn:DMNElementReference",{href:"#"+o.id})).$parent=i}),!0)}$p.$inject=["drdFactory","injector"],yn($p,Gd);function jp(e,t,n,i){function o(e,i,o){i||(i=e.incoming.filter((function(e){return hn(e,"dmn:InformationRequirement")})));var r={};o?r[o]=i:r=function(e,t){var n={};return t.forEach((function(t){var i=vo(t.source,e).split("-").shift();n[i]||(n[i]=[]),n[i].push(t)})),n}(e,i),p(r,(function(i,o){i=function(e,t){var n;n=t.includes("top")||t.includes("bottom")?"x":"y";return e.sort((function(e,t){return mo(e.source)[n]-mo(t.source)[n]}))}(i,o);var r=function(e,t,n){return e.map((function(i,o){var r=i.source,s=mo(r),a=po(r),l=po(t),c=e.length;return n.includes("bottom")?{start:{x:s.x,y:a.top},end:{x:l.left+t.width/(c+1)*(o+1),y:l.bottom}}:n.includes("top")?{start:{x:s.x,y:a.bottom},end:{x:l.left+t.width/(c+1)*(o+1),y:l.top}}:n.includes("right")?{start:{x:a.left,y:s.y},end:{x:l.right,y:l.top+t.height/(c+1)*(o+1)}}:{start:{x:a.right,y:s.y},end:{x:l.left,y:l.top+t.height/(c+1)*(o+1)}}}))}(i,e,o);i.forEach(((e,i)=>{var o=r[i].start,s=r[i].end,a=t.layoutConnection(e,{connectionStart:o,connectionEnd:s});n.updateWaypoints(e,a)}))}))}e.invoke(Gd,this),this.preExecute(["connection.create","connection.reconnect"],(function(e){var t=e.connection,n=e.newSource||e.source,o=e.newTarget||e.target;if((!hn(t,"dmn:InformationRequirement")||i.allowed("connection.connect",{connection:t,source:n,target:o}))&&hn(t,"dmn:InformationRequirement")){var r=vo(n,o);e.hints||(e.hints={}),M(e.hints,function(e,t,n){var i=mo(e),o=mo(t);n.includes("bottom")?(i.y=e.y,o.y=t.y+t.height):n.includes("top")?(i.y=e.y+e.height,o.y=t.y):n.includes("right")?(i.x=e.x,o.x=t.x+t.width):(i.x=e.x+e.width,o.x=t.x);return{connectionStart:i,connectionEnd:o}}(n,o,r))}}),!0),this.postExecuted(["connection.create","connection.delete","connection.reconnect"],(function(e){var t=e.connection,n=t.source||e.source,i=t.target||e.target;if(hn(t,"dmn:InformationRequirement")){var r=vo(n,i),s=i.incoming.filter((e=>{var t=vo(e.source,e.target);return hn(e,"dmn:InformationRequirement")&&Ip(t,r)}));s.length&&o(i,s,r)}}),!0),this.preExecute("connection.reconnect",(function(e){var t=e.connection,n=t.source,i=t.target;if(hn(t,"dmn:InformationRequirement")){var r=vo(n,i),s=i.incoming.filter((e=>{var n=vo(e.source,e.target);return e!==t&&hn(e,"dmn:InformationRequirement")&&Ip(n,r)}));s.length&&o(i,s,r)}}),!0),this.postExecuted("elements.move",500,(function(e){var t=e.shapes,n=e.closure.enclosedConnections;t.forEach((function(e){if(gn(e,["dmn:Decision","dmn:InputData"])){var t=e.incoming.filter((function(e){return hn(e,"dmn:InformationRequirement")&&!n[e.id]}));t.length&&o(e,t),e.outgoing.forEach((function(e){hn(e,"dmn:InformationRequirement")&&!n[e.id]&&o(e.target)}))}}))}),!0)}function Ip(e,t){return e&&t&&e.split("-").shift()===t.split("-").shift()}function Bp(e,t,n){e.invoke(Gd,this),this.preExecute("connection.reconnect",(function(e){var i=e.connection,o=e.newSource||i.source,r=e.newTarget||i.target,s=i.waypoints.slice(),a=n.allowed("connection.reconnect",{connection:i,source:o,target:r});a&&a.type!==i.type&&(e.connection=t.connect(o,r,{type:a.type,waypoints:s}),t.removeConnection(i))}),!0)}function Lp(e,t,n){Gd.call(this,e),this._modeling=t,this.postExecuted(["shape.replace"],1500,(function(e){var i=e.context,o=i.oldShape,r=i.newShape;t.unclaimId(o.businessObject.id,o.businessObject),t.updateProperties(r,{id:o.id}),n.select(r)}))}jp.$inject=["injector","layouter","modeling","rules"],yn(jp,Gd),yn(Bp,Gd),Bp.$inject=["injector","modeling","rules"],yn(Lp,Gd),Lp.$inject=["eventBus","modeling","selection"];const Np="id";class qp extends Gd{constructor(e){super(e),this.executed("element.updateProperties",this.updateIds.bind(this))}updateIds({context:e}){const{element:t,oldProperties:n,properties:i}=e,o=fn(t);if(this.shouldSkipUpdate(o,n,i))return;const r=function(e){let t=e;for(;!hn(t,"dmn:Definitions");)t=t.$parent;return t}(o);r.get("drgElement").forEach((e=>{!function(e,t,n){const i={authorityRequirement:()=>{e.authorityRequirement.forEach((e=>{const{requiredAuthority:i,requiredDecision:o,requiredInput:r}=e;i&&i.href===`#${t}`&&(i.href=`#${n}`),o&&o.href===`#${t}`&&(o.href=`#${n}`),r&&r.href===`#${t}`&&(r.href=`#${n}`)}))},informationRequirement:()=>{e.informationRequirement.forEach((e=>{const{requiredDecision:i,requiredInput:o}=e;i&&i.href===`#${t}`&&(i.href=`#${n}`),o&&o.href===`#${t}`&&(o.href=`#${n}`)}))},knowledgeRequirement:()=>{e.knowledgeRequirement.forEach((e=>{const{requiredKnowledge:i}=e;i&&i.href===`#${t}`&&(i.href=`#${n}`)}))}};p(i,((t,n)=>{e[n]&&t()}))}(e,n.id,i.id)}));r.get("artifact").forEach((e=>{!function(e,t,n){const i={sourceRef:()=>{const{sourceRef:i}=e;i.href===`#${t}`&&(i.href=`#${n}`)},targetRef:()=>{const{targetRef:i}=e;i.href===`#${t}`&&(i.href=`#${n}`)}};p(i,((t,n)=>{e[n]&&t()}))}(e,n.id,i.id)}))}shouldSkipUpdate(e,t,n){return!function(e,t){return Np in e&&Np in t}(t,n)||!hn(e,"dmn:DRGElement")&&!hn(e,"dmn:TextAnnotation")}}qp.$inject=["eventBus"];let Vp=class extends Gd{static $inject=["eventBus","modeling"];constructor(e,t){super(e),this._modeling=t,this.postExecuted("element.updateProperties",this.updateVariableFromElement),this.postExecuted("element.updateLabel",this.updateVariableFromLabel)}updateVariableFromLabel=({context:e})=>{const{element:t,newLabel:n}=e,i=fn(t).variable;i&&this._modeling.updateProperties(i,{name:n})};updateVariableFromElement=({context:e})=>{const{element:t,properties:n}=e,i=fn(t);i.variable&&(hn(t,"dmn:Decision")||hn(t,"dmn:BusinessKnowledgeModel"))&&this.isNameChanged(n)&&(this.isVariable(t)||this.shouldSyncVariable(t)||this.syncElementVariableChange(i))};isNameChanged(e){return"name"in e}isVariable(e){const t=function(e){return e.$parent}(e);return hn(e,"dmn:InformationItem")&&t&&t.get("variable")===e}shouldSyncVariable(e){const t=fn(e),n=t.get("variable");return n&&t.name===n.name}syncElementVariableChange(e){const t=e.get("name"),n=e.variable;this._modeling.updateProperties(n,{name:t})}};var Fp={__init__:["createConnectionBehavior","idChangeBehavior","nameChangeBehavior","layoutConnectionBehavior","replaceConnectionBehavior","replaceElementBehavior"],createConnectionBehavior:["type",$p],idChangeBehavior:["type",qp],nameChangeBehavior:["type",Vp],layoutConnectionBehavior:["type",jp],replaceConnectionBehavior:["type",Bp],replaceElementBehavior:["type",Lp]};function zp(e){Gd.call(this,e),this.init()}function Qp(e){e.invoke(zp,this)}function Hp(e,t){if(!e||Xp(e)||!t||Xp(t))return null;if(e===t)return!1;if(hn(e,"dmn:BusinessKnowledgeModel")&&gn(t,["dmn:BusinessKnowledgeModel","dmn:Decision"]))return{type:"dmn:KnowledgeRequirement"};if(hn(e,"dmn:Decision")){if(hn(t,"dmn:Decision"))return{type:"dmn:InformationRequirement"};if(hn(t,"dmn:KnowledgeSource"))return{type:"dmn:AuthorityRequirement"}}if(hn(e,"dmn:Definitions")||hn(t,"dmn:Definitions"))return!1;if(hn(e,"dmn:InputData")){if(hn(t,"dmn:Decision"))return{type:"dmn:InformationRequirement"};if(hn(t,"dmn:KnowledgeSource"))return{type:"dmn:AuthorityRequirement"}}return hn(e,"dmn:KnowledgeSource")&&gn(t,["dmn:BusinessKnowledgeModel","dmn:Decision","dmn:KnowledgeSource"])?{type:"dmn:AuthorityRequirement"}:!!(hn(e,"dmn:TextAnnotation")&&!hn(t,"dmn:TextAnnotation")||!hn(e,"dmn:TextAnnotation")&&hn(t,"dmn:TextAnnotation"))&&{type:"dmn:Association"}}function Wp(e,t){return gn(e,["dmn:BusinessKnowledgeModel","dmn:Decision","dmn:InputData","dmn:KnowledgeSource","dmn:TextAnnotation"])&&hn(t,"dmn:Definitions")}function Up(e,t){return r(e)||(e=[e]),!t||!(!g(e,(function(e){return gn(e,["dmn:BusinessKnowledgeModel","dmn:Decision","dmn:InputData","dmn:KnowledgeSource","dmn:TextAnnotation","dmn:InformationRequirement","dmn:AuthorityRequirement","dmn:KnowledgeRequirement","dmn:Association"])}))||!hn(t,"dmn:Definitions"))}function Xp(e){return!!e.labelTarget}zp.$inject=["eventBus"],yn(zp,Gd),zp.prototype.addRule=function(e,t,n){var i=this;"string"==typeof e&&(e=[e]),e.forEach((function(e){i.canExecute(e,t,(function(e,t,i){return n(e)}),!0)}))},zp.prototype.init=function(){},yn(Qp,zp),Qp.$inject=["injector"],Qp.prototype.init=function(){this.addRule("connection.create",(function(e){return Hp(e.source,e.target)})),this.addRule("connection.reconnect",(function(e){return e.connection,Hp(e.source,e.target)})),this.addRule("connection.updateWaypoints",(function(e){const t=e.connection;return{type:t.type,businessObject:t.businessObject}})),this.addRule("elements.move",(function(e){var t=e.target,n=e.shapes;return e.position,Up(n,t)})),this.addRule("shape.create",(function(e){return Wp(e.shape,e.target)})),this.addRule("shape.resize",(function(e){return hn(e.shape,"dmn:TextAnnotation")}))},Qp.prototype.canConnect=Hp,Qp.prototype.canCreate=Wp,Qp.prototype.canMove=Up;var Kp={__depends__:[gc],__init__:["drdRules"],drdRules:["type",Qp]};function Gp(e){this._model=e}function Yp(e,t,n,i,o){o.invoke(Gd,this),this._definitionPropertiesView=t,this._drdFactory=n,this._drdRules=i;var r=this;function s(e){var t=e.connection,n=e.parent,i=e.shape;t&&!hn(t,"dmn:Association")&&(n=t.target),r.updateParent(i||t,n)}function a(e){var t=e.connection,n=e.shape,i=e.parent||e.newParent;t&&!hn(t,"dmn:Association")&&(i=t.target),r.updateParent(n||t,i)}function l(e){var t=e.shape;(hn(t,"dmn:DRGElement")||hn(t,"dmn:TextAnnotation"))&&r.updateBounds(t)}function c(e){r.updateConnectionWaypoints(e)}this.executed(["connection.create","connection.layout"],(function(t){var n=t.connection;t.cropped||(n.waypoints=e.getCroppedWaypoints(n),t.cropped=!0)}),!0),this.reverted(["connection.layout"],(function(e){delete e.cropped}),!0),this.executed(["connection.create","connection.delete","connection.move","shape.create","shape.delete"],s,!0),this.reverted(["connection.create","connection.delete","connection.move","shape.create","shape.delete"],a,!0),this.executed(["shape.create","shape.move","shape.resize"],l,!0),this.reverted(["shape.create","shape.move","shape.resize"],l,!0),this.executed(["connection.create","connection.layout","connection.move","connection.updateWaypoints"],c,!0),this.reverted(["connection.create","connection.layout","connection.move","connection.updateWaypoints"],c,!0),this.executed("connection.create",(function(e){var t=e.connection,n=t.businessObject,i=e.target.businessObject;hn(t,"dmn:Association")?s(e):r.updateSemanticParent(n,i)}),!0),this.reverted("connection.create",(function(e){a(e)}),!0),this.executed("connection.reconnect",(function(e){var t=e.connection.businessObject,n=e.newTarget.businessObject;hn(t,"dmn:Association")||r.updateSemanticParent(t,n)}),!0),this.reverted("connection.reconnect",(function(e){var t=e.connection.businessObject,n=e.oldTarget.businessObject;hn(t,"dmn:Association")||r.updateSemanticParent(t,n)}),!0),this.executed("element.updateProperties",(function(e){t.update()}),!0),this.reverted("element.updateProperties",(function(e){t.update()}),!0)}function Zp(e,t){this._modeling=e,this._canvas=t}function Jp(e){this._modeling=e}function ef(e,t){this._canvas=e,this._layouter=t}Gp.$inject=["moddle"],Gp.prototype._needsId=function(e){return gn(e,["dmn:Artifact","dmn:DMNElement","dmn:DRGElement","dmndi:DMNDiagram","dmndi:DMNDiagramElement"])},Gp.prototype._ensureId=function(e){var t=(e.$type||"").replace(/^[^:]*:/g,"")+"_";!e.id&&this._needsId(e)&&(e.id=this._model.ids.nextPrefixed(t,e))},Gp.prototype.create=function(e,t){var n=this._model.create(e,t||{});return this._ensureId(n),n},Gp.prototype.createDiShape=function(e,t,n){return this.create("dmndi:DMNShape",M({dmnElementRef:e,bounds:this.createDiBounds(t)},n))},Gp.prototype.createDiBounds=function(e){return this.create("dc:Bounds",e)},Gp.prototype.createDiEdge=function(e,t,n){return this.create("dmndi:DMNEdge",{dmnElementRef:e,waypoint:this.createDiWaypoints(t)},n)},Gp.prototype.createDiWaypoints=function(e){var t=this;return e.map((function(e){return t.createDiWaypoint(e)}))},Gp.prototype.createDiWaypoint=function(e){return this.create("dc:Point",A(e,["x","y"]))},Gp.prototype.createExtensionElements=function(){return this.create("dmn:ExtensionElements",{values:[]})},yn(Yp,Gd),Yp.$inject=["connectionDocking","definitionPropertiesView","drdFactory","drdRules","injector"],Yp.prototype.updateBounds=function(e){M(e.businessObject.di.bounds,{x:e.x,y:e.y,width:e.width,height:e.height})},Yp.prototype.updateConnectionWaypoints=function(e){var t=this._drdFactory,n=e.connection,i=n.businessObject.di;i.waypoint=t.createDiWaypoints(n.waypoints).map((function(e){return e.$parent=i,e}))},Yp.prototype.updateParent=function(e,t){var n=e.parent;hn(e,"dmn:DRGElement")||hn(e,"dmn:Artifact")||(n=t);var i=e.businessObject,o=n&&n.businessObject;this.updateSemanticParent(i,o),this.updateDiParent(i.di,o&&o.di)},Yp.prototype.updateSemanticParent=function(e,t){var n,i;e.$parent!==t&&(hn(e,"dmn:DRGElement")?i="drgElement":hn(e,"dmn:Artifact")?i="artifact":hn(e,"dmn:InformationRequirement")?i="informationRequirement":hn(e,"dmn:AuthorityRequirement")?i="authorityRequirement":hn(e,"dmn:KnowledgeRequirement")&&(i="knowledgeRequirement"),e.$parent&&wi(n=e.$parent.get(i),e),t?(n=t.get(i))&&(n.push(e),e.$parent=t):e.$parent=null)},Yp.prototype.updateDiParent=function(e,t){if(e.$parent!==t){if(!gn(e,["dmndi:DMNEdge","dmndi:DMNShape"]))throw new Error("unsupported");for(var n=t||e;!hn(n,"dmndi:DMNDiagram");)n=n.$parent;var i=n.get("diagramElements");t?(e.$parent=n,Ci(i,e)):(e.$parent=null,wi(i,e))}},Zp.$inject=["modeling","canvas"],Zp.prototype.preExecute=function(e){var t=this._modeling,n=e.elements,o=e.alignment;p(n,(function(e){var n={x:0,y:0};i(o.left)?n.x=o.left-e.x:i(o.right)?n.x=o.right-e.width-e.x:i(o.center)?n.x=o.center-Math.round(e.width/2)-e.x:i(o.top)?n.y=o.top-e.y:i(o.bottom)?n.y=o.bottom-e.height-e.y:i(o.middle)&&(n.y=o.middle-Math.round(e.height/2)-e.y),t.moveElements([e],n,e.parent)}))},Zp.prototype.postExecute=function(e){},Jp.$inject=["modeling"],Jp.prototype.preExecute=function(e){var t=e.source;if(!t)throw new Error("source required");var n=e.target||t.parent,i=e.shape,o=e.hints||{};i=e.shape=this._modeling.createShape(i,e.position,n,{attach:o.attach}),e.shape=i},Jp.prototype.postExecute=function(e){var t,n,i=e.hints||{};t=e.source,n=e.shape,m(t.outgoing,(function(e){return e.target===n}))||(i.connectionTarget===e.source?this._modeling.connect(e.shape,e.source,e.connection):this._modeling.connect(e.source,e.shape,e.connection))},ef.$inject=["canvas","layouter"],ef.prototype.execute=function(e){var t=e.connection,n=e.source,i=e.target,o=e.parent,r=e.parentIndex,s=e.hints;if(!n||!i)throw new Error("source and target required");if(!o)throw new Error("parent required");return t.source=n,t.target=i,t.waypoints||(t.waypoints=this._layouter.layoutConnection(t,s)),this._canvas.addConnection(t,o,r),t},ef.prototype.revert=function(e){var t=e.connection;return this._canvas.removeConnection(t),t.source=null,t.target=null,t};var tf=Math.round;function nf(e){this._modeling=e}nf.$inject=["modeling"],nf.prototype.preExecute=function(e){var t=e.elements,n=e.parent,i=e.parentIndex,o=e.position,r=e.hints,s=this._modeling;p(t,(function(e){a(e.x)||(e.x=0),a(e.y)||(e.y=0)}));var l=mi(d(t,(function(e){return!e.hidden})));p(t,(function(e){co(e)&&(e.waypoints=v(e.waypoints,(function(e){return{x:tf(e.x-l.x-l.width/2+o.x),y:tf(e.y-l.y-l.height/2+o.y)}}))),M(e,{x:tf(e.x-l.x-l.width/2+o.x),y:tf(e.y-l.y-l.height/2+o.y)})}));var c=hi(t),u={};p(t,(function(e){if(co(e))u[e.id]=a(i)?s.createConnection(u[e.source.id],u[e.target.id],i,e,e.parent||n,r):s.createConnection(u[e.source.id],u[e.target.id],e,e.parent||n,r);else{var t=M({},r);-1===c.indexOf(e)&&(t.autoResize=!1),uo(e)&&(t=P(t,["attach"])),u[e.id]=a(i)?s.createShape(e,A(e,["x","y","width","height"]),e.parent||n,i,t):s.createShape(e,A(e,["x","y","width","height"]),e.parent||n,t)}})),e.elements=x(u)};var of=Math.round;function rf(e){this._canvas=e}function sf(e){rf.call(this,e)}rf.$inject=["canvas"],rf.prototype.execute=function(e){var t=e.shape,n=e.position,i=e.parent,o=e.parentIndex;if(!i)throw new Error("parent required");if(!n)throw new Error("position required");return void 0!==n.width?M(t,n):M(t,{x:n.x-of(t.width/2),y:n.y-of(t.height/2)}),this._canvas.addShape(t,i,o),t},rf.prototype.revert=function(e){var t=e.shape;return this._canvas.removeShape(t),t},yn(sf,rf),sf.$inject=["canvas"];var af=rf.prototype.execute;sf.prototype.execute=function(e){var t=e.shape;return function(e){["width","height"].forEach((function(t){void 0===e[t]&&(e[t]=0)}))}(t),t.labelTarget=e.labelTarget,af.call(this,e)};var lf=rf.prototype.revert;function cf(e,t){if("function"!=typeof t)throw new Error("removeFn iterator must be a function");if(e){for(var n;n=e[0];)t(n);return e}}function uf(e,t){this._canvas=e,this._modeling=t}function hf(e,t){this._modeling=e,this._elementRegistry=t}function df(e,t){this._canvas=e,this._modeling=t}function pf(e){this._modeling=e}sf.prototype.revert=function(e){return e.shape.labelTarget=null,lf.call(this,e)},uf.$inject=["canvas","modeling"],uf.prototype.preExecute=function(e){var t=this._modeling,n=e.connection;cf(n.incoming,(function(e){t.removeConnection(e,{nested:!0})})),cf(n.outgoing,(function(e){t.removeConnection(e,{nested:!0})}))},uf.prototype.execute=function(e){var t=e.connection,n=t.parent;return e.parent=n,e.parentIndex=Oi(n.children,t),e.source=t.source,e.target=t.target,this._canvas.removeConnection(t),t.source=null,t.target=null,t},uf.prototype.revert=function(e){var t=e.connection,n=e.parent,i=e.parentIndex;return t.source=e.source,t.target=e.target,Ci(n.children,t,i),this._canvas.addConnection(t,n),t},hf.$inject=["modeling","elementRegistry"],hf.prototype.postExecute=function(e){var t=this._modeling,n=this._elementRegistry;p(e.elements,(function(e){n.get(e.id)&&(e.waypoints?t.removeConnection(e):t.removeShape(e))}))},df.$inject=["canvas","modeling"],df.prototype.preExecute=function(e){var t=this._modeling,n=e.shape;cf(n.incoming,(function(e){t.removeConnection(e,{nested:!0})})),cf(n.outgoing,(function(e){t.removeConnection(e,{nested:!0})})),cf(n.children,(function(e){co(e)?t.removeConnection(e,{nested:!0}):t.removeShape(e,{nested:!0})}))},df.prototype.execute=function(e){var t=this._canvas,n=e.shape,i=n.parent;return e.oldParent=i,e.oldParentIndex=Oi(i.children,n),t.removeShape(n),n},df.prototype.revert=function(e){var t=this._canvas,n=e.shape,i=e.oldParent,o=e.oldParentIndex;return Ci(i.children,n,o),t.addShape(n,i),n},pf.$inject=["modeling"];var ff={x:"y",y:"x"};function gf(e,t){this._layouter=e,this._canvas=t}function mf(){}function vf(e,t,n){var i=Wa(t),o=Wa(n),r=Ua(e,i),s=r.x*(n.width/t.width),a=r.y*(n.height/t.height);return ho({x:o.x+s,y:o.y+a})}function yf(e,t,n){var i=Cf(e),o=Of(i,t),r=i[0];return o.length?o[o.length-1]:vf(r.original||r,n,t)}function xf(e,t,n){var i=Cf(e),o=Of(i,t),r=i[i.length-1];return o.length?o[0]:vf(r.original||r,n,t)}function bf(e,t,n){var i=Cf(e),o=wf(t,n),r=i[0];return vf(r.original||r,o,t)}function _f(e,t,n){var i=Cf(e),o=wf(t,n),r=i[i.length-1];return vf(r.original||r,o,t)}function wf(e,t){return{x:e.x-t.x,y:e.y-t.y,width:e.width,height:e.height}}function Cf(e){var t=e.waypoints;if(!t.length)throw new Error("connection#"+e.id+": no waypoints");return t}function Of(e,t){return d(v(e,kf),(function(e){return function(e,t){return"intersect"===vo(t,e,1)}(e,t)}))}function kf(e){return e.original||e}function Ef(){this.allShapes={},this.allConnections={},this.enclosedElements={},this.enclosedConnections={},this.topLevel={}}function Sf(e){this._modeling=e}function Rf(e){this._helper=new Sf(e)}function Tf(e){this._modeling=e,this._helper=new Sf(e)}function Mf(e){this._modeling=e}function Af(e){return e.original||e}function Pf(e,t){this._modeling=e,this._rules=t}function Df(e){this._modeling=e}function $f(e,t){return-1!==e.indexOf(t)}function jf(e){this._modeling=e}function If(e){return M({},e)}function Bf(e){switch(e){case"n":case"s":return"y";case"w":case"e":return"x"}}function Lf(e,t,n){var i=Bf(n);return/e|s/.test(n)?e[i]>t:/n|w/.test(n)?e[i]<t:void 0}function Nf(e,t){return-1!==e.indexOf(t)}function qf(e){this._modeling=e}function Vf(e){var t={};return p(e,(function(e){t[e.id]=e.hidden,e.children&&(t=M({},t,Vf(e.children)))})),t}function Ff(e,t){var n=[];return p(e,(function(e){e.hidden=t,n=n.concat(e),e.children&&(n=n.concat(Ff(e.children,e.collapsed||t)))})),n}function zf(e,t){var n=[];return p(e,(function(e){e.hidden=t[e.id],n=n.concat(e),e.children&&(n=n.concat(zf(e.children,t)))})),n}function Qf(e){this._modeling=e}function Hf(e,t){return wi(e&&e.attachers,t)}function Wf(e,t,n){if(e){var i=e.attachers;i||(e.attachers=i=[]),Ci(i,t,n)}}function Uf(){}function Xf(e,t,n){this._eventBus=e,this._elementFactory=t,this._commandStack=n;var i=this;e.on("diagram.init",(function(){i.registerHandlers(n)}))}function Kf(e){this._moddle=e}function Gf(){function e(e,t){var n=e.label||e,i=e.labelTarget||e;return function(e,t,n){var i=e.businessObject,o=_l(i);o&&(i[o]=t),n&&(e.hidden=!t)}(n,t,i!==n),[n,i]}this.execute=function(t){return t.oldLabel=wl(t.element),e(t.element,t.newLabel)},this.revert=function(t){return e(t.element,t.oldLabel)}}pf.prototype.preExecute=function(e){var t=this._modeling,n=e.groups,i=e.axis,o=e.dimension;function r(e,t){e.range.min=Math.min(t[i],e.range.min),e.range.max=Math.max(t[i]+t[o],e.range.max)}function s(e){return e[i]+e[o]/2}function a(e){return e.length-1}function l(e){return e.max-e.min}var c,u,h=n[0],d=a(n),f=n[d],g=0;p(n,(function(e,c){var u,h,f;e.elements.length<2?c&&c!==n.length-1&&(r(e,e.elements[0]),g+=l(e.range)):(h=(u=w(e.elements,i))[0],c===d&&(h=u[a(u)]),f=s(h),e.range=null,p(u,(function(n){!function(e,n){var o={y:0};o[i]=e-s(n),o[i]&&(o[ff[i]]=0,t.moveElements([n],o,n.parent))}(f,n),null!==e.range?r(e,n):e.range={min:n[i],max:n[i]+n[o]}})),c&&c!==n.length-1&&(g+=l(e.range)))})),u=Math.abs(f.range.min-h.range.max),(c=Math.round((u-g)/(n.length-1)))<n.length-1||p(n,(function(e,r){var s,a={};e!==h&&e!==f&&(s=n[r-1],e.range.max=0,p(e.elements,(function(n,r){a[ff[i]]=0,a[i]=s.range.max-n[i]+c,e.range.min!==n[i]&&(a[i]+=n[i]-e.range.min),a[i]&&t.moveElements([n],a,n.parent),e.range.max=Math.max(n[i]+n[o],r?e.range.max:0)})))}))},pf.prototype.postExecute=function(e){},gf.$inject=["layouter","canvas"],gf.prototype.execute=function(e){var t=e.connection;return M(e,{oldWaypoints:t.waypoints}),t.waypoints=this._layouter.layoutConnection(t,e.hints),t},gf.prototype.revert=function(e){var t=e.connection;return t.waypoints=e.oldWaypoints,t},mf.prototype.execute=function(e){var t=e.connection,n=e.delta,i=e.newParent||t.parent,o=e.newParentIndex,r=t.parent;return e.oldParent=r,e.oldParentIndex=wi(r.children,t),Ci(i.children,t,o),t.parent=i,p(t.waypoints,(function(e){e.x+=n.x,e.y+=n.y,e.original&&(e.original.x+=n.x,e.original.y+=n.y)})),t},mf.prototype.revert=function(e){var t=e.connection,n=t.parent,i=e.oldParent,o=e.oldParentIndex,r=e.delta;return wi(n.children,t),Ci(i.children,t,o),t.parent=i,p(t.waypoints,(function(e){e.x-=r.x,e.y-=r.y,e.original&&(e.original.x-=r.x,e.original.y-=r.y)})),t},Ef.prototype.add=function(e,t){return this.addAll([e],t)},Ef.prototype.addAll=function(e,t){var i=function(e,t,i){n(t)&&(t=!0),s(t)&&(i=t,t=!0);var o=xi((i=i||{}).allShapes),r=xi(i.allConnections),a=xi(i.enclosedElements),l=xi(i.enclosedConnections),c=xi(i.topLevel,t&&b(e,(function(e){return e.id})));function u(e){c[e.source.id]&&c[e.target.id]&&(c[e.id]=[e]),o[e.source.id]&&o[e.target.id]&&(l[e.id]=a[e.id]=e),r[e.id]=e}return fi(e,(function(e){if(a[e.id]=e,!e.waypoints)return o[e.id]=e,p(e.incoming,u),p(e.outgoing,u),e.children;l[e.id]=r[e.id]=e})),{allShapes:o,allConnections:r,topLevel:c,enclosedConnections:l,enclosedElements:a}}(e,!!t,this);return M(this,i),this},Sf.prototype.moveRecursive=function(e,t,n){return e?this.moveClosure(this.getClosure(e),t,n):[]},Sf.prototype.moveClosure=function(e,t,n,i,o){var r=this._modeling,s=e.allShapes,a=e.allConnections,l=e.enclosedConnections,c=e.topLevel,u=!1;o&&o.parent===n&&(u=!0),p(s,(function(e){r.moveShape(e,t,c[e.id]&&!u&&n,{recurse:!1,layout:!1})})),p(a,(function(e){var i=!!s[e.source.id],o=!!s[e.target.id];l[e.id]&&i&&o?r.moveConnection(e,t,c[e.id]&&!u&&n):r.layoutConnection(e,{connectionStart:i&&bf(e,e.source,t),connectionEnd:o&&_f(e,e.target,t)})}))},Sf.prototype.getClosure=function(e){return(new Ef).addAll(e,!0)},Rf.$inject=["modeling"],Rf.prototype.preExecute=function(e){e.closure=this._helper.getClosure(e.shapes)},Rf.prototype.postExecute=function(e){var t,n=e.hints;n&&n.primaryShape&&(t=n.primaryShape,n.oldParent=t.parent),this._helper.moveClosure(e.closure,e.delta,e.newParent,e.newHost,t)},Tf.$inject=["modeling"],Tf.prototype.execute=function(e){var t=e.shape,n=e.delta,i=e.newParent||t.parent,o=e.newParentIndex,r=t.parent;return e.oldBounds=A(t,["x","y","width","height"]),e.oldParent=r,e.oldParentIndex=wi(r.children,t),Ci(i.children,t,o),M(t,{parent:i,x:t.x+n.x,y:t.y+n.y}),t},Tf.prototype.postExecute=function(e){var t=e.shape,n=e.delta,i=e.hints,o=this._modeling;!1!==i.layout&&(p(t.incoming,(function(e){o.layoutConnection(e,{connectionEnd:_f(e,t,n)})})),p(t.outgoing,(function(e){o.layoutConnection(e,{connectionStart:bf(e,t,n)})}))),!1!==i.recurse&&this.moveChildren(e)},Tf.prototype.revert=function(e){var t=e.shape,n=e.oldParent,i=e.oldParentIndex,o=e.delta;return Ci(n.children,t,i),M(t,{parent:n,x:t.x-o.x,y:t.y-o.y}),t},Tf.prototype.moveChildren=function(e){var t=e.delta,n=e.shape;this._helper.moveRecursive(n.children,t,null)},Tf.prototype.getNewParent=function(e){return e.newParent||e.shape.parent},Mf.$inject=["modeling"],Mf.prototype.execute=function(e){var t=e.newSource,n=e.newTarget,i=e.connection,o=e.dockingOrPoints;if(!t&&!n)throw new Error("newSource or newTarget required");return r(o)&&(e.oldWaypoints=i.waypoints,i.waypoints=o),t&&(e.oldSource=i.source,i.source=t),n&&(e.oldTarget=i.target,i.target=n),i},Mf.prototype.postExecute=function(e){var t=e.connection,n=e.newSource,i=e.newTarget,o=e.dockingOrPoints,s=e.hints||{},a={};s.connectionStart&&(a.connectionStart=s.connectionStart),s.connectionEnd&&(a.connectionEnd=s.connectionEnd),!1!==s.layoutConnection&&(!n||i&&"source"!==s.docking||(a.connectionStart=a.connectionStart||Af(r(o)?o[0]:o)),!i||n&&"target"!==s.docking||(a.connectionEnd=a.connectionEnd||Af(r(o)?o[o.length-1]:o)),s.newWaypoints&&(a.waypoints=s.newWaypoints),this._modeling.layoutConnection(t,a))},Mf.prototype.revert=function(e){var t=e.oldSource,n=e.oldTarget,i=e.oldWaypoints,o=e.connection;return t&&(o.source=t),n&&(o.target=n),i&&(o.waypoints=i),o},Pf.$inject=["modeling","rules"],Pf.prototype.preExecute=function(e){var t,n=this,i=this._modeling,o=this._rules,r=e.oldShape,s=e.newData,a=e.hints||{};function l(e,t,n){return o.allowed("connection.reconnect",{connection:n,source:e,target:t})}var c,u={x:s.x,y:s.y},h={x:r.x,y:r.y,width:r.width,height:r.height};t=e.newShape=e.newShape||n.createShape(s,u,r.parent,a),r.host&&i.updateAttachment(t,r.host),!1!==a.moveChildren&&(c=r.children.slice(),i.moveElements(c,{x:0,y:0},t,a));var d=r.incoming.slice(),f=r.outgoing.slice();p(d,(function(e){l(e.source,t,e)&&n.reconnectEnd(e,t,xf(e,t,h),a)})),p(f,(function(e){var i=e.target;l(t,i,e)&&n.reconnectStart(e,t,yf(e,t,h),a)}))},Pf.prototype.postExecute=function(e){var t=e.oldShape;this._modeling.removeShape(t)},Pf.prototype.execute=function(e){},Pf.prototype.revert=function(e){},Pf.prototype.createShape=function(e,t,n,i){return this._modeling.createShape(e,t,n,i)},Pf.prototype.reconnectStart=function(e,t,n,i){this._modeling.reconnectStart(e,t,n,i)},Pf.prototype.reconnectEnd=function(e,t,n,i){this._modeling.reconnectEnd(e,t,n,i)},Df.$inject=["modeling"],Df.prototype.execute=function(e){var t=e.shape,n=e.newBounds,i=e.minBounds;if(void 0===n.x||void 0===n.y||void 0===n.width||void 0===n.height)throw new Error("newBounds must have {x, y, width, height} properties");if(i&&(n.width<i.width||n.height<i.height))throw new Error("width and height cannot be less than minimum height and width");if(!i&&n.width<10||n.height<10)throw new Error("width and height cannot be less than 10px");return e.oldBounds={width:t.width,height:t.height,x:t.x,y:t.y},M(t,{width:n.width,height:n.height,x:n.x,y:n.y}),t},Df.prototype.postExecute=function(e){var t=this._modeling,n=e.shape,i=e.oldBounds;!1!==(e.hints||{}).layout&&(p(n.incoming,(function(e){t.layoutConnection(e,{connectionEnd:xf(e,n,i)})})),p(n.outgoing,(function(e){t.layoutConnection(e,{connectionStart:yf(e,n,i)})})))},Df.prototype.revert=function(e){var t=e.shape,n=e.oldBounds;return M(t,{width:n.width,height:n.height,x:n.x,y:n.y}),t},jf.$inject=["modeling"],jf.prototype.preExecute=function(e){var t=e.delta,n=e.direction,i=e.movingShapes,o=e.resizingShapes,r=e.start,s={};this.moveShapes(i,t),p(o,(function(e){s[e.id]=function(e){return{x:e.x,y:e.y,height:e.height,width:e.width}}(e)})),this.resizeShapes(o,t,n),this.updateConnectionWaypoints(function(e,t){var n=[];return p(e.concat(t),(function(i){var o=i.incoming,r=i.outgoing;p(o.concat(r),(function(i){var o=i.source,r=i.target;($f(e,o)||$f(e,r)||$f(t,o)||$f(t,r))&&($f(n,i)||n.push(i))}))})),n}(i,o),t,n,r,i,o,s)},jf.prototype.execute=function(){},jf.prototype.revert=function(){},jf.prototype.moveShapes=function(e,t){var n=this;p(e,(function(e){n._modeling.moveShape(e,t,null,{autoResize:!1,layout:!1,recurse:!1})}))},jf.prototype.resizeShapes=function(e,t,n){var i=this;p(e,(function(e){var o=function(e,t,n){var i=e.x,o=e.y,r=e.width,s=e.height,a=n.x,l=n.y;switch(t){case"n":return{x:i,y:o+l,width:r,height:s-l};case"s":return{x:i,y:o,width:r,height:s+l};case"w":return{x:i+a,y:o,width:r-a,height:s};case"e":return{x:i,y:o,width:r+a,height:s};default:throw new Error("unknown direction: "+t)}}(e,n,t);i._modeling.resizeShape(e,o,null,{attachSupport:!1,autoResize:!1,layout:!1})}))},jf.prototype.updateConnectionWaypoints=function(e,t,n,i,o,r,s){var a=this,l=o.concat(r);p(e,(function(e){var c=e.source,u=e.target,h=function(e){return v(e.waypoints,(function(e){return(e=If(e)).original&&(e.original=If(e.original)),e}))}(e),d=Bf(n),p={};Nf(l,c)&&Nf(l,u)?(h=v(h,(function(e){return Lf(e,i,n)&&(e[d]=e[d]+t[d]),e.original&&Lf(e.original,i,n)&&(e.original[d]=e.original[d]+t[d]),e})),a._modeling.updateWaypoints(e,h,{labelBehavior:!1})):(Nf(l,c)||Nf(l,u))&&(Nf(o,c)?p.connectionStart=bf(e,c,t):Nf(o,u)?p.connectionEnd=_f(e,u,t):Nf(r,c)?p.connectionStart=yf(e,c,s[c.id]):Nf(r,u)&&(p.connectionEnd=xf(e,u,s[u.id])),a._modeling.layoutConnection(e,p))}))},qf.$inject=["modeling"],qf.prototype.execute=function(e){var t=e.shape,n=t.children;e.oldChildrenVisibility=Vf(n),t.collapsed=!t.collapsed;var i=Ff(n,t.collapsed);return[t].concat(i)},qf.prototype.revert=function(e){var t=e.shape,n=e.oldChildrenVisibility,i=zf(t.children,n);return t.collapsed=!t.collapsed,[t].concat(i)},Qf.$inject=["modeling"],Qf.prototype.execute=function(e){var t=e.shape,n=e.newHost,i=t.host;return e.oldHost=i,e.attacherIdx=Hf(i,t),Wf(n,t),t.host=n,t},Qf.prototype.revert=function(e){var t=e.shape,n=e.newHost,i=e.oldHost,o=e.attacherIdx;return t.host=i,Hf(n,t),Wf(i,t,o),t},Uf.prototype.execute=function(e){var t=e.connection,n=e.newWaypoints;return e.oldWaypoints=t.waypoints,t.waypoints=n,t},Uf.prototype.revert=function(e){var t=e.connection,n=e.oldWaypoints;return t.waypoints=n,t},Xf.$inject=["eventBus","elementFactory","commandStack"],Xf.prototype.getHandlers=function(){return{"shape.append":Jp,"shape.create":rf,"shape.delete":df,"shape.move":Tf,"shape.resize":Df,"shape.replace":Pf,"shape.toggleCollapse":qf,spaceTool:jf,"label.create":sf,"connection.create":ef,"connection.delete":uf,"connection.move":mf,"connection.layout":gf,"connection.updateWaypoints":Uf,"connection.reconnect":Mf,"elements.create":nf,"elements.move":Rf,"elements.delete":hf,"elements.distribute":pf,"elements.align":Zp,"element.updateAttachment":Qf}},Xf.prototype.registerHandlers=function(e){p(this.getHandlers(),(function(t,n){e.registerHandler(n,t)}))},Xf.prototype.moveShape=function(e,t,n,i,o){"object"==typeof i&&(o=i,i=null);var r={shape:e,delta:t,newParent:n,newParentIndex:i,hints:o||{}};this._commandStack.execute("shape.move",r)},Xf.prototype.updateAttachment=function(e,t){var n={shape:e,newHost:t};this._commandStack.execute("element.updateAttachment",n)},Xf.prototype.moveElements=function(e,t,n,i){var o,r=(i=i||{}).attach,s=n;!0===r?(o=n,s=n.parent):!1===r&&(o=null);var a={shapes:e,delta:t,newParent:s,newHost:o,hints:i};this._commandStack.execute("elements.move",a)},Xf.prototype.moveConnection=function(e,t,n,i,o){"object"==typeof i&&(o=i,i=void 0);var r={connection:e,delta:t,newParent:n,newParentIndex:i,hints:o||{}};this._commandStack.execute("connection.move",r)},Xf.prototype.layoutConnection=function(e,t){var n={connection:e,hints:t||{}};this._commandStack.execute("connection.layout",n)},Xf.prototype.createConnection=function(e,t,n,i,o,r){"object"==typeof n&&(r=o,o=i,i=n,n=void 0);var s={source:e,target:t,parent:o,parentIndex:n,connection:i=this._create("connection",i),hints:r};return this._commandStack.execute("connection.create",s),s.connection},Xf.prototype.createShape=function(e,t,n,i,o){"number"!=typeof i&&(o=i,i=void 0);var r,s,a=(o=o||{}).attach;e=this._create("shape",e),a?(r=n.parent,s=n):r=n;var l={position:t,shape:e,parent:r,parentIndex:i,host:s,hints:o};return this._commandStack.execute("shape.create",l),l.shape},Xf.prototype.createElements=function(e,t,n,i,o){r(e)||(e=[e]),"number"!=typeof i&&(o=i,i=void 0);var s={position:t,elements:e,parent:n,parentIndex:i,hints:o=o||{}};return this._commandStack.execute("elements.create",s),s.elements},Xf.prototype.createLabel=function(e,t,n,i){n=this._create("label",n);var o={labelTarget:e,position:t,parent:i||e.parent,shape:n};return this._commandStack.execute("label.create",o),o.shape},Xf.prototype.appendShape=function(e,t,n,i,o){o=o||{};var r={source:e,position:n,target:i,shape:t=this._create("shape",t),connection:o.connection,connectionParent:o.connectionParent,hints:o};return this._commandStack.execute("shape.append",r),r.shape},Xf.prototype.removeElements=function(e){var t={elements:e};this._commandStack.execute("elements.delete",t)},Xf.prototype.distributeElements=function(e,t,n){var i={groups:e,axis:t,dimension:n};this._commandStack.execute("elements.distribute",i)},Xf.prototype.removeShape=function(e,t){var n={shape:e,hints:t||{}};this._commandStack.execute("shape.delete",n)},Xf.prototype.removeConnection=function(e,t){var n={connection:e,hints:t||{}};this._commandStack.execute("connection.delete",n)},Xf.prototype.replaceShape=function(e,t,n){var i={oldShape:e,newData:t,hints:n||{}};return this._commandStack.execute("shape.replace",i),i.newShape},Xf.prototype.alignElements=function(e,t){var n={elements:e,alignment:t};this._commandStack.execute("elements.align",n)},Xf.prototype.resizeShape=function(e,t,n,i){var o={shape:e,newBounds:t,minBounds:n,hints:i};this._commandStack.execute("shape.resize",o)},Xf.prototype.createSpace=function(e,t,n,i,o){var r={delta:n,direction:i,movingShapes:e,resizingShapes:t,start:o};this._commandStack.execute("spaceTool",r)},Xf.prototype.updateWaypoints=function(e,t,n){var i={connection:e,newWaypoints:t,hints:n||{}};this._commandStack.execute("connection.updateWaypoints",i)},Xf.prototype.reconnect=function(e,t,n,i,o){var r={connection:e,newSource:t,newTarget:n,dockingOrPoints:i,hints:o||{}};this._commandStack.execute("connection.reconnect",r)},Xf.prototype.reconnectStart=function(e,t,n,i){i||(i={}),this.reconnect(e,t,e.target,n,M(i,{docking:"source"}))},Xf.prototype.reconnectEnd=function(e,t,n,i){i||(i={}),this.reconnect(e,e.source,t,n,M(i,{docking:"target"}))},Xf.prototype.connect=function(e,t,n,i){return this.createConnection(e,t,n||{},e.parent,i)},Xf.prototype._create=function(e,t){return t instanceof $o?t:this._elementFactory.create(e,t)},Xf.prototype.toggleCollapse=function(e,t){var n={shape:e,hints:t||{}};this._commandStack.execute("shape.toggleCollapse",n)},Kf.$inject=["moddle"],Kf.prototype.execute=function(e){var t=this._moddle.ids,n=e.id,i=e.element;e.claiming?t.claim(n,i):t.unclaim(n)},Kf.prototype.revert=function(e){var t=this._moddle.ids,n=e.id,i=e.element;e.claiming?t.unclaim(n):t.claim(n,i)};const Yf="id";function Zf(e,t){this._elementRegistry=e,this._moddle=t}function Jf(e,t){return Yf in e&&e[Yf]!==t[Yf]}function eg(e,t){p(t,(function(t,n){e.set(n,t)}))}function tg(e){this._elementRegistry=e}function ng(e,t){p(t,(function(t,n){e.set(n,t)}))}function ig(e,t,n){this._canvas=e,this._drdRules=t,n.invoke(Xf,this)}function og(){}Zf.$inject=["elementRegistry","moddle"],Zf.prototype.execute=function(e){const{element:t,properties:n}=e,i=[t];if(!t)throw new Error("element required");const o=this._elementRegistry,r=this._moddle.ids,s=fn(t),a=e.oldProperties||function(e,t){return f(t,(function(t,n){return t[n]=e.get(n),t}),{})}(s,y(n));return Jf(n,s)&&(r.unclaim(s[Yf]),o.updateId(t,n[Yf]),r.claim(n[Yf],s)),"name"in n&&t.label&&i.push(t.label),eg(s,n),e.oldProperties=a,e.changed=i,i},Zf.prototype.revert=function(e){const{element:t,properties:n,oldProperties:i}=e,o=fn(t),r=this._elementRegistry,s=this._moddle.ids;return eg(o,i),Jf(n,o)&&(s.unclaim(n[Yf]),r.updateId(t,i[Yf]),s.claim(i[Yf],o)),e.changed},tg.$inject=["elementRegistry"],tg.prototype.execute=function(e){var t=e.element,n=e.moddleElement,i=e.properties;if(!n)throw new Error("<moddleElement> required");var o=e.changed||[t],r=e.oldProperties||function(e,t){return f(t,(function(t,n){return t[n]=e.get(n),t}),{})}(n,y(i));return ng(n,i),e.oldProperties=r,e.changed=o,o},tg.prototype.revert=function(e){var t=e.oldProperties,n=e.moddleElement,i=e.changed;return ng(n,t),i},yn(ig,Xf),ig.$inject=["canvas","drdRules","injector"],ig.prototype.claimId=function(e,t){this._commandStack.execute("id.updateClaim",{id:e,element:t,claiming:!0})},ig.prototype.connect=function(e,t,n,i){var o=this._drdRules,r=this._canvas.getRootElement();return n||(n=o.canConnect(e,t)||{type:"dmn:Association"}),this.createConnection(e,t,n,r,i)},ig.prototype.getHandlers=function(){var e=Xf.prototype.getHandlers.call(this);return e["id.updateClaim"]=Kf,e["element.updateLabel"]=Gf,e["element.updateProperties"]=Zf,e["element.updateModdleProperties"]=tg,e},ig.prototype.unclaimId=function(e,t){this._commandStack.execute("id.updateClaim",{id:e,element:t})},ig.prototype.updateModdleProperties=function(e,t,n){this._commandStack.execute("element.updateModdleProperties",{element:e,moddleElement:t,properties:n})},ig.prototype.updateProperties=function(e,t){this._commandStack.execute("element.updateProperties",{element:e,properties:t})},ig.prototype.updateLabel=function(e,t,n,i){this._commandStack.execute("element.updateLabel",{element:e,newLabel:t,newBounds:n,hints:i||{}})},og.prototype.layoutConnection=function(e,t){return[(t=t||{}).connectionStart||mo(t.source||e.source),t.connectionEnd||mo(t.target||e.target)]};function rg(e){this._connectionDocking=e}function sg(e,t){return e?e.original||e:mo(t)}function ag(e){return M({original:e.point.original||e.point},e.actual)}function lg(e,t){this._elementRegistry=e,this._graphicsFactory=t}yn(rg,og),rg.$inject=["connectionDocking"],rg.prototype.layoutConnection=function(e,t){var n=this._connectionDocking;t||(t={});var i=t.source||e.source,o=t.target||e.target,r=t.waypoints||e.waypoints||[],s=t.connectionStart,a=t.connectionEnd,l=vo(i,o);if(s||(s=sg(r[0],i)),a||(a=sg(r[r.length-1],o)),hn(e,"dmn:InformationRequirement")){r=[s,a];var c=n.getCroppedWaypoints(M({},e,{waypoints:r}),i,o),u={x:(a=c.pop()).x,y:a.y};return l.includes("bottom")?u.y+=20:l.includes("top")?u.y-=20:l.includes("right")?u.x+=20:u.x-=20,r=c.concat([u,a])}return[s,a]},lg.$inject=["elementRegistry","graphicsFactory"],lg.prototype.getCroppedWaypoints=function(e,t,n){t=t||e.source,n=n||e.target;var i=this.getDockingPoint(e,t,!0),o=this.getDockingPoint(e,n),r=e.waypoints.slice(i.idx+1,o.idx);return r.unshift(ag(i)),r.push(ag(o)),r},lg.prototype.getDockingPoint=function(e,t,n){var i,o,r=e.waypoints;return{point:o=r[i=n?0:r.length-1],actual:this._getIntersection(t,e,n)||o,idx:i}},lg.prototype._getIntersection=function(e,t,n){return yo(this._getShapePath(e),this._getConnectionPath(t),n)},lg.prototype._getConnectionPath=function(e){return this._graphicsFactory.getConnectionPath(e)},lg.prototype._getShapePath=function(e){return this._graphicsFactory.getShapePath(e)},lg.prototype._getGfx=function(e){return this._elementRegistry.getGraphics(e)};var cg={__init__:["modeling","drdUpdater"],__depends__:[Fp,Kp,Va,_p,Aa,Cp],drdFactory:["type",Gp],drdUpdater:["type",Yp],elementFactory:["type",Xl],modeling:["type",ig],layouter:["type",rg],connectionDocking:["type",lg]};function ug(e,t){this._eventBus=e,this.offset=5;var n=t.cls("djs-outline",["no-fill"]),i=this;function o(e){var t=Qn("rect");return jn(t,M({x:0,y:0,rx:4,width:100,height:100},n)),t}e.on(["shape.added","shape.changed"],500,(function(e){var t=e.element,n=e.gfx,r=Zt(".djs-outline",n);r||An(n,r=i.getOutline(t)||o()),i.updateShapeOutline(r,t)})),e.on(["connection.added","connection.changed"],(function(e){var t=e.element,n=e.gfx,r=Zt(".djs-outline",n);r||An(n,r=o()),i.updateConnectionOutline(r,t)}))}ug.prototype.updateShapeOutline=function(e,t){var n=!1,i=this._getProviders();i.length&&p(i,(function(i){n=n||i.updateOutline(t,e)})),n||jn(e,{x:-this.offset,y:-this.offset,width:t.width+2*this.offset,height:t.height+2*this.offset})},ug.prototype.updateConnectionOutline=function(e,t){var n=mi(t);jn(e,{x:n.x-this.offset,y:n.y-this.offset,width:n.width+2*this.offset,height:n.height+2*this.offset})},ug.prototype.registerProvider=function(e,t){t||(t=e,e=1e3),this._eventBus.on("outline.getProviders",e,(function(e){e.providers.push(t)}))},ug.prototype._getProviders=function(){var e=this._eventBus.createEvent({type:"outline.getProviders",providers:[]});return this._eventBus.fire(e),e.providers},ug.prototype.getOutline=function(e){var t;return p(this._getProviders(),(function(n){l(n.getOutline)&&(t=t||n.getOutline(e))})),t},ug.$inject=["eventBus","styles","elementRegistry"];function hg(e,t,n){this._canvas=t;var i=this;e.on("element.changed",(function(e){n.isSelected(e.element)&&i._updateMultiSelectionOutline(n.get())})),e.on("selection.changed",(function(e){var t=e.newSelection;i._updateMultiSelectionOutline(t)}))}hg.prototype._updateMultiSelectionOutline=function(e){var t=this._canvas.getLayer("selectionOutline");Nn(t);var n=e.length>1;if(Bn(this._canvas.getContainer())[n?"add":"remove"]("djs-multi-select"),n){var i=function(e){return{x:e.x-6,y:e.y-6,width:e.width+12,height:e.height+12}}(mi(e)),o=Qn("rect");jn(o,M({rx:3},i)),Bn(o).add("djs-selection-outline"),An(t,o)}},hg.$inject=["eventBus","canvas","selection"];var dg={__depends__:[Aa],__init__:["outline","multiSelectionOutline"],outline:["type",ug],multiSelectionOutline:["type",hg]},pg=Math.round;function fg(e,t,n,i,o){function r(e,t,n,i){return o.allowed("elements.move",{shapes:e,delta:t,position:n,target:i})}function a(e,n,i,o){if(s(i)&&(o=i,i=!1),!n.waypoints&&n.parent&&!Bn(e.target).has("djs-hit-no-move")){var r=function(e){return{x:e.x+pg(e.width/2),y:e.y+pg(e.height/2)}}(n);return t.init(e,r,"shape.move",{cursor:"grabbing",autoActivate:i,data:{shape:n,context:o||{}}}),!0}}e.on("shape.move.start",1500,(function(e){var t=e.context,n=e.shape,o=i.get().slice();-1===o.indexOf(n)&&(o=[n]),o=function(e){var t=b(e,"id");return d(e,(function(e){for(;e=e.parent;)if(t[e.id])return!1;return!0}))}(o),M(t,{shapes:o,validatedShapes:o,shape:n})})),e.on("shape.move.start",1250,(function(e){var t=e.context,n=t.validatedShapes;if(!(t.canExecute=r(n)))return!1})),e.on("shape.move.move",500,(function(e){var t,n=e.context,i=n.validatedShapes,o=e.hover,s={x:e.dx,y:e.dy};t=r(i,s,{x:e.x,y:e.y},o),n.delta=s,n.canExecute=t,n.target=null!==t?o:null})),e.on("shape.move.end",(function(e){var t=e.context,i=t.delta,o=t.canExecute,r="attach"===o,s=t.shapes;if(!1===o)return!1;i.x=pg(i.x),i.y=pg(i.y),0===i.x&&0===i.y||n.moveElements(s,i,t.target,{primaryShape:t.shape,attach:r})})),e.on("element.mousedown",(function(e){if(ya(e)){var t=pa(e);if(!t)throw new Error("must supply DOM mousedown event");return a(t,e.element)}})),this.start=a}fg.$inject=["eventBus","dragging","modeling","selection","rules"];var gg="djs-dragging",mg="drop-ok",vg="drop-not-ok",yg="new-parent",xg="attach-ok";function bg(e,t,n,i){function o(e){var t=function(e){var t=d(e,(function(t){return!co(t)||h(e,C({id:t.source.id}))&&h(e,C({id:t.target.id}))}));return t}(r(e));return t}function r(e){var t=gi(e,!0),n=t.flatMap((e=>(e.incoming||[]).concat(e.outgoing||[]))),i=t.concat(n);return[...new Set(i)]}function s(e,n){[xg,mg,vg,yg].forEach((function(i){i===n?t.addMarker(e,i):t.removeMarker(e,i)}))}e.on("shape.move.start",499,(function(e){var s,a,l=e.context,c=l.shapes,u=l.allDraggedElements,h=o(c);if(!l.dragGroup){var d=Qn("g");jn(d,n.cls("djs-drag-group",["no-events"])),An(t.getActiveLayer(),d),l.dragGroup=d}h.forEach((function(e){i.addDragger(e,l.dragGroup)})),u?(s=[u,r(c)],u=Array.prototype.concat.apply([],s)):u=r(c),p(u,(function(e){t.addMarker(e,gg)})),l.allDraggedElements=u,l.differentParents=1!==(a=b(c,(function(e){return e.parent&&e.parent.id})),y(a).length)})),e.on("shape.move.move",499,(function(e){var t=e.context,n=t.dragGroup,i=t.target,o=t.shape.parent,r=t.canExecute;i&&("attach"===r?s(i,xg):t.canExecute&&o&&i.id!==o.id?s(i,yg):s(i,t.canExecute?mg:vg)),Fo(n,e.dx,e.dy)})),e.on(["shape.move.out","shape.move.cleanup"],(function(e){var t=e.context.target;t&&s(t,null)})),e.on("shape.move.cleanup",(function(e){var n=e.context,i=n.allDraggedElements,o=n.dragGroup;p(i,(function(e){t.removeMarker(e,gg)})),o&&ti(o)})),this.makeDraggable=function(e,n,o){i.addDragger(n,e.dragGroup),o&&t.addMarker(n,gg),e.allDraggedElements?e.allDraggedElements.push(n):e.allDraggedElements=[n]}}bg.$inject=["eventBus","canvas","styles","previewSupport"];var _g={__depends__:[Oa,Aa,dg,gc,uc,Cu],__init__:["move","movePreview"],move:["type",fg],movePreview:["type",bg]};const wg={width:135,height:46},Cg={width:100,height:63};function Og(e,t,n){return Qn("path",{d:e,strokeWidth:2,transform:`translate(${t.x}, ${t.y})`,...n})}function kg(e,t){this._styles=t,e.registerProvider(this)}function Eg(e,t){var n;return"dmn:BusinessKnowledgeModel"===t?n=wg:"dmn:KnowledgeSource"===t&&(n=Cg),e.width===n.width&&e.height===n.height}kg.$inject=["outline","styles"],kg.prototype.getOutline=function(e){const t=this._styles.cls("djs-outline",["no-fill"]);var n;return hn(e,"dmn:InputData")?jn(n=Qn("rect"),M({x:-5,y:-5,rx:27,width:e.width+10,height:e.height+10},t)):hn(e,"dmn:BusinessKnowledgeModel")&&Eg(e,"dmn:BusinessKnowledgeModel")?n=Og("\nM2.45221 16.0068L18.7175 1.74436L18.0615 0.996331L18.7175 1.74436C19.2646 1.26455 19.9676 \n1 20.6953 1H140.926C142.583 1 143.926 2.34295 143.926 3.99967L143.93 37.5457C143.93 \n38.3668 143.593 39.152 142.999 39.7183L143.689 40.4424L142.999 39.7183L127.299 \n54.6723C126.741 55.2036 126 55.5 125.23 55.5H4.53787C2.88599 55.5 1.54491 54.1646 1.5379 \n52.5127L1.43066 27.229L1.43065 27.2248L1.4301 18.2626C1.43005 \n17.3986 1.80255 16.5765 2.45221 16.0068Z\n",{x:-6,y:-6},t):hn(e,"dmn:KnowledgeSource")&&Eg(e,"dmn:KnowledgeSource")&&(n=Og("\nM1.79494 63.0032L1.2941 63.6423L1.79493 63.0032C1.71778 62.9427 1.6428 62.8741 1.57288 \n62.8L1.01736 63.3241L1.57288 62.8C1.20495 62.41 1 61.8941 1 61.3579V2.65067C1 1.74066 \n1.73867 1.00345 2.64868 1.00526L108.006 1.2145C109.66 1.21778 111 2.55996 111 \n4.21449V21.7015V61.6762C111 63.3188 109.679 64.656 108.037 64.676L107.06 64.6879C106.66 \n64.6927 106.26 64.6165 105.89 64.4652C105.04 64.1176 104.222 63.78 103.43 \n63.4531C93.4866 59.3517 87.6891 56.9603 76.3991 58.1057C71.7035 58.5821 66.8747 60.74 \n61.5721 63.1744C61.3243 63.2881 61.0753 63.4026 60.825 63.5177C55.6712 65.8868 49.9696 \n68.5077 43.2365 70.3468C31.101 73.6617 15.2135 73.5179 1.79494 63.0032Z\n",{x:-6,y:-1.5},t)),n},kg.prototype.updateOutline=function(e){return!!gn(e,["dmn:InputData","dmn:BusinessKnowledgeModel","dmn:KnowledgeSource"])};var Sg={__depends__:[dg],__init__:["outlineProvider"],outlineProvider:["type",kg]},Rg=".djs-palette-toggle",Tg=".entry",Mg=Rg+", "+Tg,Ag="djs-palette-",Pg="open",Dg="two-column";function $g(e,t){this._eventBus=e,this._canvas=t;var n=this;e.on("tool-manager.update",(function(e){var t=e.tool;n.updateToolHighlight(t)})),e.on("i18n.changed",(function(){n._update()})),e.on("diagram.init",(function(){n._diagramInitialized=!0,n._rebuild()}))}function jg(e,t){var n=t.getPaletteEntries();return l(n)?n(e):(p(n,(function(t,n){e[n]=t})),e)}$g.$inject=["eventBus","canvas"],$g.prototype.registerProvider=function(e,t){t||(t=e,e=1e3),this._eventBus.on("palette.getProviders",e,(function(e){e.providers.push(t)})),this._rebuild()},$g.prototype.getEntries=function(){return this._getProviders().reduce(jg,{})},$g.prototype._rebuild=function(){this._diagramInitialized&&(this._getProviders().length&&(this._container||this._init(),this._update()))},$g.prototype._init=function(){var e=this,t=this._eventBus,n=this._getParentContainer(),i=this._container=Gt($g.HTML_MARKUP);n.appendChild(i),$t(n).add(Ag+"shown"),Wt.bind(i,Mg,"click",(function(t){if(Yt(t.delegateTarget,Rg))return e.toggle();e.trigger("click",t)})),zt.bind(i,"mousedown",(function(e){e.stopPropagation()})),Wt.bind(i,Tg,"dragstart",(function(t){e.trigger("dragstart",t)})),t.on("canvas.resized",this._layoutChanged,this),t.fire("palette.create",{container:i})},$g.prototype._getProviders=function(e){var t=this._eventBus.createEvent({type:"palette.getProviders",providers:[]});return this._eventBus.fire(t),t.providers},$g.prototype._toggleState=function(e){e=e||{};var t,n=this._getParentContainer(),i=this._container,o=this._eventBus,r=$t(i),s=$t(n);t="twoColumn"in e?e.twoColumn:this._needsCollapse(n.clientHeight,this._entries||{}),r.toggle(Dg,t),s.toggle(Ag+Dg,t),"open"in e&&(r.toggle(Pg,e.open),s.toggle(Ag+Pg,e.open)),o.fire("palette.changed",{twoColumn:t,open:this.isOpen()})},$g.prototype._update=function(){var e=Zt(".djs-palette-entries",this._container),t=this._entries=this.getEntries();It(e),p(t,(function(t,n){var i=t.group||"default",o=Zt("[data-group="+al(i)+"]",e);o||(Pt(o=Gt('<div class="group"></div>'),"data-group",i),e.appendChild(o));var s=t.html||(t.separator?'<hr class="separator" />':'<div class="entry" draggable="true"></div>'),a=Gt(s);if(o.appendChild(a),!t.separator&&(Pt(a,"data-action",n),t.title&&Pt(a,"title",t.title),t.className&&function(e,t){var n=$t(e),i=r(t)?t:t.split(/\s+/g);i.forEach((function(e){n.add(e)}))}(a,t.className),t.imageUrl)){var l=Gt("<img>");Pt(l,"src",t.imageUrl),a.appendChild(l)}})),this.open()},$g.prototype.trigger=function(e,t,n){var i,o,r=t.delegateTarget||t.target;return r?(i=Pt(r,"data-action"),o=t.originalEvent||t,this.triggerEntry(i,e,o,n)):t.preventDefault()},$g.prototype.triggerEntry=function(e,t,n,i){var o,r;if((o=this._entries[e])&&(r=o.action,!1!==this._eventBus.fire("palette.trigger",{entry:o,event:n}))){if(l(r)){if("click"===t)return r(n,i)}else if(r[t])return r[t](n,i);n.preventDefault()}},$g.prototype._layoutChanged=function(){this._toggleState({})},$g.prototype._needsCollapse=function(e,t){return e<46*Object.keys(t).length+50},$g.prototype.close=function(){this._toggleState({open:!1,twoColumn:!1})},$g.prototype.open=function(){this._toggleState({open:!0})},$g.prototype.toggle=function(){this.isOpen()?this.close():this.open()},$g.prototype.isActiveTool=function(e){return e&&this._activeTool===e},$g.prototype.updateToolHighlight=function(e){var t;this._toolsContainer||(t=Zt(".djs-palette-entries",this._container),this._toolsContainer=Zt("[data-group=tools]",t)),p(this._toolsContainer.children,(function(t){var n=t.getAttribute("data-action");if(n){var i=$t(t);n=n.replace("-tool",""),i.contains("entry")&&n===e?i.add("highlighted-entry"):i.remove("highlighted-entry")}}))},$g.prototype.isOpen=function(){return $t(this._container).has(Pg)},$g.prototype._getParentContainer=function(){return this._canvas.getContainer()},$g.HTML_MARKUP='<div class="djs-palette"><div class="djs-palette-entries"></div><div class="djs-palette-toggle"></div></div>';var Ig={__init__:["palette"],palette:["type",$g]};function Bg(e){this._eventBus=e,this._tools=[],this._active=null}Bg.$inject=["eventBus"],Bg.prototype.registerTool=function(e,t){var n=this._tools;if(!t)throw new Error('A tool has to be registered with it\'s "events"');n.push(e),this.bindEvents(e,t)},Bg.prototype.isActive=function(e){return e&&this._active===e},Bg.prototype.length=function(e){return this._tools.length},Bg.prototype.setActive=function(e){var t=this._eventBus;this._active!==e&&(this._active=e,t.fire("tool-manager.update",{tool:e}))},Bg.prototype.bindEvents=function(e,t){var n=this._eventBus,i=[];n.on(t.tool+".init",(function(t){t.context.reactivate||!this.isActive(e)?this.setActive(e):this.setActive(null)}),this),p(t,(function(e){i.push(e+".ended"),i.push(e+".canceled")})),n.on(i,250,(function(e){this._active&&(function(e){var t=e.originalEvent&&e.originalEvent.target;return t&&Bt(t,'.group[data-group="tools"]')}(e)||this.setActive(null))}),this)};var Lg={__depends__:[uc],__init__:["toolManager"],toolManager:["type",Bg]};function Ng(e){var t=this;function n(e){t._lastMoveEvent=e}this._lastMoveEvent=null,e.on("canvas.init",(function(e){(t._svg=e.svg).addEventListener("mousemove",n)})),e.on("canvas.destroy",(function(){t._lastMouseEvent=null,t._svg.removeEventListener("mousemove",n)}))}Ng.$inject=["eventBus"],Ng.prototype.getLastMoveEvent=function(){return this._lastMoveEvent||function(e,t){var n=document.createEvent("MouseEvent"),i=e,o=t,r=e,s=t;n.initMouseEvent&&n.initMouseEvent("mousemove",!0,!0,window,0,i,o,r,s,!1,!1,!1,!1,0,null);return n}(0,0)};var qg={__init__:["mouse"],mouse:["type",Ng]},Vg="crosshair";function Fg(e,t,n,i,o,r,s){this._selection=o,this._dragging=n,this._mouse=s;var a=this,l=function(e){var n,i=t.getActiveLayer();jn(n=e.frame=Qn("rect"),{class:"djs-lasso-overlay",width:1,height:1,x:0,y:0}),An(i,n)},c=function(e){var t=e.frame,n=e.bbox;jn(t,{x:n.x,y:n.y,width:n.width,height:n.height})},u=function(e){e.frame&&ti(e.frame)};r.registerTool("lasso",{tool:"lasso.selection",dragging:"lasso"}),e.on("lasso.selection.end",(function(t){var n=t.originalEvent.target;(t.hover||n instanceof SVGElement)&&e.once("lasso.selection.ended",(function(){a.activateLasso(t.originalEvent,!0)}))})),e.on("lasso.end",0,(function(e){var t=e.context,n=zg(e),o=i.filter((function(e){return e})),r=ba(e);a.select(o,n,r?t.selection:[])})),e.on("lasso.start",(function(e){var t=e.context;t.bbox=zg(e),l(t),t.selection=o.get()})),e.on("lasso.move",(function(e){var t=e.context;t.bbox=zg(e),c(t)})),e.on("lasso.cleanup",(function(e){var t=e.context;u(t)})),e.on("element.mousedown",1500,(function(e){if(ba(e))return a.activateLasso(e.originalEvent),!0}))}function zg(e){var t={x:e.x-e.dx,y:e.y-e.dy},n={x:e.x,y:e.y};return t.x<=n.x&&t.y<n.y||t.x<n.x&&t.y<=n.y?{x:t.x,y:t.y,width:n.x-t.x,height:n.y-t.y}:t.x>=n.x&&t.y<n.y||t.x>n.x&&t.y<=n.y?{x:n.x,y:t.y,width:t.x-n.x,height:n.y-t.y}:t.x<=n.x&&t.y>n.y||t.x<n.x&&t.y>=n.y?{x:t.x,y:n.y,width:n.x-t.x,height:t.y-n.y}:t.x>=n.x&&t.y>n.y||t.x>n.x&&t.y>=n.y?{x:n.x,y:n.y,width:t.x-n.x,height:t.y-n.y}:{x:n.x,y:n.y,width:0,height:0}}Fg.$inject=["eventBus","canvas","dragging","elementRegistry","selection","toolManager","mouse"],Fg.prototype.activateLasso=function(e,t){this._dragging.init(e,"lasso",{autoActivate:t,cursor:Vg,data:{context:{}}})},Fg.prototype.activateSelection=function(e,t){this._dragging.init(e,"lasso.selection",{trapClick:!1,autoActivate:t,cursor:Vg,data:{context:{}},keepSelection:!0})},Fg.prototype.select=function(e,t,n=[]){var i=function(e,t){var n={};return p(e,(function(e){var i=e;i.waypoints&&(i=mi(i)),!a(t.y)&&i.x>t.x&&(n[e.id]=e),!a(t.x)&&i.y>t.y&&(n[e.id]=e),i.x>t.x&&i.y>t.y&&(a(t.width)&&a(t.height)&&i.width+i.x<t.width+t.x&&i.height+i.y<t.height+t.y?n[e.id]=e:a(t.width)&&a(t.height)||(n[e.id]=e))})),n}(e,t);this._selection.select([...n,...x(i)])},Fg.prototype.toggle=function(){if(this.isActive())return this._dragging.cancel();var e=this._mouse.getLastMoveEvent();this.activateSelection(e,!!e)},Fg.prototype.isActive=function(){var e=this._dragging.context();return e&&/^lasso/.test(e.prefix)};var Qg={__depends__:[Lg,qg],__init__:["lassoTool"],lassoTool:["type",Fg]},Hg=1500,Wg="grab";function Ug(e,t,n,i,o,r){this._dragging=n,this._mouse=r;var s=this,a=i.get("keyboard",!1);o.registerTool("hand",{tool:"hand",dragging:"hand.move"}),e.on("element.mousedown",Hg,(function(e){if(xa(e))return s.activateMove(e.originalEvent,!0),!1})),a&&a.addListener(Hg,(function(e){if(Xg(e.keyEvent)&&!s.isActive()){var t=s._mouse.getLastMoveEvent();s.activateMove(t,!!t)}}),"keyboard.keydown"),a&&a.addListener(Hg,(function(e){Xg(e.keyEvent)&&s.isActive()&&s.toggle()}),"keyboard.keyup"),e.on("hand.end",(function(t){var n=t.originalEvent.target;if(!(t.hover||n instanceof SVGElement))return!1;e.once("hand.ended",(function(){s.activateMove(t.originalEvent,{reactivate:!0})}))})),e.on("hand.move.move",(function(e){var n=t.viewbox().scale;t.scroll({dx:e.dx*n,dy:e.dy*n})})),e.on("hand.move.end",(function(t){var n=t.context.reactivate;return!xa(t)&&n&&e.once("hand.move.ended",(function(e){s.activateHand(e.originalEvent,!0,!0)})),!1}))}function Xg(e){return fl("Space",e)}Ug.$inject=["eventBus","canvas","dragging","injector","toolManager","mouse"],Ug.prototype.activateMove=function(e,t,n){"object"==typeof t&&(n=t,t=!1),this._dragging.init(e,"hand.move",{autoActivate:t,cursor:Wg,data:{context:n||{}}})},Ug.prototype.activateHand=function(e,t,n){this._dragging.init(e,"hand",{trapClick:!1,autoActivate:t,cursor:Wg,data:{context:{reactivate:n}}})},Ug.prototype.toggle=function(){if(this.isActive())return this._dragging.cancel();var e=this._mouse.getLastMoveEvent();this.activateHand(e,!!e)},Ug.prototype.isActive=function(){var e=this._dragging.context();return!!e&&/^(hand|hand\.move)$/.test(e.prefix)};var Kg={__depends__:[Lg,qg],__init__:["handTool"],handTool:["type",Ug]};function Gg(e,t,n,i,o,r){this._palette=e,this._create=t,this._elementFactory=n,this._handTool=i,this._lassoTool=o,this._translate=r,e.registerProvider(this)}Gg.$inject=["palette","create","elementFactory","handTool","lassoTool","translate"],Gg.prototype.getPaletteEntries=function(e){var t={},n=this._create,i=this._elementFactory,o=this._handTool,r=this._lassoTool,s=this._translate;function a(e,t,o,r,s){function a(t){var o=i.createShape(M({type:e},s));n.start(t,o)}return{group:t,className:o,title:r,action:{dragstart:a,click:a}}}return M(t,{"hand-tool":{group:"tools",className:"dmn-icon-hand-tool",title:s("Activate hand tool"),action:{click:function(e){o.activateHand(e)}}},"lasso-tool":{group:"tools",className:"dmn-icon-lasso-tool",title:s("Activate lasso tool"),action:{click:function(e){r.activateSelection(e)}}},"tool-separator":{group:"tools",separator:!0},"create.decision":a("dmn:Decision","drd","dmn-icon-decision",s("Create decision")),"create.input-data":a("dmn:InputData","drd","dmn-icon-input-data",s("Create input data")),"create.knowledge-source":a("dmn:KnowledgeSource","drd","dmn-icon-knowledge-source",s("Create knowledge source")),"create.business-knowledge-model":a("dmn:BusinessKnowledgeModel","drd","dmn-icon-business-knowledge",s("Create knowledge model"))}),t};var Yg={__depends__:[ha,Ig,zu,Qg,Kg],__init__:["paletteProvider"],paletteProvider:["type",Gg]},Zg=Math.max,Jg=Math.min,em=20;function tm(e,t,n){var i=t[e],o=n.min&&n.min[e],r=n.max&&n.max[e];return a(o)&&(i=(/top|left/.test(e)?Jg:Zg)(i,o)),a(r)&&(i=(/top|left/.test(e)?Zg:Jg)(i,r)),i}function nm(e,t){return void 0!==e?e:em}function im(e){return!e.waypoints&&"label"!==e.type}function om(e,t){var n;if((n=void 0===e.length?d(e.children,im):e).length)return function(e,t){var n,i,o,r;return"object"==typeof t?(n=nm(t.left),i=nm(t.right),o=nm(t.top),r=nm(t.bottom)):n=i=o=r=nm(t),{x:e.x-n,y:e.y-o,width:e.width+n+i,height:e.height+o+r}}(mi(n),t)}function rm(e,t,n,i){this._dragging=i,this._rules=t;var o=this;function r(e,t){var n,i=e.shape,r=e.direction,s=e.resizeConstraints;e.delta=t,n=function(e,t,n){var i=n.x,o=n.y,r={x:e.x,y:e.y,width:e.width,height:e.height};return-1!==t.indexOf("n")?(r.y=e.y+o,r.height=e.height-o):-1!==t.indexOf("s")&&(r.height=e.height+o),-1!==t.indexOf("e")?r.width=e.width+i:-1!==t.indexOf("w")&&(r.x=e.x+i,r.width=e.width-i),r}(i,r,t),e.newBounds=function(e,t){if(!t)return e;var n=po(e);return fo({top:tm("top",n,t),right:tm("right",n,t),bottom:tm("bottom",n,t),left:tm("left",n,t)})}(n,s),e.canExecute=o.canResize(e)}function s(e){var t,i=e.shape,o=e.canExecute,r=e.newBounds;if(o){if(t=r,!function(e,t){return e.x!==t.x||e.y!==t.y||e.width!==t.width||e.height!==t.height}(i,r={x:Math.round(t.x),y:Math.round(t.y),width:Math.round(t.width),height:Math.round(t.height)}))return;n.resizeShape(i,r)}}e.on("resize.start",(function(e){var t,n,i;t=e.context,n=t.resizeConstraints,i=t.minBounds,void 0===n&&(void 0===i&&(i=o.computeMinResizeBox(t)),t.resizeConstraints={min:po(i)})})),e.on("resize.move",(function(e){var t={x:e.dx,y:e.dy};r(e.context,t)})),e.on("resize.end",(function(e){s(e.context)}))}function sm(e,t){var n=mo(e),i=po(e),o={x:n.x,y:n.y};return-1!==t.indexOf("n")?o.y=i.top:-1!==t.indexOf("s")&&(o.y=i.bottom),-1!==t.indexOf("e")?o.x=i.right:-1!==t.indexOf("w")&&(o.x=i.left),o}function am(e){var t="resize-";return"n"===e||"s"===e?t+"ns":"e"===e||"w"===e?t+"ew":"nw"===e||"se"===e?t+"nwse":t+"nesw"}rm.prototype.canResize=function(e){var t=this._rules,n=A(e,["newBounds","shape","delta","direction"]);return t.allowed("shape.resize",n)},rm.prototype.activate=function(e,t,n){var i,o,r=this._dragging;if("string"==typeof n&&(n={direction:n}),!(o=(i=M({shape:t},n)).direction))throw new Error("must provide a direction (n|w|s|e|nw|se|ne|sw)");r.init(e,sm(t,o),"resize",{autoActivate:!0,cursor:am(o),data:{shape:t,context:i}})},rm.prototype.computeMinResizeBox=function(e){var t=e.shape;return function(e,t,n,i){var o=po(t),r={top:/n/.test(e)?o.bottom-n.height:o.top,left:/w/.test(e)?o.right-n.width:o.left,bottom:/s/.test(e)?o.top+n.height:o.bottom,right:/e/.test(e)?o.left+n.width:o.right},s=i?po(i):r;return fo({top:Jg(r.top,s.top),left:Jg(r.left,s.left),bottom:Zg(r.bottom,s.bottom),right:Zg(r.right,s.right)})}(e.direction,t,e.minDimensions||{width:10,height:10},om(t,e.childrenBoxPadding))},rm.$inject=["eventBus","rules","modeling","dragging"];var lm="djs-resizing",cm="resize-not-ok";function um(e,t,n){e.on("resize.move",500,(function(e){var i,o,r,s;i=e.context,o=i.shape,r=i.newBounds,(s=i.frame)||(s=i.frame=n.addFrame(o,t.getActiveLayer()),t.addMarker(o,lm)),r.width>5&&jn(s,{x:r.x,width:r.width}),r.height>5&&jn(s,{y:r.y,height:r.height}),i.canExecute?Bn(s).remove(cm):Bn(s).add(cm)})),e.on("resize.cleanup",(function(e){var n,i;n=e.context,i=n.shape,n.frame&&ti(n.frame),t.removeMarker(i,lm)}))}um.$inject=["eventBus","canvas","previewSupport"];var hm=-6,dm="djs-resizer",pm=["n","w","s","e","nw","ne","se","sw"];function fm(e,t,n,i){this._resize=i,this._canvas=t;var o=this;e.on("selection.changed",(function(e){var t=e.newSelection;o.removeResizers(),1===t.length&&p(t,T(o.addResizer,o))})),e.on("shape.changed",(function(e){var t=e.element;n.isSelected(t)&&(o.removeResizers(),o.addResizer(t))}))}fm.prototype.makeDraggable=function(e,t,n){var i=this._resize;function o(t){ya(t)&&i.activate(t,e,n)}zt.bind(t,"mousedown",o),zt.bind(t,"touchstart",o)},fm.prototype._createResizer=function(e,t,n,i){var o=this._getResizersParent(),r=function(e){var t={x:0,y:0};-1!==e.indexOf("e")?t.x=6:-1!==e.indexOf("w")&&(t.x=hm);-1!==e.indexOf("s")?t.y=6:-1!==e.indexOf("n")&&(t.y=hm);return t}(i),s=Qn("g");Bn(s).add(dm),Bn(s).add(dm+"-"+e.id),Bn(s).add(dm+"-"+i),An(o,s);var a=Qn("rect");jn(a,{x:-4+r.x,y:-4+r.y,width:8,height:8}),Bn(a).add(dm+"-visual"),An(s,a);var l=Qn("rect");return jn(l,{x:-10+r.x,y:-10+r.y,width:20,height:20}),Bn(l).add(dm+"-hit"),An(s,l),function(e,t,n,i,o){var r=Xn();r.setTranslate(t,n);var s=Xn();s.setRotate(0,0,0);var a=Xn();a.setScale(1,1),ii(e,[r,s,a])}(s,t,n),s},fm.prototype.createResizer=function(e,t){var n=sm(e,t),i=this._createResizer(e,n.x,n.y,t);this.makeDraggable(e,i,t)},fm.prototype.addResizer=function(e){var t=this;!co(e)&&this._resize.canResize({shape:e})&&p(pm,(function(n){t.createResizer(e,n)}))},fm.prototype.removeResizers=function(){Nn(this._getResizersParent())},fm.prototype._getResizersParent=function(){return this._canvas.getLayer("resizers")},fm.$inject=["eventBus","canvas","selection","resize"];var gm={__depends__:[gc,uc,Cu],__init__:["resize","resizePreview","resizeHandles"],resize:["type",rm],resizePreview:["type",um],resizeHandles:["type",fm]};function mm(e){e.on(["bendpoint.move.move","bendpoint.move.end"],2e3,(function(e){var t=e.context,n=t.allowed,i=t.hover,o=t.source,r=t.target,s=t.type;if(t.hints||(t.hints={}),delete t.hints.connectionStart,delete t.hints.connectionEnd,(!n||"dmn:InformationRequirement"===n.type)&&i&&gn(i,["dmn:Decision","dmn:InputData"])&&o!==r){var a="reconnectStart"===s||"reconnectEnd"===s,l=vo(o,r);a&&i===o?(!function(e,t){var n=e.context,i=n.source,o=vm(i,t),r=e.x-o.x,s=e.y-o.y;e.x-=r,e.y-=s,e.dx-=r,e.dy-=s}(e,l),t.hints.connectionEnd=ym(r,l)):a&&i===r&&(t.hints.connectionStart=vm(o,l),function(e,t){var n=e.context,i=n.target,o=ym(i,t),r=0,s=0;t.includes("top")||t.includes("bottom")?s=e.y-o.y:r=e.x-o.x;e.x-=r,e.y-=s,e.dx-=r,e.dy-=s}(e,l))}}))}function vm(e,t){var n=po(e),i=mo(e);return t.includes("bottom")?i.y=n.top:t.includes("top")?i.y=n.bottom:t.includes("right")?i.x=n.left:i.x=n.right,i}function ym(e,t){var n=po(e),i=mo(e);return t.includes("bottom")?i.y=n.bottom:t.includes("top")?i.y=n.top:t.includes("right")?i.x=n.right:i.x=n.left,i}mm.$inject=["eventBus"];function xm(e){e.on(["connect.hover","connect.move","connect.end"],250,(function(e){var t=e.context,n=t.canExecute,i=t.hover,o=t.source,r=t.target;if(n&&"dmn:InformationRequirement"===n.type){var s=vo(o,r);t.connectionStart=mo(o),t.connectionEnd=i===o?mo(r):{x:e.x,y:e.y},s.includes("bottom")?(t.connectionStart.y=po(o).top,t.connectionEnd.y=po(r).bottom):s.includes("top")?(t.connectionStart.y=po(o).bottom,t.connectionEnd.y=po(r).top):s.includes("right")?(t.connectionStart.x=po(o).left,t.connectionEnd.x=po(r).right):(t.connectionStart.x=po(o).right,t.connectionEnd.x=po(r).left)}else delete t.connectionStart,delete t.connectionEnd}))}function bm(){this._targets={},this._snapOrigins={},this._snapLocations=[],this._defaultSnaps={}}function _m(){this._snapValues={}}xm.$inject=["eventBus"],bm.prototype.getSnapOrigin=function(e){return this._snapOrigins[e]},bm.prototype.setSnapOrigin=function(e,t){this._snapOrigins[e]=t,-1===this._snapLocations.indexOf(e)&&this._snapLocations.push(e)},bm.prototype.addDefaultSnap=function(e,t){var n=this._defaultSnaps[e];n||(n=this._defaultSnaps[e]=[]),n.push(t)},bm.prototype.getSnapLocations=function(){return this._snapLocations},bm.prototype.setSnapLocations=function(e){this._snapLocations=e},bm.prototype.pointsForTarget=function(e){var t=e.id||e,n=this._targets[t];return n||(n=this._targets[t]=new _m).initDefaults(this._defaultSnaps),n},_m.prototype.add=function(e,t){var n=this._snapValues[e];n||(n=this._snapValues[e]={x:[],y:[]}),-1===n.x.indexOf(t.x)&&n.x.push(t.x),-1===n.y.indexOf(t.y)&&n.y.push(t.y)},_m.prototype.snap=function(e,t,n,i){var o=this._snapValues[t];return o&&function(e,t,n){var i,o;for(n=void 0===n?10:n,i=0;i<t.length;i++)if(o=t[i],Yc(o-e)<=n)return o}(e[n],o[n],i)},_m.prototype.initDefaults=function(e){var t=this;p(e||{},(function(e,n){p(e,(function(e){t.add(n,e)}))}))};function wm(e,t,n){var i=this;this._elementRegistry=e,t.on(["create.start","shape.move.start"],(function(e){i.initSnap(e)})),t.on(["create.move","create.end","shape.move.move","shape.move.end"],1250,(function(e){var t=e.context,o=t.shape,r=t.snapContext,s=t.target;if((!e.originalEvent||!pl(e.originalEvent))&&!eu(e)&&s){var a=r.pointsForTarget(s);a.initialized||((a=i.addSnapTargetPoints(a,o,s)).initialized=!0),n.snap(e,a)}})),t.on(["create.cleanup","shape.move.cleanup"],(function(){n.hide()}))}wm.$inject=["elementRegistry","eventBus","snapping"],wm.prototype.initSnap=function(e){var t,n=this._elementRegistry,i=e.context,o=i.shape,r=i.snapContext;r||(r=i.snapContext=new bm);var s=(t=n.get(o.id)?Jc(o,e):{x:e.x+Jc(o).x,y:e.y+Jc(o).y}).x-o.width/2,a=t.y-o.height/2,l=t.x+o.width/2,c=t.y+o.height/2;return r.setSnapOrigin("mid",{x:t.x-e.x,y:t.y-e.y}),uo(o)||(r.setSnapOrigin("top-left",{x:s-e.x,y:a-e.y}),r.setSnapOrigin("bottom-right",{x:l-e.x,y:c-e.y})),r},wm.prototype.addSnapTargetPoints=function(e,t,n){return p(this.getSnapTargets(t,n),(function(n){if(uo(n))uo(t)&&e.add("mid",Jc(n));else if(co(n)){if(n.waypoints.length<3)return;p(n.waypoints.slice(1,-1),(function(t){e.add("mid",t)}))}else e.add("mid",Jc(n))})),a(t.x)&&a(t.y)?(this._elementRegistry.get(t.id)&&e.add("mid",Jc(t)),e):e},wm.prototype.getSnapTargets=function(e,t){return nu(t).filter((function(e){return!e.hidden}))};function Cm(e,t){var n=this;e.on(["resize.start"],(function(e){n.initSnap(e)})),e.on(["resize.move","resize.end"],1250,(function(e){var i=e.context,o=i.shape,r=o.parent,s=i.direction,a=i.snapContext;if(!(e.originalEvent&&pl(e.originalEvent)||eu(e))){var l=a.pointsForTarget(r);l.initialized||((l=n.addSnapTargetPoints(l,o,r,s)).initialized=!0),function(e){return"n"===e||"s"===e}(s)&&tu(e,"x",e.x),function(e){return"e"===e||"w"===e}(s)&&tu(e,"y",e.y),t.snap(e,l)}})),e.on(["resize.cleanup"],(function(){t.hide()}))}function Om(e,t){var n=mo(e),i=po(e),o={x:n.x,y:n.y};return-1!==t.indexOf("n")?o.y=i.top:-1!==t.indexOf("s")&&(o.y=i.bottom),-1!==t.indexOf("e")?o.x=i.right:-1!==t.indexOf("w")&&(o.x=i.left),o}Cm.prototype.initSnap=function(e){var t=e.context,n=t.shape,i=t.direction,o=t.snapContext;o||(o=t.snapContext=new bm);var r=Om(n,i);return o.setSnapOrigin("corner",{x:r.x-e.x,y:r.y-e.y}),o},Cm.prototype.addSnapTargetPoints=function(e,t,n,i){return p(this.getSnapTargets(t,n),(function(t){var n;e.add("corner",{x:(n=t).x+n.width,y:n.y+n.height}),e.add("corner",function(e){return{x:e.x,y:e.y}}(t))})),e.add("corner",Om(t,i)),e},Cm.$inject=["eventBus","snapping"],Cm.prototype.getSnapTargets=function(e,t){return nu(t).filter((function(t){return!(n=t,i=e,n.host===i||co(t)||function(e){return!!e.hidden}(t)||uo(t));var n,i}))};function km(e){this._canvas=e,this._asyncHide=R(T(this.hide,this),1e3)}km.$inject=["canvas"],km.prototype.snap=function(e,t){var n=e.context.snapContext,i=n.getSnapLocations(),o={x:eu(e,"x"),y:eu(e,"y")};p(i,(function(i){var r=n.getSnapOrigin(i),s={x:e.x+r.x,y:e.y+r.y};if(p(["x","y"],(function(e){var n;o[e]||void 0!==(n=t.snap(s,i,e,7))&&(o[e]={value:n,originValue:n-r[e]})})),o.x&&o.y)return!1})),this.showSnapLine("vertical",o.x&&o.x.value),this.showSnapLine("horizontal",o.y&&o.y.value),p(["x","y"],(function(t){var n=o[t];s(n)&&tu(e,t,n.originValue)}))},km.prototype._createLine=function(e){var t=this._canvas.getLayer("snap"),n=Qn("path");return jn(n,{d:"M0,0 L0,0"}),Bn(n).add("djs-snap-line"),An(t,n),{update:function(t){a(t)?jn(n,"horizontal"===e?{d:"M-100000,"+t+" L+100000,"+t,display:""}:{d:"M "+t+",-100000 L "+t+", +100000",display:""}):jn(n,{display:"none"})}}},km.prototype._createSnapLines=function(){this._snapLines={horizontal:this._createLine("horizontal"),vertical:this._createLine("vertical")}},km.prototype.showSnapLine=function(e,t){var n=this.getSnapLine(e);n&&n.update(t),this._asyncHide()},km.prototype.getSnapLine=function(e){return this._snapLines||this._createSnapLines(),this._snapLines[e]},km.prototype.hide=function(){p(this._snapLines,(function(e){e.update()}))};var Em={__depends__:[{__init__:["createMoveSnapping","resizeSnapping","snapping"],createMoveSnapping:["type",wm],resizeSnapping:["type",Cm],snapping:["type",km]}],__init__:["bendpointSnapping","connectSnapping"],bendpointSnapping:["type",mm],connectSnapping:["type",xm]};function Sm(e){Sl.call(this,e)}function Rm(e,t){jm(e,"dmn:Decision")?function(e,t){for(const n of e.get("informationRequirement"))Tm(n,t);for(const n of e.get("knowledgeRequirement"))Am(n,t)}(e,t):jm(e,"dmn:BusinessKnowledgeModel")?function(e,t){for(const n of e.get("knowledgeRequirement"))Am(n,t)}(e,t):jm(e,"dmn:Expression")&&function(e,t){jm(e,"dmn:FunctionDefinition")&&function(e,t){const n=e.get("formalParameter");for(const e of n)Pm(e,t)}(e,t)}(e,t)}function Tm(e,t){const n=e.get("requiredInput");n&&function(e,t){const n=$m(e,t.rootElement);if(!n)return;const i=n.get("name");if(!i)return;t.variables.push({name:i,origin:n})}(n,t);const i=e.get("requiredDecision");i&&function(e,t){const n=$m(e,t.rootElement);if(!n)return;const i=n.get("name");if(!i)return;const o={name:i,origin:n},r=n.get("decisionLogic");r&&function(e,t,n){if(jm(e,"dmn:DecisionTable")){!function(e,t,n){if(1===e.length){const n={...Mm(e[0]),name:t.name};return void Object.assign(t,n)}const i=e.map(Mm);t.entries=i.filter((e=>!!e.name))}(e.get("output"),t)}}(r,o);t.variables.push(o)}(i,t)}function Mm(e){const t={name:e.name};return e.typeRef&&(t.detail=e.typeRef),t}function Am(e,t){const n=e.get("requiredKnowledge");n&&function(e,t){const n=$m(e,t.rootElement);if(!n)return;jm(n,"dmn:BusinessKnowledgeModel")&&function(e,t){const n=e.get("name");if(!n)return;const i={name:n,origin:e},o=e.get("encapsulatedLogic");o&&function(e,t,n){const i=e.get("formalParameter"),o=i.map(((e,t)=>{const n={name:e.get("name")||`param ${t+1}`,type:e.get("typeRef")};return n.type||delete n.type,n}));Object.assign(t,{type:"function",params:o})}(o,i);t.variables.push(i)}(n,t)}(n,t)}function Pm(e,t){const n=e.get("name");if(!n)return;const i={name:n,origin:e};e.get("typeRef")&&(i.detail=e.get("typeRef")),t.variables.push(i)}function Dm(e){let t=e;for(;t.$parent;)t=t.$parent;return t}function $m(e,t){const n=e.get("href");if(!n||!n.startsWith("#"))return;const i=n.slice(1);return t.get("drgElement").find((e=>e.get("id")===i))}function jm(e,t){return e.$instanceOf(t)}yn(Sm,Sl),Sm.prototype._modelingModules=[Dl,ic,pc,su,_d,Cd,Md,jd,Vd,Qd,ep,lp,hp,xp,Dp,cg,_g,Sg,Yg,gm,Em],Sm.prototype._modules=[].concat(Sm.prototype._modules,Sm.prototype._modelingModules);class Im{constructor(e){e.registerProvider(this)}getVariables(e,t){return e.concat(function(e){const t={variables:[],rootElement:Dm(e)};for(let n=e;n;n=n.$parent)Rm(n,t);return t.variables}(t))}}Im.$inject=["variableResolver"];const Bm={__init__:["dmnVariableProvider"],dmnVariableProvider:["type",Im],variableResolver:["type",class{constructor(){this._providers=[]}registerProvider(e){this._providers.push(e)}getVariables(e){return this._providers.reduce(((t,n)=>n.getVariables(t,e)),[])}}]};class Lm{constructor(e){M(this,e),zm(this,"businessObject",{writable:!0})}}class Nm extends Lm{constructor(e){super(e),zm(this,"root",{writable:!0}),zm(this,"cells",{enumerable:!0,value:this.cells||[]})}}class qm extends Lm{constructor(e){super(e),zm(this,"root",{writable:!0}),zm(this,"cells",{enumerable:!0,value:this.cells||[]})}}class Vm extends Lm{constructor(e){super(e),zm(this,"row",{writable:!0}),zm(this,"col",{writable:!0})}}const Fm={root:class extends Lm{constructor(e){super(e),zm(this,"rows",{enumerable:!0,value:this.rows||[]}),zm(this,"cols",{enumerable:!0,value:this.cols||[]})}},row:Nm,col:qm,cell:Vm};function zm(e,t,n){Object.defineProperty(e,t,n)}let Qm=class{constructor(){this._uid=12}create(e,t={}){return t.id||(t.id=e+"_"+this._uid++),function(e,t){const n=Fm[e];if(!n)throw new Error("unknown type "+e);return new n(t)}(e,t)}createRoot(e){return this.create("root",e)}createRow(e){return this.create("row",e)}createCol(e){return this.create("col",e)}createCell(e){return this.create("cell",e)}},Hm=class{constructor(e){this._eventBus=e,this._elements={},e.on("table.clear",this.clear.bind(this))}add(e,t){const{id:n}=e;this._elements[n]=e}remove(e){const t=e.id||e;delete this._elements[t]}get(e){return this._elements[e]}getAll(){return Wm(this._elements)}forEach(e){Wm(this._elements).forEach((t=>e(t)))}filter(e){return Wm(this._elements).filter((t=>e(t)))}clear(){this._elements={}}updateId(e,t){this._validateId(t),"string"==typeof e&&(e=this.get(e)),this._eventBus.fire("element.updateId",{element:e,newId:t}),this.remove(e),e.id=t,this.add(e)}_validateId(e){if(!e)throw new Error("element must have an id");if(this._elements[e])throw new Error("element with id "+e+" already added")}};function Wm(e){return Object.keys(e).map((function(t){return e[t]}))}Hm.$inject=["eventBus"];let Um=class{constructor(e){this._listeners={},e.on("elements.changed",(({elements:e})=>{this.elementsChanged(e)})),e.on("root.remove",(t=>{const n=t.root.id;this._listeners[n]&&e.once("root.add",(e=>{const t=e.root.id;this.updateId(n,t)}))})),e.on("element.updateId",(({element:e,newId:t})=>{this.updateId(e.id,t)}))}elementsChanged(e){const t={},n=e.length;for(let i=0;i<n;i++){const{id:n}=e[i];if(t[n])return;t[n]=!0;const o=this._listeners[n]&&this._listeners[n].length;if(o)for(let e=0;e<o;e++)this._listeners[n][e]&&this._listeners[n][e]()}}onElementsChanged(e,t){this._listeners[e]||(this._listeners[e]=[]),this._listeners[e][this._listeners[e].length]=t}offElementsChanged(e,t){if(this._listeners[e])if(t){const n=this._listeners[e].indexOf(t);-1!==n&&this._listeners[e].splice(n,1)}else this._listeners[e].length=0}updateId(e,t){this._listeners[e]&&(this._listeners[t]=this._listeners[e],delete this._listeners[e])}};Um.$inject=["eventBus"];class Xm extends Ds{constructor(e){super(e);const t=this._injector=e.injector;this._sheet=t.get("sheet"),this._changeSupport=t.get("changeSupport"),this._components=t.get("components"),this._eventBus=t.get("eventBus");const n=t.get("throttle");this.onElementsChanged=this.onElementsChanged.bind(this),this.onScroll=n(this.onScroll.bind(this))}onElementsChanged(){this.forceUpdate()}onScroll(){this._eventBus.fire("sheet.scroll")}getChildContext(){return{changeSupport:this._changeSupport,components:this._components,injector:this._injector}}componentWillMount(){const{id:e}=this._sheet.getRoot();this._changeSupport.onElementsChanged(e,this.onElementsChanged)}componentWillUnmount(){const{id:e}=this._sheet.getRoot();this._changeSupport.offElementsChanged(e,this.onElementsChanged)}render(){const{rows:e,cols:t}=this._sheet.getRoot(),n=this._components.getComponents("table.before"),i=this._components.getComponents("table.after"),o=this._components.getComponent("table.head"),r=this._components.getComponent("table.body"),s=this._components.getComponent("table.foot");return vr(1,"div","tjs-container",[n&&n.map(((e,t)=>yr(2,e,null,t))),vr(1,"div","tjs-table-container",vr(1,"table","tjs-table",[o&&yr(2,o,{rows:e,cols:t}),r&&yr(2,r,{rows:e,cols:t}),s&&yr(2,s,{rows:e,cols:t})],0),2,{onScroll:this.onScroll}),i&&i.map(((e,t)=>yr(2,e,null,t)))],0)}}let Km=class{constructor(e,t,n,i,o){const{container:r}=n;this._container=r,i.on("root.added",(()=>{Rs(yr(2,Xm,{injector:o}),r)})),i.on("root.remove",(()=>{Rs(null,r)}))}getContainer(){return this._container}};Km.$inject=["changeSupport","components","config.renderer","eventBus","injector"];var Gm={__init__:["changeSupport","components","renderer"],changeSupport:["type",Um],components:["type",class{constructor(){this._listeners={}}getComponent(e,t){const n=this._listeners[e];if(!n)return;let i;for(let e=0;e<n.length&&(i=n[e].callback(t),!i);e++);return i}getComponents(e,t){const n=this._listeners[e],i=[];if(!n)return i;for(let e=0;e<n.length;e++){const o=n[e].callback(t);o&&i.push(o)}return i.length,i}onGetComponent(e,t,n){if(l(t)&&(n=t,t=1e3),!a(t))throw new Error("priority must be a number");const i=this._getListeners(e);let o,r;const s={priority:t,callback:n};for(r=0;o=i[r];r++)if(o.priority<t)return void i.splice(r,0,s);i.push(s)}offGetComponent(e,t){const n=this._getListeners(e);let i,o,r;if(t)for(r=n.length-1;i=n[r];r--)o=i.callback,o===t&&n.splice(r,1);else n.length=0}_getListeners(e){let t=this._listeners[e];return t||(this._listeners[e]=t=[]),t}}],renderer:["type",Km]};class Ym{constructor(e,t){this._elementRegistry=e,this._eventBus=t,this._root=null,t.on("table.clear",(()=>{this.setRoot(null)}))}setRoot(e){if(this._root){const e=this._root;this._eventBus.fire("root.remove",{root:e}),this._root=null,this._eventBus.fire("root.removed",{root:e})}e&&this._eventBus.fire("root.add",{root:e}),this._root=e,e&&this._eventBus.fire("root.added",{root:e})}getRoot(){return this._root||this.setRoot({id:"__implicitroot",rows:[],cols:[]}),this._root}addRow(e,t){const n=this.getRoot();if(n.cols.length!=e.cells.length)throw new Error("number of cells is not equal to number of cols");return void 0===t&&(t=n.rows.length),Zm(t,n.rows,e),e.root=n,this._elementRegistry.add(e),e.cells.forEach(((i,o)=>{this._elementRegistry.add(i),i.row=e,i.col=n.cols[o],Zm(t,n.cols[o].cells,i)})),this._eventBus.fire("row.add",{row:e}),e}removeRow(e){const t=this.getRoot();"string"==typeof e&&(e=this._elementRegistry.get(e));const n=t.rows.indexOf(e);-1!==n&&(Jm(n,t.rows),e.root=void 0,this._elementRegistry.remove(e),e.cells.forEach(((e,i)=>{this._elementRegistry.remove(e),e.col=void 0,Jm(n,t.cols[i].cells)})),this._eventBus.fire("row.remove",{row:e}))}addCol(e,t){const n=this.getRoot();if(this._elementRegistry.add(e),n.rows.length!=e.cells.length)throw new Error("number of cells is not equal to number of rows");return void 0===t&&(t=n.cols.length),Zm(t,n.cols,e),e.root=n,e.cells.forEach(((i,o)=>{this._elementRegistry.add(i),i.col=e,i.row=n.rows[o],Zm(t,n.rows[o].cells,i)})),this._eventBus.fire("col.add",{col:e}),e}removeCol(e){const t=this.getRoot();"string"==typeof e&&(e=this._elementRegistry.get(e));const n=t.cols.indexOf(e);-1!==n&&(Jm(n,t.cols),e.root=void 0,this._elementRegistry.remove(e),e.cells.forEach(((e,i)=>{this._elementRegistry.remove(e),e.row=void 0,Jm(n,t.rows[i].cells)})),this._eventBus.fire("col.remove",{col:e}))}resized(){this._eventBus.fire("sheet.resized")}}function Zm(e,t,n){return t.splice(e,0,n)}function Jm(e,t){return t.splice(e,1)}function ev(e=!0){const t="number"==typeof e?e:e?300:0;return t?e=>function(e,t){let n=!1;return function(...i){n||(e(...i),n=!0,setTimeout((()=>{n=!1}),t))}}(e,t):e=>e}Ym.$inject=["elementRegistry","eventBus"],ev.$inject=["config.throttle"];var tv={__depends__:[Gm],__init__:["elementFactory","sheet"],elementFactory:["type",Qm],elementRegistry:["type",Hm],eventBus:["type",j],sheet:["type",Ym],throttle:["factory",ev]};class nv{constructor(e={}){let{injector:t}=e;if(!t){let{modules:n,config:i}=this._init(e);t=function(e,t){const n=[{config:["value",e]},tv].concat(t||[]),i=new Sn(n);return i.init(),i}(i,n)}this.get=t.get,this.invoke=t.invoke,this.get("eventBus").fire("table.init"),this.get("eventBus").fire("diagram.init")}_init(e){let{modules:t,...n}=e;return{modules:t,config:n}}destroy(){const e=this.get("eventBus");e.fire("table.destroy"),e.fire("diagram.destroy")}clear(){const e=this.get("eventBus");e.fire("table.clear"),e.fire("diagram.clear")}}function iv(e){if(!e)return"<null>";const t=e.id?` id="${e.id}"`:"";return`<${e.$type}${t} />`}function ov(e,t){function n(t,n,i){if(t.gfx)throw new Error(`already rendered ${iv(t)}`);return e.element(t,n,i)}function i(e,t,i){p(e,(function(e){n(e,t,i)}))}function o(e,t,i){p(e,(function(e){n(e,t,i)}))}return{handleDecision:function(t){t.id||(t.id="decision");const r=t.decisionLogic;if(!r)throw new Error(`no table for ${iv(t)}`);{if(!r.output)throw new Error(`missing output for ${iv(r)}`);const t=(c=r,e.table(c));r.input&&i(r.input,t,r),i(r.output,t,r),s=r.rule,a=t,l=r,p(s,(function(e){n(e,a,l),o(e.inputEntry,e),o(e.outputEntry,e)}))}var s,a,l,c}}}function rv(e,t){const{elements:n,index:i}=e;return i[t]?e:{elements:[...n,t],index:{...i,[t]:!0}}}function sv(...e){let t={elements:[],index:{}};return e.forEach((function(e){const n=typeof e;"string"===n&&e.length>0?t=rv(t,e):"object"===n&&null!==e&&Object.keys(e).forEach((function(n){e[n]&&(t=rv(t,n))}))})),function(e,t){return e.elements.join(t)}(t," ")}function av(e){return lv(e.constructor,e)}function lv(e,t){const n=e.$inject;if(!n)return;const{injector:i}=t.context,o=[...n,function(...e){for(const i in e){const o=n[i],r=e[i];t[o]=r}}];i.invoke(o)}function cv(e,t){Object.keys(t).forEach((function(n){if("$inject"===n||"__init"===n)return;const i=t[n];"constructor"===n&&i.call(e,e.props,e.context);const o=e[n];if(void 0!==o){if("function"!=typeof o)throw new Error(`failed to mixin <${n}>: cannot combine with non-fn component value`);e[n]=function(e,...t){return function(...n){let i;return t.forEach((function(t){if(i=t.call(e,...n),void 0!==i)return!1})),i}.bind(e)}(e,o,i)}else e[n]=i.bind(e)})),"$inject"in t&&lv(t,e),"__init"in t&&t.__init.call(e,e.props,e.context)}const uv={getSelectionClasses(){const{selected:e,selectedSecondary:t,focussed:n}=this.state;return sv({selected:e,"selected-secondary":t,focussed:n})},selectionChanged(e){this.setState(e)},componentWillUpdate(e){e.elementId!==this.props.elementId&&this.updateSelectionSubscription(!1)},componentDidUpdate(e){e.elementId!==this.props.elementId&&this.updateSelectionSubscription(!0)},componentDidMount(){this.updateSelectionSubscription(!0)},componentWillUnmount(){this.updateSelectionSubscription(!1)},updateSelectionSubscription(e){const{elementId:t}=this.props;t&&t&&this.eventBus[e?"on":"off"](`selection.${t}.changed`,this.selectionChanged)},$inject:["eventBus"]};class hv extends Ds{constructor(e,t){super(e,t),cv(this,uv),av(this)}getRenderProps(...e){const{className:t,elementId:n,coords:i,...o}=this.props,r={className:sv(...e,this.getSelectionClasses(),t)};return n&&(r["data-element-id"]=n),i&&(r["data-coords"]=i),{...r,...o}}}class dv extends hv{constructor(e,t){super(e,t),this.state={}}render(){const{children:e}=this.props;return br(vr(1,"td",null,e,0,{...this.getRenderProps("cell")}))}}const pv={slotFill(e,t){const{type:n,context:i,...o}=e,r=this.components.getComponent(n,i)||t;return r?br(yr(2,r,{...i,...o})):null},slotFills(e){const{type:t,context:n,...i}=e;return this.components.getComponents(t,n).map((e=>br(yr(2,e,{...n,...i}))))},$inject:["components"]};class fv extends Ds{constructor(e,t){super(e,t),cv(this,pv),av(this)}componentDidMount(){this.changeSupport.onElementsChanged(this.getRoot(),this.onElementsChanged)}componentWillUnmount(){this.changeSupport.offElementsChanged(this.getRoot(),this.onElementsChanged)}onElementsChanged=()=>{this.forceUpdate()};getRoot(){return this.sheet.getRoot()}render(){const e=(this.getRoot().businessObject.get("annotationsWidth")||400)+"px";return vr(1,"th","annotation header",[this.slotFills({type:"cell-inner",context:{cellType:"annotations",col:this.sheet.getRoot(),minWidth:400}}),this.translate("Annotations")],0,{style:{width:e}})}}function gv(e){const{row:t}=e,{id:n,description:i}=t.businessObject;return yr(2,dv,{className:"annotation",elementId:n,children:i||"-"})}function mv(e){e.onGetComponent("cell",(({cellType:e})=>"after-label-cells"===e?fv:"after-rule-cells"===e?gv:void 0))}fv.$inject=["changeSupport","sheet","translate"],mv.$inject=["components"];var vv={__init__:["annotationsProvider"],annotationsProvider:["type",mv]};function yv(e,t){return M({id:e.id,type:e.$type,businessObject:e},t)}class xv{constructor(e,t,n){this._elementFactory=e,this._eventBus=t,this._sheet=n}add(e){let t;if(hn(e,"dmn:DecisionTable"))t=this._elementFactory.createRoot(yv(e)),this._sheet.setRoot(t);else if(hn(e,"dmn:InputClause"))t=this._elementFactory.createCol(yv(e)),this._sheet.addCol(t);else if(hn(e,"dmn:OutputClause"))t=this._elementFactory.createCol(yv(e)),this._sheet.addCol(t);else if(hn(e,"dmn:DecisionRule")){e.inputEntry||(e.inputEntry=[]),e.outputEntry||(e.outputEntry=[]);const n=[...e.inputEntry,...e.outputEntry].map((e=>this._elementFactory.createCell(yv(e))));t=this._elementFactory.createRow(M(yv(e),{cells:n})),this._sheet.addRow(t)}return this._eventBus.fire("dmnElement.added",{element:t}),t}}xv.$inject=["elementFactory","eventBus","sheet"];var bv={__depends__:[{__depends__:[ha],tableImporter:["type",xv]},Gm]};class _v extends Ds{constructor(e,t){super(e,t),cv(this,pv),this._sheet=t.injector.get("sheet"),this._changeSupport=t.changeSupport}onElementsChanged=()=>{this.forceUpdate()};componentWillMount(){const e=this._sheet.getRoot();this._changeSupport.onElementsChanged(e.id,this.onElementsChanged)}componentWillUnmount(){const e=this._sheet.getRoot();this._changeSupport.offElementsChanged(e.id,this.onElementsChanged)}render(){const e=this._sheet.getRoot();if(!hn(e,"dmn:DMNElement"))return null;const t=fn(e),n=t.input,i=t.output;return vr(1,"thead",null,vr(1,"tr",null,[vr(1,"th","index-column"),this.slotFills({type:"cell",context:{cellType:"before-label-cells"}}),n&&n.map(((e,t)=>{const i=e.width||"192px";return this.slotFill({type:"cell",context:{cellType:"input-header",input:e,index:t,inputsLength:n.length,width:i},key:e.id},wv)})),i.map(((e,t)=>this.slotFill({type:"cell",context:{cellType:"output-header",output:e,index:t,outputsLength:i.length},key:e.id},Cv))),this.slotFills({type:"cell",context:{cellType:"after-label-cells"}})],0),2)}}function wv(e,t){const{input:n,className:i,index:o}=e,{label:r,inputExpression:s,inputValues:a}=n,l=t.injector.get("translate");return vr(1,"th",(i||"")+" input-cell",[vr(1,"div","clause",l(0===o?"When":"And"),0),r?vr(1,"div","input-label",r,0,{title:l("Input label: ")+r}):vr(1,"div","input-expression",s.text,0,{title:l("Input expression: ")+s.text}),vr(1,"div","input-variable",a&&a.text||s.typeRef,0,{title:a&&a.text?l("Input values"):l("Input type")})],0,{"data-col-id":n.id},n.id)}function Cv(e,t){const{output:n,className:i,index:o}=e,{label:r,name:s,outputValues:a,typeRef:l}=n,c=t.injector.get("translate");return vr(1,"th",(i||"")+" output-cell",[vr(1,"div","clause",c(0===o?"Then":"And"),0),r?vr(1,"div","output-label",r,0,{title:c("Output label")}):vr(1,"div","output-name",s,0,{title:c("Output name")}),vr(1,"div","output-variable",a&&a.text||l,0,{title:a&&a.text?c("Output values"):c("Output type")})],0,null,n.id)}function Ov(e){e.onGetComponent("table.head",(()=>_v))}Ov.$inject=["components"];var kv={__init__:["decisionTableHeadProvider"],decisionTableHeadProvider:["type",Ov]};let Ev=class extends Ds{constructor(e,t){super(e,t),this._translate=t.injector.get("translate"),av(this)}render(){const e=this.sheet.getRoot();if(!hn(e,"dmn:DMNElement"))return null;const{name:t}=e.businessObject.$parent,n=this.components.getComponent("hit-policy")||Sv;return vr(1,"div","decision-table-properties",[vr(1,"div","decision-table-name",t,0,{title:this._translate("Decision name: ")+t}),vr(1,"div","decision-table-header-separator"),yr(2,n)],4)}};function Sv(){return null}Ev.$inject=["sheet","components"];let Rv=class{constructor(e){e.onGetComponent("table.before",500,(()=>Ev))}};Rv.$inject=["components"];var Tv={__init__:["decisionTableProperties"],decisionTableProperties:["type",Rv]};class Mv extends Ds{render(){const{row:e,rowIndex:t}=this.props,{components:n}=this.context,i=n.getComponents("cell-inner",{cellType:"rule-index",row:e,rowIndex:t});return vr(1,"td","rule-index",[i&&i.map((n=>yr(2,n,{row:e,rowIndex:t}))),t+1],0,{"data-element-id":e.id,"data-row-id":e.id})}}class Av{constructor(e){e.onGetComponent("cell",(({cellType:e})=>{if("before-rule-cells"===e)return Mv}))}}Av.$inject=["components"];var Pv={__init__:["decisionRuleIndices"],decisionRuleIndices:["type",Av]};const Dv=[{label:"FEEL",value:"feel"}];class $v{constructor(e){this._injector=e;const t=e.get("config.expressionLanguages")||{};this._config={options:Dv,defaults:{editor:"feel"}},t.options&&(this._config.options=t.options);const n=this._getLegacyDefaults();M(this._config.defaults,n,t.defaults)}getDefault(e){const{defaults:t}=this._config,n=t[e]||t.editor;return this._getLanguageByValue(n)||this.getAll()[0]}getLabel(e){const t=this._getLanguageByValue(e);return t?t.label:e}getAll(){return this._config.options}_getLegacyDefaults(){const e={},t=this._injector,n=t.get("config.defaultInputExpressionLanguage"),i=t.get("config.defaultOutputExpressionLanguage");return n&&(e.inputCell=n),i&&(e.outputCell=i),e}_getLanguageByValue(e){return h(this.getAll(),(t=>e===t.value))}}$v.$inject=["injector"];var jv={__init__:["expressionLanguages"],expressionLanguages:["type",$v]};class Iv extends Ds{render({rows:e,cols:t}){const{components:n}=this.context;return vr(1,"tbody",null,e.map(((e,i)=>{const o=n.getComponent("row",{rowType:"rule"});return o&&yr(2,o,{row:e,rowIndex:i,cols:t},e.id)})),0)}}class Bv extends Ds{constructor(e,t){super(e,t),cv(this,pv)}render(){const{row:e,rowIndex:t,cols:n}=this.props,{cells:i}=e;return vr(1,"tr",null,[this.slotFills({type:"cell",context:{cellType:"before-rule-cells",row:e,rowIndex:t}}),i.map(((i,o)=>this.slotFill({type:"cell",context:{cellType:"rule",cell:i,rowIndex:t,colIndex:o},key:i.id,row:e,col:n[o]}))),this.slotFills({type:"cell",context:{cellType:"after-rule-cells",row:e,rowIndex:t}})],0)}}class Lv extends Ds{render(){const{cell:e,row:t,col:n}=this.props;return hn(e,"dmn:UnaryTests")?yr(2,dv,{className:"input-cell",elementId:e.id,"data-row-id":t.id,"data-col-id":n.id,children:e.businessObject.text}):yr(2,dv,{className:"output-cell",elementId:e.id,"data-row-id":t.id,"data-col-id":n.id,children:e.businessObject.text})}}let Nv=class{constructor(e){e.onGetComponent("table.body",(()=>Iv)),e.onGetComponent("row",(({rowType:e})=>{if("rule"===e)return Bv})),e.onGetComponent("cell",(({cellType:e})=>{if("rule"===e)return Lv}))}};Nv.$inject=["components"];var qv={__depends__:[jv],__init__:["decisionRules"],decisionRules:["type",Nv]};const Vv=[{label:"Unique",value:{hitPolicy:"UNIQUE",aggregation:void 0},explanation:"No overlap is possible and all rules are disjoint. Only a single rule can be matched"},{label:"First",value:{hitPolicy:"FIRST",aggregation:void 0},explanation:"Rules may overlap. The first matching rule will be chosen"},{label:"Priority",value:{hitPolicy:"PRIORITY",aggregation:void 0},explanation:"Rules may overlap. The one with the highest priority will be chosen"},{label:"Any",value:{hitPolicy:"ANY",aggregation:void 0},explanation:"Rules may overlap. Their output have to match"},{label:"Collect",value:{hitPolicy:"COLLECT",aggregation:void 0},explanation:"Collects the values of all matching rules"},{label:"Collect (Sum)",value:{hitPolicy:"COLLECT",aggregation:"SUM"},explanation:"Collects the values of all matching rules and sums up to a single value"},{label:"Collect (Min)",value:{hitPolicy:"COLLECT",aggregation:"MIN"},explanation:"Collects the values of all matching rules and uses the lowest value"},{label:"Collect (Max)",value:{hitPolicy:"COLLECT",aggregation:"MAX"},explanation:"Collects the values of all matching rules and uses the highest value"},{label:"Collect (Count)",value:{hitPolicy:"COLLECT",aggregation:"COUNT"},explanation:"Collects the values of all matching rules and counts the number of them"},{label:"Rule order",value:{hitPolicy:"RULE ORDER",aggregation:void 0},explanation:"Collects the values of all matching rules in rule order"},{label:"Output order",value:{hitPolicy:"OUTPUT ORDER",aggregation:void 0},explanation:"Collects the values of all matching rules in decreasing output priority order"}];class Fv extends Ds{constructor(e,t){super(e,t),this._translate=t.injector.get("translate"),av(this)}getRoot(){return this.sheet.getRoot()}render(){const e=this.getRoot().businessObject,{aggregation:t,hitPolicy:n}=e,i=h(Vv,(e=>function(e,t){return e.hitPolicy===t.hitPolicy&&e.aggregation===t.aggregation}(e.value,{aggregation:t,hitPolicy:n})));return vr(1,"div","hit-policy header",[vr(1,"label","dms-label",this._translate("Hit policy:"),0),vr(1,"span","hit-policy-value",this._translate(i.label),0)],4,{title:this._translate(i.explanation)})}}function zv(e){e.onGetComponent("hit-policy",(()=>Fv))}Fv.$inject=["sheet"],zv.$inject=["components"];var Qv={__init__:["hitPolicyProvider"],hitPolicyProvider:["type",zv]};let Hv=class extends Ds{constructor(e,t){super(e,t);const{injector:n}=t;this._translate=n.get("translate"),this._eventBus=n.get("eventBus")}onClick=()=>{this._eventBus.fire("showDrd")};render(){return vr(1,"div","view-drd",vr(1,"button","view-drd-button",this._translate("View DRD"),0,{type:"button",onClick:this.onClick}),2,null,null,(e=>this.node=e))}},Wv=class{constructor(e,t,n,i){this._injector=n,this._sheet=i,e.onGetComponent("table.before",(()=>{if(this.canViewDrd())return Hv})),t.on("showDrd",(()=>{const e=n.get("_parent",!1),t=Uv(i.getRoot());if(!t)return;const o=e.getView(t);e.open(o)}))}canViewDrd(){const e=this._injector.get("_parent",!1);if(!e)return!1;const t=Uv(this._sheet.getRoot());return!!e.getView(t)}};function Uv(e){const{businessObject:t}=e;if(!t)return;return t.$parent.$parent}Wv.$inject=["components","eventBus","injector","sheet"];var Xv={__init__:["viewDrd"],viewDrd:["type",Wv]};let Kv=class{constructor(e){e.onGetComponent("table.before",(()=>Bs))}};Kv.$inject=["components"];var Gv={__init__:["poweredBy"],poweredBy:["type",Kv]};let Yv=class e extends nv{constructor(t={}){const n=e._createContainer();super(M(t,{renderer:{container:n}})),this._container=n}open(e){var t=this;return new Promise(((n,i)=>{var o;try{return t._decision&&t.clear(),t._decision=e,function(e,t,n){const i=e.get("tableImporter"),o=e.get("eventBus"),r=e.get("sheet");e.get("modeling",!1);let s,a=[];o.fire("import.render.start",{decision:t});try{!function(e){new ov({create:(e,t,n,o)=>i.create(e,t,n,o),table:e=>i.add(e),element:(e,t,n)=>i.add(e,t,n),error(e,t){a.push({message:e,context:t})}}).handleDecision(e)}(t)}catch(e){s=e}o.fire("import.render.complete",{error:s,warnings:a}),o.fire("elements.changed",{elements:[r.getRoot()]}),n(s,a)}(t,e,(function(e,t){e?(e.warnings=t||[],i(e)):n({warnings:t||[]})}))}catch(e){o=e}o?(o.warnings=o.warnings||[],i(o)):n({warnings:[]})}))}_init(e){let{modules:t,additionalModules:n,...i}=e,o=t||this.getModules();return{modules:[Gv,...o,...n||[],...[{decisionTable:["value",this]}]],config:i}}on(e,t,n,i){return this.get("eventBus").on(e,t,n,i)}off(e,t){this.get("eventBus").off(e,t)}_emit(e,t){return this.get("eventBus").fire(e,t)}attachTo(e){if(!e)throw new Error("parentNode required");this.detach();const t=this._container;e.appendChild(t),this._emit("attach",{})}detach(){const e=this._container;e.parentNode&&(this._emit("detach",{}),en(e))}destroy(){super.destroy(),this.detach()}getModules(){return e._getModules()}static _getModules(){return[vv,bv,ha,kv,Tv,Pv,qv,Qv,Xv]}static _createContainer(){return Gt('<div class="dmn-decision-table-container"></div>')}};class Zv extends Ds{constructor(e,t){super(e,t),av(this),this.addRule=this.addRule.bind(this)}componentWillMount(){this._eventBus=this.context.injector.get("eventBus")}handleClick=e=>{e.stopPropagation(),this.addRule(e.target.dataset.colIndex)};addRule(e){this._eventBus.fire("addRule",{colIndex:e})}render(){const{cols:e}=this.props,t=[vr(1,"td","add-rule-add",vr(1,"button","dmn-icon-plus action-icon",null,1,{title:this.translate("Add rule")}),2)],{businessObject:n}=this.sheet.getRoot();n.input&&n.input.length||t.push(vr(1,"td","input-cell",xr("-"),2));for(let n=0;n<e.length+1;n++){let i="add-rule";const o=e[n]&&e[n].businessObject;let r="";o?(o.$instanceOf("dmn:InputClause")&&(i+=" input-cell",r="-"),o.$instanceOf("dmn:OutputClause")&&(i+=" output-cell")):i+=" annotation",t.push(vr(1,"td",i,r,0,{"data-col-index":n}))}return vr(1,"tfoot","actionable add-rule",vr(1,"tr",null,t,0),2,{onClick:this.handleClick})}}Zv.$inject=["sheet","translate"];class Jv{constructor(e,t,n,i){e.onGetComponent("table.foot",(()=>Zv)),n.on("addRule",((e,n)=>{const o=t.trigger("addRule"),r=n.colIndex;o.cells[r]?i.select(o.cells[r]):i.select(o.cells[0])}))}}Jv.$inject=["components","editorActions","eventBus","selection"];class ey{constructor(e,t,n){this._elementRegistry=e,this._eventBus=t,this._renderer=n,this._selection=void 0,t.on("diagram.clear",(()=>{this._selection=void 0}))}select(e){c(e)&&(e=this._elementRegistry.get(e));const t=this._selection;t!==e&&(this._selection=e,this._eventBus.fire("selection.changed",{oldSelection:t,selection:e}))}deselect(){const e=this._selection;this._selection=void 0,this._eventBus.fire("selection.changed",{oldSelection:e,selection:this._selection})}get(){return this._selection}hasSelection(){return!!this._selection}}ey.$inject=["elementRegistry","eventBus","renderer"];class ty{constructor(e,t,n,i){this._elementRegistry=e,this._renderer=n,this._selection=i,t.on(["cell.click","cell.contextmenu"],(({id:t})=>{const n=e.get(t);n&&i.select(n)})),t.on("row.remove",(({row:e})=>{const t=i.get();t&&e===t.row&&i.deselect()})),t.on("col.remove",(({col:e})=>{const t=i.get();t&&e===t.col&&i.deselect()}))}}ty.$inject=["elementRegistry","eventBus","renderer","selection"];var ny={__init__:["selection","selectionBehavior"],selection:["type",ey],selectionBehavior:["type",ty]};const iy=["click","dblclick","contextmenu","mousedown","mouseup","mouseenter","mouseleave","mouseout","mouseover","mousemove","focusin","focusout","drag","dragstart","dragend","dragover","dragenter","dragleave","drop"];class oy{constructor(e,t){var n,i,o;o=e=>{const{target:t,type:n}=e,i=Bt(t,"[data-element-id]",!0);if(!i)return;const o=i.getAttribute("data-element-id");if(o){const t=this._eventBus.createEvent({id:o,event:e,node:i,target:i});this._eventBus.fire(`cell.${n}`,t),t.defaultPrevented&&e.preventDefault(),t.cancelBubble&&e.stopPropagation()}},(i="_handleEvent")in(n=this)?Object.defineProperty(n,i,{value:o,enumerable:!0,configurable:!0,writable:!0}):n[i]=o,this._eventBus=t,this._container=e.container,t.on("table.init",(()=>{this._addEventListeners(iy)})),t.on("table.destroy",(()=>{this._removeEventListeners(iy)}))}_addEventListeners(e){const t=this._container;e.forEach((e=>{t.addEventListener(e,this._handleEvent)}))}_removeEventListeners(e){const t=this._container;e.forEach((e=>{t.removeEventListener(e,this._handleEvent)}))}}oy.$inject=["config.renderer","eventBus"];var ry={__init__:["interactionEvents"],interactionEvents:["type",oy]},sy="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function ay(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var ly,cy={exports:{}},uy=cy.exports;
21 var t,n;this._container=this._createContainer(),t=this._container,n=xn('<a href="http://bpmn.io" target="_blank" class="bjs-powered-by" title="Powered by bpmn.io" style="position global() method in AnonymousFunction9d0550af38e00.i
H A Ddmn-viewer.production.min.js2 !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e="undefined"!=typeof globalThis?globalThis:e||self).DmnJS=t()}(this,(function(){"use strict";const e=Object.prototype.toString,t=Object.prototype.hasOwnProperty;function n(e){return void 0!==e}function i(t){return"[object Array]"===e.call(t)}function r(t){return"[object Object]"===e.call(t)}function o(t){return"[object Number]"===e.call(t)}function s(t){const n=e.call(t);return"[object Function]"===n||"[object AsyncFunction]"===n||"[object GeneratorFunction]"===n||"[object AsyncGeneratorFunction]"===n||"[object Proxy]"===n}function a(t){return"[object String]"===e.call(t)}function l(e,n){return!(null==e)&&t.call(e,n)}function c(e,t){const n=g(t);let i;return u(e,(function(e,t){if(n(e,t))return i=e,!1})),i}function h(e,t){const n=g(t);let i=[];return u(e,(function(e,t){n(e,t)&&i.push(e)})),i}function u(e,t){let n,r;if(void 0===e)return;const o=i(e)?y:m;for(let i in e)if(l(e,i)&&(n=e[i],r=t(n,o(i)),!1===r))return n}function d(e,t,n){return u(e,(function(e,i){n=t(n,e,i)})),n}function p(e,t){return!!d(e,(function(e,n,i){return e&&t(n,i)}),!0)}function f(e){return function(t){return p(e,(function(e,n){return t[n]===e}))}}function g(e){return s(e)?e:t=>t===e}function m(e){return e}function y(e){return Number(e)}function v(e,t){let n,i,r,o;function s(n){let s=Date.now(),c=n?0:o+t-s;if(c>0)return a(c);e.apply(r,i),l()}function a(e){n=setTimeout(s,e)}function l(){n&&clearTimeout(n),n=o=i=r=void 0}function c(...e){o=Date.now(),i=e,r=this,n||a(t)}return c.flush=function(){n&&s(!0),l()},c.cancel=l,c}function w(e,t){return e.bind(t)}function b(e,...t){return Object.assign(e,...t)}var x="__fn",k=Array.prototype.slice;function _(){this._listeners={},this.on("diagram.destroy",1,this._destroy,this)}function S(){}_.prototype.on=function(e,t,n,r){if(e=i(e)?e:[e],s(t)&&(r=n,n=t,t=1e3),!o(t))throw new Error("priority must be a number");var a=n;r&&((a=w(n,r))[x]=n[x]||n);var l=this;e.forEach((function(e){l._addListener(e,{priority:t,callback:a,next:null})}))},_.prototype.once=function(e,t,n,i){var r=this;if(s(t)&&(i=n,n=t,t=1e3),!o(t))throw new Error("priority must be a number");function a(){a.__isTomb=!0;var t=n.apply(i,arguments);return r.off(e,a),t}a[x]=n,this.on(e,t,a)},_.prototype.off=function(e,t){e=i(e)?e:[e];var n=this;e.forEach((function(e){n._removeListener(e,t)}))},_.prototype.createEvent=function(e){var t=new S;return t.init(e),t},_.prototype.fire=function(e,t){var n,i,r,o;if(o=k.call(arguments),"object"==typeof e&&(e=(t=e).type),!e)throw new Error("no event type specified");if(i=this._listeners[e]){n=t instanceof S?t:this.createEvent(t),o[0]=n;var s=n.type;e!==s&&(n.type=e);try{r=this._invokeListeners(n,o,i)}finally{e!==s&&(n.type=s)}return void 0===r&&n.defaultPrevented&&(r=!1),r}},_.prototype.handleError=function(e){return!1===this.fire("error",{error:e})},_.prototype._destroy=function(){this._listeners={}},_.prototype._invokeListeners=function(e,t,n){for(var i;n&&!e.cancelBubble;)i=this._invokeListener(e,t,n),n=n.next;return i},_.prototype._invokeListener=function(e,t,n){var i;if(n.callback.__isTomb)return i;try{i=function(e,t){return e.apply(null,t)}(n.callback,t),void 0!==i&&(e.returnValue=i,e.stopPropagation()),!1===i&&e.preventDefault()}catch(e){if(!this.handleError(e))throw console.error("unhandled error in event listener",e),e}return i},_.prototype._addListener=function(e,t){var n,i=this._getListeners(e);if(i){for(;i;){if(i.priority<t.priority)return t.next=i,void(n?n.next=t:this._setListeners(e,t));n=i,i=i.next}n.next=t}else this._setListeners(e,t)},_.prototype._getListeners=function(e){return this._listeners[e]},_.prototype._setListeners=function(e,t){this._listeners[e]=t},_.prototype._removeListener=function(e,t){var n,i,r,o=this._getListeners(e);if(t)for(;o;)n=o.next,(r=o.callback)!==t&&r[x]!==t||(i?i.next=n:this._setListeners(e,n)),i=o,o=n;else this._setListeners(e,null)},S.prototype.stopPropagation=function(){this.cancelBubble=!0},S.prototype.preventDefault=function(){this.defaultPrevented=!0},S.prototype.init=function(e){b(this,e||{})};var C=Object.prototype.toString;function E(){return E=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e},E.apply(this,arguments)}function M(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),i=1;i<t;i++)n[i-1]=arguments[i];return E.apply(void 0,[e].concat(n))}var A=Object.prototype.toString,D=Object.prototype.hasOwnProperty;function R(e){return"[object String]"===A.call(e)}function O(e,t){return D.call(e,t)}function T(e,t){var n;if(void 0!==e){var i=function(e){return"[object Array]"===A.call(e)}(e)?P:N;for(var r in e)if(O(e,r)&&!1===t(n=e[r],i(r)))return n}}function N(e){return e}function P(e){return Number(e)}function q(e,t){return e.bind(t)}function B(){return B=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e},B.apply(this,arguments)}function L(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),i=1;i<t;i++)n[i-1]=arguments[i];return B.apply(void 0,[e].concat(n))}function I(){}function F(e,t){this.model=e,this.properties=t}I.prototype.get=function(e){return this.$model.properties.get(this,e)},I.prototype.set=function(e,t){this.$model.properties.set(this,e,t)},F.prototype.createType=function(e){var t=this.model,n=this.properties,i=Object.create(I.prototype);T(e.properties,(function(e){e.isMany||void 0===e.default||(i[e.name]=e.default)})),n.defineModel(i,t),n.defineDescriptor(i,e);var r=e.ns.name;function o(e){n.define(this,"$type",{value:r,enumerable:!0}),n.define(this,"$attrs",{value:{}}),n.define(this,"$parent",{writable:!0}),T(e,q((function(e,t){this.set(t,e)}),this))}return o.prototype=i,o.hasType=i.$instanceOf=this.model.hasType,n.defineModel(o,t),n.defineDescriptor(o,e),o};var j={String:!0,Boolean:!0,Integer:!0,Real:!0,Element:!0},V={String:function(e){return e},Boolean:function(e){return"true"===e},Integer:function(e){return parseInt(e,10)},Real:function(e){return parseFloat(e)}};function $(e,t){var n=V[e];return n?n(t):t}function z(e){return!!j[e]}function H(e){return!!V[e]}function W(e,t){var n,i,r=e.split(/:/);if(1===r.length)n=e,i=t;else{if(2!==r.length)throw new Error("expected <prefix:localName> or <localName>, got "+e);n=r[1],i=r[0]}return{name:e=(i?i+":":"")+n,prefix:i,localName:n}}function U(e){this.ns=e,this.name=e.name,this.allTypes=[],this.allTypesByName={},this.properties=[],this.propertiesByName={}}function G(e,t){this.packageMap={},this.typeMap={},this.packages=[],this.properties=t,T(e,q(this.registerPackage,this))}function K(e,t,n){var i=t[n];if(i in e)throw new Error("package with "+n+" <"+i+"> already defined")}function X(e){this.model=e}function Y(e,t,n){Object.defineProperty(e,t.name,{enumerable:!t.isReference,writable:!0,value:n,configurable:!0})}function J(e){this.properties=new X(this),this.factory=new F(this,this.properties),this.registry=new G(e,this.properties),this.typeCache={}}U.prototype.build=function(){return e=this,t=["ns","name","allTypes","allTypesByName","properties","propertiesByName","bodyProperty","idProperty"],n={},i=Object(e),T(t,(function(t){t in i&&(n[t]=e[t])})),n;var e,t,n,i},U.prototype.addProperty=function(e,t,n){"boolean"==typeof t&&(n=t,t=void 0),this.addNamedProperty(e,!1!==n);var i=this.properties;void 0!==t?i.splice(t,0,e):i.push(e)},U.prototype.replaceProperty=function(e,t,n){var i=e.ns,r=this.properties,o=this.propertiesByName,s=e.name!==t.name;if(e.isId){if(!t.isId)throw new Error("property <"+t.ns.name+"> must be id property to refine <"+e.ns.name+">");this.setIdProperty(t,!1)}if(e.isBody){if(!t.isBody)throw new Error("property <"+t.ns.name+"> must be body property to refine <"+e.ns.name+">");this.setBodyProperty(t,!1)}var a=r.indexOf(e);if(-1===a)throw new Error("property <"+i.name+"> not found in property list");r.splice(a,1),this.addProperty(t,n?void 0:a,s),o[i.name]=o[i.localName]=t},U.prototype.redefineProperty=function(e,t,n){var i=e.ns.prefix,r=t.split("#"),o=W(r[0],i),s=W(r[1],o.prefix).name,a=this.propertiesByName[s];if(!a)throw new Error("refined property <"+s+"> not found");this.replaceProperty(a,e,n),delete e.redefines},U.prototype.addNamedProperty=function(e,t){var n=e.ns,i=this.propertiesByName;t&&(this.assertNotDefined(e,n.name),this.assertNotDefined(e,n.localName)),i[n.name]=i[n.localName]=e},U.prototype.removeNamedProperty=function(e){var t=e.ns,n=this.propertiesByName;delete n[t.name],delete n[t.localName]},U.prototype.setBodyProperty=function(e,t){if(t&&this.bodyProperty)throw new Error("body property defined multiple times (<"+this.bodyProperty.ns.name+">, <"+e.ns.name+">)");this.bodyProperty=e},U.prototype.setIdProperty=function(e,t){if(t&&this.idProperty)throw new Error("id property defined multiple times (<"+this.idProperty.ns.name+">, <"+e.ns.name+">)");this.idProperty=e},U.prototype.assertNotDefined=function(e,t){var n=e.name,i=this.propertiesByName[n];if(i)throw new Error("property <"+n+"> already defined; override of <"+i.definedBy.ns.name+"#"+i.ns.name+"> by <"+e.definedBy.ns.name+"#"+e.ns.name+"> not allowed without redefines")},U.prototype.hasProperty=function(e){return this.propertiesByName[e]},U.prototype.addTrait=function(e,t){var n=this.allTypesByName,i=this.allTypes,r=e.name;r in n||(T(e.properties,q((function(n){n=L({},n,{name:n.ns.localName,inherited:t}),Object.defineProperty(n,"definedBy",{value:e});var i=n.replaces,r=n.redefines;i||r?this.redefineProperty(n,i||r,i):(n.isBody&&this.setBodyProperty(n),n.isId&&this.setIdProperty(n),this.addProperty(n))}),this)),i.push(e),n[r]=e)},G.prototype.getPackage=function(e){return this.packageMap[e]},G.prototype.getPackages=function(){return this.packages},G.prototype.registerPackage=function(e){e=L({},e);var t=this.packageMap;K(t,e,"prefix"),K(t,e,"uri"),T(e.types,q((function(t){this.registerType(t,e)}),this)),t[e.uri]=t[e.prefix]=e,this.packages.push(e)},G.prototype.registerType=function(e,t){var n=W((e=L({},e,{superClass:(e.superClass||[]).slice(),extends:(e.extends||[]).slice(),properties:(e.properties||[]).slice(),meta:L(e.meta||{})})).name,t.prefix),i=n.name,r={};T(e.properties,q((function(e){var t=W(e.name,n.prefix),i=t.name;z(e.type)||(e.type=W(e.type,t.prefix).name),L(e,{ns:t,name:i}),r[i]=e}),this)),L(e,{ns:n,name:i,propertiesByName:r}),T(e.extends,q((function(e){var t=this.typeMap[e];t.traits=t.traits||[],t.traits.push(i)}),this)),this.definePackage(e,t),this.typeMap[i]=e},G.prototype.mapTypes=function(e,t,n){var i=z(e.name)?{name:e.name}:this.typeMap[e.name],r=this;function o(e){return s(e,!0)}function s(n,i){var o=W(n,z(n)?"":e.prefix);r.mapTypes(o,t,i)}if(!i)throw new Error("unknown type <"+e.name+">");T(i.superClass,n?o:s),t(i,!n),T(i.traits,o)},G.prototype.getEffectiveDescriptor=function(e){var t=W(e),n=new U(t);this.mapTypes(t,(function(e,t){n.addTrait(e,t)}));var i=n.build();return this.definePackage(i,i.allTypes[i.allTypes.length-1].$pkg),i},G.prototype.definePackage=function(e,t){this.properties.define(e,"$pkg",{value:t})},X.prototype.set=function(e,t,n){if(!R(t)||!t.length)throw new TypeError("property name must be a non-empty string");var i=this.model.getPropertyDescriptor(e,t),r=i&&i.name;void 0===n?i?delete e[r]:delete e.$attrs[t]:i?r in e?e[r]=n:Y(e,i,n):e.$attrs[t]=n},X.prototype.get=function(e,t){var n=this.model.getPropertyDescriptor(e,t);if(!n)return e.$attrs[t];var i=n.name;return!e[i]&&n.isMany&&Y(e,n,[]),e[i]},X.prototype.define=function(e,t,n){if(!n.writable){var i=n.value;delete(n=L({},n,{get:function(){return i}})).value}Object.defineProperty(e,t,n)},X.prototype.defineDescriptor=function(e,t){this.define(e,"$descriptor",{value:t})},X.prototype.defineModel=function(e,t){this.define(e,"$model",{value:t})},J.prototype.create=function(e,t){var n=this.getType(e);if(!n)throw new Error("unknown type <"+e+">");return new n(t)},J.prototype.getType=function(e){var t=this.typeCache,n=R(e)?e:e.ns.name,i=t[n];return i||(e=this.registry.getEffectiveDescriptor(n),i=t[n]=this.factory.createType(e)),i},J.prototype.createAny=function(e,t,n){var i=W(e),r={$type:e,$instanceOf:function(e){return e===this.$type}},o={name:e,isGeneric:!0,ns:{prefix:i.prefix,localName:i.localName,uri:t}};return this.properties.defineDescriptor(r,o),this.properties.defineModel(r,this),this.properties.define(r,"$parent",{enumerable:!1,writable:!0}),this.properties.define(r,"$instanceOf",{enumerable:!1,writable:!0}),T(n,(function(e,t){var n;n=e,"[object Object]"===A.call(n)&&void 0!==e.value?r[e.name]=e.value:r[t]=e})),r},J.prototype.getPackage=function(e){return this.registry.getPackage(e)},J.prototype.getPackages=function(){return this.registry.getPackages()},J.prototype.getElementDescriptor=function(e){return e.$descriptor},J.prototype.hasType=function(e,t){return void 0===t&&(t=e,e=this),t in e.$model.getElementDescriptor(e).allTypesByName},J.prototype.getPropertyDescriptor=function(e,t){return this.getElementDescriptor(e).propertiesByName[t]},J.prototype.getTypeDescriptor=function(e){return this.registry.typeMap[e]};var Q=Object.prototype.toString,Z=Object.prototype.hasOwnProperty;function ee(e){return"[object Array]"===Q.call(e)}function te(e){return"[object String]"===Q.call(e)}function ne(e,t){return Z.call(e,t)}function ie(e,t){var n;return t=se(t),oe(e,(function(e,i){if(t(e,i))return n=e,!1})),n}function re(e,t){var n=[];return oe(e,(function(e,i){t(e,i)&&n.push(e)})),n}function oe(e,t){var n;if(void 0!==e){var i=ee(e)?le:ae;for(var r in e)if(ne(e,r)&&!1===t(n=e[r],i(r)))return n}}function se(e){return t=e,"[object Function]"===(n=Q.call(t))||"[object AsyncFunction]"===n||"[object GeneratorFunction]"===n||"[object AsyncGeneratorFunction]"===n||"[object Proxy]"===n?e:function(t){return t===e};var t,n}function ae(e){return e}function le(e){return Number(e)}function ce(){return ce=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e},ce.apply(this,arguments)}function he(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),i=1;i<t;i++)n[i-1]=arguments[i];return ce.apply(void 0,[e].concat(n))}var ue=String.fromCharCode,de=Object.prototype.hasOwnProperty,pe=/&#(\d+);|&#x([0-9a-f]+);|&(\w+);/gi,fe={amp:"&",apos:"'",gt:">",lt:"<",quot:'"'};function ge(e,t,n,i){return i?de.call(fe,i)?fe[i]:"&"+i+";":ue(t||parseInt(n,16))}function me(e){return e.length>3&&-1!==e.indexOf("&")?e.replace(pe,ge):e}Object.keys(fe).forEach((function(e){fe[e.toUpperCase()]=fe[e]}));var ye="xsi:type",ve="non-whitespace outside of root node";function we(e){return new Error(e)}function be(e){return"missing namespace for prefix <"+e+">"}function xe(e){return{get:e,enumerable:!0}}function ke(e){var t,n={};for(t in e)n[t]=e[t];return n}function _e(e){return e+"$uri"}function Se(){return{line:0,column:0}}function Ce(e){throw e}function Ee(e){if(!this)return new Ee(e);var t,n,i,r,o,s,a,l,c,h=e&&e.proxy,u=Ce,d=Se,p=!1,f=!1,g=null,m=!1;function y(e){e instanceof Error||(e=we(e)),g=e,u(e,d)}function v(e){o&&(e instanceof Error||(e=we(e)),o(e,d))}this.on=function(e,c){if("function"!=typeof c)throw we("required args <name, cb>");switch(e){case"openTag":n=c;break;case"text":t=c;break;case"closeTag":i=c;break;case"error":u=c;break;case"warn":o=c;break;case"cdata":r=c;break;case"attention":l=c;break;case"question":a=c;break;case"comment":s=c;break;default:throw we("unsupported event: "+e)}return this},this.ns=function(e){if(void 0===e&&(e={}),"object"!=typeof e)throw we("required args <nsMap={}>");var t,n={};for(t in e)n[t]=e[t];return n["http://www.w3.org/2001/XMLSchema-instance"]="xsi",f=!0,c=n,this},this.parse=function(e){if("string"!=typeof e)throw we("required args <xml=string>");return g=null,function(e){var o,u,g,w,b,x,k,_,S,C,E,M=f?[]:null,A=f?function(e){var t,n,i={};for(t in e)i[n=e[t]]=n,i[_e(n)]=t;return i}(c):null,D=[],R=0,O=!1,T=!1,N=0,P=0,q="",B=0;function L(){if(null!==E)return E;var e,t,n,i,r,o,s,a,l,h,u,d=f&&A.xmlns,g=f&&p?[]:null,m=B,y=q,w=y.length,b={},x={};e:for(;m<w;m++)if(l=!1,!(32===(h=y.charCodeAt(m))||h<14&&h>8)){for((h<65||h>122||h>90&&h<97)&&95!==h&&58!==h&&(v("illegal first char attribute name"),l=!0),u=m+1;u<w;u++)if(!((h=y.charCodeAt(u))>96&&h<123||h>64&&h<91||h>47&&h<59||46===h||45===h||95===h)){if(32===h||h<14&&h>8){v("missing attribute value"),m=u;continue e}if(61===h)break;v("illegal attribute name char"),l=!0}if("xmlns:xmlns"===(a=y.substring(m,u))&&(v("illegal declaration of xmlns"),l=!0),34===(h=y.charCodeAt(u+1)))-1===(u=y.indexOf('"',m=u+2))&&-1!==(u=y.indexOf("'",m))&&(v("attribute value quote missmatch"),l=!0);else if(39===h)-1===(u=y.indexOf("'",m=u+2))&&-1!==(u=y.indexOf('"',m))&&(v("attribute value quote missmatch"),l=!0);else for(v("missing attribute value quotes"),l=!0,u+=1;u<w&&!(32===(h=y.charCodeAt(u+1))||h<14&&h>8);u++);for(-1===u&&(v("missing closing quotes"),u=w,l=!0),l||(o=y.substring(m,u)),m=u;u+1<w&&!(32===(h=y.charCodeAt(u+1))||h<14&&h>8);u++)m===u&&(v("illegal character after attribute end"),l=!0);if(m=u+1,!l)if(a in x)v("attribute <"+a+"> already defined");else if(x[a]=!0,f)if(p){if(null!==(r="xmlns"===a?"xmlns":120===a.charCodeAt(0)&&"xmlns:"===a.substr(0,6)?a.substr(6):null)){if(e=me(o),t=_e(r),!(s=c[e])){if("xmlns"===r||t in A&&A[t]!==e)do{s="ns"+R++}while(void 0!==A[s]);else s=r;c[e]=s}A[r]!==s&&(i||(A=ke(A),i=!0),A[r]=s,"xmlns"===r&&(A[_e(s)]=e,d=s),A[t]=e),b[a]=o;continue}g.push(a,o)}else-1!==(h=a.indexOf(":"))?(n=A[a.substring(0,h)])?((a=d===n?a.substr(h+1):n+a.substr(h))===ye&&(-1!==(h=o.indexOf(":"))?(n=o.substring(0,h),o=(n=A[n]||n)+o.substring(h)):o=d+":"+o),b[a]=o):v(be(a.substring(0,h))):b[a]=o;else b[a]=o}if(p)for(m=0,w=g.length;m<w;m++){if(a=g[m++],o=g[m],-1!==(h=a.indexOf(":"))){if(!(n=A[a.substring(0,h)])){v(be(a.substring(0,h)));continue}(a=d===n?a.substr(h+1):n+a.substr(h))===ye&&(-1!==(h=o.indexOf(":"))?(n=o.substring(0,h),o=(n=A[n]||n)+o.substring(h)):o=d+":"+o)}b[a]=o}return E=b}function I(){for(var t,n,i=/(\r\n|\r|\n)/g,r=0,o=0,s=0,a=P;N>=s&&(t=i.exec(e))&&!((a=t[0].length+t.index)>N);)r+=1,s=a;return-1==N?(o=a,n=e.substring(P)):0===P?n=e.substring(P,N):(o=N-s,n=-1==P?e.substring(N):e.substring(N,P+1)),{data:n,line:r,column:o}}d=I,h&&(C=Object.create({},{name:xe((function(){return _})),originalName:xe((function(){return S})),attrs:xe(L),ns:xe((function(){return A}))}));for(;-1!==P;){if(-1===(N=60===e.charCodeAt(P)?P:e.indexOf("<",P)))return D.length?y("unexpected end of file"):0===P?y("missing start tag"):void(P<e.length&&e.substring(P).trim()&&v(ve));if(P!==N)if(D.length){if(t&&(t(e.substring(P,N),me,d),m))return}else if(e.substring(P,N).trim()&&(v(ve),m))return;if(33===(b=e.charCodeAt(N+1))){if(91===(w=e.charCodeAt(N+2))&&"CDATA["===e.substr(N+3,6)){if(-1===(P=e.indexOf("]]>",N)))return y("unclosed cdata");if(r&&(r(e.substring(N+9,P),d),m))return;P+=3;continue}if(45===w&&45===e.charCodeAt(N+3)){if(-1===(P=e.indexOf("--\x3e",N)))return y("unclosed comment");if(s&&(s(e.substring(N+4,P),me,d),m))return;P+=3;continue}}if(63!==b){for(u=N+1;;u++){if(x=e.charCodeAt(u),isNaN(x))return P=-1,y("unclosed tag");if(34===x)u=-1!==(w=e.indexOf('"',u+1))?w:u;else if(39===x)u=-1!==(w=e.indexOf("'",u+1))?w:u;else if(62===x){P=u;break}}if(33!==b){if(E={},47===b){if(O=!1,T=!0,!D.length)return y("missing open tag");if(u=_=D.pop(),w=N+2+u.length,e.substring(N+2,w)!==u)return y("closing tag mismatch");for(;w<P;w++)if(!(32===(b=e.charCodeAt(w))||b>8&&b<14))return y("close tag")}else{if(47===e.charCodeAt(P-1)?(u=_=e.substring(N+1,P-1),O=!0,T=!0):(u=_=e.substring(N+1,P),O=!0,T=!1),!(b>96&&b<123||b>64&&b<91||95===b||58===b))return y("illegal first char nodeName");for(w=1,g=u.length;w<g;w++)if(!((b=u.charCodeAt(w))>96&&b<123||b>64&&b<91||b>47&&b<59||45===b||95===b||46==b)){if(32===b||b<14&&b>8){_=u.substring(0,w),E=null;break}return y("invalid nodeName")}T||D.push(_)}if(f){if(o=A,O&&(T||M.push(o),null===E&&(p=-1!==u.indexOf("xmlns",w))&&(B=w,q=u,L(),p=!1)),S=_,-1!==(b=_.indexOf(":"))){if(!(k=A[_.substring(0,b)]))return y("missing namespace on <"+S+">");_=_.substr(b+1)}else k=A.xmlns;k&&(_=k+":"+_)}if(O&&(B=w,q=u,n&&(h?n(C,me,T,d):n(_,L,me,T,d),m)))return;if(T){if(i&&(i(h?C:_,me,O,d),m))return;f&&(A=O?o:M.pop())}P+=1}else{if(l&&(l(e.substring(N,P+1),me,d),m))return;P+=1}}else{if(-1===(P=e.indexOf("?>",N)))return y("unclosed question");if(a&&(a(e.substring(N,P+2),d),m))return;P+=2}}}(e),d=Se,m=!1,g},this.stop=function(){m=!0}}function Me(e){return e.xml&&"lowerCase"===e.xml.tagAlias}var Ae={xsi:"http://www.w3.org/2001/XMLSchema-instance",xml:"http://www.w3.org/XML/1998/namespace"},De="xsi:type";function Re(e){return e.xml&&e.xml.serialize}function Oe(e){return Re(e)===De}function Te(e,t){return Me(t)?e.prefix+":"+((n=e.localName).charAt(0).toUpperCase()+n.slice(1)):e.name;var n}function Ne(e){return new Error(e)}function Pe(e){return e.$descriptor}function qe(e){he(this,e),this.elementsById={},this.references=[],this.warnings=[],this.addReference=function(e){this.references.push(e)},this.addElement=function(e){if(!e)throw Ne("expected element");var t,n=this.elementsById,i=Pe(e).idProperty;if(i&&(t=e.get(i.name))){if(!/^([a-z][\w-.]*:)?[a-z_][\w-.]*$/i.test(t))throw new Error("illegal ID <"+t+">");if(n[t])throw Ne("duplicate ID <"+t+">");n[t]=e}},this.addWarning=function(e){this.warnings.push(e)}}function Be(){}function Le(){}function Ie(){}function Fe(e,t){this.property=e,this.context=t}function je(e,t){this.element=t,this.propertyDesc=e}function Ve(){}function $e(e,t,n){this.model=e,this.type=e.getType(t),this.context=n}function ze(e,t,n){$e.call(this,e,t,n)}function He(e,t,n){this.model=e,this.context=n}function We(e){e instanceof J&&(e={model:e}),he(this,{lax:!1},e)}Be.prototype.handleEnd=function(){},Be.prototype.handleText=function(){},Be.prototype.handleNode=function(){},Le.prototype=Object.create(Be.prototype),Le.prototype.handleNode=function(){return this},Ie.prototype=Object.create(Be.prototype),Ie.prototype.handleText=function(e){this.body=(this.body||"")+e},Fe.prototype=Object.create(Ie.prototype),Fe.prototype.handleNode=function(e){if(this.element)throw Ne("expected no sub nodes");return this.element=this.createReference(e),this},Fe.prototype.handleEnd=function(){this.element.id=this.body},Fe.prototype.createReference=function(e){return{property:this.property.ns.name,id:""}},je.prototype=Object.create(Ie.prototype),je.prototype.handleEnd=function(){var e=this.body||"",t=this.element,n=this.propertyDesc;e=$(n.type,e),n.isMany?t.get(n.name).push(e):t.set(n.name,e)},Ve.prototype=Object.create(Ie.prototype),Ve.prototype.handleNode=function(e){var t=this,n=this.element;return n?t=this.handleChild(e):(n=this.element=this.createElement(e),this.context.addElement(n)),t},$e.prototype=Object.create(Ve.prototype),$e.prototype.addReference=function(e){this.context.addReference(e)},$e.prototype.handleText=function(e){if(!Pe(this.element).bodyProperty)throw Ne("unexpected body text <"+e+">");Ie.prototype.handleText.call(this,e)},$e.prototype.handleEnd=function(){var e=this.body,t=this.element,n=Pe(t).bodyProperty;n&&void 0!==e&&(e=$(n.type,e),t.set(n.name,e))},$e.prototype.createElement=function(e){var t,n=e.attributes,i=this.type,r=Pe(i),o=this.context,s=new i({}),a=this.model;return oe(n,(function(e,n){var i=r.propertiesByName[n];i&&i.isReference?i.isMany?oe(e.split(" "),(function(e){o.addReference({element:s,property:i.ns.name,id:e})})):o.addReference({element:s,property:i.ns.name,id:e}):(i?e=$(i.type,e):"xmlns"!==n&&(t=W(n,r.ns.prefix),a.getPackage(t.prefix)&&o.addWarning({message:"unknown attribute <"+n+">",element:s,property:n,value:e})),s.set(n,e))})),s},$e.prototype.getPropertyForNode=function(e){var t,n,i=W(e.name),r=this.type,o=this.model,s=Pe(r),a=i.name,l=s.propertiesByName[a];if(l&&!l.isAttr)return Oe(l)&&(t=e.attributes[De])?(t=function(e,t){var n=W(e);return function(e,t){var n=e.name,i=e.localName,r=t.xml&&t.xml.typePrefix;return r&&0===i.indexOf(r)?e.prefix+":"+i.slice(r.length):n}(n,t.getPackage(n.prefix))}(t,o),he({},l,{effectiveType:Pe(n=o.getType(t)).name})):l;var c=o.getPackage(i.prefix);if(c){if(t=Te(i,c),n=o.getType(t),l=ie(s.properties,(function(e){return!e.isVirtual&&!e.isReference&&!e.isAttribute&&n.hasType(e.type)})))return he({},l,{effectiveType:Pe(n).name})}else if(l=ie(s.properties,(function(e){return!e.isReference&&!e.isAttribute&&"Element"===e.type})))return l;throw Ne("unrecognized element <"+i.name+">")},$e.prototype.toString=function(){return"ElementDescriptor["+Pe(this.type).name+"]"},$e.prototype.valueHandler=function(e,t){return new je(e,t)},$e.prototype.referenceHandler=function(e){return new Fe(e,this.context)},$e.prototype.handler=function(e){return"Element"===e?new He(this.model,e,this.context):new $e(this.model,e,this.context)},$e.prototype.handleChild=function(e){var t,n,i,r;if(t=this.getPropertyForNode(e),i=this.element,H(n=t.effectiveType||t.type))return this.valueHandler(t,i);var o=(r=t.isReference?this.referenceHandler(t).handleNode(e):this.handler(n).handleNode(e)).element;return void 0!==o&&(t.isMany?i.get(t.name).push(o):i.set(t.name,o),t.isReference?(he(o,{element:i}),this.context.addReference(o)):o.$parent=i),r},ze.prototype=Object.create($e.prototype),ze.prototype.createElement=function(e){var t=e.name,n=W(t),i=this.model,r=this.type,o=i.getPackage(n.prefix),s=o&&Te(n,o)||t;if(!r.hasType(s))throw Ne("unexpected element <"+e.originalName+">");return $e.prototype.createElement.call(this,e)},He.prototype=Object.create(Ve.prototype),He.prototype.createElement=function(e){var t=e.name,n=W(t).prefix,i=e.ns[n+"$uri"],r=e.attributes;return this.model.createAny(t,i,r)},He.prototype.handleChild=function(e){var t=new He(this.model,"Element",this.context).handleNode(e),n=this.element,i=t.element;return void 0!==i&&((n.$children=n.$children||[]).push(i),i.$parent=n),t},He.prototype.handleEnd=function(){this.body&&(this.element.$body=this.body)},We.prototype.fromXML=function(e,t,n){var i=t.rootHandler;t instanceof $e?(i=t,t={}):"string"==typeof t?(i=this.handler(t),t={}):"string"==typeof i&&(i=this.handler(i));var r=this.model,o=this.lax,s=new qe(he({},t,{rootHandler:i})),a=new Ee({proxy:!0}),l=function(){var e=[];return Object.defineProperty(e,"peek",{value:function(){return this[this.length-1]}}),e}();function c(e,t,n){var i=t(),r=i.line,o=i.column,a=i.data;"<"===a.charAt(0)&&-1!==a.indexOf(" ")&&(a=a.slice(0,a.indexOf(" "))+">");var l="unparsable content "+(a?a+" ":"")+"detected\n\tline: "+r+"\n\tcolumn: "+o+"\n\tnested error: "+e.message;if(n)return s.addWarning({message:l,error:e}),!0;throw Ne(l)}function h(e,t){return c(e,t,!0)}i.context=s,l.push(i);var u=/^<\?xml /i,d=/ encoding="([^"]+)"/i,p=/^utf-8$/i;function f(e,t){try{l.peek().handleText(e)}catch(e){h(e,t)}}var g=r.getPackages().reduce((function(e,t){return e[t.uri]=t.prefix,e}),{"http://www.w3.org/XML/1998/namespace":"xml"});return a.ns(g).on("openTag",(function(e,t,n,i){var r=e.attrs||{},s=Object.keys(r).reduce((function(e,n){var i=t(r[n]);return e[n]=i,e}),{});!function(e,t){var n=l.peek();try{l.push(n.handleNode(e))}catch(e){c(e,t,o)&&l.push(new Le)}}({name:e.name,originalName:e.originalName,attributes:s,ns:e.ns},i)})).on("question",(function(e){if(u.test(e)){var t=d.exec(e),n=t&&t[1];n&&!p.test(n)&&s.addWarning({message:"unsupported document encoding <"+n+">, falling back to UTF-8"})}})).on("closeTag",(function(){l.pop().handleEnd()})).on("cdata",f).on("text",(function(e,t,n){!function(e,t){e.trim()&&f(e,t)}(t(e),n)})).on("error",c).on("warn",h),new Promise((function(t,n){var r;try{a.parse(e),function(){var e,t,n=s.elementsById,i=s.references;for(e=0;t=i[e];e++){var r=t.element,o=n[t.id],a=Pe(r).propertiesByName[t.property];if(o||s.addWarning({message:"unresolved reference <"+t.id+">",element:t.element,property:t.property,value:t.id}),a.isMany){var l=r.get(a.name),c=l.indexOf(t);-1===c&&(c=l.length),o?l[c]=o:l.splice(c,1)}else r.set(a.name,o)}}()}catch(e){r=e}var o=i.element;r||o||(r=Ne("failed to parse document as <"+i.type.$descriptor.name+">"));var l=s.warnings,c=s.references,h=s.elementsById;return r?(r.warnings=l,n(r)):t({rootElement:o,elementsById:h,references:c,warnings:l})}))},We.prototype.handler=function(e){return new ze(this.model,e)};var Ue=/<|>|'|"|&|\n\r|\n/g,Ge=/<|>|&/g;function Ke(e){var t={},n={},i={},r=[],o=[];this.byUri=function(t){return n[t]||e&&e.byUri(t)},this.add=function(e,t){n[e.uri]=e,t?r.push(e):o.push(e),this.mapPrefix(e.prefix,e.uri)},this.uriByPrefix=function(e){return t[e||"xmlns"]},this.mapPrefix=function(e,n){t[e||"xmlns"]=n},this.getNSKey=function(e){return void 0!==e.prefix?e.uri+"|"+e.prefix:e.uri},this.logUsed=function(t){var n=t.uri,r=this.getNSKey(t);i[r]=this.byUri(n),e&&e.logUsed(t)},this.getUsed=function(e){var t=this;return[].concat(r,o).filter((function(e){var n=t.getNSKey(e);return i[n]}))}}function Xe(e,t){return Me(t)?function(e){return e.charAt(0).toLowerCase()+e.slice(1)}(e):e}function Ye(e,t){e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}})}function Je(e){return te(e)?e:(e.prefix?e.prefix+":":"")+e.localName}var Qe={"\n":"#10","\n\r":"#10",'"':"#34","'":"#39","<":"#60",">":"#62","&":"#38"},Ze={"<":"lt",">":"gt","&":"amp"};function et(e,t,n){return(e=te(e)?e:""+e).replace(t,(function(e){return"&"+n[e]+";"}))}function tt(e){this.tagName=e}function nt(){}function it(e){this.tagName=e}function rt(e,t){this.body=[],this.attrs=[],this.parent=e,this.propertyDescriptor=t}function ot(e,t){rt.call(this,e,t)}function st(){this.value="",this.write=function(e){this.value+=e}}function at(e,t){var n=[""];this.append=function(t){return e.write(t),this},this.appendNewLine=function(){return t&&e.write("\n"),this},this.appendIndent=function(){return t&&e.write(n.join(" ")),this},this.indent=function(){return n.push(""),this},this.unindent=function(){return n.pop(),this}}function lt(e){return e=he({format:!1,preamble:!0},e||{}),{toXML:function(t,n){var i=n||new st,r=new at(i,e.format);if(e.preamble&&r.append('<?xml version="1.0" encoding="UTF-8"?>\n'),(new rt).build(t).serializeTo(r),!n)return i.value}}}function ct(e,t){J.call(this,e,t)}tt.prototype.build=function(e){return this.element=e,this},tt.prototype.serializeTo=function(e){e.appendIndent().append("<"+this.tagName+">"+this.element.id+"</"+this.tagName+">").appendNewLine()},nt.prototype.serializeValue=nt.prototype.serializeTo=function(e){e.append(this.escape?et(this.value,Ge,Ze):this.value)},nt.prototype.build=function(e,t){return this.value=t,"String"===e.type&&-1!==t.search(Ge)&&(this.escape=!0),this},Ye(it,nt),it.prototype.serializeTo=function(e){e.appendIndent().append("<"+this.tagName+">"),this.serializeValue(e),e.append("</"+this.tagName+">").appendNewLine()},rt.prototype.build=function(e){this.element=e;var t,n,i=e.$descriptor,r=this.propertyDescriptor,o=i.isGeneric;return t=o?this.parseGeneric(e):this.parseNsAttributes(e),this.ns=r?this.nsPropertyTagName(r):this.nsTagName(i),this.tagName=this.addTagName(this.ns),o||(n=function(e){return re(e.$descriptor.properties,(function(t){var n=t.name;if(t.isVirtual)return!1;if(!ne(e,n))return!1;var i=e[n];return i!==t.default&&null!==i&&(!t.isMany||i.length)}))}(e),this.parseAttributes(re(n,(function(e){return e.isAttr}))),this.parseContainments(function(e){return re(e,(function(e){return!e.isAttr}))}(n))),this.parseGenericAttributes(e,t),this},rt.prototype.nsTagName=function(e){return function(e,t){return t.isGeneric?he({localName:t.ns.localName},e):he({localName:Xe(t.ns.localName,t.$pkg)},e)}(this.logNamespaceUsed(e.ns),e)},rt.prototype.nsPropertyTagName=function(e){return function(e,t){return he({localName:t.ns.localName},e)}(this.logNamespaceUsed(e.ns),e)},rt.prototype.isLocalNs=function(e){return e.uri===this.ns.uri},rt.prototype.nsAttributeName=function(e){var t;if(t=te(e)?W(e):e.ns,e.inherited)return{localName:t.localName};var n=this.logNamespaceUsed(t);return this.getNamespaces().logUsed(n),this.isLocalNs(n)?{localName:t.localName}:he({localName:t.localName},n)},rt.prototype.parseGeneric=function(e){var t=this,n=this.body,i=[];return oe(e,(function(r,o){"$body"===o?n.push((new nt).build({type:"String"},r)):"$children"===o?oe(r,(function(e){n.push(new rt(t).build(e))})):0!==o.indexOf("$")&&t.parseNsAttribute(e,o,r)&&i.push({name:o,value:r})})),i},rt.prototype.parseNsAttribute=function(e,t,n){var i,r=e.$model,o=W(t);if("xmlns"===o.prefix&&(i={prefix:o.localName,uri:n}),o.prefix||"xmlns"!==o.localName||(i={uri:n}),!i)return{name:t,value:n};if(r&&r.getPackage(n))this.logNamespace(i,!0,!0);else{var s=this.logNamespaceUsed(i,!0);this.getNamespaces().logUsed(s)}},rt.prototype.parseNsAttributes=function(e,t){var n=this,i=e.$attrs,r=[];return oe(i,(function(t,i){var o=n.parseNsAttribute(e,i,t);o&&r.push(o)})),r},rt.prototype.parseGenericAttributes=function(e,t){var n=this;oe(t,(function(t){if(t.name!==De)try{n.addAttribute(n.nsAttributeName(t.name),t.value)}catch(n){console.warn("missing namespace information for ",t.name,"=",t.value,"on",e,n)}}))},rt.prototype.parseContainments=function(e){var t=this,n=this.body,i=this.element;oe(e,(function(e){var r=i.get(e.name),o=e.isReference;if(e.isMany||(r=[r]),e.isBody)n.push((new nt).build(e,r[0]));else if(H(e.type))oe(r,(function(i){n.push(new it(t.addTagName(t.nsPropertyTagName(e))).build(e,i))}));else if(o)oe(r,(function(i){n.push(new tt(t.addTagName(t.nsPropertyTagName(e))).build(i))}));else{var s=Oe(e),a=function(e){return"property"===Re(e)}(e);oe(r,(function(i){var r;r=s?new ot(t,e):a?new rt(t,e):new rt(t),n.push(r.build(i))}))}}))},rt.prototype.getNamespaces=function(e){var t,n=this.namespaces,i=this.parent;return n||(t=i&&i.getNamespaces(),e||!t?this.namespaces=n=new Ke(t):n=t),n},rt.prototype.logNamespace=function(e,t,n){var i=this.getNamespaces(n),r=e.uri,o=e.prefix;return i.byUri(r)&&!n||i.add(e,t),i.mapPrefix(o,r),e},rt.prototype.logNamespaceUsed=function(e,t){var n,i,r,o=this.element.$model,s=this.getNamespaces(t),a=e.prefix,l=e.uri;if(!a&&!l)return{localName:e.localName};if(r=Ae[a]||o&&(o.getPackage(a)||{}).uri,!(l=l||r||s.uriByPrefix(a)))throw new Error("no namespace uri given for prefix <"+a+">");if(!(e=s.byUri(l))){for(n=a,i=1;s.uriByPrefix(n);)n=a+"_"+i++;e=this.logNamespace({prefix:n,uri:l},r===l)}return a&&s.mapPrefix(a,l),e},rt.prototype.parseAttributes=function(e){var t=this,n=this.element;oe(e,(function(e){var i=n.get(e.name);if(e.isReference)if(e.isMany){var r=[];oe(i,(function(e){r.push(e.id)})),i=r.join(" ")}else i=i.id;t.addAttribute(t.nsAttributeName(e),i)}))},rt.prototype.addTagName=function(e){var t=this.logNamespaceUsed(e);return this.getNamespaces().logUsed(t),Je(e)},rt.prototype.addAttribute=function(e,t){var n=this.attrs;te(t)&&(t=et(t,Ue,Qe));var i=function(e,t){t=se(t);var n=ee(e)?-1:void 0;return oe(e,(function(e,i){if(t(e,i))return n=i,!1})),n}(n,(function(t){return t.name.localName===e.localName&&t.name.uri===e.uri&&t.name.prefix===e.prefix})),r={name:e,value:t};-1!==i?n.splice(i,1,r):n.push(r)},rt.prototype.serializeAttributes=function(e){var t=this.attrs,n=this.namespaces;n&&(t=function(e){return e.getUsed().filter((function(e){return"xml"!==e.prefix})).map((function(e){return{name:"xmlns"+(e.prefix?":"+e.prefix:""),value:e.uri}}))}(n).concat(t)),oe(t,(function(t){e.append(" ").append(Je(t.name)).append('="').append(t.value).append('"')}))},rt.prototype.serializeTo=function(e){var t=this.body[0],n=t&&t.constructor!==nt;e.appendIndent().append("<"+this.tagName),this.serializeAttributes(e),e.append(t?">":" />"),t&&(n&&e.appendNewLine().indent(),oe(this.body,(function(t){t.serializeTo(e)})),n&&e.unindent().appendIndent(),e.append("</"+this.tagName+">")),e.appendNewLine()},Ye(ot,rt),ot.prototype.parseNsAttributes=function(e){var t=rt.prototype.parseNsAttributes.call(this,e),n=e.$descriptor;if(n.name===this.propertyDescriptor.type)return t;var i=this.typeNs=this.nsTagName(n);this.getNamespaces().logUsed(this.typeNs);var r=e.$model.getPackage(i.uri),o=r.xml&&r.xml.typePrefix||"";return this.addAttribute(this.nsAttributeName(De),(i.prefix?i.prefix+":":"")+o+n.ns.localName),t},ot.prototype.isLocalNs=function(e){return e.uri===(this.typeNs||this.ns).uri},ct.prototype=Object.create(J.prototype),ct.prototype.fromXML=function(e,t,n){var i;i=t,"[object String]"!==C.call(i)&&(n=t,t="dmn:Definitions");var r=new We(M({model:this,lax:!0},n)),o=r.handler(t);return r.fromXML(e,o)},ct.prototype.toXML=function(e,t){var n=new lt(t);return new Promise((function(t,i){try{return t({xml:n.toXML(e)})}catch(e){return i(e)}}))};var ht={dc:{name:"DC",prefix:"dc",uri:"http://www.omg.org/spec/DMN/20180521/DC/",types:[{name:"Dimension",properties:[{name:"width",isAttr:!0,type:"Real"},{name:"height",isAttr:!0,type:"Real"}]},{name:"Bounds",properties:[{name:"height",isAttr:!0,type:"Real"},{name:"width",isAttr:!0,type:"Real"},{name:"x",isAttr:!0,type:"Real"},{name:"y",isAttr:!0,type:"Real"}]},{name:"Point",properties:[{name:"x",isAttr:!0,type:"Real"},{name:"y",isAttr:!0,type:"Real"}]},{name:"Color",properties:[{name:"red",type:"UML_Standard_Profile.mdzip:eee_1045467100323_917313_65"},{name:"green",type:"UML_Standard_Profile.mdzip:eee_1045467100323_917313_65"},{name:"blue",type:"UML_Standard_Profile.mdzip:eee_1045467100323_917313_65"}]}],associations:[],enumerations:[{name:"AlignmentKind",literalValues:[{name:"start"},{name:"center"},{name:"end"}]}]},di:{name:"DI",prefix:"di",uri:"http://www.omg.org/spec/DMN/20180521/DI/",types:[{name:"DiagramElement",isAbstract:!0,properties:[{name:"extension",type:"Extension"},{name:"id",isAttr:!0,isId:!0,type:"String"},{name:"style",isReference:!0,type:"Style",xml:{serialize:"property"}},{name:"sharedStyle",isReference:!0,isVirtual:!0,type:"Style"}]},{name:"Diagram",superClass:["DiagramElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"documentation",isAttr:!0,type:"String"},{name:"resolution",isAttr:!0,type:"Real"}]},{name:"Shape",isAbstract:!0,properties:[{name:"bounds",type:"dc:Bounds"}],superClass:["DiagramElement"]},{name:"Edge",isAbstract:!0,properties:[{name:"waypoint",type:"dc:Point",isMany:!0,xml:{serialize:"property"}}],superClass:["DiagramElement"]},{name:"Style",isAbstract:!0,properties:[{name:"id",isAttr:!0,isId:!0,type:"String"}]},{name:"Extension",properties:[{name:"values",isMany:!0,type:"Element"}]}],associations:[],enumerations:[],xml:{tagAlias:"lowerCase"}},dmn:{name:"DMN",prefix:"dmn",uri:"https://www.omg.org/spec/DMN/20191111/MODEL/",types:[{name:"AuthorityRequirement",superClass:["DMNElement"],properties:[{name:"requiredAuthority",type:"DMNElementReference",xml:{serialize:"property"}},{name:"requiredDecision",type:"DMNElementReference",xml:{serialize:"property"}},{name:"requiredInput",type:"DMNElementReference",xml:{serialize:"property"}}]},{name:"ItemDefinition",superClass:["NamedElement"],properties:[{name:"typeRef",type:"String"},{name:"allowedValues",type:"UnaryTests",xml:{serialize:"property"}},{name:"typeLanguage",type:"String",isAttr:!0},{name:"itemComponent",type:"ItemDefinition",isMany:!0,xml:{serialize:"property"}},{name:"functionItem",type:"FunctionItem"},{name:"isCollection",isAttr:!0,type:"Boolean"}]},{name:"Definitions",superClass:["NamedElement"],properties:[{name:"import",type:"Import",isMany:!0},{name:"itemDefinition",type:"ItemDefinition",isMany:!0},{name:"drgElement",type:"DRGElement",isMany:!0},{name:"artifact",type:"Artifact",isMany:!0},{name:"elementCollection",type:"ElementCollection",isMany:!0},{name:"businessContextElement",type:"BusinessContextElement",isMany:!0},{name:"namespace",type:"String",isAttr:!0},{name:"expressionLanguage",type:"String",isAttr:!0},{name:"typeLanguage",type:"String",isAttr:!0},{name:"exporter",isAttr:!0,type:"String"},{name:"exporterVersion",isAttr:!0,type:"String"},{name:"dmnDI",type:"dmndi:DMNDI"}]},{name:"KnowledgeSource",superClass:["DRGElement"],properties:[{name:"authorityRequirement",type:"AuthorityRequirement",isMany:!0},{name:"type",type:"String"},{name:"owner",type:"DMNElementReference",xml:{serialize:"property"}},{name:"locationURI",type:"String",isAttr:!0}]},{name:"DecisionRule",superClass:["DMNElement"],properties:[{name:"inputEntry",type:"UnaryTests",isMany:!0,xml:{serialize:"property"}},{name:"outputEntry",type:"LiteralExpression",isMany:!0,xml:{serialize:"property"}},{name:"annotationEntry",type:"RuleAnnotation",isMany:!0,xml:{serialize:"property"}}]},{name:"Expression",isAbstract:!0,superClass:["DMNElement"],properties:[{name:"typeRef",isAttr:!0,type:"String"}]},{name:"InformationItem",superClass:["NamedElement"],properties:[{name:"typeRef",isAttr:!0,type:"String"}]},{name:"Decision",superClass:["DRGElement"],properties:[{name:"question",type:"String",xml:{serialize:"property"}},{name:"allowedAnswers",type:"String",xml:{serialize:"property"}},{name:"variable",type:"InformationItem",xml:{serialize:"property"}},{name:"informationRequirement",type:"InformationRequirement",isMany:!0},{name:"knowledgeRequirement",type:"KnowledgeRequirement",isMany:!0},{name:"authorityRequirement",type:"AuthorityRequirement",isMany:!0},{name:"supportedObjective",isMany:!0,type:"DMNElementReference",xml:{serialize:"property"}},{name:"impactedPerformanceIndicator",type:"DMNElementReference",isMany:!0,xml:{serialize:"property"}},{name:"decisionMaker",type:"DMNElementReference",isMany:!0,xml:{serialize:"property"}},{name:"decisionOwner",type:"DMNElementReference",isMany:!0,xml:{serialize:"property"}},{name:"usingProcess",isMany:!0,type:"DMNElementReference",xml:{serialize:"property"}},{name:"usingTask",isMany:!0,type:"DMNElementReference",xml:{serialize:"property"}},{name:"decisionLogic",type:"Expression"}]},{name:"Invocation",superClass:["Expression"],properties:[{name:"calledFunction",type:"Expression"},{name:"binding",type:"Binding",isMany:!0}]},{name:"OrganisationalUnit",superClass:["BusinessContextElement"],properties:[{name:"decisionMade",type:"Decision",isReference:!0,isMany:!0},{name:"decisionOwned",type:"Decision",isReference:!0,isMany:!0}]},{name:"Import",superClass:["NamedElement"],properties:[{name:"importType",type:"String",isAttr:!0},{name:"locationURI",type:"String",isAttr:!0},{name:"namespace",type:"String",isAttr:!0}]},{name:"InformationRequirement",superClass:["DMNElement"],properties:[{name:"requiredDecision",type:"DMNElementReference",xml:{serialize:"property"}},{name:"requiredInput",type:"DMNElementReference",xml:{serialize:"property"}}]},{name:"ElementCollection",superClass:["NamedElement"],properties:[{name:"drgElement",type:"DMNElementReference",isMany:!0,xml:{serialize:"property"}}]},{name:"DRGElement",isAbstract:!0,superClass:["NamedElement"],properties:[]},{name:"InputData",superClass:["DRGElement"],properties:[{name:"variable",type:"InformationItem",xml:{serialize:"property"}}]},{name:"DMNElement",isAbstract:!0,properties:[{name:"description",type:"String"},{name:"extensionElements",type:"ExtensionElements"},{name:"id",type:"String",isAttr:!0,isId:!0},{name:"extensionAttribute",type:"ExtensionAttribute",isMany:!0},{name:"label",isAttr:!0,type:"String"}]},{name:"InputClause",superClass:["DMNElement"],properties:[{name:"inputExpression",type:"LiteralExpression",xml:{serialize:"property"}},{name:"inputValues",type:"UnaryTests",xml:{serialize:"property"}}]},{name:"DecisionTable",superClass:["Expression"],properties:[{name:"input",type:"InputClause",isMany:!0,xml:{serialize:"property"}},{name:"output",type:"OutputClause",isMany:!0,xml:{serialize:"property"}},{name:"annotation",type:"RuleAnnotationClause",isMany:!0,xml:{serialize:"property"}},{name:"rule",type:"DecisionRule",isMany:!0,xml:{serialize:"property"}},{name:"hitPolicy",type:"HitPolicy",isAttr:!0,default:"UNIQUE"},{name:"aggregation",type:"BuiltinAggregator",isAttr:!0},{name:"preferredOrientation",type:"DecisionTableOrientation",isAttr:!0},{name:"outputLabel",isAttr:!0,type:"String"}]},{name:"LiteralExpression",superClass:["Expression"],properties:[{name:"expressionLanguage",type:"String",isAttr:!0},{name:"text",type:"String"},{name:"importedValues",type:"ImportedValues"}]},{name:"Binding",properties:[{name:"parameter",type:"InformationItem",xml:{serialize:"property"}},{name:"bindingFormula",type:"Expression"}]},{name:"KnowledgeRequirement",superClass:["DMNElement"],properties:[{name:"requiredKnowledge",type:"DMNElementReference",xml:{serialize:"property"}}]},{name:"BusinessKnowledgeModel",superClass:["Invocable"],properties:[{name:"encapsulatedLogic",type:"FunctionDefinition",xml:{serialize:"property"}},{name:"knowledgeRequirement",type:"KnowledgeRequirement",isMany:!0},{name:"authorityRequirement",type:"AuthorityRequirement",isMany:!0}]},{name:"BusinessContextElement",isAbstract:!0,superClass:["NamedElement"],properties:[{name:"URI",type:"String",isAttr:!0}]},{name:"PerformanceIndicator",superClass:["BusinessContextElement"],properties:[{name:"impactingDecision",type:"DMNElementReference",isMany:!0,xml:{serialize:"property"}}]},{name:"FunctionDefinition",superClass:["Expression"],properties:[{name:"formalParameter",type:"InformationItem",isMany:!0,xml:{serialize:"property"}},{name:"body",type:"Expression"},{name:"kind",type:"FunctionKind",isAttr:!0}]},{name:"Context",superClass:["Expression"],properties:[{name:"contextEntry",type:"ContextEntry",isMany:!0}]},{name:"ContextEntry",superClass:["DMNElement"],properties:[{name:"variable",type:"InformationItem",xml:{serialize:"property"}},{name:"value",type:"Expression"}]},{name:"List",superClass:["Expression"],properties:[{name:"elements",isMany:!0,type:"Expression"}]},{name:"Relation",superClass:["Expression"],properties:[{name:"column",type:"InformationItem",isMany:!0,xml:{serialize:"property"}},{name:"row",type:"List",isMany:!0,xml:{serialize:"property"}}]},{name:"OutputClause",superClass:["DMNElement"],properties:[{name:"outputValues",type:"UnaryTests",xml:{serialize:"property"}},{name:"defaultOutputEntry",type:"LiteralExpression",xml:{serialize:"property"}},{name:"name",isAttr:!0,type:"String"},{name:"typeRef",isAttr:!0,type:"String"}]},{name:"UnaryTests",superClass:["Expression"],properties:[{name:"text",type:"String"},{name:"expressionLanguage",type:"String",isAttr:!0}]},{name:"NamedElement",isAbstract:!0,superClass:["DMNElement"],properties:[{name:"name",isAttr:!0,type:"String"}]},{name:"ImportedValues",superClass:["Import"],properties:[{name:"importedElement",type:"String"},{name:"expressionLanguage",type:"String",isAttr:!0}]},{name:"DecisionService",superClass:["Invocable"],properties:[{name:"outputDecision",type:"DMNElementReference",isMany:!0,xml:{serialize:"property"}},{name:"encapsulatedDecision",type:"DMNElementReference",isMany:!0,xml:{serialize:"property"}},{name:"inputDecision",type:"DMNElementReference",isMany:!0,xml:{serialize:"property"}},{name:"inputData",type:"DMNElementReference",isMany:!0,xml:{serialize:"property"}}]},{name:"ExtensionElements",properties:[{name:"values",type:"Element",isMany:!0}]},{name:"ExtensionAttribute",properties:[{name:"value",type:"Element"},{name:"valueRef",type:"Element",isAttr:!0,isReference:!0},{name:"name",isAttr:!0,type:"String"}]},{name:"Element",isAbstract:!0,properties:[{name:"extensionAttribute",type:"ExtensionAttribute",isAttr:!0,isReference:!0},{name:"elements",type:"ExtensionElements",isAttr:!0,isReference:!0}]},{name:"Artifact",isAbstract:!0,superClass:["DMNElement"],properties:[]},{name:"Association",superClass:["Artifact"],properties:[{name:"sourceRef",type:"DMNElementReference",xml:{serialize:"property"}},{name:"targetRef",type:"DMNElementReference",xml:{serialize:"property"}},{name:"associationDirection",type:"AssociationDirection",isAttr:!0}]},{name:"TextAnnotation",superClass:["Artifact"],properties:[{name:"text",type:"String"},{name:"textFormat",isAttr:!0,type:"String",default:"text/plain"}]},{name:"RuleAnnotationClause",properties:[{name:"name",isAttr:!0,type:"String"}]},{name:"RuleAnnotation",properties:[{name:"text",type:"String"}]},{name:"Invocable",isAbstract:!0,superClass:["DRGElement"],properties:[{name:"variable",type:"InformationItem",xml:{serialize:"property"}}]},{name:"Group",superClass:["Artifact"],properties:[{name:"name",isAttr:!0,type:"String"}]},{name:"FunctionItem",superClass:["DMNElement"],properties:[{name:"parameters",isMany:!0,type:"InformationItem",xml:{serialize:"property"}},{name:"outputTypeRef",isAttr:!0,type:"String"}]},{name:"DMNElementReference",properties:[{isAttr:!0,name:"href",type:"String"}]}],enumerations:[{name:"HitPolicy",literalValues:[{name:"UNIQUE"},{name:"FIRST"},{name:"PRIORITY"},{name:"ANY"},{name:"COLLECT"},{name:"RULE ORDER"},{name:"OUTPUT ORDER"}]},{name:"BuiltinAggregator",literalValues:[{name:"SUM"},{name:"COUNT"},{name:"MIN"},{name:"MAX"}]},{name:"DecisionTableOrientation",literalValues:[{name:"Rule-as-Row"},{name:"Rule-as-Column"},{name:"CrossTable"}]},{name:"AssociationDirection",literalValues:[{name:"None"},{name:"One"},{name:"Both"}]},{name:"FunctionKind",literalValues:[{name:"FEEL"},{name:"Java"},{name:"PMML"}]}],associations:[],xml:{tagAlias:"lowerCase"}},dmndi:{name:"DMNDI",prefix:"dmndi",uri:"https://www.omg.org/spec/DMN/20191111/DMNDI/",types:[{name:"DMNDI",properties:[{name:"diagrams",type:"DMNDiagram",isMany:!0},{name:"styles",type:"DMNStyle",isMany:!0}]},{name:"DMNStyle",superClass:["di:Style"],properties:[{name:"fillColor",type:"dc:Color",isAttr:!0},{name:"strokeColor",type:"dc:Color",isAttr:!0},{name:"fontColor",type:"dc:Color",isAttr:!0},{name:"fontSize",isAttr:!0,type:"Real"},{name:"fontFamily",isAttr:!0,type:"String"},{name:"fontItalic",isAttr:!0,type:"Boolean"},{name:"fontBold",isAttr:!0,type:"Boolean"},{name:"fontUnderline",isAttr:!0,type:"Boolean"},{name:"fontStrikeThrough",isAttr:!0,type:"Boolean"},{name:"labelHorizontalAlignment",type:"dc:AlignmentKind",isAttr:!0},{name:"labelVerticalAlignment",type:"dc:AlignmentKind",isAttr:!0}]},{name:"DMNDiagram",superClass:["di:Diagram"],properties:[{name:"dmnElementRef",type:"dmn:DMNElement",isAttr:!0,isReference:!0},{name:"size",type:"Size"},{name:"localStyle",type:"DMNStyle",isVirtual:!0},{name:"sharedStyle",type:"DMNStyle",isVirtual:!0,isReference:!0,redefines:"di:DiagramElement#sharedStyle"},{name:"diagramElements",type:"DMNDiagramElement",isMany:!0}]},{name:"DMNDiagramElement",isAbstract:!0,superClass:["di:DiagramElement"],properties:[{name:"dmnElementRef",type:"dmn:DMNElement",isAttr:!0,isReference:!0},{name:"sharedStyle",type:"DMNStyle",isVirtual:!0,isReference:!0,redefines:"di:DiagramElement#sharedStyle"},{name:"localStyle",type:"DMNStyle",isVirtual:!0},{name:"label",type:"DMNLabel"}]},{name:"DMNLabel",superClass:["di:Shape"],properties:[{name:"text",type:"Text"}]},{name:"DMNShape",superClass:["di:Shape","DMNDiagramElement"],properties:[{name:"isListedInputData",isAttr:!0,type:"Boolean"},{name:"decisionServiceDividerLine",type:"DMNDecisionServiceDividerLine"},{name:"isCollapsed",isAttr:!0,type:"Boolean"}]},{name:"DMNEdge",superClass:["di:Edge","DMNDiagramElement"],properties:[{name:"sourceElement",type:"DMNDiagramElement",isAttr:!0,isReference:!0},{name:"targetElement",type:"DMNDiagramElement",isAttr:!0,isReference:!0}]},{name:"DMNDecisionServiceDividerLine",superClass:["di:Edge"]},{name:"Text",properties:[{name:"text",isBody:!0,type:"String"}]},{name:"Size",superClass:["dc:Dimension"]}],associations:[],enumerations:[]},biodi:{name:"bpmn.io DI for DMN",uri:"http://bpmn.io/schema/dmn/biodi/2.0",prefix:"biodi",xml:{tagAlias:"lowerCase"},types:[{name:"DecisionTable",isAbstract:!0,extends:["dmn:DecisionTable"],properties:[{name:"annotationsWidth",isAttr:!0,type:"Integer"}]},{name:"OutputClause",isAbstract:!0,extends:["dmn:OutputClause"],properties:[{name:"width",isAttr:!0,type:"Integer"}]},{name:"InputClause",isAbstract:!0,extends:["dmn:InputClause"],properties:[{name:"width",isAttr:!0,type:"Integer"}]}]}};function ut(e,t){return new ct(M({},ht,e),t)}function dt(e,t){return t.forEach((function(t){t&&"string"!=typeof t&&!Array.isArray(t)&&Object.keys(t).forEach((function(n){if("default"!==n&&!(n in e)){var i=Object.getOwnPropertyDescriptor(t,n);Object.defineProperty(e,n,i.get?i:{enumerable:!0,get:function(){return t[n]}})}}))})),Object.freeze(e)}const pt=Object.prototype.toString,ft=Object.prototype.hasOwnProperty;function gt(e,t){return ft.call(e,t)}function mt(e,t){let n,i;if(void 0===e)return;const r=function(e){return"[object Array]"===pt.call(e)}(e)?vt:yt;for(let o in e)if(gt(e,o)&&(n=e[o],i=t(n,r(o)),!1===i))return n}function yt(e){return e}function vt(e){return Number(e)}function wt(e,...t){const n=e.style;return mt(t,(function(e){e&&mt(e,(function(e,t){n[t]=e}))})),e}function bt(e,t,n){return 2==arguments.length?e.getAttribute(t):null===n?e.removeAttribute(t):(e.setAttribute(t,n),e)}const xt=Object.prototype.toString;function kt(e){return new _t(e)}function _t(e){if(!e||!e.nodeType)throw new Error("A DOM element reference is required");this.el=e,this.list=e.classList}function St(e){for(var t;t=e.firstChild;)e.removeChild(t);return e}_t.prototype.add=function(e){return this.list.add(e),this},_t.prototype.remove=function(e){return"[object RegExp]"==xt.call(e)?this.removeMatching(e):(this.list.remove(e),this)},_t.prototype.removeMatching=function(e){const t=this.array();for(let n=0;n<t.length;n++)e.test(t[n])&&this.remove(t[n]);return this},_t.prototype.toggle=function(e,t){return void 0!==t?t!==this.list.toggle(e,t)&&this.list.toggle(e):this.list.toggle(e),this},_t.prototype.array=function(){return Array.from(this.list)},_t.prototype.has=_t.prototype.contains=function(e){return this.list.contains(e)};var Ct,Et,Mt,At={};function Dt(){Ct=window.addEventListener?"addEventListener":"attachEvent",Et=window.removeEventListener?"removeEventListener":"detachEvent",Mt="addEventListener"!==Ct?"on":""}var Rt=dt({__proto__:null,bind:At.bind=function(e,t,n,i){return Ct||Dt(),e[Ct](Mt+t,n,i||!1),n},unbind:At.unbind=function(e,t,n,i){return Et||Dt(),e[Et](Mt+t,n,i||!1),n},default:At},[At]),Ot=["focus","blur"];var Tt,Nt={bind:function(e,t,n,i,r){return-1!==Ot.indexOf(n)&&(r=!0),Rt.bind(e,n,(function(n){var r=n.target||n.srcElement;n.delegateTarget=function(e,t,n){var i=n?e:e.parentNode;return i&&"function"==typeof i.closest&&i.closest(t)||null}(r,t,!0),n.delegateTarget&&i.call(e,n)}),r)},unbind:function(e,t,n,i){return-1!==Ot.indexOf(t)&&(i=!0),Rt.unbind(e,t,n,i)}},Pt=function(e,t){if("string"!=typeof e)throw new TypeError("String expected");t||(t=document);var n=/<([\w:]+)/.exec(e);if(!n)return t.createTextNode(e);e=e.replace(/^\s+|\s+$/g,"");var i=n[1];if("body"==i){return(l=t.createElement("html")).innerHTML=e,l.removeChild(l.lastChild)}var r=Object.prototype.hasOwnProperty.call(Bt,i)?Bt[i]:Bt._default,o=r[0],s=r[1],a=r[2],l=t.createElement("div");l.innerHTML=s+e+a;for(;o--;)l=l.lastChild;if(l.firstChild==l.lastChild)return l.removeChild(l.firstChild);var c=t.createDocumentFragment();for(;l.firstChild;)c.appendChild(l.removeChild(l.firstChild));return c},qt=!1;"undefined"!=typeof document&&((Tt=document.createElement("div")).innerHTML=' <link/><table></table><a href="/a">a</a><input type="checkbox"/>',qt=!Tt.getElementsByTagName("link").length,Tt=void 0);var Bt={legend:[1,"<fieldset>","</fieldset>"],tr:[2,"<table><tbody>","</tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],_default:qt?[1,"X<div>","</div>"]:[0,"",""]};Bt.td=Bt.th=[3,"<table><tbody><tr>","</tr></tbody></table>"],Bt.option=Bt.optgroup=[1,'<select multiple="multiple">',"</select>"],Bt.thead=Bt.tbody=Bt.colgroup=Bt.caption=Bt.tfoot=[1,"<table>","</table>"],Bt.polyline=Bt.ellipse=Bt.polygon=Bt.circle=Bt.text=Bt.line=Bt.path=Bt.rect=Bt.g=[1,'<svg xmlns="http://www.w3.org/2000/svg" version="1.1">',"</svg>"];var Lt=Pt;function It(e,t){return(t=t||document).querySelector(e)}function Ft(e){e.parentNode&&e.parentNode.removeChild(e)}function jt(e){return function(){if(!window.Promise)throw new Error("Promises is not supported in this environment. Please polyfill Promise.");var t=arguments.length;if(!(t>=1&&s(arguments[t-1])))return e.apply(this,arguments);var n=arguments[t-1];console.warn(new Error("Passing callbacks to "+function(e){return e.replace("bound ","")}(e.name)+" is deprecated and will be removed in a future major release. Please switch to promises: https://bpmn.io/l/moving-to-promises.html"));var i=Array.prototype.slice.call(arguments,0,-1);e.apply(this,i).then((function(e){var t=Object.keys(e)[0];return n(null,e[t])}),(function(e){return n(e,e.warnings)}))}}const Vt={width:"100%",height:"100%",position:"relative"};class $t{constructor(e={}){this._eventBus=new _,this._viewsChanged=v(this._viewsChanged,0),this._views=[],this._viewers={},this.open=jt(this.open.bind(this)),this.importXML=jt(this.importXML.bind(this)),this.saveXML=jt(this.saveXML.bind(this)),this._init(e)}importXML(e,t){var n=this;return t=t||{open:!0},new Promise((function(r,o){var s=n._activeView;n._clear().then((()=>{var a;e=n._emit("import.parse.start",{xml:e})||e,n._moddle.fromXML(e,"dmn:Definitions").then((e=>{var l=e.rootElement,c=e.references,h=e.elementsById;if(a=e.warnings,l=n._emit("import.parse.complete",i({error:null,definitions:l,elementsById:h,references:c,warnings:a}))||l,n._setDefinitions(l),!t.open)return n._emit("import.done",{error:null,warnings:a}),void r({warnings:a});var u=n._getInitialView(n._views,s);if(!u){var d=new Error("no displayable contents");return n._emit("import.done",{error:d,warnings:a}),d.warnings=a,o(d)}n.open(u).then((e=>({warnings:e.warnings}))).catch((e=>({error:e,warnings:e.warnings}))).then((e=>{var t=[].concat(a,e.warnings);n._emit("import.done",{error:e.error,warnings:t}),e.error?(e.error.warnings=t,o(e.error)):r({warnings:t})}))})).catch((t=>(a=t.warnings,t=function(e,t){if("failed to parse document as <dmn:Definitions>"!==e.message)return null;var n=-1!==t.indexOf('"http://www.omg.org/spec/DMN/20151101/dmn.xsd"')?"1.1":-1!==t.indexOf('"http://www.omg.org/spec/DMN/20180521/MODEL/"')&&"1.2";if(!n)return null;return e=new Error("unsupported DMN "+n+" file detected; only DMN 1.3 files can be opened"),console.error("Cannot open what looks like a DMN "+n+" diagram. Please refer to https://bpmn.io/l/dmn-compatibility.html to learn how to make the toolkit compatible with older DMN files",e),e}(t,e)||function(e){var t=/unparsable content <([^>]+)> detected([\s\S]*)$/.exec(e.message);if(!t)return null;return e.message="unparsable content <"+t[1]+"> detected; this may indicate an invalid DMN 1.3 diagram file"+t[2],e}(t)||t,n._emit("import.parse.complete",i({error:t,warnings:a})),n._emit("import.done",{error:t,warnings:a}),t.warnings=a,o(t))))})).catch((e=>(n._emit("import.done",{error:e,warnings:[]}),e.warnings=[],o(e))))}));function i(e){var t=n._eventBus.createEvent(e);return Object.defineProperty(t,"context",{enumerable:!0,get:function(){return console.warn(new Error("import.parse.complete <context> is deprecated and will be removed in future library versions")),{warnings:e.warnings,references:e.references,elementsById:e.elementsById}}}),t}}getDefinitions(){return this._definitions}getActiveView(){return this._activeView}getActiveViewer(){var e=this.getActiveView();return e&&this._getViewer(e)}getView(e){return this._views.filter((function(t){return t.element===e}))[0]}getViews(){return this._views}saveXML(e){var t=this;e=e||{};var n=this._definitions;return new Promise((function(i,r){n?(n=t._emit("saveXML.start",{definitions:n})||n,t._moddle.toXML(n,e).then((function(e){var n=e.xml;return{xml:n=t._emit("saveXML.serialized",{xml:n})||n}})).catch((e=>({error:e}))).then((e=>{t._emit("saveXML.done",e),e.error?r(e.error):i({xml:e.xml})}))):r(new Error("no definitions loaded"))}))}on(...e){this._eventBus.on(...e)}off(...e){this._eventBus.off(...e)}once(...e){this._eventBus.once(...e)}attachTo(e){e.get&&e.constructor.prototype.jquery&&(e=e.get(0)),"string"==typeof e&&(e=It(e)),e.appendChild(this._container),this._emit("attach",{})}detach(){this._emit("detach",{}),Ft(this._container)}destroy(){Object.keys(this._viewers).forEach((e=>{Ut(this._viewers[e],"destroy")})),Ft(this._container)}_init(e){this._options=e,this._moddle=this._createModdle(e),this._viewers={},this._views=[];const t=Lt('<div class="dmn-js-parent"></div>'),n=b({},Vt,e);b(t.style,{width:zt(n.width),height:zt(n.height),position:n.position}),this._container=t,e.container&&this.attachTo(e.container)}_clear(){return this._switchView(null)}open(e){return this._switchView(e)}_setDefinitions(e){this._definitions=e,this._updateViews()}_viewsChanged=()=>{this._emit("views.changed",{views:this._views,activeView:this._activeView})};_updateViews(){var e=this._definitions;if(!e)return this._views=[],void this._switchView(null);var t=this._getViewProviders(),n=[e,...e.drgElement||[]],i=this._views,r=[];for(var o of n){var s=c(t,(function(e){return"string"==typeof e.opens?e.opens===o.$type:e.opens(o)}));if(s){var a={element:o,id:o.id,name:o.name,type:s.id};r.push(a)}}var l,h=this._activeView;if(!h||(l=c(r,(function(e){return Ht(h,e)}))||this._getInitialView(r),l)){var u=!Ht(h,l)||Wt(h,l),d=i.length!==r.length||!p(r,(function(e){return c(i,(function(t){return Ht(t,e)&&!Wt(t,e)}))}));this._activeView=l,this._views=r,(u||d)&&this._viewsChanged()}else this._switchView(null)}_getInitialView(e,t){var n;return t&&(n=c(e,(function(e){return Ht(e,t)}))||c(e,(function(e){return e.type===t}))),n||e[0]}_switchView(e){var t=this;return new Promise((function(n,i){var r,o=(e,r)=>{t._viewsChanged(),e?i(e):n(r)},s=t.getActiveView(),a=e&&t._getViewer(e),l=e&&e.element;if(s&&(r=t._getViewer(s))!==a&&(Ut(r,"clear"),r.detach()),t._activeView=e,a)return r!==a&&a.attachTo(t._container),t._emit("import.render.start",{view:e,element:l}),void a.open(l).then((n=>{t._emit("import.render.complete",{view:e,error:null,warnings:n.warnings}),o(null,n)})).catch((n=>{t._emit("import.render.complete",{view:e,error:n,warnings:n.warnings}),o(n,null)}));o()}))}_getViewer(e){var t=e.type,n=this._viewers[t];return n||(n=this._viewers[t]=this._createViewer(e.type),this._emit("viewer.created",{type:t,viewer:n})),n}_createViewer(e){var t=c(this._getViewProviders(),(function(t){return t.id===e}));if(!t)throw new Error("no provider for view type <"+e+">");var n=t.constructor,i=this._options[e]||{};return new n({...this._options.common||{},...i,additionalModules:[...i.additionalModules||[],{_parent:["value",this],moddle:["value",this._moddle]}]})}_emit(...e){return this._eventBus.fire(...e)}_createModdle(e){return new ut(e.moddleExtensions)}_getViewProviders(){return[]}}function zt(e){return e+(o(e)?"px":"")}function Ht(e,t){return n(e)?!!n(t)&&(e.element===t.element||e.id===t.id):!n(t)}function Wt(e,t){return!e||!t||e.name!==t.name}function Ut(e,t){s(e[t])&&e[t]()}const Gt=/^class[ {]/;function Kt(e){return Array.isArray(e)}function Xt(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function Yt(...e){1===e.length&&Kt(e[0])&&(e=e[0]);const t=(e=[...e]).pop();return t.$inject=e,t}const Jt=/constructor\s*[^(]*\(\s*([^)]*)\)/m,Qt=/^(?:async\s+)?(?:function\s*[^(]*)?(?:\(\s*([^)]*)\)|(\w+))/m,Zt=/\/\*([^*]*)\*\//m;function en(e){if("function"!=typeof e)throw new Error(`Cannot annotate "${e}". Expected a function!`);const t=e.toString().match(function(e){return Gt.test(e.toString())}(e)?Jt:Qt);if(!t)return[];const n=t[1]||t[2];return n&&n.split(",").map((e=>{const t=e.match(Zt);return(t&&t[1]||e).trim()}))||[]}function tn(e,t){const n=t||{get:function(e,t){if(i.push(e),!1===t)return null;throw a(`No provider for "${e}"!`)}},i=[],r=this._providers=Object.create(n._providers||null),o=this._instances=Object.create(null),s=o.injector=this,a=function(e){const t=i.join(" -> ");return i.length=0,new Error(t?`${e} (Resolving: ${t})`:e)};function l(e,t){if(!r[e]&&e.includes(".")){const t=e.split(".");let n=l(t.shift());for(;t.length;)n=n[t.shift()];return n}if(Xt(o,e))return o[e];if(Xt(r,e)){if(-1!==i.indexOf(e))throw i.push(e),a("Cannot resolve circular dependency!");return i.push(e),o[e]=r[e][0](r[e][1]),i.pop(),o[e]}return n.get(e,t)}function c(e,t){if(void 0===t&&(t={}),"function"!=typeof e){if(!Kt(e))throw a(`Cannot invoke "${e}". Expected a function!`);e=Yt(e.slice())}return{fn:e,dependencies:(e.$inject||en(e)).map((e=>Xt(t,e)?t[e]:l(e)))}}function h(e){const{fn:t,dependencies:n}=c(e);return new(Function.prototype.bind.call(t,null,...n))}function u(e,t,n){const{fn:i,dependencies:r}=c(e,n);return i.apply(t,r)}function d(e){return Yt((t=>e.get(t)))}function p(e,t){if(t&&t.length){const n=Object.create(null),i=Object.create(null),o=[],s=[],a=[];let l,c,h,u;for(let e in r)l=r[e],-1!==t.indexOf(e)&&("private"===l[2]?(c=o.indexOf(l[3]),-1===c?(h=l[3].createChild([],t),u=d(h),o.push(l[3]),s.push(h),a.push(u),n[e]=[u,e,"private",h]):n[e]=[a[c],e,"private",s[c]]):n[e]=[l[2],l[1]],i[e]=!0),"factory"!==l[2]&&"type"!==l[2]||!l[1].$scope||t.forEach((t=>{-1!==l[1].$scope.indexOf(t)&&(n[e]=[l[2],l[1]],i[t]=!0)}));t.forEach((e=>{if(!i[e])throw new Error('No provider for "'+e+'". Cannot use provider from the parent!')})),e.unshift(n)}return new tn(e,s)}const f={factory:u,type:h,value:function(e){return e}};function g(e,t){const n=e.__init__||[];return function(){n.forEach((e=>{"string"==typeof e?t.get(e):t.invoke(e)}))}}function m(e){const t=e.__exports__;if(t){const n=e.__modules__,i=Object.keys(e).reduce(((t,n)=>("__exports__"!==n&&"__modules__"!==n&&"__init__"!==n&&"__depends__"!==n&&(t[n]=e[n]),t)),Object.create(null)),o=p((n||[]).concat(i)),s=Yt((function(e){return o.get(e)}));t.forEach((function(e){r[e]=[s,e,"private",o]}));const a=(e.__init__||[]).slice();return a.unshift((function(){o.init()})),g(e=Object.assign({},e,{__init__:a}),o)}return Object.keys(e).forEach((function(t){if("__init__"===t||"__depends__"===t)return;const n=e[t];if("private"===n[2])return void(r[t]=n);const i=n[0],o=n[1];r[t]=[f[i],nn(i,o),i]})),g(e,s)}function y(e,t){return-1!==e.indexOf(t)||-1!==(e=(t.__depends__||[]).reduce(y,e)).indexOf(t)?e:e.concat(t)}this.get=l,this.invoke=u,this.instantiate=h,this.createChild=p,this.init=function(e){const t=e.reduce(y,[]).map(m);let n=!1;return function(){n||(n=!0,t.forEach((e=>e())))}}(e)}function nn(e,t){return"value"!==e&&Kt(t)&&(t=Yt(t.slice())),t}function rn(e,t){t&&(e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}))}var on=1e3;function sn(e,t){var n=this;t=t||on,e.on(["render.shape","render.connection"],t,(function(e,t){var i=e.type,r=t.element,o=t.gfx,s=t.attrs;if(n.canRender(r))return"render.shape"===i?n.drawShape(o,r,s):n.drawConnection(o,r,s)})),e.on(["render.getShapePath","render.getConnectionPath"],t,(function(e,t){if(n.canRender(t))return"render.getShapePath"===e.type?n.getShapePath(t):n.getConnectionPath(t)}))}function an(e,t){return function(e,t){t.appendChild(function(e,t){if(e.ownerDocument!==t.ownerDocument)try{return t.ownerDocument.importNode(e,!0)}catch(e){}return e}(e,t))}(t,e),e}sn.prototype.canRender=function(e){},sn.prototype.drawShape=function(e,t){},sn.prototype.drawConnection=function(e,t){},sn.prototype.getShapePath=function(e){},sn.prototype.getConnectionPath=function(e){};var ln=2,cn={"alignment-baseline":1,"baseline-shift":1,clip:1,"clip-path":1,"clip-rule":1,color:1,"color-interpolation":1,"color-interpolation-filters":1,"color-profile":1,"color-rendering":1,cursor:1,direction:1,display:1,"dominant-baseline":1,"enable-background":1,fill:1,"fill-opacity":1,"fill-rule":1,filter:1,"flood-color":1,"flood-opacity":1,font:1,"font-family":1,"font-size":ln,"font-size-adjust":1,"font-stretch":1,"font-style":1,"font-variant":1,"font-weight":1,"glyph-orientation-horizontal":1,"glyph-orientation-vertical":1,"image-rendering":1,kerning:1,"letter-spacing":1,"lighting-color":1,marker:1,"marker-end":1,"marker-mid":1,"marker-start":1,mask:1,opacity:1,overflow:1,"pointer-events":1,"shape-rendering":1,"stop-color":1,"stop-opacity":1,stroke:1,"stroke-dasharray":1,"stroke-dashoffset":1,"stroke-linecap":1,"stroke-linejoin":1,"stroke-miterlimit":1,"stroke-opacity":1,"stroke-width":ln,"text-anchor":1,"text-decoration":1,"text-rendering":1,"unicode-bidi":1,visibility:1,"word-spacing":1,"writing-mode":1};function hn(e,t,n){var i=t.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase(),r=cn[i];r?(r===ln&&"number"==typeof n&&(n=String(n)+"px"),e.style[i]=n):e.setAttributeNS(null,t,n)}function un(e,t,n){if("string"==typeof t){if(void 0===n)return function(e,t){return cn[t]?e.style[t]:e.getAttributeNS(null,t)}(e,t);hn(e,t,n)}else!function(e,t){var n,i,r=Object.keys(t);for(n=0;i=r[n];n++)hn(e,i,t[i])}(e,t);return e}const dn=Object.prototype.toString;function pn(e){return new fn(e)}function fn(e){if(!e||!e.nodeType)throw new Error("A DOM element reference is required");this.el=e,this.list=e.classList}fn.prototype.add=function(e){return this.list.add(e),this},fn.prototype.remove=function(e){return"[object RegExp]"==dn.call(e)?this.removeMatching(e):(this.list.remove(e),this)},fn.prototype.removeMatching=function(e){const t=this.array();for(let n=0;n<t.length;n++)e.test(t[n])&&this.remove(t[n]);return this},fn.prototype.toggle=function(e,t){return void 0!==t?t!==this.list.toggle(e,t)&&this.list.toggle(e):this.list.toggle(e),this},fn.prototype.array=function(){return Array.from(this.list)},fn.prototype.has=fn.prototype.contains=function(e){return this.list.contains(e)};var gn={svg:"http://www.w3.org/2000/svg"},mn='<svg xmlns="'+gn.svg+'"';function yn(e){var t=!1;"<svg"===e.substring(0,4)?-1===e.indexOf(gn.svg)&&(e=mn+e.substring(4)):(e=mn+">"+e+"</svg>",t=!0);var n=function(e){var t;return(t=new DOMParser).async=!1,t.parseFromString(e,"text/xml")}(e);if(!t)return n;for(var i=document.createDocumentFragment(),r=n.firstChild;r.firstChild;)i.appendChild(r.firstChild);return i}function vn(e,t){var n;return"<"===(e=e.trim()).charAt(0)?(n=yn(e).firstChild,n=document.importNode(n,!0)):n=document.createElementNS(gn.svg,e),t&&un(n,t),n}var wn=null;function bn(){return null===wn&&(wn=vn("svg")),wn}function xn(e,t){var n,i,r=Object.keys(t);for(n=0;i=r[n];n++)e[i]=t[i];return e}var kn=/([&<>]{1})/g,_n=/([&<>\n\r"]{1})/g,Sn={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"'"};function Cn(e,t){return e.replace(t,(function(e,t){return Sn[t]||t}))}function En(e,t){var n,i,r,o,s;switch(e.nodeType){case 3:t.push(Cn(e.textContent,kn));break;case 1:if(t.push("<",e.tagName),e.hasAttributes())for(n=0,i=(r=e.attributes).length;n<i;++n)o=r.item(n),t.push(" ",o.name,'="',Cn(o.value,_n),'"');if(e.hasChildNodes()){for(t.push(">"),n=0,i=(s=e.childNodes).length;n<i;++n)En(s.item(n),t);t.push("</",e.tagName,">")}else t.push("/>");break;case 8:t.push("\x3c!--",Cn(e.nodeValue,kn),"--\x3e");break;case 4:t.push("<![CDATA[",e.nodeValue,"]]>");break;default:throw new Error("unable to handle node "+e.nodeType)}return t}function Mn(e,t){return function(e){for(var t=e.firstChild,n=[];t;)En(t,n),t=t.nextSibling;return n.join("")}(e)}function An(e){var t=e.parentNode;return t&&t.removeChild(e),e}function Dn(e,t){return t instanceof SVGMatrix?e.createSVGTransformFromMatrix(t):t}function Rn(e,t){var n=e.transform.baseVal;return t&&(Array.isArray(t)||(t=[t]),function(e,t){var n,i;for(e.clear(),n=0;i=t[n];n++)e.appendItem(Dn(e,i))}(n,t)),n.consolidate()}function On(e){return e.flat().join(",").replace(/,?([A-z]),?/g,"$1")}function Tn(e){return["L",e.x,e.y]}function Nn(e,t){const n=e.length,i=[(r=e[0],["M",r.x,r.y])];var r,o,s,a;for(let r=1;r<n;r++){const n=e[r-1],l=e[r],c=e[r+1];if(!c||!t){i.push(Tn(l));continue}const h=Math.min(t,qn(l.x-n.x,l.y-n.y),qn(c.x-l.x,c.y-l.y));if(!h){i.push(Tn(l));continue}const u=Pn(l,n,h),d=Pn(l,n,.5*h),p=Pn(l,c,h),f=Pn(l,c,.5*h);i.push(Tn(u)),i.push((s=f,a=p,["C",(o=d).x,o.y,s.x,s.y,a.x,a.y]))}return i}function Pn(e,t,n){const i=t.x-e.x,r=t.y-e.y,o=n/qn(i,r);return{x:e.x+i*o,y:e.y+r*o}}function qn(e,t){return Math.sqrt(Math.pow(e,2)+Math.pow(t,2))}function Bn(e,t,n){o(t)&&(n=t,t=null),t||(t={});const i=vn("path",t);return o(n)&&(i.dataset.cornerRadius=String(n)),Ln(i,e)}function Ln(e,t){return un(e,{d:On(Nn(t,parseInt(e.dataset.cornerRadius,10)||0))}),e}function In(e,t){var n,r,o,s;return t=!!t,i(e)||(e=[e]),u(e,(function(e){var i=e;e.waypoints&&!t&&(i=In(e.waypoints,!0));var a=i.x,l=i.y,c=i.height||0,h=i.width||0;(a<n||void 0===n)&&(n=a),(l<r||void 0===r)&&(r=l),(a+h>o||void 0===o)&&(o=a+h),(l+c>s||void 0===s)&&(s=l+c)})),{x:n,y:r,height:s-r,width:o-n}}function Fn(e){return!(!e||!e.isFrame)}function jn(e,t){sn.call(this,e,1),this.CONNECTION_STYLE=t.style(["no-fill"],{strokeWidth:5,stroke:"fuchsia"}),this.SHAPE_STYLE=t.style({fill:"white",stroke:"fuchsia",strokeWidth:2}),this.FRAME_STYLE=t.style(["no-fill"],{stroke:"fuchsia",strokeDasharray:4,strokeWidth:2})}rn(jn,sn),jn.prototype.canRender=function(){return!0},jn.prototype.drawShape=function(e,t,n){var i=vn("rect");return un(i,{x:0,y:0,width:t.width||0,height:t.height||0}),Fn(t)?un(i,b({},this.FRAME_STYLE,n||{})):un(i,b({},this.SHAPE_STYLE,n||{})),an(e,i),i},jn.prototype.drawConnection=function(e,t,n){var i=Bn(t.waypoints,b({},this.CONNECTION_STYLE,n||{}));return an(e,i),i},jn.prototype.getShapePath=function(e){var t=e.x,n=e.y,i=e.width;return On([["M",t,n],["l",i,0],["l",0,e.height],["l",-i,0],["z"]])},jn.prototype.getConnectionPath=function(e){var t,n,i=e.waypoints,r=[];for(t=0;n=i[t];t++)n=n.original||n,r.push([0===t?"M":"L",n.x,n.y]);return On(r)},jn.$inject=["eventBus","styles"];var Vn={__init__:["defaultRenderer"],defaultRenderer:["type",jn],styles:["type",function(){var e={"no-fill":{fill:"none"},"no-border":{strokeOpacity:0},"no-events":{pointerEvents:"none"}},t=this;this.cls=function(e,t,n){return b(this.style(t,n),{class:e})},this.style=function(t,n){i(t)||n||(n=t,t=[]);var r=d(t,(function(t,n){return b(t,e[n]||{})}),{});return n?b(r,n):r},this.computeStyle=function(e,n,r){return i(n)||(r=n,n=[]),t.style(n||[],b({},r,e||{}))}}]};function $n(e){return{top:e.y,right:e.x+(e.width||0),bottom:e.y+(e.height||0),left:e.x}}function zn(e,t){return Math.round(e*t)/t}function Hn(e){return o(e)?e+"px":e}function Wn(e,t,n){const i=vn("g");pn(i).add(t);const r=void 0!==n?n:e.childNodes.length-1;return e.insertBefore(i,e.childNodes[r]||null),i}const Un={shape:["x","y","width","height"],connection:["waypoints"]};function Gn(e,t,n,i){this._eventBus=t,this._elementRegistry=i,this._graphicsFactory=n,this._rootsIdx=0,this._layers={},this._planes=[],this._rootElement=null,this._focused=!1,this._init(e||{})}function Kn(e,t){const n="matrix("+t.a+","+t.b+","+t.c+","+t.d+","+t.e+","+t.f+")";e.setAttribute("transform",n)}Gn.$inject=["config.canvas","eventBus","graphicsFactory","elementRegistry"],Gn.prototype._init=function(e){const t=this._eventBus,n=this._container=function(e){const t=(e=b({},{width:"100%",height:"100%"},e)).container||document.body,n=document.createElement("div");return n.setAttribute("class","djs-container djs-parent"),wt(n,{position:"relative",overflow:"hidden",width:Hn(e.width),height:Hn(e.height)}),t.appendChild(n),n}(e),i=this._svg=vn("svg");un(i,{width:"100%",height:"100%"}),bt(i,"tabindex",0),t.on("element.hover",(()=>{this.restoreFocus()})),i.addEventListener("focusin",(()=>{this._focused=!0,t.fire("canvas.focus.changed",{focused:!0})})),i.addEventListener("focusout",(()=>{this._focused=!1,t.fire("canvas.focus.changed",{focused:!1})})),an(n,i);const r=this._viewport=Wn(i,"viewport");e.deferUpdate&&(this._viewboxChanged=v(w(this._viewboxChanged,this),300)),t.on("diagram.init",(()=>{t.fire("canvas.init",{svg:i,viewport:r})})),t.on(["shape.added","connection.added","shape.removed","connection.removed","elements.changed","root.set"],(()=>{delete this._cachedViewbox})),t.on("diagram.destroy",500,this._destroy,this),t.on("diagram.clear",500,this._clear,this)},Gn.prototype._destroy=function(){this._eventBus.fire("canvas.destroy",{svg:this._svg,viewport:this._viewport});const e=this._container.parentNode;e&&e.removeChild(this._container),delete this._svg,delete this._container,delete this._layers,delete this._planes,delete this._rootElement,delete this._viewport},Gn.prototype._clear=function(){this._elementRegistry.getAll().forEach((e=>{const t=function(e){return"waypoints"in e?"connection":"x"in e?"shape":"root"}(e);"root"===t?this.removeRootElement(e):this._removeElement(e,t)})),this._planes=[],this._rootElement=null,delete this._cachedViewbox},Gn.prototype.focus=function(){this._svg.focus({preventScroll:!0})},Gn.prototype.restoreFocus=function(){document.activeElement===document.body&&this.focus()},Gn.prototype.isFocused=function(){return this._focused},Gn.prototype.getDefaultLayer=function(){return this.getLayer("base",0)},Gn.prototype.getLayer=function(e,t){if(!e)throw new Error("must specify a name");let n=this._layers[e];if(n||(n=this._layers[e]=this._createLayer(e,t)),void 0!==t&&n.index!==t)throw new Error("layer <"+e+"> already created at index <"+t+">");return n.group},Gn.prototype._getChildIndex=function(e){return d(this._layers,(function(t,n){return n.visible&&e>=n.index&&t++,t}),0)},Gn.prototype._createLayer=function(e,t){void 0===t&&(t=1);const n=this._getChildIndex(t);return{group:Wn(this._viewport,"layer-"+e,n),index:t,visible:!0}},Gn.prototype.showLayer=function(e){if(!e)throw new Error("must specify a name");const t=this._layers[e];if(!t)throw new Error("layer <"+e+"> does not exist");const n=this._viewport,i=t.group,r=t.index;if(t.visible)return i;const o=this._getChildIndex(r);return n.insertBefore(i,n.childNodes[o]||null),t.visible=!0,i},Gn.prototype.hideLayer=function(e){if(!e)throw new Error("must specify a name");const t=this._layers[e];if(!t)throw new Error("layer <"+e+"> does not exist");const n=t.group;return t.visible?(An(n),t.visible=!1,n):n},Gn.prototype._removeLayer=function(e){const t=this._layers[e];t&&(delete this._layers[e],An(t.group))},Gn.prototype.getActiveLayer=function(){const e=this._findPlaneForRoot(this.getRootElement());return e?e.layer:null},Gn.prototype.findRoot=function(e){if("string"==typeof e&&(e=this._elementRegistry.get(e)),!e)return;const t=this._findPlaneForRoot(function(e){for(;e.parent;)e=e.parent;return e}(e))||{};return t.rootElement},Gn.prototype.getRootElements=function(){return this._planes.map((function(e){return e.rootElement}))},Gn.prototype._findPlaneForRoot=function(e){return c(this._planes,(function(t){return t.rootElement===e}))},Gn.prototype.getContainer=function(){return this._container},Gn.prototype._updateMarker=function(e,t,n){let i;e.id||(e=this._elementRegistry.get(e)),e.markers=e.markers||new Set,i=this._elementRegistry._elements[e.id],i&&(u([i.gfx,i.secondaryGfx],(function(i){i&&(n?(e.markers.add(t),pn(i).add(t)):(e.markers.delete(t),pn(i).remove(t)))})),this._eventBus.fire("element.marker.update",{element:e,gfx:i.gfx,marker:t,add:!!n}))},Gn.prototype.addMarker=function(e,t){this._updateMarker(e,t,!0)},Gn.prototype.removeMarker=function(e,t){this._updateMarker(e,t,!1)},Gn.prototype.hasMarker=function(e,t){return e.id||(e=this._elementRegistry.get(e)),!!e.markers&&e.markers.has(t)},Gn.prototype.toggleMarker=function(e,t){this.hasMarker(e,t)?this.removeMarker(e,t):this.addMarker(e,t)},Gn.prototype.getRootElement=function(){const e=this._rootElement;return e||this._planes.length?e:this.setRootElement(this.addRootElement(null))},Gn.prototype.addRootElement=function(e){const t=this._rootsIdx++;e||(e={id:"__implicitroot_"+t,children:[],isImplicit:!0});const n=e.layer="root-"+t;this._ensureValid("root",e);const i=this.getLayer(n,0);return this.hideLayer(n),this._addRoot(e,i),this._planes.push({rootElement:e,layer:i}),e},Gn.prototype.removeRootElement=function(e){"string"==typeof e&&(e=this._elementRegistry.get(e));if(this._findPlaneForRoot(e))return this._removeRoot(e),this._removeLayer(e.layer),this._planes=this._planes.filter((function(t){return t.rootElement!==e})),this._rootElement===e&&(this._rootElement=null),e},Gn.prototype.setRootElement=function(e){if(e===this._rootElement)return e;let t;if(!e)throw new Error("rootElement required");return t=this._findPlaneForRoot(e),t||(e=this.addRootElement(e)),this._setRoot(e),e},Gn.prototype._removeRoot=function(e){const t=this._elementRegistry,n=this._eventBus;n.fire("root.remove",{element:e}),n.fire("root.removed",{element:e}),t.remove(e)},Gn.prototype._addRoot=function(e,t){const n=this._elementRegistry,i=this._eventBus;i.fire("root.add",{element:e}),n.add(e,t),i.fire("root.added",{element:e,gfx:t})},Gn.prototype._setRoot=function(e,t){const n=this._rootElement;n&&(this._elementRegistry.updateGraphics(n,null,!0),this.hideLayer(n.layer)),e&&(t||(t=this._findPlaneForRoot(e).layer),this._elementRegistry.updateGraphics(e,this._svg,!0),this.showLayer(e.layer)),this._rootElement=e,this._eventBus.fire("root.set",{element:e})},Gn.prototype._ensureValid=function(e,t){if(!t.id)throw new Error("element must have an id");if(this._elementRegistry.get(t.id))throw new Error("element <"+t.id+"> already exists");const n=Un[e],i=p(n,(function(e){return void 0!==t[e]}));if(!i)throw new Error("must supply { "+n.join(", ")+" } with "+e)},Gn.prototype._setParent=function(e,t,n){!function(e,t,n){if(e&&t){"number"!=typeof n&&(n=-1);var i=e.indexOf(t);if(-1!==i){if(i===n)return;if(-1===n)return;e.splice(i,1)}-1!==n?e.splice(n,0,t):e.push(t)}}(t.children,e,n),e.parent=t},Gn.prototype._addElement=function(e,t,n,i){n=n||this.getRootElement();const r=this._eventBus,o=this._graphicsFactory;this._ensureValid(e,t),r.fire(e+".add",{element:t,parent:n}),this._setParent(t,n,i);const s=o.create(e,t,i);return this._elementRegistry.add(t,s),o.update(e,t,s),r.fire(e+".added",{element:t,gfx:s}),t},Gn.prototype.addShape=function(e,t,n){return this._addElement("shape",e,t,n)},Gn.prototype.addConnection=function(e,t,n){return this._addElement("connection",e,t,n)},Gn.prototype._removeElement=function(e,t){const n=this._elementRegistry,i=this._graphicsFactory,r=this._eventBus;if(e=n.get(e.id||e))return r.fire(t+".remove",{element:e}),i.remove(e),function(e,t){if(!e||!t)return-1;var n=e.indexOf(t);-1!==n&&e.splice(n,1)}(e.parent&&e.parent.children,e),e.parent=null,r.fire(t+".removed",{element:e}),n.remove(e),e},Gn.prototype.removeShape=function(e){return this._removeElement(e,"shape")},Gn.prototype.removeConnection=function(e){return this._removeElement(e,"connection")},Gn.prototype.getGraphics=function(e,t){return this._elementRegistry.getGraphics(e,t)},Gn.prototype._changeViewbox=function(e){this._eventBus.fire("canvas.viewbox.changing"),e.apply(this),this._cachedViewbox=null,this._viewboxChanged()},Gn.prototype._viewboxChanged=function(){this._eventBus.fire("canvas.viewbox.changed",{viewbox:this.viewbox()})},Gn.prototype.viewbox=function(e){if(void 0===e&&this._cachedViewbox)return structuredClone(this._cachedViewbox);const t=this._viewport,n=this.getSize();let i,r,o,s,a,l,c;return e?(this._changeViewbox((function(){a=Math.min(n.width/e.width,n.height/e.height);const i=this._svg.createSVGMatrix().scale(a).translate(-e.x,-e.y);Rn(t,i)})),e):(o=this._rootElement?this.getActiveLayer():null,i=o&&o.getBBox()||{},s=Rn(t),r=s?s.matrix:function(e,t,n,i,r,o){var s=bn().createSVGMatrix();switch(arguments.length){case 0:return s;case 1:return xn(s,e);case 6:return xn(s,{a:e,b:t,c:n,d:i,e:r,f:o})}}(),a=zn(r.a,1e3),l=zn(-r.e||0,1e3),c=zn(-r.f||0,1e3),e=this._cachedViewbox={x:l?l/a:0,y:c?c/a:0,width:n.width/a,height:n.height/a,scale:a,inner:{width:i.width||0,height:i.height||0,x:i.x||0,y:i.y||0},outer:n})},Gn.prototype.scroll=function(e){const t=this._viewport;let n=t.getCTM();return e&&this._changeViewbox((function(){e=b({dx:0,dy:0},e||{}),n=this._svg.createSVGMatrix().translate(e.dx,e.dy).multiply(n),Kn(t,n)})),{x:n.e,y:n.f}},Gn.prototype.scrollToElement=function(e,t){let n=100;"string"==typeof e&&(e=this._elementRegistry.get(e));const i=this.findRoot(e);if(i!==this.getRootElement()&&this.setRootElement(i),i===e)return;t||(t={}),"number"==typeof t&&(n=t),t={top:t.top||n,right:t.right||n,bottom:t.bottom||n,left:t.left||n};const r=In(e),o=$n(r),s=this.viewbox(),a=this.zoom();let l,c;s.y+=t.top/a,s.x+=t.left/a,s.width-=(t.right+t.left)/a,s.height-=(t.bottom+t.top)/a;const h=$n(s);if(r.width<s.width&&r.height<s.height){const e=Math.max(0,o.right-h.right),t=Math.min(0,o.left-h.left),n=Math.max(0,o.bottom-h.bottom),i=Math.min(0,o.top-h.top);l=e||t,c=n||i}else l=r.x-s.x,c=r.y-s.y;this.scroll({dx:-l*a,dy:-c*a})},Gn.prototype.zoom=function(e,t){if(!e)return this.viewbox(e).scale;if("fit-viewport"===e)return this._fitViewport(t);let n,i;return this._changeViewbox((function(){"object"!=typeof t&&(n=this.viewbox().outer,t={x:n.width/2,y:n.height/2}),i=this._setZoom(e,t)})),zn(i.a,1e3)},Gn.prototype._fitViewport=function(e){const t=this.viewbox(),n=t.outer,i=t.inner;let r,o;return i.x>=0&&i.y>=0&&i.x+i.width<=n.width&&i.y+i.height<=n.height&&!e?o={x:0,y:0,width:Math.max(i.width+i.x,n.width),height:Math.max(i.height+i.y,n.height)}:(r=Math.min(1,n.width/i.width,n.height/i.height),o={x:i.x+(e?i.width/2-n.width/r/2:0),y:i.y+(e?i.height/2-n.height/r/2:0),width:n.width/r,height:n.height/r}),this.viewbox(o),this.viewbox(!1).scale},Gn.prototype._setZoom=function(e,t){const n=this._svg,i=this._viewport,r=n.createSVGMatrix(),o=n.createSVGPoint();let s,a,l,c,h;l=i.getCTM();const u=l.a;return t?(s=b(o,t),a=s.matrixTransform(l.inverse()),c=r.translate(a.x,a.y).scale(1/u*e).translate(-a.x,-a.y),h=l.multiply(c)):h=r.scale(e),Kn(this._viewport,h),h},Gn.prototype.getSize=function(){return{width:this._container.clientWidth,height:this._container.clientHeight}},Gn.prototype.getAbsoluteBBox=function(e){const t=this.viewbox();let n;if(e.waypoints){n=this.getGraphics(e).getBBox()}else n=e;return{x:n.x*t.scale-t.x*t.scale,y:n.y*t.scale-t.y*t.scale,width:n.width*t.scale,height:n.height*t.scale}},Gn.prototype.resized=function(){delete this._cachedViewbox,this._eventBus.fire("canvas.resized")};var Xn="data-element-id";function Yn(e){this._elements={},this._eventBus=e}function Jn(e,t,n){var i=function(e,t,n,i){var r=n.inverse;return Object.defineProperty(e,"remove",{value:function(e){var n=this.indexOf(e);return-1!==n&&(this.splice(n,1),t.unset(e,r,i)),e}}),Object.defineProperty(e,"contains",{value:function(e){return-1!==this.indexOf(e)}}),Object.defineProperty(e,"add",{value:function(e,n){var o=this.indexOf(e);if(void 0===n){if(-1!==o)return;n=this.length}-1!==o&&this.splice(o,1),this.splice(n,0,e),-1===o&&t.set(e,r,i)}}),Object.defineProperty(e,"__refs_collection",{value:!0}),e}(n[t.name]||[],e,t,n);Object.defineProperty(n,t.name,{enumerable:t.enumerable,value:i}),i.length&&i.forEach((function(i){e.set(i,t.inverse,n)}))}function Qn(e,t){if(!(this instanceof Qn))return new Qn(e,t);e.inverse=t,t.inverse=e,this.props={},this.props[e.name]=e,this.props[t.name]=t}Yn.$inject=["eventBus"],Yn.prototype.add=function(e,t,n){var i=e.id;this._validateId(i),un(t,Xn,i),n&&un(n,Xn,i),this._elements[i]={element:e,gfx:t,secondaryGfx:n}},Yn.prototype.remove=function(e){var t=this._elements,n=e.id||e,i=n&&t[n];i&&(un(i.gfx,Xn,""),i.secondaryGfx&&un(i.secondaryGfx,Xn,""),delete t[n])},Yn.prototype.updateId=function(e,t){this._validateId(t),"string"==typeof e&&(e=this.get(e)),this._eventBus.fire("element.updateId",{element:e,newId:t});var n=this.getGraphics(e),i=this.getGraphics(e,!0);this.remove(e),e.id=t,this.add(e,n,i)},Yn.prototype.updateGraphics=function(e,t,n){var i=e.id||e,r=this._elements[i];return n?r.secondaryGfx=t:r.gfx=t,t&&un(t,Xn,i),t},Yn.prototype.get=function(e){var t;t="string"==typeof e?e:e&&un(e,Xn);var n=this._elements[t];return n&&n.element},Yn.prototype.filter=function(e){var t=[];return this.forEach((function(n,i){e(n,i)&&t.push(n)})),t},Yn.prototype.find=function(e){for(var t=this._elements,n=Object.keys(t),i=0;i<n.length;i++){var r=t[n[i]],o=r.element;if(e(o,r.gfx))return o}},Yn.prototype.getAll=function(){return this.filter((function(e){return e}))},Yn.prototype.forEach=function(e){var t=this._elements;Object.keys(t).forEach((function(n){var i=t[n],r=i.element,o=i.gfx;return e(r,o)}))},Yn.prototype.getGraphics=function(e,t){var n=e.id||e,i=this._elements[n];return i&&(t?i.secondaryGfx:i.gfx)},Yn.prototype._validateId=function(e){if(!e)throw new Error("element must have an id");if(this._elements[e])throw new Error("element with id "+e+" already added")},Qn.prototype.bind=function(e,t){if("string"==typeof t){if(!this.props[t])throw new Error("no property <"+t+"> in ref");t=this.props[t]}t.collection?Jn(this,t,e):function(e,t,n){var i=t.inverse,r=n[t.name];Object.defineProperty(n,t.name,{configurable:t.configurable,enumerable:t.enumerable,get:function(){return r},set:function(t){if(t!==r){var o=r;r=null,o&&e.unset(o,i,n),r=t,e.set(r,i,n)}}})}(this,t,e)},Qn.prototype.ensureRefsCollection=function(e,t){var n=e[t.name];return function(e){return!0===e.__refs_collection}(n)||Jn(this,t,e),n},Qn.prototype.ensureBound=function(e,t){(function(e,t){return Object.prototype.hasOwnProperty.call(e,t.name||t)})(e,t)||this.bind(e,t)},Qn.prototype.unset=function(e,t,n){e&&(this.ensureBound(e,t),t.collection?this.ensureRefsCollection(e,t).remove(n):e[t.name]=void 0)},Qn.prototype.set=function(e,t,n){e&&(this.ensureBound(e,t),t.collection?this.ensureRefsCollection(e,t).add(n):e[t.name]=n)};var Zn=new Qn({name:"children",enumerable:!0,collection:!0},{name:"parent"}),ei=new Qn({name:"labels",enumerable:!0,collection:!0},{name:"labelTarget"}),ti=new Qn({name:"attachers",collection:!0},{name:"host"}),ni=new Qn({name:"outgoing",collection:!0},{name:"source"}),ii=new Qn({name:"incoming",collection:!0},{name:"target"});function ri(){Object.defineProperty(this,"businessObject",{writable:!0}),Object.defineProperty(this,"label",{get:function(){return this.labels[0]},set:function(e){var t=this.label,n=this.labels;!e&&t?n.remove(t):n.add(e,0)}}),Zn.bind(this,"parent"),ei.bind(this,"labels"),ni.bind(this,"outgoing"),ii.bind(this,"incoming")}function oi(){ri.call(this),Zn.bind(this,"children"),ti.bind(this,"host"),ti.bind(this,"attachers")}function si(){ri.call(this),Zn.bind(this,"children")}function ai(){oi.call(this),ei.bind(this,"labelTarget")}function li(){ri.call(this),ni.bind(this,"source"),ii.bind(this,"target")}rn(oi,ri),rn(si,oi),rn(ai,oi),rn(li,ri);var ci={connection:li,shape:oi,label:ai,root:si};function hi(){this._uid=12}function ui(e,t,n){var i=bn().createSVGTransform();i.setTranslate(t,n),Rn(e,i)}function di(e,t){this._eventBus=e,this._elementRegistry=t}function pi(e,t,n){var i=n||t.firstChild;e!==i&&t.insertBefore(e,i)}hi.prototype.createRoot=function(e){return this.create("root",e)},hi.prototype.createLabel=function(e){return this.create("label",e)},hi.prototype.createShape=function(e){return this.create("shape",e)},hi.prototype.createConnection=function(e){return this.create("connection",e)},hi.prototype.create=function(e,t){return(t=b({},t||{})).id||(t.id=e+"_"+this._uid++),function(e,t){var n=ci[e];if(!n)throw new Error("unknown type: <"+e+">");return b(new n,t)}(e,t)},di.$inject=["eventBus","elementRegistry"],di.prototype._getChildrenContainer=function(e){var t,n=this._elementRegistry.getGraphics(e);return e.parent?(t=function(e){return e.parentNode.childNodes[1]}(n),t||(pn(t=vn("g")).add("djs-children"),an(n.parentNode,t))):t=n,t},di.prototype._clear=function(e){var t=function(e){return e.childNodes[0]}(e);return St(t),t},di.prototype._createContainer=function(e,t,n,i){var r=vn("g");pn(r).add("djs-group"),void 0!==n?pi(r,t,t.childNodes[n]):an(t,r);var o=vn("g");pn(o).add("djs-element"),pn(o).add("djs-"+e),i&&pn(o).add("djs-frame"),an(r,o);var s=vn("g");return pn(s).add("djs-visual"),an(o,s),o},di.prototype.create=function(e,t,n){var i=this._getChildrenContainer(t.parent);return this._createContainer(e,i,n,Fn(t))},di.prototype.updateContainments=function(e){var t,n=this,i=this._elementRegistry;t=d(e,(function(e,t){return t.parent&&(e[t.parent.id]=t.parent),e}),{}),u(t,(function(e){var t=e.children;if(t){var r=n._getChildrenContainer(e);u(t.slice().reverse(),(function(e){pi(i.getGraphics(e).parentNode,r)}))}}))},di.prototype.drawShape=function(e,t,n={}){return this._eventBus.fire("render.shape",{gfx:e,element:t,attrs:n})},di.prototype.getShapePath=function(e){return this._eventBus.fire("render.getShapePath",e)},di.prototype.drawConnection=function(e,t,n={}){return this._eventBus.fire("render.connection",{gfx:e,element:t,attrs:n})},di.prototype.getConnectionPath=function(e){return this._eventBus.fire("render.getConnectionPath",e)},di.prototype.update=function(e,t,n){if(t.parent){var i=this._clear(n);if("shape"===e)this.drawShape(i,t),ui(n,t.x,t.y);else{if("connection"!==e)throw new Error("unknown type: "+e);this.drawConnection(i,t)}t.hidden?un(n,"display","none"):un(n,"display","block")}},di.prototype.remove=function(e){An(this._elementRegistry.getGraphics(e).parentNode)};var fi={__depends__:[Vn],__init__:["canvas"],canvas:["type",Gn],elementRegistry:["type",Yn],elementFactory:["type",hi],eventBus:["type",_],graphicsFactory:["type",di]};function gi(e){return function(e){var t=new tn(e);return t.init(),t}([{config:["value",e=e||{}]},fi].concat(e.modules||[]))}function mi(e,t){this._injector=t||gi(e),this.get("eventBus").fire("diagram.init")}function yi(e,t){var n=vi(e);return n&&"function"==typeof n.$instanceOf&&n.$instanceOf(t)}function vi(e){return e&&e.businessObject||e}function wi(e){var t=vi(e);if(yi(t,"dmn:Decision"))return t.get("decisionLogic");if(yi(t,"dmn:BusinessKnowledgeModel")){var n=t.get("encapsulatedLogic");return n&&n.get("body")}}mi.prototype.get=function(e,t){return this._injector.get(e,t)},mi.prototype.invoke=function(e,t,n){return this._injector.invoke(e,t,n)},mi.prototype.destroy=function(){this.get("eventBus").fire("diagram.destroy")},mi.prototype.clear=function(){this.get("eventBus").fire("diagram.clear")};var bi=new Qn({name:"dmnElementRef",enumerable:!0},{name:"di",configurable:!0});function xi(e,t){var n=[];function i(t){try{var n=t.di&&function(t){if(t.gfx)throw new Error("already rendered "+t.id);return e.element(t)}(t);return n}catch(e){s(e.message,{element:t,error:e})}}function r(e){var t,n;(n=(t=e).dmnElementRef)?n.di?s("multiple DI elements defined for element",{element:n}):(bi.bind(n,"di"),n.di=t):s("no DMN element referenced in element",{element:t})}function o(e){n.push(e)}function s(t,n){e.error(t,n)}return{handleDefinitions:function(t,s){var a=t.dmnDI;if(!a)throw new Error("no dmndi:DMNDI");var l,c=a.diagrams||[];if(s&&-1===c.indexOf(s))throw new Error("diagram not part of dmndi:DMNDI");if(!s&&c&&c.length&&(s=c[0]),!s)throw new Error("no diagram to display");t.di=s,function(e){u(e.diagramElements,r)}(s),l=t,e.root(l),u(t.get("drgElement"),(function(e){i(e),function(e){u(["informationRequirement","knowledgeRequirement","authorityRequirement"],(function(t){u(e[t],(function(e){o((function(){i(e)}))}))}))}(e)})),function(e){u(e,(function(e){yi(e,"dmn:Association")?function(e){o((function(){i(e)}))}(e):i(e)}))}(t.get("artifact")),u(n,(function(e){e()}))}}}var ki="$NO_OP",_i="a runtime error occured! Use Inferno in development environment to find the error.",Si=!("undefined"==typeof window||!window.document),Ci=Array.isArray;function Ei(e){var t=typeof e;return"string"===t||"number"===t}function Mi(e){return Ni(e)||Ti(e)}function Ai(e){return Ti(e)||!1===e||function(e){return!0===e}(e)||Ni(e)}function Di(e){return"function"==typeof e}function Ri(e){return"string"==typeof e}function Oi(e){return"number"==typeof e}function Ti(e){return null===e}function Ni(e){return void 0===e}function Pi(e){throw e||(e=_i),new Error("Inferno Error: "+e)}function qi(e){console.error(e)}function Bi(e,t){var n={};if(e)for(var i in e)n[i]=e[i];if(t)for(var r in t)n[r]=t[r];return n}function Li(e){var t;if(Ci(e))t="Array("+(e.length>3?e.slice(0,3).toString()+",...":e.toString())+")";else if(Ei(e))t="Text("+e+")";else if(Ai(e))t="InvalidVNode("+e+")";else{var n=e.flags;if(481&n)t="<"+e.type+(e.className?' class="'+e.className+'"':"")+">";else if(16&n)t="Text("+e.children+")";else if(1024&n)t="Portal*";else{var i=e.type;t="<"+(i.name||i.displayName||i.constructor.name||(i.toString().match(/^function\s*([^\s(]+)/)||[])[1])+" />"}}return">> "+t+"\n"}function Ii(e,t){for(var n={},i=0,r=e.length;i<r;i++){var o=e[i];if(Ci(o))return"Encountered ARRAY in mount, array must be flattened, or normalize used. Location: \n"+Li(o);if(Ai(o)){if(t)return"Encountered invalid node when preparing to keyed algorithm. Location: \n"+Li(o);if(0!==Object.keys(n).length)return"Encountered invalid node with mixed keys. Location: \n"+Li(o)}else{"object"==typeof o&&(o.isValidated=!0);var s=o.key;if(!Mi(s)&&!Ei(s))return"Encountered child vNode where key property is not string or number. Location: \n"+Li(o);var a=o.children,l=o.childFlags;if(!Ai(a)){var c=void 0;if(12&l?c=Ii(a,8&o.childFlags):2===l&&(c=Ii([a],8&o.childFlags)),c)return c+=Li(o)}if(t&&Mi(s))return"Encountered child without key during keyed algorithm. If this error points to Array make sure children is flat list. Location: \n"+Li(o);if(t||!Mi(s)){if(n[s])return"Encountered two children with same key: {"+s+"}. Location: \n"+Li(o);n[s]=!0}else if(0!==Object.keys(n).length)return"Encountered children with key missing. Location: \n"+Li(o)}}}function Fi(e){if(!(1&e.childFlags)&&(64&e.flags&&Pi("input elements can't have children."),128&e.flags&&Pi("textarea elements can't have children."),481&e.flags)){var t=["area","base","br","col","command","embed","hr","img","input","keygen","link","meta","param","source","track","wbr"],n=e.type.toLowerCase();"media"===n&&Pi("media elements can't have children.");var i=t.indexOf(n);-1!==i&&Pi(t[i]+" elements can't have children.")}}function ji(e){if(!1===e.isValidated&&e.children&&481&e.flags){var t=Ii(Array.isArray(e.children)?e.children:[e.children],(8&e.childFlags)>0);t&&Pi(t+Li(e))}e.isValidated=!0}var Vi="$";function $i(e,t,n,i,r,o,s,a){return{childFlags:e,children:t,className:n,dom:null,flags:i,isValidated:!1,key:void 0===r?null:r,parentVNode:null,props:void 0===o?null:o,ref:void 0===s?null:s,type:a}}function zi(e,t,n,i,r,o,s,a){14&e&&Pi("Creating Component vNodes using createVNode is not allowed. Use Inferno.createComponentVNode method.");var l=void 0===r?1:r,c=$i(l,i,n,e,s,o,a,t);return 0===l&&Yi(c,c.children),Fi(c),c}function Hi(e,t,n,i,r){1&e&&Pi("Creating element vNodes using createComponentVNode is not allowed. Use Inferno.createVNode method."),(2&e)>0&&(e=t.prototype&&Di(t.prototype.render)?4:8);var o=t.defaultProps;if(!Mi(o))for(var s in n||(n={}),o)Ni(n[s])&&(n[s]=o[s]);if((8&e)>0){var a=t.defaultHooks;if(!Mi(a))if(r)for(var l in a)Ni(r[l])&&(r[l]=a[l]);else r=a}var c=$i(1,null,null,e,i,n,r,t),h=Ji.createVNode;return Di(h)&&h(c),c}function Wi(e,t){return $i(1,Mi(e)?"":e,null,16,t,null,null,null)}function Ui(e){var t=e.props;if(t){var n=e.flags;481&n&&(void 0!==t.children&&Mi(e.children)&&Yi(e,t.children),void 0!==t.className&&(e.className=t.className||null,t.className=void 0)),void 0!==t.key&&(e.key=t.key,t.key=void 0),void 0!==t.ref&&(e.ref=8&n?Bi(e.ref,t.ref):t.ref,t.ref=void 0)}return e}function Gi(e){var t,n=e.flags;if(14&n){var i,r=e.props;if(!Ti(r))for(var o in i={},r)i[o]=r[o];t=Hi(n,e.type,i,e.key,e.ref)}else 481&n?t=zi(n,e.type,e.className,e.children,e.childFlags,e.props,e.key,e.ref):16&n?t=Wi(e.children,e.key):1024&n&&(t=e);return t}function Ki(){return Wi("",null)}function Xi(e,t,n,i){for(var r=e.length;n<r;n++){var o=e[n];if(!Ai(o)){var s=i+Vi+n;if(Ci(o))Xi(o,t,0,s);else{if(Ei(o))o=Wi(o,s);else{var a=o.key,l=Ri(a)&&a[0]===Vi;Ti(o.dom)&&!l||(o=Gi(o)),Ti(a)||l?o.key=s:o.key=i+a}t.push(o)}}}}function Yi(e,t){var n,i=1;if(Ai(t))n=t;else if(Ri(t))i=2,n=Wi(t);else if(Oi(t))i=2,n=Wi(t+"");else if(Ci(t)){var r=t.length;if(0===r)n=null,i=1;else{(Object.isFrozen(t)||!0===t.$)&&(t=t.slice()),i=8;for(var o=0;o<r;o++){var s=t[o];if(Ai(s)||Ci(s)){n=n||t.slice(0,o),Xi(t,n,o,"");break}if(Ei(s))(n=n||t.slice(0,o)).push(Wi(s,Vi+o));else{var a=s.key,l=Ti(s.dom),c=Ti(a),h=!c&&Ri(a)&&a[0]===Vi;!l||c||h?(n=n||t.slice(0,o),l&&!h||(s=Gi(s)),(c||h)&&(s.key=Vi+o),n.push(s)):n&&n.push(s)}}(n=n||t).$=!0}}else n=t,Ti(t.dom)||(n=Gi(t)),i=2;return e.children=n,e.childFlags=i,Fi(e),e}var Ji={afterRender:null,beforeRender:null,createVNode:null,renderComplete:null},Qi="http://www.w3.org/1999/xlink",Zi="http://www.w3.org/XML/1998/namespace",er="http://www.w3.org/2000/svg",tr={"xlink:actuate":Qi,"xlink:arcrole":Qi,"xlink:href":Qi,"xlink:role":Qi,"xlink:show":Qi,"xlink:title":Qi,"xlink:type":Qi,"xml:base":Zi,"xml:lang":Zi,"xml:space":Zi},nr={},ir=[];function rr(e,t){e.appendChild(t)}function or(e,t,n){Mi(n)?rr(e,t):e.insertBefore(t,n)}function sr(e,t,n){e.replaceChild(t,n)}function ar(e){for(var t;void 0!==(t=e.shift());)t()}Object.freeze(nr);var lr={},cr={};function hr(e,t,n){var i=lr[e],r=n.$EV;t?(i||(cr[e]=function(e){var t=function(t){var n=t.type,i="click"===n||"dblclick"===n;if(i&&0!==t.button)return t.stopPropagation(),!1;t.stopPropagation=dr;var r={dom:document};Object.defineProperty(t,"currentTarget",{configurable:!0,get:function(){return r.dom}}),function(e,t,n,i){var r=function(e){return Di(e.composedPath)?e.composedPath()[0]:e.target}(e);for(;!Ti(r);){if(t&&r.disabled)return;var o=r.$EV;if(o){var s=o[n];if(s&&(i.dom=r,s.event?s.event(s.data,e):s(e),e.cancelBubble))return}r=r.parentNode}}(t,i,e,r)};return document.addEventListener(ur(e),t),t}(e),lr[e]=0),r||(r=n.$EV={}),r[e]||lr[e]++,r[e]=t):r&&r[e]&&(lr[e]--,1===i&&(document.removeEventListener(ur(e),cr[e]),cr[e]=null),r[e]=t)}function ur(e){return e.substr(2).toLowerCase()}function dr(){this.cancelBubble=!0,this.immediatePropagationStopped||this.stopImmediatePropagation()}function pr(e,t){var n=document.createElement("i");return n.innerHTML=t,n.innerHTML===e.innerHTML}function fr(e,t,n){if(e[t]){var i=e[t];i.event?i.event(i.data,n):i(n)}else{var r=t.toLowerCase();e[r]&&e[r](n)}}function gr(e,t){var n=function(n){n.stopPropagation();var i=this.$V;if(i){var r=i.props||nr,o=i.dom;if(Ri(e))fr(r,e,n);else for(var s=0;s<e.length;s++)fr(r,e[s],n);if(Di(t)){var a=this.$V,l=a.props||nr;t(l,o,!1,a)}}};return Object.defineProperty(n,"wrapped",{configurable:!1,enumerable:!1,value:!0,writable:!1}),n}function mr(e){return"checkbox"===e||"radio"===e}var yr=gr("onInput",br),vr=gr(["onClick","onChange"],br);function wr(e){e.stopPropagation()}function br(e,t){var n=e.type,i=e.value,r=e.checked,o=e.multiple,s=e.defaultValue,a=!Mi(i);n&&n!==t.type&&t.setAttribute("type",n),Mi(o)||o===t.multiple||(t.multiple=o),Mi(s)||a||(t.defaultValue=s+""),mr(n)?(a&&(t.value=i),Mi(r)||(t.checked=r)):a&&t.value!==i?(t.defaultValue=i,t.value=i):Mi(r)||(t.checked=r)}function xr(e,t){if("optgroup"===e.type){var n=e.children,i=e.childFlags;if(12&i)for(var r=0,o=n.length;r<o;r++)kr(n[r],t);else 2===i&&kr(n,t)}else kr(e,t)}function kr(e,t){var n=e.props||nr,i=e.dom;i.value=n.value,Ci(t)&&-1!==t.indexOf(n.value)||n.value===t?i.selected=!0:Mi(t)&&Mi(n.selected)||(i.selected=n.selected||!1)}wr.wrapped=!0;var _r=gr("onChange",Sr);function Sr(e,t,n,i){var r=Boolean(e.multiple);Mi(e.multiple)||r===t.multiple||(t.multiple=r);var o=i.childFlags;if(!(1&o)){var s=i.children,a=e.value;if(n&&Mi(a)&&(a=e.defaultValue),12&o)for(var l=0,c=s.length;l<c;l++)xr(s[l],a);else 2===o&&xr(s,a)}}var Cr=gr("onInput",Mr),Er=gr("onChange");function Mr(e,t,n){var i=e.value,r=t.value;if(Mi(i)){if(n){var o=e.defaultValue;Mi(o)||o===r||(t.defaultValue=o,t.value=o)}}else r!==i&&(t.defaultValue=i,t.value=i)}function Ar(e,t,n,i,r,o){64&e?br(i,n):256&e?Sr(i,n,r,t):128&e&&Mr(i,n,r),o&&(n.$V=t)}function Dr(e,t,n){64&e?function(e,t){mr(t.type)?(e.onchange=vr,e.onclick=wr):e.oninput=yr}(t,n):256&e?function(e){e.onchange=_r}(t):128&e&&function(e,t){e.oninput=Cr,t.onChange&&(e.onchange=Er)}(t,n)}function Rr(e){return e.type&&mr(e.type)?!Mi(e.checked):!Mi(e.value)}function Or(e,t){Tr(e),t&&e.dom&&(!function(e,t){e.removeChild(t)}(t,e.dom),e.dom=null)}function Tr(e){var t=e.flags;if(481&t){var n=e.ref,i=e.props;Di(n)&&n(null);var r=e.children,o=e.childFlags;if(12&o?Nr(r):2===o&&Tr(r),!Ti(i))for(var s in i)switch(s){case"onClick":case"onDblClick":case"onFocusIn":case"onFocusOut":case"onKeyDown":case"onKeyPress":case"onKeyUp":case"onMouseDown":case"onMouseMove":case"onMouseUp":case"onSubmit":case"onTouchEnd":case"onTouchMove":case"onTouchStart":hr(s,null,e.dom)}}else{var a=e.children;if(a)if(14&t){var l=e.ref;4&t?(Di(a.componentWillUnmount)&&a.componentWillUnmount(),Di(l)&&l(null),a.$UN=!0,a.$LI&&Tr(a.$LI)):(!Mi(l)&&Di(l.onComponentWillUnmount)&&l.onComponentWillUnmount(e.dom,e.props||nr),Tr(a))}else 1024&t&&Or(a,e.type)}}function Nr(e){for(var t=0,n=e.length;t<n;t++)Tr(e[t])}function Pr(e,t){Nr(t),e.textContent=""}function qr(e,t){switch(e){case"animationIterationCount":case"borderImageOutset":case"borderImageSlice":case"borderImageWidth":case"boxFlex":case"boxFlexGroup":case"boxOrdinalGroup":case"columnCount":case"fillOpacity":case"flex":case"flexGrow":case"flexNegative":case"flexOrder":case"flexPositive":case"flexShrink":case"floodOpacity":case"fontWeight":case"gridColumn":case"gridRow":case"lineClamp":case"lineHeight":case"opacity":case"order":case"orphans":case"stopOpacity":case"strokeDasharray":case"strokeDashoffset":case"strokeMiterlimit":case"strokeOpacity":case"strokeWidth":case"tabSize":case"widows":case"zIndex":case"zoom":return t;default:return t+"px"}}function Br(e,t,n,i,r,o,s){switch(e){case"onClick":case"onDblClick":case"onFocusIn":case"onFocusOut":case"onKeyDown":case"onKeyPress":case"onKeyUp":case"onMouseDown":case"onMouseMove":case"onMouseUp":case"onSubmit":case"onTouchEnd":case"onTouchMove":case"onTouchStart":hr(e,n,i);break;case"children":case"childrenType":case"className":case"defaultValue":case"key":case"multiple":case"ref":break;case"autoFocus":i.autofocus=!!n;break;case"allowfullscreen":case"autoplay":case"capture":case"checked":case"controls":case"default":case"disabled":case"hidden":case"indeterminate":case"loop":case"muted":case"novalidate":case"open":case"readOnly":case"required":case"reversed":case"scoped":case"seamless":case"selected":i[e]=!!n;break;case"defaultChecked":case"value":case"volume":if(o&&"value"===e)return;var a=Mi(n)?"":n;i[e]!==a&&(i[e]=a);break;case"dangerouslySetInnerHTML":var l=t&&t.__html||"",c=n&&n.__html||"";l!==c&&(Mi(c)||pr(i,c)||(Ti(s)||(12&s.childFlags?Nr(s.children):2===s.childFlags&&Tr(s.children),s.children=null,s.childFlags=1),i.innerHTML=c));break;default:"o"===e[0]&&"n"===e[1]?function(e,t,n){var i=e.toLowerCase();if(Di(t)||Mi(t)){var r=n[i];r&&r.wrapped||(n[i]=t)}else{var o=t.event;o&&Di(o)?n[i]=function(e,t){return function(n){e(t.data,n)}}(o,t):Pi('an event on a VNode "'+e+'". was not a function or a valid linkEvent.')}}(e,n,i):Mi(n)?i.removeAttribute(e):"style"===e?function(e,t,n){var i,r,o=n.style;if(Ri(t))o.cssText=t;else if(Mi(e)||Ri(e))for(i in t)r=t[i],o[i]=Oi(r)?qr(i,r):r;else{for(i in t)(r=t[i])!==e[i]&&(o[i]=Oi(r)?qr(i,r):r);for(i in e)Mi(t[i])&&(o[i]="")}}(t,n,i):r&&tr[e]?i.setAttributeNS(tr[e],e,n):i.setAttribute(e,n)}}function Lr(e,t,n,i,r){var o=!1,s=(448&t)>0;for(var a in s&&(o=Rr(n))&&Dr(t,i,n),n)Br(a,null,n[a],i,r,o,null);s&&Ar(t,e,i,n,!0,o)}function Ir(e,t,n,i){var r=new t(n,i);if(e.children=r,r.$V=e,r.$BS=!1,r.context=i,r.props===nr&&(r.props=n),r.$UN=!1,Di(r.componentWillMount)){if(r.$BR=!0,r.componentWillMount(),r.$PSS){var o=r.state,s=r.$PS;if(Ti(o))r.state=s;else for(var a in s)o[a]=s[a];r.$PSS=!1,r.$PS=null}r.$BR=!1}Di(Ji.beforeRender)&&Ji.beforeRender(r);var l,c=Fr(r.render(n,r.state,i),e);return Di(r.getChildContext)&&(l=r.getChildContext()),Mi(l)?r.$CX=i:r.$CX=Bi(i,l),Di(Ji.afterRender)&&Ji.afterRender(r),r.$LI=c,r}function Fr(e,t){return Ci(e)&&Pi("a valid Inferno VNode (or null) must be returned from a component render. You may have returned an array or an invalid object."),Ai(e)?e=Ki():Ei(e)?e=Wi(e,null):(e.dom&&(e=Gi(e)),14&e.flags&&(e.parentVNode=t)),e}function jr(e,t,n,i){var r=e.flags;return 481&r?$r(e,t,n,i):14&r?function(e,t,n,i,r){var o,s=e.type,a=e.props||nr,l=e.ref;if(r){var c=Ir(e,s,a,n);e.dom=o=jr(c.$LI,null,c.$CX,i),Hr(e,l,c),c.$UPD=!1}else{var h=Fr(s(a,n),e);e.children=h,e.dom=o=jr(h,null,n,i),Wr(a,l,o)}Ti(t)||rr(t,o);return o}(e,t,n,i,(4&r)>0):512&r||16&r?Vr(e,t):1024&r?(jr(e.children,e.type,n,!1),e.dom=Vr(Ki(),t)):void Pi("object"==typeof e?"mount() received an object that's not a valid VNode, you should stringify it first, fix createVNode flags or call normalizeChildren. Object: \""+JSON.stringify(e)+'".':'mount() expects a valid VNode, instead it received an object with the type "'+typeof e+'".')}function Vr(e,t){var n=e.dom=document.createTextNode(e.children);return Ti(t)||rr(t,n),n}function $r(e,t,n,i){var r=e.flags,o=e.children,s=e.props,a=e.className,l=e.ref,c=e.childFlags;i=i||(32&r)>0;var h=function(e,t){return t?document.createElementNS(er,e):document.createElement(e)}(e.type,i);if(e.dom=h,Mi(a)||""===a||(i?h.setAttribute("class",a):h.className=a),ji(e),Ti(t)||rr(t,h),!(1&c)){var u=!0===i&&"foreignObject"!==e.type;2===c?jr(o,h,n,u):12&c&&zr(o,h,n,u)}return Ti(s)||Lr(e,r,s,h,i),Ri(l)&&Pi('string "refs" are not supported in Inferno 1.0. Use callback "refs" instead.'),Di(l)&&Ur(h,l),h}function zr(e,t,n,i){for(var r=0,o=e.length;r<o;r++){var s=e[r];Ti(s.dom)||(e[r]=s=Gi(s)),jr(s,t,n,i)}}function Hr(e,t,n){Di(t)?t(n):Ei(t)?Pi('string "refs" are not supported in Inferno 1.0. Use callback "refs" instead.'):!Mi(t)&&"object"==typeof t&&4&e.flags&&Pi("functional component lifecycle events are not supported on ES2015 class components."),Di(n.componentDidMount)&&ir.push(function(e){return function(){e.$UPD=!0,e.componentDidMount(),e.$UPD=!1}}(n))}function Wr(e,t,n){Mi(t)||(Di(t.onComponentWillMount)&&t.onComponentWillMount(e),Di(t.onComponentDidMount)&&ir.push(function(e,t,n){return function(){return e.onComponentDidMount(t,n)}}(t,n,e)))}function Ur(e,t){ir.push((function(){return t(e)}))}function Gr(e,t,n,i){var r=e.children,o=e.props,s=e.className,a=e.flags,l=e.ref;if(i=i||(32&a)>0,1!==t.nodeType||t.tagName.toLowerCase()!==e.type){qi("Inferno hydration: Server-side markup doesn't match client-side markup or Initial render target is not empty");var c=$r(e,null,n,i);e.dom=c,sr(t.parentNode,c,t)}else{e.dom=t;var h=t.firstChild,u=e.childFlags;if(1&u)Ti(t.firstChild)||function(e,t){return Boolean(t&&t.dangerouslySetInnerHTML&&t.dangerouslySetInnerHTML.__html&&pr(e,t.dangerouslySetInnerHTML.__html))}(t,o)||(t.textContent="",448&a&&(t.defaultValue=""));else{for(var d=null;h;)d=h.nextSibling,8===h.nodeType&&("!"===h.data?t.replaceChild(document.createTextNode(""),h):t.removeChild(h)),h=d;if(h=t.firstChild,2===u)Ti(h)?jr(r,t,n,i):(d=h.nextSibling,Kr(r,h,n,i),h=d);else if(12&u)for(var p=0,f=r.length;p<f;p++){var g=r[p];Ti(h)?jr(g,t,n,i):(d=h.nextSibling,Kr(g,h,n,i),h=d)}for(;h;)d=h.nextSibling,t.removeChild(h),h=d}Ti(o)||Lr(e,a,o,t,i),Mi(s)?""!==t.className&&t.removeAttribute("class"):i?t.setAttribute("class",s):t.className=s,Di(l)?Ur(t,l):Ri(l)&&Pi('string "refs" are not supported in Inferno 1.0. Use callback "refs" instead.')}}function Kr(e,t,n,i){var r=e.flags;14&r?function(e,t,n,i,r){var o=e.type,s=e.ref,a=e.props||nr;if(r){var l=Ir(e,o,a,n),c=l.$LI;Kr(c,t,l.$CX,i),e.dom=c.dom,Hr(e,s,l),l.$UPD=!1}else{var h=Fr(o(a,n),e);Kr(h,t,n,i),e.children=h,e.dom=h.dom,Wr(a,s,t)}}(e,t,n,i,(4&r)>0):481&r?Gr(e,t,n,i):16&r?function(e,t){if(3!==t.nodeType){var n=Vr(e,null);e.dom=n,sr(t.parentNode,n,t)}else{var i=e.children;t.nodeValue!==i&&(t.nodeValue=i),e.dom=t}}(e,t):512&r?e.dom=t:(Pi('hydrate() expects a valid VNode, instead it received an object with the type "'+typeof e+'".'),Pi())}function Xr(e,t,n,i,r){Tr(e),sr(n,jr(t,null,i,r),e.dom)}function Yr(e,t,n,i,r){var o=0|t.flags;e.flags!==o||2048&o?Xr(e,t,n,i,r):481&o?function(e,t,n,i,r,o){var s=t.type;if(e.type!==s)Xr(e,t,n,i,r);else{var a,l=e.dom,c=e.props,h=t.props,u=!1,d=!1;if(t.dom=l,r=r||(32&o)>0,c!==h){var p=c||nr;if((a=h||nr)!==nr)for(var f in(u=(448&o)>0)&&(d=Rr(a)),a){var g=p[f],m=a[f];g!==m&&Br(f,g,m,l,r,d,e)}if(p!==nr)for(var y in p)a.hasOwnProperty(y)||Mi(p[y])||Br(y,p[y],null,l,r,d,e)}var v=e.children,w=t.children,b=t.ref,x=e.className,k=t.className;ji(t),4096&o?function(e,t){e.textContent!==t.children&&(e.textContent=t.children)}(l,w):Jr(e.childFlags,t.childFlags,v,w,l,i,r&&"foreignObject"!==s),u&&Ar(o,t,l,a,!1,d),x!==k&&(Mi(k)?l.removeAttribute("class"):r?l.setAttribute("class",k):l.className=k),Di(b)&&e.ref!==b?Ur(l,b):Ri(b)&&Pi('string "refs" are not supported in Inferno 1.0. Use callback "refs" instead.')}}(e,t,n,i,r,o):14&o?function(e,t,n,i,r,o){var s=t.type,a=e.key,l=t.key;if(e.type!==s||a!==l)Xr(e,t,n,i,r);else{var c=t.props||nr;if(o){var h=e.children;h.$UPD=!0,h.$V=t,Qr(h,h.state,t,c,n,i,r,!1,!1),h.$UPD=!1}else{var u=!0,d=e.props,p=t.ref,f=!Mi(p),g=e.children;if(t.dom=e.dom,t.children=g,f&&Di(p.onComponentShouldUpdate)&&(u=p.onComponentShouldUpdate(d,c)),!1!==u){f&&Di(p.onComponentWillUpdate)&&p.onComponentWillUpdate(d,c);var m=s(c,i);m!==ki&&(Yr(g,m=Fr(m,t),n,i,r),t.children=m,t.dom=m.dom,f&&Di(p.onComponentDidUpdate)&&p.onComponentDidUpdate(d,c))}else 14&g.flags&&(g.parentVNode=t)}}}(e,t,n,i,r,(4&o)>0):16&o?function(e,t){var n=t.children,i=e.dom;n!==e.children&&(i.nodeValue=n);t.dom=i}(e,t):512&o?t.dom=e.dom:function(e,t,n){var i=e.type,r=t.type,o=t.children;if(Jr(e.childFlags,t.childFlags,e.children,o,i,n,!1),t.dom=e.dom,i!==r&&!Ai(o)){var s=o.dom;i.removeChild(s),r.appendChild(s)}}(e,t,i)}function Jr(e,t,n,i,r,o,s){switch(e){case 2:switch(t){case 2:Yr(n,i,r,o,s);break;case 1:Or(n,r);break;default:Or(n,r),zr(i,r,o,s)}break;case 1:switch(t){case 2:jr(i,r,o,s);break;case 1:break;default:zr(i,r,o,s)}break;default:if(12&t){var a=n.length,l=i.length;0===a?l>0&&zr(i,r,o,s):0===l?Pr(r,n):8===t&&8===e?function(e,t,n,i,r,o,s){var a,l,c=o-1,h=s-1,u=0,d=e[u],p=t[u];e:{for(;d.key===p.key;){if(p.dom&&(t[u]=p=Gi(p)),Yr(d,p,n,i,r),e[u]=p,++u>c||u>h)break e;d=e[u],p=t[u]}for(d=e[c],p=t[h];d.key===p.key;){if(p.dom&&(t[h]=p=Gi(p)),Yr(d,p,n,i,r),e[c]=p,h--,u>--c||u>h)break e;d=e[c],p=t[h]}}if(u>c){if(u<=h)for(var f=(l=h+1)<s?t[l].dom:null;u<=h;)(p=t[u]).dom&&(t[u]=p=Gi(p)),u++,or(n,jr(p,null,i,r),f)}else if(u>h)for(;u<=c;)Or(e[u++],n);else{var g=u,m=u,y=c-u+1,v=h-u+1,w=[];for(a=0;a<v;a++)w.push(0);var b=y===o,x=!1,k=0,_=0;if(s<4||(y|v)<32)for(a=g;a<=c;a++)if(d=e[a],_<v){for(u=m;u<=h;u++)if(p=t[u],d.key===p.key){if(w[u-m]=a+1,b)for(b=!1;a>g;)Or(e[g++],n);k>u?x=!0:k=u,p.dom&&(t[u]=p=Gi(p)),Yr(d,p,n,i,r),_++;break}!b&&u>h&&Or(d,n)}else b||Or(d,n);else{var S={};for(a=m;a<=h;a++)S[t[a].key]=a;for(a=g;a<=c;a++)if(d=e[a],_<v)if(void 0!==(u=S[d.key])){if(b)for(b=!1;a>g;)Or(e[g++],n);p=t[u],w[u-m]=a+1,k>u?x=!0:k=u,p.dom&&(t[u]=p=Gi(p)),Yr(d,p,n,i,r),_++}else b||Or(d,n);else b||Or(d,n)}if(b)Pr(n,e),zr(t,n,i,r);else if(x){var C=function(e){var t,n,i,r,o,s=e.slice(),a=[0],l=e.length;for(t=0;t<l;t++){var c=e[t];if(0!==c){if(e[n=a[a.length-1]]<c){s[t]=n,a.push(t);continue}for(i=0,r=a.length-1;i<r;)e[a[o=(i+r)/2|0]]<c?i=o+1:r=o;c<e[a[i]]&&(i>0&&(s[t]=a[i-1]),a[i]=t)}}i=a.length,r=a[i-1];for(;i-- >0;)a[i]=r,r=s[r];return a}(w);for(u=C.length-1,a=v-1;a>=0;a--)0===w[a]?((p=t[k=a+m]).dom&&(t[k]=p=Gi(p)),l=k+1,or(n,jr(p,null,i,r),l<s?t[l].dom:null)):u<0||a!==C[u]?(l=(k=a+m)+1,or(n,(p=t[k]).dom,l<s?t[l].dom:null)):u--}else if(_!==v)for(a=v-1;a>=0;a--)0===w[a]&&((p=t[k=a+m]).dom&&(t[k]=p=Gi(p)),l=k+1,or(n,jr(p,null,i,r),l<s?t[l].dom:null))}}(n,i,r,o,s,a,l):function(e,t,n,i,r,o,s){for(var a,l,c=o>s?s:o,h=0;h<c;h++)a=t[h],l=e[h],a.dom&&(a=t[h]=Gi(a)),Yr(l,a,n,i,r),e[h]=a;if(o<s)for(h=c;h<s;h++)(a=t[h]).dom&&(a=t[h]=Gi(a)),jr(a,n,i,r);else if(o>s)for(h=c;h<o;h++)Or(e[h],n)}(n,i,r,o,s,a,l)}else 1===t?Pr(r,n):2===t&&(Pr(r,n),jr(i,r,o,s))}}function Qr(e,t,n,i,r,o,s,a,l){var c,h=e.state,u=e.props;if(n.children=e,e.$UN)qi("Inferno Error: Can only update a mounted or mounting component. This usually means you called setState() or forceUpdate() on an unmounted component. This is a no-op.");else{if(u!==i||i===nr){if(!l&&Di(e.componentWillReceiveProps)){if(e.$BR=!0,e.componentWillReceiveProps(i,o),e.$UN)return;e.$BR=!1}e.$PSS&&(t=Bi(t,e.$PS),e.$PSS=!1,e.$PS=null)}var d=Boolean(e.shouldComponentUpdate);if(a||!d||d&&e.shouldComponentUpdate(i,t,o)){Di(e.componentWillUpdate)&&(e.$BS=!0,e.componentWillUpdate(i,t,o),e.$BS=!1),e.props=i,e.state=t,e.context=o,Di(Ji.beforeRender)&&Ji.beforeRender(e),c=e.render(i,t,o),Di(Ji.afterRender)&&Ji.afterRender(e);var p,f=c!==ki;if(Di(e.getChildContext)&&(p=e.getChildContext()),p=Mi(p)?o:Bi(o,p),e.$CX=p,f){var g=e.$LI,m=Fr(c,n);Yr(g,m,r,p,s),e.$LI=m,Di(e.componentDidUpdate)&&e.componentDidUpdate(u,h)}}else e.props=i,e.state=t,e.context=o;n.dom=e.$LI.dom}}Si&&null===document.body&&qi('Inferno warning: you cannot initialize inferno without "document.body". Wait on "DOMContentLoaded" event, add script to bottom of body, or use async/defer attributes on script tag.');var Zr=Si?document.body:null;function eo(e,t,n){if(Zr===t&&Pi('you cannot render() to the "document.body". Use an empty element as a container instead.'),e!==ki){var i=t.$V;return Mi(i)?Ai(e)||(e.dom&&(e=Gi(e)),Ti(t.firstChild)?(jr(e,t,nr,!1),t.$V=e):function(e,t,n){var i=t.firstChild;if(!Ti(i))for(Ai(e)||Kr(e,i,nr,!1),i=t.firstChild;i=i.nextSibling;)t.removeChild(i);ir.length>0&&ar(ir),t.$V=e,Di(n)&&n()}(e,t),i=e):Mi(e)?(Or(i,t),t.$V=null):(e.dom&&(e=Gi(e)),Yr(i,e,t,nr,!1),i=t.$V=e),ir.length>0&&ar(ir),Di(n)&&n(),Di(Ji.renderComplete)&&Ji.renderComplete(i),i&&14&i.flags?i.children:void 0}}var to="undefined"==typeof Promise?null:Promise.resolve(),no="undefined"==typeof requestAnimationFrame?setTimeout:requestAnimationFrame.bind(window);function io(e,t,n,i){Di(t)&&(t=t(e.state,e.props,e.context));var r,o=e.$PS;if(Mi(o))e.$PS=t;else for(var s in t)o[s]=t[s];if(e.$PSS||e.$BR)e.$PSS=!0,e.$BR&&Di(n)&&ir.push(n.bind(e));else if(e.$UPD){var a=e.$QU;Ti(a)&&(a=e.$QU=[],r=function(e,t){return function(){e.$QU=null,e.$UPD=!0,ro(e,!1,(function(){for(var n=0,i=t.length;n<i;n++)t[n].call(e)})),e.$UPD=!1}}(e,a),to?to.then(r):no(r)),Di(n)&&a.push(n)}else e.$PSS=!0,e.$UPD=!0,ro(e,i,n),e.$UPD=!1}function ro(e,t,n){if(!e.$UN){if(t||!e.$BR){e.$PSS=!1;var i=e.$PS,r=Bi(e.state,i),o=e.props,s=e.context;e.$PS=null;var a=e.$V,l=e.$LI;if(Qr(e,r,a,o,l.dom&&l.dom.parentNode,s,(32&a.flags)>0,t,!0),e.$UN)return;if(!(1024&e.$LI.flags))for(var c=e.$LI.dom;!Ti(a=a.parentVNode);)(14&a.flags)>0&&(a.dom=c);ir.length>0&&ar(ir)}else e.state=e.$PS,e.$PS=null;Di(n)&&n.call(e)}}var oo=function(){function e(e,t){this.state=null,this.props=void 0,this.context=void 0,this.refs=void 0,this.$BR=!1,this.$BS=!0,this.$PSS=!1,this.$PS=null,this.$LI=null,this.$V=null,this.$UN=!1,this.$CX=null,this.$UPD=!0,this.$QU=null,this.props=e||nr,this.context=t||nr}var t=e.prototype;return t.forceUpdate=function(e){this.$UN||io(this,{},e,!0)},t.setState=function(e,t){this.$UN||(this.$BS?Pi("cannot update state via setState() in componentWillUpdate() or constructor."):io(this,e,t,!1))},t.render=function(e,t,n){},e}();oo.defaultProps=void 0;var so=function(){};console.info("Inferno is in development mode."),-1===(so.name||so.toString()).indexOf("testFn")&&qi("It looks like you're using a minified copy of the development build of Inferno. When deploying Inferno apps to production, make sure to use the production build which skips development warnings and is faster. See http://infernojs.org for more details.");var ao='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 14.02 5.57" width="53" height="21" style="vertical-align:middle"><path fill="#000000" d="M1.88.92v.14c0 .41-.13.68-.4.8.33.14.46.44.46.86v.33c0 .61-.33.95-.95.95H0V0h.95c.65 0 .93.3.93.92zM.63.57v1.06h.24c.24 0 .38-.1.38-.43V.98c0-.28-.1-.4-.32-.4zm0 1.63v1.22h.36c.2 0 .32-.1.32-.39v-.35c0-.37-.12-.48-.4-.48H.63zM4.18.99v.52c0 .64-.31.98-.94.98h-.3V4h-.62V0h.92c.63 0 .94.35.94.99zM2.94.57v1.35h.3c.2 0 .3-.09.3-.37v-.6c0-.29-.1-.38-.3-.38h-.3zm2.89 2.27L6.25 0h.88v4h-.6V1.12L6.1 3.99h-.6l-.46-2.82v2.82h-.55V0h.87zM8.14 1.1V4h-.56V0h.79L9 2.4V0h.56v4h-.64zm2.49 2.29v.6h-.6v-.6zM12.12 1c0-.63.33-1 .95-1 .61 0 .95.37.95 1v2.04c0 .64-.34 1-.95 1-.62 0-.95-.37-.95-1zm.62 2.08c0 .28.13.39.33.39s.32-.1.32-.4V.98c0-.29-.12-.4-.32-.4s-.33.11-.33.4z"/><path fill="#000000" d="M0 4.53h14.02v1.04H0zM11.08 0h.63v.62h-.63zm.63 4V1h-.63v2.98z"/></svg>';
10 */function lo(e){var t=Lt('<a href="http://bpmn.io" target="_blank" class="bjs-powered-by" title="Powered by bpmn.io" style="position: absolute; bottom: 15px; right: 15px; z-index: 100;">'+ao+"</a>");e.appendChild(t),Rt.bind(t,"click",(function(e){!function(){uo||(uo=Lt(po),Nt.bind(uo,".backdrop","click",(function(e){document.body.removeChild(uo)})));document.body.appendChild(uo)}(),e.preventDefault()}))}class co extends oo{constructor(e,t){super(e,t),this.node=null}componentDidMount(){lo(this.node)}render(){return zi(1,"div",null,null,1,null,null,(e=>this.node=e))}}function ho(e){return e.join(";")}var uo,po='<div class="bjs-powered-by-lightbox" style="'+ho(["z-index: 1001","position: fixed","top: 0","left: 0","right: 0","bottom: 0"])+'"><div class="backdrop" style="'+ho(["width: 100%","height: 100%","background: rgba(40,40,40,0.2)"])+'"></div><div class="notice" style="'+ho(["position: absolute","left: 50%","top: 40%","transform: translate(-50%)","width: 260px","padding: 10px","background: white","box-shadow: 0 1px 4px rgba(0,0,0,0.3)","font-family: Helvetica, Arial, sans-serif","font-size: 14px","display: flex","line-height: 1.3"])+'"><a href="https://bpmn.io" target="_blank" rel="noopener" style="margin: 15px 20px 15px 10px; align-self: center;">'+ao+'</a><span>Web-based tooling for BPMN, DMN and CMMN diagrams powered by <a href="https://bpmn.io" target="_blank" rel="noopener">bpmn.io</a>.</span></div></div>';var fo=function(e,t){return e(t={exports:{}},t.exports),t.exports}((function(e){var t=e.exports=function(e,n){if(n||(n=16),void 0===e&&(e=128),e<=0)return"0";for(var i=Math.log(Math.pow(2,e))/Math.log(n),r=2;i===1/0;r*=2)i=Math.log(Math.pow(2,e/r))/Math.log(n)*r;var o=i-Math.floor(i),s="";for(r=0;r<Math.floor(i);r++){s=Math.floor(Math.random()*n).toString(n)+s}if(o){var a=Math.pow(n,o);s=Math.floor(Math.random()*a).toString(n)+s}var l=parseInt(s,n);return l!==1/0&&l>=Math.pow(2,e)?t(e,n):s};t.rack=function(e,n,i){var r=function(r){var s=0;do{if(s++>10){if(!i)throw new Error("too many ID collisions, use more bits");e+=i}var a=t(e,n)}while(Object.hasOwnProperty.call(o,a));return o[a]=r,a},o=r.hats={};return r.get=function(e){return r.hats[e]},r.set=function(e,t){return r.hats[e]=t,r},r.bits=e||128,r.base=n||16,r}}));function go(e){if(!(this instanceof go))return new go(e);e=e||[128,36,1],this._seed=e.length?fo.rack(e[0],e[1],e[2]):e}go.prototype.next=function(e){return this._seed(e||!0)},go.prototype.nextPrefixed=function(e,t){var n;do{n=e+this.next(!0)}while(this.assigned(n));return this.claim(n,t),n},go.prototype.claim=function(e,t){this._seed.set(e,t||!0)},go.prototype.assigned=function(e){return this._seed.get(e)||!1},go.prototype.unclaim=function(e){delete this._seed.hats[e]},go.prototype.clear=function(){var e,t=this._seed.hats;for(e in t)this.unclaim(e)};var mo=new go,yo="hsl(225, 10%, 15%)";function vo(e,t,n,i,o,s){sn.call(this,t);var a=mo.next(),l=i.computeStyle,c={},h=e&&e.defaultFillColor||"white",u=e&&e.defaultStrokeColor||yo,d=e&&e.defaultLabelColor;function p(e,t,n){var i=e+"-"+bo(t)+"-"+bo(n)+"-"+a;return c[i]||function(e,t,n,i){if("association-start"===t){var r=vn("path");un(r,{d:"M 11 5 L 1 10 L 11 15"}),f(e,{element:r,attrs:{fill:"none",stroke:i,strokeWidth:1.5},ref:{x:1,y:10},scale:.5})}else if("association-end"===t){var o=vn("path");un(o,{d:"M 1 5 L 11 10 L 1 15"}),f(e,{element:o,attrs:{fill:"none",stroke:i,strokeWidth:1.5},ref:{x:12,y:10},scale:.5})}else if("information-requirement-end"===t){var s=vn("path");un(s,{d:"M 1 5 L 11 10 L 1 15 Z"}),f(e,{element:s,attrs:{fill:i,stroke:"none"},ref:{x:11,y:10},scale:1})}else if("knowledge-requirement-end"===t){var a=vn("path");un(a,{d:"M 1 3 L 11 10 L 1 17"}),f(e,{element:a,attrs:{fill:"none",stroke:i,strokeWidth:2},ref:{x:11,y:10},scale:.8})}else if("authority-requirement-end"===t){var l=vn("circle");un(l,{cx:3,cy:3,r:3}),f(e,{element:l,attrs:{fill:i,stroke:"none"},ref:{x:3,y:3},scale:.9})}}(i,e,0,n),"url(#"+i+")"}function f(e,t){var n=b({strokeWidth:1,strokeLinecap:"round",strokeDasharray:"none"},t.attrs),i=t.ref||{x:0,y:0},r=t.scale||1;"none"===n.strokeDasharray&&(n.strokeDasharray=[1e4,1]);var o=vn("marker");un(t.element,n),an(o,t.element),un(o,{id:e,viewBox:"0 0 20 20",refX:i.x,refY:i.y,markerWidth:20*r,markerHeight:20*r,orient:"auto"});var a=It("defs",s._svg);a||(a=vn("defs"),an(s._svg,a)),an(a,o),c[e]=o}function g(e,t,n,i,o,s){r(o)&&(s=o,o=0),o=o||0,s=l(s,{stroke:yo,strokeWidth:2,fill:"white"});var a=vn("rect");return un(a,{x:o,y:o,width:t-2*o,height:n-2*o,rx:i,ry:i}),un(a,s),an(e,a),a}function m(e,t,n){var i=o.createText(t||"",n);return bt(i,"class","djs-label"),an(e,i),i}function y(e,t,n,i){var r=function(e){return vi(e).name}(t);return m(e,r,i=b({box:t,align:n,padding:5,style:{fill:_o(t,d,u)}},i))}function v(e,t,n){n=l(n,["no-fill"],{strokeWidth:2,stroke:yo});var i=vn("path");return un(i,{d:t}),un(i,n),an(e,i),i}var w={"dmn:Decision":function(e,t){var n=g(e,t.width,t.height,0,{stroke:xo(t,u),fill:ko(t,h)});return y(e,t,"center-middle"),n},"dmn:KnowledgeSource":function(e,t){var i=v(e,n.getScaledPath("KNOWLEDGE_SOURCE",{xScaleFactor:1.021,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:0,my:.075}}),{strokeWidth:2,fill:ko(t,h),stroke:xo(t,u)});return y(e,t,"center-middle"),i},"dmn:BusinessKnowledgeModel":function(e,t){var i=v(e,n.getScaledPath("BUSINESS_KNOWLEDGE_MODEL",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:0,my:.3}}),{strokeWidth:2,fill:ko(t,h),stroke:xo(t,u)});return y(e,t,"center-middle"),i},"dmn:InputData":function(e,t){var n=g(e,t.width,t.height,22,{stroke:xo(t,u),fill:ko(t,h)});return y(e,t,"center-middle"),n},"dmn:TextAnnotation":function(e,t){var i=g(e,t.width,t.height,0,0,{fill:"none",stroke:"none"});return v(e,n.getScaledPath("TEXT_ANNOTATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:0,my:0}}),{stroke:xo(t,u)}),m(e,wo(t).text||"",{style:{fill:_o(t,d,u)},box:t,align:"left-top",padding:5}),i},"dmn:Association":function(e,t){var n=wo(t),i=ko(t,h),r=xo(t,u),o={stroke:r,strokeDasharray:"0.5, 5",strokeLinecap:"round",strokeLinejoin:"round",fill:"none"};return"One"!==n.associationDirection&&"Both"!==n.associationDirection||(o.markerEnd=p("association-end",i,r)),"Both"===n.associationDirection&&(o.markerStart=p("association-start",i,r)),x(e,t.waypoints,o)},"dmn:InformationRequirement":function(e,t){var n=ko(t,h),i=xo(t,u),r={stroke:i,strokeWidth:1,strokeLinecap:"round",strokeLinejoin:"round",markerEnd:p("information-requirement-end",n,i)};return x(e,t.waypoints,r)},"dmn:KnowledgeRequirement":function(e,t){var n=ko(t,h),i=xo(t,u),r={stroke:i,strokeWidth:1,strokeDasharray:5,strokeLinecap:"round",strokeLinejoin:"round",markerEnd:p("knowledge-requirement-end",n,i)};return x(e,t.waypoints,r)},"dmn:AuthorityRequirement":function(e,t){var n=ko(t,h),i=xo(t,u),r={stroke:i,strokeWidth:1.5,strokeDasharray:5,strokeLinecap:"round",strokeLinejoin:"round",markerEnd:p("authority-requirement-end",n,i)};return x(e,t.waypoints,r)}};function x(e,t,n){var i=Bn(t,n=l(n,["no-fill"],{stroke:yo,strokeWidth:2,fill:"none"}));return an(e,i),i}this.canRender=function(e){return yi(e,"dmn:DMNElement")||yi(e,"dmn:InformationRequirement")||yi(e,"dmn:KnowledgeRequirement")||yi(e,"dmn:AuthorityRequirement")},this.drawShape=function(e,t){var n=w[t.type];return n?n(e,t):sn.prototype.drawShape.apply(this,[e,t])},this.drawConnection=function(e,t){var n=t.type,i=w[n];return i?i(e,t):sn.prototype.drawConnection.apply(this,[e,t])}}function wo(e){return e.businessObject}function bo(e){return e.replace(/[^0-9a-zA-z]+/g,"_")}function xo(e,t){return t}function ko(e,t){return t}function _o(e,t,n){return t||xo(0,n)}rn(vo,sn),vo.$inject=["config.drdRenderer","eventBus","pathMap","styles","textRenderer","canvas"];var So=0,Co={width:150,height:50};function Eo(e,t){var n;t.textContent=e;try{var i,r=""===e;return t.textContent=r?"dummy":e,i={width:(n=t.getBBox()).width+2*n.x,height:n.height},r&&(i.width=0),i}catch(e){return console.log(e),{width:0,height:0}}}function Mo(e,t,n){for(var i,r=e.shift(),o=r;;){if((i=Eo(o,n)).width=o?i.width:0," "===o||""===o||i.width<Math.round(t)||o.length<2)return Ao(e,o,r,i);o=Ro(o,i.width,t)}}function Ao(e,t,n,i){if(t.length<n.length){var r=n.slice(t.length).trim();e.unshift(r)}return{width:i.width,height:i.height,text:t}}var Do="­";function Ro(e,t,n){var i=Math.max(e.length*(n/t),1),r=function(e,t){var n,i=e.split(/(\s|-|\u00AD)/g),r=[],o=0;if(i.length>1)for(;n=i.shift();){if(!(n.length+o<t)){"-"!==n&&n!==Do||r.pop();break}r.push(n),o+=n.length}var s=r[r.length-1];return s&&s===Do&&(r[r.length-1]="-"),r.join("")}(e,i);return r||(r=e.slice(0,Math.max(Math.round(i-1),1))),r}function Oo(e){this._config=b({},{size:Co,padding:So,style:{},align:"center-top"},e||{})}Oo.prototype.createText=function(e,t){return this.layoutText(e,t).element},Oo.prototype.getDimensions=function(e,t){return this.layoutText(e,t).dimensions},Oo.prototype.layoutText=function(e,t){var n=b({},this._config.size,t.box),i=b({},this._config.style,t.style),o=function(e){var t=e.split("-");return{horizontal:t[0]||"center",vertical:t[1]||"top"}}(t.align||this._config.align),s=function(e){return r(e)?b({top:0,left:0,right:0,bottom:0},e):{top:e,left:e,right:e,bottom:e}}(void 0!==t.padding?t.padding:this._config.padding),a=t.fitBox||!1,l=function(e){if("fontSize"in e&&"lineHeight"in e)return e.lineHeight*parseInt(e.fontSize,10)}(i),c=e.split(/\u00AD?\r?\n/),h=[],p=n.width-s.left-s.right,f=vn("text");for(un(f,{x:0,y:0}),un(f,i),an(function(){var e=document.getElementById("helper-svg");return e||(un(e=vn("svg"),{id:"helper-svg"}),wt(e,{visibility:"hidden",position:"fixed",width:0,height:0}),document.body.appendChild(e)),e}(),f);c.length;)h.push(Mo(c,p,f));"middle"===o.vertical&&(s.top=s.bottom=0);var g=d(h,(function(e,t,n){return e+(l||t.height)}),0)+s.top+s.bottom,m=d(h,(function(e,t,n){return t.width>e?t.width:e}),0),y=s.top;"middle"===o.vertical&&(y+=(n.height-g)/2),y-=(l||h[0].height)/4;var v=vn("text");return un(v,i),u(h,(function(e){var t;switch(y+=l||e.height,o.horizontal){case"left":t=s.left;break;case"right":t=(a?m:p)-s.right-e.width;break;default:t=Math.max(((a?m:p)-e.width)/2+s.left,0)}var n=vn("tspan");un(n,{x:t,y:y}),n.textContent=e.text,an(v,n)})),An(f),{dimensions:{width:m,height:g},element:v}};function To(e){var t=b({fontFamily:"Arial, sans-serif",fontSize:12,fontWeight:"normal",lineHeight:1.2},e&&e.defaultStyle||{}),n=parseInt(t.fontSize,10)-1,i=b({},t,{fontSize:n},e&&e.externalStyle||{}),r=new Oo({style:t});this.getExternalLabelBounds=function(e,t){var n=r.getDimensions(t,{box:{width:90,height:30,x:e.width/2+e.x,y:e.height/2+e.y},style:i});return{x:Math.round(e.x+e.width/2-n.width/2),y:Math.round(e.y),width:Math.ceil(n.width),height:Math.ceil(n.height)}},this.getTextAnnotationBounds=function(e,n){var i=r.getDimensions(n,{box:e,style:t,align:"left-top",padding:5});return{x:e.x,y:e.y,width:e.width,height:Math.max(30,Math.round(i.height))}},this.createText=function(e,t){return r.createText(e,t||{})},this.getDefaultStyle=function(){return t},this.getExternalStyle=function(){return i}}To.$inject=["config.textRenderer"];var No=/\{([^{}]+)\}/g,Po=/(?:(?:^|\.)(.+?)(?=\[|\.|$|\()|\[('|")(.+?)\2\])(\(\))?/g;var qo={__init__:["drdRenderer"],drdRenderer:["type",vo],textRenderer:["type",To],pathMap:["type",function(){this.pathMap={KNOWLEDGE_SOURCE:{d:"m {mx},{my} l 0,{e.y0} c {e.x0},{e.y1} {e.x1},-{e.y2} {e.x2},-{e.y3} c {e.x3},-{e.y4} {e.x4},{e.y5} {e.x5},{e.y6} l 0,-{e.y7}z",width:100,height:65,widthElements:[29.8,48.4,67.2,12.2,19.8,30.8],heightElements:[55.3,19.7,4.2,6.7,2.3,1.6,6.2,54.6]},BUSINESS_KNOWLEDGE_MODEL:{d:"m {mx},{my} l {e.x0},-{e.y0} l {e.x1},0 l 0,{e.y1} l -{e.x2},{e.y2} l -{e.x3},0z",width:125,height:45,widthElements:[13.8,109.2,13.8,109.1],heightElements:[13.2,29.8,13.2]},TEXT_ANNOTATION:{d:"m {mx}, {my} m 10,0 l -10,0 l 0,{e.y0} l 10,0",width:10,height:30,widthElements:[10],heightElements:[30]}},this.getRawPath=function(e){return this.pathMap[e].d},this.getScaledPath=function(e,t){var n,i,r=this.pathMap[e];t.abspos?(n=t.abspos.x,i=t.abspos.y):(n=t.containerWidth*t.position.mx,i=t.containerHeight*t.position.my);var o={};if(t.position){for(var s=t.containerHeight/r.height*t.yScaleFactor,a=t.containerWidth/r.width*t.xScaleFactor,l=0;l<r.heightElements.length;l++)o["y"+l]=r.heightElements[l]*s;for(var c=0;c<r.widthElements.length;c++)o["x"+c]=r.widthElements[c]*a}var h,u,d=(h=r.d,u={mx:n,my:i,e:o},String(h).replace(No,(function(e,t){return function(e,t,n){var i=n;return t.replace(Po,(function(e,t,n,r,o){t=t||r,i&&(t in i&&(i=i[t]),"function"==typeof i&&o&&(i=i()))})),i=(null==i||i==n?e:i)+""}(e,t,u)})));return d}}]};function Bo(e,t,n,i){this._eventBus=e,this._canvas=t,this._elementRegistry=i,this._elementFactory=n}function Lo(e,t){return b({id:e.id,type:e.$type,businessObject:e},t)}function Io(e){return e.split("#").pop()}Bo.$inject=["eventBus","canvas","elementFactory","elementRegistry"],Bo.prototype.root=function(e){var t=this._elementFactory.createRoot(Lo(e));return this._canvas.setRootElement(t),t},Bo.prototype.add=function(e){var t,n,i,r,o,s,a=this._elementFactory,l=this._canvas,c=this._eventBus,h=e.di;if(h.$instanceOf("dmndi:DMNShape"))s=h.bounds,o=Lo(e,{x:Math.round(s.x),y:Math.round(s.y),width:Math.round(s.width),height:Math.round(s.height)}),t=a.createShape(o),l.addShape(t),c.fire("drdElement.added",{element:t,di:h});else{if(!h.$instanceOf("dmndi:DMNEdge"))throw new Error("unknown di for element "+e.id);n=function(e){var t=e.waypoint;if(t)return function(e,t){let n=[];return u(e,(function(e,i){n.push(t(e,i))})),n}(t,(function(e){var t={x:e.x,y:e.y};return b({original:t},t)}))}(h),i=this._getSource(e),r=this._getTarget(e),i&&r&&(o=Lo(e,{hidden:!1,source:i,target:r,waypoints:n}),t=a.createConnection(o),l.addConnection(t),c.fire("drdElement.added",{element:t,di:h}))}return t},Bo.prototype._getSource=function(e){var t,n;if(yi(e,"dmn:Association")?n=e.sourceRef:yi(e,"dmn:InformationRequirement")?n=e.requiredDecision||e.requiredInput:yi(e,"dmn:KnowledgeRequirement")?n=e.requiredKnowledge:yi(e,"dmn:AuthorityRequirement")&&(n=e.requiredDecision||e.requiredInput||e.requiredAuthority),n&&(t=n.href),t)return this._getShape(Io(t))},Bo.prototype._getTarget=function(e){return yi(e,"dmn:Association")?e.targetRef&&this._getShape(Io(e.targetRef.href)):this._getShape(e.$parent.id)},Bo.prototype._getShape=function(e){return this._elementRegistry.get(e)};var Fo={__depends__:[qo,{drdImporter:["type",Bo]}]};var jo={translate:["value",function(e,t){return t=t||{},e.replace(/{([^}]+)}/g,(function(e,n){return t[n]||"{"+n+"}"}))}]};function Vo(e){return e.originalEvent||e.srcEvent}function $o(e,t){return(Vo(e)||e).button===t}function zo(e){return $o(e,0)}function Ho(e){return!0}function Wo(e){return zo(e)||function(e){return $o(e,1)}(e)}function Uo(e,t,n){var i=this;function r(n,i,r){var o,s;(function(e,t){var n=l[e]||zo;return!n(t)})(n,i)||(r?s=t.getGraphics(r):(o=i.delegateTarget||i.target)&&(s=o,r=t.get(s)),s&&r&&!1===e.fire(n,{element:r,gfx:s,originalEvent:i})&&(i.stopPropagation(),i.preventDefault()))}var o={};function s(e){return o[e]}var a={click:"element.click",contextmenu:"element.contextmenu",dblclick:"element.dblclick",mousedown:"element.mousedown",mousemove:"element.mousemove",mouseover:"element.hover",mouseout:"element.out",mouseup:"element.mouseup"},l={"element.contextmenu":Ho,"element.mousedown":Wo,"element.mouseup":Wo,"element.click":Wo,"element.dblclick":Wo};var c="svg, .djs-element";function h(e,t,n,i){var s=o[n]=function(e){r(n,e)};i&&(l[n]=i),s.$delegate=Nt.bind(e,c,t,s)}function d(e,t,n){var i=s(n);i&&Nt.unbind(e,t,i.$delegate)}e.on("canvas.destroy",(function(e){!function(e){u(a,(function(t,n){d(e,n,t)}))}(e.svg)})),e.on("canvas.init",(function(e){!function(e){u(a,(function(t,n){h(e,n,t)}))}(e.svg)})),e.on(["shape.added","connection.added"],(function(t){var n=t.element,i=t.gfx;e.fire("interactionEvents.createHit",{element:n,gfx:i})})),e.on(["shape.changed","connection.changed"],500,(function(t){var n=t.element,i=t.gfx;e.fire("interactionEvents.updateHit",{element:n,gfx:i})})),e.on("interactionEvents.createHit",500,(function(e){var t=e.element,n=e.gfx;i.createDefaultHit(t,n)})),e.on("interactionEvents.updateHit",(function(e){var t=e.element,n=e.gfx;i.updateDefaultHit(t,n)}));var p=m("djs-hit djs-hit-stroke"),f=m("djs-hit djs-hit-click-stroke"),g={all:m("djs-hit djs-hit-all"),"click-stroke":f,stroke:p,"no-move":m("djs-hit djs-hit-no-move")};function m(e,t){return t=b({stroke:"white",strokeWidth:15},t||{}),n.cls(e,["no-fill","no-border"],t)}function y(e,t){var n=g[t];if(!n)throw new Error("invalid hit type <"+t+">");return un(e,n),e}function v(e,t){an(e,t)}this.removeHits=function(e){var t;u((t=".djs-hit",(e||document).querySelectorAll(t)),An)},this.createDefaultHit=function(e,t){var n,i=e.waypoints,r=e.isFrame;return i?this.createWaypointsHit(t,i):(n=r?"stroke":"all",this.createBoxHit(t,n,{width:e.width,height:e.height}))},this.createWaypointsHit=function(e,t){var n=Bn(t);return y(n,"stroke"),v(e,n),n},this.createBoxHit=function(e,t,n){n=b({x:0,y:0},n);var i=vn("rect");return y(i,t),un(i,n),v(e,i),i},this.updateDefaultHit=function(e,t){var n=It(".djs-hit",t);if(n)return e.waypoints?Ln(n,e.waypoints):un(n,{width:e.width,height:e.height}),n},this.fire=r,this.triggerMouseEvent=function(e,t,n){var i=a[e];if(!i)throw new Error("unmapped DOM event name <"+e+">");return r(i,t,n)},this.mouseHandler=s,this.registerEvent=h,this.unregisterEvent=d}Uo.$inject=["eventBus","elementRegistry","styles"];var Go={__init__:["interactionEvents"],interactionEvents:["type",Uo]};function Ko(e,t){this._eventBus=e,this._canvas=t,this._selectedElements=[];var n=this;e.on(["shape.remove","connection.remove"],(function(e){var t=e.element;n.deselect(t)})),e.on(["diagram.clear","root.set"],(function(e){n.select(null)}))}Ko.$inject=["eventBus","canvas"],Ko.prototype.deselect=function(e){var t=this._selectedElements,n=t.indexOf(e);if(-1!==n){var i=t.slice();t.splice(n,1),this._eventBus.fire("selection.changed",{oldSelection:i,newSelection:t})}},Ko.prototype.get=function(){return this._selectedElements},Ko.prototype.isSelected=function(e){return-1!==this._selectedElements.indexOf(e)},Ko.prototype.select=function(e,t){var n=this._selectedElements,r=n.slice();i(e)||(e=e?[e]:[]);var o=this._canvas,s=o.getRootElement();e=e.filter((function(e){var t=o.findRoot(e);return s===t})),t?u(e,(function(e){-1===n.indexOf(e)&&n.push(e)})):this._selectedElements=n=e.slice(),this._eventBus.fire("selection.changed",{oldSelection:r,newSelection:n})};var Xo="hover",Yo="selected";function Jo(e,t){function n(t,n){e.addMarker(t,n)}function i(t,n){e.removeMarker(t,n)}this._canvas=e,t.on("element.hover",(function(e){n(e.element,Xo)})),t.on("element.out",(function(e){i(e.element,Xo)})),t.on("selection.changed",(function(e){var t=e.oldSelection,r=e.newSelection;u(t,(function(e){-1===r.indexOf(e)&&i(e,Yo)})),u(r,(function(e){-1===t.indexOf(e)&&n(e,Yo)}))}))}function Qo(e,t,n,r){e.on("create.end",500,(function(e){var n=e.context,r=n.canExecute,o=n.elements,s=(n.hints||{}).autoSelect;if(r){if(!1===s)return;i(s)?t.select(s):t.select(o.filter(Zo))}})),e.on("connect.end",500,(function(e){var n=e.context.connection;n&&t.select(n)})),e.on("shape.move.end",500,(function(e){var n=e.previousSelection||[],i=r.get(e.context.shape.id);c(n,(function(e){return i.id===e.id}))||t.select(i)})),e.on("element.click",(function(e){if(zo(e)){var i=e.element;i===n.getRootElement()&&(i=null);var r=t.isSelected(i),o=t.get().length>1,s=function(e){var t=Vo(e)||e;return zo(e)&&t.shiftKey}(e);if(r&&o)return s?t.deselect(i):t.select(i);r?t.deselect(i):t.select(i,s)}}))}function Zo(e){return!e.hidden}Jo.$inject=["canvas","eventBus"],Qo.$inject=["eventBus","selection","canvas","elementRegistry"];var es={__init__:["selectionVisuals","selectionBehavior"],__depends__:[Go],selection:["type",Ko],selectionVisuals:["type",Jo],selectionBehavior:["type",Qo]};function ts(e){this._counter=0,this._prefix=(e?e+"-":"")+Math.floor(1e9*Math.random())+"-"}ts.prototype.next=function(){return this._prefix+ ++this._counter};var ns=new ts("ov");function is(e,t,n,i){var r,o;this._eventBus=t,this._canvas=n,this._elementRegistry=i,this._ids=ns,this._overlayDefaults=b({show:null,scale:!0},e&&e.defaults),this._overlays={},this._overlayContainers=[],this._overlayRoot=(r=n.getContainer(),wt(o=Lt('<div class="djs-overlay-container" />'),{position:"absolute",width:0,height:0}),r.insertBefore(o,r.firstChild),o),this._init()}function rs(e,t,n){wt(e,{left:t+"px",top:n+"px"})}function os(e,t){e.style.display=!1===t?"none":""}function ss(e,t){e.style["transform-origin"]="top left",["","-ms-","-webkit-"].forEach((function(n){e.style[n+"transform"]=t}))}is.$inject=["config.overlays","eventBus","canvas","elementRegistry"],is.prototype.get=function(e){if(a(e)&&(e={id:e}),a(e.element)&&(e.element=this._elementRegistry.get(e.element)),e.element){var t=this._getOverlayContainer(e.element,!0);return t?e.type?h(t.overlays,f({type:e.type})):t.overlays.slice():[]}return e.type?h(this._overlays,f({type:e.type})):e.id?this._overlays[e.id]:null},is.prototype.add=function(e,t,n){if(r(t)&&(n=t,t=null),e.id||(e=this._elementRegistry.get(e)),!n.position)throw new Error("must specifiy overlay position");if(!n.html)throw new Error("must specifiy overlay html");if(!e)throw new Error("invalid element specified");var i=this._ids.next();return n=b({},this._overlayDefaults,n,{id:i,type:t,element:e,html:n.html}),this._addOverlay(n),i},is.prototype.remove=function(e){var t=this.get(e)||[];i(t)||(t=[t]);var n=this;u(t,(function(e){var t=n._getOverlayContainer(e.element,!0);if(e&&(Ft(e.html),Ft(e.htmlContainer),delete e.htmlContainer,delete e.element,delete n._overlays[e.id]),t){var i=t.overlays.indexOf(e);-1!==i&&t.overlays.splice(i,1)}}))},is.prototype.isShown=function(){return"none"!==this._overlayRoot.style.display},is.prototype.show=function(){os(this._overlayRoot)},is.prototype.hide=function(){os(this._overlayRoot,!1)},is.prototype.clear=function(){this._overlays={},this._overlayContainers=[],St(this._overlayRoot)},is.prototype._updateOverlayContainer=function(e){var t=e.element,n=e.html,i=t.x,r=t.y;if(t.waypoints){var o=In(t);i=o.x,r=o.y}rs(n,i,r),bt(e.html,"data-container-id",t.id)},is.prototype._updateOverlay=function(e){var t,n,i=e.position,r=e.htmlContainer,o=e.element,s=i.left,a=i.top;void 0!==i.right&&(t=o.waypoints?In(o).width:o.width,s=-1*i.right+t);void 0!==i.bottom&&(n=o.waypoints?In(o).height:o.height,a=-1*i.bottom+n);rs(r,s||0,a||0),this._updateOverlayVisibilty(e,this._canvas.viewbox())},is.prototype._createOverlayContainer=function(e){var t=Lt('<div class="djs-overlays" />');wt(t,{position:"absolute"}),this._overlayRoot.appendChild(t);var n={html:t,element:e,overlays:[]};return this._updateOverlayContainer(n),this._overlayContainers.push(n),n},is.prototype._updateRoot=function(e){var t=e.scale||1,n="matrix("+[t,0,0,t,-1*e.x*t,-1*e.y*t].join(",")+")";ss(this._overlayRoot,n)},is.prototype._getOverlayContainer=function(e,t){var n=c(this._overlayContainers,(function(t){return t.element===e}));return n||t?n:this._createOverlayContainer(e)},is.prototype._addOverlay=function(e){var t,n,i=e.id,r=e.element,o=e.html;o.get&&o.constructor.prototype.jquery&&(o=o.get(0)),a(o)&&(o=Lt(o)),n=this._getOverlayContainer(r),wt(t=Lt('<div class="djs-overlay" data-overlay-id="'+i+'">'),{position:"absolute"}),t.appendChild(o),e.type&&kt(t).add("djs-overlay-"+e.type),os(t,this._canvas.findRoot(r)===this._canvas.getRootElement()),e.htmlContainer=t,n.overlays.push(e),n.html.appendChild(t),this._overlays[i]=e,this._updateOverlay(e),this._updateOverlayVisibilty(e,this._canvas.viewbox())},is.prototype._updateOverlayVisibilty=function(e,t){var i=e.show,r=this._canvas.findRoot(e.element),o=i&&i.minZoom,s=i&&i.maxZoom,a=e.htmlContainer,l=!0;(r!==this._canvas.getRootElement()||i&&(n(o)&&o>t.scale||n(s)&&s<t.scale))&&(l=!1),os(a,l),this._updateOverlayScale(e,t)},is.prototype._updateOverlayScale=function(e,t){var i,r,o,s=e.scale,a=e.htmlContainer,l="";!0!==s&&(!1===s?(i=1,r=1):(i=s.min,r=s.max),n(i)&&t.scale<i&&(o=(1/t.scale||1)*i),n(r)&&t.scale>r&&(o=(1/t.scale||1)*r)),n(o)&&(l="scale("+o+","+o+")"),ss(a,l)},is.prototype._updateOverlaysVisibilty=function(e){var t=this;u(this._overlays,(function(n){t._updateOverlayVisibilty(n,e)}))},is.prototype._init=function(){var e=this._eventBus,t=this;e.on("canvas.viewbox.changing",(function(e){t.hide()})),e.on("canvas.viewbox.changed",(function(e){var n;n=e.viewbox,t._updateRoot(n),t._updateOverlaysVisibilty(n),t.show()})),e.on(["shape.remove","connection.remove"],(function(e){var n=e.element;u(t.get({element:n}),(function(e){t.remove(e.id)}));var i=t._getOverlayContainer(n);if(i){Ft(i.html);var r=t._overlayContainers.indexOf(i);-1!==r&&t._overlayContainers.splice(r,1)}})),e.on("element.changed",500,(function(e){var n=e.element,i=t._getOverlayContainer(n,!0);i&&(u(i.overlays,(function(e){t._updateOverlay(e)})),t._updateOverlayContainer(i))})),e.on("element.marker.update",(function(e){var n=t._getOverlayContainer(e.element,!0);n&&kt(n.html)[e.add?"add":"remove"](e.marker)})),e.on("root.set",(function(){t._updateOverlaysVisibilty(t._canvas.viewbox())})),e.on("diagram.clear",this.clear,this)};var as={__init__:["overlays"],overlays:["type",is]};function ls(e,t,n){this._eventBus=e,this._canvas=t,this._translate=n,e.on("diagram.init",(function(){this._init()}),this),e.on("import.done",(function(e){e.error||this.update()}),this),this.HTML_MARKUP='<div class="dmn-definitions"><div class="dmn-definitions-name" title="'+this._translate("Definition name")+'" spellcheck="false"></div><div class="dmn-definitions-id" title="'+this._translate("Definition ID")+'" spellcheck="false"></div></div>'}function cs(e,t){function n(e,n){kt(t.getContainer()).toggle(e,n)}e.on("palette.create",(function(){n("with-palette",!0)})),e.on("palette.changed",(function(e){n("with-palette-two-column",e.twoColumn)}))}ls.$inject=["eventBus","canvas","translate"],ls.prototype._init=function(){var e=this._canvas,t=this._eventBus,n=e.getContainer(),i=this._container=Lt(this.HTML_MARKUP);n.appendChild(i),this.nameElement=It(".dmn-definitions-name",this._container),this.idElement=It(".dmn-definitions-id",this._container),Nt.bind(i,".dmn-definitions-name, .dmn-definitions-id","mousedown",(function(e){e.stopPropagation()})),t.fire("definitionIdView.create",{html:i})},ls.prototype.update=function(){var e=this._canvas.getRootElement().businessObject;this.nameElement.textContent=e.name,this.idElement.textContent=e.id},cs.$inject=["eventBus","canvas"];var hs={__depends__:[jo],__init__:["definitionPropertiesView","definitionPropertiesPaletteAdapter"],definitionPropertiesView:["type",ls],definitionPropertiesPaletteAdapter:["type",cs]},us=[{className:"dmn-icon-decision-table",matches:function(e){var t=vi(e);return yi(t,"dmn:Decision")&&yi(t.decisionLogic,"dmn:DecisionTable")},title:"Open decision table"},{className:"dmn-icon-literal-expression",matches:function(e){return yi(wi(e),"dmn:LiteralExpression")},title:"Open literal expression"}];class ds{constructor(e,t,n,i,r){this._injector=e,this._eventBus=t,this._overlays=n,this._translate=r,this._config=i||{enabled:!0},t.on(["shape.added"],(({element:e})=>{for(let t=0;t<us.length;t++){const{matches:n,className:i,title:r}=us[t];n&&n(e)&&this.addOverlay(e,i,r)}}))}addOverlay(e,t,n){const i=!1!==this._config.enabled,r=this._getOverlayNode(t,n,i),o=this._overlays.add(e,{position:{top:2,left:2},html:r});i&&(kt(r).add("interactive"),this.bindEventListener(e,r,o))}_getOverlayNode(e,t,n){const i=document.createElement("div");if(i.className="drill-down-overlay",!n){const t=document.createElement("span");return t.className=e,i.appendChild(t),i}const r=document.createElement("button");return r.type="button",r.className=e,r.title=this._translate(t),i.appendChild(r),i}bindEventListener(e,t,n){const i=this._overlays,r=this._eventBus,o=i._overlayRoot;Nt.bind(o,'[data-overlay-id="'+n+'"]',"click",(()=>{!1!==r.fire("drillDown.click",{element:e})&&this.drillDown(e)}))}drillDown(e){const t=this._injector.get("_parent",!1);if(!t)return!1;const n=t.getView(e.businessObject);return!!n&&(t.open(n),!0)}}ds.$inject=["injector","eventBus","overlays","config.drillDown","translate"];var ps={__depends__:[as,jo],__init__:["drillDown"],drillDown:["type",ds]};
H A Ddmn-navigated-viewer.production.min.js2 !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e="undefined"!=typeof globalThis?globalThis:e||self).DmnJS=t()}(this,(function(){"use strict";const e=Object.prototype.toString,t=Object.prototype.hasOwnProperty;function n(e){return void 0!==e}function i(t){return"[object Array]"===e.call(t)}function r(t){return"[object Object]"===e.call(t)}function o(t){return"[object Number]"===e.call(t)}function s(t){const n=e.call(t);return"[object Function]"===n||"[object AsyncFunction]"===n||"[object GeneratorFunction]"===n||"[object AsyncGeneratorFunction]"===n||"[object Proxy]"===n}function a(t){return"[object String]"===e.call(t)}function l(e,n){return!(null==e)&&t.call(e,n)}function c(e,t){const n=v(t);let i;return u(e,(function(e,t){if(n(e,t))return i=e,!1})),i}function h(e,t){const n=v(t);let i=[];return u(e,(function(e,t){n(e,t)&&i.push(e)})),i}function u(e,t){let n,r;if(void 0===e)return;const o=i(e)?w:y;for(let i in e)if(l(e,i)&&(n=e[i],r=t(n,o(i)),!1===r))return n}function d(e,t,n){return u(e,(function(e,i){n=t(n,e,i)})),n}function p(e,t){return!!d(e,(function(e,n,i){return e&&t(n,i)}),!0)}function f(e,t){let n=[];return u(e,(function(e,i){n.push(t(e,i))})),n}function g(e,t){t=function(e){return s(e)?e:t=>t[e]}(t);let n=[];return u(e,(function(e,i){let r=t(e,i),o={d:r,v:e};for(var s=0;s<n.length;s++){let{d:e}=n[s];if(r<e)return void n.splice(s,0,o)}n.push(o)})),f(n,(e=>e.v))}function m(e){return function(t){return p(e,(function(e,n){return t[n]===e}))}}function v(e){return s(e)?e:t=>t===e}function y(e){return e}function w(e){return Number(e)}function b(e,t){let n,i,r,o;function s(n){let s=Date.now(),c=n?0:o+t-s;if(c>0)return a(c);e.apply(r,i),l()}function a(e){n=setTimeout(s,e)}function l(){n&&clearTimeout(n),n=o=i=r=void 0}function c(...e){o=Date.now(),i=e,r=this,n||a(t)}return c.flush=function(){n&&s(!0),l()},c.cancel=l,c}function x(e,t){return e.bind(t)}function _(e,...t){return Object.assign(e,...t)}var S="__fn",k=Array.prototype.slice;function C(){this._listeners={},this.on("diagram.destroy",1,this._destroy,this)}function E(){}C.prototype.on=function(e,t,n,r){if(e=i(e)?e:[e],s(t)&&(r=n,n=t,t=1e3),!o(t))throw new Error("priority must be a number");var a=n;r&&((a=x(n,r))[S]=n[S]||n);var l=this;e.forEach((function(e){l._addListener(e,{priority:t,callback:a,next:null})}))},C.prototype.once=function(e,t,n,i){var r=this;if(s(t)&&(i=n,n=t,t=1e3),!o(t))throw new Error("priority must be a number");function a(){a.__isTomb=!0;var t=n.apply(i,arguments);return r.off(e,a),t}a[S]=n,this.on(e,t,a)},C.prototype.off=function(e,t){e=i(e)?e:[e];var n=this;e.forEach((function(e){n._removeListener(e,t)}))},C.prototype.createEvent=function(e){var t=new E;return t.init(e),t},C.prototype.fire=function(e,t){var n,i,r,o;if(o=k.call(arguments),"object"==typeof e&&(e=(t=e).type),!e)throw new Error("no event type specified");if(i=this._listeners[e]){n=t instanceof E?t:this.createEvent(t),o[0]=n;var s=n.type;e!==s&&(n.type=e);try{r=this._invokeListeners(n,o,i)}finally{e!==s&&(n.type=s)}return void 0===r&&n.defaultPrevented&&(r=!1),r}},C.prototype.handleError=function(e){return!1===this.fire("error",{error:e})},C.prototype._destroy=function(){this._listeners={}},C.prototype._invokeListeners=function(e,t,n){for(var i;n&&!e.cancelBubble;)i=this._invokeListener(e,t,n),n=n.next;return i},C.prototype._invokeListener=function(e,t,n){var i;if(n.callback.__isTomb)return i;try{i=function(e,t){return e.apply(null,t)}(n.callback,t),void 0!==i&&(e.returnValue=i,e.stopPropagation()),!1===i&&e.preventDefault()}catch(e){if(!this.handleError(e))throw console.error("unhandled error in event listener",e),e}return i},C.prototype._addListener=function(e,t){var n,i=this._getListeners(e);if(i){for(;i;){if(i.priority<t.priority)return t.next=i,void(n?n.next=t:this._setListeners(e,t));n=i,i=i.next}n.next=t}else this._setListeners(e,t)},C.prototype._getListeners=function(e){return this._listeners[e]},C.prototype._setListeners=function(e,t){this._listeners[e]=t},C.prototype._removeListener=function(e,t){var n,i,r,o=this._getListeners(e);if(t)for(;o;)n=o.next,(r=o.callback)!==t&&r[S]!==t||(i?i.next=n:this._setListeners(e,n)),i=o,o=n;else this._setListeners(e,null)},E.prototype.stopPropagation=function(){this.cancelBubble=!0},E.prototype.preventDefault=function(){this.defaultPrevented=!0},E.prototype.init=function(e){_(this,e||{})};var M=Object.prototype.toString;function A(){return A=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e},A.apply(this,arguments)}function R(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),i=1;i<t;i++)n[i-1]=arguments[i];return A.apply(void 0,[e].concat(n))}var T=Object.prototype.toString,D=Object.prototype.hasOwnProperty;function O(e){return"[object String]"===T.call(e)}function N(e,t){return D.call(e,t)}function P(e,t){var n;if(void 0!==e){var i=function(e){return"[object Array]"===T.call(e)}(e)?B:q;for(var r in e)if(N(e,r)&&!1===t(n=e[r],i(r)))return n}}function q(e){return e}function B(e){return Number(e)}function L(e,t){return e.bind(t)}function I(){return I=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e},I.apply(this,arguments)}function j(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),i=1;i<t;i++)n[i-1]=arguments[i];return I.apply(void 0,[e].concat(n))}function F(){}function V(e,t){this.model=e,this.properties=t}F.prototype.get=function(e){return this.$model.properties.get(this,e)},F.prototype.set=function(e,t){this.$model.properties.set(this,e,t)},V.prototype.createType=function(e){var t=this.model,n=this.properties,i=Object.create(F.prototype);P(e.properties,(function(e){e.isMany||void 0===e.default||(i[e.name]=e.default)})),n.defineModel(i,t),n.defineDescriptor(i,e);var r=e.ns.name;function o(e){n.define(this,"$type",{value:r,enumerable:!0}),n.define(this,"$attrs",{value:{}}),n.define(this,"$parent",{writable:!0}),P(e,L((function(e,t){this.set(t,e)}),this))}return o.prototype=i,o.hasType=i.$instanceOf=this.model.hasType,n.defineModel(o,t),n.defineDescriptor(o,e),o};var $={String:!0,Boolean:!0,Integer:!0,Real:!0,Element:!0},z={String:function(e){return e},Boolean:function(e){return"true"===e},Integer:function(e){return parseInt(e,10)},Real:function(e){return parseFloat(e)}};function H(e,t){var n=z[e];return n?n(t):t}function W(e){return!!$[e]}function U(e){return!!z[e]}function G(e,t){var n,i,r=e.split(/:/);if(1===r.length)n=e,i=t;else{if(2!==r.length)throw new Error("expected <prefix:localName> or <localName>, got "+e);n=r[1],i=r[0]}return{name:e=(i?i+":":"")+n,prefix:i,localName:n}}function K(e){this.ns=e,this.name=e.name,this.allTypes=[],this.allTypesByName={},this.properties=[],this.propertiesByName={}}function X(e,t){this.packageMap={},this.typeMap={},this.packages=[],this.properties=t,P(e,L(this.registerPackage,this))}function Y(e,t,n){var i=t[n];if(i in e)throw new Error("package with "+n+" <"+i+"> already defined")}function J(e){this.model=e}function Q(e,t,n){Object.defineProperty(e,t.name,{enumerable:!t.isReference,writable:!0,value:n,configurable:!0})}function Z(e){this.properties=new J(this),this.factory=new V(this,this.properties),this.registry=new X(e,this.properties),this.typeCache={}}K.prototype.build=function(){return e=this,t=["ns","name","allTypes","allTypesByName","properties","propertiesByName","bodyProperty","idProperty"],n={},i=Object(e),P(t,(function(t){t in i&&(n[t]=e[t])})),n;var e,t,n,i},K.prototype.addProperty=function(e,t,n){"boolean"==typeof t&&(n=t,t=void 0),this.addNamedProperty(e,!1!==n);var i=this.properties;void 0!==t?i.splice(t,0,e):i.push(e)},K.prototype.replaceProperty=function(e,t,n){var i=e.ns,r=this.properties,o=this.propertiesByName,s=e.name!==t.name;if(e.isId){if(!t.isId)throw new Error("property <"+t.ns.name+"> must be id property to refine <"+e.ns.name+">");this.setIdProperty(t,!1)}if(e.isBody){if(!t.isBody)throw new Error("property <"+t.ns.name+"> must be body property to refine <"+e.ns.name+">");this.setBodyProperty(t,!1)}var a=r.indexOf(e);if(-1===a)throw new Error("property <"+i.name+"> not found in property list");r.splice(a,1),this.addProperty(t,n?void 0:a,s),o[i.name]=o[i.localName]=t},K.prototype.redefineProperty=function(e,t,n){var i=e.ns.prefix,r=t.split("#"),o=G(r[0],i),s=G(r[1],o.prefix).name,a=this.propertiesByName[s];if(!a)throw new Error("refined property <"+s+"> not found");this.replaceProperty(a,e,n),delete e.redefines},K.prototype.addNamedProperty=function(e,t){var n=e.ns,i=this.propertiesByName;t&&(this.assertNotDefined(e,n.name),this.assertNotDefined(e,n.localName)),i[n.name]=i[n.localName]=e},K.prototype.removeNamedProperty=function(e){var t=e.ns,n=this.propertiesByName;delete n[t.name],delete n[t.localName]},K.prototype.setBodyProperty=function(e,t){if(t&&this.bodyProperty)throw new Error("body property defined multiple times (<"+this.bodyProperty.ns.name+">, <"+e.ns.name+">)");this.bodyProperty=e},K.prototype.setIdProperty=function(e,t){if(t&&this.idProperty)throw new Error("id property defined multiple times (<"+this.idProperty.ns.name+">, <"+e.ns.name+">)");this.idProperty=e},K.prototype.assertNotDefined=function(e,t){var n=e.name,i=this.propertiesByName[n];if(i)throw new Error("property <"+n+"> already defined; override of <"+i.definedBy.ns.name+"#"+i.ns.name+"> by <"+e.definedBy.ns.name+"#"+e.ns.name+"> not allowed without redefines")},K.prototype.hasProperty=function(e){return this.propertiesByName[e]},K.prototype.addTrait=function(e,t){var n=this.allTypesByName,i=this.allTypes,r=e.name;r in n||(P(e.properties,L((function(n){n=j({},n,{name:n.ns.localName,inherited:t}),Object.defineProperty(n,"definedBy",{value:e});var i=n.replaces,r=n.redefines;i||r?this.redefineProperty(n,i||r,i):(n.isBody&&this.setBodyProperty(n),n.isId&&this.setIdProperty(n),this.addProperty(n))}),this)),i.push(e),n[r]=e)},X.prototype.getPackage=function(e){return this.packageMap[e]},X.prototype.getPackages=function(){return this.packages},X.prototype.registerPackage=function(e){e=j({},e);var t=this.packageMap;Y(t,e,"prefix"),Y(t,e,"uri"),P(e.types,L((function(t){this.registerType(t,e)}),this)),t[e.uri]=t[e.prefix]=e,this.packages.push(e)},X.prototype.registerType=function(e,t){var n=G((e=j({},e,{superClass:(e.superClass||[]).slice(),extends:(e.extends||[]).slice(),properties:(e.properties||[]).slice(),meta:j(e.meta||{})})).name,t.prefix),i=n.name,r={};P(e.properties,L((function(e){var t=G(e.name,n.prefix),i=t.name;W(e.type)||(e.type=G(e.type,t.prefix).name),j(e,{ns:t,name:i}),r[i]=e}),this)),j(e,{ns:n,name:i,propertiesByName:r}),P(e.extends,L((function(e){var t=this.typeMap[e];t.traits=t.traits||[],t.traits.push(i)}),this)),this.definePackage(e,t),this.typeMap[i]=e},X.prototype.mapTypes=function(e,t,n){var i=W(e.name)?{name:e.name}:this.typeMap[e.name],r=this;function o(e){return s(e,!0)}function s(n,i){var o=G(n,W(n)?"":e.prefix);r.mapTypes(o,t,i)}if(!i)throw new Error("unknown type <"+e.name+">");P(i.superClass,n?o:s),t(i,!n),P(i.traits,o)},X.prototype.getEffectiveDescriptor=function(e){var t=G(e),n=new K(t);this.mapTypes(t,(function(e,t){n.addTrait(e,t)}));var i=n.build();return this.definePackage(i,i.allTypes[i.allTypes.length-1].$pkg),i},X.prototype.definePackage=function(e,t){this.properties.define(e,"$pkg",{value:t})},J.prototype.set=function(e,t,n){if(!O(t)||!t.length)throw new TypeError("property name must be a non-empty string");var i=this.model.getPropertyDescriptor(e,t),r=i&&i.name;void 0===n?i?delete e[r]:delete e.$attrs[t]:i?r in e?e[r]=n:Q(e,i,n):e.$attrs[t]=n},J.prototype.get=function(e,t){var n=this.model.getPropertyDescriptor(e,t);if(!n)return e.$attrs[t];var i=n.name;return!e[i]&&n.isMany&&Q(e,n,[]),e[i]},J.prototype.define=function(e,t,n){if(!n.writable){var i=n.value;delete(n=j({},n,{get:function(){return i}})).value}Object.defineProperty(e,t,n)},J.prototype.defineDescriptor=function(e,t){this.define(e,"$descriptor",{value:t})},J.prototype.defineModel=function(e,t){this.define(e,"$model",{value:t})},Z.prototype.create=function(e,t){var n=this.getType(e);if(!n)throw new Error("unknown type <"+e+">");return new n(t)},Z.prototype.getType=function(e){var t=this.typeCache,n=O(e)?e:e.ns.name,i=t[n];return i||(e=this.registry.getEffectiveDescriptor(n),i=t[n]=this.factory.createType(e)),i},Z.prototype.createAny=function(e,t,n){var i=G(e),r={$type:e,$instanceOf:function(e){return e===this.$type}},o={name:e,isGeneric:!0,ns:{prefix:i.prefix,localName:i.localName,uri:t}};return this.properties.defineDescriptor(r,o),this.properties.defineModel(r,this),this.properties.define(r,"$parent",{enumerable:!1,writable:!0}),this.properties.define(r,"$instanceOf",{enumerable:!1,writable:!0}),P(n,(function(e,t){var n;n=e,"[object Object]"===T.call(n)&&void 0!==e.value?r[e.name]=e.value:r[t]=e})),r},Z.prototype.getPackage=function(e){return this.registry.getPackage(e)},Z.prototype.getPackages=function(){return this.registry.getPackages()},Z.prototype.getElementDescriptor=function(e){return e.$descriptor},Z.prototype.hasType=function(e,t){return void 0===t&&(t=e,e=this),t in e.$model.getElementDescriptor(e).allTypesByName},Z.prototype.getPropertyDescriptor=function(e,t){return this.getElementDescriptor(e).propertiesByName[t]},Z.prototype.getTypeDescriptor=function(e){return this.registry.typeMap[e]};var ee=Object.prototype.toString,te=Object.prototype.hasOwnProperty;function ne(e){return"[object Array]"===ee.call(e)}function ie(e){return"[object String]"===ee.call(e)}function re(e,t){return te.call(e,t)}function oe(e,t){var n;return t=le(t),ae(e,(function(e,i){if(t(e,i))return n=e,!1})),n}function se(e,t){var n=[];return ae(e,(function(e,i){t(e,i)&&n.push(e)})),n}function ae(e,t){var n;if(void 0!==e){var i=ne(e)?he:ce;for(var r in e)if(re(e,r)&&!1===t(n=e[r],i(r)))return n}}function le(e){return t=e,"[object Function]"===(n=ee.call(t))||"[object AsyncFunction]"===n||"[object GeneratorFunction]"===n||"[object AsyncGeneratorFunction]"===n||"[object Proxy]"===n?e:function(t){return t===e};var t,n}function ce(e){return e}function he(e){return Number(e)}function ue(){return ue=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e},ue.apply(this,arguments)}function de(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),i=1;i<t;i++)n[i-1]=arguments[i];return ue.apply(void 0,[e].concat(n))}var pe=String.fromCharCode,fe=Object.prototype.hasOwnProperty,ge=/&#(\d+);|&#x([0-9a-f]+);|&(\w+);/gi,me={amp:"&",apos:"'",gt:">",lt:"<",quot:'"'};function ve(e,t,n,i){return i?fe.call(me,i)?me[i]:"&"+i+";":pe(t||parseInt(n,16))}function ye(e){return e.length>3&&-1!==e.indexOf("&")?e.replace(ge,ve):e}Object.keys(me).forEach((function(e){me[e.toUpperCase()]=me[e]}));var we="xsi:type",be="non-whitespace outside of root node";function xe(e){return new Error(e)}function _e(e){return"missing namespace for prefix <"+e+">"}function Se(e){return{get:e,enumerable:!0}}function ke(e){var t,n={};for(t in e)n[t]=e[t];return n}function Ce(e){return e+"$uri"}function Ee(){return{line:0,column:0}}function Me(e){throw e}function Ae(e){if(!this)return new Ae(e);var t,n,i,r,o,s,a,l,c,h=e&&e.proxy,u=Me,d=Ee,p=!1,f=!1,g=null,m=!1;function v(e){e instanceof Error||(e=xe(e)),g=e,u(e,d)}function y(e){o&&(e instanceof Error||(e=xe(e)),o(e,d))}this.on=function(e,c){if("function"!=typeof c)throw xe("required args <name, cb>");switch(e){case"openTag":n=c;break;case"text":t=c;break;case"closeTag":i=c;break;case"error":u=c;break;case"warn":o=c;break;case"cdata":r=c;break;case"attention":l=c;break;case"question":a=c;break;case"comment":s=c;break;default:throw xe("unsupported event: "+e)}return this},this.ns=function(e){if(void 0===e&&(e={}),"object"!=typeof e)throw xe("required args <nsMap={}>");var t,n={};for(t in e)n[t]=e[t];return n["http://www.w3.org/2001/XMLSchema-instance"]="xsi",f=!0,c=n,this},this.parse=function(e){if("string"!=typeof e)throw xe("required args <xml=string>");return g=null,function(e){var o,u,g,w,b,x,_,S,k,C,E,M=f?[]:null,A=f?function(e){var t,n,i={};for(t in e)i[n=e[t]]=n,i[Ce(n)]=t;return i}(c):null,R=[],T=0,D=!1,O=!1,N=0,P=0,q="",B=0;function L(){if(null!==E)return E;var e,t,n,i,r,o,s,a,l,h,u,d=f&&A.xmlns,g=f&&p?[]:null,m=B,v=q,w=v.length,b={},x={};e:for(;m<w;m++)if(l=!1,!(32===(h=v.charCodeAt(m))||h<14&&h>8)){for((h<65||h>122||h>90&&h<97)&&95!==h&&58!==h&&(y("illegal first char attribute name"),l=!0),u=m+1;u<w;u++)if(!((h=v.charCodeAt(u))>96&&h<123||h>64&&h<91||h>47&&h<59||46===h||45===h||95===h)){if(32===h||h<14&&h>8){y("missing attribute value"),m=u;continue e}if(61===h)break;y("illegal attribute name char"),l=!0}if("xmlns:xmlns"===(a=v.substring(m,u))&&(y("illegal declaration of xmlns"),l=!0),34===(h=v.charCodeAt(u+1)))-1===(u=v.indexOf('"',m=u+2))&&-1!==(u=v.indexOf("'",m))&&(y("attribute value quote missmatch"),l=!0);else if(39===h)-1===(u=v.indexOf("'",m=u+2))&&-1!==(u=v.indexOf('"',m))&&(y("attribute value quote missmatch"),l=!0);else for(y("missing attribute value quotes"),l=!0,u+=1;u<w&&!(32===(h=v.charCodeAt(u+1))||h<14&&h>8);u++);for(-1===u&&(y("missing closing quotes"),u=w,l=!0),l||(o=v.substring(m,u)),m=u;u+1<w&&!(32===(h=v.charCodeAt(u+1))||h<14&&h>8);u++)m===u&&(y("illegal character after attribute end"),l=!0);if(m=u+1,!l)if(a in x)y("attribute <"+a+"> already defined");else if(x[a]=!0,f)if(p){if(null!==(r="xmlns"===a?"xmlns":120===a.charCodeAt(0)&&"xmlns:"===a.substr(0,6)?a.substr(6):null)){if(e=ye(o),t=Ce(r),!(s=c[e])){if("xmlns"===r||t in A&&A[t]!==e)do{s="ns"+T++}while(void 0!==A[s]);else s=r;c[e]=s}A[r]!==s&&(i||(A=ke(A),i=!0),A[r]=s,"xmlns"===r&&(A[Ce(s)]=e,d=s),A[t]=e),b[a]=o;continue}g.push(a,o)}else-1!==(h=a.indexOf(":"))?(n=A[a.substring(0,h)])?((a=d===n?a.substr(h+1):n+a.substr(h))===we&&(-1!==(h=o.indexOf(":"))?(n=o.substring(0,h),o=(n=A[n]||n)+o.substring(h)):o=d+":"+o),b[a]=o):y(_e(a.substring(0,h))):b[a]=o;else b[a]=o}if(p)for(m=0,w=g.length;m<w;m++){if(a=g[m++],o=g[m],-1!==(h=a.indexOf(":"))){if(!(n=A[a.substring(0,h)])){y(_e(a.substring(0,h)));continue}(a=d===n?a.substr(h+1):n+a.substr(h))===we&&(-1!==(h=o.indexOf(":"))?(n=o.substring(0,h),o=(n=A[n]||n)+o.substring(h)):o=d+":"+o)}b[a]=o}return E=b}function I(){for(var t,n,i=/(\r\n|\r|\n)/g,r=0,o=0,s=0,a=P;N>=s&&(t=i.exec(e))&&!((a=t[0].length+t.index)>N);)r+=1,s=a;return-1==N?(o=a,n=e.substring(P)):0===P?n=e.substring(P,N):(o=N-s,n=-1==P?e.substring(N):e.substring(N,P+1)),{data:n,line:r,column:o}}d=I,h&&(C=Object.create({},{name:Se((function(){return S})),originalName:Se((function(){return k})),attrs:Se(L),ns:Se((function(){return A}))}));for(;-1!==P;){if(-1===(N=60===e.charCodeAt(P)?P:e.indexOf("<",P)))return R.length?v("unexpected end of file"):0===P?v("missing start tag"):void(P<e.length&&e.substring(P).trim()&&y(be));if(P!==N)if(R.length){if(t&&(t(e.substring(P,N),ye,d),m))return}else if(e.substring(P,N).trim()&&(y(be),m))return;if(33===(b=e.charCodeAt(N+1))){if(91===(w=e.charCodeAt(N+2))&&"CDATA["===e.substr(N+3,6)){if(-1===(P=e.indexOf("]]>",N)))return v("unclosed cdata");if(r&&(r(e.substring(N+9,P),d),m))return;P+=3;continue}if(45===w&&45===e.charCodeAt(N+3)){if(-1===(P=e.indexOf("--\x3e",N)))return v("unclosed comment");if(s&&(s(e.substring(N+4,P),ye,d),m))return;P+=3;continue}}if(63!==b){for(u=N+1;;u++){if(x=e.charCodeAt(u),isNaN(x))return P=-1,v("unclosed tag");if(34===x)u=-1!==(w=e.indexOf('"',u+1))?w:u;else if(39===x)u=-1!==(w=e.indexOf("'",u+1))?w:u;else if(62===x){P=u;break}}if(33!==b){if(E={},47===b){if(D=!1,O=!0,!R.length)return v("missing open tag");if(u=S=R.pop(),w=N+2+u.length,e.substring(N+2,w)!==u)return v("closing tag mismatch");for(;w<P;w++)if(!(32===(b=e.charCodeAt(w))||b>8&&b<14))return v("close tag")}else{if(47===e.charCodeAt(P-1)?(u=S=e.substring(N+1,P-1),D=!0,O=!0):(u=S=e.substring(N+1,P),D=!0,O=!1),!(b>96&&b<123||b>64&&b<91||95===b||58===b))return v("illegal first char nodeName");for(w=1,g=u.length;w<g;w++)if(!((b=u.charCodeAt(w))>96&&b<123||b>64&&b<91||b>47&&b<59||45===b||95===b||46==b)){if(32===b||b<14&&b>8){S=u.substring(0,w),E=null;break}return v("invalid nodeName")}O||R.push(S)}if(f){if(o=A,D&&(O||M.push(o),null===E&&(p=-1!==u.indexOf("xmlns",w))&&(B=w,q=u,L(),p=!1)),k=S,-1!==(b=S.indexOf(":"))){if(!(_=A[S.substring(0,b)]))return v("missing namespace on <"+k+">");S=S.substr(b+1)}else _=A.xmlns;_&&(S=_+":"+S)}if(D&&(B=w,q=u,n&&(h?n(C,ye,O,d):n(S,L,ye,O,d),m)))return;if(O){if(i&&(i(h?C:S,ye,D,d),m))return;f&&(A=D?o:M.pop())}P+=1}else{if(l&&(l(e.substring(N,P+1),ye,d),m))return;P+=1}}else{if(-1===(P=e.indexOf("?>",N)))return v("unclosed question");if(a&&(a(e.substring(N,P+2),d),m))return;P+=2}}}(e),d=Ee,m=!1,g},this.stop=function(){m=!0}}function Re(e){return e.xml&&"lowerCase"===e.xml.tagAlias}var Te={xsi:"http://www.w3.org/2001/XMLSchema-instance",xml:"http://www.w3.org/XML/1998/namespace"},De="xsi:type";function Oe(e){return e.xml&&e.xml.serialize}function Ne(e){return Oe(e)===De}function Pe(e,t){return Re(t)?e.prefix+":"+((n=e.localName).charAt(0).toUpperCase()+n.slice(1)):e.name;var n}function qe(e){return new Error(e)}function Be(e){return e.$descriptor}function Le(e){de(this,e),this.elementsById={},this.references=[],this.warnings=[],this.addReference=function(e){this.references.push(e)},this.addElement=function(e){if(!e)throw qe("expected element");var t,n=this.elementsById,i=Be(e).idProperty;if(i&&(t=e.get(i.name))){if(!/^([a-z][\w-.]*:)?[a-z_][\w-.]*$/i.test(t))throw new Error("illegal ID <"+t+">");if(n[t])throw qe("duplicate ID <"+t+">");n[t]=e}},this.addWarning=function(e){this.warnings.push(e)}}function Ie(){}function je(){}function Fe(){}function Ve(e,t){this.property=e,this.context=t}function $e(e,t){this.element=t,this.propertyDesc=e}function ze(){}function He(e,t,n){this.model=e,this.type=e.getType(t),this.context=n}function We(e,t,n){He.call(this,e,t,n)}function Ue(e,t,n){this.model=e,this.context=n}function Ge(e){e instanceof Z&&(e={model:e}),de(this,{lax:!1},e)}Ie.prototype.handleEnd=function(){},Ie.prototype.handleText=function(){},Ie.prototype.handleNode=function(){},je.prototype=Object.create(Ie.prototype),je.prototype.handleNode=function(){return this},Fe.prototype=Object.create(Ie.prototype),Fe.prototype.handleText=function(e){this.body=(this.body||"")+e},Ve.prototype=Object.create(Fe.prototype),Ve.prototype.handleNode=function(e){if(this.element)throw qe("expected no sub nodes");return this.element=this.createReference(e),this},Ve.prototype.handleEnd=function(){this.element.id=this.body},Ve.prototype.createReference=function(e){return{property:this.property.ns.name,id:""}},$e.prototype=Object.create(Fe.prototype),$e.prototype.handleEnd=function(){var e=this.body||"",t=this.element,n=this.propertyDesc;e=H(n.type,e),n.isMany?t.get(n.name).push(e):t.set(n.name,e)},ze.prototype=Object.create(Fe.prototype),ze.prototype.handleNode=function(e){var t=this,n=this.element;return n?t=this.handleChild(e):(n=this.element=this.createElement(e),this.context.addElement(n)),t},He.prototype=Object.create(ze.prototype),He.prototype.addReference=function(e){this.context.addReference(e)},He.prototype.handleText=function(e){if(!Be(this.element).bodyProperty)throw qe("unexpected body text <"+e+">");Fe.prototype.handleText.call(this,e)},He.prototype.handleEnd=function(){var e=this.body,t=this.element,n=Be(t).bodyProperty;n&&void 0!==e&&(e=H(n.type,e),t.set(n.name,e))},He.prototype.createElement=function(e){var t,n=e.attributes,i=this.type,r=Be(i),o=this.context,s=new i({}),a=this.model;return ae(n,(function(e,n){var i=r.propertiesByName[n];i&&i.isReference?i.isMany?ae(e.split(" "),(function(e){o.addReference({element:s,property:i.ns.name,id:e})})):o.addReference({element:s,property:i.ns.name,id:e}):(i?e=H(i.type,e):"xmlns"!==n&&(t=G(n,r.ns.prefix),a.getPackage(t.prefix)&&o.addWarning({message:"unknown attribute <"+n+">",element:s,property:n,value:e})),s.set(n,e))})),s},He.prototype.getPropertyForNode=function(e){var t,n,i=G(e.name),r=this.type,o=this.model,s=Be(r),a=i.name,l=s.propertiesByName[a];if(l&&!l.isAttr)return Ne(l)&&(t=e.attributes[De])?(t=function(e,t){var n=G(e);return function(e,t){var n=e.name,i=e.localName,r=t.xml&&t.xml.typePrefix;return r&&0===i.indexOf(r)?e.prefix+":"+i.slice(r.length):n}(n,t.getPackage(n.prefix))}(t,o),de({},l,{effectiveType:Be(n=o.getType(t)).name})):l;var c=o.getPackage(i.prefix);if(c){if(t=Pe(i,c),n=o.getType(t),l=oe(s.properties,(function(e){return!e.isVirtual&&!e.isReference&&!e.isAttribute&&n.hasType(e.type)})))return de({},l,{effectiveType:Be(n).name})}else if(l=oe(s.properties,(function(e){return!e.isReference&&!e.isAttribute&&"Element"===e.type})))return l;throw qe("unrecognized element <"+i.name+">")},He.prototype.toString=function(){return"ElementDescriptor["+Be(this.type).name+"]"},He.prototype.valueHandler=function(e,t){return new $e(e,t)},He.prototype.referenceHandler=function(e){return new Ve(e,this.context)},He.prototype.handler=function(e){return"Element"===e?new Ue(this.model,e,this.context):new He(this.model,e,this.context)},He.prototype.handleChild=function(e){var t,n,i,r;if(t=this.getPropertyForNode(e),i=this.element,U(n=t.effectiveType||t.type))return this.valueHandler(t,i);var o=(r=t.isReference?this.referenceHandler(t).handleNode(e):this.handler(n).handleNode(e)).element;return void 0!==o&&(t.isMany?i.get(t.name).push(o):i.set(t.name,o),t.isReference?(de(o,{element:i}),this.context.addReference(o)):o.$parent=i),r},We.prototype=Object.create(He.prototype),We.prototype.createElement=function(e){var t=e.name,n=G(t),i=this.model,r=this.type,o=i.getPackage(n.prefix),s=o&&Pe(n,o)||t;if(!r.hasType(s))throw qe("unexpected element <"+e.originalName+">");return He.prototype.createElement.call(this,e)},Ue.prototype=Object.create(ze.prototype),Ue.prototype.createElement=function(e){var t=e.name,n=G(t).prefix,i=e.ns[n+"$uri"],r=e.attributes;return this.model.createAny(t,i,r)},Ue.prototype.handleChild=function(e){var t=new Ue(this.model,"Element",this.context).handleNode(e),n=this.element,i=t.element;return void 0!==i&&((n.$children=n.$children||[]).push(i),i.$parent=n),t},Ue.prototype.handleEnd=function(){this.body&&(this.element.$body=this.body)},Ge.prototype.fromXML=function(e,t,n){var i=t.rootHandler;t instanceof He?(i=t,t={}):"string"==typeof t?(i=this.handler(t),t={}):"string"==typeof i&&(i=this.handler(i));var r=this.model,o=this.lax,s=new Le(de({},t,{rootHandler:i})),a=new Ae({proxy:!0}),l=function(){var e=[];return Object.defineProperty(e,"peek",{value:function(){return this[this.length-1]}}),e}();function c(e,t,n){var i=t(),r=i.line,o=i.column,a=i.data;"<"===a.charAt(0)&&-1!==a.indexOf(" ")&&(a=a.slice(0,a.indexOf(" "))+">");var l="unparsable content "+(a?a+" ":"")+"detected\n\tline: "+r+"\n\tcolumn: "+o+"\n\tnested error: "+e.message;if(n)return s.addWarning({message:l,error:e}),!0;throw qe(l)}function h(e,t){return c(e,t,!0)}i.context=s,l.push(i);var u=/^<\?xml /i,d=/ encoding="([^"]+)"/i,p=/^utf-8$/i;function f(e,t){try{l.peek().handleText(e)}catch(e){h(e,t)}}var g=r.getPackages().reduce((function(e,t){return e[t.uri]=t.prefix,e}),{"http://www.w3.org/XML/1998/namespace":"xml"});return a.ns(g).on("openTag",(function(e,t,n,i){var r=e.attrs||{},s=Object.keys(r).reduce((function(e,n){var i=t(r[n]);return e[n]=i,e}),{});!function(e,t){var n=l.peek();try{l.push(n.handleNode(e))}catch(e){c(e,t,o)&&l.push(new je)}}({name:e.name,originalName:e.originalName,attributes:s,ns:e.ns},i)})).on("question",(function(e){if(u.test(e)){var t=d.exec(e),n=t&&t[1];n&&!p.test(n)&&s.addWarning({message:"unsupported document encoding <"+n+">, falling back to UTF-8"})}})).on("closeTag",(function(){l.pop().handleEnd()})).on("cdata",f).on("text",(function(e,t,n){!function(e,t){e.trim()&&f(e,t)}(t(e),n)})).on("error",c).on("warn",h),new Promise((function(t,n){var r;try{a.parse(e),function(){var e,t,n=s.elementsById,i=s.references;for(e=0;t=i[e];e++){var r=t.element,o=n[t.id],a=Be(r).propertiesByName[t.property];if(o||s.addWarning({message:"unresolved reference <"+t.id+">",element:t.element,property:t.property,value:t.id}),a.isMany){var l=r.get(a.name),c=l.indexOf(t);-1===c&&(c=l.length),o?l[c]=o:l.splice(c,1)}else r.set(a.name,o)}}()}catch(e){r=e}var o=i.element;r||o||(r=qe("failed to parse document as <"+i.type.$descriptor.name+">"));var l=s.warnings,c=s.references,h=s.elementsById;return r?(r.warnings=l,n(r)):t({rootElement:o,elementsById:h,references:c,warnings:l})}))},Ge.prototype.handler=function(e){return new We(this.model,e)};var Ke=/<|>|'|"|&|\n\r|\n/g,Xe=/<|>|&/g;function Ye(e){var t={},n={},i={},r=[],o=[];this.byUri=function(t){return n[t]||e&&e.byUri(t)},this.add=function(e,t){n[e.uri]=e,t?r.push(e):o.push(e),this.mapPrefix(e.prefix,e.uri)},this.uriByPrefix=function(e){return t[e||"xmlns"]},this.mapPrefix=function(e,n){t[e||"xmlns"]=n},this.getNSKey=function(e){return void 0!==e.prefix?e.uri+"|"+e.prefix:e.uri},this.logUsed=function(t){var n=t.uri,r=this.getNSKey(t);i[r]=this.byUri(n),e&&e.logUsed(t)},this.getUsed=function(e){var t=this;return[].concat(r,o).filter((function(e){var n=t.getNSKey(e);return i[n]}))}}function Je(e,t){return Re(t)?function(e){return e.charAt(0).toLowerCase()+e.slice(1)}(e):e}function Qe(e,t){e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}})}function Ze(e){return ie(e)?e:(e.prefix?e.prefix+":":"")+e.localName}var et={"\n":"#10","\n\r":"#10",'"':"#34","'":"#39","<":"#60",">":"#62","&":"#38"},tt={"<":"lt",">":"gt","&":"amp"};function nt(e,t,n){return(e=ie(e)?e:""+e).replace(t,(function(e){return"&"+n[e]+";"}))}function it(e){this.tagName=e}function rt(){}function ot(e){this.tagName=e}function st(e,t){this.body=[],this.attrs=[],this.parent=e,this.propertyDescriptor=t}function at(e,t){st.call(this,e,t)}function lt(){this.value="",this.write=function(e){this.value+=e}}function ct(e,t){var n=[""];this.append=function(t){return e.write(t),this},this.appendNewLine=function(){return t&&e.write("\n"),this},this.appendIndent=function(){return t&&e.write(n.join(" ")),this},this.indent=function(){return n.push(""),this},this.unindent=function(){return n.pop(),this}}function ht(e){return e=de({format:!1,preamble:!0},e||{}),{toXML:function(t,n){var i=n||new lt,r=new ct(i,e.format);if(e.preamble&&r.append('<?xml version="1.0" encoding="UTF-8"?>\n'),(new st).build(t).serializeTo(r),!n)return i.value}}}function ut(e,t){Z.call(this,e,t)}it.prototype.build=function(e){return this.element=e,this},it.prototype.serializeTo=function(e){e.appendIndent().append("<"+this.tagName+">"+this.element.id+"</"+this.tagName+">").appendNewLine()},rt.prototype.serializeValue=rt.prototype.serializeTo=function(e){e.append(this.escape?nt(this.value,Xe,tt):this.value)},rt.prototype.build=function(e,t){return this.value=t,"String"===e.type&&-1!==t.search(Xe)&&(this.escape=!0),this},Qe(ot,rt),ot.prototype.serializeTo=function(e){e.appendIndent().append("<"+this.tagName+">"),this.serializeValue(e),e.append("</"+this.tagName+">").appendNewLine()},st.prototype.build=function(e){this.element=e;var t,n,i=e.$descriptor,r=this.propertyDescriptor,o=i.isGeneric;return t=o?this.parseGeneric(e):this.parseNsAttributes(e),this.ns=r?this.nsPropertyTagName(r):this.nsTagName(i),this.tagName=this.addTagName(this.ns),o||(n=function(e){return se(e.$descriptor.properties,(function(t){var n=t.name;if(t.isVirtual)return!1;if(!re(e,n))return!1;var i=e[n];return i!==t.default&&null!==i&&(!t.isMany||i.length)}))}(e),this.parseAttributes(se(n,(function(e){return e.isAttr}))),this.parseContainments(function(e){return se(e,(function(e){return!e.isAttr}))}(n))),this.parseGenericAttributes(e,t),this},st.prototype.nsTagName=function(e){return function(e,t){return t.isGeneric?de({localName:t.ns.localName},e):de({localName:Je(t.ns.localName,t.$pkg)},e)}(this.logNamespaceUsed(e.ns),e)},st.prototype.nsPropertyTagName=function(e){return function(e,t){return de({localName:t.ns.localName},e)}(this.logNamespaceUsed(e.ns),e)},st.prototype.isLocalNs=function(e){return e.uri===this.ns.uri},st.prototype.nsAttributeName=function(e){var t;if(t=ie(e)?G(e):e.ns,e.inherited)return{localName:t.localName};var n=this.logNamespaceUsed(t);return this.getNamespaces().logUsed(n),this.isLocalNs(n)?{localName:t.localName}:de({localName:t.localName},n)},st.prototype.parseGeneric=function(e){var t=this,n=this.body,i=[];return ae(e,(function(r,o){"$body"===o?n.push((new rt).build({type:"String"},r)):"$children"===o?ae(r,(function(e){n.push(new st(t).build(e))})):0!==o.indexOf("$")&&t.parseNsAttribute(e,o,r)&&i.push({name:o,value:r})})),i},st.prototype.parseNsAttribute=function(e,t,n){var i,r=e.$model,o=G(t);if("xmlns"===o.prefix&&(i={prefix:o.localName,uri:n}),o.prefix||"xmlns"!==o.localName||(i={uri:n}),!i)return{name:t,value:n};if(r&&r.getPackage(n))this.logNamespace(i,!0,!0);else{var s=this.logNamespaceUsed(i,!0);this.getNamespaces().logUsed(s)}},st.prototype.parseNsAttributes=function(e,t){var n=this,i=e.$attrs,r=[];return ae(i,(function(t,i){var o=n.parseNsAttribute(e,i,t);o&&r.push(o)})),r},st.prototype.parseGenericAttributes=function(e,t){var n=this;ae(t,(function(t){if(t.name!==De)try{n.addAttribute(n.nsAttributeName(t.name),t.value)}catch(n){console.warn("missing namespace information for ",t.name,"=",t.value,"on",e,n)}}))},st.prototype.parseContainments=function(e){var t=this,n=this.body,i=this.element;ae(e,(function(e){var r=i.get(e.name),o=e.isReference;if(e.isMany||(r=[r]),e.isBody)n.push((new rt).build(e,r[0]));else if(U(e.type))ae(r,(function(i){n.push(new ot(t.addTagName(t.nsPropertyTagName(e))).build(e,i))}));else if(o)ae(r,(function(i){n.push(new it(t.addTagName(t.nsPropertyTagName(e))).build(i))}));else{var s=Ne(e),a=function(e){return"property"===Oe(e)}(e);ae(r,(function(i){var r;r=s?new at(t,e):a?new st(t,e):new st(t),n.push(r.build(i))}))}}))},st.prototype.getNamespaces=function(e){var t,n=this.namespaces,i=this.parent;return n||(t=i&&i.getNamespaces(),e||!t?this.namespaces=n=new Ye(t):n=t),n},st.prototype.logNamespace=function(e,t,n){var i=this.getNamespaces(n),r=e.uri,o=e.prefix;return i.byUri(r)&&!n||i.add(e,t),i.mapPrefix(o,r),e},st.prototype.logNamespaceUsed=function(e,t){var n,i,r,o=this.element.$model,s=this.getNamespaces(t),a=e.prefix,l=e.uri;if(!a&&!l)return{localName:e.localName};if(r=Te[a]||o&&(o.getPackage(a)||{}).uri,!(l=l||r||s.uriByPrefix(a)))throw new Error("no namespace uri given for prefix <"+a+">");if(!(e=s.byUri(l))){for(n=a,i=1;s.uriByPrefix(n);)n=a+"_"+i++;e=this.logNamespace({prefix:n,uri:l},r===l)}return a&&s.mapPrefix(a,l),e},st.prototype.parseAttributes=function(e){var t=this,n=this.element;ae(e,(function(e){var i=n.get(e.name);if(e.isReference)if(e.isMany){var r=[];ae(i,(function(e){r.push(e.id)})),i=r.join(" ")}else i=i.id;t.addAttribute(t.nsAttributeName(e),i)}))},st.prototype.addTagName=function(e){var t=this.logNamespaceUsed(e);return this.getNamespaces().logUsed(t),Ze(e)},st.prototype.addAttribute=function(e,t){var n=this.attrs;ie(t)&&(t=nt(t,Ke,et));var i=function(e,t){t=le(t);var n=ne(e)?-1:void 0;return ae(e,(function(e,i){if(t(e,i))return n=i,!1})),n}(n,(function(t){return t.name.localName===e.localName&&t.name.uri===e.uri&&t.name.prefix===e.prefix})),r={name:e,value:t};-1!==i?n.splice(i,1,r):n.push(r)},st.prototype.serializeAttributes=function(e){var t=this.attrs,n=this.namespaces;n&&(t=function(e){return e.getUsed().filter((function(e){return"xml"!==e.prefix})).map((function(e){return{name:"xmlns"+(e.prefix?":"+e.prefix:""),value:e.uri}}))}(n).concat(t)),ae(t,(function(t){e.append(" ").append(Ze(t.name)).append('="').append(t.value).append('"')}))},st.prototype.serializeTo=function(e){var t=this.body[0],n=t&&t.constructor!==rt;e.appendIndent().append("<"+this.tagName),this.serializeAttributes(e),e.append(t?">":" />"),t&&(n&&e.appendNewLine().indent(),ae(this.body,(function(t){t.serializeTo(e)})),n&&e.unindent().appendIndent(),e.append("</"+this.tagName+">")),e.appendNewLine()},Qe(at,st),at.prototype.parseNsAttributes=function(e){var t=st.prototype.parseNsAttributes.call(this,e),n=e.$descriptor;if(n.name===this.propertyDescriptor.type)return t;var i=this.typeNs=this.nsTagName(n);this.getNamespaces().logUsed(this.typeNs);var r=e.$model.getPackage(i.uri),o=r.xml&&r.xml.typePrefix||"";return this.addAttribute(this.nsAttributeName(De),(i.prefix?i.prefix+":":"")+o+n.ns.localName),t},at.prototype.isLocalNs=function(e){return e.uri===(this.typeNs||this.ns).uri},ut.prototype=Object.create(Z.prototype),ut.prototype.fromXML=function(e,t,n){var i;i=t,"[object String]"!==M.call(i)&&(n=t,t="dmn:Definitions");var r=new Ge(R({model:this,lax:!0},n)),o=r.handler(t);return r.fromXML(e,o)},ut.prototype.toXML=function(e,t){var n=new ht(t);return new Promise((function(t,i){try{return t({xml:n.toXML(e)})}catch(e){return i(e)}}))};var dt={dc:{name:"DC",prefix:"dc",uri:"http://www.omg.org/spec/DMN/20180521/DC/",types:[{name:"Dimension",properties:[{name:"width",isAttr:!0,type:"Real"},{name:"height",isAttr:!0,type:"Real"}]},{name:"Bounds",properties:[{name:"height",isAttr:!0,type:"Real"},{name:"width",isAttr:!0,type:"Real"},{name:"x",isAttr:!0,type:"Real"},{name:"y",isAttr:!0,type:"Real"}]},{name:"Point",properties:[{name:"x",isAttr:!0,type:"Real"},{name:"y",isAttr:!0,type:"Real"}]},{name:"Color",properties:[{name:"red",type:"UML_Standard_Profile.mdzip:eee_1045467100323_917313_65"},{name:"green",type:"UML_Standard_Profile.mdzip:eee_1045467100323_917313_65"},{name:"blue",type:"UML_Standard_Profile.mdzip:eee_1045467100323_917313_65"}]}],associations:[],enumerations:[{name:"AlignmentKind",literalValues:[{name:"start"},{name:"center"},{name:"end"}]}]},di:{name:"DI",prefix:"di",uri:"http://www.omg.org/spec/DMN/20180521/DI/",types:[{name:"DiagramElement",isAbstract:!0,properties:[{name:"extension",type:"Extension"},{name:"id",isAttr:!0,isId:!0,type:"String"},{name:"style",isReference:!0,type:"Style",xml:{serialize:"property"}},{name:"sharedStyle",isReference:!0,isVirtual:!0,type:"Style"}]},{name:"Diagram",superClass:["DiagramElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"documentation",isAttr:!0,type:"String"},{name:"resolution",isAttr:!0,type:"Real"}]},{name:"Shape",isAbstract:!0,properties:[{name:"bounds",type:"dc:Bounds"}],superClass:["DiagramElement"]},{name:"Edge",isAbstract:!0,properties:[{name:"waypoint",type:"dc:Point",isMany:!0,xml:{serialize:"property"}}],superClass:["DiagramElement"]},{name:"Style",isAbstract:!0,properties:[{name:"id",isAttr:!0,isId:!0,type:"String"}]},{name:"Extension",properties:[{name:"values",isMany:!0,type:"Element"}]}],associations:[],enumerations:[],xml:{tagAlias:"lowerCase"}},dmn:{name:"DMN",prefix:"dmn",uri:"https://www.omg.org/spec/DMN/20191111/MODEL/",types:[{name:"AuthorityRequirement",superClass:["DMNElement"],properties:[{name:"requiredAuthority",type:"DMNElementReference",xml:{serialize:"property"}},{name:"requiredDecision",type:"DMNElementReference",xml:{serialize:"property"}},{name:"requiredInput",type:"DMNElementReference",xml:{serialize:"property"}}]},{name:"ItemDefinition",superClass:["NamedElement"],properties:[{name:"typeRef",type:"String"},{name:"allowedValues",type:"UnaryTests",xml:{serialize:"property"}},{name:"typeLanguage",type:"String",isAttr:!0},{name:"itemComponent",type:"ItemDefinition",isMany:!0,xml:{serialize:"property"}},{name:"functionItem",type:"FunctionItem"},{name:"isCollection",isAttr:!0,type:"Boolean"}]},{name:"Definitions",superClass:["NamedElement"],properties:[{name:"import",type:"Import",isMany:!0},{name:"itemDefinition",type:"ItemDefinition",isMany:!0},{name:"drgElement",type:"DRGElement",isMany:!0},{name:"artifact",type:"Artifact",isMany:!0},{name:"elementCollection",type:"ElementCollection",isMany:!0},{name:"businessContextElement",type:"BusinessContextElement",isMany:!0},{name:"namespace",type:"String",isAttr:!0},{name:"expressionLanguage",type:"String",isAttr:!0},{name:"typeLanguage",type:"String",isAttr:!0},{name:"exporter",isAttr:!0,type:"String"},{name:"exporterVersion",isAttr:!0,type:"String"},{name:"dmnDI",type:"dmndi:DMNDI"}]},{name:"KnowledgeSource",superClass:["DRGElement"],properties:[{name:"authorityRequirement",type:"AuthorityRequirement",isMany:!0},{name:"type",type:"String"},{name:"owner",type:"DMNElementReference",xml:{serialize:"property"}},{name:"locationURI",type:"String",isAttr:!0}]},{name:"DecisionRule",superClass:["DMNElement"],properties:[{name:"inputEntry",type:"UnaryTests",isMany:!0,xml:{serialize:"property"}},{name:"outputEntry",type:"LiteralExpression",isMany:!0,xml:{serialize:"property"}},{name:"annotationEntry",type:"RuleAnnotation",isMany:!0,xml:{serialize:"property"}}]},{name:"Expression",isAbstract:!0,superClass:["DMNElement"],properties:[{name:"typeRef",isAttr:!0,type:"String"}]},{name:"InformationItem",superClass:["NamedElement"],properties:[{name:"typeRef",isAttr:!0,type:"String"}]},{name:"Decision",superClass:["DRGElement"],properties:[{name:"question",type:"String",xml:{serialize:"property"}},{name:"allowedAnswers",type:"String",xml:{serialize:"property"}},{name:"variable",type:"InformationItem",xml:{serialize:"property"}},{name:"informationRequirement",type:"InformationRequirement",isMany:!0},{name:"knowledgeRequirement",type:"KnowledgeRequirement",isMany:!0},{name:"authorityRequirement",type:"AuthorityRequirement",isMany:!0},{name:"supportedObjective",isMany:!0,type:"DMNElementReference",xml:{serialize:"property"}},{name:"impactedPerformanceIndicator",type:"DMNElementReference",isMany:!0,xml:{serialize:"property"}},{name:"decisionMaker",type:"DMNElementReference",isMany:!0,xml:{serialize:"property"}},{name:"decisionOwner",type:"DMNElementReference",isMany:!0,xml:{serialize:"property"}},{name:"usingProcess",isMany:!0,type:"DMNElementReference",xml:{serialize:"property"}},{name:"usingTask",isMany:!0,type:"DMNElementReference",xml:{serialize:"property"}},{name:"decisionLogic",type:"Expression"}]},{name:"Invocation",superClass:["Expression"],properties:[{name:"calledFunction",type:"Expression"},{name:"binding",type:"Binding",isMany:!0}]},{name:"OrganisationalUnit",superClass:["BusinessContextElement"],properties:[{name:"decisionMade",type:"Decision",isReference:!0,isMany:!0},{name:"decisionOwned",type:"Decision",isReference:!0,isMany:!0}]},{name:"Import",superClass:["NamedElement"],properties:[{name:"importType",type:"String",isAttr:!0},{name:"locationURI",type:"String",isAttr:!0},{name:"namespace",type:"String",isAttr:!0}]},{name:"InformationRequirement",superClass:["DMNElement"],properties:[{name:"requiredDecision",type:"DMNElementReference",xml:{serialize:"property"}},{name:"requiredInput",type:"DMNElementReference",xml:{serialize:"property"}}]},{name:"ElementCollection",superClass:["NamedElement"],properties:[{name:"drgElement",type:"DMNElementReference",isMany:!0,xml:{serialize:"property"}}]},{name:"DRGElement",isAbstract:!0,superClass:["NamedElement"],properties:[]},{name:"InputData",superClass:["DRGElement"],properties:[{name:"variable",type:"InformationItem",xml:{serialize:"property"}}]},{name:"DMNElement",isAbstract:!0,properties:[{name:"description",type:"String"},{name:"extensionElements",type:"ExtensionElements"},{name:"id",type:"String",isAttr:!0,isId:!0},{name:"extensionAttribute",type:"ExtensionAttribute",isMany:!0},{name:"label",isAttr:!0,type:"String"}]},{name:"InputClause",superClass:["DMNElement"],properties:[{name:"inputExpression",type:"LiteralExpression",xml:{serialize:"property"}},{name:"inputValues",type:"UnaryTests",xml:{serialize:"property"}}]},{name:"DecisionTable",superClass:["Expression"],properties:[{name:"input",type:"InputClause",isMany:!0,xml:{serialize:"property"}},{name:"output",type:"OutputClause",isMany:!0,xml:{serialize:"property"}},{name:"annotation",type:"RuleAnnotationClause",isMany:!0,xml:{serialize:"property"}},{name:"rule",type:"DecisionRule",isMany:!0,xml:{serialize:"property"}},{name:"hitPolicy",type:"HitPolicy",isAttr:!0,default:"UNIQUE"},{name:"aggregation",type:"BuiltinAggregator",isAttr:!0},{name:"preferredOrientation",type:"DecisionTableOrientation",isAttr:!0},{name:"outputLabel",isAttr:!0,type:"String"}]},{name:"LiteralExpression",superClass:["Expression"],properties:[{name:"expressionLanguage",type:"String",isAttr:!0},{name:"text",type:"String"},{name:"importedValues",type:"ImportedValues"}]},{name:"Binding",properties:[{name:"parameter",type:"InformationItem",xml:{serialize:"property"}},{name:"bindingFormula",type:"Expression"}]},{name:"KnowledgeRequirement",superClass:["DMNElement"],properties:[{name:"requiredKnowledge",type:"DMNElementReference",xml:{serialize:"property"}}]},{name:"BusinessKnowledgeModel",superClass:["Invocable"],properties:[{name:"encapsulatedLogic",type:"FunctionDefinition",xml:{serialize:"property"}},{name:"knowledgeRequirement",type:"KnowledgeRequirement",isMany:!0},{name:"authorityRequirement",type:"AuthorityRequirement",isMany:!0}]},{name:"BusinessContextElement",isAbstract:!0,superClass:["NamedElement"],properties:[{name:"URI",type:"String",isAttr:!0}]},{name:"PerformanceIndicator",superClass:["BusinessContextElement"],properties:[{name:"impactingDecision",type:"DMNElementReference",isMany:!0,xml:{serialize:"property"}}]},{name:"FunctionDefinition",superClass:["Expression"],properties:[{name:"formalParameter",type:"InformationItem",isMany:!0,xml:{serialize:"property"}},{name:"body",type:"Expression"},{name:"kind",type:"FunctionKind",isAttr:!0}]},{name:"Context",superClass:["Expression"],properties:[{name:"contextEntry",type:"ContextEntry",isMany:!0}]},{name:"ContextEntry",superClass:["DMNElement"],properties:[{name:"variable",type:"InformationItem",xml:{serialize:"property"}},{name:"value",type:"Expression"}]},{name:"List",superClass:["Expression"],properties:[{name:"elements",isMany:!0,type:"Expression"}]},{name:"Relation",superClass:["Expression"],properties:[{name:"column",type:"InformationItem",isMany:!0,xml:{serialize:"property"}},{name:"row",type:"List",isMany:!0,xml:{serialize:"property"}}]},{name:"OutputClause",superClass:["DMNElement"],properties:[{name:"outputValues",type:"UnaryTests",xml:{serialize:"property"}},{name:"defaultOutputEntry",type:"LiteralExpression",xml:{serialize:"property"}},{name:"name",isAttr:!0,type:"String"},{name:"typeRef",isAttr:!0,type:"String"}]},{name:"UnaryTests",superClass:["Expression"],properties:[{name:"text",type:"String"},{name:"expressionLanguage",type:"String",isAttr:!0}]},{name:"NamedElement",isAbstract:!0,superClass:["DMNElement"],properties:[{name:"name",isAttr:!0,type:"String"}]},{name:"ImportedValues",superClass:["Import"],properties:[{name:"importedElement",type:"String"},{name:"expressionLanguage",type:"String",isAttr:!0}]},{name:"DecisionService",superClass:["Invocable"],properties:[{name:"outputDecision",type:"DMNElementReference",isMany:!0,xml:{serialize:"property"}},{name:"encapsulatedDecision",type:"DMNElementReference",isMany:!0,xml:{serialize:"property"}},{name:"inputDecision",type:"DMNElementReference",isMany:!0,xml:{serialize:"property"}},{name:"inputData",type:"DMNElementReference",isMany:!0,xml:{serialize:"property"}}]},{name:"ExtensionElements",properties:[{name:"values",type:"Element",isMany:!0}]},{name:"ExtensionAttribute",properties:[{name:"value",type:"Element"},{name:"valueRef",type:"Element",isAttr:!0,isReference:!0},{name:"name",isAttr:!0,type:"String"}]},{name:"Element",isAbstract:!0,properties:[{name:"extensionAttribute",type:"ExtensionAttribute",isAttr:!0,isReference:!0},{name:"elements",type:"ExtensionElements",isAttr:!0,isReference:!0}]},{name:"Artifact",isAbstract:!0,superClass:["DMNElement"],properties:[]},{name:"Association",superClass:["Artifact"],properties:[{name:"sourceRef",type:"DMNElementReference",xml:{serialize:"property"}},{name:"targetRef",type:"DMNElementReference",xml:{serialize:"property"}},{name:"associationDirection",type:"AssociationDirection",isAttr:!0}]},{name:"TextAnnotation",superClass:["Artifact"],properties:[{name:"text",type:"String"},{name:"textFormat",isAttr:!0,type:"String",default:"text/plain"}]},{name:"RuleAnnotationClause",properties:[{name:"name",isAttr:!0,type:"String"}]},{name:"RuleAnnotation",properties:[{name:"text",type:"String"}]},{name:"Invocable",isAbstract:!0,superClass:["DRGElement"],properties:[{name:"variable",type:"InformationItem",xml:{serialize:"property"}}]},{name:"Group",superClass:["Artifact"],properties:[{name:"name",isAttr:!0,type:"String"}]},{name:"FunctionItem",superClass:["DMNElement"],properties:[{name:"parameters",isMany:!0,type:"InformationItem",xml:{serialize:"property"}},{name:"outputTypeRef",isAttr:!0,type:"String"}]},{name:"DMNElementReference",properties:[{isAttr:!0,name:"href",type:"String"}]}],enumerations:[{name:"HitPolicy",literalValues:[{name:"UNIQUE"},{name:"FIRST"},{name:"PRIORITY"},{name:"ANY"},{name:"COLLECT"},{name:"RULE ORDER"},{name:"OUTPUT ORDER"}]},{name:"BuiltinAggregator",literalValues:[{name:"SUM"},{name:"COUNT"},{name:"MIN"},{name:"MAX"}]},{name:"DecisionTableOrientation",literalValues:[{name:"Rule-as-Row"},{name:"Rule-as-Column"},{name:"CrossTable"}]},{name:"AssociationDirection",literalValues:[{name:"None"},{name:"One"},{name:"Both"}]},{name:"FunctionKind",literalValues:[{name:"FEEL"},{name:"Java"},{name:"PMML"}]}],associations:[],xml:{tagAlias:"lowerCase"}},dmndi:{name:"DMNDI",prefix:"dmndi",uri:"https://www.omg.org/spec/DMN/20191111/DMNDI/",types:[{name:"DMNDI",properties:[{name:"diagrams",type:"DMNDiagram",isMany:!0},{name:"styles",type:"DMNStyle",isMany:!0}]},{name:"DMNStyle",superClass:["di:Style"],properties:[{name:"fillColor",type:"dc:Color",isAttr:!0},{name:"strokeColor",type:"dc:Color",isAttr:!0},{name:"fontColor",type:"dc:Color",isAttr:!0},{name:"fontSize",isAttr:!0,type:"Real"},{name:"fontFamily",isAttr:!0,type:"String"},{name:"fontItalic",isAttr:!0,type:"Boolean"},{name:"fontBold",isAttr:!0,type:"Boolean"},{name:"fontUnderline",isAttr:!0,type:"Boolean"},{name:"fontStrikeThrough",isAttr:!0,type:"Boolean"},{name:"labelHorizontalAlignment",type:"dc:AlignmentKind",isAttr:!0},{name:"labelVerticalAlignment",type:"dc:AlignmentKind",isAttr:!0}]},{name:"DMNDiagram",superClass:["di:Diagram"],properties:[{name:"dmnElementRef",type:"dmn:DMNElement",isAttr:!0,isReference:!0},{name:"size",type:"Size"},{name:"localStyle",type:"DMNStyle",isVirtual:!0},{name:"sharedStyle",type:"DMNStyle",isVirtual:!0,isReference:!0,redefines:"di:DiagramElement#sharedStyle"},{name:"diagramElements",type:"DMNDiagramElement",isMany:!0}]},{name:"DMNDiagramElement",isAbstract:!0,superClass:["di:DiagramElement"],properties:[{name:"dmnElementRef",type:"dmn:DMNElement",isAttr:!0,isReference:!0},{name:"sharedStyle",type:"DMNStyle",isVirtual:!0,isReference:!0,redefines:"di:DiagramElement#sharedStyle"},{name:"localStyle",type:"DMNStyle",isVirtual:!0},{name:"label",type:"DMNLabel"}]},{name:"DMNLabel",superClass:["di:Shape"],properties:[{name:"text",type:"Text"}]},{name:"DMNShape",superClass:["di:Shape","DMNDiagramElement"],properties:[{name:"isListedInputData",isAttr:!0,type:"Boolean"},{name:"decisionServiceDividerLine",type:"DMNDecisionServiceDividerLine"},{name:"isCollapsed",isAttr:!0,type:"Boolean"}]},{name:"DMNEdge",superClass:["di:Edge","DMNDiagramElement"],properties:[{name:"sourceElement",type:"DMNDiagramElement",isAttr:!0,isReference:!0},{name:"targetElement",type:"DMNDiagramElement",isAttr:!0,isReference:!0}]},{name:"DMNDecisionServiceDividerLine",superClass:["di:Edge"]},{name:"Text",properties:[{name:"text",isBody:!0,type:"String"}]},{name:"Size",superClass:["dc:Dimension"]}],associations:[],enumerations:[]},biodi:{name:"bpmn.io DI for DMN",uri:"http://bpmn.io/schema/dmn/biodi/2.0",prefix:"biodi",xml:{tagAlias:"lowerCase"},types:[{name:"DecisionTable",isAbstract:!0,extends:["dmn:DecisionTable"],properties:[{name:"annotationsWidth",isAttr:!0,type:"Integer"}]},{name:"OutputClause",isAbstract:!0,extends:["dmn:OutputClause"],properties:[{name:"width",isAttr:!0,type:"Integer"}]},{name:"InputClause",isAbstract:!0,extends:["dmn:InputClause"],properties:[{name:"width",isAttr:!0,type:"Integer"}]}]}};function pt(e,t){return new ut(R({},dt,e),t)}function ft(e,t){return t.forEach((function(t){t&&"string"!=typeof t&&!Array.isArray(t)&&Object.keys(t).forEach((function(n){if("default"!==n&&!(n in e)){var i=Object.getOwnPropertyDescriptor(t,n);Object.defineProperty(e,n,i.get?i:{enumerable:!0,get:function(){return t[n]}})}}))})),Object.freeze(e)}const gt=Object.prototype.toString,mt=Object.prototype.hasOwnProperty;function vt(e,t){return mt.call(e,t)}function yt(e,t){let n,i;if(void 0===e)return;const r=function(e){return"[object Array]"===gt.call(e)}(e)?bt:wt;for(let o in e)if(vt(e,o)&&(n=e[o],i=t(n,r(o)),!1===i))return n}function wt(e){return e}function bt(e){return Number(e)}function xt(e,...t){const n=e.style;return yt(t,(function(e){e&&yt(e,(function(e,t){n[t]=e}))})),e}function _t(e,t,n){return 2==arguments.length?e.getAttribute(t):null===n?e.removeAttribute(t):(e.setAttribute(t,n),e)}const St=Object.prototype.toString;function kt(e){return new Ct(e)}function Ct(e){if(!e||!e.nodeType)throw new Error("A DOM element reference is required");this.el=e,this.list=e.classList}function Et(e){for(var t;t=e.firstChild;)e.removeChild(t);return e}function Mt(e,t,n){var i=n?e:e.parentNode;return i&&"function"==typeof i.closest&&i.closest(t)||null}Ct.prototype.add=function(e){return this.list.add(e),this},Ct.prototype.remove=function(e){return"[object RegExp]"==St.call(e)?this.removeMatching(e):(this.list.remove(e),this)},Ct.prototype.removeMatching=function(e){const t=this.array();for(let n=0;n<t.length;n++)e.test(t[n])&&this.remove(t[n]);return this},Ct.prototype.toggle=function(e,t){return void 0!==t?t!==this.list.toggle(e,t)&&this.list.toggle(e):this.list.toggle(e),this},Ct.prototype.array=function(){return Array.from(this.list)},Ct.prototype.has=Ct.prototype.contains=function(e){return this.list.contains(e)};var At,Rt,Tt,Dt={};function Ot(){At=window.addEventListener?"addEventListener":"attachEvent",Rt=window.removeEventListener?"removeEventListener":"detachEvent",Tt="addEventListener"!==At?"on":""}var Nt=ft({__proto__:null,bind:Dt.bind=function(e,t,n,i){return At||Ot(),e[At](Tt+t,n,i||!1),n},unbind:Dt.unbind=function(e,t,n,i){return Rt||Ot(),e[Rt](Tt+t,n,i||!1),n},default:Dt},[Dt]),Pt=["focus","blur"];var qt,Bt={bind:function(e,t,n,i,r){return-1!==Pt.indexOf(n)&&(r=!0),Nt.bind(e,n,(function(n){var r=n.target||n.srcElement;n.delegateTarget=Mt(r,t,!0),n.delegateTarget&&i.call(e,n)}),r)},unbind:function(e,t,n,i){return-1!==Pt.indexOf(t)&&(i=!0),Nt.unbind(e,t,n,i)}},Lt=function(e,t){if("string"!=typeof e)throw new TypeError("String expected");t||(t=document);var n=/<([\w:]+)/.exec(e);if(!n)return t.createTextNode(e);e=e.replace(/^\s+|\s+$/g,"");var i=n[1];if("body"==i){return(l=t.createElement("html")).innerHTML=e,l.removeChild(l.lastChild)}var r=Object.prototype.hasOwnProperty.call(jt,i)?jt[i]:jt._default,o=r[0],s=r[1],a=r[2],l=t.createElement("div");l.innerHTML=s+e+a;for(;o--;)l=l.lastChild;if(l.firstChild==l.lastChild)return l.removeChild(l.firstChild);var c=t.createDocumentFragment();for(;l.firstChild;)c.appendChild(l.removeChild(l.firstChild));return c},It=!1;"undefined"!=typeof document&&((qt=document.createElement("div")).innerHTML=' <link/><table></table><a href="/a">a</a><input type="checkbox"/>',It=!qt.getElementsByTagName("link").length,qt=void 0);var jt={legend:[1,"<fieldset>","</fieldset>"],tr:[2,"<table><tbody>","</tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],_default:It?[1,"X<div>","</div>"]:[0,"",""]};jt.td=jt.th=[3,"<table><tbody><tr>","</tr></tbody></table>"],jt.option=jt.optgroup=[1,'<select multiple="multiple">',"</select>"],jt.thead=jt.tbody=jt.colgroup=jt.caption=jt.tfoot=[1,"<table>","</table>"],jt.polyline=jt.ellipse=jt.polygon=jt.circle=jt.text=jt.line=jt.path=jt.rect=jt.g=[1,'<svg xmlns="http://www.w3.org/2000/svg" version="1.1">',"</svg>"];var Ft=Lt;function Vt(e,t){return(t=t||document).querySelector(e)}function $t(e){e.parentNode&&e.parentNode.removeChild(e)}function zt(e){return function(){if(!window.Promise)throw new Error("Promises is not supported in this environment. Please polyfill Promise.");var t=arguments.length;if(!(t>=1&&s(arguments[t-1])))return e.apply(this,arguments);var n=arguments[t-1];console.warn(new Error("Passing callbacks to "+function(e){return e.replace("bound ","")}(e.name)+" is deprecated and will be removed in a future major release. Please switch to promises: https://bpmn.io/l/moving-to-promises.html"));var i=Array.prototype.slice.call(arguments,0,-1);e.apply(this,i).then((function(e){var t=Object.keys(e)[0];return n(null,e[t])}),(function(e){return n(e,e.warnings)}))}}const Ht={width:"100%",height:"100%",position:"relative"};class Wt{constructor(e={}){this._eventBus=new C,this._viewsChanged=b(this._viewsChanged,0),this._views=[],this._viewers={},this.open=zt(this.open.bind(this)),this.importXML=zt(this.importXML.bind(this)),this.saveXML=zt(this.saveXML.bind(this)),this._init(e)}importXML(e,t){var n=this;return t=t||{open:!0},new Promise((function(r,o){var s=n._activeView;n._clear().then((()=>{var a;e=n._emit("import.parse.start",{xml:e})||e,n._moddle.fromXML(e,"dmn:Definitions").then((e=>{var l=e.rootElement,c=e.references,h=e.elementsById;if(a=e.warnings,l=n._emit("import.parse.complete",i({error:null,definitions:l,elementsById:h,references:c,warnings:a}))||l,n._setDefinitions(l),!t.open)return n._emit("import.done",{error:null,warnings:a}),void r({warnings:a});var u=n._getInitialView(n._views,s);if(!u){var d=new Error("no displayable contents");return n._emit("import.done",{error:d,warnings:a}),d.warnings=a,o(d)}n.open(u).then((e=>({warnings:e.warnings}))).catch((e=>({error:e,warnings:e.warnings}))).then((e=>{var t=[].concat(a,e.warnings);n._emit("import.done",{error:e.error,warnings:t}),e.error?(e.error.warnings=t,o(e.error)):r({warnings:t})}))})).catch((t=>(a=t.warnings,t=function(e,t){if("failed to parse document as <dmn:Definitions>"!==e.message)return null;var n=-1!==t.indexOf('"http://www.omg.org/spec/DMN/20151101/dmn.xsd"')?"1.1":-1!==t.indexOf('"http://www.omg.org/spec/DMN/20180521/MODEL/"')&&"1.2";if(!n)return null;return e=new Error("unsupported DMN "+n+" file detected; only DMN 1.3 files can be opened"),console.error("Cannot open what looks like a DMN "+n+" diagram. Please refer to https://bpmn.io/l/dmn-compatibility.html to learn how to make the toolkit compatible with older DMN files",e),e}(t,e)||function(e){var t=/unparsable content <([^>]+)> detected([\s\S]*)$/.exec(e.message);if(!t)return null;return e.message="unparsable content <"+t[1]+"> detected; this may indicate an invalid DMN 1.3 diagram file"+t[2],e}(t)||t,n._emit("import.parse.complete",i({error:t,warnings:a})),n._emit("import.done",{error:t,warnings:a}),t.warnings=a,o(t))))})).catch((e=>(n._emit("import.done",{error:e,warnings:[]}),e.warnings=[],o(e))))}));function i(e){var t=n._eventBus.createEvent(e);return Object.defineProperty(t,"context",{enumerable:!0,get:function(){return console.warn(new Error("import.parse.complete <context> is deprecated and will be removed in future library versions")),{warnings:e.warnings,references:e.references,elementsById:e.elementsById}}}),t}}getDefinitions(){return this._definitions}getActiveView(){return this._activeView}getActiveViewer(){var e=this.getActiveView();return e&&this._getViewer(e)}getView(e){return this._views.filter((function(t){return t.element===e}))[0]}getViews(){return this._views}saveXML(e){var t=this;e=e||{};var n=this._definitions;return new Promise((function(i,r){n?(n=t._emit("saveXML.start",{definitions:n})||n,t._moddle.toXML(n,e).then((function(e){var n=e.xml;return{xml:n=t._emit("saveXML.serialized",{xml:n})||n}})).catch((e=>({error:e}))).then((e=>{t._emit("saveXML.done",e),e.error?r(e.error):i({xml:e.xml})}))):r(new Error("no definitions loaded"))}))}on(...e){this._eventBus.on(...e)}off(...e){this._eventBus.off(...e)}once(...e){this._eventBus.once(...e)}attachTo(e){e.get&&e.constructor.prototype.jquery&&(e=e.get(0)),"string"==typeof e&&(e=Vt(e)),e.appendChild(this._container),this._emit("attach",{})}detach(){this._emit("detach",{}),$t(this._container)}destroy(){Object.keys(this._viewers).forEach((e=>{Xt(this._viewers[e],"destroy")})),$t(this._container)}_init(e){this._options=e,this._moddle=this._createModdle(e),this._viewers={},this._views=[];const t=Ft('<div class="dmn-js-parent"></div>'),n=_({},Ht,e);_(t.style,{width:Ut(n.width),height:Ut(n.height),position:n.position}),this._container=t,e.container&&this.attachTo(e.container)}_clear(){return this._switchView(null)}open(e){return this._switchView(e)}_setDefinitions(e){this._definitions=e,this._updateViews()}_viewsChanged=()=>{this._emit("views.changed",{views:this._views,activeView:this._activeView})};_updateViews(){var e=this._definitions;if(!e)return this._views=[],void this._switchView(null);var t=this._getViewProviders(),n=[e,...e.drgElement||[]],i=this._views,r=[];for(var o of n){var s=c(t,(function(e){return"string"==typeof e.opens?e.opens===o.$type:e.opens(o)}));if(s){var a={element:o,id:o.id,name:o.name,type:s.id};r.push(a)}}var l,h=this._activeView;if(!h||(l=c(r,(function(e){return Gt(h,e)}))||this._getInitialView(r),l)){var u=!Gt(h,l)||Kt(h,l),d=i.length!==r.length||!p(r,(function(e){return c(i,(function(t){return Gt(t,e)&&!Kt(t,e)}))}));this._activeView=l,this._views=r,(u||d)&&this._viewsChanged()}else this._switchView(null)}_getInitialView(e,t){var n;return t&&(n=c(e,(function(e){return Gt(e,t)}))||c(e,(function(e){return e.type===t}))),n||e[0]}_switchView(e){var t=this;return new Promise((function(n,i){var r,o=(e,r)=>{t._viewsChanged(),e?i(e):n(r)},s=t.getActiveView(),a=e&&t._getViewer(e),l=e&&e.element;if(s&&(r=t._getViewer(s))!==a&&(Xt(r,"clear"),r.detach()),t._activeView=e,a)return r!==a&&a.attachTo(t._container),t._emit("import.render.start",{view:e,element:l}),void a.open(l).then((n=>{t._emit("import.render.complete",{view:e,error:null,warnings:n.warnings}),o(null,n)})).catch((n=>{t._emit("import.render.complete",{view:e,error:n,warnings:n.warnings}),o(n,null)}));o()}))}_getViewer(e){var t=e.type,n=this._viewers[t];return n||(n=this._viewers[t]=this._createViewer(e.type),this._emit("viewer.created",{type:t,viewer:n})),n}_createViewer(e){var t=c(this._getViewProviders(),(function(t){return t.id===e}));if(!t)throw new Error("no provider for view type <"+e+">");var n=t.constructor,i=this._options[e]||{};return new n({...this._options.common||{},...i,additionalModules:[...i.additionalModules||[],{_parent:["value",this],moddle:["value",this._moddle]}]})}_emit(...e){return this._eventBus.fire(...e)}_createModdle(e){return new pt(e.moddleExtensions)}_getViewProviders(){return[]}}function Ut(e){return e+(o(e)?"px":"")}function Gt(e,t){return n(e)?!!n(t)&&(e.element===t.element||e.id===t.id):!n(t)}function Kt(e,t){return!e||!t||e.name!==t.name}function Xt(e,t){s(e[t])&&e[t]()}function Yt(e,t){t&&(e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}))}const Jt=/^class[ {]/;function Qt(e){return Array.isArray(e)}function Zt(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function en(...e){1===e.length&&Qt(e[0])&&(e=e[0]);const t=(e=[...e]).pop();return t.$inject=e,t}const tn=/constructor\s*[^(]*\(\s*([^)]*)\)/m,nn=/^(?:async\s+)?(?:function\s*[^(]*)?(?:\(\s*([^)]*)\)|(\w+))/m,rn=/\/\*([^*]*)\*\//m;function on(e){if("function"!=typeof e)throw new Error(`Cannot annotate "${e}". Expected a function!`);const t=e.toString().match(function(e){return Jt.test(e.toString())}(e)?tn:nn);if(!t)return[];const n=t[1]||t[2];return n&&n.split(",").map((e=>{const t=e.match(rn);return(t&&t[1]||e).trim()}))||[]}function sn(e,t){const n=t||{get:function(e,t){if(i.push(e),!1===t)return null;throw a(`No provider for "${e}"!`)}},i=[],r=this._providers=Object.create(n._providers||null),o=this._instances=Object.create(null),s=o.injector=this,a=function(e){const t=i.join(" -> ");return i.length=0,new Error(t?`${e} (Resolving: ${t})`:e)};function l(e,t){if(!r[e]&&e.includes(".")){const t=e.split(".");let n=l(t.shift());for(;t.length;)n=n[t.shift()];return n}if(Zt(o,e))return o[e];if(Zt(r,e)){if(-1!==i.indexOf(e))throw i.push(e),a("Cannot resolve circular dependency!");return i.push(e),o[e]=r[e][0](r[e][1]),i.pop(),o[e]}return n.get(e,t)}function c(e,t){if(void 0===t&&(t={}),"function"!=typeof e){if(!Qt(e))throw a(`Cannot invoke "${e}". Expected a function!`);e=en(e.slice())}return{fn:e,dependencies:(e.$inject||on(e)).map((e=>Zt(t,e)?t[e]:l(e)))}}function h(e){const{fn:t,dependencies:n}=c(e);return new(Function.prototype.bind.call(t,null,...n))}function u(e,t,n){const{fn:i,dependencies:r}=c(e,n);return i.apply(t,r)}function d(e){return en((t=>e.get(t)))}function p(e,t){if(t&&t.length){const n=Object.create(null),i=Object.create(null),o=[],s=[],a=[];let l,c,h,u;for(let e in r)l=r[e],-1!==t.indexOf(e)&&("private"===l[2]?(c=o.indexOf(l[3]),-1===c?(h=l[3].createChild([],t),u=d(h),o.push(l[3]),s.push(h),a.push(u),n[e]=[u,e,"private",h]):n[e]=[a[c],e,"private",s[c]]):n[e]=[l[2],l[1]],i[e]=!0),"factory"!==l[2]&&"type"!==l[2]||!l[1].$scope||t.forEach((t=>{-1!==l[1].$scope.indexOf(t)&&(n[e]=[l[2],l[1]],i[t]=!0)}));t.forEach((e=>{if(!i[e])throw new Error('No provider for "'+e+'". Cannot use provider from the parent!')})),e.unshift(n)}return new sn(e,s)}const f={factory:u,type:h,value:function(e){return e}};function g(e,t){const n=e.__init__||[];return function(){n.forEach((e=>{"string"==typeof e?t.get(e):t.invoke(e)}))}}function m(e){const t=e.__exports__;if(t){const n=e.__modules__,i=Object.keys(e).reduce(((t,n)=>("__exports__"!==n&&"__modules__"!==n&&"__init__"!==n&&"__depends__"!==n&&(t[n]=e[n]),t)),Object.create(null)),o=p((n||[]).concat(i)),s=en((function(e){return o.get(e)}));t.forEach((function(e){r[e]=[s,e,"private",o]}));const a=(e.__init__||[]).slice();return a.unshift((function(){o.init()})),g(e=Object.assign({},e,{__init__:a}),o)}return Object.keys(e).forEach((function(t){if("__init__"===t||"__depends__"===t)return;const n=e[t];if("private"===n[2])return void(r[t]=n);const i=n[0],o=n[1];r[t]=[f[i],an(i,o),i]})),g(e,s)}function v(e,t){return-1!==e.indexOf(t)||-1!==(e=(t.__depends__||[]).reduce(v,e)).indexOf(t)?e:e.concat(t)}this.get=l,this.invoke=u,this.instantiate=h,this.createChild=p,this.init=function(e){const t=e.reduce(v,[]).map(m);let n=!1;return function(){n||(n=!0,t.forEach((e=>e())))}}(e)}function an(e,t){return"value"!==e&&Qt(t)&&(t=en(t.slice())),t}var ln=1e3;function cn(e,t){var n=this;t=t||ln,e.on(["render.shape","render.connection"],t,(function(e,t){var i=e.type,r=t.element,o=t.gfx,s=t.attrs;if(n.canRender(r))return"render.shape"===i?n.drawShape(o,r,s):n.drawConnection(o,r,s)})),e.on(["render.getShapePath","render.getConnectionPath"],t,(function(e,t){if(n.canRender(t))return"render.getShapePath"===e.type?n.getShapePath(t):n.getConnectionPath(t)}))}function hn(e,t){return function(e,t){t.appendChild(function(e,t){if(e.ownerDocument!==t.ownerDocument)try{return t.ownerDocument.importNode(e,!0)}catch(e){}return e}(e,t))}(t,e),e}cn.prototype.canRender=function(e){},cn.prototype.drawShape=function(e,t){},cn.prototype.drawConnection=function(e,t){},cn.prototype.getShapePath=function(e){},cn.prototype.getConnectionPath=function(e){};var un=2,dn={"alignment-baseline":1,"baseline-shift":1,clip:1,"clip-path":1,"clip-rule":1,color:1,"color-interpolation":1,"color-interpolation-filters":1,"color-profile":1,"color-rendering":1,cursor:1,direction:1,display:1,"dominant-baseline":1,"enable-background":1,fill:1,"fill-opacity":1,"fill-rule":1,filter:1,"flood-color":1,"flood-opacity":1,font:1,"font-family":1,"font-size":un,"font-size-adjust":1,"font-stretch":1,"font-style":1,"font-variant":1,"font-weight":1,"glyph-orientation-horizontal":1,"glyph-orientation-vertical":1,"image-rendering":1,kerning:1,"letter-spacing":1,"lighting-color":1,marker:1,"marker-end":1,"marker-mid":1,"marker-start":1,mask:1,opacity:1,overflow:1,"pointer-events":1,"shape-rendering":1,"stop-color":1,"stop-opacity":1,stroke:1,"stroke-dasharray":1,"stroke-dashoffset":1,"stroke-linecap":1,"stroke-linejoin":1,"stroke-miterlimit":1,"stroke-opacity":1,"stroke-width":un,"text-anchor":1,"text-decoration":1,"text-rendering":1,"unicode-bidi":1,visibility:1,"word-spacing":1,"writing-mode":1};function pn(e,t,n){var i=t.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase(),r=dn[i];r?(r===un&&"number"==typeof n&&(n=String(n)+"px"),e.style[i]=n):e.setAttributeNS(null,t,n)}function fn(e,t,n){if("string"==typeof t){if(void 0===n)return function(e,t){return dn[t]?e.style[t]:e.getAttributeNS(null,t)}(e,t);pn(e,t,n)}else!function(e,t){var n,i,r=Object.keys(t);for(n=0;i=r[n];n++)pn(e,i,t[i])}(e,t);return e}const gn=Object.prototype.toString;function mn(e){return new vn(e)}function vn(e){if(!e||!e.nodeType)throw new Error("A DOM element reference is required");this.el=e,this.list=e.classList}vn.prototype.add=function(e){return this.list.add(e),this},vn.prototype.remove=function(e){return"[object RegExp]"==gn.call(e)?this.removeMatching(e):(this.list.remove(e),this)},vn.prototype.removeMatching=function(e){const t=this.array();for(let n=0;n<t.length;n++)e.test(t[n])&&this.remove(t[n]);return this},vn.prototype.toggle=function(e,t){return void 0!==t?t!==this.list.toggle(e,t)&&this.list.toggle(e):this.list.toggle(e),this},vn.prototype.array=function(){return Array.from(this.list)},vn.prototype.has=vn.prototype.contains=function(e){return this.list.contains(e)};var yn={svg:"http://www.w3.org/2000/svg"},wn='<svg xmlns="'+yn.svg+'"';function bn(e){var t=!1;"<svg"===e.substring(0,4)?-1===e.indexOf(yn.svg)&&(e=wn+e.substring(4)):(e=wn+">"+e+"</svg>",t=!0);var n=function(e){var t;return(t=new DOMParser).async=!1,t.parseFromString(e,"text/xml")}(e);if(!t)return n;for(var i=document.createDocumentFragment(),r=n.firstChild;r.firstChild;)i.appendChild(r.firstChild);return i}function xn(e,t){var n;return"<"===(e=e.trim()).charAt(0)?(n=bn(e).firstChild,n=document.importNode(n,!0)):n=document.createElementNS(yn.svg,e),t&&fn(n,t),n}var _n=null;function Sn(){return null===_n&&(_n=xn("svg")),_n}function kn(e,t){var n,i,r=Object.keys(t);for(n=0;i=r[n];n++)e[i]=t[i];return e}var Cn=/([&<>]{1})/g,En=/([&<>\n\r"]{1})/g,Mn={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"'"};function An(e,t){return e.replace(t,(function(e,t){return Mn[t]||t}))}function Rn(e,t){var n,i,r,o,s;switch(e.nodeType){case 3:t.push(An(e.textContent,Cn));break;case 1:if(t.push("<",e.tagName),e.hasAttributes())for(n=0,i=(r=e.attributes).length;n<i;++n)o=r.item(n),t.push(" ",o.name,'="',An(o.value,En),'"');if(e.hasChildNodes()){for(t.push(">"),n=0,i=(s=e.childNodes).length;n<i;++n)Rn(s.item(n),t);t.push("</",e.tagName,">")}else t.push("/>");break;case 8:t.push("\x3c!--",An(e.nodeValue,Cn),"--\x3e");break;case 4:t.push("<![CDATA[",e.nodeValue,"]]>");break;default:throw new Error("unable to handle node "+e.nodeType)}return t}function Tn(e,t){return function(e){for(var t=e.firstChild,n=[];t;)Rn(t,n),t=t.nextSibling;return n.join("")}(e)}function Dn(e){var t=e.parentNode;return t&&t.removeChild(e),e}function On(e,t){return t instanceof SVGMatrix?e.createSVGTransformFromMatrix(t):t}function Nn(e,t){var n=e.transform.baseVal;return t&&(Array.isArray(t)||(t=[t]),function(e,t){var n,i;for(e.clear(),n=0;i=t[n];n++)e.appendItem(On(e,i))}(n,t)),n.consolidate()}function Pn(e){return e.flat().join(",").replace(/,?([A-z]),?/g,"$1")}function qn(e){return["L",e.x,e.y]}function Bn(e,t){const n=e.length,i=[(r=e[0],["M",r.x,r.y])];var r,o,s,a;for(let r=1;r<n;r++){const n=e[r-1],l=e[r],c=e[r+1];if(!c||!t){i.push(qn(l));continue}const h=Math.min(t,In(l.x-n.x,l.y-n.y),In(c.x-l.x,c.y-l.y));if(!h){i.push(qn(l));continue}const u=Ln(l,n,h),d=Ln(l,n,.5*h),p=Ln(l,c,h),f=Ln(l,c,.5*h);i.push(qn(u)),i.push((s=f,a=p,["C",(o=d).x,o.y,s.x,s.y,a.x,a.y]))}return i}function Ln(e,t,n){const i=t.x-e.x,r=t.y-e.y,o=n/In(i,r);return{x:e.x+i*o,y:e.y+r*o}}function In(e,t){return Math.sqrt(Math.pow(e,2)+Math.pow(t,2))}function jn(e,t,n){o(t)&&(n=t,t=null),t||(t={});const i=xn("path",t);return o(n)&&(i.dataset.cornerRadius=String(n)),Fn(i,e)}function Fn(e,t){return fn(e,{d:Pn(Bn(t,parseInt(e.dataset.cornerRadius,10)||0))}),e}function Vn(e,t){var n,r,o,s;return t=!!t,i(e)||(e=[e]),u(e,(function(e){var i=e;e.waypoints&&!t&&(i=Vn(e.waypoints,!0));var a=i.x,l=i.y,c=i.height||0,h=i.width||0;(a<n||void 0===n)&&(n=a),(l<r||void 0===r)&&(r=l),(a+h>o||void 0===o)&&(o=a+h),(l+c>s||void 0===s)&&(s=l+c)})),{x:n,y:r,height:s-r,width:o-n}}function $n(e){return!(!e||!e.isFrame)}function zn(e,t){cn.call(this,e,1),this.CONNECTION_STYLE=t.style(["no-fill"],{strokeWidth:5,stroke:"fuchsia"}),this.SHAPE_STYLE=t.style({fill:"white",stroke:"fuchsia",strokeWidth:2}),this.FRAME_STYLE=t.style(["no-fill"],{stroke:"fuchsia",strokeDasharray:4,strokeWidth:2})}Yt(zn,cn),zn.prototype.canRender=function(){return!0},zn.prototype.drawShape=function(e,t,n){var i=xn("rect");return fn(i,{x:0,y:0,width:t.width||0,height:t.height||0}),$n(t)?fn(i,_({},this.FRAME_STYLE,n||{})):fn(i,_({},this.SHAPE_STYLE,n||{})),hn(e,i),i},zn.prototype.drawConnection=function(e,t,n){var i=jn(t.waypoints,_({},this.CONNECTION_STYLE,n||{}));return hn(e,i),i},zn.prototype.getShapePath=function(e){var t=e.x,n=e.y,i=e.width;return Pn([["M",t,n],["l",i,0],["l",0,e.height],["l",-i,0],["z"]])},zn.prototype.getConnectionPath=function(e){var t,n,i=e.waypoints,r=[];for(t=0;n=i[t];t++)n=n.original||n,r.push([0===t?"M":"L",n.x,n.y]);return Pn(r)},zn.$inject=["eventBus","styles"];var Hn={__init__:["defaultRenderer"],defaultRenderer:["type",zn],styles:["type",function(){var e={"no-fill":{fill:"none"},"no-border":{strokeOpacity:0},"no-events":{pointerEvents:"none"}},t=this;this.cls=function(e,t,n){return _(this.style(t,n),{class:e})},this.style=function(t,n){i(t)||n||(n=t,t=[]);var r=d(t,(function(t,n){return _(t,e[n]||{})}),{});return n?_(r,n):r},this.computeStyle=function(e,n,r){return i(n)||(r=n,n=[]),t.style(n||[],_({},r,e||{}))}}]};function Wn(e){return{top:e.y,right:e.x+(e.width||0),bottom:e.y+(e.height||0),left:e.x}}function Un(e,t){return Math.round(e*t)/t}function Gn(e){return o(e)?e+"px":e}function Kn(e,t,n){const i=xn("g");mn(i).add(t);const r=void 0!==n?n:e.childNodes.length-1;return e.insertBefore(i,e.childNodes[r]||null),i}const Xn={shape:["x","y","width","height"],connection:["waypoints"]};function Yn(e,t,n,i){this._eventBus=t,this._elementRegistry=i,this._graphicsFactory=n,this._rootsIdx=0,this._layers={},this._planes=[],this._rootElement=null,this._focused=!1,this._init(e||{})}function Jn(e,t){const n="matrix("+t.a+","+t.b+","+t.c+","+t.d+","+t.e+","+t.f+")";e.setAttribute("transform",n)}Yn.$inject=["config.canvas","eventBus","graphicsFactory","elementRegistry"],Yn.prototype._init=function(e){const t=this._eventBus,n=this._container=function(e){const t=(e=_({},{width:"100%",height:"100%"},e)).container||document.body,n=document.createElement("div");return n.setAttribute("class","djs-container djs-parent"),xt(n,{position:"relative",overflow:"hidden",width:Gn(e.width),height:Gn(e.height)}),t.appendChild(n),n}(e),i=this._svg=xn("svg");fn(i,{width:"100%",height:"100%"}),_t(i,"tabindex",0),t.on("element.hover",(()=>{this.restoreFocus()})),i.addEventListener("focusin",(()=>{this._focused=!0,t.fire("canvas.focus.changed",{focused:!0})})),i.addEventListener("focusout",(()=>{this._focused=!1,t.fire("canvas.focus.changed",{focused:!1})})),hn(n,i);const r=this._viewport=Kn(i,"viewport");e.deferUpdate&&(this._viewboxChanged=b(x(this._viewboxChanged,this),300)),t.on("diagram.init",(()=>{t.fire("canvas.init",{svg:i,viewport:r})})),t.on(["shape.added","connection.added","shape.removed","connection.removed","elements.changed","root.set"],(()=>{delete this._cachedViewbox})),t.on("diagram.destroy",500,this._destroy,this),t.on("diagram.clear",500,this._clear,this)},Yn.prototype._destroy=function(){this._eventBus.fire("canvas.destroy",{svg:this._svg,viewport:this._viewport});const e=this._container.parentNode;e&&e.removeChild(this._container),delete this._svg,delete this._container,delete this._layers,delete this._planes,delete this._rootElement,delete this._viewport},Yn.prototype._clear=function(){this._elementRegistry.getAll().forEach((e=>{const t=function(e){return"waypoints"in e?"connection":"x"in e?"shape":"root"}(e);"root"===t?this.removeRootElement(e):this._removeElement(e,t)})),this._planes=[],this._rootElement=null,delete this._cachedViewbox},Yn.prototype.focus=function(){this._svg.focus({preventScroll:!0})},Yn.prototype.restoreFocus=function(){document.activeElement===document.body&&this.focus()},Yn.prototype.isFocused=function(){return this._focused},Yn.prototype.getDefaultLayer=function(){return this.getLayer("base",0)},Yn.prototype.getLayer=function(e,t){if(!e)throw new Error("must specify a name");let n=this._layers[e];if(n||(n=this._layers[e]=this._createLayer(e,t)),void 0!==t&&n.index!==t)throw new Error("layer <"+e+"> already created at index <"+t+">");return n.group},Yn.prototype._getChildIndex=function(e){return d(this._layers,(function(t,n){return n.visible&&e>=n.index&&t++,t}),0)},Yn.prototype._createLayer=function(e,t){void 0===t&&(t=1);const n=this._getChildIndex(t);return{group:Kn(this._viewport,"layer-"+e,n),index:t,visible:!0}},Yn.prototype.showLayer=function(e){if(!e)throw new Error("must specify a name");const t=this._layers[e];if(!t)throw new Error("layer <"+e+"> does not exist");const n=this._viewport,i=t.group,r=t.index;if(t.visible)return i;const o=this._getChildIndex(r);return n.insertBefore(i,n.childNodes[o]||null),t.visible=!0,i},Yn.prototype.hideLayer=function(e){if(!e)throw new Error("must specify a name");const t=this._layers[e];if(!t)throw new Error("layer <"+e+"> does not exist");const n=t.group;return t.visible?(Dn(n),t.visible=!1,n):n},Yn.prototype._removeLayer=function(e){const t=this._layers[e];t&&(delete this._layers[e],Dn(t.group))},Yn.prototype.getActiveLayer=function(){const e=this._findPlaneForRoot(this.getRootElement());return e?e.layer:null},Yn.prototype.findRoot=function(e){if("string"==typeof e&&(e=this._elementRegistry.get(e)),!e)return;const t=this._findPlaneForRoot(function(e){for(;e.parent;)e=e.parent;return e}(e))||{};return t.rootElement},Yn.prototype.getRootElements=function(){return this._planes.map((function(e){return e.rootElement}))},Yn.prototype._findPlaneForRoot=function(e){return c(this._planes,(function(t){return t.rootElement===e}))},Yn.prototype.getContainer=function(){return this._container},Yn.prototype._updateMarker=function(e,t,n){let i;e.id||(e=this._elementRegistry.get(e)),e.markers=e.markers||new Set,i=this._elementRegistry._elements[e.id],i&&(u([i.gfx,i.secondaryGfx],(function(i){i&&(n?(e.markers.add(t),mn(i).add(t)):(e.markers.delete(t),mn(i).remove(t)))})),this._eventBus.fire("element.marker.update",{element:e,gfx:i.gfx,marker:t,add:!!n}))},Yn.prototype.addMarker=function(e,t){this._updateMarker(e,t,!0)},Yn.prototype.removeMarker=function(e,t){this._updateMarker(e,t,!1)},Yn.prototype.hasMarker=function(e,t){return e.id||(e=this._elementRegistry.get(e)),!!e.markers&&e.markers.has(t)},Yn.prototype.toggleMarker=function(e,t){this.hasMarker(e,t)?this.removeMarker(e,t):this.addMarker(e,t)},Yn.prototype.getRootElement=function(){const e=this._rootElement;return e||this._planes.length?e:this.setRootElement(this.addRootElement(null))},Yn.prototype.addRootElement=function(e){const t=this._rootsIdx++;e||(e={id:"__implicitroot_"+t,children:[],isImplicit:!0});const n=e.layer="root-"+t;this._ensureValid("root",e);const i=this.getLayer(n,0);return this.hideLayer(n),this._addRoot(e,i),this._planes.push({rootElement:e,layer:i}),e},Yn.prototype.removeRootElement=function(e){"string"==typeof e&&(e=this._elementRegistry.get(e));if(this._findPlaneForRoot(e))return this._removeRoot(e),this._removeLayer(e.layer),this._planes=this._planes.filter((function(t){return t.rootElement!==e})),this._rootElement===e&&(this._rootElement=null),e},Yn.prototype.setRootElement=function(e){if(e===this._rootElement)return e;let t;if(!e)throw new Error("rootElement required");return t=this._findPlaneForRoot(e),t||(e=this.addRootElement(e)),this._setRoot(e),e},Yn.prototype._removeRoot=function(e){const t=this._elementRegistry,n=this._eventBus;n.fire("root.remove",{element:e}),n.fire("root.removed",{element:e}),t.remove(e)},Yn.prototype._addRoot=function(e,t){const n=this._elementRegistry,i=this._eventBus;i.fire("root.add",{element:e}),n.add(e,t),i.fire("root.added",{element:e,gfx:t})},Yn.prototype._setRoot=function(e,t){const n=this._rootElement;n&&(this._elementRegistry.updateGraphics(n,null,!0),this.hideLayer(n.layer)),e&&(t||(t=this._findPlaneForRoot(e).layer),this._elementRegistry.updateGraphics(e,this._svg,!0),this.showLayer(e.layer)),this._rootElement=e,this._eventBus.fire("root.set",{element:e})},Yn.prototype._ensureValid=function(e,t){if(!t.id)throw new Error("element must have an id");if(this._elementRegistry.get(t.id))throw new Error("element <"+t.id+"> already exists");const n=Xn[e],i=p(n,(function(e){return void 0!==t[e]}));if(!i)throw new Error("must supply { "+n.join(", ")+" } with "+e)},Yn.prototype._setParent=function(e,t,n){!function(e,t,n){if(e&&t){"number"!=typeof n&&(n=-1);var i=e.indexOf(t);if(-1!==i){if(i===n)return;if(-1===n)return;e.splice(i,1)}-1!==n?e.splice(n,0,t):e.push(t)}}(t.children,e,n),e.parent=t},Yn.prototype._addElement=function(e,t,n,i){n=n||this.getRootElement();const r=this._eventBus,o=this._graphicsFactory;this._ensureValid(e,t),r.fire(e+".add",{element:t,parent:n}),this._setParent(t,n,i);const s=o.create(e,t,i);return this._elementRegistry.add(t,s),o.update(e,t,s),r.fire(e+".added",{element:t,gfx:s}),t},Yn.prototype.addShape=function(e,t,n){return this._addElement("shape",e,t,n)},Yn.prototype.addConnection=function(e,t,n){return this._addElement("connection",e,t,n)},Yn.prototype._removeElement=function(e,t){const n=this._elementRegistry,i=this._graphicsFactory,r=this._eventBus;if(e=n.get(e.id||e))return r.fire(t+".remove",{element:e}),i.remove(e),function(e,t){if(!e||!t)return-1;var n=e.indexOf(t);-1!==n&&e.splice(n,1)}(e.parent&&e.parent.children,e),e.parent=null,r.fire(t+".removed",{element:e}),n.remove(e),e},Yn.prototype.removeShape=function(e){return this._removeElement(e,"shape")},Yn.prototype.removeConnection=function(e){return this._removeElement(e,"connection")},Yn.prototype.getGraphics=function(e,t){return this._elementRegistry.getGraphics(e,t)},Yn.prototype._changeViewbox=function(e){this._eventBus.fire("canvas.viewbox.changing"),e.apply(this),this._cachedViewbox=null,this._viewboxChanged()},Yn.prototype._viewboxChanged=function(){this._eventBus.fire("canvas.viewbox.changed",{viewbox:this.viewbox()})},Yn.prototype.viewbox=function(e){if(void 0===e&&this._cachedViewbox)return structuredClone(this._cachedViewbox);const t=this._viewport,n=this.getSize();let i,r,o,s,a,l,c;return e?(this._changeViewbox((function(){a=Math.min(n.width/e.width,n.height/e.height);const i=this._svg.createSVGMatrix().scale(a).translate(-e.x,-e.y);Nn(t,i)})),e):(o=this._rootElement?this.getActiveLayer():null,i=o&&o.getBBox()||{},s=Nn(t),r=s?s.matrix:function(e,t,n,i,r,o){var s=Sn().createSVGMatrix();switch(arguments.length){case 0:return s;case 1:return kn(s,e);case 6:return kn(s,{a:e,b:t,c:n,d:i,e:r,f:o})}}(),a=Un(r.a,1e3),l=Un(-r.e||0,1e3),c=Un(-r.f||0,1e3),e=this._cachedViewbox={x:l?l/a:0,y:c?c/a:0,width:n.width/a,height:n.height/a,scale:a,inner:{width:i.width||0,height:i.height||0,x:i.x||0,y:i.y||0},outer:n})},Yn.prototype.scroll=function(e){const t=this._viewport;let n=t.getCTM();return e&&this._changeViewbox((function(){e=_({dx:0,dy:0},e||{}),n=this._svg.createSVGMatrix().translate(e.dx,e.dy).multiply(n),Jn(t,n)})),{x:n.e,y:n.f}},Yn.prototype.scrollToElement=function(e,t){let n=100;"string"==typeof e&&(e=this._elementRegistry.get(e));const i=this.findRoot(e);if(i!==this.getRootElement()&&this.setRootElement(i),i===e)return;t||(t={}),"number"==typeof t&&(n=t),t={top:t.top||n,right:t.right||n,bottom:t.bottom||n,left:t.left||n};const r=Vn(e),o=Wn(r),s=this.viewbox(),a=this.zoom();let l,c;s.y+=t.top/a,s.x+=t.left/a,s.width-=(t.right+t.left)/a,s.height-=(t.bottom+t.top)/a;const h=Wn(s);if(r.width<s.width&&r.height<s.height){const e=Math.max(0,o.right-h.right),t=Math.min(0,o.left-h.left),n=Math.max(0,o.bottom-h.bottom),i=Math.min(0,o.top-h.top);l=e||t,c=n||i}else l=r.x-s.x,c=r.y-s.y;this.scroll({dx:-l*a,dy:-c*a})},Yn.prototype.zoom=function(e,t){if(!e)return this.viewbox(e).scale;if("fit-viewport"===e)return this._fitViewport(t);let n,i;return this._changeViewbox((function(){"object"!=typeof t&&(n=this.viewbox().outer,t={x:n.width/2,y:n.height/2}),i=this._setZoom(e,t)})),Un(i.a,1e3)},Yn.prototype._fitViewport=function(e){const t=this.viewbox(),n=t.outer,i=t.inner;let r,o;return i.x>=0&&i.y>=0&&i.x+i.width<=n.width&&i.y+i.height<=n.height&&!e?o={x:0,y:0,width:Math.max(i.width+i.x,n.width),height:Math.max(i.height+i.y,n.height)}:(r=Math.min(1,n.width/i.width,n.height/i.height),o={x:i.x+(e?i.width/2-n.width/r/2:0),y:i.y+(e?i.height/2-n.height/r/2:0),width:n.width/r,height:n.height/r}),this.viewbox(o),this.viewbox(!1).scale},Yn.prototype._setZoom=function(e,t){const n=this._svg,i=this._viewport,r=n.createSVGMatrix(),o=n.createSVGPoint();let s,a,l,c,h;l=i.getCTM();const u=l.a;return t?(s=_(o,t),a=s.matrixTransform(l.inverse()),c=r.translate(a.x,a.y).scale(1/u*e).translate(-a.x,-a.y),h=l.multiply(c)):h=r.scale(e),Jn(this._viewport,h),h},Yn.prototype.getSize=function(){return{width:this._container.clientWidth,height:this._container.clientHeight}},Yn.prototype.getAbsoluteBBox=function(e){const t=this.viewbox();let n;if(e.waypoints){n=this.getGraphics(e).getBBox()}else n=e;return{x:n.x*t.scale-t.x*t.scale,y:n.y*t.scale-t.y*t.scale,width:n.width*t.scale,height:n.height*t.scale}},Yn.prototype.resized=function(){delete this._cachedViewbox,this._eventBus.fire("canvas.resized")};var Qn="data-element-id";function Zn(e){this._elements={},this._eventBus=e}function ei(e,t,n){var i=function(e,t,n,i){var r=n.inverse;return Object.defineProperty(e,"remove",{value:function(e){var n=this.indexOf(e);return-1!==n&&(this.splice(n,1),t.unset(e,r,i)),e}}),Object.defineProperty(e,"contains",{value:function(e){return-1!==this.indexOf(e)}}),Object.defineProperty(e,"add",{value:function(e,n){var o=this.indexOf(e);if(void 0===n){if(-1!==o)return;n=this.length}-1!==o&&this.splice(o,1),this.splice(n,0,e),-1===o&&t.set(e,r,i)}}),Object.defineProperty(e,"__refs_collection",{value:!0}),e}(n[t.name]||[],e,t,n);Object.defineProperty(n,t.name,{enumerable:t.enumerable,value:i}),i.length&&i.forEach((function(i){e.set(i,t.inverse,n)}))}function ti(e,t){if(!(this instanceof ti))return new ti(e,t);e.inverse=t,t.inverse=e,this.props={},this.props[e.name]=e,this.props[t.name]=t}Zn.$inject=["eventBus"],Zn.prototype.add=function(e,t,n){var i=e.id;this._validateId(i),fn(t,Qn,i),n&&fn(n,Qn,i),this._elements[i]={element:e,gfx:t,secondaryGfx:n}},Zn.prototype.remove=function(e){var t=this._elements,n=e.id||e,i=n&&t[n];i&&(fn(i.gfx,Qn,""),i.secondaryGfx&&fn(i.secondaryGfx,Qn,""),delete t[n])},Zn.prototype.updateId=function(e,t){this._validateId(t),"string"==typeof e&&(e=this.get(e)),this._eventBus.fire("element.updateId",{element:e,newId:t});var n=this.getGraphics(e),i=this.getGraphics(e,!0);this.remove(e),e.id=t,this.add(e,n,i)},Zn.prototype.updateGraphics=function(e,t,n){var i=e.id||e,r=this._elements[i];return n?r.secondaryGfx=t:r.gfx=t,t&&fn(t,Qn,i),t},Zn.prototype.get=function(e){var t;t="string"==typeof e?e:e&&fn(e,Qn);var n=this._elements[t];return n&&n.element},Zn.prototype.filter=function(e){var t=[];return this.forEach((function(n,i){e(n,i)&&t.push(n)})),t},Zn.prototype.find=function(e){for(var t=this._elements,n=Object.keys(t),i=0;i<n.length;i++){var r=t[n[i]],o=r.element;if(e(o,r.gfx))return o}},Zn.prototype.getAll=function(){return this.filter((function(e){return e}))},Zn.prototype.forEach=function(e){var t=this._elements;Object.keys(t).forEach((function(n){var i=t[n],r=i.element,o=i.gfx;return e(r,o)}))},Zn.prototype.getGraphics=function(e,t){var n=e.id||e,i=this._elements[n];return i&&(t?i.secondaryGfx:i.gfx)},Zn.prototype._validateId=function(e){if(!e)throw new Error("element must have an id");if(this._elements[e])throw new Error("element with id "+e+" already added")},ti.prototype.bind=function(e,t){if("string"==typeof t){if(!this.props[t])throw new Error("no property <"+t+"> in ref");t=this.props[t]}t.collection?ei(this,t,e):function(e,t,n){var i=t.inverse,r=n[t.name];Object.defineProperty(n,t.name,{configurable:t.configurable,enumerable:t.enumerable,get:function(){return r},set:function(t){if(t!==r){var o=r;r=null,o&&e.unset(o,i,n),r=t,e.set(r,i,n)}}})}(this,t,e)},ti.prototype.ensureRefsCollection=function(e,t){var n=e[t.name];return function(e){return!0===e.__refs_collection}(n)||ei(this,t,e),n},ti.prototype.ensureBound=function(e,t){(function(e,t){return Object.prototype.hasOwnProperty.call(e,t.name||t)})(e,t)||this.bind(e,t)},ti.prototype.unset=function(e,t,n){e&&(this.ensureBound(e,t),t.collection?this.ensureRefsCollection(e,t).remove(n):e[t.name]=void 0)},ti.prototype.set=function(e,t,n){e&&(this.ensureBound(e,t),t.collection?this.ensureRefsCollection(e,t).add(n):e[t.name]=n)};var ni=new ti({name:"children",enumerable:!0,collection:!0},{name:"parent"}),ii=new ti({name:"labels",enumerable:!0,collection:!0},{name:"labelTarget"}),ri=new ti({name:"attachers",collection:!0},{name:"host"}),oi=new ti({name:"outgoing",collection:!0},{name:"source"}),si=new ti({name:"incoming",collection:!0},{name:"target"});function ai(){Object.defineProperty(this,"businessObject",{writable:!0}),Object.defineProperty(this,"label",{get:function(){return this.labels[0]},set:function(e){var t=this.label,n=this.labels;!e&&t?n.remove(t):n.add(e,0)}}),ni.bind(this,"parent"),ii.bind(this,"labels"),oi.bind(this,"outgoing"),si.bind(this,"incoming")}function li(){ai.call(this),ni.bind(this,"children"),ri.bind(this,"host"),ri.bind(this,"attachers")}function ci(){ai.call(this),ni.bind(this,"children")}function hi(){li.call(this),ii.bind(this,"labelTarget")}function ui(){ai.call(this),oi.bind(this,"source"),si.bind(this,"target")}Yt(li,ai),Yt(ci,li),Yt(hi,li),Yt(ui,ai);var di={connection:ui,shape:li,label:hi,root:ci};function pi(){this._uid=12}function fi(e,t,n){var i=Sn().createSVGTransform();i.setTranslate(t,n),Nn(e,i)}function gi(e,t){this._eventBus=e,this._elementRegistry=t}function mi(e,t,n){var i=n||t.firstChild;e!==i&&t.insertBefore(e,i)}pi.prototype.createRoot=function(e){return this.create("root",e)},pi.prototype.createLabel=function(e){return this.create("label",e)},pi.prototype.createShape=function(e){return this.create("shape",e)},pi.prototype.createConnection=function(e){return this.create("connection",e)},pi.prototype.create=function(e,t){return(t=_({},t||{})).id||(t.id=e+"_"+this._uid++),function(e,t){var n=di[e];if(!n)throw new Error("unknown type: <"+e+">");return _(new n,t)}(e,t)},gi.$inject=["eventBus","elementRegistry"],gi.prototype._getChildrenContainer=function(e){var t,n=this._elementRegistry.getGraphics(e);return e.parent?(t=function(e){return e.parentNode.childNodes[1]}(n),t||(mn(t=xn("g")).add("djs-children"),hn(n.parentNode,t))):t=n,t},gi.prototype._clear=function(e){var t=function(e){return e.childNodes[0]}(e);return Et(t),t},gi.prototype._createContainer=function(e,t,n,i){var r=xn("g");mn(r).add("djs-group"),void 0!==n?mi(r,t,t.childNodes[n]):hn(t,r);var o=xn("g");mn(o).add("djs-element"),mn(o).add("djs-"+e),i&&mn(o).add("djs-frame"),hn(r,o);var s=xn("g");return mn(s).add("djs-visual"),hn(o,s),o},gi.prototype.create=function(e,t,n){var i=this._getChildrenContainer(t.parent);return this._createContainer(e,i,n,$n(t))},gi.prototype.updateContainments=function(e){var t,n=this,i=this._elementRegistry;t=d(e,(function(e,t){return t.parent&&(e[t.parent.id]=t.parent),e}),{}),u(t,(function(e){var t=e.children;if(t){var r=n._getChildrenContainer(e);u(t.slice().reverse(),(function(e){mi(i.getGraphics(e).parentNode,r)}))}}))},gi.prototype.drawShape=function(e,t,n={}){return this._eventBus.fire("render.shape",{gfx:e,element:t,attrs:n})},gi.prototype.getShapePath=function(e){return this._eventBus.fire("render.getShapePath",e)},gi.prototype.drawConnection=function(e,t,n={}){return this._eventBus.fire("render.connection",{gfx:e,element:t,attrs:n})},gi.prototype.getConnectionPath=function(e){return this._eventBus.fire("render.getConnectionPath",e)},gi.prototype.update=function(e,t,n){if(t.parent){var i=this._clear(n);if("shape"===e)this.drawShape(i,t),fi(n,t.x,t.y);else{if("connection"!==e)throw new Error("unknown type: "+e);this.drawConnection(i,t)}t.hidden?fn(n,"display","none"):fn(n,"display","block")}},gi.prototype.remove=function(e){Dn(this._elementRegistry.getGraphics(e).parentNode)};var vi={__depends__:[Hn],__init__:["canvas"],canvas:["type",Yn],elementRegistry:["type",Zn],elementFactory:["type",pi],eventBus:["type",C],graphicsFactory:["type",gi]};function yi(e){return function(e){var t=new sn(e);return t.init(),t}([{config:["value",e=e||{}]},vi].concat(e.modules||[]))}function wi(e,t){this._injector=t||yi(e),this.get("eventBus").fire("diagram.init")}function bi(e,t){var n=xi(e);return n&&"function"==typeof n.$instanceOf&&n.$instanceOf(t)}function xi(e){return e&&e.businessObject||e}function _i(e){var t=xi(e);if(bi(t,"dmn:Decision"))return t.get("decisionLogic");if(bi(t,"dmn:BusinessKnowledgeModel")){var n=t.get("encapsulatedLogic");return n&&n.get("body")}}wi.prototype.get=function(e,t){return this._injector.get(e,t)},wi.prototype.invoke=function(e,t,n){return this._injector.invoke(e,t,n)},wi.prototype.destroy=function(){this.get("eventBus").fire("diagram.destroy")},wi.prototype.clear=function(){this.get("eventBus").fire("diagram.clear")};var Si=new ti({name:"dmnElementRef",enumerable:!0},{name:"di",configurable:!0});function ki(e,t){var n=[];function i(t){try{var n=t.di&&function(t){if(t.gfx)throw new Error("already rendered "+t.id);return e.element(t)}(t);return n}catch(e){s(e.message,{element:t,error:e})}}function r(e){var t,n;(n=(t=e).dmnElementRef)?n.di?s("multiple DI elements defined for element",{element:n}):(Si.bind(n,"di"),n.di=t):s("no DMN element referenced in element",{element:t})}function o(e){n.push(e)}function s(t,n){e.error(t,n)}return{handleDefinitions:function(t,s){var a=t.dmnDI;if(!a)throw new Error("no dmndi:DMNDI");var l,c=a.diagrams||[];if(s&&-1===c.indexOf(s))throw new Error("diagram not part of dmndi:DMNDI");if(!s&&c&&c.length&&(s=c[0]),!s)throw new Error("no diagram to display");t.di=s,function(e){u(e.diagramElements,r)}(s),l=t,e.root(l),u(t.get("drgElement"),(function(e){i(e),function(e){u(["informationRequirement","knowledgeRequirement","authorityRequirement"],(function(t){u(e[t],(function(e){o((function(){i(e)}))}))}))}(e)})),function(e){u(e,(function(e){bi(e,"dmn:Association")?function(e){o((function(){i(e)}))}(e):i(e)}))}(t.get("artifact")),u(n,(function(e){e()}))}}}var Ci="$NO_OP",Ei="a runtime error occured! Use Inferno in development environment to find the error.",Mi=!("undefined"==typeof window||!window.document),Ai=Array.isArray;function Ri(e){var t=typeof e;return"string"===t||"number"===t}function Ti(e){return Bi(e)||qi(e)}function Di(e){return qi(e)||!1===e||function(e){return!0===e}(e)||Bi(e)}function Oi(e){return"function"==typeof e}function Ni(e){return"string"==typeof e}function Pi(e){return"number"==typeof e}function qi(e){return null===e}function Bi(e){return void 0===e}function Li(e){throw e||(e=Ei),new Error("Inferno Error: "+e)}function Ii(e){console.error(e)}function ji(e,t){var n={};if(e)for(var i in e)n[i]=e[i];if(t)for(var r in t)n[r]=t[r];return n}function Fi(e){var t;if(Ai(e))t="Array("+(e.length>3?e.slice(0,3).toString()+",...":e.toString())+")";else if(Ri(e))t="Text("+e+")";else if(Di(e))t="InvalidVNode("+e+")";else{var n=e.flags;if(481&n)t="<"+e.type+(e.className?' class="'+e.className+'"':"")+">";else if(16&n)t="Text("+e.children+")";else if(1024&n)t="Portal*";else{var i=e.type;t="<"+(i.name||i.displayName||i.constructor.name||(i.toString().match(/^function\s*([^\s(]+)/)||[])[1])+" />"}}return">> "+t+"\n"}function Vi(e,t){for(var n={},i=0,r=e.length;i<r;i++){var o=e[i];if(Ai(o))return"Encountered ARRAY in mount, array must be flattened, or normalize used. Location: \n"+Fi(o);if(Di(o)){if(t)return"Encountered invalid node when preparing to keyed algorithm. Location: \n"+Fi(o);if(0!==Object.keys(n).length)return"Encountered invalid node with mixed keys. Location: \n"+Fi(o)}else{"object"==typeof o&&(o.isValidated=!0);var s=o.key;if(!Ti(s)&&!Ri(s))return"Encountered child vNode where key property is not string or number. Location: \n"+Fi(o);var a=o.children,l=o.childFlags;if(!Di(a)){var c=void 0;if(12&l?c=Vi(a,8&o.childFlags):2===l&&(c=Vi([a],8&o.childFlags)),c)return c+=Fi(o)}if(t&&Ti(s))return"Encountered child without key during keyed algorithm. If this error points to Array make sure children is flat list. Location: \n"+Fi(o);if(t||!Ti(s)){if(n[s])return"Encountered two children with same key: {"+s+"}. Location: \n"+Fi(o);n[s]=!0}else if(0!==Object.keys(n).length)return"Encountered children with key missing. Location: \n"+Fi(o)}}}function $i(e){if(!(1&e.childFlags)&&(64&e.flags&&Li("input elements can't have children."),128&e.flags&&Li("textarea elements can't have children."),481&e.flags)){var t=["area","base","br","col","command","embed","hr","img","input","keygen","link","meta","param","source","track","wbr"],n=e.type.toLowerCase();"media"===n&&Li("media elements can't have children.");var i=t.indexOf(n);-1!==i&&Li(t[i]+" elements can't have children.")}}function zi(e){if(!1===e.isValidated&&e.children&&481&e.flags){var t=Vi(Array.isArray(e.children)?e.children:[e.children],(8&e.childFlags)>0);t&&Li(t+Fi(e))}e.isValidated=!0}var Hi="$";function Wi(e,t,n,i,r,o,s,a){return{childFlags:e,children:t,className:n,dom:null,flags:i,isValidated:!1,key:void 0===r?null:r,parentVNode:null,props:void 0===o?null:o,ref:void 0===s?null:s,type:a}}function Ui(e,t,n,i,r,o,s,a){14&e&&Li("Creating Component vNodes using createVNode is not allowed. Use Inferno.createComponentVNode method.");var l=void 0===r?1:r,c=Wi(l,i,n,e,s,o,a,t);return 0===l&&Zi(c,c.children),$i(c),c}function Gi(e,t,n,i,r){1&e&&Li("Creating element vNodes using createComponentVNode is not allowed. Use Inferno.createVNode method."),(2&e)>0&&(e=t.prototype&&Oi(t.prototype.render)?4:8);var o=t.defaultProps;if(!Ti(o))for(var s in n||(n={}),o)Bi(n[s])&&(n[s]=o[s]);if((8&e)>0){var a=t.defaultHooks;if(!Ti(a))if(r)for(var l in a)Bi(r[l])&&(r[l]=a[l]);else r=a}var c=Wi(1,null,null,e,i,n,r,t),h=er.createVNode;return Oi(h)&&h(c),c}function Ki(e,t){return Wi(1,Ti(e)?"":e,null,16,t,null,null,null)}function Xi(e){var t=e.props;if(t){var n=e.flags;481&n&&(void 0!==t.children&&Ti(e.children)&&Zi(e,t.children),void 0!==t.className&&(e.className=t.className||null,t.className=void 0)),void 0!==t.key&&(e.key=t.key,t.key=void 0),void 0!==t.ref&&(e.ref=8&n?ji(e.ref,t.ref):t.ref,t.ref=void 0)}return e}function Yi(e){var t,n=e.flags;if(14&n){var i,r=e.props;if(!qi(r))for(var o in i={},r)i[o]=r[o];t=Gi(n,e.type,i,e.key,e.ref)}else 481&n?t=Ui(n,e.type,e.className,e.children,e.childFlags,e.props,e.key,e.ref):16&n?t=Ki(e.children,e.key):1024&n&&(t=e);return t}function Ji(){return Ki("",null)}function Qi(e,t,n,i){for(var r=e.length;n<r;n++){var o=e[n];if(!Di(o)){var s=i+Hi+n;if(Ai(o))Qi(o,t,0,s);else{if(Ri(o))o=Ki(o,s);else{var a=o.key,l=Ni(a)&&a[0]===Hi;qi(o.dom)&&!l||(o=Yi(o)),qi(a)||l?o.key=s:o.key=i+a}t.push(o)}}}}function Zi(e,t){var n,i=1;if(Di(t))n=t;else if(Ni(t))i=2,n=Ki(t);else if(Pi(t))i=2,n=Ki(t+"");else if(Ai(t)){var r=t.length;if(0===r)n=null,i=1;else{(Object.isFrozen(t)||!0===t.$)&&(t=t.slice()),i=8;for(var o=0;o<r;o++){var s=t[o];if(Di(s)||Ai(s)){n=n||t.slice(0,o),Qi(t,n,o,"");break}if(Ri(s))(n=n||t.slice(0,o)).push(Ki(s,Hi+o));else{var a=s.key,l=qi(s.dom),c=qi(a),h=!c&&Ni(a)&&a[0]===Hi;!l||c||h?(n=n||t.slice(0,o),l&&!h||(s=Yi(s)),(c||h)&&(s.key=Hi+o),n.push(s)):n&&n.push(s)}}(n=n||t).$=!0}}else n=t,qi(t.dom)||(n=Yi(t)),i=2;return e.children=n,e.childFlags=i,$i(e),e}var er={afterRender:null,beforeRender:null,createVNode:null,renderComplete:null},tr="http://www.w3.org/1999/xlink",nr="http://www.w3.org/XML/1998/namespace",ir="http://www.w3.org/2000/svg",rr={"xlink:actuate":tr,"xlink:arcrole":tr,"xlink:href":tr,"xlink:role":tr,"xlink:show":tr,"xlink:title":tr,"xlink:type":tr,"xml:base":nr,"xml:lang":nr,"xml:space":nr},or={},sr=[];function ar(e,t){e.appendChild(t)}function lr(e,t,n){Ti(n)?ar(e,t):e.insertBefore(t,n)}function cr(e,t,n){e.replaceChild(t,n)}function hr(e){for(var t;void 0!==(t=e.shift());)t()}Object.freeze(or);var ur={},dr={};function pr(e,t,n){var i=ur[e],r=n.$EV;t?(i||(dr[e]=function(e){var t=function(t){var n=t.type,i="click"===n||"dblclick"===n;if(i&&0!==t.button)return t.stopPropagation(),!1;t.stopPropagation=gr;var r={dom:document};Object.defineProperty(t,"currentTarget",{configurable:!0,get:function(){return r.dom}}),function(e,t,n,i){var r=function(e){return Oi(e.composedPath)?e.composedPath()[0]:e.target}(e);for(;!qi(r);){if(t&&r.disabled)return;var o=r.$EV;if(o){var s=o[n];if(s&&(i.dom=r,s.event?s.event(s.data,e):s(e),e.cancelBubble))return}r=r.parentNode}}(t,i,e,r)};return document.addEventListener(fr(e),t),t}(e),ur[e]=0),r||(r=n.$EV={}),r[e]||ur[e]++,r[e]=t):r&&r[e]&&(ur[e]--,1===i&&(document.removeEventListener(fr(e),dr[e]),dr[e]=null),r[e]=t)}function fr(e){return e.substr(2).toLowerCase()}function gr(){this.cancelBubble=!0,this.immediatePropagationStopped||this.stopImmediatePropagation()}function mr(e,t){var n=document.createElement("i");return n.innerHTML=t,n.innerHTML===e.innerHTML}function vr(e,t,n){if(e[t]){var i=e[t];i.event?i.event(i.data,n):i(n)}else{var r=t.toLowerCase();e[r]&&e[r](n)}}function yr(e,t){var n=function(n){n.stopPropagation();var i=this.$V;if(i){var r=i.props||or,o=i.dom;if(Ni(e))vr(r,e,n);else for(var s=0;s<e.length;s++)vr(r,e[s],n);if(Oi(t)){var a=this.$V,l=a.props||or;t(l,o,!1,a)}}};return Object.defineProperty(n,"wrapped",{configurable:!1,enumerable:!1,value:!0,writable:!1}),n}function wr(e){return"checkbox"===e||"radio"===e}var br=yr("onInput",Sr),xr=yr(["onClick","onChange"],Sr);function _r(e){e.stopPropagation()}function Sr(e,t){var n=e.type,i=e.value,r=e.checked,o=e.multiple,s=e.defaultValue,a=!Ti(i);n&&n!==t.type&&t.setAttribute("type",n),Ti(o)||o===t.multiple||(t.multiple=o),Ti(s)||a||(t.defaultValue=s+""),wr(n)?(a&&(t.value=i),Ti(r)||(t.checked=r)):a&&t.value!==i?(t.defaultValue=i,t.value=i):Ti(r)||(t.checked=r)}function kr(e,t){if("optgroup"===e.type){var n=e.children,i=e.childFlags;if(12&i)for(var r=0,o=n.length;r<o;r++)Cr(n[r],t);else 2===i&&Cr(n,t)}else Cr(e,t)}function Cr(e,t){var n=e.props||or,i=e.dom;i.value=n.value,Ai(t)&&-1!==t.indexOf(n.value)||n.value===t?i.selected=!0:Ti(t)&&Ti(n.selected)||(i.selected=n.selected||!1)}_r.wrapped=!0;var Er=yr("onChange",Mr);function Mr(e,t,n,i){var r=Boolean(e.multiple);Ti(e.multiple)||r===t.multiple||(t.multiple=r);var o=i.childFlags;if(!(1&o)){var s=i.children,a=e.value;if(n&&Ti(a)&&(a=e.defaultValue),12&o)for(var l=0,c=s.length;l<c;l++)kr(s[l],a);else 2===o&&kr(s,a)}}var Ar=yr("onInput",Tr),Rr=yr("onChange");function Tr(e,t,n){var i=e.value,r=t.value;if(Ti(i)){if(n){var o=e.defaultValue;Ti(o)||o===r||(t.defaultValue=o,t.value=o)}}else r!==i&&(t.defaultValue=i,t.value=i)}function Dr(e,t,n,i,r,o){64&e?Sr(i,n):256&e?Mr(i,n,r,t):128&e&&Tr(i,n,r),o&&(n.$V=t)}function Or(e,t,n){64&e?function(e,t){wr(t.type)?(e.onchange=xr,e.onclick=_r):e.oninput=br}(t,n):256&e?function(e){e.onchange=Er}(t):128&e&&function(e,t){e.oninput=Ar,t.onChange&&(e.onchange=Rr)}(t,n)}function Nr(e){return e.type&&wr(e.type)?!Ti(e.checked):!Ti(e.value)}function Pr(e,t){qr(e),t&&e.dom&&(!function(e,t){e.removeChild(t)}(t,e.dom),e.dom=null)}function qr(e){var t=e.flags;if(481&t){var n=e.ref,i=e.props;Oi(n)&&n(null);var r=e.children,o=e.childFlags;if(12&o?Br(r):2===o&&qr(r),!qi(i))for(var s in i)switch(s){case"onClick":case"onDblClick":case"onFocusIn":case"onFocusOut":case"onKeyDown":case"onKeyPress":case"onKeyUp":case"onMouseDown":case"onMouseMove":case"onMouseUp":case"onSubmit":case"onTouchEnd":case"onTouchMove":case"onTouchStart":pr(s,null,e.dom)}}else{var a=e.children;if(a)if(14&t){var l=e.ref;4&t?(Oi(a.componentWillUnmount)&&a.componentWillUnmount(),Oi(l)&&l(null),a.$UN=!0,a.$LI&&qr(a.$LI)):(!Ti(l)&&Oi(l.onComponentWillUnmount)&&l.onComponentWillUnmount(e.dom,e.props||or),qr(a))}else 1024&t&&Pr(a,e.type)}}function Br(e){for(var t=0,n=e.length;t<n;t++)qr(e[t])}function Lr(e,t){Br(t),e.textContent=""}function Ir(e,t){switch(e){case"animationIterationCount":case"borderImageOutset":case"borderImageSlice":case"borderImageWidth":case"boxFlex":case"boxFlexGroup":case"boxOrdinalGroup":case"columnCount":case"fillOpacity":case"flex":case"flexGrow":case"flexNegative":case"flexOrder":case"flexPositive":case"flexShrink":case"floodOpacity":case"fontWeight":case"gridColumn":case"gridRow":case"lineClamp":case"lineHeight":case"opacity":case"order":case"orphans":case"stopOpacity":case"strokeDasharray":case"strokeDashoffset":case"strokeMiterlimit":case"strokeOpacity":case"strokeWidth":case"tabSize":case"widows":case"zIndex":case"zoom":return t;default:return t+"px"}}function jr(e,t,n,i,r,o,s){switch(e){case"onClick":case"onDblClick":case"onFocusIn":case"onFocusOut":case"onKeyDown":case"onKeyPress":case"onKeyUp":case"onMouseDown":case"onMouseMove":case"onMouseUp":case"onSubmit":case"onTouchEnd":case"onTouchMove":case"onTouchStart":pr(e,n,i);break;case"children":case"childrenType":case"className":case"defaultValue":case"key":case"multiple":case"ref":break;case"autoFocus":i.autofocus=!!n;break;case"allowfullscreen":case"autoplay":case"capture":case"checked":case"controls":case"default":case"disabled":case"hidden":case"indeterminate":case"loop":case"muted":case"novalidate":case"open":case"readOnly":case"required":case"reversed":case"scoped":case"seamless":case"selected":i[e]=!!n;break;case"defaultChecked":case"value":case"volume":if(o&&"value"===e)return;var a=Ti(n)?"":n;i[e]!==a&&(i[e]=a);break;case"dangerouslySetInnerHTML":var l=t&&t.__html||"",c=n&&n.__html||"";l!==c&&(Ti(c)||mr(i,c)||(qi(s)||(12&s.childFlags?Br(s.children):2===s.childFlags&&qr(s.children),s.children=null,s.childFlags=1),i.innerHTML=c));break;default:"o"===e[0]&&"n"===e[1]?function(e,t,n){var i=e.toLowerCase();if(Oi(t)||Ti(t)){var r=n[i];r&&r.wrapped||(n[i]=t)}else{var o=t.event;o&&Oi(o)?n[i]=function(e,t){return function(n){e(t.data,n)}}(o,t):Li('an event on a VNode "'+e+'". was not a function or a valid linkEvent.')}}(e,n,i):Ti(n)?i.removeAttribute(e):"style"===e?function(e,t,n){var i,r,o=n.style;if(Ni(t))o.cssText=t;else if(Ti(e)||Ni(e))for(i in t)r=t[i],o[i]=Pi(r)?Ir(i,r):r;else{for(i in t)(r=t[i])!==e[i]&&(o[i]=Pi(r)?Ir(i,r):r);for(i in e)Ti(t[i])&&(o[i]="")}}(t,n,i):r&&rr[e]?i.setAttributeNS(rr[e],e,n):i.setAttribute(e,n)}}function Fr(e,t,n,i,r){var o=!1,s=(448&t)>0;for(var a in s&&(o=Nr(n))&&Or(t,i,n),n)jr(a,null,n[a],i,r,o,null);s&&Dr(t,e,i,n,!0,o)}function Vr(e,t,n,i){var r=new t(n,i);if(e.children=r,r.$V=e,r.$BS=!1,r.context=i,r.props===or&&(r.props=n),r.$UN=!1,Oi(r.componentWillMount)){if(r.$BR=!0,r.componentWillMount(),r.$PSS){var o=r.state,s=r.$PS;if(qi(o))r.state=s;else for(var a in s)o[a]=s[a];r.$PSS=!1,r.$PS=null}r.$BR=!1}Oi(er.beforeRender)&&er.beforeRender(r);var l,c=$r(r.render(n,r.state,i),e);return Oi(r.getChildContext)&&(l=r.getChildContext()),Ti(l)?r.$CX=i:r.$CX=ji(i,l),Oi(er.afterRender)&&er.afterRender(r),r.$LI=c,r}function $r(e,t){return Ai(e)&&Li("a valid Inferno VNode (or null) must be returned from a component render. You may have returned an array or an invalid object."),Di(e)?e=Ji():Ri(e)?e=Ki(e,null):(e.dom&&(e=Yi(e)),14&e.flags&&(e.parentVNode=t)),e}function zr(e,t,n,i){var r=e.flags;return 481&r?Wr(e,t,n,i):14&r?function(e,t,n,i,r){var o,s=e.type,a=e.props||or,l=e.ref;if(r){var c=Vr(e,s,a,n);e.dom=o=zr(c.$LI,null,c.$CX,i),Gr(e,l,c),c.$UPD=!1}else{var h=$r(s(a,n),e);e.children=h,e.dom=o=zr(h,null,n,i),Kr(a,l,o)}qi(t)||ar(t,o);return o}(e,t,n,i,(4&r)>0):512&r||16&r?Hr(e,t):1024&r?(zr(e.children,e.type,n,!1),e.dom=Hr(Ji(),t)):void Li("object"==typeof e?"mount() received an object that's not a valid VNode, you should stringify it first, fix createVNode flags or call normalizeChildren. Object: \""+JSON.stringify(e)+'".':'mount() expects a valid VNode, instead it received an object with the type "'+typeof e+'".')}function Hr(e,t){var n=e.dom=document.createTextNode(e.children);return qi(t)||ar(t,n),n}function Wr(e,t,n,i){var r=e.flags,o=e.children,s=e.props,a=e.className,l=e.ref,c=e.childFlags;i=i||(32&r)>0;var h=function(e,t){return t?document.createElementNS(ir,e):document.createElement(e)}(e.type,i);if(e.dom=h,Ti(a)||""===a||(i?h.setAttribute("class",a):h.className=a),zi(e),qi(t)||ar(t,h),!(1&c)){var u=!0===i&&"foreignObject"!==e.type;2===c?zr(o,h,n,u):12&c&&Ur(o,h,n,u)}return qi(s)||Fr(e,r,s,h,i),Ni(l)&&Li('string "refs" are not supported in Inferno 1.0. Use callback "refs" instead.'),Oi(l)&&Xr(h,l),h}function Ur(e,t,n,i){for(var r=0,o=e.length;r<o;r++){var s=e[r];qi(s.dom)||(e[r]=s=Yi(s)),zr(s,t,n,i)}}function Gr(e,t,n){Oi(t)?t(n):Ri(t)?Li('string "refs" are not supported in Inferno 1.0. Use callback "refs" instead.'):!Ti(t)&&"object"==typeof t&&4&e.flags&&Li("functional component lifecycle events are not supported on ES2015 class components."),Oi(n.componentDidMount)&&sr.push(function(e){return function(){e.$UPD=!0,e.componentDidMount(),e.$UPD=!1}}(n))}function Kr(e,t,n){Ti(t)||(Oi(t.onComponentWillMount)&&t.onComponentWillMount(e),Oi(t.onComponentDidMount)&&sr.push(function(e,t,n){return function(){return e.onComponentDidMount(t,n)}}(t,n,e)))}function Xr(e,t){sr.push((function(){return t(e)}))}function Yr(e,t,n,i){var r=e.children,o=e.props,s=e.className,a=e.flags,l=e.ref;if(i=i||(32&a)>0,1!==t.nodeType||t.tagName.toLowerCase()!==e.type){Ii("Inferno hydration: Server-side markup doesn't match client-side markup or Initial render target is not empty");var c=Wr(e,null,n,i);e.dom=c,cr(t.parentNode,c,t)}else{e.dom=t;var h=t.firstChild,u=e.childFlags;if(1&u)qi(t.firstChild)||function(e,t){return Boolean(t&&t.dangerouslySetInnerHTML&&t.dangerouslySetInnerHTML.__html&&mr(e,t.dangerouslySetInnerHTML.__html))}(t,o)||(t.textContent="",448&a&&(t.defaultValue=""));else{for(var d=null;h;)d=h.nextSibling,8===h.nodeType&&("!"===h.data?t.replaceChild(document.createTextNode(""),h):t.removeChild(h)),h=d;if(h=t.firstChild,2===u)qi(h)?zr(r,t,n,i):(d=h.nextSibling,Jr(r,h,n,i),h=d);else if(12&u)for(var p=0,f=r.length;p<f;p++){var g=r[p];qi(h)?zr(g,t,n,i):(d=h.nextSibling,Jr(g,h,n,i),h=d)}for(;h;)d=h.nextSibling,t.removeChild(h),h=d}qi(o)||Fr(e,a,o,t,i),Ti(s)?""!==t.className&&t.removeAttribute("class"):i?t.setAttribute("class",s):t.className=s,Oi(l)?Xr(t,l):Ni(l)&&Li('string "refs" are not supported in Inferno 1.0. Use callback "refs" instead.')}}function Jr(e,t,n,i){var r=e.flags;14&r?function(e,t,n,i,r){var o=e.type,s=e.ref,a=e.props||or;if(r){var l=Vr(e,o,a,n),c=l.$LI;Jr(c,t,l.$CX,i),e.dom=c.dom,Gr(e,s,l),l.$UPD=!1}else{var h=$r(o(a,n),e);Jr(h,t,n,i),e.children=h,e.dom=h.dom,Kr(a,s,t)}}(e,t,n,i,(4&r)>0):481&r?Yr(e,t,n,i):16&r?function(e,t){if(3!==t.nodeType){var n=Hr(e,null);e.dom=n,cr(t.parentNode,n,t)}else{var i=e.children;t.nodeValue!==i&&(t.nodeValue=i),e.dom=t}}(e,t):512&r?e.dom=t:(Li('hydrate() expects a valid VNode, instead it received an object with the type "'+typeof e+'".'),Li())}function Qr(e,t,n,i,r){qr(e),cr(n,zr(t,null,i,r),e.dom)}function Zr(e,t,n,i,r){var o=0|t.flags;e.flags!==o||2048&o?Qr(e,t,n,i,r):481&o?function(e,t,n,i,r,o){var s=t.type;if(e.type!==s)Qr(e,t,n,i,r);else{var a,l=e.dom,c=e.props,h=t.props,u=!1,d=!1;if(t.dom=l,r=r||(32&o)>0,c!==h){var p=c||or;if((a=h||or)!==or)for(var f in(u=(448&o)>0)&&(d=Nr(a)),a){var g=p[f],m=a[f];g!==m&&jr(f,g,m,l,r,d,e)}if(p!==or)for(var v in p)a.hasOwnProperty(v)||Ti(p[v])||jr(v,p[v],null,l,r,d,e)}var y=e.children,w=t.children,b=t.ref,x=e.className,_=t.className;zi(t),4096&o?function(e,t){e.textContent!==t.children&&(e.textContent=t.children)}(l,w):eo(e.childFlags,t.childFlags,y,w,l,i,r&&"foreignObject"!==s),u&&Dr(o,t,l,a,!1,d),x!==_&&(Ti(_)?l.removeAttribute("class"):r?l.setAttribute("class",_):l.className=_),Oi(b)&&e.ref!==b?Xr(l,b):Ni(b)&&Li('string "refs" are not supported in Inferno 1.0. Use callback "refs" instead.')}}(e,t,n,i,r,o):14&o?function(e,t,n,i,r,o){var s=t.type,a=e.key,l=t.key;if(e.type!==s||a!==l)Qr(e,t,n,i,r);else{var c=t.props||or;if(o){var h=e.children;h.$UPD=!0,h.$V=t,to(h,h.state,t,c,n,i,r,!1,!1),h.$UPD=!1}else{var u=!0,d=e.props,p=t.ref,f=!Ti(p),g=e.children;if(t.dom=e.dom,t.children=g,f&&Oi(p.onComponentShouldUpdate)&&(u=p.onComponentShouldUpdate(d,c)),!1!==u){f&&Oi(p.onComponentWillUpdate)&&p.onComponentWillUpdate(d,c);var m=s(c,i);m!==Ci&&(Zr(g,m=$r(m,t),n,i,r),t.children=m,t.dom=m.dom,f&&Oi(p.onComponentDidUpdate)&&p.onComponentDidUpdate(d,c))}else 14&g.flags&&(g.parentVNode=t)}}}(e,t,n,i,r,(4&o)>0):16&o?function(e,t){var n=t.children,i=e.dom;n!==e.children&&(i.nodeValue=n);t.dom=i}(e,t):512&o?t.dom=e.dom:function(e,t,n){var i=e.type,r=t.type,o=t.children;if(eo(e.childFlags,t.childFlags,e.children,o,i,n,!1),t.dom=e.dom,i!==r&&!Di(o)){var s=o.dom;i.removeChild(s),r.appendChild(s)}}(e,t,i)}function eo(e,t,n,i,r,o,s){switch(e){case 2:switch(t){case 2:Zr(n,i,r,o,s);break;case 1:Pr(n,r);break;default:Pr(n,r),Ur(i,r,o,s)}break;case 1:switch(t){case 2:zr(i,r,o,s);break;case 1:break;default:Ur(i,r,o,s)}break;default:if(12&t){var a=n.length,l=i.length;0===a?l>0&&Ur(i,r,o,s):0===l?Lr(r,n):8===t&&8===e?function(e,t,n,i,r,o,s){var a,l,c=o-1,h=s-1,u=0,d=e[u],p=t[u];e:{for(;d.key===p.key;){if(p.dom&&(t[u]=p=Yi(p)),Zr(d,p,n,i,r),e[u]=p,++u>c||u>h)break e;d=e[u],p=t[u]}for(d=e[c],p=t[h];d.key===p.key;){if(p.dom&&(t[h]=p=Yi(p)),Zr(d,p,n,i,r),e[c]=p,h--,u>--c||u>h)break e;d=e[c],p=t[h]}}if(u>c){if(u<=h)for(var f=(l=h+1)<s?t[l].dom:null;u<=h;)(p=t[u]).dom&&(t[u]=p=Yi(p)),u++,lr(n,zr(p,null,i,r),f)}else if(u>h)for(;u<=c;)Pr(e[u++],n);else{var g=u,m=u,v=c-u+1,y=h-u+1,w=[];for(a=0;a<y;a++)w.push(0);var b=v===o,x=!1,_=0,S=0;if(s<4||(v|y)<32)for(a=g;a<=c;a++)if(d=e[a],S<y){for(u=m;u<=h;u++)if(p=t[u],d.key===p.key){if(w[u-m]=a+1,b)for(b=!1;a>g;)Pr(e[g++],n);_>u?x=!0:_=u,p.dom&&(t[u]=p=Yi(p)),Zr(d,p,n,i,r),S++;break}!b&&u>h&&Pr(d,n)}else b||Pr(d,n);else{var k={};for(a=m;a<=h;a++)k[t[a].key]=a;for(a=g;a<=c;a++)if(d=e[a],S<y)if(void 0!==(u=k[d.key])){if(b)for(b=!1;a>g;)Pr(e[g++],n);p=t[u],w[u-m]=a+1,_>u?x=!0:_=u,p.dom&&(t[u]=p=Yi(p)),Zr(d,p,n,i,r),S++}else b||Pr(d,n);else b||Pr(d,n)}if(b)Lr(n,e),Ur(t,n,i,r);else if(x){var C=function(e){var t,n,i,r,o,s=e.slice(),a=[0],l=e.length;for(t=0;t<l;t++){var c=e[t];if(0!==c){if(e[n=a[a.length-1]]<c){s[t]=n,a.push(t);continue}for(i=0,r=a.length-1;i<r;)e[a[o=(i+r)/2|0]]<c?i=o+1:r=o;c<e[a[i]]&&(i>0&&(s[t]=a[i-1]),a[i]=t)}}i=a.length,r=a[i-1];for(;i-- >0;)a[i]=r,r=s[r];return a}(w);for(u=C.length-1,a=y-1;a>=0;a--)0===w[a]?((p=t[_=a+m]).dom&&(t[_]=p=Yi(p)),l=_+1,lr(n,zr(p,null,i,r),l<s?t[l].dom:null)):u<0||a!==C[u]?(l=(_=a+m)+1,lr(n,(p=t[_]).dom,l<s?t[l].dom:null)):u--}else if(S!==y)for(a=y-1;a>=0;a--)0===w[a]&&((p=t[_=a+m]).dom&&(t[_]=p=Yi(p)),l=_+1,lr(n,zr(p,null,i,r),l<s?t[l].dom:null))}}(n,i,r,o,s,a,l):function(e,t,n,i,r,o,s){for(var a,l,c=o>s?s:o,h=0;h<c;h++)a=t[h],l=e[h],a.dom&&(a=t[h]=Yi(a)),Zr(l,a,n,i,r),e[h]=a;if(o<s)for(h=c;h<s;h++)(a=t[h]).dom&&(a=t[h]=Yi(a)),zr(a,n,i,r);else if(o>s)for(h=c;h<o;h++)Pr(e[h],n)}(n,i,r,o,s,a,l)}else 1===t?Lr(r,n):2===t&&(Lr(r,n),zr(i,r,o,s))}}function to(e,t,n,i,r,o,s,a,l){var c,h=e.state,u=e.props;if(n.children=e,e.$UN)Ii("Inferno Error: Can only update a mounted or mounting component. This usually means you called setState() or forceUpdate() on an unmounted component. This is a no-op.");else{if(u!==i||i===or){if(!l&&Oi(e.componentWillReceiveProps)){if(e.$BR=!0,e.componentWillReceiveProps(i,o),e.$UN)return;e.$BR=!1}e.$PSS&&(t=ji(t,e.$PS),e.$PSS=!1,e.$PS=null)}var d=Boolean(e.shouldComponentUpdate);if(a||!d||d&&e.shouldComponentUpdate(i,t,o)){Oi(e.componentWillUpdate)&&(e.$BS=!0,e.componentWillUpdate(i,t,o),e.$BS=!1),e.props=i,e.state=t,e.context=o,Oi(er.beforeRender)&&er.beforeRender(e),c=e.render(i,t,o),Oi(er.afterRender)&&er.afterRender(e);var p,f=c!==Ci;if(Oi(e.getChildContext)&&(p=e.getChildContext()),p=Ti(p)?o:ji(o,p),e.$CX=p,f){var g=e.$LI,m=$r(c,n);Zr(g,m,r,p,s),e.$LI=m,Oi(e.componentDidUpdate)&&e.componentDidUpdate(u,h)}}else e.props=i,e.state=t,e.context=o;n.dom=e.$LI.dom}}Mi&&null===document.body&&Ii('Inferno warning: you cannot initialize inferno without "document.body". Wait on "DOMContentLoaded" event, add script to bottom of body, or use async/defer attributes on script tag.');var no=Mi?document.body:null;function io(e,t,n){if(no===t&&Li('you cannot render() to the "document.body". Use an empty element as a container instead.'),e!==Ci){var i=t.$V;return Ti(i)?Di(e)||(e.dom&&(e=Yi(e)),qi(t.firstChild)?(zr(e,t,or,!1),t.$V=e):function(e,t,n){var i=t.firstChild;if(!qi(i))for(Di(e)||Jr(e,i,or,!1),i=t.firstChild;i=i.nextSibling;)t.removeChild(i);sr.length>0&&hr(sr),t.$V=e,Oi(n)&&n()}(e,t),i=e):Ti(e)?(Pr(i,t),t.$V=null):(e.dom&&(e=Yi(e)),Zr(i,e,t,or,!1),i=t.$V=e),sr.length>0&&hr(sr),Oi(n)&&n(),Oi(er.renderComplete)&&er.renderComplete(i),i&&14&i.flags?i.children:void 0}}var ro="undefined"==typeof Promise?null:Promise.resolve(),oo="undefined"==typeof requestAnimationFrame?setTimeout:requestAnimationFrame.bind(window);function so(e,t,n,i){Oi(t)&&(t=t(e.state,e.props,e.context));var r,o=e.$PS;if(Ti(o))e.$PS=t;else for(var s in t)o[s]=t[s];if(e.$PSS||e.$BR)e.$PSS=!0,e.$BR&&Oi(n)&&sr.push(n.bind(e));else if(e.$UPD){var a=e.$QU;qi(a)&&(a=e.$QU=[],r=function(e,t){return function(){e.$QU=null,e.$UPD=!0,ao(e,!1,(function(){for(var n=0,i=t.length;n<i;n++)t[n].call(e)})),e.$UPD=!1}}(e,a),ro?ro.then(r):oo(r)),Oi(n)&&a.push(n)}else e.$PSS=!0,e.$UPD=!0,ao(e,i,n),e.$UPD=!1}function ao(e,t,n){if(!e.$UN){if(t||!e.$BR){e.$PSS=!1;var i=e.$PS,r=ji(e.state,i),o=e.props,s=e.context;e.$PS=null;var a=e.$V,l=e.$LI;if(to(e,r,a,o,l.dom&&l.dom.parentNode,s,(32&a.flags)>0,t,!0),e.$UN)return;if(!(1024&e.$LI.flags))for(var c=e.$LI.dom;!qi(a=a.parentVNode);)(14&a.flags)>0&&(a.dom=c);sr.length>0&&hr(sr)}else e.state=e.$PS,e.$PS=null;Oi(n)&&n.call(e)}}var lo=function(){function e(e,t){this.state=null,this.props=void 0,this.context=void 0,this.refs=void 0,this.$BR=!1,this.$BS=!0,this.$PSS=!1,this.$PS=null,this.$LI=null,this.$V=null,this.$UN=!1,this.$CX=null,this.$UPD=!0,this.$QU=null,this.props=e||or,this.context=t||or}var t=e.prototype;return t.forceUpdate=function(e){this.$UN||so(this,{},e,!0)},t.setState=function(e,t){this.$UN||(this.$BS?Li("cannot update state via setState() in componentWillUpdate() or constructor."):so(this,e,t,!1))},t.render=function(e,t,n){},e}();lo.defaultProps=void 0;var co=function(){};console.info("Inferno is in development mode."),-1===(co.name||co.toString()).indexOf("testFn")&&Ii("It looks like you're using a minified copy of the development build of Inferno. When deploying Inferno apps to production, make sure to use the production build which skips development warnings and is faster. See http://infernojs.org for more details.");var ho='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 14.02 5.57" width="53" height="21" style="vertical-align:middle"><path fill="#000000" d="M1.88.92v.14c0 .41-.13.68-.4.8.33.14.46.44.46.86v.33c0 .61-.33.95-.95.95H0V0h.95c.65 0 .93.3.93.92zM.63.57v1.06h.24c.24 0 .38-.1.38-.43V.98c0-.28-.1-.4-.32-.4zm0 1.63v1.22h.36c.2 0 .32-.1.32-.39v-.35c0-.37-.12-.48-.4-.48H.63zM4.18.99v.52c0 .64-.31.98-.94.98h-.3V4h-.62V0h.92c.63 0 .94.35.94.99zM2.94.57v1.35h.3c.2 0 .3-.09.3-.37v-.6c0-.29-.1-.38-.3-.38h-.3zm2.89 2.27L6.25 0h.88v4h-.6V1.12L6.1 3.99h-.6l-.46-2.82v2.82h-.55V0h.87zM8.14 1.1V4h-.56V0h.79L9 2.4V0h.56v4h-.64zm2.49 2.29v.6h-.6v-.6zM12.12 1c0-.63.33-1 .95-1 .61 0 .95.37.95 1v2.04c0 .64-.34 1-.95 1-.62 0-.95-.37-.95-1zm.62 2.08c0 .28.13.39.33.39s.32-.1.32-.4V.98c0-.29-.12-.4-.32-.4s-.33.11-.33.4z"/><path fill="#000000" d="M0 4.53h14.02v1.04H0zM11.08 0h.63v.62h-.63zm.63 4V1h-.63v2.98z"/></svg>';
10 */function uo(e){var t=Ft('<a href="http://bpmn.io" target="_blank" class="bjs-powered-by" title="Powered by bpmn.io" style="position: absolute; bottom: 15px; right: 15px; z-index: 100;">'+ho+"</a>");e.appendChild(t),Nt.bind(t,"click",(function(e){!function(){go||(go=Ft(mo),Bt.bind(go,".backdrop","click",(function(e){document.body.removeChild(go)})));document.body.appendChild(go)}(),e.preventDefault()}))}class po extends lo{constructor(e,t){super(e,t),this.node=null}componentDidMount(){uo(this.node)}render(){return Ui(1,"div",null,null,1,null,null,(e=>this.node=e))}}function fo(e){return e.join(";")}var go,mo='<div class="bjs-powered-by-lightbox" style="'+fo(["z-index: 1001","position: fixed","top: 0","left: 0","right: 0","bottom: 0"])+'"><div class="backdrop" style="'+fo(["width: 100%","height: 100%","background: rgba(40,40,40,0.2)"])+'"></div><div class="notice" style="'+fo(["position: absolute","left: 50%","top: 40%","transform: translate(-50%)","width: 260px","padding: 10px","background: white","box-shadow: 0 1px 4px rgba(0,0,0,0.3)","font-family: Helvetica, Arial, sans-serif","font-size: 14px","display: flex","line-height: 1.3"])+'"><a href="https://bpmn.io" target="_blank" rel="noopener" style="margin: 15px 20px 15px 10px; align-self: center;">'+ho+'</a><span>Web-based tooling for BPMN, DMN and CMMN diagrams powered by <a href="https://bpmn.io" target="_blank" rel="noopener">bpmn.io</a>.</span></div></div>';var vo=function(e,t){return e(t={exports:{}},t.exports),t.exports}((function(e){var t=e.exports=function(e,n){if(n||(n=16),void 0===e&&(e=128),e<=0)return"0";for(var i=Math.log(Math.pow(2,e))/Math.log(n),r=2;i===1/0;r*=2)i=Math.log(Math.pow(2,e/r))/Math.log(n)*r;var o=i-Math.floor(i),s="";for(r=0;r<Math.floor(i);r++){s=Math.floor(Math.random()*n).toString(n)+s}if(o){var a=Math.pow(n,o);s=Math.floor(Math.random()*a).toString(n)+s}var l=parseInt(s,n);return l!==1/0&&l>=Math.pow(2,e)?t(e,n):s};t.rack=function(e,n,i){var r=function(r){var s=0;do{if(s++>10){if(!i)throw new Error("too many ID collisions, use more bits");e+=i}var a=t(e,n)}while(Object.hasOwnProperty.call(o,a));return o[a]=r,a},o=r.hats={};return r.get=function(e){return r.hats[e]},r.set=function(e,t){return r.hats[e]=t,r},r.bits=e||128,r.base=n||16,r}}));function yo(e){if(!(this instanceof yo))return new yo(e);e=e||[128,36,1],this._seed=e.length?vo.rack(e[0],e[1],e[2]):e}yo.prototype.next=function(e){return this._seed(e||!0)},yo.prototype.nextPrefixed=function(e,t){var n;do{n=e+this.next(!0)}while(this.assigned(n));return this.claim(n,t),n},yo.prototype.claim=function(e,t){this._seed.set(e,t||!0)},yo.prototype.assigned=function(e){return this._seed.get(e)||!1},yo.prototype.unclaim=function(e){delete this._seed.hats[e]},yo.prototype.clear=function(){var e,t=this._seed.hats;for(e in t)this.unclaim(e)};var wo=new yo,bo="hsl(225, 10%, 15%)";function xo(e,t,n,i,o,s){cn.call(this,t);var a=wo.next(),l=i.computeStyle,c={},h=e&&e.defaultFillColor||"white",u=e&&e.defaultStrokeColor||bo,d=e&&e.defaultLabelColor;function p(e,t,n){var i=e+"-"+So(t)+"-"+So(n)+"-"+a;return c[i]||function(e,t,n,i){if("association-start"===t){var r=xn("path");fn(r,{d:"M 11 5 L 1 10 L 11 15"}),f(e,{element:r,attrs:{fill:"none",stroke:i,strokeWidth:1.5},ref:{x:1,y:10},scale:.5})}else if("association-end"===t){var o=xn("path");fn(o,{d:"M 1 5 L 11 10 L 1 15"}),f(e,{element:o,attrs:{fill:"none",stroke:i,strokeWidth:1.5},ref:{x:12,y:10},scale:.5})}else if("information-requirement-end"===t){var s=xn("path");fn(s,{d:"M 1 5 L 11 10 L 1 15 Z"}),f(e,{element:s,attrs:{fill:i,stroke:"none"},ref:{x:11,y:10},scale:1})}else if("knowledge-requirement-end"===t){var a=xn("path");fn(a,{d:"M 1 3 L 11 10 L 1 17"}),f(e,{element:a,attrs:{fill:"none",stroke:i,strokeWidth:2},ref:{x:11,y:10},scale:.8})}else if("authority-requirement-end"===t){var l=xn("circle");fn(l,{cx:3,cy:3,r:3}),f(e,{element:l,attrs:{fill:i,stroke:"none"},ref:{x:3,y:3},scale:.9})}}(i,e,0,n),"url(#"+i+")"}function f(e,t){var n=_({strokeWidth:1,strokeLinecap:"round",strokeDasharray:"none"},t.attrs),i=t.ref||{x:0,y:0},r=t.scale||1;"none"===n.strokeDasharray&&(n.strokeDasharray=[1e4,1]);var o=xn("marker");fn(t.element,n),hn(o,t.element),fn(o,{id:e,viewBox:"0 0 20 20",refX:i.x,refY:i.y,markerWidth:20*r,markerHeight:20*r,orient:"auto"});var a=Vt("defs",s._svg);a||(a=xn("defs"),hn(s._svg,a)),hn(a,o),c[e]=o}function g(e,t,n,i,o,s){r(o)&&(s=o,o=0),o=o||0,s=l(s,{stroke:bo,strokeWidth:2,fill:"white"});var a=xn("rect");return fn(a,{x:o,y:o,width:t-2*o,height:n-2*o,rx:i,ry:i}),fn(a,s),hn(e,a),a}function m(e,t,n){var i=o.createText(t||"",n);return _t(i,"class","djs-label"),hn(e,i),i}function v(e,t,n,i){var r=function(e){return xi(e).name}(t);return m(e,r,i=_({box:t,align:n,padding:5,style:{fill:Eo(t,d,u)}},i))}function y(e,t,n){n=l(n,["no-fill"],{strokeWidth:2,stroke:bo});var i=xn("path");return fn(i,{d:t}),fn(i,n),hn(e,i),i}var w={"dmn:Decision":function(e,t){var n=g(e,t.width,t.height,0,{stroke:ko(t,u),fill:Co(t,h)});return v(e,t,"center-middle"),n},"dmn:KnowledgeSource":function(e,t){var i=y(e,n.getScaledPath("KNOWLEDGE_SOURCE",{xScaleFactor:1.021,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:0,my:.075}}),{strokeWidth:2,fill:Co(t,h),stroke:ko(t,u)});return v(e,t,"center-middle"),i},"dmn:BusinessKnowledgeModel":function(e,t){var i=y(e,n.getScaledPath("BUSINESS_KNOWLEDGE_MODEL",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:0,my:.3}}),{strokeWidth:2,fill:Co(t,h),stroke:ko(t,u)});return v(e,t,"center-middle"),i},"dmn:InputData":function(e,t){var n=g(e,t.width,t.height,22,{stroke:ko(t,u),fill:Co(t,h)});return v(e,t,"center-middle"),n},"dmn:TextAnnotation":function(e,t){var i=g(e,t.width,t.height,0,0,{fill:"none",stroke:"none"});return y(e,n.getScaledPath("TEXT_ANNOTATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:0,my:0}}),{stroke:ko(t,u)}),m(e,_o(t).text||"",{style:{fill:Eo(t,d,u)},box:t,align:"left-top",padding:5}),i},"dmn:Association":function(e,t){var n=_o(t),i=Co(t,h),r=ko(t,u),o={stroke:r,strokeDasharray:"0.5, 5",strokeLinecap:"round",strokeLinejoin:"round",fill:"none"};return"One"!==n.associationDirection&&"Both"!==n.associationDirection||(o.markerEnd=p("association-end",i,r)),"Both"===n.associationDirection&&(o.markerStart=p("association-start",i,r)),b(e,t.waypoints,o)},"dmn:InformationRequirement":function(e,t){var n=Co(t,h),i=ko(t,u),r={stroke:i,strokeWidth:1,strokeLinecap:"round",strokeLinejoin:"round",markerEnd:p("information-requirement-end",n,i)};return b(e,t.waypoints,r)},"dmn:KnowledgeRequirement":function(e,t){var n=Co(t,h),i=ko(t,u),r={stroke:i,strokeWidth:1,strokeDasharray:5,strokeLinecap:"round",strokeLinejoin:"round",markerEnd:p("knowledge-requirement-end",n,i)};return b(e,t.waypoints,r)},"dmn:AuthorityRequirement":function(e,t){var n=Co(t,h),i=ko(t,u),r={stroke:i,strokeWidth:1.5,strokeDasharray:5,strokeLinecap:"round",strokeLinejoin:"round",markerEnd:p("authority-requirement-end",n,i)};return b(e,t.waypoints,r)}};function b(e,t,n){var i=jn(t,n=l(n,["no-fill"],{stroke:bo,strokeWidth:2,fill:"none"}));return hn(e,i),i}this.canRender=function(e){return bi(e,"dmn:DMNElement")||bi(e,"dmn:InformationRequirement")||bi(e,"dmn:KnowledgeRequirement")||bi(e,"dmn:AuthorityRequirement")},this.drawShape=function(e,t){var n=w[t.type];return n?n(e,t):cn.prototype.drawShape.apply(this,[e,t])},this.drawConnection=function(e,t){var n=t.type,i=w[n];return i?i(e,t):cn.prototype.drawConnection.apply(this,[e,t])}}function _o(e){return e.businessObject}function So(e){return e.replace(/[^0-9a-zA-z]+/g,"_")}function ko(e,t){return t}function Co(e,t){return t}function Eo(e,t,n){return t||ko(0,n)}Yt(xo,cn),xo.$inject=["config.drdRenderer","eventBus","pathMap","styles","textRenderer","canvas"];var Mo=0,Ao={width:150,height:50};function Ro(e,t){var n;t.textContent=e;try{var i,r=""===e;return t.textContent=r?"dummy":e,i={width:(n=t.getBBox()).width+2*n.x,height:n.height},r&&(i.width=0),i}catch(e){return console.log(e),{width:0,height:0}}}function To(e,t,n){for(var i,r=e.shift(),o=r;;){if((i=Ro(o,n)).width=o?i.width:0," "===o||""===o||i.width<Math.round(t)||o.length<2)return Do(e,o,r,i);o=No(o,i.width,t)}}function Do(e,t,n,i){if(t.length<n.length){var r=n.slice(t.length).trim();e.unshift(r)}return{width:i.width,height:i.height,text:t}}var Oo="­";function No(e,t,n){var i=Math.max(e.length*(n/t),1),r=function(e,t){var n,i=e.split(/(\s|-|\u00AD)/g),r=[],o=0;if(i.length>1)for(;n=i.shift();){if(!(n.length+o<t)){"-"!==n&&n!==Oo||r.pop();break}r.push(n),o+=n.length}var s=r[r.length-1];return s&&s===Oo&&(r[r.length-1]="-"),r.join("")}(e,i);return r||(r=e.slice(0,Math.max(Math.round(i-1),1))),r}function Po(e){this._config=_({},{size:Ao,padding:Mo,style:{},align:"center-top"},e||{})}Po.prototype.createText=function(e,t){return this.layoutText(e,t).element},Po.prototype.getDimensions=function(e,t){return this.layoutText(e,t).dimensions},Po.prototype.layoutText=function(e,t){var n=_({},this._config.size,t.box),i=_({},this._config.style,t.style),o=function(e){var t=e.split("-");return{horizontal:t[0]||"center",vertical:t[1]||"top"}}(t.align||this._config.align),s=function(e){return r(e)?_({top:0,left:0,right:0,bottom:0},e):{top:e,left:e,right:e,bottom:e}}(void 0!==t.padding?t.padding:this._config.padding),a=t.fitBox||!1,l=function(e){if("fontSize"in e&&"lineHeight"in e)return e.lineHeight*parseInt(e.fontSize,10)}(i),c=e.split(/\u00AD?\r?\n/),h=[],p=n.width-s.left-s.right,f=xn("text");for(fn(f,{x:0,y:0}),fn(f,i),hn(function(){var e=document.getElementById("helper-svg");return e||(fn(e=xn("svg"),{id:"helper-svg"}),xt(e,{visibility:"hidden",position:"fixed",width:0,height:0}),document.body.appendChild(e)),e}(),f);c.length;)h.push(To(c,p,f));"middle"===o.vertical&&(s.top=s.bottom=0);var g=d(h,(function(e,t,n){return e+(l||t.height)}),0)+s.top+s.bottom,m=d(h,(function(e,t,n){return t.width>e?t.width:e}),0),v=s.top;"middle"===o.vertical&&(v+=(n.height-g)/2),v-=(l||h[0].height)/4;var y=xn("text");return fn(y,i),u(h,(function(e){var t;switch(v+=l||e.height,o.horizontal){case"left":t=s.left;break;case"right":t=(a?m:p)-s.right-e.width;break;default:t=Math.max(((a?m:p)-e.width)/2+s.left,0)}var n=xn("tspan");fn(n,{x:t,y:v}),n.textContent=e.text,hn(y,n)})),Dn(f),{dimensions:{width:m,height:g},element:y}};function qo(e){var t=_({fontFamily:"Arial, sans-serif",fontSize:12,fontWeight:"normal",lineHeight:1.2},e&&e.defaultStyle||{}),n=parseInt(t.fontSize,10)-1,i=_({},t,{fontSize:n},e&&e.externalStyle||{}),r=new Po({style:t});this.getExternalLabelBounds=function(e,t){var n=r.getDimensions(t,{box:{width:90,height:30,x:e.width/2+e.x,y:e.height/2+e.y},style:i});return{x:Math.round(e.x+e.width/2-n.width/2),y:Math.round(e.y),width:Math.ceil(n.width),height:Math.ceil(n.height)}},this.getTextAnnotationBounds=function(e,n){var i=r.getDimensions(n,{box:e,style:t,align:"left-top",padding:5});return{x:e.x,y:e.y,width:e.width,height:Math.max(30,Math.round(i.height))}},this.createText=function(e,t){return r.createText(e,t||{})},this.getDefaultStyle=function(){return t},this.getExternalStyle=function(){return i}}qo.$inject=["config.textRenderer"];var Bo=/\{([^{}]+)\}/g,Lo=/(?:(?:^|\.)(.+?)(?=\[|\.|$|\()|\[('|")(.+?)\2\])(\(\))?/g;var Io={__init__:["drdRenderer"],drdRenderer:["type",xo],textRenderer:["type",qo],pathMap:["type",function(){this.pathMap={KNOWLEDGE_SOURCE:{d:"m {mx},{my} l 0,{e.y0} c {e.x0},{e.y1} {e.x1},-{e.y2} {e.x2},-{e.y3} c {e.x3},-{e.y4} {e.x4},{e.y5} {e.x5},{e.y6} l 0,-{e.y7}z",width:100,height:65,widthElements:[29.8,48.4,67.2,12.2,19.8,30.8],heightElements:[55.3,19.7,4.2,6.7,2.3,1.6,6.2,54.6]},BUSINESS_KNOWLEDGE_MODEL:{d:"m {mx},{my} l {e.x0},-{e.y0} l {e.x1},0 l 0,{e.y1} l -{e.x2},{e.y2} l -{e.x3},0z",width:125,height:45,widthElements:[13.8,109.2,13.8,109.1],heightElements:[13.2,29.8,13.2]},TEXT_ANNOTATION:{d:"m {mx}, {my} m 10,0 l -10,0 l 0,{e.y0} l 10,0",width:10,height:30,widthElements:[10],heightElements:[30]}},this.getRawPath=function(e){return this.pathMap[e].d},this.getScaledPath=function(e,t){var n,i,r=this.pathMap[e];t.abspos?(n=t.abspos.x,i=t.abspos.y):(n=t.containerWidth*t.position.mx,i=t.containerHeight*t.position.my);var o={};if(t.position){for(var s=t.containerHeight/r.height*t.yScaleFactor,a=t.containerWidth/r.width*t.xScaleFactor,l=0;l<r.heightElements.length;l++)o["y"+l]=r.heightElements[l]*s;for(var c=0;c<r.widthElements.length;c++)o["x"+c]=r.widthElements[c]*a}var h,u,d=(h=r.d,u={mx:n,my:i,e:o},String(h).replace(Bo,(function(e,t){return function(e,t,n){var i=n;return t.replace(Lo,(function(e,t,n,r,o){t=t||r,i&&(t in i&&(i=i[t]),"function"==typeof i&&o&&(i=i()))})),i=(null==i||i==n?e:i)+""}(e,t,u)})));return d}}]};function jo(e,t,n,i){this._eventBus=e,this._canvas=t,this._elementRegistry=i,this._elementFactory=n}function Fo(e,t){return _({id:e.id,type:e.$type,businessObject:e},t)}function Vo(e){return e.split("#").pop()}jo.$inject=["eventBus","canvas","elementFactory","elementRegistry"],jo.prototype.root=function(e){var t=this._elementFactory.createRoot(Fo(e));return this._canvas.setRootElement(t),t},jo.prototype.add=function(e){var t,n,i,r,o,s,a=this._elementFactory,l=this._canvas,c=this._eventBus,h=e.di;if(h.$instanceOf("dmndi:DMNShape"))s=h.bounds,o=Fo(e,{x:Math.round(s.x),y:Math.round(s.y),width:Math.round(s.width),height:Math.round(s.height)}),t=a.createShape(o),l.addShape(t),c.fire("drdElement.added",{element:t,di:h});else{if(!h.$instanceOf("dmndi:DMNEdge"))throw new Error("unknown di for element "+e.id);n=function(e){var t=e.waypoint;if(t)return f(t,(function(e){var t={x:e.x,y:e.y};return _({original:t},t)}))}(h),i=this._getSource(e),r=this._getTarget(e),i&&r&&(o=Fo(e,{hidden:!1,source:i,target:r,waypoints:n}),t=a.createConnection(o),l.addConnection(t),c.fire("drdElement.added",{element:t,di:h}))}return t},jo.prototype._getSource=function(e){var t,n;if(bi(e,"dmn:Association")?n=e.sourceRef:bi(e,"dmn:InformationRequirement")?n=e.requiredDecision||e.requiredInput:bi(e,"dmn:KnowledgeRequirement")?n=e.requiredKnowledge:bi(e,"dmn:AuthorityRequirement")&&(n=e.requiredDecision||e.requiredInput||e.requiredAuthority),n&&(t=n.href),t)return this._getShape(Vo(t))},jo.prototype._getTarget=function(e){return bi(e,"dmn:Association")?e.targetRef&&this._getShape(Vo(e.targetRef.href)):this._getShape(e.$parent.id)},jo.prototype._getShape=function(e){return this._elementRegistry.get(e)};var $o={__depends__:[Io,{drdImporter:["type",jo]}]};var zo={translate:["value",function(e,t){return t=t||{},e.replace(/{([^}]+)}/g,(function(e,n){return t[n]||"{"+n+"}"}))}]};function Ho(e){return e.originalEvent||e.srcEvent}function Wo(e){return e.pointers&&e.pointers.length&&(e=e.pointers[0]),e.touches&&e.touches.length&&(e=e.touches[0]),e?{x:e.clientX,y:e.clientY}:null}function Uo(e,t){return(Ho(e)||e).button===t}function Go(e){return Uo(e,0)}function Ko(e){return!0}function Xo(e){return Go(e)||function(e){return Uo(e,1)}(e)}function Yo(e,t,n){var i=this;function r(n,i,r){var o,s;(function(e,t){var n=l[e]||Go;return!n(t)})(n,i)||(r?s=t.getGraphics(r):(o=i.delegateTarget||i.target)&&(s=o,r=t.get(s)),s&&r&&!1===e.fire(n,{element:r,gfx:s,originalEvent:i})&&(i.stopPropagation(),i.preventDefault()))}var o={};function s(e){return o[e]}var a={click:"element.click",contextmenu:"element.contextmenu",dblclick:"element.dblclick",mousedown:"element.mousedown",mousemove:"element.mousemove",mouseover:"element.hover",mouseout:"element.out",mouseup:"element.mouseup"},l={"element.contextmenu":Ko,"element.mousedown":Xo,"element.mouseup":Xo,"element.click":Xo,"element.dblclick":Xo};var c="svg, .djs-element";function h(e,t,n,i){var s=o[n]=function(e){r(n,e)};i&&(l[n]=i),s.$delegate=Bt.bind(e,c,t,s)}function d(e,t,n){var i=s(n);i&&Bt.unbind(e,t,i.$delegate)}e.on("canvas.destroy",(function(e){!function(e){u(a,(function(t,n){d(e,n,t)}))}(e.svg)})),e.on("canvas.init",(function(e){!function(e){u(a,(function(t,n){h(e,n,t)}))}(e.svg)})),e.on(["shape.added","connection.added"],(function(t){var n=t.element,i=t.gfx;e.fire("interactionEvents.createHit",{element:n,gfx:i})})),e.on(["shape.changed","connection.changed"],500,(function(t){var n=t.element,i=t.gfx;e.fire("interactionEvents.updateHit",{element:n,gfx:i})})),e.on("interactionEvents.createHit",500,(function(e){var t=e.element,n=e.gfx;i.createDefaultHit(t,n)})),e.on("interactionEvents.updateHit",(function(e){var t=e.element,n=e.gfx;i.updateDefaultHit(t,n)}));var p=m("djs-hit djs-hit-stroke"),f=m("djs-hit djs-hit-click-stroke"),g={all:m("djs-hit djs-hit-all"),"click-stroke":f,stroke:p,"no-move":m("djs-hit djs-hit-no-move")};function m(e,t){return t=_({stroke:"white",strokeWidth:15},t||{}),n.cls(e,["no-fill","no-border"],t)}function v(e,t){var n=g[t];if(!n)throw new Error("invalid hit type <"+t+">");return fn(e,n),e}function y(e,t){hn(e,t)}this.removeHits=function(e){var t;u((t=".djs-hit",(e||document).querySelectorAll(t)),Dn)},this.createDefaultHit=function(e,t){var n,i=e.waypoints,r=e.isFrame;return i?this.createWaypointsHit(t,i):(n=r?"stroke":"all",this.createBoxHit(t,n,{width:e.width,height:e.height}))},this.createWaypointsHit=function(e,t){var n=jn(t);return v(n,"stroke"),y(e,n),n},this.createBoxHit=function(e,t,n){n=_({x:0,y:0},n);var i=xn("rect");return v(i,t),fn(i,n),y(e,i),i},this.updateDefaultHit=function(e,t){var n=Vt(".djs-hit",t);if(n)return e.waypoints?Fn(n,e.waypoints):fn(n,{width:e.width,height:e.height}),n},this.fire=r,this.triggerMouseEvent=function(e,t,n){var i=a[e];if(!i)throw new Error("unmapped DOM event name <"+e+">");return r(i,t,n)},this.mouseHandler=s,this.registerEvent=h,this.unregisterEvent=d}Yo.$inject=["eventBus","elementRegistry","styles"];var Jo={__init__:["interactionEvents"],interactionEvents:["type",Yo]};function Qo(e,t){this._eventBus=e,this._canvas=t,this._selectedElements=[];var n=this;e.on(["shape.remove","connection.remove"],(function(e){var t=e.element;n.deselect(t)})),e.on(["diagram.clear","root.set"],(function(e){n.select(null)}))}Qo.$inject=["eventBus","canvas"],Qo.prototype.deselect=function(e){var t=this._selectedElements,n=t.indexOf(e);if(-1!==n){var i=t.slice();t.splice(n,1),this._eventBus.fire("selection.changed",{oldSelection:i,newSelection:t})}},Qo.prototype.get=function(){return this._selectedElements},Qo.prototype.isSelected=function(e){return-1!==this._selectedElements.indexOf(e)},Qo.prototype.select=function(e,t){var n=this._selectedElements,r=n.slice();i(e)||(e=e?[e]:[]);var o=this._canvas,s=o.getRootElement();e=e.filter((function(e){var t=o.findRoot(e);return s===t})),t?u(e,(function(e){-1===n.indexOf(e)&&n.push(e)})):this._selectedElements=n=e.slice(),this._eventBus.fire("selection.changed",{oldSelection:r,newSelection:n})};var Zo="hover",es="selected";function ts(e,t){function n(t,n){e.addMarker(t,n)}function i(t,n){e.removeMarker(t,n)}this._canvas=e,t.on("element.hover",(function(e){n(e.element,Zo)})),t.on("element.out",(function(e){i(e.element,Zo)})),t.on("selection.changed",(function(e){var t=e.oldSelection,r=e.newSelection;u(t,(function(e){-1===r.indexOf(e)&&i(e,es)})),u(r,(function(e){-1===t.indexOf(e)&&n(e,es)}))}))}function ns(e,t,n,r){e.on("create.end",500,(function(e){var n=e.context,r=n.canExecute,o=n.elements,s=(n.hints||{}).autoSelect;if(r){if(!1===s)return;i(s)?t.select(s):t.select(o.filter(is))}})),e.on("connect.end",500,(function(e){var n=e.context.connection;n&&t.select(n)})),e.on("shape.move.end",500,(function(e){var n=e.previousSelection||[],i=r.get(e.context.shape.id);c(n,(function(e){return i.id===e.id}))||t.select(i)})),e.on("element.click",(function(e){if(Go(e)){var i=e.element;i===n.getRootElement()&&(i=null);var r=t.isSelected(i),o=t.get().length>1,s=function(e){var t=Ho(e)||e;return Go(e)&&t.shiftKey}(e);if(r&&o)return s?t.deselect(i):t.select(i);r?t.deselect(i):t.select(i,s)}}))}function is(e){return!e.hidden}ts.$inject=["canvas","eventBus"],ns.$inject=["eventBus","selection","canvas","elementRegistry"];var rs={__init__:["selectionVisuals","selectionBehavior"],__depends__:[Jo],selection:["type",Qo],selectionVisuals:["type",ts],selectionBehavior:["type",ns]};function os(e){this._counter=0,this._prefix=(e?e+"-":"")+Math.floor(1e9*Math.random())+"-"}os.prototype.next=function(){return this._prefix+ ++this._counter};var ss=new os("ov");function as(e,t,n,i){var r,o;this._eventBus=t,this._canvas=n,this._elementRegistry=i,this._ids=ss,this._overlayDefaults=_({show:null,scale:!0},e&&e.defaults),this._overlays={},this._overlayContainers=[],this._overlayRoot=(r=n.getContainer(),xt(o=Ft('<div class="djs-overlay-container" />'),{position:"absolute",width:0,height:0}),r.insertBefore(o,r.firstChild),o),this._init()}function ls(e,t,n){xt(e,{left:t+"px",top:n+"px"})}function cs(e,t){e.style.display=!1===t?"none":""}function hs(e,t){e.style["transform-origin"]="top left",["","-ms-","-webkit-"].forEach((function(n){e.style[n+"transform"]=t}))}as.$inject=["config.overlays","eventBus","canvas","elementRegistry"],as.prototype.get=function(e){if(a(e)&&(e={id:e}),a(e.element)&&(e.element=this._elementRegistry.get(e.element)),e.element){var t=this._getOverlayContainer(e.element,!0);return t?e.type?h(t.overlays,m({type:e.type})):t.overlays.slice():[]}return e.type?h(this._overlays,m({type:e.type})):e.id?this._overlays[e.id]:null},as.prototype.add=function(e,t,n){if(r(t)&&(n=t,t=null),e.id||(e=this._elementRegistry.get(e)),!n.position)throw new Error("must specifiy overlay position");if(!n.html)throw new Error("must specifiy overlay html");if(!e)throw new Error("invalid element specified");var i=this._ids.next();return n=_({},this._overlayDefaults,n,{id:i,type:t,element:e,html:n.html}),this._addOverlay(n),i},as.prototype.remove=function(e){var t=this.get(e)||[];i(t)||(t=[t]);var n=this;u(t,(function(e){var t=n._getOverlayContainer(e.element,!0);if(e&&($t(e.html),$t(e.htmlContainer),delete e.htmlContainer,delete e.element,delete n._overlays[e.id]),t){var i=t.overlays.indexOf(e);-1!==i&&t.overlays.splice(i,1)}}))},as.prototype.isShown=function(){return"none"!==this._overlayRoot.style.display},as.prototype.show=function(){cs(this._overlayRoot)},as.prototype.hide=function(){cs(this._overlayRoot,!1)},as.prototype.clear=function(){this._overlays={},this._overlayContainers=[],Et(this._overlayRoot)},as.prototype._updateOverlayContainer=function(e){var t=e.element,n=e.html,i=t.x,r=t.y;if(t.waypoints){var o=Vn(t);i=o.x,r=o.y}ls(n,i,r),_t(e.html,"data-container-id",t.id)},as.prototype._updateOverlay=function(e){var t,n,i=e.position,r=e.htmlContainer,o=e.element,s=i.left,a=i.top;void 0!==i.right&&(t=o.waypoints?Vn(o).width:o.width,s=-1*i.right+t);void 0!==i.bottom&&(n=o.waypoints?Vn(o).height:o.height,a=-1*i.bottom+n);ls(r,s||0,a||0),this._updateOverlayVisibilty(e,this._canvas.viewbox())},as.prototype._createOverlayContainer=function(e){var t=Ft('<div class="djs-overlays" />');xt(t,{position:"absolute"}),this._overlayRoot.appendChild(t);var n={html:t,element:e,overlays:[]};return this._updateOverlayContainer(n),this._overlayContainers.push(n),n},as.prototype._updateRoot=function(e){var t=e.scale||1,n="matrix("+[t,0,0,t,-1*e.x*t,-1*e.y*t].join(",")+")";hs(this._overlayRoot,n)},as.prototype._getOverlayContainer=function(e,t){var n=c(this._overlayContainers,(function(t){return t.element===e}));return n||t?n:this._createOverlayContainer(e)},as.prototype._addOverlay=function(e){var t,n,i=e.id,r=e.element,o=e.html;o.get&&o.constructor.prototype.jquery&&(o=o.get(0)),a(o)&&(o=Ft(o)),n=this._getOverlayContainer(r),xt(t=Ft('<div class="djs-overlay" data-overlay-id="'+i+'">'),{position:"absolute"}),t.appendChild(o),e.type&&kt(t).add("djs-overlay-"+e.type),cs(t,this._canvas.findRoot(r)===this._canvas.getRootElement()),e.htmlContainer=t,n.overlays.push(e),n.html.appendChild(t),this._overlays[i]=e,this._updateOverlay(e),this._updateOverlayVisibilty(e,this._canvas.viewbox())},as.prototype._updateOverlayVisibilty=function(e,t){var i=e.show,r=this._canvas.findRoot(e.element),o=i&&i.minZoom,s=i&&i.maxZoom,a=e.htmlContainer,l=!0;(r!==this._canvas.getRootElement()||i&&(n(o)&&o>t.scale||n(s)&&s<t.scale))&&(l=!1),cs(a,l),this._updateOverlayScale(e,t)},as.prototype._updateOverlayScale=function(e,t){var i,r,o,s=e.scale,a=e.htmlContainer,l="";!0!==s&&(!1===s?(i=1,r=1):(i=s.min,r=s.max),n(i)&&t.scale<i&&(o=(1/t.scale||1)*i),n(r)&&t.scale>r&&(o=(1/t.scale||1)*r)),n(o)&&(l="scale("+o+","+o+")"),hs(a,l)},as.prototype._updateOverlaysVisibilty=function(e){var t=this;u(this._overlays,(function(n){t._updateOverlayVisibilty(n,e)}))},as.prototype._init=function(){var e=this._eventBus,t=this;e.on("canvas.viewbox.changing",(function(e){t.hide()})),e.on("canvas.viewbox.changed",(function(e){var n;n=e.viewbox,t._updateRoot(n),t._updateOverlaysVisibilty(n),t.show()})),e.on(["shape.remove","connection.remove"],(function(e){var n=e.element;u(t.get({element:n}),(function(e){t.remove(e.id)}));var i=t._getOverlayContainer(n);if(i){$t(i.html);var r=t._overlayContainers.indexOf(i);-1!==r&&t._overlayContainers.splice(r,1)}})),e.on("element.changed",500,(function(e){var n=e.element,i=t._getOverlayContainer(n,!0);i&&(u(i.overlays,(function(e){t._updateOverlay(e)})),t._updateOverlayContainer(i))})),e.on("element.marker.update",(function(e){var n=t._getOverlayContainer(e.element,!0);n&&kt(n.html)[e.add?"add":"remove"](e.marker)})),e.on("root.set",(function(){t._updateOverlaysVisibilty(t._canvas.viewbox())})),e.on("diagram.clear",this.clear,this)};var us={__init__:["overlays"],overlays:["type",as]};function ds(e,t,n){this._eventBus=e,this._canvas=t,this._translate=n,e.on("diagram.init",(function(){this._init()}),this),e.on("import.done",(function(e){e.error||this.update()}),this),this.HTML_MARKUP='<div class="dmn-definitions"><div class="dmn-definitions-name" title="'+this._translate("Definition name")+'" spellcheck="false"></div><div class="dmn-definitions-id" title="'+this._translate("Definition ID")+'" spellcheck="false"></div></div>'}function ps(e,t){function n(e,n){kt(t.getContainer()).toggle(e,n)}e.on("palette.create",(function(){n("with-palette",!0)})),e.on("palette.changed",(function(e){n("with-palette-two-column",e.twoColumn)}))}ds.$inject=["eventBus","canvas","translate"],ds.prototype._init=function(){var e=this._canvas,t=this._eventBus,n=e.getContainer(),i=this._container=Ft(this.HTML_MARKUP);n.appendChild(i),this.nameElement=Vt(".dmn-definitions-name",this._container),this.idElement=Vt(".dmn-definitions-id",this._container),Bt.bind(i,".dmn-definitions-name, .dmn-definitions-id","mousedown",(function(e){e.stopPropagation()})),t.fire("definitionIdView.create",{html:i})},ds.prototype.update=function(){var e=this._canvas.getRootElement().businessObject;this.nameElement.textContent=e.name,this.idElement.textContent=e.id},ps.$inject=["eventBus","canvas"];var fs={__depends__:[zo],__init__:["definitionPropertiesView","definitionPropertiesPaletteAdapter"],definitionPropertiesView:["type",ds],definitionPropertiesPaletteAdapter:["type",ps]},gs=[{className:"dmn-icon-decision-table",matches:function(e){var t=xi(e);return bi(t,"dmn:Decision")&&bi(t.decisionLogic,"dmn:DecisionTable")},title:"Open decision table"},{className:"dmn-icon-literal-expression",matches:function(e){return bi(_i(e),"dmn:LiteralExpression")},title:"Open literal expression"}];class ms{constructor(e,t,n,i,r){this._injector=e,this._eventBus=t,this._overlays=n,this._translate=r,this._config=i||{enabled:!0},t.on(["shape.added"],(({element:e})=>{for(let t=0;t<gs.length;t++){const{matches:n,className:i,title:r}=gs[t];n&&n(e)&&this.addOverlay(e,i,r)}}))}addOverlay(e,t,n){const i=!1!==this._config.enabled,r=this._getOverlayNode(t,n,i),o=this._overlays.add(e,{position:{top:2,left:2},html:r});i&&(kt(r).add("interactive"),this.bindEventListener(e,r,o))}_getOverlayNode(e,t,n){const i=document.createElement("div");if(i.className="drill-down-overlay",!n){const t=document.createElement("span");return t.className=e,i.appendChild(t),i}const r=document.createElement("button");return r.type="button",r.className=e,r.title=this._translate(t),i.appendChild(r),i}bindEventListener(e,t,n){const i=this._overlays,r=this._eventBus,o=i._overlayRoot;Bt.bind(o,'[data-overlay-id="'+n+'"]',"click",(()=>{!1!==r.fire("drillDown.click",{element:e})&&this.drillDown(e)}))}drillDown(e){const t=this._injector.get("_parent",!1);if(!t)return!1;const n=t.getView(e.businessObject);return!!n&&(t.open(n),!0)}}ms.$inject=["injector","eventBus","overlays","config.drillDown","translate"];var vs={__depends__:[us,zo],__init__:["drillDown"],drillDown:["type",ms]};