1234567891011121314151617181920212223242526272829303132333435 |
- /*! bpmn-js - bpmn-modeler v6.5.1 | Copyright (c) 2014-present, camunda Services GmbH | bpmn.io/license */
- !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e=e||self).BpmnJS=t()}(this,function(){"use strict";var e="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function t(e,t){return e(t={exports:{}},t.exports),t.exports}var n=t(function(e){"function"==typeof Object.create?e.exports=function(e,t){e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}})}:e.exports=function(e,t){e.super_=t;var n=function(){};n.prototype=t.prototype,e.prototype=new n,e.prototype.constructor=e}});var i=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),a="";for(r=0;r<Math.floor(i);r++){a=Math.floor(Math.random()*n).toString(n)+a}if(o){var s=Math.pow(n,o);a=Math.floor(Math.random()*s).toString(n)+a}var c=parseInt(a,n);return c!==1/0&&c>=Math.pow(2,e)?t(e,n):a};t.rack=function(e,n,i){var r=function(r){var a=0;do{if(a++>10){if(!i)throw new Error("too many ID collisions, use more bits");e+=i}var s=t(e,n)}while(Object.hasOwnProperty.call(o,s));return o[s]=r,s},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 r(e){if(!(this instanceof r))return new r(e);e=e||[128,36,1],this._seed=e.length?i.rack(e[0],e[1],e[2]):e}function o(e){return Array.prototype.concat.apply([],e)}r.prototype.next=function(e){return this._seed(e||!0)},r.prototype.nextPrefixed=function(e,t){var n;do{n=e+this.next(!0)}while(this.assigned(n));return this.claim(n,t),n},r.prototype.claim=function(e,t){this._seed.set(e,t||!0)},r.prototype.assigned=function(e){return this._seed.get(e)||!1},r.prototype.unclaim=function(e){delete this._seed.hats[e]},r.prototype.clear=function(){var e,t=this._seed.hats;for(e in t)this.unclaim(e)};var a=Object.prototype.toString,s=Object.prototype.hasOwnProperty;function c(e){return void 0===e}function p(e){return void 0!==e}function u(e){return null==e}function l(e){return"[object Array]"===a.call(e)}function h(e){return"[object Object]"===a.call(e)}function d(e){return"[object Number]"===a.call(e)}function f(e){var t=a.call(e);return"[object Function]"===t||"[object AsyncFunction]"===t||"[object GeneratorFunction]"===t||"[object AsyncGeneratorFunction]"===t||"[object Proxy]"===t}function m(e){return"[object String]"===a.call(e)}function v(e,t){return s.call(e,t)}function y(e,t){var n;return t=N(t),b(e,function(e,i){if(t(e,i))return n=e,!1}),n}function g(e,t){var n=[];return b(e,function(e,i){t(e,i)&&n.push(e)}),n}function b(e,t){var n;if(!c(e)){var i=l(e)?j:O;for(var r in e)if(v(e,r)&&!1===t(n=e[r],i(r)))return n}}function x(e,t){return c(e)?[]:(function(e){if(!l(e))throw new Error("must supply array")}(e),t=N(t),e.filter(function(e,n){return!t(e,n)}))}function _(e,t,n){return b(e,function(e,i){n=t(n,e,i)}),n}function E(e,t){return!!_(e,function(e,n,i){return e&&t(n,i)},!0)}function w(e,t){return!!y(e,t)}function S(e,t){var n=[];return b(e,function(e,i){n.push(t(e,i))}),n}function C(e){return e&&Object.keys(e)||[]}function T(e){return C(e).length}function R(e){return S(e,function(e){return e})}function A(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return t=B(t),b(e,function(e){var i=t(e)||"_",r=n[i];r||(r=n[i]=[]),r.push(e)}),n}function k(e){e=B(e);for(var t={},n=arguments.length,i=new Array(n>1?n-1:0),r=1;r<n;r++)i[r-1]=arguments[r];return b(i,function(n){return A(n,e,t)}),S(t,function(e,t){return e[0]})}var P=k;function M(e,t){t=B(t);var n=[];return b(e,function(e,i){for(var r=t(e,i),o={d:r,v:e},a=0;a<n.length;a++){if(r<n[a].d)return void n.splice(a,0,o)}n.push(o)}),S(n,function(e){return e.v})}function D(e){return function(t){return E(e,function(e,n){return t[n]===e})}}function B(e){return f(e)?e:function(t){return t[e]}}function N(e){return f(e)?e:function(t){return t===e}}function O(e){return e}function j(e){return Number(e)}function L(e,t){var n,i,r,o;function a(){var a=Date.now(),c=o+t-a;if(c>0)return s(c);e.apply(r,i),n=o=i=r=void 0}function s(e){n=setTimeout(a,e)}return function(){o=Date.now();for(var e=arguments.length,a=new Array(e),c=0;c<e;c++)a[c]=arguments[c];i=a,r=this,n||s(t)}}function I(e,t){return e.bind(t)}function z(){return(z=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}).apply(this,arguments)}function F(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 z.apply(void 0,[e].concat(n))}function $(e,t){var n={},i=Object(e);return b(t,function(t){t in i&&(n[t]=e[t])}),n}function H(e,t){var n={};return b(Object(e),function(e,i){-1===t.indexOf(i)&&(n[i]=e)}),n}function G(e,t,n){return 2==arguments.length?e.getAttribute(t):null===n?e.removeAttribute(t):(e.setAttribute(t,n),e)}var W=[].indexOf,V=function(e,t){if(W)return e.indexOf(t);for(var n=0;n<e.length;++n)if(e[n]===t)return n;return-1},U=/\s+/,q=Object.prototype.toString;function K(e){return new Y(e)}function Y(e){if(!e||!e.nodeType)throw new Error("A DOM element reference is required");this.el=e,this.list=e.classList}function X(e){for(var t;e.childNodes.length;)t=e.childNodes[0],e.removeChild(t);return e}Y.prototype.add=function(e){if(this.list)return this.list.add(e),this;var t=this.array();return~V(t,e)||t.push(e),this.el.className=t.join(" "),this},Y.prototype.remove=function(e){if("[object RegExp]"==q.call(e))return this.removeMatching(e);if(this.list)return this.list.remove(e),this;var t=this.array(),n=V(t,e);return~n&&t.splice(n,1),this.el.className=t.join(" "),this},Y.prototype.removeMatching=function(e){for(var t=this.array(),n=0;n<t.length;n++)e.test(t[n])&&this.remove(t[n]);return this},Y.prototype.toggle=function(e,t){return this.list?(void 0!==t?t!==this.list.toggle(e,t)&&this.list.toggle(e):this.list.toggle(e),this):(void 0!==t?t?this.add(e):this.remove(e):this.has(e)?this.remove(e):this.add(e),this)},Y.prototype.array=function(){var e=(this.el.getAttribute("class")||"").replace(/^\s+|\s+$/g,"").split(U);return""===e[0]&&e.shift(),e},Y.prototype.has=Y.prototype.contains=function(e){return this.list?this.list.contains(e):!!~V(this.array(),e)};var Z="undefined"!=typeof Element?Element.prototype:{},Q=Z.matches||Z.matchesSelector||Z.webkitMatchesSelector||Z.mozMatchesSelector||Z.msMatchesSelector||Z.oMatchesSelector,J=function(e,t){if(!e||1!==e.nodeType)return!1;if(Q)return Q.call(e,t);for(var n=e.parentNode.querySelectorAll(t),i=0;i<n.length;i++)if(n[i]==e)return!0;return!1};function ee(e,t,n){for(var i=n?e:e.parentNode;i&&i.nodeType!==document.DOCUMENT_NODE&&i.nodeType!==document.DOCUMENT_FRAGMENT_NODE;){if(J(i,t))return i;i=i.parentNode}return J(i,t)?i:null}var te=Element.prototype,ne=te.matchesSelector||te.webkitMatchesSelector||te.mozMatchesSelector||te.msMatchesSelector||te.oMatchesSelector,ie=function(e,t){if(ne)return ne.call(e,t);for(var n=e.parentNode.querySelectorAll(t),i=0;i<n.length;++i)if(n[i]==e)return!0;return!1};var re,oe=window.addEventListener?"addEventListener":"attachEvent",ae=window.removeEventListener?"removeEventListener":"detachEvent",se="addEventListener"!==oe?"on":"",ce={bind:function(e,t,n,i){return e[oe](se+t,n,i||!1),n},unbind:function(e,t,n,i){return e[ae](se+t,n,i||!1),n}},pe=["focus","blur"],ue={bind:function(e,t,n,i,r){return-1!==pe.indexOf(n)&&(r=!0),ce.bind(e,n,function(n){var r=n.target||n.srcElement;n.delegateTarget=function(e,t,n){for(var i=n?e:e.parentNode;i&&i!==document;){if(ie(i,t))return i;i=i.parentNode}}(r,t,!0),n.delegateTarget&&i.call(e,n)},r)},unbind:function(e,t,n,i){-1!==pe.indexOf(t)&&(i=!0),ce.unbind(e,t,n,i)}},le=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){var r=t.createElement("html");return r.innerHTML=e,r.removeChild(r.lastChild)}var o=de[i]||de._default,a=o[0],s=o[1],c=o[2];(r=t.createElement("div")).innerHTML=s+e+c;for(;a--;)r=r.lastChild;if(r.firstChild==r.lastChild)return r.removeChild(r.firstChild);var p=t.createDocumentFragment();for(;r.firstChild;)p.appendChild(r.removeChild(r.firstChild));return p},he=!1;"undefined"!=typeof document&&((re=document.createElement("div")).innerHTML=' <link/><table></table><a href="/a">a</a><input type="checkbox"/>',he=!re.getElementsByTagName("link").length,re=void 0);var de={legend:[1,"<fieldset>","</fieldset>"],tr:[2,"<table><tbody>","</tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],_default:he?[1,"X<div>","</div>"]:[0,"",""]};function fe(e,t){return(t=t||document).querySelector(e)}function me(e,t){return(t=t||document).querySelectorAll(e)}function ve(e){e.parentNode&&e.parentNode.removeChild(e)}function ye(e,t){return t.appendChild(function(e,t){if(e.ownerDocument!==t.ownerDocument)try{return t.ownerDocument.importNode(e,!0)}catch(e){}return e}(e,t))}function ge(e,t){return ye(t,e),e}de.td=de.th=[3,"<table><tbody><tr>","</tr></tbody></table>"],de.option=de.optgroup=[1,'<select multiple="multiple">',"</select>"],de.thead=de.tbody=de.colgroup=de.caption=de.tfoot=[1,"<table>","</table>"],de.polyline=de.ellipse=de.polygon=de.circle=de.text=de.line=de.path=de.rect=de.g=[1,'<svg xmlns="http://www.w3.org/2000/svg" version="1.1">',"</svg>"];var be=2,xe={"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":be,"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":be,"text-anchor":1,"text-decoration":1,"text-rendering":1,"unicode-bidi":1,visibility:1,"word-spacing":1,"writing-mode":1};function _e(e,t,n){var i=t.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase(),r=xe[i];r?(r===be&&"number"==typeof n&&(n=String(n)+"px"),e.style[i]=n):e.setAttributeNS(null,t,n)}function Ee(e,t,n){if("string"==typeof t){if(void 0===n)return function(e,t){return xe[t]?e.style[t]:e.getAttributeNS(null,t)}(e,t);_e(e,t,n)}else!function(e,t){var n,i,r=Object.keys(t);for(n=0;i=r[n];n++)_e(e,i,t[i])}(e,t);return e}function we(e,t){if(e.indexOf)return e.indexOf(t);for(var n=0;n<e.length;++n)if(e[n]===t)return n;return-1}var Se=/\s+/,Ce=Object.prototype.toString;function Te(e){return void 0!==e}function Re(e){return new Ae(e)}function Ae(e){if(!e||!e.nodeType)throw new Error("A DOM element reference is required");this.el=e,this.list=e.classList}function ke(e){var t=e.parentNode;return t&&t.removeChild(e),e}function Pe(e){for(var t;t=e.firstChild;)ke(t);return e}function Me(e){return e.cloneNode(!0)}Ae.prototype.add=function(e){if(this.list)return this.list.add(e),this;var t=this.array();return~we(t,e)||t.push(e),Te(this.el.className.baseVal)?this.el.className.baseVal=t.join(" "):this.el.className=t.join(" "),this},Ae.prototype.remove=function(e){if("[object RegExp]"===Ce.call(e))return this.removeMatching(e);if(this.list)return this.list.remove(e),this;var t=this.array(),n=we(t,e);return~n&&t.splice(n,1),this.el.className.baseVal=t.join(" "),this},Ae.prototype.removeMatching=function(e){for(var t=this.array(),n=0;n<t.length;n++)e.test(t[n])&&this.remove(t[n]);return this},Ae.prototype.toggle=function(e,t){return this.list?(Te(t)?t!==this.list.toggle(e,t)&&this.list.toggle(e):this.list.toggle(e),this):(Te(t)?t?this.add(e):this.remove(e):this.has(e)?this.remove(e):this.add(e),this)},Ae.prototype.array=function(){var e=(this.el.getAttribute("class")||"").replace(/^\s+|\s+$/g,"").split(Se);return""===e[0]&&e.shift(),e},Ae.prototype.has=Ae.prototype.contains=function(e){return this.list?this.list.contains(e):!!~we(this.array(),e)};var De={svg:"http://www.w3.org/2000/svg"},Be='<svg xmlns="'+De.svg+'"';function Ne(e){var t=!1;"<svg"===e.substring(0,4)?-1===e.indexOf(De.svg)&&(e=Be+e.substring(4)):(e=Be+">"+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 Oe(e,t){var n;return"<"===e.charAt(0)?(n=Ne(e).firstChild,n=document.importNode(n,!0)):n=document.createElementNS(De.svg,e),t&&Ee(n,t),n}var je=Oe("svg");function Le(e,t){var n,i,r=Object.keys(t);for(n=0;i=r[n];n++)e[i]=t[i];return e}function Ie(e){return e?je.createSVGTransformFromMatrix(e):je.createSVGTransform()}var ze=/([&<>]{1})/g,Fe=/([\n\r"]{1})/g,$e={"&":"&","<":"<",">":">",'"':"'"};function He(e,t){return e.replace(t,function(e,t){return $e[t]||t})}function Ge(e,t){var n,i,r,o,a;switch(e.nodeType){case 3:t.push(He(e.textContent,ze));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,'="',He(o.value,Fe),'"');if(e.hasChildNodes()){for(t.push(">"),n=0,i=(a=e.childNodes).length;n<i;++n)Ge(a.item(n),t);t.push("</",e.tagName,">")}else t.push("/>");break;case 8:t.push("\x3c!--",He(e.nodeValue,ze),"--\x3e");break;case 4:t.push("<![CDATA[",e.nodeValue,"]]>");break;default:throw new Error("unable to handle node "+e.nodeType)}return t}function We(e,t){var n=Ne(t);if(Pe(e),t){(function(e){return"#document-fragment"===e.nodeName})(n)||(n=n.documentElement);for(var i,r=(i=n.childNodes,Array.prototype.slice.call(i)),o=0;o<r.length;o++)ye(r[o],e)}}function Ve(e,t){if(void 0!==t){try{We(e,t)}catch(e){throw new Error("error parsing SVG: "+e.message)}return e}return function(e){for(var t=e.firstChild,n=[];t;)Ge(t,n),t=t.nextSibling;return n.join("")}(e)}function Ue(e,t){return t instanceof SVGMatrix?e.createSVGTransformFromMatrix(t):t}function qe(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(Ue(e,i))}(n,t)),n.consolidate()}var Ke=/^class /;function Ye(e){return"[object Array]"===Object.prototype.toString.call(e)}function Xe(){var e=Array.prototype.slice.call(arguments);1===e.length&&Ye(e[0])&&(e=e[0]);var t=e.pop();return t.$inject=e,t}var Ze=/constructor\s*[^(]*\(\s*([^)]*)\)/m,Qe=/^function\s*[^(]*\(\s*([^)]*)\)/m,Je=/\/\*([^*]*)\*\//m;function et(e){if("function"!=typeof e)throw new Error('Cannot annotate "'+e+'". Expected a function!');var t=e.toString().match(function(e){return Ke.test(e.toString())}(e)?Ze:Qe);return t&&t[1]&&t[1].split(",").map(function(e){return(t=e.match(Je))?t[1].trim():e.trim()})||[]}var tt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};function nt(e){if(Array.isArray(e)){for(var t=0,n=Array(e.length);t<e.length;t++)n[t]=e[t];return n}return Array.from(e)}function it(e,t){t=t||{get:function(e,t){if(n.push(e),!1===t)return null;throw a('No provider for "'+e+'"!')}};var n=[],i=this._providers=Object.create(t._providers||null),r=this._instances=Object.create(null),o=r.injector=this,a=function(e){var t=n.join(" -> ");return n.length=0,new Error(t?e+" (Resolving: "+t+")":e)},s=function e(o,s){if(!i[o]&&-1!==o.indexOf(".")){for(var c=o.split("."),p=e(c.shift());c.length;)p=p[c.shift()];return p}if(rt(r,o))return r[o];if(rt(i,o)){if(-1!==n.indexOf(o))throw n.push(o),a("Cannot resolve circular dependency!");return n.push(o),r[o]=i[o][0](i[o][1]),n.pop(),r[o]}return t.get(o,s)},c=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if("function"!=typeof e){if(!Ye(e))throw new Error('Cannot invoke "'+e+'". Expected a function!');e=Xe(e.slice())}var n=e.$inject||et(e),i=n.map(function(e){return rt(t,e)?t[e]:s(e)});return{fn:e,dependencies:i}},p=function(e){var t=c(e),n=t.dependencies,i=t.fn;return new(Function.prototype.bind.apply(i,[null].concat(nt(n))))},u=function(e,t,n){var i=c(e,n),r=i.dependencies,o=i.fn;return o.call.apply(o,[t].concat(nt(r)))},l=function(e){return Xe(function(t){return e.get(t)})},h={factory:u,type:p,value:function(e){return e}};e.forEach(function(e){function t(e,t){return"value"!==e&&Ye(t)&&(t=Xe(t.slice())),t}if(e instanceof function(){var e=[];this.factory=function(t,n){return e.push([t,"factory",n]),this},this.value=function(t,n){return e.push([t,"value",n]),this},this.type=function(t,n){return e.push([t,"type",n]),this},this.forEach=function(t){e.forEach(t)}})e.forEach(function(e){var n=e[0],r=e[1],o=e[2];i[n]=[h[r],t(r,o),r]});else if("object"===(void 0===e?"undefined":tt(e)))if(e.__exports__){var n=Object.keys(e).reduce(function(t,n){return"__"!==n.substring(0,2)&&(t[n]=e[n]),t},Object.create(null)),r=new it((e.__modules__||[]).concat([n]),o),a=Xe(function(e){return r.get(e)});e.__exports__.forEach(function(e){i[e]=[a,e,"private",r]})}else Object.keys(e).forEach(function(n){if("private"!==e[n][2]){var r=e[n][0],o=e[n][1];i[n]=[h[r],t(r,o),r]}else i[n]=e[n]})}),this.get=s,this.invoke=u,this.instantiate=p,this.createChild=function(e,t){if(t&&t.length){var n,r,a,s,c=Object.create(null),p=Object.create(null),u=[],h=[],d=[];for(var f in i)n=i[f],-1!==t.indexOf(f)&&("private"===n[2]?-1===(r=u.indexOf(n[3]))?(a=n[3].createChild([],t),s=l(a),u.push(n[3]),h.push(a),d.push(s),c[f]=[s,f,"private",a]):c[f]=[d[r],f,"private",h[r]]:c[f]=[n[2],n[1]],p[f]=!0),"factory"!==n[2]&&"type"!==n[2]||!n[1].$scope||t.forEach(function(e){-1!==n[1].$scope.indexOf(e)&&(c[f]=[n[2],n[1]],p[e]=!0)});t.forEach(function(e){if(!p[e])throw new Error('No provider for "'+e+'". Cannot use provider from the parent!')}),e.unshift(c)}return new it(e,o)}}function rt(e,t){return Object.hasOwnProperty.call(e,t)}var ot=1e3;function at(e,t){var n=this;t=t||ot,e.on(["render.shape","render.connection"],t,function(e,t){var i=e.type,r=t.element,o=t.gfx;if(n.canRender(r))return"render.shape"===i?n.drawShape(o,r):n.drawConnection(o,r)}),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 st(e){return e.join(",").replace(/,?([A-z]),?/g,"$1")}function ct(e){for(var t,n="",i=0;t=e[i];i++)n+=t.x+","+t.y+" ";return n}function pt(e,t){var n=Oe("polyline");return Ee(n,{points:ct(e)}),t&&Ee(n,t),n}function ut(e){return g(e,function(t){return!y(e,function(e){return e!==t&&function e(t,n){if(!n)return;if(t===n)return n;if(!t.parent)return;return e(t.parent,n)}(t,e)})})}function lt(e,t,n){var i=!n||-1===e.indexOf(t);return i&&e.push(t),i}function ht(e,t,n){n=n||0,l(e)||(e=[e]),b(e,function(e,i){var r=t(e,i,n);l(r)&&r.length&&ht(r,t,n+1)})}function dt(e,t){return function(e,t,n){var i=[],r=[];return ht(e,function(e,o,a){lt(i,e,t);var s=e.children;if((-1===n||a<n)&&s&<(r,s,t))return s}),i}(e,!t,-1)}function ft(e,t){var n,i,r,o;return t=!!t,l(e)||(e=[e]),b(e,function(e){var a=e;e.waypoints&&!t&&(a=ft(e.waypoints,!0));var s=a.x,c=a.y,p=a.height||0,u=a.width||0;(s<n||void 0===n)&&(n=s),(c<i||void 0===i)&&(i=c),(s+u>r||void 0===r)&&(r=s+u),(c+p>o||void 0===o)&&(o=c+p)}),{x:n,y:i,height:o-i,width:r-n}}function mt(e){return"waypoints"in e?"connection":"x"in e?"shape":"root"}function vt(e){return!(!e||!e.isFrame)}function yt(e,t){return F({},e||{},t||{})}at.prototype.canRender=function(){},at.prototype.drawShape=function(){},at.prototype.drawConnection=function(){},at.prototype.getShapePath=function(){},at.prototype.getConnectionPath=function(){};var gt=1;function bt(e,t){at.call(this,e,gt),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})}n(bt,at),bt.prototype.canRender=function(){return!0},bt.prototype.drawShape=function(e,t){var n=Oe("rect");return Ee(n,{x:0,y:0,width:t.width||0,height:t.height||0}),vt(t)?Ee(n,this.FRAME_STYLE):Ee(n,this.SHAPE_STYLE),ge(e,n),n},bt.prototype.drawConnection=function(e,t){var n=pt(t.waypoints,this.CONNECTION_STYLE);return ge(e,n),n},bt.prototype.getShapePath=function(e){var t=e.x,n=e.y,i=e.width;return st([["M",t,n],["l",i,0],["l",0,e.height],["l",-i,0],["z"]])},bt.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 st(r)},bt.$inject=["eventBus","styles"];var xt={__init__:["defaultRenderer"],defaultRenderer:["type",bt],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 F(this.style(t,n),{class:e})},this.style=function(t,n){l(t)||n||(n=t,t=[]);var i=_(t,function(t,n){return F(t,e[n]||{})},{});return n?F(i,n):i},this.computeStyle=function(e,n,i){return l(n)||(i=n,n=[]),t.style(n||[],F({},i,e||{}))}}]};function _t(e,t){if(!e||!t)return-1;var n=e.indexOf(t);return-1!==n&&e.splice(n,1),n}function Et(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 wt(e,t){return e&&t?e.indexOf(t):-1}function St(e,t){return Math.round(e*t)/t}function Ct(e){return d(e)?e+"px":e}function Tt(e,t,n){var i=Oe("g");Re(i).add(t);var r=void 0!==n?n:e.childNodes.length-1;return e.insertBefore(i,e.childNodes[r]||null),i}var Rt={shape:["x","y","width","height"],connection:["waypoints"]};function At(e,t,n,i){this._eventBus=t,this._elementRegistry=i,this._graphicsFactory=n,this._init(e||{})}function kt(e,t){var n="matrix("+t.a+","+t.b+","+t.c+","+t.d+","+t.e+","+t.f+")";e.setAttribute("transform",n)}At.$inject=["config.canvas","eventBus","graphicsFactory","elementRegistry"],At.prototype._init=function(e){var t=this._eventBus,n=this._container=function(e){var t=(e=F({},{width:"100%",height:"100%"},e)).container||document.body,n=document.createElement("div");return n.setAttribute("class","djs-container"),F(n.style,{position:"relative",overflow:"hidden",width:Ct(e.width),height:Ct(e.height)}),t.appendChild(n),n}(e),i=this._svg=Oe("svg");Ee(i,{width:"100%",height:"100%"}),ge(n,i);var r=this._viewport=Tt(i,"viewport");this._layers={},!1!==e.deferUpdate&&(this._viewboxChanged=L(I(this._viewboxChanged,this),300)),t.on("diagram.init",function(){t.fire("canvas.init",{svg:i,viewport:r})},this),t.on(["shape.added","connection.added","shape.removed","connection.removed","elements.changed"],function(){delete this._cachedViewbox},this),t.on("diagram.destroy",500,this._destroy,this),t.on("diagram.clear",500,this._clear,this)},At.prototype._destroy=function(e){this._eventBus.fire("canvas.destroy",{svg:this._svg,viewport:this._viewport});var t=this._container.parentNode;t&&t.removeChild(this._container),delete this._svg,delete this._container,delete this._layers,delete this._rootElement,delete this._viewport},At.prototype._clear=function(){var e=this;this._elementRegistry.getAll().forEach(function(t){var n=mt(t);"root"===n?e.setRootElement(null,!0):e._removeElement(t,n)}),delete this._cachedViewbox},At.prototype.getDefaultLayer=function(){return this.getLayer("base",0)},At.prototype.getLayer=function(e,t){if(!e)throw new Error("must specify a name");var 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},At.prototype._createLayer=function(e,t){t||(t=0);var n=_(this._layers,function(e,n){return t>=n.index&&e++,e},0);return{group:Tt(this._viewport,"layer-"+e,n),index:t}},At.prototype.getContainer=function(){return this._container},At.prototype._updateMarker=function(e,t,n){var i;e.id||(e=this._elementRegistry.get(e)),(i=this._elementRegistry._elements[e.id])&&(b([i.gfx,i.secondaryGfx],function(e){e&&(n?Re(e).add(t):Re(e).remove(t))}),this._eventBus.fire("element.marker.update",{element:e,gfx:i.gfx,marker:t,add:!!n}))},At.prototype.addMarker=function(e,t){this._updateMarker(e,t,!0)},At.prototype.removeMarker=function(e,t){this._updateMarker(e,t,!1)},At.prototype.hasMarker=function(e,t){return e.id||(e=this._elementRegistry.get(e)),Re(this.getGraphics(e)).has(t)},At.prototype.toggleMarker=function(e,t){this.hasMarker(e,t)?this.removeMarker(e,t):this.addMarker(e,t)},At.prototype.getRootElement=function(){return this._rootElement||this.setRootElement({id:"__implicitroot",children:[]}),this._rootElement},At.prototype.setRootElement=function(e,t){e&&this._ensureValid("root",e);var n=this._rootElement,i=this._elementRegistry,r=this._eventBus;if(n){if(!t)throw new Error("rootElement already set, need to specify override");r.fire("root.remove",{element:n}),r.fire("root.removed",{element:n}),i.remove(n)}if(e){var o=this.getDefaultLayer();r.fire("root.add",{element:e}),i.add(e,o,this._svg),r.fire("root.added",{element:e,gfx:o})}return this._rootElement=e,e},At.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 with id "+t.id+" already exists");var n=Rt[e];if(!E(n,function(e){return void 0!==t[e]}))throw new Error("must supply { "+n.join(", ")+" } with "+e)},At.prototype._setParent=function(e,t,n){Et(t.children,e,n),e.parent=t},At.prototype._addElement=function(e,t,n,i){n=n||this.getRootElement();var r=this._eventBus,o=this._graphicsFactory;this._ensureValid(e,t),r.fire(e+".add",{element:t,parent:n}),this._setParent(t,n,i);var 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},At.prototype.addShape=function(e,t,n){return this._addElement("shape",e,t,n)},At.prototype.addConnection=function(e,t,n){return this._addElement("connection",e,t,n)},At.prototype._removeElement=function(e,t){var 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),_t(e.parent&&e.parent.children,e),e.parent=null,r.fire(t+".removed",{element:e}),n.remove(e),e},At.prototype.removeShape=function(e){return this._removeElement(e,"shape")},At.prototype.removeConnection=function(e){return this._removeElement(e,"connection")},At.prototype.getGraphics=function(e,t){return this._elementRegistry.getGraphics(e,t)},At.prototype._changeViewbox=function(e){this._eventBus.fire("canvas.viewbox.changing"),e.apply(this),this._cachedViewbox=null,this._viewboxChanged()},At.prototype._viewboxChanged=function(){this._eventBus.fire("canvas.viewbox.changed",{viewbox:this.viewbox()})},At.prototype.viewbox=function(e){if(void 0===e&&this._cachedViewbox)return this._cachedViewbox;var t,n,i,r,o,a,s=this._viewport,c=this.getSize();return e?(this._changeViewbox(function(){r=Math.min(c.width/e.width,c.height/e.height);var t=this._svg.createSVGMatrix().scale(r).translate(-e.x,-e.y);qe(s,t)}),e):(t=this.getDefaultLayer().getBBox(),n=(i=qe(s))?i.matrix:function(e,t,n,i,r,o){var a=je.createSVGMatrix();switch(arguments.length){case 0:return a;case 1:return Le(a,e);case 6:return Le(a,{a:e,b:t,c:n,d:i,e:r,f:o})}}(),r=St(n.a,1e3),o=St(-n.e||0,1e3),a=St(-n.f||0,1e3),e=this._cachedViewbox={x:o?o/r:0,y:a?a/r:0,width:c.width/r,height:c.height/r,scale:r,inner:{width:t.width,height:t.height,x:t.x,y:t.y},outer:c})},At.prototype.scroll=function(e){var t=this._viewport,n=t.getCTM();return e&&this._changeViewbox(function(){e=F({dx:0,dy:0},e||{}),n=this._svg.createSVGMatrix().translate(e.dx,e.dy).multiply(n),kt(t,n)}),{x:n.e,y:n.f}},At.prototype.zoom=function(e,t){return e?"fit-viewport"===e?this._fitViewport(t):(this._changeViewbox(function(){"object"!=typeof t&&(n=this.viewbox().outer,t={x:n.width/2,y:n.height/2}),i=this._setZoom(e,t)}),St(i.a,1e3)):this.viewbox(e).scale;var n,i},At.prototype._fitViewport=function(e){var t,n,i=this.viewbox(),r=i.outer,o=i.inner;return o.x>=0&&o.y>=0&&o.x+o.width<=r.width&&o.y+o.height<=r.height&&!e?n={x:0,y:0,width:Math.max(o.width+o.x,r.width),height:Math.max(o.height+o.y,r.height)}:(t=Math.min(1,r.width/o.width,r.height/o.height),n={x:o.x+(e?o.width/2-r.width/t/2:0),y:o.y+(e?o.height/2-r.height/t/2:0),width:r.width/t,height:r.height/t}),this.viewbox(n),this.viewbox(!1).scale},At.prototype._setZoom=function(e,t){var n,i,r,o,a=this._svg,s=this._viewport,c=a.createSVGMatrix(),p=a.createSVGPoint(),u=(i=s.getCTM()).a;return t?(n=F(p,t).matrixTransform(i.inverse()),r=c.translate(n.x,n.y).scale(1/u*e).translate(-n.x,-n.y),o=i.multiply(r)):o=c.scale(e),kt(this._viewport,o),o},At.prototype.getSize=function(){return{width:this._container.clientWidth,height:this._container.clientHeight}},At.prototype.getAbsoluteBBox=function(e){var t,n=this.viewbox();e.waypoints?t=this.getGraphics(e).getBBox():t=e;return{x:t.x*n.scale-n.x*n.scale,y:t.y*n.scale-n.y*n.scale,width:t.width*n.scale,height:t.height*n.scale}},At.prototype.resized=function(){delete this._cachedViewbox,this._eventBus.fire("canvas.resized")};var Pt="data-element-id";function Mt(e){this._elements={},this._eventBus=e}Mt.$inject=["eventBus"],Mt.prototype.add=function(e,t,n){var i=e.id;this._validateId(i),Ee(t,Pt,i),n&&Ee(n,Pt,i),this._elements[i]={element:e,gfx:t,secondaryGfx:n}},Mt.prototype.remove=function(e){var t=this._elements,n=e.id||e,i=n&&t[n];i&&(Ee(i.gfx,Pt,""),i.secondaryGfx&&Ee(i.secondaryGfx,Pt,""),delete t[n])},Mt.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)},Mt.prototype.get=function(e){var t;t="string"==typeof e?e:e&&Ee(e,Pt);var n=this._elements[t];return n&&n.element},Mt.prototype.filter=function(e){var t=[];return this.forEach(function(n,i){e(n,i)&&t.push(n)}),t},Mt.prototype.getAll=function(){return this.filter(function(e){return e})},Mt.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)})},Mt.prototype.getGraphics=function(e,t){var n=e.id||e,i=this._elements[n];return i&&(t?i.secondaryGfx:i.gfx)},Mt.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")};var Dt={extend: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},isExtended:function(e){return!0===e.__refs_collection}};function Bt(e,t,n){var i=Dt.extend(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 Nt(e,t){if(!(this instanceof Nt))return new Nt(e,t);e.inverse=t,t.inverse=e,this.props={},this.props[e.name]=e,this.props[t.name]=t}Nt.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?Bt(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)},Nt.prototype.ensureRefsCollection=function(e,t){var n=e[t.name];return Dt.isExtended(n)||Bt(this,t,e),n},Nt.prototype.ensureBound=function(e,t){(function(e,t){return Object.prototype.hasOwnProperty.call(e,t.name||t)})(e,t)||this.bind(e,t)},Nt.prototype.unset=function(e,t,n){e&&(this.ensureBound(e,t),t.collection?this.ensureRefsCollection(e,t).remove(n):e[t.name]=void 0)},Nt.prototype.set=function(e,t,n){e&&(this.ensureBound(e,t),t.collection?this.ensureRefsCollection(e,t).add(n):e[t.name]=n)};var Ot=Nt,jt=Dt;Ot.Collection=jt;var Lt=new Ot({name:"children",enumerable:!0,collection:!0},{name:"parent"}),It=new Ot({name:"labels",enumerable:!0,collection:!0},{name:"labelTarget"}),zt=new Ot({name:"attachers",collection:!0},{name:"host"}),Ft=new Ot({name:"outgoing",collection:!0},{name:"source"}),$t=new Ot({name:"incoming",collection:!0},{name:"target"});function Ht(){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)}}),Lt.bind(this,"parent"),It.bind(this,"labels"),Ft.bind(this,"outgoing"),$t.bind(this,"incoming")}function Gt(){Ht.call(this),Lt.bind(this,"children"),zt.bind(this,"host"),zt.bind(this,"attachers")}function Wt(){Gt.call(this)}function Vt(){Gt.call(this),It.bind(this,"labelTarget")}function Ut(){Ht.call(this),Ft.bind(this,"source"),$t.bind(this,"target")}n(Gt,Ht),n(Wt,Gt),n(Vt,Gt),n(Ut,Ht);var qt={connection:Ut,shape:Gt,label:Vt,root:Wt};function Kt(){this._uid=12}Kt.prototype.createRoot=function(e){return this.create("root",e)},Kt.prototype.createLabel=function(e){return this.create("label",e)},Kt.prototype.createShape=function(e){return this.create("shape",e)},Kt.prototype.createConnection=function(e){return this.create("connection",e)},Kt.prototype.create=function(e,t){return(t=F({},t||{})).id||(t.id=e+"_"+this._uid++),function(e,t){var n=qt[e];if(!n)throw new Error("unknown type: <"+e+">");return F(new n,t)}(e,t)};var Yt=Array.prototype.slice;function Xt(){this._listeners={},this.on("diagram.destroy",1,this._destroy,this)}function Zt(){}function Qt(e){return e.childNodes[0]}function Jt(e,t,n,i,r){var o=Ie();o.setTranslate(t,n);var a=Ie();a.setRotate(i||0,0,0);var s=Ie();s.setScale(r||1,r||1),qe(e,[o,a,s])}function en(e,t,n){var i=Ie();i.setTranslate(t,n),qe(e,i)}function tn(e,t){var n=Ie();n.setRotate(t,0,0),qe(e,n)}function nn(e,t){this._eventBus=e,this._elementRegistry=t}function rn(e,t,n){var i=n||t.firstChild;e!==i&&t.insertBefore(e,i)}Xt.prototype.on=function(e,t,n,i){if(e=l(e)?e:[e],f(t)&&(i=n,n=t,t=1e3),!d(t))throw new Error("priority must be a number");var r=n;i&&((r=I(n,i)).__fn=n.__fn||n);var o=this;e.forEach(function(e){o._addListener(e,{priority:t,callback:r,next:null})})},Xt.prototype.once=function(e,t,n,i){var r=this;if(f(t)&&(i=n,n=t,t=1e3),!d(t))throw new Error("priority must be a number");function o(){var t=n.apply(i,arguments);return r.off(e,o),t}o.__fn=n,this.on(e,t,o)},Xt.prototype.off=function(e,t){e=l(e)?e:[e];var n=this;e.forEach(function(e){n._removeListener(e,t)})},Xt.prototype.createEvent=function(e){var t=new Zt;return t.init(e),t},Xt.prototype.fire=function(e,t){var n,i,r,o;if(o=Yt.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 Zt?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}},Xt.prototype.handleError=function(e){return!1===this.fire("error",{error:e})},Xt.prototype._destroy=function(){this._listeners={}},Xt.prototype._invokeListeners=function(e,t,n){for(var i;n&&!e.cancelBubble;)i=this._invokeListener(e,t,n),n=n.next;return i},Xt.prototype._invokeListener=function(e,t,n){var i;try{void 0!==(i=function(e,t){return e.apply(null,t)}(n.callback,t))&&(e.returnValue=i,e.stopPropagation()),!1===i&&e.preventDefault()}catch(e){if(!this.handleError(e))throw console.error("unhandled error in event listener"),console.error(e.stack),e}return i},Xt.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)},Xt.prototype._getListeners=function(e){return this._listeners[e]},Xt.prototype._setListeners=function(e,t){this._listeners[e]=t},Xt.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.__fn!==t||(i?i.next=n:this._setListeners(e,n)),i=o,o=n;else this._setListeners(e,null)},Zt.prototype.stopPropagation=function(){this.cancelBubble=!0},Zt.prototype.preventDefault=function(){this.defaultPrevented=!0},Zt.prototype.init=function(e){F(this,e||{})},nn.$inject=["eventBus","elementRegistry"],nn.prototype._getChildrenContainer=function(e){var t,n=this._elementRegistry.getGraphics(e);return e.parent?(t=function(e){return e.parentNode.childNodes[1]}(n))||(Re(t=Oe("g")).add("djs-children"),ge(n.parentNode,t)):t=n,t},nn.prototype._clear=function(e){var t=Qt(e);return X(t),t},nn.prototype._createContainer=function(e,t,n,i){var r=Oe("g");Re(r).add("djs-group"),void 0!==n?rn(r,t,t.childNodes[n]):ge(t,r);var o=Oe("g");Re(o).add("djs-element"),Re(o).add("djs-"+e),i&&Re(o).add("djs-frame"),ge(r,o);var a=Oe("g");return Re(a).add("djs-visual"),ge(o,a),o},nn.prototype.create=function(e,t,n){var i=this._getChildrenContainer(t.parent);return this._createContainer(e,i,n,vt(t))},nn.prototype.updateContainments=function(e){var t=this,n=this._elementRegistry;b(_(e,function(e,t){return t.parent&&(e[t.parent.id]=t.parent),e},{}),function(e){var i=e.children;if(i){var r=t._getChildrenContainer(e);b(i.slice().reverse(),function(e){rn(n.getGraphics(e).parentNode,r)})}})},nn.prototype.drawShape=function(e,t){return this._eventBus.fire("render.shape",{gfx:e,element:t})},nn.prototype.getShapePath=function(e){return this._eventBus.fire("render.getShapePath",e)},nn.prototype.drawConnection=function(e,t){return this._eventBus.fire("render.connection",{gfx:e,element:t})},nn.prototype.getConnectionPath=function(e){return this._eventBus.fire("render.getConnectionPath",e)},nn.prototype.update=function(e,t,n){if(t.parent){var i=this._clear(n);if("shape"===e)this.drawShape(i,t),en(n,t.x,t.y);else{if("connection"!==e)throw new Error("unknown type: "+e);this.drawConnection(i,t)}t.hidden?Ee(n,"display","none"):Ee(n,"display","block")}},nn.prototype.remove=function(e){ke(this._elementRegistry.getGraphics(e).parentNode)};var on={__depends__:[xt],__init__:["canvas"],canvas:["type",At],elementRegistry:["type",Mt],elementFactory:["type",Kt],eventBus:["type",Xt],graphicsFactory:["type",nn]};function an(e){var t=[],n=[];function i(e){return t.indexOf(e)>=0}e.forEach(function e(r){i(r)||((r.__depends__||[]).forEach(e),i(r)||(function(e){t.push(e)}(r),(r.__init__||[]).forEach(function(e){n.push(e)})))});var r=new it(t);return n.forEach(function(e){try{r["string"==typeof e?"get":"invoke"](e)}catch(e){throw console.error("Failed to instantiate component"),console.error(e.stack),e}}),r}function sn(e,t){this.injector=t=t||function(e){return an([{config:["value",e=e||{}]},on].concat(e.modules||[]))}(e),this.get=t.get,this.invoke=t.invoke,this.get("eventBus").fire("diagram.init")}function cn(){}function pn(e,t){this.model=e,this.properties=t}sn.prototype.destroy=function(){this.get("eventBus").fire("diagram.destroy")},sn.prototype.clear=function(){this.get("eventBus").fire("diagram.clear")},cn.prototype.get=function(e){return this.$model.properties.get(this,e)},cn.prototype.set=function(e,t){this.$model.properties.set(this,e,t)},pn.prototype.createType=function(e){var t=this.model,n=this.properties,i=Object.create(cn.prototype);b(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}),b(e,I(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 un={String:!0,Boolean:!0,Integer:!0,Real:!0,Element:!0},ln={String:function(e){return e},Boolean:function(e){return"true"===e},Integer:function(e){return parseInt(e,10)},Real:function(e){return parseFloat(e,10)}};function hn(e,t){var n=ln[e];return n?n(t):t}function dn(e){return!!un[e]}function fn(e){return!!ln[e]}function mn(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 vn(e){this.ns=e,this.name=e.name,this.allTypes=[],this.allTypesByName={},this.properties=[],this.propertiesByName={}}function yn(e,t){this.packageMap={},this.typeMap={},this.packages=[],this.properties=t,b(e,I(this.registerPackage,this))}function gn(e,t,n){var i=t[n];if(i in e)throw new Error("package with "+n+" <"+i+"> already defined")}function bn(e){this.model=e}function xn(e,t,n){Object.defineProperty(e,t.name,{enumerable:!t.isReference,writable:!0,value:n,configurable:!0})}function _n(e){this.properties=new bn(this),this.factory=new pn(this,this.properties),this.registry=new yn(e,this.properties),this.typeCache={}}vn.prototype.build=function(){return $(this,["ns","name","allTypes","allTypesByName","properties","propertiesByName","bodyProperty","idProperty"])},vn.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)},vn.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},vn.prototype.redefineProperty=function(e,t,n){var i=e.ns.prefix,r=t.split("#"),o=mn(r[0],i),a=mn(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},vn.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},vn.prototype.removeNamedProperty=function(e){var t=e.ns,n=this.propertiesByName;delete n[t.name],delete n[t.localName]},vn.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},vn.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},vn.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")},vn.prototype.hasProperty=function(e){return this.propertiesByName[e]},vn.prototype.addTrait=function(e,t){var n=this.allTypesByName,i=this.allTypes,r=e.name;r in n||(b(e.properties,I(function(n){n=F({},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)},yn.prototype.getPackage=function(e){return this.packageMap[e]},yn.prototype.getPackages=function(){return this.packages},yn.prototype.registerPackage=function(e){e=F({},e);var t=this.packageMap;gn(t,e,"prefix"),gn(t,e,"uri"),b(e.types,I(function(t){this.registerType(t,e)},this)),t[e.uri]=t[e.prefix]=e,this.packages.push(e)},yn.prototype.registerType=function(e,t){var n=mn((e=F({},e,{superClass:(e.superClass||[]).slice(),extends:(e.extends||[]).slice(),properties:(e.properties||[]).slice(),meta:F(e.meta||{})})).name,t.prefix),i=n.name,r={};b(e.properties,I(function(e){var t=mn(e.name,n.prefix),i=t.name;dn(e.type)||(e.type=mn(e.type,t.prefix).name),F(e,{ns:t,name:i}),r[i]=e},this)),F(e,{ns:n,name:i,propertiesByName:r}),b(e.extends,I(function(e){var t=this.typeMap[e];t.traits=t.traits||[],t.traits.push(i)},this)),this.definePackage(e,t),this.typeMap[i]=e},yn.prototype.mapTypes=function(e,t,n){var i=dn(e.name)?{name:e.name}:this.typeMap[e.name],r=this;function o(e){return a(e,!0)}function a(n,i){var o=mn(n,dn(n)?"":e.prefix);r.mapTypes(o,t,i)}if(!i)throw new Error("unknown type <"+e.name+">");b(i.superClass,n?o:a),t(i,!n),b(i.traits,o)},yn.prototype.getEffectiveDescriptor=function(e){var t=mn(e),n=new vn(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},yn.prototype.definePackage=function(e,t){this.properties.define(e,"$pkg",{value:t})},bn.prototype.set=function(e,t,n){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:xn(e,i,n):e.$attrs[t]=n},bn.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&&xn(e,n,[]),e[i]},bn.prototype.define=function(e,t,n){Object.defineProperty(e,t,n)},bn.prototype.defineDescriptor=function(e,t){this.define(e,"$descriptor",{value:t})},bn.prototype.defineModel=function(e,t){this.define(e,"$model",{value:t})},_n.prototype.create=function(e,t){var n=this.getType(e);if(!n)throw new Error("unknown type <"+e+">");return new n(t)},_n.prototype.getType=function(e){var t=this.typeCache,n=m(e)?e:e.ns.name,i=t[n];return i||(e=this.registry.getEffectiveDescriptor(n),i=t[n]=this.factory.createType(e)),i},_n.prototype.createAny=function(e,t,n){var i=mn(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}),b(n,function(e,t){h(e)&&void 0!==e.value?r[e.name]=e.value:r[t]=e}),r},_n.prototype.getPackage=function(e){return this.registry.getPackage(e)},_n.prototype.getPackages=function(){return this.registry.getPackages()},_n.prototype.getElementDescriptor=function(e){return e.$descriptor},_n.prototype.hasType=function(e,t){return void 0===t&&(t=e,e=this),t in e.$model.getElementDescriptor(e).allTypesByName},_n.prototype.getPropertyDescriptor=function(e,t){return this.getElementDescriptor(e).propertiesByName[t]},_n.prototype.getTypeDescriptor=function(e){return this.registry.typeMap[e]};var En=String.fromCharCode,wn=Object.prototype.hasOwnProperty,Sn=/&#(\d+);|&#x([0-9a-f]+);|&(\w+);/gi,Cn={amp:"&",apos:"'",gt:">",lt:"<",quot:'"'};function Tn(e,t,n,i){return i?wn.call(Cn,i)?Cn[i]:"&"+i+";":En(t||parseInt(n,16))}function Rn(e){return e.length>3&&-1!==e.indexOf("&")?e.replace(Sn,Tn):e}Object.keys(Cn).forEach(function(e){Cn[e.toUpperCase()]=Cn[e]});var An="http://www.w3.org/2001/XMLSchema-instance",kn="xsi",Pn="xsi:type",Mn="non-whitespace outside of root node";function Dn(e){return new Error(e)}function Bn(e){return"missing namespace for prefix <"+e+">"}function Nn(e){return{get:e,enumerable:!0}}function On(e){var t,n={};for(t in e)n[t]=e[t];return n}function jn(e){return e+"$uri"}function Ln(){return{line:0,column:0}}function In(e){throw e}function zn(e){if(!this)return new zn(e);var t,n,i,r,o,a,s,c,p,u=e&&e.proxy,l=In,h=Ln,d=!1,f=!1,m=null,v=!1;function y(e){e instanceof Error||(e=Dn(e)),m=e,l(e,h)}function g(e){o&&(e instanceof Error||(e=Dn(e)),o(e,h))}this.on=function(e,p){if("function"!=typeof p)throw Dn("required args <name, cb>");switch(e){case"openTag":n=p;break;case"text":t=p;break;case"closeTag":i=p;break;case"error":l=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 Dn("unsupported event: "+e)}return this},this.ns=function(e){if(void 0===e&&(e={}),"object"!=typeof e)throw Dn("required args <nsMap={}>");var t,n={};for(t in e)n[t]=e[t];return n[An]=kn,f=!0,p=n,this},this.parse=function(e){if("string"!=typeof e)throw Dn("required args <xml=string>");return m=null,function(e){var o,l,m,b,x,_,E,w,S,C,T,R=f?[]:null,A=f?function(e){var t,n,i={};for(t in e)i[n=e[t]]=n,i[jn(n)]=t;return i}(p):null,k=[],P=0,M=!1,D=!1,B=0,N=0,O="",j=0;function L(){if(null!==T)return T;var e,t,n,i,r,o,a,s,c,u,l,h=f&&A.xmlns,m=f&&d?[]:null,v=j,y=O,b=y.length,x={},_={};e:for(;v<b;v++)if(c=!1,!(32===(u=y.charCodeAt(v))||u<14&&u>8)){for((u<65||u>122||u>90&&u<97)&&95!==u&&58!==u&&(g("illegal first char attribute name"),c=!0),l=v+1;l<b;l++)if(!((u=y.charCodeAt(l))>96&&u<123||u>64&&u<91||u>47&&u<59||46===u||45===u||95===u)){if(32===u||u<14&&u>8){g("missing attribute value"),v=l;continue e}if(61===u)break;g("illegal attribute name char"),c=!0}if("xmlns:xmlns"===(s=y.substring(v,l))&&(g("illegal declaration of xmlns"),c=!0),34===(u=y.charCodeAt(l+1)))-1===(l=y.indexOf('"',v=l+2))&&-1!==(l=y.indexOf("'",v))&&(g("attribute value quote missmatch"),c=!0);else if(39===u)-1===(l=y.indexOf("'",v=l+2))&&-1!==(l=y.indexOf('"',v))&&(g("attribute value quote missmatch"),c=!0);else for(g("missing attribute value quotes"),c=!0,l+=1;l<b&&!(32===(u=y.charCodeAt(l+1))||u<14&&u>8);l++);for(-1===l&&(g("missing closing quotes"),l=b,c=!0),c||(o=y.substring(v,l)),v=l;l+1<b&&!(32===(u=y.charCodeAt(l+1))||u<14&&u>8);l++)v===l&&(g("illegal character after attribute end"),c=!0);if(v=l+1,!c)if(s in _)g("attribute <"+s+"> already defined");else if(_[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=Rn(o),t=jn(r),!(a=p[e])){if("xmlns"===r||t in A&&A[t]!==e)do{a="ns"+P++}while(void 0!==A[a]);else a=r;p[e]=a}A[r]!==a&&(i||(A=On(A),i=!0),A[r]=a,"xmlns"===r&&(A[jn(a)]=e,h=a),A[t]=e),x[s]=o;continue}m.push(s,o)}else-1!==(u=s.indexOf(":"))?(n=A[s.substring(0,u)])?((s=h===n?s.substr(u+1):n+s.substr(u))===Pn&&(-1!==(u=o.indexOf(":"))?(n=o.substring(0,u),n=A[n]||n,o=n+o.substring(u)):o=h+":"+o),x[s]=o):g(Bn(s.substring(0,u))):x[s]=o;else x[s]=o}if(d)for(v=0,b=m.length;v<b;v++){if(s=m[v++],o=m[v],-1!==(u=s.indexOf(":"))){if(!(n=A[s.substring(0,u)])){g(Bn(s.substring(0,u)));continue}(s=h===n?s.substr(u+1):n+s.substr(u))===Pn&&(-1!==(u=o.indexOf(":"))?(n=o.substring(0,u),n=A[n]||n,o=n+o.substring(u)):o=h+":"+o)}x[s]=o}return T=x}h=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}},u&&(C=Object.create({},{name:Nn(function(){return w}),originalName:Nn(function(){return S}),attrs:Nn(L),ns:Nn(function(){return A})}));for(;-1!==N;){if(-1===(B=60===e.charCodeAt(N)?N:e.indexOf("<",N)))return k.length?y("unexpected end of file"):0===N?y("missing start tag"):void(N<e.length&&e.substring(N).trim()&&g(Mn));if(N!==B)if(k.length){if(t&&(t(e.substring(N,B),Rn,h),v))return}else if(e.substring(N,B).trim()&&(g(Mn),v))return;if(33===(x=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),Rn,h),v))return;N+=3;continue}}if(63!==x){for(l=B+1;;l++){if(_=e.charCodeAt(l),isNaN(_))return N=-1,y("unclosed tag");if(34===_)b=e.indexOf('"',l+1),l=-1!==b?b:l;else if(39===_)b=e.indexOf("'",l+1),l=-1!==b?b:l;else if(62===_){N=l;break}}if(33!==x){if(T={},47===x){if(M=!1,D=!0,!k.length)return y("missing open tag");if(l=w=k.pop(),b=B+2+l.length,e.substring(B+2,b)!==l)return y("closing tag mismatch");for(;b<N;b++)if(!(32===(x=e.charCodeAt(b))||x>8&&x<14))return y("close tag")}else{if(47===e.charCodeAt(N-1)?(l=w=e.substring(B+1,N-1),M=!0,D=!0):(l=w=e.substring(B+1,N),M=!0,D=!1),!(x>96&&x<123||x>64&&x<91||95===x||58===x))return y("illegal first char nodeName");for(b=1,m=l.length;b<m;b++)if(!((x=l.charCodeAt(b))>96&&x<123||x>64&&x<91||x>47&&x<59||45===x||95===x||46==x)){if(32===x||x<14&&x>8){w=l.substring(0,b),T=null;break}return y("invalid nodeName")}D||k.push(w)}if(f){if(o=A,M&&(D||R.push(o),null===T&&(d=-1!==l.indexOf("xmlns",b))&&(j=b,O=l,L(),d=!1)),S=w,-1!==(x=w.indexOf(":"))){if(!(E=A[w.substring(0,x)]))return y("missing namespace on <"+S+">");w=w.substr(x+1)}else E=A.xmlns;E&&(w=E+":"+w)}if(M&&(j=b,O=l,n&&(u?n(C,Rn,D,h):n(w,L,Rn,D,h),v)))return;if(D){if(i&&(i(u?C:w,Rn,M,h),v))return;f&&(A=M?o:R.pop())}N+=1}else{if(c&&(c(e.substring(B,N+1),Rn,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=Ln,v=!1,m},this.stop=function(){v=!0}}function Fn(e){return e.xml&&"lowerCase"===e.xml.tagAlias}var $n={xsi:"http://www.w3.org/2001/XMLSchema-instance"},Hn="xsi:type";function Gn(e){return e.xml&&e.xml.serialize}function Wn(e){return Gn(e)===Hn}function Vn(e,t){return Fn(t)?e.prefix+":"+((n=e.localName).charAt(0).toUpperCase()+n.slice(1)):e.name;var n}function Un(e){return new Error(e)}function qn(e){return e.$descriptor}function Kn(e){F(this,e),this.elementsById={},this.references=[],this.warnings=[],this.addReference=function(e){this.references.push(e)},this.addElement=function(e){if(!e)throw Un("expected element");var t,n=this.elementsById,i=qn(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 Un("duplicate ID <"+t+">");n[t]=e}},this.addWarning=function(e){this.warnings.push(e)}}function Yn(){}function Xn(){}function Zn(){}function Qn(e,t){this.property=e,this.context=t}function Jn(e,t){this.element=t,this.propertyDesc=e}function ei(){}function ti(e,t,n){this.model=e,this.type=e.getType(t),this.context=n}function ni(e,t,n){ti.call(this,e,t,n)}function ii(e,t,n){this.model=e,this.context=n}function ri(e){e instanceof _n&&(e={model:e}),F(this,{lax:!1},e)}Yn.prototype.handleEnd=function(){},Yn.prototype.handleText=function(){},Yn.prototype.handleNode=function(){},Xn.prototype=Object.create(Yn.prototype),Xn.prototype.handleNode=function(){return this},Zn.prototype=Object.create(Yn.prototype),Zn.prototype.handleText=function(e){this.body=(this.body||"")+e},Qn.prototype=Object.create(Zn.prototype),Qn.prototype.handleNode=function(e){if(this.element)throw Un("expected no sub nodes");return this.element=this.createReference(e),this},Qn.prototype.handleEnd=function(){this.element.id=this.body},Qn.prototype.createReference=function(e){return{property:this.property.ns.name,id:""}},Jn.prototype=Object.create(Zn.prototype),Jn.prototype.handleEnd=function(){var e=this.body||"",t=this.element,n=this.propertyDesc;e=hn(n.type,e),n.isMany?t.get(n.name).push(e):t.set(n.name,e)},ei.prototype=Object.create(Zn.prototype),ei.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},ti.prototype=Object.create(ei.prototype),ti.prototype.addReference=function(e){this.context.addReference(e)},ti.prototype.handleText=function(e){if(!qn(this.element).bodyProperty)throw Un("unexpected body text <"+e+">");Zn.prototype.handleText.call(this,e)},ti.prototype.handleEnd=function(){var e=this.body,t=this.element,n=qn(t).bodyProperty;n&&void 0!==e&&(e=hn(n.type,e),t.set(n.name,e))},ti.prototype.createElement=function(e){var t,n=e.attributes,i=this.type,r=qn(i),o=this.context,a=new i({}),s=this.model;return b(n,function(e,n){var i=r.propertiesByName[n];i&&i.isReference?i.isMany?b(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=hn(i.type,e):"xmlns"!==n&&(t=mn(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},ti.prototype.getPropertyForNode=function(e){var t,n,i=mn(e.name),r=this.type,o=this.model,a=qn(r),s=i.name,c=a.propertiesByName[s];if(c&&!c.isAttr)return Wn(c)&&(t=e.attributes[Hn])?(t=function(e,t){var n=mn(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),F({},c,{effectiveType:qn(n=o.getType(t)).name})):c;var p=o.getPackage(i.prefix);if(p){if(t=Vn(i,p),n=o.getType(t),c=y(a.properties,function(e){return!e.isVirtual&&!e.isReference&&!e.isAttribute&&n.hasType(e.type)}))return F({},c,{effectiveType:qn(n).name})}else if(c=y(a.properties,function(e){return!e.isReference&&!e.isAttribute&&"Element"===e.type}))return c;throw Un("unrecognized element <"+i.name+">")},ti.prototype.toString=function(){return"ElementDescriptor["+qn(this.type).name+"]"},ti.prototype.valueHandler=function(e,t){return new Jn(e,t)},ti.prototype.referenceHandler=function(e){return new Qn(e,this.context)},ti.prototype.handler=function(e){return"Element"===e?new ii(this.model,e,this.context):new ti(this.model,e,this.context)},ti.prototype.handleChild=function(e){var t,n,i,r;if(t=this.getPropertyForNode(e),i=this.element,fn(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?(F(o,{element:i}),this.context.addReference(o)):o.$parent=i),r},ni.prototype=Object.create(ti.prototype),ni.prototype.createElement=function(e){var t=e.name,n=mn(t),i=this.model,r=this.type,o=i.getPackage(n.prefix),a=o&&Vn(n,o)||t;if(!r.hasType(a))throw Un("unexpected element <"+e.originalName+">");return ti.prototype.createElement.call(this,e)},ii.prototype=Object.create(ei.prototype),ii.prototype.createElement=function(e){var t=e.name,n=mn(t).prefix,i=e.ns[n+"$uri"],r=e.attributes;return this.model.createAny(t,i,r)},ii.prototype.handleChild=function(e){var t=new ii(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},ii.prototype.handleEnd=function(){this.body&&(this.element.$body=this.body)},ri.prototype.fromXML=function(e,t,n){var i=t.rootHandler;t instanceof ti?(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 Kn(F({},t,{rootHandler:i})),s=new zn({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 Un(c)}function u(e,t){return p(e,t,!0)}i.context=a,c.push(i);var l=/^<\?xml /i,h=/ encoding="([^"]+)"/i,d=/^utf-8$/i;function f(e,t){try{c.peek().handleText(e)}catch(e){u(e,t)}}var m=r.getPackages().reduce(function(e,t){return e[t.uri]=t.prefix,e},{});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 Xn)}}({name:e.name,originalName:e.originalName,attributes:a,ns:e.ns},i)}).on("question",function(e){if(l.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=e.trim())&&f(e,t)}(t(e),n)}).on("error",p).on("warn",u),setTimeout(function(){var t;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=qn(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){t=e}var r=i.element;t||r||(t=Un("failed to parse document as <"+i.type.$descriptor.name+">")),n(t,t?void 0:r,a)},0)},ri.prototype.handler=function(e){return new ni(this.model,e)};var oi='<?xml version="1.0" encoding="UTF-8"?>\n',ai=/<|>|'|"|&|\n\r|\n/g,si=/<|>|&/g;function ci(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 pi(e,t){return Fn(t)?(n=e).charAt(0).toLowerCase()+n.slice(1):e;var n}function ui(e,t){e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}})}function li(e){return m(e)?e:(e.prefix?e.prefix+":":"")+e.localName}var hi={"\n":"#10","\n\r":"#10",'"':"#34","'":"#39","<":"#60",">":"#62","&":"#38"},di={"<":"lt",">":"gt","&":"amp"};function fi(e,t,n){return(e=m(e)?e:""+e).replace(t,function(e){return"&"+n[e]+";"})}function mi(e){this.tagName=e}function vi(){}function yi(e){this.tagName=e}function gi(e,t){this.body=[],this.attrs=[],this.parent=e,this.propertyDescriptor=t}function bi(e,t){gi.call(this,e,t)}function xi(){this.value="",this.write=function(e){this.value+=e}}function _i(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 Ei(e){return e=F({format:!1,preamble:!0},e||{}),{toXML:function(t,n){var i=n||new xi,r=new _i(i,e.format);if(e.preamble&&r.append(oi),(new gi).build(t).serializeTo(r),!n)return i.value}}}function wi(e,t){_n.call(this,e,t)}mi.prototype.build=function(e){return this.element=e,this},mi.prototype.serializeTo=function(e){e.appendIndent().append("<"+this.tagName+">"+this.element.id+"</"+this.tagName+">").appendNewLine()},vi.prototype.serializeValue=vi.prototype.serializeTo=function(e){e.append(this.escape?fi(this.value,si,di):this.value)},vi.prototype.build=function(e,t){return this.value=t,"String"===e.type&&-1!==t.search(si)&&(this.escape=!0),this},ui(yi,vi),yi.prototype.serializeTo=function(e){e.appendIndent().append("<"+this.tagName+">"),this.serializeValue(e),e.append("</"+this.tagName+">").appendNewLine()},gi.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 g(e.$descriptor.properties,function(t){var n=t.name;if(t.isVirtual)return!1;if(!e.hasOwnProperty(n))return!1;var i=e[n];return i!==t.default&&null!==i&&(!t.isMany||i.length)})}(e),this.parseAttributes(g(n,function(e){return e.isAttr})),this.parseContainments(function(e){return g(e,function(e){return!e.isAttr})}(n))),this.parseGenericAttributes(e,t),this},gi.prototype.nsTagName=function(e){return function(e,t){return t.isGeneric?F({localName:t.ns.localName},e):F({localName:pi(t.ns.localName,t.$pkg)},e)}(this.logNamespaceUsed(e.ns),e)},gi.prototype.nsPropertyTagName=function(e){return function(e,t){return F({localName:t.ns.localName},e)}(this.logNamespaceUsed(e.ns),e)},gi.prototype.isLocalNs=function(e){return e.uri===this.ns.uri},gi.prototype.nsAttributeName=function(e){var t;if(t=m(e)?mn(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}:F({localName:t.localName},n)},gi.prototype.parseGeneric=function(e){var t=this,n=this.body,i=[];return b(e,function(r,o){"$body"===o?n.push((new vi).build({type:"String"},r)):"$children"===o?b(r,function(e){n.push(new gi(t).build(e))}):0!==o.indexOf("$")&&t.parseNsAttribute(e,o,r)&&i.push({name:o,value:r})}),i},gi.prototype.parseNsAttribute=function(e,t,n){var i,r=e.$model,o=mn(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)}},gi.prototype.parseNsAttributes=function(e,t){var n=this,i=e.$attrs,r=[];return b(i,function(t,i){var o=n.parseNsAttribute(e,i,t);o&&r.push(o)}),r},gi.prototype.parseGenericAttributes=function(e,t){var n=this;b(t,function(t){if(t.name!==Hn)try{n.addAttribute(n.nsAttributeName(t.name),t.value)}catch(n){console.warn("missing namespace information for ",t.name,"=",t.value,"on",e,n)}})},gi.prototype.parseContainments=function(e){var t=this,n=this.body,i=this.element;b(e,function(e){var r=i.get(e.name),o=e.isReference;if(e.isMany||(r=[r]),e.isBody)n.push((new vi).build(e,r[0]));else if(fn(e.type))b(r,function(i){n.push(new yi(t.addTagName(t.nsPropertyTagName(e))).build(e,i))});else if(o)b(r,function(i){n.push(new mi(t.addTagName(t.nsPropertyTagName(e))).build(i))});else{var a=Wn(e),s=function(e){return"property"===Gn(e)}(e);b(r,function(i){var r;r=a?new bi(t,e):s?new gi(t,e):new gi(t),n.push(r.build(i))})}})},gi.prototype.getNamespaces=function(e){var t,n=this.namespaces,i=this.parent;return n||(t=i&&i.getNamespaces(),e||!t?this.namespaces=n=new ci(t):n=t),n},gi.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},gi.prototype.logNamespaceUsed=function(e,t){var n,i,r,o=this.element.$model,a=this.getNamespaces(t),s=e.prefix,c=e.uri;if(!s&&!c)return{localName:e.localName};if(r=$n[s]||o&&(o.getPackage(s)||{}).uri,!(c=c||r||a.uriByPrefix(s)))throw new Error("no namespace uri given for prefix <"+s+">");if(!(e=a.byUri(c))){for(n=s,i=1;a.uriByPrefix(n);)n=s+"_"+i++;e=this.logNamespace({prefix:n,uri:c},r===c)}return s&&a.mapPrefix(s,c),e},gi.prototype.parseAttributes=function(e){var t=this,n=this.element;b(e,function(e){var i=n.get(e.name);if(e.isReference)if(e.isMany){var r=[];b(i,function(e){r.push(e.id)}),i=r.join(" ")}else i=i.id;t.addAttribute(t.nsAttributeName(e),i)})},gi.prototype.addTagName=function(e){var t=this.logNamespaceUsed(e);return this.getNamespaces().logUsed(t),li(e)},gi.prototype.addAttribute=function(e,t){var n=this.attrs;m(t)&&(t=fi(t,ai,hi)),n.push({name:e,value:t})},gi.prototype.serializeAttributes=function(e){var t=this.attrs,n=this.namespaces;n&&(t=function(e){return S(e.getUsed(),function(e){return{name:"xmlns"+(e.prefix?":"+e.prefix:""),value:e.uri}})}(n).concat(t)),b(t,function(t){e.append(" ").append(li(t.name)).append('="').append(t.value).append('"')})},gi.prototype.serializeTo=function(e){var t=this.body[0],n=t&&t.constructor!==vi;e.appendIndent().append("<"+this.tagName),this.serializeAttributes(e),e.append(t?">":" />"),t&&(n&&e.appendNewLine().indent(),b(this.body,function(t){t.serializeTo(e)}),n&&e.unindent().appendIndent(),e.append("</"+this.tagName+">")),e.appendNewLine()},ui(bi,gi),bi.prototype.parseNsAttributes=function(e){var t=gi.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(Hn),(i.prefix?i.prefix+":":"")+o+n.ns.localName),t},bi.prototype.isLocalNs=function(e){return e.uri===(this.typeNs||this.ns).uri},wi.prototype=Object.create(_n.prototype),wi.prototype.fromXML=function(e,t,n,i){m(t)||(i=n,n=t,t="bpmn:Definitions"),f(n)&&(i=n,n={});var r=new ri(F({model:this,lax:!0},n)),o=r.handler(t);r.fromXML(e,o,i)},wi.prototype.toXML=function(e,t,n){f(t)&&(n=t,t={});var i,r,o=new Ei(t);try{i=o.toXML(e)}catch(e){r=e}return n(r,i)};var Si={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",isAttr:!0,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"],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:[]}};function Ci(e,t){return new wi(F({},Si,e),t)}function Ti(e){return e?"<"+e.$type+(e.id?' id="'+e.id:"")+'" />':"<null>"}var Ri=new Ot({name:"bpmnElement",enumerable:!0},{name:"di",configurable:!0});function Ai(e,t){return e.$instanceOf(t)}function ki(e,t){var n={},i=[];function r(e,t){return function(n){e(n,t)}}function o(e){n[e.id]=e}function a(n,i){try{var r=n.di&&function(n,i){if(n.gfx)throw new Error(t("already rendered {element}",{element:Ti(n)}));return e.element(n,i)}(n,i);return o(n),r}catch(e){s(e.message,{element:n,error:e}),console.error(t("failed to import {element}",{element:Ti(n)})),console.error(e)}}function s(t,n){e.error(t,n)}function c(e){var n=e.bpmnElement;n?n.di?s(t("multiple DI elements defined for {element}",{element:Ti(n)}),{element:n}):(Ri.bind(n,"di"),n.di=e):s(t("no bpmnElement referenced in {element}",{element:Ti(e)}),{element:e})}function p(e){var t;c(t=e.plane),b(t.planeElement,u)}function u(e){c(e)}function l(){for(;i.length;)i.shift()()}function h(e,t){A(e,t),E(e.ioSpecification,t),_(e.artifacts,t),o(e)}function d(e,t){a(e,t)}function f(e,t){a(e,t)}function m(e,t){a(e,t)}function v(e,t){a(e,t)}function x(e,t){a(e,t)}function _(e,t){b(e,function(e){Ai(e,"bpmn:Association")?i.push(function(){x(e,t)}):x(e,t)})}function E(e,t){e&&(b(e.dataInputs,r(m,t)),b(e.dataOutputs,r(v,t)))}function w(e,t){A(e,t),_(e.artifacts,t)}function S(e,t){var n=a(e,t);Ai(e,"bpmn:SubProcess")&&w(e,n||t),Ai(e,"bpmn:Activity")&&E(e.ioSpecification,t),i.push(function(){b(e.dataInputAssociations,r(f,t)),b(e.dataOutputAssociations,r(f,t))})}function C(e,t){a(e,t)}function T(e,t){i.push(function(){var n=a(e,t);e.childLaneSet&&R(e.childLaneSet,n||t),function(e){b(e.flowNodeRef,function(t){var n=t.get("lanes");n&&n.push(e)})}(e)})}function R(e,t){b(e.lanes,r(T,t))}function A(e,n){!function(e,n){b(e,function(e){Ai(e,"bpmn:SequenceFlow")?i.push(function(){!function(e,t){a(e,t)}(e,n)}):Ai(e,"bpmn:BoundaryEvent")?i.unshift(function(){S(e,n)}):Ai(e,"bpmn:FlowNode")?S(e,n):Ai(e,"bpmn:DataObject")||(Ai(e,"bpmn:DataStoreReference")?C(e,n):Ai(e,"bpmn:DataObjectReference")?C(e,n):s(t("unrecognized flowElement {element} in context {context}",{element:Ti(e),context:n?Ti(n.businessObject):"null"}),{element:e,context:n}))})}(e.flowElements,n),e.laneSets&&function(e,t){b(e,r(R,t))}(e.laneSets,n)}function k(e,t){var n=a(e,t),i=e.processRef;i&&h(i,n||t)}return{handleDeferred:l,handleDefinitions:function(o,a){var u=o.diagrams;if(a&&-1===u.indexOf(a))throw new Error(t("diagram not part of bpmn:Definitions"));if(!a&&u&&u.length&&(a=u[0]),!a)throw new Error(t("no diagram to display"));p(a);var f=a.plane;if(!f)throw new Error(t("no plane for {element}",{element:Ti(a)}));var m=f.bpmnElement;if(!m){if(!(m=function(e){return y(e.rootElements,function(e){return Ai(e,"bpmn:Process")||Ai(e,"bpmn:Collaboration")})}(o)))throw new Error(t("no process or collaboration to display"));s(t("correcting missing bpmnElement on {plane} to {rootElement}",{plane:Ti(f),rootElement:Ti(m)})),f.bpmnElement=m,c(f)}var v,x=function(t,n){return e.root(t,n)}(m,f);if(Ai(m,"bpmn:Process"))h(m,x);else{if(!Ai(m,"bpmn:Collaboration"))throw new Error(t("unsupported bpmnElement for {plane}: {rootElement}",{plane:Ti(f),rootElement:Ti(m)}));b((v=m).participants,r(k)),_(v.artifacts),i.push(function(){var e;b(v.messageFlows,r(d,e))}),function(e,t){g(e,function(e){return!n[e.id]&&Ai(e,"bpmn:Process")&&e.laneSets}).forEach(r(h,t))}(o.rootElements,x)}l()},handleSubProcess:w,registerDi:c}}
- /**
- * This file must not be changed or exchanged.
- *
- * @see http://bpmn.io/license for more information.
- */
- var Pi='<img width="52" height="52" src="'+("data:image/svg+xml,"+encodeURIComponent('<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 960 960"><path fill="#fff" d="M960 60v839c0 33-27 61-60 61H60c-33 0-60-27-60-60V60C0 27 27 0 60 0h839c34 0 61 27 61 60z"/><path fill="#52b415" d="M217 548a205 205 0 0 0-144 58 202 202 0 0 0-4 286 202 202 0 0 0 285 3 200 200 0 0 0 48-219 203 203 0 0 0-185-128zM752 6a206 206 0 0 0-192 285 206 206 0 0 0 269 111 207 207 0 0 0 111-260A204 204 0 0 0 752 6zM62 0A62 62 0 0 0 0 62v398l60 46a259 259 0 0 1 89-36c5-28 10-57 14-85l99 2 12 85a246 246 0 0 1 88 38l70-52 69 71-52 68c17 30 29 58 35 90l86 14-2 100-86 12a240 240 0 0 1-38 89l43 58h413c37 0 60-27 60-61V407a220 220 0 0 1-44 40l21 85-93 39-45-76a258 258 0 0 1-98 1l-45 76-94-39 22-85a298 298 0 0 1-70-69l-86 22-38-94 76-45a258 258 0 0 1-1-98l-76-45 40-94 85 22a271 271 0 0 1 41-47z"/></svg>'))+'" />';function Mi(e){return e.join(";")}var Di,Bi='<div class="bjs-powered-by-lightbox" style="'+Mi(["z-index: 1001","position: fixed","top: 0","left: 0","right: 0","bottom: 0"])+'"><div class="backdrop" style="'+Mi(["width: 100%","height: 100%","background: rgba(0,0,0,0.2)"])+'"></div><div class="notice" style="'+Mi(["position: absolute","left: 50%","top: 40%","margin: 0 -130px","width: 260px","padding: 10px","background: white","border: solid 1px #AAA","border-radius: 3px","font-family: Helvetica, Arial, sans-serif","font-size: 14px","line-height: 1.2em"])+'"><a href="http://bpmn.io" target="_blank" style="float: left; margin-right: 10px">'+Pi+'</a>Web-based tooling for BPMN, DMN and CMMN diagrams powered by <a href="http://bpmn.io" target="_blank">bpmn.io</a>.</div></div>';
- /**
- * The code in the <project-logo></project-logo> area
- * must not be changed.
- *
- * @see http://bpmn.io/license for more information.
- */
- function Ni(e){
- /**
- * Adds the project logo to the diagram container as
- * required by the bpmn.io license.
- *
- * @see http://bpmn.io/license
- *
- * @param {Element} container
- */
- var t,n;e=F({},Oi,e),this._moddle=this._createModdle(e),this._container=this._createContainer(e),t=this._container,n=le('<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">'+Pi+"</a>"),t.appendChild(n),ce.bind(n,"click",function(e){Di||(Di=le(Bi),ue.bind(Di,".backdrop","click",function(e){document.body.removeChild(Di)})),document.body.appendChild(Di),e.preventDefault()}),this._init(this._container,this._moddle,e)}n(Ni,sn),Ni.prototype.importXML=function(e,t,n){f(t)&&(n=t,t=null),n=n||function(){};var i=this;e=this._emit("import.parse.start",{xml:e})||e,this._moddle.fromXML(e,"bpmn:Definitions",function(e,r,o){r=i._emit("import.parse.complete",{error:e,definitions:r,context:o})||r;var a=o.warnings;if(e)return e=function(e){var t=/unparsable content <([^>]+)> detected([\s\S]*)$/.exec(e.message);t&&(e.message="unparsable content <"+t[1]+"> detected; this may indicate an invalid BPMN 2.0 diagram file"+t[2]);return e}(e),i._emit("import.done",{error:e,warnings:a}),n(e,a);i.importDefinitions(r,t,function(e,t){var r=[].concat(a,t||[]);i._emit("import.done",{error:e,warnings:r}),n(e,r)})})},Ni.prototype.importDefinitions=function(e,t,n){return f(t)&&(n=t,t=null),n=n||function(){},this._setDefinitions(e),this.open(t,n)},Ni.prototype.open=function(e,t){f(e)&&(t=e,e=null);var n=this._definitions,i=e;if(t=t||function(){},!n)return t(new Error("no XML imported"));if("string"==typeof e&&!(i=function(e,t){if(!t)return null;return y(e.diagrams,function(e){return e.id===t})||null}(n,e)))return t(new Error("BPMNDiagram <"+e+"> not found"));try{this.clear()}catch(e){return t(e)}return function(e,t,n,i){var r,o,a;f(n)&&(i=n,n=null);var s,c=[];try{r=e.get("bpmnImporter"),o=e.get("eventBus"),a=e.get("translate"),o.fire("import.render.start",{definitions:t}),function(e,t){new ki({root:function(e){return r.add(e)},element:function(e,t){return r.add(e,t)},error:function(e,t){c.push({message:e,context:t})}},a).handleDefinitions(e,t)}(t,n),o.fire("import.render.complete",{error:s,warnings:c})}catch(e){s=e}i(s,c)}(this,n,i,t)},Ni.prototype.saveXML=function(e,t){t||(t=e,e={});var n=this,i=this._definitions;if(!i)return t(new Error("no definitions loaded"));i=this._emit("saveXML.start",{definitions:i})||i,this._moddle.toXML(i,e,function(e,i){try{i=n._emit("saveXML.serialized",{error:e,xml:i})||i,n._emit("saveXML.done",{error:e,xml:i})}catch(e){console.error("error in saveXML life-cycle listener",e)}t(e,i)})},Ni.prototype.saveSVG=function(e,t){var n,i;t||(t=e,e={}),this._emit("saveSVG.start");try{var r=this.get("canvas"),o=r.getDefaultLayer(),a=fe("defs",r._svg),s=Ve(o),c=a?"<defs>"+Ve(a)+"</defs>":"",p=o.getBBox();n='<?xml version="1.0" encoding="utf-8"?>\n\x3c!-- created with bpmn-js / http://bpmn.io --\x3e\n<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">\n<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="'+p.width+'" height="'+p.height+'" viewBox="'+p.x+" "+p.y+" "+p.width+" "+p.height+'" version="1.1">'+c+s+"</svg>"}catch(e){i=e}this._emit("saveSVG.done",{error:i,svg:n}),t(i,n)},Ni.prototype._setDefinitions=function(e){this._definitions=e},Ni.prototype.getModules=function(){return this._modules},Ni.prototype.clear=function(){this.getDefinitions()&&(this.get("elementRegistry").forEach(function(e){var t=e.businessObject;t&&t.di&&delete t.di}),sn.prototype.clear.call(this))},Ni.prototype.destroy=function(){sn.prototype.destroy.call(this),ve(this._container)},Ni.prototype.on=function(e,t,n,i){return this.get("eventBus").on(e,t,n,i)},Ni.prototype.off=function(e,t){this.get("eventBus").off(e,t)},Ni.prototype.attachTo=function(e){if(!e)throw new Error("parentNode required");this.detach(),e.get&&e.constructor.prototype.jquery&&(e=e.get(0)),"string"==typeof e&&(e=fe(e)),e.appendChild(this._container),this._emit("attach",{}),this.get("canvas").resized()},Ni.prototype.getDefinitions=function(){return this._definitions},Ni.prototype.detach=function(){var e=this._container,t=e.parentNode;t&&(this._emit("detach",{}),t.removeChild(e))},Ni.prototype._init=function(e,t,n){var i=n.modules||this.getModules(),r=n.additionalModules||[],o=[].concat([{bpmnjs:["value",this],moddle:["value",t]}],i,r),a=F(H(n,["additionalModules"]),{canvas:F({},n.canvas,{container:e}),modules:o});sn.call(this,a),n&&n.container&&this.attachTo(n.container)},Ni.prototype._emit=function(e,t){return this.get("eventBus").fire(e,t)},Ni.prototype._createContainer=function(e){var t=le('<div class="bjs-container"></div>');return F(t.style,{width:ji(e.width),height:ji(e.height),position:e.position}),t},Ni.prototype._createModdle=function(e){return new Ci(F({},this._moddleExtensions,e.moddleExtensions))},Ni.prototype._modules=[];var Oi={width:"100%",height:"100%",position:"relative"};function ji(e){return e+(d(e)?"px":"")}function Li(e){Ni.call(this,e),this.on("import.parse.complete",function(e){e.error||this._collectIds(e.definitions,e.context)},this),this.on("diagram.destroy",function(){this.get("moddle").ids.clear()},this)}function Ii(e,t){var n=zi(e);return n&&"function"==typeof n.$instanceOf&&n.$instanceOf(t)}function zi(e){return e&&e.businessObject||e}function Fi(e){return!Ii(e,"bpmn:CallActivity")&&(Ii(e,"bpmn:SubProcess")?!!zi(e).di.isExpanded:!Ii(e,"bpmn:Participant")||!!zi(e).processRef)}function $i(e){return e&&!!zi(e).triggeredByEvent}function Hi(e,t){var n=zi(e),i=!1;return n.eventDefinitions&&b(n.eventDefinitions,function(e){Ii(e,t)&&(i=!0)}),i}function Gi(e){return Ii(e,"bpmn:FlowElement")||Ii(e,"bpmn:Participant")||Ii(e,"bpmn:Lane")||Ii(e,"bpmn:SequenceFlow")||Ii(e,"bpmn:MessageFlow")||Ii(e,"bpmn:DataInput")||Ii(e,"bpmn:DataOutput")?"name":Ii(e,"bpmn:TextAnnotation")?"text":Ii(e,"bpmn:Group")?"categoryValueRef":void 0}function Wi(e){var t=e.businessObject,n=Gi(t);if(n)return"categoryValueRef"===n?function(e){var t=e.categoryValueRef;return t&&t.value||""}(t):t[n]||""}function Vi(e,t,n){return w(e.eventDefinitions,function(i){return i.$type===t&&function(e,t){return E(t,function(t,n){return e[n]==t})}(e,n)})}function Ui(e){return e.businessObject.di}function qi(e){return e.businessObject}function Ki(e,t){return Ui(e).get("bioc:fill")||t||"white"}function Yi(e,t){return Ui(e).get("bioc:stroke")||t||"black"}n(Li,Ni),Li.prototype._createModdle=function(e){var t=Ni.prototype._createModdle.call(this,e);return t.ids=new r([32,36,1]),t},Li.prototype._collectIds=function(e,t){var n,i=e.$model.ids;for(n in i.clear(),t.elementsById)i.claim(n,t.elementsById[n])};var Xi=new r,Zi=10,Qi=3,Ji=.95,er=.35;function tr(e,t,n,i,r,o,a){at.call(this,t,a);var s=e&&e.defaultFillColor,c=e&&e.defaultStrokeColor,p=Xi.next(),u={},l=n.computeStyle;function d(e,t){var n=F({fill:"black",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 a=Oe("marker");Ee(t.element,n),ge(a,t.element),Ee(a,{id:e,viewBox:"0 0 20 20",refX:i.x,refY:i.y,markerWidth:20*o,markerHeight:20*o,orient:"auto"});var s=fe("defs",r._svg);s||(s=Oe("defs"),ge(r._svg,s)),ge(s,a),u[e]=a}function f(e){return e.replace(/[^0-9a-zA-z]+/g,"_")}function m(e,t,n){var i=e+"-"+f(t)+"-"+f(n)+"-"+p;return u[i]||function(e,t,n,i){if("sequenceflow-end"===t){var r=Oe("path");Ee(r,{d:"M 1 5 L 11 10 L 1 15 Z"}),d(e,{element:r,ref:{x:11,y:10},scale:.5,attrs:{fill:i,stroke:i}})}if("messageflow-start"===t){var o=Oe("circle");Ee(o,{cx:6,cy:6,r:3.5}),d(e,{element:o,attrs:{fill:n,stroke:i},ref:{x:6,y:6}})}if("messageflow-end"===t){var a=Oe("path");Ee(a,{d:"m 1 5 l 0 -3 l 7 3 l -7 3 z"}),d(e,{element:a,attrs:{fill:n,stroke:i,strokeLinecap:"butt"},ref:{x:8.5,y:5}})}if("association-start"===t){var s=Oe("path");Ee(s,{d:"M 11 5 L 1 10 L 11 15"}),d(e,{element:s,attrs:{fill:"none",stroke:i,strokeWidth:1.5},ref:{x:1,y:10},scale:.5})}if("association-end"===t){var c=Oe("path");Ee(c,{d:"M 1 5 L 11 10 L 1 15"}),d(e,{element:c,attrs:{fill:"none",stroke:i,strokeWidth:1.5},ref:{x:12,y:10},scale:.5})}if("conditional-flow-marker"===t){var p=Oe("path");Ee(p,{d:"M 0 10 L 8 6 L 16 10 L 8 14 Z"}),d(e,{element:p,attrs:{fill:n,stroke:i},ref:{x:-1,y:10},scale:.5})}if("conditional-default-flow-marker"===t){var u=Oe("path");Ee(u,{d:"M 6 4 L 10 16"}),d(e,{element:u,attrs:{stroke:i},ref:{x:0,y:10},scale:.5})}}(i,e,t,n),"url(#"+i+")"}function v(e,t,n,i,r){h(i)&&(r=i,i=0),i=i||0,"none"===(r=l(r,{stroke:"black",strokeWidth:2,fill:"white"})).fill&&delete r.fillOpacity;var o=t/2,a=n/2,s=Oe("circle");return Ee(s,{cx:o,cy:a,r:Math.round((t+n)/4-i)}),Ee(s,r),ge(e,s),s}function y(e,t,n,i,r,o){h(r)&&(o=r,r=0),r=r||0,o=l(o,{stroke:"black",strokeWidth:2,fill:"white"});var a=Oe("rect");return Ee(a,{x:r,y:r,width:t-2*r,height:n-2*r,rx:i,ry:i}),Ee(a,o),ge(e,a),a}function g(e,t,n){var i=pt(t,n=l(n,["no-fill"],{stroke:"black",strokeWidth:2,fill:"none"}));return ge(e,i),i}function x(e,t,n){n=l(n,["no-fill"],{strokeWidth:2,stroke:"black"});var i=Oe("path");return Ee(i,{d:t}),Ee(i,n),ge(e,i),i}function _(e,t,n,i){return x(t,n,F({"data-marker":e},i))}function E(e){return function(t,n){return k[e](t,n)}}function w(e){return k[e]}function S(e,t){var n=qi(e),i=function(e){return"bpmn:IntermediateThrowEvent"===e.$type||"bpmn:EndEvent"===e.$type}(n);return n.eventDefinitions&&n.eventDefinitions.length>1?n.parallelMultiple?w("bpmn:ParallelMultipleEventDefinition")(t,e,i):w("bpmn:MultipleEventDefinition")(t,e,i):Vi(n,"bpmn:MessageEventDefinition")?w("bpmn:MessageEventDefinition")(t,e,i):Vi(n,"bpmn:TimerEventDefinition")?w("bpmn:TimerEventDefinition")(t,e,i):Vi(n,"bpmn:ConditionalEventDefinition")?w("bpmn:ConditionalEventDefinition")(t,e):Vi(n,"bpmn:SignalEventDefinition")?w("bpmn:SignalEventDefinition")(t,e,i):Vi(n,"bpmn:EscalationEventDefinition")?w("bpmn:EscalationEventDefinition")(t,e,i):Vi(n,"bpmn:LinkEventDefinition")?w("bpmn:LinkEventDefinition")(t,e,i):Vi(n,"bpmn:ErrorEventDefinition")?w("bpmn:ErrorEventDefinition")(t,e,i):Vi(n,"bpmn:CancelEventDefinition")?w("bpmn:CancelEventDefinition")(t,e,i):Vi(n,"bpmn:CompensateEventDefinition")?w("bpmn:CompensateEventDefinition")(t,e,i):Vi(n,"bpmn:TerminateEventDefinition")?w("bpmn:TerminateEventDefinition")(t,e,i):null}function C(e,t,n){n=F({size:{width:100}},n);var i=o.createText(t||"",n);return Re(i).add("djs-label"),ge(e,i),i}function T(e,t,n){return C(e,qi(t).name,{box:t,align:n,padding:5,style:{fill:Yi(t,c)}})}function R(e,t,n){Jt(C(e,t,{box:{height:30,width:n.height},align:"center-middle",style:{fill:Yi(n,c)}}),0,-(-1*n.height),270)}function A(e){for(var t=e.waypoints,n="m "+t[0].x+","+t[0].y,i=1;i<t.length;i++)n+="L"+t[i].x+","+t[i].y+" ";return n}var k=this.handlers={"bpmn:Event":function(e,t,n){return"fillOpacity"in n||(n.fillOpacity=Ji),v(e,t.width,t.height,n)},"bpmn:StartEvent":function(e,t){var n={fill:Ki(t,s),stroke:Yi(t,c)};qi(t).isInterrupting||(n={strokeDasharray:"6",strokeLinecap:"round",fill:Ki(t,s),stroke:Yi(t,c)});var i=w("bpmn:Event")(e,t,n);return S(t,e),i},"bpmn:MessageEventDefinition":function(e,t,n){return x(e,i.getScaledPath("EVENT_MESSAGE",{xScaleFactor:.9,yScaleFactor:.9,containerWidth:t.width,containerHeight:t.height,position:{mx:.235,my:.315}}),{strokeWidth:1,fill:n?Yi(t,c):Ki(t,s),stroke:n?Ki(t,s):Yi(t,c)})},"bpmn:TimerEventDefinition":function(e,t){var n=v(e,t.width,t.height,.2*t.height,{strokeWidth:2,fill:Ki(t,s),stroke:Yi(t,c)});x(e,i.getScaledPath("EVENT_TIMER_WH",{xScaleFactor:.75,yScaleFactor:.75,containerWidth:t.width,containerHeight:t.height,position:{mx:.5,my:.5}}),{strokeWidth:2,strokeLinecap:"square",stroke:Yi(t,c)});for(var r=0;r<12;r++){var o=i.getScaledPath("EVENT_TIMER_LINE",{xScaleFactor:.75,yScaleFactor:.75,containerWidth:t.width,containerHeight:t.height,position:{mx:.5,my:.5}}),a=t.width/2;x(e,o,{strokeWidth:1,strokeLinecap:"square",transform:"rotate("+30*r+","+t.height/2+","+a+")",stroke:Yi(t,c)})}return n},"bpmn:EscalationEventDefinition":function(e,t,n){return x(e,i.getScaledPath("EVENT_ESCALATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:.5,my:.2}}),{strokeWidth:1,fill:n?Yi(t,c):"none",stroke:Yi(t,c)})},"bpmn:ConditionalEventDefinition":function(e,t){return x(e,i.getScaledPath("EVENT_CONDITIONAL",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:.5,my:.222}}),{strokeWidth:1,stroke:Yi(t,c)})},"bpmn:LinkEventDefinition":function(e,t,n){return x(e,i.getScaledPath("EVENT_LINK",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:.57,my:.263}}),{strokeWidth:1,fill:n?Yi(t,c):"none",stroke:Yi(t,c)})},"bpmn:ErrorEventDefinition":function(e,t,n){return x(e,i.getScaledPath("EVENT_ERROR",{xScaleFactor:1.1,yScaleFactor:1.1,containerWidth:t.width,containerHeight:t.height,position:{mx:.2,my:.722}}),{strokeWidth:1,fill:n?Yi(t,c):"none",stroke:Yi(t,c)})},"bpmn:CancelEventDefinition":function(e,t,n){var r=x(e,i.getScaledPath("EVENT_CANCEL_45",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:.638,my:-.055}}),{strokeWidth:1,fill:n?Yi(t,c):"none",stroke:Yi(t,c)});return tn(r,45),r},"bpmn:CompensateEventDefinition":function(e,t,n){return x(e,i.getScaledPath("EVENT_COMPENSATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:.22,my:.5}}),{strokeWidth:1,fill:n?Yi(t,c):"none",stroke:Yi(t,c)})},"bpmn:SignalEventDefinition":function(e,t,n){return x(e,i.getScaledPath("EVENT_SIGNAL",{xScaleFactor:.9,yScaleFactor:.9,containerWidth:t.width,containerHeight:t.height,position:{mx:.5,my:.2}}),{strokeWidth:1,fill:n?Yi(t,c):"none",stroke:Yi(t,c)})},"bpmn:MultipleEventDefinition":function(e,t,n){return x(e,i.getScaledPath("EVENT_MULTIPLE",{xScaleFactor:1.1,yScaleFactor:1.1,containerWidth:t.width,containerHeight:t.height,position:{mx:.222,my:.36}}),{strokeWidth:1,fill:n?Yi(t,c):"none"})},"bpmn:ParallelMultipleEventDefinition":function(e,t){return x(e,i.getScaledPath("EVENT_PARALLEL_MULTIPLE",{xScaleFactor:1.2,yScaleFactor:1.2,containerWidth:t.width,containerHeight:t.height,position:{mx:.458,my:.194}}),{strokeWidth:1,fill:Yi(t,c),stroke:Yi(t,c)})},"bpmn:EndEvent":function(e,t){var n=w("bpmn:Event")(e,t,{strokeWidth:4,fill:Ki(t,s),stroke:Yi(t,c)});return S(t,e),n},"bpmn:TerminateEventDefinition":function(e,t){return v(e,t.width,t.height,8,{strokeWidth:4,fill:Yi(t,c),stroke:Yi(t,c)})},"bpmn:IntermediateEvent":function(e,t){var n=w("bpmn:Event")(e,t,{strokeWidth:1,fill:Ki(t,s),stroke:Yi(t,c)});return v(e,t.width,t.height,Qi,{strokeWidth:1,fill:Ki(t,"none"),stroke:Yi(t,c)}),S(t,e),n},"bpmn:IntermediateCatchEvent":E("bpmn:IntermediateEvent"),"bpmn:IntermediateThrowEvent":E("bpmn:IntermediateEvent"),"bpmn:Activity":function(e,t,n){return"fillOpacity"in(n=n||{})||(n.fillOpacity=Ji),y(e,t.width,t.height,Zi,n)},"bpmn:Task":function(e,t){var n={fill:Ki(t,s),stroke:Yi(t,c)},i=w("bpmn:Activity")(e,t,n);return T(e,t,"center-middle"),P(e,t),i},"bpmn:ServiceTask":function(e,t){var n=w("bpmn:Task")(e,t);return x(e,i.getScaledPath("TASK_TYPE_SERVICE",{abspos:{x:12,y:18}}),{strokeWidth:1,fill:Ki(t,s),stroke:Yi(t,c)}),x(e,i.getScaledPath("TASK_TYPE_SERVICE_FILL",{abspos:{x:17.2,y:18}}),{strokeWidth:0,fill:Ki(t,s)}),x(e,i.getScaledPath("TASK_TYPE_SERVICE",{abspos:{x:17,y:22}}),{strokeWidth:1,fill:Ki(t,s),stroke:Yi(t,c)}),n},"bpmn:UserTask":function(e,t){var n=w("bpmn:Task")(e,t);return x(e,i.getScaledPath("TASK_TYPE_USER_1",{abspos:{x:15,y:12}}),{strokeWidth:.5,fill:Ki(t,s),stroke:Yi(t,c)}),x(e,i.getScaledPath("TASK_TYPE_USER_2",{abspos:{x:15,y:12}}),{strokeWidth:.5,fill:Ki(t,s),stroke:Yi(t,c)}),x(e,i.getScaledPath("TASK_TYPE_USER_3",{abspos:{x:15,y:12}}),{strokeWidth:.5,fill:Yi(t,c),stroke:Yi(t,c)}),n},"bpmn:ManualTask":function(e,t){var n=w("bpmn:Task")(e,t);return x(e,i.getScaledPath("TASK_TYPE_MANUAL",{abspos:{x:17,y:15}}),{strokeWidth:.5,fill:Ki(t,s),stroke:Yi(t,c)}),n},"bpmn:SendTask":function(e,t){var n=w("bpmn:Task")(e,t);return x(e,i.getScaledPath("TASK_TYPE_SEND",{xScaleFactor:1,yScaleFactor:1,containerWidth:21,containerHeight:14,position:{mx:.285,my:.357}}),{strokeWidth:1,fill:Yi(t,c),stroke:Ki(t,s)}),n},"bpmn:ReceiveTask":function(e,t){var n,r=qi(t),o=w("bpmn:Task")(e,t);return r.instantiate?(v(e,28,28,4.4,{strokeWidth:1}),n=i.getScaledPath("TASK_TYPE_INSTANTIATING_SEND",{abspos:{x:7.77,y:9.52}})):n=i.getScaledPath("TASK_TYPE_SEND",{xScaleFactor:.9,yScaleFactor:.9,containerWidth:21,containerHeight:14,position:{mx:.3,my:.4}}),x(e,n,{strokeWidth:1,fill:Ki(t,s),stroke:Yi(t,c)}),o},"bpmn:ScriptTask":function(e,t){var n=w("bpmn:Task")(e,t);return x(e,i.getScaledPath("TASK_TYPE_SCRIPT",{abspos:{x:15,y:20}}),{strokeWidth:1,stroke:Yi(t,c)}),n},"bpmn:BusinessRuleTask":function(e,t){var n=w("bpmn:Task")(e,t);return Ee(x(e,i.getScaledPath("TASK_TYPE_BUSINESS_RULE_HEADER",{abspos:{x:8,y:8}})),{strokeWidth:1,fill:Ki(t,"#aaaaaa"),stroke:Yi(t,c)}),Ee(x(e,i.getScaledPath("TASK_TYPE_BUSINESS_RULE_MAIN",{abspos:{x:8,y:8}})),{strokeWidth:1,stroke:Yi(t,c)}),n},"bpmn:SubProcess":function(e,t,n){n=F({fill:Ki(t,s),stroke:Yi(t,c)},n);var i=w("bpmn:Activity")(e,t,n),r=Fi(t);return $i(t)&&Ee(i,{strokeDasharray:"1,2"}),T(e,t,r?"center-top":"center-middle"),r?P(e,t):P(e,t,["SubProcessMarker"]),i},"bpmn:AdHocSubProcess":function(e,t){return w("bpmn:SubProcess")(e,t)},"bpmn:Transaction":function(e,t){var i=w("bpmn:SubProcess")(e,t),r=n.style(["no-fill","no-events"],{stroke:Yi(t,c)});return y(e,t.width,t.height,Zi-2,Qi,r),i},"bpmn:CallActivity":function(e,t){return w("bpmn:SubProcess")(e,t,{strokeWidth:5})},"bpmn:Participant":function(e,t){var n={fillOpacity:Ji,fill:Ki(t,s),stroke:Yi(t,c)},i=w("bpmn:Lane")(e,t,n);Fi(t)?(g(e,[{x:30,y:0},{x:30,y:t.height}],{stroke:Yi(t,c)}),R(e,qi(t).name,t)):C(e,qi(t).name,{box:t,align:"center-middle",style:{fill:Yi(t,c)}});return!!qi(t).participantMultiplicity&&w("ParticipantMultiplicityMarker")(e,t),i},"bpmn:Lane":function(e,t,n){var i=y(e,t.width,t.height,0,F({fill:Ki(t,s),fillOpacity:er,stroke:Yi(t,c)},n)),r=qi(t);"bpmn:Lane"===r.$type&&R(e,r.name,t);return i},"bpmn:InclusiveGateway":function(e,t){var n=w("bpmn:Gateway")(e,t);return v(e,t.width,t.height,.24*t.height,{strokeWidth:2.5,fill:Ki(t,s),stroke:Yi(t,c)}),n},"bpmn:ExclusiveGateway":function(e,t){var n=w("bpmn:Gateway")(e,t),r=i.getScaledPath("GATEWAY_EXCLUSIVE",{xScaleFactor:.4,yScaleFactor:.4,containerWidth:t.width,containerHeight:t.height,position:{mx:.32,my:.3}});return Ui(t).isMarkerVisible&&x(e,r,{strokeWidth:1,fill:Yi(t,c),stroke:Yi(t,c)}),n},"bpmn:ComplexGateway":function(e,t){var n=w("bpmn:Gateway")(e,t);return x(e,i.getScaledPath("GATEWAY_COMPLEX",{xScaleFactor:.5,yScaleFactor:.5,containerWidth:t.width,containerHeight:t.height,position:{mx:.46,my:.26}}),{strokeWidth:1,fill:Yi(t,c),stroke:Yi(t,c)}),n},"bpmn:ParallelGateway":function(e,t){var n=w("bpmn:Gateway")(e,t);return x(e,i.getScaledPath("GATEWAY_PARALLEL",{xScaleFactor:.6,yScaleFactor:.6,containerWidth:t.width,containerHeight:t.height,position:{mx:.46,my:.2}}),{strokeWidth:1,fill:Yi(t,c),stroke:Yi(t,c)}),n},"bpmn:EventBasedGateway":function(e,t){var n=qi(t),r=w("bpmn:Gateway")(e,t);v(e,t.width,t.height,.2*t.height,{strokeWidth:1,fill:"none",stroke:Yi(t,c)});var o=n.eventGatewayType,a=!!n.instantiate;if("Parallel"===o){var s=i.getScaledPath("GATEWAY_PARALLEL",{xScaleFactor:.4,yScaleFactor:.4,containerWidth:t.width,containerHeight:t.height,position:{mx:.474,my:.296}});Ee(x(e,s),{strokeWidth:1,fill:"none"})}else if("Exclusive"===o){if(!a)Ee(v(e,t.width,t.height,.26*t.height),{strokeWidth:1,fill:"none",stroke:Yi(t,c)});!function(){var n=i.getScaledPath("GATEWAY_EVENT_BASED",{xScaleFactor:.18,yScaleFactor:.18,containerWidth:t.width,containerHeight:t.height,position:{mx:.36,my:.44}}),r={strokeWidth:2,fill:Ki(t,"none"),stroke:Yi(t,c)};x(e,n,r)}()}return r},"bpmn:Gateway":function(e,t){var n={fill:Ki(t,s),fillOpacity:Ji,stroke:Yi(t,c)};return function(e,t,n,i){var r=t/2,o=n/2,a=[{x:r,y:0},{x:t,y:o},{x:r,y:n},{x:0,y:o}].map(function(e){return e.x+","+e.y}).join(" ");i=l(i,{stroke:"black",strokeWidth:2,fill:"white"});var s=Oe("polygon");return Ee(s,{points:a}),Ee(s,i),ge(e,s),s}(e,t.width,t.height,n)},"bpmn:SequenceFlow":function(e,t){var n,i=A(t),r=Ki(t,s),o=Yi(t,c),a=x(e,i,{strokeLinejoin:"round",markerEnd:m("sequenceflow-end",r,o),stroke:Yi(t,c)}),p=qi(t);return t.source&&(n=t.source.businessObject,p.conditionExpression&&n.$instanceOf("bpmn:Activity")&&Ee(a,{markerStart:m("conditional-flow-marker",r,o)}),n.default&&(n.$instanceOf("bpmn:Gateway")||n.$instanceOf("bpmn:Activity"))&&n.default===p&&Ee(a,{markerStart:m("conditional-default-flow-marker",r,o)})),a},"bpmn:Association":function(e,t,n){var i=qi(t),r=Ki(t,s),o=Yi(t,c);return n=F({strokeDasharray:"0.5, 5",strokeLinecap:"round",strokeLinejoin:"round",stroke:Yi(t,c)},n||{}),"One"!==i.associationDirection&&"Both"!==i.associationDirection||(n.markerEnd=m("association-end",r,o)),"Both"===i.associationDirection&&(n.markerStart=m("association-start",r,o)),g(e,t.waypoints,n)},"bpmn:DataInputAssociation":function(e,t){var n=Ki(t,s),i=Yi(t,c);return w("bpmn:Association")(e,t,{markerEnd:m("association-end",n,i)})},"bpmn:DataOutputAssociation":function(e,t){var n=Ki(t,s),i=Yi(t,c);return w("bpmn:Association")(e,t,{markerEnd:m("association-end",n,i)})},"bpmn:MessageFlow":function(e,t){var n=qi(t),r=Ui(t),o=Ki(t,s),a=Yi(t,c),p=x(e,A(t),{markerEnd:m("messageflow-end",o,a),markerStart:m("messageflow-start",o,a),strokeDasharray:"10, 12",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.5px",stroke:Yi(t,c)});if(n.messageRef){var u=p.getPointAtLength(p.getTotalLength()/2),l=i.getScaledPath("MESSAGE_FLOW_MARKER",{abspos:{x:u.x,y:u.y}}),h={strokeWidth:1};"initiating"===r.messageVisibleKind?(h.fill="white",h.stroke="black"):(h.fill="#888",h.stroke="white"),x(e,l,h)}return p},"bpmn:DataObject":function(e,t){var n=x(e,i.getScaledPath("DATA_OBJECT_PATH",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:.474,my:.296}}),{fill:Ki(t,s),fillOpacity:Ji,stroke:Yi(t,c)});return function(e){var t=e.dataObjectRef;return e.isCollection||t&&t.isCollection}(qi(t))&&function(e,t){var n=(t.height-16)/t.height,r=i.getScaledPath("DATA_OBJECT_COLLECTION_PATH",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:.451,my:n}});x(e,r,{strokeWidth:2})}(e,t),n},"bpmn:DataObjectReference":E("bpmn:DataObject"),"bpmn:DataInput":function(e,t){var n=i.getRawPath("DATA_ARROW"),r=w("bpmn:DataObject")(e,t);return x(e,n,{strokeWidth:1}),r},"bpmn:DataOutput":function(e,t){var n=i.getRawPath("DATA_ARROW"),r=w("bpmn:DataObject")(e,t);return x(e,n,{strokeWidth:1,fill:"black"}),r},"bpmn:DataStoreReference":function(e,t){return x(e,i.getScaledPath("DATA_STORE",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:0,my:.133}}),{strokeWidth:2,fill:Ki(t,s),fillOpacity:Ji,stroke:Yi(t,c)})},"bpmn:BoundaryEvent":function(e,t){var n=qi(t).cancelActivity,i={strokeWidth:1,fill:Ki(t,s),stroke:Yi(t,c)};n||(i.strokeDasharray="6",i.strokeLinecap="round");var r=F({},i,{fillOpacity:1}),o=F({},i,{fill:"none"}),a=w("bpmn:Event")(e,t,r);return v(e,t.width,t.height,Qi,o),S(t,e),a},"bpmn:Group":function(e,t){return y(e,t.width,t.height,Zi,{stroke:Yi(t,c),strokeWidth:1,strokeDasharray:"8,3,1,3",fill:"none",pointerEvents:"none"})},label:function(e,t){return function(e,t){var n={width:90,height:30,x:t.width/2+t.x,y:t.height/2+t.y};return C(e,Wi(t),{box:n,fitBox:!0,style:F({},o.getExternalStyle(),{fill:Yi(t,c)})})}(e,t)},"bpmn:TextAnnotation":function(e,t){var n=y(e,t.width,t.height,0,0,{fill:"none",stroke:"none"});return x(e,i.getScaledPath("TEXT_ANNOTATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:0,my:0}}),{stroke:Yi(t,c)}),C(e,qi(t).text||"",{box:t,align:"left-top",padding:5,style:{fill:Yi(t,c)}}),n},ParticipantMultiplicityMarker:function(e,t){_("participant-multiplicity",e,i.getScaledPath("MARKER_PARALLEL",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:t.width/2/t.width,my:(t.height-15)/t.height}}),{strokeWidth:1,fill:Ki(t,s),stroke:Yi(t,c)})},SubProcessMarker:function(e,t){en(y(e,14,14,0,{strokeWidth:1,fill:Ki(t,s),stroke:Yi(t,c)}),t.width/2-7.5,t.height-20),_("sub-process",e,i.getScaledPath("MARKER_SUB_PROCESS",{xScaleFactor:1.5,yScaleFactor:1.5,containerWidth:t.width,containerHeight:t.height,position:{mx:(t.width/2-7.5)/t.width,my:(t.height-20)/t.height}}),{fill:Ki(t,s),stroke:Yi(t,c)})},ParallelMarker:function(e,t,n){_("parallel",e,i.getScaledPath("MARKER_PARALLEL",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:(t.width/2+n.parallel)/t.width,my:(t.height-20)/t.height}}),{fill:Ki(t,s),stroke:Yi(t,c)})},SequentialMarker:function(e,t,n){_("sequential",e,i.getScaledPath("MARKER_SEQUENTIAL",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:(t.width/2+n.seq)/t.width,my:(t.height-19)/t.height}}),{fill:Ki(t,s),stroke:Yi(t,c)})},CompensationMarker:function(e,t,n){_("compensation",e,i.getScaledPath("MARKER_COMPENSATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:(t.width/2+n.compensation)/t.width,my:(t.height-13)/t.height}}),{strokeWidth:1,fill:Ki(t,s),stroke:Yi(t,c)})},LoopMarker:function(e,t,n){_("loop",e,i.getScaledPath("MARKER_LOOP",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:(t.width/2+n.loop)/t.width,my:(t.height-7)/t.height}}),{strokeWidth:1,fill:Ki(t,s),stroke:Yi(t,c),strokeLinecap:"round",strokeMiterlimit:.5})},AdhocMarker:function(e,t,n){_("adhoc",e,i.getScaledPath("MARKER_ADHOC",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:(t.width/2+n.adhoc)/t.width,my:(t.height-15)/t.height}}),{strokeWidth:1,fill:Yi(t,c),stroke:Yi(t,c)})}};function P(e,t,n){var i,r=qi(t),o=n&&-1!==n.indexOf("SubProcessMarker");i=o?{seq:-21,parallel:-22,compensation:-42,loop:-18,adhoc:10}:{seq:-3,parallel:-6,compensation:-27,loop:0,adhoc:10},b(n,function(n){w(n)(e,t,i)}),r.isForCompensation&&w("CompensationMarker")(e,t,i),"bpmn:AdHocSubProcess"===r.$type&&w("AdhocMarker")(e,t,i);var a=r.loopCharacteristics,s=a&&a.isSequential;a&&(void 0===s&&w("LoopMarker")(e,t,i),!1===s&&w("ParallelMarker")(e,t,i),!0===s&&w("SequentialMarker")(e,t,i))}this._drawPath=x}n(tr,at),tr.$inject=["config.bpmnRenderer","eventBus","styles","pathMap","canvas","textRenderer"],tr.prototype.canRender=function(e){return Ii(e,"bpmn:BaseElement")},tr.prototype.drawShape=function(e,t){var n=t.type;return(0,this.handlers[n])(e,t)},tr.prototype.drawConnection=function(e,t){var n=t.type;return(0,this.handlers[n])(e,t)},tr.prototype.getShapePath=function(e){return Ii(e,"bpmn:Event")?(n=(t=e).x+t.width/2,i=t.y+t.height/2,r=t.width/2,st([["M",n,i],["m",0,-r],["a",r,r,0,1,1,0,2*r],["a",r,r,0,1,1,0,-2*r],["z"]])):Ii(e,"bpmn:Activity")?function(e,t){var n=e.x,i=e.y,r=e.width,o=e.height;return st([["M",n+t,i],["l",r-2*t,0],["a",t,t,0,0,1,t,t],["l",0,o-2*t],["a",t,t,0,0,1,-t,t],["l",2*t-r,0],["a",t,t,0,0,1,-t,-t],["l",0,2*t-o],["a",t,t,0,0,1,t,-t],["z"]])}(e,Zi):Ii(e,"bpmn:Gateway")?function(e){var t=e.width/2,n=e.height/2;return st([["M",e.x+t,e.y],["l",t,n],["l",-t,n],["l",-t,-n],["z"]])}(e):function(e){var t=e.x,n=e.y,i=e.width;return st([["M",t,n],["l",i,0],["l",0,e.height],["l",-i,0],["z"]])}(e);var t,n,i,r};var nr=0,ir={width:150,height:50};function rr(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{width:0,height:0}}}function or(e,t,n){for(var i,r=e.shift(),o=r;;){if((i=rr(o,n)).width=o?i.width:0," "===o||""===o||i.width<Math.round(t)||o.length<2)return ar(e,o,r,i);o=sr(o,i.width,t)}}function ar(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}}function sr(e,t,n){var i=Math.max(e.length*(n/t),1),r=function(e,t){var n,i=e.split(/(\s|-)/g),r=[],o=0;if(i.length>1)for(;n=i.shift();){if(!(n.length+o<t)){"-"===n&&r.pop();break}r.push(n),o+=n.length}return r.join("")}(e,i);return r||(r=e.slice(0,Math.max(Math.round(i-1),1))),r}function cr(e){this._config=F({},{size:ir,padding:nr,style:{},align:"center-top"},e||{})}cr.prototype.createText=function(e,t){return this.layoutText(e,t).element},cr.prototype.getDimensions=function(e,t){return this.layoutText(e,t).dimensions},cr.prototype.layoutText=function(e,t){var n=F({},this._config.size,t.box),i=F({},this._config.style,t.style),r=function(e){var t=e.split("-");return{horizontal:t[0]||"center",vertical:t[1]||"top"}}(t.align||this._config.align),o=function(e){return h(e)?F({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,s=function(e){if("fontSize"in e&&"lineHeight"in e)return e.lineHeight*parseInt(e.fontSize,10)}(i),c=e.split(/\r?\n/g),p=[],u=n.width-o.left-o.right,l=Oe("text");for(Ee(l,{x:0,y:0}),Ee(l,i),ge(function(){var e=document.getElementById("helper-svg");return e||(Ee(e=Oe("svg"),{id:"helper-svg",width:0,height:0,style:"visibility: hidden; position: fixed"}),document.body.appendChild(e)),e}(),l);c.length;)p.push(or(c,u,l));"middle"===r.vertical&&(o.top=o.bottom=0);var d=_(p,function(e,t,n){return e+(s||t.height)},0)+o.top+o.bottom,f=_(p,function(e,t,n){return t.width>e?t.width:e},0),m=o.top;"middle"===r.vertical&&(m+=(n.height-d)/2),m-=(s||p[0].height)/4;var v=Oe("text");return Ee(v,i),b(p,function(e){var t;switch(m+=s||e.height,r.horizontal){case"left":t=o.left;break;case"right":t=(a?f:u)-o.right-e.width;break;default:t=Math.max(((a?f:u)-e.width)/2+o.left,0)}var n=Oe("tspan");Ee(n,{x:t,y:m}),n.textContent=e.text,ge(v,n)}),ke(l),{dimensions:{width:f,height:d},element:v}};var pr=12,ur=1.2,lr=30;function hr(e){var t=F({fontFamily:"Arial, sans-serif",fontSize:pr,fontWeight:"normal",lineHeight:ur},e&&e.defaultStyle||{}),n=parseInt(t.fontSize,10)-1,i=F({},t,{fontSize:n},e&&e.externalStyle||{}),r=new cr({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(lr,Math.round(i.height))}},this.createText=function(e,t){return r.createText(e,t||{})},this.getDefaultStyle=function(){return t},this.getExternalStyle=function(){return i}}hr.$inject=["config.textRenderer"];var dr=/\{([^}]+)\}/g,fr=/(?:(?:^|\.)(.+?)(?=\[|\.|$|\()|\[('|")(.+?)\2\])(\(\))?/g;var mr={__init__:["bpmnRenderer"],bpmnRenderer:["type",tr],textRenderer:["type",hr],pathMap:["type",function(){this.pathMap={EVENT_MESSAGE:{d:"m {mx},{my} l 0,{e.y1} l {e.x1},0 l 0,-{e.y1} z l {e.x0},{e.y0} l {e.x0},-{e.y0}",height:36,width:36,heightElements:[6,14],widthElements:[10.5,21]},EVENT_SIGNAL:{d:"M {mx},{my} l {e.x0},{e.y0} l -{e.x1},0 Z",height:36,width:36,heightElements:[18],widthElements:[10,20]},EVENT_ESCALATION:{d:"M {mx},{my} l {e.x0},{e.y0} l -{e.x0},-{e.y1} l -{e.x0},{e.y1} Z",height:36,width:36,heightElements:[20,7],widthElements:[8]},EVENT_CONDITIONAL:{d:"M {e.x0},{e.y0} l {e.x1},0 l 0,{e.y2} l -{e.x1},0 Z M {e.x2},{e.y3} l {e.x0},0 M {e.x2},{e.y4} l {e.x0},0 M {e.x2},{e.y5} l {e.x0},0 M {e.x2},{e.y6} l {e.x0},0 M {e.x2},{e.y7} l {e.x0},0 M {e.x2},{e.y8} l {e.x0},0 ",height:36,width:36,heightElements:[8.5,14.5,18,11.5,14.5,17.5,20.5,23.5,26.5],widthElements:[10.5,14.5,12.5]},EVENT_LINK:{d:"m {mx},{my} 0,{e.y0} -{e.x1},0 0,{e.y1} {e.x1},0 0,{e.y0} {e.x0},-{e.y2} -{e.x0},-{e.y2} z",height:36,width:36,heightElements:[4.4375,6.75,7.8125],widthElements:[9.84375,13.5]},EVENT_ERROR:{d:"m {mx},{my} {e.x0},-{e.y0} {e.x1},-{e.y1} {e.x2},{e.y2} {e.x3},-{e.y3} -{e.x4},{e.y4} -{e.x5},-{e.y5} z",height:36,width:36,heightElements:[.023,8.737,8.151,16.564,10.591,8.714],widthElements:[.085,6.672,6.97,4.273,5.337,6.636]},EVENT_CANCEL_45:{d:"m {mx},{my} -{e.x1},0 0,{e.x0} {e.x1},0 0,{e.y1} {e.x0},0 0,-{e.y1} {e.x1},0 0,-{e.y0} -{e.x1},0 0,-{e.y1} -{e.x0},0 z",height:36,width:36,heightElements:[4.75,8.5],widthElements:[4.75,8.5]},EVENT_COMPENSATION:{d:"m {mx},{my} {e.x0},-{e.y0} 0,{e.y1} z m {e.x1},-{e.y2} {e.x2},-{e.y3} 0,{e.y1} -{e.x2},-{e.y3} z",height:36,width:36,heightElements:[6.5,13,.4,6.1],widthElements:[9,9.3,8.7]},EVENT_TIMER_WH:{d:"M {mx},{my} l {e.x0},-{e.y0} m -{e.x0},{e.y0} l {e.x1},{e.y1} ",height:36,width:36,heightElements:[10,2],widthElements:[3,7]},EVENT_TIMER_LINE:{d:"M {mx},{my} m {e.x0},{e.y0} l -{e.x1},{e.y1} ",height:36,width:36,heightElements:[10,3],widthElements:[0,0]},EVENT_MULTIPLE:{d:"m {mx},{my} {e.x1},-{e.y0} {e.x1},{e.y0} -{e.x0},{e.y1} -{e.x2},0 z",height:36,width:36,heightElements:[6.28099,12.56199],widthElements:[3.1405,9.42149,12.56198]},EVENT_PARALLEL_MULTIPLE:{d:"m {mx},{my} {e.x0},0 0,{e.y1} {e.x1},0 0,{e.y0} -{e.x1},0 0,{e.y1} -{e.x0},0 0,-{e.y1} -{e.x1},0 0,-{e.y0} {e.x1},0 z",height:36,width:36,heightElements:[2.56228,7.68683],widthElements:[2.56228,7.68683]},GATEWAY_EXCLUSIVE:{d:"m {mx},{my} {e.x0},{e.y0} {e.x1},{e.y0} {e.x2},0 {e.x4},{e.y2} {e.x4},{e.y1} {e.x2},0 {e.x1},{e.y3} {e.x0},{e.y3} {e.x3},0 {e.x5},{e.y1} {e.x5},{e.y2} {e.x3},0 z",height:17.5,width:17.5,heightElements:[8.5,6.5312,-6.5312,-8.5],widthElements:[6.5,-6.5,3,-3,5,-5]},GATEWAY_PARALLEL:{d:"m {mx},{my} 0,{e.y1} -{e.x1},0 0,{e.y0} {e.x1},0 0,{e.y1} {e.x0},0 0,-{e.y1} {e.x1},0 0,-{e.y0} -{e.x1},0 0,-{e.y1} -{e.x0},0 z",height:30,width:30,heightElements:[5,12.5],widthElements:[5,12.5]},GATEWAY_EVENT_BASED:{d:"m {mx},{my} {e.x0},{e.y0} {e.x0},{e.y1} {e.x1},{e.y2} {e.x2},0 z",height:11,width:11,heightElements:[-6,6,12,-12],widthElements:[9,-3,-12]},GATEWAY_COMPLEX:{d:"m {mx},{my} 0,{e.y0} -{e.x0},-{e.y1} -{e.x1},{e.y2} {e.x0},{e.y1} -{e.x2},0 0,{e.y3} {e.x2},0 -{e.x0},{e.y1} l {e.x1},{e.y2} {e.x0},-{e.y1} 0,{e.y0} {e.x3},0 0,-{e.y0} {e.x0},{e.y1} {e.x1},-{e.y2} -{e.x0},-{e.y1} {e.x2},0 0,-{e.y3} -{e.x2},0 {e.x0},-{e.y1} -{e.x1},-{e.y2} -{e.x0},{e.y1} 0,-{e.y0} -{e.x3},0 z",height:17.125,width:17.125,heightElements:[4.875,3.4375,2.125,3],widthElements:[3.4375,2.125,4.875,3]},DATA_OBJECT_PATH:{d:"m 0,0 {e.x1},0 {e.x0},{e.y0} 0,{e.y1} -{e.x2},0 0,-{e.y2} {e.x1},0 0,{e.y0} {e.x0},0",height:61,width:51,heightElements:[10,50,60],widthElements:[10,40,50,60]},DATA_OBJECT_COLLECTION_PATH:{d:"m {mx}, {my} m 0 15 l 0 -15 m 4 15 l 0 -15 m 4 15 l 0 -15 ",height:61,width:51,heightElements:[12],widthElements:[1,6,12,15]},DATA_ARROW:{d:"m 5,9 9,0 0,-3 5,5 -5,5 0,-3 -9,0 z",height:61,width:51,heightElements:[],widthElements:[]},DATA_STORE:{d:"m {mx},{my} l 0,{e.y2} c {e.x0},{e.y1} {e.x1},{e.y1} {e.x2},0 l 0,-{e.y2} c -{e.x0},-{e.y1} -{e.x1},-{e.y1} -{e.x2},0c {e.x0},{e.y1} {e.x1},{e.y1} {e.x2},0 m -{e.x2},{e.y0}c {e.x0},{e.y1} {e.x1},{e.y1} {e.x2},0m -{e.x2},{e.y0}c {e.x0},{e.y1} {e.x1},{e.y1} {e.x2},0",height:61,width:61,heightElements:[7,10,45],widthElements:[2,58,60]},TEXT_ANNOTATION:{d:"m {mx}, {my} m 10,0 l -10,0 l 0,{e.y0} l 10,0",height:30,width:10,heightElements:[30],widthElements:[10]},MARKER_SUB_PROCESS:{d:"m{mx},{my} m 7,2 l 0,10 m -5,-5 l 10,0",height:10,width:10,heightElements:[],widthElements:[]},MARKER_PARALLEL:{d:"m{mx},{my} m 3,2 l 0,10 m 3,-10 l 0,10 m 3,-10 l 0,10",height:10,width:10,heightElements:[],widthElements:[]},MARKER_SEQUENTIAL:{d:"m{mx},{my} m 0,3 l 10,0 m -10,3 l 10,0 m -10,3 l 10,0",height:10,width:10,heightElements:[],widthElements:[]},MARKER_COMPENSATION:{d:"m {mx},{my} 7,-5 0,10 z m 7.1,-0.3 6.9,-4.7 0,10 -6.9,-4.7 z",height:10,width:21,heightElements:[],widthElements:[]},MARKER_LOOP:{d:"m {mx},{my} c 3.526979,0 6.386161,-2.829858 6.386161,-6.320661 0,-3.490806 -2.859182,-6.320661 -6.386161,-6.320661 -3.526978,0 -6.38616,2.829855 -6.38616,6.320661 0,1.745402 0.714797,3.325567 1.870463,4.469381 0.577834,0.571908 1.265885,1.034728 2.029916,1.35457 l -0.718163,-3.909793 m 0.718163,3.909793 -3.885211,0.802902",height:13.9,width:13.7,heightElements:[],widthElements:[]},MARKER_ADHOC:{d:"m {mx},{my} m 0.84461,2.64411 c 1.05533,-1.23780996 2.64337,-2.07882 4.29653,-1.97997996 2.05163,0.0805 3.85579,1.15803 5.76082,1.79107 1.06385,0.34139996 2.24454,0.1438 3.18759,-0.43767 0.61743,-0.33642 1.2775,-0.64078 1.7542,-1.17511 0,0.56023 0,1.12046 0,1.6807 -0.98706,0.96237996 -2.29792,1.62393996 -3.6918,1.66181996 -1.24459,0.0927 -2.46671,-0.2491 -3.59505,-0.74812 -1.35789,-0.55965 -2.75133,-1.33436996 -4.27027,-1.18121996 -1.37741,0.14601 -2.41842,1.13685996 -3.44288,1.96782996 z",height:4,width:15,heightElements:[],widthElements:[]},TASK_TYPE_SEND:{d:"m {mx},{my} l 0,{e.y1} l {e.x1},0 l 0,-{e.y1} z l {e.x0},{e.y0} l {e.x0},-{e.y0}",height:14,width:21,heightElements:[6,14],widthElements:[10.5,21]},TASK_TYPE_SCRIPT:{d:"m {mx},{my} c 9.966553,-6.27276 -8.000926,-7.91932 2.968968,-14.938 l -8.802728,0 c -10.969894,7.01868 6.997585,8.66524 -2.968967,14.938 z m -7,-12 l 5,0 m -4.5,3 l 4.5,0 m -3,3 l 5,0m -4,3 l 5,0",height:15,width:12.6,heightElements:[6,14],widthElements:[10.5,21]},TASK_TYPE_USER_1:{d:"m {mx},{my} c 0.909,-0.845 1.594,-2.049 1.594,-3.385 0,-2.554 -1.805,-4.62199999 -4.357,-4.62199999 -2.55199998,0 -4.28799998,2.06799999 -4.28799998,4.62199999 0,1.348 0.974,2.562 1.89599998,3.405 -0.52899998,0.187 -5.669,2.097 -5.794,4.7560005 v 6.718 h 17 v -6.718 c 0,-2.2980005 -5.5279996,-4.5950005 -6.0509996,-4.7760005 zm -8,6 l 0,5.5 m 11,0 l 0,-5"},TASK_TYPE_USER_2:{d:"m {mx},{my} m 2.162,1.009 c 0,2.4470005 -2.158,4.4310005 -4.821,4.4310005 -2.66499998,0 -4.822,-1.981 -4.822,-4.4310005 "},TASK_TYPE_USER_3:{d:"m {mx},{my} m -6.9,-3.80 c 0,0 2.25099998,-2.358 4.27399998,-1.177 2.024,1.181 4.221,1.537 4.124,0.965 -0.098,-0.57 -0.117,-3.79099999 -4.191,-4.13599999 -3.57499998,0.001 -4.20799998,3.36699999 -4.20699998,4.34799999 z"},TASK_TYPE_MANUAL:{d:"m {mx},{my} c 0.234,-0.01 5.604,0.008 8.029,0.004 0.808,0 1.271,-0.172 1.417,-0.752 0.227,-0.898 -0.334,-1.314 -1.338,-1.316 -2.467,-0.01 -7.886,-0.004 -8.108,-0.004 -0.014,-0.079 0.016,-0.533 0,-0.61 0.195,-0.042 8.507,0.006 9.616,0.002 0.877,-0.007 1.35,-0.438 1.353,-1.208 0.003,-0.768 -0.479,-1.09 -1.35,-1.091 -2.968,-0.002 -9.619,-0.013 -9.619,-0.013 v -0.591 c 0,0 5.052,-0.016 7.225,-0.016 0.888,-0.002 1.354,-0.416 1.351,-1.193 -0.006,-0.761 -0.492,-1.196 -1.361,-1.196 -3.473,-0.005 -10.86,-0.003 -11.0829995,-0.003 -0.022,-0.047 -0.045,-0.094 -0.069,-0.139 0.3939995,-0.319 2.0409995,-1.626 2.4149995,-2.017 0.469,-0.4870005 0.519,-1.1650005 0.162,-1.6040005 -0.414,-0.511 -0.973,-0.5 -1.48,-0.236 -1.4609995,0.764 -6.5999995,3.6430005 -7.7329995,4.2710005 -0.9,0.499 -1.516,1.253 -1.882,2.19 -0.37000002,0.95 -0.17,2.01 -0.166,2.979 0.004,0.718 -0.27300002,1.345 -0.055,2.063 0.629,2.087 2.425,3.312 4.859,3.318 4.6179995,0.014 9.2379995,-0.139 13.8569995,-0.158 0.755,-0.004 1.171,-0.301 1.182,-1.033 0.012,-0.754 -0.423,-0.969 -1.183,-0.973 -1.778,-0.01 -5.824,-0.004 -6.04,-0.004 10e-4,-0.084 0.003,-0.586 10e-4,-0.67 z"},TASK_TYPE_INSTANTIATING_SEND:{d:"m {mx},{my} l 0,8.4 l 12.6,0 l 0,-8.4 z l 6.3,3.6 l 6.3,-3.6"},TASK_TYPE_SERVICE:{d:"m {mx},{my} v -1.71335 c 0.352326,-0.0705 0.703932,-0.17838 1.047628,-0.32133 0.344416,-0.14465 0.665822,-0.32133 0.966377,-0.52145 l 1.19431,1.18005 1.567487,-1.57688 -1.195028,-1.18014 c 0.403376,-0.61394 0.683079,-1.29908 0.825447,-2.01824 l 1.622133,-0.01 v -2.2196 l -1.636514,0.01 c -0.07333,-0.35153 -0.178319,-0.70024 -0.323564,-1.04372 -0.145244,-0.34406 -0.321407,-0.6644 -0.522735,-0.96217 l 1.131035,-1.13631 -1.583305,-1.56293 -1.129598,1.13589 c -0.614052,-0.40108 -1.302883,-0.68093 -2.022633,-0.82247 l 0.0093,-1.61852 h -2.241173 l 0.0042,1.63124 c -0.353763,0.0736 -0.705369,0.17977 -1.049785,0.32371 -0.344415,0.14437 -0.665102,0.32092 -0.9635006,0.52046 l -1.1698628,-1.15823 -1.5667691,1.5792 1.1684265,1.15669 c -0.4026573,0.61283 -0.68308,1.29797 -0.8247287,2.01713 l -1.6588041,0.003 v 2.22174 l 1.6724648,-0.006 c 0.073327,0.35077 0.1797598,0.70243 0.3242851,1.04472 0.1452428,0.34448 0.3214064,0.6644 0.5227339,0.96066 l -1.1993431,1.19723 1.5840256,1.56011 1.1964668,-1.19348 c 0.6140517,0.40346 1.3028827,0.68232 2.0233517,0.82331 l 7.19e-4,1.69892 h 2.226848 z m 0.221462,-3.9957 c -1.788948,0.7502 -3.8576,-0.0928 -4.6097055,-1.87438 -0.7521065,-1.78321 0.090598,-3.84627 1.8802645,-4.59604 1.78823,-0.74936 3.856881,0.0929 4.608987,1.87437 0.752106,1.78165 -0.0906,3.84612 -1.879546,4.59605 z"},TASK_TYPE_SERVICE_FILL:{d:"m {mx},{my} c -1.788948,0.7502 -3.8576,-0.0928 -4.6097055,-1.87438 -0.7521065,-1.78321 0.090598,-3.84627 1.8802645,-4.59604 1.78823,-0.74936 3.856881,0.0929 4.608987,1.87437 0.752106,1.78165 -0.0906,3.84612 -1.879546,4.59605 z"},TASK_TYPE_BUSINESS_RULE_HEADER:{d:"m {mx},{my} 0,4 20,0 0,-4 z"},TASK_TYPE_BUSINESS_RULE_MAIN:{d:"m {mx},{my} 0,12 20,0 0,-12 zm 0,8 l 20,0 m -13,-4 l 0,8"},MESSAGE_FLOW_MARKER:{d:"m {mx},{my} m -10.5 ,-7 l 0,14 l 21,0 l 0,-14 z l 10.5,6 l 10.5,-6"}},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,a,s={};if(t.position){for(var c=t.containerHeight/r.height*t.yScaleFactor,p=t.containerWidth/r.width*t.xScaleFactor,u=0;u<r.heightElements.length;u++)s["y"+u]=r.heightElements[u]*c;for(var l=0;l<r.widthElements.length;l++)s["x"+l]=r.widthElements[l]*p}return o=r.d,a={mx:n,my:i,e:s},String(o).replace(dr,function(e,t){return function(e,t,n){var i=n;return t.replace(fr,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,a)})}}]};var vr={translate:["value",function(e,t){return t=t||{},e.replace(/{([^}]+)}/g,function(e,n){return t[n]||"{"+n+"}"})}]},yr={width:90,height:20},gr=15;function br(e){return Ii(e,"bpmn:Event")||Ii(e,"bpmn:Gateway")||Ii(e,"bpmn:DataStoreReference")||Ii(e,"bpmn:DataObjectReference")||Ii(e,"bpmn:DataInput")||Ii(e,"bpmn:DataOutput")||Ii(e,"bpmn:SequenceFlow")||Ii(e,"bpmn:MessageFlow")||Ii(e,"bpmn:Group")}function xr(e){return wr(e.label)}function _r(e){var t=e.length/2-1,n=e[Math.floor(t)],i=e[Math.ceil(t+.01)],r=function(e){var t=e.length/2-1,n=e[Math.floor(t)],i=e[Math.ceil(t+.01)];return{x:n.x+(i.x-n.x)/2,y:n.y+(i.y-n.y)/2}}(e),o=Math.atan((i.y-n.y)/(i.x-n.x)),a=r.x,s=r.y;return Math.abs(o)<Math.PI/2?s-=gr:a+=gr,{x:a,y:s}}function Er(e){return e.waypoints?_r(e.waypoints):Ii(e,"bpmn:Group")?{x:e.x+e.width/2,y:e.y+yr.height/2}:{x:e.x+e.width/2,y:e.y+e.height+yr.height/2}}function wr(e){return e&&!!e.labelTarget}function Sr(e,t){return e&&t?Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2)):-1}function Cr(e,t,n,i){if(void 0===i&&(i=5),!e||!t||!n)return!1;var r=(t.x-e.x)*(n.y-e.y)-(t.y-e.y)*(n.x-e.x),o=Sr(e,t);return Math.abs(r/o)<=i}var Tr=2;function Rr(e,t){var n;return function(e,t){var n;n=l(e)?e:[e,t];var i=n.slice().shift();return E(n,function(e){return Math.abs(i.y-e.y)<=Tr})}(n=l(e)?e:[e,t])?"h":!!function(e,t){var n;n=l(e)?e:[e,t];var i=n.slice().shift();return E(n,function(e){return Math.abs(i.x-e.x)<=Tr})}(n)&&"v"}function Ar(e,t,n){return n=n||0,e.x>t.x-n&&e.y>t.y-n&&e.x<t.x+t.width+n&&e.y<t.y+t.height+n}function kr(e,t){return{x:Math.round(e.x+(t.x-e.x)/2),y:Math.round(e.y+(t.y-e.y)/2)}}
- /**
- * This file contains source code adapted from Snap.svg (licensed Apache-2.0).
- *
- * @see https://github.com/adobe-webplatform/Snap.svg/blob/master/src/path.js
- */var Pr=/,?([a-z]),?/gi,Mr=parseFloat,Dr=Math,Br=Dr.PI,Nr=Dr.min,Or=Dr.max,jr=Dr.pow,Lr=Dr.abs,Ir=/([a-z])[\s,]*((-?\d*\.?\d*(?:e[-+]?\d+)?[\s]*,?[\s]*)+)/gi,zr=/(-?\d*\.?\d*(?:e[-+]?\\d+)?)[\s]*,?[\s]*/gi,Fr=Array.isArray||function(e){return e instanceof Array};function $r(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function Hr(e){if("function"==typeof e||Object(e)!==e)return e;var t=new e.constructor;for(var n in e)$r(e,n)&&(t[n]=Hr(e[n]));return t}function Gr(e){var t=Gr.ps=Gr.ps||{};return t[e]?t[e].sleep=100:t[e]={sleep:100},setTimeout(function(){for(var n in t)$r(t,n)&&n!=e&&(t[n].sleep--,!t[n].sleep&&delete t[n])}),t[e]}function Wr(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 Vr(){return this.join(",").replace(Pr,"$1")}function Ur(e){var t=Hr(e);return t.toString=Vr,t}function qr(e,t,n,i,r,o,a,s,c){var p=1-c,u=jr(p,3),l=jr(p,2),h=c*c*c,d=u*t+3*l*c*i+3*p*c*c*o+h*s;return{x:Jr(u*e+3*l*c*n+3*p*c*c*r+h*a),y:Jr(d)}}function Kr(e){var t=function(e,t,n,i,r,o,a,s){for(var c,p,u,l,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,u=3*n-3*e):(p=6*t-12*i+6*o,c=-3*t+9*i-9*o+3*s,u=3*i-3*t),Lr(c)<1e-12){if(Lr(p)<1e-12)continue;0<(l=-u/p)&&l<1&&v.push(l)}else f=p*p-4*u*c,m=Dr.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,x=v.length,_=x;for(;x--;)l=v[x],b=1-l,y[0][x]=b*b*b*e+3*b*b*l*n+3*b*l*l*r+l*l*l*a,y[1][x]=b*b*b*t+3*b*b*l*i+3*b*l*l*o+l*l*l*s;return y[0][_]=e,y[1][_]=t,y[0][_+1]=a,y[1][_+1]=s,y[0].length=y[1].length=_+2,{x0:Nr.apply(0,y[0]),y0:Nr.apply(0,y[1]),x1:Or.apply(0,y[0]),y1:Or.apply(0,y[1])}}.apply(null,e);return Wr(t.x0,t.y0,t.x1-t.x0,t.y1-t.y0)}function Yr(e,t,n){return t>=e.x&&t<=e.x+e.width&&n>=e.y&&n<=e.y+e.height}function Xr(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 Zr(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,u=[-.1252,.1252,-.3678,.3678,-.5873,.5873,-.7699,.7699,-.9041,.9041,-.9816,.9816],l=[.2491,.2491,.2335,.2335,.2032,.2032,.1601,.1601,.1069,.1069,.0472,.0472],h=0,d=0;d<12;d++){var f=p*u[d]+p,m=Xr(f,e,n,r,a),v=Xr(f,t,i,o,s),y=m*m+v*v;h+=l[d]*Dr.sqrt(y)}return p*h}function Qr(e,t,n,i,r,o,a,s){if(!(Or(e,n)<Nr(r,a)||Nr(e,n)>Or(r,a)||Or(t,i)<Nr(o,s)||Nr(t,i)>Or(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 u=Jr(((e*i-t*n)*(r-a)-(e-n)*(r*s-o*a))/p),l=Jr(c/p),h=+u.toFixed(2),d=+l.toFixed(2);if(!(h<+Nr(e,n).toFixed(2)||h>+Or(e,n).toFixed(2)||h<+Nr(r,a).toFixed(2)||h>+Or(r,a).toFixed(2)||d<+Nr(t,i).toFixed(2)||d>+Or(t,i).toFixed(2)||d<+Nr(o,s).toFixed(2)||d>+Or(o,s).toFixed(2)))return{x:u,y:l}}}}function Jr(e){return Math.round(1e11*e)/1e11}function eo(e,t,n){if(!function(e,t){return e=Wr(e),Yr(t=Wr(t),e.x,e.y)||Yr(t,e.x2,e.y)||Yr(t,e.x,e.y2)||Yr(t,e.x2,e.y2)||Yr(e,t.x,t.y)||Yr(e,t.x2,t.y)||Yr(e,t.x,t.y2)||Yr(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)}(Kr(e),Kr(t)))return n?0:[];for(var i=Zr.apply(0,e),r=Zr.apply(0,t),o=no(e)?1:~~(i/5)||1,a=no(t)?1:~~(r/5)||1,s=[],c=[],p={},u=n?0:[],l=0;l<o+1;l++){var h=qr.apply(0,e.concat(l/o));s.push({x:h.x,y:h.y,t:l/o})}for(l=0;l<a+1;l++)h=qr.apply(0,t.concat(l/a)),c.push({x:h.x,y:h.y,t:l/a});for(l=0;l<o;l++)for(var d=0;d<a;d++){var f,m=s[l],v=s[l+1],y=c[d],g=c[d+1],b=Lr(v.x-m.x)<.01?"y":"x",x=Lr(g.x-y.x)<.01?"y":"x",_=Qr(m.x,m.y,v.x,v.y,y.x,y.y,g.x,g.y);if(_){if(p[f=_.x.toFixed(9)+"#"+_.y.toFixed(9)])continue;p[f]=!0;var E=m.t+Lr((_[b]-m[b])/(v[b]-m[b]))*(v.t-m.t),w=y.t+Lr((_[x]-y[x])/(g[x]-y[x]))*(g.t-y.t);E>=0&&E<=1&&w>=0&&w<=1&&(n?u++:u.push({x:_.x,y:_.y,t1:E,t2:w}))}}return u}function to(e){var t=Gr(e);if(t.abs)return Ur(t.abs);if(Fr(e)&&Fr(e&&e[0])||(e=function(e){if(!e)return null;var t=Gr(e);if(t.arr)return Hr(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 Fr(e)&&Fr(e[0])&&(i=Hr(e)),i.length||String(e).replace(Ir,function(e,t,r){var o=[],a=t.toLowerCase();for(r.replace(zr,function(e,t){t&&o.push(+t)}),"m"==a&&o.length>2&&(i.push([t].concat(o.splice(0,2))),a="l",t="m"==t?"l":"L");o.length>=n[a]&&(i.push([t].concat(o.splice(0,n[a]))),n[a]););}),i.toString=Gr.toString,t.arr=Hr(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,u,l=c,h=e.length;l<h;l++){if(i.push(p=[]),(n=(u=e[l])[0])!=n.toUpperCase())switch(p[0]=n.toUpperCase(),p[0]){case"A":p[1]=u[1],p[2]=u[2],p[3]=u[3],p[4]=u[4],p[5]=u[5],p[6]=+u[6]+r,p[7]=+u[7]+o;break;case"V":p[1]=+u[1]+o;break;case"H":p[1]=+u[1]+r;break;case"M":a=+u[1]+r,s=+u[2]+o;default:for(var d=1,f=u.length;d<f;d++)p[d]=+u[d]+(d%2?r:o)}else for(var m=0,v=u.length;m<v;m++)p[m]=u[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=Vr,t.abs=Ur(i),i}function no(e){return e[0]===e[2]&&e[1]===e[3]&&e[4]===e[6]&&e[5]===e[7]}function io(e,t,n,i){return[e,t,n,i,n,i]}function ro(e,t,n,i,r,o){return[1/3*e+2/3*n,1/3*t+2/3*i,1/3*r+2/3*n,1/3*o+2/3*i,r,o]}function oo(e,t,n,i,r,o,a,s,c,p){var u,l,h=120*Br/180,d=Br/180*(+r||0),f=[],m=(l=function(e,t,n){return{x:e*Dr.cos(n)-t*Dr.sin(n),y:e*Dr.sin(n)+t*Dr.cos(n)}},function e(){var t=Array.prototype.slice.call(arguments,0),n=t.join("␀"),i=e.cache=e.cache||{},r=e.count=e.count||[];return $r(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]=l.apply(0,t),i[n])});if(p)S=p[0],C=p[1],E=p[2],w=p[3];else{e=(u=m(e,t,-d)).x,t=u.y;var v=(e-(s=(u=m(s,c,-d)).x))/2,y=(t-(c=u.y))/2,g=v*v/(n*n)+y*y/(i*i);g>1&&(n*=g=Dr.sqrt(g),i*=g);var b=n*n,x=i*i,_=(o==a?-1:1)*Dr.sqrt(Lr((b*x-b*y*y-x*v*v)/(b*y*y+x*v*v))),E=_*n*y/i+(e+s)/2,w=_*-i*v/n+(t+c)/2,S=Dr.asin(((t-w)/i).toFixed(9)),C=Dr.asin(((c-w)/i).toFixed(9));(S=e<E?Br-S:S)<0&&(S=2*Br+S),(C=s<E?Br-C:C)<0&&(C=2*Br+C),a&&S>C&&(S-=2*Br),!a&&C>S&&(C-=2*Br)}var T=C-S;if(Lr(T)>h){var R=C,A=s,k=c;C=S+h*(a&&C>S?1:-1),f=oo(s=E+n*Dr.cos(C),c=w+i*Dr.sin(C),n,i,r,0,a,A,k,[C,R,E,w])}T=C-S;var P=Dr.cos(S),M=Dr.sin(S),D=Dr.cos(C),B=Dr.sin(C),N=Dr.tan(T/4),O=4/3*n*N,j=4/3*i*N,L=[e,t],I=[e+O*M,t-j*P],z=[s+O*B,c-j*D],F=[s,c];if(I[0]=2*L[0]-I[0],I[1]=2*L[1]-I[1],p)return[I,z,F].concat(f);for(var $=[],H=0,G=(f=[I,z,F].concat(f).join().split(",")).length;H<G;H++)$[H]=H%2?m(f[H-1],f[H],d).y:m(f[H],f[H+1],d).x;return $}function ao(e){var t=Gr(e);if(t.curve)return Ur(t.curve);for(var n=to(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"].concat(oo.apply(0,[t.x,t.y].concat(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].concat(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"].concat(ro(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"].concat(ro(t.x,t.y,e[1],e[2],e[3],e[4]));break;case"L":e=["C"].concat(io(t.x,t.y,e[1],e[2]));break;case"H":e=["C"].concat(io(t.x,t.y,e[1],t.y));break;case"V":e=["C"].concat(io(t.x,t.y,t.x,e[1]));break;case"Z":e=["C"].concat(io(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"].concat(i.splice(0,6)));e.splice(t,1),u=n.length}},a=[],s="",c="",p=0,u=n.length;p<u;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 l=n[p],h=l.length;i.x=l[h-2],i.y=l[h-1],i.bx=Mr(l[h-4])||i.x,i.by=Mr(l[h-3])||i.y}return t.curve=Ur(n),n}var so=function(e,t,n){e=ao(e),t=ao(t);for(var i,r,o,a,s,c,p,u,l,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]?(l=[i,r].concat(v.slice(1)),i=l[6],r=l[7]):(l=[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=u=b[2];else{"C"==b[0]?(h=[o,a].concat(b.slice(1)),o=h[6],a=h[7]):(h=[o,a,o,a,p,u,p,u],o=p,a=u);var x=eo(l,h,n);if(n)d+=x;else{for(var _=0,E=x.length;_<E;_++)x[_].segment1=f,x[_].segment2=y,x[_].bez1=l,x[_].bez2=h;d=d.concat(x)}}}}}return d};function co(e){return{x:Math.round(e.x),y:Math.round(e.y),width:Math.round(e.width),height:Math.round(e.height)}}function po(e){return{x:Math.round(e.x),y:Math.round(e.y)}}function uo(e){return{top:e.y,right:e.x+(e.width||0),bottom:e.y+(e.height||0),left:e.x}}function lo(e){return{x:e.left,y:e.top,width:e.right-e.left,height:e.bottom-e.top}}function ho(e){return po({x:e.x+(e.width||0)/2,y:e.y+(e.height||0)/2})}function fo(e,t,n){h(n=n||0)||(n={x:n,y:n});var i=uo(e),r=uo(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 mo(e,t,n){var i=so(e,t);return 1===i.length?po(i[0]):2===i.length&&Sr(i[0],i[1])<1?po(i[0]):i.length>1?po((i=M(i,function(e){var t=Math.floor(100*e.t2)||1;return t=((t=100-t)<10?"0":"")+t,e.segment2+"#"+t}))[n?0:i.length-1]):null}function vo(e,t){return F({id:e.id,type:e.$type,businessObject:e},t)}function yo(e,t,n){var i=e.di.waypoint;return!i||i.length<2?[ho(t),ho(n)]:i.map(function(e){return{x:e.x,y:e.y}})}function go(e,t,n,i){return new Error(e("element {element} referenced by {referenced}#{property} not yet drawn",{element:Ti(n),referenced:Ti(t),property:i}))}function bo(e,t,n,i,r,o){this._eventBus=e,this._canvas=t,this._elementFactory=n,this._elementRegistry=i,this._translate=r,this._textRenderer=o}bo.$inject=["eventBus","canvas","elementFactory","elementRegistry","translate","textRenderer"],bo.prototype.add=function(e,t){var n,i,r,o,a,s,c,p=e.di,u=this._translate;if(Ii(p,"bpmndi:BPMNPlane"))n=this._elementFactory.createRoot(vo(e)),this._canvas.setRootElement(n);else if(Ii(p,"bpmndi:BPMNShape")){var l=!Fi(e),h=function(e){return Ii(e,"bpmn:Group")}(e);i=t&&(t.hidden||t.collapsed);var d=e.di.bounds;n=this._elementFactory.createShape(vo(e,{collapsed:l,hidden:i,x:Math.round(d.x),y:Math.round(d.y),width:Math.round(d.width),height:Math.round(d.height),isFrame:h})),Ii(e,"bpmn:BoundaryEvent")&&this._attachBoundary(e,n),Ii(e,"bpmn:Lane")&&(r=0),Ii(e,"bpmn:DataStoreReference")&&(o=t,a=ho(d),s=a.x,c=a.y,s>=o.x&&s<=o.x+o.width&&c>=o.y&&c<=o.y+o.height||(t=this._canvas.getRootElement())),this._canvas.addShape(n,t,r)}else{if(!Ii(p,"bpmndi:BPMNEdge"))throw new Error(u("unknown di {di} for element {semantic}",{di:Ti(p),semantic:Ti(e)}));var f=this._getSource(e),m=this._getTarget(e);i=t&&(t.hidden||t.collapsed),n=this._elementFactory.createConnection(vo(e,{hidden:i,source:f,target:m,waypoints:yo(e,f,m)})),Ii(e,"bpmn:DataAssociation")&&(t=null),Ii(e,"bpmn:SequenceFlow")&&(r=0),this._canvas.addConnection(n,t,r)}return br(e)&&Wi(n)&&this.addLabel(e,n),this._eventBus.fire("bpmnElement.added",{element:n}),n},bo.prototype._attachBoundary=function(e,t){var n=this._translate,i=e.attachedToRef;if(!i)throw new Error(n("missing {semantic}#attachedToRef",{semantic:Ti(e)}));var r=this._elementRegistry.get(i.id),o=r&&r.attachers;if(!r)throw go(n,e,i,"attachedToRef");t.host=r,o||(r.attachers=o=[]),-1===o.indexOf(t)&&o.push(t)},bo.prototype.addLabel=function(e,t){var n,i,r;return n=function(e,t){var n,i,r,o=e.di.label;return o&&o.bounds?(r=o.bounds,i={width:Math.max(yr.width,r.width),height:r.height},n={x:r.x+r.width/2,y:r.y+r.height/2}):(n=Er(t),i=yr),F({x:n.x-i.width/2,y:n.y-i.height/2},i)}(e,t),(i=Wi(t))&&(n=this._textRenderer.getExternalLabelBounds(n,i)),r=this._elementFactory.createLabel(vo(e,{id:e.id+"_label",labelTarget:t,type:"label",hidden:t.hidden||!Wi(t),x:Math.round(n.x),y:Math.round(n.y),width:Math.round(n.width),height:Math.round(n.height)})),this._canvas.addShape(r,t.parent)},bo.prototype._getEnd=function(e,t){var n,i,r=e.$type,o=this._translate;if(i=e[t+"Ref"],"source"===t&&"bpmn:DataInputAssociation"===r&&(i=i&&i[0]),("source"===t&&"bpmn:DataOutputAssociation"===r||"target"===t&&"bpmn:DataInputAssociation"===r)&&(i=e.$parent),n=i&&this._getElement(i))return n;throw i?go(o,e,i,t+"Ref"):new Error(o("{semantic}#{side} Ref not specified",{semantic:Ti(e),side:t}))},bo.prototype._getSource=function(e){return this._getEnd(e,"source")},bo.prototype._getTarget=function(e){return this._getEnd(e,"target")},bo.prototype._getElement=function(e){return this._elementRegistry.get(e.id)};var xo={__depends__:[mr,{__depends__:[vr],bpmnImporter:["type",bo]}]};function _o(e){e&&"function"==typeof e.stopPropagation&&e.stopPropagation()}function Eo(e){return e.originalEvent||e.srcEvent}function wo(e,t){_o(e),_o(Eo(e))}function So(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 Co(e){return!(Eo(e)||e).button}function To(e){var t=Eo(e)||e;return!!Co(e)&&(/mac/i.test(navigator.platform)?t.metaKey:t.ctrlKey)}function Ro(e){return!0}var Ao=500;function ko(e,t,n){var i=this;function r(n,i,r){var o,a;(function(e,t){return!(c[e]||Co)(t)})(n,i)||(r?a=t.getGraphics(r):(o=i.delegateTarget||i.target)&&(a=o,r=t.get(a)),a&&r&&!1===e.fire(n,{element:r,gfx:a,originalEvent:i})&&(i.stopPropagation(),i.preventDefault()))}var o={};function a(e){return o[e]}var s={click:"element.click",contextmenu:"element.contextmenu",dblclick:"element.dblclick",mousedown:"element.mousedown",mousemove:"element.mousemove",mouseover:"element.hover",mouseout:"element.out",mouseup:"element.mouseup"},c={"element.contextmenu":Ro};var p="svg, .djs-element";function u(e,t,n,i){var a=o[n]=function(e){r(n,e)};i&&(c[n]=i),a.$delegate=ue.bind(e,p,t,a)}function l(e,t,n){var i=a(n);i&&ue.unbind(e,t,i.$delegate)}e.on("canvas.destroy",function(e){var t;t=e.svg,b(s,function(e,n){l(t,n,e)})}),e.on("canvas.init",function(e){var t;t=e.svg,b(s,function(e,n){u(t,n,e)})}),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"],Ao,function(t){var n=t.element,i=t.gfx;e.fire("interactionEvents.updateHit",{element:n,gfx:i})}),e.on("interactionEvents.createHit",Ao,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 h=m("djs-hit djs-hit-stroke"),d=m("djs-hit djs-hit-click-stroke"),f={all:m("djs-hit djs-hit-all"),"click-stroke":d,stroke:h};function m(e,t){return t=F({stroke:"white",strokeWidth:15},t||{}),n.cls(e,["no-fill","no-border"],t)}function v(e,t){var n=f[t];if(!n)throw new Error("invalid hit type <"+t+">");return Ee(e,n),e}function y(e,t){ge(e,t)}this.removeHits=function(e){b(me(".djs-hit",e),ke)},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=pt(t);return v(n,"stroke"),y(e,n),n},this.createBoxHit=function(e,t,n){n=F({x:0,y:0},n);var i=Oe("rect");return v(i,t),Ee(i,n),y(e,i),i},this.updateDefaultHit=function(e,t){var n=fe(".djs-hit",t);if(n)return e.waypoints?function(e,t){Ee(e,{points:ct(t)})}(n,e.waypoints):Ee(n,{width:e.width,height:e.height}),n},this.fire=r,this.triggerMouseEvent=function(e,t,n){var i=s[e];if(!i)throw new Error("unmapped DOM event name <"+e+">");return r(i,t,n)},this.mouseHandler=a,this.registerEvent=u,this.unregisterEvent=l}ko.$inject=["eventBus","elementRegistry","styles"];var Po={__init__:["interactionEvents"],interactionEvents:["type",ko]},Mo=500;function Do(e,t,n){this.offset=6;var i=t.cls("djs-outline",["no-fill"]),r=this;function o(e,t){var n=Oe("rect");return Ee(n,F({x:10,y:10,width:100,height:100},i)),ge(e,n),n}e.on(["shape.added","shape.changed"],Mo,function(e){var t=e.element,n=e.gfx,i=fe(".djs-outline",n);i||(i=o(n)),r.updateShapeOutline(i,t)}),e.on(["connection.added","connection.changed"],function(e){var t=e.element,n=e.gfx,i=fe(".djs-outline",n);i||(i=o(n)),r.updateConnectionOutline(i,t)})}Do.prototype.updateShapeOutline=function(e,t){Ee(e,{x:-this.offset,y:-this.offset,width:t.width+2*this.offset,height:t.height+2*this.offset})},Do.prototype.updateConnectionOutline=function(e,t){var n=ft(t);Ee(e,{x:n.x-this.offset,y:n.y-this.offset,width:n.width+2*this.offset,height:n.height+2*this.offset})},Do.$inject=["eventBus","styles","elementRegistry"];var Bo={__init__:["outline"],outline:["type",Do]};function No(e){this._eventBus=e,this._selectedElements=[];var t=this;e.on(["shape.remove","connection.remove"],function(e){var n=e.element;t.deselect(n)}),e.on(["diagram.clear"],function(e){t.select(null)})}No.$inject=["eventBus"],No.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})}},No.prototype.get=function(){return this._selectedElements},No.prototype.isSelected=function(e){return-1!==this._selectedElements.indexOf(e)},No.prototype.select=function(e,t){var n=this._selectedElements,i=n.slice();l(e)||(e=e?[e]:[]),t?b(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 Oo="hover",jo="selected";function Lo(e,t,n,i){function r(e,n){t.addMarker(e,n)}function o(e,n){t.removeMarker(e,n)}this._multiSelectionBox=null,e.on("element.hover",function(e){r(e.element,Oo)}),e.on("element.out",function(e){o(e.element,Oo)}),e.on("selection.changed",function(e){var t=e.oldSelection,n=e.newSelection;b(t,function(e){-1===n.indexOf(e)&&o(e,jo)}),b(n,function(e){-1===t.indexOf(e)&&r(e,jo)})})}function Io(e,t,n,i){e.on("create.end",500,function(e){var n=e.context,i=n.canExecute,r=n.elements,o=(n.hints||{}).autoSelect;if(i){if(!1===o)return;l(o)?t.select(o):t.select(r.filter(zo))}}),e.on("connect.end",500,function(e){e.context.canExecute&&e.context.hover&&t.select(e.context.hover)}),e.on("shape.move.end",500,function(e){var n=e.previousSelection||[],r=i.get(e.context.shape.id);y(n,function(e){return r.id===e.id})||t.select(r)}),e.on("element.click",function(e){var i=e.element;i===n.getRootElement()&&(i=null);var r=t.isSelected(i),o=t.get().length>1,a=To(e);if(r&&o)return a?t.deselect(i):t.select(i);r?t.deselect(i):t.select(i,a)})}function zo(e){return!e.hidden}Lo.$inject=["eventBus","canvas","selection","styles"],Io.$inject=["eventBus","selection","canvas","elementRegistry"];var Fo={__init__:["selectionVisuals","selectionBehavior"],__depends__:[Po,Bo],selection:["type",No],selectionVisuals:["type",Lo],selectionBehavior:["type",Io]};function $o(e){this._counter=0,this._prefix=(e?e+"-":"")+Math.floor(1e9*Math.random())+"-"}$o.prototype.next=function(){return this._prefix+ ++this._counter};var Ho=new $o("ov");function Go(e,t,n,i){var r,o;this._eventBus=t,this._canvas=n,this._elementRegistry=i,this._ids=Ho,this._overlayDefaults=F({show:null,scale:!0},e&&e.defaults),this._overlays={},this._overlayContainers=[],this._overlayRoot=(r=n.getContainer(),o=le('<div class="djs-overlay-container" style="position: absolute; width: 0; height: 0;" />'),r.insertBefore(o,r.firstChild),o),this._init()}function Wo(e,t,n){F(e.style,{left:t+"px",top:n+"px"})}function Vo(e,t){e.style.display=!1===t?"none":""}function Uo(e,t){e.style["transform-origin"]="top left",["","-ms-","-webkit-"].forEach(function(n){e.style[n+"transform"]=t})}Go.$inject=["config.overlays","eventBus","canvas","elementRegistry"],Go.prototype.get=function(e){if(m(e)&&(e={id:e}),m(e.element)&&(e.element=this._elementRegistry.get(e.element)),e.element){var t=this._getOverlayContainer(e.element,!0);return t?e.type?g(t.overlays,D({type:e.type})):t.overlays.slice():[]}return e.type?g(this._overlays,D({type:e.type})):e.id?this._overlays[e.id]:null},Go.prototype.add=function(e,t,n){if(h(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=F({},this._overlayDefaults,n,{id:i,type:t,element:e,html:n.html}),this._addOverlay(n),i},Go.prototype.remove=function(e){var t=this.get(e)||[];l(t)||(t=[t]);var n=this;b(t,function(e){var t=n._getOverlayContainer(e.element,!0);if(e&&(ve(e.html),ve(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)}})},Go.prototype.show=function(){Vo(this._overlayRoot)},Go.prototype.hide=function(){Vo(this._overlayRoot,!1)},Go.prototype.clear=function(){this._overlays={},this._overlayContainers=[],X(this._overlayRoot)},Go.prototype._updateOverlayContainer=function(e){var t=e.element,n=e.html,i=t.x,r=t.y;if(t.waypoints){var o=ft(t);i=o.x,r=o.y}Wo(n,i,r),G(e.html,"data-container-id",t.id)},Go.prototype._updateOverlay=function(e){var t,n,i=e.position,r=e.htmlContainer,o=e.element,a=i.left,s=i.top;void 0!==i.right&&(t=o.waypoints?ft(o).width:o.width,a=-1*i.right+t);void 0!==i.bottom&&(n=o.waypoints?ft(o).height:o.height,s=-1*i.bottom+n);Wo(r,a||0,s||0)},Go.prototype._createOverlayContainer=function(e){var t=le('<div class="djs-overlays" style="position: absolute" />');this._overlayRoot.appendChild(t);var n={html:t,element:e,overlays:[]};return this._updateOverlayContainer(n),this._overlayContainers.push(n),n},Go.prototype._updateRoot=function(e){var t=e.scale||1,n="matrix("+[t,0,0,t,-1*e.x*t,-1*e.y*t].join(",")+")";Uo(this._overlayRoot,n)},Go.prototype._getOverlayContainer=function(e,t){var n=y(this._overlayContainers,function(t){return t.element===e});return n||t?n:this._createOverlayContainer(e)},Go.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)),m(o)&&(o=le(o)),n=this._getOverlayContainer(r),(t=le('<div class="djs-overlay" data-overlay-id="'+i+'" style="position: absolute">')).appendChild(o),e.type&&K(t).add("djs-overlay-"+e.type),e.htmlContainer=t,n.overlays.push(e),n.html.appendChild(t),this._overlays[i]=e,this._updateOverlay(e),this._updateOverlayVisibilty(e,this._canvas.viewbox())},Go.prototype._updateOverlayVisibilty=function(e,t){var n=e.show,i=n&&n.minZoom,r=n&&n.maxZoom,o=e.htmlContainer,a=!0;n&&((p(i)&&i>t.scale||p(r)&&r<t.scale)&&(a=!1),Vo(o,a)),this._updateOverlayScale(e,t)},Go.prototype._updateOverlayScale=function(e,t){var n,i,r,o=e.scale,a=e.htmlContainer,s="";!0!==o&&(!1===o?(n=1,i=1):(n=o.min,i=o.max),p(n)&&t.scale<n&&(r=(1/t.scale||1)*n),p(i)&&t.scale>i&&(r=(1/t.scale||1)*i)),p(r)&&(s="scale("+r+","+r+")"),Uo(a,s)},Go.prototype._updateOverlaysVisibilty=function(e){var t=this;b(this._overlays,function(n){t._updateOverlayVisibilty(n,e)})},Go.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;b(t.get({element:n}),function(e){t.remove(e.id)});var i=t._getOverlayContainer(n);if(i){ve(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&&(b(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&&K(n.html)[e.add?"add":"remove"](e.marker)}),e.on("diagram.clear",this.clear,this)};var qo={__init__:["overlays"],overlays:["type",Go]};function Ko(e){Ni.call(this,e)}function Yo(e){return!e.altKey&&(e.ctrlKey||e.metaKey)}function Xo(e,t){return-1!==(e=l(e)?e:[e]).indexOf(t.key)||-1!==e.indexOf(t.keyCode)}function Zo(e){return e.shiftKey}n(Ko,Ni),Ko.prototype._modules=[xo,vr,Fo,qo],Ko.prototype._moddleExtensions={};function Qo(e,t){var n=this;this._config=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()}),t.on("diagram.init",function(){n._fire("init")}),t.on("attach",function(){e&&e.bindTo&&n.bind(e.bindTo)}),t.on("detach",function(){n.unbind()})}Qo.$inject=["config.keyboard","eventBus"],Qo.prototype._keydownHandler=function(e){this._keyHandler(e,"keyboard.keydown")},Qo.prototype._keyupHandler=function(e){this._keyHandler(e,"keyboard.keyup")},Qo.prototype._keyHandler=function(e,t){if(!function(e){return e&&(J(e,"input, textarea")||"true"===e.contentEditable)}(e.target)){var n={keyEvent:e};this._eventBus.fire(t||"keyboard.keydown",n)&&e.preventDefault()}},Qo.prototype.bind=function(e){this.unbind(),this._node=e,ce.bind(e,"keydown",this._keydownHandler,!0),ce.bind(e,"keyup",this._keyupHandler,!0),this._fire("bind")},Qo.prototype.getBinding=function(){return this._node},Qo.prototype.unbind=function(){var e=this._node;e&&(this._fire("unbind"),ce.unbind(e,"keydown",this._keydownHandler,!0),ce.unbind(e,"keyup",this._keyupHandler,!0)),this._node=null},Qo.prototype._fire=function(e){this._eventBus.fire("keyboard."+e,{node:this._node})},Qo.prototype.addListener=function(e,t,n){f(e)&&(n=t,t=e,e=1e3),this._eventBus.on(n||"keyboard.keydown",e,t)},Qo.prototype.removeListener=function(e,t){this._eventBus.off(t||"keyboard.keydown",e)},Qo.prototype.hasModifier=function(e){return e.ctrlKey||e.metaKey||e.shiftKey||e.altKey},Qo.prototype.isCmd=Yo,Qo.prototype.isShift=Zo,Qo.prototype.isKey=Xo;var Jo=500,ea=["c","C",67],ta=["v","V",86],na=["y","Y",89],ia=["z","Z",90];function ra(e,t){var n=this;e.on("editorActions.init",Jo,function(e){var i=e.editorActions;n.registerBindings(t,i)})}ra.$inject=["eventBus","keyboard"],ra.prototype.registerBindings=function(e,t){function n(n,i){t.isRegistered(n)&&e.addListener(i)}n("undo",function(e){var n=e.keyEvent;if(Yo(n)&&!Zo(n)&&Xo(ia,n))return t.trigger("undo"),!0}),n("redo",function(e){var n=e.keyEvent;if(Yo(n)&&(Xo(na,n)||Xo(ia,n)&&Zo(n)))return t.trigger("redo"),!0}),n("copy",function(e){var n=e.keyEvent;if(Yo(n)&&Xo(ea,n))return t.trigger("copy"),!0}),n("paste",function(e){var n=e.keyEvent;if(Yo(n)&&Xo(ta,n))return t.trigger("paste"),!0}),n("stepZoom",function(e){var n=e.keyEvent;if(Xo(["+","Add"],n)&&Yo(n))return t.trigger("stepZoom",{value:1}),!0}),n("stepZoom",function(e){var n=e.keyEvent;if(Xo(["-","Subtract"],n)&&Yo(n))return t.trigger("stepZoom",{value:-1}),!0}),n("zoom",function(e){var n=e.keyEvent;if(Xo("0",n)&&Yo(n))return t.trigger("zoom",{value:1}),!0}),n("removeSelection",function(e){if(Xo(["Delete","Del"],e.keyEvent))return t.trigger("removeSelection"),!0})};var oa={__init__:["keyboard","keyboardBindings"],keyboard:["type",Qo],keyboardBindings:["type",ra]},aa={moveSpeed:50,moveSpeedAccelerated:200};function sa(e,t,n){var i=this;this._config=F({},aa,e||{}),t.addListener(function(e){var n=e.keyEvent,r=i._config;if(!t.isCmd(n))return;if(t.isKey(["ArrowLeft","Left","ArrowUp","Up","ArrowDown","Down","ArrowRight","Right"],n)){var o,a=t.isShift(n)?r.moveSpeedAccelerated:r.moveSpeed;switch(n.key){case"ArrowLeft":case"Left":o="left";break;case"ArrowUp":case"Up":o="up";break;case"ArrowRight":case"Right":o="right";break;case"ArrowDown":case"Down":o="down"}return i.moveCanvas({speed:a,direction:o}),!0}}),this.moveCanvas=function(e){var t=0,i=0,r=e.speed/Math.min(Math.sqrt(n.viewbox().scale),1);switch(e.direction){case"left":t=r;break;case"up":i=r;break;case"right":t=-r;break;case"down":i=-r}n.scroll({dx:t,dy:i})}}sa.$inject=["config.keyboardMove","keyboard","canvas"];var ca={__depends__:[oa],__init__:["keyboardMove"],keyboardMove:["type",sa]},pa=/^djs-cursor-.*$/;function ua(e){var t=K(document.body);t.removeMatching(pa),e&&t.add("djs-cursor-"+e)}function la(){ua(null)}var ha=5e3;function da(e,t){function n(){return!1}return t=t||"element.click",e.once(t,ha,n),function(){e.off(t,n)}}function fa(e){return{x:e.x+e.width/2,y:e.y+e.height/2}}function ma(e,t){return{x:e.x-t.x,y:e.y-t.y}}var va=15;function ya(e,t){var n;function i(i){var r,o=n.start,a=So(i),s=ma(a,o);(!n.dragging&&(r=s,Math.sqrt(Math.pow(r.x,2)+Math.pow(r.y,2))>va)&&(n.dragging=!0,da(e),ua("grab")),n.dragging)&&(s=ma(a,n.last||n.start),t.scroll({dx:s.x,dy:s.y}),n.last=a);i.preventDefault()}function r(e){ce.unbind(document,"mousemove",i),ce.unbind(document,"mouseup",r),n=null,la()}e.on("element.mousedown",500,function(e){return function(e){if(ee(e.target,".djs-draggable"))return;if(e.button||e.ctrlKey||e.shiftKey||e.altKey)return;return n={start:So(e)},ce.bind(document,"mousemove",i),ce.bind(document,"mouseup",r),!0}(e.originalEvent)})}ya.$inject=["eventBus","canvas"];var ga={__init__:["moveCanvas"],moveCanvas:["type",ya]};function ba(e){return Math.log(e)/Math.log(10)}function xa(e,t){var n=ba(e.min),i=ba(e.max);return(Math.abs(n)+Math.abs(i))/t}var _a=Math.sign||function(e){return e>=0?1:-1},Ea={min:.2,max:4},wa=.75;function Sa(e,t,n){e=e||{},this._enabled=!1,this._canvas=n,this._container=n._container,this._handleWheel=I(this._handleWheel,this),this._totalDelta=0,this._scale=e.scale||wa;var i=this;t.on("canvas.init",function(t){i._init(!1!==e.enabled)})}Sa.$inject=["config.zoomScroll","eventBus","canvas"],Sa.prototype.scroll=function(e){this._canvas.scroll(e)},Sa.prototype.reset=function(){this._canvas.zoom("fit-viewport")},Sa.prototype.zoom=function(e,t){var n=xa(Ea,20);this._totalDelta+=e,Math.abs(this._totalDelta)>.1&&(this._zoom(e,t,n),this._totalDelta=0)},Sa.prototype._handleWheel=function(e){if(!ee(e.target,".djs-scrollable",!0)){var t=this._container;e.preventDefault();var n,i=e.ctrlKey,r=e.shiftKey,o=-1*this._scale;if(o*=i?0===e.deltaMode?.02:.32:0===e.deltaMode?1:16,i){var a=t.getBoundingClientRect(),s={x:e.clientX-a.left,y:e.clientY-a.top};n=Math.sqrt(Math.pow(e.deltaY,2)+Math.pow(e.deltaX,2))*_a(e.deltaY)*o,this.zoom(n,s)}else n=r?{dx:o*e.deltaY,dy:0}:{dx:o*e.deltaX,dy:o*e.deltaY},this.scroll(n)}},Sa.prototype.stepZoom=function(e,t){var n=xa(Ea,10);this._zoom(e,t,n)},Sa.prototype._zoom=function(e,t,n){var i=this._canvas,r=e>0?1:-1,o=ba(i.zoom()),a=Math.round(o/n)*n;a+=n*r;var s,c,p=Math.pow(10,a);i.zoom((s=Ea,c=p,Math.max(s.min,Math.min(s.max,c))),t)},Sa.prototype.toggle=function(e){var t=this._container,n=this._handleWheel,i=this._enabled;return void 0===e&&(e=!i),i!==e&&ce[e?"bind":"unbind"](t,"wheel",n,!1),this._enabled=e,e},Sa.prototype._init=function(e){this.toggle(e)};var Ca={__init__:["zoomScroll"],zoomScroll:["type",Sa]};function Ta(e){Ko.call(this,e)}n(Ta,Ko),Ta.prototype._navigationModules=[ca,ga,Ca],Ta.prototype._modules=[].concat(Ko.prototype._modules,Ta.prototype._navigationModules);var Ra=t(function(e){
- /*! Hammer.JS - v2.0.7 - 2016-04-22
- * http://hammerjs.github.io/
- *
- * Copyright (c) 2016 Jorik Tangelder;
- * Licensed under the MIT license */
- !function(t,n,i,r){var o,a=["","webkit","Moz","MS","ms","o"],s=n.createElement("div"),c="function",p=Math.round,u=Math.abs,l=Date.now;function h(e,t,n){return setTimeout(b(e,n),t)}function d(e,t,n){return!!Array.isArray(e)&&(f(e,n[t],n),!0)}function f(e,t,n){var i;if(e)if(e.forEach)e.forEach(t,n);else if(e.length!==r)for(i=0;i<e.length;)t.call(n,e[i],i,e),i++;else for(i in e)e.hasOwnProperty(i)&&t.call(n,e[i],i,e)}function m(e,n,i){var r="DEPRECATED METHOD: "+n+"\n"+i+" AT \n";return function(){var n=new Error("get-stack-trace"),i=n&&n.stack?n.stack.replace(/^[^\(]+?[\n$]/gm,"").replace(/^\s+at\s+/gm,"").replace(/^Object.<anonymous>\s*\(/gm,"{anonymous}()@"):"Unknown Stack Trace",o=t.console&&(t.console.warn||t.console.log);return o&&o.call(t.console,r,i),e.apply(this,arguments)}}o="function"!=typeof Object.assign?function(e){if(e===r||null===e)throw new TypeError("Cannot convert undefined or null to object");for(var t=Object(e),n=1;n<arguments.length;n++){var i=arguments[n];if(i!==r&&null!==i)for(var o in i)i.hasOwnProperty(o)&&(t[o]=i[o])}return t}:Object.assign;var v=m(function(e,t,n){for(var i=Object.keys(t),o=0;o<i.length;)(!n||n&&e[i[o]]===r)&&(e[i[o]]=t[i[o]]),o++;return e},"extend","Use `assign`."),y=m(function(e,t){return v(e,t,!0)},"merge","Use `assign`.");function g(e,t,n){var i,r=t.prototype;(i=e.prototype=Object.create(r)).constructor=e,i._super=r,n&&o(i,n)}function b(e,t){return function(){return e.apply(t,arguments)}}function x(e,t){return typeof e==c?e.apply(t&&t[0]||r,t):e}function _(e,t){return e===r?t:e}function E(e,t,n){f(T(t),function(t){e.addEventListener(t,n,!1)})}function w(e,t,n){f(T(t),function(t){e.removeEventListener(t,n,!1)})}function S(e,t){for(;e;){if(e==t)return!0;e=e.parentNode}return!1}function C(e,t){return e.indexOf(t)>-1}function T(e){return e.trim().split(/\s+/g)}function R(e,t,n){if(e.indexOf&&!n)return e.indexOf(t);for(var i=0;i<e.length;){if(n&&e[i][n]==t||!n&&e[i]===t)return i;i++}return-1}function A(e){return Array.prototype.slice.call(e,0)}function k(e,t,n){for(var i=[],r=[],o=0;o<e.length;){var a=t?e[o][t]:e[o];R(r,a)<0&&i.push(e[o]),r[o]=a,o++}return n&&(i=t?i.sort(function(e,n){return e[t]>n[t]}):i.sort()),i}function P(e,t){for(var n,i,o=t[0].toUpperCase()+t.slice(1),s=0;s<a.length;){if((i=(n=a[s])?n+o:t)in e)return i;s++}return r}var M=1;function D(e){var n=e.ownerDocument||e;return n.defaultView||n.parentWindow||t}var B="ontouchstart"in t,N=P(t,"PointerEvent")!==r,O=B&&/mobile|tablet|ip(ad|hone|od)|android/i.test(navigator.userAgent),j=25,L=1,I=2,z=4,F=8,$=1,H=2,G=4,W=8,V=16,U=H|G,q=W|V,K=U|q,Y=["x","y"],X=["clientX","clientY"];function Z(e,t){var n=this;this.manager=e,this.callback=t,this.element=e.element,this.target=e.options.inputTarget,this.domHandler=function(t){x(e.options.enable,[e])&&n.handler(t)},this.init()}function Q(e,t,n){var i=n.pointers.length,o=n.changedPointers.length,a=t&L&&i-o==0,s=t&(z|F)&&i-o==0;n.isFirst=!!a,n.isFinal=!!s,a&&(e.session={}),n.eventType=t,function(e,t){var n=e.session,i=t.pointers,o=i.length;n.firstInput||(n.firstInput=J(t));o>1&&!n.firstMultiple?n.firstMultiple=J(t):1===o&&(n.firstMultiple=!1);var a=n.firstInput,s=n.firstMultiple,c=s?s.center:a.center,p=t.center=ee(i);t.timeStamp=l(),t.deltaTime=t.timeStamp-a.timeStamp,t.angle=re(c,p),t.distance=ie(c,p),function(e,t){var n=t.center,i=e.offsetDelta||{},r=e.prevDelta||{},o=e.prevInput||{};t.eventType!==L&&o.eventType!==z||(r=e.prevDelta={x:o.deltaX||0,y:o.deltaY||0},i=e.offsetDelta={x:n.x,y:n.y});t.deltaX=r.x+(n.x-i.x),t.deltaY=r.y+(n.y-i.y)}(n,t),t.offsetDirection=ne(t.deltaX,t.deltaY);var h=te(t.deltaTime,t.deltaX,t.deltaY);t.overallVelocityX=h.x,t.overallVelocityY=h.y,t.overallVelocity=u(h.x)>u(h.y)?h.x:h.y,t.scale=s?(d=s.pointers,f=i,ie(f[0],f[1],X)/ie(d[0],d[1],X)):1,t.rotation=s?function(e,t){return re(t[1],t[0],X)+re(e[1],e[0],X)}(s.pointers,i):0,t.maxPointers=n.prevInput?t.pointers.length>n.prevInput.maxPointers?t.pointers.length:n.prevInput.maxPointers:t.pointers.length,function(e,t){var n,i,o,a,s=e.lastInterval||t,c=t.timeStamp-s.timeStamp;if(t.eventType!=F&&(c>j||s.velocity===r)){var p=t.deltaX-s.deltaX,l=t.deltaY-s.deltaY,h=te(c,p,l);i=h.x,o=h.y,n=u(h.x)>u(h.y)?h.x:h.y,a=ne(p,l),e.lastInterval=t}else n=s.velocity,i=s.velocityX,o=s.velocityY,a=s.direction;t.velocity=n,t.velocityX=i,t.velocityY=o,t.direction=a}(n,t);var d,f;var m=e.element;S(t.srcEvent.target,m)&&(m=t.srcEvent.target);t.target=m}(e,n),e.emit("hammer.input",n),e.recognize(n),e.session.prevInput=n}function J(e){for(var t=[],n=0;n<e.pointers.length;)t[n]={clientX:p(e.pointers[n].clientX),clientY:p(e.pointers[n].clientY)},n++;return{timeStamp:l(),pointers:t,center:ee(t),deltaX:e.deltaX,deltaY:e.deltaY}}function ee(e){var t=e.length;if(1===t)return{x:p(e[0].clientX),y:p(e[0].clientY)};for(var n=0,i=0,r=0;r<t;)n+=e[r].clientX,i+=e[r].clientY,r++;return{x:p(n/t),y:p(i/t)}}function te(e,t,n){return{x:t/e||0,y:n/e||0}}function ne(e,t){return e===t?$:u(e)>=u(t)?e<0?H:G:t<0?W:V}function ie(e,t,n){n||(n=Y);var i=t[n[0]]-e[n[0]],r=t[n[1]]-e[n[1]];return Math.sqrt(i*i+r*r)}function re(e,t,n){n||(n=Y);var i=t[n[0]]-e[n[0]],r=t[n[1]]-e[n[1]];return 180*Math.atan2(r,i)/Math.PI}Z.prototype={handler:function(){},init:function(){this.evEl&&E(this.element,this.evEl,this.domHandler),this.evTarget&&E(this.target,this.evTarget,this.domHandler),this.evWin&&E(D(this.element),this.evWin,this.domHandler)},destroy:function(){this.evEl&&w(this.element,this.evEl,this.domHandler),this.evTarget&&w(this.target,this.evTarget,this.domHandler),this.evWin&&w(D(this.element),this.evWin,this.domHandler)}};var oe={mousedown:L,mousemove:I,mouseup:z},ae="mousedown",se="mousemove mouseup";function ce(){this.evEl=ae,this.evWin=se,this.pressed=!1,Z.apply(this,arguments)}g(ce,Z,{handler:function(e){var t=oe[e.type];t&L&&0===e.button&&(this.pressed=!0),t&I&&1!==e.which&&(t=z),this.pressed&&(t&z&&(this.pressed=!1),this.callback(this.manager,t,{pointers:[e],changedPointers:[e],pointerType:"mouse",srcEvent:e}))}});var pe={pointerdown:L,pointermove:I,pointerup:z,pointercancel:F,pointerout:F},ue={2:"touch",3:"pen",4:"mouse",5:"kinect"},le="pointerdown",he="pointermove pointerup pointercancel";function de(){this.evEl=le,this.evWin=he,Z.apply(this,arguments),this.store=this.manager.session.pointerEvents=[]}t.MSPointerEvent&&!t.PointerEvent&&(le="MSPointerDown",he="MSPointerMove MSPointerUp MSPointerCancel"),g(de,Z,{handler:function(e){var t=this.store,n=!1,i=e.type.toLowerCase().replace("ms",""),r=pe[i],o=ue[e.pointerType]||e.pointerType,a="touch"==o,s=R(t,e.pointerId,"pointerId");r&L&&(0===e.button||a)?s<0&&(t.push(e),s=t.length-1):r&(z|F)&&(n=!0),s<0||(t[s]=e,this.callback(this.manager,r,{pointers:t,changedPointers:[e],pointerType:o,srcEvent:e}),n&&t.splice(s,1))}});var fe={touchstart:L,touchmove:I,touchend:z,touchcancel:F},me="touchstart",ve="touchstart touchmove touchend touchcancel";function ye(){this.evTarget=me,this.evWin=ve,this.started=!1,Z.apply(this,arguments)}g(ye,Z,{handler:function(e){var t=fe[e.type];if(t===L&&(this.started=!0),this.started){var n=function(e,t){var n=A(e.touches),i=A(e.changedTouches);t&(z|F)&&(n=k(n.concat(i),"identifier",!0));return[n,i]}.call(this,e,t);t&(z|F)&&n[0].length-n[1].length==0&&(this.started=!1),this.callback(this.manager,t,{pointers:n[0],changedPointers:n[1],pointerType:"touch",srcEvent:e})}}});var ge={touchstart:L,touchmove:I,touchend:z,touchcancel:F},be="touchstart touchmove touchend touchcancel";function xe(){this.evTarget=be,this.targetIds={},Z.apply(this,arguments)}g(xe,Z,{handler:function(e){var t=ge[e.type],n=function(e,t){var n=A(e.touches),i=this.targetIds;if(t&(L|I)&&1===n.length)return i[n[0].identifier]=!0,[n,n];var r,o,a=A(e.changedTouches),s=[],c=this.target;if(o=n.filter(function(e){return S(e.target,c)}),t===L)for(r=0;r<o.length;)i[o[r].identifier]=!0,r++;r=0;for(;r<a.length;)i[a[r].identifier]&&s.push(a[r]),t&(z|F)&&delete i[a[r].identifier],r++;if(!s.length)return;return[k(o.concat(s),"identifier",!0),s]}.call(this,e,t);n&&this.callback(this.manager,t,{pointers:n[0],changedPointers:n[1],pointerType:"touch",srcEvent:e})}});var _e=2500,Ee=25;function we(){Z.apply(this,arguments);var e=b(this.handler,this);this.touch=new xe(this.manager,e),this.mouse=new ce(this.manager,e),this.primaryTouch=null,this.lastTouches=[]}function Se(e){var t=e.changedPointers[0];if(t.identifier===this.primaryTouch){var n={x:t.clientX,y:t.clientY};this.lastTouches.push(n);var i=this.lastTouches;setTimeout(function(){var e=i.indexOf(n);e>-1&&i.splice(e,1)},_e)}}g(we,Z,{handler:function(e,t,n){var i="touch"==n.pointerType,r="mouse"==n.pointerType;if(!(r&&n.sourceCapabilities&&n.sourceCapabilities.firesTouchEvents)){if(i)(function(e,t){e&L?(this.primaryTouch=t.changedPointers[0].identifier,Se.call(this,t)):e&(z|F)&&Se.call(this,t)}).call(this,t,n);else if(r&&function(e){for(var t=e.srcEvent.clientX,n=e.srcEvent.clientY,i=0;i<this.lastTouches.length;i++){var r=this.lastTouches[i],o=Math.abs(t-r.x),a=Math.abs(n-r.y);if(o<=Ee&&a<=Ee)return!0}return!1}.call(this,n))return;this.callback(e,t,n)}},destroy:function(){this.touch.destroy(),this.mouse.destroy()}});var Ce=P(s.style,"touchAction"),Te=Ce!==r,Re="auto",Ae="manipulation",ke="none",Pe="pan-x",Me="pan-y",De=function(){if(!Te)return!1;var e={},n=t.CSS&&t.CSS.supports;return["auto","manipulation","pan-y","pan-x","pan-x pan-y","none"].forEach(function(i){e[i]=!n||t.CSS.supports("touch-action",i)}),e}();function Be(e,t){this.manager=e,this.set(t)}Be.prototype={set:function(e){"compute"==e&&(e=this.compute()),Te&&this.manager.element.style&&De[e]&&(this.manager.element.style[Ce]=e),this.actions=e.toLowerCase().trim()},update:function(){this.set(this.manager.options.touchAction)},compute:function(){var e=[];return f(this.manager.recognizers,function(t){x(t.options.enable,[t])&&(e=e.concat(t.getTouchAction()))}),function(e){if(C(e,ke))return ke;var t=C(e,Pe),n=C(e,Me);if(t&&n)return ke;if(t||n)return t?Pe:Me;if(C(e,Ae))return Ae;return Re}(e.join(" "))},preventDefaults:function(e){var t=e.srcEvent,n=e.offsetDirection;if(this.manager.session.prevented)t.preventDefault();else{var i=this.actions,r=C(i,ke)&&!De[ke],o=C(i,Me)&&!De[Me],a=C(i,Pe)&&!De[Pe];if(r){var s=1===e.pointers.length,c=e.distance<2,p=e.deltaTime<250;if(s&&c&&p)return}if(!a||!o)return r||o&&n&U||a&&n&q?this.preventSrc(t):void 0}},preventSrc:function(e){this.manager.session.prevented=!0,e.preventDefault()}};var Ne=1,Oe=2,je=4,Le=8,Ie=Le,ze=16;function Fe(e){this.options=o({},this.defaults,e||{}),this.id=M++,this.manager=null,this.options.enable=_(this.options.enable,!0),this.state=Ne,this.simultaneous={},this.requireFail=[]}function $e(e){return e&ze?"cancel":e&Le?"end":e&je?"move":e&Oe?"start":""}function He(e){return e==V?"down":e==W?"up":e==H?"left":e==G?"right":""}function Ge(e,t){var n=t.manager;return n?n.get(e):e}function We(){Fe.apply(this,arguments)}function Ve(){We.apply(this,arguments),this.pX=null,this.pY=null}function Ue(){We.apply(this,arguments)}function qe(){Fe.apply(this,arguments),this._timer=null,this._input=null}function Ke(){We.apply(this,arguments)}function Ye(){We.apply(this,arguments)}function Xe(){Fe.apply(this,arguments),this.pTime=!1,this.pCenter=!1,this._timer=null,this._input=null,this.count=0}function Ze(e,t){return(t=t||{}).recognizers=_(t.recognizers,Ze.defaults.preset),new Qe(e,t)}Fe.prototype={defaults:{},set:function(e){return o(this.options,e),this.manager&&this.manager.touchAction.update(),this},recognizeWith:function(e){if(d(e,"recognizeWith",this))return this;var t=this.simultaneous;return t[(e=Ge(e,this)).id]||(t[e.id]=e,e.recognizeWith(this)),this},dropRecognizeWith:function(e){return d(e,"dropRecognizeWith",this)?this:(e=Ge(e,this),delete this.simultaneous[e.id],this)},requireFailure:function(e){if(d(e,"requireFailure",this))return this;var t=this.requireFail;return-1===R(t,e=Ge(e,this))&&(t.push(e),e.requireFailure(this)),this},dropRequireFailure:function(e){if(d(e,"dropRequireFailure",this))return this;e=Ge(e,this);var t=R(this.requireFail,e);return t>-1&&this.requireFail.splice(t,1),this},hasRequireFailures:function(){return this.requireFail.length>0},canRecognizeWith:function(e){return!!this.simultaneous[e.id]},emit:function(e){var t=this,n=this.state;function i(n){t.manager.emit(n,e)}n<Le&&i(t.options.event+$e(n)),i(t.options.event),e.additionalEvent&&i(e.additionalEvent),n>=Le&&i(t.options.event+$e(n))},tryEmit:function(e){if(this.canEmit())return this.emit(e);this.state=32},canEmit:function(){for(var e=0;e<this.requireFail.length;){if(!(this.requireFail[e].state&(32|Ne)))return!1;e++}return!0},recognize:function(e){var t=o({},e);if(!x(this.options.enable,[this,t]))return this.reset(),void(this.state=32);this.state&(Ie|ze|32)&&(this.state=Ne),this.state=this.process(t),this.state&(Oe|je|Le|ze)&&this.tryEmit(t)},process:function(e){},getTouchAction:function(){},reset:function(){}},g(We,Fe,{defaults:{pointers:1},attrTest:function(e){var t=this.options.pointers;return 0===t||e.pointers.length===t},process:function(e){var t=this.state,n=e.eventType,i=t&(Oe|je),r=this.attrTest(e);return i&&(n&F||!r)?t|ze:i||r?n&z?t|Le:t&Oe?t|je:Oe:32}}),g(Ve,We,{defaults:{event:"pan",threshold:10,pointers:1,direction:K},getTouchAction:function(){var e=this.options.direction,t=[];return e&U&&t.push(Me),e&q&&t.push(Pe),t},directionTest:function(e){var t=this.options,n=!0,i=e.distance,r=e.direction,o=e.deltaX,a=e.deltaY;return r&t.direction||(t.direction&U?(r=0===o?$:o<0?H:G,n=o!=this.pX,i=Math.abs(e.deltaX)):(r=0===a?$:a<0?W:V,n=a!=this.pY,i=Math.abs(e.deltaY))),e.direction=r,n&&i>t.threshold&&r&t.direction},attrTest:function(e){return We.prototype.attrTest.call(this,e)&&(this.state&Oe||!(this.state&Oe)&&this.directionTest(e))},emit:function(e){this.pX=e.deltaX,this.pY=e.deltaY;var t=He(e.direction);t&&(e.additionalEvent=this.options.event+t),this._super.emit.call(this,e)}}),g(Ue,We,{defaults:{event:"pinch",threshold:0,pointers:2},getTouchAction:function(){return[ke]},attrTest:function(e){return this._super.attrTest.call(this,e)&&(Math.abs(e.scale-1)>this.options.threshold||this.state&Oe)},emit:function(e){if(1!==e.scale){var t=e.scale<1?"in":"out";e.additionalEvent=this.options.event+t}this._super.emit.call(this,e)}}),g(qe,Fe,{defaults:{event:"press",pointers:1,time:251,threshold:9},getTouchAction:function(){return[Re]},process:function(e){var t=this.options,n=e.pointers.length===t.pointers,i=e.distance<t.threshold,r=e.deltaTime>t.time;if(this._input=e,!i||!n||e.eventType&(z|F)&&!r)this.reset();else if(e.eventType&L)this.reset(),this._timer=h(function(){this.state=Ie,this.tryEmit()},t.time,this);else if(e.eventType&z)return Ie;return 32},reset:function(){clearTimeout(this._timer)},emit:function(e){this.state===Ie&&(e&&e.eventType&z?this.manager.emit(this.options.event+"up",e):(this._input.timeStamp=l(),this.manager.emit(this.options.event,this._input)))}}),g(Ke,We,{defaults:{event:"rotate",threshold:0,pointers:2},getTouchAction:function(){return[ke]},attrTest:function(e){return this._super.attrTest.call(this,e)&&(Math.abs(e.rotation)>this.options.threshold||this.state&Oe)}}),g(Ye,We,{defaults:{event:"swipe",threshold:10,velocity:.3,direction:U|q,pointers:1},getTouchAction:function(){return Ve.prototype.getTouchAction.call(this)},attrTest:function(e){var t,n=this.options.direction;return n&(U|q)?t=e.overallVelocity:n&U?t=e.overallVelocityX:n&q&&(t=e.overallVelocityY),this._super.attrTest.call(this,e)&&n&e.offsetDirection&&e.distance>this.options.threshold&&e.maxPointers==this.options.pointers&&u(t)>this.options.velocity&&e.eventType&z},emit:function(e){var t=He(e.offsetDirection);t&&this.manager.emit(this.options.event+t,e),this.manager.emit(this.options.event,e)}}),g(Xe,Fe,{defaults:{event:"tap",pointers:1,taps:1,interval:300,time:250,threshold:9,posThreshold:10},getTouchAction:function(){return[Ae]},process:function(e){var t=this.options,n=e.pointers.length===t.pointers,i=e.distance<t.threshold,r=e.deltaTime<t.time;if(this.reset(),e.eventType&L&&0===this.count)return this.failTimeout();if(i&&r&&n){if(e.eventType!=z)return this.failTimeout();var o=!this.pTime||e.timeStamp-this.pTime<t.interval,a=!this.pCenter||ie(this.pCenter,e.center)<t.posThreshold;if(this.pTime=e.timeStamp,this.pCenter=e.center,a&&o?this.count+=1:this.count=1,this._input=e,0===this.count%t.taps)return this.hasRequireFailures()?(this._timer=h(function(){this.state=Ie,this.tryEmit()},t.interval,this),Oe):Ie}return 32},failTimeout:function(){return this._timer=h(function(){this.state=32},this.options.interval,this),32},reset:function(){clearTimeout(this._timer)},emit:function(){this.state==Ie&&(this._input.tapCount=this.count,this.manager.emit(this.options.event,this._input))}}),Ze.VERSION="2.0.7",Ze.defaults={domEvents:!1,touchAction:"compute",enable:!0,inputTarget:null,inputClass:null,preset:[[Ke,{enable:!1}],[Ue,{enable:!1},["rotate"]],[Ye,{direction:U}],[Ve,{direction:U},["swipe"]],[Xe],[Xe,{event:"doubletap",taps:2},["tap"]],[qe]],cssProps:{userSelect:"none",touchSelect:"none",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}};function Qe(e,t){var n;this.options=o({},Ze.defaults,t||{}),this.options.inputTarget=this.options.inputTarget||e,this.handlers={},this.session={},this.recognizers=[],this.oldCssProps={},this.element=e,this.input=new((n=this).options.inputClass||(N?de:O?xe:B?we:ce))(n,Q),this.touchAction=new Be(this,this.options.touchAction),Je(this,!0),f(this.options.recognizers,function(e){var t=this.add(new e[0](e[1]));e[2]&&t.recognizeWith(e[2]),e[3]&&t.requireFailure(e[3])},this)}function Je(e,t){var n,i=e.element;i.style&&(f(e.options.cssProps,function(r,o){n=P(i.style,o),t?(e.oldCssProps[n]=i.style[n],i.style[n]=r):i.style[n]=e.oldCssProps[n]||""}),t||(e.oldCssProps={}))}Qe.prototype={set:function(e){return o(this.options,e),e.touchAction&&this.touchAction.update(),e.inputTarget&&(this.input.destroy(),this.input.target=e.inputTarget,this.input.init()),this},stop:function(e){this.session.stopped=e?2:1},recognize:function(e){var t=this.session;if(!t.stopped){var n;this.touchAction.preventDefaults(e);var i=this.recognizers,r=t.curRecognizer;(!r||r&&r.state&Ie)&&(r=t.curRecognizer=null);for(var o=0;o<i.length;)n=i[o],2===t.stopped||r&&n!=r&&!n.canRecognizeWith(r)?n.reset():n.recognize(e),!r&&n.state&(Oe|je|Le)&&(r=t.curRecognizer=n),o++}},get:function(e){if(e instanceof Fe)return e;for(var t=this.recognizers,n=0;n<t.length;n++)if(t[n].options.event==e)return t[n];return null},add:function(e){if(d(e,"add",this))return this;var t=this.get(e.options.event);return t&&this.remove(t),this.recognizers.push(e),e.manager=this,this.touchAction.update(),e},remove:function(e){if(d(e,"remove",this))return this;if(e=this.get(e)){var t=this.recognizers,n=R(t,e);-1!==n&&(t.splice(n,1),this.touchAction.update())}return this},on:function(e,t){if(e!==r&&t!==r){var n=this.handlers;return f(T(e),function(e){n[e]=n[e]||[],n[e].push(t)}),this}},off:function(e,t){if(e!==r){var n=this.handlers;return f(T(e),function(e){t?n[e]&&n[e].splice(R(n[e],t),1):delete n[e]}),this}},emit:function(e,t){this.options.domEvents&&function(e,t){var i=n.createEvent("Event");i.initEvent(e,!0,!0),i.gesture=t,t.target.dispatchEvent(i)}(e,t);var i=this.handlers[e]&&this.handlers[e].slice();if(i&&i.length){t.type=e,t.preventDefault=function(){t.srcEvent.preventDefault()};for(var r=0;r<i.length;)i[r](t),r++}},destroy:function(){this.element&&Je(this,!1),this.handlers={},this.session={},this.input.destroy(),this.element=null}},o(Ze,{INPUT_START:L,INPUT_MOVE:I,INPUT_END:z,INPUT_CANCEL:F,STATE_POSSIBLE:Ne,STATE_BEGAN:Oe,STATE_CHANGED:je,STATE_ENDED:Le,STATE_RECOGNIZED:Ie,STATE_CANCELLED:ze,STATE_FAILED:32,DIRECTION_NONE:$,DIRECTION_LEFT:H,DIRECTION_RIGHT:G,DIRECTION_UP:W,DIRECTION_DOWN:V,DIRECTION_HORIZONTAL:U,DIRECTION_VERTICAL:q,DIRECTION_ALL:K,Manager:Qe,Input:Z,TouchAction:Be,TouchInput:xe,MouseInput:ce,PointerEventInput:de,TouchMouseInput:we,SingleTouchInput:ye,Recognizer:Fe,AttrRecognizer:We,Tap:Xe,Pan:Ve,Swipe:Ye,Pinch:Ue,Rotate:Ke,Press:qe,on:E,off:w,each:f,merge:y,extend:v,assign:o,inherit:g,bindFn:b,prefixed:P}),(void 0!==t?t:"undefined"!=typeof self?self:{}).Hammer=Ze,"function"==typeof r&&r.amd?r(function(){return Ze}):e.exports?e.exports=Ze:t.Hammer=Ze}(window,document)}),Aa=.2,ka=4,Pa=["mousedown","mouseup","mouseover","mouseout","click","dblclick"];function Ma(e,t){return t.get(e,!1)}function Da(e){e.preventDefault(),e.stopPropagation(),"function"==typeof e.stopImmediatePropagation&&e.stopImmediatePropagation()}function Ba(e){function t(t){setTimeout(function(){b(Pa,function(t){ce.unbind(e,t,Da,!0)})},500)}ce.bind(e,"touchstart",function(t){b(Pa,function(t){ce.bind(e,t,Da,!0)})},!0),ce.bind(e,"touchend",t,!0),ce.bind(e,"touchcancel",t,!0);var n=new Ra.Manager(e,{inputClass:Ra.TouchInput,recognizers:[]}),i=new Ra.Tap,r=new Ra.Pan({threshold:10}),o=new Ra.Press,a=new Ra.Pinch,s=new Ra.Tap({event:"doubletap",taps:2});return a.requireFailure(r),a.requireFailure(o),n.add([r,o,a,s,i]),n.reset=function(e){var t=this.recognizers,i=this.session;i.stopped||(n.stop(e),setTimeout(function(){var e,n;for(e=0;n=t[e];e++)n.reset(),n.state=8;i.curRecognizer=null},0))},n.on("hammer.input",function(e){e.srcEvent.defaultPrevented&&n.reset(!0)}),n}function Na(e,t,n,i,r){var o,a=Ma("dragging",e),s=Ma("move",e),c=Ma("contextPad",e),p=Ma("palette",e);function u(e){return function(t){r.fire(e,t)}}function l(e){return ee(e,"svg, .djs-element",!0)}function h(e){function n(e){var n=l(e.target),r=n&&i.get(n);if(s&&t.getRootElement()!==r)return s.start(e,r,!0);!function(e){var n=0,i=0;function r(e){var r=e.deltaX-n,o=e.deltaY-i;t.scroll({dx:r,dy:o}),n=e.deltaX,i=e.deltaY}function a(e){o.off("panmove",r),o.off("panend",a),o.off("pancancel",a)}o.on("panmove",r),o.on("panend",a),o.on("pancancel",a)}()}(o=Ba(e)).on("doubletap",u("element.dblclick")),o.on("tap",u("element.click")),o.on("panstart",n),o.on("press",n),o.on("pinchstart",function(e){var n=t.zoom(),i=e.center;function r(e){var r=1-(1-e.scale)/1.5,o=Math.max(Aa,Math.min(ka,r*n));t.zoom(o,i),Da(e)}function a(e){o.off("pinchmove",r),o.off("pinchend",a),o.off("pinchcancel",a),o.reset(!0)}o.on("pinchmove",r),o.on("pinchend",a),o.on("pinchcancel",a)})}a&&n.on("drag.move",function(e){var t=e.originalEvent;if(t&&!(t instanceof MouseEvent)){var n=So(t),r=l(document.elementFromPoint(n.x,n.y)),o=r&&i.get(r);o!==e.hover&&(e.hover&&a.out(e),o&&(a.hover({element:o,gfx:r}),e.hover=o,e.hoverGfx=r))}}),c&&n.on("contextPad.create",function(e){var t=Ba(e.pad.html);t.on("panstart",function(e){c.trigger("dragstart",e,!0)}),t.on("press",function(e){c.trigger("dragstart",e,!0)}),t.on("tap",function(e){c.trigger("click",e)})}),p&&n.on("palette.create",function(e){var t=Ba(e.container);t.on("panstart",function(e){p.trigger("dragstart",e,!0)}),t.on("press",function(e){p.trigger("dragstart",e,!0)}),t.on("tap",function(e){p.trigger("click",e)})}),n.on("canvas.init",function(e){h(e.svg)})}function Oa(e,t){var n=this;t.on("canvas.init",function(e){n.addBBoxMarker(e.svg)})}Na.$inject=["injector","canvas","eventBus","elementRegistry","interactionEvents","touchFix"],Oa.$inject=["canvas","eventBus"],Oa.prototype.addBBoxMarker=function(e){var t={fill:"none",class:"outer-bound-marker"},n=Oe("rect");Ee(n,{x:-1e4,y:1e4,width:10,height:10}),Ee(n,t),ge(e,n);var i=Oe("rect");Ee(i,{x:1e4,y:1e4,width:10,height:10}),Ee(i,t),ge(e,i)};var ja={__depends__:[{__depends__:[Po],__init__:["touchInteractionEvents"],touchInteractionEvents:["type",Na],touchFix:["type",Oa]}]};function La(e){return e&&e[e.length-1]}function Ia(e){return e.y}function za(e){return e.x}var Fa={left:za,center:za,right:function(e){return e.x+e.width},top:Ia,middle:Ia,bottom:function(e){return e.y+e.height}};function $a(e){this._modeling=e}$a.$inject=["modeling"],$a.prototype._getOrientationDetails=function(e){var t="x",n="width";return-1!==["top","bottom","middle"].indexOf(e)&&(t="y",n="height"),{axis:t,dimension:n}},$a.prototype._isType=function(e,t){return-1!==t.indexOf(e)},$a.prototype._alignmentPosition=function(e,t){var n,i,r,o=this._getOrientationDetails(e),a=o.axis,s=o.dimension,c={},p={},u=!1;if(this._isType(e,["left","top"]))c[e]=t[0][a];else if(this._isType(e,["right","bottom"]))r=La(t),c[e]=r[a]+r[s];else if(this._isType(e,["center","middle"])){if(b(t,function(e){var t=e[a]+Math.round(e[s]/2);p[t]?p[t].elements.push(e):p[t]={elements:[e],center:t}}),n=M(p,function(e){return e.elements.length>1&&(u=!0),e.elements.length}),u)return c[e]=La(n).center,c;i=t[0],r=La(t=M(t,function(e){return e[a]+e[s]})),c[e]=function(e,t){return Math.round((e[a]+t[a]+t[s])/2)}(i,r)}return c},$a.prototype.trigger=function(e,t){var n=this._modeling,i=M(g(e,function(e){return!(e.waypoints||e.host||e.labelTarget)}),Fa[t]),r=this._alignmentPosition(t,i);n.alignElements(i,r)};var Ha={__init__:["alignElements"],alignElements:["type",$a]},Ga=10,Wa=50,Va=250;function Ua(e,t,n,i){for(var r;r=Ka(e,n,t);)n=i(t,n,r);return n}function qa(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 Ka(e,t,n){var i={x:t.x-n.width/2,y:t.y-n.height/2,width:n.width,height:n.height};return y(function(e){var t=Ya(e);e.host&&(t=t.concat(Ya(e.host)));e.attachers&&(t=t.concat(e.attachers.reduce(function(e,t){return e.concat(Ya(t))},[])));return t}(e),function(e){return e!==n&&"intersect"===fo(e,i,Ga)})}function Ya(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 Xa(){return!0}var Za=100;function Qa(e,t){e.on("autoPlace",Za,function(e){var t=e.shape;return function(e,t,n){n||(n={});var i=n.defaultDistance||Wa,r=ho(e);return{x:uo(e).right+i+t.width/2,y:r.y}}(e.source,t)}),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 Ja(e,t){e.on("autoPlace.end",500,function(e){t.select(e.shape)})}Qa.$inject=["eventBus","modeling"],Ja.$inject=["eventBus","selection"];var es={__init__:["autoPlaceSelectionBehavior"],autoPlace:["type",Qa],autoPlaceSelectionBehavior:["type",Ja]};function ts(e,t){return w(t,function(t){return Ii(e,t)})}function ns(e,t){for("string"==typeof t&&(t=[t]);e=e.parent;)if(ts(e,t))return e;return null}function is(e,t){return Ii(t,"bpmn:TextAnnotation")?function(e,t){var n=uo(e),i={x:n.right+t.width/2,y:n.top-50-t.height/2};return Ua(e,t,i,qa({y:{margin:-30,minDistance:20}}))}(e,t):ts(t,["bpmn:DataObjectReference","bpmn:DataStoreReference"])?function(e,t){var n=uo(e),i={x:n.right-10+t.width/2,y:n.bottom+40+t.width/2};return Ua(e,t,i,qa({x:{margin:30,minDistance:30}}))}(e,t):Ii(t,"bpmn:FlowNode")?function(e,t){var n=uo(e),i=ho(e),r=function(e,t){t||(t={});var n=t.defaultDistance||Wa,i=t.direction||"e",r=t.filter,o=t.getWeight||function(t){return t.source===e?1:-1},a=t.maxDistance||Va,s=t.reference||"start";function c(e,t){return"n"===i?"start"===s?uo(e).top-uo(t).bottom:"center"===s?uo(e).top-ho(t).y:uo(e).top-uo(t).top:"w"===i?"start"===s?uo(e).left-uo(t).right:"center"===s?uo(e).left-ho(t).x:uo(e).left-uo(t).left:"s"===i?"start"===s?uo(t).top-uo(e).bottom:"center"===s?ho(t).y-uo(e).bottom:uo(t).bottom-uo(e).bottom:"start"===s?uo(t).left-uo(e).right:"center"===s?ho(t).x-uo(e).right:uo(t).right-uo(e).right}r||(r=Xa);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}}),u=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}});return _(p.concat(u).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:(e[String(n)]||(e[String(n)]=0),e[String(n)]+=1*i,(!e.distance||e[e.distance]<e[String(n)])&&(e.distance=n),e)},{}).distance||n}(e,{filter:function(e){return Ii(e,"bpmn:SequenceFlow")}}),o=30,a="left";Ii(e,"bpmn:BoundaryEvent")&&-1!==(a=fo(e,e.host,-25)).indexOf("top")&&(o*=-1);var s={x:n.right+r+t.width/2,y:i.y+rs(a,80)};return Ua(e,t,s,qa({y:{margin:o,minDistance:80}}))}(e,t):void 0}function rs(e,t){return-1!=e.indexOf("top")?-1*t:-1!=e.indexOf("bottom")?t:0}function os(e){e.on("autoPlace",function(e){var t=e.shape;return is(e.source,t)})}os.$inject=["eventBus"];var as={__depends__:[es],__init__:["bpmnAutoPlace"],bpmnAutoPlace:["type",os]};function ss(e){this._eventBus=e}ss.$inject=["eventBus"],ss.prototype.on=function(e,t,n,i,r,o){if((f(t)||d(t))&&(o=r,r=i,i=n,n=t,t=null),f(n)&&(o=r,r=i,i=n,n=1e3),h(r)&&(o=r,r=!1),!f(i))throw new Error("handlerFn must be a function");l(e)||(e=[e]);var a=this._eventBus;b(e,function(e){var s=["commandStack",e,t].filter(function(e){return e}).join(".");a.on(s,n,r?function(e,t){return function(n){return e.call(t||null,n.context,n.command,n)}}(i,o):i,o)})};function cs(e,t,n,i){ss.call(this,e),this._elementRegistry=t,this._modeling=n,this._rules=i;var r=this;this.postExecuted(["shape.create"],function(e){var t=e.context,n=t.hints||{},i=t.shape,o=t.parent||t.newParent;!1!==n.autoResize&&r._expand([i],o)}),this.postExecuted(["elements.move"],function(e){var t=e.context,n=o(R(t.closure.topLevel)),i=t.hints,a=!i||i.autoResize;!1!==a&&b(A(n,function(e){return e.parent.id}),function(e,t){l(a)&&(e=e.filter(function(e){return y(a,D({id:e.id}))})),r._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||r._expand(i.children||[],i)}),this.postExecuted(["shape.resize"],function(e){var t=e.context,n=t.hints,i=t.shape,o=i.parent;n&&!1===n.autoResize||o&&r._expand([i],o)})}function ps(e){e.invoke(cs,this)}function us(e){ss.call(this,e),this.init()}function ls(e){us.call(this,e);var t=this;this.addRule("element.autoResize",function(e){return t.canResize(e.elements,e.target)})}function hs(e,t){ls.call(this,e),this._modeling=t}b(["canExecute","preExecute","preExecuted","execute","executed","postExecute","postExecuted","revert","reverted"],function(e){ss.prototype[e]=function(t,n,i,r,o){(f(t)||d(t))&&(o=r,r=i,i=n,n=t,t=null),this.on(t,e,n,i,r,o)}}),cs.$inject=["eventBus","elementRegistry","modeling","rules"],n(cs,ss),cs.prototype._getOptimalBounds=function(e,t){var n=this.getOffset(t),i=this.getPadding(t),r=uo(ft(e)),o=uo(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),lo(F({},o,a))},cs.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=uo(e),t=uo(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)}}},cs.prototype.getOffset=function(e){return{top:60,bottom:60,left:100,right:100}},cs.prototype.getPadding=function(e){return{top:2,bottom:2,left:15,right:15}},cs.prototype.resize=function(e,t,n){this._modeling.resizeShape(e,t,null,n)},ps.$inject=["injector"],n(ps,cs),ps.prototype.resize=function(e,t,n){Ii(e,"bpmn:Participant")?this._modeling.resizeLane(e,t,null,n):this._modeling.resizeShape(e,t,null,n)},us.$inject=["eventBus"],n(us,ss),us.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)})},us.prototype.init=function(){},ls.$inject=["eventBus"],n(ls,us),ls.prototype.canResize=function(e,t){return!1},n(hs,ls),hs.$inject=["eventBus","modeling"],hs.prototype.canResize=function(e,t){if(!Ii(t,"bpmn:Participant")&&!Ii(t,"bpmn:Lane")&&!Ii(t,"bpmn:SubProcess"))return!1;var n=!0;return b(e,function(e){(Ii(e,"bpmn:Lane")||e.labelTarget)&&(n=!1)}),n};var ds={__init__:["bpmnAutoResize","bpmnAutoResizeProvider"],bpmnAutoResize:["type",ps],bpmnAutoResizeProvider:["type",hs]},fs=Math.round,ms="djs-drag-active";function vs(e){e.preventDefault()}function ys(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(F({},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,u=r.globalStart,l=So(e),h=ma(l,u),d=r.localStart,f=a(l),v=ma(f,d);if(!r.active&&(i||(o=h,Math.sqrt(Math.pow(o.x,2)+Math.pow(o.y,2))>r.threshold))){if(F(c,{x:fs(d.x+p.x),y:fs(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&&ua(r.cursor),t.addMarker(t.getRootElement(),ms)}wo(e),r.active&&(F(c,{x:fs(f.x+p.x),y:fs(f.y+p.y),dx:fs(v.x),dy:fs(v.y)},{originalEvent:e}),s("move"))}function p(e){var t=!0;r.active&&(e&&(r.payload.originalEvent=e,wo(e)),t=s("end")),!1===t&&s("rejected"),s("ended",v(!0!==t))}function u(e){27===e.which&&(vs(e),m())}function l(t){var n;r.active&&(n=da(e),setTimeout(n,400),vs(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"),la(),v=r.trapClick?l:p,ce.unbind(document,"mousemove",c),ce.unbind(document,"dragstart",vs),ce.unbind(document,"selectstart",vs),ce.unbind(document,"mousedown",v,!0),ce.unbind(document,"mouseup",v,!0),ce.unbind(document,"keyup",u),ce.unbind(document,"touchstart",h,!0),ce.unbind(document,"touchcancel",m,!0),ce.unbind(document,"touchmove",c,!0),ce.unbind(document,"touchend",p,!0),e.off("element.hover",d),e.off("element.out",f),t.removeMarker(t.getRootElement(),ms);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,_,E=(v=F({},o,v||{})).data||{};x=v.trapClick?l:p,t?(y=Eo(t)||t,g=So(t),wo(t),"dragstart"===y.type&&vs(y)):(y=null,g={x:0,y:0}),b=a(g),n||(n=b),_=function(e){return"undefined"!=typeof TouchEvent&&e instanceof TouchEvent}(y),r=F({prefix:i,data:E,payload:{},globalStart:g,displacement:ma(n,b),localStart:b,isTouch:_},v),v.manual||(_?(ce.bind(document,"touchstart",h,!0),ce.bind(document,"touchcancel",m,!0),ce.bind(document,"touchmove",c,!0),ce.bind(document,"touchend",p,!0)):(ce.bind(document,"mousemove",c),ce.bind(document,"dragstart",vs),ce.bind(document,"selectstart",vs),ce.bind(document,"mousedown",x,!0),ce.bind(document,"mouseup",x,!0)),ce.bind(document,"keyup",u),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){F(o,e)}}ys.$inject=["eventBus","canvas","selection","elementRegistry"];var gs=1500;function bs(e,t,n){var i=this;e.on("drag.start",function(r){e.once("drag.move",gs,function(e){!function(e){if(!e.hover){var r=e.originalEvent,o=i._findTargetGfx(r),a=o&&n.get(o);o&&a&&(e.stopPropagation(),t.hover({element:a,gfx:o}),t.move(r))}}(e)})}),e.on("drag.init",function(){var n,i;function r(e){n=e.hover,i=e.hoverGfx}function o(){n=null,i=null}function a(){if(n){var e=n,r=i;n=null,i=null,t.out({element:e,gfx:r})}}e.on("drag.hover",r),e.on("element.out",o),e.on("element.hover",gs,a),e.once("drag.cleanup",function(){e.off("drag.hover",r),e.off("element.out",o),e.off("element.hover",a)})}),this._findTargetGfx=function(e){var t;if(e instanceof MouseEvent)return t=So(e),function(e){return ee(e,"svg, .djs-element",!0)}(document.elementFromPoint(t.x,t.y))}}bs.$inject=["eventBus","dragging","elementRegistry"];var xs={__init__:["hoverFix"],__depends__:[Fo],dragging:["type",ys],hoverFix:["type",bs]};function _s(e,t,n){this._canvas=n,this._opts=F({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 Es(e,t,n){return t<e&&e<n}_s.$inject=["config.autoScroll","eventBus","canvas"],_s.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++)Es(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))},_s.prototype.stopScroll=function(){clearTimeout(this._scrolling)},_s.prototype.setOptions=function(e){this._opts=F({},this._opts,e)},_s.prototype._toBorderPoint=function(e){var t=this._canvas._container.getBoundingClientRect(),n=So(e.originalEvent);return{x:n.x-t.left,y:n.y-t.top}};var ws={__depends__:[xs],__init__:["autoScroll"],autoScroll:["type",_s]};function Ss(e){this._commandStack=e.get("commandStack",!1)}Ss.$inject=["injector"],Ss.prototype.allowed=function(e,t){var n=!0,i=this._commandStack;return i&&(n=i.canExecute(e,t)),void 0===n||n};var Cs={__init__:["rules"],rules:["type",Ss]},Ts=Math.round,Rs=Math.max;var As=10;function ks(e,t){return function(e,t){var n,i;for(n=0;i=e[n];n++)if(Sr(i,t)<=As)return{point:e[n],bendpoint:!0,index:n};return null}(e,t)||function(e,t){var n,i,r=so(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,As),(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=Rs(o.segment2,a.segment2)-1],bendpoint:!0,index:i}:{point:{x:Ts(o.x+a.x)/2,y:Ts(o.y+a.y)/2},index:o.segment2}:{point:{x:Ts(o.x),y:Ts(o.y)},index:o.segment2}:null}(e,t)}var Ps="djs-bendpoint",Ms="djs-segment-dragger";function Ds(e,t,n){return ks(t,function(e,t){var n,i=So(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))}function Bs(e,t){var n=Oe("g");Re(n).add(Ps),ge(e,n);var i=Oe("circle");Ee(i,{cx:0,cy:0,r:4}),Re(i).add("djs-visual"),ge(n,i);var r=Oe("circle");return Ee(r,{cx:0,cy:0,r:10}),Re(r).add("djs-hit"),ge(n,r),t&&Re(n).add(t),n}function Ns(e,t,n,i){var r=Oe("g");ge(e,r);var o=function(e,t,n){var i=t.x-e.x,r=t.y-e.y;return js("h"===n?i:r)}(t,n,i),a=Oe("rect");Ee(a,{x:-7,y:-1.5,width:14,height:3}),Re(a).add("djs-visual"),ge(r,a);var s=Oe("rect");return Ee(s,{x:-o/2,y:-4.5,width:o,height:9}),Re(s).add("djs-hit"),ge(r,s),tn(r,"v"===i?90:0),r}function Os(e,t,n){var i=Oe("g"),r=kr(t,n),o=Rr(t,n);return ge(e,i),Ns(i,t,n,o),Re(i).add(Ms),Re(i).add("h"===o?"horizontal":"vertical"),en(i,r.x,r.y),i}function js(e){return Math.abs(Math.round(2*e/3))}var Ls=t(function(t,n){var i;i=e,t.exports=function(e){if(e.CSS&&e.CSS.escape)return e.CSS.escape;var t=function(e){if(0==arguments.length)throw new TypeError("`CSS.escape` requires an argument.");for(var t,n=String(e),i=n.length,r=-1,o="",a=n.charCodeAt(0);++r<i;)0!=(t=n.charCodeAt(r))?o+=t>=1&&t<=31||127==t||0==r&&t>=48&&t<=57||1==r&&t>=48&&t<=57&&45==a?"\\"+t.toString(16)+" ":0==r&&1==i&&45==t||!(t>=128||45==t||95==t||t>=48&&t<=57||t>=65&&t<=90||t>=97&&t<=122)?"\\"+n.charAt(r):n.charAt(r):o+="�";return o};return e.CSS||(e.CSS={}),e.CSS.escape=t,t}(i)}),Is={"&":"&","<":"<",">":">",'"':""","'":"'"};function zs(e){return(e=""+e)&&e.replace(/[&<>"']/g,function(e){return Is[e]})}function Fs(e,t,n,i,r){function o(e,n){var o=n.waypoints,a=Ds(t,o,e);if(a)return!function(e,t,n){var i,r,o,a,s,c,p=e.index,u=e.point;return!(p<=0||e.bendpoint)&&(o=kr(i=t[p-1],r=t[p]),a=Rr(i,r),s=Math.abs(u.x-o.x),c=Math.abs(u.y-o.y),a&&s<=n&&c<=n)}(a,o,function(e,t){var n,i,r=e.waypoints;return t.index<=0||t.bendpoint?null:(i=Rr((n={start:r[t.index-1],end:r[t.index]}).start,n.end))?js("h"===i?n.end.x-n.start.x:n.end.y-n.start.y)/2:null}(n,a))?i.start(e,n,a.index,!a.bendpoint):r.start(e,n,a.index),!0}function a(e,t,i){ce.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="'+Ls(e.id)+'"]',i);return!r&&n&&(Ee(r=Oe("g"),{"data-element-id":e.id}),Re(r).add("djs-bendpoints"),ge(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=Bs(e);ge(e,i),en(i,t.x,t.y)}),Bs(e,"floating")}function u(e,t){for(var n,i,r,o=t.waypoints,s=1;s<o.length;s++)Rr(n=o[s-1],i=o[s])&&(Ee(r=Os(e,n,i),{"data-segment-idx":s}),a(r,"mousemove",t))}function l(e){var t=s(e);return t||(p(t=s(e,!0),e),u(t,e)),t}function h(e){var t=s(e);t&&(!function(e){b(me("."+Ms,e),function(e){ke(e)})}(t),function(e){b(me("."+Ps,e),function(e){ke(e)})}(t),u(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,u=kr(a,s),l=Rr(a,s);o&&(i=function(e){return fe(".djs-visual",e)}(o),r={x:p.x-u.x,y:p.y-u.y},"v"===l&&(r={x:r.y,y:r.x}),en(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&&ke(t)}),e.on("element.marker.update",function(e){var t,n=e.element;n.waypoints&&(t=l(n),e.add?Re(t).add(e.marker):Re(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=Ds(t,o,e.originalEvent)))return;!function(e,t){var n=fe(".floating",e),i=t.point;n&&en(n,i.x,i.y)}(n,i),i.bendpoint||d(n,i,o)}}),e.on("element.mousedown",function(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&&l(t)}),e.on("element.hover",function(e){var t=e.element;t.waypoints&&(l(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&&Ee(i,{"data-element-id":n})}}),this.addHandles=l,this.updateHandles=h,this.getBendpointsContainer=s,this.getSegmentDragger=c}Fs.$inject=["eventBus","canvas","interactionEvents","bendpointMove","connectionSegmentMove"];var $s=Math.round,Hs="reconnectStart",Gs="reconnectEnd",Ws="updateWaypoints";function Vs(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,u=t.target,l=t.waypoints,h=(s=a||0!==o?a||o!==l.length-1?Ws:Gs:Hs)===Ws?"connection.updateWaypoints":"connection.reconnect",d=r.allowed(h,{connection:t,source:p,target:u});!1===d&&(d=r.allowed(h,{connection:t,source:u,target:p})),!1!==d&&i.init(e,"bendpoint.move",{data:{connection:t,connectionGfx:c,context:{allowed:d,bendpointIndex:o,connection:t,source:p,target:u,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===Ws?"connection.updateWaypoints":"connection.reconnect";if(t=n.allowed=r.allowed(p,{connection:i,source:c===Hs?s:o,target:c===Gs?s:a}))return n.source=c===Hs?s:o,void(n.target=c===Gs?s:a);!1===t&&(t=n.allowed=r.allowed(p,{connection:i,source:c===Gs?s:a,target:c===Hs?s:o})),t&&(n.source=c===Gs?s:a,n.target=c===Hs?s:o)}}),t.on(["bendpoint.move.out","bendpoint.move.cleanup"],function(e){var t=e.context;t.hover=null,t.source=null,t.target=null,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,u=t.type,l=t.hints||{},h={x:$s(e.x),y:$s(e.y)};if(!n)return!1;u===Ws?(a?s.splice(i,0,h):s[i]=h,l.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===Sr(t,i=e[r+1])||Cr(n,i,t)?e.splice(r,1):r++;return e}(s),l)):(u===Hs?(l.docking="source",Us(t)&&(l.docking="target",l.newWaypoints=s.reverse())):u===Gs&&(l.docking="target",Us(t)&&(l.docking="source",l.newWaypoints=s.reverse())),o.reconnect(r,c,p,h,l))},this)}function Us(e){var t=e.hover,n=e.source,i=e.target,r=e.type;return r===Hs?t&&i&&t===i&&n!==i:r===Gs?t&&n&&t===n&&n!==i:void 0}Vs.$inject=["injector","eventBus","canvas","dragging","rules","modeling"],Vs.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 qs="reconnectStart",Ks="reconnectEnd",Ys="updateWaypoints",Xs="connect-ok",Zs="connect-not-ok",Qs="connect-hover",Js="djs-updating",ec="djs-element-hidden",tc=1100;function nc(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,Re(t.draggerGfx=Bs(i.getLayer("overlays"))).add("djs-dragging"),i.addMarker(r,ec),i.addMarker(r,Js)}),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,Qs),o===Ys)return;n?(i.removeMarker(r,Zs),i.addMarker(r,Xs)):!1===n&&(i.removeMarker(r,Xs),i.addMarker(r,Zs))}}),n.on(["bendpoint.move.out","bendpoint.move.cleanup"],tc,function(e){var t=e.context,n=t.hover,r=t.target;n&&(i.removeMarker(n,Qs),i.removeMarker(n,r?Xs:Zs))}),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,u=p.source,l=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),c===qs?Us(n)?(m.connectionEnd=m.connectionEnd||d,m.source=l,m.target=s||u,h=h.reverse()):(m.connectionStart=m.connectionStart||d,m.source=s||u,m.target=l):c===Ks?Us(n)?(m.connectionStart=m.connectionStart||d,m.source=s||l,m.target=u,h=h.reverse()):(m.connectionEnd=m.connectionEnd||d,m.source=u,m.target=s||l):(m.noCropping=!0,m.noLayout=!0,h[o]=d),c===Ys&&(h=e.cropWaypoints(p,h)),m.waypoints=h,r.drawPreview(n,i,m)),en(a,t.x,t.y)},this),n.on(["bendpoint.move.end","bendpoint.move.cancel"],tc,function(e){var t=e.context,n=t.connection,o=t.draggerGfx,a=t.hover,s=t.target,c=t.waypoints;n.waypoints=c,ke(o),i.removeMarker(n,Js),i.removeMarker(n,ec),a&&(i.removeMarker(a,Xs),i.removeMarker(a,s?Xs:Zs)),r&&r.cleanUp(t)})}nc.$inject=["bendpointMove","injector","eventBus","canvas"];var ic="connect-hover",rc="djs-updating";function oc(e,t,n){return ac(e,t,e[t]+n)}function ac(e,t,n){return{x:"x"===t?n:e.x,y:"y"===t?n:e.y}}function sc(e){return"x"===e?"y":"x"}function cc(e,t,n){var i,r;return e.original?e.original:(i=ho(t),ac(e,r=sc(n),i[r]))}function pc(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 ac(t,i,Math.min(Math.max(o+20,e[i]),r-20))}(n,i[e.segmentStartIndex+t],i[e.segmentEndIndex+t],sc(e.axis));en(e.draggerGfx,r.x,r.y)}this.start=function(e,t,r){var o,a,s,c,p=n.getGraphics(t),u=r-1,l=r,h=t.waypoints,d=h[u],f=h[l],m=Ds(n,h,e);(a=Rr(d,f))&&(s="v"===a?"x":"y",0===u&&(d=cc(d,t.source,s)),l===h.length-1&&(f=cc(f,t.target,s)),o={connection:t,segmentStartIndex:u,segmentEndIndex:l,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=Os(r,t.segmentStart,t.segmentEnd),Re(t.draggerGfx).add("djs-dragging"),n.addMarker(i,rc)}),t.on("connectionSegment.move.move",function(e){var t,n,i=e.context,r=i.connection,o=i.segmentStartIndex,a=i.segmentEndIndex,u=i.segmentStart,l=i.segmentEnd,h=i.axis,d=i.originalWaypoints.slice(),f=oc(u,h,e["d"+h]),m=oc(l,h,e["d"+h]),v=d.length,y=0;d[o]=f,d[a]=m,o<2&&(t=fo(r.source,f),1===o?"intersect"===t&&(d.shift(),d[0]=f,y--):"intersect"!==t&&(d.unshift(u),y++)),a>v-3&&(n=fo(r.target,m),a===v-2?"intersect"===n&&(d.pop(),d[d.length-1]=m):"intersect"!==n&&d.push(l)),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,ic)}),t.on(["connectionSegment.move.out","connectionSegment.move.cleanup"],function(e){var t=e.context.hover;t&&n.removeMarker(t,ic)}),t.on("connectionSegment.move.cleanup",function(e){var t=e.context,i=t.connection;t.draggerGfx&&ke(t.draggerGfx),n.removeMarker(i,rc)}),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,a=function(e,t){var n=0;return{waypoints:e.filter(function(i,r){return!Cr(e[r-1],e[r+1],i)||(n=r<=t?n-1:n,!1)}),segmentOffset:n}}(i=i.map(function(e){return{original:e.original,x:Math.round(e.x),y:Math.round(e.y)}}),r),c=s(n,a.waypoints),p=a.segmentOffset,u={segmentMove:{segmentStartIndex:t.segmentStartIndex,newSegmentStartIndex:r+p}};o.updateWaypoints(n,c,u)})}pc.$inject=["injector","eventBus","canvas","dragging","graphicsFactory","modeling"];var uc=Math.abs,lc=Math.round;function hc(e){return{x:e.x,y:e.y}}function dc(e){return{x:e.x+e.width,y:e.y+e.height}}function fc(e,t){return!e||isNaN(e.x)||isNaN(e.y)?t:{x:lc(e.x+e.width/2),y:lc(e.y+e.height/2)}}function mc(e,t){var n=e.snapped;return!!n&&("string"==typeof t?n[t]:n.x&&n.y)}function vc(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 yc(e){return e.children||[]}var gc=Math.abs,bc=Math.round,xc=10;function _c(e){function t(e,t){if(l(e)){for(var n=e.length;n--;)if(gc(e[n]-t)<=xc)return e[n]}else{var i=t%(e=+e);if(i<xc)return t-i;if(i>e-xc)return t-i+e}return t}function n(e){if(e.width)return{x:bc(e.width/2+e.x),y:bc(e.height/2+e.y)}}e.on("connectionSegment.move.move",1500,function(e){var i,r,o=function(e){var t=e.snapPoints,i=e.connection,r=i.waypoints,o=e.segmentStart,a=e.segmentStartIndex,s=e.segmentEnd,c=e.segmentEndIndex,p=e.axis;if(t)return t;var u=[r[a-1],o,s,r[c+1]];return a<2&&u.unshift(n(i.source)),c>r.length-3&&u.unshift(n(i.target)),e.snapPoints=t={horizontal:[],vertical:[]},b(u,function(e){e&&(e=e.original||e,"y"===p&&t.horizontal.push(e.y),"x"===p&&t.vertical.push(e.x))}),t}(e.context),a=e.x,s=e.y;if(o){var c=a-(i=t(o.vertical,a)),p=s-(r=t(o.horizontal,s));F(e,{dx:e.dx-c,dy:e.dy-p,x:i,y:r}),(c||-1!==o.vertical.indexOf(a))&&vc(e,"x",i),(p||-1!==o.horizontal.indexOf(s))&&vc(e,"y",r)}}),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:[]},b(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),p=e.x,u=e.y;if(a){var l=p-(i=t(c?a.vertical.concat([c.x]):a.vertical,p)),h=u-(r=t(c?a.horizontal.concat([c.y]):a.horizontal,u));F(e,{dx:e.dx-l,dy:e.dy-h,x:e.x-l,y:e.y-h}),(l||-1!==a.vertical.indexOf(p))&&vc(e,"x",i),(h||-1!==a.horizontal.indexOf(u))&&vc(e,"y",r)}})}_c.$inject=["eventBus"];var Ec={__depends__:[xs,Cs],__init__:["bendpoints","bendpointSnapping","bendpointMovePreview"],bendpoints:["type",Fs],bendpointMove:["type",Vs],bendpointMovePreview:["type",nc],connectionSegmentMove:["type",pc],bendpointSnapping:["type",_c]};function wc(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,!u(t=n.canExecute=r(i,o))){if(!1!==t)return n.source=i,void(n.target=o);u(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:Sc(t)?o:r,connectionEnd:Sc(t)?r:o};h(i)&&(c=i),n.connect(a,s,c,p)}),this.start=function(e,n,i,r){h(i)||(r=i,i=ho(n)),t.init(e,"connect",{autoActivate:r,data:{shape:n,context:{start:n,connectionStart:i}}})}}function Sc(e){var t=e.hover,n=e.source,i=e.target;return t&&n&&t===n&&n!==i}wc.$inject=["eventBus","dragging","modeling","rules"];var Cc=1100,Tc=900,Rc="connect-ok",Ac="connect-not-ok";function kc(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.connectionStart,p=t.connectionEnd,u=t.target;c||(c=Sc(t)?{x:e.x,y:e.y}:s),p||(p=Sc(t)?s:{x:e.x,y:e.y}),i.drawPreview(t,n,{source:o||a,target:u||r,connectionStart:c,connectionEnd:p})}),t.on("connect.hover",Tc,function(e){var t=e.context,i=e.hover,r=t.canExecute;null!==r&&n.addMarker(i,r?Rc:Ac)}),t.on(["connect.out","connect.cleanup"],Cc,function(e){var t=e.hover;t&&(n.removeMarker(t,Rc),n.removeMarker(t,Ac))}),i&&t.on("connect.cleanup",function(e){i.cleanUp(e.context)})}kc.$inject=["injector","eventBus","canvas"];var Pc={__depends__:[Fo,Cs,xs],__init__:["connectPreview"],connect:["type",wc],connectPreview:["type",kc]};function Mc(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)}Mc.$inject=["injector","canvas","graphicsFactory","elementFactory"],Mc.prototype.drawPreview=function(e,t,n){n=n||{};var i,r,o,a=e.connectionPreviewGfx,s=e.getConnection,c=n.source,p=n.target,u=n.waypoints,l=n.connectionStart,h=n.connectionEnd,d=n.noLayout,f=n.noCropping,m=n.noNoop,v=this;a||(a=e.connectionPreviewGfx=this.createConnectionPreviewGfx()),Pe(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=u||[],this._layouter&&!d&&(i.waypoints=this._layouter.layoutConnection(i,{source:c,target:p,connectionStart:l,connectionEnd:h,waypoints:n.waypoints||i.waypoints})),i.waypoints&&i.waypoints.length||(i.waypoints=[c?ho(c):l,p?ho(p):h]),this._connectionDocking&&(c||p)&&!f&&(i.waypoints=this._connectionDocking.getCroppedWaypoints(i,c,p)),this._graphicsFactory.drawConnection(a,i)):!m&&this.drawNoopPreview(a,n)},Mc.prototype.drawNoopPreview=function(e,t){var n=t.source,i=t.target,r=t.connectionStart||ho(n),o=t.connectionEnd||ho(i),a=this.cropWaypoints(r,o,n,i);ge(e,this.createNoopConnection(a[0],a[1]))},Mc.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&&mo(o,s,!0)||e,t=i&&mo(a,s,!1)||t]},Mc.prototype.cleanUp=function(e){e&&e.connectionPreviewGfx&&ke(e.connectionPreviewGfx)},Mc.prototype.getConnection=function(e){var t=function(e){return h(e)?e:{}}(e);return this._elementFactory.createConnection(t)},Mc.prototype.createConnectionPreviewGfx=function(){var e=Oe("g");return Ee(e,{pointerEvents:"none"}),Re(e).add("djs-connection-preview"),ge(this._canvas.getDefaultLayer(),e),e},Mc.prototype.createNoopConnection=function(e,t){var n=Oe("polyline");return Ee(n,{stroke:"#333",strokeDasharray:[1],strokeWidth:2,"pointer-events":"none"}),Ee(n,{points:[e.x,e.y,t.x,t.y]}),n};var Dc={__init__:["connectionPreview"],connectionPreview:["type",Mc]},Bc=Math.min,Nc=Math.max;function Oc(e){e.preventDefault()}function jc(e){e.stopPropagation()}function Lc(e){this.container=e.container,this.parent=le('<div class="djs-direct-editing-parent"><div class="djs-direct-editing-content" contenteditable="true"></div></div>'),this.content=fe("[contenteditable]",this.parent),this.keyHandler=e.keyHandler||function(){},this.resizeHandler=e.resizeHandler||function(){},this.autoResize=I(this.autoResize,this),this.handlePaste=I(this.handlePaste,this)}function Ic(e,t){this._eventBus=e,this._providers=[],this._textbox=new Lc({container:t.getContainer(),keyHandler:I(this._handleKey,this),resizeHandler:I(this._handleResize,this)})}Lc.prototype.create=function(e,t,n,i){var r=this.parent,o=this.content,a=this.container;i=this.options=i||{};var s=$(t=this.style=t||{},["width","height","maxWidth","maxHeight","minWidth","minHeight","left","top","backgroundColor","position","overflow","border","wordWrap","textAlign","outline","transform"]);F(r.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"},s);var c=$(t,["fontFamily","fontSize","fontWeight","lineHeight","padding","paddingTop","paddingRight","paddingBottom","paddingLeft"]);return F(o.style,{boxSizing:"border-box",width:"100%",outline:"none",wordWrap:"break-word"},c),i.centerVertically&&F(o.style,{position:"absolute",top:"50%",transform:"translate(0, -50%)"},c),o.innerText=n,ce.bind(o,"keydown",this.keyHandler),ce.bind(o,"mousedown",jc),ce.bind(o,"paste",this.handlePaste),i.autoResize&&ce.bind(o,"input",this.autoResize),i.resizable&&this.resizable(t),a.appendChild(r),this.setSelection(o.lastChild,o.lastChild&&o.lastChild.length),r},Lc.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 r=this.autoResize(i);r&&this.resizeHandler(r)}},Lc.prototype.insertText=function(e){document.execCommand("insertText",!1,e)||this._insertTextIE(e)},Lc.prototype._insertTextIE=function(e){var t,n,i,r=this.getSelection(),o=r.startContainer,a=r.endContainer,s=r.startOffset,c=r.endOffset,p=r.commonAncestorContainer,u=(t=p.childNodes,[].slice.call(t));if(function(e){return e.nodeType===Node.TEXT_NODE}(p)){var l=o.textContent;o.textContent=l.substring(0,s)+e+l.substring(c),n=o,i=s+e.length}else if(o===this.content&&a===this.content){var h=document.createTextNode(e);this.content.insertBefore(h,u[s]),n=h,i=h.textContent.length}else{var d=u.indexOf(o),f=u.indexOf(a);u.forEach(function(t,n){n===d?t.textContent=o.textContent.substring(0,s)+e+a.textContent.substring(c):n>d&&n<=f&&ve(t)}),n=o,i=s+e.length}n&&void 0!==i&&setTimeout(function(){self.setSelection(n,i)})},Lc.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(),r=t.scrollHeight;e.style.height=r+"px",this.resizeHandler({width:i.width,height:i.height,dx:0,dy:r-i.height})}},Lc.prototype.resizable=function(){var e=this,t=this.parent,n=this.resizeHandle,i=parseInt(this.style.minWidth)||0,r=parseInt(this.style.minHeight)||0,o=parseInt(this.style.maxWidth)||1/0,a=parseInt(this.style.maxHeight)||1/0;if(!n){var s,c,p,u;n=this.resizeHandle=le('<div class="djs-direct-editing-resize-handle"></div>');var l=function(n){Oc(n),jc(n);var l=Bc(Nc(p+n.clientX-s,i),o),h=Bc(Nc(u+n.clientY-c,r),a);t.style.width=l+"px",t.style.height=h+"px",e.resizeHandler({width:p,height:u,dx:n.clientX-s,dy:n.clientY-c})},h=function(e){Oc(e),jc(e),ce.unbind(document,"mousemove",l,!1),ce.unbind(document,"mouseup",h,!1)};ce.bind(n,"mousedown",function(e){Oc(e),jc(e),s=e.clientX,c=e.clientY;var n=t.getBoundingClientRect();p=n.width,u=n.height,ce.bind(document,"mousemove",l),ce.bind(document,"mouseup",h)})}F(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)},Lc.prototype.destroy=function(){var e=this.parent,t=this.content,n=this.resizeHandle;t.innerText="",e.removeAttribute("style"),t.removeAttribute("style"),ce.unbind(t,"keydown",this.keyHandler),ce.unbind(t,"mousedown",jc),ce.unbind(t,"input",this.autoResize),ce.unbind(t,"paste",this.handlePaste),n&&(n.removeAttribute("style"),ve(n)),ve(e)},Lc.prototype.getValue=function(){return this.content.innerText.trim()},Lc.prototype.getSelection=function(){return window.getSelection().getRangeAt(0)},Lc.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)},Ic.$inject=["eventBus","canvas"],Ic.prototype.registerProvider=function(e){this._providers.push(e)},Ic.prototype.isActive=function(){return!!this._active},Ic.prototype.cancel=function(){this._active&&(this._fire("cancel"),this.close())},Ic.prototype._fire=function(e,t){this._eventBus.fire("directEditing."+e,t||{active:this._active})},Ic.prototype.close=function(){this._textbox.destroy(),this._fire("deactivate"),this._active=null,this.resizable=void 0},Ic.prototype.complete=function(){var e=this._active;if(e){var t,n=e.context.bounds,i=this.$textbox.getBoundingClientRect(),r=this.getValue();r===e.context.text&&i.height===n.height&&i.width===n.width||(t=this._textbox.container.getBoundingClientRect(),e.provider.update(e.element,r,e.context.text,{x:i.left-t.left,y:i.top-t.top,width:i.width,height:i.height})),this._fire("complete"),this.close()}},Ic.prototype.getValue=function(){return this._textbox.getValue()},Ic.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())},Ic.prototype._handleResize=function(e){this._fire("resize",e)},Ic.prototype.activate=function(e){var t;this.isActive()&&this.cancel();var n=y(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 zc={__depends__:[Po],__init__:["directEditing"],directEditing:["type",Ic]};function Fc(e,t,n){this._eventBus=t,this._overlays=n;var i=p(e&&e.scale)?e.scale:{min:1,max:1.5};this._overlaysConfig={position:{right:-9,top:-6},scale:i},this._current=null,this._init()}Fc.$inject=["config.contextPad","eventBus","overlays"],Fc.prototype._init=function(){var e=this._eventBus,t=this;e.on("selection.changed",function(e){var n=e.newSelection;1===n.length?t.open(n[0]):t.close()}),e.on("elements.delete",function(e){b(e.elements,function(e){t.isOpen(e)&&t.close()})}),e.on("element.changed",function(e){var n=e.element,i=t._current;i&&i.element===n&&t.open(n,!0)})},Fc.prototype.registerProvider=function(e,t){t||(t=e,e=1e3),this._eventBus.on("contextPad.getProviders",e,function(e){e.providers.push(t)})},Fc.prototype.getEntries=function(e){var t=this._getProviders(),n={};return b(t,function(t){var i=t.getContextPadEntries(e);f(i)?n=i(n):b(i,function(e,t){n[t]=e})}),n},Fc.prototype.trigger=function(e,t,n){var i,r,o=this._current.element,a=this._current.entries,s=t.delegateTarget||t.target;if(!s)return t.preventDefault();if(i=a[G(s,"data-action")].action,r=t.originalEvent||t,f(i)){if("click"===e)return i(r,o,n)}else if(i[e])return i[e](r,o,n);t.preventDefault()},Fc.prototype.open=function(e,t){!t&&this.isOpen(e)||(this.close(),this._updateAndOpen(e))},Fc.prototype._getProviders=function(e){var t=this._eventBus.createEvent({type:"contextPad.getProviders",providers:[]});return this._eventBus.fire(t),t.providers},Fc.prototype._updateAndOpen=function(e){var t=this.getEntries(e),n=this.getPad(e),i=n.html;b(t,function(e,t){var n,r=e.group||"default",o=le(e.html||'<div class="entry" draggable="true"></div>');G(o,"data-action",t),(n=fe("[data-group="+r+"]",i))||(n=le('<div class="group" data-group="'+r+'"></div>'),i.appendChild(n)),n.appendChild(o),e.className&&function(e,t){var n=K(e);(l(t)?t:t.split(/\s+/g)).forEach(function(e){n.add(e)})}(o,e.className),e.title&&G(o,"title",e.title),e.imageUrl&&o.appendChild(le('<img src="'+e.imageUrl+'">'))}),K(i).add("open"),this._current={element:e,pad:n,entries:t},this._eventBus.fire("contextPad.open",{current:this._current})},Fc.prototype.getPad=function(e){if(this.isOpen())return this._current.pad;var t=this,n=this._overlays,i=le('<div class="djs-context-pad"></div>'),r=F({html:i},this._overlaysConfig);ue.bind(i,".entry","click",function(e){t.trigger("click",e)}),ue.bind(i,".entry","dragstart",function(e){t.trigger("dragstart",e)}),ce.bind(i,"mousedown",function(e){e.stopPropagation()}),this._overlayId=n.add(e,"context-pad",r);var o=n.get(this._overlayId);return this._eventBus.fire("contextPad.create",{element:e,pad:o}),o},Fc.prototype.close=function(){this.isOpen()&&(this._overlays.remove(this._overlayId),this._overlayId=null,this._eventBus.fire("contextPad.close",{current:this._current}),this._current=null)},Fc.prototype.isOpen=function(e){return!(!this._current||e&&this._current.element!==e)};var $c={__depends__:[Po,qo],contextPad:["type",Fc]},Hc=["marker-start","marker-mid","marker-end"],Gc=["circle","ellipse","line","path","polygon","polyline","rect"];function Wc(e,t,n,i){this._elementRegistry=e,this._canvas=n,this._styles=i,this._clonedMarkers={};var r=this;t.on("drag.cleanup",function(){b(r._clonedMarkers,function(e){ke(e)}),r._clonedMarkers={}})}Wc.$inject=["elementRegistry","eventBus","canvas","styles"],Wc.prototype.getGfx=function(e){return this._elementRegistry.getGraphics(e)},Wc.prototype.addDragger=function(e,t,n){var i=Me(n=n||this.getGfx(e)),r=n.getBoundingClientRect();return this._cloneMarkers(Qt(i)),Ee(i,this._styles.cls("djs-dragger",[],{x:r.top,y:r.left})),ge(t,i),i},Wc.prototype.addFrame=function(e,t){var n=Oe("rect",{class:"djs-resize-overlay",width:e.width,height:e.height,x:e.x,y:e.y});return ge(t,n),n},Wc.prototype._cloneMarkers=function(e){var t=this;if(e.childNodes)for(var n=0;n<e.childNodes.length;n++)t._cloneMarkers(e.childNodes[n]);(function(e){return-1!==Gc.indexOf(e.nodeName)})(e)&&Hc.forEach(function(n){if(Ee(e,n)){var i=function(e,t,n){return fe("marker#"+(i=Ee(e,t),i.match(/url\(['"]?#([^'"]*)['"]?\)/)[1]),n||document);var i}(e,n,t._canvas.getContainer());t._cloneMarker(e,i,n)}})},Wc.prototype._cloneMarker=function(e,t,n){var i=t.id,r=this._clonedMarkers[i];if(!r){var o=i+"-clone";(r=Me(t)).id=o,Re(r).add("djs-dragger").add("djs-dragger-marker"),this._clonedMarkers[i]=r;var a=fe("defs",this._canvas._svg);a||(a=Oe("defs"),ge(this._canvas._svg,a)),ge(a,r)}Ee(e,n,"url(#"+this._clonedMarkers[i].id+")")};var Vc={__init__:["previewSupport"],previewSupport:["type",Wc]},Uc="drop-ok",qc="drop-not-ok",Kc="attach-ok",Yc="new-parent",Xc="create",Zc=2e3;function Qc(e,t,n,i,r){function o(t,n){[Kc,Uc,qc,Yc].forEach(function(i){i===n?e.addMarker(t,i):e.removeMarker(t,i)})}function a(){var e=t.context();e&&e.prefix===Xc&&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);Jc(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=y(e=g(e,function(t){var n=t.labelTarget;return!(t.parent||function(e){return!!e.labelTarget}(t)&&-1!==e.indexOf(n))}),function(e){return!ep(e)}),s=!1,c=!1,p=!1;tp(e)&&(s=r.allowed("shape.attach",{position:n,shape:a,target:t})),s||(p=tp(e)?r.allowed("shape.create",{position:n,shape:a,source:i,target:t}):r.allowed("elements.create",{elements:e,position:n,target:t}));var u=o.connectionTarget;return p||s?(a&&i&&(c=r.allowed("connection.create",{source:u===i?a:i,target:u===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,Kc):o(i,p?Yc:qc))}),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,u=t.hints||{};if(!1===s||!a)return!1;Jc(e);var l={x:e.x,y:e.y};r=p?i.appendShape(n,r,l,a,{attach:c,connection:!0===p?{}:p,connectionTarget:u.connectionTarget}):y(o=i.createElements(o,l,a,F({},u,{attach:c})),function(e){return!ep(e)}),F(t,{elements:o,shape:r}),F(e,{elements:o,shape:r})}),n.on("create.init",function(){n.on("elements.changed",a),n.once(["create.cancel","create.end"],Zc,function(){n.off("elements.changed",a)})}),this.start=function(e,n,i){l(n)||(n=[n]);var r=y(n,function(e){return!ep(e)});if(r){i=F({elements:n,hints:{},shape:r},i||{}),b(n,function(e){d(e.x)||(e.x=0),d(e.y)||(e.y=0)});var o=ft(n);b(n,function(e){ep(e)&&(e.waypoints=S(e.waypoints,function(e){return{x:e.x-o.x-o.width/2,y:e.y-o.y-o.height/2}})),F(e,{x:e.x-o.x-o.width/2,y:e.y-o.y-o.height/2})}),t.init(e,Xc,{cursor:"grabbing",autoActivate:!0,data:{shape:r,elements:n,context:i}})}}}function Jc(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 ep(e){return!!e.waypoints}function tp(e){return e&&1===e.length&&!ep(e[0])}Qc.$inject=["canvas","dragging","eventBus","modeling","rules"];var np=750;function ip(e,t,n,i,r){t.on("create.move",np,function(t){var o=t.hover,a=t.context,s=a.elements,c=a.dragGroup;c||(c=a.dragGroup=function(e){var t=Oe("g");Ee(t,r.cls("djs-drag-group",["no-events"]));var o=Oe("g");return e.forEach(function(e){var r;e.hidden||(e.waypoints?(r=n._createContainer("connection",o),n.drawConnection(Qt(r),e)):(r=n._createContainer("shape",o),n.drawShape(Qt(r),e),en(r,e.x,e.y)),i.addDragger(e,t,r))}),t}(s)),o?(c.parentNode||ge(e.getDefaultLayer(),c),en(c,t.x,t.y)):ke(c)}),t.on("create.cleanup",function(e){var t=e.context.dragGroup;t&&ke(t)})}ip.$inject=["canvas","eventBus","graphicsFactory","previewSupport","styles"];var rp={__depends__:[xs,Vc,Cs,Fo],__init__:["create","createPreview"],create:["type",Qc],createPreview:["type",ip]},op=["contextPad.close","canvas.viewbox.changing","commandStack.changed"];function ap(e,t,n){var i=p(e&&e.scale)?e.scale:{min:1,max:1.5};this._config={scale:i},this._eventBus=t,this._canvas=n,this._providers={},this._current={}}ap.$inject=["config.popupMenu","eventBus","canvas"],ap.prototype.registerProvider=function(e,t,n){n||(n=t,t=1e3),this._eventBus.on("popupMenu.getProviders."+e,t,function(e){e.providers.push(n)})},ap.prototype.isEmpty=function(e,t){if(!e)throw new Error("element parameter is missing");if(!t)throw new Error("providerId parameter is missing");var n=this._getProviders(t);if(!n)return!0;var i=this._getEntries(e,n),r=this._getHeaderEntries(e,n),o=T(i)>0,a=r&&T(r)>0;return!o&&!a},ap.prototype.open=function(e,t,n){var i=this._getProviders(t);if(!e)throw new Error("Element is missing");if(!i||!i.length)throw new Error("No registered providers for: "+t);if(!n)throw new Error("the position argument is missing");this.isOpen()&&this.close(),this._emit("open");var r=this._current={className:t,element:e,position:n},o=this._getEntries(e,i),a=this._getHeaderEntries(e,i);r.entries=F({},o,a),r.container=this._createContainer(),T(a)&&r.container.appendChild(this._createEntries(a,"djs-popup-header")),T(o)&&r.container.appendChild(this._createEntries(o,"djs-popup-body"));var s=this._canvas.getContainer();this._attachContainer(r.container,s,n.cursor),this._bindAutoClose()},ap.prototype.close=function(){this.isOpen()&&(this._emit("close"),this._unbindAutoClose(),ve(this._current.container),this._current.container=null)},ap.prototype.isOpen=function(){return!!this._current.container},ap.prototype.trigger=function(e){e.preventDefault();var t=G(e.delegateTarget||e.target,"data-id"),n=this._getEntry(t);if(n.action)return n.action.call(null,e,n)},ap.prototype._getProviders=function(e){var t=this._eventBus.createEvent({type:"popupMenu.getProviders."+e,providers:[]});return this._eventBus.fire(t),t.providers},ap.prototype._getEntries=function(e,t){var n={};return b(t,function(t){if(t.getPopupMenuEntries){var i=t.getPopupMenuEntries(e);f(i)?n=i(n):b(i,function(e,t){n[t]=e})}else b(t.getEntries(e),function(e){var t=e.id;if(!t)throw new Error("every entry must have the id property set");n[t]=H(e,["id"])})}),n},ap.prototype._getHeaderEntries=function(e,t){var n={};return b(t,function(t){if(t.getPopupMenuHeaderEntries){var i=t.getPopupMenuHeaderEntries(e);f(i)?n=i(n):b(i,function(e,t){n[t]=e})}else{if(!t.getHeaderEntries)return;b(t.getHeaderEntries(e),function(e){var t=e.id;if(!t)throw new Error("every entry must have the id property set");n[t]=H(e,["id"])})}}),n},ap.prototype._getEntry=function(e){var t=this._current.entries[e];if(!t)throw new Error("entry not found");return t},ap.prototype._emit=function(e){this._eventBus.fire("popupMenu."+e)},ap.prototype._createContainer=function(){var e=le('<div class="djs-popup">'),t=this._current.position,n=this._current.className;return F(e.style,{position:"absolute",left:t.x+"px",top:t.y+"px",visibility:"hidden"}),K(e).add(n),e},ap.prototype._attachContainer=function(e,t,n){var i=this;ue.bind(e,".entry","click",function(e){i.trigger(e)}),this._updateScale(e),t.appendChild(e),n&&this._assureIsInbounds(e,n)},ap.prototype._updateScale=function(e){var t,n,i=this._canvas.zoom(),r=this._config.scale,o=i;!0!==r&&(!1===r?(t=1,n=1):(t=r.min,n=r.max),p(t)&&i<t&&(o=t),p(n)&&i>n&&(o=n)),function(e,t){e.style["transform-origin"]="top left",["","-ms-","-webkit-"].forEach(function(n){e.style[n+"transform"]=t})}(e,"scale("+o+")")},ap.prototype._assureIsInbounds=function(e,t){var n,i,r=this._canvas._container.getBoundingClientRect(),o=e.offsetLeft,a=e.offsetTop,s=e.scrollWidth,c=e.scrollHeight,p={},u=t.x-r.left,l=t.y-r.top;o+s>r.width&&(p.x=!0),a+c>r.height&&(p.y=!0),p.x&&p.y?(n=u-s+"px",i=l-c+"px"):p.x?(n=u-s+"px",i=l+"px"):p.y&&l<c?(n=u+"px",i="10px"):p.y&&(n=u+"px",i=l-c+"px"),F(e.style,{left:n,top:i},{visibility:"visible","z-index":1e3})},ap.prototype._createEntries=function(e,t){var n=le("<div>"),i=this;return K(n).add(t),b(e,function(e,t){var r=i._createEntry(e,t);n.appendChild(r)}),n},ap.prototype._createEntry=function(e,t){var n=le("<div>"),i=K(n);if(i.add("entry"),e.className&&e.className.split(" ").forEach(function(e){i.add(e)}),G(n,"data-id",t),e.label){var r=le("<span>");r.textContent=e.label,n.appendChild(r)}return e.imageUrl&&n.appendChild(le('<img src="'+e.imageUrl+'" />')),!0===e.active&&i.add("active"),!0===e.disabled&&i.add("disabled"),e.title&&(n.title=e.title),n},ap.prototype._bindAutoClose=function(){this._eventBus.once(op,this.close,this)},ap.prototype._unbindAutoClose=function(){this._eventBus.off(op,this.close,this)};var sp={__init__:["popupMenu"],popupMenu:["type",ap]};function cp(){}cp.prototype.get=function(){return this._data},cp.prototype.set=function(e){this._data=e},cp.prototype.clear=function(){var e=this._data;return delete this._data,e},cp.prototype.isEmpty=function(){return!this._data};var pp={clipboard:["type",cp]};function up(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)})}up.$inject=["eventBus"],up.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 lp={__init__:["mouse"],mouse:["type",up]};function hp(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,y(i,function(e){return e===n.parent})&&(t.parent=n.parent.id),function(e){return!!e.host}(n)&&(t.priority=2,t.host=n.host.id),dp(n)&&(t.priority=3,t.source=n.source.id,t.target=n.target.id,t.waypoints=function(e){return S(e.waypoints,function(e){return(e=mp(e)).original&&(e.original=mp(e.original)),e})}(n)),fp(n)&&(t.priority=4,t.labelTarget=n.labelTarget.id),b(["x","y","width","height"],function(e){d(n[e])&&(t[e]=n[e])}),t.hidden=n.hidden,t.collapsed=n.collapsed}),r.on("copyPaste.pasteElements",function(e){F(e.hints,{createElementsBehavior:!1})})}function dp(e){return!!e.waypoints}function fp(e){return!!e.labelTarget}function mp(e){return F({},e)}function vp(e,t){var n=t.indexOf(e);return-1===n?t:t.splice(n,1)}hp.$inject=["canvas","create","clipboard","elementFactory","eventBus","modeling","mouse","rules"],hp.prototype.copy=function(e){var t,n;return l(e)||(e=e?[e]:[]),n=!1===(t=this._eventBus.fire("copyPaste.canCopyElements",{elements:e}))?{}:this.createTree(l(t)?t:e),this._clipboard.set(n),this._eventBus.fire("copyPaste.elementsCopied",{elements:e,tree:n}),n},hp.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||{}})}},hp.prototype._paste=function(e,t,n,i){b(e,function(e){d(e.x)||(e.x=0),d(e.y)||(e.y=0)});var r=ft(e);return b(e,function(e){dp(e)&&(e.waypoints=S(e.waypoints,function(e){return{x:e.x-r.x-r.width/2,y:e.y-r.y-r.height/2}})),F(e,{x:e.x-r.x-r.width/2,y:e.y-r.y-r.height/2})}),this._modeling.createElements(e,n,t,F({},i))},hp.prototype._createElements=function(e){var t=this,n=this._eventBus,i={},r=[];return b(e,function(e,o){b(e=M(e,"priority"),function(e){var o,a=F({},H(e,["priority"]));return i[e.parent]?a.parent=i[e.parent]:delete a.parent,n.fire("copyPaste.pasteElement",{cache:i,descriptor:a}),dp(a)?(a.source=i[e.source],a.target=i[e.target],o=i[e.id]=t.createConnection(a),void r.push(o)):fp(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},hp.prototype.createConnection=function(e){return this._elementFactory.createConnection(H(e,["id"]))},hp.prototype.createLabel=function(e){return this._elementFactory.createLabel(H(e,["id"]))},hp.prototype.createShape=function(e){return this._elementFactory.createShape(H(e,["id"]))},hp.prototype.hasRelations=function(e,t){var n,i;return!(dp(e)&&(n=y(t,D({id:e.source.id})),i=y(t,D({id:e.target.id})),!n||!i))&&!(fp(e)&&!y(t,D({id:e.labelTarget.id})))},hp.prototype.createTree=function(e){var t=this._rules,n=this,i={},r=[];function o(e,t){var n=y(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)).push({element:n.element,depth:t}):r.push({element:e,depth:t})}return ht(ut(e),function(e,t,n){if(!fp(e))return b(e.labels,function(e){o(e,n)}),b([e.attachers,e.incoming,e.outgoing],function(e){e&&e.length&&b(e,function(e){b(e.labels,function(e){o(e,n)}),o(e,n)})}),o(e,n),e.children}),e=S(r,function(e){return e.element}),r=M(r=S(r,function(t){return t.descriptor={},n._eventBus.fire("copyPaste.copyElement",{descriptor:t.descriptor,element:t.element,elements:e}),t}),function(e){return e.descriptor.priority}),e=S(r,function(e){return e.element}),b(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)?vp(r.element,e):(i[o]||(i[o]=[]),i[o].push(r.descriptor)):vp(r.element,e)}),i};var yp={__depends__:[pp,rp,lp,Cs],__init__:["copyPaste"],copyPaste:["type",hp]};function gp(e,t,n){l(n)||(n=[n]),b(n,function(n){c(e[n])||(t[n]=e[n])})}var bp=750;function xp(e,t,n){var i;t.on("copyPaste.copyElement",bp,function(e){var t=e.descriptor,n=e.element,i=t.oldBusinessObject=zi(n);if(t.type=n.type,gp(i,t,"name"),t.di={},gp(i.di,t.di,["fill","stroke"]),gp(i.di,t,"isExpanded"),_p(t))return t;i.default&&(t.default=i.default.id)}),t.on("moddleCopy.canCopyProperty",function(t){var i,r=t.parent,o=t.property;if("processRef"===t.propertyName&&Ii(r,"bpmn:Participant")&&Ii(o,"bpmn:Process"))return i=e.create("bpmn:Process"),n.copyElement(o,i)}),t.on("copyPaste.pasteElements",function(){i={}}),t.on("copyPaste.pasteElement",function(t){var r,o,a,s=t.cache,c=t.descriptor,p=c.oldBusinessObject;_p(c)?c.businessObject=zi(s[c.labelTarget]):(r=e.create(p.$type),c.businessObject=n.copyElement(p,r),function(e,t){var n=zi(e);e.default&&(i[e.default]={element:n,property:"default"}),e.host&&(zi(e).attachedToRef=zi(t[e.host])),i=H(i,_(i,function(t,i,r){var o=i.element,a=i.property;return r===e.id&&(o[a]=n,t.push(e.id)),t},[]))}(c,s),gp(c,r,["isExpanded","name"]),o=c,l(a="oldBusinessObject")||(a=[a]),b(a,function(e){o[e]&&delete o[e]}))})}function _p(e){return!!e.labelTarget}xp.$inject=["bpmnFactory","eventBus","moddleCopy"];var Ep=["artifacts","dataInputAssociations","dataOutputAssociations","default","flowElements","lanes","incoming","outgoing"];function wp(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 M(t,function(e){return"extensionElements"===e})}),e.on("moddleCopy.canCopyProperty",function(e){var t=e.parent,n=h(t)&&t.$descriptor,i=e.propertyName;return(!i||-1===Ep.indexOf(i))&&(!(i&&n&&!y(n.properties,D({name:i})))&&void 0)}),e.on("moddleCopy.canSetCopiedProperty",function(e){var t,n,i=e.property;if(n="bpmn:ExtensionElements",(t=i)&&"function"==typeof t.$instanceOf&&t.$instanceOf(n)&&(!i.values||!i.values.length))return!1})}function Sp(e,t){return _(e.properties,function(e,n){return t&&n.default?e:e.concat(n.name)},[])}wp.$inject=["eventBus","bpmnFactory","moddle"],wp.prototype.copyElement=function(e,t,n){var i=this;n&&!l(n)&&(n=[n]),n=n||Sp(e.$descriptor);var r=this._eventBus.fire("moddleCopy.canCopyProperties",{propertyNames:n,sourceElement:e,targetElement:t});return!1===r?t:(l(r)&&(n=r),b(n,function(n){var r;v(e,n)&&(r=e.get(n));var o=i.copyProperty(r,t,n);!1!==i._eventBus.fire("moddleCopy.canSetCopiedProperty",{parent:t,property:o,propertyName:n})&&p(o)&&t.set(n,o)}),t)},wp.prototype.copyProperty=function(e,t,n){var i=this,r=this._eventBus.fire("moddleCopy.canCopyProperty",{parent:t,property:e,propertyName:n});if(!1!==r){if(r)return h(r)&&r.$type&&!r.$parent&&(r.$parent=t),r;var o=this._moddle.getPropertyDescriptor(t,n);if(!o.isId&&!o.isReference){if(l(e))return _(e,function(e,o){return(r=i.copyProperty(o,t,n))?(r.$parent=t,e.concat(r)):e},[]);if(h(e)&&e.$type){if(this._moddle.getElementDescriptor(e).isGeneric)return;return(r=i._bpmnFactory.create(e.$type)).$parent=t,r=i.copyElement(e,r)}return e}}};var Cp={__depends__:[yp],__init__:["bpmnCopyPaste","moddleCopy"],bpmnCopyPaste:["type",xp],moddleCopy:["type",wp]},Tp=Math.round;function Rp(e){this._modeling=e}Rp.$inject=["modeling"],Rp.prototype.replaceElement=function(e,t,n){if(e.waypoints)return null;var i=this._modeling,r=t.width||e.width,o=t.height||e.height,a=t.x||e.x,s=t.y||e.y,c=Tp(a+r/2),p=Tp(s+o/2);return i.replaceShape(e,F({},t,{x:c,y:p,width:r,height:o}),n)};var Ap={__init__:["replace"],replace:["type",Rp]};var kp=["cancelActivity","instantiate","eventGatewayType","triggeredByEvent","isInterrupting"];function Pp(e,t,n,i,r,o){this.replaceElement=function(a,s,p){p=p||{};var u=s.type,h=a.businessObject;if(Mp(h)&&"bpmn:SubProcess"===u&&function(e,t){var n=e&&v(e,"collapsed")?e.collapsed:!Fi(e);return n!==(t&&(v(t,"collapsed")||v(t,"isExpanded"))?v(t,"collapsed")?t.collapsed:!t.isExpanded:n)&&(e.collapsed=n,!0)}(a,s))return i.toggleCollapse(a),a;var d,f=e.create(u),m={type:u,businessObject:f},y=Sp(h.$descriptor),x=Sp(f.$descriptor,!0),_=(d=x,y.filter(function(e){return-1!==d.indexOf(e)}));F(f,$(s,kp));var E=g(_,function(e){return"eventDefinitions"===e?Dp(a,s.eventDefinitionType):"loopCharacteristics"===e?!$i(f):!f.hasOwnProperty(e)&&("processRef"!==e||!1!==s.isExpanded)&&"triggeredByEvent"!==e});return f=n.copyElement(h,f,E),s.eventDefinitionType&&(Dp(f,s.eventDefinitionType)||(m.eventDefinitionType=s.eventDefinitionType,m.eventDefinitionAttrs=s.eventDefinitionAttrs)),Ii(h,"bpmn:Activity")&&(Mp(h)?m.isExpanded=Fi(h):s&&v(s,"isExpanded")&&(m.isExpanded=s.isExpanded),Fi(h)&&!Ii(h,"bpmn:Task")&&m.isExpanded&&(m.width=a.width,m.height=a.height)),Mp(h)&&!Mp(f)&&(p.moveChildren=!1),Ii(h,"bpmn:Participant")&&(!0===s.isExpanded?f.processRef=e.create("bpmn:Process"):p.moveChildren=!1,m.width=a.width,m.height=t._getDefaultSize(f).height),f.name=h.name,ts(h,["bpmn:ExclusiveGateway","bpmn:InclusiveGateway","bpmn:Activity"])&&ts(f,["bpmn:ExclusiveGateway","bpmn:InclusiveGateway","bpmn:Activity"])&&(f.default=h.default),s.host&&!Ii(h,"bpmn:BoundaryEvent")&&Ii(f,"bpmn:BoundaryEvent")&&(m.host=s.host),m.di={},function(e,t,n){l(n)||(n=[n]),b(n,function(n){c(e[n])||(t[n]=e[n])})}(h.di,m.di,["fill","stroke"]),m=r.replaceElement(a,m,p),!1!==p.select&&o.select(m),m}}function Mp(e){return Ii(e,"bpmn:SubProcess")}function Dp(e,t){var n=zi(e);return t&&n.get("eventDefinitions").some(function(e){return Ii(e,t)})}Pp.$inject=["bpmnFactory","elementFactory","moddleCopy","modeling","replace","selection"];var Bp={__depends__:[Cp,Ap,Fo],bpmnReplace:["type",Pp]};function Np(e){return function(t){var n=t.target,i=zi(e),r=i.eventDefinitions&&i.eventDefinitions[0],o=i.$type===n.type,a=(r&&r.$type)===n.eventDefinitionType,s=i.triggeredByEvent===n.triggeredByEvent,c=void 0===n.isExpanded||n.isExpanded===Fi(i);return!(o&&a&&s&&c)}}var Op=[{label:"Start Event",actionName:"replace-with-none-start",className:"bpmn-icon-start-event-none",target:{type:"bpmn:StartEvent"}},{label:"Intermediate Throw Event",actionName:"replace-with-none-intermediate-throwing",className:"bpmn-icon-intermediate-event-none",target:{type:"bpmn:IntermediateThrowEvent"}},{label:"End Event",actionName:"replace-with-none-end",className:"bpmn-icon-end-event-none",target:{type:"bpmn:EndEvent"}},{label:"Message Start Event",actionName:"replace-with-message-start",className:"bpmn-icon-start-event-message",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:MessageEventDefinition"}},{label:"Timer Start Event",actionName:"replace-with-timer-start",className:"bpmn-icon-start-event-timer",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:TimerEventDefinition"}},{label:"Conditional Start Event",actionName:"replace-with-conditional-start",className:"bpmn-icon-start-event-condition",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:ConditionalEventDefinition"}},{label:"Signal Start Event",actionName:"replace-with-signal-start",className:"bpmn-icon-start-event-signal",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:SignalEventDefinition"}}],jp=[{label:"Start Event",actionName:"replace-with-none-start",className:"bpmn-icon-start-event-none",target:{type:"bpmn:StartEvent"}},{label:"Intermediate Throw Event",actionName:"replace-with-none-intermediate-throw",className:"bpmn-icon-intermediate-event-none",target:{type:"bpmn:IntermediateThrowEvent"}},{label:"End Event",actionName:"replace-with-none-end",className:"bpmn-icon-end-event-none",target:{type:"bpmn:EndEvent"}},{label:"Message Intermediate Catch Event",actionName:"replace-with-message-intermediate-catch",className:"bpmn-icon-intermediate-event-catch-message",target:{type:"bpmn:IntermediateCatchEvent",eventDefinitionType:"bpmn:MessageEventDefinition"}},{label:"Message Intermediate Throw Event",actionName:"replace-with-message-intermediate-throw",className:"bpmn-icon-intermediate-event-throw-message",target:{type:"bpmn:IntermediateThrowEvent",eventDefinitionType:"bpmn:MessageEventDefinition"}},{label:"Timer Intermediate Catch Event",actionName:"replace-with-timer-intermediate-catch",className:"bpmn-icon-intermediate-event-catch-timer",target:{type:"bpmn:IntermediateCatchEvent",eventDefinitionType:"bpmn:TimerEventDefinition"}},{label:"Escalation Intermediate Throw Event",actionName:"replace-with-escalation-intermediate-throw",className:"bpmn-icon-intermediate-event-throw-escalation",target:{type:"bpmn:IntermediateThrowEvent",eventDefinitionType:"bpmn:EscalationEventDefinition"}},{label:"Conditional Intermediate Catch Event",actionName:"replace-with-conditional-intermediate-catch",className:"bpmn-icon-intermediate-event-catch-condition",target:{type:"bpmn:IntermediateCatchEvent",eventDefinitionType:"bpmn:ConditionalEventDefinition"}},{label:"Link Intermediate Catch Event",actionName:"replace-with-link-intermediate-catch",className:"bpmn-icon-intermediate-event-catch-link",target:{type:"bpmn:IntermediateCatchEvent",eventDefinitionType:"bpmn:LinkEventDefinition",eventDefinitionAttrs:{name:""}}},{label:"Link Intermediate Throw Event",actionName:"replace-with-link-intermediate-throw",className:"bpmn-icon-intermediate-event-throw-link",target:{type:"bpmn:IntermediateThrowEvent",eventDefinitionType:"bpmn:LinkEventDefinition",eventDefinitionAttrs:{name:""}}},{label:"Compensation Intermediate Throw Event",actionName:"replace-with-compensation-intermediate-throw",className:"bpmn-icon-intermediate-event-throw-compensation",target:{type:"bpmn:IntermediateThrowEvent",eventDefinitionType:"bpmn:CompensateEventDefinition"}},{label:"Signal Intermediate Catch Event",actionName:"replace-with-signal-intermediate-catch",className:"bpmn-icon-intermediate-event-catch-signal",target:{type:"bpmn:IntermediateCatchEvent",eventDefinitionType:"bpmn:SignalEventDefinition"}},{label:"Signal Intermediate Throw Event",actionName:"replace-with-signal-intermediate-throw",className:"bpmn-icon-intermediate-event-throw-signal",target:{type:"bpmn:IntermediateThrowEvent",eventDefinitionType:"bpmn:SignalEventDefinition"}}],Lp=[{label:"Start Event",actionName:"replace-with-none-start",className:"bpmn-icon-start-event-none",target:{type:"bpmn:StartEvent"}},{label:"Intermediate Throw Event",actionName:"replace-with-none-intermediate-throw",className:"bpmn-icon-intermediate-event-none",target:{type:"bpmn:IntermediateThrowEvent"}},{label:"End Event",actionName:"replace-with-none-end",className:"bpmn-icon-end-event-none",target:{type:"bpmn:EndEvent"}},{label:"Message End Event",actionName:"replace-with-message-end",className:"bpmn-icon-end-event-message",target:{type:"bpmn:EndEvent",eventDefinitionType:"bpmn:MessageEventDefinition"}},{label:"Escalation End Event",actionName:"replace-with-escalation-end",className:"bpmn-icon-end-event-escalation",target:{type:"bpmn:EndEvent",eventDefinitionType:"bpmn:EscalationEventDefinition"}},{label:"Error End Event",actionName:"replace-with-error-end",className:"bpmn-icon-end-event-error",target:{type:"bpmn:EndEvent",eventDefinitionType:"bpmn:ErrorEventDefinition"}},{label:"Cancel End Event",actionName:"replace-with-cancel-end",className:"bpmn-icon-end-event-cancel",target:{type:"bpmn:EndEvent",eventDefinitionType:"bpmn:CancelEventDefinition"}},{label:"Compensation End Event",actionName:"replace-with-compensation-end",className:"bpmn-icon-end-event-compensation",target:{type:"bpmn:EndEvent",eventDefinitionType:"bpmn:CompensateEventDefinition"}},{label:"Signal End Event",actionName:"replace-with-signal-end",className:"bpmn-icon-end-event-signal",target:{type:"bpmn:EndEvent",eventDefinitionType:"bpmn:SignalEventDefinition"}},{label:"Terminate End Event",actionName:"replace-with-terminate-end",className:"bpmn-icon-end-event-terminate",target:{type:"bpmn:EndEvent",eventDefinitionType:"bpmn:TerminateEventDefinition"}}],Ip=[{label:"Exclusive Gateway",actionName:"replace-with-exclusive-gateway",className:"bpmn-icon-gateway-xor",target:{type:"bpmn:ExclusiveGateway"}},{label:"Parallel Gateway",actionName:"replace-with-parallel-gateway",className:"bpmn-icon-gateway-parallel",target:{type:"bpmn:ParallelGateway"}},{label:"Inclusive Gateway",actionName:"replace-with-inclusive-gateway",className:"bpmn-icon-gateway-or",target:{type:"bpmn:InclusiveGateway"}},{label:"Complex Gateway",actionName:"replace-with-complex-gateway",className:"bpmn-icon-gateway-complex",target:{type:"bpmn:ComplexGateway"}},{label:"Event based Gateway",actionName:"replace-with-event-based-gateway",className:"bpmn-icon-gateway-eventbased",target:{type:"bpmn:EventBasedGateway",instantiate:!1,eventGatewayType:"Exclusive"}}],zp=[{label:"Transaction",actionName:"replace-with-transaction",className:"bpmn-icon-transaction",target:{type:"bpmn:Transaction",isExpanded:!0}},{label:"Event Sub Process",actionName:"replace-with-event-subprocess",className:"bpmn-icon-event-subprocess-expanded",target:{type:"bpmn:SubProcess",triggeredByEvent:!0,isExpanded:!0}},{label:"Sub Process (collapsed)",actionName:"replace-with-collapsed-subprocess",className:"bpmn-icon-subprocess-collapsed",target:{type:"bpmn:SubProcess",isExpanded:!1}}],Fp=[{label:"Sub Process",actionName:"replace-with-subprocess",className:"bpmn-icon-subprocess-expanded",target:{type:"bpmn:SubProcess",isExpanded:!0}},{label:"Event Sub Process",actionName:"replace-with-event-subprocess",className:"bpmn-icon-event-subprocess-expanded",target:{type:"bpmn:SubProcess",triggeredByEvent:!0,isExpanded:!0}}],$p=[{label:"Sub Process",actionName:"replace-with-subprocess",className:"bpmn-icon-subprocess-expanded",target:{type:"bpmn:SubProcess",isExpanded:!0}},{label:"Transaction",actionName:"replace-with-transaction",className:"bpmn-icon-transaction",target:{type:"bpmn:Transaction",isExpanded:!0}}],Hp=[{label:"Task",actionName:"replace-with-task",className:"bpmn-icon-task",target:{type:"bpmn:Task"}},{label:"Send Task",actionName:"replace-with-send-task",className:"bpmn-icon-send",target:{type:"bpmn:SendTask"}},{label:"Receive Task",actionName:"replace-with-receive-task",className:"bpmn-icon-receive",target:{type:"bpmn:ReceiveTask"}},{label:"User Task",actionName:"replace-with-user-task",className:"bpmn-icon-user",target:{type:"bpmn:UserTask"}},{label:"Manual Task",actionName:"replace-with-manual-task",className:"bpmn-icon-manual",target:{type:"bpmn:ManualTask"}},{label:"Business Rule Task",actionName:"replace-with-rule-task",className:"bpmn-icon-business-rule",target:{type:"bpmn:BusinessRuleTask"}},{label:"Service Task",actionName:"replace-with-service-task",className:"bpmn-icon-service",target:{type:"bpmn:ServiceTask"}},{label:"Script Task",actionName:"replace-with-script-task",className:"bpmn-icon-script",target:{type:"bpmn:ScriptTask"}},{label:"Call Activity",actionName:"replace-with-call-activity",className:"bpmn-icon-call-activity",target:{type:"bpmn:CallActivity"}},{label:"Sub Process (collapsed)",actionName:"replace-with-collapsed-subprocess",className:"bpmn-icon-subprocess-collapsed",target:{type:"bpmn:SubProcess",isExpanded:!1}},{label:"Sub Process (expanded)",actionName:"replace-with-expanded-subprocess",className:"bpmn-icon-subprocess-expanded",target:{type:"bpmn:SubProcess",isExpanded:!0}}],Gp=[{label:"Message Boundary Event",actionName:"replace-with-message-boundary",className:"bpmn-icon-intermediate-event-catch-message",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:MessageEventDefinition"}},{label:"Timer Boundary Event",actionName:"replace-with-timer-boundary",className:"bpmn-icon-intermediate-event-catch-timer",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:TimerEventDefinition"}},{label:"Escalation Boundary Event",actionName:"replace-with-escalation-boundary",className:"bpmn-icon-intermediate-event-catch-escalation",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:EscalationEventDefinition"}},{label:"Conditional Boundary Event",actionName:"replace-with-conditional-boundary",className:"bpmn-icon-intermediate-event-catch-condition",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:ConditionalEventDefinition"}},{label:"Error Boundary Event",actionName:"replace-with-error-boundary",className:"bpmn-icon-intermediate-event-catch-error",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:ErrorEventDefinition"}},{label:"Cancel Boundary Event",actionName:"replace-with-cancel-boundary",className:"bpmn-icon-intermediate-event-catch-cancel",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:CancelEventDefinition"}},{label:"Signal Boundary Event",actionName:"replace-with-signal-boundary",className:"bpmn-icon-intermediate-event-catch-signal",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:SignalEventDefinition"}},{label:"Compensation Boundary Event",actionName:"replace-with-compensation-boundary",className:"bpmn-icon-intermediate-event-catch-compensation",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:CompensateEventDefinition"}},{label:"Message Boundary Event (non-interrupting)",actionName:"replace-with-non-interrupting-message-boundary",className:"bpmn-icon-intermediate-event-catch-non-interrupting-message",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:MessageEventDefinition",cancelActivity:!1}},{label:"Timer Boundary Event (non-interrupting)",actionName:"replace-with-non-interrupting-timer-boundary",className:"bpmn-icon-intermediate-event-catch-non-interrupting-timer",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:TimerEventDefinition",cancelActivity:!1}},{label:"Escalation Boundary Event (non-interrupting)",actionName:"replace-with-non-interrupting-escalation-boundary",className:"bpmn-icon-intermediate-event-catch-non-interrupting-escalation",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:EscalationEventDefinition",cancelActivity:!1}},{label:"Conditional Boundary Event (non-interrupting)",actionName:"replace-with-non-interrupting-conditional-boundary",className:"bpmn-icon-intermediate-event-catch-non-interrupting-condition",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:ConditionalEventDefinition",cancelActivity:!1}},{label:"Signal Boundary Event (non-interrupting)",actionName:"replace-with-non-interrupting-signal-boundary",className:"bpmn-icon-intermediate-event-catch-non-interrupting-signal",target:{type:"bpmn:BoundaryEvent",eventDefinitionType:"bpmn:SignalEventDefinition",cancelActivity:!1}}],Wp=[{label:"Message Start Event",actionName:"replace-with-message-start",className:"bpmn-icon-start-event-message",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:MessageEventDefinition"}},{label:"Timer Start Event",actionName:"replace-with-timer-start",className:"bpmn-icon-start-event-timer",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:TimerEventDefinition"}},{label:"Conditional Start Event",actionName:"replace-with-conditional-start",className:"bpmn-icon-start-event-condition",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:ConditionalEventDefinition"}},{label:"Signal Start Event",actionName:"replace-with-signal-start",className:"bpmn-icon-start-event-signal",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:SignalEventDefinition"}},{label:"Error Start Event",actionName:"replace-with-error-start",className:"bpmn-icon-start-event-error",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:ErrorEventDefinition"}},{label:"Escalation Start Event",actionName:"replace-with-escalation-start",className:"bpmn-icon-start-event-escalation",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:EscalationEventDefinition"}},{label:"Compensation Start Event",actionName:"replace-with-compensation-start",className:"bpmn-icon-start-event-compensation",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:CompensateEventDefinition"}},{label:"Message Start Event (non-interrupting)",actionName:"replace-with-non-interrupting-message-start",className:"bpmn-icon-start-event-non-interrupting-message",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:MessageEventDefinition",isInterrupting:!1}},{label:"Timer Start Event (non-interrupting)",actionName:"replace-with-non-interrupting-timer-start",className:"bpmn-icon-start-event-non-interrupting-timer",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:TimerEventDefinition",isInterrupting:!1}},{label:"Conditional Start Event (non-interrupting)",actionName:"replace-with-non-interrupting-conditional-start",className:"bpmn-icon-start-event-non-interrupting-condition",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:ConditionalEventDefinition",isInterrupting:!1}},{label:"Signal Start Event (non-interrupting)",actionName:"replace-with-non-interrupting-signal-start",className:"bpmn-icon-start-event-non-interrupting-signal",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:SignalEventDefinition",isInterrupting:!1}},{label:"Escalation Start Event (non-interrupting)",actionName:"replace-with-non-interrupting-escalation-start",className:"bpmn-icon-start-event-non-interrupting-escalation",target:{type:"bpmn:StartEvent",eventDefinitionType:"bpmn:EscalationEventDefinition",isInterrupting:!1}}],Vp=[{label:"Sequence Flow",actionName:"replace-with-sequence-flow",className:"bpmn-icon-connection"},{label:"Default Flow",actionName:"replace-with-default-flow",className:"bpmn-icon-default-flow"},{label:"Conditional Flow",actionName:"replace-with-conditional-flow",className:"bpmn-icon-conditional-flow"}],Up=[{label:"Expanded Pool",actionName:"replace-with-expanded-pool",className:"bpmn-icon-participant",target:{type:"bpmn:Participant",isExpanded:!0}},{label:"Collapsed Pool",actionName:"replace-with-collapsed-pool",className:"bpmn-icon-lane",target:{type:"bpmn:Participant",isExpanded:!1}}];function qp(e,t,n,i,r,o){this._popupMenu=e,this._modeling=t,this._moddle=n,this._bpmnReplace=i,this._rules=r,this._translate=o,this.register()}qp.$inject=["popupMenu","modeling","moddle","bpmnReplace","rules","translate"],qp.prototype.register=function(){this._popupMenu.registerProvider("bpmn-replace",this)},qp.prototype.getEntries=function(e){var t,n=e.businessObject;if(!this._rules.allowed("shape.replace",{element:e}))return[];var i=Np(e);return Ii(n,"bpmn:StartEvent")&&!$i(n.$parent)?(t=g(Op,i),this._createEntries(e,t)):Ii(n,"bpmn:Participant")?(t=g(Up,function(e){return Fi(n)!==e.target.isExpanded}),this._createEntries(e,t)):Ii(n,"bpmn:StartEvent")&&$i(n.$parent)?(t=g(Wp,function(t){var n=!1!==t.target.isInterrupting,r=zi(e).isInterrupting===n;return i(t)||!i(t)&&!r}),this._createEntries(e,t)):Ii(n,"bpmn:EndEvent")?(t=g(Lp,function(e){return!("bpmn:CancelEventDefinition"==e.target.eventDefinitionType&&!Ii(n.$parent,"bpmn:Transaction"))&&i(e)}),this._createEntries(e,t)):Ii(n,"bpmn:BoundaryEvent")?(t=g(Gp,function(e){var t=e.target;if("bpmn:CancelEventDefinition"==t.eventDefinition&&!Ii(n.attachedToRef,"bpmn:Transaction"))return!1;var r=!1!==t.cancelActivity,o=n.cancelActivity==r;return i(e)||!i(e)&&!o}),this._createEntries(e,t)):Ii(n,"bpmn:IntermediateCatchEvent")||Ii(n,"bpmn:IntermediateThrowEvent")?(t=g(jp,i),this._createEntries(e,t)):Ii(n,"bpmn:Gateway")?(t=g(Ip,i),this._createEntries(e,t)):Ii(n,"bpmn:Transaction")?(t=g(Fp,i),this._createEntries(e,t)):$i(n)&&Fi(n)?(t=g($p,i),this._createEntries(e,t)):Ii(n,"bpmn:SubProcess")&&Fi(n)?(t=g(zp,i),this._createEntries(e,t)):Ii(n,"bpmn:AdHocSubProcess")&&!Fi(n)?(t=g(Hp,function(t){var n=t.target,i="bpmn:SubProcess"===n.type,r=!0===n.isExpanded;return Np(e)&&(!i||r)}),this._createEntries(e,t)):Ii(n,"bpmn:SequenceFlow")?this._createSequenceFlowEntries(e,Vp):Ii(n,"bpmn:FlowNode")?(t=g(Hp,i),Ii(n,"bpmn:SubProcess")&&!Fi(n)&&(t=g(t,function(e){return"Sub Process (collapsed)"!==e.label})),this._createEntries(e,t)):[]},qp.prototype.getHeaderEntries=function(e){var t=[];return Ii(e,"bpmn:Activity")&&!$i(e)&&(t=t.concat(this._getLoopEntries(e))),!Ii(e,"bpmn:SubProcess")||Ii(e,"bpmn:Transaction")||$i(e)||t.push(this._getAdHocEntry(e)),t},qp.prototype._createEntries=function(e,t){var n=[],i=this;return b(t,function(t){var r=i._createMenuEntry(t,e);n.push(r)}),n},qp.prototype._createSequenceFlowEntries=function(e,t){var n=zi(e),i=[],r=this._modeling,o=this._moddle,a=this;return b(t,function(t){switch(t.actionName){case"replace-with-default-flow":n.sourceRef.default!==n&&(Ii(n.sourceRef,"bpmn:ExclusiveGateway")||Ii(n.sourceRef,"bpmn:InclusiveGateway")||Ii(n.sourceRef,"bpmn:ComplexGateway")||Ii(n.sourceRef,"bpmn:Activity"))&&i.push(a._createMenuEntry(t,e,function(){r.updateProperties(e.source,{default:n})}));break;case"replace-with-conditional-flow":!n.conditionExpression&&Ii(n.sourceRef,"bpmn:Activity")&&i.push(a._createMenuEntry(t,e,function(){var t=o.create("bpmn:FormalExpression",{body:""});r.updateProperties(e,{conditionExpression:t})}));break;default:if(Ii(n.sourceRef,"bpmn:Activity")&&n.conditionExpression)return i.push(a._createMenuEntry(t,e,function(){r.updateProperties(e,{conditionExpression:void 0})}));if((Ii(n.sourceRef,"bpmn:ExclusiveGateway")||Ii(n.sourceRef,"bpmn:InclusiveGateway")||Ii(n.sourceRef,"bpmn:ComplexGateway")||Ii(n.sourceRef,"bpmn:Activity"))&&n.sourceRef.default===n)return i.push(a._createMenuEntry(t,e,function(){r.updateProperties(e.source,{default:void 0})}))}}),i},qp.prototype._createMenuEntry=function(e,t,n){var i=this._translate,r=this._bpmnReplace.replaceElement;return n=n||function(){return r(t,e.target)},{label:i(e.label),className:e.className,id:e.actionName,action:n}},qp.prototype._getLoopEntries=function(e){var t=this,n=this._translate;function i(n,i){var r;i.active?r=void 0:(r=t._moddle.create(i.options.loopCharacteristics),i.options.isSequential&&(r.isSequential=i.options.isSequential)),t._modeling.updateProperties(e,{loopCharacteristics:r})}var r,o,a,s=zi(e).loopCharacteristics;return s&&(r=s.isSequential,o=void 0===s.isSequential,a=void 0!==s.isSequential&&!s.isSequential),[{id:"toggle-parallel-mi",className:"bpmn-icon-parallel-mi-marker",title:n("Parallel Multi Instance"),active:a,action:i,options:{loopCharacteristics:"bpmn:MultiInstanceLoopCharacteristics",isSequential:!1}},{id:"toggle-sequential-mi",className:"bpmn-icon-sequential-mi-marker",title:n("Sequential Multi Instance"),active:r,action:i,options:{loopCharacteristics:"bpmn:MultiInstanceLoopCharacteristics",isSequential:!0}},{id:"toggle-loop",className:"bpmn-icon-loop-marker",title:n("Loop"),active:o,action:i,options:{loopCharacteristics:"bpmn:StandardLoopCharacteristics"}}]},qp.prototype._getAdHocEntry=function(e){var t=this._translate,n=Ii(zi(e),"bpmn:AdHocSubProcess"),i=this._bpmnReplace.replaceElement;return{id:"toggle-adhoc",className:"bpmn-icon-ad-hoc-marker",title:t("Ad-hoc"),active:n,action:function(t,r){return i(e,n?{type:"bpmn:SubProcess"}:{type:"bpmn:AdHocSubProcess"},{autoResize:!1,layoutConnection:!1})}}};var Kp={__depends__:[sp,Bp],__init__:["replaceMenuProvider"],replaceMenuProvider:["type",qp]},Yp=Math.max,Xp=Math.min,Zp=20;function Qp(e,t){return{top:e.top-t.top,right:e.right-t.right,bottom:e.bottom-t.bottom,left:e.left-t.left}}function Jp(e,t,n){var i=t[e],r=n.min&&n.min[e],o=n.max&&n.max[e];return d(r)&&(i=(/top|left/.test(e)?Xp:Yp)(i,r)),d(o)&&(i=(/top|left/.test(e)?Yp:Xp)(i,o)),i}function eu(e,t){return void 0!==e?e:Zp}function tu(e){return!e.waypoints&&"label"!==e.type}function nu(e,t){var n;if((n=void 0===e.length?g(e.children,tu):e).length)return function(e,t){var n,i,r,o;return"object"==typeof t?(n=eu(t.left),i=eu(t.right),r=eu(t.top),o=eu(t.bottom)):n=i=r=o=eu(t),{x:e.x-n,y:e.y-r,width:e.width+n+i,height:e.height+r+o}}(ft(n),t)}var iu=Math.abs;var ru=["bpmn:Participant","bpmn:Process","bpmn:SubProcess"];function ou(e,t){return t=t||[],e.children.filter(function(e){Ii(e,"bpmn:Lane")&&(ou(e,t),t.push(e))}),t}function au(e){return e.children.filter(function(e){return Ii(e,"bpmn:Lane")})}function su(e){return ns(e,ru)||e}function cu(e,t){var n=su(e),i=ou(n,Ii(n,"bpmn:Process")?[]:[n]),r=uo(e),o=uo(t),a=function(e,t){return Qp(uo(t),uo(e))}(e,t),s=[];return i.forEach(function(t){if(t!==e){var n,i,c=0,p=a.right,u=0,l=a.left,h=uo(t);a.top&&(iu(h.bottom-r.top)<10&&(u=o.top-h.bottom),iu(h.top-r.top)<5&&(c=o.top-h.top)),a.bottom&&(iu(h.top-r.bottom)<10&&(c=o.bottom-h.top),iu(h.bottom-r.bottom)<5&&(u=o.bottom-h.bottom)),(c||p||u||l)&&s.push({shape:t,newBounds:(n=t,i={top:c,right:p,bottom:u,left:l},{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 pu(e,t,n,i,r,o,a,s,c,p,u,l){e=e||{},i.registerProvider(this),this._contextPad=i,this._modeling=r,this._elementFactory=o,this._connect=a,this._create=s,this._popupMenu=c,this._canvas=p,this._rules=u,this._translate=l,!1!==e.autoPlace&&(this._autoPlace=t.get("autoPlace",!1)),n.on("create.end",250,function(e){var t=e.context.shape;if(To(e)&&i.isOpen(t)){var n=i.getEntries(t);n.replace&&n.replace.action.click(e,t)}})}function uu(e,t,n){var i=e.$instanceOf(t),r=!1;return b(e.eventDefinitions||[],function(e){e.$type===n&&(r=!0)}),i&&r}pu.$inject=["config.contextPad","injector","eventBus","contextPad","modeling","elementFactory","connect","create","popupMenu","canvas","rules","translate"],pu.prototype.getContextPadEntries=function(e){var t=this._contextPad,n=this._modeling,i=this._elementFactory,r=this._connect,o=this._create,a=this._popupMenu,s=this._canvas,c=this._rules,p=this._autoPlace,u=this._translate,h={};if("label"===e.type)return h;var d=e.businessObject;function f(e,t){r.start(e,t)}function m(e,t,n,r){function a(t,n){var a=i.createShape(F({type:e},r));o.start(t,a,{source:n})}return"string"!=typeof n&&(r=n,n=u("Append {type}",{type:e.replace(/^bpmn:/,"")})),{group:"model",className:t,title:n,action:{dragstart:a,click:p?function(t,n){var o=i.createShape(F({type:e},r));p.append(n,o)}:a}}}function v(e){return function(i,r){n.splitLane(r,e),t.open(r,!0)}}if(ts(d,["bpmn:Lane","bpmn:Participant"])&&Fi(d)){var y=au(e);F(h,{"lane-insert-above":{group:"lane-insert-above",className:"bpmn-icon-lane-insert-above",title:u("Add Lane above"),action:{click:function(e,t){n.addLane(t,"top")}}}}),y.length<2&&(e.height>=120&&F(h,{"lane-divide-two":{group:"lane-divide",className:"bpmn-icon-lane-divide-two",title:u("Divide into two Lanes"),action:{click:v(2)}}}),e.height>=180&&F(h,{"lane-divide-three":{group:"lane-divide",className:"bpmn-icon-lane-divide-three",title:u("Divide into three Lanes"),action:{click:v(3)}}})),F(h,{"lane-insert-below":{group:"lane-insert-below",className:"bpmn-icon-lane-insert-below",title:u("Add Lane below"),action:{click:function(e,t){n.addLane(t,"bottom")}}}})}Ii(d,"bpmn:FlowNode")&&(Ii(d,"bpmn:EventBasedGateway")?F(h,{"append.receive-task":m("bpmn:ReceiveTask","bpmn-icon-receive-task",u("Append ReceiveTask")),"append.message-intermediate-event":m("bpmn:IntermediateCatchEvent","bpmn-icon-intermediate-event-catch-message",u("Append MessageIntermediateCatchEvent"),{eventDefinitionType:"bpmn:MessageEventDefinition"}),"append.timer-intermediate-event":m("bpmn:IntermediateCatchEvent","bpmn-icon-intermediate-event-catch-timer",u("Append TimerIntermediateCatchEvent"),{eventDefinitionType:"bpmn:TimerEventDefinition"}),"append.condition-intermediate-event":m("bpmn:IntermediateCatchEvent","bpmn-icon-intermediate-event-catch-condition",u("Append ConditionIntermediateCatchEvent"),{eventDefinitionType:"bpmn:ConditionalEventDefinition"}),"append.signal-intermediate-event":m("bpmn:IntermediateCatchEvent","bpmn-icon-intermediate-event-catch-signal",u("Append SignalIntermediateCatchEvent"),{eventDefinitionType:"bpmn:SignalEventDefinition"})}):uu(d,"bpmn:BoundaryEvent","bpmn:CompensateEventDefinition")?F(h,{"append.compensation-activity":m("bpmn:Task","bpmn-icon-task",u("Append compensation activity"),{isForCompensation:!0})}):Ii(d,"bpmn:EndEvent")||d.isForCompensation||uu(d,"bpmn:IntermediateThrowEvent","bpmn:LinkEventDefinition")||$i(d)||F(h,{"append.end-event":m("bpmn:EndEvent","bpmn-icon-end-event-none",u("Append EndEvent")),"append.gateway":m("bpmn:ExclusiveGateway","bpmn-icon-gateway-none",u("Append Gateway")),"append.append-task":m("bpmn:Task","bpmn-icon-task",u("Append Task")),"append.intermediate-event":m("bpmn:IntermediateThrowEvent","bpmn-icon-intermediate-event-none",u("Append Intermediate/Boundary Event"))})),a.isEmpty(e,"bpmn-replace")||F(h,{replace:{group:"edit",className:"bpmn-icon-screw-wrench",title:u("Change type"),action:{click:function(e,n){var i=F(function(e){var n=s.getContainer(),i=t.getPad(e).html,r=n.getBoundingClientRect(),o=i.getBoundingClientRect(),a=o.top-r.top;return{x:o.left-r.left,y:a+o.height+5}}(n),{cursor:{x:e.x,y:e.y}});a.open(n,"bpmn-replace",i)}}}}),ts(d,["bpmn:FlowNode","bpmn:InteractionNode","bpmn:DataObjectReference","bpmn:DataStoreReference"])&&F(h,{"append.text-annotation":m("bpmn:TextAnnotation","bpmn-icon-text-annotation"),connect:{group:"connect",className:"bpmn-icon-connection-multi",title:u("Connect using "+(d.isForCompensation?"":"Sequence/MessageFlow or ")+"Association"),action:{click:f,dragstart:f}}}),ts(d,["bpmn:DataObjectReference","bpmn:DataStoreReference"])&&F(h,{connect:{group:"connect",className:"bpmn-icon-connection-multi",title:u("Connect using DataInputAssociation"),action:{click:f,dragstart:f}}});var g=c.allowed("elements.delete",{elements:[e]});return l(g)&&(g=g[0]===e),g&&F(h,{delete:{group:"edit",className:"bpmn-icon-trash",title:u("Remove"),action:{click:function(t){n.removeElements([e])}}}}),h};var lu={__depends__:[zc,$c,Fo,Pc,rp,Kp],__init__:["contextPadProvider"],contextPadProvider:["type",pu]},hu={horizontal:["x","width"],vertical:["y","height"]};function du(e){this._modeling=e,this._filters=[],this.registerFilter(function(e,t,n){var i,r=0,o=0;return b(e,function(e){e.waypoints||e.labelTarget||(r+=e[n],o+=1)}),i=Math.round(r/o),g(e,function(e){return e[n]<i+50})})}du.$inject=["modeling"],du.prototype.registerFilter=function(e){if("function"!=typeof e)throw new Error("the filter has to be a function");this._filters.push(e)},du.prototype.trigger=function(e,t){var n,i,r=this._modeling;if(!(e.length<3||(this._setOrientation(t),i=this._filterElements(e),(n=this._createGroups(i)).length<=2)))return r.distributeElements(n,this._axis,this._dimension),n},du.prototype._filterElements=function(e){var t=this._filters,n=this._axis,i=this._dimension,r=[].concat(e);return t.length?(b(t,function(e){r=e(r,n,i)}),r):e},du.prototype._createGroups=function(e){var t=[],n=this,i=this._axis,r=this._dimension;if(!i)throw new Error('must have a defined "axis" and "dimension"');return b(M(e,i),function(e,o){var a,s=n._findRange(e,i,r),c=t[t.length-1];c&&n._hasIntersection(c.range,s)?t[t.length-1].elements.push(e):(a={range:s,elements:[e]},t.push(a))}),t},du.prototype._setOrientation=function(e){var t=hu[e];this._axis=t[0],this._dimension=t[1]},du.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)},du.prototype._findRange=function(e){var t=e[this._axis];return{min:t+5,max:t+e[this._dimension]-5}};var fu={__init__:["distributeElements"],distributeElements:["type",du]};function mu(e){e.registerFilter(function(e){return g(e,function(e){var t=ts(e,["bpmn:Association","bpmn:BoundaryEvent","bpmn:DataInputAssociation","bpmn:DataOutputAssociation","bpmn:Lane","bpmn:MessageFlow","bpmn:Participant","bpmn:SequenceFlow","bpmn:TextAnnotation"]);return!(e.labelTarget||t)})})}mu.$inject=["distributeElements"];var vu={__depends__:[fu],__init__:["bpmnDistributeElements"],bpmnDistributeElements:["type",mu]};function yu(e,t){this._actions={};var n=this;e.on("diagram.init",function(){n._registerDefaultActions(t),e.fire("editorActions.init",{editorActions:n})})}function gu(e,t){return new Error(e+" "+t)}yu.$inject=["eventBus","injector"],yu.prototype._registerDefaultActions=function(e){var t=e.get("commandStack",!1),n=e.get("modeling",!1),i=e.get("selection",!1),r=e.get("zoomScroll",!1),o=e.get("copyPaste",!1),a=e.get("canvas",!1),s=e.get("rules",!1),c=e.get("keyboardMove",!1),p=e.get("keyboardMoveSelection",!1);t&&(this.register("undo",function(){t.undo()}),this.register("redo",function(){t.redo()})),o&&i&&this.register("copy",function(){var e=i.get();o.copy(e)}),o&&this.register("paste",function(){o.paste()}),r&&this.register("stepZoom",function(e){r.stepZoom(e.value)}),a&&this.register("zoom",function(e){a.zoom(e.value)}),n&&i&&s&&this.register("removeSelection",function(){var e=i.get();if(e.length){var t,r=s.allowed("elements.delete",{elements:e});!1!==r&&(t=l(r)?r:e).length&&n.removeElements(t.slice())}}),c&&this.register("moveCanvas",function(e){c.moveCanvas(e)}),p&&this.register("moveSelection",function(e){p.moveSelection(e.direction,e.accelerated)})},yu.prototype.trigger=function(e,t){if(!this._actions[e])throw gu(e,"is not a registered action");return this._actions[e](t)},yu.prototype.register=function(e,t){var n=this;if("string"==typeof e)return this._registerAction(e,t);b(e,function(e,t){n._registerAction(t,e)})},yu.prototype._registerAction=function(e,t){if(this.isRegistered(e))throw gu(e,"is already registered");this._actions[e]=t},yu.prototype.unregister=function(e){if(!this.isRegistered(e))throw gu(e,"is not a registered action");this._actions[e]=void 0},yu.prototype.getActions=function(){return Object.keys(this._actions)},yu.prototype.isRegistered=function(e){return!!this._actions[e]};var bu={__init__:["editorActions"],editorActions:["type",yu]};function xu(e){e.invoke(yu,this)}n(xu,yu),xu.$inject=["injector"],xu.prototype._registerDefaultActions=function(e){yu.prototype._registerDefaultActions.call(this,e);var t=e.get("canvas",!1),n=e.get("elementRegistry",!1),i=e.get("selection",!1),r=e.get("spaceTool",!1),o=e.get("lassoTool",!1),a=e.get("handTool",!1),s=e.get("globalConnect",!1),c=e.get("distributeElements",!1),p=e.get("alignElements",!1),u=e.get("directEditing",!1),l=e.get("searchPad",!1),h=e.get("modeling",!1);t&&n&&i&&this._registerAction("selectElements",function(){var e=t.getRootElement(),r=n.filter(function(t){return t!==e});return i.select(r),r}),r&&this._registerAction("spaceTool",function(){r.toggle()}),o&&this._registerAction("lassoTool",function(){o.toggle()}),a&&this._registerAction("handTool",function(){a.toggle()}),s&&this._registerAction("globalConnectTool",function(){s.toggle()}),i&&c&&this._registerAction("distributeElements",function(e){var t=i.get(),n=e.type;t.length&&c.trigger(t,n)}),i&&p&&this._registerAction("alignElements",function(e){var t=i.get(),n=[],r=e.type;t.length&&(n=g(t,function(e){return!Ii(e,"bpmn:Lane")}),p.trigger(n,r))}),i&&h&&this._registerAction("setColor",function(e){var t=i.get();t.length&&h.setColor(t,e)}),i&&u&&this._registerAction("directEditing",function(){var e=i.get();e.length&&u.activate(e[0])}),l&&this._registerAction("find",function(){l.toggle()}),t&&h&&this._registerAction("moveToOrigin",function(){var e,i,r=t.getRootElement();e=ft(i=Ii(r,"bpmn:Collaboration")?n.filter(function(e){return Ii(e.parent,"bpmn:Collaboration")}):n.filter(function(e){return e!==r&&!Ii(e.parent,"bpmn:SubProcess")})),h.moveElements(i,{x:-e.x,y:-e.y},r)})};var _u={__depends__:[bu],editorActions:["type",xu]};function Eu(e){e.on(["create.init","shape.move.init"],function(e){var t=e.context;ts(e.shape,["bpmn:Participant","bpmn:SubProcess","bpmn:TextAnnotation"])&&(t.gridSnappingContext||(t.gridSnappingContext={}),t.gridSnappingContext.snapLocation="top-left")})}Eu.$inject=["eventBus"];function wu(e,t,n){return n||(n="round"),Math[n](e/t)*t}var Su=1200,Cu=800;function Tu(e,t,n){var i=!n||!1!==n.active;this._eventBus=t;var r=this;t.on("diagram.init",Cu,function(){r.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"],Su,function(t){var n=t.originalEvent;if(!(!r.active||n&&Yo(n))){var i=t.context,o=i.gridSnappingContext;o||(o=i.gridSnappingContext={}),["x","y"].forEach(function(n){var i={},o=function(e,t,n){var i=e.context,r=e.shape,o=i.gridSnappingContext,a=o.snapLocation,s=o.snapOffset;if(s&&d(s[t]))return s[t];s||(s=o.snapOffset={});d(s[t])||(s[t]=0);if(!r)return s[t];n.get(r.id)||(Ru(t)?s[t]+=r[t]+r.width/2:s[t]+=r[t]+r.height/2);if(!a)return s[t];"x"===t?/left/.test(a)?s[t]-=r.width/2:/right/.test(a)&&(s[t]+=r.width/2):/top/.test(a)?s[t]-=r.height/2:/bottom/.test(a)&&(s[t]+=r.height/2);return s[t]}(t,n,e);o&&(i.offset=o);var a=function(e,t){var n=e.context,i=n.createConstraints,r=n.resizeConstraints||{},o=n.gridSnappingContext,a=o.snapConstraints;if(a&&a[t])return a[t];a||(a=o.snapConstraints={});a[t]||(a[t]={});var s=n.direction;i&&(Ru(t)?(a.x.min=i.left,a.x.max=i.right):(a.y.min=i.top,a.y.max=i.bottom));var c=r.min,p=r.max;c&&(Ru(t)?ku(s)?a.x.max=c.left:a.x.min=c.right:Au(s)?a.y.max=c.top:a.y.min=c.bottom);p&&(Ru(t)?ku(s)?a.x.min=p.left:a.x.max=p.right:Au(s)?a.y.min=p.top:a.y.max=p.bottom);return a[t]}(t,n);a&&F(i,a),mc(t,n)||r.snapEvent(t,n,i)})}})}function Ru(e){return"x"===e}function Au(e){return-1!==e.indexOf("n")}function ku(e){return-1!==e.indexOf("w")}function Pu(e,t){ss.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 r=t.shape,o=t.newBounds;m(i)?t.newBounds=n.snapComplex(o,i):t.newBounds=n.snapSimple(r,o)}})}Tu.prototype.snapEvent=function(e,t,n){vc(e,t,this.snapValue(e[t],n))},Tu.prototype.getGridSpacing=function(){return 10},Tu.prototype.snapValue=function(e,t){var n,i,r=0;return t&&t.offset&&(r=t.offset),e=wu(e+=r,10),t&&t.min&&d(n=t.min)&&(n=wu(n+r,10,"ceil"),e=Math.max(e,n)),t&&t.max&&d(i=t.max)&&(i=wu(i+r,10,"floor"),e=Math.min(e,i)),e-=r},Tu.prototype.isActive=function(){return this.active},Tu.prototype.setActive=function(e){this.active=e,this._eventBus.fire("gridSnapping.toggle",{active:e})},Tu.prototype.toggleActive=function(){this.setActive(!this.active)},Tu.$inject=["elementRegistry","eventBus","config.gridSnapping"],Pu.$inject=["eventBus","gridSnapping","modeling"],n(Pu,ss),Pu.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},Pu.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},Pu.prototype.snapHorizontally=function(e,t){var n=this._gridSnapping,i=/w/.test(t),r=/e/.test(t),o={};return o.width=n.snapValue(e.width,{min:e.width}),r&&(i?(o.x=n.snapValue(e.x,{max:e.x}),o.width+=n.snapValue(e.x-o.x,{min:e.x-o.x})):e.x=e.x+e.width-o.width),F(e,o),e},Pu.prototype.snapVertically=function(e,t){var n=this._gridSnapping,i=/n/.test(t),r=/s/.test(t),o={};return o.height=n.snapValue(e.height,{min:e.height}),i&&(r?(o.y=n.snapValue(e.y,{max:e.y}),o.height+=n.snapValue(e.y-o.y,{min:e.y-o.y})):e.y=e.y+e.height-o.height),F(e,o),e};var Mu=2e3;function Du(e,t){e.on(["spaceTool.move","spaceTool.end"],Mu,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))})}Du.$inject=["eventBus","gridSnapping"];var Bu={__depends__:[{__init__:["gridSnappingResizeBehavior","gridSnappingSpaceToolBehavior"],gridSnappingResizeBehavior:["type",Pu],gridSnappingSpaceToolBehavior:["type",Du]}],__init__:["gridSnapping"],gridSnapping:["type",Tu]},Nu=2e3;function Ou(e,t){e.on("autoPlace",Nu,function(e){var n=e.source,i=ho(n),r=e.shape,o=is(n,r);return["x","y"].forEach(function(e){var n={};o[e]!==i[e]&&(o[e]>i[e]?n.min=o[e]:n.max=o[e],Ii(r,"bpmn:TextAnnotation")&&(!function(e){return"x"===e}(e)?n.offset=-r.height/2:n.offset=-r.width/2),o[e]=t.snapValue(o[e],n))}),o})}Ou.$inject=["eventBus","gridSnapping"];var ju=1750;function Lu(e,t,n){t.on(["create.start","shape.move.start"],ju,function(t){var i=t.context,r=i.shape,o=e.getRootElement();Ii(r,"bpmn:Participant")&&Ii(o,"bpmn:Process")&&o.children.length&&(i.createConstraints&&(r.width=n.snapValue(r.width,{min:r.width}),r.height=n.snapValue(r.height,{min:r.height})))})}Lu.$inject=["canvas","eventBus","gridSnapping"];var Iu=3e3;function zu(e,t,n){ss.call(this,e),this._gridSnapping=t;var i=this;this.postExecuted(["connection.create","connection.layout"],Iu,function(e){var t=e.context,r=t.connection,o=t.hints||{},a=r.waypoints;o.connectionStart||o.connectionEnd||!1===o.createElementsBehavior||function(e){return e.length>3}(a)&&n.updateWaypoints(r,i.snapMiddleSegments(a))})}function Fu(e,t,n){var i=Rr(t,n),r={};return function(e){return"h"===e}(i)&&(r.y=e.snapValue(t.y)),function(e){return"v"===e}(i)&&(r.x=e.snapValue(t.x)),("x"in r||"y"in r)&&(t=F({},t,r),n=F({},n,r)),[t,n]}zu.$inject=["eventBus","gridSnapping","modeling"],n(zu,ss),zu.prototype.snapMiddleSegments=function(e){var t,n=this._gridSnapping;e=e.slice();for(var i=1;i<e.length-2;i++)t=Fu(n,e[i],e[i+1]),e[i]=t[0],e[i+1]=t[1];return e};var $u={__depends__:[Bu,{__init__:["gridSnappingAutoPlaceBehavior","gridSnappingCreateParticipantBehavior","gridSnappingLayoutConnectionBehavior"],gridSnappingAutoPlaceBehavior:["type",Ou],gridSnappingCreateParticipantBehavior:["type",Lu],gridSnappingLayoutConnectionBehavior:["type",zu]}],__init__:["bpmnGridSnapping"],bpmnGridSnapping:["type",Eu]};function Hu(e,t){this._interactionEvents=t;var n=this;e.on(["interactionEvents.createHit","interactionEvents.updateHit"],function(e){var t=e.element,i=e.gfx;return Ii(t,"bpmn:Lane")?n.createParticipantHit(t,i):Ii(t,"bpmn:Participant")?Fi(t)?n.createParticipantHit(t,i):n.createDefaultHit(t,i):Ii(t,"bpmn:SubProcess")?Fi(t)?n.createSubProcessHit(t,i):n.createDefaultHit(t,i):void 0})}Hu.$inject=["eventBus","interactionEvents"],Hu.prototype.createDefaultHit=function(e,t){return this._interactionEvents.removeHits(t),this._interactionEvents.createDefaultHit(e,t),!0},Hu.prototype.createParticipantHit=function(e,t){return this._interactionEvents.removeHits(t),this._interactionEvents.createBoxHit(t,"click-stroke",{width:e.width,height:e.height}),this._interactionEvents.createBoxHit(t,"all",{width:30,height:e.height}),!0},Hu.prototype.createSubProcessHit=function(e,t){return this._interactionEvents.removeHits(t),this._interactionEvents.createBoxHit(t,"click-stroke",{width:e.width,height:e.height}),this._interactionEvents.createBoxHit(t,"all",{width:e.width,height:30}),!0};var Gu={__init__:["bpmnInteractionEvents"],bpmnInteractionEvents:["type",Hu]};function Wu(e){e.invoke(ra,this)}n(Wu,ra),Wu.$inject=["injector"],Wu.prototype.registerBindings=function(e,t){function n(n,i){t.isRegistered(n)&&e.addListener(i)}ra.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("find",function(n){var i=n.keyEvent;if(e.isKey(["f","F"],i)&&e.isCmd(i))return t.trigger("find"),!0}),n("spaceTool",function(n){var i=n.keyEvent;if(!e.hasModifier(i))return e.isKey(["s","S"],i)?(t.trigger("spaceTool"),!0):void 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("globalConnectTool",function(n){var i=n.keyEvent;if(!e.hasModifier(i))return e.isKey(["c","C"],i)?(t.trigger("globalConnectTool"),!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})};var Vu={__depends__:[oa],__init__:["keyboardBindings"],keyboardBindings:["type",Wu]},Uu={moveSpeed:1,moveSpeedAccelerated:10},qu=1500,Ku={ArrowLeft:"left",Left:"left",ArrowUp:"up",Up:"up",ArrowRight:"right",Right:"right",ArrowDown:"down",Down:"down"},Yu={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 Xu(e,t,n,i,r){var o=this;this._config=F({},Uu,e||{}),t.addListener(qu,function(e){var n=e.keyEvent,i=Ku[n.key];if(i&&!t.isCmd(n)){var r=t.isShift(n);return o.moveSelection(i,r),!0}}),this.moveSelection=function(e,t){var o=r.get();if(o.length){var a=this._config[t?"moveSpeedAccelerated":"moveSpeed"],s=Yu[e](a);i.allowed("elements.move",{shapes:o})&&n.moveElements(o,s)}}}Xu.$inject=["config.keyboardMoveSelection","keyboard","modeling","rules","selection"];var Zu={__depends__:[oa,Fo],__init__:["keyboardMoveSelection"],keyboardMoveSelection:["type",Xu]};function Qu(e,t,n,i){e.on("element.changed",function(i){var r=i.element;(r.parent||r===t.getRootElement())&&(i.gfx=n.getGraphics(r)),i.gfx&&e.fire(mt(r)+".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)})}Qu.$inject=["eventBus","canvas","elementRegistry","graphicsFactory"];var Ju={__init__:["changeSupport"],changeSupport:["type",Qu]};function el(e,t,n,i){this._dragging=i,this._rules=t;var r=this;function o(e,t){var n,i=e.shape,o=e.direction,a=e.resizeConstraints;e.delta=t,n=function(e,t,n){var i=n.x,r=n.y,o={x:e.x,y:e.y,width:e.width,height:e.height};return-1!==t.indexOf("n")?(o.y=e.y+r,o.height=e.height-r):-1!==t.indexOf("s")&&(o.height=e.height+r),-1!==t.indexOf("e")?o.width=e.width+i:-1!==t.indexOf("w")&&(o.x=e.x+i,o.width=e.width-i),o}(i,o,t),e.newBounds=function(e,t){if(!t)return e;var n=uo(e);return lo({top:Jp("top",n,t),right:Jp("right",n,t),bottom:Jp("bottom",n,t),left:Jp("left",n,t)})}(n,a),e.canExecute=r.canResize(e)}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=r.computeMinResizeBox(t)),t.resizeConstraints={min:uo(i)})}),e.on("resize.move",function(e){var t={x:e.dx,y:e.dy};o(e.context,t)}),e.on("resize.end",function(e){!function(e){var t=e.shape,i=e.canExecute,r=e.newBounds;if(i){if(!function(e,t){return e.x!==t.x||e.y!==t.y||e.width!==t.width||e.height!==t.height}(t,r=co(r)))return;n.resizeShape(t,r)}}(e.context)})}function tl(e,t){var n=ho(e),i=uo(e),r={x:n.x,y:n.y};return-1!==t.indexOf("n")?r.y=i.top:-1!==t.indexOf("s")&&(r.y=i.bottom),-1!==t.indexOf("e")?r.x=i.right:-1!==t.indexOf("w")&&(r.x=i.left),r}function nl(e){return"n"===e||"s"===e?"resize-ns":"e"===e||"w"===e?"resize-ew":"nw"===e||"se"===e?"resize-nwse":"resize-nesw"}el.prototype.canResize=function(e){var t=this._rules,n=$(e,["newBounds","shape","delta","direction"]);return t.allowed("shape.resize",n)},el.prototype.activate=function(e,t,n){var i,r,o=this._dragging;if("string"==typeof n&&(n={direction:n}),!(r=(i=F({shape:t},n)).direction))throw new Error("must provide a direction (n|w|s|e|nw|se|ne|sw)");o.init(e,tl(t,r),"resize",{autoActivate:!0,cursor:nl(r),data:{shape:t,context:i}})},el.prototype.computeMinResizeBox=function(e){var t=e.shape;return function(e,t,n,i){var r=uo(t),o={top:/n/.test(e)?r.bottom-n.height:r.top,left:/w/.test(e)?r.right-n.width:r.left,bottom:/s/.test(e)?r.top+n.height:r.bottom,right:/e/.test(e)?r.left+n.width:r.right},a=i?uo(i):o;return lo({top:Xp(o.top,a.top),left:Xp(o.left,a.left),bottom:Yp(o.bottom,a.bottom),right:Yp(o.right,a.right)})}(e.direction,t,e.minDimensions||{width:10,height:10},nu(t,e.childrenBoxPadding))},el.$inject=["eventBus","rules","modeling","dragging"];var il="djs-resizing",rl="resize-not-ok",ol=500;function al(e,t,n){e.on("resize.move",ol,function(e){var i,r,o,a;i=e.context,r=i.shape,o=i.newBounds,(a=i.frame)||(a=i.frame=n.addFrame(r,t.getDefaultLayer()),t.addMarker(r,il)),o.width>5&&Ee(a,{x:o.x,width:o.width}),o.height>5&&Ee(a,{y:o.y,height:o.height}),i.canExecute?Re(a).remove(rl):Re(a).add(rl)}),e.on("resize.cleanup",function(e){var n,i;n=e.context,i=n.shape,n.frame&&ke(n.frame),t.removeMarker(i,il)})}al.$inject=["eventBus","canvas","previewSupport"];var sl=-6,cl=["n","w","s","e","nw","ne","se","sw"];function pl(e,t,n,i){this._resize=i,this._canvas=t;var r=this;e.on("selection.changed",function(e){var t=e.newSelection;r.removeResizers(),1===t.length&&b(t,I(r.addResizer,r))}),e.on("shape.changed",function(e){var t=e.element;n.isSelected(t)&&(r.removeResizers(),r.addResizer(t))})}pl.prototype.makeDraggable=function(e,t,n){var i=this._resize;function r(t){Co(t)&&i.activate(t,e,n)}ce.bind(t,"mousedown",r),ce.bind(t,"touchstart",r)},pl.prototype._createResizer=function(e,t,n,i){var r=this._getResizersParent(),o=function(e){var t={x:0,y:0};-1!==e.indexOf("e")?t.x=-sl:-1!==e.indexOf("w")&&(t.x=sl);-1!==e.indexOf("s")?t.y=-sl:-1!==e.indexOf("n")&&(t.y=sl);return t}(i),a=Oe("g");Re(a).add("djs-resizer"),Re(a).add("djs-resizer-"+e.id),Re(a).add("djs-resizer-"+i),ge(r,a);var s=Oe("rect");Ee(s,{x:-2+o.x,y:-2+o.y,width:4,height:4}),Re(s).add("djs-resizer-visual"),ge(a,s);var c=Oe("rect");return Ee(c,{x:-10+o.x,y:-10+o.y,width:20,height:20}),Re(c).add("djs-resizer-hit"),ge(a,c),Jt(a,t,n),a},pl.prototype.createResizer=function(e,t){var n=tl(e,t),i=this._createResizer(e,n.x,n.y,t);this.makeDraggable(e,i,t)},pl.prototype.addResizer=function(e){var t=this;this._resize.canResize({shape:e})&&b(cl,function(n){t.createResizer(e,n)})},pl.prototype.removeResizers=function(){Pe(this._getResizersParent())},pl.prototype._getResizersParent=function(){return this._canvas.getLayer("resizers")},pl.$inject=["eventBus","canvas","selection","resize"];var ul={__depends__:[Cs,xs,Vc],__init__:["resize","resizePreview","resizeHandles"],resize:["type",el],resizePreview:["type",al],resizeHandles:["type",pl]};function ll(e,t){var n=t.create("bpmn:CategoryValue"),i=t.create("bpmn:Category",{categoryValue:[n]});return Et(e.get("rootElements"),i),zi(i).$parent=e,zi(n).$parent=i,n}function hl(e,t,n,i,r,o,a){function s(e,t){(t||ts(e,["bpmn:Task","bpmn:TextAnnotation","bpmn:Group"])||dl(e))&&i.activate(e)}this._bpmnFactory=t,this._canvas=n,this._modeling=r,this._textRenderer=a,i.registerProvider(this),e.on("element.dblclick",function(e){s(e.element,!0)}),e.on(["autoPlace.start","canvas.viewbox.changing","drag.init","element.mousedown","popupMenu.open"],function(e){i.isActive()&&i.complete()}),e.on(["commandStack.changed"],function(e){i.isActive()&&i.cancel()}),e.on("directEditing.activate",function(e){o.removeResizers()}),e.on("create.end",500,function(e){var t=e.context,n=t.shape,i=e.context.canExecute;e.isTouch||i&&(t.hints&&!1===t.hints.createElementsBehavior||s(n))}),e.on("autoPlace.end",500,function(e){s(e.shape)})}function dl(e){return Ii(e,"bpmn:SubProcess")&&!Fi(e)}hl.$inject=["eventBus","bpmnFactory","canvas","directEditing","modeling","resizeHandles","textRenderer"],hl.prototype.activate=function(e){var t=Wi(e);if(void 0!==t){var n={text:t};F(n,this.getEditingBBox(e));var i={};return(ts(e,["bpmn:Task","bpmn:Participant","bpmn:Lane","bpmn:CallActivity"])||dl(e))&&F(i,{centerVertically:!0}),br(e)&&F(i,{autoResize:!0}),Ii(e,"bpmn:TextAnnotation")&&F(i,{resizable:!0,autoResize:!0}),F(n,{options:i}),n}},hl.prototype.getEditingBBox=function(e){var t=this._canvas,n=e.label||e,i=t.getAbsoluteBBox(n),r=i.x+i.width/2,o=i.y+i.height/2,a={x:i.x,y:i.y},s=t.zoom(),c=this._textRenderer.getDefaultStyle(),p=this._textRenderer.getExternalStyle(),u=p.fontSize*s,l=p.lineHeight,h=c.fontSize*s,d=c.lineHeight,f={fontFamily:this._textRenderer.getDefaultStyle().fontFamily,fontWeight:this._textRenderer.getDefaultStyle().fontWeight};(Ii(e,"bpmn:Lane")||function(e){return Ii(e,"bpmn:Participant")&&Fi(e)}(e))&&(F(a,{width:i.height,height:30*s,x:i.x-i.height/2+15*s,y:o-30*s/2}),F(f,{fontSize:h+"px",lineHeight:d,paddingTop:7*s+"px",paddingBottom:7*s+"px",paddingLeft:5*s+"px",paddingRight:5*s+"px",transform:"rotate(-90deg)"})),(ts(e,["bpmn:Task","bpmn:CallActivity"])||function(e){return Ii(e,"bpmn:Participant")&&!Fi(e)}(e)||dl(e))&&(F(a,{width:i.width,height:i.height}),F(f,{fontSize:h+"px",lineHeight:d,paddingTop:7*s+"px",paddingBottom:7*s+"px",paddingLeft:5*s+"px",paddingRight:5*s+"px"})),function(e){return Ii(e,"bpmn:SubProcess")&&Fi(e)}(e)&&(F(a,{width:i.width,x:i.x}),F(f,{fontSize:h+"px",lineHeight:d,paddingTop:7*s+"px",paddingBottom:7*s+"px",paddingLeft:5*s+"px",paddingRight:5*s+"px"}));var m=90*s,v=7*s,y=4*s;if(n.labelTarget&&(F(a,{width:m,height:i.height+v+y,x:r-m/2,y:i.y-v}),F(f,{fontSize:u+"px",lineHeight:l,paddingTop:v+"px",paddingBottom:y+"px"})),br(n)&&!xr(n)&&!wr(n)){var g=Er(e),b=t.getAbsoluteBBox({x:g.x,y:g.y,width:0,height:0}),x=u+v+y;F(a,{width:m,height:x,x:b.x-m/2,y:b.y-x/2}),F(f,{fontSize:u+"px",lineHeight:l,paddingTop:v+"px",paddingBottom:y+"px"})}return Ii(e,"bpmn:TextAnnotation")&&(F(a,{width:i.width,height:i.height,minWidth:30*s,minHeight:10*s}),F(f,{textAlign:"left",paddingTop:5*s+"px",paddingBottom:7*s+"px",paddingLeft:7*s+"px",paddingRight:5*s+"px",fontSize:h+"px",lineHeight:d})),{bounds:a,style:f}},hl.prototype.update=function(e,t,n,i){var r,o,a;if((Ii(e,"bpmn:TextAnnotation")&&(o=this._canvas.getAbsoluteBBox(e),r={x:e.x,y:e.y,width:e.width/o.width*i.width,height:e.height/o.height*i.height}),Ii(e,"bpmn:Group"))&&!zi(e).categoryValueRef){var s=ll(zi(this._canvas.getRootElement()).$parent,this._bpmnFactory);zi(e).categoryValueRef=s}(a=t)&&a.trim()||(t=null),this._modeling.updateLabel(e,t,r)};var fl="djs-element-hidden",ml="djs-label-hidden";function vl(e,t,n,i){var r,o,a,s=this,c=t.getDefaultLayer();e.on("directEditing.activate",function(e){var n=e.active;if(Ii(r=n.element.label||n.element,"bpmn:TextAnnotation")){o=t.getAbsoluteBBox(r),a=Oe("g");var p=i.getScaledPath("TEXT_ANNOTATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:r.width,containerHeight:r.height,position:{mx:0,my:0}}),u=s.path=Oe("path");Ee(u,{d:p,strokeWidth:2,stroke:yl(r)}),ge(a,u),ge(c,a),en(a,r.x,r.y)}Ii(r,"bpmn:TextAnnotation")||r.labelTarget?t.addMarker(r,fl):(Ii(r,"bpmn:Task")||Ii(r,"bpmn:CallActivity")||Ii(r,"bpmn:SubProcess")||Ii(r,"bpmn:Participant"))&&t.addMarker(r,ml)}),e.on("directEditing.resize",function(e){if(Ii(r,"bpmn:TextAnnotation")){var t=e.height,n=e.dy,a=Math.max(r.height/o.height*(t+n),0),c=i.getScaledPath("TEXT_ANNOTATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:r.width,containerHeight:a,position:{mx:0,my:0}});Ee(s.path,{d:c})}}),e.on(["directEditing.complete","directEditing.cancel"],function(e){var n=e.active;n&&(t.removeMarker(n.element.label||n.element,fl),t.removeMarker(r,ml)),r=void 0,o=void 0,a&&(ke(a),a=void 0)})}function yl(e,t){return zi(e).di.get("stroke")||t||"black"}vl.$inject=["eventBus","canvas","elementRegistry","pathMap"];var gl={__depends__:[Ju,ul,zc],__init__:["labelEditingProvider","labelEditingPreview"],labelEditingProvider:["type",hl],labelEditingPreview:["type",vl]},bl=["top","bottom","left","right"],xl=10;function _l(e,t){function n(e){if(xr(e)){var n=function(e){var t=ho(e.label),n=El(ho(e),t);if(i=n,-1===bl.indexOf(i))return;var i;var r=function(e){var t=ho(e);return[].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 El(t,e)})}(e);if(e.host){var o=function(e){var t,n=e.host,i=fo(ho(e),n);t=i.indexOf("-")>=0?i.split("-"):[i];return bl.filter(function(e){return-1===t.indexOf(e)})}(e);r=r.concat(o)}var a=bl.filter(function(e){return-1===r.indexOf(e)});if(-1!==a.indexOf(n))return;return a[0]}(e);n&&function(e,n){var i=ho(e),r=e.label,o=ho(r);if(!r.parent)return;var a,s=uo(e);switch(n){case"top":a={x:i.x,y:s.top-xl-r.height/2};break;case"left":a={x:s.left-xl-r.width/2,y:i.y};break;case"bottom":a={x:i.x,y:s.bottom+xl+r.height/2};break;case"right":a={x:s.right+xl+r.width/2,y:i.y}}var c=ma(a,o);t.moveShape(r,c)}(e,n)}}ss.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 El(e,t){return fo(t,e,5)}function wl(e,t,n){ss.call(this,e),this.preExecute("shape.append",function(e){var t=e.source,n=e.shape;e.position||(Ii(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 Sl(e,t){e.invoke(ss,this),this.postExecute("shape.move",function(e){var n=e.newParent,i=e.shape;b(g(i.incoming.concat(i.outgoing),function(e){return Ii(e,"bpmn:Association")}),function(e){t.moveConnection(e,{x:0,y:0},n)})},!0)}n(_l,ss),_l.$inject=["eventBus","modeling"],n(wl,ss),wl.$inject=["eventBus","elementFactory","bpmnRules"],n(Sl,ss),Sl.$inject=["injector","modeling"];var Cl=500;function Tl(e,t){t.invoke(ss,this),this._bpmnReplace=e;var n=this;this.postExecuted("elements.create",Cl,function(e){var t=e.elements;1===(t=t.filter(function(e){return Rl(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",Cl,function(e){var t=e.shapes,i=e.newHost;if(1===t.length){var r=t[0];Rl(r,i)&&(e.shapes=[n.replaceShape(r,i)])}},!0)}function Rl(e,t){return!wr(e)&&ts(e,["bpmn:IntermediateThrowEvent","bpmn:IntermediateCatchEvent"])&&!!t}function Al(e,t){function n(e){return g(e.attachers,function(e){return Ii(e,"bpmn:BoundaryEvent")})}ss.call(this,e),this.postExecute("connection.create",function(e){var i=e.context.source,r=e.context.target,o=n(r);Ii(i,"bpmn:EventBasedGateway")&&Ii(r,"bpmn:ReceiveTask")&&o.length>0&&t.removeElements(o)}),this.postExecute("connection.reconnect",function(e){var i=e.context.oldSource,r=e.context.newSource;Ii(i,"bpmn:Gateway")&&Ii(r,"bpmn:EventBasedGateway")&&b(r.outgoing,function(e){var i=e.target,r=n(i);Ii(i,"bpmn:ReceiveTask")&&r.length>0&&t.removeElements(r)})})}Tl.$inject=["bpmnReplace","injector"],n(Tl,ss),Tl.prototype.replaceShape=function(e,t){var n,i=(n=zi(e).eventDefinitions)&&n[0],r={type:"bpmn:BoundaryEvent",host:t};return i&&(r.eventDefinitionType=i.$type),this._bpmnReplace.replaceElement(e,r,{layoutConnection:!1})},Al.$inject=["eventBus","modeling"],n(Al,ss);var kl=500;function Pl(e,t,n,i,r){function o(e){return ts(e,["bpmn:ReceiveTask","bpmn:SendTask"])||function(e,t){l(t)||(t=[t]);return w(t,function(t){return Hi(e,t)})}(e,["bpmn:ErrorEventDefinition","bpmn:EscalationEventDefinition","bpmn:MessageEventDefinition","bpmn:SignalEventDefinition"])}function a(t){return!!y(e.getDefinitions().get("rootElements"),D({id:t.id}))}function s(e){return Ii(e,"bpmn:ErrorEventDefinition")?"errorRef":Ii(e,"bpmn:EscalationEventDefinition")?"escalationRef":Ii(e,"bpmn:MessageEventDefinition")?"messageRef":Ii(e,"bpmn:SignalEventDefinition")?"signalRef":void 0}function c(e){if(ts(e,["bpmn:ReceiveTask","bpmn:SendTask"]))return e.get("messageRef");var t=e.get("eventDefinitions")[0];return t.get(s(t))}n.invoke(ss,this),this.executed("shape.create",function(t){var n=t.shape;if(o(n)){var i=c(zi(n));i&&!a(i)&&(Et(e.getDefinitions().get("rootElements"),i),t.addedRootElement=i)}},!0),this.reverted("shape.create",function(t){var n=t.addedRootElement;n&&_t(e.getDefinitions().get("rootElements"),n)},!0),t.on("copyPaste.copyElement",function(e){var t=e.descriptor,n=e.element;if(o(n)){var i=c(zi(n));i&&(t.referencedRootElement=i)}}),t.on("copyPaste.pasteElement",kl,function(e){var t=e.descriptor,n=t.businessObject;if(o(n)){var c=t.referencedRootElement;c&&(a(c)||(c=i.copyElement(c,r.create(c.$type))),function(e,t){if(ts(e,["bpmn:ReceiveTask","bpmn:SendTask"]))return e.set("messageRef",t);var n=e.get("eventDefinitions")[0];n.set(s(n),t)}(n,c))}})}function Ml(e){e.invoke(ss,this),this.preExecute("shape.create",1500,function(e){var t=e.context,n=t.parent,i=t.shape;Ii(n,"bpmn:Lane")&&!Ii(i,"bpmn:Lane")&&(t.parent=ns(n,"bpmn:Participant"))})}Pl.$inject=["bpmnjs","eventBus","injector","moddleCopy","bpmnFactory"],n(Pl,ss),Ml.$inject=["injector"],n(Ml,ss);var Dl=1500,Bl=2e3;function Nl(e,t,n){t.on(["create.hover","create.move","create.end","shape.move.hover","shape.move.move","shape.move.end"],Dl,function(t){var i=t.context.shape||t.shape,r=t.hover;Ii(r,"bpmn:Lane")&&!ts(i,["bpmn:Lane","bpmn:Participant"])&&(t.hover=su(r),t.hoverGfx=e.getGraphics(t.hover));var o=n.getRootElement();r!==o&&(i.labelTarget||Ii(i,"bpmn:Group"))&&(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"],Dl,function(t){var n=t.hover;Ii(n,"bpmn:Lane")&&(t.hover=su(n)||n,t.hoverGfx=e.getGraphics(t.hover))}),t.on(["bendpoint.move.hover"],Dl,function(t){var n=t.context,i=t.hover,r=n.type;Ii(i,"bpmn:Lane")&&/reconnect/.test(r)&&(t.hover=su(i)||i,t.hoverGfx=e.getGraphics(t.hover))}),t.on(["connect.start"],Dl,function(e){var t=e.context,n=t.start;Ii(n,"bpmn:Lane")&&(t.start=su(n)||n)}),t.on("shape.move.start",Bl,function(e){var t=e.shape;Ii(t,"bpmn:Lane")&&(e.shape=su(t)||t)})}function Ol(e,t,n){ss.call(this,e),this.preExecute("shape.create",function(e){var n=e.context.shape;if(Ii(n,"bpmn:DataObjectReference")&&"label"!==n.type){var i=t.create("bpmn:DataObject");n.businessObject.dataObjectRef=i}})}Nl.$inject=["elementRegistry","eventBus","canvas"],Ol.$inject=["eventBus","bpmnFactory","moddle"],n(Ol,ss);var jl=20,Ll=20,Il=30,zl=2e3;function Fl(e,t,n){function i(t){var i,r=t.parent,o=e.getRootElement();Ii(o,"bpmn:Collaboration")?i=o:(i=n.makeCollaboration(),t.process=r),t.parent=i}ss.call(this,t),t.on(["create.start","shape.move.start"],zl,function(t){var n=t.context,i=n.shape,r=e.getRootElement();if(Ii(i,"bpmn:Participant")&&Ii(r,"bpmn:Process")&&r.children.length){var o=r.children.filter(function(e){return!Ii(e,"bpmn:Group")&&!wr(e)&&!function(e){return!!e.waypoints}(e)});if(o.length){var a=ft(o);F(i,function(e,t){t={width:t.width+2*jl+Il,height:t.height+2*Ll};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)),n.createConstraints=function(e,t){return{bottom:(t=uo(t)).top+e.height/2-Ll,left:t.right-e.width/2+jl,top:t.bottom-e.height/2+Ll,right:t.left+e.width/2-jl-Il}}(i,a)}}}),t.on("create.start",zl,function(n){var i=n.context.shape,r=e.getRootElement(),o=e.getGraphics(r);function a(e){e.element=r,e.gfx=o}Ii(i,"bpmn:Participant")&&Ii(r,"bpmn:Process")&&(t.on("element.hover",zl,a),t.once("create.cleanup",function(){t.off("element.hover",a)}))}),this.preExecute("shape.create",function(e){var t=e.parent;Ii(e.shape,"bpmn:Participant")&&Ii(t,"bpmn:Process")&&i(e)},!0),this.execute("shape.create",function(e){var t=e.process,n=e.shape;t&&(e.oldProcessRef=n.businessObject.processRef,n.businessObject.processRef=t.businessObject)},!0),this.revert("shape.create",function(e){var t=e.process,n=e.shape;t&&(n.businessObject.processRef=e.oldProcessRef)},!0),this.postExecute("shape.create",function(e){var t=e.process,i=e.shape;if(t){var r=t.children.slice();n.moveElements(r,{x:0,y:0},i)}},!0),this.preExecute("elements.create",zl,function(e){var t,n=e.elements,r=e.parent;$l(n)&&Ii(r,"bpmn:Process")&&(i(e),t=$l(n),e.oldProcessRef=t.businessObject.processRef,t.businessObject.processRef=r.businessObject)},!0),this.revert("elements.create",function(e){var t=e.elements;e.process&&($l(t).businessObject.processRef=e.oldProcessRef)},!0),this.postExecute("elements.create",function(e){var t,i=e.elements,r=e.process;if(r){t=$l(i);var o=r.children.slice();n.moveElements(o,{x:0,y:0},t)}},!0)}function $l(e){return y(e,function(e){return Ii(e,"bpmn:Participant")})}Fl.$inject=["canvas","eventBus","modeling"],n(Fl,ss);var Hl="__targetRef_placeholder";function Gl(e,t){function n(e,n){var i=e.get("properties"),r=y(i,function(e){return e.name===Hl});return!r&&n&&Et(i,r=t.create("bpmn:Property",{name:Hl})),r}function i(e,t){var i=n(e);i&&(function(e,t,n){return y(e.get("dataInputAssociations"),function(e){return e!==n&&e.targetRef===t})}(e,i,t)||_t(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,u=p&&p.businessObject,l=r.oldTarget||r.target,h=l&&l.businessObject,d=o.businessObject;h&&h!==c&&i(h,a),u&&u!==c&&i(u,a),c?(t=n(c,!0),d.targetRef=t):d.targetRef=null}ss.call(this,e),this.executed(["connection.create","connection.delete","connection.move","connection.reconnect"],Wl(r)),this.reverted(["connection.create","connection.delete","connection.move","connection.reconnect"],Wl(r))}function Wl(e){return function(t){if(Ii(t.context.connection,"bpmn:DataInputAssociation"))return e(t)}}function Vl(e){this._bpmnUpdater=e}function Ul(e,t,n,i){function r(e){return e.children.filter(function(e){return Ii(e,"bpmn:DataStoreReference")&&!e.labelTarget})}function o(e,i){var r=e.businessObject||e;if(i=i||n.filter(function(e){return Ii(e,"bpmn:Participant")})[0]){var o=i.businessObject||i;t.execute("dataStore.updateContainment",{dataStoreBo:r,newSemanticParent:o.processRef||o,newDiParent:o.di})}}ss.call(this,i),t.registerHandler("dataStore.updateContainment",Vl),this.preExecute("shape.create",function(e){var t=e.context,n=t.shape;Ii(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 Ii(e,"bpmn:DataStoreReference")}).length&&(t.hints||(t.hints={}),t.hints.autoResize=n.filter(function(e){return!Ii(e,"bpmn:DataStoreReference")}))}),this.postExecute("shape.create",function(e){var t=e.context.shape,n=t.parent;Ii(t,"bpmn:DataStoreReference")&&"label"!==t.type&&Ii(n,"bpmn:Collaboration")&&o(t)}),this.postExecute("shape.move",function(e){var t=e.context,n=t.shape,i=t.oldParent,r=n.parent;Ii(i,"bpmn:Collaboration")||Ii(n,"bpmn:DataStoreReference")&&"label"!==n.type&&Ii(r,"bpmn:Collaboration")&&o(n,Ii(i,"bpmn:Participant")?i:function(e,t){for(;e.parent;){if(Ii(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();ts(n,["bpmn:Participant","bpmn:SubProcess"])&&Ii(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){Ii(i,"bpmn:Process")&&o(e,i)})})}Gl.$inject=["eventBus","bpmnFactory"],n(Gl,ss),Vl.$inject=["bpmnUpdater"],Vl.prototype.execute=function(e){var t=e.dataStoreBo,n=e.newSemanticParent,i=e.newDiParent;e.oldSemanticParent=t.$parent,e.oldDiParent=t.di.$parent,this._bpmnUpdater.updateSemanticParent(t,n),this._bpmnUpdater.updateDiParent(t.di,i)},Vl.prototype.revert=function(e){var t=e.dataStoreBo,n=e.oldSemanticParent,i=e.oldDiParent;this._bpmnUpdater.updateSemanticParent(t,n),this._bpmnUpdater.updateDiParent(t.di,i)},Ul.$inject=["canvas","commandStack","elementRegistry","eventBus"],n(Ul,ss);var ql=500;function Kl(e,t,n){ss.call(this,e),this.postExecuted("shape.delete",ql,function(e){var t=e.context,i=t.hints,r=t.shape,o=t.oldParent;Ii(r,"bpmn:Lane")&&(i&&i.nested||function(e,t){var i,r,o,a=au(t),s=[],c=[];ht(a,function(t){return t.y>e.y?c.push(t):s.push(t),t.children}),a.length&&(i=c.length&&s.length?e.height/2:e.height,s.length&&(r=n.calculateAdjustments(s,"y",i,e.y-10),n.makeSpace(r.movingShapes,r.resizingShapes,{x:0,y:i},"s")),c.length&&(o=n.calculateAdjustments(c,"y",-i,e.y+e.height+10),n.makeSpace(o.movingShapes,o.resizingShapes,{x:0,y:-i},"n")))}(r,o))})}Kl.$inject=["eventBus","modeling","spaceTool"],n(Kl,ss);var Yl=500;function Xl(e,t){t.invoke(ss,this),this._bpmnReplace=e;var n=this;this.postExecuted("elements.create",Yl,function(e){var t=e.elements;t.filter(function(e){return Zl(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",Yl,function(e){var t=e.shapes,i=e.newHost;t.forEach(function(e,r){var o,a=e.host;Zl(e,(o=a,-1!==t.indexOf(o)?a:i))&&(t[r]=n.replaceShape(e))})},!0)}function Zl(e,t){return!wr(e)&&Ii(e,"bpmn:BoundaryEvent")&&!t}function Ql(e,t,n){function i(e,i,r){var o,a,s,c,p,u,l,h,f=i.waypoints,m=e.outgoing.slice(),v=e.incoming.slice(),y=ks(f,h=d(r.width)?ho(r):r);if(y){if(o=f.slice(0,y.index),a=f.slice(y.index+(y.bendpoint?1:0)),!o.length||!a.length)return;s=y.bendpoint?f[y.index]:h,Jl(e,o[o.length-1])||o.push(eh(s)),Jl(e,a[0])||a.unshift(eh(s))}c=i.source,p=i.target,t.canConnect(c,e,i)&&(n.reconnectEnd(i,e,o||h),u=i),t.canConnect(e,p,i)&&(u?l=n.connect(e,p,{type:i.type,waypoints:a}):(n.reconnectStart(i,e,a||h),l=i));var b=[].concat(u&&g(v,function(e){return e.source===u.source})||[],l&&g(m,function(e){return e.target===l.target})||[]);b.length&&n.removeElements(b)}ss.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=ho(o),s={x:a.x+r.x,y:a.y+r.y},c=y(n.children,function(e){return t.canInsert(i,e)&&ks(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 Jl(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 eh(e){return F({},e)}function th(e,t){ss.call(this,e),this.preExecuted("connection.create",function(e){var n=e.context,i=n.source,r=n.target,o=r.incoming.slice();n.hints&&!1===n.hints.createElementsBehavior||Ii(i,"bpmn:EventBasedGateway")&&r.incoming.length&&o.filter(nh).forEach(function(e){t.removeConnection(e)})}),this.preExecuted("shape.replace",function(e){var n=e.context.newShape;Ii(n,"bpmn:EventBasedGateway")&&n.outgoing.filter(nh).map(function(e){return e.target}).reduce(function(e,t){var n=t.incoming.filter(nh);return e.concat(n)},[]).forEach(function(e){e.source!==n&&t.removeConnection(e)})})}function nh(e){return Ii(e,"bpmn:SequenceFlow")}Xl.$inject=["bpmnReplace","injector"],n(Xl,ss),Xl.prototype.replaceShape=function(e){var t,n,i=(n=zi(e).eventDefinitions)&&n[0];return t=i?{type:"bpmn:IntermediateCatchEvent",eventDefinitionType:i.$type}:{type:"bpmn:IntermediateThrowEvent"},this._bpmnReplace.replaceElement(e,t,{layoutConnection:!1})},n(Ql,ss),Ql.$inject=["eventBus","bpmnRules","modeling"],th.$inject=["eventBus","modeling"],n(th,ss);var ih=2e3;function rh(e,t,n,i,r,o){function a(){return zi(t.getRootElement()).$parent}function s(e){var t=zi(e).categoryValueRef;if(t){var n=t.$parent;t&&(_t(n.categoryValue,t),n&&!n.categoryValue.length&&function(e){_t(a().get("rootElements"),e)}(n))}}r.invoke(ss,this),this.executed("shape.delete",function(e){var t,i=e.context.shape;if(Ii(i,"bpmn:Group")){var r=zi(i).categoryValueRef,o=n.filter(function(e){return Ii(e,"bpmn:Group")});t=r,o.some(function(e){var n=zi(e);return n.categoryValueRef&&n.categoryValueRef===t})||s(i)}}),this.reverted("shape.delete",function(e){var t=e.context.shape;if(Ii(t,"bpmn:Group")){var n=zi(t).categoryValueRef,i=a(),r=n?n.$parent:null;Et(r.get("categoryValue"),n),Et(i.get("rootElements"),r)}}),this.execute("shape.create",function(t){var n=zi(t.context.shape);if(Ii(n,"bpmn:Group")&&!n.categoryValueRef){var i=ll(a(),e);n.categoryValueRef=i}}),this.revert("shape.create",function(e){var t=e.context.shape;Ii(t,"bpmn:Group")&&(s(t),delete zi(t).categoryValueRef)}),i.on("moddleCopy.canCopyProperty",ih,function(t){var n,i=t.property;if(Ii(i,"bpmn:CategoryValue"))return n=ll(a(),e),o.copyElement(i,n)})}function oh(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 ah(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=oh(e,t,n,r),s=oh(e,t,n,o);i=a&&s?sh(a,n)>sh(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],ho(n.source)),t(i[i.length-1],i[i.length-2],ho(n.target)))})}function sh(e,t){return Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2))}function ch(e){ss.call(this,e);var t=["bpmn:Participant","bpmn:Lane"];this.executed(["shape.move","shape.create","shape.resize"],function(e){var n=zi(e.context.shape);ts(n,t)&&!n.di.get("isHorizontal")&&n.di.set("isHorizontal",!0)})}function ph(e){return Math.sqrt(Math.pow(e.x,2)+Math.pow(e.y,2))}function uh(e){return Math.atan((e[1].y-e[0].y)/(e[1].x-e[0].x))}function lh(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 hh(e,t){var n=lh(e,t);return ph({x:n.x-e.x,y:n.y-e.y})}function dh(e,t){return ph({x:e.x-t.x,y:e.y-t.y})}rh.$inject=["bpmnFactory","canvas","elementRegistry","eventBus","injector","moddleCopy"],n(rh,ss),ah.$inject=["eventBus"],ch.$inject=["eventBus"],n(ch,ss);var fh=Math.sqrt,mh=Math.min,vh=Math.max,yh=Math.abs;function gh(e){return Math.pow(e,2)}function bh(e,t){return fh(gh(e.x-t.x)+gh(e.y-t.y))}function xh(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,u=p*p-(a*a+s*s-i*i)/c;if(u<0&&u>-1e-6&&(u=0),u<0)return[];var l=fh(u),h=-p+l,d=-p-l,f={x:e.x-r*h,y:e.y-o*h};return 0===u?[f]:[f,{x:e.x-r*d,y:e.y-o*d}].filter(function(n){return function(e,t,n){return _h(e.x,t.x,n.x)&&_h(e.y,t.y,n.y)}(n,e,t)})}function _h(e,t,n){return e>=mh(t,n)-Eh&&e<=vh(t,n)+Eh}var Eh=.1;function wh(e,t){return yh(e.x-t.x)<=Eh&&yh(e.y-t.y)<=Eh}function Sh(e,t,n,i){var r=0,o=0,a=function(e){return{x:e.x+e.width/2,y:e.y+e.height/2}}(e),s=function(e,t){var n,i,r,o,a,s,c,p,u,l,h,d,f=0;for(f=0;f<t.length-1;f++){if(wh(n=t[f],i=t[f+1])?s=[n]:(r=bh(e,n),o=bh(e,i),s=xh(n,i,e,mh(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:wh(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:bh(n,a)/bh(n,i)}),p=bh(c.position,e),(!l||u>p)&&(l=c,u=p)}return l}(a,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,u=i.bendpointMove.bendpointIndex;return 0===o?r:(r>=u&&(c=p?r+1:r-1),r<u&&(c=r,p&&"bendpoint"!==n.type&&u-1===r&&Ch(t,u)<n.relativeLocation&&c++),c)}return 0===o?r:i.connectionStart?0===r?0:null:i.connectionEnd&&r===e.length-2?t.length-2:null}(n,t,s,i);if(null===p)return{x:r,y:o};if(p<0||p>t.length-2)return{x:r,y:o};var u,l,h=Th(n,c),d=Th(t,p),f=s.position,m=function(e,t){var n=dh(e[0],e[1]),i=dh(e[0],t);return 0===n?0:i/n}(h,f),v=(u=d,l=uh(h),uh(u)-l);if("bendpoint"===s.type){var y=t.length-n.length,g=s.bendpointIndex,b=n[g];if(-1!==t.indexOf(b))return{x:r,y:o};if(0===y){var x=t[g];return{x:x.x-s.position.x,y:x.y-s.position.y}}y<0&&0!==g&&g<n.length-1&&(m=Ch(n,g))}var _,E,w=(d[1].x-d[0].x)*m+d[0].x,S=(d[1].y-d[0].y)*m+d[0].y,C=(_={x:a.x-f.x,y:a.y-f.y},(E=v)?{x:Math.cos(E)*_.x-Math.sin(E)*_.y,y:Math.sin(E)*_.x+Math.cos(E)*_.y}:_);return po({x:r=w+C.x-a.x,y:o=S+C.y-a.y})}function Ch(e,t){var n=dh(e[t-1],e[t]);return n/(n+dh(e[t],e[t+1]))}function Th(e,t){return[e[t],e[t+1]]}function Rh(e,t,n){var i=fa(t),r=fa(n),o=ma(e,i),a=o.x*(n.width/t.width),s=o.y*(n.height/t.height);return po({x:r.x+a,y:r.y+s})}function Ah(e,t,n){var i=fa(e),r=fa(t),o=fa(n),a=ma(e,i),s=ma(i,r),c=function(e,t,n){var i=uo(t),r=uo(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=fo(t,e);if("top"===s)o={x:0,y:r.bottom-i.bottom};else if("bottom"===s)o={x:0,y:r.top-i.top};else if("right"===s)o={x:r.left-i.left,y:0};else{if("left"!==s)return null;o={x:r.right-i.right,y:0}}if(a={x:e.x+o.x,y:e.y+o.y},fo(n,a)!==s)return null;return o}(i,t,n);if(c)return c;var p=s.x*(n.width/t.width),u=s.y*(n.height/t.height),l=o.x+p,h=o.y+u;return po({x:l+a.x-e.x,y:h+a.y-e.y})}var kh={width:90,height:20},Ph="name",Mh="text";function Dh(e,t,n,i){ss.call(this,e),this.postExecute("element.updateProperties",function(e){var n=e.context,r=n.element,o=n.properties;if(Ph in o&&t.updateLabel(r,o[Ph]),Mh in o&&Ii(r,"bpmn:TextAnnotation")){var a=i.getTextAnnotationBounds({x:r.x,y:r.y,width:r.width,height:r.height},o[Mh]||"");t.updateLabel(r,o.text,a)}}),this.postExecute(["shape.create","connection.create"],function(e){var n=e.context;if(!1!==(n.hints||{}).createElementsBehavior){var r=n.shape||n.connection,o=r.businessObject;if(!wr(r)&&br(r)&&Wi(r)){var a=Er(r),s=i.getExternalLabelBounds(kh,Wi(r));t.createLabel(r,a,{id:o.id+"_label",businessObject:o,width:s.width,height:s.height})}}}),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(["label.create"],function(e){var t,i=e.context.shape;i.labelTarget&&Ii(i.labelTarget||i,"bpmn:BaseElement")&&((t=i.businessObject.di).label||(t.label=n.create("bpmndi:BPMNLabel",{bounds:n.create("dc:Bounds")})),F(t.label.bounds,{x:i.x,y:i.y,width:i.width,height:i.height}))}),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=function(e){var t=e.context,n=t.connection,i=n.label,r=F({},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),Sh(i,o,a,r)}(e),t.moveShape(r,i))}}),this.postExecute(["shape.replace"],function(e){var t=e.context,n=t.newShape,i=t.oldShape,r=zi(n);r&&br(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(xr(r)){var s=r.label,c=Bh(function(e,t){if(!t.length)return;var n=function(e,t){return M(t.map(function(t){return{line:t,distance:hh(e,t)}}),"distance")[0].line}(e,t);return lh(e,n)}(ho(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)}]]),a,o);t.moveShape(s,c)}})}function Bh(e,t,n){return po(ma(Rh(e,t,n),e))}n(Dh,ss),Dh.$inject=["eventBus","modeling","bpmnFactory","textRenderer"];var Nh="flow elements must be children of pools/participants",Oh="participants cannot be pasted onto a non-empty process diagram";function jh(e,t,n){function i(e,n,i){t.add({position:{x:e.x+5,y:e.y+5},type:"error",timeout:i||2e3,html:"<div>"+n+"</div>"})}e.on(["shape.move.rejected","create.rejected"],function(e){var t=e.context,r=t.shape;Ii(t.target,"bpmn:Collaboration")&&Ii(r,"bpmn:FlowNode")&&i(e,n(Nh))}),e.on(["elements.paste.rejected"],function(e){var t=e.context,r=t.position,o=t.target;Ii(o,"bpmn:Collaboration")&&i(r,n(Nh)),Ii(o,"bpmn:Process")&&i(r,n(Oh),3e3)})}function Lh(e,t,n,i){ss.call(this,e);var r=i.get("dragging",!1);function o(e){var i,r,o=e.source,a=e.target;e.parent&&(Ii(e,"bpmn:SequenceFlow")&&(n.canConnectSequenceFlow(o,a)||(r=!0),n.canConnectMessageFlow(o,a)&&(i="bpmn:MessageFlow")),Ii(e,"bpmn:MessageFlow")&&(n.canConnectMessageFlow(o,a)||(r=!0),n.canConnectSequenceFlow(o,a)&&(i="bpmn:SequenceFlow")),Ii(e,"bpmn:Association")&&!n.canConnectAssociation(o,a)&&(r=!0),r&&t.removeConnection(e),i&&t.connect(o,a,{type:i,waypoints:e.waypoints.slice()}))}this.postExecuted("elements.move",function(e){b(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,waypoints:s.waypoints.slice()}),t.removeConnection(s),a.connection=o,r&&function(e,t){var n,i=r.context(),o=i&&i.payload.previousSelection;o&&o.length&&-1!==(n=o.indexOf(e))&&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=y(o.outgoing,D({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 Ih(e,t){ss.call(this,e),this.preExecute("shape.delete",function(e){var t=e.shape,n=t.parent;Ii(t,"bpmn:Participant")&&(e.collaborationRoot=n)},!0),this.postExecute("shape.delete",function(e){var n=e.collaborationRoot;n&&!n.businessObject.participants.length&&t.makeProcess()},!0)}function zh(e,t,n,i,r,o){i.invoke(ss,this),this._bpmnReplace=e,this._elementRegistry=n,this._selection=o,this.postExecuted(["elements.move"],500,function(e){var n=e.context,i=n.newParent,r=n.newHost,o=[];b(n.closure.topLevel,function(e){o=$i(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})})}jh.$inject=["eventBus","tooltips","translate"],n(Lh,ss),Lh.$inject=["eventBus","modeling","bpmnRules","injector"],Ih.$inject=["eventBus","modeling"],n(Ih,ss),n(zh,ss),zh.prototype.replaceElements=function(e,t){var n=this._elementRegistry,i=this._bpmnReplace,r=this._selection;b(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)},zh.$inject=["bpmnReplace","bpmnRules","elementRegistry","injector","modeling","selection"];var Fh=Math.abs,$h=Math.min,Hh=Math.max;function Gh(e,t,n,i){var r=e[t];e[t]=void 0===r?n:i(n,r)}function Wh(e,t,n){return Gh(e,t,n,$h)}function Vh(e,t,n){return Gh(e,t,n,Hh)}var Uh=20,qh=50,Kh=20,Yh=20;var Xh=1500,Zh={width:300,height:60},Qh={width:300,height:150},Jh={width:140,height:120},ed={width:50,height:30};function td(e){e.on("resize.start",Xh,function(e){var t=e.context,n=t.shape,i=t.direction,r=t.balanced;(Ii(n,"bpmn:Lane")||Ii(n,"bpmn:Participant"))&&(t.resizeConstraints=function(e,t,n){var i=su(e),r=!0,o=!0,a=ou(i,[i]),s=uo(e),c={},p={};return/e/.test(t)?p.right=s.left+Zh.width:/w/.test(t)&&(p.left=s.right-Zh.width),a.forEach(function(e){var i=uo(e);/n/.test(t)&&(i.top<s.top-10&&(r=!1),n&&Fh(s.top-i.bottom)<10&&Vh(c,"top",i.top+Zh.height),Fh(s.top-i.top)<5&&Wh(p,"top",i.bottom-Zh.height)),/s/.test(t)&&(i.bottom>s.bottom+10&&(o=!1),n&&Fh(s.bottom-i.top)<10&&Wh(c,"bottom",i.bottom-Zh.height),Fh(s.bottom-i.bottom)<5&&Vh(p,"bottom",i.top+Zh.height))}),i.children.filter(function(e){return!e.hidden&&!e.waypoints&&(Ii(e,"bpmn:FlowElement")||Ii(e,"bpmn:Artifact"))}).forEach(function(e){var n=uo(e);r&&/n/.test(t)&&Wh(p,"top",n.top-Kh),/e/.test(t)&&Vh(p,"right",n.right+Uh),o&&/s/.test(t)&&Vh(p,"bottom",n.bottom+Yh),/w/.test(t)&&Wh(p,"left",n.left-qh)}),{min:p,max:c}}(n,i,r)),Ii(n,"bpmn:Participant")&&(t.minDimensions=Qh),Ii(n,"bpmn:SubProcess")&&Fi(n)&&(t.minDimensions=Jh),Ii(n,"bpmn:TextAnnotation")&&(t.minDimensions=ed)})}td.$inject=["eventBus"];var nd=1001;function id(e,t){e.on("resize.start",nd+500,function(e){var t=e.context,n=t.shape;(Ii(n,"bpmn:Lane")||Ii(n,"bpmn:Participant"))&&(t.balanced=!To(e))}),e.on("resize.end",nd,function(e){var n=e.context,i=n.shape,r=n.canExecute,o=n.newBounds;if(Ii(i,"bpmn:Lane")||Ii(i,"bpmn:Participant"))return r&&(o=co(o),t.resizeLane(i,o,n.balanced)),!1})}function rd(e,t,n){ss.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(Ii(r,"bpmn:SequenceFlow")&&Ii(o,"bpmn:SequenceFlow")&&t.canConnect(r.source,o.target,r)){var a=function(e,t){var n=oh(od(e[e.length-2]),od(e[e.length-1]),od(t[1]),od(t[0]));return n?[].concat(e.slice(0,e.length-1),[n],t.slice(1)):[od(e[0]),od(t[t.length-1])]}(r.waypoints,o.waypoints);n.reconnectEnd(r,o.target,a)}}})}function od(e){return e.original||e}id.$inject=["eventBus","modeling"],n(rd,ss),rd.$inject=["eventBus","bpmnRules","modeling"];var ad=Math.max;function sd(e){e.on("spaceTool.getMinDimensions",function(e){var t=e.shapes,n=e.axis,i=e.start,r={};return b(t,function(e){var t=e.id;Ii(e,"bpmn:Participant")&&(!function(e){return"x"===e}(n)?r[t]={width:Qh.width,height:cd(e,i)}:r[t]=Qh),Ii(e,"bpmn:SubProcess")&&Fi(e)&&(r[t]=Jh),Ii(e,"bpmn:TextAnnotation")&&(r[t]=ed)}),r})}function cd(e,t){var n;return au(e).length?(n=function(e,t){var n,i=au(e);return n=function e(t,n){var i,r,o;for(i=0;i<t.length;i++)if(r=t[i],n>=r.y&&n<=r.y+r.height)return(o=au(r)).length?e(o,n):r}(i,t),e.height-n.height+Zh.height}(e,t),ad(Qh.height,n)):Qh.height}function pd(e,t){e.invoke(ss,this),this.postExecuted("shape.replace",function(e){var n=e.context.oldShape,i=e.context.newShape;if(Ii(i,"bpmn:SubProcess")&&Ii(n,"bpmn:Task")&&Fi(i)){var r,o={x:(r=i).x+r.width/6,y:r.y+r.height/2};t.createShape({type:"bpmn:StartEvent"},o,i)}})}sd.$inject=["eventBus"],pd.$inject=["injector","modeling"],n(pd,ss);var ud=500;function ld(e,t,n,i){ss.call(this,e),this.executed(["shape.toggleCollapse"],ud,function(e){var t,n=e.context.shape;Ii(n,"bpmn:SubProcess")&&(n.collapsed?zi(n).di.isExpanded=!1:((t=n.children).length&&t.forEach(function(e){"label"!==e.type||e.businessObject.name||(e.hidden=!0)}),zi(n).di.isExpanded=!0))}),this.reverted(["shape.toggleCollapse"],ud,function(e){var t=e.context.shape;t.collapsed?zi(t).di.isExpanded=!1:zi(t).di.isExpanded=!0}),this.postExecuted(["shape.toggleCollapse"],ud,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=e.children,o=t;return(n=nu((i=r,i.filter(function(e){return!e.hidden})).concat([e])))?(o.width=Math.max(n.width,o.width),o.height=Math.max(n.height,o.height),o.x=n.x+(n.width-o.width)/2,o.y=n.y+(n.height-o.height)/2):(o.x=e.x+(e.width-o.width)/2,o.y=e.y+(e.height-o.height)/2),o}(r,o),n.resizeShape(r,i,null,{autoResize:!r.collapsed&&"nwse"})})}function hd(e,t,n,i){t.invoke(ss,this),this.preExecute("shape.delete",function(e){var t=e.context.shape,r=t.businessObject;wr(t)||(Ii(t,"bpmn:Participant")&&Fi(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().businessObject;n.ids.unclaim(t.id)})}n(ld,ss),ld.$inject=["eventBus","elementFactory","modeling"],n(hd,ss),hd.$inject=["canvas","injector","moddle","modeling"];var dd=500,fd=5e3;function md(e,t,n){var i;function r(){if(!i)throw new Error(n("out of bounds release"));return i}ss.call(this,e);var o=["spaceTool","lane.add","lane.resize","lane.split","elements.create","elements.delete","elements.move","shape.create","shape.delete","shape.move","shape.resize"];this.preExecute(o,fd,function(e){(i=i||new vd).enter()}),this.postExecuted(o,dd,function(e){!function(){if(!i)throw new Error(n("out of bounds release"));var e=i.leave();e&&(t.updateLaneRefs(i.flowNodes,i.lanes),i=null)}()}),this.preExecute(["shape.create","shape.move","shape.delete","shape.resize"],function(e){var t=e.context.shape,n=r();t.labelTarget||(Ii(t,"bpmn:Lane")&&n.addLane(t),Ii(t,"bpmn:FlowNode")&&n.addFlowNode(t))})}function vd(){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 yd(e,t){ss.call(this,e),this.preExecute("connection.delete",function(e){var n=e.context.connection,i=n.source;(function(e,t){if(!Ii(e,"bpmn:SequenceFlow"))return!1;var n=zi(t),i=zi(e);return n.get("default")===i})(n,i)&&t.updateProperties(i,{default:null})})}md.$inject=["eventBus","modeling","translate"],n(md,ss),n(yd,ss),yd.$inject=["eventBus","modeling"];var gd={__init__:["adaptiveLabelPositioningBehavior","appendBehavior","associationBehavior","attachEventBehavior","boundaryEventBehavior","rootElementReferenceBehavior","createBehavior","fixHoverBehavior","createDataObjectBehavior","createParticipantBehavior","dataStoreBehavior","dataInputAssociationBehavior","deleteLaneBehavior","detachEventBehavior","dropOnFlowBehavior","eventBasedGatewayBehavior","groupBehavior","importDockingFix","isHorizontalFix","labelBehavior","modelingFeedback","removeElementBehavior","removeParticipantBehavior","replaceConnectionBehavior","replaceElementBehaviour","resizeBehavior","resizeLaneBehavior","toggleElementCollapseBehaviour","spaceToolBehavior","subProcessStartEventBehavior","unclaimIdBehavior","unsetDefaultFlowBehavior","updateFlowNodeRefsBehavior"],adaptiveLabelPositioningBehavior:["type",_l],appendBehavior:["type",wl],associationBehavior:["type",Sl],attachEventBehavior:["type",Tl],boundaryEventBehavior:["type",Al],rootElementReferenceBehavior:["type",Pl],createBehavior:["type",Ml],fixHoverBehavior:["type",Nl],createDataObjectBehavior:["type",Ol],createParticipantBehavior:["type",Fl],dataInputAssociationBehavior:["type",Gl],dataStoreBehavior:["type",Ul],deleteLaneBehavior:["type",Kl],detachEventBehavior:["type",Xl],dropOnFlowBehavior:["type",Ql],eventBasedGatewayBehavior:["type",th],groupBehavior:["type",rh],importDockingFix:["type",ah],isHorizontalFix:["type",ch],labelBehavior:["type",Dh],modelingFeedback:["type",jh],replaceConnectionBehavior:["type",Lh],removeParticipantBehavior:["type",Ih],replaceElementBehaviour:["type",zh],resizeBehavior:["type",td],resizeLaneBehavior:["type",id],removeElementBehavior:["type",rd],toggleElementCollapseBehaviour:["type",ld],spaceToolBehavior:["type",sd],subProcessStartEventBehavior:["type",pd],unclaimIdBehavior:["type",hd],updateFlowNodeRefsBehavior:["type",md],unsetDefaultFlowBehavior:["type",yd]};function bd(e,t){var n=fo(e,t,-15);return"intersect"!==n?n:null}function xd(e){us.call(this,e)}function _d(e){return!e||wr(e)}function Ed(e){do{if(Ii(e,"bpmn:Process"))return zi(e);if(Ii(e,"bpmn:Participant"))return zi(e).processRef||zi(e)}while(e=e.parent)}function wd(e){return Ii(e,"bpmn:TextAnnotation")}function Sd(e){return Ii(e,"bpmn:Group")&&!e.labelTarget}function Cd(e){return Ii(e,"bpmn:BoundaryEvent")&&Ad(e,"bpmn:CompensateEventDefinition")}function Td(e){return zi(e).isForCompensation}function Rd(e){for(var t=e;t=t.parent;){if(Ii(t,"bpmn:FlowElementsContainer"))return zi(t);if(Ii(t,"bpmn:Participant"))return zi(t).processRef}return null}function Ad(e,t){return!!y(zi(e).eventDefinitions||[],function(e){return Ii(e,t)})}function kd(e,t){return(zi(e).eventDefinitions||[]).every(function(e){return Ii(e,t)})}function Pd(e){return Ii(e,"bpmn:ReceiveTask")||Ii(e,"bpmn:IntermediateCatchEvent")&&(Ad(e,"bpmn:MessageEventDefinition")||Ad(e,"bpmn:TimerEventDefinition")||Ad(e,"bpmn:ConditionalEventDefinition")||Ad(e,"bpmn:SignalEventDefinition"))}function Md(e){return e.waypoints}function Dd(e,t){return-1!==function(e){for(var t=[];e;)(e=e.parent)&&t.push(e);return t}(t).indexOf(e)}function Bd(e,t,n){if(_d(e)||_d(t))return null;if(!Ii(n,"bpmn:DataAssociation")){if(Vd(e,t))return{type:"bpmn:MessageFlow"};if(Ud(e,t))return{type:"bpmn:SequenceFlow"}}var i=qd(e,t);return i||(Cd(e)&&Td(t)?{type:"bpmn:Association",associationDirection:"One"}:!!Wd(e,t)&&{type:"bpmn:Association"})}function Nd(e,t,n){return!(!wr(e)&&!Sd(e))||!(Ii(t,"bpmn:Participant")&&!Fi(t))&&(Ii(e,"bpmn:Participant")?Ii(t,"bpmn:Process")||Ii(t,"bpmn:Collaboration"):ts(e,["bpmn:DataInput","bpmn:DataOutput"])&&e.parent?t===e.parent:Ii(e,"bpmn:Lane")?Ii(t,"bpmn:Participant")||Ii(t,"bpmn:Lane"):!(Ii(e,"bpmn:BoundaryEvent")&&(i=e,!zi(i).cancelActivity||!Ld(i)&&!Id(i)))&&(Ii(e,"bpmn:FlowElement")&&!Ii(e,"bpmn:DataStoreReference")?Ii(t,"bpmn:FlowElementsContainer")?Fi(t):ts(t,["bpmn:Participant","bpmn:Lane"]):ts(e,["bpmn:Artifact","bpmn:DataAssociation","bpmn:DataStoreReference"])?ts(t,["bpmn:Collaboration","bpmn:Lane","bpmn:Participant","bpmn:Process","bpmn:SubProcess"]):!!Ii(e,"bpmn:MessageFlow")&&(Ii(t,"bpmn:Collaboration")||e.source.parent==t||e.target.parent==t)));var i}function Od(e){return Ii(e,"bpmn:Lane")}function jd(e){return!!function(e){return!wr(e)&&Ii(e,"bpmn:BoundaryEvent")}(e)||(!(!Ii(e,"bpmn:IntermediateThrowEvent")||!Ld(e))||Ii(e,"bpmn:IntermediateCatchEvent")&&Id(e))}function Ld(e){var t=zi(e);return t&&!(t.eventDefinitions&&t.eventDefinitions.length)}function Id(e){return function(e,t){return t.some(function(t){return Ad(e,t)})}(e,["bpmn:MessageEventDefinition","bpmn:TimerEventDefinition","bpmn:SignalEventDefinition","bpmn:ConditionalEventDefinition"])}function zd(e,t,n,i){if(Array.isArray(e)||(e=[e]),1!==e.length)return!1;var r=e[0];return!wr(r)&&(!!jd(r)&&(!$i(t)&&(!(!Ii(t,"bpmn:Activity")||Td(t))&&(!(i&&!bd(i,t))&&(!function(e){return Ii(e,"bpmn:ReceiveTask")&&y(e.incoming,function(e){return Ii(e.source,"bpmn:EventBasedGateway")})}(t)&&"attach")))))}function Fd(e,t,n){if(!t)return!1;var i={replacements:[]};return b(e,function(e){$i(t)||Ii(e,"bpmn:StartEvent")&&"label"!==e.type&&Nd(e,t)&&(function(e){return e&&!1!==zi(e).isInterrupting}(e)||i.replacements.push({oldElementId:e.id,newElementType:"bpmn:StartEvent"}),(function(e){return Hi(e,"bpmn:ErrorEventDefinition")}(e)||function(e){return Hi(e,"bpmn:EscalationEventDefinition")}(e)||function(e){return Hi(e,"bpmn:CompensateEventDefinition")}(e))&&i.replacements.push({oldElementId:e.id,newElementType:"bpmn:StartEvent"})),Ii(t,"bpmn:Transaction")||Ad(e,"bpmn:CancelEventDefinition")&&"label"!==e.type&&(Ii(e,"bpmn:EndEvent")&&Nd(e,t)&&i.replacements.push({oldElementId:e.id,newElementType:"bpmn:EndEvent"}),Ii(e,"bpmn:BoundaryEvent")&&zd(e,t,0,n)&&i.replacements.push({oldElementId:e.id,newElementType:"bpmn:BoundaryEvent"}))}),!!i.replacements.length&&i}function $d(e,t){return!w(e,Od)&&(!t||e.every(function(e){return Nd(e,t)}))}function Hd(e,t,n,i){return!!t&&(!(!wr(e)&&!Sd(e))||n!==t&&((!n||!Dd(n,t))&&(Nd(e,t)||Kd(e,t))))}function Gd(e,t){return Ii(e,"bpmn:SubProcess")?Fi(e)&&(!t||t.width>=100&&t.height>=80):Ii(e,"bpmn:Lane")?!t||t.width>=130&&t.height>=60:Ii(e,"bpmn:Participant")?!t||t.width>=250&&t.height>=50:!!wd(e)||!!Sd(e)}function Wd(e,t){return!Md(e)&&!Md(t)&&(!(!Cd(e)||!Td(t))||!Dd(t,e)&&!Dd(e,t)&&(!!function(e,t){var n=wd(e),i=wd(t);return(n||i)&&n!==i}(e,t)||!!qd(e,t)))}function Vd(e,t){return!(Zd(e)&&!Zd(t))&&(Ii(i=e,"bpmn:InteractionNode")&&(!Ii(i,"bpmn:Event")||Ii(i,"bpmn:ThrowEvent")&&kd(i,"bpmn:MessageEventDefinition"))&&function(e){return Ii(e,"bpmn:InteractionNode")&&!Td(e)&&(!Ii(e,"bpmn:Event")||Ii(e,"bpmn:CatchEvent")&&kd(e,"bpmn:MessageEventDefinition"))}(t)&&(n=t,!(Ed(e)===Ed(n))));var n,i}function Ud(e,t){return!(Pd(t)&&t.incoming.length>0&&(n=t.incoming,(n=n||[]).some(Xd))&&!Ii(e,"bpmn:EventBasedGateway"))&&(Ii(r=e,"bpmn:FlowNode")&&!Ii(r,"bpmn:EndEvent")&&!$i(r)&&!(Ii(r,"bpmn:IntermediateThrowEvent")&&Ad(r,"bpmn:LinkEventDefinition"))&&!Cd(r)&&!Td(r)&&function(e){return Ii(e,"bpmn:FlowNode")&&!Ii(e,"bpmn:StartEvent")&&!Ii(e,"bpmn:BoundaryEvent")&&!$i(e)&&!(Ii(e,"bpmn:IntermediateCatchEvent")&&Ad(e,"bpmn:LinkEventDefinition"))&&!Td(e)}(t)&&(i=t,Rd(e)===Rd(i))&&!(Ii(e,"bpmn:EventBasedGateway")&&!Pd(t)));var n,i,r}function qd(e,t){return ts(e,["bpmn:DataObjectReference","bpmn:DataStoreReference"])&&ts(t,["bpmn:Activity","bpmn:ThrowEvent"])?{type:"bpmn:DataInputAssociation"}:!(!ts(t,["bpmn:DataObjectReference","bpmn:DataStoreReference"])||!ts(e,["bpmn:Activity","bpmn:CatchEvent"]))&&{type:"bpmn:DataOutputAssociation"}}function Kd(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&&(ts(t,["bpmn:SequenceFlow","bpmn:MessageFlow"])&&!wr(t)&&Ii(e,"bpmn:FlowNode")&&!Ii(e,"bpmn:BoundaryEvent")&&Nd(e,t.parent))}function Yd(e,t){return!!wr(t)||!(Ii(t,"bpmn:Lane")&&!function(e,t){return e&&t&&-1!==e.indexOf(t)}(e,t.parent))}function Xd(e){if(e&&e.source)return Ii(e.source,"bpmn:EventBasedGateway")}function Zd(e){return ns(e,"bpmn:Process")||ns(e,"bpmn:Collaboration")}n(xd,us),xd.$inject=["eventBus"],xd.prototype.init=function(){this.addRule("connection.start",function(e){return function(e){if(_d(e))return null;return ts(e,["bpmn:FlowNode","bpmn:InteractionNode","bpmn:DataObjectReference","bpmn:DataStoreReference"])}(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 Bd(t,n)}finally{r&&(n.parent=null)}}),this.addRule("connection.reconnect",function(e){var t=e.connection;return Bd(e.source,e.target,t)}),this.addRule("connection.updateWaypoints",function(e){return{type:e.connection.type}}),this.addRule("shape.resize",function(e){return Gd(e.shape,e.newBounds)}),this.addRule("elements.create",function(e){var t=e.elements,n=e.position,i=e.target;return E(t,function(e){return Md(e)?Bd(e.source,e.target,e):e.host?zd(e,e.host,null,n):Hd(e,i,null)})}),this.addRule("elements.move",function(e){var t=e.target,n=e.shapes,i=e.position;return zd(n,t,null,i)||Fd(n,t,i)||$d(n,t)||Kd(n,t)}),this.addRule("shape.create",function(e){return Hd(e.shape,e.target,e.source,e.position)}),this.addRule("shape.attach",function(e){return zd(e.shape,e.target,null,e.position)}),this.addRule("element.copy",function(e){var t=e.element;return Yd(e.elements,t)})},xd.prototype.canConnectMessageFlow=Vd,xd.prototype.canConnectSequenceFlow=Ud,xd.prototype.canConnectDataAssociation=qd,xd.prototype.canConnectAssociation=Wd,xd.prototype.canMove=$d,xd.prototype.canAttach=zd,xd.prototype.canReplace=Fd,xd.prototype.canDrop=Nd,xd.prototype.canInsert=Kd,xd.prototype.canCreate=Hd,xd.prototype.canConnect=Bd,xd.prototype.canResize=Gd,xd.prototype.canCopy=Yd;var Qd={__depends__:[Cs],__init__:["bpmnRules"],bpmnRules:["type",xd]},Jd=2e3;function ef(e,t){e.on("saveXML.start",Jd,function(){var e,n,i=t.getRootElement(),r=zi(i).di;e=g(e=dt([i],!1),function(e){return e!==i&&!e.labelTarget}),n=S(e,Ui),r.set("planeElement",n)})}ef.$inject=["eventBus","canvas"];var tf={__init__:["bpmnDiOrdering"],bpmnDiOrdering:["type",ef]};function nf(e){ss.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 rf(e,t,n){nf.call(this,e);var i=[{type:"bpmn:SubProcess",order:{level:6}},{type:"bpmn:SequenceFlow",order:{level:3,containers:["bpmn:Participant","bpmn:FlowElementsContainer"]}},{type:"bpmn:DataAssociation",order:{level:9,containers:["bpmn:Collaboration","bpmn:Process"]}},{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:Process"]}},{type:"bpmn:FlowElement",order:{level:5}},{type:"bpmn:Participant",order:{level:-2}},{type:"bpmn:Lane",order:{level:-1}}];function r(e){var t=e.order;return t||(e.order=t=function(e){if(e.labelTarget)return{level:10};var t=y(i,function(t){return ts(e,[t.type])});return t&&t.order||{level:1}}(e)),t}this.getOrdering=function(e,i){if(e.labelTarget)return{parent:t.getRootElement(),index:-1};var o=r(e);o.containers&&(i=function(e,t,i){for(var r=t;r&&!ts(r,i);)r=r.parent;if(!r)throw new Error(n("no parent for {element} in {parent}",{element:e.id,parent:t.id}));return r}(e,i,o.containers));var a=i.children.indexOf(e),s=function(e,t){t=N(t);var n=l(e)?-1:void 0;return b(e,function(e,i){if(t(e,i))return n=i,!1}),n}(i.children,function(t){return!(!e.labelTarget&&t.labelTarget)&&o.level<r(t).level});return-1!==s&&-1!==a&&a<s&&(s-=1),{index:s,parent:i}}}nf.prototype.getOrdering=function(e,t){return null},n(nf,ss),rf.$inject=["eventBus","canvas","translate"],n(rf,nf);var of={__depends__:[vr],__init__:["bpmnOrderingProvider"],bpmnOrderingProvider:["type",rf]};function af(e,t){this._handlerMap={},this._stack=[],this._stackIdx=-1,this._currentExecution={actions:[],dirty:[]},this._injector=t,this._eventBus=e,this._uid=1,e.on(["diagram.destroy","diagram.clear"],function(){this.clear(!1)},this)}af.$inject=["eventBus","injector"],af.prototype.execute=function(e,t){if(!e)throw new Error("command required");var n={command:e,context:t};this._pushAction(n),this._internalExecute(n),this._popAction(n)},af.prototype.canExecute=function(e,t){var n={command:e,context:t},i=this._getHandler(e),r=this._fire(e,"canExecute",n);if(void 0===r){if(!i)return!1;i.canExecute&&(r=i.canExecute(t))}return r},af.prototype.clear=function(e){this._stack.length=0,this._stackIdx=-1,!1!==e&&this._fire("changed")},af.prototype.undo=function(){var e,t=this._getUndoAction();if(t){for(this._pushAction(t);t&&(this._internalUndo(t),(e=this._getUndoAction())&&e.id===t.id);)t=e;this._popAction()}},af.prototype.redo=function(){var e,t=this._getRedoAction();if(t){for(this._pushAction(t);t&&(this._internalExecute(t,!0),(e=this._getRedoAction())&&e.id===t.id);)t=e;this._popAction()}},af.prototype.register=function(e,t){this._setHandler(e,t)},af.prototype.registerHandler=function(e,t){if(!e||!t)throw new Error("command and handlerCls must be defined");var n=this._injector.instantiate(t);this.register(e,n)},af.prototype.canUndo=function(){return!!this._getUndoAction()},af.prototype.canRedo=function(){return!!this._getRedoAction()},af.prototype._getRedoAction=function(){return this._stack[this._stackIdx+1]},af.prototype._getUndoAction=function(){return this._stack[this._stackIdx]},af.prototype._internalUndo=function(e){var t=this,n=e.command,i=e.context,r=this._getHandler(n);this._atomicDo(function(){t._fire(n,"revert",e),r.revert&&t._markDirty(r.revert(i)),t._revertedAction(e),t._fire(n,"reverted",e)})},af.prototype._fire=function(e,t,n){arguments.length<3&&(n=t,t=null);var i,r,o,a=t?[e+"."+t,t]:[e];for(n=this._eventBus.createEvent(n),i=0;(r=a[i])&&(o=this._eventBus.fire("commandStack."+r,n),!n.cancelBubble);i++);return o},af.prototype._createId=function(){return this._uid++},af.prototype._atomicDo=function(e){var t=this._currentExecution;t.atomic=!0;try{e()}finally{t.atomic=!1}},af.prototype._internalExecute=function(e,t){var n=this,i=e.command,r=e.context,o=this._getHandler(i);if(!o)throw new Error("no command handler registered for <"+i+">");this._pushAction(e),t||(this._fire(i,"preExecute",e),o.preExecute&&o.preExecute(r),this._fire(i,"preExecuted",e)),this._atomicDo(function(){n._fire(i,"execute",e),o.execute&&n._markDirty(o.execute(r)),n._executedAction(e,t),n._fire(i,"executed",e)}),t||(this._fire(i,"postExecute",e),o.postExecute&&o.postExecute(r),this._fire(i,"postExecuted",e)),this._popAction(e)},af.prototype._pushAction=function(e){var 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)},af.prototype._popAction=function(){var e=this._currentExecution,t=e.actions,n=e.dirty;t.pop(),t.length||(this._eventBus.fire("elements.changed",{elements:k("id",n.reverse())}),n.length=0,this._fire("changed"))},af.prototype._markDirty=function(e){var t=this._currentExecution;e&&(e=l(e)?e:[e],t.dirty=t.dirty.concat(e))},af.prototype._executedAction=function(e,t){var n=++this._stackIdx;t||this._stack.splice(n,this._stack.length,e)},af.prototype._revertedAction=function(e){this._stackIdx--},af.prototype._getHandler=function(e){return this._handlerMap[e]},af.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 sf={commandStack:["type",af]},cf=new $o("tt");function pf(e,t){e.style.display=!1===t?"none":""}var uf=".djs-tooltip";function lf(e,t){var n,i;this._eventBus=e,this._canvas=t,this._ids=cf,this._tooltipDefaults={show:{minZoom:.7,maxZoom:5}},this._tooltips={},this._tooltipRoot=(n=t.getContainer(),i=le('<div class="djs-tooltip-container" style="position: absolute; width: 0; height: 0;" />'),n.insertBefore(i,n.firstChild),i);var r=this;ue.bind(this._tooltipRoot,uf,"mousedown",function(e){e.stopPropagation()}),ue.bind(this._tooltipRoot,uf,"mouseover",function(e){r.trigger("mouseover",e)}),ue.bind(this._tooltipRoot,uf,"mouseout",function(e){r.trigger("mouseout",e)}),this._init()}lf.$inject=["eventBus","canvas"],lf.prototype.add=function(e){if(!e.position)throw new Error("must specifiy tooltip position");if(!e.html)throw new Error("must specifiy tooltip html");var t=this._ids.next();return e=F({},this._tooltipDefaults,e,{id:t}),this._addTooltip(e),e.timeout&&this.setTimeout(e),t},lf.prototype.trigger=function(e,t){var n=t.delegateTarget||t.target,i=this.get(G(n,"data-tooltip-id"));i&&("mouseover"===e&&i.timeout&&this.clearTimeout(i),"mouseout"===e&&i.timeout&&(i.timeout=1e3,this.setTimeout(i)))},lf.prototype.get=function(e){return"string"!=typeof e&&(e=e.id),this._tooltips[e]},lf.prototype.clearTimeout=function(e){if(e=this.get(e)){var t=e.removeTimer;t&&(clearTimeout(t),e.removeTimer=null)}},lf.prototype.setTimeout=function(e){if(e=this.get(e)){this.clearTimeout(e);var t=this;e.removeTimer=setTimeout(function(){t.remove(e)},e.timeout)}},lf.prototype.remove=function(e){var t=this.get(e);t&&(ve(t.html),ve(t.htmlContainer),delete t.htmlContainer,delete this._tooltips[t.id])},lf.prototype.show=function(){pf(this._tooltipRoot)},lf.prototype.hide=function(){pf(this._tooltipRoot,!1)},lf.prototype._updateRoot=function(e){var t=e.scale||1,n=e.scale||1,i="matrix("+t+",0,0,"+n+","+-1*e.x*t+","+-1*e.y*n+")";this._tooltipRoot.style.transform=i,this._tooltipRoot.style["-ms-transform"]=i},lf.prototype._addTooltip=function(e){var t,n=e.id,i=e.html,r=this._tooltipRoot;i.get&&i.constructor.prototype.jquery&&(i=i.get(0)),m(i)&&(i=le(i)),(t=le('<div data-tooltip-id="'+n+'" class="djs-tooltip" style="position: absolute">')).appendChild(i),e.type&&K(t).add("djs-tooltip-"+e.type),e.className&&K(t).add(e.className),e.htmlContainer=t,r.appendChild(t),this._tooltips[n]=e,this._updateTooltip(e)},lf.prototype._updateTooltip=function(e){var t,n,i,r=e.position,o=e.htmlContainer;t=o,n=r.x,i=r.y,F(t.style,{left:n+"px",top:i+"px"})},lf.prototype._updateTooltipVisibilty=function(e){b(this._tooltips,function(t){var n=t.show,i=t.htmlContainer,r=!0;n&&((n.minZoom>e.scale||n.maxZoom<e.scale)&&(r=!1),pf(i,r))})},lf.prototype._init=function(){var e=this;this._eventBus.on("canvas.viewbox.changing",function(t){e.hide()}),this._eventBus.on("canvas.viewbox.changed",function(t){var n;n=t.viewbox,e._updateRoot(n),e._updateTooltipVisibilty(n),e.show()})};var hf={__init__:["tooltips"],tooltips:["type",lf]};function df(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}}var ff=250,mf=1400;function vf(e,t,n){ss.call(this,t);var i=e.get("movePreview",!1);t.on("shape.move.start",mf,function(e){var t=e.context,n=t.shapes,i=t.validatedShapes;t.shapes=yf(n),t.validatedShapes=yf(i)}),i&&t.on("shape.move.start",ff,function(e){var t=e.context,n=t.shapes,r=[];b(n,function(e){b(e.labels,function(n){n.hidden||-1!==t.shapes.indexOf(n)||r.push(n),e.labelTarget&&r.push(e)})}),b(r,function(e){i.makeDraggable(t,e,!0)})}),this.preExecuted("elements.move",mf,function(e){var t=e.context.closure,n=t.enclosedElements,i=[];b(n,function(e){b(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;df((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=wt(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&&(Et(i.labels,n,r),n.labelTarget=i)})}function yf(e){return g(e,function(t){return-1===e.indexOf(t.labelTarget)})}n(vf,ss),vf.$inject=["injector","eventBus","modeling"];var gf={__init__:["labelSupport"],labelSupport:["type",vf]},bf=251,xf=1401,_f="attach-ok";function Ef(e,t,n,i,r){ss.call(this,t);var o=e.get("movePreview",!1);t.on("shape.move.start",xf,function(e){var t,n,i=e.context,r=i.shapes,o=i.validatedShapes;i.shapes=(n=wf(t=r),P("id",t,n)),i.validatedShapes=function(e){var t=A(e,"id");return g(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",bf,function(e){var t=e.context;b(wf(t.shapes),function(e){o.makeDraggable(t,e,!0),b(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,_f),t.once(["shape.move.out","shape.move.cleanup"],function(){n.removeMarker(r,_f)}))}}),this.preExecuted("elements.move",xf,function(e){var t=e.context,n=t.closure;b(wf(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||b(i?n:g(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){b(e.context.shapes,function(e){b(e.attachers,function(e){b(e.outgoing.slice(),function(e){i.allowed("connection.reconnect",{connection:e,source:e.source,target:e.target})||r.removeConnection(e)}),b(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;df(n.attachers,function(e){"attach"===i.allowed("elements.move",{target:o,shapes:[e]})?r.updateAttachment(e,o):r.removeShape(e)}),o.attachers.length&&b(o.attachers,function(e){var t=Ah(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&&b(a,function(e){var t=Ah(e,i,o);r.moveShape(e,t,e.parent),b(e.labels,function(e){r.moveShape(e,t,e.parent)})})}),this.preExecute("shape.delete",function(e){var t=e.context.shape;df(t.attachers,function(e){r.removeShape(e)}),t.host&&r.updateAttachment(t,null)})}function wf(e){return o(S(e,function(e){return e.attachers||[]}))}n(Ef,ss),Ef.$inject=["injector","eventBus","canvas","rules","modeling"];var Sf={__depends__:[Cs],__init__:["attachSupport"],attachSupport:["type",Ef]};function Cf(e,t){this._eventBus=e,this._dragging=t,this._tools=[],this._active=null}Cf.$inject=["eventBus","dragging"],Cf.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)},Cf.prototype.isActive=function(e){return e&&this._active===e},Cf.prototype.length=function(e){return this._tools.length},Cf.prototype.setActive=function(e){var t=this._eventBus;this._active!==e&&(this._active=e,t.fire("tool-manager.update",{tool:e}))},Cf.prototype.bindEvents=function(e,t){var n=this._eventBus,i=this._dragging,r=[];n.on(t.tool+".init",function(t){if(!t.context.reactivate&&this.isActive(e))return this.setActive(null),void i.cancel();this.setActive(e)},this),b(t,function(e){r.push(e+".ended"),r.push(e+".canceled")}),n.on(r,250,function(e){var t=e.originalEvent;this._active&&(t&&ee(t.target,'.group[data-group="tools"]')||this.setActive(null))},this)};var Tf={__depends__:[xs],__init__:["toolManager"],toolManager:["type",Cf]};function Rf(e,t){return-1!==e.indexOf(t)}var Af=Math.abs,kf=Math.round,Pf={x:"width",y:"height"},Mf={n:"top",w:"left",s:"bottom",e:"right"},Df=1500,Bf={n:"s",w:"e",s:"n",e:"w"},Nf=20;function Of(e,t,n,i,r,o){this._canvas=e,this._dragging=t,this._eventBus=n,this._modeling=i,this._rules=r,this._toolManager=o;var a=this;o.registerTool("space",{tool:"spaceTool.selection",dragging:"spaceTool"}),n.on("spaceTool.selection.end",function(e){n.once("spaceTool.selection.ended",function(){a.activateMakeSpace(e.originalEvent)})}),n.on("spaceTool.move",Df,function(e){var t=e.context,n=t.initialized;n||(n=t.initialized=a.init(e,t)),n&&Lf(e)}),n.on("spaceTool.end",function(e){var t=e.context,i=t.axis,r=t.direction,o=t.movingShapes,s=t.resizingShapes,c=t.start;if(t.initialized){Lf(e);var p={x:0,y:0};p[i]=kf(e["d"+i]),a.makeSpace(o,s,p,r,c),n.once("spaceTool.ended",function(e){a.activateSelection(e.originalEvent,!0,!0)})}})}function jf(e){return{top:e.top-Nf,right:e.right+Nf,bottom:e.bottom+Nf,left:e.left-Nf}}function Lf(e){var t,n,i=e.context.spaceToolConstraints;i&&(d(i.left)&&(t=Math.max(e.x,i.left),e.dx=e.dx+t-e.x,e.x=t),d(i.right)&&(t=Math.min(e.x,i.right),e.dx=e.dx+t-e.x,e.x=t),d(i.top)&&(n=Math.max(e.y,i.top),e.dy=e.dy+n-e.y,e.y=n),d(i.bottom)&&(n=Math.min(e.y,i.bottom),e.dy=e.dy+n-e.y,e.y=n))}function If(e,t){return-1!==e.indexOf(t)}function zf(e){return!!e.waypoints}function Ff(e){return!!e.labelTarget}Of.$inject=["canvas","dragging","eventBus","modeling","rules","toolManager"],Of.prototype.activateSelection=function(e,t,n){this._dragging.init(e,"spaceTool.selection",{autoActivate:t,cursor:"crosshair",data:{context:{reactivate:n}},trapClick:!1})},Of.prototype.activateMakeSpace=function(e){this._dragging.init(e,"spaceTool",{autoActivate:!0,cursor:"crosshair",data:{context:{}}})},Of.prototype.makeSpace=function(e,t,n,i,r){return this._modeling.createSpace(e,t,n,i,r)},Of.prototype.init=function(e,t){var n=Af(e.dx)>Af(e.dy)?"x":"y",i=e["d"+n],r=e[n]-i;if(Af(i)<5)return!1;i<0&&(i*=-1),To(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=dt(this._canvas.getRootElement(),!0),s=this.calculateAdjustments(a,n,i,r);return F(t,s,{axis:n,direction:o,spaceToolConstraints:function(e,t,n,i,r){var o=e.movingShapes,a=e.resizingShapes;if(!a.length)return;var s,c,p={};return b(a,function(e){var u,l,h,f=uo(e),m=g(e.children,function(e){return!(zf(e)||Ff(e)||If(o,e)||If(a,e))}),v=g(e.children,function(e){return!zf(e)&&!Ff(e)&&If(o,e)});m.length&&(l=jf(uo(ft(m))),u=i-f[Mf[n]]+l[Mf[n]],"n"===n?p.bottom=c=d(c)?Math.min(c,u):u:"w"===n?p.right=c=d(c)?Math.min(c,u):u:"s"===n?p.top=s=d(s)?Math.max(s,u):u:"e"===n&&(p.left=s=d(s)?Math.max(s,u):u)),v.length&&(h=jf(uo(ft(v))),u=i-h[Mf[Bf[n]]]+f[Mf[Bf[n]]],"n"===n?p.bottom=c=d(c)?Math.min(c,u):u:"w"===n?p.right=c=d(c)?Math.min(c,u):u:"s"===n?p.top=s=d(s)?Math.max(s,u):u:"e"===n&&(p.left=s=d(s)?Math.max(s,u):u));var y=r&&r[e.id];y&&("n"===n?(u=i+e[Pf[t]]-y[Pf[t]],p.bottom=c=d(c)?Math.min(c,u):u):"w"===n?(u=i+e[Pf[t]]-y[Pf[t]],p.right=c=d(c)?Math.min(c,u):u):"s"===n?(u=i-e[Pf[t]]+y[Pf[t]],p.top=s=d(s)?Math.max(s,u):u):"e"===n&&(u=i-e[Pf[t]]+y[Pf[t]],p.left=s=d(s)?Math.max(s,u):u))}),p}(s,n,o,r,this._eventBus.fire("spaceTool.getMinDimensions",{axis:n,direction:o,shapes:s.resizingShapes,start:r})),start:r}),ua("resize-"+("x"===n?"ew":"ns")),!0},Of.prototype.calculateAdjustments=function(e,t,n,i){var r=this._rules,o=[],a=[];return b(e,function(e){if(e.parent&&!zf(e)){var s=e[t],c=s+e[Pf[t]];return n>0&&s>i||n<0&&c<i?o.push(e):s<i&&c>i&&r.allowed("shape.resize",{shape:e})?a.push(e):void 0}}),{movingShapes:o,resizingShapes:a}},Of.prototype.toggle=function(){this.isActive()?this._dragging.cancel():this.activateSelection()},Of.prototype.isActive=function(){var e=this._dragging.context();return e&&/^spaceTool/.test(e.prefix)};var $f="djs-dragging",Hf="djs-resizing",Gf=250,Wf=Math.max;function Vf(e,t,n,i,r){function o(e,t){b(e,function(e){r.addDragger(e,t),n.addMarker(e,$f)})}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=Oe("g");Ee(s,i.cls("djs-crosshair-group",["no-events"])),ge(t,s);var c=Oe("path");Ee(c,"d",o),Re(c).add("djs-crosshair"),ge(s,c);var p=Oe("path");Ee(p,"d",a),Re(p).add("djs-crosshair"),ge(s,p),r.crosshairGroup=s}),e.on("spaceTool.selection.move",function(e){en(e.context.crosshairGroup,e.x,e.y)}),e.on("spaceTool.selection.cleanup",function(e){var t=e.context.crosshairGroup;t&&ke(t)}),e.on("spaceTool.move",Gf,function(e){var a=e.context,s=a.line,c=a.axis,p=a.movingShapes,u=a.resizingShapes;if(a.initialized){if(!a.dragGroup){var l=n.getLayer("space");Ee(s=Oe("path"),"d","M0,0 L0,0"),Re(s).add("djs-crosshair"),ge(l,s),a.line=s;var h=Oe("g");Ee(h,i.cls("djs-drag-group",["no-events"])),ge(n.getDefaultLayer(),h),o(p,h),o(a.movingConnections=t.filter(function(e){var t=!1;b(p,function(n){b(n.outgoing,function(n){e===n&&(t=!0)})});var n=!1;b(p,function(t){b(t.incoming,function(t){e===t&&(n=!0)})});var i=!1;b(u,function(t){b(t.outgoing,function(t){e===t&&(i=!0)})});var r=!1;return b(u,function(t){b(t.incoming,function(t){e===t&&(r=!0)})}),function(e){return e.waypoints}(e)&&(t||i)&&(n||r)}),h),a.dragGroup=h}if(!a.frameGroup){var d=Oe("g");Ee(d,i.cls("djs-frame-group",["no-events"])),ge(n.getDefaultLayer(),d);var f=[];b(u,function(e){var t=r.addFrame(e,d),i=t.getBBox();f.push({element:t,initialBounds:i}),n.addMarker(e,Hf)}),a.frameGroup=d,a.frames=f}Ee(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,en(a.dragGroup,m.x,m.y),b(a.frames,function(e){var t,n,i=e.element,r=e.initialBounds;"e"===a.direction?Ee(i,{width:Wf(r.width+m.x,5)}):Ee(i,{width:t=Wf(r.width-m.x,5),x:r.x+r.width-t}),"s"===a.direction?Ee(i,{height:Wf(r.height+m.y,5)}):Ee(i,{height:n=Wf(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;b(i,function(e){n.removeMarker(e,$f)}),b(r,function(e){n.removeMarker(e,$f)}),s&&(ke(a),ke(s)),b(o,function(e){n.removeMarker(e,Hf)}),c&&ke(c)})}Vf.$inject=["eventBus","elementRegistry","canvas","styles","previewSupport"];var Uf={__init__:["spaceToolPreview"],__depends__:[xs,Cs,Tf,Vc],spaceTool:["type",Of],spaceToolPreview:["type",Vf]};function qf(e){this._model=e}function Kf(e,t,n,i){ss.call(this,e),this._bpmnFactory=t,this._translate=i;var r=this;function o(e){b(e.context.oldRoot.children,function(e){Ii(e,"bpmn:BaseElement")&&r.updateParent(e)})}function a(e){var t=e.context.shape;Ii(t,"bpmn:BaseElement")&&r.updateBounds(t)}function s(e){r.updateConnection(e.context)}function c(e){r.updateConnectionWaypoints(e.context.connection)}function p(e){r.updateAttachment(e.context)}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"],Yf(function(e){var t=e.context;r.updateParent(t.shape||t.connection,t.oldParent)})),this.reverted(["shape.move","shape.create","shape.delete","connection.create","connection.move","connection.delete"],Yf(function(e){var t=e.context,n=t.shape||t.connection,i=t.parent||t.newParent;r.updateParent(n,i)})),this.executed(["canvas.updateRoot"],o),this.reverted(["canvas.updateRoot"],o),this.executed(["shape.move","shape.create","shape.resize"],Yf(function(e){"label"!==e.context.shape.type&&a(e)})),this.reverted(["shape.move","shape.create","shape.resize"],Yf(function(e){"label"!==e.context.shape.type&&a(e)})),e.on("shape.changed",function(e){"label"===e.element.type&&a({context:{shape:e.element}})}),this.executed(["connection.create","connection.move","connection.delete","connection.reconnect"],Yf(s)),this.reverted(["connection.create","connection.move","connection.delete","connection.reconnect"],Yf(s)),this.executed(["connection.layout","connection.move","connection.updateWaypoints"],Yf(c)),this.reverted(["connection.layout","connection.move","connection.updateWaypoints"],Yf(c)),this.executed("connection.reconnect",Yf(function(e){var t=e.context,n=t.connection,i=t.oldSource,r=t.newSource,o=zi(n),a=zi(i),s=zi(r);o.conditionExpression&&!ts(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",Yf(function(e){var t=e.context,n=t.connection,i=t.oldSource,r=t.newSource,o=zi(n),a=zi(i),s=zi(r);t.oldConditionExpression&&(o.conditionExpression=t.oldConditionExpression),t.oldDefault&&(a.default=t.oldDefault,delete s.default)})),this.executed(["element.updateAttachment"],Yf(p)),this.reverted(["element.updateAttachment"],Yf(p))}function Yf(e){return function(t){var n=t.context;Ii(n.shape||n.connection,"bpmn:BaseElement")&&e(t)}}function Xf(e,t,n){Kt.call(this),this._bpmnFactory=e,this._moddle=t,this._translate=n}function Zf(e,t,n){e[n]=t[n],delete t[n]}function Qf(e,t){this._modeling=e,this._canvas=t}function Jf(e){this._modeling=e}function em(e,t){this._canvas=e,this._layouter=t}qf.$inject=["moddle"],qf.prototype._needsId=function(e){return ts(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"])},qf.prototype._ensureId=function(e){var t;t=Ii(e,"bpmn:Activity")?"Activity":Ii(e,"bpmn:Event")?"Event":Ii(e,"bpmn:Gateway")?"Gateway":ts(e,["bpmn:SequenceFlow","bpmn:MessageFlow"])?"Flow":(e.$type||"").replace(/^[^:]*:/g,""),t+="_",!e.id&&this._needsId(e)&&(e.id=this._model.ids.nextPrefixed(t,e))},qf.prototype.create=function(e,t){var n=this._model.create(e,t||{});return this._ensureId(n),n},qf.prototype.createDiLabel=function(){return this.create("bpmndi:BPMNLabel",{bounds:this.createDiBounds()})},qf.prototype.createDiShape=function(e,t,n){return this.create("bpmndi:BPMNShape",F({bpmnElement:e,bounds:this.createDiBounds(t)},n))},qf.prototype.createDiBounds=function(e){return this.create("dc:Bounds",e)},qf.prototype.createDiWaypoints=function(e){var t=this;return S(e,function(e){return t.createDiWaypoint(e)})},qf.prototype.createDiWaypoint=function(e){return this.create("dc:Point",$(e,["x","y"]))},qf.prototype.createDiEdge=function(e,t,n){return this.create("bpmndi:BPMNEdge",F({bpmnElement:e},n))},qf.prototype.createDiPlane=function(e){return this.create("bpmndi:BPMNPlane",{bpmnElement:e})},n(Kf,ss),Kf.$inject=["eventBus","bpmnFactory","connectionDocking","translate"],Kf.prototype.updateAttachment=function(e){var t=e.shape,n=t.businessObject,i=t.host;n.attachedToRef=i&&i.businessObject},Kf.prototype.updateParent=function(e,t){if(!(e instanceof Vt||Ii(e,"bpmn:DataStoreReference")&&e.parent&&Ii(e.parent,"bpmn:Collaboration"))){var n=e.parent,i=e.businessObject,r=n&&n.businessObject,o=r&&r.di;Ii(e,"bpmn:FlowNode")&&this.updateFlowNodeRefs(i,r,t&&t.businessObject),Ii(e,"bpmn:DataOutputAssociation")&&(r=e.source?e.source.businessObject:null),Ii(e,"bpmn:DataInputAssociation")&&(r=e.target?e.target.businessObject:null),this.updateSemanticParent(i,r),Ii(e,"bpmn:DataObjectReference")&&i.dataObjectRef&&this.updateSemanticParent(i.dataObjectRef,r),this.updateDiParent(i.di,o)}},Kf.prototype.updateBounds=function(e){var t=e.businessObject.di,n=e instanceof Vt?this._getLabel(t):t,i=n.bounds;i||(i=this._bpmnFactory.createDiBounds(),n.set("bounds",i)),F(i,{x:e.x,y:e.y,width:e.width,height:e.height})},Kf.prototype.updateFlowNodeRefs=function(e,t,n){n!==t&&(Ii(n,"bpmn:Lane")&&_t(n.get("flowNodeRef"),e),Ii(t,"bpmn:Lane")&&Et(t.get("flowNodeRef"),e))},Kf.prototype.updateDiConnection=function(e,t,n){e.sourceElement&&e.sourceElement.bpmnElement!==t&&(e.sourceElement=t&&t.di),e.targetElement&&e.targetElement.bpmnElement!==n&&(e.targetElement=n&&n.di)},Kf.prototype.updateDiParent=function(e,t){if(t&&!Ii(t,"bpmndi:BPMNPlane")&&(t=t.$parent),e.$parent!==t){var n=(t||e.$parent).get("planeElement");t?(n.push(e),e.$parent=t):(_t(n,e),e.$parent=null)}},Kf.prototype.getLaneSet=function(e){var t,n;return Ii(e,"bpmn:Lane")?((t=e.childLaneSet)||(t=this._bpmnFactory.create("bpmn:LaneSet"),e.childLaneSet=t,t.$parent=e),t):(Ii(e,"bpmn:Participant")&&(e=e.processRef),(t=(n=e.get("laneSets"))[0])||((t=this._bpmnFactory.create("bpmn:LaneSet")).$parent=e,n.push(t)),t)},Kf.prototype.updateSemanticParent=function(e,t,n){var i,r=this._translate;if(e.$parent!==t&&!((Ii(e,"bpmn:DataInput")||Ii(e,"bpmn:DataOutput"))&&(Ii(t,"bpmn:Participant")&&"processRef"in t&&(t=t.processRef),"ioSpecification"in t&&t.ioSpecification===e.$parent))){if(Ii(e,"bpmn:Lane"))t&&(t=this.getLaneSet(t)),i="lanes";else if(Ii(e,"bpmn:FlowElement")){if(t)if(Ii(t,"bpmn:Participant"))t=t.processRef;else if(Ii(t,"bpmn:Lane"))do{t=t.$parent.$parent}while(Ii(t,"bpmn:Lane"));i="flowElements"}else if(Ii(e,"bpmn:Artifact")){for(;t&&!Ii(t,"bpmn:Process")&&!Ii(t,"bpmn:SubProcess")&&!Ii(t,"bpmn:Collaboration");){if(Ii(t,"bpmn:Participant")){t=t.processRef;break}t=t.$parent}i="artifacts"}else if(Ii(e,"bpmn:MessageFlow"))i="messageFlows";else if(Ii(e,"bpmn:Participant")){i="participants";var o,a=e.processRef;a&&(o=function(e){for(;e&&!Ii(e,"bpmn:Definitions");)e=e.$parent;return e}(e.$parent||t),e.$parent&&(_t(o.get("rootElements"),a),a.$parent=null),t&&(Et(o.get("rootElements"),a),a.$parent=o))}else Ii(e,"bpmn:DataOutputAssociation")?i="dataOutputAssociations":Ii(e,"bpmn:DataInputAssociation")&&(i="dataInputAssociations");if(!i)throw new Error(r("no parent for {element} in {parent}",{element:e.id,parent:t.id}));var s;if(e.$parent&&_t(s=e.$parent.get(i),e),t?((s=t.get(i)).push(e),e.$parent=t):e.$parent=null,n){var c=n.get(i);_t(s,e),t&&(c||(c=[],t.set(i,c)),c.push(e))}}},Kf.prototype.updateConnectionWaypoints=function(e){e.businessObject.di.set("waypoint",this._bpmnFactory.createDiWaypoints(e.waypoints))},Kf.prototype.updateConnection=function(e){var t,n=e.connection,i=zi(n),r=zi(n.source),o=zi(n.target);if(Ii(i,"bpmn:DataAssociation"))Ii(i,"bpmn:DataInputAssociation")?(i.get("sourceRef")[0]=r,t=e.parent||e.newParent||o,this.updateSemanticParent(i,o,t)):Ii(i,"bpmn:DataOutputAssociation")&&(t=e.parent||e.newParent||r,this.updateSemanticParent(i,r,t),i.targetRef=o);else{var a=Ii(i,"bpmn:SequenceFlow");i.sourceRef!==r&&(a&&(_t(i.sourceRef&&i.sourceRef.get("outgoing"),i),r&&r.get("outgoing")&&r.get("outgoing").push(i)),i.sourceRef=r),i.targetRef!==o&&(a&&(_t(i.targetRef&&i.targetRef.get("incoming"),i),o&&o.get("incoming")&&o.get("incoming").push(i)),i.targetRef=o)}this.updateConnectionWaypoints(n),this.updateDiConnection(i.di,r,o)},Kf.prototype._getLabel=function(e){return e.label||(e.label=this._bpmnFactory.createDiLabel()),e.label},n(Xf,Kt),Xf.$inject=["bpmnFactory","moddle","translate"],Xf.prototype.baseCreate=Kt.prototype.create,Xf.prototype.create=function(e,t){return"label"===e?this.baseCreate(e,F({type:"label"},yr,t)):this.createBpmnElement(e,t)},Xf.prototype.createBpmnElement=function(e,t){var n,i,r,o=this._translate,a=(t=t||{}).businessObject;if(!a){if(!t.type)throw new Error(o("no shape type specified"));a=this._bpmnFactory.create(t.type)}return a.di||(a.di="root"===e?this._bpmnFactory.createDiPlane(a,[],{id:a.id+"_di"}):"connection"===e?this._bpmnFactory.createDiEdge(a,[],{id:a.id+"_di"}):this._bpmnFactory.createDiShape(a,{},{id:a.id+"_di"})),Ii(a,"bpmn:Group")&&(t=F({isFrame:!0},t)),t.di&&(F(a.di,t.di),delete t.di),function(e,t,n){b(n,function(n){void 0!==t[n]&&Zf(e,t,n)})}(a,t,["processRef","isInterrupting","associationDirection","isForCompensation"]),t.isExpanded&&Zf(a.di,t,"isExpanded"),Ii(a,"bpmn:ExclusiveGateway")&&(a.di.isMarkerVisible=!0),t.eventDefinitionType&&(i=a.get("eventDefinitions")||[],r=this._bpmnFactory.create(t.eventDefinitionType,t.eventDefinitionAttrs),"bpmn:ConditionalEventDefinition"===t.eventDefinitionType&&(r.condition=this._bpmnFactory.create("bpmn:FormalExpression")),i.push(r),r.$parent=a,a.eventDefinitions=i,delete t.eventDefinitionType),n=this._getDefaultSize(a),t=F({businessObject:a,id:a.id},n,t),this.baseCreate(e,t)},Xf.prototype._getDefaultSize=function(e){return Ii(e,"bpmn:SubProcess")?Fi(e)?{width:350,height:200}:{width:100,height:80}:Ii(e,"bpmn:Task")?{width:100,height:80}:Ii(e,"bpmn:Gateway")?{width:50,height:50}:Ii(e,"bpmn:Event")?{width:36,height:36}:Ii(e,"bpmn:Participant")?Fi(e)?{width:600,height:250}:{width:400,height:60}:Ii(e,"bpmn:Lane")?{width:400,height:100}:Ii(e,"bpmn:DataObjectReference")?{width:36,height:50}:Ii(e,"bpmn:DataStoreReference")?{width:50,height:50}:Ii(e,"bpmn:TextAnnotation")?{width:100,height:30}:Ii(e,"bpmn:Group")?{width:300,height:300}:{width:100,height:80}},Xf.prototype.createParticipantShape=function(e){return h(e)||(e={isExpanded:e}),!1!==(e=F({type:"bpmn:Participant"},e||{})).isExpanded&&(e.processRef=this._bpmnFactory.create("bpmn:Process")),this.createShape(e)},Qf.$inject=["modeling","canvas"],Qf.prototype.preExecute=function(e){var t=this._modeling,n=e.elements,i=e.alignment;b(n,function(e){var n={x:0,y:0};i.left?n.x=i.left-e.x:i.right?n.x=i.right-e.width-e.x:i.center?n.x=i.center-Math.round(e.width/2)-e.x:i.top?n.y=i.top-e.y:i.bottom?n.y=i.bottom-e.height-e.y:i.middle&&(n.y=i.middle-Math.round(e.height/2)-e.y),t.moveElements([e],n,e.parent)})},Qf.prototype.postExecute=function(e){},Jf.$inject=["modeling"],Jf.prototype.preExecute=function(e){var t=e.source;if(!t)throw new Error("source required");var n=e.target||t.parent,i=e.shape,r=e.hints||{};i=e.shape=this._modeling.createShape(i,e.position,n,{attach:r.attach}),e.shape=i},Jf.prototype.postExecute=function(e){var t,n,i=e.hints||{};t=e.source,n=e.shape,w(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))},em.$inject=["canvas","layouter"],em.prototype.execute=function(e){var t=e.connection,n=e.source,i=e.target,r=e.parent,o=e.parentIndex,a=e.hints;if(!n||!i)throw new Error("source and target required");if(!r)throw new Error("parent required");return t.source=n,t.target=i,t.waypoints||(t.waypoints=this._layouter.layoutConnection(t,a)),this._canvas.addConnection(t,r,o),t},em.prototype.revert=function(e){var t=e.connection;return this._canvas.removeConnection(t),t.source=null,t.target=null,t};var tm=Math.round;function nm(e){this._modeling=e}function im(e){return!!e.waypoints}nm.$inject=["modeling"],nm.prototype.preExecute=function(e){var t=e.elements,n=e.parent,i=e.parentIndex,r=e.position,o=e.hints,a=this._modeling;b(t,function(e){d(e.x)||(e.x=0),d(e.y)||(e.y=0)});var s=ft(t);b(t,function(e){im(e)&&(e.waypoints=S(e.waypoints,function(e){return{x:tm(e.x-s.x-s.width/2+r.x),y:tm(e.y-s.y-s.height/2+r.y)}})),F(e,{x:tm(e.x-s.x-s.width/2+r.x),y:tm(e.y-s.y-s.height/2+r.y)})});var c=ut(t),p={};b(t,function(e){if(im(e))p[e.id]=d(i)?a.createConnection(p[e.source.id],p[e.target.id],i,e,e.parent||n,o):a.createConnection(p[e.source.id],p[e.target.id],e,e.parent||n,o);else{var t=F({},o);-1===c.indexOf(e)&&(t.autoResize=!1),p[e.id]=d(i)?a.createShape(e,$(e,["x","y","width","height"]),e.parent||n,i,t):a.createShape(e,$(e,["x","y","width","height"]),e.parent||n,t)}}),e.elements=R(p)};var rm=Math.round;function om(e){this._canvas=e}function am(e){om.call(this,e)}om.$inject=["canvas"],om.prototype.execute=function(e){var t=e.shape,n=e.position,i=e.parent,r=e.parentIndex;if(!i)throw new Error("parent required");if(!n)throw new Error("position required");return void 0!==n.width?F(t,n):F(t,{x:n.x-rm(t.width/2),y:n.y-rm(t.height/2)}),this._canvas.addShape(t,i,r),t},om.prototype.revert=function(e){var t=e.shape;return this._canvas.removeShape(t),t},n(am,om),am.$inject=["canvas"];var sm=om.prototype.execute;am.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,sm.call(this,e)};var cm=om.prototype.revert;function pm(e,t){this._canvas=e,this._modeling=t}function um(e,t){this._modeling=e,this._elementRegistry=t}function lm(e,t){this._canvas=e,this._modeling=t}function hm(e){this._modeling=e}am.prototype.revert=function(e){return e.shape.labelTarget=null,cm.call(this,e)},pm.$inject=["canvas","modeling"],pm.prototype.execute=function(e){var t=e.connection,n=t.parent;return e.parent=n,e.parentIndex=wt(n.children,t),e.source=t.source,e.target=t.target,this._canvas.removeConnection(t),t.source=null,t.target=null,t},pm.prototype.revert=function(e){var t=e.connection,n=e.parent,i=e.parentIndex;return t.source=e.source,t.target=e.target,Et(n.children,t,i),this._canvas.addConnection(t,n),t},um.$inject=["modeling","elementRegistry"],um.prototype.postExecute=function(e){var t=this._modeling,n=this._elementRegistry;b(e.elements,function(e){n.get(e.id)&&(e.waypoints?t.removeConnection(e):t.removeShape(e))})},lm.$inject=["canvas","modeling"],lm.prototype.preExecute=function(e){var t=this._modeling,n=e.shape;df(n.incoming,function(e){t.removeConnection(e,{nested:!0})}),df(n.outgoing,function(e){t.removeConnection(e,{nested:!0})}),df(n.children,function(e){e.waypoints?t.removeConnection(e,{nested:!0}):t.removeShape(e,{nested:!0})})},lm.prototype.execute=function(e){var t=this._canvas,n=e.shape,i=n.parent;return e.oldParent=i,e.oldParentIndex=wt(i.children,n),t.removeShape(n),n},lm.prototype.revert=function(e){var t=this._canvas,n=e.shape,i=e.oldParent,r=e.oldParentIndex;return Et(i.children,n,r),t.addShape(n,i),n},hm.$inject=["modeling"];var dm={x:"y",y:"x"};function fm(e,t){this._layouter=e,this._canvas=t}function mm(){}function vm(e,t,n){var i=_m(e),r=Em(i,t),o=i[0];return r.length?r[r.length-1]:Rh(o.original||o,n,t)}function ym(e,t,n){var i=_m(e),r=Em(i,t),o=i[i.length-1];return r.length?r[0]:Rh(o.original||o,n,t)}function gm(e,t,n){var i=_m(e),r=xm(t,n),o=i[0];return Rh(o.original||o,r,t)}function bm(e,t,n){var i=_m(e),r=xm(t,n),o=i[i.length-1];return Rh(o.original||o,r,t)}function xm(e,t){return{x:e.x-t.x,y:e.y-t.y,width:e.width,height:e.height}}function _m(e){var t=e.waypoints;if(!t.length)throw new Error("connection#"+e.id+": no waypoints");return t}function Em(e,t){return g(S(e,wm),function(e){return function(e,t){return"intersect"===fo(t,e,1)}(e,t)})}function wm(e){return e.original||e}function Sm(){this.allShapes={},this.allConnections={},this.enclosedElements={},this.enclosedConnections={},this.topLevel={}}function Cm(e){this._modeling=e}function Tm(e){this._helper=new Cm(e)}function Rm(e){this._modeling=e,this._helper=new Cm(e)}function Am(e){this._modeling=e}function km(e){return e.original||e}function Pm(e,t){this._modeling=e,this._rules=t}function Mm(e){this._modeling=e}function Dm(e){this._modeling=e}function Bm(e){return F({},e)}function Nm(e){switch(e){case"n":return"y";case"w":return"x";case"s":return"y";case"e":return"x"}}function Om(e,t,n){var i=Nm(n);return/e|s/.test(n)?e[i]>t:/n|w/.test(n)?e[i]<t:void 0}function jm(e,t){return-1!==e.indexOf(t)}function Lm(e){this._modeling=e}function Im(e){this._modeling=e}function zm(e,t){return _t(e&&e.attachers,t)}function Fm(e,t,n){if(e){var i=e.attachers;i||(e.attachers=i=[]),Et(i,t,n)}}function $m(){}function Hm(e,t,n){this._eventBus=e,this._elementFactory=t,this._commandStack=n;var i=this;e.on("diagram.init",function(){i.registerHandlers(n)})}hm.prototype.preExecute=function(e){var t=this._modeling,n=e.groups,i=e.axis,r=e.dimension;function o(e,t){e.range.min=Math.min(t[i],e.range.min),e.range.max=Math.max(t[i]+t[r],e.range.max)}function a(e){return e[i]+e[r]/2}function s(e){return e.length-1}function c(e){return e.max-e.min}var p,u,l=n[0],h=s(n),d=n[h],f=0;b(n,function(e,p){var u,l,d;e.elements.length<2?p&&p!==n.length-1&&(o(e,e.elements[0]),f+=c(e.range)):(l=(u=M(e.elements,i))[0],p===h&&(l=u[s(u)]),d=a(l),e.range=null,b(u,function(n){!function(e,n){var r={y:0};r[i]=e-a(n),r[i]&&(r[dm[i]]=0,t.moveElements([n],r,n.parent))}(d,n),null!==e.range?o(e,n):e.range={min:n[i],max:n[i]+n[r]}}),p&&p!==n.length-1&&(f+=c(e.range)))}),u=Math.abs(d.range.min-l.range.max),(p=Math.round((u-f)/(n.length-1)))<n.length-1||b(n,function(e,o){var a,s={};e!==l&&e!==d&&(a=n[o-1],e.range.max=0,b(e.elements,function(n,o){s[dm[i]]=0,s[i]=a.range.max-n[i]+p,e.range.min!==n[i]&&(s[i]+=n[i]-e.range.min),s[i]&&t.moveElements([n],s,n.parent),e.range.max=Math.max(n[i]+n[r],o?e.range.max:0)}))})},hm.prototype.postExecute=function(e){},fm.$inject=["layouter","canvas"],fm.prototype.execute=function(e){var t=e.connection;return F(e,{oldWaypoints:t.waypoints}),t.waypoints=this._layouter.layoutConnection(t,e.hints),t},fm.prototype.revert=function(e){var t=e.connection;return t.waypoints=e.oldWaypoints,t},mm.prototype.execute=function(e){var t=e.connection,n=e.delta,i=e.newParent||t.parent,r=e.newParentIndex,o=t.parent;return e.oldParent=o,e.oldParentIndex=_t(o.children,t),Et(i.children,t,r),t.parent=i,b(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},mm.prototype.revert=function(e){var t=e.connection,n=t.parent,i=e.oldParent,r=e.oldParentIndex,o=e.delta;return _t(n.children,t),Et(i.children,t,r),t.parent=i,b(t.waypoints,function(e){e.x-=o.x,e.y-=o.y,e.original&&(e.original.x-=o.x,e.original.y-=o.y)}),t},Sm.prototype.add=function(e,t){return this.addAll([e],t)},Sm.prototype.addAll=function(e,t){return F(this,function(e,t,n){c(t)&&(t=!0),h(t)&&(n=t,t=!0);var i=yt((n=n||{}).allShapes),r=yt(n.allConnections),o=yt(n.enclosedElements),a=yt(n.enclosedConnections),s=yt(n.topLevel,t&&A(e,function(e){return e.id}));function p(e){s[e.source.id]&&s[e.target.id]&&(s[e.id]=[e]),i[e.source.id]&&i[e.target.id]&&(a[e.id]=o[e.id]=e),r[e.id]=e}return ht(e,function(e){if(o[e.id]=e,!e.waypoints)return i[e.id]=e,b(e.incoming,p),b(e.outgoing,p),e.children;a[e.id]=r[e.id]=e}),{allShapes:i,allConnections:r,topLevel:s,enclosedConnections:a,enclosedElements:o}}(e,!!t,this)),this},Cm.prototype.moveRecursive=function(e,t,n){return e?this.moveClosure(this.getClosure(e),t,n):[]},Cm.prototype.moveClosure=function(e,t,n,i,r){var o=this._modeling,a=e.allShapes,s=e.allConnections,c=e.enclosedConnections,p=e.topLevel,u=!1;r&&r.parent===n&&(u=!0),b(a,function(e){o.moveShape(e,t,p[e.id]&&!u&&n,{recurse:!1,layout:!1})}),b(s,function(e){var i=!!a[e.source.id],r=!!a[e.target.id];c[e.id]&&i&&r?o.moveConnection(e,t,p[e.id]&&!u&&n):o.layoutConnection(e,{connectionStart:i&&gm(e,e.source,t),connectionEnd:r&&bm(e,e.target,t)})})},Cm.prototype.getClosure=function(e){return(new Sm).addAll(e,!0)},Tm.$inject=["modeling"],Tm.prototype.preExecute=function(e){e.closure=this._helper.getClosure(e.shapes)},Tm.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)},Rm.$inject=["modeling"],Rm.prototype.execute=function(e){var t=e.shape,n=e.delta,i=e.newParent||t.parent,r=e.newParentIndex,o=t.parent;return e.oldBounds=$(t,["x","y","width","height"]),e.oldParent=o,e.oldParentIndex=_t(o.children,t),Et(i.children,t,r),F(t,{parent:i,x:t.x+n.x,y:t.y+n.y}),t},Rm.prototype.postExecute=function(e){var t=e.shape,n=e.delta,i=e.hints,r=this._modeling;!1!==i.layout&&(b(t.incoming,function(e){r.layoutConnection(e,{connectionEnd:bm(e,t,n)})}),b(t.outgoing,function(e){r.layoutConnection(e,{connectionStart:gm(e,t,n)})})),!1!==i.recurse&&this.moveChildren(e)},Rm.prototype.revert=function(e){var t=e.shape,n=e.oldParent,i=e.oldParentIndex,r=e.delta;return Et(n.children,t,i),F(t,{parent:n,x:t.x-r.x,y:t.y-r.y}),t},Rm.prototype.moveChildren=function(e){var t=e.delta,n=e.shape;this._helper.moveRecursive(n.children,t,null)},Rm.prototype.getNewParent=function(e){return e.newParent||e.shape.parent},Am.$inject=["modeling"],Am.prototype.execute=function(e){var t=e.newSource,n=e.newTarget,i=e.connection,r=e.dockingOrPoints;if(!t&&!n)throw new Error("newSource or newTarget required");return l(r)&&(e.oldWaypoints=i.waypoints,i.waypoints=r),t&&(e.oldSource=i.source,i.source=t),n&&(e.oldTarget=i.target,i.target=n),i},Am.prototype.postExecute=function(e){var t=e.connection,n=e.newSource,i=e.newTarget,r=e.dockingOrPoints,o=e.hints||{},a={};o.connectionStart&&(a.connectionStart=o.connectionStart),o.connectionEnd&&(a.connectionEnd=o.connectionEnd),!1!==o.layoutConnection&&(!n||i&&"source"!==o.docking||(a.connectionStart=a.connectionStart||km(l(r)?r[0]:r)),!i||n&&"target"!==o.docking||(a.connectionEnd=a.connectionEnd||km(l(r)?r[r.length-1]:r)),o.newWaypoints&&(a.waypoints=o.newWaypoints),this._modeling.layoutConnection(t,a))},Am.prototype.revert=function(e){var t=e.oldSource,n=e.oldTarget,i=e.oldWaypoints,r=e.connection;return t&&(r.source=t),n&&(r.target=n),i&&(r.waypoints=i),r},Pm.$inject=["modeling","rules"],Pm.prototype.preExecute=function(e){var t,n=this,i=this._modeling,r=this._rules,o=e.oldShape,a=e.newData,s=e.hints||{};function c(e,t,n){return r.allowed("connection.reconnect",{connection:n,source:e,target:t})}var p,u={x:a.x,y:a.y},l={x:o.x,y:o.y,width:o.width,height:o.height};t=e.newShape=e.newShape||n.createShape(a,u,o.parent,s),o.host&&i.updateAttachment(t,o.host),!1!==s.moveChildren&&(p=o.children.slice(),i.moveElements(p,{x:0,y:0},t,s));var h=o.incoming.slice(),d=o.outgoing.slice();b(h,function(e){c(e.source,t,e)&&n.reconnectEnd(e,t,ym(e,t,l),s)}),b(d,function(e){var i=e.target;c(t,i,e)&&n.reconnectStart(e,t,vm(e,t,l),s)})},Pm.prototype.postExecute=function(e){var t=e.oldShape;this._modeling.removeShape(t)},Pm.prototype.execute=function(e){},Pm.prototype.revert=function(e){},Pm.prototype.createShape=function(e,t,n,i){return this._modeling.createShape(e,t,n,i)},Pm.prototype.reconnectStart=function(e,t,n,i){this._modeling.reconnectStart(e,t,n,i)},Pm.prototype.reconnectEnd=function(e,t,n,i){this._modeling.reconnectEnd(e,t,n,i)},Mm.$inject=["modeling"],Mm.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},F(t,{width:n.width,height:n.height,x:n.x,y:n.y}),t},Mm.prototype.postExecute=function(e){var t=this._modeling,n=e.shape,i=e.oldBounds;!1!==(e.hints||{}).layout&&(b(n.incoming,function(e){t.layoutConnection(e,{connectionEnd:ym(e,n,i)})}),b(n.outgoing,function(e){t.layoutConnection(e,{connectionStart:vm(e,n,i)})}))},Mm.prototype.revert=function(e){var t=e.shape,n=e.oldBounds;return F(t,{width:n.width,height:n.height,x:n.x,y:n.y}),t},Dm.$inject=["modeling"],Dm.prototype.preExecute=function(e){var t=e.delta,n=e.direction,i=e.movingShapes,r=e.resizingShapes,o=e.start,a={};this.moveShapes(i,t),b(r,function(e){a[e.id]=function(e){return{x:e.x,y:e.y,height:e.height,width:e.width}}(e)}),this.resizeShapes(r,t,n),this.updateConnectionWaypoints(function(e,t){var n=[];return b(e.concat(t),function(i){var r=i.incoming,o=i.outgoing;b(r.concat(o),function(i){var r=i.source,o=i.target;(Rf(e,r)||Rf(e,o)||Rf(t,r)||Rf(t,o))&&(Rf(n,i)||n.push(i))})}),n}(i,r),t,n,o,i,r,a)},Dm.prototype.execute=function(){},Dm.prototype.revert=function(){},Dm.prototype.moveShapes=function(e,t){var n=this;b(e,function(e){n._modeling.moveShape(e,t,null,{autoResize:!1,layout:!1,recurse:!1})})},Dm.prototype.resizeShapes=function(e,t,n){var i=this;b(e,function(e){var r=function(e,t,n){var i=e.x,r=e.y,o=e.width,a=e.height,s=n.x,c=n.y;switch(t){case"n":return{x:i,y:r+c,width:o,height:a-c};case"s":return{x:i,y:r,width:o,height:a+c};case"w":return{x:i+s,y:r,width:o-s,height:a};case"e":return{x:i,y:r,width:o+s,height:a};default:throw new Error("unknown direction: "+t)}}(e,n,t);i._modeling.resizeShape(e,r,null,{attachSupport:!1,autoResize:!1,layout:!1})})},Dm.prototype.updateConnectionWaypoints=function(e,t,n,i,r,o,a){var s=this,c=r.concat(o);b(e,function(e){var p=e.source,u=e.target,l=function(e){return S(e.waypoints,function(e){return(e=Bm(e)).original&&(e.original=Bm(e.original)),e})}(e),h=Nm(n),d={labelBehavior:!1};jm(c,p)&&jm(c,u)?(l=S(l,function(e){return Om(e,i,n)&&(e[h]=e[h]+t[h]),e.original&&Om(e.original,i,n)&&(e.original[h]=e.original[h]+t[h]),e}),s._modeling.updateWaypoints(e,l,{labelBehavior:!1})):(jm(c,p)||jm(c,u))&&(jm(r,p)?d.connectionStart=gm(e,p,t):jm(r,u)?d.connectionEnd=bm(e,u,t):jm(o,p)?d.connectionStart=vm(e,p,a[p.id]):jm(o,u)&&(d.connectionEnd=ym(e,u,a[u.id])),s._modeling.layoutConnection(e,d))})},Lm.$inject=["modeling"],Lm.prototype.execute=function(e){var t=e.shape,n=t.children;e.oldChildrenVisibility=function e(t){var n={};b(t,function(t){n[t.id]=t.hidden,t.children&&(n=F({},n,e(t.children)))});return n}(n),t.collapsed=!t.collapsed;var i=function e(t,n){var i=[];b(t,function(t){t.hidden=n,i=i.concat(t),t.children&&(i=i.concat(e(t.children,t.collapsed||n)))});return i}(n,t.collapsed);return[t].concat(i)},Lm.prototype.revert=function(e){var t=e.shape,n=e.oldChildrenVisibility,i=function e(t,n){var i=[];b(t,function(t){t.hidden=n[t.id],i=i.concat(t),t.children&&(i=i.concat(e(t.children,n)))});return i}(t.children,n);return t.collapsed=!t.collapsed,[t].concat(i)},Im.$inject=["modeling"],Im.prototype.execute=function(e){var t=e.shape,n=e.newHost,i=t.host;return e.oldHost=i,e.attacherIdx=zm(i,t),Fm(n,t),t.host=n,t},Im.prototype.revert=function(e){var t=e.shape,n=e.newHost,i=e.oldHost,r=e.attacherIdx;return t.host=i,zm(n,t),Fm(i,t,r),t},$m.prototype.execute=function(e){var t=e.connection,n=e.newWaypoints;return e.oldWaypoints=t.waypoints,t.waypoints=n,t},$m.prototype.revert=function(e){var t=e.connection,n=e.oldWaypoints;return t.waypoints=n,t},Hm.$inject=["eventBus","elementFactory","commandStack"],Hm.prototype.getHandlers=function(){return{"shape.append":Jf,"shape.create":om,"shape.delete":lm,"shape.move":Rm,"shape.resize":Mm,"shape.replace":Pm,"shape.toggleCollapse":Lm,spaceTool:Dm,"label.create":am,"connection.create":em,"connection.delete":pm,"connection.move":mm,"connection.layout":fm,"connection.updateWaypoints":$m,"connection.reconnect":Am,"elements.create":nm,"elements.move":Tm,"elements.delete":um,"elements.distribute":hm,"elements.align":Qf,"element.updateAttachment":Im}},Hm.prototype.registerHandlers=function(e){b(this.getHandlers(),function(t,n){e.registerHandler(n,t)})},Hm.prototype.moveShape=function(e,t,n,i,r){"object"==typeof i&&(r=i,i=null);var o={shape:e,delta:t,newParent:n,newParentIndex:i,hints:r||{}};this._commandStack.execute("shape.move",o)},Hm.prototype.updateAttachment=function(e,t){var n={shape:e,newHost:t};this._commandStack.execute("element.updateAttachment",n)},Hm.prototype.moveElements=function(e,t,n,i){var r,o=(i=i||{}).attach,a=n;!0===o?(r=n,a=n.parent):!1===o&&(r=null);var s={shapes:e,delta:t,newParent:a,newHost:r,hints:i};this._commandStack.execute("elements.move",s)},Hm.prototype.moveConnection=function(e,t,n,i,r){"object"==typeof i&&(r=i,i=void 0);var o={connection:e,delta:t,newParent:n,newParentIndex:i,hints:r||{}};this._commandStack.execute("connection.move",o)},Hm.prototype.layoutConnection=function(e,t){var n={connection:e,hints:t||{}};this._commandStack.execute("connection.layout",n)},Hm.prototype.createConnection=function(e,t,n,i,r,o){"object"==typeof n&&(o=r,r=i,i=n,n=void 0);var a={source:e,target:t,parent:r,parentIndex:n,connection:i=this._create("connection",i),hints:o};return this._commandStack.execute("connection.create",a),a.connection},Hm.prototype.createShape=function(e,t,n,i,r){"number"!=typeof i&&(r=i,i=void 0);var o,a,s=(r=r||{}).attach;e=this._create("shape",e),s?(o=n.parent,a=n):o=n;var c={position:t,shape:e,parent:o,parentIndex:i,host:a,hints:r};return this._commandStack.execute("shape.create",c),c.shape},Hm.prototype.createElements=function(e,t,n,i,r){l(e)||(e=[e]),"number"!=typeof i&&(r=i,i=void 0);var o={position:t,elements:e,parent:n,parentIndex:i,hints:r=r||{}};return this._commandStack.execute("elements.create",o),o.elements},Hm.prototype.createLabel=function(e,t,n,i){n=this._create("label",n);var r={labelTarget:e,position:t,parent:i||e.parent,shape:n};return this._commandStack.execute("label.create",r),r.shape},Hm.prototype.appendShape=function(e,t,n,i,r){r=r||{};var o={source:e,position:n,target:i,shape:t=this._create("shape",t),connection:r.connection,connectionParent:r.connectionParent,hints:r};return this._commandStack.execute("shape.append",o),o.shape},Hm.prototype.removeElements=function(e){var t={elements:e};this._commandStack.execute("elements.delete",t)},Hm.prototype.distributeElements=function(e,t,n){var i={groups:e,axis:t,dimension:n};this._commandStack.execute("elements.distribute",i)},Hm.prototype.removeShape=function(e,t){var n={shape:e,hints:t||{}};this._commandStack.execute("shape.delete",n)},Hm.prototype.removeConnection=function(e,t){var n={connection:e,hints:t||{}};this._commandStack.execute("connection.delete",n)},Hm.prototype.replaceShape=function(e,t,n){var i={oldShape:e,newData:t,hints:n||{}};return this._commandStack.execute("shape.replace",i),i.newShape},Hm.prototype.alignElements=function(e,t){var n={elements:e,alignment:t};this._commandStack.execute("elements.align",n)},Hm.prototype.resizeShape=function(e,t,n,i){var r={shape:e,newBounds:t,minBounds:n,hints:i};this._commandStack.execute("shape.resize",r)},Hm.prototype.createSpace=function(e,t,n,i,r){var o={delta:n,direction:i,movingShapes:e,resizingShapes:t,start:r};this._commandStack.execute("spaceTool",o)},Hm.prototype.updateWaypoints=function(e,t,n){var i={connection:e,newWaypoints:t,hints:n||{}};this._commandStack.execute("connection.updateWaypoints",i)},Hm.prototype.reconnect=function(e,t,n,i,r){var o={connection:e,newSource:t,newTarget:n,dockingOrPoints:i,hints:r||{}};this._commandStack.execute("connection.reconnect",o)},Hm.prototype.reconnectStart=function(e,t,n,i){i||(i={}),this.reconnect(e,t,e.target,n,F(i,{docking:"source"}))},Hm.prototype.reconnectEnd=function(e,t,n,i){i||(i={}),this.reconnect(e,e.source,t,n,F(i,{docking:"target"}))},Hm.prototype.connect=function(e,t,n,i){return this.createConnection(e,t,n||{},e.parent,i)},Hm.prototype._create=function(e,t){return t instanceof Ht?t:this._elementFactory.create(e,t)},Hm.prototype.toggleCollapse=function(e,t){var n={shape:e,hints:t||{}};this._commandStack.execute("shape.toggleCollapse",n)};var Gm="id",Wm="di",Vm={width:0,height:0};function Um(e,t,n,i,r){this._elementRegistry=e,this._moddle=t,this._translate=n,this._modeling=i,this._textRenderer=r}function qm(e,t){return Gm in e&&e[Gm]!==t[Gm]}function Km(e,t){b(t,function(t,n){n!==Wm?e.set(n,t):e.di&&function(e,t){b(t,function(t,n){e.set(n,t)})}(e.di,t)})}Um.$inject=["elementRegistry","moddle","translate","modeling","textRenderer"],Um.prototype.execute=function(e){var t=e.element,n=[t],i=this._translate;if(!t)throw new Error(i("element required"));var r=this._elementRegistry,o=this._moddle.ids,a=t.businessObject,s=function(e){var t=F({},e);return Ym.forEach(function(n){n in e&&(t[n]=zi(t[n]))}),t}(e.properties),c=e.oldProperties||function(e,t){return _(C(t),function(n,i){return n[i]=i!==Wm?e.get(i):function(e,t){return _(t,function(t,n){return t[n]=e.get(n),t},{})}(e.di,C(t.di)),n},{})}(a,s);return qm(s,a)&&(o.unclaim(a[Gm]),r.updateId(t,s[Gm]),o.claim(s[Gm],a)),"default"in s&&(s.default&&n.push(r.get(s.default.id)),a.default&&n.push(r.get(a.default.id))),Km(a,s),e.oldProperties=c,e.changed=n,n},Um.prototype.postExecute=function(e){var t=e.element.label,n=t&&zi(t).name;if(n){var i=this._textRenderer.getExternalLabelBounds(t,n);this._modeling.resizeShape(t,i,Vm)}},Um.prototype.revert=function(e){var t=e.element,n=e.properties,i=e.oldProperties,r=t.businessObject,o=this._elementRegistry,a=this._moddle.ids;return Km(r,i),qm(n,r)&&(a.unclaim(n[Gm]),o.updateId(t,i[Gm]),a.claim(i[Gm],r)),e.changed};var Ym=["default"];function Xm(e,t){this._canvas=e,this._modeling=t}function Zm(e,t){this._modeling=e,this._spaceTool=t}function Qm(e,t){this._modeling=e,this._translate=t}function Jm(e,t){this._modeling=e,this._spaceTool=t}Xm.$inject=["canvas","modeling"],Xm.prototype.execute=function(e){var t=this._canvas,n=e.newRoot,i=n.businessObject,r=t.getRootElement(),o=r.businessObject,a=o.$parent,s=o.di;t.setRootElement(n,!0),Et(a.rootElements,i),i.$parent=a,_t(a.rootElements,o),o.$parent=null,o.di=null,s.bpmnElement=i,i.di=s,e.oldRoot=r},Xm.prototype.revert=function(e){var t=this._canvas,n=e.newRoot.businessObject,i=e.oldRoot,r=i.businessObject,o=n.$parent,a=n.di;t.setRootElement(i,!0),_t(o.rootElements,n),n.$parent=null,Et(o.rootElements,r),r.$parent=o,n.di=null,a.bpmnElement=r,r.di=a},Zm.$inject=["modeling","spaceTool"],Zm.prototype.preExecute=function(e){var t=this._spaceTool,n=this._modeling,i=e.shape,r=e.location,o=su(i),a=o===i,s=a?i:i.parent;au(s).length||n.createShape({type:"bpmn:Lane"},{x:i.x+30,y:i.y,width:i.width-30,height:i.height},s);var c=[];ht(o,function(e){return c.push(e),e.label&&c.push(e.label),e===i?[]:g(e.children,function(e){return e!==i})});var p="top"===r?-120:120,u="top"===r?i.y:i.y+i.height,l=u+("top"===r?10:-10),h="top"===r?"n":"s",d=t.calculateAdjustments(c,"y",p,l);t.makeSpace(d.movingShapes,d.resizingShapes,{x:0,y:p},h,l),e.newLane=n.createShape({type:"bpmn:Lane"},{x:i.x+(a?30:0),y:u-("top"===r?120:0),width:i.width-(a?30:0),height:120},s)},Qm.$inject=["modeling","translate"],Qm.prototype.preExecute=function(e){var t=this._modeling,n=this._translate,i=e.shape,r=e.count,o=au(i),a=o.length;if(a>r)throw new Error(n("more than {count} child lanes",{count:r}));var s,c,p,u,l,h=Math.round(i.height/r);for(l=0;l<r;l++)s=i.y+l*h,c=l===r-1?i.height-h*l:h,p={x:i.x+30,y:s,width:i.width-30,height:c},l<a?t.resizeShape(o[l],p):(u={type:"bpmn:Lane"},t.createShape(u,p,i))},Jm.$inject=["modeling","spaceTool"],Jm.prototype.preExecute=function(e){var t=e.shape,n=e.newBounds;!1!==e.balanced?this.resizeBalanced(t,n):this.resizeSpace(t,n)},Jm.prototype.resizeBalanced=function(e,t){var n=this._modeling,i=cu(e,t);n.resizeShape(e,t),i.forEach(function(e){n.resizeShape(e.shape,e.newBounds)})},Jm.prototype.resizeSpace=function(e,t){var n,i,r,o,a,s=this._spaceTool,c=uo(e),p=Qp(uo(t),c),u=su(e),l=[],h=[];ht(u,function(e){return l.push(e),(Ii(e,"bpmn:Lane")||Ii(e,"bpmn:Participant"))&&h.push(e),e.children}),(p.bottom||p.top)&&(n=p.bottom||p.top,i=e.y+(p.bottom?e.height:0)+(p.bottom?-10:10),r=p.bottom?"s":"n",o=p.top>0||p.bottom<0?-n:n,a=s.calculateAdjustments(l,"y",o,i),s.makeSpace(a.movingShapes,a.resizingShapes,{x:0,y:n},r)),(p.left||p.right)&&(n=p.right||p.left,i=e.x+(p.right?e.width:0)+(p.right?-10:100),r=p.right?"e":"w",o=p.left>0||p.right<0?-n:n,a=s.calculateAdjustments(h,"x",o,i),s.makeSpace(a.movingShapes,a.resizingShapes,{x:n,y:0},r))};function ev(e){this._elementRegistry=e}function tv(e){this._moddle=e}ev.$inject=["elementRegistry"],ev.prototype.computeUpdates=function(e,t){var n=[],i=[],r={},o=[];function a(e){-1===n.indexOf(e)&&(o.push(e),n.push(e))}function s(e){return e.parent?function(e){var t=su(e);return r[t.id]||(r[t.id]=ou(t)),r[t.id]}(e).filter(function(t){return n=e,i=uo(t),r=n.x+n.width/2,o=n.y+n.height/2,r>i.left&&r<i.right&&o>i.top&&o<i.bottom;var n,i,r,o}).map(function(e){return e.businessObject}):[]}return t.forEach(function(e){var t=su(e);t&&-1===n.indexOf(t)&&(t.children.filter(function(e){return Ii(e,"bpmn:FlowNode")}).forEach(a),n.push(t))}),e.forEach(a),o.forEach(function(e){var t=e.businessObject,n=t.get("lanes").slice(),r=s(e);i.push({flowNode:t,remove:n,add:r})}),t.forEach(function(e){var t=e.businessObject;e.parent||t.get("flowNodeRef").forEach(function(e){i.push({flowNode:e,remove:[t],add:[]})})}),i},ev.prototype.execute=function(e){var t=e.updates;t||(t=e.updates=this.computeUpdates(e.flowNodeShapes,e.laneShapes)),t.forEach(function(e){var t=e.flowNode,n=t.get("lanes");e.remove.forEach(function(e){_t(n,e),_t(e.get("flowNodeRef"),t)}),e.add.forEach(function(e){Et(n,e),Et(e.get("flowNodeRef"),t)})})},ev.prototype.revert=function(e){e.updates.forEach(function(e){var t=e.flowNode,n=t.get("lanes");e.add.forEach(function(e){_t(n,e),_t(e.get("flowNodeRef"),t)}),e.remove.forEach(function(e){Et(n,e),Et(e.get("flowNodeRef"),t)})})},tv.$inject=["moddle"],tv.prototype.execute=function(e){var t=this._moddle.ids,n=e.id,i=e.element;e.claiming?t.claim(n,i):t.unclaim(n)},tv.prototype.revert=function(e){var t=this._moddle.ids,n=e.id,i=e.element;e.claiming?t.unclaim(n):t.claim(n,i)};var nv={fill:void 0,stroke:void 0};function iv(e){this._commandStack=e}iv.$inject=["commandStack"],iv.prototype.postExecute=function(e){var t=e.elements,n=e.colors||nv,i=this,r={};"fill"in n&&F(r,{fill:n.fill}),"stroke"in n&&F(r,{stroke:n.stroke}),b(t,function(e){i._commandStack.execute("element.updateProperties",{element:e,properties:{di:r}})})};var rv={width:0,height:0};function ov(e,t){function n(e,t){var n=e.label||e,i=e.labelTarget||e;return function(e,t,n){var i=e.businessObject,r=Gi(i);r&&("categoryValueRef"===r?i.categoryValueRef.value=t:i[r]=t)}(n,t),[n,i]}this.preExecute=function(t){var n=t.element,i=n.businessObject,r=t.newLabel;if(!wr(n)&&br(n)&&!xr(n)&&!av(r)){var o=Er(n);o={x:o.x,y:o.y+7},e.createLabel(n,o,{id:i.id+"_label",businessObject:i})}},this.execute=function(e){return e.oldLabel=Wi(e.element),n(e.element,e.newLabel)},this.revert=function(e){return n(e.element,e.oldLabel)},this.postExecute=function(n){var i=n.element,r=i.label||i,o=n.newLabel,a=n.newBounds,s=n.hints||{};if(wr(r)||Ii(r,"bpmn:TextAnnotation"))if(wr(r)&&av(o))!1!==s.removeShape&&e.removeShape(r,{unsetLabel:!1});else{var c=Wi(r);void 0===a&&(a=t.getExternalLabelBounds(r,c)),a&&e.resizeShape(r,a,rv)}}}function av(e){return!e||!e.trim()}function sv(e,t,n,i){Hm.call(this,e,t,n),this._bpmnRules=i}function cv(){}ov.$inject=["modeling","textRenderer"],n(sv,Hm),sv.$inject=["eventBus","elementFactory","commandStack","bpmnRules"],sv.prototype.getHandlers=function(){var e=Hm.prototype.getHandlers.call(this);return e["element.updateProperties"]=Um,e["canvas.updateRoot"]=Xm,e["lane.add"]=Zm,e["lane.resize"]=Jm,e["lane.split"]=Qm,e["lane.updateRefs"]=ev,e["id.updateClaim"]=tv,e["element.setColor"]=iv,e["element.updateLabel"]=ov,e},sv.prototype.updateLabel=function(e,t,n,i){this._commandStack.execute("element.updateLabel",{element:e,newLabel:t,newBounds:n,hints:i||{}})},sv.prototype.connect=function(e,t,n,i){var r=this._bpmnRules;if(n||(n=r.canConnect(e,t)),n)return this.createConnection(e,t,n,e.parent,i)},sv.prototype.updateProperties=function(e,t){this._commandStack.execute("element.updateProperties",{element:e,properties:t})},sv.prototype.resizeLane=function(e,t,n){this._commandStack.execute("lane.resize",{shape:e,newBounds:t,balanced:n})},sv.prototype.addLane=function(e,t){var n={shape:e,location:t};return this._commandStack.execute("lane.add",n),n.newLane},sv.prototype.splitLane=function(e,t){this._commandStack.execute("lane.split",{shape:e,count:t})},sv.prototype.makeCollaboration=function(){var e=this._create("root",{type:"bpmn:Collaboration"}),t={newRoot:e};return this._commandStack.execute("canvas.updateRoot",t),e},sv.prototype.updateLaneRefs=function(e,t){this._commandStack.execute("lane.updateRefs",{flowNodeShapes:e,laneShapes:t})},sv.prototype.makeProcess=function(){var e={newRoot:this._create("root",{type:"bpmn:Process"})};this._commandStack.execute("canvas.updateRoot",e)},sv.prototype.claimId=function(e,t){this._commandStack.execute("id.updateClaim",{id:e,element:t,claiming:!0})},sv.prototype.unclaimId=function(e,t){this._commandStack.execute("id.updateClaim",{id:e,element:t})},sv.prototype.setColor=function(e,t){e.length||(e=[e]),this._commandStack.execute("element.setColor",{elements:e,colors:t})},cv.prototype.layoutConnection=function(e,t){return[(t=t||{}).connectionStart||ho(t.source||e.source),t.connectionEnd||ho(t.target||e.target)]};var pv=20,uv=5,lv=Math.round,hv=20,dv={"h:h":20,"v:v":20,"h:v":-10,"v:h":-10};function fv(e,t,n){var i,r,o,a=fo(t,e,uv),s=n.split(":")[0],c=lv((t.x-e.x)/2+e.x),p=lv((t.y-e.y)/2+e.y),u=(o=a,{t:/top/,r:/right/,b:/bottom/,l:/left/,h:/left|right/,v:/top|bottom/}[s].test(o)),l=/h|r|l/.test(s),h=!1;return u?(i=l?{x:c,y:e.y}:{x:e.x,y:p},r=l?"h:h":"v:v"):(r=l?"h:v":"v:h",function(e,t){return!{t:/top/,r:/right/,b:/bottom/,l:/left/,h:/./,v:/./}[t].test(e)}(a,s)?l?(h=p===e.y,i={x:e.x+pv*(/l/.test(s)?-1:1),y:h?p+pv:p}):i={x:(h=c===e.x)?c+pv:c,y:e.y+pv*(/t/.test(s)?-1:1)}:i={x:c,y:p}),{waypoints:vv(e,i,r).concat(i),directions:r,turnNextDirections:h}}function mv(e){return e.split(":").reverse().join(":")}function vv(e,t,n){if(!function(e){return e&&/^h|v|t|r|b|l:h|v|t|r|b|l$/.test(e)}(n=n||"h:h"))throw new Error("unknown directions: <"+n+">: must be specified as <start>:<end> with start/end in { h,v,t,r,b,l }");if(_v(n)){var i=function(e,t,n){return fv(e,t,n)}(e,t,n),r=function(e,t,n){var i=fv(t,e,mv(n));return{waypoints:i.waypoints.slice().reverse(),directions:mv(i.directions),turnNextDirections:i.turnNextDirections}}(e,t,n),o=function(e,t){var n=e.directions.split(":")[1],i=t.directions.split(":")[0];e.turnNextDirections&&(n="h"==n?"v":"h"),t.turnNextDirections&&(i="h"==i?"v":"h");var r=n+":"+i;return{waypoints:vv(e.waypoints[e.waypoints.length-1],t.waypoints[0],r),directions:r}}(i,r);return[].concat(i.waypoints,o.waypoints,r.waypoints)}return function(e,t,n){var i=lv((t.x-e.x)/2+e.x),r=lv((t.y-e.y)/2+e.y);if("h:v"===n)return[{x:t.x,y:e.y}];if("v:h"===n)return[{x:e.x,y:t.y}];if("h:h"===n)return[{x:i,y:e.y},{x:i,y:t.y}];if("v:v"===n)return[{x:e.x,y:r},{x:t.x,y:r}];throw new Error("invalid directions: can only handle varians of [hv]:[hv]")}(e,t,n)}function yv(e,t,n,i,r){var o=x(r&&r.preferredLayouts||[],"straight")[0]||"h:h",a=fo(e,t,dv[o]||0),s=function(e,t){if(_v(t))return t;switch(e){case"intersect":return"t:t";case"top":case"bottom":return"v:v";case"left":case"right":return"h:h";default:return t}}(a,o);n=n||ho(e),i=i||ho(t);var c=s.split(":");return function(e,t,n){var i=vv(e,t,n);return i.unshift(e),i.push(t),wv(i)}(Ev(n,e,c[0],function(e){return{top:"bottom",bottom:"top",left:"right",right:"left","top-left":"bottom-right","bottom-right":"top-left","top-right":"bottom-left","bottom-left":"top-right"}[e]}(a)),Ev(i,t,c[1],a),s)}function gv(e,t,n,i,r,o){var a;return l(n)&&(r=n,o=i,n=ho(e),i=ho(t)),r=r||[],(a=-1!==(o=F({preferredLayouts:[]},o)).preferredLayouts.indexOf("straight")&&function(e,t,n,i,r){var o,a,s={};if(a=fo(e,t),!/^(top|bottom|left|right)$/.test(a))return null;/top|bottom/.test(a)&&(o="x");/left|right/.test(a)&&(o="y");return"target"===r.preserveDocking?bv(o,i,e)?(s[o]=i[o],[{x:void 0!==s.x?s.x:n.x,y:void 0!==s.y?s.y:n.y,original:{x:void 0!==s.x?s.x:n.x,y:void 0!==s.y?s.y:n.y}},{x:i.x,y:i.y}]):null:bv(o,n,t)?(s[o]=n[o],[{x:n.x,y:n.y},{x:void 0!==s.x?s.x:i.x,y:void 0!==s.y?s.y:i.y,original:{x:void 0!==s.x?s.x:i.x,y:void 0!==s.y?s.y:i.y}}]):null}(e,t,n,i,o))?a:(a=o.connectionEnd&&function(e,t,n,i){var r=i.slice().reverse();return(r=xv(e,t,n,r))?r.reverse():null}(t,e,i,r))?a:(a=o.connectionStart&&xv(e,t,n,r))||(!o.connectionStart&&!o.connectionEnd&&r&&r.length?r:yv(e,t,n,i,o))}function bv(e,t,n){return function(e,t,n){return e>=t&&e<=n}(t[e],n[e],n[e]+n[{x:"width",y:"height"}[e]])}function xv(e,t,n,i){if(function(e){return e.length<3||!(e.length>4)&&!!y(e,function(t,n){var i=e[n-1];return i&&Sr(t,i)<3})}(i))return null;var r,o=i[0],a=i.slice();return a[0]=n,a[1]=function(e,t,n){switch(Rr(t,e)){case"v":return{x:n.x,y:e.y};case"h":return{x:e.x,y:n.y}}return{x:e.x,y:e.y}}(a[1],o,n),(r=function(e,t,n){var i;for(i=e.length-2;0!==i;i--)if(Ar(e[i],t,hv)||Ar(e[i],n,hv))return e.slice(i);return e}(a,e,t))!==a&&(a=xv(e,t,n,r)),a&&Rr(a)?null:a}function _v(e){return e&&/t|r|b|l/.test(e)}function Ev(e,t,n,i){if("h"===n&&(n=/left/.test(i)?"l":"r"),"v"===n&&(n=/top/.test(i)?"t":"b"),"t"===n)return{original:e,x:e.x,y:t.y};if("r"===n)return{original:e,x:t.x+t.width,y:e.y};if("b"===n)return{original:e,x:e.x,y:t.y+t.height};if("l"===n)return{original:e,x:t.x,y:e.y};throw new Error("unexpected dockingDirection: <"+n+">")}function wv(e){return e.reduce(function(t,n,i){return Cr(t[t.length-1],e[i+1],n,0)||t.push(n),t},[])}var Sv=-10,Cv=40,Tv={top:"bottom","top-right":"bottom-left","top-left":"bottom-right",right:"left",bottom:"top","bottom-right":"top-left","bottom-left":"top-right",left:"right"},Rv={top:"t",right:"r",bottom:"b",left:"l"};function Av(){}function kv(e,t){return Ii(t,"bpmn:Participant")?"source":Ii(e,"bpmn:Participant")?"target":Bv(t)?"source":Bv(e)?"target":Ii(t,"bpmn:Event")?"target":Ii(e,"bpmn:Event")?"source":null}function Pv(e){return Bv(e)?"target":"source"}function Mv(e,t){return e?e.original||e:ho(t)}function Dv(e,t){return Ii(t,"bpmn:Activity")&&Ii(e,"bpmn:BoundaryEvent")&&t.businessObject.isForCompensation}function Bv(e){return Ii(e,"bpmn:SubProcess")&&Fi(e)}function Nv(e,t){return e===t}function Ov(e){var t=/right|left/.exec(e);return t&&t[0]}function jv(e){var t=/top|bottom/.exec(e);return t&&t[0]}function Lv(e){return"right"===e||"left"===e}function Iv(e,t){var n=t.waypoints,i=n&&n.length&&fo(n[0],e);return"top"===i?["t:r"]:"right"===i?["r:b"]:"left"===i?["l:t"]:["b:l"]}function zv(e,t,n){var i,r,o=ho(e),a=ho(t),s=(r=(i=e).host,fo(ho(i),r,Sv)),c=Nv(e.host,t),p=-1!==["top","right","bottom","left"].indexOf(s),u=fo(a,o,{x:e.width/2+t.width/2,y:e.height/2+t.height/2});return c?function(e,t,n,i,r){var o,a=t?e:jv(e),s=Rv[a];o=t?Lv(e)?Fv("y",n,i,r)?"h":"b":Fv("x",n,i,r)?"v":"l":"v";return[s+":"+o]}(s,p,e,t,n):[function(e,t,n){if(n)return Rv[e];if(Nv(jv(e),jv(t))||(i=Ov(e),r=Ov(t),Tv[i]===r))return Rv[jv(e)];var i,r;return Rv[Ov(e)]}(s,u,p)+":"+function(e,t,n){if(n)return Lv(e)?(i=t,r=Ov(e),o=Tv[r],-1!==i.indexOf(o)||Nv(e,t)?"h":"v"):function(e,t){var n=jv(e),i=Tv[n];return-1!==t.indexOf(i)}(e,t)||Nv(e,t)?"v":"h";var i,r,o;return Lv(t)||Nv(jv(e),jv(t))&&Ov(t)?"h":"v"}(s,u,p)]}function Fv(e,t,n,i){var r=Cv;return!($v(e,i,n,r)||$v(e,i,{x:n.x+n.width,y:n.y+n.height},r)||$v(e,i,ho(t),r))}function $v(e,t,n,i){return Math.abs(t[e]-n[e])<i}function Hv(e){return F({original:e.point.original||e.point},e.actual)}function Gv(e,t){this._elementRegistry=e,this._graphicsFactory=t}n(Av,cv),Av.prototype.layoutConnection=function(e,t){t||(t={});var n,i,r=t.source||e.source,o=t.target||e.target,a=t.waypoints||e.waypoints,s=t.connectionStart,c=t.connectionEnd;return s||(s=Mv(a&&a[0],r)),c||(c=Mv(a&&a[a.length-1],o)),(Ii(e,"bpmn:Association")||Ii(e,"bpmn:DataAssociation"))&&a&&!Dv(r,o)?[].concat([s],a.slice(1,-1),[c]):(Ii(e,"bpmn:MessageFlow")?n=function(e,t){return{preferredLayouts:["straight","v:v"],preserveDocking:kv(e,t)}}(r,o):(Ii(e,"bpmn:SequenceFlow")||Dv(r,o))&&(n=r===o?{preferredLayouts:Iv(r,e)}:Ii(r,"bpmn:BoundaryEvent")?{preferredLayouts:zv(r,o,c)}:Bv(r)||Bv(o)?function(e){return{preferredLayouts:["straight","h:h"],preserveDocking:Pv(e)}}(r):Ii(r,"bpmn:Gateway")?{preferredLayouts:["v:h"]}:Ii(o,"bpmn:Gateway")?{preferredLayouts:["h:v"]}:{preferredLayouts:["h:h"]}),n&&(i=wv(gv(r,o,s,c,a,n=F(n,t)))),i||[s,c])},Gv.$inject=["elementRegistry","graphicsFactory"],Gv.prototype.getCroppedWaypoints=function(e,t,n){t=t||e.source,n=n||e.target;var i=this.getDockingPoint(e,t,!0),r=this.getDockingPoint(e,n),o=e.waypoints.slice(i.idx+1,r.idx);return o.unshift(Hv(i)),o.push(Hv(r)),o},Gv.prototype.getDockingPoint=function(e,t,n){var i,r,o=e.waypoints;return{point:r=o[i=n?0:o.length-1],actual:this._getIntersection(t,e,n)||r,idx:i}},Gv.prototype._getIntersection=function(e,t,n){return mo(this._getShapePath(e),this._getConnectionPath(t),n)},Gv.prototype._getConnectionPath=function(e){return this._graphicsFactory.getConnectionPath(e)},Gv.prototype._getShapePath=function(e){return this._graphicsFactory.getShapePath(e)},Gv.prototype._getGfx=function(e){return this._elementRegistry.getGraphics(e)};var Wv={__init__:["modeling","bpmnUpdater"],__depends__:[gd,Qd,tf,of,Bp,sf,hf,gf,Sf,Fo,Ju,Uf],bpmnFactory:["type",qf],bpmnUpdater:["type",Kf],elementFactory:["type",Xf],modeling:["type",sv],layouter:["type",Av],connectionDocking:["type",Gv]},Vv=500,Uv=1250,qv=1500,Kv=Math.round;function Yv(e,t,n,i,r){function o(e,t,n,i){return r.allowed("elements.move",{shapes:e,delta:t,position:n,target:i})}function a(e,n,i,r){if(h(i)&&(r=i,i=!1),!n.waypoints&&n.parent){var o=function(e){return{x:e.x+Kv(e.width/2),y:e.y+Kv(e.height/2)}}(n);return t.init(e,o,"shape.move",{cursor:"grabbing",autoActivate:i,data:{shape:n,context:r||{}}}),!0}}e.on("shape.move.start",qv,function(e){var t=e.context,n=e.shape,r=i.get().slice();-1===r.indexOf(n)&&(r=[n]),F(t,{shapes:r=function(e){var t=A(e,"id");return g(e,function(e){for(;e=e.parent;)if(t[e.id])return!1;return!0})}(r),validatedShapes:r,shape:n})}),e.on("shape.move.start",Uv,function(e){var t=e.context,n=t.validatedShapes;if(!(t.canExecute=o(n)))return!1}),e.on("shape.move.move",Vv,function(e){var t,n=e.context,i=n.validatedShapes,r=e.hover,a={x:e.dx,y:e.dy};t=o(i,a,{x:e.x,y:e.y},r),n.delta=a,n.canExecute=t,n.target=null!==t?r:null}),e.on("shape.move.end",function(e){var t=e.context,i=t.delta,r=t.canExecute,o="attach"===r,a=t.shapes;if(!1===r)return!1;i.x=Kv(i.x),i.y=Kv(i.y),0===i.x&&0===i.y||n.moveElements(a,i,t.target,{primaryShape:t.shape,attach:o})}),e.on("element.mousedown",function(e){var t=Eo(e);if(!t)throw new Error("must supply DOM mousedown event");return a(t,e.element)}),this.start=a}Yv.$inject=["eventBus","dragging","modeling","selection","rules"];var Xv=499,Zv="djs-dragging",Qv="drop-ok",Jv="drop-not-ok",ey="new-parent",ty="attach-ok";function ny(e,t,n,i){function r(e){return function(e){return g(e,function(t){return!function(e){return e.waypoints}(t)||y(e,D({id:t.source.id}))&&y(e,D({id:t.target.id}))})}(a(e))}function a(e){var t=dt(e,!0),n=S(t,function(e){return(e.incoming||[]).concat(e.outgoing||[])});return o(t.concat(n))}function s(e,n){[ty,Qv,Jv,ey].forEach(function(i){i===n?t.addMarker(e,i):t.removeMarker(e,i)})}e.on("shape.move.start",Xv,function(e){var s=e.context,c=s.shapes,p=s.allDraggedElements,u=r(c);if(!s.dragGroup){var l=Oe("g");Ee(l,n.cls("djs-drag-group",["no-events"])),ge(t.getDefaultLayer(),l),s.dragGroup=l}u.forEach(function(e){i.addDragger(e,s.dragGroup)}),b(p=p?o([p,a(c)]):a(c),function(e){t.addMarker(e,Zv)}),s.allDraggedElements=p,s.differentParents=1!==T(A(c,function(e){return e.parent&&e.parent.id}))}),e.on("shape.move.move",Xv,function(e){var t=e.context,n=t.dragGroup,i=t.target,r=t.shape.parent,o=t.canExecute;i&&("attach"===o?s(i,ty):t.canExecute&&i&&i.id!==r.id?s(i,ey):s(i,t.canExecute?Qv:Jv)),en(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,r=n.dragGroup;b(i,function(e){t.removeMarker(e,Zv)}),r&&ke(r)}),this.makeDraggable=function(e,n,r){i.addDragger(n,e.dragGroup),r&&t.addMarker(n,Zv),e.allDraggedElements?e.allDraggedElements.push(n):e.allDraggedElements=[n]}}ny.$inject=["eventBus","canvas","styles","previewSupport"];var iy={__depends__:[Po,Fo,Bo,Cs,xs,Vc],__init__:["move","movePreview"],move:["type",Yv],movePreview:["type",ny]};function ry(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 oy(e,t){var n=t.getPaletteEntries();return f(n)?n(e):(b(n,function(t,n){e[n]=t}),e)}ry.$inject=["eventBus","canvas"],ry.prototype.registerProvider=function(e,t){t||(t=e,e=1e3),this._eventBus.on("palette.getProviders",e,function(e){e.providers.push(t)}),this._rebuild()},ry.prototype.getEntries=function(){return this._getProviders().reduce(oy,{})},ry.prototype._rebuild=function(){this._diagramInitialized&&(this._getProviders().length&&(this._container||this._init(),this._update()))},ry.prototype._init=function(){var e=this,t=this._eventBus,n=this._getParentContainer(),i=this._container=le(ry.HTML_MARKUP);n.appendChild(i),ue.bind(i,".djs-palette-toggle, .entry","click",function(t){var n=t.delegateTarget;if(J(n,".djs-palette-toggle"))return e.toggle();e.trigger("click",t)}),ce.bind(i,"mousedown",function(e){e.stopPropagation()}),ue.bind(i,".entry","dragstart",function(t){e.trigger("dragstart",t)}),t.on("canvas.resized",this._layoutChanged,this),t.fire("palette.create",{container:i})},ry.prototype._getProviders=function(e){var t=this._eventBus.createEvent({type:"palette.getProviders",providers:[]});return this._eventBus.fire(t),t.providers},ry.prototype._toggleState=function(e){e=e||{};var t,n=this._getParentContainer(),i=this._container,r=this._eventBus,o=K(i);t="twoColumn"in e?e.twoColumn:this._needsCollapse(n.clientHeight,this._entries||{}),o.toggle("two-column",t),"open"in e&&o.toggle("open",e.open),r.fire("palette.changed",{twoColumn:t,open:this.isOpen()})},ry.prototype._update=function(){var e=fe(".djs-palette-entries",this._container),t=this._entries=this.getEntries();X(e),b(t,function(t,n){var i=t.group||"default",r=fe("[data-group="+i+"]",e);r||(r=le('<div class="group" data-group="'+i+'"></div>'),e.appendChild(r));var o=t.html||(t.separator?'<hr class="separator" />':'<div class="entry" draggable="true"></div>'),a=le(o);r.appendChild(a),t.separator||(G(a,"data-action",n),t.title&&G(a,"title",t.title),t.className&&function(e,t){var n=K(e);(l(t)?t:t.split(/\s+/g)).forEach(function(e){n.add(e)})}(a,t.className),t.imageUrl&&a.appendChild(le('<img src="'+t.imageUrl+'">')))}),this.open()},ry.prototype.trigger=function(e,t,n){var i,r,o,a=this._entries,s=t.delegateTarget||t.target;if(!s)return t.preventDefault();(i=a[G(s,"data-action")])&&(r=i.action,o=t.originalEvent||t,f(r)?"click"===e&&r(o,n):r[e]&&r[e](o,n),t.preventDefault())},ry.prototype._layoutChanged=function(){this._toggleState({})},ry.prototype._needsCollapse=function(e,t){return e<46*Object.keys(t).length+50},ry.prototype.close=function(){this._toggleState({open:!1,twoColumn:!1})},ry.prototype.open=function(){this._toggleState({open:!0})},ry.prototype.toggle=function(e){this.isOpen()?this.close():this.open()},ry.prototype.isActiveTool=function(e){return e&&this._activeTool===e},ry.prototype.updateToolHighlight=function(e){var t;this._toolsContainer||(t=fe(".djs-palette-entries",this._container),this._toolsContainer=fe("[data-group=tools]",t)),b(this._toolsContainer.children,function(t){var n=t.getAttribute("data-action");if(n){var i=K(t);n=n.replace("-tool",""),i.contains("entry")&&n===e?i.add("highlighted-entry"):i.remove("highlighted-entry")}})},ry.prototype.isOpen=function(){return K(this._container).has("open")},ry.prototype._getParentContainer=function(){return this._canvas.getContainer()},ry.HTML_MARKUP='<div class="djs-palette"><div class="djs-palette-entries"></div><div class="djs-palette-toggle"></div></div>';var ay={__init__:["palette"],palette:["type",ry]};function sy(e,t,n,i,r,o){this._selection=r,this._dragging=n;var a=this,s=function(e){var n,i=t.getDefaultLayer();Ee(n=e.frame=Oe("rect"),{class:"djs-lasso-overlay",width:1,height:1,x:0,y:0}),ge(i,n)},c=function(e){var t=e.frame,n=e.bbox;Ee(t,{x:n.x,y:n.y,width:n.width,height:n.height})},p=function(e){e.frame&&ke(e.frame)};o.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",function(e){var t=cy(e),n=i.filter(function(e){return e});a.select(n,t)}),e.on("lasso.start",function(e){var t=e.context;t.bbox=cy(e),s(t)}),e.on("lasso.move",function(e){var t=e.context;t.bbox=cy(e),c(t)}),e.on("lasso.cleanup",function(e){var t=e.context;p(t)}),e.on("element.mousedown",1500,function(e){if(function(e){var t=Eo(e)||e;return Co(e)&&t.shiftKey}(e))return a.activateLasso(e.originalEvent),!0})}function cy(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}}sy.$inject=["eventBus","canvas","dragging","elementRegistry","selection","toolManager"],sy.prototype.activateLasso=function(e,t){this._dragging.init(e,"lasso",{autoActivate:t,cursor:"crosshair",data:{context:{}}})},sy.prototype.activateSelection=function(e){this._dragging.init(e,"lasso.selection",{trapClick:!1,cursor:"crosshair",data:{context:{}}})},sy.prototype.select=function(e,t){var n=function(e,t){var n={};return b(e,function(e){var i=e;i.waypoints&&(i=ft(i)),!d(t.y)&&i.x>t.x&&(n[e.id]=e),!d(t.x)&&i.y>t.y&&(n[e.id]=e),i.x>t.x&&i.y>t.y&&(d(t.width)&&d(t.height)&&i.width+i.x<t.width+t.x&&i.height+i.y<t.height+t.y?n[e.id]=e:d(t.width)&&d(t.height)||(n[e.id]=e))}),n}(e,t);this._selection.select(R(n))},sy.prototype.toggle=function(){this.isActive()?this._dragging.cancel():this.activateSelection()},sy.prototype.isActive=function(){var e=this._dragging.context();return e&&/^lasso/.test(e.prefix)};var py={__depends__:[Tf],__init__:["lassoTool"],lassoTool:["type",sy]},uy=1500;function ly(e,t,n,i,r){this._dragging=n;var o=this,a=i.get("keyboard",!1);r.registerTool("hand",{tool:"hand",dragging:"hand.move"}),e.on("element.mousedown",uy,function(e){if(To(e))return this.activateMove(e.originalEvent),!1},this),a&&a.addListener(uy,function(e){function t(e){o.activateMove(e),window.removeEventListener("mousemove",t)}hy(e.keyEvent)&&(o.isActive()||(window.addEventListener("mousemove",t),a.addListener(uy,function e(i){hy(i.keyEvent)&&(window.removeEventListener("mousemove",t),a.removeListener(e,"keyboard.keyup"),n.cancel())},"keyboard.keyup")))},"keyboard.keydown"),e.on("hand.end",function(t){var n=t.originalEvent.target;if(!(t.hover||n instanceof SVGElement))return!1;e.once("hand.ended",function(){this.activateMove(t.originalEvent,{reactivate:!0})},this)},this),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!To(t)&&n&&e.once("hand.move.ended",function(e){this.activateHand(e.originalEvent,!0,!0)},this),!1},this)}function hy(e){return Xo(" ",e)}ly.$inject=["eventBus","canvas","dragging","injector","toolManager"],ly.prototype.activateMove=function(e,t,n){"object"==typeof t&&(n=t,t=!1),this._dragging.init(e,"hand.move",{autoActivate:t,cursor:"grab",data:{context:n||{}}})},ly.prototype.activateHand=function(e,t,n){this._dragging.init(e,"hand",{trapClick:!1,autoActivate:t,cursor:"grab",data:{context:{reactivate:n}}})},ly.prototype.toggle=function(){this.isActive()?this._dragging.cancel():this.activateHand()},ly.prototype.isActive=function(){var e=this._dragging.context();return!!e&&/^(hand|hand\.move)$/.test(e.prefix)};var dy={__depends__:[Tf],__init__:["handTool"],handTool:["type",ly]},fy="connect-ok",my="connect-not-ok";function vy(e,t,n,i,r,o){var a=this;this._dragging=t,this._rules=o,r.registerTool("global-connect",{tool:"global-connect",dragging:"global-connect.drag"}),e.on("global-connect.hover",function(e){var t=e.context,n=e.hover,r=t.canStartConnect=a.canStartConnect(n);null!==r&&(t.startTarget=n,i.addMarker(n,r?fy:my))}),e.on(["global-connect.out","global-connect.cleanup"],function(e){var t=e.context.startTarget,n=e.context.canStartConnect;t&&i.removeMarker(t,n?fy:my)}),e.on(["global-connect.ended"],function(t){var i=t.context.startTarget,r={x:t.x,y:t.y};if(a.canStartConnect(i))return e.once("element.out",function(){e.once(["connect.ended","connect.canceled"],function(){e.fire("global-connect.drag.ended")}),n.start(null,i,r)}),!1})}vy.$inject=["eventBus","dragging","connect","canvas","toolManager","rules"],vy.prototype.start=function(e){this._dragging.init(e,"global-connect",{trapClick:!1,data:{context:{}}})},vy.prototype.toggle=function(){this.isActive()?this._dragging.cancel():this.start()},vy.prototype.isActive=function(){var e=this._dragging.context();return e&&/^global-connect/.test(e.prefix)},vy.prototype.canStartConnect=function(e){return this._rules.allowed("connection.start",{source:e})};var yy={__depends__:[Pc,Cs,xs,Tf],globalConnect:["type",vy]};function gy(e,t,n,i,r,o,a,s){this._palette=e,this._create=t,this._elementFactory=n,this._spaceTool=i,this._lassoTool=r,this._handTool=o,this._globalConnect=a,this._translate=s,e.registerProvider(this)}gy.$inject=["palette","create","elementFactory","spaceTool","lassoTool","handTool","globalConnect","translate"],gy.prototype.getPaletteEntries=function(e){var t={},n=this._create,i=this._elementFactory,r=this._spaceTool,o=this._lassoTool,a=this._handTool,s=this._globalConnect,c=this._translate;function p(e,t,r,o,a){function s(t){var r=i.createShape(F({type:e},a));a&&(r.businessObject.di.isExpanded=a.isExpanded),n.start(t,r)}var p=e.replace(/^bpmn:/,"");return{group:t,className:r,title:o||c("Create {type}",{type:p}),action:{dragstart:s,click:s}}}function u(e){var t=i.createShape({type:"bpmn:SubProcess",x:0,y:0,isExpanded:!0}),r=i.createShape({type:"bpmn:StartEvent",x:40,y:82,parent:t});n.start(e,[t,r],{hints:{autoSelect:[r]}})}function l(e){n.start(e,i.createParticipantShape())}return F(t,{"hand-tool":{group:"tools",className:"bpmn-icon-hand-tool",title:c("Activate the hand tool"),action:{click:function(e){a.activateHand(e)}}},"lasso-tool":{group:"tools",className:"bpmn-icon-lasso-tool",title:c("Activate the lasso tool"),action:{click:function(e){o.activateSelection(e)}}},"space-tool":{group:"tools",className:"bpmn-icon-space-tool",title:c("Activate the create/remove space tool"),action:{click:function(e){r.activateSelection(e)}}},"global-connect-tool":{group:"tools",className:"bpmn-icon-connection-multi",title:c("Activate the global connect tool"),action:{click:function(e){s.toggle(e)}}},"tool-separator":{group:"tools",separator:!0},"create.start-event":p("bpmn:StartEvent","event","bpmn-icon-start-event-none",c("Create StartEvent")),"create.intermediate-event":p("bpmn:IntermediateThrowEvent","event","bpmn-icon-intermediate-event-none",c("Create Intermediate/Boundary Event")),"create.end-event":p("bpmn:EndEvent","event","bpmn-icon-end-event-none",c("Create EndEvent")),"create.exclusive-gateway":p("bpmn:ExclusiveGateway","gateway","bpmn-icon-gateway-none",c("Create Gateway")),"create.task":p("bpmn:Task","activity","bpmn-icon-task",c("Create Task")),"create.data-object":p("bpmn:DataObjectReference","data-object","bpmn-icon-data-object",c("Create DataObjectReference")),"create.data-store":p("bpmn:DataStoreReference","data-store","bpmn-icon-data-store",c("Create DataStoreReference")),"create.subprocess-expanded":{group:"activity",className:"bpmn-icon-subprocess-expanded",title:c("Create expanded SubProcess"),action:{dragstart:u,click:u}},"create.participant-expanded":{group:"collaboration",className:"bpmn-icon-participant",title:c("Create Pool/Participant"),action:{dragstart:l,click:l}},"create.group":p("bpmn:Group","artifact","bpmn-icon-group",c("Create Group"))}),t};var by={__depends__:[ay,rp,Uf,py,dy,yy,vr],__init__:["paletteProvider"],paletteProvider:["type",gy]},xy=250;function _y(e,t,n,i,r){ss.call(this,e),e.on("shape.move.move",xy,function(e){var o=e.context,a=o.canExecute;o.visualReplacements||(o.visualReplacements={}),a&&a.replacements?function(e){b(e.canExecute.replacements,function(o){var a=o.oldElementId,s={type:o.newElementType};if(!e.visualReplacements[a]){var c=t.get(a);F(s,{x:c.x,y:c.y});var p=n.createShape(s);i.addShape(p,c.parent);var u=fe('[data-element-id="'+Ls(c.id)+'"]',e.dragGroup);u&&Ee(u,{display:"none"});var l=r.addDragger(p,e.dragGroup);e.visualReplacements[a]=l,i.removeShape(p)}})}(o):function(e){var t=e.visualReplacements;b(t,function(n,i){var r=fe('[data-element-id="'+Ls(i)+'"]',e.dragGroup);r&&Ee(r,{display:"inline"}),n.remove(),t[i]&&delete t[i]})}(o)})}_y.$inject=["eventBus","elementRegistry","elementFactory","canvas","previewSupport"],n(_y,ss);var Ey={__depends__:[Vc],__init__:["bpmnReplacePreview"],bpmnReplacePreview:["type",_y]},wy=1250,Sy=40,Cy=20,Ty=10,Ry=20,Ay=["x","y"],ky=Math.abs;function Py(e){e.on(["connect.hover","connect.move","connect.end"],wy,function(e){var t=e.context,n=t.canExecute,i=t.start,r=t.hover,o=t.source,a=t.target;e.originalEvent&&Yo(e.originalEvent)||(t.initialConnectionStart||(t.initialConnectionStart=t.connectionStart),n&&r&&function(e,t,n){Ay.forEach(function(i){var r=By(i,t);e[i]<t[i]+n?vc(e,i,t[i]+n):e[i]>t[i]+r-n&&vc(e,i,t[i]+r-n)})}(e,r,function(e){return Ii(e,"bpmn:Task")?Ty:Cy}(r)),r&&function(e,t){return w(t,function(t){return Dy(e,t)})}(n,["bpmn:Association","bpmn:DataInputAssociation","bpmn:DataOutputAssociation","bpmn:SequenceFlow"])?(t.connectionStart=fc(i),ts(r,["bpmn:Event","bpmn:Gateway"])&&My(e,fc(r)),ts(r,["bpmn:Task","bpmn:SubProcess"])&&function(e,t){var n=fc(t);Ay.forEach(function(i){(function(e,t,n){return e[n]>t[n]+Ry&&e[n]<t[n]+By(n,t)-Ry})(e,t,i)&&vc(e,i,n[i])})}(e,r),Ii(o,"bpmn:BoundaryEvent")&&a===o.host&&function(e){var t=e.context,n=t.source,i=t.target;if(function(e){var t=e.hover,n=e.source;return t&&n&&t===n}(t))return;var r=fc(n),o=fo(r,i,-10),a=[];/top|bottom/.test(o)&&a.push("x");/left|right/.test(o)&&a.push("y");a.forEach(function(t){var n,i=e[t];ky(i-r[t])<Sy&&(n=i>r[t]?r[t]+Sy:r[t]-Sy,vc(e,t,n))})}(e)):Dy(n,"bpmn:MessageFlow")?(Ii(i,"bpmn:Event")&&(t.connectionStart=fc(i)),Ii(r,"bpmn:Event")&&My(e,fc(r))):t.connectionStart=t.initialConnectionStart)})}function My(e,t){vc(e,"x",t.x),vc(e,"y",t.y)}function Dy(e,t){return e&&e.type===t}function By(e,t){return"x"===e?t.width:t.height}function Ny(){this._targets={},this._snapOrigins={},this._snapLocations=[],this._defaultSnaps={}}function Oy(e){this._snapValues={}}Py.$inject=["eventBus"],Ny.prototype.getSnapOrigin=function(e){return this._snapOrigins[e]},Ny.prototype.setSnapOrigin=function(e,t){this._snapOrigins[e]=t,-1===this._snapLocations.indexOf(e)&&this._snapLocations.push(e)},Ny.prototype.addDefaultSnap=function(e,t){var n=this._defaultSnaps[e];n||(n=this._defaultSnaps[e]=[]),n.push(t)},Ny.prototype.getSnapLocations=function(){return this._snapLocations},Ny.prototype.setSnapLocations=function(e){this._snapLocations=e},Ny.prototype.pointsForTarget=function(e){var t=e.id||e,n=this._targets[t];return n||(n=this._targets[t]=new Oy).initDefaults(this._defaultSnaps),n},Oy.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)},Oy.prototype.snap=function(e,t,n,i){var r=this._snapValues[t];return r&&function(e,t,n){var i,r;for(n=void 0===n?10:n,i=0;i<t.length;i++)if(r=t[i],uc(r-e)<=n)return r}(e[n],r[n],i)},Oy.prototype.initDefaults=function(e){var t=this;b(e||{},function(e,n){b(e,function(e){t.add(n,e)})})};var jy=1250;function Ly(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"],jy,function(e){var t=e.context,r=t.shape,o=t.snapContext,a=t.target;if((!e.originalEvent||!Yo(e.originalEvent))&&!mc(e)&&a){var s=o.pointsForTarget(a);s.initialized||((s=i.addSnapTargetPoints(s,r,a)).initialized=!0),n.snap(e,s)}}),t.on(["create.cleanup","shape.move.cleanup"],function(){n.hide()})}function Iy(e){return!!e.labelTarget}Ly.$inject=["elementRegistry","eventBus","snapping"],Ly.prototype.initSnap=function(e){var t,n=this._elementRegistry,i=e.context,r=i.shape,o=i.snapContext;o||(o=i.snapContext=new Ny);var a=(t=n.get(r.id)?fc(r,e):{x:e.x+fc(r).x,y:e.y+fc(r).y}).x-r.width/2,s=t.y-r.height/2,c=t.x+r.width/2,p=t.y+r.height/2;return o.setSnapOrigin("mid",{x:t.x-e.x,y:t.y-e.y}),Iy(r)?o:(o.setSnapOrigin("top-left",{x:a-e.x,y:s-e.y}),o.setSnapOrigin("bottom-right",{x:c-e.x,y:p-e.y}),o)},Ly.prototype.addSnapTargetPoints=function(e,t,n){return b(this.getSnapTargets(t,n),function(n){if(Iy(n))Iy(t)&&e.add("mid",fc(n));else if(n.waypoints){if(n.waypoints.length<3)return;b(n.waypoints.slice(1,-1),function(t){e.add("mid",t)})}else{e.add("mid",fc(n))}}),d(t.x)&&d(t.y)?(this._elementRegistry.get(t.id)&&e.add("mid",fc(t)),e):e},Ly.prototype.getSnapTargets=function(e,t){return yc(t).filter(function(e){return!e.hidden})};var zy=1500;function Fy(e,t){t.invoke(Ly,this),e.on(["create.move","create.end"],zy,$y),e.on(["create.move","create.end","shape.move.move","shape.move.end"],zy,function(e){var t=e.context,n=t.canExecute,i=t.target;n&&("attach"===n||n.attach)&&!mc(e)&&function(e,t){var n,i=uo(t),r=bd(e,t),o=e.context.shape;n=o.parent?{x:0,y:0}:ho(o);/top/.test(r)?vc(e,"y",i.top-n.y):/bottom/.test(r)&&vc(e,"y",i.bottom-n.y);/left/.test(r)?vc(e,"x",i.left-n.x):/right/.test(r)&&vc(e,"x",i.right-n.x)}(e,i)})}function $y(e){var t=e.context.createConstraints;if(t){var n=t.top,i=t.right,r=t.bottom,o=t.left;(o&&o>=e.x||i&&i<=e.x)&&vc(e,"x",e.x),(n&&n>=e.y||r&&r<=e.y)&&vc(e,"y",e.y)}}function Hy(e,t){return-1!==e.indexOf(t)}function Gy(e,t,n){return t?{x:e.x-n.x,y:e.y-n.y}:{x:e.x,y:e.y}}n(Fy,Ly),Fy.$inject=["eventBus","injector"],Fy.prototype.initSnap=function(e){var t=Ly.prototype.initSnap.call(this,e),n=e.shape,i=!!this._elementRegistry.get(n.id);return b(n.outgoing,function(n){var r=n.waypoints[0];r=r.original||r,t.setSnapOrigin(n.id+"-docking",Gy(r,i,e))}),b(n.incoming,function(n){var r=n.waypoints[n.waypoints.length-1];r=r.original||r,t.setSnapOrigin(n.id+"-docking",Gy(r,i,e))}),Ii(n,"bpmn:Participant")&&t.setSnapLocations(["top-left","bottom-right","mid"]),t},Fy.prototype.addSnapTargetPoints=function(e,t,n){Ly.prototype.addSnapTargetPoints.call(this,e,t,n);var i=this.getSnapTargets(t,n);b(i,function(n){var i;(function(e){if(Ii(e,"bpmn:SubProcess")&&Fi(e))return!0;return Ii(e,"bpmn:Participant")}(n)||(i="bpmn:TextAnnotation",[t,n].every(function(e){return Ii(e,i)})))&&(e.add("top-left",hc(n)),e.add("bottom-right",dc(n)))});var r=this._elementRegistry;return b(t.incoming,function(n){if(r.get(t.id)){Hy(i,n.source)||e.add("mid",ho(n.source));var o=n.waypoints[0];e.add(n.id+"-docking",o.original||o)}}),b(t.outgoing,function(n){if(r.get(t.id)){Hy(i,n.target)||e.add("mid",ho(n.target));var o=n.waypoints[n.waypoints.length-1];e.add(n.id+"-docking",o.original||o)}}),Ii(n,"bpmn:SequenceFlow")&&(e=this.addSnapTargetPoints(e,t,n.parent)),e},Fy.prototype.getSnapTargets=function(e,t){return Ly.prototype.getSnapTargets.call(this,e,t).filter(function(e){return!Ii(e,"bpmn:Lane")})};var Wy=1250;function Vy(e,t){var n=this;e.on(["resize.start"],function(e){n.initSnap(e)}),e.on(["resize.move","resize.end"],Wy,function(e){var i=e.context,r=i.shape,o=r.parent,a=i.direction,s=i.snapContext;if(!(e.originalEvent&&Yo(e.originalEvent)||mc(e))){var c=s.pointsForTarget(o);c.initialized||((c=n.addSnapTargetPoints(c,r,o,a)).initialized=!0),function(e){return"n"===e||"s"===e}(a)&&vc(e,"x",e.x),function(e){return"e"===e||"w"===e}(a)&&vc(e,"y",e.y),t.snap(e,c)}}),e.on(["resize.cleanup"],function(){t.hide()})}function Uy(e,t){var n=ho(e),i=uo(e),r={x:n.x,y:n.y};return-1!==t.indexOf("n")?r.y=i.top:-1!==t.indexOf("s")&&(r.y=i.bottom),-1!==t.indexOf("e")?r.x=i.right:-1!==t.indexOf("w")&&(r.x=i.left),r}Vy.prototype.initSnap=function(e){var t=e.context,n=t.shape,i=t.direction,r=t.snapContext;r||(r=t.snapContext=new Ny);var o=Uy(n,i);return r.setSnapOrigin("corner",{x:o.x-e.x,y:o.y-e.y}),r},Vy.prototype.addSnapTargetPoints=function(e,t,n,i){return b(this.getSnapTargets(t,n),function(t){e.add("corner",dc(t)),e.add("corner",hc(t))}),e.add("corner",Uy(t,i)),e},Vy.$inject=["eventBus","snapping"],Vy.prototype.getSnapTargets=function(e,t){return yc(t).filter(function(t){return!(n=t,i=e,n.host===i||function(e){return!!e.waypoints}(t)||function(e){return!!e.hidden}(t)||function(e){return!!e.labelTarget}(t));var n,i})};var qy=1e3;function Ky(e){this._canvas=e,this._asyncHide=L(I(this.hide,this),qy)}Ky.$inject=["canvas"],Ky.prototype.snap=function(e,t){var n=e.context.snapContext,i=n.getSnapLocations(),r={x:mc(e,"x"),y:mc(e,"y")};b(i,function(i){var o=n.getSnapOrigin(i),a={x:e.x+o.x,y:e.y+o.y};if(b(["x","y"],function(e){var n;r[e]||void 0!==(n=t.snap(a,i,e,7))&&(r[e]={value:n,originValue:n-o[e]})}),r.x&&r.y)return!1}),this.showSnapLine("vertical",r.x&&r.x.value),this.showSnapLine("horizontal",r.y&&r.y.value),b(["x","y"],function(t){var n=r[t];h(n)&&vc(e,t,n.originValue)})},Ky.prototype._createLine=function(e){var t=this._canvas.getLayer("snap"),n=Oe("path");return Ee(n,{d:"M0,0 L0,0"}),Re(n).add("djs-snap-line"),ge(t,n),{update:function(t){d(t)?Ee(n,"horizontal"===e?{d:"M-100000,"+t+" L+100000,"+t,display:""}:{d:"M "+t+",-100000 L "+t+", +100000",display:""}):Ee(n,{display:"none"})}}},Ky.prototype._createSnapLines=function(){this._snapLines={horizontal:this._createLine("horizontal"),vertical:this._createLine("vertical")}},Ky.prototype.showSnapLine=function(e,t){var n=this.getSnapLine(e);n&&n.update(t),this._asyncHide()},Ky.prototype.getSnapLine=function(e){return this._snapLines||this._createSnapLines(),this._snapLines[e]},Ky.prototype.hide=function(){b(this._snapLines,function(e){e.update()})};var Yy={__depends__:[{__init__:["createMoveSnapping","resizeSnapping","snapping"],createMoveSnapping:["type",Ly],resizeSnapping:["type",Vy],snapping:["type",Ky]}],__init__:["connectSnapping","createMoveSnapping"],connectSnapping:["type",Py],createMoveSnapping:["type",Fy]};function Xy(e,t,n,i){this._open=!1,this._results=[],this._eventMaps=[],this._canvas=e,this._eventBus=t,this._overlays=n,this._selection=i,this._container=le(Xy.BOX_HTML),this._searchInput=fe(Xy.INPUT_SELECTOR,this._container),this._resultsContainer=fe(Xy.RESULTS_CONTAINER_SELECTOR,this._container),this._canvas.getContainer().appendChild(this._container),t.on(["canvas.destroy","diagram.destroy"],this.close,this)}function Zy(e,t,n){var i=function(e){var t="";return e.forEach(function(e){e.matched?t+='<strong class="'+Xy.RESULT_HIGHLIGHT_CLASS+'">'+zs(e.matched)+"</strong>":t+=zs(e.normal)}),""!==t?t:null}(t),r=le(n);r.innerHTML=i,e.appendChild(r)}Xy.$inject=["canvas","eventBus","overlays","selection"],Xy.prototype._bindEvents=function(){var e=this;function t(t,n,i,r){e._eventMaps.push({el:t,type:i,listener:ue.bind(t,n,i,r)})}t(document,"html","click",function(t){e.close()}),t(this._container,Xy.INPUT_SELECTOR,"click",function(e){e.stopPropagation(),e.delegateTarget.focus()}),t(this._container,Xy.RESULT_SELECTOR,"mouseover",function(t){t.stopPropagation(),e._scrollToNode(t.delegateTarget),e._preselect(t.delegateTarget)}),t(this._container,Xy.RESULT_SELECTOR,"click",function(t){t.stopPropagation(),e._select(t.delegateTarget)}),t(this._container,Xy.INPUT_SELECTOR,"keydown",function(e){38===e.keyCode&&e.preventDefault(),40===e.keyCode&&e.preventDefault()}),t(this._container,Xy.INPUT_SELECTOR,"keyup",function(t){if(27===t.keyCode)return e.close();if(13===t.keyCode){var n=e._getCurrentResult();return n?e._select(n):e.close()}return 38===t.keyCode?e._scrollToDirection(!0):40===t.keyCode?e._scrollToDirection():void(37!==t.keyCode&&39!==t.keyCode&&e._search(t.delegateTarget.value))})},Xy.prototype._unbindEvents=function(){this._eventMaps.forEach(function(e){ue.unbind(e.el,e.type,e.listener)})},Xy.prototype._search=function(e){var t=this;if(this._clearResults(),e&&""!==e){var n=this._searchProvider.find(e);if(n.length){n.forEach(function(e){var n=e.element.id,i=t._createResultNode(e,n);t._results[n]={element:e.element,node:i}});var i=fe(Xy.RESULT_SELECTOR,this._resultsContainer);this._scrollToNode(i),this._preselect(i)}}},Xy.prototype._scrollToDirection=function(e){var t=this._getCurrentResult();if(t){var n=e?t.previousElementSibling:t.nextElementSibling;n&&(this._scrollToNode(n),this._preselect(n))}},Xy.prototype._scrollToNode=function(e){if(e&&e!==this._getCurrentResult()){var t=e.offsetTop,n=this._resultsContainer.scrollTop,i=t-this._resultsContainer.clientHeight+e.clientHeight;t<n?this._resultsContainer.scrollTop=t:n<i&&(this._resultsContainer.scrollTop=i)}},Xy.prototype._clearResults=function(){X(this._resultsContainer),this._results=[],this._resetOverlay(),this._eventBus.fire("searchPad.cleared")},Xy.prototype._getCurrentResult=function(){return fe(Xy.RESULT_SELECTED_SELECTOR,this._resultsContainer)},Xy.prototype._createResultNode=function(e,t){var n=le(Xy.RESULT_HTML);return e.primaryTokens.length>0&&Zy(n,e.primaryTokens,Xy.RESULT_PRIMARY_HTML),Zy(n,e.secondaryTokens,Xy.RESULT_SECONDARY_HTML),G(n,Xy.RESULT_ID_ATTRIBUTE,t),this._resultsContainer.appendChild(n),n},Xy.prototype.registerProvider=function(e){this._searchProvider=e},Xy.prototype.open=function(){if(!this._searchProvider)throw new Error("no search provider registered");this.isOpen()||(this._bindEvents(),this._open=!0,K(this._container).add("open"),this._searchInput.focus(),this._eventBus.fire("searchPad.opened"))},Xy.prototype.close=function(){this.isOpen()&&(this._unbindEvents(),this._open=!1,K(this._container).remove("open"),this._clearResults(),this._searchInput.value="",this._searchInput.blur(),this._resetOverlay(),this._eventBus.fire("searchPad.closed"))},Xy.prototype.toggle=function(){this.isOpen()?this.close():this.open()},Xy.prototype.isOpen=function(){return this._open},Xy.prototype._preselect=function(e){var t=this._getCurrentResult();if(e!==t){t&&K(t).remove(Xy.RESULT_SELECTED_CLASS);var n=G(e,Xy.RESULT_ID_ATTRIBUTE),i=this._results[n].element;K(e).add(Xy.RESULT_SELECTED_CLASS),this._resetOverlay(i),this._centerViewbox(i),this._selection.select(i),this._eventBus.fire("searchPad.preselected",i)}},Xy.prototype._select=function(e){var t=G(e,Xy.RESULT_ID_ATTRIBUTE),n=this._results[t].element;this.close(),this._resetOverlay(),this._centerViewbox(n),this._selection.select(n),this._eventBus.fire("searchPad.selected",n)},Xy.prototype._centerViewbox=function(e){var t=this._canvas.viewbox(),n=ft(e),i={x:n.x+n.width/2-t.outer.width/2,y:n.y+n.height/2-t.outer.height/2,width:t.outer.width,height:t.outer.height};this._canvas.viewbox(i),this._canvas.zoom(t.scale)},Xy.prototype._resetOverlay=function(e){if(this._overlayId&&this._overlays.remove(this._overlayId),e){var t=function(e){var t=e.width+12,n=e.height+12,i=["width: "+t+"px","height: "+n+"px"].join("; ");return{position:{bottom:n-6,right:t-6},show:!0,html:'<div style="'+i+'" class="'+Xy.OVERLAY_CLASS+'"></div>'}}(ft(e));this._overlayId=this._overlays.add(e,t)}},Xy.CONTAINER_SELECTOR=".djs-search-container",Xy.INPUT_SELECTOR=".djs-search-input input",Xy.RESULTS_CONTAINER_SELECTOR=".djs-search-results",Xy.RESULT_SELECTOR=".djs-search-result",Xy.RESULT_SELECTED_CLASS="djs-search-result-selected",Xy.RESULT_SELECTED_SELECTOR="."+Xy.RESULT_SELECTED_CLASS,Xy.RESULT_ID_ATTRIBUTE="data-result-id",Xy.RESULT_HIGHLIGHT_CLASS="djs-search-highlight",Xy.OVERLAY_CLASS="djs-search-overlay",Xy.BOX_HTML='<div class="djs-search-container djs-draggable djs-scrollable"><div class="djs-search-input"><input type="text"/></div><div class="djs-search-results"></div></div>',Xy.RESULT_HTML='<div class="djs-search-result"></div>',Xy.RESULT_PRIMARY_HTML='<div class="djs-search-result-primary"></div>',Xy.RESULT_SECONDARY_HTML='<p class="djs-search-result-secondary"></p>';var Qy={__depends__:[qo,Fo],searchPad:["type",Xy]};function Jy(e,t,n){this._elementRegistry=e,this._canvas=n,t.registerProvider(this)}function eg(e){return g(e,function(e){return!!e.matched}).length>0}function tg(e,t){var n=[],i=e;if(!e)return n;e=e.toLowerCase(),t=t.toLowerCase();var r=e.indexOf(t);return r>-1?(0!==r&&n.push({normal:i.substr(0,r)}),n.push({matched:i.substr(r,t.length)}),t.length+r<e.length&&n.push({normal:i.substr(t.length+r,e.length)})):n.push({normal:i}),n}Jy.$inject=["elementRegistry","searchPad","canvas"],Jy.prototype.find=function(e){var t=this._canvas.getRootElement(),n=this._elementRegistry.filter(function(e){return!e.labelTarget});return n=g(n,function(e){return e!==t}),n=M(n=g(n=S(n,function(t){return{primaryTokens:tg(Wi(t),e),secondaryTokens:tg(t.id,e),element:t}}),function(e){return eg(e.primaryTokens)||eg(e.secondaryTokens)}),function(e){return Wi(e.element)+e.element.id})};var ng={__depends__:[Qy],__init__:["bpmnSearch"],bpmnSearch:["type",Jy]};function ig(e){Li.call(this,e)}return n(ig,Li),ig.Viewer=Ko,ig.NavigatedViewer=Ta,ig.prototype.createDiagram=function(e){return this.importXML('<?xml version="1.0" encoding="UTF-8"?><bpmn:definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bpmn="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" targetNamespace="http://bpmn.io/schema/bpmn" id="Definitions_1"><bpmn:process id="Process_1" isExecutable="false"><bpmn:startEvent id="StartEvent_1"/></bpmn:process><bpmndi:BPMNDiagram id="BPMNDiagram_1"><bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="Process_1"><bpmndi:BPMNShape id="_BPMNShape_StartEvent_2" bpmnElement="StartEvent_1"><dc:Bounds height="36.0" width="36.0" x="173.0" y="102.0"/></bpmndi:BPMNShape></bpmndi:BPMNPlane></bpmndi:BPMNDiagram></bpmn:definitions>',e)},ig.prototype._interactionModules=[ca,ga,ja,Ca],ig.prototype._modelingModules=[Ha,as,ws,ds,Ec,Pc,Dc,lu,Cp,rp,vu,_u,$u,Gu,Vu,Zu,gl,Wv,iy,by,Ey,ul,Yy,ng],ig.prototype._modules=[].concat(Ko.prototype._modules,ig.prototype._interactionModules,ig.prototype._modelingModules),ig});
|