bpmn-js 9.0.4 → 9.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/diagram-js.css +9 -17
- package/dist/bpmn-modeler.development.js +1483 -764
- package/dist/bpmn-modeler.production.min.js +8 -9
- package/dist/bpmn-navigated-viewer.development.js +1120 -430
- package/dist/bpmn-navigated-viewer.production.min.js +6 -7
- package/dist/bpmn-viewer.development.js +1118 -428
- package/dist/bpmn-viewer.production.min.js +6 -7
- package/lib/BaseViewer.js +13 -3
- package/lib/features/interaction-events/BpmnInteractionEvents.js +12 -0
- package/lib/features/label-editing/LabelEditingProvider.js +2 -1
- package/lib/util/PoweredByUtil.js +59 -44
- package/package.json +3 -3
|
@@ -1,22 +1,21 @@
|
|
|
1
|
-
/*! bpmn-js - bpmn-modeler v9.0
|
|
2
|
-
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e="undefined"!=typeof globalThis?globalThis:e||self).BpmnJS=t()}(this,(function(){"use strict";var e="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},t={exports:{}};"function"==typeof Object.create?t.exports=function(e,t){t&&(e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}))}:t.exports=function(e,t){if(t){e.super_=t;var n=function(){};n.prototype=t.prototype,e.prototype=new n,e.prototype.constructor=e}};var n=t.exports;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 l(e){return null==e}function u(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=u(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(!u(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 R(e){return C(e).length}function T(e){return S(e,(function(e){return e}))}function P(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 A(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];b(i,(function(n){return P(n,e,t)}));var o=S(t,(function(e,t){return e[0]}));return o}var k=A;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(n){var a=Date.now(),p=n?0:o+t-a;if(p>0)return s(p);e.apply(r,i),c()}function s(e){n=setTimeout(a,e)}function c(){n&&clearTimeout(n),n=o=i=r=void 0}function p(){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)}return p.flush=function(){n&&a(!0),c()},p.cancel=c,p}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=window.addEventListener?"addEventListener":"attachEvent",ne=window.removeEventListener?"removeEventListener":"detachEvent",ie="addEventListener"!==te?"on":"",re={bind:function(e,t,n,i){return e[te](ie+t,n,i||!1),n},unbind:function(e,t,n,i){return e[ne](ie+t,n,i||!1),n}},oe=["focus","blur"];var ae,se={bind:function(e,t,n,i,r){return-1!==oe.indexOf(n)&&(r=!0),re.bind(e,n,(function(n){var r=n.target||n.srcElement;n.delegateTarget=ee(r,t,!0),n.delegateTarget&&i.call(e,n)}),r)},unbind:function(e,t,n,i){return-1!==oe.indexOf(t)&&(i=!0),re.unbind(e,t,n,i)}},ce=function(e,t){if("string"!=typeof e)throw new TypeError("String expected");t||(t=document);var n=/<([\w:]+)/.exec(e);if(!n)return t.createTextNode(e);e=e.replace(/^\s+|\s+$/g,"");var i=n[1];if("body"==i){return(r=t.createElement("html")).innerHTML=e,r.removeChild(r.lastChild)}var r,o=le[i]||le._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},pe=!1;"undefined"!=typeof document&&((ae=document.createElement("div")).innerHTML=' <link/><table></table><a href="/a">a</a><input type="checkbox"/>',pe=!ae.getElementsByTagName("link").length,ae=void 0);var le={legend:[1,"<fieldset>","</fieldset>"],tr:[2,"<table><tbody>","</tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],_default:pe?[1,"X<div>","</div>"]:[0,"",""]};function ue(e,t){return(t=t||document).querySelector(e)}function he(e,t){return(t=t||document).querySelectorAll(e)}function de(e){e.parentNode&&e.parentNode.removeChild(e)}function fe(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 me(e,t){return fe(t,e),e}le.td=le.th=[3,"<table><tbody><tr>","</tr></tbody></table>"],le.option=le.optgroup=[1,'<select multiple="multiple">',"</select>"],le.thead=le.tbody=le.colgroup=le.caption=le.tfoot=[1,"<table>","</table>"],le.polyline=le.ellipse=le.polygon=le.circle=le.text=le.line=le.path=le.rect=le.g=[1,'<svg xmlns="http://www.w3.org/2000/svg" version="1.1">',"</svg>"];var ve={"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":2,"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":2,"text-anchor":1,"text-decoration":1,"text-rendering":1,"unicode-bidi":1,visibility:1,"word-spacing":1,"writing-mode":1};function ye(e,t,n){var i=t.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase(),r=ve[i];r?(2===r&&"number"==typeof n&&(n=String(n)+"px"),e.style[i]=n):e.setAttributeNS(null,t,n)}function ge(e,t,n){if("string"==typeof t){if(void 0===n)return function(e,t){return ve[t]?e.style[t]:e.getAttributeNS(null,t)}(e,t);ye(e,t,n)}else!function(e,t){var n,i,r=Object.keys(t);for(n=0;i=r[n];n++)ye(e,i,t[i])}(e,t);return e}function be(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 xe=/\s+/,_e=Object.prototype.toString;function Ee(e){return void 0!==e}function we(e){return new Se(e)}function Se(e){if(!e||!e.nodeType)throw new Error("A DOM element reference is required");this.el=e,this.list=e.classList}function Ce(e){var t=e.parentNode;return t&&t.removeChild(e),e}function Re(e){for(var t;t=e.firstChild;)Ce(t);return e}function Te(e){return e.cloneNode(!0)}Se.prototype.add=function(e){if(this.list)return this.list.add(e),this;var t=this.array();return~be(t,e)||t.push(e),Ee(this.el.className.baseVal)?this.el.className.baseVal=t.join(" "):this.el.className=t.join(" "),this},Se.prototype.remove=function(e){if("[object RegExp]"===_e.call(e))return this.removeMatching(e);if(this.list)return this.list.remove(e),this;var t=this.array(),n=be(t,e);return~n&&t.splice(n,1),this.el.className.baseVal=t.join(" "),this},Se.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},Se.prototype.toggle=function(e,t){return this.list?(Ee(t)?t!==this.list.toggle(e,t)&&this.list.toggle(e):this.list.toggle(e),this):(Ee(t)?t?this.add(e):this.remove(e):this.has(e)?this.remove(e):this.add(e),this)},Se.prototype.array=function(){var e=(this.el.getAttribute("class")||"").replace(/^\s+|\s+$/g,"").split(xe);return""===e[0]&&e.shift(),e},Se.prototype.has=Se.prototype.contains=function(e){return this.list?this.list.contains(e):!!~be(this.array(),e)};var Pe="http://www.w3.org/2000/svg",Ae='<svg xmlns="'+Pe+'"';function ke(e){var t=!1;"<svg"===e.substring(0,4)?-1===e.indexOf(Pe)&&(e=Ae+e.substring(4)):(e=Ae+">"+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 Me(e,t){var n;return"<"===e.charAt(0)?(n=ke(e).firstChild,n=document.importNode(n,!0)):n=document.createElementNS(Pe,e),t&&ge(n,t),n}var De=Me("svg");function Be(e,t){var n,i,r=Object.keys(t);for(n=0;i=r[n];n++)e[i]=t[i];return e}function Ne(e){return e?De.createSVGTransformFromMatrix(e):De.createSVGTransform()}var Oe=/([&<>]{1})/g,je=/([\n\r"]{1})/g,Le={"&":"&","<":"<",">":">",'"':"'"};function Ie(e,t){return e.replace(t,(function(e,t){return Le[t]||t}))}function ze(e,t){var n,i,r,o,a;switch(e.nodeType){case 3:t.push(Ie(e.textContent,Oe));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,'="',Ie(o.value,je),'"');if(e.hasChildNodes()){for(t.push(">"),n=0,i=(a=e.childNodes).length;n<i;++n)ze(a.item(n),t);t.push("</",e.tagName,">")}else t.push("/>");break;case 8:t.push("\x3c!--",Ie(e.nodeValue,Oe),"--\x3e");break;case 4:t.push("<![CDATA[",e.nodeValue,"]]>");break;default:throw new Error("unable to handle node "+e.nodeType)}return t}function Fe(e,t){var n=ke(t);if(Re(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++)fe(r[o],e)}}function $e(e,t){if(void 0!==t){try{Fe(e,t)}catch(e){throw new Error("error parsing SVG: "+e.message)}return e}return function(e){for(var t=e.firstChild,n=[];t;)ze(t,n),t=t.nextSibling;return n.join("")}(e)}function He(e,t){return t instanceof SVGMatrix?e.createSVGTransformFromMatrix(t):t}function Ge(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(He(e,i))}(n,t)),n.consolidate()}var We=/^class /;function Ve(e){return"[object Array]"===Object.prototype.toString.call(e)}function Ue(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function qe(){var e=Array.prototype.slice.call(arguments);1===e.length&&Ve(e[0])&&(e=e[0]);var t=e.pop();return t.$inject=e,t}var Ke=/constructor\s*[^(]*\(\s*([^)]*)\)/m,Ye=/^(?:async )?(?:function\s*)?[^(]*\(\s*([^)]*)\)/m,Xe=/\/\*([^*]*)\*\//m;function Ze(e){if("function"!=typeof e)throw new Error('Cannot annotate "'+e+'". Expected a function!');var t=e.toString().match(function(e){return We.test(e.toString())}(e)?Ke:Ye);return t&&t[1]&&t[1].split(",").map((function(e){return(t=e.match(Xe))?t[1].trim():e.trim()}))||[]}function Qe(){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)}}function Je(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){if(!i[e]&&-1!==e.indexOf(".")){for(var c=e.split("."),p=s(c.shift());c.length;)p=p[c.shift()];return p}if(Ue(r,e))return r[e];if(Ue(i,e)){if(-1!==n.indexOf(e))throw n.push(e),a("Cannot resolve circular dependency!");return n.push(e),r[e]=i[e][0](i[e][1]),n.pop(),r[e]}return t.get(e,o)},c=function(e,t){if(void 0===t&&(t={}),"function"!=typeof e){if(!Ve(e))throw new Error('Cannot invoke "'+e+'". Expected a function!');e=qe(e.slice())}return{fn:e,dependencies:(e.$inject||Ze(e)).map((function(e){return Ue(t,e)?t[e]:s(e)}))}},p=function(e){var t=c(e),n=t.fn,i=t.dependencies;return new(Function.prototype.bind.apply(n,[null].concat(i)))},l=function(e,t,n){var i=c(e,n),r=i.fn,o=i.dependencies;return r.apply(t,o)},u=function(e){return qe((function(t){return e.get(t)}))},h={factory:l,type:p,value:function(e){return e}};e.forEach((function(e){function t(e,t){return"value"!==e&&Ve(t)&&(t=qe(t.slice())),t}if(e instanceof Qe)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"==typeof 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 Je((e.__modules__||[]).concat([n]),o),a=qe((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=l,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),l=[],h=[],d=[];for(var f in i)n=i[f],-1!==t.indexOf(f)&&("private"===n[2]?-1===(r=l.indexOf(n[3]))?(a=n[3].createChild([],t),s=u(a),l.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 Je(e,o)}}function et(e,t){var n=this;t=t||1e3,e.on(["render.shape","render.connection"],t,(function(e,t){var i=e.type,r=t.element,o=t.gfx,a=t.attrs;if(n.canRender(r))return"render.shape"===i?n.drawShape(o,r,a):n.drawConnection(o,r,a)})),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 tt(e){return e.join(",").replace(/,?([A-z]),?/g,"$1")}function nt(e){for(var t,n="",i=0;t=e[i];i++)n+=t.x+","+t.y+" ";return n}function it(e,t){var n=Me("polyline");return ge(n,{points:nt(e)}),t&&ge(n,t),n}function rt(e){return g(e,(function(t){return!y(e,(function(e){return e!==t&&ot(t,e)}))}))}function ot(e,t){if(t){if(e===t)return t;if(e.parent)return ot(e.parent,t)}}function at(e,t,n){var i=!n||-1===e.indexOf(t);return i&&e.push(t),i}function st(e,t,n){n=n||0,u(e)||(e=[e]),b(e,(function(e,i){var r=t(e,i,n);u(r)&&r.length&&st(r,t,n+1)}))}function ct(e,t){return function(e,t,n){var i=[],r=[];return st(e,(function(e,o,a){at(i,e,t);var s=e.children;if((-1===n||a<n)&&s&&at(r,s,t))return s})),i}(e,!t,-1)}function pt(e,t){var n,i,r,o;return t=!!t,u(e)||(e=[e]),b(e,(function(e){var a=e;e.waypoints&&!t&&(a=pt(e.waypoints,!0));var s=a.x,c=a.y,p=a.height||0,l=a.width||0;(s<n||void 0===n)&&(n=s),(c<i||void 0===i)&&(i=c),(s+l>r||void 0===r)&&(r=s+l),(c+p>o||void 0===o)&&(o=c+p)})),{x:n,y:i,height:o-i,width:r-n}}function lt(e){return"waypoints"in e?"connection":"x"in e?"shape":"root"}function ut(e){return!(!e||!e.isFrame)}function ht(e,t){return F({},e||{},t||{})}et.prototype.canRender=function(){},et.prototype.drawShape=function(){},et.prototype.drawConnection=function(){},et.prototype.getShapePath=function(){},et.prototype.getConnectionPath=function(){};function dt(e,t){et.call(this,e,1),this.CONNECTION_STYLE=t.style(["no-fill"],{strokeWidth:5,stroke:"fuchsia"}),this.SHAPE_STYLE=t.style({fill:"white",stroke:"fuchsia",strokeWidth:2}),this.FRAME_STYLE=t.style(["no-fill"],{stroke:"fuchsia",strokeDasharray:4,strokeWidth:2})}n(dt,et),dt.prototype.canRender=function(){return!0},dt.prototype.drawShape=function(e,t,n){var i=Me("rect");return ge(i,{x:0,y:0,width:t.width||0,height:t.height||0}),ut(t)?ge(i,F({},this.FRAME_STYLE,n||{})):ge(i,F({},this.SHAPE_STYLE,n||{})),me(e,i),i},dt.prototype.drawConnection=function(e,t,n){var i=it(t.waypoints,F({},this.CONNECTION_STYLE,n||{}));return me(e,i),i},dt.prototype.getShapePath=function(e){var t=e.x,n=e.y,i=e.width;return tt([["M",t,n],["l",i,0],["l",0,e.height],["l",-i,0],["z"]])},dt.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 tt(r)},dt.$inject=["eventBus","styles"];var ft={__init__:["defaultRenderer"],defaultRenderer:["type",dt],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){u(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 u(n)||(i=n,n=[]),t.style(n||[],F({},i,e||{}))}}]};function mt(e,t){if(!e||!t)return-1;var n=e.indexOf(t);return-1!==n&&e.splice(n,1),n}function vt(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 yt(e,t){return e&&t?e.indexOf(t):-1}function gt(e,t){return e&&t?Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2)):-1}function bt(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=gt(e,t);return Math.abs(r/o)<=i}function xt(e,t){var n;return function(e,t){var n;n=u(e)?e:[e,t];var i=n.slice().shift();return E(n,(function(e){return Math.abs(i.y-e.y)<=2}))}(n=u(e)?e:[e,t])?"h":!!function(e,t){var n;n=u(e)?e:[e,t];var i=n.slice().shift();return E(n,(function(e){return Math.abs(i.x-e.x)<=2}))}(n)&&"v"}function _t(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 Et(e,t){return{x:Math.round(e.x+(t.x-e.x)/2),y:Math.round(e.y+(t.y-e.y)/2)}}
|
|
1
|
+
/*! bpmn-js - bpmn-modeler v9.1.0 | Copyright (c) 2014-present, camunda Services GmbH | bpmn.io/license */
|
|
2
|
+
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e="undefined"!=typeof globalThis?globalThis:e||self).BpmnJS=t()}(this,(function(){"use strict";var e="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},t={exports:{}};"function"==typeof Object.create?t.exports=function(e,t){t&&(e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}))}:t.exports=function(e,t){if(t){e.super_=t;var n=function(){};n.prototype=t.prototype,e.prototype=new n,e.prototype.constructor=e}};var n=t.exports;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 l(e){return null==e}function u(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=u(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(!u(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 R(e){return C(e).length}function T(e){return S(e,(function(e){return e}))}function P(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 A(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];b(i,(function(n){return P(n,e,t)}));var o=S(t,(function(e,t){return e[0]}));return o}var M=A;function k(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(n){var a=Date.now(),p=n?0:o+t-a;if(p>0)return s(p);e.apply(r,i),c()}function s(e){n=setTimeout(a,e)}function c(){n&&clearTimeout(n),n=o=i=r=void 0}function p(){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)}return p.flush=function(){n&&a(!0),c()},p.cancel=c,p}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}var G=Object.prototype.toString,V=Object.prototype.hasOwnProperty;function W(e,t){return V.call(e,t)}function U(e,t){var n;if(void 0!==e){var i=function(e){return"[object Array]"===G.call(e)}(e)?K:q;for(var r in e)if(W(e,r)&&!1===t(n=e[r],i(r)))return n}}function q(e){return e}function K(e){return Number(e)}function Y(e){for(var t=e.style,n=arguments.length,i=Array(n>1?n-1:0),r=1;r<n;r++)i[r-1]=arguments[r];return U(i,(function(e){e&&U(e,(function(e,n){t[n]=e}))})),e}var X=[].indexOf,Z=function(e,t){if(X)return e.indexOf(t);for(var n=0;n<e.length;++n)if(e[n]===t)return n;return-1},Q=/\s+/,J=Object.prototype.toString;function ee(e){return new te(e)}function te(e){if(!e||!e.nodeType)throw new Error("A DOM element reference is required");this.el=e,this.list=e.classList}te.prototype.add=function(e){if(this.list)return this.list.add(e),this;var t=this.array();return~Z(t,e)||t.push(e),this.el.className=t.join(" "),this},te.prototype.remove=function(e){if("[object RegExp]"==J.call(e))return this.removeMatching(e);if(this.list)return this.list.remove(e),this;var t=this.array(),n=Z(t,e);return~n&&t.splice(n,1),this.el.className=t.join(" "),this},te.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},te.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)},te.prototype.array=function(){var e=(this.el.getAttribute("class")||"").replace(/^\s+|\s+$/g,"").split(Q);return""===e[0]&&e.shift(),e},te.prototype.has=te.prototype.contains=function(e){return this.list?this.list.contains(e):!!~Z(this.array(),e)};var ne="undefined"!=typeof Element?Element.prototype:{},ie=ne.matches||ne.matchesSelector||ne.webkitMatchesSelector||ne.mozMatchesSelector||ne.msMatchesSelector||ne.oMatchesSelector,re=function(e,t){if(!e||1!==e.nodeType)return!1;if(ie)return ie.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 oe=window.addEventListener?"addEventListener":"attachEvent",ae=window.removeEventListener?"removeEventListener":"detachEvent",se="addEventListener"!==oe?"on":"",ce=function(e,t,n,i){return e[oe](se+t,n,i||!1),n},pe=function(e,t,n,i){return e[ae](se+t,n,i||!1),n},le=["focus","blur"];var ue,he={bind:function(e,t,n,i,r){return-1!==le.indexOf(n)&&(r=!0),ce(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.nodeType!==document.DOCUMENT_NODE&&i.nodeType!==document.DOCUMENT_FRAGMENT_NODE;){if(re(i,t))return i;i=i.parentNode}return re(i,t)?i:null}(r,t,!0),n.delegateTarget&&i.call(e,n)}),r)},unbind:function(e,t,n,i){return-1!==le.indexOf(t)&&(i=!0),pe(e,t,n,i)}},de=function(e,t){if("string"!=typeof e)throw new TypeError("String expected");t||(t=document);var n=/<([\w:]+)/.exec(e);if(!n)return t.createTextNode(e);e=e.replace(/^\s+|\s+$/g,"");var i=n[1];if("body"==i){return(r=t.createElement("html")).innerHTML=e,r.removeChild(r.lastChild)}var r,o=me[i]||me._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},fe=!1;"undefined"!=typeof document&&((ue=document.createElement("div")).innerHTML=' <link/><table></table><a href="/a">a</a><input type="checkbox"/>',fe=!ue.getElementsByTagName("link").length,ue=void 0);var me={legend:[1,"<fieldset>","</fieldset>"],tr:[2,"<table><tbody>","</tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],_default:fe?[1,"X<div>","</div>"]:[0,"",""]};function ve(e,t){return(t=t||document).querySelector(e)}function ye(e){e.parentNode&&e.parentNode.removeChild(e)}function ge(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 be(e,t){return ge(t,e),e}me.td=me.th=[3,"<table><tbody><tr>","</tr></tbody></table>"],me.option=me.optgroup=[1,'<select multiple="multiple">',"</select>"],me.thead=me.tbody=me.colgroup=me.caption=me.tfoot=[1,"<table>","</table>"],me.polyline=me.ellipse=me.polygon=me.circle=me.text=me.line=me.path=me.rect=me.g=[1,'<svg xmlns="http://www.w3.org/2000/svg" version="1.1">',"</svg>"];var 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":2,"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":2,"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?(2===r&&"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 Re(e){return void 0!==e}function Te(e){return new Pe(e)}function Pe(e){if(!e||!e.nodeType)throw new Error("A DOM element reference is required");this.el=e,this.list=e.classList}function Ae(e){var t=e.parentNode;return t&&t.removeChild(e),e}function Me(e){for(var t;t=e.firstChild;)Ae(t);return e}function ke(e){return e.cloneNode(!0)}Pe.prototype.add=function(e){if(this.list)return this.list.add(e),this;var t=this.array();return~we(t,e)||t.push(e),Re(this.el.className.baseVal)?this.el.className.baseVal=t.join(" "):this.el.className=t.join(" "),this},Pe.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},Pe.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},Pe.prototype.toggle=function(e,t){return this.list?(Re(t)?t!==this.list.toggle(e,t)&&this.list.toggle(e):this.list.toggle(e),this):(Re(t)?t?this.add(e):this.remove(e):this.has(e)?this.remove(e):this.add(e),this)},Pe.prototype.array=function(){var e=(this.el.getAttribute("class")||"").replace(/^\s+|\s+$/g,"").split(Se);return""===e[0]&&e.shift(),e},Pe.prototype.has=Pe.prototype.contains=function(e){return this.list?this.list.contains(e):!!~we(this.array(),e)};var De="http://www.w3.org/2000/svg",Be='<svg xmlns="'+De+'"';function Ne(e){var t=!1;"<svg"===e.substring(0,4)?-1===e.indexOf(De)&&(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,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 Ve(e,t){var n=Ne(t);if(Me(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++)ge(r[o],e)}}function We(e,t){if(void 0!==t){try{Ve(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(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function Ze(){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 Qe=/constructor\s*[^(]*\(\s*([^)]*)\)/m,Je=/^(?:async )?(?:function\s*)?[^(]*\(\s*([^)]*)\)/m,et=/\/\*([^*]*)\*\//m;function tt(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)?Qe:Je);return t&&t[1]&&t[1].split(",").map((function(e){return(t=e.match(et))?t[1].trim():e.trim()}))||[]}function nt(){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)}}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){if(!i[e]&&-1!==e.indexOf(".")){for(var c=e.split("."),p=s(c.shift());c.length;)p=p[c.shift()];return p}if(Xe(r,e))return r[e];if(Xe(i,e)){if(-1!==n.indexOf(e))throw n.push(e),a("Cannot resolve circular dependency!");return n.push(e),r[e]=i[e][0](i[e][1]),n.pop(),r[e]}return t.get(e,o)},c=function(e,t){if(void 0===t&&(t={}),"function"!=typeof e){if(!Ye(e))throw new Error('Cannot invoke "'+e+'". Expected a function!');e=Ze(e.slice())}return{fn:e,dependencies:(e.$inject||tt(e)).map((function(e){return Xe(t,e)?t[e]:s(e)}))}},p=function(e){var t=c(e),n=t.fn,i=t.dependencies;return new(Function.prototype.bind.apply(n,[null].concat(i)))},l=function(e,t,n){var i=c(e,n),r=i.fn,o=i.dependencies;return r.apply(t,o)},u=function(e){return Ze((function(t){return e.get(t)}))},h={factory:l,type:p,value:function(e){return e}};e.forEach((function(e){function t(e,t){return"value"!==e&&Ye(t)&&(t=Ze(t.slice())),t}if(e instanceof nt)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"==typeof 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=Ze((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=l,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),l=[],h=[],d=[];for(var f in i)n=i[f],-1!==t.indexOf(f)&&("private"===n[2]?-1===(r=l.indexOf(n[3]))?(a=n[3].createChild([],t),s=u(a),l.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){var n=this;t=t||1e3,e.on(["render.shape","render.connection"],t,(function(e,t){var i=e.type,r=t.element,o=t.gfx,a=t.attrs;if(n.canRender(r))return"render.shape"===i?n.drawShape(o,r,a):n.drawConnection(o,r,a)})),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 ot(e){return e.join(",").replace(/,?([A-z]),?/g,"$1")}function at(e){for(var t,n="",i=0;t=e[i];i++)n+=t.x+","+t.y+" ";return n}function st(e,t){var n=Oe("polyline");return Ee(n,{points:at(e)}),t&&Ee(n,t),n}function ct(e){return g(e,(function(t){return!y(e,(function(e){return e!==t&&pt(t,e)}))}))}function pt(e,t){if(t){if(e===t)return t;if(e.parent)return pt(e.parent,t)}}function lt(e,t,n){var i=!n||-1===e.indexOf(t);return i&&e.push(t),i}function ut(e,t,n){n=n||0,u(e)||(e=[e]),b(e,(function(e,i){var r=t(e,i,n);u(r)&&r.length&&ut(r,t,n+1)}))}function ht(e,t){return function(e,t,n){var i=[],r=[];return ut(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 dt(e,t){var n,i,r,o;return t=!!t,u(e)||(e=[e]),b(e,(function(e){var a=e;e.waypoints&&!t&&(a=dt(e.waypoints,!0));var s=a.x,c=a.y,p=a.height||0,l=a.width||0;(s<n||void 0===n)&&(n=s),(c<i||void 0===i)&&(i=c),(s+l>r||void 0===r)&&(r=s+l),(c+p>o||void 0===o)&&(o=c+p)})),{x:n,y:i,height:o-i,width:r-n}}function ft(e){return"waypoints"in e?"connection":"x"in e?"shape":"root"}function mt(e){return!(!e||!e.isFrame)}function vt(e,t){return F({},e||{},t||{})}rt.prototype.canRender=function(){},rt.prototype.drawShape=function(){},rt.prototype.drawConnection=function(){},rt.prototype.getShapePath=function(){},rt.prototype.getConnectionPath=function(){};function yt(e,t){rt.call(this,e,1),this.CONNECTION_STYLE=t.style(["no-fill"],{strokeWidth:5,stroke:"fuchsia"}),this.SHAPE_STYLE=t.style({fill:"white",stroke:"fuchsia",strokeWidth:2}),this.FRAME_STYLE=t.style(["no-fill"],{stroke:"fuchsia",strokeDasharray:4,strokeWidth:2})}n(yt,rt),yt.prototype.canRender=function(){return!0},yt.prototype.drawShape=function(e,t,n){var i=Oe("rect");return Ee(i,{x:0,y:0,width:t.width||0,height:t.height||0}),mt(t)?Ee(i,F({},this.FRAME_STYLE,n||{})):Ee(i,F({},this.SHAPE_STYLE,n||{})),be(e,i),i},yt.prototype.drawConnection=function(e,t,n){var i=st(t.waypoints,F({},this.CONNECTION_STYLE,n||{}));return be(e,i),i},yt.prototype.getShapePath=function(e){var t=e.x,n=e.y,i=e.width;return ot([["M",t,n],["l",i,0],["l",0,e.height],["l",-i,0],["z"]])},yt.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 ot(r)},yt.$inject=["eventBus","styles"];var gt={__init__:["defaultRenderer"],defaultRenderer:["type",yt],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){u(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 u(n)||(i=n,n=[]),t.style(n||[],F({},i,e||{}))}}]},bt=Object.prototype.toString,xt=Object.prototype.hasOwnProperty;function _t(e,t){return xt.call(e,t)}function Et(e,t){var n;if(void 0!==e){var i=function(e){return"[object Array]"===bt.call(e)}(e)?St:wt;for(var r in e)if(_t(e,r)&&!1===t(n=e[r],i(r)))return n}}function wt(e){return e}function St(e){return Number(e)}function Ct(e){for(var t=e.style,n=arguments.length,i=Array(n>1?n-1:0),r=1;r<n;r++)i[r-1]=arguments[r];return Et(i,(function(e){e&&Et(e,(function(e,n){t[n]=e}))})),e}function Rt(e,t,n){return 2==arguments.length?e.getAttribute(t):null===n?e.removeAttribute(t):(e.setAttribute(t,n),e)}var Tt=[].indexOf,Pt=function(e,t){if(Tt)return e.indexOf(t);for(var n=0;n<e.length;++n)if(e[n]===t)return n;return-1},At=/\s+/,Mt=Object.prototype.toString;function kt(e){return new Dt(e)}function Dt(e){if(!e||!e.nodeType)throw new Error("A DOM element reference is required");this.el=e,this.list=e.classList}function Bt(e){for(var t;e.childNodes.length;)t=e.childNodes[0],e.removeChild(t);return e}Dt.prototype.add=function(e){if(this.list)return this.list.add(e),this;var t=this.array();return~Pt(t,e)||t.push(e),this.el.className=t.join(" "),this},Dt.prototype.remove=function(e){if("[object RegExp]"==Mt.call(e))return this.removeMatching(e);if(this.list)return this.list.remove(e),this;var t=this.array(),n=Pt(t,e);return~n&&t.splice(n,1),this.el.className=t.join(" "),this},Dt.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},Dt.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)},Dt.prototype.array=function(){var e=(this.el.getAttribute("class")||"").replace(/^\s+|\s+$/g,"").split(At);return""===e[0]&&e.shift(),e},Dt.prototype.has=Dt.prototype.contains=function(e){return this.list?this.list.contains(e):!!~Pt(this.array(),e)};var Nt="undefined"!=typeof Element?Element.prototype:{},Ot=Nt.matches||Nt.matchesSelector||Nt.webkitMatchesSelector||Nt.mozMatchesSelector||Nt.msMatchesSelector||Nt.oMatchesSelector,jt=function(e,t){if(!e||1!==e.nodeType)return!1;if(Ot)return Ot.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 Lt(e,t,n){for(var i=n?e:e.parentNode;i&&i.nodeType!==document.DOCUMENT_NODE&&i.nodeType!==document.DOCUMENT_FRAGMENT_NODE;){if(jt(i,t))return i;i=i.parentNode}return jt(i,t)?i:null}var It=window.addEventListener?"addEventListener":"attachEvent",zt=window.removeEventListener?"removeEventListener":"detachEvent",Ft="addEventListener"!==It?"on":"",$t={bind:function(e,t,n,i){return e[It](Ft+t,n,i||!1),n},unbind:function(e,t,n,i){return e[zt](Ft+t,n,i||!1),n}},Ht=["focus","blur"];var Gt,Vt={bind:function(e,t,n,i,r){return-1!==Ht.indexOf(n)&&(r=!0),$t.bind(e,n,(function(n){var r=n.target||n.srcElement;n.delegateTarget=Lt(r,t,!0),n.delegateTarget&&i.call(e,n)}),r)},unbind:function(e,t,n,i){return-1!==Ht.indexOf(t)&&(i=!0),$t.unbind(e,t,n,i)}},Wt=function(e,t){if("string"!=typeof e)throw new TypeError("String expected");t||(t=document);var n=/<([\w:]+)/.exec(e);if(!n)return t.createTextNode(e);e=e.replace(/^\s+|\s+$/g,"");var i=n[1];if("body"==i){return(r=t.createElement("html")).innerHTML=e,r.removeChild(r.lastChild)}var r,o=qt[i]||qt._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},Ut=!1;"undefined"!=typeof document&&((Gt=document.createElement("div")).innerHTML=' <link/><table></table><a href="/a">a</a><input type="checkbox"/>',Ut=!Gt.getElementsByTagName("link").length,Gt=void 0);var qt={legend:[1,"<fieldset>","</fieldset>"],tr:[2,"<table><tbody>","</tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],_default:Ut?[1,"X<div>","</div>"]:[0,"",""]};function Kt(e,t){return(t=t||document).querySelector(e)}function Yt(e,t){return(t=t||document).querySelectorAll(e)}function Xt(e){e.parentNode&&e.parentNode.removeChild(e)}function Zt(e,t){if(!e||!t)return-1;var n=e.indexOf(t);return-1!==n&&e.splice(n,1),n}function Qt(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 Jt(e,t){return e&&t?e.indexOf(t):-1}function en(e,t){return e&&t?Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2)):-1}function tn(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=en(e,t);return Math.abs(r/o)<=i}qt.td=qt.th=[3,"<table><tbody><tr>","</tr></tbody></table>"],qt.option=qt.optgroup=[1,'<select multiple="multiple">',"</select>"],qt.thead=qt.tbody=qt.colgroup=qt.caption=qt.tfoot=[1,"<table>","</table>"],qt.polyline=qt.ellipse=qt.polygon=qt.circle=qt.text=qt.line=qt.path=qt.rect=qt.g=[1,'<svg xmlns="http://www.w3.org/2000/svg" version="1.1">',"</svg>"];function nn(e,t){var n;return function(e,t){var n;n=u(e)?e:[e,t];var i=n.slice().shift();return E(n,(function(e){return Math.abs(i.y-e.y)<=2}))}(n=u(e)?e:[e,t])?"h":!!function(e,t){var n;n=u(e)?e:[e,t];var i=n.slice().shift();return E(n,(function(e){return Math.abs(i.x-e.x)<=2}))}(n)&&"v"}function rn(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 on(e,t){return{x:Math.round(e.x+(t.x-e.x)/2),y:Math.round(e.y+(t.y-e.y)/2)}}
|
|
3
3
|
/**
|
|
4
4
|
* This file contains source code adapted from Snap.svg (licensed Apache-2.0).
|
|
5
5
|
*
|
|
6
6
|
* @see https://github.com/adobe-webplatform/Snap.svg/blob/master/src/path.js
|
|
7
|
-
*/var wt=/,?([a-z]),?/gi,St=parseFloat,Ct=Math,Rt=Ct.PI,Tt=Ct.min,Pt=Ct.max,At=Ct.pow,kt=Ct.abs,Mt=/([a-z])[\s,]*((-?\d*\.?\d*(?:e[-+]?\d+)?[\s]*,?[\s]*)+)/gi,Dt=/(-?\d*\.?\d*(?:e[-+]?\d+)?)[\s]*,?[\s]*/gi,Bt=Array.isArray||function(e){return e instanceof Array};function Nt(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function Ot(e){if("function"==typeof e||Object(e)!==e)return e;var t=new e.constructor;for(var n in e)Nt(e,n)&&(t[n]=Ot(e[n]));return t}function jt(e,t){for(var n=0,i=e.length;n<i;n++)if(e[n]===t)return e.push(e.splice(n,1)[0])}function Lt(e){var t=Lt.ps=Lt.ps||{};return t[e]?t[e].sleep=100:t[e]={sleep:100},setTimeout((function(){for(var n in t)Nt(t,n)&&n!=e&&(t[n].sleep--,!t[n].sleep&&delete t[n])})),t[e]}function It(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 zt(){return this.join(",").replace(wt,"$1")}function Ft(e){var t=Ot(e);return t.toString=zt,t}function $t(e,t,n,i,r,o,a,s,c){var p=1-c,l=At(p,3),u=At(p,2),h=c*c*c,d=l*t+3*u*c*i+3*p*c*c*o+h*s;return{x:qt(l*e+3*u*c*n+3*p*c*c*r+h*a),y:qt(d)}}function Ht(e){var t=en.apply(null,e);return It(t.x0,t.y0,t.x1-t.x0,t.y1-t.y0)}function Gt(e,t,n){return t>=e.x&&t<=e.x+e.width&&n>=e.y&&n<=e.y+e.height}function Wt(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 Vt(e,t,n,i,r,o,a,s,c){null==c&&(c=1);for(var p=(c=c>1?1:c<0?0:c)/2,l=[-.1252,.1252,-.3678,.3678,-.5873,.5873,-.7699,.7699,-.9041,.9041,-.9816,.9816],u=[.2491,.2491,.2335,.2335,.2032,.2032,.1601,.1601,.1069,.1069,.0472,.0472],h=0,d=0;d<12;d++){var f=p*l[d]+p,m=Wt(f,e,n,r,a),v=Wt(f,t,i,o,s),y=m*m+v*v;h+=u[d]*Ct.sqrt(y)}return p*h}function Ut(e,t,n,i,r,o,a,s){if(!(Pt(e,n)<Tt(r,a)||Tt(e,n)>Pt(r,a)||Pt(t,i)<Tt(o,s)||Tt(t,i)>Pt(o,s))){var c=(e*i-t*n)*(o-s)-(t-i)*(r*s-o*a),p=(e-n)*(o-s)-(t-i)*(r-a);if(p){var l=qt(((e*i-t*n)*(r-a)-(e-n)*(r*s-o*a))/p),u=qt(c/p),h=+l.toFixed(2),d=+u.toFixed(2);if(!(h<+Tt(e,n).toFixed(2)||h>+Pt(e,n).toFixed(2)||h<+Tt(r,a).toFixed(2)||h>+Pt(r,a).toFixed(2)||d<+Tt(t,i).toFixed(2)||d>+Pt(t,i).toFixed(2)||d<+Tt(o,s).toFixed(2)||d>+Pt(o,s).toFixed(2)))return{x:l,y:u}}}}function qt(e){return Math.round(1e11*e)/1e11}function Kt(e,t,n){if(!function(e,t){return e=It(e),Gt(t=It(t),e.x,e.y)||Gt(t,e.x2,e.y)||Gt(t,e.x,e.y2)||Gt(t,e.x2,e.y2)||Gt(e,t.x,t.y)||Gt(e,t.x2,t.y)||Gt(e,t.x,t.y2)||Gt(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)}(Ht(e),Ht(t)))return n?0:[];for(var i=Vt.apply(0,e),r=Vt.apply(0,t),o=Xt(e)?1:~~(i/5)||1,a=Xt(t)?1:~~(r/5)||1,s=[],c=[],p={},l=n?0:[],u=0;u<o+1;u++){var h=$t.apply(0,e.concat(u/o));s.push({x:h.x,y:h.y,t:u/o})}for(u=0;u<a+1;u++)h=$t.apply(0,t.concat(u/a)),c.push({x:h.x,y:h.y,t:u/a});for(u=0;u<o;u++)for(var d=0;d<a;d++){var f,m=s[u],v=s[u+1],y=c[d],g=c[d+1],b=kt(v.x-m.x)<.01?"y":"x",x=kt(g.x-y.x)<.01?"y":"x",_=Ut(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+kt((_[b]-m[b])/(v[b]-m[b]))*(v.t-m.t),w=y.t+kt((_[x]-y[x])/(g[x]-y[x]))*(g.t-y.t);E>=0&&E<=1&&w>=0&&w<=1&&(n?l++:l.push({x:_.x,y:_.y,t1:E,t2:w}))}}return l}function Yt(e){var t=Lt(e);if(t.abs)return Ft(t.abs);if(Bt(e)&&Bt(e&&e[0])||(e=function(e){if(!e)return null;var t=Lt(e);if(t.arr)return Ot(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 Bt(e)&&Bt(e[0])&&(i=Ot(e)),i.length||String(e).replace(Mt,(function(e,t,r){var o=[],a=t.toLowerCase();for(r.replace(Dt,(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=Lt.toString,t.arr=Ot(i),i}(e)),!e||!e.length)return[["M",0,0]];var n,i=[],r=0,o=0,a=0,s=0,c=0;"M"==e[0][0]&&(a=r=+e[0][1],s=o=+e[0][2],c++,i[0]=["M",r,o]);for(var p,l,u=c,h=e.length;u<h;u++){if(i.push(p=[]),(n=(l=e[u])[0])!=n.toUpperCase())switch(p[0]=n.toUpperCase(),p[0]){case"A":p[1]=l[1],p[2]=l[2],p[3]=l[3],p[4]=l[4],p[5]=l[5],p[6]=+l[6]+r,p[7]=+l[7]+o;break;case"V":p[1]=+l[1]+o;break;case"H":p[1]=+l[1]+r;break;case"M":a=+l[1]+r,s=+l[2]+o;default:for(var d=1,f=l.length;d<f;d++)p[d]=+l[d]+(d%2?r:o)}else for(var m=0,v=l.length;m<v;m++)p[m]=l[m];switch(n=n.toUpperCase(),p[0]){case"Z":r=+a,o=+s;break;case"H":r=p[1];break;case"V":o=p[1];break;case"M":a=p[p.length-2],s=p[p.length-1];default:r=p[p.length-2],o=p[p.length-1]}}return i.toString=zt,t.abs=Ft(i),i}function Xt(e){return e[0]===e[2]&&e[1]===e[3]&&e[4]===e[6]&&e[5]===e[7]}function Zt(e,t,n,i){return[e,t,n,i,n,i]}function Qt(e,t,n,i,r,o){var a=1/3,s=2/3;return[a*e+s*n,a*t+s*i,a*r+s*n,a*o+s*i,r,o]}function Jt(e,t,n,i,r,o,a,s,c,p){var l,u,h=120*Rt/180,d=Rt/180*(+r||0),f=[],m=(u=function(e,t,n){return{x:e*Ct.cos(n)-t*Ct.sin(n),y:e*Ct.sin(n)+t*Ct.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 Nt(i,n)?(jt(r,n),i[n]):(r.length>=1e3&&delete i[r.shift()],r.push(n),i[n]=u.apply(0,t),i[n])});if(p)S=p[0],C=p[1],E=p[2],w=p[3];else{e=(l=m(e,t,-d)).x,t=l.y;var v=(e-(s=(l=m(s,c,-d)).x))/2,y=(t-(c=l.y))/2,g=v*v/(n*n)+y*y/(i*i);g>1&&(n*=g=Ct.sqrt(g),i*=g);var b=n*n,x=i*i,_=(o==a?-1:1)*Ct.sqrt(kt((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=Ct.asin(((t-w)/i).toFixed(9)),C=Ct.asin(((c-w)/i).toFixed(9));(S=e<E?Rt-S:S)<0&&(S=2*Rt+S),(C=s<E?Rt-C:C)<0&&(C=2*Rt+C),a&&S>C&&(S-=2*Rt),!a&&C>S&&(C-=2*Rt)}var R=C-S;if(kt(R)>h){var T=C,P=s,A=c;C=S+h*(a&&C>S?1:-1),f=Jt(s=E+n*Ct.cos(C),c=w+i*Ct.sin(C),n,i,r,0,a,P,A,[C,T,E,w])}R=C-S;var k=Ct.cos(S),M=Ct.sin(S),D=Ct.cos(C),B=Ct.sin(C),N=Ct.tan(R/4),O=4/3*n*N,j=4/3*i*N,L=[e,t],I=[e+O*M,t-j*k],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 en(e,t,n,i,r,o,a,s){for(var c,p,l,u,h,d,f,m,v=[],y=[[],[]],g=0;g<2;++g)if(0==g?(p=6*e-12*n+6*r,c=-3*e+9*n-9*r+3*a,l=3*n-3*e):(p=6*t-12*i+6*o,c=-3*t+9*i-9*o+3*s,l=3*i-3*t),kt(c)<1e-12){if(kt(p)<1e-12)continue;0<(u=-l/p)&&u<1&&v.push(u)}else f=p*p-4*l*c,m=Ct.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));for(var b,x=v.length,_=x;x--;)b=1-(u=v[x]),y[0][x]=b*b*b*e+3*b*b*u*n+3*b*u*u*r+u*u*u*a,y[1][x]=b*b*b*t+3*b*b*u*i+3*b*u*u*o+u*u*u*s;return y[0][_]=e,y[1][_]=t,y[0][_+1]=a,y[1][_+1]=s,y[0].length=y[1].length=_+2,{x0:Tt.apply(0,y[0]),y0:Tt.apply(0,y[1]),x1:Pt.apply(0,y[0]),y1:Pt.apply(0,y[1])}}function tn(e){var t=Lt(e);if(t.curve)return Ft(t.curve);for(var n=Yt(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(Jt.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(Qt(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(Qt(t.x,t.y,e[1],e[2],e[3],e[4]));break;case"L":e=["C"].concat(Zt(t.x,t.y,e[1],e[2]));break;case"H":e=["C"].concat(Zt(t.x,t.y,e[1],t.y));break;case"V":e=["C"].concat(Zt(t.x,t.y,t.x,e[1]));break;case"Z":e=["C"].concat(Zt(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),l=n.length}},a=[],s="",c="",p=0,l=n.length;p<l;p++){n[p]&&(s=n[p][0]),"C"!=s&&(a[p]=s,p&&(c=a[p-1])),n[p]=r(n[p],i,c),"A"!=a[p]&&"C"==s&&(a[p]="C"),o(n,p);var u=n[p],h=u.length;i.x=u[h-2],i.y=u[h-1],i.bx=St(u[h-4])||i.x,i.by=St(u[h-3])||i.y}return t.curve=Ft(n),n}var nn=function(e,t,n){e=tn(e),t=tn(t);for(var i,r,o,a,s,c,p,l,u,h,d=n?0:[],f=0,m=e.length;f<m;f++){var v=e[f];if("M"==v[0])i=s=v[1],r=c=v[2];else{"C"==v[0]?(u=[i,r].concat(v.slice(1)),i=u[6],r=u[7]):(u=[i,r,i,r,s,c,s,c],i=s,r=c);for(var y=0,g=t.length;y<g;y++){var b=t[y];if("M"==b[0])o=p=b[1],a=l=b[2];else{"C"==b[0]?(h=[o,a].concat(b.slice(1)),o=h[6],a=h[7]):(h=[o,a,o,a,p,l,p,l],o=p,a=l);var x=Kt(u,h,n);if(n)d+=x;else{for(var _=0,E=x.length;_<E;_++)x[_].segment1=f,x[_].segment2=y,x[_].bez1=u,x[_].bez2=h;d=d.concat(x)}}}}}return d};function rn(e){return{x:Math.round(e.x),y:Math.round(e.y),width:Math.round(e.width),height:Math.round(e.height)}}function on(e){return{x:Math.round(e.x),y:Math.round(e.y)}}function an(e){return{top:e.y,right:e.x+(e.width||0),bottom:e.y+(e.height||0),left:e.x}}function sn(e){return{x:e.left,y:e.top,width:e.right-e.left,height:e.bottom-e.top}}function cn(e){return on({x:e.x+(e.width||0)/2,y:e.y+(e.height||0)/2})}function pn(e,t,n){h(n=n||0)||(n={x:n,y:n});var i=an(e),r=an(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 ln(e,t,n){var i=nn(e,t);return 1===i.length||2===i.length&>(i[0],i[1])<1?on(i[0]):i.length>1?on((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 un(e,t){return Math.round(e*t)/t}function hn(e){return d(e)?e+"px":e}function dn(e,t,n){var i=Me("g");we(i).add(t);var r=void 0!==n?n:e.childNodes.length-1;return e.insertBefore(i,e.childNodes[r]||null),i}var fn={shape:["x","y","width","height"],connection:["waypoints"]};function mn(e,t,n,i){this._eventBus=t,this._elementRegistry=i,this._graphicsFactory=n,this._rootsIdx=0,this._layers={},this._planes=[],this._rootElement=null,this._init(e||{})}function vn(e,t){var n="matrix("+t.a+","+t.b+","+t.c+","+t.d+","+t.e+","+t.f+")";e.setAttribute("transform",n)}mn.$inject=["config.canvas","eventBus","graphicsFactory","elementRegistry"],mn.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:hn(e.width),height:hn(e.height)}),t.appendChild(n),n}(e),i=this._svg=Me("svg");ge(i,{width:"100%",height:"100%"}),me(n,i);var r=this._viewport=dn(i,"viewport");!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","root.set"],(function(){delete this._cachedViewbox}),this),t.on("diagram.destroy",500,this._destroy,this),t.on("diagram.clear",500,this._clear,this)},mn.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._planes,delete this._rootElement,delete this._viewport},mn.prototype._clear=function(){var e=this;this._elementRegistry.getAll().forEach((function(t){var n=lt(t);"root"===n?e.removeRootElement(t):e._removeElement(t,n)})),this._planes=[],this._rootElement=null,delete this._cachedViewbox},mn.prototype.getDefaultLayer=function(){return this.getLayer("base",0)},mn.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},mn.prototype._getChildIndex=function(e){return _(this._layers,(function(t,n){return n.visible&&e>=n.index&&t++,t}),0)},mn.prototype._createLayer=function(e,t){void 0===t&&(t=1);var n=this._getChildIndex(t);return{group:dn(this._viewport,"layer-"+e,n),index:t,visible:!0}},mn.prototype.showLayer=function(e){if(!e)throw new Error("must specify a name");var t=this._layers[e];if(!t)throw new Error("layer <"+e+"> does not exist");var n=this._viewport,i=t.group,r=t.index;if(t.visible)return i;var o=this._getChildIndex(r);return n.insertBefore(i,n.childNodes[o]||null),t.visible=!0,i},mn.prototype.hideLayer=function(e){if(!e)throw new Error("must specify a name");var t=this._layers[e];if(!t)throw new Error("layer <"+e+"> does not exist");var n=t.group;return t.visible?(Ce(n),t.visible=!1,n):n},mn.prototype._removeLayer=function(e){var t=this._layers[e];t&&(delete this._layers[e],Ce(t.group))},mn.prototype.getActiveLayer=function(){var e=this._findPlaneForRoot(this.getRootElement());return e?e.layer:null},mn.prototype.findRoot=function(e){if("string"==typeof e&&(e=this._elementRegistry.get(e)),e)return(this._findPlaneForRoot(function(e){for(;e.parent;)e=e.parent;return e}(e))||{}).rootElement},mn.prototype.getRootElements=function(){return this._planes.map((function(e){return e.rootElement}))},mn.prototype._findPlaneForRoot=function(e){return y(this._planes,(function(t){return t.rootElement===e}))},mn.prototype.getContainer=function(){return this._container},mn.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?we(e).add(t):we(e).remove(t))})),this._eventBus.fire("element.marker.update",{element:e,gfx:i.gfx,marker:t,add:!!n}))},mn.prototype.addMarker=function(e,t){this._updateMarker(e,t,!0)},mn.prototype.removeMarker=function(e,t){this._updateMarker(e,t,!1)},mn.prototype.hasMarker=function(e,t){return e.id||(e=this._elementRegistry.get(e)),we(this.getGraphics(e)).has(t)},mn.prototype.toggleMarker=function(e,t){this.hasMarker(e,t)?this.removeMarker(e,t):this.addMarker(e,t)},mn.prototype.getRootElement=function(){var e=this._rootElement;return e||this._planes.length?e:this.setRootElement(this.addRootElement(null))},mn.prototype.addRootElement=function(e){var t=this._rootsIdx++;e||(e={id:"__implicitroot_"+t,children:[],isImplicit:!0});var n=e.layer="root-"+t;this._ensureValid("root",e);var i=this.getLayer(n,0);return this.hideLayer(n),this._addRoot(e,i),this._planes.push({rootElement:e,layer:i}),e},mn.prototype.removeRootElement=function(e){if("string"==typeof e&&(e=this._elementRegistry.get(e)),this._findPlaneForRoot(e))return this._removeRoot(e),this._removeLayer(e.layer),this._planes=this._planes.filter((function(t){return t.rootElement!==e})),this._rootElement===e&&(this._rootElement=null),e},mn.prototype.setRootElement=function(e,t){if(p(t))throw new Error("override not supported");if(e!==this._rootElement){if(!e)throw new Error("rootElement required");return this._findPlaneForRoot(e)||(e=this.addRootElement(e)),this._setRoot(e),e}},mn.prototype._removeRoot=function(e){var t=this._elementRegistry,n=this._eventBus;n.fire("root.remove",{element:e}),n.fire("root.removed",{element:e}),t.remove(e)},mn.prototype._addRoot=function(e,t){var n=this._elementRegistry,i=this._eventBus;i.fire("root.add",{element:e}),n.add(e,t),i.fire("root.added",{element:e,gfx:t})},mn.prototype._setRoot=function(e,t){var n=this._rootElement;n&&(this._elementRegistry.updateGraphics(n,null,!0),this.hideLayer(n.layer)),e&&(t||(t=this._findPlaneForRoot(e).layer),this._elementRegistry.updateGraphics(e,this._svg,!0),this.showLayer(e.layer)),this._rootElement=e,this._eventBus.fire("root.set",{element:e})},mn.prototype._ensureValid=function(e,t){if(!t.id)throw new Error("element must have an id");if(this._elementRegistry.get(t.id))throw new Error("element <"+t.id+"> already exists");var n=fn[e];if(!E(n,(function(e){return void 0!==t[e]})))throw new Error("must supply { "+n.join(", ")+" } with "+e)},mn.prototype._setParent=function(e,t,n){vt(t.children,e,n),e.parent=t},mn.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},mn.prototype.addShape=function(e,t,n){return this._addElement("shape",e,t,n)},mn.prototype.addConnection=function(e,t,n){return this._addElement("connection",e,t,n)},mn.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),mt(e.parent&&e.parent.children,e),e.parent=null,r.fire(t+".removed",{element:e}),n.remove(e),e},mn.prototype.removeShape=function(e){return this._removeElement(e,"shape")},mn.prototype.removeConnection=function(e){return this._removeElement(e,"connection")},mn.prototype.getGraphics=function(e,t){return this._elementRegistry.getGraphics(e,t)},mn.prototype._changeViewbox=function(e){this._eventBus.fire("canvas.viewbox.changing"),e.apply(this),this._cachedViewbox=null,this._viewboxChanged()},mn.prototype._viewboxChanged=function(){this._eventBus.fire("canvas.viewbox.changed",{viewbox:this.viewbox()})},mn.prototype.viewbox=function(e){if(void 0===e&&this._cachedViewbox)return this._cachedViewbox;var t,n,i,r,o,a,s,c=this._viewport,p=this.getSize();return e?(this._changeViewbox((function(){o=Math.min(p.width/e.width,p.height/e.height);var t=this._svg.createSVGMatrix().scale(o).translate(-e.x,-e.y);Ge(c,t)})),e):(t=(i=this._rootElement?this.getActiveLayer():null)&&i.getBBox()||{},n=(r=Ge(c))?r.matrix:function(e,t,n,i,r,o){var a=De.createSVGMatrix();switch(arguments.length){case 0:return a;case 1:return Be(a,e);case 6:return Be(a,{a:e,b:t,c:n,d:i,e:r,f:o})}}(),o=un(n.a,1e3),a=un(-n.e||0,1e3),s=un(-n.f||0,1e3),e=this._cachedViewbox={x:a?a/o:0,y:s?s/o:0,width:p.width/o,height:p.height/o,scale:o,inner:{width:t.width||0,height:t.height||0,x:t.x||0,y:t.y||0},outer:p})},mn.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),vn(t,n)})),{x:n.e,y:n.f}},mn.prototype.scrollToElement=function(e,t){var n=100;"string"==typeof e&&(e=this._elementRegistry.get(e));var i=this.findRoot(e);i!==this.getRootElement()&&this.setRootElement(i),t||(t={}),"number"==typeof t&&(n=t),t={top:t.top||n,right:t.right||n,bottom:t.bottom||n,left:t.left||n};var r,o,a=pt(e),s=an(a),c=this.viewbox(),p=this.zoom();c.y+=t.top/p,c.x+=t.left/p,c.width-=(t.right+t.left)/p,c.height-=(t.bottom+t.top)/p;var l=an(c);if(a.width<c.width&&a.height<c.height){var u=Math.max(0,s.right-l.right),h=Math.min(0,s.left-l.left),d=Math.max(0,s.bottom-l.bottom),f=Math.min(0,s.top-l.top);r=u||h,o=d||f}else r=a.x-c.x,o=a.y-c.y;this.scroll({dx:-r*p,dy:-o*p})},mn.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)})),un(i.a,1e3)):this.viewbox(e).scale;var n,i},mn.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},mn.prototype._setZoom=function(e,t){var n,i,r,o,a=this._svg,s=this._viewport,c=a.createSVGMatrix(),p=a.createSVGPoint(),l=(i=s.getCTM()).a;return t?(n=F(p,t).matrixTransform(i.inverse()),r=c.translate(n.x,n.y).scale(1/l*e).translate(-n.x,-n.y),o=i.multiply(r)):o=c.scale(e),vn(this._viewport,o),o},mn.prototype.getSize=function(){return{width:this._container.clientWidth,height:this._container.clientHeight}},mn.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}},mn.prototype.resized=function(){delete this._cachedViewbox,this._eventBus.fire("canvas.resized")};var yn="data-element-id";function gn(e){this._elements={},this._eventBus=e}gn.$inject=["eventBus"],gn.prototype.add=function(e,t,n){var i=e.id;this._validateId(i),ge(t,yn,i),n&&ge(n,yn,i),this._elements[i]={element:e,gfx:t,secondaryGfx:n}},gn.prototype.remove=function(e){var t=this._elements,n=e.id||e,i=n&&t[n];i&&(ge(i.gfx,yn,""),i.secondaryGfx&&ge(i.secondaryGfx,yn,""),delete t[n])},gn.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)},gn.prototype.updateGraphics=function(e,t,n){var i=e.id||e,r=this._elements[i];return n?r.secondaryGfx=t:r.gfx=t,t&&ge(t,yn,i),t},gn.prototype.get=function(e){var t;t="string"==typeof e?e:e&&ge(e,yn);var n=this._elements[t];return n&&n.element},gn.prototype.filter=function(e){var t=[];return this.forEach((function(n,i){e(n,i)&&t.push(n)})),t},gn.prototype.find=function(e){for(var t=this._elements,n=Object.keys(t),i=0;i<n.length;i++){var r=t[n[i]],o=r.element;if(e(o,r.gfx))return o}},gn.prototype.getAll=function(){return this.filter((function(e){return e}))},gn.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)}))},gn.prototype.getGraphics=function(e,t){var n=e.id||e,i=this._elements[n];return i&&(t?i.secondaryGfx:i.gfx)},gn.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 bn={exports:{}},xn={};xn.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},xn.isExtended=function(e){return!0===e.__refs_collection};var _n=xn;function En(e,t,n){var i=_n.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 wn(e,t){if(!(this instanceof wn))return new wn(e,t);e.inverse=t,t.inverse=e,this.props={},this.props[e.name]=e,this.props[t.name]=t}wn.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?En(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)},wn.prototype.ensureRefsCollection=function(e,t){var n=e[t.name];return _n.isExtended(n)||En(this,t,e),n},wn.prototype.ensureBound=function(e,t){(function(e,t){return Object.prototype.hasOwnProperty.call(e,t.name||t)})(e,t)||this.bind(e,t)},wn.prototype.unset=function(e,t,n){e&&(this.ensureBound(e,t),t.collection?this.ensureRefsCollection(e,t).remove(n):e[t.name]=void 0)},wn.prototype.set=function(e,t,n){e&&(this.ensureBound(e,t),t.collection?this.ensureRefsCollection(e,t).add(n):e[t.name]=n)};var Sn=wn;bn.exports=Sn,bn.exports.Collection=xn;var Cn=bn.exports,Rn=new Cn({name:"children",enumerable:!0,collection:!0},{name:"parent"}),Tn=new Cn({name:"labels",enumerable:!0,collection:!0},{name:"labelTarget"}),Pn=new Cn({name:"attachers",collection:!0},{name:"host"}),An=new Cn({name:"outgoing",collection:!0},{name:"source"}),kn=new Cn({name:"incoming",collection:!0},{name:"target"});function Mn(){Object.defineProperty(this,"businessObject",{writable:!0}),Object.defineProperty(this,"label",{get:function(){return this.labels[0]},set:function(e){var t=this.label,n=this.labels;!e&&t?n.remove(t):n.add(e,0)}}),Rn.bind(this,"parent"),Tn.bind(this,"labels"),An.bind(this,"outgoing"),kn.bind(this,"incoming")}function Dn(){Mn.call(this),Rn.bind(this,"children"),Pn.bind(this,"host"),Pn.bind(this,"attachers")}function Bn(){Dn.call(this)}function Nn(){Dn.call(this),Tn.bind(this,"labelTarget")}function On(){Mn.call(this),An.bind(this,"source"),kn.bind(this,"target")}n(Dn,Mn),n(Bn,Dn),n(Nn,Dn),n(On,Mn);var jn={connection:On,shape:Dn,label:Nn,root:Bn};function Ln(){this._uid=12}Ln.prototype.createRoot=function(e){return this.create("root",e)},Ln.prototype.createLabel=function(e){return this.create("label",e)},Ln.prototype.createShape=function(e){return this.create("shape",e)},Ln.prototype.createConnection=function(e){return this.create("connection",e)},Ln.prototype.create=function(e,t){return(t=F({},t||{})).id||(t.id=e+"_"+this._uid++),function(e,t){var n=jn[e];if(!n)throw new Error("unknown type: <"+e+">");return F(new n,t)}(e,t)};var In=Array.prototype.slice;function zn(){this._listeners={},this.on("diagram.destroy",1,this._destroy,this)}function Fn(){}function $n(e){return e.childNodes[0]}function Hn(e,t,n,i,r){var o=Ne();o.setTranslate(t,n);var a=Ne();a.setRotate(i||0,0,0);var s=Ne();s.setScale(r||1,r||1),Ge(e,[o,a,s])}function Gn(e,t,n){var i=Ne();i.setTranslate(t,n),Ge(e,i)}function Wn(e,t){var n=Ne();n.setRotate(t,0,0),Ge(e,n)}function Vn(e,t){this._eventBus=e,this._elementRegistry=t}function Un(e,t,n){var i=n||t.firstChild;e!==i&&t.insertBefore(e,i)}zn.prototype.on=function(e,t,n,i){if(e=u(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})}))},zn.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(){o.__isTomb=!0;var t=n.apply(i,arguments);return r.off(e,o),t}o.__fn=n,this.on(e,t,o)},zn.prototype.off=function(e,t){e=u(e)?e:[e];var n=this;e.forEach((function(e){n._removeListener(e,t)}))},zn.prototype.createEvent=function(e){var t=new Fn;return t.init(e),t},zn.prototype.fire=function(e,t){var n,i,r,o;if(o=In.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 Fn?t:this.createEvent(t),o[0]=n;var a=n.type;e!==a&&(n.type=e);try{r=this._invokeListeners(n,o,i)}finally{e!==a&&(n.type=a)}return void 0===r&&n.defaultPrevented&&(r=!1),r}},zn.prototype.handleError=function(e){return!1===this.fire("error",{error:e})},zn.prototype._destroy=function(){this._listeners={}},zn.prototype._invokeListeners=function(e,t,n){for(var i;n&&!e.cancelBubble;)i=this._invokeListener(e,t,n),n=n.next;return i},zn.prototype._invokeListener=function(e,t,n){var i;if(n.callback.__isTomb)return i;try{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",e),e}return i},zn.prototype._addListener=function(e,t){var n,i=this._getListeners(e);if(i){for(;i;){if(i.priority<t.priority)return t.next=i,void(n?n.next=t:this._setListeners(e,t));n=i,i=i.next}n.next=t}else this._setListeners(e,t)},zn.prototype._getListeners=function(e){return this._listeners[e]},zn.prototype._setListeners=function(e,t){this._listeners[e]=t},zn.prototype._removeListener=function(e,t){var n,i,r,o=this._getListeners(e);if(t)for(;o;)n=o.next,(r=o.callback)!==t&&r.__fn!==t||(i?i.next=n:this._setListeners(e,n)),i=o,o=n;else this._setListeners(e,null)},Fn.prototype.stopPropagation=function(){this.cancelBubble=!0},Fn.prototype.preventDefault=function(){this.defaultPrevented=!0},Fn.prototype.init=function(e){F(this,e||{})},Vn.$inject=["eventBus","elementRegistry"],Vn.prototype._getChildrenContainer=function(e){var t,n=this._elementRegistry.getGraphics(e);return e.parent?(t=function(e){return e.parentNode.childNodes[1]}(n))||(we(t=Me("g")).add("djs-children"),me(n.parentNode,t)):t=n,t},Vn.prototype._clear=function(e){var t=$n(e);return X(t),t},Vn.prototype._createContainer=function(e,t,n,i){var r=Me("g");we(r).add("djs-group"),void 0!==n?Un(r,t,t.childNodes[n]):me(t,r);var o=Me("g");we(o).add("djs-element"),we(o).add("djs-"+e),i&&we(o).add("djs-frame"),me(r,o);var a=Me("g");return we(a).add("djs-visual"),me(o,a),o},Vn.prototype.create=function(e,t,n){var i=this._getChildrenContainer(t.parent);return this._createContainer(e,i,n,ut(t))},Vn.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){Un(n.getGraphics(e).parentNode,r)}))}}))},Vn.prototype.drawShape=function(e,t){return this._eventBus.fire("render.shape",{gfx:e,element:t})},Vn.prototype.getShapePath=function(e){return this._eventBus.fire("render.getShapePath",e)},Vn.prototype.drawConnection=function(e,t){return this._eventBus.fire("render.connection",{gfx:e,element:t})},Vn.prototype.getConnectionPath=function(e){return this._eventBus.fire("render.getConnectionPath",e)},Vn.prototype.update=function(e,t,n){if(t.parent){var i=this._clear(n);if("shape"===e)this.drawShape(i,t),Gn(n,t.x,t.y);else{if("connection"!==e)throw new Error("unknown type: "+e);this.drawConnection(i,t)}t.hidden?ge(n,"display","none"):ge(n,"display","block")}},Vn.prototype.remove=function(e){Ce(this._elementRegistry.getGraphics(e).parentNode)};var qn={__depends__:[ft],__init__:["canvas"],canvas:["type",mn],elementRegistry:["type",gn],elementFactory:["type",Ln],eventBus:["type",zn],graphicsFactory:["type",Vn]};function Kn(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 Je(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 Yn(e,t){this.injector=t=t||function(e){return Kn([{config:["value",e=e||{}]},qn].concat(e.modules||[]))}(e),this.get=t.get,this.invoke=t.invoke,this.get("eventBus").fire("diagram.init")}function Xn(){}function Zn(e,t){this.model=e,this.properties=t}Yn.prototype.destroy=function(){this.get("eventBus").fire("diagram.destroy")},Yn.prototype.clear=function(){this.get("eventBus").fire("diagram.clear")},Xn.prototype.get=function(e){return this.$model.properties.get(this,e)},Xn.prototype.set=function(e,t){this.$model.properties.set(this,e,t)},Zn.prototype.createType=function(e){var t=this.model,n=this.properties,i=Object.create(Xn.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 Qn={String:!0,Boolean:!0,Integer:!0,Real:!0,Element:!0},Jn={String:function(e){return e},Boolean:function(e){return"true"===e},Integer:function(e){return parseInt(e,10)},Real:function(e){return parseFloat(e)}};function ei(e,t){var n=Jn[e];return n?n(t):t}function ti(e){return!!Qn[e]}function ni(e){return!!Jn[e]}function ii(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 ri(e){this.ns=e,this.name=e.name,this.allTypes=[],this.allTypesByName={},this.properties=[],this.propertiesByName={}}function oi(e,t){this.packageMap={},this.typeMap={},this.packages=[],this.properties=t,b(e,I(this.registerPackage,this))}function ai(e,t,n){var i=t[n];if(i in e)throw new Error("package with "+n+" <"+i+"> already defined")}function si(e){this.model=e}function ci(e,t,n){Object.defineProperty(e,t.name,{enumerable:!t.isReference,writable:!0,value:n,configurable:!0})}function pi(e){this.properties=new si(this),this.factory=new Zn(this,this.properties),this.registry=new oi(e,this.properties),this.typeCache={}}ri.prototype.build=function(){return $(this,["ns","name","allTypes","allTypesByName","properties","propertiesByName","bodyProperty","idProperty"])},ri.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)},ri.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},ri.prototype.redefineProperty=function(e,t,n){var i=e.ns.prefix,r=t.split("#"),o=ii(r[0],i),a=ii(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},ri.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},ri.prototype.removeNamedProperty=function(e){var t=e.ns,n=this.propertiesByName;delete n[t.name],delete n[t.localName]},ri.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},ri.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},ri.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")},ri.prototype.hasProperty=function(e){return this.propertiesByName[e]},ri.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)},oi.prototype.getPackage=function(e){return this.packageMap[e]},oi.prototype.getPackages=function(){return this.packages},oi.prototype.registerPackage=function(e){e=F({},e);var t=this.packageMap;ai(t,e,"prefix"),ai(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)},oi.prototype.registerType=function(e,t){var n=ii((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=ii(e.name,n.prefix),i=t.name;ti(e.type)||(e.type=ii(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},oi.prototype.mapTypes=function(e,t,n){var i=ti(e.name)?{name:e.name}:this.typeMap[e.name],r=this;function o(e){return a(e,!0)}function a(n,i){var o=ii(n,ti(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)},oi.prototype.getEffectiveDescriptor=function(e){var t=ii(e),n=new ri(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},oi.prototype.definePackage=function(e,t){this.properties.define(e,"$pkg",{value:t})},si.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:ci(e,i,n):e.$attrs[t]=n},si.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&&ci(e,n,[]),e[i]},si.prototype.define=function(e,t,n){Object.defineProperty(e,t,n)},si.prototype.defineDescriptor=function(e,t){this.define(e,"$descriptor",{value:t})},si.prototype.defineModel=function(e,t){this.define(e,"$model",{value:t})},pi.prototype.create=function(e,t){var n=this.getType(e);if(!n)throw new Error("unknown type <"+e+">");return new n(t)},pi.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},pi.prototype.createAny=function(e,t,n){var i=ii(e),r={$type:e,$instanceOf:function(e){return e===this.$type}},o={name:e,isGeneric:!0,ns:{prefix:i.prefix,localName:i.localName,uri:t}};return this.properties.defineDescriptor(r,o),this.properties.defineModel(r,this),this.properties.define(r,"$parent",{enumerable:!1,writable:!0}),this.properties.define(r,"$instanceOf",{enumerable:!1,writable:!0}),b(n,(function(e,t){h(e)&&void 0!==e.value?r[e.name]=e.value:r[t]=e})),r},pi.prototype.getPackage=function(e){return this.registry.getPackage(e)},pi.prototype.getPackages=function(){return this.registry.getPackages()},pi.prototype.getElementDescriptor=function(e){return e.$descriptor},pi.prototype.hasType=function(e,t){return void 0===t&&(t=e,e=this),t in e.$model.getElementDescriptor(e).allTypesByName},pi.prototype.getPropertyDescriptor=function(e,t){return this.getElementDescriptor(e).propertiesByName[t]},pi.prototype.getTypeDescriptor=function(e){return this.registry.typeMap[e]};var li=String.fromCharCode,ui=Object.prototype.hasOwnProperty,hi=/&#(\d+);|&#x([0-9a-f]+);|&(\w+);/gi,di={amp:"&",apos:"'",gt:">",lt:"<",quot:'"'};function fi(e,t,n,i){return i?ui.call(di,i)?di[i]:"&"+i+";":li(t||parseInt(n,16))}function mi(e){return e.length>3&&-1!==e.indexOf("&")?e.replace(hi,fi):e}Object.keys(di).forEach((function(e){di[e.toUpperCase()]=di[e]}));var vi="xsi:type",yi="non-whitespace outside of root node";function gi(e){return new Error(e)}function bi(e){return"missing namespace for prefix <"+e+">"}function xi(e){return{get:e,enumerable:!0}}function _i(e){var t,n={};for(t in e)n[t]=e[t];return n}function Ei(e){return e+"$uri"}function wi(){return{line:0,column:0}}function Si(e){throw e}function Ci(e){if(!this)return new Ci(e);var t,n,i,r,o,a,s,c,p,l=e&&e.proxy,u=Si,h=wi,d=!1,f=!1,m=null,v=!1;function y(e){e instanceof Error||(e=gi(e)),m=e,u(e,h)}function g(e){o&&(e instanceof Error||(e=gi(e)),o(e,h))}this.on=function(e,p){if("function"!=typeof p)throw gi("required args <name, cb>");switch(e){case"openTag":n=p;break;case"text":t=p;break;case"closeTag":i=p;break;case"error":u=p;break;case"warn":o=p;break;case"cdata":r=p;break;case"attention":c=p;break;case"question":s=p;break;case"comment":a=p;break;default:throw gi("unsupported event: "+e)}return this},this.ns=function(e){if(void 0===e&&(e={}),"object"!=typeof e)throw gi("required args <nsMap={}>");var t,n={};for(t in e)n[t]=e[t];return n["http://www.w3.org/2001/XMLSchema-instance"]="xsi",f=!0,p=n,this},this.parse=function(e){if("string"!=typeof e)throw gi("required args <xml=string>");return m=null,function(e){var o,u,m,b,x,_,E,w,S,C,R,T=f?[]:null,P=f?function(e){var t,n,i={};for(t in e)i[n=e[t]]=n,i[Ei(n)]=t;return i}(p):null,A=[],k=0,M=!1,D=!1,B=0,N=0,O="",j=0;function L(){if(null!==R)return R;var e,t,n,i,r,o,a,s,c,l,u,h=f&&P.xmlns,m=f&&d?[]:null,v=j,y=O,b=y.length,x={},_={};e:for(;v<b;v++)if(c=!1,!(32===(l=y.charCodeAt(v))||l<14&&l>8)){for((l<65||l>122||l>90&&l<97)&&95!==l&&58!==l&&(g("illegal first char attribute name"),c=!0),u=v+1;u<b;u++)if(!((l=y.charCodeAt(u))>96&&l<123||l>64&&l<91||l>47&&l<59||46===l||45===l||95===l)){if(32===l||l<14&&l>8){g("missing attribute value"),v=u;continue e}if(61===l)break;g("illegal attribute name char"),c=!0}if("xmlns:xmlns"===(s=y.substring(v,u))&&(g("illegal declaration of xmlns"),c=!0),34===(l=y.charCodeAt(u+1)))-1===(u=y.indexOf('"',v=u+2))&&-1!==(u=y.indexOf("'",v))&&(g("attribute value quote missmatch"),c=!0);else if(39===l)-1===(u=y.indexOf("'",v=u+2))&&-1!==(u=y.indexOf('"',v))&&(g("attribute value quote missmatch"),c=!0);else for(g("missing attribute value quotes"),c=!0,u+=1;u<b&&!(32===(l=y.charCodeAt(u+1))||l<14&&l>8);u++);for(-1===u&&(g("missing closing quotes"),u=b,c=!0),c||(o=y.substring(v,u)),v=u;u+1<b&&!(32===(l=y.charCodeAt(u+1))||l<14&&l>8);u++)v===u&&(g("illegal character after attribute end"),c=!0);if(v=u+1,!c)if(s in _)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=mi(o),t=Ei(r),!(a=p[e])){if("xmlns"===r||t in P&&P[t]!==e)do{a="ns"+k++}while(void 0!==P[a]);else a=r;p[e]=a}P[r]!==a&&(i||(P=_i(P),i=!0),P[r]=a,"xmlns"===r&&(P[Ei(a)]=e,h=a),P[t]=e),x[s]=o;continue}m.push(s,o)}else-1!==(l=s.indexOf(":"))?(n=P[s.substring(0,l)])?((s=h===n?s.substr(l+1):n+s.substr(l))===vi&&(-1!==(l=o.indexOf(":"))?(n=o.substring(0,l),o=(n=P[n]||n)+o.substring(l)):o=h+":"+o),x[s]=o):g(bi(s.substring(0,l))):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!==(l=s.indexOf(":"))){if(!(n=P[s.substring(0,l)])){g(bi(s.substring(0,l)));continue}(s=h===n?s.substr(l+1):n+s.substr(l))===vi&&(-1!==(l=o.indexOf(":"))?(n=o.substring(0,l),o=(n=P[n]||n)+o.substring(l)):o=h+":"+o)}x[s]=o}return R=x}function I(){for(var t,n,i=/(\r\n|\r|\n)/g,r=0,o=0,a=0,s=N;B>=a&&(t=i.exec(e))&&!((s=t[0].length+t.index)>B);)r+=1,a=s;return-1==B?(o=s,n=e.substring(N)):0===N?n=e.substring(N,B):(o=B-a,n=-1==N?e.substring(B):e.substring(B,N+1)),{data:n,line:r,column:o}}h=I,l&&(C=Object.create({},{name:xi((function(){return w})),originalName:xi((function(){return S})),attrs:xi(L),ns:xi((function(){return P}))}));for(;-1!==N;){if(-1===(B=60===e.charCodeAt(N)?N:e.indexOf("<",N)))return A.length?y("unexpected end of file"):0===N?y("missing start tag"):void(N<e.length&&e.substring(N).trim()&&g(yi));if(N!==B)if(A.length){if(t&&(t(e.substring(N,B),mi,h),v))return}else if(e.substring(N,B).trim()&&(g(yi),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),mi,h),v))return;N+=3;continue}}if(63!==x){for(u=B+1;;u++){if(_=e.charCodeAt(u),isNaN(_))return N=-1,y("unclosed tag");if(34===_)u=-1!==(b=e.indexOf('"',u+1))?b:u;else if(39===_)u=-1!==(b=e.indexOf("'",u+1))?b:u;else if(62===_){N=u;break}}if(33!==x){if(R={},47===x){if(M=!1,D=!0,!A.length)return y("missing open tag");if(u=w=A.pop(),b=B+2+u.length,e.substring(B+2,b)!==u)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)?(u=w=e.substring(B+1,N-1),M=!0,D=!0):(u=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=u.length;b<m;b++)if(!((x=u.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=u.substring(0,b),R=null;break}return y("invalid nodeName")}D||A.push(w)}if(f){if(o=P,M&&(D||T.push(o),null===R&&(d=-1!==u.indexOf("xmlns",b))&&(j=b,O=u,L(),d=!1)),S=w,-1!==(x=w.indexOf(":"))){if(!(E=P[w.substring(0,x)]))return y("missing namespace on <"+S+">");w=w.substr(x+1)}else E=P.xmlns;E&&(w=E+":"+w)}if(M&&(j=b,O=u,n&&(l?n(C,mi,D,h):n(w,L,mi,D,h),v)))return;if(D){if(i&&(i(l?C:w,mi,M,h),v))return;f&&(P=M?o:T.pop())}N+=1}else{if(c&&(c(e.substring(B,N+1),mi,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=wi,v=!1,m},this.stop=function(){v=!0}}function Ri(e){return e.xml&&"lowerCase"===e.xml.tagAlias}var Ti={xsi:"http://www.w3.org/2001/XMLSchema-instance",xml:"http://www.w3.org/XML/1998/namespace"},Pi="xsi:type";function Ai(e){return e.xml&&e.xml.serialize}function ki(e){return Ai(e)===Pi}function Mi(e,t){return Ri(t)?e.prefix+":"+((n=e.localName).charAt(0).toUpperCase()+n.slice(1)):e.name;var n}function Di(e){return new Error(e)}function Bi(e){return e.$descriptor}function Ni(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 Di("expected element");var t,n=this.elementsById,i=Bi(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 Di("duplicate ID <"+t+">");n[t]=e}},this.addWarning=function(e){this.warnings.push(e)}}function Oi(){}function ji(){}function Li(){}function Ii(e,t){this.property=e,this.context=t}function zi(e,t){this.element=t,this.propertyDesc=e}function Fi(){}function $i(e,t,n){this.model=e,this.type=e.getType(t),this.context=n}function Hi(e,t,n){$i.call(this,e,t,n)}function Gi(e,t,n){this.model=e,this.context=n}function Wi(e){e instanceof pi&&(e={model:e}),F(this,{lax:!1},e)}Oi.prototype.handleEnd=function(){},Oi.prototype.handleText=function(){},Oi.prototype.handleNode=function(){},ji.prototype=Object.create(Oi.prototype),ji.prototype.handleNode=function(){return this},Li.prototype=Object.create(Oi.prototype),Li.prototype.handleText=function(e){this.body=(this.body||"")+e},Ii.prototype=Object.create(Li.prototype),Ii.prototype.handleNode=function(e){if(this.element)throw Di("expected no sub nodes");return this.element=this.createReference(e),this},Ii.prototype.handleEnd=function(){this.element.id=this.body},Ii.prototype.createReference=function(e){return{property:this.property.ns.name,id:""}},zi.prototype=Object.create(Li.prototype),zi.prototype.handleEnd=function(){var e=this.body||"",t=this.element,n=this.propertyDesc;e=ei(n.type,e),n.isMany?t.get(n.name).push(e):t.set(n.name,e)},Fi.prototype=Object.create(Li.prototype),Fi.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},$i.prototype=Object.create(Fi.prototype),$i.prototype.addReference=function(e){this.context.addReference(e)},$i.prototype.handleText=function(e){if(!Bi(this.element).bodyProperty)throw Di("unexpected body text <"+e+">");Li.prototype.handleText.call(this,e)},$i.prototype.handleEnd=function(){var e=this.body,t=this.element,n=Bi(t).bodyProperty;n&&void 0!==e&&(e=ei(n.type,e),t.set(n.name,e))},$i.prototype.createElement=function(e){var t,n=e.attributes,i=this.type,r=Bi(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=ei(i.type,e):"xmlns"!==n&&(t=ii(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},$i.prototype.getPropertyForNode=function(e){var t,n,i=ii(e.name),r=this.type,o=this.model,a=Bi(r),s=i.name,c=a.propertiesByName[s];if(c&&!c.isAttr)return ki(c)&&(t=e.attributes[Pi])?(t=function(e,t){var n=ii(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:Bi(n=o.getType(t)).name})):c;var p=o.getPackage(i.prefix);if(p){if(t=Mi(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:Bi(n).name})}else if(c=y(a.properties,(function(e){return!e.isReference&&!e.isAttribute&&"Element"===e.type})))return c;throw Di("unrecognized element <"+i.name+">")},$i.prototype.toString=function(){return"ElementDescriptor["+Bi(this.type).name+"]"},$i.prototype.valueHandler=function(e,t){return new zi(e,t)},$i.prototype.referenceHandler=function(e){return new Ii(e,this.context)},$i.prototype.handler=function(e){return"Element"===e?new Gi(this.model,e,this.context):new $i(this.model,e,this.context)},$i.prototype.handleChild=function(e){var t,n,i,r;if(t=this.getPropertyForNode(e),i=this.element,ni(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},Hi.prototype=Object.create($i.prototype),Hi.prototype.createElement=function(e){var t=e.name,n=ii(t),i=this.model,r=this.type,o=i.getPackage(n.prefix),a=o&&Mi(n,o)||t;if(!r.hasType(a))throw Di("unexpected element <"+e.originalName+">");return $i.prototype.createElement.call(this,e)},Gi.prototype=Object.create(Fi.prototype),Gi.prototype.createElement=function(e){var t=e.name,n=ii(t).prefix,i=e.ns[n+"$uri"],r=e.attributes;return this.model.createAny(t,i,r)},Gi.prototype.handleChild=function(e){var t=new Gi(this.model,"Element",this.context).handleNode(e),n=this.element,i=t.element;return void 0!==i&&((n.$children=n.$children||[]).push(i),i.$parent=n),t},Gi.prototype.handleEnd=function(){this.body&&(this.element.$body=this.body)},Wi.prototype.fromXML=function(e,t,n){var i=t.rootHandler;t instanceof $i?(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 Ni(F({},t,{rootHandler:i})),s=new Ci({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 Di(c)}function l(e,t){return p(e,t,!0)}i.context=a,c.push(i);var u=/^<\?xml /i,h=/ encoding="([^"]+)"/i,d=/^utf-8$/i;function f(e,t){try{c.peek().handleText(e)}catch(e){l(e,t)}}var m=r.getPackages().reduce((function(e,t){return e[t.uri]=t.prefix,e}),{"http://www.w3.org/XML/1998/namespace":"xml"});return s.ns(m).on("openTag",(function(e,t,n,i){var r=e.attrs||{},a=Object.keys(r).reduce((function(e,n){var i=t(r[n]);return e[n]=i,e}),{});!function(e,t){var n=c.peek();try{c.push(n.handleNode(e))}catch(e){p(e,t,o)&&c.push(new ji)}}({name:e.name,originalName:e.originalName,attributes:a,ns:e.ns},i)})).on("question",(function(e){if(u.test(e)){var t=h.exec(e),n=t&&t[1];n&&!d.test(n)&&a.addWarning({message:"unsupported document encoding <"+n+">, falling back to UTF-8"})}})).on("closeTag",(function(){c.pop().handleEnd()})).on("cdata",f).on("text",(function(e,t,n){!function(e,t){e.trim()&&f(e,t)}(t(e),n)})).on("error",p).on("warn",l),new Promise((function(t,n){var r;try{s.parse(e),function(){var e,t,n=a.elementsById,i=a.references;for(e=0;t=i[e];e++){var r=t.element,o=n[t.id],s=Bi(r).propertiesByName[t.property];if(o||a.addWarning({message:"unresolved reference <"+t.id+">",element:t.element,property:t.property,value:t.id}),s.isMany){var c=r.get(s.name),p=c.indexOf(t);-1===p&&(p=c.length),o?c[p]=o:c.splice(p,1)}else r.set(s.name,o)}}()}catch(e){r=e}var o=i.element;r||o||(r=Di("failed to parse document as <"+i.type.$descriptor.name+">"));var c=a.warnings,p=a.references,l=a.elementsById;return r?(r.warnings=c,n(r)):t({rootElement:o,elementsById:l,references:p,warnings:c})}))},Wi.prototype.handler=function(e){return new Hi(this.model,e)};var Vi=/<|>|'|"|&|\n\r|\n/g,Ui=/<|>|&/g;function qi(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 Ki(e,t){return Ri(t)?(n=e).charAt(0).toLowerCase()+n.slice(1):e;var n}function Yi(e,t){e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}})}function Xi(e){return m(e)?e:(e.prefix?e.prefix+":":"")+e.localName}var Zi={"\n":"#10","\n\r":"#10",'"':"#34","'":"#39","<":"#60",">":"#62","&":"#38"},Qi={"<":"lt",">":"gt","&":"amp"};function Ji(e,t,n){return(e=m(e)?e:""+e).replace(t,(function(e){return"&"+n[e]+";"}))}function er(e){this.tagName=e}function tr(){}function nr(e){this.tagName=e}function ir(e,t){this.body=[],this.attrs=[],this.parent=e,this.propertyDescriptor=t}function rr(e,t){ir.call(this,e,t)}function or(){this.value="",this.write=function(e){this.value+=e}}function ar(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 sr(e){return e=F({format:!1,preamble:!0},e||{}),{toXML:function(t,n){var i=n||new or,r=new ar(i,e.format);if(e.preamble&&r.append('<?xml version="1.0" encoding="UTF-8"?>\n'),(new ir).build(t).serializeTo(r),!n)return i.value}}}function cr(e,t){pi.call(this,e,t)}er.prototype.build=function(e){return this.element=e,this},er.prototype.serializeTo=function(e){e.appendIndent().append("<"+this.tagName+">"+this.element.id+"</"+this.tagName+">").appendNewLine()},tr.prototype.serializeValue=tr.prototype.serializeTo=function(e){e.append(this.escape?Ji(this.value,Ui,Qi):this.value)},tr.prototype.build=function(e,t){return this.value=t,"String"===e.type&&-1!==t.search(Ui)&&(this.escape=!0),this},Yi(nr,tr),nr.prototype.serializeTo=function(e){e.appendIndent().append("<"+this.tagName+">"),this.serializeValue(e),e.append("</"+this.tagName+">").appendNewLine()},ir.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(!v(e,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},ir.prototype.nsTagName=function(e){return function(e,t){return t.isGeneric?F({localName:t.ns.localName},e):F({localName:Ki(t.ns.localName,t.$pkg)},e)}(this.logNamespaceUsed(e.ns),e)},ir.prototype.nsPropertyTagName=function(e){return function(e,t){return F({localName:t.ns.localName},e)}(this.logNamespaceUsed(e.ns),e)},ir.prototype.isLocalNs=function(e){return e.uri===this.ns.uri},ir.prototype.nsAttributeName=function(e){var t;if(t=m(e)?ii(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)},ir.prototype.parseGeneric=function(e){var t=this,n=this.body,i=[];return b(e,(function(r,o){"$body"===o?n.push((new tr).build({type:"String"},r)):"$children"===o?b(r,(function(e){n.push(new ir(t).build(e))})):0!==o.indexOf("$")&&t.parseNsAttribute(e,o,r)&&i.push({name:o,value:r})})),i},ir.prototype.parseNsAttribute=function(e,t,n){var i,r=e.$model,o=ii(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)}},ir.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},ir.prototype.parseGenericAttributes=function(e,t){var n=this;b(t,(function(t){if(t.name!==Pi)try{n.addAttribute(n.nsAttributeName(t.name),t.value)}catch(n){console.warn("missing namespace information for ",t.name,"=",t.value,"on",e,n)}}))},ir.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 tr).build(e,r[0]));else if(ni(e.type))b(r,(function(i){n.push(new nr(t.addTagName(t.nsPropertyTagName(e))).build(e,i))}));else if(o)b(r,(function(i){n.push(new er(t.addTagName(t.nsPropertyTagName(e))).build(i))}));else{var a=ki(e),s=function(e){return"property"===Ai(e)}(e);b(r,(function(i){var r;r=a?new rr(t,e):s?new ir(t,e):new ir(t),n.push(r.build(i))}))}}))},ir.prototype.getNamespaces=function(e){var t,n=this.namespaces,i=this.parent;return n||(t=i&&i.getNamespaces(),e||!t?this.namespaces=n=new qi(t):n=t),n},ir.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},ir.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=Ti[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},ir.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)}))},ir.prototype.addTagName=function(e){var t=this.logNamespaceUsed(e);return this.getNamespaces().logUsed(t),Xi(e)},ir.prototype.addAttribute=function(e,t){var n=this.attrs;m(t)&&(t=Ji(t,Vi,Zi)),n.push({name:e,value:t})},ir.prototype.serializeAttributes=function(e){var t=this.attrs,n=this.namespaces;n&&(t=function(e){return e.getUsed().filter((function(e){return"xml"!==e.prefix})).map((function(e){return{name:"xmlns"+(e.prefix?":"+e.prefix:""),value:e.uri}}))}(n).concat(t)),b(t,(function(t){e.append(" ").append(Xi(t.name)).append('="').append(t.value).append('"')}))},ir.prototype.serializeTo=function(e){var t=this.body[0],n=t&&t.constructor!==tr;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()},Yi(rr,ir),rr.prototype.parseNsAttributes=function(e){var t=ir.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(Pi),(i.prefix?i.prefix+":":"")+o+n.ns.localName),t},rr.prototype.isLocalNs=function(e){return e.uri===(this.typeNs||this.ns).uri},cr.prototype=Object.create(pi.prototype),cr.prototype.fromXML=function(e,t,n){m(t)||(n=t,t="bpmn:Definitions");var i=new Wi(F({model:this,lax:!0},n)),r=i.handler(t);return i.fromXML(e,r)},cr.prototype.toXML=function(e,t){var n=new sr(t);return new Promise((function(t,i){try{return t({xml:n.toXML(e)})}catch(e){return i(e)}}))};var pr={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","InteractionNode"],properties:[{name:"calledElement",type:"String",isAttr:!0}]},{name:"Task",superClass:["Activity","InteractionNode"]},{name:"SendTask",superClass:["Task"],properties:[{name:"implementation",isAttr:!0,type:"String"},{name:"operationRef",type:"Operation",isAttr:!0,isReference:!0},{name:"messageRef",type:"Message",isAttr:!0,isReference:!0}]},{name:"ReceiveTask",superClass:["Task"],properties:[{name:"implementation",isAttr:!0,type:"String"},{name:"instantiate",default:!1,isAttr:!0,type:"Boolean"},{name:"operationRef",type:"Operation",isAttr:!0,isReference:!0},{name:"messageRef",type:"Message",isAttr:!0,isReference:!0}]},{name:"ScriptTask",superClass:["Task"],properties:[{name:"scriptFormat",isAttr:!0,type:"String"},{name:"script",type:"String"}]},{name:"BusinessRuleTask",superClass:["Task"],properties:[{name:"implementation",isAttr:!0,type:"String"}]},{name:"AdHocSubProcess",superClass:["SubProcess"],properties:[{name:"completionCondition",type:"Expression",xml:{serialize:"xsi:type"}},{name:"ordering",type:"AdHocOrdering",isAttr:!0},{name:"cancelRemainingInstances",default:!0,isAttr:!0,type:"Boolean"}]},{name:"Transaction",superClass:["SubProcess"],properties:[{name:"protocol",isAttr:!0,type:"String"},{name:"method",isAttr:!0,type:"String"}]},{name:"GlobalScriptTask",superClass:["GlobalTask"],properties:[{name:"scriptLanguage",isAttr:!0,type:"String"},{name:"script",isAttr:!0,type:"String"}]},{name:"GlobalBusinessRuleTask",superClass:["GlobalTask"],properties:[{name:"implementation",isAttr:!0,type:"String"}]},{name:"ComplexBehaviorDefinition",superClass:["BaseElement"],properties:[{name:"condition",type:"FormalExpression"},{name:"event",type:"ImplicitThrowEvent"}]},{name:"ResourceRole",superClass:["BaseElement"],properties:[{name:"resourceRef",type:"Resource",isReference:!0},{name:"resourceParameterBindings",type:"ResourceParameterBinding",isMany:!0},{name:"resourceAssignmentExpression",type:"ResourceAssignmentExpression"},{name:"name",isAttr:!0,type:"String"}]},{name:"ResourceParameterBinding",properties:[{name:"expression",type:"Expression",xml:{serialize:"xsi:type"}},{name:"parameterRef",type:"ResourceParameter",isAttr:!0,isReference:!0}],superClass:["BaseElement"]},{name:"ResourceAssignmentExpression",properties:[{name:"expression",type:"Expression",xml:{serialize:"xsi:type"}}],superClass:["BaseElement"]},{name:"Import",properties:[{name:"importType",isAttr:!0,type:"String"},{name:"location",isAttr:!0,type:"String"},{name:"namespace",isAttr:!0,type:"String"}]},{name:"Definitions",superClass:["BaseElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"targetNamespace",isAttr:!0,type:"String"},{name:"expressionLanguage",default:"http://www.w3.org/1999/XPath",isAttr:!0,type:"String"},{name:"typeLanguage",default:"http://www.w3.org/2001/XMLSchema",isAttr:!0,type:"String"},{name:"imports",type:"Import",isMany:!0},{name:"extensions",type:"Extension",isMany:!0},{name:"rootElements",type:"RootElement",isMany:!0},{name:"diagrams",isMany:!0,type:"bpmndi:BPMNDiagram"},{name:"exporter",isAttr:!0,type:"String"},{name:"relationships",type:"Relationship",isMany:!0},{name:"exporterVersion",isAttr:!0,type:"String"}]}],enumerations:[{name:"ProcessType",literalValues:[{name:"None"},{name:"Public"},{name:"Private"}]},{name:"GatewayDirection",literalValues:[{name:"Unspecified"},{name:"Converging"},{name:"Diverging"},{name:"Mixed"}]},{name:"EventBasedGatewayType",literalValues:[{name:"Parallel"},{name:"Exclusive"}]},{name:"RelationshipDirection",literalValues:[{name:"None"},{name:"Forward"},{name:"Backward"},{name:"Both"}]},{name:"ItemKind",literalValues:[{name:"Physical"},{name:"Information"}]},{name:"ChoreographyLoopType",literalValues:[{name:"None"},{name:"Standard"},{name:"MultiInstanceSequential"},{name:"MultiInstanceParallel"}]},{name:"AssociationDirection",literalValues:[{name:"None"},{name:"One"},{name:"Both"}]},{name:"MultiInstanceBehavior",literalValues:[{name:"None"},{name:"One"},{name:"All"},{name:"Complex"}]},{name:"AdHocOrdering",literalValues:[{name:"Parallel"},{name:"Sequential"}]}],xml:{tagAlias:"lowerCase",typePrefix:"t"}},bpmndi:{name:"BPMNDI",uri:"http://www.omg.org/spec/BPMN/20100524/DI",prefix:"bpmndi",types:[{name:"BPMNDiagram",properties:[{name:"plane",type:"BPMNPlane",redefines:"di:Diagram#rootElement"},{name:"labelStyle",type:"BPMNLabelStyle",isMany:!0}],superClass:["di:Diagram"]},{name:"BPMNPlane",properties:[{name:"bpmnElement",isAttr:!0,isReference:!0,type:"bpmn:BaseElement",redefines:"di:DiagramElement#modelElement"}],superClass:["di:Plane"]},{name:"BPMNShape",properties:[{name:"bpmnElement",isAttr:!0,isReference:!0,type:"bpmn:BaseElement",redefines:"di:DiagramElement#modelElement"},{name:"isHorizontal",isAttr:!0,type:"Boolean"},{name:"isExpanded",isAttr:!0,type:"Boolean"},{name:"isMarkerVisible",isAttr:!0,type:"Boolean"},{name:"label",type:"BPMNLabel"},{name:"isMessageVisible",isAttr:!0,type:"Boolean"},{name:"participantBandKind",type:"ParticipantBandKind",isAttr:!0},{name:"choreographyActivityShape",type:"BPMNShape",isAttr:!0,isReference:!0}],superClass:["di:LabeledShape"]},{name:"BPMNEdge",properties:[{name:"label",type:"BPMNLabel"},{name:"bpmnElement",isAttr:!0,isReference:!0,type:"bpmn:BaseElement",redefines:"di:DiagramElement#modelElement"},{name:"sourceElement",isAttr:!0,isReference:!0,type:"di:DiagramElement",redefines:"di:Edge#source"},{name:"targetElement",isAttr:!0,isReference:!0,type:"di:DiagramElement",redefines:"di:Edge#target"},{name:"messageVisibleKind",type:"MessageVisibleKind",isAttr:!0,default:"initiating"}],superClass:["di:LabeledEdge"]},{name:"BPMNLabel",properties:[{name:"labelStyle",type:"BPMNLabelStyle",isAttr:!0,isReference:!0,redefines:"di:DiagramElement#style"}],superClass:["di:Label"]},{name:"BPMNLabelStyle",properties:[{name:"font",type:"dc:Font"}],superClass:["di:Style"]}],enumerations:[{name:"ParticipantBandKind",literalValues:[{name:"top_initiating"},{name:"middle_initiating"},{name:"bottom_initiating"},{name:"top_non_initiating"},{name:"middle_non_initiating"},{name:"bottom_non_initiating"}]},{name:"MessageVisibleKind",literalValues:[{name:"initiating"},{name:"non_initiating"}]}],associations:[]},dc:{name:"DC",uri:"http://www.omg.org/spec/DD/20100524/DC",prefix:"dc",types:[{name:"Boolean"},{name:"Integer"},{name:"Real"},{name:"String"},{name:"Font",properties:[{name:"name",type:"String",isAttr:!0},{name:"size",type:"Real",isAttr:!0},{name:"isBold",type:"Boolean",isAttr:!0},{name:"isItalic",type:"Boolean",isAttr:!0},{name:"isUnderline",type:"Boolean",isAttr:!0},{name:"isStrikeThrough",type:"Boolean",isAttr:!0}]},{name:"Point",properties:[{name:"x",type:"Real",default:"0",isAttr:!0},{name:"y",type:"Real",default:"0",isAttr:!0}]},{name:"Bounds",properties:[{name:"x",type:"Real",default:"0",isAttr:!0},{name:"y",type:"Real",default:"0",isAttr:!0},{name:"width",type:"Real",isAttr:!0},{name:"height",type:"Real",isAttr:!0}]}],associations:[]},di:{name:"DI",uri:"http://www.omg.org/spec/DD/20100524/DI",prefix:"di",types:[{name:"DiagramElement",isAbstract:!0,properties:[{name:"id",isAttr:!0,isId:!0,type:"String"},{name:"extension",type:"Extension"},{name:"owningDiagram",type:"Diagram",isReadOnly:!0,isVirtual:!0,isReference:!0},{name:"owningElement",type:"DiagramElement",isReadOnly:!0,isVirtual:!0,isReference:!0},{name:"modelElement",isReadOnly:!0,isVirtual:!0,isReference:!0,type:"Element"},{name:"style",type:"Style",isReadOnly:!0,isVirtual:!0,isReference:!0},{name:"ownedElement",type:"DiagramElement",isReadOnly:!0,isMany:!0,isVirtual:!0}]},{name:"Node",isAbstract:!0,superClass:["DiagramElement"]},{name:"Edge",isAbstract:!0,superClass:["DiagramElement"],properties:[{name:"source",type:"DiagramElement",isReadOnly:!0,isVirtual:!0,isReference:!0},{name:"target",type:"DiagramElement",isReadOnly:!0,isVirtual:!0,isReference:!0},{name:"waypoint",isUnique:!1,isMany:!0,type:"dc:Point",xml:{serialize:"xsi:type"}}]},{name:"Diagram",isAbstract:!0,properties:[{name:"id",isAttr:!0,isId:!0,type:"String"},{name:"rootElement",type:"DiagramElement",isReadOnly:!0,isVirtual:!0},{name:"name",isAttr:!0,type:"String"},{name:"documentation",isAttr:!0,type:"String"},{name:"resolution",isAttr:!0,type:"Real"},{name:"ownedStyle",type:"Style",isReadOnly:!0,isMany:!0,isVirtual:!0}]},{name:"Shape",isAbstract:!0,superClass:["Node"],properties:[{name:"bounds",type:"dc:Bounds"}]},{name:"Plane",isAbstract:!0,superClass:["Node"],properties:[{name:"planeElement",type:"DiagramElement",subsettedProperty:"DiagramElement-ownedElement",isMany:!0}]},{name:"LabeledEdge",isAbstract:!0,superClass:["Edge"],properties:[{name:"ownedLabel",type:"Label",isReadOnly:!0,subsettedProperty:"DiagramElement-ownedElement",isMany:!0,isVirtual:!0}]},{name:"LabeledShape",isAbstract:!0,superClass:["Shape"],properties:[{name:"ownedLabel",type:"Label",isReadOnly:!0,subsettedProperty:"DiagramElement-ownedElement",isMany:!0,isVirtual:!0}]},{name:"Label",isAbstract:!0,superClass:["Node"],properties:[{name:"bounds",type:"dc:Bounds"}]},{name:"Style",isAbstract:!0,properties:[{name:"id",isAttr:!0,isId:!0,type:"String"}]},{name:"Extension",properties:[{name:"values",isMany:!0,type:"Element"}]}],associations:[],xml:{tagAlias:"lowerCase"}},bioc:{name:"bpmn.io colors for BPMN",uri:"http://bpmn.io/schema/bpmn/biocolor/1.0",prefix:"bioc",types:[{name:"ColoredShape",extends:["bpmndi:BPMNShape"],properties:[{name:"stroke",isAttr:!0,type:"String"},{name:"fill",isAttr:!0,type:"String"}]},{name:"ColoredEdge",extends:["bpmndi:BPMNEdge"],properties:[{name:"stroke",isAttr:!0,type:"String"},{name:"fill",isAttr:!0,type:"String"}]}],enumerations:[],associations:[]},color:{name:"BPMN in Color",uri:"http://www.omg.org/spec/BPMN/non-normative/color/1.0",prefix:"color",types:[{name:"ColoredLabel",extends:["bpmndi:BPMNLabel"],properties:[{name:"color",isAttr:!0,type:"String"}]},{name:"ColoredShape",extends:["bpmndi:BPMNShape"],properties:[{name:"background-color",isAttr:!0,type:"String"},{name:"border-color",isAttr:!0,type:"String"}]},{name:"ColoredEdge",extends:["bpmndi:BPMNEdge"],properties:[{name:"border-color",isAttr:!0,type:"String"}]}],enumerations:[],associations:[]}};function lr(e,t){return new cr(F({},pr,e),t)}function ur(e){return e?"<"+e.$type+(e.id?' id="'+e.id:"")+'" />':"<null>"}function hr(e){return function(){if(!window.Promise)throw new Error("Promises is not supported in this environment. Please polyfill Promise.");var t=arguments.length;if(!(t>=1&&f(arguments[t-1])))return e.apply(this,arguments);var n=arguments[t-1];console.warn(new Error("Passing callbacks to "+e.name+" is deprecated and will be removed in a future major release. Please switch to promises: https://bpmn.io/l/moving-to-promises.html"));var i=Array.prototype.slice.call(arguments,0,-1);e.apply(this,i).then((function(e){var t=Object.keys(e)[0];return n(null,e[t])}),(function(e){return n(e,e.warnings)}))}}function dr(e){v(e,"di")||Object.defineProperty(e,"di",{get:function(){throw new Error("Tried to access di from the businessObject. The di is available through the diagram element only. For more information, see https://github.com/bpmn-io/bpmn-js/issues/1472")}})}function fr(e,t){return e.$instanceOf(t)}function mr(e,t){var n={},i=[],r={};function o(e,t){return function(n){e(n,t)}}function a(e){n[e.id]=e}function s(n,i){try{var o=r[n.id]&&function(n,i){if(n.gfx)throw new Error(t("already rendered {element}",{element:ur(n)}));return e.element(n,r[n.id],i)}(n,i);return a(n),o}catch(e){c(e.message,{element:n,error:e}),console.error(t("failed to import {element}",{element:ur(n)})),console.error(e)}}function c(t,n){e.error(t,n)}function p(e){var n=e.bpmnElement;n?r[n.id]?c(t("multiple DI elements defined for {element}",{element:ur(n)}),{element:n}):(r[n.id]=e,dr(n)):c(t("no bpmnElement referenced in {element}",{element:ur(e)}),{element:e})}function l(e){var t;p(t=e.plane),b(t.planeElement,u)}function u(e){p(e)}function h(){for(;i.length;)i.shift()()}function d(e,t){A(e,t),w(e.ioSpecification,t),E(e.artifacts,t),a(e)}function f(e,t){s(e,t)}function m(e,t){s(e,t)}function v(e,t){s(e,t)}function x(e,t){s(e,t)}function _(e,t){s(e,t)}function E(e,t){b(e,(function(e){fr(e,"bpmn:Association")?i.push((function(){_(e,t)})):_(e,t)}))}function w(e,t){e&&(b(e.dataInputs,o(v,t)),b(e.dataOutputs,o(x,t)))}function S(e,t){A(e,t),E(e.artifacts,t)}function C(e,t){var n=s(e,t);fr(e,"bpmn:SubProcess")&&S(e,n||t),fr(e,"bpmn:Activity")&&w(e.ioSpecification,t),i.push((function(){b(e.dataInputAssociations,o(m,t)),b(e.dataOutputAssociations,o(m,t))}))}function R(e,t){s(e,t)}function T(e,t){i.push((function(){var n=s(e,t);e.childLaneSet&&P(e.childLaneSet,n||t),function(e){b(e.flowNodeRef,(function(t){var n=t.get("lanes");n&&n.push(e)}))}(e)}))}function P(e,t){b(e.lanes,o(T,t))}function A(e,n){!function(e,n){b(e,(function(e){fr(e,"bpmn:SequenceFlow")?i.push((function(){!function(e,t){s(e,t)}(e,n)})):fr(e,"bpmn:BoundaryEvent")?i.unshift((function(){C(e,n)})):fr(e,"bpmn:FlowNode")?C(e,n):fr(e,"bpmn:DataObject")||(fr(e,"bpmn:DataStoreReference")||fr(e,"bpmn:DataObjectReference")?R(e,n):c(t("unrecognized flowElement {element} in context {context}",{element:ur(e),context:n?ur(n.businessObject):"null"}),{element:e,context:n}))}))}(e.flowElements,n),e.laneSets&&function(e,t){b(e,o(P,t))}(e.laneSets,n)}function k(e,t){var n=s(e,t),i=e.processRef;i&&d(i,n||t)}return{handleDeferred:h,handleDefinitions:function(a,s){var u=a.diagrams;if(s&&-1===u.indexOf(s))throw new Error(t("diagram not part of bpmn:Definitions"));if(!s&&u&&u.length&&(s=u[0]),!s)throw new Error(t("no diagram to display"));r={},l(s);var m=s.plane;if(!m)throw new Error(t("no plane for {element}",{element:ur(s)}));var v=m.bpmnElement;if(!v){if(!(v=function(e){return y(e.rootElements,(function(e){return fr(e,"bpmn:Process")||fr(e,"bpmn:Collaboration")}))}(a)))throw new Error(t("no process or collaboration to display"));c(t("correcting missing bpmnElement on {plane} to {rootElement}",{plane:ur(m),rootElement:ur(v)})),m.bpmnElement=v,p(m)}var x,_,w=function(t,n){return e.root(t,r[t.id],n)}(v,m);if(fr(v,"bpmn:Process")||fr(v,"bpmn:SubProcess"))d(v,w);else{if(!fr(v,"bpmn:Collaboration"))throw new Error(t("unsupported bpmnElement for {plane}: {rootElement}",{plane:ur(m),rootElement:ur(v)}));_=w,b((x=v).participants,o(k,_)),E(x.artifacts,_),i.push((function(){!function(e,t){b(e,o(f,t))}(x.messageFlows,_)})),function(e,t){g(e,(function(e){return!n[e.id]&&fr(e,"bpmn:Process")&&e.laneSets})).forEach(o(d,t))}(a.rootElements,w)}h()},handleSubProcess:S,registerDi:p}}function vr(e,t){var n=gr(e);return n&&"function"==typeof n.$instanceOf&&n.$instanceOf(t)}function yr(e,t){return w(t,(function(t){return vr(e,t)}))}function gr(e){return e&&e.businessObject||e}function br(e){return e&&e.di}function xr(e,t,n){var i,r,o,a,s=[];function c(e,t){var n=new mr({root:function(e,t){return i.add(e,t)},element:function(e,t,n){return i.add(e,t,n)},error:function(e,t){s.push({message:e,context:t})}},o);t=t||e.diagrams&&e.diagrams[0];var r=function(e,t){if(!t)return;var n,i=t.plane.bpmnElement,r=i;vr(i,"bpmn:Process")||vr(i,"bpmn:Collaboration")||(r=function(e){var t=e;for(;t;){if(vr(t,"bpmn:Process"))return t;t=t.$parent}}
|
|
7
|
+
*/var an=/,?([a-z]),?/gi,sn=parseFloat,cn=Math,pn=cn.PI,ln=cn.min,un=cn.max,hn=cn.pow,dn=cn.abs,fn=/([a-z])[\s,]*((-?\d*\.?\d*(?:e[-+]?\d+)?[\s]*,?[\s]*)+)/gi,mn=/(-?\d*\.?\d*(?:e[-+]?\d+)?)[\s]*,?[\s]*/gi,vn=Array.isArray||function(e){return e instanceof Array};function yn(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function gn(e){if("function"==typeof e||Object(e)!==e)return e;var t=new e.constructor;for(var n in e)yn(e,n)&&(t[n]=gn(e[n]));return t}function bn(e,t){for(var n=0,i=e.length;n<i;n++)if(e[n]===t)return e.push(e.splice(n,1)[0])}function xn(e){var t=xn.ps=xn.ps||{};return t[e]?t[e].sleep=100:t[e]={sleep:100},setTimeout((function(){for(var n in t)yn(t,n)&&n!=e&&(t[n].sleep--,!t[n].sleep&&delete t[n])})),t[e]}function _n(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 En(){return this.join(",").replace(an,"$1")}function wn(e){var t=gn(e);return t.toString=En,t}function Sn(e,t,n,i,r,o,a,s,c){var p=1-c,l=hn(p,3),u=hn(p,2),h=c*c*c,d=l*t+3*u*c*i+3*p*c*c*o+h*s;return{x:Mn(l*e+3*u*c*n+3*p*c*c*r+h*a),y:Mn(d)}}function Cn(e){var t=Ln.apply(null,e);return _n(t.x0,t.y0,t.x1-t.x0,t.y1-t.y0)}function Rn(e,t,n){return t>=e.x&&t<=e.x+e.width&&n>=e.y&&n<=e.y+e.height}function Tn(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 Pn(e,t,n,i,r,o,a,s,c){null==c&&(c=1);for(var p=(c=c>1?1:c<0?0:c)/2,l=[-.1252,.1252,-.3678,.3678,-.5873,.5873,-.7699,.7699,-.9041,.9041,-.9816,.9816],u=[.2491,.2491,.2335,.2335,.2032,.2032,.1601,.1601,.1069,.1069,.0472,.0472],h=0,d=0;d<12;d++){var f=p*l[d]+p,m=Tn(f,e,n,r,a),v=Tn(f,t,i,o,s),y=m*m+v*v;h+=u[d]*cn.sqrt(y)}return p*h}function An(e,t,n,i,r,o,a,s){if(!(un(e,n)<ln(r,a)||ln(e,n)>un(r,a)||un(t,i)<ln(o,s)||ln(t,i)>un(o,s))){var c=(e*i-t*n)*(o-s)-(t-i)*(r*s-o*a),p=(e-n)*(o-s)-(t-i)*(r-a);if(p){var l=Mn(((e*i-t*n)*(r-a)-(e-n)*(r*s-o*a))/p),u=Mn(c/p),h=+l.toFixed(2),d=+u.toFixed(2);if(!(h<+ln(e,n).toFixed(2)||h>+un(e,n).toFixed(2)||h<+ln(r,a).toFixed(2)||h>+un(r,a).toFixed(2)||d<+ln(t,i).toFixed(2)||d>+un(t,i).toFixed(2)||d<+ln(o,s).toFixed(2)||d>+un(o,s).toFixed(2)))return{x:l,y:u}}}}function Mn(e){return Math.round(1e11*e)/1e11}function kn(e,t,n){if(!function(e,t){return e=_n(e),Rn(t=_n(t),e.x,e.y)||Rn(t,e.x2,e.y)||Rn(t,e.x,e.y2)||Rn(t,e.x2,e.y2)||Rn(e,t.x,t.y)||Rn(e,t.x2,t.y)||Rn(e,t.x,t.y2)||Rn(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)}(Cn(e),Cn(t)))return n?0:[];for(var i=Pn.apply(0,e),r=Pn.apply(0,t),o=Bn(e)?1:~~(i/5)||1,a=Bn(t)?1:~~(r/5)||1,s=[],c=[],p={},l=n?0:[],u=0;u<o+1;u++){var h=Sn.apply(0,e.concat(u/o));s.push({x:h.x,y:h.y,t:u/o})}for(u=0;u<a+1;u++)h=Sn.apply(0,t.concat(u/a)),c.push({x:h.x,y:h.y,t:u/a});for(u=0;u<o;u++)for(var d=0;d<a;d++){var f,m=s[u],v=s[u+1],y=c[d],g=c[d+1],b=dn(v.x-m.x)<.01?"y":"x",x=dn(g.x-y.x)<.01?"y":"x",_=An(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+dn((_[b]-m[b])/(v[b]-m[b]))*(v.t-m.t),w=y.t+dn((_[x]-y[x])/(g[x]-y[x]))*(g.t-y.t);E>=0&&E<=1&&w>=0&&w<=1&&(n?l++:l.push({x:_.x,y:_.y,t1:E,t2:w}))}}return l}function Dn(e){var t=xn(e);if(t.abs)return wn(t.abs);if(vn(e)&&vn(e&&e[0])||(e=function(e){if(!e)return null;var t=xn(e);if(t.arr)return gn(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 vn(e)&&vn(e[0])&&(i=gn(e)),i.length||String(e).replace(fn,(function(e,t,r){var o=[],a=t.toLowerCase();for(r.replace(mn,(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=xn.toString,t.arr=gn(i),i}(e)),!e||!e.length)return[["M",0,0]];var n,i=[],r=0,o=0,a=0,s=0,c=0;"M"==e[0][0]&&(a=r=+e[0][1],s=o=+e[0][2],c++,i[0]=["M",r,o]);for(var p,l,u=c,h=e.length;u<h;u++){if(i.push(p=[]),(n=(l=e[u])[0])!=n.toUpperCase())switch(p[0]=n.toUpperCase(),p[0]){case"A":p[1]=l[1],p[2]=l[2],p[3]=l[3],p[4]=l[4],p[5]=l[5],p[6]=+l[6]+r,p[7]=+l[7]+o;break;case"V":p[1]=+l[1]+o;break;case"H":p[1]=+l[1]+r;break;case"M":a=+l[1]+r,s=+l[2]+o;default:for(var d=1,f=l.length;d<f;d++)p[d]=+l[d]+(d%2?r:o)}else for(var m=0,v=l.length;m<v;m++)p[m]=l[m];switch(n=n.toUpperCase(),p[0]){case"Z":r=+a,o=+s;break;case"H":r=p[1];break;case"V":o=p[1];break;case"M":a=p[p.length-2],s=p[p.length-1];default:r=p[p.length-2],o=p[p.length-1]}}return i.toString=En,t.abs=wn(i),i}function Bn(e){return e[0]===e[2]&&e[1]===e[3]&&e[4]===e[6]&&e[5]===e[7]}function Nn(e,t,n,i){return[e,t,n,i,n,i]}function On(e,t,n,i,r,o){var a=1/3,s=2/3;return[a*e+s*n,a*t+s*i,a*r+s*n,a*o+s*i,r,o]}function jn(e,t,n,i,r,o,a,s,c,p){var l,u,h=120*pn/180,d=pn/180*(+r||0),f=[],m=(u=function(e,t,n){return{x:e*cn.cos(n)-t*cn.sin(n),y:e*cn.sin(n)+t*cn.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 yn(i,n)?(bn(r,n),i[n]):(r.length>=1e3&&delete i[r.shift()],r.push(n),i[n]=u.apply(0,t),i[n])});if(p)S=p[0],C=p[1],E=p[2],w=p[3];else{e=(l=m(e,t,-d)).x,t=l.y;var v=(e-(s=(l=m(s,c,-d)).x))/2,y=(t-(c=l.y))/2,g=v*v/(n*n)+y*y/(i*i);g>1&&(n*=g=cn.sqrt(g),i*=g);var b=n*n,x=i*i,_=(o==a?-1:1)*cn.sqrt(dn((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=cn.asin(((t-w)/i).toFixed(9)),C=cn.asin(((c-w)/i).toFixed(9));(S=e<E?pn-S:S)<0&&(S=2*pn+S),(C=s<E?pn-C:C)<0&&(C=2*pn+C),a&&S>C&&(S-=2*pn),!a&&C>S&&(C-=2*pn)}var R=C-S;if(dn(R)>h){var T=C,P=s,A=c;C=S+h*(a&&C>S?1:-1),f=jn(s=E+n*cn.cos(C),c=w+i*cn.sin(C),n,i,r,0,a,P,A,[C,T,E,w])}R=C-S;var M=cn.cos(S),k=cn.sin(S),D=cn.cos(C),B=cn.sin(C),N=cn.tan(R/4),O=4/3*n*N,j=4/3*i*N,L=[e,t],I=[e+O*k,t-j*M],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 Ln(e,t,n,i,r,o,a,s){for(var c,p,l,u,h,d,f,m,v=[],y=[[],[]],g=0;g<2;++g)if(0==g?(p=6*e-12*n+6*r,c=-3*e+9*n-9*r+3*a,l=3*n-3*e):(p=6*t-12*i+6*o,c=-3*t+9*i-9*o+3*s,l=3*i-3*t),dn(c)<1e-12){if(dn(p)<1e-12)continue;0<(u=-l/p)&&u<1&&v.push(u)}else f=p*p-4*l*c,m=cn.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));for(var b,x=v.length,_=x;x--;)b=1-(u=v[x]),y[0][x]=b*b*b*e+3*b*b*u*n+3*b*u*u*r+u*u*u*a,y[1][x]=b*b*b*t+3*b*b*u*i+3*b*u*u*o+u*u*u*s;return y[0][_]=e,y[1][_]=t,y[0][_+1]=a,y[1][_+1]=s,y[0].length=y[1].length=_+2,{x0:ln.apply(0,y[0]),y0:ln.apply(0,y[1]),x1:un.apply(0,y[0]),y1:un.apply(0,y[1])}}function In(e){var t=xn(e);if(t.curve)return wn(t.curve);for(var n=Dn(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(jn.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(On(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(On(t.x,t.y,e[1],e[2],e[3],e[4]));break;case"L":e=["C"].concat(Nn(t.x,t.y,e[1],e[2]));break;case"H":e=["C"].concat(Nn(t.x,t.y,e[1],t.y));break;case"V":e=["C"].concat(Nn(t.x,t.y,t.x,e[1]));break;case"Z":e=["C"].concat(Nn(t.x,t.y,t.X,t.Y))}return e},o=function(e,t){if(e[t].length>7){e[t].shift();for(var i=e[t];i.length;)a[t]="A",e.splice(t++,0,["C"].concat(i.splice(0,6)));e.splice(t,1),l=n.length}},a=[],s="",c="",p=0,l=n.length;p<l;p++){n[p]&&(s=n[p][0]),"C"!=s&&(a[p]=s,p&&(c=a[p-1])),n[p]=r(n[p],i,c),"A"!=a[p]&&"C"==s&&(a[p]="C"),o(n,p);var u=n[p],h=u.length;i.x=u[h-2],i.y=u[h-1],i.bx=sn(u[h-4])||i.x,i.by=sn(u[h-3])||i.y}return t.curve=wn(n),n}var zn=function(e,t,n){e=In(e),t=In(t);for(var i,r,o,a,s,c,p,l,u,h,d=n?0:[],f=0,m=e.length;f<m;f++){var v=e[f];if("M"==v[0])i=s=v[1],r=c=v[2];else{"C"==v[0]?(u=[i,r].concat(v.slice(1)),i=u[6],r=u[7]):(u=[i,r,i,r,s,c,s,c],i=s,r=c);for(var y=0,g=t.length;y<g;y++){var b=t[y];if("M"==b[0])o=p=b[1],a=l=b[2];else{"C"==b[0]?(h=[o,a].concat(b.slice(1)),o=h[6],a=h[7]):(h=[o,a,o,a,p,l,p,l],o=p,a=l);var x=kn(u,h,n);if(n)d+=x;else{for(var _=0,E=x.length;_<E;_++)x[_].segment1=f,x[_].segment2=y,x[_].bez1=u,x[_].bez2=h;d=d.concat(x)}}}}}return d};function Fn(e){return{x:Math.round(e.x),y:Math.round(e.y),width:Math.round(e.width),height:Math.round(e.height)}}function $n(e){return{x:Math.round(e.x),y:Math.round(e.y)}}function Hn(e){return{top:e.y,right:e.x+(e.width||0),bottom:e.y+(e.height||0),left:e.x}}function Gn(e){return{x:e.left,y:e.top,width:e.right-e.left,height:e.bottom-e.top}}function Vn(e){return $n({x:e.x+(e.width||0)/2,y:e.y+(e.height||0)/2})}function Wn(e,t,n){h(n=n||0)||(n={x:n,y:n});var i=Hn(e),r=Hn(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 Un(e,t,n){var i=zn(e,t);return 1===i.length||2===i.length&&en(i[0],i[1])<1?$n(i[0]):i.length>1?$n((i=k(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 qn(e,t){return Math.round(e*t)/t}function Kn(e){return d(e)?e+"px":e}function Yn(e,t,n){var i=Oe("g");Te(i).add(t);var r=void 0!==n?n:e.childNodes.length-1;return e.insertBefore(i,e.childNodes[r]||null),i}var Xn={shape:["x","y","width","height"],connection:["waypoints"]};function Zn(e,t,n,i){this._eventBus=t,this._elementRegistry=i,this._graphicsFactory=n,this._rootsIdx=0,this._layers={},this._planes=[],this._rootElement=null,this._init(e||{})}function Qn(e,t){var n="matrix("+t.a+","+t.b+","+t.c+","+t.d+","+t.e+","+t.f+")";e.setAttribute("transform",n)}Zn.$inject=["config.canvas","eventBus","graphicsFactory","elementRegistry"],Zn.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"),Ct(n,{position:"relative",overflow:"hidden",width:Kn(e.width),height:Kn(e.height)}),t.appendChild(n),n}(e),i=this._svg=Oe("svg");Ee(i,{width:"100%",height:"100%"}),be(n,i);var r=this._viewport=Yn(i,"viewport");!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","root.set"],(function(){delete this._cachedViewbox}),this),t.on("diagram.destroy",500,this._destroy,this),t.on("diagram.clear",500,this._clear,this)},Zn.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._planes,delete this._rootElement,delete this._viewport},Zn.prototype._clear=function(){var e=this;this._elementRegistry.getAll().forEach((function(t){var n=ft(t);"root"===n?e.removeRootElement(t):e._removeElement(t,n)})),this._planes=[],this._rootElement=null,delete this._cachedViewbox},Zn.prototype.getDefaultLayer=function(){return this.getLayer("base",0)},Zn.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},Zn.prototype._getChildIndex=function(e){return _(this._layers,(function(t,n){return n.visible&&e>=n.index&&t++,t}),0)},Zn.prototype._createLayer=function(e,t){void 0===t&&(t=1);var n=this._getChildIndex(t);return{group:Yn(this._viewport,"layer-"+e,n),index:t,visible:!0}},Zn.prototype.showLayer=function(e){if(!e)throw new Error("must specify a name");var t=this._layers[e];if(!t)throw new Error("layer <"+e+"> does not exist");var n=this._viewport,i=t.group,r=t.index;if(t.visible)return i;var o=this._getChildIndex(r);return n.insertBefore(i,n.childNodes[o]||null),t.visible=!0,i},Zn.prototype.hideLayer=function(e){if(!e)throw new Error("must specify a name");var t=this._layers[e];if(!t)throw new Error("layer <"+e+"> does not exist");var n=t.group;return t.visible?(Ae(n),t.visible=!1,n):n},Zn.prototype._removeLayer=function(e){var t=this._layers[e];t&&(delete this._layers[e],Ae(t.group))},Zn.prototype.getActiveLayer=function(){var e=this._findPlaneForRoot(this.getRootElement());return e?e.layer:null},Zn.prototype.findRoot=function(e){if("string"==typeof e&&(e=this._elementRegistry.get(e)),e)return(this._findPlaneForRoot(function(e){for(;e.parent;)e=e.parent;return e}(e))||{}).rootElement},Zn.prototype.getRootElements=function(){return this._planes.map((function(e){return e.rootElement}))},Zn.prototype._findPlaneForRoot=function(e){return y(this._planes,(function(t){return t.rootElement===e}))},Zn.prototype.getContainer=function(){return this._container},Zn.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?Te(e).add(t):Te(e).remove(t))})),this._eventBus.fire("element.marker.update",{element:e,gfx:i.gfx,marker:t,add:!!n}))},Zn.prototype.addMarker=function(e,t){this._updateMarker(e,t,!0)},Zn.prototype.removeMarker=function(e,t){this._updateMarker(e,t,!1)},Zn.prototype.hasMarker=function(e,t){return e.id||(e=this._elementRegistry.get(e)),Te(this.getGraphics(e)).has(t)},Zn.prototype.toggleMarker=function(e,t){this.hasMarker(e,t)?this.removeMarker(e,t):this.addMarker(e,t)},Zn.prototype.getRootElement=function(){var e=this._rootElement;return e||this._planes.length?e:this.setRootElement(this.addRootElement(null))},Zn.prototype.addRootElement=function(e){var t=this._rootsIdx++;e||(e={id:"__implicitroot_"+t,children:[],isImplicit:!0});var n=e.layer="root-"+t;this._ensureValid("root",e);var i=this.getLayer(n,0);return this.hideLayer(n),this._addRoot(e,i),this._planes.push({rootElement:e,layer:i}),e},Zn.prototype.removeRootElement=function(e){if("string"==typeof e&&(e=this._elementRegistry.get(e)),this._findPlaneForRoot(e))return this._removeRoot(e),this._removeLayer(e.layer),this._planes=this._planes.filter((function(t){return t.rootElement!==e})),this._rootElement===e&&(this._rootElement=null),e},Zn.prototype.setRootElement=function(e,t){if(p(t))throw new Error("override not supported");if(e!==this._rootElement){if(!e)throw new Error("rootElement required");return this._findPlaneForRoot(e)||(e=this.addRootElement(e)),this._setRoot(e),e}},Zn.prototype._removeRoot=function(e){var t=this._elementRegistry,n=this._eventBus;n.fire("root.remove",{element:e}),n.fire("root.removed",{element:e}),t.remove(e)},Zn.prototype._addRoot=function(e,t){var n=this._elementRegistry,i=this._eventBus;i.fire("root.add",{element:e}),n.add(e,t),i.fire("root.added",{element:e,gfx:t})},Zn.prototype._setRoot=function(e,t){var n=this._rootElement;n&&(this._elementRegistry.updateGraphics(n,null,!0),this.hideLayer(n.layer)),e&&(t||(t=this._findPlaneForRoot(e).layer),this._elementRegistry.updateGraphics(e,this._svg,!0),this.showLayer(e.layer)),this._rootElement=e,this._eventBus.fire("root.set",{element:e})},Zn.prototype._ensureValid=function(e,t){if(!t.id)throw new Error("element must have an id");if(this._elementRegistry.get(t.id))throw new Error("element <"+t.id+"> already exists");var n=Xn[e];if(!E(n,(function(e){return void 0!==t[e]})))throw new Error("must supply { "+n.join(", ")+" } with "+e)},Zn.prototype._setParent=function(e,t,n){Qt(t.children,e,n),e.parent=t},Zn.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},Zn.prototype.addShape=function(e,t,n){return this._addElement("shape",e,t,n)},Zn.prototype.addConnection=function(e,t,n){return this._addElement("connection",e,t,n)},Zn.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),Zt(e.parent&&e.parent.children,e),e.parent=null,r.fire(t+".removed",{element:e}),n.remove(e),e},Zn.prototype.removeShape=function(e){return this._removeElement(e,"shape")},Zn.prototype.removeConnection=function(e){return this._removeElement(e,"connection")},Zn.prototype.getGraphics=function(e,t){return this._elementRegistry.getGraphics(e,t)},Zn.prototype._changeViewbox=function(e){this._eventBus.fire("canvas.viewbox.changing"),e.apply(this),this._cachedViewbox=null,this._viewboxChanged()},Zn.prototype._viewboxChanged=function(){this._eventBus.fire("canvas.viewbox.changed",{viewbox:this.viewbox()})},Zn.prototype.viewbox=function(e){if(void 0===e&&this._cachedViewbox)return this._cachedViewbox;var t,n,i,r,o,a,s,c=this._viewport,p=this.getSize();return e?(this._changeViewbox((function(){o=Math.min(p.width/e.width,p.height/e.height);var t=this._svg.createSVGMatrix().scale(o).translate(-e.x,-e.y);qe(c,t)})),e):(t=(i=this._rootElement?this.getActiveLayer():null)&&i.getBBox()||{},n=(r=qe(c))?r.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})}}(),o=qn(n.a,1e3),a=qn(-n.e||0,1e3),s=qn(-n.f||0,1e3),e=this._cachedViewbox={x:a?a/o:0,y:s?s/o:0,width:p.width/o,height:p.height/o,scale:o,inner:{width:t.width||0,height:t.height||0,x:t.x||0,y:t.y||0},outer:p})},Zn.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),Qn(t,n)})),{x:n.e,y:n.f}},Zn.prototype.scrollToElement=function(e,t){var n=100;"string"==typeof e&&(e=this._elementRegistry.get(e));var i=this.findRoot(e);i!==this.getRootElement()&&this.setRootElement(i),t||(t={}),"number"==typeof t&&(n=t),t={top:t.top||n,right:t.right||n,bottom:t.bottom||n,left:t.left||n};var r,o,a=dt(e),s=Hn(a),c=this.viewbox(),p=this.zoom();c.y+=t.top/p,c.x+=t.left/p,c.width-=(t.right+t.left)/p,c.height-=(t.bottom+t.top)/p;var l=Hn(c);if(a.width<c.width&&a.height<c.height){var u=Math.max(0,s.right-l.right),h=Math.min(0,s.left-l.left),d=Math.max(0,s.bottom-l.bottom),f=Math.min(0,s.top-l.top);r=u||h,o=d||f}else r=a.x-c.x,o=a.y-c.y;this.scroll({dx:-r*p,dy:-o*p})},Zn.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)})),qn(i.a,1e3)):this.viewbox(e).scale;var n,i},Zn.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},Zn.prototype._setZoom=function(e,t){var n,i,r,o,a=this._svg,s=this._viewport,c=a.createSVGMatrix(),p=a.createSVGPoint(),l=(i=s.getCTM()).a;return t?(n=F(p,t).matrixTransform(i.inverse()),r=c.translate(n.x,n.y).scale(1/l*e).translate(-n.x,-n.y),o=i.multiply(r)):o=c.scale(e),Qn(this._viewport,o),o},Zn.prototype.getSize=function(){return{width:this._container.clientWidth,height:this._container.clientHeight}},Zn.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}},Zn.prototype.resized=function(){delete this._cachedViewbox,this._eventBus.fire("canvas.resized")};var Jn="data-element-id";function ei(e){this._elements={},this._eventBus=e}ei.$inject=["eventBus"],ei.prototype.add=function(e,t,n){var i=e.id;this._validateId(i),Ee(t,Jn,i),n&&Ee(n,Jn,i),this._elements[i]={element:e,gfx:t,secondaryGfx:n}},ei.prototype.remove=function(e){var t=this._elements,n=e.id||e,i=n&&t[n];i&&(Ee(i.gfx,Jn,""),i.secondaryGfx&&Ee(i.secondaryGfx,Jn,""),delete t[n])},ei.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)},ei.prototype.updateGraphics=function(e,t,n){var i=e.id||e,r=this._elements[i];return n?r.secondaryGfx=t:r.gfx=t,t&&Ee(t,Jn,i),t},ei.prototype.get=function(e){var t;t="string"==typeof e?e:e&&Ee(e,Jn);var n=this._elements[t];return n&&n.element},ei.prototype.filter=function(e){var t=[];return this.forEach((function(n,i){e(n,i)&&t.push(n)})),t},ei.prototype.find=function(e){for(var t=this._elements,n=Object.keys(t),i=0;i<n.length;i++){var r=t[n[i]],o=r.element;if(e(o,r.gfx))return o}},ei.prototype.getAll=function(){return this.filter((function(e){return e}))},ei.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)}))},ei.prototype.getGraphics=function(e,t){var n=e.id||e,i=this._elements[n];return i&&(t?i.secondaryGfx:i.gfx)},ei.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 ti={exports:{}},ni={};ni.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},ni.isExtended=function(e){return!0===e.__refs_collection};var ii=ni;function ri(e,t,n){var i=ii.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 oi(e,t){if(!(this instanceof oi))return new oi(e,t);e.inverse=t,t.inverse=e,this.props={},this.props[e.name]=e,this.props[t.name]=t}oi.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?ri(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)},oi.prototype.ensureRefsCollection=function(e,t){var n=e[t.name];return ii.isExtended(n)||ri(this,t,e),n},oi.prototype.ensureBound=function(e,t){(function(e,t){return Object.prototype.hasOwnProperty.call(e,t.name||t)})(e,t)||this.bind(e,t)},oi.prototype.unset=function(e,t,n){e&&(this.ensureBound(e,t),t.collection?this.ensureRefsCollection(e,t).remove(n):e[t.name]=void 0)},oi.prototype.set=function(e,t,n){e&&(this.ensureBound(e,t),t.collection?this.ensureRefsCollection(e,t).add(n):e[t.name]=n)};var ai=oi;ti.exports=ai,ti.exports.Collection=ni;var si=ti.exports,ci=new si({name:"children",enumerable:!0,collection:!0},{name:"parent"}),pi=new si({name:"labels",enumerable:!0,collection:!0},{name:"labelTarget"}),li=new si({name:"attachers",collection:!0},{name:"host"}),ui=new si({name:"outgoing",collection:!0},{name:"source"}),hi=new si({name:"incoming",collection:!0},{name:"target"});function di(){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)}}),ci.bind(this,"parent"),pi.bind(this,"labels"),ui.bind(this,"outgoing"),hi.bind(this,"incoming")}function fi(){di.call(this),ci.bind(this,"children"),li.bind(this,"host"),li.bind(this,"attachers")}function mi(){fi.call(this)}function vi(){fi.call(this),pi.bind(this,"labelTarget")}function yi(){di.call(this),ui.bind(this,"source"),hi.bind(this,"target")}n(fi,di),n(mi,fi),n(vi,fi),n(yi,di);var gi={connection:yi,shape:fi,label:vi,root:mi};function bi(){this._uid=12}bi.prototype.createRoot=function(e){return this.create("root",e)},bi.prototype.createLabel=function(e){return this.create("label",e)},bi.prototype.createShape=function(e){return this.create("shape",e)},bi.prototype.createConnection=function(e){return this.create("connection",e)},bi.prototype.create=function(e,t){return(t=F({},t||{})).id||(t.id=e+"_"+this._uid++),function(e,t){var n=gi[e];if(!n)throw new Error("unknown type: <"+e+">");return F(new n,t)}(e,t)};var xi=Array.prototype.slice;function _i(){this._listeners={},this.on("diagram.destroy",1,this._destroy,this)}function Ei(){}function wi(e){return e.childNodes[0]}function Si(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 Ci(e,t,n){var i=Ie();i.setTranslate(t,n),qe(e,i)}function Ri(e,t){var n=Ie();n.setRotate(t,0,0),qe(e,n)}function Ti(e,t){this._eventBus=e,this._elementRegistry=t}function Pi(e,t,n){var i=n||t.firstChild;e!==i&&t.insertBefore(e,i)}_i.prototype.on=function(e,t,n,i){if(e=u(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})}))},_i.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(){o.__isTomb=!0;var t=n.apply(i,arguments);return r.off(e,o),t}o.__fn=n,this.on(e,t,o)},_i.prototype.off=function(e,t){e=u(e)?e:[e];var n=this;e.forEach((function(e){n._removeListener(e,t)}))},_i.prototype.createEvent=function(e){var t=new Ei;return t.init(e),t},_i.prototype.fire=function(e,t){var n,i,r,o;if(o=xi.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 Ei?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}},_i.prototype.handleError=function(e){return!1===this.fire("error",{error:e})},_i.prototype._destroy=function(){this._listeners={}},_i.prototype._invokeListeners=function(e,t,n){for(var i;n&&!e.cancelBubble;)i=this._invokeListener(e,t,n),n=n.next;return i},_i.prototype._invokeListener=function(e,t,n){var i;if(n.callback.__isTomb)return 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",e),e}return i},_i.prototype._addListener=function(e,t){var n,i=this._getListeners(e);if(i){for(;i;){if(i.priority<t.priority)return t.next=i,void(n?n.next=t:this._setListeners(e,t));n=i,i=i.next}n.next=t}else this._setListeners(e,t)},_i.prototype._getListeners=function(e){return this._listeners[e]},_i.prototype._setListeners=function(e,t){this._listeners[e]=t},_i.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)},Ei.prototype.stopPropagation=function(){this.cancelBubble=!0},Ei.prototype.preventDefault=function(){this.defaultPrevented=!0},Ei.prototype.init=function(e){F(this,e||{})},Ti.$inject=["eventBus","elementRegistry"],Ti.prototype._getChildrenContainer=function(e){var t,n=this._elementRegistry.getGraphics(e);return e.parent?(t=function(e){return e.parentNode.childNodes[1]}(n))||(Te(t=Oe("g")).add("djs-children"),be(n.parentNode,t)):t=n,t},Ti.prototype._clear=function(e){var t=wi(e);return Bt(t),t},Ti.prototype._createContainer=function(e,t,n,i){var r=Oe("g");Te(r).add("djs-group"),void 0!==n?Pi(r,t,t.childNodes[n]):be(t,r);var o=Oe("g");Te(o).add("djs-element"),Te(o).add("djs-"+e),i&&Te(o).add("djs-frame"),be(r,o);var a=Oe("g");return Te(a).add("djs-visual"),be(o,a),o},Ti.prototype.create=function(e,t,n){var i=this._getChildrenContainer(t.parent);return this._createContainer(e,i,n,mt(t))},Ti.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){Pi(n.getGraphics(e).parentNode,r)}))}}))},Ti.prototype.drawShape=function(e,t){return this._eventBus.fire("render.shape",{gfx:e,element:t})},Ti.prototype.getShapePath=function(e){return this._eventBus.fire("render.getShapePath",e)},Ti.prototype.drawConnection=function(e,t){return this._eventBus.fire("render.connection",{gfx:e,element:t})},Ti.prototype.getConnectionPath=function(e){return this._eventBus.fire("render.getConnectionPath",e)},Ti.prototype.update=function(e,t,n){if(t.parent){var i=this._clear(n);if("shape"===e)this.drawShape(i,t),Ci(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")}},Ti.prototype.remove=function(e){Ae(this._elementRegistry.getGraphics(e).parentNode)};var Ai={__depends__:[gt],__init__:["canvas"],canvas:["type",Zn],elementRegistry:["type",ei],elementFactory:["type",bi],eventBus:["type",_i],graphicsFactory:["type",Ti]};function Mi(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 ki(e,t){this.injector=t=t||function(e){return Mi([{config:["value",e=e||{}]},Ai].concat(e.modules||[]))}(e),this.get=t.get,this.invoke=t.invoke,this.get("eventBus").fire("diagram.init")}function Di(){}function Bi(e,t){this.model=e,this.properties=t}ki.prototype.destroy=function(){this.get("eventBus").fire("diagram.destroy")},ki.prototype.clear=function(){this.get("eventBus").fire("diagram.clear")},Di.prototype.get=function(e){return this.$model.properties.get(this,e)},Di.prototype.set=function(e,t){this.$model.properties.set(this,e,t)},Bi.prototype.createType=function(e){var t=this.model,n=this.properties,i=Object.create(Di.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 Ni={String:!0,Boolean:!0,Integer:!0,Real:!0,Element:!0},Oi={String:function(e){return e},Boolean:function(e){return"true"===e},Integer:function(e){return parseInt(e,10)},Real:function(e){return parseFloat(e)}};function ji(e,t){var n=Oi[e];return n?n(t):t}function Li(e){return!!Ni[e]}function Ii(e){return!!Oi[e]}function zi(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 Fi(e){this.ns=e,this.name=e.name,this.allTypes=[],this.allTypesByName={},this.properties=[],this.propertiesByName={}}function $i(e,t){this.packageMap={},this.typeMap={},this.packages=[],this.properties=t,b(e,I(this.registerPackage,this))}function Hi(e,t,n){var i=t[n];if(i in e)throw new Error("package with "+n+" <"+i+"> already defined")}function Gi(e){this.model=e}function Vi(e,t,n){Object.defineProperty(e,t.name,{enumerable:!t.isReference,writable:!0,value:n,configurable:!0})}function Wi(e){this.properties=new Gi(this),this.factory=new Bi(this,this.properties),this.registry=new $i(e,this.properties),this.typeCache={}}Fi.prototype.build=function(){return $(this,["ns","name","allTypes","allTypesByName","properties","propertiesByName","bodyProperty","idProperty"])},Fi.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)},Fi.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},Fi.prototype.redefineProperty=function(e,t,n){var i=e.ns.prefix,r=t.split("#"),o=zi(r[0],i),a=zi(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},Fi.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},Fi.prototype.removeNamedProperty=function(e){var t=e.ns,n=this.propertiesByName;delete n[t.name],delete n[t.localName]},Fi.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},Fi.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},Fi.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")},Fi.prototype.hasProperty=function(e){return this.propertiesByName[e]},Fi.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)},$i.prototype.getPackage=function(e){return this.packageMap[e]},$i.prototype.getPackages=function(){return this.packages},$i.prototype.registerPackage=function(e){e=F({},e);var t=this.packageMap;Hi(t,e,"prefix"),Hi(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)},$i.prototype.registerType=function(e,t){var n=zi((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=zi(e.name,n.prefix),i=t.name;Li(e.type)||(e.type=zi(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},$i.prototype.mapTypes=function(e,t,n){var i=Li(e.name)?{name:e.name}:this.typeMap[e.name],r=this;function o(e){return a(e,!0)}function a(n,i){var o=zi(n,Li(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)},$i.prototype.getEffectiveDescriptor=function(e){var t=zi(e),n=new Fi(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},$i.prototype.definePackage=function(e,t){this.properties.define(e,"$pkg",{value:t})},Gi.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:Vi(e,i,n):e.$attrs[t]=n},Gi.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&&Vi(e,n,[]),e[i]},Gi.prototype.define=function(e,t,n){Object.defineProperty(e,t,n)},Gi.prototype.defineDescriptor=function(e,t){this.define(e,"$descriptor",{value:t})},Gi.prototype.defineModel=function(e,t){this.define(e,"$model",{value:t})},Wi.prototype.create=function(e,t){var n=this.getType(e);if(!n)throw new Error("unknown type <"+e+">");return new n(t)},Wi.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},Wi.prototype.createAny=function(e,t,n){var i=zi(e),r={$type:e,$instanceOf:function(e){return e===this.$type}},o={name:e,isGeneric:!0,ns:{prefix:i.prefix,localName:i.localName,uri:t}};return this.properties.defineDescriptor(r,o),this.properties.defineModel(r,this),this.properties.define(r,"$parent",{enumerable:!1,writable:!0}),this.properties.define(r,"$instanceOf",{enumerable:!1,writable:!0}),b(n,(function(e,t){h(e)&&void 0!==e.value?r[e.name]=e.value:r[t]=e})),r},Wi.prototype.getPackage=function(e){return this.registry.getPackage(e)},Wi.prototype.getPackages=function(){return this.registry.getPackages()},Wi.prototype.getElementDescriptor=function(e){return e.$descriptor},Wi.prototype.hasType=function(e,t){return void 0===t&&(t=e,e=this),t in e.$model.getElementDescriptor(e).allTypesByName},Wi.prototype.getPropertyDescriptor=function(e,t){return this.getElementDescriptor(e).propertiesByName[t]},Wi.prototype.getTypeDescriptor=function(e){return this.registry.typeMap[e]};var Ui=String.fromCharCode,qi=Object.prototype.hasOwnProperty,Ki=/&#(\d+);|&#x([0-9a-f]+);|&(\w+);/gi,Yi={amp:"&",apos:"'",gt:">",lt:"<",quot:'"'};function Xi(e,t,n,i){return i?qi.call(Yi,i)?Yi[i]:"&"+i+";":Ui(t||parseInt(n,16))}function Zi(e){return e.length>3&&-1!==e.indexOf("&")?e.replace(Ki,Xi):e}Object.keys(Yi).forEach((function(e){Yi[e.toUpperCase()]=Yi[e]}));var Qi="xsi:type",Ji="non-whitespace outside of root node";function er(e){return new Error(e)}function tr(e){return"missing namespace for prefix <"+e+">"}function nr(e){return{get:e,enumerable:!0}}function ir(e){var t,n={};for(t in e)n[t]=e[t];return n}function rr(e){return e+"$uri"}function or(){return{line:0,column:0}}function ar(e){throw e}function sr(e){if(!this)return new sr(e);var t,n,i,r,o,a,s,c,p,l=e&&e.proxy,u=ar,h=or,d=!1,f=!1,m=null,v=!1;function y(e){e instanceof Error||(e=er(e)),m=e,u(e,h)}function g(e){o&&(e instanceof Error||(e=er(e)),o(e,h))}this.on=function(e,p){if("function"!=typeof p)throw er("required args <name, cb>");switch(e){case"openTag":n=p;break;case"text":t=p;break;case"closeTag":i=p;break;case"error":u=p;break;case"warn":o=p;break;case"cdata":r=p;break;case"attention":c=p;break;case"question":s=p;break;case"comment":a=p;break;default:throw er("unsupported event: "+e)}return this},this.ns=function(e){if(void 0===e&&(e={}),"object"!=typeof e)throw er("required args <nsMap={}>");var t,n={};for(t in e)n[t]=e[t];return n["http://www.w3.org/2001/XMLSchema-instance"]="xsi",f=!0,p=n,this},this.parse=function(e){if("string"!=typeof e)throw er("required args <xml=string>");return m=null,function(e){var o,u,m,b,x,_,E,w,S,C,R,T=f?[]:null,P=f?function(e){var t,n,i={};for(t in e)i[n=e[t]]=n,i[rr(n)]=t;return i}(p):null,A=[],M=0,k=!1,D=!1,B=0,N=0,O="",j=0;function L(){if(null!==R)return R;var e,t,n,i,r,o,a,s,c,l,u,h=f&&P.xmlns,m=f&&d?[]:null,v=j,y=O,b=y.length,x={},_={};e:for(;v<b;v++)if(c=!1,!(32===(l=y.charCodeAt(v))||l<14&&l>8)){for((l<65||l>122||l>90&&l<97)&&95!==l&&58!==l&&(g("illegal first char attribute name"),c=!0),u=v+1;u<b;u++)if(!((l=y.charCodeAt(u))>96&&l<123||l>64&&l<91||l>47&&l<59||46===l||45===l||95===l)){if(32===l||l<14&&l>8){g("missing attribute value"),v=u;continue e}if(61===l)break;g("illegal attribute name char"),c=!0}if("xmlns:xmlns"===(s=y.substring(v,u))&&(g("illegal declaration of xmlns"),c=!0),34===(l=y.charCodeAt(u+1)))-1===(u=y.indexOf('"',v=u+2))&&-1!==(u=y.indexOf("'",v))&&(g("attribute value quote missmatch"),c=!0);else if(39===l)-1===(u=y.indexOf("'",v=u+2))&&-1!==(u=y.indexOf('"',v))&&(g("attribute value quote missmatch"),c=!0);else for(g("missing attribute value quotes"),c=!0,u+=1;u<b&&!(32===(l=y.charCodeAt(u+1))||l<14&&l>8);u++);for(-1===u&&(g("missing closing quotes"),u=b,c=!0),c||(o=y.substring(v,u)),v=u;u+1<b&&!(32===(l=y.charCodeAt(u+1))||l<14&&l>8);u++)v===u&&(g("illegal character after attribute end"),c=!0);if(v=u+1,!c)if(s in _)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=Zi(o),t=rr(r),!(a=p[e])){if("xmlns"===r||t in P&&P[t]!==e)do{a="ns"+M++}while(void 0!==P[a]);else a=r;p[e]=a}P[r]!==a&&(i||(P=ir(P),i=!0),P[r]=a,"xmlns"===r&&(P[rr(a)]=e,h=a),P[t]=e),x[s]=o;continue}m.push(s,o)}else-1!==(l=s.indexOf(":"))?(n=P[s.substring(0,l)])?((s=h===n?s.substr(l+1):n+s.substr(l))===Qi&&(-1!==(l=o.indexOf(":"))?(n=o.substring(0,l),o=(n=P[n]||n)+o.substring(l)):o=h+":"+o),x[s]=o):g(tr(s.substring(0,l))):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!==(l=s.indexOf(":"))){if(!(n=P[s.substring(0,l)])){g(tr(s.substring(0,l)));continue}(s=h===n?s.substr(l+1):n+s.substr(l))===Qi&&(-1!==(l=o.indexOf(":"))?(n=o.substring(0,l),o=(n=P[n]||n)+o.substring(l)):o=h+":"+o)}x[s]=o}return R=x}function I(){for(var t,n,i=/(\r\n|\r|\n)/g,r=0,o=0,a=0,s=N;B>=a&&(t=i.exec(e))&&!((s=t[0].length+t.index)>B);)r+=1,a=s;return-1==B?(o=s,n=e.substring(N)):0===N?n=e.substring(N,B):(o=B-a,n=-1==N?e.substring(B):e.substring(B,N+1)),{data:n,line:r,column:o}}h=I,l&&(C=Object.create({},{name:nr((function(){return w})),originalName:nr((function(){return S})),attrs:nr(L),ns:nr((function(){return P}))}));for(;-1!==N;){if(-1===(B=60===e.charCodeAt(N)?N:e.indexOf("<",N)))return A.length?y("unexpected end of file"):0===N?y("missing start tag"):void(N<e.length&&e.substring(N).trim()&&g(Ji));if(N!==B)if(A.length){if(t&&(t(e.substring(N,B),Zi,h),v))return}else if(e.substring(N,B).trim()&&(g(Ji),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),Zi,h),v))return;N+=3;continue}}if(63!==x){for(u=B+1;;u++){if(_=e.charCodeAt(u),isNaN(_))return N=-1,y("unclosed tag");if(34===_)u=-1!==(b=e.indexOf('"',u+1))?b:u;else if(39===_)u=-1!==(b=e.indexOf("'",u+1))?b:u;else if(62===_){N=u;break}}if(33!==x){if(R={},47===x){if(k=!1,D=!0,!A.length)return y("missing open tag");if(u=w=A.pop(),b=B+2+u.length,e.substring(B+2,b)!==u)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)?(u=w=e.substring(B+1,N-1),k=!0,D=!0):(u=w=e.substring(B+1,N),k=!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=u.length;b<m;b++)if(!((x=u.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=u.substring(0,b),R=null;break}return y("invalid nodeName")}D||A.push(w)}if(f){if(o=P,k&&(D||T.push(o),null===R&&(d=-1!==u.indexOf("xmlns",b))&&(j=b,O=u,L(),d=!1)),S=w,-1!==(x=w.indexOf(":"))){if(!(E=P[w.substring(0,x)]))return y("missing namespace on <"+S+">");w=w.substr(x+1)}else E=P.xmlns;E&&(w=E+":"+w)}if(k&&(j=b,O=u,n&&(l?n(C,Zi,D,h):n(w,L,Zi,D,h),v)))return;if(D){if(i&&(i(l?C:w,Zi,k,h),v))return;f&&(P=k?o:T.pop())}N+=1}else{if(c&&(c(e.substring(B,N+1),Zi,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=or,v=!1,m},this.stop=function(){v=!0}}function cr(e){return e.xml&&"lowerCase"===e.xml.tagAlias}var pr={xsi:"http://www.w3.org/2001/XMLSchema-instance",xml:"http://www.w3.org/XML/1998/namespace"},lr="xsi:type";function ur(e){return e.xml&&e.xml.serialize}function hr(e){return ur(e)===lr}function dr(e,t){return cr(t)?e.prefix+":"+((n=e.localName).charAt(0).toUpperCase()+n.slice(1)):e.name;var n}function fr(e){return new Error(e)}function mr(e){return e.$descriptor}function vr(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 fr("expected element");var t,n=this.elementsById,i=mr(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 fr("duplicate ID <"+t+">");n[t]=e}},this.addWarning=function(e){this.warnings.push(e)}}function yr(){}function gr(){}function br(){}function xr(e,t){this.property=e,this.context=t}function _r(e,t){this.element=t,this.propertyDesc=e}function Er(){}function wr(e,t,n){this.model=e,this.type=e.getType(t),this.context=n}function Sr(e,t,n){wr.call(this,e,t,n)}function Cr(e,t,n){this.model=e,this.context=n}function Rr(e){e instanceof Wi&&(e={model:e}),F(this,{lax:!1},e)}yr.prototype.handleEnd=function(){},yr.prototype.handleText=function(){},yr.prototype.handleNode=function(){},gr.prototype=Object.create(yr.prototype),gr.prototype.handleNode=function(){return this},br.prototype=Object.create(yr.prototype),br.prototype.handleText=function(e){this.body=(this.body||"")+e},xr.prototype=Object.create(br.prototype),xr.prototype.handleNode=function(e){if(this.element)throw fr("expected no sub nodes");return this.element=this.createReference(e),this},xr.prototype.handleEnd=function(){this.element.id=this.body},xr.prototype.createReference=function(e){return{property:this.property.ns.name,id:""}},_r.prototype=Object.create(br.prototype),_r.prototype.handleEnd=function(){var e=this.body||"",t=this.element,n=this.propertyDesc;e=ji(n.type,e),n.isMany?t.get(n.name).push(e):t.set(n.name,e)},Er.prototype=Object.create(br.prototype),Er.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},wr.prototype=Object.create(Er.prototype),wr.prototype.addReference=function(e){this.context.addReference(e)},wr.prototype.handleText=function(e){if(!mr(this.element).bodyProperty)throw fr("unexpected body text <"+e+">");br.prototype.handleText.call(this,e)},wr.prototype.handleEnd=function(){var e=this.body,t=this.element,n=mr(t).bodyProperty;n&&void 0!==e&&(e=ji(n.type,e),t.set(n.name,e))},wr.prototype.createElement=function(e){var t,n=e.attributes,i=this.type,r=mr(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=ji(i.type,e):"xmlns"!==n&&(t=zi(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},wr.prototype.getPropertyForNode=function(e){var t,n,i=zi(e.name),r=this.type,o=this.model,a=mr(r),s=i.name,c=a.propertiesByName[s];if(c&&!c.isAttr)return hr(c)&&(t=e.attributes[lr])?(t=function(e,t){var n=zi(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:mr(n=o.getType(t)).name})):c;var p=o.getPackage(i.prefix);if(p){if(t=dr(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:mr(n).name})}else if(c=y(a.properties,(function(e){return!e.isReference&&!e.isAttribute&&"Element"===e.type})))return c;throw fr("unrecognized element <"+i.name+">")},wr.prototype.toString=function(){return"ElementDescriptor["+mr(this.type).name+"]"},wr.prototype.valueHandler=function(e,t){return new _r(e,t)},wr.prototype.referenceHandler=function(e){return new xr(e,this.context)},wr.prototype.handler=function(e){return"Element"===e?new Cr(this.model,e,this.context):new wr(this.model,e,this.context)},wr.prototype.handleChild=function(e){var t,n,i,r;if(t=this.getPropertyForNode(e),i=this.element,Ii(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},Sr.prototype=Object.create(wr.prototype),Sr.prototype.createElement=function(e){var t=e.name,n=zi(t),i=this.model,r=this.type,o=i.getPackage(n.prefix),a=o&&dr(n,o)||t;if(!r.hasType(a))throw fr("unexpected element <"+e.originalName+">");return wr.prototype.createElement.call(this,e)},Cr.prototype=Object.create(Er.prototype),Cr.prototype.createElement=function(e){var t=e.name,n=zi(t).prefix,i=e.ns[n+"$uri"],r=e.attributes;return this.model.createAny(t,i,r)},Cr.prototype.handleChild=function(e){var t=new Cr(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},Cr.prototype.handleEnd=function(){this.body&&(this.element.$body=this.body)},Rr.prototype.fromXML=function(e,t,n){var i=t.rootHandler;t instanceof wr?(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 vr(F({},t,{rootHandler:i})),s=new sr({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 fr(c)}function l(e,t){return p(e,t,!0)}i.context=a,c.push(i);var u=/^<\?xml /i,h=/ encoding="([^"]+)"/i,d=/^utf-8$/i;function f(e,t){try{c.peek().handleText(e)}catch(e){l(e,t)}}var m=r.getPackages().reduce((function(e,t){return e[t.uri]=t.prefix,e}),{"http://www.w3.org/XML/1998/namespace":"xml"});return s.ns(m).on("openTag",(function(e,t,n,i){var r=e.attrs||{},a=Object.keys(r).reduce((function(e,n){var i=t(r[n]);return e[n]=i,e}),{});!function(e,t){var n=c.peek();try{c.push(n.handleNode(e))}catch(e){p(e,t,o)&&c.push(new gr)}}({name:e.name,originalName:e.originalName,attributes:a,ns:e.ns},i)})).on("question",(function(e){if(u.test(e)){var t=h.exec(e),n=t&&t[1];n&&!d.test(n)&&a.addWarning({message:"unsupported document encoding <"+n+">, falling back to UTF-8"})}})).on("closeTag",(function(){c.pop().handleEnd()})).on("cdata",f).on("text",(function(e,t,n){!function(e,t){e.trim()&&f(e,t)}(t(e),n)})).on("error",p).on("warn",l),new Promise((function(t,n){var r;try{s.parse(e),function(){var e,t,n=a.elementsById,i=a.references;for(e=0;t=i[e];e++){var r=t.element,o=n[t.id],s=mr(r).propertiesByName[t.property];if(o||a.addWarning({message:"unresolved reference <"+t.id+">",element:t.element,property:t.property,value:t.id}),s.isMany){var c=r.get(s.name),p=c.indexOf(t);-1===p&&(p=c.length),o?c[p]=o:c.splice(p,1)}else r.set(s.name,o)}}()}catch(e){r=e}var o=i.element;r||o||(r=fr("failed to parse document as <"+i.type.$descriptor.name+">"));var c=a.warnings,p=a.references,l=a.elementsById;return r?(r.warnings=c,n(r)):t({rootElement:o,elementsById:l,references:p,warnings:c})}))},Rr.prototype.handler=function(e){return new Sr(this.model,e)};var Tr=/<|>|'|"|&|\n\r|\n/g,Pr=/<|>|&/g;function Ar(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 Mr(e,t){return cr(t)?(n=e).charAt(0).toLowerCase()+n.slice(1):e;var n}function kr(e,t){e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}})}function Dr(e){return m(e)?e:(e.prefix?e.prefix+":":"")+e.localName}var Br={"\n":"#10","\n\r":"#10",'"':"#34","'":"#39","<":"#60",">":"#62","&":"#38"},Nr={"<":"lt",">":"gt","&":"amp"};function Or(e,t,n){return(e=m(e)?e:""+e).replace(t,(function(e){return"&"+n[e]+";"}))}function jr(e){this.tagName=e}function Lr(){}function Ir(e){this.tagName=e}function zr(e,t){this.body=[],this.attrs=[],this.parent=e,this.propertyDescriptor=t}function Fr(e,t){zr.call(this,e,t)}function $r(){this.value="",this.write=function(e){this.value+=e}}function Hr(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 Gr(e){return e=F({format:!1,preamble:!0},e||{}),{toXML:function(t,n){var i=n||new $r,r=new Hr(i,e.format);if(e.preamble&&r.append('<?xml version="1.0" encoding="UTF-8"?>\n'),(new zr).build(t).serializeTo(r),!n)return i.value}}}function Vr(e,t){Wi.call(this,e,t)}jr.prototype.build=function(e){return this.element=e,this},jr.prototype.serializeTo=function(e){e.appendIndent().append("<"+this.tagName+">"+this.element.id+"</"+this.tagName+">").appendNewLine()},Lr.prototype.serializeValue=Lr.prototype.serializeTo=function(e){e.append(this.escape?Or(this.value,Pr,Nr):this.value)},Lr.prototype.build=function(e,t){return this.value=t,"String"===e.type&&-1!==t.search(Pr)&&(this.escape=!0),this},kr(Ir,Lr),Ir.prototype.serializeTo=function(e){e.appendIndent().append("<"+this.tagName+">"),this.serializeValue(e),e.append("</"+this.tagName+">").appendNewLine()},zr.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(!v(e,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},zr.prototype.nsTagName=function(e){return function(e,t){return t.isGeneric?F({localName:t.ns.localName},e):F({localName:Mr(t.ns.localName,t.$pkg)},e)}(this.logNamespaceUsed(e.ns),e)},zr.prototype.nsPropertyTagName=function(e){return function(e,t){return F({localName:t.ns.localName},e)}(this.logNamespaceUsed(e.ns),e)},zr.prototype.isLocalNs=function(e){return e.uri===this.ns.uri},zr.prototype.nsAttributeName=function(e){var t;if(t=m(e)?zi(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)},zr.prototype.parseGeneric=function(e){var t=this,n=this.body,i=[];return b(e,(function(r,o){"$body"===o?n.push((new Lr).build({type:"String"},r)):"$children"===o?b(r,(function(e){n.push(new zr(t).build(e))})):0!==o.indexOf("$")&&t.parseNsAttribute(e,o,r)&&i.push({name:o,value:r})})),i},zr.prototype.parseNsAttribute=function(e,t,n){var i,r=e.$model,o=zi(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)}},zr.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},zr.prototype.parseGenericAttributes=function(e,t){var n=this;b(t,(function(t){if(t.name!==lr)try{n.addAttribute(n.nsAttributeName(t.name),t.value)}catch(n){console.warn("missing namespace information for ",t.name,"=",t.value,"on",e,n)}}))},zr.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 Lr).build(e,r[0]));else if(Ii(e.type))b(r,(function(i){n.push(new Ir(t.addTagName(t.nsPropertyTagName(e))).build(e,i))}));else if(o)b(r,(function(i){n.push(new jr(t.addTagName(t.nsPropertyTagName(e))).build(i))}));else{var a=hr(e),s=function(e){return"property"===ur(e)}(e);b(r,(function(i){var r;r=a?new Fr(t,e):s?new zr(t,e):new zr(t),n.push(r.build(i))}))}}))},zr.prototype.getNamespaces=function(e){var t,n=this.namespaces,i=this.parent;return n||(t=i&&i.getNamespaces(),e||!t?this.namespaces=n=new Ar(t):n=t),n},zr.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},zr.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=pr[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},zr.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)}))},zr.prototype.addTagName=function(e){var t=this.logNamespaceUsed(e);return this.getNamespaces().logUsed(t),Dr(e)},zr.prototype.addAttribute=function(e,t){var n=this.attrs;m(t)&&(t=Or(t,Tr,Br)),n.push({name:e,value:t})},zr.prototype.serializeAttributes=function(e){var t=this.attrs,n=this.namespaces;n&&(t=function(e){return e.getUsed().filter((function(e){return"xml"!==e.prefix})).map((function(e){return{name:"xmlns"+(e.prefix?":"+e.prefix:""),value:e.uri}}))}(n).concat(t)),b(t,(function(t){e.append(" ").append(Dr(t.name)).append('="').append(t.value).append('"')}))},zr.prototype.serializeTo=function(e){var t=this.body[0],n=t&&t.constructor!==Lr;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()},kr(Fr,zr),Fr.prototype.parseNsAttributes=function(e){var t=zr.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(lr),(i.prefix?i.prefix+":":"")+o+n.ns.localName),t},Fr.prototype.isLocalNs=function(e){return e.uri===(this.typeNs||this.ns).uri},Vr.prototype=Object.create(Wi.prototype),Vr.prototype.fromXML=function(e,t,n){m(t)||(n=t,t="bpmn:Definitions");var i=new Rr(F({model:this,lax:!0},n)),r=i.handler(t);return i.fromXML(e,r)},Vr.prototype.toXML=function(e,t){var n=new Gr(t);return new Promise((function(t,i){try{return t({xml:n.toXML(e)})}catch(e){return i(e)}}))};var Wr={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","InteractionNode"],properties:[{name:"calledElement",type:"String",isAttr:!0}]},{name:"Task",superClass:["Activity","InteractionNode"]},{name:"SendTask",superClass:["Task"],properties:[{name:"implementation",isAttr:!0,type:"String"},{name:"operationRef",type:"Operation",isAttr:!0,isReference:!0},{name:"messageRef",type:"Message",isAttr:!0,isReference:!0}]},{name:"ReceiveTask",superClass:["Task"],properties:[{name:"implementation",isAttr:!0,type:"String"},{name:"instantiate",default:!1,isAttr:!0,type:"Boolean"},{name:"operationRef",type:"Operation",isAttr:!0,isReference:!0},{name:"messageRef",type:"Message",isAttr:!0,isReference:!0}]},{name:"ScriptTask",superClass:["Task"],properties:[{name:"scriptFormat",isAttr:!0,type:"String"},{name:"script",type:"String"}]},{name:"BusinessRuleTask",superClass:["Task"],properties:[{name:"implementation",isAttr:!0,type:"String"}]},{name:"AdHocSubProcess",superClass:["SubProcess"],properties:[{name:"completionCondition",type:"Expression",xml:{serialize:"xsi:type"}},{name:"ordering",type:"AdHocOrdering",isAttr:!0},{name:"cancelRemainingInstances",default:!0,isAttr:!0,type:"Boolean"}]},{name:"Transaction",superClass:["SubProcess"],properties:[{name:"protocol",isAttr:!0,type:"String"},{name:"method",isAttr:!0,type:"String"}]},{name:"GlobalScriptTask",superClass:["GlobalTask"],properties:[{name:"scriptLanguage",isAttr:!0,type:"String"},{name:"script",isAttr:!0,type:"String"}]},{name:"GlobalBusinessRuleTask",superClass:["GlobalTask"],properties:[{name:"implementation",isAttr:!0,type:"String"}]},{name:"ComplexBehaviorDefinition",superClass:["BaseElement"],properties:[{name:"condition",type:"FormalExpression"},{name:"event",type:"ImplicitThrowEvent"}]},{name:"ResourceRole",superClass:["BaseElement"],properties:[{name:"resourceRef",type:"Resource",isReference:!0},{name:"resourceParameterBindings",type:"ResourceParameterBinding",isMany:!0},{name:"resourceAssignmentExpression",type:"ResourceAssignmentExpression"},{name:"name",isAttr:!0,type:"String"}]},{name:"ResourceParameterBinding",properties:[{name:"expression",type:"Expression",xml:{serialize:"xsi:type"}},{name:"parameterRef",type:"ResourceParameter",isAttr:!0,isReference:!0}],superClass:["BaseElement"]},{name:"ResourceAssignmentExpression",properties:[{name:"expression",type:"Expression",xml:{serialize:"xsi:type"}}],superClass:["BaseElement"]},{name:"Import",properties:[{name:"importType",isAttr:!0,type:"String"},{name:"location",isAttr:!0,type:"String"},{name:"namespace",isAttr:!0,type:"String"}]},{name:"Definitions",superClass:["BaseElement"],properties:[{name:"name",isAttr:!0,type:"String"},{name:"targetNamespace",isAttr:!0,type:"String"},{name:"expressionLanguage",default:"http://www.w3.org/1999/XPath",isAttr:!0,type:"String"},{name:"typeLanguage",default:"http://www.w3.org/2001/XMLSchema",isAttr:!0,type:"String"},{name:"imports",type:"Import",isMany:!0},{name:"extensions",type:"Extension",isMany:!0},{name:"rootElements",type:"RootElement",isMany:!0},{name:"diagrams",isMany:!0,type:"bpmndi:BPMNDiagram"},{name:"exporter",isAttr:!0,type:"String"},{name:"relationships",type:"Relationship",isMany:!0},{name:"exporterVersion",isAttr:!0,type:"String"}]}],enumerations:[{name:"ProcessType",literalValues:[{name:"None"},{name:"Public"},{name:"Private"}]},{name:"GatewayDirection",literalValues:[{name:"Unspecified"},{name:"Converging"},{name:"Diverging"},{name:"Mixed"}]},{name:"EventBasedGatewayType",literalValues:[{name:"Parallel"},{name:"Exclusive"}]},{name:"RelationshipDirection",literalValues:[{name:"None"},{name:"Forward"},{name:"Backward"},{name:"Both"}]},{name:"ItemKind",literalValues:[{name:"Physical"},{name:"Information"}]},{name:"ChoreographyLoopType",literalValues:[{name:"None"},{name:"Standard"},{name:"MultiInstanceSequential"},{name:"MultiInstanceParallel"}]},{name:"AssociationDirection",literalValues:[{name:"None"},{name:"One"},{name:"Both"}]},{name:"MultiInstanceBehavior",literalValues:[{name:"None"},{name:"One"},{name:"All"},{name:"Complex"}]},{name:"AdHocOrdering",literalValues:[{name:"Parallel"},{name:"Sequential"}]}],xml:{tagAlias:"lowerCase",typePrefix:"t"}},bpmndi:{name:"BPMNDI",uri:"http://www.omg.org/spec/BPMN/20100524/DI",prefix:"bpmndi",types:[{name:"BPMNDiagram",properties:[{name:"plane",type:"BPMNPlane",redefines:"di:Diagram#rootElement"},{name:"labelStyle",type:"BPMNLabelStyle",isMany:!0}],superClass:["di:Diagram"]},{name:"BPMNPlane",properties:[{name:"bpmnElement",isAttr:!0,isReference:!0,type:"bpmn:BaseElement",redefines:"di:DiagramElement#modelElement"}],superClass:["di:Plane"]},{name:"BPMNShape",properties:[{name:"bpmnElement",isAttr:!0,isReference:!0,type:"bpmn:BaseElement",redefines:"di:DiagramElement#modelElement"},{name:"isHorizontal",isAttr:!0,type:"Boolean"},{name:"isExpanded",isAttr:!0,type:"Boolean"},{name:"isMarkerVisible",isAttr:!0,type:"Boolean"},{name:"label",type:"BPMNLabel"},{name:"isMessageVisible",isAttr:!0,type:"Boolean"},{name:"participantBandKind",type:"ParticipantBandKind",isAttr:!0},{name:"choreographyActivityShape",type:"BPMNShape",isAttr:!0,isReference:!0}],superClass:["di:LabeledShape"]},{name:"BPMNEdge",properties:[{name:"label",type:"BPMNLabel"},{name:"bpmnElement",isAttr:!0,isReference:!0,type:"bpmn:BaseElement",redefines:"di:DiagramElement#modelElement"},{name:"sourceElement",isAttr:!0,isReference:!0,type:"di:DiagramElement",redefines:"di:Edge#source"},{name:"targetElement",isAttr:!0,isReference:!0,type:"di:DiagramElement",redefines:"di:Edge#target"},{name:"messageVisibleKind",type:"MessageVisibleKind",isAttr:!0,default:"initiating"}],superClass:["di:LabeledEdge"]},{name:"BPMNLabel",properties:[{name:"labelStyle",type:"BPMNLabelStyle",isAttr:!0,isReference:!0,redefines:"di:DiagramElement#style"}],superClass:["di:Label"]},{name:"BPMNLabelStyle",properties:[{name:"font",type:"dc:Font"}],superClass:["di:Style"]}],enumerations:[{name:"ParticipantBandKind",literalValues:[{name:"top_initiating"},{name:"middle_initiating"},{name:"bottom_initiating"},{name:"top_non_initiating"},{name:"middle_non_initiating"},{name:"bottom_non_initiating"}]},{name:"MessageVisibleKind",literalValues:[{name:"initiating"},{name:"non_initiating"}]}],associations:[]},dc:{name:"DC",uri:"http://www.omg.org/spec/DD/20100524/DC",prefix:"dc",types:[{name:"Boolean"},{name:"Integer"},{name:"Real"},{name:"String"},{name:"Font",properties:[{name:"name",type:"String",isAttr:!0},{name:"size",type:"Real",isAttr:!0},{name:"isBold",type:"Boolean",isAttr:!0},{name:"isItalic",type:"Boolean",isAttr:!0},{name:"isUnderline",type:"Boolean",isAttr:!0},{name:"isStrikeThrough",type:"Boolean",isAttr:!0}]},{name:"Point",properties:[{name:"x",type:"Real",default:"0",isAttr:!0},{name:"y",type:"Real",default:"0",isAttr:!0}]},{name:"Bounds",properties:[{name:"x",type:"Real",default:"0",isAttr:!0},{name:"y",type:"Real",default:"0",isAttr:!0},{name:"width",type:"Real",isAttr:!0},{name:"height",type:"Real",isAttr:!0}]}],associations:[]},di:{name:"DI",uri:"http://www.omg.org/spec/DD/20100524/DI",prefix:"di",types:[{name:"DiagramElement",isAbstract:!0,properties:[{name:"id",isAttr:!0,isId:!0,type:"String"},{name:"extension",type:"Extension"},{name:"owningDiagram",type:"Diagram",isReadOnly:!0,isVirtual:!0,isReference:!0},{name:"owningElement",type:"DiagramElement",isReadOnly:!0,isVirtual:!0,isReference:!0},{name:"modelElement",isReadOnly:!0,isVirtual:!0,isReference:!0,type:"Element"},{name:"style",type:"Style",isReadOnly:!0,isVirtual:!0,isReference:!0},{name:"ownedElement",type:"DiagramElement",isReadOnly:!0,isMany:!0,isVirtual:!0}]},{name:"Node",isAbstract:!0,superClass:["DiagramElement"]},{name:"Edge",isAbstract:!0,superClass:["DiagramElement"],properties:[{name:"source",type:"DiagramElement",isReadOnly:!0,isVirtual:!0,isReference:!0},{name:"target",type:"DiagramElement",isReadOnly:!0,isVirtual:!0,isReference:!0},{name:"waypoint",isUnique:!1,isMany:!0,type:"dc:Point",xml:{serialize:"xsi:type"}}]},{name:"Diagram",isAbstract:!0,properties:[{name:"id",isAttr:!0,isId:!0,type:"String"},{name:"rootElement",type:"DiagramElement",isReadOnly:!0,isVirtual:!0},{name:"name",isAttr:!0,type:"String"},{name:"documentation",isAttr:!0,type:"String"},{name:"resolution",isAttr:!0,type:"Real"},{name:"ownedStyle",type:"Style",isReadOnly:!0,isMany:!0,isVirtual:!0}]},{name:"Shape",isAbstract:!0,superClass:["Node"],properties:[{name:"bounds",type:"dc:Bounds"}]},{name:"Plane",isAbstract:!0,superClass:["Node"],properties:[{name:"planeElement",type:"DiagramElement",subsettedProperty:"DiagramElement-ownedElement",isMany:!0}]},{name:"LabeledEdge",isAbstract:!0,superClass:["Edge"],properties:[{name:"ownedLabel",type:"Label",isReadOnly:!0,subsettedProperty:"DiagramElement-ownedElement",isMany:!0,isVirtual:!0}]},{name:"LabeledShape",isAbstract:!0,superClass:["Shape"],properties:[{name:"ownedLabel",type:"Label",isReadOnly:!0,subsettedProperty:"DiagramElement-ownedElement",isMany:!0,isVirtual:!0}]},{name:"Label",isAbstract:!0,superClass:["Node"],properties:[{name:"bounds",type:"dc:Bounds"}]},{name:"Style",isAbstract:!0,properties:[{name:"id",isAttr:!0,isId:!0,type:"String"}]},{name:"Extension",properties:[{name:"values",isMany:!0,type:"Element"}]}],associations:[],xml:{tagAlias:"lowerCase"}},bioc:{name:"bpmn.io colors for BPMN",uri:"http://bpmn.io/schema/bpmn/biocolor/1.0",prefix:"bioc",types:[{name:"ColoredShape",extends:["bpmndi:BPMNShape"],properties:[{name:"stroke",isAttr:!0,type:"String"},{name:"fill",isAttr:!0,type:"String"}]},{name:"ColoredEdge",extends:["bpmndi:BPMNEdge"],properties:[{name:"stroke",isAttr:!0,type:"String"},{name:"fill",isAttr:!0,type:"String"}]}],enumerations:[],associations:[]},color:{name:"BPMN in Color",uri:"http://www.omg.org/spec/BPMN/non-normative/color/1.0",prefix:"color",types:[{name:"ColoredLabel",extends:["bpmndi:BPMNLabel"],properties:[{name:"color",isAttr:!0,type:"String"}]},{name:"ColoredShape",extends:["bpmndi:BPMNShape"],properties:[{name:"background-color",isAttr:!0,type:"String"},{name:"border-color",isAttr:!0,type:"String"}]},{name:"ColoredEdge",extends:["bpmndi:BPMNEdge"],properties:[{name:"border-color",isAttr:!0,type:"String"}]}],enumerations:[],associations:[]}};function Ur(e,t){return new Vr(F({},Wr,e),t)}function qr(e){return e?"<"+e.$type+(e.id?' id="'+e.id:"")+'" />':"<null>"}function Kr(e){return function(){if(!window.Promise)throw new Error("Promises is not supported in this environment. Please polyfill Promise.");var t=arguments.length;if(!(t>=1&&f(arguments[t-1])))return e.apply(this,arguments);var n=arguments[t-1];console.warn(new Error("Passing callbacks to "+e.name+" is deprecated and will be removed in a future major release. Please switch to promises: https://bpmn.io/l/moving-to-promises.html"));var i=Array.prototype.slice.call(arguments,0,-1);e.apply(this,i).then((function(e){var t=Object.keys(e)[0];return n(null,e[t])}),(function(e){return n(e,e.warnings)}))}}function Yr(e){v(e,"di")||Object.defineProperty(e,"di",{get:function(){throw new Error("Tried to access di from the businessObject. The di is available through the diagram element only. For more information, see https://github.com/bpmn-io/bpmn-js/issues/1472")}})}function Xr(e,t){return e.$instanceOf(t)}function Zr(e,t){var n={},i=[],r={};function o(e,t){return function(n){e(n,t)}}function a(e){n[e.id]=e}function s(n,i){try{var o=r[n.id]&&function(n,i){if(n.gfx)throw new Error(t("already rendered {element}",{element:qr(n)}));return e.element(n,r[n.id],i)}(n,i);return a(n),o}catch(e){c(e.message,{element:n,error:e}),console.error(t("failed to import {element}",{element:qr(n)})),console.error(e)}}function c(t,n){e.error(t,n)}function p(e){var n=e.bpmnElement;n?r[n.id]?c(t("multiple DI elements defined for {element}",{element:qr(n)}),{element:n}):(r[n.id]=e,Yr(n)):c(t("no bpmnElement referenced in {element}",{element:qr(e)}),{element:e})}function l(e){var t;p(t=e.plane),b(t.planeElement,u)}function u(e){p(e)}function h(){for(;i.length;)i.shift()()}function d(e,t){A(e,t),w(e.ioSpecification,t),E(e.artifacts,t),a(e)}function f(e,t){s(e,t)}function m(e,t){s(e,t)}function v(e,t){s(e,t)}function x(e,t){s(e,t)}function _(e,t){s(e,t)}function E(e,t){b(e,(function(e){Xr(e,"bpmn:Association")?i.push((function(){_(e,t)})):_(e,t)}))}function w(e,t){e&&(b(e.dataInputs,o(v,t)),b(e.dataOutputs,o(x,t)))}function S(e,t){A(e,t),E(e.artifacts,t)}function C(e,t){var n=s(e,t);Xr(e,"bpmn:SubProcess")&&S(e,n||t),Xr(e,"bpmn:Activity")&&w(e.ioSpecification,t),i.push((function(){b(e.dataInputAssociations,o(m,t)),b(e.dataOutputAssociations,o(m,t))}))}function R(e,t){s(e,t)}function T(e,t){i.push((function(){var n=s(e,t);e.childLaneSet&&P(e.childLaneSet,n||t),function(e){b(e.flowNodeRef,(function(t){var n=t.get("lanes");n&&n.push(e)}))}(e)}))}function P(e,t){b(e.lanes,o(T,t))}function A(e,n){!function(e,n){b(e,(function(e){Xr(e,"bpmn:SequenceFlow")?i.push((function(){!function(e,t){s(e,t)}(e,n)})):Xr(e,"bpmn:BoundaryEvent")?i.unshift((function(){C(e,n)})):Xr(e,"bpmn:FlowNode")?C(e,n):Xr(e,"bpmn:DataObject")||(Xr(e,"bpmn:DataStoreReference")||Xr(e,"bpmn:DataObjectReference")?R(e,n):c(t("unrecognized flowElement {element} in context {context}",{element:qr(e),context:n?qr(n.businessObject):"null"}),{element:e,context:n}))}))}(e.flowElements,n),e.laneSets&&function(e,t){b(e,o(P,t))}(e.laneSets,n)}function M(e,t){var n=s(e,t),i=e.processRef;i&&d(i,n||t)}return{handleDeferred:h,handleDefinitions:function(a,s){var u=a.diagrams;if(s&&-1===u.indexOf(s))throw new Error(t("diagram not part of bpmn:Definitions"));if(!s&&u&&u.length&&(s=u[0]),!s)throw new Error(t("no diagram to display"));r={},l(s);var m=s.plane;if(!m)throw new Error(t("no plane for {element}",{element:qr(s)}));var v=m.bpmnElement;if(!v){if(!(v=function(e){return y(e.rootElements,(function(e){return Xr(e,"bpmn:Process")||Xr(e,"bpmn:Collaboration")}))}(a)))throw new Error(t("no process or collaboration to display"));c(t("correcting missing bpmnElement on {plane} to {rootElement}",{plane:qr(m),rootElement:qr(v)})),m.bpmnElement=v,p(m)}var x,_,w=function(t,n){return e.root(t,r[t.id],n)}(v,m);if(Xr(v,"bpmn:Process")||Xr(v,"bpmn:SubProcess"))d(v,w);else{if(!Xr(v,"bpmn:Collaboration"))throw new Error(t("unsupported bpmnElement for {plane}: {rootElement}",{plane:qr(m),rootElement:qr(v)}));_=w,b((x=v).participants,o(M,_)),E(x.artifacts,_),i.push((function(){!function(e,t){b(e,o(f,t))}(x.messageFlows,_)})),function(e,t){g(e,(function(e){return!n[e.id]&&Xr(e,"bpmn:Process")&&e.laneSets})).forEach(o(d,t))}(a.rootElements,w)}h()},handleSubProcess:S,registerDi:p}}function Qr(e,t){var n=eo(e);return n&&"function"==typeof n.$instanceOf&&n.$instanceOf(t)}function Jr(e,t){return w(t,(function(t){return Qr(e,t)}))}function eo(e){return e&&e.businessObject||e}function to(e){return e&&e.di}function no(e,t,n){var i,r,o,a,s=[];function c(e,t){var n=new Zr({root:function(e,t){return i.add(e,t)},element:function(e,t,n){return i.add(e,t,n)},error:function(e,t){s.push({message:e,context:t})}},o);t=t||e.diagrams&&e.diagrams[0];var r=function(e,t){if(!t)return;var n,i=t.plane.bpmnElement,r=i;Qr(i,"bpmn:Process")||Qr(i,"bpmn:Collaboration")||(r=function(e){var t=e;for(;t;){if(Qr(t,"bpmn:Process"))return t;t=t.$parent}}
|
|
8
8
|
/**
|
|
9
9
|
* This file must not be changed or exchanged.
|
|
10
10
|
*
|
|
11
11
|
* @see http://bpmn.io/license for more information.
|
|
12
|
-
*/(i));n=
|
|
12
|
+
*/(i));n=Qr(r,"bpmn:Collaboration")?r:y(e.rootElements,(function(e){if(Qr(e,"bpmn:Collaboration"))return y(e.participants,(function(e){return e.processRef===r}))}));var o=[r];n&&(o=S(n.participants,(function(e){return e.processRef}))).push(n);var a=io(o),s=[t],c=[i];return b(e.diagrams,(function(e){var t=e.plane.bpmnElement;-1!==a.indexOf(t)&&-1===c.indexOf(t)&&(s.push(e),c.push(t))})),s}(e,t);if(!r)throw new Error(o("no diagram to display"));b(r,(function(t){n.handleDefinitions(e,t)}));var c=t.plane.bpmnElement.id;a.setRootElement(a.findRoot(c+"_plane")||a.findRoot(c))}return new Promise((function(p,l){try{return i=e.get("bpmnImporter"),r=e.get("eventBus"),o=e.get("translate"),a=e.get("canvas"),r.fire("import.render.start",{definitions:t}),c(t,n),r.fire("import.render.complete",{error:undefined,warnings:s}),p({warnings:s})}catch(e){return e.warnings=s,l(e)}}))}function io(e){var t=[];return b(e,(function(e){e&&(t.push(e),t=t.concat(io(e.flowElements)))})),t}var ro,oo='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 14.02 5.57" width="53" height="21"><path fill="currentColor" d="M1.88.92v.14c0 .41-.13.68-.4.8.33.14.46.44.46.86v.33c0 .61-.33.95-.95.95H0V0h.95c.65 0 .93.3.93.92zM.63.57v1.06h.24c.24 0 .38-.1.38-.43V.98c0-.28-.1-.4-.32-.4zm0 1.63v1.22h.36c.2 0 .32-.1.32-.39v-.35c0-.37-.12-.48-.4-.48H.63zM4.18.99v.52c0 .64-.31.98-.94.98h-.3V4h-.62V0h.92c.63 0 .94.35.94.99zM2.94.57v1.35h.3c.2 0 .3-.09.3-.37v-.6c0-.29-.1-.38-.3-.38h-.3zm2.89 2.27L6.25 0h.88v4h-.6V1.12L6.1 3.99h-.6l-.46-2.82v2.82h-.55V0h.87zM8.14 1.1V4h-.56V0h.79L9 2.4V0h.56v4h-.64zm2.49 2.29v.6h-.6v-.6zM12.12 1c0-.63.33-1 .95-1 .61 0 .95.37.95 1v2.04c0 .64-.34 1-.95 1-.62 0-.95-.37-.95-1zm.62 2.08c0 .28.13.39.33.39s.32-.1.32-.4V.98c0-.29-.12-.4-.32-.4s-.33.11-.33.4z"/><path fill="currentColor" d="M0 4.53h14.02v1.04H0zM11.08 0h.63v.62h-.63zm.63 4V1h-.63v2.98z"/></svg>',ao={verticalAlign:"middle"},so={color:"#404040"},co={zIndex:"1001",position:"fixed",top:"0",left:"0",right:"0",bottom:"0"},po={width:"100%",height:"100%",background:"rgba(40,40,40,0.2)"},lo={position:"absolute",left:"50%",top:"40%",transform:"translate(-50%)",width:"260px",padding:"10px",background:"white",boxShadow:"0 1px 4px rgba(0,0,0,0.3)",fontFamily:"Helvetica, Arial, sans-serif",fontSize:"14px",display:"flex",lineHeight:"1.3"};function uo(){ro||(Y(ro=de('<div class="bjs-powered-by-lightbox"><div class="backdrop"></div><div class="notice"><a href="https://bpmn.io" target="_blank" rel="noopener" class="link"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 14.02 5.57" width="53" height="21"><path fill="currentColor" d="M1.88.92v.14c0 .41-.13.68-.4.8.33.14.46.44.46.86v.33c0 .61-.33.95-.95.95H0V0h.95c.65 0 .93.3.93.92zM.63.57v1.06h.24c.24 0 .38-.1.38-.43V.98c0-.28-.1-.4-.32-.4zm0 1.63v1.22h.36c.2 0 .32-.1.32-.39v-.35c0-.37-.12-.48-.4-.48H.63zM4.18.99v.52c0 .64-.31.98-.94.98h-.3V4h-.62V0h.92c.63 0 .94.35.94.99zM2.94.57v1.35h.3c.2 0 .3-.09.3-.37v-.6c0-.29-.1-.38-.3-.38h-.3zm2.89 2.27L6.25 0h.88v4h-.6V1.12L6.1 3.99h-.6l-.46-2.82v2.82h-.55V0h.87zM8.14 1.1V4h-.56V0h.79L9 2.4V0h.56v4h-.64zm2.49 2.29v.6h-.6v-.6zM12.12 1c0-.63.33-1 .95-1 .61 0 .95.37.95 1v2.04c0 .64-.34 1-.95 1-.62 0-.95-.37-.95-1zm.62 2.08c0 .28.13.39.33.39s.32-.1.32-.4V.98c0-.29-.12-.4-.32-.4s-.33.11-.33.4z"/><path fill="currentColor" d="M0 4.53h14.02v1.04H0zM11.08 0h.63v.62h-.63zm.63 4V1h-.63v2.98z"/></svg></a><span>Web-based tooling for BPMN, DMN and CMMN diagrams powered by <a href="https://bpmn.io" target="_blank" rel="noopener">bpmn.io</a>.</span></div></div>'),co),Y(ve("svg",ro),ao),Y(ve(".backdrop",ro),po),Y(ve(".notice",ro),lo),Y(ve(".link",ro),so,{margin:"15px 20px 15px 10px",alignSelf:"center"}),he.bind(ro,".backdrop","click",(function(e){document.body.removeChild(ro)}))),document.body.appendChild(ro)}
|
|
13
13
|
/**
|
|
14
14
|
* The code in the <project-logo></project-logo> area
|
|
15
15
|
* must not be changed.
|
|
16
16
|
*
|
|
17
17
|
* @see http://bpmn.io/license for more information.
|
|
18
|
-
*/
|
|
19
|
-
function Tr(e){
|
|
18
|
+
*/function ho(e){
|
|
20
19
|
/**
|
|
21
20
|
* Adds the project logo to the diagram container as
|
|
22
21
|
* required by the bpmn.io license.
|
|
@@ -25,11 +24,11 @@ function Tr(e){
|
|
|
25
24
|
*
|
|
26
25
|
* @param {Element} container
|
|
27
26
|
*/
|
|
28
|
-
var t,n;e=F({},Ar,e),this._moddle=this._createModdle(e),this._container=this._createContainer(e),t=this._container,n=ce('<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; '+Cr+'">'+Er+"</a>"),t.appendChild(n),re.bind(n,"click",(function(e){Sr||(Sr=ce(Rr),se.bind(Sr,".backdrop","click",(function(e){document.body.removeChild(Sr)}))),document.body.appendChild(Sr),e.preventDefault()})),this._init(this._container,this._moddle,e)}function Pr(e,t){return e.warnings=t,e}n(Tr,Yn),Tr.prototype.importXML=hr((function(e,t){var n=this;return new Promise((function(i,r){e=n._emit("import.parse.start",{xml:e})||e,n._moddle.fromXML(e,"bpmn:Definitions").then((function(e){var o,a,s=e.rootElement,c=e.references,p=e.warnings,l=e.elementsById;s=n._emit("import.parse.complete",(o={error:null,definitions:s,elementsById:l,references:c,warnings:p},a=n.get("eventBus").createEvent(o),Object.defineProperty(a,"context",{enumerable:!0,get:function(){return console.warn(new Error("import.parse.complete <context> is deprecated and will be removed in future library versions")),{warnings:o.warnings,references:o.references,elementsById:o.elementsById}}}),a))||s,n.importDefinitions(s,t).then((function(e){var t=[].concat(p,e.warnings||[]);return n._emit("import.done",{error:null,warnings:t}),i({warnings:t})})).catch((function(e){var t=[].concat(p,e.warnings||[]);return n._emit("import.done",{error:e,warnings:t}),r(Pr(e,t))}))})).catch((function(e){return n._emit("import.parse.complete",{error:e}),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),n._emit("import.done",{error:e,warnings:e.warnings}),r(e)}))}))})),Tr.prototype.importDefinitions=hr((function(e,t){var n=this;return new Promise((function(i,r){n._setDefinitions(e),n.open(t).then((function(e){var t=e.warnings;return i({warnings:t})})).catch((function(e){return r(e)}))}))})),Tr.prototype.open=hr((function(e){var t=this._definitions,n=e,i=this;return new Promise((function(r,o){if(!t){var a=new Error("no XML imported");return o(Pr(a,[]))}if("string"==typeof e&&!(n=function(e,t){if(!t)return null;return y(e.diagrams,(function(e){return e.id===t}))||null}(t,e))){var s=new Error("BPMNDiagram <"+e+"> not found");return o(Pr(s,[]))}try{i.clear()}catch(e){return o(Pr(e,[]))}xr(i,t,n).then((function(e){var t=e.warnings;return r({warnings:t})})).catch((function(e){return o(e)}))}))})),Tr.prototype.saveXML=hr((function(e){e=e||{};var t=this,n=this._definitions;return new Promise((function(i){if(!n)return i({error:new Error("no definitions loaded")});n=t._emit("saveXML.start",{definitions:n})||n,t._moddle.toXML(n,e).then((function(e){var n=e.xml;return n=t._emit("saveXML.serialized",{xml:n})||n,i({xml:n})}))})).catch((function(e){return{error:e}})).then((function(e){t._emit("saveXML.done",e);var n=e.error;return n?Promise.reject(n):e}))})),Tr.prototype.saveSVG=hr((function(e){var t=this;return new Promise((function(e,n){var i,r;t._emit("saveSVG.start");try{var o=t.get("canvas"),a=o.getActiveLayer(),s=ue("defs",o._svg),c=$e(a),p=s?"<defs>"+$e(s)+"</defs>":"",l=a.getBBox();i='<?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="'+l.width+'" height="'+l.height+'" viewBox="'+l.x+" "+l.y+" "+l.width+" "+l.height+'" version="1.1">'+p+c+"</svg>"}catch(e){r=e}return t._emit("saveSVG.done",{error:r,svg:i}),r?n(r):e({svg:i})}))})),Tr.prototype._setDefinitions=function(e){this._definitions=e},Tr.prototype.getModules=function(){return this._modules},Tr.prototype.clear=function(){this.getDefinitions()&&Yn.prototype.clear.call(this)},Tr.prototype.destroy=function(){Yn.prototype.destroy.call(this),de(this._container)},Tr.prototype.on=function(e,t,n,i){return this.get("eventBus").on(e,t,n,i)},Tr.prototype.off=function(e,t){this.get("eventBus").off(e,t)},Tr.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=ue(e)),e.appendChild(this._container),this._emit("attach",{}),this.get("canvas").resized()},Tr.prototype.getDefinitions=function(){return this._definitions},Tr.prototype.detach=function(){var e=this._container,t=e.parentNode;t&&(this._emit("detach",{}),t.removeChild(e))},Tr.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});Yn.call(this,a),n&&n.container&&this.attachTo(n.container)},Tr.prototype._emit=function(e,t){return this.get("eventBus").fire(e,t)},Tr.prototype._createContainer=function(e){var t=ce('<div class="bjs-container"></div>');return F(t.style,{width:kr(e.width),height:kr(e.height),position:e.position}),t},Tr.prototype._createModdle=function(e){return new lr(F({},this._moddleExtensions,e.moddleExtensions))},Tr.prototype._modules=[];var Ar={width:"100%",height:"100%",position:"relative"};function kr(e){return e+(d(e)?"px":"")}function Mr(e){Tr.call(this,e),this.on("import.parse.complete",(function(e){e.error||this._collectIds(e.definitions,e.elementsById)}),this),this.on("diagram.destroy",(function(){this.get("moddle").ids.clear()}),this)}function Dr(e,t){return!vr(e,"bpmn:CallActivity")&&(vr(e,"bpmn:SubProcess")?!(!(t=t||br(e))||!vr(t,"bpmndi:BPMNPlane"))||t&&!!t.isExpanded:!vr(e,"bpmn:Participant")||!!gr(e).processRef)}function Br(e){return e&&!!gr(e).triggeredByEvent}function Nr(e,t){var n=gr(e),i=!1;return n.eventDefinitions&&b(n.eventDefinitions,(function(e){vr(e,t)&&(i=!0)})),i}function Or(e){return vr(e,"bpmn:FlowElement")||vr(e,"bpmn:Participant")||vr(e,"bpmn:Lane")||vr(e,"bpmn:SequenceFlow")||vr(e,"bpmn:MessageFlow")||vr(e,"bpmn:DataInput")||vr(e,"bpmn:DataOutput")?"name":vr(e,"bpmn:TextAnnotation")?"text":vr(e,"bpmn:Group")?"categoryValueRef":void 0}function jr(e){var t=e.businessObject,n=Or(t);if(n)return"categoryValueRef"===n?function(e){var t=e.categoryValueRef;return t&&t.value||""}(t):t[n]||""}function Lr(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 Ir(e){return e.businessObject}function zr(e,t){var n=br(e);return n.get("color:background-color")||n.get("bioc:fill")||t||"white"}function Fr(e,t){var n=br(e);return n.get("color:border-color")||n.get("bioc:stroke")||t||"black"}function $r(e,t,n){var i=br(e).get("label");return i&&i.get("color:color")||t||Fr(e,n)}n(Mr,Tr),Mr.prototype._createModdle=function(e){var t=Tr.prototype._createModdle.call(this,e);return t.ids=new r([32,36,1]),t},Mr.prototype._collectIds=function(e,t){var n,i=e.$model.ids;for(n in i.clear(),t)i.claim(n,t[n])};var Hr=new r,Gr=.95;function Wr(e,t,n,i,r,o,a){et.call(this,t,a);var s=e&&e.defaultFillColor,c=e&&e.defaultStrokeColor,p=e&&e.defaultLabelColor,l=Hr.next(),u={},d=n.computeStyle;function f(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=Me("marker");ge(t.element,n),me(a,t.element),ge(a,{id:e,viewBox:"0 0 20 20",refX:i.x,refY:i.y,markerWidth:20*o,markerHeight:20*o,orient:"auto"});var s=ue("defs",r._svg);s||(s=Me("defs"),me(r._svg,s)),me(s,a),u[e]=a}function m(e){return e.replace(/[^0-9a-zA-z]+/g,"_")}function v(e,t,n){var i=e+"-"+m(t)+"-"+m(n)+"-"+l;return u[i]||function(e,t,n,i){if("sequenceflow-end"===t){var r=Me("path");ge(r,{d:"M 1 5 L 11 10 L 1 15 Z"}),f(e,{element:r,ref:{x:11,y:10},scale:.5,attrs:{fill:i,stroke:i}})}if("messageflow-start"===t){var o=Me("circle");ge(o,{cx:6,cy:6,r:3.5}),f(e,{element:o,attrs:{fill:n,stroke:i},ref:{x:6,y:6}})}if("messageflow-end"===t){var a=Me("path");ge(a,{d:"m 1 5 l 0 -3 l 7 3 l -7 3 z"}),f(e,{element:a,attrs:{fill:n,stroke:i,strokeLinecap:"butt"},ref:{x:8.5,y:5}})}if("association-start"===t){var s=Me("path");ge(s,{d:"M 11 5 L 1 10 L 11 15"}),f(e,{element:s,attrs:{fill:"none",stroke:i,strokeWidth:1.5},ref:{x:1,y:10},scale:.5})}if("association-end"===t){var c=Me("path");ge(c,{d:"M 1 5 L 11 10 L 1 15"}),f(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=Me("path");ge(p,{d:"M 0 10 L 8 6 L 16 10 L 8 14 Z"}),f(e,{element:p,attrs:{fill:n,stroke:i},ref:{x:-1,y:10},scale:.5})}if("conditional-default-flow-marker"===t){var l=Me("path");ge(l,{d:"M 6 4 L 10 16"}),f(e,{element:l,attrs:{stroke:i},ref:{x:0,y:10},scale:.5})}}(i,e,t,n),"url(#"+i+")"}function y(e,t,n,i,r){h(i)&&(r=i,i=0),i=i||0,"none"===(r=d(r,{stroke:"black",strokeWidth:2,fill:"white"})).fill&&delete r.fillOpacity;var o=t/2,a=n/2,s=Me("circle");return ge(s,{cx:o,cy:a,r:Math.round((t+n)/4-i)}),ge(s,r),me(e,s),s}function g(e,t,n,i,r,o){h(r)&&(o=r,r=0),r=r||0,o=d(o,{stroke:"black",strokeWidth:2,fill:"white"});var a=Me("rect");return ge(a,{x:r,y:r,width:t-2*r,height:n-2*r,rx:i,ry:i}),ge(a,o),me(e,a),a}function x(e,t,n){var i=it(t,n=d(n,["no-fill"],{stroke:"black",strokeWidth:2,fill:"none"}));return me(e,i),i}function _(e,t,n){n=d(n,["no-fill"],{strokeWidth:2,stroke:"black"});var i=Me("path");return ge(i,{d:t}),ge(i,n),me(e,i),i}function E(e,t,n,i){return _(t,n,F({"data-marker":e},i))}function w(e){return k[e]}function S(e){return function(t,n){return w(e)(t,n)}}function C(e,t){var n=Ir(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):Lr(n,"bpmn:MessageEventDefinition")?w("bpmn:MessageEventDefinition")(t,e,i):Lr(n,"bpmn:TimerEventDefinition")?w("bpmn:TimerEventDefinition")(t,e,i):Lr(n,"bpmn:ConditionalEventDefinition")?w("bpmn:ConditionalEventDefinition")(t,e):Lr(n,"bpmn:SignalEventDefinition")?w("bpmn:SignalEventDefinition")(t,e,i):Lr(n,"bpmn:EscalationEventDefinition")?w("bpmn:EscalationEventDefinition")(t,e,i):Lr(n,"bpmn:LinkEventDefinition")?w("bpmn:LinkEventDefinition")(t,e,i):Lr(n,"bpmn:ErrorEventDefinition")?w("bpmn:ErrorEventDefinition")(t,e,i):Lr(n,"bpmn:CancelEventDefinition")?w("bpmn:CancelEventDefinition")(t,e,i):Lr(n,"bpmn:CompensateEventDefinition")?w("bpmn:CompensateEventDefinition")(t,e,i):Lr(n,"bpmn:TerminateEventDefinition")?w("bpmn:TerminateEventDefinition")(t,e,i):null}function R(e,t,n){n=F({size:{width:100}},n);var i=o.createText(t||"",n);return we(i).add("djs-label"),me(e,i),i}function T(e,t,n){return R(e,Ir(t).name,{box:t,align:n,padding:5,style:{fill:$r(t,p,c)}})}function P(e,t,n){Hn(R(e,t,{box:{height:30,width:n.height},align:"center-middle",style:{fill:$r(n,p,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=Gr),y(e,t.width,t.height,n)},"bpmn:StartEvent":function(e,t){var n={fill:zr(t,s),stroke:Fr(t,c)};Ir(t).isInterrupting||(n={strokeDasharray:"6",strokeLinecap:"round",fill:zr(t,s),stroke:Fr(t,c)});var i=w("bpmn:Event")(e,t,n);return C(t,e),i},"bpmn:MessageEventDefinition":function(e,t,n){return _(e,i.getScaledPath("EVENT_MESSAGE",{xScaleFactor:.9,yScaleFactor:.9,containerWidth:t.width,containerHeight:t.height,position:{mx:.235,my:.315}}),{strokeWidth:1,fill:n?Fr(t,c):zr(t,s),stroke:n?zr(t,s):Fr(t,c)})},"bpmn:TimerEventDefinition":function(e,t){var n=y(e,t.width,t.height,.2*t.height,{strokeWidth:2,fill:zr(t,s),stroke:Fr(t,c)});_(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:Fr(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;_(e,o,{strokeWidth:1,strokeLinecap:"square",transform:"rotate("+30*r+","+t.height/2+","+a+")",stroke:Fr(t,c)})}return n},"bpmn:EscalationEventDefinition":function(e,t,n){return _(e,i.getScaledPath("EVENT_ESCALATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:.5,my:.2}}),{strokeWidth:1,fill:n?Fr(t,c):"none",stroke:Fr(t,c)})},"bpmn:ConditionalEventDefinition":function(e,t){return _(e,i.getScaledPath("EVENT_CONDITIONAL",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:.5,my:.222}}),{strokeWidth:1,stroke:Fr(t,c)})},"bpmn:LinkEventDefinition":function(e,t,n){return _(e,i.getScaledPath("EVENT_LINK",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:.57,my:.263}}),{strokeWidth:1,fill:n?Fr(t,c):"none",stroke:Fr(t,c)})},"bpmn:ErrorEventDefinition":function(e,t,n){return _(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?Fr(t,c):"none",stroke:Fr(t,c)})},"bpmn:CancelEventDefinition":function(e,t,n){var r=_(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?Fr(t,c):"none",stroke:Fr(t,c)});return Wn(r,45),r},"bpmn:CompensateEventDefinition":function(e,t,n){return _(e,i.getScaledPath("EVENT_COMPENSATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:.22,my:.5}}),{strokeWidth:1,fill:n?Fr(t,c):"none",stroke:Fr(t,c)})},"bpmn:SignalEventDefinition":function(e,t,n){return _(e,i.getScaledPath("EVENT_SIGNAL",{xScaleFactor:.9,yScaleFactor:.9,containerWidth:t.width,containerHeight:t.height,position:{mx:.5,my:.2}}),{strokeWidth:1,fill:n?Fr(t,c):"none",stroke:Fr(t,c)})},"bpmn:MultipleEventDefinition":function(e,t,n){return _(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?Fr(t,c):"none"})},"bpmn:ParallelMultipleEventDefinition":function(e,t){return _(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:Fr(t,c),stroke:Fr(t,c)})},"bpmn:EndEvent":function(e,t){var n=w("bpmn:Event")(e,t,{strokeWidth:4,fill:zr(t,s),stroke:Fr(t,c)});return C(t,e),n},"bpmn:TerminateEventDefinition":function(e,t){return y(e,t.width,t.height,8,{strokeWidth:4,fill:Fr(t,c),stroke:Fr(t,c)})},"bpmn:IntermediateEvent":function(e,t){var n=w("bpmn:Event")(e,t,{strokeWidth:1,fill:zr(t,s),stroke:Fr(t,c)});return y(e,t.width,t.height,3,{strokeWidth:1,fill:zr(t,"none"),stroke:Fr(t,c)}),C(t,e),n},"bpmn:IntermediateCatchEvent":S("bpmn:IntermediateEvent"),"bpmn:IntermediateThrowEvent":S("bpmn:IntermediateEvent"),"bpmn:Activity":function(e,t,n){return"fillOpacity"in(n=n||{})||(n.fillOpacity=Gr),g(e,t.width,t.height,10,n)},"bpmn:Task":function(e,t){var n={fill:zr(t,s),stroke:Fr(t,c)},i=w("bpmn:Activity")(e,t,n);return T(e,t,"center-middle"),M(e,t),i},"bpmn:ServiceTask":function(e,t){var n=w("bpmn:Task")(e,t);return _(e,i.getScaledPath("TASK_TYPE_SERVICE",{abspos:{x:12,y:18}}),{strokeWidth:1,fill:zr(t,s),stroke:Fr(t,c)}),_(e,i.getScaledPath("TASK_TYPE_SERVICE_FILL",{abspos:{x:17.2,y:18}}),{strokeWidth:0,fill:zr(t,s)}),_(e,i.getScaledPath("TASK_TYPE_SERVICE",{abspos:{x:17,y:22}}),{strokeWidth:1,fill:zr(t,s),stroke:Fr(t,c)}),n},"bpmn:UserTask":function(e,t){var n=w("bpmn:Task")(e,t);return _(e,i.getScaledPath("TASK_TYPE_USER_1",{abspos:{x:15,y:12}}),{strokeWidth:.5,fill:zr(t,s),stroke:Fr(t,c)}),_(e,i.getScaledPath("TASK_TYPE_USER_2",{abspos:{x:15,y:12}}),{strokeWidth:.5,fill:zr(t,s),stroke:Fr(t,c)}),_(e,i.getScaledPath("TASK_TYPE_USER_3",{abspos:{x:15,y:12}}),{strokeWidth:.5,fill:Fr(t,c),stroke:Fr(t,c)}),n},"bpmn:ManualTask":function(e,t){var n=w("bpmn:Task")(e,t);return _(e,i.getScaledPath("TASK_TYPE_MANUAL",{abspos:{x:17,y:15}}),{strokeWidth:.5,fill:zr(t,s),stroke:Fr(t,c)}),n},"bpmn:SendTask":function(e,t){var n=w("bpmn:Task")(e,t);return _(e,i.getScaledPath("TASK_TYPE_SEND",{xScaleFactor:1,yScaleFactor:1,containerWidth:21,containerHeight:14,position:{mx:.285,my:.357}}),{strokeWidth:1,fill:Fr(t,c),stroke:zr(t,s)}),n},"bpmn:ReceiveTask":function(e,t){var n,r=Ir(t),o=w("bpmn:Task")(e,t);return r.instantiate?(y(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}}),_(e,n,{strokeWidth:1,fill:zr(t,s),stroke:Fr(t,c)}),o},"bpmn:ScriptTask":function(e,t){var n=w("bpmn:Task")(e,t);return _(e,i.getScaledPath("TASK_TYPE_SCRIPT",{abspos:{x:15,y:20}}),{strokeWidth:1,stroke:Fr(t,c)}),n},"bpmn:BusinessRuleTask":function(e,t){var n=w("bpmn:Task")(e,t);return ge(_(e,i.getScaledPath("TASK_TYPE_BUSINESS_RULE_HEADER",{abspos:{x:8,y:8}})),{strokeWidth:1,fill:zr(t,"#aaaaaa"),stroke:Fr(t,c)}),ge(_(e,i.getScaledPath("TASK_TYPE_BUSINESS_RULE_MAIN",{abspos:{x:8,y:8}})),{strokeWidth:1,stroke:Fr(t,c)}),n},"bpmn:SubProcess":function(e,t,n){n=F({fill:zr(t,s),stroke:Fr(t,c)},n);var i=w("bpmn:Activity")(e,t,n),r=Dr(t);return Br(t)&&ge(i,{strokeDasharray:"1,2"}),T(e,t,r?"center-top":"center-middle"),r?M(e,t):M(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:Fr(t,c)});return g(e,t.width,t.height,8,3,r),i},"bpmn:CallActivity":function(e,t){return w("bpmn:SubProcess")(e,t,{strokeWidth:5})},"bpmn:Participant":function(e,t){var n={fillOpacity:Gr,fill:zr(t,s),stroke:Fr(t,c)},i=w("bpmn:Lane")(e,t,n);Dr(t)?(x(e,[{x:30,y:0},{x:30,y:t.height}],{stroke:Fr(t,c)}),P(e,Ir(t).name,t)):R(e,Ir(t).name,{box:t,align:"center-middle",style:{fill:$r(t,p,c)}});return!!Ir(t).participantMultiplicity&&w("ParticipantMultiplicityMarker")(e,t),i},"bpmn:Lane":function(e,t,n){var i=g(e,t.width,t.height,0,F({fill:zr(t,s),fillOpacity:.35,stroke:Fr(t,c)},n)),r=Ir(t);"bpmn:Lane"===r.$type&&P(e,r.name,t);return i},"bpmn:InclusiveGateway":function(e,t){var n=w("bpmn:Gateway")(e,t);return y(e,t.width,t.height,.24*t.height,{strokeWidth:2.5,fill:zr(t,s),stroke:Fr(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 br(t).isMarkerVisible&&_(e,r,{strokeWidth:1,fill:Fr(t,c),stroke:Fr(t,c)}),n},"bpmn:ComplexGateway":function(e,t){var n=w("bpmn:Gateway")(e,t);return _(e,i.getScaledPath("GATEWAY_COMPLEX",{xScaleFactor:.5,yScaleFactor:.5,containerWidth:t.width,containerHeight:t.height,position:{mx:.46,my:.26}}),{strokeWidth:1,fill:Fr(t,c),stroke:Fr(t,c)}),n},"bpmn:ParallelGateway":function(e,t){var n=w("bpmn:Gateway")(e,t);return _(e,i.getScaledPath("GATEWAY_PARALLEL",{xScaleFactor:.6,yScaleFactor:.6,containerWidth:t.width,containerHeight:t.height,position:{mx:.46,my:.2}}),{strokeWidth:1,fill:Fr(t,c),stroke:Fr(t,c)}),n},"bpmn:EventBasedGateway":function(e,t){var n=Ir(t),r=w("bpmn:Gateway")(e,t);y(e,t.width,t.height,.2*t.height,{strokeWidth:1,fill:"none",stroke:Fr(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}});ge(_(e,s),{strokeWidth:1,fill:"none"})}else if("Exclusive"===o){if(!a)ge(y(e,t.width,t.height,.26*t.height),{strokeWidth:1,fill:"none",stroke:Fr(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:zr(t,"none"),stroke:Fr(t,c)};_(e,n,r)}()}return r},"bpmn:Gateway":function(e,t){var n={fill:zr(t,s),fillOpacity:Gr,stroke:Fr(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=d(i,{stroke:"black",strokeWidth:2,fill:"white"});var s=Me("polygon");return ge(s,{points:a}),ge(s,i),me(e,s),s}(e,t.width,t.height,n)},"bpmn:SequenceFlow":function(e,t){var n,i=A(t),r=zr(t,s),o=Fr(t,c),a=_(e,i,{strokeLinejoin:"round",markerEnd:v("sequenceflow-end",r,o),stroke:Fr(t,c)}),p=Ir(t);return t.source&&(n=t.source.businessObject,p.conditionExpression&&n.$instanceOf("bpmn:Activity")&&ge(a,{markerStart:v("conditional-flow-marker",r,o)}),n.default&&(n.$instanceOf("bpmn:Gateway")||n.$instanceOf("bpmn:Activity"))&&n.default===p&&ge(a,{markerStart:v("conditional-default-flow-marker",r,o)})),a},"bpmn:Association":function(e,t,n){var i=Ir(t),r=zr(t,s),o=Fr(t,c);return n=F({strokeDasharray:"0.5, 5",strokeLinecap:"round",strokeLinejoin:"round",stroke:Fr(t,c)},n||{}),"One"!==i.associationDirection&&"Both"!==i.associationDirection||(n.markerEnd=v("association-end",r,o)),"Both"===i.associationDirection&&(n.markerStart=v("association-start",r,o)),x(e,t.waypoints,n)},"bpmn:DataInputAssociation":function(e,t){var n=zr(t,s),i=Fr(t,c);return w("bpmn:Association")(e,t,{markerEnd:v("association-end",n,i)})},"bpmn:DataOutputAssociation":function(e,t){var n=zr(t,s),i=Fr(t,c);return w("bpmn:Association")(e,t,{markerEnd:v("association-end",n,i)})},"bpmn:MessageFlow":function(e,t){var n=Ir(t),r=br(t),o=zr(t,s),a=Fr(t,c),l=_(e,A(t),{markerEnd:v("messageflow-end",o,a),markerStart:v("messageflow-start",o,a),strokeDasharray:"10, 12",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.5px",stroke:Fr(t,c)});if(n.messageRef){var u=l.getPointAtLength(l.getTotalLength()/2),h=i.getScaledPath("MESSAGE_FLOW_MARKER",{abspos:{x:u.x,y:u.y}}),d={strokeWidth:1};"initiating"===r.messageVisibleKind?(d.fill="white",d.stroke="black"):(d.fill="#888",d.stroke="white");var f=_(e,h,d),m=R(e,n.messageRef.name,{align:"center-top",fitBox:!0,style:{fill:Fr(t,p)}}),y=f.getBBox(),g=m.getBBox();Hn(m,u.x-g.width/2,u.y+y.height/2+10,0)}return l},"bpmn:DataObject":function(e,t){var n=_(e,i.getScaledPath("DATA_OBJECT_PATH",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:.474,my:.296}}),{fill:zr(t,s),fillOpacity:Gr,stroke:Fr(t,c)});return function(e){var t=e.dataObjectRef;return e.isCollection||t&&t.isCollection}(Ir(t))&&function(e,t){var n=(t.height-18)/t.height,r=i.getScaledPath("DATA_OBJECT_COLLECTION_PATH",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:.33,my:n}});_(e,r,{strokeWidth:2})}(e,t),n},"bpmn:DataObjectReference":S("bpmn:DataObject"),"bpmn:DataInput":function(e,t){var n=i.getRawPath("DATA_ARROW"),r=w("bpmn:DataObject")(e,t);return _(e,n,{strokeWidth:1}),r},"bpmn:DataOutput":function(e,t){var n=i.getRawPath("DATA_ARROW"),r=w("bpmn:DataObject")(e,t);return _(e,n,{strokeWidth:1,fill:"black"}),r},"bpmn:DataStoreReference":function(e,t){return _(e,i.getScaledPath("DATA_STORE",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:0,my:.133}}),{strokeWidth:2,fill:zr(t,s),fillOpacity:Gr,stroke:Fr(t,c)})},"bpmn:BoundaryEvent":function(e,t){var n=Ir(t).cancelActivity,i={strokeWidth:1,fill:zr(t,s),stroke:Fr(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 y(e,t.width,t.height,3,o),C(t,e),a},"bpmn:Group":function(e,t){return g(e,t.width,t.height,10,{stroke:Fr(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 R(e,jr(t),{box:n,fitBox:!0,style:F({},o.getExternalStyle(),{fill:$r(t,p,c)})})}(e,t)},"bpmn:TextAnnotation":function(e,t){var n=g(e,t.width,t.height,0,0,{fill:"none",stroke:"none"});return _(e,i.getScaledPath("TEXT_ANNOTATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:0,my:0}}),{stroke:Fr(t,c)}),R(e,Ir(t).text||"",{box:t,align:"left-top",padding:5,style:{fill:$r(t,p,c)}}),n},ParticipantMultiplicityMarker:function(e,t){E("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:2,fill:zr(t,s),stroke:Fr(t,c)})},SubProcessMarker:function(e,t){Gn(g(e,14,14,0,{strokeWidth:1,fill:zr(t,s),stroke:Fr(t,c)}),t.width/2-7.5,t.height-20),E("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:zr(t,s),stroke:Fr(t,c)})},ParallelMarker:function(e,t,n){E("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:zr(t,s),stroke:Fr(t,c)})},SequentialMarker:function(e,t,n){E("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:zr(t,s),stroke:Fr(t,c)})},CompensationMarker:function(e,t,n){E("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:zr(t,s),stroke:Fr(t,c)})},LoopMarker:function(e,t,n){E("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:zr(t,s),stroke:Fr(t,c),strokeLinecap:"round",strokeMiterlimit:.5})},AdhocMarker:function(e,t,n){E("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:Fr(t,c),stroke:Fr(t,c)})}};function M(e,t,n){var i,r=Ir(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=_,this._renderer=w}n(Wr,et),Wr.$inject=["config.bpmnRenderer","eventBus","styles","pathMap","canvas","textRenderer"],Wr.prototype.canRender=function(e){return vr(e,"bpmn:BaseElement")},Wr.prototype.drawShape=function(e,t){var n=t.type;return this._renderer(n)(e,t)},Wr.prototype.drawConnection=function(e,t){var n=t.type;return this._renderer(n)(e,t)},Wr.prototype.getShapePath=function(e){return vr(e,"bpmn:Event")?(n=(t=e).x+t.width/2,i=t.y+t.height/2,r=t.width/2,tt([["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"]])):vr(e,"bpmn:Activity")?function(e,t){var n=e.x,i=e.y,r=e.width,o=e.height;return tt([["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,10):vr(e,"bpmn:Gateway")?function(e){var t=e.width/2,n=e.height/2;return tt([["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 tt([["M",t,n],["l",i,0],["l",0,e.height],["l",-i,0],["z"]])}(e);var t,n,i,r};var Vr={width:150,height:50};function Ur(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 qr(e,t,n){for(var i,r=e.shift(),o=r;;){if((i=Ur(o,n)).width=o?i.width:0," "===o||""===o||i.width<Math.round(t)||o.length<2)return Kr(e,o,r,i);o=Yr(o,i.width,t)}}function Kr(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 Yr(e,t,n){var i=Math.max(e.length*(n/t),1),r=function(e,t){var n,i=e.split(/(\s|-|\u00AD)/g),r=[],o=0;if(i.length>1)for(;n=i.shift();){if(!(n.length+o<t)){"-"!==n&&""!==n||r.pop();break}r.push(n),o+=n.length}var a=r[r.length-1];return a&&""===a&&(r[r.length-1]="-"),r.join("")}(e,i);return r||(r=e.slice(0,Math.max(Math.round(i-1),1))),r}function Xr(e){this._config=F({},{size:Vr,padding:0,style:{},align:"center-top"},e||{})}Xr.prototype.createText=function(e,t){return this.layoutText(e,t).element},Xr.prototype.getDimensions=function(e,t){return this.layoutText(e,t).dimensions},Xr.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(/\u00AD?\r?\n/),p=[],l=n.width-o.left-o.right,u=Me("text");for(ge(u,{x:0,y:0}),ge(u,i),me(function(){var e=document.getElementById("helper-svg");return e||(ge(e=Me("svg"),{id:"helper-svg",width:0,height:0,style:"visibility: hidden; position: fixed"}),document.body.appendChild(e)),e}(),u);c.length;)p.push(qr(c,l,u));"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=Me("text");return ge(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:l)-o.right-e.width;break;default:t=Math.max(((a?f:l)-e.width)/2+o.left,0)}var n=Me("tspan");ge(n,{x:t,y:m}),n.textContent=e.text,me(v,n)})),Ce(u),{dimensions:{width:f,height:d},element:v}};function Zr(e){var t=F({fontFamily:"Arial, sans-serif",fontSize:12,fontWeight:"normal",lineHeight:1.2},e&&e.defaultStyle||{}),n=parseInt(t.fontSize,10)-1,i=F({},t,{fontSize:n},e&&e.externalStyle||{}),r=new Xr({style:t});this.getExternalLabelBounds=function(e,t){var n=r.getDimensions(t,{box:{width:90,height:30,x:e.width/2+e.x,y:e.height/2+e.y},style:i});return{x:Math.round(e.x+e.width/2-n.width/2),y:Math.round(e.y),width:Math.ceil(n.width),height:Math.ceil(n.height)}},this.getTextAnnotationBounds=function(e,n){var i=r.getDimensions(n,{box:e,style:t,align:"left-top",padding:5});return{x:e.x,y:e.y,width:e.width,height:Math.max(30,Math.round(i.height))}},this.createText=function(e,t){return r.createText(e,t||{})},this.getDefaultStyle=function(){return t},this.getExternalStyle=function(){return i}}Zr.$inject=["config.textRenderer"];var Qr=/\{([^{}]+)\}/g,Jr=/(?:(?:^|\.)(.+?)(?=\[|\.|$|\()|\[('|")(.+?)\2\])(\(\))?/g;var eo={__init__:["bpmnRenderer"],bpmnRenderer:["type",Wr],textRenderer:["type",Zr],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 3,2 l 0,10 m 3,-10 l 0,10 m 3,-10 l 0,10",height:10,width:10,heightElements:[],widthElements:[]},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,l=0;l<r.heightElements.length;l++)s["y"+l]=r.heightElements[l]*c;for(var u=0;u<r.widthElements.length;u++)s["x"+u]=r.widthElements[u]*p}return o=r.d,a={mx:n,my:i,e:s},String(o).replace(Qr,(function(e,t){return function(e,t,n){var i=n;return t.replace(Jr,(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 to={translate:["value",function(e,t){return t=t||{},e.replace(/{([^}]+)}/g,(function(e,n){return t[n]||"{"+n+"}"}))}]},no={width:90,height:20};function io(e){return vr(e,"bpmn:Event")||vr(e,"bpmn:Gateway")||vr(e,"bpmn:DataStoreReference")||vr(e,"bpmn:DataObjectReference")||vr(e,"bpmn:DataInput")||vr(e,"bpmn:DataOutput")||vr(e,"bpmn:SequenceFlow")||vr(e,"bpmn:MessageFlow")||vr(e,"bpmn:Group")}function ro(e){return so(e.label)}function oo(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-=15:a+=15,{x:a,y:s}}function ao(e){return e.waypoints?oo(e.waypoints):vr(e,"bpmn:Group")?{x:e.x+e.width/2,y:e.y+no.height/2}:{x:e.x+e.width/2,y:e.y+e.height+no.height/2}}function so(e){return e&&!!e.labelTarget}function co(e,t,n){return F({id:e.id,type:e.$type,businessObject:e,di:t},n)}function po(e,t,n){var i=e.waypoint;return!i||i.length<2?[cn(t),cn(n)]:i.map((function(e){return{x:e.x,y:e.y}}))}function lo(e,t,n,i){return new Error(e("element {element} referenced by {referenced}#{property} not yet drawn",{element:ur(n),referenced:ur(t),property:i}))}function uo(e,t,n,i,r,o){this._eventBus=e,this._canvas=t,this._elementFactory=n,this._elementRegistry=i,this._translate=r,this._textRenderer=o}uo.$inject=["eventBus","canvas","elementFactory","elementRegistry","translate","textRenderer"],uo.prototype.add=function(e,t,n){var i,r,o,a,s,c,p,l=this._translate;if(vr(t,"bpmndi:BPMNPlane")){var u=vr(e,"bpmn:SubProcess")?{id:e.id+"_plane"}:{};i=this._elementFactory.createRoot(co(e,t,u)),this._canvas.addRootElement(i)}else if(vr(t,"bpmndi:BPMNShape")){var h=!Dr(e,t),d=function(e){return vr(e,"bpmn:Group")}(e);r=n&&(n.hidden||n.collapsed);var f=t.bounds;i=this._elementFactory.createShape(co(e,t,{collapsed:h,hidden:r,x:Math.round(f.x),y:Math.round(f.y),width:Math.round(f.width),height:Math.round(f.height),isFrame:d})),vr(e,"bpmn:BoundaryEvent")&&this._attachBoundary(e,i),vr(e,"bpmn:Lane")&&(o=0),vr(e,"bpmn:DataStoreReference")&&(a=n,s=cn(f),c=s.x,p=s.y,c>=a.x&&c<=a.x+a.width&&p>=a.y&&p<=a.y+a.height||(n=this._canvas.findRoot(n))),this._canvas.addShape(i,n,o)}else{if(!vr(t,"bpmndi:BPMNEdge"))throw new Error(l("unknown di {di} for element {semantic}",{di:ur(t),semantic:ur(e)}));var m=this._getSource(e),v=this._getTarget(e);r=n&&(n.hidden||n.collapsed),i=this._elementFactory.createConnection(co(e,t,{hidden:r,source:m,target:v,waypoints:po(t,m,v)})),vr(e,"bpmn:DataAssociation")&&(n=this._canvas.findRoot(n)),vr(e,"bpmn:SequenceFlow")&&(o=0),this._canvas.addConnection(i,n,o)}return io(e)&&jr(i)&&this.addLabel(e,t,i),this._eventBus.fire("bpmnElement.added",{element:i}),i},uo.prototype._attachBoundary=function(e,t){var n=this._translate,i=e.attachedToRef;if(!i)throw new Error(n("missing {semantic}#attachedToRef",{semantic:ur(e)}));var r=this._elementRegistry.get(i.id),o=r&&r.attachers;if(!r)throw lo(n,e,i,"attachedToRef");t.host=r,o||(r.attachers=o=[]),-1===o.indexOf(t)&&o.push(t)},uo.prototype.addLabel=function(e,t,n){var i,r,o;return i=function(e,t){var n,i,r,o=e.label;return o&&o.bounds?(r=o.bounds,i={width:Math.max(no.width,r.width),height:r.height},n={x:r.x+r.width/2,y:r.y+r.height/2}):(n=ao(t),i=no),F({x:n.x-i.width/2,y:n.y-i.height/2},i)}(t,n),(r=jr(n))&&(i=this._textRenderer.getExternalLabelBounds(i,r)),o=this._elementFactory.createLabel(co(e,t,{id:e.id+"_label",labelTarget:n,type:"label",hidden:n.hidden||!jr(n),x:Math.round(i.x),y:Math.round(i.y),width:Math.round(i.width),height:Math.round(i.height)})),this._canvas.addShape(o,n.parent)},uo.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?lo(o,e,i,t+"Ref"):new Error(o("{semantic}#{side} Ref not specified",{semantic:ur(e),side:t}))},uo.prototype._getSource=function(e){return this._getEnd(e,"source")},uo.prototype._getTarget=function(e){return this._getEnd(e,"target")},uo.prototype._getElement=function(e){return this._elementRegistry.get(e.id)};var ho={__depends__:[eo,{__depends__:[to],bpmnImporter:["type",uo]}]};function fo(e){e&&"function"==typeof e.stopPropagation&&e.stopPropagation()}function mo(e){return e.originalEvent||e.srcEvent}function vo(e,t){fo(e),fo(mo(e))}function yo(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 go(e,t){return(mo(e)||e).button===t}function bo(e){return go(e,0)}function xo(e){var t=mo(e)||e;return!!bo(e)&&(/mac/i.test(navigator.platform)?t.metaKey:t.ctrlKey)}function _o(e){var t=mo(e)||e;return bo(e)&&t.shiftKey}function Eo(e){return!0}function wo(e){return bo(e)||function(e){return go(e,1)}(e)}function So(e,t,n){var i=this;function r(n,i,r){var o,a;(function(e,t){return!(c[e]||bo)(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":Eo,"element.mousedown":wo,"element.mouseup":wo,"element.click":wo,"element.dblclick":wo};function p(e,t,n,i){var a=o[n]=function(e){r(n,e)};i&&(c[n]=i),a.$delegate=se.bind(e,"svg, .djs-element",t,a)}function l(e,t,n){var i=a(n);i&&se.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){p(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"],500,(function(t){var n=t.element,i=t.gfx;e.fire("interactionEvents.updateHit",{element:n,gfx:i})})),e.on("interactionEvents.createHit",500,(function(e){var t=e.element,n=e.gfx;i.createDefaultHit(t,n)})),e.on("interactionEvents.updateHit",(function(e){var t=e.element,n=e.gfx;i.updateDefaultHit(t,n)}));var u=f("djs-hit djs-hit-stroke"),h=f("djs-hit djs-hit-click-stroke"),d={all:f("djs-hit djs-hit-all"),"click-stroke":h,stroke:u};function f(e,t){return t=F({stroke:"white",strokeWidth:15},t||{}),n.cls(e,["no-fill","no-border"],t)}function m(e,t){var n=d[t];if(!n)throw new Error("invalid hit type <"+t+">");return ge(e,n),e}function v(e,t){me(e,t)}this.removeHits=function(e){b(he(".djs-hit",e),Ce)},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=it(t);return m(n,"stroke"),v(e,n),n},this.createBoxHit=function(e,t,n){n=F({x:0,y:0},n);var i=Me("rect");return m(i,t),ge(i,n),v(e,i),i},this.updateDefaultHit=function(e,t){var n=ue(".djs-hit",t);if(n)return e.waypoints?function(e,t){ge(e,{points:nt(t)})}(n,e.waypoints):ge(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=p,this.unregisterEvent=l}So.$inject=["eventBus","elementRegistry","styles"];var Co={__init__:["interactionEvents"],interactionEvents:["type",So]};function Ro(e,t,n){this.offset=6;var i=t.cls("djs-outline",["no-fill"]),r=this;function o(e,t){var n=Me("rect");return ge(n,F({x:10,y:10,width:100,height:100},i)),me(e,n),n}e.on(["shape.added","shape.changed"],500,(function(e){var t=e.element,n=e.gfx,i=ue(".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=ue(".djs-outline",n);i||(i=o(n)),r.updateConnectionOutline(i,t)}))}Ro.prototype.updateShapeOutline=function(e,t){ge(e,{x:-this.offset,y:-this.offset,width:t.width+2*this.offset,height:t.height+2*this.offset})},Ro.prototype.updateConnectionOutline=function(e,t){var n=pt(t);ge(e,{x:n.x-this.offset,y:n.y-this.offset,width:n.width+2*this.offset,height:n.height+2*this.offset})},Ro.$inject=["eventBus","styles","elementRegistry"];var To={__init__:["outline"],outline:["type",Ro]};function Po(e,t){this._eventBus=e,this._canvas=t,this._selectedElements=[];var n=this;e.on(["shape.remove","connection.remove"],(function(e){var t=e.element;n.deselect(t)})),e.on(["diagram.clear","root.set"],(function(e){n.select(null)}))}Po.$inject=["eventBus","canvas"],Po.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})}},Po.prototype.get=function(){return this._selectedElements},Po.prototype.isSelected=function(e){return-1!==this._selectedElements.indexOf(e)},Po.prototype.select=function(e,t){var n=this._selectedElements,i=n.slice();u(e)||(e=e?[e]:[]);var r=this._canvas,o=r.getRootElement();e=e.filter((function(e){var t=r.findRoot(e);return o===t})),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 Ao="hover",ko="selected";function Mo(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,Ao)})),e.on("element.out",(function(e){o(e.element,Ao)})),e.on("selection.changed",(function(e){var t=e.oldSelection,n=e.newSelection;b(t,(function(e){-1===n.indexOf(e)&&o(e,ko)})),b(n,(function(e){-1===t.indexOf(e)&&r(e,ko)}))}))}function Do(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;u(o)?t.select(o):t.select(r.filter(Bo))}})),e.on("connect.end",500,(function(e){var n=e.context,i=n.canExecute,r=n.hover;i&&r&&t.select(r)})),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){if(bo(e)){var i=e.element;i===n.getRootElement()&&(i=null);var r=t.isSelected(i),o=t.get().length>1,a=xo(e)||_o(e);if(r&&o)return a?t.deselect(i):t.select(i);r?t.deselect(i):t.select(i,a)}}))}function Bo(e){return!e.hidden}Mo.$inject=["eventBus","canvas","selection","styles"],Do.$inject=["eventBus","selection","canvas","elementRegistry"];var No={__init__:["selectionVisuals","selectionBehavior"],__depends__:[Co,To],selection:["type",Po],selectionVisuals:["type",Mo],selectionBehavior:["type",Do]};function Oo(e){this._counter=0,this._prefix=(e?e+"-":"")+Math.floor(1e9*Math.random())+"-"}Oo.prototype.next=function(){return this._prefix+ ++this._counter};var jo=new Oo("ov");function Lo(e,t,n,i){var r,o;this._eventBus=t,this._canvas=n,this._elementRegistry=i,this._ids=jo,this._overlayDefaults=F({show:null,scale:!0},e&&e.defaults),this._overlays={},this._overlayContainers=[],this._overlayRoot=(r=n.getContainer(),o=ce('<div class="djs-overlay-container" style="position: absolute; width: 0; height: 0;" />'),r.insertBefore(o,r.firstChild),o),this._init()}function Io(e,t,n){F(e.style,{left:t+"px",top:n+"px"})}function zo(e,t){e.style.display=!1===t?"none":""}function Fo(e,t){e.style["transform-origin"]="top left",["","-ms-","-webkit-"].forEach((function(n){e.style[n+"transform"]=t}))}Lo.$inject=["config.overlays","eventBus","canvas","elementRegistry"],Lo.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},Lo.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},Lo.prototype.remove=function(e){var t=this.get(e)||[];u(t)||(t=[t]);var n=this;b(t,(function(e){var t=n._getOverlayContainer(e.element,!0);if(e&&(de(e.html),de(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)}}))},Lo.prototype.show=function(){zo(this._overlayRoot)},Lo.prototype.hide=function(){zo(this._overlayRoot,!1)},Lo.prototype.clear=function(){this._overlays={},this._overlayContainers=[],X(this._overlayRoot)},Lo.prototype._updateOverlayContainer=function(e){var t=e.element,n=e.html,i=t.x,r=t.y;if(t.waypoints){var o=pt(t);i=o.x,r=o.y}Io(n,i,r),G(e.html,"data-container-id",t.id)},Lo.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?pt(o).width:o.width,a=-1*i.right+t);void 0!==i.bottom&&(n=o.waypoints?pt(o).height:o.height,s=-1*i.bottom+n);Io(r,a||0,s||0),this._updateOverlayVisibilty(e,this._canvas.viewbox())},Lo.prototype._createOverlayContainer=function(e){var t=ce('<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},Lo.prototype._updateRoot=function(e){var t=e.scale||1,n="matrix("+[t,0,0,t,-1*e.x*t,-1*e.y*t].join(",")+")";Fo(this._overlayRoot,n)},Lo.prototype._getOverlayContainer=function(e,t){var n=y(this._overlayContainers,(function(t){return t.element===e}));return n||t?n:this._createOverlayContainer(e)},Lo.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=ce(o)),n=this._getOverlayContainer(r),(t=ce('<div class="djs-overlay" data-overlay-id="'+i+'" style="position: absolute">')).appendChild(o),e.type&&K(t).add("djs-overlay-"+e.type),zo(t,this._canvas.findRoot(r)===this._canvas.getRootElement()),e.htmlContainer=t,n.overlays.push(e),n.html.appendChild(t),this._overlays[i]=e,this._updateOverlay(e),this._updateOverlayVisibilty(e,this._canvas.viewbox())},Lo.prototype._updateOverlayVisibilty=function(e,t){var n=e.show,i=this._canvas.findRoot(e.element),r=n&&n.minZoom,o=n&&n.maxZoom,a=e.htmlContainer,s=!0;(i!==this._canvas.getRootElement()||n&&(p(r)&&r>t.scale||p(o)&&o<t.scale))&&(s=!1),zo(a,s),this._updateOverlayScale(e,t)},Lo.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+")"),Fo(a,s)},Lo.prototype._updateOverlaysVisibilty=function(e){var t=this;b(this._overlays,(function(n){t._updateOverlayVisibilty(n,e)}))},Lo.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){de(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("root.set",(function(){t._updateOverlaysVisibilty(t._canvas.viewbox())})),e.on("diagram.clear",this.clear,this)};var $o={__init__:["overlays"],overlays:["type",Lo]};function Ho(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(lt(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)}))}Ho.$inject=["eventBus","canvas","elementRegistry","graphicsFactory"];var Go={__init__:["changeSupport"],changeSupport:["type",Ho]};function Wo(e){this._eventBus=e}Wo.$inject=["eventBus"],Wo.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");u(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 Vo(e,t){t.invoke(Wo,this),this.executed((function(t){var n=t.context;n.rootElement?e.setRootElement(n.rootElement):n.rootElement=e.getRootElement()})),this.revert((function(t){var n=t.context;n.rootElement&&e.setRootElement(n.rootElement)}))}b(["canExecute","preExecute","preExecuted","execute","executed","postExecute","postExecuted","revert","reverted"],(function(e){Wo.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)}})),n(Vo,Wo),Vo.$inject=["canvas","injector"];var Uo={__init__:["rootElementsBehavior"],rootElementsBehavior:["type",Vo]},qo={exports:{}};
|
|
27
|
+
var t,n;e=F({},mo,e),this._moddle=this._createModdle(e),this._container=this._createContainer(e),t=this._container,Y(ve("svg",n=de('<a href="http://bpmn.io" target="_blank" class="bjs-powered-by" title="Powered by bpmn.io" >'+oo+"</a>")),ao),Y(n,so,{position:"absolute",bottom:"15px",right:"15px",zIndex:"100"}),t.appendChild(n),ce(n,"click",(function(e){uo(),e.preventDefault()})),this._init(this._container,this._moddle,e)}function fo(e,t){return e.warnings=t,e}n(ho,ki),ho.prototype.importXML=Kr((function(e,t){var n=this;return new Promise((function(i,r){e=n._emit("import.parse.start",{xml:e})||e,n._moddle.fromXML(e,"bpmn:Definitions").then((function(e){var o,a,s=e.rootElement,c=e.references,p=e.warnings,l=e.elementsById;s=n._emit("import.parse.complete",(o={error:null,definitions:s,elementsById:l,references:c,warnings:p},a=n.get("eventBus").createEvent(o),Object.defineProperty(a,"context",{enumerable:!0,get:function(){return console.warn(new Error("import.parse.complete <context> is deprecated and will be removed in future library versions")),{warnings:o.warnings,references:o.references,elementsById:o.elementsById}}}),a))||s,n.importDefinitions(s,t).then((function(e){var t=[].concat(p,e.warnings||[]);return n._emit("import.done",{error:null,warnings:t}),i({warnings:t})})).catch((function(e){var t=[].concat(p,e.warnings||[]);return n._emit("import.done",{error:e,warnings:t}),r(fo(e,t))}))})).catch((function(e){return n._emit("import.parse.complete",{error:e}),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),n._emit("import.done",{error:e,warnings:e.warnings}),r(e)}))}))})),ho.prototype.importDefinitions=Kr((function(e,t){var n=this;return new Promise((function(i,r){n._setDefinitions(e),n.open(t).then((function(e){var t=e.warnings;return i({warnings:t})})).catch((function(e){return r(e)}))}))})),ho.prototype.open=Kr((function(e){var t=this._definitions,n=e,i=this;return new Promise((function(r,o){if(!t){var a=new Error("no XML imported");return o(fo(a,[]))}if("string"==typeof e&&!(n=function(e,t){if(!t)return null;return y(e.diagrams,(function(e){return e.id===t}))||null}(t,e))){var s=new Error("BPMNDiagram <"+e+"> not found");return o(fo(s,[]))}try{i.clear()}catch(e){return o(fo(e,[]))}no(i,t,n).then((function(e){var t=e.warnings;return r({warnings:t})})).catch((function(e){return o(e)}))}))})),ho.prototype.saveXML=Kr((function(e){e=e||{};var t=this,n=this._definitions;return new Promise((function(i){if(!n)return i({error:new Error("no definitions loaded")});n=t._emit("saveXML.start",{definitions:n})||n,t._moddle.toXML(n,e).then((function(e){var n=e.xml;return n=t._emit("saveXML.serialized",{xml:n})||n,i({xml:n})}))})).catch((function(e){return{error:e}})).then((function(e){t._emit("saveXML.done",e);var n=e.error;return n?Promise.reject(n):e}))})),ho.prototype.saveSVG=Kr((function(e){var t=this;return new Promise((function(e,n){var i,r;t._emit("saveSVG.start");try{var o=t.get("canvas"),a=o.getActiveLayer(),s=ve("defs",o._svg),c=We(a),p=s?"<defs>"+We(s)+"</defs>":"",l=a.getBBox();i='<?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="'+l.width+'" height="'+l.height+'" viewBox="'+l.x+" "+l.y+" "+l.width+" "+l.height+'" version="1.1">'+p+c+"</svg>"}catch(e){r=e}return t._emit("saveSVG.done",{error:r,svg:i}),r?n(r):e({svg:i})}))})),ho.prototype._setDefinitions=function(e){this._definitions=e},ho.prototype.getModules=function(){return this._modules},ho.prototype.clear=function(){this.getDefinitions()&&ki.prototype.clear.call(this)},ho.prototype.destroy=function(){ki.prototype.destroy.call(this),ye(this._container)},ho.prototype.on=function(e,t,n,i){return this.get("eventBus").on(e,t,n,i)},ho.prototype.off=function(e,t){this.get("eventBus").off(e,t)},ho.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=ve(e)),e.appendChild(this._container),this._emit("attach",{}),this.get("canvas").resized()},ho.prototype.getDefinitions=function(){return this._definitions},ho.prototype.detach=function(){var e=this._container,t=e.parentNode;t&&(this._emit("detach",{}),t.removeChild(e))},ho.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});ki.call(this,a),n&&n.container&&this.attachTo(n.container)},ho.prototype._emit=function(e,t){return this.get("eventBus").fire(e,t)},ho.prototype._createContainer=function(e){var t=de('<div class="bjs-container"></div>');return Y(t,{width:vo(e.width),height:vo(e.height),position:e.position}),t},ho.prototype._createModdle=function(e){return new Ur(F({},this._moddleExtensions,e.moddleExtensions))},ho.prototype._modules=[];var mo={width:"100%",height:"100%",position:"relative"};function vo(e){return e+(d(e)?"px":"")}function yo(e){ho.call(this,e),this.on("import.parse.complete",(function(e){e.error||this._collectIds(e.definitions,e.elementsById)}),this),this.on("diagram.destroy",(function(){this.get("moddle").ids.clear()}),this)}function go(e,t){return!Qr(e,"bpmn:CallActivity")&&(Qr(e,"bpmn:SubProcess")?!(!(t=t||to(e))||!Qr(t,"bpmndi:BPMNPlane"))||t&&!!t.isExpanded:!Qr(e,"bpmn:Participant")||!!eo(e).processRef)}function bo(e){return e&&!!eo(e).triggeredByEvent}function xo(e,t){var n=eo(e),i=!1;return n.eventDefinitions&&b(n.eventDefinitions,(function(e){Qr(e,t)&&(i=!0)})),i}function _o(e){return Qr(e,"bpmn:FlowElement")||Qr(e,"bpmn:Participant")||Qr(e,"bpmn:Lane")||Qr(e,"bpmn:SequenceFlow")||Qr(e,"bpmn:MessageFlow")||Qr(e,"bpmn:DataInput")||Qr(e,"bpmn:DataOutput")?"name":Qr(e,"bpmn:TextAnnotation")?"text":Qr(e,"bpmn:Group")?"categoryValueRef":void 0}function Eo(e){var t=e.businessObject,n=_o(t);if(n)return"categoryValueRef"===n?function(e){var t=e.categoryValueRef;return t&&t.value||""}(t):t[n]||""}function wo(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 So(e){return e.businessObject}function Co(e,t){var n=to(e);return n.get("color:background-color")||n.get("bioc:fill")||t||"white"}function Ro(e,t){var n=to(e);return n.get("color:border-color")||n.get("bioc:stroke")||t||"black"}function To(e,t,n){var i=to(e).get("label");return i&&i.get("color:color")||t||Ro(e,n)}n(yo,ho),yo.prototype._createModdle=function(e){var t=ho.prototype._createModdle.call(this,e);return t.ids=new r([32,36,1]),t},yo.prototype._collectIds=function(e,t){var n,i=e.$model.ids;for(n in i.clear(),t)i.claim(n,t[n])};var Po=new r,Ao=.95;function Mo(e,t,n,i,r,o,a){rt.call(this,t,a);var s=e&&e.defaultFillColor,c=e&&e.defaultStrokeColor,p=e&&e.defaultLabelColor,l=Po.next(),u={},d=n.computeStyle;function f(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),be(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=ve("defs",r._svg);s||(s=Oe("defs"),be(r._svg,s)),be(s,a),u[e]=a}function m(e){return e.replace(/[^0-9a-zA-z]+/g,"_")}function v(e,t,n){var i=e+"-"+m(t)+"-"+m(n)+"-"+l;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"}),f(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}),f(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"}),f(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"}),f(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"}),f(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"}),f(e,{element:p,attrs:{fill:n,stroke:i},ref:{x:-1,y:10},scale:.5})}if("conditional-default-flow-marker"===t){var l=Oe("path");Ee(l,{d:"M 6 4 L 10 16"}),f(e,{element:l,attrs:{stroke:i},ref:{x:0,y:10},scale:.5})}}(i,e,t,n),"url(#"+i+")"}function y(e,t,n,i,r){h(i)&&(r=i,i=0),i=i||0,"none"===(r=d(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),be(e,s),s}function g(e,t,n,i,r,o){h(r)&&(o=r,r=0),r=r||0,o=d(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),be(e,a),a}function x(e,t,n){var i=st(t,n=d(n,["no-fill"],{stroke:"black",strokeWidth:2,fill:"none"}));return be(e,i),i}function _(e,t,n){n=d(n,["no-fill"],{strokeWidth:2,stroke:"black"});var i=Oe("path");return Ee(i,{d:t}),Ee(i,n),be(e,i),i}function E(e,t,n,i){return _(t,n,F({"data-marker":e},i))}function w(e){return M[e]}function S(e){return function(t,n){return w(e)(t,n)}}function C(e,t){var n=So(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):wo(n,"bpmn:MessageEventDefinition")?w("bpmn:MessageEventDefinition")(t,e,i):wo(n,"bpmn:TimerEventDefinition")?w("bpmn:TimerEventDefinition")(t,e,i):wo(n,"bpmn:ConditionalEventDefinition")?w("bpmn:ConditionalEventDefinition")(t,e):wo(n,"bpmn:SignalEventDefinition")?w("bpmn:SignalEventDefinition")(t,e,i):wo(n,"bpmn:EscalationEventDefinition")?w("bpmn:EscalationEventDefinition")(t,e,i):wo(n,"bpmn:LinkEventDefinition")?w("bpmn:LinkEventDefinition")(t,e,i):wo(n,"bpmn:ErrorEventDefinition")?w("bpmn:ErrorEventDefinition")(t,e,i):wo(n,"bpmn:CancelEventDefinition")?w("bpmn:CancelEventDefinition")(t,e,i):wo(n,"bpmn:CompensateEventDefinition")?w("bpmn:CompensateEventDefinition")(t,e,i):wo(n,"bpmn:TerminateEventDefinition")?w("bpmn:TerminateEventDefinition")(t,e,i):null}function R(e,t,n){n=F({size:{width:100}},n);var i=o.createText(t||"",n);return Te(i).add("djs-label"),be(e,i),i}function T(e,t,n){return R(e,So(t).name,{box:t,align:n,padding:5,style:{fill:To(t,p,c)}})}function P(e,t,n){Si(R(e,t,{box:{height:30,width:n.height},align:"center-middle",style:{fill:To(n,p,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 M=this.handlers={"bpmn:Event":function(e,t,n){return"fillOpacity"in n||(n.fillOpacity=Ao),y(e,t.width,t.height,n)},"bpmn:StartEvent":function(e,t){var n={fill:Co(t,s),stroke:Ro(t,c)};So(t).isInterrupting||(n={strokeDasharray:"6",strokeLinecap:"round",fill:Co(t,s),stroke:Ro(t,c)});var i=w("bpmn:Event")(e,t,n);return C(t,e),i},"bpmn:MessageEventDefinition":function(e,t,n){return _(e,i.getScaledPath("EVENT_MESSAGE",{xScaleFactor:.9,yScaleFactor:.9,containerWidth:t.width,containerHeight:t.height,position:{mx:.235,my:.315}}),{strokeWidth:1,fill:n?Ro(t,c):Co(t,s),stroke:n?Co(t,s):Ro(t,c)})},"bpmn:TimerEventDefinition":function(e,t){var n=y(e,t.width,t.height,.2*t.height,{strokeWidth:2,fill:Co(t,s),stroke:Ro(t,c)});_(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:Ro(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;_(e,o,{strokeWidth:1,strokeLinecap:"square",transform:"rotate("+30*r+","+t.height/2+","+a+")",stroke:Ro(t,c)})}return n},"bpmn:EscalationEventDefinition":function(e,t,n){return _(e,i.getScaledPath("EVENT_ESCALATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:.5,my:.2}}),{strokeWidth:1,fill:n?Ro(t,c):"none",stroke:Ro(t,c)})},"bpmn:ConditionalEventDefinition":function(e,t){return _(e,i.getScaledPath("EVENT_CONDITIONAL",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:.5,my:.222}}),{strokeWidth:1,stroke:Ro(t,c)})},"bpmn:LinkEventDefinition":function(e,t,n){return _(e,i.getScaledPath("EVENT_LINK",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:.57,my:.263}}),{strokeWidth:1,fill:n?Ro(t,c):"none",stroke:Ro(t,c)})},"bpmn:ErrorEventDefinition":function(e,t,n){return _(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?Ro(t,c):"none",stroke:Ro(t,c)})},"bpmn:CancelEventDefinition":function(e,t,n){var r=_(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?Ro(t,c):"none",stroke:Ro(t,c)});return Ri(r,45),r},"bpmn:CompensateEventDefinition":function(e,t,n){return _(e,i.getScaledPath("EVENT_COMPENSATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:.22,my:.5}}),{strokeWidth:1,fill:n?Ro(t,c):"none",stroke:Ro(t,c)})},"bpmn:SignalEventDefinition":function(e,t,n){return _(e,i.getScaledPath("EVENT_SIGNAL",{xScaleFactor:.9,yScaleFactor:.9,containerWidth:t.width,containerHeight:t.height,position:{mx:.5,my:.2}}),{strokeWidth:1,fill:n?Ro(t,c):"none",stroke:Ro(t,c)})},"bpmn:MultipleEventDefinition":function(e,t,n){return _(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?Ro(t,c):"none"})},"bpmn:ParallelMultipleEventDefinition":function(e,t){return _(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:Ro(t,c),stroke:Ro(t,c)})},"bpmn:EndEvent":function(e,t){var n=w("bpmn:Event")(e,t,{strokeWidth:4,fill:Co(t,s),stroke:Ro(t,c)});return C(t,e),n},"bpmn:TerminateEventDefinition":function(e,t){return y(e,t.width,t.height,8,{strokeWidth:4,fill:Ro(t,c),stroke:Ro(t,c)})},"bpmn:IntermediateEvent":function(e,t){var n=w("bpmn:Event")(e,t,{strokeWidth:1,fill:Co(t,s),stroke:Ro(t,c)});return y(e,t.width,t.height,3,{strokeWidth:1,fill:Co(t,"none"),stroke:Ro(t,c)}),C(t,e),n},"bpmn:IntermediateCatchEvent":S("bpmn:IntermediateEvent"),"bpmn:IntermediateThrowEvent":S("bpmn:IntermediateEvent"),"bpmn:Activity":function(e,t,n){return"fillOpacity"in(n=n||{})||(n.fillOpacity=Ao),g(e,t.width,t.height,10,n)},"bpmn:Task":function(e,t){var n={fill:Co(t,s),stroke:Ro(t,c)},i=w("bpmn:Activity")(e,t,n);return T(e,t,"center-middle"),k(e,t),i},"bpmn:ServiceTask":function(e,t){var n=w("bpmn:Task")(e,t);return _(e,i.getScaledPath("TASK_TYPE_SERVICE",{abspos:{x:12,y:18}}),{strokeWidth:1,fill:Co(t,s),stroke:Ro(t,c)}),_(e,i.getScaledPath("TASK_TYPE_SERVICE_FILL",{abspos:{x:17.2,y:18}}),{strokeWidth:0,fill:Co(t,s)}),_(e,i.getScaledPath("TASK_TYPE_SERVICE",{abspos:{x:17,y:22}}),{strokeWidth:1,fill:Co(t,s),stroke:Ro(t,c)}),n},"bpmn:UserTask":function(e,t){var n=w("bpmn:Task")(e,t);return _(e,i.getScaledPath("TASK_TYPE_USER_1",{abspos:{x:15,y:12}}),{strokeWidth:.5,fill:Co(t,s),stroke:Ro(t,c)}),_(e,i.getScaledPath("TASK_TYPE_USER_2",{abspos:{x:15,y:12}}),{strokeWidth:.5,fill:Co(t,s),stroke:Ro(t,c)}),_(e,i.getScaledPath("TASK_TYPE_USER_3",{abspos:{x:15,y:12}}),{strokeWidth:.5,fill:Ro(t,c),stroke:Ro(t,c)}),n},"bpmn:ManualTask":function(e,t){var n=w("bpmn:Task")(e,t);return _(e,i.getScaledPath("TASK_TYPE_MANUAL",{abspos:{x:17,y:15}}),{strokeWidth:.5,fill:Co(t,s),stroke:Ro(t,c)}),n},"bpmn:SendTask":function(e,t){var n=w("bpmn:Task")(e,t);return _(e,i.getScaledPath("TASK_TYPE_SEND",{xScaleFactor:1,yScaleFactor:1,containerWidth:21,containerHeight:14,position:{mx:.285,my:.357}}),{strokeWidth:1,fill:Ro(t,c),stroke:Co(t,s)}),n},"bpmn:ReceiveTask":function(e,t){var n,r=So(t),o=w("bpmn:Task")(e,t);return r.instantiate?(y(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}}),_(e,n,{strokeWidth:1,fill:Co(t,s),stroke:Ro(t,c)}),o},"bpmn:ScriptTask":function(e,t){var n=w("bpmn:Task")(e,t);return _(e,i.getScaledPath("TASK_TYPE_SCRIPT",{abspos:{x:15,y:20}}),{strokeWidth:1,stroke:Ro(t,c)}),n},"bpmn:BusinessRuleTask":function(e,t){var n=w("bpmn:Task")(e,t);return Ee(_(e,i.getScaledPath("TASK_TYPE_BUSINESS_RULE_HEADER",{abspos:{x:8,y:8}})),{strokeWidth:1,fill:Co(t,"#aaaaaa"),stroke:Ro(t,c)}),Ee(_(e,i.getScaledPath("TASK_TYPE_BUSINESS_RULE_MAIN",{abspos:{x:8,y:8}})),{strokeWidth:1,stroke:Ro(t,c)}),n},"bpmn:SubProcess":function(e,t,n){n=F({fill:Co(t,s),stroke:Ro(t,c)},n);var i=w("bpmn:Activity")(e,t,n),r=go(t);return bo(t)&&Ee(i,{strokeDasharray:"1,2"}),T(e,t,r?"center-top":"center-middle"),r?k(e,t):k(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:Ro(t,c)});return g(e,t.width,t.height,8,3,r),i},"bpmn:CallActivity":function(e,t){return w("bpmn:SubProcess")(e,t,{strokeWidth:5})},"bpmn:Participant":function(e,t){var n={fillOpacity:Ao,fill:Co(t,s),stroke:Ro(t,c)},i=w("bpmn:Lane")(e,t,n);go(t)?(x(e,[{x:30,y:0},{x:30,y:t.height}],{stroke:Ro(t,c)}),P(e,So(t).name,t)):R(e,So(t).name,{box:t,align:"center-middle",style:{fill:To(t,p,c)}});return!!So(t).participantMultiplicity&&w("ParticipantMultiplicityMarker")(e,t),i},"bpmn:Lane":function(e,t,n){var i=g(e,t.width,t.height,0,F({fill:Co(t,s),fillOpacity:.35,stroke:Ro(t,c)},n)),r=So(t);"bpmn:Lane"===r.$type&&P(e,r.name,t);return i},"bpmn:InclusiveGateway":function(e,t){var n=w("bpmn:Gateway")(e,t);return y(e,t.width,t.height,.24*t.height,{strokeWidth:2.5,fill:Co(t,s),stroke:Ro(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 to(t).isMarkerVisible&&_(e,r,{strokeWidth:1,fill:Ro(t,c),stroke:Ro(t,c)}),n},"bpmn:ComplexGateway":function(e,t){var n=w("bpmn:Gateway")(e,t);return _(e,i.getScaledPath("GATEWAY_COMPLEX",{xScaleFactor:.5,yScaleFactor:.5,containerWidth:t.width,containerHeight:t.height,position:{mx:.46,my:.26}}),{strokeWidth:1,fill:Ro(t,c),stroke:Ro(t,c)}),n},"bpmn:ParallelGateway":function(e,t){var n=w("bpmn:Gateway")(e,t);return _(e,i.getScaledPath("GATEWAY_PARALLEL",{xScaleFactor:.6,yScaleFactor:.6,containerWidth:t.width,containerHeight:t.height,position:{mx:.46,my:.2}}),{strokeWidth:1,fill:Ro(t,c),stroke:Ro(t,c)}),n},"bpmn:EventBasedGateway":function(e,t){var n=So(t),r=w("bpmn:Gateway")(e,t);y(e,t.width,t.height,.2*t.height,{strokeWidth:1,fill:"none",stroke:Ro(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(_(e,s),{strokeWidth:1,fill:"none"})}else if("Exclusive"===o){if(!a)Ee(y(e,t.width,t.height,.26*t.height),{strokeWidth:1,fill:"none",stroke:Ro(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:Co(t,"none"),stroke:Ro(t,c)};_(e,n,r)}()}return r},"bpmn:Gateway":function(e,t){var n={fill:Co(t,s),fillOpacity:Ao,stroke:Ro(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=d(i,{stroke:"black",strokeWidth:2,fill:"white"});var s=Oe("polygon");return Ee(s,{points:a}),Ee(s,i),be(e,s),s}(e,t.width,t.height,n)},"bpmn:SequenceFlow":function(e,t){var n,i=A(t),r=Co(t,s),o=Ro(t,c),a=_(e,i,{strokeLinejoin:"round",markerEnd:v("sequenceflow-end",r,o),stroke:Ro(t,c)}),p=So(t);return t.source&&(n=t.source.businessObject,p.conditionExpression&&n.$instanceOf("bpmn:Activity")&&Ee(a,{markerStart:v("conditional-flow-marker",r,o)}),n.default&&(n.$instanceOf("bpmn:Gateway")||n.$instanceOf("bpmn:Activity"))&&n.default===p&&Ee(a,{markerStart:v("conditional-default-flow-marker",r,o)})),a},"bpmn:Association":function(e,t,n){var i=So(t),r=Co(t,s),o=Ro(t,c);return n=F({strokeDasharray:"0.5, 5",strokeLinecap:"round",strokeLinejoin:"round",stroke:Ro(t,c)},n||{}),"One"!==i.associationDirection&&"Both"!==i.associationDirection||(n.markerEnd=v("association-end",r,o)),"Both"===i.associationDirection&&(n.markerStart=v("association-start",r,o)),x(e,t.waypoints,n)},"bpmn:DataInputAssociation":function(e,t){var n=Co(t,s),i=Ro(t,c);return w("bpmn:Association")(e,t,{markerEnd:v("association-end",n,i)})},"bpmn:DataOutputAssociation":function(e,t){var n=Co(t,s),i=Ro(t,c);return w("bpmn:Association")(e,t,{markerEnd:v("association-end",n,i)})},"bpmn:MessageFlow":function(e,t){var n=So(t),r=to(t),o=Co(t,s),a=Ro(t,c),l=_(e,A(t),{markerEnd:v("messageflow-end",o,a),markerStart:v("messageflow-start",o,a),strokeDasharray:"10, 12",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.5px",stroke:Ro(t,c)});if(n.messageRef){var u=l.getPointAtLength(l.getTotalLength()/2),h=i.getScaledPath("MESSAGE_FLOW_MARKER",{abspos:{x:u.x,y:u.y}}),d={strokeWidth:1};"initiating"===r.messageVisibleKind?(d.fill="white",d.stroke="black"):(d.fill="#888",d.stroke="white");var f=_(e,h,d),m=R(e,n.messageRef.name,{align:"center-top",fitBox:!0,style:{fill:Ro(t,p)}}),y=f.getBBox(),g=m.getBBox();Si(m,u.x-g.width/2,u.y+y.height/2+10,0)}return l},"bpmn:DataObject":function(e,t){var n=_(e,i.getScaledPath("DATA_OBJECT_PATH",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:.474,my:.296}}),{fill:Co(t,s),fillOpacity:Ao,stroke:Ro(t,c)});return function(e){var t=e.dataObjectRef;return e.isCollection||t&&t.isCollection}(So(t))&&function(e,t){var n=(t.height-18)/t.height,r=i.getScaledPath("DATA_OBJECT_COLLECTION_PATH",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:.33,my:n}});_(e,r,{strokeWidth:2})}(e,t),n},"bpmn:DataObjectReference":S("bpmn:DataObject"),"bpmn:DataInput":function(e,t){var n=i.getRawPath("DATA_ARROW"),r=w("bpmn:DataObject")(e,t);return _(e,n,{strokeWidth:1}),r},"bpmn:DataOutput":function(e,t){var n=i.getRawPath("DATA_ARROW"),r=w("bpmn:DataObject")(e,t);return _(e,n,{strokeWidth:1,fill:"black"}),r},"bpmn:DataStoreReference":function(e,t){return _(e,i.getScaledPath("DATA_STORE",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:0,my:.133}}),{strokeWidth:2,fill:Co(t,s),fillOpacity:Ao,stroke:Ro(t,c)})},"bpmn:BoundaryEvent":function(e,t){var n=So(t).cancelActivity,i={strokeWidth:1,fill:Co(t,s),stroke:Ro(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 y(e,t.width,t.height,3,o),C(t,e),a},"bpmn:Group":function(e,t){return g(e,t.width,t.height,10,{stroke:Ro(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 R(e,Eo(t),{box:n,fitBox:!0,style:F({},o.getExternalStyle(),{fill:To(t,p,c)})})}(e,t)},"bpmn:TextAnnotation":function(e,t){var n=g(e,t.width,t.height,0,0,{fill:"none",stroke:"none"});return _(e,i.getScaledPath("TEXT_ANNOTATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:t.width,containerHeight:t.height,position:{mx:0,my:0}}),{stroke:Ro(t,c)}),R(e,So(t).text||"",{box:t,align:"left-top",padding:5,style:{fill:To(t,p,c)}}),n},ParticipantMultiplicityMarker:function(e,t){E("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:2,fill:Co(t,s),stroke:Ro(t,c)})},SubProcessMarker:function(e,t){Ci(g(e,14,14,0,{strokeWidth:1,fill:Co(t,s),stroke:Ro(t,c)}),t.width/2-7.5,t.height-20),E("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:Co(t,s),stroke:Ro(t,c)})},ParallelMarker:function(e,t,n){E("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:Co(t,s),stroke:Ro(t,c)})},SequentialMarker:function(e,t,n){E("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:Co(t,s),stroke:Ro(t,c)})},CompensationMarker:function(e,t,n){E("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:Co(t,s),stroke:Ro(t,c)})},LoopMarker:function(e,t,n){E("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:Co(t,s),stroke:Ro(t,c),strokeLinecap:"round",strokeMiterlimit:.5})},AdhocMarker:function(e,t,n){E("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:Ro(t,c),stroke:Ro(t,c)})}};function k(e,t,n){var i,r=So(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=_,this._renderer=w}n(Mo,rt),Mo.$inject=["config.bpmnRenderer","eventBus","styles","pathMap","canvas","textRenderer"],Mo.prototype.canRender=function(e){return Qr(e,"bpmn:BaseElement")},Mo.prototype.drawShape=function(e,t){var n=t.type;return this._renderer(n)(e,t)},Mo.prototype.drawConnection=function(e,t){var n=t.type;return this._renderer(n)(e,t)},Mo.prototype.getShapePath=function(e){return Qr(e,"bpmn:Event")?(n=(t=e).x+t.width/2,i=t.y+t.height/2,r=t.width/2,ot([["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"]])):Qr(e,"bpmn:Activity")?function(e,t){var n=e.x,i=e.y,r=e.width,o=e.height;return ot([["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,10):Qr(e,"bpmn:Gateway")?function(e){var t=e.width/2,n=e.height/2;return ot([["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 ot([["M",t,n],["l",i,0],["l",0,e.height],["l",-i,0],["z"]])}(e);var t,n,i,r};var ko={width:150,height:50};function Do(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 Bo(e,t,n){for(var i,r=e.shift(),o=r;;){if((i=Do(o,n)).width=o?i.width:0," "===o||""===o||i.width<Math.round(t)||o.length<2)return No(e,o,r,i);o=Oo(o,i.width,t)}}function No(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 Oo(e,t,n){var i=Math.max(e.length*(n/t),1),r=function(e,t){var n,i=e.split(/(\s|-|\u00AD)/g),r=[],o=0;if(i.length>1)for(;n=i.shift();){if(!(n.length+o<t)){"-"!==n&&""!==n||r.pop();break}r.push(n),o+=n.length}var a=r[r.length-1];return a&&""===a&&(r[r.length-1]="-"),r.join("")}(e,i);return r||(r=e.slice(0,Math.max(Math.round(i-1),1))),r}function jo(e){this._config=F({},{size:ko,padding:0,style:{},align:"center-top"},e||{})}jo.prototype.createText=function(e,t){return this.layoutText(e,t).element},jo.prototype.getDimensions=function(e,t){return this.layoutText(e,t).dimensions},jo.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(/\u00AD?\r?\n/),p=[],l=n.width-o.left-o.right,u=Oe("text");for(Ee(u,{x:0,y:0}),Ee(u,i),be(function(){var e=document.getElementById("helper-svg");return e||(Ee(e=Oe("svg"),{id:"helper-svg",width:0,height:0,visibility:"hidden",position:"fixed"}),document.body.appendChild(e)),e}(),u);c.length;)p.push(Bo(c,l,u));"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:l)-o.right-e.width;break;default:t=Math.max(((a?f:l)-e.width)/2+o.left,0)}var n=Oe("tspan");Ee(n,{x:t,y:m}),n.textContent=e.text,be(v,n)})),Ae(u),{dimensions:{width:f,height:d},element:v}};function Lo(e){var t=F({fontFamily:"Arial, sans-serif",fontSize:12,fontWeight:"normal",lineHeight:1.2},e&&e.defaultStyle||{}),n=parseInt(t.fontSize,10)-1,i=F({},t,{fontSize:n},e&&e.externalStyle||{}),r=new jo({style:t});this.getExternalLabelBounds=function(e,t){var n=r.getDimensions(t,{box:{width:90,height:30,x:e.width/2+e.x,y:e.height/2+e.y},style:i});return{x:Math.round(e.x+e.width/2-n.width/2),y:Math.round(e.y),width:Math.ceil(n.width),height:Math.ceil(n.height)}},this.getTextAnnotationBounds=function(e,n){var i=r.getDimensions(n,{box:e,style:t,align:"left-top",padding:5});return{x:e.x,y:e.y,width:e.width,height:Math.max(30,Math.round(i.height))}},this.createText=function(e,t){return r.createText(e,t||{})},this.getDefaultStyle=function(){return t},this.getExternalStyle=function(){return i}}Lo.$inject=["config.textRenderer"];var Io=/\{([^{}]+)\}/g,zo=/(?:(?:^|\.)(.+?)(?=\[|\.|$|\()|\[('|")(.+?)\2\])(\(\))?/g;var Fo={__init__:["bpmnRenderer"],bpmnRenderer:["type",Mo],textRenderer:["type",Lo],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 3,2 l 0,10 m 3,-10 l 0,10 m 3,-10 l 0,10",height:10,width:10,heightElements:[],widthElements:[]},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,l=0;l<r.heightElements.length;l++)s["y"+l]=r.heightElements[l]*c;for(var u=0;u<r.widthElements.length;u++)s["x"+u]=r.widthElements[u]*p}return o=r.d,a={mx:n,my:i,e:s},String(o).replace(Io,(function(e,t){return function(e,t,n){var i=n;return t.replace(zo,(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 $o={translate:["value",function(e,t){return t=t||{},e.replace(/{([^}]+)}/g,(function(e,n){return t[n]||"{"+n+"}"}))}]},Ho={width:90,height:20};function Go(e){return Qr(e,"bpmn:Event")||Qr(e,"bpmn:Gateway")||Qr(e,"bpmn:DataStoreReference")||Qr(e,"bpmn:DataObjectReference")||Qr(e,"bpmn:DataInput")||Qr(e,"bpmn:DataOutput")||Qr(e,"bpmn:SequenceFlow")||Qr(e,"bpmn:MessageFlow")||Qr(e,"bpmn:Group")}function Vo(e){return qo(e.label)}function Wo(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-=15:a+=15,{x:a,y:s}}function Uo(e){return e.waypoints?Wo(e.waypoints):Qr(e,"bpmn:Group")?{x:e.x+e.width/2,y:e.y+Ho.height/2}:{x:e.x+e.width/2,y:e.y+e.height+Ho.height/2}}function qo(e){return e&&!!e.labelTarget}function Ko(e,t,n){return F({id:e.id,type:e.$type,businessObject:e,di:t},n)}function Yo(e,t,n){var i=e.waypoint;return!i||i.length<2?[Vn(t),Vn(n)]:i.map((function(e){return{x:e.x,y:e.y}}))}function Xo(e,t,n,i){return new Error(e("element {element} referenced by {referenced}#{property} not yet drawn",{element:qr(n),referenced:qr(t),property:i}))}function Zo(e,t,n,i,r,o){this._eventBus=e,this._canvas=t,this._elementFactory=n,this._elementRegistry=i,this._translate=r,this._textRenderer=o}Zo.$inject=["eventBus","canvas","elementFactory","elementRegistry","translate","textRenderer"],Zo.prototype.add=function(e,t,n){var i,r,o,a,s,c,p,l=this._translate;if(Qr(t,"bpmndi:BPMNPlane")){var u=Qr(e,"bpmn:SubProcess")?{id:e.id+"_plane"}:{};i=this._elementFactory.createRoot(Ko(e,t,u)),this._canvas.addRootElement(i)}else if(Qr(t,"bpmndi:BPMNShape")){var h=!go(e,t),d=function(e){return Qr(e,"bpmn:Group")}(e);r=n&&(n.hidden||n.collapsed);var f=t.bounds;i=this._elementFactory.createShape(Ko(e,t,{collapsed:h,hidden:r,x:Math.round(f.x),y:Math.round(f.y),width:Math.round(f.width),height:Math.round(f.height),isFrame:d})),Qr(e,"bpmn:BoundaryEvent")&&this._attachBoundary(e,i),Qr(e,"bpmn:Lane")&&(o=0),Qr(e,"bpmn:DataStoreReference")&&(a=n,s=Vn(f),c=s.x,p=s.y,c>=a.x&&c<=a.x+a.width&&p>=a.y&&p<=a.y+a.height||(n=this._canvas.findRoot(n))),this._canvas.addShape(i,n,o)}else{if(!Qr(t,"bpmndi:BPMNEdge"))throw new Error(l("unknown di {di} for element {semantic}",{di:qr(t),semantic:qr(e)}));var m=this._getSource(e),v=this._getTarget(e);r=n&&(n.hidden||n.collapsed),i=this._elementFactory.createConnection(Ko(e,t,{hidden:r,source:m,target:v,waypoints:Yo(t,m,v)})),Qr(e,"bpmn:DataAssociation")&&(n=this._canvas.findRoot(n)),Qr(e,"bpmn:SequenceFlow")&&(o=0),this._canvas.addConnection(i,n,o)}return Go(e)&&Eo(i)&&this.addLabel(e,t,i),this._eventBus.fire("bpmnElement.added",{element:i}),i},Zo.prototype._attachBoundary=function(e,t){var n=this._translate,i=e.attachedToRef;if(!i)throw new Error(n("missing {semantic}#attachedToRef",{semantic:qr(e)}));var r=this._elementRegistry.get(i.id),o=r&&r.attachers;if(!r)throw Xo(n,e,i,"attachedToRef");t.host=r,o||(r.attachers=o=[]),-1===o.indexOf(t)&&o.push(t)},Zo.prototype.addLabel=function(e,t,n){var i,r,o;return i=function(e,t){var n,i,r,o=e.label;return o&&o.bounds?(r=o.bounds,i={width:Math.max(Ho.width,r.width),height:r.height},n={x:r.x+r.width/2,y:r.y+r.height/2}):(n=Uo(t),i=Ho),F({x:n.x-i.width/2,y:n.y-i.height/2},i)}(t,n),(r=Eo(n))&&(i=this._textRenderer.getExternalLabelBounds(i,r)),o=this._elementFactory.createLabel(Ko(e,t,{id:e.id+"_label",labelTarget:n,type:"label",hidden:n.hidden||!Eo(n),x:Math.round(i.x),y:Math.round(i.y),width:Math.round(i.width),height:Math.round(i.height)})),this._canvas.addShape(o,n.parent)},Zo.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?Xo(o,e,i,t+"Ref"):new Error(o("{semantic}#{side} Ref not specified",{semantic:qr(e),side:t}))},Zo.prototype._getSource=function(e){return this._getEnd(e,"source")},Zo.prototype._getTarget=function(e){return this._getEnd(e,"target")},Zo.prototype._getElement=function(e){return this._elementRegistry.get(e.id)};var Qo={__depends__:[Fo,{__depends__:[$o],bpmnImporter:["type",Zo]}]};function Jo(e){e&&"function"==typeof e.stopPropagation&&e.stopPropagation()}function ea(e){return e.originalEvent||e.srcEvent}function ta(e,t){Jo(e),Jo(ea(e))}function na(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 ia(e,t){return(ea(e)||e).button===t}function ra(e){return ia(e,0)}function oa(e){var t=ea(e)||e;return!!ra(e)&&(/mac/i.test(navigator.platform)?t.metaKey:t.ctrlKey)}function aa(e){var t=ea(e)||e;return ra(e)&&t.shiftKey}function sa(e){return!0}function ca(e){return ra(e)||function(e){return ia(e,1)}(e)}function pa(e,t,n){var i=this;function r(n,i,r){var o,a;(function(e,t){return!(c[e]||ra)(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":sa,"element.mousedown":ca,"element.mouseup":ca,"element.click":ca,"element.dblclick":ca};function p(e,t,n,i){var a=o[n]=function(e){r(n,e)};i&&(c[n]=i),a.$delegate=Vt.bind(e,"svg, .djs-element",t,a)}function l(e,t,n){var i=a(n);i&&Vt.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){p(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"],500,(function(t){var n=t.element,i=t.gfx;e.fire("interactionEvents.updateHit",{element:n,gfx:i})})),e.on("interactionEvents.createHit",500,(function(e){var t=e.element,n=e.gfx;i.createDefaultHit(t,n)})),e.on("interactionEvents.updateHit",(function(e){var t=e.element,n=e.gfx;i.updateDefaultHit(t,n)}));var u=f("djs-hit djs-hit-stroke"),h=f("djs-hit djs-hit-click-stroke"),d={all:f("djs-hit djs-hit-all"),"click-stroke":h,stroke:u,"no-move":f("djs-hit djs-hit-no-move")};function f(e,t){return t=F({stroke:"white",strokeWidth:15},t||{}),n.cls(e,["no-fill","no-border"],t)}function m(e,t){var n=d[t];if(!n)throw new Error("invalid hit type <"+t+">");return Ee(e,n),e}function v(e,t){be(e,t)}this.removeHits=function(e){b(Yt(".djs-hit",e),Ae)},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=st(t);return m(n,"stroke"),v(e,n),n},this.createBoxHit=function(e,t,n){n=F({x:0,y:0},n);var i=Oe("rect");return m(i,t),Ee(i,n),v(e,i),i},this.updateDefaultHit=function(e,t){var n=Kt(".djs-hit",t);if(n)return e.waypoints?function(e,t){Ee(e,{points:at(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=p,this.unregisterEvent=l}pa.$inject=["eventBus","elementRegistry","styles"];var la={__init__:["interactionEvents"],interactionEvents:["type",pa]};function ua(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)),be(e,n),n}e.on(["shape.added","shape.changed"],500,(function(e){var t=e.element,n=e.gfx,i=Kt(".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=Kt(".djs-outline",n);i||(i=o(n)),r.updateConnectionOutline(i,t)}))}ua.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})},ua.prototype.updateConnectionOutline=function(e,t){var n=dt(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})},ua.$inject=["eventBus","styles","elementRegistry"];var ha={__init__:["outline"],outline:["type",ua]};function da(e,t){this._eventBus=e,this._canvas=t,this._selectedElements=[];var n=this;e.on(["shape.remove","connection.remove"],(function(e){var t=e.element;n.deselect(t)})),e.on(["diagram.clear","root.set"],(function(e){n.select(null)}))}da.$inject=["eventBus","canvas"],da.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})}},da.prototype.get=function(){return this._selectedElements},da.prototype.isSelected=function(e){return-1!==this._selectedElements.indexOf(e)},da.prototype.select=function(e,t){var n=this._selectedElements,i=n.slice();u(e)||(e=e?[e]:[]);var r=this._canvas,o=r.getRootElement();e=e.filter((function(e){var t=r.findRoot(e);return o===t})),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 fa="hover",ma="selected";function va(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,fa)})),e.on("element.out",(function(e){o(e.element,fa)})),e.on("selection.changed",(function(e){var t=e.oldSelection,n=e.newSelection;b(t,(function(e){-1===n.indexOf(e)&&o(e,ma)})),b(n,(function(e){-1===t.indexOf(e)&&r(e,ma)}))}))}function ya(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;u(o)?t.select(o):t.select(r.filter(ga))}})),e.on("connect.end",500,(function(e){var n=e.context,i=n.canExecute,r=n.hover;i&&r&&t.select(r)})),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){if(ra(e)){var i=e.element;i===n.getRootElement()&&(i=null);var r=t.isSelected(i),o=t.get().length>1,a=oa(e)||aa(e);if(r&&o)return a?t.deselect(i):t.select(i);r?t.deselect(i):t.select(i,a)}}))}function ga(e){return!e.hidden}va.$inject=["eventBus","canvas","selection","styles"],ya.$inject=["eventBus","selection","canvas","elementRegistry"];var ba={__init__:["selectionVisuals","selectionBehavior"],__depends__:[la,ha],selection:["type",da],selectionVisuals:["type",va],selectionBehavior:["type",ya]};function xa(e){this._counter=0,this._prefix=(e?e+"-":"")+Math.floor(1e9*Math.random())+"-"}xa.prototype.next=function(){return this._prefix+ ++this._counter};var _a=new xa("ov");function Ea(e,t,n,i){var r,o;this._eventBus=t,this._canvas=n,this._elementRegistry=i,this._ids=_a,this._overlayDefaults=F({show:null,scale:!0},e&&e.defaults),this._overlays={},this._overlayContainers=[],this._overlayRoot=(r=n.getContainer(),Ct(o=Wt('<div class="djs-overlay-container" />'),{position:"absolute",width:0,height:0}),r.insertBefore(o,r.firstChild),o),this._init()}function wa(e,t,n){Ct(e,{left:t+"px",top:n+"px"})}function Sa(e,t){e.style.display=!1===t?"none":""}function Ca(e,t){e.style["transform-origin"]="top left",["","-ms-","-webkit-"].forEach((function(n){e.style[n+"transform"]=t}))}Ea.$inject=["config.overlays","eventBus","canvas","elementRegistry"],Ea.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},Ea.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},Ea.prototype.remove=function(e){var t=this.get(e)||[];u(t)||(t=[t]);var n=this;b(t,(function(e){var t=n._getOverlayContainer(e.element,!0);if(e&&(Xt(e.html),Xt(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)}}))},Ea.prototype.show=function(){Sa(this._overlayRoot)},Ea.prototype.hide=function(){Sa(this._overlayRoot,!1)},Ea.prototype.clear=function(){this._overlays={},this._overlayContainers=[],Bt(this._overlayRoot)},Ea.prototype._updateOverlayContainer=function(e){var t=e.element,n=e.html,i=t.x,r=t.y;if(t.waypoints){var o=dt(t);i=o.x,r=o.y}wa(n,i,r),Rt(e.html,"data-container-id",t.id)},Ea.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?dt(o).width:o.width,a=-1*i.right+t);void 0!==i.bottom&&(n=o.waypoints?dt(o).height:o.height,s=-1*i.bottom+n);wa(r,a||0,s||0),this._updateOverlayVisibilty(e,this._canvas.viewbox())},Ea.prototype._createOverlayContainer=function(e){var t=Wt('<div class="djs-overlays" />');Ct(t,{position:"absolute"}),this._overlayRoot.appendChild(t);var n={html:t,element:e,overlays:[]};return this._updateOverlayContainer(n),this._overlayContainers.push(n),n},Ea.prototype._updateRoot=function(e){var t=e.scale||1,n="matrix("+[t,0,0,t,-1*e.x*t,-1*e.y*t].join(",")+")";Ca(this._overlayRoot,n)},Ea.prototype._getOverlayContainer=function(e,t){var n=y(this._overlayContainers,(function(t){return t.element===e}));return n||t?n:this._createOverlayContainer(e)},Ea.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=Wt(o)),n=this._getOverlayContainer(r),Ct(t=Wt('<div class="djs-overlay" data-overlay-id="'+i+'">'),{position:"absolute"}),t.appendChild(o),e.type&&kt(t).add("djs-overlay-"+e.type),Sa(t,this._canvas.findRoot(r)===this._canvas.getRootElement()),e.htmlContainer=t,n.overlays.push(e),n.html.appendChild(t),this._overlays[i]=e,this._updateOverlay(e),this._updateOverlayVisibilty(e,this._canvas.viewbox())},Ea.prototype._updateOverlayVisibilty=function(e,t){var n=e.show,i=this._canvas.findRoot(e.element),r=n&&n.minZoom,o=n&&n.maxZoom,a=e.htmlContainer,s=!0;(i!==this._canvas.getRootElement()||n&&(p(r)&&r>t.scale||p(o)&&o<t.scale))&&(s=!1),Sa(a,s),this._updateOverlayScale(e,t)},Ea.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+")"),Ca(a,s)},Ea.prototype._updateOverlaysVisibilty=function(e){var t=this;b(this._overlays,(function(n){t._updateOverlayVisibilty(n,e)}))},Ea.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){Xt(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&&kt(n.html)[e.add?"add":"remove"](e.marker)})),e.on("root.set",(function(){t._updateOverlaysVisibilty(t._canvas.viewbox())})),e.on("diagram.clear",this.clear,this)};var Ra={__init__:["overlays"],overlays:["type",Ea]};function Ta(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(ft(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)}))}Ta.$inject=["eventBus","canvas","elementRegistry","graphicsFactory"];var Pa={__init__:["changeSupport"],changeSupport:["type",Ta]};function Aa(e){this._eventBus=e}Aa.$inject=["eventBus"],Aa.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");u(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 Ma(e,t){t.invoke(Aa,this),this.executed((function(t){var n=t.context;n.rootElement?e.setRootElement(n.rootElement):n.rootElement=e.getRootElement()})),this.revert((function(t){var n=t.context;n.rootElement&&e.setRootElement(n.rootElement)}))}b(["canExecute","preExecute","preExecuted","execute","executed","postExecute","postExecuted","revert","reverted"],(function(e){Aa.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)}})),n(Ma,Aa),Ma.$inject=["canvas","injector"];var ka={__init__:["rootElementsBehavior"],rootElementsBehavior:["type",Ma]},Da={exports:{}};
|
|
29
28
|
/*! https://mths.be/cssescape v1.5.1 by @mathias | MIT license */
|
|
30
|
-
!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)}(qo);var Ko=qo.exports,Yo={"&":"&","<":"<",">":">",'"':""","'":"'"};function Xo(e){return(e=""+e)&&e.replace(/[&<>"']/g,(function(e){return Yo[e]}))}var Zo="_plane";function Qo(e){return function(e){return e.replace(new RegExp("_plane$"),"")}(e.id)}function Jo(e){var t=e.id;return vr(e,"bpmn:SubProcess")?na(t):t}function ea(e){return na(e)}function ta(e){return vr(br(e),"bpmndi:BPMNPlane")}function na(e){return e+Zo}function ia(e,t,n,i){var r=ce('<ul class="bjs-breadcrumbs"></ul>'),o=i.getContainer(),a=K(o);o.appendChild(r);var s=[];function c(e){e&&(s=function(e){for(var t=gr(e),n=[],i=t;i;i=i.$parent)(vr(i,"bpmn:SubProcess")||vr(i,"bpmn:Process"))&&n.push(i);return n.reverse()}(e));var n=s.map((function(e){var n=Xo(e.name||e.id),r=ce('<li><span class="bjs-crumb"><a title="'+n+'">'+n+"</a></span></li>"),o=i.findRoot(Jo(e))||i.findRoot(e.id);if(!o&&vr(e,"bpmn:Process")){var a=t.find((function(t){var n=gr(t);return n&&n.processRef&&n.processRef===e}));o=i.findRoot(a.id)}return r.addEventListener("click",(function(){i.setRootElement(o)})),r}));r.innerHTML="";var o=n.length>1;a.toggle("bjs-breadcrumbs-shown",o),n.forEach((function(e){r.appendChild(e)}))}e.on("element.changed",(function(e){var t=gr(e.element);y(s,(function(e){return e===t}))&&c()})),e.on("root.set",(function(e){c(e.element)}))}function ra(e,t){var n=null,i=new oa;e.on("root.set",(function(e){var r=e.element,o=t.viewbox(),a=i.get(r);if(i.set(n,{x:o.x,y:o.y,zoom:o.scale}),n=r,!vr(r,"bpmn:Collaboration")||a){a=a||{x:0,y:0,zoom:1};var s=(o.x-a.x)*o.scale,c=(o.y-a.y)*o.scale;0===s&&0===c||t.scroll({dx:s,dy:c}),a.zoom!==o.scale&&t.zoom(a.zoom,{x:0,y:0})}})),e.on("diagram.clear",(function(){i.clear(),n=null}))}function oa(){this._entries=[],this.set=function(e,t){var n=!1;for(var i in this._entries)if(this._entries[i][0]===e){this._entries[i][1]=t,n=!0;break}n||this._entries.push([e,t])},this.get=function(e){for(var t in this._entries)if(this._entries[t][0]===e)return this._entries[t][1];return null},this.clear=function(){this._entries.length=0},this.remove=function(e){var t=-1;for(var n in this._entries)if(this._entries[n][0]===e){t=n;break}-1!==t&&this._entries.splice(t,1)}}ia.$inject=["eventBus","elementRegistry","overlays","canvas"],ra.$inject=["eventBus","canvas"];var aa=180,sa=160;function ca(e,t){this._eventBus=e,this._moddle=t;var n=this;e.on("import.render.start",1500,(function(e,t){n.handleImport(t.definitions)}))}function pa(e){return vr(e,"bpmndi:BPMNDiagram")?e:pa(e.$parent)}ca.prototype.handleImport=function(e){if(e.diagrams){var t=this;this._definitions=e,this._processToDiagramMap={},e.diagrams.forEach((function(e){e.plane&&e.plane.bpmnElement&&(t._processToDiagramMap[e.plane.bpmnElement.id]=e)}));var n=[];e.diagrams.forEach((function(e){var i=t.createNewDiagrams(e.plane);Array.prototype.push.apply(n,i)})),n.forEach((function(e){t.movePlaneElementsToOrigin(e.plane)}))}},ca.prototype.createNewDiagrams=function(e){var t=this,n=[],i=[];e.get("planeElement").forEach((function(t){var r=t.bpmnElement;if(r){var o=r.$parent;vr(r,"bpmn:SubProcess")&&!t.isExpanded&&n.push(r),function(e,t){var n=e.$parent;if(!vr(n,"bpmn:SubProcess")||n===t.bpmnElement)return!1;if(yr(e,["bpmn:DataInputAssociation","bpmn:DataOutputAssociation"]))return!1;return!0}(r,e)&&i.push({diElement:t,parent:o})}}));var r=[];return n.forEach((function(e){if(!t._processToDiagramMap[e.id]){var n=t.createDiagram(e);t._processToDiagramMap[e.id]=n,r.push(n)}})),i.forEach((function(e){for(var i=e.diElement,r=e.parent;r&&-1===n.indexOf(r);)r=r.$parent;if(r){var o=t._processToDiagramMap[r.id];t.moveToDiPlane(i,o.plane)}})),r},ca.prototype.movePlaneElementsToOrigin=function(e){var t=e.get("planeElement"),n=function(e){var t={top:1/0,right:-1/0,bottom:-1/0,left:1/0};return e.planeElement.forEach((function(e){if(e.bounds){var n=an(e.bounds);t.top=Math.min(n.top,t.top),t.left=Math.min(n.left,t.left)}})),sn(t)}(e),i=n.x-aa,r=n.y-sa;t.forEach((function(e){e.waypoint?e.waypoint.forEach((function(e){e.x=e.x-i,e.y=e.y-r})):e.bounds&&(e.bounds.x=e.bounds.x-i,e.bounds.y=e.bounds.y-r)}))},ca.prototype.moveToDiPlane=function(e,t){var n=pa(e).plane.get("planeElement");n.splice(n.indexOf(e),1),t.get("planeElement").push(e)},ca.prototype.createDiagram=function(e){var t=this._moddle.create("bpmndi:BPMNPlane",{bpmnElement:e}),n=this._moddle.create("bpmndi:BPMNDiagram",{plane:t});return t.$parent=n,t.bpmnElement=e,n.$parent=this._definitions,this._definitions.diagrams.push(n),n},ca.$inject=["eventBus","moddle"];var la=250;function ua(e,t,n,i){Wo.call(this,t),this._canvas=e,this._eventBus=t,this._elementRegistry=n,this._overlays=i;var r=this;this.executed("shape.toggleCollapse",la,(function(e){var t=e.shape;r.canDrillDown(t)?r.addOverlay(t):r.removeOverlay(t)}),!0),this.reverted("shape.toggleCollapse",la,(function(e){var t=e.shape;r.canDrillDown(t)?r.addOverlay(t):r.removeOverlay(t)}),!0),this.executed(["shape.create","shape.move","shape.delete"],la,(function(e){var t=e.oldParent,n=e.newParent||e.parent,i=e.shape;r.canDrillDown(i)&&r.addOverlay(i),r.updateDrilldownOverlay(t),r.updateDrilldownOverlay(n),r.updateDrilldownOverlay(i)}),!0),this.reverted(["shape.create","shape.move","shape.delete"],la,(function(e){var t=e.oldParent,n=e.newParent||e.parent,i=e.shape;r.canDrillDown(i)&&r.addOverlay(i),r.updateDrilldownOverlay(t),r.updateDrilldownOverlay(n),r.updateDrilldownOverlay(i)}),!0),t.on("import.render.complete",(function(){n.filter((function(e){return r.canDrillDown(e)})).map((function(e){r.addOverlay(e)}))}))}n(ua,Wo),ua.prototype.updateDrilldownOverlay=function(e){var t=this._canvas;if(e){var n=t.findRoot(e);n&&this.updateOverlayVisibility(n)}},ua.prototype.canDrillDown=function(e){var t=this._canvas;return vr(e,"bpmn:SubProcess")&&t.findRoot(Jo(e))},ua.prototype.updateOverlayVisibility=function(e){var t=this._overlays,n=e.businessObject,i=t.get({element:n.id,type:"drilldown"})[0];if(i){var r=n&&n.flowElements&&n.flowElements.length;K(i.html).toggle("bjs-drilldown-empty",!r)}},ua.prototype.addOverlay=function(e){var t=this._canvas,n=this._overlays;n.get({element:e,type:"drilldown"}).length&&this.removeOverlay(e);var i=ce('<button class="bjs-drilldown"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 16 16"><path fill-rule="evenodd" d="M4.81801948,3.50735931 L10.4996894,9.1896894 L10.5,4 L12,4 L12,12 L4,12 L4,10.5 L9.6896894,10.4996894 L3.75735931,4.56801948 C3.46446609,4.27512627 3.46446609,3.80025253 3.75735931,3.50735931 C4.05025253,3.21446609 4.52512627,3.21446609 4.81801948,3.50735931 Z"/></svg></button>');i.addEventListener("click",(function(){t.setRootElement(t.findRoot(Jo(e)))})),n.add(e,"drilldown",{position:{bottom:-7,right:-8},html:i}),this.updateOverlayVisibility(e)},ua.prototype.removeOverlay=function(e){this._overlays.remove({element:e,type:"drilldown"})},ua.$inject=["canvas","eventBus","elementRegistry","overlays"];var ha={__depends__:[$o,Go,Uo],__init__:["drilldownBreadcrumbs","drilldownOverlayBehavior","drilldownCentering","subprocessCompatibility"],drilldownBreadcrumbs:["type",ia],drilldownCentering:["type",ra],drilldownOverlayBehavior:["type",ua],subprocessCompatibility:["type",ca]};function da(e){Tr.call(this,e)}function fa(e){return!e.altKey&&(e.ctrlKey||e.metaKey)}function ma(e,t){return-1!==(e=u(e)?e:[e]).indexOf(t.key)||-1!==e.indexOf(t.keyCode)}function va(e){return e.shiftKey}n(da,Tr),da.prototype._modules=[ho,to,No,$o,ha],da.prototype._moddleExtensions={};var ya="keyboard.keydown",ga="input-handle-modified-keys";function ba(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()}))}ba.$inject=["config.keyboard","eventBus"],ba.prototype._keydownHandler=function(e){this._keyHandler(e,ya)},ba.prototype._keyupHandler=function(e){this._keyHandler(e,"keyboard.keyup")},ba.prototype._keyHandler=function(e,t){if(!this._isEventIgnored(e)){var n={keyEvent:e};this._eventBus.fire(t||ya,n)&&e.preventDefault()}},ba.prototype._isEventIgnored=function(e){return(t=e.target)&&(J(t,"input, textarea")||"true"===t.contentEditable)&&this._isModifiedKeyIgnored(e);var t},ba.prototype._isModifiedKeyIgnored=function(e){return!fa(e)||-1===this._getAllowedModifiers(e.target).indexOf(e.key)},ba.prototype._getAllowedModifiers=function(e){var t=ee(e,"[input-handle-modified-keys]",!0);return!t||this._node&&!this._node.contains(t)?[]:t.getAttribute(ga).split(",")},ba.prototype.bind=function(e){this.unbind(),this._node=e,re.bind(e,"keydown",this._keydownHandler,!0),re.bind(e,"keyup",this._keyupHandler,!0),this._fire("bind")},ba.prototype.getBinding=function(){return this._node},ba.prototype.unbind=function(){var e=this._node;e&&(this._fire("unbind"),re.unbind(e,"keydown",this._keydownHandler,!0),re.unbind(e,"keyup",this._keyupHandler,!0)),this._node=null},ba.prototype._fire=function(e){this._eventBus.fire("keyboard."+e,{node:this._node})},ba.prototype.addListener=function(e,t,n){f(e)&&(n=t,t=e,e=1e3),this._eventBus.on(n||ya,e,t)},ba.prototype.removeListener=function(e,t){this._eventBus.off(t||ya,e)},ba.prototype.hasModifier=function(e){return e.ctrlKey||e.metaKey||e.shiftKey||e.altKey},ba.prototype.isCmd=fa,ba.prototype.isShift=va,ba.prototype.isKey=ma;var xa=["c","C",67],_a=["v","V",86],Ea=["y","Y",89],wa=["z","Z",90];function Sa(e,t){var n=this;e.on("editorActions.init",500,(function(e){var i=e.editorActions;n.registerBindings(t,i)}))}Sa.$inject=["eventBus","keyboard"],Sa.prototype.registerBindings=function(e,t){function n(n,i){t.isRegistered(n)&&e.addListener(i)}n("undo",(function(e){var n=e.keyEvent;if(fa(n)&&!va(n)&&ma(wa,n))return t.trigger("undo"),!0})),n("redo",(function(e){var n=e.keyEvent;if(fa(n)&&(ma(Ea,n)||ma(wa,n)&&va(n)))return t.trigger("redo"),!0})),n("copy",(function(e){var n=e.keyEvent;if(fa(n)&&ma(xa,n))return t.trigger("copy"),!0})),n("paste",(function(e){var n=e.keyEvent;if(fa(n)&&ma(_a,n))return t.trigger("paste"),!0})),n("stepZoom",(function(e){var n=e.keyEvent;if(ma(["+","Add","="],n)&&fa(n))return t.trigger("stepZoom",{value:1}),!0})),n("stepZoom",(function(e){var n=e.keyEvent;if(ma(["-","Subtract"],n)&&fa(n))return t.trigger("stepZoom",{value:-1}),!0})),n("zoom",(function(e){var n=e.keyEvent;if(ma("0",n)&&fa(n))return t.trigger("zoom",{value:1}),!0})),n("removeSelection",(function(e){if(ma(["Backspace","Delete","Del"],e.keyEvent))return t.trigger("removeSelection"),!0}))};var Ca={__init__:["keyboard","keyboardBindings"],keyboard:["type",ba],keyboardBindings:["type",Sa]},Ra={moveSpeed:50,moveSpeedAccelerated:200};function Ta(e,t,n){var i=this;this._config=F({},Ra,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})}}Ta.$inject=["config.keyboardMove","keyboard","canvas"];var Pa={__depends__:[Ca],__init__:["keyboardMove"],keyboardMove:["type",Ta]},Aa=/^djs-cursor-.*$/;function ka(e){var t=K(document.body);t.removeMatching(Aa),e&&t.add("djs-cursor-"+e)}function Ma(){ka(null)}function Da(e,t){function n(){return!1}return t=t||"element.click",e.once(t,5e3,n),function(){e.off(t,n)}}function Ba(e){return{x:e.x+e.width/2,y:e.y+e.height/2}}function Na(e,t){return{x:e.x-t.x,y:e.y-t.y}}function Oa(e,t){var n;function i(i){var r,o=n.start,a=n.button,s=yo(i),c=Na(s,o);(!n.dragging&&(r=c,Math.sqrt(Math.pow(r.x,2)+Math.pow(r.y,2))>15)&&(n.dragging=!0,0===a&&Da(e),ka("grab")),n.dragging)&&(c=Na(s,n.last||n.start),t.scroll({dx:c.x,dy:c.y}),n.last=s);i.preventDefault()}function r(e){re.unbind(document,"mousemove",i),re.unbind(document,"mouseup",r),n=null,Ma()}e.on("element.mousedown",500,(function(e){return function(e){if(ee(e.target,".djs-draggable"))return;var t=e.button;if(t>=2||e.ctrlKey||e.shiftKey||e.altKey)return;return n={button:t,start:yo(e)},re.bind(document,"mousemove",i),re.bind(document,"mouseup",r),!0}(e.originalEvent)})),this.isActive=function(){return!!n}}Oa.$inject=["eventBus","canvas"];var ja={__init__:["moveCanvas"],moveCanvas:["type",Oa]};function La(e){return Math.log(e)/Math.log(10)}function Ia(e,t){var n=La(e.min),i=La(e.max);return(Math.abs(n)+Math.abs(i))/t}var za=Math.sign||function(e){return e>=0?1:-1},Fa={min:.2,max:4};function $a(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||.75;var i=this;t.on("canvas.init",(function(t){i._init(!1!==e.enabled)}))}$a.$inject=["config.zoomScroll","eventBus","canvas"],$a.prototype.scroll=function(e){this._canvas.scroll(e)},$a.prototype.reset=function(){this._canvas.zoom("fit-viewport")},$a.prototype.zoom=function(e,t){var n=Ia(Fa,20);this._totalDelta+=e,Math.abs(this._totalDelta)>.1&&(this._zoom(e,t,n),this._totalDelta=0)},$a.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))*za(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)}},$a.prototype.stepZoom=function(e,t){var n=Ia(Fa,10);this._zoom(e,t,n)},$a.prototype._zoom=function(e,t,n){var i=this._canvas,r=e>0?1:-1,o=La(i.zoom()),a=Math.round(o/n)*n;a+=n*r;var s,c,p=Math.pow(10,a);i.zoom((s=Fa,c=p,Math.max(s.min,Math.min(s.max,c))),t)},$a.prototype.toggle=function(e){var t=this._container,n=this._handleWheel,i=this._enabled;return void 0===e&&(e=!i),i!==e&&re[e?"bind":"unbind"](t,"wheel",n,!1),this._enabled=e,e},$a.prototype._init=function(e){this.toggle(e)};var Ha={__init__:["zoomScroll"],zoomScroll:["type",$a]};function Ga(e){da.call(this,e)}n(Ga,da),Ga.prototype._navigationModules=[Pa,ja,Ha],Ga.prototype._modules=[].concat(da.prototype._modules,Ga.prototype._navigationModules);var Wa={exports:{}};
|
|
29
|
+
!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)}(Da);var Ba=Da.exports,Na={"&":"&","<":"<",">":">",'"':""","'":"'"};function Oa(e){return(e=""+e)&&e.replace(/[&<>"']/g,(function(e){return Na[e]}))}var ja="_plane";function La(e){return function(e){return e.replace(new RegExp("_plane$"),"")}(e.id)}function Ia(e){var t=e.id;return Qr(e,"bpmn:SubProcess")?$a(t):t}function za(e){return $a(e)}function Fa(e){return Qr(to(e),"bpmndi:BPMNPlane")}function $a(e){return e+ja}function Ha(e,t,n,i){var r=de('<ul class="bjs-breadcrumbs"></ul>'),o=i.getContainer(),a=ee(o);o.appendChild(r);var s=[];function c(e){e&&(s=function(e){for(var t=eo(e),n=[],i=t;i;i=i.$parent)(Qr(i,"bpmn:SubProcess")||Qr(i,"bpmn:Process"))&&n.push(i);return n.reverse()}(e));var n=s.map((function(e){var n=Oa(e.name||e.id),r=de('<li><span class="bjs-crumb"><a title="'+n+'">'+n+"</a></span></li>"),o=i.findRoot(Ia(e))||i.findRoot(e.id);if(!o&&Qr(e,"bpmn:Process")){var a=t.find((function(t){var n=eo(t);return n&&n.processRef&&n.processRef===e}));o=i.findRoot(a.id)}return r.addEventListener("click",(function(){i.setRootElement(o)})),r}));r.innerHTML="";var o=n.length>1;a.toggle("bjs-breadcrumbs-shown",o),n.forEach((function(e){r.appendChild(e)}))}e.on("element.changed",(function(e){var t=eo(e.element);y(s,(function(e){return e===t}))&&c()})),e.on("root.set",(function(e){c(e.element)}))}function Ga(e,t){var n=null,i=new Va;e.on("root.set",(function(e){var r=e.element,o=t.viewbox(),a=i.get(r);if(i.set(n,{x:o.x,y:o.y,zoom:o.scale}),n=r,!Qr(r,"bpmn:Collaboration")||a){a=a||{x:0,y:0,zoom:1};var s=(o.x-a.x)*o.scale,c=(o.y-a.y)*o.scale;0===s&&0===c||t.scroll({dx:s,dy:c}),a.zoom!==o.scale&&t.zoom(a.zoom,{x:0,y:0})}})),e.on("diagram.clear",(function(){i.clear(),n=null}))}function Va(){this._entries=[],this.set=function(e,t){var n=!1;for(var i in this._entries)if(this._entries[i][0]===e){this._entries[i][1]=t,n=!0;break}n||this._entries.push([e,t])},this.get=function(e){for(var t in this._entries)if(this._entries[t][0]===e)return this._entries[t][1];return null},this.clear=function(){this._entries.length=0},this.remove=function(e){var t=-1;for(var n in this._entries)if(this._entries[n][0]===e){t=n;break}-1!==t&&this._entries.splice(t,1)}}Ha.$inject=["eventBus","elementRegistry","overlays","canvas"],Ga.$inject=["eventBus","canvas"];var Wa=180,Ua=160;function qa(e,t){this._eventBus=e,this._moddle=t;var n=this;e.on("import.render.start",1500,(function(e,t){n.handleImport(t.definitions)}))}function Ka(e){return Qr(e,"bpmndi:BPMNDiagram")?e:Ka(e.$parent)}qa.prototype.handleImport=function(e){if(e.diagrams){var t=this;this._definitions=e,this._processToDiagramMap={},e.diagrams.forEach((function(e){e.plane&&e.plane.bpmnElement&&(t._processToDiagramMap[e.plane.bpmnElement.id]=e)}));var n=[];e.diagrams.forEach((function(e){var i=t.createNewDiagrams(e.plane);Array.prototype.push.apply(n,i)})),n.forEach((function(e){t.movePlaneElementsToOrigin(e.plane)}))}},qa.prototype.createNewDiagrams=function(e){var t=this,n=[],i=[];e.get("planeElement").forEach((function(t){var r=t.bpmnElement;if(r){var o=r.$parent;Qr(r,"bpmn:SubProcess")&&!t.isExpanded&&n.push(r),function(e,t){var n=e.$parent;if(!Qr(n,"bpmn:SubProcess")||n===t.bpmnElement)return!1;if(Jr(e,["bpmn:DataInputAssociation","bpmn:DataOutputAssociation"]))return!1;return!0}(r,e)&&i.push({diElement:t,parent:o})}}));var r=[];return n.forEach((function(e){if(!t._processToDiagramMap[e.id]){var n=t.createDiagram(e);t._processToDiagramMap[e.id]=n,r.push(n)}})),i.forEach((function(e){for(var i=e.diElement,r=e.parent;r&&-1===n.indexOf(r);)r=r.$parent;if(r){var o=t._processToDiagramMap[r.id];t.moveToDiPlane(i,o.plane)}})),r},qa.prototype.movePlaneElementsToOrigin=function(e){var t=e.get("planeElement"),n=function(e){var t={top:1/0,right:-1/0,bottom:-1/0,left:1/0};return e.planeElement.forEach((function(e){if(e.bounds){var n=Hn(e.bounds);t.top=Math.min(n.top,t.top),t.left=Math.min(n.left,t.left)}})),Gn(t)}(e),i=n.x-Wa,r=n.y-Ua;t.forEach((function(e){e.waypoint?e.waypoint.forEach((function(e){e.x=e.x-i,e.y=e.y-r})):e.bounds&&(e.bounds.x=e.bounds.x-i,e.bounds.y=e.bounds.y-r)}))},qa.prototype.moveToDiPlane=function(e,t){var n=Ka(e).plane.get("planeElement");n.splice(n.indexOf(e),1),t.get("planeElement").push(e)},qa.prototype.createDiagram=function(e){var t=this._moddle.create("bpmndi:BPMNPlane",{bpmnElement:e}),n=this._moddle.create("bpmndi:BPMNDiagram",{plane:t});return t.$parent=n,t.bpmnElement=e,n.$parent=this._definitions,this._definitions.diagrams.push(n),n},qa.$inject=["eventBus","moddle"];var Ya=250;function Xa(e,t,n,i){Aa.call(this,t),this._canvas=e,this._eventBus=t,this._elementRegistry=n,this._overlays=i;var r=this;this.executed("shape.toggleCollapse",Ya,(function(e){var t=e.shape;r.canDrillDown(t)?r.addOverlay(t):r.removeOverlay(t)}),!0),this.reverted("shape.toggleCollapse",Ya,(function(e){var t=e.shape;r.canDrillDown(t)?r.addOverlay(t):r.removeOverlay(t)}),!0),this.executed(["shape.create","shape.move","shape.delete"],Ya,(function(e){var t=e.oldParent,n=e.newParent||e.parent,i=e.shape;r.canDrillDown(i)&&r.addOverlay(i),r.updateDrilldownOverlay(t),r.updateDrilldownOverlay(n),r.updateDrilldownOverlay(i)}),!0),this.reverted(["shape.create","shape.move","shape.delete"],Ya,(function(e){var t=e.oldParent,n=e.newParent||e.parent,i=e.shape;r.canDrillDown(i)&&r.addOverlay(i),r.updateDrilldownOverlay(t),r.updateDrilldownOverlay(n),r.updateDrilldownOverlay(i)}),!0),t.on("import.render.complete",(function(){n.filter((function(e){return r.canDrillDown(e)})).map((function(e){r.addOverlay(e)}))}))}n(Xa,Aa),Xa.prototype.updateDrilldownOverlay=function(e){var t=this._canvas;if(e){var n=t.findRoot(e);n&&this.updateOverlayVisibility(n)}},Xa.prototype.canDrillDown=function(e){var t=this._canvas;return Qr(e,"bpmn:SubProcess")&&t.findRoot(Ia(e))},Xa.prototype.updateOverlayVisibility=function(e){var t=this._overlays,n=e.businessObject,i=t.get({element:n.id,type:"drilldown"})[0];if(i){var r=n&&n.flowElements&&n.flowElements.length;ee(i.html).toggle("bjs-drilldown-empty",!r)}},Xa.prototype.addOverlay=function(e){var t=this._canvas,n=this._overlays;n.get({element:e,type:"drilldown"}).length&&this.removeOverlay(e);var i=de('<button class="bjs-drilldown"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 16 16"><path fill-rule="evenodd" d="M4.81801948,3.50735931 L10.4996894,9.1896894 L10.5,4 L12,4 L12,12 L4,12 L4,10.5 L9.6896894,10.4996894 L3.75735931,4.56801948 C3.46446609,4.27512627 3.46446609,3.80025253 3.75735931,3.50735931 C4.05025253,3.21446609 4.52512627,3.21446609 4.81801948,3.50735931 Z"/></svg></button>');i.addEventListener("click",(function(){t.setRootElement(t.findRoot(Ia(e)))})),n.add(e,"drilldown",{position:{bottom:-7,right:-8},html:i}),this.updateOverlayVisibility(e)},Xa.prototype.removeOverlay=function(e){this._overlays.remove({element:e,type:"drilldown"})},Xa.$inject=["canvas","eventBus","elementRegistry","overlays"];var Za={__depends__:[Ra,Pa,ka],__init__:["drilldownBreadcrumbs","drilldownOverlayBehavior","drilldownCentering","subprocessCompatibility"],drilldownBreadcrumbs:["type",Ha],drilldownCentering:["type",Ga],drilldownOverlayBehavior:["type",Xa],subprocessCompatibility:["type",qa]};function Qa(e){ho.call(this,e)}function Ja(e){return!e.altKey&&(e.ctrlKey||e.metaKey)}function es(e,t){return-1!==(e=u(e)?e:[e]).indexOf(t.key)||-1!==e.indexOf(t.keyCode)}function ts(e){return e.shiftKey}n(Qa,ho),Qa.prototype._modules=[Qo,$o,ba,Ra,Za],Qa.prototype._moddleExtensions={};var ns="keyboard.keydown",is="input-handle-modified-keys";function rs(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()}))}rs.$inject=["config.keyboard","eventBus"],rs.prototype._keydownHandler=function(e){this._keyHandler(e,ns)},rs.prototype._keyupHandler=function(e){this._keyHandler(e,"keyboard.keyup")},rs.prototype._keyHandler=function(e,t){if(!this._isEventIgnored(e)){var n={keyEvent:e};this._eventBus.fire(t||ns,n)&&e.preventDefault()}},rs.prototype._isEventIgnored=function(e){return(t=e.target)&&(jt(t,"input, textarea")||"true"===t.contentEditable)&&this._isModifiedKeyIgnored(e);var t},rs.prototype._isModifiedKeyIgnored=function(e){return!Ja(e)||-1===this._getAllowedModifiers(e.target).indexOf(e.key)},rs.prototype._getAllowedModifiers=function(e){var t=Lt(e,"[input-handle-modified-keys]",!0);return!t||this._node&&!this._node.contains(t)?[]:t.getAttribute(is).split(",")},rs.prototype.bind=function(e){this.unbind(),this._node=e,$t.bind(e,"keydown",this._keydownHandler,!0),$t.bind(e,"keyup",this._keyupHandler,!0),this._fire("bind")},rs.prototype.getBinding=function(){return this._node},rs.prototype.unbind=function(){var e=this._node;e&&(this._fire("unbind"),$t.unbind(e,"keydown",this._keydownHandler,!0),$t.unbind(e,"keyup",this._keyupHandler,!0)),this._node=null},rs.prototype._fire=function(e){this._eventBus.fire("keyboard."+e,{node:this._node})},rs.prototype.addListener=function(e,t,n){f(e)&&(n=t,t=e,e=1e3),this._eventBus.on(n||ns,e,t)},rs.prototype.removeListener=function(e,t){this._eventBus.off(t||ns,e)},rs.prototype.hasModifier=function(e){return e.ctrlKey||e.metaKey||e.shiftKey||e.altKey},rs.prototype.isCmd=Ja,rs.prototype.isShift=ts,rs.prototype.isKey=es;var os=["c","C",67],as=["v","V",86],ss=["y","Y",89],cs=["z","Z",90];function ps(e,t){var n=this;e.on("editorActions.init",500,(function(e){var i=e.editorActions;n.registerBindings(t,i)}))}ps.$inject=["eventBus","keyboard"],ps.prototype.registerBindings=function(e,t){function n(n,i){t.isRegistered(n)&&e.addListener(i)}n("undo",(function(e){var n=e.keyEvent;if(Ja(n)&&!ts(n)&&es(cs,n))return t.trigger("undo"),!0})),n("redo",(function(e){var n=e.keyEvent;if(Ja(n)&&(es(ss,n)||es(cs,n)&&ts(n)))return t.trigger("redo"),!0})),n("copy",(function(e){var n=e.keyEvent;if(Ja(n)&&es(os,n))return t.trigger("copy"),!0})),n("paste",(function(e){var n=e.keyEvent;if(Ja(n)&&es(as,n))return t.trigger("paste"),!0})),n("stepZoom",(function(e){var n=e.keyEvent;if(es(["+","Add","="],n)&&Ja(n))return t.trigger("stepZoom",{value:1}),!0})),n("stepZoom",(function(e){var n=e.keyEvent;if(es(["-","Subtract"],n)&&Ja(n))return t.trigger("stepZoom",{value:-1}),!0})),n("zoom",(function(e){var n=e.keyEvent;if(es("0",n)&&Ja(n))return t.trigger("zoom",{value:1}),!0})),n("removeSelection",(function(e){if(es(["Backspace","Delete","Del"],e.keyEvent))return t.trigger("removeSelection"),!0}))};var ls={__init__:["keyboard","keyboardBindings"],keyboard:["type",rs],keyboardBindings:["type",ps]},us={moveSpeed:50,moveSpeedAccelerated:200};function hs(e,t,n){var i=this;this._config=F({},us,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})}}hs.$inject=["config.keyboardMove","keyboard","canvas"];var ds={__depends__:[ls],__init__:["keyboardMove"],keyboardMove:["type",hs]},fs=/^djs-cursor-.*$/;function ms(e){var t=kt(document.body);t.removeMatching(fs),e&&t.add("djs-cursor-"+e)}function vs(){ms(null)}function ys(e,t){function n(){return!1}return t=t||"element.click",e.once(t,5e3,n),function(){e.off(t,n)}}function gs(e){return{x:e.x+e.width/2,y:e.y+e.height/2}}function bs(e,t){return{x:e.x-t.x,y:e.y-t.y}}function xs(e,t){var n;function i(i){var r,o=n.start,a=n.button,s=na(i),c=bs(s,o);(!n.dragging&&(r=c,Math.sqrt(Math.pow(r.x,2)+Math.pow(r.y,2))>15)&&(n.dragging=!0,0===a&&ys(e),ms("grab")),n.dragging)&&(c=bs(s,n.last||n.start),t.scroll({dx:c.x,dy:c.y}),n.last=s);i.preventDefault()}function r(e){$t.unbind(document,"mousemove",i),$t.unbind(document,"mouseup",r),n=null,vs()}e.on("element.mousedown",500,(function(e){return function(e){if(Lt(e.target,".djs-draggable"))return;var t=e.button;if(t>=2||e.ctrlKey||e.shiftKey||e.altKey)return;return n={button:t,start:na(e)},$t.bind(document,"mousemove",i),$t.bind(document,"mouseup",r),!0}(e.originalEvent)})),this.isActive=function(){return!!n}}xs.$inject=["eventBus","canvas"];var _s={__init__:["moveCanvas"],moveCanvas:["type",xs]};function Es(e){return Math.log(e)/Math.log(10)}function ws(e,t){var n=Es(e.min),i=Es(e.max);return(Math.abs(n)+Math.abs(i))/t}var Ss=Math.sign||function(e){return e>=0?1:-1},Cs={min:.2,max:4};function Rs(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||.75;var i=this;t.on("canvas.init",(function(t){i._init(!1!==e.enabled)}))}Rs.$inject=["config.zoomScroll","eventBus","canvas"],Rs.prototype.scroll=function(e){this._canvas.scroll(e)},Rs.prototype.reset=function(){this._canvas.zoom("fit-viewport")},Rs.prototype.zoom=function(e,t){var n=ws(Cs,20);this._totalDelta+=e,Math.abs(this._totalDelta)>.1&&(this._zoom(e,t,n),this._totalDelta=0)},Rs.prototype._handleWheel=function(e){if(!Lt(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))*Ss(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)}},Rs.prototype.stepZoom=function(e,t){var n=ws(Cs,10);this._zoom(e,t,n)},Rs.prototype._zoom=function(e,t,n){var i=this._canvas,r=e>0?1:-1,o=Es(i.zoom()),a=Math.round(o/n)*n;a+=n*r;var s,c,p=Math.pow(10,a);i.zoom((s=Cs,c=p,Math.max(s.min,Math.min(s.max,c))),t)},Rs.prototype.toggle=function(e){var t=this._container,n=this._handleWheel,i=this._enabled;return void 0===e&&(e=!i),i!==e&&$t[e?"bind":"unbind"](t,"wheel",n,!1),this._enabled=e,e},Rs.prototype._init=function(e){this.toggle(e)};var Ts={__init__:["zoomScroll"],zoomScroll:["type",Rs]};function Ps(e){Qa.call(this,e)}n(Ps,Qa),Ps.prototype._navigationModules=[ds,_s,Ts],Ps.prototype._modules=[].concat(Qa.prototype._modules,Ps.prototype._navigationModules);var As={exports:{}};
|
|
31
30
|
/*! Hammer.JS - v2.0.7 - 2016-04-22
|
|
32
31
|
* http://hammerjs.github.io/
|
|
33
32
|
*
|
|
34
33
|
* Copyright (c) 2016 Jorik Tangelder;
|
|
35
|
-
* Licensed under the MIT license */!function(e){!function(t,n,i,r){var o,a=["","webkit","Moz","MS","ms","o"],s=n.createElement("div"),c=Math.round,p=Math.abs,l=Date.now;function u(e,t,n){return setTimeout(g(e,n),t)}function h(e,t,n){return!!Array.isArray(e)&&(d(e,n[t],n),!0)}function d(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 f(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 m=f((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`."),v=f((function(e,t){return m(e,t,!0)}),"merge","Use `assign`.");function y(e,t,n){var i,r=t.prototype;(i=e.prototype=Object.create(r)).constructor=e,i._super=r,n&&o(i,n)}function g(e,t){return function(){return e.apply(t,arguments)}}function b(e,t){return"function"==typeof e?e.apply(t&&t[0]||r,t):e}function x(e,t){return e===r?t:e}function _(e,t,n){d(C(t),(function(t){e.addEventListener(t,n,!1)}))}function E(e,t,n){d(C(t),(function(t){e.removeEventListener(t,n,!1)}))}function w(e,t){for(;e;){if(e==t)return!0;e=e.parentNode}return!1}function S(e,t){return e.indexOf(t)>-1}function C(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 T(e){return Array.prototype.slice.call(e,0)}function P(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 A(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 k=1;function M(e){var n=e.ownerDocument||e;return n.defaultView||n.parentWindow||t}var D="ontouchstart"in t,B=A(t,"PointerEvent")!==r,N=D&&/mobile|tablet|ip(ad|hone|od)|android/i.test(navigator.userAgent),O="touch",j="mouse",L=24,I=["x","y"],z=["clientX","clientY"];function F(e,t){var n=this;this.manager=e,this.callback=t,this.element=e.element,this.target=e.options.inputTarget,this.domHandler=function(t){b(e.options.enable,[e])&&n.handler(t)},this.init()}function $(e,t,n){var i=n.pointers.length,o=n.changedPointers.length,a=1&t&&i-o==0,s=12&t&&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=H(t));o>1&&!n.firstMultiple?n.firstMultiple=H(t):1===o&&(n.firstMultiple=!1);var a=n.firstInput,s=n.firstMultiple,c=s?s.center:a.center,u=t.center=G(i);t.timeStamp=l(),t.deltaTime=t.timeStamp-a.timeStamp,t.angle=q(c,u),t.distance=U(c,u),function(e,t){var n=t.center,i=e.offsetDelta||{},r=e.prevDelta||{},o=e.prevInput||{};1!==t.eventType&&4!==o.eventType||(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=V(t.deltaX,t.deltaY);var h=W(t.deltaTime,t.deltaX,t.deltaY);t.overallVelocityX=h.x,t.overallVelocityY=h.y,t.overallVelocity=p(h.x)>p(h.y)?h.x:h.y,t.scale=s?(d=s.pointers,f=i,U(f[0],f[1],z)/U(d[0],d[1],z)):1,t.rotation=s?function(e,t){return q(t[1],t[0],z)+q(e[1],e[0],z)}(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(8!=t.eventType&&(c>25||s.velocity===r)){var l=t.deltaX-s.deltaX,u=t.deltaY-s.deltaY,h=W(c,l,u);i=h.x,o=h.y,n=p(h.x)>p(h.y)?h.x:h.y,a=V(l,u),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;w(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 H(e){for(var t=[],n=0;n<e.pointers.length;)t[n]={clientX:c(e.pointers[n].clientX),clientY:c(e.pointers[n].clientY)},n++;return{timeStamp:l(),pointers:t,center:G(t),deltaX:e.deltaX,deltaY:e.deltaY}}function G(e){var t=e.length;if(1===t)return{x:c(e[0].clientX),y:c(e[0].clientY)};for(var n=0,i=0,r=0;r<t;)n+=e[r].clientX,i+=e[r].clientY,r++;return{x:c(n/t),y:c(i/t)}}function W(e,t,n){return{x:t/e||0,y:n/e||0}}function V(e,t){return e===t?1:p(e)>=p(t)?e<0?2:4:t<0?8:16}function U(e,t,n){n||(n=I);var i=t[n[0]]-e[n[0]],r=t[n[1]]-e[n[1]];return Math.sqrt(i*i+r*r)}function q(e,t,n){n||(n=I);var i=t[n[0]]-e[n[0]],r=t[n[1]]-e[n[1]];return 180*Math.atan2(r,i)/Math.PI}F.prototype={handler:function(){},init:function(){this.evEl&&_(this.element,this.evEl,this.domHandler),this.evTarget&&_(this.target,this.evTarget,this.domHandler),this.evWin&&_(M(this.element),this.evWin,this.domHandler)},destroy:function(){this.evEl&&E(this.element,this.evEl,this.domHandler),this.evTarget&&E(this.target,this.evTarget,this.domHandler),this.evWin&&E(M(this.element),this.evWin,this.domHandler)}};var K={mousedown:1,mousemove:2,mouseup:4},Y="mousedown",X="mousemove mouseup";function Z(){this.evEl=Y,this.evWin=X,this.pressed=!1,F.apply(this,arguments)}y(Z,F,{handler:function(e){var t=K[e.type];1&t&&0===e.button&&(this.pressed=!0),2&t&&1!==e.which&&(t=4),this.pressed&&(4&t&&(this.pressed=!1),this.callback(this.manager,t,{pointers:[e],changedPointers:[e],pointerType:j,srcEvent:e}))}});var Q={pointerdown:1,pointermove:2,pointerup:4,pointercancel:8,pointerout:8},J={2:O,3:"pen",4:j,5:"kinect"},ee="pointerdown",te="pointermove pointerup pointercancel";function ne(){this.evEl=ee,this.evWin=te,F.apply(this,arguments),this.store=this.manager.session.pointerEvents=[]}t.MSPointerEvent&&!t.PointerEvent&&(ee="MSPointerDown",te="MSPointerMove MSPointerUp MSPointerCancel"),y(ne,F,{handler:function(e){var t=this.store,n=!1,i=e.type.toLowerCase().replace("ms",""),r=Q[i],o=J[e.pointerType]||e.pointerType,a=o==O,s=R(t,e.pointerId,"pointerId");1&r&&(0===e.button||a)?s<0&&(t.push(e),s=t.length-1):12&r&&(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 ie={touchstart:1,touchmove:2,touchend:4,touchcancel:8},re="touchstart",oe="touchstart touchmove touchend touchcancel";function ae(){this.evTarget=re,this.evWin=oe,this.started=!1,F.apply(this,arguments)}function se(e,t){var n=T(e.touches),i=T(e.changedTouches);return 12&t&&(n=P(n.concat(i),"identifier",!0)),[n,i]}y(ae,F,{handler:function(e){var t=ie[e.type];if(1===t&&(this.started=!0),this.started){var n=se.call(this,e,t);12&t&&n[0].length-n[1].length==0&&(this.started=!1),this.callback(this.manager,t,{pointers:n[0],changedPointers:n[1],pointerType:O,srcEvent:e})}}});var ce={touchstart:1,touchmove:2,touchend:4,touchcancel:8},pe="touchstart touchmove touchend touchcancel";function le(){this.evTarget=pe,this.targetIds={},F.apply(this,arguments)}function ue(e,t){var n=T(e.touches),i=this.targetIds;if(3&t&&1===n.length)return i[n[0].identifier]=!0,[n,n];var r,o,a=T(e.changedTouches),s=[],c=this.target;if(o=n.filter((function(e){return w(e.target,c)})),1===t)for(r=0;r<o.length;)i[o[r].identifier]=!0,r++;for(r=0;r<a.length;)i[a[r].identifier]&&s.push(a[r]),12&t&&delete i[a[r].identifier],r++;return s.length?[P(o.concat(s),"identifier",!0),s]:void 0}y(le,F,{handler:function(e){var t=ce[e.type],n=ue.call(this,e,t);n&&this.callback(this.manager,t,{pointers:n[0],changedPointers:n[1],pointerType:O,srcEvent:e})}});function he(){F.apply(this,arguments);var e=g(this.handler,this);this.touch=new le(this.manager,e),this.mouse=new Z(this.manager,e),this.primaryTouch=null,this.lastTouches=[]}function de(e,t){1&e?(this.primaryTouch=t.changedPointers[0].identifier,fe.call(this,t)):12&e&&fe.call(this,t)}function fe(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)}),2500)}}function me(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<=25&&a<=25)return!0}return!1}y(he,F,{handler:function(e,t,n){var i=n.pointerType==O,r=n.pointerType==j;if(!(r&&n.sourceCapabilities&&n.sourceCapabilities.firesTouchEvents)){if(i)de.call(this,t,n);else if(r&&me.call(this,n))return;this.callback(e,t,n)}},destroy:function(){this.touch.destroy(),this.mouse.destroy()}});var ve=A(s.style,"touchAction"),ye=ve!==r,ge="compute",be="auto",xe="manipulation",_e="none",Ee="pan-x",we="pan-y",Se=function(){if(!ye)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 Ce(e,t){this.manager=e,this.set(t)}Ce.prototype={set:function(e){e==ge&&(e=this.compute()),ye&&this.manager.element.style&&Se[e]&&(this.manager.element.style[ve]=e),this.actions=e.toLowerCase().trim()},update:function(){this.set(this.manager.options.touchAction)},compute:function(){var e=[];return d(this.manager.recognizers,(function(t){b(t.options.enable,[t])&&(e=e.concat(t.getTouchAction()))})),function(e){if(S(e,_e))return _e;var t=S(e,Ee),n=S(e,we);if(t&&n)return _e;if(t||n)return t?Ee:we;if(S(e,xe))return xe;return be}(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=S(i,_e)&&!Se.none,o=S(i,we)&&!Se["pan-y"],a=S(i,Ee)&&!Se["pan-x"];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&&6&n||a&&n&L?this.preventSrc(t):void 0}},preventSrc:function(e){this.manager.session.prevented=!0,e.preventDefault()}};var Re=32;function Te(e){this.options=o({},this.defaults,e||{}),this.id=k++,this.manager=null,this.options.enable=x(this.options.enable,!0),this.state=1,this.simultaneous={},this.requireFail=[]}function Pe(e){return 16&e?"cancel":8&e?"end":4&e?"move":2&e?"start":""}function Ae(e){return 16==e?"down":8==e?"up":2==e?"left":4==e?"right":""}function ke(e,t){var n=t.manager;return n?n.get(e):e}function Me(){Te.apply(this,arguments)}function De(){Me.apply(this,arguments),this.pX=null,this.pY=null}function Be(){Me.apply(this,arguments)}function Ne(){Te.apply(this,arguments),this._timer=null,this._input=null}function Oe(){Me.apply(this,arguments)}function je(){Me.apply(this,arguments)}function Le(){Te.apply(this,arguments),this.pTime=!1,this.pCenter=!1,this._timer=null,this._input=null,this.count=0}function Ie(e,t){return(t=t||{}).recognizers=x(t.recognizers,Ie.defaults.preset),new ze(e,t)}Te.prototype={defaults:{},set:function(e){return o(this.options,e),this.manager&&this.manager.touchAction.update(),this},recognizeWith:function(e){if(h(e,"recognizeWith",this))return this;var t=this.simultaneous;return t[(e=ke(e,this)).id]||(t[e.id]=e,e.recognizeWith(this)),this},dropRecognizeWith:function(e){return h(e,"dropRecognizeWith",this)||(e=ke(e,this),delete this.simultaneous[e.id]),this},requireFailure:function(e){if(h(e,"requireFailure",this))return this;var t=this.requireFail;return-1===R(t,e=ke(e,this))&&(t.push(e),e.requireFailure(this)),this},dropRequireFailure:function(e){if(h(e,"dropRequireFailure",this))return this;e=ke(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<8&&i(t.options.event+Pe(n)),i(t.options.event),e.additionalEvent&&i(e.additionalEvent),n>=8&&i(t.options.event+Pe(n))},tryEmit:function(e){if(this.canEmit())return this.emit(e);this.state=Re},canEmit:function(){for(var e=0;e<this.requireFail.length;){if(!(33&this.requireFail[e].state))return!1;e++}return!0},recognize:function(e){var t=o({},e);if(!b(this.options.enable,[this,t]))return this.reset(),void(this.state=Re);56&this.state&&(this.state=1),this.state=this.process(t),30&this.state&&this.tryEmit(t)},process:function(e){},getTouchAction:function(){},reset:function(){}},y(Me,Te,{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=6&t,r=this.attrTest(e);return i&&(8&n||!r)?16|t:i||r?4&n?8|t:2&t?4|t:2:Re}}),y(De,Me,{defaults:{event:"pan",threshold:10,pointers:1,direction:30},getTouchAction:function(){var e=this.options.direction,t=[];return 6&e&&t.push(we),e&L&&t.push(Ee),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||(6&t.direction?(r=0===o?1:o<0?2:4,n=o!=this.pX,i=Math.abs(e.deltaX)):(r=0===a?1:a<0?8:16,n=a!=this.pY,i=Math.abs(e.deltaY))),e.direction=r,n&&i>t.threshold&&r&t.direction},attrTest:function(e){return Me.prototype.attrTest.call(this,e)&&(2&this.state||!(2&this.state)&&this.directionTest(e))},emit:function(e){this.pX=e.deltaX,this.pY=e.deltaY;var t=Ae(e.direction);t&&(e.additionalEvent=this.options.event+t),this._super.emit.call(this,e)}}),y(Be,Me,{defaults:{event:"pinch",threshold:0,pointers:2},getTouchAction:function(){return[_e]},attrTest:function(e){return this._super.attrTest.call(this,e)&&(Math.abs(e.scale-1)>this.options.threshold||2&this.state)},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)}}),y(Ne,Te,{defaults:{event:"press",pointers:1,time:251,threshold:9},getTouchAction:function(){return[be]},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||12&e.eventType&&!r)this.reset();else if(1&e.eventType)this.reset(),this._timer=u((function(){this.state=8,this.tryEmit()}),t.time,this);else if(4&e.eventType)return 8;return Re},reset:function(){clearTimeout(this._timer)},emit:function(e){8===this.state&&(e&&4&e.eventType?this.manager.emit(this.options.event+"up",e):(this._input.timeStamp=l(),this.manager.emit(this.options.event,this._input)))}}),y(Oe,Me,{defaults:{event:"rotate",threshold:0,pointers:2},getTouchAction:function(){return[_e]},attrTest:function(e){return this._super.attrTest.call(this,e)&&(Math.abs(e.rotation)>this.options.threshold||2&this.state)}}),y(je,Me,{defaults:{event:"swipe",threshold:10,velocity:.3,direction:30,pointers:1},getTouchAction:function(){return De.prototype.getTouchAction.call(this)},attrTest:function(e){var t,n=this.options.direction;return 30&n?t=e.overallVelocity:6&n?t=e.overallVelocityX:n&L&&(t=e.overallVelocityY),this._super.attrTest.call(this,e)&&n&e.offsetDirection&&e.distance>this.options.threshold&&e.maxPointers==this.options.pointers&&p(t)>this.options.velocity&&4&e.eventType},emit:function(e){var t=Ae(e.offsetDirection);t&&this.manager.emit(this.options.event+t,e),this.manager.emit(this.options.event,e)}}),y(Le,Te,{defaults:{event:"tap",pointers:1,taps:1,interval:300,time:250,threshold:9,posThreshold:10},getTouchAction:function(){return[xe]},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(),1&e.eventType&&0===this.count)return this.failTimeout();if(i&&r&&n){if(4!=e.eventType)return this.failTimeout();var o=!this.pTime||e.timeStamp-this.pTime<t.interval,a=!this.pCenter||U(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=u((function(){this.state=8,this.tryEmit()}),t.interval,this),2):8}return Re},failTimeout:function(){return this._timer=u((function(){this.state=Re}),this.options.interval,this),Re},reset:function(){clearTimeout(this._timer)},emit:function(){8==this.state&&(this._input.tapCount=this.count,this.manager.emit(this.options.event,this._input))}}),Ie.VERSION="2.0.7",Ie.defaults={domEvents:!1,touchAction:ge,enable:!0,inputTarget:null,inputClass:null,preset:[[Oe,{enable:!1}],[Be,{enable:!1},["rotate"]],[je,{direction:6}],[De,{direction:6},["swipe"]],[Le],[Le,{event:"doubletap",taps:2},["tap"]],[Ne]],cssProps:{userSelect:"none",touchSelect:"none",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}};function ze(e,t){var n;this.options=o({},Ie.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||(B?ne:N?le:D?he:Z))(n,$),this.touchAction=new Ce(this,this.options.touchAction),Fe(this,!0),d(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 Fe(e,t){var n,i=e.element;i.style&&(d(e.options.cssProps,(function(r,o){n=A(i.style,o),t?(e.oldCssProps[n]=i.style[n],i.style[n]=r):i.style[n]=e.oldCssProps[n]||""})),t||(e.oldCssProps={}))}ze.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&&8&r.state)&&(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&&14&n.state&&(r=t.curRecognizer=n),o++}},get:function(e){if(e instanceof Te)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(h(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(h(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 d(C(e),(function(e){n[e]=n[e]||[],n[e].push(t)})),this}},off:function(e,t){if(e!==r){var n=this.handlers;return d(C(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&&Fe(this,!1),this.handlers={},this.session={},this.input.destroy(),this.element=null}},o(Ie,{INPUT_START:1,INPUT_MOVE:2,INPUT_END:4,INPUT_CANCEL:8,STATE_POSSIBLE:1,STATE_BEGAN:2,STATE_CHANGED:4,STATE_ENDED:8,STATE_RECOGNIZED:8,STATE_CANCELLED:16,STATE_FAILED:Re,DIRECTION_NONE:1,DIRECTION_LEFT:2,DIRECTION_RIGHT:4,DIRECTION_UP:8,DIRECTION_DOWN:16,DIRECTION_HORIZONTAL:6,DIRECTION_VERTICAL:L,DIRECTION_ALL:30,Manager:ze,Input:F,TouchAction:Ce,TouchInput:le,MouseInput:Z,PointerEventInput:ne,TouchMouseInput:he,SingleTouchInput:ae,Recognizer:Te,AttrRecognizer:Me,Tap:Le,Pan:De,Swipe:je,Pinch:Be,Rotate:Oe,Press:Ne,on:_,off:E,each:d,merge:v,extend:m,assign:o,inherit:y,bindFn:g,prefixed:A}),(void 0!==t?t:"undefined"!=typeof self?self:{}).Hammer=Ie,e.exports?e.exports=Ie:t.Hammer=Ie}(window,document)}(Wa);var Va=Wa.exports,Ua=["mousedown","mouseup","mouseover","mouseout","click","dblclick"];function qa(e,t){return t.get(e,!1)}function Ka(e){e.preventDefault(),"function"==typeof e.stopPropagation?e.stopPropagation():e.srcEvent&&"function"==typeof e.srcEvent.stopPropagation&&e.srcEvent.stopPropagation(),"function"==typeof e.stopImmediatePropagation&&e.stopImmediatePropagation()}function Ya(e){function t(t){setTimeout((function(){b(Ua,(function(t){re.unbind(e,t,Ka,!0)}))}),500)}re.bind(e,"touchstart",(function(t){b(Ua,(function(t){re.bind(e,t,Ka,!0)}))}),!0),re.bind(e,"touchend",t,!0),re.bind(e,"touchcancel",t,!0);var n=new Va.Manager(e,{inputClass:Va.TouchInput,recognizers:[],domEvents:!0}),i=new Va.Tap,r=new Va.Pan({threshold:10}),o=new Va.Press,a=new Va.Pinch,s=new Va.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 Xa(e,t,n,i,r){var o,a=qa("dragging",e),s=qa("move",e),c=qa("contextPad",e),p=qa("palette",e);function l(e,t){return function(n){var o=u(n.target),a=o&&i.get(o);return t&&(n.srcEvent.button=t),r.fire(e,n,a)}}function u(e){return ee(e,"svg, .djs-element",!0)}function h(e){function n(e){var n=u(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=Ya(e)).on("tap",l("element.click")),o.on("doubletap",l("element.dblclick",1)),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(.2,Math.min(4,r*n));t.zoom(o,i),Ka(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=yo(t),r=u(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=Ya(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=Ya(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 Za(e,t){var n=this;t.on("canvas.init",(function(e){n.addBBoxMarker(e.svg)}))}Xa.$inject=["injector","canvas","eventBus","elementRegistry","interactionEvents","touchFix"],Za.$inject=["canvas","eventBus"],Za.prototype.addBBoxMarker=function(e){var t={fill:"none",class:"outer-bound-marker"},n=Me("rect");ge(n,{x:-1e4,y:1e4,width:10,height:10}),ge(n,t),me(e,n);var i=Me("rect");ge(i,{x:1e4,y:1e4,width:10,height:10}),ge(i,t),me(e,i)};var Qa={__depends__:[{__depends__:[Co],__init__:["touchInteractionEvents"],touchInteractionEvents:["type",Xa],touchFix:["type",Za]}]};function Ja(e){return e&&e[e.length-1]}function es(e){return e.y}function ts(e){return e.x}var ns={left:ts,center:ts,right:function(e){return e.x+e.width},top:es,middle:es,bottom:function(e){return e.y+e.height}};function is(e){this._modeling=e}is.$inject=["modeling"],is.prototype._getOrientationDetails=function(e){var t="x",n="width";return-1!==["top","bottom","middle"].indexOf(e)&&(t="y",n="height"),{axis:t,dimension:n}},is.prototype._isType=function(e,t){return-1!==t.indexOf(e)},is.prototype._alignmentPosition=function(e,t){var n,i,r,o=this._getOrientationDetails(e),a=o.axis,s=o.dimension,c={},p={},l=!1;if(this._isType(e,["left","top"]))c[e]=t[0][a];else if(this._isType(e,["right","bottom"]))r=Ja(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&&(l=!0),e.elements.length})),l)return c[e]=Ja(n).center,c;i=t[0],r=Ja(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},is.prototype.trigger=function(e,t){var n=this._modeling,i=g(e,(function(e){return!(e.waypoints||e.host||e.labelTarget)}));if(!(i.length<2)){var r=M(i,ns[t]),o=this._alignmentPosition(t,r);n.alignElements(r,o)}};var rs={__init__:["alignElements"],alignElements:["type",is]};function os(e,t,n,i){for(var r;r=ss(e,n,t);)n=i(t,n,r);return n}function as(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 ss(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=cs(e);e.host&&(t=t.concat(cs(e.host)));e.attachers&&(t=t.concat(e.attachers.reduce((function(e,t){return e.concat(cs(t))}),[])));return t}(e),(function(e){return e!==n&&"intersect"===pn(e,i,10)}))}function cs(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 ps(){return!0}function ls(e,t,n){e.on("autoPlace",100,(function(e){var t=e.shape;return function(e,t,n){n||(n={});var i=n.defaultDistance||50,r=cn(e);return{x:an(e).right+i+t.width/2,y:r.y}}(e.source,t)})),e.on("autoPlace.end",(function(e){n.scrollToElement(e.shape)})),this.append=function(n,i,r){e.fire("autoPlace.start",{source:n,shape:i});var o=e.fire("autoPlace",{source:n,shape:i}),a=t.appendShape(n,i,o,n.parent,r);return e.fire("autoPlace.end",{source:n,shape:a}),a}}function us(e,t){e.on("autoPlace.end",500,(function(e){t.select(e.shape)}))}ls.$inject=["eventBus","modeling","canvas"],us.$inject=["eventBus","selection"];var hs={__init__:["autoPlaceSelectionBehavior"],autoPlace:["type",ls],autoPlaceSelectionBehavior:["type",us]};function ds(e,t){for("string"==typeof t&&(t=[t]);e=e.parent;)if(yr(e,t))return e;return null}function fs(e,t){return vr(t,"bpmn:TextAnnotation")?function(e,t){var n=an(e),i={x:n.right+t.width/2,y:n.top-50-t.height/2};return os(e,t,i,as({y:{margin:-30,minDistance:20}}))}(e,t):yr(t,["bpmn:DataObjectReference","bpmn:DataStoreReference"])?function(e,t){var n=an(e),i={x:n.right-10+t.width/2,y:n.bottom+40+t.width/2};return os(e,t,i,as({x:{margin:30,minDistance:30}}))}(e,t):vr(t,"bpmn:FlowNode")?function(e,t){var n=an(e),i=cn(e),r=function(e,t){t||(t={});var n=t.defaultDistance||50,i=t.direction||"e",r=t.filter,o=t.getWeight||function(t){return t.source===e?1:-1},a=t.maxDistance||250,s=t.reference||"start";function c(e,t){return"n"===i?"start"===s?an(e).top-an(t).bottom:"center"===s?an(e).top-cn(t).y:an(e).top-an(t).top:"w"===i?"start"===s?an(e).left-an(t).right:"center"===s?an(e).left-cn(t).x:an(e).left-an(t).left:"s"===i?"start"===s?an(t).top-an(e).bottom:"center"===s?cn(t).y-an(e).bottom:an(t).bottom-an(e).bottom:"start"===s?an(t).left-an(e).right:"center"===s?cn(t).x-an(e).right:an(t).right-an(e).right}r||(r=ps);var p=e.incoming.filter(r).map((function(t){var n=o(t),i=n<0?c(t.source,e):c(e,t.source);return{id:t.source.id,distance:i,weight:n}})),l=e.outgoing.filter(r).map((function(t){var n=o(t),i=n>0?c(e,t.target):c(t.target,e);return{id:t.target.id,distance:i,weight:n}}));return _(p.concat(l).reduce((function(e,t){return e[t.id+"__weight_"+t.weight]=t,e}),{}),(function(e,t){var n=t.distance,i=t.weight;return n<0||n>a||(e[String(n)]||(e[String(n)]=0),e[String(n)]+=1*i,(!e.distance||e[e.distance]<e[String(n)])&&(e.distance=n)),e}),{}).distance||n}(e,{filter:function(e){return vr(e,"bpmn:SequenceFlow")}}),o=30,a=80,s="left";vr(e,"bpmn:BoundaryEvent")&&-1!==(s=pn(e,e.host,-25)).indexOf("top")&&(o*=-1);var c={x:n.right+r+t.width/2,y:i.y+ms(s,a)};return os(e,t,c,as({y:{margin:o,minDistance:a}}))}(e,t):void 0}function ms(e,t){return-1!=e.indexOf("top")?-1*t:-1!=e.indexOf("bottom")?t:0}function vs(e){e.on("autoPlace",(function(e){var t=e.shape;return fs(e.source,t)}))}vs.$inject=["eventBus"];var ys={__depends__:[hs],__init__:["bpmnAutoPlace"],bpmnAutoPlace:["type",vs]};function gs(e,t,n,i){Wo.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(T(t.closure.topLevel)),i=t.hints,a=!i||i.autoResize;!1!==a&&b(P(n,(function(e){return e.parent.id})),(function(e,t){u(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 bs(e){e.invoke(gs,this)}function xs(e){Wo.call(this,e),this.init()}function _s(e){xs.call(this,e);var t=this;this.addRule("element.autoResize",(function(e){return t.canResize(e.elements,e.target)}))}function Es(e,t){_s.call(this,e),this._modeling=t}gs.$inject=["eventBus","elementRegistry","modeling","rules"],n(gs,Wo),gs.prototype._getOptimalBounds=function(e,t){var n=this.getOffset(t),i=this.getPadding(t),r=an(pt(e)),o=an(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),sn(F({},o,a))},gs.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=an(e),t=an(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)}}},gs.prototype.getOffset=function(e){return{top:60,bottom:60,left:100,right:100}},gs.prototype.getPadding=function(e){return{top:2,bottom:2,left:15,right:15}},gs.prototype.resize=function(e,t,n){this._modeling.resizeShape(e,t,null,n)},bs.$inject=["injector"],n(bs,gs),bs.prototype.resize=function(e,t,n){vr(e,"bpmn:Participant")?this._modeling.resizeLane(e,t,null,n):this._modeling.resizeShape(e,t,null,n)},xs.$inject=["eventBus"],n(xs,Wo),xs.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)}))},xs.prototype.init=function(){},_s.$inject=["eventBus"],n(_s,xs),_s.prototype.canResize=function(e,t){return!1},n(Es,_s),Es.$inject=["eventBus","modeling"],Es.prototype.canResize=function(e,t){if(vr(t.di,"bpmndi:BPMNPlane"))return!1;if(!vr(t,"bpmn:Participant")&&!vr(t,"bpmn:Lane")&&!vr(t,"bpmn:SubProcess"))return!1;var n=!0;return b(e,(function(e){(vr(e,"bpmn:Lane")||e.labelTarget)&&(n=!1)})),n};var ws={__init__:["bpmnAutoResize","bpmnAutoResizeProvider"],bpmnAutoResize:["type",bs],bpmnAutoResizeProvider:["type",Es]};function Ss(e,t,n){var i,r,o=this,a=n.get("dragging",!1);a&&t.on("drag.start",(function(n){t.once("drag.move",1500,(function(t){!function(t){if(!t.hover){var n=t.originalEvent,i=o._findTargetGfx(n),r=i&&e.get(i);i&&r&&(t.stopPropagation(),a.hover({element:r,gfx:i}),a.move(n))}}(t)}))})),t.on("element.hover",(function(e){i=e.gfx,r=e.element})),t.on("element.hover",1500,(function(e){r&&t.fire("element.out",{element:r,gfx:i})})),t.on("element.out",(function(){i=null,r=null})),this._findTargetGfx=function(e){var t;if(e instanceof MouseEvent)return t=yo(e),function(e){return ee(e,"svg, .djs-element",!0)}(document.elementFromPoint(t.x,t.y))}}Ss.$inject=["elementRegistry","eventBus","injector"];var Cs={__init__:["hoverFix"],hoverFix:["type",Ss]},Rs=Math.round,Ts="djs-drag-active";function Ps(e){e.preventDefault()}function As(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,l=r.globalStart,u=yo(e),h=Na(u,l),d=r.localStart,f=a(u),v=Na(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:Rs(d.x+p.x),y:Rs(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&&ka(r.cursor),t.addMarker(t.getRootElement(),Ts)}vo(e),r.active&&(F(c,{x:Rs(f.x+p.x),y:Rs(f.y+p.y),dx:Rs(v.x),dy:Rs(v.y)},{originalEvent:e}),s("move"))}function p(e){var t=!0;r.active&&(e&&(r.payload.originalEvent=e,vo(e)),t=s("end")),!1===t&&s("rejected"),s("ended",v(!0!==t))}function l(e){27===e.which&&(Ps(e),m())}function u(t){var n;r.active&&(n=Da(e),setTimeout(n,400),Ps(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"),Ma(),v=r.trapClick?u:p,re.unbind(document,"mousemove",c),re.unbind(document,"dragstart",Ps),re.unbind(document,"selectstart",Ps),re.unbind(document,"mousedown",v,!0),re.unbind(document,"mouseup",v,!0),re.unbind(document,"keyup",l),re.unbind(document,"touchstart",h,!0),re.unbind(document,"touchcancel",m,!0),re.unbind(document,"touchmove",c,!0),re.unbind(document,"touchend",p,!0),e.off("element.hover",d),e.off("element.out",f),t.removeMarker(t.getRootElement(),Ts);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?u:p,t?(y=mo(t)||t,g=yo(t),vo(t),"dragstart"===y.type&&Ps(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:Na(n,b),localStart:b,isTouch:_},v),v.manual||(_?(re.bind(document,"touchstart",h,!0),re.bind(document,"touchcancel",m,!0),re.bind(document,"touchmove",c,!0),re.bind(document,"touchend",p,!0)):(re.bind(document,"mousemove",c),re.bind(document,"dragstart",Ps),re.bind(document,"selectstart",Ps),re.bind(document,"mousedown",x,!0),re.bind(document,"mouseup",x,!0)),re.bind(document,"keyup",l),e.on("element.hover",d),e.on("element.out",f)),s("init"),v.autoActivate&&c(t,!0)},this.move=c,this.hover=d,this.out=f,this.end=p,this.cancel=m,this.context=function(){return r},this.setOptions=function(e){F(o,e)}}As.$inject=["eventBus","canvas","selection","elementRegistry"];var ks={__depends__:[Cs,No],dragging:["type",As]};function Ms(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 Ds(e,t,n){return t<e&&e<n}Ms.$inject=["config.autoScroll","eventBus","canvas"],Ms.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++)Ds(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))},Ms.prototype.stopScroll=function(){clearTimeout(this._scrolling)},Ms.prototype.setOptions=function(e){this._opts=F({},this._opts,e)},Ms.prototype._toBorderPoint=function(e){var t=this._canvas._container.getBoundingClientRect(),n=yo(e.originalEvent);return{x:n.x-t.left,y:n.y-t.top}};var Bs={__depends__:[ks],__init__:["autoScroll"],autoScroll:["type",Ms]};function Ns(e){this._commandStack=e.get("commandStack",!1)}Ns.$inject=["injector"],Ns.prototype.allowed=function(e,t){var n=!0,i=this._commandStack;return i&&(n=i.canExecute(e,t)),void 0===n||n};var Os={__init__:["rules"],rules:["type",Ns]},js=Math.round,Ls=Math.max;function Is(e,t){return function(e,t){var n,i;for(n=0;i=e[n];n++)if(gt(i,t)<=10)return{point:e[n],bendpoint:!0,index:n};return null}(e,t)||function(e,t){var n,i,r=nn(function(e,t){return[["M",e.x,e.y],["m",0,-t],["a",t,t,0,1,1,0,2*t],["a",t,t,0,1,1,0,-2*t],["z"]]}(t,10),(n=[],e.forEach((function(e,t){n.push([0===t?"M":"L",e.x,e.y])})),n)),o=r[0],a=r[r.length-1];return o?o!==a?o.segment2!==a.segment2?{point:e[i=Ls(o.segment2,a.segment2)-1],bendpoint:!0,index:i}:{point:{x:js(o.x+a.x)/2,y:js(o.y+a.y)/2},index:o.segment2}:{point:{x:js(o.x),y:js(o.y)},index:o.segment2}:null}(e,t)}var zs="djs-bendpoint",Fs="djs-segment-dragger";function $s(e,t,n){return Is(t,function(e,t){var n,i=yo(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 Hs(e,t){var n=Me("g");we(n).add(zs),me(e,n);var i=Me("circle");ge(i,{cx:0,cy:0,r:4}),we(i).add("djs-visual"),me(n,i);var r=Me("circle");return ge(r,{cx:0,cy:0,r:10}),we(r).add("djs-hit"),me(n,r),t&&we(n).add(t),n}function Gs(e,t,n,i){var r=Me("g");me(e,r);var o=function(e,t,n){var i=t.x-e.x,r=t.y-e.y;return Vs("h"===n?i:r)}(t,n,i),a=Me("rect");ge(a,{x:-7,y:-1.5,width:14,height:3}),we(a).add("djs-visual"),me(r,a);var s=Me("rect");return ge(s,{x:-o/2,y:-7,width:o,height:14}),we(s).add("djs-hit"),me(r,s),Wn(r,"v"===i?90:0),r}function Ws(e,t,n){var i=Me("g"),r=Et(t,n),o=xt(t,n);return me(e,i),Gs(i,t,n,o),we(i).add(Fs),we(i).add("h"===o?"horizontal":"vertical"),Gn(i,r.x,r.y),i}function Vs(e){return Math.abs(Math.round(2*e/3))}function Us(e,t,n,i,r){function o(e,n){var o=n.waypoints,a=$s(t,o,e);if(a)return!function(e,t,n){var i,r,o,a,s,c,p=e.index,l=e.point;return!(p<=0||e.bendpoint)&&(o=Et(i=t[p-1],r=t[p]),a=xt(i,r),s=Math.abs(l.x-o.x),c=Math.abs(l.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=xt((n={start:r[t.index-1],end:r[t.index]}).start,n.end))?Vs("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){re.bind(e,t,(function(e){n.triggerMouseEvent(t,e,i),e.stopPropagation()}))}function s(e,n){var i=t.getLayer("overlays"),r=ue('.djs-bendpoints[data-element-id="'+Ko(e.id)+'"]',i);return!r&&n&&(ge(r=Me("g"),{"data-element-id":e.id}),we(r).add("djs-bendpoints"),me(i,r),a(r,"mousedown",e),a(r,"click",e),a(r,"dblclick",e)),r}function c(e,t){return ue('.djs-segment-dragger[data-segment-idx="'+e+'"]',t)}function p(e,t){t.waypoints.forEach((function(t,n){var i=Hs(e);me(e,i),Gn(i,t.x,t.y)})),Hs(e,"floating")}function l(e,t){for(var n,i,r,o=t.waypoints,s=1;s<o.length;s++)xt(n=o[s-1],i=o[s])&&(ge(r=Ws(e,n,i),{"data-segment-idx":s}),a(r,"mousemove",t))}function u(e){var t=s(e);return t||(p(t=s(e,!0),e),l(t,e)),t}function h(e){var t=s(e);t&&(!function(e){b(he(".djs-segment-dragger",e),(function(e){Ce(e)}))}(t),function(e){b(he(".djs-bendpoint",e),(function(e){Ce(e)}))}(t),l(t,e),p(t,e))}function d(e,t,n){var i,r,o=c(t.index,e),a=n[t.index-1],s=n[t.index],p=t.point,l=Et(a,s),u=xt(a,s);o&&(i=function(e){return ue(".djs-visual",e)}(o),r={x:p.x-l.x,y:p.y-l.y},"v"===u&&(r={x:r.y,y:r.x}),Gn(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&&Ce(t)})),e.on("element.marker.update",(function(e){var t,n=e.element;n.waypoints&&(t=u(n),e.add?we(t).add(e.marker):we(t).remove(e.marker))})),e.on("element.mousemove",(function(e){var n,i,r=e.element,o=r.waypoints;if(o){if(n=s(r,!0),!(i=$s(t,o,e.originalEvent)))return;!function(e,t){var n=ue(".floating",e),i=t.point;n&&Gn(n,i.x,i.y)}(n,i),i.bendpoint||d(n,i,o)}})),e.on("element.mousedown",(function(e){if(bo(e)){var t=e.originalEvent,n=e.element;if(n.waypoints)return o(t,n)}})),e.on("selection.changed",(function(e){var t=e.newSelection[0];t&&t.waypoints&&u(t)})),e.on("element.hover",(function(e){var t=e.element;t.waypoints&&(u(t),n.registerEvent(e.gfx,"mousemove","element.mousemove"))})),e.on("element.out",(function(e){n.unregisterEvent(e.gfx,"mousemove","element.mousemove")})),e.on("element.updateId",(function(e){var t=e.element,n=e.newId;if(t.waypoints){var i=s(t);i&&ge(i,{"data-element-id":n})}})),this.addHandles=u,this.updateHandles=h,this.getBendpointsContainer=s,this.getSegmentDragger=c}Us.$inject=["eventBus","canvas","interactionEvents","bendpointMove","connectionSegmentMove"];var qs=Math.round,Ks="reconnectStart",Ys="reconnectEnd",Xs="updateWaypoints";function Zs(e,t,n,i,r,o){this._injector=e,this.start=function(e,t,o,a){var s,c=n.getGraphics(t),p=t.source,l=t.target,u=t.waypoints,h=(s=a||0!==o?a||o!==u.length-1?Xs:Ys:Ks)===Xs?"connection.updateWaypoints":"connection.reconnect",d=r.allowed(h,{connection:t,source:p,target:l});!1===d&&(d=r.allowed(h,{connection:t,source:l,target:p})),!1!==d&&i.init(e,"bendpoint.move",{data:{connection:t,connectionGfx:c,context:{allowed:d,bendpointIndex:o,connection:t,source:p,target:l,insert:a,type:s}}})},t.on("bendpoint.move.hover",(function(e){var t,n=e.context,i=n.connection,o=i.source,a=i.target,s=e.hover,c=n.type;if(n.hover=s,s){var p=c===Xs?"connection.updateWaypoints":"connection.reconnect";if(t=n.allowed=r.allowed(p,{connection:i,source:c===Ks?s:o,target:c===Ys?s:a}))return n.source=c===Ks?s:o,void(n.target=c===Ys?s:a);!1===t&&(t=n.allowed=r.allowed(p,{connection:i,source:c===Ys?s:a,target:c===Ks?s:o})),t&&(n.source=c===Ys?s:a,n.target=c===Ks?s:o)}})),t.on(["bendpoint.move.out","bendpoint.move.cleanup"],(function(e){var t=e.context,n=t.type;t.hover=null,t.source=null,t.target=null,n!==Xs&&(t.allowed=!1)})),t.on("bendpoint.move.end",(function(e){var t=e.context,n=t.allowed,i=t.bendpointIndex,r=t.connection,a=t.insert,s=r.waypoints.slice(),c=t.source,p=t.target,l=t.type,u=t.hints||{},h={x:qs(e.x),y:qs(e.y)};if(!n)return!1;l===Xs?(a?s.splice(i,0,h):s[i]=h,u.bendpointMove={insert:a,bendpointIndex:i},s=this.cropWaypoints(r,s),o.updateWaypoints(r,function(e){e=e.slice();for(var t,n,i,r=0;e[r];)t=e[r],n=e[r-1],0===gt(t,i=e[r+1])||bt(n,i,t)?e.splice(r,1):r++;return e}(s),u)):(l===Ks?(u.docking="source",Qs(t)&&(u.docking="target",u.newWaypoints=s.reverse())):l===Ys&&(u.docking="target",Qs(t)&&(u.docking="source",u.newWaypoints=s.reverse())),o.reconnect(r,c,p,h,u))}),this)}function Qs(e){var t=e.hover,n=e.source,i=e.target,r=e.type;return r===Ks?t&&i&&t===i&&n!==i:r===Ys?t&&n&&t===n&&n!==i:void 0}Zs.$inject=["injector","eventBus","canvas","dragging","rules","modeling"],Zs.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 Js="updateWaypoints",ec="connect-ok",tc="connect-not-ok",nc="connect-hover",ic="djs-updating",rc="djs-element-hidden";function oc(e,t,n,i){this._injector=t;var r=t.get("connectionPreview",!1);n.on("bendpoint.move.start",(function(e){var t=e.context,n=t.bendpointIndex,r=t.connection,o=t.insert,a=r.waypoints,s=a.slice();t.waypoints=a,o&&s.splice(n,0,{x:e.x,y:e.y}),r.waypoints=s,we(t.draggerGfx=Hs(i.getLayer("overlays"))).add("djs-dragging"),i.addMarker(r,rc),i.addMarker(r,ic)})),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,nc),o===Js)return;n?(i.removeMarker(r,tc),i.addMarker(r,ec)):!1===n&&(i.removeMarker(r,ec),i.addMarker(r,tc))}})),n.on(["bendpoint.move.out","bendpoint.move.cleanup"],1100,(function(e){var t=e.context,n=t.hover,r=t.target;n&&(i.removeMarker(n,nc),i.removeMarker(n,r?ec:tc))})),n.on("bendpoint.move.move",(function(t){var n=t.context,i=n.allowed,o=n.bendpointIndex,a=n.draggerGfx,s=n.hover,c=n.type,p=n.connection,l=p.source,u=p.target,h=p.waypoints.slice(),d={x:t.x,y:t.y},f=n.hints||{},m={};r&&(f.connectionStart&&(m.connectionStart=f.connectionStart),f.connectionEnd&&(m.connectionEnd=f.connectionEnd),"reconnectStart"===c?Qs(n)?(m.connectionEnd=m.connectionEnd||d,m.source=u,m.target=s||l,h=h.reverse()):(m.connectionStart=m.connectionStart||d,m.source=s||l,m.target=u):"reconnectEnd"===c?Qs(n)?(m.connectionStart=m.connectionStart||d,m.source=s||u,m.target=l,h=h.reverse()):(m.connectionEnd=m.connectionEnd||d,m.source=l,m.target=s||u):(m.noCropping=!0,m.noLayout=!0,h[o]=d),c===Js&&(h=e.cropWaypoints(p,h)),m.waypoints=h,r.drawPreview(n,i,m)),Gn(a,t.x,t.y)}),this),n.on(["bendpoint.move.end","bendpoint.move.cancel"],1100,(function(e){var t=e.context,n=t.connection,o=t.draggerGfx,a=t.hover,s=t.target,c=t.waypoints;n.waypoints=c,Ce(o),i.removeMarker(n,ic),i.removeMarker(n,rc),a&&(i.removeMarker(a,ec),i.removeMarker(a,s?ec:tc)),r&&r.cleanUp(t)}))}oc.$inject=["bendpointMove","injector","eventBus","canvas"];var ac="connect-hover",sc="djs-updating";function cc(e,t,n){return pc(e,t,e[t]+n)}function pc(e,t,n){return{x:"x"===t?n:e.x,y:"y"===t?n:e.y}}function lc(e){return"x"===e?"y":"x"}function uc(e,t,n){var i,r;return e.original?e.original:(i=cn(t),pc(e,r=lc(n),i[r]))}function hc(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 pc(t,i,Math.min(Math.max(o+20,e[i]),r-20))}(n,i[e.segmentStartIndex+t],i[e.segmentEndIndex+t],lc(e.axis));Gn(e.draggerGfx,r.x,r.y)}this.start=function(e,t,r){var o,a,s,c,p=n.getGraphics(t),l=r-1,u=r,h=t.waypoints,d=h[l],f=h[u],m=$s(n,h,e);(a=xt(d,f))&&(s="v"===a?"x":"y",0===l&&(d=uc(d,t.source,s)),u===h.length-1&&(f=uc(f,t.target,s)),o={connection:t,segmentStartIndex:l,segmentEndIndex:u,segmentStart:d,segmentEnd:f,axis:s,dragPosition:c=m?m.point:{x:(d.x+f.x)/2,y:(d.y+f.y)/2}},i.init(e,c,"connectionSegment.move",{cursor:"x"===s?"resize-ew":"resize-ns",data:{connection:t,connectionGfx:p,context:o}}))},t.on("connectionSegment.move.start",(function(e){var t=e.context,i=e.connection,r=n.getLayer("overlays");t.originalWaypoints=i.waypoints.slice(),t.draggerGfx=Ws(r,t.segmentStart,t.segmentEnd),we(t.draggerGfx).add("djs-dragging"),n.addMarker(i,sc)})),t.on("connectionSegment.move.move",(function(e){var t,n,i=e.context,r=i.connection,o=i.segmentStartIndex,a=i.segmentEndIndex,l=i.segmentStart,u=i.segmentEnd,h=i.axis,d=i.originalWaypoints.slice(),f=cc(l,h,e["d"+h]),m=cc(u,h,e["d"+h]),v=d.length,y=0;d[o]=f,d[a]=m,o<2&&(t=pn(r.source,f),1===o?"intersect"===t&&(d.shift(),d[0]=f,y--):"intersect"!==t&&(d.unshift(l),y++)),a>v-3&&(n=pn(r.target,m),a===v-2?"intersect"===n&&(d.pop(),d[d.length-1]=m):"intersect"!==n&&d.push(u)),i.newWaypoints=r.waypoints=s(r,d),p(i,y,e),i.newSegmentStartIndex=o+y,c(e)})),t.on("connectionSegment.move.hover",(function(e){e.context.hover=e.hover,n.addMarker(e.hover,ac)})),t.on(["connectionSegment.move.out","connectionSegment.move.cleanup"],(function(e){var t=e.context.hover;t&&n.removeMarker(t,ac)})),t.on("connectionSegment.move.cleanup",(function(e){var t=e.context,i=t.connection;t.draggerGfx&&Ce(t.draggerGfx),n.removeMarker(i,sc)})),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!bt(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,l={segmentMove:{segmentStartIndex:t.segmentStartIndex,newSegmentStartIndex:r+p}};o.updateWaypoints(n,c,l)}))}hc.$inject=["injector","eventBus","canvas","dragging","graphicsFactory","modeling"];var dc=Math.abs,fc=Math.round;function mc(e){return{x:e.x,y:e.y}}function vc(e){return{x:e.x+e.width,y:e.y+e.height}}function yc(e,t){return!e||isNaN(e.x)||isNaN(e.y)?t:{x:fc(e.x+e.width/2),y:fc(e.y+e.height/2)}}function gc(e,t){var n=e.snapped;return!!n&&("string"==typeof t?n[t]:n.x&&n.y)}function bc(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 xc(e){return e.children||[]}var _c=Math.abs,Ec=Math.round;function wc(e){function t(e,t){if(u(e)){for(var n=e.length;n--;)if(_c(e[n]-t)<=10)return e[n]}else{var i=t%(e=+e);if(i<10)return t-i;if(i>e-10)return t-i+e}return t}function n(e){if(e.width)return{x:Ec(e.width/2+e.x),y:Ec(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 l=[r[a-1],o,s,r[c+1]];return a<2&&l.unshift(n(i.source)),c>r.length-3&&l.unshift(n(i.target)),e.snapPoints=t={horizontal:[],vertical:[]},b(l,(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))&&bc(e,"x",i),(p||-1!==o.horizontal.indexOf(s))&&bc(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,l=e.y;if(a){var u=p-(i=t(c?a.vertical.concat([c.x]):a.vertical,p)),h=l-(r=t(c?a.horizontal.concat([c.y]):a.horizontal,l));F(e,{dx:e.dx-u,dy:e.dy-h,x:e.x-u,y:e.y-h}),(u||-1!==a.vertical.indexOf(p))&&bc(e,"x",i),(h||-1!==a.horizontal.indexOf(l))&&bc(e,"y",r)}}))}wc.$inject=["eventBus"];var Sc={__depends__:[ks,Os],__init__:["bendpoints","bendpointSnapping","bendpointMovePreview"],bendpoints:["type",Us],bendpointMove:["type",Zs],bendpointMovePreview:["type",oc],connectionSegmentMove:["type",hc],bendpointSnapping:["type",wc]};function Cc(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,!l(t=n.canExecute=r(i,o))){if(!1!==t)return n.source=i,void(n.target=o);l(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:Rc(t)?o:r,connectionEnd:Rc(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=cn(n)),t.init(e,"connect",{autoActivate:r,data:{shape:n,context:{start:n,connectionStart:i}}})}}function Rc(e){var t=e.hover,n=e.source,i=e.target;return t&&n&&t===n&&n!==i}Cc.$inject=["eventBus","dragging","modeling","rules"];var Tc="connect-ok",Pc="connect-not-ok";function Ac(e,t,n){var i=e.get("connectionPreview",!1);i&&t.on("connect.move",(function(e){var t=e.context,n=t.canExecute,r=t.hover,o=t.source,a=t.start,s=t.startPosition,c=t.target,p=t.connectionStart||s,l=t.connectionEnd||{x:e.x,y:e.y},u=p,h=l;Rc(t)&&(u=l,h=p),i.drawPreview(t,n,{source:o||a,target:c||r,connectionStart:u,connectionEnd:h})})),t.on("connect.hover",900,(function(e){var t=e.context,i=e.hover,r=t.canExecute;null!==r&&n.addMarker(i,r?Tc:Pc)})),t.on(["connect.out","connect.cleanup"],1100,(function(e){var t=e.hover;t&&(n.removeMarker(t,Tc),n.removeMarker(t,Pc))})),i&&t.on("connect.cleanup",(function(e){i.cleanUp(e.context)}))}Ac.$inject=["injector","eventBus","canvas"];var kc={__depends__:[No,Os,ks],__init__:["connectPreview"],connect:["type",Cc],connectPreview:["type",Ac]};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,l=n.waypoints,u=n.connectionStart,h=n.connectionEnd,d=n.noLayout,f=n.noCropping,m=n.noNoop,v=this;a||(a=e.connectionPreviewGfx=this.createConnectionPreviewGfx()),Re(a),s||(s=e.getConnection=(r=function(e,t,n){return v.getConnection(e,t,n)},o={},function(e){var t=JSON.stringify(e),n=o[t];return n||(n=o[t]=r.apply(null,arguments)),n})),t&&(i=s(t,c,p)),i?(i.waypoints=l||[],this._layouter&&!d&&(i.waypoints=this._layouter.layoutConnection(i,{source:c,target:p,connectionStart:u,connectionEnd:h,waypoints:n.waypoints||i.waypoints})),i.waypoints&&i.waypoints.length||(i.waypoints=[c?cn(c):u,p?cn(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||cn(n),o=t.connectionEnd||cn(i),a=this.cropWaypoints(r,o,n,i);me(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&&ln(o,s,!0)||e,t=i&&ln(a,s,!1)||t]},Mc.prototype.cleanUp=function(e){e&&e.connectionPreviewGfx&&Ce(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=Me("g");return ge(e,{pointerEvents:"none"}),we(e).add("djs-connection-preview"),me(this._canvas.getActiveLayer(),e),e},Mc.prototype.createNoopConnection=function(e,t){var n=Me("polyline");return ge(n,{stroke:"#333",strokeDasharray:[1],strokeWidth:2,"pointer-events":"none"}),ge(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=ce('<div class="djs-direct-editing-parent"><div class="djs-direct-editing-content" contenteditable="true"></div></div>'),this.content=ue("[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,re.bind(o,"keydown",this.keyHandler),re.bind(o,"mousedown",jc),re.bind(o,"paste",this.handlePaste),i.autoResize&&re.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){e=e.replace(/\r\n|\r|\n/g,"\n"),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,l=(t=p.childNodes,[].slice.call(t));if(function(e){return e.nodeType===Node.TEXT_NODE}(p)){var u=o.textContent;o.textContent=u.substring(0,s)+e+u.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,l[s]),n=h,i=h.textContent.length}else{var d=l.indexOf(o),f=l.indexOf(a);l.forEach((function(t,n){n===d?t.textContent=o.textContent.substring(0,s)+e+a.textContent.substring(c):n>d&&n<=f&&de(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,l;n=this.resizeHandle=ce('<div class="djs-direct-editing-resize-handle"></div>');var u=function(n){Oc(n),jc(n);var u=Bc(Nc(p+n.clientX-s,i),o),h=Bc(Nc(l+n.clientY-c,r),a);t.style.width=u+"px",t.style.height=h+"px",e.resizeHandler({width:p,height:l,dx:n.clientX-s,dy:n.clientY-c})},h=function(e){Oc(e),jc(e),re.unbind(document,"mousemove",u,!1),re.unbind(document,"mouseup",h,!1)};re.bind(n,"mousedown",(function(e){Oc(e),jc(e),s=e.clientX,c=e.clientY;var n=t.getBoundingClientRect();p=n.width,l=n.height,re.bind(document,"mousemove",u),re.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"),re.unbind(t,"keydown",this.keyHandler),re.unbind(t,"mousedown",jc),re.unbind(t,"input",this.autoResize),re.unbind(t,"paste",this.handlePaste),n&&(n.removeAttribute("style"),de(n)),de(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__:[Co],__init__:["directEditing"],directEditing:["type",Ic]},Fc=".entry";function $c(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()}$c.$inject=["config.contextPad","eventBus","overlays"],$c.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)}))},$c.prototype.registerProvider=function(e,t){t||(t=e,e=1e3),this._eventBus.on("contextPad.getProviders",e,(function(e){e.providers.push(t)}))},$c.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},$c.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()},$c.prototype.open=function(e,t){!t&&this.isOpen(e)||(this.close(),this._updateAndOpen(e))},$c.prototype._getProviders=function(){var e=this._eventBus.createEvent({type:"contextPad.getProviders",providers:[]});return this._eventBus.fire(e),e.providers},$c.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=ce(e.html||'<div class="entry" draggable="true"></div>');G(o,"data-action",t),(n=ue("[data-group="+r+"]",i))||(n=ce('<div class="group" data-group="'+r+'"></div>'),i.appendChild(n)),n.appendChild(o),e.className&&function(e,t){var n=K(e);(u(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(ce('<img src="'+e.imageUrl+'">'))})),K(i).add("open"),this._current={element:e,pad:n,entries:t},this._eventBus.fire("contextPad.open",{current:this._current})},$c.prototype.getPad=function(e){if(this.isOpen())return this._current.pad;var t=this,n=this._overlays,i=ce('<div class="djs-context-pad"></div>'),r=F({html:i},this._overlaysConfig);se.bind(i,Fc,"click",(function(e){t.trigger("click",e)})),se.bind(i,Fc,"dragstart",(function(e){t.trigger("dragstart",e)})),re.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},$c.prototype.close=function(){this.isOpen()&&(this._overlays.remove(this._overlayId),this._overlayId=null,this._eventBus.fire("contextPad.close",{current:this._current}),this._current=null)},$c.prototype.isOpen=function(e){return!(!this._current||e&&this._current.element!==e)};var Hc={__depends__:[Co,$o],contextPad:["type",$c]},Gc=["marker-start","marker-mid","marker-end"],Wc=["circle","ellipse","line","path","polygon","polyline","rect"];function Vc(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){Ce(e)})),r._clonedMarkers={}}))}Vc.$inject=["elementRegistry","eventBus","canvas","styles"],Vc.prototype.getGfx=function(e){return this._elementRegistry.getGraphics(e)},Vc.prototype.addDragger=function(e,t,n){var i=Te(n=n||this.getGfx(e)),r=n.getBoundingClientRect();return this._cloneMarkers($n(i)),ge(i,this._styles.cls("djs-dragger",[],{x:r.top,y:r.left})),me(t,i),i},Vc.prototype.addFrame=function(e,t){var n=Me("rect",{class:"djs-resize-overlay",width:e.width,height:e.height,x:e.x,y:e.y});return me(t,n),n},Vc.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!==Wc.indexOf(e.nodeName)})(e)&&Gc.forEach((function(n){if(ge(e,n)){var i=function(e,t,n){return ue("marker#"+(i=ge(e,t),i.match(/url\(['"]?#([^'"]*)['"]?\)/)[1]),n||document);var i}(e,n,t._canvas.getContainer());t._cloneMarker(e,i,n)}}))},Vc.prototype._cloneMarker=function(e,t,n){var i=t.id,r=this._clonedMarkers[i];if(!r){var o=i+"-clone";(r=Te(t)).id=o,we(r).add("djs-dragger").add("djs-dragger-marker"),this._clonedMarkers[i]=r;var a=ue("defs",this._canvas._svg);a||(a=Me("defs"),me(this._canvas._svg,a)),me(a,r)}ge(e,n,"url(#"+this._clonedMarkers[i].id+")")};var Uc={__init__:["previewSupport"],previewSupport:["type",Vc]},qc="drop-ok",Kc="drop-not-ok",Yc="attach-ok",Xc="new-parent",Zc="create";function Qc(e,t,n,i,r){function o(t,n){[Yc,qc,Kc,Xc].forEach((function(i){i===n?e.addMarker(t,i):e.removeMarker(t,i)}))}function a(){var e=t.context();e&&e.prefix===Zc&&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 l=o.connectionTarget;return p||s?(a&&i&&(c=r.allowed("connection.create",{source:l===i?a:i,target:l===i?i:a,hints:{targetParent:t,targetAttach:s}})),{attach:s,connect:c}):(null===p||null===s)&&null}(n,i,c,a,s);i&&null!==p&&(t.target=i,p&&p.attach?o(i,Yc):o(i,p?Xc:Kc))})),n.on(["create.end","create.out","create.cleanup"],(function(e){var t=e.hover;t&&o(t,null)})),n.on("create.end",(function(e){var t=e.context,n=t.source,r=t.shape,o=t.elements,a=t.target,s=t.canExecute,c=s&&s.attach,p=s&&s.connect,l=t.hints||{};if(!1===s||!a)return!1;Jc(e);var u={x:e.x,y:e.y};r=p?i.appendShape(n,r,u,a,{attach:c,connection:!0===p?{}:p,connectionTarget:l.connectionTarget}):y(o=i.createElements(o,u,a,F({},l,{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"],2e3,(function(){n.off("elements.changed",a)}))})),this.start=function(e,n,i){u(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=pt(g(n,(function(e){return!e.hidden})));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,Zc,{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"];function np(e,t,n,i,r){t.on("create.move",750,(function(t){var o=t.hover,a=t.context,s=a.elements,c=a.dragGroup;c||(c=a.dragGroup=function(e){var t=Me("g");ge(t,r.cls("djs-drag-group",["no-events"]));var o=Me("g");return e.forEach((function(e){var r;e.hidden||(e.waypoints?(r=n._createContainer("connection",o),n.drawConnection($n(r),e)):(r=n._createContainer("shape",o),n.drawShape($n(r),e),Gn(r,e.x,e.y)),i.addDragger(e,t,r))})),t}(s)),o?(c.parentNode||me(e.getActiveLayer(),c),Gn(c,t.x,t.y)):Ce(c)})),t.on("create.cleanup",(function(e){var t=e.context.dragGroup;t&&Ce(t)}))}np.$inject=["canvas","eventBus","graphicsFactory","previewSupport","styles"];var ip={__depends__:[ks,Uc,Os,No],__init__:["create","createPreview"],create:["type",Qc],createPreview:["type",np]},rp="data-id",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=R(i)>0,a=r&&R(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(),R(a)&&r.container.appendChild(this._createEntries(a,"djs-popup-header")),R(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(),de(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,rp),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=ce('<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;se.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={},l=t.x-r.left,u=t.y-r.top;o+s>r.width&&(p.x=!0),a+c>r.height&&(p.y=!0),p.x&&p.y?(n=l-s+"px",i=u-c+"px"):p.x?(n=l-s+"px",i=u+"px"):p.y&&u<c?(n=l+"px",i="10px"):p.y&&(n=l+"px",i=u-c+"px"),F(e.style,{left:n,top:i},{visibility:"visible","z-index":1e3})},ap.prototype._createEntries=function(e,t){var n=ce("<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=ce("<div>"),i=K(n);if(i.add("entry"),e.className&&e.className.split(" ").forEach((function(e){i.add(e)})),G(n,rp,t),e.label){var r=ce("<span>");r.textContent=e.label,n.appendChild(r)}return e.imageUrl&&n.appendChild(ce('<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 lp(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)}))}lp.$inject=["eventBus"],lp.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 up={__init__:["mouse"],mouse:["type",lp]};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 u(e)||(e=e?[e]:[]),n=!1===(t=this._eventBus.fire("copyPaste.canCopyElements",{elements:e}))?{}:this.createTree(u(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=pt(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 st(rt(e),(function(e,t,i){if(!fp(e)){b(e.labels,(function(e){o(e,i)})),b([e.attachers,e.incoming,e.outgoing],(function(e){e&&e.length&&b(e,(function(e){b(e.labels,(function(e){o(e,i)})),o(e,i)}))})),o(e,i);var r=[];return e.children&&(r=e.children.slice()),n._eventBus.fire("copyPaste.createTree",{element:e,children:r}),r}})),e=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,ip,up,Os],__init__:["copyPaste"],copyPaste:["type",hp]};function gp(e,t,n){u(n)||(n=[n]),b(n,(function(n){c(e[n])||(t[n]=e[n])}))}function bp(e,t,n){var i;t.on("copyPaste.copyElement",750,(function(e){var t=e.descriptor,n=e.element,i=t.oldBusinessObject=gr(n),r=t.oldDi=br(n);if(t.type=n.type,gp(i,t,"name"),gp(r,t,"isExpanded"),xp(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&&vr(r,"bpmn:Participant")&&vr(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,c=t.cache,p=t.descriptor,l=p.oldBusinessObject,h=p.oldDi;if(xp(p))return p.businessObject=gr(c[p.labelTarget]),void(p.di=br(c[p.labelTarget]));r=e.create(l.$type),p.businessObject=n.copyElement(l,r),(o=e.create(h.$type)).bpmnElement=r,p.di=n.copyElement(h,o),function(e,t){var n=gr(e);e.default&&(i[e.default]={element:n,property:"default"}),e.host&&(gr(e).attachedToRef=gr(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}),[]))}(p,c),gp(p,r,["isExpanded","name"]),a=p,u(s="oldBusinessObject")||(s=[s]),b(s,(function(e){a[e]&&delete a[e]}))}))}function xp(e){return!!e.labelTarget}bp.$inject=["bpmnFactory","eventBus","moddleCopy"];var _p=["artifacts","dataInputAssociations","dataOutputAssociations","default","flowElements","lanes","incoming","outgoing"];function Ep(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===_p.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 wp(e,t){return _(e.properties,(function(e,n){return t&&n.default?e:e.concat(n.name)}),[])}Ep.$inject=["eventBus","bpmnFactory","moddle"],Ep.prototype.copyElement=function(e,t,n){var i=this;n&&!u(n)&&(n=[n]),n=n||wp(e.$descriptor);var r=this._eventBus.fire("moddleCopy.canCopyProperties",{propertyNames:n,sourceElement:e,targetElement:t});return!1===r||(u(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},Ep.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.isReference){if(o.isId)return this._copyId(e,t);if(u(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}}},Ep.prototype._copyId=function(e,t){return this._moddle.ids.assigned(e)?void 0:(this._moddle.ids.claim(e,t),e)};var Sp={__depends__:[yp],__init__:["bpmnCopyPaste","moddleCopy"],bpmnCopyPaste:["type",bp],moddleCopy:["type",Ep]},Cp=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=Cp(a+r/2),p=Cp(s+o/2);return i.replaceShape(e,F({},t,{x:c,y:p,width:r,height:o}),n)};var Tp={__init__:["replace"],replace:["type",Rp]};var Pp=["cancelActivity","instantiate","eventGatewayType","triggeredByEvent","isInterrupting"];function Ap(e,t,n,i,r,o,a){this.replaceElement=function(s,p,l){l=l||{};var h=p.type,d=s.businessObject;if(kp(d)&&"bpmn:SubProcess"===h&&function(e,t){var n=e&&v(e,"collapsed")?e.collapsed:!Dr(e);return n!==(t&&(v(t,"collapsed")||v(t,"isExpanded"))?v(t,"collapsed")?t.collapsed:!t.isExpanded:n)}(s,p))return i.toggleCollapse(s),s;var f=e.create(h),m={type:h,businessObject:f,di:{}};!function(e,t,n){u(n)||(n=[n]),b(n,(function(n){c(e[n])||(t[n]=e[n])}))}(s.di,m.di,["fill","stroke","background-color","border-color","color"]);var y,x=wp(d.$descriptor),_=wp(f.$descriptor,!0),E=(y=_,x.filter((function(e){return-1!==y.indexOf(e)})));F(f,$(p,Pp));var w=g(E,(function(e){return"eventDefinitions"===e?Mp(s,p.eventDefinitionType):"loopCharacteristics"===e?!Br(f):!v(f,e)&&(("processRef"!==e||!1!==p.isExpanded)&&"triggeredByEvent"!==e)}));return f=n.copyElement(d,f,w),p.eventDefinitionType&&(Mp(f,p.eventDefinitionType)||(m.eventDefinitionType=p.eventDefinitionType,m.eventDefinitionAttrs=p.eventDefinitionAttrs)),vr(d,"bpmn:Activity")&&(kp(d)?m.isExpanded=Dr(s):p&&v(p,"isExpanded")&&(m.isExpanded=p.isExpanded),Dr(s)&&!vr(d,"bpmn:Task")&&m.isExpanded&&(m.width=s.width,m.height=s.height)),kp(d)&&!kp(f)&&(l.moveChildren=!1),vr(d,"bpmn:Participant")&&(!0===p.isExpanded?f.processRef=e.create("bpmn:Process"):l.moveChildren=!1,m.width=s.width,m.height=t.getDefaultSize(m).height),o.allowed("shape.resize",{shape:f})||(m.height=t.getDefaultSize(m).height,m.width=t.getDefaultSize(m).width),f.name=d.name,yr(d,["bpmn:ExclusiveGateway","bpmn:InclusiveGateway","bpmn:Activity"])&&yr(f,["bpmn:ExclusiveGateway","bpmn:InclusiveGateway","bpmn:Activity"])&&(f.default=d.default),p.host&&!vr(d,"bpmn:BoundaryEvent")&&vr(f,"bpmn:BoundaryEvent")&&(m.host=p.host),"bpmn:DataStoreReference"!==m.type&&"bpmn:DataObjectReference"!==m.type||(m.x=s.x+(s.width-m.width)/2),m=r.replaceElement(s,m,l),!1!==l.select&&a.select(m),m}}function kp(e){return vr(e,"bpmn:SubProcess")}function Mp(e,t){var n=gr(e);return t&&n.get("eventDefinitions").some((function(e){return vr(e,t)}))}Ap.$inject=["bpmnFactory","elementFactory","moddleCopy","modeling","replace","rules","selection"];var Dp={__depends__:[Sp,Tp,No],bpmnReplace:["type",Ap]};function Bp(e){return function(t){var n=t.target,i=gr(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===Dr(e);return!(o&&a&&s&&c)}}var Np=[{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"}}],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"}}],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:"Data Store Reference",actionName:"replace-with-data-store-reference",className:"bpmn-icon-data-store",target:{type:"bpmn:DataStoreReference"}}],Wp=[{label:"Data Object Reference",actionName:"replace-with-data-object-reference",className:"bpmn-icon-data-object",target:{type:"bpmn:DataObjectReference"}}],Vp=[{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}}],Up=[{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}}],qp=[{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"}],Kp=[{label:"Expanded Pool",actionName:"replace-with-expanded-pool",className:"bpmn-icon-participant",target:{type:"bpmn:Participant",isExpanded:!0}},{label:function(e){var t="Empty Pool";return e.children&&e.children.length&&(t+=" (removes content)"),t},actionName:"replace-with-collapsed-pool",className:"bpmn-icon-lane",target:{type:"bpmn:Participant",isExpanded:!1}}];function Yp(e,t,n,i,r,o,a){this._bpmnFactory=e,this._popupMenu=t,this._modeling=n,this._moddle=i,this._bpmnReplace=r,this._rules=o,this._translate=a,this.register()}Yp.$inject=["bpmnFactory","popupMenu","modeling","moddle","bpmnReplace","rules","translate"],Yp.prototype.register=function(){this._popupMenu.registerProvider("bpmn-replace",this)},Yp.prototype.getEntries=function(e){var t,n=e.businessObject;if(!this._rules.allowed("shape.replace",{element:e}))return[];var i=Bp(e);return vr(n,"bpmn:DataObjectReference")?this._createEntries(e,Gp):vr(n,"bpmn:DataStoreReference")&&!vr(e.parent,"bpmn:Collaboration")?this._createEntries(e,Wp):vr(n,"bpmn:StartEvent")&&!vr(n.$parent,"bpmn:SubProcess")?(t=g(Np,i),this._createEntries(e,t)):vr(n,"bpmn:Participant")?(t=g(Kp,(function(t){return Dr(e)!==t.target.isExpanded})),this._createEntries(e,t)):vr(n,"bpmn:StartEvent")&&Br(n.$parent)?(t=g(Up,(function(t){var n=!1!==t.target.isInterrupting,r=gr(e).isInterrupting===n;return i(t)||!i(t)&&!r})),this._createEntries(e,t)):vr(n,"bpmn:StartEvent")&&!Br(n.$parent)&&vr(n.$parent,"bpmn:SubProcess")?(t=g(Op,i),this._createEntries(e,t)):vr(n,"bpmn:EndEvent")?(t=g(Lp,(function(e){return!("bpmn:CancelEventDefinition"==e.target.eventDefinitionType&&!vr(n.$parent,"bpmn:Transaction"))&&i(e)})),this._createEntries(e,t)):vr(n,"bpmn:BoundaryEvent")?(t=g(Vp,(function(e){var t=e.target;if("bpmn:CancelEventDefinition"==t.eventDefinitionType&&!vr(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)):vr(n,"bpmn:IntermediateCatchEvent")||vr(n,"bpmn:IntermediateThrowEvent")?(t=g(jp,i),this._createEntries(e,t)):vr(n,"bpmn:Gateway")?(t=g(Ip,i),this._createEntries(e,t)):vr(n,"bpmn:Transaction")?(t=g(Fp,i),this._createEntries(e,t)):Br(n)&&Dr(e)?(t=g($p,i),this._createEntries(e,t)):vr(n,"bpmn:SubProcess")&&Dr(e)?(t=g(zp,i),this._createEntries(e,t)):vr(n,"bpmn:AdHocSubProcess")&&!Dr(e)?(t=g(Hp,(function(t){var n=t.target,i="bpmn:SubProcess"===n.type,r=!0===n.isExpanded;return Bp(e)&&(!i||r)})),this._createEntries(e,t)):vr(n,"bpmn:SequenceFlow")?this._createSequenceFlowEntries(e,qp):vr(n,"bpmn:FlowNode")?(t=g(Hp,i),vr(n,"bpmn:SubProcess")&&!Dr(e)&&(t=g(t,(function(e){return"Sub Process (collapsed)"!==e.label}))),this._createEntries(e,t)):[]},Yp.prototype.getHeaderEntries=function(e){var t=[];return vr(e,"bpmn:Activity")&&!Br(e)&&(t=t.concat(this._getLoopEntries(e))),vr(e,"bpmn:DataObjectReference")&&(t=t.concat(this._getDataObjectIsCollection(e))),vr(e,"bpmn:Participant")&&(t=t.concat(this._getParticipantMultiplicity(e))),!vr(e,"bpmn:SubProcess")||vr(e,"bpmn:Transaction")||Br(e)||t.push(this._getAdHocEntry(e)),t},Yp.prototype._createEntries=function(e,t){var n=[],i=this;return b(t,(function(t){var r=i._createMenuEntry(t,e);n.push(r)})),n},Yp.prototype._createSequenceFlowEntries=function(e,t){var n=gr(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&&(vr(n.sourceRef,"bpmn:ExclusiveGateway")||vr(n.sourceRef,"bpmn:InclusiveGateway")||vr(n.sourceRef,"bpmn:ComplexGateway")||vr(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&&vr(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(vr(n.sourceRef,"bpmn:Activity")&&n.conditionExpression)return i.push(a._createMenuEntry(t,e,(function(){r.updateProperties(e,{conditionExpression:void 0})})));if((vr(n.sourceRef,"bpmn:ExclusiveGateway")||vr(n.sourceRef,"bpmn:InclusiveGateway")||vr(n.sourceRef,"bpmn:ComplexGateway")||vr(n.sourceRef,"bpmn:Activity"))&&n.sourceRef.default===n)return i.push(a._createMenuEntry(t,e,(function(){r.updateProperties(e.source,{default:void 0})})))}})),i},Yp.prototype._createMenuEntry=function(e,t,n){var i=this._translate,r=this._bpmnReplace.replaceElement,o=e.label;return o&&"function"==typeof o&&(o=o(t)),n=n||function(){return r(t,e.target)},{label:i(o),className:e.className,id:e.actionName,action:n}},Yp.prototype._getLoopEntries=function(e){var t=this,n=this._translate;function i(n,i){var r=gr(e).loopCharacteristics;i.active?r=void 0:(!c(i.options.isSequential)&&r||(r=t._moddle.create(i.options.loopCharacteristics)),r.isSequential=i.options.isSequential),t._modeling.updateProperties(e,{loopCharacteristics:r})}var r,o,a,s=gr(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"}}]},Yp.prototype._getDataObjectIsCollection=function(e){var t=this,n=this._translate;var i=e.businessObject.dataObjectRef,r=i.isCollection;return[{id:"toggle-is-collection",className:"bpmn-icon-parallel-mi-marker",title:n("Collection"),active:r,action:function(n,r){t._modeling.updateModdleProperties(e,i,{isCollection:!r.active})}}]},Yp.prototype._getParticipantMultiplicity=function(e){var t=this,n=this._bpmnFactory,i=this._translate;var r=e.businessObject.participantMultiplicity;return[{id:"toggle-participant-multiplicity",className:"bpmn-icon-parallel-mi-marker",title:i("Participant Multiplicity"),active:!!r,action:function(i,r){var o;r.active||(o=n.create("bpmn:ParticipantMultiplicity")),t._modeling.updateProperties(e,{participantMultiplicity:o})}}]},Yp.prototype._getAdHocEntry=function(e){var t=this._translate,n=vr(gr(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 Xp={__depends__:[sp,Dp],__init__:["replaceMenuProvider"],replaceMenuProvider:["type",Yp]},Zp=Math.max,Qp=Math.min;function Jp(e,t){return{top:e.top-t.top,right:e.right-t.right,bottom:e.bottom-t.bottom,left:e.left-t.left}}function el(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)?Qp:Zp)(i,r)),d(o)&&(i=(/top|left/.test(e)?Zp:Qp)(i,o)),i}function tl(e,t){return void 0!==e?e:20}function nl(e){return!e.waypoints&&"label"!==e.type}function il(e,t){var n;if((n=void 0===e.length?g(e.children,nl):e).length)return function(e,t){var n,i,r,o;return"object"==typeof t?(n=tl(t.left),i=tl(t.right),r=tl(t.top),o=tl(t.bottom)):n=i=r=o=tl(t),{x:e.x-n,y:e.y-r,width:e.width+n+i,height:e.height+r+o}}(pt(n),t)}var rl=Math.abs;var ol=["bpmn:Participant","bpmn:Process","bpmn:SubProcess"],al=30;function sl(e,t){return t=t||[],e.children.filter((function(e){vr(e,"bpmn:Lane")&&(sl(e,t),t.push(e))})),t}function cl(e){return e.children.filter((function(e){return vr(e,"bpmn:Lane")}))}function pl(e){return ds(e,ol)||e}function ll(e,t){var n=pl(e),i=sl(n,vr(n,"bpmn:Process")?[]:[n]),r=an(e),o=an(t),a=function(e,t){return Jp(an(t),an(e))}(e,t),s=[];return i.forEach((function(t){if(t!==e){var n,i,c=0,p=a.right,l=0,u=a.left,h=an(t);a.top&&(rl(h.bottom-r.top)<10&&(l=o.top-h.bottom),rl(h.top-r.top)<5&&(c=o.top-h.top)),a.bottom&&(rl(h.top-r.bottom)<10&&(c=o.bottom-h.top),rl(h.bottom-r.bottom)<5&&(l=o.bottom-h.bottom)),(c||p||l||u)&&s.push({shape:t,newBounds:(n=t,i={top:c,right:p,bottom:l,left:u},{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 ul(e,t,n,i,r,o,a,s,c,p,l,u){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=l,this._translate=u,!1!==e.autoPlace&&(this._autoPlace=t.get("autoPlace",!1)),n.on("create.end",250,(function(e){var t=e.context.shape;if(xo(e)&&i.isOpen(t)){var n=i.getEntries(t);n.replace&&n.replace.action.click(e,t)}}))}function hl(e,t,n){var i=e.$instanceOf(t),r=!1;return b(e.eventDefinitions||[],(function(e){e.$type===n&&(r=!0)})),i&&r}ul.$inject=["config.contextPad","injector","eventBus","contextPad","modeling","elementFactory","connect","create","popupMenu","canvas","rules","translate"],ul.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,l=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=l("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(yr(d,["bpmn:Lane","bpmn:Participant"])&&Dr(e)){var y=cl(e);F(h,{"lane-insert-above":{group:"lane-insert-above",className:"bpmn-icon-lane-insert-above",title:l("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:l("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:l("Divide into three Lanes"),action:{click:v(3)}}})),F(h,{"lane-insert-below":{group:"lane-insert-below",className:"bpmn-icon-lane-insert-below",title:l("Add Lane below"),action:{click:function(e,t){n.addLane(t,"bottom")}}}})}vr(d,"bpmn:FlowNode")&&(vr(d,"bpmn:EventBasedGateway")?F(h,{"append.receive-task":m("bpmn:ReceiveTask","bpmn-icon-receive-task",l("Append ReceiveTask")),"append.message-intermediate-event":m("bpmn:IntermediateCatchEvent","bpmn-icon-intermediate-event-catch-message",l("Append MessageIntermediateCatchEvent"),{eventDefinitionType:"bpmn:MessageEventDefinition"}),"append.timer-intermediate-event":m("bpmn:IntermediateCatchEvent","bpmn-icon-intermediate-event-catch-timer",l("Append TimerIntermediateCatchEvent"),{eventDefinitionType:"bpmn:TimerEventDefinition"}),"append.condition-intermediate-event":m("bpmn:IntermediateCatchEvent","bpmn-icon-intermediate-event-catch-condition",l("Append ConditionIntermediateCatchEvent"),{eventDefinitionType:"bpmn:ConditionalEventDefinition"}),"append.signal-intermediate-event":m("bpmn:IntermediateCatchEvent","bpmn-icon-intermediate-event-catch-signal",l("Append SignalIntermediateCatchEvent"),{eventDefinitionType:"bpmn:SignalEventDefinition"})}):hl(d,"bpmn:BoundaryEvent","bpmn:CompensateEventDefinition")?F(h,{"append.compensation-activity":m("bpmn:Task","bpmn-icon-task",l("Append compensation activity"),{isForCompensation:!0})}):vr(d,"bpmn:EndEvent")||d.isForCompensation||hl(d,"bpmn:IntermediateThrowEvent","bpmn:LinkEventDefinition")||Br(d)||F(h,{"append.end-event":m("bpmn:EndEvent","bpmn-icon-end-event-none",l("Append EndEvent")),"append.gateway":m("bpmn:ExclusiveGateway","bpmn-icon-gateway-none",l("Append Gateway")),"append.append-task":m("bpmn:Task","bpmn-icon-task",l("Append Task")),"append.intermediate-event":m("bpmn:IntermediateThrowEvent","bpmn-icon-intermediate-event-none",l("Append Intermediate/Boundary Event"))})),a.isEmpty(e,"bpmn-replace")||F(h,{replace:{group:"edit",className:"bpmn-icon-screw-wrench",title:l("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)}}}}),yr(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:l("Connect using "+(d.isForCompensation?"":"Sequence/MessageFlow or ")+"Association"),action:{click:f,dragstart:f}}}),vr(d,"bpmn:TextAnnotation")&&F(h,{connect:{group:"connect",className:"bpmn-icon-connection-multi",title:l("Connect using Association"),action:{click:f,dragstart:f}}}),yr(d,["bpmn:DataObjectReference","bpmn:DataStoreReference"])&&F(h,{connect:{group:"connect",className:"bpmn-icon-connection-multi",title:l("Connect using DataInputAssociation"),action:{click:f,dragstart:f}}}),vr(d,"bpmn:Group")&&F(h,{"append.text-annotation":m("bpmn:TextAnnotation","bpmn-icon-text-annotation")});var g=c.allowed("elements.delete",{elements:[e]});return u(g)&&(g=g[0]===e),g&&F(h,{delete:{group:"edit",className:"bpmn-icon-trash",title:l("Remove"),action:{click:function(t){n.removeElements([e])}}}}),h};var dl={__depends__:[zc,Hc,No,kc,ip,Xp],__init__:["contextPadProvider"],contextPadProvider:["type",ul]},fl={horizontal:["x","width"],vertical:["y","height"]};function ml(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}))}))}ml.$inject=["modeling"],ml.prototype.registerFilter=function(e){if("function"!=typeof e)throw new Error("the filter has to be a function");this._filters.push(e)},ml.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},ml.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},ml.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},ml.prototype._setOrientation=function(e){var t=fl[e];this._axis=t[0],this._dimension=t[1]},ml.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)},ml.prototype._findRange=function(e){var t=e[this._axis];return{min:t+5,max:t+e[this._dimension]-5}};var vl={__init__:["distributeElements"],distributeElements:["type",ml]};function yl(e){e.registerFilter((function(e){return g(e,(function(e){var t=yr(e,["bpmn:Association","bpmn:BoundaryEvent","bpmn:DataInputAssociation","bpmn:DataOutputAssociation","bpmn:Lane","bpmn:MessageFlow","bpmn:Participant","bpmn:SequenceFlow","bpmn:TextAnnotation"]);return!(e.labelTarget||t)}))}))}yl.$inject=["distributeElements"];var gl={__depends__:[vl],__init__:["bpmnDistributeElements"],bpmnDistributeElements:["type",yl]},bl="is not a registered action";function xl(e,t){this._actions={};var n=this;e.on("diagram.init",(function(){n._registerDefaultActions(t),e.fire("editorActions.init",{editorActions:n})}))}function _l(e,t){return new Error(e+" "+t)}xl.$inject=["eventBus","injector"],xl.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=u(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)}))},xl.prototype.trigger=function(e,t){if(!this._actions[e])throw _l(e,bl);return this._actions[e](t)},xl.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)}))},xl.prototype._registerAction=function(e,t){if(this.isRegistered(e))throw _l(e,"is already registered");this._actions[e]=t},xl.prototype.unregister=function(e){if(!this.isRegistered(e))throw _l(e,bl);this._actions[e]=void 0},xl.prototype.getActions=function(){return Object.keys(this._actions)},xl.prototype.isRegistered=function(e){return!!this._actions[e]};var El={__init__:["editorActions"],editorActions:["type",xl]};function wl(e){e.invoke(xl,this)}n(wl,xl),wl.$inject=["injector"],wl.prototype._registerDefaultActions=function(e){xl.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),l=e.get("directEditing",!1),u=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!vr(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&&l&&this._registerAction("directEditing",(function(){var e=i.get();e.length&&l.activate(e[0])})),u&&this._registerAction("find",(function(){u.toggle()})),t&&h&&this._registerAction("moveToOrigin",(function(){var e,i,r=t.getRootElement();e=pt(i=vr(r,"bpmn:Collaboration")?n.filter((function(e){return vr(e.parent,"bpmn:Collaboration")})):n.filter((function(e){return e!==r&&!vr(e.parent,"bpmn:SubProcess")}))),h.moveElements(i,{x:-e.x,y:-e.y},r)}))};var Sl={__depends__:[El],editorActions:["type",wl]};function Cl(e){e.on(["create.init","shape.move.init"],(function(e){var t=e.context;yr(e.shape,["bpmn:Participant","bpmn:SubProcess","bpmn:TextAnnotation"])&&(t.gridSnappingContext||(t.gridSnappingContext={}),t.gridSnappingContext.snapLocation="top-left")}))}Cl.$inject=["eventBus"];function Rl(e,t,n){return n||(n="round"),Math[n](e/t)*t}function Tl(e,t,n){var i=!n||!1!==n.active;this._eventBus=t;var r=this;t.on("diagram.init",800,(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"],1200,(function(t){var n=t.originalEvent;if(!(!r.active||n&&fa(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)||(Pl(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&&(Pl(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&&(Pl(t)?kl(s)?a.x.max=c.left:a.x.min=c.right:Al(s)?a.y.max=c.top:a.y.min=c.bottom);p&&(Pl(t)?kl(s)?a.x.min=p.left:a.x.max=p.right:Al(s)?a.y.min=p.top:a.y.max=p.bottom);return a[t]}(t,n);a&&F(i,a),gc(t,n)||r.snapEvent(t,n,i)}))}}))}function Pl(e){return"x"===e}function Al(e){return-1!==e.indexOf("n")}function kl(e){return-1!==e.indexOf("w")}function Ml(e,t){Wo.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)}}))}Tl.prototype.snapEvent=function(e,t,n){bc(e,t,this.snapValue(e[t],n))},Tl.prototype.getGridSpacing=function(){return 10},Tl.prototype.snapValue=function(e,t){var n,i,r=0;return t&&t.offset&&(r=t.offset),e=Rl(e+=r,10),t&&t.min&&d(n=t.min)&&(n=Rl(n+r,10,"ceil"),e=Math.max(e,n)),t&&t.max&&d(i=t.max)&&(i=Rl(i+r,10,"floor"),e=Math.min(e,i)),e-=r},Tl.prototype.isActive=function(){return this.active},Tl.prototype.setActive=function(e){this.active=e,this._eventBus.fire("gridSnapping.toggle",{active:e})},Tl.prototype.toggleActive=function(){this.setActive(!this.active)},Tl.$inject=["elementRegistry","eventBus","config.gridSnapping"],Ml.$inject=["eventBus","gridSnapping","modeling"],n(Ml,Wo),Ml.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},Ml.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},Ml.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},Ml.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};function Dl(e,t){e.on(["spaceTool.move","spaceTool.end"],2e3,(function(e){var n,i=e.context;i.initialized&&("x"===i.axis?(n=t.snapValue(e.dx),e.x=e.x+n-e.dx,e.dx=n):(n=t.snapValue(e.dy),e.y=e.y+n-e.dy,e.dy=n))}))}Dl.$inject=["eventBus","gridSnapping"];var Bl={__depends__:[{__init__:["gridSnappingResizeBehavior","gridSnappingSpaceToolBehavior"],gridSnappingResizeBehavior:["type",Ml],gridSnappingSpaceToolBehavior:["type",Dl]}],__init__:["gridSnapping"],gridSnapping:["type",Tl]};function Nl(e,t){e.on("autoPlace",2e3,(function(e){var n=e.source,i=cn(n),r=e.shape,o=fs(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],vr(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}))}Nl.$inject=["eventBus","gridSnapping"];function Ol(e,t,n){t.on(["create.start","shape.move.start"],1750,(function(t){var i=t.context,r=i.shape,o=e.getRootElement();vr(r,"bpmn:Participant")&&vr(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})))}))}Ol.$inject=["canvas","eventBus","gridSnapping"];function jl(e,t,n){Wo.call(this,e),this._gridSnapping=t;var i=this;this.postExecuted(["connection.create","connection.layout"],3e3,(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 Ll(e,t,n){var i=xt(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]}jl.$inject=["eventBus","gridSnapping","modeling"],n(jl,Wo),jl.prototype.snapMiddleSegments=function(e){var t,n=this._gridSnapping;e=e.slice();for(var i=1;i<e.length-2;i++)t=Ll(n,e[i],e[i+1]),e[i]=t[0],e[i+1]=t[1];return e};var Il={__depends__:[Bl,{__init__:["gridSnappingAutoPlaceBehavior","gridSnappingCreateParticipantBehavior","gridSnappingLayoutConnectionBehavior"],gridSnappingAutoPlaceBehavior:["type",Nl],gridSnappingCreateParticipantBehavior:["type",Ol],gridSnappingLayoutConnectionBehavior:["type",jl]}],__init__:["bpmnGridSnapping"],bpmnGridSnapping:["type",Cl]};function zl(e,t){this._interactionEvents=t;var n=this;e.on(["interactionEvents.createHit","interactionEvents.updateHit"],(function(e){var t=e.element,i=e.gfx;return vr(t,"bpmn:Lane")?n.createParticipantHit(t,i):vr(t,"bpmn:Participant")?Dr(t)?n.createParticipantHit(t,i):n.createDefaultHit(t,i):vr(t,"bpmn:SubProcess")?Dr(t)?n.createSubProcessHit(t,i):n.createDefaultHit(t,i):void 0}))}zl.$inject=["eventBus","interactionEvents"],zl.prototype.createDefaultHit=function(e,t){return this._interactionEvents.removeHits(t),this._interactionEvents.createDefaultHit(e,t),!0},zl.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},zl.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 Fl={__init__:["bpmnInteractionEvents"],bpmnInteractionEvents:["type",zl]};function $l(e){e.invoke(Sa,this)}n($l,Sa),$l.$inject=["injector"],$l.prototype.registerBindings=function(e,t){function n(n,i){t.isRegistered(n)&&e.addListener(i)}Sa.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 Hl={__depends__:[Ca],__init__:["keyboardBindings"],keyboardBindings:["type",$l]},Gl={moveSpeed:1,moveSpeedAccelerated:10},Wl="left",Vl="right",Ul="down",ql={ArrowLeft:Wl,Left:Wl,ArrowUp:"up",Up:"up",ArrowRight:Vl,Right:Vl,ArrowDown:Ul,Down:Ul},Kl={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 Yl(e,t,n,i,r){var o=this;this._config=F({},Gl,e||{}),t.addListener(1500,(function(e){var n=e.keyEvent,i=ql[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=Kl[e](a);i.allowed("elements.move",{shapes:o})&&n.moveElements(o,s)}}}Yl.$inject=["config.keyboardMoveSelection","keyboard","modeling","rules","selection"];var Xl={__depends__:[Ca,No],__init__:["keyboardMoveSelection"],keyboardMoveSelection:["type",Yl]};function Zl(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=an(e);return sn({top:el("top",n,t),right:el("right",n,t),bottom:el("bottom",n,t),left:el("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:an(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=rn(r)))return;n.resizeShape(t,r)}}(e.context)}))}function Ql(e,t){var n=cn(e),i=an(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 Jl(e){return"n"===e||"s"===e?"resize-ns":"e"===e||"w"===e?"resize-ew":"nw"===e||"se"===e?"resize-nwse":"resize-nesw"}Zl.prototype.canResize=function(e){var t=this._rules,n=$(e,["newBounds","shape","delta","direction"]);return t.allowed("shape.resize",n)},Zl.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,Ql(t,r),"resize",{autoActivate:!0,cursor:Jl(r),data:{shape:t,context:i}})},Zl.prototype.computeMinResizeBox=function(e){var t=e.shape;return function(e,t,n,i){var r=an(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?an(i):o;return sn({top:Qp(o.top,a.top),left:Qp(o.left,a.left),bottom:Zp(o.bottom,a.bottom),right:Zp(o.right,a.right)})}(e.direction,t,e.minDimensions||{width:10,height:10},il(t,e.childrenBoxPadding))},Zl.$inject=["eventBus","rules","modeling","dragging"];var eu="djs-resizing",tu="resize-not-ok";function nu(e,t,n){e.on("resize.move",500,(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.getActiveLayer()),t.addMarker(r,eu)),o.width>5&&ge(a,{x:o.x,width:o.width}),o.height>5&&ge(a,{y:o.y,height:o.height}),i.canExecute?we(a).remove(tu):we(a).add(tu)})),e.on("resize.cleanup",(function(e){var n,i;n=e.context,i=n.shape,n.frame&&Ce(n.frame),t.removeMarker(i,eu)}))}nu.$inject=["eventBus","canvas","previewSupport"];var iu=-6,ru="djs-resizer",ou=["n","w","s","e","nw","ne","se","sw"];function au(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))}))}au.prototype.makeDraggable=function(e,t,n){var i=this._resize;function r(t){bo(t)&&i.activate(t,e,n)}re.bind(t,"mousedown",r),re.bind(t,"touchstart",r)},au.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=6:-1!==e.indexOf("w")&&(t.x=iu);-1!==e.indexOf("s")?t.y=6:-1!==e.indexOf("n")&&(t.y=iu);return t}(i),a=Me("g");we(a).add(ru),we(a).add("djs-resizer-"+e.id),we(a).add("djs-resizer-"+i),me(r,a);var s=Me("rect");ge(s,{x:-2+o.x,y:-2+o.y,width:4,height:4}),we(s).add("djs-resizer-visual"),me(a,s);var c=Me("rect");return ge(c,{x:-10+o.x,y:-10+o.y,width:20,height:20}),we(c).add("djs-resizer-hit"),me(a,c),Hn(a,t,n),a},au.prototype.createResizer=function(e,t){var n=Ql(e,t),i=this._createResizer(e,n.x,n.y,t);this.makeDraggable(e,i,t)},au.prototype.addResizer=function(e){var t=this;this._resize.canResize({shape:e})&&b(ou,(function(n){t.createResizer(e,n)}))},au.prototype.removeResizers=function(){Re(this._getResizersParent())},au.prototype._getResizersParent=function(){return this._canvas.getLayer("resizers")},au.$inject=["eventBus","canvas","selection","resize"];var su={__depends__:[Os,ks,Uc],__init__:["resize","resizePreview","resizeHandles"],resize:["type",Zl],resizePreview:["type",nu],resizeHandles:["type",au]};function cu(e,t){var n=t.create("bpmn:CategoryValue"),i=t.create("bpmn:Category",{categoryValue:[n]});return vt(e.get("rootElements"),i),gr(i).$parent=e,gr(n).$parent=i,n}function pu(e,t,n,i,r,o,a){function s(e,t){(t||yr(e,["bpmn:Task","bpmn:TextAnnotation"])||lu(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","root.set"],(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 lu(e){return vr(e,"bpmn:SubProcess")&&!Dr(e)}pu.$inject=["eventBus","bpmnFactory","canvas","directEditing","modeling","resizeHandles","textRenderer"],pu.prototype.activate=function(e){var t=jr(e);if(void 0!==t){var n={text:t};F(n,this.getEditingBBox(e));var i={};return(yr(e,["bpmn:Task","bpmn:Participant","bpmn:Lane","bpmn:CallActivity"])||lu(e))&&F(i,{centerVertically:!0}),io(e)&&F(i,{autoResize:!0}),vr(e,"bpmn:TextAnnotation")&&F(i,{resizable:!0,autoResize:!0}),F(n,{options:i}),n}},pu.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(),l=p.fontSize*s,u=p.lineHeight,h=c.fontSize*s,d=c.lineHeight,f={fontFamily:this._textRenderer.getDefaultStyle().fontFamily,fontWeight:this._textRenderer.getDefaultStyle().fontWeight};(vr(e,"bpmn:Lane")||function(e){return vr(e,"bpmn:Participant")&&Dr(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)"})),(yr(e,["bpmn:Task","bpmn:CallActivity"])||function(e){return vr(e,"bpmn:Participant")&&!Dr(e)}(e)||lu(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 vr(e,"bpmn:SubProcess")&&Dr(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:l+"px",lineHeight:u,paddingTop:v+"px",paddingBottom:y+"px"})),io(n)&&!ro(n)&&!so(n)){var g=ao(e),b=t.getAbsoluteBBox({x:g.x,y:g.y,width:0,height:0}),x=l+v+y;F(a,{width:m,height:x,x:b.x-m/2,y:b.y-x/2}),F(f,{fontSize:l+"px",lineHeight:u,paddingTop:v+"px",paddingBottom:y+"px"})}return vr(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}},pu.prototype.update=function(e,t,n,i){var r,o,a;if((vr(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}),vr(e,"bpmn:Group"))&&!gr(e).categoryValueRef){var s=cu(gr(this._canvas.getRootElement()).$parent,this._bpmnFactory);gr(e).categoryValueRef=s}(a=t)&&a.trim()||(t=null),this._modeling.updateLabel(e,t,r)};var uu="djs-element-hidden",hu="djs-label-hidden";function du(e,t,n,i){var r,o,a,s=this,c=t.getDefaultLayer();e.on("directEditing.activate",(function(e){var n=e.active;if(vr(r=n.element.label||n.element,"bpmn:TextAnnotation")){o=t.getAbsoluteBBox(r),a=Me("g");var p=i.getScaledPath("TEXT_ANNOTATION",{xScaleFactor:1,yScaleFactor:1,containerWidth:r.width,containerHeight:r.height,position:{mx:0,my:0}}),l=s.path=Me("path");ge(l,{d:p,strokeWidth:2,stroke:fu(r)}),me(a,l),me(c,a),Gn(a,r.x,r.y)}vr(r,"bpmn:TextAnnotation")||r.labelTarget?t.addMarker(r,uu):(vr(r,"bpmn:Task")||vr(r,"bpmn:CallActivity")||vr(r,"bpmn:SubProcess")||vr(r,"bpmn:Participant"))&&t.addMarker(r,hu)})),e.on("directEditing.resize",(function(e){if(vr(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}});ge(s.path,{d:c})}})),e.on(["directEditing.complete","directEditing.cancel"],(function(e){var n=e.active;n&&(t.removeMarker(n.element.label||n.element,uu),t.removeMarker(r,hu)),r=void 0,o=void 0,a&&(Ce(a),a=void 0)}))}function fu(e,t){return br(e).get("stroke")||t||"black"}du.$inject=["eventBus","canvas","elementRegistry","pathMap"];var mu={__depends__:[Go,su,zc],__init__:["labelEditingProvider","labelEditingPreview"],labelEditingProvider:["type",pu],labelEditingPreview:["type",du]},vu=["top","bottom","left","right"],yu=10;function gu(e,t){function n(e){if(ro(e)){var n=function(e){var t=cn(e.label),n=bu(cn(e),t);if(i=n,-1===vu.indexOf(i))return;var i;var r=function(e){var t=cn(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 bu(t,e)}))}(e);if(e.host){var o=function(e){var t,n=e.host,i=pn(cn(e),n);t=i.indexOf("-")>=0?i.split("-"):[i];return vu.filter((function(e){return-1===t.indexOf(e)}))}(e);r=r.concat(o)}var a=vu.filter((function(e){return-1===r.indexOf(e)}));if(-1!==a.indexOf(n))return;return a[0]}(e);n&&function(e,n){var i=cn(e),r=e.label,o=cn(r);if(!r.parent)return;var a,s=an(e);switch(n){case"top":a={x:i.x,y:s.top-yu-r.height/2};break;case"left":a={x:s.left-yu-r.width/2,y:i.y};break;case"bottom":a={x:i.x,y:s.bottom+yu+r.height/2};break;case"right":a={x:s.right+yu+r.width/2,y:i.y}}var c=Na(a,o);t.moveShape(r,c)}(e,n)}}Wo.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 bu(e,t){return pn(t,e,5)}function xu(e,t,n){Wo.call(this,e),this.preExecute("shape.append",(function(e){var t=e.source,n=e.shape;e.position||(vr(n,"bpmn:TextAnnotation")?e.position={x:t.x+t.width/2+75,y:t.y-50-n.height/2}:e.position={x:t.x+t.width+80+n.width/2,y:t.y+t.height/2})}),!0)}function _u(e,t){e.invoke(Wo,this),this.postExecute("shape.move",(function(e){var n=e.newParent,i=e.shape;b(g(i.incoming.concat(i.outgoing),(function(e){return vr(e,"bpmn:Association")})),(function(e){t.moveConnection(e,{x:0,y:0},n)}))}),!0)}n(gu,Wo),gu.$inject=["eventBus","modeling"],n(xu,Wo),xu.$inject=["eventBus","elementFactory","bpmnRules"],n(_u,Wo),_u.$inject=["injector","modeling"];function Eu(e,t){t.invoke(Wo,this),this._bpmnReplace=e;var n=this;this.postExecuted("elements.create",500,(function(e){var t=e.elements;1===(t=t.filter((function(e){return wu(e,e.host)}))).length&&t.map((function(e){return t.indexOf(e)})).forEach((function(i){var r=t[i];e.elements[i]=n.replaceShape(t[i],r)}))}),!0),this.preExecute("elements.move",500,(function(e){var t=e.shapes,i=e.newHost;if(1===t.length){var r=t[0];wu(r,i)&&(e.shapes=[n.replaceShape(r,i)])}}),!0)}function wu(e,t){return!so(e)&&yr(e,["bpmn:IntermediateThrowEvent","bpmn:IntermediateCatchEvent"])&&!!t}Eu.$inject=["bpmnReplace","injector"],n(Eu,Wo),Eu.prototype.replaceShape=function(e,t){var n,i=(n=gr(e).eventDefinitions)&&n[0],r={type:"bpmn:BoundaryEvent",host:t};return i&&(r.eventDefinitionType=i.$type),this._bpmnReplace.replaceElement(e,r,{layoutConnection:!1})};function Su(e,t,n){function i(e){return g(e.attachers,(function(e){return vr(e,"bpmn:BoundaryEvent")}))}Wo.call(this,e),this.postExecute("connection.create",(function(e){var t=e.context.source,r=e.context.target,o=i(r);vr(t,"bpmn:EventBasedGateway")&&vr(r,"bpmn:ReceiveTask")&&o.length>0&&n.removeElements(o)})),this.postExecute("connection.reconnect",(function(e){var t=e.context.oldSource,r=e.context.newSource;vr(t,"bpmn:Gateway")&&vr(r,"bpmn:EventBasedGateway")&&b(r.outgoing,(function(e){var t=e.target,r=i(t);vr(t,"bpmn:ReceiveTask")&&r.length>0&&n.removeElements(r)}))})),e.on("moddleCopy.canCopyProperty",2e3,(function(e){var n=e.parent,i=e.property,r=e.propertyName,o=t.getPropertyDescriptor(n,r);o&&o.isReference&&vr(i,"bpmn:RootElement")&&n.set(r,i)}))}function Cu(e){e.invoke(Wo,this),this.preExecute("shape.create",1500,(function(e){var t=e.context,n=t.parent,i=t.shape;vr(n,"bpmn:Lane")&&!vr(i,"bpmn:Lane")&&(t.parent=ds(n,"bpmn:Participant"))}))}function Ru(e,t,n){Wo.call(this,e),this.preExecute("shape.create",(function(e){var n=e.context.shape;if(vr(n,"bpmn:DataObjectReference")&&"label"!==n.type){var i=t.create("bpmn:DataObject");n.businessObject.dataObjectRef=i}}))}Su.$inject=["eventBus","moddle","modeling"],n(Su,Wo),Cu.$inject=["injector"],n(Cu,Wo),Ru.$inject=["eventBus","bpmnFactory","moddle"],n(Ru,Wo);var Tu=20,Pu=20,Au=2e3;function ku(e,t,n){function i(){var t=e.getRootElement();return vr(t,"bpmn:Collaboration")?t:n.makeCollaboration()}Wo.call(this,t),t.on(["create.start","shape.move.start"],Au,(function(t){var n=t.context,i=n.shape,r=e.getRootElement();if(vr(i,"bpmn:Participant")&&vr(r,"bpmn:Process")&&r.children.length){var o=r.children.filter((function(e){return!vr(e,"bpmn:Group")&&!so(e)&&!function(e){return!!e.waypoints}(e)}));if(o.length){var a=pt(o);F(i,function(e,t){t={width:t.width+40+30,height:t.height+40};var n=Math.max(e.width,t.width),i=Math.max(e.height,t.height);return{x:-n/2,y:-i/2,width:n,height:i}}(i,a)),n.createConstraints=function(e,t){return{bottom:(t=an(t)).top+e.height/2-Pu,left:t.right-e.width/2+Tu,top:t.bottom-e.height/2+Pu,right:t.left+e.width/2-Tu-30}}(i,a)}}})),t.on("create.start",Au,(function(n){var i=n.context.shape,r=e.getRootElement(),o=e.getGraphics(r);function a(e){e.element=r,e.gfx=o}vr(i,"bpmn:Participant")&&vr(r,"bpmn:Process")&&(t.on("element.hover",Au,a),t.once("create.cleanup",(function(){t.off("element.hover",a)})))})),this.preExecute("elements.create",Au,(function(e){var t,n=e.elements,r=e.parent,o=function(e){return y(e,(function(e){return vr(e,"bpmn:Participant")}))}(n);o&&vr(r,"bpmn:Process")&&(e.parent=i(),(t=e.hints=e.hints||{}).participant=o,t.process=r,t.processRef=gr(o).get("processRef"))}),!0),this.preExecute("shape.create",(function(e){var t=e.parent,n=e.shape;vr(n,"bpmn:Participant")&&vr(t,"bpmn:Process")&&(e.parent=i(),e.process=t,e.processRef=gr(n).get("processRef"))}),!0),this.execute("shape.create",(function(e){var t=e.hints||{},n=e.process||t.process,i=e.shape,r=t.participant;!n||r&&i!==r||gr(i).set("processRef",gr(n))}),!0),this.revert("shape.create",(function(e){var t=e.hints||{},n=e.process||t.process,i=e.processRef||t.processRef,r=e.shape,o=t.participant;!n||o&&r!==o||gr(r).set("processRef",i)}),!0),this.postExecute("shape.create",(function(e){var t=e.hints||{},i=e.process||e.hints.process,r=e.shape,o=t.participant;if(i){var a=i.children.slice();o?r===o&&n.moveElements(a,{x:0,y:0},o):n.moveElements(a,{x:0,y:0},r)}}),!0)}ku.$inject=["canvas","eventBus","modeling"],n(ku,Wo);var Mu="__targetRef_placeholder";function Du(e,t){function n(e,n){var i=e.get("properties"),r=y(i,(function(e){return e.name===Mu}));return!r&&n&&vt(i,r=t.create("bpmn:Property",{name:Mu})),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)||mt(e.get("properties"),i))}function r(e){var t,r=e.context,o=r.connection,a=o.businessObject,s=o.target,c=s&&s.businessObject,p=r.newTarget,l=p&&p.businessObject,u=r.oldTarget||r.target,h=u&&u.businessObject,d=o.businessObject;h&&h!==c&&i(h,a),l&&l!==c&&i(l,a),c?(t=n(c,!0),d.targetRef=t):d.targetRef=null}Wo.call(this,e),this.executed(["connection.create","connection.delete","connection.move","connection.reconnect"],Bu(r)),this.reverted(["connection.create","connection.delete","connection.move","connection.reconnect"],Bu(r))}function Bu(e){return function(t){if(vr(t.context.connection,"bpmn:DataInputAssociation"))return e(t)}}function Nu(e){this._bpmnUpdater=e}function Ou(e,t,n,i){function r(e){return e.children.filter((function(e){return vr(e,"bpmn:DataStoreReference")&&!e.labelTarget}))}function o(e,i){var r=e.businessObject||e;if(i=i||n.filter((function(e){return vr(e,"bpmn:Participant")&&gr(e).processRef}))[0]){var o=i.businessObject||i;t.execute("dataStore.updateContainment",{dataStoreBo:r,dataStoreDi:br(e),newSemanticParent:o.processRef||o,newDiParent:br(i)})}}Wo.call(this,i),t.registerHandler("dataStore.updateContainment",Nu),this.preExecute("shape.create",(function(e){var t=e.context,n=t.shape;vr(n,"bpmn:DataStoreReference")&&"label"!==n.type&&(t.hints||(t.hints={}),t.hints.autoResize=!1)})),this.preExecute("elements.move",(function(e){var t=e.context,n=t.shapes;n.filter((function(e){return vr(e,"bpmn:DataStoreReference")})).length&&(t.hints||(t.hints={}),t.hints.autoResize=n.filter((function(e){return!vr(e,"bpmn:DataStoreReference")})))})),this.postExecute("shape.create",(function(e){var t=e.context.shape,n=t.parent;vr(t,"bpmn:DataStoreReference")&&"label"!==t.type&&vr(n,"bpmn:Collaboration")&&o(t)})),this.postExecute("shape.move",(function(e){var t=e.context,n=t.shape,i=t.oldParent,r=n.parent;vr(i,"bpmn:Collaboration")||vr(n,"bpmn:DataStoreReference")&&"label"!==n.type&&vr(r,"bpmn:Collaboration")&&o(n,vr(i,"bpmn:Participant")?i:function(e,t){for(;e.parent;){if(vr(e.parent,t))return e.parent;e=e.parent}}(i,"bpmn:Participant"))})),this.postExecute("shape.delete",(function(t){var n=t.context.shape,i=e.getRootElement();yr(n,["bpmn:Participant","bpmn:SubProcess"])&&vr(i,"bpmn:Collaboration")&&r(i).filter((function(e){return function(e,t){var n=e.businessObject||e,i=t.businessObject||t;for(;n.$parent;){if(n.$parent===i.processRef||i)return!0;n=n.$parent}return!1}(e,n)})).forEach((function(e){o(e)}))})),this.postExecute("canvas.updateRoot",(function(e){var t=e.context,n=t.oldRoot,i=t.newRoot;r(n).forEach((function(e){vr(i,"bpmn:Process")&&o(e,i)}))}))}Du.$inject=["eventBus","bpmnFactory"],n(Du,Wo),Nu.$inject=["bpmnUpdater"],Nu.prototype.execute=function(e){var t=e.dataStoreBo,n=e.dataStoreDi,i=e.newSemanticParent,r=e.newDiParent;e.oldSemanticParent=t.$parent,e.oldDiParent=n.$parent,this._bpmnUpdater.updateSemanticParent(t,i),this._bpmnUpdater.updateDiParent(n,r)},Nu.prototype.revert=function(e){var t=e.dataStoreBo,n=e.dataStoreDi,i=e.oldSemanticParent,r=e.oldDiParent;this._bpmnUpdater.updateSemanticParent(t,i),this._bpmnUpdater.updateDiParent(n,r)},Ou.$inject=["canvas","commandStack","elementRegistry","eventBus"],n(Ou,Wo);function ju(e,t,n){Wo.call(this,e),this.postExecuted("shape.delete",500,(function(e){var t=e.context,i=t.hints,r=t.shape,o=t.oldParent;vr(r,"bpmn:Lane")&&(i&&i.nested||function(e,t){var i,r,o,a=cl(t),s=[],c=[];st(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))}))}ju.$inject=["eventBus","modeling","spaceTool"],n(ju,Wo);function Lu(e,t){t.invoke(Wo,this),this._bpmnReplace=e;var n=this;this.postExecuted("elements.create",500,(function(e){var t=e.elements;t.filter((function(e){return Iu(e,e.host)})).map((function(e){return t.indexOf(e)})).forEach((function(i){e.elements[i]=n.replaceShape(t[i])}))}),!0),this.preExecute("elements.move",500,(function(e){var t=e.shapes,i=e.newHost;t.forEach((function(e,r){var o,a=e.host;Iu(e,(o=a,-1!==t.indexOf(o)?a:i))&&(t[r]=n.replaceShape(e))}))}),!0)}function Iu(e,t){return!so(e)&&vr(e,"bpmn:BoundaryEvent")&&!t}function zu(e,t,n){function i(e,i,r){var o,a,s,c,p,l,u,h,f=i.waypoints,m=e.outgoing.slice(),v=e.incoming.slice(),y=Is(f,h=d(r.width)?cn(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,1!==o.length&&Fu(e,o[o.length-1])||o.push($u(s)),1!==a.length&&Fu(e,a[0])||a.unshift($u(s))}c=i.source,p=i.target,t.canConnect(c,e,i)&&(n.reconnectEnd(i,e,o||h),l=i),t.canConnect(e,p,i)&&(l?u=n.connect(e,p,{type:i.type,waypoints:a}):(n.reconnectStart(i,e,a||h),u=i));var b=[].concat(l&&g(v,(function(e){return e.source===l.source}))||[],u&&g(m,(function(e){return e.target===u.target}))||[]);b.length&&n.removeElements(b)}Wo.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=cn(o),s={x:a.x+r.x,y:a.y+r.y},c=y(n.children,(function(e){return t.canInsert(i,e)&&Is(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 Fu(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 $u(e){return F({},e)}function Hu(e,t){Wo.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||vr(i,"bpmn:EventBasedGateway")&&r.incoming.length&&o.filter(Gu).forEach((function(e){t.removeConnection(e)}))})),this.preExecuted("shape.replace",(function(e){var n=e.context.newShape;vr(n,"bpmn:EventBasedGateway")&&n.outgoing.filter(Gu).map((function(e){return e.target})).reduce((function(e,t){var n=t.incoming.filter(Gu);return e.concat(n)}),[]).forEach((function(e){e.source!==n&&t.removeConnection(e)}))}))}function Gu(e){return vr(e,"bpmn:SequenceFlow")}Lu.$inject=["bpmnReplace","injector"],n(Lu,Wo),Lu.prototype.replaceShape=function(e){var t,n,i=(n=gr(e).eventDefinitions)&&n[0];return t=i?{type:"bpmn:IntermediateCatchEvent",eventDefinitionType:i.$type}:{type:"bpmn:IntermediateThrowEvent"},this._bpmnReplace.replaceElement(e,t,{layoutConnection:!1})},n(zu,Wo),zu.$inject=["eventBus","bpmnRules","modeling"],Hu.$inject=["eventBus","modeling"],n(Hu,Wo);var Wu=1500;function Vu(e,t,n){t.on(["create.hover","create.move","create.out","create.end","shape.move.hover","shape.move.move","shape.move.out","shape.move.end"],Wu,(function(t){var i=t.context.shape||t.shape,r=t.hover;vr(r,"bpmn:Lane")&&!yr(i,["bpmn:Lane","bpmn:Participant"])&&(t.hover=pl(r),t.hoverGfx=e.getGraphics(t.hover));var o=n.getRootElement();r!==o&&(i.labelTarget||vr(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"],Wu,(function(t){var n=t.hover;vr(n,"bpmn:Lane")&&(t.hover=pl(n)||n,t.hoverGfx=e.getGraphics(t.hover))})),t.on(["bendpoint.move.hover"],Wu,(function(t){var n=t.context,i=t.hover,r=n.type;vr(i,"bpmn:Lane")&&/reconnect/.test(r)&&(t.hover=pl(i)||i,t.hoverGfx=e.getGraphics(t.hover))})),t.on(["connect.start"],Wu,(function(e){var t=e.context,n=t.start;vr(n,"bpmn:Lane")&&(t.start=pl(n)||n)})),t.on("shape.move.start",2e3,(function(e){var t=e.shape;vr(t,"bpmn:Lane")&&(e.shape=pl(t)||t)}))}Vu.$inject=["elementRegistry","eventBus","canvas"];function Uu(e,t,n,i,r,o){function a(e){var n=gr(e).categoryValueRef;if(n){var i=n.$parent;n&&(mt(i.categoryValue,n),i&&!i.categoryValue.length&&function(e){mt(t.getDefinitions().get("rootElements"),e)}(i))}}r.invoke(Wo,this),this.executed("shape.delete",(function(e){var t,i=e.context.shape;if(vr(i,"bpmn:Group")){var r=gr(i).categoryValueRef,o=n.filter((function(e){return vr(e,"bpmn:Group")}));t=r,o.some((function(e){var n=gr(e);return n.categoryValueRef&&n.categoryValueRef===t}))||a(i)}})),this.reverted("shape.delete",(function(e){var n=e.context.shape;if(vr(n,"bpmn:Group")){var i=gr(n).categoryValueRef,r=t.getDefinitions(),o=i?i.$parent:null;vt(o.get("categoryValue"),i),vt(r.get("rootElements"),o)}})),this.execute("shape.create",(function(n){var i=gr(n.context.shape);if(vr(i,"bpmn:Group")&&!i.categoryValueRef){var r=cu(t.getDefinitions(),e);i.categoryValueRef=r}})),this.revert("shape.create",(function(e){var t=e.context.shape;vr(t,"bpmn:Group")&&(a(t),delete gr(t).categoryValueRef)})),i.on("moddleCopy.canCopyProperty",2e3,(function(n){var i,r=n.property;if(vr(r,"bpmn:CategoryValue"))return i=cu(t.getDefinitions(),e),o.copyElement(r,i)}))}function qu(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 Ku(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=qu(e,t,n,r),s=qu(e,t,n,o);i=a&&s?Yu(a,n)>Yu(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],cn(n.source)),t(i[i.length-1],i[i.length-2],cn(n.target)))}))}function Yu(e,t){return Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2))}function Xu(e){Wo.call(this,e);var t=["bpmn:Participant","bpmn:Lane"];this.executed(["shape.move","shape.create","shape.resize"],(function(e){var n=e.context.shape,i=gr(n),r=br(n);yr(i,t)&&!r.get("isHorizontal")&&r.set("isHorizontal",!0)}))}function Zu(e){return Math.sqrt(Math.pow(e.x,2)+Math.pow(e.y,2))}function Qu(e){return Math.atan((e[1].y-e[0].y)/(e[1].x-e[0].x))}function Ju(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 eh(e,t){var n=Ju(e,t);return Zu({x:n.x-e.x,y:n.y-e.y})}function th(e,t){return Zu({x:e.x-t.x,y:e.y-t.y})}Uu.$inject=["bpmnFactory","bpmnjs","elementRegistry","eventBus","injector","moddleCopy"],n(Uu,Wo),Ku.$inject=["eventBus"],Xu.$inject=["eventBus"],n(Xu,Wo);var nh=Math.sqrt,ih=Math.min,rh=Math.max,oh=Math.abs;function ah(e){return Math.pow(e,2)}function sh(e,t){return nh(ah(e.x-t.x)+ah(e.y-t.y))}function ch(e,t,n,i){var r=t.x-e.x,o=t.y-e.y,a=n.x-e.x,s=n.y-e.y,c=r*r+o*o,p=(r*a+o*s)/c,l=p*p-(a*a+s*s-i*i)/c;if(l<0&&l>-1e-6&&(l=0),l<0)return[];var u=nh(l),h=-p+u,d=-p-u,f={x:e.x-r*h,y:e.y-o*h};return 0===l?[f]:[f,{x:e.x-r*d,y:e.y-o*d}].filter((function(n){return function(e,t,n){return ph(e.x,t.x,n.x)&&ph(e.y,t.y,n.y)}(n,e,t)}))}function ph(e,t,n){return e>=ih(t,n)-lh&&e<=rh(t,n)+lh}var lh=.1;function uh(e,t){return oh(e.x-t.x)<=lh&&oh(e.y-t.y)<=lh}function hh(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,l,u,h,d,f=0;for(f=0;f<t.length-1;f++){if(uh(n=t[f],i=t[f+1])?s=[n]:(r=sh(e,n),o=sh(e,i),s=ch(n,i,e,ih(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:uh(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:sh(n,a)/sh(n,i)}),p=sh(c.position,e),(!u||l>p)&&(u=c,l=p)}return u}(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,l=i.bendpointMove.bendpointIndex;return 0===o?r:(r>=l&&(c=p?r+1:r-1),r<l&&(c=r,p&&"bendpoint"!==n.type&&l-1===r&&dh(t,l)<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 l,u,h=fh(n,c),d=fh(t,p),f=s.position,m=function(e,t){var n=th(e[0],e[1]),i=th(e[0],t);return 0===n?0:i/n}(h,f),v=(l=d,u=Qu(h),Qu(l)-u);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=dh(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 on({x:r=w+C.x-a.x,y:o=S+C.y-a.y})}function dh(e,t){var n=th(e[t-1],e[t]);return n/(n+th(e[t],e[t+1]))}function fh(e,t){return[e[t],e[t+1]]}function mh(e,t,n){var i=Ba(t),r=Ba(n),o=Na(e,i),a=o.x*(n.width/t.width),s=o.y*(n.height/t.height);return on({x:r.x+a,y:r.y+s})}function vh(e,t,n){var i=Ba(e),r=Ba(t),o=Ba(n),a=Na(e,i),s=Na(i,r),c=function(e,t,n){var i=an(t),r=an(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=pn(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},pn(n,a)!==s)return null;return o}(i,t,n);if(c)return c;var p=s.x*(n.width/t.width),l=s.y*(n.height/t.height),u=o.x+p,h=o.y+l;return on({x:u+a.x-e.x,y:h+a.y-e.y})}var yh={width:90,height:20},gh="name",bh="text";function xh(e,t,n,i){Wo.call(this,e),this.postExecute("element.updateProperties",(function(e){var n=e.context,r=n.element,o=n.properties;if(gh in o&&t.updateLabel(r,o.name),bh in o&&vr(r,"bpmn:TextAnnotation")){var a=i.getTextAnnotationBounds({x:r.x,y:r.y,width:r.width,height:r.height},o.text||"");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(!so(r)&&io(r)&&jr(r)){var a=ao(r),s=i.getExternalLabelBounds(yh,jr(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,r=i.shape,o=i.labelTarget;o&&vr(o,"bpmn:BaseElement")&&((t=br(o)).label||(t.label=n.create("bpmndi:BPMNLabel",{bounds:n.create("dc:Bounds")}),r.di=t),F(t.label.bounds,{x:r.x,y:r.y,width:r.width,height:r.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),hh(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=gr(n);r&&io(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(ro(r)){var s=r.label,c=_h(function(e,t){if(!t.length)return;var n=function(e,t){return M(t.map((function(t){return{line:t,distance:eh(e,t)}})),"distance")[0].line}(e,t);return Ju(e,n)}(cn(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 _h(e,t,n){return on(Na(mh(e,t,n),e))}function Eh(e,t,n){var i=Th(e),r=Ph(i,t),o=i[0];return r.length?r[r.length-1]:mh(o.original||o,n,t)}function wh(e,t,n){var i=Th(e),r=Ph(i,t),o=i[i.length-1];return r.length?r[0]:mh(o.original||o,n,t)}function Sh(e,t,n){var i=Th(e),r=Rh(t,n),o=i[0];return mh(o.original||o,r,t)}function Ch(e,t,n){var i=Th(e),r=Rh(t,n),o=i[i.length-1];return mh(o.original||o,r,t)}function Rh(e,t){return{x:e.x-t.x,y:e.y-t.y,width:e.width,height:e.height}}function Th(e){var t=e.waypoints;if(!t.length)throw new Error("connection#"+e.id+": no waypoints");return t}function Ph(e,t){return g(S(e,Ah),(function(e){return function(e,t){return"intersect"===pn(t,e,1)}(e,t)}))}function Ah(e){return e.original||e}function kh(e,t){Wo.call(this,e),this.postExecute("shape.replace",(function(e){var n=e.oldShape,i=e.newShape;if(function(e,t){return vr(e,"bpmn:Participant")&&Dr(e)&&vr(t,"bpmn:Participant")&&!Dr(t)}(n,i)){var r,o,a,s,c=(o=ct([r=n],!1),a=[],s=[],o.forEach((function(e){e!==r&&(e.incoming.forEach((function(e){vr(e,"bpmn:MessageFlow")&&a.push(e)})),e.outgoing.forEach((function(e){vr(e,"bpmn:MessageFlow")&&s.push(e)})))}),[]),{incoming:a,outgoing:s});c.incoming.forEach((function(e){var r=wh(e,i,n);t.reconnectEnd(e,i,r)})),c.outgoing.forEach((function(e){var r=Eh(e,i,n);t.reconnectStart(e,i,r)}))}}),!0)}n(xh,Wo),xh.$inject=["eventBus","modeling","bpmnFactory","textRenderer"],kh.$inject=["eventBus","modeling"],n(kh,Wo);function Mh(e,t,n){e.on(["shape.move.rejected","create.rejected"],(function(e){var i,r,o,a=e.context,s=a.shape;vr(a.target,"bpmn:Collaboration")&&vr(s,"bpmn:FlowNode")&&(i=e,r=n("flow elements must be children of pools/participants"),t.add({position:{x:i.x+5,y:i.y+5},type:"error",timeout:o||2e3,html:"<div>"+r+"</div>"}))}))}function Dh(e,t){Wo.call(this,e),this.preExecute("shape.resize",(function(e){var n=e.shape,i=br(n),r=i&&i.get("label");r&&r.get("bounds")&&t.updateModdleProperties(n,r,{bounds:void 0})}),!0)}function Bh(e,t,n){Wo.call(this,e),this.preExecute("shape.delete",(function(e){var i=e.context.shape;if(1===i.incoming.length&&1===i.outgoing.length){var r=i.incoming[0],o=i.outgoing[0];if(vr(r,"bpmn:SequenceFlow")&&vr(o,"bpmn:SequenceFlow")&&t.canConnect(r.source,o.target,r)){var a=function(e,t){var n=qu(Nh(e[e.length-2]),Nh(e[e.length-1]),Nh(t[1]),Nh(t[0]));return n?[].concat(e.slice(0,e.length-1),[n],t.slice(1)):[Nh(e[0]),Nh(t[t.length-1])]}(r.waypoints,o.waypoints);n.reconnectEnd(r,o.target,a)}}}))}function Nh(e){return e.original||e}function Oh(e,t){Wo.call(this,e),this.preExecute("shape.delete",(function(e){var t=e.shape,n=t.parent;vr(t,"bpmn:Participant")&&(e.collaborationRoot=n)}),!0),this.postExecute("shape.delete",(function(e){var n=e.collaborationRoot;n&&!n.businessObject.participants.length&&t.makeProcess()}),!0)}function jh(e,t,n,i){Wo.call(this,e);var r=i.get("dragging",!1);function o(e){var i,r,o=e.source,a=e.target;e.parent&&(vr(e,"bpmn:SequenceFlow")&&(n.canConnectSequenceFlow(o,a)||(r=!0),n.canConnectMessageFlow(o,a)&&(i="bpmn:MessageFlow")),vr(e,"bpmn:MessageFlow")&&(n.canConnectMessageFlow(o,a)||(r=!0),n.canConnectSequenceFlow(o,a)&&(i="bpmn:SequenceFlow")),vr(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;if(!o||!o.length)return;if(-1===(n=o.indexOf(e)))return;o.splice(n,1,t)}(s,o))})),this.postExecuted("element.updateProperties",(function(e){var n,i=e.context,r=i.properties,o=i.element,a=o.businessObject;r.default&&(n=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 Lh(e,t,n,i,r,o){i.invoke(Wo,this),this._bpmnReplace=e,this._elementRegistry=n,this._selection=o,this.postExecuted(["elements.create"],500,(function(e){var n=e.context,i=n.parent,r=n.elements,o=t.canReplace(r,i);o&&this.replaceElements(r,o.replacements)}),this),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=Br(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})}))}Mh.$inject=["eventBus","tooltips","translate"],n(Dh,Wo),Dh.$inject=["eventBus","modeling"],n(Bh,Wo),Bh.$inject=["eventBus","bpmnRules","modeling"],Oh.$inject=["eventBus","modeling"],n(Oh,Wo),n(jh,Wo),jh.$inject=["eventBus","modeling","bpmnRules","injector"],n(Lh,Wo),Lh.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)},Lh.$inject=["bpmnReplace","bpmnRules","elementRegistry","injector","modeling","selection"];var Ih=300,zh=60,Fh={width:300,height:150},$h={width:140,height:120},Hh={width:50,height:30};function Gh(e){e.on("resize.start",1500,(function(e){var t=e.context,n=t.shape,i=t.direction,r=t.balanced;(vr(n,"bpmn:Lane")||vr(n,"bpmn:Participant"))&&(t.resizeConstraints=function(e,t,n){var i=pl(e),r=!0,o=!0,a=sl(i,[i]),s=an(e),c={},p={};/e/.test(t)?p.right=s.left+Ih:/w/.test(t)&&(p.left=s.right-Ih);return a.forEach((function(e){var i=an(e);/n/.test(t)&&(i.top<s.top-10&&(r=!1),n&&Wh(s.top-i.bottom)<10&&Yh(c,"top",i.top+zh),Wh(s.top-i.top)<5&&Kh(p,"top",i.bottom-zh)),/s/.test(t)&&(i.bottom>s.bottom+10&&(o=!1),n&&Wh(s.bottom-i.top)<10&&Kh(c,"bottom",i.bottom-zh),Wh(s.bottom-i.bottom)<5&&Yh(p,"bottom",i.top+zh))})),i.children.filter((function(e){return!e.hidden&&!e.waypoints&&(vr(e,"bpmn:FlowElement")||vr(e,"bpmn:Artifact"))})).forEach((function(e){var n=an(e);r&&/n/.test(t)&&Kh(p,"top",n.top-20),/e/.test(t)&&Yh(p,"right",n.right+20),o&&/s/.test(t)&&Yh(p,"bottom",n.bottom+20),/w/.test(t)&&Kh(p,"left",n.left-50)})),{min:p,max:c}}(n,i,r)),vr(n,"bpmn:Participant")&&(t.minDimensions=Fh),vr(n,"bpmn:SubProcess")&&Dr(n)&&(t.minDimensions=$h),vr(n,"bpmn:TextAnnotation")&&(t.minDimensions=Hh)}))}Gh.$inject=["eventBus"];var Wh=Math.abs,Vh=Math.min,Uh=Math.max;function qh(e,t,n,i){var r=e[t];e[t]=void 0===r?n:i(n,r)}function Kh(e,t,n){return qh(e,t,n,Vh)}function Yh(e,t,n){return qh(e,t,n,Uh)}function Xh(e,t){e.on("resize.start",1501,(function(e){var t=e.context,n=t.shape;(vr(n,"bpmn:Lane")||vr(n,"bpmn:Participant"))&&(t.balanced=!xo(e))})),e.on("resize.end",1001,(function(e){var n=e.context,i=n.shape,r=n.canExecute,o=n.newBounds;if(vr(i,"bpmn:Lane")||vr(i,"bpmn:Participant"))return r&&(o=rn(o),t.resizeLane(i,o,n.balanced)),!1}))}Xh.$inject=["eventBus","modeling"];function Zh(e,t,n,i,r){function o(e){return yr(e,["bpmn:ReceiveTask","bpmn:SendTask"])||function(e,t){u(t)||(t=[t]);return w(t,(function(t){return Nr(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 vr(e,"bpmn:ErrorEventDefinition")?"errorRef":vr(e,"bpmn:EscalationEventDefinition")?"escalationRef":vr(e,"bpmn:MessageEventDefinition")?"messageRef":vr(e,"bpmn:SignalEventDefinition")?"signalRef":void 0}function c(e){if(yr(e,["bpmn:ReceiveTask","bpmn:SendTask"]))return e.get("messageRef");var t=e.get("eventDefinitions")[0];return t.get(s(t))}n.invoke(Wo,this),this.executed("shape.create",(function(t){var n=t.shape;if(o(n)){var i=c(gr(n));i&&!a(i)&&(vt(e.getDefinitions().get("rootElements"),i),t.addedRootElement=i)}}),!0),this.reverted("shape.create",(function(t){var n=t.addedRootElement;n&&mt(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(gr(n));i&&(t.referencedRootElement=i)}})),t.on("copyPaste.pasteElement",500,(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(yr(e,["bpmn:ReceiveTask","bpmn:SendTask"]))return e.set("messageRef",t);var n=e.get("eventDefinitions")[0];n.set(s(n),t)}(n,c))}}))}Zh.$inject=["bpmnjs","eventBus","injector","moddleCopy","bpmnFactory"],n(Zh,Wo);var Qh=Math.max;function Jh(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;vr(e,"bpmn:Participant")&&(!function(e){return"x"===e}(n)?r[t]={width:Fh.width,height:ed(e,i)}:r[t]=Fh),vr(e,"bpmn:SubProcess")&&Dr(e)&&(r[t]=$h),vr(e,"bpmn:TextAnnotation")&&(r[t]=Hh)})),r}))}function ed(e,t){var n;return cl(e).length?(n=function(e,t){var n,i=cl(e);return n=td(i,t),e.height-n.height+zh}(e,t),Qh(Fh.height,n)):Fh.height}function td(e,t){var n,i,r;for(n=0;n<e.length;n++)if(t>=(i=e[n]).y&&t<=i.y+i.height)return(r=cl(i)).length?td(r,t):i}Jh.$inject=["eventBus"];var nd=180,id=160;function rd(e,t,n,i,r,o,a){Wo.call(this,t),this._canvas=e,this._eventBus=t,this._modeling=n,this._elementFactory=i,this._bpmnFactory=r,this._bpmnjs=o,this._elementRegistry=a;var s=this;function c(e){return vr(e,"bpmn:SubProcess")&&!Dr(e)}function p(t){var n=t.shape,i=t.newRootElement,r=gr(n);i=s._addDiagram(i||r),t.newRootElement=e.addRootElement(i)}function l(t){var n=gr(t.shape);s._removeDiagram(n);var i=t.newRootElement=a.get(Jo(n));e.removeRootElement(i)}this.executed("shape.create",(function(e){c(e.shape)&&p(e)}),!0),this.postExecuted("shape.create",(function(e){var t=e.shape,n=e.newRootElement;n&&t.children&&(s._showRecursively(t.children),s._moveChildrenToShape(t,n))}),!0),this.reverted("shape.create",(function(e){c(e.shape)&&l(e)}),!0),this.preExecuted("shape.delete",(function(e){var t=e.shape;if(c(t)){var i=a.get(Jo(t));i&&n.removeElements(i.children.slice())}}),!0),this.executed("shape.delete",(function(e){c(e.shape)&&l(e)}),!0),this.reverted("shape.delete",(function(e){c(e.shape)&&p(e)}),!0),this.preExecuted("shape.replace",(function(t){var n=t.oldShape,i=t.newShape;c(n)&&c(i)&&(t.oldRoot=e.removeRootElement(Jo(n)))}),!0),this.postExecuted("shape.replace",(function(t){var i=t.newShape,r=t.oldRoot,o=e.findRoot(Jo(i));if(r&&o){var a=r.children;n.moveElements(a,{x:0,y:0},o)}}),!0),this.executed("element.updateProperties",(function(e){var t=e.element;if(vr(t,"bpmn:SubProcess")){var n=e.properties,i=e.oldProperties.id,r=n.id;if(i!==r){if(ta(t))return a.updateId(t,ea(r)),void a.updateId(i,r);a.get(ea(i))&&a.updateId(ea(i),ea(r))}}}),!0),this.reverted("element.updateProperties",(function(e){var t=e.element;if(vr(t,"bpmn:SubProcess")){var n=e.properties,i=e.oldProperties.id,r=n.id;if(i!==r){if(ta(t))return a.updateId(t,ea(i)),void a.updateId(r,i);var o=a.get(ea(r));o&&a.updateId(o,ea(i))}}}),!0),t.on("element.changed",(function(e){var n=e.element;if(ta(n)){var i=n,r=a.get(Qo(i));r&&r!==i&&t.fire("element.changed",{element:r})}})),this.executed("shape.toggleCollapse",400,(function(e){var t=e.shape;vr(t,"bpmn:SubProcess")&&(Dr(t)?l(e):(p(e),s._showRecursively(t.children)))}),!0),this.reverted("shape.toggleCollapse",400,(function(e){var t=e.shape;vr(t,"bpmn:SubProcess")&&(Dr(t)?l(e):(p(e),s._showRecursively(t.children)))}),!0),this.postExecuted("shape.toggleCollapse",600,(function(e){var t=e.shape;if(vr(t,"bpmn:SubProcess")){var n=e.newRootElement;n&&(Dr(t)?s._moveChildrenToShape(n,t):s._moveChildrenToShape(t,n))}}),!0),t.on("copyPaste.createTree",(function(e){var t=e.element,n=e.children;if(c(t)){var i=Jo(t),r=a.get(i);r&&n.push.apply(n,r.children)}})),t.on("copyPaste.copyElement",(function(e){var t=e.descriptor,n=e.element,i=e.elements,r=n.parent;if(vr(br(r),"bpmndi:BPMNPlane")){var o=Qo(r),a=y(i,(function(e){return e.id===o}));a&&(t.parent=a.id)}})),t.on("copyPaste.pasteElement",(function(e){var t=e.descriptor;t.parent&&(c(t.parent)||t.parent.hidden)&&(t.hidden=!0)}))}function od(e,t){e.invoke(Wo,this),this.postExecuted("shape.replace",(function(e){var n=e.context.oldShape,i=e.context.newShape;if(vr(i,"bpmn:SubProcess")&&(vr(n,"bpmn:Task")||vr(n,"bpmn:CallActivity"))&&Dr(i)){var r,o={x:(r=i).x+r.width/6,y:r.y+r.height/2};t.createShape({type:"bpmn:StartEvent"},o,i)}}))}function ad(e,t){Wo.call(this,e),this.postExecuted("shape.toggleCollapse",1500,(function(e){var n=e.shape;if(!Dr(n)){var i=ct(n);i.forEach((function(e){var t=e.incoming.slice(),n=e.outgoing.slice();b(t,(function(e){r(e,!0)})),b(n,(function(e){r(e,!1)}))}))}function r(e,r){-1!==i.indexOf(e.source)&&-1!==i.indexOf(e.target)||(r?t.reconnectEnd(e,n,cn(n)):t.reconnectStart(e,n,cn(n)))}}),!0)}n(rd,Wo),rd.prototype._moveChildrenToShape=function(e,t){var n,i=this._modeling,r=e.children;if(r){var o=r.filter((function(e){return!e.hidden}));if(o.length){var a=pt(o);if(t.x){var s=cn(t),c=cn(a);n={x:s.x-c.x,y:s.y-c.y}}else n={x:nd-a.x,y:id-a.y};i.moveElements(r,n,t,{autoResize:!1})}else i.moveElements(r,{x:0,y:0},t,{autoResize:!1})}},rd.prototype._showRecursively=function(e,t){var n=this,i=[];return e.forEach((function(e){e.hidden=!!t,i=i.concat(e),e.children&&(i=i.concat(n._showRecursively(e.children,e.collapsed||t)))})),i},rd.prototype._addDiagram=function(e){var t=this._bpmnjs.getDefinitions().diagrams;return e.businessObject||(e=this._createNewDiagram(e)),t.push(e.di.$parent),e},rd.prototype._createNewDiagram=function(e){var t=this._bpmnFactory,n=this._elementFactory,i=t.create("bpmndi:BPMNPlane",{bpmnElement:e}),r=t.create("bpmndi:BPMNDiagram",{plane:i});return i.$parent=r,n.createRoot({id:Jo(e),type:e.$type,di:i,businessObject:e,collapsed:!0})},rd.prototype._removeDiagram=function(e){var t=this._bpmnjs.getDefinitions().diagrams,n=y(t,(function(t){return t.plane.bpmnElement.id===e.id}));return t.splice(t.indexOf(n),1),n},rd.$inject=["canvas","eventBus","modeling","elementFactory","bpmnFactory","bpmnjs","elementRegistry"],od.$inject=["injector","modeling"],n(od,Wo),n(ad,Wo),ad.$inject=["eventBus","modeling"];function sd(e,t,n,i){Wo.call(this,e),this.executed(["shape.toggleCollapse"],500,(function(e){var t,n=e.context.shape;vr(n,"bpmn:SubProcess")&&(n.collapsed?br(n).isExpanded=!1:((t=n.children).length&&t.forEach((function(e){"label"!==e.type||e.businessObject.name||(e.hidden=!0)})),br(n).isExpanded=!0))})),this.reverted(["shape.toggleCollapse"],500,(function(e){var t=e.context.shape;t.collapsed?br(t).isExpanded=!1:br(t).isExpanded=!0})),this.postExecuted(["shape.toggleCollapse"],500,(function(e){var i,r=e.context.shape,o=t.getDefaultSize(r);i=r.collapsed?function(e,t){return{x:e.x+(e.width-t.width)/2,y:e.y+(e.height-t.height)/2,width:t.width,height:t.height}}(r,o):function(e,t){var n,i,r=e.children,o=t;return(n=il((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 cd(e,t,n,i){t.invoke(Wo,this),this.preExecute("shape.delete",(function(e){var t=e.context.shape,r=t.businessObject;so(t)||(vr(t,"bpmn:Participant")&&Dr(t)&&n.ids.unclaim(r.processRef.id),i.unclaimId(r.id,r))})),this.preExecute("connection.delete",(function(e){var t=e.context.connection.businessObject;i.unclaimId(t.id,t)})),this.preExecute("canvas.updateRoot",(function(){var t=e.getRootElement(),i=t.businessObject;vr(t,"bpmn:Collaboration")&&n.ids.unclaim(i.id)}))}function pd(e,t){Wo.call(this,e),this.preExecute("connection.delete",(function(e){var n=e.context.connection,i=n.source;(function(e,t){if(!vr(e,"bpmn:SequenceFlow"))return!1;var n=gr(t),i=gr(e);return n.get("default")===i})(n,i)&&t.updateProperties(i,{default:null})}))}n(sd,Wo),sd.$inject=["eventBus","elementFactory","modeling"],n(cd,Wo),cd.$inject=["canvas","injector","moddle","modeling"],n(pd,Wo),pd.$inject=["eventBus","modeling"];function ld(e,t,n){var i;function r(){if(!i)throw new Error(n("out of bounds release"));return i}Wo.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,5e3,(function(e){(i=i||new ud).enter()})),this.postExecuted(o,500,(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||(vr(t,"bpmn:Lane")&&n.addLane(t),vr(t,"bpmn:FlowNode")&&n.addFlowNode(t))}))}function ud(){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}}ld.$inject=["eventBus","modeling","translate"],n(ld,Wo);var hd={__init__:["adaptiveLabelPositioningBehavior","appendBehavior","associationBehavior","attachEventBehavior","boundaryEventBehavior","createBehavior","createDataObjectBehavior","createParticipantBehavior","dataInputAssociationBehavior","dataStoreBehavior","deleteLaneBehavior","detachEventBehavior","dropOnFlowBehavior","eventBasedGatewayBehavior","fixHoverBehavior","groupBehavior","importDockingFix","isHorizontalFix","labelBehavior","messageFlowBehavior","modelingFeedback","removeElementBehavior","removeEmbeddedLabelBoundsBehavior","removeParticipantBehavior","replaceConnectionBehavior","replaceElementBehaviour","resizeBehavior","resizeLaneBehavior","rootElementReferenceBehavior","spaceToolBehavior","subProcessPlaneBehavior","subProcessStartEventBehavior","toggleCollapseConnectionBehaviour","toggleElementCollapseBehaviour","unclaimIdBehavior","updateFlowNodeRefsBehavior","unsetDefaultFlowBehavior"],adaptiveLabelPositioningBehavior:["type",gu],appendBehavior:["type",xu],associationBehavior:["type",_u],attachEventBehavior:["type",Eu],boundaryEventBehavior:["type",Su],createBehavior:["type",Cu],createDataObjectBehavior:["type",Ru],createParticipantBehavior:["type",ku],dataInputAssociationBehavior:["type",Du],dataStoreBehavior:["type",Ou],deleteLaneBehavior:["type",ju],detachEventBehavior:["type",Lu],dropOnFlowBehavior:["type",zu],eventBasedGatewayBehavior:["type",Hu],fixHoverBehavior:["type",Vu],groupBehavior:["type",Uu],importDockingFix:["type",Ku],isHorizontalFix:["type",Xu],labelBehavior:["type",xh],messageFlowBehavior:["type",kh],modelingFeedback:["type",Mh],removeElementBehavior:["type",Bh],removeEmbeddedLabelBoundsBehavior:["type",Dh],removeParticipantBehavior:["type",Oh],replaceConnectionBehavior:["type",jh],replaceElementBehaviour:["type",Lh],resizeBehavior:["type",Gh],resizeLaneBehavior:["type",Xh],rootElementReferenceBehavior:["type",Zh],spaceToolBehavior:["type",Jh],subProcessPlaneBehavior:["type",rd],subProcessStartEventBehavior:["type",od],toggleCollapseConnectionBehaviour:["type",ad],toggleElementCollapseBehaviour:["type",sd],unclaimIdBehavior:["type",cd],unsetDefaultFlowBehavior:["type",pd],updateFlowNodeRefsBehavior:["type",ld]};function dd(e,t){var n=pn(e,t,-15);return"intersect"!==n?n:null}function fd(e){xs.call(this,e)}function md(e){return!e||so(e)}function vd(e){do{if(vr(e,"bpmn:Process"))return gr(e);if(vr(e,"bpmn:Participant"))return gr(e).processRef||gr(e)}while(e=e.parent)}function yd(e){return vr(e,"bpmn:TextAnnotation")}function gd(e){return vr(e,"bpmn:Group")&&!e.labelTarget}function bd(e){return vr(e,"bpmn:BoundaryEvent")&&Ed(e,"bpmn:CompensateEventDefinition")}function xd(e){return gr(e).isForCompensation}function _d(e){for(var t=e;t=t.parent;){if(vr(t,"bpmn:FlowElementsContainer"))return gr(t);if(vr(t,"bpmn:Participant"))return gr(t).processRef}return null}function Ed(e,t){return!!y(gr(e).eventDefinitions||[],(function(e){return vr(e,t)}))}function wd(e,t){return(gr(e).eventDefinitions||[]).every((function(e){return vr(e,t)}))}function Sd(e){return vr(e,"bpmn:ReceiveTask")||vr(e,"bpmn:IntermediateCatchEvent")&&(Ed(e,"bpmn:MessageEventDefinition")||Ed(e,"bpmn:TimerEventDefinition")||Ed(e,"bpmn:ConditionalEventDefinition")||Ed(e,"bpmn:SignalEventDefinition"))}function Cd(e){return e.waypoints}function Rd(e,t){return-1!==function(e){for(var t=[];e;)(e=e.parent)&&t.push(e);return t}(t).indexOf(e)}function Td(e,t,n){if(md(e)||md(t))return null;if(!vr(n,"bpmn:DataAssociation")){if(Fd(e,t))return{type:"bpmn:MessageFlow"};if($d(e,t))return{type:"bpmn:SequenceFlow"}}var i=Hd(e,t);return i||(bd(e)&&xd(t)?{type:"bpmn:Association",associationDirection:"One"}:!!zd(e,t)&&{type:"bpmn:Association"})}function Pd(e,t,n){return!(!so(e)&&!gd(e))||!(vr(t,"bpmn:Participant")&&!Dr(t))&&(vr(e,"bpmn:Participant")?vr(t,"bpmn:Process")||vr(t,"bpmn:Collaboration"):yr(e,["bpmn:DataInput","bpmn:DataOutput"])&&e.parent?t===e.parent:vr(e,"bpmn:Lane")?vr(t,"bpmn:Participant")||vr(t,"bpmn:Lane"):!(vr(e,"bpmn:BoundaryEvent")&&(i=e,!gr(i).cancelActivity||!Md(i)&&!Dd(i)))&&(vr(e,"bpmn:FlowElement")&&!vr(e,"bpmn:DataStoreReference")?vr(t,"bpmn:FlowElementsContainer")?Dr(t):yr(t,["bpmn:Participant","bpmn:Lane"]):vr(e,"bpmn:DataStoreReference")&&vr(t,"bpmn:Collaboration")?w(gr(t).get("participants"),(function(e){return!!e.get("processRef")})):yr(e,["bpmn:Artifact","bpmn:DataAssociation","bpmn:DataStoreReference"])?yr(t,["bpmn:Collaboration","bpmn:Lane","bpmn:Participant","bpmn:Process","bpmn:SubProcess"]):!!vr(e,"bpmn:MessageFlow")&&(vr(t,"bpmn:Collaboration")||e.source.parent==t||e.target.parent==t)));var i}function Ad(e){return vr(e,"bpmn:Lane")}function kd(e){return!!function(e){return!so(e)&&vr(e,"bpmn:BoundaryEvent")}(e)||(!(!vr(e,"bpmn:IntermediateThrowEvent")||!Md(e))||vr(e,"bpmn:IntermediateCatchEvent")&&Dd(e))}function Md(e){var t=gr(e);return t&&!(t.eventDefinitions&&t.eventDefinitions.length)}function Dd(e){return Bd(e,["bpmn:MessageEventDefinition","bpmn:TimerEventDefinition","bpmn:SignalEventDefinition","bpmn:ConditionalEventDefinition"])}function Bd(e,t){return t.some((function(t){return Ed(e,t)}))}function Nd(e,t,n,i){if(Array.isArray(e)||(e=[e]),1!==e.length)return!1;var r=e[0];return!so(r)&&(!!kd(r)&&(!Br(t)&&(!(!vr(t,"bpmn:Activity")||xd(t))&&(!(i&&!dd(i,t))&&(!function(e){return vr(e,"bpmn:ReceiveTask")&&y(e.incoming,(function(e){return vr(e.source,"bpmn:EventBasedGateway")}))}(t)&&"attach")))))}function Od(e,t,n){if(!t)return!1;var i={replacements:[]};return b(e,(function(e){Br(t)||vr(e,"bpmn:StartEvent")&&"label"!==e.type&&Pd(e,t)&&(function(e){return e&&!1!==gr(e).isInterrupting}(e)||i.replacements.push({oldElementId:e.id,newElementType:"bpmn:StartEvent"}),(function(e){return Nr(e,"bpmn:ErrorEventDefinition")}(e)||function(e){return Nr(e,"bpmn:EscalationEventDefinition")}(e)||function(e){return Nr(e,"bpmn:CompensateEventDefinition")}(e))&&i.replacements.push({oldElementId:e.id,newElementType:"bpmn:StartEvent"}),Bd(e,["bpmn:MessageEventDefinition","bpmn:TimerEventDefinition","bpmn:SignalEventDefinition","bpmn:ConditionalEventDefinition"])&&vr(t,"bpmn:SubProcess")&&i.replacements.push({oldElementId:e.id,newElementType:"bpmn:StartEvent"})),vr(t,"bpmn:Transaction")||Ed(e,"bpmn:CancelEventDefinition")&&"label"!==e.type&&(vr(e,"bpmn:EndEvent")&&Pd(e,t)&&i.replacements.push({oldElementId:e.id,newElementType:"bpmn:EndEvent"}),vr(e,"bpmn:BoundaryEvent")&&Nd(e,t,0,n)&&i.replacements.push({oldElementId:e.id,newElementType:"bpmn:BoundaryEvent"}))})),!!i.replacements.length&&i}function jd(e,t){return!w(e,Ad)&&(!t||e.every((function(e){return Pd(e,t)})))}function Ld(e,t,n,i){return!!t&&(!(!so(e)&&!gd(e))||n!==t&&((!n||!Rd(n,t))&&(Pd(e,t)||Gd(e,t))))}function Id(e,t){return vr(e,"bpmn:SubProcess")?Dr(e)&&(!t||t.width>=100&&t.height>=80):vr(e,"bpmn:Lane")?!t||t.width>=130&&t.height>=60:vr(e,"bpmn:Participant")?!t||t.width>=250&&t.height>=50:!!yd(e)||!!gd(e)}function zd(e,t){return!Cd(e)&&!Cd(t)&&(!(!bd(e)||!xd(t))||!Rd(t,e)&&!Rd(e,t)&&(!!function(e,t){var n=yd(e),i=yd(t);return(n||i)&&n!==i}(e,t)||!!Hd(e,t)))}function Fd(e,t){return!(Ud(e)&&!Ud(t))&&(vr(i=e,"bpmn:InteractionNode")&&!vr(i,"bpmn:BoundaryEvent")&&(!vr(i,"bpmn:Event")||vr(i,"bpmn:ThrowEvent")&&wd(i,"bpmn:MessageEventDefinition"))&&function(e){return vr(e,"bpmn:InteractionNode")&&!xd(e)&&(!vr(e,"bpmn:Event")||vr(e,"bpmn:CatchEvent")&&wd(e,"bpmn:MessageEventDefinition"))&&!(vr(e,"bpmn:BoundaryEvent")&&!Ed(e,"bpmn:MessageEventDefinition"))}(t)&&(n=t,!(vd(e)===vd(n))));var n,i}function $d(e,t){return!(Sd(t)&&t.incoming.length>0&&(n=t.incoming,(n=n||[]).some(Vd))&&!vr(e,"bpmn:EventBasedGateway"))&&(vr(r=e,"bpmn:FlowNode")&&!vr(r,"bpmn:EndEvent")&&!Br(r)&&!(vr(r,"bpmn:IntermediateThrowEvent")&&Ed(r,"bpmn:LinkEventDefinition"))&&!bd(r)&&!xd(r)&&function(e){return vr(e,"bpmn:FlowNode")&&!vr(e,"bpmn:StartEvent")&&!vr(e,"bpmn:BoundaryEvent")&&!Br(e)&&!(vr(e,"bpmn:IntermediateCatchEvent")&&Ed(e,"bpmn:LinkEventDefinition"))&&!xd(e)}(t)&&(i=t,_d(e)===_d(i))&&!(vr(e,"bpmn:EventBasedGateway")&&!Sd(t)));var n,i,r}function Hd(e,t){return yr(e,["bpmn:DataObjectReference","bpmn:DataStoreReference"])&&yr(t,["bpmn:Activity","bpmn:ThrowEvent"])?{type:"bpmn:DataInputAssociation"}:!(!yr(t,["bpmn:DataObjectReference","bpmn:DataStoreReference"])||!yr(e,["bpmn:Activity","bpmn:CatchEvent"]))&&{type:"bpmn:DataOutputAssociation"}}function Gd(e,t,n){if(!t)return!1;if(Array.isArray(e)){if(1!==e.length)return!1;e=e[0]}return t.source!==e&&t.target!==e&&(yr(t,["bpmn:SequenceFlow","bpmn:MessageFlow"])&&!so(t)&&vr(e,"bpmn:FlowNode")&&!vr(e,"bpmn:BoundaryEvent")&&Pd(e,t.parent))}function Wd(e,t){return!!so(t)||!(vr(t,"bpmn:Lane")&&!function(e,t){return e&&t&&-1!==e.indexOf(t)}(e,t.parent))}function Vd(e){if(e&&e.source)return vr(e.source,"bpmn:EventBasedGateway")}function Ud(e){return ds(e,"bpmn:Process")||ds(e,"bpmn:Collaboration")}n(fd,xs),fd.$inject=["eventBus"],fd.prototype.init=function(){this.addRule("connection.start",(function(e){return function(e){if(md(e))return null;return yr(e,["bpmn:FlowNode","bpmn:InteractionNode","bpmn:DataObjectReference","bpmn:DataStoreReference","bpmn:Group","bpmn:TextAnnotation"])}(e.source)})),this.addRule("connection.create",(function(e){var t=e.source,n=e.target,i=e.hints||{},r=i.targetParent;if(i.targetAttach)return!1;r&&(n.parent=r);try{return Td(t,n)}finally{r&&(n.parent=null)}})),this.addRule("connection.reconnect",(function(e){var t=e.connection;return Td(e.source,e.target,t)})),this.addRule("connection.updateWaypoints",(function(e){return{type:e.connection.type}})),this.addRule("shape.resize",(function(e){return Id(e.shape,e.newBounds)})),this.addRule("elements.create",(function(e){var t=e.elements,n=e.position,i=e.target;return!(Cd(i)&&!Gd(t,i))&&E(t,(function(e){return Cd(e)?Td(e.source,e.target,e):e.host?Nd(e,e.host,null,n):Ld(e,i,null)}))})),this.addRule("elements.move",(function(e){var t=e.target,n=e.shapes,i=e.position;return Nd(n,t,null,i)||Od(n,t,i)||jd(n,t)||Gd(n,t)})),this.addRule("shape.create",(function(e){return Ld(e.shape,e.target,e.source,e.position)})),this.addRule("shape.attach",(function(e){return Nd(e.shape,e.target,null,e.position)})),this.addRule("element.copy",(function(e){var t=e.element;return Wd(e.elements,t)}))},fd.prototype.canConnectMessageFlow=Fd,fd.prototype.canConnectSequenceFlow=$d,fd.prototype.canConnectDataAssociation=Hd,fd.prototype.canConnectAssociation=zd,fd.prototype.canMove=jd,fd.prototype.canAttach=Nd,fd.prototype.canReplace=Od,fd.prototype.canDrop=Pd,fd.prototype.canInsert=Gd,fd.prototype.canCreate=Ld,fd.prototype.canConnect=Td,fd.prototype.canResize=Id,fd.prototype.canCopy=Wd;var qd={__depends__:[Os],__init__:["bpmnRules"],bpmnRules:["type",fd]};function Kd(e,t){e.on("saveXML.start",2e3,(function(){b(t.getRootElements(),(function(e){var t,n=br(e);t=S(g(ct([e],!1),(function(t){return t!==e&&!t.labelTarget})),br),n.set("planeElement",t)}))}))}Kd.$inject=["eventBus","canvas"];var Yd={__init__:["bpmnDiOrdering"],bpmnDiOrdering:["type",Kd]};function Xd(e){Wo.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 Zd(e,t,n){Xd.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:FlowElementsContainer"]}},{type:"bpmn:MessageFlow",order:{level:9,containers:["bpmn:Collaboration"]}},{type:"bpmn:Association",order:{level:6,containers:["bpmn:Participant","bpmn:FlowElementsContainer","bpmn:Collaboration"]}},{type:"bpmn:BoundaryEvent",order:{level:8}},{type:"bpmn:Group",order:{level:10,containers:["bpmn:Collaboration","bpmn:FlowElementsContainer"]}},{type:"bpmn:FlowElement",order:{level:5}},{type:"bpmn:Participant",order:{level:-2}},{type:"bpmn:Lane",order:{level:-1}}];function r(e){var t=e.order;if(t||(e.order=t=function(e){if(e.labelTarget)return{level:10};var t=y(i,(function(t){return yr(e,[t.type])}));return t&&t.order||{level:1}}(e)),!t)throw new Error("no order for <"+e.id+">");return t}this.getOrdering=function(e,n){if(e.labelTarget)return{parent:t.findRoot(n)||t.getRootElement(),index:-1};var i=r(e);i.containers&&(n=function(e,t,n){for(var i=t;i&&!yr(i,n);)i=i.parent;if(!i)throw new Error("no parent for <"+e.id+"> in <"+(t&&t.id)+">");return i}(e,n,i.containers));var o=n.children.indexOf(e),a=function(e,t){t=N(t);var n=u(e)?-1:void 0;return b(e,(function(e,i){if(t(e,i))return n=i,!1})),n}(n.children,(function(t){return!(!e.labelTarget&&t.labelTarget)&&i.level<r(t).level}));return-1!==a&&-1!==o&&o<a&&(a-=1),{index:a,parent:n}}}Xd.prototype.getOrdering=function(e,t){return null},n(Xd,Wo),Zd.$inject=["eventBus","canvas","translate"],n(Zd,Xd);var Qd={__depends__:[to],__init__:["bpmnOrderingProvider"],bpmnOrderingProvider:["type",Zd]};function Jd(e,t){this._handlerMap={},this._stack=[],this._stackIdx=-1,this._currentExecution={actions:[],dirty:[],trigger:null},this._injector=t,this._eventBus=e,this._uid=1,e.on(["diagram.destroy","diagram.clear"],(function(){this.clear(!1)}),this)}Jd.$inject=["eventBus","injector"],Jd.prototype.execute=function(e,t){if(!e)throw new Error("command required");this._currentExecution.trigger="execute";var n={command:e,context:t};this._pushAction(n),this._internalExecute(n),this._popAction(n)},Jd.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},Jd.prototype.clear=function(e){this._stack.length=0,this._stackIdx=-1,!1!==e&&this._fire("changed",{trigger:"clear"})},Jd.prototype.undo=function(){var e,t=this._getUndoAction();if(t){for(this._currentExecution.trigger="undo",this._pushAction(t);t&&(this._internalUndo(t),(e=this._getUndoAction())&&e.id===t.id);)t=e;this._popAction()}},Jd.prototype.redo=function(){var e,t=this._getRedoAction();if(t){for(this._currentExecution.trigger="redo",this._pushAction(t);t&&(this._internalExecute(t,!0),(e=this._getRedoAction())&&e.id===t.id);)t=e;this._popAction()}},Jd.prototype.register=function(e,t){this._setHandler(e,t)},Jd.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)},Jd.prototype.canUndo=function(){return!!this._getUndoAction()},Jd.prototype.canRedo=function(){return!!this._getRedoAction()},Jd.prototype._getRedoAction=function(){return this._stack[this._stackIdx+1]},Jd.prototype._getUndoAction=function(){return this._stack[this._stackIdx]},Jd.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)}))},Jd.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},Jd.prototype._createId=function(){return this._uid++},Jd.prototype._atomicDo=function(e){var t=this._currentExecution;t.atomic=!0;try{e()}finally{t.atomic=!1}},Jd.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)},Jd.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)},Jd.prototype._popAction=function(){var e=this._currentExecution,t=e.trigger,n=e.actions,i=e.dirty;n.pop(),n.length||(this._eventBus.fire("elements.changed",{elements:A("id",i.reverse())}),i.length=0,this._fire("changed",{trigger:t}),e.trigger=null)},Jd.prototype._markDirty=function(e){var t=this._currentExecution;e&&(e=u(e)?e:[e],t.dirty=t.dirty.concat(e))},Jd.prototype._executedAction=function(e,t){var n=++this._stackIdx;t||this._stack.splice(n,this._stack.length,e)},Jd.prototype._revertedAction=function(e){this._stackIdx--},Jd.prototype._getHandler=function(e){return this._handlerMap[e]},Jd.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 ef={commandStack:["type",Jd]},tf=new Oo("tt");function nf(e,t){e.style.display=!1===t?"none":""}var rf=".djs-tooltip";function of(e,t){var n,i;this._eventBus=e,this._canvas=t,this._ids=tf,this._tooltipDefaults={show:{minZoom:.7,maxZoom:5}},this._tooltips={},this._tooltipRoot=(n=t.getContainer(),i=ce('<div class="djs-tooltip-container" style="position: absolute; width: 0; height: 0;" />'),n.insertBefore(i,n.firstChild),i);var r=this;se.bind(this._tooltipRoot,rf,"mousedown",(function(e){e.stopPropagation()})),se.bind(this._tooltipRoot,rf,"mouseover",(function(e){r.trigger("mouseover",e)})),se.bind(this._tooltipRoot,rf,"mouseout",(function(e){r.trigger("mouseout",e)})),this._init()}of.$inject=["eventBus","canvas"],of.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},of.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)))},of.prototype.get=function(e){return"string"!=typeof e&&(e=e.id),this._tooltips[e]},of.prototype.clearTimeout=function(e){if(e=this.get(e)){var t=e.removeTimer;t&&(clearTimeout(t),e.removeTimer=null)}},of.prototype.setTimeout=function(e){if(e=this.get(e)){this.clearTimeout(e);var t=this;e.removeTimer=setTimeout((function(){t.remove(e)}),e.timeout)}},of.prototype.remove=function(e){var t=this.get(e);t&&(de(t.html),de(t.htmlContainer),delete t.htmlContainer,delete this._tooltips[t.id])},of.prototype.show=function(){nf(this._tooltipRoot)},of.prototype.hide=function(){nf(this._tooltipRoot,!1)},of.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},of.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=ce(i)),(t=ce('<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)},of.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"})},of.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),nf(i,r))}))},of.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 af={__init__:["tooltips"],tooltips:["type",of]};function sf(e,t){if("function"!=typeof t)throw new Error("removeFn iterator must be a function");if(e){for(var n;n=e[0];)t(n);return e}}function cf(e,t,n){Wo.call(this,t);var i=e.get("movePreview",!1);t.on("shape.move.start",1400,(function(e){var t=e.context,n=t.shapes,i=t.validatedShapes;t.shapes=pf(n),t.validatedShapes=pf(i)})),i&&t.on("shape.move.start",250,(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",1400,(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;sf((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=yt(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&&(vt(i.labels,n,r),n.labelTarget=i)}))}function pf(e){return g(e,(function(t){return-1===e.indexOf(t.labelTarget)}))}n(cf,Wo),cf.$inject=["injector","eventBus","modeling"];var lf={__init__:["labelSupport"],labelSupport:["type",cf]},uf="attach-ok";function hf(e,t,n,i,r){Wo.call(this,t);var o=e.get("movePreview",!1);t.on("shape.move.start",1401,(function(e){var t,n,i=e.context,r=i.shapes,o=i.validatedShapes;i.shapes=(n=df(t=r),k("id",t,n)),i.validatedShapes=function(e){var t=P(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",251,(function(e){var t=e.context;b(df(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,uf),t.once(["shape.move.out","shape.move.cleanup"],(function(){n.removeMarker(r,uf)})))}})),this.preExecuted("elements.move",1401,(function(e){var t=e.context,n=t.closure;b(df(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;sf(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=vh(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=vh(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;sf(t.attachers,(function(e){r.removeShape(e)})),t.host&&r.updateAttachment(t,null)}))}function df(e){return o(S(e,(function(e){return e.attachers||[]})))}n(hf,Wo),hf.$inject=["injector","eventBus","canvas","rules","modeling"];var ff={__depends__:[Os],__init__:["attachSupport"],attachSupport:["type",hf]};function mf(e,t){this._eventBus=e,this._dragging=t,this._tools=[],this._active=null}mf.$inject=["eventBus","dragging"],mf.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)},mf.prototype.isActive=function(e){return e&&this._active===e},mf.prototype.length=function(e){return this._tools.length},mf.prototype.setActive=function(e){var t=this._eventBus;this._active!==e&&(this._active=e,t.fire("tool-manager.update",{tool:e}))},mf.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){this._active&&(function(e){var t=e.originalEvent&&e.originalEvent.target;return t&&ee(t,'.group[data-group="tools"]')}(e)||this.setActive(null))}),this)};var vf={__depends__:[ks],__init__:["toolManager"],toolManager:["type",mf]};function yf(e,t){return-1!==e.indexOf(t)}var gf=Math.abs,bf=Math.round,xf={x:"width",y:"height"},_f="crosshair",Ef={n:"top",w:"left",s:"bottom",e:"right"},wf={n:"s",w:"e",s:"n",e:"w"};function Sf(e,t,n,i,r,o,a){this._canvas=e,this._dragging=t,this._eventBus=n,this._modeling=i,this._rules=r,this._toolManager=o,this._mouse=a;var s=this;o.registerTool("space",{tool:"spaceTool.selection",dragging:"spaceTool"}),n.on("spaceTool.selection.end",(function(e){n.once("spaceTool.selection.ended",(function(){s.activateMakeSpace(e.originalEvent)}))})),n.on("spaceTool.move",1500,(function(e){var t=e.context,n=t.initialized;n||(n=t.initialized=s.init(e,t)),n&&Rf(e)})),n.on("spaceTool.end",(function(e){var t=e.context,i=t.axis,r=t.direction,o=t.movingShapes,a=t.resizingShapes,c=t.start;if(t.initialized){Rf(e);var p={x:0,y:0};p[i]=bf(e["d"+i]),s.makeSpace(o,a,p,r,c),n.once("spaceTool.ended",(function(e){s.activateSelection(e.originalEvent,!0,!0)}))}}))}function Cf(e){return{top:e.top-20,right:e.right+20,bottom:e.bottom+20,left:e.left-20}}function Rf(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 Tf(e,t){return-1!==e.indexOf(t)}function Pf(e){return!!e.waypoints}function Af(e){return!!e.labelTarget}Sf.$inject=["canvas","dragging","eventBus","modeling","rules","toolManager","mouse"],Sf.prototype.activateSelection=function(e,t,n){this._dragging.init(e,"spaceTool.selection",{autoActivate:t,cursor:_f,data:{context:{reactivate:n}},trapClick:!1})},Sf.prototype.activateMakeSpace=function(e){this._dragging.init(e,"spaceTool",{autoActivate:!0,cursor:_f,data:{context:{}}})},Sf.prototype.makeSpace=function(e,t,n,i,r){return this._modeling.createSpace(e,t,n,i,r)},Sf.prototype.init=function(e,t){var n=gf(e.dx)>gf(e.dy)?"x":"y",i=e["d"+n],r=e[n]-i;if(gf(i)<5)return!1;i<0&&(i*=-1),xo(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=ct(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 l,u,h,f=an(e),m=g(e.children,(function(e){return!(Pf(e)||Af(e)||Tf(o,e)||Tf(a,e))})),v=g(e.children,(function(e){return!Pf(e)&&!Af(e)&&Tf(o,e)}));m.length&&(u=Cf(an(pt(m))),l=i-f[Ef[n]]+u[Ef[n]],"n"===n?p.bottom=c=d(c)?Math.min(c,l):l:"w"===n?p.right=c=d(c)?Math.min(c,l):l:"s"===n?p.top=s=d(s)?Math.max(s,l):l:"e"===n&&(p.left=s=d(s)?Math.max(s,l):l)),v.length&&(h=Cf(an(pt(v))),l=i-h[Ef[wf[n]]]+f[Ef[wf[n]]],"n"===n?p.bottom=c=d(c)?Math.min(c,l):l:"w"===n?p.right=c=d(c)?Math.min(c,l):l:"s"===n?p.top=s=d(s)?Math.max(s,l):l:"e"===n&&(p.left=s=d(s)?Math.max(s,l):l));var y=r&&r[e.id];y&&("n"===n?(l=i+e[xf[t]]-y[xf[t]],p.bottom=c=d(c)?Math.min(c,l):l):"w"===n?(l=i+e[xf[t]]-y[xf[t]],p.right=c=d(c)?Math.min(c,l):l):"s"===n?(l=i-e[xf[t]]+y[xf[t]],p.top=s=d(s)?Math.max(s,l):l):"e"===n&&(l=i-e[xf[t]]+y[xf[t]],p.left=s=d(s)?Math.max(s,l):l))})),p}(s,n,o,r,this._eventBus.fire("spaceTool.getMinDimensions",{axis:n,direction:o,shapes:s.resizingShapes,start:r})),start:r}),ka("resize-"+("x"===n?"ew":"ns")),!0},Sf.prototype.calculateAdjustments=function(e,t,n,i){var r=this._rules,o=[],a=[];return b(e,(function(e){if(e.parent&&!Pf(e)){var s=e[t],c=s+e[xf[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}},Sf.prototype.toggle=function(){if(this.isActive())return this._dragging.cancel();var e=this._mouse.getLastMoveEvent();this.activateSelection(e,!!e)},Sf.prototype.isActive=function(){var e=this._dragging.context();return e&&/^spaceTool/.test(e.prefix)};var kf="djs-dragging",Mf="djs-resizing",Df=Math.max;function Bf(e,t,n,i,r){function o(e,t){b(e,(function(e){r.addDragger(e,t),n.addMarker(e,kf)}))}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=Me("g");ge(s,i.cls("djs-crosshair-group",["no-events"])),me(t,s);var c=Me("path");ge(c,"d",o),we(c).add("djs-crosshair"),me(s,c);var p=Me("path");ge(p,"d",a),we(p).add("djs-crosshair"),me(s,p),r.crosshairGroup=s})),e.on("spaceTool.selection.move",(function(e){Gn(e.context.crosshairGroup,e.x,e.y)})),e.on("spaceTool.selection.cleanup",(function(e){var t=e.context.crosshairGroup;t&&Ce(t)})),e.on("spaceTool.move",250,(function(e){var a=e.context,s=a.line,c=a.axis,p=a.movingShapes,l=a.resizingShapes;if(a.initialized){if(!a.dragGroup){var u=n.getLayer("space");ge(s=Me("path"),"d","M0,0 L0,0"),we(s).add("djs-crosshair"),me(u,s),a.line=s;var h=Me("g");ge(h,i.cls("djs-drag-group",["no-events"])),me(n.getActiveLayer(),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(l,(function(t){b(t.outgoing,(function(t){e===t&&(i=!0)}))}));var r=!1;return b(l,(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=Me("g");ge(d,i.cls("djs-frame-group",["no-events"])),me(n.getActiveLayer(),d);var f=[];b(l,(function(e){var t=r.addFrame(e,d),i=t.getBBox();f.push({element:t,initialBounds:i}),n.addMarker(e,Mf)})),a.frameGroup=d,a.frames=f}ge(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,Gn(a.dragGroup,m.x,m.y),b(a.frames,(function(e){var t,n,i=e.element,r=e.initialBounds;"e"===a.direction?ge(i,{width:Df(r.width+m.x,5)}):ge(i,{width:t=Df(r.width-m.x,5),x:r.x+r.width-t}),"s"===a.direction?ge(i,{height:Df(r.height+m.y,5)}):ge(i,{height:n=Df(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,kf)})),b(r,(function(e){n.removeMarker(e,kf)})),s&&(Ce(a),Ce(s)),b(o,(function(e){n.removeMarker(e,Mf)})),c&&Ce(c)}))}Bf.$inject=["eventBus","elementRegistry","canvas","styles","previewSupport"];var Nf={__init__:["spaceToolPreview"],__depends__:[ks,Os,vf,Uc,up],spaceTool:["type",Sf],spaceToolPreview:["type",Bf]};function Of(e){this._model=e}function jf(e,t,n,i){Wo.call(this,e),this._bpmnFactory=t,this._translate=i;var r=this;function o(e){b(e.context.oldRoot.children,(function(e){vr(e,"bpmn:BaseElement")&&r.updateParent(e)}))}function a(e){var t=e.context.shape;vr(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"],Lf((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"],Lf((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"],Lf((function(e){"label"!==e.context.shape.type&&a(e)}))),this.reverted(["shape.move","shape.create","shape.resize"],Lf((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"],Lf(s)),this.reverted(["connection.create","connection.move","connection.delete","connection.reconnect"],Lf(s)),this.executed(["connection.layout","connection.move","connection.updateWaypoints"],Lf(c)),this.reverted(["connection.layout","connection.move","connection.updateWaypoints"],Lf(c)),this.executed("connection.reconnect",Lf((function(e){var t=e.context,n=t.connection,i=t.oldSource,r=t.newSource,o=gr(n),a=gr(i),s=gr(r);o.conditionExpression&&!yr(s,["bpmn:Activity","bpmn:ExclusiveGateway","bpmn:InclusiveGateway"])&&(t.oldConditionExpression=o.conditionExpression,delete o.conditionExpression),i!==r&&a.default===o&&(t.oldDefault=a.default,delete a.default)}))),this.reverted("connection.reconnect",Lf((function(e){var t=e.context,n=t.connection,i=t.oldSource,r=t.newSource,o=gr(n),a=gr(i),s=gr(r);t.oldConditionExpression&&(o.conditionExpression=t.oldConditionExpression),t.oldDefault&&(a.default=t.oldDefault,delete s.default)}))),this.executed(["element.updateAttachment"],Lf(p)),this.reverted(["element.updateAttachment"],Lf(p))}function Lf(e){return function(t){var n=t.context;vr(n.shape||n.connection,"bpmn:BaseElement")&&e(t)}}function If(e,t,n){Ln.call(this),this._bpmnFactory=e,this._moddle=t,this._translate=n}function zf(e,t,n){e[n]=t[n],delete t[n]}function Ff(e,t){this._modeling=e,this._canvas=t}function $f(e){this._modeling=e}function Hf(e,t){this._canvas=e,this._layouter=t}Of.$inject=["moddle"],Of.prototype._needsId=function(e){return yr(e,["bpmn:RootElement","bpmn:FlowElement","bpmn:MessageFlow","bpmn:DataAssociation","bpmn:Artifact","bpmn:Participant","bpmn:Lane","bpmn:LaneSet","bpmn:Process","bpmn:Collaboration","bpmndi:BPMNShape","bpmndi:BPMNEdge","bpmndi:BPMNDiagram","bpmndi:BPMNPlane","bpmn:Property","bpmn:CategoryValue"])},Of.prototype._ensureId=function(e){var t;e.id?this._model.ids.claim(e.id,e):(t=vr(e,"bpmn:Activity")?"Activity":vr(e,"bpmn:Event")?"Event":vr(e,"bpmn:Gateway")?"Gateway":yr(e,["bpmn:SequenceFlow","bpmn:MessageFlow"])?"Flow":(e.$type||"").replace(/^[^:]*:/g,""),t+="_",!e.id&&this._needsId(e)&&(e.id=this._model.ids.nextPrefixed(t,e)))},Of.prototype.create=function(e,t){var n=this._model.create(e,t||{});return this._ensureId(n),n},Of.prototype.createDiLabel=function(){return this.create("bpmndi:BPMNLabel",{bounds:this.createDiBounds()})},Of.prototype.createDiShape=function(e,t){return this.create("bpmndi:BPMNShape",F({bpmnElement:e,bounds:this.createDiBounds()},t))},Of.prototype.createDiBounds=function(e){return this.create("dc:Bounds",e)},Of.prototype.createDiWaypoints=function(e){var t=this;return S(e,(function(e){return t.createDiWaypoint(e)}))},Of.prototype.createDiWaypoint=function(e){return this.create("dc:Point",$(e,["x","y"]))},Of.prototype.createDiEdge=function(e,t){return this.create("bpmndi:BPMNEdge",F({bpmnElement:e,waypoint:this.createDiWaypoints([])},t))},Of.prototype.createDiPlane=function(e,t){return this.create("bpmndi:BPMNPlane",F({bpmnElement:e},t))},n(jf,Wo),jf.$inject=["eventBus","bpmnFactory","connectionDocking","translate"],jf.prototype.updateAttachment=function(e){var t=e.shape,n=t.businessObject,i=t.host;n.attachedToRef=i&&i.businessObject},jf.prototype.updateParent=function(e,t){if(!(e instanceof Nn||vr(e,"bpmn:DataStoreReference")&&e.parent&&vr(e.parent,"bpmn:Collaboration"))){var n=e.parent,i=e.businessObject,r=br(e),o=n&&n.businessObject,a=br(n);vr(e,"bpmn:FlowNode")&&this.updateFlowNodeRefs(i,o,t&&t.businessObject),vr(e,"bpmn:DataOutputAssociation")&&(o=e.source?e.source.businessObject:null),vr(e,"bpmn:DataInputAssociation")&&(o=e.target?e.target.businessObject:null),this.updateSemanticParent(i,o),vr(e,"bpmn:DataObjectReference")&&i.dataObjectRef&&this.updateSemanticParent(i.dataObjectRef,o),this.updateDiParent(r,a)}},jf.prototype.updateBounds=function(e){var t=br(e),n=function(e){if(!vr(e,"bpmn:Activity"))return;var t=br(e);if(!t)return;var n=t.get("label");if(!n)return;return n.get("bounds")}(e);if(n){var i=Na(n,t.get("bounds"));F(n,{x:e.x+i.x,y:e.y+i.y})}var r=e instanceof Nn?this._getLabel(t):t,o=r.bounds;o||(o=this._bpmnFactory.createDiBounds(),r.set("bounds",o)),F(o,{x:e.x,y:e.y,width:e.width,height:e.height})},jf.prototype.updateFlowNodeRefs=function(e,t,n){n!==t&&(vr(n,"bpmn:Lane")&&mt(n.get("flowNodeRef"),e),vr(t,"bpmn:Lane")&&vt(t.get("flowNodeRef"),e))},jf.prototype.updateDiConnection=function(e,t,n){var i=br(e),r=br(t),o=br(n);i.sourceElement&&i.sourceElement.bpmnElement!==gr(t)&&(i.sourceElement=t&&r),i.targetElement&&i.targetElement.bpmnElement!==gr(n)&&(i.targetElement=n&&o)},jf.prototype.updateDiParent=function(e,t){if(t&&!vr(t,"bpmndi:BPMNPlane")&&(t=t.$parent),e.$parent!==t){var n=(t||e.$parent).get("planeElement");t?(n.push(e),e.$parent=t):(mt(n,e),e.$parent=null)}},jf.prototype.getLaneSet=function(e){var t,n;return vr(e,"bpmn:Lane")?((t=e.childLaneSet)||(t=this._bpmnFactory.create("bpmn:LaneSet"),e.childLaneSet=t,t.$parent=e),t):(vr(e,"bpmn:Participant")&&(e=e.processRef),(t=(n=e.get("laneSets"))[0])||((t=this._bpmnFactory.create("bpmn:LaneSet")).$parent=e,n.push(t)),t)},jf.prototype.updateSemanticParent=function(e,t,n){var i,r=this._translate;if(e.$parent!==t&&(!vr(e,"bpmn:DataInput")&&!vr(e,"bpmn:DataOutput")||(vr(t,"bpmn:Participant")&&"processRef"in t&&(t=t.processRef),!("ioSpecification"in t)||t.ioSpecification!==e.$parent))){if(vr(e,"bpmn:Lane"))t&&(t=this.getLaneSet(t)),i="lanes";else if(vr(e,"bpmn:FlowElement")){if(t)if(vr(t,"bpmn:Participant"))t=t.processRef;else if(vr(t,"bpmn:Lane"))do{t=t.$parent.$parent}while(vr(t,"bpmn:Lane"));i="flowElements"}else if(vr(e,"bpmn:Artifact")){for(;t&&!vr(t,"bpmn:Process")&&!vr(t,"bpmn:SubProcess")&&!vr(t,"bpmn:Collaboration");){if(vr(t,"bpmn:Participant")){t=t.processRef;break}t=t.$parent}i="artifacts"}else if(vr(e,"bpmn:MessageFlow"))i="messageFlows";else if(vr(e,"bpmn:Participant")){i="participants";var o,a=e.processRef;a&&(o=function(e){for(;e&&!vr(e,"bpmn:Definitions");)e=e.$parent;return e}(e.$parent||t),e.$parent&&(mt(o.get("rootElements"),a),a.$parent=null),t&&(vt(o.get("rootElements"),a),a.$parent=o))}else vr(e,"bpmn:DataOutputAssociation")?i="dataOutputAssociations":vr(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&&mt(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);mt(s,e),t&&(c||(c=[],t.set(i,c)),c.push(e))}}},jf.prototype.updateConnectionWaypoints=function(e){br(e).set("waypoint",this._bpmnFactory.createDiWaypoints(e.waypoints))},jf.prototype.updateConnection=function(e){var t,n=e.connection,i=gr(n),r=n.source,o=gr(r),a=n.target,s=gr(n.target);if(vr(i,"bpmn:DataAssociation"))vr(i,"bpmn:DataInputAssociation")?(i.get("sourceRef")[0]=o,t=e.parent||e.newParent||s,this.updateSemanticParent(i,s,t)):vr(i,"bpmn:DataOutputAssociation")&&(t=e.parent||e.newParent||o,this.updateSemanticParent(i,o,t),i.targetRef=s);else{var c=vr(i,"bpmn:SequenceFlow");i.sourceRef!==o&&(c&&(mt(i.sourceRef&&i.sourceRef.get("outgoing"),i),o&&o.get("outgoing")&&o.get("outgoing").push(i)),i.sourceRef=o),i.targetRef!==s&&(c&&(mt(i.targetRef&&i.targetRef.get("incoming"),i),s&&s.get("incoming")&&s.get("incoming").push(i)),i.targetRef=s)}this.updateConnectionWaypoints(n),this.updateDiConnection(n,r,a)},jf.prototype._getLabel=function(e){return e.label||(e.label=this._bpmnFactory.createDiLabel()),e.label},n(If,Ln),If.$inject=["bpmnFactory","moddle","translate"],If.prototype.baseCreate=Ln.prototype.create,If.prototype.create=function(e,t){if("label"===e){var n=t.di||this._bpmnFactory.createDiLabel();return this.baseCreate(e,F({type:"label",di:n},no,t))}return this.createBpmnElement(e,t)},If.prototype.createBpmnElement=function(e,t){var n,i,r,o=this._translate,a=(t=t||{}).businessObject,s=t.di;if(!a){if(!t.type)throw new Error(o("no shape type specified"));dr(a=this._bpmnFactory.create(t.type))}if(!yr(s,["bpmndi:BPMNShape","bpmndi:BPMNEdge","bpmndi:BPMNDiagram","bpmndi:BPMNPlane"])){var c=F(s||{},{id:a.id+"_di"});s="root"===e?this._bpmnFactory.createDiPlane(a,c):"connection"===e?this._bpmnFactory.createDiEdge(a,c):this._bpmnFactory.createDiShape(a,c)}return vr(a,"bpmn:Group")&&(t=F({isFrame:!0},t)),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(s,t,"isExpanded"),vr(a,"bpmn:SubProcess")&&(t.collapsed=!Dr(a,s)),vr(a,"bpmn:ExclusiveGateway")&&(s.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,s),t=F({id:a.id},n,t,{businessObject:a,di:s}),this.baseCreate(e,t)},If.prototype.getDefaultSize=function(e,t){var n=gr(e);return t=t||br(e),vr(n,"bpmn:SubProcess")?Dr(n,t)?{width:350,height:200}:{width:100,height:80}:vr(n,"bpmn:Task")?{width:100,height:80}:vr(n,"bpmn:Gateway")?{width:50,height:50}:vr(n,"bpmn:Event")?{width:36,height:36}:vr(n,"bpmn:Participant")?Dr(n,t)?{width:600,height:250}:{width:400,height:60}:vr(n,"bpmn:Lane")?{width:400,height:100}:vr(n,"bpmn:DataObjectReference")?{width:36,height:50}:vr(n,"bpmn:DataStoreReference")?{width:50,height:50}:vr(n,"bpmn:TextAnnotation")?{width:100,height:30}:vr(n,"bpmn:Group")?{width:300,height:300}:{width:100,height:80}},If.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)},Ff.$inject=["modeling","canvas"],Ff.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)}))},Ff.prototype.postExecute=function(e){},$f.$inject=["modeling"],$f.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},$f.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))},Hf.$inject=["canvas","layouter"],Hf.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},Hf.prototype.revert=function(e){var t=e.connection;return this._canvas.removeConnection(t),t.source=null,t.target=null,t};var Gf=Math.round;function Wf(e){this._modeling=e}function Vf(e){return!!e.waypoints}Wf.$inject=["modeling"],Wf.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=pt(g(t,(function(e){return!e.hidden})));b(t,(function(e){Vf(e)&&(e.waypoints=S(e.waypoints,(function(e){return{x:Gf(e.x-s.x-s.width/2+r.x),y:Gf(e.y-s.y-s.height/2+r.y)}}))),F(e,{x:Gf(e.x-s.x-s.width/2+r.x),y:Gf(e.y-s.y-s.height/2+r.y)})}));var c=rt(t),p={};b(t,(function(e){if(Vf(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=T(p)};var Uf=Math.round;function qf(e){this._canvas=e}function Kf(e){qf.call(this,e)}qf.$inject=["canvas"],qf.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-Uf(t.width/2),y:n.y-Uf(t.height/2)}),this._canvas.addShape(t,i,r),t},qf.prototype.revert=function(e){var t=e.shape;return this._canvas.removeShape(t),t},n(Kf,qf),Kf.$inject=["canvas"];var Yf=qf.prototype.execute;Kf.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,Yf.call(this,e)};var Xf=qf.prototype.revert;function Zf(e,t){this._canvas=e,this._modeling=t}function Qf(e,t){this._modeling=e,this._elementRegistry=t}function Jf(e,t){this._canvas=e,this._modeling=t}function em(e){this._modeling=e}Kf.prototype.revert=function(e){return e.shape.labelTarget=null,Xf.call(this,e)},Zf.$inject=["canvas","modeling"],Zf.prototype.execute=function(e){var t=e.connection,n=t.parent;return e.parent=n,e.parentIndex=yt(n.children,t),e.source=t.source,e.target=t.target,this._canvas.removeConnection(t),t.source=null,t.target=null,t},Zf.prototype.revert=function(e){var t=e.connection,n=e.parent,i=e.parentIndex;return t.source=e.source,t.target=e.target,vt(n.children,t,i),this._canvas.addConnection(t,n),t},Qf.$inject=["modeling","elementRegistry"],Qf.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))}))},Jf.$inject=["canvas","modeling"],Jf.prototype.preExecute=function(e){var t=this._modeling,n=e.shape;sf(n.incoming,(function(e){t.removeConnection(e,{nested:!0})})),sf(n.outgoing,(function(e){t.removeConnection(e,{nested:!0})})),sf(n.children,(function(e){e.waypoints?t.removeConnection(e,{nested:!0}):t.removeShape(e,{nested:!0})}))},Jf.prototype.execute=function(e){var t=this._canvas,n=e.shape,i=n.parent;return e.oldParent=i,e.oldParentIndex=yt(i.children,n),t.removeShape(n),n},Jf.prototype.revert=function(e){var t=this._canvas,n=e.shape,i=e.oldParent,r=e.oldParentIndex;return vt(i.children,n,r),t.addShape(n,i),n},em.$inject=["modeling"];var tm={x:"y",y:"x"};function nm(e,t){this._layouter=e,this._canvas=t}function im(){}function rm(){this.allShapes={},this.allConnections={},this.enclosedElements={},this.enclosedConnections={},this.topLevel={}}function om(e){this._modeling=e}function am(e){this._helper=new om(e)}function sm(e){this._modeling=e,this._helper=new om(e)}function cm(e){this._modeling=e}function pm(e){return e.original||e}function lm(e,t){this._modeling=e,this._rules=t}function um(e){this._modeling=e}function hm(e){this._modeling=e}function dm(e){return F({},e)}function fm(e){switch(e){case"n":return"y";case"w":return"x";case"s":return"y";case"e":return"x"}}function mm(e,t,n){var i=fm(n);return/e|s/.test(n)?e[i]>t:/n|w/.test(n)?e[i]<t:void 0}function vm(e,t){return-1!==e.indexOf(t)}function ym(e){this._modeling=e}function gm(e){var t={};return b(e,(function(e){t[e.id]=e.hidden,e.children&&(t=F({},t,gm(e.children)))})),t}function bm(e,t){var n=[];return b(e,(function(e){e.hidden=t,n=n.concat(e),e.children&&(n=n.concat(bm(e.children,e.collapsed||t)))})),n}function xm(e,t){var n=[];return b(e,(function(e){e.hidden=t[e.id],n=n.concat(e),e.children&&(n=n.concat(xm(e.children,t)))})),n}function _m(e){this._modeling=e}function Em(e,t){return mt(e&&e.attachers,t)}function wm(e,t,n){if(e){var i=e.attachers;i||(e.attachers=i=[]),vt(i,t,n)}}function Sm(){}function Cm(e,t,n){this._eventBus=e,this._elementFactory=t,this._commandStack=n;var i=this;e.on("diagram.init",(function(){i.registerHandlers(n)}))}function Rm(e){this._elementRegistry=e}function Tm(e,t){b(t,(function(t,n){e.set(n,t)}))}em.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,l,u=n[0],h=s(n),d=n[h],f=0;b(n,(function(e,p){var l,u,d;e.elements.length<2?p&&p!==n.length-1&&(o(e,e.elements[0]),f+=c(e.range)):(u=(l=M(e.elements,i))[0],p===h&&(u=l[s(l)]),d=a(u),e.range=null,b(l,(function(n){!function(e,n){var r={y:0};r[i]=e-a(n),r[i]&&(r[tm[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)))})),l=Math.abs(d.range.min-u.range.max),(p=Math.round((l-f)/(n.length-1)))<n.length-1||b(n,(function(e,o){var a,s={};e!==u&&e!==d&&(a=n[o-1],e.range.max=0,b(e.elements,(function(n,o){s[tm[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)})))}))},em.prototype.postExecute=function(e){},nm.$inject=["layouter","canvas"],nm.prototype.execute=function(e){var t=e.connection;return F(e,{oldWaypoints:t.waypoints}),t.waypoints=this._layouter.layoutConnection(t,e.hints),t},nm.prototype.revert=function(e){var t=e.connection;return t.waypoints=e.oldWaypoints,t},im.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=mt(o.children,t),vt(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},im.prototype.revert=function(e){var t=e.connection,n=t.parent,i=e.oldParent,r=e.oldParentIndex,o=e.delta;return mt(n.children,t),vt(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},rm.prototype.add=function(e,t){return this.addAll([e],t)},rm.prototype.addAll=function(e,t){return F(this,function(e,t,n){c(t)&&(t=!0),h(t)&&(n=t,t=!0);var i=ht((n=n||{}).allShapes),r=ht(n.allConnections),o=ht(n.enclosedElements),a=ht(n.enclosedConnections),s=ht(n.topLevel,t&&P(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 st(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},om.prototype.moveRecursive=function(e,t,n){return e?this.moveClosure(this.getClosure(e),t,n):[]},om.prototype.moveClosure=function(e,t,n,i,r){var o=this._modeling,a=e.allShapes,s=e.allConnections,c=e.enclosedConnections,p=e.topLevel,l=!1;r&&r.parent===n&&(l=!0),b(a,(function(e){o.moveShape(e,t,p[e.id]&&!l&&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]&&!l&&n):o.layoutConnection(e,{connectionStart:i&&Sh(e,e.source,t),connectionEnd:r&&Ch(e,e.target,t)})}))},om.prototype.getClosure=function(e){return(new rm).addAll(e,!0)},am.$inject=["modeling"],am.prototype.preExecute=function(e){e.closure=this._helper.getClosure(e.shapes)},am.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)},sm.$inject=["modeling"],sm.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=mt(o.children,t),vt(i.children,t,r),F(t,{parent:i,x:t.x+n.x,y:t.y+n.y}),t},sm.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:Ch(e,t,n)})})),b(t.outgoing,(function(e){r.layoutConnection(e,{connectionStart:Sh(e,t,n)})}))),!1!==i.recurse&&this.moveChildren(e)},sm.prototype.revert=function(e){var t=e.shape,n=e.oldParent,i=e.oldParentIndex,r=e.delta;return vt(n.children,t,i),F(t,{parent:n,x:t.x-r.x,y:t.y-r.y}),t},sm.prototype.moveChildren=function(e){var t=e.delta,n=e.shape;this._helper.moveRecursive(n.children,t,null)},sm.prototype.getNewParent=function(e){return e.newParent||e.shape.parent},cm.$inject=["modeling"],cm.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 u(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},cm.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||pm(u(r)?r[0]:r)),!i||n&&"target"!==o.docking||(a.connectionEnd=a.connectionEnd||pm(u(r)?r[r.length-1]:r)),o.newWaypoints&&(a.waypoints=o.newWaypoints),this._modeling.layoutConnection(t,a))},cm.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},lm.$inject=["modeling","rules"],lm.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,l={x:a.x,y:a.y},u={x:o.x,y:o.y,width:o.width,height:o.height};t=e.newShape=e.newShape||n.createShape(a,l,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,wh(e,t,u),s)})),b(d,(function(e){var i=e.target;c(t,i,e)&&n.reconnectStart(e,t,Eh(e,t,u),s)}))},lm.prototype.postExecute=function(e){var t=e.oldShape;this._modeling.removeShape(t)},lm.prototype.execute=function(e){},lm.prototype.revert=function(e){},lm.prototype.createShape=function(e,t,n,i){return this._modeling.createShape(e,t,n,i)},lm.prototype.reconnectStart=function(e,t,n,i){this._modeling.reconnectStart(e,t,n,i)},lm.prototype.reconnectEnd=function(e,t,n,i){this._modeling.reconnectEnd(e,t,n,i)},um.$inject=["modeling"],um.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},um.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:wh(e,n,i)})})),b(n.outgoing,(function(e){t.layoutConnection(e,{connectionStart:Eh(e,n,i)})})))},um.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},hm.$inject=["modeling"],hm.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;(yf(e,r)||yf(e,o)||yf(t,r)||yf(t,o))&&(yf(n,i)||n.push(i))}))})),n}(i,r),t,n,o,i,r,a)},hm.prototype.execute=function(){},hm.prototype.revert=function(){},hm.prototype.moveShapes=function(e,t){var n=this;b(e,(function(e){n._modeling.moveShape(e,t,null,{autoResize:!1,layout:!1,recurse:!1})}))},hm.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})}))},hm.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,l=e.target,u=function(e){return S(e.waypoints,(function(e){return(e=dm(e)).original&&(e.original=dm(e.original)),e}))}(e),h=fm(n),d={labelBehavior:!1};vm(c,p)&&vm(c,l)?(u=S(u,(function(e){return mm(e,i,n)&&(e[h]=e[h]+t[h]),e.original&&mm(e.original,i,n)&&(e.original[h]=e.original[h]+t[h]),e})),s._modeling.updateWaypoints(e,u,{labelBehavior:!1})):(vm(c,p)||vm(c,l))&&(vm(r,p)?d.connectionStart=Sh(e,p,t):vm(r,l)?d.connectionEnd=Ch(e,l,t):vm(o,p)?d.connectionStart=Eh(e,p,a[p.id]):vm(o,l)&&(d.connectionEnd=wh(e,l,a[l.id])),s._modeling.layoutConnection(e,d))}))},ym.$inject=["modeling"],ym.prototype.execute=function(e){var t=e.shape,n=t.children;e.oldChildrenVisibility=gm(n),t.collapsed=!t.collapsed;var i=bm(n,t.collapsed);return[t].concat(i)},ym.prototype.revert=function(e){var t=e.shape,n=e.oldChildrenVisibility,i=xm(t.children,n);return t.collapsed=!t.collapsed,[t].concat(i)},_m.$inject=["modeling"],_m.prototype.execute=function(e){var t=e.shape,n=e.newHost,i=t.host;return e.oldHost=i,e.attacherIdx=Em(i,t),wm(n,t),t.host=n,t},_m.prototype.revert=function(e){var t=e.shape,n=e.newHost,i=e.oldHost,r=e.attacherIdx;return t.host=i,Em(n,t),wm(i,t,r),t},Sm.prototype.execute=function(e){var t=e.connection,n=e.newWaypoints;return e.oldWaypoints=t.waypoints,t.waypoints=n,t},Sm.prototype.revert=function(e){var t=e.connection,n=e.oldWaypoints;return t.waypoints=n,t},Cm.$inject=["eventBus","elementFactory","commandStack"],Cm.prototype.getHandlers=function(){return{"shape.append":$f,"shape.create":qf,"shape.delete":Jf,"shape.move":sm,"shape.resize":um,"shape.replace":lm,"shape.toggleCollapse":ym,spaceTool:hm,"label.create":Kf,"connection.create":Hf,"connection.delete":Zf,"connection.move":im,"connection.layout":nm,"connection.updateWaypoints":Sm,"connection.reconnect":cm,"elements.create":Wf,"elements.move":am,"elements.delete":Qf,"elements.distribute":em,"elements.align":Ff,"element.updateAttachment":_m}},Cm.prototype.registerHandlers=function(e){b(this.getHandlers(),(function(t,n){e.registerHandler(n,t)}))},Cm.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)},Cm.prototype.updateAttachment=function(e,t){var n={shape:e,newHost:t};this._commandStack.execute("element.updateAttachment",n)},Cm.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)},Cm.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)},Cm.prototype.layoutConnection=function(e,t){var n={connection:e,hints:t||{}};this._commandStack.execute("connection.layout",n)},Cm.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},Cm.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},Cm.prototype.createElements=function(e,t,n,i,r){u(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},Cm.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},Cm.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},Cm.prototype.removeElements=function(e){var t={elements:e};this._commandStack.execute("elements.delete",t)},Cm.prototype.distributeElements=function(e,t,n){var i={groups:e,axis:t,dimension:n};this._commandStack.execute("elements.distribute",i)},Cm.prototype.removeShape=function(e,t){var n={shape:e,hints:t||{}};this._commandStack.execute("shape.delete",n)},Cm.prototype.removeConnection=function(e,t){var n={connection:e,hints:t||{}};this._commandStack.execute("connection.delete",n)},Cm.prototype.replaceShape=function(e,t,n){var i={oldShape:e,newData:t,hints:n||{}};return this._commandStack.execute("shape.replace",i),i.newShape},Cm.prototype.alignElements=function(e,t){var n={elements:e,alignment:t};this._commandStack.execute("elements.align",n)},Cm.prototype.resizeShape=function(e,t,n,i){var r={shape:e,newBounds:t,minBounds:n,hints:i};this._commandStack.execute("shape.resize",r)},Cm.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)},Cm.prototype.updateWaypoints=function(e,t,n){var i={connection:e,newWaypoints:t,hints:n||{}};this._commandStack.execute("connection.updateWaypoints",i)},Cm.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)},Cm.prototype.reconnectStart=function(e,t,n,i){i||(i={}),this.reconnect(e,t,e.target,n,F(i,{docking:"source"}))},Cm.prototype.reconnectEnd=function(e,t,n,i){i||(i={}),this.reconnect(e,e.source,t,n,F(i,{docking:"target"}))},Cm.prototype.connect=function(e,t,n,i){return this.createConnection(e,t,n||{},e.parent,i)},Cm.prototype._create=function(e,t){return t instanceof Mn?t:this._elementFactory.create(e,t)},Cm.prototype.toggleCollapse=function(e,t){var n={shape:e,hints:t||{}};this._commandStack.execute("shape.toggleCollapse",n)},Rm.$inject=["elementRegistry"],Rm.prototype.execute=function(e){var t=e.element,n=e.moddleElement,i=e.properties;if(!n)throw new Error("<moddleElement> required");var r=e.changed||this.getVisualReferences(n).concat(t),o=e.oldProperties||function(e,t){return _(t,(function(t,n){return t[n]=e.get(n),t}),{})}(n,C(i));return Tm(n,i),e.oldProperties=o,e.changed=r,r},Rm.prototype.revert=function(e){var t=e.oldProperties,n=e.moddleElement,i=e.changed;return Tm(n,t),i},Rm.prototype.getVisualReferences=function(e){var t=this._elementRegistry;return vr(e,"bpmn:DataObject")?function(e,t){return t.filter((function(t){return vr(t,"bpmn:DataObjectReference")&&gr(t).dataObjectRef===e}))}(e,t):[]};var Pm="default",Am="id",km="di",Mm={width:0,height:0};function Dm(e,t,n,i,r){this._elementRegistry=e,this._moddle=t,this._translate=n,this._modeling=i,this._textRenderer=r}function Bm(e,t){return Am in e&&e.id!==t.id}function Nm(e,t){var n=e.businessObject,i=br(e);b(t,(function(e,t){t!==km?n.set(t,e):i&&function(e,t){b(t,(function(t,n){e.set(n,t)}))}(i,e)}))}Dm.$inject=["elementRegistry","moddle","translate","modeling","textRenderer"],Dm.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 Om.forEach((function(n){n in e&&(t[n]=gr(t[n]))})),t}(e.properties),c=e.oldProperties||function(e,t){var n=C(t),i=e.businessObject,r=br(e);return _(n,(function(e,n){return e[n]=n!==km?i.get(n):function(e,t){return _(t,(function(t,n){return t[n]=e&&e.get(n),t}),{})}(r,C(t.di)),e}),{})}(t,s);return Bm(s,a)&&(o.unclaim(a.id),r.updateId(t,s.id),o.claim(s.id,a)),Pm in s&&(s.default&&n.push(r.get(s.default.id)),a.default&&n.push(r.get(a.default.id))),Nm(t,s),e.oldProperties=c,e.changed=n,n},Dm.prototype.postExecute=function(e){var t=e.element.label,n=t&&gr(t).name;if(n){var i=this._textRenderer.getExternalLabelBounds(t,n);this._modeling.resizeShape(t,i,Mm)}},Dm.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 Nm(t,i),Bm(n,r)&&(a.unclaim(n.id),o.updateId(t,i.id),a.claim(i.id,r)),e.changed};var Om=["default"];function jm(e,t){this._canvas=e,this._modeling=t}function Lm(e,t){this._modeling=e,this._spaceTool=t}function Im(e,t){this._modeling=e,this._translate=t}function zm(e,t){this._modeling=e,this._spaceTool=t}jm.$inject=["canvas","modeling"],jm.prototype.execute=function(e){var t=this._canvas,n=e.newRoot,i=n.businessObject,r=t.getRootElement(),o=r.businessObject,a=o.$parent,s=br(r);t.setRootElement(n),t.removeRootElement(r),vt(a.rootElements,i),i.$parent=a,mt(a.rootElements,o),o.$parent=null,r.di=null,s.bpmnElement=i,n.di=s,e.oldRoot=r},jm.prototype.revert=function(e){var t=this._canvas,n=e.newRoot,i=n.businessObject,r=e.oldRoot,o=r.businessObject,a=i.$parent,s=br(n);t.setRootElement(r),t.removeRootElement(n),mt(a.rootElements,i),i.$parent=null,vt(a.rootElements,o),o.$parent=a,n.di=null,s.bpmnElement=o,r.di=s},Lm.$inject=["modeling","spaceTool"],Lm.prototype.preExecute=function(e){var t=this._spaceTool,n=this._modeling,i=e.shape,r=e.location,o=pl(i),a=o===i,s=a?i:i.parent;cl(s).length||n.createShape({type:"bpmn:Lane"},{x:i.x+al,y:i.y,width:i.width-al,height:i.height},s);var c=[];st(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,l="top"===r?i.y:i.y+i.height,u=l+("top"===r?10:-10),h="top"===r?"n":"s",d=t.calculateAdjustments(c,"y",p,u);t.makeSpace(d.movingShapes,d.resizingShapes,{x:0,y:p},h,u),e.newLane=n.createShape({type:"bpmn:Lane"},{x:i.x+(a?al:0),y:l-("top"===r?120:0),width:i.width-(a?al:0),height:120},s)},Im.$inject=["modeling","translate"],Im.prototype.preExecute=function(e){var t=this._modeling,n=this._translate,i=e.shape,r=e.count,o=cl(i),a=o.length;if(a>r)throw new Error(n("more than {count} child lanes",{count:r}));var s,c,p,l,u,h=Math.round(i.height/r);for(u=0;u<r;u++)s=i.y+u*h,c=u===r-1?i.height-h*u:h,p={x:i.x+al,y:s,width:i.width-al,height:c},u<a?t.resizeShape(o[u],p):(l={type:"bpmn:Lane"},t.createShape(l,p,i))},zm.$inject=["modeling","spaceTool"],zm.prototype.preExecute=function(e){var t=e.shape,n=e.newBounds;!1!==e.balanced?this.resizeBalanced(t,n):this.resizeSpace(t,n)},zm.prototype.resizeBalanced=function(e,t){var n=this._modeling,i=ll(e,t);n.resizeShape(e,t),i.forEach((function(e){n.resizeShape(e.shape,e.newBounds)}))},zm.prototype.resizeSpace=function(e,t){var n,i,r,o,a,s=this._spaceTool,c=an(e),p=Jp(an(t),c),l=pl(e),u=[],h=[];st(l,(function(e){return u.push(e),(vr(e,"bpmn:Lane")||vr(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(u,"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))};var Fm="flowNodeRef",$m="lanes";function Hm(e){this._elementRegistry=e}function Gm(e){this._moddle=e}Hm.$inject=["elementRegistry"],Hm.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=pl(e);return r[t.id]||(r[t.id]=sl(t)),r[t.id]}(e).filter((function(t){return n=e,i=an(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=pl(e);t&&-1===n.indexOf(t)&&(t.children.filter((function(e){return vr(e,"bpmn:FlowNode")})).forEach(a),n.push(t))})),e.forEach(a),o.forEach((function(e){var t=e.businessObject,n=t.get($m).slice(),r=s(e);i.push({flowNode:t,remove:n,add:r})})),t.forEach((function(e){var t=e.businessObject;e.parent||t.get(Fm).forEach((function(e){i.push({flowNode:e,remove:[t],add:[]})}))})),i},Hm.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($m);e.remove.forEach((function(e){mt(n,e),mt(e.get(Fm),t)})),e.add.forEach((function(e){vt(n,e),vt(e.get(Fm),t)}))}))},Hm.prototype.revert=function(e){e.updates.forEach((function(e){var t=e.flowNode,n=t.get($m);e.add.forEach((function(e){mt(n,e),mt(e.get(Fm),t)})),e.remove.forEach((function(e){vt(n,e),vt(e.get(Fm),t)}))}))},Gm.$inject=["moddle"],Gm.prototype.execute=function(e){var t=this._moddle.ids,n=e.id,i=e.element;e.claiming?t.claim(n,i):t.unclaim(n)},Gm.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 Wm={fill:void 0,stroke:void 0};function Vm(e){this._commandStack=e,this._normalizeColor=function(e){if(e){if(m(e)){var t=function(e){var t=document.createElement("canvas").getContext("2d");return t.fillStyle="transparent",t.fillStyle=e,/^#[0-9a-fA-F]{6}$/.test(t.fillStyle)?t.fillStyle:null}(e);if(t)return t}throw new Error("invalid color value: "+e)}}}Vm.$inject=["commandStack"],Vm.prototype.postExecute=function(e){var t=e.elements,n=e.colors||Wm,i=this,r={};"fill"in n&&F(r,{"background-color":this._normalizeColor(n.fill)}),"stroke"in n&&F(r,{"border-color":this._normalizeColor(n.stroke)}),b(t,(function(e){var t=function(e){return!!e.waypoints}(e)?$(r,["border-color"]):r;!function(e){"border-color"in e&&(e.stroke=e["border-color"]);"background-color"in e&&(e.fill=e["background-color"])}(t),e.labelTarget?i._commandStack.execute("element.updateModdleProperties",{element:e,moddleElement:br(e).label,properties:{color:r["background-color"]}}):i._commandStack.execute("element.updateProperties",{element:e,properties:{di:t}})}))};var Um={width:0,height:0};function qm(e,t,n){function i(e,t){var i=e.label||e,r=e.labelTarget||e;return function(e,t,n){var i=e.businessObject,r=Or(i);r&&("categoryValueRef"===r?i.categoryValueRef.value=t:i[r]=t)}(i,t),function(e,t){if(!io(e)){var i=br(e);t&&!i.label&&(i.label=n.create("bpmndi:BPMNLabel")),!t&&i.label&&delete i.label}}(e,t),[i,r]}this.preExecute=function(t){var n=t.element,i=n.businessObject,r=t.newLabel;if(!so(n)&&io(n)&&!ro(n)&&!Km(r)){var o=ao(n);o={x:o.x,y:o.y+7},e.createLabel(n,o,{id:i.id+"_label",businessObject:i,di:n.di})}},this.execute=function(e){return e.oldLabel=jr(e.element),i(e.element,e.newLabel)},this.revert=function(e){return i(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(so(r)||vr(r,"bpmn:TextAnnotation"))if(so(r)&&Km(o))!1!==s.removeShape&&e.removeShape(r,{unsetLabel:!1});else{var c=jr(r);void 0===a&&(a=t.getExternalLabelBounds(r,c)),a&&e.resizeShape(r,a,Um)}}}function Km(e){return!e||!e.trim()}function Ym(e,t,n,i){Cm.call(this,e,t,n),this._bpmnRules=i}function Xm(){}qm.$inject=["modeling","textRenderer","bpmnFactory"],n(Ym,Cm),Ym.$inject=["eventBus","elementFactory","commandStack","bpmnRules"],Ym.prototype.getHandlers=function(){var e=Cm.prototype.getHandlers.call(this);return e["element.updateModdleProperties"]=Rm,e["element.updateProperties"]=Dm,e["canvas.updateRoot"]=jm,e["lane.add"]=Lm,e["lane.resize"]=zm,e["lane.split"]=Im,e["lane.updateRefs"]=Hm,e["id.updateClaim"]=Gm,e["element.setColor"]=Vm,e["element.updateLabel"]=qm,e},Ym.prototype.updateLabel=function(e,t,n,i){this._commandStack.execute("element.updateLabel",{element:e,newLabel:t,newBounds:n,hints:i||{}})},Ym.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)},Ym.prototype.updateModdleProperties=function(e,t,n){this._commandStack.execute("element.updateModdleProperties",{element:e,moddleElement:t,properties:n})},Ym.prototype.updateProperties=function(e,t){this._commandStack.execute("element.updateProperties",{element:e,properties:t})},Ym.prototype.resizeLane=function(e,t,n){this._commandStack.execute("lane.resize",{shape:e,newBounds:t,balanced:n})},Ym.prototype.addLane=function(e,t){var n={shape:e,location:t};return this._commandStack.execute("lane.add",n),n.newLane},Ym.prototype.splitLane=function(e,t){this._commandStack.execute("lane.split",{shape:e,count:t})},Ym.prototype.makeCollaboration=function(){var e=this._create("root",{type:"bpmn:Collaboration"}),t={newRoot:e};return this._commandStack.execute("canvas.updateRoot",t),e},Ym.prototype.updateLaneRefs=function(e,t){this._commandStack.execute("lane.updateRefs",{flowNodeShapes:e,laneShapes:t})},Ym.prototype.makeProcess=function(){var e={newRoot:this._create("root",{type:"bpmn:Process"})};this._commandStack.execute("canvas.updateRoot",e)},Ym.prototype.claimId=function(e,t){this._commandStack.execute("id.updateClaim",{id:e,element:t,claiming:!0})},Ym.prototype.unclaimId=function(e,t){this._commandStack.execute("id.updateClaim",{id:e,element:t})},Ym.prototype.setColor=function(e,t){e.length||(e=[e]),this._commandStack.execute("element.setColor",{elements:e,colors:t})},Xm.prototype.layoutConnection=function(e,t){return[(t=t||{}).connectionStart||cn(t.source||e.source),t.connectionEnd||cn(t.target||e.target)]};var Zm=Math.round,Qm={"h:h":20,"v:v":20,"h:v":-10,"v:h":-10};function Jm(e,t,n){var i,r,o,a=pn(t,e,5),s=n.split(":")[0],c=Zm((t.x-e.x)/2+e.x),p=Zm((t.y-e.y)/2+e.y),l=(o=a,{t:/top/,r:/right/,b:/bottom/,l:/left/,h:/left|right/,v:/top|bottom/}[s].test(o)),u=/h|r|l/.test(s),h=!1;return l?(i=u?{x:c,y:e.y}:{x:e.x,y:p},r=u?"h:h":"v:v"):(r=u?"h:v":"v:h",function(e,t){return!{t:/top/,r:/right/,b:/bottom/,l:/left/,h:/./,v:/./}[t].test(e)}(a,s)?u?(h=p===e.y,i={x:e.x+20*(/l/.test(s)?-1:1),y:h?p+20:p}):i={x:(h=c===e.x)?c+20:c,y:e.y+20*(/t/.test(s)?-1:1)}:i={x:c,y:p}),{waypoints:tv(e,i,r).concat(i),directions:r,turnNextDirections:h}}function ev(e){return e.split(":").reverse().join(":")}function tv(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(av(n)){var i=function(e,t,n){return Jm(e,t,n)}(e,t,n),r=function(e,t,n){var i=Jm(t,e,ev(n));return{waypoints:i.waypoints.slice().reverse(),directions:ev(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:tv(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=Zm((t.x-e.x)/2+e.x),r=Zm((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 nv(e,t,n,i,r){var o=x(r&&r.preferredLayouts||[],"straight")[0]||"h:h",a=pn(e,t,Qm[o]||0),s=function(e,t){if(av(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||cn(e),i=i||cn(t);var c=s.split(":");return function(e,t,n){var i=tv(e,t,n);return i.unshift(e),i.push(t),cv(i)}(sv(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)),sv(i,t,c[1],a),s)}function iv(e,t,n,i,r,o){var a;return u(n)&&(r=n,o=i,n=cn(e),i=cn(t)),r=r||[],(a=-1!==(o=F({preferredLayouts:[]},o)).preferredLayouts.indexOf("straight")&&function(e,t,n,i,r){var o,a,s={};if(a=pn(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?rv(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:rv(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=o.connectionEnd&&function(e,t,n,i){var r=i.slice().reverse();return(r=ov(e,t,n,r))?r.reverse():null}(t,e,i,r))?a:(a=o.connectionStart&&ov(e,t,n,r))||(!o.connectionStart&&!o.connectionEnd&&r&&r.length?r:nv(e,t,n,i,o))}function rv(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 ov(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&>(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(xt(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(_t(e[i],t,20)||_t(e[i],n,20))return e.slice(i);return e}(a,e,t))!==a&&(a=ov(e,t,n,r)),a&&xt(a)?null:a}function av(e){return e&&/t|r|b|l/.test(e)}function sv(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 cv(e){return e.reduce((function(t,n,i){return bt(t[t.length-1],e[i+1],n,0)||t.push(n),t}),[])}var pv={top:"bottom","top-right":"bottom-left","top-left":"bottom-right",right:"left",bottom:"top","bottom-right":"top-left","bottom-left":"top-right",left:"right"},lv={top:"t",right:"r",bottom:"b",left:"l"};function uv(){}function hv(e,t){return vr(t,"bpmn:Participant")?"source":vr(e,"bpmn:Participant")?"target":vv(t)?"source":vv(e)||vr(t,"bpmn:Event")?"target":vr(e,"bpmn:Event")?"source":null}function dv(e){return vv(e)?"target":"source"}function fv(e,t){return e?e.original||e:cn(t)}function mv(e,t){return vr(t,"bpmn:Activity")&&vr(e,"bpmn:BoundaryEvent")&&t.businessObject.isForCompensation}function vv(e){return vr(e,"bpmn:SubProcess")&&Dr(e)}function yv(e,t){return e===t}function gv(e){var t=/right|left/.exec(e);return t&&t[0]}function bv(e){var t=/top|bottom/.exec(e);return t&&t[0]}function xv(e){return"right"===e||"left"===e}function _v(e,t){var n=t.waypoints,i=n&&n.length&&pn(n[0],e);return"top"===i?["t:r"]:"right"===i?["r:b"]:"left"===i?["l:t"]:["b:l"]}function Ev(e,t,n){var i,r,o=cn(e),a=cn(t),s=(r=(i=e).host,pn(cn(i),r,-10)),c=yv(e.host,t),p=-1!==["top","right","bottom","left"].indexOf(s),l=pn(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:bv(e),s=lv[a];o=t?xv(e)?wv("y",n,i,r)?"h":"b":wv("x",n,i,r)?"v":"l":"v";return[s+":"+o]}(s,p,e,t,n):[function(e,t,n){if(n)return lv[e];if(yv(bv(e),bv(t))||(i=gv(e),r=gv(t),pv[i]===r))return lv[bv(e)];var i,r;return lv[gv(e)]}(s,l,p)+":"+function(e,t,n){if(n)return xv(e)?(i=t,r=gv(e),o=pv[r],-1!==i.indexOf(o)||yv(e,t)?"h":"v"):function(e,t){var n=bv(e),i=pv[n];return-1!==t.indexOf(i)}(e,t)||yv(e,t)?"v":"h";var i,r,o;return xv(t)||yv(bv(e),bv(t))&&gv(t)?"h":"v"}(s,l,p)]}function wv(e,t,n,i){return!(Sv(e,i,n,40)||Sv(e,i,{x:n.x+n.width,y:n.y+n.height},40)||Sv(e,i,cn(t),40))}function Sv(e,t,n,i){return Math.abs(t[e]-n[e])<i}function Cv(e){return F({original:e.point.original||e.point},e.actual)}function Rv(e,t){this._elementRegistry=e,this._graphicsFactory=t}n(uv,Xm),uv.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=fv(a&&a[0],r)),c||(c=fv(a&&a[a.length-1],o)),(vr(e,"bpmn:Association")||vr(e,"bpmn:DataAssociation"))&&a&&!mv(r,o)?[].concat([s],a.slice(1,-1),[c]):(vr(e,"bpmn:MessageFlow")?n=function(e,t){return{preferredLayouts:["straight","v:v"],preserveDocking:hv(e,t)}}(r,o):(vr(e,"bpmn:SequenceFlow")||mv(r,o))&&(n=r===o?{preferredLayouts:_v(r,e)}:vr(r,"bpmn:BoundaryEvent")?{preferredLayouts:Ev(r,o,c)}:vv(r)||vv(o)?function(e){return{preferredLayouts:["straight","h:h"],preserveDocking:dv(e)}}(r):vr(r,"bpmn:Gateway")?{preferredLayouts:["v:h"]}:vr(o,"bpmn:Gateway")?{preferredLayouts:["h:v"]}:{preferredLayouts:["h:h"]}),n&&(i=cv(iv(r,o,s,c,a,n=F(n,t)))),i||[s,c])},Rv.$inject=["elementRegistry","graphicsFactory"],Rv.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(Cv(i)),o.push(Cv(r)),o},Rv.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}},Rv.prototype._getIntersection=function(e,t,n){return ln(this._getShapePath(e),this._getConnectionPath(t),n)},Rv.prototype._getConnectionPath=function(e){return this._graphicsFactory.getConnectionPath(e)},Rv.prototype._getShapePath=function(e){return this._graphicsFactory.getShapePath(e)},Rv.prototype._getGfx=function(e){return this._elementRegistry.getGraphics(e)};var Tv={__init__:["modeling","bpmnUpdater"],__depends__:[hd,qd,Yd,Qd,Dp,ef,af,lf,ff,No,Go,Nf],bpmnFactory:["type",Of],bpmnUpdater:["type",jf],elementFactory:["type",If],modeling:["type",Ym],layouter:["type",uv],connectionDocking:["type",Rv]},Pv=Math.round;function Av(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+Pv(e.width/2),y:e.y+Pv(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",1500,(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=P(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",1250,(function(e){var t=e.context,n=t.validatedShapes;if(!(t.canExecute=o(n)))return!1})),e.on("shape.move.move",500,(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=Pv(i.x),i.y=Pv(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){if(bo(e)){var t=mo(e);if(!t)throw new Error("must supply DOM mousedown event");return a(t,e.element)}})),this.start=a}Av.$inject=["eventBus","dragging","modeling","selection","rules"];var kv="djs-dragging",Mv="drop-ok",Dv="drop-not-ok",Bv="new-parent",Nv="attach-ok";function Ov(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=ct(e,!0),n=S(t,(function(e){return(e.incoming||[]).concat(e.outgoing||[])}));return o(t.concat(n))}function s(e,n){[Nv,Mv,Dv,Bv].forEach((function(i){i===n?t.addMarker(e,i):t.removeMarker(e,i)}))}e.on("shape.move.start",499,(function(e){var s=e.context,c=s.shapes,p=s.allDraggedElements,l=r(c);if(!s.dragGroup){var u=Me("g");ge(u,n.cls("djs-drag-group",["no-events"])),me(t.getActiveLayer(),u),s.dragGroup=u}l.forEach((function(e){i.addDragger(e,s.dragGroup)})),b(p=p?o([p,a(c)]):a(c),(function(e){t.addMarker(e,kv)})),s.allDraggedElements=p,s.differentParents=1!==R(P(c,(function(e){return e.parent&&e.parent.id})))})),e.on("shape.move.move",499,(function(e){var t=e.context,n=t.dragGroup,i=t.target,r=t.shape.parent,o=t.canExecute;i&&("attach"===o?s(i,Nv):t.canExecute&&i&&i.id!==r.id?s(i,Bv):s(i,t.canExecute?Mv:Dv)),Gn(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,kv)})),r&&Ce(r)})),this.makeDraggable=function(e,n,r){i.addDragger(n,e.dragGroup),r&&t.addMarker(n,kv),e.allDraggedElements?e.allDraggedElements.push(n):e.allDraggedElements=[n]}}Ov.$inject=["eventBus","canvas","styles","previewSupport"];var jv={__depends__:[Co,No,To,Os,ks,Uc],__init__:["move","movePreview"],move:["type",Av],movePreview:["type",Ov]},Lv=".djs-palette-toggle",Iv=".entry",zv="open",Fv="two-column";function $v(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 Hv(e,t){var n=t.getPaletteEntries();return f(n)?n(e):(b(n,(function(t,n){e[n]=t})),e)}$v.$inject=["eventBus","canvas"],$v.prototype.registerProvider=function(e,t){t||(t=e,e=1e3),this._eventBus.on("palette.getProviders",e,(function(e){e.providers.push(t)})),this._rebuild()},$v.prototype.getEntries=function(){return this._getProviders().reduce(Hv,{})},$v.prototype._rebuild=function(){this._diagramInitialized&&(this._getProviders().length&&(this._container||this._init(),this._update()))},$v.prototype._init=function(){var e=this,t=this._eventBus,n=this._getParentContainer(),i=this._container=ce($v.HTML_MARKUP);n.appendChild(i),K(n).add("djs-palette-shown"),se.bind(i,".djs-palette-toggle, .entry","click",(function(t){var n=t.delegateTarget;if(J(n,Lv))return e.toggle();e.trigger("click",t)})),re.bind(i,"mousedown",(function(e){e.stopPropagation()})),se.bind(i,Iv,"dragstart",(function(t){e.trigger("dragstart",t)})),t.on("canvas.resized",this._layoutChanged,this),t.fire("palette.create",{container:i})},$v.prototype._getProviders=function(e){var t=this._eventBus.createEvent({type:"palette.getProviders",providers:[]});return this._eventBus.fire(t),t.providers},$v.prototype._toggleState=function(e){e=e||{};var t,n=this._getParentContainer(),i=this._container,r=this._eventBus,o=K(i),a=K(n);t="twoColumn"in e?e.twoColumn:this._needsCollapse(n.clientHeight,this._entries||{}),o.toggle(Fv,t),a.toggle("djs-palette-two-column",t),"open"in e&&(o.toggle(zv,e.open),a.toggle("djs-palette-open",e.open)),r.fire("palette.changed",{twoColumn:t,open:this.isOpen()})},$v.prototype._update=function(){var e=ue(".djs-palette-entries",this._container),t=this._entries=this.getEntries();X(e),b(t,(function(t,n){var i=t.group||"default",r=ue("[data-group="+i+"]",e);r||(r=ce('<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=ce(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);(u(t)?t:t.split(/\s+/g)).forEach((function(e){n.add(e)}))}(a,t.className),t.imageUrl&&a.appendChild(ce('<img src="'+t.imageUrl+'">')))})),this.open()},$v.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())},$v.prototype._layoutChanged=function(){this._toggleState({})},$v.prototype._needsCollapse=function(e,t){return e<46*Object.keys(t).length+50},$v.prototype.close=function(){this._toggleState({open:!1,twoColumn:!1})},$v.prototype.open=function(){this._toggleState({open:!0})},$v.prototype.toggle=function(e){this.isOpen()?this.close():this.open()},$v.prototype.isActiveTool=function(e){return e&&this._activeTool===e},$v.prototype.updateToolHighlight=function(e){var t;this._toolsContainer||(t=ue(".djs-palette-entries",this._container),this._toolsContainer=ue("[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")}}))},$v.prototype.isOpen=function(){return K(this._container).has(zv)},$v.prototype._getParentContainer=function(){return this._canvas.getContainer()},$v.HTML_MARKUP='<div class="djs-palette"><div class="djs-palette-entries"></div><div class="djs-palette-toggle"></div></div>';var Gv={__init__:["palette"],palette:["type",$v]},Wv="crosshair";function Vv(e,t,n,i,r,o,a){this._selection=r,this._dragging=n,this._mouse=a;var s=this,c=function(e){var n,i=t.getActiveLayer();ge(n=e.frame=Me("rect"),{class:"djs-lasso-overlay",width:1,height:1,x:0,y:0}),me(i,n)},p=function(e){var t=e.frame,n=e.bbox;ge(t,{x:n.x,y:n.y,width:n.width,height:n.height})},l=function(e){e.frame&&Ce(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(){s.activateLasso(t.originalEvent,!0)}))})),e.on("lasso.end",(function(e){var t=Uv(e),n=i.filter((function(e){return e}));s.select(n,t)})),e.on("lasso.start",(function(e){var t=e.context;t.bbox=Uv(e),c(t)})),e.on("lasso.move",(function(e){var t=e.context;t.bbox=Uv(e),p(t)})),e.on("lasso.cleanup",(function(e){var t=e.context;l(t)})),e.on("element.mousedown",1500,(function(e){if(_o(e))return s.activateLasso(e.originalEvent),!0}))}function Uv(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}}Vv.$inject=["eventBus","canvas","dragging","elementRegistry","selection","toolManager","mouse"],Vv.prototype.activateLasso=function(e,t){this._dragging.init(e,"lasso",{autoActivate:t,cursor:Wv,data:{context:{}}})},Vv.prototype.activateSelection=function(e,t){this._dragging.init(e,"lasso.selection",{trapClick:!1,autoActivate:t,cursor:Wv,data:{context:{}}})},Vv.prototype.select=function(e,t){var n=function(e,t){var n={};return b(e,(function(e){var i=e;i.waypoints&&(i=pt(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(T(n))},Vv.prototype.toggle=function(){if(this.isActive())return this._dragging.cancel();var e=this._mouse.getLastMoveEvent();this.activateSelection(e,!!e)},Vv.prototype.isActive=function(){var e=this._dragging.context();return e&&/^lasso/.test(e.prefix)};var qv={__depends__:[vf,up],__init__:["lassoTool"],lassoTool:["type",Vv]},Kv=1500,Yv="grab";function Xv(e,t,n,i,r,o){this._dragging=n,this._mouse=o;var a=this,s=i.get("keyboard",!1);r.registerTool("hand",{tool:"hand",dragging:"hand.move"}),e.on("element.mousedown",Kv,(function(e){if(xo(e))return a.activateMove(e.originalEvent,!0),!1})),s&&s.addListener(Kv,(function(e){if(Zv(e.keyEvent)&&!a.isActive()){var t=a._mouse.getLastMoveEvent();a.activateMove(t,!!t)}}),"keyboard.keydown"),s&&s.addListener(Kv,(function(e){Zv(e.keyEvent)&&a.isActive()&&a.toggle()}),"keyboard.keyup"),e.on("hand.end",(function(t){var n=t.originalEvent.target;if(!(t.hover||n instanceof SVGElement))return!1;e.once("hand.ended",(function(){a.activateMove(t.originalEvent,{reactivate:!0})}))})),e.on("hand.move.move",(function(e){var n=t.viewbox().scale;t.scroll({dx:e.dx*n,dy:e.dy*n})})),e.on("hand.move.end",(function(t){var n=t.context.reactivate;return!xo(t)&&n&&e.once("hand.move.ended",(function(e){a.activateHand(e.originalEvent,!0,!0)})),!1}))}function Zv(e){return ma(" ",e)}Xv.$inject=["eventBus","canvas","dragging","injector","toolManager","mouse"],Xv.prototype.activateMove=function(e,t,n){"object"==typeof t&&(n=t,t=!1),this._dragging.init(e,"hand.move",{autoActivate:t,cursor:Yv,data:{context:n||{}}})},Xv.prototype.activateHand=function(e,t,n){this._dragging.init(e,"hand",{trapClick:!1,autoActivate:t,cursor:Yv,data:{context:{reactivate:n}}})},Xv.prototype.toggle=function(){if(this.isActive())return this._dragging.cancel();var e=this._mouse.getLastMoveEvent();this.activateHand(e,!!e)},Xv.prototype.isActive=function(){var e=this._dragging.context();return!!e&&/^(hand|hand\.move)$/.test(e.prefix)};var Qv={__depends__:[vf,up],__init__:["handTool"],handTool:["type",Xv]},Jv="connect-ok",ey="connect-not-ok";function ty(e,t,n,i,r,o,a){var s=this;this._dragging=t,this._rules=o,this._mouse=a,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=s.canStartConnect(n);null!==r&&(t.startTarget=n,i.addMarker(n,r?Jv:ey))})),e.on(["global-connect.out","global-connect.cleanup"],(function(e){var t=e.context.startTarget,n=e.context.canStartConnect;t&&i.removeMarker(t,n?Jv:ey)})),e.on(["global-connect.ended"],(function(t){var i=t.context.startTarget,r={x:t.x,y:t.y};if(s.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}))}ty.$inject=["eventBus","dragging","connect","canvas","toolManager","rules","mouse"],ty.prototype.start=function(e,t){this._dragging.init(e,"global-connect",{autoActivate:t,trapClick:!1,data:{context:{}}})},ty.prototype.toggle=function(){if(this.isActive())return this._dragging.cancel();var e=this._mouse.getLastMoveEvent();return this.start(e,!!e)},ty.prototype.isActive=function(){var e=this._dragging.context();return e&&/^global-connect/.test(e.prefix)},ty.prototype.canStartConnect=function(e){return this._rules.allowed("connection.start",{source:e})};var ny={__depends__:[kc,Os,ks,vf,up],globalConnect:["type",ty]};function iy(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)}iy.$inject=["palette","create","elementFactory","spaceTool","lassoTool","handTool","globalConnect","translate"],iy.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&&(br(r).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 l(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:[t]}})}function u(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.start(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:l,click:l}},"create.participant-expanded":{group:"collaboration",className:"bpmn-icon-participant",title:c("Create Pool/Participant"),action:{dragstart:u,click:u}},"create.group":p("bpmn:Group","artifact","bpmn-icon-group",c("Create Group"))}),t};var ry={__depends__:[Gv,ip,Nf,qv,Qv,ny,to],__init__:["paletteProvider"],paletteProvider:["type",iy]};function oy(e,t,n,i,r){Wo.call(this,e),e.on("shape.move.move",250,(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 l=ue('[data-element-id="'+Ko(c.id)+'"]',e.dragGroup);l&&ge(l,{display:"none"});var u=r.addDragger(p,e.dragGroup);e.visualReplacements[a]=u,i.removeShape(p)}}))}(o):function(e){var t=e.visualReplacements;b(t,(function(n,i){var r=ue('[data-element-id="'+Ko(i)+'"]',e.dragGroup);r&&ge(r,{display:"inline"}),n.remove(),t[i]&&delete t[i]}))}(o)}))}oy.$inject=["eventBus","elementRegistry","elementFactory","canvas","previewSupport"],n(oy,Wo);var ay={__depends__:[Uc],__init__:["bpmnReplacePreview"],bpmnReplacePreview:["type",oy]},sy=40,cy=["x","y"],py=Math.abs;function ly(e){e.on(["connect.hover","connect.move","connect.end"],1250,(function(e){var t=e.context,n=t.canExecute,i=t.start,r=t.hover,o=t.source,a=t.target;e.originalEvent&&fa(e.originalEvent)||(t.initialConnectionStart||(t.initialConnectionStart=t.connectionStart),n&&r&&function(e,t,n){cy.forEach((function(i){var r=dy(i,t);e[i]<t[i]+n?bc(e,i,t[i]+n):e[i]>t[i]+r-n&&bc(e,i,t[i]+r-n)}))}(e,r,function(e){return vr(e,"bpmn:Task")?10:20}(r)),r&&function(e,t){return w(t,(function(t){return hy(e,t)}))}(n,["bpmn:Association","bpmn:DataInputAssociation","bpmn:DataOutputAssociation","bpmn:SequenceFlow"])?(t.connectionStart=yc(i),yr(r,["bpmn:Event","bpmn:Gateway"])&&uy(e,yc(r)),yr(r,["bpmn:Task","bpmn:SubProcess"])&&function(e,t){var n=yc(t);cy.forEach((function(i){(function(e,t,n){return e[n]>t[n]+20&&e[n]<t[n]+dy(n,t)-20})(e,t,i)&&bc(e,i,n[i])}))}(e,r),vr(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=yc(n),o=pn(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];py(i-r[t])<sy&&(n=i>r[t]?r[t]+sy:r[t]-sy,bc(e,t,n))}))}(e)):hy(n,"bpmn:MessageFlow")?(vr(i,"bpmn:Event")&&(t.connectionStart=yc(i)),vr(r,"bpmn:Event")&&uy(e,yc(r))):t.connectionStart=t.initialConnectionStart)}))}function uy(e,t){bc(e,"x",t.x),bc(e,"y",t.y)}function hy(e,t){return e&&e.type===t}function dy(e,t){return"x"===e?t.width:t.height}function fy(){this._targets={},this._snapOrigins={},this._snapLocations=[],this._defaultSnaps={}}function my(e){this._snapValues={}}ly.$inject=["eventBus"],fy.prototype.getSnapOrigin=function(e){return this._snapOrigins[e]},fy.prototype.setSnapOrigin=function(e,t){this._snapOrigins[e]=t,-1===this._snapLocations.indexOf(e)&&this._snapLocations.push(e)},fy.prototype.addDefaultSnap=function(e,t){var n=this._defaultSnaps[e];n||(n=this._defaultSnaps[e]=[]),n.push(t)},fy.prototype.getSnapLocations=function(){return this._snapLocations},fy.prototype.setSnapLocations=function(e){this._snapLocations=e},fy.prototype.pointsForTarget=function(e){var t=e.id||e,n=this._targets[t];return n||(n=this._targets[t]=new my).initDefaults(this._defaultSnaps),n},my.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)},my.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],dc(r-e)<=n)return r}(e[n],r[n],i)},my.prototype.initDefaults=function(e){var t=this;b(e||{},(function(e,n){b(e,(function(e){t.add(n,e)}))}))};function vy(e,t,n){var i=this;this._elementRegistry=e,t.on(["create.start","shape.move.start"],(function(e){i.initSnap(e)})),t.on(["create.move","create.end","shape.move.move","shape.move.end"],1250,(function(e){var t=e.context,r=t.shape,o=t.snapContext,a=t.target;if((!e.originalEvent||!fa(e.originalEvent))&&!gc(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 yy(e){return!!e.labelTarget}vy.$inject=["elementRegistry","eventBus","snapping"],vy.prototype.initSnap=function(e){var t,n=this._elementRegistry,i=e.context,r=i.shape,o=i.snapContext;o||(o=i.snapContext=new fy);var a=(t=n.get(r.id)?yc(r,e):{x:e.x+yc(r).x,y:e.y+yc(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}),yy(r)||(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},vy.prototype.addSnapTargetPoints=function(e,t,n){return b(this.getSnapTargets(t,n),(function(n){if(yy(n))yy(t)&&e.add("mid",yc(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",yc(n))}})),d(t.x)&&d(t.y)?(this._elementRegistry.get(t.id)&&e.add("mid",yc(t)),e):e},vy.prototype.getSnapTargets=function(e,t){return xc(t).filter((function(e){return!e.hidden}))};function gy(e,t){t.invoke(vy,this),e.on(["create.move","create.end"],1500,by),e.on(["create.move","create.end","shape.move.move","shape.move.end"],1500,(function(e){var t=e.context,n=t.canExecute,i=t.target;n&&("attach"===n||n.attach)&&!gc(e)&&function(e,t){var n,i=an(t),r=dd(e,t),o=e.context.shape;n=o.parent?{x:0,y:0}:cn(o);/top/.test(r)?bc(e,"y",i.top-n.y):/bottom/.test(r)&&bc(e,"y",i.bottom-n.y);/left/.test(r)?bc(e,"x",i.left-n.x):/right/.test(r)&&bc(e,"x",i.right-n.x)}(e,i)}))}function by(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)&&bc(e,"x",e.x),(n&&n>=e.y||r&&r<=e.y)&&bc(e,"y",e.y)}}function xy(e,t){return-1!==e.indexOf(t)}function _y(e,t,n){return t?{x:e.x-n.x,y:e.y-n.y}:{x:e.x,y:e.y}}n(gy,vy),gy.$inject=["eventBus","injector"],gy.prototype.initSnap=function(e){var t=vy.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",_y(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",_y(r,i,e))})),vr(n,"bpmn:Participant")&&t.setSnapLocations(["top-left","bottom-right","mid"]),t},gy.prototype.addSnapTargetPoints=function(e,t,n){vy.prototype.addSnapTargetPoints.call(this,e,t,n);var i=this.getSnapTargets(t,n);b(i,(function(n){var i;(function(e){if(vr(e,"bpmn:SubProcess")&&Dr(e))return!0;return vr(e,"bpmn:Participant")}(n)||(i="bpmn:TextAnnotation",[t,n].every((function(e){return vr(e,i)}))))&&(e.add("top-left",mc(n)),e.add("bottom-right",vc(n)))}));var r=this._elementRegistry;return b(t.incoming,(function(n){if(r.get(t.id)){xy(i,n.source)||e.add("mid",cn(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)){xy(i,n.target)||e.add("mid",cn(n.target));var o=n.waypoints[n.waypoints.length-1];e.add(n.id+"-docking",o.original||o)}})),vr(n,"bpmn:SequenceFlow")&&(e=this.addSnapTargetPoints(e,t,n.parent)),e},gy.prototype.getSnapTargets=function(e,t){return vy.prototype.getSnapTargets.call(this,e,t).filter((function(e){return!vr(e,"bpmn:Lane")}))};function Ey(e,t){var n=this;e.on(["resize.start"],(function(e){n.initSnap(e)})),e.on(["resize.move","resize.end"],1250,(function(e){var i=e.context,r=i.shape,o=r.parent,a=i.direction,s=i.snapContext;if(!(e.originalEvent&&fa(e.originalEvent)||gc(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)&&bc(e,"x",e.x),function(e){return"e"===e||"w"===e}(a)&&bc(e,"y",e.y),t.snap(e,c)}})),e.on(["resize.cleanup"],(function(){t.hide()}))}function wy(e,t){var n=cn(e),i=an(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}Ey.prototype.initSnap=function(e){var t=e.context,n=t.shape,i=t.direction,r=t.snapContext;r||(r=t.snapContext=new fy);var o=wy(n,i);return r.setSnapOrigin("corner",{x:o.x-e.x,y:o.y-e.y}),r},Ey.prototype.addSnapTargetPoints=function(e,t,n,i){return b(this.getSnapTargets(t,n),(function(t){e.add("corner",vc(t)),e.add("corner",mc(t))})),e.add("corner",wy(t,i)),e},Ey.$inject=["eventBus","snapping"],Ey.prototype.getSnapTargets=function(e,t){return xc(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}))};function Sy(e){this._canvas=e,this._asyncHide=L(I(this.hide,this),1e3)}Sy.$inject=["canvas"],Sy.prototype.snap=function(e,t){var n=e.context.snapContext,i=n.getSnapLocations(),r={x:gc(e,"x"),y:gc(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)&&bc(e,t,n.originValue)}))},Sy.prototype._createLine=function(e){var t=this._canvas.getLayer("snap"),n=Me("path");return ge(n,{d:"M0,0 L0,0"}),we(n).add("djs-snap-line"),me(t,n),{update:function(t){d(t)?ge(n,"horizontal"===e?{d:"M-100000,"+t+" L+100000,"+t,display:""}:{d:"M "+t+",-100000 L "+t+", +100000",display:""}):ge(n,{display:"none"})}}},Sy.prototype._createSnapLines=function(){this._snapLines={horizontal:this._createLine("horizontal"),vertical:this._createLine("vertical")}},Sy.prototype.showSnapLine=function(e,t){var n=this.getSnapLine(e);n&&n.update(t),this._asyncHide()},Sy.prototype.getSnapLine=function(e){return this._snapLines||this._createSnapLines(),this._snapLines[e]},Sy.prototype.hide=function(){b(this._snapLines,(function(e){e.update()}))};var Cy={__depends__:[{__init__:["createMoveSnapping","resizeSnapping","snapping"],createMoveSnapping:["type",vy],resizeSnapping:["type",Ey],snapping:["type",Sy]}],__init__:["connectSnapping","createMoveSnapping"],connectSnapping:["type",ly],createMoveSnapping:["type",gy]};function Ry(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=ce(Ry.BOX_HTML),this._searchInput=ue(Ry.INPUT_SELECTOR,this._container),this._resultsContainer=ue(Ry.RESULTS_CONTAINER_SELECTOR,this._container),this._canvas.getContainer().appendChild(this._container),t.on(["canvas.destroy","diagram.destroy"],this.close,this)}function Ty(e,t,n){var i=function(e){var t="";return e.forEach((function(e){e.matched?t+='<strong class="'+Ry.RESULT_HIGHLIGHT_CLASS+'">'+Xo(e.matched)+"</strong>":t+=Xo(e.normal)})),""!==t?t:null}(t),r=ce(n);r.innerHTML=i,e.appendChild(r)}Ry.$inject=["canvas","eventBus","overlays","selection"],Ry.prototype._bindEvents=function(){var e=this;function t(t,n,i,r){e._eventMaps.push({el:t,type:i,listener:se.bind(t,n,i,r)})}t(document,"html","click",(function(t){e.close()})),t(this._container,Ry.INPUT_SELECTOR,"click",(function(e){e.stopPropagation(),e.delegateTarget.focus()})),t(this._container,Ry.RESULT_SELECTOR,"mouseover",(function(t){t.stopPropagation(),e._scrollToNode(t.delegateTarget),e._preselect(t.delegateTarget)})),t(this._container,Ry.RESULT_SELECTOR,"click",(function(t){t.stopPropagation(),e._select(t.delegateTarget)})),t(this._container,Ry.INPUT_SELECTOR,"keydown",(function(e){38===e.keyCode&&e.preventDefault(),40===e.keyCode&&e.preventDefault()})),t(this._container,Ry.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))}))},Ry.prototype._unbindEvents=function(){this._eventMaps.forEach((function(e){se.unbind(e.el,e.type,e.listener)}))},Ry.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=ue(Ry.RESULT_SELECTOR,this._resultsContainer);this._scrollToNode(i),this._preselect(i)}}},Ry.prototype._scrollToDirection=function(e){var t=this._getCurrentResult();if(t){var n=e?t.previousElementSibling:t.nextElementSibling;n&&(this._scrollToNode(n),this._preselect(n))}},Ry.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)}},Ry.prototype._clearResults=function(){X(this._resultsContainer),this._results=[],this._resetOverlay(),this._eventBus.fire("searchPad.cleared")},Ry.prototype._getCurrentResult=function(){return ue(Ry.RESULT_SELECTED_SELECTOR,this._resultsContainer)},Ry.prototype._createResultNode=function(e,t){var n=ce(Ry.RESULT_HTML);return e.primaryTokens.length>0&&Ty(n,e.primaryTokens,Ry.RESULT_PRIMARY_HTML),Ty(n,e.secondaryTokens,Ry.RESULT_SECONDARY_HTML),G(n,Ry.RESULT_ID_ATTRIBUTE,t),this._resultsContainer.appendChild(n),n},Ry.prototype.registerProvider=function(e){this._searchProvider=e},Ry.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"))},Ry.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"))},Ry.prototype.toggle=function(){this.isOpen()?this.close():this.open()},Ry.prototype.isOpen=function(){return this._open},Ry.prototype._preselect=function(e){var t=this._getCurrentResult();if(e!==t){t&&K(t).remove(Ry.RESULT_SELECTED_CLASS);var n=G(e,Ry.RESULT_ID_ATTRIBUTE),i=this._results[n].element;K(e).add(Ry.RESULT_SELECTED_CLASS),this._resetOverlay(i),this._canvas.scrollToElement(i,{top:400}),this._selection.select(i),this._eventBus.fire("searchPad.preselected",i)}},Ry.prototype._select=function(e){var t=G(e,Ry.RESULT_ID_ATTRIBUTE),n=this._results[t].element;this.close(),this._resetOverlay(),this._canvas.scrollToElement(n,{top:400}),this._selection.select(n),this._eventBus.fire("searchPad.selected",n)},Ry.prototype._resetOverlay=function(e){if(this._overlayId&&this._overlays.remove(this._overlayId),e){var t=function(e){var t=6,n=e.width+2*t,i=e.height+2*t,r=["width: "+n+"px","height: "+i+"px"].join("; ");return{position:{bottom:i-t,right:n-t},show:!0,html:'<div style="'+r+'" class="'+Ry.OVERLAY_CLASS+'"></div>'}}(pt(e));this._overlayId=this._overlays.add(e,t)}},Ry.CONTAINER_SELECTOR=".djs-search-container",Ry.INPUT_SELECTOR=".djs-search-input input",Ry.RESULTS_CONTAINER_SELECTOR=".djs-search-results",Ry.RESULT_SELECTOR=".djs-search-result",Ry.RESULT_SELECTED_CLASS="djs-search-result-selected",Ry.RESULT_SELECTED_SELECTOR="."+Ry.RESULT_SELECTED_CLASS,Ry.RESULT_ID_ATTRIBUTE="data-result-id",Ry.RESULT_HIGHLIGHT_CLASS="djs-search-highlight",Ry.OVERLAY_CLASS="djs-search-overlay",Ry.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>',Ry.RESULT_HTML='<div class="djs-search-result"></div>',Ry.RESULT_PRIMARY_HTML='<div class="djs-search-result-primary"></div>',Ry.RESULT_SECONDARY_HTML='<p class="djs-search-result-secondary"></p>';var Py={__depends__:[$o,No],searchPad:["type",Ry]};function Ay(e,t,n){this._elementRegistry=e,this._canvas=n,t.registerProvider(this)}function ky(e){return g(e,(function(e){return!!e.matched})).length>0}function My(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}Ay.$inject=["elementRegistry","searchPad","canvas"],Ay.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:My(jr(t),e),secondaryTokens:My(t.id,e),element:t}})),(function(e){return ky(e.primaryTokens)||ky(e.secondaryTokens)})),(function(e){return jr(e.element)+e.element.id}))};var Dy={__depends__:[Py],__init__:["bpmnSearch"],bpmnSearch:["type",Ay]};function By(e){Mr.call(this,e)}return n(By,Mr),By.Viewer=da,By.NavigatedViewer=Ga,By.prototype.createDiagram=hr((function(){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>')})),By.prototype._interactionModules=[Pa,ja,Qa,Ha],By.prototype._modelingModules=[rs,ys,Bs,ws,Sc,kc,Dc,dl,Sp,ip,gl,Sl,Il,Fl,Hl,Xl,mu,Tv,jv,ry,ay,su,Cy,Dy],By.prototype._modules=[].concat(da.prototype._modules,By.prototype._interactionModules,By.prototype._modelingModules),By}));
|
|
34
|
+
* Licensed under the MIT license */!function(e){!function(t,n,i,r){var o,a=["","webkit","Moz","MS","ms","o"],s=n.createElement("div"),c=Math.round,p=Math.abs,l=Date.now;function u(e,t,n){return setTimeout(g(e,n),t)}function h(e,t,n){return!!Array.isArray(e)&&(d(e,n[t],n),!0)}function d(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 f(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 m=f((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`."),v=f((function(e,t){return m(e,t,!0)}),"merge","Use `assign`.");function y(e,t,n){var i,r=t.prototype;(i=e.prototype=Object.create(r)).constructor=e,i._super=r,n&&o(i,n)}function g(e,t){return function(){return e.apply(t,arguments)}}function b(e,t){return"function"==typeof e?e.apply(t&&t[0]||r,t):e}function x(e,t){return e===r?t:e}function _(e,t,n){d(C(t),(function(t){e.addEventListener(t,n,!1)}))}function E(e,t,n){d(C(t),(function(t){e.removeEventListener(t,n,!1)}))}function w(e,t){for(;e;){if(e==t)return!0;e=e.parentNode}return!1}function S(e,t){return e.indexOf(t)>-1}function C(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 T(e){return Array.prototype.slice.call(e,0)}function P(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 A(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 k(e){var n=e.ownerDocument||e;return n.defaultView||n.parentWindow||t}var D="ontouchstart"in t,B=A(t,"PointerEvent")!==r,N=D&&/mobile|tablet|ip(ad|hone|od)|android/i.test(navigator.userAgent),O="touch",j="mouse",L=24,I=["x","y"],z=["clientX","clientY"];function F(e,t){var n=this;this.manager=e,this.callback=t,this.element=e.element,this.target=e.options.inputTarget,this.domHandler=function(t){b(e.options.enable,[e])&&n.handler(t)},this.init()}function $(e,t,n){var i=n.pointers.length,o=n.changedPointers.length,a=1&t&&i-o==0,s=12&t&&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=H(t));o>1&&!n.firstMultiple?n.firstMultiple=H(t):1===o&&(n.firstMultiple=!1);var a=n.firstInput,s=n.firstMultiple,c=s?s.center:a.center,u=t.center=G(i);t.timeStamp=l(),t.deltaTime=t.timeStamp-a.timeStamp,t.angle=q(c,u),t.distance=U(c,u),function(e,t){var n=t.center,i=e.offsetDelta||{},r=e.prevDelta||{},o=e.prevInput||{};1!==t.eventType&&4!==o.eventType||(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=W(t.deltaX,t.deltaY);var h=V(t.deltaTime,t.deltaX,t.deltaY);t.overallVelocityX=h.x,t.overallVelocityY=h.y,t.overallVelocity=p(h.x)>p(h.y)?h.x:h.y,t.scale=s?(d=s.pointers,f=i,U(f[0],f[1],z)/U(d[0],d[1],z)):1,t.rotation=s?function(e,t){return q(t[1],t[0],z)+q(e[1],e[0],z)}(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(8!=t.eventType&&(c>25||s.velocity===r)){var l=t.deltaX-s.deltaX,u=t.deltaY-s.deltaY,h=V(c,l,u);i=h.x,o=h.y,n=p(h.x)>p(h.y)?h.x:h.y,a=W(l,u),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;w(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 H(e){for(var t=[],n=0;n<e.pointers.length;)t[n]={clientX:c(e.pointers[n].clientX),clientY:c(e.pointers[n].clientY)},n++;return{timeStamp:l(),pointers:t,center:G(t),deltaX:e.deltaX,deltaY:e.deltaY}}function G(e){var t=e.length;if(1===t)return{x:c(e[0].clientX),y:c(e[0].clientY)};for(var n=0,i=0,r=0;r<t;)n+=e[r].clientX,i+=e[r].clientY,r++;return{x:c(n/t),y:c(i/t)}}function V(e,t,n){return{x:t/e||0,y:n/e||0}}function W(e,t){return e===t?1:p(e)>=p(t)?e<0?2:4:t<0?8:16}function U(e,t,n){n||(n=I);var i=t[n[0]]-e[n[0]],r=t[n[1]]-e[n[1]];return Math.sqrt(i*i+r*r)}function q(e,t,n){n||(n=I);var i=t[n[0]]-e[n[0]],r=t[n[1]]-e[n[1]];return 180*Math.atan2(r,i)/Math.PI}F.prototype={handler:function(){},init:function(){this.evEl&&_(this.element,this.evEl,this.domHandler),this.evTarget&&_(this.target,this.evTarget,this.domHandler),this.evWin&&_(k(this.element),this.evWin,this.domHandler)},destroy:function(){this.evEl&&E(this.element,this.evEl,this.domHandler),this.evTarget&&E(this.target,this.evTarget,this.domHandler),this.evWin&&E(k(this.element),this.evWin,this.domHandler)}};var K={mousedown:1,mousemove:2,mouseup:4},Y="mousedown",X="mousemove mouseup";function Z(){this.evEl=Y,this.evWin=X,this.pressed=!1,F.apply(this,arguments)}y(Z,F,{handler:function(e){var t=K[e.type];1&t&&0===e.button&&(this.pressed=!0),2&t&&1!==e.which&&(t=4),this.pressed&&(4&t&&(this.pressed=!1),this.callback(this.manager,t,{pointers:[e],changedPointers:[e],pointerType:j,srcEvent:e}))}});var Q={pointerdown:1,pointermove:2,pointerup:4,pointercancel:8,pointerout:8},J={2:O,3:"pen",4:j,5:"kinect"},ee="pointerdown",te="pointermove pointerup pointercancel";function ne(){this.evEl=ee,this.evWin=te,F.apply(this,arguments),this.store=this.manager.session.pointerEvents=[]}t.MSPointerEvent&&!t.PointerEvent&&(ee="MSPointerDown",te="MSPointerMove MSPointerUp MSPointerCancel"),y(ne,F,{handler:function(e){var t=this.store,n=!1,i=e.type.toLowerCase().replace("ms",""),r=Q[i],o=J[e.pointerType]||e.pointerType,a=o==O,s=R(t,e.pointerId,"pointerId");1&r&&(0===e.button||a)?s<0&&(t.push(e),s=t.length-1):12&r&&(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 ie={touchstart:1,touchmove:2,touchend:4,touchcancel:8},re="touchstart",oe="touchstart touchmove touchend touchcancel";function ae(){this.evTarget=re,this.evWin=oe,this.started=!1,F.apply(this,arguments)}function se(e,t){var n=T(e.touches),i=T(e.changedTouches);return 12&t&&(n=P(n.concat(i),"identifier",!0)),[n,i]}y(ae,F,{handler:function(e){var t=ie[e.type];if(1===t&&(this.started=!0),this.started){var n=se.call(this,e,t);12&t&&n[0].length-n[1].length==0&&(this.started=!1),this.callback(this.manager,t,{pointers:n[0],changedPointers:n[1],pointerType:O,srcEvent:e})}}});var ce={touchstart:1,touchmove:2,touchend:4,touchcancel:8},pe="touchstart touchmove touchend touchcancel";function le(){this.evTarget=pe,this.targetIds={},F.apply(this,arguments)}function ue(e,t){var n=T(e.touches),i=this.targetIds;if(3&t&&1===n.length)return i[n[0].identifier]=!0,[n,n];var r,o,a=T(e.changedTouches),s=[],c=this.target;if(o=n.filter((function(e){return w(e.target,c)})),1===t)for(r=0;r<o.length;)i[o[r].identifier]=!0,r++;for(r=0;r<a.length;)i[a[r].identifier]&&s.push(a[r]),12&t&&delete i[a[r].identifier],r++;return s.length?[P(o.concat(s),"identifier",!0),s]:void 0}y(le,F,{handler:function(e){var t=ce[e.type],n=ue.call(this,e,t);n&&this.callback(this.manager,t,{pointers:n[0],changedPointers:n[1],pointerType:O,srcEvent:e})}});function he(){F.apply(this,arguments);var e=g(this.handler,this);this.touch=new le(this.manager,e),this.mouse=new Z(this.manager,e),this.primaryTouch=null,this.lastTouches=[]}function de(e,t){1&e?(this.primaryTouch=t.changedPointers[0].identifier,fe.call(this,t)):12&e&&fe.call(this,t)}function fe(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)}),2500)}}function me(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<=25&&a<=25)return!0}return!1}y(he,F,{handler:function(e,t,n){var i=n.pointerType==O,r=n.pointerType==j;if(!(r&&n.sourceCapabilities&&n.sourceCapabilities.firesTouchEvents)){if(i)de.call(this,t,n);else if(r&&me.call(this,n))return;this.callback(e,t,n)}},destroy:function(){this.touch.destroy(),this.mouse.destroy()}});var ve=A(s.style,"touchAction"),ye=ve!==r,ge="compute",be="auto",xe="manipulation",_e="none",Ee="pan-x",we="pan-y",Se=function(){if(!ye)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 Ce(e,t){this.manager=e,this.set(t)}Ce.prototype={set:function(e){e==ge&&(e=this.compute()),ye&&this.manager.element.style&&Se[e]&&(this.manager.element.style[ve]=e),this.actions=e.toLowerCase().trim()},update:function(){this.set(this.manager.options.touchAction)},compute:function(){var e=[];return d(this.manager.recognizers,(function(t){b(t.options.enable,[t])&&(e=e.concat(t.getTouchAction()))})),function(e){if(S(e,_e))return _e;var t=S(e,Ee),n=S(e,we);if(t&&n)return _e;if(t||n)return t?Ee:we;if(S(e,xe))return xe;return be}(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=S(i,_e)&&!Se.none,o=S(i,we)&&!Se["pan-y"],a=S(i,Ee)&&!Se["pan-x"];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&&6&n||a&&n&L?this.preventSrc(t):void 0}},preventSrc:function(e){this.manager.session.prevented=!0,e.preventDefault()}};var Re=32;function Te(e){this.options=o({},this.defaults,e||{}),this.id=M++,this.manager=null,this.options.enable=x(this.options.enable,!0),this.state=1,this.simultaneous={},this.requireFail=[]}function Pe(e){return 16&e?"cancel":8&e?"end":4&e?"move":2&e?"start":""}function Ae(e){return 16==e?"down":8==e?"up":2==e?"left":4==e?"right":""}function Me(e,t){var n=t.manager;return n?n.get(e):e}function ke(){Te.apply(this,arguments)}function De(){ke.apply(this,arguments),this.pX=null,this.pY=null}function Be(){ke.apply(this,arguments)}function Ne(){Te.apply(this,arguments),this._timer=null,this._input=null}function Oe(){ke.apply(this,arguments)}function je(){ke.apply(this,arguments)}function Le(){Te.apply(this,arguments),this.pTime=!1,this.pCenter=!1,this._timer=null,this._input=null,this.count=0}function Ie(e,t){return(t=t||{}).recognizers=x(t.recognizers,Ie.defaults.preset),new ze(e,t)}Te.prototype={defaults:{},set:function(e){return o(this.options,e),this.manager&&this.manager.touchAction.update(),this},recognizeWith:function(e){if(h(e,"recognizeWith",this))return this;var t=this.simultaneous;return t[(e=Me(e,this)).id]||(t[e.id]=e,e.recognizeWith(this)),this},dropRecognizeWith:function(e){return h(e,"dropRecognizeWith",this)||(e=Me(e,this),delete this.simultaneous[e.id]),this},requireFailure:function(e){if(h(e,"requireFailure",this))return this;var t=this.requireFail;return-1===R(t,e=Me(e,this))&&(t.push(e),e.requireFailure(this)),this},dropRequireFailure:function(e){if(h(e,"dropRequireFailure",this))return this;e=Me(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<8&&i(t.options.event+Pe(n)),i(t.options.event),e.additionalEvent&&i(e.additionalEvent),n>=8&&i(t.options.event+Pe(n))},tryEmit:function(e){if(this.canEmit())return this.emit(e);this.state=Re},canEmit:function(){for(var e=0;e<this.requireFail.length;){if(!(33&this.requireFail[e].state))return!1;e++}return!0},recognize:function(e){var t=o({},e);if(!b(this.options.enable,[this,t]))return this.reset(),void(this.state=Re);56&this.state&&(this.state=1),this.state=this.process(t),30&this.state&&this.tryEmit(t)},process:function(e){},getTouchAction:function(){},reset:function(){}},y(ke,Te,{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=6&t,r=this.attrTest(e);return i&&(8&n||!r)?16|t:i||r?4&n?8|t:2&t?4|t:2:Re}}),y(De,ke,{defaults:{event:"pan",threshold:10,pointers:1,direction:30},getTouchAction:function(){var e=this.options.direction,t=[];return 6&e&&t.push(we),e&L&&t.push(Ee),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||(6&t.direction?(r=0===o?1:o<0?2:4,n=o!=this.pX,i=Math.abs(e.deltaX)):(r=0===a?1:a<0?8:16,n=a!=this.pY,i=Math.abs(e.deltaY))),e.direction=r,n&&i>t.threshold&&r&t.direction},attrTest:function(e){return ke.prototype.attrTest.call(this,e)&&(2&this.state||!(2&this.state)&&this.directionTest(e))},emit:function(e){this.pX=e.deltaX,this.pY=e.deltaY;var t=Ae(e.direction);t&&(e.additionalEvent=this.options.event+t),this._super.emit.call(this,e)}}),y(Be,ke,{defaults:{event:"pinch",threshold:0,pointers:2},getTouchAction:function(){return[_e]},attrTest:function(e){return this._super.attrTest.call(this,e)&&(Math.abs(e.scale-1)>this.options.threshold||2&this.state)},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)}}),y(Ne,Te,{defaults:{event:"press",pointers:1,time:251,threshold:9},getTouchAction:function(){return[be]},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||12&e.eventType&&!r)this.reset();else if(1&e.eventType)this.reset(),this._timer=u((function(){this.state=8,this.tryEmit()}),t.time,this);else if(4&e.eventType)return 8;return Re},reset:function(){clearTimeout(this._timer)},emit:function(e){8===this.state&&(e&&4&e.eventType?this.manager.emit(this.options.event+"up",e):(this._input.timeStamp=l(),this.manager.emit(this.options.event,this._input)))}}),y(Oe,ke,{defaults:{event:"rotate",threshold:0,pointers:2},getTouchAction:function(){return[_e]},attrTest:function(e){return this._super.attrTest.call(this,e)&&(Math.abs(e.rotation)>this.options.threshold||2&this.state)}}),y(je,ke,{defaults:{event:"swipe",threshold:10,velocity:.3,direction:30,pointers:1},getTouchAction:function(){return De.prototype.getTouchAction.call(this)},attrTest:function(e){var t,n=this.options.direction;return 30&n?t=e.overallVelocity:6&n?t=e.overallVelocityX:n&L&&(t=e.overallVelocityY),this._super.attrTest.call(this,e)&&n&e.offsetDirection&&e.distance>this.options.threshold&&e.maxPointers==this.options.pointers&&p(t)>this.options.velocity&&4&e.eventType},emit:function(e){var t=Ae(e.offsetDirection);t&&this.manager.emit(this.options.event+t,e),this.manager.emit(this.options.event,e)}}),y(Le,Te,{defaults:{event:"tap",pointers:1,taps:1,interval:300,time:250,threshold:9,posThreshold:10},getTouchAction:function(){return[xe]},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(),1&e.eventType&&0===this.count)return this.failTimeout();if(i&&r&&n){if(4!=e.eventType)return this.failTimeout();var o=!this.pTime||e.timeStamp-this.pTime<t.interval,a=!this.pCenter||U(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=u((function(){this.state=8,this.tryEmit()}),t.interval,this),2):8}return Re},failTimeout:function(){return this._timer=u((function(){this.state=Re}),this.options.interval,this),Re},reset:function(){clearTimeout(this._timer)},emit:function(){8==this.state&&(this._input.tapCount=this.count,this.manager.emit(this.options.event,this._input))}}),Ie.VERSION="2.0.7",Ie.defaults={domEvents:!1,touchAction:ge,enable:!0,inputTarget:null,inputClass:null,preset:[[Oe,{enable:!1}],[Be,{enable:!1},["rotate"]],[je,{direction:6}],[De,{direction:6},["swipe"]],[Le],[Le,{event:"doubletap",taps:2},["tap"]],[Ne]],cssProps:{userSelect:"none",touchSelect:"none",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}};function ze(e,t){var n;this.options=o({},Ie.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||(B?ne:N?le:D?he:Z))(n,$),this.touchAction=new Ce(this,this.options.touchAction),Fe(this,!0),d(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 Fe(e,t){var n,i=e.element;i.style&&(d(e.options.cssProps,(function(r,o){n=A(i.style,o),t?(e.oldCssProps[n]=i.style[n],i.style[n]=r):i.style[n]=e.oldCssProps[n]||""})),t||(e.oldCssProps={}))}ze.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&&8&r.state)&&(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&&14&n.state&&(r=t.curRecognizer=n),o++}},get:function(e){if(e instanceof Te)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(h(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(h(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 d(C(e),(function(e){n[e]=n[e]||[],n[e].push(t)})),this}},off:function(e,t){if(e!==r){var n=this.handlers;return d(C(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&&Fe(this,!1),this.handlers={},this.session={},this.input.destroy(),this.element=null}},o(Ie,{INPUT_START:1,INPUT_MOVE:2,INPUT_END:4,INPUT_CANCEL:8,STATE_POSSIBLE:1,STATE_BEGAN:2,STATE_CHANGED:4,STATE_ENDED:8,STATE_RECOGNIZED:8,STATE_CANCELLED:16,STATE_FAILED:Re,DIRECTION_NONE:1,DIRECTION_LEFT:2,DIRECTION_RIGHT:4,DIRECTION_UP:8,DIRECTION_DOWN:16,DIRECTION_HORIZONTAL:6,DIRECTION_VERTICAL:L,DIRECTION_ALL:30,Manager:ze,Input:F,TouchAction:Ce,TouchInput:le,MouseInput:Z,PointerEventInput:ne,TouchMouseInput:he,SingleTouchInput:ae,Recognizer:Te,AttrRecognizer:ke,Tap:Le,Pan:De,Swipe:je,Pinch:Be,Rotate:Oe,Press:Ne,on:_,off:E,each:d,merge:v,extend:m,assign:o,inherit:y,bindFn:g,prefixed:A}),(void 0!==t?t:"undefined"!=typeof self?self:{}).Hammer=Ie,e.exports?e.exports=Ie:t.Hammer=Ie}(window,document)}(As);var Ms=As.exports,ks=["mousedown","mouseup","mouseover","mouseout","click","dblclick"];function Ds(e,t){return t.get(e,!1)}function Bs(e){e.preventDefault(),"function"==typeof e.stopPropagation?e.stopPropagation():e.srcEvent&&"function"==typeof e.srcEvent.stopPropagation&&e.srcEvent.stopPropagation(),"function"==typeof e.stopImmediatePropagation&&e.stopImmediatePropagation()}function Ns(e){function t(t){setTimeout((function(){b(ks,(function(t){$t.unbind(e,t,Bs,!0)}))}),500)}$t.bind(e,"touchstart",(function(t){b(ks,(function(t){$t.bind(e,t,Bs,!0)}))}),!0),$t.bind(e,"touchend",t,!0),$t.bind(e,"touchcancel",t,!0);var n=new Ms.Manager(e,{inputClass:Ms.TouchInput,recognizers:[],domEvents:!0}),i=new Ms.Tap,r=new Ms.Pan({threshold:10}),o=new Ms.Press,a=new Ms.Pinch,s=new Ms.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 Os(e,t,n,i,r){var o,a=Ds("dragging",e),s=Ds("move",e),c=Ds("contextPad",e),p=Ds("palette",e);function l(e,t){return function(n){var o=u(n.target),a=o&&i.get(o);return t&&(n.srcEvent.button=t),r.fire(e,n,a)}}function u(e){return Lt(e,"svg, .djs-element",!0)}function h(e){function n(e){var n=u(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=Ns(e)).on("tap",l("element.click")),o.on("doubletap",l("element.dblclick",1)),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(.2,Math.min(4,r*n));t.zoom(o,i),Bs(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=na(t),r=u(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=Ns(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=Ns(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 js(e,t){var n=this;t.on("canvas.init",(function(e){n.addBBoxMarker(e.svg)}))}Os.$inject=["injector","canvas","eventBus","elementRegistry","interactionEvents","touchFix"],js.$inject=["canvas","eventBus"],js.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),be(e,n);var i=Oe("rect");Ee(i,{x:1e4,y:1e4,width:10,height:10}),Ee(i,t),be(e,i)};var Ls={__depends__:[{__depends__:[la],__init__:["touchInteractionEvents"],touchInteractionEvents:["type",Os],touchFix:["type",js]}]};function Is(e){return e&&e[e.length-1]}function zs(e){return e.y}function Fs(e){return e.x}var $s={left:Fs,center:Fs,right:function(e){return e.x+e.width},top:zs,middle:zs,bottom:function(e){return e.y+e.height}};function Hs(e){this._modeling=e}Hs.$inject=["modeling"],Hs.prototype._getOrientationDetails=function(e){var t="x",n="width";return-1!==["top","bottom","middle"].indexOf(e)&&(t="y",n="height"),{axis:t,dimension:n}},Hs.prototype._isType=function(e,t){return-1!==t.indexOf(e)},Hs.prototype._alignmentPosition=function(e,t){var n,i,r,o=this._getOrientationDetails(e),a=o.axis,s=o.dimension,c={},p={},l=!1;if(this._isType(e,["left","top"]))c[e]=t[0][a];else if(this._isType(e,["right","bottom"]))r=Is(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=k(p,(function(e){return e.elements.length>1&&(l=!0),e.elements.length})),l)return c[e]=Is(n).center,c;i=t[0],r=Is(t=k(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},Hs.prototype.trigger=function(e,t){var n=this._modeling,i=g(e,(function(e){return!(e.waypoints||e.host||e.labelTarget)}));if(!(i.length<2)){var r=k(i,$s[t]),o=this._alignmentPosition(t,r);n.alignElements(r,o)}};var Gs={__init__:["alignElements"],alignElements:["type",Hs]};function Vs(e,t,n,i){for(var r;r=Us(e,n,t);)n=i(t,n,r);return n}function Ws(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 Us(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=qs(e);e.host&&(t=t.concat(qs(e.host)));e.attachers&&(t=t.concat(e.attachers.reduce((function(e,t){return e.concat(qs(t))}),[])));return t}(e),(function(e){return e!==n&&"intersect"===Wn(e,i,10)}))}function qs(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 Ks(){return!0}function Ys(e,t,n){e.on("autoPlace",100,(function(e){var t=e.shape;return function(e,t,n){n||(n={});var i=n.defaultDistance||50,r=Vn(e);return{x:Hn(e).right+i+t.width/2,y:r.y}}(e.source,t)})),e.on("autoPlace.end",(function(e){n.scrollToElement(e.shape)})),this.append=function(n,i,r){e.fire("autoPlace.start",{source:n,shape:i});var o=e.fire("autoPlace",{source:n,shape:i}),a=t.appendShape(n,i,o,n.parent,r);return e.fire("autoPlace.end",{source:n,shape:a}),a}}function Xs(e,t){e.on("autoPlace.end",500,(function(e){t.select(e.shape)}))}Ys.$inject=["eventBus","modeling","canvas"],Xs.$inject=["eventBus","selection"];var Zs={__init__:["autoPlaceSelectionBehavior"],autoPlace:["type",Ys],autoPlaceSelectionBehavior:["type",Xs]};function Qs(e,t){for("string"==typeof t&&(t=[t]);e=e.parent;)if(Jr(e,t))return e;return null}function Js(e,t){return Qr(t,"bpmn:TextAnnotation")?function(e,t){var n=Hn(e),i={x:n.right+t.width/2,y:n.top-50-t.height/2};return Vs(e,t,i,Ws({y:{margin:-30,minDistance:20}}))}(e,t):Jr(t,["bpmn:DataObjectReference","bpmn:DataStoreReference"])?function(e,t){var n=Hn(e),i={x:n.right-10+t.width/2,y:n.bottom+40+t.width/2};return Vs(e,t,i,Ws({x:{margin:30,minDistance:30}}))}(e,t):Qr(t,"bpmn:FlowNode")?function(e,t){var n=Hn(e),i=Vn(e),r=function(e,t){t||(t={});var n=t.defaultDistance||50,i=t.direction||"e",r=t.filter,o=t.getWeight||function(t){return t.source===e?1:-1},a=t.maxDistance||250,s=t.reference||"start";function c(e,t){return"n"===i?"start"===s?Hn(e).top-Hn(t).bottom:"center"===s?Hn(e).top-Vn(t).y:Hn(e).top-Hn(t).top:"w"===i?"start"===s?Hn(e).left-Hn(t).right:"center"===s?Hn(e).left-Vn(t).x:Hn(e).left-Hn(t).left:"s"===i?"start"===s?Hn(t).top-Hn(e).bottom:"center"===s?Vn(t).y-Hn(e).bottom:Hn(t).bottom-Hn(e).bottom:"start"===s?Hn(t).left-Hn(e).right:"center"===s?Vn(t).x-Hn(e).right:Hn(t).right-Hn(e).right}r||(r=Ks);var p=e.incoming.filter(r).map((function(t){var n=o(t),i=n<0?c(t.source,e):c(e,t.source);return{id:t.source.id,distance:i,weight:n}})),l=e.outgoing.filter(r).map((function(t){var n=o(t),i=n>0?c(e,t.target):c(t.target,e);return{id:t.target.id,distance:i,weight:n}}));return _(p.concat(l).reduce((function(e,t){return e[t.id+"__weight_"+t.weight]=t,e}),{}),(function(e,t){var n=t.distance,i=t.weight;return n<0||n>a||(e[String(n)]||(e[String(n)]=0),e[String(n)]+=1*i,(!e.distance||e[e.distance]<e[String(n)])&&(e.distance=n)),e}),{}).distance||n}(e,{filter:function(e){return Qr(e,"bpmn:SequenceFlow")}}),o=30,a=80,s="left";Qr(e,"bpmn:BoundaryEvent")&&-1!==(s=Wn(e,e.host,-25)).indexOf("top")&&(o*=-1);var c={x:n.right+r+t.width/2,y:i.y+ec(s,a)};return Vs(e,t,c,Ws({y:{margin:o,minDistance:a}}))}(e,t):void 0}function ec(e,t){return-1!=e.indexOf("top")?-1*t:-1!=e.indexOf("bottom")?t:0}function tc(e){e.on("autoPlace",(function(e){var t=e.shape;return Js(e.source,t)}))}tc.$inject=["eventBus"];var nc={__depends__:[Zs],__init__:["bpmnAutoPlace"],bpmnAutoPlace:["type",tc]};function ic(e,t,n,i){Aa.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(T(t.closure.topLevel)),i=t.hints,a=!i||i.autoResize;!1!==a&&b(P(n,(function(e){return e.parent.id})),(function(e,t){u(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 rc(e){e.invoke(ic,this)}function oc(e){Aa.call(this,e),this.init()}function ac(e){oc.call(this,e);var t=this;this.addRule("element.autoResize",(function(e){return t.canResize(e.elements,e.target)}))}function sc(e,t){ac.call(this,e),this._modeling=t}ic.$inject=["eventBus","elementRegistry","modeling","rules"],n(ic,Aa),ic.prototype._getOptimalBounds=function(e,t){var n=this.getOffset(t),i=this.getPadding(t),r=Hn(dt(e)),o=Hn(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),Gn(F({},o,a))},ic.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=Hn(e),t=Hn(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)}}},ic.prototype.getOffset=function(e){return{top:60,bottom:60,left:100,right:100}},ic.prototype.getPadding=function(e){return{top:2,bottom:2,left:15,right:15}},ic.prototype.resize=function(e,t,n){this._modeling.resizeShape(e,t,null,n)},rc.$inject=["injector"],n(rc,ic),rc.prototype.resize=function(e,t,n){Qr(e,"bpmn:Participant")?this._modeling.resizeLane(e,t,null,n):this._modeling.resizeShape(e,t,null,n)},oc.$inject=["eventBus"],n(oc,Aa),oc.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)}))},oc.prototype.init=function(){},ac.$inject=["eventBus"],n(ac,oc),ac.prototype.canResize=function(e,t){return!1},n(sc,ac),sc.$inject=["eventBus","modeling"],sc.prototype.canResize=function(e,t){if(Qr(t.di,"bpmndi:BPMNPlane"))return!1;if(!Qr(t,"bpmn:Participant")&&!Qr(t,"bpmn:Lane")&&!Qr(t,"bpmn:SubProcess"))return!1;var n=!0;return b(e,(function(e){(Qr(e,"bpmn:Lane")||e.labelTarget)&&(n=!1)})),n};var cc={__init__:["bpmnAutoResize","bpmnAutoResizeProvider"],bpmnAutoResize:["type",rc],bpmnAutoResizeProvider:["type",sc]};function pc(e,t,n){var i,r,o=this,a=n.get("dragging",!1);a&&t.on("drag.start",(function(n){t.once("drag.move",1500,(function(t){!function(t){if(!t.hover){var n=t.originalEvent,i=o._findTargetGfx(n),r=i&&e.get(i);i&&r&&(t.stopPropagation(),a.hover({element:r,gfx:i}),a.move(n))}}(t)}))})),t.on("element.hover",(function(e){i=e.gfx,r=e.element})),t.on("element.hover",1500,(function(e){r&&t.fire("element.out",{element:r,gfx:i})})),t.on("element.out",(function(){i=null,r=null})),this._findTargetGfx=function(e){var t;if(e instanceof MouseEvent)return t=na(e),function(e){return Lt(e,"svg, .djs-element",!0)}(document.elementFromPoint(t.x,t.y))}}pc.$inject=["elementRegistry","eventBus","injector"];var lc={__init__:["hoverFix"],hoverFix:["type",pc]},uc=Math.round,hc="djs-drag-active";function dc(e){e.preventDefault()}function fc(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,l=r.globalStart,u=na(e),h=bs(u,l),d=r.localStart,f=a(u),v=bs(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:uc(d.x+p.x),y:uc(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&&ms(r.cursor),t.addMarker(t.getRootElement(),hc)}ta(e),r.active&&(F(c,{x:uc(f.x+p.x),y:uc(f.y+p.y),dx:uc(v.x),dy:uc(v.y)},{originalEvent:e}),s("move"))}function p(e){var t=!0;r.active&&(e&&(r.payload.originalEvent=e,ta(e)),t=s("end")),!1===t&&s("rejected"),s("ended",v(!0!==t))}function l(e){27===e.which&&(dc(e),m())}function u(t){var n;r.active&&(n=ys(e),setTimeout(n,400),dc(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"),vs(),v=r.trapClick?u:p,$t.unbind(document,"mousemove",c),$t.unbind(document,"dragstart",dc),$t.unbind(document,"selectstart",dc),$t.unbind(document,"mousedown",v,!0),$t.unbind(document,"mouseup",v,!0),$t.unbind(document,"keyup",l),$t.unbind(document,"touchstart",h,!0),$t.unbind(document,"touchcancel",m,!0),$t.unbind(document,"touchmove",c,!0),$t.unbind(document,"touchend",p,!0),e.off("element.hover",d),e.off("element.out",f),t.removeMarker(t.getRootElement(),hc);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?u:p,t?(y=ea(t)||t,g=na(t),ta(t),"dragstart"===y.type&&dc(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:bs(n,b),localStart:b,isTouch:_},v),v.manual||(_?($t.bind(document,"touchstart",h,!0),$t.bind(document,"touchcancel",m,!0),$t.bind(document,"touchmove",c,!0),$t.bind(document,"touchend",p,!0)):($t.bind(document,"mousemove",c),$t.bind(document,"dragstart",dc),$t.bind(document,"selectstart",dc),$t.bind(document,"mousedown",x,!0),$t.bind(document,"mouseup",x,!0)),$t.bind(document,"keyup",l),e.on("element.hover",d),e.on("element.out",f)),s("init"),v.autoActivate&&c(t,!0)},this.move=c,this.hover=d,this.out=f,this.end=p,this.cancel=m,this.context=function(){return r},this.setOptions=function(e){F(o,e)}}fc.$inject=["eventBus","canvas","selection","elementRegistry"];var mc={__depends__:[lc,ba],dragging:["type",fc]};function vc(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 yc(e,t,n){return t<e&&e<n}vc.$inject=["config.autoScroll","eventBus","canvas"],vc.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++)yc(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))},vc.prototype.stopScroll=function(){clearTimeout(this._scrolling)},vc.prototype.setOptions=function(e){this._opts=F({},this._opts,e)},vc.prototype._toBorderPoint=function(e){var t=this._canvas._container.getBoundingClientRect(),n=na(e.originalEvent);return{x:n.x-t.left,y:n.y-t.top}};var gc={__depends__:[mc],__init__:["autoScroll"],autoScroll:["type",vc]};function bc(e){this._commandStack=e.get("commandStack",!1)}bc.$inject=["injector"],bc.prototype.allowed=function(e,t){var n=!0,i=this._commandStack;return i&&(n=i.canExecute(e,t)),void 0===n||n};var xc={__init__:["rules"],rules:["type",bc]},_c=Math.round,Ec=Math.max;function wc(e,t){return function(e,t){var n,i;for(n=0;i=e[n];n++)if(en(i,t)<=10)return{point:e[n],bendpoint:!0,index:n};return null}(e,t)||function(e,t){var n,i,r=zn(function(e,t){return[["M",e.x,e.y],["m",0,-t],["a",t,t,0,1,1,0,2*t],["a",t,t,0,1,1,0,-2*t],["z"]]}(t,10),(n=[],e.forEach((function(e,t){n.push([0===t?"M":"L",e.x,e.y])})),n)),o=r[0],a=r[r.length-1];return o?o!==a?o.segment2!==a.segment2?{point:e[i=Ec(o.segment2,a.segment2)-1],bendpoint:!0,index:i}:{point:{x:_c(o.x+a.x)/2,y:_c(o.y+a.y)/2},index:o.segment2}:{point:{x:_c(o.x),y:_c(o.y)},index:o.segment2}:null}(e,t)}var Sc="djs-bendpoint",Cc="djs-segment-dragger";function Rc(e,t,n){return wc(t,function(e,t){var n,i=na(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 Tc(e,t){var n=Oe("g");Te(n).add(Sc),be(e,n);var i=Oe("circle");Ee(i,{cx:0,cy:0,r:4}),Te(i).add("djs-visual"),be(n,i);var r=Oe("circle");return Ee(r,{cx:0,cy:0,r:10}),Te(r).add("djs-hit"),be(n,r),t&&Te(n).add(t),n}function Pc(e,t,n,i){var r=Oe("g");be(e,r);var o=function(e,t,n){var i=t.x-e.x,r=t.y-e.y;return Mc("h"===n?i:r)}(t,n,i),a=Oe("rect");Ee(a,{x:-7,y:-1.5,width:14,height:3}),Te(a).add("djs-visual"),be(r,a);var s=Oe("rect");return Ee(s,{x:-o/2,y:-7,width:o,height:14}),Te(s).add("djs-hit"),be(r,s),Ri(r,"v"===i?90:0),r}function Ac(e,t,n){var i=Oe("g"),r=on(t,n),o=nn(t,n);return be(e,i),Pc(i,t,n,o),Te(i).add(Cc),Te(i).add("h"===o?"horizontal":"vertical"),Ci(i,r.x,r.y),i}function Mc(e){return Math.abs(Math.round(2*e/3))}function kc(e,t,n,i,r){function o(e,n){var o=n.waypoints,a=Rc(t,o,e);if(a)return!function(e,t,n){var i,r,o,a,s,c,p=e.index,l=e.point;return!(p<=0||e.bendpoint)&&(o=on(i=t[p-1],r=t[p]),a=nn(i,r),s=Math.abs(l.x-o.x),c=Math.abs(l.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=nn((n={start:r[t.index-1],end:r[t.index]}).start,n.end))?Mc("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){$t.bind(e,t,(function(e){n.triggerMouseEvent(t,e,i),e.stopPropagation()}))}function s(e,n){var i=t.getLayer("overlays"),r=Kt('.djs-bendpoints[data-element-id="'+Ba(e.id)+'"]',i);return!r&&n&&(Ee(r=Oe("g"),{"data-element-id":e.id}),Te(r).add("djs-bendpoints"),be(i,r),a(r,"mousedown",e),a(r,"click",e),a(r,"dblclick",e)),r}function c(e,t){return Kt('.djs-segment-dragger[data-segment-idx="'+e+'"]',t)}function p(e,t){t.waypoints.forEach((function(t,n){var i=Tc(e);be(e,i),Ci(i,t.x,t.y)})),Tc(e,"floating")}function l(e,t){for(var n,i,r,o=t.waypoints,s=1;s<o.length;s++)nn(n=o[s-1],i=o[s])&&(Ee(r=Ac(e,n,i),{"data-segment-idx":s}),a(r,"mousemove",t))}function u(e){var t=s(e);return t||(p(t=s(e,!0),e),l(t,e)),t}function h(e){var t=s(e);t&&(!function(e){b(Yt(".djs-segment-dragger",e),(function(e){Ae(e)}))}(t),function(e){b(Yt(".djs-bendpoint",e),(function(e){Ae(e)}))}(t),l(t,e),p(t,e))}function d(e,t,n){var i,r,o=c(t.index,e),a=n[t.index-1],s=n[t.index],p=t.point,l=on(a,s),u=nn(a,s);o&&(i=function(e){return Kt(".djs-visual",e)}(o),r={x:p.x-l.x,y:p.y-l.y},"v"===u&&(r={x:r.y,y:r.x}),Ci(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&&Ae(t)})),e.on("element.marker.update",(function(e){var t,n=e.element;n.waypoints&&(t=u(n),e.add?Te(t).add(e.marker):Te(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=Rc(t,o,e.originalEvent)))return;!function(e,t){var n=Kt(".floating",e),i=t.point;n&&Ci(n,i.x,i.y)}(n,i),i.bendpoint||d(n,i,o)}})),e.on("element.mousedown",(function(e){if(ra(e)){var t=e.originalEvent,n=e.element;if(n.waypoints)return o(t,n)}})),e.on("selection.changed",(function(e){var t=e.newSelection[0];t&&t.waypoints&&u(t)})),e.on("element.hover",(function(e){var t=e.element;t.waypoints&&(u(t),n.registerEvent(e.gfx,"mousemove","element.mousemove"))})),e.on("element.out",(function(e){n.unregisterEvent(e.gfx,"mousemove","element.mousemove")})),e.on("element.updateId",(function(e){var t=e.element,n=e.newId;if(t.waypoints){var i=s(t);i&&Ee(i,{"data-element-id":n})}})),this.addHandles=u,this.updateHandles=h,this.getBendpointsContainer=s,this.getSegmentDragger=c}kc.$inject=["eventBus","canvas","interactionEvents","bendpointMove","connectionSegmentMove"];var Dc=Math.round,Bc="reconnectStart",Nc="reconnectEnd",Oc="updateWaypoints";function jc(e,t,n,i,r,o){this._injector=e,this.start=function(e,t,o,a){var s,c=n.getGraphics(t),p=t.source,l=t.target,u=t.waypoints,h=(s=a||0!==o?a||o!==u.length-1?Oc:Nc:Bc)===Oc?"connection.updateWaypoints":"connection.reconnect",d=r.allowed(h,{connection:t,source:p,target:l});!1===d&&(d=r.allowed(h,{connection:t,source:l,target:p})),!1!==d&&i.init(e,"bendpoint.move",{data:{connection:t,connectionGfx:c,context:{allowed:d,bendpointIndex:o,connection:t,source:p,target:l,insert:a,type:s}}})},t.on("bendpoint.move.hover",(function(e){var t,n=e.context,i=n.connection,o=i.source,a=i.target,s=e.hover,c=n.type;if(n.hover=s,s){var p=c===Oc?"connection.updateWaypoints":"connection.reconnect";if(t=n.allowed=r.allowed(p,{connection:i,source:c===Bc?s:o,target:c===Nc?s:a}))return n.source=c===Bc?s:o,void(n.target=c===Nc?s:a);!1===t&&(t=n.allowed=r.allowed(p,{connection:i,source:c===Nc?s:a,target:c===Bc?s:o})),t&&(n.source=c===Nc?s:a,n.target=c===Bc?s:o)}})),t.on(["bendpoint.move.out","bendpoint.move.cleanup"],(function(e){var t=e.context,n=t.type;t.hover=null,t.source=null,t.target=null,n!==Oc&&(t.allowed=!1)})),t.on("bendpoint.move.end",(function(e){var t=e.context,n=t.allowed,i=t.bendpointIndex,r=t.connection,a=t.insert,s=r.waypoints.slice(),c=t.source,p=t.target,l=t.type,u=t.hints||{},h={x:Dc(e.x),y:Dc(e.y)};if(!n)return!1;l===Oc?(a?s.splice(i,0,h):s[i]=h,u.bendpointMove={insert:a,bendpointIndex:i},s=this.cropWaypoints(r,s),o.updateWaypoints(r,function(e){e=e.slice();for(var t,n,i,r=0;e[r];)t=e[r],n=e[r-1],0===en(t,i=e[r+1])||tn(n,i,t)?e.splice(r,1):r++;return e}(s),u)):(l===Bc?(u.docking="source",Lc(t)&&(u.docking="target",u.newWaypoints=s.reverse())):l===Nc&&(u.docking="target",Lc(t)&&(u.docking="source",u.newWaypoints=s.reverse())),o.reconnect(r,c,p,h,u))}),this)}function Lc(e){var t=e.hover,n=e.source,i=e.target,r=e.type;return r===Bc?t&&i&&t===i&&n!==i:r===Nc?t&&n&&t===n&&n!==i:void 0}jc.$inject=["injector","eventBus","canvas","dragging","rules","modeling"],jc.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 Ic="updateWaypoints",zc="connect-ok",Fc="connect-not-ok",$c="connect-hover",Hc="djs-updating",Gc="djs-element-hidden";function Vc(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,Te(t.draggerGfx=Tc(i.getLayer("overlays"))).add("djs-dragging"),i.addMarker(r,Gc),i.addMarker(r,Hc)})),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,$c),o===Ic)return;n?(i.removeMarker(r,Fc),i.addMarker(r,zc)):!1===n&&(i.removeMarker(r,zc),i.addMarker(r,Fc))}})),n.on(["bendpoint.move.out","bendpoint.move.cleanup"],1100,(function(e){var t=e.context,n=t.hover,r=t.target;n&&(i.removeMarker(n,$c),i.removeMarker(n,r?zc:Fc))})),n.on("bendpoint.move.move",(function(t){var n=t.context,i=n.allowed,o=n.bendpointIndex,a=n.draggerGfx,s=n.hover,c=n.type,p=n.connection,l=p.source,u=p.target,h=p.waypoints.slice(),d={x:t.x,y:t.y},f=n.hints||{},m={};r&&(f.connectionStart&&(m.connectionStart=f.connectionStart),f.connectionEnd&&(m.connectionEnd=f.connectionEnd),"reconnectStart"===c?Lc(n)?(m.connectionEnd=m.connectionEnd||d,m.source=u,m.target=s||l,h=h.reverse()):(m.connectionStart=m.connectionStart||d,m.source=s||l,m.target=u):"reconnectEnd"===c?Lc(n)?(m.connectionStart=m.connectionStart||d,m.source=s||u,m.target=l,h=h.reverse()):(m.connectionEnd=m.connectionEnd||d,m.source=l,m.target=s||u):(m.noCropping=!0,m.noLayout=!0,h[o]=d),c===Ic&&(h=e.cropWaypoints(p,h)),m.waypoints=h,r.drawPreview(n,i,m)),Ci(a,t.x,t.y)}),this),n.on(["bendpoint.move.end","bendpoint.move.cancel"],1100,(function(e){var t=e.context,n=t.connection,o=t.draggerGfx,a=t.hover,s=t.target,c=t.waypoints;n.waypoints=c,Ae(o),i.removeMarker(n,Hc),i.removeMarker(n,Gc),a&&(i.removeMarker(a,zc),i.removeMarker(a,s?zc:Fc)),r&&r.cleanUp(t)}))}Vc.$inject=["bendpointMove","injector","eventBus","canvas"];var Wc="connect-hover",Uc="djs-updating";function qc(e,t,n){return Kc(e,t,e[t]+n)}function Kc(e,t,n){return{x:"x"===t?n:e.x,y:"y"===t?n:e.y}}function Yc(e){return"x"===e?"y":"x"}function Xc(e,t,n){var i,r;return e.original?e.original:(i=Vn(t),Kc(e,r=Yc(n),i[r]))}function Zc(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 Kc(t,i,Math.min(Math.max(o+20,e[i]),r-20))}(n,i[e.segmentStartIndex+t],i[e.segmentEndIndex+t],Yc(e.axis));Ci(e.draggerGfx,r.x,r.y)}this.start=function(e,t,r){var o,a,s,c,p=n.getGraphics(t),l=r-1,u=r,h=t.waypoints,d=h[l],f=h[u],m=Rc(n,h,e);(a=nn(d,f))&&(s="v"===a?"x":"y",0===l&&(d=Xc(d,t.source,s)),u===h.length-1&&(f=Xc(f,t.target,s)),o={connection:t,segmentStartIndex:l,segmentEndIndex:u,segmentStart:d,segmentEnd:f,axis:s,dragPosition:c=m?m.point:{x:(d.x+f.x)/2,y:(d.y+f.y)/2}},i.init(e,c,"connectionSegment.move",{cursor:"x"===s?"resize-ew":"resize-ns",data:{connection:t,connectionGfx:p,context:o}}))},t.on("connectionSegment.move.start",(function(e){var t=e.context,i=e.connection,r=n.getLayer("overlays");t.originalWaypoints=i.waypoints.slice(),t.draggerGfx=Ac(r,t.segmentStart,t.segmentEnd),Te(t.draggerGfx).add("djs-dragging"),n.addMarker(i,Uc)})),t.on("connectionSegment.move.move",(function(e){var t,n,i=e.context,r=i.connection,o=i.segmentStartIndex,a=i.segmentEndIndex,l=i.segmentStart,u=i.segmentEnd,h=i.axis,d=i.originalWaypoints.slice(),f=qc(l,h,e["d"+h]),m=qc(u,h,e["d"+h]),v=d.length,y=0;d[o]=f,d[a]=m,o<2&&(t=Wn(r.source,f),1===o?"intersect"===t&&(d.shift(),d[0]=f,y--):"intersect"!==t&&(d.unshift(l),y++)),a>v-3&&(n=Wn(r.target,m),a===v-2?"intersect"===n&&(d.pop(),d[d.length-1]=m):"intersect"!==n&&d.push(u)),i.newWaypoints=r.waypoints=s(r,d),p(i,y,e),i.newSegmentStartIndex=o+y,c(e)})),t.on("connectionSegment.move.hover",(function(e){e.context.hover=e.hover,n.addMarker(e.hover,Wc)})),t.on(["connectionSegment.move.out","connectionSegment.move.cleanup"],(function(e){var t=e.context.hover;t&&n.removeMarker(t,Wc)})),t.on("connectionSegment.move.cleanup",(function(e){var t=e.context,i=t.connection;t.draggerGfx&&Ae(t.draggerGfx),n.removeMarker(i,Uc)})),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!tn(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,l={segmentMove:{segmentStartIndex:t.segmentStartIndex,newSegmentStartIndex:r+p}};o.updateWaypoints(n,c,l)}))}Zc.$inject=["injector","eventBus","canvas","dragging","graphicsFactory","modeling"];var Qc=Math.abs,Jc=Math.round;function ep(e){return{x:e.x,y:e.y}}function tp(e){return{x:e.x+e.width,y:e.y+e.height}}function np(e,t){return!e||isNaN(e.x)||isNaN(e.y)?t:{x:Jc(e.x+e.width/2),y:Jc(e.y+e.height/2)}}function ip(e,t){var n=e.snapped;return!!n&&("string"==typeof t?n[t]:n.x&&n.y)}function rp(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 op(e){return e.children||[]}var ap=Math.abs,sp=Math.round;function cp(e){function t(e,t){if(u(e)){for(var n=e.length;n--;)if(ap(e[n]-t)<=10)return e[n]}else{var i=t%(e=+e);if(i<10)return t-i;if(i>e-10)return t-i+e}return t}function n(e){if(e.width)return{x:sp(e.width/2+e.x),y:sp(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 l=[r[a-1],o,s,r[c+1]];return a<2&&l.unshift(n(i.source)),c>r.length-3&&l.unshift(n(i.target)),e.snapPoints=t={horizontal:[],vertical:[]},b(l,(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))&&rp(e,"x",i),(p||-1!==o.horizontal.indexOf(s))&&rp(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,l=e.y;if(a){var u=p-(i=t(c?a.vertical.concat([c.x]):a.vertical,p)),h=l-(r=t(c?a.horizontal.concat([c.y]):a.horizontal,l));F(e,{dx:e.dx-u,dy:e.dy-h,x:e.x-u,y:e.y-h}),(u||-1!==a.vertical.indexOf(p))&&rp(e,"x",i),(h||-1!==a.horizontal.indexOf(l))&&rp(e,"y",r)}}))}cp.$inject=["eventBus"];var pp={__depends__:[mc,xc],__init__:["bendpoints","bendpointSnapping","bendpointMovePreview"],bendpoints:["type",kc],bendpointMove:["type",jc],bendpointMovePreview:["type",Vc],connectionSegmentMove:["type",Zc],bendpointSnapping:["type",cp]};function lp(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,!l(t=n.canExecute=r(i,o))){if(!1!==t)return n.source=i,void(n.target=o);l(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:up(t)?o:r,connectionEnd:up(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=Vn(n)),t.init(e,"connect",{autoActivate:r,data:{shape:n,context:{start:n,connectionStart:i}}})}}function up(e){var t=e.hover,n=e.source,i=e.target;return t&&n&&t===n&&n!==i}lp.$inject=["eventBus","dragging","modeling","rules"];var hp="connect-ok",dp="connect-not-ok";function fp(e,t,n){var i=e.get("connectionPreview",!1);i&&t.on("connect.move",(function(e){var t=e.context,n=t.canExecute,r=t.hover,o=t.source,a=t.start,s=t.startPosition,c=t.target,p=t.connectionStart||s,l=t.connectionEnd||{x:e.x,y:e.y},u=p,h=l;up(t)&&(u=l,h=p),i.drawPreview(t,n,{source:o||a,target:c||r,connectionStart:u,connectionEnd:h})})),t.on("connect.hover",900,(function(e){var t=e.context,i=e.hover,r=t.canExecute;null!==r&&n.addMarker(i,r?hp:dp)})),t.on(["connect.out","connect.cleanup"],1100,(function(e){var t=e.hover;t&&(n.removeMarker(t,hp),n.removeMarker(t,dp))})),i&&t.on("connect.cleanup",(function(e){i.cleanUp(e.context)}))}fp.$inject=["injector","eventBus","canvas"];var mp={__depends__:[ba,xc,mc],__init__:["connectPreview"],connect:["type",lp],connectPreview:["type",fp]};function vp(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)}vp.$inject=["injector","canvas","graphicsFactory","elementFactory"],vp.prototype.drawPreview=function(e,t,n){n=n||{};var i,r,o,a=e.connectionPreviewGfx,s=e.getConnection,c=n.source,p=n.target,l=n.waypoints,u=n.connectionStart,h=n.connectionEnd,d=n.noLayout,f=n.noCropping,m=n.noNoop,v=this;a||(a=e.connectionPreviewGfx=this.createConnectionPreviewGfx()),Me(a),s||(s=e.getConnection=(r=function(e,t,n){return v.getConnection(e,t,n)},o={},function(e){var t=JSON.stringify(e),n=o[t];return n||(n=o[t]=r.apply(null,arguments)),n})),t&&(i=s(t,c,p)),i?(i.waypoints=l||[],this._layouter&&!d&&(i.waypoints=this._layouter.layoutConnection(i,{source:c,target:p,connectionStart:u,connectionEnd:h,waypoints:n.waypoints||i.waypoints})),i.waypoints&&i.waypoints.length||(i.waypoints=[c?Vn(c):u,p?Vn(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)},vp.prototype.drawNoopPreview=function(e,t){var n=t.source,i=t.target,r=t.connectionStart||Vn(n),o=t.connectionEnd||Vn(i),a=this.cropWaypoints(r,o,n,i);be(e,this.createNoopConnection(a[0],a[1]))},vp.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&&Un(o,s,!0)||e,t=i&&Un(a,s,!1)||t]},vp.prototype.cleanUp=function(e){e&&e.connectionPreviewGfx&&Ae(e.connectionPreviewGfx)},vp.prototype.getConnection=function(e){var t=function(e){return h(e)?e:{}}(e);return this._elementFactory.createConnection(t)},vp.prototype.createConnectionPreviewGfx=function(){var e=Oe("g");return Ee(e,{pointerEvents:"none"}),Te(e).add("djs-connection-preview"),be(this._canvas.getActiveLayer(),e),e},vp.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 yp={__init__:["connectionPreview"],connectionPreview:["type",vp]},gp=Math.min,bp=Math.max;function xp(e){e.preventDefault()}function _p(e){e.stopPropagation()}function Ep(e){this.container=e.container,this.parent=de('<div class="djs-direct-editing-parent"><div class="djs-direct-editing-content" contenteditable="true"></div></div>'),this.content=ve("[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 wp(e,t){this._eventBus=e,this._providers=[],this._textbox=new Ep({container:t.getContainer(),keyHandler:I(this._handleKey,this),resizeHandler:I(this._handleResize,this)})}Ep.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(o,"keydown",this.keyHandler),ce(o,"mousedown",_p),ce(o,"paste",this.handlePaste),i.autoResize&&ce(o,"input",this.autoResize),i.resizable&&this.resizable(t),a.appendChild(r),this.setSelection(o.lastChild,o.lastChild&&o.lastChild.length),r},Ep.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)}},Ep.prototype.insertText=function(e){e=e.replace(/\r\n|\r|\n/g,"\n"),document.execCommand("insertText",!1,e)||this._insertTextIE(e)},Ep.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,l=(t=p.childNodes,[].slice.call(t));if(function(e){return e.nodeType===Node.TEXT_NODE}(p)){var u=o.textContent;o.textContent=u.substring(0,s)+e+u.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,l[s]),n=h,i=h.textContent.length}else{var d=l.indexOf(o),f=l.indexOf(a);l.forEach((function(t,n){n===d?t.textContent=o.textContent.substring(0,s)+e+a.textContent.substring(c):n>d&&n<=f&&ye(t)})),n=o,i=s+e.length}n&&void 0!==i&&setTimeout((function(){self.setSelection(n,i)}))},Ep.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})}},Ep.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,l;n=this.resizeHandle=de('<div class="djs-direct-editing-resize-handle"></div>');var u=function(n){xp(n),_p(n);var u=gp(bp(p+n.clientX-s,i),o),h=gp(bp(l+n.clientY-c,r),a);t.style.width=u+"px",t.style.height=h+"px",e.resizeHandler({width:p,height:l,dx:n.clientX-s,dy:n.clientY-c})},h=function(e){xp(e),_p(e),pe(document,"mousemove",u,!1),pe(document,"mouseup",h,!1)};ce(n,"mousedown",(function(e){xp(e),_p(e),s=e.clientX,c=e.clientY;var n=t.getBoundingClientRect();p=n.width,l=n.height,ce(document,"mousemove",u),ce(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)},Ep.prototype.destroy=function(){var e=this.parent,t=this.content,n=this.resizeHandle;t.innerText="",e.removeAttribute("style"),t.removeAttribute("style"),pe(t,"keydown",this.keyHandler),pe(t,"mousedown",_p),pe(t,"input",this.autoResize),pe(t,"paste",this.handlePaste),n&&(n.removeAttribute("style"),ye(n)),ye(e)},Ep.prototype.getValue=function(){return this.content.innerText.trim()},Ep.prototype.getSelection=function(){return window.getSelection().getRangeAt(0)},Ep.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)},wp.$inject=["eventBus","canvas"],wp.prototype.registerProvider=function(e){this._providers.push(e)},wp.prototype.isActive=function(){return!!this._active},wp.prototype.cancel=function(){this._active&&(this._fire("cancel"),this.close())},wp.prototype._fire=function(e,t){this._eventBus.fire("directEditing."+e,t||{active:this._active})},wp.prototype.close=function(){this._textbox.destroy(),this._fire("deactivate"),this._active=null,this.resizable=void 0},wp.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()}},wp.prototype.getValue=function(){return this._textbox.getValue()},wp.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())},wp.prototype._handleResize=function(e){this._fire("resize",e)},wp.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 Sp={__depends__:[la],__init__:["directEditing"],directEditing:["type",wp]},Cp=".entry";function Rp(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()}Rp.$inject=["config.contextPad","eventBus","overlays"],Rp.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)}))},Rp.prototype.registerProvider=function(e,t){t||(t=e,e=1e3),this._eventBus.on("contextPad.getProviders",e,(function(e){e.providers.push(t)}))},Rp.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},Rp.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[Rt(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()},Rp.prototype.open=function(e,t){!t&&this.isOpen(e)||(this.close(),this._updateAndOpen(e))},Rp.prototype._getProviders=function(){var e=this._eventBus.createEvent({type:"contextPad.getProviders",providers:[]});return this._eventBus.fire(e),e.providers},Rp.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=Wt(e.html||'<div class="entry" draggable="true"></div>');Rt(o,"data-action",t),(n=Kt("[data-group="+r+"]",i))||(n=Wt('<div class="group" data-group="'+r+'"></div>'),i.appendChild(n)),n.appendChild(o),e.className&&function(e,t){var n=kt(e);(u(t)?t:t.split(/\s+/g)).forEach((function(e){n.add(e)}))}(o,e.className),e.title&&Rt(o,"title",e.title),e.imageUrl&&o.appendChild(Wt('<img src="'+e.imageUrl+'">'))})),kt(i).add("open"),this._current={element:e,pad:n,entries:t},this._eventBus.fire("contextPad.open",{current:this._current})},Rp.prototype.getPad=function(e){if(this.isOpen())return this._current.pad;var t=this,n=this._overlays,i=Wt('<div class="djs-context-pad"></div>'),r=F({html:i},this._overlaysConfig);Vt.bind(i,Cp,"click",(function(e){t.trigger("click",e)})),Vt.bind(i,Cp,"dragstart",(function(e){t.trigger("dragstart",e)})),$t.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},Rp.prototype.close=function(){this.isOpen()&&(this._overlays.remove(this._overlayId),this._overlayId=null,this._eventBus.fire("contextPad.close",{current:this._current}),this._current=null)},Rp.prototype.isOpen=function(e){return!(!this._current||e&&this._current.element!==e)};var Tp={__depends__:[la,Ra],contextPad:["type",Rp]},Pp=["marker-start","marker-mid","marker-end"],Ap=["circle","ellipse","line","path","polygon","polyline","rect"];function Mp(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){Ae(e)})),r._clonedMarkers={}}))}Mp.$inject=["elementRegistry","eventBus","canvas","styles"],Mp.prototype.getGfx=function(e){return this._elementRegistry.getGraphics(e)},Mp.prototype.addDragger=function(e,t,n){var i=ke(n=n||this.getGfx(e)),r=n.getBoundingClientRect();return this._cloneMarkers(wi(i)),Ee(i,this._styles.cls("djs-dragger",[],{x:r.top,y:r.left})),be(t,i),i},Mp.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 be(t,n),n},Mp.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!==Ap.indexOf(e.nodeName)})(e)&&Pp.forEach((function(n){if(Ee(e,n)){var i=function(e,t,n){return Kt("marker#"+(i=Ee(e,t),i.match(/url\(['"]?#([^'"]*)['"]?\)/)[1]),n||document);var i}(e,n,t._canvas.getContainer());t._cloneMarker(e,i,n)}}))},Mp.prototype._cloneMarker=function(e,t,n){var i=t.id,r=this._clonedMarkers[i];if(!r){var o=i+"-clone";(r=ke(t)).id=o,Te(r).add("djs-dragger").add("djs-dragger-marker"),this._clonedMarkers[i]=r;var a=Kt("defs",this._canvas._svg);a||(a=Oe("defs"),be(this._canvas._svg,a)),be(a,r)}Ee(e,n,"url(#"+this._clonedMarkers[i].id+")")};var kp={__init__:["previewSupport"],previewSupport:["type",Mp]},Dp="drop-ok",Bp="drop-not-ok",Np="attach-ok",Op="new-parent",jp="create";function Lp(e,t,n,i,r){function o(t,n){[Np,Dp,Bp,Op].forEach((function(i){i===n?e.addMarker(t,i):e.removeMarker(t,i)}))}function a(){var e=t.context();e&&e.prefix===jp&&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);Ip(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!zp(e)})),s=!1,c=!1,p=!1;Fp(e)&&(s=r.allowed("shape.attach",{position:n,shape:a,target:t})),s||(p=Fp(e)?r.allowed("shape.create",{position:n,shape:a,source:i,target:t}):r.allowed("elements.create",{elements:e,position:n,target:t}));var l=o.connectionTarget;return p||s?(a&&i&&(c=r.allowed("connection.create",{source:l===i?a:i,target:l===i?i:a,hints:{targetParent:t,targetAttach:s}})),{attach:s,connect:c}):(null===p||null===s)&&null}(n,i,c,a,s);i&&null!==p&&(t.target=i,p&&p.attach?o(i,Np):o(i,p?Op:Bp))})),n.on(["create.end","create.out","create.cleanup"],(function(e){var t=e.hover;t&&o(t,null)})),n.on("create.end",(function(e){var t=e.context,n=t.source,r=t.shape,o=t.elements,a=t.target,s=t.canExecute,c=s&&s.attach,p=s&&s.connect,l=t.hints||{};if(!1===s||!a)return!1;Ip(e);var u={x:e.x,y:e.y};r=p?i.appendShape(n,r,u,a,{attach:c,connection:!0===p?{}:p,connectionTarget:l.connectionTarget}):y(o=i.createElements(o,u,a,F({},l,{attach:c})),(function(e){return!zp(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"],2e3,(function(){n.off("elements.changed",a)}))})),this.start=function(e,n,i){u(n)||(n=[n]);var r=y(n,(function(e){return!zp(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=dt(g(n,(function(e){return!e.hidden})));b(n,(function(e){zp(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,jp,{cursor:"grabbing",autoActivate:!0,data:{shape:r,elements:n,context:i}})}}}function Ip(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 zp(e){return!!e.waypoints}function Fp(e){return e&&1===e.length&&!zp(e[0])}Lp.$inject=["canvas","dragging","eventBus","modeling","rules"];function $p(e,t,n,i,r){t.on("create.move",750,(function(t){var o=t.hover,a=t.context,s=a.elements,c=a.dragGroup;c||(c=a.dragGroup=function(e){var t=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(wi(r),e)):(r=n._createContainer("shape",o),n.drawShape(wi(r),e),Ci(r,e.x,e.y)),i.addDragger(e,t,r))})),t}(s)),o?(c.parentNode||be(e.getActiveLayer(),c),Ci(c,t.x,t.y)):Ae(c)})),t.on("create.cleanup",(function(e){var t=e.context.dragGroup;t&&Ae(t)}))}$p.$inject=["canvas","eventBus","graphicsFactory","previewSupport","styles"];var Hp={__depends__:[mc,kp,xc,ba],__init__:["create","createPreview"],create:["type",Lp],createPreview:["type",$p]},Gp="data-id",Vp=["contextPad.close","canvas.viewbox.changing","commandStack.changed"];function Wp(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={}}Wp.$inject=["config.popupMenu","eventBus","canvas"],Wp.prototype.registerProvider=function(e,t,n){n||(n=t,t=1e3),this._eventBus.on("popupMenu.getProviders."+e,t,(function(e){e.providers.push(n)}))},Wp.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=R(i)>0,a=r&&R(r)>0;return!o&&!a},Wp.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(),R(a)&&r.container.appendChild(this._createEntries(a,"djs-popup-header")),R(o)&&r.container.appendChild(this._createEntries(o,"djs-popup-body"));var s=this._canvas.getContainer();this._attachContainer(r.container,s,n.cursor),this._bindAutoClose()},Wp.prototype.close=function(){this.isOpen()&&(this._emit("close"),this._unbindAutoClose(),Xt(this._current.container),this._current.container=null)},Wp.prototype.isOpen=function(){return!!this._current.container},Wp.prototype.trigger=function(e){e.preventDefault();var t=Rt(e.delegateTarget||e.target,Gp),n=this._getEntry(t);if(n.action)return n.action.call(null,e,n)},Wp.prototype._getProviders=function(e){var t=this._eventBus.createEvent({type:"popupMenu.getProviders."+e,providers:[]});return this._eventBus.fire(t),t.providers},Wp.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},Wp.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},Wp.prototype._getEntry=function(e){var t=this._current.entries[e];if(!t)throw new Error("entry not found");return t},Wp.prototype._emit=function(e){this._eventBus.fire("popupMenu."+e)},Wp.prototype._createContainer=function(){var e=Wt('<div class="djs-popup">'),t=this._current.position,n=this._current.className;return Ct(e,{position:"absolute",left:t.x+"px",top:t.y+"px",visibility:"hidden"}),kt(e).add(n),e},Wp.prototype._attachContainer=function(e,t,n){var i=this;Vt.bind(e,".entry","click",(function(e){i.trigger(e)})),this._updateScale(e),t.appendChild(e),n&&this._assureIsInbounds(e,n)},Wp.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+")")},Wp.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={},l=t.x-r.left,u=t.y-r.top;o+s>r.width&&(p.x=!0),a+c>r.height&&(p.y=!0),p.x&&p.y?(n=l-s+"px",i=u-c+"px"):p.x?(n=l-s+"px",i=u+"px"):p.y&&u<c?(n=l+"px",i="10px"):p.y&&(n=l+"px",i=u-c+"px"),Ct(e,{left:n,top:i},{visibility:"visible",zIndex:1e3})},Wp.prototype._createEntries=function(e,t){var n=Wt("<div>"),i=this;return kt(n).add(t),b(e,(function(e,t){var r=i._createEntry(e,t);n.appendChild(r)})),n},Wp.prototype._createEntry=function(e,t){var n=Wt("<div>"),i=kt(n);if(i.add("entry"),e.className&&e.className.split(" ").forEach((function(e){i.add(e)})),Rt(n,Gp,t),e.label){var r=Wt("<span>");r.textContent=e.label,n.appendChild(r)}return e.imageUrl&&n.appendChild(Wt('<img src="'+e.imageUrl+'" />')),!0===e.active&&i.add("active"),!0===e.disabled&&i.add("disabled"),e.title&&(n.title=e.title),n},Wp.prototype._bindAutoClose=function(){this._eventBus.once(Vp,this.close,this)},Wp.prototype._unbindAutoClose=function(){this._eventBus.off(Vp,this.close,this)};var Up={__init__:["popupMenu"],popupMenu:["type",Wp]};function qp(){}qp.prototype.get=function(){return this._data},qp.prototype.set=function(e){this._data=e},qp.prototype.clear=function(){var e=this._data;return delete this._data,e},qp.prototype.isEmpty=function(){return!this._data};var Kp={clipboard:["type",qp]};function Yp(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)}))}Yp.$inject=["eventBus"],Yp.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 Xp={__init__:["mouse"],mouse:["type",Yp]};function Zp(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),Qp(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=el(e)).original&&(e.original=el(e.original)),e}))}(n)),Jp(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 Qp(e){return!!e.waypoints}function Jp(e){return!!e.labelTarget}function el(e){return F({},e)}function tl(e,t){var n=t.indexOf(e);return-1===n?t:t.splice(n,1)}Zp.$inject=["canvas","create","clipboard","elementFactory","eventBus","modeling","mouse","rules"],Zp.prototype.copy=function(e){var t,n;return u(e)||(e=e?[e]:[]),n=!1===(t=this._eventBus.fire("copyPaste.canCopyElements",{elements:e}))?{}:this.createTree(u(t)?t:e),this._clipboard.set(n),this._eventBus.fire("copyPaste.elementsCopied",{elements:e,tree:n}),n},Zp.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||{}})}},Zp.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=dt(e);return b(e,(function(e){Qp(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))},Zp.prototype._createElements=function(e){var t=this,n=this._eventBus,i={},r=[];return b(e,(function(e,o){b(e=k(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}),Qp(a)?(a.source=i[e.source],a.target=i[e.target],o=i[e.id]=t.createConnection(a),void r.push(o)):Jp(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},Zp.prototype.createConnection=function(e){return this._elementFactory.createConnection(H(e,["id"]))},Zp.prototype.createLabel=function(e){return this._elementFactory.createLabel(H(e,["id"]))},Zp.prototype.createShape=function(e){return this._elementFactory.createShape(H(e,["id"]))},Zp.prototype.hasRelations=function(e,t){var n,i;return!(Qp(e)&&(n=y(t,D({id:e.source.id})),i=y(t,D({id:e.target.id})),!n||!i))&&!(Jp(e)&&!y(t,D({id:e.labelTarget.id})))},Zp.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 ut(ct(e),(function(e,t,i){if(!Jp(e)){b(e.labels,(function(e){o(e,i)})),b([e.attachers,e.incoming,e.outgoing],(function(e){e&&e.length&&b(e,(function(e){b(e.labels,(function(e){o(e,i)})),o(e,i)}))})),o(e,i);var r=[];return e.children&&(r=e.children.slice()),n._eventBus.fire("copyPaste.createTree",{element:e,children:r}),r}})),e=S(r,(function(e){return e.element})),r=k(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)?tl(r.element,e):(i[o]||(i[o]=[]),i[o].push(r.descriptor)):tl(r.element,e)})),i};var nl={__depends__:[Kp,Hp,Xp,xc],__init__:["copyPaste"],copyPaste:["type",Zp]};function il(e,t,n){u(n)||(n=[n]),b(n,(function(n){c(e[n])||(t[n]=e[n])}))}function rl(e,t,n){var i;t.on("copyPaste.copyElement",750,(function(e){var t=e.descriptor,n=e.element,i=t.oldBusinessObject=eo(n),r=t.oldDi=to(n);if(t.type=n.type,il(i,t,"name"),il(r,t,"isExpanded"),ol(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&&Qr(r,"bpmn:Participant")&&Qr(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,c=t.cache,p=t.descriptor,l=p.oldBusinessObject,h=p.oldDi;if(ol(p))return p.businessObject=eo(c[p.labelTarget]),void(p.di=to(c[p.labelTarget]));r=e.create(l.$type),p.businessObject=n.copyElement(l,r),(o=e.create(h.$type)).bpmnElement=r,p.di=n.copyElement(h,o),function(e,t){var n=eo(e);e.default&&(i[e.default]={element:n,property:"default"}),e.host&&(eo(e).attachedToRef=eo(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}),[]))}(p,c),il(p,r,["isExpanded","name"]),a=p,u(s="oldBusinessObject")||(s=[s]),b(s,(function(e){a[e]&&delete a[e]}))}))}function ol(e){return!!e.labelTarget}rl.$inject=["bpmnFactory","eventBus","moddleCopy"];var al=["artifacts","dataInputAssociations","dataOutputAssociations","default","flowElements","lanes","incoming","outgoing"];function sl(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 k(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===al.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 cl(e,t){return _(e.properties,(function(e,n){return t&&n.default?e:e.concat(n.name)}),[])}sl.$inject=["eventBus","bpmnFactory","moddle"],sl.prototype.copyElement=function(e,t,n){var i=this;n&&!u(n)&&(n=[n]),n=n||cl(e.$descriptor);var r=this._eventBus.fire("moddleCopy.canCopyProperties",{propertyNames:n,sourceElement:e,targetElement:t});return!1===r||(u(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},sl.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.isReference){if(o.isId)return this._copyId(e,t);if(u(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}}},sl.prototype._copyId=function(e,t){return this._moddle.ids.assigned(e)?void 0:(this._moddle.ids.claim(e,t),e)};var pl={__depends__:[nl],__init__:["bpmnCopyPaste","moddleCopy"],bpmnCopyPaste:["type",rl],moddleCopy:["type",sl]},ll=Math.round;function ul(e){this._modeling=e}ul.$inject=["modeling"],ul.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=ll(a+r/2),p=ll(s+o/2);return i.replaceShape(e,F({},t,{x:c,y:p,width:r,height:o}),n)};var hl={__init__:["replace"],replace:["type",ul]};var dl=["cancelActivity","instantiate","eventGatewayType","triggeredByEvent","isInterrupting"];function fl(e,t,n,i,r,o,a){this.replaceElement=function(s,p,l){l=l||{};var h=p.type,d=s.businessObject;if(ml(d)&&"bpmn:SubProcess"===h&&function(e,t){var n=e&&v(e,"collapsed")?e.collapsed:!go(e);return n!==(t&&(v(t,"collapsed")||v(t,"isExpanded"))?v(t,"collapsed")?t.collapsed:!t.isExpanded:n)}(s,p))return i.toggleCollapse(s),s;var f=e.create(h),m={type:h,businessObject:f,di:{}};!function(e,t,n){u(n)||(n=[n]),b(n,(function(n){c(e[n])||(t[n]=e[n])}))}(s.di,m.di,["fill","stroke","background-color","border-color","color"]);var y,x=cl(d.$descriptor),_=cl(f.$descriptor,!0),E=(y=_,x.filter((function(e){return-1!==y.indexOf(e)})));F(f,$(p,dl));var w=g(E,(function(e){return"eventDefinitions"===e?vl(s,p.eventDefinitionType):"loopCharacteristics"===e?!bo(f):!v(f,e)&&(("processRef"!==e||!1!==p.isExpanded)&&"triggeredByEvent"!==e)}));return f=n.copyElement(d,f,w),p.eventDefinitionType&&(vl(f,p.eventDefinitionType)||(m.eventDefinitionType=p.eventDefinitionType,m.eventDefinitionAttrs=p.eventDefinitionAttrs)),Qr(d,"bpmn:Activity")&&(ml(d)?m.isExpanded=go(s):p&&v(p,"isExpanded")&&(m.isExpanded=p.isExpanded),go(s)&&!Qr(d,"bpmn:Task")&&m.isExpanded&&(m.width=s.width,m.height=s.height)),ml(d)&&!ml(f)&&(l.moveChildren=!1),Qr(d,"bpmn:Participant")&&(!0===p.isExpanded?f.processRef=e.create("bpmn:Process"):l.moveChildren=!1,m.width=s.width,m.height=t.getDefaultSize(m).height),o.allowed("shape.resize",{shape:f})||(m.height=t.getDefaultSize(m).height,m.width=t.getDefaultSize(m).width),f.name=d.name,Jr(d,["bpmn:ExclusiveGateway","bpmn:InclusiveGateway","bpmn:Activity"])&&Jr(f,["bpmn:ExclusiveGateway","bpmn:InclusiveGateway","bpmn:Activity"])&&(f.default=d.default),p.host&&!Qr(d,"bpmn:BoundaryEvent")&&Qr(f,"bpmn:BoundaryEvent")&&(m.host=p.host),"bpmn:DataStoreReference"!==m.type&&"bpmn:DataObjectReference"!==m.type||(m.x=s.x+(s.width-m.width)/2),m=r.replaceElement(s,m,l),!1!==l.select&&a.select(m),m}}function ml(e){return Qr(e,"bpmn:SubProcess")}function vl(e,t){var n=eo(e);return t&&n.get("eventDefinitions").some((function(e){return Qr(e,t)}))}fl.$inject=["bpmnFactory","elementFactory","moddleCopy","modeling","replace","rules","selection"];var yl={__depends__:[pl,hl,ba],bpmnReplace:["type",fl]};function gl(e){return function(t){var n=t.target,i=eo(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===go(e);return!(o&&a&&s&&c)}}var bl=[{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"}}],xl=[{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"}}],_l=[{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"}}],El=[{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"}}],wl=[{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"}}],Sl=[{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}}],Cl=[{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}}],Rl=[{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}}],Tl=[{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}}],Pl=[{label:"Data Store Reference",actionName:"replace-with-data-store-reference",className:"bpmn-icon-data-store",target:{type:"bpmn:DataStoreReference"}}],Al=[{label:"Data Object Reference",actionName:"replace-with-data-object-reference",className:"bpmn-icon-data-object",target:{type:"bpmn:DataObjectReference"}}],Ml=[{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}}],kl=[{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}}],Dl=[{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"}],Bl=[{label:"Expanded Pool",actionName:"replace-with-expanded-pool",className:"bpmn-icon-participant",target:{type:"bpmn:Participant",isExpanded:!0}},{label:function(e){var t="Empty Pool";return e.children&&e.children.length&&(t+=" (removes content)"),t},actionName:"replace-with-collapsed-pool",className:"bpmn-icon-lane",target:{type:"bpmn:Participant",isExpanded:!1}}];function Nl(e,t,n,i,r,o,a){this._bpmnFactory=e,this._popupMenu=t,this._modeling=n,this._moddle=i,this._bpmnReplace=r,this._rules=o,this._translate=a,this.register()}Nl.$inject=["bpmnFactory","popupMenu","modeling","moddle","bpmnReplace","rules","translate"],Nl.prototype.register=function(){this._popupMenu.registerProvider("bpmn-replace",this)},Nl.prototype.getEntries=function(e){var t,n=e.businessObject;if(!this._rules.allowed("shape.replace",{element:e}))return[];var i=gl(e);return Qr(n,"bpmn:DataObjectReference")?this._createEntries(e,Pl):Qr(n,"bpmn:DataStoreReference")&&!Qr(e.parent,"bpmn:Collaboration")?this._createEntries(e,Al):Qr(n,"bpmn:StartEvent")&&!Qr(n.$parent,"bpmn:SubProcess")?(t=g(bl,i),this._createEntries(e,t)):Qr(n,"bpmn:Participant")?(t=g(Bl,(function(t){return go(e)!==t.target.isExpanded})),this._createEntries(e,t)):Qr(n,"bpmn:StartEvent")&&bo(n.$parent)?(t=g(kl,(function(t){var n=!1!==t.target.isInterrupting,r=eo(e).isInterrupting===n;return i(t)||!i(t)&&!r})),this._createEntries(e,t)):Qr(n,"bpmn:StartEvent")&&!bo(n.$parent)&&Qr(n.$parent,"bpmn:SubProcess")?(t=g(xl,i),this._createEntries(e,t)):Qr(n,"bpmn:EndEvent")?(t=g(El,(function(e){return!("bpmn:CancelEventDefinition"==e.target.eventDefinitionType&&!Qr(n.$parent,"bpmn:Transaction"))&&i(e)})),this._createEntries(e,t)):Qr(n,"bpmn:BoundaryEvent")?(t=g(Ml,(function(e){var t=e.target;if("bpmn:CancelEventDefinition"==t.eventDefinitionType&&!Qr(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)):Qr(n,"bpmn:IntermediateCatchEvent")||Qr(n,"bpmn:IntermediateThrowEvent")?(t=g(_l,i),this._createEntries(e,t)):Qr(n,"bpmn:Gateway")?(t=g(wl,i),this._createEntries(e,t)):Qr(n,"bpmn:Transaction")?(t=g(Cl,i),this._createEntries(e,t)):bo(n)&&go(e)?(t=g(Rl,i),this._createEntries(e,t)):Qr(n,"bpmn:SubProcess")&&go(e)?(t=g(Sl,i),this._createEntries(e,t)):Qr(n,"bpmn:AdHocSubProcess")&&!go(e)?(t=g(Tl,(function(t){var n=t.target,i="bpmn:SubProcess"===n.type,r=!0===n.isExpanded;return gl(e)&&(!i||r)})),this._createEntries(e,t)):Qr(n,"bpmn:SequenceFlow")?this._createSequenceFlowEntries(e,Dl):Qr(n,"bpmn:FlowNode")?(t=g(Tl,i),Qr(n,"bpmn:SubProcess")&&!go(e)&&(t=g(t,(function(e){return"Sub Process (collapsed)"!==e.label}))),this._createEntries(e,t)):[]},Nl.prototype.getHeaderEntries=function(e){var t=[];return Qr(e,"bpmn:Activity")&&!bo(e)&&(t=t.concat(this._getLoopEntries(e))),Qr(e,"bpmn:DataObjectReference")&&(t=t.concat(this._getDataObjectIsCollection(e))),Qr(e,"bpmn:Participant")&&(t=t.concat(this._getParticipantMultiplicity(e))),!Qr(e,"bpmn:SubProcess")||Qr(e,"bpmn:Transaction")||bo(e)||t.push(this._getAdHocEntry(e)),t},Nl.prototype._createEntries=function(e,t){var n=[],i=this;return b(t,(function(t){var r=i._createMenuEntry(t,e);n.push(r)})),n},Nl.prototype._createSequenceFlowEntries=function(e,t){var n=eo(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&&(Qr(n.sourceRef,"bpmn:ExclusiveGateway")||Qr(n.sourceRef,"bpmn:InclusiveGateway")||Qr(n.sourceRef,"bpmn:ComplexGateway")||Qr(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&&Qr(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(Qr(n.sourceRef,"bpmn:Activity")&&n.conditionExpression)return i.push(a._createMenuEntry(t,e,(function(){r.updateProperties(e,{conditionExpression:void 0})})));if((Qr(n.sourceRef,"bpmn:ExclusiveGateway")||Qr(n.sourceRef,"bpmn:InclusiveGateway")||Qr(n.sourceRef,"bpmn:ComplexGateway")||Qr(n.sourceRef,"bpmn:Activity"))&&n.sourceRef.default===n)return i.push(a._createMenuEntry(t,e,(function(){r.updateProperties(e.source,{default:void 0})})))}})),i},Nl.prototype._createMenuEntry=function(e,t,n){var i=this._translate,r=this._bpmnReplace.replaceElement,o=e.label;return o&&"function"==typeof o&&(o=o(t)),n=n||function(){return r(t,e.target)},{label:i(o),className:e.className,id:e.actionName,action:n}},Nl.prototype._getLoopEntries=function(e){var t=this,n=this._translate;function i(n,i){var r=eo(e).loopCharacteristics;i.active?r=void 0:(!c(i.options.isSequential)&&r||(r=t._moddle.create(i.options.loopCharacteristics)),r.isSequential=i.options.isSequential),t._modeling.updateProperties(e,{loopCharacteristics:r})}var r,o,a,s=eo(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"}}]},Nl.prototype._getDataObjectIsCollection=function(e){var t=this,n=this._translate;var i=e.businessObject.dataObjectRef,r=i.isCollection;return[{id:"toggle-is-collection",className:"bpmn-icon-parallel-mi-marker",title:n("Collection"),active:r,action:function(n,r){t._modeling.updateModdleProperties(e,i,{isCollection:!r.active})}}]},Nl.prototype._getParticipantMultiplicity=function(e){var t=this,n=this._bpmnFactory,i=this._translate;var r=e.businessObject.participantMultiplicity;return[{id:"toggle-participant-multiplicity",className:"bpmn-icon-parallel-mi-marker",title:i("Participant Multiplicity"),active:!!r,action:function(i,r){var o;r.active||(o=n.create("bpmn:ParticipantMultiplicity")),t._modeling.updateProperties(e,{participantMultiplicity:o})}}]},Nl.prototype._getAdHocEntry=function(e){var t=this._translate,n=Qr(eo(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 Ol={__depends__:[Up,yl],__init__:["replaceMenuProvider"],replaceMenuProvider:["type",Nl]},jl=Math.max,Ll=Math.min;function Il(e,t){return{top:e.top-t.top,right:e.right-t.right,bottom:e.bottom-t.bottom,left:e.left-t.left}}function zl(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)?Ll:jl)(i,r)),d(o)&&(i=(/top|left/.test(e)?jl:Ll)(i,o)),i}function Fl(e,t){return void 0!==e?e:20}function $l(e){return!e.waypoints&&"label"!==e.type}function Hl(e,t){var n;if((n=void 0===e.length?g(e.children,$l):e).length)return function(e,t){var n,i,r,o;return"object"==typeof t?(n=Fl(t.left),i=Fl(t.right),r=Fl(t.top),o=Fl(t.bottom)):n=i=r=o=Fl(t),{x:e.x-n,y:e.y-r,width:e.width+n+i,height:e.height+r+o}}(dt(n),t)}var Gl=Math.abs;var Vl=["bpmn:Participant","bpmn:Process","bpmn:SubProcess"],Wl=30;function Ul(e,t){return t=t||[],e.children.filter((function(e){Qr(e,"bpmn:Lane")&&(Ul(e,t),t.push(e))})),t}function ql(e){return e.children.filter((function(e){return Qr(e,"bpmn:Lane")}))}function Kl(e){return Qs(e,Vl)||e}function Yl(e,t){var n=Kl(e),i=Ul(n,Qr(n,"bpmn:Process")?[]:[n]),r=Hn(e),o=Hn(t),a=function(e,t){return Il(Hn(t),Hn(e))}(e,t),s=[];return i.forEach((function(t){if(t!==e){var n,i,c=0,p=a.right,l=0,u=a.left,h=Hn(t);a.top&&(Gl(h.bottom-r.top)<10&&(l=o.top-h.bottom),Gl(h.top-r.top)<5&&(c=o.top-h.top)),a.bottom&&(Gl(h.top-r.bottom)<10&&(c=o.bottom-h.top),Gl(h.bottom-r.bottom)<5&&(l=o.bottom-h.bottom)),(c||p||l||u)&&s.push({shape:t,newBounds:(n=t,i={top:c,right:p,bottom:l,left:u},{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 Xl(e,t,n,i,r,o,a,s,c,p,l,u){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=l,this._translate=u,!1!==e.autoPlace&&(this._autoPlace=t.get("autoPlace",!1)),n.on("create.end",250,(function(e){var t=e.context.shape;if(oa(e)&&i.isOpen(t)){var n=i.getEntries(t);n.replace&&n.replace.action.click(e,t)}}))}function Zl(e,t,n){var i=e.$instanceOf(t),r=!1;return b(e.eventDefinitions||[],(function(e){e.$type===n&&(r=!0)})),i&&r}Xl.$inject=["config.contextPad","injector","eventBus","contextPad","modeling","elementFactory","connect","create","popupMenu","canvas","rules","translate"],Xl.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,l=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=l("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(Jr(d,["bpmn:Lane","bpmn:Participant"])&&go(e)){var y=ql(e);F(h,{"lane-insert-above":{group:"lane-insert-above",className:"bpmn-icon-lane-insert-above",title:l("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:l("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:l("Divide into three Lanes"),action:{click:v(3)}}})),F(h,{"lane-insert-below":{group:"lane-insert-below",className:"bpmn-icon-lane-insert-below",title:l("Add Lane below"),action:{click:function(e,t){n.addLane(t,"bottom")}}}})}Qr(d,"bpmn:FlowNode")&&(Qr(d,"bpmn:EventBasedGateway")?F(h,{"append.receive-task":m("bpmn:ReceiveTask","bpmn-icon-receive-task",l("Append ReceiveTask")),"append.message-intermediate-event":m("bpmn:IntermediateCatchEvent","bpmn-icon-intermediate-event-catch-message",l("Append MessageIntermediateCatchEvent"),{eventDefinitionType:"bpmn:MessageEventDefinition"}),"append.timer-intermediate-event":m("bpmn:IntermediateCatchEvent","bpmn-icon-intermediate-event-catch-timer",l("Append TimerIntermediateCatchEvent"),{eventDefinitionType:"bpmn:TimerEventDefinition"}),"append.condition-intermediate-event":m("bpmn:IntermediateCatchEvent","bpmn-icon-intermediate-event-catch-condition",l("Append ConditionIntermediateCatchEvent"),{eventDefinitionType:"bpmn:ConditionalEventDefinition"}),"append.signal-intermediate-event":m("bpmn:IntermediateCatchEvent","bpmn-icon-intermediate-event-catch-signal",l("Append SignalIntermediateCatchEvent"),{eventDefinitionType:"bpmn:SignalEventDefinition"})}):Zl(d,"bpmn:BoundaryEvent","bpmn:CompensateEventDefinition")?F(h,{"append.compensation-activity":m("bpmn:Task","bpmn-icon-task",l("Append compensation activity"),{isForCompensation:!0})}):Qr(d,"bpmn:EndEvent")||d.isForCompensation||Zl(d,"bpmn:IntermediateThrowEvent","bpmn:LinkEventDefinition")||bo(d)||F(h,{"append.end-event":m("bpmn:EndEvent","bpmn-icon-end-event-none",l("Append EndEvent")),"append.gateway":m("bpmn:ExclusiveGateway","bpmn-icon-gateway-none",l("Append Gateway")),"append.append-task":m("bpmn:Task","bpmn-icon-task",l("Append Task")),"append.intermediate-event":m("bpmn:IntermediateThrowEvent","bpmn-icon-intermediate-event-none",l("Append Intermediate/Boundary Event"))})),a.isEmpty(e,"bpmn-replace")||F(h,{replace:{group:"edit",className:"bpmn-icon-screw-wrench",title:l("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)}}}}),Jr(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:l("Connect using "+(d.isForCompensation?"":"Sequence/MessageFlow or ")+"Association"),action:{click:f,dragstart:f}}}),Qr(d,"bpmn:TextAnnotation")&&F(h,{connect:{group:"connect",className:"bpmn-icon-connection-multi",title:l("Connect using Association"),action:{click:f,dragstart:f}}}),Jr(d,["bpmn:DataObjectReference","bpmn:DataStoreReference"])&&F(h,{connect:{group:"connect",className:"bpmn-icon-connection-multi",title:l("Connect using DataInputAssociation"),action:{click:f,dragstart:f}}}),Qr(d,"bpmn:Group")&&F(h,{"append.text-annotation":m("bpmn:TextAnnotation","bpmn-icon-text-annotation")});var g=c.allowed("elements.delete",{elements:[e]});return u(g)&&(g=g[0]===e),g&&F(h,{delete:{group:"edit",className:"bpmn-icon-trash",title:l("Remove"),action:{click:function(t){n.removeElements([e])}}}}),h};var Ql={__depends__:[Sp,Tp,ba,mp,Hp,Ol],__init__:["contextPadProvider"],contextPadProvider:["type",Xl]},Jl={horizontal:["x","width"],vertical:["y","height"]};function eu(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}))}))}eu.$inject=["modeling"],eu.prototype.registerFilter=function(e){if("function"!=typeof e)throw new Error("the filter has to be a function");this._filters.push(e)},eu.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},eu.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},eu.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(k(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},eu.prototype._setOrientation=function(e){var t=Jl[e];this._axis=t[0],this._dimension=t[1]},eu.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)},eu.prototype._findRange=function(e){var t=e[this._axis];return{min:t+5,max:t+e[this._dimension]-5}};var tu={__init__:["distributeElements"],distributeElements:["type",eu]};function nu(e){e.registerFilter((function(e){return g(e,(function(e){var t=Jr(e,["bpmn:Association","bpmn:BoundaryEvent","bpmn:DataInputAssociation","bpmn:DataOutputAssociation","bpmn:Lane","bpmn:MessageFlow","bpmn:Participant","bpmn:SequenceFlow","bpmn:TextAnnotation"]);return!(e.labelTarget||t)}))}))}nu.$inject=["distributeElements"];var iu={__depends__:[tu],__init__:["bpmnDistributeElements"],bpmnDistributeElements:["type",nu]},ru="is not a registered action";function ou(e,t){this._actions={};var n=this;e.on("diagram.init",(function(){n._registerDefaultActions(t),e.fire("editorActions.init",{editorActions:n})}))}function au(e,t){return new Error(e+" "+t)}ou.$inject=["eventBus","injector"],ou.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=u(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)}))},ou.prototype.trigger=function(e,t){if(!this._actions[e])throw au(e,ru);return this._actions[e](t)},ou.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)}))},ou.prototype._registerAction=function(e,t){if(this.isRegistered(e))throw au(e,"is already registered");this._actions[e]=t},ou.prototype.unregister=function(e){if(!this.isRegistered(e))throw au(e,ru);this._actions[e]=void 0},ou.prototype.getActions=function(){return Object.keys(this._actions)},ou.prototype.isRegistered=function(e){return!!this._actions[e]};var su={__init__:["editorActions"],editorActions:["type",ou]};function cu(e){e.invoke(ou,this)}n(cu,ou),cu.$inject=["injector"],cu.prototype._registerDefaultActions=function(e){ou.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),l=e.get("directEditing",!1),u=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!Qr(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&&l&&this._registerAction("directEditing",(function(){var e=i.get();e.length&&l.activate(e[0])})),u&&this._registerAction("find",(function(){u.toggle()})),t&&h&&this._registerAction("moveToOrigin",(function(){var e,i,r=t.getRootElement();e=dt(i=Qr(r,"bpmn:Collaboration")?n.filter((function(e){return Qr(e.parent,"bpmn:Collaboration")})):n.filter((function(e){return e!==r&&!Qr(e.parent,"bpmn:SubProcess")}))),h.moveElements(i,{x:-e.x,y:-e.y},r)}))};var pu={__depends__:[su],editorActions:["type",cu]};function lu(e){e.on(["create.init","shape.move.init"],(function(e){var t=e.context;Jr(e.shape,["bpmn:Participant","bpmn:SubProcess","bpmn:TextAnnotation"])&&(t.gridSnappingContext||(t.gridSnappingContext={}),t.gridSnappingContext.snapLocation="top-left")}))}lu.$inject=["eventBus"];function uu(e,t,n){return n||(n="round"),Math[n](e/t)*t}function hu(e,t,n){var i=!n||!1!==n.active;this._eventBus=t;var r=this;t.on("diagram.init",800,(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"],1200,(function(t){var n=t.originalEvent;if(!(!r.active||n&&Ja(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)||(du(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&&(du(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&&(du(t)?mu(s)?a.x.max=c.left:a.x.min=c.right:fu(s)?a.y.max=c.top:a.y.min=c.bottom);p&&(du(t)?mu(s)?a.x.min=p.left:a.x.max=p.right:fu(s)?a.y.min=p.top:a.y.max=p.bottom);return a[t]}(t,n);a&&F(i,a),ip(t,n)||r.snapEvent(t,n,i)}))}}))}function du(e){return"x"===e}function fu(e){return-1!==e.indexOf("n")}function mu(e){return-1!==e.indexOf("w")}function vu(e,t){Aa.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)}}))}hu.prototype.snapEvent=function(e,t,n){rp(e,t,this.snapValue(e[t],n))},hu.prototype.getGridSpacing=function(){return 10},hu.prototype.snapValue=function(e,t){var n,i,r=0;return t&&t.offset&&(r=t.offset),e=uu(e+=r,10),t&&t.min&&d(n=t.min)&&(n=uu(n+r,10,"ceil"),e=Math.max(e,n)),t&&t.max&&d(i=t.max)&&(i=uu(i+r,10,"floor"),e=Math.min(e,i)),e-=r},hu.prototype.isActive=function(){return this.active},hu.prototype.setActive=function(e){this.active=e,this._eventBus.fire("gridSnapping.toggle",{active:e})},hu.prototype.toggleActive=function(){this.setActive(!this.active)},hu.$inject=["elementRegistry","eventBus","config.gridSnapping"],vu.$inject=["eventBus","gridSnapping","modeling"],n(vu,Aa),vu.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},vu.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},vu.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},vu.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};function yu(e,t){e.on(["spaceTool.move","spaceTool.end"],2e3,(function(e){var n,i=e.context;i.initialized&&("x"===i.axis?(n=t.snapValue(e.dx),e.x=e.x+n-e.dx,e.dx=n):(n=t.snapValue(e.dy),e.y=e.y+n-e.dy,e.dy=n))}))}yu.$inject=["eventBus","gridSnapping"];var gu={__depends__:[{__init__:["gridSnappingResizeBehavior","gridSnappingSpaceToolBehavior"],gridSnappingResizeBehavior:["type",vu],gridSnappingSpaceToolBehavior:["type",yu]}],__init__:["gridSnapping"],gridSnapping:["type",hu]};function bu(e,t){e.on("autoPlace",2e3,(function(e){var n=e.source,i=Vn(n),r=e.shape,o=Js(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],Qr(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}))}bu.$inject=["eventBus","gridSnapping"];function xu(e,t,n){t.on(["create.start","shape.move.start"],1750,(function(t){var i=t.context,r=i.shape,o=e.getRootElement();Qr(r,"bpmn:Participant")&&Qr(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})))}))}xu.$inject=["canvas","eventBus","gridSnapping"];function _u(e,t,n){Aa.call(this,e),this._gridSnapping=t;var i=this;this.postExecuted(["connection.create","connection.layout"],3e3,(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 Eu(e,t,n){var i=nn(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]}_u.$inject=["eventBus","gridSnapping","modeling"],n(_u,Aa),_u.prototype.snapMiddleSegments=function(e){var t,n=this._gridSnapping;e=e.slice();for(var i=1;i<e.length-2;i++)t=Eu(n,e[i],e[i+1]),e[i]=t[0],e[i+1]=t[1];return e};var wu={__depends__:[gu,{__init__:["gridSnappingAutoPlaceBehavior","gridSnappingCreateParticipantBehavior","gridSnappingLayoutConnectionBehavior"],gridSnappingAutoPlaceBehavior:["type",bu],gridSnappingCreateParticipantBehavior:["type",xu],gridSnappingLayoutConnectionBehavior:["type",_u]}],__init__:["bpmnGridSnapping"],bpmnGridSnapping:["type",lu]};function Su(e,t){this._interactionEvents=t;var n=this;e.on(["interactionEvents.createHit","interactionEvents.updateHit"],(function(e){var t=e.element,i=e.gfx;return Qr(t,"bpmn:Lane")?n.createParticipantHit(t,i):Qr(t,"bpmn:Participant")?go(t)?n.createParticipantHit(t,i):n.createDefaultHit(t,i):Qr(t,"bpmn:SubProcess")?go(t)?n.createSubProcessHit(t,i):n.createDefaultHit(t,i):void 0}))}Su.$inject=["eventBus","interactionEvents"],Su.prototype.createDefaultHit=function(e,t){return this._interactionEvents.removeHits(t),this._interactionEvents.createDefaultHit(e,t),!0},Su.prototype.createParticipantHit=function(e,t){return this._interactionEvents.removeHits(t),this._interactionEvents.createBoxHit(t,"no-move",{width:e.width,height:e.height}),this._interactionEvents.createBoxHit(t,"click-stroke",{width:e.width,height:e.height}),this._interactionEvents.createBoxHit(t,"all",{width:30,height:e.height}),!0},Su.prototype.createSubProcessHit=function(e,t){return this._interactionEvents.removeHits(t),this._interactionEvents.createBoxHit(t,"no-move",{width:e.width,height:e.height}),this._interactionEvents.createBoxHit(t,"click-stroke",{width:e.width,height:e.height}),this._interactionEvents.createBoxHit(t,"all",{width:e.width,height:30}),!0};var Cu={__init__:["bpmnInteractionEvents"],bpmnInteractionEvents:["type",Su]};function Ru(e){e.invoke(ps,this)}n(Ru,ps),Ru.$inject=["injector"],Ru.prototype.registerBindings=function(e,t){function n(n,i){t.isRegistered(n)&&e.addListener(i)}ps.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 Tu={__depends__:[ls],__init__:["keyboardBindings"],keyboardBindings:["type",Ru]},Pu={moveSpeed:1,moveSpeedAccelerated:10},Au="left",Mu="right",ku="down",Du={ArrowLeft:Au,Left:Au,ArrowUp:"up",Up:"up",ArrowRight:Mu,Right:Mu,ArrowDown:ku,Down:ku},Bu={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 Nu(e,t,n,i,r){var o=this;this._config=F({},Pu,e||{}),t.addListener(1500,(function(e){var n=e.keyEvent,i=Du[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=Bu[e](a);i.allowed("elements.move",{shapes:o})&&n.moveElements(o,s)}}}Nu.$inject=["config.keyboardMoveSelection","keyboard","modeling","rules","selection"];var Ou={__depends__:[ls,ba],__init__:["keyboardMoveSelection"],keyboardMoveSelection:["type",Nu]};function ju(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=Hn(e);return Gn({top:zl("top",n,t),right:zl("right",n,t),bottom:zl("bottom",n,t),left:zl("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:Hn(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=Fn(r)))return;n.resizeShape(t,r)}}(e.context)}))}function Lu(e,t){var n=Vn(e),i=Hn(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 Iu(e){return"n"===e||"s"===e?"resize-ns":"e"===e||"w"===e?"resize-ew":"nw"===e||"se"===e?"resize-nwse":"resize-nesw"}ju.prototype.canResize=function(e){var t=this._rules,n=$(e,["newBounds","shape","delta","direction"]);return t.allowed("shape.resize",n)},ju.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,Lu(t,r),"resize",{autoActivate:!0,cursor:Iu(r),data:{shape:t,context:i}})},ju.prototype.computeMinResizeBox=function(e){var t=e.shape;return function(e,t,n,i){var r=Hn(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?Hn(i):o;return Gn({top:Ll(o.top,a.top),left:Ll(o.left,a.left),bottom:jl(o.bottom,a.bottom),right:jl(o.right,a.right)})}(e.direction,t,e.minDimensions||{width:10,height:10},Hl(t,e.childrenBoxPadding))},ju.$inject=["eventBus","rules","modeling","dragging"];var zu="djs-resizing",Fu="resize-not-ok";function $u(e,t,n){e.on("resize.move",500,(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.getActiveLayer()),t.addMarker(r,zu)),o.width>5&&Ee(a,{x:o.x,width:o.width}),o.height>5&&Ee(a,{y:o.y,height:o.height}),i.canExecute?Te(a).remove(Fu):Te(a).add(Fu)})),e.on("resize.cleanup",(function(e){var n,i;n=e.context,i=n.shape,n.frame&&Ae(n.frame),t.removeMarker(i,zu)}))}$u.$inject=["eventBus","canvas","previewSupport"];var Hu=-6,Gu="djs-resizer",Vu=["n","w","s","e","nw","ne","se","sw"];function Wu(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))}))}Wu.prototype.makeDraggable=function(e,t,n){var i=this._resize;function r(t){ra(t)&&i.activate(t,e,n)}$t.bind(t,"mousedown",r),$t.bind(t,"touchstart",r)},Wu.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=6:-1!==e.indexOf("w")&&(t.x=Hu);-1!==e.indexOf("s")?t.y=6:-1!==e.indexOf("n")&&(t.y=Hu);return t}(i),a=Oe("g");Te(a).add(Gu),Te(a).add("djs-resizer-"+e.id),Te(a).add("djs-resizer-"+i),be(r,a);var s=Oe("rect");Ee(s,{x:-2+o.x,y:-2+o.y,width:4,height:4}),Te(s).add("djs-resizer-visual"),be(a,s);var c=Oe("rect");return Ee(c,{x:-10+o.x,y:-10+o.y,width:20,height:20}),Te(c).add("djs-resizer-hit"),be(a,c),Si(a,t,n),a},Wu.prototype.createResizer=function(e,t){var n=Lu(e,t),i=this._createResizer(e,n.x,n.y,t);this.makeDraggable(e,i,t)},Wu.prototype.addResizer=function(e){var t=this;this._resize.canResize({shape:e})&&b(Vu,(function(n){t.createResizer(e,n)}))},Wu.prototype.removeResizers=function(){Me(this._getResizersParent())},Wu.prototype._getResizersParent=function(){return this._canvas.getLayer("resizers")},Wu.$inject=["eventBus","canvas","selection","resize"];var Uu={__depends__:[xc,mc,kp],__init__:["resize","resizePreview","resizeHandles"],resize:["type",ju],resizePreview:["type",$u],resizeHandles:["type",Wu]};function qu(e,t){var n=t.create("bpmn:CategoryValue"),i=t.create("bpmn:Category",{categoryValue:[n]});return Qt(e.get("rootElements"),i),eo(i).$parent=e,eo(n).$parent=i,n}function Ku(e,t,n,i,r,o,a){function s(e,t){(t||Jr(e,["bpmn:Task","bpmn:TextAnnotation"])||Yu(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","root.set","selection.changed"],(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 Yu(e){return Qr(e,"bpmn:SubProcess")&&!go(e)}Ku.$inject=["eventBus","bpmnFactory","canvas","directEditing","modeling","resizeHandles","textRenderer"],Ku.prototype.activate=function(e){var t=Eo(e);if(void 0!==t){var n={text:t};F(n,this.getEditingBBox(e));var i={};return(Jr(e,["bpmn:Task","bpmn:Participant","bpmn:Lane","bpmn:CallActivity"])||Yu(e))&&F(i,{centerVertically:!0}),Go(e)&&F(i,{autoResize:!0}),Qr(e,"bpmn:TextAnnotation")&&F(i,{resizable:!0,autoResize:!0}),F(n,{options:i}),n}},Ku.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(),l=p.fontSize*s,u=p.lineHeight,h=c.fontSize*s,d=c.lineHeight,f={fontFamily:this._textRenderer.getDefaultStyle().fontFamily,fontWeight:this._textRenderer.getDefaultStyle().fontWeight};(Qr(e,"bpmn:Lane")||function(e){return Qr(e,"bpmn:Participant")&&go(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)"})),(Jr(e,["bpmn:Task","bpmn:CallActivity"])||function(e){return Qr(e,"bpmn:Participant")&&!go(e)}(e)||Yu(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 Qr(e,"bpmn:SubProcess")&&go(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:l+"px",lineHeight:u,paddingTop:v+"px",paddingBottom:y+"px"})),Go(n)&&!Vo(n)&&!qo(n)){var g=Uo(e),b=t.getAbsoluteBBox({x:g.x,y:g.y,width:0,height:0}),x=l+v+y;F(a,{width:m,height:x,x:b.x-m/2,y:b.y-x/2}),F(f,{fontSize:l+"px",lineHeight:u,paddingTop:v+"px",paddingBottom:y+"px"})}return Qr(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}},Ku.prototype.update=function(e,t,n,i){var r,o,a;if((Qr(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}),Qr(e,"bpmn:Group"))&&!eo(e).categoryValueRef){var s=qu(eo(this._canvas.getRootElement()).$parent,this._bpmnFactory);eo(e).categoryValueRef=s}(a=t)&&a.trim()||(t=null),this._modeling.updateLabel(e,t,r)};var Xu="djs-element-hidden",Zu="djs-label-hidden";function Qu(e,t,n,i){var r,o,a,s=this,c=t.getDefaultLayer();e.on("directEditing.activate",(function(e){var n=e.active;if(Qr(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}}),l=s.path=Oe("path");Ee(l,{d:p,strokeWidth:2,stroke:Ju(r)}),be(a,l),be(c,a),Ci(a,r.x,r.y)}Qr(r,"bpmn:TextAnnotation")||r.labelTarget?t.addMarker(r,Xu):(Qr(r,"bpmn:Task")||Qr(r,"bpmn:CallActivity")||Qr(r,"bpmn:SubProcess")||Qr(r,"bpmn:Participant"))&&t.addMarker(r,Zu)})),e.on("directEditing.resize",(function(e){if(Qr(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,Xu),t.removeMarker(r,Zu)),r=void 0,o=void 0,a&&(Ae(a),a=void 0)}))}function Ju(e,t){return to(e).get("stroke")||t||"black"}Qu.$inject=["eventBus","canvas","elementRegistry","pathMap"];var eh={__depends__:[Pa,Uu,Sp],__init__:["labelEditingProvider","labelEditingPreview"],labelEditingProvider:["type",Ku],labelEditingPreview:["type",Qu]},th=["top","bottom","left","right"],nh=10;function ih(e,t){function n(e){if(Vo(e)){var n=function(e){var t=Vn(e.label),n=rh(Vn(e),t);if(i=n,-1===th.indexOf(i))return;var i;var r=function(e){var t=Vn(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 rh(t,e)}))}(e);if(e.host){var o=function(e){var t,n=e.host,i=Wn(Vn(e),n);t=i.indexOf("-")>=0?i.split("-"):[i];return th.filter((function(e){return-1===t.indexOf(e)}))}(e);r=r.concat(o)}var a=th.filter((function(e){return-1===r.indexOf(e)}));if(-1!==a.indexOf(n))return;return a[0]}(e);n&&function(e,n){var i=Vn(e),r=e.label,o=Vn(r);if(!r.parent)return;var a,s=Hn(e);switch(n){case"top":a={x:i.x,y:s.top-nh-r.height/2};break;case"left":a={x:s.left-nh-r.width/2,y:i.y};break;case"bottom":a={x:i.x,y:s.bottom+nh+r.height/2};break;case"right":a={x:s.right+nh+r.width/2,y:i.y}}var c=bs(a,o);t.moveShape(r,c)}(e,n)}}Aa.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 rh(e,t){return Wn(t,e,5)}function oh(e,t,n){Aa.call(this,e),this.preExecute("shape.append",(function(e){var t=e.source,n=e.shape;e.position||(Qr(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 ah(e,t){e.invoke(Aa,this),this.postExecute("shape.move",(function(e){var n=e.newParent,i=e.shape;b(g(i.incoming.concat(i.outgoing),(function(e){return Qr(e,"bpmn:Association")})),(function(e){t.moveConnection(e,{x:0,y:0},n)}))}),!0)}n(ih,Aa),ih.$inject=["eventBus","modeling"],n(oh,Aa),oh.$inject=["eventBus","elementFactory","bpmnRules"],n(ah,Aa),ah.$inject=["injector","modeling"];function sh(e,t){t.invoke(Aa,this),this._bpmnReplace=e;var n=this;this.postExecuted("elements.create",500,(function(e){var t=e.elements;1===(t=t.filter((function(e){return ch(e,e.host)}))).length&&t.map((function(e){return t.indexOf(e)})).forEach((function(i){var r=t[i];e.elements[i]=n.replaceShape(t[i],r)}))}),!0),this.preExecute("elements.move",500,(function(e){var t=e.shapes,i=e.newHost;if(1===t.length){var r=t[0];ch(r,i)&&(e.shapes=[n.replaceShape(r,i)])}}),!0)}function ch(e,t){return!qo(e)&&Jr(e,["bpmn:IntermediateThrowEvent","bpmn:IntermediateCatchEvent"])&&!!t}sh.$inject=["bpmnReplace","injector"],n(sh,Aa),sh.prototype.replaceShape=function(e,t){var n,i=(n=eo(e).eventDefinitions)&&n[0],r={type:"bpmn:BoundaryEvent",host:t};return i&&(r.eventDefinitionType=i.$type),this._bpmnReplace.replaceElement(e,r,{layoutConnection:!1})};function ph(e,t,n){function i(e){return g(e.attachers,(function(e){return Qr(e,"bpmn:BoundaryEvent")}))}Aa.call(this,e),this.postExecute("connection.create",(function(e){var t=e.context.source,r=e.context.target,o=i(r);Qr(t,"bpmn:EventBasedGateway")&&Qr(r,"bpmn:ReceiveTask")&&o.length>0&&n.removeElements(o)})),this.postExecute("connection.reconnect",(function(e){var t=e.context.oldSource,r=e.context.newSource;Qr(t,"bpmn:Gateway")&&Qr(r,"bpmn:EventBasedGateway")&&b(r.outgoing,(function(e){var t=e.target,r=i(t);Qr(t,"bpmn:ReceiveTask")&&r.length>0&&n.removeElements(r)}))})),e.on("moddleCopy.canCopyProperty",2e3,(function(e){var n=e.parent,i=e.property,r=e.propertyName,o=t.getPropertyDescriptor(n,r);o&&o.isReference&&Qr(i,"bpmn:RootElement")&&n.set(r,i)}))}function lh(e){e.invoke(Aa,this),this.preExecute("shape.create",1500,(function(e){var t=e.context,n=t.parent,i=t.shape;Qr(n,"bpmn:Lane")&&!Qr(i,"bpmn:Lane")&&(t.parent=Qs(n,"bpmn:Participant"))}))}function uh(e,t,n){Aa.call(this,e),this.preExecute("shape.create",(function(e){var n=e.context.shape;if(Qr(n,"bpmn:DataObjectReference")&&"label"!==n.type){var i=t.create("bpmn:DataObject");n.businessObject.dataObjectRef=i}}))}ph.$inject=["eventBus","moddle","modeling"],n(ph,Aa),lh.$inject=["injector"],n(lh,Aa),uh.$inject=["eventBus","bpmnFactory","moddle"],n(uh,Aa);var hh=20,dh=20,fh=2e3;function mh(e,t,n){function i(){var t=e.getRootElement();return Qr(t,"bpmn:Collaboration")?t:n.makeCollaboration()}Aa.call(this,t),t.on(["create.start","shape.move.start"],fh,(function(t){var n=t.context,i=n.shape,r=e.getRootElement();if(Qr(i,"bpmn:Participant")&&Qr(r,"bpmn:Process")&&r.children.length){var o=r.children.filter((function(e){return!Qr(e,"bpmn:Group")&&!qo(e)&&!function(e){return!!e.waypoints}(e)}));if(o.length){var a=dt(o);F(i,function(e,t){t={width:t.width+40+30,height:t.height+40};var n=Math.max(e.width,t.width),i=Math.max(e.height,t.height);return{x:-n/2,y:-i/2,width:n,height:i}}(i,a)),n.createConstraints=function(e,t){return{bottom:(t=Hn(t)).top+e.height/2-dh,left:t.right-e.width/2+hh,top:t.bottom-e.height/2+dh,right:t.left+e.width/2-hh-30}}(i,a)}}})),t.on("create.start",fh,(function(n){var i=n.context.shape,r=e.getRootElement(),o=e.getGraphics(r);function a(e){e.element=r,e.gfx=o}Qr(i,"bpmn:Participant")&&Qr(r,"bpmn:Process")&&(t.on("element.hover",fh,a),t.once("create.cleanup",(function(){t.off("element.hover",a)})))})),this.preExecute("elements.create",fh,(function(e){var t,n=e.elements,r=e.parent,o=function(e){return y(e,(function(e){return Qr(e,"bpmn:Participant")}))}(n);o&&Qr(r,"bpmn:Process")&&(e.parent=i(),(t=e.hints=e.hints||{}).participant=o,t.process=r,t.processRef=eo(o).get("processRef"))}),!0),this.preExecute("shape.create",(function(e){var t=e.parent,n=e.shape;Qr(n,"bpmn:Participant")&&Qr(t,"bpmn:Process")&&(e.parent=i(),e.process=t,e.processRef=eo(n).get("processRef"))}),!0),this.execute("shape.create",(function(e){var t=e.hints||{},n=e.process||t.process,i=e.shape,r=t.participant;!n||r&&i!==r||eo(i).set("processRef",eo(n))}),!0),this.revert("shape.create",(function(e){var t=e.hints||{},n=e.process||t.process,i=e.processRef||t.processRef,r=e.shape,o=t.participant;!n||o&&r!==o||eo(r).set("processRef",i)}),!0),this.postExecute("shape.create",(function(e){var t=e.hints||{},i=e.process||e.hints.process,r=e.shape,o=t.participant;if(i){var a=i.children.slice();o?r===o&&n.moveElements(a,{x:0,y:0},o):n.moveElements(a,{x:0,y:0},r)}}),!0)}mh.$inject=["canvas","eventBus","modeling"],n(mh,Aa);var vh="__targetRef_placeholder";function yh(e,t){function n(e,n){var i=e.get("properties"),r=y(i,(function(e){return e.name===vh}));return!r&&n&&Qt(i,r=t.create("bpmn:Property",{name:vh})),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)||Zt(e.get("properties"),i))}function r(e){var t,r=e.context,o=r.connection,a=o.businessObject,s=o.target,c=s&&s.businessObject,p=r.newTarget,l=p&&p.businessObject,u=r.oldTarget||r.target,h=u&&u.businessObject,d=o.businessObject;h&&h!==c&&i(h,a),l&&l!==c&&i(l,a),c?(t=n(c,!0),d.targetRef=t):d.targetRef=null}Aa.call(this,e),this.executed(["connection.create","connection.delete","connection.move","connection.reconnect"],gh(r)),this.reverted(["connection.create","connection.delete","connection.move","connection.reconnect"],gh(r))}function gh(e){return function(t){if(Qr(t.context.connection,"bpmn:DataInputAssociation"))return e(t)}}function bh(e){this._bpmnUpdater=e}function xh(e,t,n,i){function r(e){return e.children.filter((function(e){return Qr(e,"bpmn:DataStoreReference")&&!e.labelTarget}))}function o(e,i){var r=e.businessObject||e;if(i=i||n.filter((function(e){return Qr(e,"bpmn:Participant")&&eo(e).processRef}))[0]){var o=i.businessObject||i;t.execute("dataStore.updateContainment",{dataStoreBo:r,dataStoreDi:to(e),newSemanticParent:o.processRef||o,newDiParent:to(i)})}}Aa.call(this,i),t.registerHandler("dataStore.updateContainment",bh),this.preExecute("shape.create",(function(e){var t=e.context,n=t.shape;Qr(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 Qr(e,"bpmn:DataStoreReference")})).length&&(t.hints||(t.hints={}),t.hints.autoResize=n.filter((function(e){return!Qr(e,"bpmn:DataStoreReference")})))})),this.postExecute("shape.create",(function(e){var t=e.context.shape,n=t.parent;Qr(t,"bpmn:DataStoreReference")&&"label"!==t.type&&Qr(n,"bpmn:Collaboration")&&o(t)})),this.postExecute("shape.move",(function(e){var t=e.context,n=t.shape,i=t.oldParent,r=n.parent;Qr(i,"bpmn:Collaboration")||Qr(n,"bpmn:DataStoreReference")&&"label"!==n.type&&Qr(r,"bpmn:Collaboration")&&o(n,Qr(i,"bpmn:Participant")?i:function(e,t){for(;e.parent;){if(Qr(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();Jr(n,["bpmn:Participant","bpmn:SubProcess"])&&Qr(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){Qr(i,"bpmn:Process")&&o(e,i)}))}))}yh.$inject=["eventBus","bpmnFactory"],n(yh,Aa),bh.$inject=["bpmnUpdater"],bh.prototype.execute=function(e){var t=e.dataStoreBo,n=e.dataStoreDi,i=e.newSemanticParent,r=e.newDiParent;e.oldSemanticParent=t.$parent,e.oldDiParent=n.$parent,this._bpmnUpdater.updateSemanticParent(t,i),this._bpmnUpdater.updateDiParent(n,r)},bh.prototype.revert=function(e){var t=e.dataStoreBo,n=e.dataStoreDi,i=e.oldSemanticParent,r=e.oldDiParent;this._bpmnUpdater.updateSemanticParent(t,i),this._bpmnUpdater.updateDiParent(n,r)},xh.$inject=["canvas","commandStack","elementRegistry","eventBus"],n(xh,Aa);function _h(e,t,n){Aa.call(this,e),this.postExecuted("shape.delete",500,(function(e){var t=e.context,i=t.hints,r=t.shape,o=t.oldParent;Qr(r,"bpmn:Lane")&&(i&&i.nested||function(e,t){var i,r,o,a=ql(t),s=[],c=[];ut(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))}))}_h.$inject=["eventBus","modeling","spaceTool"],n(_h,Aa);function Eh(e,t){t.invoke(Aa,this),this._bpmnReplace=e;var n=this;this.postExecuted("elements.create",500,(function(e){var t=e.elements;t.filter((function(e){return wh(e,e.host)})).map((function(e){return t.indexOf(e)})).forEach((function(i){e.elements[i]=n.replaceShape(t[i])}))}),!0),this.preExecute("elements.move",500,(function(e){var t=e.shapes,i=e.newHost;t.forEach((function(e,r){var o,a=e.host;wh(e,(o=a,-1!==t.indexOf(o)?a:i))&&(t[r]=n.replaceShape(e))}))}),!0)}function wh(e,t){return!qo(e)&&Qr(e,"bpmn:BoundaryEvent")&&!t}function Sh(e,t,n){function i(e,i,r){var o,a,s,c,p,l,u,h,f=i.waypoints,m=e.outgoing.slice(),v=e.incoming.slice(),y=wc(f,h=d(r.width)?Vn(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,1!==o.length&&Ch(e,o[o.length-1])||o.push(Rh(s)),1!==a.length&&Ch(e,a[0])||a.unshift(Rh(s))}c=i.source,p=i.target,t.canConnect(c,e,i)&&(n.reconnectEnd(i,e,o||h),l=i),t.canConnect(e,p,i)&&(l?u=n.connect(e,p,{type:i.type,waypoints:a}):(n.reconnectStart(i,e,a||h),u=i));var b=[].concat(l&&g(v,(function(e){return e.source===l.source}))||[],u&&g(m,(function(e){return e.target===u.target}))||[]);b.length&&n.removeElements(b)}Aa.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=Vn(o),s={x:a.x+r.x,y:a.y+r.y},c=y(n.children,(function(e){return t.canInsert(i,e)&&wc(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 Ch(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 Rh(e){return F({},e)}function Th(e,t){Aa.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||Qr(i,"bpmn:EventBasedGateway")&&r.incoming.length&&o.filter(Ph).forEach((function(e){t.removeConnection(e)}))})),this.preExecuted("shape.replace",(function(e){var n=e.context.newShape;Qr(n,"bpmn:EventBasedGateway")&&n.outgoing.filter(Ph).map((function(e){return e.target})).reduce((function(e,t){var n=t.incoming.filter(Ph);return e.concat(n)}),[]).forEach((function(e){e.source!==n&&t.removeConnection(e)}))}))}function Ph(e){return Qr(e,"bpmn:SequenceFlow")}Eh.$inject=["bpmnReplace","injector"],n(Eh,Aa),Eh.prototype.replaceShape=function(e){var t,n,i=(n=eo(e).eventDefinitions)&&n[0];return t=i?{type:"bpmn:IntermediateCatchEvent",eventDefinitionType:i.$type}:{type:"bpmn:IntermediateThrowEvent"},this._bpmnReplace.replaceElement(e,t,{layoutConnection:!1})},n(Sh,Aa),Sh.$inject=["eventBus","bpmnRules","modeling"],Th.$inject=["eventBus","modeling"],n(Th,Aa);var Ah=1500;function Mh(e,t,n){t.on(["create.hover","create.move","create.out","create.end","shape.move.hover","shape.move.move","shape.move.out","shape.move.end"],Ah,(function(t){var i=t.context.shape||t.shape,r=t.hover;Qr(r,"bpmn:Lane")&&!Jr(i,["bpmn:Lane","bpmn:Participant"])&&(t.hover=Kl(r),t.hoverGfx=e.getGraphics(t.hover));var o=n.getRootElement();r!==o&&(i.labelTarget||Qr(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"],Ah,(function(t){var n=t.hover;Qr(n,"bpmn:Lane")&&(t.hover=Kl(n)||n,t.hoverGfx=e.getGraphics(t.hover))})),t.on(["bendpoint.move.hover"],Ah,(function(t){var n=t.context,i=t.hover,r=n.type;Qr(i,"bpmn:Lane")&&/reconnect/.test(r)&&(t.hover=Kl(i)||i,t.hoverGfx=e.getGraphics(t.hover))})),t.on(["connect.start"],Ah,(function(e){var t=e.context,n=t.start;Qr(n,"bpmn:Lane")&&(t.start=Kl(n)||n)})),t.on("shape.move.start",2e3,(function(e){var t=e.shape;Qr(t,"bpmn:Lane")&&(e.shape=Kl(t)||t)}))}Mh.$inject=["elementRegistry","eventBus","canvas"];function kh(e,t,n,i,r,o){function a(e){var n=eo(e).categoryValueRef;if(n){var i=n.$parent;n&&(Zt(i.categoryValue,n),i&&!i.categoryValue.length&&function(e){Zt(t.getDefinitions().get("rootElements"),e)}(i))}}r.invoke(Aa,this),this.executed("shape.delete",(function(e){var t,i=e.context.shape;if(Qr(i,"bpmn:Group")){var r=eo(i).categoryValueRef,o=n.filter((function(e){return Qr(e,"bpmn:Group")}));t=r,o.some((function(e){var n=eo(e);return n.categoryValueRef&&n.categoryValueRef===t}))||a(i)}})),this.reverted("shape.delete",(function(e){var n=e.context.shape;if(Qr(n,"bpmn:Group")){var i=eo(n).categoryValueRef,r=t.getDefinitions(),o=i?i.$parent:null;Qt(o.get("categoryValue"),i),Qt(r.get("rootElements"),o)}})),this.execute("shape.create",(function(n){var i=eo(n.context.shape);if(Qr(i,"bpmn:Group")&&!i.categoryValueRef){var r=qu(t.getDefinitions(),e);i.categoryValueRef=r}})),this.revert("shape.create",(function(e){var t=e.context.shape;Qr(t,"bpmn:Group")&&(a(t),delete eo(t).categoryValueRef)})),i.on("moddleCopy.canCopyProperty",2e3,(function(n){var i,r=n.property;if(Qr(r,"bpmn:CategoryValue"))return i=qu(t.getDefinitions(),e),o.copyElement(r,i)}))}function Dh(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 Bh(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=Dh(e,t,n,r),s=Dh(e,t,n,o);i=a&&s?Nh(a,n)>Nh(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],Vn(n.source)),t(i[i.length-1],i[i.length-2],Vn(n.target)))}))}function Nh(e,t){return Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2))}function Oh(e){Aa.call(this,e);var t=["bpmn:Participant","bpmn:Lane"];this.executed(["shape.move","shape.create","shape.resize"],(function(e){var n=e.context.shape,i=eo(n),r=to(n);Jr(i,t)&&!r.get("isHorizontal")&&r.set("isHorizontal",!0)}))}function jh(e){return Math.sqrt(Math.pow(e.x,2)+Math.pow(e.y,2))}function Lh(e){return Math.atan((e[1].y-e[0].y)/(e[1].x-e[0].x))}function Ih(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 zh(e,t){var n=Ih(e,t);return jh({x:n.x-e.x,y:n.y-e.y})}function Fh(e,t){return jh({x:e.x-t.x,y:e.y-t.y})}kh.$inject=["bpmnFactory","bpmnjs","elementRegistry","eventBus","injector","moddleCopy"],n(kh,Aa),Bh.$inject=["eventBus"],Oh.$inject=["eventBus"],n(Oh,Aa);var $h=Math.sqrt,Hh=Math.min,Gh=Math.max,Vh=Math.abs;function Wh(e){return Math.pow(e,2)}function Uh(e,t){return $h(Wh(e.x-t.x)+Wh(e.y-t.y))}function qh(e,t,n,i){var r=t.x-e.x,o=t.y-e.y,a=n.x-e.x,s=n.y-e.y,c=r*r+o*o,p=(r*a+o*s)/c,l=p*p-(a*a+s*s-i*i)/c;if(l<0&&l>-1e-6&&(l=0),l<0)return[];var u=$h(l),h=-p+u,d=-p-u,f={x:e.x-r*h,y:e.y-o*h};return 0===l?[f]:[f,{x:e.x-r*d,y:e.y-o*d}].filter((function(n){return function(e,t,n){return Kh(e.x,t.x,n.x)&&Kh(e.y,t.y,n.y)}(n,e,t)}))}function Kh(e,t,n){return e>=Hh(t,n)-Yh&&e<=Gh(t,n)+Yh}var Yh=.1;function Xh(e,t){return Vh(e.x-t.x)<=Yh&&Vh(e.y-t.y)<=Yh}function Zh(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,l,u,h,d,f=0;for(f=0;f<t.length-1;f++){if(Xh(n=t[f],i=t[f+1])?s=[n]:(r=Uh(e,n),o=Uh(e,i),s=qh(n,i,e,Hh(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:Xh(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:Uh(n,a)/Uh(n,i)}),p=Uh(c.position,e),(!u||l>p)&&(u=c,l=p)}return u}(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,l=i.bendpointMove.bendpointIndex;return 0===o?r:(r>=l&&(c=p?r+1:r-1),r<l&&(c=r,p&&"bendpoint"!==n.type&&l-1===r&&Qh(t,l)<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 l,u,h=Jh(n,c),d=Jh(t,p),f=s.position,m=function(e,t){var n=Fh(e[0],e[1]),i=Fh(e[0],t);return 0===n?0:i/n}(h,f),v=(l=d,u=Lh(h),Lh(l)-u);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=Qh(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 $n({x:r=w+C.x-a.x,y:o=S+C.y-a.y})}function Qh(e,t){var n=Fh(e[t-1],e[t]);return n/(n+Fh(e[t],e[t+1]))}function Jh(e,t){return[e[t],e[t+1]]}function ed(e,t,n){var i=gs(t),r=gs(n),o=bs(e,i),a=o.x*(n.width/t.width),s=o.y*(n.height/t.height);return $n({x:r.x+a,y:r.y+s})}function td(e,t,n){var i=gs(e),r=gs(t),o=gs(n),a=bs(e,i),s=bs(i,r),c=function(e,t,n){var i=Hn(t),r=Hn(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=Wn(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},Wn(n,a)!==s)return null;return o}(i,t,n);if(c)return c;var p=s.x*(n.width/t.width),l=s.y*(n.height/t.height),u=o.x+p,h=o.y+l;return $n({x:u+a.x-e.x,y:h+a.y-e.y})}var nd={width:90,height:20},id="name",rd="text";function od(e,t,n,i){Aa.call(this,e),this.postExecute("element.updateProperties",(function(e){var n=e.context,r=n.element,o=n.properties;if(id in o&&t.updateLabel(r,o.name),rd in o&&Qr(r,"bpmn:TextAnnotation")){var a=i.getTextAnnotationBounds({x:r.x,y:r.y,width:r.width,height:r.height},o.text||"");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(!qo(r)&&Go(r)&&Eo(r)){var a=Uo(r),s=i.getExternalLabelBounds(nd,Eo(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,r=i.shape,o=i.labelTarget;o&&Qr(o,"bpmn:BaseElement")&&((t=to(o)).label||(t.label=n.create("bpmndi:BPMNLabel",{bounds:n.create("dc:Bounds")}),r.di=t),F(t.label.bounds,{x:r.x,y:r.y,width:r.width,height:r.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),Zh(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=eo(n);r&&Go(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(Vo(r)){var s=r.label,c=ad(function(e,t){if(!t.length)return;var n=function(e,t){return k(t.map((function(t){return{line:t,distance:zh(e,t)}})),"distance")[0].line}(e,t);return Ih(e,n)}(Vn(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 ad(e,t,n){return $n(bs(ed(e,t,n),e))}function sd(e,t,n){var i=hd(e),r=dd(i,t),o=i[0];return r.length?r[r.length-1]:ed(o.original||o,n,t)}function cd(e,t,n){var i=hd(e),r=dd(i,t),o=i[i.length-1];return r.length?r[0]:ed(o.original||o,n,t)}function pd(e,t,n){var i=hd(e),r=ud(t,n),o=i[0];return ed(o.original||o,r,t)}function ld(e,t,n){var i=hd(e),r=ud(t,n),o=i[i.length-1];return ed(o.original||o,r,t)}function ud(e,t){return{x:e.x-t.x,y:e.y-t.y,width:e.width,height:e.height}}function hd(e){var t=e.waypoints;if(!t.length)throw new Error("connection#"+e.id+": no waypoints");return t}function dd(e,t){return g(S(e,fd),(function(e){return function(e,t){return"intersect"===Wn(t,e,1)}(e,t)}))}function fd(e){return e.original||e}function md(e,t){Aa.call(this,e),this.postExecute("shape.replace",(function(e){var n=e.oldShape,i=e.newShape;if(function(e,t){return Qr(e,"bpmn:Participant")&&go(e)&&Qr(t,"bpmn:Participant")&&!go(t)}(n,i)){var r,o,a,s,c=(o=ht([r=n],!1),a=[],s=[],o.forEach((function(e){e!==r&&(e.incoming.forEach((function(e){Qr(e,"bpmn:MessageFlow")&&a.push(e)})),e.outgoing.forEach((function(e){Qr(e,"bpmn:MessageFlow")&&s.push(e)})))}),[]),{incoming:a,outgoing:s});c.incoming.forEach((function(e){var r=cd(e,i,n);t.reconnectEnd(e,i,r)})),c.outgoing.forEach((function(e){var r=sd(e,i,n);t.reconnectStart(e,i,r)}))}}),!0)}n(od,Aa),od.$inject=["eventBus","modeling","bpmnFactory","textRenderer"],md.$inject=["eventBus","modeling"],n(md,Aa);function vd(e,t,n){e.on(["shape.move.rejected","create.rejected"],(function(e){var i,r,o,a=e.context,s=a.shape;Qr(a.target,"bpmn:Collaboration")&&Qr(s,"bpmn:FlowNode")&&(i=e,r=n("flow elements must be children of pools/participants"),t.add({position:{x:i.x+5,y:i.y+5},type:"error",timeout:o||2e3,html:"<div>"+r+"</div>"}))}))}function yd(e,t){Aa.call(this,e),this.preExecute("shape.resize",(function(e){var n=e.shape,i=to(n),r=i&&i.get("label");r&&r.get("bounds")&&t.updateModdleProperties(n,r,{bounds:void 0})}),!0)}function gd(e,t,n){Aa.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(Qr(r,"bpmn:SequenceFlow")&&Qr(o,"bpmn:SequenceFlow")&&t.canConnect(r.source,o.target,r)){var a=function(e,t){var n=Dh(bd(e[e.length-2]),bd(e[e.length-1]),bd(t[1]),bd(t[0]));return n?[].concat(e.slice(0,e.length-1),[n],t.slice(1)):[bd(e[0]),bd(t[t.length-1])]}(r.waypoints,o.waypoints);n.reconnectEnd(r,o.target,a)}}}))}function bd(e){return e.original||e}function xd(e,t){Aa.call(this,e),this.preExecute("shape.delete",(function(e){var t=e.shape,n=t.parent;Qr(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 _d(e,t,n,i){Aa.call(this,e);var r=i.get("dragging",!1);function o(e){var i,r,o=e.source,a=e.target;e.parent&&(Qr(e,"bpmn:SequenceFlow")&&(n.canConnectSequenceFlow(o,a)||(r=!0),n.canConnectMessageFlow(o,a)&&(i="bpmn:MessageFlow")),Qr(e,"bpmn:MessageFlow")&&(n.canConnectMessageFlow(o,a)||(r=!0),n.canConnectSequenceFlow(o,a)&&(i="bpmn:SequenceFlow")),Qr(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;if(!o||!o.length)return;if(-1===(n=o.indexOf(e)))return;o.splice(n,1,t)}(s,o))})),this.postExecuted("element.updateProperties",(function(e){var n,i=e.context,r=i.properties,o=i.element,a=o.businessObject;r.default&&(n=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 Ed(e,t,n,i,r,o){i.invoke(Aa,this),this._bpmnReplace=e,this._elementRegistry=n,this._selection=o,this.postExecuted(["elements.create"],500,(function(e){var n=e.context,i=n.parent,r=n.elements,o=t.canReplace(r,i);o&&this.replaceElements(r,o.replacements)}),this),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=bo(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})}))}vd.$inject=["eventBus","tooltips","translate"],n(yd,Aa),yd.$inject=["eventBus","modeling"],n(gd,Aa),gd.$inject=["eventBus","bpmnRules","modeling"],xd.$inject=["eventBus","modeling"],n(xd,Aa),n(_d,Aa),_d.$inject=["eventBus","modeling","bpmnRules","injector"],n(Ed,Aa),Ed.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)},Ed.$inject=["bpmnReplace","bpmnRules","elementRegistry","injector","modeling","selection"];var wd=300,Sd=60,Cd={width:300,height:150},Rd={width:140,height:120},Td={width:50,height:30};function Pd(e){e.on("resize.start",1500,(function(e){var t=e.context,n=t.shape,i=t.direction,r=t.balanced;(Qr(n,"bpmn:Lane")||Qr(n,"bpmn:Participant"))&&(t.resizeConstraints=function(e,t,n){var i=Kl(e),r=!0,o=!0,a=Ul(i,[i]),s=Hn(e),c={},p={};/e/.test(t)?p.right=s.left+wd:/w/.test(t)&&(p.left=s.right-wd);return a.forEach((function(e){var i=Hn(e);/n/.test(t)&&(i.top<s.top-10&&(r=!1),n&&Ad(s.top-i.bottom)<10&&Nd(c,"top",i.top+Sd),Ad(s.top-i.top)<5&&Bd(p,"top",i.bottom-Sd)),/s/.test(t)&&(i.bottom>s.bottom+10&&(o=!1),n&&Ad(s.bottom-i.top)<10&&Bd(c,"bottom",i.bottom-Sd),Ad(s.bottom-i.bottom)<5&&Nd(p,"bottom",i.top+Sd))})),i.children.filter((function(e){return!e.hidden&&!e.waypoints&&(Qr(e,"bpmn:FlowElement")||Qr(e,"bpmn:Artifact"))})).forEach((function(e){var n=Hn(e);r&&/n/.test(t)&&Bd(p,"top",n.top-20),/e/.test(t)&&Nd(p,"right",n.right+20),o&&/s/.test(t)&&Nd(p,"bottom",n.bottom+20),/w/.test(t)&&Bd(p,"left",n.left-50)})),{min:p,max:c}}(n,i,r)),Qr(n,"bpmn:Participant")&&(t.minDimensions=Cd),Qr(n,"bpmn:SubProcess")&&go(n)&&(t.minDimensions=Rd),Qr(n,"bpmn:TextAnnotation")&&(t.minDimensions=Td)}))}Pd.$inject=["eventBus"];var Ad=Math.abs,Md=Math.min,kd=Math.max;function Dd(e,t,n,i){var r=e[t];e[t]=void 0===r?n:i(n,r)}function Bd(e,t,n){return Dd(e,t,n,Md)}function Nd(e,t,n){return Dd(e,t,n,kd)}function Od(e,t){e.on("resize.start",1501,(function(e){var t=e.context,n=t.shape;(Qr(n,"bpmn:Lane")||Qr(n,"bpmn:Participant"))&&(t.balanced=!oa(e))})),e.on("resize.end",1001,(function(e){var n=e.context,i=n.shape,r=n.canExecute,o=n.newBounds;if(Qr(i,"bpmn:Lane")||Qr(i,"bpmn:Participant"))return r&&(o=Fn(o),t.resizeLane(i,o,n.balanced)),!1}))}Od.$inject=["eventBus","modeling"];function jd(e,t,n,i,r){function o(e){return Jr(e,["bpmn:ReceiveTask","bpmn:SendTask"])||function(e,t){u(t)||(t=[t]);return w(t,(function(t){return xo(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 Qr(e,"bpmn:ErrorEventDefinition")?"errorRef":Qr(e,"bpmn:EscalationEventDefinition")?"escalationRef":Qr(e,"bpmn:MessageEventDefinition")?"messageRef":Qr(e,"bpmn:SignalEventDefinition")?"signalRef":void 0}function c(e){if(Jr(e,["bpmn:ReceiveTask","bpmn:SendTask"]))return e.get("messageRef");var t=e.get("eventDefinitions")[0];return t.get(s(t))}n.invoke(Aa,this),this.executed("shape.create",(function(t){var n=t.shape;if(o(n)){var i=c(eo(n));i&&!a(i)&&(Qt(e.getDefinitions().get("rootElements"),i),t.addedRootElement=i)}}),!0),this.reverted("shape.create",(function(t){var n=t.addedRootElement;n&&Zt(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(eo(n));i&&(t.referencedRootElement=i)}})),t.on("copyPaste.pasteElement",500,(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(Jr(e,["bpmn:ReceiveTask","bpmn:SendTask"]))return e.set("messageRef",t);var n=e.get("eventDefinitions")[0];n.set(s(n),t)}(n,c))}}))}jd.$inject=["bpmnjs","eventBus","injector","moddleCopy","bpmnFactory"],n(jd,Aa);var Ld=Math.max;function Id(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;Qr(e,"bpmn:Participant")&&(!function(e){return"x"===e}(n)?r[t]={width:Cd.width,height:zd(e,i)}:r[t]=Cd),Qr(e,"bpmn:SubProcess")&&go(e)&&(r[t]=Rd),Qr(e,"bpmn:TextAnnotation")&&(r[t]=Td)})),r}))}function zd(e,t){var n;return ql(e).length?(n=function(e,t){var n,i=ql(e);return n=Fd(i,t),e.height-n.height+Sd}(e,t),Ld(Cd.height,n)):Cd.height}function Fd(e,t){var n,i,r;for(n=0;n<e.length;n++)if(t>=(i=e[n]).y&&t<=i.y+i.height)return(r=ql(i)).length?Fd(r,t):i}Id.$inject=["eventBus"];var $d=180,Hd=160;function Gd(e,t,n,i,r,o,a){Aa.call(this,t),this._canvas=e,this._eventBus=t,this._modeling=n,this._elementFactory=i,this._bpmnFactory=r,this._bpmnjs=o,this._elementRegistry=a;var s=this;function c(e){return Qr(e,"bpmn:SubProcess")&&!go(e)}function p(t){var n=t.shape,i=t.newRootElement,r=eo(n);i=s._addDiagram(i||r),t.newRootElement=e.addRootElement(i)}function l(t){var n=eo(t.shape);s._removeDiagram(n);var i=t.newRootElement=a.get(Ia(n));e.removeRootElement(i)}this.executed("shape.create",(function(e){c(e.shape)&&p(e)}),!0),this.postExecuted("shape.create",(function(e){var t=e.shape,n=e.newRootElement;n&&t.children&&(s._showRecursively(t.children),s._moveChildrenToShape(t,n))}),!0),this.reverted("shape.create",(function(e){c(e.shape)&&l(e)}),!0),this.preExecuted("shape.delete",(function(e){var t=e.shape;if(c(t)){var i=a.get(Ia(t));i&&n.removeElements(i.children.slice())}}),!0),this.executed("shape.delete",(function(e){c(e.shape)&&l(e)}),!0),this.reverted("shape.delete",(function(e){c(e.shape)&&p(e)}),!0),this.preExecuted("shape.replace",(function(t){var n=t.oldShape,i=t.newShape;c(n)&&c(i)&&(t.oldRoot=e.removeRootElement(Ia(n)))}),!0),this.postExecuted("shape.replace",(function(t){var i=t.newShape,r=t.oldRoot,o=e.findRoot(Ia(i));if(r&&o){var a=r.children;n.moveElements(a,{x:0,y:0},o)}}),!0),this.executed("element.updateProperties",(function(e){var t=e.element;if(Qr(t,"bpmn:SubProcess")){var n=e.properties,i=e.oldProperties.id,r=n.id;if(i!==r){if(Fa(t))return a.updateId(t,za(r)),void a.updateId(i,r);a.get(za(i))&&a.updateId(za(i),za(r))}}}),!0),this.reverted("element.updateProperties",(function(e){var t=e.element;if(Qr(t,"bpmn:SubProcess")){var n=e.properties,i=e.oldProperties.id,r=n.id;if(i!==r){if(Fa(t))return a.updateId(t,za(i)),void a.updateId(r,i);var o=a.get(za(r));o&&a.updateId(o,za(i))}}}),!0),t.on("element.changed",(function(e){var n=e.element;if(Fa(n)){var i=n,r=a.get(La(i));r&&r!==i&&t.fire("element.changed",{element:r})}})),this.executed("shape.toggleCollapse",400,(function(e){var t=e.shape;Qr(t,"bpmn:SubProcess")&&(go(t)?l(e):(p(e),s._showRecursively(t.children)))}),!0),this.reverted("shape.toggleCollapse",400,(function(e){var t=e.shape;Qr(t,"bpmn:SubProcess")&&(go(t)?l(e):(p(e),s._showRecursively(t.children)))}),!0),this.postExecuted("shape.toggleCollapse",600,(function(e){var t=e.shape;if(Qr(t,"bpmn:SubProcess")){var n=e.newRootElement;n&&(go(t)?s._moveChildrenToShape(n,t):s._moveChildrenToShape(t,n))}}),!0),t.on("copyPaste.createTree",(function(e){var t=e.element,n=e.children;if(c(t)){var i=Ia(t),r=a.get(i);r&&n.push.apply(n,r.children)}})),t.on("copyPaste.copyElement",(function(e){var t=e.descriptor,n=e.element,i=e.elements,r=n.parent;if(Qr(to(r),"bpmndi:BPMNPlane")){var o=La(r),a=y(i,(function(e){return e.id===o}));a&&(t.parent=a.id)}})),t.on("copyPaste.pasteElement",(function(e){var t=e.descriptor;t.parent&&(c(t.parent)||t.parent.hidden)&&(t.hidden=!0)}))}function Vd(e,t){e.invoke(Aa,this),this.postExecuted("shape.replace",(function(e){var n=e.context.oldShape,i=e.context.newShape;if(Qr(i,"bpmn:SubProcess")&&(Qr(n,"bpmn:Task")||Qr(n,"bpmn:CallActivity"))&&go(i)){var r,o={x:(r=i).x+r.width/6,y:r.y+r.height/2};t.createShape({type:"bpmn:StartEvent"},o,i)}}))}function Wd(e,t){Aa.call(this,e),this.postExecuted("shape.toggleCollapse",1500,(function(e){var n=e.shape;if(!go(n)){var i=ht(n);i.forEach((function(e){var t=e.incoming.slice(),n=e.outgoing.slice();b(t,(function(e){r(e,!0)})),b(n,(function(e){r(e,!1)}))}))}function r(e,r){-1!==i.indexOf(e.source)&&-1!==i.indexOf(e.target)||(r?t.reconnectEnd(e,n,Vn(n)):t.reconnectStart(e,n,Vn(n)))}}),!0)}n(Gd,Aa),Gd.prototype._moveChildrenToShape=function(e,t){var n,i=this._modeling,r=e.children;if(r){var o=r.filter((function(e){return!e.hidden}));if(o.length){var a=dt(o);if(t.x){var s=Vn(t),c=Vn(a);n={x:s.x-c.x,y:s.y-c.y}}else n={x:$d-a.x,y:Hd-a.y};i.moveElements(r,n,t,{autoResize:!1})}else i.moveElements(r,{x:0,y:0},t,{autoResize:!1})}},Gd.prototype._showRecursively=function(e,t){var n=this,i=[];return e.forEach((function(e){e.hidden=!!t,i=i.concat(e),e.children&&(i=i.concat(n._showRecursively(e.children,e.collapsed||t)))})),i},Gd.prototype._addDiagram=function(e){var t=this._bpmnjs.getDefinitions().diagrams;return e.businessObject||(e=this._createNewDiagram(e)),t.push(e.di.$parent),e},Gd.prototype._createNewDiagram=function(e){var t=this._bpmnFactory,n=this._elementFactory,i=t.create("bpmndi:BPMNPlane",{bpmnElement:e}),r=t.create("bpmndi:BPMNDiagram",{plane:i});return i.$parent=r,n.createRoot({id:Ia(e),type:e.$type,di:i,businessObject:e,collapsed:!0})},Gd.prototype._removeDiagram=function(e){var t=this._bpmnjs.getDefinitions().diagrams,n=y(t,(function(t){return t.plane.bpmnElement.id===e.id}));return t.splice(t.indexOf(n),1),n},Gd.$inject=["canvas","eventBus","modeling","elementFactory","bpmnFactory","bpmnjs","elementRegistry"],Vd.$inject=["injector","modeling"],n(Vd,Aa),n(Wd,Aa),Wd.$inject=["eventBus","modeling"];function Ud(e,t,n,i){Aa.call(this,e),this.executed(["shape.toggleCollapse"],500,(function(e){var t,n=e.context.shape;Qr(n,"bpmn:SubProcess")&&(n.collapsed?to(n).isExpanded=!1:((t=n.children).length&&t.forEach((function(e){"label"!==e.type||e.businessObject.name||(e.hidden=!0)})),to(n).isExpanded=!0))})),this.reverted(["shape.toggleCollapse"],500,(function(e){var t=e.context.shape;t.collapsed?to(t).isExpanded=!1:to(t).isExpanded=!0})),this.postExecuted(["shape.toggleCollapse"],500,(function(e){var i,r=e.context.shape,o=t.getDefaultSize(r);i=r.collapsed?function(e,t){return{x:e.x+(e.width-t.width)/2,y:e.y+(e.height-t.height)/2,width:t.width,height:t.height}}(r,o):function(e,t){var n,i,r=e.children,o=t;return(n=Hl((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 qd(e,t,n,i){t.invoke(Aa,this),this.preExecute("shape.delete",(function(e){var t=e.context.shape,r=t.businessObject;qo(t)||(Qr(t,"bpmn:Participant")&&go(t)&&n.ids.unclaim(r.processRef.id),i.unclaimId(r.id,r))})),this.preExecute("connection.delete",(function(e){var t=e.context.connection.businessObject;i.unclaimId(t.id,t)})),this.preExecute("canvas.updateRoot",(function(){var t=e.getRootElement(),i=t.businessObject;Qr(t,"bpmn:Collaboration")&&n.ids.unclaim(i.id)}))}function Kd(e,t){Aa.call(this,e),this.preExecute("connection.delete",(function(e){var n=e.context.connection,i=n.source;(function(e,t){if(!Qr(e,"bpmn:SequenceFlow"))return!1;var n=eo(t),i=eo(e);return n.get("default")===i})(n,i)&&t.updateProperties(i,{default:null})}))}n(Ud,Aa),Ud.$inject=["eventBus","elementFactory","modeling"],n(qd,Aa),qd.$inject=["canvas","injector","moddle","modeling"],n(Kd,Aa),Kd.$inject=["eventBus","modeling"];function Yd(e,t,n){var i;function r(){if(!i)throw new Error(n("out of bounds release"));return i}Aa.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,5e3,(function(e){(i=i||new Xd).enter()})),this.postExecuted(o,500,(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||(Qr(t,"bpmn:Lane")&&n.addLane(t),Qr(t,"bpmn:FlowNode")&&n.addFlowNode(t))}))}function Xd(){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}}Yd.$inject=["eventBus","modeling","translate"],n(Yd,Aa);var Zd={__init__:["adaptiveLabelPositioningBehavior","appendBehavior","associationBehavior","attachEventBehavior","boundaryEventBehavior","createBehavior","createDataObjectBehavior","createParticipantBehavior","dataInputAssociationBehavior","dataStoreBehavior","deleteLaneBehavior","detachEventBehavior","dropOnFlowBehavior","eventBasedGatewayBehavior","fixHoverBehavior","groupBehavior","importDockingFix","isHorizontalFix","labelBehavior","messageFlowBehavior","modelingFeedback","removeElementBehavior","removeEmbeddedLabelBoundsBehavior","removeParticipantBehavior","replaceConnectionBehavior","replaceElementBehaviour","resizeBehavior","resizeLaneBehavior","rootElementReferenceBehavior","spaceToolBehavior","subProcessPlaneBehavior","subProcessStartEventBehavior","toggleCollapseConnectionBehaviour","toggleElementCollapseBehaviour","unclaimIdBehavior","updateFlowNodeRefsBehavior","unsetDefaultFlowBehavior"],adaptiveLabelPositioningBehavior:["type",ih],appendBehavior:["type",oh],associationBehavior:["type",ah],attachEventBehavior:["type",sh],boundaryEventBehavior:["type",ph],createBehavior:["type",lh],createDataObjectBehavior:["type",uh],createParticipantBehavior:["type",mh],dataInputAssociationBehavior:["type",yh],dataStoreBehavior:["type",xh],deleteLaneBehavior:["type",_h],detachEventBehavior:["type",Eh],dropOnFlowBehavior:["type",Sh],eventBasedGatewayBehavior:["type",Th],fixHoverBehavior:["type",Mh],groupBehavior:["type",kh],importDockingFix:["type",Bh],isHorizontalFix:["type",Oh],labelBehavior:["type",od],messageFlowBehavior:["type",md],modelingFeedback:["type",vd],removeElementBehavior:["type",gd],removeEmbeddedLabelBoundsBehavior:["type",yd],removeParticipantBehavior:["type",xd],replaceConnectionBehavior:["type",_d],replaceElementBehaviour:["type",Ed],resizeBehavior:["type",Pd],resizeLaneBehavior:["type",Od],rootElementReferenceBehavior:["type",jd],spaceToolBehavior:["type",Id],subProcessPlaneBehavior:["type",Gd],subProcessStartEventBehavior:["type",Vd],toggleCollapseConnectionBehaviour:["type",Wd],toggleElementCollapseBehaviour:["type",Ud],unclaimIdBehavior:["type",qd],unsetDefaultFlowBehavior:["type",Kd],updateFlowNodeRefsBehavior:["type",Yd]};function Qd(e,t){var n=Wn(e,t,-15);return"intersect"!==n?n:null}function Jd(e){oc.call(this,e)}function ef(e){return!e||qo(e)}function tf(e){do{if(Qr(e,"bpmn:Process"))return eo(e);if(Qr(e,"bpmn:Participant"))return eo(e).processRef||eo(e)}while(e=e.parent)}function nf(e){return Qr(e,"bpmn:TextAnnotation")}function rf(e){return Qr(e,"bpmn:Group")&&!e.labelTarget}function of(e){return Qr(e,"bpmn:BoundaryEvent")&&cf(e,"bpmn:CompensateEventDefinition")}function af(e){return eo(e).isForCompensation}function sf(e){for(var t=e;t=t.parent;){if(Qr(t,"bpmn:FlowElementsContainer"))return eo(t);if(Qr(t,"bpmn:Participant"))return eo(t).processRef}return null}function cf(e,t){return!!y(eo(e).eventDefinitions||[],(function(e){return Qr(e,t)}))}function pf(e,t){return(eo(e).eventDefinitions||[]).every((function(e){return Qr(e,t)}))}function lf(e){return Qr(e,"bpmn:ReceiveTask")||Qr(e,"bpmn:IntermediateCatchEvent")&&(cf(e,"bpmn:MessageEventDefinition")||cf(e,"bpmn:TimerEventDefinition")||cf(e,"bpmn:ConditionalEventDefinition")||cf(e,"bpmn:SignalEventDefinition"))}function uf(e){return e.waypoints}function hf(e,t){return-1!==function(e){for(var t=[];e;)(e=e.parent)&&t.push(e);return t}(t).indexOf(e)}function df(e,t,n){if(ef(e)||ef(t))return null;if(!Qr(n,"bpmn:DataAssociation")){if(Rf(e,t))return{type:"bpmn:MessageFlow"};if(Tf(e,t))return{type:"bpmn:SequenceFlow"}}var i=Pf(e,t);return i||(of(e)&&af(t)?{type:"bpmn:Association",associationDirection:"One"}:!!Cf(e,t)&&{type:"bpmn:Association"})}function ff(e,t,n){return!(!qo(e)&&!rf(e))||!(Qr(t,"bpmn:Participant")&&!go(t))&&(Qr(e,"bpmn:Participant")?Qr(t,"bpmn:Process")||Qr(t,"bpmn:Collaboration"):Jr(e,["bpmn:DataInput","bpmn:DataOutput"])&&e.parent?t===e.parent:Qr(e,"bpmn:Lane")?Qr(t,"bpmn:Participant")||Qr(t,"bpmn:Lane"):!(Qr(e,"bpmn:BoundaryEvent")&&(i=e,!eo(i).cancelActivity||!yf(i)&&!gf(i)))&&(Qr(e,"bpmn:FlowElement")&&!Qr(e,"bpmn:DataStoreReference")?Qr(t,"bpmn:FlowElementsContainer")?go(t):Jr(t,["bpmn:Participant","bpmn:Lane"]):Qr(e,"bpmn:DataStoreReference")&&Qr(t,"bpmn:Collaboration")?w(eo(t).get("participants"),(function(e){return!!e.get("processRef")})):Jr(e,["bpmn:Artifact","bpmn:DataAssociation","bpmn:DataStoreReference"])?Jr(t,["bpmn:Collaboration","bpmn:Lane","bpmn:Participant","bpmn:Process","bpmn:SubProcess"]):!!Qr(e,"bpmn:MessageFlow")&&(Qr(t,"bpmn:Collaboration")||e.source.parent==t||e.target.parent==t)));var i}function mf(e){return Qr(e,"bpmn:Lane")}function vf(e){return!!function(e){return!qo(e)&&Qr(e,"bpmn:BoundaryEvent")}(e)||(!(!Qr(e,"bpmn:IntermediateThrowEvent")||!yf(e))||Qr(e,"bpmn:IntermediateCatchEvent")&&gf(e))}function yf(e){var t=eo(e);return t&&!(t.eventDefinitions&&t.eventDefinitions.length)}function gf(e){return bf(e,["bpmn:MessageEventDefinition","bpmn:TimerEventDefinition","bpmn:SignalEventDefinition","bpmn:ConditionalEventDefinition"])}function bf(e,t){return t.some((function(t){return cf(e,t)}))}function xf(e,t,n,i){if(Array.isArray(e)||(e=[e]),1!==e.length)return!1;var r=e[0];return!qo(r)&&(!!vf(r)&&(!bo(t)&&(!(!Qr(t,"bpmn:Activity")||af(t))&&(!(i&&!Qd(i,t))&&(!function(e){return Qr(e,"bpmn:ReceiveTask")&&y(e.incoming,(function(e){return Qr(e.source,"bpmn:EventBasedGateway")}))}(t)&&"attach")))))}function _f(e,t,n){if(!t)return!1;var i={replacements:[]};return b(e,(function(e){bo(t)||Qr(e,"bpmn:StartEvent")&&"label"!==e.type&&ff(e,t)&&(function(e){return e&&!1!==eo(e).isInterrupting}(e)||i.replacements.push({oldElementId:e.id,newElementType:"bpmn:StartEvent"}),(function(e){return xo(e,"bpmn:ErrorEventDefinition")}(e)||function(e){return xo(e,"bpmn:EscalationEventDefinition")}(e)||function(e){return xo(e,"bpmn:CompensateEventDefinition")}(e))&&i.replacements.push({oldElementId:e.id,newElementType:"bpmn:StartEvent"}),bf(e,["bpmn:MessageEventDefinition","bpmn:TimerEventDefinition","bpmn:SignalEventDefinition","bpmn:ConditionalEventDefinition"])&&Qr(t,"bpmn:SubProcess")&&i.replacements.push({oldElementId:e.id,newElementType:"bpmn:StartEvent"})),Qr(t,"bpmn:Transaction")||cf(e,"bpmn:CancelEventDefinition")&&"label"!==e.type&&(Qr(e,"bpmn:EndEvent")&&ff(e,t)&&i.replacements.push({oldElementId:e.id,newElementType:"bpmn:EndEvent"}),Qr(e,"bpmn:BoundaryEvent")&&xf(e,t,0,n)&&i.replacements.push({oldElementId:e.id,newElementType:"bpmn:BoundaryEvent"}))})),!!i.replacements.length&&i}function Ef(e,t){return!w(e,mf)&&(!t||e.every((function(e){return ff(e,t)})))}function wf(e,t,n,i){return!!t&&(!(!qo(e)&&!rf(e))||n!==t&&((!n||!hf(n,t))&&(ff(e,t)||Af(e,t))))}function Sf(e,t){return Qr(e,"bpmn:SubProcess")?go(e)&&(!t||t.width>=100&&t.height>=80):Qr(e,"bpmn:Lane")?!t||t.width>=130&&t.height>=60:Qr(e,"bpmn:Participant")?!t||t.width>=250&&t.height>=50:!!nf(e)||!!rf(e)}function Cf(e,t){return!uf(e)&&!uf(t)&&(!(!of(e)||!af(t))||!hf(t,e)&&!hf(e,t)&&(!!function(e,t){var n=nf(e),i=nf(t);return(n||i)&&n!==i}(e,t)||!!Pf(e,t)))}function Rf(e,t){return!(Df(e)&&!Df(t))&&(Qr(i=e,"bpmn:InteractionNode")&&!Qr(i,"bpmn:BoundaryEvent")&&(!Qr(i,"bpmn:Event")||Qr(i,"bpmn:ThrowEvent")&&pf(i,"bpmn:MessageEventDefinition"))&&function(e){return Qr(e,"bpmn:InteractionNode")&&!af(e)&&(!Qr(e,"bpmn:Event")||Qr(e,"bpmn:CatchEvent")&&pf(e,"bpmn:MessageEventDefinition"))&&!(Qr(e,"bpmn:BoundaryEvent")&&!cf(e,"bpmn:MessageEventDefinition"))}(t)&&(n=t,!(tf(e)===tf(n))));var n,i}function Tf(e,t){return!(lf(t)&&t.incoming.length>0&&(n=t.incoming,(n=n||[]).some(kf))&&!Qr(e,"bpmn:EventBasedGateway"))&&(Qr(r=e,"bpmn:FlowNode")&&!Qr(r,"bpmn:EndEvent")&&!bo(r)&&!(Qr(r,"bpmn:IntermediateThrowEvent")&&cf(r,"bpmn:LinkEventDefinition"))&&!of(r)&&!af(r)&&function(e){return Qr(e,"bpmn:FlowNode")&&!Qr(e,"bpmn:StartEvent")&&!Qr(e,"bpmn:BoundaryEvent")&&!bo(e)&&!(Qr(e,"bpmn:IntermediateCatchEvent")&&cf(e,"bpmn:LinkEventDefinition"))&&!af(e)}(t)&&(i=t,sf(e)===sf(i))&&!(Qr(e,"bpmn:EventBasedGateway")&&!lf(t)));var n,i,r}function Pf(e,t){return Jr(e,["bpmn:DataObjectReference","bpmn:DataStoreReference"])&&Jr(t,["bpmn:Activity","bpmn:ThrowEvent"])?{type:"bpmn:DataInputAssociation"}:!(!Jr(t,["bpmn:DataObjectReference","bpmn:DataStoreReference"])||!Jr(e,["bpmn:Activity","bpmn:CatchEvent"]))&&{type:"bpmn:DataOutputAssociation"}}function Af(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&&(Jr(t,["bpmn:SequenceFlow","bpmn:MessageFlow"])&&!qo(t)&&Qr(e,"bpmn:FlowNode")&&!Qr(e,"bpmn:BoundaryEvent")&&ff(e,t.parent))}function Mf(e,t){return!!qo(t)||!(Qr(t,"bpmn:Lane")&&!function(e,t){return e&&t&&-1!==e.indexOf(t)}(e,t.parent))}function kf(e){if(e&&e.source)return Qr(e.source,"bpmn:EventBasedGateway")}function Df(e){return Qs(e,"bpmn:Process")||Qs(e,"bpmn:Collaboration")}n(Jd,oc),Jd.$inject=["eventBus"],Jd.prototype.init=function(){this.addRule("connection.start",(function(e){return function(e){if(ef(e))return null;return Jr(e,["bpmn:FlowNode","bpmn:InteractionNode","bpmn:DataObjectReference","bpmn:DataStoreReference","bpmn:Group","bpmn:TextAnnotation"])}(e.source)})),this.addRule("connection.create",(function(e){var t=e.source,n=e.target,i=e.hints||{},r=i.targetParent;if(i.targetAttach)return!1;r&&(n.parent=r);try{return df(t,n)}finally{r&&(n.parent=null)}})),this.addRule("connection.reconnect",(function(e){var t=e.connection;return df(e.source,e.target,t)})),this.addRule("connection.updateWaypoints",(function(e){return{type:e.connection.type}})),this.addRule("shape.resize",(function(e){return Sf(e.shape,e.newBounds)})),this.addRule("elements.create",(function(e){var t=e.elements,n=e.position,i=e.target;return!(uf(i)&&!Af(t,i))&&E(t,(function(e){return uf(e)?df(e.source,e.target,e):e.host?xf(e,e.host,null,n):wf(e,i,null)}))})),this.addRule("elements.move",(function(e){var t=e.target,n=e.shapes,i=e.position;return xf(n,t,null,i)||_f(n,t,i)||Ef(n,t)||Af(n,t)})),this.addRule("shape.create",(function(e){return wf(e.shape,e.target,e.source,e.position)})),this.addRule("shape.attach",(function(e){return xf(e.shape,e.target,null,e.position)})),this.addRule("element.copy",(function(e){var t=e.element;return Mf(e.elements,t)}))},Jd.prototype.canConnectMessageFlow=Rf,Jd.prototype.canConnectSequenceFlow=Tf,Jd.prototype.canConnectDataAssociation=Pf,Jd.prototype.canConnectAssociation=Cf,Jd.prototype.canMove=Ef,Jd.prototype.canAttach=xf,Jd.prototype.canReplace=_f,Jd.prototype.canDrop=ff,Jd.prototype.canInsert=Af,Jd.prototype.canCreate=wf,Jd.prototype.canConnect=df,Jd.prototype.canResize=Sf,Jd.prototype.canCopy=Mf;var Bf={__depends__:[xc],__init__:["bpmnRules"],bpmnRules:["type",Jd]};function Nf(e,t){e.on("saveXML.start",2e3,(function(){b(t.getRootElements(),(function(e){var t,n=to(e);t=S(g(ht([e],!1),(function(t){return t!==e&&!t.labelTarget})),to),n.set("planeElement",t)}))}))}Nf.$inject=["eventBus","canvas"];var Of={__init__:["bpmnDiOrdering"],bpmnDiOrdering:["type",Nf]};function jf(e){Aa.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 Lf(e,t,n){jf.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:FlowElementsContainer"]}},{type:"bpmn:MessageFlow",order:{level:9,containers:["bpmn:Collaboration"]}},{type:"bpmn:Association",order:{level:6,containers:["bpmn:Participant","bpmn:FlowElementsContainer","bpmn:Collaboration"]}},{type:"bpmn:BoundaryEvent",order:{level:8}},{type:"bpmn:Group",order:{level:10,containers:["bpmn:Collaboration","bpmn:FlowElementsContainer"]}},{type:"bpmn:FlowElement",order:{level:5}},{type:"bpmn:Participant",order:{level:-2}},{type:"bpmn:Lane",order:{level:-1}}];function r(e){var t=e.order;if(t||(e.order=t=function(e){if(e.labelTarget)return{level:10};var t=y(i,(function(t){return Jr(e,[t.type])}));return t&&t.order||{level:1}}(e)),!t)throw new Error("no order for <"+e.id+">");return t}this.getOrdering=function(e,n){if(e.labelTarget)return{parent:t.findRoot(n)||t.getRootElement(),index:-1};var i=r(e);i.containers&&(n=function(e,t,n){for(var i=t;i&&!Jr(i,n);)i=i.parent;if(!i)throw new Error("no parent for <"+e.id+"> in <"+(t&&t.id)+">");return i}(e,n,i.containers));var o=n.children.indexOf(e),a=function(e,t){t=N(t);var n=u(e)?-1:void 0;return b(e,(function(e,i){if(t(e,i))return n=i,!1})),n}(n.children,(function(t){return!(!e.labelTarget&&t.labelTarget)&&i.level<r(t).level}));return-1!==a&&-1!==o&&o<a&&(a-=1),{index:a,parent:n}}}jf.prototype.getOrdering=function(e,t){return null},n(jf,Aa),Lf.$inject=["eventBus","canvas","translate"],n(Lf,jf);var If={__depends__:[$o],__init__:["bpmnOrderingProvider"],bpmnOrderingProvider:["type",Lf]};function zf(e,t){this._handlerMap={},this._stack=[],this._stackIdx=-1,this._currentExecution={actions:[],dirty:[],trigger:null},this._injector=t,this._eventBus=e,this._uid=1,e.on(["diagram.destroy","diagram.clear"],(function(){this.clear(!1)}),this)}zf.$inject=["eventBus","injector"],zf.prototype.execute=function(e,t){if(!e)throw new Error("command required");this._currentExecution.trigger="execute";var n={command:e,context:t};this._pushAction(n),this._internalExecute(n),this._popAction(n)},zf.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},zf.prototype.clear=function(e){this._stack.length=0,this._stackIdx=-1,!1!==e&&this._fire("changed",{trigger:"clear"})},zf.prototype.undo=function(){var e,t=this._getUndoAction();if(t){for(this._currentExecution.trigger="undo",this._pushAction(t);t&&(this._internalUndo(t),(e=this._getUndoAction())&&e.id===t.id);)t=e;this._popAction()}},zf.prototype.redo=function(){var e,t=this._getRedoAction();if(t){for(this._currentExecution.trigger="redo",this._pushAction(t);t&&(this._internalExecute(t,!0),(e=this._getRedoAction())&&e.id===t.id);)t=e;this._popAction()}},zf.prototype.register=function(e,t){this._setHandler(e,t)},zf.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)},zf.prototype.canUndo=function(){return!!this._getUndoAction()},zf.prototype.canRedo=function(){return!!this._getRedoAction()},zf.prototype._getRedoAction=function(){return this._stack[this._stackIdx+1]},zf.prototype._getUndoAction=function(){return this._stack[this._stackIdx]},zf.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)}))},zf.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},zf.prototype._createId=function(){return this._uid++},zf.prototype._atomicDo=function(e){var t=this._currentExecution;t.atomic=!0;try{e()}finally{t.atomic=!1}},zf.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)},zf.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)},zf.prototype._popAction=function(){var e=this._currentExecution,t=e.trigger,n=e.actions,i=e.dirty;n.pop(),n.length||(this._eventBus.fire("elements.changed",{elements:A("id",i.reverse())}),i.length=0,this._fire("changed",{trigger:t}),e.trigger=null)},zf.prototype._markDirty=function(e){var t=this._currentExecution;e&&(e=u(e)?e:[e],t.dirty=t.dirty.concat(e))},zf.prototype._executedAction=function(e,t){var n=++this._stackIdx;t||this._stack.splice(n,this._stack.length,e)},zf.prototype._revertedAction=function(e){this._stackIdx--},zf.prototype._getHandler=function(e){return this._handlerMap[e]},zf.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 Ff={commandStack:["type",zf]},$f=new xa("tt");function Hf(e,t){e.style.display=!1===t?"none":""}var Gf=".djs-tooltip";function Vf(e,t){var n,i;this._eventBus=e,this._canvas=t,this._ids=$f,this._tooltipDefaults={show:{minZoom:.7,maxZoom:5}},this._tooltips={},this._tooltipRoot=(n=t.getContainer(),Ct(i=Wt('<div class="djs-tooltip-container" />'),{position:"absolute",width:"0",height:"0"}),n.insertBefore(i,n.firstChild),i);var r=this;Vt.bind(this._tooltipRoot,Gf,"mousedown",(function(e){e.stopPropagation()})),Vt.bind(this._tooltipRoot,Gf,"mouseover",(function(e){r.trigger("mouseover",e)})),Vt.bind(this._tooltipRoot,Gf,"mouseout",(function(e){r.trigger("mouseout",e)})),this._init()}Vf.$inject=["eventBus","canvas"],Vf.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},Vf.prototype.trigger=function(e,t){var n=t.delegateTarget||t.target,i=this.get(Rt(n,"data-tooltip-id"));i&&("mouseover"===e&&i.timeout&&this.clearTimeout(i),"mouseout"===e&&i.timeout&&(i.timeout=1e3,this.setTimeout(i)))},Vf.prototype.get=function(e){return"string"!=typeof e&&(e=e.id),this._tooltips[e]},Vf.prototype.clearTimeout=function(e){if(e=this.get(e)){var t=e.removeTimer;t&&(clearTimeout(t),e.removeTimer=null)}},Vf.prototype.setTimeout=function(e){if(e=this.get(e)){this.clearTimeout(e);var t=this;e.removeTimer=setTimeout((function(){t.remove(e)}),e.timeout)}},Vf.prototype.remove=function(e){var t=this.get(e);t&&(Xt(t.html),Xt(t.htmlContainer),delete t.htmlContainer,delete this._tooltips[t.id])},Vf.prototype.show=function(){Hf(this._tooltipRoot)},Vf.prototype.hide=function(){Hf(this._tooltipRoot,!1)},Vf.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},Vf.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=Wt(i)),Ct(t=Wt('<div data-tooltip-id="'+n+'" class="'+'djs-tooltip">'),{position:"absolute"}),t.appendChild(i),e.type&&kt(t).add("djs-tooltip-"+e.type),e.className&&kt(t).add(e.className),e.htmlContainer=t,r.appendChild(t),this._tooltips[n]=e,this._updateTooltip(e)},Vf.prototype._updateTooltip=function(e){var t,n,i,r=e.position,o=e.htmlContainer;t=o,n=r.x,i=r.y,Ct(t,{left:n+"px",top:i+"px"})},Vf.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),Hf(i,r))}))},Vf.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 Wf={__init__:["tooltips"],tooltips:["type",Vf]};function Uf(e,t){if("function"!=typeof t)throw new Error("removeFn iterator must be a function");if(e){for(var n;n=e[0];)t(n);return e}}function qf(e,t,n){Aa.call(this,t);var i=e.get("movePreview",!1);t.on("shape.move.start",1400,(function(e){var t=e.context,n=t.shapes,i=t.validatedShapes;t.shapes=Kf(n),t.validatedShapes=Kf(i)})),i&&t.on("shape.move.start",250,(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",1400,(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;Uf((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=Jt(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&&(Qt(i.labels,n,r),n.labelTarget=i)}))}function Kf(e){return g(e,(function(t){return-1===e.indexOf(t.labelTarget)}))}n(qf,Aa),qf.$inject=["injector","eventBus","modeling"];var Yf={__init__:["labelSupport"],labelSupport:["type",qf]},Xf="attach-ok";function Zf(e,t,n,i,r){Aa.call(this,t);var o=e.get("movePreview",!1);t.on("shape.move.start",1401,(function(e){var t,n,i=e.context,r=i.shapes,o=i.validatedShapes;i.shapes=(n=Qf(t=r),M("id",t,n)),i.validatedShapes=function(e){var t=P(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",251,(function(e){var t=e.context;b(Qf(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,Xf),t.once(["shape.move.out","shape.move.cleanup"],(function(){n.removeMarker(r,Xf)})))}})),this.preExecuted("elements.move",1401,(function(e){var t=e.context,n=t.closure;b(Qf(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;Uf(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=td(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=td(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;Uf(t.attachers,(function(e){r.removeShape(e)})),t.host&&r.updateAttachment(t,null)}))}function Qf(e){return o(S(e,(function(e){return e.attachers||[]})))}n(Zf,Aa),Zf.$inject=["injector","eventBus","canvas","rules","modeling"];var Jf={__depends__:[xc],__init__:["attachSupport"],attachSupport:["type",Zf]};function em(e,t){this._eventBus=e,this._dragging=t,this._tools=[],this._active=null}em.$inject=["eventBus","dragging"],em.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)},em.prototype.isActive=function(e){return e&&this._active===e},em.prototype.length=function(e){return this._tools.length},em.prototype.setActive=function(e){var t=this._eventBus;this._active!==e&&(this._active=e,t.fire("tool-manager.update",{tool:e}))},em.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){this._active&&(function(e){var t=e.originalEvent&&e.originalEvent.target;return t&&Lt(t,'.group[data-group="tools"]')}(e)||this.setActive(null))}),this)};var tm={__depends__:[mc],__init__:["toolManager"],toolManager:["type",em]};function nm(e,t){return-1!==e.indexOf(t)}var im=Math.abs,rm=Math.round,om={x:"width",y:"height"},am="crosshair",sm={n:"top",w:"left",s:"bottom",e:"right"},cm={n:"s",w:"e",s:"n",e:"w"};function pm(e,t,n,i,r,o,a){this._canvas=e,this._dragging=t,this._eventBus=n,this._modeling=i,this._rules=r,this._toolManager=o,this._mouse=a;var s=this;o.registerTool("space",{tool:"spaceTool.selection",dragging:"spaceTool"}),n.on("spaceTool.selection.end",(function(e){n.once("spaceTool.selection.ended",(function(){s.activateMakeSpace(e.originalEvent)}))})),n.on("spaceTool.move",1500,(function(e){var t=e.context,n=t.initialized;n||(n=t.initialized=s.init(e,t)),n&&um(e)})),n.on("spaceTool.end",(function(e){var t=e.context,i=t.axis,r=t.direction,o=t.movingShapes,a=t.resizingShapes,c=t.start;if(t.initialized){um(e);var p={x:0,y:0};p[i]=rm(e["d"+i]),s.makeSpace(o,a,p,r,c),n.once("spaceTool.ended",(function(e){s.activateSelection(e.originalEvent,!0,!0)}))}}))}function lm(e){return{top:e.top-20,right:e.right+20,bottom:e.bottom+20,left:e.left-20}}function um(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 hm(e,t){return-1!==e.indexOf(t)}function dm(e){return!!e.waypoints}function fm(e){return!!e.labelTarget}pm.$inject=["canvas","dragging","eventBus","modeling","rules","toolManager","mouse"],pm.prototype.activateSelection=function(e,t,n){this._dragging.init(e,"spaceTool.selection",{autoActivate:t,cursor:am,data:{context:{reactivate:n}},trapClick:!1})},pm.prototype.activateMakeSpace=function(e){this._dragging.init(e,"spaceTool",{autoActivate:!0,cursor:am,data:{context:{}}})},pm.prototype.makeSpace=function(e,t,n,i,r){return this._modeling.createSpace(e,t,n,i,r)},pm.prototype.init=function(e,t){var n=im(e.dx)>im(e.dy)?"x":"y",i=e["d"+n],r=e[n]-i;if(im(i)<5)return!1;i<0&&(i*=-1),oa(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=ht(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 l,u,h,f=Hn(e),m=g(e.children,(function(e){return!(dm(e)||fm(e)||hm(o,e)||hm(a,e))})),v=g(e.children,(function(e){return!dm(e)&&!fm(e)&&hm(o,e)}));m.length&&(u=lm(Hn(dt(m))),l=i-f[sm[n]]+u[sm[n]],"n"===n?p.bottom=c=d(c)?Math.min(c,l):l:"w"===n?p.right=c=d(c)?Math.min(c,l):l:"s"===n?p.top=s=d(s)?Math.max(s,l):l:"e"===n&&(p.left=s=d(s)?Math.max(s,l):l)),v.length&&(h=lm(Hn(dt(v))),l=i-h[sm[cm[n]]]+f[sm[cm[n]]],"n"===n?p.bottom=c=d(c)?Math.min(c,l):l:"w"===n?p.right=c=d(c)?Math.min(c,l):l:"s"===n?p.top=s=d(s)?Math.max(s,l):l:"e"===n&&(p.left=s=d(s)?Math.max(s,l):l));var y=r&&r[e.id];y&&("n"===n?(l=i+e[om[t]]-y[om[t]],p.bottom=c=d(c)?Math.min(c,l):l):"w"===n?(l=i+e[om[t]]-y[om[t]],p.right=c=d(c)?Math.min(c,l):l):"s"===n?(l=i-e[om[t]]+y[om[t]],p.top=s=d(s)?Math.max(s,l):l):"e"===n&&(l=i-e[om[t]]+y[om[t]],p.left=s=d(s)?Math.max(s,l):l))})),p}(s,n,o,r,this._eventBus.fire("spaceTool.getMinDimensions",{axis:n,direction:o,shapes:s.resizingShapes,start:r})),start:r}),ms("resize-"+("x"===n?"ew":"ns")),!0},pm.prototype.calculateAdjustments=function(e,t,n,i){var r=this._rules,o=[],a=[];return b(e,(function(e){if(e.parent&&!dm(e)){var s=e[t],c=s+e[om[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}},pm.prototype.toggle=function(){if(this.isActive())return this._dragging.cancel();var e=this._mouse.getLastMoveEvent();this.activateSelection(e,!!e)},pm.prototype.isActive=function(){var e=this._dragging.context();return e&&/^spaceTool/.test(e.prefix)};var mm="djs-dragging",vm="djs-resizing",ym=Math.max;function gm(e,t,n,i,r){function o(e,t){b(e,(function(e){r.addDragger(e,t),n.addMarker(e,mm)}))}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"])),be(t,s);var c=Oe("path");Ee(c,"d",o),Te(c).add("djs-crosshair"),be(s,c);var p=Oe("path");Ee(p,"d",a),Te(p).add("djs-crosshair"),be(s,p),r.crosshairGroup=s})),e.on("spaceTool.selection.move",(function(e){Ci(e.context.crosshairGroup,e.x,e.y)})),e.on("spaceTool.selection.cleanup",(function(e){var t=e.context.crosshairGroup;t&&Ae(t)})),e.on("spaceTool.move",250,(function(e){var a=e.context,s=a.line,c=a.axis,p=a.movingShapes,l=a.resizingShapes;if(a.initialized){if(!a.dragGroup){var u=n.getLayer("space");Ee(s=Oe("path"),"d","M0,0 L0,0"),Te(s).add("djs-crosshair"),be(u,s),a.line=s;var h=Oe("g");Ee(h,i.cls("djs-drag-group",["no-events"])),be(n.getActiveLayer(),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(l,(function(t){b(t.outgoing,(function(t){e===t&&(i=!0)}))}));var r=!1;return b(l,(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"])),be(n.getActiveLayer(),d);var f=[];b(l,(function(e){var t=r.addFrame(e,d),i=t.getBBox();f.push({element:t,initialBounds:i}),n.addMarker(e,vm)})),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,Ci(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:ym(r.width+m.x,5)}):Ee(i,{width:t=ym(r.width-m.x,5),x:r.x+r.width-t}),"s"===a.direction?Ee(i,{height:ym(r.height+m.y,5)}):Ee(i,{height:n=ym(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,mm)})),b(r,(function(e){n.removeMarker(e,mm)})),s&&(Ae(a),Ae(s)),b(o,(function(e){n.removeMarker(e,vm)})),c&&Ae(c)}))}gm.$inject=["eventBus","elementRegistry","canvas","styles","previewSupport"];var bm={__init__:["spaceToolPreview"],__depends__:[mc,xc,tm,kp,Xp],spaceTool:["type",pm],spaceToolPreview:["type",gm]};function xm(e){this._model=e}function _m(e,t,n,i){Aa.call(this,e),this._bpmnFactory=t,this._translate=i;var r=this;function o(e){b(e.context.oldRoot.children,(function(e){Qr(e,"bpmn:BaseElement")&&r.updateParent(e)}))}function a(e){var t=e.context.shape;Qr(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"],Em((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"],Em((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"],Em((function(e){"label"!==e.context.shape.type&&a(e)}))),this.reverted(["shape.move","shape.create","shape.resize"],Em((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"],Em(s)),this.reverted(["connection.create","connection.move","connection.delete","connection.reconnect"],Em(s)),this.executed(["connection.layout","connection.move","connection.updateWaypoints"],Em(c)),this.reverted(["connection.layout","connection.move","connection.updateWaypoints"],Em(c)),this.executed("connection.reconnect",Em((function(e){var t=e.context,n=t.connection,i=t.oldSource,r=t.newSource,o=eo(n),a=eo(i),s=eo(r);o.conditionExpression&&!Jr(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",Em((function(e){var t=e.context,n=t.connection,i=t.oldSource,r=t.newSource,o=eo(n),a=eo(i),s=eo(r);t.oldConditionExpression&&(o.conditionExpression=t.oldConditionExpression),t.oldDefault&&(a.default=t.oldDefault,delete s.default)}))),this.executed(["element.updateAttachment"],Em(p)),this.reverted(["element.updateAttachment"],Em(p))}function Em(e){return function(t){var n=t.context;Qr(n.shape||n.connection,"bpmn:BaseElement")&&e(t)}}function wm(e,t,n){bi.call(this),this._bpmnFactory=e,this._moddle=t,this._translate=n}function Sm(e,t,n){e[n]=t[n],delete t[n]}function Cm(e,t){this._modeling=e,this._canvas=t}function Rm(e){this._modeling=e}function Tm(e,t){this._canvas=e,this._layouter=t}xm.$inject=["moddle"],xm.prototype._needsId=function(e){return Jr(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"])},xm.prototype._ensureId=function(e){var t;e.id?this._model.ids.claim(e.id,e):(t=Qr(e,"bpmn:Activity")?"Activity":Qr(e,"bpmn:Event")?"Event":Qr(e,"bpmn:Gateway")?"Gateway":Jr(e,["bpmn:SequenceFlow","bpmn:MessageFlow"])?"Flow":(e.$type||"").replace(/^[^:]*:/g,""),t+="_",!e.id&&this._needsId(e)&&(e.id=this._model.ids.nextPrefixed(t,e)))},xm.prototype.create=function(e,t){var n=this._model.create(e,t||{});return this._ensureId(n),n},xm.prototype.createDiLabel=function(){return this.create("bpmndi:BPMNLabel",{bounds:this.createDiBounds()})},xm.prototype.createDiShape=function(e,t){return this.create("bpmndi:BPMNShape",F({bpmnElement:e,bounds:this.createDiBounds()},t))},xm.prototype.createDiBounds=function(e){return this.create("dc:Bounds",e)},xm.prototype.createDiWaypoints=function(e){var t=this;return S(e,(function(e){return t.createDiWaypoint(e)}))},xm.prototype.createDiWaypoint=function(e){return this.create("dc:Point",$(e,["x","y"]))},xm.prototype.createDiEdge=function(e,t){return this.create("bpmndi:BPMNEdge",F({bpmnElement:e,waypoint:this.createDiWaypoints([])},t))},xm.prototype.createDiPlane=function(e,t){return this.create("bpmndi:BPMNPlane",F({bpmnElement:e},t))},n(_m,Aa),_m.$inject=["eventBus","bpmnFactory","connectionDocking","translate"],_m.prototype.updateAttachment=function(e){var t=e.shape,n=t.businessObject,i=t.host;n.attachedToRef=i&&i.businessObject},_m.prototype.updateParent=function(e,t){if(!(e instanceof vi||Qr(e,"bpmn:DataStoreReference")&&e.parent&&Qr(e.parent,"bpmn:Collaboration"))){var n=e.parent,i=e.businessObject,r=to(e),o=n&&n.businessObject,a=to(n);Qr(e,"bpmn:FlowNode")&&this.updateFlowNodeRefs(i,o,t&&t.businessObject),Qr(e,"bpmn:DataOutputAssociation")&&(o=e.source?e.source.businessObject:null),Qr(e,"bpmn:DataInputAssociation")&&(o=e.target?e.target.businessObject:null),this.updateSemanticParent(i,o),Qr(e,"bpmn:DataObjectReference")&&i.dataObjectRef&&this.updateSemanticParent(i.dataObjectRef,o),this.updateDiParent(r,a)}},_m.prototype.updateBounds=function(e){var t=to(e),n=function(e){if(!Qr(e,"bpmn:Activity"))return;var t=to(e);if(!t)return;var n=t.get("label");if(!n)return;return n.get("bounds")}(e);if(n){var i=bs(n,t.get("bounds"));F(n,{x:e.x+i.x,y:e.y+i.y})}var r=e instanceof vi?this._getLabel(t):t,o=r.bounds;o||(o=this._bpmnFactory.createDiBounds(),r.set("bounds",o)),F(o,{x:e.x,y:e.y,width:e.width,height:e.height})},_m.prototype.updateFlowNodeRefs=function(e,t,n){n!==t&&(Qr(n,"bpmn:Lane")&&Zt(n.get("flowNodeRef"),e),Qr(t,"bpmn:Lane")&&Qt(t.get("flowNodeRef"),e))},_m.prototype.updateDiConnection=function(e,t,n){var i=to(e),r=to(t),o=to(n);i.sourceElement&&i.sourceElement.bpmnElement!==eo(t)&&(i.sourceElement=t&&r),i.targetElement&&i.targetElement.bpmnElement!==eo(n)&&(i.targetElement=n&&o)},_m.prototype.updateDiParent=function(e,t){if(t&&!Qr(t,"bpmndi:BPMNPlane")&&(t=t.$parent),e.$parent!==t){var n=(t||e.$parent).get("planeElement");t?(n.push(e),e.$parent=t):(Zt(n,e),e.$parent=null)}},_m.prototype.getLaneSet=function(e){var t,n;return Qr(e,"bpmn:Lane")?((t=e.childLaneSet)||(t=this._bpmnFactory.create("bpmn:LaneSet"),e.childLaneSet=t,t.$parent=e),t):(Qr(e,"bpmn:Participant")&&(e=e.processRef),(t=(n=e.get("laneSets"))[0])||((t=this._bpmnFactory.create("bpmn:LaneSet")).$parent=e,n.push(t)),t)},_m.prototype.updateSemanticParent=function(e,t,n){var i,r=this._translate;if(e.$parent!==t&&(!Qr(e,"bpmn:DataInput")&&!Qr(e,"bpmn:DataOutput")||(Qr(t,"bpmn:Participant")&&"processRef"in t&&(t=t.processRef),!("ioSpecification"in t)||t.ioSpecification!==e.$parent))){if(Qr(e,"bpmn:Lane"))t&&(t=this.getLaneSet(t)),i="lanes";else if(Qr(e,"bpmn:FlowElement")){if(t)if(Qr(t,"bpmn:Participant"))t=t.processRef;else if(Qr(t,"bpmn:Lane"))do{t=t.$parent.$parent}while(Qr(t,"bpmn:Lane"));i="flowElements"}else if(Qr(e,"bpmn:Artifact")){for(;t&&!Qr(t,"bpmn:Process")&&!Qr(t,"bpmn:SubProcess")&&!Qr(t,"bpmn:Collaboration");){if(Qr(t,"bpmn:Participant")){t=t.processRef;break}t=t.$parent}i="artifacts"}else if(Qr(e,"bpmn:MessageFlow"))i="messageFlows";else if(Qr(e,"bpmn:Participant")){i="participants";var o,a=e.processRef;a&&(o=function(e){for(;e&&!Qr(e,"bpmn:Definitions");)e=e.$parent;return e}(e.$parent||t),e.$parent&&(Zt(o.get("rootElements"),a),a.$parent=null),t&&(Qt(o.get("rootElements"),a),a.$parent=o))}else Qr(e,"bpmn:DataOutputAssociation")?i="dataOutputAssociations":Qr(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&&Zt(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);Zt(s,e),t&&(c||(c=[],t.set(i,c)),c.push(e))}}},_m.prototype.updateConnectionWaypoints=function(e){to(e).set("waypoint",this._bpmnFactory.createDiWaypoints(e.waypoints))},_m.prototype.updateConnection=function(e){var t,n=e.connection,i=eo(n),r=n.source,o=eo(r),a=n.target,s=eo(n.target);if(Qr(i,"bpmn:DataAssociation"))Qr(i,"bpmn:DataInputAssociation")?(i.get("sourceRef")[0]=o,t=e.parent||e.newParent||s,this.updateSemanticParent(i,s,t)):Qr(i,"bpmn:DataOutputAssociation")&&(t=e.parent||e.newParent||o,this.updateSemanticParent(i,o,t),i.targetRef=s);else{var c=Qr(i,"bpmn:SequenceFlow");i.sourceRef!==o&&(c&&(Zt(i.sourceRef&&i.sourceRef.get("outgoing"),i),o&&o.get("outgoing")&&o.get("outgoing").push(i)),i.sourceRef=o),i.targetRef!==s&&(c&&(Zt(i.targetRef&&i.targetRef.get("incoming"),i),s&&s.get("incoming")&&s.get("incoming").push(i)),i.targetRef=s)}this.updateConnectionWaypoints(n),this.updateDiConnection(n,r,a)},_m.prototype._getLabel=function(e){return e.label||(e.label=this._bpmnFactory.createDiLabel()),e.label},n(wm,bi),wm.$inject=["bpmnFactory","moddle","translate"],wm.prototype.baseCreate=bi.prototype.create,wm.prototype.create=function(e,t){if("label"===e){var n=t.di||this._bpmnFactory.createDiLabel();return this.baseCreate(e,F({type:"label",di:n},Ho,t))}return this.createBpmnElement(e,t)},wm.prototype.createBpmnElement=function(e,t){var n,i,r,o=this._translate,a=(t=t||{}).businessObject,s=t.di;if(!a){if(!t.type)throw new Error(o("no shape type specified"));Yr(a=this._bpmnFactory.create(t.type))}if(!Jr(s,["bpmndi:BPMNShape","bpmndi:BPMNEdge","bpmndi:BPMNDiagram","bpmndi:BPMNPlane"])){var c=F(s||{},{id:a.id+"_di"});s="root"===e?this._bpmnFactory.createDiPlane(a,c):"connection"===e?this._bpmnFactory.createDiEdge(a,c):this._bpmnFactory.createDiShape(a,c)}return Qr(a,"bpmn:Group")&&(t=F({isFrame:!0},t)),function(e,t,n){b(n,(function(n){void 0!==t[n]&&Sm(e,t,n)}))}(a,t,["processRef","isInterrupting","associationDirection","isForCompensation"]),t.isExpanded&&Sm(s,t,"isExpanded"),Qr(a,"bpmn:SubProcess")&&(t.collapsed=!go(a,s)),Qr(a,"bpmn:ExclusiveGateway")&&(s.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,s),t=F({id:a.id},n,t,{businessObject:a,di:s}),this.baseCreate(e,t)},wm.prototype.getDefaultSize=function(e,t){var n=eo(e);return t=t||to(e),Qr(n,"bpmn:SubProcess")?go(n,t)?{width:350,height:200}:{width:100,height:80}:Qr(n,"bpmn:Task")?{width:100,height:80}:Qr(n,"bpmn:Gateway")?{width:50,height:50}:Qr(n,"bpmn:Event")?{width:36,height:36}:Qr(n,"bpmn:Participant")?go(n,t)?{width:600,height:250}:{width:400,height:60}:Qr(n,"bpmn:Lane")?{width:400,height:100}:Qr(n,"bpmn:DataObjectReference")?{width:36,height:50}:Qr(n,"bpmn:DataStoreReference")?{width:50,height:50}:Qr(n,"bpmn:TextAnnotation")?{width:100,height:30}:Qr(n,"bpmn:Group")?{width:300,height:300}:{width:100,height:80}},wm.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)},Cm.$inject=["modeling","canvas"],Cm.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)}))},Cm.prototype.postExecute=function(e){},Rm.$inject=["modeling"],Rm.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},Rm.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))},Tm.$inject=["canvas","layouter"],Tm.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},Tm.prototype.revert=function(e){var t=e.connection;return this._canvas.removeConnection(t),t.source=null,t.target=null,t};var Pm=Math.round;function Am(e){this._modeling=e}function Mm(e){return!!e.waypoints}Am.$inject=["modeling"],Am.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=dt(g(t,(function(e){return!e.hidden})));b(t,(function(e){Mm(e)&&(e.waypoints=S(e.waypoints,(function(e){return{x:Pm(e.x-s.x-s.width/2+r.x),y:Pm(e.y-s.y-s.height/2+r.y)}}))),F(e,{x:Pm(e.x-s.x-s.width/2+r.x),y:Pm(e.y-s.y-s.height/2+r.y)})}));var c=ct(t),p={};b(t,(function(e){if(Mm(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=T(p)};var km=Math.round;function Dm(e){this._canvas=e}function Bm(e){Dm.call(this,e)}Dm.$inject=["canvas"],Dm.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-km(t.width/2),y:n.y-km(t.height/2)}),this._canvas.addShape(t,i,r),t},Dm.prototype.revert=function(e){var t=e.shape;return this._canvas.removeShape(t),t},n(Bm,Dm),Bm.$inject=["canvas"];var Nm=Dm.prototype.execute;Bm.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,Nm.call(this,e)};var Om=Dm.prototype.revert;function jm(e,t){this._canvas=e,this._modeling=t}function Lm(e,t){this._modeling=e,this._elementRegistry=t}function Im(e,t){this._canvas=e,this._modeling=t}function zm(e){this._modeling=e}Bm.prototype.revert=function(e){return e.shape.labelTarget=null,Om.call(this,e)},jm.$inject=["canvas","modeling"],jm.prototype.execute=function(e){var t=e.connection,n=t.parent;return e.parent=n,e.parentIndex=Jt(n.children,t),e.source=t.source,e.target=t.target,this._canvas.removeConnection(t),t.source=null,t.target=null,t},jm.prototype.revert=function(e){var t=e.connection,n=e.parent,i=e.parentIndex;return t.source=e.source,t.target=e.target,Qt(n.children,t,i),this._canvas.addConnection(t,n),t},Lm.$inject=["modeling","elementRegistry"],Lm.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))}))},Im.$inject=["canvas","modeling"],Im.prototype.preExecute=function(e){var t=this._modeling,n=e.shape;Uf(n.incoming,(function(e){t.removeConnection(e,{nested:!0})})),Uf(n.outgoing,(function(e){t.removeConnection(e,{nested:!0})})),Uf(n.children,(function(e){e.waypoints?t.removeConnection(e,{nested:!0}):t.removeShape(e,{nested:!0})}))},Im.prototype.execute=function(e){var t=this._canvas,n=e.shape,i=n.parent;return e.oldParent=i,e.oldParentIndex=Jt(i.children,n),t.removeShape(n),n},Im.prototype.revert=function(e){var t=this._canvas,n=e.shape,i=e.oldParent,r=e.oldParentIndex;return Qt(i.children,n,r),t.addShape(n,i),n},zm.$inject=["modeling"];var Fm={x:"y",y:"x"};function $m(e,t){this._layouter=e,this._canvas=t}function Hm(){}function Gm(){this.allShapes={},this.allConnections={},this.enclosedElements={},this.enclosedConnections={},this.topLevel={}}function Vm(e){this._modeling=e}function Wm(e){this._helper=new Vm(e)}function Um(e){this._modeling=e,this._helper=new Vm(e)}function qm(e){this._modeling=e}function Km(e){return e.original||e}function Ym(e,t){this._modeling=e,this._rules=t}function Xm(e){this._modeling=e}function Zm(e){this._modeling=e}function Qm(e){return F({},e)}function Jm(e){switch(e){case"n":return"y";case"w":return"x";case"s":return"y";case"e":return"x"}}function ev(e,t,n){var i=Jm(n);return/e|s/.test(n)?e[i]>t:/n|w/.test(n)?e[i]<t:void 0}function tv(e,t){return-1!==e.indexOf(t)}function nv(e){this._modeling=e}function iv(e){var t={};return b(e,(function(e){t[e.id]=e.hidden,e.children&&(t=F({},t,iv(e.children)))})),t}function rv(e,t){var n=[];return b(e,(function(e){e.hidden=t,n=n.concat(e),e.children&&(n=n.concat(rv(e.children,e.collapsed||t)))})),n}function ov(e,t){var n=[];return b(e,(function(e){e.hidden=t[e.id],n=n.concat(e),e.children&&(n=n.concat(ov(e.children,t)))})),n}function av(e){this._modeling=e}function sv(e,t){return Zt(e&&e.attachers,t)}function cv(e,t,n){if(e){var i=e.attachers;i||(e.attachers=i=[]),Qt(i,t,n)}}function pv(){}function lv(e,t,n){this._eventBus=e,this._elementFactory=t,this._commandStack=n;var i=this;e.on("diagram.init",(function(){i.registerHandlers(n)}))}function uv(e){this._elementRegistry=e}function hv(e,t){b(t,(function(t,n){e.set(n,t)}))}zm.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,l,u=n[0],h=s(n),d=n[h],f=0;b(n,(function(e,p){var l,u,d;e.elements.length<2?p&&p!==n.length-1&&(o(e,e.elements[0]),f+=c(e.range)):(u=(l=k(e.elements,i))[0],p===h&&(u=l[s(l)]),d=a(u),e.range=null,b(l,(function(n){!function(e,n){var r={y:0};r[i]=e-a(n),r[i]&&(r[Fm[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)))})),l=Math.abs(d.range.min-u.range.max),(p=Math.round((l-f)/(n.length-1)))<n.length-1||b(n,(function(e,o){var a,s={};e!==u&&e!==d&&(a=n[o-1],e.range.max=0,b(e.elements,(function(n,o){s[Fm[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)})))}))},zm.prototype.postExecute=function(e){},$m.$inject=["layouter","canvas"],$m.prototype.execute=function(e){var t=e.connection;return F(e,{oldWaypoints:t.waypoints}),t.waypoints=this._layouter.layoutConnection(t,e.hints),t},$m.prototype.revert=function(e){var t=e.connection;return t.waypoints=e.oldWaypoints,t},Hm.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=Zt(o.children,t),Qt(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},Hm.prototype.revert=function(e){var t=e.connection,n=t.parent,i=e.oldParent,r=e.oldParentIndex,o=e.delta;return Zt(n.children,t),Qt(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},Gm.prototype.add=function(e,t){return this.addAll([e],t)},Gm.prototype.addAll=function(e,t){return F(this,function(e,t,n){c(t)&&(t=!0),h(t)&&(n=t,t=!0);var i=vt((n=n||{}).allShapes),r=vt(n.allConnections),o=vt(n.enclosedElements),a=vt(n.enclosedConnections),s=vt(n.topLevel,t&&P(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 ut(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},Vm.prototype.moveRecursive=function(e,t,n){return e?this.moveClosure(this.getClosure(e),t,n):[]},Vm.prototype.moveClosure=function(e,t,n,i,r){var o=this._modeling,a=e.allShapes,s=e.allConnections,c=e.enclosedConnections,p=e.topLevel,l=!1;r&&r.parent===n&&(l=!0),b(a,(function(e){o.moveShape(e,t,p[e.id]&&!l&&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]&&!l&&n):o.layoutConnection(e,{connectionStart:i&&pd(e,e.source,t),connectionEnd:r&&ld(e,e.target,t)})}))},Vm.prototype.getClosure=function(e){return(new Gm).addAll(e,!0)},Wm.$inject=["modeling"],Wm.prototype.preExecute=function(e){e.closure=this._helper.getClosure(e.shapes)},Wm.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)},Um.$inject=["modeling"],Um.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=Zt(o.children,t),Qt(i.children,t,r),F(t,{parent:i,x:t.x+n.x,y:t.y+n.y}),t},Um.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:ld(e,t,n)})})),b(t.outgoing,(function(e){r.layoutConnection(e,{connectionStart:pd(e,t,n)})}))),!1!==i.recurse&&this.moveChildren(e)},Um.prototype.revert=function(e){var t=e.shape,n=e.oldParent,i=e.oldParentIndex,r=e.delta;return Qt(n.children,t,i),F(t,{parent:n,x:t.x-r.x,y:t.y-r.y}),t},Um.prototype.moveChildren=function(e){var t=e.delta,n=e.shape;this._helper.moveRecursive(n.children,t,null)},Um.prototype.getNewParent=function(e){return e.newParent||e.shape.parent},qm.$inject=["modeling"],qm.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 u(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},qm.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(u(r)?r[0]:r)),!i||n&&"target"!==o.docking||(a.connectionEnd=a.connectionEnd||Km(u(r)?r[r.length-1]:r)),o.newWaypoints&&(a.waypoints=o.newWaypoints),this._modeling.layoutConnection(t,a))},qm.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},Ym.$inject=["modeling","rules"],Ym.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,l={x:a.x,y:a.y},u={x:o.x,y:o.y,width:o.width,height:o.height};t=e.newShape=e.newShape||n.createShape(a,l,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,cd(e,t,u),s)})),b(d,(function(e){var i=e.target;c(t,i,e)&&n.reconnectStart(e,t,sd(e,t,u),s)}))},Ym.prototype.postExecute=function(e){var t=e.oldShape;this._modeling.removeShape(t)},Ym.prototype.execute=function(e){},Ym.prototype.revert=function(e){},Ym.prototype.createShape=function(e,t,n,i){return this._modeling.createShape(e,t,n,i)},Ym.prototype.reconnectStart=function(e,t,n,i){this._modeling.reconnectStart(e,t,n,i)},Ym.prototype.reconnectEnd=function(e,t,n,i){this._modeling.reconnectEnd(e,t,n,i)},Xm.$inject=["modeling"],Xm.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},Xm.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:cd(e,n,i)})})),b(n.outgoing,(function(e){t.layoutConnection(e,{connectionStart:sd(e,n,i)})})))},Xm.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},Zm.$inject=["modeling"],Zm.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;(nm(e,r)||nm(e,o)||nm(t,r)||nm(t,o))&&(nm(n,i)||n.push(i))}))})),n}(i,r),t,n,o,i,r,a)},Zm.prototype.execute=function(){},Zm.prototype.revert=function(){},Zm.prototype.moveShapes=function(e,t){var n=this;b(e,(function(e){n._modeling.moveShape(e,t,null,{autoResize:!1,layout:!1,recurse:!1})}))},Zm.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})}))},Zm.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,l=e.target,u=function(e){return S(e.waypoints,(function(e){return(e=Qm(e)).original&&(e.original=Qm(e.original)),e}))}(e),h=Jm(n),d={labelBehavior:!1};tv(c,p)&&tv(c,l)?(u=S(u,(function(e){return ev(e,i,n)&&(e[h]=e[h]+t[h]),e.original&&ev(e.original,i,n)&&(e.original[h]=e.original[h]+t[h]),e})),s._modeling.updateWaypoints(e,u,{labelBehavior:!1})):(tv(c,p)||tv(c,l))&&(tv(r,p)?d.connectionStart=pd(e,p,t):tv(r,l)?d.connectionEnd=ld(e,l,t):tv(o,p)?d.connectionStart=sd(e,p,a[p.id]):tv(o,l)&&(d.connectionEnd=cd(e,l,a[l.id])),s._modeling.layoutConnection(e,d))}))},nv.$inject=["modeling"],nv.prototype.execute=function(e){var t=e.shape,n=t.children;e.oldChildrenVisibility=iv(n),t.collapsed=!t.collapsed;var i=rv(n,t.collapsed);return[t].concat(i)},nv.prototype.revert=function(e){var t=e.shape,n=e.oldChildrenVisibility,i=ov(t.children,n);return t.collapsed=!t.collapsed,[t].concat(i)},av.$inject=["modeling"],av.prototype.execute=function(e){var t=e.shape,n=e.newHost,i=t.host;return e.oldHost=i,e.attacherIdx=sv(i,t),cv(n,t),t.host=n,t},av.prototype.revert=function(e){var t=e.shape,n=e.newHost,i=e.oldHost,r=e.attacherIdx;return t.host=i,sv(n,t),cv(i,t,r),t},pv.prototype.execute=function(e){var t=e.connection,n=e.newWaypoints;return e.oldWaypoints=t.waypoints,t.waypoints=n,t},pv.prototype.revert=function(e){var t=e.connection,n=e.oldWaypoints;return t.waypoints=n,t},lv.$inject=["eventBus","elementFactory","commandStack"],lv.prototype.getHandlers=function(){return{"shape.append":Rm,"shape.create":Dm,"shape.delete":Im,"shape.move":Um,"shape.resize":Xm,"shape.replace":Ym,"shape.toggleCollapse":nv,spaceTool:Zm,"label.create":Bm,"connection.create":Tm,"connection.delete":jm,"connection.move":Hm,"connection.layout":$m,"connection.updateWaypoints":pv,"connection.reconnect":qm,"elements.create":Am,"elements.move":Wm,"elements.delete":Lm,"elements.distribute":zm,"elements.align":Cm,"element.updateAttachment":av}},lv.prototype.registerHandlers=function(e){b(this.getHandlers(),(function(t,n){e.registerHandler(n,t)}))},lv.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)},lv.prototype.updateAttachment=function(e,t){var n={shape:e,newHost:t};this._commandStack.execute("element.updateAttachment",n)},lv.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)},lv.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)},lv.prototype.layoutConnection=function(e,t){var n={connection:e,hints:t||{}};this._commandStack.execute("connection.layout",n)},lv.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},lv.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},lv.prototype.createElements=function(e,t,n,i,r){u(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},lv.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},lv.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},lv.prototype.removeElements=function(e){var t={elements:e};this._commandStack.execute("elements.delete",t)},lv.prototype.distributeElements=function(e,t,n){var i={groups:e,axis:t,dimension:n};this._commandStack.execute("elements.distribute",i)},lv.prototype.removeShape=function(e,t){var n={shape:e,hints:t||{}};this._commandStack.execute("shape.delete",n)},lv.prototype.removeConnection=function(e,t){var n={connection:e,hints:t||{}};this._commandStack.execute("connection.delete",n)},lv.prototype.replaceShape=function(e,t,n){var i={oldShape:e,newData:t,hints:n||{}};return this._commandStack.execute("shape.replace",i),i.newShape},lv.prototype.alignElements=function(e,t){var n={elements:e,alignment:t};this._commandStack.execute("elements.align",n)},lv.prototype.resizeShape=function(e,t,n,i){var r={shape:e,newBounds:t,minBounds:n,hints:i};this._commandStack.execute("shape.resize",r)},lv.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)},lv.prototype.updateWaypoints=function(e,t,n){var i={connection:e,newWaypoints:t,hints:n||{}};this._commandStack.execute("connection.updateWaypoints",i)},lv.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)},lv.prototype.reconnectStart=function(e,t,n,i){i||(i={}),this.reconnect(e,t,e.target,n,F(i,{docking:"source"}))},lv.prototype.reconnectEnd=function(e,t,n,i){i||(i={}),this.reconnect(e,e.source,t,n,F(i,{docking:"target"}))},lv.prototype.connect=function(e,t,n,i){return this.createConnection(e,t,n||{},e.parent,i)},lv.prototype._create=function(e,t){return t instanceof di?t:this._elementFactory.create(e,t)},lv.prototype.toggleCollapse=function(e,t){var n={shape:e,hints:t||{}};this._commandStack.execute("shape.toggleCollapse",n)},uv.$inject=["elementRegistry"],uv.prototype.execute=function(e){var t=e.element,n=e.moddleElement,i=e.properties;if(!n)throw new Error("<moddleElement> required");var r=e.changed||this.getVisualReferences(n).concat(t),o=e.oldProperties||function(e,t){return _(t,(function(t,n){return t[n]=e.get(n),t}),{})}(n,C(i));return hv(n,i),e.oldProperties=o,e.changed=r,r},uv.prototype.revert=function(e){var t=e.oldProperties,n=e.moddleElement,i=e.changed;return hv(n,t),i},uv.prototype.getVisualReferences=function(e){var t=this._elementRegistry;return Qr(e,"bpmn:DataObject")?function(e,t){return t.filter((function(t){return Qr(t,"bpmn:DataObjectReference")&&eo(t).dataObjectRef===e}))}(e,t):[]};var dv="default",fv="id",mv="di",vv={width:0,height:0};function yv(e,t,n,i,r){this._elementRegistry=e,this._moddle=t,this._translate=n,this._modeling=i,this._textRenderer=r}function gv(e,t){return fv in e&&e.id!==t.id}function bv(e,t){var n=e.businessObject,i=to(e);b(t,(function(e,t){t!==mv?n.set(t,e):i&&function(e,t){b(t,(function(t,n){e.set(n,t)}))}(i,e)}))}yv.$inject=["elementRegistry","moddle","translate","modeling","textRenderer"],yv.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 xv.forEach((function(n){n in e&&(t[n]=eo(t[n]))})),t}(e.properties),c=e.oldProperties||function(e,t){var n=C(t),i=e.businessObject,r=to(e);return _(n,(function(e,n){return e[n]=n!==mv?i.get(n):function(e,t){return _(t,(function(t,n){return t[n]=e&&e.get(n),t}),{})}(r,C(t.di)),e}),{})}(t,s);return gv(s,a)&&(o.unclaim(a.id),r.updateId(t,s.id),o.claim(s.id,a)),dv in s&&(s.default&&n.push(r.get(s.default.id)),a.default&&n.push(r.get(a.default.id))),bv(t,s),e.oldProperties=c,e.changed=n,n},yv.prototype.postExecute=function(e){var t=e.element.label,n=t&&eo(t).name;if(n){var i=this._textRenderer.getExternalLabelBounds(t,n);this._modeling.resizeShape(t,i,vv)}},yv.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 bv(t,i),gv(n,r)&&(a.unclaim(n.id),o.updateId(t,i.id),a.claim(i.id,r)),e.changed};var xv=["default"];function _v(e,t){this._canvas=e,this._modeling=t}function Ev(e,t){this._modeling=e,this._spaceTool=t}function wv(e,t){this._modeling=e,this._translate=t}function Sv(e,t){this._modeling=e,this._spaceTool=t}_v.$inject=["canvas","modeling"],_v.prototype.execute=function(e){var t=this._canvas,n=e.newRoot,i=n.businessObject,r=t.getRootElement(),o=r.businessObject,a=o.$parent,s=to(r);t.setRootElement(n),t.removeRootElement(r),Qt(a.rootElements,i),i.$parent=a,Zt(a.rootElements,o),o.$parent=null,r.di=null,s.bpmnElement=i,n.di=s,e.oldRoot=r},_v.prototype.revert=function(e){var t=this._canvas,n=e.newRoot,i=n.businessObject,r=e.oldRoot,o=r.businessObject,a=i.$parent,s=to(n);t.setRootElement(r),t.removeRootElement(n),Zt(a.rootElements,i),i.$parent=null,Qt(a.rootElements,o),o.$parent=a,n.di=null,s.bpmnElement=o,r.di=s},Ev.$inject=["modeling","spaceTool"],Ev.prototype.preExecute=function(e){var t=this._spaceTool,n=this._modeling,i=e.shape,r=e.location,o=Kl(i),a=o===i,s=a?i:i.parent;ql(s).length||n.createShape({type:"bpmn:Lane"},{x:i.x+Wl,y:i.y,width:i.width-Wl,height:i.height},s);var c=[];ut(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,l="top"===r?i.y:i.y+i.height,u=l+("top"===r?10:-10),h="top"===r?"n":"s",d=t.calculateAdjustments(c,"y",p,u);t.makeSpace(d.movingShapes,d.resizingShapes,{x:0,y:p},h,u),e.newLane=n.createShape({type:"bpmn:Lane"},{x:i.x+(a?Wl:0),y:l-("top"===r?120:0),width:i.width-(a?Wl:0),height:120},s)},wv.$inject=["modeling","translate"],wv.prototype.preExecute=function(e){var t=this._modeling,n=this._translate,i=e.shape,r=e.count,o=ql(i),a=o.length;if(a>r)throw new Error(n("more than {count} child lanes",{count:r}));var s,c,p,l,u,h=Math.round(i.height/r);for(u=0;u<r;u++)s=i.y+u*h,c=u===r-1?i.height-h*u:h,p={x:i.x+Wl,y:s,width:i.width-Wl,height:c},u<a?t.resizeShape(o[u],p):(l={type:"bpmn:Lane"},t.createShape(l,p,i))},Sv.$inject=["modeling","spaceTool"],Sv.prototype.preExecute=function(e){var t=e.shape,n=e.newBounds;!1!==e.balanced?this.resizeBalanced(t,n):this.resizeSpace(t,n)},Sv.prototype.resizeBalanced=function(e,t){var n=this._modeling,i=Yl(e,t);n.resizeShape(e,t),i.forEach((function(e){n.resizeShape(e.shape,e.newBounds)}))},Sv.prototype.resizeSpace=function(e,t){var n,i,r,o,a,s=this._spaceTool,c=Hn(e),p=Il(Hn(t),c),l=Kl(e),u=[],h=[];ut(l,(function(e){return u.push(e),(Qr(e,"bpmn:Lane")||Qr(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(u,"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))};var Cv="flowNodeRef",Rv="lanes";function Tv(e){this._elementRegistry=e}function Pv(e){this._moddle=e}Tv.$inject=["elementRegistry"],Tv.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=Kl(e);return r[t.id]||(r[t.id]=Ul(t)),r[t.id]}(e).filter((function(t){return n=e,i=Hn(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=Kl(e);t&&-1===n.indexOf(t)&&(t.children.filter((function(e){return Qr(e,"bpmn:FlowNode")})).forEach(a),n.push(t))})),e.forEach(a),o.forEach((function(e){var t=e.businessObject,n=t.get(Rv).slice(),r=s(e);i.push({flowNode:t,remove:n,add:r})})),t.forEach((function(e){var t=e.businessObject;e.parent||t.get(Cv).forEach((function(e){i.push({flowNode:e,remove:[t],add:[]})}))})),i},Tv.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(Rv);e.remove.forEach((function(e){Zt(n,e),Zt(e.get(Cv),t)})),e.add.forEach((function(e){Qt(n,e),Qt(e.get(Cv),t)}))}))},Tv.prototype.revert=function(e){e.updates.forEach((function(e){var t=e.flowNode,n=t.get(Rv);e.add.forEach((function(e){Zt(n,e),Zt(e.get(Cv),t)})),e.remove.forEach((function(e){Qt(n,e),Qt(e.get(Cv),t)}))}))},Pv.$inject=["moddle"],Pv.prototype.execute=function(e){var t=this._moddle.ids,n=e.id,i=e.element;e.claiming?t.claim(n,i):t.unclaim(n)},Pv.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 Av={fill:void 0,stroke:void 0};function Mv(e){this._commandStack=e,this._normalizeColor=function(e){if(e){if(m(e)){var t=function(e){var t=document.createElement("canvas").getContext("2d");return t.fillStyle="transparent",t.fillStyle=e,/^#[0-9a-fA-F]{6}$/.test(t.fillStyle)?t.fillStyle:null}(e);if(t)return t}throw new Error("invalid color value: "+e)}}}Mv.$inject=["commandStack"],Mv.prototype.postExecute=function(e){var t=e.elements,n=e.colors||Av,i=this,r={};"fill"in n&&F(r,{"background-color":this._normalizeColor(n.fill)}),"stroke"in n&&F(r,{"border-color":this._normalizeColor(n.stroke)}),b(t,(function(e){var t=function(e){return!!e.waypoints}(e)?$(r,["border-color"]):r;!function(e){"border-color"in e&&(e.stroke=e["border-color"]);"background-color"in e&&(e.fill=e["background-color"])}(t),e.labelTarget?i._commandStack.execute("element.updateModdleProperties",{element:e,moddleElement:to(e).label,properties:{color:r["background-color"]}}):i._commandStack.execute("element.updateProperties",{element:e,properties:{di:t}})}))};var kv={width:0,height:0};function Dv(e,t,n){function i(e,t){var i=e.label||e,r=e.labelTarget||e;return function(e,t,n){var i=e.businessObject,r=_o(i);r&&("categoryValueRef"===r?i.categoryValueRef.value=t:i[r]=t)}(i,t),function(e,t){if(!Go(e)){var i=to(e);t&&!i.label&&(i.label=n.create("bpmndi:BPMNLabel")),!t&&i.label&&delete i.label}}(e,t),[i,r]}this.preExecute=function(t){var n=t.element,i=n.businessObject,r=t.newLabel;if(!qo(n)&&Go(n)&&!Vo(n)&&!Bv(r)){var o=Uo(n);o={x:o.x,y:o.y+7},e.createLabel(n,o,{id:i.id+"_label",businessObject:i,di:n.di})}},this.execute=function(e){return e.oldLabel=Eo(e.element),i(e.element,e.newLabel)},this.revert=function(e){return i(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(qo(r)||Qr(r,"bpmn:TextAnnotation"))if(qo(r)&&Bv(o))!1!==s.removeShape&&e.removeShape(r,{unsetLabel:!1});else{var c=Eo(r);void 0===a&&(a=t.getExternalLabelBounds(r,c)),a&&e.resizeShape(r,a,kv)}}}function Bv(e){return!e||!e.trim()}function Nv(e,t,n,i){lv.call(this,e,t,n),this._bpmnRules=i}function Ov(){}Dv.$inject=["modeling","textRenderer","bpmnFactory"],n(Nv,lv),Nv.$inject=["eventBus","elementFactory","commandStack","bpmnRules"],Nv.prototype.getHandlers=function(){var e=lv.prototype.getHandlers.call(this);return e["element.updateModdleProperties"]=uv,e["element.updateProperties"]=yv,e["canvas.updateRoot"]=_v,e["lane.add"]=Ev,e["lane.resize"]=Sv,e["lane.split"]=wv,e["lane.updateRefs"]=Tv,e["id.updateClaim"]=Pv,e["element.setColor"]=Mv,e["element.updateLabel"]=Dv,e},Nv.prototype.updateLabel=function(e,t,n,i){this._commandStack.execute("element.updateLabel",{element:e,newLabel:t,newBounds:n,hints:i||{}})},Nv.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)},Nv.prototype.updateModdleProperties=function(e,t,n){this._commandStack.execute("element.updateModdleProperties",{element:e,moddleElement:t,properties:n})},Nv.prototype.updateProperties=function(e,t){this._commandStack.execute("element.updateProperties",{element:e,properties:t})},Nv.prototype.resizeLane=function(e,t,n){this._commandStack.execute("lane.resize",{shape:e,newBounds:t,balanced:n})},Nv.prototype.addLane=function(e,t){var n={shape:e,location:t};return this._commandStack.execute("lane.add",n),n.newLane},Nv.prototype.splitLane=function(e,t){this._commandStack.execute("lane.split",{shape:e,count:t})},Nv.prototype.makeCollaboration=function(){var e=this._create("root",{type:"bpmn:Collaboration"}),t={newRoot:e};return this._commandStack.execute("canvas.updateRoot",t),e},Nv.prototype.updateLaneRefs=function(e,t){this._commandStack.execute("lane.updateRefs",{flowNodeShapes:e,laneShapes:t})},Nv.prototype.makeProcess=function(){var e={newRoot:this._create("root",{type:"bpmn:Process"})};this._commandStack.execute("canvas.updateRoot",e)},Nv.prototype.claimId=function(e,t){this._commandStack.execute("id.updateClaim",{id:e,element:t,claiming:!0})},Nv.prototype.unclaimId=function(e,t){this._commandStack.execute("id.updateClaim",{id:e,element:t})},Nv.prototype.setColor=function(e,t){e.length||(e=[e]),this._commandStack.execute("element.setColor",{elements:e,colors:t})},Ov.prototype.layoutConnection=function(e,t){return[(t=t||{}).connectionStart||Vn(t.source||e.source),t.connectionEnd||Vn(t.target||e.target)]};var jv=Math.round,Lv={"h:h":20,"v:v":20,"h:v":-10,"v:h":-10};function Iv(e,t,n){var i,r,o,a=Wn(t,e,5),s=n.split(":")[0],c=jv((t.x-e.x)/2+e.x),p=jv((t.y-e.y)/2+e.y),l=(o=a,{t:/top/,r:/right/,b:/bottom/,l:/left/,h:/left|right/,v:/top|bottom/}[s].test(o)),u=/h|r|l/.test(s),h=!1;return l?(i=u?{x:c,y:e.y}:{x:e.x,y:p},r=u?"h:h":"v:v"):(r=u?"h:v":"v:h",function(e,t){return!{t:/top/,r:/right/,b:/bottom/,l:/left/,h:/./,v:/./}[t].test(e)}(a,s)?u?(h=p===e.y,i={x:e.x+20*(/l/.test(s)?-1:1),y:h?p+20:p}):i={x:(h=c===e.x)?c+20:c,y:e.y+20*(/t/.test(s)?-1:1)}:i={x:c,y:p}),{waypoints:Fv(e,i,r).concat(i),directions:r,turnNextDirections:h}}function zv(e){return e.split(":").reverse().join(":")}function Fv(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(Wv(n)){var i=function(e,t,n){return Iv(e,t,n)}(e,t,n),r=function(e,t,n){var i=Iv(t,e,zv(n));return{waypoints:i.waypoints.slice().reverse(),directions:zv(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:Fv(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=jv((t.x-e.x)/2+e.x),r=jv((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 $v(e,t,n,i,r){var o=x(r&&r.preferredLayouts||[],"straight")[0]||"h:h",a=Wn(e,t,Lv[o]||0),s=function(e,t){if(Wv(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||Vn(e),i=i||Vn(t);var c=s.split(":");return function(e,t,n){var i=Fv(e,t,n);return i.unshift(e),i.push(t),qv(i)}(Uv(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)),Uv(i,t,c[1],a),s)}function Hv(e,t,n,i,r,o){var a;return u(n)&&(r=n,o=i,n=Vn(e),i=Vn(t)),r=r||[],(a=-1!==(o=F({preferredLayouts:[]},o)).preferredLayouts.indexOf("straight")&&function(e,t,n,i,r){var o,a,s={};if(a=Wn(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?Gv(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:Gv(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=o.connectionEnd&&function(e,t,n,i){var r=i.slice().reverse();return(r=Vv(e,t,n,r))?r.reverse():null}(t,e,i,r))?a:(a=o.connectionStart&&Vv(e,t,n,r))||(!o.connectionStart&&!o.connectionEnd&&r&&r.length?r:$v(e,t,n,i,o))}function Gv(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 Vv(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&&en(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(nn(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(rn(e[i],t,20)||rn(e[i],n,20))return e.slice(i);return e}(a,e,t))!==a&&(a=Vv(e,t,n,r)),a&&nn(a)?null:a}function Wv(e){return e&&/t|r|b|l/.test(e)}function Uv(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 qv(e){return e.reduce((function(t,n,i){return tn(t[t.length-1],e[i+1],n,0)||t.push(n),t}),[])}var Kv={top:"bottom","top-right":"bottom-left","top-left":"bottom-right",right:"left",bottom:"top","bottom-right":"top-left","bottom-left":"top-right",left:"right"},Yv={top:"t",right:"r",bottom:"b",left:"l"};function Xv(){}function Zv(e,t){return Qr(t,"bpmn:Participant")?"source":Qr(e,"bpmn:Participant")?"target":ty(t)?"source":ty(e)||Qr(t,"bpmn:Event")?"target":Qr(e,"bpmn:Event")?"source":null}function Qv(e){return ty(e)?"target":"source"}function Jv(e,t){return e?e.original||e:Vn(t)}function ey(e,t){return Qr(t,"bpmn:Activity")&&Qr(e,"bpmn:BoundaryEvent")&&t.businessObject.isForCompensation}function ty(e){return Qr(e,"bpmn:SubProcess")&&go(e)}function ny(e,t){return e===t}function iy(e){var t=/right|left/.exec(e);return t&&t[0]}function ry(e){var t=/top|bottom/.exec(e);return t&&t[0]}function oy(e){return"right"===e||"left"===e}function ay(e,t){var n=t.waypoints,i=n&&n.length&&Wn(n[0],e);return"top"===i?["t:r"]:"right"===i?["r:b"]:"left"===i?["l:t"]:["b:l"]}function sy(e,t,n){var i,r,o=Vn(e),a=Vn(t),s=(r=(i=e).host,Wn(Vn(i),r,-10)),c=ny(e.host,t),p=-1!==["top","right","bottom","left"].indexOf(s),l=Wn(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:ry(e),s=Yv[a];o=t?oy(e)?cy("y",n,i,r)?"h":"b":cy("x",n,i,r)?"v":"l":"v";return[s+":"+o]}(s,p,e,t,n):[function(e,t,n){if(n)return Yv[e];if(ny(ry(e),ry(t))||(i=iy(e),r=iy(t),Kv[i]===r))return Yv[ry(e)];var i,r;return Yv[iy(e)]}(s,l,p)+":"+function(e,t,n){if(n)return oy(e)?(i=t,r=iy(e),o=Kv[r],-1!==i.indexOf(o)||ny(e,t)?"h":"v"):function(e,t){var n=ry(e),i=Kv[n];return-1!==t.indexOf(i)}(e,t)||ny(e,t)?"v":"h";var i,r,o;return oy(t)||ny(ry(e),ry(t))&&iy(t)?"h":"v"}(s,l,p)]}function cy(e,t,n,i){return!(py(e,i,n,40)||py(e,i,{x:n.x+n.width,y:n.y+n.height},40)||py(e,i,Vn(t),40))}function py(e,t,n,i){return Math.abs(t[e]-n[e])<i}function ly(e){return F({original:e.point.original||e.point},e.actual)}function uy(e,t){this._elementRegistry=e,this._graphicsFactory=t}n(Xv,Ov),Xv.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=Jv(a&&a[0],r)),c||(c=Jv(a&&a[a.length-1],o)),(Qr(e,"bpmn:Association")||Qr(e,"bpmn:DataAssociation"))&&a&&!ey(r,o)?[].concat([s],a.slice(1,-1),[c]):(Qr(e,"bpmn:MessageFlow")?n=function(e,t){return{preferredLayouts:["straight","v:v"],preserveDocking:Zv(e,t)}}(r,o):(Qr(e,"bpmn:SequenceFlow")||ey(r,o))&&(n=r===o?{preferredLayouts:ay(r,e)}:Qr(r,"bpmn:BoundaryEvent")?{preferredLayouts:sy(r,o,c)}:ty(r)||ty(o)?function(e){return{preferredLayouts:["straight","h:h"],preserveDocking:Qv(e)}}(r):Qr(r,"bpmn:Gateway")?{preferredLayouts:["v:h"]}:Qr(o,"bpmn:Gateway")?{preferredLayouts:["h:v"]}:{preferredLayouts:["h:h"]}),n&&(i=qv(Hv(r,o,s,c,a,n=F(n,t)))),i||[s,c])},uy.$inject=["elementRegistry","graphicsFactory"],uy.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(ly(i)),o.push(ly(r)),o},uy.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}},uy.prototype._getIntersection=function(e,t,n){return Un(this._getShapePath(e),this._getConnectionPath(t),n)},uy.prototype._getConnectionPath=function(e){return this._graphicsFactory.getConnectionPath(e)},uy.prototype._getShapePath=function(e){return this._graphicsFactory.getShapePath(e)},uy.prototype._getGfx=function(e){return this._elementRegistry.getGraphics(e)};var hy={__init__:["modeling","bpmnUpdater"],__depends__:[Zd,Bf,Of,If,yl,Ff,Wf,Yf,Jf,ba,Pa,bm],bpmnFactory:["type",xm],bpmnUpdater:["type",_m],elementFactory:["type",wm],modeling:["type",Nv],layouter:["type",Xv],connectionDocking:["type",uy]},dy=Math.round;function fy(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&&!Te(e.target).has("djs-hit-no-move")){var o=function(e){return{x:e.x+dy(e.width/2),y:e.y+dy(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",1500,(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=P(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",1250,(function(e){var t=e.context,n=t.validatedShapes;if(!(t.canExecute=o(n)))return!1})),e.on("shape.move.move",500,(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=dy(i.x),i.y=dy(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){if(ra(e)){var t=ea(e);if(!t)throw new Error("must supply DOM mousedown event");return a(t,e.element)}})),this.start=a}fy.$inject=["eventBus","dragging","modeling","selection","rules"];var my="djs-dragging",vy="drop-ok",yy="drop-not-ok",gy="new-parent",by="attach-ok";function xy(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=ht(e,!0),n=S(t,(function(e){return(e.incoming||[]).concat(e.outgoing||[])}));return o(t.concat(n))}function s(e,n){[by,vy,yy,gy].forEach((function(i){i===n?t.addMarker(e,i):t.removeMarker(e,i)}))}e.on("shape.move.start",499,(function(e){var s=e.context,c=s.shapes,p=s.allDraggedElements,l=r(c);if(!s.dragGroup){var u=Oe("g");Ee(u,n.cls("djs-drag-group",["no-events"])),be(t.getActiveLayer(),u),s.dragGroup=u}l.forEach((function(e){i.addDragger(e,s.dragGroup)})),b(p=p?o([p,a(c)]):a(c),(function(e){t.addMarker(e,my)})),s.allDraggedElements=p,s.differentParents=1!==R(P(c,(function(e){return e.parent&&e.parent.id})))})),e.on("shape.move.move",499,(function(e){var t=e.context,n=t.dragGroup,i=t.target,r=t.shape.parent,o=t.canExecute;i&&("attach"===o?s(i,by):t.canExecute&&i&&i.id!==r.id?s(i,gy):s(i,t.canExecute?vy:yy)),Ci(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,my)})),r&&Ae(r)})),this.makeDraggable=function(e,n,r){i.addDragger(n,e.dragGroup),r&&t.addMarker(n,my),e.allDraggedElements?e.allDraggedElements.push(n):e.allDraggedElements=[n]}}xy.$inject=["eventBus","canvas","styles","previewSupport"];var _y={__depends__:[la,ba,ha,xc,mc,kp],__init__:["move","movePreview"],move:["type",fy],movePreview:["type",xy]},Ey=".djs-palette-toggle",wy=".entry",Sy="open",Cy="two-column";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 Ty(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(Ty,{})},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=Wt(Ry.HTML_MARKUP);n.appendChild(i),kt(n).add("djs-palette-shown"),Vt.bind(i,".djs-palette-toggle, .entry","click",(function(t){var n=t.delegateTarget;if(jt(n,Ey))return e.toggle();e.trigger("click",t)})),$t.bind(i,"mousedown",(function(e){e.stopPropagation()})),Vt.bind(i,wy,"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=kt(i),a=kt(n);t="twoColumn"in e?e.twoColumn:this._needsCollapse(n.clientHeight,this._entries||{}),o.toggle(Cy,t),a.toggle("djs-palette-two-column",t),"open"in e&&(o.toggle(Sy,e.open),a.toggle("djs-palette-open",e.open)),r.fire("palette.changed",{twoColumn:t,open:this.isOpen()})},Ry.prototype._update=function(){var e=Kt(".djs-palette-entries",this._container),t=this._entries=this.getEntries();Bt(e),b(t,(function(t,n){var i=t.group||"default",r=Kt("[data-group="+i+"]",e);r||(r=Wt('<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=Wt(o);r.appendChild(a),t.separator||(Rt(a,"data-action",n),t.title&&Rt(a,"title",t.title),t.className&&function(e,t){var n=kt(e);(u(t)?t:t.split(/\s+/g)).forEach((function(e){n.add(e)}))}(a,t.className),t.imageUrl&&a.appendChild(Wt('<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[Rt(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=Kt(".djs-palette-entries",this._container),this._toolsContainer=Kt("[data-group=tools]",t)),b(this._toolsContainer.children,(function(t){var n=t.getAttribute("data-action");if(n){var i=kt(t);n=n.replace("-tool",""),i.contains("entry")&&n===e?i.add("highlighted-entry"):i.remove("highlighted-entry")}}))},Ry.prototype.isOpen=function(){return kt(this._container).has(Sy)},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 Py={__init__:["palette"],palette:["type",Ry]},Ay="crosshair";function My(e,t,n,i,r,o,a){this._selection=r,this._dragging=n,this._mouse=a;var s=this,c=function(e){var n,i=t.getActiveLayer();Ee(n=e.frame=Oe("rect"),{class:"djs-lasso-overlay",width:1,height:1,x:0,y:0}),be(i,n)},p=function(e){var t=e.frame,n=e.bbox;Ee(t,{x:n.x,y:n.y,width:n.width,height:n.height})},l=function(e){e.frame&&Ae(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(){s.activateLasso(t.originalEvent,!0)}))})),e.on("lasso.end",(function(e){var t=ky(e),n=i.filter((function(e){return e}));s.select(n,t)})),e.on("lasso.start",(function(e){var t=e.context;t.bbox=ky(e),c(t)})),e.on("lasso.move",(function(e){var t=e.context;t.bbox=ky(e),p(t)})),e.on("lasso.cleanup",(function(e){var t=e.context;l(t)})),e.on("element.mousedown",1500,(function(e){if(aa(e))return s.activateLasso(e.originalEvent),!0}))}function ky(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}}My.$inject=["eventBus","canvas","dragging","elementRegistry","selection","toolManager","mouse"],My.prototype.activateLasso=function(e,t){this._dragging.init(e,"lasso",{autoActivate:t,cursor:Ay,data:{context:{}}})},My.prototype.activateSelection=function(e,t){this._dragging.init(e,"lasso.selection",{trapClick:!1,autoActivate:t,cursor:Ay,data:{context:{}}})},My.prototype.select=function(e,t){var n=function(e,t){var n={};return b(e,(function(e){var i=e;i.waypoints&&(i=dt(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(T(n))},My.prototype.toggle=function(){if(this.isActive())return this._dragging.cancel();var e=this._mouse.getLastMoveEvent();this.activateSelection(e,!!e)},My.prototype.isActive=function(){var e=this._dragging.context();return e&&/^lasso/.test(e.prefix)};var Dy={__depends__:[tm,Xp],__init__:["lassoTool"],lassoTool:["type",My]},By=1500,Ny="grab";function Oy(e,t,n,i,r,o){this._dragging=n,this._mouse=o;var a=this,s=i.get("keyboard",!1);r.registerTool("hand",{tool:"hand",dragging:"hand.move"}),e.on("element.mousedown",By,(function(e){if(oa(e))return a.activateMove(e.originalEvent,!0),!1})),s&&s.addListener(By,(function(e){if(jy(e.keyEvent)&&!a.isActive()){var t=a._mouse.getLastMoveEvent();a.activateMove(t,!!t)}}),"keyboard.keydown"),s&&s.addListener(By,(function(e){jy(e.keyEvent)&&a.isActive()&&a.toggle()}),"keyboard.keyup"),e.on("hand.end",(function(t){var n=t.originalEvent.target;if(!(t.hover||n instanceof SVGElement))return!1;e.once("hand.ended",(function(){a.activateMove(t.originalEvent,{reactivate:!0})}))})),e.on("hand.move.move",(function(e){var n=t.viewbox().scale;t.scroll({dx:e.dx*n,dy:e.dy*n})})),e.on("hand.move.end",(function(t){var n=t.context.reactivate;return!oa(t)&&n&&e.once("hand.move.ended",(function(e){a.activateHand(e.originalEvent,!0,!0)})),!1}))}function jy(e){return es(" ",e)}Oy.$inject=["eventBus","canvas","dragging","injector","toolManager","mouse"],Oy.prototype.activateMove=function(e,t,n){"object"==typeof t&&(n=t,t=!1),this._dragging.init(e,"hand.move",{autoActivate:t,cursor:Ny,data:{context:n||{}}})},Oy.prototype.activateHand=function(e,t,n){this._dragging.init(e,"hand",{trapClick:!1,autoActivate:t,cursor:Ny,data:{context:{reactivate:n}}})},Oy.prototype.toggle=function(){if(this.isActive())return this._dragging.cancel();var e=this._mouse.getLastMoveEvent();this.activateHand(e,!!e)},Oy.prototype.isActive=function(){var e=this._dragging.context();return!!e&&/^(hand|hand\.move)$/.test(e.prefix)};var Ly={__depends__:[tm,Xp],__init__:["handTool"],handTool:["type",Oy]},Iy="connect-ok",zy="connect-not-ok";function Fy(e,t,n,i,r,o,a){var s=this;this._dragging=t,this._rules=o,this._mouse=a,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=s.canStartConnect(n);null!==r&&(t.startTarget=n,i.addMarker(n,r?Iy:zy))})),e.on(["global-connect.out","global-connect.cleanup"],(function(e){var t=e.context.startTarget,n=e.context.canStartConnect;t&&i.removeMarker(t,n?Iy:zy)})),e.on(["global-connect.ended"],(function(t){var i=t.context.startTarget,r={x:t.x,y:t.y};if(s.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}))}Fy.$inject=["eventBus","dragging","connect","canvas","toolManager","rules","mouse"],Fy.prototype.start=function(e,t){this._dragging.init(e,"global-connect",{autoActivate:t,trapClick:!1,data:{context:{}}})},Fy.prototype.toggle=function(){if(this.isActive())return this._dragging.cancel();var e=this._mouse.getLastMoveEvent();return this.start(e,!!e)},Fy.prototype.isActive=function(){var e=this._dragging.context();return e&&/^global-connect/.test(e.prefix)},Fy.prototype.canStartConnect=function(e){return this._rules.allowed("connection.start",{source:e})};var $y={__depends__:[mp,xc,mc,tm,Xp],globalConnect:["type",Fy]};function Hy(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)}Hy.$inject=["palette","create","elementFactory","spaceTool","lassoTool","handTool","globalConnect","translate"],Hy.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&&(to(r).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 l(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:[t]}})}function u(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.start(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:l,click:l}},"create.participant-expanded":{group:"collaboration",className:"bpmn-icon-participant",title:c("Create Pool/Participant"),action:{dragstart:u,click:u}},"create.group":p("bpmn:Group","artifact","bpmn-icon-group",c("Create Group"))}),t};var Gy={__depends__:[Py,Hp,bm,Dy,Ly,$y,$o],__init__:["paletteProvider"],paletteProvider:["type",Hy]};function Vy(e,t,n,i,r){Aa.call(this,e),e.on("shape.move.move",250,(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 l=ve('[data-element-id="'+Ba(c.id)+'"]',e.dragGroup);l&&Ee(l,{display:"none"});var u=r.addDragger(p,e.dragGroup);e.visualReplacements[a]=u,i.removeShape(p)}}))}(o):function(e){var t=e.visualReplacements;b(t,(function(n,i){var r=ve('[data-element-id="'+Ba(i)+'"]',e.dragGroup);r&&Ee(r,{display:"inline"}),n.remove(),t[i]&&delete t[i]}))}(o)}))}Vy.$inject=["eventBus","elementRegistry","elementFactory","canvas","previewSupport"],n(Vy,Aa);var Wy={__depends__:[kp],__init__:["bpmnReplacePreview"],bpmnReplacePreview:["type",Vy]},Uy=40,qy=["x","y"],Ky=Math.abs;function Yy(e){e.on(["connect.hover","connect.move","connect.end"],1250,(function(e){var t=e.context,n=t.canExecute,i=t.start,r=t.hover,o=t.source,a=t.target;e.originalEvent&&Ja(e.originalEvent)||(t.initialConnectionStart||(t.initialConnectionStart=t.connectionStart),n&&r&&function(e,t,n){qy.forEach((function(i){var r=Qy(i,t);e[i]<t[i]+n?rp(e,i,t[i]+n):e[i]>t[i]+r-n&&rp(e,i,t[i]+r-n)}))}(e,r,function(e){return Qr(e,"bpmn:Task")?10:20}(r)),r&&function(e,t){return w(t,(function(t){return Zy(e,t)}))}(n,["bpmn:Association","bpmn:DataInputAssociation","bpmn:DataOutputAssociation","bpmn:SequenceFlow"])?(t.connectionStart=np(i),Jr(r,["bpmn:Event","bpmn:Gateway"])&&Xy(e,np(r)),Jr(r,["bpmn:Task","bpmn:SubProcess"])&&function(e,t){var n=np(t);qy.forEach((function(i){(function(e,t,n){return e[n]>t[n]+20&&e[n]<t[n]+Qy(n,t)-20})(e,t,i)&&rp(e,i,n[i])}))}(e,r),Qr(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=np(n),o=Wn(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])<Uy&&(n=i>r[t]?r[t]+Uy:r[t]-Uy,rp(e,t,n))}))}(e)):Zy(n,"bpmn:MessageFlow")?(Qr(i,"bpmn:Event")&&(t.connectionStart=np(i)),Qr(r,"bpmn:Event")&&Xy(e,np(r))):t.connectionStart=t.initialConnectionStart)}))}function Xy(e,t){rp(e,"x",t.x),rp(e,"y",t.y)}function Zy(e,t){return e&&e.type===t}function Qy(e,t){return"x"===e?t.width:t.height}function Jy(){this._targets={},this._snapOrigins={},this._snapLocations=[],this._defaultSnaps={}}function eg(e){this._snapValues={}}Yy.$inject=["eventBus"],Jy.prototype.getSnapOrigin=function(e){return this._snapOrigins[e]},Jy.prototype.setSnapOrigin=function(e,t){this._snapOrigins[e]=t,-1===this._snapLocations.indexOf(e)&&this._snapLocations.push(e)},Jy.prototype.addDefaultSnap=function(e,t){var n=this._defaultSnaps[e];n||(n=this._defaultSnaps[e]=[]),n.push(t)},Jy.prototype.getSnapLocations=function(){return this._snapLocations},Jy.prototype.setSnapLocations=function(e){this._snapLocations=e},Jy.prototype.pointsForTarget=function(e){var t=e.id||e,n=this._targets[t];return n||(n=this._targets[t]=new eg).initDefaults(this._defaultSnaps),n},eg.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)},eg.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],Qc(r-e)<=n)return r}(e[n],r[n],i)},eg.prototype.initDefaults=function(e){var t=this;b(e||{},(function(e,n){b(e,(function(e){t.add(n,e)}))}))};function tg(e,t,n){var i=this;this._elementRegistry=e,t.on(["create.start","shape.move.start"],(function(e){i.initSnap(e)})),t.on(["create.move","create.end","shape.move.move","shape.move.end"],1250,(function(e){var t=e.context,r=t.shape,o=t.snapContext,a=t.target;if((!e.originalEvent||!Ja(e.originalEvent))&&!ip(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 ng(e){return!!e.labelTarget}tg.$inject=["elementRegistry","eventBus","snapping"],tg.prototype.initSnap=function(e){var t,n=this._elementRegistry,i=e.context,r=i.shape,o=i.snapContext;o||(o=i.snapContext=new Jy);var a=(t=n.get(r.id)?np(r,e):{x:e.x+np(r).x,y:e.y+np(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}),ng(r)||(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},tg.prototype.addSnapTargetPoints=function(e,t,n){return b(this.getSnapTargets(t,n),(function(n){if(ng(n))ng(t)&&e.add("mid",np(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",np(n))}})),d(t.x)&&d(t.y)?(this._elementRegistry.get(t.id)&&e.add("mid",np(t)),e):e},tg.prototype.getSnapTargets=function(e,t){return op(t).filter((function(e){return!e.hidden}))};function ig(e,t){t.invoke(tg,this),e.on(["create.move","create.end"],1500,rg),e.on(["create.move","create.end","shape.move.move","shape.move.end"],1500,(function(e){var t=e.context,n=t.canExecute,i=t.target;n&&("attach"===n||n.attach)&&!ip(e)&&function(e,t){var n,i=Hn(t),r=Qd(e,t),o=e.context.shape;n=o.parent?{x:0,y:0}:Vn(o);/top/.test(r)?rp(e,"y",i.top-n.y):/bottom/.test(r)&&rp(e,"y",i.bottom-n.y);/left/.test(r)?rp(e,"x",i.left-n.x):/right/.test(r)&&rp(e,"x",i.right-n.x)}(e,i)}))}function rg(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)&&rp(e,"x",e.x),(n&&n>=e.y||r&&r<=e.y)&&rp(e,"y",e.y)}}function og(e,t){return-1!==e.indexOf(t)}function ag(e,t,n){return t?{x:e.x-n.x,y:e.y-n.y}:{x:e.x,y:e.y}}n(ig,tg),ig.$inject=["eventBus","injector"],ig.prototype.initSnap=function(e){var t=tg.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",ag(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",ag(r,i,e))})),Qr(n,"bpmn:Participant")&&t.setSnapLocations(["top-left","bottom-right","mid"]),t},ig.prototype.addSnapTargetPoints=function(e,t,n){tg.prototype.addSnapTargetPoints.call(this,e,t,n);var i=this.getSnapTargets(t,n);b(i,(function(n){var i;(function(e){if(Qr(e,"bpmn:SubProcess")&&go(e))return!0;return Qr(e,"bpmn:Participant")}(n)||(i="bpmn:TextAnnotation",[t,n].every((function(e){return Qr(e,i)}))))&&(e.add("top-left",ep(n)),e.add("bottom-right",tp(n)))}));var r=this._elementRegistry;return b(t.incoming,(function(n){if(r.get(t.id)){og(i,n.source)||e.add("mid",Vn(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)){og(i,n.target)||e.add("mid",Vn(n.target));var o=n.waypoints[n.waypoints.length-1];e.add(n.id+"-docking",o.original||o)}})),Qr(n,"bpmn:SequenceFlow")&&(e=this.addSnapTargetPoints(e,t,n.parent)),e},ig.prototype.getSnapTargets=function(e,t){return tg.prototype.getSnapTargets.call(this,e,t).filter((function(e){return!Qr(e,"bpmn:Lane")}))};function sg(e,t){var n=this;e.on(["resize.start"],(function(e){n.initSnap(e)})),e.on(["resize.move","resize.end"],1250,(function(e){var i=e.context,r=i.shape,o=r.parent,a=i.direction,s=i.snapContext;if(!(e.originalEvent&&Ja(e.originalEvent)||ip(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)&&rp(e,"x",e.x),function(e){return"e"===e||"w"===e}(a)&&rp(e,"y",e.y),t.snap(e,c)}})),e.on(["resize.cleanup"],(function(){t.hide()}))}function cg(e,t){var n=Vn(e),i=Hn(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}sg.prototype.initSnap=function(e){var t=e.context,n=t.shape,i=t.direction,r=t.snapContext;r||(r=t.snapContext=new Jy);var o=cg(n,i);return r.setSnapOrigin("corner",{x:o.x-e.x,y:o.y-e.y}),r},sg.prototype.addSnapTargetPoints=function(e,t,n,i){return b(this.getSnapTargets(t,n),(function(t){e.add("corner",tp(t)),e.add("corner",ep(t))})),e.add("corner",cg(t,i)),e},sg.$inject=["eventBus","snapping"],sg.prototype.getSnapTargets=function(e,t){return op(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}))};function pg(e){this._canvas=e,this._asyncHide=L(I(this.hide,this),1e3)}pg.$inject=["canvas"],pg.prototype.snap=function(e,t){var n=e.context.snapContext,i=n.getSnapLocations(),r={x:ip(e,"x"),y:ip(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)&&rp(e,t,n.originValue)}))},pg.prototype._createLine=function(e){var t=this._canvas.getLayer("snap"),n=Oe("path");return Ee(n,{d:"M0,0 L0,0"}),Te(n).add("djs-snap-line"),be(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"})}}},pg.prototype._createSnapLines=function(){this._snapLines={horizontal:this._createLine("horizontal"),vertical:this._createLine("vertical")}},pg.prototype.showSnapLine=function(e,t){var n=this.getSnapLine(e);n&&n.update(t),this._asyncHide()},pg.prototype.getSnapLine=function(e){return this._snapLines||this._createSnapLines(),this._snapLines[e]},pg.prototype.hide=function(){b(this._snapLines,(function(e){e.update()}))};var lg={__depends__:[{__init__:["createMoveSnapping","resizeSnapping","snapping"],createMoveSnapping:["type",tg],resizeSnapping:["type",sg],snapping:["type",pg]}],__init__:["connectSnapping","createMoveSnapping"],connectSnapping:["type",Yy],createMoveSnapping:["type",ig]};function ug(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=Wt(ug.BOX_HTML),this._searchInput=Kt(ug.INPUT_SELECTOR,this._container),this._resultsContainer=Kt(ug.RESULTS_CONTAINER_SELECTOR,this._container),this._canvas.getContainer().appendChild(this._container),t.on(["canvas.destroy","diagram.destroy"],this.close,this)}function hg(e,t,n){var i=function(e){var t="";return e.forEach((function(e){e.matched?t+='<strong class="'+ug.RESULT_HIGHLIGHT_CLASS+'">'+Oa(e.matched)+"</strong>":t+=Oa(e.normal)})),""!==t?t:null}(t),r=Wt(n);r.innerHTML=i,e.appendChild(r)}ug.$inject=["canvas","eventBus","overlays","selection"],ug.prototype._bindEvents=function(){var e=this;function t(t,n,i,r){e._eventMaps.push({el:t,type:i,listener:Vt.bind(t,n,i,r)})}t(document,"html","click",(function(t){e.close()})),t(this._container,ug.INPUT_SELECTOR,"click",(function(e){e.stopPropagation(),e.delegateTarget.focus()})),t(this._container,ug.RESULT_SELECTOR,"mouseover",(function(t){t.stopPropagation(),e._scrollToNode(t.delegateTarget),e._preselect(t.delegateTarget)})),t(this._container,ug.RESULT_SELECTOR,"click",(function(t){t.stopPropagation(),e._select(t.delegateTarget)})),t(this._container,ug.INPUT_SELECTOR,"keydown",(function(e){38===e.keyCode&&e.preventDefault(),40===e.keyCode&&e.preventDefault()})),t(this._container,ug.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))}))},ug.prototype._unbindEvents=function(){this._eventMaps.forEach((function(e){Vt.unbind(e.el,e.type,e.listener)}))},ug.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=Kt(ug.RESULT_SELECTOR,this._resultsContainer);this._scrollToNode(i),this._preselect(i)}}},ug.prototype._scrollToDirection=function(e){var t=this._getCurrentResult();if(t){var n=e?t.previousElementSibling:t.nextElementSibling;n&&(this._scrollToNode(n),this._preselect(n))}},ug.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)}},ug.prototype._clearResults=function(){Bt(this._resultsContainer),this._results=[],this._resetOverlay(),this._eventBus.fire("searchPad.cleared")},ug.prototype._getCurrentResult=function(){return Kt(ug.RESULT_SELECTED_SELECTOR,this._resultsContainer)},ug.prototype._createResultNode=function(e,t){var n=Wt(ug.RESULT_HTML);return e.primaryTokens.length>0&&hg(n,e.primaryTokens,ug.RESULT_PRIMARY_HTML),hg(n,e.secondaryTokens,ug.RESULT_SECONDARY_HTML),Rt(n,ug.RESULT_ID_ATTRIBUTE,t),this._resultsContainer.appendChild(n),n},ug.prototype.registerProvider=function(e){this._searchProvider=e},ug.prototype.open=function(){if(!this._searchProvider)throw new Error("no search provider registered");this.isOpen()||(this._bindEvents(),this._open=!0,kt(this._container).add("open"),this._searchInput.focus(),this._eventBus.fire("searchPad.opened"))},ug.prototype.close=function(){this.isOpen()&&(this._unbindEvents(),this._open=!1,kt(this._container).remove("open"),this._clearResults(),this._searchInput.value="",this._searchInput.blur(),this._resetOverlay(),this._eventBus.fire("searchPad.closed"))},ug.prototype.toggle=function(){this.isOpen()?this.close():this.open()},ug.prototype.isOpen=function(){return this._open},ug.prototype._preselect=function(e){var t=this._getCurrentResult();if(e!==t){t&&kt(t).remove(ug.RESULT_SELECTED_CLASS);var n=Rt(e,ug.RESULT_ID_ATTRIBUTE),i=this._results[n].element;kt(e).add(ug.RESULT_SELECTED_CLASS),this._resetOverlay(i),this._canvas.scrollToElement(i,{top:400}),this._selection.select(i),this._eventBus.fire("searchPad.preselected",i)}},ug.prototype._select=function(e){var t=Rt(e,ug.RESULT_ID_ATTRIBUTE),n=this._results[t].element;this.close(),this._resetOverlay(),this._canvas.scrollToElement(n,{top:400}),this._selection.select(n),this._eventBus.fire("searchPad.selected",n)},ug.prototype._resetOverlay=function(e){if(this._overlayId&&this._overlays.remove(this._overlayId),e){var t=function(e){var t=6,n=e.width+2*t,i=e.height+2*t,r={width:n+"px",height:i+"px"},o=Wt('<div class="'+ug.OVERLAY_CLASS+'"></div>');return Ct(o,r),{position:{bottom:i-t,right:n-t},show:!0,html:o}}(dt(e));this._overlayId=this._overlays.add(e,t)}},ug.CONTAINER_SELECTOR=".djs-search-container",ug.INPUT_SELECTOR=".djs-search-input input",ug.RESULTS_CONTAINER_SELECTOR=".djs-search-results",ug.RESULT_SELECTOR=".djs-search-result",ug.RESULT_SELECTED_CLASS="djs-search-result-selected",ug.RESULT_SELECTED_SELECTOR="."+ug.RESULT_SELECTED_CLASS,ug.RESULT_ID_ATTRIBUTE="data-result-id",ug.RESULT_HIGHLIGHT_CLASS="djs-search-highlight",ug.OVERLAY_CLASS="djs-search-overlay",ug.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>',ug.RESULT_HTML='<div class="djs-search-result"></div>',ug.RESULT_PRIMARY_HTML='<div class="djs-search-result-primary"></div>',ug.RESULT_SECONDARY_HTML='<p class="djs-search-result-secondary"></p>';var dg={__depends__:[Ra,ba],searchPad:["type",ug]};function fg(e,t,n){this._elementRegistry=e,this._canvas=n,t.registerProvider(this)}function mg(e){return g(e,(function(e){return!!e.matched})).length>0}function vg(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}fg.$inject=["elementRegistry","searchPad","canvas"],fg.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=k(n=g(n=S(n,(function(t){return{primaryTokens:vg(Eo(t),e),secondaryTokens:vg(t.id,e),element:t}})),(function(e){return mg(e.primaryTokens)||mg(e.secondaryTokens)})),(function(e){return Eo(e.element)+e.element.id}))};var yg={__depends__:[dg],__init__:["bpmnSearch"],bpmnSearch:["type",fg]};function gg(e){yo.call(this,e)}return n(gg,yo),gg.Viewer=Qa,gg.NavigatedViewer=Ps,gg.prototype.createDiagram=Kr((function(){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>')})),gg.prototype._interactionModules=[ds,_s,Ls,Ts],gg.prototype._modelingModules=[Gs,nc,gc,cc,pp,mp,yp,Ql,pl,Hp,iu,pu,wu,Cu,Tu,Ou,eh,hy,_y,Gy,Wy,Uu,lg,yg],gg.prototype._modules=[].concat(Qa.prototype._modules,gg.prototype._interactionModules,gg.prototype._modelingModules),gg}));
|